<?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>204077</bug_id>
          
          <creation_ts>2019-11-11 11:04:01 -0800</creation_ts>
          <short_desc>ASSERT at PlatformCALayerCocoa::avPlayerLayer(): [platformLayer() sublayers].count == 1</short_desc>
          <delta_ts>2019-11-11 17:05:06 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>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="Jer Noble">jer.noble</reporter>
          <assigned_to name="Jer Noble">jer.noble</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1589264</commentid>
    <comment_count>0</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2019-11-11 11:04:01 -0800</bug_when>
    <thetext>ASSERT at PlatformCALayerCocoa::avPlayerLayer(): [platformLayer() sublayers].count == 1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1589265</commentid>
    <comment_count>1</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2019-11-11 11:04:27 -0800</bug_when>
    <thetext>&lt;rdar://problem/56640423&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1589267</commentid>
    <comment_count>2</comment_count>
      <attachid>383285</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2019-11-11 11:07:23 -0800</bug_when>
    <thetext>Created attachment 383285
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1589273</commentid>
    <comment_count>3</comment_count>
      <attachid>383285</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2019-11-11 11:40:47 -0800</bug_when>
    <thetext>Comment on attachment 383285
Patch

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

&gt; Source/WebCore/platform/graphics/ca/cocoa/WebVideoContainerLayer.mm:53
&gt; +        // Pre-apply the transform added in the WebProcess to fix &lt;rdar://problem/18316542&gt; to the position.

Comment doesn&apos;t parse.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1589297</commentid>
    <comment_count>4</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2019-11-11 13:12:04 -0800</bug_when>
    <thetext>(In reply to Simon Fraser (smfr) from comment #3)
&gt; Comment on attachment 383285 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=383285&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/graphics/ca/cocoa/WebVideoContainerLayer.mm:53
&gt; &gt; +        // Pre-apply the transform added in the WebProcess to fix &lt;rdar://problem/18316542&gt; to the position.
&gt; 
&gt; Comment doesn&apos;t parse.

I didn&apos;t write it, I just moved it from one file to another.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1589303</commentid>
    <comment_count>5</comment_count>
      <attachid>383291</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2019-11-11 13:24:59 -0800</bug_when>
    <thetext>Created attachment 383291
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1589394</commentid>
    <comment_count>6</comment_count>
      <attachid>383291</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-11-11 17:05:04 -0800</bug_when>
    <thetext>Comment on attachment 383291
Patch for landing

Clearing flags on attachment: 383291

Committed r252346: &lt;https://trac.webkit.org/changeset/252346&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1589395</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-11-11 17:05:06 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>383285</attachid>
            <date>2019-11-11 11:07:23 -0800</date>
            <delta_ts>2019-11-11 13:24:58 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-204077-20191111110722.patch</filename>
            <type>text/plain</type>
            <size>17395</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUxODQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggN2ZhMjFmZWE3ZDZjZDBh
OTA0ZjM4OWE3YWU4NDgxNzVmNWY4YzIxNS4uOTI2ZDg4ZGUxMDQyOGEwZTE3NGNmNjA4OTZjYmVj
ZGMxY2MzOTNhOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM4IEBACisyMDE5LTExLTExICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIEFTU0VSVCBhdCBQbGF0Zm9y
bUNBTGF5ZXJDb2NvYTo6YXZQbGF5ZXJMYXllcigpOiBbcGxhdGZvcm1MYXllcigpIHN1YmxheWVy
c10uY291bnQgPT0gMQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjA0MDc3CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81NjY0MDQyMz4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNYWtlIFBsYXRmb3JtQ0FM
YXllckNvY29hOjphdlBsYXllcigpIG1vcmUgcm9idXN0IGFnYWluc3QgdW5kZXJseWluZyBsYXll
ciBjaGFuZ2VzLgorCisgICAgICAgIFByb21vdGUgV2ViVmlkZW9Db250YWluZXJMYXllciB0byBp
dHMgb3duIGhlYWRlciBmaWxlIGFuZCBnaXZlIHRoZSBjbGFzcyBhICJwbGF5ZXJMYXllciIgcHJv
cGVydHkuIEluCisgICAgICAgIFBsYXRmb3JtQ0FMYXllckNvY29hOjphdlBsYXllcigpLCB1c2Ug
dGhhdCBuZXcgcHJvcGVydHkgdG8gcmV0cmlldmUgdGhlIEFWUGxheWVyTGF5ZXIuCisKKyAgICAg
ICAgRHJpdmUtYnkgZml4OiBNYWtlIFBsYXRmb3JtQ0FMYXllckNvY29hOjpjcmVhdGUoKSByZXR1
cm4gYSBSZWY8UGxhdGZvcm1DQUxheWVyQ29jb2E+IHJhdGhlciB0aGFuIGl0cyBwYXJlbnQgY2xh
c3MgdHlwZS4KKworICAgICAgICAqIFNvdXJjZXNDb2NvYS50eHQ6CisgICAgICAgICogV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNz
L2F2Zm91bmRhdGlvbi9vYmpjL1ZpZGVvRnVsbHNjcmVlbkxheWVyTWFuYWdlck9iakMuaDoKKyAg
ICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9WaWRlb0Z1bGxzY3Jl
ZW5MYXllck1hbmFnZXJPYmpDLm1tOgorICAgICAgICAoV2ViQ29yZTo6VmlkZW9GdWxsc2NyZWVu
TGF5ZXJNYW5hZ2VyT2JqQzo6c2V0VmlkZW9MYXllcik6CisgICAgICAgICgtW1dlYlZpZGVvQ29u
dGFpbmVyTGF5ZXIgc2V0Qm91bmRzOl0pOiBEZWxldGVkLgorICAgICAgICAoLVtXZWJWaWRlb0Nv
bnRhaW5lckxheWVyIHNldFBvc2l0aW9uOl0pOiBEZWxldGVkLgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FMYXllckNvY29hLmg6CisgICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3MvY2EvY29jb2EvUGxhdGZvcm1DQUxheWVyQ29jb2EubW06CisgICAgICAg
IChXZWJDb3JlOjpQbGF0Zm9ybUNBTGF5ZXJDb2NvYTo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNv
cmU6OlBsYXRmb3JtQ0FMYXllckNvY29hOjpsYXllclR5cGVGb3JQbGF0Zm9ybUxheWVyKToKKyAg
ICAgICAgKFdlYkNvcmU6OlBsYXRmb3JtQ0FMYXllckNvY29hOjpjbG9uZSBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpQbGF0Zm9ybUNBTGF5ZXJDb2NvYTo6YXZQbGF5ZXJMYXllciBjb25zdCk6
CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2EvY29jb2EvV2ViVmlkZW9Db250YWluZXJM
YXllci5oOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJW
aWRlb0NvbnRhaW5lckxheWVyLm1tOiBBZGRlZC4KKyAgICAgICAgKC1bV2ViVmlkZW9Db250YWlu
ZXJMYXllciBpbml0V2l0aFBsYXllckxheWVyOl0pOgorICAgICAgICAoLVtXZWJWaWRlb0NvbnRh
aW5lckxheWVyIHBsYXllckxheWVyXSk6CisgICAgICAgICgtW1dlYlZpZGVvQ29udGFpbmVyTGF5
ZXIgc2V0Qm91bmRzOl0pOgorICAgICAgICAoLVtXZWJWaWRlb0NvbnRhaW5lckxheWVyIHNldFBv
c2l0aW9uOl0pOgorCiAyMDE5LTExLTExICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29t
PgogCiAgICAgICAgIEVuc3VyZSBNZWRpYVJlbW90ZSBjYWxsYmFjayBhbHdheXMgY2FsbGVkLgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvU291cmNlc0NvY29hLnR4dCBiL1NvdXJjZS9XZWJD
b3JlL1NvdXJjZXNDb2NvYS50eHQKaW5kZXggN2Y2ZTIxYmNkZGNhMjJiMTFmYzc3OTM0YjlhN2Jm
NTVkYmRiOGRhMC4uZjFjMzM0NjdjZGMyYjkyZTg4MmE3Zjc0NWUyMWJjMjI3NTA1ZGJkMCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvU291cmNlc0NvY29hLnR4dAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9Tb3VyY2VzQ29jb2EudHh0CkBAIC0yNzgsNiArMjc4LDcgQEAgcGxhdGZvcm0vZ3JhcGhp
Y3MvY2EvY29jb2EvUGxhdGZvcm1DQUZpbHRlcnNDb2NvYS5tbQogcGxhdGZvcm0vZ3JhcGhpY3Mv
Y2EvY29jb2EvUGxhdGZvcm1DQUxheWVyQ29jb2EubW0KIHBsYXRmb3JtL2dyYXBoaWNzL2NhL2Nv
Y29hL1dlYlN5c3RlbUJhY2tkcm9wTGF5ZXIubW0KIHBsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29h
L1dlYlRpbGVkQmFja2luZ0xheWVyLm1tCitwbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJW
aWRlb0NvbnRhaW5lckxheWVyLm1tCiAKIHBsYXRmb3JtL2dyYXBoaWNzL2NnL0NvbG9yQ0cuY3Bw
CiBwbGF0Zm9ybS9ncmFwaGljcy9jZy9GbG9hdFBvaW50Q0cuY3BwCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNmNjZTU1OGQ4ZGU1
MDIzZjQ2N2MxMjhjM2MwNTQxMGM5MmIzNDBkMS4uYjE5OGIxOThlNjEwMDcyZjA5ODg4M2M4ZmY2
NWE3MjI4MzJjOTliZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagpAQCAtMTM3NjQsNiArMTM3NjQsOCBAQAogCQlDRDhBQ0E4NzFEMjM3
QUEyMDBFQ0M1OUUgLyogUmVtb3RlQ29tbWFuZExpc3RlbmVyTWFjLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFJlbW90ZUNvbW1hbmRMaXN0ZW5lck1hYy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQlDRDhBQ0E4QzFEMjM5NzE5MDBFQ0M1OUUgLyogTWVkaWFSZW1v
dGVTb2Z0TGluay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNZWRp
YVJlbW90ZVNvZnRMaW5rLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0Q4QUNB
OEQxRDIzOTcxOTAwRUNDNTlFIC8qIE1lZGlhUmVtb3RlU29mdExpbmsuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gTWVkaWFSZW1vdGVTb2Z0TGluay5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlDRDhCMzFBMTIzNzlEQzgzMDA4ODNGREUgLyogV2ViVmlkZW9Db250
YWluZXJMYXllci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJWaWRlb0NvbnRhaW5lckxheWVyLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEOEIzMUEyMjM3OURDODMwMDg4M0ZERSAvKiBX
ZWJWaWRlb0NvbnRhaW5lckxheWVyLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gV2ViVmlkZW9D
b250YWluZXJMYXllci5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0Q4QjVBNDAx
ODBEMTQ5QTAwOEI4RTY1IC8qIFZpZGVvVHJhY2tQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDLm1t
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gVmlkZW9UcmFja1ByaXZh
dGVNZWRpYVNvdXJjZUFWRk9iakMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNE
OEI1QTQxMTgwRDE0OUEwMDhCOEU2NSAvKiBWaWRlb1RyYWNrUHJpdmF0ZU1lZGlhU291cmNlQVZG
T2JqQy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBWaWRlb1RyYWNrUHJpdmF0
ZU1lZGlhU291cmNlQVZGT2JqQy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDRDhC
NUE0NDE4MEREOEQ2MDA4QjhFNjUgLyogVmlkZW9UcmFja01lZGlhU291cmNlLmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBW
aWRlb1RyYWNrTWVkaWFTb3VyY2UuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAt
MTg1NDQsNiArMTg1NDYsOCBAQAogCQkJCTMxREVBNDUzMUIzOUY0RDkwMEY3NzE3OCAvKiBXZWJT
eXN0ZW1CYWNrZHJvcExheWVyLm1tICovLAogCQkJCTBGNTgwRkExMTQ5NjkzOTEwMEZCNUJEOCAv
KiBXZWJUaWxlZEJhY2tpbmdMYXllci5oICovLAogCQkJCTBGNTgwRkEyMTQ5NjkzOTEwMEZCNUJE
OCAvKiBXZWJUaWxlZEJhY2tpbmdMYXllci5tbSAqLywKKwkJCQlDRDhCMzFBMTIzNzlEQzgzMDA4
ODNGREUgLyogV2ViVmlkZW9Db250YWluZXJMYXllci5oICovLAorCQkJCUNEOEIzMUEyMjM3OURD
ODMwMDg4M0ZERSAvKiBXZWJWaWRlb0NvbnRhaW5lckxheWVyLm1tICovLAogCQkJKTsKIAkJCXBh
dGggPSBjb2NvYTsKIAkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9WaWRlb0Z1bGxz
Y3JlZW5MYXllck1hbmFnZXJPYmpDLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9hdmZvdW5kYXRpb24vb2JqYy9WaWRlb0Z1bGxzY3JlZW5MYXllck1hbmFnZXJPYmpDLmgKaW5k
ZXggZGI4N2VkYzY5ZDE3YjYxMjZhNzFhZjhhZGE0N2ViMjc0YTg5YjE2NC4uZTQzNjI2NTBjNzUw
NTIwNGFjMzkxNWJmNWUxNjQwNzRhMTE3ZmQ0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvVmlkZW9GdWxsc2NyZWVuTGF5ZXJN
YW5hZ2VyT2JqQy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91
bmRhdGlvbi9vYmpjL1ZpZGVvRnVsbHNjcmVlbkxheWVyTWFuYWdlck9iakMuaApAQCAtMjksMTAg
KzI5LDEzIEBACiAjaW5jbHVkZSAiSW50U2l6ZS5oIgogI2luY2x1ZGUgIlBsYXRmb3JtTGF5ZXIu
aCIKICNpbmNsdWRlICJWaWRlb0Z1bGxzY3JlZW5MYXllck1hbmFnZXIuaCIKKyNpbmNsdWRlICJX
ZWJWaWRlb0NvbnRhaW5lckxheWVyLmgiCiAjaW5jbHVkZSA8d3RmL0Z1bmN0aW9uLmg+CiAjaW5j
bHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+CiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgogCitP
QkpDX0NMQVNTIEFWUGxheWVyTGF5ZXI7CisKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3Mg
VmlkZW9GdWxsc2NyZWVuTGF5ZXJNYW5hZ2VyT2JqQyBmaW5hbCA6IHB1YmxpYyBWaWRlb0Z1bGxz
Y3JlZW5MYXllck1hbmFnZXIgewpAQCAtNTUsOSArNTgsOSBAQCBwdWJsaWM6CiAKIHByaXZhdGU6
CiAgICAgUmV0YWluUHRyPFBsYXRmb3JtTGF5ZXI+IG1fdGV4dFRyYWNrUmVwcmVzZW50YXRpb25M
YXllcjsKLSAgICBSZXRhaW5QdHI8UGxhdGZvcm1MYXllcj4gbV92aWRlb0lubGluZUxheWVyOwor
ICAgIFJldGFpblB0cjxXZWJWaWRlb0NvbnRhaW5lckxheWVyPiBtX3ZpZGVvSW5saW5lTGF5ZXI7
CiAgICAgUmV0YWluUHRyPFBsYXRmb3JtTGF5ZXI+IG1fdmlkZW9GdWxsc2NyZWVuTGF5ZXI7Ci0g
ICAgUmV0YWluUHRyPFBsYXRmb3JtTGF5ZXI+IG1fdmlkZW9MYXllcjsKKyAgICBSZXRhaW5QdHI8
QVZQbGF5ZXJMYXllcj4gbV92aWRlb0xheWVyOwogICAgIEZsb2F0UmVjdCBtX3ZpZGVvRnVsbHNj
cmVlbkZyYW1lOwogICAgIEZsb2F0UmVjdCBtX3ZpZGVvSW5saW5lRnJhbWU7CiB9OwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMv
VmlkZW9GdWxsc2NyZWVuTGF5ZXJNYW5hZ2VyT2JqQy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL1ZpZGVvRnVsbHNjcmVlbkxheWVyTWFuYWdl
ck9iakMubW0KaW5kZXggODNiODEyNWIxMjlkOGI0MzU3N2VkODQ3NDFhNzdjOGI3YzdiNGQyOC4u
ODZiOGI5MjYzNTA4MjJhZTA3NzYzYTE0ZDlkNjFkZDEwYzdkYTk2ZSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvVmlkZW9GdWxs
c2NyZWVuTGF5ZXJNYW5hZ2VyT2JqQy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9WaWRlb0Z1bGxzY3JlZW5MYXllck1hbmFnZXJPYmpD
Lm1tCkBAIC0zNSwyNyArMzUsNyBAQAogI2ltcG9ydCA8d3RmL0Jsb2NrUHRyLmg+CiAjaW1wb3J0
IDx3dGYvTWFjaFNlbmRSaWdodC5oPgogCi1AaW50ZXJmYWNlIFdlYlZpZGVvQ29udGFpbmVyTGF5
ZXIgOiBDQUxheWVyCi1AZW5kCi0KLUBpbXBsZW1lbnRhdGlvbiBXZWJWaWRlb0NvbnRhaW5lckxh
eWVyCi0KLS0gKHZvaWQpc2V0Qm91bmRzOihDR1JlY3QpYm91bmRzCi17Ci0gICAgW3N1cGVyIHNl
dEJvdW5kczpib3VuZHNdOwotICAgIGZvciAoQ0FMYXllciogbGF5ZXIgaW4gc2VsZi5zdWJsYXll
cnMpCi0gICAgICAgIGxheWVyLmZyYW1lID0gYm91bmRzOwotfQotCi0tICh2b2lkKXNldFBvc2l0
aW9uOihDR1BvaW50KXBvc2l0aW9uCi17Ci0gICAgaWYgKCFDQVRyYW5zZm9ybTNESXNJZGVudGl0
eShzZWxmLnRyYW5zZm9ybSkpIHsKLSAgICAgICAgLy8gUHJlLWFwcGx5IHRoZSB0cmFuc2Zvcm0g
YWRkZWQgaW4gdGhlIFdlYlByb2Nlc3MgdG8gZml4IDxyZGFyOi8vcHJvYmxlbS8xODMxNjU0Mj4g
dG8gdGhlIHBvc2l0aW9uLgotICAgICAgICBwb3NpdGlvbiA9IENHUG9pbnRBcHBseUFmZmluZVRy
YW5zZm9ybShwb3NpdGlvbiwgQ0FUcmFuc2Zvcm0zREdldEFmZmluZVRyYW5zZm9ybShzZWxmLnRy
YW5zZm9ybSkpOwotICAgIH0KLSAgICBbc3VwZXIgc2V0UG9zaXRpb246cG9zaXRpb25dOwotfQot
QGVuZAorI2luY2x1ZGUgPHBhbC9jb2NvYS9BVkZvdW5kYXRpb25Tb2Z0TGluay5oPgogCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKQEAgLTY2LDExICs0NiwxNiBAQCBWaWRlb0Z1bGxzY3JlZW5MYXll
ck1hbmFnZXJPYmpDOjpWaWRlb0Z1bGxzY3JlZW5MYXllck1hbmFnZXJPYmpDKCkKIAogdm9pZCBW
aWRlb0Z1bGxzY3JlZW5MYXllck1hbmFnZXJPYmpDOjpzZXRWaWRlb0xheWVyKFBsYXRmb3JtTGF5
ZXIgKnZpZGVvTGF5ZXIsIEludFNpemUgY29udGVudFNpemUpCiB7Ci0gICAgbV92aWRlb0xheWVy
ID0gdmlkZW9MYXllcjsKKyAgICBBU1NFUlQoW3ZpZGVvTGF5ZXIgaXNLaW5kT2ZDbGFzczpQQUw6
OmdldEFWUGxheWVyTGF5ZXJDbGFzcygpXSk7CisgICAgaWYgKCFbdmlkZW9MYXllciBpc0tpbmRP
ZkNsYXNzOlBBTDo6Z2V0QVZQbGF5ZXJMYXllckNsYXNzKCldKQorICAgICAgICByZXR1cm47CisK
KyAgICBhdXRvIHBsYXllckxheWVyID0gKEFWUGxheWVyTGF5ZXIqKXZpZGVvTGF5ZXI7CisgICAg
bV92aWRlb0xheWVyID0gcGxheWVyTGF5ZXI7CiAgICAgbV92aWRlb0lubGluZUZyYW1lID0gQ0dS
ZWN0TWFrZSgwLCAwLCBjb250ZW50U2l6ZS53aWR0aCgpLCBjb250ZW50U2l6ZS5oZWlnaHQoKSk7
CiAKICAgICBbbV92aWRlb0xheWVyIHdlYl9kaXNhYmxlQWxsQWN0aW9uc107Ci0gICAgbV92aWRl
b0lubGluZUxheWVyID0gYWRvcHROUyhbW1dlYlZpZGVvQ29udGFpbmVyTGF5ZXIgYWxsb2NdIGlu
aXRdKTsKKyAgICBtX3ZpZGVvSW5saW5lTGF5ZXIgPSBhZG9wdE5TKFtbV2ViVmlkZW9Db250YWlu
ZXJMYXllciBhbGxvY10gaW5pdFdpdGhQbGF5ZXJMYXllcjpwbGF5ZXJMYXllcl0pOwogI2lmbmRl
ZiBOREVCVUcKICAgICBbbV92aWRlb0lubGluZUxheWVyIHNldE5hbWU6QCJXZWJWaWRlb0NvbnRh
aW5lckxheWVyIl07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FMYXllckNvY29hLmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9QbGF0Zm9ybUNBTGF5ZXJDb2NvYS5oCmluZGV4
IDE5OGZhOTk1MzA3OTFiNTNjNTkzNDAxNjE3ZjAwNTc4YzM1OWI3MzIuLjVkOTY2OWI3YzYwOGEz
NGVmODQxYWQ5ZGU2ZDkzYjNiN2FmZTlhMmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FMYXllckNvY29hLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvY29jb2EvUGxhdGZvcm1DQUxheWVyQ29j
b2EuaApAQCAtMzMsMTEgKzMzLDExIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgUGxh
dGZvcm1DQUxheWVyQ29jb2EgZmluYWwgOiBwdWJsaWMgUGxhdGZvcm1DQUxheWVyIHsKIHB1Ymxp
YzoKLSAgICBzdGF0aWMgUmVmPFBsYXRmb3JtQ0FMYXllcj4gY3JlYXRlKExheWVyVHlwZSwgUGxh
dGZvcm1DQUxheWVyQ2xpZW50Kik7CisgICAgc3RhdGljIFJlZjxQbGF0Zm9ybUNBTGF5ZXJDb2Nv
YT4gY3JlYXRlKExheWVyVHlwZSwgUGxhdGZvcm1DQUxheWVyQ2xpZW50Kik7CiAgICAgCiAgICAg
Ly8gVGhpcyBmdW5jdGlvbiBwYXNzZXMgdGhlIGxheWVyIGFzIGEgdm9pZCogcmF0aGVyIHRoYW4g
YSBQbGF0Zm9ybUxheWVyIGJlY2F1c2UgUGxhdGZvcm1MYXllcgogICAgIC8vIGlzIGRlZmluZWQg
ZGlmZmVyZW50bHkgZm9yIE9iaiBDIGFuZCBDKysuIFRoaXMgYWxsb3dzIGNhbGxlcnMgZnJvbSBi
b3RoIGxhbmd1YWdlcy4KLSAgICBzdGF0aWMgUmVmPFBsYXRmb3JtQ0FMYXllcj4gY3JlYXRlKHZv
aWQqIHBsYXRmb3JtTGF5ZXIsIFBsYXRmb3JtQ0FMYXllckNsaWVudCopOworICAgIHN0YXRpYyBS
ZWY8UGxhdGZvcm1DQUxheWVyQ29jb2E+IGNyZWF0ZSh2b2lkKiBwbGF0Zm9ybUxheWVyLCBQbGF0
Zm9ybUNBTGF5ZXJDbGllbnQqKTsKIAogICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBMYXllclR5
cGUgbGF5ZXJUeXBlRm9yUGxhdGZvcm1MYXllcihQbGF0Zm9ybUxheWVyKik7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FM
YXllckNvY29hLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvY29jb2Ev
UGxhdGZvcm1DQUxheWVyQ29jb2EubW0KaW5kZXggNzhlMzUxODMwODE3NmJiNmVjODBiYzgzNjZl
NmUxODE5NDJlNTBmZi4uMDM5YzI4NmNhYTYzODZlOTNkYTlkOGZkOGRlZTg3MDRmN2QzMzdhNiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvY29jb2EvUGxh
dGZvcm1DQUxheWVyQ29jb2EubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY2EvY29jb2EvUGxhdGZvcm1DQUxheWVyQ29jb2EubW0KQEAgLTM5LDYgKzM5LDcgQEAKICNp
bXBvcnQgIldlYkFjdGlvbkRpc2FibGluZ0NBTGF5ZXJEZWxlZ2F0ZS5oIgogI2ltcG9ydCAiV2Vi
Q29yZUNBTGF5ZXJFeHRyYXMuaCIKICNpbXBvcnQgIldlYkdMTGF5ZXIuaCIKKyNpbXBvcnQgIldl
YlZpZGVvQ29udGFpbmVyTGF5ZXIuaCIKICNpbXBvcnQgPHBhbC9zcGkvY29jb2EvUXVhcnR6Q29y
ZVNQSS5oPgogI2ltcG9ydCA8d3RmL1NvZnRMaW5raW5nLmg+CiAjaW1wb3J0ICJXZWJMYXllci5o
IgpAQCAtNjgsMTIgKzY5LDEyIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotUmVmPFBsYXRm
b3JtQ0FMYXllcj4gUGxhdGZvcm1DQUxheWVyQ29jb2E6OmNyZWF0ZShMYXllclR5cGUgbGF5ZXJU
eXBlLCBQbGF0Zm9ybUNBTGF5ZXJDbGllbnQqIG93bmVyKQorUmVmPFBsYXRmb3JtQ0FMYXllckNv
Y29hPiBQbGF0Zm9ybUNBTGF5ZXJDb2NvYTo6Y3JlYXRlKExheWVyVHlwZSBsYXllclR5cGUsIFBs
YXRmb3JtQ0FMYXllckNsaWVudCogb3duZXIpCiB7CiAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcg
UGxhdGZvcm1DQUxheWVyQ29jb2EobGF5ZXJUeXBlLCBvd25lcikpOwogfQogCi1SZWY8UGxhdGZv
cm1DQUxheWVyPiBQbGF0Zm9ybUNBTGF5ZXJDb2NvYTo6Y3JlYXRlKHZvaWQqIHBsYXRmb3JtTGF5
ZXIsIFBsYXRmb3JtQ0FMYXllckNsaWVudCogb3duZXIpCitSZWY8UGxhdGZvcm1DQUxheWVyQ29j
b2E+IFBsYXRmb3JtQ0FMYXllckNvY29hOjpjcmVhdGUodm9pZCogcGxhdGZvcm1MYXllciwgUGxh
dGZvcm1DQUxheWVyQ2xpZW50KiBvd25lcikKIHsKICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBQ
bGF0Zm9ybUNBTGF5ZXJDb2NvYSgoX19icmlkZ2UgQ0FMYXllciAqKXBsYXRmb3JtTGF5ZXIsIG93
bmVyKSk7CiB9CkBAIC0yMDAsOSArMjAxLDcgQEAgUGxhdGZvcm1DQUxheWVyOjpMYXllclR5cGUg
UGxhdGZvcm1DQUxheWVyQ29jb2E6OmxheWVyVHlwZUZvclBsYXRmb3JtTGF5ZXIoUGxhdGYKICAg
ICBpZiAoW2xheWVyIGlzS2luZE9mQ2xhc3M6UEFMOjpnZXRBVlBsYXllckxheWVyQ2xhc3MoKV0p
CiAgICAgICAgIHJldHVybiBMYXllclR5cGVBVlBsYXllckxheWVyOwogCi0gICAgaWYgKFtsYXll
ciBpc0tpbmRPZkNsYXNzOm9iamNfZ2V0Q2xhc3MoIldlYlZpZGVvQ29udGFpbmVyTGF5ZXIiKV0K
LSAgICAgICAgJiYgbGF5ZXIuc3VibGF5ZXJzLmNvdW50ID09IDEKLSAgICAgICAgJiYgW2xheWVy
LnN1YmxheWVyc1swXSBpc0tpbmRPZkNsYXNzOlBBTDo6Z2V0QVZQbGF5ZXJMYXllckNsYXNzKCld
KQorICAgIGlmIChbbGF5ZXIgaXNLaW5kT2ZDbGFzczpXZWJWaWRlb0NvbnRhaW5lckxheWVyLmNs
YXNzXSkKICAgICAgICAgcmV0dXJuIExheWVyVHlwZUFWUGxheWVyTGF5ZXI7CiAKICAgICBpZiAo
W2xheWVyIGlzS2luZE9mQ2xhc3M6W1dlYkdMTGF5ZXIgY2xhc3NdXSkKQEAgLTM2MSw3ICszNjAs
NyBAQCBSZWY8UGxhdGZvcm1DQUxheWVyPiBQbGF0Zm9ybUNBTGF5ZXJDb2NvYTo6Y2xvbmUoUGxh
dGZvcm1DQUxheWVyQ2xpZW50KiBvd25lcikgYwogICAgIGlmICh0eXBlID09IExheWVyVHlwZUFW
UGxheWVyTGF5ZXIpIHsKICAgICAgICAgQVNTRVJUKFtuZXdMYXllci0+cGxhdGZvcm1MYXllcigp
IGlzS2luZE9mQ2xhc3M6UEFMOjpnZXRBVlBsYXllckxheWVyQ2xhc3MoKV0pOwogCi0gICAgICAg
IEFWUGxheWVyTGF5ZXIgKmRlc3RpbmF0aW9uUGxheWVyTGF5ZXIgPSBzdGF0aWNfY2FzdDxQbGF0
Zm9ybUNBTGF5ZXJDb2NvYSY+KG5ld0xheWVyLmdldCgpKS5hdlBsYXllckxheWVyKCk7CisgICAg
ICAgIEFWUGxheWVyTGF5ZXIgKmRlc3RpbmF0aW9uUGxheWVyTGF5ZXIgPSBuZXdMYXllci0+YXZQ
bGF5ZXJMYXllcigpOwogICAgICAgICBBVlBsYXllckxheWVyICpzb3VyY2VQbGF5ZXJMYXllciA9
IGF2UGxheWVyTGF5ZXIoKTsKICAgICAgICAgQVNTRVJUKHNvdXJjZVBsYXllckxheWVyKTsKIApA
QCAtMTI3MywxMSArMTI3Miw4IEBAIEFWUGxheWVyTGF5ZXIgKlBsYXRmb3JtQ0FMYXllckNvY29h
OjphdlBsYXllckxheWVyKCkgY29uc3QKICAgICBpZiAoW3BsYXRmb3JtTGF5ZXIoKSBpc0tpbmRP
ZkNsYXNzOlBBTDo6Z2V0QVZQbGF5ZXJMYXllckNsYXNzKCldKQogICAgICAgICByZXR1cm4gc3Rh
dGljX2Nhc3Q8QVZQbGF5ZXJMYXllciAqPihwbGF0Zm9ybUxheWVyKCkpOwogCi0gICAgaWYgKFtw
bGF0Zm9ybUxheWVyKCkgaXNLaW5kT2ZDbGFzczpvYmpjX2dldENsYXNzKCJXZWJWaWRlb0NvbnRh
aW5lckxheWVyIildKSB7Ci0gICAgICAgIEFTU0VSVChbcGxhdGZvcm1MYXllcigpIHN1YmxheWVy
c10uY291bnQgPT0gMSk7Ci0gICAgICAgIEFTU0VSVChbW3BsYXRmb3JtTGF5ZXIoKSBzdWJsYXll
cnNdWzBdIGlzS2luZE9mQ2xhc3M6UEFMOjpnZXRBVlBsYXllckxheWVyQ2xhc3MoKV0pOwotICAg
ICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8QVZQbGF5ZXJMYXllciAqPihbcGxhdGZvcm1MYXllcigp
IHN1YmxheWVyc11bMF0pOwotICAgIH0KKyAgICBpZiAoW3BsYXRmb3JtTGF5ZXIoKSBpc0tpbmRP
ZkNsYXNzOldlYlZpZGVvQ29udGFpbmVyTGF5ZXIuY2xhc3NdKQorICAgICAgICByZXR1cm4gc3Rh
dGljX2Nhc3Q8V2ViVmlkZW9Db250YWluZXJMYXllciAqPihwbGF0Zm9ybUxheWVyKCkpLnBsYXll
ckxheWVyOwogCiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgcmV0dXJuIG5pbDsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1dlYlZp
ZGVvQ29udGFpbmVyTGF5ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nh
L2NvY29hL1dlYlZpZGVvQ29udGFpbmVyTGF5ZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xMTIwZWQ3NjI3MDlm
NWI0YzkyNGU1NDMwNjA5ZWVjZDljNjQyNjU5Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvY29jb2EvV2ViVmlkZW9Db250YWluZXJMYXllci5o
CkBAIC0wLDAgKzEsMzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTkgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBh
cmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFO
RCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2ltcG9ydCA8
UXVhcnR6Q29yZS9DQUxheWVyLmg+CisjaW1wb3J0IDx3dGYvUmV0YWluUHRyLmg+CisKK0BjbGFz
cyBBVlBsYXllckxheWVyOworCitAaW50ZXJmYWNlIFdlYlZpZGVvQ29udGFpbmVyTGF5ZXIgOiBD
QUxheWVyIHsKKyAgICBSZXRhaW5QdHI8QVZQbGF5ZXJMYXllcj4gX3BsYXllckxheWVyOworfQor
LSAoaW5zdGFuY2V0eXBlKWluaXRXaXRoUGxheWVyTGF5ZXI6KEFWUGxheWVyTGF5ZXIgKilwbGF5
ZXJMYXllcjsKK0Bwcm9wZXJ0eSAocmVhZG9ubHksIG5vbmF0b21pYykgQVZQbGF5ZXJMYXllciAq
IHBsYXllckxheWVyOworQGVuZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY2EvY29jb2EvV2ViVmlkZW9Db250YWluZXJMYXllci5tbSBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1dlYlZpZGVvQ29udGFpbmVyTGF5ZXIubW0K
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uZjdmYWZmMWI3Y2M0YmExNmEyOWE3NjI5MGIyYTAyYjA0YjA2NDQ4YQotLS0g
L2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29h
L1dlYlZpZGVvQ29udGFpbmVyTGF5ZXIubW0KQEAgLTAsMCArMSw2MCBAQAorLyoKKyAqIENvcHly
aWdodCAoQykgMjAxOSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisg
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
IElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICog
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisK
KyNpbXBvcnQgImNvbmZpZy5oIgorI2ltcG9ydCAiV2ViVmlkZW9Db250YWluZXJMYXllci5oIgor
CitAaW1wbGVtZW50YXRpb24gV2ViVmlkZW9Db250YWluZXJMYXllcgorLSAoaW5zdGFuY2V0eXBl
KWluaXRXaXRoUGxheWVyTGF5ZXI6KEFWUGxheWVyTGF5ZXIgKilwbGF5ZXJMYXllcgoreworICAg
IGlmICghKHNlbGYgPSBbc3VwZXIgaW5pdF0pKQorICAgICAgICByZXR1cm4gbmlsOworICAgIF9w
bGF5ZXJMYXllciA9IHBsYXllckxheWVyOworICAgIHJldHVybiBzZWxmOworfQorCistIChBVlBs
YXllckxheWVyICopcGxheWVyTGF5ZXIKK3sKKyAgICByZXR1cm4gX3BsYXllckxheWVyLmdldCgp
OworfQorCistICh2b2lkKXNldEJvdW5kczooQ0dSZWN0KWJvdW5kcworeworICAgIFtzdXBlciBz
ZXRCb3VuZHM6Ym91bmRzXTsKKyAgICBmb3IgKENBTGF5ZXIqIGxheWVyIGluIHNlbGYuc3VibGF5
ZXJzKQorICAgICAgICBsYXllci5mcmFtZSA9IGJvdW5kczsKK30KKworLSAodm9pZClzZXRQb3Np
dGlvbjooQ0dQb2ludClwb3NpdGlvbgoreworICAgIGlmICghQ0FUcmFuc2Zvcm0zRElzSWRlbnRp
dHkoc2VsZi50cmFuc2Zvcm0pKSB7CisgICAgICAgIC8vIFByZS1hcHBseSB0aGUgdHJhbnNmb3Jt
IGFkZGVkIGluIHRoZSBXZWJQcm9jZXNzIHRvIGZpeCA8cmRhcjovL3Byb2JsZW0vMTgzMTY1NDI+
IHRvIHRoZSBwb3NpdGlvbi4KKyAgICAgICAgcG9zaXRpb24gPSBDR1BvaW50QXBwbHlBZmZpbmVU
cmFuc2Zvcm0ocG9zaXRpb24sIENBVHJhbnNmb3JtM0RHZXRBZmZpbmVUcmFuc2Zvcm0oc2VsZi50
cmFuc2Zvcm0pKTsKKyAgICB9CisgICAgW3N1cGVyIHNldFBvc2l0aW9uOnBvc2l0aW9uXTsKK30K
KworQGVuZAorCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>383291</attachid>
            <date>2019-11-11 13:24:59 -0800</date>
            <delta_ts>2019-11-11 17:05:04 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-204077-20191111132458.patch</filename>
            <type>text/plain</type>
            <size>16879</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUxODQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggN2ZhMjFmZWE3ZDZjZDBh
OTA0ZjM4OWE3YWU4NDgxNzVmNWY4YzIxNS4uYTIwZmQwYTlkNTA3NGE5ZTc1ODE4OWYwYzY4NGZl
ODRmZThiOTFhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM4IEBACisyMDE5LTExLTExICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIEFTU0VSVCBhdCBQbGF0Zm9y
bUNBTGF5ZXJDb2NvYTo6YXZQbGF5ZXJMYXllcigpOiBbcGxhdGZvcm1MYXllcigpIHN1YmxheWVy
c10uY291bnQgPT0gMQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjA0MDc3CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81NjY0MDQyMz4KKworICAgICAg
ICBSZXZpZXdlZCBieSBTaW1vbiBGcmFzZXIuCisKKyAgICAgICAgTWFrZSBQbGF0Zm9ybUNBTGF5
ZXJDb2NvYTo6YXZQbGF5ZXIoKSBtb3JlIHJvYnVzdCBhZ2FpbnN0IHVuZGVybHlpbmcgbGF5ZXIg
Y2hhbmdlcy4KKworICAgICAgICBQcm9tb3RlIFdlYlZpZGVvQ29udGFpbmVyTGF5ZXIgdG8gaXRz
IG93biBoZWFkZXIgZmlsZSBhbmQgZ2l2ZSB0aGUgY2xhc3MgYSAicGxheWVyTGF5ZXIiIHByb3Bl
cnR5LiBJbgorICAgICAgICBQbGF0Zm9ybUNBTGF5ZXJDb2NvYTo6YXZQbGF5ZXIoKSwgdXNlIHRo
YXQgbmV3IHByb3BlcnR5IHRvIHJldHJpZXZlIHRoZSBBVlBsYXllckxheWVyLgorCisgICAgICAg
IERyaXZlLWJ5IGZpeDogTWFrZSBQbGF0Zm9ybUNBTGF5ZXJDb2NvYTo6Y3JlYXRlKCkgcmV0dXJu
IGEgUmVmPFBsYXRmb3JtQ0FMYXllckNvY29hPiByYXRoZXIgdGhhbiBpdHMgcGFyZW50IGNsYXNz
IHR5cGUuCisKKyAgICAgICAgKiBTb3VyY2VzQ29jb2EudHh0OgorICAgICAgICAqIFdlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9h
dmZvdW5kYXRpb24vb2JqYy9WaWRlb0Z1bGxzY3JlZW5MYXllck1hbmFnZXJPYmpDLmg6CisgICAg
ICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvVmlkZW9GdWxsc2NyZWVu
TGF5ZXJNYW5hZ2VyT2JqQy5tbToKKyAgICAgICAgKFdlYkNvcmU6OlZpZGVvRnVsbHNjcmVlbkxh
eWVyTWFuYWdlck9iakM6OnNldFZpZGVvTGF5ZXIpOgorICAgICAgICAoLVtXZWJWaWRlb0NvbnRh
aW5lckxheWVyIHNldEJvdW5kczpdKTogRGVsZXRlZC4KKyAgICAgICAgKC1bV2ViVmlkZW9Db250
YWluZXJMYXllciBzZXRQb3NpdGlvbjpdKTogRGVsZXRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9jYS9jb2NvYS9QbGF0Zm9ybUNBTGF5ZXJDb2NvYS5oOgorICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FMYXllckNvY29hLm1tOgorICAgICAgICAo
V2ViQ29yZTo6UGxhdGZvcm1DQUxheWVyQ29jb2E6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3Jl
OjpQbGF0Zm9ybUNBTGF5ZXJDb2NvYTo6bGF5ZXJUeXBlRm9yUGxhdGZvcm1MYXllcik6CisgICAg
ICAgIChXZWJDb3JlOjpQbGF0Zm9ybUNBTGF5ZXJDb2NvYTo6Y2xvbmUgY29uc3QpOgorICAgICAg
ICAoV2ViQ29yZTo6UGxhdGZvcm1DQUxheWVyQ29jb2E6OmF2UGxheWVyTGF5ZXIgY29uc3QpOgor
ICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1dlYlZpZGVvQ29udGFpbmVyTGF5
ZXIuaDogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2EvY29jb2EvV2ViVmlk
ZW9Db250YWluZXJMYXllci5tbTogQWRkZWQuCisgICAgICAgICgtW1dlYlZpZGVvQ29udGFpbmVy
TGF5ZXIgaW5pdFdpdGhQbGF5ZXJMYXllcjpdKToKKyAgICAgICAgKC1bV2ViVmlkZW9Db250YWlu
ZXJMYXllciBwbGF5ZXJMYXllcl0pOgorICAgICAgICAoLVtXZWJWaWRlb0NvbnRhaW5lckxheWVy
IHNldEJvdW5kczpdKToKKyAgICAgICAgKC1bV2ViVmlkZW9Db250YWluZXJMYXllciBzZXRQb3Np
dGlvbjpdKToKKwogMjAxOS0xMS0xMSAgSmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxlLmNvbT4K
IAogICAgICAgICBFbnN1cmUgTWVkaWFSZW1vdGUgY2FsbGJhY2sgYWx3YXlzIGNhbGxlZC4KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXNDb2NvYS50eHQgYi9Tb3VyY2UvV2ViQ29y
ZS9Tb3VyY2VzQ29jb2EudHh0CmluZGV4IDdmNmUyMWJjZGRjYTIyYjExZmM3NzkzNGI5YTdiZjU1
ZGJkYjhkYTAuLmYxYzMzNDY3Y2RjMmI5MmU4ODJhN2Y3NDVlMjFiYzIyNzUwNWRiZDAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXNDb2NvYS50eHQKKysrIGIvU291cmNlL1dlYkNv
cmUvU291cmNlc0NvY29hLnR4dApAQCAtMjc4LDYgKzI3OCw3IEBAIHBsYXRmb3JtL2dyYXBoaWNz
L2NhL2NvY29hL1BsYXRmb3JtQ0FGaWx0ZXJzQ29jb2EubW0KIHBsYXRmb3JtL2dyYXBoaWNzL2Nh
L2NvY29hL1BsYXRmb3JtQ0FMYXllckNvY29hLm1tCiBwbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2Nv
YS9XZWJTeXN0ZW1CYWNrZHJvcExheWVyLm1tCiBwbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9X
ZWJUaWxlZEJhY2tpbmdMYXllci5tbQorcGxhdGZvcm0vZ3JhcGhpY3MvY2EvY29jb2EvV2ViVmlk
ZW9Db250YWluZXJMYXllci5tbQogCiBwbGF0Zm9ybS9ncmFwaGljcy9jZy9Db2xvckNHLmNwcAog
cGxhdGZvcm0vZ3JhcGhpY3MvY2cvRmxvYXRQb2ludENHLmNwcApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDZjY2U1NThkOGRlNTAy
M2Y0NjdjMTI4YzNjMDU0MTBjOTJiMzQwZDEuLmIxOThiMTk4ZTYxMDA3MmYwOTg4ODNjOGZmNjVh
NzIyODMyYzk5YmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2oKQEAgLTEzNzY0LDYgKzEzNzY0LDggQEAKIAkJQ0Q4QUNBODcxRDIzN0FB
MjAwRUNDNTlFIC8qIFJlbW90ZUNvbW1hbmRMaXN0ZW5lck1hYy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBSZW1vdGVDb21tYW5kTGlzdGVuZXJNYWMuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJQ0Q4QUNBOEMxRDIzOTcxOTAwRUNDNTlFIC8qIE1lZGlhUmVtb3Rl
U29mdExpbmsuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWVkaWFS
ZW1vdGVTb2Z0TGluay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNEOEFDQThE
MUQyMzk3MTkwMEVDQzU5RSAvKiBNZWRpYVJlbW90ZVNvZnRMaW5rLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhUmVtb3RlU29mdExpbmsuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQ0Q4QjMxQTEyMzc5REM4MzAwODgzRkRFIC8qIFdlYlZpZGVvQ29udGFp
bmVyTGF5ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViVmlkZW9Db250YWluZXJMYXllci5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDhCMzFBMjIzNzlEQzgzMDA4ODNGREUgLyogV2Vi
VmlkZW9Db250YWluZXJMYXllci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdlYlZpZGVvQ29u
dGFpbmVyTGF5ZXIubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNEOEI1QTQwMTgw
RDE0OUEwMDhCOEU2NSAvKiBWaWRlb1RyYWNrUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQy5tbSAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFZpZGVvVHJhY2tQcml2YXRl
TWVkaWFTb3VyY2VBVkZPYmpDLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDRDhC
NUE0MTE4MEQxNDlBMDA4QjhFNjUgLyogVmlkZW9UcmFja1ByaXZhdGVNZWRpYVNvdXJjZUFWRk9i
akMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVmlkZW9UcmFja1ByaXZhdGVN
ZWRpYVNvdXJjZUFWRk9iakMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0Q4QjVB
NDQxODBERDhENjAwOEI4RTY1IC8qIFZpZGVvVHJhY2tNZWRpYVNvdXJjZS5pZGwgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gVmlk
ZW9UcmFja01lZGlhU291cmNlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE4
NTQ0LDYgKzE4NTQ2LDggQEAKIAkJCQkzMURFQTQ1MzFCMzlGNEQ5MDBGNzcxNzggLyogV2ViU3lz
dGVtQmFja2Ryb3BMYXllci5tbSAqLywKIAkJCQkwRjU4MEZBMTE0OTY5MzkxMDBGQjVCRDggLyog
V2ViVGlsZWRCYWNraW5nTGF5ZXIuaCAqLywKIAkJCQkwRjU4MEZBMjE0OTY5MzkxMDBGQjVCRDgg
LyogV2ViVGlsZWRCYWNraW5nTGF5ZXIubW0gKi8sCisJCQkJQ0Q4QjMxQTEyMzc5REM4MzAwODgz
RkRFIC8qIFdlYlZpZGVvQ29udGFpbmVyTGF5ZXIuaCAqLywKKwkJCQlDRDhCMzFBMjIzNzlEQzgz
MDA4ODNGREUgLyogV2ViVmlkZW9Db250YWluZXJMYXllci5tbSAqLywKIAkJCSk7CiAJCQlwYXRo
ID0gY29jb2E7CiAJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvVmlkZW9GdWxsc2Ny
ZWVuTGF5ZXJNYW5hZ2VyT2JqQy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
YXZmb3VuZGF0aW9uL29iamMvVmlkZW9GdWxsc2NyZWVuTGF5ZXJNYW5hZ2VyT2JqQy5oCmluZGV4
IGRiODdlZGM2OWQxN2I2MTI2YTcxYWY4YWRhNDdlYjI3NGE4OWIxNjQuLmRmMDNmMjQwZjYxOThh
MTgzYjg3NWY4MDRhNTgxZjIxM2IxMjAwNjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL1ZpZGVvRnVsbHNjcmVlbkxheWVyTWFu
YWdlck9iakMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5k
YXRpb24vb2JqYy9WaWRlb0Z1bGxzY3JlZW5MYXllck1hbmFnZXJPYmpDLmgKQEAgLTI5LDEwICsy
OSwxMyBAQAogI2luY2x1ZGUgIkludFNpemUuaCIKICNpbmNsdWRlICJQbGF0Zm9ybUxheWVyLmgi
CiAjaW5jbHVkZSAiVmlkZW9GdWxsc2NyZWVuTGF5ZXJNYW5hZ2VyLmgiCisjaW5jbHVkZSAiV2Vi
VmlkZW9Db250YWluZXJMYXllci5oIgogI2luY2x1ZGUgPHd0Zi9GdW5jdGlvbi5oPgogI2luY2x1
ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgogI2luY2x1ZGUgPHd0Zi9SZXRhaW5QdHIuaD4KIAorT0JK
Q19DTEFTUyBBVlBsYXllckxheWVyOworCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIFZp
ZGVvRnVsbHNjcmVlbkxheWVyTWFuYWdlck9iakMgZmluYWwgOiBwdWJsaWMgVmlkZW9GdWxsc2Ny
ZWVuTGF5ZXJNYW5hZ2VyIHsKQEAgLTU1LDcgKzU4LDcgQEAgcHVibGljOgogCiBwcml2YXRlOgog
ICAgIFJldGFpblB0cjxQbGF0Zm9ybUxheWVyPiBtX3RleHRUcmFja1JlcHJlc2VudGF0aW9uTGF5
ZXI7Ci0gICAgUmV0YWluUHRyPFBsYXRmb3JtTGF5ZXI+IG1fdmlkZW9JbmxpbmVMYXllcjsKKyAg
ICBSZXRhaW5QdHI8V2ViVmlkZW9Db250YWluZXJMYXllcj4gbV92aWRlb0lubGluZUxheWVyOwog
ICAgIFJldGFpblB0cjxQbGF0Zm9ybUxheWVyPiBtX3ZpZGVvRnVsbHNjcmVlbkxheWVyOwogICAg
IFJldGFpblB0cjxQbGF0Zm9ybUxheWVyPiBtX3ZpZGVvTGF5ZXI7CiAgICAgRmxvYXRSZWN0IG1f
dmlkZW9GdWxsc2NyZWVuRnJhbWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9WaWRlb0Z1bGxzY3JlZW5MYXllck1hbmFnZXJP
YmpDLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29i
amMvVmlkZW9GdWxsc2NyZWVuTGF5ZXJNYW5hZ2VyT2JqQy5tbQppbmRleCA4M2I4MTI1YjEyOWQ4
YjQzNTc3ZWQ4NDc0MWE3N2M4YjdjN2I0ZDI4Li44MWEzYmFlMmNmNmVjYjYyMzc1OWViNTEyZWYy
MWEwNzExY2JmNDczIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9hdmZvdW5kYXRpb24vb2JqYy9WaWRlb0Z1bGxzY3JlZW5MYXllck1hbmFnZXJPYmpDLm1tCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL1Zp
ZGVvRnVsbHNjcmVlbkxheWVyTWFuYWdlck9iakMubW0KQEAgLTM1LDI3ICszNSw3IEBACiAjaW1w
b3J0IDx3dGYvQmxvY2tQdHIuaD4KICNpbXBvcnQgPHd0Zi9NYWNoU2VuZFJpZ2h0Lmg+CiAKLUBp
bnRlcmZhY2UgV2ViVmlkZW9Db250YWluZXJMYXllciA6IENBTGF5ZXIKLUBlbmQKLQotQGltcGxl
bWVudGF0aW9uIFdlYlZpZGVvQ29udGFpbmVyTGF5ZXIKLQotLSAodm9pZClzZXRCb3VuZHM6KENH
UmVjdClib3VuZHMKLXsKLSAgICBbc3VwZXIgc2V0Qm91bmRzOmJvdW5kc107Ci0gICAgZm9yIChD
QUxheWVyKiBsYXllciBpbiBzZWxmLnN1YmxheWVycykKLSAgICAgICAgbGF5ZXIuZnJhbWUgPSBi
b3VuZHM7Ci19Ci0KLS0gKHZvaWQpc2V0UG9zaXRpb246KENHUG9pbnQpcG9zaXRpb24KLXsKLSAg
ICBpZiAoIUNBVHJhbnNmb3JtM0RJc0lkZW50aXR5KHNlbGYudHJhbnNmb3JtKSkgewotICAgICAg
ICAvLyBQcmUtYXBwbHkgdGhlIHRyYW5zZm9ybSBhZGRlZCBpbiB0aGUgV2ViUHJvY2VzcyB0byBm
aXggPHJkYXI6Ly9wcm9ibGVtLzE4MzE2NTQyPiB0byB0aGUgcG9zaXRpb24uCi0gICAgICAgIHBv
c2l0aW9uID0gQ0dQb2ludEFwcGx5QWZmaW5lVHJhbnNmb3JtKHBvc2l0aW9uLCBDQVRyYW5zZm9y
bTNER2V0QWZmaW5lVHJhbnNmb3JtKHNlbGYudHJhbnNmb3JtKSk7Ci0gICAgfQotICAgIFtzdXBl
ciBzZXRQb3NpdGlvbjpwb3NpdGlvbl07Ci19Ci1AZW5kCisjaW5jbHVkZSA8cGFsL2NvY29hL0FW
Rm91bmRhdGlvblNvZnRMaW5rLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtNzYsNiAr
NTYsOCBAQCB2b2lkIFZpZGVvRnVsbHNjcmVlbkxheWVyTWFuYWdlck9iakM6OnNldFZpZGVvTGF5
ZXIoUGxhdGZvcm1MYXllciAqdmlkZW9MYXllciwgSQogI2VuZGlmCiAgICAgW21fdmlkZW9Jbmxp
bmVMYXllciBzZXRGcmFtZTptX3ZpZGVvSW5saW5lRnJhbWVdOwogICAgIFttX3ZpZGVvSW5saW5l
TGF5ZXIgc2V0Q29udGVudHNHcmF2aXR5OmtDQUdyYXZpdHlSZXNpemVBc3BlY3RdOworICAgIGlm
IChbdmlkZW9MYXllciBpc0tpbmRPZkNsYXNzOlBBTDo6Z2V0QVZQbGF5ZXJMYXllckNsYXNzKCld
KQorICAgICAgICBbbV92aWRlb0lubGluZUxheWVyIHNldFBsYXllckxheWVyOihBVlBsYXllckxh
eWVyICopdmlkZW9MYXllcl07CiAKICAgICBpZiAobV92aWRlb0Z1bGxzY3JlZW5MYXllcikgewog
ICAgICAgICBbbV92aWRlb0xheWVyIHNldEZyYW1lOkNHUmVjdE1ha2UoMCwgMCwgbV92aWRlb0Z1
bGxzY3JlZW5GcmFtZS53aWR0aCgpLCBtX3ZpZGVvRnVsbHNjcmVlbkZyYW1lLmhlaWdodCgpKV07
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9Q
bGF0Zm9ybUNBTGF5ZXJDb2NvYS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Y2EvY29jb2EvUGxhdGZvcm1DQUxheWVyQ29jb2EuaAppbmRleCAxOThmYTk5NTMwNzkxYjUzYzU5
MzQwMTYxN2YwMDU3OGMzNTliNzMyLi41ZDk2NjliN2M2MDhhMzRlZjg0MWFkOWRlNmQ5M2IzYjdh
ZmU5YTJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9j
b2NvYS9QbGF0Zm9ybUNBTGF5ZXJDb2NvYS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FMYXllckNvY29hLmgKQEAgLTMzLDExICszMywx
MSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIFBsYXRmb3JtQ0FMYXllckNvY29hIGZp
bmFsIDogcHVibGljIFBsYXRmb3JtQ0FMYXllciB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFJlZjxQ
bGF0Zm9ybUNBTGF5ZXI+IGNyZWF0ZShMYXllclR5cGUsIFBsYXRmb3JtQ0FMYXllckNsaWVudCop
OworICAgIHN0YXRpYyBSZWY8UGxhdGZvcm1DQUxheWVyQ29jb2E+IGNyZWF0ZShMYXllclR5cGUs
IFBsYXRmb3JtQ0FMYXllckNsaWVudCopOwogICAgIAogICAgIC8vIFRoaXMgZnVuY3Rpb24gcGFz
c2VzIHRoZSBsYXllciBhcyBhIHZvaWQqIHJhdGhlciB0aGFuIGEgUGxhdGZvcm1MYXllciBiZWNh
dXNlIFBsYXRmb3JtTGF5ZXIKICAgICAvLyBpcyBkZWZpbmVkIGRpZmZlcmVudGx5IGZvciBPYmog
QyBhbmQgQysrLiBUaGlzIGFsbG93cyBjYWxsZXJzIGZyb20gYm90aCBsYW5ndWFnZXMuCi0gICAg
c3RhdGljIFJlZjxQbGF0Zm9ybUNBTGF5ZXI+IGNyZWF0ZSh2b2lkKiBwbGF0Zm9ybUxheWVyLCBQ
bGF0Zm9ybUNBTGF5ZXJDbGllbnQqKTsKKyAgICBzdGF0aWMgUmVmPFBsYXRmb3JtQ0FMYXllckNv
Y29hPiBjcmVhdGUodm9pZCogcGxhdGZvcm1MYXllciwgUGxhdGZvcm1DQUxheWVyQ2xpZW50Kik7
CiAKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgTGF5ZXJUeXBlIGxheWVyVHlwZUZvclBsYXRm
b3JtTGF5ZXIoUGxhdGZvcm1MYXllciopOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9QbGF0Zm9ybUNBTGF5ZXJDb2NvYS5tbSBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FMYXllckNvY29h
Lm1tCmluZGV4IDc4ZTM1MTgzMDgxNzZiYjZlYzgwYmM4MzY2ZTZlMTgxOTQyZTUwZmYuLjQ2NTc0
MjgwYjFjOGEyYTU1NjhjNThmZDRiOTFhMzhjMGIzM2QxOTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1BsYXRmb3JtQ0FMYXllckNvY29hLm1t
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1BsYXRmb3Jt
Q0FMYXllckNvY29hLm1tCkBAIC0zOSw2ICszOSw3IEBACiAjaW1wb3J0ICJXZWJBY3Rpb25EaXNh
YmxpbmdDQUxheWVyRGVsZWdhdGUuaCIKICNpbXBvcnQgIldlYkNvcmVDQUxheWVyRXh0cmFzLmgi
CiAjaW1wb3J0ICJXZWJHTExheWVyLmgiCisjaW1wb3J0ICJXZWJWaWRlb0NvbnRhaW5lckxheWVy
LmgiCiAjaW1wb3J0IDxwYWwvc3BpL2NvY29hL1F1YXJ0ekNvcmVTUEkuaD4KICNpbXBvcnQgPHd0
Zi9Tb2Z0TGlua2luZy5oPgogI2ltcG9ydCAiV2ViTGF5ZXIuaCIKQEAgLTY4LDEyICs2OSwxMiBA
QAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLVJlZjxQbGF0Zm9ybUNBTGF5ZXI+IFBsYXRmb3Jt
Q0FMYXllckNvY29hOjpjcmVhdGUoTGF5ZXJUeXBlIGxheWVyVHlwZSwgUGxhdGZvcm1DQUxheWVy
Q2xpZW50KiBvd25lcikKK1JlZjxQbGF0Zm9ybUNBTGF5ZXJDb2NvYT4gUGxhdGZvcm1DQUxheWVy
Q29jb2E6OmNyZWF0ZShMYXllclR5cGUgbGF5ZXJUeXBlLCBQbGF0Zm9ybUNBTGF5ZXJDbGllbnQq
IG93bmVyKQogewogICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFBsYXRmb3JtQ0FMYXllckNvY29h
KGxheWVyVHlwZSwgb3duZXIpKTsKIH0KIAotUmVmPFBsYXRmb3JtQ0FMYXllcj4gUGxhdGZvcm1D
QUxheWVyQ29jb2E6OmNyZWF0ZSh2b2lkKiBwbGF0Zm9ybUxheWVyLCBQbGF0Zm9ybUNBTGF5ZXJD
bGllbnQqIG93bmVyKQorUmVmPFBsYXRmb3JtQ0FMYXllckNvY29hPiBQbGF0Zm9ybUNBTGF5ZXJD
b2NvYTo6Y3JlYXRlKHZvaWQqIHBsYXRmb3JtTGF5ZXIsIFBsYXRmb3JtQ0FMYXllckNsaWVudCog
b3duZXIpCiB7CiAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgUGxhdGZvcm1DQUxheWVyQ29jb2Eo
KF9fYnJpZGdlIENBTGF5ZXIgKilwbGF0Zm9ybUxheWVyLCBvd25lcikpOwogfQpAQCAtMjAwLDkg
KzIwMSw4IEBAIFBsYXRmb3JtQ0FMYXllcjo6TGF5ZXJUeXBlIFBsYXRmb3JtQ0FMYXllckNvY29h
OjpsYXllclR5cGVGb3JQbGF0Zm9ybUxheWVyKFBsYXRmCiAgICAgaWYgKFtsYXllciBpc0tpbmRP
ZkNsYXNzOlBBTDo6Z2V0QVZQbGF5ZXJMYXllckNsYXNzKCldKQogICAgICAgICByZXR1cm4gTGF5
ZXJUeXBlQVZQbGF5ZXJMYXllcjsKIAotICAgIGlmIChbbGF5ZXIgaXNLaW5kT2ZDbGFzczpvYmpj
X2dldENsYXNzKCJXZWJWaWRlb0NvbnRhaW5lckxheWVyIildCi0gICAgICAgICYmIGxheWVyLnN1
YmxheWVycy5jb3VudCA9PSAxCi0gICAgICAgICYmIFtsYXllci5zdWJsYXllcnNbMF0gaXNLaW5k
T2ZDbGFzczpQQUw6OmdldEFWUGxheWVyTGF5ZXJDbGFzcygpXSkKKyAgICBpZiAoW2xheWVyIGlz
S2luZE9mQ2xhc3M6V2ViVmlkZW9Db250YWluZXJMYXllci5jbGFzc10KKyAgICAgICAgJiYgWyhX
ZWJWaWRlb0NvbnRhaW5lckxheWVyKilsYXllciBwbGF5ZXJMYXllcl0pCiAgICAgICAgIHJldHVy
biBMYXllclR5cGVBVlBsYXllckxheWVyOwogCiAgICAgaWYgKFtsYXllciBpc0tpbmRPZkNsYXNz
OltXZWJHTExheWVyIGNsYXNzXV0pCkBAIC0zNjEsNyArMzYxLDcgQEAgUmVmPFBsYXRmb3JtQ0FM
YXllcj4gUGxhdGZvcm1DQUxheWVyQ29jb2E6OmNsb25lKFBsYXRmb3JtQ0FMYXllckNsaWVudCog
b3duZXIpIGMKICAgICBpZiAodHlwZSA9PSBMYXllclR5cGVBVlBsYXllckxheWVyKSB7CiAgICAg
ICAgIEFTU0VSVChbbmV3TGF5ZXItPnBsYXRmb3JtTGF5ZXIoKSBpc0tpbmRPZkNsYXNzOlBBTDo6
Z2V0QVZQbGF5ZXJMYXllckNsYXNzKCldKTsKIAotICAgICAgICBBVlBsYXllckxheWVyICpkZXN0
aW5hdGlvblBsYXllckxheWVyID0gc3RhdGljX2Nhc3Q8UGxhdGZvcm1DQUxheWVyQ29jb2EmPihu
ZXdMYXllci5nZXQoKSkuYXZQbGF5ZXJMYXllcigpOworICAgICAgICBBVlBsYXllckxheWVyICpk
ZXN0aW5hdGlvblBsYXllckxheWVyID0gbmV3TGF5ZXItPmF2UGxheWVyTGF5ZXIoKTsKICAgICAg
ICAgQVZQbGF5ZXJMYXllciAqc291cmNlUGxheWVyTGF5ZXIgPSBhdlBsYXllckxheWVyKCk7CiAg
ICAgICAgIEFTU0VSVChzb3VyY2VQbGF5ZXJMYXllcik7CiAKQEAgLTEyNzMsMTEgKzEyNzMsOCBA
QCBBVlBsYXllckxheWVyICpQbGF0Zm9ybUNBTGF5ZXJDb2NvYTo6YXZQbGF5ZXJMYXllcigpIGNv
bnN0CiAgICAgaWYgKFtwbGF0Zm9ybUxheWVyKCkgaXNLaW5kT2ZDbGFzczpQQUw6OmdldEFWUGxh
eWVyTGF5ZXJDbGFzcygpXSkKICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PEFWUGxheWVyTGF5
ZXIgKj4ocGxhdGZvcm1MYXllcigpKTsKIAotICAgIGlmIChbcGxhdGZvcm1MYXllcigpIGlzS2lu
ZE9mQ2xhc3M6b2JqY19nZXRDbGFzcygiV2ViVmlkZW9Db250YWluZXJMYXllciIpXSkgewotICAg
ICAgICBBU1NFUlQoW3BsYXRmb3JtTGF5ZXIoKSBzdWJsYXllcnNdLmNvdW50ID09IDEpOwotICAg
ICAgICBBU1NFUlQoW1twbGF0Zm9ybUxheWVyKCkgc3VibGF5ZXJzXVswXSBpc0tpbmRPZkNsYXNz
OlBBTDo6Z2V0QVZQbGF5ZXJMYXllckNsYXNzKCldKTsKLSAgICAgICAgcmV0dXJuIHN0YXRpY19j
YXN0PEFWUGxheWVyTGF5ZXIgKj4oW3BsYXRmb3JtTGF5ZXIoKSBzdWJsYXllcnNdWzBdKTsKLSAg
ICB9CisgICAgaWYgKFtwbGF0Zm9ybUxheWVyKCkgaXNLaW5kT2ZDbGFzczpXZWJWaWRlb0NvbnRh
aW5lckxheWVyLmNsYXNzXSkKKyAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PFdlYlZpZGVvQ29u
dGFpbmVyTGF5ZXIgKj4ocGxhdGZvcm1MYXllcigpKS5wbGF5ZXJMYXllcjsKIAogICAgIEFTU0VS
VF9OT1RfUkVBQ0hFRCgpOwogICAgIHJldHVybiBuaWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJWaWRlb0NvbnRhaW5lckxheWVyLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJWaWRlb0NvbnRh
aW5lckxheWVyLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzUwMTc5MTAxYmJkMDg2NTIyNWNhMGYwMWExYjM5MjEx
ZjYyNTExZgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NhL2NvY29hL1dlYlZpZGVvQ29udGFpbmVyTGF5ZXIuaApAQCAtMCwwICsxLDM3IEBACisv
KgorICogQ29weXJpZ2h0IChDKSAyMDE5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4g
QU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQ
UExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbXBvcnQgPFF1YXJ0ekNvcmUvQ0FMYXllci5o
PgorI2ltcG9ydCA8d3RmL1JldGFpblB0ci5oPgorCitAY2xhc3MgQVZQbGF5ZXJMYXllcjsKKwor
QGludGVyZmFjZSBXZWJWaWRlb0NvbnRhaW5lckxheWVyIDogQ0FMYXllciB7CisgICAgUmV0YWlu
UHRyPEFWUGxheWVyTGF5ZXI+IF9wbGF5ZXJMYXllcjsKK30KK0Bwcm9wZXJ0eSAocmV0YWluLCBu
b25hdG9taWMpIEFWUGxheWVyTGF5ZXIgKiBwbGF5ZXJMYXllcjsKK0BlbmQKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL2NvY29hL1dlYlZpZGVvQ29udGFp
bmVyTGF5ZXIubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9X
ZWJWaWRlb0NvbnRhaW5lckxheWVyLm1tCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgwN2Y1NDI5ZGRkNjBhYTUyYmRh
Y2FkOGM0MzRkYTRlMGVlYzE4YTkKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jYS9jb2NvYS9XZWJWaWRlb0NvbnRhaW5lckxheWVyLm1tCkBAIC0w
LDAgKzEsNTcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTkgQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0
OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkg
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
IE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW1wb3J0ICJjb25maWcuaCIKKyNpbXBvcnQgIldl
YlZpZGVvQ29udGFpbmVyTGF5ZXIuaCIKKworQGltcGxlbWVudGF0aW9uIFdlYlZpZGVvQ29udGFp
bmVyTGF5ZXIKKy0gKHZvaWQpc2V0UGxheWVyTGF5ZXI6KEFWUGxheWVyTGF5ZXIgKilwbGF5ZXJM
YXllcgoreworICAgIF9wbGF5ZXJMYXllciA9IHBsYXllckxheWVyOworfQorCistIChBVlBsYXll
ckxheWVyICopcGxheWVyTGF5ZXIKK3sKKyAgICByZXR1cm4gX3BsYXllckxheWVyLmdldCgpOwor
fQorCistICh2b2lkKXNldEJvdW5kczooQ0dSZWN0KWJvdW5kcworeworICAgIFtzdXBlciBzZXRC
b3VuZHM6Ym91bmRzXTsKKyAgICBmb3IgKENBTGF5ZXIqIGxheWVyIGluIHNlbGYuc3VibGF5ZXJz
KQorICAgICAgICBsYXllci5mcmFtZSA9IGJvdW5kczsKK30KKworLSAodm9pZClzZXRQb3NpdGlv
bjooQ0dQb2ludClwb3NpdGlvbgoreworICAgIGlmICghQ0FUcmFuc2Zvcm0zRElzSWRlbnRpdHko
c2VsZi50cmFuc2Zvcm0pKSB7CisgICAgICAgIC8vIFByZS1hcHBseSB0aGUgdHJhbnNmb3JtIGFk
ZGVkIGluIHRoZSBXZWJQcm9jZXNzIHRvIGZpeCA8cmRhcjovL3Byb2JsZW0vMTgzMTY1NDI+IHRv
IHRoZSBwb3NpdGlvbi4KKyAgICAgICAgcG9zaXRpb24gPSBDR1BvaW50QXBwbHlBZmZpbmVUcmFu
c2Zvcm0ocG9zaXRpb24sIENBVHJhbnNmb3JtM0RHZXRBZmZpbmVUcmFuc2Zvcm0oc2VsZi50cmFu
c2Zvcm0pKTsKKyAgICB9CisgICAgW3N1cGVyIHNldFBvc2l0aW9uOnBvc2l0aW9uXTsKK30KKwor
QGVuZAorCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>