<?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>100711</bug_id>
          
          <creation_ts>2012-10-29 16:48:56 -0700</creation_ts>
          <short_desc>ENABLE(UNDO_MANAGER) is disabled everywhere and is not under active development</short_desc>
          <delta_ts>2012-12-06 04:17:44 -0800</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>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>77562</blocked>
    
    <blocked>87189</blocked>
    
    <blocked>89722</blocked>
    
    <blocked>94868</blocked>
    
    <blocked>99041</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Barth">abarth</reporter>
          <assigned_to name="Adam Barth">abarth</assigned_to>
          <cc>abecsi</cc>
    
    <cc>arv</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>dbates</cc>
    
    <cc>enrica</cc>
    
    <cc>eric</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>haraken</cc>
    
    <cc>japhet</cc>
    
    <cc>jim</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>mifenton</cc>
    
    <cc>ojan</cc>
    
    <cc>rakuco</cc>
    
    <cc>rniwa</cc>
    
    <cc>vestbo</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>zan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>753869</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-10-29 16:48:56 -0700</bug_when>
    <thetext>ENABLE(UNDO_MANAGER) is disabled everywhere and is not under active development</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>753874</commentid>
    <comment_count>1</comment_count>
      <attachid>171337</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-10-29 16:51:17 -0700</bug_when>
    <thetext>Created attachment 171337
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>756553</commentid>
    <comment_count>2</comment_count>
      <attachid>171337</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-11-01 12:51:59 -0700</bug_when>
    <thetext>Comment on attachment 171337
Patch

I&apos;ve not heard objections.  I&apos;ve blocked all the open UndoManager bugs on this one.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>757428</commentid>
    <comment_count>3</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-11-02 12:01:14 -0700</bug_when>
    <thetext>Committed r133326: &lt;http://trac.webkit.org/changeset/133326&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>758778</commentid>
    <comment_count>4</comment_count>
    <who name="Jim Nelson">jim</who>
    <bug_when>2012-11-05 12:20:09 -0800</bug_when>
    <thetext>I believe this also blocks #88595.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>782425</commentid>
    <comment_count>5</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2012-12-04 02:55:15 -0800</bug_when>
    <thetext>Layout tests for the undo manager functionality are still located in the tree. Should they be removed as well?
http://trac.webkit.org/browser/trunk/LayoutTests/editing/undomanager</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>782552</commentid>
    <comment_count>6</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-12-04 08:11:10 -0800</bug_when>
    <thetext>Yes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>784842</commentid>
    <comment_count>7</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2012-12-06 04:17:44 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; Yes.

Handled in bug #104246.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>171337</attachid>
            <date>2012-10-29 16:51:17 -0700</date>
            <delta_ts>2012-11-01 12:51:59 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-100711-20121029164943.patch</filename>
            <type>text/plain</type>
            <size>131497</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMyODUyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAy
NTIzY2UyZTU4MzFkMWI4Y2I1YWYxNDU4ZDY2MTdlYjlkM2JiZGQ5Li4xYWE5MDI4OTkwYzNmZTBl
OWU4OWUwOTVlZDdhOWFlM2VjNWQ1Zjc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMiBAQAorMjAxMi0xMC0yOSAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgor
CisgICAgICAgIEVOQUJMRShVTkRPX01BTkFHRVIpIGlzIGRpc2FibGVkIGV2ZXJ5d2hlcmUgYW5k
IGlzIG5vdCB1bmRlciBhY3RpdmUgZGV2ZWxvcG1lbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMDcxMQorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgICogQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMu
eGNjb25maWc6CisKIDIwMTItMTAtMjkgIEVucmljYSBDYXN1Y2NpICA8ZW5yaWNhQGFwcGxlLmNv
bT4KIAogICAgICAgICBBZGQgRU5BQkxFX1VTRVJTRUxFQ1RfQUxMIGZlYXR1cmUgZmxhZy4KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwppbmRleCBlYTNhYjQ3ZTEyOTRjMzdkMDU2MmM1NDE3MmQ0ZGNmYWRmODIyMmMzLi4zZWUy
MDQxZGEzZWM5ZWFjMTc0ZjFkNzQ5MjdjYjNiODdkMDk3Y2E5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsNzcgQEAKKzIwMTItMTAtMjkgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KKwor
ICAgICAgICBFTkFCTEUoVU5ET19NQU5BR0VSKSBpcyBkaXNhYmxlZCBldmVyeXdoZXJlIGFuZCBp
cyBub3QgdW5kZXIgYWN0aXZlIGRldmVsb3BtZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDA3MTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBObyBvbmUgaXMgYWN0aXZlbHkgd29ya2luZyBvbiBFTkFC
TEUoVU5ET19NQU5BR0VSKS4gVGhlcmUgYXJlIHNvbWUKKyAgICAgICAgdHJpY2t5IGxpZmV0aW1l
IGlzc3VlcyBpbiB0aGUgVW5kb01hbmFnZXIgQVBJIHRoYXQgYXJlIGNvbXBsaWNhdGluZworICAg
ICAgICBvbmdvaW5nIHdvcmsgdG8gaW1wcm92ZSB0aGUgaW50ZXJhY3Rpb24gYmV0d2VlbiBXZWJD
b3JlIGFuZCB0aGUgZ2FyYmFnZQorICAgICAgICBjb2xsZWN0b3IuIFJhdGhlciB0aGFuIGxlYXZl
IHRoaXMgY29kZSBpbiBhIGJyb2tlbiBzdGF0ZSwgd2Ugc2hvdWxkCisgICAgICAgIHJlbW92ZSBp
dCBmb3IgdGhlIHRpbWUgYmVpbmcuIFdlIGNhbiBhbHdheXMgcmVzdG9yZSBpdCBmcm9tIHRoZSBz
dm4KKyAgICAgICAgaGlzdG9yeSB3aGVuIHRoZXJlIGlzIGFuIGFjdGl2ZSBvd25lciBmb3IgdGhp
cyBjb2RlLgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisgICAgICAgICogQ29uZmlndXJh
dGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWc6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMu
Y3BwOgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogRGVyaXZlZFNv
dXJjZXMucHJpOgorICAgICAgICAqIEdOVW1ha2VmaWxlLmZlYXR1cmVzLmFtOgorICAgICAgICAq
IEdOVW1ha2VmaWxlLmxpc3QuYW06CisgICAgICAgICogVGFyZ2V0LnByaToKKyAgICAgICAgKiBV
c2VKU0MuY21ha2U6CisgICAgICAgICogVXNlVjguY21ha2U6CisgICAgICAgICogV2ViQ29yZS5n
eXBpOgorICAgICAgICAqIFdlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qOgorICAgICAgICAq
IFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBiaW5kaW5ncy9q
cy9ET01UcmFuc2FjdGlvbi5jcHA6IFJlbW92ZWQuCisgICAgICAgICogYmluZGluZ3MvanMvRE9N
VHJhbnNhY3Rpb24uaDogUmVtb3ZlZC4KKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0JpbmRpbmdz
QWxsSW5PbmUuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTVW5kb01hbmFnZXJDdXN0b20u
Y3BwOiBSZW1vdmVkLgorICAgICAgICAqIGJpbmRpbmdzL3Y4L0RPTVRyYW5zYWN0aW9uLmNwcDog
UmVtb3ZlZC4KKyAgICAgICAgKiBiaW5kaW5ncy92OC9ET01UcmFuc2FjdGlvbi5oOiBSZW1vdmVk
LgorICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4SGlkZGVuUHJvcGVydHlOYW1lLmg6CisgICAgICAg
IChXZWJDb3JlKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9jdXN0b20vVjhET01UcmFuc2FjdGlv
bkN1c3RvbS5jcHA6IFJlbW92ZWQuCisgICAgICAgICogYmluZGluZ3MvdjgvY3VzdG9tL1Y4VW5k
b01hbmFnZXJDdXN0b20uY3BwOiBSZW1vdmVkLgorICAgICAgICAqIGNzcy9Qcm9wZXJ0eVNldENT
U1N0eWxlRGVjbGFyYXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6UHJvcGVydHlTZXRDU1NT
dHlsZURlY2xhcmF0aW9uOjpzZXRDc3NUZXh0KToKKyAgICAgICAgKFdlYkNvcmU6OlByb3BlcnR5
U2V0Q1NTU3R5bGVEZWNsYXJhdGlvbjo6c2V0UHJvcGVydHkpOgorICAgICAgICAoV2ViQ29yZTo6
UHJvcGVydHlTZXRDU1NTdHlsZURlY2xhcmF0aW9uOjpyZW1vdmVQcm9wZXJ0eSk6CisgICAgICAg
IChXZWJDb3JlOjpQcm9wZXJ0eVNldENTU1N0eWxlRGVjbGFyYXRpb246OnNldFByb3BlcnR5SW50
ZXJuYWwpOgorICAgICAgICAqIGRvbS9DaGFyYWN0ZXJEYXRhLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkNoYXJhY3RlckRhdGE6OnNldERhdGFBbmRVcGRhdGUpOgorICAgICAgICAqIGRvbS9Db250
YWluZXJOb2RlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OndpbGxSZW1vdmVDaGlsZCk6CisgICAg
ICAgIChXZWJDb3JlOjp3aWxsUmVtb3ZlQ2hpbGRyZW4pOgorICAgICAgICAoV2ViQ29yZTo6dXBk
YXRlVHJlZUFmdGVySW5zZXJ0aW9uKToKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OkRvY3VtZW50KToKKyAgICAgICAgKiBkb20vRG9jdW1l
bnQuaDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoRG9jdW1lbnQpOgorICAgICAgICAq
IGRvbS9Eb2N1bWVudC5pZGw6CisgICAgICAgICogZG9tL0VsZW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6RWxlbWVudDo6d2lsbE1vZGlmeUF0dHJpYnV0ZSk6CisgICAgICAgICogZWRpdGlu
Zy9Db21wb3NpdGVFZGl0Q29tbWFuZC5oOgorICAgICAgICAqIGVkaXRpbmcvRE9NVHJhbnNhY3Rp
b24uaWRsOiBSZW1vdmVkLgorICAgICAgICAqIGVkaXRpbmcvRE9NVHJhbnNhY3Rpb25TdGVwLmNw
cDogUmVtb3ZlZC4KKyAgICAgICAgKiBlZGl0aW5nL0RPTVRyYW5zYWN0aW9uU3RlcC5oOiBSZW1v
dmVkLgorICAgICAgICAqIGVkaXRpbmcvRWRpdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkVk
aXRvcjo6YXBwbGllZEVkaXRpbmcpOgorICAgICAgICAoV2ViQ29yZTo6RWRpdG9yOjp1bmFwcGxp
ZWRFZGl0aW5nKToKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRvcjo6cmVhcHBsaWVkRWRpdGluZyk6
CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OmNhblVuZG8pOgorICAgICAgICAoV2ViQ29yZTo6
RWRpdG9yOjp1bmRvKToKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRvcjo6Y2FuUmVkbyk6CisgICAg
ICAgIChXZWJDb3JlOjpFZGl0b3I6OnJlZG8pOgorICAgICAgICAqIGVkaXRpbmcvVW5kb01hbmFn
ZXIuY3BwOiBSZW1vdmVkLgorICAgICAgICAqIGVkaXRpbmcvVW5kb01hbmFnZXIuaDogUmVtb3Zl
ZC4KKyAgICAgICAgKiBlZGl0aW5nL1VuZG9NYW5hZ2VyLmlkbDogUmVtb3ZlZC4KKyAgICAgICAg
KiBlZGl0aW5nL1VuZG9TdGVwLmg6CisgICAgICAgIChVbmRvU3RlcCk6CisKIDIwMTItMTAtMjkg
IERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNvbT4KIAogICAgICAgICA8cmRhcjovL3Byb2Js
ZW0vMTI1OTI3MTY+IFJFR1JFU1NJT04gKHIxMzI1NDUpOiBXaXRoIGZ1bGwtcGFnZSBhY2NlbGVy
YXRlZCBkcmF3aW5nLCBhCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cg
Yi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKaW5kZXggM2M0ZmMyODc1ZTljM2YzYjQ5YmU4
YmE4ODRmZjM2MmVjMmNiMjQ0Ni4uMWRiNzBhNWU3MTE2OWFiMGM3YjEwNjM3NzM0NDZjYzc2ZGNl
ZjBkOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDEyLTEwLTI5ICBBZGFt
IEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CisKKyAgICAgICAgRU5BQkxFKFVORE9fTUFOQUdF
UikgaXMgZGlzYWJsZWQgZXZlcnl3aGVyZSBhbmQgaXMgbm90IHVuZGVyIGFjdGl2ZSBkZXZlbG9w
bWVudAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAw
NzExCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBD
b25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZzoKKwogMjAxMi0xMC0yOSAgRW5y
aWNhIENhc3VjY2kgIDxlbnJpY2FAYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBFTkFCTEVfVVNF
UlNFTEVDVF9BTEwgZmVhdHVyZSBmbGFnLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ2hh
bmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IDUyMGEwZTI3MzM0NmFjN2Ey
ZmIyNjYwYWViZmM5MTFhOGUyMjZjYjQuLjRlZGE1YzExOTQyMjg5NWY5MzNhMTk3NzE4MzgwNzZk
MjBkNTlkNmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMiBAQAorMjAxMi0xMC0yOSAgQWRhbSBC
YXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgorCisgICAgICAgIEVOQUJMRShVTkRPX01BTkFHRVIp
IGlzIGRpc2FibGVkIGV2ZXJ5d2hlcmUgYW5kIGlzIG5vdCB1bmRlciBhY3RpdmUgZGV2ZWxvcG1l
bnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMDcx
MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogQ29u
ZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWc6CisKIDIwMTItMTAtMjkgIE1pY2hh
ZWwgU2Fib2ZmICA8bXNhYm9mZkBhcHBsZS5jb20+CiAKICAgICAgICAgYnVpbGRIVFRQSGVhZGVy
cygpIHNob3VsZCB1c2UgYSBTdHJpbmdCdWlsZGVyLmFwcGVuZExpdGVyYWwoKSBmb3Igc2VwYXJh
dG9yCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ29uZmlndXJhdGlvbnMvRmVh
dHVyZURlZmluZXMueGNjb25maWcgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ29uZmlndXJhdGlv
bnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKaW5kZXggYzdmOGRmODNiNGNlNTNlZmRkMzM1Mzlm
MjBlMDZiYzc1NmZhMzM5OC4uMjAzZTRiYjE2NDczMjZhNjgwNmYyZTM0NzE4OTEyNDYzZmY2MmVj
OSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1
cmVEZWZpbmVzLnhjY29uZmlnCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9Db25maWd1cmF0
aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwpAQCAtMTM4LDcgKzEzOCw2IEBAIEVOQUJMRV9T
VkdfRk9OVFMgPSBFTkFCTEVfU1ZHX0ZPTlRTOwogRU5BQkxFX1RFWFRfQVVUT1NJWklORyA9IDsK
IEVOQUJMRV9URVhUX05PVElGSUNBVElPTlNfT05MWSA9IEVOQUJMRV9URVhUX05PVElGSUNBVElP
TlNfT05MWTsKIEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcgPSA7Ci1FTkFCTEVfVU5ET19NQU5B
R0VSID0gOwogRU5BQkxFX1VTRVJTRUxFQ1RfQUxMID0gRU5BQkxFX1VTRVJTRUxFQ1RfQUxMOwog
RU5BQkxFX1ZJREVPID0gRU5BQkxFX1ZJREVPOwogRU5BQkxFX1ZJREVPX1RSQUNLID0gJChFTkFC
TEVfVklERU9fVFJBQ0tfJChQTEFURk9STV9OQU1FKSk7CkBAIC0xNTEsNCArMTUwLDQgQEAgRU5B
QkxFX1dPUktFUlMgPSBFTkFCTEVfV09SS0VSUzsKIEVOQUJMRV9YSFJfVElNRU9VVCA9IEVOQUJM
RV9YSFJfVElNRU9VVDsKIEVOQUJMRV9YU0xUID0gRU5BQkxFX1hTTFQ7CiAKLUZFQVRVUkVfREVG
SU5FUyA9ICQoRU5BQkxFXzNEX1JFTkRFUklORykgJChFTkFCTEVfQUNDRUxFUkFURURfMkRfQ0FO
VkFTKSAkKEVOQUJMRV9BTklNQVRJT05fQVBJKSAkKEVOQUJMRV9CTE9CKSAkKEVOQUJMRV9DSEFO
TkVMX01FU1NBR0lORykgJChFTkFCTEVfQ1NQX05FWFQpICQoRU5BQkxFX0NTU19CT1hfREVDT1JB
VElPTl9CUkVBSykgJChFTkFCTEVfQ1NTX0RFVklDRV9BREFQVEFUSU9OKSAkKEVOQUJMRV9DU1Nf
RVhDTFVTSU9OUykgJChFTkFCTEVfQ1NTX0ZJTFRFUlMpICQoRU5BQkxFX0NTU19ISUVSQVJDSElF
UykgJChFTkFCTEVfQ1NTX0lNQUdFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9DU1NfSU1BR0VfUkVT
T0xVVElPTikgJChFTkFCTEVfQ1NTX1JFR0lPTlMpICQoRU5BQkxFX0NTU19TSEFERVJTKSAkKEVO
QUJMRV9DU1NfQ09NUE9TSVRJTkcpICQoRU5BQkxFX0NTU19TVElDS1lfUE9TSVRJT04pICQoRU5B
QkxFX0NTU19WQVJJQUJMRVMpICQoRU5BQkxFX0NTUzNfQ09ORElUSU9OQUxfUlVMRVMpICQoRU5B
QkxFX0NTUzNfVEVYVCkgJChFTkFCTEVfQ1VTVE9NX1NDSEVNRV9IQU5ETEVSKSAkKEVOQUJMRV9E
QVNIQk9BUkRfU1VQUE9SVCkgJChFTkFCTEVfREFUQUxJU1RfRUxFTUVOVCkgJChFTkFCTEVfREFU
QV9UUkFOU0ZFUl9JVEVNUykgJChFTkFCTEVfREVUQUlMU19FTEVNRU5UKSAkKEVOQUJMRV9ERVZJ
Q0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0RJQUxPR19FTEVNRU5UKSAkKEVOQUJMRV9ESVJFQ1RP
UllfVVBMT0FEKSAkKEVOQUJMRV9EUkFHR0FCTEVfUkVHSU9OKSAkKEVOQUJMRV9FTkNSWVBURURf
TUVESUEpICQoRU5BQkxFX0ZJTEVfU1lTVEVNKSAkKEVOQUJMRV9GSUxURVJTKSAkKEVOQUJMRV9G
VUxMU0NSRUVOX0FQSSkgJChFTkFCTEVfR0FNRVBBRCkgJChFTkFCTEVfR0VPTE9DQVRJT04pICQo
RU5BQkxFX0hJRERFTl9QQUdFX0RPTV9USU1FUl9USFJPVFRMSU5HKSAkKEVOQUJMRV9ISUdIX0RQ
SV9DQU5WQVMpICQoRU5BQkxFX0lDT05EQVRBQkFTRSkgJChFTkFCTEVfSUZSQU1FX1NFQU1MRVNT
KSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKSAkKEVOQUJMRV9JTlBVVF9TUEVFQ0gpICQoRU5B
QkxFX0lOUFVUX1RZUEVfQ09MT1IpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURSkgJChFTkFCTEVf
SU5QVVRfVFlQRV9EQVRFVElNRSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRUxPQ0FMKSAk
KEVOQUJMRV9JTlBVVF9UWVBFX01PTlRIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1RJTUUpICQoRU5B
QkxFX0lOUFVUX1RZUEVfV0VFSykgJChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUikgJChFTkFC
TEVfTEVHQUNZX0NTU19WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xFR0FDWV9OT1RJRklDQVRJ
T05TKSAkKEVOQUJMRV9MRUdBQ1lfVkVORE9SX1BSRUZJWEVTKSAkKEVOQUJMRV9MRUdBQ1lfV0VC
X0FVRElPKSAkKEVOQUJMRV9MSU5LX1BSRUZFVENIKSAkKEVOQUJMRV9MSU5LX1BSRVJFTkRFUikg
JChFTkFCTEVfTUFUSE1MKSAkKEVOQUJMRV9NRURJQV9TT1VSQ0UpICQoRU5BQkxFX01FRElBX1NU
QVRJU1RJQ1MpICQoRU5BQkxFX01FVEVSX0VMRU1FTlQpICQoRU5BQkxFX01IVE1MKSAkKEVOQUJM
RV9NSUNST0RBVEEpICQoRU5BQkxFX01VVEFUSU9OX09CU0VSVkVSUykgJChFTkFCTEVfTkFWSUdB
VE9SX0NPTlRFTlRfVVRJTFMpICQoRU5BQkxFX05PVElGSUNBVElPTlMpICQoRU5BQkxFX1BBR0Vf
VklTSUJJTElUWV9BUEkpICQoRU5BQkxFX1BST0dSRVNTX0VMRU1FTlQpICQoRU5BQkxFX1FVT1RB
KSAkKEVOQUJMRV9SRVFVRVNUX0FOSU1BVElPTl9GUkFNRSkgJChFTkFCTEVfU0NSSVBURURfU1BF
RUNIKSAkKEVOQUJMRV9TSEFET1dfRE9NKSAkKEVOQUJMRV9TSEFSRURfV09SS0VSUykgJChFTkFC
TEVfU1FMX0RBVEFCQVNFKSAkKEVOQUJMRV9TVFlMRV9TQ09QRUQpICQoRU5BQkxFX1NWRykgJChF
TkFCTEVfU1ZHX0RPTV9PQkpDX0JJTkRJTkdTKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxF
X1RFWFRfQVVUT1NJWklORykgJChFTkFCTEVfVEVYVF9OT1RJRklDQVRJT05TX09OTFkpICQoRU5B
QkxFX1RPVUNIX0lDT05fTE9BRElORykgJChFTkFCTEVfVU5ET19NQU5BR0VSKSAkKEVOQUJMRV9V
U0VSU0VMRUNUX0FMTCkgJChFTkFCTEVfVklERU8pICQoRU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVO
QUJMRV9XRUJHTCkgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChF
TkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV09SS0VSUykgJChFTkFCTEVfWEhSX1RJTUVPVVQp
ICQoRU5BQkxFX1hTTFQpOworRkVBVFVSRV9ERUZJTkVTID0gJChFTkFCTEVfM0RfUkVOREVSSU5H
KSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF8yRF9DQU5WQVMpICQoRU5BQkxFX0FOSU1BVElPTl9BUEkp
ICQoRU5BQkxFX0JMT0IpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKSAkKEVOQUJMRV9DU1Bf
TkVYVCkgJChFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFLKSAkKEVOQUJMRV9DU1NfREVW
SUNFX0FEQVBUQVRJT04pICQoRU5BQkxFX0NTU19FWENMVVNJT05TKSAkKEVOQUJMRV9DU1NfRklM
VEVSUykgJChFTkFCTEVfQ1NTX0hJRVJBUkNISUVTKSAkKEVOQUJMRV9DU1NfSU1BR0VfT1JJRU5U
QVRJT04pICQoRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVUSU9OKSAkKEVOQUJMRV9DU1NfUkVHSU9O
UykgJChFTkFCTEVfQ1NTX1NIQURFUlMpICQoRU5BQkxFX0NTU19DT01QT1NJVElORykgJChFTkFC
TEVfQ1NTX1NUSUNLWV9QT1NJVElPTikgJChFTkFCTEVfQ1NTX1ZBUklBQkxFUykgJChFTkFCTEVf
Q1NTM19DT05ESVRJT05BTF9SVUxFUykgJChFTkFCTEVfQ1NTM19URVhUKSAkKEVOQUJMRV9DVVNU
T01fU0NIRU1FX0hBTkRMRVIpICQoRU5BQkxFX0RBU0hCT0FSRF9TVVBQT1JUKSAkKEVOQUJMRV9E
QVRBTElTVF9FTEVNRU5UKSAkKEVOQUJMRV9EQVRBX1RSQU5TRkVSX0lURU1TKSAkKEVOQUJMRV9E
RVRBSUxTX0VMRU1FTlQpICQoRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTikgJChFTkFCTEVfRElB
TE9HX0VMRU1FTlQpICQoRU5BQkxFX0RJUkVDVE9SWV9VUExPQUQpICQoRU5BQkxFX0RSQUdHQUJM
RV9SRUdJT04pICQoRU5BQkxFX0VOQ1JZUFRFRF9NRURJQSkgJChFTkFCTEVfRklMRV9TWVNURU0p
ICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZVTExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1F
UEFEKSAkKEVOQUJMRV9HRU9MT0NBVElPTikgJChFTkFCTEVfSElEREVOX1BBR0VfRE9NX1RJTUVS
X1RIUk9UVExJTkcpICQoRU5BQkxFX0hJR0hfRFBJX0NBTlZBUykgJChFTkFCTEVfSUNPTkRBVEFC
QVNFKSAkKEVOQUJMRV9JRlJBTUVfU0VBTUxFU1MpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0Up
ICQoRU5BQkxFX0lOUFVUX1NQRUVDSCkgJChFTkFCTEVfSU5QVVRfVFlQRV9DT0xPUikgJChFTkFC
TEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FKSAkKEVOQUJM
RV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpICQoRU5BQkxFX0lOUFVUX1RZUEVfTU9OVEgpICQo
RU5BQkxFX0lOUFVUX1RZUEVfVElNRSkgJChFTkFCTEVfSU5QVVRfVFlQRV9XRUVLKSAkKEVOQUJM
RV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAkKEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhF
UykgJChFTkFCTEVfTEVHQUNZX05PVElGSUNBVElPTlMpICQoRU5BQkxFX0xFR0FDWV9WRU5ET1Jf
UFJFRklYRVMpICQoRU5BQkxFX0xFR0FDWV9XRUJfQVVESU8pICQoRU5BQkxFX0xJTktfUFJFRkVU
Q0gpICQoRU5BQkxFX0xJTktfUFJFUkVOREVSKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX01F
RElBX1NPVVJDRSkgJChFTkFCTEVfTUVESUFfU1RBVElTVElDUykgJChFTkFCTEVfTUVURVJfRUxF
TUVOVCkgJChFTkFCTEVfTUhUTUwpICQoRU5BQkxFX01JQ1JPREFUQSkgJChFTkFCTEVfTVVUQVRJ
T05fT0JTRVJWRVJTKSAkKEVOQUJMRV9OQVZJR0FUT1JfQ09OVEVOVF9VVElMUykgJChFTkFCTEVf
Tk9USUZJQ0FUSU9OUykgJChFTkFCTEVfUEFHRV9WSVNJQklMSVRZX0FQSSkgJChFTkFCTEVfUFJP
R1JFU1NfRUxFTUVOVCkgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxFX1JFUVVFU1RfQU5JTUFUSU9O
X0ZSQU1FKSAkKEVOQUJMRV9TQ1JJUFRFRF9TUEVFQ0gpICQoRU5BQkxFX1NIQURPV19ET00pICQo
RU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TUUxfREFUQUJBU0UpICQoRU5BQkxFX1NU
WUxFX1NDT1BFRCkgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRE9NX09CSkNfQklORElOR1Mp
ICQoRU5BQkxFX1NWR19GT05UUykgJChFTkFCTEVfVEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9U
RVhUX05PVElGSUNBVElPTlNfT05MWSkgJChFTkFCTEVfVE9VQ0hfSUNPTl9MT0FESU5HKSAkKEVO
QUJMRV9VU0VSU0VMRUNUX0FMTCkgJChFTkFCTEVfVklERU8pICQoRU5BQkxFX1ZJREVPX1RSQUNL
KSAkKEVOQUJMRV9XRUJHTCkgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfU09DS0VU
UykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV09SS0VSUykgJChFTkFCTEVfWEhSX1RJ
TUVPVVQpICQoRU5BQkxFX1hTTFQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VM
aXN0cy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCBmOGFlOWJkZTA5
YjJhYzU2N2EzZThjNjk3YTNmMmRkMzdkZDZlYjRiLi4zM2M3YjgxYmQ5ODdiMmQ1ZWJlOTExZDJk
YWVmZmFhYjBmZTE3ZTI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4
dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApAQCAtNDA2LDkgKzQwNiw2IEBA
IFNFVChXZWJDb3JlX0lETF9GSUxFUwogICAgIGRvbS9XZWJLaXRUcmFuc2l0aW9uRXZlbnQuaWRs
CiAgICAgZG9tL1doZWVsRXZlbnQuaWRsCiAKLSAgICBlZGl0aW5nL0RPTVRyYW5zYWN0aW9uLmlk
bAotICAgIGVkaXRpbmcvVW5kb01hbmFnZXIuaWRsCi0KICAgICBmaWxlYXBpL0Jsb2IuaWRsCiAg
ICAgZmlsZWFwaS9GaWxlLmlkbAogICAgIGZpbGVhcGkvRmlsZUVycm9yLmlkbApAQCAtMTI1Myw3
ICsxMjUwLDYgQEAgU0VUKFdlYkNvcmVfU09VUkNFUwogICAgIGVkaXRpbmcvQnJlYWtCbG9ja3F1
b3RlQ29tbWFuZC5jcHAKICAgICBlZGl0aW5nL0NvbXBvc2l0ZUVkaXRDb21tYW5kLmNwcAogICAg
IGVkaXRpbmcvQ3JlYXRlTGlua0NvbW1hbmQuY3BwCi0gICAgZWRpdGluZy9ET01UcmFuc2FjdGlv
blN0ZXAuY3BwCiAgICAgZWRpdGluZy9EZWxldGVCdXR0b24uY3BwCiAgICAgZWRpdGluZy9EZWxl
dGVCdXR0b25Db250cm9sbGVyLmNwcAogICAgIGVkaXRpbmcvRGVsZXRlRnJvbVRleHROb2RlQ29t
bWFuZC5jcHAKQEAgLTEyOTgsNyArMTI5NCw2IEBAIFNFVChXZWJDb3JlX1NPVVJDRVMKICAgICBl
ZGl0aW5nL1RleHRJbnNlcnRpb25CYXNlQ29tbWFuZC5jcHAKICAgICBlZGl0aW5nL1RleHRJdGVy
YXRvci5jcHAKICAgICBlZGl0aW5nL1R5cGluZ0NvbW1hbmQuY3BwCi0gICAgZWRpdGluZy9VbmRv
TWFuYWdlci5jcHAKICAgICBlZGl0aW5nL1VubGlua0NvbW1hbmQuY3BwCiAgICAgZWRpdGluZy9W
aXNpYmxlUG9zaXRpb24uY3BwCiAgICAgZWRpdGluZy9WaXNpYmxlU2VsZWN0aW9uLmNwcApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNj
b25maWcgYi9Tb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2Nv
bmZpZwppbmRleCA5Y2YyYTU0MzFmYzNjMDkyYTBiNjdjZGRkYzA1NzM1YzE4ODEyNzcwLi4wMTg4
NzkxYzM2NTAyNWI2MWZmZTQ2ODI5NTAwZTMzOGZkMmQzNDRmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZworKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwpAQCAtMTM5
LDcgKzEzOSw2IEBAIEVOQUJMRV9TVkdfRk9OVFMgPSBFTkFCTEVfU1ZHX0ZPTlRTOwogRU5BQkxF
X1RFWFRfQVVUT1NJWklORyA9IDsKIEVOQUJMRV9URVhUX05PVElGSUNBVElPTlNfT05MWSA9IEVO
QUJMRV9URVhUX05PVElGSUNBVElPTlNfT05MWTsKIEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcg
PSA7Ci1FTkFCTEVfVU5ET19NQU5BR0VSID0gOwogRU5BQkxFX1VTRVJTRUxFQ1RfQUxMID0gRU5B
QkxFX1VTRVJTRUxFQ1RfQUxMOwogRU5BQkxFX1ZJREVPID0gRU5BQkxFX1ZJREVPOwogRU5BQkxF
X1ZJREVPX1RSQUNLID0gJChFTkFCTEVfVklERU9fVFJBQ0tfJChQTEFURk9STV9OQU1FKSk7CkBA
IC0xNTIsNCArMTUxLDQgQEAgRU5BQkxFX1dPUktFUlMgPSBFTkFCTEVfV09SS0VSUzsKIEVOQUJM
RV9YSFJfVElNRU9VVCA9IEVOQUJMRV9YSFJfVElNRU9VVDsKIEVOQUJMRV9YU0xUID0gRU5BQkxF
X1hTTFQ7CiAKLUZFQVRVUkVfREVGSU5FUyA9ICQoRU5BQkxFXzNEX1JFTkRFUklORykgJChFTkFC
TEVfQUNDRUxFUkFURURfMkRfQ0FOVkFTKSAkKEVOQUJMRV9BTklNQVRJT05fQVBJKSAkKEVOQUJM
RV9CTE9CKSAkKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORykgJChFTkFCTEVfQ1NQX05FWFQpICQo
RU5BQkxFX0NTU19CT1hfREVDT1JBVElPTl9CUkVBSykgJChFTkFCTEVfQ1NTX0RFVklDRV9BREFQ
VEFUSU9OKSAkKEVOQUJMRV9DU1NfRVhDTFVTSU9OUykgJChFTkFCTEVfQ1NTX0ZJTFRFUlMpICQo
RU5BQkxFX0NTU19ISUVSQVJDSElFUykgJChFTkFCTEVfQ1NTX0lNQUdFX09SSUVOVEFUSU9OKSAk
KEVOQUJMRV9DU1NfSU1BR0VfUkVTT0xVVElPTikgJChFTkFCTEVfQ1NTX1JFR0lPTlMpICQoRU5B
QkxFX0NTU19TSEFERVJTKSAkKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcpICQoRU5BQkxFX0NTU19T
VElDS1lfUE9TSVRJT04pICQoRU5BQkxFX0NTU19WQVJJQUJMRVMpICQoRU5BQkxFX0NTUzNfQ09O
RElUSU9OQUxfUlVMRVMpICQoRU5BQkxFX0NTUzNfVEVYVCkgJChFTkFCTEVfQ1VTVE9NX1NDSEVN
RV9IQU5ETEVSKSAkKEVOQUJMRV9EQVNIQk9BUkRfU1VQUE9SVCkgJChFTkFCTEVfREFUQUxJU1Rf
RUxFTUVOVCkgJChFTkFCTEVfREFUQV9UUkFOU0ZFUl9JVEVNUykgJChFTkFCTEVfREVUQUlMU19F
TEVNRU5UKSAkKEVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0RJQUxPR19FTEVN
RU5UKSAkKEVOQUJMRV9ESVJFQ1RPUllfVVBMT0FEKSAkKEVOQUJMRV9EUkFHR0FCTEVfUkVHSU9O
KSAkKEVOQUJMRV9FTkNSWVBURURfTUVESUEpICQoRU5BQkxFX0ZJTEVfU1lTVEVNKSAkKEVOQUJM
RV9GSUxURVJTKSAkKEVOQUJMRV9GVUxMU0NSRUVOX0FQSSkgJChFTkFCTEVfR0FNRVBBRCkgJChF
TkFCTEVfR0VPTE9DQVRJT04pICQoRU5BQkxFX0hJRERFTl9QQUdFX0RPTV9USU1FUl9USFJPVFRM
SU5HKSAkKEVOQUJMRV9ISUdIX0RQSV9DQU5WQVMpICQoRU5BQkxFX0lDT05EQVRBQkFTRSkgJChF
TkFCTEVfSUZSQU1FX1NFQU1MRVNTKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKSAkKEVOQUJM
RV9JTlBVVF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IpICQoRU5BQkxFX0lOUFVU
X1RZUEVfREFURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRSkgJChFTkFCTEVfSU5QVVRf
VFlQRV9EQVRFVElNRUxPQ0FMKSAkKEVOQUJMRV9JTlBVVF9UWVBFX01PTlRIKSAkKEVOQUJMRV9J
TlBVVF9UWVBFX1RJTUUpICQoRU5BQkxFX0lOUFVUX1RZUEVfV0VFSykgJChFTkFCTEVfSkFWQVND
UklQVF9ERUJVR0dFUikgJChFTkFCTEVfTEVHQUNZX0NTU19WRU5ET1JfUFJFRklYRVMpICQoRU5B
QkxFX0xFR0FDWV9OT1RJRklDQVRJT05TKSAkKEVOQUJMRV9MRUdBQ1lfVkVORE9SX1BSRUZJWEVT
KSAkKEVOQUJMRV9MRUdBQ1lfV0VCX0FVRElPKSAkKEVOQUJMRV9MSU5LX1BSRUZFVENIKSAkKEVO
QUJMRV9MSU5LX1BSRVJFTkRFUikgJChFTkFCTEVfTUFUSE1MKSAkKEVOQUJMRV9NRURJQV9TT1VS
Q0UpICQoRU5BQkxFX01FRElBX1NUQVRJU1RJQ1MpICQoRU5BQkxFX01FVEVSX0VMRU1FTlQpICQo
RU5BQkxFX01IVE1MKSAkKEVOQUJMRV9NSUNST0RBVEEpICQoRU5BQkxFX01VVEFUSU9OX09CU0VS
VkVSUykgJChFTkFCTEVfTkFWSUdBVE9SX0NPTlRFTlRfVVRJTFMpICQoRU5BQkxFX05PVElGSUNB
VElPTlMpICQoRU5BQkxFX1BBR0VfVklTSUJJTElUWV9BUEkpICQoRU5BQkxFX1BST0dSRVNTX0VM
RU1FTlQpICQoRU5BQkxFX1FVT1RBKSAkKEVOQUJMRV9SRVFVRVNUX0FOSU1BVElPTl9GUkFNRSkg
JChFTkFCTEVfU0NSSVBURURfU1BFRUNIKSAkKEVOQUJMRV9TSEFET1dfRE9NKSAkKEVOQUJMRV9T
SEFSRURfV09SS0VSUykgJChFTkFCTEVfU1FMX0RBVEFCQVNFKSAkKEVOQUJMRV9TVFlMRV9TQ09Q
RUQpICQoRU5BQkxFX1NWRykgJChFTkFCTEVfU1ZHX0RPTV9PQkpDX0JJTkRJTkdTKSAkKEVOQUJM
RV9TVkdfRk9OVFMpICQoRU5BQkxFX1RFWFRfQVVUT1NJWklORykgJChFTkFCTEVfVEVYVF9OT1RJ
RklDQVRJT05TX09OTFkpICQoRU5BQkxFX1RPVUNIX0lDT05fTE9BRElORykgJChFTkFCTEVfVU5E
T19NQU5BR0VSKSAkKEVOQUJMRV9VU0VSU0VMRUNUX0FMTCkgJChFTkFCTEVfVklERU8pICQoRU5B
QkxFX1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9XRUJHTCkgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVO
QUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV09SS0VSUykg
JChFTkFCTEVfWEhSX1RJTUVPVVQpICQoRU5BQkxFX1hTTFQpOworRkVBVFVSRV9ERUZJTkVTID0g
JChFTkFCTEVfM0RfUkVOREVSSU5HKSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF8yRF9DQU5WQVMpICQo
RU5BQkxFX0FOSU1BVElPTl9BUEkpICQoRU5BQkxFX0JMT0IpICQoRU5BQkxFX0NIQU5ORUxfTUVT
U0FHSU5HKSAkKEVOQUJMRV9DU1BfTkVYVCkgJChFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JS
RUFLKSAkKEVOQUJMRV9DU1NfREVWSUNFX0FEQVBUQVRJT04pICQoRU5BQkxFX0NTU19FWENMVVNJ
T05TKSAkKEVOQUJMRV9DU1NfRklMVEVSUykgJChFTkFCTEVfQ1NTX0hJRVJBUkNISUVTKSAkKEVO
QUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVUSU9O
KSAkKEVOQUJMRV9DU1NfUkVHSU9OUykgJChFTkFCTEVfQ1NTX1NIQURFUlMpICQoRU5BQkxFX0NT
U19DT01QT1NJVElORykgJChFTkFCTEVfQ1NTX1NUSUNLWV9QT1NJVElPTikgJChFTkFCTEVfQ1NT
X1ZBUklBQkxFUykgJChFTkFCTEVfQ1NTM19DT05ESVRJT05BTF9SVUxFUykgJChFTkFCTEVfQ1NT
M19URVhUKSAkKEVOQUJMRV9DVVNUT01fU0NIRU1FX0hBTkRMRVIpICQoRU5BQkxFX0RBU0hCT0FS
RF9TVVBQT1JUKSAkKEVOQUJMRV9EQVRBTElTVF9FTEVNRU5UKSAkKEVOQUJMRV9EQVRBX1RSQU5T
RkVSX0lURU1TKSAkKEVOQUJMRV9ERVRBSUxTX0VMRU1FTlQpICQoRU5BQkxFX0RFVklDRV9PUklF
TlRBVElPTikgJChFTkFCTEVfRElBTE9HX0VMRU1FTlQpICQoRU5BQkxFX0RJUkVDVE9SWV9VUExP
QUQpICQoRU5BQkxFX0RSQUdHQUJMRV9SRUdJT04pICQoRU5BQkxFX0VOQ1JZUFRFRF9NRURJQSkg
JChFTkFCTEVfRklMRV9TWVNURU0pICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZVTExTQ1JF
RU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HRU9MT0NBVElPTikgJChFTkFCTEVf
SElEREVOX1BBR0VfRE9NX1RJTUVSX1RIUk9UVExJTkcpICQoRU5BQkxFX0hJR0hfRFBJX0NBTlZB
UykgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JRlJBTUVfU0VBTUxFU1MpICQoRU5B
QkxFX0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lOUFVUX1NQRUVDSCkgJChFTkFCTEVfSU5Q
VVRfVFlQRV9DT0xPUikgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVOQUJMRV9JTlBVVF9U
WVBFX0RBVEVUSU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpICQoRU5BQkxF
X0lOUFVUX1RZUEVfTU9OVEgpICQoRU5BQkxFX0lOUFVUX1RZUEVfVElNRSkgJChFTkFCTEVfSU5Q
VVRfVFlQRV9XRUVLKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAkKEVOQUJMRV9MRUdB
Q1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX05PVElGSUNBVElPTlMpICQo
RU5BQkxFX0xFR0FDWV9WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xFR0FDWV9XRUJfQVVESU8p
ICQoRU5BQkxFX0xJTktfUFJFRkVUQ0gpICQoRU5BQkxFX0xJTktfUFJFUkVOREVSKSAkKEVOQUJM
RV9NQVRITUwpICQoRU5BQkxFX01FRElBX1NPVVJDRSkgJChFTkFCTEVfTUVESUFfU1RBVElTVElD
UykgJChFTkFCTEVfTUVURVJfRUxFTUVOVCkgJChFTkFCTEVfTUhUTUwpICQoRU5BQkxFX01JQ1JP
REFUQSkgJChFTkFCTEVfTVVUQVRJT05fT0JTRVJWRVJTKSAkKEVOQUJMRV9OQVZJR0FUT1JfQ09O
VEVOVF9VVElMUykgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfUEFHRV9WSVNJQklM
SVRZX0FQSSkgJChFTkFCTEVfUFJPR1JFU1NfRUxFTUVOVCkgJChFTkFCTEVfUVVPVEEpICQoRU5B
QkxFX1JFUVVFU1RfQU5JTUFUSU9OX0ZSQU1FKSAkKEVOQUJMRV9TQ1JJUFRFRF9TUEVFQ0gpICQo
RU5BQkxFX1NIQURPV19ET00pICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TUUxf
REFUQUJBU0UpICQoRU5BQkxFX1NUWUxFX1NDT1BFRCkgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9T
VkdfRE9NX09CSkNfQklORElOR1MpICQoRU5BQkxFX1NWR19GT05UUykgJChFTkFCTEVfVEVYVF9B
VVRPU0laSU5HKSAkKEVOQUJMRV9URVhUX05PVElGSUNBVElPTlNfT05MWSkgJChFTkFCTEVfVE9V
Q0hfSUNPTl9MT0FESU5HKSAkKEVOQUJMRV9VU0VSU0VMRUNUX0FMTCkgJChFTkFCTEVfVklERU8p
ICQoRU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9XRUJHTCkgJChFTkFCTEVfV0VCX0FVRElP
KSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV09S
S0VSUykgJChFTkFCTEVfWEhSX1RJTUVPVVQpICQoRU5BQkxFX1hTTFQpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwIGIvU291cmNlL1dlYkNvcmUvRGVyaXZl
ZFNvdXJjZXMuY3BwCmluZGV4IDg5MWQxN2U1ZmRjNjZjN2Y4ZmFjMmFlZTYzZDRmYjY1ZTRmNjhi
NzcuLjAyZmNlYmI2N2VhMDI2OTJiYThlNzdiMTQyYWNhMjVhYzQ1ZGQ5MjEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9E
ZXJpdmVkU291cmNlcy5jcHAKQEAgLTEwMSw5ICsxMDEsNiBAQAogI2luY2x1ZGUgIkpTRE9NU3Ry
aW5nTGlzdC5jcHAiCiAjaW5jbHVkZSAiSlNET01TdHJpbmdNYXAuY3BwIgogI2luY2x1ZGUgIkpT
RE9NVG9rZW5MaXN0LmNwcCIKLSNpZiBFTkFCTEUoVU5ET19NQU5BR0VSKQotI2luY2x1ZGUgIkpT
RE9NVHJhbnNhY3Rpb24uY3BwIgotI2VuZGlmCiAjaW5jbHVkZSAiSlNET01VUkwuY3BwIgogI2lu
Y2x1ZGUgIkpTRE9NV2luZG93LmNwcCIKICNpbmNsdWRlICJKU0VsZW1lbnQuY3BwIgpAQCAtNDc3
LDkgKzQ3NCw2IEBACiAjaW5jbHVkZSAiSlNVaW50OEFycmF5LmNwcCIKICNpbmNsdWRlICJKU1Vp
bnQ4Q2xhbXBlZEFycmF5LmNwcCIKICNpbmNsdWRlICJKU1VJRXZlbnQuY3BwIgotI2lmIEVOQUJM
RShVTkRPX01BTkFHRVIpCi0jaW5jbHVkZSAiSlNVbmRvTWFuYWdlci5jcHAiCi0jZW5kaWYKICNp
bmNsdWRlICJKU1ZhbGlkaXR5U3RhdGUuY3BwIgogI2luY2x1ZGUgIkpTVm9pZENhbGxiYWNrLmNw
cCIKICNpbmNsdWRlICJKU1dlYktpdEFuaW1hdGlvbi5jcHAiCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJj
ZXMubWFrZQppbmRleCBhMGI3N2M1ZGVhM2RiMGY2NDcyMjJiNWVkYTczNDI5YjhiODMzNzEwLi5j
MjY2ZjYyY2UxYjJiYzllYWU4NThiYWQwNzVjNjYzNmFmODcwMmZlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2
ZWRTb3VyY2VzLm1ha2UKQEAgLTI2Niw4ICsyNjYsNiBAQCBCSU5ESU5HX0lETFMgPSBcCiAgICAg
JChXZWJDb3JlKS9kb20vV2ViS2l0TmFtZWRGbG93LmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20v
V2ViS2l0VHJhbnNpdGlvbkV2ZW50LmlkbCBcCiAgICAgJChXZWJDb3JlKS9kb20vV2hlZWxFdmVu
dC5pZGwgXAotICAgICQoV2ViQ29yZSkvZWRpdGluZy9ET01UcmFuc2FjdGlvbi5pZGwgXAotICAg
ICQoV2ViQ29yZSkvZWRpdGluZy9VbmRvTWFuYWdlci5pZGwgXAogICAgICQoV2ViQ29yZSkvZmls
ZWFwaS9CbG9iLmlkbCBcCiAgICAgJChXZWJDb3JlKS9maWxlYXBpL0ZpbGUuaWRsIFwKICAgICAk
KFdlYkNvcmUpL2ZpbGVhcGkvRmlsZUVycm9yLmlkbCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9EZXJpdmVkU291cmNlcy5wcmkgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5w
cmkKaW5kZXggMDEwYTBlNjU3YTA5ZWQxYTExYWUwODA1YzhhMmJlNzVkZjQxOTc0YS4uOTkyNGU4
NWQ3MWJmODhjNDRlYTc0N2M3ZjI5ZTNiOGM1NDQyODAzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvRGVyaXZlZFNvdXJjZXMucHJpCisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3Vy
Y2VzLnByaQpAQCAtMjc3LDggKzI3Nyw2IEBAIElETF9CSU5ESU5HUyArPSBcCiAgICAgJCRQV0Qv
ZG9tL0RPTU5hbWVkRmxvd0NvbGxlY3Rpb24uaWRsIFwKICAgICAkJFBXRC9kb20vV2ViS2l0VHJh
bnNpdGlvbkV2ZW50LmlkbCBcCiAgICAgJCRQV0QvZG9tL1doZWVsRXZlbnQuaWRsIFwKLSAgICAk
JFBXRC9lZGl0aW5nL0RPTVRyYW5zYWN0aW9uLmlkbCBcCi0gICAgJCRQV0QvZWRpdGluZy9VbmRv
TWFuYWdlci5pZGwgXAogICAgICQkUFdEL2ZpbGVhcGkvQmxvYi5pZGwgXAogICAgICQkUFdEL2Zp
bGVhcGkvRmlsZS5pZGwgXAogICAgICQkUFdEL2ZpbGVhcGkvRmlsZUVycm9yLmlkbCBcCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5mZWF0dXJlcy5hbSBiL1NvdXJjZS9X
ZWJDb3JlL0dOVW1ha2VmaWxlLmZlYXR1cmVzLmFtCmluZGV4IDkzZTVlODY1NDZlNzVlMmVjZjAz
ZTViZmY2ZTg3NThmMjU1MTQ4YjUuLjBlYjEzNzc2ODBlNzZlZTUwNGJlYmE1ODFhZWUzNDljNjc0
ODA3NjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmZlYXR1cmVzLmFt
CisrKyBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmZlYXR1cmVzLmFtCkBAIC04Niw3ICs4
Niw2IEBAIGZlYXR1cmVfZGVmaW5lc19kZWZhdWx0cyArPSBcCiAJRU5BQkxFX1RFWFRfQVVUT1NJ
WklORz0wIFwKIAlFTkFCTEVfVE9VQ0hfRVZFTlRTPTAgXAogCUVOQUJMRV9UT1VDSF9JQ09OX0xP
QURJTkc9MCBcCi0JRU5BQkxFX1VORE9fTUFOQUdFUj0wIFwKIAlFTkFCTEVfVklCUkFUSU9OPTAg
XAogCUVOQUJMRV9WSURFTz0xIFwKIAlFTkFCTEVfVklERU9fVFJBQ0s9MSBcCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtIGIvU291cmNlL1dlYkNvcmUvR05V
bWFrZWZpbGUubGlzdC5hbQppbmRleCBiMGJkZDJlYmFiNzNiYTlmYjI2MTI5MzUxOTJjYjNmNTQ5
MjM3MDNiLi5iYmU5YjM4MmQ3OTVkYzQ3NDhiYzBmOWE1N2I5ZThkNmUyYzQyOGUzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCisrKyBiL1NvdXJjZS9XZWJD
b3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KQEAgLTIwOSw4ICsyMDksNiBAQCB3ZWJjb3JlX2J1aWx0
X3NvdXJjZXMgKz0gXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNET01TdHJpbmdNYXAuaCBc
CiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0RPTVRva2VuTGlzdC5jcHAgXAogCURlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvSlNET01Ub2tlbkxpc3QuaCBcCi0JRGVyaXZlZFNvdXJjZXMvV2ViQ29y
ZS9KU0RPTVRyYW5zYWN0aW9uLmNwcCBcCi0JRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0RPTVRy
YW5zYWN0aW9uLmggXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNET01VUkwuY3BwIFwKIAlE
ZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRE9NVVJMLmggXAogCURlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvSlNET01XaW5kb3cuY3BwIFwKQEAgLTEwNTUsOCArMTA1Myw2IEBAIHdlYmNvcmVfYnVpbHRf
c291cmNlcyArPSBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1VpbnQ4QXJyYXkuaCBcCiAJ
RGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1VpbnQ4Q2xhbXBlZEFycmF5LmNwcCBcCiAJRGVyaXZl
ZFNvdXJjZXMvV2ViQ29yZS9KU1VpbnQ4Q2xhbXBlZEFycmF5LmggXAotCURlcml2ZWRTb3VyY2Vz
L1dlYkNvcmUvSlNVbmRvTWFuYWdlci5jcHAgXAotCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNV
bmRvTWFuYWdlci5oIFwKIAlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTVmFsaWRpdHlTdGF0ZS5j
cHAgXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNWYWxpZGl0eVN0YXRlLmggXAogCURlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvSlNWb2lkQ2FsbGJhY2suY3BwIFwKQEAgLTE0MTEsOCArMTQwNyw2
IEBAIGRvbV9iaW5kaW5nX2lkbHMgKz0gXAogCSQoV2ViQ29yZSkvZG9tL1dlYktpdE5hbWVkRmxv
dy5pZGwgXAogCSQoV2ViQ29yZSkvZG9tL1dlYktpdFRyYW5zaXRpb25FdmVudC5pZGwgXAogCSQo
V2ViQ29yZSkvZG9tL1doZWVsRXZlbnQuaWRsIFwKLQkkKFdlYkNvcmUpL2VkaXRpbmcvRE9NVHJh
bnNhY3Rpb24uaWRsIFwKLQkkKFdlYkNvcmUpL2VkaXRpbmcvVW5kb01hbmFnZXIuaWRsIFwKIAkk
KFdlYkNvcmUpL2ZpbGVhcGkvQmxvYi5pZGwgXAogCSQoV2ViQ29yZSkvZmlsZWFwaS9GaWxlLmlk
bCBcCiAJJChXZWJDb3JlKS9maWxlYXBpL0ZpbGVFcnJvci5pZGwgXApAQCAtMjI0Myw4ICsyMjM3
LDYgQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9D
YWxsYmFja0Z1bmN0aW9uLmggXAogCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0RPTU9iamVj
dEhhc2hUYWJsZU1hcC5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0RPTU9iamVj
dEhhc2hUYWJsZU1hcC5oIFwKLQlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9ET01UcmFuc2Fj
dGlvbi5jcHAgXAotCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0RPTVRyYW5zYWN0aW9uLmgg
XAogCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0RPTVdyYXBwZXJXb3JsZC5jcHAgXAogCVNv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0RPTVdyYXBwZXJXb3JsZC5oIFwKIAlTb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9HQ0NvbnRyb2xsZXIuY3BwIFwKQEAgLTI0MDgsNyArMjQwMCw2IEBA
IHdlYmNvcmVfc291cmNlcyArPSBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNUcmFj
a0N1c3RvbS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1RyYWNrRXZlbnRDdXN0
b20uY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1RyZWVXYWxrZXJDdXN0b20u
Y3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1VuZG9NYW5hZ2VyQ3VzdG9tLmNw
cCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNXZWJLaXRBbmltYXRpb25DdXN0b20u
Y3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1dlYktpdEFuaW1hdGlvbkxpc3RD
dXN0b20uY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1dlYktpdENTU0tleWZy
YW1lUnVsZUN1c3RvbS5jcHAgXApAQCAtMzAyMSw4ICszMDEyLDYgQEAgd2ViY29yZV9zb3VyY2Vz
ICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0RpY3RhdGlvbkFsdGVybmF0aXZlLmggXAog
CVNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRGljdGF0aW9uQ29tbWFuZC5jcHAgXAogCVNvdXJjZS9X
ZWJDb3JlL2VkaXRpbmcvRGljdGF0aW9uQ29tbWFuZC5oIFwKLQlTb3VyY2UvV2ViQ29yZS9lZGl0
aW5nL0RPTVRyYW5zYWN0aW9uU3RlcC5jcHAgXAotCVNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRE9N
VHJhbnNhY3Rpb25TdGVwLmggXAogCVNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdEFjdGlvbi5o
IFwKIAlTb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRDb21tYW5kLmNwcCBcCiAJU291cmNlL1dl
YkNvcmUvZWRpdGluZy9FZGl0Q29tbWFuZC5oIFwKQEAgLTMxMTIsOCArMzEwMSw2IEBAIHdlYmNv
cmVfc291cmNlcyArPSBcCiAJU291cmNlL1dlYkNvcmUvZWRpdGluZy9UZXh0SXRlcmF0b3IuaCBc
CiAJU291cmNlL1dlYkNvcmUvZWRpdGluZy9UeXBpbmdDb21tYW5kLmNwcCBcCiAJU291cmNlL1dl
YkNvcmUvZWRpdGluZy9UeXBpbmdDb21tYW5kLmggXAotCVNvdXJjZS9XZWJDb3JlL2VkaXRpbmcv
VW5kb01hbmFnZXIuY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1VuZG9NYW5hZ2VyLmgg
XAogCVNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvVW5kb1N0ZXAuaCBcCiAJU291cmNlL1dlYkNvcmUv
ZWRpdGluZy9VbmxpbmtDb21tYW5kLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvZWRpdGluZy9Vbmxp
bmtDb21tYW5kLmggXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaSBiL1Nv
dXJjZS9XZWJDb3JlL1RhcmdldC5wcmkKaW5kZXggNDAwNGQxYzllOTUwYWQzNWNiNmU5MjViODNi
OGVkZmY0YmVkYmRkNS4uNWI2M2Y1MTk2NWQxOTAzNzAyMmI3NjAzNTE0YWFhYmE1OWYwZmM0ZiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaQorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9UYXJnZXQucHJpCkBAIC03Miw3ICs3Miw2IEBAIFNPVVJDRVMgKz0gXAogICAgICBiaW5kaW5n
cy9qcy9CaW5kaW5nU3RhdGUuY3BwIFwKICAgICAgYmluZGluZ3MvanMvQ2FsbGJhY2tGdW5jdGlv
bi5jcHAgXAogICAgICBiaW5kaW5ncy9qcy9ET01PYmplY3RIYXNoVGFibGVNYXAuY3BwIFwKLSAg
ICAgYmluZGluZ3MvanMvRE9NVHJhbnNhY3Rpb24uY3BwIFwKICAgICAgYmluZGluZ3MvanMvRE9N
V3JhcHBlcldvcmxkLmNwcCBcCiAgICAgIGJpbmRpbmdzL2pzL0RpY3Rpb25hcnkuY3BwIFwKICAg
ICAgYmluZGluZ3MvanMvR0NDb250cm9sbGVyLmNwcCBcCkBAIC0xODEsNyArMTgwLDYgQEAgU09V
UkNFUyArPSBcCiAgICAgIGJpbmRpbmdzL2pzL0pTVG91Y2hDdXN0b20uY3BwIFwKICAgICAgYmlu
ZGluZ3MvanMvSlNUb3VjaExpc3RDdXN0b20uY3BwIFwKICAgICAgYmluZGluZ3MvanMvSlNUcmVl
V2Fsa2VyQ3VzdG9tLmNwcCBcCi0gICAgIGJpbmRpbmdzL2pzL0pTVW5kb01hbmFnZXJDdXN0b20u
Y3BwIFwKICAgICAgYmluZGluZ3MvanMvSlNXZWJLaXRBbmltYXRpb25DdXN0b20uY3BwIFwKICAg
ICAgYmluZGluZ3MvanMvSlNXZWJLaXRBbmltYXRpb25MaXN0Q3VzdG9tLmNwcCBcCiAgICAgIGJp
bmRpbmdzL2pzL0pTV2ViS2l0Q1NTS2V5ZnJhbWVSdWxlQ3VzdG9tLmNwcCBcCkBAIC0xMzIzLDcg
KzEzMjEsNiBAQCBIRUFERVJTICs9IFwKICAgICBiaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuaCBc
CiAgICAgYmluZGluZ3MvanMvSlNET01HbG9iYWxPYmplY3QuaCBcCiAgICAgYmluZGluZ3MvanMv
SlNET01TdHJpbmdNYXBDdXN0b20uaCBcCi0gICAgYmluZGluZ3MvanMvRE9NVHJhbnNhY3Rpb24u
aCBcCiAgICAgYmluZGluZ3MvanMvSlNET01XaW5kb3dCYXNlLmggXAogICAgIGJpbmRpbmdzL2pz
L0pTRE9NV2luZG93Q3VzdG9tLmggXAogICAgIGJpbmRpbmdzL2pzL0pTRE9NV2luZG93U2hlbGwu
aCBcCkBAIC00MDEwLDEzICs0MDA3LDYgQEAgZW5hYmxlPyhNSFRNTCkgewogICAgICAgICBwYWdl
L1BhZ2VTZXJpYWxpemVyLmNwcAogfQogCi1lbmFibGU/KFVORE9fTUFOQUdFUikgewotICAgIFNP
VVJDRVMgKz0gXAotICAgICAgICBlZGl0aW5nL1VuZG9NYW5hZ2VyLmNwcAotICAgIEhFQURFUlMg
Kz0gXAotICAgICAgICBlZGl0aW5nL1VuZG9NYW5hZ2VyLmgKLX0KLQogdXNlPyhMSUJQTkcpIHsK
ICAgICBTT1VSQ0VTICs9IHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2ljby9JQ09JbWFnZURlY29k
ZXIuY3BwIFwKICAgICAgICAgICAgICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL3BuZy9QTkdJ
bWFnZURlY29kZXIuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Vc2VKU0MuY21ha2Ug
Yi9Tb3VyY2UvV2ViQ29yZS9Vc2VKU0MuY21ha2UKaW5kZXggYmE2Y2U2OTdiZjUzNjIwY2Y1YjJj
YTljMDVjZDdiZDI3NWJjNjQzNy4uZGE2MDRiYzZiM2RiZjQwODcxN2Y4NTg4OGNhMTlmMThjNTNj
ZjMyNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvVXNlSlNDLmNtYWtlCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL1VzZUpTQy5jbWFrZQpAQCAtMjgzLDEzICsyODMsNiBAQCBJRiAoRU5BQkxFX1dF
Ql9JTlRFTlRTKQogICAgICkKIEVORElGICgpCiAKLUlGIChFTkFCTEVfVU5ET19NQU5BR0VSKQot
ICAgIExJU1QgKEFQUEVORCBXZWJDb3JlX1NPVVJDRVMKLSAgICAgICAgYmluZGluZ3MvanMvRE9N
VHJhbnNhY3Rpb24uY3BwCi0gICAgICAgIGJpbmRpbmdzL2pzL0pTVW5kb01hbmFnZXJDdXN0b20u
Y3BwCi0gICAgKQotRU5ESUYgKCkKLQogTElTVChBUFBFTkQgU0NSSVBUU19CSU5ESU5HUwogICAg
ICR7V0VCQ09SRV9ESVJ9L2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvci5wbQogICAgICR7
V0VCQ09SRV9ESVJ9L2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9Vc2VWOC5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL1VzZVY4LmNt
YWtlCmluZGV4IDgyYjFkYTRmYWZiYzc2YTQ4MTNkMTk3ZDdjMGZiNzhiMzZhMTIwNTQuLmI2MzU4
ZjdjNzY1ZmRiZGRhZDE1ZmU0ODBhOGRkMzAzYTU1NzdjZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL1VzZVY4LmNtYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL1VzZVY4LmNtYWtlCkBAIC0y
MDcsMTUgKzIwNyw2IEBAIElGIChFTkFCTEVfU1ZHKQogICAgICkKIEVORElGICgpCiAKLUlGIChF
TkFCTEVfVU5ET19NQU5BR0VSKQotICAgIExJU1QoQVBQRU5EIFdlYkNvcmVfU09VUkNFUwotICAg
ICAgICBiaW5kaW5ncy92OC9ET01UcmFuc2FjdGlvbi5jcHAKLQotICAgICAgICBiaW5kaW5ncy92
OC9jdXN0b20vVjhET01UcmFuc2FjdGlvbkN1c3RvbS5jcHAKLSAgICAgICAgYmluZGluZ3Mvdjgv
Y3VzdG9tL1Y4VW5kb01hbmFnZXJDdXN0b20uY3BwCi0gICAgKQotRU5ESUYgKCkKLQogTElTVChB
UFBFTkQgU0NSSVBUU19CSU5ESU5HUwogICAgICR7V0VCQ09SRV9ESVJ9L2JpbmRpbmdzL3Njcmlw
dHMvQ29kZUdlbmVyYXRvci5wbQogICAgICR7V0VCQ09SRV9ESVJ9L2JpbmRpbmdzL3NjcmlwdHMv
Q29kZUdlbmVyYXRvclY4LnBtCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5
cGkgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkKaW5kZXggODkwYzBiOGQ5OWM0ZDFhZGFh
N2M0OTRjNDY2MDBmMjUxY2RkZDE5MC4uZmY4MmE0ZWQwZTUyOTg1YmU2NTcyYTE4YjIwNjMxMjc0
MTZjMDA5NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQpAQCAtMTA1MCw4ICsxMDUwLDYgQEAKICAgICAgICAg
ICAgICdkb20vV2ViS2l0TmFtZWRGbG93LmlkbCcsCiAgICAgICAgICAgICAnZG9tL1dlYktpdFRy
YW5zaXRpb25FdmVudC5pZGwnLAogICAgICAgICAgICAgJ2RvbS9XaGVlbEV2ZW50LmlkbCcsCi0g
ICAgICAgICAgICAnZWRpdGluZy9ET01UcmFuc2FjdGlvbi5pZGwnLAotICAgICAgICAgICAgJ2Vk
aXRpbmcvVW5kb01hbmFnZXIuaWRsJywKICAgICAgICAgICAgICdmaWxlYXBpL0Jsb2IuaWRsJywK
ICAgICAgICAgICAgICdmaWxlYXBpL0ZpbGUuaWRsJywKICAgICAgICAgICAgICdmaWxlYXBpL0Zp
bGVFcnJvci5pZGwnLApAQCAtMTk5OCw4ICsxOTk2LDYgQEAKICAgICAgICAgICAgICdiaW5kaW5n
cy9qcy9DYWxsYmFja0Z1bmN0aW9uLmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMvQ2Fs
bGJhY2tGdW5jdGlvbi5oJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9ET01PYmplY3RIYXNo
VGFibGVNYXAuY3BwJywKLSAgICAgICAgICAgICdiaW5kaW5ncy9qcy9ET01UcmFuc2FjdGlvbi5j
cHAnLAotICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0RPTVRyYW5zYWN0aW9uLmgnLAogICAgICAg
ICAgICAgJ2JpbmRpbmdzL2pzL0RPTVdyYXBwZXJXb3JsZC5jcHAnLAogICAgICAgICAgICAgJ2Jp
bmRpbmdzL2pzL0dDQ29udHJvbGxlci5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0lE
QkJpbmRpbmdVdGlsaXRpZXMuY3BwJywKQEAgLTIxNTQsNyArMjE1MCw2IEBACiAgICAgICAgICAg
ICAnYmluZGluZ3MvanMvSlNUcmFja0N1c3RvbS5oJywKICAgICAgICAgICAgICdiaW5kaW5ncy9q
cy9KU1RyYWNrRXZlbnRDdXN0b20uY3BwJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU1Ry
ZWVXYWxrZXJDdXN0b20uY3BwJywKLSAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU1VuZG9NYW5h
Z2VyQ3VzdG9tLmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNXZWJHTFJlbmRlcmlu
Z0NvbnRleHRDdXN0b20uY3BwJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU1dlYktpdEFu
aW1hdGlvbkN1c3RvbS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTV2ViS2l0QW5p
bWF0aW9uTGlzdEN1c3RvbS5jcHAnLApAQCAtMjIyOSw4ICsyMjI0LDYgQEAKICAgICAgICAgICAg
ICdiaW5kaW5ncy92OC9CaW5kaW5nU3RhdGUuaCcsCiAgICAgICAgICAgICAnYmluZGluZ3Mvdjgv
RE9NRGF0YVN0b3JlLmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvdjgvRE9NRGF0YVN0b3Jl
LmgnLAotICAgICAgICAgICAgJ2JpbmRpbmdzL3Y4L0RPTVRyYW5zYWN0aW9uLmNwcCcsCi0gICAg
ICAgICAgICAnYmluZGluZ3MvdjgvRE9NVHJhbnNhY3Rpb24uaCcsCiAgICAgICAgICAgICAnYmlu
ZGluZ3MvdjgvRE9NV3JhcHBlck1hcC5oJywKICAgICAgICAgICAgICdiaW5kaW5ncy92OC9ET01X
cmFwcGVyV29ybGQuY3BwJywKICAgICAgICAgICAgICdiaW5kaW5ncy92OC9ET01XcmFwcGVyV29y
bGQuaCcsCkBAIC0yMzgyLDcgKzIzNzUsNiBAQAogICAgICAgICAgICAgJ2JpbmRpbmdzL3Y4L2N1
c3RvbS9WOEN1c3RvbVhQYXRoTlNSZXNvbHZlci5oJywKICAgICAgICAgICAgICdiaW5kaW5ncy92
OC9jdXN0b20vVjhET01Gb3JtRGF0YUN1c3RvbS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdz
L3Y4L2N1c3RvbS9WOERPTVN0cmluZ01hcEN1c3RvbS5jcHAnLAotICAgICAgICAgICAgJ2JpbmRp
bmdzL3Y4L2N1c3RvbS9WOERPTVRyYW5zYWN0aW9uQ3VzdG9tLmNwcCcsCiAgICAgICAgICAgICAn
YmluZGluZ3MvdjgvY3VzdG9tL1Y4RE9NV2luZG93Q3VzdG9tLmNwcCcsCiAgICAgICAgICAgICAn
YmluZGluZ3MvdjgvY3VzdG9tL1Y4RGF0YVZpZXdDdXN0b20uY3BwJywKICAgICAgICAgICAgICdi
aW5kaW5ncy92OC9jdXN0b20vVjhEZWRpY2F0ZWRXb3JrZXJDb250ZXh0Q3VzdG9tLmNwcCcsCkBA
IC0yNDUzLDcgKzI0NDUsNiBAQAogICAgICAgICAgICAgJ2JpbmRpbmdzL3Y4L2N1c3RvbS9WOFN0
eWxlU2hlZXRDdXN0b20uY3BwJywKICAgICAgICAgICAgICdiaW5kaW5ncy92OC9jdXN0b20vVjhT
dHlsZVNoZWV0TGlzdEN1c3RvbS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL3Y4L2N1c3Rv
bS9WOFRyYWNrRXZlbnRDdXN0b20uY3BwJywKLSAgICAgICAgICAgICdiaW5kaW5ncy92OC9jdXN0
b20vVjhVbmRvTWFuYWdlckN1c3RvbS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL3Y4L2N1
c3RvbS9WOFdlYkdMUmVuZGVyaW5nQ29udGV4dEN1c3RvbS5jcHAnLAogICAgICAgICAgICAgJ2Jp
bmRpbmdzL3Y4L2N1c3RvbS9WOFdlYktpdEFuaW1hdGlvbkN1c3RvbS5jcHAnLAogICAgICAgICAg
ICAgJ2JpbmRpbmdzL3Y4L2N1c3RvbS9WOFdlYktpdFBvaW50Q29uc3RydWN0b3IuY3BwJywKQEAg
LTI2ODYsOCArMjY3Nyw2IEBACiAgICAgICAgICAgICAnZWRpdGluZy9Db21wb3NpdGVFZGl0Q29t
bWFuZC5jcHAnLAogICAgICAgICAgICAgJ2VkaXRpbmcvQ3JlYXRlTGlua0NvbW1hbmQuY3BwJywK
ICAgICAgICAgICAgICdlZGl0aW5nL0NyZWF0ZUxpbmtDb21tYW5kLmgnLAotICAgICAgICAgICAg
J2VkaXRpbmcvRE9NVHJhbnNhY3Rpb25TdGVwLmNwcCcsCi0gICAgICAgICAgICAnZWRpdGluZy9E
T01UcmFuc2FjdGlvblN0ZXAuaCcsCiAgICAgICAgICAgICAnZWRpdGluZy9EZWxldGVCdXR0b24u
Y3BwJywKICAgICAgICAgICAgICdlZGl0aW5nL0RlbGV0ZUJ1dHRvbi5oJywKICAgICAgICAgICAg
ICdlZGl0aW5nL0RlbGV0ZUJ1dHRvbkNvbnRyb2xsZXIuY3BwJywKQEAgLTI3NjQsOCArMjc1Myw2
IEBACiAgICAgICAgICAgICAnZWRpdGluZy9UZXh0SW5zZXJ0aW9uQmFzZUNvbW1hbmQuaCcsCiAg
ICAgICAgICAgICAnZWRpdGluZy9UZXh0SXRlcmF0b3IuY3BwJywKICAgICAgICAgICAgICdlZGl0
aW5nL1R5cGluZ0NvbW1hbmQuY3BwJywKLSAgICAgICAgICAgICdlZGl0aW5nL1VuZG9NYW5hZ2Vy
LmNwcCcsCi0gICAgICAgICAgICAnZWRpdGluZy9VbmRvTWFuYWdlci5oJywKICAgICAgICAgICAg
ICdlZGl0aW5nL1VuZG9TdGVwLmgnLAogICAgICAgICAgICAgJ2VkaXRpbmcvVW5saW5rQ29tbWFu
ZC5jcHAnLAogICAgICAgICAgICAgJ2VkaXRpbmcvVW5saW5rQ29tbWFuZC5oJywKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qIGIvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKaW5kZXggYjU2MDE5YmM4NDA4
MGFiZmJiNTMzOTkzYmEwZTQ1ODgxY2E4Y2NjNC4uODhmNDZlNzhiMjQ1NjY1OGUzNWE0OGExOTcx
MzhhZmRkNmVlNGVhOCAxMDA3NTUKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ov
V2ViQ29yZS52Y3Byb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29y
ZS52Y3Byb2oKQEAgLTQxMjIsNjIgKzQxMjIsNiBAQAogCQkJCT4KIAkJCTwvRmlsZT4KIAkJCTxG
aWxlCi0JCQkJUmVsYXRpdmVQYXRoPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2JqXCQoUHJv
amVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTRE9NVHJhbnNhY3Rpb24uY3BwIgotCQkJCT4KLQkJ
CQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJTmFtZT0iRGVidWd8V2luMzIiCi0JCQkJCUV4Y2x1
ZGVkRnJvbUJ1aWxkPSJ0cnVlIgotCQkJCQk+Ci0JCQkJCTxUb29sCi0JCQkJCQlOYW1lPSJWQ0NM
Q29tcGlsZXJUb29sIgotCQkJCQkvPgotCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+Ci0JCQkJPEZp
bGVDb25maWd1cmF0aW9uCi0JCQkJCU5hbWU9IlJlbGVhc2V8V2luMzIiCi0JCQkJCUV4Y2x1ZGVk
RnJvbUJ1aWxkPSJ0cnVlIgotCQkJCQk+Ci0JCQkJCTxUb29sCi0JCQkJCQlOYW1lPSJWQ0NMQ29t
cGlsZXJUb29sIgotCQkJCQkvPgotCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+Ci0JCQkJPEZpbGVD
b25maWd1cmF0aW9uCi0JCQkJCU5hbWU9IkRlYnVnX0NhaXJvX0NGTGl0ZXxXaW4zMiIKLQkJCQkJ
RXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCT4KLQkJCQkJPFRvb2wKLQkJCQkJCU5hbWU9
IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCS8+Ci0JCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KLQkJ
CQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJTmFtZT0iUmVsZWFzZV9DYWlyb19DRkxpdGV8V2lu
MzIiCi0JCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgotCQkJCQk+Ci0JCQkJCTxUb29sCi0J
CQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgotCQkJCQkvPgotCQkJCTwvRmlsZUNvbmZpZ3Vy
YXRpb24+Ci0JCQkJPEZpbGVDb25maWd1cmF0aW9uCi0JCQkJCU5hbWU9IkRlYnVnX0FsbHxXaW4z
MiIKLQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCT4KLQkJCQkJPFRvb2wKLQkJ
CQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCS8+Ci0JCQkJPC9GaWxlQ29uZmlndXJh
dGlvbj4KLQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJTmFtZT0iUHJvZHVjdGlvbnxXaW4z
MiIKLQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCT4KLQkJCQkJPFRvb2wKLQkJ
CQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCS8+Ci0JCQkJPC9GaWxlQ29uZmlndXJh
dGlvbj4KLQkJCTwvRmlsZT4KLQkJCTxGaWxlCi0JCQkJUmVsYXRpdmVQYXRoPSIkKENvbmZpZ3Vy
YXRpb25CdWlsZERpcilcb2JqXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTRE9NVHJh
bnNhY3Rpb24uaCIKLQkJCQk+Ci0JCQk8L0ZpbGU+Ci0JCQk8RmlsZQogCQkJCVJlbGF0aXZlUGF0
aD0iJChDb25maWd1cmF0aW9uQnVpbGREaXIpXG9ialwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291
cmNlc1xKU0RPTVVSTC5jcHAiCiAJCQkJPgogCQkJCTxGaWxlQ29uZmlndXJhdGlvbgpAQCAtMjI2
NzUsNjIgKzIyNjE5LDYgQEAKIAkJCQk+CiAJCQk8L0ZpbGU+CiAJCQk8RmlsZQotCQkJCVJlbGF0
aXZlUGF0aD0iJChDb25maWd1cmF0aW9uQnVpbGREaXIpXG9ialwkKFByb2plY3ROYW1lKVxEZXJp
dmVkU291cmNlc1xKU1VuZG9NYW5hZ2VyLmNwcCIKLQkJCQk+Ci0JCQkJPEZpbGVDb25maWd1cmF0
aW9uCi0JCQkJCU5hbWU9IkRlYnVnfFdpbjMyIgotCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1
ZSIKLQkJCQkJPgotCQkJCQk8VG9vbAotCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJ
CQkJLz4KLQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJCTxGaWxlQ29uZmlndXJhdGlvbgot
CQkJCQlOYW1lPSJSZWxlYXNlfFdpbjMyIgotCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIK
LQkJCQkJPgotCQkJCQk8VG9vbAotCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJCQkJ
Lz4KLQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJCTxGaWxlQ29uZmlndXJhdGlvbgotCQkJ
CQlOYW1lPSJEZWJ1Z19DYWlyb19DRkxpdGV8V2luMzIiCi0JCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxk
PSJ0cnVlIgotCQkJCQk+Ci0JCQkJCTxUb29sCi0JCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29s
IgotCQkJCQkvPgotCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+Ci0JCQkJPEZpbGVDb25maWd1cmF0
aW9uCi0JCQkJCU5hbWU9IlJlbGVhc2VfQ2Fpcm9fQ0ZMaXRlfFdpbjMyIgotCQkJCQlFeGNsdWRl
ZEZyb21CdWlsZD0idHJ1ZSIKLQkJCQkJPgotCQkJCQk8VG9vbAotCQkJCQkJTmFtZT0iVkNDTENv
bXBpbGVyVG9vbCIKLQkJCQkJLz4KLQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJCTxGaWxl
Q29uZmlndXJhdGlvbgotCQkJCQlOYW1lPSJEZWJ1Z19BbGx8V2luMzIiCi0JCQkJCUV4Y2x1ZGVk
RnJvbUJ1aWxkPSJ0cnVlIgotCQkJCQk+Ci0JCQkJCTxUb29sCi0JCQkJCQlOYW1lPSJWQ0NMQ29t
cGlsZXJUb29sIgotCQkJCQkvPgotCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+Ci0JCQkJPEZpbGVD
b25maWd1cmF0aW9uCi0JCQkJCU5hbWU9IlByb2R1Y3Rpb258V2luMzIiCi0JCQkJCUV4Y2x1ZGVk
RnJvbUJ1aWxkPSJ0cnVlIgotCQkJCQk+Ci0JCQkJCTxUb29sCi0JCQkJCQlOYW1lPSJWQ0NMQ29t
cGlsZXJUb29sIgotCQkJCQkvPgotCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+Ci0JCQk8L0ZpbGU+
Ci0JCQk8RmlsZQotCQkJCVJlbGF0aXZlUGF0aD0iJChDb25maWd1cmF0aW9uQnVpbGREaXIpXG9i
alwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU1VuZG9NYW5hZ2VyLmgiCi0JCQkJPgot
CQkJPC9GaWxlPgotCQkJPEZpbGUKIAkJCQlSZWxhdGl2ZVBhdGg9IiQoQ29uZmlndXJhdGlvbkJ1
aWxkRGlyKVxvYmpcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNWYWxpZGl0eVN0YXRl
LmNwcCIKIAkJCQk+CiAJCQkJPEZpbGVDb25maWd1cmF0aW9uCkBAIC01NjQ0Nyw2MiArNTYzMzUs
NiBAQAogCQkJCT4KIAkJCTwvRmlsZT4KIAkJCTxGaWxlCi0JCQkJUmVsYXRpdmVQYXRoPSIuLlxl
ZGl0aW5nXERPTVRyYW5zYWN0aW9uU3RlcC5jcHAiCi0JCQkJPgotCQkJCTxGaWxlQ29uZmlndXJh
dGlvbgotCQkJCQlOYW1lPSJEZWJ1Z3xXaW4zMiIKLQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRy
dWUiCi0JCQkJCT4KLQkJCQkJPFRvb2wKLQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCi0J
CQkJCS8+Ci0JCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KLQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24K
LQkJCQkJTmFtZT0iUmVsZWFzZXxXaW4zMiIKLQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUi
Ci0JCQkJCT4KLQkJCQkJPFRvb2wKLQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJ
CS8+Ci0JCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KLQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJ
CQkJTmFtZT0iRGVidWdfQ2Fpcm9fQ0ZMaXRlfFdpbjMyIgotCQkJCQlFeGNsdWRlZEZyb21CdWls
ZD0idHJ1ZSIKLQkJCQkJPgotCQkJCQk8VG9vbAotCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9v
bCIKLQkJCQkJLz4KLQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJCTxGaWxlQ29uZmlndXJh
dGlvbgotCQkJCQlOYW1lPSJSZWxlYXNlX0NhaXJvX0NGTGl0ZXxXaW4zMiIKLQkJCQkJRXhjbHVk
ZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCT4KLQkJCQkJPFRvb2wKLQkJCQkJCU5hbWU9IlZDQ0xD
b21waWxlclRvb2wiCi0JCQkJCS8+Ci0JCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KLQkJCQk8Rmls
ZUNvbmZpZ3VyYXRpb24KLQkJCQkJTmFtZT0iRGVidWdfQWxsfFdpbjMyIgotCQkJCQlFeGNsdWRl
ZEZyb21CdWlsZD0idHJ1ZSIKLQkJCQkJPgotCQkJCQk8VG9vbAotCQkJCQkJTmFtZT0iVkNDTENv
bXBpbGVyVG9vbCIKLQkJCQkJLz4KLQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJCTxGaWxl
Q29uZmlndXJhdGlvbgotCQkJCQlOYW1lPSJQcm9kdWN0aW9ufFdpbjMyIgotCQkJCQlFeGNsdWRl
ZEZyb21CdWlsZD0idHJ1ZSIKLQkJCQkJPgotCQkJCQk8VG9vbAotCQkJCQkJTmFtZT0iVkNDTENv
bXBpbGVyVG9vbCIKLQkJCQkJLz4KLQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJPC9GaWxl
PgotCQkJPEZpbGUKLQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGVkaXRpbmdcRE9NVHJhbnNhY3Rpb25T
dGVwLmgiCi0JCQkJPgotCQkJPC9GaWxlPgotCQkJPEZpbGUKIAkJCQlSZWxhdGl2ZVBhdGg9Ii4u
XGVkaXRpbmdcRWRpdEFjdGlvbi5oIgogCQkJCT4KIAkJCTwvRmlsZT4KQEAgLTU4ODI3LDYyICs1
ODY1OSw2IEBACiAJCQkJPgogCQkJPC9GaWxlPgogCQkJPEZpbGUKLQkJCQlSZWxhdGl2ZVBhdGg9
Ii4uXGVkaXRpbmdcVW5kb01hbmFnZXIuY3BwIgotCQkJCT4KLQkJCQk8RmlsZUNvbmZpZ3VyYXRp
b24KLQkJCQkJTmFtZT0iRGVidWd8V2luMzIiCi0JCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVl
IgotCQkJCQk+Ci0JCQkJCTxUb29sCi0JCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgotCQkJ
CQkvPgotCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+Ci0JCQkJPEZpbGVDb25maWd1cmF0aW9uCi0J
CQkJCU5hbWU9IlJlbGVhc2V8V2luMzIiCi0JCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgot
CQkJCQk+Ci0JCQkJCTxUb29sCi0JCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgotCQkJCQkv
PgotCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+Ci0JCQkJPEZpbGVDb25maWd1cmF0aW9uCi0JCQkJ
CU5hbWU9IkRlYnVnX0NhaXJvX0NGTGl0ZXxXaW4zMiIKLQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9
InRydWUiCi0JCQkJCT4KLQkJCQkJPFRvb2wKLQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wi
Ci0JCQkJCS8+Ci0JCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KLQkJCQk8RmlsZUNvbmZpZ3VyYXRp
b24KLQkJCQkJTmFtZT0iUmVsZWFzZV9DYWlyb19DRkxpdGV8V2luMzIiCi0JCQkJCUV4Y2x1ZGVk
RnJvbUJ1aWxkPSJ0cnVlIgotCQkJCQk+Ci0JCQkJCTxUb29sCi0JCQkJCQlOYW1lPSJWQ0NMQ29t
cGlsZXJUb29sIgotCQkJCQkvPgotCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+Ci0JCQkJPEZpbGVD
b25maWd1cmF0aW9uCi0JCQkJCU5hbWU9IkRlYnVnX0FsbHxXaW4zMiIKLQkJCQkJRXhjbHVkZWRG
cm9tQnVpbGQ9InRydWUiCi0JCQkJCT4KLQkJCQkJPFRvb2wKLQkJCQkJCU5hbWU9IlZDQ0xDb21w
aWxlclRvb2wiCi0JCQkJCS8+Ci0JCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KLQkJCQk8RmlsZUNv
bmZpZ3VyYXRpb24KLQkJCQkJTmFtZT0iUHJvZHVjdGlvbnxXaW4zMiIKLQkJCQkJRXhjbHVkZWRG
cm9tQnVpbGQ9InRydWUiCi0JCQkJCT4KLQkJCQkJPFRvb2wKLQkJCQkJCU5hbWU9IlZDQ0xDb21w
aWxlclRvb2wiCi0JCQkJCS8+Ci0JCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KLQkJCTwvRmlsZT4K
LQkJCTxGaWxlCi0JCQkJUmVsYXRpdmVQYXRoPSIuLlxlZGl0aW5nXFVuZG9NYW5hZ2VyLmgiCi0J
CQkJPgotCQkJPC9GaWxlPgotCQkJPEZpbGUKIAkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGVkaXRpbmdc
VW5kb1N0ZXAuaCIKIAkJCQk+CiAJCQk8L0ZpbGU+CkBAIC03MDc5MCw1OCArNzA1NjYsNiBAQAog
CQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgogCQkJCTwvRmlsZT4KIAkJCQk8RmlsZQotCQkJCQlS
ZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXEpTVW5kb01hbmFnZXJDdXN0b20uY3BwIgotCQkJ
CQk+Ci0JCQkJCTxGaWxlQ29uZmlndXJhdGlvbgotCQkJCQkJTmFtZT0iRGVidWd8V2luMzIiCi0J
CQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKLQkJCQkJCT4KLQkJCQkJCTxUb29sCi0JCQkJ
CQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJCQkJCS8+Ci0JCQkJCTwvRmlsZUNvbmZpZ3Vy
YXRpb24+Ci0JCQkJCTxGaWxlQ29uZmlndXJhdGlvbgotCQkJCQkJTmFtZT0iUmVsZWFzZXxXaW4z
MiIKLQkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgotCQkJCQkJPgotCQkJCQkJPFRvb2wK
LQkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgotCQkJCQkJLz4KLQkJCQkJPC9GaWxlQ29u
ZmlndXJhdGlvbj4KLQkJCQkJPEZpbGVDb25maWd1cmF0aW9uCi0JCQkJCQlOYW1lPSJEZWJ1Z19D
YWlyb19DRkxpdGV8V2luMzIiCi0JCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKLQkJCQkJ
CT4KLQkJCQkJCTxUb29sCi0JCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJCQkJCS8+
Ci0JCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+Ci0JCQkJCTxGaWxlQ29uZmlndXJhdGlvbgotCQkJ
CQkJTmFtZT0iUmVsZWFzZV9DYWlyb19DRkxpdGV8V2luMzIiCi0JCQkJCQlFeGNsdWRlZEZyb21C
dWlsZD0idHJ1ZSIKLQkJCQkJCT4KLQkJCQkJCTxUb29sCi0JCQkJCQkJTmFtZT0iVkNDTENvbXBp
bGVyVG9vbCIKLQkJCQkJCS8+Ci0JCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+Ci0JCQkJCTxGaWxl
Q29uZmlndXJhdGlvbgotCQkJCQkJTmFtZT0iRGVidWdfQWxsfFdpbjMyIgotCQkJCQkJRXhjbHVk
ZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCQk+Ci0JCQkJCQk8VG9vbAotCQkJCQkJCU5hbWU9IlZD
Q0xDb21waWxlclRvb2wiCi0JCQkJCQkvPgotCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJ
CQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJCU5hbWU9IlByb2R1Y3Rpb258V2luMzIiCi0JCQkJ
CQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKLQkJCQkJCT4KLQkJCQkJCTxUb29sCi0JCQkJCQkJ
TmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJCQkJCS8+Ci0JCQkJCTwvRmlsZUNvbmZpZ3VyYXRp
b24+Ci0JCQkJPC9GaWxlPgotCQkJCTxGaWxlCiAJCQkJCVJlbGF0aXZlUGF0aD0iLi5cYmluZGlu
Z3NcanNcSlNXZWJLaXRBbmltYXRpb25DdXN0b20uY3BwIgogCQkJCQk+CiAJCQkJCTxGaWxlQ29u
ZmlndXJhdGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qCmluZGV4IDgyMmMwZWNlYWVjZTJkYjdhNjJjZGY0ODFmN2JhY2UxODE5YmJiMDIu
LmNjZDdkYjIwOTZlNTBkMmRkZmFlNjRlMzkyYWU4NDE4ZWEwNWZhNDYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE5OTEsMTcg
KzE5OTEsNiBAQAogCQk3QUYxMUE1QTEyRTcyNzQ5MDA2MUYyM0MgLyogSW5zcGVjdG9yUnVudGlt
ZUFnZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3
QUYxMUE1OTEyRTcyNzQ5MDA2MUYyM0MgLyogSW5zcGVjdG9yUnVudGltZUFnZW50LmggKi87IH07
CiAJCTdBRkQ0QThCMTEzMUMyNzYwMDM1Qjg4MyAvKiBTY3JpcHRCcmVha3BvaW50LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QUZENEE4QTExMzFDMjc2
MDAzNUI4ODMgLyogU2NyaXB0QnJlYWtwb2ludC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CiAJCTdBRkQ0RkY0MTEzMjc3QjYwMDM1Qjg4MyAvKiBTY3Jp
cHREZWJ1Z0xpc3RlbmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA3QUZENEZGMzExMzI3N0I2MDAzNUI4ODMgLyogU2NyaXB0RGVidWdMaXN0ZW5lci5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07Ci0JCTdCMDk5
MkY1MTVBQ0YxQUQwMEVENkQyMCAvKiBKU1VuZG9NYW5hZ2VyQ3VzdG9tLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdCMDk5MkY0MTVBQ0YxQUQwMEVE
NkQyMCAvKiBKU1VuZG9NYW5hZ2VyQ3VzdG9tLmNwcCAqLzsgfTsKLQkJN0IxRUEwQ0UxNTc2QzVC
NTAwNjAxNzdEIC8qIEpTVW5kb01hbmFnZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gN0IxRUEwQ0MxNTc2QzVCNTAwNjAxNzdEIC8qIEpTVW5kb01h
bmFnZXIuY3BwICovOyB9OwotCQk3QjFFQTBDRjE1NzZDNUI1MDA2MDE3N0QgLyogSlNVbmRvTWFu
YWdlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0Ix
RUEwQ0QxNTc2QzVCNTAwNjAxNzdEIC8qIEpTVW5kb01hbmFnZXIuaCAqLzsgfTsKLQkJN0IzNTM3
QzUxNUNCMkNCNTAwODNBQjY5IC8qIEpTRE9NVHJhbnNhY3Rpb24uY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0IzNTM3QzMxNUNCMkNCNTAwODNBQjY5
IC8qIEpTRE9NVHJhbnNhY3Rpb24uY3BwICovOyB9OwotCQk3QjM1MzdDNjE1Q0IyQ0I1MDA4M0FC
NjkgLyogSlNET01UcmFuc2FjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gN0IzNTM3QzQxNUNCMkNCNTAwODNBQjY5IC8qIEpTRE9NVHJhbnNhY3Rp
b24uaCAqLzsgfTsKLQkJN0I5MTg0RDIxNTc1OEU0MjAwOTJBQTkzIC8qIFVuZG9NYW5hZ2VyLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdCOTE4NENG
MTU3NThFNDIwMDkyQUE5MyAvKiBVbmRvTWFuYWdlci5jcHAgKi87IH07Ci0JCTdCOTE4NEQzMTU3
NThFNDIwMDkyQUE5MyAvKiBVbmRvTWFuYWdlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gN0I5MTg0RDAxNTc1OEU0MjAwOTJBQTkzIC8qIFVuZG9NYW5h
Z2VyLmggKi87IH07Ci0JCTdCQjM1QUVCMTVDQ0RERjQwMEYyQTY0MyAvKiBET01UcmFuc2FjdGlv
bi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QkIz
NUFFOTE1Q0NEREY0MDBGMkE2NDMgLyogRE9NVHJhbnNhY3Rpb24uY3BwICovOyB9OwotCQk3QkIz
NUFFQzE1Q0NEREY0MDBGMkE2NDMgLyogRE9NVHJhbnNhY3Rpb24uaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdCQjM1QUVBMTVDQ0RERjQwMEYyQTY0MyAv
KiBET01UcmFuc2FjdGlvbi5oICovOyB9OwotCQk3QkQxMTdFQjE1QjhEQjAxMDBDOTc0QTMgLyog
RE9NVHJhbnNhY3Rpb25TdGVwLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDdCRDExN0U5MTVCOERCMDEwMEM5NzRBMyAvKiBET01UcmFuc2FjdGlvblN0
ZXAuY3BwICovOyB9OwotCQk3QkQxMTdFQzE1QjhEQjAxMDBDOTc0QTMgLyogRE9NVHJhbnNhY3Rp
b25TdGVwLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3
QkQxMTdFQTE1QjhEQjAxMDBDOTc0QTMgLyogRE9NVHJhbnNhY3Rpb25TdGVwLmggKi87IH07CiAJ
CTdDNTIyRDRCMTVCNDc3RTgwMDlCN0M5NSAvKiBJbnNwZWN0b3JPdmVybGF5LmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDNTIyRDQ5MTVCNDc3RTgw
MDlCN0M5NSAvKiBJbnNwZWN0b3JPdmVybGF5LmNwcCAqLzsgfTsKIAkJN0UxMkU5MEYxNUZBNUQz
QTAwNUU0MTI2IC8qIEN1c3RvbUZpbHRlck1lc2hHZW5lcmF0b3IuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdFMTJFOTBEMTVGQTVEM0EwMDVFNDEyNiAv
KiBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmggKi87IH07CiAJCTdFMTJFOTEwMTVGQTVEM0Ew
MDVFNDEyNiAvKiBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdFMTJFOTBFMTVGQTVEM0EwMDVFNDEyNiAv
KiBDdXN0b21GaWx0ZXJNZXNoR2VuZXJhdG9yLmNwcCAqLzsgfTsKQEAgLTkyNDIsMTkgKzkyMzEs
NiBAQAogCQk3QUYxMUE1OTEyRTcyNzQ5MDA2MUYyM0MgLyogSW5zcGVjdG9yUnVudGltZUFnZW50
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEluc3BlY3RvclJ1bnRpbWVBZ2Vu
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3QUZENEE4QTExMzFDMjc2MDAzNUI4
ODMgLyogU2NyaXB0QnJlYWtwb2ludC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBTY3JpcHRCcmVha3BvaW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdBRkQ0
RkYzMTEzMjc3QjYwMDM1Qjg4MyAvKiBTY3JpcHREZWJ1Z0xpc3RlbmVyLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcmlwdERlYnVnTGlzdGVuZXIuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKLQkJN0IwOTkyRjQxNUFDRjFBRDAwRUQ2RDIwIC8qIEpTVW5kb01hbmFn
ZXJDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNVbmRv
TWFuYWdlckN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTdCMUVBMEND
MTU3NkM1QjUwMDYwMTc3RCAvKiBKU1VuZG9NYW5hZ2VyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEpTVW5kb01hbmFnZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwotCQk3QjFFQTBDRDE1NzZDNUI1MDA2MDE3N0QgLyogSlNVbmRvTWFuYWdlci5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1VuZG9NYW5hZ2VyLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTdCMzUzN0MzMTVDQjJDQjUwMDgzQUI2OSAvKiBKU0RPTVRy
YW5zYWN0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRE9N
VHJhbnNhY3Rpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk3QjM1MzdDNDE1
Q0IyQ0I1MDA4M0FCNjkgLyogSlNET01UcmFuc2FjdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBKU0RPTVRyYW5zYWN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07Ci0JCTdCOEMxRkU2MTVDQ0UzQzIwMDRCMzVEQyAvKiBET01UcmFuc2FjdGlvbi5pZGwgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gRE9NVHJhbnNhY3Rpb24uaWRsOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwotCQk3QjkxODRDRjE1NzU4RTQyMDA5MkFBOTMgLyogVW5kb01hbmFnZXIuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVW5kb01hbmFnZXIuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk3QjkxODREMDE1NzU4RTQyMDA5MkFBOTMgLyog
VW5kb01hbmFnZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVW5kb01hbmFn
ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJN0I5MTg0RDExNTc1OEU0MjAwOTJB
QTkzIC8qIFVuZG9NYW5hZ2VyLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBVbmRvTWFuYWdl
ci5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTdCQjM1QUU5MTVDQ0RERjQwMEYy
QTY0MyAvKiBET01UcmFuc2FjdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBET01UcmFuc2FjdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0J
CTdCQjM1QUVBMTVDQ0RERjQwMEYyQTY0MyAvKiBET01UcmFuc2FjdGlvbi5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBET01UcmFuc2FjdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwotCQk3QkQxMTdFOTE1QjhEQjAxMDBDOTc0QTMgLyogRE9NVHJhbnNhY3Rpb25T
dGVwLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERPTVRyYW5zYWN0
aW9uU3RlcC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTdCRDExN0VBMTVCOERC
MDEwMEM5NzRBMyAvKiBET01UcmFuc2FjdGlvblN0ZXAuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gRE9NVHJhbnNhY3Rpb25TdGVwLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTdDNTIyRDQ5MTVCNDc3RTgwMDlCN0M5NSAvKiBJbnNwZWN0b3JPdmVybGF5LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEluc3BlY3Rvck92ZXJsYXkuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3QzUyMkQ0QTE1QjQ3OEIyMDA5QjdDOTUg
LyogSW5zcGVjdG9yT3ZlcmxheS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJ
bnNwZWN0b3JPdmVybGF5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdDNjAxMjgw
NjAwNzhCQjcwRTM2N0E5NSAvKiBETlNSZXNvbHZlUXVldWUuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gRE5TUmVzb2x2ZVF1ZXVlLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKQEAgLTE0NDMyLDcgKzE0NDA4LDYgQEAKIAkJCWNoaWxkcmVuID0gKAogCQkJ
CUE4M0I3OTEwMENDQjAwMUIwMDBCMDgyNSAvKiBDb3JlICovLAogCQkJCUE4M0I3OTBFMENDQUZG
OTcwMDBCMDgyNSAvKiBDU1MgKi8sCi0JCQkJN0I3RjY4NkQxNTc2QkZBMTAwM0ZBQkYyIC8qIEVk
aXRpbmcgKi8sCiAJCQkJQTgzQjc5MTIwQ0NCMDAzRjAwMEIwODI1IC8qIEV2ZW50cyAqLywKIAkJ
CQk4OTg3ODU3NjEyMkNBMURBMDAzQUFCREEgLyogRmlsZUFQSSAqLywKIAkJCQlBODNCNzkwODBD
Q0FGRjJCMDAwQjA4MjUgLyogSFRNTCAqLywKQEAgLTE1OTk3LDE3ICsxNTk3Miw2IEBACiAJCQl0
YWJXaWR0aCA9IDQ7CiAJCQl1c2VzVGFicyA9IDA7CiAJCX07Ci0JCTdCN0Y2ODZEMTU3NkJGQTEw
MDNGQUJGMiAvKiBFZGl0aW5nICovID0gewotCQkJaXNhID0gUEJYR3JvdXA7Ci0JCQljaGlsZHJl
biA9ICgKLQkJCQk3QjM1MzdDMzE1Q0IyQ0I1MDA4M0FCNjkgLyogSlNET01UcmFuc2FjdGlvbi5j
cHAgKi8sCi0JCQkJN0IzNTM3QzQxNUNCMkNCNTAwODNBQjY5IC8qIEpTRE9NVHJhbnNhY3Rpb24u
aCAqLywKLQkJCQk3QjFFQTBDQzE1NzZDNUI1MDA2MDE3N0QgLyogSlNVbmRvTWFuYWdlci5jcHAg
Ki8sCi0JCQkJN0IxRUEwQ0QxNTc2QzVCNTAwNjAxNzdEIC8qIEpTVW5kb01hbmFnZXIuaCAqLywK
LQkJCSk7Ci0JCQluYW1lID0gRWRpdGluZzsKLQkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7Ci0J
CX07CiAJCTdFRTY4NDczMTJEMjZFNTUwMEU3OTQxNSAvKiBjZiAqLyA9IHsKIAkJCWlzYSA9IFBC
WEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCkBAIC0xNzI0Nyw5ICsxNzIxMSw2IEBACiAJCQkJQ0VD
QURGQzMxNTM3NzhGRjAwRTM3MDY4IC8qIERpY3RhdGlvbkFsdGVybmF0aXZlLmggKi8sCiAJCQkJ
Q0VDQURGQzQxNTM3NzhGRjAwRTM3MDY4IC8qIERpY3RhdGlvbkNvbW1hbmQuY3BwICovLAogCQkJ
CUNFQ0FERkM1MTUzNzc4RkYwMEUzNzA2OCAvKiBEaWN0YXRpb25Db21tYW5kLmggKi8sCi0JCQkJ
N0I4QzFGRTYxNUNDRTNDMjAwNEIzNURDIC8qIERPTVRyYW5zYWN0aW9uLmlkbCAqLywKLQkJCQk3
QkQxMTdFOTE1QjhEQjAxMDBDOTc0QTMgLyogRE9NVHJhbnNhY3Rpb25TdGVwLmNwcCAqLywKLQkJ
CQk3QkQxMTdFQTE1QjhEQjAxMDBDOTc0QTMgLyogRE9NVHJhbnNhY3Rpb25TdGVwLmggKi8sCiAJ
CQkJOTMzMDlEOTMwOTlFNjQ5MTAwNTZFNTgxIC8qIEVkaXRBY3Rpb24uaCAqLywKIAkJCQk5MzMw
OUQ5NDA5OUU2NDkxMDA1NkU1ODEgLyogRWRpdENvbW1hbmQuY3BwICovLAogCQkJCTkzMzA5RDk1
MDk5RTY0OTEwMDU2RTU4MSAvKiBFZGl0Q29tbWFuZC5oICovLApAQCAtMTczMzksOSArMTczMDAs
NiBAQAogCQkJCTkzMzA5RENEMDk5RTY0OTEwMDU2RTU4MSAvKiBUZXh0SXRlcmF0b3IuaCAqLywK
IAkJCQk5MzMwOURDQTA5OUU2NDkxMDA1NkU1ODEgLyogVHlwaW5nQ29tbWFuZC5jcHAgKi8sCiAJ
CQkJOTMzMDlEQ0IwOTlFNjQ5MTAwNTZFNTgxIC8qIFR5cGluZ0NvbW1hbmQuaCAqLywKLQkJCQk3
QjkxODRDRjE1NzU4RTQyMDA5MkFBOTMgLyogVW5kb01hbmFnZXIuY3BwICovLAotCQkJCTdCOTE4
NEQwMTU3NThFNDIwMDkyQUE5MyAvKiBVbmRvTWFuYWdlci5oICovLAotCQkJCTdCOTE4NEQxMTU3
NThFNDIwMDkyQUE5MyAvKiBVbmRvTWFuYWdlci5pZGwgKi8sCiAJCQkJOUIyRDhBNzgxNDk5N0ND
RjAwRUNFRjNFIC8qIFVuZG9TdGVwLmggKi8sCiAJCQkJRDA4NkZFOTcwOUQ1M0FBQjAwNUJDNzRE
IC8qIFVubGlua0NvbW1hbmQuY3BwICovLAogCQkJCUQwODZGRTk2MDlENTNBQUIwMDVCQzc0RCAv
KiBVbmxpbmtDb21tYW5kLmggKi8sCkBAIC0yMDI3MSw4ICsyMDIyOSw2IEBACiAJCQkJMzE2MDIz
RUYxNTMyQzQwQzAwRDUwRkY0IC8qIERpY3Rpb25hcnkuaCAqLywKIAkJCQlCQzUzREE2MTExNDMx
NEJEMDAwRDgxN0UgLyogRE9NT2JqZWN0SGFzaFRhYmxlTWFwLmNwcCAqLywKIAkJCQlCQzUzREE1
RjExNDMxNDFBMDAwRDgxN0UgLyogRE9NT2JqZWN0SGFzaFRhYmxlTWFwLmggKi8sCi0JCQkJN0JC
MzVBRTkxNUNDRERGNDAwRjJBNjQzIC8qIERPTVRyYW5zYWN0aW9uLmNwcCAqLywKLQkJCQk3QkIz
NUFFQTE1Q0NEREY0MDBGMkE2NDMgLyogRE9NVHJhbnNhY3Rpb24uaCAqLywKIAkJCQlCQzUzREE0
NzExNDMxMzREMDAwRDgxN0UgLyogRE9NV3JhcHBlcldvcmxkLmNwcCAqLywKIAkJCQlCQzUzREEy
RDExNDMxMjFFMDAwRDgxN0UgLyogRE9NV3JhcHBlcldvcmxkLmggKi8sCiAJCQkJMTQzMkU4NDgw
QzUxNDkzRjAwQjE1MDBGIC8qIEdDQ29udHJvbGxlci5jcHAgKi8sCkBAIC0yMDUxNyw3ICsyMDQ3
Myw2IEBACiAJCQkJMDc4NDYzODQxNDVCMUI4RTAwQTU4REYxIC8qIEpTVHJhY2tDdXN0b20uaCAq
LywKIAkJCQkwN0I1QTMwQTE0Njg3Qjg0MDBBODFFQ0UgLyogSlNUcmFja0V2ZW50Q3VzdG9tLmNw
cCAqLywKIAkJCQk1MTZCQjc5MjBDRTkxRTY4MDA1MTJGNzkgLyogSlNUcmVlV2Fsa2VyQ3VzdG9t
LmNwcCAqLywKLQkJCQk3QjA5OTJGNDE1QUNGMUFEMDBFRDZEMjAgLyogSlNVbmRvTWFuYWdlckN1
c3RvbS5jcHAgKi8sCiAJCQkJNDlFRUQxNEMxMDUxOTcxQTAwMDk5RkFCIC8qIEpTV2ViR0xSZW5k
ZXJpbmdDb250ZXh0Q3VzdG9tLmNwcCAqLywKIAkJCQkzMTlFNjg4NjEzMjdDOTExMDA0QUM5MUEg
LyogSlNXZWJLaXRBbmltYXRpb25DdXN0b20uY3BwICovLAogCQkJCTMxOTQ2MjMxMTMwMjJGNjUw
MDRCQjNGOCAvKiBKU1dlYktpdEFuaW1hdGlvbkxpc3RDdXN0b20uY3BwICovLApAQCAtMjMzNjYs
OCArMjMzMjEsNiBAQAogCQkJCTE4ODYwNEI0MEYyRTY1NEEwMDBCNjQ0MyAvKiBET01UaW1lci5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJMDVGRDY5RTAxMjg0NUQ0MzAwQjJCRUIzIC8qIERPTVRpbWVT
dGFtcC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNzZGQzJCMEMxMjM3MERBMDAwNkE5OTFBIC8qIERP
TVRva2VuTGlzdC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJN0JCMzVBRUMxNUNDRERGNDAwRjJBNjQz
IC8qIERPTVRyYW5zYWN0aW9uLmggaW4gSGVhZGVycyAqLywKLQkJCQk3QkQxMTdFQzE1QjhEQjAx
MDBDOTc0QTMgLyogRE9NVHJhbnNhY3Rpb25TdGVwLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzFB
MzdCRTA5N0M3MTVGMDAxOUYzRDggLyogRE9NVHJhdmVyc2FsLmggaW4gSGVhZGVycyAqLywKIAkJ
CQk4NTUyNkNEMjBBQjBCN0Q5MDAwMzAyRUEgLyogRE9NVHJlZVdhbGtlci5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJODUwQjQxQzMwQUQ5RTdFNzAwQTZFRDRGIC8qIERPTVRyZWVXYWxrZXJJbnRlcm5h
bC5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNDAxOSw3ICsyMzk3Miw2IEBACiAJCQkJQzUxMzdDRjMx
MUE1ODM3ODAwNEFEQjk5IC8qIEpTRE9NU3RyaW5nTGlzdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
QkM2NDY0OTgxMUQ4MjM0OTAwNjQ1NUIwIC8qIEpTRE9NU3RyaW5nTWFwLmggaW4gSGVhZGVycyAq
LywKIAkJCQk3Njk0NTYzRDEyMTREOTdDMDAwN0NCQUUgLyogSlNET01Ub2tlbkxpc3QuaCBpbiBI
ZWFkZXJzICovLAotCQkJCTdCMzUzN0M2MTVDQjJDQjUwMDgzQUI2OSAvKiBKU0RPTVRyYW5zYWN0
aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQkyRTM3RTAwNjEyREJDNUE0MDBBNkIyMzMgLyogSlNE
T01VUkwuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDNjkzMjc0MEQ3RTI5MzkwMEFFNDREMSAvKiBK
U0RPTVdpbmRvd0Jhc2UuaCBpbiBIZWFkZXJzICovLAogCQkJCTY1MkZCQkJDMERFMjdDQjYwMDAx
RDM4NiAvKiBKU0RPTVdpbmRvd0N1c3RvbS5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNDQxNCw3ICsy
NDM2Niw2IEBACiAJCQkJNDlFRUNGMEIxMDUwNzBDNDAwMDk5RkFCIC8qIEpTVWludDMyQXJyYXku
aCBpbiBIZWFkZXJzICovLAogCQkJCTQ5RUVDRjA5MTA1MDcwQzQwMDA5OUZBQiAvKiBKU1VpbnQ4
QXJyYXkuaCBpbiBIZWFkZXJzICovLAogCQkJCTkxMDg5RDMyMTRDMzM2MDAwMDVBRkM0OSAvKiBK
U1VpbnQ4Q2xhbXBlZEFycmF5LmggaW4gSGVhZGVycyAqLywKLQkJCQk3QjFFQTBDRjE1NzZDNUI1
MDA2MDE3N0QgLyogSlNVbmRvTWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMTVDNzcwOTMx
MDBEM0NBODAwNUJBMjY3IC8qIEpTVmFsaWRpdHlTdGF0ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
RkQ4MkQ3RjgxM0Q0QzhCRDAwNEU0MzcyIC8qIEpTV2F2ZVNoYXBlck5vZGUuaCBpbiBIZWFkZXJz
ICovLAogCQkJCUZERUE2MjQ3MTUyMTAyRkMwMDQ3OURGMCAvKiBKU1dhdmVUYWJsZS5oIGluIEhl
YWRlcnMgKi8sCkBAIC0yNTQ4Myw3ICsyNTQzNCw2IEBACiAJCQkJOTMzMDlFMUEwOTlFNjQ5MjAw
NTZFNTgxIC8qIFR5cGluZ0NvbW1hbmQuaCBpbiBIZWFkZXJzICovLAogCQkJCTg1MDMxQjRFMEE0
NEVGQzcwMEY5OTJFMCAvKiBVSUV2ZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQk4NTAzMUI0RjBB
NDRFRkM3MDBGOTkyRTAgLyogVUlFdmVudFdpdGhLZXlTdGF0ZS5oIGluIEhlYWRlcnMgKi8sCi0J
CQkJN0I5MTg0RDMxNTc1OEU0MjAwOTJBQTkzIC8qIFVuZG9NYW5hZ2VyLmggaW4gSGVhZGVycyAq
LywKIAkJCQk5QjJEOEE3OTE0OTk3Q0NGMDBFQ0VGM0UgLyogVW5kb1N0ZXAuaCBpbiBIZWFkZXJz
ICovLAogCQkJCUE4NjNFMjAxMTM0MzQxMjAwMDI3NDkyNiAvKiBVbmljb2RlQmlkaS5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJQjJDM0RBNEQwRDAwNkMxRDAwRUY2RjI2IC8qIFVuaWNvZGVSYW5nZS5o
IGluIEhlYWRlcnMgKi8sCkBAIC0yNjY3Miw4ICsyNjYyMiw2IEBACiAJCQkJOTMzQTE0QUEwQjdE
MUQwOTAwQTUzRkZEIC8qIERPTVRleHRFdmVudC5tbSBpbiBTb3VyY2VzICovLAogCQkJCTE4ODYw
NEIzMEYyRTY1NEEwMDBCNjQ0MyAvKiBET01UaW1lci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk3
NkZDMkIwQjEyMzcwREEwMDA2QTk5MUEgLyogRE9NVG9rZW5MaXN0LmNwcCBpbiBTb3VyY2VzICov
LAotCQkJCTdCQjM1QUVCMTVDQ0RERjQwMEYyQTY0MyAvKiBET01UcmFuc2FjdGlvbi5jcHAgaW4g
U291cmNlcyAqLywKLQkJCQk3QkQxMTdFQjE1QjhEQjAxMDBDOTc0QTMgLyogRE9NVHJhbnNhY3Rp
b25TdGVwLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTg1NTI2Q0QzMEFCMEI3REEwMDAzMDJFQSAv
KiBET01UcmVlV2Fsa2VyLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJODVDN0Y0OTIwQUFGNzlEQzAw
NDAxNEREIC8qIERPTVVJRXZlbnQubW0gaW4gU291cmNlcyAqLywKIAkJCQkyRTM3REZEQTEyREJB
RkI4MDBBNkIyMzMgLyogRE9NVVJMLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMjcyNjcsNyArMjcy
MTUsNiBAQAogCQkJCUJDNjQ2NDlDMTFEODIzOEMwMDY0NTVCMCAvKiBKU0RPTVN0cmluZ01hcEN1
c3RvbS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk3Njk0NTYzQzEyMTREOTdDMDAwN0NCQUUgLyog
SlNET01Ub2tlbkxpc3QuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMTRFMEJDNTYxMzYxNDhBODAw
MkFEMTJFIC8qIEpTRE9NVG9rZW5MaXN0Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCTdC
MzUzN0M1MTVDQjJDQjUwMDgzQUI2OSAvKiBKU0RPTVRyYW5zYWN0aW9uLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCTJFMzdFMDA1MTJEQkM1QTQwMEE2QjIzMyAvKiBKU0RPTVVSTC5jcHAgaW4gU291
cmNlcyAqLywKIAkJCQkxNDAzQkEwQzA5RUIxOEM3MDA3OTdDN0YgLyogSlNET01XaW5kb3cuY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJQkM2OTMyNzMwRDdFMjkzOTAwQUU0NEQxIC8qIEpTRE9NV2lu
ZG93QmFzZS5jcHAgaW4gU291cmNlcyAqLywKQEAgLTI3NzM0LDggKzI3NjgxLDYgQEAKIAkJCQk0
OUVFQ0YwQTEwNTA3MEM0MDAwOTlGQUIgLyogSlNVaW50MzJBcnJheS5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQk0OUVFQ0YwODEwNTA3MEM0MDAwOTlGQUIgLyogSlNVaW50OEFycmF5LmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCTkxMDg5RDMzMTRDMzM2MDUwMDVBRkM0OSAvKiBKU1VpbnQ4Q2xhbXBl
ZEFycmF5LmNwcCBpbiBTb3VyY2VzICovLAotCQkJCTdCMUVBMENFMTU3NkM1QjUwMDYwMTc3RCAv
KiBKU1VuZG9NYW5hZ2VyLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCTdCMDk5MkY1MTVBQ0YxQUQw
MEVENkQyMCAvKiBKU1VuZG9NYW5hZ2VyQ3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTE1
Qzc3MDk0MTAwRDNDQTgwMDVCQTI2NyAvKiBKU1ZhbGlkaXR5U3RhdGUuY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJOTcwM0UxQkYxNURDNEUzNzAwMUYyNEM4IC8qIEpTVm9pZENhbGxiYWNrLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCUZEODJEN0Y3MTNENEM4QkQwMDRFNDM3MiAvKiBKU1dhdmVTaGFw
ZXJOb2RlLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMjg2MjUsNyArMjg1NzAsNiBAQAogCQkJCTkz
MzA5RTE5MDk5RTY0OTIwMDU2RTU4MSAvKiBUeXBpbmdDb21tYW5kLmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCTg1MDMxQjREMEE0NEVGQzcwMEY5OTJFMCAvKiBVSUV2ZW50LmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCTkzMzU0QTNDMEIyNEY4QzkwMDNGNkRFQSAvKiBVSUV2ZW50V2l0aEtleVN0YXRl
LmNwcCBpbiBTb3VyY2VzICovLAotCQkJCTdCOTE4NEQyMTU3NThFNDIwMDkyQUE5MyAvKiBVbmRv
TWFuYWdlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCMkMzREE0QzBEMDA2QzFEMDBFRjZGMjYg
LyogVW5pY29kZVJhbmdlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUQwODZGRTk5MDlENTNBQUIw
MDVCQzc0RCAvKiBVbmxpbmtDb21tYW5kLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUY1NUIzRERE
MTI1MUYxMkQwMDNFRjI2OSAvKiBVUkxJbnB1dFR5cGUuY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9ET01UcmFuc2FjdGlvbi5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9ET01UcmFuc2FjdGlvbi5jcHAKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IGY0MzgyMmFhNjUyOTQxOGZjYzcyN2I2MGI3NzExZTc5NmVkY2My
MTIuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvRE9NVHJhbnNhY3Rpb24uY3BwCisrKyAvZGV2L251bGwKQEAg
LTEsNjAgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBHb29nbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUg
bWV0OgotICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUKLSAqIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBH
T09HTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQotICogRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgR09PR0xFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFO
WQotICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UiBDT05TRVFVRU5USUFMIERBTUFHRVMKLSAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKLSAqIExPU1Mg
T0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTgotICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4g
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTCi0gKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUoVU5E
T19NQU5BR0VSKQotCi0jaW5jbHVkZSAiRE9NVHJhbnNhY3Rpb24uaCIKLQotbmFtZXNwYWNlIFdl
YkNvcmUgewotICAgIAotRE9NVHJhbnNhY3Rpb246OkRPTVRyYW5zYWN0aW9uKCkKLSAgICA6IG1f
dW5kb01hbmFnZXIoMCkKLXsKLX0KLQotUGFzc1JlZlB0cjxET01UcmFuc2FjdGlvbj4gRE9NVHJh
bnNhY3Rpb246OmNyZWF0ZSgpCi17Ci0gICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBET01UcmFuc2Fj
dGlvbigpKTsKLX0KLQotdm9pZCBET01UcmFuc2FjdGlvbjo6YXBwbHkoKQotewotICAgIC8vIEZJ
WE1FOiBpbXBsZW1lbnQgSlNDIGJpbmRpbmdzCi19Ci0KLXZvaWQgRE9NVHJhbnNhY3Rpb246OnVu
YXBwbHkoKQotewotICAgIC8vIEZJWE1FOiBpbXBsZW1lbnQgSlNDIGJpbmRpbmdzCi19Ci0KLXZv
aWQgRE9NVHJhbnNhY3Rpb246OnJlYXBwbHkoKQotewotICAgIC8vIEZJWE1FOiBpbXBsZW1lbnQg
SlNDIGJpbmRpbmdzCi19Ci0KLX0KLQotI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9ET01UcmFuc2FjdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvRE9NVHJhbnNhY3Rpb24uaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNDUxMjVi
ZTExNzIyYzNlZjQxZTZjYTkzMTE4YjMyNzcwZjRhZTI2MC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9ET01U
cmFuc2FjdGlvbi5oCisrKyAvZGV2L251bGwKQEAgLTEsNjUgKzAsMCBAQAotLyoKLSAqIENvcHly
aWdodCAoQykgMjAxMiBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
Ci0gKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKLSAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBHT09HTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
IEFSRQotICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgR09PR0xFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKLSAq
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKLSAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgotICogQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCi0gKiBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVm
IERPTVRyYW5zYWN0aW9uX2gKLSNkZWZpbmUgRE9NVHJhbnNhY3Rpb25faAotCi0jaWYgRU5BQkxF
KFVORE9fTUFOQUdFUikKLQotI2luY2x1ZGUgIkRPTVRyYW5zYWN0aW9uU3RlcC5oIgotI2luY2x1
ZGUgIlVuZG9TdGVwLmgiCi0jaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgotCi1uYW1lc3BhY2UgV2Vi
Q29yZSB7Ci0KLWNsYXNzIFVuZG9NYW5hZ2VyOwotCi1jbGFzcyBET01UcmFuc2FjdGlvbiA6IHB1
YmxpYyBVbmRvU3RlcCB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8RE9NVHJhbnNh
Y3Rpb24+IGNyZWF0ZSgpOwotCi0gICAgdm9pZCBhcHBseSgpOwotICAgIHZpcnR1YWwgdm9pZCB1
bmFwcGx5KCkgT1ZFUlJJREU7Ci0gICAgdmlydHVhbCB2b2lkIHJlYXBwbHkoKSBPVkVSUklERTsK
LQotICAgIHZpcnR1YWwgRWRpdEFjdGlvbiBlZGl0aW5nQWN0aW9uKCkgY29uc3QgT1ZFUlJJREUg
eyByZXR1cm4gRWRpdEFjdGlvblVuc3BlY2lmaWVkOyB9Ci0gICAgdmlydHVhbCBib29sIGlzRE9N
VHJhbnNhY3Rpb24oKSBjb25zdCBPVkVSUklERSB7IHJldHVybiB0cnVlOyB9Ci0KLSAgICBVbmRv
TWFuYWdlciogdW5kb01hbmFnZXIoKSBjb25zdCB7IHJldHVybiBtX3VuZG9NYW5hZ2VyOyB9Ci0g
ICAgdm9pZCBzZXRVbmRvTWFuYWdlcihVbmRvTWFuYWdlciogdW5kb01hbmFnZXIpIHsgbV91bmRv
TWFuYWdlciA9IHVuZG9NYW5hZ2VyOyB9Ci0KLSAgICB2b2lkIGFkZFRyYW5zYWN0aW9uU3RlcChQ
YXNzUmVmUHRyPERPTVRyYW5zYWN0aW9uU3RlcD4gc3RlcCkgeyBtX3RyYW5zYWN0aW9uU3RlcHMu
YXBwZW5kKHN0ZXApOyB9Ci0KLXByaXZhdGU6Ci0gICAgRE9NVHJhbnNhY3Rpb24oKTsKLQotICAg
IFVuZG9NYW5hZ2VyKiBtX3VuZG9NYW5hZ2VyOwotICAgIFZlY3RvcjxSZWZQdHI8RE9NVHJhbnNh
Y3Rpb25TdGVwPiA+IG1fdHJhbnNhY3Rpb25TdGVwczsKLX07Ci0KLX0KLQotI2VuZGlmCi0KLSNl
bmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNCaW5kaW5nc0Fs
bEluT25lLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQmluZGluZ3NBbGxJbk9u
ZS5jcHAKaW5kZXggMzM2MTliNTM1Zjc0MTg1ZTdkMDQ4YTc4NmVlOWRjOThhZDkzMDQ5ZC4uYjAy
ZmE2OGQxOGU2MTI3OWQ4ZDYwYWNjMjg5ZmZiNDJhODA4Y2FkOSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNCaW5kaW5nc0FsbEluT25lLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0JpbmRpbmdzQWxsSW5PbmUuY3BwCkBAIC0xNDgsNyArMTQ4
LDYgQEAKICNpbmNsdWRlICJKU1RyYWNrQ3VzdG9tLmNwcCIKICNpbmNsdWRlICJKU1RyYWNrRXZl
bnRDdXN0b20uY3BwIgogI2luY2x1ZGUgIkpTVHJlZVdhbGtlckN1c3RvbS5jcHAiCi0jaW5jbHVk
ZSAiSlNVbmRvTWFuYWdlckN1c3RvbS5jcHAiCiAjaW5jbHVkZSAiSlNXZWJLaXRBbmltYXRpb25D
dXN0b20uY3BwIgogI2luY2x1ZGUgIkpTV2ViS2l0QW5pbWF0aW9uTGlzdEN1c3RvbS5jcHAiCiAj
aW5jbHVkZSAiSlNXZWJLaXRDU1NLZXlmcmFtZVJ1bGVDdXN0b20uY3BwIgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNVbmRvTWFuYWdlckN1c3RvbS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1VuZG9NYW5hZ2VyQ3VzdG9tLmNwcApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggOGZjMDljNTExOWQ5YTgwYTI4YzlmM2FmNTU2NGM5NjQ0MDg5
Zjk3Yy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1VuZG9NYW5hZ2VyQ3VzdG9tLmNwcAorKysgL2Rldi9u
dWxsCkBAIC0xLDQ5ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwot
ICogYXJlIG1ldDoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCi0gKiBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgR09PR0xFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkK
LSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAqIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIEdPT0dMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxF
IEZPUiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCi0gKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Ci0g
KiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04KLSAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UgT0YgVEhJUwotICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotCi0jaWYgRU5B
QkxFKFVORE9fTUFOQUdFUikKLQotI2luY2x1ZGUgIkpTVW5kb01hbmFnZXIuaCIKLQotdXNpbmcg
bmFtZXNwYWNlIEpTQzsKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1KU1ZhbHVlIEpTVW5kb01h
bmFnZXI6OnRyYW5zYWN0KEV4ZWNTdGF0ZSopCi17Ci0gICAgLy8gRklYTUU6IGltcGxlbWVudCBK
U0MgYmluZGluZ3MKLSAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKLX0KLQotSlNWYWx1ZSBKU1Vu
ZG9NYW5hZ2VyOjppdGVtKEV4ZWNTdGF0ZSopCi17Ci0gICAgLy8gRklYTUU6IGltcGxlbWVudCBK
U0MgYmluZGluZ3MKLSAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKLX0KLQotfQotCi0jZW5kaWYK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L0RPTVRyYW5zYWN0aW9uLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L0RPTVRyYW5zYWN0aW9uLmNwcApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjI1ZTVhYmI2ZjE3ODhlM2JhZTM2ZmVjNmUxMTY2YjEz
Y2E3N2UzNy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9ET01UcmFuc2FjdGlvbi5jcHAKKysrIC9kZXYvbnVs
bApAQCAtMSwxNTQgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBHb29nbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0g
KiBhcmUgbWV0OgotICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiAgUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKLSAqIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBHT09HTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQot
ICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgR09PR0xFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUg
Rk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKLSAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKLSAq
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTgotICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTCi0gKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAi
RE9NVHJhbnNhY3Rpb24uaCIKLQotI2lmIEVOQUJMRShVTkRPX01BTkFHRVIpCi0KLSNpbmNsdWRl
ICJGcmFtZS5oIgotI2luY2x1ZGUgIlVuZG9NYW5hZ2VyLmgiCi0jaW5jbHVkZSAiVjhET01UcmFu
c2FjdGlvbi5oIgotI2luY2x1ZGUgIlY4SGlkZGVuUHJvcGVydHlOYW1lLmgiCi0jaW5jbHVkZSAi
VjhVbmRvTWFuYWdlci5oIgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIERPTVRyYW5z
YWN0aW9uU2NvcGUgewotcHVibGljOgotICAgIERPTVRyYW5zYWN0aW9uU2NvcGUoRE9NVHJhbnNh
Y3Rpb24qIHRyYW5zYWN0aW9uKQotICAgIHsKLSAgICAgICAgVW5kb01hbmFnZXI6OnNldFJlY29y
ZGluZ0RPTVRyYW5zYWN0aW9uKHRyYW5zYWN0aW9uKTsKLSAgICB9Ci0gICAgCi0gICAgfkRPTVRy
YW5zYWN0aW9uU2NvcGUoKQotICAgIHsKLSAgICAgICAgVW5kb01hbmFnZXI6OnNldFJlY29yZGlu
Z0RPTVRyYW5zYWN0aW9uKDApOwotICAgIH0KLX07Ci0KLURPTVRyYW5zYWN0aW9uOjpET01UcmFu
c2FjdGlvbihjb25zdCBXb3JsZENvbnRleHRIYW5kbGUmIHdvcmxkQ29udGV4dCkKLSAgICA6IG1f
d29ybGRDb250ZXh0KHdvcmxkQ29udGV4dCkKLSAgICAsIG1fdW5kb01hbmFnZXIoMCkKLXsKLX0K
LQotUGFzc1JlZlB0cjxET01UcmFuc2FjdGlvbj4gRE9NVHJhbnNhY3Rpb246OmNyZWF0ZShjb25z
dCBXb3JsZENvbnRleHRIYW5kbGUmIHdvcmxkQ29udGV4dCkKLXsKLSAgICByZXR1cm4gYWRvcHRS
ZWYobmV3IERPTVRyYW5zYWN0aW9uKHdvcmxkQ29udGV4dCkpOwotfQotCi12b2lkIERPTVRyYW5z
YWN0aW9uOjphcHBseSgpCi17Ci0gICAgbV9pc0F1dG9tYXRpYyA9ICFnZXRGdW5jdGlvbigiZXhl
Y3V0ZUF1dG9tYXRpYyIpLklzRW1wdHkoKTsKLSAgICBpZiAoIW1faXNBdXRvbWF0aWMpCi0gICAg
ICAgIGNhbGxGdW5jdGlvbigiZXhlY3V0ZSIpOwotICAgIGVsc2UgewotICAgICAgICBET01UcmFu
c2FjdGlvblNjb3BlIHNjb3BlKHRoaXMpOwotICAgICAgICBjYWxsRnVuY3Rpb24oImV4ZWN1dGVB
dXRvbWF0aWMiKTsKLSAgICB9Ci19Ci0KLXZvaWQgRE9NVHJhbnNhY3Rpb246OnVuYXBwbHkoKQot
ewotICAgIGlmICghbV9pc0F1dG9tYXRpYykKLSAgICAgICAgY2FsbEZ1bmN0aW9uKCJ1bmRvIik7
Ci0gICAgZWxzZSB7Ci0gICAgICAgIGZvciAoc2l6ZV90IGkgPSBtX3RyYW5zYWN0aW9uU3RlcHMu
c2l6ZSgpOyBpID4gMDsgLS1pKQotICAgICAgICAgICAgbV90cmFuc2FjdGlvblN0ZXBzW2kgLSAx
XS0+dW5hcHBseSgpOwotICAgIH0KLQotICAgIGlmIChtX3VuZG9NYW5hZ2VyKQotICAgICAgICBt
X3VuZG9NYW5hZ2VyLT5yZWdpc3RlclJlZG9TdGVwKHRoaXMpOwotfQotCi12b2lkIERPTVRyYW5z
YWN0aW9uOjpyZWFwcGx5KCkKLXsKLSAgICBpZiAoIW1faXNBdXRvbWF0aWMpCi0gICAgICAgIGNh
bGxGdW5jdGlvbigicmVkbyIpOwotICAgIGVsc2UgewotICAgICAgICBmb3IgKHNpemVfdCBpID0g
MDsgaSA8IG1fdHJhbnNhY3Rpb25TdGVwcy5zaXplKCk7ICsraSkKLSAgICAgICAgICAgIG1fdHJh
bnNhY3Rpb25TdGVwc1tpXS0+cmVhcHBseSgpOwotICAgIH0KLQotICAgIGlmIChtX3VuZG9NYW5h
Z2VyKQotICAgICAgICBtX3VuZG9NYW5hZ2VyLT5yZWdpc3RlclVuZG9TdGVwKHRoaXMpOwotfQot
Ci12ODo6SGFuZGxlPHY4OjpWYWx1ZT4gRE9NVHJhbnNhY3Rpb246OmRhdGEoKQotewotICAgIHY4
OjpIYW5kbGU8djg6Ok9iamVjdD4gd3JhcHBlciA9IHY4OjpIYW5kbGU8djg6Ok9iamVjdD46OkNh
c3QodG9WOCh0aGlzKSk7Ci0gICAgaWYgKHdyYXBwZXIuSXNFbXB0eSgpKQotICAgICAgICByZXR1
cm4gdjg6OkhhbmRsZTx2ODo6VmFsdWU+KCk7Ci0gICAgcmV0dXJuIHdyYXBwZXItPkdldEhpZGRl
blZhbHVlKFY4SGlkZGVuUHJvcGVydHlOYW1lOjpkb21UcmFuc2FjdGlvbkRhdGEoKSk7Ci19Ci0K
LXZvaWQgRE9NVHJhbnNhY3Rpb246OnNldERhdGEodjg6OkhhbmRsZTx2ODo6VmFsdWU+IG5ld0Rh
dGEpCi17Ci0gICAgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiB3cmFwcGVyID0gdjg6OkhhbmRsZTx2
ODo6T2JqZWN0Pjo6Q2FzdCh0b1Y4KHRoaXMpKTsKLSAgICBpZiAod3JhcHBlci5Jc0VtcHR5KCkp
Ci0gICAgICAgIHJldHVybjsKLSAgICB3cmFwcGVyLT5TZXRIaWRkZW5WYWx1ZShWOEhpZGRlblBy
b3BlcnR5TmFtZTo6ZG9tVHJhbnNhY3Rpb25EYXRhKCksIG5ld0RhdGEpOwotfQotCi12ODo6SGFu
ZGxlPHY4OjpGdW5jdGlvbj4gRE9NVHJhbnNhY3Rpb246OmdldEZ1bmN0aW9uKGNvbnN0IGNoYXIq
IHByb3BlcnR5TmFtZSkKLXsKLSAgICB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gZGljdGlvbmFyeSA9
IGRhdGEoKTsKLSAgICBpZiAoZGljdGlvbmFyeS5Jc0VtcHR5KCkgfHwgIWRpY3Rpb25hcnktPklz
T2JqZWN0KCkpCi0gICAgICAgIHJldHVybiB2ODo6SGFuZGxlPHY4OjpGdW5jdGlvbj4oKTsKLSAg
ICAKLSAgICB2ODo6TG9jYWw8djg6OlZhbHVlPiBmdW5jdGlvbiA9IHY4OjpIYW5kbGU8djg6Ok9i
amVjdD46OkNhc3QoZGljdGlvbmFyeSktPkdldCh2ODo6U3RyaW5nOjpOZXdTeW1ib2wocHJvcGVy
dHlOYW1lKSk7Ci0gICAgaWYgKGZ1bmN0aW9uLklzRW1wdHkoKSB8fCAhZnVuY3Rpb24tPklzRnVu
Y3Rpb24oKSkKLSAgICAgICAgcmV0dXJuIHY4OjpIYW5kbGU8djg6OkZ1bmN0aW9uPigpOwotCi0g
ICAgcmV0dXJuIHY4OjpIYW5kbGU8djg6OkZ1bmN0aW9uPjo6Q2FzdChmdW5jdGlvbik7Ci19Ci0K
LXZvaWQgRE9NVHJhbnNhY3Rpb246OmNhbGxGdW5jdGlvbihjb25zdCBjaGFyKiBwcm9wZXJ0eU5h
bWUpCi17Ci0gICAgaWYgKCFtX3VuZG9NYW5hZ2VyIHx8ICFtX3VuZG9NYW5hZ2VyLT5kb2N1bWVu
dCgpKQotICAgICAgICByZXR1cm47Ci0KLSAgICBGcmFtZSogZnJhbWUgPSBtX3VuZG9NYW5hZ2Vy
LT5kb2N1bWVudCgpLT5mcmFtZSgpOwotICAgIGlmICghZnJhbWUgfHwgIWZyYW1lLT5zY3JpcHQo
KS0+Y2FuRXhlY3V0ZVNjcmlwdHMoQWJvdXRUb0V4ZWN1dGVTY3JpcHQpKQotICAgICAgICByZXR1
cm47Ci0KLSAgICB2ODo6SGFuZGxlPHY4OjpGdW5jdGlvbj4gZnVuY3Rpb24gPSBnZXRGdW5jdGlv
bihwcm9wZXJ0eU5hbWUpOwotICAgIGlmIChmdW5jdGlvbi5Jc0VtcHR5KCkpCi0gICAgICAgIHJl
dHVybjsKLQotICAgIHY4OjpMb2NhbDx2ODo6Q29udGV4dD4gdjhDb250ZXh0ID0gbV93b3JsZENv
bnRleHQuYWRqdXN0ZWRDb250ZXh0KGZyYW1lLT5zY3JpcHQoKSk7Ci0gICAgaWYgKHY4Q29udGV4
dC5Jc0VtcHR5KCkpCi0gICAgICAgIHJldHVybjsKLQotICAgIHY4OjpIYW5kbGU8djg6Ok9iamVj
dD4gcmVjZWl2ZXIgPSB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0KHRvVjgobV91bmRvTWFu
YWdlcikpOwotICAgIGlmIChyZWNlaXZlci5Jc0VtcHR5KCkpCi0gICAgICAgIHJldHVybjsKLSAg
ICB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gcGFyYW1ldGVyc1swXSA9IHsgfTsKLSAgICBmcmFtZS0+
c2NyaXB0KCktPmNhbGxGdW5jdGlvbihmdW5jdGlvbiwgcmVjZWl2ZXIsIDAsIHBhcmFtZXRlcnMp
OwotfQotCi19Ci0KLSNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
djgvRE9NVHJhbnNhY3Rpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L0RPTVRyYW5z
YWN0aW9uLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDk2YTFmMWQyZWFmYjAwZTZj
ZGYzNTcxNzFkN2Y5YWIyZjZiZGVlNmIuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvRE9NVHJhbnNhY3Rpb24u
aAorKysgL2Rldi9udWxsCkBAIC0xLDczICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0Ci0gKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgR09PR0xFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJ
UycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAqIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEdPT0dMRSBJTkMuIE9SIElUUyBDT05UUklCVVRP
UlMgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCi0gKiAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7Ci0gKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KLSAqIEFOWSBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0g
KiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUwotICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBET01UcmFuc2Fj
dGlvbl9oCi0jZGVmaW5lIERPTVRyYW5zYWN0aW9uX2gKLQotI2lmIEVOQUJMRShVTkRPX01BTkFH
RVIpCi0KLSNpbmNsdWRlICJET01UcmFuc2FjdGlvblN0ZXAuaCIKLSNpbmNsdWRlICJVbmRvU3Rl
cC5oIgotI2luY2x1ZGUgIldvcmxkQ29udGV4dEhhbmRsZS5oIgotI2luY2x1ZGUgPHd0Zi9SZWZQ
dHIuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBVbmRvTWFuYWdlcjsKLQotY2xh
c3MgRE9NVHJhbnNhY3Rpb24gOiBwdWJsaWMgVW5kb1N0ZXAgewotcHVibGljOgotICAgIHN0YXRp
YyBQYXNzUmVmUHRyPERPTVRyYW5zYWN0aW9uPiBjcmVhdGUoY29uc3QgV29ybGRDb250ZXh0SGFu
ZGxlJik7Ci0KLSAgICB2b2lkIGFwcGx5KCk7Ci0gICAgdmlydHVhbCB2b2lkIHVuYXBwbHkoKSBP
VkVSUklERTsKLSAgICB2aXJ0dWFsIHZvaWQgcmVhcHBseSgpIE9WRVJSSURFOwotCi0gICAgdmly
dHVhbCBFZGl0QWN0aW9uIGVkaXRpbmdBY3Rpb24oKSBjb25zdCBPVkVSUklERSB7IHJldHVybiBF
ZGl0QWN0aW9uVW5zcGVjaWZpZWQ7IH0KLSAgICB2aXJ0dWFsIGJvb2wgaXNET01UcmFuc2FjdGlv
bigpIGNvbnN0IE9WRVJSSURFIHsgcmV0dXJuIHRydWU7IH0KLQotICAgIHY4OjpIYW5kbGU8djg6
OlZhbHVlPiBkYXRhKCk7Ci0gICAgdm9pZCBzZXREYXRhKHY4OjpIYW5kbGU8djg6OlZhbHVlPik7
Ci0KLSAgICBVbmRvTWFuYWdlciogdW5kb01hbmFnZXIoKSBjb25zdCB7IHJldHVybiBtX3VuZG9N
YW5hZ2VyOyB9Ci0gICAgdm9pZCBzZXRVbmRvTWFuYWdlcihVbmRvTWFuYWdlciogdW5kb01hbmFn
ZXIpIHsgbV91bmRvTWFuYWdlciA9IHVuZG9NYW5hZ2VyOyB9Ci0KLSAgICB2b2lkIGFkZFRyYW5z
YWN0aW9uU3RlcChQYXNzUmVmUHRyPERPTVRyYW5zYWN0aW9uU3RlcD4gc3RlcCkgeyBtX3RyYW5z
YWN0aW9uU3RlcHMuYXBwZW5kKHN0ZXApOyB9Ci0KLXByaXZhdGU6Ci0gICAgRE9NVHJhbnNhY3Rp
b24oY29uc3QgV29ybGRDb250ZXh0SGFuZGxlJik7Ci0gICAgdjg6OkhhbmRsZTx2ODo6RnVuY3Rp
b24+IGdldEZ1bmN0aW9uKGNvbnN0IGNoYXIqKTsKLSAgICB2b2lkIGNhbGxGdW5jdGlvbihjb25z
dCBjaGFyKik7Ci0KLSAgICBXb3JsZENvbnRleHRIYW5kbGUgbV93b3JsZENvbnRleHQ7Ci0gICAg
VW5kb01hbmFnZXIqIG1fdW5kb01hbmFnZXI7Ci0gICAgYm9vbCBtX2lzQXV0b21hdGljOwotICAg
IFZlY3RvcjxSZWZQdHI8RE9NVHJhbnNhY3Rpb25TdGVwPiA+IG1fdHJhbnNhY3Rpb25TdGVwczsK
LX07Ci0KLX0KLQotI2VuZGlmCi0KLSNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvdjgvVjhIaWRkZW5Qcm9wZXJ0eU5hbWUuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3Y4L1Y4SGlkZGVuUHJvcGVydHlOYW1lLmgKaW5kZXggNTQyYzhlYTc5N2Y4ODc4Mjc3NWUz
OTA4NTRlYzI0MzE0NmI5YzY3NS4uMjMxMTM4YmVkYzE3NzI1NjgxYzVhMWYyYmQ0YTBjNjU1NTlm
ZTQ3MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhIaWRkZW5Qcm9w
ZXJ0eU5hbWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEhpZGRlblByb3Bl
cnR5TmFtZS5oCkBAIC00MCw3ICs0MCw2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICBWKGRv
Y3VtZW50KSBcCiAgICAgVihkb21TdHJpbmdNYXApIFwKICAgICBWKGRvbVRva2VuTGlzdCkgXAot
ICAgIFYoZG9tVHJhbnNhY3Rpb25EYXRhKSBcCiAgICAgVihldmVudCkgXAogICAgIFYobGlzdGVu
ZXIpIFwKICAgICBWKG93bmVyTm9kZSkgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvdjgvY3VzdG9tL1Y4RE9NVHJhbnNhY3Rpb25DdXN0b20uY3BwIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RE9NVHJhbnNhY3Rpb25DdXN0b20uY3BwCmRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzMTNiYzhiOTg4ZTVhNzZiY2U5ODIwMjgyMDk0N2I5MzM2
MzYzYmZiLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERPTVRyYW5zYWN0aW9uQ3VzdG9tLmNw
cAorKysgL2Rldi9udWxsCkBAIC0xLDUwICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0Ci0gKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgR09PR0xFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJ
UycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAqIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEdPT0dMRSBJTkMuIE9SIElUUyBDT05UUklCVVRP
UlMgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCi0gKiAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7Ci0gKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KLSAqIEFOWSBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0g
KiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUwotICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5o
IgotCi0jaWYgRU5BQkxFKFVORE9fTUFOQUdFUikKLQotI2luY2x1ZGUgIlY4RE9NVHJhbnNhY3Rp
b24uaCIKLQotI2luY2x1ZGUgIkRPTVRyYW5zYWN0aW9uLmgiCi0KLW5hbWVzcGFjZSBXZWJDb3Jl
IHsKLQotdm9pZCBWOERPTVRyYW5zYWN0aW9uOjp2aXNpdERPTVdyYXBwZXIoRE9NRGF0YVN0b3Jl
KiBzdG9yZSwgdm9pZCogb2JqZWN0LCB2ODo6UGVyc2lzdGVudDx2ODo6T2JqZWN0PiB3cmFwcGVy
KQotewotICAgIERPTVRyYW5zYWN0aW9uKiB0cmFuc2FjdGlvbiA9IHN0YXRpY19jYXN0PERPTVRy
YW5zYWN0aW9uKj4ob2JqZWN0KTsKLSAgICBVbmRvTWFuYWdlciogdW5kb01hbmFnZXIgPSB0cmFu
c2FjdGlvbi0+dW5kb01hbmFnZXIoKTsKLSAgICBpZiAoIXVuZG9NYW5hZ2VyKQotICAgICAgICBy
ZXR1cm47Ci0gICAgdjg6OlBlcnNpc3RlbnQ8djg6Ok9iamVjdD4gdW5kb01hbmFnZXJXcmFwcGVy
ID0gc3RvcmUtPmRvbU9iamVjdE1hcCgpLmdldCh1bmRvTWFuYWdlcik7Ci0gICAgaWYgKCF1bmRv
TWFuYWdlcldyYXBwZXIuSXNFbXB0eSgpKSB7Ci0gICAgICAgIHY4OjpQZXJzaXN0ZW50PHY4OjpW
YWx1ZT4gdmFsdWUgPSB3cmFwcGVyOwotICAgICAgICB2ODo6Vjg6OkFkZEltcGxpY2l0UmVmZXJl
bmNlcyh1bmRvTWFuYWdlcldyYXBwZXIsICZ2YWx1ZSwgMSk7Ci0gICAgfQotfQotCi19IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvdjgvY3VzdG9tL1Y4VW5kb01hbmFnZXJDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvdjgvY3VzdG9tL1Y4VW5kb01hbmFnZXJDdXN0b20uY3BwCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCA3MWJlMDk1YTcwMjcwYTg0YjQ5NWE3OTBiNTdkMjk4YzllY2FjNTg0
Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOFVuZG9NYW5hZ2VyQ3VzdG9tLmNwcAorKysgL2Rl
di9udWxsCkBAIC0xLDkzICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwotICogYXJlIG1ldDoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0g
KiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCi0gKiBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgR09PR0xFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBB
TlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAqIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIEdPT0dMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElB
QkxFIEZPUiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCi0gKiAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
Ci0gKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KLSAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UgT0YgVEhJUwotICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotCi0jaWYg
RU5BQkxFKFVORE9fTUFOQUdFUikKLQotI2luY2x1ZGUgIlY4VW5kb01hbmFnZXIuaCIKLQotI2lu
Y2x1ZGUgIkRPTVRyYW5zYWN0aW9uLmgiCi0jaW5jbHVkZSAiRXhjZXB0aW9uQ29kZS5oIgotI2lu
Y2x1ZGUgIlY4RE9NVHJhbnNhY3Rpb24uaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi12ODo6
SGFuZGxlPHY4OjpWYWx1ZT4gVjhVbmRvTWFuYWdlcjo6dHJhbnNhY3RDYWxsYmFjayhjb25zdCB2
ODo6QXJndW1lbnRzJiBhcmdzKQotewotICAgIElOQ19TVEFUUygiRE9NLlVuZG9NYW5hZ2VyLnRy
YW5zYWN0Iik7Ci0gICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAxKQotICAgICAgICByZXR1cm4gdGhy
b3dOb3RFbm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdldElzb2xhdGUoKSk7Ci0gICAgVW5kb01h
bmFnZXIqIGltcCA9IFY4VW5kb01hbmFnZXI6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwotCi0g
ICAgRVhDRVBUSU9OX0JMT0NLKHY4OjpMb2NhbDx2ODo6VmFsdWU+LCBkaWN0aW9uYXJ5LCBNQVlC
RV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKTsKLSAgICBp
ZiAoZGljdGlvbmFyeS5Jc0VtcHR5KCkgfHwgIWRpY3Rpb25hcnktPklzT2JqZWN0KCkpCi0gICAg
ICAgIHJldHVybiB0aHJvd1R5cGVFcnJvcigiVGhlIGZpcnN0IGFyZ3VtZW50IGlzIG5vdCBvZiB0
eXBlIERPTVRyYW5zYWN0aW9uLiIsIGFyZ3MuR2V0SXNvbGF0ZSgpKTsKLQotICAgIEVYQ0VQVElP
Tl9CTE9DSyhib29sLCBtZXJnZSwgTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMSwgRGVm
YXVsdElzVW5kZWZpbmVkKS0+Qm9vbGVhblZhbHVlKCkpOwotCi0gICAgUmVmUHRyPERPTVRyYW5z
YWN0aW9uPiB0cmFuc2FjdGlvbiA9IERPTVRyYW5zYWN0aW9uOjpjcmVhdGUoV29ybGRDb250ZXh0
SGFuZGxlKFVzZUN1cnJlbnRXb3JsZCkpOwotICAgIHRyYW5zYWN0aW9uLT5zZXREYXRhKGRpY3Rp
b25hcnkpOwotCi0gICAgRXhjZXB0aW9uQ29kZSBlYyA9IDA7Ci0gICAgaW1wLT50cmFuc2FjdCh0
cmFuc2FjdGlvbiwgbWVyZ2UsIGVjKTsKLSAgICBpZiAoZWMpCi0gICAgICAgIHJldHVybiBzZXRE
T01FeGNlcHRpb24oZWMsIGFyZ3MuR2V0SXNvbGF0ZSgpKTsKLSAgICByZXR1cm4gdjhVbmRlZmlu
ZWQoKTsKLX0KLQotdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4VW5kb01hbmFnZXI6Oml0ZW1DYWxs
YmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQotewotICAgIElOQ19TVEFUUygiRE9NLlVu
ZG9NYW5hZ2VyLml0ZW0iKTsKLSAgICBpZiAoYXJncy5MZW5ndGgoKSA8IDEpCi0gICAgICAgIHJl
dHVybiB0aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKLSAg
ICBVbmRvTWFuYWdlciogaW1wID0gVjhVbmRvTWFuYWdlcjo6dG9OYXRpdmUoYXJncy5Ib2xkZXIo
KSk7Ci0KLSAgICBFWENFUFRJT05fQkxPQ0sodW5zaWduZWQsIGluZGV4LCB0b1VJbnQzMihNQVlC
RV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSk7Ci0KLSAg
ICBpZiAoaW5kZXggPj0gaW1wLT5sZW5ndGgoKSkKLSAgICAgICAgcmV0dXJuIHY4OjpOdWxsKGFy
Z3MuR2V0SXNvbGF0ZSgpKTsKLQotICAgIGNvbnN0IFVuZG9NYW5hZ2VyRW50cnkmIGVudHJ5ID0g
aW1wLT5pdGVtKGluZGV4KTsKLQotICAgIHY4OjpIYW5kbGU8djg6OkFycmF5PiByZXN1bHQgPSB2
ODo6QXJyYXk6Ok5ldyhlbnRyeS5zaXplKCkpOwotICAgIHY4OjpJc29sYXRlKiBpc29sYXRlID0g
YXJncy5HZXRJc29sYXRlKCk7Ci0gICAgZm9yIChzaXplX3QgaW5kZXggPSAwOyBpbmRleCA8IGVu
dHJ5LnNpemUoKTsgKytpbmRleCkgewotICAgICAgICBVbmRvU3RlcCogc3RlcCA9IGVudHJ5W2lu
ZGV4XS5nZXQoKTsKLSAgICAgICAgaWYgKHN0ZXAtPmlzRE9NVHJhbnNhY3Rpb24oKSkKLSAgICAg
ICAgICAgIHJlc3VsdC0+U2V0KHY4SW50ZWdlcihpbmRleCwgaXNvbGF0ZSksIHN0YXRpY19jYXN0
PERPTVRyYW5zYWN0aW9uKj4oc3RlcCktPmRhdGEoKSk7Ci0gICAgICAgIGVsc2UgewotICAgICAg
ICAgICAgLy8gRklYTUU6IFdlIHNob3VsZG4ndCBiZSBjcmVhdGluZyBuZXcgb2JqZWN0IGVhY2gg
dGltZSB3ZSByZXR1cm4uCi0gICAgICAgICAgICAvLyBPYmplY3QgZm9yIHRoZSBzYW1lIG5hdGl2
ZSBlZGl0aW5nIGNvbW1hbmQgc2hvdWxkIGFsd2F5cyBiZSB0aGUgc2FtZS4KLSAgICAgICAgICAg
IHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gb2JqZWN0ID0gdjg6Ok9iamVjdDo6TmV3KCk7Ci0gICAg
ICAgICAgICBvYmplY3QtPlNldCh2ODo6U3RyaW5nOjpOZXdTeW1ib2woImxhYmVsIiksIHY4OjpT
dHJpbmc6Ok5ldygiW0VkaXRpbmcgY29tbWFuZF0iKSk7Ci0gICAgICAgICAgICByZXN1bHQtPlNl
dCh2OEludGVnZXIoaW5kZXgsIGlzb2xhdGUpLCBvYmplY3QpOwotICAgICAgICB9Ci0gICAgfQot
ICAgIHJldHVybiByZXN1bHQ7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlm
IC8vIEVOQUJMRShVTkRPX01BTkFHRVIpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
UHJvcGVydHlTZXRDU1NTdHlsZURlY2xhcmF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Q
cm9wZXJ0eVNldENTU1N0eWxlRGVjbGFyYXRpb24uY3BwCmluZGV4IDkzZDRlNDUzODA3ZjIzZjk2
ODhhMjE1ODkyNzU5NTgwNDFkZjEwYmUuLjE1ODcyNzY0ZWYwNTc5NmM0NDFkNmE2NWRiYjQzNmQz
MDE5NDMxOGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9Qcm9wZXJ0eVNldENTU1N0
eWxlRGVjbGFyYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Qcm9wZXJ0eVNldENT
U1N0eWxlRGVjbGFyYXRpb24uY3BwCkBAIC0zMCw3ICszMCw2IEBACiAjaW5jbHVkZSAiTXV0YXRp
b25SZWNvcmQuaCIKICNpbmNsdWRlICJTdHlsZVByb3BlcnR5U2V0LmgiCiAjaW5jbHVkZSAiU3R5
bGVkRWxlbWVudC5oIgotI2luY2x1ZGUgIlVuZG9NYW5hZ2VyLmgiCiAjaW5jbHVkZSAiV2ViQ29y
ZU1lbW9yeUluc3RydW1lbnRhdGlvbi5oIgogI2luY2x1ZGUgPHd0Zi9NZW1vcnlJbnN0cnVtZW50
YXRpb25IYXNoTWFwLmg+CiAKQEAgLTU1LDM5ICs1NCwyNSBAQCBwdWJsaWM6CiAgICAgICAgIEFT
U0VSVCghc19jdXJyZW50RGVjbCk7CiAgICAgICAgIHNfY3VycmVudERlY2wgPSBkZWNsOwogCi0j
aWYgRU5BQkxFKE1VVEFUSU9OX09CU0VSVkVSUykgfHwgRU5BQkxFKFVORE9fTUFOQUdFUikKKyNp
ZiBFTkFCTEUoTVVUQVRJT05fT0JTRVJWRVJTKQogICAgICAgICBpZiAoIXNfY3VycmVudERlY2wt
PnBhcmVudEVsZW1lbnQoKSkKICAgICAgICAgICAgIHJldHVybjsKIAogICAgICAgICBib29sIHNo
b3VsZFJlYWRPbGRWYWx1ZSA9IGZhbHNlOwogCi0jaWYgRU5BQkxFKE1VVEFUSU9OX09CU0VSVkVS
UykKICAgICAgICAgbV9tdXRhdGlvblJlY2lwaWVudHMgPSBNdXRhdGlvbk9ic2VydmVySW50ZXJl
c3RHcm91cDo6Y3JlYXRlRm9yQXR0cmlidXRlc011dGF0aW9uKHNfY3VycmVudERlY2wtPnBhcmVu
dEVsZW1lbnQoKSwgSFRNTE5hbWVzOjpzdHlsZUF0dHIpOwogICAgICAgICBpZiAobV9tdXRhdGlv
blJlY2lwaWVudHMgJiYgbV9tdXRhdGlvblJlY2lwaWVudHMtPmlzT2xkVmFsdWVSZXF1ZXN0ZWQo
KSkKICAgICAgICAgICAgIHNob3VsZFJlYWRPbGRWYWx1ZSA9IHRydWU7Ci0jZW5kaWYKLSNpZiBF
TkFCTEUoVU5ET19NQU5BR0VSKQotICAgICAgICBtX2lzUmVjb3JkaW5nQXV0b21hdGljVHJhbnNh
Y3Rpb24gPSBVbmRvTWFuYWdlcjo6aXNSZWNvcmRpbmdBdXRvbWF0aWNUcmFuc2FjdGlvbihzX2N1
cnJlbnREZWNsLT5wYXJlbnRFbGVtZW50KCkpOwotICAgICAgICBpZiAobV9pc1JlY29yZGluZ0F1
dG9tYXRpY1RyYW5zYWN0aW9uKQotICAgICAgICAgICAgc2hvdWxkUmVhZE9sZFZhbHVlID0gdHJ1
ZTsKLSNlbmRpZgogCiAgICAgICAgIEF0b21pY1N0cmluZyBvbGRWYWx1ZTsKICAgICAgICAgaWYg
KHNob3VsZFJlYWRPbGRWYWx1ZSkKICAgICAgICAgICAgIG9sZFZhbHVlID0gc19jdXJyZW50RGVj
bC0+cGFyZW50RWxlbWVudCgpLT5nZXRBdHRyaWJ1dGUoSFRNTE5hbWVzOjpzdHlsZUF0dHIpOwog
Ci0jaWYgRU5BQkxFKE1VVEFUSU9OX09CU0VSVkVSUykKICAgICAgICAgaWYgKG1fbXV0YXRpb25S
ZWNpcGllbnRzKSB7CiAgICAgICAgICAgICBBdG9taWNTdHJpbmcgcmVxdWVzdGVkT2xkVmFsdWUg
PSBtX211dGF0aW9uUmVjaXBpZW50cy0+aXNPbGRWYWx1ZVJlcXVlc3RlZCgpID8gb2xkVmFsdWUg
OiBudWxsQXRvbTsKICAgICAgICAgICAgIG1fbXV0YXRpb24gPSBNdXRhdGlvblJlY29yZDo6Y3Jl
YXRlQXR0cmlidXRlcyhzX2N1cnJlbnREZWNsLT5wYXJlbnRFbGVtZW50KCksIEhUTUxOYW1lczo6
c3R5bGVBdHRyLCByZXF1ZXN0ZWRPbGRWYWx1ZSk7CiAgICAgICAgIH0KICNlbmRpZgotI2lmIEVO
QUJMRShVTkRPX01BTkFHRVIpCi0gICAgICAgIGlmIChtX2lzUmVjb3JkaW5nQXV0b21hdGljVHJh
bnNhY3Rpb24pCi0gICAgICAgICAgICBtX29sZFZhbHVlID0gb2xkVmFsdWU7Ci0jZW5kaWYKLQot
I2VuZGlmCiAgICAgfQogCiAgICAgflN0eWxlQXR0cmlidXRlTXV0YXRpb25TY29wZSgpCkBAIC05
OSwxNCArODQsNyBAQCBwdWJsaWM6CiAjaWYgRU5BQkxFKE1VVEFUSU9OX09CU0VSVkVSUykKICAg
ICAgICAgaWYgKG1fbXV0YXRpb24gJiYgc19zaG91bGREZWxpdmVyKQogICAgICAgICAgICAgbV9t
dXRhdGlvblJlY2lwaWVudHMtPmVucXVldWVNdXRhdGlvblJlY29yZChtX211dGF0aW9uKTsKLSNl
bmRpZgotI2lmIEVOQUJMRShVTkRPX01BTkFHRVIpCi0gICAgICAgIGlmIChtX2lzUmVjb3JkaW5n
QXV0b21hdGljVHJhbnNhY3Rpb24gJiYgc19zaG91bGREZWxpdmVyKSB7Ci0gICAgICAgICAgICBV
bmRvTWFuYWdlcjo6YWRkVHJhbnNhY3Rpb25TdGVwKEF0dHJDaGFuZ2luZ0RPTVRyYW5zYWN0aW9u
U3RlcDo6Y3JlYXRlKAotICAgICAgICAgICAgICAgIHNfY3VycmVudERlY2wtPnBhcmVudEVsZW1l
bnQoKSwgSFRNTE5hbWVzOjpzdHlsZUF0dHIsIG1fb2xkVmFsdWUsIHNfY3VycmVudERlY2wtPnBh
cmVudEVsZW1lbnQoKS0+Z2V0QXR0cmlidXRlKEhUTUxOYW1lczo6c3R5bGVBdHRyKSkpOwotICAg
ICAgICB9Ci0jZW5kaWYKLSNpZiBFTkFCTEUoTVVUQVRJT05fT0JTRVJWRVJTKSB8fCBFTkFCTEUo
VU5ET19NQU5BR0VSKQorCiAgICAgICAgIHNfc2hvdWxkRGVsaXZlciA9IGZhbHNlOwogI2VuZGlm
CiAgICAgICAgIGlmICghc19zaG91bGROb3RpZnlJbnNwZWN0b3IpIHsKQEAgLTEyMSw3ICs5OSw3
IEBAIHB1YmxpYzoKICAgICAgICAgICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkSW52
YWxpZGF0ZVN0eWxlQXR0cihsb2NhbENvcHlTdHlsZURlY2wtPnBhcmVudEVsZW1lbnQoKS0+ZG9j
dW1lbnQoKSwgbG9jYWxDb3B5U3R5bGVEZWNsLT5wYXJlbnRFbGVtZW50KCkpOwogICAgIH0KIAot
I2lmIEVOQUJMRShNVVRBVElPTl9PQlNFUlZFUlMpIHx8IEVOQUJMRShVTkRPX01BTkFHRVIpCisj
aWYgRU5BQkxFKE1VVEFUSU9OX09CU0VSVkVSUykKICAgICB2b2lkIGVucXVldWVNdXRhdGlvblJl
Y29yZCgpCiAgICAgewogICAgICAgICBzX3Nob3VsZERlbGl2ZXIgPSB0cnVlOwpAQCAtMTM3LDcg
KzExNSw3IEBAIHByaXZhdGU6CiAgICAgc3RhdGljIHVuc2lnbmVkIHNfc2NvcGVDb3VudDsKICAg
ICBzdGF0aWMgUHJvcGVydHlTZXRDU1NTdHlsZURlY2xhcmF0aW9uKiBzX2N1cnJlbnREZWNsOwog
ICAgIHN0YXRpYyBib29sIHNfc2hvdWxkTm90aWZ5SW5zcGVjdG9yOwotI2lmIEVOQUJMRShNVVRB
VElPTl9PQlNFUlZFUlMpIHx8IEVOQUJMRShVTkRPX01BTkFHRVIpCisjaWYgRU5BQkxFKE1VVEFU
SU9OX09CU0VSVkVSUykKICAgICBzdGF0aWMgYm9vbCBzX3Nob3VsZERlbGl2ZXI7CiAjZW5kaWYK
IApAQCAtMTQ1LDE2ICsxMjMsMTIgQEAgcHJpdmF0ZToKICAgICBPd25QdHI8TXV0YXRpb25PYnNl
cnZlckludGVyZXN0R3JvdXA+IG1fbXV0YXRpb25SZWNpcGllbnRzOwogICAgIFJlZlB0cjxNdXRh
dGlvblJlY29yZD4gbV9tdXRhdGlvbjsKICNlbmRpZgotI2lmIEVOQUJMRShVTkRPX01BTkFHRVIp
Ci0gICAgYm9vbCBtX2lzUmVjb3JkaW5nQXV0b21hdGljVHJhbnNhY3Rpb247Ci0gICAgQXRvbWlj
U3RyaW5nIG1fb2xkVmFsdWU7Ci0jZW5kaWYKIH07CiAKIHVuc2lnbmVkIFN0eWxlQXR0cmlidXRl
TXV0YXRpb25TY29wZTo6c19zY29wZUNvdW50ID0gMDsKIFByb3BlcnR5U2V0Q1NTU3R5bGVEZWNs
YXJhdGlvbiogU3R5bGVBdHRyaWJ1dGVNdXRhdGlvblNjb3BlOjpzX2N1cnJlbnREZWNsID0gMDsK
IGJvb2wgU3R5bGVBdHRyaWJ1dGVNdXRhdGlvblNjb3BlOjpzX3Nob3VsZE5vdGlmeUluc3BlY3Rv
ciA9IGZhbHNlOwotI2lmIEVOQUJMRShNVVRBVElPTl9PQlNFUlZFUlMpIHx8IEVOQUJMRShVTkRP
X01BTkFHRVIpCisjaWYgRU5BQkxFKE1VVEFUSU9OX09CU0VSVkVSUykKIGJvb2wgU3R5bGVBdHRy
aWJ1dGVNdXRhdGlvblNjb3BlOjpzX3Nob3VsZERlbGl2ZXIgPSBmYWxzZTsKICNlbmRpZgogCkBA
IC0xOTYsNyArMTcwLDcgQEAgU3RyaW5nIFByb3BlcnR5U2V0Q1NTU3R5bGVEZWNsYXJhdGlvbjo6
Y3NzVGV4dCgpIGNvbnN0CiAgICAgCiB2b2lkIFByb3BlcnR5U2V0Q1NTU3R5bGVEZWNsYXJhdGlv
bjo6c2V0Q3NzVGV4dChjb25zdCBTdHJpbmcmIHRleHQsIEV4Y2VwdGlvbkNvZGUmIGVjKQogewot
I2lmIEVOQUJMRShNVVRBVElPTl9PQlNFUlZFUlMpIHx8IEVOQUJMRShVTkRPX01BTkFHRVIpCisj
aWYgRU5BQkxFKE1VVEFUSU9OX09CU0VSVkVSUykKICAgICBTdHlsZUF0dHJpYnV0ZU11dGF0aW9u
U2NvcGUgbXV0YXRpb25TY29wZSh0aGlzKTsKICNlbmRpZgogICAgIHdpbGxNdXRhdGUoKTsKQEAg
LTIwNyw3ICsxODEsNyBAQCB2b2lkIFByb3BlcnR5U2V0Q1NTU3R5bGVEZWNsYXJhdGlvbjo6c2V0
Q3NzVGV4dChjb25zdCBTdHJpbmcmIHRleHQsIEV4Y2VwdGlvbkNvZAogCiAgICAgZGlkTXV0YXRl
KFByb3BlcnR5Q2hhbmdlZCk7CiAKLSNpZiBFTkFCTEUoTVVUQVRJT05fT0JTRVJWRVJTKSB8fCBF
TkFCTEUoVU5ET19NQU5BR0VSKQorI2lmIEVOQUJMRShNVVRBVElPTl9PQlNFUlZFUlMpCiAgICAg
bXV0YXRpb25TY29wZS5lbnF1ZXVlTXV0YXRpb25SZWNvcmQoKTsgICAgCiAjZW5kaWYKIH0KQEAg
LTI1Nyw3ICsyMzEsNyBAQCBib29sIFByb3BlcnR5U2V0Q1NTU3R5bGVEZWNsYXJhdGlvbjo6aXNQ
cm9wZXJ0eUltcGxpY2l0KGNvbnN0IFN0cmluZyYgcHJvcGVydHlOYQogCiB2b2lkIFByb3BlcnR5
U2V0Q1NTU3R5bGVEZWNsYXJhdGlvbjo6c2V0UHJvcGVydHkoY29uc3QgU3RyaW5nJiBwcm9wZXJ0
eU5hbWUsIGNvbnN0IFN0cmluZyYgdmFsdWUsIGNvbnN0IFN0cmluZyYgcHJpb3JpdHksIEV4Y2Vw
dGlvbkNvZGUmIGVjKQogewotI2lmIEVOQUJMRShNVVRBVElPTl9PQlNFUlZFUlMpIHx8IEVOQUJM
RShVTkRPX01BTkFHRVIpCisjaWYgRU5BQkxFKE1VVEFUSU9OX09CU0VSVkVSUykKICAgICBTdHls
ZUF0dHJpYnV0ZU11dGF0aW9uU2NvcGUgbXV0YXRpb25TY29wZSh0aGlzKTsKICNlbmRpZgogICAg
IENTU1Byb3BlcnR5SUQgcHJvcGVydHlJRCA9IGNzc1Byb3BlcnR5SUQocHJvcGVydHlOYW1lKTsK
QEAgLTI3Niw3ICsyNTAsNyBAQCB2b2lkIFByb3BlcnR5U2V0Q1NTU3R5bGVEZWNsYXJhdGlvbjo6
c2V0UHJvcGVydHkoY29uc3QgU3RyaW5nJiBwcm9wZXJ0eU5hbWUsIGNvbgogICAgIGlmIChjaGFu
Z2VkKSB7CiAgICAgICAgIC8vIENTUyBET00gcmVxdWlyZXMgcmFpc2luZyBTWU5UQVhfRVJSIG9m
IHBhcnNpbmcgZmFpbGVkLCBidXQgdGhpcyBpcyB0b28gZGFuZ2Vyb3VzIGZvciBjb21wYXRpYmls
aXR5LAogICAgICAgICAvLyBzZWUgPGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTcyOTY+LgotI2lmIEVOQUJMRShNVVRBVElPTl9PQlNFUlZFUlMpIHx8IEVOQUJMRShVTkRP
X01BTkFHRVIpCisjaWYgRU5BQkxFKE1VVEFUSU9OX09CU0VSVkVSUykKICAgICAgICAgbXV0YXRp
b25TY29wZS5lbnF1ZXVlTXV0YXRpb25SZWNvcmQoKTsKICNlbmRpZgogICAgIH0KQEAgLTI4NCw3
ICsyNTgsNyBAQCB2b2lkIFByb3BlcnR5U2V0Q1NTU3R5bGVEZWNsYXJhdGlvbjo6c2V0UHJvcGVy
dHkoY29uc3QgU3RyaW5nJiBwcm9wZXJ0eU5hbWUsIGNvbgogCiBTdHJpbmcgUHJvcGVydHlTZXRD
U1NTdHlsZURlY2xhcmF0aW9uOjpyZW1vdmVQcm9wZXJ0eShjb25zdCBTdHJpbmcmIHByb3BlcnR5
TmFtZSwgRXhjZXB0aW9uQ29kZSYgZWMpCiB7Ci0jaWYgRU5BQkxFKE1VVEFUSU9OX09CU0VSVkVS
UykgfHwgRU5BQkxFKFVORE9fTUFOQUdFUikKKyNpZiBFTkFCTEUoTVVUQVRJT05fT0JTRVJWRVJT
KQogICAgIFN0eWxlQXR0cmlidXRlTXV0YXRpb25TY29wZSBtdXRhdGlvblNjb3BlKHRoaXMpOwog
I2VuZGlmCiAgICAgQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlEID0gY3NzUHJvcGVydHlJRChwcm9w
ZXJ0eU5hbWUpOwpAQCAtMzAwLDcgKzI3NCw3IEBAIFN0cmluZyBQcm9wZXJ0eVNldENTU1N0eWxl
RGVjbGFyYXRpb246OnJlbW92ZVByb3BlcnR5KGNvbnN0IFN0cmluZyYgcHJvcGVydHlOYW1lCiAg
ICAgZGlkTXV0YXRlKGNoYW5nZWQgPyBQcm9wZXJ0eUNoYW5nZWQgOiBOb0NoYW5nZXMpOwogCiAg
ICAgaWYgKGNoYW5nZWQpIHsKLSNpZiBFTkFCTEUoTVVUQVRJT05fT0JTRVJWRVJTKSB8fCBFTkFC
TEUoVU5ET19NQU5BR0VSKQorI2lmIEVOQUJMRShNVVRBVElPTl9PQlNFUlZFUlMpCiAgICAgICAg
IG11dGF0aW9uU2NvcGUuZW5xdWV1ZU11dGF0aW9uUmVjb3JkKCk7CiAjZW5kaWYKICAgICB9CkBA
IC0zMTksNyArMjkzLDcgQEAgU3RyaW5nIFByb3BlcnR5U2V0Q1NTU3R5bGVEZWNsYXJhdGlvbjo6
Z2V0UHJvcGVydHlWYWx1ZUludGVybmFsKENTU1Byb3BlcnR5SUQgcHIKIAogdm9pZCBQcm9wZXJ0
eVNldENTU1N0eWxlRGVjbGFyYXRpb246OnNldFByb3BlcnR5SW50ZXJuYWwoQ1NTUHJvcGVydHlJ
RCBwcm9wZXJ0eUlELCBjb25zdCBTdHJpbmcmIHZhbHVlLCBib29sIGltcG9ydGFudCwgRXhjZXB0
aW9uQ29kZSYgZWMpCiB7IAotI2lmIEVOQUJMRShNVVRBVElPTl9PQlNFUlZFUlMpIHx8IEVOQUJM
RShVTkRPX01BTkFHRVIpCisjaWYgRU5BQkxFKE1VVEFUSU9OX09CU0VSVkVSUykKICAgICBTdHls
ZUF0dHJpYnV0ZU11dGF0aW9uU2NvcGUgbXV0YXRpb25TY29wZSh0aGlzKTsKICNlbmRpZgogICAg
IHdpbGxNdXRhdGUoKTsKQEAgLTMzMCw3ICszMDQsNyBAQCB2b2lkIFByb3BlcnR5U2V0Q1NTU3R5
bGVEZWNsYXJhdGlvbjo6c2V0UHJvcGVydHlJbnRlcm5hbChDU1NQcm9wZXJ0eUlEIHByb3BlcnR5
SQogICAgIGRpZE11dGF0ZShjaGFuZ2VkID8gUHJvcGVydHlDaGFuZ2VkIDogTm9DaGFuZ2VzKTsK
IAogICAgIGlmIChjaGFuZ2VkKSB7Ci0jaWYgRU5BQkxFKE1VVEFUSU9OX09CU0VSVkVSUykgfHwg
RU5BQkxFKFVORE9fTUFOQUdFUikKKyNpZiBFTkFCTEUoTVVUQVRJT05fT0JTRVJWRVJTKQogICAg
ICAgICBtdXRhdGlvblNjb3BlLmVucXVldWVNdXRhdGlvblJlY29yZCgpOwogI2VuZGlmCiAgICAg
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0NoYXJhY3RlckRhdGEuY3BwIGIvU291
cmNlL1dlYkNvcmUvZG9tL0NoYXJhY3RlckRhdGEuY3BwCmluZGV4IDA4ZTZlYjYzZDJlODY1ZDdj
MTZkZDRmY2YzOTA4MDJkMmExMTZmMDEuLjI1YWY5NGQ3YjIxMzk3MjRlOTEyZTM2MTliNGU4ODIx
N2M3MDViYjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9DaGFyYWN0ZXJEYXRhLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vQ2hhcmFjdGVyRGF0YS5jcHAKQEAgLTMzLDcgKzMz
LDYgQEAKICNpbmNsdWRlICJSZW5kZXJUZXh0LmgiCiAjaW5jbHVkZSAiU3R5bGVJbmhlcml0ZWRE
YXRhLmgiCiAjaW5jbHVkZSAiVGV4dEJyZWFrSXRlcmF0b3IuaCIKLSNpbmNsdWRlICJVbmRvTWFu
YWdlci5oIgogI2luY2x1ZGUgIldlYkNvcmVNZW1vcnlJbnN0cnVtZW50YXRpb24uaCIKIAogdXNp
bmcgbmFtZXNwYWNlIHN0ZDsKQEAgLTE5MSwxMyArMTkwLDYgQEAgdm9pZCBDaGFyYWN0ZXJEYXRh
OjpzZXROb2RlVmFsdWUoY29uc3QgU3RyaW5nJiBub2RlVmFsdWUsIEV4Y2VwdGlvbkNvZGUmIGVj
KQogCiB2b2lkIENoYXJhY3RlckRhdGE6OnNldERhdGFBbmRVcGRhdGUoY29uc3QgU3RyaW5nJiBu
ZXdEYXRhLCB1bnNpZ25lZCBvZmZzZXRPZlJlcGxhY2VkRGF0YSwgdW5zaWduZWQgb2xkTGVuZ3Ro
LCB1bnNpZ25lZCBuZXdMZW5ndGgpCiB7Ci0jaWYgRU5BQkxFKFVORE9fTUFOQUdFUikKLSAgICBp
ZiAoVW5kb01hbmFnZXI6OmlzUmVjb3JkaW5nQXV0b21hdGljVHJhbnNhY3Rpb24odGhpcykpIHsK
LSAgICAgICAgY29uc3QgU3RyaW5nJiByZXBsYWNpbmdEYXRhID0gbmV3RGF0YS5zdWJzdHJpbmco
b2Zmc2V0T2ZSZXBsYWNlZERhdGEsIG5ld0xlbmd0aCk7Ci0gICAgICAgIGNvbnN0IFN0cmluZyYg
cmVwbGFjZWREYXRhID0gbV9kYXRhLnN1YnN0cmluZyhvZmZzZXRPZlJlcGxhY2VkRGF0YSwgb2xk
TGVuZ3RoKTsKLSAgICAgICAgVW5kb01hbmFnZXI6OmFkZFRyYW5zYWN0aW9uU3RlcChEYXRhUmVw
bGFjaW5nRE9NVHJhbnNhY3Rpb25TdGVwOjpjcmVhdGUodGhpcywgb2Zmc2V0T2ZSZXBsYWNlZERh
dGEsIG9sZExlbmd0aCwgcmVwbGFjaW5nRGF0YSwgcmVwbGFjZWREYXRhKSk7Ci0gICAgfQotI2Vu
ZGlmCiAgICAgU3RyaW5nIG9sZERhdGEgPSBtX2RhdGE7CiAgICAgbV9kYXRhID0gbmV3RGF0YTsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0NvbnRhaW5lck5vZGUuY3BwIGIvU291
cmNlL1dlYkNvcmUvZG9tL0NvbnRhaW5lck5vZGUuY3BwCmluZGV4IGE5YTI4OTEzNjE1MTk5ODJm
NzQ0ZTg2ZDMyMDgwMmEwYzliMGY4NjkuLmE2MDVjZDA4ZWJkZTdmYjllNzIyZDk4MzIxMGZhNDJk
OGQ4MzZiYTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Db250YWluZXJOb2RlLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vQ29udGFpbmVyTm9kZS5jcHAKQEAgLTQ1LDcgKzQ1
LDYgQEAKICNpbmNsdWRlICJSZW5kZXJUaGVtZS5oIgogI2luY2x1ZGUgIlJlbmRlcldpZGdldC5o
IgogI2luY2x1ZGUgIlJvb3RJbmxpbmVCb3guaCIKLSNpbmNsdWRlICJVbmRvTWFuYWdlci5oIgog
I2luY2x1ZGUgPHd0Zi9DdXJyZW50VGltZS5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KIApA
QCAtMzQ1LDEwICszNDQsNiBAQCBzdGF0aWMgdm9pZCB3aWxsUmVtb3ZlQ2hpbGQoTm9kZSogY2hp
bGQpCiAgICAgQ2hpbGRMaXN0TXV0YXRpb25TY29wZShjaGlsZC0+cGFyZW50Tm9kZSgpKS53aWxs
UmVtb3ZlQ2hpbGQoY2hpbGQpOwogICAgIGNoaWxkLT5ub3RpZnlNdXRhdGlvbk9ic2VydmVyc05v
ZGVXaWxsRGV0YWNoKCk7CiAjZW5kaWYKLSNpZiBFTkFCTEUoVU5ET19NQU5BR0VSKQotICAgIGlm
IChVbmRvTWFuYWdlcjo6aXNSZWNvcmRpbmdBdXRvbWF0aWNUcmFuc2FjdGlvbihjaGlsZC0+cGFy
ZW50Tm9kZSgpKSkKLSAgICAgICAgVW5kb01hbmFnZXI6OmFkZFRyYW5zYWN0aW9uU3RlcChOb2Rl
UmVtb3ZpbmdET01UcmFuc2FjdGlvblN0ZXA6OmNyZWF0ZShjaGlsZC0+cGFyZW50Tm9kZSgpLCBj
aGlsZCkpOwotI2VuZGlmCiAKICAgICBkaXNwYXRjaENoaWxkUmVtb3ZhbEV2ZW50cyhjaGlsZCk7
CiAgICAgY2hpbGQtPmRvY3VtZW50KCktPm5vZGVXaWxsQmVSZW1vdmVkKGNoaWxkKTsgLy8gZS5n
LiBtdXRhdGlvbiBldmVudCBsaXN0ZW5lciBjYW4gY3JlYXRlIGEgbmV3IHJhbmdlLgpAQCAtMzcz
LDEwICszNjgsNiBAQCBzdGF0aWMgdm9pZCB3aWxsUmVtb3ZlQ2hpbGRyZW4oQ29udGFpbmVyTm9k
ZSogY29udGFpbmVyKQogICAgICAgICBtdXRhdGlvbi53aWxsUmVtb3ZlQ2hpbGQoY2hpbGQpOwog
ICAgICAgICBjaGlsZC0+bm90aWZ5TXV0YXRpb25PYnNlcnZlcnNOb2RlV2lsbERldGFjaCgpOwog
I2VuZGlmCi0jaWYgRU5BQkxFKFVORE9fTUFOQUdFUikKLSAgICAgICAgaWYgKFVuZG9NYW5hZ2Vy
Ojppc1JlY29yZGluZ0F1dG9tYXRpY1RyYW5zYWN0aW9uKGNvbnRhaW5lcikpCi0gICAgICAgICAg
ICBVbmRvTWFuYWdlcjo6YWRkVHJhbnNhY3Rpb25TdGVwKE5vZGVSZW1vdmluZ0RPTVRyYW5zYWN0
aW9uU3RlcDo6Y3JlYXRlKGNvbnRhaW5lciwgY2hpbGQpKTsKLSNlbmRpZgogCiAgICAgICAgIC8v
IGZpcmUgcmVtb3ZlZCBmcm9tIGRvY3VtZW50IG11dGF0aW9uIGV2ZW50cy4KICAgICAgICAgZGlz
cGF0Y2hDaGlsZFJlbW92YWxFdmVudHMoY2hpbGQpOwpAQCAtMTAyMiwxMSArMTAxMyw2IEBAIHN0
YXRpYyB2b2lkIHVwZGF0ZVRyZWVBZnRlckluc2VydGlvbihDb250YWluZXJOb2RlKiBwYXJlbnQs
IE5vZGUqIGNoaWxkLCBib29sIHNoCiAgICAgQ2hpbGRMaXN0TXV0YXRpb25TY29wZShwYXJlbnQp
LmNoaWxkQWRkZWQoY2hpbGQpOwogI2VuZGlmCiAKLSNpZiBFTkFCTEUoVU5ET19NQU5BR0VSKQot
ICAgIGlmIChVbmRvTWFuYWdlcjo6aXNSZWNvcmRpbmdBdXRvbWF0aWNUcmFuc2FjdGlvbihwYXJl
bnQpKQotICAgICAgICBVbmRvTWFuYWdlcjo6YWRkVHJhbnNhY3Rpb25TdGVwKE5vZGVJbnNlcnRp
bmdET01UcmFuc2FjdGlvblN0ZXA6OmNyZWF0ZShwYXJlbnQsIGNoaWxkKSk7Ci0jZW5kaWYKLQog
ICAgIHBhcmVudC0+Y2hpbGRyZW5DaGFuZ2VkKGZhbHNlLCBjaGlsZC0+cHJldmlvdXNTaWJsaW5n
KCksIGNoaWxkLT5uZXh0U2libGluZygpLCAxKTsKIAogICAgIENoaWxkTm9kZUluc2VydGlvbk5v
dGlmaWVyKHBhcmVudCkubm90aWZ5KGNoaWxkKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9Eb2N1bWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCmluZGV4
IGE2OWUxMmVjNzkxNTZlYTg1Yjg3MGRjZjUzYTdkMDdiNzAxMTEwMzIuLmQ1NjMyYjlhMTE3MWU1
OWE4MDI2OGYzN2M1YTE4NWY0MTY2YjEzNTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9Eb2N1bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcApAQCAt
MTU5LDcgKzE1OSw2IEBACiAjaW5jbHVkZSAiVGltZXIuaCIKICNpbmNsdWRlICJUcmFuc2Zvcm1T
b3VyY2UuaCIKICNpbmNsdWRlICJUcmVlV2Fsa2VyLmgiCi0jaW5jbHVkZSAiVW5kb01hbmFnZXIu
aCIKICNpbmNsdWRlICJVc2VyQ29udGVudFVSTFBhdHRlcm4uaCIKICNpbmNsdWRlICJXZWJDb3Jl
TWVtb3J5SW5zdHJ1bWVudGF0aW9uLmgiCiAjaW5jbHVkZSAiV2ViS2l0TmFtZWRGbG93LmgiCkBA
IC00OTksOSArNDk4LDYgQEAgRG9jdW1lbnQ6OkRvY3VtZW50KEZyYW1lKiBmcmFtZSwgY29uc3Qg
S1VSTCYgdXJsLCBib29sIGlzWEhUTUwsIGJvb2wgaXNIVE1MKQogI2lmIEVOQUJMRShUT1VDSF9F
VkVOVFMpCiAgICAgLCBtX3RvdWNoRXZlbnRIYW5kbGVyQ291bnQoMCkKICNlbmRpZgotI2lmIEVO
QUJMRShVTkRPX01BTkFHRVIpCi0gICAgLCBtX3VuZG9NYW5hZ2VyKDApCi0jZW5kaWYKICAgICAs
IG1fcGVuZGluZ1Rhc2tzVGltZXIodGhpcywgJkRvY3VtZW50OjpwZW5kaW5nVGFza3NUaW1lckZp
cmVkKQogICAgICwgbV9zY2hlZHVsZWRUYXNrc0FyZVN1c3BlbmRlZChmYWxzZSkKICAgICAsIG1f
dmlzdWFsVXBkYXRlc0FsbG93ZWQodHJ1ZSkKQEAgLTU5NTcsMTUgKzU5NTMsNiBAQCB2b2lkIERv
Y3VtZW50OjpyZXBvcnRNZW1vcnlVc2FnZShNZW1vcnlPYmplY3RJbmZvKiBtZW1vcnlPYmplY3RJ
bmZvKSBjb25zdAogICAgIGluZm8uYWRkTWVtYmVyKG1fcGVuZGluZ1Rhc2tzKTsKIH0KIAotI2lm
IEVOQUJMRShVTkRPX01BTkFHRVIpCi1QYXNzUmVmUHRyPFVuZG9NYW5hZ2VyPiBEb2N1bWVudDo6
dW5kb01hbmFnZXIoKQotewotICAgIGlmICghbV91bmRvTWFuYWdlcikKLSAgICAgICAgbV91bmRv
TWFuYWdlciA9IFVuZG9NYW5hZ2VyOjpjcmVhdGUodGhpcyk7Ci0gICAgcmV0dXJuIG1fdW5kb01h
bmFnZXI7Ci19Ci0jZW5kaWYKLQogY2xhc3MgSW1tdXRhYmxlQXR0cmlidXRlRGF0YUNhY2hlS2V5
IHsKIHB1YmxpYzoKICAgICBJbW11dGFibGVBdHRyaWJ1dGVEYXRhQ2FjaGVLZXkoY29uc3QgUXVh
bGlmaWVkTmFtZSYgdGFnTmFtZSwgY29uc3QgQXR0cmlidXRlKiBhdHRyaWJ1dGVzLCB1bnNpZ25l
ZCBhdHRyaWJ1dGVDb3VudCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVu
dC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKaW5kZXggMzYyYzE5ZmY1NDFhNjFk
ZTJhYjkzMWMxOTM5OThmOGZhNjVkMjM4Zi4uYjc0Zjk3ZmYxODVmYTQyMjJiMWJlYWZiYTQ4YzYy
OTRiNDM4NzRlYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKKysr
IGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKQEAgLTE0MCw3ICsxNDAsNiBAQCBjbGFz
cyBTdHlsZVNoZWV0TGlzdDsKIGNsYXNzIFRleHQ7CiBjbGFzcyBUZXh0UmVzb3VyY2VEZWNvZGVy
OwogY2xhc3MgVHJlZVdhbGtlcjsKLWNsYXNzIFVuZG9NYW5hZ2VyOwogY2xhc3MgV2ViS2l0TmFt
ZWRGbG93OwogY2xhc3MgWE1MSHR0cFJlcXVlc3Q7CiBjbGFzcyBYUGF0aEV2YWx1YXRvcjsKQEAg
LTExMTksMTEgKzExMTgsNyBAQCBwdWJsaWM6CiAjaWYgRU5BQkxFKE1JQ1JPREFUQSkKICAgICBQ
YXNzUmVmUHRyPE5vZGVMaXN0PiBnZXRJdGVtcyhjb25zdCBTdHJpbmcmIHR5cGVOYW1lcyk7CiAj
ZW5kaWYKLSAgICAKLSNpZiBFTkFCTEUoVU5ET19NQU5BR0VSKQotICAgIFBhc3NSZWZQdHI8VW5k
b01hbmFnZXI+IHVuZG9NYW5hZ2VyKCk7Ci0jZW5kaWYKLSAgICAKKwogICAgIGJvb2wgaXNJbkRv
Y3VtZW50V3JpdGUoKSB7IHJldHVybiBtX3dyaXRlUmVjdXJzaW9uRGVwdGggPiAwOyB9CiAKICAg
ICB2b2lkIHN1c3BlbmRTY2hlZHVsZWRUYXNrcyhBY3RpdmVET01PYmplY3Q6OlJlYXNvbkZvclN1
c3BlbnNpb24pOwpAQCAtMTQ3NiwxMCArMTQ3MSw2IEBAIHByaXZhdGU6CiAjaWYgRU5BQkxFKFRP
VUNIX0VWRU5UUykKICAgICB1bnNpZ25lZCBtX3RvdWNoRXZlbnRIYW5kbGVyQ291bnQ7CiAjZW5k
aWYKLSAgICAKLSNpZiBFTkFCTEUoVU5ET19NQU5BR0VSKQotICAgIFJlZlB0cjxVbmRvTWFuYWdl
cj4gbV91bmRvTWFuYWdlcjsKLSNlbmRpZgogCiAjaWYgRU5BQkxFKFJFUVVFU1RfQU5JTUFUSU9O
X0ZSQU1FKQogICAgIFJlZlB0cjxTY3JpcHRlZEFuaW1hdGlvbkNvbnRyb2xsZXI+IG1fc2NyaXB0
ZWRBbmltYXRpb25Db250cm9sbGVyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0Rv
Y3VtZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5pZGwKaW5kZXggYjgyN2Vk
N2M0NTRjZWNmY2Q5MzU3ODFmOWQ2YTdkYjQzNDhjMDc3NS4uMmVjNDFlM2ZkYjhkZjkyY2E5YjE3
NzlhMzJjN2JhMDQyOTRlNGFmOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3Vt
ZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaWRsCkBAIC0yMTIsMTAg
KzIxMiw2IEBACiAgICAgQ1NTU3R5bGVEZWNsYXJhdGlvbiBjcmVhdGVDU1NTdHlsZURlY2xhcmF0
aW9uKCk7CiAjZW5kaWYKIAotI2lmIGRlZmluZWQoTEFOR1VBR0VfSkFWQVNDUklQVCkgJiYgTEFO
R1VBR0VfSkFWQVNDUklQVAotICAgIFtDb25kaXRpb25hbD1VTkRPX01BTkFHRVJdIHJlYWRvbmx5
IGF0dHJpYnV0ZSBVbmRvTWFuYWdlciB1bmRvTWFuYWdlcjsKLSNlbmRpZgotCiAjaWYgZGVmaW5l
ZChMQU5HVUFHRV9PQkpFQ1RJVkVfQykgJiYgTEFOR1VBR0VfT0JKRUNUSVZFX0MKICAgICAvLyBE
T00gTGV2ZWwgMiBTdHlsZSBJbnRlcmZhY2UKICAgICBbT2JqQ0xlZ2FjeVVubmFtZWRQYXJhbWV0
ZXJzLCBPYmpDVXNlRGVmYXVsdFZpZXddIENTU1N0eWxlRGVjbGFyYXRpb24gZ2V0Q29tcHV0ZWRT
dHlsZShpbiBFbGVtZW50IGVsZW1lbnQsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20v
RWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAKaW5kZXggODk5YzMz
NDdhNzA0NWIwNTcwNDQ4ZjY3MDg0MzUyZWJmNzkyY2E3ZC4uMWEzY2U1ZGIxZGM4ZDJlYjJkYjcx
OTM0NDQxNzIyZWI1NWRjZGQ2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1l
bnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcApAQCAtNzEsNyArNzEs
NiBAQAogI2luY2x1ZGUgIlN0eWxlUmVzb2x2ZXIuaCIKICNpbmNsdWRlICJUZXh0LmgiCiAjaW5j
bHVkZSAiVGV4dEl0ZXJhdG9yLmgiCi0jaW5jbHVkZSAiVW5kb01hbmFnZXIuaCIKICNpbmNsdWRl
ICJWb2lkQ2FsbGJhY2suaCIKICNpbmNsdWRlICJXZWJLaXRBbmltYXRpb25MaXN0LmgiCiAjaW5j
bHVkZSAiWE1MTlNOYW1lcy5oIgpAQCAtMjE1MCwxMSArMjE0OSw2IEBAIHZvaWQgRWxlbWVudDo6
d2lsbE1vZGlmeUF0dHJpYnV0ZShjb25zdCBRdWFsaWZpZWROYW1lJiBuYW1lLCBjb25zdCBBdG9t
aWNTdHJpbmcmCiAgICAgICAgIHJlY2lwaWVudHMtPmVucXVldWVNdXRhdGlvblJlY29yZChNdXRh
dGlvblJlY29yZDo6Y3JlYXRlQXR0cmlidXRlcyh0aGlzLCBuYW1lLCBvbGRWYWx1ZSkpOwogI2Vu
ZGlmCiAKLSNpZiBFTkFCTEUoVU5ET19NQU5BR0VSKQotICAgIGlmIChVbmRvTWFuYWdlcjo6aXNS
ZWNvcmRpbmdBdXRvbWF0aWNUcmFuc2FjdGlvbih0aGlzKSkKLSAgICAgICAgVW5kb01hbmFnZXI6
OmFkZFRyYW5zYWN0aW9uU3RlcChBdHRyQ2hhbmdpbmdET01UcmFuc2FjdGlvblN0ZXA6OmNyZWF0
ZSh0aGlzLCBuYW1lLCBvbGRWYWx1ZSwgbmV3VmFsdWUpKTsKLSNlbmRpZgotCiAjaWYgRU5BQkxF
KElOU1BFQ1RPUikKICAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OndpbGxNb2RpZnlET01B
dHRyKGRvY3VtZW50KCksIHRoaXMsIG9sZFZhbHVlLCBuZXdWYWx1ZSk7CiAjZW5kaWYKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuaCBiL1Nv
dXJjZS9XZWJDb3JlL2VkaXRpbmcvQ29tcG9zaXRlRWRpdENvbW1hbmQuaAppbmRleCBlNWJhZWE2
NDFmNjllOTU2ZTRiMzY3YzA2NTkxMGYzZTRjYTJkOWRjLi41MTlkYWJjNzExMjIyNzdlMTYxODRj
MDliMjEyMDVjZmI3Y2NlMmY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0Nv
bXBvc2l0ZUVkaXRDb21tYW5kLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9Db21wb3Np
dGVFZGl0Q29tbWFuZC5oCkBAIC00NSw5ICs0NSw2IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZv
aWQgdW5hcHBseSgpIE9WRVJSSURFOwogICAgIHZpcnR1YWwgdm9pZCByZWFwcGx5KCkgT1ZFUlJJ
REU7CiAgICAgRWRpdEFjdGlvbiBlZGl0aW5nQWN0aW9uKCkgY29uc3QgT1ZFUlJJREUgeyByZXR1
cm4gbV9lZGl0QWN0aW9uOyB9Ci0jaWYgRU5BQkxFKFVORE9fTUFOQUdFUikKLSAgICB2aXJ0dWFs
IGJvb2wgaXNET01UcmFuc2FjdGlvbigpIGNvbnN0IE9WRVJSSURFIHsgcmV0dXJuIGZhbHNlOyB9
Ci0jZW5kaWYKICAgICB2b2lkIGFwcGVuZChTaW1wbGVFZGl0Q29tbWFuZCopOwogICAgIGJvb2wg
d2FzQ3JlYXRlTGlua0NvbW1hbmQoKSBjb25zdCB7IHJldHVybiBtX2VkaXRBY3Rpb24gPT0gRWRp
dEFjdGlvbkNyZWF0ZUxpbms7IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGlu
Zy9ET01UcmFuc2FjdGlvbi5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0RPTVRyYW5zYWN0
aW9uLmlkbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDkxN2I5OWY1NmJmZjA5NjQ3
NWJmZDAxNmU0NzE1YzM0Mzc5OGYzMy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0RPTVRyYW5zYWN0aW9uLmlkbAor
KysgL2Rldi9udWxsCkBAIC0xLDMwICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIg
R29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJp
Z2h0Ci0gKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCi0gKiBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgR09PR0xFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycn
IEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAqIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEdPT0dMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCi0gKiAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7Ci0gKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KLSAqIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUwotICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotWwotICAgIENvbmRpdGlvbmFsPVVO
RE9fTUFOQUdFUiwKLSAgICBWOEN1c3RvbUlzUmVhY2hhYmxlCi1dIGludGVyZmFjZSBET01UcmFu
c2FjdGlvbiB7Ci19OwotCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0RPTVRy
YW5zYWN0aW9uU3RlcC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0RPTVRyYW5zYWN0aW9u
U3RlcC5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNmYjgzMDI4YmEyYWM5NzIw
NmQ0YWZiZTdkOTkxMzYwODc4ZTcxYTUuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9ET01UcmFuc2FjdGlvblN0ZXAu
Y3BwCisrKyAvZGV2L251bGwKQEAgLTEsMTY4ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMp
IDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
LSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4g
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0Ci0gKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgR09PR0xFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBB
UyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAq
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEdPT0dMRSBJTkMuIE9SIElUUyBDT05UUklC
VVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCi0gKiAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7Ci0gKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KLSAqIEFOWSBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
Ci0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUwotICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZp
Zy5oIgotCi0jaWYgRU5BQkxFKFVORE9fTUFOQUdFUikKLQotI2luY2x1ZGUgIkRPTVRyYW5zYWN0
aW9uU3RlcC5oIgotCi0jaW5jbHVkZSAiQ2hhcmFjdGVyRGF0YS5oIgotI2luY2x1ZGUgIkNvbnRh
aW5lck5vZGUuaCIKLSNpbmNsdWRlICJFbGVtZW50LmgiCi0jaW5jbHVkZSAiRXhjZXB0aW9uQ29k
ZS5oIgotI2luY2x1ZGUgIk5vZGUuaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1Ob2RlSW5z
ZXJ0aW5nRE9NVHJhbnNhY3Rpb25TdGVwOjpOb2RlSW5zZXJ0aW5nRE9NVHJhbnNhY3Rpb25TdGVw
KE5vZGUqIG5vZGUsIE5vZGUqIGNoaWxkKQotICAgIDogbV9ub2RlKG5vZGUpCi0gICAgLCBtX3Jl
ZkNoaWxkKGNoaWxkLT5uZXh0U2libGluZygpKQotICAgICwgbV9jaGlsZChjaGlsZCkKLXsKLX0K
LQotUGFzc1JlZlB0cjxOb2RlSW5zZXJ0aW5nRE9NVHJhbnNhY3Rpb25TdGVwPiBOb2RlSW5zZXJ0
aW5nRE9NVHJhbnNhY3Rpb25TdGVwOjpjcmVhdGUoTm9kZSogbm9kZSwgTm9kZSogY2hpbGQpCi17
Ci0gICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBOb2RlSW5zZXJ0aW5nRE9NVHJhbnNhY3Rpb25TdGVw
KG5vZGUsIGNoaWxkKSk7Ci19Ci0KLXZvaWQgTm9kZUluc2VydGluZ0RPTVRyYW5zYWN0aW9uU3Rl
cDo6dW5hcHBseSgpCi17Ci0gICAgaWYgKG1fY2hpbGQgJiYgbV9jaGlsZC0+cGFyZW50Tm9kZSgp
ICE9IG1fbm9kZS5nZXQoKSkKLSAgICAgICAgcmV0dXJuOwotICAgIGlmIChtX3JlZkNoaWxkICYm
IG1fcmVmQ2hpbGQtPnBhcmVudE5vZGUoKSAhPSBtX25vZGUuZ2V0KCkpCi0gICAgICAgIHJldHVy
bjsKLSAgICBpZiAobV9yZWZDaGlsZCAmJiBtX3JlZkNoaWxkLT5wcmV2aW91c1NpYmxpbmcoKSAh
PSBtX2NoaWxkLmdldCgpKQotICAgICAgICByZXR1cm47Ci0gICAgCi0gICAgRXhjZXB0aW9uQ29k
ZSBlYzsKLSAgICBtX25vZGUtPnJlbW92ZUNoaWxkKG1fY2hpbGQuZ2V0KCksIGVjKTsKLX0KLQot
dm9pZCBOb2RlSW5zZXJ0aW5nRE9NVHJhbnNhY3Rpb25TdGVwOjpyZWFwcGx5KCkKLXsKLSAgICBp
ZiAobV9jaGlsZCAmJiBtX2NoaWxkLT5wYXJlbnROb2RlKCkpCi0gICAgICAgIHJldHVybjsKLSAg
ICBpZiAobV9yZWZDaGlsZCAmJiBtX3JlZkNoaWxkLT5wYXJlbnROb2RlKCkgIT0gbV9ub2RlLmdl
dCgpKQotICAgICAgICByZXR1cm47Ci0gICAgCi0gICAgRXhjZXB0aW9uQ29kZSBlYzsKLSAgICBt
X25vZGUtPmluc2VydEJlZm9yZShtX2NoaWxkLCBtX3JlZkNoaWxkLmdldCgpLCBlYyk7Ci19Ci0K
LU5vZGVSZW1vdmluZ0RPTVRyYW5zYWN0aW9uU3RlcDo6Tm9kZVJlbW92aW5nRE9NVHJhbnNhY3Rp
b25TdGVwKE5vZGUqIG5vZGUsIE5vZGUqIGNoaWxkKQotICAgIDogbV9ub2RlKG5vZGUpCi0gICAg
LCBtX3JlZkNoaWxkKGNoaWxkLT5uZXh0U2libGluZygpKQotICAgICwgbV9jaGlsZChjaGlsZCkK
LXsKLX0KLQotUGFzc1JlZlB0cjxOb2RlUmVtb3ZpbmdET01UcmFuc2FjdGlvblN0ZXA+IE5vZGVS
ZW1vdmluZ0RPTVRyYW5zYWN0aW9uU3RlcDo6Y3JlYXRlKE5vZGUqIG5vZGUsIE5vZGUqIGNoaWxk
KQotewotICAgIHJldHVybiBhZG9wdFJlZihuZXcgTm9kZVJlbW92aW5nRE9NVHJhbnNhY3Rpb25T
dGVwKG5vZGUsIGNoaWxkKSk7Ci19Ci0KLXZvaWQgTm9kZVJlbW92aW5nRE9NVHJhbnNhY3Rpb25T
dGVwOjp1bmFwcGx5KCkKLXsKLSAgICBpZiAobV9jaGlsZCAmJiBtX2NoaWxkLT5wYXJlbnROb2Rl
KCkpCi0gICAgICAgIHJldHVybjsKLSAgICBpZiAobV9yZWZDaGlsZCAmJiBtX3JlZkNoaWxkLT5w
YXJlbnROb2RlKCkgIT0gbV9ub2RlLmdldCgpKQotICAgICAgICByZXR1cm47Ci0KLSAgICBFeGNl
cHRpb25Db2RlIGVjOwotICAgIG1fbm9kZS0+aW5zZXJ0QmVmb3JlKG1fY2hpbGQsIG1fcmVmQ2hp
bGQuZ2V0KCksIGVjKTsKLX0KLQotdm9pZCBOb2RlUmVtb3ZpbmdET01UcmFuc2FjdGlvblN0ZXA6
OnJlYXBwbHkoKQotewotICAgIGlmIChtX2NoaWxkICYmIG1fY2hpbGQtPnBhcmVudE5vZGUoKSAh
PSBtX25vZGUuZ2V0KCkpCi0gICAgICAgIHJldHVybjsKLSAgICBpZiAobV9yZWZDaGlsZCAmJiBt
X3JlZkNoaWxkLT5wYXJlbnROb2RlKCkgIT0gbV9ub2RlLmdldCgpKQotICAgICAgICByZXR1cm47
Ci0gICAgaWYgKG1fcmVmQ2hpbGQgJiYgbV9yZWZDaGlsZC0+cHJldmlvdXNTaWJsaW5nKCkgIT0g
bV9jaGlsZC5nZXQoKSkKLSAgICAgICAgcmV0dXJuOwotICAgIAotICAgIEV4Y2VwdGlvbkNvZGUg
ZWM7Ci0gICAgbV9ub2RlLT5yZW1vdmVDaGlsZChtX2NoaWxkLmdldCgpLCBlYyk7Ci19Ci0KLURh
dGFSZXBsYWNpbmdET01UcmFuc2FjdGlvblN0ZXA6OkRhdGFSZXBsYWNpbmdET01UcmFuc2FjdGlv
blN0ZXAoQ2hhcmFjdGVyRGF0YSogbm9kZSwgdW5zaWduZWQgb2Zmc2V0LCB1bnNpZ25lZCBjb3Vu
dCwgY29uc3QgU3RyaW5nJiBkYXRhLCBjb25zdCBTdHJpbmcmIHJlcGxhY2VkRGF0YSkKLSAgICA6
IG1fbm9kZShub2RlKQotICAgICwgbV9vZmZzZXQob2Zmc2V0KQotICAgICwgbV9jb3VudChjb3Vu
dCkKLSAgICAsIG1fZGF0YShkYXRhKQotICAgICwgbV9yZXBsYWNlZERhdGEocmVwbGFjZWREYXRh
KQotewotfQotCi1QYXNzUmVmUHRyPERhdGFSZXBsYWNpbmdET01UcmFuc2FjdGlvblN0ZXA+IERh
dGFSZXBsYWNpbmdET01UcmFuc2FjdGlvblN0ZXA6OmNyZWF0ZShDaGFyYWN0ZXJEYXRhKiBub2Rl
LCB1bnNpZ25lZCBvZmZzZXQsIHVuc2lnbmVkIGNvdW50LCBjb25zdCBTdHJpbmcmIGRhdGEsIGNv
bnN0IFN0cmluZyYgcmVwbGFjZWREYXRhKQotewotICAgIHJldHVybiBhZG9wdFJlZihuZXcgRGF0
YVJlcGxhY2luZ0RPTVRyYW5zYWN0aW9uU3RlcChub2RlLCBvZmZzZXQsIGNvdW50LCBkYXRhLCBy
ZXBsYWNlZERhdGEpKTsKLX0KLQotdm9pZCBEYXRhUmVwbGFjaW5nRE9NVHJhbnNhY3Rpb25TdGVw
Ojp1bmFwcGx5KCkKLXsKLSAgICBpZiAobV9ub2RlLT5sZW5ndGgoKSA8IG1fb2Zmc2V0KQotICAg
ICAgICByZXR1cm47Ci0gICAgCi0gICAgRXhjZXB0aW9uQ29kZSBlYzsKLSAgICBtX25vZGUtPnJl
cGxhY2VEYXRhKG1fb2Zmc2V0LCBtX2RhdGEubGVuZ3RoKCksIG1fcmVwbGFjZWREYXRhLCBlYyk7
Ci19Ci0KLXZvaWQgRGF0YVJlcGxhY2luZ0RPTVRyYW5zYWN0aW9uU3RlcDo6cmVhcHBseSgpCi17
Ci0gICAgaWYgKG1fbm9kZS0+bGVuZ3RoKCkgPCBtX29mZnNldCkKLSAgICAgICAgcmV0dXJuOwot
ICAgIAotICAgIEV4Y2VwdGlvbkNvZGUgZWM7Ci0gICAgbV9ub2RlLT5yZXBsYWNlRGF0YShtX29m
ZnNldCwgbV9jb3VudCwgbV9kYXRhLCBlYyk7Ci19Ci0KLUF0dHJDaGFuZ2luZ0RPTVRyYW5zYWN0
aW9uU3RlcDo6QXR0ckNoYW5naW5nRE9NVHJhbnNhY3Rpb25TdGVwKEVsZW1lbnQqIGVsZW1lbnQs
IGNvbnN0IFF1YWxpZmllZE5hbWUmIG5hbWUsIGNvbnN0IEF0b21pY1N0cmluZyYgb2xkVmFsdWUs
IGNvbnN0IEF0b21pY1N0cmluZyYgbmV3VmFsdWUpCi0gICAgOiBtX2VsZW1lbnQoZWxlbWVudCkK
LSAgICAsIG1fbmFtZShuYW1lKQotICAgICwgbV9vbGRWYWx1ZShvbGRWYWx1ZSkKLSAgICAsIG1f
bmV3VmFsdWUobmV3VmFsdWUpCi17Ci19Ci0KLVBhc3NSZWZQdHI8QXR0ckNoYW5naW5nRE9NVHJh
bnNhY3Rpb25TdGVwPiBBdHRyQ2hhbmdpbmdET01UcmFuc2FjdGlvblN0ZXA6OmNyZWF0ZShFbGVt
ZW50KiBlbGVtZW50LCBjb25zdCBRdWFsaWZpZWROYW1lJiBuYW1lLCBjb25zdCBBdG9taWNTdHJp
bmcmIG9sZFZhbHVlLCBjb25zdCBBdG9taWNTdHJpbmcmIG5ld1ZhbHVlKQotewotICAgIHJldHVy
biBhZG9wdFJlZihuZXcgQXR0ckNoYW5naW5nRE9NVHJhbnNhY3Rpb25TdGVwKGVsZW1lbnQsIG5h
bWUsIG9sZFZhbHVlLCBuZXdWYWx1ZSkpOwotfQotCi12b2lkIEF0dHJDaGFuZ2luZ0RPTVRyYW5z
YWN0aW9uU3RlcDo6dW5hcHBseSgpCi17Ci0gICAgbV9lbGVtZW50LT5zZXRBdHRyaWJ1dGUobV9u
YW1lLCBtX29sZFZhbHVlKTsKLX0KLQotdm9pZCBBdHRyQ2hhbmdpbmdET01UcmFuc2FjdGlvblN0
ZXA6OnJlYXBwbHkoKQotewotICAgIG1fZWxlbWVudC0+c2V0QXR0cmlidXRlKG1fbmFtZSwgbV9u
ZXdWYWx1ZSk7Ci19Ci0KLX0KLQotI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9l
ZGl0aW5nL0RPTVRyYW5zYWN0aW9uU3RlcC5oIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9ET01U
cmFuc2FjdGlvblN0ZXAuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZTdkNTVkOTZh
OTU2YjNiZWM2ZTM1YWQxMzgyMzQxY2YzM2UwM2RhZi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0RPTVRyYW5zYWN0
aW9uU3RlcC5oCisrKyAvZGV2L251bGwKQEAgLTEsMTEzICswLDAgQEAKLS8qCi0gKiBDb3B5cmln
aHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgot
ICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0Ci0gKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgR09PR0xFIElOQy4gQU5EIElUUyBDT05UUklCVVRP
UlMgYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBB
UkUKLSAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEdPT0dMRSBJTkMuIE9SIElUUyBD
T05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCi0gKiAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7Ci0gKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KLSAqIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUwotICogU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBE
T01UcmFuc2FjdGlvblN0ZXBfaAotI2RlZmluZSBET01UcmFuc2FjdGlvblN0ZXBfaAotCi0jaWYg
RU5BQkxFKFVORE9fTUFOQUdFUikKLQotI2luY2x1ZGUgIlF1YWxpZmllZE5hbWUuaCIKLSNpbmNs
dWRlIDx3dGYvUGFzc1JlZlB0ci5oPgotI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+Ci0jaW5j
bHVkZSA8d3RmL1JlZlB0ci5oPgotI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgotCi1u
YW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIENoYXJhY3RlckRhdGE7Ci1jbGFzcyBFbGVtZW50
OwotY2xhc3MgTm9kZTsKLQotY2xhc3MgRE9NVHJhbnNhY3Rpb25TdGVwIDogcHVibGljIFJlZkNv
dW50ZWQ8RE9NVHJhbnNhY3Rpb25TdGVwPiB7Ci1wdWJsaWM6Ci0gICAgdmlydHVhbCB+RE9NVHJh
bnNhY3Rpb25TdGVwKCkgeyB9Ci0KLSAgICB2aXJ0dWFsIHZvaWQgdW5hcHBseSgpID0gMDsKLSAg
ICB2aXJ0dWFsIHZvaWQgcmVhcHBseSgpID0gMDsKLX07Ci0KLWNsYXNzIE5vZGVJbnNlcnRpbmdE
T01UcmFuc2FjdGlvblN0ZXAgOiBwdWJsaWMgRE9NVHJhbnNhY3Rpb25TdGVwIHsKLXB1YmxpYzoK
LSAgICBzdGF0aWMgUGFzc1JlZlB0cjxOb2RlSW5zZXJ0aW5nRE9NVHJhbnNhY3Rpb25TdGVwPiBj
cmVhdGUoTm9kZSosIE5vZGUqIGNoaWxkKTsKLSAgICB2aXJ0dWFsIHZvaWQgdW5hcHBseSgpIE9W
RVJSSURFOwotICAgIHZpcnR1YWwgdm9pZCByZWFwcGx5KCkgT1ZFUlJJREU7Ci0KLXByaXZhdGU6
Ci0gICAgTm9kZUluc2VydGluZ0RPTVRyYW5zYWN0aW9uU3RlcChOb2RlKiwgTm9kZSogY2hpbGQp
OwotICAgIAotICAgIFJlZlB0cjxOb2RlPiBtX25vZGU7Ci0gICAgUmVmUHRyPE5vZGU+IG1fcmVm
Q2hpbGQ7Ci0gICAgUmVmUHRyPE5vZGU+IG1fY2hpbGQ7Ci19OwotCi1jbGFzcyBOb2RlUmVtb3Zp
bmdET01UcmFuc2FjdGlvblN0ZXAgOiBwdWJsaWMgRE9NVHJhbnNhY3Rpb25TdGVwIHsKLXB1Ymxp
YzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxOb2RlUmVtb3ZpbmdET01UcmFuc2FjdGlvblN0ZXA+
IGNyZWF0ZShOb2RlKiwgTm9kZSogY2hpbGQpOwotICAgIHZpcnR1YWwgdm9pZCB1bmFwcGx5KCkg
T1ZFUlJJREU7Ci0gICAgdmlydHVhbCB2b2lkIHJlYXBwbHkoKSBPVkVSUklERTsKLSAgICAKLXBy
aXZhdGU6Ci0gICAgTm9kZVJlbW92aW5nRE9NVHJhbnNhY3Rpb25TdGVwKE5vZGUqLCBOb2RlKiBj
aGlsZCk7Ci0gICAgCi0gICAgUmVmUHRyPE5vZGU+IG1fbm9kZTsKLSAgICBSZWZQdHI8Tm9kZT4g
bV9yZWZDaGlsZDsKLSAgICBSZWZQdHI8Tm9kZT4gbV9jaGlsZDsKLX07Ci0KLWNsYXNzIERhdGFS
ZXBsYWNpbmdET01UcmFuc2FjdGlvblN0ZXAgOiBwdWJsaWMgRE9NVHJhbnNhY3Rpb25TdGVwIHsK
LXB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxEYXRhUmVwbGFjaW5nRE9NVHJhbnNhY3Rp
b25TdGVwPiBjcmVhdGUoQ2hhcmFjdGVyRGF0YSosIHVuc2lnbmVkIG9mZnNldCwgdW5zaWduZWQg
Y291bnQsIGNvbnN0IFN0cmluZyYgZGF0YSwgY29uc3QgU3RyaW5nJiByZXBsYWNlZERhdGEpOwot
ICAgIHZpcnR1YWwgdm9pZCB1bmFwcGx5KCkgT1ZFUlJJREU7Ci0gICAgdmlydHVhbCB2b2lkIHJl
YXBwbHkoKSBPVkVSUklERTsKLSAgICAKLXByaXZhdGU6Ci0gICAgRGF0YVJlcGxhY2luZ0RPTVRy
YW5zYWN0aW9uU3RlcChDaGFyYWN0ZXJEYXRhKiwgdW5zaWduZWQgb2Zmc2V0LCB1bnNpZ25lZCBj
b3VudCwgY29uc3QgU3RyaW5nJiBkYXRhLCBjb25zdCBTdHJpbmcmIHJlcGxhY2VkRGF0YSk7Ci0g
ICAgCi0gICAgUmVmUHRyPENoYXJhY3RlckRhdGE+IG1fbm9kZTsKLSAgICB1bnNpZ25lZCBtX29m
ZnNldDsKLSAgICB1bnNpZ25lZCBtX2NvdW50OwotICAgIFN0cmluZyBtX2RhdGE7Ci0gICAgU3Ry
aW5nIG1fcmVwbGFjZWREYXRhOwotfTsKLQotY2xhc3MgQXR0ckNoYW5naW5nRE9NVHJhbnNhY3Rp
b25TdGVwIDogcHVibGljIERPTVRyYW5zYWN0aW9uU3RlcCB7Ci1wdWJsaWM6Ci0gICAgc3RhdGlj
IFBhc3NSZWZQdHI8QXR0ckNoYW5naW5nRE9NVHJhbnNhY3Rpb25TdGVwPiBjcmVhdGUoRWxlbWVu
dCosIGNvbnN0IFF1YWxpZmllZE5hbWUmLCBjb25zdCBBdG9taWNTdHJpbmcmIG9sZFZhbHVlLCBj
b25zdCBBdG9taWNTdHJpbmcmIG5ld1ZhbHVlKTsKLSAgICB2aXJ0dWFsIHZvaWQgdW5hcHBseSgp
IE9WRVJSSURFOwotICAgIHZpcnR1YWwgdm9pZCByZWFwcGx5KCkgT1ZFUlJJREU7Ci0gICAgCi1w
cml2YXRlOgotICAgIEF0dHJDaGFuZ2luZ0RPTVRyYW5zYWN0aW9uU3RlcChFbGVtZW50KiwgY29u
c3QgUXVhbGlmaWVkTmFtZSYsIGNvbnN0IEF0b21pY1N0cmluZyYgb2xkVmFsdWUsIGNvbnN0IEF0
b21pY1N0cmluZyYgbmV3VmFsdWUpOwotICAgIAotICAgIFJlZlB0cjxFbGVtZW50PiBtX2VsZW1l
bnQ7Ci0gICAgUXVhbGlmaWVkTmFtZSBtX25hbWU7Ci0gICAgQXRvbWljU3RyaW5nIG1fb2xkVmFs
dWU7Ci0gICAgQXRvbWljU3RyaW5nIG1fbmV3VmFsdWU7Ci19OwotCi19Ci0KLSNlbmRpZgotCi0j
ZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcAppbmRleCA1MDcxZDEwNzNkOWJkMDRhMDVh
ZDk0Y2VlYjVmNzZkYTcwMDQ5ZDZkLi5jNDgzMTExZTVlZTBlMjNlOGFkZDUyMzEzMGJmYWFhMzJm
NWE2ZjI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCkBAIC04NSw3ICs4NSw2IEBACiAj
aW5jbHVkZSAiVGV4dEV2ZW50LmgiCiAjaW5jbHVkZSAiVGV4dEl0ZXJhdG9yLmgiCiAjaW5jbHVk
ZSAiVHlwaW5nQ29tbWFuZC5oIgotI2luY2x1ZGUgIlVuZG9NYW5hZ2VyLmgiCiAjaW5jbHVkZSAi
VXNlclR5cGluZ0dlc3R1cmVJbmRpY2F0b3IuaCIKICNpbmNsdWRlICJodG1sZWRpdGluZy5oIgog
I2luY2x1ZGUgIm1hcmt1cC5oIgpAQCAtODAyLDEyICs4MDEsOCBAQCB2b2lkIEVkaXRvcjo6YXBw
bGllZEVkaXRpbmcoUGFzc1JlZlB0cjxDb21wb3NpdGVFZGl0Q29tbWFuZD4gY21kKQogICAgICAg
ICAvLyBPbmx5IHJlZ2lzdGVyIGEgbmV3IHVuZG8gY29tbWFuZCBpZiB0aGUgY29tbWFuZCBwYXNz
ZWQgaW4gaXMKICAgICAgICAgLy8gZGlmZmVyZW50IGZyb20gdGhlIGxhc3QgY29tbWFuZAogICAg
ICAgICBtX2xhc3RFZGl0Q29tbWFuZCA9IGNtZDsKLSNpZiAhRU5BQkxFKFVORE9fTUFOQUdFUikK
ICAgICAgICAgaWYgKGNsaWVudCgpKQogICAgICAgICAgICAgY2xpZW50KCktPnJlZ2lzdGVyVW5k
b1N0ZXAobV9sYXN0RWRpdENvbW1hbmQtPmVuc3VyZUNvbXBvc2l0aW9uKCkpOwotI2Vsc2UKLSAg
ICAgICAgbV9mcmFtZS0+ZG9jdW1lbnQoKS0+dW5kb01hbmFnZXIoKS0+cmVnaXN0ZXJVbmRvU3Rl
cChtX2xhc3RFZGl0Q29tbWFuZC0+ZW5zdXJlQ29tcG9zaXRpb24oKSk7Ci0jZW5kaWYKICAgICB9
CiAKICAgICByZXNwb25kVG9DaGFuZ2VkQ29udGVudHMobmV3U2VsZWN0aW9uKTsKQEAgLTgyNCwx
MiArODE5LDggQEAgdm9pZCBFZGl0b3I6OnVuYXBwbGllZEVkaXRpbmcoUGFzc1JlZlB0cjxFZGl0
Q29tbWFuZENvbXBvc2l0aW9uPiBjbWQpCiAgICAgbV9hbHRlcm5hdGl2ZVRleHRDb250cm9sbGVy
LT5yZXNwb25kVG9VbmFwcGxpZWRFZGl0aW5nKGNtZC5nZXQoKSk7CiAgICAgCiAgICAgbV9sYXN0
RWRpdENvbW1hbmQgPSAwOwotI2lmICFFTkFCTEUoVU5ET19NQU5BR0VSKQogICAgIGlmIChjbGll
bnQoKSkKICAgICAgICAgY2xpZW50KCktPnJlZ2lzdGVyUmVkb1N0ZXAoY21kKTsKLSNlbHNlCi0g
ICAgbV9mcmFtZS0+ZG9jdW1lbnQoKS0+dW5kb01hbmFnZXIoKS0+cmVnaXN0ZXJSZWRvU3RlcChj
bWQpOwotI2VuZGlmCiAgICAgcmVzcG9uZFRvQ2hhbmdlZENvbnRlbnRzKG5ld1NlbGVjdGlvbik7
CiB9CiAKQEAgLTg0MywxMiArODM0LDggQEAgdm9pZCBFZGl0b3I6OnJlYXBwbGllZEVkaXRpbmco
UGFzc1JlZlB0cjxFZGl0Q29tbWFuZENvbXBvc2l0aW9uPiBjbWQpCiAgICAgY2hhbmdlU2VsZWN0
aW9uQWZ0ZXJDb21tYW5kKG5ld1NlbGVjdGlvbiwgRnJhbWVTZWxlY3Rpb246OkNsb3NlVHlwaW5n
IHwgRnJhbWVTZWxlY3Rpb246OkNsZWFyVHlwaW5nU3R5bGUpOwogICAgIAogICAgIG1fbGFzdEVk
aXRDb21tYW5kID0gMDsKLSNpZiAhRU5BQkxFKFVORE9fTUFOQUdFUikKICAgICBpZiAoY2xpZW50
KCkpCiAgICAgICAgIGNsaWVudCgpLT5yZWdpc3RlclVuZG9TdGVwKGNtZCk7Ci0jZWxzZQotICAg
IG1fZnJhbWUtPmRvY3VtZW50KCktPnVuZG9NYW5hZ2VyKCktPnJlZ2lzdGVyVW5kb1N0ZXAoY21k
KTsKLSNlbmRpZgogICAgIHJlc3BvbmRUb0NoYW5nZWRDb250ZW50cyhuZXdTZWxlY3Rpb24pOwog
fQogCkBAIC0xMjU2LDQwICsxMjQzLDI0IEBAIHZvaWQgRWRpdG9yOjpjbGVhclVuZG9SZWRvT3Bl
cmF0aW9ucygpCiAKIGJvb2wgRWRpdG9yOjpjYW5VbmRvKCkKIHsKLSNpZiAhRU5BQkxFKFVORE9f
TUFOQUdFUikKICAgICByZXR1cm4gY2xpZW50KCkgJiYgY2xpZW50KCktPmNhblVuZG8oKTsKLSNl
bHNlCi0gICAgcmV0dXJuIG1fZnJhbWUtPmRvY3VtZW50KCktPnVuZG9NYW5hZ2VyKCktPmNhblVu
ZG8oKTsKLSNlbmRpZgogfQogCiB2b2lkIEVkaXRvcjo6dW5kbygpCiB7Ci0jaWYgIUVOQUJMRShV
TkRPX01BTkFHRVIpCiAgICAgaWYgKGNsaWVudCgpKQogICAgICAgICBjbGllbnQoKS0+dW5kbygp
OwotI2Vsc2UKLSAgICBtX2ZyYW1lLT5kb2N1bWVudCgpLT51bmRvTWFuYWdlcigpLT51bmRvKCk7
Ci0jZW5kaWYKIH0KIAogYm9vbCBFZGl0b3I6OmNhblJlZG8oKQogewotI2lmICFFTkFCTEUoVU5E
T19NQU5BR0VSKQogICAgIHJldHVybiBjbGllbnQoKSAmJiBjbGllbnQoKS0+Y2FuUmVkbygpOwot
I2Vsc2UKLSAgICByZXR1cm4gbV9mcmFtZS0+ZG9jdW1lbnQoKS0+dW5kb01hbmFnZXIoKS0+Y2Fu
UmVkbygpOwotI2VuZGlmCiB9CiAKIHZvaWQgRWRpdG9yOjpyZWRvKCkKIHsKLSNpZiAhRU5BQkxF
KFVORE9fTUFOQUdFUikKICAgICBpZiAoY2xpZW50KCkpCiAgICAgICAgIGNsaWVudCgpLT5yZWRv
KCk7Ci0jZWxzZQotICAgIG1fZnJhbWUtPmRvY3VtZW50KCktPnVuZG9NYW5hZ2VyKCktPnJlZG8o
KTsKLSNlbmRpZgogfQogCiB2b2lkIEVkaXRvcjo6ZGlkQmVnaW5FZGl0aW5nKCkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvVW5kb01hbmFnZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvZWRpdGluZy9VbmRvTWFuYWdlci5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDQxOWRlMzExZDE5ODFkYWMzZGM5OTg0YTg2ZjJmYTM3OTFlMDg3MjAuLjAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9V
bmRvTWFuYWdlci5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSwyMzIgKzAsMCBAQAotLyoKLSAqIENv
cHlyaWdodCAoQykgMjAxMiBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQotICogbWV0OgotICoKLSAqICAgICAqIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
Ci0gKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCi0gKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCi0gKiBpbiB0aGUgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCi0gKiBkaXN0cmli
dXRpb24uCi0gKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUg
bmFtZXMgb2YgaXRzCi0gKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBw
cm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQotICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNw
ZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0gKiAi
QVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVAotICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCi0gKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAotICogT1dORVIgT1IgQ09O
VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
Ci0gKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKLSAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlICJj
b25maWcuaCIKLQotI2lmIEVOQUJMRShVTkRPX01BTkFHRVIpCi0KLSNpbmNsdWRlICJVbmRvTWFu
YWdlci5oIgotCi0jaW5jbHVkZSAiRXhjZXB0aW9uQ29kZS5oIgotCi1uYW1lc3BhY2UgV2ViQ29y
ZSB7Ci0KLURPTVRyYW5zYWN0aW9uKiBVbmRvTWFuYWdlcjo6c19yZWNvcmRpbmdET01UcmFuc2Fj
dGlvbiA9IDA7Ci0KLVBhc3NSZWZQdHI8VW5kb01hbmFnZXI+IFVuZG9NYW5hZ2VyOjpjcmVhdGUo
RG9jdW1lbnQqIGRvY3VtZW50KQotewotICAgIFJlZlB0cjxVbmRvTWFuYWdlcj4gdW5kb01hbmFn
ZXIgPSBhZG9wdFJlZihuZXcgVW5kb01hbmFnZXIoZG9jdW1lbnQpKTsKLSAgICB1bmRvTWFuYWdl
ci0+c3VzcGVuZElmTmVlZGVkKCk7Ci0gICAgcmV0dXJuIHVuZG9NYW5hZ2VyLnJlbGVhc2UoKTsK
LX0KLQotVW5kb01hbmFnZXI6OlVuZG9NYW5hZ2VyKERvY3VtZW50KiBkb2N1bWVudCkKLSAgICA6
IEFjdGl2ZURPTU9iamVjdChkb2N1bWVudCwgdGhpcykKLSAgICAsIG1fZG9jdW1lbnQoZG9jdW1l
bnQpCi0gICAgLCBtX2lzSW5Qcm9ncmVzcyhmYWxzZSkKLXsKLX0KLQotc3RhdGljIHZvaWQgY2xl
YXJTdGFjayhVbmRvTWFuYWdlclN0YWNrJiBzdGFjaykKLXsKLSAgICBmb3IgKHNpemVfdCBpID0g
MDsgaSA8IHN0YWNrLnNpemUoKTsgKytpKSB7Ci0gICAgICAgIGNvbnN0IFVuZG9NYW5hZ2VyRW50
cnkmIGVudHJ5ID0gKnN0YWNrW2ldOwotICAgICAgICBmb3IgKHNpemVfdCBqID0gMDsgaiA8IGVu
dHJ5LnNpemUoKTsgKytqKSB7Ci0gICAgICAgICAgICBVbmRvU3RlcCogc3RlcCA9IGVudHJ5W2pd
LmdldCgpOwotICAgICAgICAgICAgaWYgKHN0ZXAtPmlzRE9NVHJhbnNhY3Rpb24oKSkKLSAgICAg
ICAgICAgICAgICBzdGF0aWNfY2FzdDxET01UcmFuc2FjdGlvbio+KHN0ZXApLT5zZXRVbmRvTWFu
YWdlcigwKTsKLSAgICAgICAgfQotICAgIH0KLSAgICBzdGFjay5jbGVhcigpOwotfQotCi12b2lk
IFVuZG9NYW5hZ2VyOjpkaXNjb25uZWN0KCkKLXsKLSAgICBtX2RvY3VtZW50ID0gMDsKLSAgICBj
bGVhclN0YWNrKG1fdW5kb1N0YWNrKTsKLSAgICBjbGVhclN0YWNrKG1fcmVkb1N0YWNrKTsKLX0K
LQotdm9pZCBVbmRvTWFuYWdlcjo6c3RvcCgpCi17Ci0gICAgZGlzY29ubmVjdCgpOwotfQotCi1V
bmRvTWFuYWdlcjo6flVuZG9NYW5hZ2VyKCkKLXsKLSAgICBkaXNjb25uZWN0KCk7Ci19Ci0KLXN0
YXRpYyBpbmxpbmUgUGFzc093blB0cjxVbmRvTWFuYWdlckVudHJ5PiBjcmVhdGVVbmRvTWFuYWdl
ckVudHJ5KCkKLXsKLSAgICByZXR1cm4gYWRvcHRQdHIobmV3IFVuZG9NYW5hZ2VyRW50cnkpOwot
fQotCi12b2lkIFVuZG9NYW5hZ2VyOjp0cmFuc2FjdChQYXNzUmVmUHRyPERPTVRyYW5zYWN0aW9u
PiB0cmFuc2FjdGlvbiwgYm9vbCBtZXJnZSwgRXhjZXB0aW9uQ29kZSYgZWMpCi17Ci0gICAgaWYg
KG1faXNJblByb2dyZXNzIHx8ICFtX2RvY3VtZW50KSB7Ci0gICAgICAgIGVjID0gSU5WQUxJRF9B
Q0NFU1NfRVJSOwotICAgICAgICByZXR1cm47Ci0gICAgfQotICAgIGNsZWFyUmVkbyhBU1NFUlRf
Tk9fRVhDRVBUSU9OKTsKLSAgICB0cmFuc2FjdGlvbi0+c2V0VW5kb01hbmFnZXIodGhpcyk7Ci0K
LSAgICBtX2lzSW5Qcm9ncmVzcyA9IHRydWU7Ci0gICAgUmVmUHRyPFVuZG9NYW5hZ2VyPiBwcm90
ZWN0KHRoaXMpOwotICAgIHRyYW5zYWN0aW9uLT5hcHBseSgpOwotICAgIG1faXNJblByb2dyZXNz
ID0gZmFsc2U7Ci0KLSAgICBpZiAoIW1fZG9jdW1lbnQpCi0gICAgICAgIHJldHVybjsKLSAgICBp
ZiAoIW1lcmdlIHx8IG1fdW5kb1N0YWNrLmlzRW1wdHkoKSkKLSAgICAgICAgbV91bmRvU3RhY2su
YXBwZW5kKGNyZWF0ZVVuZG9NYW5hZ2VyRW50cnkoKSk7Ci0gICAgbV91bmRvU3RhY2subGFzdCgp
LT5hcHBlbmQodHJhbnNhY3Rpb24pOwotfQotCi12b2lkIFVuZG9NYW5hZ2VyOjp1bmRvKEV4Y2Vw
dGlvbkNvZGUmIGVjKQotewotICAgIGlmIChtX2lzSW5Qcm9ncmVzcyB8fCAhbV9kb2N1bWVudCkg
ewotICAgICAgICBlYyA9IElOVkFMSURfQUNDRVNTX0VSUjsKLSAgICAgICAgcmV0dXJuOwotICAg
IH0KLSAgICBpZiAobV91bmRvU3RhY2suaXNFbXB0eSgpKQotICAgICAgICByZXR1cm47Ci0gICAg
bV9pblByb2dyZXNzRW50cnkgPSBjcmVhdGVVbmRvTWFuYWdlckVudHJ5KCk7Ci0KLSAgICBtX2lz
SW5Qcm9ncmVzcyA9IHRydWU7Ci0gICAgUmVmUHRyPFVuZG9NYW5hZ2VyPiBwcm90ZWN0KHRoaXMp
OwotICAgIFVuZG9NYW5hZ2VyRW50cnkgZW50cnkgPSAqbV91bmRvU3RhY2subGFzdCgpOwotICAg
IGZvciAoc2l6ZV90IGkgPSBlbnRyeS5zaXplKCk7IGkgPiAwOyAtLWkpCi0gICAgICAgIGVudHJ5
W2kgLSAxXS0+dW5hcHBseSgpOwotICAgIG1faXNJblByb2dyZXNzID0gZmFsc2U7Ci0KLSAgICBp
ZiAoIW1fZG9jdW1lbnQpIHsKLSAgICAgICAgbV9pblByb2dyZXNzRW50cnkuY2xlYXIoKTsKLSAg
ICAgICAgcmV0dXJuOwotICAgIH0KLSAgICBtX3JlZG9TdGFjay5hcHBlbmQobV9pblByb2dyZXNz
RW50cnkucmVsZWFzZSgpKTsKLSAgICBtX3VuZG9TdGFjay5yZW1vdmVMYXN0KCk7Ci19Ci0KLXZv
aWQgVW5kb01hbmFnZXI6OnJlZG8oRXhjZXB0aW9uQ29kZSYgZWMpCi17Ci0gICAgaWYgKG1faXNJ
blByb2dyZXNzIHx8ICFtX2RvY3VtZW50KSB7Ci0gICAgICAgIGVjID0gSU5WQUxJRF9BQ0NFU1Nf
RVJSOwotICAgICAgICByZXR1cm47Ci0gICAgfQotICAgIGlmIChtX3JlZG9TdGFjay5pc0VtcHR5
KCkpCi0gICAgICAgIHJldHVybjsKLSAgICBtX2luUHJvZ3Jlc3NFbnRyeSA9IGNyZWF0ZVVuZG9N
YW5hZ2VyRW50cnkoKTsKLQotICAgIG1faXNJblByb2dyZXNzID0gdHJ1ZTsKLSAgICBSZWZQdHI8
VW5kb01hbmFnZXI+IHByb3RlY3QodGhpcyk7Ci0gICAgVW5kb01hbmFnZXJFbnRyeSBlbnRyeSA9
ICptX3JlZG9TdGFjay5sYXN0KCk7Ci0gICAgZm9yIChzaXplX3QgaSA9IGVudHJ5LnNpemUoKTsg
aSA+IDA7IC0taSkKLSAgICAgICAgZW50cnlbaSAtIDFdLT5yZWFwcGx5KCk7Ci0gICAgbV9pc0lu
UHJvZ3Jlc3MgPSBmYWxzZTsKLQotICAgIGlmICghbV9kb2N1bWVudCkgewotICAgICAgICBtX2lu
UHJvZ3Jlc3NFbnRyeS5jbGVhcigpOwotICAgICAgICByZXR1cm47Ci0gICAgfQotICAgIG1fdW5k
b1N0YWNrLmFwcGVuZChtX2luUHJvZ3Jlc3NFbnRyeS5yZWxlYXNlKCkpOwotICAgIG1fcmVkb1N0
YWNrLnJlbW92ZUxhc3QoKTsKLX0KLQotVW5kb01hbmFnZXJFbnRyeSBVbmRvTWFuYWdlcjo6aXRl
bSh1bnNpZ25lZCBpbmRleCkgY29uc3QKLXsKLSAgICBBU1NFUlQoaW5kZXggPCBsZW5ndGgoKSk7
Ci0gICAgaWYgKGluZGV4IDwgbV9yZWRvU3RhY2suc2l6ZSgpKSB7Ci0gICAgICAgIFVuZG9NYW5h
Z2VyRW50cnkgZW50cnkgPSAqbV9yZWRvU3RhY2tbaW5kZXhdOwotICAgICAgICBlbnRyeS5yZXZl
cnNlKCk7Ci0gICAgICAgIHJldHVybiBlbnRyeTsKLSAgICB9Ci0gICAgcmV0dXJuICptX3VuZG9T
dGFja1tsZW5ndGgoKSAtIGluZGV4IC0gMV07Ci19Ci0KLXZvaWQgVW5kb01hbmFnZXI6OnJlZ2lz
dGVyVW5kb1N0ZXAoUGFzc1JlZlB0cjxVbmRvU3RlcD4gc3RlcCkKLXsKLSAgICBpZiAoIW1faXNJ
blByb2dyZXNzKSB7Ci0gICAgICAgIE93blB0cjxVbmRvTWFuYWdlckVudHJ5PiBlbnRyeSA9IGNy
ZWF0ZVVuZG9NYW5hZ2VyRW50cnkoKTsKLSAgICAgICAgZW50cnktPmFwcGVuZChzdGVwKTsKLSAg
ICAgICAgbV91bmRvU3RhY2suYXBwZW5kKGVudHJ5LnJlbGVhc2UoKSk7Ci0KLSAgICAgICAgY2xl
YXJSZWRvKEFTU0VSVF9OT19FWENFUFRJT04pOwotICAgIH0gZWxzZQotICAgICAgICBtX2luUHJv
Z3Jlc3NFbnRyeS0+YXBwZW5kKHN0ZXApOwotfQotCi12b2lkIFVuZG9NYW5hZ2VyOjpyZWdpc3Rl
clJlZG9TdGVwKFBhc3NSZWZQdHI8VW5kb1N0ZXA+IHN0ZXApCi17Ci0gICAgaWYgKCFtX2lzSW5Q
cm9ncmVzcykgewotICAgICAgICBPd25QdHI8VW5kb01hbmFnZXJFbnRyeT4gZW50cnkgPSBjcmVh
dGVVbmRvTWFuYWdlckVudHJ5KCk7Ci0gICAgICAgIGVudHJ5LT5hcHBlbmQoc3RlcCk7Ci0gICAg
ICAgIG1fcmVkb1N0YWNrLmFwcGVuZChlbnRyeS5yZWxlYXNlKCkpOwotICAgIH0gZWxzZQotICAg
ICAgICBtX2luUHJvZ3Jlc3NFbnRyeS0+YXBwZW5kKHN0ZXApOwotfQotCi12b2lkIFVuZG9NYW5h
Z2VyOjpjbGVhclVuZG8oRXhjZXB0aW9uQ29kZSYgZWMpCi17Ci0gICAgaWYgKG1faXNJblByb2dy
ZXNzIHx8ICFtX2RvY3VtZW50KSB7Ci0gICAgICAgIGVjID0gSU5WQUxJRF9BQ0NFU1NfRVJSOwot
ICAgICAgICByZXR1cm47Ci0gICAgfQotICAgIGNsZWFyU3RhY2sobV91bmRvU3RhY2spOwotfQot
Ci12b2lkIFVuZG9NYW5hZ2VyOjpjbGVhclJlZG8oRXhjZXB0aW9uQ29kZSYgZWMpCi17Ci0gICAg
aWYgKG1faXNJblByb2dyZXNzIHx8ICFtX2RvY3VtZW50KSB7Ci0gICAgICAgIGVjID0gSU5WQUxJ
RF9BQ0NFU1NfRVJSOwotICAgICAgICByZXR1cm47Ci0gICAgfQotICAgIGNsZWFyU3RhY2sobV9y
ZWRvU3RhY2spOwotfQotCi1ib29sIFVuZG9NYW5hZ2VyOjppc1JlY29yZGluZ0F1dG9tYXRpY1Ry
YW5zYWN0aW9uKE5vZGUqIG5vZGUpCi17Ci0gICAgLy8gV2UgbmVlZCB0byBjaGVjayB0aGF0IHRy
YW5zYWN0aW9uIHN0aWxsIGhhcyBpdHMgdW5kb21hbmFnZXIgYmVjYXVzZQotICAgIC8vIHRyYW5z
YWN0aW9uIGNhbiBkaXNjb25uZWN0IGl0cyB1bmRvbWFuYWdlciwgd2hpY2ggd2lsbCBjbGVhciB0
aGUgdW5kby9yZWRvIHN0YWNrcy4KLSAgICBpZiAoIXNfcmVjb3JkaW5nRE9NVHJhbnNhY3Rpb24g
fHwgIXNfcmVjb3JkaW5nRE9NVHJhbnNhY3Rpb24tPnVuZG9NYW5hZ2VyKCkpCi0gICAgICAgIHJl
dHVybiBmYWxzZTsKLSAgICBEb2N1bWVudCogZG9jdW1lbnQgPSBzX3JlY29yZGluZ0RPTVRyYW5z
YWN0aW9uLT51bmRvTWFuYWdlcigpLT5kb2N1bWVudCgpOwotICAgIHJldHVybiBkb2N1bWVudCAm
JiBub2RlLT5kb2N1bWVudCgpID09IGRvY3VtZW50OwotfQotCi12b2lkIFVuZG9NYW5hZ2VyOjph
ZGRUcmFuc2FjdGlvblN0ZXAoUGFzc1JlZlB0cjxET01UcmFuc2FjdGlvblN0ZXA+IHN0ZXApCi17
Ci0gICAgQVNTRVJUKHNfcmVjb3JkaW5nRE9NVHJhbnNhY3Rpb24pOwotICAgIHNfcmVjb3JkaW5n
RE9NVHJhbnNhY3Rpb24tPmFkZFRyYW5zYWN0aW9uU3RlcChzdGVwKTsKLX0KLQotfQotCi0jZW5k
aWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvVW5kb01hbmFnZXIuaCBiL1Nv
dXJjZS9XZWJDb3JlL2VkaXRpbmcvVW5kb01hbmFnZXIuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggZjQzMDM5ZTA3ZmU5ZDFmMDM4OTUyZTU4NTU1MGQ0YjZkOTEzN2JlNS4uMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9l
ZGl0aW5nL1VuZG9NYW5hZ2VyLmgKKysrIC9kZXYvbnVsbApAQCAtMSwxMDIgKzAsMCBAQAotLyoK
LSAqIENvcHlyaWdodCAoQykgMjAxMiBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgot
ICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQotICogbWV0OgotICoKLSAqICAgICAq
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0Ci0gKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCi0gKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCi0gKiBpbiB0aGUgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCi0gKiBk
aXN0cmlidXRpb24uCi0gKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5v
ciB0aGUgbmFtZXMgb2YgaXRzCi0gKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3Jz
ZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQotICogdGhpcyBzb2Z0d2FyZSB3aXRo
b3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0gKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JT
Ci0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCi0gKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAotICogT1dORVIg
T1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsCi0gKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKLSAqIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICog
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5k
ZWYgVW5kb01hbmFnZXJfaAotI2RlZmluZSBVbmRvTWFuYWdlcl9oCi0KLSNpZiBFTkFCTEUoVU5E
T19NQU5BR0VSKQotCi0jaW5jbHVkZSAiQWN0aXZlRE9NT2JqZWN0LmgiCi0jaW5jbHVkZSAiRE9N
VHJhbnNhY3Rpb24uaCIKLSNpbmNsdWRlICJEb2N1bWVudC5oIgotI2luY2x1ZGUgIkV4Y2VwdGlv
bkNvZGVQbGFjZWhvbGRlci5oIgotI2luY2x1ZGUgIlVuZG9TdGVwLmgiCi0jaW5jbHVkZSA8d3Rm
L093blB0ci5oPgotI2luY2x1ZGUgPHd0Zi9QYXNzT3duUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1Bh
c3NSZWZQdHIuaD4KLSNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgotI2luY2x1ZGUgPHd0Zi9S
ZWZQdHIuaD4KLSNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsK
LQotdHlwZWRlZiBWZWN0b3I8UmVmUHRyPFVuZG9TdGVwPiA+IFVuZG9NYW5hZ2VyRW50cnk7Ci10
eXBlZGVmIFZlY3RvcjxPd25QdHI8VW5kb01hbmFnZXJFbnRyeT4gPiBVbmRvTWFuYWdlclN0YWNr
OwotCi1jbGFzcyBVbmRvTWFuYWdlciA6IHB1YmxpYyBSZWZDb3VudGVkPFVuZG9NYW5hZ2VyPiwg
cHVibGljIEFjdGl2ZURPTU9iamVjdCB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8
VW5kb01hbmFnZXI+IGNyZWF0ZShEb2N1bWVudCopOwotICAgIHZvaWQgZGlzY29ubmVjdCgpOwot
ICAgIHZpcnR1YWwgdm9pZCBzdG9wKCkgT1ZFUlJJREU7Ci0gICAgdmlydHVhbCB+VW5kb01hbmFn
ZXIoKTsKLQotICAgIHZvaWQgdHJhbnNhY3QoUGFzc1JlZlB0cjxET01UcmFuc2FjdGlvbj4sIGJv
b2wgbWVyZ2UsIEV4Y2VwdGlvbkNvZGUmKTsKLQotICAgIHZvaWQgdW5kbyhFeGNlcHRpb25Db2Rl
JiA9IEFTU0VSVF9OT19FWENFUFRJT04pOwotICAgIHZvaWQgcmVkbyhFeGNlcHRpb25Db2RlJiA9
IEFTU0VSVF9OT19FWENFUFRJT04pOwotCi0gICAgVW5kb01hbmFnZXJFbnRyeSBpdGVtKHVuc2ln
bmVkIGluZGV4KSBjb25zdDsKLQotICAgIHVuc2lnbmVkIGxlbmd0aCgpIGNvbnN0IHsgcmV0dXJu
IG1fdW5kb1N0YWNrLnNpemUoKSArIG1fcmVkb1N0YWNrLnNpemUoKTsgfQotICAgIHVuc2lnbmVk
IHBvc2l0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9yZWRvU3RhY2suc2l6ZSgpOyB9Ci0KLSAgICB2
b2lkIGNsZWFyVW5kbyhFeGNlcHRpb25Db2RlJik7Ci0gICAgdm9pZCBjbGVhclJlZG8oRXhjZXB0
aW9uQ29kZSYpOwotICAgIAotICAgIGJvb2wgY2FuVW5kbygpIGNvbnN0IHsgcmV0dXJuICFtX3Vu
ZG9TdGFjay5pc0VtcHR5KCk7IH0KLSAgICBib29sIGNhblJlZG8oKSBjb25zdCB7IHJldHVybiAh
bV9yZWRvU3RhY2suaXNFbXB0eSgpOyB9Ci0gICAgCi0gICAgdm9pZCByZWdpc3RlclVuZG9TdGVw
KFBhc3NSZWZQdHI8VW5kb1N0ZXA+KTsKLSAgICB2b2lkIHJlZ2lzdGVyUmVkb1N0ZXAoUGFzc1Jl
ZlB0cjxVbmRvU3RlcD4pOwotICAgIAotICAgIERvY3VtZW50KiBkb2N1bWVudCgpIGNvbnN0IHsg
cmV0dXJuIG1fZG9jdW1lbnQ7IH0KLSAgICBOb2RlKiBvd25lck5vZGUoKSBjb25zdCB7IHJldHVy
biBtX2RvY3VtZW50OyB9Ci0KLSAgICBzdGF0aWMgdm9pZCBzZXRSZWNvcmRpbmdET01UcmFuc2Fj
dGlvbihET01UcmFuc2FjdGlvbiogdHJhbnNhY3Rpb24pIHsgc19yZWNvcmRpbmdET01UcmFuc2Fj
dGlvbiA9IHRyYW5zYWN0aW9uOyB9Ci0gICAgc3RhdGljIGJvb2wgaXNSZWNvcmRpbmdBdXRvbWF0
aWNUcmFuc2FjdGlvbihOb2RlKik7Ci0gICAgc3RhdGljIHZvaWQgYWRkVHJhbnNhY3Rpb25TdGVw
KFBhc3NSZWZQdHI8RE9NVHJhbnNhY3Rpb25TdGVwPik7Ci0KLXByaXZhdGU6Ci0gICAgZXhwbGlj
aXQgVW5kb01hbmFnZXIoRG9jdW1lbnQqKTsKLSAgICAKLSAgICBEb2N1bWVudCogbV9kb2N1bWVu
dDsKLSAgICBVbmRvTWFuYWdlclN0YWNrIG1fdW5kb1N0YWNrOwotICAgIFVuZG9NYW5hZ2VyU3Rh
Y2sgbV9yZWRvU3RhY2s7Ci0gICAgYm9vbCBtX2lzSW5Qcm9ncmVzczsKLSAgICBPd25QdHI8VW5k
b01hbmFnZXJFbnRyeT4gbV9pblByb2dyZXNzRW50cnk7Ci0KLSAgICBzdGF0aWMgRE9NVHJhbnNh
Y3Rpb24qIHNfcmVjb3JkaW5nRE9NVHJhbnNhY3Rpb247Ci19OwotICAgIAotfQotICAgIAotI2Vu
ZGlmCi0KLSNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9VbmRvTWFu
YWdlci5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1VuZG9NYW5hZ2VyLmlkbApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZTdiZjkxYmVmMzg0NWRhZjI4NmE1MDdjMTRkNTljMDZk
N2QzM2ZmZC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9lZGl0aW5nL1VuZG9NYW5hZ2VyLmlkbAorKysgL2Rldi9udWxsCkBAIC0x
LDUyICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKLSAqIG1l
dDoKLSAqCi0gKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogICAgICogUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
cgotICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZQotICogZGlzdHJpYnV0aW9uLgotICogICAgICogTmVpdGhlciB0aGUgbmFtZSBv
ZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwotICogY29udHJpYnV0b3JzIG1heSBi
ZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KLSAqIHRo
aXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0g
KgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMg
QU5EIENPTlRSSUJVVE9SUwotICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKLSAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgotICogQSBQQVJU
SUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZ
UklHSFQKLSAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLAotICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCi0gKiBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KLSAqLwotCi1bCi0gICAgQ29uZGl0aW9uYWw9VU5ET19NQU5BR0VSLAotICAgIFY4R2VuZXJh
dGVJc1JlYWNoYWJsZT1JbXBsT3duZXJOb2RlUm9vdAotXSBpbnRlcmZhY2UgVW5kb01hbmFnZXIg
ewotICAgIFtDdXN0b21dIHZvaWQgdHJhbnNhY3QoaW4gRGljdGlvbmFyeSB0cmFuc2FjdGlvbiwg
aW4gYm9vbGVhbiBtZXJnZSk7Ci0KLSAgICB2b2lkIHVuZG8oKQotICAgICAgICByYWlzZXMoRE9N
RXhjZXB0aW9uKTsKLSAgICB2b2lkIHJlZG8oKQotICAgICAgICByYWlzZXMoRE9NRXhjZXB0aW9u
KTsKLQotICAgIFtDdXN0b21dIHNlcXVlbmNlPERPTVRyYW5zYWN0aW9uPiBpdGVtKGluIHVuc2ln
bmVkIGxvbmcgaW5kZXgpOwotCi0gICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcg
bGVuZ3RoOwotICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIHBvc2l0aW9uOwot
Ci0gICAgdm9pZCBjbGVhclVuZG8oKQotICAgICAgICByYWlzZXMoRE9NRXhjZXB0aW9uKTsKLSAg
ICB2b2lkIGNsZWFyUmVkbygpCi0gICAgICAgIHJhaXNlcyhET01FeGNlcHRpb24pOwotfTsKLQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9VbmRvU3RlcC5oIGIvU291cmNlL1dl
YkNvcmUvZWRpdGluZy9VbmRvU3RlcC5oCmluZGV4IDg2NzM4ZDZkYzkwYjc3MWE1ZjRjYzM5MDZk
YzIzYzJhNGY0NzQ0YmEuLmVkMjAyYjQyN2Q2NDQwZjczZTM3Y2QzYTYwYWJhNGZlOWZmMDQwOWUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvVW5kb1N0ZXAuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9lZGl0aW5nL1VuZG9TdGVwLmgKQEAgLTQzLDkgKzQzLDYgQEAgcHVibGljOgog
ICAgIHZpcnR1YWwgdm9pZCB1bmFwcGx5KCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCByZWFwcGx5
KCkgPSAwOwogICAgIHZpcnR1YWwgRWRpdEFjdGlvbiBlZGl0aW5nQWN0aW9uKCkgY29uc3QgPSAw
OwotI2lmIEVOQUJMRShVTkRPX01BTkFHRVIpCi0gICAgdmlydHVhbCBib29sIGlzRE9NVHJhbnNh
Y3Rpb24oKSBjb25zdCA9IDA7Ci0jZW5kaWYKIH07CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvbWFjL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnIGIvU291cmNl
L1dlYktpdC9tYWMvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKaW5kZXgg
YTM1OTBhNGNlNjEzOTFlZmU5ODE5YjA5OWYwNmU4YzBlYTRkN2RlMS4uMTRlMzMxOGQwYTcxNmMy
ZTIxNTk4ZDU0NzNmMWQwMzljODUwN2M3ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMv
Q29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKKysrIGIvU291cmNlL1dlYktp
dC9tYWMvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKQEAgLTEzNSw3ICsx
MzUsNiBAQCBFTkFCTEVfU1ZHX0ZPTlRTID0gRU5BQkxFX1NWR19GT05UUzsKIEVOQUJMRV9URVhU
X0FVVE9TSVpJTkcgPSA7CiBFTkFCTEVfVEVYVF9OT1RJRklDQVRJT05TX09OTFkgPSBFTkFCTEVf
VEVYVF9OT1RJRklDQVRJT05TX09OTFk7CiBFTkFCTEVfVE9VQ0hfSUNPTl9MT0FESU5HID0gOwot
RU5BQkxFX1VORE9fTUFOQUdFUiA9IDsKIEVOQUJMRV9VU0VSU0VMRUNUX0FMTCA9IEVOQUJMRV9V
U0VSU0VMRUNUX0FMTDsKIEVOQUJMRV9WSURFTyA9IEVOQUJMRV9WSURFTzsKIEVOQUJMRV9WSURF
T19UUkFDSyA9ICQoRU5BQkxFX1ZJREVPX1RSQUNLXyQoUExBVEZPUk1fTkFNRSkpOwpAQCAtMTQ4
LDQgKzE0Nyw0IEBAIEVOQUJMRV9XT1JLRVJTID0gRU5BQkxFX1dPUktFUlM7CiBFTkFCTEVfWEhS
X1RJTUVPVVQgPSBFTkFCTEVfWEhSX1RJTUVPVVQ7CiBFTkFCTEVfWFNMVCA9IEVOQUJMRV9YU0xU
OwogCi1GRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0FD
Q0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFCTEVfQU5JTUFUSU9OX0FQSSkgJChFTkFCTEVfQkxP
QikgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxFX0NTUF9ORVhUKSAkKEVOQUJM
RV9DU1NfQk9YX0RFQ09SQVRJT05fQlJFQUspICQoRU5BQkxFX0NTU19ERVZJQ0VfQURBUFRBVElP
TikgJChFTkFCTEVfQ1NTX0VYQ0xVU0lPTlMpICQoRU5BQkxFX0NTU19GSUxURVJTKSAkKEVOQUJM
RV9DU1NfSElFUkFSQ0hJRVMpICQoRU5BQkxFX0NTU19JTUFHRV9PUklFTlRBVElPTikgJChFTkFC
TEVfQ1NTX0lNQUdFX1JFU09MVVRJT04pICQoRU5BQkxFX0NTU19SRUdJT05TKSAkKEVOQUJMRV9D
U1NfU0hBREVSUykgJChFTkFCTEVfQ1NTX0NPTVBPU0lUSU5HKSAkKEVOQUJMRV9DU1NfU1RJQ0tZ
X1BPU0lUSU9OKSAkKEVOQUJMRV9DU1NfVkFSSUFCTEVTKSAkKEVOQUJMRV9DU1MzX0NPTkRJVElP
TkFMX1JVTEVTKSAkKEVOQUJMRV9DU1MzX1RFWFQpICQoRU5BQkxFX0NVU1RPTV9TQ0hFTUVfSEFO
RExFUikgJChFTkFCTEVfREFTSEJPQVJEX1NVUFBPUlQpICQoRU5BQkxFX0RBVEFMSVNUX0VMRU1F
TlQpICQoRU5BQkxFX0RBVEFfVFJBTlNGRVJfSVRFTVMpICQoRU5BQkxFX0RFVEFJTFNfRUxFTUVO
VCkgJChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESUFMT0dfRUxFTUVOVCkg
JChFTkFCTEVfRElSRUNUT1JZX1VQTE9BRCkgJChFTkFCTEVfRFJBR0dBQkxFX1JFR0lPTikgJChF
TkFCTEVfRklMRV9TWVNURU0pICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZVTExTQ1JFRU5f
QVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HRU9MT0NBVElPTikgJChFTkFCTEVfSElE
REVOX1BBR0VfRE9NX1RJTUVSX1RIUk9UVExJTkcpICQoRU5BQkxFX0hJR0hfRFBJX0NBTlZBUykg
JChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JRlJBTUVfU0VBTUxFU1MpICQoRU5BQkxF
X0lOREVYRURfREFUQUJBU0UpICQoRU5BQkxFX0lOUFVUX1NQRUVDSCkgJChFTkFCTEVfSU5QVVRf
VFlQRV9DT0xPUikgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBF
X0RBVEVUSU1FKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpICQoRU5BQkxFX0lO
UFVUX1RZUEVfTU9OVEgpICQoRU5BQkxFX0lOUFVUX1RZUEVfVElNRSkgJChFTkFCTEVfSU5QVVRf
VFlQRV9XRUVLKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAkKEVOQUJMRV9MRUdBQ1lf
Q1NTX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX05PVElGSUNBVElPTlMpICQoRU5B
QkxFX0xFR0FDWV9WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xFR0FDWV9XRUJfQVVESU8pICQo
RU5BQkxFX0xJTktfUFJFRkVUQ0gpICQoRU5BQkxFX0xJTktfUFJFUkVOREVSKSAkKEVOQUJMRV9N
QVRITUwpICQoRU5BQkxFX01FRElBX1NPVVJDRSkgJChFTkFCTEVfTUVESUFfU1RBVElTVElDUykg
JChFTkFCTEVfTUVURVJfRUxFTUVOVCkgJChFTkFCTEVfTUhUTUwpICQoRU5BQkxFX01JQ1JPREFU
QSkgJChFTkFCTEVfTVVUQVRJT05fT0JTRVJWRVJTKSAkKEVOQUJMRV9OQVZJR0FUT1JfQ09OVEVO
VF9VVElMUykgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfUEFHRV9WSVNJQklMSVRZ
X0FQSSkgJChFTkFCTEVfUFJPR1JFU1NfRUxFTUVOVCkgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxF
X1JFU09MVVRJT05fTUVESUFfUVVFUlkpICQoRU5BQkxFX1JFUVVFU1RfQU5JTUFUSU9OX0ZSQU1F
KSAkKEVOQUJMRV9TQ1JJUFRFRF9TUEVFQ0gpICQoRU5BQkxFX1NIQURPV19ET00pICQoRU5BQkxF
X1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TUUxfREFUQUJBU0UpICQoRU5BQkxFX1NUWUxFX1ND
T1BFRCkgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRE9NX09CSkNfQklORElOR1MpICQoRU5B
QkxFX1NWR19GT05UUykgJChFTkFCTEVfVEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9URVhUX05P
VElGSUNBVElPTlNfT05MWSkgJChFTkFCTEVfVE9VQ0hfSUNPTl9MT0FESU5HKSAkKEVOQUJMRV9V
TkRPX01BTkFHRVIpICQoRU5BQkxFX1VTRVJTRUxFQ1RfQUxMKSAkKEVOQUJMRV9WSURFTykgJChF
TkFCTEVfVklERU9fVFJBQ0spICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV9XRUJfQVVESU8pICQo
RU5BQkxFX1dFQl9TT0NLRVRTKSAkKEVOQUJMRV9XRUJfVElNSU5HKSAkKEVOQUJMRV9XT1JLRVJT
KSAkKEVOQUJMRV9YSFJfVElNRU9VVCkgJChFTkFCTEVfWFNMVCk7CitGRUFUVVJFX0RFRklORVMg
PSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0FDQ0VMRVJBVEVEXzJEX0NBTlZBUykg
JChFTkFCTEVfQU5JTUFUSU9OX0FQSSkgJChFTkFCTEVfQkxPQikgJChFTkFCTEVfQ0hBTk5FTF9N
RVNTQUdJTkcpICQoRU5BQkxFX0NTUF9ORVhUKSAkKEVOQUJMRV9DU1NfQk9YX0RFQ09SQVRJT05f
QlJFQUspICQoRU5BQkxFX0NTU19ERVZJQ0VfQURBUFRBVElPTikgJChFTkFCTEVfQ1NTX0VYQ0xV
U0lPTlMpICQoRU5BQkxFX0NTU19GSUxURVJTKSAkKEVOQUJMRV9DU1NfSElFUkFSQ0hJRVMpICQo
RU5BQkxFX0NTU19JTUFHRV9PUklFTlRBVElPTikgJChFTkFCTEVfQ1NTX0lNQUdFX1JFU09MVVRJ
T04pICQoRU5BQkxFX0NTU19SRUdJT05TKSAkKEVOQUJMRV9DU1NfU0hBREVSUykgJChFTkFCTEVf
Q1NTX0NPTVBPU0lUSU5HKSAkKEVOQUJMRV9DU1NfU1RJQ0tZX1BPU0lUSU9OKSAkKEVOQUJMRV9D
U1NfVkFSSUFCTEVTKSAkKEVOQUJMRV9DU1MzX0NPTkRJVElPTkFMX1JVTEVTKSAkKEVOQUJMRV9D
U1MzX1RFWFQpICQoRU5BQkxFX0NVU1RPTV9TQ0hFTUVfSEFORExFUikgJChFTkFCTEVfREFTSEJP
QVJEX1NVUFBPUlQpICQoRU5BQkxFX0RBVEFMSVNUX0VMRU1FTlQpICQoRU5BQkxFX0RBVEFfVFJB
TlNGRVJfSVRFTVMpICQoRU5BQkxFX0RFVEFJTFNfRUxFTUVOVCkgJChFTkFCTEVfREVWSUNFX09S
SUVOVEFUSU9OKSAkKEVOQUJMRV9ESUFMT0dfRUxFTUVOVCkgJChFTkFCTEVfRElSRUNUT1JZX1VQ
TE9BRCkgJChFTkFCTEVfRFJBR0dBQkxFX1JFR0lPTikgJChFTkFCTEVfRklMRV9TWVNURU0pICQo
RU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZVTExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFE
KSAkKEVOQUJMRV9HRU9MT0NBVElPTikgJChFTkFCTEVfSElEREVOX1BBR0VfRE9NX1RJTUVSX1RI
Uk9UVExJTkcpICQoRU5BQkxFX0hJR0hfRFBJX0NBTlZBUykgJChFTkFCTEVfSUNPTkRBVEFCQVNF
KSAkKEVOQUJMRV9JRlJBTUVfU0VBTUxFU1MpICQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpICQo
RU5BQkxFX0lOUFVUX1NQRUVDSCkgJChFTkFCTEVfSU5QVVRfVFlQRV9DT0xPUikgJChFTkFCTEVf
SU5QVVRfVFlQRV9EQVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FKSAkKEVOQUJMRV9J
TlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpICQoRU5BQkxFX0lOUFVUX1RZUEVfTU9OVEgpICQoRU5B
QkxFX0lOUFVUX1RZUEVfVElNRSkgJChFTkFCTEVfSU5QVVRfVFlQRV9XRUVLKSAkKEVOQUJMRV9K
QVZBU0NSSVBUX0RFQlVHR0VSKSAkKEVOQUJMRV9MRUdBQ1lfQ1NTX1ZFTkRPUl9QUkVGSVhFUykg
JChFTkFCTEVfTEVHQUNZX05PVElGSUNBVElPTlMpICQoRU5BQkxFX0xFR0FDWV9WRU5ET1JfUFJF
RklYRVMpICQoRU5BQkxFX0xFR0FDWV9XRUJfQVVESU8pICQoRU5BQkxFX0xJTktfUFJFRkVUQ0gp
ICQoRU5BQkxFX0xJTktfUFJFUkVOREVSKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX01FRElB
X1NPVVJDRSkgJChFTkFCTEVfTUVESUFfU1RBVElTVElDUykgJChFTkFCTEVfTUVURVJfRUxFTUVO
VCkgJChFTkFCTEVfTUhUTUwpICQoRU5BQkxFX01JQ1JPREFUQSkgJChFTkFCTEVfTVVUQVRJT05f
T0JTRVJWRVJTKSAkKEVOQUJMRV9OQVZJR0FUT1JfQ09OVEVOVF9VVElMUykgJChFTkFCTEVfTk9U
SUZJQ0FUSU9OUykgJChFTkFCTEVfUEFHRV9WSVNJQklMSVRZX0FQSSkgJChFTkFCTEVfUFJPR1JF
U1NfRUxFTUVOVCkgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxFX1JFU09MVVRJT05fTUVESUFfUVVF
UlkpICQoRU5BQkxFX1JFUVVFU1RfQU5JTUFUSU9OX0ZSQU1FKSAkKEVOQUJMRV9TQ1JJUFRFRF9T
UEVFQ0gpICQoRU5BQkxFX1NIQURPV19ET00pICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVO
QUJMRV9TUUxfREFUQUJBU0UpICQoRU5BQkxFX1NUWUxFX1NDT1BFRCkgJChFTkFCTEVfU1ZHKSAk
KEVOQUJMRV9TVkdfRE9NX09CSkNfQklORElOR1MpICQoRU5BQkxFX1NWR19GT05UUykgJChFTkFC
TEVfVEVYVF9BVVRPU0laSU5HKSAkKEVOQUJMRV9URVhUX05PVElGSUNBVElPTlNfT05MWSkgJChF
TkFCTEVfVE9VQ0hfSUNPTl9MT0FESU5HKSAkKEVOQUJMRV9VU0VSU0VMRUNUX0FMTCkgJChFTkFC
TEVfVklERU8pICQoRU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9XRUJHTCkgJChFTkFCTEVf
V0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChF
TkFCTEVfV09SS0VSUykgJChFTkFCTEVfWEhSX1RJTUVPVVQpICQoRU5BQkxFX1hTTFQpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNj
b25maWcgYi9Tb3VyY2UvV2ViS2l0Mi9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2Nv
bmZpZwppbmRleCBhY2Q2M2YxNmQ1MDAyY2I2MTVjZWQ4NjJhYmIwZWY2YWQzOTE5OWU3Li5lNjA2
NDNiN2Q5ZjRkNWE4OGJhNDBkYWFlZDc1ODRkZDFhMTI2NDUzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZworKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwpAQCAtMTQw
LDcgKzE0MCw2IEBAIEVOQUJMRV9TVkdfRk9OVFMgPSBFTkFCTEVfU1ZHX0ZPTlRTOwogRU5BQkxF
X1RFWFRfQVVUT1NJWklORyA9IDsKIEVOQUJMRV9URVhUX05PVElGSUNBVElPTlNfT05MWSA9IEVO
QUJMRV9URVhUX05PVElGSUNBVElPTlNfT05MWTsKIEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkcg
PSA7Ci1FTkFCTEVfVU5ET19NQU5BR0VSID0gOwogRU5BQkxFX1VTRVJTRUxFQ1RfQUxMID0gRU5B
QkxFX1VTRVJTRUxFQ1RfQUxMOwogRU5BQkxFX1ZJREVPID0gRU5BQkxFX1ZJREVPOwogRU5BQkxF
X1ZJREVPX1RSQUNLID0gJChFTkFCTEVfVklERU9fVFJBQ0tfJChQTEFURk9STV9OQU1FKSk7CkBA
IC0xNTMsNCArMTUyLDQgQEAgRU5BQkxFX1dPUktFUlMgPSBFTkFCTEVfV09SS0VSUzsKIEVOQUJM
RV9YSFJfVElNRU9VVCA9IEVOQUJMRV9YSFJfVElNRU9VVDsKIEVOQUJMRV9YU0xUID0gRU5BQkxF
X1hTTFQ7CiAKLUZFQVRVUkVfREVGSU5FUyA9ICQoRU5BQkxFXzNEX1JFTkRFUklORykgJChFTkFC
TEVfQUNDRUxFUkFURURfMkRfQ0FOVkFTKSAkKEVOQUJMRV9BTklNQVRJT05fQVBJKSAkKEVOQUJM
RV9CTE9CKSAkKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORykgJChFTkFCTEVfQ1NQX05FWFQpICQo
RU5BQkxFX0NTU19CT1hfREVDT1JBVElPTl9CUkVBSykgJChFTkFCTEVfQ1NTX0RFVklDRV9BREFQ
VEFUSU9OKSAkKEVOQUJMRV9DU1NfRVhDTFVTSU9OUykgJChFTkFCTEVfQ1NTX0NPTVBPU0lUSU5H
KSAkKEVOQUJMRV9DU1NfRklMVEVSUykgJChFTkFCTEVfQ1NTX0hJRVJBUkNISUVTKSAkKEVOQUJM
RV9DU1NfSU1BR0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVUSU9OKSAk
KEVOQUJMRV9DU1NfUkVHSU9OUykgJChFTkFCTEVfQ1NTX1NIQURFUlMpICQoRU5BQkxFX0NTU19T
VElDS1lfUE9TSVRJT04pICQoRU5BQkxFX0NTU19WQVJJQUJMRVMpICQoRU5BQkxFX0NTUzNfQ09O
RElUSU9OQUxfUlVMRVMpICQoRU5BQkxFX0NTUzNfVEVYVCkgJChFTkFCTEVfQ1VTVE9NX1NDSEVN
RV9IQU5ETEVSKSAkKEVOQUJMRV9EQVNIQk9BUkRfU1VQUE9SVCkgJChFTkFCTEVfREFUQUxJU1Rf
RUxFTUVOVCkgJChFTkFCTEVfREFUQV9UUkFOU0ZFUl9JVEVNUykgJChFTkFCTEVfREVUQUlMU19F
TEVNRU5UKSAkKEVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0RJQUxPR19FTEVN
RU5UKSAkKEVOQUJMRV9ESVJFQ1RPUllfVVBMT0FEKSAkKEVOQUJMRV9EUkFHR0FCTEVfUkVHSU9O
KSAkKEVOQUJMRV9GSUxFX1NZU1RFTSkgJChFTkFCTEVfRklMVEVSUykgJChFTkFCTEVfRlVMTFND
UkVFTl9BUEkpICQoRU5BQkxFX0dBTUVQQUQpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJM
RV9ISURERU5fUEFHRV9ET01fVElNRVJfVEhST1RUTElORykgJChFTkFCTEVfSElHSF9EUElfQ0FO
VkFTKSAkKEVOQUJMRV9JQ09OREFUQUJBU0UpICQoRU5BQkxFX0lGUkFNRV9TRUFNTEVTUykgJChF
TkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkgJChFTkFCTEVfSU5QVVRfU1BFRUNIKSAkKEVOQUJMRV9J
TlBVVF9UWVBFX0NPTE9SKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEUpICQoRU5BQkxFX0lOUFVU
X1RZUEVfREFURVRJTUUpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVMT0NBTCkgJChFTkFC
TEVfSU5QVVRfVFlQRV9NT05USCkgJChFTkFCTEVfSU5QVVRfVFlQRV9USU1FKSAkKEVOQUJMRV9J
TlBVVF9UWVBFX1dFRUspICQoRU5BQkxFX0pBVkFTQ1JJUFRfREVCVUdHRVIpICQoRU5BQkxFX0xF
R0FDWV9DU1NfVkVORE9SX1BSRUZJWEVTKSAkKEVOQUJMRV9MRUdBQ1lfTk9USUZJQ0FUSU9OUykg
JChMRUdBQ1lfVkVORE9SX1BSRUZJWEVTKSAkKEVOQUJMRV9MRUdBQ1lfV0VCX0FVRElPKSAkKEVO
QUJMRV9MSU5LX1BSRUZFVENIKSAkKEVOQUJMRV9MSU5LX1BSRVJFTkRFUikgJChFTkFCTEVfTUFU
SE1MKSAkKEVOQUJMRV9NRURJQV9TT1VSQ0UpICQoRU5BQkxFX01FRElBX1NUQVRJU1RJQ1MpICQo
RU5BQkxFX01FVEVSX0VMRU1FTlQpICQoRU5BQkxFX01IVE1MKSAkKEVOQUJMRV9NSUNST0RBVEEp
ICQoRU5BQkxFX01VVEFUSU9OX09CU0VSVkVSUykgJChFTkFCTEVfTkFWSUdBVE9SX0NPTlRFTlRf
VVRJTFMpICQoRU5BQkxFX05PVElGSUNBVElPTlMpICQoRU5BQkxFX1BBR0VfVklTSUJJTElUWV9B
UEkpICQoRU5BQkxFX1BERktJVF9QTFVHSU4pICQoRU5BQkxFX1BST0dSRVNTX0VMRU1FTlQpICQo
RU5BQkxFX1FVT1RBKSAkKEVOQUJMRV9SRVNPTFVUSU9OX01FRElBX1FVRVJZKSAkKEVOQUJMRV9S
RVFVRVNUX0FOSU1BVElPTl9GUkFNRSkgJChFTkFCTEVfU0NSSVBURURfU1BFRUNIKSAkKEVOQUJM
RV9TSEFET1dfRE9NKSAkKEVOQUJMRV9TSEFSRURfV09SS0VSUykgJChFTkFCTEVfU1FMX0RBVEFC
QVNFKSAkKEVOQUJMRV9TVFlMRV9TQ09QRUQpICQoRU5BQkxFX1NWRykgJChFTkFCTEVfU1ZHX0RP
TV9PQkpDX0JJTkRJTkdTKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1RFWFRfQVVUT1NJ
WklORykgJChFTkFCTEVfVEVYVF9OT1RJRklDQVRJT05TX09OTFkpICQoRU5BQkxFX1RPVUNIX0lD
T05fTE9BRElORykgJChFTkFCTEVfVU5ET19NQU5BR0VSKSAkKEVOQUJMRV9VU0VSU0VMRUNUX0FM
TCkgJChFTkFCTEVfVklERU8pICQoRU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9XRUJHTCkg
JChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJ
TUlORykgJChFTkFCTEVfV09SS0VSUykgJChFTkFCTEVfWEhSX1RJTUVPVVQpICQoRU5BQkxFX1hT
TFQpOworRkVBVFVSRV9ERUZJTkVTID0gJChFTkFCTEVfM0RfUkVOREVSSU5HKSAkKEVOQUJMRV9B
Q0NFTEVSQVRFRF8yRF9DQU5WQVMpICQoRU5BQkxFX0FOSU1BVElPTl9BUEkpICQoRU5BQkxFX0JM
T0IpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKSAkKEVOQUJMRV9DU1BfTkVYVCkgJChFTkFC
TEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFLKSAkKEVOQUJMRV9DU1NfREVWSUNFX0FEQVBUQVRJ
T04pICQoRU5BQkxFX0NTU19FWENMVVNJT05TKSAkKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcpICQo
RU5BQkxFX0NTU19GSUxURVJTKSAkKEVOQUJMRV9DU1NfSElFUkFSQ0hJRVMpICQoRU5BQkxFX0NT
U19JTUFHRV9PUklFTlRBVElPTikgJChFTkFCTEVfQ1NTX0lNQUdFX1JFU09MVVRJT04pICQoRU5B
QkxFX0NTU19SRUdJT05TKSAkKEVOQUJMRV9DU1NfU0hBREVSUykgJChFTkFCTEVfQ1NTX1NUSUNL
WV9QT1NJVElPTikgJChFTkFCTEVfQ1NTX1ZBUklBQkxFUykgJChFTkFCTEVfQ1NTM19DT05ESVRJ
T05BTF9SVUxFUykgJChFTkFCTEVfQ1NTM19URVhUKSAkKEVOQUJMRV9DVVNUT01fU0NIRU1FX0hB
TkRMRVIpICQoRU5BQkxFX0RBU0hCT0FSRF9TVVBQT1JUKSAkKEVOQUJMRV9EQVRBTElTVF9FTEVN
RU5UKSAkKEVOQUJMRV9EQVRBX1RSQU5TRkVSX0lURU1TKSAkKEVOQUJMRV9ERVRBSUxTX0VMRU1F
TlQpICQoRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTikgJChFTkFCTEVfRElBTE9HX0VMRU1FTlQp
ICQoRU5BQkxFX0RJUkVDVE9SWV9VUExPQUQpICQoRU5BQkxFX0RSQUdHQUJMRV9SRUdJT04pICQo
RU5BQkxFX0ZJTEVfU1lTVEVNKSAkKEVOQUJMRV9GSUxURVJTKSAkKEVOQUJMRV9GVUxMU0NSRUVO
X0FQSSkgJChFTkFCTEVfR0FNRVBBRCkgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5BQkxFX0hJ
RERFTl9QQUdFX0RPTV9USU1FUl9USFJPVFRMSU5HKSAkKEVOQUJMRV9ISUdIX0RQSV9DQU5WQVMp
ICQoRU5BQkxFX0lDT05EQVRBQkFTRSkgJChFTkFCTEVfSUZSQU1FX1NFQU1MRVNTKSAkKEVOQUJM
RV9JTkRFWEVEX0RBVEFCQVNFKSAkKEVOQUJMRV9JTlBVVF9TUEVFQ0gpICQoRU5BQkxFX0lOUFVU
X1RZUEVfQ09MT1IpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURSkgJChFTkFCTEVfSU5QVVRfVFlQ
RV9EQVRFVElNRSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRUxPQ0FMKSAkKEVOQUJMRV9J
TlBVVF9UWVBFX01PTlRIKSAkKEVOQUJMRV9JTlBVVF9UWVBFX1RJTUUpICQoRU5BQkxFX0lOUFVU
X1RZUEVfV0VFSykgJChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUikgJChFTkFCTEVfTEVHQUNZ
X0NTU19WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xFR0FDWV9OT1RJRklDQVRJT05TKSAkKExF
R0FDWV9WRU5ET1JfUFJFRklYRVMpICQoRU5BQkxFX0xFR0FDWV9XRUJfQVVESU8pICQoRU5BQkxF
X0xJTktfUFJFRkVUQ0gpICQoRU5BQkxFX0xJTktfUFJFUkVOREVSKSAkKEVOQUJMRV9NQVRITUwp
ICQoRU5BQkxFX01FRElBX1NPVVJDRSkgJChFTkFCTEVfTUVESUFfU1RBVElTVElDUykgJChFTkFC
TEVfTUVURVJfRUxFTUVOVCkgJChFTkFCTEVfTUhUTUwpICQoRU5BQkxFX01JQ1JPREFUQSkgJChF
TkFCTEVfTVVUQVRJT05fT0JTRVJWRVJTKSAkKEVOQUJMRV9OQVZJR0FUT1JfQ09OVEVOVF9VVElM
UykgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfUEFHRV9WSVNJQklMSVRZX0FQSSkg
JChFTkFCTEVfUERGS0lUX1BMVUdJTikgJChFTkFCTEVfUFJPR1JFU1NfRUxFTUVOVCkgJChFTkFC
TEVfUVVPVEEpICQoRU5BQkxFX1JFU09MVVRJT05fTUVESUFfUVVFUlkpICQoRU5BQkxFX1JFUVVF
U1RfQU5JTUFUSU9OX0ZSQU1FKSAkKEVOQUJMRV9TQ1JJUFRFRF9TUEVFQ0gpICQoRU5BQkxFX1NI
QURPV19ET00pICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TUUxfREFUQUJBU0Up
ICQoRU5BQkxFX1NUWUxFX1NDT1BFRCkgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfRE9NX09C
SkNfQklORElOR1MpICQoRU5BQkxFX1NWR19GT05UUykgJChFTkFCTEVfVEVYVF9BVVRPU0laSU5H
KSAkKEVOQUJMRV9URVhUX05PVElGSUNBVElPTlNfT05MWSkgJChFTkFCTEVfVE9VQ0hfSUNPTl9M
T0FESU5HKSAkKEVOQUJMRV9VU0VSU0VMRUNUX0FMTCkgJChFTkFCTEVfVklERU8pICQoRU5BQkxF
X1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9XRUJHTCkgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJM
RV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV09SS0VSUykgJChF
TkFCTEVfWEhSX1RJTUVPVVQpICQoRU5BQkxFX1hTTFQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL2Nt
YWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlIGIvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNt
YWtlCmluZGV4IGFkZDAyNzZiMzExZDcyMTdiNDAwM2IxNDIwM2Y4MmJiNmUxNmRhY2MuLjhhMzY3
N2JkNmEzMDNjNTY3YjhkYmRhYjY5MzI2MjU2MGNiM2M1YzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9j
bWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQorKysgYi9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVy
ZXMuY21ha2UKQEAgLTExMCw3ICsxMTAsNiBAQCBNQUNSTyAoV0VCS0lUX09QVElPTl9CRUdJTikK
ICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfVEVYVF9BVVRPU0laSU5HICJUb2dnbGUg
VGV4dCBhdXRvIHNpemluZyBzdXBwb3J0IiBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUo
RU5BQkxFX1RPVUNIX0VWRU5UUyAiVG9nZ2xlIFRvdWNoIEV2ZW50cyBzdXBwb3J0IiBPRkYpCiAg
ICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1RPVUNIX0lDT05fTE9BRElORyAiVG9nZ2xl
IFRvdWNoIEljb24gTG9hZGluZyBTdXBwb3J0IiBPRkYpCi0gICAgV0VCS0lUX09QVElPTl9ERUZJ
TkUoRU5BQkxFX1VORE9fTUFOQUdFUiAiVG9nZ2xlIFVuZG8gTWFuYWdlciBzdXBwb3J0IiBPRkYp
CiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX1ZJQlJBVElPTiAiVG9nZ2xlIFZpYnJh
dGlvbiBBUEkgc3VwcG9ydCIgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9W
SURFTyAiVG9nZ2xlIFZpZGVvIHN1cHBvcnQiIE9GRikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklO
RShFTkFCTEVfVklERU9fVFJBQ0sgIlRvZ2dsZSBUcmFjayBzdXBwb3J0IGZvciBIVE1MNSB2aWRl
byIgT0ZGKQpkaWZmIC0tZ2l0IGEvU291cmNlL2NtYWtlY29uZmlnLmguY21ha2UgYi9Tb3VyY2Uv
Y21ha2Vjb25maWcuaC5jbWFrZQppbmRleCA4YmQ1YWJiYmMxZTlhZDViN2I5YTBjM2IxYjFhMDQ2
ZWNiODRiNWYyLi4zOWJiMDJiMmQwNDg5MTc5ZDRiN2I4NTc1ODEzZmEyNWUwOWEyYTljIDEwMDY0
NAotLS0gYS9Tb3VyY2UvY21ha2Vjb25maWcuaC5jbWFrZQorKysgYi9Tb3VyY2UvY21ha2Vjb25m
aWcuaC5jbWFrZQpAQCAtMTA2LDcgKzEwNiw2IEBACiAjY21ha2VkZWZpbmUwMSBFTkFCTEVfVEVY
VF9BVVRPU0laSU5HCiAjY21ha2VkZWZpbmUwMSBFTkFCTEVfVE9VQ0hfRVZFTlRTCiAjY21ha2Vk
ZWZpbmUwMSBFTkFCTEVfVE9VQ0hfSUNPTl9MT0FESU5HCi0jY21ha2VkZWZpbmUwMSBFTkFCTEVf
VU5ET19NQU5BR0VSCiAjY21ha2VkZWZpbmUwMSBFTkFCTEVfVklCUkFUSU9OCiAjY21ha2VkZWZp
bmUwMSBFTkFCTEVfVklERU8KICNjbWFrZWRlZmluZTAxIEVOQUJMRV9WSURFT19UUkFDSwpkaWZm
IC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IGM4MjM4Zjcx
N2NkMDAzZTczODY4NzM4OTg2ZmUzNmU5NjY2MjljMWYuLjM5NDU5ZTg5MGZhMDgzODUyNTRlOWFk
NDg3Y2VmMWFhZGFhMzA5MGUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29s
cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxMi0xMC0yOSAgQWRhbSBCYXJ0aCAgPGFi
YXJ0aEB3ZWJraXQub3JnPgorCisgICAgICAgIEVOQUJMRShVTkRPX01BTkFHRVIpIGlzIGRpc2Fi
bGVkIGV2ZXJ5d2hlcmUgYW5kIGlzIG5vdCB1bmRlciBhY3RpdmUgZGV2ZWxvcG1lbnQKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMDcxMQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2NyaXB0cy93ZWJr
aXRwZXJsL0ZlYXR1cmVMaXN0LnBtOgorICAgICAgICAqIHFtYWtlL21rc3BlY3MvZmVhdHVyZXMv
ZmVhdHVyZXMucHJpOgorCiAyMDEyLTEwLTI5ICBEaXJrIFByYW5rZSAgPGRwcmFua2VAY2hyb21p
dW0ub3JnPgogCiAgICAgICAgIHdlYmtpdHB5OiBjaGFuZ2Ugbm9uLXZlcmJvc2UgbG9nIGZvcm1h
dCBmb3Igd2Via2l0LXBhdGNoCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHBlcmwv
RmVhdHVyZUxpc3QucG0gYi9Ub29scy9TY3JpcHRzL3dlYmtpdHBlcmwvRmVhdHVyZUxpc3QucG0K
aW5kZXggZGMyZDljYzQ0MGQ4ZjIwZmQ1MjVmZDMzMjBhYThiZDdkOTU3NGViMi4uYzVmZjg0ZThj
MGQyNzExOWNlOTMxY2U5YTRlZWZmYzJjYWJlMzlhNyAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0
cy93ZWJraXRwZXJsL0ZlYXR1cmVMaXN0LnBtCisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cGVy
bC9GZWF0dXJlTGlzdC5wbQpAQCAtMTI4LDcgKzEyOCw2IEBAIG15ICgKICAgICAkdGlsZWRCYWNr
aW5nU3RvcmVTdXBwb3J0LAogICAgICR0b3VjaEV2ZW50c1N1cHBvcnQsCiAgICAgJHRvdWNoSWNv
bkxvYWRpbmdTdXBwb3J0LAotICAgICR1bmRvTWFuYWdlclN1cHBvcnQsCiAgICAgJHZpYnJhdGlv
blN1cHBvcnQsCiAgICAgJHZpZGVvU3VwcG9ydCwKICAgICAkdmlkZW9UcmFja1N1cHBvcnQsCkBA
IC00MDAsOSArMzk5LDYgQEAgbXkgQGZlYXR1cmVzID0gKAogICAgIHsgb3B0aW9uID0+ICJ0b3Vj
aC1pY29uLWxvYWRpbmciLCBkZXNjID0+ICJUb2dnbGUgVG91Y2ggSWNvbiBMb2FkaW5nIFN1cHBv
cnQiLAogICAgICAgZGVmaW5lID0+ICJFTkFCTEVfVE9VQ0hfSUNPTl9MT0FESU5HIiwgZGVmYXVs
dCA9PiAwLCB2YWx1ZSA9PiBcJHRvdWNoSWNvbkxvYWRpbmdTdXBwb3J0IH0sCiAKLSAgICB7IG9w
dGlvbiA9PiAidW5kby1tYW5hZ2VyIiwgZGVzYyA9PiAiVG9nZ2xlIFVuZG8gTWFuYWdlciBzdXBw
b3J0IiwKLSAgICAgIGRlZmluZSA9PiAiRU5BQkxFX1VORE9fTUFOQUdFUiIsIGRlZmF1bHQgPT4g
MCwgdmFsdWUgPT4gXCR1bmRvTWFuYWdlclN1cHBvcnQgfSwKLQogICAgIHsgb3B0aW9uID0+ICJ2
aWJyYXRpb24iLCBkZXNjID0+ICJUb2dnbGUgVmlicmF0aW9uIHN1cHBvcnQiLAogICAgICAgZGVm
aW5lID0+ICJFTkFCTEVfVklCUkFUSU9OIiwgZGVmYXVsdCA9PiAoaXNFZmwoKSB8fCBpc0JsYWNr
QmVycnkoKSksIHZhbHVlID0+IFwkdmlicmF0aW9uU3VwcG9ydCB9LAogCmRpZmYgLS1naXQgYS9U
b29scy9xbWFrZS9ta3NwZWNzL2ZlYXR1cmVzL2ZlYXR1cmVzLnByaSBiL1Rvb2xzL3FtYWtlL21r
c3BlY3MvZmVhdHVyZXMvZmVhdHVyZXMucHJpCmluZGV4IGNmYjdjNGZmYzAwZmE5MDAxNWJhYWI5
N2ExOWU4NDBjMzMxZWNlMGQuLjEyNzJlY2UwMmExZTQ1MGZlMjhhNGY1YWY5MDliNDE3MDRlNDk5
OTEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL3FtYWtlL21rc3BlY3MvZmVhdHVyZXMvZmVhdHVyZXMucHJp
CisrKyBiL1Rvb2xzL3FtYWtlL21rc3BlY3MvZmVhdHVyZXMvZmVhdHVyZXMucHJpCkBAIC0xMDQs
NyArMTA0LDYgQEAgRkVBVFVSRV9ERUZBVUxUUyA9IFwKICAgICBFTkFCTEVfVE9VQ0hfQURKVVNU
TUVOVD0xIFwKICAgICBFTkFCTEVfVE9VQ0hfRVZFTlRTPTEgXAogICAgIEVOQUJMRV9UT1VDSF9J
Q09OX0xPQURJTkc9MCBcCi0gICAgRU5BQkxFX1VORE9fTUFOQUdFUj0wIFwKICAgICBFTkFCTEVf
VklCUkFUSU9OPTAgXAogICAgIEVOQUJMRV9WSURFTz0wIFwKICAgICBFTkFCTEVfVklERU9fVFJB
Q0s9MCBcCmRpZmYgLS1naXQgYS9DaGFuZ2VMb2cgYi9DaGFuZ2VMb2cKaW5kZXggN2U0NDA0MjVk
YThiMGFmMWZiNzZlMWM3NDU0NTc1Mjg3MmJiNmM3MC4uNmUwY2Q5MDljOGE3OWMxODU4M2U2NWUx
YTYwZmVjN2NlMDNlYmYwOCAxMDA2NDQKLS0tIGEvQ2hhbmdlTG9nCisrKyBiL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDEzIEBACisyMDEyLTEwLTI5ICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5v
cmc+CisKKyAgICAgICAgRU5BQkxFKFVORE9fTUFOQUdFUikgaXMgZGlzYWJsZWQgZXZlcnl3aGVy
ZSBhbmQgaXMgbm90IHVuZGVyIGFjdGl2ZSBkZXZlbG9wbWVudAorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAwNzExCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBTb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVy
ZXMuY21ha2U6CisgICAgICAgICogU291cmNlL2NtYWtlY29uZmlnLmguY21ha2U6CisKIDIwMTIt
MTAtMjYgIFJvYiBCdWlzICA8cmJ1aXNAcmltLmNvbT4KIAogICAgICAgICBbQmxhY2tCZXJyeV0g
UGxhdGZvcm0gQWJzdHJhY3Rpb24gZm9yIFdlYktpdCBSZXNvdXJjZS9JbWFnZSBMb2FkaW5nCg==
</data>
<flag name="review"
          id="185204"
          type_id="1"
          status="+"
          setter="eric"
    />
          </attachment>
      

    </bug>

</bugzilla>