<?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>201023</bug_id>
          
          <creation_ts>2019-08-21 20:19:35 -0700</creation_ts>
          <short_desc>Typing Korean in title field after typing in the body inserts extraneous characters on blog.naver.com</short_desc>
          <delta_ts>2019-08-22 08:09:56 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>HTML Editing</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Wenson Hsieh">wenson_hsieh</reporter>
          <assigned_to name="Wenson Hsieh">wenson_hsieh</assigned_to>
          <cc>ap</cc>
    
    <cc>bdakin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>megan_gardner</cc>
    
    <cc>rniwa</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1563921</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2019-08-21 20:19:35 -0700</bug_when>
    <thetext>&lt;rdar://problem/54294794&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1563933</commentid>
    <comment_count>1</comment_count>
      <attachid>376976</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2019-08-21 21:01:17 -0700</bug_when>
    <thetext>Created attachment 376976
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1563936</commentid>
    <comment_count>2</comment_count>
      <attachid>376978</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2019-08-21 21:08:57 -0700</bug_when>
    <thetext>Created attachment 376978
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1563937</commentid>
    <comment_count>3</comment_count>
      <attachid>376979</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2019-08-21 21:14:48 -0700</bug_when>
    <thetext>Created attachment 376979
Rebase on trunk</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1563940</commentid>
    <comment_count>4</comment_count>
      <attachid>376979</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-08-21 21:28:11 -0700</bug_when>
    <thetext>Comment on attachment 376979
Rebase on trunk

r=me assuming you&apos;ve tested flickering doesn&apos;t happen.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1564032</commentid>
    <comment_count>5</comment_count>
      <attachid>376979</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2019-08-22 07:28:11 -0700</bug_when>
    <thetext>Comment on attachment 376979
Rebase on trunk

Thanks for the review!

Indeed — I checked to make sure there’s no input view flickering due to this change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1564047</commentid>
    <comment_count>6</comment_count>
      <attachid>376979</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-08-22 08:09:54 -0700</bug_when>
    <thetext>Comment on attachment 376979
Rebase on trunk

Clearing flags on attachment: 376979

Committed r249006: &lt;https://trac.webkit.org/changeset/249006&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1564048</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-08-22 08:09:56 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>376976</attachid>
            <date>2019-08-21 21:01:17 -0700</date>
            <delta_ts>2019-08-21 21:08:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-201023-20190821210116.patch</filename>
            <type>text/plain</type>
            <size>22064</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ4OTEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGM3ODk4OTJkNjZlZTcz
NWUxMWUwZTMzNDA5Y2VkMGYxNWQzMTJiNS4uYmU2ZmE0ZWE4MTVmNzRlYzFkZTU0YjRjOWY0MGUz
OTQ3YzM1YThlOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDE5LTA4LTIxICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFR5cGluZyBLb3Jl
YW4gaW4gdGl0bGUgZmllbGQgYWZ0ZXIgdHlwaW5nIGluIHRoZSBib2R5IGluc2VydHMgZXh0cmFu
ZW91cyBjaGFyYWN0ZXJzIG9uIGJsb2cubmF2ZXIuY29tCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDEwMjMKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVt
LzU0Mjk0Nzk0PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEVuc3VyZXMgdGhhdCB3ZSByZWNvZ25pemUgdGhlIGJsb2cgZWRpdG9yIG9uIGJsb2cubmF2
ZXIuY29tIHRvIGJlIGEgaGlkZGVuIGVkaXRhYmxlIGFyZWEuIFRoaXMgd2Vic2l0ZSBwbGFjZXMK
KyAgICAgICAgZm9jdXMgaW5zaWRlIGFuIGVkaXRhYmxlIGJvZHkgZWxlbWVudCBvZiBhIHN1YmZy
YW1lIHRoYXQgaXMgY29tcGxldGVseSBlbXB0eSAod2lkdGg6IDAgYW5kIGJvcmRlcjogMCkuIFNl
ZSB0aGUKKyAgICAgICAgV2ViS2l0IENoYW5nZUxvZyBmb3IgbW9yZSBkZXRhaWxzLgorCisgICAg
ICAgIFRlc3Q6IGVkaXRpbmcvc2VsZWN0aW9uL2lvcy9kby1ub3Qtc2hvdy1zZWxlY3Rpb24taW4t
ZW1wdHktYm9yZGVybGVzcy1zdWJmcmFtZS5odG1sCisKKyAgICAgICAgKiByZW5kZXJpbmcvUmVu
ZGVyTGF5ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXI6OmNhbGN1bGF0ZUNs
aXBSZWN0cyBjb25zdCk6CisKIDIwMTktMDgtMjAgIFphbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxl
LmNvbT4KIAogICAgICAgICBbQ29udGVudENoYW5nZU9ic2VydmVyXSBpc0NvbnNpZGVyZWRDbGlj
a2FibGUgc2hvdWxkIGJlIGFibGUgdG8gcHJvY2VzcyBlbGVtZW50cyB3aXRoIG5vIHJlbmRlcmVy
cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZwppbmRleCBhZWViNWI5MDE5OGNjOTEzMTZjOWU4ZTZkMWM0ZjMzNmIwZTRhYzk1Li42
YWJiZmI3MGM4NGJiNzBjOTk3N2ViYTAxMGJlZjEwNWZjMWE2OTM4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDc0IEBACisyMDE5LTA4LTIxICBXZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUu
Y29tPgorCisgICAgICAgIFR5cGluZyBLb3JlYW4gaW4gdGl0bGUgZmllbGQgYWZ0ZXIgdHlwaW5n
IGluIHRoZSBib2R5IGluc2VydHMgZXh0cmFuZW91cyBjaGFyYWN0ZXJzIG9uIGJsb2cubmF2ZXIu
Y29tCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDEw
MjMKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU0Mjk0Nzk0PgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFmdGVyIHIyNDI4MzMsIHdlIGJlZ2FuIHRv
IGF2b2lkIHNlbmRpbmcgcmVkdW5kYW50IEVsZW1lbnREaWRGb2N1cyB1cGRhdGVzIGluIHRoZSBj
YXNlIHdoZXJlIGEgZm9jdXNlZCBlbGVtZW50CisgICAgICAgIHdhcyBibHVycmVkIGFuZCByZWZv
Y3VzZWQgd2l0aGluIHRoZSBzYW1lIHJ1bmxvb3AuIFRoaXMgd2FzIGRvbmUgdG8gcHJldmVudCB0
aGUgaW5wdXQgdmlldyBmcm9tIGZsaWNrZXJpbmcgZHVlCisgICAgICAgIHRvIGlucHV0IHZpZXcg
cmVsb2FkaW5nLCBhcyB3ZWxsIGFzIHNjcm9sbGluZyB0byByZXZlYWwgdGhlIGZvY3VzZWQgZWxl
bWVudCwgd2hlbiB0YXBwaW5nIHRvIGNoYW5nZSBzZWxlY3Rpb24gb24KKyAgICAgICAgTWljcm9z
b2Z0IFdvcmQgb25saW5lLgorCisgICAgICAgIEhvd2V2ZXIsIG9uIGJsb2cubmF2ZXIuY29tLCB0
aGVzZSBFbGVtZW50RGlkRm9jdXMgbWVzc2FnZXMgd2VyZSBuZWNlc3NhcnkgaW4gb3JkZXIgdG8g
ZW5zdXJlIHRoYXQgdGhlIHBsYXRmb3JtCisgICAgICAgIGlucHV0IGNvbnRleHQgY2hhbmdlcyB3
aGVuIG1vdmluZyBiZXR3ZWVuIHRoZSB0aXRsZSBhbmQgYm9keSBmaWVsZHMsIG9yIHdoZW4gdGFw
cGluZyB0byBjaGFuZ2Ugc2VsZWN0aW9uLiBUaGlzCisgICAgICAgIGlzIGJlY2F1c2UgYmxvZy5u
YXZlci5jb20gdXNlcyBhIGhpZGRlbiBjb250ZW50ZWRpdGFibGUgYXJlYSB1bmRlciBhIHN1YmZy
YW1lIChzZWUgV2ViQ29yZSBDaGFuZ2VMb2cgZm9yIG1vcmUKKyAgICAgICAgZGV0YWlsIGhlcmUp
LiBXaGlsZSB0ZXh0IGlzIG5ldmVyIGRpcmVjdGx5IGluc2VydGVkIGludG8gdGhpcyBoaWRkZW4g
Y29udGVudGVkaXRhYmxlLCB0aGUgZXZlbnRzIGFyZSBvYnNlcnZlZAorICAgICAgICBhbmQgdXNl
ZCB0byAicGxheSBiYWNrIiBlZGl0aW5nIGluIHRoZSBtYWluIHZpc2libGUgY29udGVudCBhcmVh
LgorCisgICAgICAgIFRodXMsIHdoZW4gbW92aW5nIGJldHdlZW4gdGhlIHRpdGxlIGFuZCBib2R5
IGZpZWxkcyAob3Igd2hlbiBjaGFuZ2luZyBzZWxlY3Rpb24gd2l0aGluIGVpdGhlciksIHRoZSBv
bmx5IGhpbnQgd2UKKyAgICAgICAgZ2V0IGlzIHRoYXQgdGhlIGhpZGRlbiBlZGl0YWJsZSBlbGVt
ZW50IGlzIGJsdXJyZWQgYW5kIGltbWVkaWF0ZWx5IHJlZm9jdXNlZC4gU2luY2Ugd2Ugbm8gbG9u
Z2VyIHNlbmQKKyAgICAgICAgRWxlbWVudERpZEZvY3VzIHVwZGF0ZXMgaW4gdGhpcyBzY2VuYXJp
bywgVUlLZXlib2FyZEltcGwgYW5kIGtiZCBhcmUgbm90IGF3YXJlIHRoYXQgdGhlIHBhZ2UgaGFz
IGVmZmVjdGl2ZWx5CisgICAgICAgIGNoYW5nZWQgaW5wdXQgY29udGV4dHMuCisKKyAgICAgICAg
Q29tYmluZWQgd2l0aCB0aGUgZmFjdCB0aGF0IEtvcmVhbiBJTUUgb24gaU9TIG1heSBpbnNlcnQg
YWRkaXRpb25hbCB0ZXh0IGdpdmVuIHRoZSBkb2N1bWVudCBjb250ZXh0IChpLmUuIHRleHQKKyAg
ICAgICAgdGhhdCB0aGUgaW5wdXQgbWFuYWdlciwga2JkLCB0aGlua3Mgd2UndmUgcHJldmlvdXNs
eSBpbnNlcnRlZCksIHRoaXMgbWVhbnMgdGhhdCB3aGVuIHR5cGluZyBzZXZlcmFsIGNoYXJhY3Rl
cnMKKyAgICAgICAgaW50byB0aGUgYm9keSBmaWVsZCBvbiBuYXZlciBhbmQgdGhlbiBzd2l0Y2hp
bmcgdG8gZWRpdCB0aGUgdGl0bGUsIGluaXRpYWwga2V5c3Ryb2tlcyBtYXkgaW5zZXJ0IHVuZXhw
ZWN0ZWQKKyAgICAgICAgdGV4dCBpbiB0aGUgdGl0bGUgZmllbGQuCisKKyAgICAgICAgVG8gZml4
IHRoaXMsIHdlIGFkZCBzb21lIGhvb2tzIHRvIG5vdGlmeSB0aGUgVUkgcHJvY2VzcyB3aGVuIGFu
IGVsZW1lbnQgdGhhdCB3YXMgYmx1cnJlZCBoYXMgYmVlbiBpbW1lZGlhdGVseQorICAgICAgICBy
ZWZvY3VzZWQuIFVwb24gcmVjZWl2aW5nIHRoaXMgbWVzc2FnZSwgdGhlIFVJIHByb2Nlc3MgdGhl
biB0ZWxscyBVSUtleWJvYXJkSW1wbCB0byByZS1yZXRyaWV2ZSBpdHMgaW5wdXQKKyAgICAgICAg
Y29udGV4dCwgd2hpY2ggY2FsbHMgaW50byAtcmVxdWVzdEF1dG9jb3JyZWN0aW9uQ29udGV4dFdp
dGhDb21wbGV0aW9uSGFuZGxlcjogaW4gV0tDb250ZW50Vmlldy4gV2hpbGUgbm90b3Jpb3VzCisg
ICAgICAgIGZvciBiZWluZyBzeW5jaHJvbm91cyBJUEMsIHRoaXMgaXMgbWl0aWdhdGVkIGJ5ICgx
KSBiZWluZyBsaW1pdGluZyB0byBvbmx5IGluc3RhbmNlcyB3aGVyZSB3ZSBoYXZlIGEgaGlkZGVu
CisgICAgICAgIGVkaXRhYmxlIGFyZWEsIGFuZCAoMikgYmVpbmcgbGltaXRlZCBieSBhIGJhdGNo
aW5nIG1lY2hhbmlzbSBpbiB0aGUgd2ViIHByb2Nlc3MsIHN1Y2ggdGhhdCBpZiB0aGUgZm9jdXNl
ZAorICAgICAgICBlbGVtZW50IGlzIGJsdXJyZWQsIHJlZm9jdXNlZCwgcmUtYmx1cnJlZCwgYW5k
IHJlZm9jdXNlZCBtYW55IHRpbWVzIGluIHRoZSBzYW1lIHJ1bmxvb3AsIHdlJ2xsIG9ubHkgc2Vu
ZCBhCisgICAgICAgIHNpbmdsZSBVcGRhdGVJbnB1dENvbnRleHRBZnRlckJsdXJyaW5nQW5kUmVm
b2N1c2luZ0VsZW1lbnQgbWVzc2FnZXMgKGFzIG9wcG9zZWQgdG8gdGhlIG1hbnkgRWxlbWVudERp
ZEZvY3VzCisgICAgICAgIG1lc3NhZ2VzIHdlIHdvdWxkJ3ZlIHNlbnQgaW4gcHJldmlvdXMgcmVs
ZWFzZXMpLgorCisgICAgICAgICogVUlQcm9jZXNzL1BhZ2VDbGllbnQuaDoKKyAgICAgICAgKiBV
SVByb2Nlc3MvV2ViUGFnZVByb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94
eS5tZXNzYWdlcy5pbjoKKworICAgICAgICBBZGQgYSBuZXcgbWVjaGFuaXNtIHRvIHVwZGF0ZSB0
aGUgcGxhdGZvcm0gaW5wdXQgY29udGV4dCAob24gaU9TLCBVSUtleWJvYXJkSW1wbCdzIGRvY3Vt
ZW50IHN0YXRlKSB3aGVuIGZvY3VzCisgICAgICAgIG1vdmVzIGF3YXkgZnJvbSBhbmQgaW1tZWRp
YXRlbHkgcmV0dXJucyB0byBhIGhpZGRlbiBlZGl0YWJsZSBlbGVtZW50LgorCisgICAgICAgICog
VUlQcm9jZXNzL2lvcy9QYWdlQ2xpZW50SW1wbElPUy5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9p
b3MvUGFnZUNsaWVudEltcGxJT1MubW06CisgICAgICAgIChXZWJLaXQ6OlBhZ2VDbGllbnRJbXBs
Ojp1cGRhdGVJbnB1dENvbnRleHRBZnRlckJsdXJyaW5nQW5kUmVmb2N1c2luZ0VsZW1lbnQpOgor
ICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLmg6CisgICAg
ICAgICogVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW06CisgICAgICAg
ICgtW1dLQ29udGVudFZpZXcgX3VwZGF0ZUlucHV0Q29udGV4dEFmdGVyQmx1cnJpbmdBbmRSZWZv
Y3VzaW5nRWxlbWVudF0pOgorCisgICAgICAgIFRlbGwgdGhlIGFjdGl2ZSBVSUtleWJvYXJkSW1w
bCB0byByZWZldGNoIGRvY3VtZW50IHN0YXRlIGZyb20gdGhlIFdLQ29udGVudFZpZXcuIFdoaWxl
IHRoaXMgZG9lcyByZXN1bHQgaW4gYSBuZXcKKyAgICAgICAgYXV0b2NvcnJlY3Rpb24gY29udGV4
dCByZXF1ZXN0ICh3aGljaCwgdW5mb3J0dW5hdGVseSwgdHJpZ2dlcnMgc3luY2hyb25vdXMgSVBD
IHRvIHRoZSB3ZWIgcHJvY2VzcyksIHRoaXMgcmVxdWVzdAorICAgICAgICB3b3VsZCd2ZSBzdGls
bCBoYXBwZW5lZCBhbnl3YXlzIGluIHRoZSBjYXNlIHdoZXJlIHdlIHdvdWxkIHByZXZpb3VzbHkg
aGF2ZSBzZW50IGFuIEVsZW1lbnREaWRGb2N1cyBtZXNzYWdlLgorCisgICAgICAgICogVUlQcm9j
ZXNzL2lvcy9XZWJQYWdlUHJveHlJT1MubW06CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94
eTo6dXBkYXRlSW5wdXRDb250ZXh0QWZ0ZXJCbHVycmluZ0FuZFJlZm9jdXNpbmdFbGVtZW50KToK
KyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJL
aXQ6OldlYlBhZ2U6OmVsZW1lbnREaWRGb2N1cyk6CisKKyAgICAgICAgSW4gdGhlIGNhc2Ugd2hl
cmUgd2UgYXZvaWQgc2VuZGluZyBhIGZ1bGwgRWxlbWVudERpZEZvY3VzIG1lc3NhZ2UgdG8gdGhl
IFVJIHByb2Nlc3MgZHVlIHRvIHJlZm9jdXNpbmcgdGhlIHNhbWUKKyAgICAgICAgZWxlbWVudCwg
d2Ugc2hvdWxkIHN0aWxsIG5vdGlmeSB0aGUgVUkgcHJvY2VzcyBzbyB0aGF0IGl0IGNhbiBzeW5j
aHJvbml6ZSBzdGF0ZSBiZXR3ZWVuIHRoZSBhcHBsaWNhdGlvbiBwcm9jZXNzCisgICAgICAgIGFu
ZCBrYmQuIFNlZSBhYm92ZSBmb3IgbW9yZSBkZXRhaWxzLgorCisgICAgICAgIChXZWJLaXQ6Oldl
YlBhZ2U6OmVsZW1lbnREaWRCbHVyKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6dXBkYXRl
SW5wdXRDb250ZXh0QWZ0ZXJCbHVycmluZ0FuZFJlZm9jdXNpbmdFbGVtZW50SWZOZWVkZWQpOgor
ICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmg6CisgICAgICAgICogV2ViUHJv
Y2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdl
Ojp1cGRhdGVJbnB1dENvbnRleHRBZnRlckJsdXJyaW5nQW5kUmVmb2N1c2luZ0VsZW1lbnRJZk5l
ZWRlZCk6CisKIDIwMTktMDgtMjAgIEJyZW50IEZ1bGdoYW0gIDxiZnVsZ2hhbUBhcHBsZS5jb20+
CiAKICAgICAgICAgW0ZUV10gRml4IHNjcm9sbGluZyBpbiBtb2Rlcm4gV2ViS2l0IHZpZXdzCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcAppbmRleCAxODU0Njg3MDUxNmU0
ZDBmZDVlMmIwMjhkZWIzYmM0MGNlNmM4YmY5Li4yNmRjNDYwZTBkZTgxZDQ5YzI0ZWIzYjllOWIx
YjZjYjQwNjFiMDExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
TGF5ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAK
QEAgLTY4MTUsNiArNjgxNSw5IEBAIGJvb2wgUmVuZGVyTGF5ZXI6OmlzVHJhbnNwYXJlbnRPckZ1
bGx5Q2xpcHBlZFJlc3BlY3RpbmdQYXJlbnRGcmFtZXMoKSBjb25zdAogICAgICAgICBpZiAoIXJl
bmRlclZpZXdMYXllcikKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKIAorICAgICAgICBpZiAo
aXM8SFRNTEZyYW1lT3duZXJFbGVtZW50PihsYXllci5yZW5kZXJlcigpLmVsZW1lbnQoKSkgJiYg
bGF5ZXIudmlzaWJsZVNpemUoKS5pc0VtcHR5KCkpCisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsK
KwogICAgICAgICBMYXlvdXRSZWN0IGxheWVyQm91bmRzOwogICAgICAgICBDbGlwUmVjdCBiYWNr
Z3JvdW5kUmVjdDsKICAgICAgICAgQ2xpcFJlY3QgZm9yZWdyb3VuZFJlY3Q7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9QYWdlQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9QYWdlQ2xpZW50LmgKaW5kZXggNmNmNWUxNGVhNTY5ZjIzZGE4NDc1NDA5NmNhNTEx
NDUzYzI5OGI5MC4uZTgyN2JiNDI1MTM2NDI4YzE5MzZjMGY4YjM3NTU0Mjk4N2E2NmExZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUGFnZUNsaWVudC5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1BhZ2VDbGllbnQuaApAQCAtMzg2LDYgKzM4Niw3IEBAIHB1Ymxp
YzoKICAgICB2aXJ0dWFsIHZvaWQgcmVzdG9yZVBhZ2VDZW50ZXJBbmRTY2FsZShPcHRpb25hbDxX
ZWJDb3JlOjpGbG9hdFBvaW50PiBjZW50ZXIsIGRvdWJsZSBzY2FsZSkgPSAwOwogCiAgICAgdmly
dHVhbCB2b2lkIGVsZW1lbnREaWRGb2N1cyhjb25zdCBGb2N1c2VkRWxlbWVudEluZm9ybWF0aW9u
JiwgYm9vbCB1c2VySXNJbnRlcmFjdGluZywgYm9vbCBibHVyUHJldmlvdXNOb2RlLCBPcHRpb25T
ZXQ8V2ViQ29yZTo6QWN0aXZpdHlTdGF0ZTo6RmxhZz4gYWN0aXZpdHlTdGF0ZUNoYW5nZXMsIEFQ
STo6T2JqZWN0KiB1c2VyRGF0YSkgPSAwOworICAgIHZpcnR1YWwgdm9pZCB1cGRhdGVJbnB1dENv
bnRleHRBZnRlckJsdXJyaW5nQW5kUmVmb2N1c2luZ0VsZW1lbnQoKSA9IDA7CiAgICAgdmlydHVh
bCB2b2lkIGVsZW1lbnREaWRCbHVyKCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBmb2N1c2VkRWxl
bWVudERpZENoYW5nZUlucHV0TW9kZShXZWJDb3JlOjpJbnB1dE1vZGUpID0gMDsKICAgICB2aXJ0
dWFsIHZvaWQgZGlkUmVjZWl2ZUVkaXRvclN0YXRlVXBkYXRlQWZ0ZXJGb2N1cygpID0gMDsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oIGIvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKaW5kZXggZTVmOTUwM2U3ZDRiNjY1N2E2
YTUwZDc5ZjE3YTg3ZGEzOGYwMTk0ZC4uNGVhMTVhM2JjMTgzOTY4N2NlYWUyYWNlNGE5OWI1NTk3
OWMzNTYyNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5
LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKQEAgLTE5NDQs
NiArMTk0NCw3IEBAIHByaXZhdGU6CiAKICAgICB2b2lkIGVsZW1lbnREaWRGb2N1cyhjb25zdCBG
b2N1c2VkRWxlbWVudEluZm9ybWF0aW9uJiwgYm9vbCB1c2VySXNJbnRlcmFjdGluZywgYm9vbCBi
bHVyUHJldmlvdXNOb2RlLCBPcHRpb25TZXQ8V2ViQ29yZTo6QWN0aXZpdHlTdGF0ZTo6RmxhZz4g
YWN0aXZpdHlTdGF0ZUNoYW5nZXMsIGNvbnN0IFVzZXJEYXRhJik7CiAgICAgdm9pZCBlbGVtZW50
RGlkQmx1cigpOworICAgIHZvaWQgdXBkYXRlSW5wdXRDb250ZXh0QWZ0ZXJCbHVycmluZ0FuZFJl
Zm9jdXNpbmdFbGVtZW50KCk7CiAgICAgdm9pZCBmb2N1c2VkRWxlbWVudERpZENoYW5nZUlucHV0
TW9kZShXZWJDb3JlOjpJbnB1dE1vZGUpOwogICAgIHZvaWQgZGlkUmVsZWFzZUFsbFRvdWNoUG9p
bnRzKCk7CiAgICAgdm9pZCBkaWRSZWNlaXZlRWRpdG9yU3RhdGVVcGRhdGVBZnRlckZvY3VzKCk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2Fn
ZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4K
aW5kZXggNzlmNjJkZmQ5YzJjYzVlYjJhNjFjMTk3Mzg1NDFiOWE5YTMzNTZiOS4uNjFkYzFiYzUw
MmQ1YzkyNTMzZTI3MWI3ZDE2YzlkZjRjZjI2M2E0MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbgpAQCAtNDA4LDYgKzQwOCw3IEBAIG1l
c3NhZ2VzIC0+IFdlYlBhZ2VQcm94eSB7CiAKICAgICBFbGVtZW50RGlkRm9jdXMoc3RydWN0IFdl
YktpdDo6Rm9jdXNlZEVsZW1lbnRJbmZvcm1hdGlvbiBpbmZvcm1hdGlvbiwgYm9vbCB1c2VySXNJ
bnRlcmFjdGluZywgYm9vbCBibHVyUHJldmlvdXNOb2RlLCBPcHRpb25TZXQ8V2ViQ29yZTo6QWN0
aXZpdHlTdGF0ZTo6RmxhZz4gYWN0aXZpdHlTdGF0ZUNoYW5nZXMsIFdlYktpdDo6VXNlckRhdGEg
dXNlckRhdGEpCiAgICAgRWxlbWVudERpZEJsdXIoKQorICAgIFVwZGF0ZUlucHV0Q29udGV4dEFm
dGVyQmx1cnJpbmdBbmRSZWZvY3VzaW5nRWxlbWVudCgpCiAgICAgRm9jdXNlZEVsZW1lbnREaWRD
aGFuZ2VJbnB1dE1vZGUoZW51bTp1aW50OF90IFdlYkNvcmU6OklucHV0TW9kZSBtb2RlKQogICAg
IFNjcm9sbGluZ05vZGVTY3JvbGxXaWxsU3RhcnRTY3JvbGwoKQogICAgIFNjcm9sbGluZ05vZGVT
Y3JvbGxEaWRFbmRTY3JvbGwoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
aW9zL1BhZ2VDbGllbnRJbXBsSU9TLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvUGFn
ZUNsaWVudEltcGxJT1MuaAppbmRleCAzMzMxZmQ0ZDIzMzFhY2NiMDZiODc4NzZkZGUyOGJhNjdm
YjhhNzVlLi5iYjk3YjA1M2JkMGJhNTk2OTZjODc5MWY0MmM1NzVlNzI0MTc4ZjFjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvUGFnZUNsaWVudEltcGxJT1MuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvUGFnZUNsaWVudEltcGxJT1MuaApAQCAtMTQ5
LDYgKzE0OSw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCByZXN0b3JlUGFnZUNlbnRlckFuZFNjYWxl
KE9wdGlvbmFsPFdlYkNvcmU6OkZsb2F0UG9pbnQ+LCBkb3VibGUpIG92ZXJyaWRlOwogCiAgICAg
dm9pZCBlbGVtZW50RGlkRm9jdXMoY29uc3QgRm9jdXNlZEVsZW1lbnRJbmZvcm1hdGlvbiYsIGJv
b2wgdXNlcklzSW50ZXJhY3RpbmcsIGJvb2wgYmx1clByZXZpb3VzTm9kZSwgT3B0aW9uU2V0PFdl
YkNvcmU6OkFjdGl2aXR5U3RhdGU6OkZsYWc+IGFjdGl2aXR5U3RhdGVDaGFuZ2VzLCBBUEk6Ok9i
amVjdCogdXNlckRhdGEpIG92ZXJyaWRlOworICAgIHZvaWQgdXBkYXRlSW5wdXRDb250ZXh0QWZ0
ZXJCbHVycmluZ0FuZFJlZm9jdXNpbmdFbGVtZW50KCkgZmluYWw7CiAgICAgdm9pZCBlbGVtZW50
RGlkQmx1cigpIG92ZXJyaWRlOwogICAgIHZvaWQgZm9jdXNlZEVsZW1lbnREaWRDaGFuZ2VJbnB1
dE1vZGUoV2ViQ29yZTo6SW5wdXRNb2RlKSBvdmVycmlkZTsKICAgICB2b2lkIGRpZFJlY2VpdmVF
ZGl0b3JTdGF0ZVVwZGF0ZUFmdGVyRm9jdXMoKSBvdmVycmlkZTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9QYWdlQ2xpZW50SW1wbElPUy5tbSBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL2lvcy9QYWdlQ2xpZW50SW1wbElPUy5tbQppbmRleCA5MmZhYjdlMDU5OGZk
MzZmM2Y1NTBiNDE0OWE0N2UyNGY4YjY4YzJkLi5kMzkzMGI1ZTdmZDBlNjIwZmY1ZDUxODY4YTc3
NTM3Y2E5ZmE0OTEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvUGFn
ZUNsaWVudEltcGxJT1MubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1BhZ2VD
bGllbnRJbXBsSU9TLm1tCkBAIC01NTgsNiArNTU4LDExIEBAIHZvaWQgUGFnZUNsaWVudEltcGw6
OmVsZW1lbnREaWRGb2N1cyhjb25zdCBGb2N1c2VkRWxlbWVudEluZm9ybWF0aW9uJiBub2RlSW5m
b3JtCiAgICAgW21fY29udGVudFZpZXcgX2VsZW1lbnREaWRGb2N1czpub2RlSW5mb3JtYXRpb24g
dXNlcklzSW50ZXJhY3Rpbmc6dXNlcklzSW50ZXJhY3RpbmcgYmx1clByZXZpb3VzTm9kZTpibHVy
UHJldmlvdXNOb2RlIGFjdGl2aXR5U3RhdGVDaGFuZ2VzOmFjdGl2aXR5U3RhdGVDaGFuZ2VzIHVz
ZXJPYmplY3Q6dXNlck9iamVjdF07CiB9CiAKK3ZvaWQgUGFnZUNsaWVudEltcGw6OnVwZGF0ZUlu
cHV0Q29udGV4dEFmdGVyQmx1cnJpbmdBbmRSZWZvY3VzaW5nRWxlbWVudCgpCit7CisgICAgW21f
Y29udGVudFZpZXcgX3VwZGF0ZUlucHV0Q29udGV4dEFmdGVyQmx1cnJpbmdBbmRSZWZvY3VzaW5n
RWxlbWVudF07Cit9CisKIGJvb2wgUGFnZUNsaWVudEltcGw6OmlzRm9jdXNpbmdFbGVtZW50KCkK
IHsKICAgICByZXR1cm4gW21fY29udGVudFZpZXcgaXNGb2N1c2luZ0VsZW1lbnRdOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlv
bi5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlv
bi5oCmluZGV4IGY4YjY0Nzc1Y2UwYWNkZjlhMjI0MzkwZDc5MmJlZDRmYjc3MWQzMGYuLjMxMmZl
MTRlMmUxMzQ2ZjNmYTc0ZmY2MzdiYzM3ZjYxNjRkMzE4MTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24uaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLmgKQEAgLTQ1
OSw2ICs0NTksNyBAQCBGT1JfRUFDSF9QUklWQVRFX1dLQ09OVEVOVFZJRVdfQUNUSU9OKERFQ0xB
UkVfV0tDT05URU5UVklFV19BQ1RJT05fRk9SX1dFQl9WSUVXKQogLSAodm9pZClfZGlzYWJsZURv
dWJsZVRhcEdlc3R1cmVzRHVyaW5nVGFwSWZOZWNlc3Nhcnk6KHVpbnQ2NF90KXJlcXVlc3RJRDsK
IC0gKHZvaWQpX2hhbmRsZVNtYXJ0TWFnbmlmaWNhdGlvbkluZm9ybWF0aW9uRm9yUG90ZW50aWFs
VGFwOih1aW50NjRfdClyZXF1ZXN0SUQgcmVuZGVyUmVjdDooY29uc3QgV2ViQ29yZTo6RmxvYXRS
ZWN0JilyZW5kZXJSZWN0IGZpdEVudGlyZVJlY3Q6KEJPT0wpZml0RW50aXJlUmVjdCB2aWV3cG9y
dE1pbmltdW1TY2FsZTooZG91YmxlKXZpZXdwb3J0TWluaW11bVNjYWxlIHZpZXdwb3J0TWF4aW11
bVNjYWxlOihkb3VibGUpdmlld3BvcnRNYXhpbXVtU2NhbGU7CiAtICh2b2lkKV9lbGVtZW50RGlk
Rm9jdXM6KGNvbnN0IFdlYktpdDo6Rm9jdXNlZEVsZW1lbnRJbmZvcm1hdGlvbiYpaW5mb3JtYXRp
b24gdXNlcklzSW50ZXJhY3Rpbmc6KEJPT0wpdXNlcklzSW50ZXJhY3RpbmcgYmx1clByZXZpb3Vz
Tm9kZTooQk9PTClibHVyUHJldmlvdXNOb2RlIGFjdGl2aXR5U3RhdGVDaGFuZ2VzOihPcHRpb25T
ZXQ8V2ViQ29yZTo6QWN0aXZpdHlTdGF0ZTo6RmxhZz4pYWN0aXZpdHlTdGF0ZUNoYW5nZXMgdXNl
ck9iamVjdDooTlNPYmplY3QgPE5TU2VjdXJlQ29kaW5nPiAqKXVzZXJPYmplY3Q7CistICh2b2lk
KV91cGRhdGVJbnB1dENvbnRleHRBZnRlckJsdXJyaW5nQW5kUmVmb2N1c2luZ0VsZW1lbnQ7CiAt
ICh2b2lkKV9lbGVtZW50RGlkQmx1cjsKIC0gKHZvaWQpX2hpZGVDb250ZXh0TWVudUhpbnRDb250
YWluZXI7CiAtICh2b2lkKV9kaWRVcGRhdGVJbnB1dE1vZGU6KFdlYkNvcmU6OklucHV0TW9kZSlt
b2RlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZp
ZXdJbnRlcmFjdGlvbi5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRW
aWV3SW50ZXJhY3Rpb24ubW0KaW5kZXggZjQwZWU3N2QyZjViMWZlNTkxYzI0ZjVhZGMzOTgxZDhl
ZTM4ZDlkNC4uNWY4ZGRiZDNmNWRjY2Q4YjA3YmVhY2M4YzRhYWZlMDE4MTc4YWMwMiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlv
bi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVy
YWN0aW9uLm1tCkBAIC01NDkyLDYgKzU0OTIsMTQgQEAgLSAodm9pZClfZWxlbWVudERpZEJsdXIK
ICAgICAgICAgX2RpZEFjY2Vzc29yeVRhYkluaXRpYXRlRm9jdXMgPSBOTzsKIH0KIAorLSAodm9p
ZClfdXBkYXRlSW5wdXRDb250ZXh0QWZ0ZXJCbHVycmluZ0FuZFJlZm9jdXNpbmdFbGVtZW50Cit7
CisgICAgaWYgKCFoYXNGb2N1c2VkRWxlbWVudChfZm9jdXNlZEVsZW1lbnRJbmZvcm1hdGlvbikg
fHwgIV9zdXBwcmVzc1NlbGVjdGlvbkFzc2lzdGFudFJlYXNvbnMpCisgICAgICAgIHJldHVybjsK
KworICAgIFtVSUtleWJvYXJkSW1wbC5hY3RpdmVJbnN0YW5jZSB1cGRhdGVGb3JDaGFuZ2VkU2Vs
ZWN0aW9uXTsKK30KKwogLSAoQk9PTClzaG91bGRJZ25vcmVLZXlib2FyZFdpbGxIaWRlTm90aWZp
Y2F0aW9uCiB7CiAgICAgLy8gSWdub3JlIGtleWJvYXJkIHdpbGwgaGlkZSBub3RpZmljYXRpb25z
IHNlbnQgZHVyaW5nIHJvdGF0aW9uLiBUaGV5J3JlIGp1c3QgdGhlcmUgZm9yCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV2ViUGFnZVByb3h5SU9TLm1tIGIvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvaW9zL1dlYlBhZ2VQcm94eUlPUy5tbQppbmRleCAzMWI3ZDgzMGQz
MDdmYWQ4NWMyNmQ1OGMwZWY2YTcyYjIzNTg5MzJmLi5kZDU2NmQxMTAwZDM5ODM4YTY0ZDJkZDk4
MjQ3NjEyMWIyMzlkMWNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3Mv
V2ViUGFnZVByb3h5SU9TLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XZWJQ
YWdlUHJveHlJT1MubW0KQEAgLTkwNCw2ICs5MDQsMTEgQEAgdm9pZCBXZWJQYWdlUHJveHk6OnNl
dElzU2hvd2luZ0lucHV0Vmlld0ZvckZvY3VzZWRFbGVtZW50KGJvb2wgc2hvd2luZ0lucHV0Vmll
dykKICAgICBwcm9jZXNzKCkuc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6U2V0SXNTaG93aW5nSW5w
dXRWaWV3Rm9yRm9jdXNlZEVsZW1lbnQoc2hvd2luZ0lucHV0VmlldyksIG1fcGFnZUlEKTsKIH0K
IAordm9pZCBXZWJQYWdlUHJveHk6OnVwZGF0ZUlucHV0Q29udGV4dEFmdGVyQmx1cnJpbmdBbmRS
ZWZvY3VzaW5nRWxlbWVudCgpCit7CisgICAgcGFnZUNsaWVudCgpLnVwZGF0ZUlucHV0Q29udGV4
dEFmdGVyQmx1cnJpbmdBbmRSZWZvY3VzaW5nRWxlbWVudCgpOworfQorCiB2b2lkIFdlYlBhZ2VQ
cm94eTo6ZWxlbWVudERpZEZvY3VzKGNvbnN0IEZvY3VzZWRFbGVtZW50SW5mb3JtYXRpb24mIGlu
Zm9ybWF0aW9uLCBib29sIHVzZXJJc0ludGVyYWN0aW5nLCBib29sIGJsdXJQcmV2aW91c05vZGUs
IE9wdGlvblNldDxXZWJDb3JlOjpBY3Rpdml0eVN0YXRlOjpGbGFnPiBhY3Rpdml0eVN0YXRlQ2hh
bmdlcywgY29uc3QgVXNlckRhdGEmIHVzZXJEYXRhKQogewogICAgIG1fcGVuZGluZ0lucHV0TW9k
ZUNoYW5nZSA9IFdURjo6bnVsbG9wdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBh
Z2UvV2ViUGFnZS5jcHAKaW5kZXggYWQ5MDY5OTA3NWMwODZkYjU1NjQ3NWI2N2VhMWU3ZDhjYmUw
ZTA1OC4uYTVlNDFhNWE1ZDI0MGMzMmVhMDgxMWE1ZDZlZmY5NDkyOWY5OWFmYyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKKysrIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKQEAgLTU0NjksNiArNTQ2
OSw3IEBAIHN0YXRpYyBib29sIGlzVGV4dEZvcm1Db250cm9sT3JFZGl0YWJsZUNvbnRlbnQoY29u
c3QgV2ViQ29yZTo6RWxlbWVudCYgZWxlbWVudCkKIHZvaWQgV2ViUGFnZTo6ZWxlbWVudERpZEZv
Y3VzKFdlYkNvcmU6OkVsZW1lbnQmIGVsZW1lbnQpCiB7CiAgICAgaWYgKCFzaG91bGREaXNwYXRj
aFVwZGF0ZUFmdGVyRm9jdXNpbmdFbGVtZW50KGVsZW1lbnQpKSB7CisgICAgICAgIHVwZGF0ZUlu
cHV0Q29udGV4dEFmdGVyQmx1cnJpbmdBbmRSZWZvY3VzaW5nRWxlbWVudElmTmVlZGVkKGVsZW1l
bnQpOwogICAgICAgICBtX2ZvY3VzZWRFbGVtZW50ID0gJmVsZW1lbnQ7CiAgICAgICAgIG1fcmVj
ZW50bHlCbHVycmVkRWxlbWVudCA9IG51bGxwdHI7CiAgICAgICAgIHJldHVybjsKQEAgLTU0NzYs
NiArNTQ3Nyw3IEBAIHZvaWQgV2ViUGFnZTo6ZWxlbWVudERpZEZvY3VzKFdlYkNvcmU6OkVsZW1l
bnQmIGVsZW1lbnQpCiAKICAgICBpZiAoaXM8SFRNTFNlbGVjdEVsZW1lbnQ+KGVsZW1lbnQpIHx8
IGlzVGV4dEZvcm1Db250cm9sT3JFZGl0YWJsZUNvbnRlbnQoZWxlbWVudCkpIHsKICAgICAgICAg
bV9mb2N1c2VkRWxlbWVudCA9ICZlbGVtZW50OworICAgICAgICBtX2hhc1BlbmRpbmdJbnB1dENv
bnRleHRVcGRhdGVBZnRlckJsdXJyaW5nQW5kUmVmb2N1c2luZ0VsZW1lbnQgPSBmYWxzZTsKIAog
I2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAKQEAgLTU1MTcsNiArNTUxOSw3IEBAIHZvaWQgV2Vi
UGFnZTo6ZWxlbWVudERpZEJsdXIoV2ViQ29yZTo6RWxlbWVudCYgZWxlbWVudCkKICAgICAgICAg
ICAgIH0KICAgICAgICAgICAgIHByb3RlY3RlZFRoaXMtPm1fcmVjZW50bHlCbHVycmVkRWxlbWVu
dCA9IG51bGxwdHI7CiAgICAgICAgIH0pOworICAgICAgICBtX2hhc1BlbmRpbmdJbnB1dENvbnRl
eHRVcGRhdGVBZnRlckJsdXJyaW5nQW5kUmVmb2N1c2luZ0VsZW1lbnQgPSBmYWxzZTsKICAgICB9
CiB9CiAKQEAgLTY2OTMsNiArNjY5NiwxMCBAQCBXZWJDb3JlOjpJbnRSZWN0IFdlYlBhZ2U6OnJl
Y3RGb3JFbGVtZW50QXRJbnRlcmFjdGlvbkxvY2F0aW9uKCkgY29uc3QKICAgICByZXR1cm4geyB9
OwogfQogCit2b2lkIFdlYlBhZ2U6OnVwZGF0ZUlucHV0Q29udGV4dEFmdGVyQmx1cnJpbmdBbmRS
ZWZvY3VzaW5nRWxlbWVudElmTmVlZGVkKEVsZW1lbnQmKQoreworfQorCiAjZW5kaWYgLy8gIVBM
QVRGT1JNKElPU19GQU1JTFkpCiAKIHN0YXRpYyBJbnRSZWN0IGVsZW1lbnRSZWN0SW5Sb290Vmll
d0Nvb3JkaW5hdGVzKGNvbnN0IEVsZW1lbnQmIGVsZW1lbnQsIGNvbnN0IEZyYW1lJiBmcmFtZSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaCBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAppbmRleCA0MGNlZDc2
NGUzMDZmMTllMzA2ODRiY2U2N2NlY2Q2N2Y2MjAwNjU3Li40N2I2MzFmYTIyMGNmM2RjMjc0YzE2
NWQxMjg5NTY3OWEzMjA3NzBhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJQYWdlLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViUGFnZS5oCkBAIC02MDYsNiArNjA2LDcgQEAgcHVibGljOgogICAgIHZvaWQgZWxlbWVudERp
ZEJsdXIoV2ViQ29yZTo6RWxlbWVudCYpOwogICAgIHZvaWQgZm9jdXNlZEVsZW1lbnREaWRDaGFu
Z2VJbnB1dE1vZGUoV2ViQ29yZTo6RWxlbWVudCYsIFdlYkNvcmU6OklucHV0TW9kZSk7CiAgICAg
dm9pZCByZXNldEZvY3VzZWRFbGVtZW50Rm9yRnJhbWUoV2ViRnJhbWUqKTsKKyAgICB2b2lkIHVw
ZGF0ZUlucHV0Q29udGV4dEFmdGVyQmx1cnJpbmdBbmRSZWZvY3VzaW5nRWxlbWVudElmTmVlZGVk
KFdlYkNvcmU6OkVsZW1lbnQmKTsKIAogICAgIHZvaWQgZGlzYWJsZWRBZGFwdGF0aW9uc0RpZENo
YW5nZShjb25zdCBPcHRpb25TZXQ8V2ViQ29yZTo6RGlzYWJsZWRBZGFwdGF0aW9ucz4mKTsKICAg
ICB2b2lkIHZpZXdwb3J0UHJvcGVydGllc0RpZENoYW5nZShjb25zdCBXZWJDb3JlOjpWaWV3cG9y
dEFyZ3VtZW50cyYpOwpAQCAtMTgyNSw2ICsxODI2LDcgQEAgcHJpdmF0ZToKIAogICAgIFJlZlB0
cjxXZWJDb3JlOjpFbGVtZW50PiBtX2ZvY3VzZWRFbGVtZW50OwogICAgIFJlZlB0cjxXZWJDb3Jl
OjpFbGVtZW50PiBtX3JlY2VudGx5Qmx1cnJlZEVsZW1lbnQ7CisgICAgYm9vbCBtX2hhc1BlbmRp
bmdJbnB1dENvbnRleHRVcGRhdGVBZnRlckJsdXJyaW5nQW5kUmVmb2N1c2luZ0VsZW1lbnQgeyBm
YWxzZSB9OwogICAgIGJvb2wgbV9oYXNQZW5kaW5nRWRpdG9yU3RhdGVVcGRhdGUgeyBmYWxzZSB9
OwogCiAjaWYgRU5BQkxFKElPU19UT1VDSF9FVkVOVFMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9pb3MvV2ViUGFnZUlPUy5tbSBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCmluZGV4IDE4MWM1YWMyZGY2Y2Rm
NDMzNTM3YTI0YTFmYTlhYWViNmJiZmYyY2YuLmVlNGE4MTUxNDNmZGUwYjNiOTJmOGQzMTQ3YzU0
ODA3OWEwODAzYjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdl
L2lvcy9XZWJQYWdlSU9TLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdl
L2lvcy9XZWJQYWdlSU9TLm1tCkBAIC0xMTY5LDYgKzExNjksMTkgQEAgdm9pZCBXZWJQYWdlOjpp
bnNwZWN0b3JOb2RlU2VhcmNoRW5kZWRBdFBvc2l0aW9uKGNvbnN0IEZsb2F0UG9pbnQmIHBvc2l0
aW9uKQogICAgICAgICBub2RlLT5pbnNwZWN0KCk7CiB9CiAKK3ZvaWQgV2ViUGFnZTo6dXBkYXRl
SW5wdXRDb250ZXh0QWZ0ZXJCbHVycmluZ0FuZFJlZm9jdXNpbmdFbGVtZW50SWZOZWVkZWQoRWxl
bWVudCYgZWxlbWVudCkKK3sKKyAgICBpZiAobV9yZWNlbnRseUJsdXJyZWRFbGVtZW50ICE9ICZl
bGVtZW50IHx8ICFtX2lzU2hvd2luZ0lucHV0Vmlld0ZvckZvY3VzZWRFbGVtZW50KQorICAgICAg
ICByZXR1cm47CisKKyAgICBtX2hhc1BlbmRpbmdJbnB1dENvbnRleHRVcGRhdGVBZnRlckJsdXJy
aW5nQW5kUmVmb2N1c2luZ0VsZW1lbnQgPSB0cnVlOworICAgIGNhbGxPbk1haW5UaHJlYWQoW3Ro
aXMsIHByb3RlY3RlZFRoaXMgPSBtYWtlUmVmUHRyKHRoaXMpXSB7CisgICAgICAgIGlmIChtX2hh
c1BlbmRpbmdJbnB1dENvbnRleHRVcGRhdGVBZnRlckJsdXJyaW5nQW5kUmVmb2N1c2luZ0VsZW1l
bnQpCisgICAgICAgICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlVwZGF0ZUlucHV0
Q29udGV4dEFmdGVyQmx1cnJpbmdBbmRSZWZvY3VzaW5nRWxlbWVudCgpKTsKKyAgICAgICAgbV9o
YXNQZW5kaW5nSW5wdXRDb250ZXh0VXBkYXRlQWZ0ZXJCbHVycmluZ0FuZFJlZm9jdXNpbmdFbGVt
ZW50ID0gZmFsc2U7CisgICAgfSk7Cit9CisKIHZvaWQgV2ViUGFnZTo6Ymx1ckZvY3VzZWRFbGVt
ZW50KCkKIHsKICAgICBpZiAoIW1fZm9jdXNlZEVsZW1lbnQpCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZjI0ZjAxNWU5YjEy
MWUyZmY5ZWM3ZjM1ZDM3MmM5MGJkNzRhMzBjMy4uODRiMTU2MjFlNWFhZGZmYzU2NTZjZGU4Y2Ey
M2RmN2EwZDllODkwNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xh
eW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDE5LTA4LTIxICBXZW5zb24g
SHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFR5cGluZyBLb3JlYW4g
aW4gdGl0bGUgZmllbGQgYWZ0ZXIgdHlwaW5nIGluIHRoZSBib2R5IGluc2VydHMgZXh0cmFuZW91
cyBjaGFyYWN0ZXJzIG9uIGJsb2cubmF2ZXIuY29tCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDEwMjMKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU0
Mjk0Nzk0PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEFkZCBhIG5ldyBsYXlvdXQgdGVzdCB0byB2ZXJpZnkgdGhhdCB3ZSBzdXBwcmVzcyB0ZXh0IGlu
dGVyYWN0aW9ucyB3aGVuIGZvY3VzaW5nIGFuIGVkaXRhYmxlIGVsZW1lbnQgaW5zaWRlIGFuCisg
ICAgICAgIGVtcHR5LCBib3JkZXJsZXNzIHN1YmZyYW1lLgorCisgICAgICAgICogZWRpdGluZy9z
ZWxlY3Rpb24vaW9zL2RvLW5vdC1zaG93LXNlbGVjdGlvbi1pbi1lbXB0eS1ib3JkZXJsZXNzLXN1
YmZyYW1lLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZWRpdGluZy9zZWxlY3Rpb24v
aW9zL2RvLW5vdC1zaG93LXNlbGVjdGlvbi1pbi1lbXB0eS1ib3JkZXJsZXNzLXN1YmZyYW1lLmh0
bWw6IEFkZGVkLgorCiAyMDE5LTA4LTIwICBaYWxhbiBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+
CiAKICAgICAgICAgW0NvbnRlbnRDaGFuZ2VPYnNlcnZlcl0gaXNDb25zaWRlcmVkQ2xpY2thYmxl
IHNob3VsZCBiZSBhYmxlIHRvIHByb2Nlc3MgZWxlbWVudHMgd2l0aCBubyByZW5kZXJlcnMKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy9kby1ub3Qtc2hvdy1z
ZWxlY3Rpb24taW4tZW1wdHktYm9yZGVybGVzcy1zdWJmcmFtZS1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3MvZG8tbm90LXNob3ctc2VsZWN0aW9uLWluLWVt
cHR5LWJvcmRlcmxlc3Mtc3ViZnJhbWUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjViYmIyY2Vh
ZWIzYWU2NTY5OWVmZWVkMTI5ZWVmY2Y0OTE1MjI3MTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3MvZG8tbm90LXNob3ctc2VsZWN0aW9uLWluLWVt
cHR5LWJvcmRlcmxlc3Mtc3ViZnJhbWUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTEgQEAKK1Ro
aXMgdGVzdCB2ZXJpZmllcyB0aGF0IHNlbGVjdGlvbiBVSSBpcyBzdXBwcmVzc2VkIHdoZW4gZm9j
dXNpbmcgYW4gZWxlbWVudCBpbnNpZGUgYW4gZW1wdHkgc3ViZnJhbWUuIFRvIHJ1biB0aGUgdGVz
dCBtYW51YWxseSwgdGFwIHRoZSBidXR0b24gYW5kIGNoZWNrIHRoYXQgYSBibHVlIHNlbGVjdGlv
biBjYXJldCBpcyBub3QgdmlzaWJsZS4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2Vy
aWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisK
K1BBU1MgY2FyZXRSZWN0LndpZHRoIGlzIDAKK1BBU1MgY2FyZXRSZWN0LmhlaWdodCBpcyAwCitQ
QVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKK0ZvY3VzIHRo
ZSBoaWRkZW4gZnJhbWUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9u
L2lvcy9kby1ub3Qtc2hvdy1zZWxlY3Rpb24taW4tZW1wdHktYm9yZGVybGVzcy1zdWJmcmFtZS5o
dG1sIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vaW9zL2RvLW5vdC1zaG93LXNlbGVj
dGlvbi1pbi1lbXB0eS1ib3JkZXJsZXNzLXN1YmZyYW1lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzczOTBi
MWE3MGRiZDQ5ZjQ0ODhlYzM2YzcwZWNhZDI4N2YyZTIxZQotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy9kby1ub3Qtc2hvdy1zZWxlY3Rpb24taW4t
ZW1wdHktYm9yZGVybGVzcy1zdWJmcmFtZS5odG1sCkBAIC0wLDAgKzEsNDkgQEAKKzwhRE9DVFlQ
RSBodG1sPiA8IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBbIHVzZUZsZXhpYmxlVmlld3BvcnQ9dHJ1
ZSBdIC0tPgorPGh0bWw+Cis8aGVhZD4KKyAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVu
dD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEiPgorICAgIDxzY3JpcHQgc3Jj
PSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBz
cmM9Ii4uLy4uLy4uL3Jlc291cmNlcy91aS1oZWxwZXIuanMiPjwvc2NyaXB0PgorICAgIDxzdHls
ZT4KKyAgICAgICAgaWZyYW1lIHsKKyAgICAgICAgICAgIHdpZHRoOiAwOworICAgICAgICAgICAg
aGVpZ2h0OiAxMDAlOworICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkOworICAgICAgICAgICAg
dG9wOiAwOworICAgICAgICAgICAgbGVmdDogMDsKKyAgICAgICAgICAgIGJvcmRlcjogMDsKKyAg
ICAgICAgfQorCisgICAgICAgIGJvZHksIGh0bWwgeworICAgICAgICAgICAgd2lkdGg6IDEwMCU7
CisgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7CisgICAgICAgIH0KKworICAgICAgICBidXR0b24g
eworICAgICAgICAgICAgcGFkZGluZzogMWVtOworICAgICAgICB9CisgICAgPC9zdHlsZT4KKzwv
aGVhZD4KKzxib2R5PgorICAgIDxpZnJhbWUgc3JjZG9jPSI8Ym9keSBjb250ZW50ZWRpdGFibGU+
Ij48L2lmcmFtZT4KKyAgICA8YnV0dG9uIGlkPSJmb2N1cyI+Rm9jdXMgdGhlIGhpZGRlbiBmcmFt
ZTwvYnV0dG9uPgorICAgIDxzY3JpcHQ+CisgICAgICAgIGpzVGVzdElzQXN5bmMgPSB0cnVlOwor
ICAgICAgICBkZXNjcmlwdGlvbigiVGhpcyB0ZXN0IHZlcmlmaWVzIHRoYXQgc2VsZWN0aW9uIFVJ
IGlzIHN1cHByZXNzZWQgd2hlbiBmb2N1c2luZyBhbiBlbGVtZW50IGluc2lkZSBhbiBlbXB0eSBz
dWJmcmFtZS4gVG8gcnVuIHRoZSB0ZXN0IG1hbnVhbGx5LCB0YXAgdGhlIGJ1dHRvbiBhbmQgY2hl
Y2sgdGhhdCBhIGJsdWUgc2VsZWN0aW9uIGNhcmV0IGlzIG5vdCB2aXNpYmxlLiIpOworCisgICAg
ICAgIGNvbnN0IGZvY3VzQnV0dG9uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZvY3VzIik7
CisgICAgICAgIGZvY3VzQnV0dG9uLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgZXZlbnQgPT4g
eworICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaWZyYW1lIikuY29udGVudERv
Y3VtZW50LmJvZHkuZm9jdXMoKTsKKyAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7
CisgICAgICAgIH0pOworCisgICAgICAgIGFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBhc3luYyAo
KSA9PiB7CisgICAgICAgICAgICBhd2FpdCBVSUhlbHBlci5hY3RpdmF0ZUVsZW1lbnRBbmRXYWl0
Rm9ySW5wdXRTZXNzaW9uKGZvY3VzQnV0dG9uKTsKKyAgICAgICAgICAgIGNhcmV0UmVjdCA9IGF3
YWl0IFVJSGVscGVyLmdldFVJQ2FyZXRWaWV3UmVjdCgpOworICAgICAgICAgICAgc2hvdWxkQmUo
ImNhcmV0UmVjdC53aWR0aCIsICIwIik7CisgICAgICAgICAgICBzaG91bGRCZSgiY2FyZXRSZWN0
LmhlaWdodCIsICIwIik7CisgICAgICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICAgICAgfSk7
CisgICAgPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2Yg
ZmlsZQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>376978</attachid>
            <date>2019-08-21 21:08:57 -0700</date>
            <delta_ts>2019-08-21 21:14:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-201023-20190821210856.patch</filename>
            <type>text/plain</type>
            <size>37072</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ4OTExCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGM3ODk4OTJkNjZlZTcz
NWUxMWUwZTMzNDA5Y2VkMGYxNWQzMTJiNS4uYmU2ZmE0ZWE4MTVmNzRlYzFkZTU0YjRjOWY0MGUz
OTQ3YzM1YThlOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDE5LTA4LTIxICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFR5cGluZyBLb3Jl
YW4gaW4gdGl0bGUgZmllbGQgYWZ0ZXIgdHlwaW5nIGluIHRoZSBib2R5IGluc2VydHMgZXh0cmFu
ZW91cyBjaGFyYWN0ZXJzIG9uIGJsb2cubmF2ZXIuY29tCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDEwMjMKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVt
LzU0Mjk0Nzk0PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEVuc3VyZXMgdGhhdCB3ZSByZWNvZ25pemUgdGhlIGJsb2cgZWRpdG9yIG9uIGJsb2cubmF2
ZXIuY29tIHRvIGJlIGEgaGlkZGVuIGVkaXRhYmxlIGFyZWEuIFRoaXMgd2Vic2l0ZSBwbGFjZXMK
KyAgICAgICAgZm9jdXMgaW5zaWRlIGFuIGVkaXRhYmxlIGJvZHkgZWxlbWVudCBvZiBhIHN1YmZy
YW1lIHRoYXQgaXMgY29tcGxldGVseSBlbXB0eSAod2lkdGg6IDAgYW5kIGJvcmRlcjogMCkuIFNl
ZSB0aGUKKyAgICAgICAgV2ViS2l0IENoYW5nZUxvZyBmb3IgbW9yZSBkZXRhaWxzLgorCisgICAg
ICAgIFRlc3Q6IGVkaXRpbmcvc2VsZWN0aW9uL2lvcy9kby1ub3Qtc2hvdy1zZWxlY3Rpb24taW4t
ZW1wdHktYm9yZGVybGVzcy1zdWJmcmFtZS5odG1sCisKKyAgICAgICAgKiByZW5kZXJpbmcvUmVu
ZGVyTGF5ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXI6OmNhbGN1bGF0ZUNs
aXBSZWN0cyBjb25zdCk6CisKIDIwMTktMDgtMjAgIFphbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxl
LmNvbT4KIAogICAgICAgICBbQ29udGVudENoYW5nZU9ic2VydmVyXSBpc0NvbnNpZGVyZWRDbGlj
a2FibGUgc2hvdWxkIGJlIGFibGUgdG8gcHJvY2VzcyBlbGVtZW50cyB3aXRoIG5vIHJlbmRlcmVy
cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKaW5kZXggNGQwMjUyOTQ5YTAzYmQzYmNkMWQ5ZjEyYzgw
ODA5OWM2NDRhMDBjOC4uOTI1MTI3ZGRjZjc5YTEyNjM4YmViYjA4MzBkOTZiYTYwMWIyNjFiYSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZworKysgYi9Tb3VyY2Uv
V2ViSW5zcGVjdG9yVUkvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzEgQEAKKzIwMTktMDgtMjAgIEpv
c2VwaCBQZWNvcmFybyAgPHBlY29yYXJvQGFwcGxlLmNvbT4KKworICAgICAgICBXZWIgSW5zcGVj
dG9yOiBTb3VyY2VzOiBHaXZlIE9yaWdpbnMgdGhlaXIgb3duIGljb24gaW4gdGhlIFNvdXJjZXMg
c2lkZWJhcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjAwNjgzCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81NDI2OTA0ND4KKworICAgICAgICBSZXZp
ZXdlZCBieSBEZXZpbiBSb3Vzc28uCisKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL0ltYWdlcy9P
cmlnaW4uc3ZnOiBBZGRlZC4KKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL01haW4uaHRtbDoKKyAg
ICAgICAgTmV3IHJlc291cmNlcy4KKworICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvRm9s
ZGVySWNvbi5jc3M6CisgICAgICAgICgub3JpZ2luLWljb24gLmljb24pOgorICAgICAgICBMaWdo
dCBhbmQgRGFyayBhcHBlYXJhbmNlcyBmb3IgT3JpZ2luIGljb25zLgorCisgICAgICAgIChAbWVk
aWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSk6CisgICAgICAgICogVXNlckludGVyZmFj
ZS9WaWV3cy9PcmlnaW5UcmVlRWxlbWVudC5qczoKKyAgICAgICAgKFdJLk9yaWdpblRyZWVFbGVt
ZW50KToKKyAgICAgICAgVmVyeSBtdWNoIGxpa2UgYSBmb2xkZXIgd2l0aCBkaWZmZXJlbnQgY2xh
c3Nlcy4KKworICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvU291cmNlc05hdmlnYXRpb25T
aWRlYmFyUGFuZWwuanM6CisgICAgICAgIChXSS5Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5l
bC5wcm90b3R5cGUubWF0Y2hUcmVlRWxlbWVudEFnYWluc3RDdXN0b21GaWx0ZXJzLm1hdGNoKToK
KyAgICAgICAgKFdJLlNvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsLnByb3RvdHlwZS5tYXRj
aFRyZWVFbGVtZW50QWdhaW5zdEN1c3RvbUZpbHRlcnMpOgorICAgICAgICAoV0kuU291cmNlc05h
dmlnYXRpb25TaWRlYmFyUGFuZWwucHJvdG90eXBlLl9jb21wYXJlVHJlZUVsZW1lbnRzKToKKyAg
ICAgICAgKFdJLlNvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsLnByb3RvdHlwZS5faGFuZGxl
UmVzb3VyY2VHcm91cGluZ01vZGVDaGFuZ2VkKToKKyAgICAgICAgVXNlIE9yaWdpblRyZWVFbGVt
ZW50IGluIGEgZmV3IHBsYWNlcy4KKwogMjAxOS0wOC0yMCAgSm9zZXBoIFBlY29yYXJvICA8cGVj
b3Jhcm9AYXBwbGUuY29tPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IFN1cHBvcnQgZm9yIEph
dmFTY3JpcHQgQmlnSW50CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1Nv
dXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGFlZWI1YjkwMTk4Y2M5MTMxNmM5ZThlNmQxYzRm
MzM2YjBlNGFjOTUuLmU1YWU5MWQ0MWIzZmFmOGYxNTE2MDBhYmU0NmUxYjM3MDM5NGU5YWQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsNzUgQEAKKzIwMTktMDgtMjEgIFdlbnNvbiBIc2llaCAgPHdlbnNv
bl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgVHlwaW5nIEtvcmVhbiBpbiB0aXRsZSBmaWVs
ZCBhZnRlciB0eXBpbmcgaW4gdGhlIGJvZHkgaW5zZXJ0cyBleHRyYW5lb3VzIGNoYXJhY3RlcnMg
b24gYmxvZy5uYXZlci5jb20KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIwMTAyMworICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTQyOTQ3OTQ+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWZ0ZXIgcjI0Mjgz
Mywgd2UgYmVnYW4gdG8gYXZvaWQgc2VuZGluZyByZWR1bmRhbnQgRWxlbWVudERpZEZvY3VzIHVw
ZGF0ZXMgaW4gdGhlIGNhc2Ugd2hlcmUgYSBmb2N1c2VkIGVsZW1lbnQKKyAgICAgICAgd2FzIGJs
dXJyZWQgYW5kIHJlZm9jdXNlZCB3aXRoaW4gdGhlIHNhbWUgcnVubG9vcC4gVGhpcyB3YXMgZG9u
ZSB0byBwcmV2ZW50IHRoZSBpbnB1dCB2aWV3IGZyb20gZmxpY2tlcmluZyBkdWUKKyAgICAgICAg
dG8gaW5wdXQgdmlldyByZWxvYWRpbmcsIGFzIHdlbGwgYXMgc2Nyb2xsaW5nIHRvIHJldmVhbCB0
aGUgZm9jdXNlZCBlbGVtZW50LCB3aGVuIHRhcHBpbmcgdG8gY2hhbmdlIHNlbGVjdGlvbiBvbgor
ICAgICAgICBNaWNyb3NvZnQgV29yZCBvbmxpbmUuCisKKyAgICAgICAgSG93ZXZlciwgb24gYmxv
Zy5uYXZlci5jb20sIHRoZXNlIEVsZW1lbnREaWRGb2N1cyBtZXNzYWdlcyB3ZXJlIG5lY2Vzc2Fy
eSBpbiBvcmRlciB0byBlbnN1cmUgdGhhdCB0aGUgcGxhdGZvcm0KKyAgICAgICAgaW5wdXQgY29u
dGV4dCBjaGFuZ2VzIHdoZW4gbW92aW5nIGJldHdlZW4gdGhlIHRpdGxlIGFuZCBib2R5IGZpZWxk
cywgb3Igd2hlbiB0YXBwaW5nIHRvIGNoYW5nZSBzZWxlY3Rpb24uIFRoaXMKKyAgICAgICAgaXMg
YmVjYXVzZSBibG9nLm5hdmVyLmNvbSB1c2VzIGEgaGlkZGVuIGNvbnRlbnRlZGl0YWJsZSBhcmVh
IHVuZGVyIGEgc3ViZnJhbWUgKHNlZSBXZWJDb3JlIENoYW5nZUxvZyBmb3IgbW9yZQorICAgICAg
ICBkZXRhaWwgaGVyZSkuIFdoaWxlIHRleHQgaXMgbmV2ZXIgZGlyZWN0bHkgaW5zZXJ0ZWQgaW50
byB0aGlzIGhpZGRlbiBjb250ZW50ZWRpdGFibGUsIHRoZSBldmVudHMgYXJlIG9ic2VydmVkCisg
ICAgICAgIGFuZCB1c2VkIHRvICJwbGF5IGJhY2siIGVkaXRpbmcgaW4gdGhlIG1haW4gdmlzaWJs
ZSBjb250ZW50IGFyZWEuCisKKyAgICAgICAgVGh1cywgd2hlbiBtb3ZpbmcgYmV0d2VlbiB0aGUg
dGl0bGUgYW5kIGJvZHkgZmllbGRzIChvciB3aGVuIGNoYW5naW5nIHNlbGVjdGlvbiB3aXRoaW4g
ZWl0aGVyKSwgdGhlIG9ubHkgaGludCB3ZQorICAgICAgICBnZXQgaXMgdGhhdCB0aGUgaGlkZGVu
IGVkaXRhYmxlIGVsZW1lbnQgaXMgYmx1cnJlZCBhbmQgaW1tZWRpYXRlbHkgcmVmb2N1c2VkLiBT
aW5jZSB3ZSBubyBsb25nZXIgc2VuZAorICAgICAgICBFbGVtZW50RGlkRm9jdXMgdXBkYXRlcyBp
biB0aGlzIHNjZW5hcmlvLCBVSUtleWJvYXJkSW1wbCBhbmQga2JkIGFyZSBub3QgYXdhcmUgdGhh
dCB0aGUgcGFnZSBoYXMgZWZmZWN0aXZlbHkKKyAgICAgICAgY2hhbmdlZCBpbnB1dCBjb250ZXh0
cy4KKworICAgICAgICBDb21iaW5lZCB3aXRoIHRoZSBmYWN0IHRoYXQgS29yZWFuIElNRSBvbiBp
T1MgbWF5IGluc2VydCBhZGRpdGlvbmFsIHRleHQgZ2l2ZW4gdGhlIGRvY3VtZW50IGNvbnRleHQg
KGkuZS4gdGV4dAorICAgICAgICB0aGF0IHRoZSBpbnB1dCBtYW5hZ2VyLCBrYmQsIHRoaW5rcyB3
ZSd2ZSBwcmV2aW91c2x5IGluc2VydGVkKSwgdGhpcyBtZWFucyB0aGF0IHdoZW4gdHlwaW5nIHNl
dmVyYWwgY2hhcmFjdGVycworICAgICAgICBpbnRvIHRoZSBib2R5IGZpZWxkIG9uIG5hdmVyIGFu
ZCB0aGVuIHN3aXRjaGluZyB0byBlZGl0IHRoZSB0aXRsZSwgaW5pdGlhbCBrZXlzdHJva2VzIG1h
eSBpbnNlcnQgdW5leHBlY3RlZAorICAgICAgICB0ZXh0IGluIHRoZSB0aXRsZSBmaWVsZC4KKwor
ICAgICAgICBUbyBmaXggdGhpcywgd2UgYWRkIHNvbWUgaG9va3MgdG8gbm90aWZ5IHRoZSBVSSBw
cm9jZXNzIHdoZW4gYW4gZWxlbWVudCB0aGF0IHdhcyBibHVycmVkIGhhcyBiZWVuIGltbWVkaWF0
ZWx5CisgICAgICAgIHJlZm9jdXNlZC4gVXBvbiByZWNlaXZpbmcgdGhpcyBtZXNzYWdlLCB0aGUg
VUkgcHJvY2VzcyB0aGVuIHRlbGxzIFVJS2V5Ym9hcmRJbXBsIHRvIHJlLXJldHJpZXZlIGl0cyBp
bnB1dAorICAgICAgICBjb250ZXh0LCB3aGljaCBjYWxscyBpbnRvIC1yZXF1ZXN0QXV0b2NvcnJl
Y3Rpb25Db250ZXh0V2l0aENvbXBsZXRpb25IYW5kbGVyOiBpbiBXS0NvbnRlbnRWaWV3LiBXaGls
ZSBub3RvcmlvdXMKKyAgICAgICAgZm9yIGJlaW5nIHN5bmNocm9ub3VzIElQQywgdGhpcyBpcyBt
aXRpZ2F0ZWQgYnkgKDEpIGJlaW5nIGxpbWl0aW5nIHRvIG9ubHkgaW5zdGFuY2VzIHdoZXJlIHdl
IGhhdmUgYSBoaWRkZW4KKyAgICAgICAgZWRpdGFibGUgYXJlYSwgYW5kICgyKSBiZWluZyBsaW1p
dGVkIGJ5IGEgYmF0Y2hpbmcgbWVjaGFuaXNtIGluIHRoZSB3ZWIgcHJvY2Vzcywgc3VjaCB0aGF0
IGlmIHRoZSBmb2N1c2VkCisgICAgICAgIGVsZW1lbnQgaXMgYmx1cnJlZCwgcmVmb2N1c2VkLCBy
ZS1ibHVycmVkLCBhbmQgcmVmb2N1c2VkIG1hbnkgdGltZXMgaW4gdGhlIHNhbWUgcnVubG9vcCwg
d2UnbGwgb25seSBzZW5kIGEKKyAgICAgICAgc2luZ2xlIFVwZGF0ZUlucHV0Q29udGV4dEFmdGVy
Qmx1cnJpbmdBbmRSZWZvY3VzaW5nRWxlbWVudCBtZXNzYWdlIChhcyBvcHBvc2VkIHRvIHRoZSBt
YW55IEVsZW1lbnREaWRGb2N1cworICAgICAgICBtZXNzYWdlcyB3ZSB3b3VsZCd2ZSBzZW50IGlu
IHByZXZpb3VzIHJlbGVhc2VzKS4KKworICAgICAgICAqIFBsYXRmb3JtL3NwaS9pb3MvVUlLaXRT
UEkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvUGFnZUNsaWVudC5oOgorICAgICAgICAqIFVJUHJv
Y2Vzcy9XZWJQYWdlUHJveHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1l
c3NhZ2VzLmluOgorCisgICAgICAgIEFkZCBhIG5ldyBtZWNoYW5pc20gdG8gdXBkYXRlIHRoZSBw
bGF0Zm9ybSBpbnB1dCBjb250ZXh0IChvbiBpT1MsIFVJS2V5Ym9hcmRJbXBsJ3MgZG9jdW1lbnQg
c3RhdGUpIHdoZW4gZm9jdXMKKyAgICAgICAgbW92ZXMgYXdheSBmcm9tIGFuZCBpbW1lZGlhdGVs
eSByZXR1cm5zIHRvIGEgaGlkZGVuIGVkaXRhYmxlIGVsZW1lbnQuCisKKyAgICAgICAgKiBVSVBy
b2Nlc3MvaW9zL1BhZ2VDbGllbnRJbXBsSU9TLmg6CisgICAgICAgICogVUlQcm9jZXNzL2lvcy9Q
YWdlQ2xpZW50SW1wbElPUy5tbToKKyAgICAgICAgKFdlYktpdDo6UGFnZUNsaWVudEltcGw6OnVw
ZGF0ZUlucHV0Q29udGV4dEFmdGVyQmx1cnJpbmdBbmRSZWZvY3VzaW5nRWxlbWVudCk6CisgICAg
ICAgICogVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24uaDoKKyAgICAgICAg
KiBVSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbToKKyAgICAgICAgKC1b
V0tDb250ZW50VmlldyBfdXBkYXRlSW5wdXRDb250ZXh0QWZ0ZXJCbHVycmluZ0FuZFJlZm9jdXNp
bmdFbGVtZW50XSk6CisKKyAgICAgICAgVGVsbCB0aGUgYWN0aXZlIFVJS2V5Ym9hcmRJbXBsIHRv
IHJlZmV0Y2ggZG9jdW1lbnQgc3RhdGUgZnJvbSB0aGUgV0tDb250ZW50Vmlldy4gV2hpbGUgdGhp
cyBkb2VzIHJlc3VsdCBpbiBhIG5ldworICAgICAgICBhdXRvY29ycmVjdGlvbiBjb250ZXh0IHJl
cXVlc3QgKHdoaWNoLCB1bmZvcnR1bmF0ZWx5LCB0cmlnZ2VycyBzeW5jaHJvbm91cyBJUEMgdG8g
dGhlIHdlYiBwcm9jZXNzKSwgdGhpcyByZXF1ZXN0CisgICAgICAgIHdvdWxkJ3ZlIHN0aWxsIGhh
cHBlbmVkIGFueXdheXMgaW4gdGhlIGNhc2Ugd2hlcmUgd2Ugd291bGQgcHJldmlvdXNseSBoYXZl
IHNlbnQgYW4gRWxlbWVudERpZEZvY3VzIG1lc3NhZ2UuCisKKyAgICAgICAgKiBVSVByb2Nlc3Mv
aW9zL1dlYlBhZ2VQcm94eUlPUy5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5Ojp1
cGRhdGVJbnB1dENvbnRleHRBZnRlckJsdXJyaW5nQW5kUmVmb2N1c2luZ0VsZW1lbnQpOgorICAg
ICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6
V2ViUGFnZTo6ZWxlbWVudERpZEZvY3VzKToKKworICAgICAgICBJbiB0aGUgY2FzZSB3aGVyZSB3
ZSBhdm9pZCBzZW5kaW5nIGEgZnVsbCBFbGVtZW50RGlkRm9jdXMgbWVzc2FnZSB0byB0aGUgVUkg
cHJvY2VzcyBkdWUgdG8gcmVmb2N1c2luZyB0aGUgc2FtZQorICAgICAgICBlbGVtZW50LCB3ZSBz
aG91bGQgc3RpbGwgbm90aWZ5IHRoZSBVSSBwcm9jZXNzIHNvIHRoYXQgaXQgY2FuIHN5bmNocm9u
aXplIHN0YXRlIGJldHdlZW4gdGhlIGFwcGxpY2F0aW9uIHByb2Nlc3MKKyAgICAgICAgYW5kIGti
ZC4gU2VlIGFib3ZlIGZvciBtb3JlIGRldGFpbHMuCisKKyAgICAgICAgKFdlYktpdDo6V2ViUGFn
ZTo6ZWxlbWVudERpZEJsdXIpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjp1cGRhdGVJbnB1
dENvbnRleHRBZnRlckJsdXJyaW5nQW5kUmVmb2N1c2luZ0VsZW1lbnRJZk5lZWRlZCk6CisgICAg
ICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNz
L1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW06CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnVw
ZGF0ZUlucHV0Q29udGV4dEFmdGVyQmx1cnJpbmdBbmRSZWZvY3VzaW5nRWxlbWVudElmTmVlZGVk
KToKKwogMjAxOS0wOC0yMCAgQnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KIAog
ICAgICAgICBbRlRXXSBGaXggc2Nyb2xsaW5nIGluIG1vZGVybiBXZWJLaXQgdmlld3MKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCmluZGV4IDE4NTQ2ODcwNTE2ZTRkMGZk
NWUyYjAyOGRlYjNiYzQwY2U2YzhiZjkuLjI2ZGM0NjBlMGRlODFkNDljMjRlYjNiOWU5YjFiNmNi
NDA2MWIwMTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXll
ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcApAQCAt
NjgxNSw2ICs2ODE1LDkgQEAgYm9vbCBSZW5kZXJMYXllcjo6aXNUcmFuc3BhcmVudE9yRnVsbHlD
bGlwcGVkUmVzcGVjdGluZ1BhcmVudEZyYW1lcygpIGNvbnN0CiAgICAgICAgIGlmICghcmVuZGVy
Vmlld0xheWVyKQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogCisgICAgICAgIGlmIChpczxI
VE1MRnJhbWVPd25lckVsZW1lbnQ+KGxheWVyLnJlbmRlcmVyKCkuZWxlbWVudCgpKSAmJiBsYXll
ci52aXNpYmxlU2l6ZSgpLmlzRW1wdHkoKSkKKyAgICAgICAgICAgIHJldHVybiB0cnVlOworCiAg
ICAgICAgIExheW91dFJlY3QgbGF5ZXJCb3VuZHM7CiAgICAgICAgIENsaXBSZWN0IGJhY2tncm91
bmRSZWN0OwogICAgICAgICBDbGlwUmVjdCBmb3JlZ3JvdW5kUmVjdDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0ltYWdlcy9PcmlnaW4uc3ZnIGIvU291
cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvSW1hZ2VzL09yaWdpbi5zdmcKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uNTAzZGMyNWJlMTZhMWM1NjJiMTc1ZDg0ZDIzZWIyN2RhM2Q3N2U0NAotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0ltYWdlcy9Pcmln
aW4uc3ZnCkBAIC0wLDAgKzEsMTMgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9InV0
Zi04Ij8+Cis8IS0tIENvcHlyaWdodCDCqSAyMDE5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4gLS0+Cis8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmVyc2lv
bj0iMS4xIiB2aWV3Qm94PSIwIDAgNjQgNjQiPgorICAgIDxkZWZzPgorICAgICAgICA8cmFkaWFs
R3JhZGllbnQgaWQ9ImdyYWRpZW50IiBjeD0iNTguNiUiIGN5PSIyNy43NCUiIGZ4PSI1OC42JSIg
Znk9IjI3Ljc0JSIgcj0iNTcuNSUiIGdyYWRpZW50VHJhbnNmb3JtPSJ0cmFuc2xhdGUoMC41OSwg
MC4yOCksIHJvdGF0ZSg5OC42MSksIHNjYWxlKDEsIDAuOTgpLCB0cmFuc2xhdGUoLTAuNTksIC0w
LjI4KSI+CisgICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSJyZ2IoMTY4LCAxNzEsIDE4Miki
IG9mZnNldD0iMCUiLz4KKyAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9InJnYig1MywgNTUs
IDc2KSIgb2Zmc2V0PSIxMDAlIi8+CisgICAgICAgIDwvcmFkaWFsR3JhZGllbnQ+CisgICAgPC9k
ZWZzPgorICAgIDxjaXJjbGUgZmlsbD0idXJsKCNncmFkaWVudCkiIGN4PSIzMS45IiBjeT0iMzIi
IHI9IjI4LjkiLz4KKyAgICA8cGF0aCBmaWxsPSJ3aGl0ZSIgZD0iTSAzMS44OCA2MC45IEMgMzEu
MiA2MC45IDMwLjUyIDYwLjg4IDI5Ljg1IDYwLjgzIEMgMjkuNjIgNTguOSAyOS41IDU2LjkyIDI5
LjUgNTQuOSBDIDI5LjUgNTMuNjkgMjkuNTQgNTIuNSAyOS42MyA1MS4zMiBDIDI4Ljc5IDUwLjg4
IDI4LjE3IDUwLjA3IDI3Ljk3IDQ5LjEyIEMgMjQuMDUgNDguNjIgMjAuMzEgNDcuNTggMTYuODYg
NDYuMDcgQyAxNi41IDQ2LjQ4IDE2LjA1IDQ2LjgyIDE1LjU2IDQ3LjA3IEMgMTcuMTYgNTEuNTEg
MTkuNzEgNTUuNyAyMy4wNCA1OS41MiBDIDIxLjczIDU5LjA5IDIwLjQ1IDU4LjU4IDE5LjIzIDU3
Ljk4IEMgMTYuNzkgNTQuNyAxNC44OCA1MS4xOCAxMy41OCA0Ny41IEMgMTEuMzIgNDcuNDMgOS41
IDQ1LjU4IDkuNSA0My4zIEMgOS41IDQyLjg1IDkuNTcgNDIuNDIgOS43IDQyLjAyIEMgNy4zNCA0
MC4zMyA1LjIgMzguNCAzLjMxIDM2LjI2IEMgMy4xNCAzNS4wOSAzLjA0IDMzLjkxIDMuMDEgMzIu
NzEgQyA1LjE2IDM1LjYgNy43NyAzOC4xNiAxMC43NSA0MC4zMSBDIDExLjA2IDQwLjAxIDExLjQg
MzkuNzYgMTEuNzkgMzkuNTYgQyAxMS42NiAzOC4zOSAxMS42IDM3LjIgMTEuNiAzNi4wIEMgMTEu
NiAzMy4yIDExLjk0IDMwLjQ3IDEyLjYgMjcuODEgQyAxMS42MSAyNy4xNiAxMC45MSAyNi4xIDEw
Ljc0IDI0Ljg3IEMgOC41MyAyNC4zNCA2LjQ0IDIzLjYyIDQuNTEgMjIuNzUgQyA0LjczIDIyLjEx
IDQuOTYgMjEuNDkgNS4yMiAyMC44OCBDIDYuOTkgMjEuNjggOC45MSAyMi4zNiAxMC45NSAyMi44
NyBDIDExLjU0IDIxLjI1IDEzLjA4IDIwLjEgMTQuOSAyMC4xIEMgMTUuMDggMjAuMSAxNS4yNyAy
MC4xMSAxNS40NCAyMC4xMyBDIDE4LjY3IDEzLjcxIDIzLjggNy45NCAzMC4zNSAzLjE0IEMgMzAu
ODcgMy4xMSAzMS4zOCAzLjEgMzEuOSAzLjEgQyAzMi41NCAzLjEgMzMuMTggMy4xMiAzMy44MiAz
LjE2IEMgMjYuNDggOC4wMyAyMC43NyAxNC4wOCAxNy4zMiAyMC44NyBDIDE4LjMyIDIxLjU3IDE4
Ljk5IDIyLjY5IDE5LjA5IDIzLjk4IEMgMTkuNSAyMy45OSAxOS45MyAyNC4wIDIwLjM1IDI0LjAg
QyAyNC43MyAyNC4wIDI4Ljg2IDIzLjMgMzIuNTEgMjIuMDYgQyAzMi41IDIxLjk5IDMyLjUgMjEu
OTIgMzIuNSAyMS44NSBDIDMyLjUgMjAuNSAzMy4zMyAxOS4zNCAzNC41IDE4Ljg1IEMgMzQuNzIg
MTMuNTEgMzYuMzMgOC40NyAzOS4wMyAzLjk5IEMgMzkuNzEgNC4xNiA0MC4zNyA0LjM1IDQxLjAz
IDQuNTcgQyAzOC4zNyA4LjgzIDM2Ljc3IDEzLjYyIDM2LjUxIDE4LjY5IEMgMzcuMSAxOC44MyAz
Ny42MyAxOS4xMyAzOC4wNCAxOS41NCBDIDQzLjIgMTYuNTEgNDYuNTggMTIuMTkgNDcuMDQgNy4z
OCBDIDQ3LjY4IDcuNzcgNDguMyA4LjE5IDQ4LjkgOC42MiBDIDQ4LjAyIDEzLjcyIDQ0LjMzIDE4
LjE5IDM4Ljk2IDIxLjMyIEMgMzguOTkgMjEuNSAzOS4wIDIxLjY3IDM5LjAgMjEuODUgQyAzOS4w
IDIzLjI1IDM4LjEyIDI0LjQzIDM2Ljg5IDI0LjkgQyAzNy4wNSAyNS44NiAzNy4yNyAyNi44MSAz
Ny41MyAyNy43NSBDIDM3LjU3IDI3Ljc1IDM3LjYxIDI3Ljc1IDM3LjY1IDI3Ljc1IEMgMzcuOTUg
MjcuNzUgMzguMjUgMjcuNzkgMzguNTMgMjcuODcgQyA0Mi44NSAyMi44MyA0OC40MSAxOS44IDU0
LjUgMTkuOCBDIDU1Ljc5IDE5LjggNTcuMDUgMTkuOTQgNTguMjkgMjAuMiBDIDU4LjYyIDIwLjk1
IDU4LjkzIDIxLjcxIDU5LjIgMjIuNSBDIDU3LjY4IDIyLjA0IDU2LjExIDIxLjggNTQuNSAyMS44
IEMgNDkuMTIgMjEuOCA0NC4xNCAyNC40OSA0MC4yMSAyOC45OSBDIDQwLjY0IDI5LjU0IDQwLjkg
MzAuMjQgNDAuOSAzMS4wIEMgNDAuOSAzMS45OCA0MC40NyAzMi44NiAzOS43OCAzMy40NSBDIDQx
LjMzIDM2LjQzIDQzLjM4IDM5LjE5IDQ1Ljg1IDQxLjY1IEMgNDYuNSA0MS4yNCA0Ny4yNyA0MS4w
IDQ4LjEgNDEuMCBDIDQ5LjU2IDQxLjAgNTAuODUgNDEuNzUgNTEuNiA0Mi44OCBDIDU0LjkzIDQx
LjA5IDU3LjkzIDM4LjgyIDYwLjUgMzYuMTkgQyA2MC4zMyAzNy4zNiA2MC4wOSAzOC41IDU5Ljc4
IDM5LjYyIEMgNTcuNTIgNDEuNjEgNTUuMCA0My4zNSA1Mi4yOCA0NC43OSBDIDUyLjI5IDQ0Ljky
IDUyLjMgNDUuMDYgNTIuMyA0NS4yIEMgNTIuMyA0NS43MSA1Mi4yMSA0Ni4yIDUyLjA0IDQ2LjY1
IEMgNTMuMTUgNDcuMzcgNTQuMzEgNDguMDQgNTUuNTEgNDguNjcgQyA1NS4xMiA0OS4yMiA1NC43
MSA0OS43NiA1NC4yOCA1MC4yOCBDIDUzLjEyIDQ5LjY3IDUyLjAgNDkuMDEgNTAuOTIgNDguMzEg
QyA1MC4xOCA0OC45OCA0OS4xOSA0OS40IDQ4LjEgNDkuNCBDIDQ2Ljc3IDQ5LjQgNDUuNTggNDgu
NzggNDQuODEgNDcuODEgQyA0MS40NiA0OC43OCAzNy45MiA0OS4zNSAzNC4yNSA0OS40NCBDIDMz
Ljg3IDUwLjYxIDMyLjg1IDUxLjQ5IDMxLjYxIDUxLjY3IEMgMzEuNTQgNTIuNzMgMzEuNSA1My44
MSAzMS41IDU0LjkgQyAzMS41IDU2Ljk1IDMxLjYzIDU4Ljk2IDMxLjg4IDYwLjkgTCAzMS44OCA2
MC45IFogTSAyOC4xOCA0Ny4xMyBDIDI4LjU5IDQ2LjIgMjkuNDMgNDUuNSAzMC40NSA0NS4yNyBD
IDMxLjM3IDQwLjcgMzIuOTQgMzYuNSAzNS4wMSAzMi44OSBDIDM0LjYzIDMyLjM2IDM0LjQgMzEu
NzEgMzQuNCAzMS4wIEMgMzQuNCAyOS45NiAzNC44OSAyOS4wNCAzNS42NCAyOC40NCBDIDM1LjMy
IDI3LjMxIDM1LjA2IDI2LjE1IDM0Ljg3IDI0Ljk4IEMgMzQuMjIgMjQuOCAzMy42NiAyNC40MiAz
My4yNCAyMy45MiBDIDI5LjM2IDI1LjI1IDI0Ljk4IDI2LjAgMjAuMzUgMjYuMCBDIDE5LjgxIDI2
LjAgMTkuMjggMjUuOTkgMTguNzUgMjUuOTcgQyAxOC4xMSAyNy40NiAxNi42MiAyOC41IDE0Ljkg
MjguNSBDIDE0Ljc2IDI4LjUgMTQuNjMgMjguNDkgMTQuNDkgMjguNDggQyAxMy45MSAzMC45MyAx
My42IDMzLjQ0IDEzLjYgMzYuMCBDIDEzLjYgMzcuMDQgMTMuNjUgMzguMDggMTMuNzUgMzkuMSBD
IDE2LjA1IDM5LjEzIDE3LjkgNDEuMCAxNy45IDQzLjMgQyAxNy45IDQzLjY0IDE3Ljg2IDQzLjk3
IDE3Ljc4IDQ0LjI5IEMgMjEuMDIgNDUuNjkgMjQuNTEgNDYuNjYgMjguMTggNDcuMTMgTCAyOC4x
OCA0Ny4xMyBaIE0gMzIuNDUgNDUuNDcgQyAzMy4yOSA0NS44NCAzMy45NSA0Ni41NSAzNC4yNCA0
Ny40NCBDIDM3LjYyIDQ3LjM1IDQwLjg4IDQ2Ljg0IDQzLjk3IDQ1Ljk3IEMgNDMuOTIgNDUuNzIg
NDMuOSA0NS40NiA0My45IDQ1LjIgQyA0My45IDQ0LjQzIDQ0LjEgNDMuNzIgNDQuNDYgNDMuMSBD
IDQxLjggNDAuNDUgMzkuNTkgMzcuNDcgMzcuOTMgMzQuMjQgQyAzNy44NCAzNC4yNSAzNy43NSAz
NC4yNSAzNy42NSAzNC4yNSBDIDM3LjI5IDM0LjI1IDM2Ljk1IDM0LjE5IDM2LjYzIDM0LjA5IEMg
MzQuNzYgMzcuNDEgMzMuMzIgNDEuMjYgMzIuNDUgNDUuNDcgTCAzMi40NSA0NS40NyBaIi8+Cisg
ICAgPGNpcmNsZSBmaWxsPSJub25lIiBzdHJva2U9InJnYig4OCwgOTAsIDk5KSIgc3Ryb2tlLXdp
ZHRoPSIzIiBjeD0iMzEuOSIgY3k9IjMyIiByPSIyOC45Ii8+Cis8L3N2Zz4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01haW4uaHRtbCBiL1NvdXJjZS9X
ZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01haW4uaHRtbAppbmRleCBjZmQzZmQwYmVkYzkw
YzQzNjM3ZDMwZWNjMjNlODIwNWI1MTI5MTJiLi5iMzhkYTk3NjhmNWZkYTQ5OWQxMzBiY2JlNzQ4
NzI3ODk4YzE0NDc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVy
ZmFjZS9NYWluLmh0bWwKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2Uv
TWFpbi5odG1sCkBAIC03MzcsNiArNzM3LDcgQEAKICAgICA8c2NyaXB0IHNyYz0iVmlld3MvT2Jq
ZWN0VHJlZVNldEluZGV4VHJlZUVsZW1lbnQuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3Jj
PSJWaWV3cy9PYmplY3RUcmVlVmlldy5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IlZp
ZXdzL09wZW5SZXNvdXJjZURpYWxvZy5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9IlZp
ZXdzL09yaWdpblRyZWVFbGVtZW50LmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iVmll
d3MvT3ZlcnZpZXdUaW1lbGluZVZpZXcuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJW
aWV3cy9Qcm9iZURldGFpbHNTaWRlYmFyUGFuZWwuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQg
c3JjPSJWaWV3cy9Qcm9iZVNldERhdGFHcmlkLmpzIj48L3NjcmlwdD4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0ZvbGRlckljb24uY3NzIGIv
U291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRm9sZGVySWNvbi5jc3MK
aW5kZXggMDVjNDZiYTQ1ZTdkNTM5MDc0YmQzNDE5MzdmMTgxZWU0ZTJjYTUzZC4uNDNhMjg1Y2U0
MDA3OTE4OWI0MWEyZTlkMDQ2NjJkODYyNmE1N2Y3YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYklu
c3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRm9sZGVySWNvbi5jc3MKKysrIGIvU291cmNl
L1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRm9sZGVySWNvbi5jc3MKQEAgLTI2
LDMgKzI2LDEzIEBACiAuZm9sZGVyLWljb24gLmljb24gewogICAgIGNvbnRlbnQ6IGltYWdlLXNl
dCh1cmwoLi4vSW1hZ2VzL0ZvbGRlckdlbmVyaWMucG5nKSAxeCwgdXJsKC4uL0ltYWdlcy9Gb2xk
ZXJHZW5lcmljQDJ4LnBuZykgMngpOwogfQorCisub3JpZ2luLWljb24gLmljb24geworICAgIGNv
bnRlbnQ6IHVybCguLi9JbWFnZXMvT3JpZ2luLnN2Zyk7Cit9CisKK0BtZWRpYSAocHJlZmVycy1j
b2xvci1zY2hlbWU6IGRhcmspIHsKKyAgICAub3JpZ2luLWljb24gLmljb24geworICAgICAgICBm
aWx0ZXI6IGJyaWdodG5lc3MoMC45KTsKKyAgICB9Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9PcmlnaW5UcmVlRWxlbWVudC5qcyBiL1Nv
dXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL09yaWdpblRyZWVFbGVtZW50
LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjdkN2NhNmU3N2MxNjhiNzFjNTIzODk4ZWRkOTdmMDc2NmY5ZTFmZjkK
LS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9W
aWV3cy9PcmlnaW5UcmVlRWxlbWVudC5qcwpAQCAtMCwwICsxLDM0IEBACisvKgorICogQ29weXJp
Z2h0IChDKSAyMDE5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05U
UklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAq
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKwor
V0kuT3JpZ2luVHJlZUVsZW1lbnQgPSBjbGFzcyBPcmlnaW5UcmVlRWxlbWVudCBleHRlbmRzIFdJ
LkdlbmVyYWxUcmVlRWxlbWVudAoreworICAgIGNvbnN0cnVjdG9yKHRpdGxlLCByZXByZXNlbnRl
ZE9iamVjdCwgb3B0aW9ucykKKyAgICB7CisgICAgICAgIGNvbnN0IGNsYXNzTmFtZXMgPSBbIm9y
aWdpbi1pY29uIl07CisgICAgICAgIGNvbnN0IHN1YnRpdGxlID0gbnVsbDsKKyAgICAgICAgc3Vw
ZXIoY2xhc3NOYW1lcywgdGl0bGUsIHN1YnRpdGxlLCByZXByZXNlbnRlZE9iamVjdCwgb3B0aW9u
cyk7CisgICAgfQorfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL1ZpZXdzL1NvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsLmpzIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU291cmNlc05hdmlnYXRpb25TaWRlYmFy
UGFuZWwuanMKaW5kZXggOWU5ZDA0OGRkMjE3YjliNWYzNWE1ZTM0ZWMxOWI3NDNlOWIyZjg2MS4u
MWYzZWYwYWMyYTFiYjIxMzg3ODY4M2ZjY2MyYjZmNjNiYjY2MTY2OSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU291cmNlc05hdmlnYXRpb25T
aWRlYmFyUGFuZWwuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2Uv
Vmlld3MvU291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwuanMKQEAgLTU3NCw3ICs1NzQsNyBA
QCBXSS5Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbCA9IGNsYXNzIFNvdXJjZXNOYXZpZ2F0
aW9uU2lkZWJhclBhbmVsIGV4dGVuZHMgVwogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAKICAg
ICAgICAgLy8gRm9sZGVycyBhcmUgaGlkZGVuIG9uIHRoZSBmaXJzdCBwYXNzLCBidXQgdmlzaWJs
ZSBjaGlsZGVuIHVuZGVyIHRoZSBmb2xkZXIgd2lsbCBmb3JjZSB0aGUgZm9sZGVyIHZpc2libGUg
YWdhaW4uCi0gICAgICAgIGlmICh0cmVlRWxlbWVudCBpbnN0YW5jZW9mIFdJLkZvbGRlclRyZWVF
bGVtZW50KQorICAgICAgICBpZiAodHJlZUVsZW1lbnQgaW5zdGFuY2VvZiBXSS5Gb2xkZXJUcmVl
RWxlbWVudCB8fCB0cmVlRWxlbWVudCBpbnN0YW5jZW9mIFdJLk9yaWdpblRyZWVFbGVtZW50KQog
ICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgICAgIGlmICh0cmVlRWxlbWVudCBpbnN0
YW5jZW9mIFdJLklzc3VlVHJlZUVsZW1lbnQpCkBAIC02NDMsNiArNjQzLDcgQEAgV0kuU291cmNl
c05hdmlnYXRpb25TaWRlYmFyUGFuZWwgPSBjbGFzcyBTb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQ
YW5lbCBleHRlbmRzIFcKICAgICAgICAgICAgICh0cmVlRWxlbWVudCkgPT4gdHJlZUVsZW1lbnQg
aW5zdGFuY2VvZiBXSS5DU1NTdHlsZVNoZWV0VHJlZUVsZW1lbnQgJiYgdHJlZUVsZW1lbnQucmVw
cmVzZW50ZWRPYmplY3QuaXNJbnNwZWN0b3JTdHlsZVNoZWV0KCksCiAgICAgICAgICAgICAodHJl
ZUVsZW1lbnQpID0+IHRyZWVFbGVtZW50ID09PSB0aGlzLl9tYWluRnJhbWVUcmVlRWxlbWVudCwK
ICAgICAgICAgICAgICh0cmVlRWxlbWVudCkgPT4gdHJlZUVsZW1lbnQgaW5zdGFuY2VvZiBXSS5G
cmFtZVRyZWVFbGVtZW50LAorICAgICAgICAgICAgKHRyZWVFbGVtZW50KSA9PiB0cmVlRWxlbWVu
dCBpbnN0YW5jZW9mIFdJLk9yaWdpblRyZWVFbGVtZW50LAogICAgICAgICAgICAgKHRyZWVFbGVt
ZW50KSA9PiB7CiAgICAgICAgICAgICAgICAgcmV0dXJuIHRyZWVFbGVtZW50ICE9PSB0aGlzLl9l
eHRlbnNpb25TY3JpcHRzRm9sZGVyVHJlZUVsZW1lbnQKICAgICAgICAgICAgICAgICAgICAgJiYg
dHJlZUVsZW1lbnQgIT09IHRoaXMuX2V4dHJhU2NyaXB0c0ZvbGRlclRyZWVFbGVtZW50CkBAIC02
ODYsNyArNjg3LDcgQEAgV0kuU291cmNlc05hdmlnYXRpb25TaWRlYmFyUGFuZWwgPSBjbGFzcyBT
b3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbCBleHRlbmRzIFcKICAgICAgICAgICAgIHRoaXMu
X29yaWdpblRyZWVFbGVtZW50TWFwLmNsZWFyKCk7CiAKICAgICAgICAgICAgIGxldCBvcmlnaW4g
PSBtYWluRnJhbWUudXJsQ29tcG9uZW50cy5vcmlnaW47Ci0gICAgICAgICAgICB0aGlzLl9tYWlu
RnJhbWVUcmVlRWxlbWVudCA9IG5ldyBXSS5Gb2xkZXJUcmVlRWxlbWVudChvcmlnaW4pOworICAg
ICAgICAgICAgdGhpcy5fbWFpbkZyYW1lVHJlZUVsZW1lbnQgPSBuZXcgV0kuT3JpZ2luVHJlZUVs
ZW1lbnQob3JpZ2luLCBtYWluRnJhbWUsIHtoYXNDaGlsZHJlbjogdHJ1ZX0pOwogICAgICAgICAg
ICAgdGhpcy5fb3JpZ2luVHJlZUVsZW1lbnRNYXAuc2V0KG9yaWdpbiwgdGhpcy5fbWFpbkZyYW1l
VHJlZUVsZW1lbnQpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KQEAgLTc1OSwyMCAr
NzYwLDIwIEBAIFdJLlNvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsID0gY2xhc3MgU291cmNl
c05hdmlnYXRpb25TaWRlYmFyUGFuZWwgZXh0ZW5kcyBXCiAgICAgICAgICAgICBpZiAoIXBhcmVu
dFRyZWVFbGVtZW50KSB7CiAgICAgICAgICAgICAgICAgbGV0IG9yaWdpbiA9IHJlc291cmNlLnVy
bENvbXBvbmVudHMub3JpZ2luOwogICAgICAgICAgICAgICAgIGlmIChvcmlnaW4pIHsKLSAgICAg
ICAgICAgICAgICAgICAgbGV0IGZyYW1lVHJlZUVsZW1lbnQgPSB0aGlzLl9vcmlnaW5UcmVlRWxl
bWVudE1hcC5nZXQob3JpZ2luKTsKLSAgICAgICAgICAgICAgICAgICAgaWYgKCFmcmFtZVRyZWVF
bGVtZW50KSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBmcmFtZVRyZWVFbGVtZW50ID0gbmV3
IFdJLkZvbGRlclRyZWVFbGVtZW50KG9yaWdpbik7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0
aGlzLl9vcmlnaW5UcmVlRWxlbWVudE1hcC5zZXQob3JpZ2luLCBmcmFtZVRyZWVFbGVtZW50KTsK
KyAgICAgICAgICAgICAgICAgICAgbGV0IG9yaWdpblRyZWVFbGVtZW50ID0gdGhpcy5fb3JpZ2lu
VHJlZUVsZW1lbnRNYXAuZ2V0KG9yaWdpbik7CisgICAgICAgICAgICAgICAgICAgIGlmICghb3Jp
Z2luVHJlZUVsZW1lbnQpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIG9yaWdpblRyZWVFbGVt
ZW50ID0gbmV3IFdJLk9yaWdpblRyZWVFbGVtZW50KG9yaWdpbiwgcmVzb3VyY2UucGFyZW50RnJh
bWUsIHtoYXNDaGlsZHJlbjogdHJ1ZX0pOworICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5f
b3JpZ2luVHJlZUVsZW1lbnRNYXAuc2V0KG9yaWdpbiwgb3JpZ2luVHJlZUVsZW1lbnQpOwogCi0g
ICAgICAgICAgICAgICAgICAgICAgICBsZXQgaW5kZXggPSBpbnNlcnRpb25JbmRleEZvck9iamVj
dEluTGlzdFNvcnRlZEJ5RnVuY3Rpb24oZnJhbWVUcmVlRWxlbWVudCwgdGhpcy5fcmVzb3VyY2Vz
VHJlZU91dGxpbmUuY2hpbGRyZW4sIHRoaXMuX2JvdW5kQ29tcGFyZVRyZWVFbGVtZW50cyk7Ci0g
ICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9yZXNvdXJjZXNUcmVlT3V0bGluZS5pbnNlcnRD
aGlsZChmcmFtZVRyZWVFbGVtZW50LCBpbmRleCk7CisgICAgICAgICAgICAgICAgICAgICAgICBs
ZXQgaW5kZXggPSBpbnNlcnRpb25JbmRleEZvck9iamVjdEluTGlzdFNvcnRlZEJ5RnVuY3Rpb24o
b3JpZ2luVHJlZUVsZW1lbnQsIHRoaXMuX3Jlc291cmNlc1RyZWVPdXRsaW5lLmNoaWxkcmVuLCB0
aGlzLl9ib3VuZENvbXBhcmVUcmVlRWxlbWVudHMpOworICAgICAgICAgICAgICAgICAgICAgICAg
dGhpcy5fcmVzb3VyY2VzVHJlZU91dGxpbmUuaW5zZXJ0Q2hpbGQob3JpZ2luVHJlZUVsZW1lbnQs
IGluZGV4KTsKICAgICAgICAgICAgICAgICAgICAgfQogCiAgICAgICAgICAgICAgICAgICAgIGxl
dCBzdWJwYXRoID0gcmVzb3VyY2UudXJsQ29tcG9uZW50cy5wYXRoOwogICAgICAgICAgICAgICAg
ICAgICBpZiAoc3VicGF0aCAmJiBzdWJwYXRoWzBdID09PSAiLyIpCiAgICAgICAgICAgICAgICAg
ICAgICAgICBzdWJwYXRoID0gc3VicGF0aC5zdWJzdHJpbmcoMSk7CiAKLSAgICAgICAgICAgICAg
ICAgICAgcGFyZW50VHJlZUVsZW1lbnQgPSBmcmFtZVRyZWVFbGVtZW50LmNyZWF0ZUZvbGRlcnNB
c05lZWRlZEZvclN1YnBhdGgoc3VicGF0aCwgdGhpcy5fYm91bmRDb21wYXJlVHJlZUVsZW1lbnRz
KTsKKyAgICAgICAgICAgICAgICAgICAgcGFyZW50VHJlZUVsZW1lbnQgPSBvcmlnaW5UcmVlRWxl
bWVudC5jcmVhdGVGb2xkZXJzQXNOZWVkZWRGb3JTdWJwYXRoKHN1YnBhdGgsIHRoaXMuX2JvdW5k
Q29tcGFyZVRyZWVFbGVtZW50cyk7CiAgICAgICAgICAgICAgICAgfSBlbHNlCiAgICAgICAgICAg
ICAgICAgICAgIHBhcmVudFRyZWVFbGVtZW50ID0gdGhpcy5fcmVzb3VyY2VzVHJlZU91dGxpbmU7
CiAgICAgICAgICAgICB9CkBAIC0xNTQ4LDYgKzE1NDksNyBAQCBXSS5Tb3VyY2VzTmF2aWdhdGlv
blNpZGViYXJQYW5lbCA9IGNsYXNzIFNvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsIGV4dGVu
ZHMgVwogICAgICAgICAgICAgcmV0dXJuOwogCiAgICAgICAgIGlmICh0cmVlRWxlbWVudCBpbnN0
YW5jZW9mIFdJLkZvbGRlclRyZWVFbGVtZW50CisgICAgICAgICAgICB8fCB0cmVlRWxlbWVudCBp
bnN0YW5jZW9mIFdJLk9yaWdpblRyZWVFbGVtZW50CiAgICAgICAgICAgICB8fCB0cmVlRWxlbWVu
dCBpbnN0YW5jZW9mIFdJLlJlc291cmNlVHJlZUVsZW1lbnQKICAgICAgICAgICAgIHx8IHRyZWVF
bGVtZW50IGluc3RhbmNlb2YgV0kuU2NyaXB0VHJlZUVsZW1lbnQKICAgICAgICAgICAgIHx8IHRy
ZWVFbGVtZW50IGluc3RhbmNlb2YgV0kuQ1NTU3R5bGVTaGVldFRyZWVFbGVtZW50KSB7CkBAIC0x
ODQzLDcgKzE4NDUsNyBAQCBXSS5Tb3VyY2VzTmF2aWdhdGlvblNpZGViYXJQYW5lbCA9IGNsYXNz
IFNvdXJjZXNOYXZpZ2F0aW9uU2lkZWJhclBhbmVsIGV4dGVuZHMgVwogICAgICAgICBsZXQgcGFy
ZW50VHJlZUVsZW1lbnQgPSBzY3JpcHRUcmVlRWxlbWVudC5wYXJlbnQ7CiAgICAgICAgIHBhcmVu
dFRyZWVFbGVtZW50LnJlbW92ZUNoaWxkKHNjcmlwdFRyZWVFbGVtZW50KTsKIAotICAgICAgICBp
ZiAocGFyZW50VHJlZUVsZW1lbnQgaW5zdGFuY2VvZiBXSS5Gb2xkZXJUcmVlRWxlbWVudCkgewor
ICAgICAgICBpZiAocGFyZW50VHJlZUVsZW1lbnQgaW5zdGFuY2VvZiBXSS5Gb2xkZXJUcmVlRWxl
bWVudCB8fCBwYXJlbnRUcmVlRWxlbWVudCBpbnN0YW5jZW9mIFdJLk9yaWdpblRyZWVFbGVtZW50
KSB7CiAgICAgICAgICAgICBwYXJlbnRUcmVlRWxlbWVudC5yZXByZXNlbnRlZE9iamVjdC5yZW1v
dmUoc2NyaXB0KTsKIAogICAgICAgICAgICAgaWYgKCFwYXJlbnRUcmVlRWxlbWVudC5jaGlsZHJl
bi5sZW5ndGgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL3NwaS9pb3MvVUlL
aXRTUEkuaCBiL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vc3BpL2lvcy9VSUtpdFNQSS5oCmluZGV4
IDZlYjE2YWI5MGE4N2Y1MTJmNWIyNmZiY2NlY2I3NTNlMGEyYjMxNmUuLjhiYzQ4YmRmYzI3ZDZm
YTYzZDdjMzBhZTNkMmRjMzM2ZTQ3YzhkMTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvUGxh
dGZvcm0vc3BpL2lvcy9VSUtpdFNQSS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vc3Bp
L2lvcy9VSUtpdFNQSS5oCkBAIC0yNzAsNiArMjcwLDcgQEAgdHlwZWRlZiBlbnVtIHsKIAogQGlu
dGVyZmFjZSBVSUtleWJvYXJkSW1wbCA6IFVJVmlldyA8VUlLZXlib2FyZENhbmRpZGF0ZUxpc3RE
ZWxlZ2F0ZT4KIC0gKEJPT0wpc21hcnRJbnNlcnREZWxldGVJc0VuYWJsZWQ7CistICh2b2lkKXVw
ZGF0ZUZvckNoYW5nZWRTZWxlY3Rpb247CiBAZW5kCiAKIEBpbnRlcmZhY2UgVUlLZXlib2FyZElt
cGwgKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1BhZ2VDbGllbnQuaCBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1BhZ2VDbGllbnQuaAppbmRleCA2Y2Y1ZTE0ZWE1Njlm
MjNkYTg0NzU0MDk2Y2E1MTE0NTNjMjk4YjkwLi5lODI3YmI0MjUxMzY0MjhjMTkzNmMwZjhiMzc1
NTQyOTg3YTY2YTFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9QYWdlQ2xp
ZW50LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUGFnZUNsaWVudC5oCkBAIC0zODYs
NiArMzg2LDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCByZXN0b3JlUGFnZUNlbnRlckFu
ZFNjYWxlKE9wdGlvbmFsPFdlYkNvcmU6OkZsb2F0UG9pbnQ+IGNlbnRlciwgZG91YmxlIHNjYWxl
KSA9IDA7CiAKICAgICB2aXJ0dWFsIHZvaWQgZWxlbWVudERpZEZvY3VzKGNvbnN0IEZvY3VzZWRF
bGVtZW50SW5mb3JtYXRpb24mLCBib29sIHVzZXJJc0ludGVyYWN0aW5nLCBib29sIGJsdXJQcmV2
aW91c05vZGUsIE9wdGlvblNldDxXZWJDb3JlOjpBY3Rpdml0eVN0YXRlOjpGbGFnPiBhY3Rpdml0
eVN0YXRlQ2hhbmdlcywgQVBJOjpPYmplY3QqIHVzZXJEYXRhKSA9IDA7CisgICAgdmlydHVhbCB2
b2lkIHVwZGF0ZUlucHV0Q29udGV4dEFmdGVyQmx1cnJpbmdBbmRSZWZvY3VzaW5nRWxlbWVudCgp
ID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgZWxlbWVudERpZEJsdXIoKSA9IDA7CiAgICAgdmlydHVh
bCB2b2lkIGZvY3VzZWRFbGVtZW50RGlkQ2hhbmdlSW5wdXRNb2RlKFdlYkNvcmU6OklucHV0TW9k
ZSkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNlaXZlRWRpdG9yU3RhdGVVcGRhdGVBZnRl
ckZvY3VzKCkgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFn
ZVByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAppbmRleCBl
NWY5NTAzZTdkNGI2NjU3YTZhNTBkNzlmMTdhODdkYTM4ZjAxOTRkLi40ZWExNWEzYmMxODM5Njg3
Y2VhZTJhY2U0YTk5YjU1OTc5YzM1NjI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJQYWdlUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdl
UHJveHkuaApAQCAtMTk0NCw2ICsxOTQ0LDcgQEAgcHJpdmF0ZToKIAogICAgIHZvaWQgZWxlbWVu
dERpZEZvY3VzKGNvbnN0IEZvY3VzZWRFbGVtZW50SW5mb3JtYXRpb24mLCBib29sIHVzZXJJc0lu
dGVyYWN0aW5nLCBib29sIGJsdXJQcmV2aW91c05vZGUsIE9wdGlvblNldDxXZWJDb3JlOjpBY3Rp
dml0eVN0YXRlOjpGbGFnPiBhY3Rpdml0eVN0YXRlQ2hhbmdlcywgY29uc3QgVXNlckRhdGEmKTsK
ICAgICB2b2lkIGVsZW1lbnREaWRCbHVyKCk7CisgICAgdm9pZCB1cGRhdGVJbnB1dENvbnRleHRB
ZnRlckJsdXJyaW5nQW5kUmVmb2N1c2luZ0VsZW1lbnQoKTsKICAgICB2b2lkIGZvY3VzZWRFbGVt
ZW50RGlkQ2hhbmdlSW5wdXRNb2RlKFdlYkNvcmU6OklucHV0TW9kZSk7CiAgICAgdm9pZCBkaWRS
ZWxlYXNlQWxsVG91Y2hQb2ludHMoKTsKICAgICB2b2lkIGRpZFJlY2VpdmVFZGl0b3JTdGF0ZVVw
ZGF0ZUFmdGVyRm9jdXMoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dl
YlBhZ2VQcm94eS5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5tZXNzYWdlcy5pbgppbmRleCA3OWY2MmRmZDljMmNjNWViMmE2MWMxOTczODU0MWI5YTlh
MzM1NmI5Li42MWRjMWJjNTAyZDVjOTI1MzNlMjcxYjdkMTZjOWRmNGNmMjYzYTQzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4KKysr
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluCkBAIC00
MDgsNiArNDA4LDcgQEAgbWVzc2FnZXMgLT4gV2ViUGFnZVByb3h5IHsKIAogICAgIEVsZW1lbnRE
aWRGb2N1cyhzdHJ1Y3QgV2ViS2l0OjpGb2N1c2VkRWxlbWVudEluZm9ybWF0aW9uIGluZm9ybWF0
aW9uLCBib29sIHVzZXJJc0ludGVyYWN0aW5nLCBib29sIGJsdXJQcmV2aW91c05vZGUsIE9wdGlv
blNldDxXZWJDb3JlOjpBY3Rpdml0eVN0YXRlOjpGbGFnPiBhY3Rpdml0eVN0YXRlQ2hhbmdlcywg
V2ViS2l0OjpVc2VyRGF0YSB1c2VyRGF0YSkKICAgICBFbGVtZW50RGlkQmx1cigpCisgICAgVXBk
YXRlSW5wdXRDb250ZXh0QWZ0ZXJCbHVycmluZ0FuZFJlZm9jdXNpbmdFbGVtZW50KCkKICAgICBG
b2N1c2VkRWxlbWVudERpZENoYW5nZUlucHV0TW9kZShlbnVtOnVpbnQ4X3QgV2ViQ29yZTo6SW5w
dXRNb2RlIG1vZGUpCiAgICAgU2Nyb2xsaW5nTm9kZVNjcm9sbFdpbGxTdGFydFNjcm9sbCgpCiAg
ICAgU2Nyb2xsaW5nTm9kZVNjcm9sbERpZEVuZFNjcm9sbCgpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9pb3MvUGFnZUNsaWVudEltcGxJT1MuaCBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL2lvcy9QYWdlQ2xpZW50SW1wbElPUy5oCmluZGV4IDMzMzFmZDRkMjMzMWFjY2Iw
NmI4Nzg3NmRkZTI4YmE2N2ZiOGE3NWUuLmJiOTdiMDUzYmQwYmE1OTY5NmM4NzkxZjQyYzU3NWU3
MjQxNzhmMWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9QYWdlQ2xp
ZW50SW1wbElPUy5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9QYWdlQ2xpZW50
SW1wbElPUy5oCkBAIC0xNDksNiArMTQ5LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHJlc3RvcmVQ
YWdlQ2VudGVyQW5kU2NhbGUoT3B0aW9uYWw8V2ViQ29yZTo6RmxvYXRQb2ludD4sIGRvdWJsZSkg
b3ZlcnJpZGU7CiAKICAgICB2b2lkIGVsZW1lbnREaWRGb2N1cyhjb25zdCBGb2N1c2VkRWxlbWVu
dEluZm9ybWF0aW9uJiwgYm9vbCB1c2VySXNJbnRlcmFjdGluZywgYm9vbCBibHVyUHJldmlvdXNO
b2RlLCBPcHRpb25TZXQ8V2ViQ29yZTo6QWN0aXZpdHlTdGF0ZTo6RmxhZz4gYWN0aXZpdHlTdGF0
ZUNoYW5nZXMsIEFQSTo6T2JqZWN0KiB1c2VyRGF0YSkgb3ZlcnJpZGU7CisgICAgdm9pZCB1cGRh
dGVJbnB1dENvbnRleHRBZnRlckJsdXJyaW5nQW5kUmVmb2N1c2luZ0VsZW1lbnQoKSBmaW5hbDsK
ICAgICB2b2lkIGVsZW1lbnREaWRCbHVyKCkgb3ZlcnJpZGU7CiAgICAgdm9pZCBmb2N1c2VkRWxl
bWVudERpZENoYW5nZUlucHV0TW9kZShXZWJDb3JlOjpJbnB1dE1vZGUpIG92ZXJyaWRlOwogICAg
IHZvaWQgZGlkUmVjZWl2ZUVkaXRvclN0YXRlVXBkYXRlQWZ0ZXJGb2N1cygpIG92ZXJyaWRlOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1BhZ2VDbGllbnRJbXBsSU9T
Lm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1BhZ2VDbGllbnRJbXBsSU9TLm1tCmlu
ZGV4IDkyZmFiN2UwNTk4ZmQzNmYzZjU1MGI0MTQ5YTQ3ZTI0ZjhiNjhjMmQuLmQzOTMwYjVlN2Zk
MGU2MjBmZjVkNTE4NjhhNzc1MzdjYTlmYTQ5MTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL2lvcy9QYWdlQ2xpZW50SW1wbElPUy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9pb3MvUGFnZUNsaWVudEltcGxJT1MubW0KQEAgLTU1OCw2ICs1NTgsMTEgQEAgdm9p
ZCBQYWdlQ2xpZW50SW1wbDo6ZWxlbWVudERpZEZvY3VzKGNvbnN0IEZvY3VzZWRFbGVtZW50SW5m
b3JtYXRpb24mIG5vZGVJbmZvcm0KICAgICBbbV9jb250ZW50VmlldyBfZWxlbWVudERpZEZvY3Vz
Om5vZGVJbmZvcm1hdGlvbiB1c2VySXNJbnRlcmFjdGluZzp1c2VySXNJbnRlcmFjdGluZyBibHVy
UHJldmlvdXNOb2RlOmJsdXJQcmV2aW91c05vZGUgYWN0aXZpdHlTdGF0ZUNoYW5nZXM6YWN0aXZp
dHlTdGF0ZUNoYW5nZXMgdXNlck9iamVjdDp1c2VyT2JqZWN0XTsKIH0KIAordm9pZCBQYWdlQ2xp
ZW50SW1wbDo6dXBkYXRlSW5wdXRDb250ZXh0QWZ0ZXJCbHVycmluZ0FuZFJlZm9jdXNpbmdFbGVt
ZW50KCkKK3sKKyAgICBbbV9jb250ZW50VmlldyBfdXBkYXRlSW5wdXRDb250ZXh0QWZ0ZXJCbHVy
cmluZ0FuZFJlZm9jdXNpbmdFbGVtZW50XTsKK30KKwogYm9vbCBQYWdlQ2xpZW50SW1wbDo6aXNG
b2N1c2luZ0VsZW1lbnQoKQogewogICAgIHJldHVybiBbbV9jb250ZW50VmlldyBpc0ZvY3VzaW5n
RWxlbWVudF07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250
ZW50Vmlld0ludGVyYWN0aW9uLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250
ZW50Vmlld0ludGVyYWN0aW9uLmgKaW5kZXggZjhiNjQ3NzVjZTBhY2RmOWEyMjQzOTBkNzkyYmVk
NGZiNzcxZDMwZi4uMzEyZmUxNGUyZTEzNDZmM2ZhNzRmZjYzN2JjMzdmNjE2NGQzMTgxNCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFj
dGlvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50
ZXJhY3Rpb24uaApAQCAtNDU5LDYgKzQ1OSw3IEBAIEZPUl9FQUNIX1BSSVZBVEVfV0tDT05URU5U
VklFV19BQ1RJT04oREVDTEFSRV9XS0NPTlRFTlRWSUVXX0FDVElPTl9GT1JfV0VCX1ZJRVcpCiAt
ICh2b2lkKV9kaXNhYmxlRG91YmxlVGFwR2VzdHVyZXNEdXJpbmdUYXBJZk5lY2Vzc2FyeToodWlu
dDY0X3QpcmVxdWVzdElEOwogLSAodm9pZClfaGFuZGxlU21hcnRNYWduaWZpY2F0aW9uSW5mb3Jt
YXRpb25Gb3JQb3RlbnRpYWxUYXA6KHVpbnQ2NF90KXJlcXVlc3RJRCByZW5kZXJSZWN0Oihjb25z
dCBXZWJDb3JlOjpGbG9hdFJlY3QmKXJlbmRlclJlY3QgZml0RW50aXJlUmVjdDooQk9PTClmaXRF
bnRpcmVSZWN0IHZpZXdwb3J0TWluaW11bVNjYWxlOihkb3VibGUpdmlld3BvcnRNaW5pbXVtU2Nh
bGUgdmlld3BvcnRNYXhpbXVtU2NhbGU6KGRvdWJsZSl2aWV3cG9ydE1heGltdW1TY2FsZTsKIC0g
KHZvaWQpX2VsZW1lbnREaWRGb2N1czooY29uc3QgV2ViS2l0OjpGb2N1c2VkRWxlbWVudEluZm9y
bWF0aW9uJilpbmZvcm1hdGlvbiB1c2VySXNJbnRlcmFjdGluZzooQk9PTCl1c2VySXNJbnRlcmFj
dGluZyBibHVyUHJldmlvdXNOb2RlOihCT09MKWJsdXJQcmV2aW91c05vZGUgYWN0aXZpdHlTdGF0
ZUNoYW5nZXM6KE9wdGlvblNldDxXZWJDb3JlOjpBY3Rpdml0eVN0YXRlOjpGbGFnPilhY3Rpdml0
eVN0YXRlQ2hhbmdlcyB1c2VyT2JqZWN0OihOU09iamVjdCA8TlNTZWN1cmVDb2Rpbmc+ICopdXNl
ck9iamVjdDsKKy0gKHZvaWQpX3VwZGF0ZUlucHV0Q29udGV4dEFmdGVyQmx1cnJpbmdBbmRSZWZv
Y3VzaW5nRWxlbWVudDsKIC0gKHZvaWQpX2VsZW1lbnREaWRCbHVyOwogLSAodm9pZClfaGlkZUNv
bnRleHRNZW51SGludENvbnRhaW5lcjsKIC0gKHZvaWQpX2RpZFVwZGF0ZUlucHV0TW9kZTooV2Vi
Q29yZTo6SW5wdXRNb2RlKW1vZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbQppbmRleCBmNDBlZTc3ZDJmNWIxZmU1
OTFjMjRmNWFkYzM5ODFkOGVlMzhkOWQ0Li41ZjhkZGJkM2Y1ZGNjZDhiMDdiZWFjYzhjNGFhZmUw
MTgxNzhhYzAyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250
ZW50Vmlld0ludGVyYWN0aW9uLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9X
S0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0KQEAgLTU0OTIsNiArNTQ5MiwxNCBAQCAtICh2b2lk
KV9lbGVtZW50RGlkQmx1cgogICAgICAgICBfZGlkQWNjZXNzb3J5VGFiSW5pdGlhdGVGb2N1cyA9
IE5POwogfQogCistICh2b2lkKV91cGRhdGVJbnB1dENvbnRleHRBZnRlckJsdXJyaW5nQW5kUmVm
b2N1c2luZ0VsZW1lbnQKK3sKKyAgICBpZiAoIWhhc0ZvY3VzZWRFbGVtZW50KF9mb2N1c2VkRWxl
bWVudEluZm9ybWF0aW9uKSB8fCAhX3N1cHByZXNzU2VsZWN0aW9uQXNzaXN0YW50UmVhc29ucykK
KyAgICAgICAgcmV0dXJuOworCisgICAgW1VJS2V5Ym9hcmRJbXBsLmFjdGl2ZUluc3RhbmNlIHVw
ZGF0ZUZvckNoYW5nZWRTZWxlY3Rpb25dOworfQorCiAtIChCT09MKXNob3VsZElnbm9yZUtleWJv
YXJkV2lsbEhpZGVOb3RpZmljYXRpb24KIHsKICAgICAvLyBJZ25vcmUga2V5Ym9hcmQgd2lsbCBo
aWRlIG5vdGlmaWNhdGlvbnMgc2VudCBkdXJpbmcgcm90YXRpb24uIFRoZXkncmUganVzdCB0aGVy
ZSBmb3IKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XZWJQYWdlUHJv
eHlJT1MubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV2ViUGFnZVByb3h5SU9TLm1t
CmluZGV4IDMxYjdkODMwZDMwN2ZhZDg1YzI2ZDU4YzBlZjZhNzJiMjM1ODkzMmYuLmRkNTY2ZDEx
MDBkMzk4MzhhNjRkMmRkOTgyNDc2MTIxYjIzOWQxY2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL2lvcy9XZWJQYWdlUHJveHlJT1MubW0KKysrIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvaW9zL1dlYlBhZ2VQcm94eUlPUy5tbQpAQCAtOTA0LDYgKzkwNCwxMSBAQCB2b2lk
IFdlYlBhZ2VQcm94eTo6c2V0SXNTaG93aW5nSW5wdXRWaWV3Rm9yRm9jdXNlZEVsZW1lbnQoYm9v
bCBzaG93aW5nSW5wdXRWaWV3KQogICAgIHByb2Nlc3MoKS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdl
OjpTZXRJc1Nob3dpbmdJbnB1dFZpZXdGb3JGb2N1c2VkRWxlbWVudChzaG93aW5nSW5wdXRWaWV3
KSwgbV9wYWdlSUQpOwogfQogCit2b2lkIFdlYlBhZ2VQcm94eTo6dXBkYXRlSW5wdXRDb250ZXh0
QWZ0ZXJCbHVycmluZ0FuZFJlZm9jdXNpbmdFbGVtZW50KCkKK3sKKyAgICBwYWdlQ2xpZW50KCku
dXBkYXRlSW5wdXRDb250ZXh0QWZ0ZXJCbHVycmluZ0FuZFJlZm9jdXNpbmdFbGVtZW50KCk7Cit9
CisKIHZvaWQgV2ViUGFnZVByb3h5OjplbGVtZW50RGlkRm9jdXMoY29uc3QgRm9jdXNlZEVsZW1l
bnRJbmZvcm1hdGlvbiYgaW5mb3JtYXRpb24sIGJvb2wgdXNlcklzSW50ZXJhY3RpbmcsIGJvb2wg
Ymx1clByZXZpb3VzTm9kZSwgT3B0aW9uU2V0PFdlYkNvcmU6OkFjdGl2aXR5U3RhdGU6OkZsYWc+
IGFjdGl2aXR5U3RhdGVDaGFuZ2VzLCBjb25zdCBVc2VyRGF0YSYgdXNlckRhdGEpCiB7CiAgICAg
bV9wZW5kaW5nSW5wdXRNb2RlQ2hhbmdlID0gV1RGOjpudWxsb3B0OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAppbmRleCBhZDkwNjk5MDc1YzA4NmRiNTU2
NDc1YjY3ZWExZTdkOGNiZTBlMDU4Li5hNWU0MWE1YTVkMjQwYzMyZWEwODExYTVkNmVmZjk0OTI5
Zjk5YWZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQ
YWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNw
cApAQCAtNTQ2OSw2ICs1NDY5LDcgQEAgc3RhdGljIGJvb2wgaXNUZXh0Rm9ybUNvbnRyb2xPckVk
aXRhYmxlQ29udGVudChjb25zdCBXZWJDb3JlOjpFbGVtZW50JiBlbGVtZW50KQogdm9pZCBXZWJQ
YWdlOjplbGVtZW50RGlkRm9jdXMoV2ViQ29yZTo6RWxlbWVudCYgZWxlbWVudCkKIHsKICAgICBp
ZiAoIXNob3VsZERpc3BhdGNoVXBkYXRlQWZ0ZXJGb2N1c2luZ0VsZW1lbnQoZWxlbWVudCkpIHsK
KyAgICAgICAgdXBkYXRlSW5wdXRDb250ZXh0QWZ0ZXJCbHVycmluZ0FuZFJlZm9jdXNpbmdFbGVt
ZW50SWZOZWVkZWQoZWxlbWVudCk7CiAgICAgICAgIG1fZm9jdXNlZEVsZW1lbnQgPSAmZWxlbWVu
dDsKICAgICAgICAgbV9yZWNlbnRseUJsdXJyZWRFbGVtZW50ID0gbnVsbHB0cjsKICAgICAgICAg
cmV0dXJuOwpAQCAtNTQ3Niw2ICs1NDc3LDcgQEAgdm9pZCBXZWJQYWdlOjplbGVtZW50RGlkRm9j
dXMoV2ViQ29yZTo6RWxlbWVudCYgZWxlbWVudCkKIAogICAgIGlmIChpczxIVE1MU2VsZWN0RWxl
bWVudD4oZWxlbWVudCkgfHwgaXNUZXh0Rm9ybUNvbnRyb2xPckVkaXRhYmxlQ29udGVudChlbGVt
ZW50KSkgewogICAgICAgICBtX2ZvY3VzZWRFbGVtZW50ID0gJmVsZW1lbnQ7CisgICAgICAgIG1f
aGFzUGVuZGluZ0lucHV0Q29udGV4dFVwZGF0ZUFmdGVyQmx1cnJpbmdBbmRSZWZvY3VzaW5nRWxl
bWVudCA9IGZhbHNlOwogCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKIApAQCAtNTUxNyw2ICs1
NTE5LDcgQEAgdm9pZCBXZWJQYWdlOjplbGVtZW50RGlkQmx1cihXZWJDb3JlOjpFbGVtZW50JiBl
bGVtZW50KQogICAgICAgICAgICAgfQogICAgICAgICAgICAgcHJvdGVjdGVkVGhpcy0+bV9yZWNl
bnRseUJsdXJyZWRFbGVtZW50ID0gbnVsbHB0cjsKICAgICAgICAgfSk7CisgICAgICAgIG1faGFz
UGVuZGluZ0lucHV0Q29udGV4dFVwZGF0ZUFmdGVyQmx1cnJpbmdBbmRSZWZvY3VzaW5nRWxlbWVu
dCA9IGZhbHNlOwogICAgIH0KIH0KIApAQCAtNjY5Myw2ICs2Njk2LDEwIEBAIFdlYkNvcmU6Oklu
dFJlY3QgV2ViUGFnZTo6cmVjdEZvckVsZW1lbnRBdEludGVyYWN0aW9uTG9jYXRpb24oKSBjb25z
dAogICAgIHJldHVybiB7IH07CiB9CiAKK3ZvaWQgV2ViUGFnZTo6dXBkYXRlSW5wdXRDb250ZXh0
QWZ0ZXJCbHVycmluZ0FuZFJlZm9jdXNpbmdFbGVtZW50SWZOZWVkZWQoRWxlbWVudCYpCit7Cit9
CisKICNlbmRpZiAvLyAhUExBVEZPUk0oSU9TX0ZBTUlMWSkKIAogc3RhdGljIEludFJlY3QgZWxl
bWVudFJlY3RJblJvb3RWaWV3Q29vcmRpbmF0ZXMoY29uc3QgRWxlbWVudCYgZWxlbWVudCwgY29u
c3QgRnJhbWUmIGZyYW1lKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFn
ZS5oCmluZGV4IDQwY2VkNzY0ZTMwNmYxOWUzMDY4NGJjZTY3Y2VjZDY3ZjYyMDA2NTcuLjQ3YjYz
MWZhMjIwY2YzZGMyNzRjMTY1ZDEyODk1Njc5YTMyMDc3MGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKQEAgLTYwNiw2ICs2MDYsNyBAQCBwdWJsaWM6CiAg
ICAgdm9pZCBlbGVtZW50RGlkQmx1cihXZWJDb3JlOjpFbGVtZW50Jik7CiAgICAgdm9pZCBmb2N1
c2VkRWxlbWVudERpZENoYW5nZUlucHV0TW9kZShXZWJDb3JlOjpFbGVtZW50JiwgV2ViQ29yZTo6
SW5wdXRNb2RlKTsKICAgICB2b2lkIHJlc2V0Rm9jdXNlZEVsZW1lbnRGb3JGcmFtZShXZWJGcmFt
ZSopOworICAgIHZvaWQgdXBkYXRlSW5wdXRDb250ZXh0QWZ0ZXJCbHVycmluZ0FuZFJlZm9jdXNp
bmdFbGVtZW50SWZOZWVkZWQoV2ViQ29yZTo6RWxlbWVudCYpOwogCiAgICAgdm9pZCBkaXNhYmxl
ZEFkYXB0YXRpb25zRGlkQ2hhbmdlKGNvbnN0IE9wdGlvblNldDxXZWJDb3JlOjpEaXNhYmxlZEFk
YXB0YXRpb25zPiYpOwogICAgIHZvaWQgdmlld3BvcnRQcm9wZXJ0aWVzRGlkQ2hhbmdlKGNvbnN0
IFdlYkNvcmU6OlZpZXdwb3J0QXJndW1lbnRzJik7CkBAIC0xODI1LDYgKzE4MjYsNyBAQCBwcml2
YXRlOgogCiAgICAgUmVmUHRyPFdlYkNvcmU6OkVsZW1lbnQ+IG1fZm9jdXNlZEVsZW1lbnQ7CiAg
ICAgUmVmUHRyPFdlYkNvcmU6OkVsZW1lbnQ+IG1fcmVjZW50bHlCbHVycmVkRWxlbWVudDsKKyAg
ICBib29sIG1faGFzUGVuZGluZ0lucHV0Q29udGV4dFVwZGF0ZUFmdGVyQmx1cnJpbmdBbmRSZWZv
Y3VzaW5nRWxlbWVudCB7IGZhbHNlIH07CiAgICAgYm9vbCBtX2hhc1BlbmRpbmdFZGl0b3JTdGF0
ZVVwZGF0ZSB7IGZhbHNlIH07CiAKICNpZiBFTkFCTEUoSU9TX1RPVUNIX0VWRU5UUykKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1t
IGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0KaW5k
ZXggMTgxYzVhYzJkZjZjZGY0MzM1MzdhMjRhMWZhOWFhZWI2YmJmZjJjZi4uZWU0YTgxNTE0M2Zk
ZTBiM2I5MmY4ZDMxNDdjNTQ4MDc5YTA4MDNiNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0KKysrIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0KQEAgLTExNjksNiArMTE2OSwxOSBA
QCB2b2lkIFdlYlBhZ2U6Omluc3BlY3Rvck5vZGVTZWFyY2hFbmRlZEF0UG9zaXRpb24oY29uc3Qg
RmxvYXRQb2ludCYgcG9zaXRpb24pCiAgICAgICAgIG5vZGUtPmluc3BlY3QoKTsKIH0KIAordm9p
ZCBXZWJQYWdlOjp1cGRhdGVJbnB1dENvbnRleHRBZnRlckJsdXJyaW5nQW5kUmVmb2N1c2luZ0Vs
ZW1lbnRJZk5lZWRlZChFbGVtZW50JiBlbGVtZW50KQoreworICAgIGlmIChtX3JlY2VudGx5Qmx1
cnJlZEVsZW1lbnQgIT0gJmVsZW1lbnQgfHwgIW1faXNTaG93aW5nSW5wdXRWaWV3Rm9yRm9jdXNl
ZEVsZW1lbnQpCisgICAgICAgIHJldHVybjsKKworICAgIG1faGFzUGVuZGluZ0lucHV0Q29udGV4
dFVwZGF0ZUFmdGVyQmx1cnJpbmdBbmRSZWZvY3VzaW5nRWxlbWVudCA9IHRydWU7CisgICAgY2Fs
bE9uTWFpblRocmVhZChbdGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWZQdHIodGhpcyldIHsK
KyAgICAgICAgaWYgKG1faGFzUGVuZGluZ0lucHV0Q29udGV4dFVwZGF0ZUFmdGVyQmx1cnJpbmdB
bmRSZWZvY3VzaW5nRWxlbWVudCkKKyAgICAgICAgICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6VXBkYXRlSW5wdXRDb250ZXh0QWZ0ZXJCbHVycmluZ0FuZFJlZm9jdXNpbmdFbGVtZW50
KCkpOworICAgICAgICBtX2hhc1BlbmRpbmdJbnB1dENvbnRleHRVcGRhdGVBZnRlckJsdXJyaW5n
QW5kUmVmb2N1c2luZ0VsZW1lbnQgPSBmYWxzZTsKKyAgICB9KTsKK30KKwogdm9pZCBXZWJQYWdl
OjpibHVyRm9jdXNlZEVsZW1lbnQoKQogewogICAgIGlmICghbV9mb2N1c2VkRWxlbWVudCkKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpp
bmRleCBmMjRmMDE1ZTliMTIxZTJmZjllYzdmMzVkMzcyYzkwYmQ3NGEzMGMzLi44NGIxNTYyMWU1
YWFkZmZjNTY1NmNkZThjYTIzZGY3YTBkOWU4OTA3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIw
MTktMDgtMjEgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAg
ICAgVHlwaW5nIEtvcmVhbiBpbiB0aXRsZSBmaWVsZCBhZnRlciB0eXBpbmcgaW4gdGhlIGJvZHkg
aW5zZXJ0cyBleHRyYW5lb3VzIGNoYXJhY3RlcnMgb24gYmxvZy5uYXZlci5jb20KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMTAyMworICAgICAgICA8
cmRhcjovL3Byb2JsZW0vNTQyOTQ3OTQ+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgQWRkIGEgbmV3IGxheW91dCB0ZXN0IHRvIHZlcmlmeSB0aGF0IHdl
IHN1cHByZXNzIHRleHQgaW50ZXJhY3Rpb25zIHdoZW4gZm9jdXNpbmcgYW4gZWRpdGFibGUgZWxl
bWVudCBpbnNpZGUgYW4KKyAgICAgICAgZW1wdHksIGJvcmRlcmxlc3Mgc3ViZnJhbWUuCisKKyAg
ICAgICAgKiBlZGl0aW5nL3NlbGVjdGlvbi9pb3MvZG8tbm90LXNob3ctc2VsZWN0aW9uLWluLWVt
cHR5LWJvcmRlcmxlc3Mtc3ViZnJhbWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBl
ZGl0aW5nL3NlbGVjdGlvbi9pb3MvZG8tbm90LXNob3ctc2VsZWN0aW9uLWluLWVtcHR5LWJvcmRl
cmxlc3Mtc3ViZnJhbWUuaHRtbDogQWRkZWQuCisKIDIwMTktMDgtMjAgIFphbGFuIEJ1anRhcyAg
PHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBbQ29udGVudENoYW5nZU9ic2VydmVyXSBpc0Nv
bnNpZGVyZWRDbGlja2FibGUgc2hvdWxkIGJlIGFibGUgdG8gcHJvY2VzcyBlbGVtZW50cyB3aXRo
IG5vIHJlbmRlcmVycwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24v
aW9zL2RvLW5vdC1zaG93LXNlbGVjdGlvbi1pbi1lbXB0eS1ib3JkZXJsZXNzLXN1YmZyYW1lLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy9kby1ub3Qtc2hv
dy1zZWxlY3Rpb24taW4tZW1wdHktYm9yZGVybGVzcy1zdWJmcmFtZS1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uNWJiYjJjZWFlYjNhZTY1Njk5ZWZlZWQxMjllZWZjZjQ5MTUyMjcxNAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2lvcy9kby1ub3Qtc2hv
dy1zZWxlY3Rpb24taW4tZW1wdHktYm9yZGVybGVzcy1zdWJmcmFtZS1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSwxMSBAQAorVGhpcyB0ZXN0IHZlcmlmaWVzIHRoYXQgc2VsZWN0aW9uIFVJIGlzIHN1
cHByZXNzZWQgd2hlbiBmb2N1c2luZyBhbiBlbGVtZW50IGluc2lkZSBhbiBlbXB0eSBzdWJmcmFt
ZS4gVG8gcnVuIHRoZSB0ZXN0IG1hbnVhbGx5LCB0YXAgdGhlIGJ1dHRvbiBhbmQgY2hlY2sgdGhh
dCBhIGJsdWUgc2VsZWN0aW9uIGNhcmV0IGlzIG5vdCB2aXNpYmxlLgorCitPbiBzdWNjZXNzLCB5
b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVT
VCBDT01QTEVURSIuCisKKworUEFTUyBjYXJldFJlY3Qud2lkdGggaXMgMAorUEFTUyBjYXJldFJl
Y3QuaGVpZ2h0IGlzIDAKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBD
T01QTEVURQorRm9jdXMgdGhlIGhpZGRlbiBmcmFtZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZWRpdGluZy9zZWxlY3Rpb24vaW9zL2RvLW5vdC1zaG93LXNlbGVjdGlvbi1pbi1lbXB0eS1ib3Jk
ZXJsZXNzLXN1YmZyYW1lLmh0bWwgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3Mv
ZG8tbm90LXNob3ctc2VsZWN0aW9uLWluLWVtcHR5LWJvcmRlcmxlc3Mtc3ViZnJhbWUuaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5jNzM5MGIxYTcwZGJkNDlmNDQ4OGVjMzZjNzBlY2FkMjg3ZjJlMjFlCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vaW9zL2RvLW5vdC1z
aG93LXNlbGVjdGlvbi1pbi1lbXB0eS1ib3JkZXJsZXNzLXN1YmZyYW1lLmh0bWwKQEAgLTAsMCAr
MSw0OSBAQAorPCFET0NUWVBFIGh0bWw+IDwhLS0gd2Via2l0LXRlc3QtcnVubmVyIFsgdXNlRmxl
eGlibGVWaWV3cG9ydD10cnVlIF0gLS0+Cis8aHRtbD4KKzxoZWFkPgorICAgIDxtZXRhIG5hbWU9
InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSI+
CisgICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LmpzIj48L3Njcmlw
dD4KKyAgICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL3VpLWhlbHBlci5qcyI+PC9z
Y3JpcHQ+CisgICAgPHN0eWxlPgorICAgICAgICBpZnJhbWUgeworICAgICAgICAgICAgd2lkdGg6
IDA7CisgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7CisgICAgICAgICAgICBwb3NpdGlvbjogZml4
ZWQ7CisgICAgICAgICAgICB0b3A6IDA7CisgICAgICAgICAgICBsZWZ0OiAwOworICAgICAgICAg
ICAgYm9yZGVyOiAwOworICAgICAgICB9CisKKyAgICAgICAgYm9keSwgaHRtbCB7CisgICAgICAg
ICAgICB3aWR0aDogMTAwJTsKKyAgICAgICAgICAgIGhlaWdodDogMTAwJTsKKyAgICAgICAgfQor
CisgICAgICAgIGJ1dHRvbiB7CisgICAgICAgICAgICBwYWRkaW5nOiAxZW07CisgICAgICAgIH0K
KyAgICA8L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+CisgICAgPGlmcmFtZSBzcmNkb2M9Ijxib2R5
IGNvbnRlbnRlZGl0YWJsZT4iPjwvaWZyYW1lPgorICAgIDxidXR0b24gaWQ9ImZvY3VzIj5Gb2N1
cyB0aGUgaGlkZGVuIGZyYW1lPC9idXR0b24+CisgICAgPHNjcmlwdD4KKyAgICAgICAganNUZXN0
SXNBc3luYyA9IHRydWU7CisgICAgICAgIGRlc2NyaXB0aW9uKCJUaGlzIHRlc3QgdmVyaWZpZXMg
dGhhdCBzZWxlY3Rpb24gVUkgaXMgc3VwcHJlc3NlZCB3aGVuIGZvY3VzaW5nIGFuIGVsZW1lbnQg
aW5zaWRlIGFuIGVtcHR5IHN1YmZyYW1lLiBUbyBydW4gdGhlIHRlc3QgbWFudWFsbHksIHRhcCB0
aGUgYnV0dG9uIGFuZCBjaGVjayB0aGF0IGEgYmx1ZSBzZWxlY3Rpb24gY2FyZXQgaXMgbm90IHZp
c2libGUuIik7CisKKyAgICAgICAgY29uc3QgZm9jdXNCdXR0b24gPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgiZm9jdXMiKTsKKyAgICAgICAgZm9jdXNCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcigi
Y2xpY2siLCBldmVudCA9PiB7CisgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJp
ZnJhbWUiKS5jb250ZW50RG9jdW1lbnQuYm9keS5mb2N1cygpOworICAgICAgICAgICAgZXZlbnQu
cHJldmVudERlZmF1bHQoKTsKKyAgICAgICAgfSk7CisKKyAgICAgICAgYWRkRXZlbnRMaXN0ZW5l
cigibG9hZCIsIGFzeW5jICgpID0+IHsKKyAgICAgICAgICAgIGF3YWl0IFVJSGVscGVyLmFjdGl2
YXRlRWxlbWVudEFuZFdhaXRGb3JJbnB1dFNlc3Npb24oZm9jdXNCdXR0b24pOworICAgICAgICAg
ICAgY2FyZXRSZWN0ID0gYXdhaXQgVUlIZWxwZXIuZ2V0VUlDYXJldFZpZXdSZWN0KCk7CisgICAg
ICAgICAgICBzaG91bGRCZSgiY2FyZXRSZWN0LndpZHRoIiwgIjAiKTsKKyAgICAgICAgICAgIHNo
b3VsZEJlKCJjYXJldFJlY3QuaGVpZ2h0IiwgIjAiKTsKKyAgICAgICAgICAgIGZpbmlzaEpTVGVz
dCgpOworICAgICAgICB9KTsKKyAgICA8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KXCBObyBu
ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>376979</attachid>
            <date>2019-08-21 21:14:48 -0700</date>
            <delta_ts>2019-08-22 08:09:54 -0700</delta_ts>
            <desc>Rebase on trunk</desc>
            <filename>bug-201023-20190821211448.patch</filename>
            <type>text/plain</type>
            <size>22668</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ4OTkzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDc1YTg0NTQ4ZmM5ZWNk
MjcwMWY5MzE1ODUwMjgwMjBjNjE1NjRlNi4uNTFhMTVlNmU2ZDkxOWQ4OWMyYTI5ZGVhYWM1OWM0
Yjg5OGY3MGJmYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDE5LTA4LTIxICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFR5cGluZyBLb3Jl
YW4gaW4gdGl0bGUgZmllbGQgYWZ0ZXIgdHlwaW5nIGluIHRoZSBib2R5IGluc2VydHMgZXh0cmFu
ZW91cyBjaGFyYWN0ZXJzIG9uIGJsb2cubmF2ZXIuY29tCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDEwMjMKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVt
LzU0Mjk0Nzk0PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEVuc3VyZXMgdGhhdCB3ZSByZWNvZ25pemUgdGhlIGJsb2cgZWRpdG9yIG9uIGJsb2cubmF2
ZXIuY29tIHRvIGJlIGEgaGlkZGVuIGVkaXRhYmxlIGFyZWEuIFRoaXMgd2Vic2l0ZSBwbGFjZXMK
KyAgICAgICAgZm9jdXMgaW5zaWRlIGFuIGVkaXRhYmxlIGJvZHkgZWxlbWVudCBvZiBhIHN1YmZy
YW1lIHRoYXQgaXMgY29tcGxldGVseSBlbXB0eSAod2lkdGg6IDAgYW5kIGJvcmRlcjogMCkuIFNl
ZSB0aGUKKyAgICAgICAgV2ViS2l0IENoYW5nZUxvZyBmb3IgbW9yZSBkZXRhaWxzLgorCisgICAg
ICAgIFRlc3Q6IGVkaXRpbmcvc2VsZWN0aW9uL2lvcy9kby1ub3Qtc2hvdy1zZWxlY3Rpb24taW4t
ZW1wdHktYm9yZGVybGVzcy1zdWJmcmFtZS5odG1sCisKKyAgICAgICAgKiByZW5kZXJpbmcvUmVu
ZGVyTGF5ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXI6OmNhbGN1bGF0ZUNs
aXBSZWN0cyBjb25zdCk6CisKIDIwMTktMDgtMjEgIE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZp
ZWxkQGFwcGxlLmNvbT4KIAogICAgICAgICBbV0hMU0xdIFZlcnRleCBzaGFkZXIgYW5kIGZyYWdt
ZW50IHNoYWRlciBuZWVkIHRvIGJlIGFibGUgdG8gY29tZSBmcm9tIHR3byBkaWZmZXJlbnQgcHJv
Z3JhbXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktp
dC9DaGFuZ2VMb2cKaW5kZXggNTFhN2IzYmU0Yzk0MDEwNTk0ZTVmZGI4ZjE5NWRkZGFlZDQzYzBm
ZS4uZmZiZWNkOWEwNmUxYmFkOGZmODk3M2RiMmUxNGU0MzliNDdjNmMyZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAg
LTEsMyArMSw3NSBAQAorMjAxOS0wOC0yMSAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFw
cGxlLmNvbT4KKworICAgICAgICBUeXBpbmcgS29yZWFuIGluIHRpdGxlIGZpZWxkIGFmdGVyIHR5
cGluZyBpbiB0aGUgYm9keSBpbnNlcnRzIGV4dHJhbmVvdXMgY2hhcmFjdGVycyBvbiBibG9nLm5h
dmVyLmNvbQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjAxMDIzCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81NDI5NDc5ND4KKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZnRlciByMjQyODMzLCB3ZSBiZWdh
biB0byBhdm9pZCBzZW5kaW5nIHJlZHVuZGFudCBFbGVtZW50RGlkRm9jdXMgdXBkYXRlcyBpbiB0
aGUgY2FzZSB3aGVyZSBhIGZvY3VzZWQgZWxlbWVudAorICAgICAgICB3YXMgYmx1cnJlZCBhbmQg
cmVmb2N1c2VkIHdpdGhpbiB0aGUgc2FtZSBydW5sb29wLiBUaGlzIHdhcyBkb25lIHRvIHByZXZl
bnQgdGhlIGlucHV0IHZpZXcgZnJvbSBmbGlja2VyaW5nIGR1ZQorICAgICAgICB0byBpbnB1dCB2
aWV3IHJlbG9hZGluZywgYXMgd2VsbCBhcyBzY3JvbGxpbmcgdG8gcmV2ZWFsIHRoZSBmb2N1c2Vk
IGVsZW1lbnQsIHdoZW4gdGFwcGluZyB0byBjaGFuZ2Ugc2VsZWN0aW9uIG9uCisgICAgICAgIE1p
Y3Jvc29mdCBXb3JkIG9ubGluZS4KKworICAgICAgICBIb3dldmVyLCBvbiBibG9nLm5hdmVyLmNv
bSwgdGhlc2UgRWxlbWVudERpZEZvY3VzIG1lc3NhZ2VzIHdlcmUgbmVjZXNzYXJ5IGluIG9yZGVy
IHRvIGVuc3VyZSB0aGF0IHRoZSBwbGF0Zm9ybQorICAgICAgICBpbnB1dCBjb250ZXh0IGNoYW5n
ZXMgd2hlbiBtb3ZpbmcgYmV0d2VlbiB0aGUgdGl0bGUgYW5kIGJvZHkgZmllbGRzLCBvciB3aGVu
IHRhcHBpbmcgdG8gY2hhbmdlIHNlbGVjdGlvbi4gVGhpcworICAgICAgICBpcyBiZWNhdXNlIGJs
b2cubmF2ZXIuY29tIHVzZXMgYSBoaWRkZW4gY29udGVudGVkaXRhYmxlIGFyZWEgdW5kZXIgYSBz
dWJmcmFtZSAoc2VlIFdlYkNvcmUgQ2hhbmdlTG9nIGZvciBtb3JlCisgICAgICAgIGRldGFpbCBo
ZXJlKS4gV2hpbGUgdGV4dCBpcyBuZXZlciBkaXJlY3RseSBpbnNlcnRlZCBpbnRvIHRoaXMgaGlk
ZGVuIGNvbnRlbnRlZGl0YWJsZSwgdGhlIGV2ZW50cyBhcmUgb2JzZXJ2ZWQKKyAgICAgICAgYW5k
IHVzZWQgdG8gInBsYXkgYmFjayIgZWRpdGluZyBpbiB0aGUgbWFpbiB2aXNpYmxlIGNvbnRlbnQg
YXJlYS4KKworICAgICAgICBUaHVzLCB3aGVuIG1vdmluZyBiZXR3ZWVuIHRoZSB0aXRsZSBhbmQg
Ym9keSBmaWVsZHMgKG9yIHdoZW4gY2hhbmdpbmcgc2VsZWN0aW9uIHdpdGhpbiBlaXRoZXIpLCB0
aGUgb25seSBoaW50IHdlCisgICAgICAgIGdldCBpcyB0aGF0IHRoZSBoaWRkZW4gZWRpdGFibGUg
ZWxlbWVudCBpcyBibHVycmVkIGFuZCBpbW1lZGlhdGVseSByZWZvY3VzZWQuIFNpbmNlIHdlIG5v
IGxvbmdlciBzZW5kCisgICAgICAgIEVsZW1lbnREaWRGb2N1cyB1cGRhdGVzIGluIHRoaXMgc2Nl
bmFyaW8sIFVJS2V5Ym9hcmRJbXBsIGFuZCBrYmQgYXJlIG5vdCBhd2FyZSB0aGF0IHRoZSBwYWdl
IGhhcyBlZmZlY3RpdmVseQorICAgICAgICBjaGFuZ2VkIGlucHV0IGNvbnRleHRzLgorCisgICAg
ICAgIENvbWJpbmVkIHdpdGggdGhlIGZhY3QgdGhhdCBLb3JlYW4gSU1FIG9uIGlPUyBtYXkgaW5z
ZXJ0IGFkZGl0aW9uYWwgdGV4dCBnaXZlbiB0aGUgZG9jdW1lbnQgY29udGV4dCAoaS5lLiB0ZXh0
CisgICAgICAgIHRoYXQgdGhlIGlucHV0IG1hbmFnZXIsIGtiZCwgdGhpbmtzIHdlJ3ZlIHByZXZp
b3VzbHkgaW5zZXJ0ZWQpLCB0aGlzIG1lYW5zIHRoYXQgd2hlbiB0eXBpbmcgc2V2ZXJhbCBjaGFy
YWN0ZXJzCisgICAgICAgIGludG8gdGhlIGJvZHkgZmllbGQgb24gbmF2ZXIgYW5kIHRoZW4gc3dp
dGNoaW5nIHRvIGVkaXQgdGhlIHRpdGxlLCBpbml0aWFsIGtleXN0cm9rZXMgbWF5IGluc2VydCB1
bmV4cGVjdGVkCisgICAgICAgIHRleHQgaW4gdGhlIHRpdGxlIGZpZWxkLgorCisgICAgICAgIFRv
IGZpeCB0aGlzLCB3ZSBhZGQgc29tZSBob29rcyB0byBub3RpZnkgdGhlIFVJIHByb2Nlc3Mgd2hl
biBhbiBlbGVtZW50IHRoYXQgd2FzIGJsdXJyZWQgaGFzIGJlZW4gaW1tZWRpYXRlbHkKKyAgICAg
ICAgcmVmb2N1c2VkLiBVcG9uIHJlY2VpdmluZyB0aGlzIG1lc3NhZ2UsIHRoZSBVSSBwcm9jZXNz
IHRoZW4gdGVsbHMgVUlLZXlib2FyZEltcGwgdG8gcmUtcmV0cmlldmUgaXRzIGlucHV0CisgICAg
ICAgIGNvbnRleHQsIHdoaWNoIGNhbGxzIGludG8gLXJlcXVlc3RBdXRvY29ycmVjdGlvbkNvbnRl
eHRXaXRoQ29tcGxldGlvbkhhbmRsZXI6IGluIFdLQ29udGVudFZpZXcuIFdoaWxlIG5vdG9yaW91
cworICAgICAgICBmb3IgYmVpbmcgc3luY2hyb25vdXMgSVBDLCB0aGlzIGlzIG1pdGlnYXRlZCBi
eSAoMSkgYmVpbmcgbGltaXRpbmcgdG8gb25seSBpbnN0YW5jZXMgd2hlcmUgd2UgaGF2ZSBhIGhp
ZGRlbgorICAgICAgICBlZGl0YWJsZSBhcmVhLCBhbmQgKDIpIGJlaW5nIGxpbWl0ZWQgYnkgYSBi
YXRjaGluZyBtZWNoYW5pc20gaW4gdGhlIHdlYiBwcm9jZXNzLCBzdWNoIHRoYXQgaWYgdGhlIGZv
Y3VzZWQKKyAgICAgICAgZWxlbWVudCBpcyBibHVycmVkLCByZWZvY3VzZWQsIHJlLWJsdXJyZWQs
IGFuZCByZWZvY3VzZWQgbWFueSB0aW1lcyBpbiB0aGUgc2FtZSBydW5sb29wLCB3ZSdsbCBvbmx5
IHNlbmQgYQorICAgICAgICBzaW5nbGUgVXBkYXRlSW5wdXRDb250ZXh0QWZ0ZXJCbHVycmluZ0Fu
ZFJlZm9jdXNpbmdFbGVtZW50IG1lc3NhZ2UgKGFzIG9wcG9zZWQgdG8gdGhlIG1hbnkgRWxlbWVu
dERpZEZvY3VzCisgICAgICAgIG1lc3NhZ2VzIHdlIHdvdWxkJ3ZlIHNlbnQgaW4gcHJldmlvdXMg
cmVsZWFzZXMpLgorCisgICAgICAgICogUGxhdGZvcm0vc3BpL2lvcy9VSUtpdFNQSS5oOgorICAg
ICAgICAqIFVJUHJvY2Vzcy9QYWdlQ2xpZW50Lmg6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBh
Z2VQcm94eS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW46
CisKKyAgICAgICAgQWRkIGEgbmV3IG1lY2hhbmlzbSB0byB1cGRhdGUgdGhlIHBsYXRmb3JtIGlu
cHV0IGNvbnRleHQgKG9uIGlPUywgVUlLZXlib2FyZEltcGwncyBkb2N1bWVudCBzdGF0ZSkgd2hl
biBmb2N1cworICAgICAgICBtb3ZlcyBhd2F5IGZyb20gYW5kIGltbWVkaWF0ZWx5IHJldHVybnMg
dG8gYSBoaWRkZW4gZWRpdGFibGUgZWxlbWVudC4KKworICAgICAgICAqIFVJUHJvY2Vzcy9pb3Mv
UGFnZUNsaWVudEltcGxJT1MuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1BhZ2VDbGllbnRJ
bXBsSU9TLm1tOgorICAgICAgICAoV2ViS2l0OjpQYWdlQ2xpZW50SW1wbDo6dXBkYXRlSW5wdXRD
b250ZXh0QWZ0ZXJCbHVycmluZ0FuZFJlZm9jdXNpbmdFbGVtZW50KToKKyAgICAgICAgKiBVSVBy
b2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5oOgorICAgICAgICAqIFVJUHJvY2Vz
cy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tOgorICAgICAgICAoLVtXS0NvbnRlbnRW
aWV3IF91cGRhdGVJbnB1dENvbnRleHRBZnRlckJsdXJyaW5nQW5kUmVmb2N1c2luZ0VsZW1lbnRd
KToKKworICAgICAgICBUZWxsIHRoZSBhY3RpdmUgVUlLZXlib2FyZEltcGwgdG8gcmVmZXRjaCBk
b2N1bWVudCBzdGF0ZSBmcm9tIHRoZSBXS0NvbnRlbnRWaWV3LiBXaGlsZSB0aGlzIGRvZXMgcmVz
dWx0IGluIGEgbmV3CisgICAgICAgIGF1dG9jb3JyZWN0aW9uIGNvbnRleHQgcmVxdWVzdCAod2hp
Y2gsIHVuZm9ydHVuYXRlbHksIHRyaWdnZXJzIHN5bmNocm9ub3VzIElQQyB0byB0aGUgd2ViIHBy
b2Nlc3MpLCB0aGlzIHJlcXVlc3QKKyAgICAgICAgd291bGQndmUgc3RpbGwgaGFwcGVuZWQgYW55
d2F5cyBpbiB0aGUgY2FzZSB3aGVyZSB3ZSB3b3VsZCBwcmV2aW91c2x5IGhhdmUgc2VudCBhbiBF
bGVtZW50RGlkRm9jdXMgbWVzc2FnZS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV2ViUGFn
ZVByb3h5SU9TLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OnVwZGF0ZUlucHV0
Q29udGV4dEFmdGVyQmx1cnJpbmdBbmRSZWZvY3VzaW5nRWxlbWVudCk6CisgICAgICAgICogV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpl
bGVtZW50RGlkRm9jdXMpOgorCisgICAgICAgIEluIHRoZSBjYXNlIHdoZXJlIHdlIGF2b2lkIHNl
bmRpbmcgYSBmdWxsIEVsZW1lbnREaWRGb2N1cyBtZXNzYWdlIHRvIHRoZSBVSSBwcm9jZXNzIGR1
ZSB0byByZWZvY3VzaW5nIHRoZSBzYW1lCisgICAgICAgIGVsZW1lbnQsIHdlIHNob3VsZCBzdGls
bCBub3RpZnkgdGhlIFVJIHByb2Nlc3Mgc28gdGhhdCBpdCBjYW4gc3luY2hyb25pemUgc3RhdGUg
YmV0d2VlbiB0aGUgYXBwbGljYXRpb24gcHJvY2VzcworICAgICAgICBhbmQga2JkLiBTZWUgYWJv
dmUgZm9yIG1vcmUgZGV0YWlscy4KKworICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjplbGVtZW50
RGlkQmx1cik6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnVwZGF0ZUlucHV0Q29udGV4dEFm
dGVyQmx1cnJpbmdBbmRSZWZvY3VzaW5nRWxlbWVudElmTmVlZGVkKToKKyAgICAgICAgKiBXZWJQ
cm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9p
b3MvV2ViUGFnZUlPUy5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6dXBkYXRlSW5wdXRD
b250ZXh0QWZ0ZXJCbHVycmluZ0FuZFJlZm9jdXNpbmdFbGVtZW50SWZOZWVkZWQpOgorCiAyMDE5
LTA4LTIxICBUaW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgogCiAgICAgICAg
IFtNYWlsXSBUYXBwaW5nIHRvcCBvZiBtZXNzYWdlIHNjcm9sbHMgYmFjayB0byBjb3BpZWQgdGV4
dCBpbnN0ZWFkIG9mIHRvcCBvZiB0aGUgbWVzc2FnZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJMYXllci5jcHAKaW5kZXggNmQ5N2FiZGYwYmJmYTEwZWY4YjM2OTMwZDE0NzlmMDljNmRl
NDMwMS4uNmUzMDJlZGI2YjgyNmY4ODJiZGU2MzllM2MxYjA4NTFkNDZjN2QzMCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCkBAIC02ODE4LDYgKzY4MTgsOSBAQCBi
b29sIFJlbmRlckxheWVyOjppc1RyYW5zcGFyZW50T3JGdWxseUNsaXBwZWRSZXNwZWN0aW5nUGFy
ZW50RnJhbWVzKCkgY29uc3QKICAgICAgICAgaWYgKCFyZW5kZXJWaWV3TGF5ZXIpCiAgICAgICAg
ICAgICByZXR1cm4gZmFsc2U7CiAKKyAgICAgICAgaWYgKGlzPEhUTUxGcmFtZU93bmVyRWxlbWVu
dD4obGF5ZXIucmVuZGVyZXIoKS5lbGVtZW50KCkpICYmIGxheWVyLnZpc2libGVTaXplKCkuaXNF
bXB0eSgpKQorICAgICAgICAgICAgcmV0dXJuIHRydWU7CisKICAgICAgICAgTGF5b3V0UmVjdCBs
YXllckJvdW5kczsKICAgICAgICAgQ2xpcFJlY3QgYmFja2dyb3VuZFJlY3Q7CiAgICAgICAgIENs
aXBSZWN0IGZvcmVncm91bmRSZWN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9QbGF0Zm9y
bS9zcGkvaW9zL1VJS2l0U1BJLmggYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL3NwaS9pb3MvVUlL
aXRTUEkuaAppbmRleCA2ZWIxNmFiOTBhODdmNTEyZjViMjZmYmNjZWNiNzUzZTBhMmIzMTZlLi44
YmM0OGJkZmMyN2Q2ZmE2M2Q3YzMwYWUzZDJkYzMzNmU0N2M4ZDEyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1BsYXRmb3JtL3NwaS9pb3MvVUlLaXRTUEkuaAorKysgYi9Tb3VyY2UvV2ViS2l0
L1BsYXRmb3JtL3NwaS9pb3MvVUlLaXRTUEkuaApAQCAtMjcwLDYgKzI3MCw3IEBAIHR5cGVkZWYg
ZW51bSB7CiAKIEBpbnRlcmZhY2UgVUlLZXlib2FyZEltcGwgOiBVSVZpZXcgPFVJS2V5Ym9hcmRD
YW5kaWRhdGVMaXN0RGVsZWdhdGU+CiAtIChCT09MKXNtYXJ0SW5zZXJ0RGVsZXRlSXNFbmFibGVk
OworLSAodm9pZCl1cGRhdGVGb3JDaGFuZ2VkU2VsZWN0aW9uOwogQGVuZAogCiBAaW50ZXJmYWNl
IFVJS2V5Ym9hcmRJbXBsICgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Q
YWdlQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9QYWdlQ2xpZW50LmgKaW5kZXgg
NmNmNWUxNGVhNTY5ZjIzZGE4NDc1NDA5NmNhNTExNDUzYzI5OGI5MC4uZTgyN2JiNDI1MTM2NDI4
YzE5MzZjMGY4YjM3NTU0Mjk4N2E2NmExZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvUGFnZUNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1BhZ2VDbGll
bnQuaApAQCAtMzg2LDYgKzM4Niw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgcmVzdG9y
ZVBhZ2VDZW50ZXJBbmRTY2FsZShPcHRpb25hbDxXZWJDb3JlOjpGbG9hdFBvaW50PiBjZW50ZXIs
IGRvdWJsZSBzY2FsZSkgPSAwOwogCiAgICAgdmlydHVhbCB2b2lkIGVsZW1lbnREaWRGb2N1cyhj
b25zdCBGb2N1c2VkRWxlbWVudEluZm9ybWF0aW9uJiwgYm9vbCB1c2VySXNJbnRlcmFjdGluZywg
Ym9vbCBibHVyUHJldmlvdXNOb2RlLCBPcHRpb25TZXQ8V2ViQ29yZTo6QWN0aXZpdHlTdGF0ZTo6
RmxhZz4gYWN0aXZpdHlTdGF0ZUNoYW5nZXMsIEFQSTo6T2JqZWN0KiB1c2VyRGF0YSkgPSAwOwor
ICAgIHZpcnR1YWwgdm9pZCB1cGRhdGVJbnB1dENvbnRleHRBZnRlckJsdXJyaW5nQW5kUmVmb2N1
c2luZ0VsZW1lbnQoKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIGVsZW1lbnREaWRCbHVyKCkgPSAw
OwogICAgIHZpcnR1YWwgdm9pZCBmb2N1c2VkRWxlbWVudERpZENoYW5nZUlucHV0TW9kZShXZWJD
b3JlOjpJbnB1dE1vZGUpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgZGlkUmVjZWl2ZUVkaXRvclN0
YXRlVXBkYXRlQWZ0ZXJGb2N1cygpID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1dlYlBhZ2VQcm94eS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVBy
b3h5LmgKaW5kZXggZTVmOTUwM2U3ZDRiNjY1N2E2YTUwZDc5ZjE3YTg3ZGEzOGYwMTk0ZC4uNGVh
MTVhM2JjMTgzOTY4N2NlYWUyYWNlNGE5OWI1NTk3OWMzNTYyNSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2ViUGFnZVByb3h5LmgKQEAgLTE5NDQsNiArMTk0NCw3IEBAIHByaXZhdGU6CiAKICAg
ICB2b2lkIGVsZW1lbnREaWRGb2N1cyhjb25zdCBGb2N1c2VkRWxlbWVudEluZm9ybWF0aW9uJiwg
Ym9vbCB1c2VySXNJbnRlcmFjdGluZywgYm9vbCBibHVyUHJldmlvdXNOb2RlLCBPcHRpb25TZXQ8
V2ViQ29yZTo6QWN0aXZpdHlTdGF0ZTo6RmxhZz4gYWN0aXZpdHlTdGF0ZUNoYW5nZXMsIGNvbnN0
IFVzZXJEYXRhJik7CiAgICAgdm9pZCBlbGVtZW50RGlkQmx1cigpOworICAgIHZvaWQgdXBkYXRl
SW5wdXRDb250ZXh0QWZ0ZXJCbHVycmluZ0FuZFJlZm9jdXNpbmdFbGVtZW50KCk7CiAgICAgdm9p
ZCBmb2N1c2VkRWxlbWVudERpZENoYW5nZUlucHV0TW9kZShXZWJDb3JlOjpJbnB1dE1vZGUpOwog
ICAgIHZvaWQgZGlkUmVsZWFzZUFsbFRvdWNoUG9pbnRzKCk7CiAgICAgdm9pZCBkaWRSZWNlaXZl
RWRpdG9yU3RhdGVVcGRhdGVBZnRlckZvY3VzKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4KaW5kZXggNzlmNjJkZmQ5YzJjYzVlYjJhNjFj
MTk3Mzg1NDFiOWE5YTMzNTZiOS4uNjFkYzFiYzUwMmQ1YzkyNTMzZTI3MWI3ZDE2YzlkZjRjZjI2
M2E0MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1l
c3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNz
YWdlcy5pbgpAQCAtNDA4LDYgKzQwOCw3IEBAIG1lc3NhZ2VzIC0+IFdlYlBhZ2VQcm94eSB7CiAK
ICAgICBFbGVtZW50RGlkRm9jdXMoc3RydWN0IFdlYktpdDo6Rm9jdXNlZEVsZW1lbnRJbmZvcm1h
dGlvbiBpbmZvcm1hdGlvbiwgYm9vbCB1c2VySXNJbnRlcmFjdGluZywgYm9vbCBibHVyUHJldmlv
dXNOb2RlLCBPcHRpb25TZXQ8V2ViQ29yZTo6QWN0aXZpdHlTdGF0ZTo6RmxhZz4gYWN0aXZpdHlT
dGF0ZUNoYW5nZXMsIFdlYktpdDo6VXNlckRhdGEgdXNlckRhdGEpCiAgICAgRWxlbWVudERpZEJs
dXIoKQorICAgIFVwZGF0ZUlucHV0Q29udGV4dEFmdGVyQmx1cnJpbmdBbmRSZWZvY3VzaW5nRWxl
bWVudCgpCiAgICAgRm9jdXNlZEVsZW1lbnREaWRDaGFuZ2VJbnB1dE1vZGUoZW51bTp1aW50OF90
IFdlYkNvcmU6OklucHV0TW9kZSBtb2RlKQogICAgIFNjcm9sbGluZ05vZGVTY3JvbGxXaWxsU3Rh
cnRTY3JvbGwoKQogICAgIFNjcm9sbGluZ05vZGVTY3JvbGxEaWRFbmRTY3JvbGwoKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1BhZ2VDbGllbnRJbXBsSU9TLmggYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvUGFnZUNsaWVudEltcGxJT1MuaAppbmRleCAzMzMx
ZmQ0ZDIzMzFhY2NiMDZiODc4NzZkZGUyOGJhNjdmYjhhNzVlLi5iYjk3YjA1M2JkMGJhNTk2OTZj
ODc5MWY0MmM1NzVlNzI0MTc4ZjFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9pb3MvUGFnZUNsaWVudEltcGxJT1MuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9p
b3MvUGFnZUNsaWVudEltcGxJT1MuaApAQCAtMTQ5LDYgKzE0OSw3IEBAIHByaXZhdGU6CiAgICAg
dm9pZCByZXN0b3JlUGFnZUNlbnRlckFuZFNjYWxlKE9wdGlvbmFsPFdlYkNvcmU6OkZsb2F0UG9p
bnQ+LCBkb3VibGUpIG92ZXJyaWRlOwogCiAgICAgdm9pZCBlbGVtZW50RGlkRm9jdXMoY29uc3Qg
Rm9jdXNlZEVsZW1lbnRJbmZvcm1hdGlvbiYsIGJvb2wgdXNlcklzSW50ZXJhY3RpbmcsIGJvb2wg
Ymx1clByZXZpb3VzTm9kZSwgT3B0aW9uU2V0PFdlYkNvcmU6OkFjdGl2aXR5U3RhdGU6OkZsYWc+
IGFjdGl2aXR5U3RhdGVDaGFuZ2VzLCBBUEk6Ok9iamVjdCogdXNlckRhdGEpIG92ZXJyaWRlOwor
ICAgIHZvaWQgdXBkYXRlSW5wdXRDb250ZXh0QWZ0ZXJCbHVycmluZ0FuZFJlZm9jdXNpbmdFbGVt
ZW50KCkgZmluYWw7CiAgICAgdm9pZCBlbGVtZW50RGlkQmx1cigpIG92ZXJyaWRlOwogICAgIHZv
aWQgZm9jdXNlZEVsZW1lbnREaWRDaGFuZ2VJbnB1dE1vZGUoV2ViQ29yZTo6SW5wdXRNb2RlKSBv
dmVycmlkZTsKICAgICB2b2lkIGRpZFJlY2VpdmVFZGl0b3JTdGF0ZVVwZGF0ZUFmdGVyRm9jdXMo
KSBvdmVycmlkZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9QYWdl
Q2xpZW50SW1wbElPUy5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9QYWdlQ2xpZW50
SW1wbElPUy5tbQppbmRleCA5MmZhYjdlMDU5OGZkMzZmM2Y1NTBiNDE0OWE0N2UyNGY4YjY4YzJk
Li5kMzkzMGI1ZTdmZDBlNjIwZmY1ZDUxODY4YTc3NTM3Y2E5ZmE0OTEwIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvUGFnZUNsaWVudEltcGxJT1MubW0KKysrIGIvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1BhZ2VDbGllbnRJbXBsSU9TLm1tCkBAIC01NTgsNiAr
NTU4LDExIEBAIHZvaWQgUGFnZUNsaWVudEltcGw6OmVsZW1lbnREaWRGb2N1cyhjb25zdCBGb2N1
c2VkRWxlbWVudEluZm9ybWF0aW9uJiBub2RlSW5mb3JtCiAgICAgW21fY29udGVudFZpZXcgX2Vs
ZW1lbnREaWRGb2N1czpub2RlSW5mb3JtYXRpb24gdXNlcklzSW50ZXJhY3Rpbmc6dXNlcklzSW50
ZXJhY3RpbmcgYmx1clByZXZpb3VzTm9kZTpibHVyUHJldmlvdXNOb2RlIGFjdGl2aXR5U3RhdGVD
aGFuZ2VzOmFjdGl2aXR5U3RhdGVDaGFuZ2VzIHVzZXJPYmplY3Q6dXNlck9iamVjdF07CiB9CiAK
K3ZvaWQgUGFnZUNsaWVudEltcGw6OnVwZGF0ZUlucHV0Q29udGV4dEFmdGVyQmx1cnJpbmdBbmRS
ZWZvY3VzaW5nRWxlbWVudCgpCit7CisgICAgW21fY29udGVudFZpZXcgX3VwZGF0ZUlucHV0Q29u
dGV4dEFmdGVyQmx1cnJpbmdBbmRSZWZvY3VzaW5nRWxlbWVudF07Cit9CisKIGJvb2wgUGFnZUNs
aWVudEltcGw6OmlzRm9jdXNpbmdFbGVtZW50KCkKIHsKICAgICByZXR1cm4gW21fY29udGVudFZp
ZXcgaXNGb2N1c2luZ0VsZW1lbnRdOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5oCmluZGV4IGY4YjY0Nzc1Y2UwYWNkZjlh
MjI0MzkwZDc5MmJlZDRmYjc3MWQzMGYuLjMxMmZlMTRlMmUxMzQ2ZjNmYTc0ZmY2MzdiYzM3ZjYx
NjRkMzE4MTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRl
bnRWaWV3SW50ZXJhY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tD
b250ZW50Vmlld0ludGVyYWN0aW9uLmgKQEAgLTQ1OSw2ICs0NTksNyBAQCBGT1JfRUFDSF9QUklW
QVRFX1dLQ09OVEVOVFZJRVdfQUNUSU9OKERFQ0xBUkVfV0tDT05URU5UVklFV19BQ1RJT05fRk9S
X1dFQl9WSUVXKQogLSAodm9pZClfZGlzYWJsZURvdWJsZVRhcEdlc3R1cmVzRHVyaW5nVGFwSWZO
ZWNlc3Nhcnk6KHVpbnQ2NF90KXJlcXVlc3RJRDsKIC0gKHZvaWQpX2hhbmRsZVNtYXJ0TWFnbmlm
aWNhdGlvbkluZm9ybWF0aW9uRm9yUG90ZW50aWFsVGFwOih1aW50NjRfdClyZXF1ZXN0SUQgcmVu
ZGVyUmVjdDooY29uc3QgV2ViQ29yZTo6RmxvYXRSZWN0JilyZW5kZXJSZWN0IGZpdEVudGlyZVJl
Y3Q6KEJPT0wpZml0RW50aXJlUmVjdCB2aWV3cG9ydE1pbmltdW1TY2FsZTooZG91YmxlKXZpZXdw
b3J0TWluaW11bVNjYWxlIHZpZXdwb3J0TWF4aW11bVNjYWxlOihkb3VibGUpdmlld3BvcnRNYXhp
bXVtU2NhbGU7CiAtICh2b2lkKV9lbGVtZW50RGlkRm9jdXM6KGNvbnN0IFdlYktpdDo6Rm9jdXNl
ZEVsZW1lbnRJbmZvcm1hdGlvbiYpaW5mb3JtYXRpb24gdXNlcklzSW50ZXJhY3Rpbmc6KEJPT0wp
dXNlcklzSW50ZXJhY3RpbmcgYmx1clByZXZpb3VzTm9kZTooQk9PTClibHVyUHJldmlvdXNOb2Rl
IGFjdGl2aXR5U3RhdGVDaGFuZ2VzOihPcHRpb25TZXQ8V2ViQ29yZTo6QWN0aXZpdHlTdGF0ZTo6
RmxhZz4pYWN0aXZpdHlTdGF0ZUNoYW5nZXMgdXNlck9iamVjdDooTlNPYmplY3QgPE5TU2VjdXJl
Q29kaW5nPiAqKXVzZXJPYmplY3Q7CistICh2b2lkKV91cGRhdGVJbnB1dENvbnRleHRBZnRlckJs
dXJyaW5nQW5kUmVmb2N1c2luZ0VsZW1lbnQ7CiAtICh2b2lkKV9lbGVtZW50RGlkQmx1cjsKIC0g
KHZvaWQpX2hpZGVDb250ZXh0TWVudUhpbnRDb250YWluZXI7CiAtICh2b2lkKV9kaWRVcGRhdGVJ
bnB1dE1vZGU6KFdlYkNvcmU6OklucHV0TW9kZSltb2RlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbSBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0KaW5kZXggZjQw
ZWU3N2QyZjViMWZlNTkxYzI0ZjVhZGMzOTgxZDhlZTM4ZDlkNC4uNWY4ZGRiZDNmNWRjY2Q4YjA3
YmVhY2M4YzRhYWZlMDE4MTc4YWMwMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCkBAIC01NDkyLDYgKzU0OTIs
MTQgQEAgLSAodm9pZClfZWxlbWVudERpZEJsdXIKICAgICAgICAgX2RpZEFjY2Vzc29yeVRhYklu
aXRpYXRlRm9jdXMgPSBOTzsKIH0KIAorLSAodm9pZClfdXBkYXRlSW5wdXRDb250ZXh0QWZ0ZXJC
bHVycmluZ0FuZFJlZm9jdXNpbmdFbGVtZW50Cit7CisgICAgaWYgKCFoYXNGb2N1c2VkRWxlbWVu
dChfZm9jdXNlZEVsZW1lbnRJbmZvcm1hdGlvbikgfHwgIV9zdXBwcmVzc1NlbGVjdGlvbkFzc2lz
dGFudFJlYXNvbnMpCisgICAgICAgIHJldHVybjsKKworICAgIFtVSUtleWJvYXJkSW1wbC5hY3Rp
dmVJbnN0YW5jZSB1cGRhdGVGb3JDaGFuZ2VkU2VsZWN0aW9uXTsKK30KKwogLSAoQk9PTClzaG91
bGRJZ25vcmVLZXlib2FyZFdpbGxIaWRlTm90aWZpY2F0aW9uCiB7CiAgICAgLy8gSWdub3JlIGtl
eWJvYXJkIHdpbGwgaGlkZSBub3RpZmljYXRpb25zIHNlbnQgZHVyaW5nIHJvdGF0aW9uLiBUaGV5
J3JlIGp1c3QgdGhlcmUgZm9yCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9p
b3MvV2ViUGFnZVByb3h5SU9TLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dlYlBh
Z2VQcm94eUlPUy5tbQppbmRleCAzMWI3ZDgzMGQzMDdmYWQ4NWMyNmQ1OGMwZWY2YTcyYjIzNTg5
MzJmLi5kZDU2NmQxMTAwZDM5ODM4YTY0ZDJkZDk4MjQ3NjEyMWIyMzlkMWNkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV2ViUGFnZVByb3h5SU9TLm1tCisrKyBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XZWJQYWdlUHJveHlJT1MubW0KQEAgLTkwNCw2ICs5
MDQsMTEgQEAgdm9pZCBXZWJQYWdlUHJveHk6OnNldElzU2hvd2luZ0lucHV0Vmlld0ZvckZvY3Vz
ZWRFbGVtZW50KGJvb2wgc2hvd2luZ0lucHV0VmlldykKICAgICBwcm9jZXNzKCkuc2VuZChNZXNz
YWdlczo6V2ViUGFnZTo6U2V0SXNTaG93aW5nSW5wdXRWaWV3Rm9yRm9jdXNlZEVsZW1lbnQoc2hv
d2luZ0lucHV0VmlldyksIG1fcGFnZUlEKTsKIH0KIAordm9pZCBXZWJQYWdlUHJveHk6OnVwZGF0
ZUlucHV0Q29udGV4dEFmdGVyQmx1cnJpbmdBbmRSZWZvY3VzaW5nRWxlbWVudCgpCit7CisgICAg
cGFnZUNsaWVudCgpLnVwZGF0ZUlucHV0Q29udGV4dEFmdGVyQmx1cnJpbmdBbmRSZWZvY3VzaW5n
RWxlbWVudCgpOworfQorCiB2b2lkIFdlYlBhZ2VQcm94eTo6ZWxlbWVudERpZEZvY3VzKGNvbnN0
IEZvY3VzZWRFbGVtZW50SW5mb3JtYXRpb24mIGluZm9ybWF0aW9uLCBib29sIHVzZXJJc0ludGVy
YWN0aW5nLCBib29sIGJsdXJQcmV2aW91c05vZGUsIE9wdGlvblNldDxXZWJDb3JlOjpBY3Rpdml0
eVN0YXRlOjpGbGFnPiBhY3Rpdml0eVN0YXRlQ2hhbmdlcywgY29uc3QgVXNlckRhdGEmIHVzZXJE
YXRhKQogewogICAgIG1fcGVuZGluZ0lucHV0TW9kZUNoYW5nZSA9IFdURjo6bnVsbG9wdDsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKaW5kZXggYWQ5MDY5
OTA3NWMwODZkYjU1NjQ3NWI2N2VhMWU3ZDhjYmUwZTA1OC4uYTVlNDFhNWE1ZDI0MGMzMmVhMDgx
MWE1ZDZlZmY5NDkyOWY5OWFmYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1dlYlBhZ2UvV2ViUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBh
Z2UvV2ViUGFnZS5jcHAKQEAgLTU0NjksNiArNTQ2OSw3IEBAIHN0YXRpYyBib29sIGlzVGV4dEZv
cm1Db250cm9sT3JFZGl0YWJsZUNvbnRlbnQoY29uc3QgV2ViQ29yZTo6RWxlbWVudCYgZWxlbWVu
dCkKIHZvaWQgV2ViUGFnZTo6ZWxlbWVudERpZEZvY3VzKFdlYkNvcmU6OkVsZW1lbnQmIGVsZW1l
bnQpCiB7CiAgICAgaWYgKCFzaG91bGREaXNwYXRjaFVwZGF0ZUFmdGVyRm9jdXNpbmdFbGVtZW50
KGVsZW1lbnQpKSB7CisgICAgICAgIHVwZGF0ZUlucHV0Q29udGV4dEFmdGVyQmx1cnJpbmdBbmRS
ZWZvY3VzaW5nRWxlbWVudElmTmVlZGVkKGVsZW1lbnQpOwogICAgICAgICBtX2ZvY3VzZWRFbGVt
ZW50ID0gJmVsZW1lbnQ7CiAgICAgICAgIG1fcmVjZW50bHlCbHVycmVkRWxlbWVudCA9IG51bGxw
dHI7CiAgICAgICAgIHJldHVybjsKQEAgLTU0NzYsNiArNTQ3Nyw3IEBAIHZvaWQgV2ViUGFnZTo6
ZWxlbWVudERpZEZvY3VzKFdlYkNvcmU6OkVsZW1lbnQmIGVsZW1lbnQpCiAKICAgICBpZiAoaXM8
SFRNTFNlbGVjdEVsZW1lbnQ+KGVsZW1lbnQpIHx8IGlzVGV4dEZvcm1Db250cm9sT3JFZGl0YWJs
ZUNvbnRlbnQoZWxlbWVudCkpIHsKICAgICAgICAgbV9mb2N1c2VkRWxlbWVudCA9ICZlbGVtZW50
OworICAgICAgICBtX2hhc1BlbmRpbmdJbnB1dENvbnRleHRVcGRhdGVBZnRlckJsdXJyaW5nQW5k
UmVmb2N1c2luZ0VsZW1lbnQgPSBmYWxzZTsKIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAK
QEAgLTU1MTcsNiArNTUxOSw3IEBAIHZvaWQgV2ViUGFnZTo6ZWxlbWVudERpZEJsdXIoV2ViQ29y
ZTo6RWxlbWVudCYgZWxlbWVudCkKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIHByb3RlY3Rl
ZFRoaXMtPm1fcmVjZW50bHlCbHVycmVkRWxlbWVudCA9IG51bGxwdHI7CiAgICAgICAgIH0pOwor
ICAgICAgICBtX2hhc1BlbmRpbmdJbnB1dENvbnRleHRVcGRhdGVBZnRlckJsdXJyaW5nQW5kUmVm
b2N1c2luZ0VsZW1lbnQgPSBmYWxzZTsKICAgICB9CiB9CiAKQEAgLTY2OTMsNiArNjY5NiwxMCBA
QCBXZWJDb3JlOjpJbnRSZWN0IFdlYlBhZ2U6OnJlY3RGb3JFbGVtZW50QXRJbnRlcmFjdGlvbkxv
Y2F0aW9uKCkgY29uc3QKICAgICByZXR1cm4geyB9OwogfQogCit2b2lkIFdlYlBhZ2U6OnVwZGF0
ZUlucHV0Q29udGV4dEFmdGVyQmx1cnJpbmdBbmRSZWZvY3VzaW5nRWxlbWVudElmTmVlZGVkKEVs
ZW1lbnQmKQoreworfQorCiAjZW5kaWYgLy8gIVBMQVRGT1JNKElPU19GQU1JTFkpCiAKIHN0YXRp
YyBJbnRSZWN0IGVsZW1lbnRSZWN0SW5Sb290Vmlld0Nvb3JkaW5hdGVzKGNvbnN0IEVsZW1lbnQm
IGVsZW1lbnQsIGNvbnN0IEZyYW1lJiBmcmFtZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9X
ZWJQYWdlL1dlYlBhZ2UuaAppbmRleCA3NDY2ODgyNjJjYzE3ODk3ZjcxZmRkNWI0MDFlMGQ0Njk5
NjE2ZjUwLi5mMWNkYTEyMDMxZjFiZTc2NzhlMGE3MmNiNGYwNThlY2Y0MDhjYmFiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKKysrIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCkBAIC02MDYsNiArNjA2LDcg
QEAgcHVibGljOgogICAgIHZvaWQgZWxlbWVudERpZEJsdXIoV2ViQ29yZTo6RWxlbWVudCYpOwog
ICAgIHZvaWQgZm9jdXNlZEVsZW1lbnREaWRDaGFuZ2VJbnB1dE1vZGUoV2ViQ29yZTo6RWxlbWVu
dCYsIFdlYkNvcmU6OklucHV0TW9kZSk7CiAgICAgdm9pZCByZXNldEZvY3VzZWRFbGVtZW50Rm9y
RnJhbWUoV2ViRnJhbWUqKTsKKyAgICB2b2lkIHVwZGF0ZUlucHV0Q29udGV4dEFmdGVyQmx1cnJp
bmdBbmRSZWZvY3VzaW5nRWxlbWVudElmTmVlZGVkKFdlYkNvcmU6OkVsZW1lbnQmKTsKIAogICAg
IHZvaWQgZGlzYWJsZWRBZGFwdGF0aW9uc0RpZENoYW5nZShjb25zdCBPcHRpb25TZXQ8V2ViQ29y
ZTo6RGlzYWJsZWRBZGFwdGF0aW9ucz4mKTsKICAgICB2b2lkIHZpZXdwb3J0UHJvcGVydGllc0Rp
ZENoYW5nZShjb25zdCBXZWJDb3JlOjpWaWV3cG9ydEFyZ3VtZW50cyYpOwpAQCAtMTgyNiw2ICsx
ODI3LDcgQEAgcHJpdmF0ZToKIAogICAgIFJlZlB0cjxXZWJDb3JlOjpFbGVtZW50PiBtX2ZvY3Vz
ZWRFbGVtZW50OwogICAgIFJlZlB0cjxXZWJDb3JlOjpFbGVtZW50PiBtX3JlY2VudGx5Qmx1cnJl
ZEVsZW1lbnQ7CisgICAgYm9vbCBtX2hhc1BlbmRpbmdJbnB1dENvbnRleHRVcGRhdGVBZnRlckJs
dXJyaW5nQW5kUmVmb2N1c2luZ0VsZW1lbnQgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9oYXNQZW5k
aW5nRWRpdG9yU3RhdGVVcGRhdGUgeyBmYWxzZSB9OwogCiAjaWYgRU5BQkxFKElPU19UT1VDSF9F
VkVOVFMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9pb3Mv
V2ViUGFnZUlPUy5tbSBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQ
YWdlSU9TLm1tCmluZGV4IGQ4ZDM1ZWU0YTY1MjU0ZDZlYzQ3NDA1NGExM2M0NDM3OTBjY2QzOTgu
LjU1MmVmMWE4ZmUyZDU1NTY0M2FlOTVjNTQ1YTYwNWNmNzVhN2IzNWMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCisrKyBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCkBAIC0xMTY5
LDYgKzExNjksMTkgQEAgdm9pZCBXZWJQYWdlOjppbnNwZWN0b3JOb2RlU2VhcmNoRW5kZWRBdFBv
c2l0aW9uKGNvbnN0IEZsb2F0UG9pbnQmIHBvc2l0aW9uKQogICAgICAgICBub2RlLT5pbnNwZWN0
KCk7CiB9CiAKK3ZvaWQgV2ViUGFnZTo6dXBkYXRlSW5wdXRDb250ZXh0QWZ0ZXJCbHVycmluZ0Fu
ZFJlZm9jdXNpbmdFbGVtZW50SWZOZWVkZWQoRWxlbWVudCYgZWxlbWVudCkKK3sKKyAgICBpZiAo
bV9yZWNlbnRseUJsdXJyZWRFbGVtZW50ICE9ICZlbGVtZW50IHx8ICFtX2lzU2hvd2luZ0lucHV0
Vmlld0ZvckZvY3VzZWRFbGVtZW50KQorICAgICAgICByZXR1cm47CisKKyAgICBtX2hhc1BlbmRp
bmdJbnB1dENvbnRleHRVcGRhdGVBZnRlckJsdXJyaW5nQW5kUmVmb2N1c2luZ0VsZW1lbnQgPSB0
cnVlOworICAgIGNhbGxPbk1haW5UaHJlYWQoW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBtYWtlUmVm
UHRyKHRoaXMpXSB7CisgICAgICAgIGlmIChtX2hhc1BlbmRpbmdJbnB1dENvbnRleHRVcGRhdGVB
ZnRlckJsdXJyaW5nQW5kUmVmb2N1c2luZ0VsZW1lbnQpCisgICAgICAgICAgICBzZW5kKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6OlVwZGF0ZUlucHV0Q29udGV4dEFmdGVyQmx1cnJpbmdBbmRSZWZv
Y3VzaW5nRWxlbWVudCgpKTsKKyAgICAgICAgbV9oYXNQZW5kaW5nSW5wdXRDb250ZXh0VXBkYXRl
QWZ0ZXJCbHVycmluZ0FuZFJlZm9jdXNpbmdFbGVtZW50ID0gZmFsc2U7CisgICAgfSk7Cit9CisK
IHZvaWQgV2ViUGFnZTo6Ymx1ckZvY3VzZWRFbGVtZW50KCkKIHsKICAgICBpZiAoIW1fZm9jdXNl
ZEVsZW1lbnQpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKaW5kZXggYjhhZDQ2MmYwNWQ5ODJjYTM2MTU0MTFhNjU3ZTdkN2M4MDQ5Yjc4
MC4uOGJhYWU0Y2Y2NzExODk1MWUwYmE1YjcxOWNkODRlMzFiZGY3NzRiYyAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDE3IEBACisyMDE5LTA4LTIxICBXZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUu
Y29tPgorCisgICAgICAgIFR5cGluZyBLb3JlYW4gaW4gdGl0bGUgZmllbGQgYWZ0ZXIgdHlwaW5n
IGluIHRoZSBib2R5IGluc2VydHMgZXh0cmFuZW91cyBjaGFyYWN0ZXJzIG9uIGJsb2cubmF2ZXIu
Y29tCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDEw
MjMKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU0Mjk0Nzk0PgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBhIG5ldyBsYXlvdXQgdGVzdCB0byB2
ZXJpZnkgdGhhdCB3ZSBzdXBwcmVzcyB0ZXh0IGludGVyYWN0aW9ucyB3aGVuIGZvY3VzaW5nIGFu
IGVkaXRhYmxlIGVsZW1lbnQgaW5zaWRlIGFuCisgICAgICAgIGVtcHR5LCBib3JkZXJsZXNzIHN1
YmZyYW1lLgorCisgICAgICAgICogZWRpdGluZy9zZWxlY3Rpb24vaW9zL2RvLW5vdC1zaG93LXNl
bGVjdGlvbi1pbi1lbXB0eS1ib3JkZXJsZXNzLXN1YmZyYW1lLWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgICogZWRpdGluZy9zZWxlY3Rpb24vaW9zL2RvLW5vdC1zaG93LXNlbGVjdGlvbi1p
bi1lbXB0eS1ib3JkZXJsZXNzLXN1YmZyYW1lLmh0bWw6IEFkZGVkLgorCiAyMDE5LTA4LTIxICBN
eWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgW1dITFNM
XSBWZXJ0ZXggc2hhZGVyIGFuZCBmcmFnbWVudCBzaGFkZXIgbmVlZCB0byBiZSBhYmxlIHRvIGNv
bWUgZnJvbSB0d28gZGlmZmVyZW50IHByb2dyYW1zCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9l
ZGl0aW5nL3NlbGVjdGlvbi9pb3MvZG8tbm90LXNob3ctc2VsZWN0aW9uLWluLWVtcHR5LWJvcmRl
cmxlc3Mtc3ViZnJhbWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rp
b24vaW9zL2RvLW5vdC1zaG93LXNlbGVjdGlvbi1pbi1lbXB0eS1ib3JkZXJsZXNzLXN1YmZyYW1l
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41YmJiMmNlYWViM2FlNjU2OTllZmVlZDEyOWVlZmNm
NDkxNTIyNzE0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rp
b24vaW9zL2RvLW5vdC1zaG93LXNlbGVjdGlvbi1pbi1lbXB0eS1ib3JkZXJsZXNzLXN1YmZyYW1l
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDExIEBACitUaGlzIHRlc3QgdmVyaWZpZXMgdGhhdCBz
ZWxlY3Rpb24gVUkgaXMgc3VwcHJlc3NlZCB3aGVuIGZvY3VzaW5nIGFuIGVsZW1lbnQgaW5zaWRl
IGFuIGVtcHR5IHN1YmZyYW1lLiBUbyBydW4gdGhlIHRlc3QgbWFudWFsbHksIHRhcCB0aGUgYnV0
dG9uIGFuZCBjaGVjayB0aGF0IGEgYmx1ZSBzZWxlY3Rpb24gY2FyZXQgaXMgbm90IHZpc2libGUu
CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMs
IGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIGNhcmV0UmVjdC53aWR0aCBp
cyAwCitQQVNTIGNhcmV0UmVjdC5oZWlnaHQgaXMgMAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQg
aXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCitGb2N1cyB0aGUgaGlkZGVuIGZyYW1lCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3MvZG8tbm90LXNob3ctc2VsZWN0
aW9uLWluLWVtcHR5LWJvcmRlcmxlc3Mtc3ViZnJhbWUuaHRtbCBiL0xheW91dFRlc3RzL2VkaXRp
bmcvc2VsZWN0aW9uL2lvcy9kby1ub3Qtc2hvdy1zZWxlY3Rpb24taW4tZW1wdHktYm9yZGVybGVz
cy1zdWJmcmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmM3MzkwYjFhNzBkYmQ0OWY0NDg4ZWMzNmM3MGVj
YWQyODdmMmUyMWUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVj
dGlvbi9pb3MvZG8tbm90LXNob3ctc2VsZWN0aW9uLWluLWVtcHR5LWJvcmRlcmxlc3Mtc3ViZnJh
bWUuaHRtbApAQCAtMCwwICsxLDQ5IEBACis8IURPQ1RZUEUgaHRtbD4gPCEtLSB3ZWJraXQtdGVz
dC1ydW5uZXIgWyB1c2VGbGV4aWJsZVZpZXdwb3J0PXRydWUgXSAtLT4KKzxodG1sPgorPGhlYWQ+
CisgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwg
aW5pdGlhbC1zY2FsZT0xIj4KKyAgICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pz
LXRlc3QuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMv
dWktaGVscGVyLmpzIj48L3NjcmlwdD4KKyAgICA8c3R5bGU+CisgICAgICAgIGlmcmFtZSB7Cisg
ICAgICAgICAgICB3aWR0aDogMDsKKyAgICAgICAgICAgIGhlaWdodDogMTAwJTsKKyAgICAgICAg
ICAgIHBvc2l0aW9uOiBmaXhlZDsKKyAgICAgICAgICAgIHRvcDogMDsKKyAgICAgICAgICAgIGxl
ZnQ6IDA7CisgICAgICAgICAgICBib3JkZXI6IDA7CisgICAgICAgIH0KKworICAgICAgICBib2R5
LCBodG1sIHsKKyAgICAgICAgICAgIHdpZHRoOiAxMDAlOworICAgICAgICAgICAgaGVpZ2h0OiAx
MDAlOworICAgICAgICB9CisKKyAgICAgICAgYnV0dG9uIHsKKyAgICAgICAgICAgIHBhZGRpbmc6
IDFlbTsKKyAgICAgICAgfQorICAgIDwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKyAgICA8aWZy
YW1lIHNyY2RvYz0iPGJvZHkgY29udGVudGVkaXRhYmxlPiI+PC9pZnJhbWU+CisgICAgPGJ1dHRv
biBpZD0iZm9jdXMiPkZvY3VzIHRoZSBoaWRkZW4gZnJhbWU8L2J1dHRvbj4KKyAgICA8c2NyaXB0
PgorICAgICAgICBqc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKyAgICAgICAgZGVzY3JpcHRpb24oIlRo
aXMgdGVzdCB2ZXJpZmllcyB0aGF0IHNlbGVjdGlvbiBVSSBpcyBzdXBwcmVzc2VkIHdoZW4gZm9j
dXNpbmcgYW4gZWxlbWVudCBpbnNpZGUgYW4gZW1wdHkgc3ViZnJhbWUuIFRvIHJ1biB0aGUgdGVz
dCBtYW51YWxseSwgdGFwIHRoZSBidXR0b24gYW5kIGNoZWNrIHRoYXQgYSBibHVlIHNlbGVjdGlv
biBjYXJldCBpcyBub3QgdmlzaWJsZS4iKTsKKworICAgICAgICBjb25zdCBmb2N1c0J1dHRvbiA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmb2N1cyIpOworICAgICAgICBmb2N1c0J1dHRvbi5h
ZGRFdmVudExpc3RlbmVyKCJjbGljayIsIGV2ZW50ID0+IHsKKyAgICAgICAgICAgIGRvY3VtZW50
LnF1ZXJ5U2VsZWN0b3IoImlmcmFtZSIpLmNvbnRlbnREb2N1bWVudC5ib2R5LmZvY3VzKCk7Cisg
ICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpOworICAgICAgICB9KTsKKworICAgICAg
ICBhZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgYXN5bmMgKCkgPT4geworICAgICAgICAgICAgYXdh
aXQgVUlIZWxwZXIuYWN0aXZhdGVFbGVtZW50QW5kV2FpdEZvcklucHV0U2Vzc2lvbihmb2N1c0J1
dHRvbik7CisgICAgICAgICAgICBjYXJldFJlY3QgPSBhd2FpdCBVSUhlbHBlci5nZXRVSUNhcmV0
Vmlld1JlY3QoKTsKKyAgICAgICAgICAgIHNob3VsZEJlKCJjYXJldFJlY3Qud2lkdGgiLCAiMCIp
OworICAgICAgICAgICAgc2hvdWxkQmUoImNhcmV0UmVjdC5oZWlnaHQiLCAiMCIpOworICAgICAg
ICAgICAgZmluaXNoSlNUZXN0KCk7CisgICAgICAgIH0pOworICAgIDwvc2NyaXB0PgorPC9ib2R5
PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUK
</data>

          </attachment>
      

    </bug>

</bugzilla>