<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>217261</bug_id>
          
          <creation_ts>2020-10-02 17:50:28 -0700</creation_ts>
          <short_desc>[JSC] Introduce JITOperationList to validate JIT-caged pointers</short_desc>
          <delta_ts>2020-10-05 16:29:26 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>annulen</cc>
    
    <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>saam</cc>
    
    <cc>sergio</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1694303</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-10-02 17:50:28 -0700</bug_when>
    <thetext>[JSC] Introduce JITOperationList to validate JIT-caged pointers</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1694304</commentid>
    <comment_count>1</comment_count>
      <attachid>410393</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-10-02 17:52:35 -0700</bug_when>
    <thetext>Created attachment 410393
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1694305</commentid>
    <comment_count>2</comment_count>
      <attachid>410394</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-10-02 17:55:29 -0700</bug_when>
    <thetext>Created attachment 410394
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1694317</commentid>
    <comment_count>3</comment_count>
      <attachid>410396</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-10-02 18:21:19 -0700</bug_when>
    <thetext>Created attachment 410396
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1694319</commentid>
    <comment_count>4</comment_count>
      <attachid>410398</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-10-02 18:22:58 -0700</bug_when>
    <thetext>Created attachment 410398
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1694334</commentid>
    <comment_count>5</comment_count>
      <attachid>410398</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2020-10-02 19:06:40 -0700</bug_when>
    <thetext>Comment on attachment 410398
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=410398&amp;action=review

r=me

&gt; Source/JavaScriptCore/assembler/JITOperationList.h:50
&gt; +    JS_EXPORT_PRIVATE static void populatePointersInEmbedder1(const uintptr_t* beginHost, const uintptr_t* endHost, const uintptr_t* beginOperations, const uintptr_t* endOperations);
&gt; +    JS_EXPORT_PRIVATE static void populatePointersInEmbedder2(const uintptr_t* beginHost, const uintptr_t* endHost, const uintptr_t* beginOperations, const uintptr_t* endOperations);

let&apos;s do what we  talked  about on slack of just a  single function

&gt; Source/WebKitLegacy/mac/WebView/WebPreferences.mm:380
&gt; +    WebCore::populateJITOperations();

could we have a version of &quot;initialize&quot; per library that calls the necessary initialize functions blow it?

e.g, JSC::initialize,
WebCore::initilziae, that calls JSC::initialize and calls WebCore::populateJITOperations
WebKit::initialize, that calls WebCore::initialize, and WebKit::populateJITOperations</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1694339</commentid>
    <comment_count>6</comment_count>
      <attachid>410404</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-10-02 19:24:56 -0700</bug_when>
    <thetext>Created attachment 410404
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1694340</commentid>
    <comment_count>7</comment_count>
      <attachid>410405</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-10-02 19:27:26 -0700</bug_when>
    <thetext>Created attachment 410405
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1694474</commentid>
    <comment_count>8</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-10-03 16:51:17 -0700</bug_when>
    <thetext>Committed r267938: &lt;https://trac.webkit.org/changeset/267938&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 410405.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1694475</commentid>
    <comment_count>9</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-10-03 16:52:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/69921874&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1694937</commentid>
    <comment_count>10</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-10-05 16:29:26 -0700</bug_when>
    <thetext>Committed r268013: &lt;https://trac.webkit.org/changeset/268013&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>410393</attachid>
            <date>2020-10-02 17:52:35 -0700</date>
            <delta_ts>2020-10-02 18:05:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-217261-20201002175234.patch</filename>
            <type>text/plain</type>
            <size>84846</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY3ODYzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBi
YzI3OTIwMDBlZjZkZjA2YzJmOWI2MjUxMjc5MDUyYWY0NDExNDliLi5lMGVhZjdhZDdhYTcyMmM3
ZjU3ZWU4OWQyZmM4NzY2YjUxMjY1NWMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw1MSBAQAorMjAyMC0xMC0wMiAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIEludHJvZHVjZSBKSVRPcGVyYXRpb25MaXN0IHRvIHZhbGlkYXRl
IEpJVC1jYWdlZCBwb2ludGVycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjE3MjYxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIEpJVE9wZXJhdGlvbkxpc3QsIHdoaWNoIG1hbmFn
ZXMgYWxsIHRoZSBob3N0LWZ1bmN0aW9uICYgaml0LW9wZXJhdGlvbiBwb2ludGVycy4KKyAgICAg
ICAgQW5kIHdlIGNhbiBub3cgcXVlcnkgd2hldGhlciB0aGUgZ2l2ZW4gcG9pbnRlciBpcyByZWdp
c3RlcmVkIGluIHRoaXMgdGFibGUuCisgICAgICAgIEN1cnJlbnRseSwgYXMgYSB0ZXN0LCB3ZSBh
cmUgdmVyaWZ5aW5nIHRoYXQgaG9zdC1mdW5jdGlvbiBpcyByZWdpc3RlcmVkIGluIHRoaXMgdGFi
bGUgd2hlbiBjcmVhdGluZyBOYXRpdmVFeGVjdXRhYmxlIGluIGRlYnVnIGJ1aWxkLgorCisgICAg
ICAgICogQ01ha2VMaXN0cy50eHQ6CisgICAgICAgICogSmF2YVNjcmlwdENvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBTb3VyY2VzLnR4dDoKKyAgICAgICAgKiBhc3Nl
bWJsZXIvSklUT3BlcmF0aW9uTGlzdC5jcHA6IEFkZGVkLgorICAgICAgICAoSlNDOjpKSVRPcGVy
YXRpb25MaXN0Ojppbml0aWFsaXplKToKKyAgICAgICAgKEpTQzo6YWRkUG9pbnRlcnMpOgorICAg
ICAgICAoSlNDOjpKSVRPcGVyYXRpb25MaXN0Ojpwb3B1bGF0ZVBvaW50ZXJzSW5KYXZhU2NyaXB0
Q29yZSk6CisgICAgICAgIChKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6OnBvcHVsYXRlUG9pbnRlcnNJ
bkVtYmVkZGVyMSk6CisgICAgICAgIChKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6OnBvcHVsYXRlUG9p
bnRlcnNJbkVtYmVkZGVyMik6CisgICAgICAgICogYXNzZW1ibGVyL0pJVE9wZXJhdGlvbkxpc3Qu
aDogQWRkZWQuCisgICAgICAgIChKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6OmNvbnRhaW5zIGNvbnN0
KToKKyAgICAgICAgKEpTQzo6SklUT3BlcmF0aW9uTGlzdDo6YXNzZXJ0SXNIb3N0RnVuY3Rpb24p
OgorICAgICAgICAoSlNDOjpKSVRPcGVyYXRpb25MaXN0Ojphc3NlcnRJc0pJVE9wZXJhdGlvbik6
CisgICAgICAgIChKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6Omluc3RhbmNlKToKKyAgICAgICAgKiBq
c2MuY3BwOgorICAgICAgICAoanNjbWFpbik6CisgICAgICAgICogcnVudGltZS9Jbml0aWFsaXpl
VGhyZWFkaW5nLmNwcDoKKyAgICAgICAgKEpTQzo6aW5pdGlhbGl6ZSk6CisgICAgICAgICogcnVu
dGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZUZ1bmN0aW9ucy5oOgorICAgICAg
ICAoSlNDOjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNTZXQpOgorICAgICAgICAoSlND
OjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNDb3B5V2l0aGluKToKKyAgICAgICAgKEpT
Qzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jSW5jbHVkZXMpOgorICAgICAgICAoSlND
OjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNJbmRleE9mKToKKyAgICAgICAgKEpTQzo6
Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jSm9pbik6CisgICAgICAgIChKU0M6OmdlbmVy
aWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY0xhc3RJbmRleE9mKToKKyAgICAgICAgKEpTQzo6Z2Vu
ZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jQnVmZmVyKToKKyAgICAgICAgKEpTQzo6
Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jTGVuZ3RoKToKKyAgICAgICAgKEpT
Qzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jQnl0ZUxlbmd0aCk6CisgICAg
ICAgIChKU0M6OmdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvR2V0dGVyRnVuY0J5dGVPZmZzZXQp
OgorICAgICAgICAoSlNDOjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNSZXZlcnNlKToK
KyAgICAgICAgKEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJpdmF0ZUZ1bmNTb3J0KToKKyAg
ICAgICAgKEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jU2xpY2UpOgorICAgICAg
ICAoSlNDOjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcml2YXRlRnVuY1N1YmFycmF5Q3JlYXRlKToK
KyAgICAgICAgKEpTQzo6SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKTogRGVsZXRlZC4KKyAgICAg
ICAgKiBydW50aW1lL1ZNLmNwcDoKKyAgICAgICAgKEpTQzo6Vk06OmdldEhvc3RGdW5jdGlvbik6
CisKIDIwMjAtMTAtMDEgIEFkcmlhbiBQZXJleiBkZSBDYXN0cm8gPGFwZXJlekBpZ2FsaWEuY29t
PiBhbmQgRG9uIE9sbXN0ZWFkICA8ZG9uLm9sbXN0ZWFkQHNvbnkuY29tPgogCiAgICAgICAgIE5v
bi11bmlmaWVkIGJ1aWxkIGZpeGVzLCBlYXJseSBPY3RvYmVyIDIwMjAgZWRpdGlvbgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dURi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV1RGL0NoYW5nZUxvZwppbmRleCA3
MmI3MmRiOTRjYmI4Y2JiYzQ1ZGRmMmFhMTYxOTlhNGYyMTkyYjE4Li41ODQxNzU1NTgwOWJlM2E3
NjY0NDkwZWZjMWFhMmQ3ODIyMjgyYzNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL0NoYW5nZUxv
ZworKysgYi9Tb3VyY2UvV1RGL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDIwLTEwLTAy
ICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CisKKyAgICAgICAgW0pTQ10gSW50
cm9kdWNlIEpJVE9wZXJhdGlvbkxpc3QgdG8gdmFsaWRhdGUgSklULWNhZ2VkIHBvaW50ZXJzCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTcyNjEKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHd0Zi9QbGF0
Zm9ybUNhbGxpbmdDb252ZW50aW9ucy5oOgorICAgICAgICAqIHd0Zi9QbGF0Zm9ybUVuYWJsZS5o
OgorCiAyMDIwLTEwLTAxICBUcnVpdHQgU2F2ZWxsICA8dHNhdmVsbEBhcHBsZS5jb20+CiAKICAg
ICAgICAgVW5yZXZpZXdlZCwgcmV2ZXJ0aW5nIHIyNjc4NDEuCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODljNTky
NDM0Y2IxYjZmMDUzNWYzMTRlNjJlMmE4N2RlNmQ5NGQ2ZC4uZmI3YWUyZjA5YjQzZjQxNTI1MmM4
N2NjMmExOGRlY2JkNWU1Mzc0YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDIwLTEw
LTAyICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CisKKyAgICAgICAgW0pTQ10g
SW50cm9kdWNlIEpJVE9wZXJhdGlvbkxpc3QgdG8gdmFsaWRhdGUgSklULWNhZ2VkIHBvaW50ZXJz
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTcyNjEK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIEhlYWRl
cnMuY21ha2U6CisgICAgICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NQnVpbHRp
bkNvbnN0cnVjdG9yLmg6CisgICAgICAgICogYmluZGluZ3MvanMvSlNET01Db25zdHJ1Y3Rvci5o
OgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NTGVnYWN5RmFjdG9yeUZ1bmN0aW9uLmg6Cisg
ICAgICAgICogYmluZGluZ3MvanMvU2NyaXB0Q29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpTY3JpcHRDb250cm9sbGVyOjppbml0aWFsaXplTWFpblRocmVhZCk6CisgICAgICAgICog
YmluZGluZ3MvanMvV2ViQ29yZUpJVE9wZXJhdGlvbnMuY3BwOiBDb3BpZWQgZnJvbSBTb3VyY2Uv
V2ViS2l0L1NoYXJlZC9XZWJLaXQySW5pdGlhbGl6ZS5jcHAuCisgICAgICAgIChXZWJDb3JlOjpw
b3B1bGF0ZUpJVE9wZXJhdGlvbnMpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL1dlYkNvcmVKSVRP
cGVyYXRpb25zLmg6IENvcGllZCBmcm9tIFNvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYktpdDJJbml0
aWFsaXplLmNwcC4KKyAgICAgICAgKiBicmlkZ2Uvb2JqYy9XZWJTY3JpcHRPYmplY3QubW06Cisg
ICAgICAgICgrW1dlYlNjcmlwdE9iamVjdCBpbml0aWFsaXplXSk6CisgICAgICAgICogZG9taml0
L0pTRG9jdW1lbnRET01KSVQuY3BwOgorICAgICAgICAqIHBsYXRmb3JtL2NvY29hL1NoYXJlZEJ1
ZmZlckNvY29hLm1tOgorICAgICAgICAoK1tXZWJDb3JlU2hhcmVkQnVmZmVyRGF0YSBpbml0aWFs
aXplXSk6CisgICAgICAgICogcGxhdGZvcm0vaW9zL3dhay9XZWJDb3JlVGhyZWFkLm1tOgorICAg
ICAgICAoUnVuV2ViVGhyZWFkKToKKwogMjAyMC0xMC0wMSAgTWVnYW4gR2FyZG5lciAgPG1lZ2Fu
X2dhcmRuZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFJlcGFpbnQgYXMgbmVlZGVkIHdoZW4gYWRk
aW5nIGFuZCByZW1vdmluZyBoaWdobGlnaHRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGI4YjU3OGJlNzE5ZTlkMzQz
YTIzOWIyMjU2OTY0NzFhYWFmYTkzNmUuLjM2Y2VhMjhhODgxN2JhOWM3MzMyNWZiNTgyYmRiN2Q5
ODY0YTBmMTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjAtMTAtMDIgIFl1c3VrZSBT
dXp1a2kgIDx5c3V6dWtpQGFwcGxlLmNvbT4KKworICAgICAgICBbSlNDXSBJbnRyb2R1Y2UgSklU
T3BlcmF0aW9uTGlzdCB0byB2YWxpZGF0ZSBKSVQtY2FnZWQgcG9pbnRlcnMKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNzI2MQorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2hhcmVkL0FQSS9jL1dLU3Ry
aW5nLmNwcDoKKyAgICAgICAgKFdLU3RyaW5nQ29weUpTU3RyaW5nKToKKyAgICAgICAgKiBTaGFy
ZWQvQ29jb2EvV2ViS2l0MkluaXRpYWxpemVDb2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6cnVu
SW5pdGlhbGl6YXRpb25Db2RlKToKKyAgICAgICAgKiBTaGFyZWQvV2ViS2l0MkluaXRpYWxpemUu
Y3BwOgorICAgICAgICAoV2ViS2l0OjpJbml0aWFsaXplV2ViS2l0Mik6CisgICAgICAgICogU2hh
cmVkL1dlYktpdEpJVE9wZXJhdGlvbnMuY3BwOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViS2l0L1No
YXJlZC9XZWJLaXQySW5pdGlhbGl6ZS5jcHAuCisgICAgICAgIChXZWJLaXQ6OnBvcHVsYXRlSklU
T3BlcmF0aW9ucyk6CisgICAgICAgICogU2hhcmVkL1dlYktpdEpJVE9wZXJhdGlvbnMuaDogQ29w
aWVkIGZyb20gU291cmNlL1dlYktpdC9TaGFyZWQvV2ViS2l0MkluaXRpYWxpemUuY3BwLgorICAg
ICAgICAqIFNvdXJjZXMudHh0OgorICAgICAgICAqIFdlYktpdC54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qOgorCiAyMDIwLTEwLTAxICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAK
ICAgICAgICAgQWRkIGJhc2ljIGluZnJhc3RydWN0dXJlIGZvciBBdWRpb1dvcmtsZXQKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvbWFjL0NoYW5nZUxvZwppbmRleCBmMDdiMDRhNzAyMjA1ZDBmYjU4ZGZhNzBmOGRhNmM0
Mjc5MjhiMjJlLi42ZGUzMzk0ZjU4NmU0ZmFkNzhhMGE1ZjI0M2VmMTJiZDMxMmRhYjJjIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
YktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTAgQEAKKzIwMjAtMTAtMDIgIFl1
c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFwcGxlLmNvbT4KKworICAgICAgICBbSlNDXSBJbnRyb2R1
Y2UgSklUT3BlcmF0aW9uTGlzdCB0byB2YWxpZGF0ZSBKSVQtY2FnZWQgcG9pbnRlcnMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNzI2MQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogSGlzdG9yeS9XZWJC
YWNrRm9yd2FyZExpc3QubW06CisgICAgICAgICgrW1dlYkJhY2tGb3J3YXJkTGlzdCBpbml0aWFs
aXplXSk6CisgICAgICAgICogSGlzdG9yeS9XZWJIaXN0b3J5SXRlbS5tbToKKyAgICAgICAgKCtb
V2ViSGlzdG9yeUl0ZW0gaW5pdGlhbGl6ZV0pOgorICAgICAgICAqIE1pc2MvV2ViQ2FjaGUubW06
CisgICAgICAgICgrW1dlYkNhY2hlIGluaXRpYWxpemVdKToKKyAgICAgICAgKiBNaXNjL1dlYkVs
ZW1lbnREaWN0aW9uYXJ5Lm1tOgorICAgICAgICAoK1tXZWJFbGVtZW50RGljdGlvbmFyeSBpbml0
aWFsaXplXSk6CisgICAgICAgICogTWlzYy9XZWJJY29uRGF0YWJhc2UubW06CisgICAgICAgICog
TWlzYy9XZWJTdHJpbmdUcnVuY2F0b3IubW06CisgICAgICAgICgrW1dlYlN0cmluZ1RydW5jYXRv
ciBpbml0aWFsaXplXSk6CisgICAgICAgICogUGx1Z2lucy9Ib3N0ZWQvV2ViSG9zdGVkTmV0c2Nh
cGVQbHVnaW5WaWV3Lm1tOgorICAgICAgICAoK1tXZWJIb3N0ZWROZXRzY2FwZVBsdWdpblZpZXcg
aW5pdGlhbGl6ZV0pOgorICAgICAgICAqIFBsdWdpbnMvV2ViQmFzZU5ldHNjYXBlUGx1Z2luVmll
dy5tbToKKyAgICAgICAgKiBQbHVnaW5zL1dlYkJhc2VQbHVnaW5QYWNrYWdlLm1tOgorICAgICAg
ICAoK1tXZWJCYXNlUGx1Z2luUGFja2FnZSBpbml0aWFsaXplXSk6CisgICAgICAgICogUGx1Z2lu
cy9XZWJOZXRzY2FwZVBsdWdpblZpZXcubW06CisgICAgICAgICgrW1dlYk5ldHNjYXBlUGx1Z2lu
VmlldyBpbml0aWFsaXplXSk6CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xp
ZW50Lm1tOgorICAgICAgICAoK1tXZWJVbmRvU3RlcCBpbml0aWFsaXplXSk6CisgICAgICAgICog
V2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQubW06CisgICAgICAgICgrW1dlYkZy
YW1lUG9saWN5TGlzdGVuZXIgaW5pdGlhbGl6ZV0pOgorICAgICAgICAqIFdlYlZpZXcvV2ViQXJj
aGl2ZS5tbToKKyAgICAgICAgKCtbV2ViQXJjaGl2ZVByaXZhdGUgaW5pdGlhbGl6ZV0pOgorICAg
ICAgICAqIFdlYlZpZXcvV2ViRGF0YVNvdXJjZS5tbToKKyAgICAgICAgKCtbV2ViRGF0YVNvdXJj
ZSBpbml0aWFsaXplXSk6CisgICAgICAgICogV2ViVmlldy9XZWJIVE1MVmlldy5tbToKKyAgICAg
ICAgKCtbV2ViSFRNTFZpZXdQcml2YXRlIGluaXRpYWxpemVdKToKKyAgICAgICAgKCtbV2ViSFRN
TFZpZXcgaW5pdGlhbGl6ZV0pOgorICAgICAgICAqIFdlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW06
CisgICAgICAgICgrW1dlYlByZWZlcmVuY2VzIGluaXRpYWxpemVdKToKKyAgICAgICAgKiBXZWJW
aWV3L1dlYlJlc291cmNlLm1tOgorICAgICAgICAoK1tXZWJSZXNvdXJjZVByaXZhdGUgaW5pdGlh
bGl6ZV0pOgorICAgICAgICAqIFdlYlZpZXcvV2ViVGV4dEl0ZXJhdG9yLm1tOgorICAgICAgICAo
K1tXZWJUZXh0SXRlcmF0b3JQcml2YXRlIGluaXRpYWxpemVdKToKKyAgICAgICAgKiBXZWJWaWV3
L1dlYlZpZXcubW06CisgICAgICAgICgrW1dlYlZpZXcgaW5pdGlhbGl6ZV0pOgorICAgICAgICAq
IFdlYlZpZXcvV2ViVmlld0RhdGEubW06CisgICAgICAgICgrW1dlYlZpZXdQcml2YXRlIGluaXRp
YWxpemVdKToKKwogMjAyMC0xMC0wMSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgog
CiAgICAgICAgIEFkZCBiYXNpYyBpbmZyYXN0cnVjdHVyZSBmb3IgQXVkaW9Xb3JrbGV0CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0
TGVnYWN5L3dpbi9DaGFuZ2VMb2cKaW5kZXggMDRkNGEzOThiMzI3ZTRkOGZmMWM5MTk5NzViMzJk
ZjU0NmQ4Y2IzZS4uOWYwZDlkNzA2NGMwYTMxMWRiMzExNDEyOWFjNDYzYjQ2NGYzZWUzNSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS93aW4vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJLaXRMZWdhY3kvd2luL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDIwLTEwLTAyICBZ
dXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CisKKyAgICAgICAgW0pTQ10gSW50cm9k
dWNlIEpJVE9wZXJhdGlvbkxpc3QgdG8gdmFsaWRhdGUgSklULWNhZ2VkIHBvaW50ZXJzCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTcyNjEKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFdlYktpdENsYXNz
RmFjdG9yeS5jcHA6CisgICAgICAgIChXZWJLaXRDbGFzc0ZhY3Rvcnk6OldlYktpdENsYXNzRmFj
dG9yeSk6CisgICAgICAgICogV2ViVmlldy5jcHA6CisgICAgICAgIChXZWJWaWV3OjpXZWJWaWV3
KToKKwogMjAyMC0xMC0wMSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAg
ICAgIEFkZCBiYXNpYyBpbmZyYXN0cnVjdHVyZSBmb3IgQXVkaW9Xb3JrbGV0CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ01ha2VMaXN0cy50eHQKaW5kZXggODAwZGVmNGFhOWVjMjY5N2E1MDQxYjgwZGYwOGU3
MTA4NjIzNTIzYi4uNWI0YzU4NDhjNThjYTY2YmM2NTZlZGFhOGZmM2M5Y2ZmN2VjZjAxZiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9DTWFrZUxpc3RzLnR4dApAQCAtNDc0LDYgKzQ3NCw3IEBAIHNldChK
YXZhU2NyaXB0Q29yZV9QUklWQVRFX0ZSQU1FV09SS19IRUFERVJTCiAgICAgYXNzZW1ibGVyL0NQ
VS5oCiAgICAgYXNzZW1ibGVyL0NvZGVMb2NhdGlvbi5oCiAgICAgYXNzZW1ibGVyL0Zhc3RKSVRQ
ZXJtaXNzaW9ucy5oCisgICAgYXNzZW1ibGVyL0pJVE9wZXJhdGlvbkxpc3QuaAogICAgIGFzc2Vt
Ymxlci9MaW5rQnVmZmVyLmgKICAgICBhc3NlbWJsZXIvTUlQU0Fzc2VtYmxlci5oCiAgICAgYXNz
ZW1ibGVyL01JUFNSZWdpc3RlcnMuaApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L0phdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAz
N2ZlYmZmNjVhYjM2YjFlMDVmMzc4YTlmNDQ1ODQxOWU4ZTA0OTZkLi43ODk5ZDIwOWNiNzcxZjEx
NDY1YzZkNDQwNjBlY2RiNDZhZDU4NmZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpA
QCAtMTg4MSw2ICsxODgxLDcgQEAKIAkJRTNDNjk0QjMyMzAyNjg3NzAwNkZCRTQyIC8qIFdhc21P
U1JFbnRyeURhdGEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEUzQzY5NEIxMjMwMjY4NzMwMDZGQkU0MiAvKiBXYXNtT1NSRW50cnlEYXRhLmggKi87IH07
CiAJCUUzQzc5Q0FCMURCOUE0REMwMEQxRUNBNCAvKiBET01KSVRFZmZlY3QuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzQzc5Q0FBMURCOUE0RDYwMEQx
RUNBNCAvKiBET01KSVRFZmZlY3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OwogCQlFM0M4RUQ0MzIzQTFEQkNCMDAxMzE5NTggLyogSXNvSW5saW5lZEhl
YXBDZWxsVHlwZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gRTNDOEVENDIyM0ExREJDNTAwMTMxOTU4IC8qIElzb0lubGluZWRIZWFwQ2VsbFR5cGUuaCAq
LzsgfTsKKwkJRTNDQTNBNEUyNTI3QUIyRjAwNDgwMkJGIC8qIEpJVE9wZXJhdGlvbkxpc3QuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzQ0EzQTRDMjUy
N0FCMkYwMDQ4MDJCRiAvKiBKSVRPcGVyYXRpb25MaXN0LmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJRTNEMjM5QzkxQjgyOUMxQzAwQkJFRjY3IC8q
IEpTTW9kdWxlRW52aXJvbm1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEUzRDIzOUM3MUI4MjlDMUMwMEJCRUY2NyAvKiBKU01vZHVsZUVudmlyb25t
ZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJ
RTNEMzUxNUYyNDFCODlENzAwOERDMTZFIC8qIE1hcmtlZEpTVmFsdWVSZWZBcnJheS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTNEMzUxNUQyNDFCODlD
RTAwOERDMTZFIC8qIE1hcmtlZEpTVmFsdWVSZWZBcnJheS5oICovOyB9OwogCQlFM0Q4Nzc3NDFF
NjVDMEEwMDBCRTk0NUEgLyogQnl0ZWNvZGVEdW1wZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzRDg3NzcyMUU2NUMwODkwMEJFOTQ1QSAvKiBCeXRl
Y29kZUR1bXBlci5oICovOyB9OwpAQCAtNTEwNyw2ICs1MTA4LDggQEAKIAkJRTNDNzlDQUExREI5
QTRENjAwRDFFQ0E0IC8qIERPTUpJVEVmZmVjdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBET01KSVRFZmZlY3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTND
OEVENDEyM0ExREJDNDAwMTMxOTU4IC8qIElzb0hlYXBDZWxsVHlwZS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJc29IZWFwQ2VsbFR5cGUuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQlFM0M4RUQ0MjIzQTFEQkM1MDAxMzE5NTggLyogSXNvSW5saW5l
ZEhlYXBDZWxsVHlwZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJc29Jbmxp
bmVkSGVhcENlbGxUeXBlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUzQ0EzQTRC
MjUyN0FCMkUwMDQ4MDJCRiAvKiBKSVRPcGVyYXRpb25MaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpJVE9wZXJhdGlvbkxpc3QuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlFM0NBM0E0QzI1MjdBQjJGMDA0ODAyQkYgLyogSklUT3BlcmF0aW9u
TGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKSVRPcGVyYXRpb25MaXN0
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUzRDIzOUM2MUI4MjlDMUMwMEJCRUY2
NyAvKiBKU01vZHVsZUVudmlyb25tZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEpTTW9kdWxlRW52aXJvbm1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQlFM0QyMzlDNzFCODI5QzFDMDBCQkVGNjcgLyogSlNNb2R1bGVFbnZpcm9ubWVudC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU01vZHVsZUVudmlyb25tZW50Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUzRDI2NDI2MUQzOEMwNDIwMDBCRTE3NCAv
KiBCeXRlY29kZUdlbmVyYXRvcmlmaWNhdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBCeXRlY29kZUdlbmVyYXRvcmlmaWNhdGlvbi5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CkBAIC04Mjg0LDYgKzgyODcsOCBAQAogCQkJCTBGMzBEN0JGMUQ5NUQ2
MkYwMDUzMDg5RCAvKiBDUFUuaCAqLywKIAkJCQkwRjM3MzA4RTFDMENENjg1MDAwNTJCRkEgLyog
RGlzYWxsb3dNYWNyb1NjcmF0Y2hSZWdpc3RlclVzYWdlLmggKi8sCiAJCQkJNTI2N0NGODEyNDkz
MTZBRDAwMjJCRjZEIC8qIEZhc3RKSVRQZXJtaXNzaW9ucy5oICovLAorCQkJCUUzQ0EzQTRCMjUy
N0FCMkUwMDQ4MDJCRiAvKiBKSVRPcGVyYXRpb25MaXN0LmNwcCAqLywKKwkJCQlFM0NBM0E0QzI1
MjdBQjJGMDA0ODAyQkYgLyogSklUT3BlcmF0aW9uTGlzdC5oICovLAogCQkJCTBGRjQyNzU2MTU5
MTRBMjAwMDRDQjlGRiAvKiBMaW5rQnVmZmVyLmNwcCAqLywKIAkJCQk4NkQzQjNDMTEwMTU5RDdG
MDAyODY1RTcgLyogTGlua0J1ZmZlci5oICovLAogCQkJCTBGRUIzRUNFMTYyMzdGNjcwMEFCNjdB
RCAvKiBNYWNyb0Fzc2VtYmxlci5jcHAgKi8sCkBAIC05OTA1LDYgKzk5MTAsNyBAQAogCQkJCTc5
QUYwQkU0MUQzRUZENEMwMEU5NUZBNSAvKiBKSVRNYXRoSUNJbmxpbmVSZXN1bHQuaCBpbiBIZWFk
ZXJzICovLAogCQkJCUZFMTg3QTAyMUJGQkU1NjEwMDM4QkJDQSAvKiBKSVRNdWxHZW5lcmF0b3Iu
aCBpbiBIZWFkZXJzICovLAogCQkJCUZFOTlCMjQ5MUMyNEMzRDMwMEM4MjE1OSAvKiBKSVROZWdH
ZW5lcmF0b3IuaCBpbiBIZWFkZXJzICovLAorCQkJCUUzQ0EzQTRFMjUyN0FCMkYwMDQ4MDJCRiAv
KiBKSVRPcGVyYXRpb25MaXN0LmggaW4gSGVhZGVycyAqLywKIAkJCQkwRjI0RTU0RDE3RUUyNzQ5
MDBBQkIyMTcgLyogSklUT3BlcmF0aW9ucy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRkUzQTA2QzAx
QzExMDQxQTAwMzkwRkREIC8qIEpJVFJpZ2h0U2hpZnRHZW5lcmF0b3IuaCBpbiBIZWFkZXJzICov
LAogCQkJCTBGNzY2RDMxMTVBQTgxMTIwMDhGMzYzRSAvKiBKSVRTdHViUm91dGluZS5oIGluIEhl
YWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvU291cmNlcy50eHQg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvU291cmNlcy50eHQKaW5kZXggY2ZlNGVlZjc1ZGU2NTc0
MTAzZGU1MTMxMDMyMmI3ODcwYzE2N2Q5Yi4uNzExNDIxNGRhZDRlZjMxNzMwYmZlYTg0ZjE2Yzlj
YmJjMWQ5Y2MwMCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL1NvdXJjZXMudHh0
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9Tb3VyY2VzLnR4dApAQCAtNDYsNiArNDYsNyBA
QCBBUEkvT3BhcXVlSlNTdHJpbmcuY3BwCiBhc3NlbWJsZXIvQWJzdHJhY3RNYWNyb0Fzc2VtYmxl
ci5jcHAKIGFzc2VtYmxlci9Bc3NlbWJsZXJCdWZmZXIuY3BwCiBhc3NlbWJsZXIvQ1BVLmNwcAor
YXNzZW1ibGVyL0pJVE9wZXJhdGlvbkxpc3QuY3BwCiBhc3NlbWJsZXIvTGlua0J1ZmZlci5jcHAK
IGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlci5jcHAKIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckFS
TTY0LmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9KSVRP
cGVyYXRpb25MaXN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvSklUT3Bl
cmF0aW9uTGlzdC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOWM2ODQzZmY3OTBkODFiYzc0OTgzMTE3ZmY4ZDRh
NTY4ZDg5N2FmYQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3Nl
bWJsZXIvSklUT3BlcmF0aW9uTGlzdC5jcHAKQEAgLTAsMCArMSw5NCBAQAorLyoKKyAqIENvcHly
aWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBB
TkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisg
KiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNp
bmNsdWRlICJKSVRPcGVyYXRpb25MaXN0LmgiCisKK25hbWVzcGFjZSBKU0MgeworCitMYXp5TmV2
ZXJEZXN0cm95ZWQ8SklUT3BlcmF0aW9uTGlzdD4gaml0T3BlcmF0aW9uTGlzdDsKKworI2lmIEVO
QUJMRShKSVRfT1BFUkFUSU9OX1ZBTElEQVRJT04pCitleHRlcm4gY29uc3QgdWludHB0cl90IHN0
YXJ0T2ZIb3N0RnVuY3Rpb25zSW5KU0MgX19hc20oInNlY3Rpb24kc3RhcnQkX19EQVRBX0NPTlNU
JF9fanNjX2hvc3QiKTsKK2V4dGVybiBjb25zdCB1aW50cHRyX3QgZW5kT2ZIb3N0RnVuY3Rpb25z
SW5KU0MgX19hc20oInNlY3Rpb24kZW5kJF9fREFUQV9DT05TVCRfX2pzY19ob3N0Iik7CitleHRl
cm4gY29uc3QgdWludHB0cl90IHN0YXJ0T2ZKSVRPcGVyYXRpb25zSW5KU0MgX19hc20oInNlY3Rp
b24kc3RhcnQkX19EQVRBX0NPTlNUJF9fanNjX29wcyIpOworZXh0ZXJuIGNvbnN0IHVpbnRwdHJf
dCBlbmRPZkpJVE9wZXJhdGlvbnNJbkpTQyBfX2FzbSgic2VjdGlvbiRlbmQkX19EQVRBX0NPTlNU
JF9fanNjX29wcyIpOworI2VuZGlmCisKK3ZvaWQgSklUT3BlcmF0aW9uTGlzdDo6aW5pdGlhbGl6
ZSgpCit7CisgICAgaml0T3BlcmF0aW9uTGlzdC5jb25zdHJ1Y3QoKTsKK30KKworI2lmIEVOQUJM
RShKSVRfT1BFUkFUSU9OX1ZBTElEQVRJT04pCitzdGF0aWMgQUxXQVlTX0lOTElORSB2b2lkIGFk
ZFBvaW50ZXJzKEhhc2hNYXA8dm9pZCosIHZvaWQqPiYgbWFwLCBjb25zdCB1aW50cHRyX3QqIGJl
Z2luSG9zdCwgY29uc3QgdWludHB0cl90KiBlbmRIb3N0LCBjb25zdCB1aW50cHRyX3QqIGJlZ2lu
T3BlcmF0aW9ucywgY29uc3QgdWludHB0cl90KiBlbmRPcGVyYXRpb25zKQoreworICAgIGZvciAo
Y29uc3QgdWludHB0cl90KiBjdXJyZW50ID0gYmVnaW5Ib3N0OyBjdXJyZW50ICE9IGVuZEhvc3Q7
ICsrY3VycmVudCkgeworICAgICAgICB2b2lkKiBjb2RlUHRyID0gcmVtb3ZlQ29kZVB0clRhZyhi
aXR3aXNlX2Nhc3Q8dm9pZCo+KCpjdXJyZW50KSk7CisgICAgICAgIGF1dG8gcmVzdWx0ID0gbWFw
LmFkZChjb2RlUHRyLCB0YWdDb2RlUHRyKGNvZGVQdHIsIEpTRW50cnlQdHJUYWcpKTsKKyAgICAg
ICAgQVNTRVJUKHJlc3VsdC5pc05ld0VudHJ5KTsKKyAgICB9CisgICAgZm9yIChjb25zdCB1aW50
cHRyX3QqIGN1cnJlbnQgPSBiZWdpbk9wZXJhdGlvbnM7IGN1cnJlbnQgIT0gZW5kT3BlcmF0aW9u
czsgKytjdXJyZW50KSB7CisgICAgICAgIHZvaWQqIGNvZGVQdHIgPSByZW1vdmVDb2RlUHRyVGFn
KGJpdHdpc2VfY2FzdDx2b2lkKj4oKmN1cnJlbnQpKTsKKyAgICAgICAgYXV0byByZXN1bHQgPSBt
YXAuYWRkKGNvZGVQdHIsIHRhZ0NvZGVQdHIoY29kZVB0ciwgT3BlcmF0aW9uUHRyVGFnKSk7Cisg
ICAgICAgIEFTU0VSVChyZXN1bHQuaXNOZXdFbnRyeSk7CisgICAgfQorfQorI2VuZGlmCisKK3Zv
aWQgSklUT3BlcmF0aW9uTGlzdDo6cG9wdWxhdGVQb2ludGVyc0luSmF2YVNjcmlwdENvcmUoKQor
eworI2lmIEVOQUJMRShKSVRfT1BFUkFUSU9OX1ZBTElEQVRJT04pCisgICAgc3RkOjpvbmNlX2Zs
YWcgb25jZUtleTsKKyAgICBzdGQ6OmNhbGxfb25jZShvbmNlS2V5LCBbXSB7CisgICAgICAgIGlm
IChPcHRpb25zOjp1c2VKSVQoKSkKKyAgICAgICAgICAgIGFkZFBvaW50ZXJzKGppdE9wZXJhdGlv
bkxpc3QtPm1fdmFsaWRhdGVkT3BlcmF0aW9ucywgJnN0YXJ0T2ZIb3N0RnVuY3Rpb25zSW5KU0Ms
ICZlbmRPZkhvc3RGdW5jdGlvbnNJbkpTQywgJnN0YXJ0T2ZKSVRPcGVyYXRpb25zSW5KU0MsICZl
bmRPZkpJVE9wZXJhdGlvbnNJbkpTQyk7CisgICAgfSk7CisjZW5kaWYKK30KKwordm9pZCBKSVRP
cGVyYXRpb25MaXN0Ojpwb3B1bGF0ZVBvaW50ZXJzSW5FbWJlZGRlcjEoY29uc3QgdWludHB0cl90
KiBiZWdpbkhvc3QsIGNvbnN0IHVpbnRwdHJfdCogZW5kSG9zdCwgY29uc3QgdWludHB0cl90KiBi
ZWdpbk9wZXJhdGlvbnMsIGNvbnN0IHVpbnRwdHJfdCogZW5kT3BlcmF0aW9ucykKK3sKKyNpZiBF
TkFCTEUoSklUX09QRVJBVElPTl9WQUxJREFUSU9OKQorICAgIHN0ZDo6b25jZV9mbGFnIG9uY2VL
ZXk7CisgICAgc3RkOjpjYWxsX29uY2Uob25jZUtleSwgWz1dIHsKKyAgICAgICAgaWYgKE9wdGlv
bnM6OnVzZUpJVCgpKQorICAgICAgICAgICAgYWRkUG9pbnRlcnMoaml0T3BlcmF0aW9uTGlzdC0+
bV92YWxpZGF0ZWRPcGVyYXRpb25zLCBiZWdpbkhvc3QsIGVuZEhvc3QsIGJlZ2luT3BlcmF0aW9u
cywgZW5kT3BlcmF0aW9ucyk7CisgICAgfSk7CisjZW5kaWYKK30KKwordm9pZCBKSVRPcGVyYXRp
b25MaXN0Ojpwb3B1bGF0ZVBvaW50ZXJzSW5FbWJlZGRlcjIoY29uc3QgdWludHB0cl90KiBiZWdp
bkhvc3QsIGNvbnN0IHVpbnRwdHJfdCogZW5kSG9zdCwgY29uc3QgdWludHB0cl90KiBiZWdpbk9w
ZXJhdGlvbnMsIGNvbnN0IHVpbnRwdHJfdCogZW5kT3BlcmF0aW9ucykKK3sKKyNpZiBFTkFCTEUo
SklUX09QRVJBVElPTl9WQUxJREFUSU9OKQorICAgIHN0ZDo6b25jZV9mbGFnIG9uY2VLZXk7Cisg
ICAgc3RkOjpjYWxsX29uY2Uob25jZUtleSwgWz1dIHsKKyAgICAgICAgaWYgKE9wdGlvbnM6OnVz
ZUpJVCgpKQorICAgICAgICAgICAgYWRkUG9pbnRlcnMoaml0T3BlcmF0aW9uTGlzdC0+bV92YWxp
ZGF0ZWRPcGVyYXRpb25zLCBiZWdpbkhvc3QsIGVuZEhvc3QsIGJlZ2luT3BlcmF0aW9ucywgZW5k
T3BlcmF0aW9ucyk7CisgICAgfSk7CisjZW5kaWYKK30KKworfSAvLyBuYW1lc3BhY2UgSlNDCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL0pJVE9wZXJhdGlvbkxp
c3QuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvSklUT3BlcmF0aW9uTGlzdC5o
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjk4ZjgzNGUzYmZjMTMwZjU0YzgxNzhkOGU0M2RkYTRlODczZjk0ZTIKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL0pJVE9wZXJh
dGlvbkxpc3QuaApAQCAtMCwwICsxLDgxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIwIEFw
cGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
VEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVO
VCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1Ig
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJKU0NQdHJUYWcuaCIK
KyNpbmNsdWRlICJPcHRpb25zLmgiCisjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KKyNpbmNsdWRl
IDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KKworbmFtZXNwYWNlIEpTQyB7CisKK2NsYXNzIEpJVE9w
ZXJhdGlvbkxpc3QgeworcHVibGljOgorICAgIHN0YXRpYyBKSVRPcGVyYXRpb25MaXN0JiBpbnN0
YW5jZSgpOworICAgIHN0YXRpYyB2b2lkIGluaXRpYWxpemUoKTsKKworICAgIHZvaWQqIGNvbnRh
aW5zKHZvaWQqIHBvaW50ZXIpIGNvbnN0CisgICAgeworICAgICAgICBpZiBjb25zdGV4cHIoQVNT
RVJUX0VOQUJMRUQpCisgICAgICAgICAgICByZXR1cm4gbV92YWxpZGF0ZWRPcGVyYXRpb25zLmdl
dChyZW1vdmVDb2RlUHRyVGFnKHBvaW50ZXIpKTsKKyAgICAgICAgcmV0dXJuIHBvaW50ZXI7Cisg
ICAgfQorCisgICAgc3RhdGljIHZvaWQgcG9wdWxhdGVQb2ludGVyc0luSmF2YVNjcmlwdENvcmUo
KTsKKworICAgIEpTX0VYUE9SVF9QUklWQVRFIHN0YXRpYyB2b2lkIHBvcHVsYXRlUG9pbnRlcnNJ
bkVtYmVkZGVyMShjb25zdCB1aW50cHRyX3QqIGJlZ2luSG9zdCwgY29uc3QgdWludHB0cl90KiBl
bmRIb3N0LCBjb25zdCB1aW50cHRyX3QqIGJlZ2luT3BlcmF0aW9ucywgY29uc3QgdWludHB0cl90
KiBlbmRPcGVyYXRpb25zKTsKKyAgICBKU19FWFBPUlRfUFJJVkFURSBzdGF0aWMgdm9pZCBwb3B1
bGF0ZVBvaW50ZXJzSW5FbWJlZGRlcjIoY29uc3QgdWludHB0cl90KiBiZWdpbkhvc3QsIGNvbnN0
IHVpbnRwdHJfdCogZW5kSG9zdCwgY29uc3QgdWludHB0cl90KiBiZWdpbk9wZXJhdGlvbnMsIGNv
bnN0IHVpbnRwdHJfdCogZW5kT3BlcmF0aW9ucyk7CisKKyAgICAvLyBGSVhNRTogQ3VycmVudGx5
LCBhc3NlcnRJc0hvc3RGdW5jdGlvbiBhbmQgYXNzZXJ0SXNKSVRPcGVyYXRpb24gYXJlIHRoZSBz
YW1lLgorICAgIC8vIFdlIHdpbGwgbWFrZSB0aGVtIHdvcmsgaW4gYSBzdWJzZXF1ZW50IHBhdGNo
LgorICAgIHRlbXBsYXRlPHR5cGVuYW1lIFQ+IHN0YXRpYyB2b2lkIGFzc2VydElzSG9zdEZ1bmN0
aW9uKFQgZnVuY3Rpb24pCisgICAgeworICAgICAgICBVTlVTRURfUEFSQU0oZnVuY3Rpb24pOwor
I2lmIEVOQUJMRShKSVRfT1BFUkFUSU9OX1ZBTElEQVRJT04pCisgICAgICAgIEFTU0VSVChmdW5j
dGlvbiwgIU9wdGlvbnM6OnVzZUpJVCgpIHx8IEpJVE9wZXJhdGlvbkxpc3Q6Omluc3RhbmNlKCku
Y29udGFpbnMoYml0d2lzZV9jYXN0PHZvaWQqPihmdW5jdGlvbikpKTsKKyNlbmRpZgorICAgIH0K
KworICAgIHRlbXBsYXRlPHR5cGVuYW1lIFQ+IHN0YXRpYyB2b2lkIGFzc2VydElzSklUT3BlcmF0
aW9uKFQgZnVuY3Rpb24pCisgICAgeworICAgICAgICBVTlVTRURfUEFSQU0oZnVuY3Rpb24pOwor
I2lmIEVOQUJMRShKSVRfT1BFUkFUSU9OX1ZBTElEQVRJT04pCisgICAgICAgIEFTU0VSVCghT3B0
aW9uczo6dXNlSklUKCkgfHwgSklUT3BlcmF0aW9uTGlzdDo6aW5zdGFuY2UoKS5jb250YWlucyhi
aXR3aXNlX2Nhc3Q8dm9pZCo+KGZ1bmN0aW9uKSkpOworI2VuZGlmCisgICAgfQorCitwcml2YXRl
OgorICAgIEhhc2hNYXA8dm9pZCosIHZvaWQqPiBtX3ZhbGlkYXRlZE9wZXJhdGlvbnM7Cit9Owor
CitleHRlcm4gTGF6eU5ldmVyRGVzdHJveWVkPEpJVE9wZXJhdGlvbkxpc3Q+IGppdE9wZXJhdGlv
bkxpc3Q7CisKK2lubGluZSBKSVRPcGVyYXRpb25MaXN0JiBKSVRPcGVyYXRpb25MaXN0OjppbnN0
YW5jZSgpCit7CisgICAgcmV0dXJuIGppdE9wZXJhdGlvbkxpc3QuZ2V0KCk7Cit9CisKK30gLy8g
bmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvanNjLmNwcAppbmRleCBkNTg5NmI5NTIyODViNzVlYTdh
MmJlYTFlN2RjMTdmMTgwZDQxMDMyLi41MDU3NzNjMDExMDQzZjI1ZGI3NDBiNjE2ZjExNWM0ZjY3
M2JiMjk5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvanNjLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvanNjLmNwcApAQCAtMzksNiArMzksNyBAQAogI2luY2x1ZGUg
IkluaXRpYWxpemVUaHJlYWRpbmcuaCIKICNpbmNsdWRlICJJbnRlcnByZXRlci5oIgogI2luY2x1
ZGUgIkpJVC5oIgorI2luY2x1ZGUgIkpJVE9wZXJhdGlvbkxpc3QuaCIKICNpbmNsdWRlICJKU0Fy
cmF5LmgiCiAjaW5jbHVkZSAiSlNBcnJheUJ1ZmZlci5oIgogI2luY2x1ZGUgIkpTQmlnSW50Lmgi
CkBAIC0zNDExLDYgKzM0MTIsMTMgQEAgaW50IHJ1bkpTQyhjb25zdCBDb21tYW5kTGluZSYgb3B0
aW9ucywgYm9vbCBpc1dvcmtlciwgY29uc3QgRnVuYyYgZnVuYykKICAgICByZXR1cm4gcmVzdWx0
OwogfQogCisjaWYgRU5BQkxFKEpJVF9PUEVSQVRJT05fVkFMSURBVElPTikKK2V4dGVybiBjb25z
dCB1aW50cHRyX3Qgc3RhcnRPZkhvc3RGdW5jdGlvbnNJblNoZWxsIF9fYXNtKCJzZWN0aW9uJHN0
YXJ0JF9fREFUQV9DT05TVCRfX2pzY19ob3N0Iik7CitleHRlcm4gY29uc3QgdWludHB0cl90IGVu
ZE9mSG9zdEZ1bmN0aW9uc0luU2hlbGwgX19hc20oInNlY3Rpb24kZW5kJF9fREFUQV9DT05TVCRf
X2pzY19ob3N0Iik7CitleHRlcm4gY29uc3QgdWludHB0cl90IHN0YXJ0T2ZKSVRPcGVyYXRpb25z
SW5TaGVsbCBfX2FzbSgic2VjdGlvbiRzdGFydCRfX0RBVEFfQ09OU1QkX19qc2Nfb3BzIik7Citl
eHRlcm4gY29uc3QgdWludHB0cl90IGVuZE9mSklUT3BlcmF0aW9uc0luU2hlbGwgX19hc20oInNl
Y3Rpb24kZW5kJF9fREFUQV9DT05TVCRfX2pzY19vcHMiKTsKKyNlbmRpZgorCiBpbnQganNjbWFp
bihpbnQgYXJnYywgY2hhcioqIGFyZ3YpCiB7CiAgICAgLy8gTmVlZCB0byBvdmVycmlkZSBhbmQg
ZW5hYmxlIHJlc3RyaWN0ZWQgb3B0aW9ucyBiZWZvcmUgd2Ugc3RhcnQgcGFyc2luZyBvcHRpb25z
IGJlbG93LgpAQCAtMzQzMCw2ICszNDM4LDEwIEBAIGludCBqc2NtYWluKGludCBhcmdjLCBjaGFy
KiogYXJndikKICAgICB9CiAKICAgICBKU0M6OmluaXRpYWxpemUoKTsKKyNpZiBFTkFCTEUoSklU
X09QRVJBVElPTl9WQUxJREFUSU9OKQorICAgIEpTQzo6SklUT3BlcmF0aW9uTGlzdDo6cG9wdWxh
dGVQb2ludGVyc0luRW1iZWRkZXIxKCZzdGFydE9mSG9zdEZ1bmN0aW9uc0luU2hlbGwsICZlbmRP
Zkhvc3RGdW5jdGlvbnNJblNoZWxsLCAmc3RhcnRPZkpJVE9wZXJhdGlvbnNJblNoZWxsLCAmZW5k
T2ZKSVRPcGVyYXRpb25zSW5TaGVsbCk7CisgICAgSlNDOjpKSVRPcGVyYXRpb25MaXN0Ojpwb3B1
bGF0ZVBvaW50ZXJzSW5FbWJlZGRlcjIobnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0
cik7CisjZW5kaWYKICAgICBpbml0aWFsaXplVGltZW91dElmTmVlZGVkKCk7CiAKICNpZiBPUyhE
QVJXSU4pIHx8IE9TKExJTlVYKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSW5pdGlhbGl6ZVRocmVhZGluZy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9Jbml0aWFsaXplVGhyZWFkaW5nLmNwcAppbmRleCBlNTNiZmIyM2M0YWIxNTk3YmFmM2Nl
MGQwZWRjYTU4YmY4MjQ1NTFiLi45MTViYzZjNTQxYjg3ZWVmNWIwNWNlMzgzZjdhN2JiNjllZTQx
YWRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Jbml0aWFsaXpl
VGhyZWFkaW5nLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Jbml0aWFs
aXplVGhyZWFkaW5nLmNwcApAQCAtMzAsNiArMzAsNyBAQAogI2luY2x1ZGUgIkluaXRpYWxpemVU
aHJlYWRpbmcuaCIKIAogI2luY2x1ZGUgIkV4ZWN1dGFibGVBbGxvY2F0b3IuaCIKKyNpbmNsdWRl
ICJKSVRPcGVyYXRpb25MaXN0LmgiCiAjaW5jbHVkZSAiSlNDQ29uZmlnLmgiCiAjaW5jbHVkZSAi
SlNDUHRyVGFnLmgiCiAjaW5jbHVkZSAiTExJbnREYXRhLmgiCkBAIC02NCw2ICs2NSw3IEBAIHZv
aWQgaW5pdGlhbGl6ZSgpCiAjZW5kaWYKICAgICAgICAgewogICAgICAgICAgICAgT3B0aW9uczo6
QWxsb3dVbmZpbmFsaXplZEFjY2Vzc1Njb3BlIHNjb3BlOworICAgICAgICAgICAgSklUT3BlcmF0
aW9uTGlzdDo6aW5pdGlhbGl6ZSgpOwogICAgICAgICAgICAgRXhlY3V0YWJsZUFsbG9jYXRvcjo6
aW5pdGlhbGl6ZSgpOwogICAgICAgICAgICAgVk06OmNvbXB1dGVDYW5Vc2VKSVQoKTsKICAgICAg
ICAgICAgIGlmICghZ19qc2NDb25maWcudm0uY2FuVXNlSklUKSB7CkBAIC03Myw2ICs3NSw4IEBA
IHZvaWQgaW5pdGlhbGl6ZSgpCiAgICAgICAgIH0KICAgICAgICAgT3B0aW9uczo6ZmluYWxpemUo
KTsKIAorICAgICAgICBKSVRPcGVyYXRpb25MaXN0Ojpwb3B1bGF0ZVBvaW50ZXJzSW5KYXZhU2Ny
aXB0Q29yZSgpOworCiAgICAgICAgIGlmIChPcHRpb25zOjp1c2VTaWdpbGxDcmFzaEFuYWx5emVy
KCkpCiAgICAgICAgICAgICBlbmFibGVTaWdpbGxDcmFzaEFuYWx5emVyKCk7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3
UHJvdG90eXBlRnVuY3Rpb25zLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dl
bmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZUZ1bmN0aW9ucy5oCmluZGV4IDBiYWI0NjA1N2Nl
YTQxZTI4MDliZGU4N2ExOTIwYzNjYmY4OGFmYWUuLjBiNjZlZDYyMjkxN2VkZTM2ODJlYTBhZDNm
NGEyZjQ5NTBkMWUwMTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlRnVuY3Rpb25zLmgKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b3R5cGVG
dW5jdGlvbnMuaApAQCAtMTAwLDcgKzEwMCw3IEBAIGlubGluZSB1bnNpZ25lZCBhcmd1bWVudENs
YW1wZWRJbmRleEZyb21TdGFydE9yRW5kKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsCiB9
CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFZpZXdDbGFzcz4KLUpTQ19ERUZJTkVfSE9TVF9GVU5DVElP
TihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNTZXQsIChWTSYgdm0sIEpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKSkKK0FMV0FZU19JTkxJTkUg
RW5jb2RlZEpTVmFsdWUgZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jU2V0KFZNJiB2bSwg
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpCiB7CiAg
ICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCkBAIC0xNDcsNyArMTQ3
LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3Rv
RnVuY1NldCwgKFZNJiB2bSwgSlNHbG9iYWxPYmoKIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUgVmll
d0NsYXNzPgotSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1By
b3RvRnVuY0NvcHlXaXRoaW4sIChWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IENhbGxGcmFtZSogY2FsbEZyYW1lKSkKK0FMV0FZU19JTkxJTkUgRW5jb2RlZEpTVmFsdWUgZ2Vu
ZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jQ29weVdpdGhpbihWTSYgdm0sIEpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKQogewogICAgIGF1dG8gc2Nv
cGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIApAQCAtMTc5LDcgKzE3OSw3IEBAIEpTQ19E
RUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNDb3B5V2l0
aGluLCAoVk0mIHZtLCBKU0dsCiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFZpZXdDbGFzcz4KLUpT
Q19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNJbmNs
dWRlcywgKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBj
YWxsRnJhbWUpKQorQUxXQVlTX0lOTElORSBFbmNvZGVkSlNWYWx1ZSBnZW5lcmljVHlwZWRBcnJh
eVZpZXdQcm90b0Z1bmNJbmNsdWRlcyhWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKQogewogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RI
Uk9XX1NDT1BFKHZtKTsKIApAQCAtMjI0LDcgKzIyNCw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5D
VElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNJbmNsdWRlcywgKFZNJiB2bSwgSlNH
bG9iCiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFZpZXdDbGFzcz4KLUpTQ19ERUZJTkVfSE9TVF9G
VU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNJbmRleE9mLCAoVk0mIHZtLCBK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkpCitBTFdB
WVNfSU5MSU5FIEVuY29kZWRKU1ZhbHVlIGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY0lu
ZGV4T2YoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNh
bGxGcmFtZSkKIHsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAK
QEAgLTI2MSw3ICsyNjEsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVk
QXJyYXlWaWV3UHJvdG9GdW5jSW5kZXhPZiwgKFZNJiB2bSwgSlNHbG9iYQogfQogCiB0ZW1wbGF0
ZTx0eXBlbmFtZSBWaWV3Q2xhc3M+Ci1KU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5
cGVkQXJyYXlWaWV3UHJvdG9GdW5jSm9pbiwgKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpKQorQUxXQVlTX0lOTElORSBFbmNvZGVkSlNW
YWx1ZSBnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNKb2luKFZNJiB2bSwgSlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpCiB7CiAgICAgYXV0byBz
Y29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCkBAIC0zMDAsNyArMzAwLDcgQEAgSlND
X0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY0pvaW4s
IChWTSYgdm0sIEpTR2xvYmFsT2IKIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUgVmlld0NsYXNzPgot
SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY0xh
c3RJbmRleE9mLCAoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJh
bWUqIGNhbGxGcmFtZSkpCitBTFdBWVNfSU5MSU5FIEVuY29kZWRKU1ZhbHVlIGdlbmVyaWNUeXBl
ZEFycmF5Vmlld1Byb3RvRnVuY0xhc3RJbmRleE9mKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpCiB7CiAgICAgYXV0byBzY29wZSA9IERF
Q0xBUkVfVEhST1dfU0NPUEUodm0pOwogCkBAIC0zNTAsNyArMzUwLDcgQEAgSlNDX0RFRklORV9I
T1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY0xhc3RJbmRleE9mLCAo
Vk0mIHZtLCBKU0cKIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUgVmlld0NsYXNzPgotSlNDX0RFRklO
RV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvR2V0dGVyRnVuY0J1ZmZl
ciwgKFZNJiwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJh
bWUpKQorQUxXQVlTX0lOTElORSBFbmNvZGVkSlNWYWx1ZSBnZW5lcmljVHlwZWRBcnJheVZpZXdQ
cm90b0dldHRlckZ1bmNCdWZmZXIoVk0mLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBD
YWxsRnJhbWUqIGNhbGxGcmFtZSkKIHsKICAgICAvLyAyMi4yLjMuMwogICAgIFZpZXdDbGFzcyog
dGhpc09iamVjdCA9IGpzQ2FzdDxWaWV3Q2xhc3MqPihjYWxsRnJhbWUtPnRoaXNWYWx1ZSgpKTsK
QEAgLTM1OSw3ICszNTksNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVk
QXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jQnVmZmVyLCAoVk0mLCBKU0dsbwogfQogCiB0ZW1wbGF0
ZTx0eXBlbmFtZSBWaWV3Q2xhc3M+Ci1KU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5
cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jTGVuZ3RoLCAoVk0mLCBKU0dsb2JhbE9iamVjdCos
IENhbGxGcmFtZSogY2FsbEZyYW1lKSkKK0FMV0FZU19JTkxJTkUgRW5jb2RlZEpTVmFsdWUgZ2Vu
ZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jTGVuZ3RoKFZNJiwgSlNHbG9iYWxPYmpl
Y3QqLCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKIHsKICAgICAvLyAyMi4yLjMuMTcKICAgICBWaWV3
Q2xhc3MqIHRoaXNPYmplY3QgPSBqc0Nhc3Q8Vmlld0NsYXNzKj4oY2FsbEZyYW1lLT50aGlzVmFs
dWUoKSk7CkBAIC0zNjgsNyArMzY4LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVy
aWNUeXBlZEFycmF5Vmlld1Byb3RvR2V0dGVyRnVuY0xlbmd0aCwgKFZNJiwgSlNHbG8KIH0KIAog
dGVtcGxhdGU8dHlwZW5hbWUgVmlld0NsYXNzPgotSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdl
bmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvR2V0dGVyRnVuY0J5dGVMZW5ndGgsIChWTSYsIEpTR2xv
YmFsT2JqZWN0KiwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpKQorQUxXQVlTX0lOTElORSBFbmNvZGVk
SlNWYWx1ZSBnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0dldHRlckZ1bmNCeXRlTGVuZ3RoKFZN
JiwgSlNHbG9iYWxPYmplY3QqLCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKIHsKICAgICAvLyAyMi4y
LjMuMgogICAgIFZpZXdDbGFzcyogdGhpc09iamVjdCA9IGpzQ2FzdDxWaWV3Q2xhc3MqPihjYWxs
RnJhbWUtPnRoaXNWYWx1ZSgpKTsKQEAgLTM3Nyw3ICszNzcsNyBAQCBKU0NfREVGSU5FX0hPU1Rf
RlVOQ1RJT04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jQnl0ZUxlbmd0aCwg
KFZNJiwgSgogfQogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBWaWV3Q2xhc3M+Ci1KU0NfREVGSU5FX0hP
U1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jQnl0ZU9mZnNl
dCwgKFZNJiwgSlNHbG9iYWxPYmplY3QqLCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkpCitBTFdBWVNf
SU5MSU5FIEVuY29kZWRKU1ZhbHVlIGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvR2V0dGVyRnVu
Y0J5dGVPZmZzZXQoVk0mLCBKU0dsb2JhbE9iamVjdCosIENhbGxGcmFtZSogY2FsbEZyYW1lKQog
ewogICAgIC8vIDIyLjIuMy4zCiAgICAgVmlld0NsYXNzKiB0aGlzT2JqZWN0ID0ganNDYXN0PFZp
ZXdDbGFzcyo+KGNhbGxGcmFtZS0+dGhpc1ZhbHVlKCkpOwpAQCAtMzg2LDcgKzM4Niw3IEBAIEpT
Q19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0dldHRlckZ1
bmNCeXRlT2Zmc2V0LCAoVk0mLCBKCiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFZpZXdDbGFzcz4K
LUpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNS
ZXZlcnNlLCAoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUq
IGNhbGxGcmFtZSkpCitBTFdBWVNfSU5MSU5FIEVuY29kZWRKU1ZhbHVlIGdlbmVyaWNUeXBlZEFy
cmF5Vmlld1Byb3RvRnVuY1JldmVyc2UoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2Jq
ZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKIHsKIC8vICAgIFZNJiB2bSA9IGdldFZNKGdsb2Jh
bE9iamVjdCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwpAQCAt
NDAzLDcgKzQwMyw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJh
eVZpZXdQcm90b0Z1bmNSZXZlcnNlLCAoVk0mIHZtLCBKU0dsb2JhCiB9CiAKIHRlbXBsYXRlPHR5
cGVuYW1lIFZpZXdDbGFzcz4KLUpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRB
cnJheVZpZXdQcml2YXRlRnVuY1NvcnQsIChWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKSkKK0FMV0FZU19JTkxJTkUgRW5jb2RlZEpTVmFs
dWUgZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJpdmF0ZUZ1bmNTb3J0KFZNJiB2bSwgSlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpCiB7CiAvLyAgICBWTSYg
dm0gPSBnZXRWTShnbG9iYWxPYmplY3QpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9X
X1NDT1BFKHZtKTsKQEAgLTQxOSw3ICs0MTksNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04o
Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJpdmF0ZUZ1bmNTb3J0LCAoVk0mIHZtLCBKU0dsb2JhbAog
fQogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBWaWV3Q2xhc3M+Ci1KU0NfREVGSU5FX0hPU1RfRlVOQ1RJ
T04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jU2xpY2UsIChWTSYgdm0sIEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKSkKK0FMV0FZU19JTkxJ
TkUgRW5jb2RlZEpTVmFsdWUgZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jU2xpY2UoVk0m
IHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkK
IHsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKQEAgLTUxMCw3
ICs1MTAsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3
UHJvdG9GdW5jU2xpY2UsIChWTSYgdm0sIEpTR2xvYmFsTwogfQogCiB0ZW1wbGF0ZTx0eXBlbmFt
ZSBWaWV3Q2xhc3M+Ci1KU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVkQXJyYXlW
aWV3UHJpdmF0ZUZ1bmNTdWJhcnJheUNyZWF0ZSwgKFZNJnZtLCBKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkpCitBTFdBWVNfSU5MSU5FIEVuY29kZWRK
U1ZhbHVlIGdlbmVyaWNUeXBlZEFycmF5Vmlld1ByaXZhdGVGdW5jU3ViYXJyYXlDcmVhdGUoVk0m
dm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKQog
ewogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0uY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvVk0uY3BwCmluZGV4IGNiYzcwNmZmNDg2MDAwYWQ2OGYwZTZkMzQ4NTc0
OWZjNjliZWQ3ODIuLjliNjQ0Zjg4OTJmYjlhMDJkNDE0MWE5OTYxMDM5NTdjMTZjNmYzMWIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZNLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9WTS5jcHAKQEAgLTc4LDYgKzc4LDcgQEAKICNpbmNs
dWRlICJJc29IZWFwQ2VsbFR5cGUuaCIKICNpbmNsdWRlICJJc29JbmxpbmVkSGVhcENlbGxUeXBl
LmgiCiAjaW5jbHVkZSAiSklUQ29kZS5oIgorI2luY2x1ZGUgIkpJVE9wZXJhdGlvbkxpc3QuaCIK
ICNpbmNsdWRlICJKSVRUaHVua3MuaCIKICNpbmNsdWRlICJKSVRXb3JrbGlzdC5oIgogI2luY2x1
ZGUgIkpTQVBJR2xvYmFsT2JqZWN0LmgiCkBAIC04MzEsNiArODMyLDcgQEAgTmF0aXZlRXhlY3V0
YWJsZSogVk06OmdldEhvc3RGdW5jdGlvbihOYXRpdmVGdW5jdGlvbiBmdW5jdGlvbiwgSW50cmlu
c2ljIGludHJpbnMKIHsKICNpZiBFTkFCTEUoSklUKQogICAgIGlmIChPcHRpb25zOjp1c2VKSVQo
KSkgeworICAgICAgICBKSVRPcGVyYXRpb25MaXN0Ojphc3NlcnRJc0hvc3RGdW5jdGlvbihmdW5j
dGlvbik7CiAgICAgICAgIHJldHVybiBqaXRTdHVicy0+aG9zdEZ1bmN0aW9uU3R1YigKICAgICAg
ICAgICAgICp0aGlzLCBmdW5jdGlvbiwgY29uc3RydWN0b3IsCiAgICAgICAgICAgICBpbnRyaW5z
aWMgIT0gTm9JbnRyaW5zaWMgPyB0aHVua0dlbmVyYXRvckZvckludHJpbnNpYyhpbnRyaW5zaWMp
IDogbnVsbHB0ciwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtQ2FsbGluZ0Nv
bnZlbnRpb25zLmggYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUNhbGxpbmdDb252ZW50aW9ucy5o
CmluZGV4IDc1OTc3MjlmNjQxMjY2YzUyZGJkMzVkZGQ5OTc1ZjI2N2JhNmMyZTkuLjQ5MzdlYmY3
YzNhYmViZmYyZjZhNjAwNmVkMWYyNDYzN2YxZDFiMzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYv
d3RmL1BsYXRmb3JtQ2FsbGluZ0NvbnZlbnRpb25zLmgKKysrIGIvU291cmNlL1dURi93dGYvUGxh
dGZvcm1DYWxsaW5nQ29udmVudGlvbnMuaApAQCAtNDIsMTMgKzQyLDIwIEBACiAjZGVmaW5lIEpT
Q19IT1NUX0NBTExfQVRUUklCVVRFUwogI2VuZGlmCiAKKyNpZiBFTkFCTEUoSklUX09QRVJBVElP
Tl9WQUxJREFUSU9OKQorI2RlZmluZSBKU0NfQU5OT1RBVEVfSE9TVF9GVU5DVElPTihmdW5jdGlv
bklkLCBmdW5jdGlvbikgXAorICAgIGNvbnN0ZXhwciBhdXRvIGZ1bmN0aW9uSWQgX19hdHRyaWJ1
dGVfXygodXNlZCwgc2VjdGlvbigiX19EQVRBX0NPTlNULF9fanNjX2hvc3QiKSkpID0gZnVuY3Rp
b247CisjZWxzZQorI2RlZmluZSBKU0NfQU5OT1RBVEVfSE9TVF9GVU5DVElPTihmdW5jdGlvbklk
LCBmdW5jdGlvbikKKyNlbmRpZgorCiAjZGVmaW5lIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTl9X
SVRIX0FUVFJJQlVURVMoZnVuY3Rpb25OYW1lLCBhdHRyaWJ1dGVzLCBwYXJhbWV0ZXJzKSBcCisg
ICAgSlNDX0FOTk9UQVRFX0hPU1RfRlVOQ1RJT04oX0pJVFRhcmdldF8jI2Z1bmN0aW9uTmFtZSwg
c3RhdGljX2Nhc3Q8SlNDOjpFbmNvZGVkSlNWYWx1ZSgqKXBhcmFtZXRlcnM+KGZ1bmN0aW9uTmFt
ZSkpOyBcCiAgICAgYXR0cmlidXRlcyBKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTExf
QVRUUklCVVRFUyBmdW5jdGlvbk5hbWUgcGFyYW1ldGVycwogI2RlZmluZSBKU0NfREVGSU5FX0hP
U1RfRlVOQ1RJT04oZnVuY3Rpb25OYW1lLCBwYXJhbWV0ZXJzKSBcCiAgICAgSlNDX0RFRklORV9I
T1NUX0ZVTkNUSU9OX1dJVEhfQVRUUklCVVRFUyhmdW5jdGlvbk5hbWUsICwgcGFyYW1ldGVycykK
ICNkZWZpbmUgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihmdW5jdGlvbk5hbWUpIFwKICAgICBK
U0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTExfQVRUUklCVVRFUyBmdW5jdGlvbk5hbWUo
SlNDOjpKU0dsb2JhbE9iamVjdCosIEpTQzo6Q2FsbEZyYW1lKikKLSNkZWZpbmUgSlNDX0FOTk9U
QVRFX0hPU1RfRlVOQ1RJT04oZnVuY3Rpb25JZCwgZnVuY3Rpb24pCiAKICNpZiBDUFUoWDg2KSAm
JiBPUyhXSU5ET1dTKQogI2RlZmluZSBDQUxMSU5HX0NPTlZFTlRJT05fSVNfU1REQ0FMTCAxCkBA
IC04MiwxNCArODksMjAgQEAKICNkZWZpbmUgSklUX09QRVJBVElPTl9BVFRSSUJVVEVTCiAjZW5k
aWYKIAorI2lmIEVOQUJMRShKSVRfT1BFUkFUSU9OX1ZBTElEQVRJT04pCisjZGVmaW5lIEpTQ19B
Tk5PVEFURV9KSVRfT1BFUkFUSU9OKGZ1bmN0aW9uSWQsIGZ1bmN0aW9uKSBcCisgICAgY29uc3Rl
eHByIGF1dG8gIGZ1bmN0aW9uSWQgX19hdHRyaWJ1dGVfXygodXNlZCwgc2VjdGlvbigiX19EQVRB
X0NPTlNULF9fanNjX29wcyIpKSkgPSBmdW5jdGlvbjsKKyNlbHNlCisjZGVmaW5lIEpTQ19BTk5P
VEFURV9KSVRfT1BFUkFUSU9OKGZ1bmN0aW9uSWQsIGZ1bmN0aW9uKQorI2VuZGlmCiAKICNkZWZp
bmUgSlNDX0RFRklORV9KSVRfT1BFUkFUSU9OX1dJVEhfQVRUUklCVVRFUyhmdW5jdGlvbk5hbWUs
IGF0dHJpYnV0ZXMsIHJldHVyblR5cGUsIHBhcmFtZXRlcnMpIFwKKyAgICBKU0NfQU5OT1RBVEVf
SklUX09QRVJBVElPTihfSklUVGFyZ2V0XyMjZnVuY3Rpb25OYW1lLCBzdGF0aWNfY2FzdDxyZXR1
cm5UeXBlKCopcGFyYW1ldGVycz4oZnVuY3Rpb25OYW1lKSk7IFwKICAgICBhdHRyaWJ1dGVzIHJl
dHVyblR5cGUgSklUX09QRVJBVElPTl9BVFRSSUJVVEVTIGZ1bmN0aW9uTmFtZSBwYXJhbWV0ZXJz
CiAjZGVmaW5lIEpTQ19ERUZJTkVfSklUX09QRVJBVElPTihmdW5jdGlvbk5hbWUsIHJldHVyblR5
cGUsIHBhcmFtZXRlcnMpIFwKICAgICBKU0NfREVGSU5FX0pJVF9PUEVSQVRJT05fV0lUSF9BVFRS
SUJVVEVTKGZ1bmN0aW9uTmFtZSwgLCByZXR1cm5UeXBlLCBwYXJhbWV0ZXJzKQogI2RlZmluZSBK
U0NfREVDTEFSRV9KSVRfT1BFUkFUSU9OKGZ1bmN0aW9uTmFtZSwgcmV0dXJuVHlwZSwgcGFyYW1l
dGVycykgXAogICAgIHJldHVyblR5cGUgSklUX09QRVJBVElPTl9BVFRSSUJVVEVTIGZ1bmN0aW9u
TmFtZSBwYXJhbWV0ZXJzIFJFRkVSRU5DRURfRlJPTV9BU00gV1RGX0lOVEVSTkFMCi0jZGVmaW5l
IEpTQ19BTk5PVEFURV9KSVRfT1BFUkFUSU9OKGZ1bmN0aW9uSWQsIGZ1bmN0aW9uKQogCiAjZGVm
aW5lIEpTQ19ERUNMQVJFX0NVU1RPTV9HRVRURVIoZnVuY3Rpb25OYW1lKSBKU0NfREVDTEFSRV9K
SVRfT1BFUkFUSU9OKGZ1bmN0aW9uTmFtZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgKEpTQzo6SlNH
bG9iYWxPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSkpCiAj
ZGVmaW5lIEpTQ19ERUNMQVJFX0NVU1RPTV9TRVRURVIoZnVuY3Rpb25OYW1lKSBKU0NfREVDTEFS
RV9KSVRfT1BFUkFUSU9OKGZ1bmN0aW9uTmFtZSwgYm9vbCwgKEpTQzo6SlNHbG9iYWxPYmplY3Qq
LCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtRW5hYmxlLmggYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9y
bUVuYWJsZS5oCmluZGV4IDkxNjZjZmRkOTU1NGI2MGY3NzgzMjI5NGVlYzY5ZTZiODgxZGMzOWUu
LjRhMjI1YmQ3Yjc2MDQyNDhlMzNhNjI3NWM5YzlkYzg4NDYwNmNhZDAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XVEYvd3RmL1BsYXRmb3JtRW5hYmxlLmgKKysrIGIvU291cmNlL1dURi93dGYvUGxhdGZv
cm1FbmFibGUuaApAQCAtODg4LDMgKzg4OCw3IEBACiAjaWYgQ1BVKEFSTTY0KSAmJiBDUFUoQURE
UkVTUzY0KQogI2RlZmluZSBVU0VfSlVNUF9JU0xBTkRTIDEKICNlbmRpZgorCisjaWYgT1MoREFS
V0lOKSAmJiBFTkFCTEUoSklUKSAmJiBBU1NFUlRfRU5BQkxFRAorI2RlZmluZSBFTkFCTEVfSklU
X09QRVJBVElPTl9WQUxJREFUSU9OIDEKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvSGVhZGVycy5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKaW5kZXggYzg3
NDhhMjE2MjdjYzMzNGNlMjJiZTQ2OTNlNmZjODUzZmUzYTYwZC4uOGYzOGZmNGZmMjJkYmEzMjU4
MmYyZTEyMWU3ZDY1OGM0MTYxYzY5YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvSGVhZGVy
cy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCkBAIC0yNTgsNiArMjU4
LDcgQEAgc2V0KFdlYkNvcmVfUFJJVkFURV9GUkFNRVdPUktfSEVBREVSUwogICAgIGJpbmRpbmdz
L2pzL1NjcmlwdFdyYXBwYWJsZUlubGluZXMuaAogICAgIGJpbmRpbmdzL2pzL1NlcmlhbGl6ZWRT
Y3JpcHRWYWx1ZS5oCiAgICAgYmluZGluZ3MvanMvU3RyaW5nQWRhcHRvcnMuaAorICAgIGJpbmRp
bmdzL2pzL1dlYkNvcmVKSVRPcGVyYXRpb25zLmgKICAgICBiaW5kaW5ncy9qcy9XZWJDb3JlVHlw
ZWRBcnJheUNvbnRyb2xsZXIuaAogICAgIGJpbmRpbmdzL2pzL1dpbmRvd1Byb3h5LmgKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9Tb3Vy
Y2VzLnR4dAppbmRleCBjN2VjZmRkMTU1YzUyODBkNTg1NGJmYjUyYmViZWEwMjg0YWRiN2EzLi40
NDc5OGUzZWQzODU3OWQ0ZDVmNzExMmEzMmRiZTQ2YWExOTA5NGY2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dApA
QCAtNTkzLDYgKzU5Myw3IEBAIGJpbmRpbmdzL2pzL1NjcmlwdFN0YXRlLmNwcAogYmluZGluZ3Mv
anMvU2NyaXB0V3JhcHBhYmxlLmNwcAogYmluZGluZ3MvanMvU2VyaWFsaXplZFNjcmlwdFZhbHVl
LmNwcAogYmluZGluZ3MvanMvU3RydWN0dXJlZENsb25lLmNwcAorYmluZGluZ3MvanMvV2ViQ29y
ZUpJVE9wZXJhdGlvbnMuY3BwCiBiaW5kaW5ncy9qcy9XZWJDb3JlSlNDbGllbnREYXRhLmNwcAog
YmluZGluZ3MvanMvV2ViQ29yZVR5cGVkQXJyYXlDb250cm9sbGVyLmNwcAogYmluZGluZ3MvanMv
V2luZG93UHJveHkuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2oKaW5kZXggY2EwMGY5ZTBhMjZiZjIxYThiY2M5ZmY1NTEwMjJmNzQ3OTgx
MjBkZC4uOTU4YmJlNmVlMmE1ZTUzNDI4MmFhNDM1NjU4YjAzNzE2ODA4ZWI2NSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBi
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtNDk2
NSw2ICs0OTY1LDcgQEAKIAkJRTMyM0NGRkExRTVBRjZBRjAwRjBCNEEwIC8qIEpTRE9NQ29udmVy
dFByb21pc2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEUzMjNDRkY5MUU1QUY2QTUwMEYwQjRBMCAvKiBKU0RPTUNvbnZlcnRQcm9taXNlLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJRTM1NjVCN0IxREMy
RDZDOTAwMjE3REJEIC8qIEpTRXZlbnRDdXN0b20uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzNEVFNDlGMURDMkQ1NzUwMEVBQTlEMyAvKiBKU0V2ZW50
Q3VzdG9tLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
IAkJRTM1ODAyQjYxREM4NDM1RDAwQTk3NzNDIC8qIERPTUpJVElETFR5cGVGaWx0ZXIuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzNTgwMkI1MURDODQz
NTgwMEE5NzczQyAvKiBET01KSVRJRExUeXBlRmlsdGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTM1ODJDMjgyNTI3RjY2OTAwRDFCNzkwIC8q
IFdlYkNvcmVKSVRPcGVyYXRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBFMzU4MkMyNjI1MjdGNjY4MDBEMUI3OTAgLyogV2ViQ29yZUpJVE9wZXJh
dGlvbnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owog
CQlFMzVCOTA3RjIzRjYwQTUwMDAwMDExRkYgLyogTG9jYWxpemVkRGV2aWNlTW9kZWwuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzNUI5MDdDMjNGNjA2
NzcwMDAwMTFGRiAvKiBMb2NhbGl6ZWREZXZpY2VNb2RlbC5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUUzNzdGRTREMURBREUxNjUwMENERDAyNSAv
KiBOb2RlQ29uc3RhbnRzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBFM0QwNDk5MzFEQURDMDQ1MDA3MThGM0MgLyogTm9kZUNvbnN0YW50cy5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUUzN0M4NjUwMUVC
NjNFM0YwMDg3QzZDQSAvKiBKU0RPTVByb21pc2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzN0M4NjRGMUVCNjNFMkQwMDg3QzZDQSAvKiBKU0RPTVBy
b21pc2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpA
QCAtMTU4MTEsNiArMTU4MTIsOCBAQAogCQlFMzM0ODI1RTFEQzkzQUEwMDA5Qzk1NDQgLyogRE9N
SklUQWJzdHJhY3RIZWFwUmVwb3NpdG9yeS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5h
bWUgPSBET01KSVRBYnN0cmFjdEhlYXBSZXBvc2l0b3J5Lmg7IHBhdGggPSBEZXJpdmVkU291cmNl
cy9XZWJDb3JlL0RPTUpJVEFic3RyYWN0SGVhcFJlcG9zaXRvcnkuaDsgc291cmNlVHJlZSA9IEJV
SUxUX1BST0RVQ1RTX0RJUjsgfTsKIAkJRTM0RUU0OUYxREMyRDU3NTAwRUFBOUQzIC8qIEpTRXZl
bnRDdXN0b20uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNFdmVudEN1c3Rv
bS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFMzU4MDJCNTFEQzg0MzU4MDBBOTc3
M0MgLyogRE9NSklUSURMVHlwZUZpbHRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBET01KSVRJRExUeXBlRmlsdGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUUzNTgyQzI0MjUyN0Y2NjgwMEQxQjc5MCAvKiBXZWJDb3JlSklUT3BlcmF0aW9ucy5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJDb3JlSklUT3BlcmF0aW9ucy5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUzNTgyQzI2MjUyN0Y2NjgwMEQxQjc5
MCAvKiBXZWJDb3JlSklUT3BlcmF0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBXZWJDb3JlSklUT3BlcmF0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQlFMzVCOTA3QzIzRjYwNjc3MDAwMDExRkYgLyogTG9jYWxpemVkRGV2aWNlTW9kZWwuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTG9jYWxpemVkRGV2aWNlTW9kZWwuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTM1QjkwN0UyM0Y2MDY3NzAwMDAxMUZGIC8qIExv
Y2FsaXplZERldmljZU1vZGVsLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBw
YXRoID0gTG9jYWxpemVkRGV2aWNlTW9kZWwubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCUUzN0M4NjRGMUVCNjNFMkQwMDg3QzZDQSAvKiBKU0RPTVByb21pc2UuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNET01Qcm9taXNlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CkBAIC0yNjQ4OSw2ICsyNjQ5Miw4IEBACiAJCQkJNDE0QjgyMDIxRDZERjBEOTAw
NzdFQkUzIC8qIFN0cnVjdHVyZWRDbG9uZS5jcHAgKi8sCiAJCQkJNDE0QjgyMDMxRDZERjBEOTAw
NzdFQkUzIC8qIFN0cnVjdHVyZWRDbG9uZS5oICovLAogCQkJCTQxOUJFNzUyMUJDN0YzREIwMEUx
Qzg1QiAvKiBXZWJDb3JlQnVpbHRpbk5hbWVzLmggKi8sCisJCQkJRTM1ODJDMjQyNTI3RjY2ODAw
RDFCNzkwIC8qIFdlYkNvcmVKSVRPcGVyYXRpb25zLmNwcCAqLywKKwkJCQlFMzU4MkMyNjI1MjdG
NjY4MDBEMUI3OTAgLyogV2ViQ29yZUpJVE9wZXJhdGlvbnMuaCAqLywKIAkJCQkwRjdERjE0NzFF
MkJGMUE2MDA5NTk1MUIgLyogV2ViQ29yZUpTQ2xpZW50RGF0YS5jcHAgKi8sCiAJCQkJQkM1M0Q5
MTAxMTQzMTBDQzAwMEQ4MTdFIC8qIFdlYkNvcmVKU0NsaWVudERhdGEuaCAqLywKIAkJCQkwRjA5
OUQwNjE3Qjk2OEExMDBGRjg0QjkgLyogV2ViQ29yZVR5cGVkQXJyYXlDb250cm9sbGVyLmNwcCAq
LywKQEAgLTM0NDUxLDYgKzM0NDU2LDcgQEAKIAkJCQlDREM2OUREQTE2MzcxRkQ0MDA3QzM4REYg
LyogV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUNEQzY5REQ2MTYzMjAyNkMwMDdDMzhERiAvKiBXZWJDb3JlRnVsbFNjcmVlbldhcm5pbmdWaWV3
LmggaW4gSGVhZGVycyAqLywKIAkJCQlDRDEyN0RFRTE0RjMwOTg0MDBFODQ3NzkgLyogV2ViQ29y
ZUZ1bGxTY3JlZW5XaW5kb3cuaCBpbiBIZWFkZXJzICovLAorCQkJCUUzNTgyQzI4MjUyN0Y2Njkw
MEQxQjc5MCAvKiBXZWJDb3JlSklUT3BlcmF0aW9ucy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkMz
NDhCRDQwREI3RjgwNDAwNEFCQUJCIC8qIFdlYkNvcmVKU0J1aWx0aW5JbnRlcm5hbHMuaCBpbiBI
ZWFkZXJzICovLAogCQkJCUJDMzQ4QkQ0MERCN0Y4MDQwMDRBQkFCQSAvKiBXZWJDb3JlSlNCdWls
dGlucy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1M0Q5MTExMTQzMTBDQzAwMEQ4MTdFIC8qIFdl
YkNvcmVKU0NsaWVudERhdGEuaCBpbiBIZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNET01CdWlsdGluQ29uc3RydWN0b3IuaCBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0pTRE9NQnVpbHRpbkNvbnN0cnVjdG9yLmgKaW5kZXggZmY3YTA1ZDNj
YjIyZjc1YWVhMGIxM2MxZTQ5NjhlZTFiZDViZmNiZC4uZDFlMWJlZmJkOWM5NTQ0NTYzNDY1Y2Ni
ODkwZGE0MzU5OWI3YzY2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNET01CdWlsdGluQ29uc3RydWN0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0RPTUJ1aWx0aW5Db25zdHJ1Y3Rvci5oCkBAIC0zNyw2ICszNyw4IEBAIHRlbXBsYXRlPHR5
cGVuYW1lIEpTQ2xhc3M+IGNsYXNzIEpTRE9NQnVpbHRpbkNvbnN0cnVjdG9yIGZpbmFsIDogcHVi
bGljIEpTRE9NQnVpCiAgICAgLy8gVXN1YWxseSBkZWZpbmVkIGZvciBlYWNoIHNwZWNpYWxpemF0
aW9uIGNsYXNzLgogICAgIHN0YXRpYyBKU0M6OkpTVmFsdWUgcHJvdG90eXBlRm9yU3RydWN0dXJl
KEpTQzo6Vk0mLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYpOwogCisgICAgc3RhdGljIEpTQzo6
RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTF9BVFRSSUJVVEVTIGNvbnN0cnVjdChKU0M6OkpT
R2xvYmFsT2JqZWN0KiwgSlNDOjpDYWxsRnJhbWUqKTsKKwogcHJpdmF0ZToKICAgICBKU0RPTUJ1
aWx0aW5Db25zdHJ1Y3RvcihKU0M6OlN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9i
amVjdCYgZ2xvYmFsT2JqZWN0KQogICAgICAgICA6IEJhc2Uoc3RydWN0dXJlLCBnbG9iYWxPYmpl
Y3QpCkBAIC00NSw3ICs0Nyw2IEBAIHRlbXBsYXRlPHR5cGVuYW1lIEpTQ2xhc3M+IGNsYXNzIEpT
RE9NQnVpbHRpbkNvbnN0cnVjdG9yIGZpbmFsIDogcHVibGljIEpTRE9NQnVpCiAKICAgICB2b2lk
IGZpbmlzaENyZWF0aW9uKEpTQzo6Vk0mLCBKU0RPTUdsb2JhbE9iamVjdCYpOwogICAgIHN0YXRp
YyBKU0M6OkNhbGxEYXRhIGdldENvbnN0cnVjdERhdGEoSlNDOjpKU0NlbGwqKTsKLSAgICBzdGF0
aWMgSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJQlVURVMgY29uc3RydWN0
KEpTQzo6SlNHbG9iYWxPYmplY3QqLCBKU0M6OkNhbGxGcmFtZSopOwogCiAgICAgSlNDOjpFbmNv
ZGVkSlNWYWx1ZSBjYWxsQ29uc3RydWN0b3IoSlNDOjpKU0dsb2JhbE9iamVjdCYsIEpTQzo6Q2Fs
bEZyYW1lJiwgSlNDOjpKU09iamVjdCYpOwogICAgIEpTQzo6RW5jb2RlZEpTVmFsdWUgY2FsbENv
bnN0cnVjdG9yKEpTQzo6SlNHbG9iYWxPYmplY3QmLCBKU0M6OkNhbGxGcmFtZSYsIEpTQzo6SlNP
YmplY3QqKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQ29u
c3RydWN0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQ29uc3RydWN0b3Iu
aAppbmRleCBhY2Y5MTkwZWE3OWZiYTg1N2E2ZjBhMjRhN2JkMmMxYzA2Mzc2MmE5Li40NjIzNGQy
YTRiN2IzMjE4ODhhMGUyNGZiOWU1YWQyZGZhMzk4MDJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0RPTUNvbnN0cnVjdG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNET01Db25zdHJ1Y3Rvci5oCkBAIC0zNSw2ICszNSw5IEBAIHRlbXBsYXRl
PHR5cGVuYW1lIEpTQ2xhc3M+IGNsYXNzIEpTRE9NQ29uc3RydWN0b3IgZmluYWwgOiBwdWJsaWMg
SlNET01Db25zdHJ1Y3RvCiAgICAgLy8gTXVzdCBiZSBkZWZpbmVkIGZvciBlYWNoIHNwZWNpYWxp
emF0aW9uIGNsYXNzLgogICAgIHN0YXRpYyBKU0M6OkpTVmFsdWUgcHJvdG90eXBlRm9yU3RydWN0
dXJlKEpTQzo6Vk0mLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYpOwogCisgICAgLy8gTXVzdCBi
ZSBkZWZpbmVkIGZvciBlYWNoIHNwZWNpYWxpemF0aW9uIGNsYXNzLgorICAgIHN0YXRpYyBKU0M6
OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTExfQVRUUklCVVRFUyBjb25zdHJ1Y3QoSlNDOjpK
U0dsb2JhbE9iamVjdCosIEpTQzo6Q2FsbEZyYW1lKik7CisKIHByaXZhdGU6CiAgICAgSlNET01D
b25zdHJ1Y3RvcihKU0M6OlN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYg
Z2xvYmFsT2JqZWN0KQogICAgICAgICA6IEJhc2Uoc3RydWN0dXJlLCBnbG9iYWxPYmplY3QpCkBA
IC00Niw4ICs0OSw2IEBAIHRlbXBsYXRlPHR5cGVuYW1lIEpTQ2xhc3M+IGNsYXNzIEpTRE9NQ29u
c3RydWN0b3IgZmluYWwgOiBwdWJsaWMgSlNET01Db25zdHJ1Y3RvCiAKICAgICAvLyBVc3VhbGx5
IGRlZmluZWQgZm9yIGVhY2ggc3BlY2lhbGl6YXRpb24gY2xhc3MuCiAgICAgdm9pZCBpbml0aWFs
aXplUHJvcGVydGllcyhKU0M6OlZNJiwgSlNET01HbG9iYWxPYmplY3QmKSB7IH0KLSAgICAvLyBN
dXN0IGJlIGRlZmluZWQgZm9yIGVhY2ggc3BlY2lhbGl6YXRpb24gY2xhc3MuCi0gICAgc3RhdGlj
IEpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTF9BVFRSSUJVVEVTIGNvbnN0cnVjdChK
U0M6OkpTR2xvYmFsT2JqZWN0KiwgSlNDOjpDYWxsRnJhbWUqKTsKIH07CiAKIHRlbXBsYXRlPHR5
cGVuYW1lIEpTQ2xhc3M+IGlubGluZSBKU0RPTUNvbnN0cnVjdG9yPEpTQ2xhc3M+KiBKU0RPTUNv
bnN0cnVjdG9yPEpTQ2xhc3M+OjpjcmVhdGUoSlNDOjpWTSYgdm0sIEpTQzo6U3RydWN0dXJlKiBz
dHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUxlZ2FjeUZhY3RvcnlGdW5jdGlvbi5oIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01MZWdhY3lGYWN0b3J5RnVuY3Rpb24uaApp
bmRleCA3ODMxYmYyODllZjY4NDU5ZTczZjJmMzk1MDM5MWU4YjM4YzFiOTI3Li5hMjFmMWZkOTg3
NTUwZDkzMTI4MzgxYmIyZjE3NDAzOGIxODgxMDg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU0RPTUxlZ2FjeUZhY3RvcnlGdW5jdGlvbi5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NTGVnYWN5RmFjdG9yeUZ1bmN0aW9uLmgKQEAgLTM2LDYg
KzM2LDkgQEAgdGVtcGxhdGU8dHlwZW5hbWUgSlNDbGFzcz4gY2xhc3MgSlNET01MZWdhY3lGYWN0
b3J5RnVuY3Rpb24gZmluYWwgOiBwdWJsaWMgSlNET00KICAgICAvLyBNdXN0IGJlIGRlZmluZWQg
Zm9yIGVhY2ggc3BlY2lhbGl6YXRpb24gY2xhc3MuCiAgICAgc3RhdGljIEpTQzo6SlNWYWx1ZSBw
cm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYsIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0Jik7
CiAKKyAgICAvLyBNdXN0IGJlIGRlZmluZWQgZm9yIGVhY2ggc3BlY2lhbGl6YXRpb24gY2xhc3Mu
CisgICAgc3RhdGljIEpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTF9BVFRSSUJVVEVT
IGNvbnN0cnVjdChKU0M6OkpTR2xvYmFsT2JqZWN0KiwgSlNDOjpDYWxsRnJhbWUqKTsKKwogcHJp
dmF0ZToKICAgICBKU0RPTUxlZ2FjeUZhY3RvcnlGdW5jdGlvbihKU0M6OlN0cnVjdHVyZSogc3Ry
dWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogICAgICAgICA6IEJhc2Uo
c3RydWN0dXJlLCBnbG9iYWxPYmplY3QpCkBAIC00Nyw4ICs1MCw2IEBAIHRlbXBsYXRlPHR5cGVu
YW1lIEpTQ2xhc3M+IGNsYXNzIEpTRE9NTGVnYWN5RmFjdG9yeUZ1bmN0aW9uIGZpbmFsIDogcHVi
bGljIEpTRE9NCiAKICAgICAvLyBVc3VhbGx5IGRlZmluZWQgZm9yIGVhY2ggc3BlY2lhbGl6YXRp
b24gY2xhc3MuCiAgICAgdm9pZCBpbml0aWFsaXplUHJvcGVydGllcyhKU0M6OlZNJiwgSlNET01H
bG9iYWxPYmplY3QmKSB7IH0KLSAgICAvLyBNdXN0IGJlIGRlZmluZWQgZm9yIGVhY2ggc3BlY2lh
bGl6YXRpb24gY2xhc3MuCi0gICAgc3RhdGljIEpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1Rf
Q0FMTF9BVFRSSUJVVEVTIGNvbnN0cnVjdChKU0M6OkpTR2xvYmFsT2JqZWN0KiwgSlNDOjpDYWxs
RnJhbWUqKTsKIH07CiAKIHRlbXBsYXRlPHR5cGVuYW1lIEpTQ2xhc3M+IGlubGluZSBKU0RPTUxl
Z2FjeUZhY3RvcnlGdW5jdGlvbjxKU0NsYXNzPiogSlNET01MZWdhY3lGYWN0b3J5RnVuY3Rpb248
SlNDbGFzcz46OmNyZWF0ZShKU0M6OlZNJiB2bSwgSlNDOjpTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwg
SlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL1NjcmlwdENvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvU2NyaXB0Q29udHJvbGxlci5jcHAKaW5kZXggNzE2NTVlYmIzOWE5ODhmZTBhZmU1
N2ZlMGQ1ZTc0MmE5YmIzNmUwYS4uYzc0ZWIxMGVkYTk4Mzc4ZWViMTJjOTUzMjBiNDNjYWJiYTdk
NzZmMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0Q29udHJv
bGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0Q29udHJvbGxl
ci5jcHAKQEAgLTU2LDYgKzU2LDcgQEAKICNpbmNsdWRlICJTY3JpcHRhYmxlRG9jdW1lbnRQYXJz
ZXIuaCIKICNpbmNsdWRlICJTZXR0aW5ncy5oIgogI2luY2x1ZGUgIlVzZXJHZXN0dXJlSW5kaWNh
dG9yLmgiCisjaW5jbHVkZSAiV2ViQ29yZUpJVE9wZXJhdGlvbnMuaCIKICNpbmNsdWRlICJXZWJD
b3JlSlNDbGllbnREYXRhLmgiCiAjaW5jbHVkZSAibnBydW50aW1lX2ltcGwuaCIKICNpbmNsdWRl
ICJydW50aW1lX3Jvb3QuaCIKQEAgLTg3LDYgKzg4LDcgQEAgdm9pZCBTY3JpcHRDb250cm9sbGVy
Ojppbml0aWFsaXplTWFpblRocmVhZCgpCiAjaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAg
SlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOworICAg
IFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogI2VuZGlmCiB9CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVKSVRPcGVyYXRpb25zLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVKSVRPcGVyYXRpb25zLmNwcApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5lNjU1OTg1MGI5YzlhNGM1NjkzMzE5OWVhNzM2ZDAxNDE0NTI5ODA2Ci0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpJVE9wZXJhdGlv
bnMuY3BwCkBAIC0wLDAgKzEsNDcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
CisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycK
KyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisg
KiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgi
CisjaW5jbHVkZSAiV2ViQ29yZUpJVE9wZXJhdGlvbnMuaCIKKworI2luY2x1ZGUgPEphdmFTY3Jp
cHRDb3JlL0pJVE9wZXJhdGlvbkxpc3QuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCisjaWYg
RU5BQkxFKEpJVF9PUEVSQVRJT05fVkFMSURBVElPTikKK2V4dGVybiBjb25zdCB1aW50cHRyX3Qg
c3RhcnRPZkhvc3RGdW5jdGlvbnNJbldlYkNvcmUgX19hc20oInNlY3Rpb24kc3RhcnQkX19EQVRB
X0NPTlNUJF9fanNjX2hvc3QiKTsKK2V4dGVybiBjb25zdCB1aW50cHRyX3QgZW5kT2ZIb3N0RnVu
Y3Rpb25zSW5XZWJDb3JlIF9fYXNtKCJzZWN0aW9uJGVuZCRfX0RBVEFfQ09OU1QkX19qc2NfaG9z
dCIpOworZXh0ZXJuIGNvbnN0IHVpbnRwdHJfdCBzdGFydE9mSklUT3BlcmF0aW9uc0luV2ViQ29y
ZSBfX2FzbSgic2VjdGlvbiRzdGFydCRfX0RBVEFfQ09OU1QkX19qc2Nfb3BzIik7CitleHRlcm4g
Y29uc3QgdWludHB0cl90IGVuZE9mSklUT3BlcmF0aW9uc0luV2ViQ29yZSBfX2FzbSgic2VjdGlv
biRlbmQkX19EQVRBX0NPTlNUJF9fanNjX29wcyIpOworI2VuZGlmCisKK3ZvaWQgcG9wdWxhdGVK
SVRPcGVyYXRpb25zKCkKK3sKKyNpZiBFTkFCTEUoSklUX09QRVJBVElPTl9WQUxJREFUSU9OKQor
ICAgIEpTQzo6SklUT3BlcmF0aW9uTGlzdDo6cG9wdWxhdGVQb2ludGVyc0luRW1iZWRkZXIxKCZz
dGFydE9mSG9zdEZ1bmN0aW9uc0luV2ViQ29yZSwgJmVuZE9mSG9zdEZ1bmN0aW9uc0luV2ViQ29y
ZSwgJnN0YXJ0T2ZKSVRPcGVyYXRpb25zSW5XZWJDb3JlLCAmZW5kT2ZKSVRPcGVyYXRpb25zSW5X
ZWJDb3JlKTsKKyNlbmRpZgorfQorCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9XZWJDb3JlSklUT3BlcmF0aW9ucy5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xOTBhODQyNDgzOTZjMWY2MzAy
MTdjZDU4NDUxYzViMDBlZDdmYzNjCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaApAQCAtMCwwICsxLDMyIEBACisvKgor
ICogQ29weXJpZ2h0IChDKSAyMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5E
IElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExF
IElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CisgKi8KKworI3ByYWdtYSBvbmNlCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworV0VCQ09SRV9F
WFBPUlQgdm9pZCBwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKKworfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvV2ViU2NyaXB0T2JqZWN0Lm1tIGIvU291cmNlL1dlYkNv
cmUvYnJpZGdlL29iamMvV2ViU2NyaXB0T2JqZWN0Lm1tCmluZGV4IGIyZTVjYTU4ZDNlZGIxZWE5
MzMxZGQ0Njg5NTIxMTc2OWQ2ZGE3ZWMuLjNhMTA2MmExMzE2YWE0OWU3NWJhOTJkM2IzZWI2Yzc3
MTlhY2JhMTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL1dlYlNjcmlw
dE9iamVjdC5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9XZWJTY3JpcHRPYmpl
Y3QubW0KQEAgLTM1LDYgKzM1LDcgQEAKICNpbXBvcnQgIkpTSFRNTEVsZW1lbnQuaCIKICNpbXBv
cnQgIkpTUGx1Z2luRWxlbWVudEZ1bmN0aW9ucy5oIgogI2ltcG9ydCAiT2JqQ1J1bnRpbWVPYmpl
Y3QuaCIKKyNpbXBvcnQgIldlYkNvcmVKSVRPcGVyYXRpb25zLmgiCiAjaW1wb3J0ICJXZWJDb3Jl
T2JqQ0V4dHJhcy5oIgogI2ltcG9ydCAib2JqY19pbnN0YW5jZS5oIgogI2ltcG9ydCAicnVudGlt
ZV9vYmplY3QuaCIKQEAgLTE2Niw2ICsxNjcsNyBAQCArICh2b2lkKWluaXRpYWxpemUKICNpZiAh
VVNFKFdFQl9USFJFQUQpCiAgICAgSlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFs
aXplTWFpblRocmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwog
I2VuZGlmCiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbWppdC9KU0RvY3VtZW50
RE9NSklULmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbWppdC9KU0RvY3VtZW50RE9NSklULmNwcApp
bmRleCBmOGU4NTRmYTE2Njc1ZGQ1ODM5YjMyNWNmZTI4YWNlMmYyYTUzNjMzLi5mZjE2YzVhYzA3
NDQ1YmMyOWI3MzE5OGEyNmEwYjVhNzU3OGJmYzgwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9kb21qaXQvSlNEb2N1bWVudERPTUpJVC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9taml0
L0pTRG9jdW1lbnRET01KSVQuY3BwCkBAIC0xNDAsNiArMTQwLDggQEAgUmVmPEpTQzo6RE9NSklU
OjpDYWxsRE9NR2V0dGVyU25pcHBldD4gY29tcGlsZURvY3VtZW50Qm9keUF0dHJpYnV0ZSgpCiAg
ICAgcmV0dXJuIHNuaXBwZXQ7CiB9CiAKK25hbWVzcGFjZSBET01KSVQgeworCiBleHRlcm4gIkMi
IHsKIAogSlNDX0RFRklORV9KSVRfT1BFUkFUSU9OKG9wZXJhdGlvblRvSlNFbGVtZW50LCBKU0M6
OkVuY29kZWRKU1ZhbHVlLCAoSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCB2b2lk
KiByZXN1bHQpKQpAQCAtMTk0LDYgKzE5Niw2IEBAIEpTQ19ERUZJTkVfSklUX09QRVJBVElPTihv
cGVyYXRpb25Ub0pTQ29udGFpbmVyTm9kZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgKEpTQzo6CiAK
IH0KIAotfQorfSB9CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vY29jb2EvU2hhcmVkQnVmZmVyQ29jb2EubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9j
b2NvYS9TaGFyZWRCdWZmZXJDb2NvYS5tbQppbmRleCA4ZjhlNTMzZTA0MDM2NmZjMTljNTQ4Y2Fm
OGQxMTYyZjUwOWVhZDNkLi4yODEwMDUzZGU3Yzk3MDI5ODNiZDA0MzA5Y2Q5MGVjNGU5MTQ5ZTFi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TaGFyZWRCdWZmZXJD
b2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TaGFyZWRCdWZmZXJD
b2NvYS5tbQpAQCAtMjYsNiArMjYsNyBAQAogI2ltcG9ydCAiY29uZmlnLmgiCiAjaW1wb3J0ICJT
aGFyZWRCdWZmZXIuaCIKIAorI2ltcG9ydCAiV2ViQ29yZUpJVE9wZXJhdGlvbnMuaCIKICNpbXBv
cnQgIldlYkNvcmVPYmpDRXh0cmFzLmgiCiAjaW1wb3J0IDxKYXZhU2NyaXB0Q29yZS9Jbml0aWFs
aXplVGhyZWFkaW5nLmg+CiAjaW1wb3J0IDxzdHJpbmcuaD4KQEAgLTQ2LDYgKzQ3LDcgQEAgKyAo
dm9pZClpbml0aWFsaXplCiAjaWYgIVVTRShXRUJfVEhSRUFEKQogICAgIEpTQzo6aW5pdGlhbGl6
ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1
bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZiAvLyAhVVNFKFdFQl9USFJFQUQpCiB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy93YWsvV2ViQ29yZVRocmVhZC5t
bSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy93YWsvV2ViQ29yZVRocmVhZC5tbQppbmRl
eCA1YWQ3ZmU1MTk4ZDI0YzMwMzY2YTIzMGEwOTczMjRjNGEyNWM2OTRkLi43YTY2YjUxYjEyZTEw
NmVjMzU0ZTFkNWQ0M2RiZDZjMWNkNTYwNmI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9pb3Mvd2FrL1dlYkNvcmVUaHJlYWQubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vaW9zL3dhay9XZWJDb3JlVGhyZWFkLm1tCkBAIC0zNSw2ICszNSw3IEBACiAjaW1wb3J0
ICJUaHJlYWRHbG9iYWxEYXRhLmgiCiAjaW1wb3J0ICJXQUtXaW5kb3cuaCIKICNpbXBvcnQgIldL
VXRpbGl0aWVzLmgiCisjaW1wb3J0ICJXZWJDb3JlSklUT3BlcmF0aW9ucy5oIgogI2ltcG9ydCAi
V2ViQ29yZVRocmVhZEludGVybmFsLmgiCiAjaW1wb3J0ICJXZWJDb3JlVGhyZWFkTWVzc2FnZS5o
IgogI2ltcG9ydCAiV2ViQ29yZVRocmVhZFJ1bi5oIgpAQCAtNTk1LDYgKzU5Niw3IEBAIHN0YXRp
YyB2b2lkKiBSdW5XZWJUaHJlYWQodm9pZCopCiAgICAgLy8gPHJkYXI6Ly9wcm9ibGVtLzg1MDI0
ODc+LgogICAgIFdURjo6aW5pdGlhbGl6ZVdlYlRocmVhZCgpOwogICAgIEpTQzo6aW5pdGlhbGl6
ZSgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogICAgIAogICAgIC8v
IE1ha2Ugc3VyZSB0aGF0IHRoZSBXZWJUaHJlYWQgYW5kIHRoZSBtYWluIHRocmVhZCBzaGFyZSB0
aGUgc2FtZSBUaHJlYWRHbG9iYWxEYXRhIG9iamVjdHMuCiAgICAgV2ViQ29yZTo6dGhyZWFkR2xv
YmFsRGF0YSgpLnNldFdlYkNvcmVUaHJlYWREYXRhKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1NoYXJlZC9BUEkvYy9XS1N0cmluZy5jcHAgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9BUEkv
Yy9XS1N0cmluZy5jcHAKaW5kZXggMjY4NTViNDhiYTVhYWJmZGIyNTI4YmMwMzlhNTIwYjIwZTFl
ZGMyZi4uMTBjNjQ4YWJmZDcwOTk0YWM4NjY1ZmExNTA5YjE3NWZlYjE3M2VmNyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9TaGFyZWQvQVBJL2MvV0tTdHJpbmcuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQvU2hhcmVkL0FQSS9jL1dLU3RyaW5nLmNwcApAQCAtMjgsOCArMjgsMTAgQEAKICNpbmNs
dWRlICJXS1N0cmluZ1ByaXZhdGUuaCIKIAogI2luY2x1ZGUgIldLQVBJQ2FzdC5oIgorI2luY2x1
ZGUgIldlYktpdEpJVE9wZXJhdGlvbnMuaCIKICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9Jbml0
aWFsaXplVGhyZWFkaW5nLmg+CiAjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvT3BhcXVlSlNTdHJp
bmcuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25zLmg+CiAjaW5jbHVk
ZSA8d3RmL3VuaWNvZGUvVVRGOENvbnZlcnNpb24uaD4KIAogV0tUeXBlSUQgV0tTdHJpbmdHZXRU
eXBlSUQoKQpAQCAtMTM0LDUgKzEzNiw3IEBAIFdLU3RyaW5nUmVmIFdLU3RyaW5nQ3JlYXRlV2l0
aEpTU3RyaW5nKEpTU3RyaW5nUmVmIGpzU3RyaW5nUmVmKQogSlNTdHJpbmdSZWYgV0tTdHJpbmdD
b3B5SlNTdHJpbmcoV0tTdHJpbmdSZWYgc3RyaW5nUmVmKQogewogICAgIEpTQzo6aW5pdGlhbGl6
ZSgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOworICAgIFdlYktpdDo6
cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAgICAgcmV0dXJuIE9wYXF1ZUpTU3RyaW5nOjp0cnlD
cmVhdGUoV2ViS2l0Ojp0b0ltcGwoc3RyaW5nUmVmKS0+c3RyaW5nKCkpLmxlYWtSZWYoKTsKIH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL1dlYktpdDJJbml0aWFsaXpl
Q29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9XZWJLaXQySW5pdGlhbGl6ZUNv
Y29hLm1tCmluZGV4IDE0ZDI3OWY1N2ZkMzRjMDA0MGNmZjhkNjY3ZjU2MTZjNWRjMGI1NmYuLjhl
Zjc0ZGVmNGFiYmVlOWEwOGFhYjRlNTM5MjE2OTdiNGRjZjIxMzYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvU2hhcmVkL0NvY29hL1dlYktpdDJJbml0aWFsaXplQ29jb2EubW0KKysrIGIvU291
cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvV2ViS2l0MkluaXRpYWxpemVDb2NvYS5tbQpAQCAtMjcs
NyArMjcsOSBAQAogI2ltcG9ydCAiV2ViS2l0MkluaXRpYWxpemUuaCIKIAogI2ltcG9ydCAiVmVy
c2lvbkNoZWNrcy5oIgorI2ltcG9ydCAiV2ViS2l0SklUT3BlcmF0aW9ucy5oIgogI2ltcG9ydCA8
SmF2YVNjcmlwdENvcmUvSW5pdGlhbGl6ZVRocmVhZGluZy5oPgorI2ltcG9ydCA8V2ViQ29yZS9X
ZWJDb3JlSklUT3BlcmF0aW9ucy5oPgogI2ltcG9ydCA8bXV0ZXg+CiAjaW1wb3J0IDx3dGYvTWFp
blRocmVhZC5oPgogI2ltcG9ydCA8d3RmL1JlZkNvdW50ZWQuaD4KQEAgLTU0LDYgKzU2LDkgQEAg
c3RhdGljIHZvaWQgcnVuSW5pdGlhbGl6YXRpb25Db2RlKHZvaWQqID0gbnVsbHB0cikKICAgICBX
VEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CiAKICAgICBXVEY6OlJlZkNvdW50ZWRCYXNlOjpl
bmFibGVUaHJlYWRpbmdDaGVja3NHbG9iYWxseSgpOworCisgICAgV2ViQ29yZTo6cG9wdWxhdGVK
SVRPcGVyYXRpb25zKCk7CisgICAgV2ViS2l0Ojpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKIH0K
IAogdm9pZCBJbml0aWFsaXplV2ViS2l0MigpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1No
YXJlZC9XZWJLaXQySW5pdGlhbGl6ZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJLaXQy
SW5pdGlhbGl6ZS5jcHAKaW5kZXggNGE1M2YyY2VkYTNhYjk4NWE3MTQ0MTAxYWVmOGZkNWVmMGVk
NzAzYi4uNmJmYjhmNjlkOTQxNjI4MjcxMjZhMTY0ZGE2ZDI4YWUyOTM4MjM4ZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViS2l0MkluaXRpYWxpemUuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQvU2hhcmVkL1dlYktpdDJJbml0aWFsaXplLmNwcApAQCAtMjcsOCArMjcsMTAgQEAK
ICNpbmNsdWRlICJXZWJLaXQySW5pdGlhbGl6ZS5oIgogCiAjaW5jbHVkZSAiTG9nSW5pdGlhbGl6
YXRpb24uaCIKKyNpbmNsdWRlICJXZWJLaXRKSVRPcGVyYXRpb25zLmgiCiAjaW5jbHVkZSA8SmF2
YVNjcmlwdENvcmUvSW5pdGlhbGl6ZVRocmVhZGluZy5oPgogI2luY2x1ZGUgPFdlYkNvcmUvTG9n
SW5pdGlhbGl6YXRpb24uaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25z
Lmg+CiAjaW5jbHVkZSA8d3RmL01haW5UaHJlYWQuaD4KICNpbmNsdWRlIDx3dGYvUmVmQ291bnRl
ZC5oPgogI2luY2x1ZGUgPHd0Zi9SdW5Mb29wLmg+CkBAIC00OSw2ICs1MSw5IEBAIHZvaWQgSW5p
dGlhbGl6ZVdlYktpdDIoKQogICAgIFdlYkNvcmU6OmluaXRpYWxpemVMb2dDaGFubmVsc0lmTmVj
ZXNzYXJ5KCk7CiAgICAgV2ViS2l0Ojppbml0aWFsaXplTG9nQ2hhbm5lbHNJZk5lY2Vzc2FyeSgp
OwogI2VuZGlmIC8vICFMT0dfRElTQUJMRUQgfHwgIVJFTEVBU0VfTE9HX0RJU0FCTEVECisKKyAg
ICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKKyAgICBXZWJLaXQ6OnBvcHVsYXRl
SklUT3BlcmF0aW9ucygpOwogfQogCiAjZW5kaWYgLy8gIVBMQVRGT1JNKENPQ09BKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViS2l0SklUT3BlcmF0aW9ucy5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L1NoYXJlZC9XZWJLaXRKSVRPcGVyYXRpb25zLmNwcApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wZmVi
MDlkMjY5MmRhZjk0MTg2YjMyOGQzOTE4MjMwZDM2ZjcxM2QzCi0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL1dlYktpdC9TaGFyZWQvV2ViS2l0SklUT3BlcmF0aW9ucy5jcHAKQEAgLTAsMCArMSw0
NyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBM
RSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisg
KiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAq
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJXZWJLaXRK
SVRPcGVyYXRpb25zLmgiCisKKyNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9KSVRPcGVyYXRpb25M
aXN0Lmg+CisKK25hbWVzcGFjZSBXZWJLaXQgeworCisjaWYgRU5BQkxFKEpJVF9PUEVSQVRJT05f
VkFMSURBVElPTikKK2V4dGVybiBjb25zdCB1aW50cHRyX3Qgc3RhcnRPZkhvc3RGdW5jdGlvbnNJ
bldlYktpdCBfX2FzbSgic2VjdGlvbiRzdGFydCRfX0RBVEFfQ09OU1QkX19qc2NfaG9zdCIpOwor
ZXh0ZXJuIGNvbnN0IHVpbnRwdHJfdCBlbmRPZkhvc3RGdW5jdGlvbnNJbldlYktpdCBfX2FzbSgi
c2VjdGlvbiRlbmQkX19EQVRBX0NPTlNUJF9fanNjX2hvc3QiKTsKK2V4dGVybiBjb25zdCB1aW50
cHRyX3Qgc3RhcnRPZkpJVE9wZXJhdGlvbnNJbldlYktpdCBfX2FzbSgic2VjdGlvbiRzdGFydCRf
X0RBVEFfQ09OU1QkX19qc2Nfb3BzIik7CitleHRlcm4gY29uc3QgdWludHB0cl90IGVuZE9mSklU
T3BlcmF0aW9uc0luV2ViS2l0IF9fYXNtKCJzZWN0aW9uJGVuZCRfX0RBVEFfQ09OU1QkX19qc2Nf
b3BzIik7CisjZW5kaWYKKwordm9pZCBwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKQoreworI2lmIEVO
QUJMRShKSVRfT1BFUkFUSU9OX1ZBTElEQVRJT04pCisgICAgSlNDOjpKSVRPcGVyYXRpb25MaXN0
Ojpwb3B1bGF0ZVBvaW50ZXJzSW5FbWJlZGRlcjIoJnN0YXJ0T2ZIb3N0RnVuY3Rpb25zSW5XZWJL
aXQsICZlbmRPZkhvc3RGdW5jdGlvbnNJbldlYktpdCwgJnN0YXJ0T2ZKSVRPcGVyYXRpb25zSW5X
ZWJLaXQsICZlbmRPZkpJVE9wZXJhdGlvbnNJbldlYktpdCk7CisjZW5kaWYKK30KKworfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViS2l0SklUT3BlcmF0aW9ucy5oIGIvU291
cmNlL1dlYktpdC9TaGFyZWQvV2ViS2l0SklUT3BlcmF0aW9ucy5oCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgyN2Fj
MmNmYWM4Mzg0OWIyNGZiMDNiNDExNTAyOWU0ZmZjMDQzYjMKLS0tIC9kZXYvbnVsbAorKysgYi9T
b3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJLaXRKSVRPcGVyYXRpb25zLmgKQEAgLTAsMCArMSwzMiBA
QAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCituYW1lc3BhY2UgV2ViS2l0IHsKKwordm9p
ZCBwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9Tb3VyY2VzLnR4dCBiL1NvdXJjZS9XZWJLaXQvU291cmNlcy50eHQKaW5kZXggZWM0MTE2NjVh
MWZlMzNiZTViMTY0ODE0NGZkZjkzYmRkMWQ0YWEyZS4uYmMyYzQ5NDNhZWJlNWNjYWY4Yjk0N2Vk
NzFhZTAzMGY0ZjMyZDk4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9Tb3VyY2VzLnR4dAor
KysgYi9Tb3VyY2UvV2ViS2l0L1NvdXJjZXMudHh0CkBAIC0xOTcsNiArMTk3LDcgQEAgU2hhcmVk
L1dlYkhpdFRlc3RSZXN1bHREYXRhLmNwcAogU2hhcmVkL1dlYkltYWdlLmNwcAogU2hhcmVkL1dl
YktleWJvYXJkRXZlbnQuY3BwIEBuby11bmlmeQogU2hhcmVkL1dlYktpdDJJbml0aWFsaXplLmNw
cCBAbm8tdW5pZnkKK1NoYXJlZC9XZWJLaXRKSVRPcGVyYXRpb25zLmNwcCBAbm8tdW5pZnkKIFNo
YXJlZC9XZWJNZW1vcnlTYW1wbGVyLmNwcAogU2hhcmVkL1dlYk1vdXNlRXZlbnQuY3BwIEBuby11
bmlmeQogU2hhcmVkL1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuY3BwCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dl
YktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCA1M2I2NGY3NWVkZDQz
Y2U5NWY3NjQxMzQ3ZDhhNTc4YTA2YjY0M2FlLi44MzA5OTAxYjE5MzUxY2Y5NDU3NmFjNjQ4OTc4
YzI4NGY4ZTRhNzg1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2oKQEAgLTE4MDEsNiArMTgwMSw3IEBACiAJCUUxRDI2QTUzMTc1OTY0RDkwMDk1
QkZEMSAvKiBXZWJDb250ZW50UHJvY2Vzcy54aWIgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxRDI2QTRDMTc1OTYzNEUwMDk1QkZEMSAvKiBXZWJDb250
ZW50UHJvY2Vzcy54aWIgKi87IH07CiAJCUUxRTU1MkM1MTZBRTA2NUYwMDRFRDY1MyAvKiBTYW5k
Ym94SW5pdGlhbGl6YXRpb25QYXJhbWV0ZXJzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBFMUU1NTJDMzE2QUUwNjVFMDA0RUQ2NTMgLyogU2FuZGJveElu
aXRpYWxpemF0aW9uUGFyYW1ldGVycy5oICovOyB9OwogCQlFMUVFNTNFMzExRjhDRkMwMDBDQ0JF
RTQgLyogSW5qZWN0ZWRCdW5kbGVQYWdlRWRpdG9yQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMUVFNTNEQzExRjhDRjlGMDBDQ0JFRTQgLyog
SW5qZWN0ZWRCdW5kbGVQYWdlRWRpdG9yQ2xpZW50LmggKi87IH07CisJCUUzNTgyQzJCMjUyN0Y2
QUEwMEQxQjc5MCAvKiBXZWJLaXRKSVRPcGVyYXRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMzU4MkMyQTI1MjdGNjlDMDBEMUI3OTAgLyogV2Vi
S2l0SklUT3BlcmF0aW9ucy5oICovOyB9OwogCQlFMzg2NkFFNTIzOTc0MDA0MDBGODhGRTkgLyog
V2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92aWRlclByb3h5Lm1tIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTM4NjZBRTQyMzk3NDAwNDAwRjg4RkU5
IC8qIFdlYkRldmljZU9yaWVudGF0aW9uVXBkYXRlUHJvdmlkZXJQcm94eS5tbSAqLzsgfTsKIAkJ
RTM4NjZBRTcyMzk3NDA1MzAwRjg4RkU5IC8qIFdlYkRldmljZU9yaWVudGF0aW9uVXBkYXRlUHJv
dmlkZXJQcm94eS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gRTM4NjZBRTYyMzk3NDA1MzAwRjg4RkU5IC8qIFdlYkRldmljZU9yaWVudGF0aW9uVXBkYXRl
UHJvdmlkZXJQcm94eS5oICovOyB9OwogCQlFMzg2NkIwODIzOTlBMkQxMDBGODhGRTkgLyogV2Vi
RGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92aWRlclByb3h5TWVzc2FnZXMuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzODY2QjA1MjM5OTk3OUMwMEY4
OEZFOSAvKiBXZWJEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3ZpZGVyUHJveHlNZXNzYWdlcy5o
ICovOyB9OwpAQCAtMTgxMCw2ICsxODExLDcgQEAKIAkJRTM4QTFGQzAyM0E1NTFCRjAwRDIzNzRG
IC8qIFVzZXJJbnRlcmZhY2VJZGlvbS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEUzOEExRkJGMjNBNTUxQkYwMEQyMzc0RiAvKiBVc2VySW50ZXJmYWNl
SWRpb20ubW0gKi87IH07CiAJCUUzOTYyOEREMjM5NjBDQzYwMDY1OEVDRCAvKiBXZWJEZXZpY2VP
cmllbnRhdGlvblVwZGF0ZVByb3ZpZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBFMzk2MjhEQjIzOTYwQ0M1MDA2NThFQ0QgLyogV2ViRGV2aWNlT3Jp
ZW50YXRpb25VcGRhdGVQcm92aWRlci5oICovOyB9OwogCQlFMzk2MjhERTIzOTYwQ0M2MDA2NThF
Q0QgLyogV2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92aWRlci5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMzk2MjhEQzIzOTYwQ0M2MDA2NThF
Q0QgLyogV2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92aWRlci5jcHAgKi87IH07CisJCUUz
Qzg0NjdDMjUyN0Y5REUwMDU0RkQ5QyAvKiBXZWJLaXRKSVRPcGVyYXRpb25zLmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzNTgyQzI5MjUyN0Y2OUIw
MEQxQjc5MCAvKiBXZWJLaXRKSVRPcGVyYXRpb25zLmNwcCAqLzsgfTsKIAkJRTNDQUFBNDQyNDEz
Mjc5OTAwQ0VEMkUyIC8qIEFjY2Vzc2liaWxpdHlTdXBwb3J0U1BJLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFM0NBQUE0MzI0MTMyNzhBMDBDRUQyRTIg
LyogQWNjZXNzaWJpbGl0eVN1cHBvcnRTUEkuaCAqLzsgfTsKIAkJRTQxM0Y1OUQxQUMxQURDNDAw
MzQ1MzYwIC8qIE5ldHdvcmtDYWNoZUVudHJ5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBFNDEzRjU5QjFBQzFBREI2MDAzNDUzNjAgLyogTmV0d29ya0Nh
Y2hlRW50cnkuaCAqLzsgfTsKIAkJRTQyRTA2MTAxQUE3NTIzQjAwQjExNjk5IC8qIE5ldHdvcmtD
YWNoZUlPQ2hhbm5lbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRTQyRTA2MEIxQUE3NDQwRDAwQjExNjk5IC8qIE5ldHdvcmtDYWNoZUlPQ2hhbm5lbC5o
ICovOyB9OwpAQCAtNTI4Miw2ICs1Mjg0LDggQEAKIAkJRTFFRTUzREMxMUY4Q0Y5RjAwQ0NCRUU0
IC8qIEluamVjdGVkQnVuZGxlUGFnZUVkaXRvckNsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBJbmplY3RlZEJ1bmRsZVBhZ2VFZGl0b3JDbGllbnQuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTFFRTUzRTYxMUY4Q0ZGQjAwQ0NCRUU0IC8qIEluamVjdGVk
QnVuZGxlUGFnZUVkaXRvckNsaWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBJbmplY3RlZEJ1bmRsZVBhZ2VFZGl0b3JDbGllbnQuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQlFMzQzOUI2MzIzNDU0NjNBMDAxMURFMEIgLyogTmV0d29ya1Byb2Nl
c3NDb25uZWN0aW9uSW5mby5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rp
b25JbmZvLmg7IHBhdGggPSBOZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbkluZm8uaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTM1ODJDMjkyNTI3RjY5QjAwRDFCNzkwIC8q
IFdlYktpdEpJVE9wZXJhdGlvbnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gV2ViS2l0SklUT3BlcmF0aW9ucy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUUzNTgyQzJBMjUyN0Y2OUMwMEQxQjc5MCAvKiBXZWJLaXRKSVRPcGVyYXRpb25zLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYktpdEpJVE9wZXJhdGlvbnMuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTM4NjZBRTQyMzk3NDAwNDAwRjg4RkU5IC8qIFdl
YkRldmljZU9yaWVudGF0aW9uVXBkYXRlUHJvdmlkZXJQcm94eS5tbSAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLm9iamNwcDsgbmFtZSA9IFdlYkRldmljZU9yaWVudGF0aW9uVXBkYXRlUHJvdmlk
ZXJQcm94eS5tbTsgcGF0aCA9IGlvcy9XZWJEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3ZpZGVy
UHJveHkubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUzODY2QUU2MjM5NzQwNTMw
MEY4OEZFOSAvKiBXZWJEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3ZpZGVyUHJveHkuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gV2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQ
cm92aWRlclByb3h5Lmg7IHBhdGggPSBpb3MvV2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92
aWRlclByb3h5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUzODY2QUVEMjM5ODQ3
MUEwMEY4OEZFOSAvKiBXZWJEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3ZpZGVyUHJveHkubWVz
c2FnZXMuaW4gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBuYW1lID0gV2ViRGV2aWNlT3JpZW50YXRpb25VcGRh
dGVQcm92aWRlclByb3h5Lm1lc3NhZ2VzLmluOyBwYXRoID0gaW9zL1dlYkRldmljZU9yaWVudGF0
aW9uVXBkYXRlUHJvdmlkZXJQcm94eS5tZXNzYWdlcy5pbjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKQEAgLTYxMTYsNiArNjEyMCw4IEBACiAJCQkJQzAzMzdERDIxMjdBMkEwRTAwOEZGNEY0
IC8qIFdlYktleWJvYXJkRXZlbnQuY3BwICovLAogCQkJCUJDOUJBNTAyMTY5N0M0NTMwMEU0NDYx
NiAvKiBXZWJLaXQySW5pdGlhbGl6ZS5jcHAgKi8sCiAJCQkJQkM5QkE1MDMxNjk3QzQ1MzAwRTQ0
NjE2IC8qIFdlYktpdDJJbml0aWFsaXplLmggKi8sCisJCQkJRTM1ODJDMjkyNTI3RjY5QjAwRDFC
NzkwIC8qIFdlYktpdEpJVE9wZXJhdGlvbnMuY3BwICovLAorCQkJCUUzNTgyQzJBMjUyN0Y2OUMw
MEQxQjc5MCAvKiBXZWJLaXRKSVRPcGVyYXRpb25zLmggKi8sCiAJCQkJOTA1NjIwRTgxMkJDMjQ4
QjAwMDc5OUI2IC8qIFdlYk1lbW9yeVNhbXBsZXIuY3BwICovLAogCQkJCTkwNTYyMEU5MTJCQzI0
OEIwMDA3OTlCNiAvKiBXZWJNZW1vcnlTYW1wbGVyLmggKi8sCiAJCQkJQzAzMzdEQUYxMjdBMjhE
MDAwOEZGNEY0IC8qIFdlYk1vdXNlRXZlbnQuY3BwICovLApAQCAtMTEyOTMsNiArMTEyOTksNyBA
QAogCQkJCTFBNjI4MEM1MTkxOTk0OUYwMDZBRDlGOSAvKiBXZWJLaXQuaCBpbiBIZWFkZXJzICov
LAogCQkJCUJDQjYzNDc4MTE2QkYxMDYwMDYwMzIxNSAvKiBXZWJLaXQyX0MuaCBpbiBIZWFkZXJz
ICovLAogCQkJCUJDOUJBNTA1MTY5N0M0NTMwMEU0NDYxNiAvKiBXZWJLaXQySW5pdGlhbGl6ZS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJRTM1ODJDMkIyNTI3RjZBQTAwRDFCNzkwIC8qIFdlYktpdEpJ
VE9wZXJhdGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCTFBNjI4MEM3MTkxOTk1MEMwMDZBRDlG
OSAvKiBXZWJLaXRQcml2YXRlLmggaW4gSGVhZGVycyAqLywKIAkJCQlDRDAwM0E1MzE5RDQ5QjVE
MDA1QUJDRTAgLyogV2ViTWVkaWFLZXlTdG9yYWdlTWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJOUI1QkVDMjYyNDAwRjRBOTAwNzBDNkVGIC8qIFdlYk1lZGlhU3RyYXRlZ3kuaCBpbiBIZWFk
ZXJzICovLApAQCAtMTMwMjgsNiArMTMwMzUsNyBAQAogCQkJCTFBNjI4MEYzMTkxOTk4MkEwMDZB
RDlGOSAvKiBXZWJLaXQubSBpbiBTb3VyY2VzICovLAogCQkJCTJEOTJBNzhCMjEyQjZBQjEwMEY0
OTNGRCAvKiBXZWJLaXQySW5pdGlhbGl6ZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBMTgxQTc5
ODIxQUNDNzRCMDA1OUEzMTYgLyogV2ViS2l0QWRkaXRpb25zLm1tIGluIFNvdXJjZXMgKi8sCisJ
CQkJRTNDODQ2N0MyNTI3RjlERTAwNTRGRDlDIC8qIFdlYktpdEpJVE9wZXJhdGlvbnMuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJNTFGMDYwRTExNjU0MzE4NTAwRjMyODJGIC8qIFdlYk1ETlNSZWdp
c3Rlck1lc3NhZ2VSZWNlaXZlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkyRDkyQTc4QzIxMkI2
QUIxMDBGNDkzRkQgLyogV2ViTW91c2VFdmVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUJB
OTI0RDE0ODgzMTI2MDA2MkVEQjUgLyogV2ViTm90aWZpY2F0aW9uTWFuYWdlck1lc3NhZ2VSZWNl
aXZlci5jcHAgaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL0hpc3RvcnkvV2ViQmFja0ZvcndhcmRMaXN0Lm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9t
YWMvSGlzdG9yeS9XZWJCYWNrRm9yd2FyZExpc3QubW0KaW5kZXggZjJmMTNlYmY4ZTU1Y2UxNmI3
Njc0YjU3OGU4MGVmNjA3YzBlYzdlOC4uZDZhZjc1NWZmYTczOGI5OTNmN2Y3ODdlYzNlOGMzZjRl
Y2RhNzBmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvSGlzdG9yeS9XZWJC
YWNrRm9yd2FyZExpc3QubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvSGlzdG9yeS9X
ZWJCYWNrRm9yd2FyZExpc3QubW0KQEAgLTQ0LDYgKzQ0LDcgQEAKICNpbXBvcnQgPFdlYkNvcmUv
SGlzdG9yeUl0ZW0uaD4KICNpbXBvcnQgPFdlYkNvcmUvU2V0dGluZ3MuaD4KICNpbXBvcnQgPFdl
YkNvcmUvVGhyZWFkQ2hlY2suaD4KKyNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlv
bnMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZU9iakNFeHRyYXMuaD4KICNpbXBvcnQgPHd0
Zi9Bc3NlcnRpb25zLmg+CiAjaW1wb3J0IDx3dGYvTWFpblRocmVhZC5oPgpAQCAtMTAwLDYgKzEw
MSw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQogICAg
IEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAg
ICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZgogfQogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9IaXN0b3J5L1dlYkhpc3RvcnlJdGVtLm1tIGIv
U291cmNlL1dlYktpdExlZ2FjeS9tYWMvSGlzdG9yeS9XZWJIaXN0b3J5SXRlbS5tbQppbmRleCBm
Njg4ZGM4OWEyYmM1Zjk4NDdkZjlmYjllZTQ5ZWRkNzA1OGQ2MGQwLi44N2U2MjlmOTk0OWYxMjE0
ODA0YmZlZDRhMDJiMTQ2NzVlN2NjYjZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5
L21hYy9IaXN0b3J5L1dlYkhpc3RvcnlJdGVtLm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL0hpc3RvcnkvV2ViSGlzdG9yeUl0ZW0ubW0KQEAgLTQ3LDYgKzQ3LDcgQEAKICNpbXBvcnQg
PFdlYkNvcmUvSGlzdG9yeUl0ZW0uaD4KICNpbXBvcnQgPFdlYkNvcmUvSW1hZ2UuaD4KICNpbXBv
cnQgPFdlYkNvcmUvVGhyZWFkQ2hlY2suaD4KKyNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9w
ZXJhdGlvbnMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZU9iakNFeHRyYXMuaD4KICNpbXBv
cnQgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW1wb3J0IDx3dGYvTWFpblRocmVhZC5oPgpAQCAtMTI3
LDYgKzEyOCw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogI2lmICFQTEFURk9STShJT1NfRkFNSUxZ
KQogICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQo
KTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZgogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9NaXNjL1dlYkNhY2hlLm1tIGIvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvTWlzYy9XZWJDYWNoZS5tbQppbmRleCBhYjgzMDFkZGNkMGMw
NzkyNjkwMzQ2Mjc4OGE3NDQ2MGRhMzVkNWExLi5kODE3Njk5Njc1ZWNmYmI5YzIzNjc5MzVjMjJj
NTdjNzhhNGEzNGYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9NaXNjL1dl
YkNhY2hlLm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL01pc2MvV2ViQ2FjaGUubW0K
QEAgLTQwLDYgKzQwLDcgQEAKICNpbXBvcnQgPFdlYkNvcmUvTWVtb3J5Q2FjaGUuaD4KICNpbXBv
cnQgPFdlYkNvcmUvTmV0d29ya1N0b3JhZ2VTZXNzaW9uLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1N0
b3JhZ2VTZXNzaW9uUHJvdmlkZXIuaD4KKyNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJh
dGlvbnMuaD4KICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+CiAjaW1wb3J0IDx3dGYvUnVuTG9v
cC5oPgogCkBAIC02NSw2ICs2Niw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogI2lmICFQTEFURk9S
TShJT1NfRkFNSUxZKQogICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6
ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNl
bmRpZgogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9NaXNjL1dlYkVs
ZW1lbnREaWN0aW9uYXJ5Lm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvTWlzYy9XZWJFbGVt
ZW50RGljdGlvbmFyeS5tbQppbmRleCA5OTgyOTA1ZTJiYTMzZWQzODI4YmI3NDg3NDE5Nzc5M2Y0
NGJmYjQyLi4xZmI1MThmODc0YjgzZTY0YWZlNWZmNDk4ZDFlZjUxY2UzMTg1ZmM4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9NaXNjL1dlYkVsZW1lbnREaWN0aW9uYXJ5Lm1t
CisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL01pc2MvV2ViRWxlbWVudERpY3Rpb25hcnku
bW0KQEAgLTQxLDYgKzQxLDcgQEAKICNpbXBvcnQgPFdlYkNvcmUvRnJhbWUuaD4KICNpbXBvcnQg
PFdlYkNvcmUvSGl0VGVzdFJlc3VsdC5oPgogI2ltcG9ydCA8V2ViQ29yZS9JbWFnZS5oPgorI2lt
cG9ydCA8V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0aW9ucy5oPgogI2ltcG9ydCA8V2ViQ29yZS9X
ZWJDb3JlT2JqQ0V4dHJhcy5oPgogI2ltcG9ydCA8V2ViS2l0TGVnYWN5L0RPTUNvcmUuaD4KICNp
bXBvcnQgPFdlYktpdExlZ2FjeS9ET01FeHRlbnNpb25zLmg+CkBAIC02OSw2ICs3MCw3IEBAICsg
KHZvaWQpaW5pdGlhbGl6ZQogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQogICAgIEpTQzo6aW5p
dGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJDb3Jl
Ojpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZgogfQogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0TGVnYWN5L21hYy9NaXNjL1dlYkljb25EYXRhYmFzZS5tbSBiL1NvdXJjZS9XZWJL
aXRMZWdhY3kvbWFjL01pc2MvV2ViSWNvbkRhdGFiYXNlLm1tCmluZGV4IDRjMWRjYjI0M2VkM2Y0
YTFiMzFiOTk4YWRmZDcyZGNmZmFkNTRiZDAuLjlhMWIyY2I2Yzc5NzBlNmE4ODE2NTg5OGYyOWQz
MDBkNmIzMGExMWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL01pc2MvV2Vi
SWNvbkRhdGFiYXNlLm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL01pc2MvV2ViSWNv
bkRhdGFiYXNlLm1tCkBAIC0zNCw2ICszNCw3IEBACiAjaW1wb3J0IDxKYXZhU2NyaXB0Q29yZS9J
bml0aWFsaXplVGhyZWFkaW5nLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0ltYWdlLmg+CiAjaW1wb3J0
IDxXZWJDb3JlL1RocmVhZENoZWNrLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVy
YXRpb25zLmg+CiAjaW1wb3J0IDx3dGYvTWFpblRocmVhZC5oPgogI2ltcG9ydCA8d3RmL05ldmVy
RGVzdHJveWVkLmg+CiAjaW1wb3J0IDx3dGYvUnVuTG9vcC5oPgpAQCAtOTksNiArMTAwLDcgQEAg
KyAodm9pZClpbml0aWFsaXplCiB7CiAgICAgSlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RGOjpp
bml0aWFsaXplTWFpblRocmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9u
cygpOwogfQogCiArIChXZWJJY29uRGF0YWJhc2UgKilzaGFyZWRJY29uRGF0YWJhc2UKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL01pc2MvV2ViU3RyaW5nVHJ1bmNhdG9yLm1t
IGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvTWlzYy9XZWJTdHJpbmdUcnVuY2F0b3IubW0KaW5k
ZXggOTlkNzljMTk2NzUyNDA5MjAyMjM1NjdiNzVjOTBjYzU1NjgxMGI5NC4uOThlY2FhOTQzNTY0
NmY2MGVhZjE1YzM0NTE1NjhjOTIwNzA2M2UxMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExl
Z2FjeS9tYWMvTWlzYy9XZWJTdHJpbmdUcnVuY2F0b3IubW0KKysrIGIvU291cmNlL1dlYktpdExl
Z2FjeS9tYWMvTWlzYy9XZWJTdHJpbmdUcnVuY2F0b3IubW0KQEAgLTMyLDYgKzMyLDcgQEAKICNp
bXBvcnQgPFdlYkNvcmUvRm9udENhc2NhZGUuaD4KICNpbXBvcnQgPFdlYkNvcmUvRm9udFBsYXRm
b3JtRGF0YS5oPgogI2ltcG9ydCA8V2ViQ29yZS9TdHJpbmdUcnVuY2F0b3IuaD4KKyNpbXBvcnQg
PFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFk
Lmg+CiAjaW1wb3J0IDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KIApAQCAtNTIsNiArNTMsNyBAQCAr
ICh2b2lkKWluaXRpYWxpemUKIHsKICAgICBKU0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6Omlu
aXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25z
KCk7CiB9CiAKICsgKE5TU3RyaW5nICopY2VudGVyVHJ1bmNhdGVTdHJpbmc6KE5TU3RyaW5nICop
c3RyaW5nIHRvV2lkdGg6KGZsb2F0KW1heFdpZHRoCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
TGVnYWN5L21hYy9QbHVnaW5zL0hvc3RlZC9XZWJIb3N0ZWROZXRzY2FwZVBsdWdpblZpZXcubW0g
Yi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL0hvc3RlZC9XZWJIb3N0ZWROZXRzY2Fw
ZVBsdWdpblZpZXcubW0KaW5kZXggNDc2YTU1ZWRhMTZlMzRjNGVkYTYyYzRmOWI2MDlmMzMwZTYy
MWRlZC4uNzYxMTcxY2VhN2NhNWZhNjcyOGM5ZGMwMGQyZWI3YjJkMThmNzc4MCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9Ib3N0ZWQvV2ViSG9zdGVkTmV0c2Nh
cGVQbHVnaW5WaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvSG9z
dGVkL1dlYkhvc3RlZE5ldHNjYXBlUGx1Z2luVmlldy5tbQpAQCAtNDcsNiArNDcsNyBAQAogI2lt
cG9ydCA8V2ViQ29yZS9SZW5kZXJFbWJlZGRlZE9iamVjdC5oPgogI2ltcG9ydCA8V2ViQ29yZS9S
ZXNvdXJjZUVycm9yLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVDQUxheWVyRXh0cmFzLmg+
CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0IDxXZWJD
b3JlL3J1bnRpbWVfcm9vdC5oPgogI2ltcG9ydCA8cGFsL3NwaS9jb2NvYS9RdWFydHpDb3JlU1BJ
Lmg+CiAjaW1wb3J0IDx3dGYvQXNzZXJ0aW9ucy5oPgpAQCAtMTA3LDYgKzEwOCw3IEBAICsgKHZv
aWQpaW5pdGlhbGl6ZQogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQogICAgIEpTQzo6aW5pdGlh
bGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJDb3JlOjpw
b3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZgogICAgIHNlbmRVc2VyQ2hhbmdlTm90aWZp
Y2F0aW9ucygpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lu
cy9XZWJCYXNlTmV0c2NhcGVQbHVnaW5WaWV3Lm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMv
UGx1Z2lucy9XZWJCYXNlTmV0c2NhcGVQbHVnaW5WaWV3Lm1tCmluZGV4IDdlYzQwYzk5N2FkMDU1
NjQxMTFmNzg2MTRhNjczM2I5ZDQwMTIxOGQuLjJkZGE3YjYzOTNjZWNjZGM5YzgxMmM2MzgzOTE4
OGQ2YTQzNWQxNDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMv
V2ViQmFzZU5ldHNjYXBlUGx1Z2luVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21h
Yy9QbHVnaW5zL1dlYkJhc2VOZXRzY2FwZVBsdWdpblZpZXcubW0KQEAgLTU0LDYgKzU0LDcgQEAK
ICNpbXBvcnQgPFdlYkNvcmUvUmVuZGVyRW1iZWRkZWRPYmplY3QuaD4KICNpbXBvcnQgPFdlYkNv
cmUvUmVuZGVyVmlldy5oPgogI2ltcG9ydCA8V2ViQ29yZS9TZWN1cml0eU9yaWdpbi5oPgorI2lt
cG9ydCA8V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0aW9ucy5oPgogI2ltcG9ydCA8V2ViS2l0TGVn
YWN5L0RPTVByaXZhdGUuaD4KICNpbXBvcnQgPHBhbC9zcGkvY2cvQ29yZUdyYXBoaWNzU1BJLmg+
CiAjaW1wb3J0IDx3dGYvQXNzZXJ0aW9ucy5oPgpAQCAtNzIsNiArNzMsNyBAQCArICh2b2lkKWlu
aXRpYWxpemUKIHsKICAgICBKU0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVN
YWluVGhyZWFkKCk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAgICAg
V2ViS2l0OjpzZW5kVXNlckNoYW5nZU5vdGlmaWNhdGlvbnMoKTsKIH0KIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9XZWJCYXNlUGx1Z2luUGFja2FnZS5tbSBi
L1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvV2ViQmFzZVBsdWdpblBhY2thZ2UubW0K
aW5kZXggYWRlN2JhMjdhN2Y3ZjdkMzNhNGMxZjhlZDY4YzM3MDExMjc4MDBiYS4uZmNlM2NmOGQy
ZDhkMDY3ZTZmMTM1OTExNDgyN2I0ZTZlZjIzODdmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dExlZ2FjeS9tYWMvUGx1Z2lucy9XZWJCYXNlUGx1Z2luUGFja2FnZS5tbQorKysgYi9Tb3VyY2Uv
V2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL1dlYkJhc2VQbHVnaW5QYWNrYWdlLm1tCkBAIC0zNCw2
ICszNCw3IEBACiAjaW1wb3J0ICJXZWJQbHVnaW5QYWNrYWdlLmgiCiAjaW1wb3J0ICJXZWJUeXBl
c0ludGVybmFsLmgiCiAjaW1wb3J0IDxKYXZhU2NyaXB0Q29yZS9Jbml0aWFsaXplVGhyZWFkaW5n
Lmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0IDxh
bGdvcml0aG0+CiAjaW1wb3J0IDxtYWNoLW8vYXJjaC5oPgogI2ltcG9ydCA8bWFjaC1vL2ZhdC5o
PgpAQCAtNjEsNiArNjIsNyBAQCArICh2b2lkKWluaXRpYWxpemUKICNpZiAhUExBVEZPUk0oSU9T
X0ZBTUlMWSkKICAgICBKU0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWlu
VGhyZWFkKCk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAjZW5kaWYK
IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9XZWJOZXRz
Y2FwZVBsdWdpblZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL1dlYk5l
dHNjYXBlUGx1Z2luVmlldy5tbQppbmRleCAyY2FlZTJmMzE4MTU3YzFlMzI3M2YwMTYwZTk3YzYy
MGJlZmY2ZTVkLi5hYmRlODYxY2ZmMDI3NzViMDFkNWNmYjY1MTIyZTU4NDEyMjIxNDAzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL1dlYk5ldHNjYXBlUGx1Z2lu
Vmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL1dlYk5ldHNjYXBl
UGx1Z2luVmlldy5tbQpAQCAtNjgsNiArNjgsNyBAQAogI2ltcG9ydCA8V2ViQ29yZS9TY3JpcHRD
b250cm9sbGVyLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1NlY3VyaXR5T3JpZ2luLmg+CiAjaW1wb3J0
IDxXZWJDb3JlL1VzZXJHZXN0dXJlSW5kaWNhdG9yLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNv
cmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVVUkxSZXNwb25zZS5o
PgogI2ltcG9ydCA8V2ViQ29yZS9ucHJ1bnRpbWVfaW1wbC5oPgogI2ltcG9ydCA8V2ViQ29yZS9y
dW50aW1lX3Jvb3QuaD4KQEAgLTE2NCw2ICsxNjUsNyBAQCArICh2b2lkKWluaXRpYWxpemUKIHsK
ICAgICBKU0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7
CisgICAgV2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAgICAgc2VuZFVzZXJDaGFu
Z2VOb3RpZmljYXRpb25zKCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5tbSBiL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5tbQppbmRleCAyOGNhMWI5YWJi
ZTY0NmQ5ZTA0MGE1NjE2N2JmYjAzZGJjYmEzODE3Li5hZjFhYjI2OTBjNjQ3ZTY1MDM5YTAwZTRi
NjExMDk2NjAzZjRkYmZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJD
b3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9t
YWMvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50Lm1tCkBAIC03OCw2ICs3OCw3IEBACiAj
aW1wb3J0IDxXZWJDb3JlL1VzZXJUeXBpbmdHZXN0dXJlSW5kaWNhdG9yLmg+CiAjaW1wb3J0IDxX
ZWJDb3JlL1Zpc2libGVVbml0cy5oPgogI2ltcG9ydCA8V2ViQ29yZS9XZWJDb250ZW50UmVhZGVy
Lmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0IDxX
ZWJDb3JlL1dlYkNvcmVPYmpDRXh0cmFzLmg+CiAjaW1wb3J0IDxwYWwvc3BpL2NvY29hL05TQXR0
cmlidXRlZFN0cmluZ1NQSS5oPgogI2ltcG9ydCA8cGFsL3NwaS9tYWMvTlNTcGVsbENoZWNrZXJT
UEkuaD4KQEAgLTE0MCw2ICsxNDEsNyBAQCArICh2b2lkKWluaXRpYWxpemUKICNpZiAhUExBVEZP
Uk0oSU9TX0ZBTUlMWSkKICAgICBKU0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxp
emVNYWluVGhyZWFkKCk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAj
ZW5kaWYKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViQ29yZVN1
cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9X
ZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5tbQppbmRleCBmNzBjODMwZjM0NDUx
YTA0MzdkZmVmNDFlOTlmM2MwODRmODVkNTRlLi42YzdiOGU2ZGJjZWZjMTdkNjhkZGVkMzNlYzMz
MTE2YzBlZWFkODJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3Jl
U3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5
L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5tbQpAQCAtMTE4LDYgKzEx
OCw3IEBACiAjaW1wb3J0IDxXZWJDb3JlL1NjcmlwdENvbnRyb2xsZXIuaD4KICNpbXBvcnQgPFdl
YkNvcmUvU2hhcmVkQnVmZmVyLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1N1YnJlc291cmNlTG9hZGVy
Lmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0IDxX
ZWJDb3JlL1dlYkNvcmVPYmpDRXh0cmFzLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkdMQmxvY2ts
aXN0Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYlNjcmlwdE9iamVjdFByaXZhdGUuaD4KQEAgLTIz
NDYsNiArMjM0Nyw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogI2lmICFQTEFURk9STShJT1NfRkFN
SUxZKQogICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJl
YWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZgogfQog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkFyY2hpdmUu
bW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkFyY2hpdmUubW0KaW5kZXgg
YjIzN2M5ODVkZDE4MmI0NDA0NjdkYTVjMGFmOTg0MGFlYzk4ZTBiYi4uMjU5YzdlOWVhNmQ1MWJm
MGM3NDY5OTdkZmJkYTc5N2MxZWIwODhhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2Fj
eS9tYWMvV2ViVmlldy9XZWJBcmNoaXZlLm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFj
L1dlYlZpZXcvV2ViQXJjaGl2ZS5tbQpAQCAtMzcsNiArMzcsNyBAQAogI2ltcG9ydCA8V2ViQ29y
ZS9BcmNoaXZlUmVzb3VyY2UuaD4KICNpbXBvcnQgPFdlYkNvcmUvTGVnYWN5V2ViQXJjaGl2ZS5o
PgogI2ltcG9ydCA8V2ViQ29yZS9UaHJlYWRDaGVjay5oPgorI2ltcG9ydCA8V2ViQ29yZS9XZWJD
b3JlSklUT3BlcmF0aW9ucy5oPgogI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlT2JqQ0V4dHJhcy5o
PgogI2ltcG9ydCA8d3RmL01haW5UaHJlYWQuaD4KICNpbXBvcnQgPHd0Zi9SdW5Mb29wLmg+CkBA
IC03MSw2ICs3Miw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogI2lmICFQTEFURk9STShJT1NfRkFN
SUxZKQogICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJl
YWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZgogfQog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkRhdGFTb3Vy
Y2UubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkRhdGFTb3VyY2UubW0K
aW5kZXggZDc3NzI2NDhjNDhkOWZhZWEyNzZkZmEyNjVjYTZhMGIwNTYyMmNkYy4uMWI1OTcxNjQ2
ODUzYTZkMTZiYTYyODZlMGNhM2ZiM2ZiZGYxM2Y0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dExlZ2FjeS9tYWMvV2ViVmlldy9XZWJEYXRhU291cmNlLm1tCisrKyBiL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvbWFjL1dlYlZpZXcvV2ViRGF0YVNvdXJjZS5tbQpAQCAtNTUsNiArNTUsNyBAQAogI2lt
cG9ydCA8V2ViQ29yZS9NSU1FVHlwZVJlZ2lzdHJ5Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1Jlc291
cmNlUmVxdWVzdC5oPgogI2ltcG9ydCA8V2ViQ29yZS9TaGFyZWRCdWZmZXIuaD4KKyNpbXBvcnQg
PFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViQ29y
ZU9iakNFeHRyYXMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZVVSTFJlc3BvbnNlLmg+CiAj
aW1wb3J0IDxXZWJLaXRMZWdhY3kvRE9NSFRNTC5oPgpAQCAtMTU1LDYgKzE1Niw3IEBAICsgKHZv
aWQpaW5pdGlhbGl6ZQogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQogICAgICAgICBKU0M6Omlu
aXRpYWxpemUoKTsKICAgICAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOworICAgICAg
ICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZgogICAgIH0KIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViSFRNTFZpZXcubW0g
Yi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkhUTUxWaWV3Lm1tCmluZGV4IDU1
ODVmMGMyYmY4MzM1MDYwYTI2OGNkNjk2Y2EzNDFlYzBjMWEyYjIuLmVlNjQ4MWYzODYwYTdhN2I1
MWExMTA3OGU0MzM4ZDcwNWNmZGFiNjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL1dlYlZpZXcvV2ViSFRNTFZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMv
V2ViVmlldy9XZWJIVE1MVmlldy5tbQpAQCAtMTI3LDYgKzEyNyw3IEBACiAjaW1wb3J0IDxXZWJD
b3JlL1RleHRBbHRlcm5hdGl2ZVdpdGhSYW5nZS5oPgogI2ltcG9ydCA8V2ViQ29yZS9UZXh0SW5k
aWNhdG9yLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1RleHRVbmRvSW5zZXJ0aW9uTWFya3VwTWFjLmg+
CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0IDxXZWJD
b3JlL1dlYkNvcmVOU0ZvbnRNYW5hZ2VyRXh0cmFzLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNv
cmVPYmpDRXh0cmFzLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYk5TQXR0cmlidXRlZFN0cmluZ0V4
dHJhcy5oPgpAQCAtMTAzMyw2ICsxMDM0LDcgQEAgKyAodm9pZClpbml0aWFsaXplCiAKICAgICBK
U0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAg
V2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAKICAgICBpZiAoIW9sZFNldEN1cnNv
ckZvck1vdXNlTG9jYXRpb25JTVApIHsKICAgICAgICAgTWV0aG9kIHNldEN1cnNvck1ldGhvZCA9
IGNsYXNzX2dldEluc3RhbmNlTWV0aG9kKFtOU1dpbmRvdyBjbGFzc10sIEBzZWxlY3Rvcihfc2V0
Q3Vyc29yRm9yTW91c2VMb2NhdGlvbjopKTsKQEAgLTI1NjgsNiArMjU3MCw3IEBAICsgKHZvaWQp
aW5pdGlhbGl6ZQogCiAgICAgSlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFsaXpl
TWFpblRocmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogfQog
CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2Vi
UHJlZmVyZW5jZXMubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlByZWZl
cmVuY2VzLm1tCmluZGV4IDYwM2YwYTcyYjM4MGIzNmE5YThkMGNlMzY3MDU4NjkwZmQwYjI3YTIu
LjMxNDcwNTIwZGM0MmJmNTg0ZjQ3MzkwMjYyNGZmYmFlOTcwOTU4NTIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW0KKysrIGIvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlcy5tbQpAQCAtNDgsNiAr
NDgsNyBAQAogI2ltcG9ydCA8V2ViQ29yZS9SdW50aW1lQXBwbGljYXRpb25DaGVja3MuaD4KICNp
bXBvcnQgPFdlYkNvcmUvU2V0dGluZ3MuaD4KICNpbXBvcnQgPFdlYkNvcmUvVGV4dEVuY29kaW5n
UmVnaXN0cnkuaD4KKyNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNp
bXBvcnQgPHBhbC9zcGkvY2YvQ0ZOZXR3b3JrU1BJLmg+CiAjaW1wb3J0IDx3dGYvTWFpblRocmVh
ZC5oPgogI2ltcG9ydCA8d3RmL1JldGFpblB0ci5oPgpAQCAtMzc2LDYgKzM3Nyw3IEBAICsgKHZv
aWQpaW5pdGlhbGl6ZQogI2lmIFBMQVRGT1JNKE1BQykKICAgICBKU0M6OmluaXRpYWxpemUoKTsK
ICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVK
SVRPcGVyYXRpb25zKCk7CiAjZW5kaWYKIAogICAgIE5TRGljdGlvbmFyeSAqZGljdCA9IFtOU0Rp
Y3Rpb25hcnkgZGljdGlvbmFyeVdpdGhPYmplY3RzQW5kS2V5czoKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViUmVzb3VyY2UubW0gYi9Tb3VyY2UvV2ViS2l0
TGVnYWN5L21hYy9XZWJWaWV3L1dlYlJlc291cmNlLm1tCmluZGV4IDQ0N2UyYTFhOTkyMjM4NzA4
MjNhZDI3MDI5OWExNzAyNDc3MjA2ZmIuLmVmMTA5ODZkYTg3NTNhYjMxMDllMGFmMTYyMWIzMDEy
ZjRlOWU2YTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2Vi
UmVzb3VyY2UubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJSZXNv
dXJjZS5tbQpAQCAtNDAsNiArNDAsNyBAQAogI2ltcG9ydCA8V2ViQ29yZS9SdW50aW1lQXBwbGlj
YXRpb25DaGVja3MuaD4KICNpbXBvcnQgPFdlYkNvcmUvVGV4dEVuY29kaW5nLmg+CiAjaW1wb3J0
IDxXZWJDb3JlL1RocmVhZENoZWNrLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVy
YXRpb25zLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVPYmpDRXh0cmFzLmg+CiAjaW1wb3J0
IDxXZWJDb3JlL1dlYkNvcmVVUkxSZXNwb25zZS5oPgogI2ltcG9ydCA8d3RmL01haW5UaHJlYWQu
aD4KQEAgLTY5LDYgKzcwLDcgQEAgKyAodm9pZClpbml0aWFsaXplCiAjaWYgIVBMQVRGT1JNKElP
U19GQU1JTFkpCiAgICAgSlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFsaXplTWFp
blRocmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogI2VuZGlm
CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVGV4
dEl0ZXJhdG9yLm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJUZXh0SXRl
cmF0b3IubW0KaW5kZXggZDNhZDkxOGRhN2VlM2Y2ZjU4ZjQwOTAzYzdlMTdkNmE2NmUzODdhMS4u
YWJhNzFhZjI1NDMxOTVmNTY1MGI3MWUwNzU0MmYzYzcxMTQ3YWE3ZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJUZXh0SXRlcmF0b3IubW0KKysrIGIvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJUZXh0SXRlcmF0b3IubW0KQEAgLTMxLDYg
KzMxLDcgQEAKICNpbXBvcnQgPEphdmFTY3JpcHRDb3JlL0luaXRpYWxpemVUaHJlYWRpbmcuaD4K
ICNpbXBvcnQgPFdlYkNvcmUvUmFuZ2UuaD4KICNpbXBvcnQgPFdlYkNvcmUvVGV4dEl0ZXJhdG9y
Lmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0IDx3
dGYvTWFpblRocmVhZC5oPgogI2ltcG9ydCA8d3RmL1J1bkxvb3AuaD4KICNpbXBvcnQgPHd0Zi9W
ZWN0b3IuaD4KQEAgLTQ5LDYgKzUwLDcgQEAgKyAodm9pZClpbml0aWFsaXplCiAjaWYgIVBMQVRG
T1JNKElPU19GQU1JTFkpCiAgICAgSlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFs
aXplTWFpblRocmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwog
I2VuZGlmCiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcv
V2ViVmlldy5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQpp
bmRleCA2MjM1ZDJjMWVkNmE2MDVjNmRiMzIxMGJhZTAxMGMwYWUyYjE1ODA0Li5jODFhNjY0ZDI2
OTE0NTBjMjI5MTc2ODJkM2Q0N2E2NjhkN2ZmZjQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9t
YWMvV2ViVmlldy9XZWJWaWV3Lm1tCkBAIC0yMjEsNiArMjIxLDcgQEAKICNpbXBvcnQgPFdlYkNv
cmUvVXNlclNjcmlwdC5oPgogI2ltcG9ydCA8V2ViQ29yZS9Vc2VyU3R5bGVTaGVldC5oPgogI2lt
cG9ydCA8V2ViQ29yZS9WYWxpZGF0aW9uQnViYmxlLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNv
cmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVPYmpDRXh0cmFzLmg+
CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVWaWV3Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYlZp
ZXdWaXN1YWxJZGVudGlmaWNhdGlvbk92ZXJsYXkuaD4KQEAgLTUyNDQsNiArNTI0NSw3IEBAICsg
KHZvaWQpaW5pdGlhbGl6ZQogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQogICAgIEpTQzo6aW5p
dGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJDb3Jl
Ojpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZgogCiAgICAgV1RGOjpSZWZDb3VudGVk
QmFzZTo6ZW5hYmxlVGhyZWFkaW5nQ2hlY2tzR2xvYmFsbHkoKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlld0RhdGEubW0gYi9Tb3VyY2UvV2ViS2l0
TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXdEYXRhLm1tCmluZGV4IGZjZTRhNjY0NjZkOGZmYjY0
YjYyMTI1OTAzMDFlYjI0M2JhODk0NjYuLjRkZDM5ZDY2ZGU0MmU0OWZhZGFkNGFlYzc4OGIxNGQy
ZmRkMWU1ZGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2Vi
Vmlld0RhdGEubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3
RGF0YS5tbQpAQCAtNDAsNiArNDAsNyBAQAogI2ltcG9ydCA8V2ViQ29yZS9SdW5Mb29wT2JzZXJ2
ZXIuaD4KICNpbXBvcnQgPFdlYkNvcmUvVGV4dEluZGljYXRvcldpbmRvdy5oPgogI2ltcG9ydCA8
V2ViQ29yZS9WYWxpZGF0aW9uQnViYmxlLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRP
cGVyYXRpb25zLmg+CiAjaW1wb3J0IDx3dGYvTWFpblRocmVhZC5oPgogI2ltcG9ydCA8d3RmL1J1
bkxvb3AuaD4KIApAQCAtMTY5LDYgKzE3MCw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogI2lmICFQ
TEFURk9STShJT1NfRkFNSUxZKQogICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5p
dGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMo
KTsKICNlbmRpZgogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9XZWJL
aXRDbGFzc0ZhY3RvcnkuY3BwIGIvU291cmNlL1dlYktpdExlZ2FjeS93aW4vV2ViS2l0Q2xhc3NG
YWN0b3J5LmNwcAppbmRleCAwYTlhYzExY2QyNjZlODk5ZGUzZWM5YzkwMzEzY2ZhN2NiYmU0Njgw
Li5jZTg2MjBmZDRiZDc3YzdlZWY4ZGI4ZDc0NjQzZjk1MmEzYWYxYTU2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9XZWJLaXRDbGFzc0ZhY3RvcnkuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvd2luL1dlYktpdENsYXNzRmFjdG9yeS5jcHAKQEAgLTU2LDYgKzU2LDcg
QEAKICNpbmNsdWRlICJXZWJWaWV3LmgiCiAjaW5jbHVkZSAiV2ViV29ya2Vyc1ByaXZhdGUuaCIK
ICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9Jbml0aWFsaXplVGhyZWFkaW5nLmg+CisjaW5jbHVk
ZSA8V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0aW9ucy5oPgogI2luY2x1ZGUgPHd0Zi9NYWluVGhy
ZWFkLmg+CiAjaW5jbHVkZSA8d3RmL1NvZnRMaW5raW5nLmg+CiAKQEAgLTY1LDYgKzY2LDcgQEAg
V2ViS2l0Q2xhc3NGYWN0b3J5OjpXZWJLaXRDbGFzc0ZhY3RvcnkoQ0xTSUQgdGFyZ2V0Q2xhc3Mp
CiB7CiAgICAgSlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVh
ZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogCiAgICAgZ0NsYXNz
Q291bnQrKzsKICAgICBnQ2xhc3NOYW1lQ291bnQoKS5hZGQoIldlYktpdENsYXNzRmFjdG9yeSIp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS93aW4vV2ViVmlldy5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0TGVnYWN5L3dpbi9XZWJWaWV3LmNwcAppbmRleCA5M2FiM2FmZmEwNTM4ZWI1M2U0
YWRmNGU2ZTZlOThiMjFhZWMyM2IzLi5jYjM4YzI0ZTk5MmYxMGI3YTQ4OWY3MzJlNDU5ZmFmYjdh
NmFkZDE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9XZWJWaWV3LmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9XZWJWaWV3LmNwcApAQCAtMTY3LDYgKzE2Nyw3
IEBACiAjaW5jbHVkZSA8V2ViQ29yZS9Vc2VyQ29udGVudENvbnRyb2xsZXIuaD4KICNpbmNsdWRl
IDxXZWJDb3JlL1VzZXJTY3JpcHQuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1VzZXJTdHlsZVNoZWV0
Lmg+CisjaW5jbHVkZSA8V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0aW9ucy5oPgogI2luY2x1ZGUg
PFdlYkNvcmUvV2ViQ29yZVRleHRSZW5kZXJlci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvV2luZG93
TWVzc2FnZUJyb2FkY2FzdGVyLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9XaW5kb3dzVG91Y2guaD4K
QEAgLTQyMyw2ICs0MjQsNyBAQCBXZWJWaWV3OjpXZWJWaWV3KCkKICAgICBKU0M6OmluaXRpYWxp
emUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CiAgICAgV1RGOjpzZXRQcm9j
ZXNzUHJpdmlsZWdlcyhhbGxQcml2aWxlZ2VzKCkpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklU
T3BlcmF0aW9ucygpOwogICAgIFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6cGVybWl0
UHJvY2Vzc1RvVXNlQ29va2llQVBJKHRydWUpOwogCiAgICAgbV9iYWNraW5nU3RvcmVTaXplLmN4
ID0gbV9iYWNraW5nU3RvcmVTaXplLmN5ID0gMDsK
</data>
<flag name="commit-queue"
          id="426315"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>410394</attachid>
            <date>2020-10-02 17:55:29 -0700</date>
            <delta_ts>2020-10-02 18:50:53 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-217261-20201002175528.patch</filename>
            <type>text/plain</type>
            <size>85103</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY3ODYzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBi
YzI3OTIwMDBlZjZkZjA2YzJmOWI2MjUxMjc5MDUyYWY0NDExNDliLi5lMGVhZjdhZDdhYTcyMmM3
ZjU3ZWU4OWQyZmM4NzY2YjUxMjY1NWMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw1MSBAQAorMjAyMC0xMC0wMiAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIEludHJvZHVjZSBKSVRPcGVyYXRpb25MaXN0IHRvIHZhbGlkYXRl
IEpJVC1jYWdlZCBwb2ludGVycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjE3MjYxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIEpJVE9wZXJhdGlvbkxpc3QsIHdoaWNoIG1hbmFn
ZXMgYWxsIHRoZSBob3N0LWZ1bmN0aW9uICYgaml0LW9wZXJhdGlvbiBwb2ludGVycy4KKyAgICAg
ICAgQW5kIHdlIGNhbiBub3cgcXVlcnkgd2hldGhlciB0aGUgZ2l2ZW4gcG9pbnRlciBpcyByZWdp
c3RlcmVkIGluIHRoaXMgdGFibGUuCisgICAgICAgIEN1cnJlbnRseSwgYXMgYSB0ZXN0LCB3ZSBh
cmUgdmVyaWZ5aW5nIHRoYXQgaG9zdC1mdW5jdGlvbiBpcyByZWdpc3RlcmVkIGluIHRoaXMgdGFi
bGUgd2hlbiBjcmVhdGluZyBOYXRpdmVFeGVjdXRhYmxlIGluIGRlYnVnIGJ1aWxkLgorCisgICAg
ICAgICogQ01ha2VMaXN0cy50eHQ6CisgICAgICAgICogSmF2YVNjcmlwdENvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBTb3VyY2VzLnR4dDoKKyAgICAgICAgKiBhc3Nl
bWJsZXIvSklUT3BlcmF0aW9uTGlzdC5jcHA6IEFkZGVkLgorICAgICAgICAoSlNDOjpKSVRPcGVy
YXRpb25MaXN0Ojppbml0aWFsaXplKToKKyAgICAgICAgKEpTQzo6YWRkUG9pbnRlcnMpOgorICAg
ICAgICAoSlNDOjpKSVRPcGVyYXRpb25MaXN0Ojpwb3B1bGF0ZVBvaW50ZXJzSW5KYXZhU2NyaXB0
Q29yZSk6CisgICAgICAgIChKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6OnBvcHVsYXRlUG9pbnRlcnNJ
bkVtYmVkZGVyMSk6CisgICAgICAgIChKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6OnBvcHVsYXRlUG9p
bnRlcnNJbkVtYmVkZGVyMik6CisgICAgICAgICogYXNzZW1ibGVyL0pJVE9wZXJhdGlvbkxpc3Qu
aDogQWRkZWQuCisgICAgICAgIChKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6OmNvbnRhaW5zIGNvbnN0
KToKKyAgICAgICAgKEpTQzo6SklUT3BlcmF0aW9uTGlzdDo6YXNzZXJ0SXNIb3N0RnVuY3Rpb24p
OgorICAgICAgICAoSlNDOjpKSVRPcGVyYXRpb25MaXN0Ojphc3NlcnRJc0pJVE9wZXJhdGlvbik6
CisgICAgICAgIChKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6Omluc3RhbmNlKToKKyAgICAgICAgKiBq
c2MuY3BwOgorICAgICAgICAoanNjbWFpbik6CisgICAgICAgICogcnVudGltZS9Jbml0aWFsaXpl
VGhyZWFkaW5nLmNwcDoKKyAgICAgICAgKEpTQzo6aW5pdGlhbGl6ZSk6CisgICAgICAgICogcnVu
dGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZUZ1bmN0aW9ucy5oOgorICAgICAg
ICAoSlNDOjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNTZXQpOgorICAgICAgICAoSlND
OjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNDb3B5V2l0aGluKToKKyAgICAgICAgKEpT
Qzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jSW5jbHVkZXMpOgorICAgICAgICAoSlND
OjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNJbmRleE9mKToKKyAgICAgICAgKEpTQzo6
Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jSm9pbik6CisgICAgICAgIChKU0M6OmdlbmVy
aWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY0xhc3RJbmRleE9mKToKKyAgICAgICAgKEpTQzo6Z2Vu
ZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jQnVmZmVyKToKKyAgICAgICAgKEpTQzo6
Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jTGVuZ3RoKToKKyAgICAgICAgKEpT
Qzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jQnl0ZUxlbmd0aCk6CisgICAg
ICAgIChKU0M6OmdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvR2V0dGVyRnVuY0J5dGVPZmZzZXQp
OgorICAgICAgICAoSlNDOjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNSZXZlcnNlKToK
KyAgICAgICAgKEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJpdmF0ZUZ1bmNTb3J0KToKKyAg
ICAgICAgKEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jU2xpY2UpOgorICAgICAg
ICAoSlNDOjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcml2YXRlRnVuY1N1YmFycmF5Q3JlYXRlKToK
KyAgICAgICAgKEpTQzo6SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKTogRGVsZXRlZC4KKyAgICAg
ICAgKiBydW50aW1lL1ZNLmNwcDoKKyAgICAgICAgKEpTQzo6Vk06OmdldEhvc3RGdW5jdGlvbik6
CisKIDIwMjAtMTAtMDEgIEFkcmlhbiBQZXJleiBkZSBDYXN0cm8gPGFwZXJlekBpZ2FsaWEuY29t
PiBhbmQgRG9uIE9sbXN0ZWFkICA8ZG9uLm9sbXN0ZWFkQHNvbnkuY29tPgogCiAgICAgICAgIE5v
bi11bmlmaWVkIGJ1aWxkIGZpeGVzLCBlYXJseSBPY3RvYmVyIDIwMjAgZWRpdGlvbgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dURi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV1RGL0NoYW5nZUxvZwppbmRleCA3
MmI3MmRiOTRjYmI4Y2JiYzQ1ZGRmMmFhMTYxOTlhNGYyMTkyYjE4Li41ODQxNzU1NTgwOWJlM2E3
NjY0NDkwZWZjMWFhMmQ3ODIyMjgyYzNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL0NoYW5nZUxv
ZworKysgYi9Tb3VyY2UvV1RGL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDIwLTEwLTAy
ICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CisKKyAgICAgICAgW0pTQ10gSW50
cm9kdWNlIEpJVE9wZXJhdGlvbkxpc3QgdG8gdmFsaWRhdGUgSklULWNhZ2VkIHBvaW50ZXJzCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTcyNjEKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHd0Zi9QbGF0
Zm9ybUNhbGxpbmdDb252ZW50aW9ucy5oOgorICAgICAgICAqIHd0Zi9QbGF0Zm9ybUVuYWJsZS5o
OgorCiAyMDIwLTEwLTAxICBUcnVpdHQgU2F2ZWxsICA8dHNhdmVsbEBhcHBsZS5jb20+CiAKICAg
ICAgICAgVW5yZXZpZXdlZCwgcmV2ZXJ0aW5nIHIyNjc4NDEuCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODljNTky
NDM0Y2IxYjZmMDUzNWYzMTRlNjJlMmE4N2RlNmQ5NGQ2ZC4uZmI3YWUyZjA5YjQzZjQxNTI1MmM4
N2NjMmExOGRlY2JkNWU1Mzc0YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDIwLTEw
LTAyICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CisKKyAgICAgICAgW0pTQ10g
SW50cm9kdWNlIEpJVE9wZXJhdGlvbkxpc3QgdG8gdmFsaWRhdGUgSklULWNhZ2VkIHBvaW50ZXJz
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTcyNjEK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIEhlYWRl
cnMuY21ha2U6CisgICAgICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NQnVpbHRp
bkNvbnN0cnVjdG9yLmg6CisgICAgICAgICogYmluZGluZ3MvanMvSlNET01Db25zdHJ1Y3Rvci5o
OgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NTGVnYWN5RmFjdG9yeUZ1bmN0aW9uLmg6Cisg
ICAgICAgICogYmluZGluZ3MvanMvU2NyaXB0Q29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpTY3JpcHRDb250cm9sbGVyOjppbml0aWFsaXplTWFpblRocmVhZCk6CisgICAgICAgICog
YmluZGluZ3MvanMvV2ViQ29yZUpJVE9wZXJhdGlvbnMuY3BwOiBDb3BpZWQgZnJvbSBTb3VyY2Uv
V2ViS2l0L1NoYXJlZC9XZWJLaXQySW5pdGlhbGl6ZS5jcHAuCisgICAgICAgIChXZWJDb3JlOjpw
b3B1bGF0ZUpJVE9wZXJhdGlvbnMpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL1dlYkNvcmVKSVRP
cGVyYXRpb25zLmg6IENvcGllZCBmcm9tIFNvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYktpdDJJbml0
aWFsaXplLmNwcC4KKyAgICAgICAgKiBicmlkZ2Uvb2JqYy9XZWJTY3JpcHRPYmplY3QubW06Cisg
ICAgICAgICgrW1dlYlNjcmlwdE9iamVjdCBpbml0aWFsaXplXSk6CisgICAgICAgICogZG9taml0
L0pTRG9jdW1lbnRET01KSVQuY3BwOgorICAgICAgICAqIHBsYXRmb3JtL2NvY29hL1NoYXJlZEJ1
ZmZlckNvY29hLm1tOgorICAgICAgICAoK1tXZWJDb3JlU2hhcmVkQnVmZmVyRGF0YSBpbml0aWFs
aXplXSk6CisgICAgICAgICogcGxhdGZvcm0vaW9zL3dhay9XZWJDb3JlVGhyZWFkLm1tOgorICAg
ICAgICAoUnVuV2ViVGhyZWFkKToKKwogMjAyMC0xMC0wMSAgTWVnYW4gR2FyZG5lciAgPG1lZ2Fu
X2dhcmRuZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFJlcGFpbnQgYXMgbmVlZGVkIHdoZW4gYWRk
aW5nIGFuZCByZW1vdmluZyBoaWdobGlnaHRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGI4YjU3OGJlNzE5ZTlkMzQz
YTIzOWIyMjU2OTY0NzFhYWFmYTkzNmUuLjM2Y2VhMjhhODgxN2JhOWM3MzMyNWZiNTgyYmRiN2Q5
ODY0YTBmMTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjAtMTAtMDIgIFl1c3VrZSBT
dXp1a2kgIDx5c3V6dWtpQGFwcGxlLmNvbT4KKworICAgICAgICBbSlNDXSBJbnRyb2R1Y2UgSklU
T3BlcmF0aW9uTGlzdCB0byB2YWxpZGF0ZSBKSVQtY2FnZWQgcG9pbnRlcnMKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNzI2MQorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2hhcmVkL0FQSS9jL1dLU3Ry
aW5nLmNwcDoKKyAgICAgICAgKFdLU3RyaW5nQ29weUpTU3RyaW5nKToKKyAgICAgICAgKiBTaGFy
ZWQvQ29jb2EvV2ViS2l0MkluaXRpYWxpemVDb2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6cnVu
SW5pdGlhbGl6YXRpb25Db2RlKToKKyAgICAgICAgKiBTaGFyZWQvV2ViS2l0MkluaXRpYWxpemUu
Y3BwOgorICAgICAgICAoV2ViS2l0OjpJbml0aWFsaXplV2ViS2l0Mik6CisgICAgICAgICogU2hh
cmVkL1dlYktpdEpJVE9wZXJhdGlvbnMuY3BwOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViS2l0L1No
YXJlZC9XZWJLaXQySW5pdGlhbGl6ZS5jcHAuCisgICAgICAgIChXZWJLaXQ6OnBvcHVsYXRlSklU
T3BlcmF0aW9ucyk6CisgICAgICAgICogU2hhcmVkL1dlYktpdEpJVE9wZXJhdGlvbnMuaDogQ29w
aWVkIGZyb20gU291cmNlL1dlYktpdC9TaGFyZWQvV2ViS2l0MkluaXRpYWxpemUuY3BwLgorICAg
ICAgICAqIFNvdXJjZXMudHh0OgorICAgICAgICAqIFdlYktpdC54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qOgorCiAyMDIwLTEwLTAxICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAK
ICAgICAgICAgQWRkIGJhc2ljIGluZnJhc3RydWN0dXJlIGZvciBBdWRpb1dvcmtsZXQKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvbWFjL0NoYW5nZUxvZwppbmRleCBmMDdiMDRhNzAyMjA1ZDBmYjU4ZGZhNzBmOGRhNmM0
Mjc5MjhiMjJlLi42ZGUzMzk0ZjU4NmU0ZmFkNzhhMGE1ZjI0M2VmMTJiZDMxMmRhYjJjIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
YktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTAgQEAKKzIwMjAtMTAtMDIgIFl1
c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFwcGxlLmNvbT4KKworICAgICAgICBbSlNDXSBJbnRyb2R1
Y2UgSklUT3BlcmF0aW9uTGlzdCB0byB2YWxpZGF0ZSBKSVQtY2FnZWQgcG9pbnRlcnMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNzI2MQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogSGlzdG9yeS9XZWJC
YWNrRm9yd2FyZExpc3QubW06CisgICAgICAgICgrW1dlYkJhY2tGb3J3YXJkTGlzdCBpbml0aWFs
aXplXSk6CisgICAgICAgICogSGlzdG9yeS9XZWJIaXN0b3J5SXRlbS5tbToKKyAgICAgICAgKCtb
V2ViSGlzdG9yeUl0ZW0gaW5pdGlhbGl6ZV0pOgorICAgICAgICAqIE1pc2MvV2ViQ2FjaGUubW06
CisgICAgICAgICgrW1dlYkNhY2hlIGluaXRpYWxpemVdKToKKyAgICAgICAgKiBNaXNjL1dlYkVs
ZW1lbnREaWN0aW9uYXJ5Lm1tOgorICAgICAgICAoK1tXZWJFbGVtZW50RGljdGlvbmFyeSBpbml0
aWFsaXplXSk6CisgICAgICAgICogTWlzYy9XZWJJY29uRGF0YWJhc2UubW06CisgICAgICAgICog
TWlzYy9XZWJTdHJpbmdUcnVuY2F0b3IubW06CisgICAgICAgICgrW1dlYlN0cmluZ1RydW5jYXRv
ciBpbml0aWFsaXplXSk6CisgICAgICAgICogUGx1Z2lucy9Ib3N0ZWQvV2ViSG9zdGVkTmV0c2Nh
cGVQbHVnaW5WaWV3Lm1tOgorICAgICAgICAoK1tXZWJIb3N0ZWROZXRzY2FwZVBsdWdpblZpZXcg
aW5pdGlhbGl6ZV0pOgorICAgICAgICAqIFBsdWdpbnMvV2ViQmFzZU5ldHNjYXBlUGx1Z2luVmll
dy5tbToKKyAgICAgICAgKiBQbHVnaW5zL1dlYkJhc2VQbHVnaW5QYWNrYWdlLm1tOgorICAgICAg
ICAoK1tXZWJCYXNlUGx1Z2luUGFja2FnZSBpbml0aWFsaXplXSk6CisgICAgICAgICogUGx1Z2lu
cy9XZWJOZXRzY2FwZVBsdWdpblZpZXcubW06CisgICAgICAgICgrW1dlYk5ldHNjYXBlUGx1Z2lu
VmlldyBpbml0aWFsaXplXSk6CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xp
ZW50Lm1tOgorICAgICAgICAoK1tXZWJVbmRvU3RlcCBpbml0aWFsaXplXSk6CisgICAgICAgICog
V2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQubW06CisgICAgICAgICgrW1dlYkZy
YW1lUG9saWN5TGlzdGVuZXIgaW5pdGlhbGl6ZV0pOgorICAgICAgICAqIFdlYlZpZXcvV2ViQXJj
aGl2ZS5tbToKKyAgICAgICAgKCtbV2ViQXJjaGl2ZVByaXZhdGUgaW5pdGlhbGl6ZV0pOgorICAg
ICAgICAqIFdlYlZpZXcvV2ViRGF0YVNvdXJjZS5tbToKKyAgICAgICAgKCtbV2ViRGF0YVNvdXJj
ZSBpbml0aWFsaXplXSk6CisgICAgICAgICogV2ViVmlldy9XZWJIVE1MVmlldy5tbToKKyAgICAg
ICAgKCtbV2ViSFRNTFZpZXdQcml2YXRlIGluaXRpYWxpemVdKToKKyAgICAgICAgKCtbV2ViSFRN
TFZpZXcgaW5pdGlhbGl6ZV0pOgorICAgICAgICAqIFdlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW06
CisgICAgICAgICgrW1dlYlByZWZlcmVuY2VzIGluaXRpYWxpemVdKToKKyAgICAgICAgKiBXZWJW
aWV3L1dlYlJlc291cmNlLm1tOgorICAgICAgICAoK1tXZWJSZXNvdXJjZVByaXZhdGUgaW5pdGlh
bGl6ZV0pOgorICAgICAgICAqIFdlYlZpZXcvV2ViVGV4dEl0ZXJhdG9yLm1tOgorICAgICAgICAo
K1tXZWJUZXh0SXRlcmF0b3JQcml2YXRlIGluaXRpYWxpemVdKToKKyAgICAgICAgKiBXZWJWaWV3
L1dlYlZpZXcubW06CisgICAgICAgICgrW1dlYlZpZXcgaW5pdGlhbGl6ZV0pOgorICAgICAgICAq
IFdlYlZpZXcvV2ViVmlld0RhdGEubW06CisgICAgICAgICgrW1dlYlZpZXdQcml2YXRlIGluaXRp
YWxpemVdKToKKwogMjAyMC0xMC0wMSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgog
CiAgICAgICAgIEFkZCBiYXNpYyBpbmZyYXN0cnVjdHVyZSBmb3IgQXVkaW9Xb3JrbGV0CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0
TGVnYWN5L3dpbi9DaGFuZ2VMb2cKaW5kZXggMDRkNGEzOThiMzI3ZTRkOGZmMWM5MTk5NzViMzJk
ZjU0NmQ4Y2IzZS4uOWYwZDlkNzA2NGMwYTMxMWRiMzExNDEyOWFjNDYzYjQ2NGYzZWUzNSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS93aW4vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJLaXRMZWdhY3kvd2luL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDIwLTEwLTAyICBZ
dXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CisKKyAgICAgICAgW0pTQ10gSW50cm9k
dWNlIEpJVE9wZXJhdGlvbkxpc3QgdG8gdmFsaWRhdGUgSklULWNhZ2VkIHBvaW50ZXJzCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTcyNjEKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFdlYktpdENsYXNz
RmFjdG9yeS5jcHA6CisgICAgICAgIChXZWJLaXRDbGFzc0ZhY3Rvcnk6OldlYktpdENsYXNzRmFj
dG9yeSk6CisgICAgICAgICogV2ViVmlldy5jcHA6CisgICAgICAgIChXZWJWaWV3OjpXZWJWaWV3
KToKKwogMjAyMC0xMC0wMSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAg
ICAgIEFkZCBiYXNpYyBpbmZyYXN0cnVjdHVyZSBmb3IgQXVkaW9Xb3JrbGV0CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ01ha2VMaXN0cy50eHQKaW5kZXggODAwZGVmNGFhOWVjMjY5N2E1MDQxYjgwZGYwOGU3
MTA4NjIzNTIzYi4uNWI0YzU4NDhjNThjYTY2YmM2NTZlZGFhOGZmM2M5Y2ZmN2VjZjAxZiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9DTWFrZUxpc3RzLnR4dApAQCAtNDc0LDYgKzQ3NCw3IEBAIHNldChK
YXZhU2NyaXB0Q29yZV9QUklWQVRFX0ZSQU1FV09SS19IRUFERVJTCiAgICAgYXNzZW1ibGVyL0NQ
VS5oCiAgICAgYXNzZW1ibGVyL0NvZGVMb2NhdGlvbi5oCiAgICAgYXNzZW1ibGVyL0Zhc3RKSVRQ
ZXJtaXNzaW9ucy5oCisgICAgYXNzZW1ibGVyL0pJVE9wZXJhdGlvbkxpc3QuaAogICAgIGFzc2Vt
Ymxlci9MaW5rQnVmZmVyLmgKICAgICBhc3NlbWJsZXIvTUlQU0Fzc2VtYmxlci5oCiAgICAgYXNz
ZW1ibGVyL01JUFNSZWdpc3RlcnMuaApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L0phdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAz
N2ZlYmZmNjVhYjM2YjFlMDVmMzc4YTlmNDQ1ODQxOWU4ZTA0OTZkLi43ODk5ZDIwOWNiNzcxZjEx
NDY1YzZkNDQwNjBlY2RiNDZhZDU4NmZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpA
QCAtMTg4MSw2ICsxODgxLDcgQEAKIAkJRTNDNjk0QjMyMzAyNjg3NzAwNkZCRTQyIC8qIFdhc21P
U1JFbnRyeURhdGEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEUzQzY5NEIxMjMwMjY4NzMwMDZGQkU0MiAvKiBXYXNtT1NSRW50cnlEYXRhLmggKi87IH07
CiAJCUUzQzc5Q0FCMURCOUE0REMwMEQxRUNBNCAvKiBET01KSVRFZmZlY3QuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzQzc5Q0FBMURCOUE0RDYwMEQx
RUNBNCAvKiBET01KSVRFZmZlY3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OwogCQlFM0M4RUQ0MzIzQTFEQkNCMDAxMzE5NTggLyogSXNvSW5saW5lZEhl
YXBDZWxsVHlwZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gRTNDOEVENDIyM0ExREJDNTAwMTMxOTU4IC8qIElzb0lubGluZWRIZWFwQ2VsbFR5cGUuaCAq
LzsgfTsKKwkJRTNDQTNBNEUyNTI3QUIyRjAwNDgwMkJGIC8qIEpJVE9wZXJhdGlvbkxpc3QuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzQ0EzQTRDMjUy
N0FCMkYwMDQ4MDJCRiAvKiBKSVRPcGVyYXRpb25MaXN0LmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJRTNEMjM5QzkxQjgyOUMxQzAwQkJFRjY3IC8q
IEpTTW9kdWxlRW52aXJvbm1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEUzRDIzOUM3MUI4MjlDMUMwMEJCRUY2NyAvKiBKU01vZHVsZUVudmlyb25t
ZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJ
RTNEMzUxNUYyNDFCODlENzAwOERDMTZFIC8qIE1hcmtlZEpTVmFsdWVSZWZBcnJheS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTNEMzUxNUQyNDFCODlD
RTAwOERDMTZFIC8qIE1hcmtlZEpTVmFsdWVSZWZBcnJheS5oICovOyB9OwogCQlFM0Q4Nzc3NDFF
NjVDMEEwMDBCRTk0NUEgLyogQnl0ZWNvZGVEdW1wZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzRDg3NzcyMUU2NUMwODkwMEJFOTQ1QSAvKiBCeXRl
Y29kZUR1bXBlci5oICovOyB9OwpAQCAtNTEwNyw2ICs1MTA4LDggQEAKIAkJRTNDNzlDQUExREI5
QTRENjAwRDFFQ0E0IC8qIERPTUpJVEVmZmVjdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBET01KSVRFZmZlY3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTND
OEVENDEyM0ExREJDNDAwMTMxOTU4IC8qIElzb0hlYXBDZWxsVHlwZS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJc29IZWFwQ2VsbFR5cGUuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQlFM0M4RUQ0MjIzQTFEQkM1MDAxMzE5NTggLyogSXNvSW5saW5l
ZEhlYXBDZWxsVHlwZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJc29Jbmxp
bmVkSGVhcENlbGxUeXBlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUzQ0EzQTRC
MjUyN0FCMkUwMDQ4MDJCRiAvKiBKSVRPcGVyYXRpb25MaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpJVE9wZXJhdGlvbkxpc3QuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlFM0NBM0E0QzI1MjdBQjJGMDA0ODAyQkYgLyogSklUT3BlcmF0aW9u
TGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKSVRPcGVyYXRpb25MaXN0
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUzRDIzOUM2MUI4MjlDMUMwMEJCRUY2
NyAvKiBKU01vZHVsZUVudmlyb25tZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEpTTW9kdWxlRW52aXJvbm1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQlFM0QyMzlDNzFCODI5QzFDMDBCQkVGNjcgLyogSlNNb2R1bGVFbnZpcm9ubWVudC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU01vZHVsZUVudmlyb25tZW50Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUzRDI2NDI2MUQzOEMwNDIwMDBCRTE3NCAv
KiBCeXRlY29kZUdlbmVyYXRvcmlmaWNhdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBCeXRlY29kZUdlbmVyYXRvcmlmaWNhdGlvbi5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CkBAIC04Mjg0LDYgKzgyODcsOCBAQAogCQkJCTBGMzBEN0JGMUQ5NUQ2
MkYwMDUzMDg5RCAvKiBDUFUuaCAqLywKIAkJCQkwRjM3MzA4RTFDMENENjg1MDAwNTJCRkEgLyog
RGlzYWxsb3dNYWNyb1NjcmF0Y2hSZWdpc3RlclVzYWdlLmggKi8sCiAJCQkJNTI2N0NGODEyNDkz
MTZBRDAwMjJCRjZEIC8qIEZhc3RKSVRQZXJtaXNzaW9ucy5oICovLAorCQkJCUUzQ0EzQTRCMjUy
N0FCMkUwMDQ4MDJCRiAvKiBKSVRPcGVyYXRpb25MaXN0LmNwcCAqLywKKwkJCQlFM0NBM0E0QzI1
MjdBQjJGMDA0ODAyQkYgLyogSklUT3BlcmF0aW9uTGlzdC5oICovLAogCQkJCTBGRjQyNzU2MTU5
MTRBMjAwMDRDQjlGRiAvKiBMaW5rQnVmZmVyLmNwcCAqLywKIAkJCQk4NkQzQjNDMTEwMTU5RDdG
MDAyODY1RTcgLyogTGlua0J1ZmZlci5oICovLAogCQkJCTBGRUIzRUNFMTYyMzdGNjcwMEFCNjdB
RCAvKiBNYWNyb0Fzc2VtYmxlci5jcHAgKi8sCkBAIC05OTA1LDYgKzk5MTAsNyBAQAogCQkJCTc5
QUYwQkU0MUQzRUZENEMwMEU5NUZBNSAvKiBKSVRNYXRoSUNJbmxpbmVSZXN1bHQuaCBpbiBIZWFk
ZXJzICovLAogCQkJCUZFMTg3QTAyMUJGQkU1NjEwMDM4QkJDQSAvKiBKSVRNdWxHZW5lcmF0b3Iu
aCBpbiBIZWFkZXJzICovLAogCQkJCUZFOTlCMjQ5MUMyNEMzRDMwMEM4MjE1OSAvKiBKSVROZWdH
ZW5lcmF0b3IuaCBpbiBIZWFkZXJzICovLAorCQkJCUUzQ0EzQTRFMjUyN0FCMkYwMDQ4MDJCRiAv
KiBKSVRPcGVyYXRpb25MaXN0LmggaW4gSGVhZGVycyAqLywKIAkJCQkwRjI0RTU0RDE3RUUyNzQ5
MDBBQkIyMTcgLyogSklUT3BlcmF0aW9ucy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRkUzQTA2QzAx
QzExMDQxQTAwMzkwRkREIC8qIEpJVFJpZ2h0U2hpZnRHZW5lcmF0b3IuaCBpbiBIZWFkZXJzICov
LAogCQkJCTBGNzY2RDMxMTVBQTgxMTIwMDhGMzYzRSAvKiBKSVRTdHViUm91dGluZS5oIGluIEhl
YWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvU291cmNlcy50eHQg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvU291cmNlcy50eHQKaW5kZXggY2ZlNGVlZjc1ZGU2NTc0
MTAzZGU1MTMxMDMyMmI3ODcwYzE2N2Q5Yi4uNzExNDIxNGRhZDRlZjMxNzMwYmZlYTg0ZjE2Yzlj
YmJjMWQ5Y2MwMCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL1NvdXJjZXMudHh0
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9Tb3VyY2VzLnR4dApAQCAtNDYsNiArNDYsNyBA
QCBBUEkvT3BhcXVlSlNTdHJpbmcuY3BwCiBhc3NlbWJsZXIvQWJzdHJhY3RNYWNyb0Fzc2VtYmxl
ci5jcHAKIGFzc2VtYmxlci9Bc3NlbWJsZXJCdWZmZXIuY3BwCiBhc3NlbWJsZXIvQ1BVLmNwcAor
YXNzZW1ibGVyL0pJVE9wZXJhdGlvbkxpc3QuY3BwCiBhc3NlbWJsZXIvTGlua0J1ZmZlci5jcHAK
IGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlci5jcHAKIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckFS
TTY0LmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9KSVRP
cGVyYXRpb25MaXN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvSklUT3Bl
cmF0aW9uTGlzdC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTg5M2NhNjg5NjMyYzg0YTU2ZjMyYjFlZTc2MDZh
OTkxMDQ1Y2IxNAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3Nl
bWJsZXIvSklUT3BlcmF0aW9uTGlzdC5jcHAKQEAgLTAsMCArMSwxMDIgQEAKKy8qCisgKiBDb3B5
cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycg
QU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAor
ICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisj
aW5jbHVkZSAiSklUT3BlcmF0aW9uTGlzdC5oIgorCituYW1lc3BhY2UgSlNDIHsKKworTGF6eU5l
dmVyRGVzdHJveWVkPEpJVE9wZXJhdGlvbkxpc3Q+IGppdE9wZXJhdGlvbkxpc3Q7CisKKyNpZiBF
TkFCTEUoSklUX09QRVJBVElPTl9WQUxJREFUSU9OKQorZXh0ZXJuIGNvbnN0IHVpbnRwdHJfdCBz
dGFydE9mSG9zdEZ1bmN0aW9uc0luSlNDIF9fYXNtKCJzZWN0aW9uJHN0YXJ0JF9fREFUQV9DT05T
VCRfX2pzY19ob3N0Iik7CitleHRlcm4gY29uc3QgdWludHB0cl90IGVuZE9mSG9zdEZ1bmN0aW9u
c0luSlNDIF9fYXNtKCJzZWN0aW9uJGVuZCRfX0RBVEFfQ09OU1QkX19qc2NfaG9zdCIpOworZXh0
ZXJuIGNvbnN0IHVpbnRwdHJfdCBzdGFydE9mSklUT3BlcmF0aW9uc0luSlNDIF9fYXNtKCJzZWN0
aW9uJHN0YXJ0JF9fREFUQV9DT05TVCRfX2pzY19vcHMiKTsKK2V4dGVybiBjb25zdCB1aW50cHRy
X3QgZW5kT2ZKSVRPcGVyYXRpb25zSW5KU0MgX19hc20oInNlY3Rpb24kZW5kJF9fREFUQV9DT05T
VCRfX2pzY19vcHMiKTsKKyNlbmRpZgorCit2b2lkIEpJVE9wZXJhdGlvbkxpc3Q6OmluaXRpYWxp
emUoKQoreworICAgIGppdE9wZXJhdGlvbkxpc3QuY29uc3RydWN0KCk7Cit9CisKKyNpZiBFTkFC
TEUoSklUX09QRVJBVElPTl9WQUxJREFUSU9OKQorc3RhdGljIEFMV0FZU19JTkxJTkUgdm9pZCBh
ZGRQb2ludGVycyhIYXNoTWFwPHZvaWQqLCB2b2lkKj4mIG1hcCwgY29uc3QgdWludHB0cl90KiBi
ZWdpbkhvc3QsIGNvbnN0IHVpbnRwdHJfdCogZW5kSG9zdCwgY29uc3QgdWludHB0cl90KiBiZWdp
bk9wZXJhdGlvbnMsIGNvbnN0IHVpbnRwdHJfdCogZW5kT3BlcmF0aW9ucykKK3sKKyAgICBmb3Ig
KGNvbnN0IHVpbnRwdHJfdCogY3VycmVudCA9IGJlZ2luSG9zdDsgY3VycmVudCAhPSBlbmRIb3N0
OyArK2N1cnJlbnQpIHsKKyAgICAgICAgdm9pZCogY29kZVB0ciA9IHJlbW92ZUNvZGVQdHJUYWco
Yml0d2lzZV9jYXN0PHZvaWQqPigqY3VycmVudCkpOworICAgICAgICBhdXRvIHJlc3VsdCA9IG1h
cC5hZGQoY29kZVB0ciwgdGFnQ29kZVB0cihjb2RlUHRyLCBKU0VudHJ5UHRyVGFnKSk7CisgICAg
ICAgIEFTU0VSVChyZXN1bHQuaXNOZXdFbnRyeSk7CisgICAgfQorICAgIGZvciAoY29uc3QgdWlu
dHB0cl90KiBjdXJyZW50ID0gYmVnaW5PcGVyYXRpb25zOyBjdXJyZW50ICE9IGVuZE9wZXJhdGlv
bnM7ICsrY3VycmVudCkgeworICAgICAgICB2b2lkKiBjb2RlUHRyID0gcmVtb3ZlQ29kZVB0clRh
ZyhiaXR3aXNlX2Nhc3Q8dm9pZCo+KCpjdXJyZW50KSk7CisgICAgICAgIGF1dG8gcmVzdWx0ID0g
bWFwLmFkZChjb2RlUHRyLCB0YWdDb2RlUHRyKGNvZGVQdHIsIE9wZXJhdGlvblB0clRhZykpOwor
ICAgICAgICBBU1NFUlQocmVzdWx0LmlzTmV3RW50cnkpOworICAgIH0KK30KKyNlbmRpZgorCit2
b2lkIEpJVE9wZXJhdGlvbkxpc3Q6OnBvcHVsYXRlUG9pbnRlcnNJbkphdmFTY3JpcHRDb3JlKCkK
K3sKKyNpZiBFTkFCTEUoSklUX09QRVJBVElPTl9WQUxJREFUSU9OKQorICAgIHN0ZDo6b25jZV9m
bGFnIG9uY2VLZXk7CisgICAgc3RkOjpjYWxsX29uY2Uob25jZUtleSwgW10geworICAgICAgICBp
ZiAoT3B0aW9uczo6dXNlSklUKCkpCisgICAgICAgICAgICBhZGRQb2ludGVycyhqaXRPcGVyYXRp
b25MaXN0LT5tX3ZhbGlkYXRlZE9wZXJhdGlvbnMsICZzdGFydE9mSG9zdEZ1bmN0aW9uc0luSlND
LCAmZW5kT2ZIb3N0RnVuY3Rpb25zSW5KU0MsICZzdGFydE9mSklUT3BlcmF0aW9uc0luSlNDLCAm
ZW5kT2ZKSVRPcGVyYXRpb25zSW5KU0MpOworICAgIH0pOworI2VuZGlmCit9CisKK3ZvaWQgSklU
T3BlcmF0aW9uTGlzdDo6cG9wdWxhdGVQb2ludGVyc0luRW1iZWRkZXIxKGNvbnN0IHVpbnRwdHJf
dCogYmVnaW5Ib3N0LCBjb25zdCB1aW50cHRyX3QqIGVuZEhvc3QsIGNvbnN0IHVpbnRwdHJfdCog
YmVnaW5PcGVyYXRpb25zLCBjb25zdCB1aW50cHRyX3QqIGVuZE9wZXJhdGlvbnMpCit7CisgICAg
VU5VU0VEX1BBUkFNKGJlZ2luSG9zdCk7CisgICAgVU5VU0VEX1BBUkFNKGVuZEhvc3QpOworICAg
IFVOVVNFRF9QQVJBTShiZWdpbk9wZXJhdGlvbnMpOworICAgIFVOVVNFRF9QQVJBTShlbmRPcGVy
YXRpb25zKTsKKyNpZiBFTkFCTEUoSklUX09QRVJBVElPTl9WQUxJREFUSU9OKQorICAgIHN0ZDo6
b25jZV9mbGFnIG9uY2VLZXk7CisgICAgc3RkOjpjYWxsX29uY2Uob25jZUtleSwgWz1dIHsKKyAg
ICAgICAgaWYgKE9wdGlvbnM6OnVzZUpJVCgpKQorICAgICAgICAgICAgYWRkUG9pbnRlcnMoaml0
T3BlcmF0aW9uTGlzdC0+bV92YWxpZGF0ZWRPcGVyYXRpb25zLCBiZWdpbkhvc3QsIGVuZEhvc3Qs
IGJlZ2luT3BlcmF0aW9ucywgZW5kT3BlcmF0aW9ucyk7CisgICAgfSk7CisjZW5kaWYKK30KKwor
dm9pZCBKSVRPcGVyYXRpb25MaXN0Ojpwb3B1bGF0ZVBvaW50ZXJzSW5FbWJlZGRlcjIoY29uc3Qg
dWludHB0cl90KiBiZWdpbkhvc3QsIGNvbnN0IHVpbnRwdHJfdCogZW5kSG9zdCwgY29uc3QgdWlu
dHB0cl90KiBiZWdpbk9wZXJhdGlvbnMsIGNvbnN0IHVpbnRwdHJfdCogZW5kT3BlcmF0aW9ucykK
K3sKKyAgICBVTlVTRURfUEFSQU0oYmVnaW5Ib3N0KTsKKyAgICBVTlVTRURfUEFSQU0oZW5kSG9z
dCk7CisgICAgVU5VU0VEX1BBUkFNKGJlZ2luT3BlcmF0aW9ucyk7CisgICAgVU5VU0VEX1BBUkFN
KGVuZE9wZXJhdGlvbnMpOworI2lmIEVOQUJMRShKSVRfT1BFUkFUSU9OX1ZBTElEQVRJT04pCisg
ICAgc3RkOjpvbmNlX2ZsYWcgb25jZUtleTsKKyAgICBzdGQ6OmNhbGxfb25jZShvbmNlS2V5LCBb
PV0geworICAgICAgICBpZiAoT3B0aW9uczo6dXNlSklUKCkpCisgICAgICAgICAgICBhZGRQb2lu
dGVycyhqaXRPcGVyYXRpb25MaXN0LT5tX3ZhbGlkYXRlZE9wZXJhdGlvbnMsIGJlZ2luSG9zdCwg
ZW5kSG9zdCwgYmVnaW5PcGVyYXRpb25zLCBlbmRPcGVyYXRpb25zKTsKKyAgICB9KTsKKyNlbmRp
ZgorfQorCit9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9hc3NlbWJsZXIvSklUT3BlcmF0aW9uTGlzdC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2Fzc2VtYmxlci9KSVRPcGVyYXRpb25MaXN0LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOThmODM0ZTNiZmMxMzBm
NTRjODE3OGQ4ZTQzZGRhNGU4NzNmOTRlMgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9hc3NlbWJsZXIvSklUT3BlcmF0aW9uTGlzdC5oCkBAIC0wLDAgKzEsODEgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5D
LiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENP
TlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBC
VVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisg
KiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9u
Y2UKKworI2luY2x1ZGUgIkpTQ1B0clRhZy5oIgorI2luY2x1ZGUgIk9wdGlvbnMuaCIKKyNpbmNs
dWRlIDx3dGYvSGFzaE1hcC5oPgorI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgorCitu
YW1lc3BhY2UgSlNDIHsKKworY2xhc3MgSklUT3BlcmF0aW9uTGlzdCB7CitwdWJsaWM6CisgICAg
c3RhdGljIEpJVE9wZXJhdGlvbkxpc3QmIGluc3RhbmNlKCk7CisgICAgc3RhdGljIHZvaWQgaW5p
dGlhbGl6ZSgpOworCisgICAgdm9pZCogY29udGFpbnModm9pZCogcG9pbnRlcikgY29uc3QKKyAg
ICB7CisgICAgICAgIGlmIGNvbnN0ZXhwcihBU1NFUlRfRU5BQkxFRCkKKyAgICAgICAgICAgIHJl
dHVybiBtX3ZhbGlkYXRlZE9wZXJhdGlvbnMuZ2V0KHJlbW92ZUNvZGVQdHJUYWcocG9pbnRlcikp
OworICAgICAgICByZXR1cm4gcG9pbnRlcjsKKyAgICB9CisKKyAgICBzdGF0aWMgdm9pZCBwb3B1
bGF0ZVBvaW50ZXJzSW5KYXZhU2NyaXB0Q29yZSgpOworCisgICAgSlNfRVhQT1JUX1BSSVZBVEUg
c3RhdGljIHZvaWQgcG9wdWxhdGVQb2ludGVyc0luRW1iZWRkZXIxKGNvbnN0IHVpbnRwdHJfdCog
YmVnaW5Ib3N0LCBjb25zdCB1aW50cHRyX3QqIGVuZEhvc3QsIGNvbnN0IHVpbnRwdHJfdCogYmVn
aW5PcGVyYXRpb25zLCBjb25zdCB1aW50cHRyX3QqIGVuZE9wZXJhdGlvbnMpOworICAgIEpTX0VY
UE9SVF9QUklWQVRFIHN0YXRpYyB2b2lkIHBvcHVsYXRlUG9pbnRlcnNJbkVtYmVkZGVyMihjb25z
dCB1aW50cHRyX3QqIGJlZ2luSG9zdCwgY29uc3QgdWludHB0cl90KiBlbmRIb3N0LCBjb25zdCB1
aW50cHRyX3QqIGJlZ2luT3BlcmF0aW9ucywgY29uc3QgdWludHB0cl90KiBlbmRPcGVyYXRpb25z
KTsKKworICAgIC8vIEZJWE1FOiBDdXJyZW50bHksIGFzc2VydElzSG9zdEZ1bmN0aW9uIGFuZCBh
c3NlcnRJc0pJVE9wZXJhdGlvbiBhcmUgdGhlIHNhbWUuCisgICAgLy8gV2Ugd2lsbCBtYWtlIHRo
ZW0gd29yayBpbiBhIHN1YnNlcXVlbnQgcGF0Y2guCisgICAgdGVtcGxhdGU8dHlwZW5hbWUgVD4g
c3RhdGljIHZvaWQgYXNzZXJ0SXNIb3N0RnVuY3Rpb24oVCBmdW5jdGlvbikKKyAgICB7CisgICAg
ICAgIFVOVVNFRF9QQVJBTShmdW5jdGlvbik7CisjaWYgRU5BQkxFKEpJVF9PUEVSQVRJT05fVkFM
SURBVElPTikKKyAgICAgICAgQVNTRVJUKGZ1bmN0aW9uLCAhT3B0aW9uczo6dXNlSklUKCkgfHwg
SklUT3BlcmF0aW9uTGlzdDo6aW5zdGFuY2UoKS5jb250YWlucyhiaXR3aXNlX2Nhc3Q8dm9pZCo+
KGZ1bmN0aW9uKSkpOworI2VuZGlmCisgICAgfQorCisgICAgdGVtcGxhdGU8dHlwZW5hbWUgVD4g
c3RhdGljIHZvaWQgYXNzZXJ0SXNKSVRPcGVyYXRpb24oVCBmdW5jdGlvbikKKyAgICB7CisgICAg
ICAgIFVOVVNFRF9QQVJBTShmdW5jdGlvbik7CisjaWYgRU5BQkxFKEpJVF9PUEVSQVRJT05fVkFM
SURBVElPTikKKyAgICAgICAgQVNTRVJUKCFPcHRpb25zOjp1c2VKSVQoKSB8fCBKSVRPcGVyYXRp
b25MaXN0OjppbnN0YW5jZSgpLmNvbnRhaW5zKGJpdHdpc2VfY2FzdDx2b2lkKj4oZnVuY3Rpb24p
KSk7CisjZW5kaWYKKyAgICB9CisKK3ByaXZhdGU6CisgICAgSGFzaE1hcDx2b2lkKiwgdm9pZCo+
IG1fdmFsaWRhdGVkT3BlcmF0aW9uczsKK307CisKK2V4dGVybiBMYXp5TmV2ZXJEZXN0cm95ZWQ8
SklUT3BlcmF0aW9uTGlzdD4gaml0T3BlcmF0aW9uTGlzdDsKKworaW5saW5lIEpJVE9wZXJhdGlv
bkxpc3QmIEpJVE9wZXJhdGlvbkxpc3Q6Omluc3RhbmNlKCkKK3sKKyAgICByZXR1cm4gaml0T3Bl
cmF0aW9uTGlzdC5nZXQoKTsKK30KKworfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvanNjLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qc2Mu
Y3BwCmluZGV4IGQ1ODk2Yjk1MjI4NWI3NWVhN2EyYmVhMWU3ZGMxN2YxODBkNDEwMzIuLjUwNTc3
M2MwMTEwNDNmMjVkYjc0MGI2MTZmMTE1YzRmNjczYmIyOTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9qc2MuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qc2MuY3Bw
CkBAIC0zOSw2ICszOSw3IEBACiAjaW5jbHVkZSAiSW5pdGlhbGl6ZVRocmVhZGluZy5oIgogI2lu
Y2x1ZGUgIkludGVycHJldGVyLmgiCiAjaW5jbHVkZSAiSklULmgiCisjaW5jbHVkZSAiSklUT3Bl
cmF0aW9uTGlzdC5oIgogI2luY2x1ZGUgIkpTQXJyYXkuaCIKICNpbmNsdWRlICJKU0FycmF5QnVm
ZmVyLmgiCiAjaW5jbHVkZSAiSlNCaWdJbnQuaCIKQEAgLTM0MTEsNiArMzQxMiwxMyBAQCBpbnQg
cnVuSlNDKGNvbnN0IENvbW1hbmRMaW5lJiBvcHRpb25zLCBib29sIGlzV29ya2VyLCBjb25zdCBG
dW5jJiBmdW5jKQogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKKyNpZiBFTkFCTEUoSklUX09QRVJB
VElPTl9WQUxJREFUSU9OKQorZXh0ZXJuIGNvbnN0IHVpbnRwdHJfdCBzdGFydE9mSG9zdEZ1bmN0
aW9uc0luU2hlbGwgX19hc20oInNlY3Rpb24kc3RhcnQkX19EQVRBX0NPTlNUJF9fanNjX2hvc3Qi
KTsKK2V4dGVybiBjb25zdCB1aW50cHRyX3QgZW5kT2ZIb3N0RnVuY3Rpb25zSW5TaGVsbCBfX2Fz
bSgic2VjdGlvbiRlbmQkX19EQVRBX0NPTlNUJF9fanNjX2hvc3QiKTsKK2V4dGVybiBjb25zdCB1
aW50cHRyX3Qgc3RhcnRPZkpJVE9wZXJhdGlvbnNJblNoZWxsIF9fYXNtKCJzZWN0aW9uJHN0YXJ0
JF9fREFUQV9DT05TVCRfX2pzY19vcHMiKTsKK2V4dGVybiBjb25zdCB1aW50cHRyX3QgZW5kT2ZK
SVRPcGVyYXRpb25zSW5TaGVsbCBfX2FzbSgic2VjdGlvbiRlbmQkX19EQVRBX0NPTlNUJF9fanNj
X29wcyIpOworI2VuZGlmCisKIGludCBqc2NtYWluKGludCBhcmdjLCBjaGFyKiogYXJndikKIHsK
ICAgICAvLyBOZWVkIHRvIG92ZXJyaWRlIGFuZCBlbmFibGUgcmVzdHJpY3RlZCBvcHRpb25zIGJl
Zm9yZSB3ZSBzdGFydCBwYXJzaW5nIG9wdGlvbnMgYmVsb3cuCkBAIC0zNDMwLDYgKzM0MzgsMTAg
QEAgaW50IGpzY21haW4oaW50IGFyZ2MsIGNoYXIqKiBhcmd2KQogICAgIH0KIAogICAgIEpTQzo6
aW5pdGlhbGl6ZSgpOworI2lmIEVOQUJMRShKSVRfT1BFUkFUSU9OX1ZBTElEQVRJT04pCisgICAg
SlNDOjpKSVRPcGVyYXRpb25MaXN0Ojpwb3B1bGF0ZVBvaW50ZXJzSW5FbWJlZGRlcjEoJnN0YXJ0
T2ZIb3N0RnVuY3Rpb25zSW5TaGVsbCwgJmVuZE9mSG9zdEZ1bmN0aW9uc0luU2hlbGwsICZzdGFy
dE9mSklUT3BlcmF0aW9uc0luU2hlbGwsICZlbmRPZkpJVE9wZXJhdGlvbnNJblNoZWxsKTsKKyAg
ICBKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6OnBvcHVsYXRlUG9pbnRlcnNJbkVtYmVkZGVyMihudWxs
cHRyLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyKTsKKyNlbmRpZgogICAgIGluaXRpYWxpemVU
aW1lb3V0SWZOZWVkZWQoKTsKIAogI2lmIE9TKERBUldJTikgfHwgT1MoTElOVVgpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Jbml0aWFsaXplVGhyZWFkaW5nLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0luaXRpYWxpemVUaHJlYWRpbmcuY3Bw
CmluZGV4IGU1M2JmYjIzYzRhYjE1OTdiYWYzY2UwZDBlZGNhNThiZjgyNDU1MWIuLjkxNWJjNmM1
NDFiODdlZWY1YjA1Y2UzODNmN2E3YmI2OWVlNDFhZGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0luaXRpYWxpemVUaHJlYWRpbmcuY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0luaXRpYWxpemVUaHJlYWRpbmcuY3BwCkBAIC0zMCw2ICsz
MCw3IEBACiAjaW5jbHVkZSAiSW5pdGlhbGl6ZVRocmVhZGluZy5oIgogCiAjaW5jbHVkZSAiRXhl
Y3V0YWJsZUFsbG9jYXRvci5oIgorI2luY2x1ZGUgIkpJVE9wZXJhdGlvbkxpc3QuaCIKICNpbmNs
dWRlICJKU0NDb25maWcuaCIKICNpbmNsdWRlICJKU0NQdHJUYWcuaCIKICNpbmNsdWRlICJMTElu
dERhdGEuaCIKQEAgLTY0LDYgKzY1LDcgQEAgdm9pZCBpbml0aWFsaXplKCkKICNlbmRpZgogICAg
ICAgICB7CiAgICAgICAgICAgICBPcHRpb25zOjpBbGxvd1VuZmluYWxpemVkQWNjZXNzU2NvcGUg
c2NvcGU7CisgICAgICAgICAgICBKSVRPcGVyYXRpb25MaXN0Ojppbml0aWFsaXplKCk7CiAgICAg
ICAgICAgICBFeGVjdXRhYmxlQWxsb2NhdG9yOjppbml0aWFsaXplKCk7CiAgICAgICAgICAgICBW
TTo6Y29tcHV0ZUNhblVzZUpJVCgpOwogICAgICAgICAgICAgaWYgKCFnX2pzY0NvbmZpZy52bS5j
YW5Vc2VKSVQpIHsKQEAgLTczLDYgKzc1LDggQEAgdm9pZCBpbml0aWFsaXplKCkKICAgICAgICAg
fQogICAgICAgICBPcHRpb25zOjpmaW5hbGl6ZSgpOwogCisgICAgICAgIEpJVE9wZXJhdGlvbkxp
c3Q6OnBvcHVsYXRlUG9pbnRlcnNJbkphdmFTY3JpcHRDb3JlKCk7CisKICAgICAgICAgaWYgKE9w
dGlvbnM6OnVzZVNpZ2lsbENyYXNoQW5hbHl6ZXIoKSkKICAgICAgICAgICAgIGVuYWJsZVNpZ2ls
bENyYXNoQW5hbHl6ZXIoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b3R5cGVGdW5jdGlvbnMuaCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG90eXBl
RnVuY3Rpb25zLmgKaW5kZXggMGJhYjQ2MDU3Y2VhNDFlMjgwOWJkZTg3YTE5MjBjM2NiZjg4YWZh
ZS4uMGI2NmVkNjIyOTE3ZWRlMzY4MmVhMGFkM2Y0YTJmNDk1MGQxZTAxOSAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdQcm90
b3R5cGVGdW5jdGlvbnMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dl
bmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZUZ1bmN0aW9ucy5oCkBAIC0xMDAsNyArMTAwLDcg
QEAgaW5saW5lIHVuc2lnbmVkIGFyZ3VtZW50Q2xhbXBlZEluZGV4RnJvbVN0YXJ0T3JFbmQoSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwKIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUgVmlld0Ns
YXNzPgotSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3Rv
RnVuY1NldCwgKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1l
KiBjYWxsRnJhbWUpKQorQUxXQVlTX0lOTElORSBFbmNvZGVkSlNWYWx1ZSBnZW5lcmljVHlwZWRB
cnJheVZpZXdQcm90b0Z1bmNTZXQoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKIHsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJP
V19TQ09QRSh2bSk7CiAKQEAgLTE0Nyw3ICsxNDcsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJ
T04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jU2V0LCAoVk0mIHZtLCBKU0dsb2JhbE9i
agogfQogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBWaWV3Q2xhc3M+Ci1KU0NfREVGSU5FX0hPU1RfRlVO
Q1RJT04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jQ29weVdpdGhpbiwgKFZNJiB2bSwg
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpKQorQUxX
QVlTX0lOTElORSBFbmNvZGVkSlNWYWx1ZSBnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmND
b3B5V2l0aGluKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1l
KiBjYWxsRnJhbWUpCiB7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0p
OwogCkBAIC0xNzksNyArMTc5LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNU
eXBlZEFycmF5Vmlld1Byb3RvRnVuY0NvcHlXaXRoaW4sIChWTSYgdm0sIEpTR2wKIH0KIAogdGVt
cGxhdGU8dHlwZW5hbWUgVmlld0NsYXNzPgotSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVy
aWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY0luY2x1ZGVzLCAoVk0mIHZtLCBKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkpCitBTFdBWVNfSU5MSU5FIEVu
Y29kZWRKU1ZhbHVlIGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY0luY2x1ZGVzKFZNJiB2
bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpCiB7
CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCkBAIC0yMjQsNyAr
MjI0LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1By
b3RvRnVuY0luY2x1ZGVzLCAoVk0mIHZtLCBKU0dsb2IKIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUg
Vmlld0NsYXNzPgotSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmll
d1Byb3RvRnVuY0luZGV4T2YsIChWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IENhbGxGcmFtZSogY2FsbEZyYW1lKSkKK0FMV0FZU19JTkxJTkUgRW5jb2RlZEpTVmFsdWUgZ2Vu
ZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jSW5kZXhPZihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKQogewogICAgIGF1dG8gc2NvcGUg
PSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIApAQCAtMjYxLDcgKzI2MSw3IEBAIEpTQ19ERUZJ
TkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNJbmRleE9mLCAo
Vk0mIHZtLCBKU0dsb2JhCiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFZpZXdDbGFzcz4KLUpTQ19E
RUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNKb2luLCAo
Vk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFt
ZSkpCitBTFdBWVNfSU5MSU5FIEVuY29kZWRKU1ZhbHVlIGdlbmVyaWNUeXBlZEFycmF5Vmlld1By
b3RvRnVuY0pvaW4oVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJh
bWUqIGNhbGxGcmFtZSkKIHsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2
bSk7CiAKQEAgLTMwMCw3ICszMDAsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJp
Y1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jSm9pbiwgKFZNJiB2bSwgSlNHbG9iYWxPYgogfQogCiB0
ZW1wbGF0ZTx0eXBlbmFtZSBWaWV3Q2xhc3M+Ci1KU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2Vu
ZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jTGFzdEluZGV4T2YsIChWTSYgdm0sIEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKSkKK0FMV0FZU19JTkxJ
TkUgRW5jb2RlZEpTVmFsdWUgZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jTGFzdEluZGV4
T2YoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxG
cmFtZSkKIHsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKQEAg
LTM1MCw3ICszNTAsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVkQXJy
YXlWaWV3UHJvdG9GdW5jTGFzdEluZGV4T2YsIChWTSYgdm0sIEpTRwogfQogCiB0ZW1wbGF0ZTx0
eXBlbmFtZSBWaWV3Q2xhc3M+Ci1KU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVk
QXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jQnVmZmVyLCAoVk0mLCBKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkpCitBTFdBWVNfSU5MSU5FIEVuY29kZWRK
U1ZhbHVlIGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvR2V0dGVyRnVuY0J1ZmZlcihWTSYsIEpT
R2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKQogewogICAg
IC8vIDIyLjIuMy4zCiAgICAgVmlld0NsYXNzKiB0aGlzT2JqZWN0ID0ganNDYXN0PFZpZXdDbGFz
cyo+KGNhbGxGcmFtZS0+dGhpc1ZhbHVlKCkpOwpAQCAtMzU5LDcgKzM1OSw3IEBAIEpTQ19ERUZJ
TkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0dldHRlckZ1bmNCdWZm
ZXIsIChWTSYsIEpTR2xvCiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFZpZXdDbGFzcz4KLUpTQ19E
RUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0dldHRlckZ1bmNM
ZW5ndGgsIChWTSYsIEpTR2xvYmFsT2JqZWN0KiwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpKQorQUxX
QVlTX0lOTElORSBFbmNvZGVkSlNWYWx1ZSBnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0dldHRl
ckZ1bmNMZW5ndGgoVk0mLCBKU0dsb2JhbE9iamVjdCosIENhbGxGcmFtZSogY2FsbEZyYW1lKQog
ewogICAgIC8vIDIyLjIuMy4xNwogICAgIFZpZXdDbGFzcyogdGhpc09iamVjdCA9IGpzQ2FzdDxW
aWV3Q2xhc3MqPihjYWxsRnJhbWUtPnRoaXNWYWx1ZSgpKTsKQEAgLTM2OCw3ICszNjgsNyBAQCBK
U0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJG
dW5jTGVuZ3RoLCAoVk0mLCBKU0dsbwogfQogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBWaWV3Q2xhc3M+
Ci1KU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0
ZXJGdW5jQnl0ZUxlbmd0aCwgKFZNJiwgSlNHbG9iYWxPYmplY3QqLCBDYWxsRnJhbWUqIGNhbGxG
cmFtZSkpCitBTFdBWVNfSU5MSU5FIEVuY29kZWRKU1ZhbHVlIGdlbmVyaWNUeXBlZEFycmF5Vmll
d1Byb3RvR2V0dGVyRnVuY0J5dGVMZW5ndGgoVk0mLCBKU0dsb2JhbE9iamVjdCosIENhbGxGcmFt
ZSogY2FsbEZyYW1lKQogewogICAgIC8vIDIyLjIuMy4yCiAgICAgVmlld0NsYXNzKiB0aGlzT2Jq
ZWN0ID0ganNDYXN0PFZpZXdDbGFzcyo+KGNhbGxGcmFtZS0+dGhpc1ZhbHVlKCkpOwpAQCAtMzc3
LDcgKzM3Nyw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZp
ZXdQcm90b0dldHRlckZ1bmNCeXRlTGVuZ3RoLCAoVk0mLCBKCiB9CiAKIHRlbXBsYXRlPHR5cGVu
YW1lIFZpZXdDbGFzcz4KLUpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJh
eVZpZXdQcm90b0dldHRlckZ1bmNCeXRlT2Zmc2V0LCAoVk0mLCBKU0dsb2JhbE9iamVjdCosIENh
bGxGcmFtZSogY2FsbEZyYW1lKSkKK0FMV0FZU19JTkxJTkUgRW5jb2RlZEpTVmFsdWUgZ2VuZXJp
Y1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jQnl0ZU9mZnNldChWTSYsIEpTR2xvYmFsT2Jq
ZWN0KiwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpCiB7CiAgICAgLy8gMjIuMi4zLjMKICAgICBWaWV3
Q2xhc3MqIHRoaXNPYmplY3QgPSBqc0Nhc3Q8Vmlld0NsYXNzKj4oY2FsbEZyYW1lLT50aGlzVmFs
dWUoKSk7CkBAIC0zODYsNyArMzg2LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVy
aWNUeXBlZEFycmF5Vmlld1Byb3RvR2V0dGVyRnVuY0J5dGVPZmZzZXQsIChWTSYsIEoKIH0KIAog
dGVtcGxhdGU8dHlwZW5hbWUgVmlld0NsYXNzPgotSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdl
bmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY1JldmVyc2UsIChWTSYgdm0sIEpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKSkKK0FMV0FZU19JTkxJTkUg
RW5jb2RlZEpTVmFsdWUgZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jUmV2ZXJzZShWTSYg
dm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKQog
ewogLy8gICAgVk0mIHZtID0gZ2V0Vk0oZ2xvYmFsT2JqZWN0KTsKICAgICBhdXRvIHNjb3BlID0g
REVDTEFSRV9USFJPV19TQ09QRSh2bSk7CkBAIC00MDMsNyArNDAzLDcgQEAgSlNDX0RFRklORV9I
T1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY1JldmVyc2UsIChWTSYg
dm0sIEpTR2xvYmEKIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUgVmlld0NsYXNzPgotSlNDX0RFRklO
RV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1ByaXZhdGVGdW5jU29ydCwgKFZN
JiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUp
KQorQUxXQVlTX0lOTElORSBFbmNvZGVkSlNWYWx1ZSBnZW5lcmljVHlwZWRBcnJheVZpZXdQcml2
YXRlRnVuY1NvcnQoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJh
bWUqIGNhbGxGcmFtZSkKIHsKIC8vICAgIFZNJiB2bSA9IGdldFZNKGdsb2JhbE9iamVjdCk7CiAg
ICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwpAQCAtNDE5LDcgKzQxOSw3
IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcml2YXRl
RnVuY1NvcnQsIChWTSYgdm0sIEpTR2xvYmFsCiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFZpZXdD
bGFzcz4KLUpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90
b0Z1bmNTbGljZSwgKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZy
YW1lKiBjYWxsRnJhbWUpKQorQUxXQVlTX0lOTElORSBFbmNvZGVkSlNWYWx1ZSBnZW5lcmljVHlw
ZWRBcnJheVZpZXdQcm90b0Z1bmNTbGljZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKQogewogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJF
X1RIUk9XX1NDT1BFKHZtKTsKIApAQCAtNTEwLDcgKzUxMCw3IEBAIEpTQ19ERUZJTkVfSE9TVF9G
VU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNTbGljZSwgKFZNJiB2bSwgSlNH
bG9iYWxPCiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFZpZXdDbGFzcz4KLUpTQ19ERUZJTkVfSE9T
VF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcml2YXRlRnVuY1N1YmFycmF5Q3JlYXRl
LCAoVk0mdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZy
YW1lKSkKK0FMV0FZU19JTkxJTkUgRW5jb2RlZEpTVmFsdWUgZ2VuZXJpY1R5cGVkQXJyYXlWaWV3
UHJpdmF0ZUZ1bmNTdWJhcnJheUNyZWF0ZShWTSZ2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpCiB7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVf
VEhST1dfU0NPUEUodm0pOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9WTS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9WTS5jcHAKaW5kZXgg
Y2JjNzA2ZmY0ODYwMDBhZDY4ZjBlNmQzNDg1NzQ5ZmM2OWJlZDc4Mi4uOWI2NDRmODg5MmZiOWEw
MmQ0MTQxYTk5NjEwMzk1N2MxNmM2ZjMxYiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvVk0uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZN
LmNwcApAQCAtNzgsNiArNzgsNyBAQAogI2luY2x1ZGUgIklzb0hlYXBDZWxsVHlwZS5oIgogI2lu
Y2x1ZGUgIklzb0lubGluZWRIZWFwQ2VsbFR5cGUuaCIKICNpbmNsdWRlICJKSVRDb2RlLmgiCisj
aW5jbHVkZSAiSklUT3BlcmF0aW9uTGlzdC5oIgogI2luY2x1ZGUgIkpJVFRodW5rcy5oIgogI2lu
Y2x1ZGUgIkpJVFdvcmtsaXN0LmgiCiAjaW5jbHVkZSAiSlNBUElHbG9iYWxPYmplY3QuaCIKQEAg
LTgzMSw2ICs4MzIsNyBAQCBOYXRpdmVFeGVjdXRhYmxlKiBWTTo6Z2V0SG9zdEZ1bmN0aW9uKE5h
dGl2ZUZ1bmN0aW9uIGZ1bmN0aW9uLCBJbnRyaW5zaWMgaW50cmlucwogewogI2lmIEVOQUJMRShK
SVQpCiAgICAgaWYgKE9wdGlvbnM6OnVzZUpJVCgpKSB7CisgICAgICAgIEpJVE9wZXJhdGlvbkxp
c3Q6OmFzc2VydElzSG9zdEZ1bmN0aW9uKGZ1bmN0aW9uKTsKICAgICAgICAgcmV0dXJuIGppdFN0
dWJzLT5ob3N0RnVuY3Rpb25TdHViKAogICAgICAgICAgICAgKnRoaXMsIGZ1bmN0aW9uLCBjb25z
dHJ1Y3RvciwKICAgICAgICAgICAgIGludHJpbnNpYyAhPSBOb0ludHJpbnNpYyA/IHRodW5rR2Vu
ZXJhdG9yRm9ySW50cmluc2ljKGludHJpbnNpYykgOiBudWxscHRyLApkaWZmIC0tZ2l0IGEvU291
cmNlL1dURi93dGYvUGxhdGZvcm1DYWxsaW5nQ29udmVudGlvbnMuaCBiL1NvdXJjZS9XVEYvd3Rm
L1BsYXRmb3JtQ2FsbGluZ0NvbnZlbnRpb25zLmgKaW5kZXggNzU5NzcyOWY2NDEyNjZjNTJkYmQz
NWRkZDk5NzVmMjY3YmE2YzJlOS4uNDkzN2ViZjdjM2FiZWJmZjJmNmE2MDA2ZWQxZjI0NjM3ZjFk
MWIzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvUGxhdGZvcm1DYWxsaW5nQ29udmVudGlv
bnMuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUNhbGxpbmdDb252ZW50aW9ucy5oCkBA
IC00MiwxMyArNDIsMjAgQEAKICNkZWZpbmUgSlNDX0hPU1RfQ0FMTF9BVFRSSUJVVEVTCiAjZW5k
aWYKIAorI2lmIEVOQUJMRShKSVRfT1BFUkFUSU9OX1ZBTElEQVRJT04pCisjZGVmaW5lIEpTQ19B
Tk5PVEFURV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9uSWQsIGZ1bmN0aW9uKSBcCisgICAgY29uc3Rl
eHByIGF1dG8gZnVuY3Rpb25JZCBfX2F0dHJpYnV0ZV9fKCh1c2VkLCBzZWN0aW9uKCJfX0RBVEFf
Q09OU1QsX19qc2NfaG9zdCIpKSkgPSBmdW5jdGlvbjsKKyNlbHNlCisjZGVmaW5lIEpTQ19BTk5P
VEFURV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9uSWQsIGZ1bmN0aW9uKQorI2VuZGlmCisKICNkZWZp
bmUgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OX1dJVEhfQVRUUklCVVRFUyhmdW5jdGlvbk5hbWUs
IGF0dHJpYnV0ZXMsIHBhcmFtZXRlcnMpIFwKKyAgICBKU0NfQU5OT1RBVEVfSE9TVF9GVU5DVElP
TihfSklUVGFyZ2V0XyMjZnVuY3Rpb25OYW1lLCBzdGF0aWNfY2FzdDxKU0M6OkVuY29kZWRKU1Zh
bHVlKCopcGFyYW1ldGVycz4oZnVuY3Rpb25OYW1lKSk7IFwKICAgICBhdHRyaWJ1dGVzIEpTQzo6
RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTF9BVFRSSUJVVEVTIGZ1bmN0aW9uTmFtZSBwYXJh
bWV0ZXJzCiAjZGVmaW5lIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihmdW5jdGlvbk5hbWUsIHBh
cmFtZXRlcnMpIFwKICAgICBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT05fV0lUSF9BVFRSSUJVVEVT
KGZ1bmN0aW9uTmFtZSwgLCBwYXJhbWV0ZXJzKQogI2RlZmluZSBKU0NfREVDTEFSRV9IT1NUX0ZV
TkNUSU9OKGZ1bmN0aW9uTmFtZSkgXAogICAgIEpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1Rf
Q0FMTF9BVFRSSUJVVEVTIGZ1bmN0aW9uTmFtZShKU0M6OkpTR2xvYmFsT2JqZWN0KiwgSlNDOjpD
YWxsRnJhbWUqKQotI2RlZmluZSBKU0NfQU5OT1RBVEVfSE9TVF9GVU5DVElPTihmdW5jdGlvbklk
LCBmdW5jdGlvbikKIAogI2lmIENQVShYODYpICYmIE9TKFdJTkRPV1MpCiAjZGVmaW5lIENBTExJ
TkdfQ09OVkVOVElPTl9JU19TVERDQUxMIDEKQEAgLTgyLDE0ICs4OSwyMCBAQAogI2RlZmluZSBK
SVRfT1BFUkFUSU9OX0FUVFJJQlVURVMKICNlbmRpZgogCisjaWYgRU5BQkxFKEpJVF9PUEVSQVRJ
T05fVkFMSURBVElPTikKKyNkZWZpbmUgSlNDX0FOTk9UQVRFX0pJVF9PUEVSQVRJT04oZnVuY3Rp
b25JZCwgZnVuY3Rpb24pIFwKKyAgICBjb25zdGV4cHIgYXV0byAgZnVuY3Rpb25JZCBfX2F0dHJp
YnV0ZV9fKCh1c2VkLCBzZWN0aW9uKCJfX0RBVEFfQ09OU1QsX19qc2Nfb3BzIikpKSA9IGZ1bmN0
aW9uOworI2Vsc2UKKyNkZWZpbmUgSlNDX0FOTk9UQVRFX0pJVF9PUEVSQVRJT04oZnVuY3Rpb25J
ZCwgZnVuY3Rpb24pCisjZW5kaWYKIAogI2RlZmluZSBKU0NfREVGSU5FX0pJVF9PUEVSQVRJT05f
V0lUSF9BVFRSSUJVVEVTKGZ1bmN0aW9uTmFtZSwgYXR0cmlidXRlcywgcmV0dXJuVHlwZSwgcGFy
YW1ldGVycykgXAorICAgIEpTQ19BTk5PVEFURV9KSVRfT1BFUkFUSU9OKF9KSVRUYXJnZXRfIyNm
dW5jdGlvbk5hbWUsIHN0YXRpY19jYXN0PHJldHVyblR5cGUoKilwYXJhbWV0ZXJzPihmdW5jdGlv
bk5hbWUpKTsgXAogICAgIGF0dHJpYnV0ZXMgcmV0dXJuVHlwZSBKSVRfT1BFUkFUSU9OX0FUVFJJ
QlVURVMgZnVuY3Rpb25OYW1lIHBhcmFtZXRlcnMKICNkZWZpbmUgSlNDX0RFRklORV9KSVRfT1BF
UkFUSU9OKGZ1bmN0aW9uTmFtZSwgcmV0dXJuVHlwZSwgcGFyYW1ldGVycykgXAogICAgIEpTQ19E
RUZJTkVfSklUX09QRVJBVElPTl9XSVRIX0FUVFJJQlVURVMoZnVuY3Rpb25OYW1lLCAsIHJldHVy
blR5cGUsIHBhcmFtZXRlcnMpCiAjZGVmaW5lIEpTQ19ERUNMQVJFX0pJVF9PUEVSQVRJT04oZnVu
Y3Rpb25OYW1lLCByZXR1cm5UeXBlLCBwYXJhbWV0ZXJzKSBcCiAgICAgcmV0dXJuVHlwZSBKSVRf
T1BFUkFUSU9OX0FUVFJJQlVURVMgZnVuY3Rpb25OYW1lIHBhcmFtZXRlcnMgUkVGRVJFTkNFRF9G
Uk9NX0FTTSBXVEZfSU5URVJOQUwKLSNkZWZpbmUgSlNDX0FOTk9UQVRFX0pJVF9PUEVSQVRJT04o
ZnVuY3Rpb25JZCwgZnVuY3Rpb24pCiAKICNkZWZpbmUgSlNDX0RFQ0xBUkVfQ1VTVE9NX0dFVFRF
UihmdW5jdGlvbk5hbWUpIEpTQ19ERUNMQVJFX0pJVF9PUEVSQVRJT04oZnVuY3Rpb25OYW1lLCBK
U0M6OkVuY29kZWRKU1ZhbHVlLCAoSlNDOjpKU0dsb2JhbE9iamVjdCosIEpTQzo6RW5jb2RlZEpT
VmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKSkKICNkZWZpbmUgSlNDX0RFQ0xBUkVfQ1VTVE9NX1NF
VFRFUihmdW5jdGlvbk5hbWUpIEpTQ19ERUNMQVJFX0pJVF9PUEVSQVRJT04oZnVuY3Rpb25OYW1l
LCBib29sLCAoSlNDOjpKU0dsb2JhbE9iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6
RW5jb2RlZEpTVmFsdWUpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvUGxhdGZvcm1FbmFi
bGUuaCBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtRW5hYmxlLmgKaW5kZXggOTE2NmNmZGQ5NTU0
YjYwZjc3ODMyMjk0ZWVjNjllNmI4ODFkYzM5ZS4uNGEyMjViZDdiNzYwNDI0OGUzM2E2Mjc1Yzlj
OWRjODg0NjA2Y2FkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvUGxhdGZvcm1FbmFibGUu
aAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUVuYWJsZS5oCkBAIC04ODgsMyArODg4LDcg
QEAKICNpZiBDUFUoQVJNNjQpICYmIENQVShBRERSRVNTNjQpCiAjZGVmaW5lIFVTRV9KVU1QX0lT
TEFORFMgMQogI2VuZGlmCisKKyNpZiBPUyhEQVJXSU4pICYmIEVOQUJMRShKSVQpICYmIEFTU0VS
VF9FTkFCTEVECisjZGVmaW5lIEVOQUJMRV9KSVRfT1BFUkFUSU9OX1ZBTElEQVRJT04gMQorI2Vu
ZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlIGIvU291cmNlL1dl
YkNvcmUvSGVhZGVycy5jbWFrZQppbmRleCBjODc0OGEyMTYyN2NjMzM0Y2UyMmJlNDY5M2U2ZmM4
NTNmZTNhNjBkLi44ZjM4ZmY0ZmYyMmRiYTMyNTgyZjJlMTIxZTdkNjU4YzQxNjFjNjljIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L0hlYWRlcnMuY21ha2UKQEAgLTI1OCw2ICsyNTgsNyBAQCBzZXQoV2ViQ29yZV9QUklWQVRFX0ZS
QU1FV09SS19IRUFERVJTCiAgICAgYmluZGluZ3MvanMvU2NyaXB0V3JhcHBhYmxlSW5saW5lcy5o
CiAgICAgYmluZGluZ3MvanMvU2VyaWFsaXplZFNjcmlwdFZhbHVlLmgKICAgICBiaW5kaW5ncy9q
cy9TdHJpbmdBZGFwdG9ycy5oCisgICAgYmluZGluZ3MvanMvV2ViQ29yZUpJVE9wZXJhdGlvbnMu
aAogICAgIGJpbmRpbmdzL2pzL1dlYkNvcmVUeXBlZEFycmF5Q29udHJvbGxlci5oCiAgICAgYmlu
ZGluZ3MvanMvV2luZG93UHJveHkuaAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Tb3Vy
Y2VzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CmluZGV4IGM3ZWNmZGQxNTVjNTI4
MGQ1ODU0YmZiNTJiZWJlYTAyODRhZGI3YTMuLjQ0Nzk4ZTNlZDM4NTc5ZDRkNWY3MTEyYTMyZGJl
NDZhYTE5MDk0ZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CisrKyBi
L1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CkBAIC01OTMsNiArNTkzLDcgQEAgYmluZGluZ3Mv
anMvU2NyaXB0U3RhdGUuY3BwCiBiaW5kaW5ncy9qcy9TY3JpcHRXcmFwcGFibGUuY3BwCiBiaW5k
aW5ncy9qcy9TZXJpYWxpemVkU2NyaXB0VmFsdWUuY3BwCiBiaW5kaW5ncy9qcy9TdHJ1Y3R1cmVk
Q2xvbmUuY3BwCitiaW5kaW5ncy9qcy9XZWJDb3JlSklUT3BlcmF0aW9ucy5jcHAKIGJpbmRpbmdz
L2pzL1dlYkNvcmVKU0NsaWVudERhdGEuY3BwCiBiaW5kaW5ncy9qcy9XZWJDb3JlVHlwZWRBcnJh
eUNvbnRyb2xsZXIuY3BwCiBiaW5kaW5ncy9qcy9XaW5kb3dQcm94eS5jcHAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCBjYTAwZjll
MGEyNmJmMjFhOGJjYzlmZjU1MTAyMmY3NDc5ODEyMGRkLi45NThiYmU2ZWUyYTVlNTM0MjgyYWE0
MzU2NThiMDM3MTY4MDhlYjY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC00OTY1LDYgKzQ5NjUsNyBAQAogCQlFMzIzQ0ZGQTFF
NUFGNkFGMDBGMEI0QTAgLyogSlNET01Db252ZXJ0UHJvbWlzZS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTMyM0NGRjkxRTVBRjZBNTAwRjBCNEEwIC8q
IEpTRE9NQ29udmVydFByb21pc2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OwogCQlFMzU2NUI3QjFEQzJENkM5MDAyMTdEQkQgLyogSlNFdmVudEN1c3Rv
bS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTM0RUU0
OUYxREMyRDU3NTAwRUFBOUQzIC8qIEpTRXZlbnRDdXN0b20uaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlFMzU4MDJCNjFEQzg0MzVEMDBBOTc3M0Mg
LyogRE9NSklUSURMVHlwZUZpbHRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gRTM1ODAyQjUxREM4NDM1ODAwQTk3NzNDIC8qIERPTUpJVElETFR5cGVG
aWx0ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQlFMzU4MkMyODI1MjdGNjY5MDBEMUI3OTAgLyogV2ViQ29yZUpJVE9wZXJhdGlvbnMuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzNTgyQzI2MjUyN0Y2
NjgwMEQxQjc5MCAvKiBXZWJDb3JlSklUT3BlcmF0aW9ucy5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUUzNUI5MDdGMjNGNjBBNTAwMDAwMTFGRiAv
KiBMb2NhbGl6ZWREZXZpY2VNb2RlbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gRTM1QjkwN0MyM0Y2MDY3NzAwMDAxMUZGIC8qIExvY2FsaXplZERldmlj
ZU1vZGVsLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
IAkJRTM3N0ZFNEQxREFERTE2NTAwQ0REMDI1IC8qIE5vZGVDb25zdGFudHMuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzRDA0OTkzMURBREMwNDUwMDcx
OEYzQyAvKiBOb2RlQ29uc3RhbnRzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKIAkJRTM3Qzg2NTAxRUI2M0UzRjAwODdDNkNBIC8qIEpTRE9NUHJvbWlz
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTM3Qzg2
NEYxRUI2M0UyRDAwODdDNkNBIC8qIEpTRE9NUHJvbWlzZS5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBAIC0xNTgxMSw2ICsxNTgxMiw4IEBACiAJCUUz
MzQ4MjVFMURDOTNBQTAwMDlDOTU0NCAvKiBET01KSVRBYnN0cmFjdEhlYXBSZXBvc2l0b3J5Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IERPTUpJVEFic3RyYWN0SGVhcFJlcG9z
aXRvcnkuaDsgcGF0aCA9IERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvRE9NSklUQWJzdHJhY3RIZWFw
UmVwb3NpdG9yeS5oOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OwogCQlFMzRF
RTQ5RjFEQzJENTc1MDBFQUE5RDMgLyogSlNFdmVudEN1c3RvbS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBKU0V2ZW50Q3VzdG9tLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCUUzNTgwMkI1MURDODQzNTgwMEE5NzczQyAvKiBET01KSVRJRExUeXBlRmlsdGVyLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERPTUpJVElETFR5cGVGaWx0ZXIuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTM1ODJDMjQyNTI3RjY2ODAwRDFCNzkwIC8q
IFdlYkNvcmVKSVRPcGVyYXRpb25zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFdlYkNvcmVKSVRPcGVyYXRpb25zLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJRTM1ODJDMjYyNTI3RjY2ODAwRDFCNzkwIC8qIFdlYkNvcmVKSVRPcGVyYXRpb25zLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkNvcmVKSVRPcGVyYXRpb25zLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUzNUI5MDdDMjNGNjA2NzcwMDAwMTFGRiAv
KiBMb2NhbGl6ZWREZXZpY2VNb2RlbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBMb2NhbGl6ZWREZXZpY2VNb2RlbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlF
MzVCOTA3RTIzRjYwNjc3MDAwMDExRkYgLyogTG9jYWxpemVkRGV2aWNlTW9kZWwubW0gKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBMb2NhbGl6ZWREZXZpY2VNb2RlbC5t
bTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTM3Qzg2NEYxRUI2M0UyRDAwODdDNkNB
IC8qIEpTRE9NUHJvbWlzZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0RP
TVByb21pc2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTI2NDg5LDYgKzI2NDky
LDggQEAKIAkJCQk0MTRCODIwMjFENkRGMEQ5MDA3N0VCRTMgLyogU3RydWN0dXJlZENsb25lLmNw
cCAqLywKIAkJCQk0MTRCODIwMzFENkRGMEQ5MDA3N0VCRTMgLyogU3RydWN0dXJlZENsb25lLmgg
Ki8sCiAJCQkJNDE5QkU3NTIxQkM3RjNEQjAwRTFDODVCIC8qIFdlYkNvcmVCdWlsdGluTmFtZXMu
aCAqLywKKwkJCQlFMzU4MkMyNDI1MjdGNjY4MDBEMUI3OTAgLyogV2ViQ29yZUpJVE9wZXJhdGlv
bnMuY3BwICovLAorCQkJCUUzNTgyQzI2MjUyN0Y2NjgwMEQxQjc5MCAvKiBXZWJDb3JlSklUT3Bl
cmF0aW9ucy5oICovLAogCQkJCTBGN0RGMTQ3MUUyQkYxQTYwMDk1OTUxQiAvKiBXZWJDb3JlSlND
bGllbnREYXRhLmNwcCAqLywKIAkJCQlCQzUzRDkxMDExNDMxMENDMDAwRDgxN0UgLyogV2ViQ29y
ZUpTQ2xpZW50RGF0YS5oICovLAogCQkJCTBGMDk5RDA2MTdCOTY4QTEwMEZGODRCOSAvKiBXZWJD
b3JlVHlwZWRBcnJheUNvbnRyb2xsZXIuY3BwICovLApAQCAtMzQ0NTEsNiArMzQ0NTYsNyBAQAog
CQkJCUNEQzY5RERBMTYzNzFGRDQwMDdDMzhERiAvKiBXZWJDb3JlRnVsbFNjcmVlblBsYWNlaG9s
ZGVyVmlldy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0RDNjlERDYxNjMyMDI2QzAwN0MzOERGIC8q
IFdlYkNvcmVGdWxsU2NyZWVuV2FybmluZ1ZpZXcuaCBpbiBIZWFkZXJzICovLAogCQkJCUNEMTI3
REVFMTRGMzA5ODQwMEU4NDc3OSAvKiBXZWJDb3JlRnVsbFNjcmVlbldpbmRvdy5oIGluIEhlYWRl
cnMgKi8sCisJCQkJRTM1ODJDMjgyNTI3RjY2OTAwRDFCNzkwIC8qIFdlYkNvcmVKSVRPcGVyYXRp
b25zLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzM0OEJENDBEQjdGODA0MDA0QUJBQkIgLyogV2Vi
Q29yZUpTQnVpbHRpbkludGVybmFscy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkMzNDhCRDQwREI3
RjgwNDAwNEFCQUJBIC8qIFdlYkNvcmVKU0J1aWx0aW5zLmggaW4gSGVhZGVycyAqLywKIAkJCQlC
QzUzRDkxMTExNDMxMENDMDAwRDgxN0UgLyogV2ViQ29yZUpTQ2xpZW50RGF0YS5oIGluIEhlYWRl
cnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUJ1aWx0
aW5Db25zdHJ1Y3Rvci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CdWlsdGlu
Q29uc3RydWN0b3IuaAppbmRleCBmZjdhMDVkM2NiMjJmNzVhZWEwYjEzYzFlNDk2OGVlMWJkNWJm
Y2JkLi5kMWUxYmVmYmQ5Yzk1NDQ1NjM0NjVjY2I4OTBkYTQzNTk5YjdjNjZkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUJ1aWx0aW5Db25zdHJ1Y3Rvci5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQnVpbHRpbkNvbnN0cnVjdG9yLmgK
QEAgLTM3LDYgKzM3LDggQEAgdGVtcGxhdGU8dHlwZW5hbWUgSlNDbGFzcz4gY2xhc3MgSlNET01C
dWlsdGluQ29uc3RydWN0b3IgZmluYWwgOiBwdWJsaWMgSlNET01CdWkKICAgICAvLyBVc3VhbGx5
IGRlZmluZWQgZm9yIGVhY2ggc3BlY2lhbGl6YXRpb24gY2xhc3MuCiAgICAgc3RhdGljIEpTQzo6
SlNWYWx1ZSBwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYsIGNvbnN0IEpTRE9NR2xvYmFs
T2JqZWN0Jik7CiAKKyAgICBzdGF0aWMgSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
X0FUVFJJQlVURVMgY29uc3RydWN0KEpTQzo6SlNHbG9iYWxPYmplY3QqLCBKU0M6OkNhbGxGcmFt
ZSopOworCiBwcml2YXRlOgogICAgIEpTRE9NQnVpbHRpbkNvbnN0cnVjdG9yKEpTQzo6U3RydWN0
dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiAgICAgICAg
IDogQmFzZShzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCkKQEAgLTQ1LDcgKzQ3LDYgQEAgdGVtcGxh
dGU8dHlwZW5hbWUgSlNDbGFzcz4gY2xhc3MgSlNET01CdWlsdGluQ29uc3RydWN0b3IgZmluYWwg
OiBwdWJsaWMgSlNET01CdWkKIAogICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oSlNDOjpWTSYsIEpT
RE9NR2xvYmFsT2JqZWN0Jik7CiAgICAgc3RhdGljIEpTQzo6Q2FsbERhdGEgZ2V0Q29uc3RydWN0
RGF0YShKU0M6OkpTQ2VsbCopOwotICAgIHN0YXRpYyBKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19I
T1NUX0NBTExfQVRUUklCVVRFUyBjb25zdHJ1Y3QoSlNDOjpKU0dsb2JhbE9iamVjdCosIEpTQzo6
Q2FsbEZyYW1lKik7CiAKICAgICBKU0M6OkVuY29kZWRKU1ZhbHVlIGNhbGxDb25zdHJ1Y3RvcihK
U0M6OkpTR2xvYmFsT2JqZWN0JiwgSlNDOjpDYWxsRnJhbWUmLCBKU0M6OkpTT2JqZWN0Jik7CiAg
ICAgSlNDOjpFbmNvZGVkSlNWYWx1ZSBjYWxsQ29uc3RydWN0b3IoSlNDOjpKU0dsb2JhbE9iamVj
dCYsIEpTQzo6Q2FsbEZyYW1lJiwgSlNDOjpKU09iamVjdCopOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01Db25zdHJ1Y3Rvci5oIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNET01Db25zdHJ1Y3Rvci5oCmluZGV4IGFjZjkxOTBlYTc5ZmJhODU3YTZm
MGEyNGE3YmQyYzFjMDYzNzYyYTkuLjQ2MjM0ZDJhNGI3YjMyMTg4OGEwZTI0ZmI5ZTVhZDJkZmEz
OTgwMmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQ29uc3Ry
dWN0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUNvbnN0cnVjdG9y
LmgKQEAgLTM1LDYgKzM1LDkgQEAgdGVtcGxhdGU8dHlwZW5hbWUgSlNDbGFzcz4gY2xhc3MgSlNE
T01Db25zdHJ1Y3RvciBmaW5hbCA6IHB1YmxpYyBKU0RPTUNvbnN0cnVjdG8KICAgICAvLyBNdXN0
IGJlIGRlZmluZWQgZm9yIGVhY2ggc3BlY2lhbGl6YXRpb24gY2xhc3MuCiAgICAgc3RhdGljIEpT
Qzo6SlNWYWx1ZSBwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYsIGNvbnN0IEpTRE9NR2xv
YmFsT2JqZWN0Jik7CiAKKyAgICAvLyBNdXN0IGJlIGRlZmluZWQgZm9yIGVhY2ggc3BlY2lhbGl6
YXRpb24gY2xhc3MuCisgICAgc3RhdGljIEpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FM
TF9BVFRSSUJVVEVTIGNvbnN0cnVjdChKU0M6OkpTR2xvYmFsT2JqZWN0KiwgSlNDOjpDYWxsRnJh
bWUqKTsKKwogcHJpdmF0ZToKICAgICBKU0RPTUNvbnN0cnVjdG9yKEpTQzo6U3RydWN0dXJlKiBz
dHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiAgICAgICAgIDogQmFz
ZShzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCkKQEAgLTQ2LDggKzQ5LDYgQEAgdGVtcGxhdGU8dHlw
ZW5hbWUgSlNDbGFzcz4gY2xhc3MgSlNET01Db25zdHJ1Y3RvciBmaW5hbCA6IHB1YmxpYyBKU0RP
TUNvbnN0cnVjdG8KIAogICAgIC8vIFVzdWFsbHkgZGVmaW5lZCBmb3IgZWFjaCBzcGVjaWFsaXph
dGlvbiBjbGFzcy4KICAgICB2b2lkIGluaXRpYWxpemVQcm9wZXJ0aWVzKEpTQzo6Vk0mLCBKU0RP
TUdsb2JhbE9iamVjdCYpIHsgfQotICAgIC8vIE11c3QgYmUgZGVmaW5lZCBmb3IgZWFjaCBzcGVj
aWFsaXphdGlvbiBjbGFzcy4KLSAgICBzdGF0aWMgSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9T
VF9DQUxMX0FUVFJJQlVURVMgY29uc3RydWN0KEpTQzo6SlNHbG9iYWxPYmplY3QqLCBKU0M6OkNh
bGxGcmFtZSopOwogfTsKIAogdGVtcGxhdGU8dHlwZW5hbWUgSlNDbGFzcz4gaW5saW5lIEpTRE9N
Q29uc3RydWN0b3I8SlNDbGFzcz4qIEpTRE9NQ29uc3RydWN0b3I8SlNDbGFzcz46OmNyZWF0ZShK
U0M6OlZNJiB2bSwgSlNDOjpTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3Qm
IGdsb2JhbE9iamVjdCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
RE9NTGVnYWN5RmFjdG9yeUZ1bmN0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U0RPTUxlZ2FjeUZhY3RvcnlGdW5jdGlvbi5oCmluZGV4IDc4MzFiZjI4OWVmNjg0NTllNzNmMmYz
OTUwMzkxZThiMzhjMWI5MjcuLmEyMWYxZmQ5ODc1NTBkOTMxMjgzODFiYjJmMTc0MDM4YjE4ODEw
ODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NTGVnYWN5RmFj
dG9yeUZ1bmN0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01MZWdh
Y3lGYWN0b3J5RnVuY3Rpb24uaApAQCAtMzYsNiArMzYsOSBAQCB0ZW1wbGF0ZTx0eXBlbmFtZSBK
U0NsYXNzPiBjbGFzcyBKU0RPTUxlZ2FjeUZhY3RvcnlGdW5jdGlvbiBmaW5hbCA6IHB1YmxpYyBK
U0RPTQogICAgIC8vIE11c3QgYmUgZGVmaW5lZCBmb3IgZWFjaCBzcGVjaWFsaXphdGlvbiBjbGFz
cy4KICAgICBzdGF0aWMgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZN
JiwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmKTsKIAorICAgIC8vIE11c3QgYmUgZGVmaW5lZCBm
b3IgZWFjaCBzcGVjaWFsaXphdGlvbiBjbGFzcy4KKyAgICBzdGF0aWMgSlNDOjpFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJQlVURVMgY29uc3RydWN0KEpTQzo6SlNHbG9iYWxPYmpl
Y3QqLCBKU0M6OkNhbGxGcmFtZSopOworCiBwcml2YXRlOgogICAgIEpTRE9NTGVnYWN5RmFjdG9y
eUZ1bmN0aW9uKEpTQzo6U3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBn
bG9iYWxPYmplY3QpCiAgICAgICAgIDogQmFzZShzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCkKQEAg
LTQ3LDggKzUwLDYgQEAgdGVtcGxhdGU8dHlwZW5hbWUgSlNDbGFzcz4gY2xhc3MgSlNET01MZWdh
Y3lGYWN0b3J5RnVuY3Rpb24gZmluYWwgOiBwdWJsaWMgSlNET00KIAogICAgIC8vIFVzdWFsbHkg
ZGVmaW5lZCBmb3IgZWFjaCBzcGVjaWFsaXphdGlvbiBjbGFzcy4KICAgICB2b2lkIGluaXRpYWxp
emVQcm9wZXJ0aWVzKEpTQzo6Vk0mLCBKU0RPTUdsb2JhbE9iamVjdCYpIHsgfQotICAgIC8vIE11
c3QgYmUgZGVmaW5lZCBmb3IgZWFjaCBzcGVjaWFsaXphdGlvbiBjbGFzcy4KLSAgICBzdGF0aWMg
SlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJQlVURVMgY29uc3RydWN0KEpT
Qzo6SlNHbG9iYWxPYmplY3QqLCBKU0M6OkNhbGxGcmFtZSopOwogfTsKIAogdGVtcGxhdGU8dHlw
ZW5hbWUgSlNDbGFzcz4gaW5saW5lIEpTRE9NTGVnYWN5RmFjdG9yeUZ1bmN0aW9uPEpTQ2xhc3M+
KiBKU0RPTUxlZ2FjeUZhY3RvcnlGdW5jdGlvbjxKU0NsYXNzPjo6Y3JlYXRlKEpTQzo6Vk0mIHZt
LCBKU0M6OlN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2Jq
ZWN0KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0Q29udHJv
bGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHRDb250cm9sbGVyLmNw
cAppbmRleCA3MTY1NWViYjM5YTk4OGZlMGFmZTU3ZmUwZDVlNzQyYTliYjM2ZTBhLi5jNzRlYjEw
ZWRhOTgzNzhlZWIxMmM5NTMyMGI0M2NhYmJhN2Q3NmYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9TY3JpcHRDb250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9TY3JpcHRDb250cm9sbGVyLmNwcApAQCAtNTYsNiArNTYsNyBAQAogI2lu
Y2x1ZGUgIlNjcmlwdGFibGVEb2N1bWVudFBhcnNlci5oIgogI2luY2x1ZGUgIlNldHRpbmdzLmgi
CiAjaW5jbHVkZSAiVXNlckdlc3R1cmVJbmRpY2F0b3IuaCIKKyNpbmNsdWRlICJXZWJDb3JlSklU
T3BlcmF0aW9ucy5oIgogI2luY2x1ZGUgIldlYkNvcmVKU0NsaWVudERhdGEuaCIKICNpbmNsdWRl
ICJucHJ1bnRpbWVfaW1wbC5oIgogI2luY2x1ZGUgInJ1bnRpbWVfcm9vdC5oIgpAQCAtODcsNiAr
ODgsNyBAQCB2b2lkIFNjcmlwdENvbnRyb2xsZXI6OmluaXRpYWxpemVNYWluVGhyZWFkKCkKICNp
ZiAhUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICBKU0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6
OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRp
b25zKCk7CiAjZW5kaWYKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvV2ViQ29yZUpJVE9wZXJhdGlvbnMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
V2ViQ29yZUpJVE9wZXJhdGlvbnMuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU2NTU5ODUwYjljOWE0YzU2OTMz
MTk5ZWE3MzZkMDE0MTQ1Mjk4MDYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9XZWJDb3JlSklUT3BlcmF0aW9ucy5jcHAKQEAgLTAsMCArMSw0NyBAQAorLyoK
KyAqIENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJXZWJDb3JlSklUT3BlcmF0
aW9ucy5oIgorCisjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSklUT3BlcmF0aW9uTGlzdC5oPgor
CituYW1lc3BhY2UgV2ViQ29yZSB7CisKKyNpZiBFTkFCTEUoSklUX09QRVJBVElPTl9WQUxJREFU
SU9OKQorZXh0ZXJuIGNvbnN0IHVpbnRwdHJfdCBzdGFydE9mSG9zdEZ1bmN0aW9uc0luV2ViQ29y
ZSBfX2FzbSgic2VjdGlvbiRzdGFydCRfX0RBVEFfQ09OU1QkX19qc2NfaG9zdCIpOworZXh0ZXJu
IGNvbnN0IHVpbnRwdHJfdCBlbmRPZkhvc3RGdW5jdGlvbnNJbldlYkNvcmUgX19hc20oInNlY3Rp
b24kZW5kJF9fREFUQV9DT05TVCRfX2pzY19ob3N0Iik7CitleHRlcm4gY29uc3QgdWludHB0cl90
IHN0YXJ0T2ZKSVRPcGVyYXRpb25zSW5XZWJDb3JlIF9fYXNtKCJzZWN0aW9uJHN0YXJ0JF9fREFU
QV9DT05TVCRfX2pzY19vcHMiKTsKK2V4dGVybiBjb25zdCB1aW50cHRyX3QgZW5kT2ZKSVRPcGVy
YXRpb25zSW5XZWJDb3JlIF9fYXNtKCJzZWN0aW9uJGVuZCRfX0RBVEFfQ09OU1QkX19qc2Nfb3Bz
Iik7CisjZW5kaWYKKwordm9pZCBwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKQoreworI2lmIEVOQUJM
RShKSVRfT1BFUkFUSU9OX1ZBTElEQVRJT04pCisgICAgSlNDOjpKSVRPcGVyYXRpb25MaXN0Ojpw
b3B1bGF0ZVBvaW50ZXJzSW5FbWJlZGRlcjEoJnN0YXJ0T2ZIb3N0RnVuY3Rpb25zSW5XZWJDb3Jl
LCAmZW5kT2ZIb3N0RnVuY3Rpb25zSW5XZWJDb3JlLCAmc3RhcnRPZkpJVE9wZXJhdGlvbnNJbldl
YkNvcmUsICZlbmRPZkpJVE9wZXJhdGlvbnNJbldlYkNvcmUpOworI2VuZGlmCit9CisKK30KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVKSVRPcGVyYXRpb25z
LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSklUT3BlcmF0aW9ucy5oCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjE5MGE4NDI0ODM5NmMxZjYzMDIxN2NkNTg0NTFjNWIwMGVkN2ZjM2MKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSklUT3BlcmF0
aW9ucy5oCkBAIC0wLDAgKzEsMzIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
CisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycK
KyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisg
KiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworbmFt
ZXNwYWNlIFdlYkNvcmUgeworCitXRUJDT1JFX0VYUE9SVCB2b2lkIHBvcHVsYXRlSklUT3BlcmF0
aW9ucygpOworCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9XZWJT
Y3JpcHRPYmplY3QubW0gYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9XZWJTY3JpcHRPYmpl
Y3QubW0KaW5kZXggYjJlNWNhNThkM2VkYjFlYTkzMzFkZDQ2ODk1MjExNzY5ZDZkYTdlYy4uM2Ex
MDYyYTEzMTZhYTQ5ZTc1YmE5MmQzYjNlYjZjNzcxOWFjYmExMSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYnJpZGdlL29iamMvV2ViU2NyaXB0T2JqZWN0Lm1tCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2JyaWRnZS9vYmpjL1dlYlNjcmlwdE9iamVjdC5tbQpAQCAtMzUsNiArMzUsNyBAQAogI2lt
cG9ydCAiSlNIVE1MRWxlbWVudC5oIgogI2ltcG9ydCAiSlNQbHVnaW5FbGVtZW50RnVuY3Rpb25z
LmgiCiAjaW1wb3J0ICJPYmpDUnVudGltZU9iamVjdC5oIgorI2ltcG9ydCAiV2ViQ29yZUpJVE9w
ZXJhdGlvbnMuaCIKICNpbXBvcnQgIldlYkNvcmVPYmpDRXh0cmFzLmgiCiAjaW1wb3J0ICJvYmpj
X2luc3RhbmNlLmgiCiAjaW1wb3J0ICJydW50aW1lX29iamVjdC5oIgpAQCAtMTY2LDYgKzE2Nyw3
IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogI2lmICFVU0UoV0VCX1RIUkVBRCkKICAgICBKU0M6Omlu
aXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAgV2ViQ29y
ZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAjZW5kaWYKIH0KIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvZG9taml0L0pTRG9jdW1lbnRET01KSVQuY3BwIGIvU291cmNlL1dlYkNvcmUv
ZG9taml0L0pTRG9jdW1lbnRET01KSVQuY3BwCmluZGV4IGY4ZTg1NGZhMTY2NzVkZDU4MzliMzI1
Y2ZlMjhhY2UyZjJhNTM2MzMuLmZmMTZjNWFjMDc0NDViYzI5YjczMTk4YTI2YTBiNWE3NTc4YmZj
ODAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbWppdC9KU0RvY3VtZW50RE9NSklULmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb21qaXQvSlNEb2N1bWVudERPTUpJVC5jcHAKQEAgLTE0
MCw2ICsxNDAsOCBAQCBSZWY8SlNDOjpET01KSVQ6OkNhbGxET01HZXR0ZXJTbmlwcGV0PiBjb21w
aWxlRG9jdW1lbnRCb2R5QXR0cmlidXRlKCkKICAgICByZXR1cm4gc25pcHBldDsKIH0KIAorbmFt
ZXNwYWNlIERPTUpJVCB7CisKIGV4dGVybiAiQyIgewogCiBKU0NfREVGSU5FX0pJVF9PUEVSQVRJ
T04ob3BlcmF0aW9uVG9KU0VsZW1lbnQsIEpTQzo6RW5jb2RlZEpTVmFsdWUsIChKU0M6OkpTR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIHZvaWQqIHJlc3VsdCkpCkBAIC0xOTQsNiArMTk2LDYg
QEAgSlNDX0RFRklORV9KSVRfT1BFUkFUSU9OKG9wZXJhdGlvblRvSlNDb250YWluZXJOb2RlLCBK
U0M6OkVuY29kZWRKU1ZhbHVlLCAoSlNDOjoKIAogfQogCi19Cit9IH0KIAogI2VuZGlmCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TaGFyZWRCdWZmZXJDb2NvYS5t
bSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1NoYXJlZEJ1ZmZlckNvY29hLm1tCmlu
ZGV4IDhmOGU1MzNlMDQwMzY2ZmMxOWM1NDhjYWY4ZDExNjJmNTA5ZWFkM2QuLjI4MTAwNTNkZTdj
OTcwMjk4M2JkMDQzMDljZDkwZWM0ZTkxNDllMWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2NvY29hL1NoYXJlZEJ1ZmZlckNvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2NvY29hL1NoYXJlZEJ1ZmZlckNvY29hLm1tCkBAIC0yNiw2ICsyNiw3IEBACiAj
aW1wb3J0ICJjb25maWcuaCIKICNpbXBvcnQgIlNoYXJlZEJ1ZmZlci5oIgogCisjaW1wb3J0ICJX
ZWJDb3JlSklUT3BlcmF0aW9ucy5oIgogI2ltcG9ydCAiV2ViQ29yZU9iakNFeHRyYXMuaCIKICNp
bXBvcnQgPEphdmFTY3JpcHRDb3JlL0luaXRpYWxpemVUaHJlYWRpbmcuaD4KICNpbXBvcnQgPHN0
cmluZy5oPgpAQCAtNDYsNiArNDcsNyBAQCArICh2b2lkKWluaXRpYWxpemUKICNpZiAhVVNFKFdF
Ql9USFJFQUQpCiAgICAgSlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFsaXplTWFp
blRocmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogI2VuZGlm
IC8vICFVU0UoV0VCX1RIUkVBRCkKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vaW9zL3dhay9XZWJDb3JlVGhyZWFkLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
aW9zL3dhay9XZWJDb3JlVGhyZWFkLm1tCmluZGV4IDVhZDdmZTUxOThkMjRjMzAzNjZhMjMwYTA5
NzMyNGM0YTI1YzY5NGQuLjdhNjZiNTFiMTJlMTA2ZWMzNTRlMWQ1ZDQzZGJkNmMxY2Q1NjA2Yjcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy93YWsvV2ViQ29yZVRocmVh
ZC5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3Mvd2FrL1dlYkNvcmVUaHJlYWQu
bW0KQEAgLTM1LDYgKzM1LDcgQEAKICNpbXBvcnQgIlRocmVhZEdsb2JhbERhdGEuaCIKICNpbXBv
cnQgIldBS1dpbmRvdy5oIgogI2ltcG9ydCAiV0tVdGlsaXRpZXMuaCIKKyNpbXBvcnQgIldlYkNv
cmVKSVRPcGVyYXRpb25zLmgiCiAjaW1wb3J0ICJXZWJDb3JlVGhyZWFkSW50ZXJuYWwuaCIKICNp
bXBvcnQgIldlYkNvcmVUaHJlYWRNZXNzYWdlLmgiCiAjaW1wb3J0ICJXZWJDb3JlVGhyZWFkUnVu
LmgiCkBAIC01OTUsNiArNTk2LDcgQEAgc3RhdGljIHZvaWQqIFJ1bldlYlRocmVhZCh2b2lkKikK
ICAgICAvLyA8cmRhcjovL3Byb2JsZW0vODUwMjQ4Nz4uCiAgICAgV1RGOjppbml0aWFsaXplV2Vi
VGhyZWFkKCk7CiAgICAgSlNDOjppbml0aWFsaXplKCk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVK
SVRPcGVyYXRpb25zKCk7CiAgICAgCiAgICAgLy8gTWFrZSBzdXJlIHRoYXQgdGhlIFdlYlRocmVh
ZCBhbmQgdGhlIG1haW4gdGhyZWFkIHNoYXJlIHRoZSBzYW1lIFRocmVhZEdsb2JhbERhdGEgb2Jq
ZWN0cy4KICAgICBXZWJDb3JlOjp0aHJlYWRHbG9iYWxEYXRhKCkuc2V0V2ViQ29yZVRocmVhZERh
dGEoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0FQSS9jL1dLU3RyaW5nLmNw
cCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0FQSS9jL1dLU3RyaW5nLmNwcAppbmRleCAyNjg1NWI0
OGJhNWFhYmZkYjI1MjhiYzAzOWE1MjBiMjBlMWVkYzJmLi4xMGM2NDhhYmZkNzA5OTRhYzg2NjVm
YTE1MDliMTc1ZmViMTczZWY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9BUEkv
Yy9XS1N0cmluZy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQVBJL2MvV0tTdHJpbmcu
Y3BwCkBAIC0yOCw4ICsyOCwxMCBAQAogI2luY2x1ZGUgIldLU3RyaW5nUHJpdmF0ZS5oIgogCiAj
aW5jbHVkZSAiV0tBUElDYXN0LmgiCisjaW5jbHVkZSAiV2ViS2l0SklUT3BlcmF0aW9ucy5oIgog
I2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0luaXRpYWxpemVUaHJlYWRpbmcuaD4KICNpbmNsdWRl
IDxKYXZhU2NyaXB0Q29yZS9PcGFxdWVKU1N0cmluZy5oPgorI2luY2x1ZGUgPFdlYkNvcmUvV2Vi
Q29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbmNsdWRlIDx3dGYvdW5pY29kZS9VVEY4Q29udmVyc2lv
bi5oPgogCiBXS1R5cGVJRCBXS1N0cmluZ0dldFR5cGVJRCgpCkBAIC0xMzQsNSArMTM2LDcgQEAg
V0tTdHJpbmdSZWYgV0tTdHJpbmdDcmVhdGVXaXRoSlNTdHJpbmcoSlNTdHJpbmdSZWYganNTdHJp
bmdSZWYpCiBKU1N0cmluZ1JlZiBXS1N0cmluZ0NvcHlKU1N0cmluZyhXS1N0cmluZ1JlZiBzdHJp
bmdSZWYpCiB7CiAgICAgSlNDOjppbml0aWFsaXplKCk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVK
SVRPcGVyYXRpb25zKCk7CisgICAgV2ViS2l0Ojpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICAg
ICByZXR1cm4gT3BhcXVlSlNTdHJpbmc6OnRyeUNyZWF0ZShXZWJLaXQ6OnRvSW1wbChzdHJpbmdS
ZWYpLT5zdHJpbmcoKSkubGVha1JlZigpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9T
aGFyZWQvQ29jb2EvV2ViS2l0MkluaXRpYWxpemVDb2NvYS5tbSBiL1NvdXJjZS9XZWJLaXQvU2hh
cmVkL0NvY29hL1dlYktpdDJJbml0aWFsaXplQ29jb2EubW0KaW5kZXggMTRkMjc5ZjU3ZmQzNGMw
MDQwY2ZmOGQ2NjdmNTYxNmM1ZGMwYjU2Zi4uOGVmNzRkZWY0YWJiZWU5YTA4YWFiNGU1MzkyMTY5
N2I0ZGNmMjEzNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvV2ViS2l0
MkluaXRpYWxpemVDb2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9XZWJL
aXQySW5pdGlhbGl6ZUNvY29hLm1tCkBAIC0yNyw3ICsyNyw5IEBACiAjaW1wb3J0ICJXZWJLaXQy
SW5pdGlhbGl6ZS5oIgogCiAjaW1wb3J0ICJWZXJzaW9uQ2hlY2tzLmgiCisjaW1wb3J0ICJXZWJL
aXRKSVRPcGVyYXRpb25zLmgiCiAjaW1wb3J0IDxKYXZhU2NyaXB0Q29yZS9Jbml0aWFsaXplVGhy
ZWFkaW5nLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25zLmg+CiAjaW1w
b3J0IDxtdXRleD4KICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+CiAjaW1wb3J0IDx3dGYvUmVm
Q291bnRlZC5oPgpAQCAtNTQsNiArNTYsOSBAQCBzdGF0aWMgdm9pZCBydW5Jbml0aWFsaXphdGlv
bkNvZGUodm9pZCogPSBudWxscHRyKQogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsK
IAogICAgIFdURjo6UmVmQ291bnRlZEJhc2U6OmVuYWJsZVRocmVhZGluZ0NoZWNrc0dsb2JhbGx5
KCk7CisKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKKyAgICBXZWJLaXQ6
OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogfQogCiB2b2lkIEluaXRpYWxpemVXZWJLaXQyKCkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYktpdDJJbml0aWFsaXplLmNwcCBi
L1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYktpdDJJbml0aWFsaXplLmNwcAppbmRleCA0YTUzZjJj
ZWRhM2FiOTg1YTcxNDQxMDFhZWY4ZmQ1ZWYwZWQ3MDNiLi42YmZiOGY2OWQ5NDE2MjgyNzEyNmEx
NjRkYTZkMjhhZTI5MzgyMzhlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJL
aXQySW5pdGlhbGl6ZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViS2l0MkluaXRp
YWxpemUuY3BwCkBAIC0yNyw4ICsyNywxMCBAQAogI2luY2x1ZGUgIldlYktpdDJJbml0aWFsaXpl
LmgiCiAKICNpbmNsdWRlICJMb2dJbml0aWFsaXphdGlvbi5oIgorI2luY2x1ZGUgIldlYktpdEpJ
VE9wZXJhdGlvbnMuaCIKICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9Jbml0aWFsaXplVGhyZWFk
aW5nLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9Mb2dJbml0aWFsaXphdGlvbi5oPgorI2luY2x1ZGUg
PFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbmNsdWRlIDx3dGYvTWFpblRocmVh
ZC5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAjaW5jbHVkZSA8d3RmL1J1bkxvb3Au
aD4KQEAgLTQ5LDYgKzUxLDkgQEAgdm9pZCBJbml0aWFsaXplV2ViS2l0MigpCiAgICAgV2ViQ29y
ZTo6aW5pdGlhbGl6ZUxvZ0NoYW5uZWxzSWZOZWNlc3NhcnkoKTsKICAgICBXZWJLaXQ6OmluaXRp
YWxpemVMb2dDaGFubmVsc0lmTmVjZXNzYXJ5KCk7CiAjZW5kaWYgLy8gIUxPR19ESVNBQkxFRCB8
fCAhUkVMRUFTRV9MT0dfRElTQUJMRUQKKworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0
aW9ucygpOworICAgIFdlYktpdDo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiB9CiAKICNlbmRp
ZiAvLyAhUExBVEZPUk0oQ09DT0EpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9X
ZWJLaXRKSVRPcGVyYXRpb25zLmNwcCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYktpdEpJVE9w
ZXJhdGlvbnMuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBmZWIwOWQyNjkyZGFmOTQxODZiMzI4ZDM5MTgyMzBk
MzZmNzEzZDMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJLaXRK
SVRPcGVyYXRpb25zLmNwcApAQCAtMCwwICsxLDQ3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAy
MDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMg
YGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRS
SUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUg
ImNvbmZpZy5oIgorI2luY2x1ZGUgIldlYktpdEpJVE9wZXJhdGlvbnMuaCIKKworI2luY2x1ZGUg
PEphdmFTY3JpcHRDb3JlL0pJVE9wZXJhdGlvbkxpc3QuaD4KKworbmFtZXNwYWNlIFdlYktpdCB7
CisKKyNpZiBFTkFCTEUoSklUX09QRVJBVElPTl9WQUxJREFUSU9OKQorZXh0ZXJuIGNvbnN0IHVp
bnRwdHJfdCBzdGFydE9mSG9zdEZ1bmN0aW9uc0luV2ViS2l0IF9fYXNtKCJzZWN0aW9uJHN0YXJ0
JF9fREFUQV9DT05TVCRfX2pzY19ob3N0Iik7CitleHRlcm4gY29uc3QgdWludHB0cl90IGVuZE9m
SG9zdEZ1bmN0aW9uc0luV2ViS2l0IF9fYXNtKCJzZWN0aW9uJGVuZCRfX0RBVEFfQ09OU1QkX19q
c2NfaG9zdCIpOworZXh0ZXJuIGNvbnN0IHVpbnRwdHJfdCBzdGFydE9mSklUT3BlcmF0aW9uc0lu
V2ViS2l0IF9fYXNtKCJzZWN0aW9uJHN0YXJ0JF9fREFUQV9DT05TVCRfX2pzY19vcHMiKTsKK2V4
dGVybiBjb25zdCB1aW50cHRyX3QgZW5kT2ZKSVRPcGVyYXRpb25zSW5XZWJLaXQgX19hc20oInNl
Y3Rpb24kZW5kJF9fREFUQV9DT05TVCRfX2pzY19vcHMiKTsKKyNlbmRpZgorCit2b2lkIHBvcHVs
YXRlSklUT3BlcmF0aW9ucygpCit7CisjaWYgRU5BQkxFKEpJVF9PUEVSQVRJT05fVkFMSURBVElP
TikKKyAgICBKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6OnBvcHVsYXRlUG9pbnRlcnNJbkVtYmVkZGVy
Migmc3RhcnRPZkhvc3RGdW5jdGlvbnNJbldlYktpdCwgJmVuZE9mSG9zdEZ1bmN0aW9uc0luV2Vi
S2l0LCAmc3RhcnRPZkpJVE9wZXJhdGlvbnNJbldlYktpdCwgJmVuZE9mSklUT3BlcmF0aW9uc0lu
V2ViS2l0KTsKKyNlbmRpZgorfQorCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJl
ZC9XZWJLaXRKSVRPcGVyYXRpb25zLmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJLaXRKSVRP
cGVyYXRpb25zLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODI3YWMyY2ZhYzgzODQ5YjI0ZmIwM2I0MTE1MDI5ZTRm
ZmMwNDNiMwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYktpdEpJ
VE9wZXJhdGlvbnMuaApAQCAtMCwwICsxLDMyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIw
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBB
UyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJV
VE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
CisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNl
CisKK25hbWVzcGFjZSBXZWJLaXQgeworCit2b2lkIHBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwor
Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NvdXJjZXMudHh0IGIvU291cmNlL1dlYktp
dC9Tb3VyY2VzLnR4dAppbmRleCBlYzQxMTY2NWExZmUzM2JlNWIxNjQ4MTQ0ZmRmOTNiZGQxZDRh
YTJlLi5iYzJjNDk0M2FlYmU1Y2NhZjhiOTQ3ZWQ3MWFlMDMwZjRmMzJkOTgzIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1NvdXJjZXMudHh0CisrKyBiL1NvdXJjZS9XZWJLaXQvU291cmNlcy50
eHQKQEAgLTE5Nyw2ICsxOTcsNyBAQCBTaGFyZWQvV2ViSGl0VGVzdFJlc3VsdERhdGEuY3BwCiBT
aGFyZWQvV2ViSW1hZ2UuY3BwCiBTaGFyZWQvV2ViS2V5Ym9hcmRFdmVudC5jcHAgQG5vLXVuaWZ5
CiBTaGFyZWQvV2ViS2l0MkluaXRpYWxpemUuY3BwIEBuby11bmlmeQorU2hhcmVkL1dlYktpdEpJ
VE9wZXJhdGlvbnMuY3BwIEBuby11bmlmeQogU2hhcmVkL1dlYk1lbW9yeVNhbXBsZXIuY3BwCiBT
aGFyZWQvV2ViTW91c2VFdmVudC5jcHAgQG5vLXVuaWZ5CiBTaGFyZWQvV2ViUGFnZUNyZWF0aW9u
UGFyYW1ldGVycy5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qCmluZGV4IDUzYjY0Zjc1ZWRkNDNjZTk1Zjc2NDEzNDdkOGE1NzhhMDZiNjQzYWUu
LjgzMDk5MDFiMTkzNTFjZjk0NTc2YWM2NDg5NzhjMjg0ZjhlNGE3ODUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNl
L1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTgwMSw2ICsxODAx
LDcgQEAKIAkJRTFEMjZBNTMxNzU5NjREOTAwOTVCRkQxIC8qIFdlYkNvbnRlbnRQcm9jZXNzLnhp
YiBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFEMjZB
NEMxNzU5NjM0RTAwOTVCRkQxIC8qIFdlYkNvbnRlbnRQcm9jZXNzLnhpYiAqLzsgfTsKIAkJRTFF
NTUyQzUxNkFFMDY1RjAwNEVENjUzIC8qIFNhbmRib3hJbml0aWFsaXphdGlvblBhcmFtZXRlcnMu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxRTU1MkMz
MTZBRTA2NUUwMDRFRDY1MyAvKiBTYW5kYm94SW5pdGlhbGl6YXRpb25QYXJhbWV0ZXJzLmggKi87
IH07CiAJCUUxRUU1M0UzMTFGOENGQzAwMENDQkVFNCAvKiBJbmplY3RlZEJ1bmRsZVBhZ2VFZGl0
b3JDbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEUxRUU1M0RDMTFGOENGOUYwMENDQkVFNCAvKiBJbmplY3RlZEJ1bmRsZVBhZ2VFZGl0b3JDbGll
bnQuaCAqLzsgfTsKKwkJRTM1ODJDMkIyNTI3RjZBQTAwRDFCNzkwIC8qIFdlYktpdEpJVE9wZXJh
dGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUz
NTgyQzJBMjUyN0Y2OUMwMEQxQjc5MCAvKiBXZWJLaXRKSVRPcGVyYXRpb25zLmggKi87IH07CiAJ
CUUzODY2QUU1MjM5NzQwMDQwMEY4OEZFOSAvKiBXZWJEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVBy
b3ZpZGVyUHJveHkubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBFMzg2NkFFNDIzOTc0MDA0MDBGODhGRTkgLyogV2ViRGV2aWNlT3JpZW50YXRpb25VcGRh
dGVQcm92aWRlclByb3h5Lm1tICovOyB9OwogCQlFMzg2NkFFNzIzOTc0MDUzMDBGODhGRTkgLyog
V2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92aWRlclByb3h5LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMzg2NkFFNjIzOTc0MDUzMDBGODhGRTkg
LyogV2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92aWRlclByb3h5LmggKi87IH07CiAJCUUz
ODY2QjA4MjM5OUEyRDEwMEY4OEZFOSAvKiBXZWJEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3Zp
ZGVyUHJveHlNZXNzYWdlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gRTM4NjZCMDUyMzk5OTc5QzAwRjg4RkU5IC8qIFdlYkRldmljZU9yaWVudGF0aW9u
VXBkYXRlUHJvdmlkZXJQcm94eU1lc3NhZ2VzLmggKi87IH07CkBAIC0xODEwLDYgKzE4MTEsNyBA
QAogCQlFMzhBMUZDMDIzQTU1MUJGMDBEMjM3NEYgLyogVXNlckludGVyZmFjZUlkaW9tLm1tIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTM4QTFGQkYyM0E1
NTFCRjAwRDIzNzRGIC8qIFVzZXJJbnRlcmZhY2VJZGlvbS5tbSAqLzsgfTsKIAkJRTM5NjI4REQy
Mzk2MENDNjAwNjU4RUNEIC8qIFdlYkRldmljZU9yaWVudGF0aW9uVXBkYXRlUHJvdmlkZXIuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzOTYyOERCMjM5
NjBDQzUwMDY1OEVDRCAvKiBXZWJEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3ZpZGVyLmggKi87
IH07CiAJCUUzOTYyOERFMjM5NjBDQzYwMDY1OEVDRCAvKiBXZWJEZXZpY2VPcmllbnRhdGlvblVw
ZGF0ZVByb3ZpZGVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEUzOTYyOERDMjM5NjBDQzYwMDY1OEVDRCAvKiBXZWJEZXZpY2VPcmllbnRhdGlvblVw
ZGF0ZVByb3ZpZGVyLmNwcCAqLzsgfTsKKwkJRTNDODQ2N0MyNTI3RjlERTAwNTRGRDlDIC8qIFdl
YktpdEpJVE9wZXJhdGlvbnMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRTM1ODJDMjkyNTI3RjY5QjAwRDFCNzkwIC8qIFdlYktpdEpJVE9wZXJhdGlv
bnMuY3BwICovOyB9OwogCQlFM0NBQUE0NDI0MTMyNzk5MDBDRUQyRTIgLyogQWNjZXNzaWJpbGl0
eVN1cHBvcnRTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEUzQ0FBQTQzMjQxMzI3OEEwMENFRDJFMiAvKiBBY2Nlc3NpYmlsaXR5U3VwcG9ydFNQSS5o
ICovOyB9OwogCQlFNDEzRjU5RDFBQzFBREM0MDAzNDUzNjAgLyogTmV0d29ya0NhY2hlRW50cnku
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU0MTNGNTlC
MUFDMUFEQjYwMDM0NTM2MCAvKiBOZXR3b3JrQ2FjaGVFbnRyeS5oICovOyB9OwogCQlFNDJFMDYx
MDFBQTc1MjNCMDBCMTE2OTkgLyogTmV0d29ya0NhY2hlSU9DaGFubmVsLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNDJFMDYwQjFBQTc0NDBEMDBCMTE2
OTkgLyogTmV0d29ya0NhY2hlSU9DaGFubmVsLmggKi87IH07CkBAIC01MjgyLDYgKzUyODQsOCBA
QAogCQlFMUVFNTNEQzExRjhDRjlGMDBDQ0JFRTQgLyogSW5qZWN0ZWRCdW5kbGVQYWdlRWRpdG9y
Q2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEluamVjdGVkQnVuZGxl
UGFnZUVkaXRvckNsaWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFMUVFNTNF
NjExRjhDRkZCMDBDQ0JFRTQgLyogSW5qZWN0ZWRCdW5kbGVQYWdlRWRpdG9yQ2xpZW50LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEluamVjdGVkQnVuZGxlUGFnZUVk
aXRvckNsaWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUzNDM5QjYzMjM0
NTQ2M0EwMDExREUwQiAvKiBOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb25JbmZvLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
bmFtZSA9IE5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbkluZm8uaDsgcGF0aCA9IE5ldHdvcmsvTmV0
d29ya1Byb2Nlc3NDb25uZWN0aW9uSW5mby5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlFMzU4MkMyOTI1MjdGNjlCMDBEMUI3OTAgLyogV2ViS2l0SklUT3BlcmF0aW9ucy5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJLaXRKSVRPcGVyYXRpb25zLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTM1ODJDMkEyNTI3RjY5QzAwRDFCNzkw
IC8qIFdlYktpdEpJVE9wZXJhdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gV2ViS2l0SklUT3BlcmF0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlF
Mzg2NkFFNDIzOTc0MDA0MDBGODhGRTkgLyogV2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92
aWRlclByb3h5Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1lID0gV2Vi
RGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92aWRlclByb3h5Lm1tOyBwYXRoID0gaW9zL1dlYkRl
dmljZU9yaWVudGF0aW9uVXBkYXRlUHJvdmlkZXJQcm94eS5tbTsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJRTM4NjZBRTYyMzk3NDA1MzAwRjg4RkU5IC8qIFdlYkRldmljZU9yaWVudGF0
aW9uVXBkYXRlUHJvdmlkZXJQcm94eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUg
PSBXZWJEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3ZpZGVyUHJveHkuaDsgcGF0aCA9IGlvcy9X
ZWJEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3ZpZGVyUHJveHkuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJRTM4NjZBRUQyMzk4NDcxQTAwRjg4RkU5IC8qIFdlYkRldmljZU9yaWVu
dGF0aW9uVXBkYXRlUHJvdmlkZXJQcm94eS5tZXNzYWdlcy5pbiAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IG5h
bWUgPSBXZWJEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3ZpZGVyUHJveHkubWVzc2FnZXMuaW47
IHBhdGggPSBpb3MvV2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92aWRlclByb3h5Lm1lc3Nh
Z2VzLmluOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNjExNiw2ICs2MTIwLDggQEAK
IAkJCQlDMDMzN0REMjEyN0EyQTBFMDA4RkY0RjQgLyogV2ViS2V5Ym9hcmRFdmVudC5jcHAgKi8s
CiAJCQkJQkM5QkE1MDIxNjk3QzQ1MzAwRTQ0NjE2IC8qIFdlYktpdDJJbml0aWFsaXplLmNwcCAq
LywKIAkJCQlCQzlCQTUwMzE2OTdDNDUzMDBFNDQ2MTYgLyogV2ViS2l0MkluaXRpYWxpemUuaCAq
LywKKwkJCQlFMzU4MkMyOTI1MjdGNjlCMDBEMUI3OTAgLyogV2ViS2l0SklUT3BlcmF0aW9ucy5j
cHAgKi8sCisJCQkJRTM1ODJDMkEyNTI3RjY5QzAwRDFCNzkwIC8qIFdlYktpdEpJVE9wZXJhdGlv
bnMuaCAqLywKIAkJCQk5MDU2MjBFODEyQkMyNDhCMDAwNzk5QjYgLyogV2ViTWVtb3J5U2FtcGxl
ci5jcHAgKi8sCiAJCQkJOTA1NjIwRTkxMkJDMjQ4QjAwMDc5OUI2IC8qIFdlYk1lbW9yeVNhbXBs
ZXIuaCAqLywKIAkJCQlDMDMzN0RBRjEyN0EyOEQwMDA4RkY0RjQgLyogV2ViTW91c2VFdmVudC5j
cHAgKi8sCkBAIC0xMTI5Myw2ICsxMTI5OSw3IEBACiAJCQkJMUE2MjgwQzUxOTE5OTQ5RjAwNkFE
OUY5IC8qIFdlYktpdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNCNjM0NzgxMTZCRjEwNjAwNjAz
MjE1IC8qIFdlYktpdDJfQy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM5QkE1MDUxNjk3QzQ1MzAw
RTQ0NjE2IC8qIFdlYktpdDJJbml0aWFsaXplLmggaW4gSGVhZGVycyAqLywKKwkJCQlFMzU4MkMy
QjI1MjdGNkFBMDBEMUI3OTAgLyogV2ViS2l0SklUT3BlcmF0aW9ucy5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJMUE2MjgwQzcxOTE5OTUwQzAwNkFEOUY5IC8qIFdlYktpdFByaXZhdGUuaCBpbiBIZWFk
ZXJzICovLAogCQkJCUNEMDAzQTUzMTlENDlCNUQwMDVBQkNFMCAvKiBXZWJNZWRpYUtleVN0b3Jh
Z2VNYW5hZ2VyLmggaW4gSGVhZGVycyAqLywKIAkJCQk5QjVCRUMyNjI0MDBGNEE5MDA3MEM2RUYg
LyogV2ViTWVkaWFTdHJhdGVneS5oIGluIEhlYWRlcnMgKi8sCkBAIC0xMzAyOCw2ICsxMzAzNSw3
IEBACiAJCQkJMUE2MjgwRjMxOTE5OTgyQTAwNkFEOUY5IC8qIFdlYktpdC5tIGluIFNvdXJjZXMg
Ki8sCiAJCQkJMkQ5MkE3OEIyMTJCNkFCMTAwRjQ5M0ZEIC8qIFdlYktpdDJJbml0aWFsaXplLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCUExODFBNzk4MjFBQ0M3NEIwMDU5QTMxNiAvKiBXZWJLaXRB
ZGRpdGlvbnMubW0gaW4gU291cmNlcyAqLywKKwkJCQlFM0M4NDY3QzI1MjdGOURFMDA1NEZEOUMg
LyogV2ViS2l0SklUT3BlcmF0aW9ucy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1MUYwNjBFMTE2
NTQzMTg1MDBGMzI4MkYgLyogV2ViTUROU1JlZ2lzdGVyTWVzc2FnZVJlY2VpdmVyLmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCTJEOTJBNzhDMjEyQjZBQjEwMEY0OTNGRCAvKiBXZWJNb3VzZUV2ZW50
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxQkE5MjREMTQ4ODMxMjYwMDYyRURCNSAvKiBXZWJO
b3RpZmljYXRpb25NYW5hZ2VyTWVzc2FnZVJlY2VpdmVyLmNwcCBpbiBTb3VyY2VzICovLApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvSGlzdG9yeS9XZWJCYWNrRm9yd2FyZExp
c3QubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9IaXN0b3J5L1dlYkJhY2tGb3J3YXJkTGlz
dC5tbQppbmRleCBmMmYxM2ViZjhlNTVjZTE2Yjc2NzRiNTc4ZTgwZWY2MDdjMGVjN2U4Li5kNmFm
NzU1ZmZhNzM4Yjk5M2Y3Zjc4N2VjM2U4YzNmNGVjZGE3MGYzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0TGVnYWN5L21hYy9IaXN0b3J5L1dlYkJhY2tGb3J3YXJkTGlzdC5tbQorKysgYi9Tb3Vy
Y2UvV2ViS2l0TGVnYWN5L21hYy9IaXN0b3J5L1dlYkJhY2tGb3J3YXJkTGlzdC5tbQpAQCAtNDQs
NiArNDQsNyBAQAogI2ltcG9ydCA8V2ViQ29yZS9IaXN0b3J5SXRlbS5oPgogI2ltcG9ydCA8V2Vi
Q29yZS9TZXR0aW5ncy5oPgogI2ltcG9ydCA8V2ViQ29yZS9UaHJlYWRDaGVjay5oPgorI2ltcG9y
dCA8V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0aW9ucy5oPgogI2ltcG9ydCA8V2ViQ29yZS9XZWJD
b3JlT2JqQ0V4dHJhcy5oPgogI2ltcG9ydCA8d3RmL0Fzc2VydGlvbnMuaD4KICNpbXBvcnQgPHd0
Zi9NYWluVGhyZWFkLmg+CkBAIC0xMDAsNiArMTAxLDcgQEAgKyAodm9pZClpbml0aWFsaXplCiAj
aWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAgSlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RG
Ojppbml0aWFsaXplTWFpblRocmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0
aW9ucygpOwogI2VuZGlmCiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFj
L0hpc3RvcnkvV2ViSGlzdG9yeUl0ZW0ubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9IaXN0
b3J5L1dlYkhpc3RvcnlJdGVtLm1tCmluZGV4IGY2ODhkYzg5YTJiYzVmOTg0N2RmOWZiOWVlNDll
ZGQ3MDU4ZDYwZDAuLjg3ZTYyOWY5OTQ5ZjEyMTQ4MDRiZmVkNGEwMmIxNDY3NWU3Y2NiNmUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0hpc3RvcnkvV2ViSGlzdG9yeUl0ZW0u
bW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvSGlzdG9yeS9XZWJIaXN0b3J5SXRlbS5t
bQpAQCAtNDcsNiArNDcsNyBAQAogI2ltcG9ydCA8V2ViQ29yZS9IaXN0b3J5SXRlbS5oPgogI2lt
cG9ydCA8V2ViQ29yZS9JbWFnZS5oPgogI2ltcG9ydCA8V2ViQ29yZS9UaHJlYWRDaGVjay5oPgor
I2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0aW9ucy5oPgogI2ltcG9ydCA8V2ViQ29y
ZS9XZWJDb3JlT2JqQ0V4dHJhcy5oPgogI2ltcG9ydCA8d3RmL0Fzc2VydGlvbnMuaD4KICNpbXBv
cnQgPHd0Zi9NYWluVGhyZWFkLmg+CkBAIC0xMjcsNiArMTI4LDcgQEAgKyAodm9pZClpbml0aWFs
aXplCiAjaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAgSlNDOjppbml0aWFsaXplKCk7CiAg
ICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklU
T3BlcmF0aW9ucygpOwogI2VuZGlmCiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvbWFjL01pc2MvV2ViQ2FjaGUubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9NaXNjL1dl
YkNhY2hlLm1tCmluZGV4IGFiODMwMWRkY2QwYzA3OTI2OTAzNDYyNzg4YTc0NDYwZGEzNWQ1YTEu
LmQ4MTc2OTk2NzVlY2ZiYjljMjM2NzkzNWMyMmM1N2M3OGE0YTM0ZjEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXRMZWdhY3kvbWFjL01pc2MvV2ViQ2FjaGUubW0KKysrIGIvU291cmNlL1dlYktp
dExlZ2FjeS9tYWMvTWlzYy9XZWJDYWNoZS5tbQpAQCAtNDAsNiArNDAsNyBAQAogI2ltcG9ydCA8
V2ViQ29yZS9NZW1vcnlDYWNoZS5oPgogI2ltcG9ydCA8V2ViQ29yZS9OZXR3b3JrU3RvcmFnZVNl
c3Npb24uaD4KICNpbXBvcnQgPFdlYkNvcmUvU3RvcmFnZVNlc3Npb25Qcm92aWRlci5oPgorI2lt
cG9ydCA8V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0aW9ucy5oPgogI2ltcG9ydCA8d3RmL01haW5U
aHJlYWQuaD4KICNpbXBvcnQgPHd0Zi9SdW5Mb29wLmg+CiAKQEAgLTY1LDYgKzY2LDcgQEAgKyAo
dm9pZClpbml0aWFsaXplCiAjaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAgSlNDOjppbml0
aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOworICAgIFdlYkNvcmU6
OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogI2VuZGlmCiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL01pc2MvV2ViRWxlbWVudERpY3Rpb25hcnkubW0gYi9Tb3VyY2Uv
V2ViS2l0TGVnYWN5L21hYy9NaXNjL1dlYkVsZW1lbnREaWN0aW9uYXJ5Lm1tCmluZGV4IDk5ODI5
MDVlMmJhMzNlZDM4MjhiYjc0ODc0MTk3NzkzZjQ0YmZiNDIuLjFmYjUxOGY4NzRiODNlNjRhZmU1
ZmY0OThkMWVmNTFjZTMxODVmYzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFj
L01pc2MvV2ViRWxlbWVudERpY3Rpb25hcnkubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9t
YWMvTWlzYy9XZWJFbGVtZW50RGljdGlvbmFyeS5tbQpAQCAtNDEsNiArNDEsNyBAQAogI2ltcG9y
dCA8V2ViQ29yZS9GcmFtZS5oPgogI2ltcG9ydCA8V2ViQ29yZS9IaXRUZXN0UmVzdWx0Lmg+CiAj
aW1wb3J0IDxXZWJDb3JlL0ltYWdlLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVy
YXRpb25zLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVPYmpDRXh0cmFzLmg+CiAjaW1wb3J0
IDxXZWJLaXRMZWdhY3kvRE9NQ29yZS5oPgogI2ltcG9ydCA8V2ViS2l0TGVnYWN5L0RPTUV4dGVu
c2lvbnMuaD4KQEAgLTY5LDYgKzcwLDcgQEAgKyAodm9pZClpbml0aWFsaXplCiAjaWYgIVBMQVRG
T1JNKElPU19GQU1JTFkpCiAgICAgSlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFs
aXplTWFpblRocmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwog
I2VuZGlmCiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL01pc2MvV2Vi
SWNvbkRhdGFiYXNlLm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvTWlzYy9XZWJJY29uRGF0
YWJhc2UubW0KaW5kZXggNGMxZGNiMjQzZWQzZjRhMWIzMWI5OThhZGZkNzJkY2ZmYWQ1NGJkMC4u
OWExYjJjYjZjNzk3MGU2YTg4MTY1ODk4ZjI5ZDMwMGQ2YjMwYTExZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvTWlzYy9XZWJJY29uRGF0YWJhc2UubW0KKysrIGIvU291cmNl
L1dlYktpdExlZ2FjeS9tYWMvTWlzYy9XZWJJY29uRGF0YWJhc2UubW0KQEAgLTM0LDYgKzM0LDcg
QEAKICNpbXBvcnQgPEphdmFTY3JpcHRDb3JlL0luaXRpYWxpemVUaHJlYWRpbmcuaD4KICNpbXBv
cnQgPFdlYkNvcmUvSW1hZ2UuaD4KICNpbXBvcnQgPFdlYkNvcmUvVGhyZWFkQ2hlY2suaD4KKyNp
bXBvcnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbXBvcnQgPHd0Zi9NYWlu
VGhyZWFkLmg+CiAjaW1wb3J0IDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KICNpbXBvcnQgPHd0Zi9S
dW5Mb29wLmg+CkBAIC05OSw2ICsxMDAsNyBAQCArICh2b2lkKWluaXRpYWxpemUKIHsKICAgICBK
U0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAg
V2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiB9CiAKICsgKFdlYkljb25EYXRhYmFz
ZSAqKXNoYXJlZEljb25EYXRhYmFzZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9t
YWMvTWlzYy9XZWJTdHJpbmdUcnVuY2F0b3IubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9N
aXNjL1dlYlN0cmluZ1RydW5jYXRvci5tbQppbmRleCA5OWQ3OWMxOTY3NTI0MDkyMDIyMzU2N2I3
NWM5MGNjNTU2ODEwYjk0Li45OGVjYWE5NDM1NjQ2ZjYwZWFmMTVjMzQ1MTU2OGM5MjA3MDYzZTEy
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9NaXNjL1dlYlN0cmluZ1RydW5j
YXRvci5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9NaXNjL1dlYlN0cmluZ1RydW5j
YXRvci5tbQpAQCAtMzIsNiArMzIsNyBAQAogI2ltcG9ydCA8V2ViQ29yZS9Gb250Q2FzY2FkZS5o
PgogI2ltcG9ydCA8V2ViQ29yZS9Gb250UGxhdGZvcm1EYXRhLmg+CiAjaW1wb3J0IDxXZWJDb3Jl
L1N0cmluZ1RydW5jYXRvci5oPgorI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0aW9u
cy5oPgogI2ltcG9ydCA8d3RmL01haW5UaHJlYWQuaD4KICNpbXBvcnQgPHd0Zi9OZXZlckRlc3Ry
b3llZC5oPgogCkBAIC01Miw2ICs1Myw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogewogICAgIEpT
Qzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAgICBX
ZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKIH0KIAogKyAoTlNTdHJpbmcgKiljZW50
ZXJUcnVuY2F0ZVN0cmluZzooTlNTdHJpbmcgKilzdHJpbmcgdG9XaWR0aDooZmxvYXQpbWF4V2lk
dGgKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvSG9zdGVkL1dl
Ykhvc3RlZE5ldHNjYXBlUGx1Z2luVmlldy5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1Bs
dWdpbnMvSG9zdGVkL1dlYkhvc3RlZE5ldHNjYXBlUGx1Z2luVmlldy5tbQppbmRleCA0NzZhNTVl
ZGExNmUzNGM0ZWRhNjJjNGY5YjYwOWYzMzBlNjIxZGVkLi43NjExNzFjZWE3Y2E1ZmE2NzI4Yzlk
YzAwZDJlYjdiMmQxOGY3NzgwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9Q
bHVnaW5zL0hvc3RlZC9XZWJIb3N0ZWROZXRzY2FwZVBsdWdpblZpZXcubW0KKysrIGIvU291cmNl
L1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9Ib3N0ZWQvV2ViSG9zdGVkTmV0c2NhcGVQbHVnaW5W
aWV3Lm1tCkBAIC00Nyw2ICs0Nyw3IEBACiAjaW1wb3J0IDxXZWJDb3JlL1JlbmRlckVtYmVkZGVk
T2JqZWN0Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1Jlc291cmNlRXJyb3IuaD4KICNpbXBvcnQgPFdl
YkNvcmUvV2ViQ29yZUNBTGF5ZXJFeHRyYXMuaD4KKyNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZUpJ
VE9wZXJhdGlvbnMuaD4KICNpbXBvcnQgPFdlYkNvcmUvcnVudGltZV9yb290Lmg+CiAjaW1wb3J0
IDxwYWwvc3BpL2NvY29hL1F1YXJ0ekNvcmVTUEkuaD4KICNpbXBvcnQgPHd0Zi9Bc3NlcnRpb25z
Lmg+CkBAIC0xMDcsNiArMTA4LDcgQEAgKyAodm9pZClpbml0aWFsaXplCiAjaWYgIVBMQVRGT1JN
KElPU19GQU1JTFkpCiAgICAgSlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFsaXpl
TWFpblRocmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogI2Vu
ZGlmCiAgICAgc2VuZFVzZXJDaGFuZ2VOb3RpZmljYXRpb25zKCk7CiB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL1dlYkJhc2VOZXRzY2FwZVBsdWdpblZpZXcu
bW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL1dlYkJhc2VOZXRzY2FwZVBsdWdp
blZpZXcubW0KaW5kZXggN2VjNDBjOTk3YWQwNTU2NDExMWY3ODYxNGE2NzMzYjlkNDAxMjE4ZC4u
MmRkYTdiNjM5M2NlY2NkYzljODEyYzYzODM5MTg4ZDZhNDM1ZDE0OCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9XZWJCYXNlTmV0c2NhcGVQbHVnaW5WaWV3Lm1t
CisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvV2ViQmFzZU5ldHNjYXBlUGx1
Z2luVmlldy5tbQpAQCAtNTQsNiArNTQsNyBAQAogI2ltcG9ydCA8V2ViQ29yZS9SZW5kZXJFbWJl
ZGRlZE9iamVjdC5oPgogI2ltcG9ydCA8V2ViQ29yZS9SZW5kZXJWaWV3Lmg+CiAjaW1wb3J0IDxX
ZWJDb3JlL1NlY3VyaXR5T3JpZ2luLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVy
YXRpb25zLmg+CiAjaW1wb3J0IDxXZWJLaXRMZWdhY3kvRE9NUHJpdmF0ZS5oPgogI2ltcG9ydCA8
cGFsL3NwaS9jZy9Db3JlR3JhcGhpY3NTUEkuaD4KICNpbXBvcnQgPHd0Zi9Bc3NlcnRpb25zLmg+
CkBAIC03Miw2ICs3Myw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogewogICAgIEpTQzo6aW5pdGlh
bGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJDb3JlOjpw
b3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICAgICBXZWJLaXQ6OnNlbmRVc2VyQ2hhbmdlTm90aWZp
Y2F0aW9ucygpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVn
aW5zL1dlYkJhc2VQbHVnaW5QYWNrYWdlLm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1
Z2lucy9XZWJCYXNlUGx1Z2luUGFja2FnZS5tbQppbmRleCBhZGU3YmEyN2E3ZjdmN2QzM2E0YzFm
OGVkNjhjMzcwMTEyNzgwMGJhLi5mY2UzY2Y4ZDJkOGQwNjdlNmYxMzU5MTE0ODI3YjRlNmVmMjM4
N2ZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL1dlYkJhc2VQ
bHVnaW5QYWNrYWdlLm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvV2Vi
QmFzZVBsdWdpblBhY2thZ2UubW0KQEAgLTM0LDYgKzM0LDcgQEAKICNpbXBvcnQgIldlYlBsdWdp
blBhY2thZ2UuaCIKICNpbXBvcnQgIldlYlR5cGVzSW50ZXJuYWwuaCIKICNpbXBvcnQgPEphdmFT
Y3JpcHRDb3JlL0luaXRpYWxpemVUaHJlYWRpbmcuaD4KKyNpbXBvcnQgPFdlYkNvcmUvV2ViQ29y
ZUpJVE9wZXJhdGlvbnMuaD4KICNpbXBvcnQgPGFsZ29yaXRobT4KICNpbXBvcnQgPG1hY2gtby9h
cmNoLmg+CiAjaW1wb3J0IDxtYWNoLW8vZmF0Lmg+CkBAIC02MSw2ICs2Miw3IEBAICsgKHZvaWQp
aW5pdGlhbGl6ZQogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQogICAgIEpTQzo6aW5pdGlhbGl6
ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1
bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZgogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0TGVnYWN5L21hYy9QbHVnaW5zL1dlYk5ldHNjYXBlUGx1Z2luVmlldy5tbSBiL1NvdXJjZS9X
ZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvV2ViTmV0c2NhcGVQbHVnaW5WaWV3Lm1tCmluZGV4IDJj
YWVlMmYzMTgxNTdjMWUzMjczZjAxNjBlOTdjNjIwYmVmZjZlNWQuLmFiZGU4NjFjZmYwMjc3NWIw
MWQ1Y2ZiNjUxMjJlNTg0MTIyMjE0MDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL1BsdWdpbnMvV2ViTmV0c2NhcGVQbHVnaW5WaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvbWFjL1BsdWdpbnMvV2ViTmV0c2NhcGVQbHVnaW5WaWV3Lm1tCkBAIC02OCw2ICs2OCw3
IEBACiAjaW1wb3J0IDxXZWJDb3JlL1NjcmlwdENvbnRyb2xsZXIuaD4KICNpbXBvcnQgPFdlYkNv
cmUvU2VjdXJpdHlPcmlnaW4uaD4KICNpbXBvcnQgPFdlYkNvcmUvVXNlckdlc3R1cmVJbmRpY2F0
b3IuaD4KKyNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbXBvcnQg
PFdlYkNvcmUvV2ViQ29yZVVSTFJlc3BvbnNlLmg+CiAjaW1wb3J0IDxXZWJDb3JlL25wcnVudGlt
ZV9pbXBsLmg+CiAjaW1wb3J0IDxXZWJDb3JlL3J1bnRpbWVfcm9vdC5oPgpAQCAtMTY0LDYgKzE2
NSw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogewogICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAg
IFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9w
ZXJhdGlvbnMoKTsKICAgICBzZW5kVXNlckNoYW5nZU5vdGlmaWNhdGlvbnMoKTsKIH0KIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9y
Q2xpZW50Lm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRWRp
dG9yQ2xpZW50Lm1tCmluZGV4IDI4Y2ExYjlhYmJlNjQ2ZDllMDQwYTU2MTY3YmZiMDNkYmNiYTM4
MTcuLmFmMWFiMjY5MGM2NDdlNjUwMzlhMDBlNGI2MTEwOTY2MDNmNGRiZmMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5t
bQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JD
bGllbnQubW0KQEAgLTc4LDYgKzc4LDcgQEAKICNpbXBvcnQgPFdlYkNvcmUvVXNlclR5cGluZ0dl
c3R1cmVJbmRpY2F0b3IuaD4KICNpbXBvcnQgPFdlYkNvcmUvVmlzaWJsZVVuaXRzLmg+CiAjaW1w
b3J0IDxXZWJDb3JlL1dlYkNvbnRlbnRSZWFkZXIuaD4KKyNpbXBvcnQgPFdlYkNvcmUvV2ViQ29y
ZUpJVE9wZXJhdGlvbnMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZU9iakNFeHRyYXMuaD4K
ICNpbXBvcnQgPHBhbC9zcGkvY29jb2EvTlNBdHRyaWJ1dGVkU3RyaW5nU1BJLmg+CiAjaW1wb3J0
IDxwYWwvc3BpL21hYy9OU1NwZWxsQ2hlY2tlclNQSS5oPgpAQCAtMTQwLDYgKzE0MSw3IEBAICsg
KHZvaWQpaW5pdGlhbGl6ZQogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQogICAgIEpTQzo6aW5p
dGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJDb3Jl
Ojpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZgogfQogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5t
bSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVy
Q2xpZW50Lm1tCmluZGV4IGY3MGM4MzBmMzQ0NTFhMDQzN2RmZWY0MWU5OWYzYzA4NGY4NWQ1NGUu
LjZjN2I4ZTZkYmNlZmMxN2Q2OGRkZWQzM2VjMzMxMTZjMGVlYWQ4MmUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50
Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1l
TG9hZGVyQ2xpZW50Lm1tCkBAIC0xMTgsNiArMTE4LDcgQEAKICNpbXBvcnQgPFdlYkNvcmUvU2Ny
aXB0Q29udHJvbGxlci5oPgogI2ltcG9ydCA8V2ViQ29yZS9TaGFyZWRCdWZmZXIuaD4KICNpbXBv
cnQgPFdlYkNvcmUvU3VicmVzb3VyY2VMb2FkZXIuaD4KKyNpbXBvcnQgPFdlYkNvcmUvV2ViQ29y
ZUpJVE9wZXJhdGlvbnMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZU9iakNFeHRyYXMuaD4K
ICNpbXBvcnQgPFdlYkNvcmUvV2ViR0xCbG9ja2xpc3QuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2Vi
U2NyaXB0T2JqZWN0UHJpdmF0ZS5oPgpAQCAtMjM0Niw2ICsyMzQ3LDcgQEAgKyAodm9pZClpbml0
aWFsaXplCiAjaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAgSlNDOjppbml0aWFsaXplKCk7
CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRl
SklUT3BlcmF0aW9ucygpOwogI2VuZGlmCiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvbWFjL1dlYlZpZXcvV2ViQXJjaGl2ZS5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFj
L1dlYlZpZXcvV2ViQXJjaGl2ZS5tbQppbmRleCBiMjM3Yzk4NWRkMTgyYjQ0MDQ2N2RhNWMwYWY5
ODQwYWVjOThlMGJiLi4yNTljN2U5ZWE2ZDUxYmYwYzc0Njk5N2RmYmRhNzk3YzFlYjA4OGE3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkFyY2hpdmUubW0K
KysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJBcmNoaXZlLm1tCkBAIC0z
Nyw2ICszNyw3IEBACiAjaW1wb3J0IDxXZWJDb3JlL0FyY2hpdmVSZXNvdXJjZS5oPgogI2ltcG9y
dCA8V2ViQ29yZS9MZWdhY3lXZWJBcmNoaXZlLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1RocmVhZENo
ZWNrLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0
IDxXZWJDb3JlL1dlYkNvcmVPYmpDRXh0cmFzLmg+CiAjaW1wb3J0IDx3dGYvTWFpblRocmVhZC5o
PgogI2ltcG9ydCA8d3RmL1J1bkxvb3AuaD4KQEAgLTcxLDYgKzcyLDcgQEAgKyAodm9pZClpbml0
aWFsaXplCiAjaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAgSlNDOjppbml0aWFsaXplKCk7
CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRl
SklUT3BlcmF0aW9ucygpOwogI2VuZGlmCiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvbWFjL1dlYlZpZXcvV2ViRGF0YVNvdXJjZS5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL1dlYlZpZXcvV2ViRGF0YVNvdXJjZS5tbQppbmRleCBkNzc3MjY0OGM0OGQ5ZmFlYTI3NmRm
YTI2NWNhNmEwYjA1NjIyY2RjLi4xYjU5NzE2NDY4NTNhNmQxNmJhNjI4NmUwY2EzZmIzZmJkZjEz
ZjQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkRhdGFT
b3VyY2UubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJEYXRhU291
cmNlLm1tCkBAIC01NSw2ICs1NSw3IEBACiAjaW1wb3J0IDxXZWJDb3JlL01JTUVUeXBlUmVnaXN0
cnkuaD4KICNpbXBvcnQgPFdlYkNvcmUvUmVzb3VyY2VSZXF1ZXN0Lmg+CiAjaW1wb3J0IDxXZWJD
b3JlL1NoYXJlZEJ1ZmZlci5oPgorI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0aW9u
cy5oPgogI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlT2JqQ0V4dHJhcy5oPgogI2ltcG9ydCA8V2Vi
Q29yZS9XZWJDb3JlVVJMUmVzcG9uc2UuaD4KICNpbXBvcnQgPFdlYktpdExlZ2FjeS9ET01IVE1M
Lmg+CkBAIC0xNTUsNiArMTU2LDcgQEAgKyAodm9pZClpbml0aWFsaXplCiAjaWYgIVBMQVRGT1JN
KElPU19GQU1JTFkpCiAgICAgICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgICAgICBXVEY6Omlu
aXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAgICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0
aW9ucygpOwogI2VuZGlmCiAgICAgfQogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2Fj
eS9tYWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dl
YlZpZXcvV2ViSFRNTFZpZXcubW0KaW5kZXggNTU4NWYwYzJiZjgzMzUwNjBhMjY4Y2Q2OTZjYTM0
MWVjMGMxYTJiMi4uZWU2NDgxZjM4NjBhN2E3YjUxYTExMDc4ZTQzMzhkNzA1Y2ZkYWI2MSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbQor
KysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkhUTUxWaWV3Lm1tCkBAIC0x
MjcsNiArMTI3LDcgQEAKICNpbXBvcnQgPFdlYkNvcmUvVGV4dEFsdGVybmF0aXZlV2l0aFJhbmdl
Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1RleHRJbmRpY2F0b3IuaD4KICNpbXBvcnQgPFdlYkNvcmUv
VGV4dFVuZG9JbnNlcnRpb25NYXJrdXBNYWMuaD4KKyNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZUpJ
VE9wZXJhdGlvbnMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZU5TRm9udE1hbmFnZXJFeHRy
YXMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZU9iakNFeHRyYXMuaD4KICNpbXBvcnQgPFdl
YkNvcmUvV2ViTlNBdHRyaWJ1dGVkU3RyaW5nRXh0cmFzLmg+CkBAIC0xMDMzLDYgKzEwMzQsNyBA
QCArICh2b2lkKWluaXRpYWxpemUKIAogICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6
aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlv
bnMoKTsKIAogICAgIGlmICghb2xkU2V0Q3Vyc29yRm9yTW91c2VMb2NhdGlvbklNUCkgewogICAg
ICAgICBNZXRob2Qgc2V0Q3Vyc29yTWV0aG9kID0gY2xhc3NfZ2V0SW5zdGFuY2VNZXRob2QoW05T
V2luZG93IGNsYXNzXSwgQHNlbGVjdG9yKF9zZXRDdXJzb3JGb3JNb3VzZUxvY2F0aW9uOikpOwpA
QCAtMjU2OCw2ICsyNTcwLDcgQEAgKyAodm9pZClpbml0aWFsaXplCiAKICAgICBKU0M6OmluaXRp
YWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAgV2ViQ29yZTo6
cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiB9CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlcy5tbSBiL1NvdXJjZS9XZWJL
aXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW0KaW5kZXggNjAzZjBhNzJiMzgw
YjM2YTlhOGQwY2UzNjcwNTg2OTBmZDBiMjdhMi4uMzE0NzA1MjBkYzQyYmY1ODRmNDczOTAyNjI0
ZmZiYWU5NzA5NTg1MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmll
dy9XZWJQcmVmZXJlbmNlcy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3
L1dlYlByZWZlcmVuY2VzLm1tCkBAIC00OCw2ICs0OCw3IEBACiAjaW1wb3J0IDxXZWJDb3JlL1J1
bnRpbWVBcHBsaWNhdGlvbkNoZWNrcy5oPgogI2ltcG9ydCA8V2ViQ29yZS9TZXR0aW5ncy5oPgog
I2ltcG9ydCA8V2ViQ29yZS9UZXh0RW5jb2RpbmdSZWdpc3RyeS5oPgorI2ltcG9ydCA8V2ViQ29y
ZS9XZWJDb3JlSklUT3BlcmF0aW9ucy5oPgogI2ltcG9ydCA8cGFsL3NwaS9jZi9DRk5ldHdvcmtT
UEkuaD4KICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+CiAjaW1wb3J0IDx3dGYvUmV0YWluUHRy
Lmg+CkBAIC0zNzYsNiArMzc3LDcgQEAgKyAodm9pZClpbml0aWFsaXplCiAjaWYgUExBVEZPUk0o
TUFDKQogICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJl
YWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZgogCiAg
ICAgTlNEaWN0aW9uYXJ5ICpkaWN0ID0gW05TRGljdGlvbmFyeSBkaWN0aW9uYXJ5V2l0aE9iamVj
dHNBbmRLZXlzOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9X
ZWJSZXNvdXJjZS5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViUmVzb3Vy
Y2UubW0KaW5kZXggNDQ3ZTJhMWE5OTIyMzg3MDgyM2FkMjcwMjk5YTE3MDI0NzcyMDZmYi4uZWYx
MDk4NmRhODc1M2FiMzEwOWUwYWYxNjIxYjMwMTJmNGU5ZTZhNiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJSZXNvdXJjZS5tbQorKysgYi9Tb3VyY2UvV2Vi
S2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlJlc291cmNlLm1tCkBAIC00MCw2ICs0MCw3IEBACiAj
aW1wb3J0IDxXZWJDb3JlL1J1bnRpbWVBcHBsaWNhdGlvbkNoZWNrcy5oPgogI2ltcG9ydCA8V2Vi
Q29yZS9UZXh0RW5jb2RpbmcuaD4KICNpbXBvcnQgPFdlYkNvcmUvVGhyZWFkQ2hlY2suaD4KKyNp
bXBvcnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbXBvcnQgPFdlYkNvcmUv
V2ViQ29yZU9iakNFeHRyYXMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZVVSTFJlc3BvbnNl
Lmg+CiAjaW1wb3J0IDx3dGYvTWFpblRocmVhZC5oPgpAQCAtNjksNiArNzAsNyBAQCArICh2b2lk
KWluaXRpYWxpemUKICNpZiAhUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICBKU0M6OmluaXRpYWxp
emUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAgV2ViQ29yZTo6cG9w
dWxhdGVKSVRPcGVyYXRpb25zKCk7CiAjZW5kaWYKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJUZXh0SXRlcmF0b3IubW0gYi9Tb3VyY2UvV2ViS2l0
TGVnYWN5L21hYy9XZWJWaWV3L1dlYlRleHRJdGVyYXRvci5tbQppbmRleCBkM2FkOTE4ZGE3ZWUz
ZjZmNThmNDA5MDNjN2UxN2Q2YTY2ZTM4N2ExLi5hYmE3MWFmMjU0MzE5NWY1NjUwYjcxZTA3NTQy
ZjNjNzExNDdhYTdmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3
L1dlYlRleHRJdGVyYXRvci5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3
L1dlYlRleHRJdGVyYXRvci5tbQpAQCAtMzEsNiArMzEsNyBAQAogI2ltcG9ydCA8SmF2YVNjcmlw
dENvcmUvSW5pdGlhbGl6ZVRocmVhZGluZy5oPgogI2ltcG9ydCA8V2ViQ29yZS9SYW5nZS5oPgog
I2ltcG9ydCA8V2ViQ29yZS9UZXh0SXRlcmF0b3IuaD4KKyNpbXBvcnQgPFdlYkNvcmUvV2ViQ29y
ZUpJVE9wZXJhdGlvbnMuaD4KICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+CiAjaW1wb3J0IDx3
dGYvUnVuTG9vcC5oPgogI2ltcG9ydCA8d3RmL1ZlY3Rvci5oPgpAQCAtNDksNiArNTAsNyBAQCAr
ICh2b2lkKWluaXRpYWxpemUKICNpZiAhUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICBKU0M6Omlu
aXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAgV2ViQ29y
ZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAjZW5kaWYKIH0KIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tIGIvU291cmNlL1dlYktpdExl
Z2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCmluZGV4IDYyMzVkMmMxZWQ2YTYwNWM2ZGIzMjEw
YmFlMDEwYzBhZTJiMTU4MDQuLmM4MWE2NjRkMjY5MTQ1MGMyMjkxNzY4MmQzZDQ3YTY2OGQ3ZmZm
NDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlldy5t
bQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KQEAgLTIy
MSw2ICsyMjEsNyBAQAogI2ltcG9ydCA8V2ViQ29yZS9Vc2VyU2NyaXB0Lmg+CiAjaW1wb3J0IDxX
ZWJDb3JlL1VzZXJTdHlsZVNoZWV0Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1ZhbGlkYXRpb25CdWJi
bGUuaD4KKyNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbXBvcnQg
PFdlYkNvcmUvV2ViQ29yZU9iakNFeHRyYXMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZVZp
ZXcuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViVmlld1Zpc3VhbElkZW50aWZpY2F0aW9uT3Zlcmxh
eS5oPgpAQCAtNTI0NCw2ICs1MjQ1LDcgQEAgKyAodm9pZClpbml0aWFsaXplCiAjaWYgIVBMQVRG
T1JNKElPU19GQU1JTFkpCiAgICAgSlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFs
aXplTWFpblRocmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwog
I2VuZGlmCiAKICAgICBXVEY6OlJlZkNvdW50ZWRCYXNlOjplbmFibGVUaHJlYWRpbmdDaGVja3NH
bG9iYWxseSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9X
ZWJWaWV3RGF0YS5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlld0Rh
dGEubW0KaW5kZXggZmNlNGE2NjQ2NmQ4ZmZiNjRiNjIxMjU5MDMwMWViMjQzYmE4OTQ2Ni4uNGRk
MzlkNjZkZTQyZTQ5ZmFkYWQ0YWVjNzg4YjE0ZDJmZGQxZTVkZCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3RGF0YS5tbQorKysgYi9Tb3VyY2UvV2Vi
S2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXdEYXRhLm1tCkBAIC00MCw2ICs0MCw3IEBACiAj
aW1wb3J0IDxXZWJDb3JlL1J1bkxvb3BPYnNlcnZlci5oPgogI2ltcG9ydCA8V2ViQ29yZS9UZXh0
SW5kaWNhdG9yV2luZG93Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1ZhbGlkYXRpb25CdWJibGUuaD4K
KyNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbXBvcnQgPHd0Zi9N
YWluVGhyZWFkLmg+CiAjaW1wb3J0IDx3dGYvUnVuTG9vcC5oPgogCkBAIC0xNjksNiArMTcwLDcg
QEAgKyAodm9pZClpbml0aWFsaXplCiAjaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAgSlND
Ojppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOworICAgIFdl
YkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogI2VuZGlmCiB9CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYktpdENsYXNzRmFjdG9yeS5jcHAgYi9Tb3VyY2Uv
V2ViS2l0TGVnYWN5L3dpbi9XZWJLaXRDbGFzc0ZhY3RvcnkuY3BwCmluZGV4IDBhOWFjMTFjZDI2
NmU4OTlkZTNlYzljOTAzMTNjZmE3Y2JiZTQ2ODAuLmNlODYyMGZkNGJkNzdjN2VlZjhkYjhkNzQ2
NDNmOTUyYTNhZjFhNTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYktp
dENsYXNzRmFjdG9yeS5jcHAKKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS93aW4vV2ViS2l0Q2xh
c3NGYWN0b3J5LmNwcApAQCAtNTYsNiArNTYsNyBAQAogI2luY2x1ZGUgIldlYlZpZXcuaCIKICNp
bmNsdWRlICJXZWJXb3JrZXJzUHJpdmF0ZS5oIgogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0lu
aXRpYWxpemVUaHJlYWRpbmcuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRp
b25zLmg+CiAjaW5jbHVkZSA8d3RmL01haW5UaHJlYWQuaD4KICNpbmNsdWRlIDx3dGYvU29mdExp
bmtpbmcuaD4KIApAQCAtNjUsNiArNjYsNyBAQCBXZWJLaXRDbGFzc0ZhY3Rvcnk6OldlYktpdENs
YXNzRmFjdG9yeShDTFNJRCB0YXJnZXRDbGFzcykKIHsKICAgICBKU0M6OmluaXRpYWxpemUoKTsK
ICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVK
SVRPcGVyYXRpb25zKCk7CiAKICAgICBnQ2xhc3NDb3VudCsrOwogICAgIGdDbGFzc05hbWVDb3Vu
dCgpLmFkZCgiV2ViS2l0Q2xhc3NGYWN0b3J5Iik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
TGVnYWN5L3dpbi9XZWJWaWV3LmNwcCBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYlZpZXcu
Y3BwCmluZGV4IDkzYWIzYWZmYTA1MzhlYjUzZTRhZGY0ZTZlNmU5OGIyMWFlYzIzYjMuLmNiMzhj
MjRlOTkyZjEwYjdhNDg5ZjczMmU0NTlmYWZiN2E2YWRkMTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXRMZWdhY3kvd2luL1dlYlZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2lu
L1dlYlZpZXcuY3BwCkBAIC0xNjcsNiArMTY3LDcgQEAKICNpbmNsdWRlIDxXZWJDb3JlL1VzZXJD
b250ZW50Q29udHJvbGxlci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvVXNlclNjcmlwdC5oPgogI2lu
Y2x1ZGUgPFdlYkNvcmUvVXNlclN0eWxlU2hlZXQuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1dlYkNv
cmVKSVRPcGVyYXRpb25zLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9XZWJDb3JlVGV4dFJlbmRlcmVy
Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9XaW5kb3dNZXNzYWdlQnJvYWRjYXN0ZXIuaD4KICNpbmNs
dWRlIDxXZWJDb3JlL1dpbmRvd3NUb3VjaC5oPgpAQCAtNDIzLDYgKzQyNCw3IEBAIFdlYlZpZXc6
OldlYlZpZXcoKQogICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1h
aW5UaHJlYWQoKTsKICAgICBXVEY6OnNldFByb2Nlc3NQcml2aWxlZ2VzKGFsbFByaXZpbGVnZXMo
KSk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAgICAgV2ViQ29yZTo6
TmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpwZXJtaXRQcm9jZXNzVG9Vc2VDb29raWVBUEkodHJ1ZSk7
CiAKICAgICBtX2JhY2tpbmdTdG9yZVNpemUuY3ggPSBtX2JhY2tpbmdTdG9yZVNpemUuY3kgPSAw
Owo=
</data>
<flag name="commit-queue"
          id="426323"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>410396</attachid>
            <date>2020-10-02 18:21:19 -0700</date>
            <delta_ts>2020-10-02 18:22:57 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-217261-20201002182118.patch</filename>
            <type>text/plain</type>
            <size>89860</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY3OTA1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAx
YmFhODFhZGE3ZGFiODkzMDA1OGE1MTdjZDk2OTAzZmVlNmU3YWMwLi4xNmIwODY3ZGFiOWZmZWJh
YjgzMTc4MWQyY2QxNzVkODcwMWRiMDQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw5MiBAQAorMjAyMC0xMC0wMiAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIEludHJvZHVjZSBKSVRPcGVyYXRpb25MaXN0IHRvIHZhbGlkYXRl
IEpJVC1jYWdlZCBwb2ludGVycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjE3MjYxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIEpJVE9wZXJhdGlvbkxpc3QsIHdoaWNoIG1hbmFn
ZXMgYWxsIHRoZSBob3N0LWZ1bmN0aW9uICYgaml0LW9wZXJhdGlvbiBwb2ludGVycy4KKyAgICAg
ICAgQW5kIHdlIGNhbiBub3cgcXVlcnkgd2hldGhlciB0aGUgZ2l2ZW4gcG9pbnRlciBpcyByZWdp
c3RlcmVkIGluIHRoaXMgdGFibGUuCisgICAgICAgIEN1cnJlbnRseSwgYXMgYSB0ZXN0LCB3ZSBh
cmUgdmVyaWZ5aW5nIHRoYXQgaG9zdC1mdW5jdGlvbiBpcyByZWdpc3RlcmVkIGluIHRoaXMgdGFi
bGUgd2hlbiBjcmVhdGluZyBOYXRpdmVFeGVjdXRhYmxlIGluIGRlYnVnIGJ1aWxkLgorCisgICAg
ICAgICogQ01ha2VMaXN0cy50eHQ6CisgICAgICAgICogSmF2YVNjcmlwdENvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBTb3VyY2VzLnR4dDoKKyAgICAgICAgKiBhc3Nl
bWJsZXIvSklUT3BlcmF0aW9uTGlzdC5jcHA6IEFkZGVkLgorICAgICAgICAoSlNDOjpKSVRPcGVy
YXRpb25MaXN0Ojppbml0aWFsaXplKToKKyAgICAgICAgKEpTQzo6YWRkUG9pbnRlcnMpOgorICAg
ICAgICAoSlNDOjpKSVRPcGVyYXRpb25MaXN0Ojpwb3B1bGF0ZVBvaW50ZXJzSW5KYXZhU2NyaXB0
Q29yZSk6CisgICAgICAgIChKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6OnBvcHVsYXRlUG9pbnRlcnNJ
bkVtYmVkZGVyMSk6CisgICAgICAgIChKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6OnBvcHVsYXRlUG9p
bnRlcnNJbkVtYmVkZGVyMik6CisgICAgICAgICogYXNzZW1ibGVyL0pJVE9wZXJhdGlvbkxpc3Qu
aDogQWRkZWQuCisgICAgICAgIChKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6OmNvbnRhaW5zIGNvbnN0
KToKKyAgICAgICAgKEpTQzo6SklUT3BlcmF0aW9uTGlzdDo6YXNzZXJ0SXNIb3N0RnVuY3Rpb24p
OgorICAgICAgICAoSlNDOjpKSVRPcGVyYXRpb25MaXN0Ojphc3NlcnRJc0pJVE9wZXJhdGlvbik6
CisgICAgICAgIChKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6Omluc3RhbmNlKToKKyAgICAgICAgKiBq
c2MuY3BwOgorICAgICAgICAoanNjbWFpbik6CisgICAgICAgICogcnVudGltZS9Jbml0aWFsaXpl
VGhyZWFkaW5nLmNwcDoKKyAgICAgICAgKEpTQzo6aW5pdGlhbGl6ZSk6CisgICAgICAgICogcnVu
dGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZUZ1bmN0aW9ucy5oOgorICAgICAg
ICAoSlNDOjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNTZXQpOgorICAgICAgICAoSlND
OjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNDb3B5V2l0aGluKToKKyAgICAgICAgKEpT
Qzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jSW5jbHVkZXMpOgorICAgICAgICAoSlND
OjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNJbmRleE9mKToKKyAgICAgICAgKEpTQzo6
Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jSm9pbik6CisgICAgICAgIChKU0M6OmdlbmVy
aWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY0xhc3RJbmRleE9mKToKKyAgICAgICAgKEpTQzo6Z2Vu
ZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jQnVmZmVyKToKKyAgICAgICAgKEpTQzo6
Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jTGVuZ3RoKToKKyAgICAgICAgKEpT
Qzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jQnl0ZUxlbmd0aCk6CisgICAg
ICAgIChKU0M6OmdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvR2V0dGVyRnVuY0J5dGVPZmZzZXQp
OgorICAgICAgICAoSlNDOjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNSZXZlcnNlKToK
KyAgICAgICAgKEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJpdmF0ZUZ1bmNTb3J0KToKKyAg
ICAgICAgKEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jU2xpY2UpOgorICAgICAg
ICAoSlNDOjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcml2YXRlRnVuY1N1YmFycmF5Q3JlYXRlKToK
KyAgICAgICAgKEpTQzo6SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKTogRGVsZXRlZC4KKyAgICAg
ICAgKiBydW50aW1lL1ZNLmNwcDoKKyAgICAgICAgKEpTQzo6Vk06OmdldEhvc3RGdW5jdGlvbik6
CisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBKYXZhU2NyaXB0Q29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIFNvdXJjZXMudHh0OgorICAgICAg
ICAqIGFzc2VtYmxlci9KSVRPcGVyYXRpb25MaXN0LmNwcDogQWRkZWQuCisgICAgICAgIChKU0M6
OkpJVE9wZXJhdGlvbkxpc3Q6OmluaXRpYWxpemUpOgorICAgICAgICAoSlNDOjphZGRQb2ludGVy
cyk6CisgICAgICAgIChKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6OnBvcHVsYXRlUG9pbnRlcnNJbkph
dmFTY3JpcHRDb3JlKToKKyAgICAgICAgKEpTQzo6SklUT3BlcmF0aW9uTGlzdDo6cG9wdWxhdGVQ
b2ludGVyc0luRW1iZWRkZXIxKToKKyAgICAgICAgKEpTQzo6SklUT3BlcmF0aW9uTGlzdDo6cG9w
dWxhdGVQb2ludGVyc0luRW1iZWRkZXIyKToKKyAgICAgICAgKiBhc3NlbWJsZXIvSklUT3BlcmF0
aW9uTGlzdC5oOiBBZGRlZC4KKyAgICAgICAgKEpTQzo6SklUT3BlcmF0aW9uTGlzdDo6Y29udGFp
bnMgY29uc3QpOgorICAgICAgICAoSlNDOjpKSVRPcGVyYXRpb25MaXN0Ojphc3NlcnRJc0hvc3RG
dW5jdGlvbik6CisgICAgICAgIChKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6OmFzc2VydElzSklUT3Bl
cmF0aW9uKToKKyAgICAgICAgKEpTQzo6SklUT3BlcmF0aW9uTGlzdDo6aW5zdGFuY2UpOgorICAg
ICAgICAqIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTTY0LmNwcDoKKyAgICAgICAgKiBhc3Nl
bWJsZXIvTWFjcm9Bc3NlbWJsZXJBUk12Ny5jcHA6CisgICAgICAgICogYXNzZW1ibGVyL01hY3Jv
QXNzZW1ibGVyTUlQUy5jcHA6CisgICAgICAgICogYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyWDg2
Q29tbW9uLmNwcDoKKyAgICAgICAgKiBqc2MuY3BwOgorICAgICAgICAoanNjbWFpbik6CisgICAg
ICAgICogcnVudGltZS9Jbml0aWFsaXplVGhyZWFkaW5nLmNwcDoKKyAgICAgICAgKEpTQzo6aW5p
dGlhbGl6ZSk6CisgICAgICAgICogcnVudGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3Rv
dHlwZUZ1bmN0aW9ucy5oOgorICAgICAgICAoSlNDOjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90
b0Z1bmNTZXQpOgorICAgICAgICAoSlNDOjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmND
b3B5V2l0aGluKToKKyAgICAgICAgKEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5j
SW5jbHVkZXMpOgorICAgICAgICAoSlNDOjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNJ
bmRleE9mKToKKyAgICAgICAgKEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jSm9p
bik6CisgICAgICAgIChKU0M6OmdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY0xhc3RJbmRl
eE9mKToKKyAgICAgICAgKEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5j
QnVmZmVyKToKKyAgICAgICAgKEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJG
dW5jTGVuZ3RoKToKKyAgICAgICAgKEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0
ZXJGdW5jQnl0ZUxlbmd0aCk6CisgICAgICAgIChKU0M6OmdlbmVyaWNUeXBlZEFycmF5Vmlld1By
b3RvR2V0dGVyRnVuY0J5dGVPZmZzZXQpOgorICAgICAgICAoSlNDOjpnZW5lcmljVHlwZWRBcnJh
eVZpZXdQcm90b0Z1bmNSZXZlcnNlKToKKyAgICAgICAgKEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlW
aWV3UHJpdmF0ZUZ1bmNTb3J0KToKKyAgICAgICAgKEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3
UHJvdG9GdW5jU2xpY2UpOgorICAgICAgICAoSlNDOjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcml2
YXRlRnVuY1N1YmFycmF5Q3JlYXRlKToKKyAgICAgICAgKEpTQzo6SlNDX0RFRklORV9IT1NUX0ZV
TkNUSU9OKTogRGVsZXRlZC4KKyAgICAgICAgKiBydW50aW1lL1ZNLmNwcDoKKyAgICAgICAgKEpT
Qzo6Vk06OmdldEhvc3RGdW5jdGlvbik6CisKIDIwMjAtMTAtMDIgIEFkcmlhbiBQZXJleiBkZSBD
YXN0cm8gIDxhcGVyZXpAaWdhbGlhLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLiBbR1RLXSBB
ZGQgbWlzc2luZyBsb2NhbGUuaCBoZWFkZXIgbmVlZGVkIGZvciBzZXRsb2NhbGUoKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dURi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV1RGL0NoYW5nZUxvZwppbmRleCBi
NzcwNmYzZGJiOTQyZTkwY2MwMGVkOThkN2YyOTQ3MThiN2E2YjRmLi5mMWMyMWEwMWZiYzU0NDky
MGU5YjQ5MzkzYjQ3MzZiYWRkYzNjZTBhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL0NoYW5nZUxv
ZworKysgYi9Tb3VyY2UvV1RGL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDIwLTEwLTAy
ICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CisKKyAgICAgICAgW0pTQ10gSW50
cm9kdWNlIEpJVE9wZXJhdGlvbkxpc3QgdG8gdmFsaWRhdGUgSklULWNhZ2VkIHBvaW50ZXJzCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTcyNjEKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHd0Zi9QbGF0
Zm9ybUNhbGxpbmdDb252ZW50aW9ucy5oOgorICAgICAgICAqIHd0Zi9QbGF0Zm9ybUVuYWJsZS5o
OgorCiAyMDIwLTEwLTAyICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5v
cmc+CiAKICAgICAgICAgQ29weSBob3N0IGZyb20gYmFzZSBmaWxlIFVSTApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4
IDY3NDM3MTA4NWFiZGRkODgyZDc5Y2RiNDQxODBmMTJjZjU4ODliNDYuLjdkNjA1NjRhNTEzZjA3
ZWM4NGIwMmQ5Mzc5ZjNjYTM0Yjc4N2IzMmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyOSBAQAor
MjAyMC0xMC0wMiAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgorCisgICAgICAg
IFtKU0NdIEludHJvZHVjZSBKSVRPcGVyYXRpb25MaXN0IHRvIHZhbGlkYXRlIEpJVC1jYWdlZCBw
b2ludGVycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjE3MjYxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
KiBIZWFkZXJzLmNtYWtlOgorICAgICAgICAqIFNvdXJjZXMudHh0OgorICAgICAgICAqIFdlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RP
TUJ1aWx0aW5Db25zdHJ1Y3Rvci5oOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NQ29uc3Ry
dWN0b3IuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUxlZ2FjeUZhY3RvcnlGdW5jdGlv
bi5oOgorICAgICAgICAqIGJpbmRpbmdzL2pzL1NjcmlwdENvbnRyb2xsZXIuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6U2NyaXB0Q29udHJvbGxlcjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQpOgorICAg
ICAgICAqIGJpbmRpbmdzL2pzL1dlYkNvcmVKSVRPcGVyYXRpb25zLmNwcDogQ29waWVkIGZyb20g
U291cmNlL1dlYktpdC9TaGFyZWQvV2ViS2l0MkluaXRpYWxpemUuY3BwLgorICAgICAgICAoV2Vi
Q29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9XZWJD
b3JlSklUT3BlcmF0aW9ucy5oOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJL
aXQySW5pdGlhbGl6ZS5jcHAuCisgICAgICAgICogYnJpZGdlL29iamMvV2ViU2NyaXB0T2JqZWN0
Lm1tOgorICAgICAgICAoK1tXZWJTY3JpcHRPYmplY3QgaW5pdGlhbGl6ZV0pOgorICAgICAgICAq
IGRvbWppdC9KU0RvY3VtZW50RE9NSklULmNwcDoKKyAgICAgICAgKiBwbGF0Zm9ybS9jb2NvYS9T
aGFyZWRCdWZmZXJDb2NvYS5tbToKKyAgICAgICAgKCtbV2ViQ29yZVNoYXJlZEJ1ZmZlckRhdGEg
aW5pdGlhbGl6ZV0pOgorICAgICAgICAqIHBsYXRmb3JtL2lvcy93YWsvV2ViQ29yZVRocmVhZC5t
bToKKyAgICAgICAgKFJ1bldlYlRocmVhZCk6CisKIDIwMjAtMTAtMDIgIFRydWl0dCBTYXZlbGwg
IDx0c2F2ZWxsQGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCByZXZlcnRpbmcgcjI2
Nzg4Ny4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktp
dC9DaGFuZ2VMb2cKaW5kZXggMDA1NGRmZDc4ODE5ZjZkNjNlOTA4OWUyNzI5OTk1MGIwN2M3YTc4
NC4uN2VjYWEzNzc4NGNkNGM0OTBkMmRiODQyZTgzZjBlYTU5YWRlMTA1NCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwyMiBAQAorMjAyMC0xMC0wMiAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUu
Y29tPgorCisgICAgICAgIFtKU0NdIEludHJvZHVjZSBKSVRPcGVyYXRpb25MaXN0IHRvIHZhbGlk
YXRlIEpJVC1jYWdlZCBwb2ludGVycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjE3MjYxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgKiBTaGFyZWQvQVBJL2MvV0tTdHJpbmcuY3BwOgorICAgICAgICAoV0tT
dHJpbmdDb3B5SlNTdHJpbmcpOgorICAgICAgICAqIFNoYXJlZC9Db2NvYS9XZWJLaXQySW5pdGlh
bGl6ZUNvY29hLm1tOgorICAgICAgICAoV2ViS2l0OjpydW5Jbml0aWFsaXphdGlvbkNvZGUpOgor
ICAgICAgICAqIFNoYXJlZC9XZWJLaXQySW5pdGlhbGl6ZS5jcHA6CisgICAgICAgIChXZWJLaXQ6
OkluaXRpYWxpemVXZWJLaXQyKToKKyAgICAgICAgKiBTaGFyZWQvV2ViS2l0SklUT3BlcmF0aW9u
cy5jcHA6IENvcGllZCBmcm9tIFNvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYktpdDJJbml0aWFsaXpl
LmNwcC4KKyAgICAgICAgKFdlYktpdDo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKToKKyAgICAgICAg
KiBTaGFyZWQvV2ViS2l0SklUT3BlcmF0aW9ucy5oOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViS2l0
L1NoYXJlZC9XZWJLaXQySW5pdGlhbGl6ZS5jcHAuCisgICAgICAgICogU291cmNlcy50eHQ6Cisg
ICAgICAgICogV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisKIDIwMjAtMTAtMDIg
IEthdGUgQ2hlbmV5ICA8a2F0aGVyaW5lX2NoZW5leUBhcHBsZS5jb20+CiAKICAgICAgICAgTXVs
dGlwbGUgY2FsbHMgdG8gc3VzcGVuZCBtZWRpYSBwbGF5YmFjayBmb3IgdGhlIHNhbWUgcGFnZSBt
YXkgcmVzdWx0IGluIHJlc3VtaW5nIG1lZGlhIHBsYXliYWNrIHRvbyBzb29uCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5
L21hYy9DaGFuZ2VMb2cKaW5kZXggZjA3YjA0YTcwMjIwNWQwZmI1OGRmYTcwZjhkYTZjNDI3OTI4
YjIyZS4uNmRlMzM5NGY1ODZlNGZhZDc4YTBhNWYyNDNlZjEyYmQzMTJkYWIyYyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUwIEBACisyMDIwLTEwLTAyICBZdXN1a2Ug
U3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CisKKyAgICAgICAgW0pTQ10gSW50cm9kdWNlIEpJ
VE9wZXJhdGlvbkxpc3QgdG8gdmFsaWRhdGUgSklULWNhZ2VkIHBvaW50ZXJzCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTcyNjEKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIEhpc3RvcnkvV2ViQmFja0Zv
cndhcmRMaXN0Lm1tOgorICAgICAgICAoK1tXZWJCYWNrRm9yd2FyZExpc3QgaW5pdGlhbGl6ZV0p
OgorICAgICAgICAqIEhpc3RvcnkvV2ViSGlzdG9yeUl0ZW0ubW06CisgICAgICAgICgrW1dlYkhp
c3RvcnlJdGVtIGluaXRpYWxpemVdKToKKyAgICAgICAgKiBNaXNjL1dlYkNhY2hlLm1tOgorICAg
ICAgICAoK1tXZWJDYWNoZSBpbml0aWFsaXplXSk6CisgICAgICAgICogTWlzYy9XZWJFbGVtZW50
RGljdGlvbmFyeS5tbToKKyAgICAgICAgKCtbV2ViRWxlbWVudERpY3Rpb25hcnkgaW5pdGlhbGl6
ZV0pOgorICAgICAgICAqIE1pc2MvV2ViSWNvbkRhdGFiYXNlLm1tOgorICAgICAgICAqIE1pc2Mv
V2ViU3RyaW5nVHJ1bmNhdG9yLm1tOgorICAgICAgICAoK1tXZWJTdHJpbmdUcnVuY2F0b3IgaW5p
dGlhbGl6ZV0pOgorICAgICAgICAqIFBsdWdpbnMvSG9zdGVkL1dlYkhvc3RlZE5ldHNjYXBlUGx1
Z2luVmlldy5tbToKKyAgICAgICAgKCtbV2ViSG9zdGVkTmV0c2NhcGVQbHVnaW5WaWV3IGluaXRp
YWxpemVdKToKKyAgICAgICAgKiBQbHVnaW5zL1dlYkJhc2VOZXRzY2FwZVBsdWdpblZpZXcubW06
CisgICAgICAgICogUGx1Z2lucy9XZWJCYXNlUGx1Z2luUGFja2FnZS5tbToKKyAgICAgICAgKCtb
V2ViQmFzZVBsdWdpblBhY2thZ2UgaW5pdGlhbGl6ZV0pOgorICAgICAgICAqIFBsdWdpbnMvV2Vi
TmV0c2NhcGVQbHVnaW5WaWV3Lm1tOgorICAgICAgICAoK1tXZWJOZXRzY2FwZVBsdWdpblZpZXcg
aW5pdGlhbGl6ZV0pOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5t
bToKKyAgICAgICAgKCtbV2ViVW5kb1N0ZXAgaW5pdGlhbGl6ZV0pOgorICAgICAgICAqIFdlYkNv
cmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lm1tOgorICAgICAgICAoK1tXZWJGcmFtZVBv
bGljeUxpc3RlbmVyIGluaXRpYWxpemVdKToKKyAgICAgICAgKiBXZWJWaWV3L1dlYkFyY2hpdmUu
bW06CisgICAgICAgICgrW1dlYkFyY2hpdmVQcml2YXRlIGluaXRpYWxpemVdKToKKyAgICAgICAg
KiBXZWJWaWV3L1dlYkRhdGFTb3VyY2UubW06CisgICAgICAgICgrW1dlYkRhdGFTb3VyY2UgaW5p
dGlhbGl6ZV0pOgorICAgICAgICAqIFdlYlZpZXcvV2ViSFRNTFZpZXcubW06CisgICAgICAgICgr
W1dlYkhUTUxWaWV3UHJpdmF0ZSBpbml0aWFsaXplXSk6CisgICAgICAgICgrW1dlYkhUTUxWaWV3
IGluaXRpYWxpemVdKToKKyAgICAgICAgKiBXZWJWaWV3L1dlYlByZWZlcmVuY2VzLm1tOgorICAg
ICAgICAoK1tXZWJQcmVmZXJlbmNlcyBpbml0aWFsaXplXSk6CisgICAgICAgICogV2ViVmlldy9X
ZWJSZXNvdXJjZS5tbToKKyAgICAgICAgKCtbV2ViUmVzb3VyY2VQcml2YXRlIGluaXRpYWxpemVd
KToKKyAgICAgICAgKiBXZWJWaWV3L1dlYlRleHRJdGVyYXRvci5tbToKKyAgICAgICAgKCtbV2Vi
VGV4dEl0ZXJhdG9yUHJpdmF0ZSBpbml0aWFsaXplXSk6CisgICAgICAgICogV2ViVmlldy9XZWJW
aWV3Lm1tOgorICAgICAgICAoK1tXZWJWaWV3IGluaXRpYWxpemVdKToKKyAgICAgICAgKiBXZWJW
aWV3L1dlYlZpZXdEYXRhLm1tOgorICAgICAgICAoK1tXZWJWaWV3UHJpdmF0ZSBpbml0aWFsaXpl
XSk6CisKIDIwMjAtMTAtMDEgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAg
ICAgICBBZGQgYmFzaWMgaW5mcmFzdHJ1Y3R1cmUgZm9yIEF1ZGlvV29ya2xldApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdExlZ2FjeS93aW4vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdExlZ2Fj
eS93aW4vQ2hhbmdlTG9nCmluZGV4IDA0ZDRhMzk4YjMyN2U0ZDhmZjFjOTE5OTc1YjMyZGY1NDZk
OGNiM2UuLjlmMGQ5ZDcwNjRjMGEzMTFkYjMxMTQxMjlhYzQ2M2I0NjRmM2VlMzUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0
TGVnYWN5L3dpbi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMC0xMC0wMiAgWXVzdWtl
IFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgorCisgICAgICAgIFtKU0NdIEludHJvZHVjZSBK
SVRPcGVyYXRpb25MaXN0IHRvIHZhbGlkYXRlIEpJVC1jYWdlZCBwb2ludGVycworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE3MjYxCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJLaXRDbGFzc0ZhY3Rv
cnkuY3BwOgorICAgICAgICAoV2ViS2l0Q2xhc3NGYWN0b3J5OjpXZWJLaXRDbGFzc0ZhY3Rvcnkp
OgorICAgICAgICAqIFdlYlZpZXcuY3BwOgorICAgICAgICAoV2ViVmlldzo6V2ViVmlldyk6CisK
IDIwMjAtMTAtMDEgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBB
ZGQgYmFzaWMgaW5mcmFzdHJ1Y3R1cmUgZm9yIEF1ZGlvV29ya2xldApkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L0NNYWtlTGlzdHMudHh0CmluZGV4IDgwMGRlZjRhYTllYzI2OTdhNTA0MWI4MGRmMDhlNzEwODYy
MzUyM2IuLjViNGM1ODQ4YzU4Y2E2NmJjNjU2ZWRhYThmZjNjOWNmZjdlY2YwMWYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTQ3NCw2ICs0NzQsNyBAQCBzZXQoSmF2YVNj
cmlwdENvcmVfUFJJVkFURV9GUkFNRVdPUktfSEVBREVSUwogICAgIGFzc2VtYmxlci9DUFUuaAog
ICAgIGFzc2VtYmxlci9Db2RlTG9jYXRpb24uaAogICAgIGFzc2VtYmxlci9GYXN0SklUUGVybWlz
c2lvbnMuaAorICAgIGFzc2VtYmxlci9KSVRPcGVyYXRpb25MaXN0LmgKICAgICBhc3NlbWJsZXIv
TGlua0J1ZmZlci5oCiAgICAgYXNzZW1ibGVyL01JUFNBc3NlbWJsZXIuaAogICAgIGFzc2VtYmxl
ci9NSVBTUmVnaXN0ZXJzLmgKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZh
U2NyaXB0Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0phdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggMzdmZWJm
ZjY1YWIzNmIxZTA1ZjM3OGE5ZjQ0NTg0MTllOGUwNDk2ZC4uNzg5OWQyMDljYjc3MWYxMTQ2NWM2
ZDQ0MDYwZWNkYjQ2YWQ1ODZmZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0ph
dmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE4
ODEsNiArMTg4MSw3IEBACiAJCUUzQzY5NEIzMjMwMjY4NzcwMDZGQkU0MiAvKiBXYXNtT1NSRW50
cnlEYXRhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBF
M0M2OTRCMTIzMDI2ODczMDA2RkJFNDIgLyogV2FzbU9TUkVudHJ5RGF0YS5oICovOyB9OwogCQlF
M0M3OUNBQjFEQjlBNERDMDBEMUVDQTQgLyogRE9NSklURWZmZWN0LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFM0M3OUNBQTFEQjlBNEQ2MDBEMUVDQTQg
LyogRE9NSklURWZmZWN0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKIAkJRTNDOEVENDMyM0ExREJDQjAwMTMxOTU4IC8qIElzb0lubGluZWRIZWFwQ2Vs
bFR5cGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUz
QzhFRDQyMjNBMURCQzUwMDEzMTk1OCAvKiBJc29JbmxpbmVkSGVhcENlbGxUeXBlLmggKi87IH07
CisJCUUzQ0EzQTRFMjUyN0FCMkYwMDQ4MDJCRiAvKiBKSVRPcGVyYXRpb25MaXN0LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFM0NBM0E0QzI1MjdBQjJG
MDA0ODAyQkYgLyogSklUT3BlcmF0aW9uTGlzdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CiAJCUUzRDIzOUM5MUI4MjlDMUMwMEJCRUY2NyAvKiBKU01v
ZHVsZUVudmlyb25tZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBFM0QyMzlDNzFCODI5QzFDMDBCQkVGNjcgLyogSlNNb2R1bGVFbnZpcm9ubWVudC5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUUzRDM1
MTVGMjQxQjg5RDcwMDhEQzE2RSAvKiBNYXJrZWRKU1ZhbHVlUmVmQXJyYXkuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzRDM1MTVEMjQxQjg5Q0UwMDhE
QzE2RSAvKiBNYXJrZWRKU1ZhbHVlUmVmQXJyYXkuaCAqLzsgfTsKIAkJRTNEODc3NzQxRTY1QzBB
MDAwQkU5NDVBIC8qIEJ5dGVjb2RlRHVtcGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBFM0Q4Nzc3MjFFNjVDMDg5MDBCRTk0NUEgLyogQnl0ZWNvZGVE
dW1wZXIuaCAqLzsgfTsKQEAgLTUxMDcsNiArNTEwOCw4IEBACiAJCUUzQzc5Q0FBMURCOUE0RDYw
MEQxRUNBNCAvKiBET01KSVRFZmZlY3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gRE9NSklURWZmZWN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUzQzhFRDQx
MjNBMURCQzQwMDEzMTk1OCAvKiBJc29IZWFwQ2VsbFR5cGUuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSXNvSGVhcENlbGxUeXBlLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJRTNDOEVENDIyM0ExREJDNTAwMTMxOTU4IC8qIElzb0lubGluZWRIZWFw
Q2VsbFR5cGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSXNvSW5saW5lZEhl
YXBDZWxsVHlwZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFM0NBM0E0QjI1MjdB
QjJFMDA0ODAyQkYgLyogSklUT3BlcmF0aW9uTGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBKSVRPcGVyYXRpb25MaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJRTNDQTNBNEMyNTI3QUIyRjAwNDgwMkJGIC8qIEpJVE9wZXJhdGlvbkxpc3Qu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSklUT3BlcmF0aW9uTGlzdC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFM0QyMzlDNjFCODI5QzFDMDBCQkVGNjcgLyog
SlNNb2R1bGVFbnZpcm9ubWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBKU01vZHVsZUVudmlyb25tZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJRTNEMjM5QzcxQjgyOUMxQzAwQkJFRjY3IC8qIEpTTW9kdWxlRW52aXJvbm1lbnQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNNb2R1bGVFbnZpcm9ubWVudC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFM0QyNjQyNjFEMzhDMDQyMDAwQkUxNzQgLyogQnl0
ZWNvZGVHZW5lcmF0b3JpZmljYXRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gQnl0ZWNvZGVHZW5lcmF0b3JpZmljYXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwpAQCAtODI4NCw2ICs4Mjg3LDggQEAKIAkJCQkwRjMwRDdCRjFEOTVENjJGMDA1
MzA4OUQgLyogQ1BVLmggKi8sCiAJCQkJMEYzNzMwOEUxQzBDRDY4NTAwMDUyQkZBIC8qIERpc2Fs
bG93TWFjcm9TY3JhdGNoUmVnaXN0ZXJVc2FnZS5oICovLAogCQkJCTUyNjdDRjgxMjQ5MzE2QUQw
MDIyQkY2RCAvKiBGYXN0SklUUGVybWlzc2lvbnMuaCAqLywKKwkJCQlFM0NBM0E0QjI1MjdBQjJF
MDA0ODAyQkYgLyogSklUT3BlcmF0aW9uTGlzdC5jcHAgKi8sCisJCQkJRTNDQTNBNEMyNTI3QUIy
RjAwNDgwMkJGIC8qIEpJVE9wZXJhdGlvbkxpc3QuaCAqLywKIAkJCQkwRkY0Mjc1NjE1OTE0QTIw
MDA0Q0I5RkYgLyogTGlua0J1ZmZlci5jcHAgKi8sCiAJCQkJODZEM0IzQzExMDE1OUQ3RjAwMjg2
NUU3IC8qIExpbmtCdWZmZXIuaCAqLywKIAkJCQkwRkVCM0VDRTE2MjM3RjY3MDBBQjY3QUQgLyog
TWFjcm9Bc3NlbWJsZXIuY3BwICovLApAQCAtOTkwNSw2ICs5OTEwLDcgQEAKIAkJCQk3OUFGMEJF
NDFEM0VGRDRDMDBFOTVGQTUgLyogSklUTWF0aElDSW5saW5lUmVzdWx0LmggaW4gSGVhZGVycyAq
LywKIAkJCQlGRTE4N0EwMjFCRkJFNTYxMDAzOEJCQ0EgLyogSklUTXVsR2VuZXJhdG9yLmggaW4g
SGVhZGVycyAqLywKIAkJCQlGRTk5QjI0OTFDMjRDM0QzMDBDODIxNTkgLyogSklUTmVnR2VuZXJh
dG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQlFM0NBM0E0RTI1MjdBQjJGMDA0ODAyQkYgLyogSklU
T3BlcmF0aW9uTGlzdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEYyNEU1NEQxN0VFMjc0OTAwQUJC
MjE3IC8qIEpJVE9wZXJhdGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCUZFM0EwNkMwMUMxMTA0
MUEwMDM5MEZERCAvKiBKSVRSaWdodFNoaWZ0R2VuZXJhdG9yLmggaW4gSGVhZGVycyAqLywKIAkJ
CQkwRjc2NkQzMTE1QUE4MTEyMDA4RjM2M0UgLyogSklUU3R1YlJvdXRpbmUuaCBpbiBIZWFkZXJz
ICovLApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL1NvdXJjZXMudHh0IGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL1NvdXJjZXMudHh0CmluZGV4IGNmZTRlZWY3NWRlNjU3NDEwM2Rl
NTEzMTAzMjJiNzg3MGMxNjdkOWIuLjcxMTQyMTRkYWQ0ZWYzMTczMGJmZWE4NGYxNmM5Y2JiYzFk
OWNjMDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9Tb3VyY2VzLnR4dAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvU291cmNlcy50eHQKQEAgLTQ2LDYgKzQ2LDcgQEAgQVBJ
L09wYXF1ZUpTU3RyaW5nLmNwcAogYXNzZW1ibGVyL0Fic3RyYWN0TWFjcm9Bc3NlbWJsZXIuY3Bw
CiBhc3NlbWJsZXIvQXNzZW1ibGVyQnVmZmVyLmNwcAogYXNzZW1ibGVyL0NQVS5jcHAKK2Fzc2Vt
Ymxlci9KSVRPcGVyYXRpb25MaXN0LmNwcAogYXNzZW1ibGVyL0xpbmtCdWZmZXIuY3BwCiBhc3Nl
bWJsZXIvTWFjcm9Bc3NlbWJsZXIuY3BwCiBhc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJBUk02NC5j
cHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvSklUT3BlcmF0
aW9uTGlzdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL0pJVE9wZXJhdGlv
bkxpc3QuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU4OTNjYTY4OTYzMmM4NGE1NmYzMmIxZWU3NjA2YTk5MTA0
NWNiMTQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVy
L0pJVE9wZXJhdGlvbkxpc3QuY3BwCkBAIC0wLDAgKzEsMTAyIEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBB
TlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
ICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1
ZGUgIkpJVE9wZXJhdGlvbkxpc3QuaCIKKworbmFtZXNwYWNlIEpTQyB7CisKK0xhenlOZXZlckRl
c3Ryb3llZDxKSVRPcGVyYXRpb25MaXN0PiBqaXRPcGVyYXRpb25MaXN0OworCisjaWYgRU5BQkxF
KEpJVF9PUEVSQVRJT05fVkFMSURBVElPTikKK2V4dGVybiBjb25zdCB1aW50cHRyX3Qgc3RhcnRP
Zkhvc3RGdW5jdGlvbnNJbkpTQyBfX2FzbSgic2VjdGlvbiRzdGFydCRfX0RBVEFfQ09OU1QkX19q
c2NfaG9zdCIpOworZXh0ZXJuIGNvbnN0IHVpbnRwdHJfdCBlbmRPZkhvc3RGdW5jdGlvbnNJbkpT
QyBfX2FzbSgic2VjdGlvbiRlbmQkX19EQVRBX0NPTlNUJF9fanNjX2hvc3QiKTsKK2V4dGVybiBj
b25zdCB1aW50cHRyX3Qgc3RhcnRPZkpJVE9wZXJhdGlvbnNJbkpTQyBfX2FzbSgic2VjdGlvbiRz
dGFydCRfX0RBVEFfQ09OU1QkX19qc2Nfb3BzIik7CitleHRlcm4gY29uc3QgdWludHB0cl90IGVu
ZE9mSklUT3BlcmF0aW9uc0luSlNDIF9fYXNtKCJzZWN0aW9uJGVuZCRfX0RBVEFfQ09OU1QkX19q
c2Nfb3BzIik7CisjZW5kaWYKKwordm9pZCBKSVRPcGVyYXRpb25MaXN0Ojppbml0aWFsaXplKCkK
K3sKKyAgICBqaXRPcGVyYXRpb25MaXN0LmNvbnN0cnVjdCgpOworfQorCisjaWYgRU5BQkxFKEpJ
VF9PUEVSQVRJT05fVkFMSURBVElPTikKK3N0YXRpYyBBTFdBWVNfSU5MSU5FIHZvaWQgYWRkUG9p
bnRlcnMoSGFzaE1hcDx2b2lkKiwgdm9pZCo+JiBtYXAsIGNvbnN0IHVpbnRwdHJfdCogYmVnaW5I
b3N0LCBjb25zdCB1aW50cHRyX3QqIGVuZEhvc3QsIGNvbnN0IHVpbnRwdHJfdCogYmVnaW5PcGVy
YXRpb25zLCBjb25zdCB1aW50cHRyX3QqIGVuZE9wZXJhdGlvbnMpCit7CisgICAgZm9yIChjb25z
dCB1aW50cHRyX3QqIGN1cnJlbnQgPSBiZWdpbkhvc3Q7IGN1cnJlbnQgIT0gZW5kSG9zdDsgKytj
dXJyZW50KSB7CisgICAgICAgIHZvaWQqIGNvZGVQdHIgPSByZW1vdmVDb2RlUHRyVGFnKGJpdHdp
c2VfY2FzdDx2b2lkKj4oKmN1cnJlbnQpKTsKKyAgICAgICAgYXV0byByZXN1bHQgPSBtYXAuYWRk
KGNvZGVQdHIsIHRhZ0NvZGVQdHIoY29kZVB0ciwgSlNFbnRyeVB0clRhZykpOworICAgICAgICBB
U1NFUlQocmVzdWx0LmlzTmV3RW50cnkpOworICAgIH0KKyAgICBmb3IgKGNvbnN0IHVpbnRwdHJf
dCogY3VycmVudCA9IGJlZ2luT3BlcmF0aW9uczsgY3VycmVudCAhPSBlbmRPcGVyYXRpb25zOyAr
K2N1cnJlbnQpIHsKKyAgICAgICAgdm9pZCogY29kZVB0ciA9IHJlbW92ZUNvZGVQdHJUYWcoYml0
d2lzZV9jYXN0PHZvaWQqPigqY3VycmVudCkpOworICAgICAgICBhdXRvIHJlc3VsdCA9IG1hcC5h
ZGQoY29kZVB0ciwgdGFnQ29kZVB0cihjb2RlUHRyLCBPcGVyYXRpb25QdHJUYWcpKTsKKyAgICAg
ICAgQVNTRVJUKHJlc3VsdC5pc05ld0VudHJ5KTsKKyAgICB9Cit9CisjZW5kaWYKKwordm9pZCBK
SVRPcGVyYXRpb25MaXN0Ojpwb3B1bGF0ZVBvaW50ZXJzSW5KYXZhU2NyaXB0Q29yZSgpCit7Cisj
aWYgRU5BQkxFKEpJVF9PUEVSQVRJT05fVkFMSURBVElPTikKKyAgICBzdGQ6Om9uY2VfZmxhZyBv
bmNlS2V5OworICAgIHN0ZDo6Y2FsbF9vbmNlKG9uY2VLZXksIFtdIHsKKyAgICAgICAgaWYgKE9w
dGlvbnM6OnVzZUpJVCgpKQorICAgICAgICAgICAgYWRkUG9pbnRlcnMoaml0T3BlcmF0aW9uTGlz
dC0+bV92YWxpZGF0ZWRPcGVyYXRpb25zLCAmc3RhcnRPZkhvc3RGdW5jdGlvbnNJbkpTQywgJmVu
ZE9mSG9zdEZ1bmN0aW9uc0luSlNDLCAmc3RhcnRPZkpJVE9wZXJhdGlvbnNJbkpTQywgJmVuZE9m
SklUT3BlcmF0aW9uc0luSlNDKTsKKyAgICB9KTsKKyNlbmRpZgorfQorCit2b2lkIEpJVE9wZXJh
dGlvbkxpc3Q6OnBvcHVsYXRlUG9pbnRlcnNJbkVtYmVkZGVyMShjb25zdCB1aW50cHRyX3QqIGJl
Z2luSG9zdCwgY29uc3QgdWludHB0cl90KiBlbmRIb3N0LCBjb25zdCB1aW50cHRyX3QqIGJlZ2lu
T3BlcmF0aW9ucywgY29uc3QgdWludHB0cl90KiBlbmRPcGVyYXRpb25zKQoreworICAgIFVOVVNF
RF9QQVJBTShiZWdpbkhvc3QpOworICAgIFVOVVNFRF9QQVJBTShlbmRIb3N0KTsKKyAgICBVTlVT
RURfUEFSQU0oYmVnaW5PcGVyYXRpb25zKTsKKyAgICBVTlVTRURfUEFSQU0oZW5kT3BlcmF0aW9u
cyk7CisjaWYgRU5BQkxFKEpJVF9PUEVSQVRJT05fVkFMSURBVElPTikKKyAgICBzdGQ6Om9uY2Vf
ZmxhZyBvbmNlS2V5OworICAgIHN0ZDo6Y2FsbF9vbmNlKG9uY2VLZXksIFs9XSB7CisgICAgICAg
IGlmIChPcHRpb25zOjp1c2VKSVQoKSkKKyAgICAgICAgICAgIGFkZFBvaW50ZXJzKGppdE9wZXJh
dGlvbkxpc3QtPm1fdmFsaWRhdGVkT3BlcmF0aW9ucywgYmVnaW5Ib3N0LCBlbmRIb3N0LCBiZWdp
bk9wZXJhdGlvbnMsIGVuZE9wZXJhdGlvbnMpOworICAgIH0pOworI2VuZGlmCit9CisKK3ZvaWQg
SklUT3BlcmF0aW9uTGlzdDo6cG9wdWxhdGVQb2ludGVyc0luRW1iZWRkZXIyKGNvbnN0IHVpbnRw
dHJfdCogYmVnaW5Ib3N0LCBjb25zdCB1aW50cHRyX3QqIGVuZEhvc3QsIGNvbnN0IHVpbnRwdHJf
dCogYmVnaW5PcGVyYXRpb25zLCBjb25zdCB1aW50cHRyX3QqIGVuZE9wZXJhdGlvbnMpCit7Cisg
ICAgVU5VU0VEX1BBUkFNKGJlZ2luSG9zdCk7CisgICAgVU5VU0VEX1BBUkFNKGVuZEhvc3QpOwor
ICAgIFVOVVNFRF9QQVJBTShiZWdpbk9wZXJhdGlvbnMpOworICAgIFVOVVNFRF9QQVJBTShlbmRP
cGVyYXRpb25zKTsKKyNpZiBFTkFCTEUoSklUX09QRVJBVElPTl9WQUxJREFUSU9OKQorICAgIHN0
ZDo6b25jZV9mbGFnIG9uY2VLZXk7CisgICAgc3RkOjpjYWxsX29uY2Uob25jZUtleSwgWz1dIHsK
KyAgICAgICAgaWYgKE9wdGlvbnM6OnVzZUpJVCgpKQorICAgICAgICAgICAgYWRkUG9pbnRlcnMo
aml0T3BlcmF0aW9uTGlzdC0+bV92YWxpZGF0ZWRPcGVyYXRpb25zLCBiZWdpbkhvc3QsIGVuZEhv
c3QsIGJlZ2luT3BlcmF0aW9ucywgZW5kT3BlcmF0aW9ucyk7CisgICAgfSk7CisjZW5kaWYKK30K
KworfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
YXNzZW1ibGVyL0pJVE9wZXJhdGlvbkxpc3QuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3Nl
bWJsZXIvSklUT3BlcmF0aW9uTGlzdC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk4ZjgzNGUzYmZjMTMwZjU0Yzgx
NzhkOGU0M2RkYTRlODczZjk0ZTIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYXNzZW1ibGVyL0pJVE9wZXJhdGlvbkxpc3QuaApAQCAtMCwwICsxLDgxIEBACisvKgor
ICogQ29weXJpZ2h0IChDKSAyMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBB
UyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklC
VVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5F
U1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
CisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisK
KyNpbmNsdWRlICJKU0NQdHJUYWcuaCIKKyNpbmNsdWRlICJPcHRpb25zLmgiCisjaW5jbHVkZSA8
d3RmL0hhc2hNYXAuaD4KKyNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KKworbmFtZXNw
YWNlIEpTQyB7CisKK2NsYXNzIEpJVE9wZXJhdGlvbkxpc3QgeworcHVibGljOgorICAgIHN0YXRp
YyBKSVRPcGVyYXRpb25MaXN0JiBpbnN0YW5jZSgpOworICAgIHN0YXRpYyB2b2lkIGluaXRpYWxp
emUoKTsKKworICAgIHZvaWQqIGNvbnRhaW5zKHZvaWQqIHBvaW50ZXIpIGNvbnN0CisgICAgewor
ICAgICAgICBpZiBjb25zdGV4cHIoQVNTRVJUX0VOQUJMRUQpCisgICAgICAgICAgICByZXR1cm4g
bV92YWxpZGF0ZWRPcGVyYXRpb25zLmdldChyZW1vdmVDb2RlUHRyVGFnKHBvaW50ZXIpKTsKKyAg
ICAgICAgcmV0dXJuIHBvaW50ZXI7CisgICAgfQorCisgICAgc3RhdGljIHZvaWQgcG9wdWxhdGVQ
b2ludGVyc0luSmF2YVNjcmlwdENvcmUoKTsKKworICAgIEpTX0VYUE9SVF9QUklWQVRFIHN0YXRp
YyB2b2lkIHBvcHVsYXRlUG9pbnRlcnNJbkVtYmVkZGVyMShjb25zdCB1aW50cHRyX3QqIGJlZ2lu
SG9zdCwgY29uc3QgdWludHB0cl90KiBlbmRIb3N0LCBjb25zdCB1aW50cHRyX3QqIGJlZ2luT3Bl
cmF0aW9ucywgY29uc3QgdWludHB0cl90KiBlbmRPcGVyYXRpb25zKTsKKyAgICBKU19FWFBPUlRf
UFJJVkFURSBzdGF0aWMgdm9pZCBwb3B1bGF0ZVBvaW50ZXJzSW5FbWJlZGRlcjIoY29uc3QgdWlu
dHB0cl90KiBiZWdpbkhvc3QsIGNvbnN0IHVpbnRwdHJfdCogZW5kSG9zdCwgY29uc3QgdWludHB0
cl90KiBiZWdpbk9wZXJhdGlvbnMsIGNvbnN0IHVpbnRwdHJfdCogZW5kT3BlcmF0aW9ucyk7CisK
KyAgICAvLyBGSVhNRTogQ3VycmVudGx5LCBhc3NlcnRJc0hvc3RGdW5jdGlvbiBhbmQgYXNzZXJ0
SXNKSVRPcGVyYXRpb24gYXJlIHRoZSBzYW1lLgorICAgIC8vIFdlIHdpbGwgbWFrZSB0aGVtIHdv
cmsgaW4gYSBzdWJzZXF1ZW50IHBhdGNoLgorICAgIHRlbXBsYXRlPHR5cGVuYW1lIFQ+IHN0YXRp
YyB2b2lkIGFzc2VydElzSG9zdEZ1bmN0aW9uKFQgZnVuY3Rpb24pCisgICAgeworICAgICAgICBV
TlVTRURfUEFSQU0oZnVuY3Rpb24pOworI2lmIEVOQUJMRShKSVRfT1BFUkFUSU9OX1ZBTElEQVRJ
T04pCisgICAgICAgIEFTU0VSVChmdW5jdGlvbiwgIU9wdGlvbnM6OnVzZUpJVCgpIHx8IEpJVE9w
ZXJhdGlvbkxpc3Q6Omluc3RhbmNlKCkuY29udGFpbnMoYml0d2lzZV9jYXN0PHZvaWQqPihmdW5j
dGlvbikpKTsKKyNlbmRpZgorICAgIH0KKworICAgIHRlbXBsYXRlPHR5cGVuYW1lIFQ+IHN0YXRp
YyB2b2lkIGFzc2VydElzSklUT3BlcmF0aW9uKFQgZnVuY3Rpb24pCisgICAgeworICAgICAgICBV
TlVTRURfUEFSQU0oZnVuY3Rpb24pOworI2lmIEVOQUJMRShKSVRfT1BFUkFUSU9OX1ZBTElEQVRJ
T04pCisgICAgICAgIEFTU0VSVCghT3B0aW9uczo6dXNlSklUKCkgfHwgSklUT3BlcmF0aW9uTGlz
dDo6aW5zdGFuY2UoKS5jb250YWlucyhiaXR3aXNlX2Nhc3Q8dm9pZCo+KGZ1bmN0aW9uKSkpOwor
I2VuZGlmCisgICAgfQorCitwcml2YXRlOgorICAgIEhhc2hNYXA8dm9pZCosIHZvaWQqPiBtX3Zh
bGlkYXRlZE9wZXJhdGlvbnM7Cit9OworCitleHRlcm4gTGF6eU5ldmVyRGVzdHJveWVkPEpJVE9w
ZXJhdGlvbkxpc3Q+IGppdE9wZXJhdGlvbkxpc3Q7CisKK2lubGluZSBKSVRPcGVyYXRpb25MaXN0
JiBKSVRPcGVyYXRpb25MaXN0OjppbnN0YW5jZSgpCit7CisgICAgcmV0dXJuIGppdE9wZXJhdGlv
bkxpc3QuZ2V0KCk7Cit9CisKK30gLy8gbmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTTY0LmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJBUk02NC5jcHAKaW5kZXgg
MzYyNWE4ZDNjYzZmYWQ1ZDM0MDI3YmNiM2Y0ODJjN2U2ZWQ1Y2JlZS4uZjFiYWQ2NjdhZTg2Mzcy
ZmFjN2FmMjFjMzY2MTEwNDJiMThhYjNlOCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTTY0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyQVJNNjQuY3BwCkBAIC00Miw3ICs0Miw3
IEBAIG5hbWVzcGFjZSBKU0MgewogI2lmIEVOQUJMRShNQVNNX1BST0JFKQogCiBleHRlcm4gIkMi
IEpTQ19ERUNMQVJFX0pJVF9PUEVSQVRJT04oY3RpTWFzbVByb2JlVHJhbXBvbGluZSwgdm9pZCwg
KCkpOwotSlNDX0FOTk9UQVRFX0pJVF9PUEVSQVRJT04oY3RpTWFzbVByb2JlVHJhbXBvbGluZSwg
Y3RpTWFzbVByb2JlVHJhbXBvbGluZSk7CitKU0NfQU5OT1RBVEVfSklUX09QRVJBVElPTihjdGlN
YXNtUHJvYmVUcmFtcG9saW5lSWQsIGN0aU1hc21Qcm9iZVRyYW1wb2xpbmUpOwogCiB1c2luZyBu
YW1lc3BhY2UgQVJNNjRSZWdpc3RlcnM7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJBUk12Ny5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyQVJNdjcuY3BwCmluZGV4IDA2YTZmZGIzYzBm
MzM3MjM5YjE3ZmNkMGRjNDE2NTViOWVjYTI1NzUuLmIyZGIxNGUwZjBkNGMwYmNlMmZmYWUxMTY4
YTJhZmU2ODQ0Mzc1NzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJs
ZXIvTWFjcm9Bc3NlbWJsZXJBUk12Ny5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fz
c2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTXY3LmNwcApAQCAtMzYsNyArMzYsNyBAQCBuYW1lc3Bh
Y2UgSlNDIHsKICNpZiBFTkFCTEUoTUFTTV9QUk9CRSkKIAogZXh0ZXJuICJDIiBKU0NfREVDTEFS
RV9KSVRfT1BFUkFUSU9OKGN0aU1hc21Qcm9iZVRyYW1wb2xpbmUsIHZvaWQsICgpKTsKLUpTQ19B
Tk5PVEFURV9KSVRfT1BFUkFUSU9OKGN0aU1hc21Qcm9iZVRyYW1wb2xpbmUsIGN0aU1hc21Qcm9i
ZVRyYW1wb2xpbmUpOworSlNDX0FOTk9UQVRFX0pJVF9PUEVSQVRJT04oY3RpTWFzbVByb2JlVHJh
bXBvbGluZUlkLCBjdGlNYXNtUHJvYmVUcmFtcG9saW5lKTsKIAogdXNpbmcgbmFtZXNwYWNlIEFS
TVJlZ2lzdGVyczsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxl
ci9NYWNyb0Fzc2VtYmxlck1JUFMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxl
ci9NYWNyb0Fzc2VtYmxlck1JUFMuY3BwCmluZGV4IDE3ZGVlYWNjNzg2NDE5MGUzZGEwNGUyYzM5
ZmQ3NGZiMTEwZjZiNjguLmQ1MDE5YmNlMDEwYjc0OTE1YWNkOTRhMGVkMzkzZDNjNTlmNTAyOGEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJs
ZXJNSVBTLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNz
ZW1ibGVyTUlQUy5jcHAKQEAgLTM3LDcgKzM3LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAjaWYgRU5B
QkxFKE1BU01fUFJPQkUpCiAKIGV4dGVybiAiQyIgSlNDX0RFQ0xBUkVfSklUX09QRVJBVElPTihj
dGlNYXNtUHJvYmVUcmFtcG9saW5lLCB2b2lkLCAoKSk7Ci1KU0NfQU5OT1RBVEVfSklUX09QRVJB
VElPTihjdGlNYXNtUHJvYmVUcmFtcG9saW5lLCBjdGlNYXNtUHJvYmVUcmFtcG9saW5lKTsKK0pT
Q19BTk5PVEFURV9KSVRfT1BFUkFUSU9OKGN0aU1hc21Qcm9iZVRyYW1wb2xpbmVJZCwgY3RpTWFz
bVByb2JlVHJhbXBvbGluZSk7CiAKIHVzaW5nIG5hbWVzcGFjZSBNSVBTUmVnaXN0ZXJzOwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVy
WDg2Q29tbW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3Nl
bWJsZXJYODZDb21tb24uY3BwCmluZGV4IGVlMTlhOGI1YWExZDI5Mjg5NzE4ZDVlYjllMGE3NjFk
M2Y0ZWE3OWYuLjNlODczYjAwY2IwMjExZTBmYTM0YzEyYzcyMWZmMTgwNWE3ZDkwYWIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJYODZD
b21tb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3Nl
bWJsZXJYODZDb21tb24uY3BwCkBAIC00MCw3ICs0MCw3IEBAIG5hbWVzcGFjZSBKU0MgewogI2lm
IEVOQUJMRShNQVNNX1BST0JFKQogCiBleHRlcm4gIkMiIEpTQ19ERUNMQVJFX0pJVF9PUEVSQVRJ
T04oY3RpTWFzbVByb2JlVHJhbXBvbGluZSwgdm9pZCwgKCkpOwotSlNDX0FOTk9UQVRFX0pJVF9P
UEVSQVRJT04oY3RpTWFzbVByb2JlVHJhbXBvbGluZSwgY3RpTWFzbVByb2JlVHJhbXBvbGluZSk7
CitKU0NfQU5OT1RBVEVfSklUX09QRVJBVElPTihjdGlNYXNtUHJvYmVUcmFtcG9saW5lSWQsIGN0
aU1hc21Qcm9iZVRyYW1wb2xpbmUpOwogCiAvLyBUaGUgZm9sbG93aW5nIGFyZSBvZmZzZXRzIGZv
ciBQcm9iZTo6U3RhdGUgZmllbGRzIGFjY2Vzc2VkIGJ5IHRoZSBjdGlNYXNtUHJvYmVUcmFtcG9s
aW5lIHN0dWIuCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qc2MuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5jcHAKaW5kZXggYWFiNDFlYzhjZTNkZTE2NDA0NDE1
Mzk3M2FhNzNkNGQ4ZDk5NjNjNC4uMjYzMzVkZjVmNjlmMjI3NzljMGVlMmY2M2JjODBjMWVjZDc0
NzJkMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5jcHAKQEAgLTM5LDYgKzM5LDcgQEAKICNpbmNsdWRlICJJ
bml0aWFsaXplVGhyZWFkaW5nLmgiCiAjaW5jbHVkZSAiSW50ZXJwcmV0ZXIuaCIKICNpbmNsdWRl
ICJKSVQuaCIKKyNpbmNsdWRlICJKSVRPcGVyYXRpb25MaXN0LmgiCiAjaW5jbHVkZSAiSlNBcnJh
eS5oIgogI2luY2x1ZGUgIkpTQXJyYXlCdWZmZXIuaCIKICNpbmNsdWRlICJKU0JpZ0ludC5oIgpA
QCAtMzQxNSw2ICszNDE2LDEzIEBAIGludCBydW5KU0MoY29uc3QgQ29tbWFuZExpbmUmIG9wdGlv
bnMsIGJvb2wgaXNXb3JrZXIsIGNvbnN0IEZ1bmMmIGZ1bmMpCiAgICAgcmV0dXJuIHJlc3VsdDsK
IH0KIAorI2lmIEVOQUJMRShKSVRfT1BFUkFUSU9OX1ZBTElEQVRJT04pCitleHRlcm4gY29uc3Qg
dWludHB0cl90IHN0YXJ0T2ZIb3N0RnVuY3Rpb25zSW5TaGVsbCBfX2FzbSgic2VjdGlvbiRzdGFy
dCRfX0RBVEFfQ09OU1QkX19qc2NfaG9zdCIpOworZXh0ZXJuIGNvbnN0IHVpbnRwdHJfdCBlbmRP
Zkhvc3RGdW5jdGlvbnNJblNoZWxsIF9fYXNtKCJzZWN0aW9uJGVuZCRfX0RBVEFfQ09OU1QkX19q
c2NfaG9zdCIpOworZXh0ZXJuIGNvbnN0IHVpbnRwdHJfdCBzdGFydE9mSklUT3BlcmF0aW9uc0lu
U2hlbGwgX19hc20oInNlY3Rpb24kc3RhcnQkX19EQVRBX0NPTlNUJF9fanNjX29wcyIpOworZXh0
ZXJuIGNvbnN0IHVpbnRwdHJfdCBlbmRPZkpJVE9wZXJhdGlvbnNJblNoZWxsIF9fYXNtKCJzZWN0
aW9uJGVuZCRfX0RBVEFfQ09OU1QkX19qc2Nfb3BzIik7CisjZW5kaWYKKwogaW50IGpzY21haW4o
aW50IGFyZ2MsIGNoYXIqKiBhcmd2KQogewogICAgIC8vIE5lZWQgdG8gb3ZlcnJpZGUgYW5kIGVu
YWJsZSByZXN0cmljdGVkIG9wdGlvbnMgYmVmb3JlIHdlIHN0YXJ0IHBhcnNpbmcgb3B0aW9ucyBi
ZWxvdy4KQEAgLTM0MzQsNiArMzQ0MiwxMCBAQCBpbnQganNjbWFpbihpbnQgYXJnYywgY2hhcioq
IGFyZ3YpCiAgICAgfQogCiAgICAgSlNDOjppbml0aWFsaXplKCk7CisjaWYgRU5BQkxFKEpJVF9P
UEVSQVRJT05fVkFMSURBVElPTikKKyAgICBKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6OnBvcHVsYXRl
UG9pbnRlcnNJbkVtYmVkZGVyMSgmc3RhcnRPZkhvc3RGdW5jdGlvbnNJblNoZWxsLCAmZW5kT2ZI
b3N0RnVuY3Rpb25zSW5TaGVsbCwgJnN0YXJ0T2ZKSVRPcGVyYXRpb25zSW5TaGVsbCwgJmVuZE9m
SklUT3BlcmF0aW9uc0luU2hlbGwpOworICAgIEpTQzo6SklUT3BlcmF0aW9uTGlzdDo6cG9wdWxh
dGVQb2ludGVyc0luRW1iZWRkZXIyKG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIp
OworI2VuZGlmCiAgICAgaW5pdGlhbGl6ZVRpbWVvdXRJZk5lZWRlZCgpOwogCiAjaWYgT1MoREFS
V0lOKSB8fCBPUyhMSU5VWCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0luaXRpYWxpemVUaHJlYWRpbmcuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSW5pdGlhbGl6ZVRocmVhZGluZy5jcHAKaW5kZXggZTUzYmZiMjNjNGFiMTU5N2JhZjNjZTBk
MGVkY2E1OGJmODI0NTUxYi4uOTE1YmM2YzU0MWI4N2VlZjViMDVjZTM4M2Y3YTdiYjY5ZWU0MWFk
YSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW5pdGlhbGl6ZVRo
cmVhZGluZy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW5pdGlhbGl6
ZVRocmVhZGluZy5jcHAKQEAgLTMwLDYgKzMwLDcgQEAKICNpbmNsdWRlICJJbml0aWFsaXplVGhy
ZWFkaW5nLmgiCiAKICNpbmNsdWRlICJFeGVjdXRhYmxlQWxsb2NhdG9yLmgiCisjaW5jbHVkZSAi
SklUT3BlcmF0aW9uTGlzdC5oIgogI2luY2x1ZGUgIkpTQ0NvbmZpZy5oIgogI2luY2x1ZGUgIkpT
Q1B0clRhZy5oIgogI2luY2x1ZGUgIkxMSW50RGF0YS5oIgpAQCAtNjQsNiArNjUsNyBAQCB2b2lk
IGluaXRpYWxpemUoKQogI2VuZGlmCiAgICAgICAgIHsKICAgICAgICAgICAgIE9wdGlvbnM6OkFs
bG93VW5maW5hbGl6ZWRBY2Nlc3NTY29wZSBzY29wZTsKKyAgICAgICAgICAgIEpJVE9wZXJhdGlv
bkxpc3Q6OmluaXRpYWxpemUoKTsKICAgICAgICAgICAgIEV4ZWN1dGFibGVBbGxvY2F0b3I6Omlu
aXRpYWxpemUoKTsKICAgICAgICAgICAgIFZNOjpjb21wdXRlQ2FuVXNlSklUKCk7CiAgICAgICAg
ICAgICBpZiAoIWdfanNjQ29uZmlnLnZtLmNhblVzZUpJVCkgewpAQCAtNzMsNiArNzUsOCBAQCB2
b2lkIGluaXRpYWxpemUoKQogICAgICAgICB9CiAgICAgICAgIE9wdGlvbnM6OmZpbmFsaXplKCk7
CiAKKyAgICAgICAgSklUT3BlcmF0aW9uTGlzdDo6cG9wdWxhdGVQb2ludGVyc0luSmF2YVNjcmlw
dENvcmUoKTsKKwogICAgICAgICBpZiAoT3B0aW9uczo6dXNlU2lnaWxsQ3Jhc2hBbmFseXplcigp
KQogICAgICAgICAgICAgZW5hYmxlU2lnaWxsQ3Jhc2hBbmFseXplcigpOwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld1By
b3RvdHlwZUZ1bmN0aW9ucy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5l
cmljVHlwZWRBcnJheVZpZXdQcm90b3R5cGVGdW5jdGlvbnMuaAppbmRleCAwYmFiNDYwNTdjZWE0
MWUyODA5YmRlODdhMTkyMGMzY2JmODhhZmFlLi4wYjY2ZWQ2MjI5MTdlZGUzNjgyZWEwYWQzZjRh
MmY0OTUwZDFlMDE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U0dlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZUZ1bmN0aW9ucy5oCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlRnVu
Y3Rpb25zLmgKQEAgLTEwMCw3ICsxMDAsNyBAQCBpbmxpbmUgdW5zaWduZWQgYXJndW1lbnRDbGFt
cGVkSW5kZXhGcm9tU3RhcnRPckVuZChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LAogfQog
CiB0ZW1wbGF0ZTx0eXBlbmFtZSBWaWV3Q2xhc3M+Ci1KU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04o
Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jU2V0LCAoVk0mIHZtLCBKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkpCitBTFdBWVNfSU5MSU5FIEVu
Y29kZWRKU1ZhbHVlIGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY1NldChWTSYgdm0sIEpT
R2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKQogewogICAg
IGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIApAQCAtMTQ3LDcgKzE0Nyw3
IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1
bmNTZXQsIChWTSYgdm0sIEpTR2xvYmFsT2JqCiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFZpZXdD
bGFzcz4KLUpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90
b0Z1bmNDb3B5V2l0aGluLCAoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBD
YWxsRnJhbWUqIGNhbGxGcmFtZSkpCitBTFdBWVNfSU5MSU5FIEVuY29kZWRKU1ZhbHVlIGdlbmVy
aWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY0NvcHlXaXRoaW4oVk0mIHZtLCBKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKIHsKICAgICBhdXRvIHNjb3Bl
ID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKQEAgLTE3OSw3ICsxNzksNyBAQCBKU0NfREVG
SU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jQ29weVdpdGhp
biwgKFZNJiB2bSwgSlNHbAogfQogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBWaWV3Q2xhc3M+Ci1KU0Nf
REVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jSW5jbHVk
ZXMsIChWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2Fs
bEZyYW1lKSkKK0FMV0FZU19JTkxJTkUgRW5jb2RlZEpTVmFsdWUgZ2VuZXJpY1R5cGVkQXJyYXlW
aWV3UHJvdG9GdW5jSW5jbHVkZXMoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKIHsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJP
V19TQ09QRSh2bSk7CiAKQEAgLTIyNCw3ICsyMjQsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJ
T04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jSW5jbHVkZXMsIChWTSYgdm0sIEpTR2xv
YgogfQogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBWaWV3Q2xhc3M+Ci1KU0NfREVGSU5FX0hPU1RfRlVO
Q1RJT04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jSW5kZXhPZiwgKFZNJiB2bSwgSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpKQorQUxXQVlT
X0lOTElORSBFbmNvZGVkSlNWYWx1ZSBnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNJbmRl
eE9mKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxs
RnJhbWUpCiB7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCkBA
IC0yNjEsNyArMjYxLDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFy
cmF5Vmlld1Byb3RvRnVuY0luZGV4T2YsIChWTSYgdm0sIEpTR2xvYmEKIH0KIAogdGVtcGxhdGU8
dHlwZW5hbWUgVmlld0NsYXNzPgotSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBl
ZEFycmF5Vmlld1Byb3RvRnVuY0pvaW4sIChWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKSkKK0FMV0FZU19JTkxJTkUgRW5jb2RlZEpTVmFs
dWUgZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jSm9pbihWTSYgdm0sIEpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKQogewogICAgIGF1dG8gc2Nv
cGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIApAQCAtMzAwLDcgKzMwMCw3IEBAIEpTQ19E
RUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNKb2luLCAo
Vk0mIHZtLCBKU0dsb2JhbE9iCiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFZpZXdDbGFzcz4KLUpT
Q19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNMYXN0
SW5kZXhPZiwgKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1l
KiBjYWxsRnJhbWUpKQorQUxXQVlTX0lOTElORSBFbmNvZGVkSlNWYWx1ZSBnZW5lcmljVHlwZWRB
cnJheVZpZXdQcm90b0Z1bmNMYXN0SW5kZXhPZihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKQogewogICAgIGF1dG8gc2NvcGUgPSBERUNM
QVJFX1RIUk9XX1NDT1BFKHZtKTsKIApAQCAtMzUwLDcgKzM1MCw3IEBAIEpTQ19ERUZJTkVfSE9T
VF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNMYXN0SW5kZXhPZiwgKFZN
JiB2bSwgSlNHCiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFZpZXdDbGFzcz4KLUpTQ19ERUZJTkVf
SE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0dldHRlckZ1bmNCdWZmZXIs
IChWTSYsIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1l
KSkKK0FMV0FZU19JTkxJTkUgRW5jb2RlZEpTVmFsdWUgZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJv
dG9HZXR0ZXJGdW5jQnVmZmVyKFZNJiwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2Fs
bEZyYW1lKiBjYWxsRnJhbWUpCiB7CiAgICAgLy8gMjIuMi4zLjMKICAgICBWaWV3Q2xhc3MqIHRo
aXNPYmplY3QgPSBqc0Nhc3Q8Vmlld0NsYXNzKj4oY2FsbEZyYW1lLT50aGlzVmFsdWUoKSk7CkBA
IC0zNTksNyArMzU5LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFy
cmF5Vmlld1Byb3RvR2V0dGVyRnVuY0J1ZmZlciwgKFZNJiwgSlNHbG8KIH0KIAogdGVtcGxhdGU8
dHlwZW5hbWUgVmlld0NsYXNzPgotSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBl
ZEFycmF5Vmlld1Byb3RvR2V0dGVyRnVuY0xlbmd0aCwgKFZNJiwgSlNHbG9iYWxPYmplY3QqLCBD
YWxsRnJhbWUqIGNhbGxGcmFtZSkpCitBTFdBWVNfSU5MSU5FIEVuY29kZWRKU1ZhbHVlIGdlbmVy
aWNUeXBlZEFycmF5Vmlld1Byb3RvR2V0dGVyRnVuY0xlbmd0aChWTSYsIEpTR2xvYmFsT2JqZWN0
KiwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpCiB7CiAgICAgLy8gMjIuMi4zLjE3CiAgICAgVmlld0Ns
YXNzKiB0aGlzT2JqZWN0ID0ganNDYXN0PFZpZXdDbGFzcyo+KGNhbGxGcmFtZS0+dGhpc1ZhbHVl
KCkpOwpAQCAtMzY4LDcgKzM2OCw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmlj
VHlwZWRBcnJheVZpZXdQcm90b0dldHRlckZ1bmNMZW5ndGgsIChWTSYsIEpTR2xvCiB9CiAKIHRl
bXBsYXRlPHR5cGVuYW1lIFZpZXdDbGFzcz4KLUpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5l
cmljVHlwZWRBcnJheVZpZXdQcm90b0dldHRlckZ1bmNCeXRlTGVuZ3RoLCAoVk0mLCBKU0dsb2Jh
bE9iamVjdCosIENhbGxGcmFtZSogY2FsbEZyYW1lKSkKK0FMV0FZU19JTkxJTkUgRW5jb2RlZEpT
VmFsdWUgZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jQnl0ZUxlbmd0aChWTSYs
IEpTR2xvYmFsT2JqZWN0KiwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpCiB7CiAgICAgLy8gMjIuMi4z
LjIKICAgICBWaWV3Q2xhc3MqIHRoaXNPYmplY3QgPSBqc0Nhc3Q8Vmlld0NsYXNzKj4oY2FsbEZy
YW1lLT50aGlzVmFsdWUoKSk7CkBAIC0zNzcsNyArMzc3LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZV
TkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvR2V0dGVyRnVuY0J5dGVMZW5ndGgsIChW
TSYsIEoKIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUgVmlld0NsYXNzPgotSlNDX0RFRklORV9IT1NU
X0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvR2V0dGVyRnVuY0J5dGVPZmZzZXQs
IChWTSYsIEpTR2xvYmFsT2JqZWN0KiwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpKQorQUxXQVlTX0lO
TElORSBFbmNvZGVkSlNWYWx1ZSBnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0dldHRlckZ1bmNC
eXRlT2Zmc2V0KFZNJiwgSlNHbG9iYWxPYmplY3QqLCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKIHsK
ICAgICAvLyAyMi4yLjMuMwogICAgIFZpZXdDbGFzcyogdGhpc09iamVjdCA9IGpzQ2FzdDxWaWV3
Q2xhc3MqPihjYWxsRnJhbWUtPnRoaXNWYWx1ZSgpKTsKQEAgLTM4Niw3ICszODYsNyBAQCBKU0Nf
REVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5j
Qnl0ZU9mZnNldCwgKFZNJiwgSgogfQogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBWaWV3Q2xhc3M+Ci1K
U0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jUmV2
ZXJzZSwgKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBj
YWxsRnJhbWUpKQorQUxXQVlTX0lOTElORSBFbmNvZGVkSlNWYWx1ZSBnZW5lcmljVHlwZWRBcnJh
eVZpZXdQcm90b0Z1bmNSZXZlcnNlKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVj
dCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpCiB7CiAvLyAgICBWTSYgdm0gPSBnZXRWTShnbG9iYWxP
YmplY3QpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKQEAgLTQw
Myw3ICs0MDMsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVkQXJyYXlW
aWV3UHJvdG9GdW5jUmV2ZXJzZSwgKFZNJiB2bSwgSlNHbG9iYQogfQogCiB0ZW1wbGF0ZTx0eXBl
bmFtZSBWaWV3Q2xhc3M+Ci1KU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVkQXJy
YXlWaWV3UHJpdmF0ZUZ1bmNTb3J0LCAoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2Jq
ZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkpCitBTFdBWVNfSU5MSU5FIEVuY29kZWRKU1ZhbHVl
IGdlbmVyaWNUeXBlZEFycmF5Vmlld1ByaXZhdGVGdW5jU29ydChWTSYgdm0sIEpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKQogewogLy8gICAgVk0mIHZt
ID0gZ2V0Vk0oZ2xvYmFsT2JqZWN0KTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19T
Q09QRSh2bSk7CkBAIC00MTksNyArNDE5LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdl
bmVyaWNUeXBlZEFycmF5Vmlld1ByaXZhdGVGdW5jU29ydCwgKFZNJiB2bSwgSlNHbG9iYWwKIH0K
IAogdGVtcGxhdGU8dHlwZW5hbWUgVmlld0NsYXNzPgotSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9O
KGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY1NsaWNlLCAoVk0mIHZtLCBKU0dsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkpCitBTFdBWVNfSU5MSU5F
IEVuY29kZWRKU1ZhbHVlIGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY1NsaWNlKFZNJiB2
bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpCiB7
CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCkBAIC01MTAsNyAr
NTEwLDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1By
b3RvRnVuY1NsaWNlLCAoVk0mIHZtLCBKU0dsb2JhbE8KIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUg
Vmlld0NsYXNzPgotSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmll
d1ByaXZhdGVGdW5jU3ViYXJyYXlDcmVhdGUsIChWTSZ2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpKQorQUxXQVlTX0lOTElORSBFbmNvZGVkSlNW
YWx1ZSBnZW5lcmljVHlwZWRBcnJheVZpZXdQcml2YXRlRnVuY1N1YmFycmF5Q3JlYXRlKFZNJnZt
LCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKIHsK
ICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZNLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1ZNLmNwcAppbmRleCBjYmM3MDZmZjQ4NjAwMGFkNjhmMGU2ZDM0ODU3NDlm
YzY5YmVkNzgyLi45YjY0NGY4ODkyZmI5YTAyZDQxNDFhOTk2MTAzOTU3YzE2YzZmMzFiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9WTS5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0uY3BwCkBAIC03OCw2ICs3OCw3IEBACiAjaW5jbHVk
ZSAiSXNvSGVhcENlbGxUeXBlLmgiCiAjaW5jbHVkZSAiSXNvSW5saW5lZEhlYXBDZWxsVHlwZS5o
IgogI2luY2x1ZGUgIkpJVENvZGUuaCIKKyNpbmNsdWRlICJKSVRPcGVyYXRpb25MaXN0LmgiCiAj
aW5jbHVkZSAiSklUVGh1bmtzLmgiCiAjaW5jbHVkZSAiSklUV29ya2xpc3QuaCIKICNpbmNsdWRl
ICJKU0FQSUdsb2JhbE9iamVjdC5oIgpAQCAtODMxLDYgKzgzMiw3IEBAIE5hdGl2ZUV4ZWN1dGFi
bGUqIFZNOjpnZXRIb3N0RnVuY3Rpb24oTmF0aXZlRnVuY3Rpb24gZnVuY3Rpb24sIEludHJpbnNp
YyBpbnRyaW5zCiB7CiAjaWYgRU5BQkxFKEpJVCkKICAgICBpZiAoT3B0aW9uczo6dXNlSklUKCkp
IHsKKyAgICAgICAgSklUT3BlcmF0aW9uTGlzdDo6YXNzZXJ0SXNIb3N0RnVuY3Rpb24oZnVuY3Rp
b24pOwogICAgICAgICByZXR1cm4gaml0U3R1YnMtPmhvc3RGdW5jdGlvblN0dWIoCiAgICAgICAg
ICAgICAqdGhpcywgZnVuY3Rpb24sIGNvbnN0cnVjdG9yLAogICAgICAgICAgICAgaW50cmluc2lj
ICE9IE5vSW50cmluc2ljID8gdGh1bmtHZW5lcmF0b3JGb3JJbnRyaW5zaWMoaW50cmluc2ljKSA6
IG51bGxwdHIsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUNhbGxpbmdDb252
ZW50aW9ucy5oIGIvU291cmNlL1dURi93dGYvUGxhdGZvcm1DYWxsaW5nQ29udmVudGlvbnMuaApp
bmRleCA3NTk3NzI5ZjY0MTI2NmM1MmRiZDM1ZGRkOTk3NWYyNjdiYTZjMmU5Li40OTM3ZWJmN2Mz
YWJlYmZmMmY2YTYwMDZlZDFmMjQ2MzdmMWQxYjM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0
Zi9QbGF0Zm9ybUNhbGxpbmdDb252ZW50aW9ucy5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL1BsYXRm
b3JtQ2FsbGluZ0NvbnZlbnRpb25zLmgKQEAgLTQyLDEzICs0MiwyMCBAQAogI2RlZmluZSBKU0Nf
SE9TVF9DQUxMX0FUVFJJQlVURVMKICNlbmRpZgogCisjaWYgRU5BQkxFKEpJVF9PUEVSQVRJT05f
VkFMSURBVElPTikKKyNkZWZpbmUgSlNDX0FOTk9UQVRFX0hPU1RfRlVOQ1RJT04oZnVuY3Rpb25J
ZCwgZnVuY3Rpb24pIFwKKyAgICBjb25zdGV4cHIgYXV0byBmdW5jdGlvbklkIF9fYXR0cmlidXRl
X18oKHVzZWQsIHNlY3Rpb24oIl9fREFUQV9DT05TVCxfX2pzY19ob3N0IikpKSA9IGZ1bmN0aW9u
OworI2Vsc2UKKyNkZWZpbmUgSlNDX0FOTk9UQVRFX0hPU1RfRlVOQ1RJT04oZnVuY3Rpb25JZCwg
ZnVuY3Rpb24pCisjZW5kaWYKKwogI2RlZmluZSBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT05fV0lU
SF9BVFRSSUJVVEVTKGZ1bmN0aW9uTmFtZSwgYXR0cmlidXRlcywgcGFyYW1ldGVycykgXAorICAg
IEpTQ19BTk5PVEFURV9IT1NUX0ZVTkNUSU9OKF9KSVRUYXJnZXRfIyNmdW5jdGlvbk5hbWUsIHN0
YXRpY19jYXN0PEpTQzo6RW5jb2RlZEpTVmFsdWUoKilwYXJhbWV0ZXJzPihmdW5jdGlvbk5hbWUp
KTsgXAogICAgIGF0dHJpYnV0ZXMgSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMX0FU
VFJJQlVURVMgZnVuY3Rpb25OYW1lIHBhcmFtZXRlcnMKICNkZWZpbmUgSlNDX0RFRklORV9IT1NU
X0ZVTkNUSU9OKGZ1bmN0aW9uTmFtZSwgcGFyYW1ldGVycykgXAogICAgIEpTQ19ERUZJTkVfSE9T
VF9GVU5DVElPTl9XSVRIX0FUVFJJQlVURVMoZnVuY3Rpb25OYW1lLCAsIHBhcmFtZXRlcnMpCiAj
ZGVmaW5lIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oZnVuY3Rpb25OYW1lKSBcCiAgICAgSlND
OjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJQlVURVMgZnVuY3Rpb25OYW1lKEpT
Qzo6SlNHbG9iYWxPYmplY3QqLCBKU0M6OkNhbGxGcmFtZSopCi0jZGVmaW5lIEpTQ19BTk5PVEFU
RV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9uSWQsIGZ1bmN0aW9uKQogCiAjaWYgQ1BVKFg4NikgJiYg
T1MoV0lORE9XUykKICNkZWZpbmUgQ0FMTElOR19DT05WRU5USU9OX0lTX1NURENBTEwgMQpAQCAt
ODIsMTQgKzg5LDIwIEBACiAjZGVmaW5lIEpJVF9PUEVSQVRJT05fQVRUUklCVVRFUwogI2VuZGlm
CiAKKyNpZiBFTkFCTEUoSklUX09QRVJBVElPTl9WQUxJREFUSU9OKQorI2RlZmluZSBKU0NfQU5O
T1RBVEVfSklUX09QRVJBVElPTihmdW5jdGlvbklkLCBmdW5jdGlvbikgXAorICAgIGNvbnN0ZXhw
ciBhdXRvICBmdW5jdGlvbklkIF9fYXR0cmlidXRlX18oKHVzZWQsIHNlY3Rpb24oIl9fREFUQV9D
T05TVCxfX2pzY19vcHMiKSkpID0gZnVuY3Rpb247CisjZWxzZQorI2RlZmluZSBKU0NfQU5OT1RB
VEVfSklUX09QRVJBVElPTihmdW5jdGlvbklkLCBmdW5jdGlvbikKKyNlbmRpZgogCiAjZGVmaW5l
IEpTQ19ERUZJTkVfSklUX09QRVJBVElPTl9XSVRIX0FUVFJJQlVURVMoZnVuY3Rpb25OYW1lLCBh
dHRyaWJ1dGVzLCByZXR1cm5UeXBlLCBwYXJhbWV0ZXJzKSBcCisgICAgSlNDX0FOTk9UQVRFX0pJ
VF9PUEVSQVRJT04oX0pJVFRhcmdldF8jI2Z1bmN0aW9uTmFtZSwgc3RhdGljX2Nhc3Q8cmV0dXJu
VHlwZSgqKXBhcmFtZXRlcnM+KGZ1bmN0aW9uTmFtZSkpOyBcCiAgICAgYXR0cmlidXRlcyByZXR1
cm5UeXBlIEpJVF9PUEVSQVRJT05fQVRUUklCVVRFUyBmdW5jdGlvbk5hbWUgcGFyYW1ldGVycwog
I2RlZmluZSBKU0NfREVGSU5FX0pJVF9PUEVSQVRJT04oZnVuY3Rpb25OYW1lLCByZXR1cm5UeXBl
LCBwYXJhbWV0ZXJzKSBcCiAgICAgSlNDX0RFRklORV9KSVRfT1BFUkFUSU9OX1dJVEhfQVRUUklC
VVRFUyhmdW5jdGlvbk5hbWUsICwgcmV0dXJuVHlwZSwgcGFyYW1ldGVycykKICNkZWZpbmUgSlND
X0RFQ0xBUkVfSklUX09QRVJBVElPTihmdW5jdGlvbk5hbWUsIHJldHVyblR5cGUsIHBhcmFtZXRl
cnMpIFwKICAgICByZXR1cm5UeXBlIEpJVF9PUEVSQVRJT05fQVRUUklCVVRFUyBmdW5jdGlvbk5h
bWUgcGFyYW1ldGVycyBSRUZFUkVOQ0VEX0ZST01fQVNNIFdURl9JTlRFUk5BTAotI2RlZmluZSBK
U0NfQU5OT1RBVEVfSklUX09QRVJBVElPTihmdW5jdGlvbklkLCBmdW5jdGlvbikKIAogI2RlZmlu
ZSBKU0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKGZ1bmN0aW9uTmFtZSkgSlNDX0RFQ0xBUkVfSklU
X09QRVJBVElPTihmdW5jdGlvbk5hbWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUsIChKU0M6OkpTR2xv
YmFsT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpKQogI2Rl
ZmluZSBKU0NfREVDTEFSRV9DVVNUT01fU0VUVEVSKGZ1bmN0aW9uTmFtZSkgSlNDX0RFQ0xBUkVf
SklUX09QRVJBVElPTihmdW5jdGlvbk5hbWUsIGJvb2wsIChKU0M6OkpTR2xvYmFsT2JqZWN0Kiwg
SlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSkpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUVuYWJsZS5oIGIvU291cmNlL1dURi93dGYvUGxhdGZvcm1F
bmFibGUuaAppbmRleCA5MTY2Y2ZkZDk1NTRiNjBmNzc4MzIyOTRlZWM2OWU2Yjg4MWRjMzllLi40
YTIyNWJkN2I3NjA0MjQ4ZTMzYTYyNzVjOWM5ZGM4ODQ2MDZjYWQwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV1RGL3d0Zi9QbGF0Zm9ybUVuYWJsZS5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3Jt
RW5hYmxlLmgKQEAgLTg4OCwzICs4ODgsNyBAQAogI2lmIENQVShBUk02NCkgJiYgQ1BVKEFERFJF
U1M2NCkKICNkZWZpbmUgVVNFX0pVTVBfSVNMQU5EUyAxCiAjZW5kaWYKKworI2lmIE9TKERBUldJ
TikgJiYgRU5BQkxFKEpJVCkgJiYgQVNTRVJUX0VOQUJMRUQKKyNkZWZpbmUgRU5BQkxFX0pJVF9P
UEVSQVRJT05fVkFMSURBVElPTiAxCisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L0hlYWRlcnMuY21ha2UgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCmluZGV4IGM4NzQ4
YTIxNjI3Y2MzMzRjZTIyYmU0NjkzZTZmYzg1M2ZlM2E2MGQuLjhmMzhmZjRmZjIyZGJhMzI1ODJm
MmUxMjFlN2Q2NThjNDE2MWM2OWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMu
Y21ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQpAQCAtMjU4LDYgKzI1OCw3
IEBAIHNldChXZWJDb3JlX1BSSVZBVEVfRlJBTUVXT1JLX0hFQURFUlMKICAgICBiaW5kaW5ncy9q
cy9TY3JpcHRXcmFwcGFibGVJbmxpbmVzLmgKICAgICBiaW5kaW5ncy9qcy9TZXJpYWxpemVkU2Ny
aXB0VmFsdWUuaAogICAgIGJpbmRpbmdzL2pzL1N0cmluZ0FkYXB0b3JzLmgKKyAgICBiaW5kaW5n
cy9qcy9XZWJDb3JlSklUT3BlcmF0aW9ucy5oCiAgICAgYmluZGluZ3MvanMvV2ViQ29yZVR5cGVk
QXJyYXlDb250cm9sbGVyLmgKICAgICBiaW5kaW5ncy9qcy9XaW5kb3dQcm94eS5oCiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0IGIvU291cmNlL1dlYkNvcmUvU291cmNl
cy50eHQKaW5kZXggZjEwMzcyMDNmZGMyM2YxZDIzZWNhNjBjMGQ4OTk5M2IxY2EzZTk5OC4uZmI5
OGM3OGEwNDExMTFmZTVjNjI2YjNiNWRlYmEzNWU0ZTQ1MDk1MiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvU291cmNlcy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKQEAg
LTU5NCw2ICs1OTQsNyBAQCBiaW5kaW5ncy9qcy9TY3JpcHRTdGF0ZS5jcHAKIGJpbmRpbmdzL2pz
L1NjcmlwdFdyYXBwYWJsZS5jcHAKIGJpbmRpbmdzL2pzL1NlcmlhbGl6ZWRTY3JpcHRWYWx1ZS5j
cHAKIGJpbmRpbmdzL2pzL1N0cnVjdHVyZWRDbG9uZS5jcHAKK2JpbmRpbmdzL2pzL1dlYkNvcmVK
SVRPcGVyYXRpb25zLmNwcAogYmluZGluZ3MvanMvV2ViQ29yZUpTQ2xpZW50RGF0YS5jcHAKIGJp
bmRpbmdzL2pzL1dlYkNvcmVUeXBlZEFycmF5Q29udHJvbGxlci5jcHAKIGJpbmRpbmdzL2pzL1dp
bmRvd1Byb3h5LmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCmluZGV4IGVmY2YxNTBhZDViZDQ5YjQ0MzZmMzE1ZmE2YmIxYjY0OGYzNWJk
ZDcuLjg5NzIxMGE0ODhkYzQwMGQ0ZTc4OTZlNDM5NGFkNzdhZWI5NGJhNTUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTQ5Njcs
NiArNDk2Nyw3IEBACiAJCUUzMjNDRkZBMUU1QUY2QUYwMEYwQjRBMCAvKiBKU0RPTUNvbnZlcnRQ
cm9taXNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBF
MzIzQ0ZGOTFFNUFGNkE1MDBGMEI0QTAgLyogSlNET01Db252ZXJ0UHJvbWlzZS5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUUzNTY1QjdCMURDMkQ2
QzkwMDIxN0RCRCAvKiBKU0V2ZW50Q3VzdG9tLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBFMzRFRTQ5RjFEQzJENTc1MDBFQUE5RDMgLyogSlNFdmVudEN1
c3RvbS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJ
CUUzNTgwMkI2MURDODQzNUQwMEE5NzczQyAvKiBET01KSVRJRExUeXBlRmlsdGVyLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMzU4MDJCNTFEQzg0MzU4
MDBBOTc3M0MgLyogRE9NSklUSURMVHlwZUZpbHRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUUzNTgyQzI4MjUyN0Y2NjkwMEQxQjc5MCAvKiBX
ZWJDb3JlSklUT3BlcmF0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRTM1ODJDMjYyNTI3RjY2ODAwRDFCNzkwIC8qIFdlYkNvcmVKSVRPcGVyYXRp
b25zLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJ
RTM1QjkwN0YyM0Y2MEE1MDAwMDAxMUZGIC8qIExvY2FsaXplZERldmljZU1vZGVsLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMzVCOTA3QzIzRjYwNjc3
MDAwMDExRkYgLyogTG9jYWxpemVkRGV2aWNlTW9kZWwuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlFMzc3RkU0RDFEQURFMTY1MDBDREQwMjUgLyog
Tm9kZUNvbnN0YW50cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRTNEMDQ5OTMxREFEQzA0NTAwNzE4RjNDIC8qIE5vZGVDb25zdGFudHMuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlFMzdDODY1MDFFQjYz
RTNGMDA4N0M2Q0EgLyogSlNET01Qcm9taXNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBFMzdDODY0RjFFQjYzRTJEMDA4N0M2Q0EgLyogSlNET01Qcm9t
aXNlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAg
LTE1ODIwLDYgKzE1ODIxLDggQEAKIAkJRTMzNDgyNUUxREM5M0FBMDAwOUM5NTQ0IC8qIERPTUpJ
VEFic3RyYWN0SGVhcFJlcG9zaXRvcnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1l
ID0gRE9NSklUQWJzdHJhY3RIZWFwUmVwb3NpdG9yeS5oOyBwYXRoID0gRGVyaXZlZFNvdXJjZXMv
V2ViQ29yZS9ET01KSVRBYnN0cmFjdEhlYXBSZXBvc2l0b3J5Lmg7IHNvdXJjZVRyZWUgPSBCVUlM
VF9QUk9EVUNUU19ESVI7IH07CiAJCUUzNEVFNDlGMURDMkQ1NzUwMEVBQTlEMyAvKiBKU0V2ZW50
Q3VzdG9tLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRXZlbnRDdXN0b20u
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTM1ODAyQjUxREM4NDM1ODAwQTk3NzND
IC8qIERPTUpJVElETFR5cGVGaWx0ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gRE9NSklUSURMVHlwZUZpbHRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlF
MzU4MkMyNDI1MjdGNjY4MDBEMUI3OTAgLyogV2ViQ29yZUpJVE9wZXJhdGlvbnMuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViQ29yZUpJVE9wZXJhdGlvbnMuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMzU4MkMyNjI1MjdGNjY4MDBEMUI3OTAg
LyogV2ViQ29yZUpJVE9wZXJhdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gV2ViQ29yZUpJVE9wZXJhdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
RTM1QjkwN0MyM0Y2MDY3NzAwMDAxMUZGIC8qIExvY2FsaXplZERldmljZU1vZGVsLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExvY2FsaXplZERldmljZU1vZGVsLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUzNUI5MDdFMjNGNjA2NzcwMDAwMTFGRiAvKiBMb2Nh
bGl6ZWREZXZpY2VNb2RlbC5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0
aCA9IExvY2FsaXplZERldmljZU1vZGVsLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQlFMzdDODY0RjFFQjYzRTJEMDA4N0M2Q0EgLyogSlNET01Qcm9taXNlLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRE9NUHJvbWlzZS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwpAQCAtMjY0OTksNiArMjY1MDIsOCBAQAogCQkJCTQxNEI4MjAyMUQ2REYwRDkwMDc3
RUJFMyAvKiBTdHJ1Y3R1cmVkQ2xvbmUuY3BwICovLAogCQkJCTQxNEI4MjAzMUQ2REYwRDkwMDc3
RUJFMyAvKiBTdHJ1Y3R1cmVkQ2xvbmUuaCAqLywKIAkJCQk0MTlCRTc1MjFCQzdGM0RCMDBFMUM4
NUIgLyogV2ViQ29yZUJ1aWx0aW5OYW1lcy5oICovLAorCQkJCUUzNTgyQzI0MjUyN0Y2NjgwMEQx
Qjc5MCAvKiBXZWJDb3JlSklUT3BlcmF0aW9ucy5jcHAgKi8sCisJCQkJRTM1ODJDMjYyNTI3RjY2
ODAwRDFCNzkwIC8qIFdlYkNvcmVKSVRPcGVyYXRpb25zLmggKi8sCiAJCQkJMEY3REYxNDcxRTJC
RjFBNjAwOTU5NTFCIC8qIFdlYkNvcmVKU0NsaWVudERhdGEuY3BwICovLAogCQkJCUJDNTNEOTEw
MTE0MzEwQ0MwMDBEODE3RSAvKiBXZWJDb3JlSlNDbGllbnREYXRhLmggKi8sCiAJCQkJMEYwOTlE
MDYxN0I5NjhBMTAwRkY4NEI5IC8qIFdlYkNvcmVUeXBlZEFycmF5Q29udHJvbGxlci5jcHAgKi8s
CkBAIC0zNDQ2OSw2ICszNDQ3NCw3IEBACiAJCQkJQ0RDNjlEREExNjM3MUZENDAwN0MzOERGIC8q
IFdlYkNvcmVGdWxsU2NyZWVuUGxhY2Vob2xkZXJWaWV3LmggaW4gSGVhZGVycyAqLywKIAkJCQlD
REM2OURENjE2MzIwMjZDMDA3QzM4REYgLyogV2ViQ29yZUZ1bGxTY3JlZW5XYXJuaW5nVmlldy5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJQ0QxMjdERUUxNEYzMDk4NDAwRTg0Nzc5IC8qIFdlYkNvcmVG
dWxsU2NyZWVuV2luZG93LmggaW4gSGVhZGVycyAqLywKKwkJCQlFMzU4MkMyODI1MjdGNjY5MDBE
MUI3OTAgLyogV2ViQ29yZUpJVE9wZXJhdGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDMzQ4
QkQ0MERCN0Y4MDQwMDRBQkFCQiAvKiBXZWJDb3JlSlNCdWlsdGluSW50ZXJuYWxzLmggaW4gSGVh
ZGVycyAqLywKIAkJCQlCQzM0OEJENDBEQjdGODA0MDA0QUJBQkEgLyogV2ViQ29yZUpTQnVpbHRp
bnMuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDNTNEOTExMTE0MzEwQ0MwMDBEODE3RSAvKiBXZWJD
b3JlSlNDbGllbnREYXRhLmggaW4gSGVhZGVycyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0pTRE9NQnVpbHRpbkNvbnN0cnVjdG9yLmggYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU0RPTUJ1aWx0aW5Db25zdHJ1Y3Rvci5oCmluZGV4IGZmN2EwNWQzY2Iy
MmY3NWFlYTBiMTNjMWU0OTY4ZWUxYmQ1YmZjYmQuLmQxZTFiZWZiZDljOTU0NDU2MzQ2NWNjYjg5
MGRhNDM1OTliN2M2NmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
RE9NQnVpbHRpbkNvbnN0cnVjdG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNET01CdWlsdGluQ29uc3RydWN0b3IuaApAQCAtMzcsNiArMzcsOCBAQCB0ZW1wbGF0ZTx0eXBl
bmFtZSBKU0NsYXNzPiBjbGFzcyBKU0RPTUJ1aWx0aW5Db25zdHJ1Y3RvciBmaW5hbCA6IHB1Ymxp
YyBKU0RPTUJ1aQogICAgIC8vIFVzdWFsbHkgZGVmaW5lZCBmb3IgZWFjaCBzcGVjaWFsaXphdGlv
biBjbGFzcy4KICAgICBzdGF0aWMgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZUZvclN0cnVjdHVyZShK
U0M6OlZNJiwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmKTsKIAorICAgIHN0YXRpYyBKU0M6OkVu
Y29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTExfQVRUUklCVVRFUyBjb25zdHJ1Y3QoSlNDOjpKU0ds
b2JhbE9iamVjdCosIEpTQzo6Q2FsbEZyYW1lKik7CisKIHByaXZhdGU6CiAgICAgSlNET01CdWls
dGluQ29uc3RydWN0b3IoSlNDOjpTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmpl
Y3QmIGdsb2JhbE9iamVjdCkKICAgICAgICAgOiBCYXNlKHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0
KQpAQCAtNDUsNyArNDcsNiBAQCB0ZW1wbGF0ZTx0eXBlbmFtZSBKU0NsYXNzPiBjbGFzcyBKU0RP
TUJ1aWx0aW5Db25zdHJ1Y3RvciBmaW5hbCA6IHB1YmxpYyBKU0RPTUJ1aQogCiAgICAgdm9pZCBm
aW5pc2hDcmVhdGlvbihKU0M6OlZNJiwgSlNET01HbG9iYWxPYmplY3QmKTsKICAgICBzdGF0aWMg
SlNDOjpDYWxsRGF0YSBnZXRDb25zdHJ1Y3REYXRhKEpTQzo6SlNDZWxsKik7Ci0gICAgc3RhdGlj
IEpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTF9BVFRSSUJVVEVTIGNvbnN0cnVjdChK
U0M6OkpTR2xvYmFsT2JqZWN0KiwgSlNDOjpDYWxsRnJhbWUqKTsKIAogICAgIEpTQzo6RW5jb2Rl
ZEpTVmFsdWUgY2FsbENvbnN0cnVjdG9yKEpTQzo6SlNHbG9iYWxPYmplY3QmLCBKU0M6OkNhbGxG
cmFtZSYsIEpTQzo6SlNPYmplY3QmKTsKICAgICBKU0M6OkVuY29kZWRKU1ZhbHVlIGNhbGxDb25z
dHJ1Y3RvcihKU0M6OkpTR2xvYmFsT2JqZWN0JiwgSlNDOjpDYWxsRnJhbWUmLCBKU0M6OkpTT2Jq
ZWN0Kik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUNvbnN0
cnVjdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUNvbnN0cnVjdG9yLmgK
aW5kZXggYWNmOTE5MGVhNzlmYmE4NTdhNmYwYTI0YTdiZDJjMWMwNjM3NjJhOS4uNDYyMzRkMmE0
YjdiMzIxODg4YTBlMjRmYjllNWFkMmRmYTM5ODAyYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNET01Db25zdHJ1Y3Rvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTRE9NQ29uc3RydWN0b3IuaApAQCAtMzUsNiArMzUsOSBAQCB0ZW1wbGF0ZTx0
eXBlbmFtZSBKU0NsYXNzPiBjbGFzcyBKU0RPTUNvbnN0cnVjdG9yIGZpbmFsIDogcHVibGljIEpT
RE9NQ29uc3RydWN0bwogICAgIC8vIE11c3QgYmUgZGVmaW5lZCBmb3IgZWFjaCBzcGVjaWFsaXph
dGlvbiBjbGFzcy4KICAgICBzdGF0aWMgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZUZvclN0cnVjdHVy
ZShKU0M6OlZNJiwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmKTsKIAorICAgIC8vIE11c3QgYmUg
ZGVmaW5lZCBmb3IgZWFjaCBzcGVjaWFsaXphdGlvbiBjbGFzcy4KKyAgICBzdGF0aWMgSlNDOjpF
bmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJQlVURVMgY29uc3RydWN0KEpTQzo6SlNH
bG9iYWxPYmplY3QqLCBKU0M6OkNhbGxGcmFtZSopOworCiBwcml2YXRlOgogICAgIEpTRE9NQ29u
c3RydWN0b3IoSlNDOjpTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGds
b2JhbE9iamVjdCkKICAgICAgICAgOiBCYXNlKHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0KQpAQCAt
NDYsOCArNDksNiBAQCB0ZW1wbGF0ZTx0eXBlbmFtZSBKU0NsYXNzPiBjbGFzcyBKU0RPTUNvbnN0
cnVjdG9yIGZpbmFsIDogcHVibGljIEpTRE9NQ29uc3RydWN0bwogCiAgICAgLy8gVXN1YWxseSBk
ZWZpbmVkIGZvciBlYWNoIHNwZWNpYWxpemF0aW9uIGNsYXNzLgogICAgIHZvaWQgaW5pdGlhbGl6
ZVByb3BlcnRpZXMoSlNDOjpWTSYsIEpTRE9NR2xvYmFsT2JqZWN0JikgeyB9Ci0gICAgLy8gTXVz
dCBiZSBkZWZpbmVkIGZvciBlYWNoIHNwZWNpYWxpemF0aW9uIGNsYXNzLgotICAgIHN0YXRpYyBK
U0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTExfQVRUUklCVVRFUyBjb25zdHJ1Y3QoSlND
OjpKU0dsb2JhbE9iamVjdCosIEpTQzo6Q2FsbEZyYW1lKik7CiB9OwogCiB0ZW1wbGF0ZTx0eXBl
bmFtZSBKU0NsYXNzPiBpbmxpbmUgSlNET01Db25zdHJ1Y3RvcjxKU0NsYXNzPiogSlNET01Db25z
dHJ1Y3RvcjxKU0NsYXNzPjo6Y3JlYXRlKEpTQzo6Vk0mIHZtLCBKU0M6OlN0cnVjdHVyZSogc3Ry
dWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01MZWdhY3lGYWN0b3J5RnVuY3Rpb24uaCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NTGVnYWN5RmFjdG9yeUZ1bmN0aW9uLmgKaW5k
ZXggNzgzMWJmMjg5ZWY2ODQ1OWU3M2YyZjM5NTAzOTFlOGIzOGMxYjkyNy4uYTIxZjFmZDk4NzU1
MGQ5MzEyODM4MWJiMmYxNzQwMzhiMTg4MTA4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNET01MZWdhY3lGYWN0b3J5RnVuY3Rpb24uaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0RPTUxlZ2FjeUZhY3RvcnlGdW5jdGlvbi5oCkBAIC0zNiw2ICsz
Niw5IEBAIHRlbXBsYXRlPHR5cGVuYW1lIEpTQ2xhc3M+IGNsYXNzIEpTRE9NTGVnYWN5RmFjdG9y
eUZ1bmN0aW9uIGZpbmFsIDogcHVibGljIEpTRE9NCiAgICAgLy8gTXVzdCBiZSBkZWZpbmVkIGZv
ciBlYWNoIHNwZWNpYWxpemF0aW9uIGNsYXNzLgogICAgIHN0YXRpYyBKU0M6OkpTVmFsdWUgcHJv
dG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYpOwog
CisgICAgLy8gTXVzdCBiZSBkZWZpbmVkIGZvciBlYWNoIHNwZWNpYWxpemF0aW9uIGNsYXNzLgor
ICAgIHN0YXRpYyBKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTExfQVRUUklCVVRFUyBj
b25zdHJ1Y3QoSlNDOjpKU0dsb2JhbE9iamVjdCosIEpTQzo6Q2FsbEZyYW1lKik7CisKIHByaXZh
dGU6CiAgICAgSlNET01MZWdhY3lGYWN0b3J5RnVuY3Rpb24oSlNDOjpTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKICAgICAgICAgOiBCYXNlKHN0
cnVjdHVyZSwgZ2xvYmFsT2JqZWN0KQpAQCAtNDcsOCArNTAsNiBAQCB0ZW1wbGF0ZTx0eXBlbmFt
ZSBKU0NsYXNzPiBjbGFzcyBKU0RPTUxlZ2FjeUZhY3RvcnlGdW5jdGlvbiBmaW5hbCA6IHB1Ymxp
YyBKU0RPTQogCiAgICAgLy8gVXN1YWxseSBkZWZpbmVkIGZvciBlYWNoIHNwZWNpYWxpemF0aW9u
IGNsYXNzLgogICAgIHZvaWQgaW5pdGlhbGl6ZVByb3BlcnRpZXMoSlNDOjpWTSYsIEpTRE9NR2xv
YmFsT2JqZWN0JikgeyB9Ci0gICAgLy8gTXVzdCBiZSBkZWZpbmVkIGZvciBlYWNoIHNwZWNpYWxp
emF0aW9uIGNsYXNzLgotICAgIHN0YXRpYyBKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TExfQVRUUklCVVRFUyBjb25zdHJ1Y3QoSlNDOjpKU0dsb2JhbE9iamVjdCosIEpTQzo6Q2FsbEZy
YW1lKik7CiB9OwogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBKU0NsYXNzPiBpbmxpbmUgSlNET01MZWdh
Y3lGYWN0b3J5RnVuY3Rpb248SlNDbGFzcz4qIEpTRE9NTGVnYWN5RmFjdG9yeUZ1bmN0aW9uPEpT
Q2xhc3M+OjpjcmVhdGUoSlNDOjpWTSYgdm0sIEpTQzo6U3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpT
RE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9TY3JpcHRDb250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL1NjcmlwdENvbnRyb2xsZXIuY3BwCmluZGV4IDcxNjU1ZWJiMzlhOTg4ZmUwYWZlNTdm
ZTBkNWU3NDJhOWJiMzZlMGEuLmM3NGViMTBlZGE5ODM3OGVlYjEyYzk1MzIwYjQzY2FiYmE3ZDc2
ZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdENvbnRyb2xs
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdENvbnRyb2xsZXIu
Y3BwCkBAIC01Niw2ICs1Niw3IEBACiAjaW5jbHVkZSAiU2NyaXB0YWJsZURvY3VtZW50UGFyc2Vy
LmgiCiAjaW5jbHVkZSAiU2V0dGluZ3MuaCIKICNpbmNsdWRlICJVc2VyR2VzdHVyZUluZGljYXRv
ci5oIgorI2luY2x1ZGUgIldlYkNvcmVKSVRPcGVyYXRpb25zLmgiCiAjaW5jbHVkZSAiV2ViQ29y
ZUpTQ2xpZW50RGF0YS5oIgogI2luY2x1ZGUgIm5wcnVudGltZV9pbXBsLmgiCiAjaW5jbHVkZSAi
cnVudGltZV9yb290LmgiCkBAIC04Nyw2ICs4OCw3IEBAIHZvaWQgU2NyaXB0Q29udHJvbGxlcjo6
aW5pdGlhbGl6ZU1haW5UaHJlYWQoKQogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQogICAgIEpT
Qzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAgICBX
ZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZgogfQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSklUT3BlcmF0aW9ucy5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSklUT3BlcmF0aW9ucy5jcHAKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uZTY1NTk4NTBiOWM5YTRjNTY5MzMxOTllYTczNmQwMTQxNDUyOTgwNgotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVKSVRPcGVyYXRpb25z
LmNwcApAQCAtMCwwICsxLDQ3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIwIEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwor
ICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisg
KiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICog
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgor
I2luY2x1ZGUgIldlYkNvcmVKSVRPcGVyYXRpb25zLmgiCisKKyNpbmNsdWRlIDxKYXZhU2NyaXB0
Q29yZS9KSVRPcGVyYXRpb25MaXN0Lmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworI2lmIEVO
QUJMRShKSVRfT1BFUkFUSU9OX1ZBTElEQVRJT04pCitleHRlcm4gY29uc3QgdWludHB0cl90IHN0
YXJ0T2ZIb3N0RnVuY3Rpb25zSW5XZWJDb3JlIF9fYXNtKCJzZWN0aW9uJHN0YXJ0JF9fREFUQV9D
T05TVCRfX2pzY19ob3N0Iik7CitleHRlcm4gY29uc3QgdWludHB0cl90IGVuZE9mSG9zdEZ1bmN0
aW9uc0luV2ViQ29yZSBfX2FzbSgic2VjdGlvbiRlbmQkX19EQVRBX0NPTlNUJF9fanNjX2hvc3Qi
KTsKK2V4dGVybiBjb25zdCB1aW50cHRyX3Qgc3RhcnRPZkpJVE9wZXJhdGlvbnNJbldlYkNvcmUg
X19hc20oInNlY3Rpb24kc3RhcnQkX19EQVRBX0NPTlNUJF9fanNjX29wcyIpOworZXh0ZXJuIGNv
bnN0IHVpbnRwdHJfdCBlbmRPZkpJVE9wZXJhdGlvbnNJbldlYkNvcmUgX19hc20oInNlY3Rpb24k
ZW5kJF9fREFUQV9DT05TVCRfX2pzY19vcHMiKTsKKyNlbmRpZgorCit2b2lkIHBvcHVsYXRlSklU
T3BlcmF0aW9ucygpCit7CisjaWYgRU5BQkxFKEpJVF9PUEVSQVRJT05fVkFMSURBVElPTikKKyAg
ICBKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6OnBvcHVsYXRlUG9pbnRlcnNJbkVtYmVkZGVyMSgmc3Rh
cnRPZkhvc3RGdW5jdGlvbnNJbldlYkNvcmUsICZlbmRPZkhvc3RGdW5jdGlvbnNJbldlYkNvcmUs
ICZzdGFydE9mSklUT3BlcmF0aW9uc0luV2ViQ29yZSwgJmVuZE9mSklUT3BlcmF0aW9uc0luV2Vi
Q29yZSk7CisjZW5kaWYKK30KKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L1dlYkNvcmVKSVRPcGVyYXRpb25zLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTkwYTg0MjQ4Mzk2YzFmNjMwMjE3
Y2Q1ODQ1MWM1YjAwZWQ3ZmMzYwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL1dlYkNvcmVKSVRPcGVyYXRpb25zLmgKQEAgLTAsMCArMSwzMiBAQAorLyoKKyAq
IENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgor
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJ
VFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJ
TkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
CisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNwcmFnbWEgb25jZQorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK1dFQkNPUkVfRVhQ
T1JUIHZvaWQgcG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CisKK30KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JyaWRnZS9vYmpjL1dlYlNjcmlwdE9iamVjdC5tbSBiL1NvdXJjZS9XZWJDb3Jl
L2JyaWRnZS9vYmpjL1dlYlNjcmlwdE9iamVjdC5tbQppbmRleCBiMmU1Y2E1OGQzZWRiMWVhOTMz
MWRkNDY4OTUyMTE3NjlkNmRhN2VjLi4zYTEwNjJhMTMxNmFhNDllNzViYTkyZDNiM2ViNmM3NzE5
YWNiYTExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9XZWJTY3JpcHRP
YmplY3QubW0KKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvV2ViU2NyaXB0T2JqZWN0
Lm1tCkBAIC0zNSw2ICszNSw3IEBACiAjaW1wb3J0ICJKU0hUTUxFbGVtZW50LmgiCiAjaW1wb3J0
ICJKU1BsdWdpbkVsZW1lbnRGdW5jdGlvbnMuaCIKICNpbXBvcnQgIk9iakNSdW50aW1lT2JqZWN0
LmgiCisjaW1wb3J0ICJXZWJDb3JlSklUT3BlcmF0aW9ucy5oIgogI2ltcG9ydCAiV2ViQ29yZU9i
akNFeHRyYXMuaCIKICNpbXBvcnQgIm9iamNfaW5zdGFuY2UuaCIKICNpbXBvcnQgInJ1bnRpbWVf
b2JqZWN0LmgiCkBAIC0xNjYsNiArMTY3LDcgQEAgKyAodm9pZClpbml0aWFsaXplCiAjaWYgIVVT
RShXRUJfVEhSRUFEKQogICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6
ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNl
bmRpZgogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb21qaXQvSlNEb2N1bWVudERP
TUpJVC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb21qaXQvSlNEb2N1bWVudERPTUpJVC5jcHAKaW5k
ZXggZjhlODU0ZmExNjY3NWRkNTgzOWIzMjVjZmUyOGFjZTJmMmE1MzYzMy4uZmYxNmM1YWMwNzQ0
NWJjMjliNzMxOThhMjZhMGI1YTc1NzhiZmM4MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
ZG9taml0L0pTRG9jdW1lbnRET01KSVQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbWppdC9K
U0RvY3VtZW50RE9NSklULmNwcApAQCAtMTQwLDYgKzE0MCw4IEBAIFJlZjxKU0M6OkRPTUpJVDo6
Q2FsbERPTUdldHRlclNuaXBwZXQ+IGNvbXBpbGVEb2N1bWVudEJvZHlBdHRyaWJ1dGUoKQogICAg
IHJldHVybiBzbmlwcGV0OwogfQogCituYW1lc3BhY2UgRE9NSklUIHsKKwogZXh0ZXJuICJDIiB7
CiAKIEpTQ19ERUZJTkVfSklUX09QRVJBVElPTihvcGVyYXRpb25Ub0pTRWxlbWVudCwgSlNDOjpF
bmNvZGVkSlNWYWx1ZSwgKEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgdm9pZCog
cmVzdWx0KSkKQEAgLTE5NCw2ICsxOTYsNiBAQCBKU0NfREVGSU5FX0pJVF9PUEVSQVRJT04ob3Bl
cmF0aW9uVG9KU0NvbnRhaW5lck5vZGUsIEpTQzo6RW5jb2RlZEpTVmFsdWUsIChKU0M6OgogCiB9
CiAKLX0KK30gfQogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2NvY29hL1NoYXJlZEJ1ZmZlckNvY29hLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29j
b2EvU2hhcmVkQnVmZmVyQ29jb2EubW0KaW5kZXggOGY4ZTUzM2UwNDAzNjZmYzE5YzU0OGNhZjhk
MTE2MmY1MDllYWQzZC4uMjgxMDA1M2RlN2M5NzAyOTgzYmQwNDMwOWNkOTBlYzRlOTE0OWUxYiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2hhcmVkQnVmZmVyQ29j
b2EubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2hhcmVkQnVmZmVyQ29j
b2EubW0KQEAgLTI2LDYgKzI2LDcgQEAKICNpbXBvcnQgImNvbmZpZy5oIgogI2ltcG9ydCAiU2hh
cmVkQnVmZmVyLmgiCiAKKyNpbXBvcnQgIldlYkNvcmVKSVRPcGVyYXRpb25zLmgiCiAjaW1wb3J0
ICJXZWJDb3JlT2JqQ0V4dHJhcy5oIgogI2ltcG9ydCA8SmF2YVNjcmlwdENvcmUvSW5pdGlhbGl6
ZVRocmVhZGluZy5oPgogI2ltcG9ydCA8c3RyaW5nLmg+CkBAIC00Niw2ICs0Nyw3IEBAICsgKHZv
aWQpaW5pdGlhbGl6ZQogI2lmICFVU0UoV0VCX1RIUkVBRCkKICAgICBKU0M6OmluaXRpYWxpemUo
KTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAgV2ViQ29yZTo6cG9wdWxh
dGVKSVRPcGVyYXRpb25zKCk7CiAjZW5kaWYgLy8gIVVTRShXRUJfVEhSRUFEKQogfQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3Mvd2FrL1dlYkNvcmVUaHJlYWQubW0g
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3Mvd2FrL1dlYkNvcmVUaHJlYWQubW0KaW5kZXgg
NjM5NGI5N2Q3OGFhMTBlNTgzNTQzOTY1YjU5N2JkMzA5Zjk2MzBjOS4uMmZlMzVmZGY1MDMzNTIw
MTI2OTYyOTQ3OGU1ZTI3NWE5Njc0YWNlMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vaW9zL3dhay9XZWJDb3JlVGhyZWFkLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2lvcy93YWsvV2ViQ29yZVRocmVhZC5tbQpAQCAtMzYsNiArMzYsNyBAQAogI2ltcG9ydCAi
VGhyZWFkR2xvYmFsRGF0YS5oIgogI2ltcG9ydCAiV0FLV2luZG93LmgiCiAjaW1wb3J0ICJXS1V0
aWxpdGllcy5oIgorI2ltcG9ydCAiV2ViQ29yZUpJVE9wZXJhdGlvbnMuaCIKICNpbXBvcnQgIldl
YkNvcmVUaHJlYWRJbnRlcm5hbC5oIgogI2ltcG9ydCAiV2ViQ29yZVRocmVhZE1lc3NhZ2UuaCIK
ICNpbXBvcnQgIldlYkNvcmVUaHJlYWRSdW4uaCIKQEAgLTYxNiw2ICs2MTcsNyBAQCBzdGF0aWMg
dm9pZCogUnVuV2ViVGhyZWFkKHZvaWQqKQogICAgIC8vIDxyZGFyOi8vcHJvYmxlbS84NTAyNDg3
Pi4KICAgICBXVEY6OmluaXRpYWxpemVXZWJUaHJlYWQoKTsKICAgICBKU0M6OmluaXRpYWxpemUo
KTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICAgICAKICAgICAvLyBN
YWtlIHN1cmUgdGhhdCB0aGUgV2ViVGhyZWFkIGFuZCB0aGUgbWFpbiB0aHJlYWQgc2hhcmUgdGhl
IHNhbWUgVGhyZWFkR2xvYmFsRGF0YSBvYmplY3RzLgogICAgIFdlYkNvcmU6OnRocmVhZEdsb2Jh
bERhdGEoKS5zZXRXZWJDb3JlVGhyZWFkRGF0YSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9TaGFyZWQvQVBJL2MvV0tTdHJpbmcuY3BwIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQVBJL2Mv
V0tTdHJpbmcuY3BwCmluZGV4IDI2ODU1YjQ4YmE1YWFiZmRiMjUyOGJjMDM5YTUyMGIyMGUxZWRj
MmYuLjEwYzY0OGFiZmQ3MDk5NGFjODY2NWZhMTUwOWIxNzVmZWIxNzNlZjcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvU2hhcmVkL0FQSS9jL1dLU3RyaW5nLmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0L1NoYXJlZC9BUEkvYy9XS1N0cmluZy5jcHAKQEAgLTI4LDggKzI4LDEwIEBACiAjaW5jbHVk
ZSAiV0tTdHJpbmdQcml2YXRlLmgiCiAKICNpbmNsdWRlICJXS0FQSUNhc3QuaCIKKyNpbmNsdWRl
ICJXZWJLaXRKSVRPcGVyYXRpb25zLmgiCiAjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSW5pdGlh
bGl6ZVRocmVhZGluZy5oPgogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL09wYXF1ZUpTU3RyaW5n
Lmg+CisjaW5jbHVkZSA8V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0aW9ucy5oPgogI2luY2x1ZGUg
PHd0Zi91bmljb2RlL1VURjhDb252ZXJzaW9uLmg+CiAKIFdLVHlwZUlEIFdLU3RyaW5nR2V0VHlw
ZUlEKCkKQEAgLTEzNCw1ICsxMzYsNyBAQCBXS1N0cmluZ1JlZiBXS1N0cmluZ0NyZWF0ZVdpdGhK
U1N0cmluZyhKU1N0cmluZ1JlZiBqc1N0cmluZ1JlZikKIEpTU3RyaW5nUmVmIFdLU3RyaW5nQ29w
eUpTU3RyaW5nKFdLU3RyaW5nUmVmIHN0cmluZ1JlZikKIHsKICAgICBKU0M6OmluaXRpYWxpemUo
KTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKKyAgICBXZWJLaXQ6OnBv
cHVsYXRlSklUT3BlcmF0aW9ucygpOwogICAgIHJldHVybiBPcGFxdWVKU1N0cmluZzo6dHJ5Q3Jl
YXRlKFdlYktpdDo6dG9JbXBsKHN0cmluZ1JlZiktPnN0cmluZygpKS5sZWFrUmVmKCk7CiB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9XZWJLaXQySW5pdGlhbGl6ZUNv
Y29hLm1tIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvV2ViS2l0MkluaXRpYWxpemVDb2Nv
YS5tbQppbmRleCAxNGQyNzlmNTdmZDM0YzAwNDBjZmY4ZDY2N2Y1NjE2YzVkYzBiNTZmLi44ZWY3
NGRlZjRhYmJlZTlhMDhhYWI0ZTUzOTIxNjk3YjRkY2YyMTM2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1NoYXJlZC9Db2NvYS9XZWJLaXQySW5pdGlhbGl6ZUNvY29hLm1tCisrKyBiL1NvdXJj
ZS9XZWJLaXQvU2hhcmVkL0NvY29hL1dlYktpdDJJbml0aWFsaXplQ29jb2EubW0KQEAgLTI3LDcg
KzI3LDkgQEAKICNpbXBvcnQgIldlYktpdDJJbml0aWFsaXplLmgiCiAKICNpbXBvcnQgIlZlcnNp
b25DaGVja3MuaCIKKyNpbXBvcnQgIldlYktpdEpJVE9wZXJhdGlvbnMuaCIKICNpbXBvcnQgPEph
dmFTY3JpcHRDb3JlL0luaXRpYWxpemVUaHJlYWRpbmcuaD4KKyNpbXBvcnQgPFdlYkNvcmUvV2Vi
Q29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbXBvcnQgPG11dGV4PgogI2ltcG9ydCA8d3RmL01haW5U
aHJlYWQuaD4KICNpbXBvcnQgPHd0Zi9SZWZDb3VudGVkLmg+CkBAIC01NCw2ICs1Niw5IEBAIHN0
YXRpYyB2b2lkIHJ1bkluaXRpYWxpemF0aW9uQ29kZSh2b2lkKiA9IG51bGxwdHIpCiAgICAgV1RG
Ojppbml0aWFsaXplTWFpblRocmVhZCgpOwogCiAgICAgV1RGOjpSZWZDb3VudGVkQmFzZTo6ZW5h
YmxlVGhyZWFkaW5nQ2hlY2tzR2xvYmFsbHkoKTsKKworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklU
T3BlcmF0aW9ucygpOworICAgIFdlYktpdDo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiB9CiAK
IHZvaWQgSW5pdGlhbGl6ZVdlYktpdDIoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFy
ZWQvV2ViS2l0MkluaXRpYWxpemUuY3BwIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViS2l0Mklu
aXRpYWxpemUuY3BwCmluZGV4IDRhNTNmMmNlZGEzYWI5ODVhNzE0NDEwMWFlZjhmZDVlZjBlZDcw
M2IuLjZiZmI4ZjY5ZDk0MTYyODI3MTI2YTE2NGRhNmQyOGFlMjkzODIzOGUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYktpdDJJbml0aWFsaXplLmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0L1NoYXJlZC9XZWJLaXQySW5pdGlhbGl6ZS5jcHAKQEAgLTI3LDggKzI3LDEwIEBACiAj
aW5jbHVkZSAiV2ViS2l0MkluaXRpYWxpemUuaCIKIAogI2luY2x1ZGUgIkxvZ0luaXRpYWxpemF0
aW9uLmgiCisjaW5jbHVkZSAiV2ViS2l0SklUT3BlcmF0aW9ucy5oIgogI2luY2x1ZGUgPEphdmFT
Y3JpcHRDb3JlL0luaXRpYWxpemVUaHJlYWRpbmcuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0xvZ0lu
aXRpYWxpemF0aW9uLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0aW9ucy5o
PgogI2luY2x1ZGUgPHd0Zi9NYWluVGhyZWFkLmg+CiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQu
aD4KICNpbmNsdWRlIDx3dGYvUnVuTG9vcC5oPgpAQCAtNDksNiArNTEsOSBAQCB2b2lkIEluaXRp
YWxpemVXZWJLaXQyKCkKICAgICBXZWJDb3JlOjppbml0aWFsaXplTG9nQ2hhbm5lbHNJZk5lY2Vz
c2FyeSgpOwogICAgIFdlYktpdDo6aW5pdGlhbGl6ZUxvZ0NoYW5uZWxzSWZOZWNlc3NhcnkoKTsK
ICNlbmRpZiAvLyAhTE9HX0RJU0FCTEVEIHx8ICFSRUxFQVNFX0xPR19ESVNBQkxFRAorCisgICAg
V2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CisgICAgV2ViS2l0Ojpwb3B1bGF0ZUpJ
VE9wZXJhdGlvbnMoKTsKIH0KIAogI2VuZGlmIC8vICFQTEFURk9STShDT0NPQSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYktpdEpJVE9wZXJhdGlvbnMuY3BwIGIvU291cmNl
L1dlYktpdC9TaGFyZWQvV2ViS2l0SklUT3BlcmF0aW9ucy5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMGZlYjA5
ZDI2OTJkYWY5NDE4NmIzMjhkMzkxODIzMGQzNmY3MTNkMwotLS0gL2Rldi9udWxsCisrKyBiL1Nv
dXJjZS9XZWJLaXQvU2hhcmVkL1dlYktpdEpJVE9wZXJhdGlvbnMuY3BwCkBAIC0wLDAgKzEsNDcg
QEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUg
SU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICog
VEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiV2ViS2l0SklU
T3BlcmF0aW9ucy5oIgorCisjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSklUT3BlcmF0aW9uTGlz
dC5oPgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworI2lmIEVOQUJMRShKSVRfT1BFUkFUSU9OX1ZB
TElEQVRJT04pCitleHRlcm4gY29uc3QgdWludHB0cl90IHN0YXJ0T2ZIb3N0RnVuY3Rpb25zSW5X
ZWJLaXQgX19hc20oInNlY3Rpb24kc3RhcnQkX19EQVRBX0NPTlNUJF9fanNjX2hvc3QiKTsKK2V4
dGVybiBjb25zdCB1aW50cHRyX3QgZW5kT2ZIb3N0RnVuY3Rpb25zSW5XZWJLaXQgX19hc20oInNl
Y3Rpb24kZW5kJF9fREFUQV9DT05TVCRfX2pzY19ob3N0Iik7CitleHRlcm4gY29uc3QgdWludHB0
cl90IHN0YXJ0T2ZKSVRPcGVyYXRpb25zSW5XZWJLaXQgX19hc20oInNlY3Rpb24kc3RhcnQkX19E
QVRBX0NPTlNUJF9fanNjX29wcyIpOworZXh0ZXJuIGNvbnN0IHVpbnRwdHJfdCBlbmRPZkpJVE9w
ZXJhdGlvbnNJbldlYktpdCBfX2FzbSgic2VjdGlvbiRlbmQkX19EQVRBX0NPTlNUJF9fanNjX29w
cyIpOworI2VuZGlmCisKK3ZvaWQgcG9wdWxhdGVKSVRPcGVyYXRpb25zKCkKK3sKKyNpZiBFTkFC
TEUoSklUX09QRVJBVElPTl9WQUxJREFUSU9OKQorICAgIEpTQzo6SklUT3BlcmF0aW9uTGlzdDo6
cG9wdWxhdGVQb2ludGVyc0luRW1iZWRkZXIyKCZzdGFydE9mSG9zdEZ1bmN0aW9uc0luV2ViS2l0
LCAmZW5kT2ZIb3N0RnVuY3Rpb25zSW5XZWJLaXQsICZzdGFydE9mSklUT3BlcmF0aW9uc0luV2Vi
S2l0LCAmZW5kT2ZKSVRPcGVyYXRpb25zSW5XZWJLaXQpOworI2VuZGlmCit9CisKK30KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYktpdEpJVE9wZXJhdGlvbnMuaCBiL1NvdXJj
ZS9XZWJLaXQvU2hhcmVkL1dlYktpdEpJVE9wZXJhdGlvbnMuaApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44MjdhYzJj
ZmFjODM4NDliMjRmYjAzYjQxMTUwMjllNGZmYzA0M2IzCi0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL1dlYktpdC9TaGFyZWQvV2ViS2l0SklUT3BlcmF0aW9ucy5oCkBAIC0wLDAgKzEsMzIgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5D
LiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
QVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworbmFtZXNwYWNlIFdlYktpdCB7CisKK3ZvaWQg
cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CisKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
U291cmNlcy50eHQgYi9Tb3VyY2UvV2ViS2l0L1NvdXJjZXMudHh0CmluZGV4IGVjNDExNjY1YTFm
ZTMzYmU1YjE2NDgxNDRmZGY5M2JkZDFkNGFhMmUuLmJjMmM0OTQzYWViZTVjY2FmOGI5NDdlZDcx
YWUwMzBmNGYzMmQ5ODMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU291cmNlcy50eHQKKysr
IGIvU291cmNlL1dlYktpdC9Tb3VyY2VzLnR4dApAQCAtMTk3LDYgKzE5Nyw3IEBAIFNoYXJlZC9X
ZWJIaXRUZXN0UmVzdWx0RGF0YS5jcHAKIFNoYXJlZC9XZWJJbWFnZS5jcHAKIFNoYXJlZC9XZWJL
ZXlib2FyZEV2ZW50LmNwcCBAbm8tdW5pZnkKIFNoYXJlZC9XZWJLaXQySW5pdGlhbGl6ZS5jcHAg
QG5vLXVuaWZ5CitTaGFyZWQvV2ViS2l0SklUT3BlcmF0aW9ucy5jcHAgQG5vLXVuaWZ5CiBTaGFy
ZWQvV2ViTWVtb3J5U2FtcGxlci5jcHAKIFNoYXJlZC9XZWJNb3VzZUV2ZW50LmNwcCBAbm8tdW5p
ZnkKIFNoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJL
aXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNTNiNjRmNzVlZGQ0M2Nl
OTVmNzY0MTM0N2Q4YTU3OGEwNmI2NDNhZS4uODMwOTkwMWIxOTM1MWNmOTQ1NzZhYzY0ODk3OGMy
ODRmOGU0YTc4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qCkBAIC0xODAxLDYgKzE4MDEsNyBAQAogCQlFMUQyNkE1MzE3NTk2NEQ5MDA5NUJG
RDEgLyogV2ViQ29udGVudFByb2Nlc3MueGliIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBFMUQyNkE0QzE3NTk2MzRFMDA5NUJGRDEgLyogV2ViQ29udGVu
dFByb2Nlc3MueGliICovOyB9OwogCQlFMUU1NTJDNTE2QUUwNjVGMDA0RUQ2NTMgLyogU2FuZGJv
eEluaXRpYWxpemF0aW9uUGFyYW1ldGVycy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gRTFFNTUyQzMxNkFFMDY1RTAwNEVENjUzIC8qIFNhbmRib3hJbml0
aWFsaXphdGlvblBhcmFtZXRlcnMuaCAqLzsgfTsKIAkJRTFFRTUzRTMxMUY4Q0ZDMDAwQ0NCRUU0
IC8qIEluamVjdGVkQnVuZGxlUGFnZUVkaXRvckNsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFFRTUzREMxMUY4Q0Y5RjAwQ0NCRUU0IC8qIElu
amVjdGVkQnVuZGxlUGFnZUVkaXRvckNsaWVudC5oICovOyB9OworCQlFMzU4MkMyQjI1MjdGNkFB
MDBEMUI3OTAgLyogV2ViS2l0SklUT3BlcmF0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTM1ODJDMkEyNTI3RjY5QzAwRDFCNzkwIC8qIFdlYktp
dEpJVE9wZXJhdGlvbnMuaCAqLzsgfTsKIAkJRTM4NjZBRTUyMzk3NDAwNDAwRjg4RkU5IC8qIFdl
YkRldmljZU9yaWVudGF0aW9uVXBkYXRlUHJvdmlkZXJQcm94eS5tbSBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzODY2QUU0MjM5NzQwMDQwMEY4OEZFOSAv
KiBXZWJEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3ZpZGVyUHJveHkubW0gKi87IH07CiAJCUUz
ODY2QUU3MjM5NzQwNTMwMEY4OEZFOSAvKiBXZWJEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3Zp
ZGVyUHJveHkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEUzODY2QUU2MjM5NzQwNTMwMEY4OEZFOSAvKiBXZWJEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVBy
b3ZpZGVyUHJveHkuaCAqLzsgfTsKIAkJRTM4NjZCMDgyMzk5QTJEMTAwRjg4RkU5IC8qIFdlYkRl
dmljZU9yaWVudGF0aW9uVXBkYXRlUHJvdmlkZXJQcm94eU1lc3NhZ2VzLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMzg2NkIwNTIzOTk5NzlDMDBGODhG
RTkgLyogV2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92aWRlclByb3h5TWVzc2FnZXMuaCAq
LzsgfTsKQEAgLTE4MTAsNiArMTgxMSw3IEBACiAJCUUzOEExRkMwMjNBNTUxQkYwMEQyMzc0RiAv
KiBVc2VySW50ZXJmYWNlSWRpb20ubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBFMzhBMUZCRjIzQTU1MUJGMDBEMjM3NEYgLyogVXNlckludGVyZmFjZUlk
aW9tLm1tICovOyB9OwogCQlFMzk2MjhERDIzOTYwQ0M2MDA2NThFQ0QgLyogV2ViRGV2aWNlT3Jp
ZW50YXRpb25VcGRhdGVQcm92aWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gRTM5NjI4REIyMzk2MENDNTAwNjU4RUNEIC8qIFdlYkRldmljZU9yaWVu
dGF0aW9uVXBkYXRlUHJvdmlkZXIuaCAqLzsgfTsKIAkJRTM5NjI4REUyMzk2MENDNjAwNjU4RUNE
IC8qIFdlYkRldmljZU9yaWVudGF0aW9uVXBkYXRlUHJvdmlkZXIuY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTM5NjI4REMyMzk2MENDNjAwNjU4RUNE
IC8qIFdlYkRldmljZU9yaWVudGF0aW9uVXBkYXRlUHJvdmlkZXIuY3BwICovOyB9OworCQlFM0M4
NDY3QzI1MjdGOURFMDA1NEZEOUMgLyogV2ViS2l0SklUT3BlcmF0aW9ucy5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMzU4MkMyOTI1MjdGNjlCMDBE
MUI3OTAgLyogV2ViS2l0SklUT3BlcmF0aW9ucy5jcHAgKi87IH07CiAJCUUzQ0FBQTQ0MjQxMzI3
OTkwMENFRDJFMiAvKiBBY2Nlc3NpYmlsaXR5U3VwcG9ydFNQSS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTNDQUFBNDMyNDEzMjc4QTAwQ0VEMkUyIC8q
IEFjY2Vzc2liaWxpdHlTdXBwb3J0U1BJLmggKi87IH07CiAJCUU0MTNGNTlEMUFDMUFEQzQwMDM0
NTM2MCAvKiBOZXR3b3JrQ2FjaGVFbnRyeS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gRTQxM0Y1OUIxQUMxQURCNjAwMzQ1MzYwIC8qIE5ldHdvcmtDYWNo
ZUVudHJ5LmggKi87IH07CiAJCUU0MkUwNjEwMUFBNzUyM0IwMEIxMTY5OSAvKiBOZXR3b3JrQ2Fj
aGVJT0NoYW5uZWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEU0MkUwNjBCMUFBNzQ0MEQwMEIxMTY5OSAvKiBOZXR3b3JrQ2FjaGVJT0NoYW5uZWwuaCAq
LzsgfTsKQEAgLTUyODIsNiArNTI4NCw4IEBACiAJCUUxRUU1M0RDMTFGOENGOUYwMENDQkVFNCAv
KiBJbmplY3RlZEJ1bmRsZVBhZ2VFZGl0b3JDbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSW5qZWN0ZWRCdW5kbGVQYWdlRWRpdG9yQ2xpZW50Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCUUxRUU1M0U2MTFGOENGRkIwMENDQkVFNCAvKiBJbmplY3RlZEJ1
bmRsZVBhZ2VFZGl0b3JDbGllbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSW5qZWN0ZWRCdW5kbGVQYWdlRWRpdG9yQ2xpZW50LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJRTM0MzlCNjMyMzQ1NDYzQTAwMTFERTBCIC8qIE5ldHdvcmtQcm9jZXNz
Q29ubmVjdGlvbkluZm8uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9u
SW5mby5oOyBwYXRoID0gTmV0d29yay9OZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb25JbmZvLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUzNTgyQzI5MjUyN0Y2OUIwMEQxQjc5MCAvKiBX
ZWJLaXRKSVRPcGVyYXRpb25zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFdlYktpdEpJVE9wZXJhdGlvbnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlFMzU4MkMyQTI1MjdGNjlDMDBEMUI3OTAgLyogV2ViS2l0SklUT3BlcmF0aW9ucy5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJLaXRKSVRPcGVyYXRpb25zLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUzODY2QUU0MjM5NzQwMDQwMEY4OEZFOSAvKiBXZWJE
ZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3ZpZGVyUHJveHkubW0gKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5vYmpjcHA7IG5hbWUgPSBXZWJEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3ZpZGVy
UHJveHkubW07IHBhdGggPSBpb3MvV2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92aWRlclBy
b3h5Lm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFMzg2NkFFNjIzOTc0MDUzMDBG
ODhGRTkgLyogV2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92aWRlclByb3h5LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFdlYkRldmljZU9yaWVudGF0aW9uVXBkYXRlUHJv
dmlkZXJQcm94eS5oOyBwYXRoID0gaW9zL1dlYkRldmljZU9yaWVudGF0aW9uVXBkYXRlUHJvdmlk
ZXJQcm94eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFMzg2NkFFRDIzOTg0NzFB
MDBGODhGRTkgLyogV2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92aWRlclByb3h5Lm1lc3Nh
Z2VzLmluICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgbmFtZSA9IFdlYkRldmljZU9yaWVudGF0aW9uVXBkYXRl
UHJvdmlkZXJQcm94eS5tZXNzYWdlcy5pbjsgcGF0aCA9IGlvcy9XZWJEZXZpY2VPcmllbnRhdGlv
blVwZGF0ZVByb3ZpZGVyUHJveHkubWVzc2FnZXMuaW47IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CkBAIC02MTE2LDYgKzYxMjAsOCBAQAogCQkJCUMwMzM3REQyMTI3QTJBMEUwMDhGRjRGNCAv
KiBXZWJLZXlib2FyZEV2ZW50LmNwcCAqLywKIAkJCQlCQzlCQTUwMjE2OTdDNDUzMDBFNDQ2MTYg
LyogV2ViS2l0MkluaXRpYWxpemUuY3BwICovLAogCQkJCUJDOUJBNTAzMTY5N0M0NTMwMEU0NDYx
NiAvKiBXZWJLaXQySW5pdGlhbGl6ZS5oICovLAorCQkJCUUzNTgyQzI5MjUyN0Y2OUIwMEQxQjc5
MCAvKiBXZWJLaXRKSVRPcGVyYXRpb25zLmNwcCAqLywKKwkJCQlFMzU4MkMyQTI1MjdGNjlDMDBE
MUI3OTAgLyogV2ViS2l0SklUT3BlcmF0aW9ucy5oICovLAogCQkJCTkwNTYyMEU4MTJCQzI0OEIw
MDA3OTlCNiAvKiBXZWJNZW1vcnlTYW1wbGVyLmNwcCAqLywKIAkJCQk5MDU2MjBFOTEyQkMyNDhC
MDAwNzk5QjYgLyogV2ViTWVtb3J5U2FtcGxlci5oICovLAogCQkJCUMwMzM3REFGMTI3QTI4RDAw
MDhGRjRGNCAvKiBXZWJNb3VzZUV2ZW50LmNwcCAqLywKQEAgLTExMjkzLDYgKzExMjk5LDcgQEAK
IAkJCQkxQTYyODBDNTE5MTk5NDlGMDA2QUQ5RjkgLyogV2ViS2l0LmggaW4gSGVhZGVycyAqLywK
IAkJCQlCQ0I2MzQ3ODExNkJGMTA2MDA2MDMyMTUgLyogV2ViS2l0Ml9DLmggaW4gSGVhZGVycyAq
LywKIAkJCQlCQzlCQTUwNTE2OTdDNDUzMDBFNDQ2MTYgLyogV2ViS2l0MkluaXRpYWxpemUuaCBp
biBIZWFkZXJzICovLAorCQkJCUUzNTgyQzJCMjUyN0Y2QUEwMEQxQjc5MCAvKiBXZWJLaXRKSVRP
cGVyYXRpb25zLmggaW4gSGVhZGVycyAqLywKIAkJCQkxQTYyODBDNzE5MTk5NTBDMDA2QUQ5Rjkg
LyogV2ViS2l0UHJpdmF0ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0QwMDNBNTMxOUQ0OUI1RDAw
NUFCQ0UwIC8qIFdlYk1lZGlhS2V5U3RvcmFnZU1hbmFnZXIuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTlCNUJFQzI2MjQwMEY0QTkwMDcwQzZFRiAvKiBXZWJNZWRpYVN0cmF0ZWd5LmggaW4gSGVhZGVy
cyAqLywKQEAgLTEzMDI4LDYgKzEzMDM1LDcgQEAKIAkJCQkxQTYyODBGMzE5MTk5ODJBMDA2QUQ5
RjkgLyogV2ViS2l0Lm0gaW4gU291cmNlcyAqLywKIAkJCQkyRDkyQTc4QjIxMkI2QUIxMDBGNDkz
RkQgLyogV2ViS2l0MkluaXRpYWxpemUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTE4MUE3OTgy
MUFDQzc0QjAwNTlBMzE2IC8qIFdlYktpdEFkZGl0aW9ucy5tbSBpbiBTb3VyY2VzICovLAorCQkJ
CUUzQzg0NjdDMjUyN0Y5REUwMDU0RkQ5QyAvKiBXZWJLaXRKSVRPcGVyYXRpb25zLmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCTUxRjA2MEUxMTY1NDMxODUwMEYzMjgyRiAvKiBXZWJNRE5TUmVnaXN0
ZXJNZXNzYWdlUmVjZWl2ZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMkQ5MkE3OEMyMTJCNkFC
MTAwRjQ5M0ZEIC8qIFdlYk1vdXNlRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzFCQTky
NEQxNDg4MzEyNjAwNjJFREI1IC8qIFdlYk5vdGlmaWNhdGlvbk1hbmFnZXJNZXNzYWdlUmVjZWl2
ZXIuY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21h
Yy9IaXN0b3J5L1dlYkJhY2tGb3J3YXJkTGlzdC5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFj
L0hpc3RvcnkvV2ViQmFja0ZvcndhcmRMaXN0Lm1tCmluZGV4IGYyZjEzZWJmOGU1NWNlMTZiNzY3
NGI1NzhlODBlZjYwN2MwZWM3ZTguLmQ2YWY3NTVmZmE3MzhiOTkzZjdmNzg3ZWMzZThjM2Y0ZWNk
YTcwZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0hpc3RvcnkvV2ViQmFj
a0ZvcndhcmRMaXN0Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0hpc3RvcnkvV2Vi
QmFja0ZvcndhcmRMaXN0Lm1tCkBAIC00NCw2ICs0NCw3IEBACiAjaW1wb3J0IDxXZWJDb3JlL0hp
c3RvcnlJdGVtLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1NldHRpbmdzLmg+CiAjaW1wb3J0IDxXZWJD
b3JlL1RocmVhZENoZWNrLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25z
Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVPYmpDRXh0cmFzLmg+CiAjaW1wb3J0IDx3dGYv
QXNzZXJ0aW9ucy5oPgogI2ltcG9ydCA8d3RmL01haW5UaHJlYWQuaD4KQEAgLTEwMCw2ICsxMDEs
NyBAQCArICh2b2lkKWluaXRpYWxpemUKICNpZiAhUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICBK
U0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAg
V2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAjZW5kaWYKIH0KIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvSGlzdG9yeS9XZWJIaXN0b3J5SXRlbS5tbSBiL1Nv
dXJjZS9XZWJLaXRMZWdhY3kvbWFjL0hpc3RvcnkvV2ViSGlzdG9yeUl0ZW0ubW0KaW5kZXggZjY4
OGRjODlhMmJjNWY5ODQ3ZGY5ZmI5ZWU0OWVkZDcwNThkNjBkMC4uODdlNjI5Zjk5NDlmMTIxNDgw
NGJmZWQ0YTAyYjE0Njc1ZTdjY2I2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9t
YWMvSGlzdG9yeS9XZWJIaXN0b3J5SXRlbS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21h
Yy9IaXN0b3J5L1dlYkhpc3RvcnlJdGVtLm1tCkBAIC00Nyw2ICs0Nyw3IEBACiAjaW1wb3J0IDxX
ZWJDb3JlL0hpc3RvcnlJdGVtLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0ltYWdlLmg+CiAjaW1wb3J0
IDxXZWJDb3JlL1RocmVhZENoZWNrLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVy
YXRpb25zLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVPYmpDRXh0cmFzLmg+CiAjaW1wb3J0
IDx3dGYvQXNzZXJ0aW9ucy5oPgogI2ltcG9ydCA8d3RmL01haW5UaHJlYWQuaD4KQEAgLTEyNyw2
ICsxMjgsNyBAQCArICh2b2lkKWluaXRpYWxpemUKICNpZiAhUExBVEZPUk0oSU9TX0ZBTUlMWSkK
ICAgICBKU0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7
CisgICAgV2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAjZW5kaWYKIH0KIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvTWlzYy9XZWJDYWNoZS5tbSBiL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL01pc2MvV2ViQ2FjaGUubW0KaW5kZXggYWI4MzAxZGRjZDBjMDc5
MjY5MDM0NjI3ODhhNzQ0NjBkYTM1ZDVhMS4uZDgxNzY5OTY3NWVjZmJiOWMyMzY3OTM1YzIyYzU3
Yzc4YTRhMzRmMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvTWlzYy9XZWJD
YWNoZS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9NaXNjL1dlYkNhY2hlLm1tCkBA
IC00MCw2ICs0MCw3IEBACiAjaW1wb3J0IDxXZWJDb3JlL01lbW9yeUNhY2hlLmg+CiAjaW1wb3J0
IDxXZWJDb3JlL05ldHdvcmtTdG9yYWdlU2Vzc2lvbi5oPgogI2ltcG9ydCA8V2ViQ29yZS9TdG9y
YWdlU2Vzc2lvblByb3ZpZGVyLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRp
b25zLmg+CiAjaW1wb3J0IDx3dGYvTWFpblRocmVhZC5oPgogI2ltcG9ydCA8d3RmL1J1bkxvb3Au
aD4KIApAQCAtNjUsNiArNjYsNyBAQCArICh2b2lkKWluaXRpYWxpemUKICNpZiAhUExBVEZPUk0o
SU9TX0ZBTUlMWSkKICAgICBKU0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVN
YWluVGhyZWFkKCk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAjZW5k
aWYKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvTWlzYy9XZWJFbGVt
ZW50RGljdGlvbmFyeS5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL01pc2MvV2ViRWxlbWVu
dERpY3Rpb25hcnkubW0KaW5kZXggOTk4MjkwNWUyYmEzM2VkMzgyOGJiNzQ4NzQxOTc3OTNmNDRi
ZmI0Mi4uMWZiNTE4Zjg3NGI4M2U2NGFmZTVmZjQ5OGQxZWY1MWNlMzE4NWZjOCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvTWlzYy9XZWJFbGVtZW50RGljdGlvbmFyeS5tbQor
KysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9NaXNjL1dlYkVsZW1lbnREaWN0aW9uYXJ5Lm1t
CkBAIC00MSw2ICs0MSw3IEBACiAjaW1wb3J0IDxXZWJDb3JlL0ZyYW1lLmg+CiAjaW1wb3J0IDxX
ZWJDb3JlL0hpdFRlc3RSZXN1bHQuaD4KICNpbXBvcnQgPFdlYkNvcmUvSW1hZ2UuaD4KKyNpbXBv
cnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2Vi
Q29yZU9iakNFeHRyYXMuaD4KICNpbXBvcnQgPFdlYktpdExlZ2FjeS9ET01Db3JlLmg+CiAjaW1w
b3J0IDxXZWJLaXRMZWdhY3kvRE9NRXh0ZW5zaW9ucy5oPgpAQCAtNjksNiArNzAsNyBAQCArICh2
b2lkKWluaXRpYWxpemUKICNpZiAhUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICBKU0M6OmluaXRp
YWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAgV2ViQ29yZTo6
cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAjZW5kaWYKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdExlZ2FjeS9tYWMvTWlzYy9XZWJJY29uRGF0YWJhc2UubW0gYi9Tb3VyY2UvV2ViS2l0
TGVnYWN5L21hYy9NaXNjL1dlYkljb25EYXRhYmFzZS5tbQppbmRleCA0YzFkY2IyNDNlZDNmNGEx
YjMxYjk5OGFkZmQ3MmRjZmZhZDU0YmQwLi45YTFiMmNiNmM3OTcwZTZhODgxNjU4OThmMjlkMzAw
ZDZiMzBhMTFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9NaXNjL1dlYklj
b25EYXRhYmFzZS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9NaXNjL1dlYkljb25E
YXRhYmFzZS5tbQpAQCAtMzQsNiArMzQsNyBAQAogI2ltcG9ydCA8SmF2YVNjcmlwdENvcmUvSW5p
dGlhbGl6ZVRocmVhZGluZy5oPgogI2ltcG9ydCA8V2ViQ29yZS9JbWFnZS5oPgogI2ltcG9ydCA8
V2ViQ29yZS9UaHJlYWRDaGVjay5oPgorI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0
aW9ucy5oPgogI2ltcG9ydCA8d3RmL01haW5UaHJlYWQuaD4KICNpbXBvcnQgPHd0Zi9OZXZlckRl
c3Ryb3llZC5oPgogI2ltcG9ydCA8d3RmL1J1bkxvb3AuaD4KQEAgLTk5LDYgKzEwMCw3IEBAICsg
KHZvaWQpaW5pdGlhbGl6ZQogewogICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5p
dGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMo
KTsKIH0KIAogKyAoV2ViSWNvbkRhdGFiYXNlICopc2hhcmVkSWNvbkRhdGFiYXNlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9NaXNjL1dlYlN0cmluZ1RydW5jYXRvci5tbSBi
L1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL01pc2MvV2ViU3RyaW5nVHJ1bmNhdG9yLm1tCmluZGV4
IDk5ZDc5YzE5Njc1MjQwOTIwMjIzNTY3Yjc1YzkwY2M1NTY4MTBiOTQuLjk4ZWNhYTk0MzU2NDZm
NjBlYWYxNWMzNDUxNTY4YzkyMDcwNjNlMTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvbWFjL01pc2MvV2ViU3RyaW5nVHJ1bmNhdG9yLm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvbWFjL01pc2MvV2ViU3RyaW5nVHJ1bmNhdG9yLm1tCkBAIC0zMiw2ICszMiw3IEBACiAjaW1w
b3J0IDxXZWJDb3JlL0ZvbnRDYXNjYWRlLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0ZvbnRQbGF0Zm9y
bURhdGEuaD4KICNpbXBvcnQgPFdlYkNvcmUvU3RyaW5nVHJ1bmNhdG9yLmg+CisjaW1wb3J0IDxX
ZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0IDx3dGYvTWFpblRocmVhZC5o
PgogI2ltcG9ydCA8d3RmL05ldmVyRGVzdHJveWVkLmg+CiAKQEAgLTUyLDYgKzUzLDcgQEAgKyAo
dm9pZClpbml0aWFsaXplCiB7CiAgICAgSlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0
aWFsaXplTWFpblRocmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygp
OwogfQogCiArIChOU1N0cmluZyAqKWNlbnRlclRydW5jYXRlU3RyaW5nOihOU1N0cmluZyAqKXN0
cmluZyB0b1dpZHRoOihmbG9hdCltYXhXaWR0aApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExl
Z2FjeS9tYWMvUGx1Z2lucy9Ib3N0ZWQvV2ViSG9zdGVkTmV0c2NhcGVQbHVnaW5WaWV3Lm1tIGIv
U291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9Ib3N0ZWQvV2ViSG9zdGVkTmV0c2NhcGVQ
bHVnaW5WaWV3Lm1tCmluZGV4IDQ3NmE1NWVkYTE2ZTM0YzRlZGE2MmM0ZjliNjA5ZjMzMGU2MjFk
ZWQuLjc2MTE3MWNlYTdjYTVmYTY3MjhjOWRjMDBkMmViN2IyZDE4Zjc3ODAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvSG9zdGVkL1dlYkhvc3RlZE5ldHNjYXBl
UGx1Z2luVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL0hvc3Rl
ZC9XZWJIb3N0ZWROZXRzY2FwZVBsdWdpblZpZXcubW0KQEAgLTQ3LDYgKzQ3LDcgQEAKICNpbXBv
cnQgPFdlYkNvcmUvUmVuZGVyRW1iZWRkZWRPYmplY3QuaD4KICNpbXBvcnQgPFdlYkNvcmUvUmVz
b3VyY2VFcnJvci5oPgogI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlQ0FMYXllckV4dHJhcy5oPgor
I2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0aW9ucy5oPgogI2ltcG9ydCA8V2ViQ29y
ZS9ydW50aW1lX3Jvb3QuaD4KICNpbXBvcnQgPHBhbC9zcGkvY29jb2EvUXVhcnR6Q29yZVNQSS5o
PgogI2ltcG9ydCA8d3RmL0Fzc2VydGlvbnMuaD4KQEAgLTEwNyw2ICsxMDgsNyBAQCArICh2b2lk
KWluaXRpYWxpemUKICNpZiAhUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICBKU0M6OmluaXRpYWxp
emUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAgV2ViQ29yZTo6cG9w
dWxhdGVKSVRPcGVyYXRpb25zKCk7CiAjZW5kaWYKICAgICBzZW5kVXNlckNoYW5nZU5vdGlmaWNh
dGlvbnMoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMv
V2ViQmFzZU5ldHNjYXBlUGx1Z2luVmlldy5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1Bs
dWdpbnMvV2ViQmFzZU5ldHNjYXBlUGx1Z2luVmlldy5tbQppbmRleCA3ZWM0MGM5OTdhZDA1NTY0
MTExZjc4NjE0YTY3MzNiOWQ0MDEyMThkLi4yZGRhN2I2MzkzY2VjY2RjOWM4MTJjNjM4MzkxODhk
NmE0MzVkMTQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL1dl
YkJhc2VOZXRzY2FwZVBsdWdpblZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMv
UGx1Z2lucy9XZWJCYXNlTmV0c2NhcGVQbHVnaW5WaWV3Lm1tCkBAIC01NCw2ICs1NCw3IEBACiAj
aW1wb3J0IDxXZWJDb3JlL1JlbmRlckVtYmVkZGVkT2JqZWN0Lmg+CiAjaW1wb3J0IDxXZWJDb3Jl
L1JlbmRlclZpZXcuaD4KICNpbXBvcnQgPFdlYkNvcmUvU2VjdXJpdHlPcmlnaW4uaD4KKyNpbXBv
cnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbXBvcnQgPFdlYktpdExlZ2Fj
eS9ET01Qcml2YXRlLmg+CiAjaW1wb3J0IDxwYWwvc3BpL2NnL0NvcmVHcmFwaGljc1NQSS5oPgog
I2ltcG9ydCA8d3RmL0Fzc2VydGlvbnMuaD4KQEAgLTcyLDYgKzczLDcgQEAgKyAodm9pZClpbml0
aWFsaXplCiB7CiAgICAgSlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFsaXplTWFp
blRocmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogICAgIFdl
YktpdDo6c2VuZFVzZXJDaGFuZ2VOb3RpZmljYXRpb25zKCk7CiB9CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvV2ViQmFzZVBsdWdpblBhY2thZ2UubW0gYi9T
b3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL1dlYkJhc2VQbHVnaW5QYWNrYWdlLm1tCmlu
ZGV4IGFkZTdiYTI3YTdmN2Y3ZDMzYTRjMWY4ZWQ2OGMzNzAxMTI3ODAwYmEuLmZjZTNjZjhkMmQ4
ZDA2N2U2ZjEzNTkxMTQ4MjdiNGU2ZWYyMzg3ZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvbWFjL1BsdWdpbnMvV2ViQmFzZVBsdWdpblBhY2thZ2UubW0KKysrIGIvU291cmNlL1dl
YktpdExlZ2FjeS9tYWMvUGx1Z2lucy9XZWJCYXNlUGx1Z2luUGFja2FnZS5tbQpAQCAtMzQsNiAr
MzQsNyBAQAogI2ltcG9ydCAiV2ViUGx1Z2luUGFja2FnZS5oIgogI2ltcG9ydCAiV2ViVHlwZXNJ
bnRlcm5hbC5oIgogI2ltcG9ydCA8SmF2YVNjcmlwdENvcmUvSW5pdGlhbGl6ZVRocmVhZGluZy5o
PgorI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0aW9ucy5oPgogI2ltcG9ydCA8YWxn
b3JpdGhtPgogI2ltcG9ydCA8bWFjaC1vL2FyY2guaD4KICNpbXBvcnQgPG1hY2gtby9mYXQuaD4K
QEAgLTYxLDYgKzYyLDcgQEAgKyAodm9pZClpbml0aWFsaXplCiAjaWYgIVBMQVRGT1JNKElPU19G
QU1JTFkpCiAgICAgSlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRo
cmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogI2VuZGlmCiB9
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvV2ViTmV0c2Nh
cGVQbHVnaW5WaWV3Lm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9XZWJOZXRz
Y2FwZVBsdWdpblZpZXcubW0KaW5kZXggMmNhZWUyZjMxODE1N2MxZTMyNzNmMDE2MGU5N2M2MjBi
ZWZmNmU1ZC4uYWJkZTg2MWNmZjAyNzc1YjAxZDVjZmI2NTEyMmU1ODQxMjIyMTQwMyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9XZWJOZXRzY2FwZVBsdWdpblZp
ZXcubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9XZWJOZXRzY2FwZVBs
dWdpblZpZXcubW0KQEAgLTY4LDYgKzY4LDcgQEAKICNpbXBvcnQgPFdlYkNvcmUvU2NyaXB0Q29u
dHJvbGxlci5oPgogI2ltcG9ydCA8V2ViQ29yZS9TZWN1cml0eU9yaWdpbi5oPgogI2ltcG9ydCA8
V2ViQ29yZS9Vc2VyR2VzdHVyZUluZGljYXRvci5oPgorI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3Jl
SklUT3BlcmF0aW9ucy5oPgogI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlVVJMUmVzcG9uc2UuaD4K
ICNpbXBvcnQgPFdlYkNvcmUvbnBydW50aW1lX2ltcGwuaD4KICNpbXBvcnQgPFdlYkNvcmUvcnVu
dGltZV9yb290Lmg+CkBAIC0xNjQsNiArMTY1LDcgQEAgKyAodm9pZClpbml0aWFsaXplCiB7CiAg
ICAgSlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOwor
ICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogICAgIHNlbmRVc2VyQ2hhbmdl
Tm90aWZpY2F0aW9ucygpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21h
Yy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5
L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQubW0KaW5kZXggMjhjYTFiOWFiYmU2
NDZkOWUwNDBhNTYxNjdiZmIwM2RiY2JhMzgxNy4uYWYxYWIyNjkwYzY0N2U2NTAzOWEwMGU0YjYx
MTA5NjYwM2Y0ZGJmYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViQ29y
ZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFj
L1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5tbQpAQCAtNzgsNiArNzgsNyBAQAogI2lt
cG9ydCA8V2ViQ29yZS9Vc2VyVHlwaW5nR2VzdHVyZUluZGljYXRvci5oPgogI2ltcG9ydCA8V2Vi
Q29yZS9WaXNpYmxlVW5pdHMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViQ29udGVudFJlYWRlci5o
PgorI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0aW9ucy5oPgogI2ltcG9ydCA8V2Vi
Q29yZS9XZWJDb3JlT2JqQ0V4dHJhcy5oPgogI2ltcG9ydCA8cGFsL3NwaS9jb2NvYS9OU0F0dHJp
YnV0ZWRTdHJpbmdTUEkuaD4KICNpbXBvcnQgPHBhbC9zcGkvbWFjL05TU3BlbGxDaGVja2VyU1BJ
Lmg+CkBAIC0xNDAsNiArMTQxLDcgQEAgKyAodm9pZClpbml0aWFsaXplCiAjaWYgIVBMQVRGT1JN
KElPU19GQU1JTFkpCiAgICAgSlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFsaXpl
TWFpblRocmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogI2Vu
ZGlmCiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBw
b3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2Vi
Q29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQubW0KaW5kZXggZjcwYzgzMGYzNDQ1MWEw
NDM3ZGZlZjQxZTk5ZjNjMDg0Zjg1ZDU0ZS4uNmM3YjhlNmRiY2VmYzE3ZDY4ZGRlZDMzZWMzMzEx
NmMwZWVhZDgyZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViQ29yZVN1
cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9t
YWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQubW0KQEAgLTExOCw2ICsxMTgs
NyBAQAogI2ltcG9ydCA8V2ViQ29yZS9TY3JpcHRDb250cm9sbGVyLmg+CiAjaW1wb3J0IDxXZWJD
b3JlL1NoYXJlZEJ1ZmZlci5oPgogI2ltcG9ydCA8V2ViQ29yZS9TdWJyZXNvdXJjZUxvYWRlci5o
PgorI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0aW9ucy5oPgogI2ltcG9ydCA8V2Vi
Q29yZS9XZWJDb3JlT2JqQ0V4dHJhcy5oPgogI2ltcG9ydCA8V2ViQ29yZS9XZWJHTEJsb2NrbGlz
dC5oPgogI2ltcG9ydCA8V2ViQ29yZS9XZWJTY3JpcHRPYmplY3RQcml2YXRlLmg+CkBAIC0yMzQ2
LDYgKzIzNDcsNyBAQCArICh2b2lkKWluaXRpYWxpemUKICNpZiAhUExBVEZPUk0oSU9TX0ZBTUlM
WSkKICAgICBKU0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFk
KCk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAjZW5kaWYKIH0KIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJBcmNoaXZlLm1t
IGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJBcmNoaXZlLm1tCmluZGV4IGIy
MzdjOTg1ZGQxODJiNDQwNDY3ZGE1YzBhZjk4NDBhZWM5OGUwYmIuLjI1OWM3ZTllYTZkNTFiZjBj
NzQ2OTk3ZGZiZGE3OTdjMWViMDg4YTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL1dlYlZpZXcvV2ViQXJjaGl2ZS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9X
ZWJWaWV3L1dlYkFyY2hpdmUubW0KQEAgLTM3LDYgKzM3LDcgQEAKICNpbXBvcnQgPFdlYkNvcmUv
QXJjaGl2ZVJlc291cmNlLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0xlZ2FjeVdlYkFyY2hpdmUuaD4K
ICNpbXBvcnQgPFdlYkNvcmUvVGhyZWFkQ2hlY2suaD4KKyNpbXBvcnQgPFdlYkNvcmUvV2ViQ29y
ZUpJVE9wZXJhdGlvbnMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZU9iakNFeHRyYXMuaD4K
ICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+CiAjaW1wb3J0IDx3dGYvUnVuTG9vcC5oPgpAQCAt
NzEsNiArNzIsNyBAQCArICh2b2lkKWluaXRpYWxpemUKICNpZiAhUExBVEZPUk0oSU9TX0ZBTUlM
WSkKICAgICBKU0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFk
KCk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAjZW5kaWYKIH0KIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJEYXRhU291cmNl
Lm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJEYXRhU291cmNlLm1tCmlu
ZGV4IGQ3NzcyNjQ4YzQ4ZDlmYWVhMjc2ZGZhMjY1Y2E2YTBiMDU2MjJjZGMuLjFiNTk3MTY0Njg1
M2E2ZDE2YmE2Mjg2ZTBjYTNmYjNmYmRmMTNmNDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvbWFjL1dlYlZpZXcvV2ViRGF0YVNvdXJjZS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9XZWJWaWV3L1dlYkRhdGFTb3VyY2UubW0KQEAgLTU1LDYgKzU1LDcgQEAKICNpbXBv
cnQgPFdlYkNvcmUvTUlNRVR5cGVSZWdpc3RyeS5oPgogI2ltcG9ydCA8V2ViQ29yZS9SZXNvdXJj
ZVJlcXVlc3QuaD4KICNpbXBvcnQgPFdlYkNvcmUvU2hhcmVkQnVmZmVyLmg+CisjaW1wb3J0IDxX
ZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVP
YmpDRXh0cmFzLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVVUkxSZXNwb25zZS5oPgogI2lt
cG9ydCA8V2ViS2l0TGVnYWN5L0RPTUhUTUwuaD4KQEAgLTE1NSw2ICsxNTYsNyBAQCArICh2b2lk
KWluaXRpYWxpemUKICNpZiAhUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICAgICAgSlNDOjppbml0
aWFsaXplKCk7CiAgICAgICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAgICAgICAg
V2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAjZW5kaWYKICAgICB9CiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkhUTUxWaWV3Lm1tIGIv
U291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbQppbmRleCA1NTg1
ZjBjMmJmODMzNTA2MGEyNjhjZDY5NmNhMzQxZWMwYzFhMmIyLi5lZTY0ODFmMzg2MGE3YTdiNTFh
MTEwNzhlNDMzOGQ3MDVjZmRhYjYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21h
Yy9XZWJWaWV3L1dlYkhUTUxWaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dl
YlZpZXcvV2ViSFRNTFZpZXcubW0KQEAgLTEyNyw2ICsxMjcsNyBAQAogI2ltcG9ydCA8V2ViQ29y
ZS9UZXh0QWx0ZXJuYXRpdmVXaXRoUmFuZ2UuaD4KICNpbXBvcnQgPFdlYkNvcmUvVGV4dEluZGlj
YXRvci5oPgogI2ltcG9ydCA8V2ViQ29yZS9UZXh0VW5kb0luc2VydGlvbk1hcmt1cE1hYy5oPgor
I2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0aW9ucy5oPgogI2ltcG9ydCA8V2ViQ29y
ZS9XZWJDb3JlTlNGb250TWFuYWdlckV4dHJhcy5oPgogI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3Jl
T2JqQ0V4dHJhcy5oPgogI2ltcG9ydCA8V2ViQ29yZS9XZWJOU0F0dHJpYnV0ZWRTdHJpbmdFeHRy
YXMuaD4KQEAgLTEwMzMsNiArMTAzNCw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogCiAgICAgSlND
Ojppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOworICAgIFdl
YkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogCiAgICAgaWYgKCFvbGRTZXRDdXJzb3JG
b3JNb3VzZUxvY2F0aW9uSU1QKSB7CiAgICAgICAgIE1ldGhvZCBzZXRDdXJzb3JNZXRob2QgPSBj
bGFzc19nZXRJbnN0YW5jZU1ldGhvZChbTlNXaW5kb3cgY2xhc3NdLCBAc2VsZWN0b3IoX3NldEN1
cnNvckZvck1vdXNlTG9jYXRpb246KSk7CkBAIC0yNTY4LDYgKzI1NzAsNyBAQCArICh2b2lkKWlu
aXRpYWxpemUKIAogICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1h
aW5UaHJlYWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKIH0KIAog
I2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlBy
ZWZlcmVuY2VzLm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJQcmVmZXJl
bmNlcy5tbQppbmRleCA2MDNmMGE3MmIzODBiMzZhOWE4ZDBjZTM2NzA1ODY5MGZkMGIyN2EyLi4z
MTQ3MDUyMGRjNDJiZjU4NGY0NzM5MDI2MjRmZmJhZTk3MDk1ODUyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzLm1tCisrKyBiL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW0KQEAgLTQ4LDYgKzQ4
LDcgQEAKICNpbXBvcnQgPFdlYkNvcmUvUnVudGltZUFwcGxpY2F0aW9uQ2hlY2tzLmg+CiAjaW1w
b3J0IDxXZWJDb3JlL1NldHRpbmdzLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1RleHRFbmNvZGluZ1Jl
Z2lzdHJ5Lmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25zLmg+CiAjaW1w
b3J0IDxwYWwvc3BpL2NmL0NGTmV0d29ya1NQSS5oPgogI2ltcG9ydCA8d3RmL01haW5UaHJlYWQu
aD4KICNpbXBvcnQgPHd0Zi9SZXRhaW5QdHIuaD4KQEAgLTM3Niw2ICszNzcsNyBAQCArICh2b2lk
KWluaXRpYWxpemUKICNpZiBQTEFURk9STShNQUMpCiAgICAgSlNDOjppbml0aWFsaXplKCk7CiAg
ICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklU
T3BlcmF0aW9ucygpOwogI2VuZGlmCiAKICAgICBOU0RpY3Rpb25hcnkgKmRpY3QgPSBbTlNEaWN0
aW9uYXJ5IGRpY3Rpb25hcnlXaXRoT2JqZWN0c0FuZEtleXM6CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlJlc291cmNlLm1tIGIvU291cmNlL1dlYktpdExl
Z2FjeS9tYWMvV2ViVmlldy9XZWJSZXNvdXJjZS5tbQppbmRleCA0NDdlMmExYTk5MjIzODcwODIz
YWQyNzAyOTlhMTcwMjQ3NzIwNmZiLi5lZjEwOTg2ZGE4NzUzYWIzMTA5ZTBhZjE2MjFiMzAxMmY0
ZTllNmE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlJl
c291cmNlLm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViUmVzb3Vy
Y2UubW0KQEAgLTQwLDYgKzQwLDcgQEAKICNpbXBvcnQgPFdlYkNvcmUvUnVudGltZUFwcGxpY2F0
aW9uQ2hlY2tzLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1RleHRFbmNvZGluZy5oPgogI2ltcG9ydCA8
V2ViQ29yZS9UaHJlYWRDaGVjay5oPgorI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0
aW9ucy5oPgogI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlT2JqQ0V4dHJhcy5oPgogI2ltcG9ydCA8
V2ViQ29yZS9XZWJDb3JlVVJMUmVzcG9uc2UuaD4KICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+
CkBAIC02OSw2ICs3MCw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogI2lmICFQTEFURk9STShJT1Nf
RkFNSUxZKQogICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5U
aHJlYWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZgog
fQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlRleHRJ
dGVyYXRvci5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVGV4dEl0ZXJh
dG9yLm1tCmluZGV4IGQzYWQ5MThkYTdlZTNmNmY1OGY0MDkwM2M3ZTE3ZDZhNjZlMzg3YTEuLmFi
YTcxYWYyNTQzMTk1ZjU2NTBiNzFlMDc1NDJmM2M3MTE0N2FhN2YgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVGV4dEl0ZXJhdG9yLm1tCisrKyBiL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVGV4dEl0ZXJhdG9yLm1tCkBAIC0zMSw2ICsz
MSw3IEBACiAjaW1wb3J0IDxKYXZhU2NyaXB0Q29yZS9Jbml0aWFsaXplVGhyZWFkaW5nLmg+CiAj
aW1wb3J0IDxXZWJDb3JlL1JhbmdlLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1RleHRJdGVyYXRvci5o
PgorI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0aW9ucy5oPgogI2ltcG9ydCA8d3Rm
L01haW5UaHJlYWQuaD4KICNpbXBvcnQgPHd0Zi9SdW5Mb29wLmg+CiAjaW1wb3J0IDx3dGYvVmVj
dG9yLmg+CkBAIC00OSw2ICs1MCw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogI2lmICFQTEFURk9S
TShJT1NfRkFNSUxZKQogICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6
ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNl
bmRpZgogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dl
YlZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KaW5k
ZXggNjIzNWQyYzFlZDZhNjA1YzZkYjMyMTBiYWUwMTBjMGFlMmIxNTgwNC4uYzgxYTY2NGQyNjkx
NDUwYzIyOTE3NjgyZDNkNDdhNjY4ZDdmZmY0MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExl
Z2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFj
L1dlYlZpZXcvV2ViVmlldy5tbQpAQCAtMjIxLDYgKzIyMSw3IEBACiAjaW1wb3J0IDxXZWJDb3Jl
L1VzZXJTY3JpcHQuaD4KICNpbXBvcnQgPFdlYkNvcmUvVXNlclN0eWxlU2hlZXQuaD4KICNpbXBv
cnQgPFdlYkNvcmUvVmFsaWRhdGlvbkJ1YmJsZS5oPgorI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3Jl
SklUT3BlcmF0aW9ucy5oPgogI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlT2JqQ0V4dHJhcy5oPgog
I2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlVmlldy5oPgogI2ltcG9ydCA8V2ViQ29yZS9XZWJWaWV3
VmlzdWFsSWRlbnRpZmljYXRpb25PdmVybGF5Lmg+CkBAIC01MjQ0LDYgKzUyNDUsNyBAQCArICh2
b2lkKWluaXRpYWxpemUKICNpZiAhUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICBKU0M6OmluaXRp
YWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAgV2ViQ29yZTo6
cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAjZW5kaWYKIAogICAgIFdURjo6UmVmQ291bnRlZEJh
c2U6OmVuYWJsZVRocmVhZGluZ0NoZWNrc0dsb2JhbGx5KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXdEYXRhLm1tIGIvU291cmNlL1dlYktpdExl
Z2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3RGF0YS5tbQppbmRleCBmY2U0YTY2NDY2ZDhmZmI2NGI2
MjEyNTkwMzAxZWIyNDNiYTg5NDY2Li40ZGQzOWQ2NmRlNDJlNDlmYWRhZDRhZWM3ODhiMTRkMmZk
ZDFlNWRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZp
ZXdEYXRhLm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlld0Rh
dGEubW0KQEAgLTQwLDYgKzQwLDcgQEAKICNpbXBvcnQgPFdlYkNvcmUvUnVuTG9vcE9ic2VydmVy
Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1RleHRJbmRpY2F0b3JXaW5kb3cuaD4KICNpbXBvcnQgPFdl
YkNvcmUvVmFsaWRhdGlvbkJ1YmJsZS5oPgorI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlSklUT3Bl
cmF0aW9ucy5oPgogI2ltcG9ydCA8d3RmL01haW5UaHJlYWQuaD4KICNpbXBvcnQgPHd0Zi9SdW5M
b29wLmg+CiAKQEAgLTE2OSw2ICsxNzAsNyBAQCArICh2b2lkKWluaXRpYWxpemUKICNpZiAhUExB
VEZPUk0oSU9TX0ZBTUlMWSkKICAgICBKU0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRp
YWxpemVNYWluVGhyZWFkKCk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7
CiAjZW5kaWYKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS93aW4vV2ViS2l0
Q2xhc3NGYWN0b3J5LmNwcCBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYktpdENsYXNzRmFj
dG9yeS5jcHAKaW5kZXggMGE5YWMxMWNkMjY2ZTg5OWRlM2VjOWM5MDMxM2NmYTdjYmJlNDY4MC4u
Y2U4NjIwZmQ0YmQ3N2M3ZWVmOGRiOGQ3NDY0M2Y5NTJhM2FmMWE1NiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdExlZ2FjeS93aW4vV2ViS2l0Q2xhc3NGYWN0b3J5LmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0TGVnYWN5L3dpbi9XZWJLaXRDbGFzc0ZhY3RvcnkuY3BwCkBAIC01Niw2ICs1Niw3IEBA
CiAjaW5jbHVkZSAiV2ViVmlldy5oIgogI2luY2x1ZGUgIldlYldvcmtlcnNQcml2YXRlLmgiCiAj
aW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSW5pdGlhbGl6ZVRocmVhZGluZy5oPgorI2luY2x1ZGUg
PFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbmNsdWRlIDx3dGYvTWFpblRocmVh
ZC5oPgogI2luY2x1ZGUgPHd0Zi9Tb2Z0TGlua2luZy5oPgogCkBAIC02NSw2ICs2Niw3IEBAIFdl
YktpdENsYXNzRmFjdG9yeTo6V2ViS2l0Q2xhc3NGYWN0b3J5KENMU0lEIHRhcmdldENsYXNzKQog
ewogICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQo
KTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKIAogICAgIGdDbGFzc0Nv
dW50Kys7CiAgICAgZ0NsYXNzTmFtZUNvdW50KCkuYWRkKCJXZWJLaXRDbGFzc0ZhY3RvcnkiKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYlZpZXcuY3BwIGIvU291cmNl
L1dlYktpdExlZ2FjeS93aW4vV2ViVmlldy5jcHAKaW5kZXggOTNhYjNhZmZhMDUzOGViNTNlNGFk
ZjRlNmU2ZTk4YjIxYWVjMjNiMy4uY2IzOGMyNGU5OTJmMTBiN2E0ODlmNzMyZTQ1OWZhZmI3YTZh
ZGQxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS93aW4vV2ViVmlldy5jcHAKKysr
IGIvU291cmNlL1dlYktpdExlZ2FjeS93aW4vV2ViVmlldy5jcHAKQEAgLTE2Nyw2ICsxNjcsNyBA
QAogI2luY2x1ZGUgPFdlYkNvcmUvVXNlckNvbnRlbnRDb250cm9sbGVyLmg+CiAjaW5jbHVkZSA8
V2ViQ29yZS9Vc2VyU2NyaXB0Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9Vc2VyU3R5bGVTaGVldC5o
PgorI2luY2x1ZGUgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbmNsdWRlIDxX
ZWJDb3JlL1dlYkNvcmVUZXh0UmVuZGVyZXIuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1dpbmRvd01l
c3NhZ2VCcm9hZGNhc3Rlci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvV2luZG93c1RvdWNoLmg+CkBA
IC00MjMsNiArNDI0LDcgQEAgV2ViVmlldzo6V2ViVmlldygpCiAgICAgSlNDOjppbml0aWFsaXpl
KCk7CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOwogICAgIFdURjo6c2V0UHJvY2Vz
c1ByaXZpbGVnZXMoYWxsUHJpdmlsZWdlcygpKTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9w
ZXJhdGlvbnMoKTsKICAgICBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246OnBlcm1pdFBy
b2Nlc3NUb1VzZUNvb2tpZUFQSSh0cnVlKTsKIAogICAgIG1fYmFja2luZ1N0b3JlU2l6ZS5jeCA9
IG1fYmFja2luZ1N0b3JlU2l6ZS5jeSA9IDA7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>410398</attachid>
            <date>2020-10-02 18:22:58 -0700</date>
            <delta_ts>2020-10-02 19:44:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-217261-20201002182258.patch</filename>
            <type>text/plain</type>
            <size>88085</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY3OTA1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAx
YmFhODFhZGE3ZGFiODkzMDA1OGE1MTdjZDk2OTAzZmVlNmU3YWMwLi44MTVhNWZlZDI5YTRjZTky
MjdjOTI3ZWFjOTM0Mjk3NWZjMjU4YTEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw1NSBAQAorMjAyMC0xMC0wMiAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIEludHJvZHVjZSBKSVRPcGVyYXRpb25MaXN0IHRvIHZhbGlkYXRl
IEpJVC1jYWdlZCBwb2ludGVycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjE3MjYxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIEpJVE9wZXJhdGlvbkxpc3QsIHdoaWNoIG1hbmFn
ZXMgYWxsIHRoZSBob3N0LWZ1bmN0aW9uICYgaml0LW9wZXJhdGlvbiBwb2ludGVycy4KKyAgICAg
ICAgQW5kIHdlIGNhbiBub3cgcXVlcnkgd2hldGhlciB0aGUgZ2l2ZW4gcG9pbnRlciBpcyByZWdp
c3RlcmVkIGluIHRoaXMgdGFibGUuCisgICAgICAgIEN1cnJlbnRseSwgYXMgYSB0ZXN0LCB3ZSBh
cmUgdmVyaWZ5aW5nIHRoYXQgaG9zdC1mdW5jdGlvbiBpcyByZWdpc3RlcmVkIGluIHRoaXMgdGFi
bGUgd2hlbiBjcmVhdGluZyBOYXRpdmVFeGVjdXRhYmxlIGluIGRlYnVnIGJ1aWxkLgorCisgICAg
ICAgICogQ01ha2VMaXN0cy50eHQ6CisgICAgICAgICogSmF2YVNjcmlwdENvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBTb3VyY2VzLnR4dDoKKyAgICAgICAgKiBhc3Nl
bWJsZXIvSklUT3BlcmF0aW9uTGlzdC5jcHA6IEFkZGVkLgorICAgICAgICAoSlNDOjpKSVRPcGVy
YXRpb25MaXN0Ojppbml0aWFsaXplKToKKyAgICAgICAgKEpTQzo6YWRkUG9pbnRlcnMpOgorICAg
ICAgICAoSlNDOjpKSVRPcGVyYXRpb25MaXN0Ojpwb3B1bGF0ZVBvaW50ZXJzSW5KYXZhU2NyaXB0
Q29yZSk6CisgICAgICAgIChKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6OnBvcHVsYXRlUG9pbnRlcnNJ
bkVtYmVkZGVyMSk6CisgICAgICAgIChKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6OnBvcHVsYXRlUG9p
bnRlcnNJbkVtYmVkZGVyMik6CisgICAgICAgICogYXNzZW1ibGVyL0pJVE9wZXJhdGlvbkxpc3Qu
aDogQWRkZWQuCisgICAgICAgIChKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6OmNvbnRhaW5zIGNvbnN0
KToKKyAgICAgICAgKEpTQzo6SklUT3BlcmF0aW9uTGlzdDo6YXNzZXJ0SXNIb3N0RnVuY3Rpb24p
OgorICAgICAgICAoSlNDOjpKSVRPcGVyYXRpb25MaXN0Ojphc3NlcnRJc0pJVE9wZXJhdGlvbik6
CisgICAgICAgIChKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6Omluc3RhbmNlKToKKyAgICAgICAgKiBh
c3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJBUk02NC5jcHA6CisgICAgICAgICogYXNzZW1ibGVyL01h
Y3JvQXNzZW1ibGVyQVJNdjcuY3BwOgorICAgICAgICAqIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxl
ck1JUFMuY3BwOgorICAgICAgICAqIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclg4NkNvbW1vbi5j
cHA6CisgICAgICAgICoganNjLmNwcDoKKyAgICAgICAgKGpzY21haW4pOgorICAgICAgICAqIHJ1
bnRpbWUvSW5pdGlhbGl6ZVRocmVhZGluZy5jcHA6CisgICAgICAgIChKU0M6OmluaXRpYWxpemUp
OgorICAgICAgICAqIHJ1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b3R5cGVGdW5j
dGlvbnMuaDoKKyAgICAgICAgKEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jU2V0
KToKKyAgICAgICAgKEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jQ29weVdpdGhp
bik6CisgICAgICAgIChKU0M6OmdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY0luY2x1ZGVz
KToKKyAgICAgICAgKEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jSW5kZXhPZik6
CisgICAgICAgIChKU0M6OmdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY0pvaW4pOgorICAg
ICAgICAoSlNDOjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNMYXN0SW5kZXhPZik6Cisg
ICAgICAgIChKU0M6OmdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvR2V0dGVyRnVuY0J1ZmZlcik6
CisgICAgICAgIChKU0M6OmdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvR2V0dGVyRnVuY0xlbmd0
aCk6CisgICAgICAgIChKU0M6OmdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvR2V0dGVyRnVuY0J5
dGVMZW5ndGgpOgorICAgICAgICAoSlNDOjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0dldHRl
ckZ1bmNCeXRlT2Zmc2V0KToKKyAgICAgICAgKEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJv
dG9GdW5jUmV2ZXJzZSk6CisgICAgICAgIChKU0M6OmdlbmVyaWNUeXBlZEFycmF5Vmlld1ByaXZh
dGVGdW5jU29ydCk6CisgICAgICAgIChKU0M6OmdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVu
Y1NsaWNlKToKKyAgICAgICAgKEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJpdmF0ZUZ1bmNT
dWJhcnJheUNyZWF0ZSk6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTik6
IERlbGV0ZWQuCisgICAgICAgICogcnVudGltZS9WTS5jcHA6CisgICAgICAgIChKU0M6OlZNOjpn
ZXRIb3N0RnVuY3Rpb24pOgorCiAyMDIwLTEwLTAyICBBZHJpYW4gUGVyZXogZGUgQ2FzdHJvICA8
YXBlcmV6QGlnYWxpYS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZC4gW0dUS10gQWRkIG1pc3Np
bmcgbG9jYWxlLmggaGVhZGVyIG5lZWRlZCBmb3Igc2V0bG9jYWxlKCkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XVEYvQ2hhbmdlTG9nIGIvU291cmNlL1dURi9DaGFuZ2VMb2cKaW5kZXggYjc3MDZmM2Ri
Yjk0MmU5MGNjMDBlZDk4ZDdmMjk0NzE4YjdhNmI0Zi4uZjFjMjFhMDFmYmM1NDQ5MjBlOWI0OTM5
M2I0NzM2YmFkZGMzY2UwYSAxMDA2NDQKLS0tIGEvU291cmNlL1dURi9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dURi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAyMC0xMC0wMiAgWXVzdWtl
IFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgorCisgICAgICAgIFtKU0NdIEludHJvZHVjZSBK
SVRPcGVyYXRpb25MaXN0IHRvIHZhbGlkYXRlIEpJVC1jYWdlZCBwb2ludGVycworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE3MjYxCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3dGYvUGxhdGZvcm1DYWxs
aW5nQ29udmVudGlvbnMuaDoKKyAgICAgICAgKiB3dGYvUGxhdGZvcm1FbmFibGUuaDoKKwogMjAy
MC0xMC0wMiAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgogCiAg
ICAgICAgIENvcHkgaG9zdCBmcm9tIGJhc2UgZmlsZSBVUkwKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA2NzQzNzEw
ODVhYmRkZDg4MmQ3OWNkYjQ0MTgwZjEyY2Y1ODg5YjQ2Li43ZDYwNTY0YTUxM2YwN2VjODRiMDJk
OTM3OWYzY2EzNGI3ODdiMzJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMjAtMTAt
MDIgIFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFwcGxlLmNvbT4KKworICAgICAgICBbSlNDXSBJ
bnRyb2R1Y2UgSklUT3BlcmF0aW9uTGlzdCB0byB2YWxpZGF0ZSBKSVQtY2FnZWQgcG9pbnRlcnMK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNzI2MQor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogSGVhZGVy
cy5jbWFrZToKKyAgICAgICAgKiBTb3VyY2VzLnR4dDoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogYmluZGluZ3MvanMvSlNET01CdWlsdGlu
Q29uc3RydWN0b3IuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUNvbnN0cnVjdG9yLmg6
CisgICAgICAgICogYmluZGluZ3MvanMvSlNET01MZWdhY3lGYWN0b3J5RnVuY3Rpb24uaDoKKyAg
ICAgICAgKiBiaW5kaW5ncy9qcy9TY3JpcHRDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlNjcmlwdENvbnRyb2xsZXI6OmluaXRpYWxpemVNYWluVGhyZWFkKToKKyAgICAgICAgKiBi
aW5kaW5ncy9qcy9XZWJDb3JlSklUT3BlcmF0aW9ucy5jcHA6IENvcGllZCBmcm9tIFNvdXJjZS9X
ZWJLaXQvU2hhcmVkL1dlYktpdDJJbml0aWFsaXplLmNwcC4KKyAgICAgICAgKFdlYkNvcmU6OnBv
cHVsYXRlSklUT3BlcmF0aW9ucyk6CisgICAgICAgICogYmluZGluZ3MvanMvV2ViQ29yZUpJVE9w
ZXJhdGlvbnMuaDogQ29waWVkIGZyb20gU291cmNlL1dlYktpdC9TaGFyZWQvV2ViS2l0MkluaXRp
YWxpemUuY3BwLgorICAgICAgICAqIGJyaWRnZS9vYmpjL1dlYlNjcmlwdE9iamVjdC5tbToKKyAg
ICAgICAgKCtbV2ViU2NyaXB0T2JqZWN0IGluaXRpYWxpemVdKToKKyAgICAgICAgKiBkb21qaXQv
SlNEb2N1bWVudERPTUpJVC5jcHA6CisgICAgICAgICogcGxhdGZvcm0vY29jb2EvU2hhcmVkQnVm
ZmVyQ29jb2EubW06CisgICAgICAgICgrW1dlYkNvcmVTaGFyZWRCdWZmZXJEYXRhIGluaXRpYWxp
emVdKToKKyAgICAgICAgKiBwbGF0Zm9ybS9pb3Mvd2FrL1dlYkNvcmVUaHJlYWQubW06CisgICAg
ICAgIChSdW5XZWJUaHJlYWQpOgorCiAyMDIwLTEwLTAyICBUcnVpdHQgU2F2ZWxsICA8dHNhdmVs
bEBhcHBsZS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcmV2ZXJ0aW5nIHIyNjc4ODcuCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdl
TG9nCmluZGV4IDAwNTRkZmQ3ODgxOWY2ZDYzZTkwODllMjcyOTk5NTBiMDdjN2E3ODQuLjdlY2Fh
Mzc3ODRjZDRjNDkwZDJkYjg0MmU4M2YwZWE1OWFkZTEwNTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MjIgQEAKKzIwMjAtMTAtMDIgIFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFwcGxlLmNvbT4KKwor
ICAgICAgICBbSlNDXSBJbnRyb2R1Y2UgSklUT3BlcmF0aW9uTGlzdCB0byB2YWxpZGF0ZSBKSVQt
Y2FnZWQgcG9pbnRlcnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIxNzI2MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgICogU2hhcmVkL0FQSS9jL1dLU3RyaW5nLmNwcDoKKyAgICAgICAgKFdLU3RyaW5nQ29w
eUpTU3RyaW5nKToKKyAgICAgICAgKiBTaGFyZWQvQ29jb2EvV2ViS2l0MkluaXRpYWxpemVDb2Nv
YS5tbToKKyAgICAgICAgKFdlYktpdDo6cnVuSW5pdGlhbGl6YXRpb25Db2RlKToKKyAgICAgICAg
KiBTaGFyZWQvV2ViS2l0MkluaXRpYWxpemUuY3BwOgorICAgICAgICAoV2ViS2l0OjpJbml0aWFs
aXplV2ViS2l0Mik6CisgICAgICAgICogU2hhcmVkL1dlYktpdEpJVE9wZXJhdGlvbnMuY3BwOiBD
b3BpZWQgZnJvbSBTb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJLaXQySW5pdGlhbGl6ZS5jcHAuCisg
ICAgICAgIChXZWJLaXQ6OnBvcHVsYXRlSklUT3BlcmF0aW9ucyk6CisgICAgICAgICogU2hhcmVk
L1dlYktpdEpJVE9wZXJhdGlvbnMuaDogQ29waWVkIGZyb20gU291cmNlL1dlYktpdC9TaGFyZWQv
V2ViS2l0MkluaXRpYWxpemUuY3BwLgorICAgICAgICAqIFNvdXJjZXMudHh0OgorICAgICAgICAq
IFdlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorCiAyMDIwLTEwLTAyICBLYXRlIENo
ZW5leSAgPGthdGhlcmluZV9jaGVuZXlAYXBwbGUuY29tPgogCiAgICAgICAgIE11bHRpcGxlIGNh
bGxzIHRvIHN1c3BlbmQgbWVkaWEgcGxheWJhY2sgZm9yIHRoZSBzYW1lIHBhZ2UgbWF5IHJlc3Vs
dCBpbiByZXN1bWluZyBtZWRpYSBwbGF5YmFjayB0b28gc29vbgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hh
bmdlTG9nCmluZGV4IGYwN2IwNGE3MDIyMDVkMGZiNThkZmE3MGY4ZGE2YzQyNzkyOGIyMmUuLjZk
ZTMzOTRmNTg2ZTRmYWQ3OGEwYTVmMjQzZWYxMmJkMzEyZGFiMmMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21h
Yy9DaGFuZ2VMb2cKQEAgLTEsMyArMSw1MCBAQAorMjAyMC0xMC0wMiAgWXVzdWtlIFN1enVraSAg
PHlzdXp1a2lAYXBwbGUuY29tPgorCisgICAgICAgIFtKU0NdIEludHJvZHVjZSBKSVRPcGVyYXRp
b25MaXN0IHRvIHZhbGlkYXRlIEpJVC1jYWdlZCBwb2ludGVycworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE3MjYxCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBIaXN0b3J5L1dlYkJhY2tGb3J3YXJkTGlz
dC5tbToKKyAgICAgICAgKCtbV2ViQmFja0ZvcndhcmRMaXN0IGluaXRpYWxpemVdKToKKyAgICAg
ICAgKiBIaXN0b3J5L1dlYkhpc3RvcnlJdGVtLm1tOgorICAgICAgICAoK1tXZWJIaXN0b3J5SXRl
bSBpbml0aWFsaXplXSk6CisgICAgICAgICogTWlzYy9XZWJDYWNoZS5tbToKKyAgICAgICAgKCtb
V2ViQ2FjaGUgaW5pdGlhbGl6ZV0pOgorICAgICAgICAqIE1pc2MvV2ViRWxlbWVudERpY3Rpb25h
cnkubW06CisgICAgICAgICgrW1dlYkVsZW1lbnREaWN0aW9uYXJ5IGluaXRpYWxpemVdKToKKyAg
ICAgICAgKiBNaXNjL1dlYkljb25EYXRhYmFzZS5tbToKKyAgICAgICAgKiBNaXNjL1dlYlN0cmlu
Z1RydW5jYXRvci5tbToKKyAgICAgICAgKCtbV2ViU3RyaW5nVHJ1bmNhdG9yIGluaXRpYWxpemVd
KToKKyAgICAgICAgKiBQbHVnaW5zL0hvc3RlZC9XZWJIb3N0ZWROZXRzY2FwZVBsdWdpblZpZXcu
bW06CisgICAgICAgICgrW1dlYkhvc3RlZE5ldHNjYXBlUGx1Z2luVmlldyBpbml0aWFsaXplXSk6
CisgICAgICAgICogUGx1Z2lucy9XZWJCYXNlTmV0c2NhcGVQbHVnaW5WaWV3Lm1tOgorICAgICAg
ICAqIFBsdWdpbnMvV2ViQmFzZVBsdWdpblBhY2thZ2UubW06CisgICAgICAgICgrW1dlYkJhc2VQ
bHVnaW5QYWNrYWdlIGluaXRpYWxpemVdKToKKyAgICAgICAgKiBQbHVnaW5zL1dlYk5ldHNjYXBl
UGx1Z2luVmlldy5tbToKKyAgICAgICAgKCtbV2ViTmV0c2NhcGVQbHVnaW5WaWV3IGluaXRpYWxp
emVdKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQubW06CisgICAg
ICAgICgrW1dlYlVuZG9TdGVwIGluaXRpYWxpemVdKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9y
dC9XZWJGcmFtZUxvYWRlckNsaWVudC5tbToKKyAgICAgICAgKCtbV2ViRnJhbWVQb2xpY3lMaXN0
ZW5lciBpbml0aWFsaXplXSk6CisgICAgICAgICogV2ViVmlldy9XZWJBcmNoaXZlLm1tOgorICAg
ICAgICAoK1tXZWJBcmNoaXZlUHJpdmF0ZSBpbml0aWFsaXplXSk6CisgICAgICAgICogV2ViVmll
dy9XZWJEYXRhU291cmNlLm1tOgorICAgICAgICAoK1tXZWJEYXRhU291cmNlIGluaXRpYWxpemVd
KToKKyAgICAgICAgKiBXZWJWaWV3L1dlYkhUTUxWaWV3Lm1tOgorICAgICAgICAoK1tXZWJIVE1M
Vmlld1ByaXZhdGUgaW5pdGlhbGl6ZV0pOgorICAgICAgICAoK1tXZWJIVE1MVmlldyBpbml0aWFs
aXplXSk6CisgICAgICAgICogV2ViVmlldy9XZWJQcmVmZXJlbmNlcy5tbToKKyAgICAgICAgKCtb
V2ViUHJlZmVyZW5jZXMgaW5pdGlhbGl6ZV0pOgorICAgICAgICAqIFdlYlZpZXcvV2ViUmVzb3Vy
Y2UubW06CisgICAgICAgICgrW1dlYlJlc291cmNlUHJpdmF0ZSBpbml0aWFsaXplXSk6CisgICAg
ICAgICogV2ViVmlldy9XZWJUZXh0SXRlcmF0b3IubW06CisgICAgICAgICgrW1dlYlRleHRJdGVy
YXRvclByaXZhdGUgaW5pdGlhbGl6ZV0pOgorICAgICAgICAqIFdlYlZpZXcvV2ViVmlldy5tbToK
KyAgICAgICAgKCtbV2ViVmlldyBpbml0aWFsaXplXSk6CisgICAgICAgICogV2ViVmlldy9XZWJW
aWV3RGF0YS5tbToKKyAgICAgICAgKCtbV2ViVmlld1ByaXZhdGUgaW5pdGlhbGl6ZV0pOgorCiAy
MDIwLTEwLTAxICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgQWRk
IGJhc2ljIGluZnJhc3RydWN0dXJlIGZvciBBdWRpb1dvcmtsZXQKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvd2luL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL0No
YW5nZUxvZwppbmRleCAwNGQ0YTM5OGIzMjdlNGQ4ZmYxYzkxOTk3NWIzMmRmNTQ2ZDhjYjNlLi45
ZjBkOWQ3MDY0YzBhMzExZGIzMTE0MTI5YWM0NjNiNDY0ZjNlZTM1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0TGVnYWN5L3dpbi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS93
aW4vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjAtMTAtMDIgIFl1c3VrZSBTdXp1a2kg
IDx5c3V6dWtpQGFwcGxlLmNvbT4KKworICAgICAgICBbSlNDXSBJbnRyb2R1Y2UgSklUT3BlcmF0
aW9uTGlzdCB0byB2YWxpZGF0ZSBKSVQtY2FnZWQgcG9pbnRlcnMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNzI2MQorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogV2ViS2l0Q2xhc3NGYWN0b3J5LmNwcDoK
KyAgICAgICAgKFdlYktpdENsYXNzRmFjdG9yeTo6V2ViS2l0Q2xhc3NGYWN0b3J5KToKKyAgICAg
ICAgKiBXZWJWaWV3LmNwcDoKKyAgICAgICAgKFdlYlZpZXc6OldlYlZpZXcpOgorCiAyMDIwLTEw
LTAxICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIGJhc2lj
IGluZnJhc3RydWN0dXJlIGZvciBBdWRpb1dvcmtsZXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DTWFrZUxp
c3RzLnR4dAppbmRleCA4MDBkZWY0YWE5ZWMyNjk3YTUwNDFiODBkZjA4ZTcxMDg2MjM1MjNiLi41
YjRjNTg0OGM1OGNhNjZiYzY1NmVkYWE4ZmYzYzljZmY3ZWNmMDFmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0NNYWtlTGlzdHMudHh0CkBAIC00NzQsNiArNDc0LDcgQEAgc2V0KEphdmFTY3JpcHRDb3Jl
X1BSSVZBVEVfRlJBTUVXT1JLX0hFQURFUlMKICAgICBhc3NlbWJsZXIvQ1BVLmgKICAgICBhc3Nl
bWJsZXIvQ29kZUxvY2F0aW9uLmgKICAgICBhc3NlbWJsZXIvRmFzdEpJVFBlcm1pc3Npb25zLmgK
KyAgICBhc3NlbWJsZXIvSklUT3BlcmF0aW9uTGlzdC5oCiAgICAgYXNzZW1ibGVyL0xpbmtCdWZm
ZXIuaAogICAgIGFzc2VtYmxlci9NSVBTQXNzZW1ibGVyLmgKICAgICBhc3NlbWJsZXIvTUlQU1Jl
Z2lzdGVycy5oCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZh
U2NyaXB0Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDM3ZmViZmY2NWFiMzZi
MWUwNWYzNzhhOWY0NDU4NDE5ZThlMDQ5NmQuLjc4OTlkMjA5Y2I3NzFmMTE0NjVjNmQ0NDA2MGVj
ZGI0NmFkNTg2ZmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9KYXZhU2NyaXB0Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0xODgxLDYgKzE4
ODEsNyBAQAogCQlFM0M2OTRCMzIzMDI2ODc3MDA2RkJFNDIgLyogV2FzbU9TUkVudHJ5RGF0YS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTNDNjk0QjEy
MzAyNjg3MzAwNkZCRTQyIC8qIFdhc21PU1JFbnRyeURhdGEuaCAqLzsgfTsKIAkJRTNDNzlDQUIx
REI5QTREQzAwRDFFQ0E0IC8qIERPTUpJVEVmZmVjdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTNDNzlDQUExREI5QTRENjAwRDFFQ0E0IC8qIERPTUpJ
VEVmZmVjdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CiAJCUUzQzhFRDQzMjNBMURCQ0IwMDEzMTk1OCAvKiBJc29JbmxpbmVkSGVhcENlbGxUeXBlLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFM0M4RUQ0MjIz
QTFEQkM1MDAxMzE5NTggLyogSXNvSW5saW5lZEhlYXBDZWxsVHlwZS5oICovOyB9OworCQlFM0NB
M0E0RTI1MjdBQjJGMDA0ODAyQkYgLyogSklUT3BlcmF0aW9uTGlzdC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTNDQTNBNEMyNTI3QUIyRjAwNDgwMkJG
IC8qIEpJVE9wZXJhdGlvbkxpc3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OwogCQlFM0QyMzlDOTFCODI5QzFDMDBCQkVGNjcgLyogSlNNb2R1bGVFbnZp
cm9ubWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
RTNEMjM5QzcxQjgyOUMxQzAwQkJFRjY3IC8qIEpTTW9kdWxlRW52aXJvbm1lbnQuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlFM0QzNTE1RjI0MUI4
OUQ3MDA4REMxNkUgLyogTWFya2VkSlNWYWx1ZVJlZkFycmF5LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFM0QzNTE1RDI0MUI4OUNFMDA4REMxNkUgLyog
TWFya2VkSlNWYWx1ZVJlZkFycmF5LmggKi87IH07CiAJCUUzRDg3Nzc0MUU2NUMwQTAwMEJFOTQ1
QSAvKiBCeXRlY29kZUR1bXBlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRTNEODc3NzIxRTY1QzA4OTAwQkU5NDVBIC8qIEJ5dGVjb2RlRHVtcGVyLmgg
Ki87IH07CkBAIC01MTA3LDYgKzUxMDgsOCBAQAogCQlFM0M3OUNBQTFEQjlBNEQ2MDBEMUVDQTQg
LyogRE9NSklURWZmZWN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERPTUpJ
VEVmZmVjdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFM0M4RUQ0MTIzQTFEQkM0
MDAxMzE5NTggLyogSXNvSGVhcENlbGxUeXBlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IElzb0hlYXBDZWxsVHlwZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCUUzQzhFRDQyMjNBMURCQzUwMDEzMTk1OCAvKiBJc29JbmxpbmVkSGVhcENlbGxUeXBl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElzb0lubGluZWRIZWFwQ2VsbFR5
cGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTNDQTNBNEIyNTI3QUIyRTAwNDgw
MkJGIC8qIEpJVE9wZXJhdGlvbkxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSklUT3BlcmF0aW9uTGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUUzQ0EzQTRDMjUyN0FCMkYwMDQ4MDJCRiAvKiBKSVRPcGVyYXRpb25MaXN0LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpJVE9wZXJhdGlvbkxpc3QuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTNEMjM5QzYxQjgyOUMxQzAwQkJFRjY3IC8qIEpTTW9kdWxl
RW52aXJvbm1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNN
b2R1bGVFbnZpcm9ubWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUzRDIz
OUM3MUI4MjlDMUMwMEJCRUY2NyAvKiBKU01vZHVsZUVudmlyb25tZW50LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTTW9kdWxlRW52aXJvbm1lbnQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJRTNEMjY0MjYxRDM4QzA0MjAwMEJFMTc0IC8qIEJ5dGVjb2RlR2Vu
ZXJhdG9yaWZpY2F0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEJ5dGVjb2RlR2VuZXJhdG9yaWZpY2F0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKQEAgLTgyODQsNiArODI4Nyw4IEBACiAJCQkJMEYzMEQ3QkYxRDk1RDYyRjAwNTMwODlEIC8q
IENQVS5oICovLAogCQkJCTBGMzczMDhFMUMwQ0Q2ODUwMDA1MkJGQSAvKiBEaXNhbGxvd01hY3Jv
U2NyYXRjaFJlZ2lzdGVyVXNhZ2UuaCAqLywKIAkJCQk1MjY3Q0Y4MTI0OTMxNkFEMDAyMkJGNkQg
LyogRmFzdEpJVFBlcm1pc3Npb25zLmggKi8sCisJCQkJRTNDQTNBNEIyNTI3QUIyRTAwNDgwMkJG
IC8qIEpJVE9wZXJhdGlvbkxpc3QuY3BwICovLAorCQkJCUUzQ0EzQTRDMjUyN0FCMkYwMDQ4MDJC
RiAvKiBKSVRPcGVyYXRpb25MaXN0LmggKi8sCiAJCQkJMEZGNDI3NTYxNTkxNEEyMDAwNENCOUZG
IC8qIExpbmtCdWZmZXIuY3BwICovLAogCQkJCTg2RDNCM0MxMTAxNTlEN0YwMDI4NjVFNyAvKiBM
aW5rQnVmZmVyLmggKi8sCiAJCQkJMEZFQjNFQ0UxNjIzN0Y2NzAwQUI2N0FEIC8qIE1hY3JvQXNz
ZW1ibGVyLmNwcCAqLywKQEAgLTk5MDUsNiArOTkxMCw3IEBACiAJCQkJNzlBRjBCRTQxRDNFRkQ0
QzAwRTk1RkE1IC8qIEpJVE1hdGhJQ0lubGluZVJlc3VsdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
RkUxODdBMDIxQkZCRTU2MTAwMzhCQkNBIC8qIEpJVE11bEdlbmVyYXRvci5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJRkU5OUIyNDkxQzI0QzNEMzAwQzgyMTU5IC8qIEpJVE5lZ0dlbmVyYXRvci5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJRTNDQTNBNEUyNTI3QUIyRjAwNDgwMkJGIC8qIEpJVE9wZXJhdGlv
bkxpc3QuaCBpbiBIZWFkZXJzICovLAogCQkJCTBGMjRFNTREMTdFRTI3NDkwMEFCQjIxNyAvKiBK
SVRPcGVyYXRpb25zLmggaW4gSGVhZGVycyAqLywKIAkJCQlGRTNBMDZDMDFDMTEwNDFBMDAzOTBG
REQgLyogSklUUmlnaHRTaGlmdEdlbmVyYXRvci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEY3NjZE
MzExNUFBODExMjAwOEYzNjNFIC8qIEpJVFN0dWJSb3V0aW5lLmggaW4gSGVhZGVycyAqLywKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9Tb3VyY2VzLnR4dCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9Tb3VyY2VzLnR4dAppbmRleCBjZmU0ZWVmNzVkZTY1NzQxMDNkZTUxMzEwMzIy
Yjc4NzBjMTY3ZDliLi43MTE0MjE0ZGFkNGVmMzE3MzBiZmVhODRmMTZjOWNiYmMxZDljYzAwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvU291cmNlcy50eHQKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL1NvdXJjZXMudHh0CkBAIC00Niw2ICs0Niw3IEBAIEFQSS9PcGFxdWVK
U1N0cmluZy5jcHAKIGFzc2VtYmxlci9BYnN0cmFjdE1hY3JvQXNzZW1ibGVyLmNwcAogYXNzZW1i
bGVyL0Fzc2VtYmxlckJ1ZmZlci5jcHAKIGFzc2VtYmxlci9DUFUuY3BwCithc3NlbWJsZXIvSklU
T3BlcmF0aW9uTGlzdC5jcHAKIGFzc2VtYmxlci9MaW5rQnVmZmVyLmNwcAogYXNzZW1ibGVyL01h
Y3JvQXNzZW1ibGVyLmNwcAogYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyQVJNNjQuY3BwCmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL0pJVE9wZXJhdGlvbkxpc3Qu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9KSVRPcGVyYXRpb25MaXN0LmNw
cApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5lODkzY2E2ODk2MzJjODRhNTZmMzJiMWVlNzYwNmE5OTEwNDVjYjE0Ci0t
LSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9KSVRPcGVy
YXRpb25MaXN0LmNwcApAQCAtMCwwICsxLDEwMiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAy
MCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8g
RVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
CisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisg
KiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJKSVRP
cGVyYXRpb25MaXN0LmgiCisKK25hbWVzcGFjZSBKU0MgeworCitMYXp5TmV2ZXJEZXN0cm95ZWQ8
SklUT3BlcmF0aW9uTGlzdD4gaml0T3BlcmF0aW9uTGlzdDsKKworI2lmIEVOQUJMRShKSVRfT1BF
UkFUSU9OX1ZBTElEQVRJT04pCitleHRlcm4gY29uc3QgdWludHB0cl90IHN0YXJ0T2ZIb3N0RnVu
Y3Rpb25zSW5KU0MgX19hc20oInNlY3Rpb24kc3RhcnQkX19EQVRBX0NPTlNUJF9fanNjX2hvc3Qi
KTsKK2V4dGVybiBjb25zdCB1aW50cHRyX3QgZW5kT2ZIb3N0RnVuY3Rpb25zSW5KU0MgX19hc20o
InNlY3Rpb24kZW5kJF9fREFUQV9DT05TVCRfX2pzY19ob3N0Iik7CitleHRlcm4gY29uc3QgdWlu
dHB0cl90IHN0YXJ0T2ZKSVRPcGVyYXRpb25zSW5KU0MgX19hc20oInNlY3Rpb24kc3RhcnQkX19E
QVRBX0NPTlNUJF9fanNjX29wcyIpOworZXh0ZXJuIGNvbnN0IHVpbnRwdHJfdCBlbmRPZkpJVE9w
ZXJhdGlvbnNJbkpTQyBfX2FzbSgic2VjdGlvbiRlbmQkX19EQVRBX0NPTlNUJF9fanNjX29wcyIp
OworI2VuZGlmCisKK3ZvaWQgSklUT3BlcmF0aW9uTGlzdDo6aW5pdGlhbGl6ZSgpCit7CisgICAg
aml0T3BlcmF0aW9uTGlzdC5jb25zdHJ1Y3QoKTsKK30KKworI2lmIEVOQUJMRShKSVRfT1BFUkFU
SU9OX1ZBTElEQVRJT04pCitzdGF0aWMgQUxXQVlTX0lOTElORSB2b2lkIGFkZFBvaW50ZXJzKEhh
c2hNYXA8dm9pZCosIHZvaWQqPiYgbWFwLCBjb25zdCB1aW50cHRyX3QqIGJlZ2luSG9zdCwgY29u
c3QgdWludHB0cl90KiBlbmRIb3N0LCBjb25zdCB1aW50cHRyX3QqIGJlZ2luT3BlcmF0aW9ucywg
Y29uc3QgdWludHB0cl90KiBlbmRPcGVyYXRpb25zKQoreworICAgIGZvciAoY29uc3QgdWludHB0
cl90KiBjdXJyZW50ID0gYmVnaW5Ib3N0OyBjdXJyZW50ICE9IGVuZEhvc3Q7ICsrY3VycmVudCkg
eworICAgICAgICB2b2lkKiBjb2RlUHRyID0gcmVtb3ZlQ29kZVB0clRhZyhiaXR3aXNlX2Nhc3Q8
dm9pZCo+KCpjdXJyZW50KSk7CisgICAgICAgIGF1dG8gcmVzdWx0ID0gbWFwLmFkZChjb2RlUHRy
LCB0YWdDb2RlUHRyKGNvZGVQdHIsIEpTRW50cnlQdHJUYWcpKTsKKyAgICAgICAgQVNTRVJUKHJl
c3VsdC5pc05ld0VudHJ5KTsKKyAgICB9CisgICAgZm9yIChjb25zdCB1aW50cHRyX3QqIGN1cnJl
bnQgPSBiZWdpbk9wZXJhdGlvbnM7IGN1cnJlbnQgIT0gZW5kT3BlcmF0aW9uczsgKytjdXJyZW50
KSB7CisgICAgICAgIHZvaWQqIGNvZGVQdHIgPSByZW1vdmVDb2RlUHRyVGFnKGJpdHdpc2VfY2Fz
dDx2b2lkKj4oKmN1cnJlbnQpKTsKKyAgICAgICAgYXV0byByZXN1bHQgPSBtYXAuYWRkKGNvZGVQ
dHIsIHRhZ0NvZGVQdHIoY29kZVB0ciwgT3BlcmF0aW9uUHRyVGFnKSk7CisgICAgICAgIEFTU0VS
VChyZXN1bHQuaXNOZXdFbnRyeSk7CisgICAgfQorfQorI2VuZGlmCisKK3ZvaWQgSklUT3BlcmF0
aW9uTGlzdDo6cG9wdWxhdGVQb2ludGVyc0luSmF2YVNjcmlwdENvcmUoKQoreworI2lmIEVOQUJM
RShKSVRfT1BFUkFUSU9OX1ZBTElEQVRJT04pCisgICAgc3RkOjpvbmNlX2ZsYWcgb25jZUtleTsK
KyAgICBzdGQ6OmNhbGxfb25jZShvbmNlS2V5LCBbXSB7CisgICAgICAgIGlmIChPcHRpb25zOjp1
c2VKSVQoKSkKKyAgICAgICAgICAgIGFkZFBvaW50ZXJzKGppdE9wZXJhdGlvbkxpc3QtPm1fdmFs
aWRhdGVkT3BlcmF0aW9ucywgJnN0YXJ0T2ZIb3N0RnVuY3Rpb25zSW5KU0MsICZlbmRPZkhvc3RG
dW5jdGlvbnNJbkpTQywgJnN0YXJ0T2ZKSVRPcGVyYXRpb25zSW5KU0MsICZlbmRPZkpJVE9wZXJh
dGlvbnNJbkpTQyk7CisgICAgfSk7CisjZW5kaWYKK30KKwordm9pZCBKSVRPcGVyYXRpb25MaXN0
Ojpwb3B1bGF0ZVBvaW50ZXJzSW5FbWJlZGRlcjEoY29uc3QgdWludHB0cl90KiBiZWdpbkhvc3Qs
IGNvbnN0IHVpbnRwdHJfdCogZW5kSG9zdCwgY29uc3QgdWludHB0cl90KiBiZWdpbk9wZXJhdGlv
bnMsIGNvbnN0IHVpbnRwdHJfdCogZW5kT3BlcmF0aW9ucykKK3sKKyAgICBVTlVTRURfUEFSQU0o
YmVnaW5Ib3N0KTsKKyAgICBVTlVTRURfUEFSQU0oZW5kSG9zdCk7CisgICAgVU5VU0VEX1BBUkFN
KGJlZ2luT3BlcmF0aW9ucyk7CisgICAgVU5VU0VEX1BBUkFNKGVuZE9wZXJhdGlvbnMpOworI2lm
IEVOQUJMRShKSVRfT1BFUkFUSU9OX1ZBTElEQVRJT04pCisgICAgc3RkOjpvbmNlX2ZsYWcgb25j
ZUtleTsKKyAgICBzdGQ6OmNhbGxfb25jZShvbmNlS2V5LCBbPV0geworICAgICAgICBpZiAoT3B0
aW9uczo6dXNlSklUKCkpCisgICAgICAgICAgICBhZGRQb2ludGVycyhqaXRPcGVyYXRpb25MaXN0
LT5tX3ZhbGlkYXRlZE9wZXJhdGlvbnMsIGJlZ2luSG9zdCwgZW5kSG9zdCwgYmVnaW5PcGVyYXRp
b25zLCBlbmRPcGVyYXRpb25zKTsKKyAgICB9KTsKKyNlbmRpZgorfQorCit2b2lkIEpJVE9wZXJh
dGlvbkxpc3Q6OnBvcHVsYXRlUG9pbnRlcnNJbkVtYmVkZGVyMihjb25zdCB1aW50cHRyX3QqIGJl
Z2luSG9zdCwgY29uc3QgdWludHB0cl90KiBlbmRIb3N0LCBjb25zdCB1aW50cHRyX3QqIGJlZ2lu
T3BlcmF0aW9ucywgY29uc3QgdWludHB0cl90KiBlbmRPcGVyYXRpb25zKQoreworICAgIFVOVVNF
RF9QQVJBTShiZWdpbkhvc3QpOworICAgIFVOVVNFRF9QQVJBTShlbmRIb3N0KTsKKyAgICBVTlVT
RURfUEFSQU0oYmVnaW5PcGVyYXRpb25zKTsKKyAgICBVTlVTRURfUEFSQU0oZW5kT3BlcmF0aW9u
cyk7CisjaWYgRU5BQkxFKEpJVF9PUEVSQVRJT05fVkFMSURBVElPTikKKyAgICBzdGQ6Om9uY2Vf
ZmxhZyBvbmNlS2V5OworICAgIHN0ZDo6Y2FsbF9vbmNlKG9uY2VLZXksIFs9XSB7CisgICAgICAg
IGlmIChPcHRpb25zOjp1c2VKSVQoKSkKKyAgICAgICAgICAgIGFkZFBvaW50ZXJzKGppdE9wZXJh
dGlvbkxpc3QtPm1fdmFsaWRhdGVkT3BlcmF0aW9ucywgYmVnaW5Ib3N0LCBlbmRIb3N0LCBiZWdp
bk9wZXJhdGlvbnMsIGVuZE9wZXJhdGlvbnMpOworICAgIH0pOworI2VuZGlmCit9CisKK30gLy8g
bmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxl
ci9KSVRPcGVyYXRpb25MaXN0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL0pJ
VE9wZXJhdGlvbkxpc3QuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45OGY4MzRlM2JmYzEzMGY1NGM4MTc4ZDhlNDNk
ZGE0ZTg3M2Y5NGUyCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fz
c2VtYmxlci9KSVRPcGVyYXRpb25MaXN0LmgKQEAgLTAsMCArMSw4MSBAQAorLyoKKyAqIENvcHly
aWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBB
TkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisg
KiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVk
ZSAiSlNDUHRyVGFnLmgiCisjaW5jbHVkZSAiT3B0aW9ucy5oIgorI2luY2x1ZGUgPHd0Zi9IYXNo
TWFwLmg+CisjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CisKK25hbWVzcGFjZSBKU0Mg
eworCitjbGFzcyBKSVRPcGVyYXRpb25MaXN0IHsKK3B1YmxpYzoKKyAgICBzdGF0aWMgSklUT3Bl
cmF0aW9uTGlzdCYgaW5zdGFuY2UoKTsKKyAgICBzdGF0aWMgdm9pZCBpbml0aWFsaXplKCk7CisK
KyAgICB2b2lkKiBjb250YWlucyh2b2lkKiBwb2ludGVyKSBjb25zdAorICAgIHsKKyAgICAgICAg
aWYgY29uc3RleHByKEFTU0VSVF9FTkFCTEVEKQorICAgICAgICAgICAgcmV0dXJuIG1fdmFsaWRh
dGVkT3BlcmF0aW9ucy5nZXQocmVtb3ZlQ29kZVB0clRhZyhwb2ludGVyKSk7CisgICAgICAgIHJl
dHVybiBwb2ludGVyOworICAgIH0KKworICAgIHN0YXRpYyB2b2lkIHBvcHVsYXRlUG9pbnRlcnNJ
bkphdmFTY3JpcHRDb3JlKCk7CisKKyAgICBKU19FWFBPUlRfUFJJVkFURSBzdGF0aWMgdm9pZCBw
b3B1bGF0ZVBvaW50ZXJzSW5FbWJlZGRlcjEoY29uc3QgdWludHB0cl90KiBiZWdpbkhvc3QsIGNv
bnN0IHVpbnRwdHJfdCogZW5kSG9zdCwgY29uc3QgdWludHB0cl90KiBiZWdpbk9wZXJhdGlvbnMs
IGNvbnN0IHVpbnRwdHJfdCogZW5kT3BlcmF0aW9ucyk7CisgICAgSlNfRVhQT1JUX1BSSVZBVEUg
c3RhdGljIHZvaWQgcG9wdWxhdGVQb2ludGVyc0luRW1iZWRkZXIyKGNvbnN0IHVpbnRwdHJfdCog
YmVnaW5Ib3N0LCBjb25zdCB1aW50cHRyX3QqIGVuZEhvc3QsIGNvbnN0IHVpbnRwdHJfdCogYmVn
aW5PcGVyYXRpb25zLCBjb25zdCB1aW50cHRyX3QqIGVuZE9wZXJhdGlvbnMpOworCisgICAgLy8g
RklYTUU6IEN1cnJlbnRseSwgYXNzZXJ0SXNIb3N0RnVuY3Rpb24gYW5kIGFzc2VydElzSklUT3Bl
cmF0aW9uIGFyZSB0aGUgc2FtZS4KKyAgICAvLyBXZSB3aWxsIG1ha2UgdGhlbSB3b3JrIGluIGEg
c3Vic2VxdWVudCBwYXRjaC4KKyAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBzdGF0aWMgdm9pZCBh
c3NlcnRJc0hvc3RGdW5jdGlvbihUIGZ1bmN0aW9uKQorICAgIHsKKyAgICAgICAgVU5VU0VEX1BB
UkFNKGZ1bmN0aW9uKTsKKyNpZiBFTkFCTEUoSklUX09QRVJBVElPTl9WQUxJREFUSU9OKQorICAg
ICAgICBBU1NFUlQoZnVuY3Rpb24sICFPcHRpb25zOjp1c2VKSVQoKSB8fCBKSVRPcGVyYXRpb25M
aXN0OjppbnN0YW5jZSgpLmNvbnRhaW5zKGJpdHdpc2VfY2FzdDx2b2lkKj4oZnVuY3Rpb24pKSk7
CisjZW5kaWYKKyAgICB9CisKKyAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBzdGF0aWMgdm9pZCBh
c3NlcnRJc0pJVE9wZXJhdGlvbihUIGZ1bmN0aW9uKQorICAgIHsKKyAgICAgICAgVU5VU0VEX1BB
UkFNKGZ1bmN0aW9uKTsKKyNpZiBFTkFCTEUoSklUX09QRVJBVElPTl9WQUxJREFUSU9OKQorICAg
ICAgICBBU1NFUlQoIU9wdGlvbnM6OnVzZUpJVCgpIHx8IEpJVE9wZXJhdGlvbkxpc3Q6Omluc3Rh
bmNlKCkuY29udGFpbnMoYml0d2lzZV9jYXN0PHZvaWQqPihmdW5jdGlvbikpKTsKKyNlbmRpZgor
ICAgIH0KKworcHJpdmF0ZToKKyAgICBIYXNoTWFwPHZvaWQqLCB2b2lkKj4gbV92YWxpZGF0ZWRP
cGVyYXRpb25zOworfTsKKworZXh0ZXJuIExhenlOZXZlckRlc3Ryb3llZDxKSVRPcGVyYXRpb25M
aXN0PiBqaXRPcGVyYXRpb25MaXN0OworCitpbmxpbmUgSklUT3BlcmF0aW9uTGlzdCYgSklUT3Bl
cmF0aW9uTGlzdDo6aW5zdGFuY2UoKQoreworICAgIHJldHVybiBqaXRPcGVyYXRpb25MaXN0Lmdl
dCgpOworfQorCit9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJBUk02NC5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyQVJNNjQuY3BwCmluZGV4IDM2MjVhOGQz
Y2M2ZmFkNWQzNDAyN2JjYjNmNDgyYzdlNmVkNWNiZWUuLmYxYmFkNjY3YWU4NjM3MmZhYzdhZjIx
YzM2NjExMDQyYjE4YWIzZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3Nl
bWJsZXIvTWFjcm9Bc3NlbWJsZXJBUk02NC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTTY0LmNwcApAQCAtNDIsNyArNDIsNyBAQCBuYW1l
c3BhY2UgSlNDIHsKICNpZiBFTkFCTEUoTUFTTV9QUk9CRSkKIAogZXh0ZXJuICJDIiBKU0NfREVD
TEFSRV9KSVRfT1BFUkFUSU9OKGN0aU1hc21Qcm9iZVRyYW1wb2xpbmUsIHZvaWQsICgpKTsKLUpT
Q19BTk5PVEFURV9KSVRfT1BFUkFUSU9OKGN0aU1hc21Qcm9iZVRyYW1wb2xpbmUsIGN0aU1hc21Q
cm9iZVRyYW1wb2xpbmUpOworSlNDX0FOTk9UQVRFX0pJVF9PUEVSQVRJT04oY3RpTWFzbVByb2Jl
VHJhbXBvbGluZUlkLCBjdGlNYXNtUHJvYmVUcmFtcG9saW5lKTsKIAogdXNpbmcgbmFtZXNwYWNl
IEFSTTY0UmVnaXN0ZXJzOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNz
ZW1ibGVyL01hY3JvQXNzZW1ibGVyQVJNdjcuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fz
c2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTXY3LmNwcAppbmRleCAwNmE2ZmRiM2MwZjMzNzIzOWIx
N2ZjZDBkYzQxNjU1YjllY2EyNTc1Li5iMmRiMTRlMGYwZDRjMGJjZTJmZmFlMTE2OGEyYWZlNjg0
NDM3NTc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3Jv
QXNzZW1ibGVyQVJNdjcuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIv
TWFjcm9Bc3NlbWJsZXJBUk12Ny5jcHAKQEAgLTM2LDcgKzM2LDcgQEAgbmFtZXNwYWNlIEpTQyB7
CiAjaWYgRU5BQkxFKE1BU01fUFJPQkUpCiAKIGV4dGVybiAiQyIgSlNDX0RFQ0xBUkVfSklUX09Q
RVJBVElPTihjdGlNYXNtUHJvYmVUcmFtcG9saW5lLCB2b2lkLCAoKSk7Ci1KU0NfQU5OT1RBVEVf
SklUX09QRVJBVElPTihjdGlNYXNtUHJvYmVUcmFtcG9saW5lLCBjdGlNYXNtUHJvYmVUcmFtcG9s
aW5lKTsKK0pTQ19BTk5PVEFURV9KSVRfT1BFUkFUSU9OKGN0aU1hc21Qcm9iZVRyYW1wb2xpbmVJ
ZCwgY3RpTWFzbVByb2JlVHJhbXBvbGluZSk7CiAKIHVzaW5nIG5hbWVzcGFjZSBBUk1SZWdpc3Rl
cnM7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9B
c3NlbWJsZXJNSVBTLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9B
c3NlbWJsZXJNSVBTLmNwcAppbmRleCAxN2RlZWFjYzc4NjQxOTBlM2RhMDRlMmMzOWZkNzRmYjEx
MGY2YjY4Li5kNTAxOWJjZTAxMGI3NDkxNWFjZDk0YTBlZDM5M2QzYzU5ZjUwMjhhIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyTUlQUy5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlck1J
UFMuY3BwCkBAIC0zNyw3ICszNyw3IEBAIG5hbWVzcGFjZSBKU0MgewogI2lmIEVOQUJMRShNQVNN
X1BST0JFKQogCiBleHRlcm4gIkMiIEpTQ19ERUNMQVJFX0pJVF9PUEVSQVRJT04oY3RpTWFzbVBy
b2JlVHJhbXBvbGluZSwgdm9pZCwgKCkpOwotSlNDX0FOTk9UQVRFX0pJVF9PUEVSQVRJT04oY3Rp
TWFzbVByb2JlVHJhbXBvbGluZSwgY3RpTWFzbVByb2JlVHJhbXBvbGluZSk7CitKU0NfQU5OT1RB
VEVfSklUX09QRVJBVElPTihjdGlNYXNtUHJvYmVUcmFtcG9saW5lSWQsIGN0aU1hc21Qcm9iZVRy
YW1wb2xpbmUpOwogCiB1c2luZyBuYW1lc3BhY2UgTUlQU1JlZ2lzdGVyczsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclg4NkNvbW1v
bi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyWDg2
Q29tbW9uLmNwcAppbmRleCBlZTE5YThiNWFhMWQyOTI4OTcxOGQ1ZWI5ZTBhNzYxZDNmNGVhNzlm
Li4zZTg3M2IwMGNiMDIxMWUwZmEzNGMxMmM3MjFmZjE4MDVhN2Q5MGFiIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyWDg2Q29tbW9uLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyWDg2
Q29tbW9uLmNwcApAQCAtNDAsNyArNDAsNyBAQCBuYW1lc3BhY2UgSlNDIHsKICNpZiBFTkFCTEUo
TUFTTV9QUk9CRSkKIAogZXh0ZXJuICJDIiBKU0NfREVDTEFSRV9KSVRfT1BFUkFUSU9OKGN0aU1h
c21Qcm9iZVRyYW1wb2xpbmUsIHZvaWQsICgpKTsKLUpTQ19BTk5PVEFURV9KSVRfT1BFUkFUSU9O
KGN0aU1hc21Qcm9iZVRyYW1wb2xpbmUsIGN0aU1hc21Qcm9iZVRyYW1wb2xpbmUpOworSlNDX0FO
Tk9UQVRFX0pJVF9PUEVSQVRJT04oY3RpTWFzbVByb2JlVHJhbXBvbGluZUlkLCBjdGlNYXNtUHJv
YmVUcmFtcG9saW5lKTsKIAogLy8gVGhlIGZvbGxvd2luZyBhcmUgb2Zmc2V0cyBmb3IgUHJvYmU6
OlN0YXRlIGZpZWxkcyBhY2Nlc3NlZCBieSB0aGUgY3RpTWFzbVByb2JlVHJhbXBvbGluZSBzdHVi
LgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvanNjLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9qc2MuY3BwCmluZGV4IGFhYjQxZWM4Y2UzZGUxNjQwNDQxNTM5NzNhYTcz
ZDRkOGQ5OTYzYzQuLjI2MzM1ZGY1ZjY5ZjIyNzc5YzBlZTJmNjNiYzgwYzFlY2Q3NDcyZDIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qc2MuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9qc2MuY3BwCkBAIC0zOSw2ICszOSw3IEBACiAjaW5jbHVkZSAiSW5pdGlhbGl6
ZVRocmVhZGluZy5oIgogI2luY2x1ZGUgIkludGVycHJldGVyLmgiCiAjaW5jbHVkZSAiSklULmgi
CisjaW5jbHVkZSAiSklUT3BlcmF0aW9uTGlzdC5oIgogI2luY2x1ZGUgIkpTQXJyYXkuaCIKICNp
bmNsdWRlICJKU0FycmF5QnVmZmVyLmgiCiAjaW5jbHVkZSAiSlNCaWdJbnQuaCIKQEAgLTM0MTUs
NiArMzQxNiwxMyBAQCBpbnQgcnVuSlNDKGNvbnN0IENvbW1hbmRMaW5lJiBvcHRpb25zLCBib29s
IGlzV29ya2VyLCBjb25zdCBGdW5jJiBmdW5jKQogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKKyNp
ZiBFTkFCTEUoSklUX09QRVJBVElPTl9WQUxJREFUSU9OKQorZXh0ZXJuIGNvbnN0IHVpbnRwdHJf
dCBzdGFydE9mSG9zdEZ1bmN0aW9uc0luU2hlbGwgX19hc20oInNlY3Rpb24kc3RhcnQkX19EQVRB
X0NPTlNUJF9fanNjX2hvc3QiKTsKK2V4dGVybiBjb25zdCB1aW50cHRyX3QgZW5kT2ZIb3N0RnVu
Y3Rpb25zSW5TaGVsbCBfX2FzbSgic2VjdGlvbiRlbmQkX19EQVRBX0NPTlNUJF9fanNjX2hvc3Qi
KTsKK2V4dGVybiBjb25zdCB1aW50cHRyX3Qgc3RhcnRPZkpJVE9wZXJhdGlvbnNJblNoZWxsIF9f
YXNtKCJzZWN0aW9uJHN0YXJ0JF9fREFUQV9DT05TVCRfX2pzY19vcHMiKTsKK2V4dGVybiBjb25z
dCB1aW50cHRyX3QgZW5kT2ZKSVRPcGVyYXRpb25zSW5TaGVsbCBfX2FzbSgic2VjdGlvbiRlbmQk
X19EQVRBX0NPTlNUJF9fanNjX29wcyIpOworI2VuZGlmCisKIGludCBqc2NtYWluKGludCBhcmdj
LCBjaGFyKiogYXJndikKIHsKICAgICAvLyBOZWVkIHRvIG92ZXJyaWRlIGFuZCBlbmFibGUgcmVz
dHJpY3RlZCBvcHRpb25zIGJlZm9yZSB3ZSBzdGFydCBwYXJzaW5nIG9wdGlvbnMgYmVsb3cuCkBA
IC0zNDM0LDYgKzM0NDIsMTAgQEAgaW50IGpzY21haW4oaW50IGFyZ2MsIGNoYXIqKiBhcmd2KQog
ICAgIH0KIAogICAgIEpTQzo6aW5pdGlhbGl6ZSgpOworI2lmIEVOQUJMRShKSVRfT1BFUkFUSU9O
X1ZBTElEQVRJT04pCisgICAgSlNDOjpKSVRPcGVyYXRpb25MaXN0Ojpwb3B1bGF0ZVBvaW50ZXJz
SW5FbWJlZGRlcjEoJnN0YXJ0T2ZIb3N0RnVuY3Rpb25zSW5TaGVsbCwgJmVuZE9mSG9zdEZ1bmN0
aW9uc0luU2hlbGwsICZzdGFydE9mSklUT3BlcmF0aW9uc0luU2hlbGwsICZlbmRPZkpJVE9wZXJh
dGlvbnNJblNoZWxsKTsKKyAgICBKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6OnBvcHVsYXRlUG9pbnRl
cnNJbkVtYmVkZGVyMihudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyKTsKKyNlbmRp
ZgogICAgIGluaXRpYWxpemVUaW1lb3V0SWZOZWVkZWQoKTsKIAogI2lmIE9TKERBUldJTikgfHwg
T1MoTElOVVgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Jbml0
aWFsaXplVGhyZWFkaW5nLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0luaXRp
YWxpemVUaHJlYWRpbmcuY3BwCmluZGV4IGU1M2JmYjIzYzRhYjE1OTdiYWYzY2UwZDBlZGNhNThi
ZjgyNDU1MWIuLjkxNWJjNmM1NDFiODdlZWY1YjA1Y2UzODNmN2E3YmI2OWVlNDFhZGEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0luaXRpYWxpemVUaHJlYWRpbmcu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0luaXRpYWxpemVUaHJlYWRp
bmcuY3BwCkBAIC0zMCw2ICszMCw3IEBACiAjaW5jbHVkZSAiSW5pdGlhbGl6ZVRocmVhZGluZy5o
IgogCiAjaW5jbHVkZSAiRXhlY3V0YWJsZUFsbG9jYXRvci5oIgorI2luY2x1ZGUgIkpJVE9wZXJh
dGlvbkxpc3QuaCIKICNpbmNsdWRlICJKU0NDb25maWcuaCIKICNpbmNsdWRlICJKU0NQdHJUYWcu
aCIKICNpbmNsdWRlICJMTEludERhdGEuaCIKQEAgLTY0LDYgKzY1LDcgQEAgdm9pZCBpbml0aWFs
aXplKCkKICNlbmRpZgogICAgICAgICB7CiAgICAgICAgICAgICBPcHRpb25zOjpBbGxvd1VuZmlu
YWxpemVkQWNjZXNzU2NvcGUgc2NvcGU7CisgICAgICAgICAgICBKSVRPcGVyYXRpb25MaXN0Ojpp
bml0aWFsaXplKCk7CiAgICAgICAgICAgICBFeGVjdXRhYmxlQWxsb2NhdG9yOjppbml0aWFsaXpl
KCk7CiAgICAgICAgICAgICBWTTo6Y29tcHV0ZUNhblVzZUpJVCgpOwogICAgICAgICAgICAgaWYg
KCFnX2pzY0NvbmZpZy52bS5jYW5Vc2VKSVQpIHsKQEAgLTczLDYgKzc1LDggQEAgdm9pZCBpbml0
aWFsaXplKCkKICAgICAgICAgfQogICAgICAgICBPcHRpb25zOjpmaW5hbGl6ZSgpOwogCisgICAg
ICAgIEpJVE9wZXJhdGlvbkxpc3Q6OnBvcHVsYXRlUG9pbnRlcnNJbkphdmFTY3JpcHRDb3JlKCk7
CisKICAgICAgICAgaWYgKE9wdGlvbnM6OnVzZVNpZ2lsbENyYXNoQW5hbHl6ZXIoKSkKICAgICAg
ICAgICAgIGVuYWJsZVNpZ2lsbENyYXNoQW5hbHl6ZXIoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b3R5cGVG
dW5jdGlvbnMuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVk
QXJyYXlWaWV3UHJvdG90eXBlRnVuY3Rpb25zLmgKaW5kZXggMGJhYjQ2MDU3Y2VhNDFlMjgwOWJk
ZTg3YTE5MjBjM2NiZjg4YWZhZS4uMGI2NmVkNjIyOTE3ZWRlMzY4MmVhMGFkM2Y0YTJmNDk1MGQx
ZTAxOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmlj
VHlwZWRBcnJheVZpZXdQcm90b3R5cGVGdW5jdGlvbnMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZUZ1bmN0aW9ucy5o
CkBAIC0xMDAsNyArMTAwLDcgQEAgaW5saW5lIHVuc2lnbmVkIGFyZ3VtZW50Q2xhbXBlZEluZGV4
RnJvbVN0YXJ0T3JFbmQoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwKIH0KIAogdGVtcGxh
dGU8dHlwZW5hbWUgVmlld0NsYXNzPgotSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNU
eXBlZEFycmF5Vmlld1Byb3RvRnVuY1NldCwgKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpKQorQUxXQVlTX0lOTElORSBFbmNvZGVkSlNW
YWx1ZSBnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNTZXQoVk0mIHZtLCBKU0dsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKIHsKICAgICBhdXRvIHNj
b3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKQEAgLTE0Nyw3ICsxNDcsNyBAQCBKU0Nf
REVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jU2V0LCAo
Vk0mIHZtLCBKU0dsb2JhbE9iagogfQogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBWaWV3Q2xhc3M+Ci1K
U0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jQ29w
eVdpdGhpbiwgKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1l
KiBjYWxsRnJhbWUpKQorQUxXQVlTX0lOTElORSBFbmNvZGVkSlNWYWx1ZSBnZW5lcmljVHlwZWRB
cnJheVZpZXdQcm90b0Z1bmNDb3B5V2l0aGluKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpCiB7CiAgICAgYXV0byBzY29wZSA9IERFQ0xB
UkVfVEhST1dfU0NPUEUodm0pOwogCkBAIC0xNzksNyArMTc5LDcgQEAgSlNDX0RFRklORV9IT1NU
X0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY0NvcHlXaXRoaW4sIChWTSYg
dm0sIEpTR2wKIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUgVmlld0NsYXNzPgotSlNDX0RFRklORV9I
T1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY0luY2x1ZGVzLCAoVk0m
IHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkp
CitBTFdBWVNfSU5MSU5FIEVuY29kZWRKU1ZhbHVlIGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3Rv
RnVuY0luY2x1ZGVzKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZy
YW1lKiBjYWxsRnJhbWUpCiB7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUo
dm0pOwogCkBAIC0yMjQsNyArMjI0LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVy
aWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY0luY2x1ZGVzLCAoVk0mIHZtLCBKU0dsb2IKIH0KIAog
dGVtcGxhdGU8dHlwZW5hbWUgVmlld0NsYXNzPgotSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdl
bmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY0luZGV4T2YsIChWTSYgdm0sIEpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKSkKK0FMV0FZU19JTkxJTkUg
RW5jb2RlZEpTVmFsdWUgZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jSW5kZXhPZihWTSYg
dm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKQog
ewogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIApAQCAtMjYxLDcg
KzI2MSw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQ
cm90b0Z1bmNJbmRleE9mLCAoVk0mIHZtLCBKU0dsb2JhCiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1l
IFZpZXdDbGFzcz4KLUpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZp
ZXdQcm90b0Z1bmNKb2luLCAoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBD
YWxsRnJhbWUqIGNhbGxGcmFtZSkpCitBTFdBWVNfSU5MSU5FIEVuY29kZWRKU1ZhbHVlIGdlbmVy
aWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY0pvaW4oVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKIHsKICAgICBhdXRvIHNjb3BlID0gREVD
TEFSRV9USFJPV19TQ09QRSh2bSk7CiAKQEAgLTMwMCw3ICszMDAsNyBAQCBKU0NfREVGSU5FX0hP
U1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jSm9pbiwgKFZNJiB2bSwg
SlNHbG9iYWxPYgogfQogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBWaWV3Q2xhc3M+Ci1KU0NfREVGSU5F
X0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jTGFzdEluZGV4T2Ys
IChWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZy
YW1lKSkKK0FMV0FZU19JTkxJTkUgRW5jb2RlZEpTVmFsdWUgZ2VuZXJpY1R5cGVkQXJyYXlWaWV3
UHJvdG9GdW5jTGFzdEluZGV4T2YoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKIHsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJP
V19TQ09QRSh2bSk7CiAKQEAgLTM1MCw3ICszNTAsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJ
T04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jTGFzdEluZGV4T2YsIChWTSYgdm0sIEpT
RwogfQogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBWaWV3Q2xhc3M+Ci1KU0NfREVGSU5FX0hPU1RfRlVO
Q1RJT04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jQnVmZmVyLCAoVk0mLCBK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkpCitBTFdB
WVNfSU5MSU5FIEVuY29kZWRKU1ZhbHVlIGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvR2V0dGVy
RnVuY0J1ZmZlcihWTSYsIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSog
Y2FsbEZyYW1lKQogewogICAgIC8vIDIyLjIuMy4zCiAgICAgVmlld0NsYXNzKiB0aGlzT2JqZWN0
ID0ganNDYXN0PFZpZXdDbGFzcyo+KGNhbGxGcmFtZS0+dGhpc1ZhbHVlKCkpOwpAQCAtMzU5LDcg
KzM1OSw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQ
cm90b0dldHRlckZ1bmNCdWZmZXIsIChWTSYsIEpTR2xvCiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1l
IFZpZXdDbGFzcz4KLUpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZp
ZXdQcm90b0dldHRlckZ1bmNMZW5ndGgsIChWTSYsIEpTR2xvYmFsT2JqZWN0KiwgQ2FsbEZyYW1l
KiBjYWxsRnJhbWUpKQorQUxXQVlTX0lOTElORSBFbmNvZGVkSlNWYWx1ZSBnZW5lcmljVHlwZWRB
cnJheVZpZXdQcm90b0dldHRlckZ1bmNMZW5ndGgoVk0mLCBKU0dsb2JhbE9iamVjdCosIENhbGxG
cmFtZSogY2FsbEZyYW1lKQogewogICAgIC8vIDIyLjIuMy4xNwogICAgIFZpZXdDbGFzcyogdGhp
c09iamVjdCA9IGpzQ2FzdDxWaWV3Q2xhc3MqPihjYWxsRnJhbWUtPnRoaXNWYWx1ZSgpKTsKQEAg
LTM2OCw3ICszNjgsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVkQXJy
YXlWaWV3UHJvdG9HZXR0ZXJGdW5jTGVuZ3RoLCAoVk0mLCBKU0dsbwogfQogCiB0ZW1wbGF0ZTx0
eXBlbmFtZSBWaWV3Q2xhc3M+Ci1KU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVk
QXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jQnl0ZUxlbmd0aCwgKFZNJiwgSlNHbG9iYWxPYmplY3Qq
LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkpCitBTFdBWVNfSU5MSU5FIEVuY29kZWRKU1ZhbHVlIGdl
bmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvR2V0dGVyRnVuY0J5dGVMZW5ndGgoVk0mLCBKU0dsb2Jh
bE9iamVjdCosIENhbGxGcmFtZSogY2FsbEZyYW1lKQogewogICAgIC8vIDIyLjIuMy4yCiAgICAg
Vmlld0NsYXNzKiB0aGlzT2JqZWN0ID0ganNDYXN0PFZpZXdDbGFzcyo+KGNhbGxGcmFtZS0+dGhp
c1ZhbHVlKCkpOwpAQCAtMzc3LDcgKzM3Nyw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihn
ZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0dldHRlckZ1bmNCeXRlTGVuZ3RoLCAoVk0mLCBKCiB9
CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFZpZXdDbGFzcz4KLUpTQ19ERUZJTkVfSE9TVF9GVU5DVElP
TihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0dldHRlckZ1bmNCeXRlT2Zmc2V0LCAoVk0mLCBK
U0dsb2JhbE9iamVjdCosIENhbGxGcmFtZSogY2FsbEZyYW1lKSkKK0FMV0FZU19JTkxJTkUgRW5j
b2RlZEpTVmFsdWUgZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jQnl0ZU9mZnNl
dChWTSYsIEpTR2xvYmFsT2JqZWN0KiwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpCiB7CiAgICAgLy8g
MjIuMi4zLjMKICAgICBWaWV3Q2xhc3MqIHRoaXNPYmplY3QgPSBqc0Nhc3Q8Vmlld0NsYXNzKj4o
Y2FsbEZyYW1lLT50aGlzVmFsdWUoKSk7CkBAIC0zODYsNyArMzg2LDcgQEAgSlNDX0RFRklORV9I
T1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvR2V0dGVyRnVuY0J5dGVPZmZz
ZXQsIChWTSYsIEoKIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUgVmlld0NsYXNzPgotSlNDX0RFRklO
RV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY1JldmVyc2UsIChW
TSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1l
KSkKK0FMV0FZU19JTkxJTkUgRW5jb2RlZEpTVmFsdWUgZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJv
dG9GdW5jUmV2ZXJzZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxG
cmFtZSogY2FsbEZyYW1lKQogewogLy8gICAgVk0mIHZtID0gZ2V0Vk0oZ2xvYmFsT2JqZWN0KTsK
ICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CkBAIC00MDMsNyArNDAz
LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3Rv
RnVuY1JldmVyc2UsIChWTSYgdm0sIEpTR2xvYmEKIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUgVmll
d0NsYXNzPgotSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1By
aXZhdGVGdW5jU29ydCwgKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2Fs
bEZyYW1lKiBjYWxsRnJhbWUpKQorQUxXQVlTX0lOTElORSBFbmNvZGVkSlNWYWx1ZSBnZW5lcmlj
VHlwZWRBcnJheVZpZXdQcml2YXRlRnVuY1NvcnQoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKIHsKIC8vICAgIFZNJiB2bSA9IGdldFZN
KGdsb2JhbE9iamVjdCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0p
OwpAQCAtNDE5LDcgKzQxOSw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlw
ZWRBcnJheVZpZXdQcml2YXRlRnVuY1NvcnQsIChWTSYgdm0sIEpTR2xvYmFsCiB9CiAKIHRlbXBs
YXRlPHR5cGVuYW1lIFZpZXdDbGFzcz4KLUpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmlj
VHlwZWRBcnJheVZpZXdQcm90b0Z1bmNTbGljZSwgKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpKQorQUxXQVlTX0lOTElORSBFbmNvZGVk
SlNWYWx1ZSBnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNTbGljZShWTSYgdm0sIEpTR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKQogewogICAgIGF1
dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIApAQCAtNTEwLDcgKzUxMCw3IEBA
IEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNT
bGljZSwgKFZNJiB2bSwgSlNHbG9iYWxPCiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFZpZXdDbGFz
cz4KLUpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcml2YXRl
RnVuY1N1YmFycmF5Q3JlYXRlLCAoVk0mdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IENhbGxGcmFtZSogY2FsbEZyYW1lKSkKK0FMV0FZU19JTkxJTkUgRW5jb2RlZEpTVmFsdWUgZ2Vu
ZXJpY1R5cGVkQXJyYXlWaWV3UHJpdmF0ZUZ1bmNTdWJhcnJheUNyZWF0ZShWTSZ2bSwgSlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpCiB7CiAgICAgYXV0
byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9WTS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9WTS5jcHAKaW5kZXggY2JjNzA2ZmY0ODYwMDBhZDY4ZjBlNmQzNDg1NzQ5ZmM2OWJlZDc4
Mi4uOWI2NDRmODg5MmZiOWEwMmQ0MTQxYTk5NjEwMzk1N2MxNmM2ZjMxYiAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1ZNLmNwcApAQCAtNzgsNiArNzgsNyBAQAogI2luY2x1ZGUgIklzb0hl
YXBDZWxsVHlwZS5oIgogI2luY2x1ZGUgIklzb0lubGluZWRIZWFwQ2VsbFR5cGUuaCIKICNpbmNs
dWRlICJKSVRDb2RlLmgiCisjaW5jbHVkZSAiSklUT3BlcmF0aW9uTGlzdC5oIgogI2luY2x1ZGUg
IkpJVFRodW5rcy5oIgogI2luY2x1ZGUgIkpJVFdvcmtsaXN0LmgiCiAjaW5jbHVkZSAiSlNBUElH
bG9iYWxPYmplY3QuaCIKQEAgLTgzMSw2ICs4MzIsNyBAQCBOYXRpdmVFeGVjdXRhYmxlKiBWTTo6
Z2V0SG9zdEZ1bmN0aW9uKE5hdGl2ZUZ1bmN0aW9uIGZ1bmN0aW9uLCBJbnRyaW5zaWMgaW50cmlu
cwogewogI2lmIEVOQUJMRShKSVQpCiAgICAgaWYgKE9wdGlvbnM6OnVzZUpJVCgpKSB7CisgICAg
ICAgIEpJVE9wZXJhdGlvbkxpc3Q6OmFzc2VydElzSG9zdEZ1bmN0aW9uKGZ1bmN0aW9uKTsKICAg
ICAgICAgcmV0dXJuIGppdFN0dWJzLT5ob3N0RnVuY3Rpb25TdHViKAogICAgICAgICAgICAgKnRo
aXMsIGZ1bmN0aW9uLCBjb25zdHJ1Y3RvciwKICAgICAgICAgICAgIGludHJpbnNpYyAhPSBOb0lu
dHJpbnNpYyA/IHRodW5rR2VuZXJhdG9yRm9ySW50cmluc2ljKGludHJpbnNpYykgOiBudWxscHRy
LApkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvUGxhdGZvcm1DYWxsaW5nQ29udmVudGlvbnMu
aCBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtQ2FsbGluZ0NvbnZlbnRpb25zLmgKaW5kZXggNzU5
NzcyOWY2NDEyNjZjNTJkYmQzNWRkZDk5NzVmMjY3YmE2YzJlOS4uNDkzN2ViZjdjM2FiZWJmZjJm
NmE2MDA2ZWQxZjI0NjM3ZjFkMWIzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvUGxhdGZv
cm1DYWxsaW5nQ29udmVudGlvbnMuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUNhbGxp
bmdDb252ZW50aW9ucy5oCkBAIC00MiwxMyArNDIsMjAgQEAKICNkZWZpbmUgSlNDX0hPU1RfQ0FM
TF9BVFRSSUJVVEVTCiAjZW5kaWYKIAorI2lmIEVOQUJMRShKSVRfT1BFUkFUSU9OX1ZBTElEQVRJ
T04pCisjZGVmaW5lIEpTQ19BTk5PVEFURV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9uSWQsIGZ1bmN0
aW9uKSBcCisgICAgY29uc3RleHByIGF1dG8gZnVuY3Rpb25JZCBfX2F0dHJpYnV0ZV9fKCh1c2Vk
LCBzZWN0aW9uKCJfX0RBVEFfQ09OU1QsX19qc2NfaG9zdCIpKSkgPSBmdW5jdGlvbjsKKyNlbHNl
CisjZGVmaW5lIEpTQ19BTk5PVEFURV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9uSWQsIGZ1bmN0aW9u
KQorI2VuZGlmCisKICNkZWZpbmUgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OX1dJVEhfQVRUUklC
VVRFUyhmdW5jdGlvbk5hbWUsIGF0dHJpYnV0ZXMsIHBhcmFtZXRlcnMpIFwKKyAgICBKU0NfQU5O
T1RBVEVfSE9TVF9GVU5DVElPTihfSklUVGFyZ2V0XyMjZnVuY3Rpb25OYW1lLCBzdGF0aWNfY2Fz
dDxKU0M6OkVuY29kZWRKU1ZhbHVlKCopcGFyYW1ldGVycz4oZnVuY3Rpb25OYW1lKSk7IFwKICAg
ICBhdHRyaWJ1dGVzIEpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTF9BVFRSSUJVVEVT
IGZ1bmN0aW9uTmFtZSBwYXJhbWV0ZXJzCiAjZGVmaW5lIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElP
TihmdW5jdGlvbk5hbWUsIHBhcmFtZXRlcnMpIFwKICAgICBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJ
T05fV0lUSF9BVFRSSUJVVEVTKGZ1bmN0aW9uTmFtZSwgLCBwYXJhbWV0ZXJzKQogI2RlZmluZSBK
U0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9uTmFtZSkgXAogICAgIEpTQzo6RW5jb2Rl
ZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTF9BVFRSSUJVVEVTIGZ1bmN0aW9uTmFtZShKU0M6OkpTR2xv
YmFsT2JqZWN0KiwgSlNDOjpDYWxsRnJhbWUqKQotI2RlZmluZSBKU0NfQU5OT1RBVEVfSE9TVF9G
VU5DVElPTihmdW5jdGlvbklkLCBmdW5jdGlvbikKIAogI2lmIENQVShYODYpICYmIE9TKFdJTkRP
V1MpCiAjZGVmaW5lIENBTExJTkdfQ09OVkVOVElPTl9JU19TVERDQUxMIDEKQEAgLTgyLDE0ICs4
OSwyMCBAQAogI2RlZmluZSBKSVRfT1BFUkFUSU9OX0FUVFJJQlVURVMKICNlbmRpZgogCisjaWYg
RU5BQkxFKEpJVF9PUEVSQVRJT05fVkFMSURBVElPTikKKyNkZWZpbmUgSlNDX0FOTk9UQVRFX0pJ
VF9PUEVSQVRJT04oZnVuY3Rpb25JZCwgZnVuY3Rpb24pIFwKKyAgICBjb25zdGV4cHIgYXV0byAg
ZnVuY3Rpb25JZCBfX2F0dHJpYnV0ZV9fKCh1c2VkLCBzZWN0aW9uKCJfX0RBVEFfQ09OU1QsX19q
c2Nfb3BzIikpKSA9IGZ1bmN0aW9uOworI2Vsc2UKKyNkZWZpbmUgSlNDX0FOTk9UQVRFX0pJVF9P
UEVSQVRJT04oZnVuY3Rpb25JZCwgZnVuY3Rpb24pCisjZW5kaWYKIAogI2RlZmluZSBKU0NfREVG
SU5FX0pJVF9PUEVSQVRJT05fV0lUSF9BVFRSSUJVVEVTKGZ1bmN0aW9uTmFtZSwgYXR0cmlidXRl
cywgcmV0dXJuVHlwZSwgcGFyYW1ldGVycykgXAorICAgIEpTQ19BTk5PVEFURV9KSVRfT1BFUkFU
SU9OKF9KSVRUYXJnZXRfIyNmdW5jdGlvbk5hbWUsIHN0YXRpY19jYXN0PHJldHVyblR5cGUoKilw
YXJhbWV0ZXJzPihmdW5jdGlvbk5hbWUpKTsgXAogICAgIGF0dHJpYnV0ZXMgcmV0dXJuVHlwZSBK
SVRfT1BFUkFUSU9OX0FUVFJJQlVURVMgZnVuY3Rpb25OYW1lIHBhcmFtZXRlcnMKICNkZWZpbmUg
SlNDX0RFRklORV9KSVRfT1BFUkFUSU9OKGZ1bmN0aW9uTmFtZSwgcmV0dXJuVHlwZSwgcGFyYW1l
dGVycykgXAogICAgIEpTQ19ERUZJTkVfSklUX09QRVJBVElPTl9XSVRIX0FUVFJJQlVURVMoZnVu
Y3Rpb25OYW1lLCAsIHJldHVyblR5cGUsIHBhcmFtZXRlcnMpCiAjZGVmaW5lIEpTQ19ERUNMQVJF
X0pJVF9PUEVSQVRJT04oZnVuY3Rpb25OYW1lLCByZXR1cm5UeXBlLCBwYXJhbWV0ZXJzKSBcCiAg
ICAgcmV0dXJuVHlwZSBKSVRfT1BFUkFUSU9OX0FUVFJJQlVURVMgZnVuY3Rpb25OYW1lIHBhcmFt
ZXRlcnMgUkVGRVJFTkNFRF9GUk9NX0FTTSBXVEZfSU5URVJOQUwKLSNkZWZpbmUgSlNDX0FOTk9U
QVRFX0pJVF9PUEVSQVRJT04oZnVuY3Rpb25JZCwgZnVuY3Rpb24pCiAKICNkZWZpbmUgSlNDX0RF
Q0xBUkVfQ1VTVE9NX0dFVFRFUihmdW5jdGlvbk5hbWUpIEpTQ19ERUNMQVJFX0pJVF9PUEVSQVRJ
T04oZnVuY3Rpb25OYW1lLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCAoSlNDOjpKU0dsb2JhbE9iamVj
dCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKSkKICNkZWZpbmUgSlND
X0RFQ0xBUkVfQ1VTVE9NX1NFVFRFUihmdW5jdGlvbk5hbWUpIEpTQ19ERUNMQVJFX0pJVF9PUEVS
QVRJT04oZnVuY3Rpb25OYW1lLCBib29sLCAoSlNDOjpKU0dsb2JhbE9iamVjdCosIEpTQzo6RW5j
b2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dU
Ri93dGYvUGxhdGZvcm1FbmFibGUuaCBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtRW5hYmxlLmgK
aW5kZXggOTE2NmNmZGQ5NTU0YjYwZjc3ODMyMjk0ZWVjNjllNmI4ODFkYzM5ZS4uNGEyMjViZDdi
NzYwNDI0OGUzM2E2Mjc1YzljOWRjODg0NjA2Y2FkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93
dGYvUGxhdGZvcm1FbmFibGUuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUVuYWJsZS5o
CkBAIC04ODgsMyArODg4LDcgQEAKICNpZiBDUFUoQVJNNjQpICYmIENQVShBRERSRVNTNjQpCiAj
ZGVmaW5lIFVTRV9KVU1QX0lTTEFORFMgMQogI2VuZGlmCisKKyNpZiBPUyhEQVJXSU4pICYmIEVO
QUJMRShKSVQpICYmIEFTU0VSVF9FTkFCTEVECisjZGVmaW5lIEVOQUJMRV9KSVRfT1BFUkFUSU9O
X1ZBTElEQVRJT04gMQorI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJz
LmNtYWtlIGIvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQppbmRleCBjODc0OGEyMTYyN2Nj
MzM0Y2UyMmJlNDY5M2U2ZmM4NTNmZTNhNjBkLi44ZjM4ZmY0ZmYyMmRiYTMyNTgyZjJlMTIxZTdk
NjU4YzQxNjFjNjljIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCisr
KyBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKQEAgLTI1OCw2ICsyNTgsNyBAQCBzZXQo
V2ViQ29yZV9QUklWQVRFX0ZSQU1FV09SS19IRUFERVJTCiAgICAgYmluZGluZ3MvanMvU2NyaXB0
V3JhcHBhYmxlSW5saW5lcy5oCiAgICAgYmluZGluZ3MvanMvU2VyaWFsaXplZFNjcmlwdFZhbHVl
LmgKICAgICBiaW5kaW5ncy9qcy9TdHJpbmdBZGFwdG9ycy5oCisgICAgYmluZGluZ3MvanMvV2Vi
Q29yZUpJVE9wZXJhdGlvbnMuaAogICAgIGJpbmRpbmdzL2pzL1dlYkNvcmVUeXBlZEFycmF5Q29u
dHJvbGxlci5oCiAgICAgYmluZGluZ3MvanMvV2luZG93UHJveHkuaAogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0Cmlu
ZGV4IGYxMDM3MjAzZmRjMjNmMWQyM2VjYTYwYzBkODk5OTNiMWNhM2U5OTguLmZiOThjNzhhMDQx
MTExZmU1YzYyNmIzYjVkZWJhMzVlNGU0NTA5NTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L1NvdXJjZXMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CkBAIC01OTQsNiAr
NTk0LDcgQEAgYmluZGluZ3MvanMvU2NyaXB0U3RhdGUuY3BwCiBiaW5kaW5ncy9qcy9TY3JpcHRX
cmFwcGFibGUuY3BwCiBiaW5kaW5ncy9qcy9TZXJpYWxpemVkU2NyaXB0VmFsdWUuY3BwCiBiaW5k
aW5ncy9qcy9TdHJ1Y3R1cmVkQ2xvbmUuY3BwCitiaW5kaW5ncy9qcy9XZWJDb3JlSklUT3BlcmF0
aW9ucy5jcHAKIGJpbmRpbmdzL2pzL1dlYkNvcmVKU0NsaWVudERhdGEuY3BwCiBiaW5kaW5ncy9q
cy9XZWJDb3JlVHlwZWRBcnJheUNvbnRyb2xsZXIuY3BwCiBiaW5kaW5ncy9qcy9XaW5kb3dQcm94
eS5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagppbmRleCBlZmNmMTUwYWQ1YmQ0OWI0NDM2ZjMxNWZhNmJiMWI2NDhmMzViZGQ3Li44OTcy
MTBhNDg4ZGM0MDBkNGU3ODk2ZTQzOTRhZDc3YWViOTRiYTU1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dl
YkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC00OTY3LDYgKzQ5Njcs
NyBAQAogCQlFMzIzQ0ZGQTFFNUFGNkFGMDBGMEI0QTAgLyogSlNET01Db252ZXJ0UHJvbWlzZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTMyM0NGRjkx
RTVBRjZBNTAwRjBCNEEwIC8qIEpTRE9NQ29udmVydFByb21pc2UuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlFMzU2NUI3QjFEQzJENkM5MDAyMTdE
QkQgLyogSlNFdmVudEN1c3RvbS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRTM0RUU0OUYxREMyRDU3NTAwRUFBOUQzIC8qIEpTRXZlbnRDdXN0b20uaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlFMzU4MDJC
NjFEQzg0MzVEMDBBOTc3M0MgLyogRE9NSklUSURMVHlwZUZpbHRlci5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTM1ODAyQjUxREM4NDM1ODAwQTk3NzND
IC8qIERPTUpJVElETFR5cGVGaWx0ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQlFMzU4MkMyODI1MjdGNjY5MDBEMUI3OTAgLyogV2ViQ29yZUpJ
VE9wZXJhdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEUzNTgyQzI2MjUyN0Y2NjgwMEQxQjc5MCAvKiBXZWJDb3JlSklUT3BlcmF0aW9ucy5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUUzNUI5MDdG
MjNGNjBBNTAwMDAwMTFGRiAvKiBMb2NhbGl6ZWREZXZpY2VNb2RlbC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTM1QjkwN0MyM0Y2MDY3NzAwMDAxMUZG
IC8qIExvY2FsaXplZERldmljZU1vZGVsLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKIAkJRTM3N0ZFNEQxREFERTE2NTAwQ0REMDI1IC8qIE5vZGVDb25z
dGFudHMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUz
RDA0OTkzMURBREMwNDUwMDcxOEYzQyAvKiBOb2RlQ29uc3RhbnRzLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJRTM3Qzg2NTAxRUI2M0UzRjAwODdD
NkNBIC8qIEpTRE9NUHJvbWlzZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRTM3Qzg2NEYxRUI2M0UyRDAwODdDNkNBIC8qIEpTRE9NUHJvbWlzZS5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBAIC0xNTgyMCw2
ICsxNTgyMSw4IEBACiAJCUUzMzQ4MjVFMURDOTNBQTAwMDlDOTU0NCAvKiBET01KSVRBYnN0cmFj
dEhlYXBSZXBvc2l0b3J5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IERPTUpJ
VEFic3RyYWN0SGVhcFJlcG9zaXRvcnkuaDsgcGF0aCA9IERlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
RE9NSklUQWJzdHJhY3RIZWFwUmVwb3NpdG9yeS5oOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVD
VFNfRElSOyB9OwogCQlFMzRFRTQ5RjFEQzJENTc1MDBFQUE5RDMgLyogSlNFdmVudEN1c3RvbS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0V2ZW50Q3VzdG9tLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUzNTgwMkI1MURDODQzNTgwMEE5NzczQyAvKiBET01K
SVRJRExUeXBlRmlsdGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERPTUpJ
VElETFR5cGVGaWx0ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTM1ODJDMjQy
NTI3RjY2ODAwRDFCNzkwIC8qIFdlYkNvcmVKSVRPcGVyYXRpb25zLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYkNvcmVKSVRPcGVyYXRpb25zLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTM1ODJDMjYyNTI3RjY2ODAwRDFCNzkwIC8qIFdlYkNv
cmVKSVRPcGVyYXRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkNv
cmVKSVRPcGVyYXRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUzNUI5MDdD
MjNGNjA2NzcwMDAwMTFGRiAvKiBMb2NhbGl6ZWREZXZpY2VNb2RlbC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBMb2NhbGl6ZWREZXZpY2VNb2RlbC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQlFMzVCOTA3RTIzRjYwNjc3MDAwMDExRkYgLyogTG9jYWxpemVkRGV2
aWNlTW9kZWwubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBMb2Nh
bGl6ZWREZXZpY2VNb2RlbC5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTM3Qzg2
NEYxRUI2M0UyRDAwODdDNkNBIC8qIEpTRE9NUHJvbWlzZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBKU0RPTVByb21pc2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
QEAgLTI2NDk5LDYgKzI2NTAyLDggQEAKIAkJCQk0MTRCODIwMjFENkRGMEQ5MDA3N0VCRTMgLyog
U3RydWN0dXJlZENsb25lLmNwcCAqLywKIAkJCQk0MTRCODIwMzFENkRGMEQ5MDA3N0VCRTMgLyog
U3RydWN0dXJlZENsb25lLmggKi8sCiAJCQkJNDE5QkU3NTIxQkM3RjNEQjAwRTFDODVCIC8qIFdl
YkNvcmVCdWlsdGluTmFtZXMuaCAqLywKKwkJCQlFMzU4MkMyNDI1MjdGNjY4MDBEMUI3OTAgLyog
V2ViQ29yZUpJVE9wZXJhdGlvbnMuY3BwICovLAorCQkJCUUzNTgyQzI2MjUyN0Y2NjgwMEQxQjc5
MCAvKiBXZWJDb3JlSklUT3BlcmF0aW9ucy5oICovLAogCQkJCTBGN0RGMTQ3MUUyQkYxQTYwMDk1
OTUxQiAvKiBXZWJDb3JlSlNDbGllbnREYXRhLmNwcCAqLywKIAkJCQlCQzUzRDkxMDExNDMxMEND
MDAwRDgxN0UgLyogV2ViQ29yZUpTQ2xpZW50RGF0YS5oICovLAogCQkJCTBGMDk5RDA2MTdCOTY4
QTEwMEZGODRCOSAvKiBXZWJDb3JlVHlwZWRBcnJheUNvbnRyb2xsZXIuY3BwICovLApAQCAtMzQ0
NjksNiArMzQ0NzQsNyBAQAogCQkJCUNEQzY5RERBMTYzNzFGRDQwMDdDMzhERiAvKiBXZWJDb3Jl
RnVsbFNjcmVlblBsYWNlaG9sZGVyVmlldy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0RDNjlERDYx
NjMyMDI2QzAwN0MzOERGIC8qIFdlYkNvcmVGdWxsU2NyZWVuV2FybmluZ1ZpZXcuaCBpbiBIZWFk
ZXJzICovLAogCQkJCUNEMTI3REVFMTRGMzA5ODQwMEU4NDc3OSAvKiBXZWJDb3JlRnVsbFNjcmVl
bldpbmRvdy5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTM1ODJDMjgyNTI3RjY2OTAwRDFCNzkwIC8q
IFdlYkNvcmVKSVRPcGVyYXRpb25zLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzM0OEJENDBEQjdG
ODA0MDA0QUJBQkIgLyogV2ViQ29yZUpTQnVpbHRpbkludGVybmFscy5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJQkMzNDhCRDQwREI3RjgwNDAwNEFCQUJBIC8qIFdlYkNvcmVKU0J1aWx0aW5zLmggaW4g
SGVhZGVycyAqLywKIAkJCQlCQzUzRDkxMTExNDMxMENDMDAwRDgxN0UgLyogV2ViQ29yZUpTQ2xp
ZW50RGF0YS5oIGluIEhlYWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU0RPTUJ1aWx0aW5Db25zdHJ1Y3Rvci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvSlNET01CdWlsdGluQ29uc3RydWN0b3IuaAppbmRleCBmZjdhMDVkM2NiMjJmNzVhZWEw
YjEzYzFlNDk2OGVlMWJkNWJmY2JkLi5kMWUxYmVmYmQ5Yzk1NDQ1NjM0NjVjY2I4OTBkYTQzNTk5
YjdjNjZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUJ1aWx0
aW5Db25zdHJ1Y3Rvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQnVp
bHRpbkNvbnN0cnVjdG9yLmgKQEAgLTM3LDYgKzM3LDggQEAgdGVtcGxhdGU8dHlwZW5hbWUgSlND
bGFzcz4gY2xhc3MgSlNET01CdWlsdGluQ29uc3RydWN0b3IgZmluYWwgOiBwdWJsaWMgSlNET01C
dWkKICAgICAvLyBVc3VhbGx5IGRlZmluZWQgZm9yIGVhY2ggc3BlY2lhbGl6YXRpb24gY2xhc3Mu
CiAgICAgc3RhdGljIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYs
IGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0Jik7CiAKKyAgICBzdGF0aWMgSlNDOjpFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJQlVURVMgY29uc3RydWN0KEpTQzo6SlNHbG9iYWxPYmpl
Y3QqLCBKU0M6OkNhbGxGcmFtZSopOworCiBwcml2YXRlOgogICAgIEpTRE9NQnVpbHRpbkNvbnN0
cnVjdG9yKEpTQzo6U3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9i
YWxPYmplY3QpCiAgICAgICAgIDogQmFzZShzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCkKQEAgLTQ1
LDcgKzQ3LDYgQEAgdGVtcGxhdGU8dHlwZW5hbWUgSlNDbGFzcz4gY2xhc3MgSlNET01CdWlsdGlu
Q29uc3RydWN0b3IgZmluYWwgOiBwdWJsaWMgSlNET01CdWkKIAogICAgIHZvaWQgZmluaXNoQ3Jl
YXRpb24oSlNDOjpWTSYsIEpTRE9NR2xvYmFsT2JqZWN0Jik7CiAgICAgc3RhdGljIEpTQzo6Q2Fs
bERhdGEgZ2V0Q29uc3RydWN0RGF0YShKU0M6OkpTQ2VsbCopOwotICAgIHN0YXRpYyBKU0M6OkVu
Y29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTExfQVRUUklCVVRFUyBjb25zdHJ1Y3QoSlNDOjpKU0ds
b2JhbE9iamVjdCosIEpTQzo6Q2FsbEZyYW1lKik7CiAKICAgICBKU0M6OkVuY29kZWRKU1ZhbHVl
IGNhbGxDb25zdHJ1Y3RvcihKU0M6OkpTR2xvYmFsT2JqZWN0JiwgSlNDOjpDYWxsRnJhbWUmLCBK
U0M6OkpTT2JqZWN0Jik7CiAgICAgSlNDOjpFbmNvZGVkSlNWYWx1ZSBjYWxsQ29uc3RydWN0b3Io
SlNDOjpKU0dsb2JhbE9iamVjdCYsIEpTQzo6Q2FsbEZyYW1lJiwgSlNDOjpKU09iamVjdCopOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01Db25zdHJ1Y3Rvci5o
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01Db25zdHJ1Y3Rvci5oCmluZGV4IGFj
ZjkxOTBlYTc5ZmJhODU3YTZmMGEyNGE3YmQyYzFjMDYzNzYyYTkuLjQ2MjM0ZDJhNGI3YjMyMTg4
OGEwZTI0ZmI5ZTVhZDJkZmEzOTgwMmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTRE9NQ29uc3RydWN0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0RPTUNvbnN0cnVjdG9yLmgKQEAgLTM1LDYgKzM1LDkgQEAgdGVtcGxhdGU8dHlwZW5hbWUg
SlNDbGFzcz4gY2xhc3MgSlNET01Db25zdHJ1Y3RvciBmaW5hbCA6IHB1YmxpYyBKU0RPTUNvbnN0
cnVjdG8KICAgICAvLyBNdXN0IGJlIGRlZmluZWQgZm9yIGVhY2ggc3BlY2lhbGl6YXRpb24gY2xh
c3MuCiAgICAgc3RhdGljIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpW
TSYsIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0Jik7CiAKKyAgICAvLyBNdXN0IGJlIGRlZmluZWQg
Zm9yIGVhY2ggc3BlY2lhbGl6YXRpb24gY2xhc3MuCisgICAgc3RhdGljIEpTQzo6RW5jb2RlZEpT
VmFsdWUgSlNDX0hPU1RfQ0FMTF9BVFRSSUJVVEVTIGNvbnN0cnVjdChKU0M6OkpTR2xvYmFsT2Jq
ZWN0KiwgSlNDOjpDYWxsRnJhbWUqKTsKKwogcHJpdmF0ZToKICAgICBKU0RPTUNvbnN0cnVjdG9y
KEpTQzo6U3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmpl
Y3QpCiAgICAgICAgIDogQmFzZShzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCkKQEAgLTQ2LDggKzQ5
LDYgQEAgdGVtcGxhdGU8dHlwZW5hbWUgSlNDbGFzcz4gY2xhc3MgSlNET01Db25zdHJ1Y3RvciBm
aW5hbCA6IHB1YmxpYyBKU0RPTUNvbnN0cnVjdG8KIAogICAgIC8vIFVzdWFsbHkgZGVmaW5lZCBm
b3IgZWFjaCBzcGVjaWFsaXphdGlvbiBjbGFzcy4KICAgICB2b2lkIGluaXRpYWxpemVQcm9wZXJ0
aWVzKEpTQzo6Vk0mLCBKU0RPTUdsb2JhbE9iamVjdCYpIHsgfQotICAgIC8vIE11c3QgYmUgZGVm
aW5lZCBmb3IgZWFjaCBzcGVjaWFsaXphdGlvbiBjbGFzcy4KLSAgICBzdGF0aWMgSlNDOjpFbmNv
ZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJQlVURVMgY29uc3RydWN0KEpTQzo6SlNHbG9i
YWxPYmplY3QqLCBKU0M6OkNhbGxGcmFtZSopOwogfTsKIAogdGVtcGxhdGU8dHlwZW5hbWUgSlND
bGFzcz4gaW5saW5lIEpTRE9NQ29uc3RydWN0b3I8SlNDbGFzcz4qIEpTRE9NQ29uc3RydWN0b3I8
SlNDbGFzcz46OmNyZWF0ZShKU0M6OlZNJiB2bSwgSlNDOjpTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwg
SlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0pTRE9NTGVnYWN5RmFjdG9yeUZ1bmN0aW9uLmggYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0RPTUxlZ2FjeUZhY3RvcnlGdW5jdGlvbi5oCmluZGV4IDc4MzFi
ZjI4OWVmNjg0NTllNzNmMmYzOTUwMzkxZThiMzhjMWI5MjcuLmEyMWYxZmQ5ODc1NTBkOTMxMjgz
ODFiYjJmMTc0MDM4YjE4ODEwODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTRE9NTGVnYWN5RmFjdG9yeUZ1bmN0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNET01MZWdhY3lGYWN0b3J5RnVuY3Rpb24uaApAQCAtMzYsNiArMzYsOSBAQCB0
ZW1wbGF0ZTx0eXBlbmFtZSBKU0NsYXNzPiBjbGFzcyBKU0RPTUxlZ2FjeUZhY3RvcnlGdW5jdGlv
biBmaW5hbCA6IHB1YmxpYyBKU0RPTQogICAgIC8vIE11c3QgYmUgZGVmaW5lZCBmb3IgZWFjaCBz
cGVjaWFsaXphdGlvbiBjbGFzcy4KICAgICBzdGF0aWMgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZUZv
clN0cnVjdHVyZShKU0M6OlZNJiwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmKTsKIAorICAgIC8v
IE11c3QgYmUgZGVmaW5lZCBmb3IgZWFjaCBzcGVjaWFsaXphdGlvbiBjbGFzcy4KKyAgICBzdGF0
aWMgSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJQlVURVMgY29uc3RydWN0
KEpTQzo6SlNHbG9iYWxPYmplY3QqLCBKU0M6OkNhbGxGcmFtZSopOworCiBwcml2YXRlOgogICAg
IEpTRE9NTGVnYWN5RmFjdG9yeUZ1bmN0aW9uKEpTQzo6U3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpT
RE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiAgICAgICAgIDogQmFzZShzdHJ1Y3R1cmUs
IGdsb2JhbE9iamVjdCkKQEAgLTQ3LDggKzUwLDYgQEAgdGVtcGxhdGU8dHlwZW5hbWUgSlNDbGFz
cz4gY2xhc3MgSlNET01MZWdhY3lGYWN0b3J5RnVuY3Rpb24gZmluYWwgOiBwdWJsaWMgSlNET00K
IAogICAgIC8vIFVzdWFsbHkgZGVmaW5lZCBmb3IgZWFjaCBzcGVjaWFsaXphdGlvbiBjbGFzcy4K
ICAgICB2b2lkIGluaXRpYWxpemVQcm9wZXJ0aWVzKEpTQzo6Vk0mLCBKU0RPTUdsb2JhbE9iamVj
dCYpIHsgfQotICAgIC8vIE11c3QgYmUgZGVmaW5lZCBmb3IgZWFjaCBzcGVjaWFsaXphdGlvbiBj
bGFzcy4KLSAgICBzdGF0aWMgSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJ
QlVURVMgY29uc3RydWN0KEpTQzo6SlNHbG9iYWxPYmplY3QqLCBKU0M6OkNhbGxGcmFtZSopOwog
fTsKIAogdGVtcGxhdGU8dHlwZW5hbWUgSlNDbGFzcz4gaW5saW5lIEpTRE9NTGVnYWN5RmFjdG9y
eUZ1bmN0aW9uPEpTQ2xhc3M+KiBKU0RPTUxlZ2FjeUZhY3RvcnlGdW5jdGlvbjxKU0NsYXNzPjo6
Y3JlYXRlKEpTQzo6Vk0mIHZtLCBKU0M6OlN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2Jh
bE9iamVjdCYgZ2xvYmFsT2JqZWN0KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvU2NyaXB0Q29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9T
Y3JpcHRDb250cm9sbGVyLmNwcAppbmRleCA3MTY1NWViYjM5YTk4OGZlMGFmZTU3ZmUwZDVlNzQy
YTliYjM2ZTBhLi5jNzRlYjEwZWRhOTgzNzhlZWIxMmM5NTMyMGI0M2NhYmJhN2Q3NmYxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHRDb250cm9sbGVyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHRDb250cm9sbGVyLmNwcApAQCAt
NTYsNiArNTYsNyBAQAogI2luY2x1ZGUgIlNjcmlwdGFibGVEb2N1bWVudFBhcnNlci5oIgogI2lu
Y2x1ZGUgIlNldHRpbmdzLmgiCiAjaW5jbHVkZSAiVXNlckdlc3R1cmVJbmRpY2F0b3IuaCIKKyNp
bmNsdWRlICJXZWJDb3JlSklUT3BlcmF0aW9ucy5oIgogI2luY2x1ZGUgIldlYkNvcmVKU0NsaWVu
dERhdGEuaCIKICNpbmNsdWRlICJucHJ1bnRpbWVfaW1wbC5oIgogI2luY2x1ZGUgInJ1bnRpbWVf
cm9vdC5oIgpAQCAtODcsNiArODgsNyBAQCB2b2lkIFNjcmlwdENvbnRyb2xsZXI6OmluaXRpYWxp
emVNYWluVGhyZWFkKCkKICNpZiAhUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICBKU0M6OmluaXRp
YWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAgV2ViQ29yZTo6
cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAjZW5kaWYKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpJVE9wZXJhdGlvbnMuY3BwIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpJVE9wZXJhdGlvbnMuY3BwCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU2
NTU5ODUwYjljOWE0YzU2OTMzMTk5ZWE3MzZkMDE0MTQ1Mjk4MDYKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSklUT3BlcmF0aW9ucy5jcHAKQEAg
LTAsMCArMSw0NyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBt
ZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRl
ICJXZWJDb3JlSklUT3BlcmF0aW9ucy5oIgorCisjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSklU
T3BlcmF0aW9uTGlzdC5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKKyNpZiBFTkFCTEUoSklU
X09QRVJBVElPTl9WQUxJREFUSU9OKQorZXh0ZXJuIGNvbnN0IHVpbnRwdHJfdCBzdGFydE9mSG9z
dEZ1bmN0aW9uc0luV2ViQ29yZSBfX2FzbSgic2VjdGlvbiRzdGFydCRfX0RBVEFfQ09OU1QkX19q
c2NfaG9zdCIpOworZXh0ZXJuIGNvbnN0IHVpbnRwdHJfdCBlbmRPZkhvc3RGdW5jdGlvbnNJbldl
YkNvcmUgX19hc20oInNlY3Rpb24kZW5kJF9fREFUQV9DT05TVCRfX2pzY19ob3N0Iik7CitleHRl
cm4gY29uc3QgdWludHB0cl90IHN0YXJ0T2ZKSVRPcGVyYXRpb25zSW5XZWJDb3JlIF9fYXNtKCJz
ZWN0aW9uJHN0YXJ0JF9fREFUQV9DT05TVCRfX2pzY19vcHMiKTsKK2V4dGVybiBjb25zdCB1aW50
cHRyX3QgZW5kT2ZKSVRPcGVyYXRpb25zSW5XZWJDb3JlIF9fYXNtKCJzZWN0aW9uJGVuZCRfX0RB
VEFfQ09OU1QkX19qc2Nfb3BzIik7CisjZW5kaWYKKwordm9pZCBwb3B1bGF0ZUpJVE9wZXJhdGlv
bnMoKQoreworI2lmIEVOQUJMRShKSVRfT1BFUkFUSU9OX1ZBTElEQVRJT04pCisgICAgSlNDOjpK
SVRPcGVyYXRpb25MaXN0Ojpwb3B1bGF0ZVBvaW50ZXJzSW5FbWJlZGRlcjEoJnN0YXJ0T2ZIb3N0
RnVuY3Rpb25zSW5XZWJDb3JlLCAmZW5kT2ZIb3N0RnVuY3Rpb25zSW5XZWJDb3JlLCAmc3RhcnRP
ZkpJVE9wZXJhdGlvbnNJbldlYkNvcmUsICZlbmRPZkpJVE9wZXJhdGlvbnNJbldlYkNvcmUpOwor
I2VuZGlmCit9CisKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dl
YkNvcmVKSVRPcGVyYXRpb25zLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3Jl
SklUT3BlcmF0aW9ucy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE5MGE4NDI0ODM5NmMxZjYzMDIxN2NkNTg0NTFj
NWIwMGVkN2ZjM2MKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9XZWJDb3JlSklUT3BlcmF0aW9ucy5oCkBAIC0wLDAgKzEsMzIgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoK
KyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRS
SUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICog
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJ
VFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisj
cHJhZ21hIG9uY2UKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitXRUJDT1JFX0VYUE9SVCB2b2lk
IHBvcHVsYXRlSklUT3BlcmF0aW9ucygpOworCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9icmlkZ2Uvb2JqYy9XZWJTY3JpcHRPYmplY3QubW0gYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uv
b2JqYy9XZWJTY3JpcHRPYmplY3QubW0KaW5kZXggYjJlNWNhNThkM2VkYjFlYTkzMzFkZDQ2ODk1
MjExNzY5ZDZkYTdlYy4uM2ExMDYyYTEzMTZhYTQ5ZTc1YmE5MmQzYjNlYjZjNzcxOWFjYmExMSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvV2ViU2NyaXB0T2JqZWN0Lm1t
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL1dlYlNjcmlwdE9iamVjdC5tbQpAQCAt
MzUsNiArMzUsNyBAQAogI2ltcG9ydCAiSlNIVE1MRWxlbWVudC5oIgogI2ltcG9ydCAiSlNQbHVn
aW5FbGVtZW50RnVuY3Rpb25zLmgiCiAjaW1wb3J0ICJPYmpDUnVudGltZU9iamVjdC5oIgorI2lt
cG9ydCAiV2ViQ29yZUpJVE9wZXJhdGlvbnMuaCIKICNpbXBvcnQgIldlYkNvcmVPYmpDRXh0cmFz
LmgiCiAjaW1wb3J0ICJvYmpjX2luc3RhbmNlLmgiCiAjaW1wb3J0ICJydW50aW1lX29iamVjdC5o
IgpAQCAtMTY2LDYgKzE2Nyw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogI2lmICFVU0UoV0VCX1RI
UkVBRCkKICAgICBKU0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhy
ZWFkKCk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAjZW5kaWYKIH0K
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9taml0L0pTRG9jdW1lbnRET01KSVQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvZG9taml0L0pTRG9jdW1lbnRET01KSVQuY3BwCmluZGV4IGY4ZTg1
NGZhMTY2NzVkZDU4MzliMzI1Y2ZlMjhhY2UyZjJhNTM2MzMuLmZmMTZjNWFjMDc0NDViYzI5Yjcz
MTk4YTI2YTBiNWE3NTc4YmZjODAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbWppdC9K
U0RvY3VtZW50RE9NSklULmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb21qaXQvSlNEb2N1bWVu
dERPTUpJVC5jcHAKQEAgLTE0MCw2ICsxNDAsOCBAQCBSZWY8SlNDOjpET01KSVQ6OkNhbGxET01H
ZXR0ZXJTbmlwcGV0PiBjb21waWxlRG9jdW1lbnRCb2R5QXR0cmlidXRlKCkKICAgICByZXR1cm4g
c25pcHBldDsKIH0KIAorbmFtZXNwYWNlIERPTUpJVCB7CisKIGV4dGVybiAiQyIgewogCiBKU0Nf
REVGSU5FX0pJVF9PUEVSQVRJT04ob3BlcmF0aW9uVG9KU0VsZW1lbnQsIEpTQzo6RW5jb2RlZEpT
VmFsdWUsIChKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIHZvaWQqIHJlc3VsdCkp
CkBAIC0xOTQsNiArMTk2LDYgQEAgSlNDX0RFRklORV9KSVRfT1BFUkFUSU9OKG9wZXJhdGlvblRv
SlNDb250YWluZXJOb2RlLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCAoSlNDOjoKIAogfQogCi19Cit9
IH0KIAogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9T
aGFyZWRCdWZmZXJDb2NvYS5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1NoYXJl
ZEJ1ZmZlckNvY29hLm1tCmluZGV4IDhmOGU1MzNlMDQwMzY2ZmMxOWM1NDhjYWY4ZDExNjJmNTA5
ZWFkM2QuLjI4MTAwNTNkZTdjOTcwMjk4M2JkMDQzMDljZDkwZWM0ZTkxNDllMWIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1NoYXJlZEJ1ZmZlckNvY29hLm1tCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1NoYXJlZEJ1ZmZlckNvY29hLm1tCkBA
IC0yNiw2ICsyNiw3IEBACiAjaW1wb3J0ICJjb25maWcuaCIKICNpbXBvcnQgIlNoYXJlZEJ1ZmZl
ci5oIgogCisjaW1wb3J0ICJXZWJDb3JlSklUT3BlcmF0aW9ucy5oIgogI2ltcG9ydCAiV2ViQ29y
ZU9iakNFeHRyYXMuaCIKICNpbXBvcnQgPEphdmFTY3JpcHRDb3JlL0luaXRpYWxpemVUaHJlYWRp
bmcuaD4KICNpbXBvcnQgPHN0cmluZy5oPgpAQCAtNDYsNiArNDcsNyBAQCArICh2b2lkKWluaXRp
YWxpemUKICNpZiAhVVNFKFdFQl9USFJFQUQpCiAgICAgSlNDOjppbml0aWFsaXplKCk7CiAgICAg
V1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3Bl
cmF0aW9ucygpOwogI2VuZGlmIC8vICFVU0UoV0VCX1RIUkVBRCkKIH0KIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL3dhay9XZWJDb3JlVGhyZWFkLm1tIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vaW9zL3dhay9XZWJDb3JlVGhyZWFkLm1tCmluZGV4IDYzOTRiOTdk
NzhhYTEwZTU4MzU0Mzk2NWI1OTdiZDMwOWY5NjMwYzkuLjJmZTM1ZmRmNTAzMzUyMDEyNjk2Mjk0
NzhlNWUyNzVhOTY3NGFjZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lv
cy93YWsvV2ViQ29yZVRocmVhZC5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3Mv
d2FrL1dlYkNvcmVUaHJlYWQubW0KQEAgLTM2LDYgKzM2LDcgQEAKICNpbXBvcnQgIlRocmVhZEds
b2JhbERhdGEuaCIKICNpbXBvcnQgIldBS1dpbmRvdy5oIgogI2ltcG9ydCAiV0tVdGlsaXRpZXMu
aCIKKyNpbXBvcnQgIldlYkNvcmVKSVRPcGVyYXRpb25zLmgiCiAjaW1wb3J0ICJXZWJDb3JlVGhy
ZWFkSW50ZXJuYWwuaCIKICNpbXBvcnQgIldlYkNvcmVUaHJlYWRNZXNzYWdlLmgiCiAjaW1wb3J0
ICJXZWJDb3JlVGhyZWFkUnVuLmgiCkBAIC02MTYsNiArNjE3LDcgQEAgc3RhdGljIHZvaWQqIFJ1
bldlYlRocmVhZCh2b2lkKikKICAgICAvLyA8cmRhcjovL3Byb2JsZW0vODUwMjQ4Nz4uCiAgICAg
V1RGOjppbml0aWFsaXplV2ViVGhyZWFkKCk7CiAgICAgSlNDOjppbml0aWFsaXplKCk7CisgICAg
V2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAgICAgCiAgICAgLy8gTWFrZSBzdXJl
IHRoYXQgdGhlIFdlYlRocmVhZCBhbmQgdGhlIG1haW4gdGhyZWFkIHNoYXJlIHRoZSBzYW1lIFRo
cmVhZEdsb2JhbERhdGEgb2JqZWN0cy4KICAgICBXZWJDb3JlOjp0aHJlYWRHbG9iYWxEYXRhKCku
c2V0V2ViQ29yZVRocmVhZERhdGEoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVk
L0FQSS9jL1dLU3RyaW5nLmNwcCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0FQSS9jL1dLU3RyaW5n
LmNwcAppbmRleCAyNjg1NWI0OGJhNWFhYmZkYjI1MjhiYzAzOWE1MjBiMjBlMWVkYzJmLi4xMGM2
NDhhYmZkNzA5OTRhYzg2NjVmYTE1MDliMTc1ZmViMTczZWY3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1NoYXJlZC9BUEkvYy9XS1N0cmluZy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9TaGFy
ZWQvQVBJL2MvV0tTdHJpbmcuY3BwCkBAIC0yOCw4ICsyOCwxMCBAQAogI2luY2x1ZGUgIldLU3Ry
aW5nUHJpdmF0ZS5oIgogCiAjaW5jbHVkZSAiV0tBUElDYXN0LmgiCisjaW5jbHVkZSAiV2ViS2l0
SklUT3BlcmF0aW9ucy5oIgogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0luaXRpYWxpemVUaHJl
YWRpbmcuaD4KICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9PcGFxdWVKU1N0cmluZy5oPgorI2lu
Y2x1ZGUgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbmNsdWRlIDx3dGYvdW5p
Y29kZS9VVEY4Q29udmVyc2lvbi5oPgogCiBXS1R5cGVJRCBXS1N0cmluZ0dldFR5cGVJRCgpCkBA
IC0xMzQsNSArMTM2LDcgQEAgV0tTdHJpbmdSZWYgV0tTdHJpbmdDcmVhdGVXaXRoSlNTdHJpbmco
SlNTdHJpbmdSZWYganNTdHJpbmdSZWYpCiBKU1N0cmluZ1JlZiBXS1N0cmluZ0NvcHlKU1N0cmlu
ZyhXS1N0cmluZ1JlZiBzdHJpbmdSZWYpCiB7CiAgICAgSlNDOjppbml0aWFsaXplKCk7CisgICAg
V2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CisgICAgV2ViS2l0Ojpwb3B1bGF0ZUpJ
VE9wZXJhdGlvbnMoKTsKICAgICByZXR1cm4gT3BhcXVlSlNTdHJpbmc6OnRyeUNyZWF0ZShXZWJL
aXQ6OnRvSW1wbChzdHJpbmdSZWYpLT5zdHJpbmcoKSkubGVha1JlZigpOwogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvV2ViS2l0MkluaXRpYWxpemVDb2NvYS5tbSBi
L1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL1dlYktpdDJJbml0aWFsaXplQ29jb2EubW0KaW5k
ZXggMTRkMjc5ZjU3ZmQzNGMwMDQwY2ZmOGQ2NjdmNTYxNmM1ZGMwYjU2Zi4uOGVmNzRkZWY0YWJi
ZWU5YTA4YWFiNGU1MzkyMTY5N2I0ZGNmMjEzNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9T
aGFyZWQvQ29jb2EvV2ViS2l0MkluaXRpYWxpemVDb2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0
L1NoYXJlZC9Db2NvYS9XZWJLaXQySW5pdGlhbGl6ZUNvY29hLm1tCkBAIC0yNyw3ICsyNyw5IEBA
CiAjaW1wb3J0ICJXZWJLaXQySW5pdGlhbGl6ZS5oIgogCiAjaW1wb3J0ICJWZXJzaW9uQ2hlY2tz
LmgiCisjaW1wb3J0ICJXZWJLaXRKSVRPcGVyYXRpb25zLmgiCiAjaW1wb3J0IDxKYXZhU2NyaXB0
Q29yZS9Jbml0aWFsaXplVGhyZWFkaW5nLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRP
cGVyYXRpb25zLmg+CiAjaW1wb3J0IDxtdXRleD4KICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+
CiAjaW1wb3J0IDx3dGYvUmVmQ291bnRlZC5oPgpAQCAtNTQsNiArNTYsOSBAQCBzdGF0aWMgdm9p
ZCBydW5Jbml0aWFsaXphdGlvbkNvZGUodm9pZCogPSBudWxscHRyKQogICAgIFdURjo6aW5pdGlh
bGl6ZU1haW5UaHJlYWQoKTsKIAogICAgIFdURjo6UmVmQ291bnRlZEJhc2U6OmVuYWJsZVRocmVh
ZGluZ0NoZWNrc0dsb2JhbGx5KCk7CisKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlv
bnMoKTsKKyAgICBXZWJLaXQ6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogfQogCiB2b2lkIElu
aXRpYWxpemVXZWJLaXQyKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYktp
dDJJbml0aWFsaXplLmNwcCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYktpdDJJbml0aWFsaXpl
LmNwcAppbmRleCA0YTUzZjJjZWRhM2FiOTg1YTcxNDQxMDFhZWY4ZmQ1ZWYwZWQ3MDNiLi42YmZi
OGY2OWQ5NDE2MjgyNzEyNmExNjRkYTZkMjhhZTI5MzgyMzhlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1NoYXJlZC9XZWJLaXQySW5pdGlhbGl6ZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9T
aGFyZWQvV2ViS2l0MkluaXRpYWxpemUuY3BwCkBAIC0yNyw4ICsyNywxMCBAQAogI2luY2x1ZGUg
IldlYktpdDJJbml0aWFsaXplLmgiCiAKICNpbmNsdWRlICJMb2dJbml0aWFsaXphdGlvbi5oIgor
I2luY2x1ZGUgIldlYktpdEpJVE9wZXJhdGlvbnMuaCIKICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29y
ZS9Jbml0aWFsaXplVGhyZWFkaW5nLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9Mb2dJbml0aWFsaXph
dGlvbi5oPgorI2luY2x1ZGUgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbmNs
dWRlIDx3dGYvTWFpblRocmVhZC5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAjaW5j
bHVkZSA8d3RmL1J1bkxvb3AuaD4KQEAgLTQ5LDYgKzUxLDkgQEAgdm9pZCBJbml0aWFsaXplV2Vi
S2l0MigpCiAgICAgV2ViQ29yZTo6aW5pdGlhbGl6ZUxvZ0NoYW5uZWxzSWZOZWNlc3NhcnkoKTsK
ICAgICBXZWJLaXQ6OmluaXRpYWxpemVMb2dDaGFubmVsc0lmTmVjZXNzYXJ5KCk7CiAjZW5kaWYg
Ly8gIUxPR19ESVNBQkxFRCB8fCAhUkVMRUFTRV9MT0dfRElTQUJMRUQKKworICAgIFdlYkNvcmU6
OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOworICAgIFdlYktpdDo6cG9wdWxhdGVKSVRPcGVyYXRp
b25zKCk7CiB9CiAKICNlbmRpZiAvLyAhUExBVEZPUk0oQ09DT0EpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1NoYXJlZC9XZWJLaXRKSVRPcGVyYXRpb25zLmNwcCBiL1NvdXJjZS9XZWJLaXQv
U2hhcmVkL1dlYktpdEpJVE9wZXJhdGlvbnMuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBmZWIwOWQyNjkyZGFm
OTQxODZiMzI4ZDM5MTgyMzBkMzZmNzEzZDMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2Vi
S2l0L1NoYXJlZC9XZWJLaXRKSVRPcGVyYXRpb25zLmNwcApAQCAtMCwwICsxLDQ3IEBACisvKgor
ICogQ29weXJpZ2h0IChDKSAyMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5E
IElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExF
IElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIldlYktpdEpJVE9wZXJhdGlv
bnMuaCIKKworI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0pJVE9wZXJhdGlvbkxpc3QuaD4KKwor
bmFtZXNwYWNlIFdlYktpdCB7CisKKyNpZiBFTkFCTEUoSklUX09QRVJBVElPTl9WQUxJREFUSU9O
KQorZXh0ZXJuIGNvbnN0IHVpbnRwdHJfdCBzdGFydE9mSG9zdEZ1bmN0aW9uc0luV2ViS2l0IF9f
YXNtKCJzZWN0aW9uJHN0YXJ0JF9fREFUQV9DT05TVCRfX2pzY19ob3N0Iik7CitleHRlcm4gY29u
c3QgdWludHB0cl90IGVuZE9mSG9zdEZ1bmN0aW9uc0luV2ViS2l0IF9fYXNtKCJzZWN0aW9uJGVu
ZCRfX0RBVEFfQ09OU1QkX19qc2NfaG9zdCIpOworZXh0ZXJuIGNvbnN0IHVpbnRwdHJfdCBzdGFy
dE9mSklUT3BlcmF0aW9uc0luV2ViS2l0IF9fYXNtKCJzZWN0aW9uJHN0YXJ0JF9fREFUQV9DT05T
VCRfX2pzY19vcHMiKTsKK2V4dGVybiBjb25zdCB1aW50cHRyX3QgZW5kT2ZKSVRPcGVyYXRpb25z
SW5XZWJLaXQgX19hc20oInNlY3Rpb24kZW5kJF9fREFUQV9DT05TVCRfX2pzY19vcHMiKTsKKyNl
bmRpZgorCit2b2lkIHBvcHVsYXRlSklUT3BlcmF0aW9ucygpCit7CisjaWYgRU5BQkxFKEpJVF9P
UEVSQVRJT05fVkFMSURBVElPTikKKyAgICBKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6OnBvcHVsYXRl
UG9pbnRlcnNJbkVtYmVkZGVyMigmc3RhcnRPZkhvc3RGdW5jdGlvbnNJbldlYktpdCwgJmVuZE9m
SG9zdEZ1bmN0aW9uc0luV2ViS2l0LCAmc3RhcnRPZkpJVE9wZXJhdGlvbnNJbldlYktpdCwgJmVu
ZE9mSklUT3BlcmF0aW9uc0luV2ViS2l0KTsKKyNlbmRpZgorfQorCit9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJLaXRKSVRPcGVyYXRpb25zLmggYi9Tb3VyY2UvV2ViS2l0
L1NoYXJlZC9XZWJLaXRKSVRPcGVyYXRpb25zLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODI3YWMyY2ZhYzgzODQ5
YjI0ZmIwM2I0MTE1MDI5ZTRmZmMwNDNiMwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJL
aXQvU2hhcmVkL1dlYktpdEpJVE9wZXJhdGlvbnMuaApAQCAtMCwwICsxLDMyIEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElU
UyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElO
Qy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YK
KyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
CisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisg
Ki8KKworI3ByYWdtYSBvbmNlCisKK25hbWVzcGFjZSBXZWJLaXQgeworCit2b2lkIHBvcHVsYXRl
SklUT3BlcmF0aW9ucygpOworCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NvdXJjZXMu
dHh0IGIvU291cmNlL1dlYktpdC9Tb3VyY2VzLnR4dAppbmRleCBlYzQxMTY2NWExZmUzM2JlNWIx
NjQ4MTQ0ZmRmOTNiZGQxZDRhYTJlLi5iYzJjNDk0M2FlYmU1Y2NhZjhiOTQ3ZWQ3MWFlMDMwZjRm
MzJkOTgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NvdXJjZXMudHh0CisrKyBiL1NvdXJj
ZS9XZWJLaXQvU291cmNlcy50eHQKQEAgLTE5Nyw2ICsxOTcsNyBAQCBTaGFyZWQvV2ViSGl0VGVz
dFJlc3VsdERhdGEuY3BwCiBTaGFyZWQvV2ViSW1hZ2UuY3BwCiBTaGFyZWQvV2ViS2V5Ym9hcmRF
dmVudC5jcHAgQG5vLXVuaWZ5CiBTaGFyZWQvV2ViS2l0MkluaXRpYWxpemUuY3BwIEBuby11bmlm
eQorU2hhcmVkL1dlYktpdEpJVE9wZXJhdGlvbnMuY3BwIEBuby11bmlmeQogU2hhcmVkL1dlYk1l
bW9yeVNhbXBsZXIuY3BwCiBTaGFyZWQvV2ViTW91c2VFdmVudC5jcHAgQG5vLXVuaWZ5CiBTaGFy
ZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViS2l0L1dlYktp
dC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDUzYjY0Zjc1ZWRkNDNjZTk1Zjc2NDEz
NDdkOGE1NzhhMDZiNjQzYWUuLjgzMDk5MDFiMTkzNTFjZjk0NTc2YWM2NDg5NzhjMjg0ZjhlNGE3
ODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKKysrIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
agpAQCAtMTgwMSw2ICsxODAxLDcgQEAKIAkJRTFEMjZBNTMxNzU5NjREOTAwOTVCRkQxIC8qIFdl
YkNvbnRlbnRQcm9jZXNzLnhpYiBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRTFEMjZBNEMxNzU5NjM0RTAwOTVCRkQxIC8qIFdlYkNvbnRlbnRQcm9jZXNz
LnhpYiAqLzsgfTsKIAkJRTFFNTUyQzUxNkFFMDY1RjAwNEVENjUzIC8qIFNhbmRib3hJbml0aWFs
aXphdGlvblBhcmFtZXRlcnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEUxRTU1MkMzMTZBRTA2NUUwMDRFRDY1MyAvKiBTYW5kYm94SW5pdGlhbGl6YXRp
b25QYXJhbWV0ZXJzLmggKi87IH07CiAJCUUxRUU1M0UzMTFGOENGQzAwMENDQkVFNCAvKiBJbmpl
Y3RlZEJ1bmRsZVBhZ2VFZGl0b3JDbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEUxRUU1M0RDMTFGOENGOUYwMENDQkVFNCAvKiBJbmplY3RlZEJ1
bmRsZVBhZ2VFZGl0b3JDbGllbnQuaCAqLzsgfTsKKwkJRTM1ODJDMkIyNTI3RjZBQTAwRDFCNzkw
IC8qIFdlYktpdEpJVE9wZXJhdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEUzNTgyQzJBMjUyN0Y2OUMwMEQxQjc5MCAvKiBXZWJLaXRKSVRPcGVy
YXRpb25zLmggKi87IH07CiAJCUUzODY2QUU1MjM5NzQwMDQwMEY4OEZFOSAvKiBXZWJEZXZpY2VP
cmllbnRhdGlvblVwZGF0ZVByb3ZpZGVyUHJveHkubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMzg2NkFFNDIzOTc0MDA0MDBGODhGRTkgLyogV2ViRGV2
aWNlT3JpZW50YXRpb25VcGRhdGVQcm92aWRlclByb3h5Lm1tICovOyB9OwogCQlFMzg2NkFFNzIz
OTc0MDUzMDBGODhGRTkgLyogV2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92aWRlclByb3h5
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMzg2NkFF
NjIzOTc0MDUzMDBGODhGRTkgLyogV2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92aWRlclBy
b3h5LmggKi87IH07CiAJCUUzODY2QjA4MjM5OUEyRDEwMEY4OEZFOSAvKiBXZWJEZXZpY2VPcmll
bnRhdGlvblVwZGF0ZVByb3ZpZGVyUHJveHlNZXNzYWdlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTM4NjZCMDUyMzk5OTc5QzAwRjg4RkU5IC8qIFdl
YkRldmljZU9yaWVudGF0aW9uVXBkYXRlUHJvdmlkZXJQcm94eU1lc3NhZ2VzLmggKi87IH07CkBA
IC0xODEwLDYgKzE4MTEsNyBAQAogCQlFMzhBMUZDMDIzQTU1MUJGMDBEMjM3NEYgLyogVXNlcklu
dGVyZmFjZUlkaW9tLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRTM4QTFGQkYyM0E1NTFCRjAwRDIzNzRGIC8qIFVzZXJJbnRlcmZhY2VJZGlvbS5tbSAq
LzsgfTsKIAkJRTM5NjI4REQyMzk2MENDNjAwNjU4RUNEIC8qIFdlYkRldmljZU9yaWVudGF0aW9u
VXBkYXRlUHJvdmlkZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEUzOTYyOERCMjM5NjBDQzUwMDY1OEVDRCAvKiBXZWJEZXZpY2VPcmllbnRhdGlvblVw
ZGF0ZVByb3ZpZGVyLmggKi87IH07CiAJCUUzOTYyOERFMjM5NjBDQzYwMDY1OEVDRCAvKiBXZWJE
ZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3ZpZGVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzOTYyOERDMjM5NjBDQzYwMDY1OEVDRCAvKiBXZWJE
ZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3ZpZGVyLmNwcCAqLzsgfTsKKwkJRTNDODQ2N0MyNTI3
RjlERTAwNTRGRDlDIC8qIFdlYktpdEpJVE9wZXJhdGlvbnMuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTM1ODJDMjkyNTI3RjY5QjAwRDFCNzkwIC8q
IFdlYktpdEpJVE9wZXJhdGlvbnMuY3BwICovOyB9OwogCQlFM0NBQUE0NDI0MTMyNzk5MDBDRUQy
RTIgLyogQWNjZXNzaWJpbGl0eVN1cHBvcnRTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzQ0FBQTQzMjQxMzI3OEEwMENFRDJFMiAvKiBBY2Nlc3Np
YmlsaXR5U3VwcG9ydFNQSS5oICovOyB9OwogCQlFNDEzRjU5RDFBQzFBREM0MDAzNDUzNjAgLyog
TmV0d29ya0NhY2hlRW50cnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEU0MTNGNTlCMUFDMUFEQjYwMDM0NTM2MCAvKiBOZXR3b3JrQ2FjaGVFbnRyeS5o
ICovOyB9OwogCQlFNDJFMDYxMDFBQTc1MjNCMDBCMTE2OTkgLyogTmV0d29ya0NhY2hlSU9DaGFu
bmVsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNDJF
MDYwQjFBQTc0NDBEMDBCMTE2OTkgLyogTmV0d29ya0NhY2hlSU9DaGFubmVsLmggKi87IH07CkBA
IC01MjgyLDYgKzUyODQsOCBAQAogCQlFMUVFNTNEQzExRjhDRjlGMDBDQ0JFRTQgLyogSW5qZWN0
ZWRCdW5kbGVQYWdlRWRpdG9yQ2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEluamVjdGVkQnVuZGxlUGFnZUVkaXRvckNsaWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQlFMUVFNTNFNjExRjhDRkZCMDBDQ0JFRTQgLyogSW5qZWN0ZWRCdW5kbGVQYWdl
RWRpdG9yQ2xpZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElu
amVjdGVkQnVuZGxlUGFnZUVkaXRvckNsaWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCUUzNDM5QjYzMjM0NTQ2M0EwMDExREUwQiAvKiBOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rp
b25JbmZvLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IE5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbkluZm8uaDsg
cGF0aCA9IE5ldHdvcmsvTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uSW5mby5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlFMzU4MkMyOTI1MjdGNjlCMDBEMUI3OTAgLyogV2ViS2l0SklU
T3BlcmF0aW9ucy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJL
aXRKSVRPcGVyYXRpb25zLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTM1ODJD
MkEyNTI3RjY5QzAwRDFCNzkwIC8qIFdlYktpdEpJVE9wZXJhdGlvbnMuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViS2l0SklUT3BlcmF0aW9ucy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQlFMzg2NkFFNDIzOTc0MDA0MDBGODhGRTkgLyogV2ViRGV2aWNlT3Jp
ZW50YXRpb25VcGRhdGVQcm92aWRlclByb3h5Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
b2JqY3BwOyBuYW1lID0gV2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92aWRlclByb3h5Lm1t
OyBwYXRoID0gaW9zL1dlYkRldmljZU9yaWVudGF0aW9uVXBkYXRlUHJvdmlkZXJQcm94eS5tbTsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTM4NjZBRTYyMzk3NDA1MzAwRjg4RkU5IC8q
IFdlYkRldmljZU9yaWVudGF0aW9uVXBkYXRlUHJvdmlkZXJQcm94eS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IG5hbWUgPSBXZWJEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3ZpZGVyUHJv
eHkuaDsgcGF0aCA9IGlvcy9XZWJEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3ZpZGVyUHJveHku
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTM4NjZBRUQyMzk4NDcxQTAwRjg4RkU5
IC8qIFdlYkRldmljZU9yaWVudGF0aW9uVXBkYXRlUHJvdmlkZXJQcm94eS5tZXNzYWdlcy5pbiAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IG5hbWUgPSBXZWJEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3ZpZGVy
UHJveHkubWVzc2FnZXMuaW47IHBhdGggPSBpb3MvV2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQ
cm92aWRlclByb3h5Lm1lc3NhZ2VzLmluOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAt
NjExNiw2ICs2MTIwLDggQEAKIAkJCQlDMDMzN0REMjEyN0EyQTBFMDA4RkY0RjQgLyogV2ViS2V5
Ym9hcmRFdmVudC5jcHAgKi8sCiAJCQkJQkM5QkE1MDIxNjk3QzQ1MzAwRTQ0NjE2IC8qIFdlYktp
dDJJbml0aWFsaXplLmNwcCAqLywKIAkJCQlCQzlCQTUwMzE2OTdDNDUzMDBFNDQ2MTYgLyogV2Vi
S2l0MkluaXRpYWxpemUuaCAqLywKKwkJCQlFMzU4MkMyOTI1MjdGNjlCMDBEMUI3OTAgLyogV2Vi
S2l0SklUT3BlcmF0aW9ucy5jcHAgKi8sCisJCQkJRTM1ODJDMkEyNTI3RjY5QzAwRDFCNzkwIC8q
IFdlYktpdEpJVE9wZXJhdGlvbnMuaCAqLywKIAkJCQk5MDU2MjBFODEyQkMyNDhCMDAwNzk5QjYg
LyogV2ViTWVtb3J5U2FtcGxlci5jcHAgKi8sCiAJCQkJOTA1NjIwRTkxMkJDMjQ4QjAwMDc5OUI2
IC8qIFdlYk1lbW9yeVNhbXBsZXIuaCAqLywKIAkJCQlDMDMzN0RBRjEyN0EyOEQwMDA4RkY0RjQg
LyogV2ViTW91c2VFdmVudC5jcHAgKi8sCkBAIC0xMTI5Myw2ICsxMTI5OSw3IEBACiAJCQkJMUE2
MjgwQzUxOTE5OTQ5RjAwNkFEOUY5IC8qIFdlYktpdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNC
NjM0NzgxMTZCRjEwNjAwNjAzMjE1IC8qIFdlYktpdDJfQy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
QkM5QkE1MDUxNjk3QzQ1MzAwRTQ0NjE2IC8qIFdlYktpdDJJbml0aWFsaXplLmggaW4gSGVhZGVy
cyAqLywKKwkJCQlFMzU4MkMyQjI1MjdGNkFBMDBEMUI3OTAgLyogV2ViS2l0SklUT3BlcmF0aW9u
cy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMUE2MjgwQzcxOTE5OTUwQzAwNkFEOUY5IC8qIFdlYktp
dFByaXZhdGUuaCBpbiBIZWFkZXJzICovLAogCQkJCUNEMDAzQTUzMTlENDlCNUQwMDVBQkNFMCAv
KiBXZWJNZWRpYUtleVN0b3JhZ2VNYW5hZ2VyLmggaW4gSGVhZGVycyAqLywKIAkJCQk5QjVCRUMy
NjI0MDBGNEE5MDA3MEM2RUYgLyogV2ViTWVkaWFTdHJhdGVneS5oIGluIEhlYWRlcnMgKi8sCkBA
IC0xMzAyOCw2ICsxMzAzNSw3IEBACiAJCQkJMUE2MjgwRjMxOTE5OTgyQTAwNkFEOUY5IC8qIFdl
YktpdC5tIGluIFNvdXJjZXMgKi8sCiAJCQkJMkQ5MkE3OEIyMTJCNkFCMTAwRjQ5M0ZEIC8qIFdl
YktpdDJJbml0aWFsaXplLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUExODFBNzk4MjFBQ0M3NEIw
MDU5QTMxNiAvKiBXZWJLaXRBZGRpdGlvbnMubW0gaW4gU291cmNlcyAqLywKKwkJCQlFM0M4NDY3
QzI1MjdGOURFMDA1NEZEOUMgLyogV2ViS2l0SklUT3BlcmF0aW9ucy5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQk1MUYwNjBFMTE2NTQzMTg1MDBGMzI4MkYgLyogV2ViTUROU1JlZ2lzdGVyTWVzc2Fn
ZVJlY2VpdmVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTJEOTJBNzhDMjEyQjZBQjEwMEY0OTNG
RCAvKiBXZWJNb3VzZUV2ZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxQkE5MjREMTQ4ODMx
MjYwMDYyRURCNSAvKiBXZWJOb3RpZmljYXRpb25NYW5hZ2VyTWVzc2FnZVJlY2VpdmVyLmNwcCBp
biBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvSGlzdG9y
eS9XZWJCYWNrRm9yd2FyZExpc3QubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9IaXN0b3J5
L1dlYkJhY2tGb3J3YXJkTGlzdC5tbQppbmRleCBmMmYxM2ViZjhlNTVjZTE2Yjc2NzRiNTc4ZTgw
ZWY2MDdjMGVjN2U4Li5kNmFmNzU1ZmZhNzM4Yjk5M2Y3Zjc4N2VjM2U4YzNmNGVjZGE3MGYzIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9IaXN0b3J5L1dlYkJhY2tGb3J3YXJk
TGlzdC5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9IaXN0b3J5L1dlYkJhY2tGb3J3
YXJkTGlzdC5tbQpAQCAtNDQsNiArNDQsNyBAQAogI2ltcG9ydCA8V2ViQ29yZS9IaXN0b3J5SXRl
bS5oPgogI2ltcG9ydCA8V2ViQ29yZS9TZXR0aW5ncy5oPgogI2ltcG9ydCA8V2ViQ29yZS9UaHJl
YWRDaGVjay5oPgorI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0aW9ucy5oPgogI2lt
cG9ydCA8V2ViQ29yZS9XZWJDb3JlT2JqQ0V4dHJhcy5oPgogI2ltcG9ydCA8d3RmL0Fzc2VydGlv
bnMuaD4KICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+CkBAIC0xMDAsNiArMTAxLDcgQEAgKyAo
dm9pZClpbml0aWFsaXplCiAjaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAgSlNDOjppbml0
aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOworICAgIFdlYkNvcmU6
OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogI2VuZGlmCiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL0hpc3RvcnkvV2ViSGlzdG9yeUl0ZW0ubW0gYi9Tb3VyY2UvV2Vi
S2l0TGVnYWN5L21hYy9IaXN0b3J5L1dlYkhpc3RvcnlJdGVtLm1tCmluZGV4IGY2ODhkYzg5YTJi
YzVmOTg0N2RmOWZiOWVlNDllZGQ3MDU4ZDYwZDAuLjg3ZTYyOWY5OTQ5ZjEyMTQ4MDRiZmVkNGEw
MmIxNDY3NWU3Y2NiNmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0hpc3Rv
cnkvV2ViSGlzdG9yeUl0ZW0ubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvSGlzdG9y
eS9XZWJIaXN0b3J5SXRlbS5tbQpAQCAtNDcsNiArNDcsNyBAQAogI2ltcG9ydCA8V2ViQ29yZS9I
aXN0b3J5SXRlbS5oPgogI2ltcG9ydCA8V2ViQ29yZS9JbWFnZS5oPgogI2ltcG9ydCA8V2ViQ29y
ZS9UaHJlYWRDaGVjay5oPgorI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0aW9ucy5o
PgogI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlT2JqQ0V4dHJhcy5oPgogI2ltcG9ydCA8d3RmL0Fz
c2VydGlvbnMuaD4KICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+CkBAIC0xMjcsNiArMTI4LDcg
QEAgKyAodm9pZClpbml0aWFsaXplCiAjaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAgSlND
Ojppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOworICAgIFdl
YkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogI2VuZGlmCiB9CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL01pc2MvV2ViQ2FjaGUubW0gYi9Tb3VyY2UvV2ViS2l0
TGVnYWN5L21hYy9NaXNjL1dlYkNhY2hlLm1tCmluZGV4IGFiODMwMWRkY2QwYzA3OTI2OTAzNDYy
Nzg4YTc0NDYwZGEzNWQ1YTEuLmQ4MTc2OTk2NzVlY2ZiYjljMjM2NzkzNWMyMmM1N2M3OGE0YTM0
ZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL01pc2MvV2ViQ2FjaGUubW0K
KysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvTWlzYy9XZWJDYWNoZS5tbQpAQCAtNDAsNiAr
NDAsNyBAQAogI2ltcG9ydCA8V2ViQ29yZS9NZW1vcnlDYWNoZS5oPgogI2ltcG9ydCA8V2ViQ29y
ZS9OZXR3b3JrU3RvcmFnZVNlc3Npb24uaD4KICNpbXBvcnQgPFdlYkNvcmUvU3RvcmFnZVNlc3Np
b25Qcm92aWRlci5oPgorI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0aW9ucy5oPgog
I2ltcG9ydCA8d3RmL01haW5UaHJlYWQuaD4KICNpbXBvcnQgPHd0Zi9SdW5Mb29wLmg+CiAKQEAg
LTY1LDYgKzY2LDcgQEAgKyAodm9pZClpbml0aWFsaXplCiAjaWYgIVBMQVRGT1JNKElPU19GQU1J
TFkpCiAgICAgSlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVh
ZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogI2VuZGlmCiB9CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL01pc2MvV2ViRWxlbWVudERpY3Rp
b25hcnkubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9NaXNjL1dlYkVsZW1lbnREaWN0aW9u
YXJ5Lm1tCmluZGV4IDk5ODI5MDVlMmJhMzNlZDM4MjhiYjc0ODc0MTk3NzkzZjQ0YmZiNDIuLjFm
YjUxOGY4NzRiODNlNjRhZmU1ZmY0OThkMWVmNTFjZTMxODVmYzggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL01pc2MvV2ViRWxlbWVudERpY3Rpb25hcnkubW0KKysrIGIvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvTWlzYy9XZWJFbGVtZW50RGljdGlvbmFyeS5tbQpAQCAtNDEs
NiArNDEsNyBAQAogI2ltcG9ydCA8V2ViQ29yZS9GcmFtZS5oPgogI2ltcG9ydCA8V2ViQ29yZS9I
aXRUZXN0UmVzdWx0Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL0ltYWdlLmg+CisjaW1wb3J0IDxXZWJD
b3JlL1dlYkNvcmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVPYmpD
RXh0cmFzLmg+CiAjaW1wb3J0IDxXZWJLaXRMZWdhY3kvRE9NQ29yZS5oPgogI2ltcG9ydCA8V2Vi
S2l0TGVnYWN5L0RPTUV4dGVuc2lvbnMuaD4KQEAgLTY5LDYgKzcwLDcgQEAgKyAodm9pZClpbml0
aWFsaXplCiAjaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAgSlNDOjppbml0aWFsaXplKCk7
CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRl
SklUT3BlcmF0aW9ucygpOwogI2VuZGlmCiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvbWFjL01pc2MvV2ViSWNvbkRhdGFiYXNlLm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9t
YWMvTWlzYy9XZWJJY29uRGF0YWJhc2UubW0KaW5kZXggNGMxZGNiMjQzZWQzZjRhMWIzMWI5OThh
ZGZkNzJkY2ZmYWQ1NGJkMC4uOWExYjJjYjZjNzk3MGU2YTg4MTY1ODk4ZjI5ZDMwMGQ2YjMwYTEx
ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvTWlzYy9XZWJJY29uRGF0YWJh
c2UubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvTWlzYy9XZWJJY29uRGF0YWJhc2Uu
bW0KQEAgLTM0LDYgKzM0LDcgQEAKICNpbXBvcnQgPEphdmFTY3JpcHRDb3JlL0luaXRpYWxpemVU
aHJlYWRpbmcuaD4KICNpbXBvcnQgPFdlYkNvcmUvSW1hZ2UuaD4KICNpbXBvcnQgPFdlYkNvcmUv
VGhyZWFkQ2hlY2suaD4KKyNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4K
ICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+CiAjaW1wb3J0IDx3dGYvTmV2ZXJEZXN0cm95ZWQu
aD4KICNpbXBvcnQgPHd0Zi9SdW5Mb29wLmg+CkBAIC05OSw2ICsxMDAsNyBAQCArICh2b2lkKWlu
aXRpYWxpemUKIHsKICAgICBKU0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVN
YWluVGhyZWFkKCk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiB9CiAK
ICsgKFdlYkljb25EYXRhYmFzZSAqKXNoYXJlZEljb25EYXRhYmFzZQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvTWlzYy9XZWJTdHJpbmdUcnVuY2F0b3IubW0gYi9Tb3VyY2Uv
V2ViS2l0TGVnYWN5L21hYy9NaXNjL1dlYlN0cmluZ1RydW5jYXRvci5tbQppbmRleCA5OWQ3OWMx
OTY3NTI0MDkyMDIyMzU2N2I3NWM5MGNjNTU2ODEwYjk0Li45OGVjYWE5NDM1NjQ2ZjYwZWFmMTVj
MzQ1MTU2OGM5MjA3MDYzZTEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9N
aXNjL1dlYlN0cmluZ1RydW5jYXRvci5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9N
aXNjL1dlYlN0cmluZ1RydW5jYXRvci5tbQpAQCAtMzIsNiArMzIsNyBAQAogI2ltcG9ydCA8V2Vi
Q29yZS9Gb250Q2FzY2FkZS5oPgogI2ltcG9ydCA8V2ViQ29yZS9Gb250UGxhdGZvcm1EYXRhLmg+
CiAjaW1wb3J0IDxXZWJDb3JlL1N0cmluZ1RydW5jYXRvci5oPgorI2ltcG9ydCA8V2ViQ29yZS9X
ZWJDb3JlSklUT3BlcmF0aW9ucy5oPgogI2ltcG9ydCA8d3RmL01haW5UaHJlYWQuaD4KICNpbXBv
cnQgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgogCkBAIC01Miw2ICs1Myw3IEBAICsgKHZvaWQpaW5p
dGlhbGl6ZQogewogICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1h
aW5UaHJlYWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKIH0KIAog
KyAoTlNTdHJpbmcgKiljZW50ZXJUcnVuY2F0ZVN0cmluZzooTlNTdHJpbmcgKilzdHJpbmcgdG9X
aWR0aDooZmxvYXQpbWF4V2lkdGgKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFj
L1BsdWdpbnMvSG9zdGVkL1dlYkhvc3RlZE5ldHNjYXBlUGx1Z2luVmlldy5tbSBiL1NvdXJjZS9X
ZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvSG9zdGVkL1dlYkhvc3RlZE5ldHNjYXBlUGx1Z2luVmll
dy5tbQppbmRleCA0NzZhNTVlZGExNmUzNGM0ZWRhNjJjNGY5YjYwOWYzMzBlNjIxZGVkLi43NjEx
NzFjZWE3Y2E1ZmE2NzI4YzlkYzAwZDJlYjdiMmQxOGY3NzgwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL0hvc3RlZC9XZWJIb3N0ZWROZXRzY2FwZVBsdWdpblZp
ZXcubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9Ib3N0ZWQvV2ViSG9z
dGVkTmV0c2NhcGVQbHVnaW5WaWV3Lm1tCkBAIC00Nyw2ICs0Nyw3IEBACiAjaW1wb3J0IDxXZWJD
b3JlL1JlbmRlckVtYmVkZGVkT2JqZWN0Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1Jlc291cmNlRXJy
b3IuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZUNBTGF5ZXJFeHRyYXMuaD4KKyNpbXBvcnQg
PFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbXBvcnQgPFdlYkNvcmUvcnVudGlt
ZV9yb290Lmg+CiAjaW1wb3J0IDxwYWwvc3BpL2NvY29hL1F1YXJ0ekNvcmVTUEkuaD4KICNpbXBv
cnQgPHd0Zi9Bc3NlcnRpb25zLmg+CkBAIC0xMDcsNiArMTA4LDcgQEAgKyAodm9pZClpbml0aWFs
aXplCiAjaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAgSlNDOjppbml0aWFsaXplKCk7CiAg
ICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklU
T3BlcmF0aW9ucygpOwogI2VuZGlmCiAgICAgc2VuZFVzZXJDaGFuZ2VOb3RpZmljYXRpb25zKCk7
CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL1dlYkJhc2VO
ZXRzY2FwZVBsdWdpblZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL1dl
YkJhc2VOZXRzY2FwZVBsdWdpblZpZXcubW0KaW5kZXggN2VjNDBjOTk3YWQwNTU2NDExMWY3ODYx
NGE2NzMzYjlkNDAxMjE4ZC4uMmRkYTdiNjM5M2NlY2NkYzljODEyYzYzODM5MTg4ZDZhNDM1ZDE0
OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9XZWJCYXNlTmV0
c2NhcGVQbHVnaW5WaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMv
V2ViQmFzZU5ldHNjYXBlUGx1Z2luVmlldy5tbQpAQCAtNTQsNiArNTQsNyBAQAogI2ltcG9ydCA8
V2ViQ29yZS9SZW5kZXJFbWJlZGRlZE9iamVjdC5oPgogI2ltcG9ydCA8V2ViQ29yZS9SZW5kZXJW
aWV3Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1NlY3VyaXR5T3JpZ2luLmg+CisjaW1wb3J0IDxXZWJD
b3JlL1dlYkNvcmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0IDxXZWJLaXRMZWdhY3kvRE9NUHJp
dmF0ZS5oPgogI2ltcG9ydCA8cGFsL3NwaS9jZy9Db3JlR3JhcGhpY3NTUEkuaD4KICNpbXBvcnQg
PHd0Zi9Bc3NlcnRpb25zLmg+CkBAIC03Miw2ICs3Myw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQog
ewogICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQo
KTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICAgICBXZWJLaXQ6OnNl
bmRVc2VyQ2hhbmdlTm90aWZpY2F0aW9ucygpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0TGVnYWN5L21hYy9QbHVnaW5zL1dlYkJhc2VQbHVnaW5QYWNrYWdlLm1tIGIvU291cmNlL1dl
YktpdExlZ2FjeS9tYWMvUGx1Z2lucy9XZWJCYXNlUGx1Z2luUGFja2FnZS5tbQppbmRleCBhZGU3
YmEyN2E3ZjdmN2QzM2E0YzFmOGVkNjhjMzcwMTEyNzgwMGJhLi5mY2UzY2Y4ZDJkOGQwNjdlNmYx
MzU5MTE0ODI3YjRlNmVmMjM4N2ZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21h
Yy9QbHVnaW5zL1dlYkJhc2VQbHVnaW5QYWNrYWdlLm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvbWFjL1BsdWdpbnMvV2ViQmFzZVBsdWdpblBhY2thZ2UubW0KQEAgLTM0LDYgKzM0LDcgQEAK
ICNpbXBvcnQgIldlYlBsdWdpblBhY2thZ2UuaCIKICNpbXBvcnQgIldlYlR5cGVzSW50ZXJuYWwu
aCIKICNpbXBvcnQgPEphdmFTY3JpcHRDb3JlL0luaXRpYWxpemVUaHJlYWRpbmcuaD4KKyNpbXBv
cnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbXBvcnQgPGFsZ29yaXRobT4K
ICNpbXBvcnQgPG1hY2gtby9hcmNoLmg+CiAjaW1wb3J0IDxtYWNoLW8vZmF0Lmg+CkBAIC02MSw2
ICs2Miw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQog
ICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsK
KyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZgogfQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL1dlYk5ldHNjYXBlUGx1Z2lu
Vmlldy5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvV2ViTmV0c2NhcGVQbHVn
aW5WaWV3Lm1tCmluZGV4IDJjYWVlMmYzMTgxNTdjMWUzMjczZjAxNjBlOTdjNjIwYmVmZjZlNWQu
LmFiZGU4NjFjZmYwMjc3NWIwMWQ1Y2ZiNjUxMjJlNTg0MTIyMjE0MDMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvV2ViTmV0c2NhcGVQbHVnaW5WaWV3Lm1tCisr
KyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvV2ViTmV0c2NhcGVQbHVnaW5WaWV3
Lm1tCkBAIC02OCw2ICs2OCw3IEBACiAjaW1wb3J0IDxXZWJDb3JlL1NjcmlwdENvbnRyb2xsZXIu
aD4KICNpbXBvcnQgPFdlYkNvcmUvU2VjdXJpdHlPcmlnaW4uaD4KICNpbXBvcnQgPFdlYkNvcmUv
VXNlckdlc3R1cmVJbmRpY2F0b3IuaD4KKyNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJh
dGlvbnMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZVVSTFJlc3BvbnNlLmg+CiAjaW1wb3J0
IDxXZWJDb3JlL25wcnVudGltZV9pbXBsLmg+CiAjaW1wb3J0IDxXZWJDb3JlL3J1bnRpbWVfcm9v
dC5oPgpAQCAtMTY0LDYgKzE2NSw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogewogICAgIEpTQzo6
aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJD
b3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICAgICBzZW5kVXNlckNoYW5nZU5vdGlmaWNh
dGlvbnMoKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViQ29y
ZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50Lm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2Vi
Q29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50Lm1tCmluZGV4IDI4Y2ExYjlhYmJlNjQ2ZDllMDQw
YTU2MTY3YmZiMDNkYmNiYTM4MTcuLmFmMWFiMjY5MGM2NDdlNjUwMzlhMDBlNGI2MTEwOTY2MDNm
NGRiZmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0
L1dlYkVkaXRvckNsaWVudC5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3Jl
U3VwcG9ydC9XZWJFZGl0b3JDbGllbnQubW0KQEAgLTc4LDYgKzc4LDcgQEAKICNpbXBvcnQgPFdl
YkNvcmUvVXNlclR5cGluZ0dlc3R1cmVJbmRpY2F0b3IuaD4KICNpbXBvcnQgPFdlYkNvcmUvVmlz
aWJsZVVuaXRzLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvbnRlbnRSZWFkZXIuaD4KKyNpbXBv
cnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2Vi
Q29yZU9iakNFeHRyYXMuaD4KICNpbXBvcnQgPHBhbC9zcGkvY29jb2EvTlNBdHRyaWJ1dGVkU3Ry
aW5nU1BJLmg+CiAjaW1wb3J0IDxwYWwvc3BpL21hYy9OU1NwZWxsQ2hlY2tlclNQSS5oPgpAQCAt
MTQwLDYgKzE0MSw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogI2lmICFQTEFURk9STShJT1NfRkFN
SUxZKQogICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJl
YWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZgogfQog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJG
cmFtZUxvYWRlckNsaWVudC5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBw
b3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lm1tCmluZGV4IGY3MGM4MzBmMzQ0NTFhMDQzN2RmZWY0
MWU5OWYzYzA4NGY4NWQ1NGUuLjZjN2I4ZTZkYmNlZmMxN2Q2OGRkZWQzM2VjMzMxMTZjMGVlYWQ4
MmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dl
YkZyYW1lTG9hZGVyQ2xpZW50Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNv
cmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lm1tCkBAIC0xMTgsNiArMTE4LDcgQEAKICNp
bXBvcnQgPFdlYkNvcmUvU2NyaXB0Q29udHJvbGxlci5oPgogI2ltcG9ydCA8V2ViQ29yZS9TaGFy
ZWRCdWZmZXIuaD4KICNpbXBvcnQgPFdlYkNvcmUvU3VicmVzb3VyY2VMb2FkZXIuaD4KKyNpbXBv
cnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2Vi
Q29yZU9iakNFeHRyYXMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViR0xCbG9ja2xpc3QuaD4KICNp
bXBvcnQgPFdlYkNvcmUvV2ViU2NyaXB0T2JqZWN0UHJpdmF0ZS5oPgpAQCAtMjM0Niw2ICsyMzQ3
LDcgQEAgKyAodm9pZClpbml0aWFsaXplCiAjaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAg
SlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOworICAg
IFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogI2VuZGlmCiB9CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViQXJjaGl2ZS5tbSBiL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViQXJjaGl2ZS5tbQppbmRleCBiMjM3Yzk4NWRk
MTgyYjQ0MDQ2N2RhNWMwYWY5ODQwYWVjOThlMGJiLi4yNTljN2U5ZWE2ZDUxYmYwYzc0Njk5N2Rm
YmRhNzk3YzFlYjA4OGE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJW
aWV3L1dlYkFyY2hpdmUubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9X
ZWJBcmNoaXZlLm1tCkBAIC0zNyw2ICszNyw3IEBACiAjaW1wb3J0IDxXZWJDb3JlL0FyY2hpdmVS
ZXNvdXJjZS5oPgogI2ltcG9ydCA8V2ViQ29yZS9MZWdhY3lXZWJBcmNoaXZlLmg+CiAjaW1wb3J0
IDxXZWJDb3JlL1RocmVhZENoZWNrLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVy
YXRpb25zLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVPYmpDRXh0cmFzLmg+CiAjaW1wb3J0
IDx3dGYvTWFpblRocmVhZC5oPgogI2ltcG9ydCA8d3RmL1J1bkxvb3AuaD4KQEAgLTcxLDYgKzcy
LDcgQEAgKyAodm9pZClpbml0aWFsaXplCiAjaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAg
SlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOworICAg
IFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogI2VuZGlmCiB9CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViRGF0YVNvdXJjZS5tbSBiL1Nv
dXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViRGF0YVNvdXJjZS5tbQppbmRleCBkNzc3
MjY0OGM0OGQ5ZmFlYTI3NmRmYTI2NWNhNmEwYjA1NjIyY2RjLi4xYjU5NzE2NDY4NTNhNmQxNmJh
NjI4NmUwY2EzZmIzZmJkZjEzZjQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21h
Yy9XZWJWaWV3L1dlYkRhdGFTb3VyY2UubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMv
V2ViVmlldy9XZWJEYXRhU291cmNlLm1tCkBAIC01NSw2ICs1NSw3IEBACiAjaW1wb3J0IDxXZWJD
b3JlL01JTUVUeXBlUmVnaXN0cnkuaD4KICNpbXBvcnQgPFdlYkNvcmUvUmVzb3VyY2VSZXF1ZXN0
Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1NoYXJlZEJ1ZmZlci5oPgorI2ltcG9ydCA8V2ViQ29yZS9X
ZWJDb3JlSklUT3BlcmF0aW9ucy5oPgogI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlT2JqQ0V4dHJh
cy5oPgogI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlVVJMUmVzcG9uc2UuaD4KICNpbXBvcnQgPFdl
YktpdExlZ2FjeS9ET01IVE1MLmg+CkBAIC0xNTUsNiArMTU2LDcgQEAgKyAodm9pZClpbml0aWFs
aXplCiAjaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAgICAgIEpTQzo6aW5pdGlhbGl6ZSgp
OwogICAgICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAgICAgIFdlYkNvcmU6
OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogI2VuZGlmCiAgICAgfQogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbSBiL1NvdXJjZS9X
ZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViSFRNTFZpZXcubW0KaW5kZXggNTU4NWYwYzJiZjgz
MzUwNjBhMjY4Y2Q2OTZjYTM0MWVjMGMxYTJiMi4uZWU2NDgxZjM4NjBhN2E3YjUxYTExMDc4ZTQz
MzhkNzA1Y2ZkYWI2MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmll
dy9XZWJIVE1MVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dl
YkhUTUxWaWV3Lm1tCkBAIC0xMjcsNiArMTI3LDcgQEAKICNpbXBvcnQgPFdlYkNvcmUvVGV4dEFs
dGVybmF0aXZlV2l0aFJhbmdlLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1RleHRJbmRpY2F0b3IuaD4K
ICNpbXBvcnQgPFdlYkNvcmUvVGV4dFVuZG9JbnNlcnRpb25NYXJrdXBNYWMuaD4KKyNpbXBvcnQg
PFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViQ29y
ZU5TRm9udE1hbmFnZXJFeHRyYXMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZU9iakNFeHRy
YXMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViTlNBdHRyaWJ1dGVkU3RyaW5nRXh0cmFzLmg+CkBA
IC0xMDMzLDYgKzEwMzQsNyBAQCArICh2b2lkKWluaXRpYWxpemUKIAogICAgIEpTQzo6aW5pdGlh
bGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJDb3JlOjpw
b3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKIAogICAgIGlmICghb2xkU2V0Q3Vyc29yRm9yTW91c2VM
b2NhdGlvbklNUCkgewogICAgICAgICBNZXRob2Qgc2V0Q3Vyc29yTWV0aG9kID0gY2xhc3NfZ2V0
SW5zdGFuY2VNZXRob2QoW05TV2luZG93IGNsYXNzXSwgQHNlbGVjdG9yKF9zZXRDdXJzb3JGb3JN
b3VzZUxvY2F0aW9uOikpOwpAQCAtMjU2OCw2ICsyNTcwLDcgQEAgKyAodm9pZClpbml0aWFsaXpl
CiAKICAgICBKU0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFk
KCk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiB9CiAKICNlbmRpZgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNl
cy5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW0K
aW5kZXggNjAzZjBhNzJiMzgwYjM2YTlhOGQwY2UzNjcwNTg2OTBmZDBiMjdhMi4uMzE0NzA1MjBk
YzQyYmY1ODRmNDczOTAyNjI0ZmZiYWU5NzA5NTg1MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dExlZ2FjeS9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlcy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0
TGVnYWN5L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzLm1tCkBAIC00OCw2ICs0OCw3IEBACiAj
aW1wb3J0IDxXZWJDb3JlL1J1bnRpbWVBcHBsaWNhdGlvbkNoZWNrcy5oPgogI2ltcG9ydCA8V2Vi
Q29yZS9TZXR0aW5ncy5oPgogI2ltcG9ydCA8V2ViQ29yZS9UZXh0RW5jb2RpbmdSZWdpc3RyeS5o
PgorI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0aW9ucy5oPgogI2ltcG9ydCA8cGFs
L3NwaS9jZi9DRk5ldHdvcmtTUEkuaD4KICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+CiAjaW1w
b3J0IDx3dGYvUmV0YWluUHRyLmg+CkBAIC0zNzYsNiArMzc3LDcgQEAgKyAodm9pZClpbml0aWFs
aXplCiAjaWYgUExBVEZPUk0oTUFDKQogICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6
aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlv
bnMoKTsKICNlbmRpZgogCiAgICAgTlNEaWN0aW9uYXJ5ICpkaWN0ID0gW05TRGljdGlvbmFyeSBk
aWN0aW9uYXJ5V2l0aE9iamVjdHNBbmRLZXlzOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExl
Z2FjeS9tYWMvV2ViVmlldy9XZWJSZXNvdXJjZS5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFj
L1dlYlZpZXcvV2ViUmVzb3VyY2UubW0KaW5kZXggNDQ3ZTJhMWE5OTIyMzg3MDgyM2FkMjcwMjk5
YTE3MDI0NzcyMDZmYi4uZWYxMDk4NmRhODc1M2FiMzEwOWUwYWYxNjIxYjMwMTJmNGU5ZTZhNiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJSZXNvdXJjZS5t
bQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlJlc291cmNlLm1tCkBA
IC00MCw2ICs0MCw3IEBACiAjaW1wb3J0IDxXZWJDb3JlL1J1bnRpbWVBcHBsaWNhdGlvbkNoZWNr
cy5oPgogI2ltcG9ydCA8V2ViQ29yZS9UZXh0RW5jb2RpbmcuaD4KICNpbXBvcnQgPFdlYkNvcmUv
VGhyZWFkQ2hlY2suaD4KKyNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4K
ICNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZU9iakNFeHRyYXMuaD4KICNpbXBvcnQgPFdlYkNvcmUv
V2ViQ29yZVVSTFJlc3BvbnNlLmg+CiAjaW1wb3J0IDx3dGYvTWFpblRocmVhZC5oPgpAQCAtNjks
NiArNzAsNyBAQCArICh2b2lkKWluaXRpYWxpemUKICNpZiAhUExBVEZPUk0oSU9TX0ZBTUlMWSkK
ICAgICBKU0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7
CisgICAgV2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAjZW5kaWYKIH0KIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJUZXh0SXRlcmF0b3Iu
bW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlRleHRJdGVyYXRvci5tbQpp
bmRleCBkM2FkOTE4ZGE3ZWUzZjZmNThmNDA5MDNjN2UxN2Q2YTY2ZTM4N2ExLi5hYmE3MWFmMjU0
MzE5NWY1NjUwYjcxZTA3NTQyZjNjNzExNDdhYTdmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
TGVnYWN5L21hYy9XZWJWaWV3L1dlYlRleHRJdGVyYXRvci5tbQorKysgYi9Tb3VyY2UvV2ViS2l0
TGVnYWN5L21hYy9XZWJWaWV3L1dlYlRleHRJdGVyYXRvci5tbQpAQCAtMzEsNiArMzEsNyBAQAog
I2ltcG9ydCA8SmF2YVNjcmlwdENvcmUvSW5pdGlhbGl6ZVRocmVhZGluZy5oPgogI2ltcG9ydCA8
V2ViQ29yZS9SYW5nZS5oPgogI2ltcG9ydCA8V2ViQ29yZS9UZXh0SXRlcmF0b3IuaD4KKyNpbXBv
cnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbXBvcnQgPHd0Zi9NYWluVGhy
ZWFkLmg+CiAjaW1wb3J0IDx3dGYvUnVuTG9vcC5oPgogI2ltcG9ydCA8d3RmL1ZlY3Rvci5oPgpA
QCAtNDksNiArNTAsNyBAQCArICh2b2lkKWluaXRpYWxpemUKICNpZiAhUExBVEZPUk0oSU9TX0ZB
TUlMWSkKICAgICBKU0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhy
ZWFkKCk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAjZW5kaWYKIH0K
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3Lm1t
IGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCmluZGV4IDYyMzVk
MmMxZWQ2YTYwNWM2ZGIzMjEwYmFlMDEwYzBhZTJiMTU4MDQuLmM4MWE2NjRkMjY5MTQ1MGMyMjkx
NzY4MmQzZDQ3YTY2OGQ3ZmZmNDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFj
L1dlYlZpZXcvV2ViVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3
L1dlYlZpZXcubW0KQEAgLTIyMSw2ICsyMjEsNyBAQAogI2ltcG9ydCA8V2ViQ29yZS9Vc2VyU2Ny
aXB0Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1VzZXJTdHlsZVNoZWV0Lmg+CiAjaW1wb3J0IDxXZWJD
b3JlL1ZhbGlkYXRpb25CdWJibGUuaD4KKyNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJh
dGlvbnMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZU9iakNFeHRyYXMuaD4KICNpbXBvcnQg
PFdlYkNvcmUvV2ViQ29yZVZpZXcuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViVmlld1Zpc3VhbElk
ZW50aWZpY2F0aW9uT3ZlcmxheS5oPgpAQCAtNTI0NCw2ICs1MjQ1LDcgQEAgKyAodm9pZClpbml0
aWFsaXplCiAjaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAgSlNDOjppbml0aWFsaXplKCk7
CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRl
SklUT3BlcmF0aW9ucygpOwogI2VuZGlmCiAKICAgICBXVEY6OlJlZkNvdW50ZWRCYXNlOjplbmFi
bGVUaHJlYWRpbmdDaGVja3NHbG9iYWxseSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExl
Z2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3RGF0YS5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFj
L1dlYlZpZXcvV2ViVmlld0RhdGEubW0KaW5kZXggZmNlNGE2NjQ2NmQ4ZmZiNjRiNjIxMjU5MDMw
MWViMjQzYmE4OTQ2Ni4uNGRkMzlkNjZkZTQyZTQ5ZmFkYWQ0YWVjNzg4YjE0ZDJmZGQxZTVkZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3RGF0YS5t
bQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXdEYXRhLm1tCkBA
IC00MCw2ICs0MCw3IEBACiAjaW1wb3J0IDxXZWJDb3JlL1J1bkxvb3BPYnNlcnZlci5oPgogI2lt
cG9ydCA8V2ViQ29yZS9UZXh0SW5kaWNhdG9yV2luZG93Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1Zh
bGlkYXRpb25CdWJibGUuaD4KKyNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMu
aD4KICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+CiAjaW1wb3J0IDx3dGYvUnVuTG9vcC5oPgog
CkBAIC0xNjksNiArMTcwLDcgQEAgKyAodm9pZClpbml0aWFsaXplCiAjaWYgIVBMQVRGT1JNKElP
U19GQU1JTFkpCiAgICAgSlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFsaXplTWFp
blRocmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogI2VuZGlm
CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYktpdENsYXNzRmFj
dG9yeS5jcHAgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9XZWJLaXRDbGFzc0ZhY3RvcnkuY3Bw
CmluZGV4IDBhOWFjMTFjZDI2NmU4OTlkZTNlYzljOTAzMTNjZmE3Y2JiZTQ2ODAuLmNlODYyMGZk
NGJkNzdjN2VlZjhkYjhkNzQ2NDNmOTUyYTNhZjFhNTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXRMZWdhY3kvd2luL1dlYktpdENsYXNzRmFjdG9yeS5jcHAKKysrIGIvU291cmNlL1dlYktpdExl
Z2FjeS93aW4vV2ViS2l0Q2xhc3NGYWN0b3J5LmNwcApAQCAtNTYsNiArNTYsNyBAQAogI2luY2x1
ZGUgIldlYlZpZXcuaCIKICNpbmNsdWRlICJXZWJXb3JrZXJzUHJpdmF0ZS5oIgogI2luY2x1ZGUg
PEphdmFTY3JpcHRDb3JlL0luaXRpYWxpemVUaHJlYWRpbmcuaD4KKyNpbmNsdWRlIDxXZWJDb3Jl
L1dlYkNvcmVKSVRPcGVyYXRpb25zLmg+CiAjaW5jbHVkZSA8d3RmL01haW5UaHJlYWQuaD4KICNp
bmNsdWRlIDx3dGYvU29mdExpbmtpbmcuaD4KIApAQCAtNjUsNiArNjYsNyBAQCBXZWJLaXRDbGFz
c0ZhY3Rvcnk6OldlYktpdENsYXNzRmFjdG9yeShDTFNJRCB0YXJnZXRDbGFzcykKIHsKICAgICBK
U0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAg
V2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAKICAgICBnQ2xhc3NDb3VudCsrOwog
ICAgIGdDbGFzc05hbWVDb3VudCgpLmFkZCgiV2ViS2l0Q2xhc3NGYWN0b3J5Iik7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9XZWJWaWV3LmNwcCBiL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvd2luL1dlYlZpZXcuY3BwCmluZGV4IDkzYWIzYWZmYTA1MzhlYjUzZTRhZGY0ZTZlNmU5
OGIyMWFlYzIzYjMuLmNiMzhjMjRlOTkyZjEwYjdhNDg5ZjczMmU0NTlmYWZiN2E2YWRkMTYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYlZpZXcuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvd2luL1dlYlZpZXcuY3BwCkBAIC0xNjcsNiArMTY3LDcgQEAKICNpbmNs
dWRlIDxXZWJDb3JlL1VzZXJDb250ZW50Q29udHJvbGxlci5oPgogI2luY2x1ZGUgPFdlYkNvcmUv
VXNlclNjcmlwdC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvVXNlclN0eWxlU2hlZXQuaD4KKyNpbmNs
dWRlIDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25zLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9X
ZWJDb3JlVGV4dFJlbmRlcmVyLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9XaW5kb3dNZXNzYWdlQnJv
YWRjYXN0ZXIuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1dpbmRvd3NUb3VjaC5oPgpAQCAtNDIzLDYg
KzQyNCw3IEBAIFdlYlZpZXc6OldlYlZpZXcoKQogICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAg
IFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKICAgICBXVEY6OnNldFByb2Nlc3NQcml2aWxl
Z2VzKGFsbFByaXZpbGVnZXMoKSk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25z
KCk7CiAgICAgV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpwZXJtaXRQcm9jZXNzVG9V
c2VDb29raWVBUEkodHJ1ZSk7CiAKICAgICBtX2JhY2tpbmdTdG9yZVNpemUuY3ggPSBtX2JhY2tp
bmdTdG9yZVNpemUuY3kgPSAwOwo=
</data>
<flag name="review"
          id="426321"
          type_id="1"
          status="+"
          setter="saam"
    />
    <flag name="commit-queue"
          id="426328"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>410404</attachid>
            <date>2020-10-02 19:24:56 -0700</date>
            <delta_ts>2020-10-02 19:27:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-217261-20201002192455.patch</filename>
            <type>text/plain</type>
            <size>90804</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY3OTEzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA3
ZjViNWFmMGQ2NTAxNTVlY2NjZTAwYzdjYTRjZGFlN2ExMTliMDI5Li40MDU2YmU5OTM2NTcwYTYy
NDU3MjEyNjIxMTRkOGRjODBmMjNhNjJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw1NCBAQAorMjAyMC0xMC0wMiAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIEludHJvZHVjZSBKSVRPcGVyYXRpb25MaXN0IHRvIHZhbGlkYXRl
IEpJVC1jYWdlZCBwb2ludGVycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjE3MjYxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FhbSBCYXJhdGkuCisK
KyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIEpJVE9wZXJhdGlvbkxpc3QsIHdoaWNoIG1hbmFnZXMg
YWxsIHRoZSBob3N0LWZ1bmN0aW9uICYgaml0LW9wZXJhdGlvbiBwb2ludGVycy4KKyAgICAgICAg
QW5kIHdlIGNhbiBub3cgcXVlcnkgd2hldGhlciB0aGUgZ2l2ZW4gcG9pbnRlciBpcyByZWdpc3Rl
cmVkIGluIHRoaXMgdGFibGUuCisgICAgICAgIEN1cnJlbnRseSwgYXMgYSB0ZXN0LCB3ZSBhcmUg
dmVyaWZ5aW5nIHRoYXQgaG9zdC1mdW5jdGlvbiBpcyByZWdpc3RlcmVkIGluIHRoaXMgdGFibGUg
d2hlbiBjcmVhdGluZyBOYXRpdmVFeGVjdXRhYmxlIGluIGRlYnVnIGJ1aWxkLgorCisgICAgICAg
ICogQ01ha2VMaXN0cy50eHQ6CisgICAgICAgICogSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBTb3VyY2VzLnR4dDoKKyAgICAgICAgKiBhc3NlbWJs
ZXIvSklUT3BlcmF0aW9uTGlzdC5jcHA6IEFkZGVkLgorICAgICAgICAoSlNDOjpKSVRPcGVyYXRp
b25MaXN0Ojppbml0aWFsaXplKToKKyAgICAgICAgKEpTQzo6YWRkUG9pbnRlcnMpOgorICAgICAg
ICAoSlNDOjpKSVRPcGVyYXRpb25MaXN0Ojpwb3B1bGF0ZVBvaW50ZXJzSW5KYXZhU2NyaXB0Q29y
ZSk6CisgICAgICAgIChKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6OnBvcHVsYXRlUG9pbnRlcnNJbkVt
YmVkZGVyKToKKyAgICAgICAgKiBhc3NlbWJsZXIvSklUT3BlcmF0aW9uTGlzdC5oOiBBZGRlZC4K
KyAgICAgICAgKEpTQzo6SklUT3BlcmF0aW9uTGlzdDo6Y29udGFpbnMgY29uc3QpOgorICAgICAg
ICAoSlNDOjpKSVRPcGVyYXRpb25MaXN0Ojphc3NlcnRJc0hvc3RGdW5jdGlvbik6CisgICAgICAg
IChKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6OmFzc2VydElzSklUT3BlcmF0aW9uKToKKyAgICAgICAg
KEpTQzo6SklUT3BlcmF0aW9uTGlzdDo6aW5zdGFuY2UpOgorICAgICAgICAqIGFzc2VtYmxlci9N
YWNyb0Fzc2VtYmxlckFSTTY0LmNwcDoKKyAgICAgICAgKiBhc3NlbWJsZXIvTWFjcm9Bc3NlbWJs
ZXJBUk12Ny5jcHA6CisgICAgICAgICogYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyTUlQUy5jcHA6
CisgICAgICAgICogYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyWDg2Q29tbW9uLmNwcDoKKyAgICAg
ICAgKiBqc2MuY3BwOgorICAgICAgICAoanNjbWFpbik6CisgICAgICAgICogcnVudGltZS9Jbml0
aWFsaXplVGhyZWFkaW5nLmNwcDoKKyAgICAgICAgKEpTQzo6aW5pdGlhbGl6ZSk6CisgICAgICAg
ICogcnVudGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZUZ1bmN0aW9ucy5oOgor
ICAgICAgICAoSlNDOjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNTZXQpOgorICAgICAg
ICAoSlNDOjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNDb3B5V2l0aGluKToKKyAgICAg
ICAgKEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jSW5jbHVkZXMpOgorICAgICAg
ICAoSlNDOjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNJbmRleE9mKToKKyAgICAgICAg
KEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jSm9pbik6CisgICAgICAgIChKU0M6
OmdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY0xhc3RJbmRleE9mKToKKyAgICAgICAgKEpT
Qzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jQnVmZmVyKToKKyAgICAgICAg
KEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jTGVuZ3RoKToKKyAgICAg
ICAgKEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jQnl0ZUxlbmd0aCk6
CisgICAgICAgIChKU0M6OmdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvR2V0dGVyRnVuY0J5dGVP
ZmZzZXQpOgorICAgICAgICAoSlNDOjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNSZXZl
cnNlKToKKyAgICAgICAgKEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJpdmF0ZUZ1bmNTb3J0
KToKKyAgICAgICAgKEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jU2xpY2UpOgor
ICAgICAgICAoSlNDOjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcml2YXRlRnVuY1N1YmFycmF5Q3Jl
YXRlKToKKyAgICAgICAgKEpTQzo6SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKTogRGVsZXRlZC4K
KyAgICAgICAgKiBydW50aW1lL1ZNLmNwcDoKKyAgICAgICAgKEpTQzo6Vk06OmdldEhvc3RGdW5j
dGlvbik6CisKIDIwMjAtMTAtMDIgIFJvc3MgS2lyc2xpbmcgIDxyb3NzLmtpcnNsaW5nQHNvbnku
Y29tPgogCiAgICAgICAgIFtKU0NdIEFkZCBBcnJheSNpdGVtIHRvIEBAdW5zY29wYWJsZXMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nIGIvU291cmNlL1dURi9DaGFuZ2VMb2cKaW5k
ZXggYjc3MDZmM2RiYjk0MmU5MGNjMDBlZDk4ZDdmMjk0NzE4YjdhNmI0Zi4uMjQ2YjJhYjg2MDEw
OGJmOTBiOTRmMTRhMDcyMDIxNTQ5NWFjNzlmMSAxMDA2NDQKLS0tIGEvU291cmNlL1dURi9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dURi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAyMC0x
MC0wMiAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgorCisgICAgICAgIFtKU0Nd
IEludHJvZHVjZSBKSVRPcGVyYXRpb25MaXN0IHRvIHZhbGlkYXRlIEpJVC1jYWdlZCBwb2ludGVy
cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE3MjYx
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FhbSBCYXJhdGkuCisKKyAgICAgICAgKiB3dGYvUGxh
dGZvcm1DYWxsaW5nQ29udmVudGlvbnMuaDoKKyAgICAgICAgKiB3dGYvUGxhdGZvcm1FbmFibGUu
aDoKKwogMjAyMC0xMC0wMiAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQu
b3JnPgogCiAgICAgICAgIENvcHkgaG9zdCBmcm9tIGJhc2UgZmlsZSBVUkwKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRl
eCBiNmFjZjJmZjg4MjhiZThkNWU4MjQyMWRlYjJkMWJkZmZlMDRmZmJlLi4xNzI0OTM2OGI2ZWIx
NGQ5NTMzMmU5MWQ0NWZlN2FmNGM1ZjFhZWM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzUgQEAK
KzIwMjAtMTAtMDIgIFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFwcGxlLmNvbT4KKworICAgICAg
ICBbSlNDXSBJbnRyb2R1Y2UgSklUT3BlcmF0aW9uTGlzdCB0byB2YWxpZGF0ZSBKSVQtY2FnZWQg
cG9pbnRlcnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIxNzI2MQorCisgICAgICAgIFJldmlld2VkIGJ5IFNhYW0gQmFyYXRpLgorCisgICAgICAgIFdl
IHNob3VsZCBoYXZlIFdlYkNvcmU6OmluaXRpYWxpemUoKS4gSXQgaXMgZmlsZWQgaW4gaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNzI3MC4KKworICAgICAgICAqIEhl
YWRlcnMuY21ha2U6CisgICAgICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NQnVp
bHRpbkNvbnN0cnVjdG9yLmg6CisgICAgICAgICogYmluZGluZ3MvanMvSlNET01Db25zdHJ1Y3Rv
ci5oOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NTGVnYWN5RmFjdG9yeUZ1bmN0aW9uLmg6
CisgICAgICAgICogYmluZGluZ3MvanMvU2NyaXB0Q29udHJvbGxlci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpTY3JpcHRDb250cm9sbGVyOjppbml0aWFsaXplTWFpblRocmVhZCk6CisgICAgICAg
ICogYmluZGluZ3MvanMvV2ViQ29yZUpJVE9wZXJhdGlvbnMuY3BwOiBDb3BpZWQgZnJvbSBTb3Vy
Y2UvV2ViS2l0L1NoYXJlZC9XZWJLaXQySW5pdGlhbGl6ZS5jcHAuCisgICAgICAgIChXZWJDb3Jl
Ojpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL1dlYkNvcmVK
SVRPcGVyYXRpb25zLmg6IENvcGllZCBmcm9tIFNvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYktpdDJJ
bml0aWFsaXplLmNwcC4KKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JK
Uy5wbToKKyAgICAgICAgKEdlbmVyYXRlQ29uc3RydWN0b3JEZWZpbml0aW9ucyk6CisgICAgICAg
ICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMu
Y3BwOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVk
Q29uc3RydWN0b3JzV2l0aFNlcXVlbmNlLmNwcDoKKyAgICAgICAgKiBicmlkZ2Uvb2JqYy9XZWJT
Y3JpcHRPYmplY3QubW06CisgICAgICAgICgrW1dlYlNjcmlwdE9iamVjdCBpbml0aWFsaXplXSk6
CisgICAgICAgICogZG9taml0L0pTRG9jdW1lbnRET01KSVQuY3BwOgorICAgICAgICAqIHBsYXRm
b3JtL2NvY29hL1NoYXJlZEJ1ZmZlckNvY29hLm1tOgorICAgICAgICAoK1tXZWJDb3JlU2hhcmVk
QnVmZmVyRGF0YSBpbml0aWFsaXplXSk6CisgICAgICAgICogcGxhdGZvcm0vaW9zL3dhay9XZWJD
b3JlVGhyZWFkLm1tOgorICAgICAgICAoUnVuV2ViVGhyZWFkKToKKwogMjAyMC0xMC0wMiAgQ2hy
aXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIENhbGxpbmcgc3VzcGVuZCgp
IG9uIGF1ZGlvIGNvbnRleHQgd2l0aCBubyBub2RlIGRvZXMgbm90IHByZXZlbnQgYXV0byB0cmFu
c2l0aW9uIHRvIHJ1bm5pbmcgd2hlbiBmaXJzdCBub2RlIGlzIGNyZWF0ZWQKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXgg
MDA1NGRmZDc4ODE5ZjZkNjNlOTA4OWUyNzI5OTk1MGIwN2M3YTc4NC4uZjdiZTUwNTc0Njc1NzFi
NDYyYmVjN2E1YmRiNWI1N2E5YzVkN2E0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAy
MC0xMC0wMiAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgorCisgICAgICAgIFtK
U0NdIEludHJvZHVjZSBKSVRPcGVyYXRpb25MaXN0IHRvIHZhbGlkYXRlIEpJVC1jYWdlZCBwb2lu
dGVycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE3
MjYxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FhbSBCYXJhdGkuCisKKyAgICAgICAgKiBTaGFy
ZWQvQVBJL2MvV0tTdHJpbmcuY3BwOgorICAgICAgICAoV0tTdHJpbmdDb3B5SlNTdHJpbmcpOgor
ICAgICAgICAqIFNoYXJlZC9Db2NvYS9XZWJLaXQySW5pdGlhbGl6ZUNvY29hLm1tOgorICAgICAg
ICAoV2ViS2l0OjpydW5Jbml0aWFsaXphdGlvbkNvZGUpOgorICAgICAgICAqIFNoYXJlZC9XZWJL
aXQySW5pdGlhbGl6ZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OkluaXRpYWxpemVXZWJLaXQyKToK
KyAgICAgICAgKiBTaGFyZWQvV2ViS2l0SklUT3BlcmF0aW9ucy5jcHA6IENvcGllZCBmcm9tIFNv
dXJjZS9XZWJLaXQvU2hhcmVkL1dlYktpdDJJbml0aWFsaXplLmNwcC4KKyAgICAgICAgKFdlYktp
dDo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKToKKyAgICAgICAgKiBTaGFyZWQvV2ViS2l0SklUT3Bl
cmF0aW9ucy5oOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJLaXQySW5pdGlh
bGl6ZS5jcHAuCisgICAgICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogV2ViS2l0Lnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2o6CisKIDIwMjAtMTAtMDIgIEthdGUgQ2hlbmV5ICA8a2F0aGVy
aW5lX2NoZW5leUBhcHBsZS5jb20+CiAKICAgICAgICAgTXVsdGlwbGUgY2FsbHMgdG8gc3VzcGVu
ZCBtZWRpYSBwbGF5YmFjayBmb3IgdGhlIHNhbWUgcGFnZSBtYXkgcmVzdWx0IGluIHJlc3VtaW5n
IG1lZGlhIHBsYXliYWNrIHRvbyBzb29uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5
L21hYy9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKaW5kZXgg
ZjA3YjA0YTcwMjIwNWQwZmI1OGRmYTcwZjhkYTZjNDI3OTI4YjIyZS4uYTY1YWQ2NTg3ODQ0ZGNl
Y2I2NGJiNDJmODY2OTg0MWNjYWQ5MmMyYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2Fj
eS9tYWMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDUwIEBACisyMDIwLTEwLTAyICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBs
ZS5jb20+CisKKyAgICAgICAgW0pTQ10gSW50cm9kdWNlIEpJVE9wZXJhdGlvbkxpc3QgdG8gdmFs
aWRhdGUgSklULWNhZ2VkIHBvaW50ZXJzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMTcyNjEKKworICAgICAgICBSZXZpZXdlZCBieSBTYWFtIEJhcmF0
aS4KKworICAgICAgICAqIEhpc3RvcnkvV2ViQmFja0ZvcndhcmRMaXN0Lm1tOgorICAgICAgICAo
K1tXZWJCYWNrRm9yd2FyZExpc3QgaW5pdGlhbGl6ZV0pOgorICAgICAgICAqIEhpc3RvcnkvV2Vi
SGlzdG9yeUl0ZW0ubW06CisgICAgICAgICgrW1dlYkhpc3RvcnlJdGVtIGluaXRpYWxpemVdKToK
KyAgICAgICAgKiBNaXNjL1dlYkNhY2hlLm1tOgorICAgICAgICAoK1tXZWJDYWNoZSBpbml0aWFs
aXplXSk6CisgICAgICAgICogTWlzYy9XZWJFbGVtZW50RGljdGlvbmFyeS5tbToKKyAgICAgICAg
KCtbV2ViRWxlbWVudERpY3Rpb25hcnkgaW5pdGlhbGl6ZV0pOgorICAgICAgICAqIE1pc2MvV2Vi
SWNvbkRhdGFiYXNlLm1tOgorICAgICAgICAqIE1pc2MvV2ViU3RyaW5nVHJ1bmNhdG9yLm1tOgor
ICAgICAgICAoK1tXZWJTdHJpbmdUcnVuY2F0b3IgaW5pdGlhbGl6ZV0pOgorICAgICAgICAqIFBs
dWdpbnMvSG9zdGVkL1dlYkhvc3RlZE5ldHNjYXBlUGx1Z2luVmlldy5tbToKKyAgICAgICAgKCtb
V2ViSG9zdGVkTmV0c2NhcGVQbHVnaW5WaWV3IGluaXRpYWxpemVdKToKKyAgICAgICAgKiBQbHVn
aW5zL1dlYkJhc2VOZXRzY2FwZVBsdWdpblZpZXcubW06CisgICAgICAgICogUGx1Z2lucy9XZWJC
YXNlUGx1Z2luUGFja2FnZS5tbToKKyAgICAgICAgKCtbV2ViQmFzZVBsdWdpblBhY2thZ2UgaW5p
dGlhbGl6ZV0pOgorICAgICAgICAqIFBsdWdpbnMvV2ViTmV0c2NhcGVQbHVnaW5WaWV3Lm1tOgor
ICAgICAgICAoK1tXZWJOZXRzY2FwZVBsdWdpblZpZXcgaW5pdGlhbGl6ZV0pOgorICAgICAgICAq
IFdlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5tbToKKyAgICAgICAgKCtbV2ViVW5kb1N0
ZXAgaW5pdGlhbGl6ZV0pOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVy
Q2xpZW50Lm1tOgorICAgICAgICAoK1tXZWJGcmFtZVBvbGljeUxpc3RlbmVyIGluaXRpYWxpemVd
KToKKyAgICAgICAgKiBXZWJWaWV3L1dlYkFyY2hpdmUubW06CisgICAgICAgICgrW1dlYkFyY2hp
dmVQcml2YXRlIGluaXRpYWxpemVdKToKKyAgICAgICAgKiBXZWJWaWV3L1dlYkRhdGFTb3VyY2Uu
bW06CisgICAgICAgICgrW1dlYkRhdGFTb3VyY2UgaW5pdGlhbGl6ZV0pOgorICAgICAgICAqIFdl
YlZpZXcvV2ViSFRNTFZpZXcubW06CisgICAgICAgICgrW1dlYkhUTUxWaWV3UHJpdmF0ZSBpbml0
aWFsaXplXSk6CisgICAgICAgICgrW1dlYkhUTUxWaWV3IGluaXRpYWxpemVdKToKKyAgICAgICAg
KiBXZWJWaWV3L1dlYlByZWZlcmVuY2VzLm1tOgorICAgICAgICAoK1tXZWJQcmVmZXJlbmNlcyBp
bml0aWFsaXplXSk6CisgICAgICAgICogV2ViVmlldy9XZWJSZXNvdXJjZS5tbToKKyAgICAgICAg
KCtbV2ViUmVzb3VyY2VQcml2YXRlIGluaXRpYWxpemVdKToKKyAgICAgICAgKiBXZWJWaWV3L1dl
YlRleHRJdGVyYXRvci5tbToKKyAgICAgICAgKCtbV2ViVGV4dEl0ZXJhdG9yUHJpdmF0ZSBpbml0
aWFsaXplXSk6CisgICAgICAgICogV2ViVmlldy9XZWJWaWV3Lm1tOgorICAgICAgICAoK1tXZWJW
aWV3IGluaXRpYWxpemVdKToKKyAgICAgICAgKiBXZWJWaWV3L1dlYlZpZXdEYXRhLm1tOgorICAg
ICAgICAoK1tXZWJWaWV3UHJpdmF0ZSBpbml0aWFsaXplXSk6CisKIDIwMjAtMTAtMDEgIENocmlz
IER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgYmFzaWMgaW5mcmFzdHJ1
Y3R1cmUgZm9yIEF1ZGlvV29ya2xldApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS93
aW4vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdExlZ2FjeS93aW4vQ2hhbmdlTG9nCmluZGV4IDA0
ZDRhMzk4YjMyN2U0ZDhmZjFjOTE5OTc1YjMyZGY1NDZkOGNiM2UuLmIwZGRiOGRmOWMyMjhkZmZi
OWRkODhkMzcyMTZiZTg5ZTYxZTJhNTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kv
d2luL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxNSBAQAorMjAyMC0xMC0wMiAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUu
Y29tPgorCisgICAgICAgIFtKU0NdIEludHJvZHVjZSBKSVRPcGVyYXRpb25MaXN0IHRvIHZhbGlk
YXRlIEpJVC1jYWdlZCBwb2ludGVycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjE3MjYxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FhbSBCYXJhdGku
CisKKyAgICAgICAgKiBXZWJLaXRDbGFzc0ZhY3RvcnkuY3BwOgorICAgICAgICAoV2ViS2l0Q2xh
c3NGYWN0b3J5OjpXZWJLaXRDbGFzc0ZhY3RvcnkpOgorICAgICAgICAqIFdlYlZpZXcuY3BwOgor
ICAgICAgICAoV2ViVmlldzo6V2ViVmlldyk6CisKIDIwMjAtMTAtMDEgIENocmlzIER1bWV6ICA8
Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgYmFzaWMgaW5mcmFzdHJ1Y3R1cmUgZm9y
IEF1ZGlvV29ya2xldApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NNYWtlTGlz
dHMudHh0IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IDgwMGRl
ZjRhYTllYzI2OTdhNTA0MWI4MGRmMDhlNzEwODYyMzUyM2IuLjViNGM1ODQ4YzU4Y2E2NmJjNjU2
ZWRhYThmZjNjOWNmZjdlY2YwMWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9D
TWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ01ha2VMaXN0cy50eHQK
QEAgLTQ3NCw2ICs0NzQsNyBAQCBzZXQoSmF2YVNjcmlwdENvcmVfUFJJVkFURV9GUkFNRVdPUktf
SEVBREVSUwogICAgIGFzc2VtYmxlci9DUFUuaAogICAgIGFzc2VtYmxlci9Db2RlTG9jYXRpb24u
aAogICAgIGFzc2VtYmxlci9GYXN0SklUUGVybWlzc2lvbnMuaAorICAgIGFzc2VtYmxlci9KSVRP
cGVyYXRpb25MaXN0LmgKICAgICBhc3NlbWJsZXIvTGlua0J1ZmZlci5oCiAgICAgYXNzZW1ibGVy
L01JUFNBc3NlbWJsZXIuaAogICAgIGFzc2VtYmxlci9NSVBTUmVnaXN0ZXJzLmgKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKaW5kZXggMzdmZWJmZjY1YWIzNmIxZTA1ZjM3OGE5ZjQ0NTg0MTll
OGUwNDk2ZC4uNzg5OWQyMDljYjc3MWYxMTQ2NWM2ZDQ0MDYwZWNkYjQ2YWQ1ODZmZCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2oKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE4ODEsNiArMTg4MSw3IEBACiAJCUUzQzY5NEIz
MjMwMjY4NzcwMDZGQkU0MiAvKiBXYXNtT1NSRW50cnlEYXRhLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFM0M2OTRCMTIzMDI2ODczMDA2RkJFNDIgLyog
V2FzbU9TUkVudHJ5RGF0YS5oICovOyB9OwogCQlFM0M3OUNBQjFEQjlBNERDMDBEMUVDQTQgLyog
RE9NSklURWZmZWN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBFM0M3OUNBQTFEQjlBNEQ2MDBEMUVDQTQgLyogRE9NSklURWZmZWN0LmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJRTNDOEVENDMyM0ExREJD
QjAwMTMxOTU4IC8qIElzb0lubGluZWRIZWFwQ2VsbFR5cGUuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzQzhFRDQyMjNBMURCQzUwMDEzMTk1OCAvKiBJ
c29JbmxpbmVkSGVhcENlbGxUeXBlLmggKi87IH07CisJCUUzQ0EzQTRFMjUyN0FCMkYwMDQ4MDJC
RiAvKiBKSVRPcGVyYXRpb25MaXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBFM0NBM0E0QzI1MjdBQjJGMDA0ODAyQkYgLyogSklUT3BlcmF0aW9uTGlz
dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUUz
RDIzOUM5MUI4MjlDMUMwMEJCRUY2NyAvKiBKU01vZHVsZUVudmlyb25tZW50LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFM0QyMzlDNzFCODI5QzFDMDBC
QkVGNjcgLyogSlNNb2R1bGVFbnZpcm9ubWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CiAJCUUzRDM1MTVGMjQxQjg5RDcwMDhEQzE2RSAvKiBNYXJr
ZWRKU1ZhbHVlUmVmQXJyYXkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEUzRDM1MTVEMjQxQjg5Q0UwMDhEQzE2RSAvKiBNYXJrZWRKU1ZhbHVlUmVmQXJy
YXkuaCAqLzsgfTsKIAkJRTNEODc3NzQxRTY1QzBBMDAwQkU5NDVBIC8qIEJ5dGVjb2RlRHVtcGVy
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFM0Q4Nzc3
MjFFNjVDMDg5MDBCRTk0NUEgLyogQnl0ZWNvZGVEdW1wZXIuaCAqLzsgfTsKQEAgLTUxMDcsNiAr
NTEwOCw4IEBACiAJCUUzQzc5Q0FBMURCOUE0RDYwMEQxRUNBNCAvKiBET01KSVRFZmZlY3QuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NSklURWZmZWN0Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUzQzhFRDQxMjNBMURCQzQwMDEzMTk1OCAvKiBJc29IZWFw
Q2VsbFR5cGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSXNvSGVh
cENlbGxUeXBlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTNDOEVENDIyM0Ex
REJDNTAwMTMxOTU4IC8qIElzb0lubGluZWRIZWFwQ2VsbFR5cGUuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSXNvSW5saW5lZEhlYXBDZWxsVHlwZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlFM0NBM0E0QjI1MjdBQjJFMDA0ODAyQkYgLyogSklUT3BlcmF0aW9u
TGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKSVRPcGVyYXRp
b25MaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTNDQTNBNEMyNTI3QUIy
RjAwNDgwMkJGIC8qIEpJVE9wZXJhdGlvbkxpc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSklUT3BlcmF0aW9uTGlzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQlFM0QyMzlDNjFCODI5QzFDMDBCQkVGNjcgLyogSlNNb2R1bGVFbnZpcm9ubWVudC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU01vZHVsZUVudmlyb25tZW50LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTNEMjM5QzcxQjgyOUMxQzAwQkJFRjY3
IC8qIEpTTW9kdWxlRW52aXJvbm1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSlNNb2R1bGVFbnZpcm9ubWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlF
M0QyNjQyNjFEMzhDMDQyMDAwQkUxNzQgLyogQnl0ZWNvZGVHZW5lcmF0b3JpZmljYXRpb24uY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQnl0ZWNvZGVHZW5lcmF0b3Jp
ZmljYXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtODI4NCw2ICs4Mjg3
LDggQEAKIAkJCQkwRjMwRDdCRjFEOTVENjJGMDA1MzA4OUQgLyogQ1BVLmggKi8sCiAJCQkJMEYz
NzMwOEUxQzBDRDY4NTAwMDUyQkZBIC8qIERpc2FsbG93TWFjcm9TY3JhdGNoUmVnaXN0ZXJVc2Fn
ZS5oICovLAogCQkJCTUyNjdDRjgxMjQ5MzE2QUQwMDIyQkY2RCAvKiBGYXN0SklUUGVybWlzc2lv
bnMuaCAqLywKKwkJCQlFM0NBM0E0QjI1MjdBQjJFMDA0ODAyQkYgLyogSklUT3BlcmF0aW9uTGlz
dC5jcHAgKi8sCisJCQkJRTNDQTNBNEMyNTI3QUIyRjAwNDgwMkJGIC8qIEpJVE9wZXJhdGlvbkxp
c3QuaCAqLywKIAkJCQkwRkY0Mjc1NjE1OTE0QTIwMDA0Q0I5RkYgLyogTGlua0J1ZmZlci5jcHAg
Ki8sCiAJCQkJODZEM0IzQzExMDE1OUQ3RjAwMjg2NUU3IC8qIExpbmtCdWZmZXIuaCAqLywKIAkJ
CQkwRkVCM0VDRTE2MjM3RjY3MDBBQjY3QUQgLyogTWFjcm9Bc3NlbWJsZXIuY3BwICovLApAQCAt
OTkwNSw2ICs5OTEwLDcgQEAKIAkJCQk3OUFGMEJFNDFEM0VGRDRDMDBFOTVGQTUgLyogSklUTWF0
aElDSW5saW5lUmVzdWx0LmggaW4gSGVhZGVycyAqLywKIAkJCQlGRTE4N0EwMjFCRkJFNTYxMDAz
OEJCQ0EgLyogSklUTXVsR2VuZXJhdG9yLmggaW4gSGVhZGVycyAqLywKIAkJCQlGRTk5QjI0OTFD
MjRDM0QzMDBDODIxNTkgLyogSklUTmVnR2VuZXJhdG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQlF
M0NBM0E0RTI1MjdBQjJGMDA0ODAyQkYgLyogSklUT3BlcmF0aW9uTGlzdC5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJMEYyNEU1NEQxN0VFMjc0OTAwQUJCMjE3IC8qIEpJVE9wZXJhdGlvbnMuaCBpbiBI
ZWFkZXJzICovLAogCQkJCUZFM0EwNkMwMUMxMTA0MUEwMDM5MEZERCAvKiBKSVRSaWdodFNoaWZ0
R2VuZXJhdG9yLmggaW4gSGVhZGVycyAqLywKIAkJCQkwRjc2NkQzMTE1QUE4MTEyMDA4RjM2M0Ug
LyogSklUU3R1YlJvdXRpbmUuaCBpbiBIZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL1NvdXJjZXMudHh0IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL1NvdXJjZXMu
dHh0CmluZGV4IGNmZTRlZWY3NWRlNjU3NDEwM2RlNTEzMTAzMjJiNzg3MGMxNjdkOWIuLjcxMTQy
MTRkYWQ0ZWYzMTczMGJmZWE4NGYxNmM5Y2JiYzFkOWNjMDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvU291
cmNlcy50eHQKQEAgLTQ2LDYgKzQ2LDcgQEAgQVBJL09wYXF1ZUpTU3RyaW5nLmNwcAogYXNzZW1i
bGVyL0Fic3RyYWN0TWFjcm9Bc3NlbWJsZXIuY3BwCiBhc3NlbWJsZXIvQXNzZW1ibGVyQnVmZmVy
LmNwcAogYXNzZW1ibGVyL0NQVS5jcHAKK2Fzc2VtYmxlci9KSVRPcGVyYXRpb25MaXN0LmNwcAog
YXNzZW1ibGVyL0xpbmtCdWZmZXIuY3BwCiBhc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXIuY3BwCiBh
c3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJBUk02NC5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9hc3NlbWJsZXIvSklUT3BlcmF0aW9uTGlzdC5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvYXNzZW1ibGVyL0pJVE9wZXJhdGlvbkxpc3QuY3BwCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBhNTIy
Yzc2MjBhOTIzOTUwNDhhMzVmMWY5NjlmZGUzYjUyMDZiYmQKLS0tIC9kZXYvbnVsbAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL0pJVE9wZXJhdGlvbkxpc3QuY3BwCkBAIC0w
LDAgKzEsODQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0
OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElO
Qy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLwor
CisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiSklUT3BlcmF0aW9uTGlzdC5oIgorCitu
YW1lc3BhY2UgSlNDIHsKKworTGF6eU5ldmVyRGVzdHJveWVkPEpJVE9wZXJhdGlvbkxpc3Q+IGpp
dE9wZXJhdGlvbkxpc3Q7CisKKyNpZiBFTkFCTEUoSklUX09QRVJBVElPTl9WQUxJREFUSU9OKQor
ZXh0ZXJuIGNvbnN0IHVpbnRwdHJfdCBzdGFydE9mSG9zdEZ1bmN0aW9uc0luSlNDIF9fYXNtKCJz
ZWN0aW9uJHN0YXJ0JF9fREFUQV9DT05TVCRfX2pzY19ob3N0Iik7CitleHRlcm4gY29uc3QgdWlu
dHB0cl90IGVuZE9mSG9zdEZ1bmN0aW9uc0luSlNDIF9fYXNtKCJzZWN0aW9uJGVuZCRfX0RBVEFf
Q09OU1QkX19qc2NfaG9zdCIpOworZXh0ZXJuIGNvbnN0IHVpbnRwdHJfdCBzdGFydE9mSklUT3Bl
cmF0aW9uc0luSlNDIF9fYXNtKCJzZWN0aW9uJHN0YXJ0JF9fREFUQV9DT05TVCRfX2pzY19vcHMi
KTsKK2V4dGVybiBjb25zdCB1aW50cHRyX3QgZW5kT2ZKSVRPcGVyYXRpb25zSW5KU0MgX19hc20o
InNlY3Rpb24kZW5kJF9fREFUQV9DT05TVCRfX2pzY19vcHMiKTsKKyNlbmRpZgorCit2b2lkIEpJ
VE9wZXJhdGlvbkxpc3Q6OmluaXRpYWxpemUoKQoreworICAgIGppdE9wZXJhdGlvbkxpc3QuY29u
c3RydWN0KCk7Cit9CisKKyNpZiBFTkFCTEUoSklUX09QRVJBVElPTl9WQUxJREFUSU9OKQorc3Rh
dGljIEFMV0FZU19JTkxJTkUgdm9pZCBhZGRQb2ludGVycyhIYXNoTWFwPHZvaWQqLCB2b2lkKj4m
IG1hcCwgY29uc3QgdWludHB0cl90KiBiZWdpbkhvc3QsIGNvbnN0IHVpbnRwdHJfdCogZW5kSG9z
dCwgY29uc3QgdWludHB0cl90KiBiZWdpbk9wZXJhdGlvbnMsIGNvbnN0IHVpbnRwdHJfdCogZW5k
T3BlcmF0aW9ucykKK3sKKyAgICBmb3IgKGNvbnN0IHVpbnRwdHJfdCogY3VycmVudCA9IGJlZ2lu
SG9zdDsgY3VycmVudCAhPSBlbmRIb3N0OyArK2N1cnJlbnQpIHsKKyAgICAgICAgdm9pZCogY29k
ZVB0ciA9IHJlbW92ZUNvZGVQdHJUYWcoYml0d2lzZV9jYXN0PHZvaWQqPigqY3VycmVudCkpOwor
ICAgICAgICBhdXRvIHJlc3VsdCA9IG1hcC5hZGQoY29kZVB0ciwgdGFnQ29kZVB0cihjb2RlUHRy
LCBKU0VudHJ5UHRyVGFnKSk7CisgICAgICAgIEFTU0VSVChyZXN1bHQuaXNOZXdFbnRyeSk7Cisg
ICAgfQorICAgIGZvciAoY29uc3QgdWludHB0cl90KiBjdXJyZW50ID0gYmVnaW5PcGVyYXRpb25z
OyBjdXJyZW50ICE9IGVuZE9wZXJhdGlvbnM7ICsrY3VycmVudCkgeworICAgICAgICB2b2lkKiBj
b2RlUHRyID0gcmVtb3ZlQ29kZVB0clRhZyhiaXR3aXNlX2Nhc3Q8dm9pZCo+KCpjdXJyZW50KSk7
CisgICAgICAgIGF1dG8gcmVzdWx0ID0gbWFwLmFkZChjb2RlUHRyLCB0YWdDb2RlUHRyKGNvZGVQ
dHIsIE9wZXJhdGlvblB0clRhZykpOworICAgICAgICBBU1NFUlQocmVzdWx0LmlzTmV3RW50cnkp
OworICAgIH0KK30KKyNlbmRpZgorCit2b2lkIEpJVE9wZXJhdGlvbkxpc3Q6OnBvcHVsYXRlUG9p
bnRlcnNJbkphdmFTY3JpcHRDb3JlKCkKK3sKKyNpZiBFTkFCTEUoSklUX09QRVJBVElPTl9WQUxJ
REFUSU9OKQorICAgIHN0ZDo6b25jZV9mbGFnIG9uY2VLZXk7CisgICAgc3RkOjpjYWxsX29uY2Uo
b25jZUtleSwgW10geworICAgICAgICBpZiAoT3B0aW9uczo6dXNlSklUKCkpCisgICAgICAgICAg
ICBhZGRQb2ludGVycyhqaXRPcGVyYXRpb25MaXN0LT5tX3ZhbGlkYXRlZE9wZXJhdGlvbnMsICZz
dGFydE9mSG9zdEZ1bmN0aW9uc0luSlNDLCAmZW5kT2ZIb3N0RnVuY3Rpb25zSW5KU0MsICZzdGFy
dE9mSklUT3BlcmF0aW9uc0luSlNDLCAmZW5kT2ZKSVRPcGVyYXRpb25zSW5KU0MpOworICAgIH0p
OworI2VuZGlmCit9CisKK3ZvaWQgSklUT3BlcmF0aW9uTGlzdDo6cG9wdWxhdGVQb2ludGVyc0lu
RW1iZWRkZXIoY29uc3QgdWludHB0cl90KiBiZWdpbkhvc3QsIGNvbnN0IHVpbnRwdHJfdCogZW5k
SG9zdCwgY29uc3QgdWludHB0cl90KiBiZWdpbk9wZXJhdGlvbnMsIGNvbnN0IHVpbnRwdHJfdCog
ZW5kT3BlcmF0aW9ucykKK3sKKyAgICBVTlVTRURfUEFSQU0oYmVnaW5Ib3N0KTsKKyAgICBVTlVT
RURfUEFSQU0oZW5kSG9zdCk7CisgICAgVU5VU0VEX1BBUkFNKGJlZ2luT3BlcmF0aW9ucyk7Cisg
ICAgVU5VU0VEX1BBUkFNKGVuZE9wZXJhdGlvbnMpOworI2lmIEVOQUJMRShKSVRfT1BFUkFUSU9O
X1ZBTElEQVRJT04pCisgICAgaWYgKE9wdGlvbnM6OnVzZUpJVCgpKQorICAgICAgICBhZGRQb2lu
dGVycyhqaXRPcGVyYXRpb25MaXN0LT5tX3ZhbGlkYXRlZE9wZXJhdGlvbnMsIGJlZ2luSG9zdCwg
ZW5kSG9zdCwgYmVnaW5PcGVyYXRpb25zLCBlbmRPcGVyYXRpb25zKTsKKyNlbmRpZgorfQorCit9
IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3Nl
bWJsZXIvSklUT3BlcmF0aW9uTGlzdC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxl
ci9KSVRPcGVyYXRpb25MaXN0LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTM5M2EzYjY0NWE0OGRkNWZmMTgxOWM5
YWE5NmE2MjMyMTE3ZTcwNwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9hc3NlbWJsZXIvSklUT3BlcmF0aW9uTGlzdC5oCkBAIC0wLDAgKzEsODAgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElT
JycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJVVE9S
UyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAq
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2lu
Y2x1ZGUgIkpTQ1B0clRhZy5oIgorI2luY2x1ZGUgIk9wdGlvbnMuaCIKKyNpbmNsdWRlIDx3dGYv
SGFzaE1hcC5oPgorI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgorCituYW1lc3BhY2Ug
SlNDIHsKKworY2xhc3MgSklUT3BlcmF0aW9uTGlzdCB7CitwdWJsaWM6CisgICAgc3RhdGljIEpJ
VE9wZXJhdGlvbkxpc3QmIGluc3RhbmNlKCk7CisgICAgc3RhdGljIHZvaWQgaW5pdGlhbGl6ZSgp
OworCisgICAgdm9pZCogY29udGFpbnModm9pZCogcG9pbnRlcikgY29uc3QKKyAgICB7CisgICAg
ICAgIGlmIGNvbnN0ZXhwcihBU1NFUlRfRU5BQkxFRCkKKyAgICAgICAgICAgIHJldHVybiBtX3Zh
bGlkYXRlZE9wZXJhdGlvbnMuZ2V0KHJlbW92ZUNvZGVQdHJUYWcocG9pbnRlcikpOworICAgICAg
ICByZXR1cm4gcG9pbnRlcjsKKyAgICB9CisKKyAgICBzdGF0aWMgdm9pZCBwb3B1bGF0ZVBvaW50
ZXJzSW5KYXZhU2NyaXB0Q29yZSgpOworCisgICAgSlNfRVhQT1JUX1BSSVZBVEUgc3RhdGljIHZv
aWQgcG9wdWxhdGVQb2ludGVyc0luRW1iZWRkZXIoY29uc3QgdWludHB0cl90KiBiZWdpbkhvc3Qs
IGNvbnN0IHVpbnRwdHJfdCogZW5kSG9zdCwgY29uc3QgdWludHB0cl90KiBiZWdpbk9wZXJhdGlv
bnMsIGNvbnN0IHVpbnRwdHJfdCogZW5kT3BlcmF0aW9ucyk7CisKKyAgICAvLyBGSVhNRTogQ3Vy
cmVudGx5LCBhc3NlcnRJc0hvc3RGdW5jdGlvbiBhbmQgYXNzZXJ0SXNKSVRPcGVyYXRpb24gYXJl
IHRoZSBzYW1lLgorICAgIC8vIFdlIHdpbGwgbWFrZSB0aGVtIHdvcmsgaW4gYSBzdWJzZXF1ZW50
IHBhdGNoLgorICAgIHRlbXBsYXRlPHR5cGVuYW1lIFQ+IHN0YXRpYyB2b2lkIGFzc2VydElzSG9z
dEZ1bmN0aW9uKFQgZnVuY3Rpb24pCisgICAgeworICAgICAgICBVTlVTRURfUEFSQU0oZnVuY3Rp
b24pOworI2lmIEVOQUJMRShKSVRfT1BFUkFUSU9OX1ZBTElEQVRJT04pCisgICAgICAgIEFTU0VS
VChmdW5jdGlvbiwgIU9wdGlvbnM6OnVzZUpJVCgpIHx8IEpJVE9wZXJhdGlvbkxpc3Q6Omluc3Rh
bmNlKCkuY29udGFpbnMoYml0d2lzZV9jYXN0PHZvaWQqPihmdW5jdGlvbikpKTsKKyNlbmRpZgor
ICAgIH0KKworICAgIHRlbXBsYXRlPHR5cGVuYW1lIFQ+IHN0YXRpYyB2b2lkIGFzc2VydElzSklU
T3BlcmF0aW9uKFQgZnVuY3Rpb24pCisgICAgeworICAgICAgICBVTlVTRURfUEFSQU0oZnVuY3Rp
b24pOworI2lmIEVOQUJMRShKSVRfT1BFUkFUSU9OX1ZBTElEQVRJT04pCisgICAgICAgIEFTU0VS
VCghT3B0aW9uczo6dXNlSklUKCkgfHwgSklUT3BlcmF0aW9uTGlzdDo6aW5zdGFuY2UoKS5jb250
YWlucyhiaXR3aXNlX2Nhc3Q8dm9pZCo+KGZ1bmN0aW9uKSkpOworI2VuZGlmCisgICAgfQorCitw
cml2YXRlOgorICAgIEhhc2hNYXA8dm9pZCosIHZvaWQqPiBtX3ZhbGlkYXRlZE9wZXJhdGlvbnM7
Cit9OworCitleHRlcm4gTGF6eU5ldmVyRGVzdHJveWVkPEpJVE9wZXJhdGlvbkxpc3Q+IGppdE9w
ZXJhdGlvbkxpc3Q7CisKK2lubGluZSBKSVRPcGVyYXRpb25MaXN0JiBKSVRPcGVyYXRpb25MaXN0
OjppbnN0YW5jZSgpCit7CisgICAgcmV0dXJuIGppdE9wZXJhdGlvbkxpc3QuZ2V0KCk7Cit9CisK
K30gLy8gbmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fz
c2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTTY0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9h
c3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJBUk02NC5jcHAKaW5kZXggMzYyNWE4ZDNjYzZmYWQ1ZDM0
MDI3YmNiM2Y0ODJjN2U2ZWQ1Y2JlZS4uZjFiYWQ2NjdhZTg2MzcyZmFjN2FmMjFjMzY2MTEwNDJi
MThhYjNlOCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNy
b0Fzc2VtYmxlckFSTTY0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVy
L01hY3JvQXNzZW1ibGVyQVJNNjQuY3BwCkBAIC00Miw3ICs0Miw3IEBAIG5hbWVzcGFjZSBKU0Mg
ewogI2lmIEVOQUJMRShNQVNNX1BST0JFKQogCiBleHRlcm4gIkMiIEpTQ19ERUNMQVJFX0pJVF9P
UEVSQVRJT04oY3RpTWFzbVByb2JlVHJhbXBvbGluZSwgdm9pZCwgKCkpOwotSlNDX0FOTk9UQVRF
X0pJVF9PUEVSQVRJT04oY3RpTWFzbVByb2JlVHJhbXBvbGluZSwgY3RpTWFzbVByb2JlVHJhbXBv
bGluZSk7CitKU0NfQU5OT1RBVEVfSklUX09QRVJBVElPTihjdGlNYXNtUHJvYmVUcmFtcG9saW5l
SWQsIGN0aU1hc21Qcm9iZVRyYW1wb2xpbmUpOwogCiB1c2luZyBuYW1lc3BhY2UgQVJNNjRSZWdp
c3RlcnM7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFj
cm9Bc3NlbWJsZXJBUk12Ny5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01h
Y3JvQXNzZW1ibGVyQVJNdjcuY3BwCmluZGV4IDA2YTZmZGIzYzBmMzM3MjM5YjE3ZmNkMGRjNDE2
NTViOWVjYTI1NzUuLmIyZGIxNGUwZjBkNGMwYmNlMmZmYWUxMTY4YTJhZmU2ODQ0Mzc1NzcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJB
Uk12Ny5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2Vt
YmxlckFSTXY3LmNwcApAQCAtMzYsNyArMzYsNyBAQCBuYW1lc3BhY2UgSlNDIHsKICNpZiBFTkFC
TEUoTUFTTV9QUk9CRSkKIAogZXh0ZXJuICJDIiBKU0NfREVDTEFSRV9KSVRfT1BFUkFUSU9OKGN0
aU1hc21Qcm9iZVRyYW1wb2xpbmUsIHZvaWQsICgpKTsKLUpTQ19BTk5PVEFURV9KSVRfT1BFUkFU
SU9OKGN0aU1hc21Qcm9iZVRyYW1wb2xpbmUsIGN0aU1hc21Qcm9iZVRyYW1wb2xpbmUpOworSlND
X0FOTk9UQVRFX0pJVF9PUEVSQVRJT04oY3RpTWFzbVByb2JlVHJhbXBvbGluZUlkLCBjdGlNYXNt
UHJvYmVUcmFtcG9saW5lKTsKIAogdXNpbmcgbmFtZXNwYWNlIEFSTVJlZ2lzdGVyczsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlck1J
UFMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlck1J
UFMuY3BwCmluZGV4IDE3ZGVlYWNjNzg2NDE5MGUzZGEwNGUyYzM5ZmQ3NGZiMTEwZjZiNjguLmQ1
MDE5YmNlMDEwYjc0OTE1YWNkOTRhMGVkMzkzZDNjNTlmNTAyOGEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJNSVBTLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyTUlQUy5jcHAKQEAg
LTM3LDcgKzM3LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAjaWYgRU5BQkxFKE1BU01fUFJPQkUpCiAK
IGV4dGVybiAiQyIgSlNDX0RFQ0xBUkVfSklUX09QRVJBVElPTihjdGlNYXNtUHJvYmVUcmFtcG9s
aW5lLCB2b2lkLCAoKSk7Ci1KU0NfQU5OT1RBVEVfSklUX09QRVJBVElPTihjdGlNYXNtUHJvYmVU
cmFtcG9saW5lLCBjdGlNYXNtUHJvYmVUcmFtcG9saW5lKTsKK0pTQ19BTk5PVEFURV9KSVRfT1BF
UkFUSU9OKGN0aU1hc21Qcm9iZVRyYW1wb2xpbmVJZCwgY3RpTWFzbVByb2JlVHJhbXBvbGluZSk7
CiAKIHVzaW5nIG5hbWVzcGFjZSBNSVBTUmVnaXN0ZXJzOwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyWDg2Q29tbW9uLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJYODZDb21tb24uY3Bw
CmluZGV4IGVlMTlhOGI1YWExZDI5Mjg5NzE4ZDVlYjllMGE3NjFkM2Y0ZWE3OWYuLjNlODczYjAw
Y2IwMjExZTBmYTM0YzEyYzcyMWZmMTgwNWE3ZDkwYWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJYODZDb21tb24uY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJYODZDb21tb24uY3Bw
CkBAIC00MCw3ICs0MCw3IEBAIG5hbWVzcGFjZSBKU0MgewogI2lmIEVOQUJMRShNQVNNX1BST0JF
KQogCiBleHRlcm4gIkMiIEpTQ19ERUNMQVJFX0pJVF9PUEVSQVRJT04oY3RpTWFzbVByb2JlVHJh
bXBvbGluZSwgdm9pZCwgKCkpOwotSlNDX0FOTk9UQVRFX0pJVF9PUEVSQVRJT04oY3RpTWFzbVBy
b2JlVHJhbXBvbGluZSwgY3RpTWFzbVByb2JlVHJhbXBvbGluZSk7CitKU0NfQU5OT1RBVEVfSklU
X09QRVJBVElPTihjdGlNYXNtUHJvYmVUcmFtcG9saW5lSWQsIGN0aU1hc21Qcm9iZVRyYW1wb2xp
bmUpOwogCiAvLyBUaGUgZm9sbG93aW5nIGFyZSBvZmZzZXRzIGZvciBQcm9iZTo6U3RhdGUgZmll
bGRzIGFjY2Vzc2VkIGJ5IHRoZSBjdGlNYXNtUHJvYmVUcmFtcG9saW5lIHN0dWIuCiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qc2MuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2pzYy5jcHAKaW5kZXggYWFiNDFlYzhjZTNkZTE2NDA0NDE1Mzk3M2FhNzNkNGQ4ZDk5NjNj
NC4uYmE2MzMyMTJlMjgyYTAwNjQ0ZDIwODk0MGUyYjBlMjQ0NDhmODQ2ZiAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2pzYy5jcHAKQEAgLTM5LDYgKzM5LDcgQEAKICNpbmNsdWRlICJJbml0aWFsaXplVGhyZWFkaW5n
LmgiCiAjaW5jbHVkZSAiSW50ZXJwcmV0ZXIuaCIKICNpbmNsdWRlICJKSVQuaCIKKyNpbmNsdWRl
ICJKSVRPcGVyYXRpb25MaXN0LmgiCiAjaW5jbHVkZSAiSlNBcnJheS5oIgogI2luY2x1ZGUgIkpT
QXJyYXlCdWZmZXIuaCIKICNpbmNsdWRlICJKU0JpZ0ludC5oIgpAQCAtMzQxNSw2ICszNDE2LDEz
IEBAIGludCBydW5KU0MoY29uc3QgQ29tbWFuZExpbmUmIG9wdGlvbnMsIGJvb2wgaXNXb3JrZXIs
IGNvbnN0IEZ1bmMmIGZ1bmMpCiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAorI2lmIEVOQUJMRShK
SVRfT1BFUkFUSU9OX1ZBTElEQVRJT04pCitleHRlcm4gY29uc3QgdWludHB0cl90IHN0YXJ0T2ZI
b3N0RnVuY3Rpb25zSW5TaGVsbCBfX2FzbSgic2VjdGlvbiRzdGFydCRfX0RBVEFfQ09OU1QkX19q
c2NfaG9zdCIpOworZXh0ZXJuIGNvbnN0IHVpbnRwdHJfdCBlbmRPZkhvc3RGdW5jdGlvbnNJblNo
ZWxsIF9fYXNtKCJzZWN0aW9uJGVuZCRfX0RBVEFfQ09OU1QkX19qc2NfaG9zdCIpOworZXh0ZXJu
IGNvbnN0IHVpbnRwdHJfdCBzdGFydE9mSklUT3BlcmF0aW9uc0luU2hlbGwgX19hc20oInNlY3Rp
b24kc3RhcnQkX19EQVRBX0NPTlNUJF9fanNjX29wcyIpOworZXh0ZXJuIGNvbnN0IHVpbnRwdHJf
dCBlbmRPZkpJVE9wZXJhdGlvbnNJblNoZWxsIF9fYXNtKCJzZWN0aW9uJGVuZCRfX0RBVEFfQ09O
U1QkX19qc2Nfb3BzIik7CisjZW5kaWYKKwogaW50IGpzY21haW4oaW50IGFyZ2MsIGNoYXIqKiBh
cmd2KQogewogICAgIC8vIE5lZWQgdG8gb3ZlcnJpZGUgYW5kIGVuYWJsZSByZXN0cmljdGVkIG9w
dGlvbnMgYmVmb3JlIHdlIHN0YXJ0IHBhcnNpbmcgb3B0aW9ucyBiZWxvdy4KQEAgLTM0MzQsNiAr
MzQ0Miw5IEBAIGludCBqc2NtYWluKGludCBhcmdjLCBjaGFyKiogYXJndikKICAgICB9CiAKICAg
ICBKU0M6OmluaXRpYWxpemUoKTsKKyNpZiBFTkFCTEUoSklUX09QRVJBVElPTl9WQUxJREFUSU9O
KQorICAgIEpTQzo6SklUT3BlcmF0aW9uTGlzdDo6cG9wdWxhdGVQb2ludGVyc0luRW1iZWRkZXIo
JnN0YXJ0T2ZIb3N0RnVuY3Rpb25zSW5TaGVsbCwgJmVuZE9mSG9zdEZ1bmN0aW9uc0luU2hlbGws
ICZzdGFydE9mSklUT3BlcmF0aW9uc0luU2hlbGwsICZlbmRPZkpJVE9wZXJhdGlvbnNJblNoZWxs
KTsKKyNlbmRpZgogICAgIGluaXRpYWxpemVUaW1lb3V0SWZOZWVkZWQoKTsKIAogI2lmIE9TKERB
UldJTikgfHwgT1MoTElOVVgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9Jbml0aWFsaXplVGhyZWFkaW5nLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0luaXRpYWxpemVUaHJlYWRpbmcuY3BwCmluZGV4IGU1M2JmYjIzYzRhYjE1OTdiYWYzY2Uw
ZDBlZGNhNThiZjgyNDU1MWIuLjkxNWJjNmM1NDFiODdlZWY1YjA1Y2UzODNmN2E3YmI2OWVlNDFh
ZGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0luaXRpYWxpemVU
aHJlYWRpbmcuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0luaXRpYWxp
emVUaHJlYWRpbmcuY3BwCkBAIC0zMCw2ICszMCw3IEBACiAjaW5jbHVkZSAiSW5pdGlhbGl6ZVRo
cmVhZGluZy5oIgogCiAjaW5jbHVkZSAiRXhlY3V0YWJsZUFsbG9jYXRvci5oIgorI2luY2x1ZGUg
IkpJVE9wZXJhdGlvbkxpc3QuaCIKICNpbmNsdWRlICJKU0NDb25maWcuaCIKICNpbmNsdWRlICJK
U0NQdHJUYWcuaCIKICNpbmNsdWRlICJMTEludERhdGEuaCIKQEAgLTY0LDYgKzY1LDcgQEAgdm9p
ZCBpbml0aWFsaXplKCkKICNlbmRpZgogICAgICAgICB7CiAgICAgICAgICAgICBPcHRpb25zOjpB
bGxvd1VuZmluYWxpemVkQWNjZXNzU2NvcGUgc2NvcGU7CisgICAgICAgICAgICBKSVRPcGVyYXRp
b25MaXN0Ojppbml0aWFsaXplKCk7CiAgICAgICAgICAgICBFeGVjdXRhYmxlQWxsb2NhdG9yOjpp
bml0aWFsaXplKCk7CiAgICAgICAgICAgICBWTTo6Y29tcHV0ZUNhblVzZUpJVCgpOwogICAgICAg
ICAgICAgaWYgKCFnX2pzY0NvbmZpZy52bS5jYW5Vc2VKSVQpIHsKQEAgLTczLDYgKzc1LDggQEAg
dm9pZCBpbml0aWFsaXplKCkKICAgICAgICAgfQogICAgICAgICBPcHRpb25zOjpmaW5hbGl6ZSgp
OwogCisgICAgICAgIEpJVE9wZXJhdGlvbkxpc3Q6OnBvcHVsYXRlUG9pbnRlcnNJbkphdmFTY3Jp
cHRDb3JlKCk7CisKICAgICAgICAgaWYgKE9wdGlvbnM6OnVzZVNpZ2lsbENyYXNoQW5hbHl6ZXIo
KSkKICAgICAgICAgICAgIGVuYWJsZVNpZ2lsbENyYXNoQW5hbHl6ZXIoKTsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdQ
cm90b3R5cGVGdW5jdGlvbnMuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2Vu
ZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlRnVuY3Rpb25zLmgKaW5kZXggMGJhYjQ2MDU3Y2Vh
NDFlMjgwOWJkZTg3YTE5MjBjM2NiZjg4YWZhZS4uMGI2NmVkNjIyOTE3ZWRlMzY4MmVhMGFkM2Y0
YTJmNDk1MGQxZTAxOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNHZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b3R5cGVGdW5jdGlvbnMuaAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZUZ1
bmN0aW9ucy5oCkBAIC0xMDAsNyArMTAwLDcgQEAgaW5saW5lIHVuc2lnbmVkIGFyZ3VtZW50Q2xh
bXBlZEluZGV4RnJvbVN0YXJ0T3JFbmQoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwKIH0K
IAogdGVtcGxhdGU8dHlwZW5hbWUgVmlld0NsYXNzPgotSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9O
KGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY1NldCwgKFZNJiB2bSwgSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpKQorQUxXQVlTX0lOTElORSBF
bmNvZGVkSlNWYWx1ZSBnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNTZXQoVk0mIHZtLCBK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKIHsKICAg
ICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKQEAgLTE0Nyw3ICsxNDcs
NyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9G
dW5jU2V0LCAoVk0mIHZtLCBKU0dsb2JhbE9iagogfQogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBWaWV3
Q2xhc3M+Ci1KU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJv
dG9GdW5jQ29weVdpdGhpbiwgKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
Q2FsbEZyYW1lKiBjYWxsRnJhbWUpKQorQUxXQVlTX0lOTElORSBFbmNvZGVkSlNWYWx1ZSBnZW5l
cmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNDb3B5V2l0aGluKFZNJiB2bSwgSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpCiB7CiAgICAgYXV0byBzY29w
ZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCkBAIC0xNzksNyArMTc5LDcgQEAgSlNDX0RF
RklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY0NvcHlXaXRo
aW4sIChWTSYgdm0sIEpTR2wKIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUgVmlld0NsYXNzPgotSlND
X0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY0luY2x1
ZGVzLCAoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNh
bGxGcmFtZSkpCitBTFdBWVNfSU5MSU5FIEVuY29kZWRKU1ZhbHVlIGdlbmVyaWNUeXBlZEFycmF5
Vmlld1Byb3RvRnVuY0luY2x1ZGVzKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVj
dCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpCiB7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhS
T1dfU0NPUEUodm0pOwogCkBAIC0yMjQsNyArMjI0LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNU
SU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY0luY2x1ZGVzLCAoVk0mIHZtLCBKU0ds
b2IKIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUgVmlld0NsYXNzPgotSlNDX0RFRklORV9IT1NUX0ZV
TkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY0luZGV4T2YsIChWTSYgdm0sIEpT
R2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKSkKK0FMV0FZ
U19JTkxJTkUgRW5jb2RlZEpTVmFsdWUgZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jSW5k
ZXhPZihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2Fs
bEZyYW1lKQogewogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIApA
QCAtMjYxLDcgKzI2MSw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRB
cnJheVZpZXdQcm90b0Z1bmNJbmRleE9mLCAoVk0mIHZtLCBKU0dsb2JhCiB9CiAKIHRlbXBsYXRl
PHR5cGVuYW1lIFZpZXdDbGFzcz4KLUpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlw
ZWRBcnJheVZpZXdQcm90b0Z1bmNKb2luLCAoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFs
T2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkpCitBTFdBWVNfSU5MSU5FIEVuY29kZWRKU1Zh
bHVlIGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY0pvaW4oVk0mIHZtLCBKU0dsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKIHsKICAgICBhdXRvIHNj
b3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKQEAgLTMwMCw3ICszMDAsNyBAQCBKU0Nf
REVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jSm9pbiwg
KFZNJiB2bSwgSlNHbG9iYWxPYgogfQogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBWaWV3Q2xhc3M+Ci1K
U0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jTGFz
dEluZGV4T2YsIChWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFt
ZSogY2FsbEZyYW1lKSkKK0FMV0FZU19JTkxJTkUgRW5jb2RlZEpTVmFsdWUgZ2VuZXJpY1R5cGVk
QXJyYXlWaWV3UHJvdG9GdW5jTGFzdEluZGV4T2YoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKIHsKICAgICBhdXRvIHNjb3BlID0gREVD
TEFSRV9USFJPV19TQ09QRSh2bSk7CiAKQEAgLTM1MCw3ICszNTAsNyBAQCBKU0NfREVGSU5FX0hP
U1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jTGFzdEluZGV4T2YsIChW
TSYgdm0sIEpTRwogfQogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBWaWV3Q2xhc3M+Ci1KU0NfREVGSU5F
X0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jQnVmZmVy
LCAoVk0mLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFt
ZSkpCitBTFdBWVNfSU5MSU5FIEVuY29kZWRKU1ZhbHVlIGdlbmVyaWNUeXBlZEFycmF5Vmlld1By
b3RvR2V0dGVyRnVuY0J1ZmZlcihWTSYsIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENh
bGxGcmFtZSogY2FsbEZyYW1lKQogewogICAgIC8vIDIyLjIuMy4zCiAgICAgVmlld0NsYXNzKiB0
aGlzT2JqZWN0ID0ganNDYXN0PFZpZXdDbGFzcyo+KGNhbGxGcmFtZS0+dGhpc1ZhbHVlKCkpOwpA
QCAtMzU5LDcgKzM1OSw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRB
cnJheVZpZXdQcm90b0dldHRlckZ1bmNCdWZmZXIsIChWTSYsIEpTR2xvCiB9CiAKIHRlbXBsYXRl
PHR5cGVuYW1lIFZpZXdDbGFzcz4KLUpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlw
ZWRBcnJheVZpZXdQcm90b0dldHRlckZ1bmNMZW5ndGgsIChWTSYsIEpTR2xvYmFsT2JqZWN0Kiwg
Q2FsbEZyYW1lKiBjYWxsRnJhbWUpKQorQUxXQVlTX0lOTElORSBFbmNvZGVkSlNWYWx1ZSBnZW5l
cmljVHlwZWRBcnJheVZpZXdQcm90b0dldHRlckZ1bmNMZW5ndGgoVk0mLCBKU0dsb2JhbE9iamVj
dCosIENhbGxGcmFtZSogY2FsbEZyYW1lKQogewogICAgIC8vIDIyLjIuMy4xNwogICAgIFZpZXdD
bGFzcyogdGhpc09iamVjdCA9IGpzQ2FzdDxWaWV3Q2xhc3MqPihjYWxsRnJhbWUtPnRoaXNWYWx1
ZSgpKTsKQEAgLTM2OCw3ICszNjgsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJp
Y1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jTGVuZ3RoLCAoVk0mLCBKU0dsbwogfQogCiB0
ZW1wbGF0ZTx0eXBlbmFtZSBWaWV3Q2xhc3M+Ci1KU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2Vu
ZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jQnl0ZUxlbmd0aCwgKFZNJiwgSlNHbG9i
YWxPYmplY3QqLCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkpCitBTFdBWVNfSU5MSU5FIEVuY29kZWRK
U1ZhbHVlIGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvR2V0dGVyRnVuY0J5dGVMZW5ndGgoVk0m
LCBKU0dsb2JhbE9iamVjdCosIENhbGxGcmFtZSogY2FsbEZyYW1lKQogewogICAgIC8vIDIyLjIu
My4yCiAgICAgVmlld0NsYXNzKiB0aGlzT2JqZWN0ID0ganNDYXN0PFZpZXdDbGFzcyo+KGNhbGxG
cmFtZS0+dGhpc1ZhbHVlKCkpOwpAQCAtMzc3LDcgKzM3Nyw3IEBAIEpTQ19ERUZJTkVfSE9TVF9G
VU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0dldHRlckZ1bmNCeXRlTGVuZ3RoLCAo
Vk0mLCBKCiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFZpZXdDbGFzcz4KLUpTQ19ERUZJTkVfSE9T
VF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0dldHRlckZ1bmNCeXRlT2Zmc2V0
LCAoVk0mLCBKU0dsb2JhbE9iamVjdCosIENhbGxGcmFtZSogY2FsbEZyYW1lKSkKK0FMV0FZU19J
TkxJTkUgRW5jb2RlZEpTVmFsdWUgZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5j
Qnl0ZU9mZnNldChWTSYsIEpTR2xvYmFsT2JqZWN0KiwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpCiB7
CiAgICAgLy8gMjIuMi4zLjMKICAgICBWaWV3Q2xhc3MqIHRoaXNPYmplY3QgPSBqc0Nhc3Q8Vmll
d0NsYXNzKj4oY2FsbEZyYW1lLT50aGlzVmFsdWUoKSk7CkBAIC0zODYsNyArMzg2LDcgQEAgSlND
X0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvR2V0dGVyRnVu
Y0J5dGVPZmZzZXQsIChWTSYsIEoKIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUgVmlld0NsYXNzPgot
SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY1Jl
dmVyc2UsIChWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSog
Y2FsbEZyYW1lKSkKK0FMV0FZU19JTkxJTkUgRW5jb2RlZEpTVmFsdWUgZ2VuZXJpY1R5cGVkQXJy
YXlWaWV3UHJvdG9GdW5jUmV2ZXJzZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKQogewogLy8gICAgVk0mIHZtID0gZ2V0Vk0oZ2xvYmFs
T2JqZWN0KTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CkBAIC00
MDMsNyArNDAzLDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5
Vmlld1Byb3RvRnVuY1JldmVyc2UsIChWTSYgdm0sIEpTR2xvYmEKIH0KIAogdGVtcGxhdGU8dHlw
ZW5hbWUgVmlld0NsYXNzPgotSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFy
cmF5Vmlld1ByaXZhdGVGdW5jU29ydCwgKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpKQorQUxXQVlTX0lOTElORSBFbmNvZGVkSlNWYWx1
ZSBnZW5lcmljVHlwZWRBcnJheVZpZXdQcml2YXRlRnVuY1NvcnQoVk0mIHZtLCBKU0dsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKIHsKIC8vICAgIFZNJiB2
bSA9IGdldFZNKGdsb2JhbE9iamVjdCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1df
U0NPUEUodm0pOwpAQCAtNDE5LDcgKzQxOSw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihn
ZW5lcmljVHlwZWRBcnJheVZpZXdQcml2YXRlRnVuY1NvcnQsIChWTSYgdm0sIEpTR2xvYmFsCiB9
CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFZpZXdDbGFzcz4KLUpTQ19ERUZJTkVfSE9TVF9GVU5DVElP
TihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNTbGljZSwgKFZNJiB2bSwgSlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpKQorQUxXQVlTX0lOTElO
RSBFbmNvZGVkSlNWYWx1ZSBnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNTbGljZShWTSYg
dm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKQog
ewogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIApAQCAtNTEwLDcg
KzUxMCw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQ
cm90b0Z1bmNTbGljZSwgKFZNJiB2bSwgSlNHbG9iYWxPCiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1l
IFZpZXdDbGFzcz4KLUpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZp
ZXdQcml2YXRlRnVuY1N1YmFycmF5Q3JlYXRlLCAoVk0mdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKSkKK0FMV0FZU19JTkxJTkUgRW5jb2RlZEpT
VmFsdWUgZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJpdmF0ZUZ1bmNTdWJhcnJheUNyZWF0ZShWTSZ2
bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpCiB7
CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9WTS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9WTS5jcHAKaW5kZXggY2JjNzA2ZmY0ODYwMDBhZDY4ZjBlNmQzNDg1NzQ5
ZmM2OWJlZDc4Mi4uOWI2NDRmODg5MmZiOWEwMmQ0MTQxYTk5NjEwMzk1N2MxNmM2ZjMxYiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0uY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZNLmNwcApAQCAtNzgsNiArNzgsNyBAQAogI2luY2x1
ZGUgIklzb0hlYXBDZWxsVHlwZS5oIgogI2luY2x1ZGUgIklzb0lubGluZWRIZWFwQ2VsbFR5cGUu
aCIKICNpbmNsdWRlICJKSVRDb2RlLmgiCisjaW5jbHVkZSAiSklUT3BlcmF0aW9uTGlzdC5oIgog
I2luY2x1ZGUgIkpJVFRodW5rcy5oIgogI2luY2x1ZGUgIkpJVFdvcmtsaXN0LmgiCiAjaW5jbHVk
ZSAiSlNBUElHbG9iYWxPYmplY3QuaCIKQEAgLTgzMSw2ICs4MzIsNyBAQCBOYXRpdmVFeGVjdXRh
YmxlKiBWTTo6Z2V0SG9zdEZ1bmN0aW9uKE5hdGl2ZUZ1bmN0aW9uIGZ1bmN0aW9uLCBJbnRyaW5z
aWMgaW50cmlucwogewogI2lmIEVOQUJMRShKSVQpCiAgICAgaWYgKE9wdGlvbnM6OnVzZUpJVCgp
KSB7CisgICAgICAgIEpJVE9wZXJhdGlvbkxpc3Q6OmFzc2VydElzSG9zdEZ1bmN0aW9uKGZ1bmN0
aW9uKTsKICAgICAgICAgcmV0dXJuIGppdFN0dWJzLT5ob3N0RnVuY3Rpb25TdHViKAogICAgICAg
ICAgICAgKnRoaXMsIGZ1bmN0aW9uLCBjb25zdHJ1Y3RvciwKICAgICAgICAgICAgIGludHJpbnNp
YyAhPSBOb0ludHJpbnNpYyA/IHRodW5rR2VuZXJhdG9yRm9ySW50cmluc2ljKGludHJpbnNpYykg
OiBudWxscHRyLApkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvUGxhdGZvcm1DYWxsaW5nQ29u
dmVudGlvbnMuaCBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtQ2FsbGluZ0NvbnZlbnRpb25zLmgK
aW5kZXggNzU5NzcyOWY2NDEyNjZjNTJkYmQzNWRkZDk5NzVmMjY3YmE2YzJlOS4uNDkzN2ViZjdj
M2FiZWJmZjJmNmE2MDA2ZWQxZjI0NjM3ZjFkMWIzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93
dGYvUGxhdGZvcm1DYWxsaW5nQ29udmVudGlvbnMuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0
Zm9ybUNhbGxpbmdDb252ZW50aW9ucy5oCkBAIC00MiwxMyArNDIsMjAgQEAKICNkZWZpbmUgSlND
X0hPU1RfQ0FMTF9BVFRSSUJVVEVTCiAjZW5kaWYKIAorI2lmIEVOQUJMRShKSVRfT1BFUkFUSU9O
X1ZBTElEQVRJT04pCisjZGVmaW5lIEpTQ19BTk5PVEFURV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9u
SWQsIGZ1bmN0aW9uKSBcCisgICAgY29uc3RleHByIGF1dG8gZnVuY3Rpb25JZCBfX2F0dHJpYnV0
ZV9fKCh1c2VkLCBzZWN0aW9uKCJfX0RBVEFfQ09OU1QsX19qc2NfaG9zdCIpKSkgPSBmdW5jdGlv
bjsKKyNlbHNlCisjZGVmaW5lIEpTQ19BTk5PVEFURV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9uSWQs
IGZ1bmN0aW9uKQorI2VuZGlmCisKICNkZWZpbmUgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OX1dJ
VEhfQVRUUklCVVRFUyhmdW5jdGlvbk5hbWUsIGF0dHJpYnV0ZXMsIHBhcmFtZXRlcnMpIFwKKyAg
ICBKU0NfQU5OT1RBVEVfSE9TVF9GVU5DVElPTihfSklUVGFyZ2V0XyMjZnVuY3Rpb25OYW1lLCBz
dGF0aWNfY2FzdDxKU0M6OkVuY29kZWRKU1ZhbHVlKCopcGFyYW1ldGVycz4oZnVuY3Rpb25OYW1l
KSk7IFwKICAgICBhdHRyaWJ1dGVzIEpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTF9B
VFRSSUJVVEVTIGZ1bmN0aW9uTmFtZSBwYXJhbWV0ZXJzCiAjZGVmaW5lIEpTQ19ERUZJTkVfSE9T
VF9GVU5DVElPTihmdW5jdGlvbk5hbWUsIHBhcmFtZXRlcnMpIFwKICAgICBKU0NfREVGSU5FX0hP
U1RfRlVOQ1RJT05fV0lUSF9BVFRSSUJVVEVTKGZ1bmN0aW9uTmFtZSwgLCBwYXJhbWV0ZXJzKQog
I2RlZmluZSBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9uTmFtZSkgXAogICAgIEpT
Qzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTF9BVFRSSUJVVEVTIGZ1bmN0aW9uTmFtZShK
U0M6OkpTR2xvYmFsT2JqZWN0KiwgSlNDOjpDYWxsRnJhbWUqKQotI2RlZmluZSBKU0NfQU5OT1RB
VEVfSE9TVF9GVU5DVElPTihmdW5jdGlvbklkLCBmdW5jdGlvbikKIAogI2lmIENQVShYODYpICYm
IE9TKFdJTkRPV1MpCiAjZGVmaW5lIENBTExJTkdfQ09OVkVOVElPTl9JU19TVERDQUxMIDEKQEAg
LTgyLDE0ICs4OSwyMCBAQAogI2RlZmluZSBKSVRfT1BFUkFUSU9OX0FUVFJJQlVURVMKICNlbmRp
ZgogCisjaWYgRU5BQkxFKEpJVF9PUEVSQVRJT05fVkFMSURBVElPTikKKyNkZWZpbmUgSlNDX0FO
Tk9UQVRFX0pJVF9PUEVSQVRJT04oZnVuY3Rpb25JZCwgZnVuY3Rpb24pIFwKKyAgICBjb25zdGV4
cHIgYXV0byAgZnVuY3Rpb25JZCBfX2F0dHJpYnV0ZV9fKCh1c2VkLCBzZWN0aW9uKCJfX0RBVEFf
Q09OU1QsX19qc2Nfb3BzIikpKSA9IGZ1bmN0aW9uOworI2Vsc2UKKyNkZWZpbmUgSlNDX0FOTk9U
QVRFX0pJVF9PUEVSQVRJT04oZnVuY3Rpb25JZCwgZnVuY3Rpb24pCisjZW5kaWYKIAogI2RlZmlu
ZSBKU0NfREVGSU5FX0pJVF9PUEVSQVRJT05fV0lUSF9BVFRSSUJVVEVTKGZ1bmN0aW9uTmFtZSwg
YXR0cmlidXRlcywgcmV0dXJuVHlwZSwgcGFyYW1ldGVycykgXAorICAgIEpTQ19BTk5PVEFURV9K
SVRfT1BFUkFUSU9OKF9KSVRUYXJnZXRfIyNmdW5jdGlvbk5hbWUsIHN0YXRpY19jYXN0PHJldHVy
blR5cGUoKilwYXJhbWV0ZXJzPihmdW5jdGlvbk5hbWUpKTsgXAogICAgIGF0dHJpYnV0ZXMgcmV0
dXJuVHlwZSBKSVRfT1BFUkFUSU9OX0FUVFJJQlVURVMgZnVuY3Rpb25OYW1lIHBhcmFtZXRlcnMK
ICNkZWZpbmUgSlNDX0RFRklORV9KSVRfT1BFUkFUSU9OKGZ1bmN0aW9uTmFtZSwgcmV0dXJuVHlw
ZSwgcGFyYW1ldGVycykgXAogICAgIEpTQ19ERUZJTkVfSklUX09QRVJBVElPTl9XSVRIX0FUVFJJ
QlVURVMoZnVuY3Rpb25OYW1lLCAsIHJldHVyblR5cGUsIHBhcmFtZXRlcnMpCiAjZGVmaW5lIEpT
Q19ERUNMQVJFX0pJVF9PUEVSQVRJT04oZnVuY3Rpb25OYW1lLCByZXR1cm5UeXBlLCBwYXJhbWV0
ZXJzKSBcCiAgICAgcmV0dXJuVHlwZSBKSVRfT1BFUkFUSU9OX0FUVFJJQlVURVMgZnVuY3Rpb25O
YW1lIHBhcmFtZXRlcnMgUkVGRVJFTkNFRF9GUk9NX0FTTSBXVEZfSU5URVJOQUwKLSNkZWZpbmUg
SlNDX0FOTk9UQVRFX0pJVF9PUEVSQVRJT04oZnVuY3Rpb25JZCwgZnVuY3Rpb24pCiAKICNkZWZp
bmUgSlNDX0RFQ0xBUkVfQ1VTVE9NX0dFVFRFUihmdW5jdGlvbk5hbWUpIEpTQ19ERUNMQVJFX0pJ
VF9PUEVSQVRJT04oZnVuY3Rpb25OYW1lLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCAoSlNDOjpKU0ds
b2JhbE9iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKSkKICNk
ZWZpbmUgSlNDX0RFQ0xBUkVfQ1VTVE9NX1NFVFRFUihmdW5jdGlvbk5hbWUpIEpTQ19ERUNMQVJF
X0pJVF9PUEVSQVRJT04oZnVuY3Rpb25OYW1lLCBib29sLCAoSlNDOjpKU0dsb2JhbE9iamVjdCos
IEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dURi93dGYvUGxhdGZvcm1FbmFibGUuaCBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3Jt
RW5hYmxlLmgKaW5kZXggOTE2NmNmZGQ5NTU0YjYwZjc3ODMyMjk0ZWVjNjllNmI4ODFkYzM5ZS4u
NGEyMjViZDdiNzYwNDI0OGUzM2E2Mjc1YzljOWRjODg0NjA2Y2FkMCAxMDA2NDQKLS0tIGEvU291
cmNlL1dURi93dGYvUGxhdGZvcm1FbmFibGUuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9y
bUVuYWJsZS5oCkBAIC04ODgsMyArODg4LDcgQEAKICNpZiBDUFUoQVJNNjQpICYmIENQVShBRERS
RVNTNjQpCiAjZGVmaW5lIFVTRV9KVU1QX0lTTEFORFMgMQogI2VuZGlmCisKKyNpZiBPUyhEQVJX
SU4pICYmIEVOQUJMRShKSVQpICYmIEFTU0VSVF9FTkFCTEVECisjZGVmaW5lIEVOQUJMRV9KSVRf
T1BFUkFUSU9OX1ZBTElEQVRJT04gMQorI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9IZWFkZXJzLmNtYWtlIGIvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQppbmRleCBjODc0
OGEyMTYyN2NjMzM0Y2UyMmJlNDY5M2U2ZmM4NTNmZTNhNjBkLi44ZjM4ZmY0ZmYyMmRiYTMyNTgy
ZjJlMTIxZTdkNjU4YzQxNjFjNjljIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJz
LmNtYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKQEAgLTI1OCw2ICsyNTgs
NyBAQCBzZXQoV2ViQ29yZV9QUklWQVRFX0ZSQU1FV09SS19IRUFERVJTCiAgICAgYmluZGluZ3Mv
anMvU2NyaXB0V3JhcHBhYmxlSW5saW5lcy5oCiAgICAgYmluZGluZ3MvanMvU2VyaWFsaXplZFNj
cmlwdFZhbHVlLmgKICAgICBiaW5kaW5ncy9qcy9TdHJpbmdBZGFwdG9ycy5oCisgICAgYmluZGlu
Z3MvanMvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaAogICAgIGJpbmRpbmdzL2pzL1dlYkNvcmVUeXBl
ZEFycmF5Q29udHJvbGxlci5oCiAgICAgYmluZGluZ3MvanMvV2luZG93UHJveHkuaAogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL1NvdXJj
ZXMudHh0CmluZGV4IGYxMDM3MjAzZmRjMjNmMWQyM2VjYTYwYzBkODk5OTNiMWNhM2U5OTguLmZi
OThjNzhhMDQxMTExZmU1YzYyNmIzYjVkZWJhMzVlNGU0NTA5NTIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL1NvdXJjZXMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CkBA
IC01OTQsNiArNTk0LDcgQEAgYmluZGluZ3MvanMvU2NyaXB0U3RhdGUuY3BwCiBiaW5kaW5ncy9q
cy9TY3JpcHRXcmFwcGFibGUuY3BwCiBiaW5kaW5ncy9qcy9TZXJpYWxpemVkU2NyaXB0VmFsdWUu
Y3BwCiBiaW5kaW5ncy9qcy9TdHJ1Y3R1cmVkQ2xvbmUuY3BwCitiaW5kaW5ncy9qcy9XZWJDb3Jl
SklUT3BlcmF0aW9ucy5jcHAKIGJpbmRpbmdzL2pzL1dlYkNvcmVKU0NsaWVudERhdGEuY3BwCiBi
aW5kaW5ncy9qcy9XZWJDb3JlVHlwZWRBcnJheUNvbnRyb2xsZXIuY3BwCiBiaW5kaW5ncy9qcy9X
aW5kb3dQcm94eS5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagppbmRleCBlZmNmMTUwYWQ1YmQ0OWI0NDM2ZjMxNWZhNmJiMWI2NDhmMzVi
ZGQ3Li44OTcyMTBhNDg4ZGM0MDBkNGU3ODk2ZTQzOTRhZDc3YWViOTRiYTU1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC00OTY3
LDYgKzQ5NjcsNyBAQAogCQlFMzIzQ0ZGQTFFNUFGNkFGMDBGMEI0QTAgLyogSlNET01Db252ZXJ0
UHJvbWlzZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
RTMyM0NGRjkxRTVBRjZBNTAwRjBCNEEwIC8qIEpTRE9NQ29udmVydFByb21pc2UuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlFMzU2NUI3QjFEQzJE
NkM5MDAyMTdEQkQgLyogSlNFdmVudEN1c3RvbS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gRTM0RUU0OUYxREMyRDU3NTAwRUFBOUQzIC8qIEpTRXZlbnRD
dXN0b20uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owog
CQlFMzU4MDJCNjFEQzg0MzVEMDBBOTc3M0MgLyogRE9NSklUSURMVHlwZUZpbHRlci5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTM1ODAyQjUxREM4NDM1
ODAwQTk3NzNDIC8qIERPTUpJVElETFR5cGVGaWx0ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlFMzU4MkMyODI1MjdGNjY5MDBEMUI3OTAgLyog
V2ViQ29yZUpJVE9wZXJhdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEUzNTgyQzI2MjUyN0Y2NjgwMEQxQjc5MCAvKiBXZWJDb3JlSklUT3BlcmF0
aW9ucy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJ
CUUzNUI5MDdGMjNGNjBBNTAwMDAwMTFGRiAvKiBMb2NhbGl6ZWREZXZpY2VNb2RlbC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTM1QjkwN0MyM0Y2MDY3
NzAwMDAxMUZGIC8qIExvY2FsaXplZERldmljZU1vZGVsLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJRTM3N0ZFNEQxREFERTE2NTAwQ0REMDI1IC8q
IE5vZGVDb25zdGFudHMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEUzRDA0OTkzMURBREMwNDUwMDcxOEYzQyAvKiBOb2RlQ29uc3RhbnRzLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJRTM3Qzg2NTAxRUI2
M0UzRjAwODdDNkNBIC8qIEpTRE9NUHJvbWlzZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gRTM3Qzg2NEYxRUI2M0UyRDAwODdDNkNBIC8qIEpTRE9NUHJv
bWlzZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBA
IC0xNTgyMCw2ICsxNTgyMSw4IEBACiAJCUUzMzQ4MjVFMURDOTNBQTAwMDlDOTU0NCAvKiBET01K
SVRBYnN0cmFjdEhlYXBSZXBvc2l0b3J5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFt
ZSA9IERPTUpJVEFic3RyYWN0SGVhcFJlcG9zaXRvcnkuaDsgcGF0aCA9IERlcml2ZWRTb3VyY2Vz
L1dlYkNvcmUvRE9NSklUQWJzdHJhY3RIZWFwUmVwb3NpdG9yeS5oOyBzb3VyY2VUcmVlID0gQlVJ
TFRfUFJPRFVDVFNfRElSOyB9OwogCQlFMzRFRTQ5RjFEQzJENTc1MDBFQUE5RDMgLyogSlNFdmVu
dEN1c3RvbS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0V2ZW50Q3VzdG9t
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUzNTgwMkI1MURDODQzNTgwMEE5Nzcz
QyAvKiBET01KSVRJRExUeXBlRmlsdGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IERPTUpJVElETFR5cGVGaWx0ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
RTM1ODJDMjQyNTI3RjY2ODAwRDFCNzkwIC8qIFdlYkNvcmVKSVRPcGVyYXRpb25zLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYkNvcmVKSVRPcGVyYXRpb25zLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTM1ODJDMjYyNTI3RjY2ODAwRDFCNzkw
IC8qIFdlYkNvcmVKSVRPcGVyYXRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFdlYkNvcmVKSVRPcGVyYXRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CUUzNUI5MDdDMjNGNjA2NzcwMDAwMTFGRiAvKiBMb2NhbGl6ZWREZXZpY2VNb2RlbC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMb2NhbGl6ZWREZXZpY2VNb2RlbC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFMzVCOTA3RTIzRjYwNjc3MDAwMDExRkYgLyogTG9j
YWxpemVkRGV2aWNlTW9kZWwubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBh
dGggPSBMb2NhbGl6ZWREZXZpY2VNb2RlbC5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJRTM3Qzg2NEYxRUI2M0UyRDAwODdDNkNBIC8qIEpTRE9NUHJvbWlzZS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBKU0RPTVByb21pc2UuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKQEAgLTI2NDk5LDYgKzI2NTAyLDggQEAKIAkJCQk0MTRCODIwMjFENkRGMEQ5MDA3
N0VCRTMgLyogU3RydWN0dXJlZENsb25lLmNwcCAqLywKIAkJCQk0MTRCODIwMzFENkRGMEQ5MDA3
N0VCRTMgLyogU3RydWN0dXJlZENsb25lLmggKi8sCiAJCQkJNDE5QkU3NTIxQkM3RjNEQjAwRTFD
ODVCIC8qIFdlYkNvcmVCdWlsdGluTmFtZXMuaCAqLywKKwkJCQlFMzU4MkMyNDI1MjdGNjY4MDBE
MUI3OTAgLyogV2ViQ29yZUpJVE9wZXJhdGlvbnMuY3BwICovLAorCQkJCUUzNTgyQzI2MjUyN0Y2
NjgwMEQxQjc5MCAvKiBXZWJDb3JlSklUT3BlcmF0aW9ucy5oICovLAogCQkJCTBGN0RGMTQ3MUUy
QkYxQTYwMDk1OTUxQiAvKiBXZWJDb3JlSlNDbGllbnREYXRhLmNwcCAqLywKIAkJCQlCQzUzRDkx
MDExNDMxMENDMDAwRDgxN0UgLyogV2ViQ29yZUpTQ2xpZW50RGF0YS5oICovLAogCQkJCTBGMDk5
RDA2MTdCOTY4QTEwMEZGODRCOSAvKiBXZWJDb3JlVHlwZWRBcnJheUNvbnRyb2xsZXIuY3BwICov
LApAQCAtMzQ0NjksNiArMzQ0NzQsNyBAQAogCQkJCUNEQzY5RERBMTYzNzFGRDQwMDdDMzhERiAv
KiBXZWJDb3JlRnVsbFNjcmVlblBsYWNlaG9sZGVyVmlldy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
Q0RDNjlERDYxNjMyMDI2QzAwN0MzOERGIC8qIFdlYkNvcmVGdWxsU2NyZWVuV2FybmluZ1ZpZXcu
aCBpbiBIZWFkZXJzICovLAogCQkJCUNEMTI3REVFMTRGMzA5ODQwMEU4NDc3OSAvKiBXZWJDb3Jl
RnVsbFNjcmVlbldpbmRvdy5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTM1ODJDMjgyNTI3RjY2OTAw
RDFCNzkwIC8qIFdlYkNvcmVKSVRPcGVyYXRpb25zLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzM0
OEJENDBEQjdGODA0MDA0QUJBQkIgLyogV2ViQ29yZUpTQnVpbHRpbkludGVybmFscy5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJQkMzNDhCRDQwREI3RjgwNDAwNEFCQUJBIC8qIFdlYkNvcmVKU0J1aWx0
aW5zLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzUzRDkxMTExNDMxMENDMDAwRDgxN0UgLyogV2Vi
Q29yZUpTQ2xpZW50RGF0YS5oIGluIEhlYWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0RPTUJ1aWx0aW5Db25zdHJ1Y3Rvci5oIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNET01CdWlsdGluQ29uc3RydWN0b3IuaAppbmRleCBmZjdhMDVkM2Ni
MjJmNzVhZWEwYjEzYzFlNDk2OGVlMWJkNWJmY2JkLi5kMWUxYmVmYmQ5Yzk1NDQ1NjM0NjVjY2I4
OTBkYTQzNTk5YjdjNjZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U0RPTUJ1aWx0aW5Db25zdHJ1Y3Rvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTRE9NQnVpbHRpbkNvbnN0cnVjdG9yLmgKQEAgLTM3LDYgKzM3LDggQEAgdGVtcGxhdGU8dHlw
ZW5hbWUgSlNDbGFzcz4gY2xhc3MgSlNET01CdWlsdGluQ29uc3RydWN0b3IgZmluYWwgOiBwdWJs
aWMgSlNET01CdWkKICAgICAvLyBVc3VhbGx5IGRlZmluZWQgZm9yIGVhY2ggc3BlY2lhbGl6YXRp
b24gY2xhc3MuCiAgICAgc3RhdGljIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGVGb3JTdHJ1Y3R1cmUo
SlNDOjpWTSYsIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0Jik7CiAKKyAgICBzdGF0aWMgSlNDOjpF
bmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJQlVURVMgY29uc3RydWN0KEpTQzo6SlNH
bG9iYWxPYmplY3QqLCBKU0M6OkNhbGxGcmFtZSopOworCiBwcml2YXRlOgogICAgIEpTRE9NQnVp
bHRpbkNvbnN0cnVjdG9yKEpTQzo6U3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2Jq
ZWN0JiBnbG9iYWxPYmplY3QpCiAgICAgICAgIDogQmFzZShzdHJ1Y3R1cmUsIGdsb2JhbE9iamVj
dCkKQEAgLTQ1LDcgKzQ3LDYgQEAgdGVtcGxhdGU8dHlwZW5hbWUgSlNDbGFzcz4gY2xhc3MgSlNE
T01CdWlsdGluQ29uc3RydWN0b3IgZmluYWwgOiBwdWJsaWMgSlNET01CdWkKIAogICAgIHZvaWQg
ZmluaXNoQ3JlYXRpb24oSlNDOjpWTSYsIEpTRE9NR2xvYmFsT2JqZWN0Jik7CiAgICAgc3RhdGlj
IEpTQzo6Q2FsbERhdGEgZ2V0Q29uc3RydWN0RGF0YShKU0M6OkpTQ2VsbCopOwotICAgIHN0YXRp
YyBKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTExfQVRUUklCVVRFUyBjb25zdHJ1Y3Qo
SlNDOjpKU0dsb2JhbE9iamVjdCosIEpTQzo6Q2FsbEZyYW1lKik7CiAKICAgICBKU0M6OkVuY29k
ZWRKU1ZhbHVlIGNhbGxDb25zdHJ1Y3RvcihKU0M6OkpTR2xvYmFsT2JqZWN0JiwgSlNDOjpDYWxs
RnJhbWUmLCBKU0M6OkpTT2JqZWN0Jik7CiAgICAgSlNDOjpFbmNvZGVkSlNWYWx1ZSBjYWxsQ29u
c3RydWN0b3IoSlNDOjpKU0dsb2JhbE9iamVjdCYsIEpTQzo6Q2FsbEZyYW1lJiwgSlNDOjpKU09i
amVjdCopOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01Db25z
dHJ1Y3Rvci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01Db25zdHJ1Y3Rvci5o
CmluZGV4IGFjZjkxOTBlYTc5ZmJhODU3YTZmMGEyNGE3YmQyYzFjMDYzNzYyYTkuLjQ2MjM0ZDJh
NGI3YjMyMTg4OGEwZTI0ZmI5ZTVhZDJkZmEzOTgwMmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0pTRE9NQ29uc3RydWN0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU0RPTUNvbnN0cnVjdG9yLmgKQEAgLTM1LDYgKzM1LDkgQEAgdGVtcGxhdGU8
dHlwZW5hbWUgSlNDbGFzcz4gY2xhc3MgSlNET01Db25zdHJ1Y3RvciBmaW5hbCA6IHB1YmxpYyBK
U0RPTUNvbnN0cnVjdG8KICAgICAvLyBNdXN0IGJlIGRlZmluZWQgZm9yIGVhY2ggc3BlY2lhbGl6
YXRpb24gY2xhc3MuCiAgICAgc3RhdGljIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGVGb3JTdHJ1Y3R1
cmUoSlNDOjpWTSYsIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0Jik7CiAKKyAgICAvLyBNdXN0IGJl
IGRlZmluZWQgZm9yIGVhY2ggc3BlY2lhbGl6YXRpb24gY2xhc3MuCisgICAgc3RhdGljIEpTQzo6
RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTF9BVFRSSUJVVEVTIGNvbnN0cnVjdChKU0M6OkpT
R2xvYmFsT2JqZWN0KiwgSlNDOjpDYWxsRnJhbWUqKTsKKwogcHJpdmF0ZToKICAgICBKU0RPTUNv
bnN0cnVjdG9yKEpTQzo6U3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBn
bG9iYWxPYmplY3QpCiAgICAgICAgIDogQmFzZShzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCkKQEAg
LTQ2LDggKzQ5LDYgQEAgdGVtcGxhdGU8dHlwZW5hbWUgSlNDbGFzcz4gY2xhc3MgSlNET01Db25z
dHJ1Y3RvciBmaW5hbCA6IHB1YmxpYyBKU0RPTUNvbnN0cnVjdG8KIAogICAgIC8vIFVzdWFsbHkg
ZGVmaW5lZCBmb3IgZWFjaCBzcGVjaWFsaXphdGlvbiBjbGFzcy4KICAgICB2b2lkIGluaXRpYWxp
emVQcm9wZXJ0aWVzKEpTQzo6Vk0mLCBKU0RPTUdsb2JhbE9iamVjdCYpIHsgfQotICAgIC8vIE11
c3QgYmUgZGVmaW5lZCBmb3IgZWFjaCBzcGVjaWFsaXphdGlvbiBjbGFzcy4KLSAgICBzdGF0aWMg
SlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJQlVURVMgY29uc3RydWN0KEpT
Qzo6SlNHbG9iYWxPYmplY3QqLCBKU0M6OkNhbGxGcmFtZSopOwogfTsKIAogdGVtcGxhdGU8dHlw
ZW5hbWUgSlNDbGFzcz4gaW5saW5lIEpTRE9NQ29uc3RydWN0b3I8SlNDbGFzcz4qIEpTRE9NQ29u
c3RydWN0b3I8SlNDbGFzcz46OmNyZWF0ZShKU0M6OlZNJiB2bSwgSlNDOjpTdHJ1Y3R1cmUqIHN0
cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NTGVnYWN5RmFjdG9yeUZ1bmN0aW9uLmggYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUxlZ2FjeUZhY3RvcnlGdW5jdGlvbi5oCmlu
ZGV4IDc4MzFiZjI4OWVmNjg0NTllNzNmMmYzOTUwMzkxZThiMzhjMWI5MjcuLmEyMWYxZmQ5ODc1
NTBkOTMxMjgzODFiYjJmMTc0MDM4YjE4ODEwODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTRE9NTGVnYWN5RmFjdG9yeUZ1bmN0aW9uLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNET01MZWdhY3lGYWN0b3J5RnVuY3Rpb24uaApAQCAtMzYsNiAr
MzYsOSBAQCB0ZW1wbGF0ZTx0eXBlbmFtZSBKU0NsYXNzPiBjbGFzcyBKU0RPTUxlZ2FjeUZhY3Rv
cnlGdW5jdGlvbiBmaW5hbCA6IHB1YmxpYyBKU0RPTQogICAgIC8vIE11c3QgYmUgZGVmaW5lZCBm
b3IgZWFjaCBzcGVjaWFsaXphdGlvbiBjbGFzcy4KICAgICBzdGF0aWMgSlNDOjpKU1ZhbHVlIHBy
b3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmKTsK
IAorICAgIC8vIE11c3QgYmUgZGVmaW5lZCBmb3IgZWFjaCBzcGVjaWFsaXphdGlvbiBjbGFzcy4K
KyAgICBzdGF0aWMgSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJQlVURVMg
Y29uc3RydWN0KEpTQzo6SlNHbG9iYWxPYmplY3QqLCBKU0M6OkNhbGxGcmFtZSopOworCiBwcml2
YXRlOgogICAgIEpTRE9NTGVnYWN5RmFjdG9yeUZ1bmN0aW9uKEpTQzo6U3RydWN0dXJlKiBzdHJ1
Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiAgICAgICAgIDogQmFzZShz
dHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCkKQEAgLTQ3LDggKzUwLDYgQEAgdGVtcGxhdGU8dHlwZW5h
bWUgSlNDbGFzcz4gY2xhc3MgSlNET01MZWdhY3lGYWN0b3J5RnVuY3Rpb24gZmluYWwgOiBwdWJs
aWMgSlNET00KIAogICAgIC8vIFVzdWFsbHkgZGVmaW5lZCBmb3IgZWFjaCBzcGVjaWFsaXphdGlv
biBjbGFzcy4KICAgICB2b2lkIGluaXRpYWxpemVQcm9wZXJ0aWVzKEpTQzo6Vk0mLCBKU0RPTUds
b2JhbE9iamVjdCYpIHsgfQotICAgIC8vIE11c3QgYmUgZGVmaW5lZCBmb3IgZWFjaCBzcGVjaWFs
aXphdGlvbiBjbGFzcy4KLSAgICBzdGF0aWMgSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9D
QUxMX0FUVFJJQlVURVMgY29uc3RydWN0KEpTQzo6SlNHbG9iYWxPYmplY3QqLCBKU0M6OkNhbGxG
cmFtZSopOwogfTsKIAogdGVtcGxhdGU8dHlwZW5hbWUgSlNDbGFzcz4gaW5saW5lIEpTRE9NTGVn
YWN5RmFjdG9yeUZ1bmN0aW9uPEpTQ2xhc3M+KiBKU0RPTUxlZ2FjeUZhY3RvcnlGdW5jdGlvbjxK
U0NsYXNzPjo6Y3JlYXRlKEpTQzo6Vk0mIHZtLCBKU0M6OlN0cnVjdHVyZSogc3RydWN0dXJlLCBK
U0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvU2NyaXB0Q29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9TY3JpcHRDb250cm9sbGVyLmNwcAppbmRleCA3MTY1NWViYjM5YTk4OGZlMGFmZTU3
ZmUwZDVlNzQyYTliYjM2ZTBhLi5jNzRlYjEwZWRhOTgzNzhlZWIxMmM5NTMyMGI0M2NhYmJhN2Q3
NmYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHRDb250cm9s
bGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHRDb250cm9sbGVy
LmNwcApAQCAtNTYsNiArNTYsNyBAQAogI2luY2x1ZGUgIlNjcmlwdGFibGVEb2N1bWVudFBhcnNl
ci5oIgogI2luY2x1ZGUgIlNldHRpbmdzLmgiCiAjaW5jbHVkZSAiVXNlckdlc3R1cmVJbmRpY2F0
b3IuaCIKKyNpbmNsdWRlICJXZWJDb3JlSklUT3BlcmF0aW9ucy5oIgogI2luY2x1ZGUgIldlYkNv
cmVKU0NsaWVudERhdGEuaCIKICNpbmNsdWRlICJucHJ1bnRpbWVfaW1wbC5oIgogI2luY2x1ZGUg
InJ1bnRpbWVfcm9vdC5oIgpAQCAtODcsNiArODgsNyBAQCB2b2lkIFNjcmlwdENvbnRyb2xsZXI6
OmluaXRpYWxpemVNYWluVGhyZWFkKCkKICNpZiAhUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICBK
U0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAg
V2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAjZW5kaWYKIH0KIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpJVE9wZXJhdGlvbnMuY3BwIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpJVE9wZXJhdGlvbnMuY3BwCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjYxNmVlY2NjZTU0NzIyMmY0YzFmYzQ3ZDk1NWQ4N2VlMWMxNGI1MzMKLS0tIC9kZXYv
bnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSklUT3BlcmF0aW9u
cy5jcHAKQEAgLTAsMCArMSw1MCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwor
ICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAq
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIK
KyNpbmNsdWRlICJXZWJDb3JlSklUT3BlcmF0aW9ucy5oIgorCisjaW5jbHVkZSA8SmF2YVNjcmlw
dENvcmUvSklUT3BlcmF0aW9uTGlzdC5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKKyNpZiBF
TkFCTEUoSklUX09QRVJBVElPTl9WQUxJREFUSU9OKQorZXh0ZXJuIGNvbnN0IHVpbnRwdHJfdCBz
dGFydE9mSG9zdEZ1bmN0aW9uc0luV2ViQ29yZSBfX2FzbSgic2VjdGlvbiRzdGFydCRfX0RBVEFf
Q09OU1QkX19qc2NfaG9zdCIpOworZXh0ZXJuIGNvbnN0IHVpbnRwdHJfdCBlbmRPZkhvc3RGdW5j
dGlvbnNJbldlYkNvcmUgX19hc20oInNlY3Rpb24kZW5kJF9fREFUQV9DT05TVCRfX2pzY19ob3N0
Iik7CitleHRlcm4gY29uc3QgdWludHB0cl90IHN0YXJ0T2ZKSVRPcGVyYXRpb25zSW5XZWJDb3Jl
IF9fYXNtKCJzZWN0aW9uJHN0YXJ0JF9fREFUQV9DT05TVCRfX2pzY19vcHMiKTsKK2V4dGVybiBj
b25zdCB1aW50cHRyX3QgZW5kT2ZKSVRPcGVyYXRpb25zSW5XZWJDb3JlIF9fYXNtKCJzZWN0aW9u
JGVuZCRfX0RBVEFfQ09OU1QkX19qc2Nfb3BzIik7CisjZW5kaWYKKwordm9pZCBwb3B1bGF0ZUpJ
VE9wZXJhdGlvbnMoKQoreworI2lmIEVOQUJMRShKSVRfT1BFUkFUSU9OX1ZBTElEQVRJT04pCisg
ICAgc3RkOjpvbmNlX2ZsYWcgb25jZUtleTsKKyAgICBzdGQ6OmNhbGxfb25jZShvbmNlS2V5LCBb
XSB7CisgICAgICAgIEpTQzo6SklUT3BlcmF0aW9uTGlzdDo6cG9wdWxhdGVQb2ludGVyc0luRW1i
ZWRkZXIoJnN0YXJ0T2ZIb3N0RnVuY3Rpb25zSW5XZWJDb3JlLCAmZW5kT2ZIb3N0RnVuY3Rpb25z
SW5XZWJDb3JlLCAmc3RhcnRPZkpJVE9wZXJhdGlvbnNJbldlYkNvcmUsICZlbmRPZkpJVE9wZXJh
dGlvbnNJbldlYkNvcmUpOworICAgIH0pOworI2VuZGlmCit9CisKK30KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVKSVRPcGVyYXRpb25zLmggYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSklUT3BlcmF0aW9ucy5oCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE5
MGE4NDI0ODM5NmMxZjYzMDIxN2NkNTg0NTFjNWIwMGVkN2ZjM2MKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSklUT3BlcmF0aW9ucy5oCkBAIC0w
LDAgKzEsMzIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0
OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkg
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
IE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworbmFtZXNwYWNlIFdlYkNv
cmUgeworCitXRUJDT1JFX0VYUE9SVCB2b2lkIHBvcHVsYXRlSklUT3BlcmF0aW9ucygpOworCit9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0
b3JKUy5wbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpT
LnBtCmluZGV4IDhlNTYzMTA4YjI0YTVjZDA3NTk4MjkzZmFlMjMzYjNmOTVkNjU1ZGIuLjFlNWFi
NTg1NWRlNjg3YWFkY2RjZjM4ZWE3ZTkxMWNmZWY5YWRhMDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCkBAIC03NzE5LDcgKzc3
MTksNyBAQCBzdWIgR2VuZXJhdGVDb25zdHJ1Y3RvckRlZmluaXRpb25zCiAgICAgICAgICAgICBH
ZW5lcmF0ZU92ZXJsb2FkRGlzcGF0Y2hlcihAeyRpbnRlcmZhY2UtPmNvbnN0cnVjdG9yc31bMF0s
ICRpbnRlcmZhY2UsICRvdmVybG9hZEZ1bmN0aW9uUHJlZml4LCAiIiwgImxleGljYWxHbG9iYWxP
YmplY3QsIGNhbGxGcmFtZSIpOwogCiAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIn1c
biIpOwotICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJKU0NfQU5OT1RBVEVfSE9TVF9G
VU5DVElPTigke2NsYXNzTmFtZX1Db25zdHJ1Y3RvckNvbnN0cnVjdCwgJHtjbGFzc05hbWV9Q29u
c3RydWN0b3I6OmNvbnN0cnVjdCk7XG5cbiIpOworICAgICAgICAgICAgcHVzaChAaW1wbENvbnRl
bnQsICJKU0NfQU5OT1RBVEVfSE9TVF9GVU5DVElPTigke2NsYXNzTmFtZX1Db25zdHJ1Y3RvckNv
bnN0cnVjdCwgJHtjbGFzc05hbWV9RE9NQ29uc3RydWN0b3I6OmNvbnN0cnVjdCk7XG5cbiIpOwog
ICAgICAgICB9IGVsc2lmIChAY29uc3RydWN0b3JzID09IDEpIHsKICAgICAgICAgICAgIEdlbmVy
YXRlQ29uc3RydWN0b3JEZWZpbml0aW9uKCRvdXRwdXRBcnJheSwgJGNsYXNzTmFtZSwgJHByb3Rv
Q2xhc3NOYW1lLCAkdmlzaWJsZUludGVyZmFjZU5hbWUsICRpbnRlcmZhY2UsICRnZW5lcmF0aW5n
TGVnYWN5RmFjdG9yeUZ1bmN0aW9uLCAkY29uc3RydWN0b3JzWzBdKTsKICAgICAgICAgfSBlbHNl
IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzLmNwcAppbmRleCA4
MWE2NThhMjNiMzUzZWQ4NzQzZTcyMzU3MDgzZTliYjdjODg5MzQzLi5hZDc0NWZhOTVjY2M0ZmMy
YjJlOGY5ZDFhODE3MzdhNDc3M2E4NGFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycy5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2Fk
ZWRDb25zdHJ1Y3RvcnMuY3BwCkBAIC0yMDQsNyArMjA0LDcgQEAgdGVtcGxhdGU8PiBFbmNvZGVk
SlNWYWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJQlVURVMgSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVj
dG9yc0QKICAgICB9CiAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IobGV4aWNhbEdsb2JhbE9i
amVjdCwgdGhyb3dTY29wZSk7CiB9Ci1KU0NfQU5OT1RBVEVfSE9TVF9GVU5DVElPTihKU1Rlc3RP
dmVybG9hZGVkQ29uc3RydWN0b3JzQ29uc3RydWN0b3JDb25zdHJ1Y3QsIEpTVGVzdE92ZXJsb2Fk
ZWRDb25zdHJ1Y3RvcnNDb25zdHJ1Y3Rvcjo6Y29uc3RydWN0KTsKK0pTQ19BTk5PVEFURV9IT1NU
X0ZVTkNUSU9OKEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNDb25zdHJ1Y3RvckNvbnN0cnVj
dCwgSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc0RPTUNvbnN0cnVjdG9yOjpjb25zdHJ1Y3Qp
OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc0RPTUNv
bnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9N
R2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dp
dGhTZXF1ZW5jZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZS5jcHAKaW5kZXggZGNhYjdi
ZGM1OTY4OTQ2ODc4MDM2MGEyYmU0MTRhNDc0MDM3MjM2OC4uMmRkZDU3MzI1YTA1ZjU4MDZjZGZh
ODYwOWZmNDE1NGIxZDZiMWNiOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2Uu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RP
dmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlLmNwcApAQCAtMTQzLDcgKzE0Myw3IEBA
IHRlbXBsYXRlPD4gRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTF9BVFRSSUJVVEVTIEpTVGVz
dE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXCiAgICAgfQogICAgIHJldHVybiB0aHJvd1ZNVHlwZUVy
cm9yKGxleGljYWxHbG9iYWxPYmplY3QsIHRocm93U2NvcGUpOwogfQotSlNDX0FOTk9UQVRFX0hP
U1RfRlVOQ1RJT04oSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZUNvbnN0
cnVjdG9yQ29uc3RydWN0LCBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNl
Q29uc3RydWN0b3I6OmNvbnN0cnVjdCk7CitKU0NfQU5OT1RBVEVfSE9TVF9GVU5DVElPTihKU1Rl
c3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlQ29uc3RydWN0b3JDb25zdHJ1Y3Qs
IEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2VET01Db25zdHJ1Y3Rvcjo6
Y29uc3RydWN0KTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1
Y3RvcnNXaXRoU2VxdWVuY2VET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpT
Qzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvV2ViU2NyaXB0T2JqZWN0Lm1tIGIv
U291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvV2ViU2NyaXB0T2JqZWN0Lm1tCmluZGV4IGIyZTVj
YTU4ZDNlZGIxZWE5MzMxZGQ0Njg5NTIxMTc2OWQ2ZGE3ZWMuLjNhMTA2MmExMzE2YWE0OWU3NWJh
OTJkM2IzZWI2Yzc3MTlhY2JhMTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9v
YmpjL1dlYlNjcmlwdE9iamVjdC5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9X
ZWJTY3JpcHRPYmplY3QubW0KQEAgLTM1LDYgKzM1LDcgQEAKICNpbXBvcnQgIkpTSFRNTEVsZW1l
bnQuaCIKICNpbXBvcnQgIkpTUGx1Z2luRWxlbWVudEZ1bmN0aW9ucy5oIgogI2ltcG9ydCAiT2Jq
Q1J1bnRpbWVPYmplY3QuaCIKKyNpbXBvcnQgIldlYkNvcmVKSVRPcGVyYXRpb25zLmgiCiAjaW1w
b3J0ICJXZWJDb3JlT2JqQ0V4dHJhcy5oIgogI2ltcG9ydCAib2JqY19pbnN0YW5jZS5oIgogI2lt
cG9ydCAicnVudGltZV9vYmplY3QuaCIKQEAgLTE2Niw2ICsxNjcsNyBAQCArICh2b2lkKWluaXRp
YWxpemUKICNpZiAhVVNFKFdFQl9USFJFQUQpCiAgICAgSlNDOjppbml0aWFsaXplKCk7CiAgICAg
V1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3Bl
cmF0aW9ucygpOwogI2VuZGlmCiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbWpp
dC9KU0RvY3VtZW50RE9NSklULmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbWppdC9KU0RvY3VtZW50
RE9NSklULmNwcAppbmRleCBmOGU4NTRmYTE2Njc1ZGQ1ODM5YjMyNWNmZTI4YWNlMmYyYTUzNjMz
Li5mZjE2YzVhYzA3NDQ1YmMyOWI3MzE5OGEyNmEwYjVhNzU3OGJmYzgwIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9kb21qaXQvSlNEb2N1bWVudERPTUpJVC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvZG9taml0L0pTRG9jdW1lbnRET01KSVQuY3BwCkBAIC0xNDAsNiArMTQwLDggQEAgUmVm
PEpTQzo6RE9NSklUOjpDYWxsRE9NR2V0dGVyU25pcHBldD4gY29tcGlsZURvY3VtZW50Qm9keUF0
dHJpYnV0ZSgpCiAgICAgcmV0dXJuIHNuaXBwZXQ7CiB9CiAKK25hbWVzcGFjZSBET01KSVQgewor
CiBleHRlcm4gIkMiIHsKIAogSlNDX0RFRklORV9KSVRfT1BFUkFUSU9OKG9wZXJhdGlvblRvSlNF
bGVtZW50LCBKU0M6OkVuY29kZWRKU1ZhbHVlLCAoSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFs
T2JqZWN0LCB2b2lkKiByZXN1bHQpKQpAQCAtMTk0LDYgKzE5Niw2IEBAIEpTQ19ERUZJTkVfSklU
X09QRVJBVElPTihvcGVyYXRpb25Ub0pTQ29udGFpbmVyTm9kZSwgSlNDOjpFbmNvZGVkSlNWYWx1
ZSwgKEpTQzo6CiAKIH0KIAotfQorfSB9CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vY29jb2EvU2hhcmVkQnVmZmVyQ29jb2EubW0gYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9jb2NvYS9TaGFyZWRCdWZmZXJDb2NvYS5tbQppbmRleCA4ZjhlNTMzZTA0MDM2
NmZjMTljNTQ4Y2FmOGQxMTYyZjUwOWVhZDNkLi4yODEwMDUzZGU3Yzk3MDI5ODNiZDA0MzA5Y2Q5
MGVjNGU5MTQ5ZTFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9T
aGFyZWRCdWZmZXJDb2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9T
aGFyZWRCdWZmZXJDb2NvYS5tbQpAQCAtMjYsNiArMjYsNyBAQAogI2ltcG9ydCAiY29uZmlnLmgi
CiAjaW1wb3J0ICJTaGFyZWRCdWZmZXIuaCIKIAorI2ltcG9ydCAiV2ViQ29yZUpJVE9wZXJhdGlv
bnMuaCIKICNpbXBvcnQgIldlYkNvcmVPYmpDRXh0cmFzLmgiCiAjaW1wb3J0IDxKYXZhU2NyaXB0
Q29yZS9Jbml0aWFsaXplVGhyZWFkaW5nLmg+CiAjaW1wb3J0IDxzdHJpbmcuaD4KQEAgLTQ2LDYg
KzQ3LDcgQEAgKyAodm9pZClpbml0aWFsaXplCiAjaWYgIVVTRShXRUJfVEhSRUFEKQogICAgIEpT
Qzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAgICBX
ZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZiAvLyAhVVNFKFdFQl9USFJF
QUQpCiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy93YWsvV2Vi
Q29yZVRocmVhZC5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy93YWsvV2ViQ29yZVRo
cmVhZC5tbQppbmRleCA2Mzk0Yjk3ZDc4YWExMGU1ODM1NDM5NjViNTk3YmQzMDlmOTYzMGM5Li4y
ZmUzNWZkZjUwMzM1MjAxMjY5NjI5NDc4ZTVlMjc1YTk2NzRhY2UwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3Mvd2FrL1dlYkNvcmVUaHJlYWQubW0KKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vaW9zL3dhay9XZWJDb3JlVGhyZWFkLm1tCkBAIC0zNiw2ICszNiw3
IEBACiAjaW1wb3J0ICJUaHJlYWRHbG9iYWxEYXRhLmgiCiAjaW1wb3J0ICJXQUtXaW5kb3cuaCIK
ICNpbXBvcnQgIldLVXRpbGl0aWVzLmgiCisjaW1wb3J0ICJXZWJDb3JlSklUT3BlcmF0aW9ucy5o
IgogI2ltcG9ydCAiV2ViQ29yZVRocmVhZEludGVybmFsLmgiCiAjaW1wb3J0ICJXZWJDb3JlVGhy
ZWFkTWVzc2FnZS5oIgogI2ltcG9ydCAiV2ViQ29yZVRocmVhZFJ1bi5oIgpAQCAtNjE2LDYgKzYx
Nyw3IEBAIHN0YXRpYyB2b2lkKiBSdW5XZWJUaHJlYWQodm9pZCopCiAgICAgLy8gPHJkYXI6Ly9w
cm9ibGVtLzg1MDI0ODc+LgogICAgIFdURjo6aW5pdGlhbGl6ZVdlYlRocmVhZCgpOwogICAgIEpT
Qzo6aW5pdGlhbGl6ZSgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwog
ICAgIAogICAgIC8vIE1ha2Ugc3VyZSB0aGF0IHRoZSBXZWJUaHJlYWQgYW5kIHRoZSBtYWluIHRo
cmVhZCBzaGFyZSB0aGUgc2FtZSBUaHJlYWRHbG9iYWxEYXRhIG9iamVjdHMuCiAgICAgV2ViQ29y
ZTo6dGhyZWFkR2xvYmFsRGF0YSgpLnNldFdlYkNvcmVUaHJlYWREYXRhKCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9BUEkvYy9XS1N0cmluZy5jcHAgYi9Tb3VyY2UvV2ViS2l0
L1NoYXJlZC9BUEkvYy9XS1N0cmluZy5jcHAKaW5kZXggMjY4NTViNDhiYTVhYWJmZGIyNTI4YmMw
MzlhNTIwYjIwZTFlZGMyZi4uMTBjNjQ4YWJmZDcwOTk0YWM4NjY1ZmExNTA5YjE3NWZlYjE3M2Vm
NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvQVBJL2MvV0tTdHJpbmcuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0FQSS9jL1dLU3RyaW5nLmNwcApAQCAtMjgsOCArMjgs
MTAgQEAKICNpbmNsdWRlICJXS1N0cmluZ1ByaXZhdGUuaCIKIAogI2luY2x1ZGUgIldLQVBJQ2Fz
dC5oIgorI2luY2x1ZGUgIldlYktpdEpJVE9wZXJhdGlvbnMuaCIKICNpbmNsdWRlIDxKYXZhU2Ny
aXB0Q29yZS9Jbml0aWFsaXplVGhyZWFkaW5nLmg+CiAjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUv
T3BhcXVlSlNTdHJpbmcuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25z
Lmg+CiAjaW5jbHVkZSA8d3RmL3VuaWNvZGUvVVRGOENvbnZlcnNpb24uaD4KIAogV0tUeXBlSUQg
V0tTdHJpbmdHZXRUeXBlSUQoKQpAQCAtMTM0LDUgKzEzNiw3IEBAIFdLU3RyaW5nUmVmIFdLU3Ry
aW5nQ3JlYXRlV2l0aEpTU3RyaW5nKEpTU3RyaW5nUmVmIGpzU3RyaW5nUmVmKQogSlNTdHJpbmdS
ZWYgV0tTdHJpbmdDb3B5SlNTdHJpbmcoV0tTdHJpbmdSZWYgc3RyaW5nUmVmKQogewogICAgIEpT
Qzo6aW5pdGlhbGl6ZSgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwor
ICAgIFdlYktpdDo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAgICAgcmV0dXJuIE9wYXF1ZUpT
U3RyaW5nOjp0cnlDcmVhdGUoV2ViS2l0Ojp0b0ltcGwoc3RyaW5nUmVmKS0+c3RyaW5nKCkpLmxl
YWtSZWYoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL1dlYktp
dDJJbml0aWFsaXplQ29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9XZWJLaXQy
SW5pdGlhbGl6ZUNvY29hLm1tCmluZGV4IDE0ZDI3OWY1N2ZkMzRjMDA0MGNmZjhkNjY3ZjU2MTZj
NWRjMGI1NmYuLjhlZjc0ZGVmNGFiYmVlOWEwOGFhYjRlNTM5MjE2OTdiNGRjZjIxMzYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL1dlYktpdDJJbml0aWFsaXplQ29jb2Eu
bW0KKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvV2ViS2l0MkluaXRpYWxpemVDb2Nv
YS5tbQpAQCAtMjcsNyArMjcsOSBAQAogI2ltcG9ydCAiV2ViS2l0MkluaXRpYWxpemUuaCIKIAog
I2ltcG9ydCAiVmVyc2lvbkNoZWNrcy5oIgorI2ltcG9ydCAiV2ViS2l0SklUT3BlcmF0aW9ucy5o
IgogI2ltcG9ydCA8SmF2YVNjcmlwdENvcmUvSW5pdGlhbGl6ZVRocmVhZGluZy5oPgorI2ltcG9y
dCA8V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0aW9ucy5oPgogI2ltcG9ydCA8bXV0ZXg+CiAjaW1w
b3J0IDx3dGYvTWFpblRocmVhZC5oPgogI2ltcG9ydCA8d3RmL1JlZkNvdW50ZWQuaD4KQEAgLTU0
LDYgKzU2LDkgQEAgc3RhdGljIHZvaWQgcnVuSW5pdGlhbGl6YXRpb25Db2RlKHZvaWQqID0gbnVs
bHB0cikKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CiAKICAgICBXVEY6OlJlZkNv
dW50ZWRCYXNlOjplbmFibGVUaHJlYWRpbmdDaGVja3NHbG9iYWxseSgpOworCisgICAgV2ViQ29y
ZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CisgICAgV2ViS2l0Ojpwb3B1bGF0ZUpJVE9wZXJh
dGlvbnMoKTsKIH0KIAogdm9pZCBJbml0aWFsaXplV2ViS2l0MigpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1NoYXJlZC9XZWJLaXQySW5pdGlhbGl6ZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1No
YXJlZC9XZWJLaXQySW5pdGlhbGl6ZS5jcHAKaW5kZXggNGE1M2YyY2VkYTNhYjk4NWE3MTQ0MTAx
YWVmOGZkNWVmMGVkNzAzYi4uNmJmYjhmNjlkOTQxNjI4MjcxMjZhMTY0ZGE2ZDI4YWUyOTM4MjM4
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViS2l0MkluaXRpYWxpemUuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYktpdDJJbml0aWFsaXplLmNwcApAQCAtMjcs
OCArMjcsMTAgQEAKICNpbmNsdWRlICJXZWJLaXQySW5pdGlhbGl6ZS5oIgogCiAjaW5jbHVkZSAi
TG9nSW5pdGlhbGl6YXRpb24uaCIKKyNpbmNsdWRlICJXZWJLaXRKSVRPcGVyYXRpb25zLmgiCiAj
aW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSW5pdGlhbGl6ZVRocmVhZGluZy5oPgogI2luY2x1ZGUg
PFdlYkNvcmUvTG9nSW5pdGlhbGl6YXRpb24uaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1dlYkNvcmVK
SVRPcGVyYXRpb25zLmg+CiAjaW5jbHVkZSA8d3RmL01haW5UaHJlYWQuaD4KICNpbmNsdWRlIDx3
dGYvUmVmQ291bnRlZC5oPgogI2luY2x1ZGUgPHd0Zi9SdW5Mb29wLmg+CkBAIC00OSw2ICs1MSw5
IEBAIHZvaWQgSW5pdGlhbGl6ZVdlYktpdDIoKQogICAgIFdlYkNvcmU6OmluaXRpYWxpemVMb2dD
aGFubmVsc0lmTmVjZXNzYXJ5KCk7CiAgICAgV2ViS2l0Ojppbml0aWFsaXplTG9nQ2hhbm5lbHNJ
Zk5lY2Vzc2FyeSgpOwogI2VuZGlmIC8vICFMT0dfRElTQUJMRUQgfHwgIVJFTEVBU0VfTE9HX0RJ
U0FCTEVECisKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKKyAgICBXZWJL
aXQ6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogfQogCiAjZW5kaWYgLy8gIVBMQVRGT1JNKENP
Q09BKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViS2l0SklUT3BlcmF0aW9u
cy5jcHAgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJLaXRKSVRPcGVyYXRpb25zLmNwcApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5hNDUyOTUxNzc3M2YwYzY0NmFlMGJmMmU2ZjAzNjAxMzBmZGFlZGU5Ci0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViS2l0SklUT3BlcmF0aW9ucy5jcHAK
QEAgLTAsMCArMSw1MCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFy
ZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNs
dWRlICJXZWJLaXRKSVRPcGVyYXRpb25zLmgiCisKKyNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9K
SVRPcGVyYXRpb25MaXN0Lmg+CisKK25hbWVzcGFjZSBXZWJLaXQgeworCisjaWYgRU5BQkxFKEpJ
VF9PUEVSQVRJT05fVkFMSURBVElPTikKK2V4dGVybiBjb25zdCB1aW50cHRyX3Qgc3RhcnRPZkhv
c3RGdW5jdGlvbnNJbldlYktpdCBfX2FzbSgic2VjdGlvbiRzdGFydCRfX0RBVEFfQ09OU1QkX19q
c2NfaG9zdCIpOworZXh0ZXJuIGNvbnN0IHVpbnRwdHJfdCBlbmRPZkhvc3RGdW5jdGlvbnNJbldl
YktpdCBfX2FzbSgic2VjdGlvbiRlbmQkX19EQVRBX0NPTlNUJF9fanNjX2hvc3QiKTsKK2V4dGVy
biBjb25zdCB1aW50cHRyX3Qgc3RhcnRPZkpJVE9wZXJhdGlvbnNJbldlYktpdCBfX2FzbSgic2Vj
dGlvbiRzdGFydCRfX0RBVEFfQ09OU1QkX19qc2Nfb3BzIik7CitleHRlcm4gY29uc3QgdWludHB0
cl90IGVuZE9mSklUT3BlcmF0aW9uc0luV2ViS2l0IF9fYXNtKCJzZWN0aW9uJGVuZCRfX0RBVEFf
Q09OU1QkX19qc2Nfb3BzIik7CisjZW5kaWYKKwordm9pZCBwb3B1bGF0ZUpJVE9wZXJhdGlvbnMo
KQoreworI2lmIEVOQUJMRShKSVRfT1BFUkFUSU9OX1ZBTElEQVRJT04pCisgICAgc3RkOjpvbmNl
X2ZsYWcgb25jZUtleTsKKyAgICBzdGQ6OmNhbGxfb25jZShvbmNlS2V5LCBbXSB7CisgICAgICAg
IEpTQzo6SklUT3BlcmF0aW9uTGlzdDo6cG9wdWxhdGVQb2ludGVyc0luRW1iZWRkZXIoJnN0YXJ0
T2ZIb3N0RnVuY3Rpb25zSW5XZWJLaXQsICZlbmRPZkhvc3RGdW5jdGlvbnNJbldlYktpdCwgJnN0
YXJ0T2ZKSVRPcGVyYXRpb25zSW5XZWJLaXQsICZlbmRPZkpJVE9wZXJhdGlvbnNJbldlYktpdCk7
CisgICAgfSk7CisjZW5kaWYKK30KKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFy
ZWQvV2ViS2l0SklUT3BlcmF0aW9ucy5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViS2l0SklU
T3BlcmF0aW9ucy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgyN2FjMmNmYWM4Mzg0OWIyNGZiMDNiNDExNTAyOWU0
ZmZjMDQzYjMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJLaXRK
SVRPcGVyYXRpb25zLmgKQEAgLTAsMCArMSwzMiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAy
MCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBg
QVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklC
VVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25j
ZQorCituYW1lc3BhY2UgV2ViS2l0IHsKKwordm9pZCBwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsK
KworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9Tb3VyY2VzLnR4dCBiL1NvdXJjZS9XZWJL
aXQvU291cmNlcy50eHQKaW5kZXggZWM0MTE2NjVhMWZlMzNiZTViMTY0ODE0NGZkZjkzYmRkMWQ0
YWEyZS4uYmMyYzQ5NDNhZWJlNWNjYWY4Yjk0N2VkNzFhZTAzMGY0ZjMyZDk4MyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViS2l0L1NvdXJjZXMu
dHh0CkBAIC0xOTcsNiArMTk3LDcgQEAgU2hhcmVkL1dlYkhpdFRlc3RSZXN1bHREYXRhLmNwcAog
U2hhcmVkL1dlYkltYWdlLmNwcAogU2hhcmVkL1dlYktleWJvYXJkRXZlbnQuY3BwIEBuby11bmlm
eQogU2hhcmVkL1dlYktpdDJJbml0aWFsaXplLmNwcCBAbm8tdW5pZnkKK1NoYXJlZC9XZWJLaXRK
SVRPcGVyYXRpb25zLmNwcCBAbm8tdW5pZnkKIFNoYXJlZC9XZWJNZW1vcnlTYW1wbGVyLmNwcAog
U2hhcmVkL1dlYk1vdXNlRXZlbnQuY3BwIEBuby11bmlmeQogU2hhcmVkL1dlYlBhZ2VDcmVhdGlv
blBhcmFtZXRlcnMuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagppbmRleCA1M2I2NGY3NWVkZDQzY2U5NWY3NjQxMzQ3ZDhhNTc4YTA2YjY0M2Fl
Li44MzA5OTAxYjE5MzUxY2Y5NDU3NmFjNjQ4OTc4YzI4NGY4ZTRhNzg1IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJj
ZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE4MDEsNiArMTgw
MSw3IEBACiAJCUUxRDI2QTUzMTc1OTY0RDkwMDk1QkZEMSAvKiBXZWJDb250ZW50UHJvY2Vzcy54
aWIgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxRDI2
QTRDMTc1OTYzNEUwMDk1QkZEMSAvKiBXZWJDb250ZW50UHJvY2Vzcy54aWIgKi87IH07CiAJCUUx
RTU1MkM1MTZBRTA2NUYwMDRFRDY1MyAvKiBTYW5kYm94SW5pdGlhbGl6YXRpb25QYXJhbWV0ZXJz
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMUU1NTJD
MzE2QUUwNjVFMDA0RUQ2NTMgLyogU2FuZGJveEluaXRpYWxpemF0aW9uUGFyYW1ldGVycy5oICov
OyB9OwogCQlFMUVFNTNFMzExRjhDRkMwMDBDQ0JFRTQgLyogSW5qZWN0ZWRCdW5kbGVQYWdlRWRp
dG9yQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBFMUVFNTNEQzExRjhDRjlGMDBDQ0JFRTQgLyogSW5qZWN0ZWRCdW5kbGVQYWdlRWRpdG9yQ2xp
ZW50LmggKi87IH07CisJCUUzNTgyQzJCMjUyN0Y2QUEwMEQxQjc5MCAvKiBXZWJLaXRKSVRPcGVy
YXRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBF
MzU4MkMyQTI1MjdGNjlDMDBEMUI3OTAgLyogV2ViS2l0SklUT3BlcmF0aW9ucy5oICovOyB9Owog
CQlFMzg2NkFFNTIzOTc0MDA0MDBGODhGRTkgLyogV2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQ
cm92aWRlclByb3h5Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRTM4NjZBRTQyMzk3NDAwNDAwRjg4RkU5IC8qIFdlYkRldmljZU9yaWVudGF0aW9uVXBk
YXRlUHJvdmlkZXJQcm94eS5tbSAqLzsgfTsKIAkJRTM4NjZBRTcyMzk3NDA1MzAwRjg4RkU5IC8q
IFdlYkRldmljZU9yaWVudGF0aW9uVXBkYXRlUHJvdmlkZXJQcm94eS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTM4NjZBRTYyMzk3NDA1MzAwRjg4RkU5
IC8qIFdlYkRldmljZU9yaWVudGF0aW9uVXBkYXRlUHJvdmlkZXJQcm94eS5oICovOyB9OwogCQlF
Mzg2NkIwODIzOTlBMkQxMDBGODhGRTkgLyogV2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92
aWRlclByb3h5TWVzc2FnZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEUzODY2QjA1MjM5OTk3OUMwMEY4OEZFOSAvKiBXZWJEZXZpY2VPcmllbnRhdGlv
blVwZGF0ZVByb3ZpZGVyUHJveHlNZXNzYWdlcy5oICovOyB9OwpAQCAtMTgxMCw2ICsxODExLDcg
QEAKIAkJRTM4QTFGQzAyM0E1NTFCRjAwRDIzNzRGIC8qIFVzZXJJbnRlcmZhY2VJZGlvbS5tbSBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzOEExRkJGMjNB
NTUxQkYwMEQyMzc0RiAvKiBVc2VySW50ZXJmYWNlSWRpb20ubW0gKi87IH07CiAJCUUzOTYyOERE
MjM5NjBDQzYwMDY1OEVDRCAvKiBXZWJEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3ZpZGVyLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMzk2MjhEQjIz
OTYwQ0M1MDA2NThFQ0QgLyogV2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92aWRlci5oICov
OyB9OwogCQlFMzk2MjhERTIzOTYwQ0M2MDA2NThFQ0QgLyogV2ViRGV2aWNlT3JpZW50YXRpb25V
cGRhdGVQcm92aWRlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBFMzk2MjhEQzIzOTYwQ0M2MDA2NThFQ0QgLyogV2ViRGV2aWNlT3JpZW50YXRpb25V
cGRhdGVQcm92aWRlci5jcHAgKi87IH07CisJCUUzQzg0NjdDMjUyN0Y5REUwMDU0RkQ5QyAvKiBX
ZWJLaXRKSVRPcGVyYXRpb25zLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEUzNTgyQzI5MjUyN0Y2OUIwMEQxQjc5MCAvKiBXZWJLaXRKSVRPcGVyYXRp
b25zLmNwcCAqLzsgfTsKIAkJRTNDQUFBNDQyNDEzMjc5OTAwQ0VEMkUyIC8qIEFjY2Vzc2liaWxp
dHlTdXBwb3J0U1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBFM0NBQUE0MzI0MTMyNzhBMDBDRUQyRTIgLyogQWNjZXNzaWJpbGl0eVN1cHBvcnRTUEku
aCAqLzsgfTsKIAkJRTQxM0Y1OUQxQUMxQURDNDAwMzQ1MzYwIC8qIE5ldHdvcmtDYWNoZUVudHJ5
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNDEzRjU5
QjFBQzFBREI2MDAzNDUzNjAgLyogTmV0d29ya0NhY2hlRW50cnkuaCAqLzsgfTsKIAkJRTQyRTA2
MTAxQUE3NTIzQjAwQjExNjk5IC8qIE5ldHdvcmtDYWNoZUlPQ2hhbm5lbC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTQyRTA2MEIxQUE3NDQwRDAwQjEx
Njk5IC8qIE5ldHdvcmtDYWNoZUlPQ2hhbm5lbC5oICovOyB9OwpAQCAtNTI4Miw2ICs1Mjg0LDgg
QEAKIAkJRTFFRTUzREMxMUY4Q0Y5RjAwQ0NCRUU0IC8qIEluamVjdGVkQnVuZGxlUGFnZUVkaXRv
ckNsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbmplY3RlZEJ1bmRs
ZVBhZ2VFZGl0b3JDbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTFFRTUz
RTYxMUY4Q0ZGQjAwQ0NCRUU0IC8qIEluamVjdGVkQnVuZGxlUGFnZUVkaXRvckNsaWVudC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbmplY3RlZEJ1bmRsZVBhZ2VF
ZGl0b3JDbGllbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFMzQzOUI2MzIz
NDU0NjNBMDAxMURFMEIgLyogTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uSW5mby5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IG5hbWUgPSBOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb25JbmZvLmg7IHBhdGggPSBOZXR3b3JrL05l
dHdvcmtQcm9jZXNzQ29ubmVjdGlvbkluZm8uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJRTM1ODJDMjkyNTI3RjY5QjAwRDFCNzkwIC8qIFdlYktpdEpJVE9wZXJhdGlvbnMuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViS2l0SklUT3BlcmF0aW9ucy5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUzNTgyQzJBMjUyN0Y2OUMwMEQxQjc5
MCAvKiBXZWJLaXRKSVRPcGVyYXRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFdlYktpdEpJVE9wZXJhdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
RTM4NjZBRTQyMzk3NDAwNDAwRjg4RkU5IC8qIFdlYkRldmljZU9yaWVudGF0aW9uVXBkYXRlUHJv
dmlkZXJQcm94eS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgbmFtZSA9IFdl
YkRldmljZU9yaWVudGF0aW9uVXBkYXRlUHJvdmlkZXJQcm94eS5tbTsgcGF0aCA9IGlvcy9XZWJE
ZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3ZpZGVyUHJveHkubW07IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUUzODY2QUU2MjM5NzQwNTMwMEY4OEZFOSAvKiBXZWJEZXZpY2VPcmllbnRh
dGlvblVwZGF0ZVByb3ZpZGVyUHJveHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1l
ID0gV2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92aWRlclByb3h5Lmg7IHBhdGggPSBpb3Mv
V2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92aWRlclByb3h5Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUUzODY2QUVEMjM5ODQ3MUEwMEY4OEZFOSAvKiBXZWJEZXZpY2VPcmll
bnRhdGlvblVwZGF0ZVByb3ZpZGVyUHJveHkubWVzc2FnZXMuaW4gKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBu
YW1lID0gV2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92aWRlclByb3h5Lm1lc3NhZ2VzLmlu
OyBwYXRoID0gaW9zL1dlYkRldmljZU9yaWVudGF0aW9uVXBkYXRlUHJvdmlkZXJQcm94eS5tZXNz
YWdlcy5pbjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTYxMTYsNiArNjEyMCw4IEBA
CiAJCQkJQzAzMzdERDIxMjdBMkEwRTAwOEZGNEY0IC8qIFdlYktleWJvYXJkRXZlbnQuY3BwICov
LAogCQkJCUJDOUJBNTAyMTY5N0M0NTMwMEU0NDYxNiAvKiBXZWJLaXQySW5pdGlhbGl6ZS5jcHAg
Ki8sCiAJCQkJQkM5QkE1MDMxNjk3QzQ1MzAwRTQ0NjE2IC8qIFdlYktpdDJJbml0aWFsaXplLmgg
Ki8sCisJCQkJRTM1ODJDMjkyNTI3RjY5QjAwRDFCNzkwIC8qIFdlYktpdEpJVE9wZXJhdGlvbnMu
Y3BwICovLAorCQkJCUUzNTgyQzJBMjUyN0Y2OUMwMEQxQjc5MCAvKiBXZWJLaXRKSVRPcGVyYXRp
b25zLmggKi8sCiAJCQkJOTA1NjIwRTgxMkJDMjQ4QjAwMDc5OUI2IC8qIFdlYk1lbW9yeVNhbXBs
ZXIuY3BwICovLAogCQkJCTkwNTYyMEU5MTJCQzI0OEIwMDA3OTlCNiAvKiBXZWJNZW1vcnlTYW1w
bGVyLmggKi8sCiAJCQkJQzAzMzdEQUYxMjdBMjhEMDAwOEZGNEY0IC8qIFdlYk1vdXNlRXZlbnQu
Y3BwICovLApAQCAtMTEyOTMsNiArMTEyOTksNyBAQAogCQkJCTFBNjI4MEM1MTkxOTk0OUYwMDZB
RDlGOSAvKiBXZWJLaXQuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDQjYzNDc4MTE2QkYxMDYwMDYw
MzIxNSAvKiBXZWJLaXQyX0MuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDOUJBNTA1MTY5N0M0NTMw
MEU0NDYxNiAvKiBXZWJLaXQySW5pdGlhbGl6ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTM1ODJD
MkIyNTI3RjZBQTAwRDFCNzkwIC8qIFdlYktpdEpJVE9wZXJhdGlvbnMuaCBpbiBIZWFkZXJzICov
LAogCQkJCTFBNjI4MEM3MTkxOTk1MEMwMDZBRDlGOSAvKiBXZWJLaXRQcml2YXRlLmggaW4gSGVh
ZGVycyAqLywKIAkJCQlDRDAwM0E1MzE5RDQ5QjVEMDA1QUJDRTAgLyogV2ViTWVkaWFLZXlTdG9y
YWdlTWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOUI1QkVDMjYyNDAwRjRBOTAwNzBDNkVG
IC8qIFdlYk1lZGlhU3RyYXRlZ3kuaCBpbiBIZWFkZXJzICovLApAQCAtMTMwMjgsNiArMTMwMzUs
NyBAQAogCQkJCTFBNjI4MEYzMTkxOTk4MkEwMDZBRDlGOSAvKiBXZWJLaXQubSBpbiBTb3VyY2Vz
ICovLAogCQkJCTJEOTJBNzhCMjEyQjZBQjEwMEY0OTNGRCAvKiBXZWJLaXQySW5pdGlhbGl6ZS5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQlBMTgxQTc5ODIxQUNDNzRCMDA1OUEzMTYgLyogV2ViS2l0
QWRkaXRpb25zLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJRTNDODQ2N0MyNTI3RjlERTAwNTRGRDlD
IC8qIFdlYktpdEpJVE9wZXJhdGlvbnMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTFGMDYwRTEx
NjU0MzE4NTAwRjMyODJGIC8qIFdlYk1ETlNSZWdpc3Rlck1lc3NhZ2VSZWNlaXZlci5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQkyRDkyQTc4QzIxMkI2QUIxMDBGNDkzRkQgLyogV2ViTW91c2VFdmVu
dC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUJBOTI0RDE0ODgzMTI2MDA2MkVEQjUgLyogV2Vi
Tm90aWZpY2F0aW9uTWFuYWdlck1lc3NhZ2VSZWNlaXZlci5jcHAgaW4gU291cmNlcyAqLywKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0hpc3RvcnkvV2ViQmFja0ZvcndhcmRM
aXN0Lm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvSGlzdG9yeS9XZWJCYWNrRm9yd2FyZExp
c3QubW0KaW5kZXggZjJmMTNlYmY4ZTU1Y2UxNmI3Njc0YjU3OGU4MGVmNjA3YzBlYzdlOC4uZDZh
Zjc1NWZmYTczOGI5OTNmN2Y3ODdlYzNlOGMzZjRlY2RhNzBmMyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdExlZ2FjeS9tYWMvSGlzdG9yeS9XZWJCYWNrRm9yd2FyZExpc3QubW0KKysrIGIvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvSGlzdG9yeS9XZWJCYWNrRm9yd2FyZExpc3QubW0KQEAgLTQ0
LDYgKzQ0LDcgQEAKICNpbXBvcnQgPFdlYkNvcmUvSGlzdG9yeUl0ZW0uaD4KICNpbXBvcnQgPFdl
YkNvcmUvU2V0dGluZ3MuaD4KICNpbXBvcnQgPFdlYkNvcmUvVGhyZWFkQ2hlY2suaD4KKyNpbXBv
cnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2Vi
Q29yZU9iakNFeHRyYXMuaD4KICNpbXBvcnQgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW1wb3J0IDx3
dGYvTWFpblRocmVhZC5oPgpAQCAtMTAwLDYgKzEwMSw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQog
I2lmICFQTEFURk9STShJT1NfRkFNSUxZKQogICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdU
Rjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJh
dGlvbnMoKTsKICNlbmRpZgogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21h
Yy9IaXN0b3J5L1dlYkhpc3RvcnlJdGVtLm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvSGlz
dG9yeS9XZWJIaXN0b3J5SXRlbS5tbQppbmRleCBmNjg4ZGM4OWEyYmM1Zjk4NDdkZjlmYjllZTQ5
ZWRkNzA1OGQ2MGQwLi44N2U2MjlmOTk0OWYxMjE0ODA0YmZlZDRhMDJiMTQ2NzVlN2NjYjZlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9IaXN0b3J5L1dlYkhpc3RvcnlJdGVt
Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0hpc3RvcnkvV2ViSGlzdG9yeUl0ZW0u
bW0KQEAgLTQ3LDYgKzQ3LDcgQEAKICNpbXBvcnQgPFdlYkNvcmUvSGlzdG9yeUl0ZW0uaD4KICNp
bXBvcnQgPFdlYkNvcmUvSW1hZ2UuaD4KICNpbXBvcnQgPFdlYkNvcmUvVGhyZWFkQ2hlY2suaD4K
KyNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbXBvcnQgPFdlYkNv
cmUvV2ViQ29yZU9iakNFeHRyYXMuaD4KICNpbXBvcnQgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW1w
b3J0IDx3dGYvTWFpblRocmVhZC5oPgpAQCAtMTI3LDYgKzEyOCw3IEBAICsgKHZvaWQpaW5pdGlh
bGl6ZQogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQogICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwog
ICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJ
VE9wZXJhdGlvbnMoKTsKICNlbmRpZgogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9NaXNjL1dlYkNhY2hlLm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvTWlzYy9X
ZWJDYWNoZS5tbQppbmRleCBhYjgzMDFkZGNkMGMwNzkyNjkwMzQ2Mjc4OGE3NDQ2MGRhMzVkNWEx
Li5kODE3Njk5Njc1ZWNmYmI5YzIzNjc5MzVjMjJjNTdjNzhhNGEzNGYxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0TGVnYWN5L21hYy9NaXNjL1dlYkNhY2hlLm1tCisrKyBiL1NvdXJjZS9XZWJL
aXRMZWdhY3kvbWFjL01pc2MvV2ViQ2FjaGUubW0KQEAgLTQwLDYgKzQwLDcgQEAKICNpbXBvcnQg
PFdlYkNvcmUvTWVtb3J5Q2FjaGUuaD4KICNpbXBvcnQgPFdlYkNvcmUvTmV0d29ya1N0b3JhZ2VT
ZXNzaW9uLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1N0b3JhZ2VTZXNzaW9uUHJvdmlkZXIuaD4KKyNp
bXBvcnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbXBvcnQgPHd0Zi9NYWlu
VGhyZWFkLmg+CiAjaW1wb3J0IDx3dGYvUnVuTG9vcC5oPgogCkBAIC02NSw2ICs2Niw3IEBAICsg
KHZvaWQpaW5pdGlhbGl6ZQogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQogICAgIEpTQzo6aW5p
dGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJDb3Jl
Ojpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZgogfQogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0TGVnYWN5L21hYy9NaXNjL1dlYkVsZW1lbnREaWN0aW9uYXJ5Lm1tIGIvU291cmNl
L1dlYktpdExlZ2FjeS9tYWMvTWlzYy9XZWJFbGVtZW50RGljdGlvbmFyeS5tbQppbmRleCA5OTgy
OTA1ZTJiYTMzZWQzODI4YmI3NDg3NDE5Nzc5M2Y0NGJmYjQyLi4xZmI1MThmODc0YjgzZTY0YWZl
NWZmNDk4ZDFlZjUxY2UzMTg1ZmM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21h
Yy9NaXNjL1dlYkVsZW1lbnREaWN0aW9uYXJ5Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL01pc2MvV2ViRWxlbWVudERpY3Rpb25hcnkubW0KQEAgLTQxLDYgKzQxLDcgQEAKICNpbXBv
cnQgPFdlYkNvcmUvRnJhbWUuaD4KICNpbXBvcnQgPFdlYkNvcmUvSGl0VGVzdFJlc3VsdC5oPgog
I2ltcG9ydCA8V2ViQ29yZS9JbWFnZS5oPgorI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlSklUT3Bl
cmF0aW9ucy5oPgogI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlT2JqQ0V4dHJhcy5oPgogI2ltcG9y
dCA8V2ViS2l0TGVnYWN5L0RPTUNvcmUuaD4KICNpbXBvcnQgPFdlYktpdExlZ2FjeS9ET01FeHRl
bnNpb25zLmg+CkBAIC02OSw2ICs3MCw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogI2lmICFQTEFU
Rk9STShJT1NfRkFNSUxZKQogICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlh
bGl6ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsK
ICNlbmRpZgogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9NaXNjL1dl
Ykljb25EYXRhYmFzZS5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL01pc2MvV2ViSWNvbkRh
dGFiYXNlLm1tCmluZGV4IDRjMWRjYjI0M2VkM2Y0YTFiMzFiOTk4YWRmZDcyZGNmZmFkNTRiZDAu
LjlhMWIyY2I2Yzc5NzBlNmE4ODE2NTg5OGYyOWQzMDBkNmIzMGExMWYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXRMZWdhY3kvbWFjL01pc2MvV2ViSWNvbkRhdGFiYXNlLm1tCisrKyBiL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL01pc2MvV2ViSWNvbkRhdGFiYXNlLm1tCkBAIC0zNCw2ICszNCw3
IEBACiAjaW1wb3J0IDxKYXZhU2NyaXB0Q29yZS9Jbml0aWFsaXplVGhyZWFkaW5nLmg+CiAjaW1w
b3J0IDxXZWJDb3JlL0ltYWdlLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1RocmVhZENoZWNrLmg+Cisj
aW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0IDx3dGYvTWFp
blRocmVhZC5oPgogI2ltcG9ydCA8d3RmL05ldmVyRGVzdHJveWVkLmg+CiAjaW1wb3J0IDx3dGYv
UnVuTG9vcC5oPgpAQCAtOTksNiArMTAwLDcgQEAgKyAodm9pZClpbml0aWFsaXplCiB7CiAgICAg
SlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOworICAg
IFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogfQogCiArIChXZWJJY29uRGF0YWJh
c2UgKilzaGFyZWRJY29uRGF0YWJhc2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL01pc2MvV2ViU3RyaW5nVHJ1bmNhdG9yLm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMv
TWlzYy9XZWJTdHJpbmdUcnVuY2F0b3IubW0KaW5kZXggOTlkNzljMTk2NzUyNDA5MjAyMjM1Njdi
NzVjOTBjYzU1NjgxMGI5NC4uOThlY2FhOTQzNTY0NmY2MGVhZjE1YzM0NTE1NjhjOTIwNzA2M2Ux
MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvTWlzYy9XZWJTdHJpbmdUcnVu
Y2F0b3IubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvTWlzYy9XZWJTdHJpbmdUcnVu
Y2F0b3IubW0KQEAgLTMyLDYgKzMyLDcgQEAKICNpbXBvcnQgPFdlYkNvcmUvRm9udENhc2NhZGUu
aD4KICNpbXBvcnQgPFdlYkNvcmUvRm9udFBsYXRmb3JtRGF0YS5oPgogI2ltcG9ydCA8V2ViQ29y
ZS9TdHJpbmdUcnVuY2F0b3IuaD4KKyNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlv
bnMuaD4KICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+CiAjaW1wb3J0IDx3dGYvTmV2ZXJEZXN0
cm95ZWQuaD4KIApAQCAtNTIsNiArNTMsNyBAQCArICh2b2lkKWluaXRpYWxpemUKIHsKICAgICBK
U0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAg
V2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiB9CiAKICsgKE5TU3RyaW5nICopY2Vu
dGVyVHJ1bmNhdGVTdHJpbmc6KE5TU3RyaW5nICopc3RyaW5nIHRvV2lkdGg6KGZsb2F0KW1heFdp
ZHRoCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL0hvc3RlZC9X
ZWJIb3N0ZWROZXRzY2FwZVBsdWdpblZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9Q
bHVnaW5zL0hvc3RlZC9XZWJIb3N0ZWROZXRzY2FwZVBsdWdpblZpZXcubW0KaW5kZXggNDc2YTU1
ZWRhMTZlMzRjNGVkYTYyYzRmOWI2MDlmMzMwZTYyMWRlZC4uNzYxMTcxY2VhN2NhNWZhNjcyOGM5
ZGMwMGQyZWI3YjJkMThmNzc4MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMv
UGx1Z2lucy9Ib3N0ZWQvV2ViSG9zdGVkTmV0c2NhcGVQbHVnaW5WaWV3Lm1tCisrKyBiL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvSG9zdGVkL1dlYkhvc3RlZE5ldHNjYXBlUGx1Z2lu
Vmlldy5tbQpAQCAtNDcsNiArNDcsNyBAQAogI2ltcG9ydCA8V2ViQ29yZS9SZW5kZXJFbWJlZGRl
ZE9iamVjdC5oPgogI2ltcG9ydCA8V2ViQ29yZS9SZXNvdXJjZUVycm9yLmg+CiAjaW1wb3J0IDxX
ZWJDb3JlL1dlYkNvcmVDQUxheWVyRXh0cmFzLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVK
SVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0IDxXZWJDb3JlL3J1bnRpbWVfcm9vdC5oPgogI2ltcG9y
dCA8cGFsL3NwaS9jb2NvYS9RdWFydHpDb3JlU1BJLmg+CiAjaW1wb3J0IDx3dGYvQXNzZXJ0aW9u
cy5oPgpAQCAtMTA3LDYgKzEwOCw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogI2lmICFQTEFURk9S
TShJT1NfRkFNSUxZKQogICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6
ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNl
bmRpZgogICAgIHNlbmRVc2VyQ2hhbmdlTm90aWZpY2F0aW9ucygpOwogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9XZWJCYXNlTmV0c2NhcGVQbHVnaW5WaWV3
Lm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9XZWJCYXNlTmV0c2NhcGVQbHVn
aW5WaWV3Lm1tCmluZGV4IDdlYzQwYzk5N2FkMDU1NjQxMTFmNzg2MTRhNjczM2I5ZDQwMTIxOGQu
LjJkZGE3YjYzOTNjZWNjZGM5YzgxMmM2MzgzOTE4OGQ2YTQzNWQxNDggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvV2ViQmFzZU5ldHNjYXBlUGx1Z2luVmlldy5t
bQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL1dlYkJhc2VOZXRzY2FwZVBs
dWdpblZpZXcubW0KQEAgLTU0LDYgKzU0LDcgQEAKICNpbXBvcnQgPFdlYkNvcmUvUmVuZGVyRW1i
ZWRkZWRPYmplY3QuaD4KICNpbXBvcnQgPFdlYkNvcmUvUmVuZGVyVmlldy5oPgogI2ltcG9ydCA8
V2ViQ29yZS9TZWN1cml0eU9yaWdpbi5oPgorI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlSklUT3Bl
cmF0aW9ucy5oPgogI2ltcG9ydCA8V2ViS2l0TGVnYWN5L0RPTVByaXZhdGUuaD4KICNpbXBvcnQg
PHBhbC9zcGkvY2cvQ29yZUdyYXBoaWNzU1BJLmg+CiAjaW1wb3J0IDx3dGYvQXNzZXJ0aW9ucy5o
PgpAQCAtNzIsNiArNzMsNyBAQCArICh2b2lkKWluaXRpYWxpemUKIHsKICAgICBKU0M6OmluaXRp
YWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAgV2ViQ29yZTo6
cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAgICAgV2ViS2l0OjpzZW5kVXNlckNoYW5nZU5vdGlm
aWNhdGlvbnMoKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1
Z2lucy9XZWJCYXNlUGx1Z2luUGFja2FnZS5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1Bs
dWdpbnMvV2ViQmFzZVBsdWdpblBhY2thZ2UubW0KaW5kZXggYWRlN2JhMjdhN2Y3ZjdkMzNhNGMx
ZjhlZDY4YzM3MDExMjc4MDBiYS4uZmNlM2NmOGQyZDhkMDY3ZTZmMTM1OTExNDgyN2I0ZTZlZjIz
ODdmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9XZWJCYXNl
UGx1Z2luUGFja2FnZS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL1dl
YkJhc2VQbHVnaW5QYWNrYWdlLm1tCkBAIC0zNCw2ICszNCw3IEBACiAjaW1wb3J0ICJXZWJQbHVn
aW5QYWNrYWdlLmgiCiAjaW1wb3J0ICJXZWJUeXBlc0ludGVybmFsLmgiCiAjaW1wb3J0IDxKYXZh
U2NyaXB0Q29yZS9Jbml0aWFsaXplVGhyZWFkaW5nLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNv
cmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0IDxhbGdvcml0aG0+CiAjaW1wb3J0IDxtYWNoLW8v
YXJjaC5oPgogI2ltcG9ydCA8bWFjaC1vL2ZhdC5oPgpAQCAtNjEsNiArNjIsNyBAQCArICh2b2lk
KWluaXRpYWxpemUKICNpZiAhUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICBKU0M6OmluaXRpYWxp
emUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAgV2ViQ29yZTo6cG9w
dWxhdGVKSVRPcGVyYXRpb25zKCk7CiAjZW5kaWYKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdExlZ2FjeS9tYWMvUGx1Z2lucy9XZWJOZXRzY2FwZVBsdWdpblZpZXcubW0gYi9Tb3VyY2Uv
V2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL1dlYk5ldHNjYXBlUGx1Z2luVmlldy5tbQppbmRleCAy
Y2FlZTJmMzE4MTU3YzFlMzI3M2YwMTYwZTk3YzYyMGJlZmY2ZTVkLi5hYmRlODYxY2ZmMDI3NzVi
MDFkNWNmYjY1MTIyZTU4NDEyMjIxNDAzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5
L21hYy9QbHVnaW5zL1dlYk5ldHNjYXBlUGx1Z2luVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0
TGVnYWN5L21hYy9QbHVnaW5zL1dlYk5ldHNjYXBlUGx1Z2luVmlldy5tbQpAQCAtNjgsNiArNjgs
NyBAQAogI2ltcG9ydCA8V2ViQ29yZS9TY3JpcHRDb250cm9sbGVyLmg+CiAjaW1wb3J0IDxXZWJD
b3JlL1NlY3VyaXR5T3JpZ2luLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1VzZXJHZXN0dXJlSW5kaWNh
dG9yLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0
IDxXZWJDb3JlL1dlYkNvcmVVUkxSZXNwb25zZS5oPgogI2ltcG9ydCA8V2ViQ29yZS9ucHJ1bnRp
bWVfaW1wbC5oPgogI2ltcG9ydCA8V2ViQ29yZS9ydW50aW1lX3Jvb3QuaD4KQEAgLTE2NCw2ICsx
NjUsNyBAQCArICh2b2lkKWluaXRpYWxpemUKIHsKICAgICBKU0M6OmluaXRpYWxpemUoKTsKICAg
ICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVKSVRP
cGVyYXRpb25zKCk7CiAgICAgc2VuZFVzZXJDaGFuZ2VOb3RpZmljYXRpb25zKCk7CiB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRv
ckNsaWVudC5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkVk
aXRvckNsaWVudC5tbQppbmRleCAyOGNhMWI5YWJiZTY0NmQ5ZTA0MGE1NjE2N2JmYjAzZGJjYmEz
ODE3Li5hZjFhYjI2OTBjNjQ3ZTY1MDM5YTAwZTRiNjExMDk2NjAzZjRkYmZjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJFZGl0b3JDbGllbnQu
bW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRWRpdG9y
Q2xpZW50Lm1tCkBAIC03OCw2ICs3OCw3IEBACiAjaW1wb3J0IDxXZWJDb3JlL1VzZXJUeXBpbmdH
ZXN0dXJlSW5kaWNhdG9yLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1Zpc2libGVVbml0cy5oPgogI2lt
cG9ydCA8V2ViQ29yZS9XZWJDb250ZW50UmVhZGVyLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNv
cmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVPYmpDRXh0cmFzLmg+
CiAjaW1wb3J0IDxwYWwvc3BpL2NvY29hL05TQXR0cmlidXRlZFN0cmluZ1NQSS5oPgogI2ltcG9y
dCA8cGFsL3NwaS9tYWMvTlNTcGVsbENoZWNrZXJTUEkuaD4KQEAgLTE0MCw2ICsxNDEsNyBAQCAr
ICh2b2lkKWluaXRpYWxpemUKICNpZiAhUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICBKU0M6Omlu
aXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAgV2ViQ29y
ZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAjZW5kaWYKIH0KIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQu
bW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRl
ckNsaWVudC5tbQppbmRleCBmNzBjODMwZjM0NDUxYTA0MzdkZmVmNDFlOTlmM2MwODRmODVkNTRl
Li42YzdiOGU2ZGJjZWZjMTdkNjhkZGVkMzNlYzMzMTE2YzBlZWFkODJlIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVu
dC5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFt
ZUxvYWRlckNsaWVudC5tbQpAQCAtMTE4LDYgKzExOCw3IEBACiAjaW1wb3J0IDxXZWJDb3JlL1Nj
cmlwdENvbnRyb2xsZXIuaD4KICNpbXBvcnQgPFdlYkNvcmUvU2hhcmVkQnVmZmVyLmg+CiAjaW1w
b3J0IDxXZWJDb3JlL1N1YnJlc291cmNlTG9hZGVyLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNv
cmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVPYmpDRXh0cmFzLmg+
CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkdMQmxvY2tsaXN0Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dl
YlNjcmlwdE9iamVjdFByaXZhdGUuaD4KQEAgLTIzNDYsNiArMjM0Nyw3IEBAICsgKHZvaWQpaW5p
dGlhbGl6ZQogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQogICAgIEpTQzo6aW5pdGlhbGl6ZSgp
OwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0
ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZgogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
TGVnYWN5L21hYy9XZWJWaWV3L1dlYkFyY2hpdmUubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21h
Yy9XZWJWaWV3L1dlYkFyY2hpdmUubW0KaW5kZXggYjIzN2M5ODVkZDE4MmI0NDA0NjdkYTVjMGFm
OTg0MGFlYzk4ZTBiYi4uMjU5YzdlOWVhNmQ1MWJmMGM3NDY5OTdkZmJkYTc5N2MxZWIwODhhNyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJBcmNoaXZlLm1t
CisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViQXJjaGl2ZS5tbQpAQCAt
MzcsNiArMzcsNyBAQAogI2ltcG9ydCA8V2ViQ29yZS9BcmNoaXZlUmVzb3VyY2UuaD4KICNpbXBv
cnQgPFdlYkNvcmUvTGVnYWN5V2ViQXJjaGl2ZS5oPgogI2ltcG9ydCA8V2ViQ29yZS9UaHJlYWRD
aGVjay5oPgorI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0aW9ucy5oPgogI2ltcG9y
dCA8V2ViQ29yZS9XZWJDb3JlT2JqQ0V4dHJhcy5oPgogI2ltcG9ydCA8d3RmL01haW5UaHJlYWQu
aD4KICNpbXBvcnQgPHd0Zi9SdW5Mb29wLmg+CkBAIC03MSw2ICs3Miw3IEBAICsgKHZvaWQpaW5p
dGlhbGl6ZQogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQogICAgIEpTQzo6aW5pdGlhbGl6ZSgp
OwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0
ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZgogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
TGVnYWN5L21hYy9XZWJWaWV3L1dlYkRhdGFTb3VyY2UubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5
L21hYy9XZWJWaWV3L1dlYkRhdGFTb3VyY2UubW0KaW5kZXggZDc3NzI2NDhjNDhkOWZhZWEyNzZk
ZmEyNjVjYTZhMGIwNTYyMmNkYy4uMWI1OTcxNjQ2ODUzYTZkMTZiYTYyODZlMGNhM2ZiM2ZiZGYx
M2Y0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJEYXRh
U291cmNlLm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViRGF0YVNv
dXJjZS5tbQpAQCAtNTUsNiArNTUsNyBAQAogI2ltcG9ydCA8V2ViQ29yZS9NSU1FVHlwZVJlZ2lz
dHJ5Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1Jlc291cmNlUmVxdWVzdC5oPgogI2ltcG9ydCA8V2Vi
Q29yZS9TaGFyZWRCdWZmZXIuaD4KKyNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlv
bnMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZU9iakNFeHRyYXMuaD4KICNpbXBvcnQgPFdl
YkNvcmUvV2ViQ29yZVVSTFJlc3BvbnNlLmg+CiAjaW1wb3J0IDxXZWJLaXRMZWdhY3kvRE9NSFRN
TC5oPgpAQCAtMTU1LDYgKzE1Niw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogI2lmICFQTEFURk9S
TShJT1NfRkFNSUxZKQogICAgICAgICBKU0M6OmluaXRpYWxpemUoKTsKICAgICAgICAgV1RGOjpp
bml0aWFsaXplTWFpblRocmVhZCgpOworICAgICAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJh
dGlvbnMoKTsKICNlbmRpZgogICAgIH0KIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvbWFjL1dlYlZpZXcvV2ViSFRNTFZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9X
ZWJWaWV3L1dlYkhUTUxWaWV3Lm1tCmluZGV4IDU1ODVmMGMyYmY4MzM1MDYwYTI2OGNkNjk2Y2Ez
NDFlYzBjMWEyYjIuLmVlNjQ4MWYzODYwYTdhN2I1MWExMTA3OGU0MzM4ZDcwNWNmZGFiNjEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViSFRNTFZpZXcubW0K
KysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbQpAQCAt
MTI3LDYgKzEyNyw3IEBACiAjaW1wb3J0IDxXZWJDb3JlL1RleHRBbHRlcm5hdGl2ZVdpdGhSYW5n
ZS5oPgogI2ltcG9ydCA8V2ViQ29yZS9UZXh0SW5kaWNhdG9yLmg+CiAjaW1wb3J0IDxXZWJDb3Jl
L1RleHRVbmRvSW5zZXJ0aW9uTWFya3VwTWFjLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVK
SVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVOU0ZvbnRNYW5hZ2VyRXh0
cmFzLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVPYmpDRXh0cmFzLmg+CiAjaW1wb3J0IDxX
ZWJDb3JlL1dlYk5TQXR0cmlidXRlZFN0cmluZ0V4dHJhcy5oPgpAQCAtMTAzMyw2ICsxMDM0LDcg
QEAgKyAodm9pZClpbml0aWFsaXplCiAKICAgICBKU0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6
OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRp
b25zKCk7CiAKICAgICBpZiAoIW9sZFNldEN1cnNvckZvck1vdXNlTG9jYXRpb25JTVApIHsKICAg
ICAgICAgTWV0aG9kIHNldEN1cnNvck1ldGhvZCA9IGNsYXNzX2dldEluc3RhbmNlTWV0aG9kKFtO
U1dpbmRvdyBjbGFzc10sIEBzZWxlY3Rvcihfc2V0Q3Vyc29yRm9yTW91c2VMb2NhdGlvbjopKTsK
QEAgLTI1NjgsNiArMjU3MCw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogCiAgICAgSlNDOjppbml0
aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOworICAgIFdlYkNvcmU6
OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogfQogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW0gYi9Tb3VyY2UvV2Vi
S2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzLm1tCmluZGV4IDYwM2YwYTcyYjM4
MGIzNmE5YThkMGNlMzY3MDU4NjkwZmQwYjI3YTIuLjMxNDcwNTIwZGM0MmJmNTg0ZjQ3MzkwMjYy
NGZmYmFlOTcwOTU4NTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZp
ZXcvV2ViUHJlZmVyZW5jZXMubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmll
dy9XZWJQcmVmZXJlbmNlcy5tbQpAQCAtNDgsNiArNDgsNyBAQAogI2ltcG9ydCA8V2ViQ29yZS9S
dW50aW1lQXBwbGljYXRpb25DaGVja3MuaD4KICNpbXBvcnQgPFdlYkNvcmUvU2V0dGluZ3MuaD4K
ICNpbXBvcnQgPFdlYkNvcmUvVGV4dEVuY29kaW5nUmVnaXN0cnkuaD4KKyNpbXBvcnQgPFdlYkNv
cmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbXBvcnQgPHBhbC9zcGkvY2YvQ0ZOZXR3b3Jr
U1BJLmg+CiAjaW1wb3J0IDx3dGYvTWFpblRocmVhZC5oPgogI2ltcG9ydCA8d3RmL1JldGFpblB0
ci5oPgpAQCAtMzc2LDYgKzM3Nyw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogI2lmIFBMQVRGT1JN
KE1BQykKICAgICBKU0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhy
ZWFkKCk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAjZW5kaWYKIAog
ICAgIE5TRGljdGlvbmFyeSAqZGljdCA9IFtOU0RpY3Rpb25hcnkgZGljdGlvbmFyeVdpdGhPYmpl
Y3RzQW5kS2V5czoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcv
V2ViUmVzb3VyY2UubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlJlc291
cmNlLm1tCmluZGV4IDQ0N2UyYTFhOTkyMjM4NzA4MjNhZDI3MDI5OWExNzAyNDc3MjA2ZmIuLmVm
MTA5ODZkYTg3NTNhYjMxMDllMGFmMTYyMWIzMDEyZjRlOWU2YTYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViUmVzb3VyY2UubW0KKysrIGIvU291cmNlL1dl
YktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJSZXNvdXJjZS5tbQpAQCAtNDAsNiArNDAsNyBAQAog
I2ltcG9ydCA8V2ViQ29yZS9SdW50aW1lQXBwbGljYXRpb25DaGVja3MuaD4KICNpbXBvcnQgPFdl
YkNvcmUvVGV4dEVuY29kaW5nLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1RocmVhZENoZWNrLmg+Cisj
aW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0IDxXZWJDb3Jl
L1dlYkNvcmVPYmpDRXh0cmFzLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVVUkxSZXNwb25z
ZS5oPgogI2ltcG9ydCA8d3RmL01haW5UaHJlYWQuaD4KQEAgLTY5LDYgKzcwLDcgQEAgKyAodm9p
ZClpbml0aWFsaXplCiAjaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAgSlNDOjppbml0aWFs
aXplKCk7CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOworICAgIFdlYkNvcmU6OnBv
cHVsYXRlSklUT3BlcmF0aW9ucygpOwogI2VuZGlmCiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVGV4dEl0ZXJhdG9yLm1tIGIvU291cmNlL1dlYktp
dExlZ2FjeS9tYWMvV2ViVmlldy9XZWJUZXh0SXRlcmF0b3IubW0KaW5kZXggZDNhZDkxOGRhN2Vl
M2Y2ZjU4ZjQwOTAzYzdlMTdkNmE2NmUzODdhMS4uYWJhNzFhZjI1NDMxOTVmNTY1MGI3MWUwNzU0
MmYzYzcxMTQ3YWE3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmll
dy9XZWJUZXh0SXRlcmF0b3IubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmll
dy9XZWJUZXh0SXRlcmF0b3IubW0KQEAgLTMxLDYgKzMxLDcgQEAKICNpbXBvcnQgPEphdmFTY3Jp
cHRDb3JlL0luaXRpYWxpemVUaHJlYWRpbmcuaD4KICNpbXBvcnQgPFdlYkNvcmUvUmFuZ2UuaD4K
ICNpbXBvcnQgPFdlYkNvcmUvVGV4dEl0ZXJhdG9yLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNv
cmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0IDx3dGYvTWFpblRocmVhZC5oPgogI2ltcG9ydCA8
d3RmL1J1bkxvb3AuaD4KICNpbXBvcnQgPHd0Zi9WZWN0b3IuaD4KQEAgLTQ5LDYgKzUwLDcgQEAg
KyAodm9pZClpbml0aWFsaXplCiAjaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAgSlNDOjpp
bml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOworICAgIFdlYkNv
cmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogI2VuZGlmCiB9CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlldy5tbSBiL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQppbmRleCA2MjM1ZDJjMWVkNmE2MDVjNmRiMzIx
MGJhZTAxMGMwYWUyYjE1ODA0Li5jODFhNjY0ZDI2OTE0NTBjMjI5MTc2ODJkM2Q0N2E2NjhkN2Zm
ZjQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXcu
bW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCkBAIC0y
MjEsNiArMjIxLDcgQEAKICNpbXBvcnQgPFdlYkNvcmUvVXNlclNjcmlwdC5oPgogI2ltcG9ydCA8
V2ViQ29yZS9Vc2VyU3R5bGVTaGVldC5oPgogI2ltcG9ydCA8V2ViQ29yZS9WYWxpZGF0aW9uQnVi
YmxlLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0
IDxXZWJDb3JlL1dlYkNvcmVPYmpDRXh0cmFzLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVW
aWV3Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYlZpZXdWaXN1YWxJZGVudGlmaWNhdGlvbk92ZXJs
YXkuaD4KQEAgLTUyNDQsNiArNTI0NSw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogI2lmICFQTEFU
Rk9STShJT1NfRkFNSUxZKQogICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlh
bGl6ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsK
ICNlbmRpZgogCiAgICAgV1RGOjpSZWZDb3VudGVkQmFzZTo6ZW5hYmxlVGhyZWFkaW5nQ2hlY2tz
R2xvYmFsbHkoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcv
V2ViVmlld0RhdGEubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXdE
YXRhLm1tCmluZGV4IGZjZTRhNjY0NjZkOGZmYjY0YjYyMTI1OTAzMDFlYjI0M2JhODk0NjYuLjRk
ZDM5ZDY2ZGU0MmU0OWZhZGFkNGFlYzc4OGIxNGQyZmRkMWU1ZGQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlld0RhdGEubW0KKysrIGIvU291cmNlL1dl
YktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3RGF0YS5tbQpAQCAtNDAsNiArNDAsNyBAQAog
I2ltcG9ydCA8V2ViQ29yZS9SdW5Mb29wT2JzZXJ2ZXIuaD4KICNpbXBvcnQgPFdlYkNvcmUvVGV4
dEluZGljYXRvcldpbmRvdy5oPgogI2ltcG9ydCA8V2ViQ29yZS9WYWxpZGF0aW9uQnViYmxlLmg+
CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0IDx3dGYv
TWFpblRocmVhZC5oPgogI2ltcG9ydCA8d3RmL1J1bkxvb3AuaD4KIApAQCAtMTY5LDYgKzE3MCw3
IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQogICAgIEpT
Qzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAgICBX
ZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZgogfQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9XZWJLaXRDbGFzc0ZhY3RvcnkuY3BwIGIvU291cmNl
L1dlYktpdExlZ2FjeS93aW4vV2ViS2l0Q2xhc3NGYWN0b3J5LmNwcAppbmRleCAwYTlhYzExY2Qy
NjZlODk5ZGUzZWM5YzkwMzEzY2ZhN2NiYmU0NjgwLi5jZTg2MjBmZDRiZDc3YzdlZWY4ZGI4ZDc0
NjQzZjk1MmEzYWYxYTU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9XZWJL
aXRDbGFzc0ZhY3RvcnkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYktpdENs
YXNzRmFjdG9yeS5jcHAKQEAgLTU2LDYgKzU2LDcgQEAKICNpbmNsdWRlICJXZWJWaWV3LmgiCiAj
aW5jbHVkZSAiV2ViV29ya2Vyc1ByaXZhdGUuaCIKICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9J
bml0aWFsaXplVGhyZWFkaW5nLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0
aW9ucy5oPgogI2luY2x1ZGUgPHd0Zi9NYWluVGhyZWFkLmg+CiAjaW5jbHVkZSA8d3RmL1NvZnRM
aW5raW5nLmg+CiAKQEAgLTY1LDYgKzY2LDcgQEAgV2ViS2l0Q2xhc3NGYWN0b3J5OjpXZWJLaXRD
bGFzc0ZhY3RvcnkoQ0xTSUQgdGFyZ2V0Q2xhc3MpCiB7CiAgICAgSlNDOjppbml0aWFsaXplKCk7
CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRl
SklUT3BlcmF0aW9ucygpOwogCiAgICAgZ0NsYXNzQ291bnQrKzsKICAgICBnQ2xhc3NOYW1lQ291
bnQoKS5hZGQoIldlYktpdENsYXNzRmFjdG9yeSIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dExlZ2FjeS93aW4vV2ViVmlldy5jcHAgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9XZWJWaWV3
LmNwcAppbmRleCA5M2FiM2FmZmEwNTM4ZWI1M2U0YWRmNGU2ZTZlOThiMjFhZWMyM2IzLi5jYjM4
YzI0ZTk5MmYxMGI3YTQ4OWY3MzJlNDU5ZmFmYjdhNmFkZDE2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0TGVnYWN5L3dpbi9XZWJWaWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dp
bi9XZWJWaWV3LmNwcApAQCAtMTY3LDYgKzE2Nyw3IEBACiAjaW5jbHVkZSA8V2ViQ29yZS9Vc2Vy
Q29udGVudENvbnRyb2xsZXIuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1VzZXJTY3JpcHQuaD4KICNp
bmNsdWRlIDxXZWJDb3JlL1VzZXJTdHlsZVNoZWV0Lmg+CisjaW5jbHVkZSA8V2ViQ29yZS9XZWJD
b3JlSklUT3BlcmF0aW9ucy5oPgogI2luY2x1ZGUgPFdlYkNvcmUvV2ViQ29yZVRleHRSZW5kZXJl
ci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvV2luZG93TWVzc2FnZUJyb2FkY2FzdGVyLmg+CiAjaW5j
bHVkZSA8V2ViQ29yZS9XaW5kb3dzVG91Y2guaD4KQEAgLTQyMyw2ICs0MjQsNyBAQCBXZWJWaWV3
OjpXZWJWaWV3KCkKICAgICBKU0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVN
YWluVGhyZWFkKCk7CiAgICAgV1RGOjpzZXRQcm9jZXNzUHJpdmlsZWdlcyhhbGxQcml2aWxlZ2Vz
KCkpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogICAgIFdlYkNvcmU6
Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6cGVybWl0UHJvY2Vzc1RvVXNlQ29va2llQVBJKHRydWUp
OwogCiAgICAgbV9iYWNraW5nU3RvcmVTaXplLmN4ID0gbV9iYWNraW5nU3RvcmVTaXplLmN5ID0g
MDsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>410405</attachid>
            <date>2020-10-02 19:27:26 -0700</date>
            <delta_ts>2020-10-03 16:51:18 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-217261-20201002192725.patch</filename>
            <type>text/plain</type>
            <size>90825</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY3OTEzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA3
ZjViNWFmMGQ2NTAxNTVlY2NjZTAwYzdjYTRjZGFlN2ExMTliMDI5Li40MDU2YmU5OTM2NTcwYTYy
NDU3MjEyNjIxMTRkOGRjODBmMjNhNjJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw1NCBAQAorMjAyMC0xMC0wMiAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIEludHJvZHVjZSBKSVRPcGVyYXRpb25MaXN0IHRvIHZhbGlkYXRl
IEpJVC1jYWdlZCBwb2ludGVycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjE3MjYxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FhbSBCYXJhdGkuCisK
KyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIEpJVE9wZXJhdGlvbkxpc3QsIHdoaWNoIG1hbmFnZXMg
YWxsIHRoZSBob3N0LWZ1bmN0aW9uICYgaml0LW9wZXJhdGlvbiBwb2ludGVycy4KKyAgICAgICAg
QW5kIHdlIGNhbiBub3cgcXVlcnkgd2hldGhlciB0aGUgZ2l2ZW4gcG9pbnRlciBpcyByZWdpc3Rl
cmVkIGluIHRoaXMgdGFibGUuCisgICAgICAgIEN1cnJlbnRseSwgYXMgYSB0ZXN0LCB3ZSBhcmUg
dmVyaWZ5aW5nIHRoYXQgaG9zdC1mdW5jdGlvbiBpcyByZWdpc3RlcmVkIGluIHRoaXMgdGFibGUg
d2hlbiBjcmVhdGluZyBOYXRpdmVFeGVjdXRhYmxlIGluIGRlYnVnIGJ1aWxkLgorCisgICAgICAg
ICogQ01ha2VMaXN0cy50eHQ6CisgICAgICAgICogSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBTb3VyY2VzLnR4dDoKKyAgICAgICAgKiBhc3NlbWJs
ZXIvSklUT3BlcmF0aW9uTGlzdC5jcHA6IEFkZGVkLgorICAgICAgICAoSlNDOjpKSVRPcGVyYXRp
b25MaXN0Ojppbml0aWFsaXplKToKKyAgICAgICAgKEpTQzo6YWRkUG9pbnRlcnMpOgorICAgICAg
ICAoSlNDOjpKSVRPcGVyYXRpb25MaXN0Ojpwb3B1bGF0ZVBvaW50ZXJzSW5KYXZhU2NyaXB0Q29y
ZSk6CisgICAgICAgIChKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6OnBvcHVsYXRlUG9pbnRlcnNJbkVt
YmVkZGVyKToKKyAgICAgICAgKiBhc3NlbWJsZXIvSklUT3BlcmF0aW9uTGlzdC5oOiBBZGRlZC4K
KyAgICAgICAgKEpTQzo6SklUT3BlcmF0aW9uTGlzdDo6Y29udGFpbnMgY29uc3QpOgorICAgICAg
ICAoSlNDOjpKSVRPcGVyYXRpb25MaXN0Ojphc3NlcnRJc0hvc3RGdW5jdGlvbik6CisgICAgICAg
IChKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6OmFzc2VydElzSklUT3BlcmF0aW9uKToKKyAgICAgICAg
KEpTQzo6SklUT3BlcmF0aW9uTGlzdDo6aW5zdGFuY2UpOgorICAgICAgICAqIGFzc2VtYmxlci9N
YWNyb0Fzc2VtYmxlckFSTTY0LmNwcDoKKyAgICAgICAgKiBhc3NlbWJsZXIvTWFjcm9Bc3NlbWJs
ZXJBUk12Ny5jcHA6CisgICAgICAgICogYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyTUlQUy5jcHA6
CisgICAgICAgICogYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyWDg2Q29tbW9uLmNwcDoKKyAgICAg
ICAgKiBqc2MuY3BwOgorICAgICAgICAoanNjbWFpbik6CisgICAgICAgICogcnVudGltZS9Jbml0
aWFsaXplVGhyZWFkaW5nLmNwcDoKKyAgICAgICAgKEpTQzo6aW5pdGlhbGl6ZSk6CisgICAgICAg
ICogcnVudGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZUZ1bmN0aW9ucy5oOgor
ICAgICAgICAoSlNDOjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNTZXQpOgorICAgICAg
ICAoSlNDOjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNDb3B5V2l0aGluKToKKyAgICAg
ICAgKEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jSW5jbHVkZXMpOgorICAgICAg
ICAoSlNDOjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNJbmRleE9mKToKKyAgICAgICAg
KEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jSm9pbik6CisgICAgICAgIChKU0M6
OmdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY0xhc3RJbmRleE9mKToKKyAgICAgICAgKEpT
Qzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jQnVmZmVyKToKKyAgICAgICAg
KEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jTGVuZ3RoKToKKyAgICAg
ICAgKEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jQnl0ZUxlbmd0aCk6
CisgICAgICAgIChKU0M6OmdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvR2V0dGVyRnVuY0J5dGVP
ZmZzZXQpOgorICAgICAgICAoSlNDOjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNSZXZl
cnNlKToKKyAgICAgICAgKEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJpdmF0ZUZ1bmNTb3J0
KToKKyAgICAgICAgKEpTQzo6Z2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jU2xpY2UpOgor
ICAgICAgICAoSlNDOjpnZW5lcmljVHlwZWRBcnJheVZpZXdQcml2YXRlRnVuY1N1YmFycmF5Q3Jl
YXRlKToKKyAgICAgICAgKEpTQzo6SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKTogRGVsZXRlZC4K
KyAgICAgICAgKiBydW50aW1lL1ZNLmNwcDoKKyAgICAgICAgKEpTQzo6Vk06OmdldEhvc3RGdW5j
dGlvbik6CisKIDIwMjAtMTAtMDIgIFJvc3MgS2lyc2xpbmcgIDxyb3NzLmtpcnNsaW5nQHNvbnku
Y29tPgogCiAgICAgICAgIFtKU0NdIEFkZCBBcnJheSNpdGVtIHRvIEBAdW5zY29wYWJsZXMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nIGIvU291cmNlL1dURi9DaGFuZ2VMb2cKaW5k
ZXggYjc3MDZmM2RiYjk0MmU5MGNjMDBlZDk4ZDdmMjk0NzE4YjdhNmI0Zi4uMjQ2YjJhYjg2MDEw
OGJmOTBiOTRmMTRhMDcyMDIxNTQ5NWFjNzlmMSAxMDA2NDQKLS0tIGEvU291cmNlL1dURi9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dURi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAyMC0x
MC0wMiAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgorCisgICAgICAgIFtKU0Nd
IEludHJvZHVjZSBKSVRPcGVyYXRpb25MaXN0IHRvIHZhbGlkYXRlIEpJVC1jYWdlZCBwb2ludGVy
cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE3MjYx
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FhbSBCYXJhdGkuCisKKyAgICAgICAgKiB3dGYvUGxh
dGZvcm1DYWxsaW5nQ29udmVudGlvbnMuaDoKKyAgICAgICAgKiB3dGYvUGxhdGZvcm1FbmFibGUu
aDoKKwogMjAyMC0xMC0wMiAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQu
b3JnPgogCiAgICAgICAgIENvcHkgaG9zdCBmcm9tIGJhc2UgZmlsZSBVUkwKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRl
eCBiNmFjZjJmZjg4MjhiZThkNWU4MjQyMWRlYjJkMWJkZmZlMDRmZmJlLi4xNzI0OTM2OGI2ZWIx
NGQ5NTMzMmU5MWQ0NWZlN2FmNGM1ZjFhZWM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzUgQEAK
KzIwMjAtMTAtMDIgIFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFwcGxlLmNvbT4KKworICAgICAg
ICBbSlNDXSBJbnRyb2R1Y2UgSklUT3BlcmF0aW9uTGlzdCB0byB2YWxpZGF0ZSBKSVQtY2FnZWQg
cG9pbnRlcnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIxNzI2MQorCisgICAgICAgIFJldmlld2VkIGJ5IFNhYW0gQmFyYXRpLgorCisgICAgICAgIFdl
IHNob3VsZCBoYXZlIFdlYkNvcmU6OmluaXRpYWxpemUoKS4gSXQgaXMgZmlsZWQgaW4gaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNzI3MC4KKworICAgICAgICAqIEhl
YWRlcnMuY21ha2U6CisgICAgICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NQnVp
bHRpbkNvbnN0cnVjdG9yLmg6CisgICAgICAgICogYmluZGluZ3MvanMvSlNET01Db25zdHJ1Y3Rv
ci5oOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NTGVnYWN5RmFjdG9yeUZ1bmN0aW9uLmg6
CisgICAgICAgICogYmluZGluZ3MvanMvU2NyaXB0Q29udHJvbGxlci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpTY3JpcHRDb250cm9sbGVyOjppbml0aWFsaXplTWFpblRocmVhZCk6CisgICAgICAg
ICogYmluZGluZ3MvanMvV2ViQ29yZUpJVE9wZXJhdGlvbnMuY3BwOiBDb3BpZWQgZnJvbSBTb3Vy
Y2UvV2ViS2l0L1NoYXJlZC9XZWJLaXQySW5pdGlhbGl6ZS5jcHAuCisgICAgICAgIChXZWJDb3Jl
Ojpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL1dlYkNvcmVK
SVRPcGVyYXRpb25zLmg6IENvcGllZCBmcm9tIFNvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYktpdDJJ
bml0aWFsaXplLmNwcC4KKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JK
Uy5wbToKKyAgICAgICAgKEdlbmVyYXRlQ29uc3RydWN0b3JEZWZpbml0aW9ucyk6CisgICAgICAg
ICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMu
Y3BwOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVk
Q29uc3RydWN0b3JzV2l0aFNlcXVlbmNlLmNwcDoKKyAgICAgICAgKiBicmlkZ2Uvb2JqYy9XZWJT
Y3JpcHRPYmplY3QubW06CisgICAgICAgICgrW1dlYlNjcmlwdE9iamVjdCBpbml0aWFsaXplXSk6
CisgICAgICAgICogZG9taml0L0pTRG9jdW1lbnRET01KSVQuY3BwOgorICAgICAgICAqIHBsYXRm
b3JtL2NvY29hL1NoYXJlZEJ1ZmZlckNvY29hLm1tOgorICAgICAgICAoK1tXZWJDb3JlU2hhcmVk
QnVmZmVyRGF0YSBpbml0aWFsaXplXSk6CisgICAgICAgICogcGxhdGZvcm0vaW9zL3dhay9XZWJD
b3JlVGhyZWFkLm1tOgorICAgICAgICAoUnVuV2ViVGhyZWFkKToKKwogMjAyMC0xMC0wMiAgQ2hy
aXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIENhbGxpbmcgc3VzcGVuZCgp
IG9uIGF1ZGlvIGNvbnRleHQgd2l0aCBubyBub2RlIGRvZXMgbm90IHByZXZlbnQgYXV0byB0cmFu
c2l0aW9uIHRvIHJ1bm5pbmcgd2hlbiBmaXJzdCBub2RlIGlzIGNyZWF0ZWQKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXgg
MDA1NGRmZDc4ODE5ZjZkNjNlOTA4OWUyNzI5OTk1MGIwN2M3YTc4NC4uZjdiZTUwNTc0Njc1NzFi
NDYyYmVjN2E1YmRiNWI1N2E5YzVkN2E0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAy
MC0xMC0wMiAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgorCisgICAgICAgIFtK
U0NdIEludHJvZHVjZSBKSVRPcGVyYXRpb25MaXN0IHRvIHZhbGlkYXRlIEpJVC1jYWdlZCBwb2lu
dGVycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE3
MjYxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FhbSBCYXJhdGkuCisKKyAgICAgICAgKiBTaGFy
ZWQvQVBJL2MvV0tTdHJpbmcuY3BwOgorICAgICAgICAoV0tTdHJpbmdDb3B5SlNTdHJpbmcpOgor
ICAgICAgICAqIFNoYXJlZC9Db2NvYS9XZWJLaXQySW5pdGlhbGl6ZUNvY29hLm1tOgorICAgICAg
ICAoV2ViS2l0OjpydW5Jbml0aWFsaXphdGlvbkNvZGUpOgorICAgICAgICAqIFNoYXJlZC9XZWJL
aXQySW5pdGlhbGl6ZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OkluaXRpYWxpemVXZWJLaXQyKToK
KyAgICAgICAgKiBTaGFyZWQvV2ViS2l0SklUT3BlcmF0aW9ucy5jcHA6IENvcGllZCBmcm9tIFNv
dXJjZS9XZWJLaXQvU2hhcmVkL1dlYktpdDJJbml0aWFsaXplLmNwcC4KKyAgICAgICAgKFdlYktp
dDo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKToKKyAgICAgICAgKiBTaGFyZWQvV2ViS2l0SklUT3Bl
cmF0aW9ucy5oOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJLaXQySW5pdGlh
bGl6ZS5jcHAuCisgICAgICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogV2ViS2l0Lnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2o6CisKIDIwMjAtMTAtMDIgIEthdGUgQ2hlbmV5ICA8a2F0aGVy
aW5lX2NoZW5leUBhcHBsZS5jb20+CiAKICAgICAgICAgTXVsdGlwbGUgY2FsbHMgdG8gc3VzcGVu
ZCBtZWRpYSBwbGF5YmFjayBmb3IgdGhlIHNhbWUgcGFnZSBtYXkgcmVzdWx0IGluIHJlc3VtaW5n
IG1lZGlhIHBsYXliYWNrIHRvbyBzb29uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5
L21hYy9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKaW5kZXgg
ZjA3YjA0YTcwMjIwNWQwZmI1OGRmYTcwZjhkYTZjNDI3OTI4YjIyZS4uYTY1YWQ2NTg3ODQ0ZGNl
Y2I2NGJiNDJmODY2OTg0MWNjYWQ5MmMyYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2Fj
eS9tYWMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDUwIEBACisyMDIwLTEwLTAyICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBs
ZS5jb20+CisKKyAgICAgICAgW0pTQ10gSW50cm9kdWNlIEpJVE9wZXJhdGlvbkxpc3QgdG8gdmFs
aWRhdGUgSklULWNhZ2VkIHBvaW50ZXJzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMTcyNjEKKworICAgICAgICBSZXZpZXdlZCBieSBTYWFtIEJhcmF0
aS4KKworICAgICAgICAqIEhpc3RvcnkvV2ViQmFja0ZvcndhcmRMaXN0Lm1tOgorICAgICAgICAo
K1tXZWJCYWNrRm9yd2FyZExpc3QgaW5pdGlhbGl6ZV0pOgorICAgICAgICAqIEhpc3RvcnkvV2Vi
SGlzdG9yeUl0ZW0ubW06CisgICAgICAgICgrW1dlYkhpc3RvcnlJdGVtIGluaXRpYWxpemVdKToK
KyAgICAgICAgKiBNaXNjL1dlYkNhY2hlLm1tOgorICAgICAgICAoK1tXZWJDYWNoZSBpbml0aWFs
aXplXSk6CisgICAgICAgICogTWlzYy9XZWJFbGVtZW50RGljdGlvbmFyeS5tbToKKyAgICAgICAg
KCtbV2ViRWxlbWVudERpY3Rpb25hcnkgaW5pdGlhbGl6ZV0pOgorICAgICAgICAqIE1pc2MvV2Vi
SWNvbkRhdGFiYXNlLm1tOgorICAgICAgICAqIE1pc2MvV2ViU3RyaW5nVHJ1bmNhdG9yLm1tOgor
ICAgICAgICAoK1tXZWJTdHJpbmdUcnVuY2F0b3IgaW5pdGlhbGl6ZV0pOgorICAgICAgICAqIFBs
dWdpbnMvSG9zdGVkL1dlYkhvc3RlZE5ldHNjYXBlUGx1Z2luVmlldy5tbToKKyAgICAgICAgKCtb
V2ViSG9zdGVkTmV0c2NhcGVQbHVnaW5WaWV3IGluaXRpYWxpemVdKToKKyAgICAgICAgKiBQbHVn
aW5zL1dlYkJhc2VOZXRzY2FwZVBsdWdpblZpZXcubW06CisgICAgICAgICogUGx1Z2lucy9XZWJC
YXNlUGx1Z2luUGFja2FnZS5tbToKKyAgICAgICAgKCtbV2ViQmFzZVBsdWdpblBhY2thZ2UgaW5p
dGlhbGl6ZV0pOgorICAgICAgICAqIFBsdWdpbnMvV2ViTmV0c2NhcGVQbHVnaW5WaWV3Lm1tOgor
ICAgICAgICAoK1tXZWJOZXRzY2FwZVBsdWdpblZpZXcgaW5pdGlhbGl6ZV0pOgorICAgICAgICAq
IFdlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5tbToKKyAgICAgICAgKCtbV2ViVW5kb1N0
ZXAgaW5pdGlhbGl6ZV0pOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVy
Q2xpZW50Lm1tOgorICAgICAgICAoK1tXZWJGcmFtZVBvbGljeUxpc3RlbmVyIGluaXRpYWxpemVd
KToKKyAgICAgICAgKiBXZWJWaWV3L1dlYkFyY2hpdmUubW06CisgICAgICAgICgrW1dlYkFyY2hp
dmVQcml2YXRlIGluaXRpYWxpemVdKToKKyAgICAgICAgKiBXZWJWaWV3L1dlYkRhdGFTb3VyY2Uu
bW06CisgICAgICAgICgrW1dlYkRhdGFTb3VyY2UgaW5pdGlhbGl6ZV0pOgorICAgICAgICAqIFdl
YlZpZXcvV2ViSFRNTFZpZXcubW06CisgICAgICAgICgrW1dlYkhUTUxWaWV3UHJpdmF0ZSBpbml0
aWFsaXplXSk6CisgICAgICAgICgrW1dlYkhUTUxWaWV3IGluaXRpYWxpemVdKToKKyAgICAgICAg
KiBXZWJWaWV3L1dlYlByZWZlcmVuY2VzLm1tOgorICAgICAgICAoK1tXZWJQcmVmZXJlbmNlcyBp
bml0aWFsaXplXSk6CisgICAgICAgICogV2ViVmlldy9XZWJSZXNvdXJjZS5tbToKKyAgICAgICAg
KCtbV2ViUmVzb3VyY2VQcml2YXRlIGluaXRpYWxpemVdKToKKyAgICAgICAgKiBXZWJWaWV3L1dl
YlRleHRJdGVyYXRvci5tbToKKyAgICAgICAgKCtbV2ViVGV4dEl0ZXJhdG9yUHJpdmF0ZSBpbml0
aWFsaXplXSk6CisgICAgICAgICogV2ViVmlldy9XZWJWaWV3Lm1tOgorICAgICAgICAoK1tXZWJW
aWV3IGluaXRpYWxpemVdKToKKyAgICAgICAgKiBXZWJWaWV3L1dlYlZpZXdEYXRhLm1tOgorICAg
ICAgICAoK1tXZWJWaWV3UHJpdmF0ZSBpbml0aWFsaXplXSk6CisKIDIwMjAtMTAtMDEgIENocmlz
IER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgYmFzaWMgaW5mcmFzdHJ1
Y3R1cmUgZm9yIEF1ZGlvV29ya2xldApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS93
aW4vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdExlZ2FjeS93aW4vQ2hhbmdlTG9nCmluZGV4IDA0
ZDRhMzk4YjMyN2U0ZDhmZjFjOTE5OTc1YjMyZGY1NDZkOGNiM2UuLmIwZGRiOGRmOWMyMjhkZmZi
OWRkODhkMzcyMTZiZTg5ZTYxZTJhNTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kv
d2luL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxNSBAQAorMjAyMC0xMC0wMiAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUu
Y29tPgorCisgICAgICAgIFtKU0NdIEludHJvZHVjZSBKSVRPcGVyYXRpb25MaXN0IHRvIHZhbGlk
YXRlIEpJVC1jYWdlZCBwb2ludGVycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjE3MjYxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FhbSBCYXJhdGku
CisKKyAgICAgICAgKiBXZWJLaXRDbGFzc0ZhY3RvcnkuY3BwOgorICAgICAgICAoV2ViS2l0Q2xh
c3NGYWN0b3J5OjpXZWJLaXRDbGFzc0ZhY3RvcnkpOgorICAgICAgICAqIFdlYlZpZXcuY3BwOgor
ICAgICAgICAoV2ViVmlldzo6V2ViVmlldyk6CisKIDIwMjAtMTAtMDEgIENocmlzIER1bWV6ICA8
Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgYmFzaWMgaW5mcmFzdHJ1Y3R1cmUgZm9y
IEF1ZGlvV29ya2xldApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NNYWtlTGlz
dHMudHh0IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IDgwMGRl
ZjRhYTllYzI2OTdhNTA0MWI4MGRmMDhlNzEwODYyMzUyM2IuLjViNGM1ODQ4YzU4Y2E2NmJjNjU2
ZWRhYThmZjNjOWNmZjdlY2YwMWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9D
TWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ01ha2VMaXN0cy50eHQK
QEAgLTQ3NCw2ICs0NzQsNyBAQCBzZXQoSmF2YVNjcmlwdENvcmVfUFJJVkFURV9GUkFNRVdPUktf
SEVBREVSUwogICAgIGFzc2VtYmxlci9DUFUuaAogICAgIGFzc2VtYmxlci9Db2RlTG9jYXRpb24u
aAogICAgIGFzc2VtYmxlci9GYXN0SklUUGVybWlzc2lvbnMuaAorICAgIGFzc2VtYmxlci9KSVRP
cGVyYXRpb25MaXN0LmgKICAgICBhc3NlbWJsZXIvTGlua0J1ZmZlci5oCiAgICAgYXNzZW1ibGVy
L01JUFNBc3NlbWJsZXIuaAogICAgIGFzc2VtYmxlci9NSVBTUmVnaXN0ZXJzLmgKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKaW5kZXggMzdmZWJmZjY1YWIzNmIxZTA1ZjM3OGE5ZjQ0NTg0MTll
OGUwNDk2ZC4uNzg5OWQyMDljYjc3MWYxMTQ2NWM2ZDQ0MDYwZWNkYjQ2YWQ1ODZmZCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2oKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE4ODEsNiArMTg4MSw3IEBACiAJCUUzQzY5NEIz
MjMwMjY4NzcwMDZGQkU0MiAvKiBXYXNtT1NSRW50cnlEYXRhLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFM0M2OTRCMTIzMDI2ODczMDA2RkJFNDIgLyog
V2FzbU9TUkVudHJ5RGF0YS5oICovOyB9OwogCQlFM0M3OUNBQjFEQjlBNERDMDBEMUVDQTQgLyog
RE9NSklURWZmZWN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBFM0M3OUNBQTFEQjlBNEQ2MDBEMUVDQTQgLyogRE9NSklURWZmZWN0LmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJRTNDOEVENDMyM0ExREJD
QjAwMTMxOTU4IC8qIElzb0lubGluZWRIZWFwQ2VsbFR5cGUuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzQzhFRDQyMjNBMURCQzUwMDEzMTk1OCAvKiBJ
c29JbmxpbmVkSGVhcENlbGxUeXBlLmggKi87IH07CisJCUUzQ0EzQTRFMjUyN0FCMkYwMDQ4MDJC
RiAvKiBKSVRPcGVyYXRpb25MaXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBFM0NBM0E0QzI1MjdBQjJGMDA0ODAyQkYgLyogSklUT3BlcmF0aW9uTGlz
dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUUz
RDIzOUM5MUI4MjlDMUMwMEJCRUY2NyAvKiBKU01vZHVsZUVudmlyb25tZW50LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFM0QyMzlDNzFCODI5QzFDMDBC
QkVGNjcgLyogSlNNb2R1bGVFbnZpcm9ubWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CiAJCUUzRDM1MTVGMjQxQjg5RDcwMDhEQzE2RSAvKiBNYXJr
ZWRKU1ZhbHVlUmVmQXJyYXkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEUzRDM1MTVEMjQxQjg5Q0UwMDhEQzE2RSAvKiBNYXJrZWRKU1ZhbHVlUmVmQXJy
YXkuaCAqLzsgfTsKIAkJRTNEODc3NzQxRTY1QzBBMDAwQkU5NDVBIC8qIEJ5dGVjb2RlRHVtcGVy
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFM0Q4Nzc3
MjFFNjVDMDg5MDBCRTk0NUEgLyogQnl0ZWNvZGVEdW1wZXIuaCAqLzsgfTsKQEAgLTUxMDcsNiAr
NTEwOCw4IEBACiAJCUUzQzc5Q0FBMURCOUE0RDYwMEQxRUNBNCAvKiBET01KSVRFZmZlY3QuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NSklURWZmZWN0Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUzQzhFRDQxMjNBMURCQzQwMDEzMTk1OCAvKiBJc29IZWFw
Q2VsbFR5cGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSXNvSGVh
cENlbGxUeXBlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTNDOEVENDIyM0Ex
REJDNTAwMTMxOTU4IC8qIElzb0lubGluZWRIZWFwQ2VsbFR5cGUuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSXNvSW5saW5lZEhlYXBDZWxsVHlwZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlFM0NBM0E0QjI1MjdBQjJFMDA0ODAyQkYgLyogSklUT3BlcmF0aW9u
TGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKSVRPcGVyYXRp
b25MaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTNDQTNBNEMyNTI3QUIy
RjAwNDgwMkJGIC8qIEpJVE9wZXJhdGlvbkxpc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSklUT3BlcmF0aW9uTGlzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQlFM0QyMzlDNjFCODI5QzFDMDBCQkVGNjcgLyogSlNNb2R1bGVFbnZpcm9ubWVudC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU01vZHVsZUVudmlyb25tZW50LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTNEMjM5QzcxQjgyOUMxQzAwQkJFRjY3
IC8qIEpTTW9kdWxlRW52aXJvbm1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSlNNb2R1bGVFbnZpcm9ubWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlF
M0QyNjQyNjFEMzhDMDQyMDAwQkUxNzQgLyogQnl0ZWNvZGVHZW5lcmF0b3JpZmljYXRpb24uY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQnl0ZWNvZGVHZW5lcmF0b3Jp
ZmljYXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtODI4NCw2ICs4Mjg3
LDggQEAKIAkJCQkwRjMwRDdCRjFEOTVENjJGMDA1MzA4OUQgLyogQ1BVLmggKi8sCiAJCQkJMEYz
NzMwOEUxQzBDRDY4NTAwMDUyQkZBIC8qIERpc2FsbG93TWFjcm9TY3JhdGNoUmVnaXN0ZXJVc2Fn
ZS5oICovLAogCQkJCTUyNjdDRjgxMjQ5MzE2QUQwMDIyQkY2RCAvKiBGYXN0SklUUGVybWlzc2lv
bnMuaCAqLywKKwkJCQlFM0NBM0E0QjI1MjdBQjJFMDA0ODAyQkYgLyogSklUT3BlcmF0aW9uTGlz
dC5jcHAgKi8sCisJCQkJRTNDQTNBNEMyNTI3QUIyRjAwNDgwMkJGIC8qIEpJVE9wZXJhdGlvbkxp
c3QuaCAqLywKIAkJCQkwRkY0Mjc1NjE1OTE0QTIwMDA0Q0I5RkYgLyogTGlua0J1ZmZlci5jcHAg
Ki8sCiAJCQkJODZEM0IzQzExMDE1OUQ3RjAwMjg2NUU3IC8qIExpbmtCdWZmZXIuaCAqLywKIAkJ
CQkwRkVCM0VDRTE2MjM3RjY3MDBBQjY3QUQgLyogTWFjcm9Bc3NlbWJsZXIuY3BwICovLApAQCAt
OTkwNSw2ICs5OTEwLDcgQEAKIAkJCQk3OUFGMEJFNDFEM0VGRDRDMDBFOTVGQTUgLyogSklUTWF0
aElDSW5saW5lUmVzdWx0LmggaW4gSGVhZGVycyAqLywKIAkJCQlGRTE4N0EwMjFCRkJFNTYxMDAz
OEJCQ0EgLyogSklUTXVsR2VuZXJhdG9yLmggaW4gSGVhZGVycyAqLywKIAkJCQlGRTk5QjI0OTFD
MjRDM0QzMDBDODIxNTkgLyogSklUTmVnR2VuZXJhdG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQlF
M0NBM0E0RTI1MjdBQjJGMDA0ODAyQkYgLyogSklUT3BlcmF0aW9uTGlzdC5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJMEYyNEU1NEQxN0VFMjc0OTAwQUJCMjE3IC8qIEpJVE9wZXJhdGlvbnMuaCBpbiBI
ZWFkZXJzICovLAogCQkJCUZFM0EwNkMwMUMxMTA0MUEwMDM5MEZERCAvKiBKSVRSaWdodFNoaWZ0
R2VuZXJhdG9yLmggaW4gSGVhZGVycyAqLywKIAkJCQkwRjc2NkQzMTE1QUE4MTEyMDA4RjM2M0Ug
LyogSklUU3R1YlJvdXRpbmUuaCBpbiBIZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL1NvdXJjZXMudHh0IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL1NvdXJjZXMu
dHh0CmluZGV4IGNmZTRlZWY3NWRlNjU3NDEwM2RlNTEzMTAzMjJiNzg3MGMxNjdkOWIuLjcxMTQy
MTRkYWQ0ZWYzMTczMGJmZWE4NGYxNmM5Y2JiYzFkOWNjMDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvU291
cmNlcy50eHQKQEAgLTQ2LDYgKzQ2LDcgQEAgQVBJL09wYXF1ZUpTU3RyaW5nLmNwcAogYXNzZW1i
bGVyL0Fic3RyYWN0TWFjcm9Bc3NlbWJsZXIuY3BwCiBhc3NlbWJsZXIvQXNzZW1ibGVyQnVmZmVy
LmNwcAogYXNzZW1ibGVyL0NQVS5jcHAKK2Fzc2VtYmxlci9KSVRPcGVyYXRpb25MaXN0LmNwcAog
YXNzZW1ibGVyL0xpbmtCdWZmZXIuY3BwCiBhc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXIuY3BwCiBh
c3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJBUk02NC5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9hc3NlbWJsZXIvSklUT3BlcmF0aW9uTGlzdC5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvYXNzZW1ibGVyL0pJVE9wZXJhdGlvbkxpc3QuY3BwCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFmMGE4
NTkxOTU3NWMzNGM0MjhjYTE5YjE3NDlhNDU2OTc4NThhN2UKLS0tIC9kZXYvbnVsbAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL0pJVE9wZXJhdGlvbkxpc3QuY3BwCkBAIC0w
LDAgKzEsODQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0
OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElO
Qy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLwor
CisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiSklUT3BlcmF0aW9uTGlzdC5oIgorCitu
YW1lc3BhY2UgSlNDIHsKKworTGF6eU5ldmVyRGVzdHJveWVkPEpJVE9wZXJhdGlvbkxpc3Q+IGpp
dE9wZXJhdGlvbkxpc3Q7CisKKyNpZiBFTkFCTEUoSklUX09QRVJBVElPTl9WQUxJREFUSU9OKQor
ZXh0ZXJuIGNvbnN0IHVpbnRwdHJfdCBzdGFydE9mSG9zdEZ1bmN0aW9uc0luSlNDIF9fYXNtKCJz
ZWN0aW9uJHN0YXJ0JF9fREFUQV9DT05TVCRfX2pzY19ob3N0Iik7CitleHRlcm4gY29uc3QgdWlu
dHB0cl90IGVuZE9mSG9zdEZ1bmN0aW9uc0luSlNDIF9fYXNtKCJzZWN0aW9uJGVuZCRfX0RBVEFf
Q09OU1QkX19qc2NfaG9zdCIpOworZXh0ZXJuIGNvbnN0IHVpbnRwdHJfdCBzdGFydE9mSklUT3Bl
cmF0aW9uc0luSlNDIF9fYXNtKCJzZWN0aW9uJHN0YXJ0JF9fREFUQV9DT05TVCRfX2pzY19vcHMi
KTsKK2V4dGVybiBjb25zdCB1aW50cHRyX3QgZW5kT2ZKSVRPcGVyYXRpb25zSW5KU0MgX19hc20o
InNlY3Rpb24kZW5kJF9fREFUQV9DT05TVCRfX2pzY19vcHMiKTsKKyNlbmRpZgorCit2b2lkIEpJ
VE9wZXJhdGlvbkxpc3Q6OmluaXRpYWxpemUoKQoreworICAgIGppdE9wZXJhdGlvbkxpc3QuY29u
c3RydWN0KCk7Cit9CisKKyNpZiBFTkFCTEUoSklUX09QRVJBVElPTl9WQUxJREFUSU9OKQorc3Rh
dGljIEFMV0FZU19JTkxJTkUgdm9pZCBhZGRQb2ludGVycyhIYXNoTWFwPHZvaWQqLCB2b2lkKj4m
IG1hcCwgY29uc3QgdWludHB0cl90KiBiZWdpbkhvc3QsIGNvbnN0IHVpbnRwdHJfdCogZW5kSG9z
dCwgY29uc3QgdWludHB0cl90KiBiZWdpbk9wZXJhdGlvbnMsIGNvbnN0IHVpbnRwdHJfdCogZW5k
T3BlcmF0aW9ucykKK3sKKyAgICBmb3IgKGNvbnN0IHVpbnRwdHJfdCogY3VycmVudCA9IGJlZ2lu
SG9zdDsgY3VycmVudCAhPSBlbmRIb3N0OyArK2N1cnJlbnQpIHsKKyAgICAgICAgdm9pZCogY29k
ZVB0ciA9IHJlbW92ZUNvZGVQdHJUYWcoYml0d2lzZV9jYXN0PHZvaWQqPigqY3VycmVudCkpOwor
ICAgICAgICBhdXRvIHJlc3VsdCA9IG1hcC5hZGQoY29kZVB0ciwgdGFnQ29kZVB0cihjb2RlUHRy
LCBKU0VudHJ5UHRyVGFnKSk7CisgICAgICAgIEFTU0VSVChyZXN1bHQuaXNOZXdFbnRyeSk7Cisg
ICAgfQorICAgIGZvciAoY29uc3QgdWludHB0cl90KiBjdXJyZW50ID0gYmVnaW5PcGVyYXRpb25z
OyBjdXJyZW50ICE9IGVuZE9wZXJhdGlvbnM7ICsrY3VycmVudCkgeworICAgICAgICB2b2lkKiBj
b2RlUHRyID0gcmVtb3ZlQ29kZVB0clRhZyhiaXR3aXNlX2Nhc3Q8dm9pZCo+KCpjdXJyZW50KSk7
CisgICAgICAgIGF1dG8gcmVzdWx0ID0gbWFwLmFkZChjb2RlUHRyLCB0YWdDb2RlUHRyKGNvZGVQ
dHIsIE9wZXJhdGlvblB0clRhZykpOworICAgICAgICBBU1NFUlQocmVzdWx0LmlzTmV3RW50cnkp
OworICAgIH0KK30KKyNlbmRpZgorCit2b2lkIEpJVE9wZXJhdGlvbkxpc3Q6OnBvcHVsYXRlUG9p
bnRlcnNJbkphdmFTY3JpcHRDb3JlKCkKK3sKKyNpZiBFTkFCTEUoSklUX09QRVJBVElPTl9WQUxJ
REFUSU9OKQorICAgIHN0YXRpYyBzdGQ6Om9uY2VfZmxhZyBvbmNlS2V5OworICAgIHN0ZDo6Y2Fs
bF9vbmNlKG9uY2VLZXksIFtdIHsKKyAgICAgICAgaWYgKE9wdGlvbnM6OnVzZUpJVCgpKQorICAg
ICAgICAgICAgYWRkUG9pbnRlcnMoaml0T3BlcmF0aW9uTGlzdC0+bV92YWxpZGF0ZWRPcGVyYXRp
b25zLCAmc3RhcnRPZkhvc3RGdW5jdGlvbnNJbkpTQywgJmVuZE9mSG9zdEZ1bmN0aW9uc0luSlND
LCAmc3RhcnRPZkpJVE9wZXJhdGlvbnNJbkpTQywgJmVuZE9mSklUT3BlcmF0aW9uc0luSlNDKTsK
KyAgICB9KTsKKyNlbmRpZgorfQorCit2b2lkIEpJVE9wZXJhdGlvbkxpc3Q6OnBvcHVsYXRlUG9p
bnRlcnNJbkVtYmVkZGVyKGNvbnN0IHVpbnRwdHJfdCogYmVnaW5Ib3N0LCBjb25zdCB1aW50cHRy
X3QqIGVuZEhvc3QsIGNvbnN0IHVpbnRwdHJfdCogYmVnaW5PcGVyYXRpb25zLCBjb25zdCB1aW50
cHRyX3QqIGVuZE9wZXJhdGlvbnMpCit7CisgICAgVU5VU0VEX1BBUkFNKGJlZ2luSG9zdCk7Cisg
ICAgVU5VU0VEX1BBUkFNKGVuZEhvc3QpOworICAgIFVOVVNFRF9QQVJBTShiZWdpbk9wZXJhdGlv
bnMpOworICAgIFVOVVNFRF9QQVJBTShlbmRPcGVyYXRpb25zKTsKKyNpZiBFTkFCTEUoSklUX09Q
RVJBVElPTl9WQUxJREFUSU9OKQorICAgIGlmIChPcHRpb25zOjp1c2VKSVQoKSkKKyAgICAgICAg
YWRkUG9pbnRlcnMoaml0T3BlcmF0aW9uTGlzdC0+bV92YWxpZGF0ZWRPcGVyYXRpb25zLCBiZWdp
bkhvc3QsIGVuZEhvc3QsIGJlZ2luT3BlcmF0aW9ucywgZW5kT3BlcmF0aW9ucyk7CisjZW5kaWYK
K30KKworfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvYXNzZW1ibGVyL0pJVE9wZXJhdGlvbkxpc3QuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9h
c3NlbWJsZXIvSklUT3BlcmF0aW9uTGlzdC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjUzOTNhM2I2NDVhNDhkZDVm
ZjE4MTljOWFhOTZhNjIzMjExN2U3MDcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvYXNzZW1ibGVyL0pJVE9wZXJhdGlvbkxpc3QuaApAQCAtMCwwICsxLDgwIEBACisv
KgorICogQ29weXJpZ2h0IChDKSAyMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4g
YGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICog
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNl
CisKKyNpbmNsdWRlICJKU0NQdHJUYWcuaCIKKyNpbmNsdWRlICJPcHRpb25zLmgiCisjaW5jbHVk
ZSA8d3RmL0hhc2hNYXAuaD4KKyNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KKworbmFt
ZXNwYWNlIEpTQyB7CisKK2NsYXNzIEpJVE9wZXJhdGlvbkxpc3QgeworcHVibGljOgorICAgIHN0
YXRpYyBKSVRPcGVyYXRpb25MaXN0JiBpbnN0YW5jZSgpOworICAgIHN0YXRpYyB2b2lkIGluaXRp
YWxpemUoKTsKKworICAgIHZvaWQqIGNvbnRhaW5zKHZvaWQqIHBvaW50ZXIpIGNvbnN0CisgICAg
eworICAgICAgICBpZiBjb25zdGV4cHIoQVNTRVJUX0VOQUJMRUQpCisgICAgICAgICAgICByZXR1
cm4gbV92YWxpZGF0ZWRPcGVyYXRpb25zLmdldChyZW1vdmVDb2RlUHRyVGFnKHBvaW50ZXIpKTsK
KyAgICAgICAgcmV0dXJuIHBvaW50ZXI7CisgICAgfQorCisgICAgc3RhdGljIHZvaWQgcG9wdWxh
dGVQb2ludGVyc0luSmF2YVNjcmlwdENvcmUoKTsKKworICAgIEpTX0VYUE9SVF9QUklWQVRFIHN0
YXRpYyB2b2lkIHBvcHVsYXRlUG9pbnRlcnNJbkVtYmVkZGVyKGNvbnN0IHVpbnRwdHJfdCogYmVn
aW5Ib3N0LCBjb25zdCB1aW50cHRyX3QqIGVuZEhvc3QsIGNvbnN0IHVpbnRwdHJfdCogYmVnaW5P
cGVyYXRpb25zLCBjb25zdCB1aW50cHRyX3QqIGVuZE9wZXJhdGlvbnMpOworCisgICAgLy8gRklY
TUU6IEN1cnJlbnRseSwgYXNzZXJ0SXNIb3N0RnVuY3Rpb24gYW5kIGFzc2VydElzSklUT3BlcmF0
aW9uIGFyZSB0aGUgc2FtZS4KKyAgICAvLyBXZSB3aWxsIG1ha2UgdGhlbSB3b3JrIGluIGEgc3Vi
c2VxdWVudCBwYXRjaC4KKyAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBzdGF0aWMgdm9pZCBhc3Nl
cnRJc0hvc3RGdW5jdGlvbihUIGZ1bmN0aW9uKQorICAgIHsKKyAgICAgICAgVU5VU0VEX1BBUkFN
KGZ1bmN0aW9uKTsKKyNpZiBFTkFCTEUoSklUX09QRVJBVElPTl9WQUxJREFUSU9OKQorICAgICAg
ICBBU1NFUlQoZnVuY3Rpb24sICFPcHRpb25zOjp1c2VKSVQoKSB8fCBKSVRPcGVyYXRpb25MaXN0
OjppbnN0YW5jZSgpLmNvbnRhaW5zKGJpdHdpc2VfY2FzdDx2b2lkKj4oZnVuY3Rpb24pKSk7Cisj
ZW5kaWYKKyAgICB9CisKKyAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBzdGF0aWMgdm9pZCBhc3Nl
cnRJc0pJVE9wZXJhdGlvbihUIGZ1bmN0aW9uKQorICAgIHsKKyAgICAgICAgVU5VU0VEX1BBUkFN
KGZ1bmN0aW9uKTsKKyNpZiBFTkFCTEUoSklUX09QRVJBVElPTl9WQUxJREFUSU9OKQorICAgICAg
ICBBU1NFUlQoIU9wdGlvbnM6OnVzZUpJVCgpIHx8IEpJVE9wZXJhdGlvbkxpc3Q6Omluc3RhbmNl
KCkuY29udGFpbnMoYml0d2lzZV9jYXN0PHZvaWQqPihmdW5jdGlvbikpKTsKKyNlbmRpZgorICAg
IH0KKworcHJpdmF0ZToKKyAgICBIYXNoTWFwPHZvaWQqLCB2b2lkKj4gbV92YWxpZGF0ZWRPcGVy
YXRpb25zOworfTsKKworZXh0ZXJuIExhenlOZXZlckRlc3Ryb3llZDxKSVRPcGVyYXRpb25MaXN0
PiBqaXRPcGVyYXRpb25MaXN0OworCitpbmxpbmUgSklUT3BlcmF0aW9uTGlzdCYgSklUT3BlcmF0
aW9uTGlzdDo6aW5zdGFuY2UoKQoreworICAgIHJldHVybiBqaXRPcGVyYXRpb25MaXN0LmdldCgp
OworfQorCit9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJBUk02NC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyQVJNNjQuY3BwCmluZGV4IDM2MjVhOGQzY2M2
ZmFkNWQzNDAyN2JjYjNmNDgyYzdlNmVkNWNiZWUuLmYxYmFkNjY3YWU4NjM3MmZhYzdhZjIxYzM2
NjExMDQyYjE4YWIzZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJs
ZXIvTWFjcm9Bc3NlbWJsZXJBUk02NC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fz
c2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTTY0LmNwcApAQCAtNDIsNyArNDIsNyBAQCBuYW1lc3Bh
Y2UgSlNDIHsKICNpZiBFTkFCTEUoTUFTTV9QUk9CRSkKIAogZXh0ZXJuICJDIiBKU0NfREVDTEFS
RV9KSVRfT1BFUkFUSU9OKGN0aU1hc21Qcm9iZVRyYW1wb2xpbmUsIHZvaWQsICgpKTsKLUpTQ19B
Tk5PVEFURV9KSVRfT1BFUkFUSU9OKGN0aU1hc21Qcm9iZVRyYW1wb2xpbmUsIGN0aU1hc21Qcm9i
ZVRyYW1wb2xpbmUpOworSlNDX0FOTk9UQVRFX0pJVF9PUEVSQVRJT04oY3RpTWFzbVByb2JlVHJh
bXBvbGluZUlkLCBjdGlNYXNtUHJvYmVUcmFtcG9saW5lKTsKIAogdXNpbmcgbmFtZXNwYWNlIEFS
TTY0UmVnaXN0ZXJzOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1i
bGVyL01hY3JvQXNzZW1ibGVyQVJNdjcuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2Vt
Ymxlci9NYWNyb0Fzc2VtYmxlckFSTXY3LmNwcAppbmRleCAwNmE2ZmRiM2MwZjMzNzIzOWIxN2Zj
ZDBkYzQxNjU1YjllY2EyNTc1Li5iMmRiMTRlMGYwZDRjMGJjZTJmZmFlMTE2OGEyYWZlNjg0NDM3
NTc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNz
ZW1ibGVyQVJNdjcuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFj
cm9Bc3NlbWJsZXJBUk12Ny5jcHAKQEAgLTM2LDcgKzM2LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAj
aWYgRU5BQkxFKE1BU01fUFJPQkUpCiAKIGV4dGVybiAiQyIgSlNDX0RFQ0xBUkVfSklUX09QRVJB
VElPTihjdGlNYXNtUHJvYmVUcmFtcG9saW5lLCB2b2lkLCAoKSk7Ci1KU0NfQU5OT1RBVEVfSklU
X09QRVJBVElPTihjdGlNYXNtUHJvYmVUcmFtcG9saW5lLCBjdGlNYXNtUHJvYmVUcmFtcG9saW5l
KTsKK0pTQ19BTk5PVEFURV9KSVRfT1BFUkFUSU9OKGN0aU1hc21Qcm9iZVRyYW1wb2xpbmVJZCwg
Y3RpTWFzbVByb2JlVHJhbXBvbGluZSk7CiAKIHVzaW5nIG5hbWVzcGFjZSBBUk1SZWdpc3RlcnM7
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3Nl
bWJsZXJNSVBTLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3Nl
bWJsZXJNSVBTLmNwcAppbmRleCAxN2RlZWFjYzc4NjQxOTBlM2RhMDRlMmMzOWZkNzRmYjExMGY2
YjY4Li5kNTAxOWJjZTAxMGI3NDkxNWFjZDk0YTBlZDM5M2QzYzU5ZjUwMjhhIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyTUlQUy5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlck1JUFMu
Y3BwCkBAIC0zNyw3ICszNyw3IEBAIG5hbWVzcGFjZSBKU0MgewogI2lmIEVOQUJMRShNQVNNX1BS
T0JFKQogCiBleHRlcm4gIkMiIEpTQ19ERUNMQVJFX0pJVF9PUEVSQVRJT04oY3RpTWFzbVByb2Jl
VHJhbXBvbGluZSwgdm9pZCwgKCkpOwotSlNDX0FOTk9UQVRFX0pJVF9PUEVSQVRJT04oY3RpTWFz
bVByb2JlVHJhbXBvbGluZSwgY3RpTWFzbVByb2JlVHJhbXBvbGluZSk7CitKU0NfQU5OT1RBVEVf
SklUX09QRVJBVElPTihjdGlNYXNtUHJvYmVUcmFtcG9saW5lSWQsIGN0aU1hc21Qcm9iZVRyYW1w
b2xpbmUpOwogCiB1c2luZyBuYW1lc3BhY2UgTUlQU1JlZ2lzdGVyczsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclg4NkNvbW1vbi5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyWDg2Q29t
bW9uLmNwcAppbmRleCBlZTE5YThiNWFhMWQyOTI4OTcxOGQ1ZWI5ZTBhNzYxZDNmNGVhNzlmLi4z
ZTg3M2IwMGNiMDIxMWUwZmEzNGMxMmM3MjFmZjE4MDVhN2Q5MGFiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyWDg2Q29tbW9uLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyWDg2Q29t
bW9uLmNwcApAQCAtNDAsNyArNDAsNyBAQCBuYW1lc3BhY2UgSlNDIHsKICNpZiBFTkFCTEUoTUFT
TV9QUk9CRSkKIAogZXh0ZXJuICJDIiBKU0NfREVDTEFSRV9KSVRfT1BFUkFUSU9OKGN0aU1hc21Q
cm9iZVRyYW1wb2xpbmUsIHZvaWQsICgpKTsKLUpTQ19BTk5PVEFURV9KSVRfT1BFUkFUSU9OKGN0
aU1hc21Qcm9iZVRyYW1wb2xpbmUsIGN0aU1hc21Qcm9iZVRyYW1wb2xpbmUpOworSlNDX0FOTk9U
QVRFX0pJVF9PUEVSQVRJT04oY3RpTWFzbVByb2JlVHJhbXBvbGluZUlkLCBjdGlNYXNtUHJvYmVU
cmFtcG9saW5lKTsKIAogLy8gVGhlIGZvbGxvd2luZyBhcmUgb2Zmc2V0cyBmb3IgUHJvYmU6OlN0
YXRlIGZpZWxkcyBhY2Nlc3NlZCBieSB0aGUgY3RpTWFzbVByb2JlVHJhbXBvbGluZSBzdHViLgog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvanNjLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9qc2MuY3BwCmluZGV4IGFhYjQxZWM4Y2UzZGUxNjQwNDQxNTM5NzNhYTczZDRk
OGQ5OTYzYzQuLmJhNjMzMjEyZTI4MmEwMDY0NGQyMDg5NDBlMmIwZTI0NDQ4Zjg0NmYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qc2MuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9qc2MuY3BwCkBAIC0zOSw2ICszOSw3IEBACiAjaW5jbHVkZSAiSW5pdGlhbGl6ZVRo
cmVhZGluZy5oIgogI2luY2x1ZGUgIkludGVycHJldGVyLmgiCiAjaW5jbHVkZSAiSklULmgiCisj
aW5jbHVkZSAiSklUT3BlcmF0aW9uTGlzdC5oIgogI2luY2x1ZGUgIkpTQXJyYXkuaCIKICNpbmNs
dWRlICJKU0FycmF5QnVmZmVyLmgiCiAjaW5jbHVkZSAiSlNCaWdJbnQuaCIKQEAgLTM0MTUsNiAr
MzQxNiwxMyBAQCBpbnQgcnVuSlNDKGNvbnN0IENvbW1hbmRMaW5lJiBvcHRpb25zLCBib29sIGlz
V29ya2VyLCBjb25zdCBGdW5jJiBmdW5jKQogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKKyNpZiBF
TkFCTEUoSklUX09QRVJBVElPTl9WQUxJREFUSU9OKQorZXh0ZXJuIGNvbnN0IHVpbnRwdHJfdCBz
dGFydE9mSG9zdEZ1bmN0aW9uc0luU2hlbGwgX19hc20oInNlY3Rpb24kc3RhcnQkX19EQVRBX0NP
TlNUJF9fanNjX2hvc3QiKTsKK2V4dGVybiBjb25zdCB1aW50cHRyX3QgZW5kT2ZIb3N0RnVuY3Rp
b25zSW5TaGVsbCBfX2FzbSgic2VjdGlvbiRlbmQkX19EQVRBX0NPTlNUJF9fanNjX2hvc3QiKTsK
K2V4dGVybiBjb25zdCB1aW50cHRyX3Qgc3RhcnRPZkpJVE9wZXJhdGlvbnNJblNoZWxsIF9fYXNt
KCJzZWN0aW9uJHN0YXJ0JF9fREFUQV9DT05TVCRfX2pzY19vcHMiKTsKK2V4dGVybiBjb25zdCB1
aW50cHRyX3QgZW5kT2ZKSVRPcGVyYXRpb25zSW5TaGVsbCBfX2FzbSgic2VjdGlvbiRlbmQkX19E
QVRBX0NPTlNUJF9fanNjX29wcyIpOworI2VuZGlmCisKIGludCBqc2NtYWluKGludCBhcmdjLCBj
aGFyKiogYXJndikKIHsKICAgICAvLyBOZWVkIHRvIG92ZXJyaWRlIGFuZCBlbmFibGUgcmVzdHJp
Y3RlZCBvcHRpb25zIGJlZm9yZSB3ZSBzdGFydCBwYXJzaW5nIG9wdGlvbnMgYmVsb3cuCkBAIC0z
NDM0LDYgKzM0NDIsOSBAQCBpbnQganNjbWFpbihpbnQgYXJnYywgY2hhcioqIGFyZ3YpCiAgICAg
fQogCiAgICAgSlNDOjppbml0aWFsaXplKCk7CisjaWYgRU5BQkxFKEpJVF9PUEVSQVRJT05fVkFM
SURBVElPTikKKyAgICBKU0M6OkpJVE9wZXJhdGlvbkxpc3Q6OnBvcHVsYXRlUG9pbnRlcnNJbkVt
YmVkZGVyKCZzdGFydE9mSG9zdEZ1bmN0aW9uc0luU2hlbGwsICZlbmRPZkhvc3RGdW5jdGlvbnNJ
blNoZWxsLCAmc3RhcnRPZkpJVE9wZXJhdGlvbnNJblNoZWxsLCAmZW5kT2ZKSVRPcGVyYXRpb25z
SW5TaGVsbCk7CisjZW5kaWYKICAgICBpbml0aWFsaXplVGltZW91dElmTmVlZGVkKCk7CiAKICNp
ZiBPUyhEQVJXSU4pIHx8IE9TKExJTlVYKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW5pdGlhbGl6ZVRocmVhZGluZy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9Jbml0aWFsaXplVGhyZWFkaW5nLmNwcAppbmRleCBlNTNiZmIyM2M0YWIxNTk3
YmFmM2NlMGQwZWRjYTU4YmY4MjQ1NTFiLi45MTViYzZjNTQxYjg3ZWVmNWIwNWNlMzgzZjdhN2Ji
NjllZTQxYWRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Jbml0
aWFsaXplVGhyZWFkaW5nLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
bml0aWFsaXplVGhyZWFkaW5nLmNwcApAQCAtMzAsNiArMzAsNyBAQAogI2luY2x1ZGUgIkluaXRp
YWxpemVUaHJlYWRpbmcuaCIKIAogI2luY2x1ZGUgIkV4ZWN1dGFibGVBbGxvY2F0b3IuaCIKKyNp
bmNsdWRlICJKSVRPcGVyYXRpb25MaXN0LmgiCiAjaW5jbHVkZSAiSlNDQ29uZmlnLmgiCiAjaW5j
bHVkZSAiSlNDUHRyVGFnLmgiCiAjaW5jbHVkZSAiTExJbnREYXRhLmgiCkBAIC02NCw2ICs2NSw3
IEBAIHZvaWQgaW5pdGlhbGl6ZSgpCiAjZW5kaWYKICAgICAgICAgewogICAgICAgICAgICAgT3B0
aW9uczo6QWxsb3dVbmZpbmFsaXplZEFjY2Vzc1Njb3BlIHNjb3BlOworICAgICAgICAgICAgSklU
T3BlcmF0aW9uTGlzdDo6aW5pdGlhbGl6ZSgpOwogICAgICAgICAgICAgRXhlY3V0YWJsZUFsbG9j
YXRvcjo6aW5pdGlhbGl6ZSgpOwogICAgICAgICAgICAgVk06OmNvbXB1dGVDYW5Vc2VKSVQoKTsK
ICAgICAgICAgICAgIGlmICghZ19qc2NDb25maWcudm0uY2FuVXNlSklUKSB7CkBAIC03Myw2ICs3
NSw4IEBAIHZvaWQgaW5pdGlhbGl6ZSgpCiAgICAgICAgIH0KICAgICAgICAgT3B0aW9uczo6Zmlu
YWxpemUoKTsKIAorICAgICAgICBKSVRPcGVyYXRpb25MaXN0Ojpwb3B1bGF0ZVBvaW50ZXJzSW5K
YXZhU2NyaXB0Q29yZSgpOworCiAgICAgICAgIGlmIChPcHRpb25zOjp1c2VTaWdpbGxDcmFzaEFu
YWx5emVyKCkpCiAgICAgICAgICAgICBlbmFibGVTaWdpbGxDcmFzaEFuYWx5emVyKCk7CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJy
YXlWaWV3UHJvdG90eXBlRnVuY3Rpb25zLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZUZ1bmN0aW9ucy5oCmluZGV4IDBiYWI0
NjA1N2NlYTQxZTI4MDliZGU4N2ExOTIwYzNjYmY4OGFmYWUuLjBiNjZlZDYyMjkxN2VkZTM2ODJl
YTBhZDNmNGEyZjQ5NTBkMWUwMTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlRnVuY3Rpb25zLmgKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdQcm90
b3R5cGVGdW5jdGlvbnMuaApAQCAtMTAwLDcgKzEwMCw3IEBAIGlubGluZSB1bnNpZ25lZCBhcmd1
bWVudENsYW1wZWRJbmRleEZyb21TdGFydE9yRW5kKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QsCiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFZpZXdDbGFzcz4KLUpTQ19ERUZJTkVfSE9TVF9G
VU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNTZXQsIChWTSYgdm0sIEpTR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKSkKK0FMV0FZU19J
TkxJTkUgRW5jb2RlZEpTVmFsdWUgZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jU2V0KFZN
JiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUp
CiB7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCkBAIC0xNDcs
NyArMTQ3LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmll
d1Byb3RvRnVuY1NldCwgKFZNJiB2bSwgSlNHbG9iYWxPYmoKIH0KIAogdGVtcGxhdGU8dHlwZW5h
bWUgVmlld0NsYXNzPgotSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5
Vmlld1Byb3RvRnVuY0NvcHlXaXRoaW4sIChWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKSkKK0FMV0FZU19JTkxJTkUgRW5jb2RlZEpTVmFs
dWUgZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jQ29weVdpdGhpbihWTSYgdm0sIEpTR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKQogewogICAgIGF1
dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIApAQCAtMTc5LDcgKzE3OSw3IEBA
IEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmND
b3B5V2l0aGluLCAoVk0mIHZtLCBKU0dsCiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFZpZXdDbGFz
cz4KLUpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1
bmNJbmNsdWRlcywgKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZy
YW1lKiBjYWxsRnJhbWUpKQorQUxXQVlTX0lOTElORSBFbmNvZGVkSlNWYWx1ZSBnZW5lcmljVHlw
ZWRBcnJheVZpZXdQcm90b0Z1bmNJbmNsdWRlcyhWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKQogewogICAgIGF1dG8gc2NvcGUgPSBERUNM
QVJFX1RIUk9XX1NDT1BFKHZtKTsKIApAQCAtMjI0LDcgKzIyNCw3IEBAIEpTQ19ERUZJTkVfSE9T
VF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNJbmNsdWRlcywgKFZNJiB2
bSwgSlNHbG9iCiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFZpZXdDbGFzcz4KLUpTQ19ERUZJTkVf
SE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNJbmRleE9mLCAoVk0m
IHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkp
CitBTFdBWVNfSU5MSU5FIEVuY29kZWRKU1ZhbHVlIGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3Rv
RnVuY0luZGV4T2YoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJh
bWUqIGNhbGxGcmFtZSkKIHsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2
bSk7CiAKQEAgLTI2MSw3ICsyNjEsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJp
Y1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jSW5kZXhPZiwgKFZNJiB2bSwgSlNHbG9iYQogfQogCiB0
ZW1wbGF0ZTx0eXBlbmFtZSBWaWV3Q2xhc3M+Ci1KU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2Vu
ZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jSm9pbiwgKFZNJiB2bSwgSlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpKQorQUxXQVlTX0lOTElORSBFbmNv
ZGVkSlNWYWx1ZSBnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNKb2luKFZNJiB2bSwgSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpCiB7CiAgICAg
YXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCkBAIC0zMDAsNyArMzAwLDcg
QEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVu
Y0pvaW4sIChWTSYgdm0sIEpTR2xvYmFsT2IKIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUgVmlld0Ns
YXNzPgotSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3Rv
RnVuY0xhc3RJbmRleE9mLCAoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBD
YWxsRnJhbWUqIGNhbGxGcmFtZSkpCitBTFdBWVNfSU5MSU5FIEVuY29kZWRKU1ZhbHVlIGdlbmVy
aWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY0xhc3RJbmRleE9mKFZNJiB2bSwgSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpCiB7CiAgICAgYXV0byBzY29w
ZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCkBAIC0zNTAsNyArMzUwLDcgQEAgSlNDX0RF
RklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY0xhc3RJbmRl
eE9mLCAoVk0mIHZtLCBKU0cKIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUgVmlld0NsYXNzPgotSlND
X0RFRklORV9IT1NUX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvR2V0dGVyRnVu
Y0J1ZmZlciwgKFZNJiwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBj
YWxsRnJhbWUpKQorQUxXQVlTX0lOTElORSBFbmNvZGVkSlNWYWx1ZSBnZW5lcmljVHlwZWRBcnJh
eVZpZXdQcm90b0dldHRlckZ1bmNCdWZmZXIoVk0mLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2Jq
ZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKIHsKICAgICAvLyAyMi4yLjMuMwogICAgIFZpZXdD
bGFzcyogdGhpc09iamVjdCA9IGpzQ2FzdDxWaWV3Q2xhc3MqPihjYWxsRnJhbWUtPnRoaXNWYWx1
ZSgpKTsKQEAgLTM1OSw3ICszNTksNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJp
Y1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jQnVmZmVyLCAoVk0mLCBKU0dsbwogfQogCiB0
ZW1wbGF0ZTx0eXBlbmFtZSBWaWV3Q2xhc3M+Ci1KU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2Vu
ZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jTGVuZ3RoLCAoVk0mLCBKU0dsb2JhbE9i
amVjdCosIENhbGxGcmFtZSogY2FsbEZyYW1lKSkKK0FMV0FZU19JTkxJTkUgRW5jb2RlZEpTVmFs
dWUgZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jTGVuZ3RoKFZNJiwgSlNHbG9i
YWxPYmplY3QqLCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKIHsKICAgICAvLyAyMi4yLjMuMTcKICAg
ICBWaWV3Q2xhc3MqIHRoaXNPYmplY3QgPSBqc0Nhc3Q8Vmlld0NsYXNzKj4oY2FsbEZyYW1lLT50
aGlzVmFsdWUoKSk7CkBAIC0zNjgsNyArMzY4LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9O
KGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvR2V0dGVyRnVuY0xlbmd0aCwgKFZNJiwgSlNHbG8K
IH0KIAogdGVtcGxhdGU8dHlwZW5hbWUgVmlld0NsYXNzPgotSlNDX0RFRklORV9IT1NUX0ZVTkNU
SU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvR2V0dGVyRnVuY0J5dGVMZW5ndGgsIChWTSYs
IEpTR2xvYmFsT2JqZWN0KiwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpKQorQUxXQVlTX0lOTElORSBF
bmNvZGVkSlNWYWx1ZSBnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0dldHRlckZ1bmNCeXRlTGVu
Z3RoKFZNJiwgSlNHbG9iYWxPYmplY3QqLCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKIHsKICAgICAv
LyAyMi4yLjMuMgogICAgIFZpZXdDbGFzcyogdGhpc09iamVjdCA9IGpzQ2FzdDxWaWV3Q2xhc3Mq
PihjYWxsRnJhbWUtPnRoaXNWYWx1ZSgpKTsKQEAgLTM3Nyw3ICszNzcsNyBAQCBKU0NfREVGSU5F
X0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jQnl0ZUxl
bmd0aCwgKFZNJiwgSgogfQogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBWaWV3Q2xhc3M+Ci1KU0NfREVG
SU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9HZXR0ZXJGdW5jQnl0
ZU9mZnNldCwgKFZNJiwgSlNHbG9iYWxPYmplY3QqLCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkpCitB
TFdBWVNfSU5MSU5FIEVuY29kZWRKU1ZhbHVlIGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvR2V0
dGVyRnVuY0J5dGVPZmZzZXQoVk0mLCBKU0dsb2JhbE9iamVjdCosIENhbGxGcmFtZSogY2FsbEZy
YW1lKQogewogICAgIC8vIDIyLjIuMy4zCiAgICAgVmlld0NsYXNzKiB0aGlzT2JqZWN0ID0ganND
YXN0PFZpZXdDbGFzcyo+KGNhbGxGcmFtZS0+dGhpc1ZhbHVlKCkpOwpAQCAtMzg2LDcgKzM4Niw3
IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0dl
dHRlckZ1bmNCeXRlT2Zmc2V0LCAoVk0mLCBKCiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFZpZXdD
bGFzcz4KLUpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90
b0Z1bmNSZXZlcnNlLCAoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxs
RnJhbWUqIGNhbGxGcmFtZSkpCitBTFdBWVNfSU5MSU5FIEVuY29kZWRKU1ZhbHVlIGdlbmVyaWNU
eXBlZEFycmF5Vmlld1Byb3RvRnVuY1JldmVyc2UoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKIHsKIC8vICAgIFZNJiB2bSA9IGdldFZN
KGdsb2JhbE9iamVjdCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0p
OwpAQCAtNDAzLDcgKzQwMyw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmljVHlw
ZWRBcnJheVZpZXdQcm90b0Z1bmNSZXZlcnNlLCAoVk0mIHZtLCBKU0dsb2JhCiB9CiAKIHRlbXBs
YXRlPHR5cGVuYW1lIFZpZXdDbGFzcz4KLUpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihnZW5lcmlj
VHlwZWRBcnJheVZpZXdQcml2YXRlRnVuY1NvcnQsIChWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKSkKK0FMV0FZU19JTkxJTkUgRW5jb2Rl
ZEpTVmFsdWUgZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJpdmF0ZUZ1bmNTb3J0KFZNJiB2bSwgSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpCiB7CiAvLyAg
ICBWTSYgdm0gPSBnZXRWTShnbG9iYWxPYmplY3QpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJF
X1RIUk9XX1NDT1BFKHZtKTsKQEAgLTQxOSw3ICs0MTksNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVO
Q1RJT04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJpdmF0ZUZ1bmNTb3J0LCAoVk0mIHZtLCBKU0ds
b2JhbAogfQogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBWaWV3Q2xhc3M+Ci1KU0NfREVGSU5FX0hPU1Rf
RlVOQ1RJT04oZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jU2xpY2UsIChWTSYgdm0sIEpT
R2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKSkKK0FMV0FZ
U19JTkxJTkUgRW5jb2RlZEpTVmFsdWUgZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG9GdW5jU2xp
Y2UoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxG
cmFtZSkKIHsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKQEAg
LTUxMCw3ICs1MTAsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVkQXJy
YXlWaWV3UHJvdG9GdW5jU2xpY2UsIChWTSYgdm0sIEpTR2xvYmFsTwogfQogCiB0ZW1wbGF0ZTx0
eXBlbmFtZSBWaWV3Q2xhc3M+Ci1KU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZ2VuZXJpY1R5cGVk
QXJyYXlWaWV3UHJpdmF0ZUZ1bmNTdWJhcnJheUNyZWF0ZSwgKFZNJnZtLCBKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkpCitBTFdBWVNfSU5MSU5FIEVu
Y29kZWRKU1ZhbHVlIGdlbmVyaWNUeXBlZEFycmF5Vmlld1ByaXZhdGVGdW5jU3ViYXJyYXlDcmVh
dGUoVk0mdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZy
YW1lKQogewogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0uY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0uY3BwCmluZGV4IGNiYzcwNmZmNDg2MDAwYWQ2OGYwZTZk
MzQ4NTc0OWZjNjliZWQ3ODIuLjliNjQ0Zjg4OTJmYjlhMDJkNDE0MWE5OTYxMDM5NTdjMTZjNmYz
MWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZNLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9WTS5jcHAKQEAgLTc4LDYgKzc4LDcgQEAK
ICNpbmNsdWRlICJJc29IZWFwQ2VsbFR5cGUuaCIKICNpbmNsdWRlICJJc29JbmxpbmVkSGVhcENl
bGxUeXBlLmgiCiAjaW5jbHVkZSAiSklUQ29kZS5oIgorI2luY2x1ZGUgIkpJVE9wZXJhdGlvbkxp
c3QuaCIKICNpbmNsdWRlICJKSVRUaHVua3MuaCIKICNpbmNsdWRlICJKSVRXb3JrbGlzdC5oIgog
I2luY2x1ZGUgIkpTQVBJR2xvYmFsT2JqZWN0LmgiCkBAIC04MzEsNiArODMyLDcgQEAgTmF0aXZl
RXhlY3V0YWJsZSogVk06OmdldEhvc3RGdW5jdGlvbihOYXRpdmVGdW5jdGlvbiBmdW5jdGlvbiwg
SW50cmluc2ljIGludHJpbnMKIHsKICNpZiBFTkFCTEUoSklUKQogICAgIGlmIChPcHRpb25zOjp1
c2VKSVQoKSkgeworICAgICAgICBKSVRPcGVyYXRpb25MaXN0Ojphc3NlcnRJc0hvc3RGdW5jdGlv
bihmdW5jdGlvbik7CiAgICAgICAgIHJldHVybiBqaXRTdHVicy0+aG9zdEZ1bmN0aW9uU3R1YigK
ICAgICAgICAgICAgICp0aGlzLCBmdW5jdGlvbiwgY29uc3RydWN0b3IsCiAgICAgICAgICAgICBp
bnRyaW5zaWMgIT0gTm9JbnRyaW5zaWMgPyB0aHVua0dlbmVyYXRvckZvckludHJpbnNpYyhpbnRy
aW5zaWMpIDogbnVsbHB0ciwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtQ2Fs
bGluZ0NvbnZlbnRpb25zLmggYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUNhbGxpbmdDb252ZW50
aW9ucy5oCmluZGV4IDc1OTc3MjlmNjQxMjY2YzUyZGJkMzVkZGQ5OTc1ZjI2N2JhNmMyZTkuLjQ5
MzdlYmY3YzNhYmViZmYyZjZhNjAwNmVkMWYyNDYzN2YxZDFiMzUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XVEYvd3RmL1BsYXRmb3JtQ2FsbGluZ0NvbnZlbnRpb25zLmgKKysrIGIvU291cmNlL1dURi93
dGYvUGxhdGZvcm1DYWxsaW5nQ29udmVudGlvbnMuaApAQCAtNDIsMTMgKzQyLDIwIEBACiAjZGVm
aW5lIEpTQ19IT1NUX0NBTExfQVRUUklCVVRFUwogI2VuZGlmCiAKKyNpZiBFTkFCTEUoSklUX09Q
RVJBVElPTl9WQUxJREFUSU9OKQorI2RlZmluZSBKU0NfQU5OT1RBVEVfSE9TVF9GVU5DVElPTihm
dW5jdGlvbklkLCBmdW5jdGlvbikgXAorICAgIGNvbnN0ZXhwciBhdXRvIGZ1bmN0aW9uSWQgX19h
dHRyaWJ1dGVfXygodXNlZCwgc2VjdGlvbigiX19EQVRBX0NPTlNULF9fanNjX2hvc3QiKSkpID0g
ZnVuY3Rpb247CisjZWxzZQorI2RlZmluZSBKU0NfQU5OT1RBVEVfSE9TVF9GVU5DVElPTihmdW5j
dGlvbklkLCBmdW5jdGlvbikKKyNlbmRpZgorCiAjZGVmaW5lIEpTQ19ERUZJTkVfSE9TVF9GVU5D
VElPTl9XSVRIX0FUVFJJQlVURVMoZnVuY3Rpb25OYW1lLCBhdHRyaWJ1dGVzLCBwYXJhbWV0ZXJz
KSBcCisgICAgSlNDX0FOTk9UQVRFX0hPU1RfRlVOQ1RJT04oX0pJVFRhcmdldF8jI2Z1bmN0aW9u
TmFtZSwgc3RhdGljX2Nhc3Q8SlNDOjpFbmNvZGVkSlNWYWx1ZSgqKXBhcmFtZXRlcnM+KGZ1bmN0
aW9uTmFtZSkpOyBcCiAgICAgYXR0cmlidXRlcyBKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NU
X0NBTExfQVRUUklCVVRFUyBmdW5jdGlvbk5hbWUgcGFyYW1ldGVycwogI2RlZmluZSBKU0NfREVG
SU5FX0hPU1RfRlVOQ1RJT04oZnVuY3Rpb25OYW1lLCBwYXJhbWV0ZXJzKSBcCiAgICAgSlNDX0RF
RklORV9IT1NUX0ZVTkNUSU9OX1dJVEhfQVRUUklCVVRFUyhmdW5jdGlvbk5hbWUsICwgcGFyYW1l
dGVycykKICNkZWZpbmUgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihmdW5jdGlvbk5hbWUpIFwK
ICAgICBKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTExfQVRUUklCVVRFUyBmdW5jdGlv
bk5hbWUoSlNDOjpKU0dsb2JhbE9iamVjdCosIEpTQzo6Q2FsbEZyYW1lKikKLSNkZWZpbmUgSlND
X0FOTk9UQVRFX0hPU1RfRlVOQ1RJT04oZnVuY3Rpb25JZCwgZnVuY3Rpb24pCiAKICNpZiBDUFUo
WDg2KSAmJiBPUyhXSU5ET1dTKQogI2RlZmluZSBDQUxMSU5HX0NPTlZFTlRJT05fSVNfU1REQ0FM
TCAxCkBAIC04MiwxNCArODksMjAgQEAKICNkZWZpbmUgSklUX09QRVJBVElPTl9BVFRSSUJVVEVT
CiAjZW5kaWYKIAorI2lmIEVOQUJMRShKSVRfT1BFUkFUSU9OX1ZBTElEQVRJT04pCisjZGVmaW5l
IEpTQ19BTk5PVEFURV9KSVRfT1BFUkFUSU9OKGZ1bmN0aW9uSWQsIGZ1bmN0aW9uKSBcCisgICAg
Y29uc3RleHByIGF1dG8gIGZ1bmN0aW9uSWQgX19hdHRyaWJ1dGVfXygodXNlZCwgc2VjdGlvbigi
X19EQVRBX0NPTlNULF9fanNjX29wcyIpKSkgPSBmdW5jdGlvbjsKKyNlbHNlCisjZGVmaW5lIEpT
Q19BTk5PVEFURV9KSVRfT1BFUkFUSU9OKGZ1bmN0aW9uSWQsIGZ1bmN0aW9uKQorI2VuZGlmCiAK
ICNkZWZpbmUgSlNDX0RFRklORV9KSVRfT1BFUkFUSU9OX1dJVEhfQVRUUklCVVRFUyhmdW5jdGlv
bk5hbWUsIGF0dHJpYnV0ZXMsIHJldHVyblR5cGUsIHBhcmFtZXRlcnMpIFwKKyAgICBKU0NfQU5O
T1RBVEVfSklUX09QRVJBVElPTihfSklUVGFyZ2V0XyMjZnVuY3Rpb25OYW1lLCBzdGF0aWNfY2Fz
dDxyZXR1cm5UeXBlKCopcGFyYW1ldGVycz4oZnVuY3Rpb25OYW1lKSk7IFwKICAgICBhdHRyaWJ1
dGVzIHJldHVyblR5cGUgSklUX09QRVJBVElPTl9BVFRSSUJVVEVTIGZ1bmN0aW9uTmFtZSBwYXJh
bWV0ZXJzCiAjZGVmaW5lIEpTQ19ERUZJTkVfSklUX09QRVJBVElPTihmdW5jdGlvbk5hbWUsIHJl
dHVyblR5cGUsIHBhcmFtZXRlcnMpIFwKICAgICBKU0NfREVGSU5FX0pJVF9PUEVSQVRJT05fV0lU
SF9BVFRSSUJVVEVTKGZ1bmN0aW9uTmFtZSwgLCByZXR1cm5UeXBlLCBwYXJhbWV0ZXJzKQogI2Rl
ZmluZSBKU0NfREVDTEFSRV9KSVRfT1BFUkFUSU9OKGZ1bmN0aW9uTmFtZSwgcmV0dXJuVHlwZSwg
cGFyYW1ldGVycykgXAogICAgIHJldHVyblR5cGUgSklUX09QRVJBVElPTl9BVFRSSUJVVEVTIGZ1
bmN0aW9uTmFtZSBwYXJhbWV0ZXJzIFJFRkVSRU5DRURfRlJPTV9BU00gV1RGX0lOVEVSTkFMCi0j
ZGVmaW5lIEpTQ19BTk5PVEFURV9KSVRfT1BFUkFUSU9OKGZ1bmN0aW9uSWQsIGZ1bmN0aW9uKQog
CiAjZGVmaW5lIEpTQ19ERUNMQVJFX0NVU1RPTV9HRVRURVIoZnVuY3Rpb25OYW1lKSBKU0NfREVD
TEFSRV9KSVRfT1BFUkFUSU9OKGZ1bmN0aW9uTmFtZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgKEpT
Qzo6SlNHbG9iYWxPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFt
ZSkpCiAjZGVmaW5lIEpTQ19ERUNMQVJFX0NVU1RPTV9TRVRURVIoZnVuY3Rpb25OYW1lKSBKU0Nf
REVDTEFSRV9KSVRfT1BFUkFUSU9OKGZ1bmN0aW9uTmFtZSwgYm9vbCwgKEpTQzo6SlNHbG9iYWxP
YmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtRW5hYmxlLmggYi9Tb3VyY2UvV1RGL3d0Zi9Q
bGF0Zm9ybUVuYWJsZS5oCmluZGV4IDkxNjZjZmRkOTU1NGI2MGY3NzgzMjI5NGVlYzY5ZTZiODgx
ZGMzOWUuLjRhMjI1YmQ3Yjc2MDQyNDhlMzNhNjI3NWM5YzlkYzg4NDYwNmNhZDAgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtRW5hYmxlLmgKKysrIGIvU291cmNlL1dURi93dGYv
UGxhdGZvcm1FbmFibGUuaApAQCAtODg4LDMgKzg4OCw3IEBACiAjaWYgQ1BVKEFSTTY0KSAmJiBD
UFUoQUREUkVTUzY0KQogI2RlZmluZSBVU0VfSlVNUF9JU0xBTkRTIDEKICNlbmRpZgorCisjaWYg
T1MoREFSV0lOKSAmJiBFTkFCTEUoSklUKSAmJiBBU1NFUlRfRU5BQkxFRAorI2RlZmluZSBFTkFC
TEVfSklUX09QRVJBVElPTl9WQUxJREFUSU9OIDEKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvSGVhZGVycy5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKaW5k
ZXggYzg3NDhhMjE2MjdjYzMzNGNlMjJiZTQ2OTNlNmZjODUzZmUzYTYwZC4uOGYzOGZmNGZmMjJk
YmEzMjU4MmYyZTEyMWU3ZDY1OGM0MTYxYzY5YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
SGVhZGVycy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCkBAIC0yNTgs
NiArMjU4LDcgQEAgc2V0KFdlYkNvcmVfUFJJVkFURV9GUkFNRVdPUktfSEVBREVSUwogICAgIGJp
bmRpbmdzL2pzL1NjcmlwdFdyYXBwYWJsZUlubGluZXMuaAogICAgIGJpbmRpbmdzL2pzL1Nlcmlh
bGl6ZWRTY3JpcHRWYWx1ZS5oCiAgICAgYmluZGluZ3MvanMvU3RyaW5nQWRhcHRvcnMuaAorICAg
IGJpbmRpbmdzL2pzL1dlYkNvcmVKSVRPcGVyYXRpb25zLmgKICAgICBiaW5kaW5ncy9qcy9XZWJD
b3JlVHlwZWRBcnJheUNvbnRyb2xsZXIuaAogICAgIGJpbmRpbmdzL2pzL1dpbmRvd1Byb3h5LmgK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQgYi9Tb3VyY2UvV2ViQ29y
ZS9Tb3VyY2VzLnR4dAppbmRleCBmMTAzNzIwM2ZkYzIzZjFkMjNlY2E2MGMwZDg5OTkzYjFjYTNl
OTk4Li5mYjk4Yzc4YTA0MTExMWZlNWM2MjZiM2I1ZGViYTM1ZTRlNDUwOTUyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2Vz
LnR4dApAQCAtNTk0LDYgKzU5NCw3IEBAIGJpbmRpbmdzL2pzL1NjcmlwdFN0YXRlLmNwcAogYmlu
ZGluZ3MvanMvU2NyaXB0V3JhcHBhYmxlLmNwcAogYmluZGluZ3MvanMvU2VyaWFsaXplZFNjcmlw
dFZhbHVlLmNwcAogYmluZGluZ3MvanMvU3RydWN0dXJlZENsb25lLmNwcAorYmluZGluZ3MvanMv
V2ViQ29yZUpJVE9wZXJhdGlvbnMuY3BwCiBiaW5kaW5ncy9qcy9XZWJDb3JlSlNDbGllbnREYXRh
LmNwcAogYmluZGluZ3MvanMvV2ViQ29yZVR5cGVkQXJyYXlDb250cm9sbGVyLmNwcAogYmluZGlu
Z3MvanMvV2luZG93UHJveHkuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggZWZjZjE1MGFkNWJkNDliNDQzNmYzMTVmYTZiYjFi
NjQ4ZjM1YmRkNy4uODk3MjEwYTQ4OGRjNDAwZDRlNzg5NmU0Mzk0YWQ3N2FlYjk0YmE1NSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpA
QCAtNDk2Nyw2ICs0OTY3LDcgQEAKIAkJRTMyM0NGRkExRTVBRjZBRjAwRjBCNEEwIC8qIEpTRE9N
Q29udmVydFByb21pc2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEUzMjNDRkY5MUU1QUY2QTUwMEYwQjRBMCAvKiBKU0RPTUNvbnZlcnRQcm9taXNlLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJRTM1NjVC
N0IxREMyRDZDOTAwMjE3REJEIC8qIEpTRXZlbnRDdXN0b20uaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzNEVFNDlGMURDMkQ1NzUwMEVBQTlEMyAvKiBK
U0V2ZW50Q3VzdG9tLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKIAkJRTM1ODAyQjYxREM4NDM1RDAwQTk3NzNDIC8qIERPTUpJVElETFR5cGVGaWx0ZXIu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzNTgwMkI1
MURDODQzNTgwMEE5NzczQyAvKiBET01KSVRJRExUeXBlRmlsdGVyLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTM1ODJDMjgyNTI3RjY2OTAwRDFC
NzkwIC8qIFdlYkNvcmVKSVRPcGVyYXRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBFMzU4MkMyNjI1MjdGNjY4MDBEMUI3OTAgLyogV2ViQ29yZUpJ
VE9wZXJhdGlvbnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwogCQlFMzVCOTA3RjIzRjYwQTUwMDAwMDExRkYgLyogTG9jYWxpemVkRGV2aWNlTW9kZWwu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzNUI5MDdD
MjNGNjA2NzcwMDAwMTFGRiAvKiBMb2NhbGl6ZWREZXZpY2VNb2RlbC5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUUzNzdGRTREMURBREUxNjUwMENE
RDAyNSAvKiBOb2RlQ29uc3RhbnRzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBFM0QwNDk5MzFEQURDMDQ1MDA3MThGM0MgLyogTm9kZUNvbnN0YW50cy5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUUzN0M4
NjUwMUVCNjNFM0YwMDg3QzZDQSAvKiBKU0RPTVByb21pc2UuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzN0M4NjRGMUVCNjNFMkQwMDg3QzZDQSAvKiBK
U0RPTVByb21pc2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwpAQCAtMTU4MjAsNiArMTU4MjEsOCBAQAogCQlFMzM0ODI1RTFEQzkzQUEwMDA5Qzk1NDQg
LyogRE9NSklUQWJzdHJhY3RIZWFwUmVwb3NpdG9yeS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IG5hbWUgPSBET01KSVRBYnN0cmFjdEhlYXBSZXBvc2l0b3J5Lmg7IHBhdGggPSBEZXJpdmVk
U291cmNlcy9XZWJDb3JlL0RPTUpJVEFic3RyYWN0SGVhcFJlcG9zaXRvcnkuaDsgc291cmNlVHJl
ZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKIAkJRTM0RUU0OUYxREMyRDU3NTAwRUFBOUQzIC8q
IEpTRXZlbnRDdXN0b20uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNFdmVu
dEN1c3RvbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFMzU4MDJCNTFEQzg0MzU4
MDBBOTc3M0MgLyogRE9NSklUSURMVHlwZUZpbHRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBET01KSVRJRExUeXBlRmlsdGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUUzNTgyQzI0MjUyN0Y2NjgwMEQxQjc5MCAvKiBXZWJDb3JlSklUT3BlcmF0aW9ucy5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJDb3JlSklUT3BlcmF0
aW9ucy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUzNTgyQzI2MjUyN0Y2Njgw
MEQxQjc5MCAvKiBXZWJDb3JlSklUT3BlcmF0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBXZWJDb3JlSklUT3BlcmF0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQlFMzVCOTA3QzIzRjYwNjc3MDAwMDExRkYgLyogTG9jYWxpemVkRGV2aWNlTW9kZWwu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTG9jYWxpemVkRGV2aWNlTW9kZWwu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTM1QjkwN0UyM0Y2MDY3NzAwMDAxMUZG
IC8qIExvY2FsaXplZERldmljZU1vZGVsLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2Jq
Y3BwOyBwYXRoID0gTG9jYWxpemVkRGV2aWNlTW9kZWwubW07IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUUzN0M4NjRGMUVCNjNFMkQwMDg3QzZDQSAvKiBKU0RPTVByb21pc2UuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNET01Qcm9taXNlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CkBAIC0yNjQ5OSw2ICsyNjUwMiw4IEBACiAJCQkJNDE0QjgyMDIxRDZE
RjBEOTAwNzdFQkUzIC8qIFN0cnVjdHVyZWRDbG9uZS5jcHAgKi8sCiAJCQkJNDE0QjgyMDMxRDZE
RjBEOTAwNzdFQkUzIC8qIFN0cnVjdHVyZWRDbG9uZS5oICovLAogCQkJCTQxOUJFNzUyMUJDN0Yz
REIwMEUxQzg1QiAvKiBXZWJDb3JlQnVpbHRpbk5hbWVzLmggKi8sCisJCQkJRTM1ODJDMjQyNTI3
RjY2ODAwRDFCNzkwIC8qIFdlYkNvcmVKSVRPcGVyYXRpb25zLmNwcCAqLywKKwkJCQlFMzU4MkMy
NjI1MjdGNjY4MDBEMUI3OTAgLyogV2ViQ29yZUpJVE9wZXJhdGlvbnMuaCAqLywKIAkJCQkwRjdE
RjE0NzFFMkJGMUE2MDA5NTk1MUIgLyogV2ViQ29yZUpTQ2xpZW50RGF0YS5jcHAgKi8sCiAJCQkJ
QkM1M0Q5MTAxMTQzMTBDQzAwMEQ4MTdFIC8qIFdlYkNvcmVKU0NsaWVudERhdGEuaCAqLywKIAkJ
CQkwRjA5OUQwNjE3Qjk2OEExMDBGRjg0QjkgLyogV2ViQ29yZVR5cGVkQXJyYXlDb250cm9sbGVy
LmNwcCAqLywKQEAgLTM0NDY5LDYgKzM0NDc0LDcgQEAKIAkJCQlDREM2OUREQTE2MzcxRkQ0MDA3
QzM4REYgLyogV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcuaCBpbiBIZWFkZXJzICov
LAogCQkJCUNEQzY5REQ2MTYzMjAyNkMwMDdDMzhERiAvKiBXZWJDb3JlRnVsbFNjcmVlbldhcm5p
bmdWaWV3LmggaW4gSGVhZGVycyAqLywKIAkJCQlDRDEyN0RFRTE0RjMwOTg0MDBFODQ3NzkgLyog
V2ViQ29yZUZ1bGxTY3JlZW5XaW5kb3cuaCBpbiBIZWFkZXJzICovLAorCQkJCUUzNTgyQzI4MjUy
N0Y2NjkwMEQxQjc5MCAvKiBXZWJDb3JlSklUT3BlcmF0aW9ucy5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJQkMzNDhCRDQwREI3RjgwNDAwNEFCQUJCIC8qIFdlYkNvcmVKU0J1aWx0aW5JbnRlcm5hbHMu
aCBpbiBIZWFkZXJzICovLAogCQkJCUJDMzQ4QkQ0MERCN0Y4MDQwMDRBQkFCQSAvKiBXZWJDb3Jl
SlNCdWlsdGlucy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1M0Q5MTExMTQzMTBDQzAwMEQ4MTdF
IC8qIFdlYkNvcmVKU0NsaWVudERhdGEuaCBpbiBIZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CdWlsdGluQ29uc3RydWN0b3IuaCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQnVpbHRpbkNvbnN0cnVjdG9yLmgKaW5kZXggZmY3
YTA1ZDNjYjIyZjc1YWVhMGIxM2MxZTQ5NjhlZTFiZDViZmNiZC4uZDFlMWJlZmJkOWM5NTQ0NTYz
NDY1Y2NiODkwZGE0MzU5OWI3YzY2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvSlNET01CdWlsdGluQ29uc3RydWN0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU0RPTUJ1aWx0aW5Db25zdHJ1Y3Rvci5oCkBAIC0zNyw2ICszNyw4IEBAIHRlbXBs
YXRlPHR5cGVuYW1lIEpTQ2xhc3M+IGNsYXNzIEpTRE9NQnVpbHRpbkNvbnN0cnVjdG9yIGZpbmFs
IDogcHVibGljIEpTRE9NQnVpCiAgICAgLy8gVXN1YWxseSBkZWZpbmVkIGZvciBlYWNoIHNwZWNp
YWxpemF0aW9uIGNsYXNzLgogICAgIHN0YXRpYyBKU0M6OkpTVmFsdWUgcHJvdG90eXBlRm9yU3Ry
dWN0dXJlKEpTQzo6Vk0mLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYpOwogCisgICAgc3RhdGlj
IEpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTF9BVFRSSUJVVEVTIGNvbnN0cnVjdChK
U0M6OkpTR2xvYmFsT2JqZWN0KiwgSlNDOjpDYWxsRnJhbWUqKTsKKwogcHJpdmF0ZToKICAgICBK
U0RPTUJ1aWx0aW5Db25zdHJ1Y3RvcihKU0M6OlN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUds
b2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogICAgICAgICA6IEJhc2Uoc3RydWN0dXJlLCBnbG9i
YWxPYmplY3QpCkBAIC00NSw3ICs0Nyw2IEBAIHRlbXBsYXRlPHR5cGVuYW1lIEpTQ2xhc3M+IGNs
YXNzIEpTRE9NQnVpbHRpbkNvbnN0cnVjdG9yIGZpbmFsIDogcHVibGljIEpTRE9NQnVpCiAKICAg
ICB2b2lkIGZpbmlzaENyZWF0aW9uKEpTQzo6Vk0mLCBKU0RPTUdsb2JhbE9iamVjdCYpOwogICAg
IHN0YXRpYyBKU0M6OkNhbGxEYXRhIGdldENvbnN0cnVjdERhdGEoSlNDOjpKU0NlbGwqKTsKLSAg
ICBzdGF0aWMgSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJQlVURVMgY29u
c3RydWN0KEpTQzo6SlNHbG9iYWxPYmplY3QqLCBKU0M6OkNhbGxGcmFtZSopOwogCiAgICAgSlND
OjpFbmNvZGVkSlNWYWx1ZSBjYWxsQ29uc3RydWN0b3IoSlNDOjpKU0dsb2JhbE9iamVjdCYsIEpT
Qzo6Q2FsbEZyYW1lJiwgSlNDOjpKU09iamVjdCYpOwogICAgIEpTQzo6RW5jb2RlZEpTVmFsdWUg
Y2FsbENvbnN0cnVjdG9yKEpTQzo6SlNHbG9iYWxPYmplY3QmLCBKU0M6OkNhbGxGcmFtZSYsIEpT
Qzo6SlNPYmplY3QqKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
RE9NQ29uc3RydWN0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQ29uc3Ry
dWN0b3IuaAppbmRleCBhY2Y5MTkwZWE3OWZiYTg1N2E2ZjBhMjRhN2JkMmMxYzA2Mzc2MmE5Li40
NjIzNGQyYTRiN2IzMjE4ODhhMGUyNGZiOWU1YWQyZGZhMzk4MDJiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUNvbnN0cnVjdG9yLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNET01Db25zdHJ1Y3Rvci5oCkBAIC0zNSw2ICszNSw5IEBAIHRl
bXBsYXRlPHR5cGVuYW1lIEpTQ2xhc3M+IGNsYXNzIEpTRE9NQ29uc3RydWN0b3IgZmluYWwgOiBw
dWJsaWMgSlNET01Db25zdHJ1Y3RvCiAgICAgLy8gTXVzdCBiZSBkZWZpbmVkIGZvciBlYWNoIHNw
ZWNpYWxpemF0aW9uIGNsYXNzLgogICAgIHN0YXRpYyBKU0M6OkpTVmFsdWUgcHJvdG90eXBlRm9y
U3RydWN0dXJlKEpTQzo6Vk0mLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYpOwogCisgICAgLy8g
TXVzdCBiZSBkZWZpbmVkIGZvciBlYWNoIHNwZWNpYWxpemF0aW9uIGNsYXNzLgorICAgIHN0YXRp
YyBKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTExfQVRUUklCVVRFUyBjb25zdHJ1Y3Qo
SlNDOjpKU0dsb2JhbE9iamVjdCosIEpTQzo6Q2FsbEZyYW1lKik7CisKIHByaXZhdGU6CiAgICAg
SlNET01Db25zdHJ1Y3RvcihKU0M6OlN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9i
amVjdCYgZ2xvYmFsT2JqZWN0KQogICAgICAgICA6IEJhc2Uoc3RydWN0dXJlLCBnbG9iYWxPYmpl
Y3QpCkBAIC00Niw4ICs0OSw2IEBAIHRlbXBsYXRlPHR5cGVuYW1lIEpTQ2xhc3M+IGNsYXNzIEpT
RE9NQ29uc3RydWN0b3IgZmluYWwgOiBwdWJsaWMgSlNET01Db25zdHJ1Y3RvCiAKICAgICAvLyBV
c3VhbGx5IGRlZmluZWQgZm9yIGVhY2ggc3BlY2lhbGl6YXRpb24gY2xhc3MuCiAgICAgdm9pZCBp
bml0aWFsaXplUHJvcGVydGllcyhKU0M6OlZNJiwgSlNET01HbG9iYWxPYmplY3QmKSB7IH0KLSAg
ICAvLyBNdXN0IGJlIGRlZmluZWQgZm9yIGVhY2ggc3BlY2lhbGl6YXRpb24gY2xhc3MuCi0gICAg
c3RhdGljIEpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTF9BVFRSSUJVVEVTIGNvbnN0
cnVjdChKU0M6OkpTR2xvYmFsT2JqZWN0KiwgSlNDOjpDYWxsRnJhbWUqKTsKIH07CiAKIHRlbXBs
YXRlPHR5cGVuYW1lIEpTQ2xhc3M+IGlubGluZSBKU0RPTUNvbnN0cnVjdG9yPEpTQ2xhc3M+KiBK
U0RPTUNvbnN0cnVjdG9yPEpTQ2xhc3M+OjpjcmVhdGUoSlNDOjpWTSYgdm0sIEpTQzo6U3RydWN0
dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUxlZ2FjeUZhY3RvcnlGdW5jdGlv
bi5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01MZWdhY3lGYWN0b3J5RnVuY3Rp
b24uaAppbmRleCA3ODMxYmYyODllZjY4NDU5ZTczZjJmMzk1MDM5MWU4YjM4YzFiOTI3Li5hMjFm
MWZkOTg3NTUwZDkzMTI4MzgxYmIyZjE3NDAzOGIxODgxMDg0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUxlZ2FjeUZhY3RvcnlGdW5jdGlvbi5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NTGVnYWN5RmFjdG9yeUZ1bmN0aW9uLmgKQEAg
LTM2LDYgKzM2LDkgQEAgdGVtcGxhdGU8dHlwZW5hbWUgSlNDbGFzcz4gY2xhc3MgSlNET01MZWdh
Y3lGYWN0b3J5RnVuY3Rpb24gZmluYWwgOiBwdWJsaWMgSlNET00KICAgICAvLyBNdXN0IGJlIGRl
ZmluZWQgZm9yIGVhY2ggc3BlY2lhbGl6YXRpb24gY2xhc3MuCiAgICAgc3RhdGljIEpTQzo6SlNW
YWx1ZSBwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYsIGNvbnN0IEpTRE9NR2xvYmFsT2Jq
ZWN0Jik7CiAKKyAgICAvLyBNdXN0IGJlIGRlZmluZWQgZm9yIGVhY2ggc3BlY2lhbGl6YXRpb24g
Y2xhc3MuCisgICAgc3RhdGljIEpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTF9BVFRS
SUJVVEVTIGNvbnN0cnVjdChKU0M6OkpTR2xvYmFsT2JqZWN0KiwgSlNDOjpDYWxsRnJhbWUqKTsK
KwogcHJpdmF0ZToKICAgICBKU0RPTUxlZ2FjeUZhY3RvcnlGdW5jdGlvbihKU0M6OlN0cnVjdHVy
ZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogICAgICAgICA6
IEJhc2Uoc3RydWN0dXJlLCBnbG9iYWxPYmplY3QpCkBAIC00Nyw4ICs1MCw2IEBAIHRlbXBsYXRl
PHR5cGVuYW1lIEpTQ2xhc3M+IGNsYXNzIEpTRE9NTGVnYWN5RmFjdG9yeUZ1bmN0aW9uIGZpbmFs
IDogcHVibGljIEpTRE9NCiAKICAgICAvLyBVc3VhbGx5IGRlZmluZWQgZm9yIGVhY2ggc3BlY2lh
bGl6YXRpb24gY2xhc3MuCiAgICAgdm9pZCBpbml0aWFsaXplUHJvcGVydGllcyhKU0M6OlZNJiwg
SlNET01HbG9iYWxPYmplY3QmKSB7IH0KLSAgICAvLyBNdXN0IGJlIGRlZmluZWQgZm9yIGVhY2gg
c3BlY2lhbGl6YXRpb24gY2xhc3MuCi0gICAgc3RhdGljIEpTQzo6RW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTF9BVFRSSUJVVEVTIGNvbnN0cnVjdChKU0M6OkpTR2xvYmFsT2JqZWN0KiwgSlND
OjpDYWxsRnJhbWUqKTsKIH07CiAKIHRlbXBsYXRlPHR5cGVuYW1lIEpTQ2xhc3M+IGlubGluZSBK
U0RPTUxlZ2FjeUZhY3RvcnlGdW5jdGlvbjxKU0NsYXNzPiogSlNET01MZWdhY3lGYWN0b3J5RnVu
Y3Rpb248SlNDbGFzcz46OmNyZWF0ZShKU0M6OlZNJiB2bSwgSlNDOjpTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdENvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvU2NyaXB0Q29udHJvbGxlci5jcHAKaW5kZXggNzE2NTVlYmIzOWE5ODhm
ZTBhZmU1N2ZlMGQ1ZTc0MmE5YmIzNmUwYS4uYzc0ZWIxMGVkYTk4Mzc4ZWViMTJjOTUzMjBiNDNj
YWJiYTdkNzZmMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0
Q29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0Q29u
dHJvbGxlci5jcHAKQEAgLTU2LDYgKzU2LDcgQEAKICNpbmNsdWRlICJTY3JpcHRhYmxlRG9jdW1l
bnRQYXJzZXIuaCIKICNpbmNsdWRlICJTZXR0aW5ncy5oIgogI2luY2x1ZGUgIlVzZXJHZXN0dXJl
SW5kaWNhdG9yLmgiCisjaW5jbHVkZSAiV2ViQ29yZUpJVE9wZXJhdGlvbnMuaCIKICNpbmNsdWRl
ICJXZWJDb3JlSlNDbGllbnREYXRhLmgiCiAjaW5jbHVkZSAibnBydW50aW1lX2ltcGwuaCIKICNp
bmNsdWRlICJydW50aW1lX3Jvb3QuaCIKQEAgLTg3LDYgKzg4LDcgQEAgdm9pZCBTY3JpcHRDb250
cm9sbGVyOjppbml0aWFsaXplTWFpblRocmVhZCgpCiAjaWYgIVBMQVRGT1JNKElPU19GQU1JTFkp
CiAgICAgSlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgp
OworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogI2VuZGlmCiB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVKSVRPcGVyYXRpb25z
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVKSVRPcGVyYXRpb25zLmNw
cApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi4wNDM3ZTIyYTViODBkZWZjZGQxNDlmNmYzNDA3NjNhN2JhMjUyMDcyCi0t
LSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpJVE9w
ZXJhdGlvbnMuY3BwCkBAIC0wLDAgKzEsNTAgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAg
QXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFT
IElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVU
T1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09E
UyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNT
CisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRP
UlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YK
KyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29u
ZmlnLmgiCisjaW5jbHVkZSAiV2ViQ29yZUpJVE9wZXJhdGlvbnMuaCIKKworI2luY2x1ZGUgPEph
dmFTY3JpcHRDb3JlL0pJVE9wZXJhdGlvbkxpc3QuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgewor
CisjaWYgRU5BQkxFKEpJVF9PUEVSQVRJT05fVkFMSURBVElPTikKK2V4dGVybiBjb25zdCB1aW50
cHRyX3Qgc3RhcnRPZkhvc3RGdW5jdGlvbnNJbldlYkNvcmUgX19hc20oInNlY3Rpb24kc3RhcnQk
X19EQVRBX0NPTlNUJF9fanNjX2hvc3QiKTsKK2V4dGVybiBjb25zdCB1aW50cHRyX3QgZW5kT2ZI
b3N0RnVuY3Rpb25zSW5XZWJDb3JlIF9fYXNtKCJzZWN0aW9uJGVuZCRfX0RBVEFfQ09OU1QkX19q
c2NfaG9zdCIpOworZXh0ZXJuIGNvbnN0IHVpbnRwdHJfdCBzdGFydE9mSklUT3BlcmF0aW9uc0lu
V2ViQ29yZSBfX2FzbSgic2VjdGlvbiRzdGFydCRfX0RBVEFfQ09OU1QkX19qc2Nfb3BzIik7Citl
eHRlcm4gY29uc3QgdWludHB0cl90IGVuZE9mSklUT3BlcmF0aW9uc0luV2ViQ29yZSBfX2FzbSgi
c2VjdGlvbiRlbmQkX19EQVRBX0NPTlNUJF9fanNjX29wcyIpOworI2VuZGlmCisKK3ZvaWQgcG9w
dWxhdGVKSVRPcGVyYXRpb25zKCkKK3sKKyNpZiBFTkFCTEUoSklUX09QRVJBVElPTl9WQUxJREFU
SU9OKQorICAgIHN0YXRpYyBzdGQ6Om9uY2VfZmxhZyBvbmNlS2V5OworICAgIHN0ZDo6Y2FsbF9v
bmNlKG9uY2VLZXksIFtdIHsKKyAgICAgICAgSlNDOjpKSVRPcGVyYXRpb25MaXN0Ojpwb3B1bGF0
ZVBvaW50ZXJzSW5FbWJlZGRlcigmc3RhcnRPZkhvc3RGdW5jdGlvbnNJbldlYkNvcmUsICZlbmRP
Zkhvc3RGdW5jdGlvbnNJbldlYkNvcmUsICZzdGFydE9mSklUT3BlcmF0aW9uc0luV2ViQ29yZSwg
JmVuZE9mSklUT3BlcmF0aW9uc0luV2ViQ29yZSk7CisgICAgfSk7CisjZW5kaWYKK30KKworfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpJVE9wZXJhdGlv
bnMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVKSVRPcGVyYXRpb25zLmgK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMTkwYTg0MjQ4Mzk2YzFmNjMwMjE3Y2Q1ODQ1MWM1YjAwZWQ3ZmMzYwotLS0g
L2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVKSVRPcGVy
YXRpb25zLmgKQEAgLTAsMCArMSwzMiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMn
JworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMK
KyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAq
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICog
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCitu
YW1lc3BhY2UgV2ViQ29yZSB7CisKK1dFQkNPUkVfRVhQT1JUIHZvaWQgcG9wdWxhdGVKSVRPcGVy
YXRpb25zKCk7CisKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvQ29kZUdlbmVyYXRvckpTLnBtIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9D
b2RlR2VuZXJhdG9ySlMucG0KaW5kZXggOGU1NjMxMDhiMjRhNWNkMDc1OTgyOTNmYWUyMzNiM2Y5
NWQ2NTVkYi4uMWU1YWI1ODU1ZGU2ODdhYWRjZGNmMzhlYTdlOTExY2ZlZjlhZGEwNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0K
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0K
QEAgLTc3MTksNyArNzcxOSw3IEBAIHN1YiBHZW5lcmF0ZUNvbnN0cnVjdG9yRGVmaW5pdGlvbnMK
ICAgICAgICAgICAgIEdlbmVyYXRlT3ZlcmxvYWREaXNwYXRjaGVyKEB7JGludGVyZmFjZS0+Y29u
c3RydWN0b3JzfVswXSwgJGludGVyZmFjZSwgJG92ZXJsb2FkRnVuY3Rpb25QcmVmaXgsICIiLCAi
bGV4aWNhbEdsb2JhbE9iamVjdCwgY2FsbEZyYW1lIik7CiAKICAgICAgICAgICAgIHB1c2goQGlt
cGxDb250ZW50LCAifVxuIik7Ci0gICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIkpTQ19B
Tk5PVEFURV9IT1NUX0ZVTkNUSU9OKCR7Y2xhc3NOYW1lfUNvbnN0cnVjdG9yQ29uc3RydWN0LCAk
e2NsYXNzTmFtZX1Db25zdHJ1Y3Rvcjo6Y29uc3RydWN0KTtcblxuIik7CisgICAgICAgICAgICBw
dXNoKEBpbXBsQ29udGVudCwgIkpTQ19BTk5PVEFURV9IT1NUX0ZVTkNUSU9OKCR7Y2xhc3NOYW1l
fUNvbnN0cnVjdG9yQ29uc3RydWN0LCAke2NsYXNzTmFtZX1ET01Db25zdHJ1Y3Rvcjo6Y29uc3Ry
dWN0KTtcblxuIik7CiAgICAgICAgIH0gZWxzaWYgKEBjb25zdHJ1Y3RvcnMgPT0gMSkgewogICAg
ICAgICAgICAgR2VuZXJhdGVDb25zdHJ1Y3RvckRlZmluaXRpb24oJG91dHB1dEFycmF5LCAkY2xh
c3NOYW1lLCAkcHJvdG9DbGFzc05hbWUsICR2aXNpYmxlSW50ZXJmYWNlTmFtZSwgJGludGVyZmFj
ZSwgJGdlbmVyYXRpbmdMZWdhY3lGYWN0b3J5RnVuY3Rpb24sICRjb25zdHJ1Y3RvcnNbMF0pOwog
ICAgICAgICB9IGVsc2UgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMuY3BwIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3Rv
cnMuY3BwCmluZGV4IDgxYTY1OGEyM2IzNTNlZDg3NDNlNzIzNTcwODNlOWJiN2M4ODkzNDMuLmFk
NzQ1ZmE5NWNjYzRmYzJiMmU4ZjlkMWE4MTczN2E0NzczYTg0YWQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3Ry
dWN0b3JzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycy5jcHAKQEAgLTIwNCw3ICsyMDQsNyBAQCB0ZW1w
bGF0ZTw+IEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTExfQVRUUklCVVRFUyBKU1Rlc3RPdmVy
bG9hZGVkQ29uc3RydWN0b3JzRAogICAgIH0KICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihs
ZXhpY2FsR2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlKTsKIH0KLUpTQ19BTk5PVEFURV9IT1NUX0ZV
TkNUSU9OKEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNDb25zdHJ1Y3RvckNvbnN0cnVjdCwg
SlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc0NvbnN0cnVjdG9yOjpjb25zdHJ1Y3QpOworSlND
X0FOTk9UQVRFX0hPU1RfRlVOQ1RJT04oSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc0NvbnN0
cnVjdG9yQ29uc3RydWN0LCBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzRE9NQ29uc3RydWN0
b3I6OmNvbnN0cnVjdCk7CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RPdmVybG9hZGVkQ29u
c3RydWN0b3JzRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2
bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVk
Q29uc3RydWN0b3JzV2l0aFNlcXVlbmNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlLmNw
cAppbmRleCBkY2FiN2JkYzU5Njg5NDY4NzgwMzYwYTJiZTQxNGE0NzQwMzcyMzY4Li4yZGRkNTcz
MjVhMDVmNTgwNmNkZmE4NjA5ZmY0MTU0YjFkNmIxY2I5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9y
c1dpdGhTZXF1ZW5jZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2UuY3BwCkBAIC0x
NDMsNyArMTQzLDcgQEAgdGVtcGxhdGU8PiBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMX0FU
VFJJQlVURVMgSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1cKICAgICB9CiAgICAgcmV0dXJu
IHRocm93Vk1UeXBlRXJyb3IobGV4aWNhbEdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSk7CiB9Ci1K
U0NfQU5OT1RBVEVfSE9TVF9GVU5DVElPTihKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0
aFNlcXVlbmNlQ29uc3RydWN0b3JDb25zdHJ1Y3QsIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3Rv
cnNXaXRoU2VxdWVuY2VDb25zdHJ1Y3Rvcjo6Y29uc3RydWN0KTsKK0pTQ19BTk5PVEFURV9IT1NU
X0ZVTkNUSU9OKEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2VDb25zdHJ1
Y3RvckNvbnN0cnVjdCwgSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZURP
TUNvbnN0cnVjdG9yOjpjb25zdHJ1Y3QpOwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0T3Zl
cmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVG
b3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxP
YmplY3QpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9XZWJTY3Jp
cHRPYmplY3QubW0gYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9XZWJTY3JpcHRPYmplY3Qu
bW0KaW5kZXggYjJlNWNhNThkM2VkYjFlYTkzMzFkZDQ2ODk1MjExNzY5ZDZkYTdlYy4uM2ExMDYy
YTEzMTZhYTQ5ZTc1YmE5MmQzYjNlYjZjNzcxOWFjYmExMSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYnJpZGdlL29iamMvV2ViU2NyaXB0T2JqZWN0Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JyaWRnZS9vYmpjL1dlYlNjcmlwdE9iamVjdC5tbQpAQCAtMzUsNiArMzUsNyBAQAogI2ltcG9y
dCAiSlNIVE1MRWxlbWVudC5oIgogI2ltcG9ydCAiSlNQbHVnaW5FbGVtZW50RnVuY3Rpb25zLmgi
CiAjaW1wb3J0ICJPYmpDUnVudGltZU9iamVjdC5oIgorI2ltcG9ydCAiV2ViQ29yZUpJVE9wZXJh
dGlvbnMuaCIKICNpbXBvcnQgIldlYkNvcmVPYmpDRXh0cmFzLmgiCiAjaW1wb3J0ICJvYmpjX2lu
c3RhbmNlLmgiCiAjaW1wb3J0ICJydW50aW1lX29iamVjdC5oIgpAQCAtMTY2LDYgKzE2Nyw3IEBA
ICsgKHZvaWQpaW5pdGlhbGl6ZQogI2lmICFVU0UoV0VCX1RIUkVBRCkKICAgICBKU0M6OmluaXRp
YWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAgV2ViQ29yZTo6
cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAjZW5kaWYKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvZG9taml0L0pTRG9jdW1lbnRET01KSVQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9t
aml0L0pTRG9jdW1lbnRET01KSVQuY3BwCmluZGV4IGY4ZTg1NGZhMTY2NzVkZDU4MzliMzI1Y2Zl
MjhhY2UyZjJhNTM2MzMuLmZmMTZjNWFjMDc0NDViYzI5YjczMTk4YTI2YTBiNWE3NTc4YmZjODAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbWppdC9KU0RvY3VtZW50RE9NSklULmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9kb21qaXQvSlNEb2N1bWVudERPTUpJVC5jcHAKQEAgLTE0MCw2
ICsxNDAsOCBAQCBSZWY8SlNDOjpET01KSVQ6OkNhbGxET01HZXR0ZXJTbmlwcGV0PiBjb21waWxl
RG9jdW1lbnRCb2R5QXR0cmlidXRlKCkKICAgICByZXR1cm4gc25pcHBldDsKIH0KIAorbmFtZXNw
YWNlIERPTUpJVCB7CisKIGV4dGVybiAiQyIgewogCiBKU0NfREVGSU5FX0pJVF9PUEVSQVRJT04o
b3BlcmF0aW9uVG9KU0VsZW1lbnQsIEpTQzo6RW5jb2RlZEpTVmFsdWUsIChKU0M6OkpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIHZvaWQqIHJlc3VsdCkpCkBAIC0xOTQsNiArMTk2LDYgQEAg
SlNDX0RFRklORV9KSVRfT1BFUkFUSU9OKG9wZXJhdGlvblRvSlNDb250YWluZXJOb2RlLCBKU0M6
OkVuY29kZWRKU1ZhbHVlLCAoSlNDOjoKIAogfQogCi19Cit9IH0KIAogI2VuZGlmCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TaGFyZWRCdWZmZXJDb2NvYS5tbSBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1NoYXJlZEJ1ZmZlckNvY29hLm1tCmluZGV4
IDhmOGU1MzNlMDQwMzY2ZmMxOWM1NDhjYWY4ZDExNjJmNTA5ZWFkM2QuLjI4MTAwNTNkZTdjOTcw
Mjk4M2JkMDQzMDljZDkwZWM0ZTkxNDllMWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2NvY29hL1NoYXJlZEJ1ZmZlckNvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2NvY29hL1NoYXJlZEJ1ZmZlckNvY29hLm1tCkBAIC0yNiw2ICsyNiw3IEBACiAjaW1w
b3J0ICJjb25maWcuaCIKICNpbXBvcnQgIlNoYXJlZEJ1ZmZlci5oIgogCisjaW1wb3J0ICJXZWJD
b3JlSklUT3BlcmF0aW9ucy5oIgogI2ltcG9ydCAiV2ViQ29yZU9iakNFeHRyYXMuaCIKICNpbXBv
cnQgPEphdmFTY3JpcHRDb3JlL0luaXRpYWxpemVUaHJlYWRpbmcuaD4KICNpbXBvcnQgPHN0cmlu
Zy5oPgpAQCAtNDYsNiArNDcsNyBAQCArICh2b2lkKWluaXRpYWxpemUKICNpZiAhVVNFKFdFQl9U
SFJFQUQpCiAgICAgSlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRo
cmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogI2VuZGlmIC8v
ICFVU0UoV0VCX1RIUkVBRCkKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vaW9zL3dhay9XZWJDb3JlVGhyZWFkLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9z
L3dhay9XZWJDb3JlVGhyZWFkLm1tCmluZGV4IDYzOTRiOTdkNzhhYTEwZTU4MzU0Mzk2NWI1OTdi
ZDMwOWY5NjMwYzkuLjJmZTM1ZmRmNTAzMzUyMDEyNjk2Mjk0NzhlNWUyNzVhOTY3NGFjZTAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy93YWsvV2ViQ29yZVRocmVhZC5t
bQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3Mvd2FrL1dlYkNvcmVUaHJlYWQubW0K
QEAgLTM2LDYgKzM2LDcgQEAKICNpbXBvcnQgIlRocmVhZEdsb2JhbERhdGEuaCIKICNpbXBvcnQg
IldBS1dpbmRvdy5oIgogI2ltcG9ydCAiV0tVdGlsaXRpZXMuaCIKKyNpbXBvcnQgIldlYkNvcmVK
SVRPcGVyYXRpb25zLmgiCiAjaW1wb3J0ICJXZWJDb3JlVGhyZWFkSW50ZXJuYWwuaCIKICNpbXBv
cnQgIldlYkNvcmVUaHJlYWRNZXNzYWdlLmgiCiAjaW1wb3J0ICJXZWJDb3JlVGhyZWFkUnVuLmgi
CkBAIC02MTYsNiArNjE3LDcgQEAgc3RhdGljIHZvaWQqIFJ1bldlYlRocmVhZCh2b2lkKikKICAg
ICAvLyA8cmRhcjovL3Byb2JsZW0vODUwMjQ4Nz4uCiAgICAgV1RGOjppbml0aWFsaXplV2ViVGhy
ZWFkKCk7CiAgICAgSlNDOjppbml0aWFsaXplKCk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVKSVRP
cGVyYXRpb25zKCk7CiAgICAgCiAgICAgLy8gTWFrZSBzdXJlIHRoYXQgdGhlIFdlYlRocmVhZCBh
bmQgdGhlIG1haW4gdGhyZWFkIHNoYXJlIHRoZSBzYW1lIFRocmVhZEdsb2JhbERhdGEgb2JqZWN0
cy4KICAgICBXZWJDb3JlOjp0aHJlYWRHbG9iYWxEYXRhKCkuc2V0V2ViQ29yZVRocmVhZERhdGEo
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0FQSS9jL1dLU3RyaW5nLmNwcCBi
L1NvdXJjZS9XZWJLaXQvU2hhcmVkL0FQSS9jL1dLU3RyaW5nLmNwcAppbmRleCAyNjg1NWI0OGJh
NWFhYmZkYjI1MjhiYzAzOWE1MjBiMjBlMWVkYzJmLi4xMGM2NDhhYmZkNzA5OTRhYzg2NjVmYTE1
MDliMTc1ZmViMTczZWY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9BUEkvYy9X
S1N0cmluZy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQVBJL2MvV0tTdHJpbmcuY3Bw
CkBAIC0yOCw4ICsyOCwxMCBAQAogI2luY2x1ZGUgIldLU3RyaW5nUHJpdmF0ZS5oIgogCiAjaW5j
bHVkZSAiV0tBUElDYXN0LmgiCisjaW5jbHVkZSAiV2ViS2l0SklUT3BlcmF0aW9ucy5oIgogI2lu
Y2x1ZGUgPEphdmFTY3JpcHRDb3JlL0luaXRpYWxpemVUaHJlYWRpbmcuaD4KICNpbmNsdWRlIDxK
YXZhU2NyaXB0Q29yZS9PcGFxdWVKU1N0cmluZy5oPgorI2luY2x1ZGUgPFdlYkNvcmUvV2ViQ29y
ZUpJVE9wZXJhdGlvbnMuaD4KICNpbmNsdWRlIDx3dGYvdW5pY29kZS9VVEY4Q29udmVyc2lvbi5o
PgogCiBXS1R5cGVJRCBXS1N0cmluZ0dldFR5cGVJRCgpCkBAIC0xMzQsNSArMTM2LDcgQEAgV0tT
dHJpbmdSZWYgV0tTdHJpbmdDcmVhdGVXaXRoSlNTdHJpbmcoSlNTdHJpbmdSZWYganNTdHJpbmdS
ZWYpCiBKU1N0cmluZ1JlZiBXS1N0cmluZ0NvcHlKU1N0cmluZyhXS1N0cmluZ1JlZiBzdHJpbmdS
ZWYpCiB7CiAgICAgSlNDOjppbml0aWFsaXplKCk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVKSVRP
cGVyYXRpb25zKCk7CisgICAgV2ViS2l0Ojpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICAgICBy
ZXR1cm4gT3BhcXVlSlNTdHJpbmc6OnRyeUNyZWF0ZShXZWJLaXQ6OnRvSW1wbChzdHJpbmdSZWYp
LT5zdHJpbmcoKSkubGVha1JlZigpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFy
ZWQvQ29jb2EvV2ViS2l0MkluaXRpYWxpemVDb2NvYS5tbSBiL1NvdXJjZS9XZWJLaXQvU2hhcmVk
L0NvY29hL1dlYktpdDJJbml0aWFsaXplQ29jb2EubW0KaW5kZXggMTRkMjc5ZjU3ZmQzNGMwMDQw
Y2ZmOGQ2NjdmNTYxNmM1ZGMwYjU2Zi4uOGVmNzRkZWY0YWJiZWU5YTA4YWFiNGU1MzkyMTY5N2I0
ZGNmMjEzNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvV2ViS2l0Mklu
aXRpYWxpemVDb2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9XZWJLaXQy
SW5pdGlhbGl6ZUNvY29hLm1tCkBAIC0yNyw3ICsyNyw5IEBACiAjaW1wb3J0ICJXZWJLaXQySW5p
dGlhbGl6ZS5oIgogCiAjaW1wb3J0ICJWZXJzaW9uQ2hlY2tzLmgiCisjaW1wb3J0ICJXZWJLaXRK
SVRPcGVyYXRpb25zLmgiCiAjaW1wb3J0IDxKYXZhU2NyaXB0Q29yZS9Jbml0aWFsaXplVGhyZWFk
aW5nLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0
IDxtdXRleD4KICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+CiAjaW1wb3J0IDx3dGYvUmVmQ291
bnRlZC5oPgpAQCAtNTQsNiArNTYsOSBAQCBzdGF0aWMgdm9pZCBydW5Jbml0aWFsaXphdGlvbkNv
ZGUodm9pZCogPSBudWxscHRyKQogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKIAog
ICAgIFdURjo6UmVmQ291bnRlZEJhc2U6OmVuYWJsZVRocmVhZGluZ0NoZWNrc0dsb2JhbGx5KCk7
CisKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKKyAgICBXZWJLaXQ6OnBv
cHVsYXRlSklUT3BlcmF0aW9ucygpOwogfQogCiB2b2lkIEluaXRpYWxpemVXZWJLaXQyKCkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYktpdDJJbml0aWFsaXplLmNwcCBiL1Nv
dXJjZS9XZWJLaXQvU2hhcmVkL1dlYktpdDJJbml0aWFsaXplLmNwcAppbmRleCA0YTUzZjJjZWRh
M2FiOTg1YTcxNDQxMDFhZWY4ZmQ1ZWYwZWQ3MDNiLi42YmZiOGY2OWQ5NDE2MjgyNzEyNmExNjRk
YTZkMjhhZTI5MzgyMzhlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJLaXQy
SW5pdGlhbGl6ZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViS2l0MkluaXRpYWxp
emUuY3BwCkBAIC0yNyw4ICsyNywxMCBAQAogI2luY2x1ZGUgIldlYktpdDJJbml0aWFsaXplLmgi
CiAKICNpbmNsdWRlICJMb2dJbml0aWFsaXphdGlvbi5oIgorI2luY2x1ZGUgIldlYktpdEpJVE9w
ZXJhdGlvbnMuaCIKICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9Jbml0aWFsaXplVGhyZWFkaW5n
Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9Mb2dJbml0aWFsaXphdGlvbi5oPgorI2luY2x1ZGUgPFdl
YkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbmNsdWRlIDx3dGYvTWFpblRocmVhZC5o
PgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAjaW5jbHVkZSA8d3RmL1J1bkxvb3AuaD4K
QEAgLTQ5LDYgKzUxLDkgQEAgdm9pZCBJbml0aWFsaXplV2ViS2l0MigpCiAgICAgV2ViQ29yZTo6
aW5pdGlhbGl6ZUxvZ0NoYW5uZWxzSWZOZWNlc3NhcnkoKTsKICAgICBXZWJLaXQ6OmluaXRpYWxp
emVMb2dDaGFubmVsc0lmTmVjZXNzYXJ5KCk7CiAjZW5kaWYgLy8gIUxPR19ESVNBQkxFRCB8fCAh
UkVMRUFTRV9MT0dfRElTQUJMRUQKKworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9u
cygpOworICAgIFdlYktpdDo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiB9CiAKICNlbmRpZiAv
LyAhUExBVEZPUk0oQ09DT0EpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJL
aXRKSVRPcGVyYXRpb25zLmNwcCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYktpdEpJVE9wZXJh
dGlvbnMuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgxNzA1MmE4YTlkOGU2NWNhOGQ4NjliZTE1MTA3ZDc0NWJi
M2M0NzYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJLaXRKSVRP
cGVyYXRpb25zLmNwcApAQCAtMCwwICsxLDUwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIw
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBB
UyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJV
VE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
CisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNv
bmZpZy5oIgorI2luY2x1ZGUgIldlYktpdEpJVE9wZXJhdGlvbnMuaCIKKworI2luY2x1ZGUgPEph
dmFTY3JpcHRDb3JlL0pJVE9wZXJhdGlvbkxpc3QuaD4KKworbmFtZXNwYWNlIFdlYktpdCB7CisK
KyNpZiBFTkFCTEUoSklUX09QRVJBVElPTl9WQUxJREFUSU9OKQorZXh0ZXJuIGNvbnN0IHVpbnRw
dHJfdCBzdGFydE9mSG9zdEZ1bmN0aW9uc0luV2ViS2l0IF9fYXNtKCJzZWN0aW9uJHN0YXJ0JF9f
REFUQV9DT05TVCRfX2pzY19ob3N0Iik7CitleHRlcm4gY29uc3QgdWludHB0cl90IGVuZE9mSG9z
dEZ1bmN0aW9uc0luV2ViS2l0IF9fYXNtKCJzZWN0aW9uJGVuZCRfX0RBVEFfQ09OU1QkX19qc2Nf
aG9zdCIpOworZXh0ZXJuIGNvbnN0IHVpbnRwdHJfdCBzdGFydE9mSklUT3BlcmF0aW9uc0luV2Vi
S2l0IF9fYXNtKCJzZWN0aW9uJHN0YXJ0JF9fREFUQV9DT05TVCRfX2pzY19vcHMiKTsKK2V4dGVy
biBjb25zdCB1aW50cHRyX3QgZW5kT2ZKSVRPcGVyYXRpb25zSW5XZWJLaXQgX19hc20oInNlY3Rp
b24kZW5kJF9fREFUQV9DT05TVCRfX2pzY19vcHMiKTsKKyNlbmRpZgorCit2b2lkIHBvcHVsYXRl
SklUT3BlcmF0aW9ucygpCit7CisjaWYgRU5BQkxFKEpJVF9PUEVSQVRJT05fVkFMSURBVElPTikK
KyAgICBzdGF0aWMgc3RkOjpvbmNlX2ZsYWcgb25jZUtleTsKKyAgICBzdGQ6OmNhbGxfb25jZShv
bmNlS2V5LCBbXSB7CisgICAgICAgIEpTQzo6SklUT3BlcmF0aW9uTGlzdDo6cG9wdWxhdGVQb2lu
dGVyc0luRW1iZWRkZXIoJnN0YXJ0T2ZIb3N0RnVuY3Rpb25zSW5XZWJLaXQsICZlbmRPZkhvc3RG
dW5jdGlvbnNJbldlYktpdCwgJnN0YXJ0T2ZKSVRPcGVyYXRpb25zSW5XZWJLaXQsICZlbmRPZkpJ
VE9wZXJhdGlvbnNJbldlYktpdCk7CisgICAgfSk7CisjZW5kaWYKK30KKworfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViS2l0SklUT3BlcmF0aW9ucy5oIGIvU291cmNlL1dl
YktpdC9TaGFyZWQvV2ViS2l0SklUT3BlcmF0aW9ucy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgyN2FjMmNmYWM4
Mzg0OWIyNGZiMDNiNDExNTAyOWU0ZmZjMDQzYjMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
V2ViS2l0L1NoYXJlZC9XZWJLaXRKSVRPcGVyYXRpb25zLmgKQEAgLTAsMCArMSwzMiBAQAorLyoK
KyAqIENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKKyNwcmFnbWEgb25jZQorCituYW1lc3BhY2UgV2ViS2l0IHsKKwordm9pZCBwb3B1
bGF0ZUpJVE9wZXJhdGlvbnMoKTsKKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9Tb3Vy
Y2VzLnR4dCBiL1NvdXJjZS9XZWJLaXQvU291cmNlcy50eHQKaW5kZXggZWM0MTE2NjVhMWZlMzNi
ZTViMTY0ODE0NGZkZjkzYmRkMWQ0YWEyZS4uYmMyYzQ5NDNhZWJlNWNjYWY4Yjk0N2VkNzFhZTAz
MGY0ZjMyZDk4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9Tb3VyY2VzLnR4dAorKysgYi9T
b3VyY2UvV2ViS2l0L1NvdXJjZXMudHh0CkBAIC0xOTcsNiArMTk3LDcgQEAgU2hhcmVkL1dlYkhp
dFRlc3RSZXN1bHREYXRhLmNwcAogU2hhcmVkL1dlYkltYWdlLmNwcAogU2hhcmVkL1dlYktleWJv
YXJkRXZlbnQuY3BwIEBuby11bmlmeQogU2hhcmVkL1dlYktpdDJJbml0aWFsaXplLmNwcCBAbm8t
dW5pZnkKK1NoYXJlZC9XZWJLaXRKSVRPcGVyYXRpb25zLmNwcCBAbm8tdW5pZnkKIFNoYXJlZC9X
ZWJNZW1vcnlTYW1wbGVyLmNwcAogU2hhcmVkL1dlYk1vdXNlRXZlbnQuY3BwIEBuby11bmlmeQog
U2hhcmVkL1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYktpdC9X
ZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCA1M2I2NGY3NWVkZDQzY2U5NWY3
NjQxMzQ3ZDhhNTc4YTA2YjY0M2FlLi44MzA5OTAxYjE5MzUxY2Y5NDU3NmFjNjQ4OTc4YzI4NGY4
ZTRhNzg1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKQEAgLTE4MDEsNiArMTgwMSw3IEBACiAJCUUxRDI2QTUzMTc1OTY0RDkwMDk1QkZEMSAv
KiBXZWJDb250ZW50UHJvY2Vzcy54aWIgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEUxRDI2QTRDMTc1OTYzNEUwMDk1QkZEMSAvKiBXZWJDb250ZW50UHJv
Y2Vzcy54aWIgKi87IH07CiAJCUUxRTU1MkM1MTZBRTA2NUYwMDRFRDY1MyAvKiBTYW5kYm94SW5p
dGlhbGl6YXRpb25QYXJhbWV0ZXJzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBFMUU1NTJDMzE2QUUwNjVFMDA0RUQ2NTMgLyogU2FuZGJveEluaXRpYWxp
emF0aW9uUGFyYW1ldGVycy5oICovOyB9OwogCQlFMUVFNTNFMzExRjhDRkMwMDBDQ0JFRTQgLyog
SW5qZWN0ZWRCdW5kbGVQYWdlRWRpdG9yQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMUVFNTNEQzExRjhDRjlGMDBDQ0JFRTQgLyogSW5qZWN0
ZWRCdW5kbGVQYWdlRWRpdG9yQ2xpZW50LmggKi87IH07CisJCUUzNTgyQzJCMjUyN0Y2QUEwMEQx
Qjc5MCAvKiBXZWJLaXRKSVRPcGVyYXRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBFMzU4MkMyQTI1MjdGNjlDMDBEMUI3OTAgLyogV2ViS2l0SklU
T3BlcmF0aW9ucy5oICovOyB9OwogCQlFMzg2NkFFNTIzOTc0MDA0MDBGODhGRTkgLyogV2ViRGV2
aWNlT3JpZW50YXRpb25VcGRhdGVQcm92aWRlclByb3h5Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTM4NjZBRTQyMzk3NDAwNDAwRjg4RkU5IC8qIFdl
YkRldmljZU9yaWVudGF0aW9uVXBkYXRlUHJvdmlkZXJQcm94eS5tbSAqLzsgfTsKIAkJRTM4NjZB
RTcyMzk3NDA1MzAwRjg4RkU5IC8qIFdlYkRldmljZU9yaWVudGF0aW9uVXBkYXRlUHJvdmlkZXJQ
cm94eS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTM4
NjZBRTYyMzk3NDA1MzAwRjg4RkU5IC8qIFdlYkRldmljZU9yaWVudGF0aW9uVXBkYXRlUHJvdmlk
ZXJQcm94eS5oICovOyB9OwogCQlFMzg2NkIwODIzOTlBMkQxMDBGODhGRTkgLyogV2ViRGV2aWNl
T3JpZW50YXRpb25VcGRhdGVQcm92aWRlclByb3h5TWVzc2FnZXMuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzODY2QjA1MjM5OTk3OUMwMEY4OEZFOSAv
KiBXZWJEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3ZpZGVyUHJveHlNZXNzYWdlcy5oICovOyB9
OwpAQCAtMTgxMCw2ICsxODExLDcgQEAKIAkJRTM4QTFGQzAyM0E1NTFCRjAwRDIzNzRGIC8qIFVz
ZXJJbnRlcmZhY2VJZGlvbS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEUzOEExRkJGMjNBNTUxQkYwMEQyMzc0RiAvKiBVc2VySW50ZXJmYWNlSWRpb20u
bW0gKi87IH07CiAJCUUzOTYyOEREMjM5NjBDQzYwMDY1OEVDRCAvKiBXZWJEZXZpY2VPcmllbnRh
dGlvblVwZGF0ZVByb3ZpZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBFMzk2MjhEQjIzOTYwQ0M1MDA2NThFQ0QgLyogV2ViRGV2aWNlT3JpZW50YXRp
b25VcGRhdGVQcm92aWRlci5oICovOyB9OwogCQlFMzk2MjhERTIzOTYwQ0M2MDA2NThFQ0QgLyog
V2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92aWRlci5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMzk2MjhEQzIzOTYwQ0M2MDA2NThFQ0QgLyog
V2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92aWRlci5jcHAgKi87IH07CisJCUUzQzg0NjdD
MjUyN0Y5REUwMDU0RkQ5QyAvKiBXZWJLaXRKSVRPcGVyYXRpb25zLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzNTgyQzI5MjUyN0Y2OUIwMEQxQjc5
MCAvKiBXZWJLaXRKSVRPcGVyYXRpb25zLmNwcCAqLzsgfTsKIAkJRTNDQUFBNDQyNDEzMjc5OTAw
Q0VEMkUyIC8qIEFjY2Vzc2liaWxpdHlTdXBwb3J0U1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFM0NBQUE0MzI0MTMyNzhBMDBDRUQyRTIgLyogQWNj
ZXNzaWJpbGl0eVN1cHBvcnRTUEkuaCAqLzsgfTsKIAkJRTQxM0Y1OUQxQUMxQURDNDAwMzQ1MzYw
IC8qIE5ldHdvcmtDYWNoZUVudHJ5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBFNDEzRjU5QjFBQzFBREI2MDAzNDUzNjAgLyogTmV0d29ya0NhY2hlRW50
cnkuaCAqLzsgfTsKIAkJRTQyRTA2MTAxQUE3NTIzQjAwQjExNjk5IC8qIE5ldHdvcmtDYWNoZUlP
Q2hhbm5lbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
RTQyRTA2MEIxQUE3NDQwRDAwQjExNjk5IC8qIE5ldHdvcmtDYWNoZUlPQ2hhbm5lbC5oICovOyB9
OwpAQCAtNTI4Miw2ICs1Mjg0LDggQEAKIAkJRTFFRTUzREMxMUY4Q0Y5RjAwQ0NCRUU0IC8qIElu
amVjdGVkQnVuZGxlUGFnZUVkaXRvckNsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBJbmplY3RlZEJ1bmRsZVBhZ2VFZGl0b3JDbGllbnQuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJRTFFRTUzRTYxMUY4Q0ZGQjAwQ0NCRUU0IC8qIEluamVjdGVkQnVuZGxl
UGFnZUVkaXRvckNsaWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBJbmplY3RlZEJ1bmRsZVBhZ2VFZGl0b3JDbGllbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQlFMzQzOUI2MzIzNDU0NjNBMDAxMURFMEIgLyogTmV0d29ya1Byb2Nlc3NDb25u
ZWN0aW9uSW5mby5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb25JbmZv
Lmg7IHBhdGggPSBOZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbkluZm8uaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTM1ODJDMjkyNTI3RjY5QjAwRDFCNzkwIC8qIFdlYktp
dEpJVE9wZXJhdGlvbnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
V2ViS2l0SklUT3BlcmF0aW9ucy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUz
NTgyQzJBMjUyN0Y2OUMwMEQxQjc5MCAvKiBXZWJLaXRKSVRPcGVyYXRpb25zLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYktpdEpJVE9wZXJhdGlvbnMuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTM4NjZBRTQyMzk3NDAwNDAwRjg4RkU5IC8qIFdlYkRldmlj
ZU9yaWVudGF0aW9uVXBkYXRlUHJvdmlkZXJQcm94eS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLm9iamNwcDsgbmFtZSA9IFdlYkRldmljZU9yaWVudGF0aW9uVXBkYXRlUHJvdmlkZXJQcm94
eS5tbTsgcGF0aCA9IGlvcy9XZWJEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3ZpZGVyUHJveHku
bW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUzODY2QUU2MjM5NzQwNTMwMEY4OEZF
OSAvKiBXZWJEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3ZpZGVyUHJveHkuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gV2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92aWRl
clByb3h5Lmg7IHBhdGggPSBpb3MvV2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92aWRlclBy
b3h5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUzODY2QUVEMjM5ODQ3MUEwMEY4
OEZFOSAvKiBXZWJEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3ZpZGVyUHJveHkubWVzc2FnZXMu
aW4gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBuYW1lID0gV2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92
aWRlclByb3h5Lm1lc3NhZ2VzLmluOyBwYXRoID0gaW9zL1dlYkRldmljZU9yaWVudGF0aW9uVXBk
YXRlUHJvdmlkZXJQcm94eS5tZXNzYWdlcy5pbjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
QEAgLTYxMTYsNiArNjEyMCw4IEBACiAJCQkJQzAzMzdERDIxMjdBMkEwRTAwOEZGNEY0IC8qIFdl
YktleWJvYXJkRXZlbnQuY3BwICovLAogCQkJCUJDOUJBNTAyMTY5N0M0NTMwMEU0NDYxNiAvKiBX
ZWJLaXQySW5pdGlhbGl6ZS5jcHAgKi8sCiAJCQkJQkM5QkE1MDMxNjk3QzQ1MzAwRTQ0NjE2IC8q
IFdlYktpdDJJbml0aWFsaXplLmggKi8sCisJCQkJRTM1ODJDMjkyNTI3RjY5QjAwRDFCNzkwIC8q
IFdlYktpdEpJVE9wZXJhdGlvbnMuY3BwICovLAorCQkJCUUzNTgyQzJBMjUyN0Y2OUMwMEQxQjc5
MCAvKiBXZWJLaXRKSVRPcGVyYXRpb25zLmggKi8sCiAJCQkJOTA1NjIwRTgxMkJDMjQ4QjAwMDc5
OUI2IC8qIFdlYk1lbW9yeVNhbXBsZXIuY3BwICovLAogCQkJCTkwNTYyMEU5MTJCQzI0OEIwMDA3
OTlCNiAvKiBXZWJNZW1vcnlTYW1wbGVyLmggKi8sCiAJCQkJQzAzMzdEQUYxMjdBMjhEMDAwOEZG
NEY0IC8qIFdlYk1vdXNlRXZlbnQuY3BwICovLApAQCAtMTEyOTMsNiArMTEyOTksNyBAQAogCQkJ
CTFBNjI4MEM1MTkxOTk0OUYwMDZBRDlGOSAvKiBXZWJLaXQuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUJDQjYzNDc4MTE2QkYxMDYwMDYwMzIxNSAvKiBXZWJLaXQyX0MuaCBpbiBIZWFkZXJzICovLAog
CQkJCUJDOUJBNTA1MTY5N0M0NTMwMEU0NDYxNiAvKiBXZWJLaXQySW5pdGlhbGl6ZS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJRTM1ODJDMkIyNTI3RjZBQTAwRDFCNzkwIC8qIFdlYktpdEpJVE9wZXJh
dGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCTFBNjI4MEM3MTkxOTk1MEMwMDZBRDlGOSAvKiBX
ZWJLaXRQcml2YXRlLmggaW4gSGVhZGVycyAqLywKIAkJCQlDRDAwM0E1MzE5RDQ5QjVEMDA1QUJD
RTAgLyogV2ViTWVkaWFLZXlTdG9yYWdlTWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOUI1
QkVDMjYyNDAwRjRBOTAwNzBDNkVGIC8qIFdlYk1lZGlhU3RyYXRlZ3kuaCBpbiBIZWFkZXJzICov
LApAQCAtMTMwMjgsNiArMTMwMzUsNyBAQAogCQkJCTFBNjI4MEYzMTkxOTk4MkEwMDZBRDlGOSAv
KiBXZWJLaXQubSBpbiBTb3VyY2VzICovLAogCQkJCTJEOTJBNzhCMjEyQjZBQjEwMEY0OTNGRCAv
KiBXZWJLaXQySW5pdGlhbGl6ZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBMTgxQTc5ODIxQUND
NzRCMDA1OUEzMTYgLyogV2ViS2l0QWRkaXRpb25zLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJRTND
ODQ2N0MyNTI3RjlERTAwNTRGRDlDIC8qIFdlYktpdEpJVE9wZXJhdGlvbnMuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJNTFGMDYwRTExNjU0MzE4NTAwRjMyODJGIC8qIFdlYk1ETlNSZWdpc3Rlck1l
c3NhZ2VSZWNlaXZlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkyRDkyQTc4QzIxMkI2QUIxMDBG
NDkzRkQgLyogV2ViTW91c2VFdmVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUJBOTI0RDE0
ODgzMTI2MDA2MkVEQjUgLyogV2ViTm90aWZpY2F0aW9uTWFuYWdlck1lc3NhZ2VSZWNlaXZlci5j
cHAgaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0hp
c3RvcnkvV2ViQmFja0ZvcndhcmRMaXN0Lm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvSGlz
dG9yeS9XZWJCYWNrRm9yd2FyZExpc3QubW0KaW5kZXggZjJmMTNlYmY4ZTU1Y2UxNmI3Njc0YjU3
OGU4MGVmNjA3YzBlYzdlOC4uZDZhZjc1NWZmYTczOGI5OTNmN2Y3ODdlYzNlOGMzZjRlY2RhNzBm
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvSGlzdG9yeS9XZWJCYWNrRm9y
d2FyZExpc3QubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvSGlzdG9yeS9XZWJCYWNr
Rm9yd2FyZExpc3QubW0KQEAgLTQ0LDYgKzQ0LDcgQEAKICNpbXBvcnQgPFdlYkNvcmUvSGlzdG9y
eUl0ZW0uaD4KICNpbXBvcnQgPFdlYkNvcmUvU2V0dGluZ3MuaD4KICNpbXBvcnQgPFdlYkNvcmUv
VGhyZWFkQ2hlY2suaD4KKyNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4K
ICNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZU9iakNFeHRyYXMuaD4KICNpbXBvcnQgPHd0Zi9Bc3Nl
cnRpb25zLmg+CiAjaW1wb3J0IDx3dGYvTWFpblRocmVhZC5oPgpAQCAtMTAwLDYgKzEwMSw3IEBA
ICsgKHZvaWQpaW5pdGlhbGl6ZQogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQogICAgIEpTQzo6
aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJD
b3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZgogfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0TGVnYWN5L21hYy9IaXN0b3J5L1dlYkhpc3RvcnlJdGVtLm1tIGIvU291cmNl
L1dlYktpdExlZ2FjeS9tYWMvSGlzdG9yeS9XZWJIaXN0b3J5SXRlbS5tbQppbmRleCBmNjg4ZGM4
OWEyYmM1Zjk4NDdkZjlmYjllZTQ5ZWRkNzA1OGQ2MGQwLi44N2U2MjlmOTk0OWYxMjE0ODA0YmZl
ZDRhMDJiMTQ2NzVlN2NjYjZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9I
aXN0b3J5L1dlYkhpc3RvcnlJdGVtLm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0hp
c3RvcnkvV2ViSGlzdG9yeUl0ZW0ubW0KQEAgLTQ3LDYgKzQ3LDcgQEAKICNpbXBvcnQgPFdlYkNv
cmUvSGlzdG9yeUl0ZW0uaD4KICNpbXBvcnQgPFdlYkNvcmUvSW1hZ2UuaD4KICNpbXBvcnQgPFdl
YkNvcmUvVGhyZWFkQ2hlY2suaD4KKyNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlv
bnMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZU9iakNFeHRyYXMuaD4KICNpbXBvcnQgPHd0
Zi9Bc3NlcnRpb25zLmg+CiAjaW1wb3J0IDx3dGYvTWFpblRocmVhZC5oPgpAQCAtMTI3LDYgKzEy
OCw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQogICAg
IEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAg
ICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZgogfQogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9NaXNjL1dlYkNhY2hlLm1tIGIvU291cmNlL1dl
YktpdExlZ2FjeS9tYWMvTWlzYy9XZWJDYWNoZS5tbQppbmRleCBhYjgzMDFkZGNkMGMwNzkyNjkw
MzQ2Mjc4OGE3NDQ2MGRhMzVkNWExLi5kODE3Njk5Njc1ZWNmYmI5YzIzNjc5MzVjMjJjNTdjNzhh
NGEzNGYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9NaXNjL1dlYkNhY2hl
Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL01pc2MvV2ViQ2FjaGUubW0KQEAgLTQw
LDYgKzQwLDcgQEAKICNpbXBvcnQgPFdlYkNvcmUvTWVtb3J5Q2FjaGUuaD4KICNpbXBvcnQgPFdl
YkNvcmUvTmV0d29ya1N0b3JhZ2VTZXNzaW9uLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1N0b3JhZ2VT
ZXNzaW9uUHJvdmlkZXIuaD4KKyNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMu
aD4KICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+CiAjaW1wb3J0IDx3dGYvUnVuTG9vcC5oPgog
CkBAIC02NSw2ICs2Niw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogI2lmICFQTEFURk9STShJT1Nf
RkFNSUxZKQogICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5U
aHJlYWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZgog
fQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9NaXNjL1dlYkVsZW1lbnRE
aWN0aW9uYXJ5Lm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvTWlzYy9XZWJFbGVtZW50RGlj
dGlvbmFyeS5tbQppbmRleCA5OTgyOTA1ZTJiYTMzZWQzODI4YmI3NDg3NDE5Nzc5M2Y0NGJmYjQy
Li4xZmI1MThmODc0YjgzZTY0YWZlNWZmNDk4ZDFlZjUxY2UzMTg1ZmM4IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0TGVnYWN5L21hYy9NaXNjL1dlYkVsZW1lbnREaWN0aW9uYXJ5Lm1tCisrKyBi
L1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL01pc2MvV2ViRWxlbWVudERpY3Rpb25hcnkubW0KQEAg
LTQxLDYgKzQxLDcgQEAKICNpbXBvcnQgPFdlYkNvcmUvRnJhbWUuaD4KICNpbXBvcnQgPFdlYkNv
cmUvSGl0VGVzdFJlc3VsdC5oPgogI2ltcG9ydCA8V2ViQ29yZS9JbWFnZS5oPgorI2ltcG9ydCA8
V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0aW9ucy5oPgogI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3Jl
T2JqQ0V4dHJhcy5oPgogI2ltcG9ydCA8V2ViS2l0TGVnYWN5L0RPTUNvcmUuaD4KICNpbXBvcnQg
PFdlYktpdExlZ2FjeS9ET01FeHRlbnNpb25zLmg+CkBAIC02OSw2ICs3MCw3IEBAICsgKHZvaWQp
aW5pdGlhbGl6ZQogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQogICAgIEpTQzo6aW5pdGlhbGl6
ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1
bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZgogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0TGVnYWN5L21hYy9NaXNjL1dlYkljb25EYXRhYmFzZS5tbSBiL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvbWFjL01pc2MvV2ViSWNvbkRhdGFiYXNlLm1tCmluZGV4IDRjMWRjYjI0M2VkM2Y0YTFiMzFi
OTk4YWRmZDcyZGNmZmFkNTRiZDAuLjlhMWIyY2I2Yzc5NzBlNmE4ODE2NTg5OGYyOWQzMDBkNmIz
MGExMWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL01pc2MvV2ViSWNvbkRh
dGFiYXNlLm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL01pc2MvV2ViSWNvbkRhdGFi
YXNlLm1tCkBAIC0zNCw2ICszNCw3IEBACiAjaW1wb3J0IDxKYXZhU2NyaXB0Q29yZS9Jbml0aWFs
aXplVGhyZWFkaW5nLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0ltYWdlLmg+CiAjaW1wb3J0IDxXZWJD
b3JlL1RocmVhZENoZWNrLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25z
Lmg+CiAjaW1wb3J0IDx3dGYvTWFpblRocmVhZC5oPgogI2ltcG9ydCA8d3RmL05ldmVyRGVzdHJv
eWVkLmg+CiAjaW1wb3J0IDx3dGYvUnVuTG9vcC5oPgpAQCAtOTksNiArMTAwLDcgQEAgKyAodm9p
ZClpbml0aWFsaXplCiB7CiAgICAgSlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFs
aXplTWFpblRocmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwog
fQogCiArIChXZWJJY29uRGF0YWJhc2UgKilzaGFyZWRJY29uRGF0YWJhc2UKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL01pc2MvV2ViU3RyaW5nVHJ1bmNhdG9yLm1tIGIvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvTWlzYy9XZWJTdHJpbmdUcnVuY2F0b3IubW0KaW5kZXggOTlk
NzljMTk2NzUyNDA5MjAyMjM1NjdiNzVjOTBjYzU1NjgxMGI5NC4uOThlY2FhOTQzNTY0NmY2MGVh
ZjE1YzM0NTE1NjhjOTIwNzA2M2UxMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9t
YWMvTWlzYy9XZWJTdHJpbmdUcnVuY2F0b3IubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9t
YWMvTWlzYy9XZWJTdHJpbmdUcnVuY2F0b3IubW0KQEAgLTMyLDYgKzMyLDcgQEAKICNpbXBvcnQg
PFdlYkNvcmUvRm9udENhc2NhZGUuaD4KICNpbXBvcnQgPFdlYkNvcmUvRm9udFBsYXRmb3JtRGF0
YS5oPgogI2ltcG9ydCA8V2ViQ29yZS9TdHJpbmdUcnVuY2F0b3IuaD4KKyNpbXBvcnQgPFdlYkNv
cmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+CiAj
aW1wb3J0IDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KIApAQCAtNTIsNiArNTMsNyBAQCArICh2b2lk
KWluaXRpYWxpemUKIHsKICAgICBKU0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxp
emVNYWluVGhyZWFkKCk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiB9
CiAKICsgKE5TU3RyaW5nICopY2VudGVyVHJ1bmNhdGVTdHJpbmc6KE5TU3RyaW5nICopc3RyaW5n
IHRvV2lkdGg6KGZsb2F0KW1heFdpZHRoCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5
L21hYy9QbHVnaW5zL0hvc3RlZC9XZWJIb3N0ZWROZXRzY2FwZVBsdWdpblZpZXcubW0gYi9Tb3Vy
Y2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL0hvc3RlZC9XZWJIb3N0ZWROZXRzY2FwZVBsdWdp
blZpZXcubW0KaW5kZXggNDc2YTU1ZWRhMTZlMzRjNGVkYTYyYzRmOWI2MDlmMzMwZTYyMWRlZC4u
NzYxMTcxY2VhN2NhNWZhNjcyOGM5ZGMwMGQyZWI3YjJkMThmNzc4MCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9Ib3N0ZWQvV2ViSG9zdGVkTmV0c2NhcGVQbHVn
aW5WaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvSG9zdGVkL1dl
Ykhvc3RlZE5ldHNjYXBlUGx1Z2luVmlldy5tbQpAQCAtNDcsNiArNDcsNyBAQAogI2ltcG9ydCA8
V2ViQ29yZS9SZW5kZXJFbWJlZGRlZE9iamVjdC5oPgogI2ltcG9ydCA8V2ViQ29yZS9SZXNvdXJj
ZUVycm9yLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVDQUxheWVyRXh0cmFzLmg+CisjaW1w
b3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0IDxXZWJDb3JlL3J1
bnRpbWVfcm9vdC5oPgogI2ltcG9ydCA8cGFsL3NwaS9jb2NvYS9RdWFydHpDb3JlU1BJLmg+CiAj
aW1wb3J0IDx3dGYvQXNzZXJ0aW9ucy5oPgpAQCAtMTA3LDYgKzEwOCw3IEBAICsgKHZvaWQpaW5p
dGlhbGl6ZQogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQogICAgIEpTQzo6aW5pdGlhbGl6ZSgp
OwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0
ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZgogICAgIHNlbmRVc2VyQ2hhbmdlTm90aWZpY2F0aW9u
cygpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9XZWJC
YXNlTmV0c2NhcGVQbHVnaW5WaWV3Lm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lu
cy9XZWJCYXNlTmV0c2NhcGVQbHVnaW5WaWV3Lm1tCmluZGV4IDdlYzQwYzk5N2FkMDU1NjQxMTFm
Nzg2MTRhNjczM2I5ZDQwMTIxOGQuLjJkZGE3YjYzOTNjZWNjZGM5YzgxMmM2MzgzOTE4OGQ2YTQz
NWQxNDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvV2ViQmFz
ZU5ldHNjYXBlUGx1Z2luVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVn
aW5zL1dlYkJhc2VOZXRzY2FwZVBsdWdpblZpZXcubW0KQEAgLTU0LDYgKzU0LDcgQEAKICNpbXBv
cnQgPFdlYkNvcmUvUmVuZGVyRW1iZWRkZWRPYmplY3QuaD4KICNpbXBvcnQgPFdlYkNvcmUvUmVu
ZGVyVmlldy5oPgogI2ltcG9ydCA8V2ViQ29yZS9TZWN1cml0eU9yaWdpbi5oPgorI2ltcG9ydCA8
V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0aW9ucy5oPgogI2ltcG9ydCA8V2ViS2l0TGVnYWN5L0RP
TVByaXZhdGUuaD4KICNpbXBvcnQgPHBhbC9zcGkvY2cvQ29yZUdyYXBoaWNzU1BJLmg+CiAjaW1w
b3J0IDx3dGYvQXNzZXJ0aW9ucy5oPgpAQCAtNzIsNiArNzMsNyBAQCArICh2b2lkKWluaXRpYWxp
emUKIHsKICAgICBKU0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhy
ZWFkKCk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAgICAgV2ViS2l0
OjpzZW5kVXNlckNoYW5nZU5vdGlmaWNhdGlvbnMoKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9XZWJCYXNlUGx1Z2luUGFja2FnZS5tbSBiL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvV2ViQmFzZVBsdWdpblBhY2thZ2UubW0KaW5kZXgg
YWRlN2JhMjdhN2Y3ZjdkMzNhNGMxZjhlZDY4YzM3MDExMjc4MDBiYS4uZmNlM2NmOGQyZDhkMDY3
ZTZmMTM1OTExNDgyN2I0ZTZlZjIzODdmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2Fj
eS9tYWMvUGx1Z2lucy9XZWJCYXNlUGx1Z2luUGFja2FnZS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0
TGVnYWN5L21hYy9QbHVnaW5zL1dlYkJhc2VQbHVnaW5QYWNrYWdlLm1tCkBAIC0zNCw2ICszNCw3
IEBACiAjaW1wb3J0ICJXZWJQbHVnaW5QYWNrYWdlLmgiCiAjaW1wb3J0ICJXZWJUeXBlc0ludGVy
bmFsLmgiCiAjaW1wb3J0IDxKYXZhU2NyaXB0Q29yZS9Jbml0aWFsaXplVGhyZWFkaW5nLmg+Cisj
aW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0IDxhbGdvcml0
aG0+CiAjaW1wb3J0IDxtYWNoLW8vYXJjaC5oPgogI2ltcG9ydCA8bWFjaC1vL2ZhdC5oPgpAQCAt
NjEsNiArNjIsNyBAQCArICh2b2lkKWluaXRpYWxpemUKICNpZiAhUExBVEZPUk0oSU9TX0ZBTUlM
WSkKICAgICBKU0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFk
KCk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAjZW5kaWYKIH0KIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9XZWJOZXRzY2FwZVBs
dWdpblZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL1dlYk5ldHNjYXBl
UGx1Z2luVmlldy5tbQppbmRleCAyY2FlZTJmMzE4MTU3YzFlMzI3M2YwMTYwZTk3YzYyMGJlZmY2
ZTVkLi5hYmRlODYxY2ZmMDI3NzViMDFkNWNmYjY1MTIyZTU4NDEyMjIxNDAzIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL1dlYk5ldHNjYXBlUGx1Z2luVmlldy5t
bQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL1dlYk5ldHNjYXBlUGx1Z2lu
Vmlldy5tbQpAQCAtNjgsNiArNjgsNyBAQAogI2ltcG9ydCA8V2ViQ29yZS9TY3JpcHRDb250cm9s
bGVyLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1NlY3VyaXR5T3JpZ2luLmg+CiAjaW1wb3J0IDxXZWJD
b3JlL1VzZXJHZXN0dXJlSW5kaWNhdG9yLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRP
cGVyYXRpb25zLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVVUkxSZXNwb25zZS5oPgogI2lt
cG9ydCA8V2ViQ29yZS9ucHJ1bnRpbWVfaW1wbC5oPgogI2ltcG9ydCA8V2ViQ29yZS9ydW50aW1l
X3Jvb3QuaD4KQEAgLTE2NCw2ICsxNjUsNyBAQCArICh2b2lkKWluaXRpYWxpemUKIHsKICAgICBK
U0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAg
V2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAgICAgc2VuZFVzZXJDaGFuZ2VOb3Rp
ZmljYXRpb25zKCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dl
YkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFj
L1dlYkNvcmVTdXBwb3J0L1dlYkVkaXRvckNsaWVudC5tbQppbmRleCAyOGNhMWI5YWJiZTY0NmQ5
ZTA0MGE1NjE2N2JmYjAzZGJjYmEzODE3Li5hZjFhYjI2OTBjNjQ3ZTY1MDM5YTAwZTRiNjExMDk2
NjAzZjRkYmZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3Vw
cG9ydC9XZWJFZGl0b3JDbGllbnQubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2Vi
Q29yZVN1cHBvcnQvV2ViRWRpdG9yQ2xpZW50Lm1tCkBAIC03OCw2ICs3OCw3IEBACiAjaW1wb3J0
IDxXZWJDb3JlL1VzZXJUeXBpbmdHZXN0dXJlSW5kaWNhdG9yLmg+CiAjaW1wb3J0IDxXZWJDb3Jl
L1Zpc2libGVVbml0cy5oPgogI2ltcG9ydCA8V2ViQ29yZS9XZWJDb250ZW50UmVhZGVyLmg+Cisj
aW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0IDxXZWJDb3Jl
L1dlYkNvcmVPYmpDRXh0cmFzLmg+CiAjaW1wb3J0IDxwYWwvc3BpL2NvY29hL05TQXR0cmlidXRl
ZFN0cmluZ1NQSS5oPgogI2ltcG9ydCA8cGFsL3NwaS9tYWMvTlNTcGVsbENoZWNrZXJTUEkuaD4K
QEAgLTE0MCw2ICsxNDEsNyBAQCArICh2b2lkKWluaXRpYWxpemUKICNpZiAhUExBVEZPUk0oSU9T
X0ZBTUlMWSkKICAgICBKU0M6OmluaXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWlu
VGhyZWFkKCk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAjZW5kaWYK
IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQv
V2ViRnJhbWVMb2FkZXJDbGllbnQubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3Jl
U3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5tbQppbmRleCBmNzBjODMwZjM0NDUxYTA0Mzdk
ZmVmNDFlOTlmM2MwODRmODVkNTRlLi42YzdiOGU2ZGJjZWZjMTdkNjhkZGVkMzNlYzMzMTE2YzBl
ZWFkODJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9y
dC9XZWJGcmFtZUxvYWRlckNsaWVudC5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9X
ZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5tbQpAQCAtMTE4LDYgKzExOCw3IEBA
CiAjaW1wb3J0IDxXZWJDb3JlL1NjcmlwdENvbnRyb2xsZXIuaD4KICNpbXBvcnQgPFdlYkNvcmUv
U2hhcmVkQnVmZmVyLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1N1YnJlc291cmNlTG9hZGVyLmg+Cisj
aW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0IDxXZWJDb3Jl
L1dlYkNvcmVPYmpDRXh0cmFzLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkdMQmxvY2tsaXN0Lmg+
CiAjaW1wb3J0IDxXZWJDb3JlL1dlYlNjcmlwdE9iamVjdFByaXZhdGUuaD4KQEAgLTIzNDYsNiAr
MjM0Nyw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQog
ICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsK
KyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZgogfQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkFyY2hpdmUubW0gYi9T
b3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkFyY2hpdmUubW0KaW5kZXggYjIzN2M5
ODVkZDE4MmI0NDA0NjdkYTVjMGFmOTg0MGFlYzk4ZTBiYi4uMjU5YzdlOWVhNmQ1MWJmMGM3NDY5
OTdkZmJkYTc5N2MxZWIwODhhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMv
V2ViVmlldy9XZWJBcmNoaXZlLm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZp
ZXcvV2ViQXJjaGl2ZS5tbQpAQCAtMzcsNiArMzcsNyBAQAogI2ltcG9ydCA8V2ViQ29yZS9BcmNo
aXZlUmVzb3VyY2UuaD4KICNpbXBvcnQgPFdlYkNvcmUvTGVnYWN5V2ViQXJjaGl2ZS5oPgogI2lt
cG9ydCA8V2ViQ29yZS9UaHJlYWRDaGVjay5oPgorI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlSklU
T3BlcmF0aW9ucy5oPgogI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlT2JqQ0V4dHJhcy5oPgogI2lt
cG9ydCA8d3RmL01haW5UaHJlYWQuaD4KICNpbXBvcnQgPHd0Zi9SdW5Mb29wLmg+CkBAIC03MSw2
ICs3Miw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQog
ICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsK
KyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZgogfQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkRhdGFTb3VyY2UubW0g
Yi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkRhdGFTb3VyY2UubW0KaW5kZXgg
ZDc3NzI2NDhjNDhkOWZhZWEyNzZkZmEyNjVjYTZhMGIwNTYyMmNkYy4uMWI1OTcxNjQ2ODUzYTZk
MTZiYTYyODZlMGNhM2ZiM2ZiZGYxM2Y0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2Fj
eS9tYWMvV2ViVmlldy9XZWJEYXRhU291cmNlLm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL1dlYlZpZXcvV2ViRGF0YVNvdXJjZS5tbQpAQCAtNTUsNiArNTUsNyBAQAogI2ltcG9ydCA8
V2ViQ29yZS9NSU1FVHlwZVJlZ2lzdHJ5Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1Jlc291cmNlUmVx
dWVzdC5oPgogI2ltcG9ydCA8V2ViQ29yZS9TaGFyZWRCdWZmZXIuaD4KKyNpbXBvcnQgPFdlYkNv
cmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZU9iakNF
eHRyYXMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZVVSTFJlc3BvbnNlLmg+CiAjaW1wb3J0
IDxXZWJLaXRMZWdhY3kvRE9NSFRNTC5oPgpAQCAtMTU1LDYgKzE1Niw3IEBAICsgKHZvaWQpaW5p
dGlhbGl6ZQogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQogICAgICAgICBKU0M6OmluaXRpYWxp
emUoKTsKICAgICAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOworICAgICAgICBXZWJD
b3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZgogICAgIH0KIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViSFRNTFZpZXcubW0gYi9Tb3Vy
Y2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkhUTUxWaWV3Lm1tCmluZGV4IDU1ODVmMGMy
YmY4MzM1MDYwYTI2OGNkNjk2Y2EzNDFlYzBjMWEyYjIuLmVlNjQ4MWYzODYwYTdhN2I1MWExMTA3
OGU0MzM4ZDcwNWNmZGFiNjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dl
YlZpZXcvV2ViSFRNTFZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmll
dy9XZWJIVE1MVmlldy5tbQpAQCAtMTI3LDYgKzEyNyw3IEBACiAjaW1wb3J0IDxXZWJDb3JlL1Rl
eHRBbHRlcm5hdGl2ZVdpdGhSYW5nZS5oPgogI2ltcG9ydCA8V2ViQ29yZS9UZXh0SW5kaWNhdG9y
Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1RleHRVbmRvSW5zZXJ0aW9uTWFya3VwTWFjLmg+CisjaW1w
b3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dl
YkNvcmVOU0ZvbnRNYW5hZ2VyRXh0cmFzLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVPYmpD
RXh0cmFzLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYk5TQXR0cmlidXRlZFN0cmluZ0V4dHJhcy5o
PgpAQCAtMTAzMyw2ICsxMDM0LDcgQEAgKyAodm9pZClpbml0aWFsaXplCiAKICAgICBKU0M6Omlu
aXRpYWxpemUoKTsKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAgV2ViQ29y
ZTo6cG9wdWxhdGVKSVRPcGVyYXRpb25zKCk7CiAKICAgICBpZiAoIW9sZFNldEN1cnNvckZvck1v
dXNlTG9jYXRpb25JTVApIHsKICAgICAgICAgTWV0aG9kIHNldEN1cnNvck1ldGhvZCA9IGNsYXNz
X2dldEluc3RhbmNlTWV0aG9kKFtOU1dpbmRvdyBjbGFzc10sIEBzZWxlY3Rvcihfc2V0Q3Vyc29y
Rm9yTW91c2VMb2NhdGlvbjopKTsKQEAgLTI1NjgsNiArMjU3MCw3IEBAICsgKHZvaWQpaW5pdGlh
bGl6ZQogCiAgICAgSlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRo
cmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogfQogCiAjZW5k
aWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViUHJlZmVy
ZW5jZXMubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2Vz
Lm1tCmluZGV4IDYwM2YwYTcyYjM4MGIzNmE5YThkMGNlMzY3MDU4NjkwZmQwYjI3YTIuLjMxNDcw
NTIwZGM0MmJmNTg0ZjQ3MzkwMjYyNGZmYmFlOTcwOTU4NTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW0KKysrIGIvU291cmNlL1dl
YktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlcy5tbQpAQCAtNDgsNiArNDgsNyBA
QAogI2ltcG9ydCA8V2ViQ29yZS9SdW50aW1lQXBwbGljYXRpb25DaGVja3MuaD4KICNpbXBvcnQg
PFdlYkNvcmUvU2V0dGluZ3MuaD4KICNpbXBvcnQgPFdlYkNvcmUvVGV4dEVuY29kaW5nUmVnaXN0
cnkuaD4KKyNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZUpJVE9wZXJhdGlvbnMuaD4KICNpbXBvcnQg
PHBhbC9zcGkvY2YvQ0ZOZXR3b3JrU1BJLmg+CiAjaW1wb3J0IDx3dGYvTWFpblRocmVhZC5oPgog
I2ltcG9ydCA8d3RmL1JldGFpblB0ci5oPgpAQCAtMzc2LDYgKzM3Nyw3IEBAICsgKHZvaWQpaW5p
dGlhbGl6ZQogI2lmIFBMQVRGT1JNKE1BQykKICAgICBKU0M6OmluaXRpYWxpemUoKTsKICAgICBX
VEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CisgICAgV2ViQ29yZTo6cG9wdWxhdGVKSVRPcGVy
YXRpb25zKCk7CiAjZW5kaWYKIAogICAgIE5TRGljdGlvbmFyeSAqZGljdCA9IFtOU0RpY3Rpb25h
cnkgZGljdGlvbmFyeVdpdGhPYmplY3RzQW5kS2V5czoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViUmVzb3VyY2UubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5
L21hYy9XZWJWaWV3L1dlYlJlc291cmNlLm1tCmluZGV4IDQ0N2UyYTFhOTkyMjM4NzA4MjNhZDI3
MDI5OWExNzAyNDc3MjA2ZmIuLmVmMTA5ODZkYTg3NTNhYjMxMDllMGFmMTYyMWIzMDEyZjRlOWU2
YTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViUmVzb3Vy
Y2UubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJSZXNvdXJjZS5t
bQpAQCAtNDAsNiArNDAsNyBAQAogI2ltcG9ydCA8V2ViQ29yZS9SdW50aW1lQXBwbGljYXRpb25D
aGVja3MuaD4KICNpbXBvcnQgPFdlYkNvcmUvVGV4dEVuY29kaW5nLmg+CiAjaW1wb3J0IDxXZWJD
b3JlL1RocmVhZENoZWNrLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25z
Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVPYmpDRXh0cmFzLmg+CiAjaW1wb3J0IDxXZWJD
b3JlL1dlYkNvcmVVUkxSZXNwb25zZS5oPgogI2ltcG9ydCA8d3RmL01haW5UaHJlYWQuaD4KQEAg
LTY5LDYgKzcwLDcgQEAgKyAodm9pZClpbml0aWFsaXplCiAjaWYgIVBMQVRGT1JNKElPU19GQU1J
TFkpCiAgICAgSlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVh
ZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogI2VuZGlmCiB9CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVGV4dEl0ZXJh
dG9yLm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJUZXh0SXRlcmF0b3Iu
bW0KaW5kZXggZDNhZDkxOGRhN2VlM2Y2ZjU4ZjQwOTAzYzdlMTdkNmE2NmUzODdhMS4uYWJhNzFh
ZjI1NDMxOTVmNTY1MGI3MWUwNzU0MmYzYzcxMTQ3YWE3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJUZXh0SXRlcmF0b3IubW0KKysrIGIvU291cmNlL1dl
YktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJUZXh0SXRlcmF0b3IubW0KQEAgLTMxLDYgKzMxLDcg
QEAKICNpbXBvcnQgPEphdmFTY3JpcHRDb3JlL0luaXRpYWxpemVUaHJlYWRpbmcuaD4KICNpbXBv
cnQgPFdlYkNvcmUvUmFuZ2UuaD4KICNpbXBvcnQgPFdlYkNvcmUvVGV4dEl0ZXJhdG9yLmg+Cisj
aW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRpb25zLmg+CiAjaW1wb3J0IDx3dGYvTWFp
blRocmVhZC5oPgogI2ltcG9ydCA8d3RmL1J1bkxvb3AuaD4KICNpbXBvcnQgPHd0Zi9WZWN0b3Iu
aD4KQEAgLTQ5LDYgKzUwLDcgQEAgKyAodm9pZClpbml0aWFsaXplCiAjaWYgIVBMQVRGT1JNKElP
U19GQU1JTFkpCiAgICAgSlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFsaXplTWFp
blRocmVhZCgpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogI2VuZGlm
CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmll
dy5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQppbmRleCA2
MjM1ZDJjMWVkNmE2MDVjNmRiMzIxMGJhZTAxMGMwYWUyYjE1ODA0Li5jODFhNjY0ZDI2OTE0NTBj
MjI5MTc2ODJkM2Q0N2E2NjhkN2ZmZjQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5
L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2Vi
Vmlldy9XZWJWaWV3Lm1tCkBAIC0yMjEsNiArMjIxLDcgQEAKICNpbXBvcnQgPFdlYkNvcmUvVXNl
clNjcmlwdC5oPgogI2ltcG9ydCA8V2ViQ29yZS9Vc2VyU3R5bGVTaGVldC5oPgogI2ltcG9ydCA8
V2ViQ29yZS9WYWxpZGF0aW9uQnViYmxlLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRP
cGVyYXRpb25zLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVPYmpDRXh0cmFzLmg+CiAjaW1w
b3J0IDxXZWJDb3JlL1dlYkNvcmVWaWV3Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYlZpZXdWaXN1
YWxJZGVudGlmaWNhdGlvbk92ZXJsYXkuaD4KQEAgLTUyNDQsNiArNTI0NSw3IEBAICsgKHZvaWQp
aW5pdGlhbGl6ZQogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQogICAgIEpTQzo6aW5pdGlhbGl6
ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1
bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNlbmRpZgogCiAgICAgV1RGOjpSZWZDb3VudGVkQmFzZTo6
ZW5hYmxlVGhyZWFkaW5nQ2hlY2tzR2xvYmFsbHkoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlld0RhdGEubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5
L21hYy9XZWJWaWV3L1dlYlZpZXdEYXRhLm1tCmluZGV4IGZjZTRhNjY0NjZkOGZmYjY0YjYyMTI1
OTAzMDFlYjI0M2JhODk0NjYuLjRkZDM5ZDY2ZGU0MmU0OWZhZGFkNGFlYzc4OGIxNGQyZmRkMWU1
ZGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlld0Rh
dGEubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3RGF0YS5t
bQpAQCAtNDAsNiArNDAsNyBAQAogI2ltcG9ydCA8V2ViQ29yZS9SdW5Mb29wT2JzZXJ2ZXIuaD4K
ICNpbXBvcnQgPFdlYkNvcmUvVGV4dEluZGljYXRvcldpbmRvdy5oPgogI2ltcG9ydCA8V2ViQ29y
ZS9WYWxpZGF0aW9uQnViYmxlLmg+CisjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVKSVRPcGVyYXRp
b25zLmg+CiAjaW1wb3J0IDx3dGYvTWFpblRocmVhZC5oPgogI2ltcG9ydCA8d3RmL1J1bkxvb3Au
aD4KIApAQCAtMTY5LDYgKzE3MCw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogI2lmICFQTEFURk9S
TShJT1NfRkFNSUxZKQogICAgIEpTQzo6aW5pdGlhbGl6ZSgpOwogICAgIFdURjo6aW5pdGlhbGl6
ZU1haW5UaHJlYWQoKTsKKyAgICBXZWJDb3JlOjpwb3B1bGF0ZUpJVE9wZXJhdGlvbnMoKTsKICNl
bmRpZgogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9XZWJLaXRDbGFz
c0ZhY3RvcnkuY3BwIGIvU291cmNlL1dlYktpdExlZ2FjeS93aW4vV2ViS2l0Q2xhc3NGYWN0b3J5
LmNwcAppbmRleCAwYTlhYzExY2QyNjZlODk5ZGUzZWM5YzkwMzEzY2ZhN2NiYmU0NjgwLi5jZTg2
MjBmZDRiZDc3YzdlZWY4ZGI4ZDc0NjQzZjk1MmEzYWYxYTU2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0TGVnYWN5L3dpbi9XZWJLaXRDbGFzc0ZhY3RvcnkuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXRMZWdhY3kvd2luL1dlYktpdENsYXNzRmFjdG9yeS5jcHAKQEAgLTU2LDYgKzU2LDcgQEAKICNp
bmNsdWRlICJXZWJWaWV3LmgiCiAjaW5jbHVkZSAiV2ViV29ya2Vyc1ByaXZhdGUuaCIKICNpbmNs
dWRlIDxKYXZhU2NyaXB0Q29yZS9Jbml0aWFsaXplVGhyZWFkaW5nLmg+CisjaW5jbHVkZSA8V2Vi
Q29yZS9XZWJDb3JlSklUT3BlcmF0aW9ucy5oPgogI2luY2x1ZGUgPHd0Zi9NYWluVGhyZWFkLmg+
CiAjaW5jbHVkZSA8d3RmL1NvZnRMaW5raW5nLmg+CiAKQEAgLTY1LDYgKzY2LDcgQEAgV2ViS2l0
Q2xhc3NGYWN0b3J5OjpXZWJLaXRDbGFzc0ZhY3RvcnkoQ0xTSUQgdGFyZ2V0Q2xhc3MpCiB7CiAg
ICAgSlNDOjppbml0aWFsaXplKCk7CiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOwor
ICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0aW9ucygpOwogCiAgICAgZ0NsYXNzQ291bnQr
KzsKICAgICBnQ2xhc3NOYW1lQ291bnQoKS5hZGQoIldlYktpdENsYXNzRmFjdG9yeSIpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS93aW4vV2ViVmlldy5jcHAgYi9Tb3VyY2UvV2Vi
S2l0TGVnYWN5L3dpbi9XZWJWaWV3LmNwcAppbmRleCA5M2FiM2FmZmEwNTM4ZWI1M2U0YWRmNGU2
ZTZlOThiMjFhZWMyM2IzLi5jYjM4YzI0ZTk5MmYxMGI3YTQ4OWY3MzJlNDU5ZmFmYjdhNmFkZDE2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9XZWJWaWV3LmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9XZWJWaWV3LmNwcApAQCAtMTY3LDYgKzE2Nyw3IEBACiAj
aW5jbHVkZSA8V2ViQ29yZS9Vc2VyQ29udGVudENvbnRyb2xsZXIuaD4KICNpbmNsdWRlIDxXZWJD
b3JlL1VzZXJTY3JpcHQuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1VzZXJTdHlsZVNoZWV0Lmg+Cisj
aW5jbHVkZSA8V2ViQ29yZS9XZWJDb3JlSklUT3BlcmF0aW9ucy5oPgogI2luY2x1ZGUgPFdlYkNv
cmUvV2ViQ29yZVRleHRSZW5kZXJlci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvV2luZG93TWVzc2Fn
ZUJyb2FkY2FzdGVyLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9XaW5kb3dzVG91Y2guaD4KQEAgLTQy
Myw2ICs0MjQsNyBAQCBXZWJWaWV3OjpXZWJWaWV3KCkKICAgICBKU0M6OmluaXRpYWxpemUoKTsK
ICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7CiAgICAgV1RGOjpzZXRQcm9jZXNzUHJp
dmlsZWdlcyhhbGxQcml2aWxlZ2VzKCkpOworICAgIFdlYkNvcmU6OnBvcHVsYXRlSklUT3BlcmF0
aW9ucygpOwogICAgIFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6cGVybWl0UHJvY2Vz
c1RvVXNlQ29va2llQVBJKHRydWUpOwogCiAgICAgbV9iYWNraW5nU3RvcmVTaXplLmN4ID0gbV9i
YWNraW5nU3RvcmVTaXplLmN5ID0gMDsK
</data>

          </attachment>
      

    </bug>

</bugzilla>