<?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>215029</bug_id>
          
          <creation_ts>2020-07-31 13:02:44 -0700</creation_ts>
          <short_desc>Launch time regression due to EndowmentStateTracker initialization in WebPageProxy constructor</short_desc>
          <delta_ts>2020-07-31 15:23:59 -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>WebKit2</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="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>eric.carlson</cc>
    
    <cc>ggaren</cc>
    
    <cc>jer.noble</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1676933</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-07-31 13:02:44 -0700</bug_when>
    <thetext>Launch time regression due to EndowmentStateTracker initialization in WebPageProxy constructor.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1676935</commentid>
    <comment_count>1</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-07-31 13:02:57 -0700</bug_when>
    <thetext>&lt;rdar://problem/66362333&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1676946</commentid>
    <comment_count>2</comment_count>
      <attachid>405732</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-07-31 13:19:26 -0700</bug_when>
    <thetext>Created attachment 405732
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1676976</commentid>
    <comment_count>3</comment_count>
      <attachid>405732</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2020-07-31 14:37:20 -0700</bug_when>
    <thetext>Comment on attachment 405732
Patch

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

r=me

&gt; Source/WebKit/ChangeLog:12
&gt; +        1. We only need the EndowmentStateTracker to monitor is the app is user-facing or not, so that we can

is =&gt; if</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1676981</commentid>
    <comment_count>4</comment_count>
      <attachid>405743</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-07-31 14:51:37 -0700</bug_when>
    <thetext>Created attachment 405743
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1677002</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-07-31 15:23:57 -0700</bug_when>
    <thetext>Committed r265163: &lt;https://trac.webkit.org/changeset/265163&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 405743.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>405732</attachid>
            <date>2020-07-31 13:19:26 -0700</date>
            <delta_ts>2020-07-31 14:51:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215029-20200731131926.patch</filename>
            <type>text/plain</type>
            <size>14149</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY1MTUwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDg4OTUyNDUwNjYzOGY3MzBh
ZmFkMzM3YzViNmM1NTYzODRlNzI2NjcuLjdhYmI3NTZiODJiZTY5YmNkNDU1MWRjNzA1NWM1ZTlm
N2E2OGQzMzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDUgQEAKKzIwMjAtMDctMzEgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBMYXVuY2ggdGltZSByZWdyZXNzaW9u
IGR1ZSB0byBFbmRvd21lbnRTdGF0ZVRyYWNrZXIgaW5pdGlhbGl6YXRpb24gaW4gV2ViUGFnZVBy
b3h5IGNvbnN0cnVjdG9yCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMTUwMjkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzY2MzYyMzMzPgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEVuZG93bWVudFN0YXRl
VHJhY2tlciB3YXMgZXhwZW5zaXZlIGFuZCBpbiBhIGNyaXRpY2FsIGNvZGUgcGF0aCBkdXJpbmcg
TW9iaWxlU2FmYXJpIGFwcCBsYXVuY2guIFNpbmNlCisgICAgICAgIHRoaXMgY29kZSBpcyBuZXcs
IHRoaXMgd2FzIGEgbmV0IGFwcCBsYXVuY2ggdGltZSByZWdyZXNzaW9uLiBUbyBhZGRyZXNzIHRo
ZSByZWdyZXNzaW9uLCB0aGUgZm9sbG93aW5nCisgICAgICAgIGNoYW5nZXMgd2VyZSBtYWRlOgor
ICAgICAgICAxLiBXZSBvbmx5IG5lZWQgdGhlIEVuZG93bWVudFN0YXRlVHJhY2tlciB0byBtb25p
dG9yIGlzIHRoZSBhcHAgaXMgdXNlci1mYWNpbmcgb3Igbm90LCBzbyB0aGF0IHdlIGNhbgorICAg
ICAgICAgICBzdXNwZW5kIC8gcmVzdW1lIG1lZGlhIHBsYXliYWNrIGFzIG5lZWRlZC4gQXMgYSBy
ZXN1bHQsIGl0IGlzIHVubmVjZXNzYXJ5IHRvIHN0YXJ0IG1vbml0b3JpbmcKKyAgICAgICAgICAg
dXNlci1mYWNpbmcgc3RhdGUgY2hhbmdlcyBhcyBzb29uIGFzIHRoZSBXZWJQYWdlUHJveHkgaXMg
Y29uc3RydWN0ZWQuIEluc3RlYWQsIHdlIG5vdyB3YWl0IHVudGlsCisgICAgICAgICAgIG1lZGlh
IHBsYXlzIG9uIHRoZSBwYWdlIGZvciB0aGUgZmlyc3QgdGltZS4KKyAgICAgICAgMi4gSXQgdHVy
bnMgb3V0IHRoYXQgb3ZlciA3MCUgb2YgQ1BVIHRpbWUgaW4gdGhlIEVuZG93bWVudFN0YXRlVHJh
Y2tlciBjb25zdHJ1Y3RvciB3YXMgc3BlbnQgZ2V0dGluZworICAgICAgICAgICB0aGUgY3VycmVu
dCBlbmRvd25tZW50IGZvciB0aGUgcHJvY2Vzcy4gQXMgYSByZXN1bHQsIEkgdXBkYXRlZCB0aGUg
Y29kZSB0byBsYXp5IHBvcHVsYXRlIHRob3NlCisgICAgICAgICAgIHVudGlsIHRoZXkgYXJlIHJl
cXVlc3RlZCBmb3IgdGhlIGZpcnN0IHRpbWUuCisgICAgICAgIDMuIFRoZSByZW1haW5pbmcgMzAl
IG9mIENQVSB0aW1lIGluIHRoZSBFbmRvd21lbnRTdGF0ZVRyYWNrZXIgY29uc3RydWN0b3Igd2Fz
IHNwZW50IGNvbnN0cnVjdGluZyB0aGUKKyAgICAgICAgICAgUkJTUHJvY2Vzc01vbml0b3IuIEkg
bW92ZWQgdGhlIGluaXRpYWxpemF0aW9uIG9mIHRoZSBSQlNQcm9jZXNzTW9uaXRvciBmcm9tIHRo
ZSBjb25zdHJ1Y3RvciB0bworICAgICAgICAgICBFbmRvd21lbnRTdGF0ZVRyYWNrZXI6OmFkZENs
aWVudCgpIHNvIHRoYXQgd2Ugb25seSBjb25zdHJ1Y3QgYSBtb25pdG9yIHdoZW4gd2UgYWN0dWFs
bHkgaGF2ZSBvdXIKKyAgICAgICAgICAgZmlyc3QgY2xpZW50LgorICAgICAgICA0LiBBbGwgdGhp
cyBjb2RlIHdhcyBhY3R1YWxseSBvbmx5IHVzZWZ1bCBmb3IgQ2F0YWx5c3QgYXBwIGFuZCB3YXMg
dGhlcmVmb3JlIGRvaW5nIHdvcmsgb24gaU9TIGZvciBubworICAgICAgICAgICByZWFzb24uIEkg
cHJvcGVybHkgI2lmZGVmJ2Qgb3V0IHRoaXMgY29kZSBzbyB0aGF0IGl0IG5vdyBvbmx5IGFwcGxp
ZXMgdG8gQ2F0YWx5c3QgYXBwcy4KKworICAgICAgICAqIFVJUHJvY2Vzcy9FbmRvd21lbnRTdGF0
ZVRyYWNrZXIuaDoKKyAgICAgICAgKFdlYktpdDo6RW5kb3dtZW50U3RhdGVUcmFja2VyOjppc1Zp
c2libGUgY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpFbmRvd21lbnRTdGF0ZVRyYWNrZXI6Omlz
VXNlckZhY2luZyBjb25zdCk6CisgICAgICAgICogVUlQcm9jZXNzL0VuZG93bWVudFN0YXRlVHJh
Y2tlci5tbToKKyAgICAgICAgKFdlYktpdDo6RW5kb3dtZW50U3RhdGVUcmFja2VyOjpzdGF0ZUZy
b21FbmRvd21lbnRzKToKKyAgICAgICAgKFdlYktpdDo6RW5kb3dtZW50U3RhdGVUcmFja2VyOjpy
ZWdpc3Rlck1vbml0b3JJZk5lY2Vzc2FyeSk6CisgICAgICAgIChXZWJLaXQ6OkVuZG93bWVudFN0
YXRlVHJhY2tlcjo6YWRkQ2xpZW50KToKKyAgICAgICAgKFdlYktpdDo6RW5kb3dtZW50U3RhdGVU
cmFja2VyOjplbnN1cmVTdGF0ZSBjb25zdCBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6OkVuZG93
bWVudFN0YXRlVHJhY2tlcjo6c2V0U3RhdGUpOgorICAgICAgICAoV2ViS2l0OjpFbmRvd21lbnRT
dGF0ZVRyYWNrZXI6OkVuZG93bWVudFN0YXRlVHJhY2tlcik6IERlbGV0ZWQuCisgICAgICAgIChX
ZWJLaXQ6OkVuZG93bWVudFN0YXRlVHJhY2tlcjo6c2V0SXNVc2VyRmFjaW5nKTogRGVsZXRlZC4K
KyAgICAgICAgKFdlYktpdDo6RW5kb3dtZW50U3RhdGVUcmFja2VyOjpzZXRJc1Zpc2libGUpOiBE
ZWxldGVkLgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwOgorICAgICAgICAo
V2ViS2l0OjptX3RyYW5zY29kaW5nUXVldWUpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJv
eHk6OnVwZGF0ZVBsYXlpbmdNZWRpYURpZENoYW5nZSk6CisgICAgICAgICogVUlQcm9jZXNzL1dl
YlBhZ2VQcm94eS5oOgorCiAyMDIwLTA3LTMxICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxl
LmNvbT4KIAogICAgICAgICBVcGRhdGUgc2VydmljZSB3b3JrZXIgaWYgY2VydGlmaWNhdGUgaW5m
byBkb2VzIG5vdCBtYXRjaCB3aGVuIHNvZnQgdXBkYXRpbmcKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL0VuZG93bWVudFN0YXRlVHJhY2tlci5oIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvRW5kb3dtZW50U3RhdGVUcmFja2VyLmgKaW5kZXggMjIxOWE1ODgzZTQyMWNiOGZk
OTRkOTRkYzQ3OWE2N2UyNzg1YmViZS4uMGFjNDdiZDMxNGE5OGJiY2M1MGY2ZTJiY2RkOWI3ODgx
YmRiOWZkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvRW5kb3dtZW50U3Rh
dGVUcmFja2VyLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvRW5kb3dtZW50U3RhdGVU
cmFja2VyLmgKQEAgLTMwLDYgKzMwLDcgQEAKICNpbXBvcnQgPHd0Zi9SZXRhaW5QdHIuaD4KICNp
bXBvcnQgPHd0Zi9XZWFrSGFzaFNldC5oPgogCitPQkpDX0NMQVNTIE5TU2V0OwogT0JKQ19DTEFT
UyBSQlNQcm9jZXNzTW9uaXRvcjsKIAogbmFtZXNwYWNlIFdlYktpdCB7CkBAIC00MCw3ICs0MSw2
IEBAIGNsYXNzIEVuZG93bWVudFN0YXRlVHJhY2tlciB7CiAgICAgV1RGX01BS0VfRkFTVF9BTExP
Q0FURUQ7CiBwdWJsaWM6CiAgICAgc3RhdGljIEVuZG93bWVudFN0YXRlVHJhY2tlciYgc2luZ2xl
dG9uKCk7Ci0gICAgfkVuZG93bWVudFN0YXRlVHJhY2tlcigpOwogCiAgICAgY2xhc3MgQ2xpZW50
IDogcHVibGljIENhbk1ha2VXZWFrUHRyPENsaWVudD4gewogICAgIHB1YmxpYzoKQEAgLTQ5LDgg
KzQ5LDggQEAgcHVibGljOgogICAgICAgICB2aXJ0dWFsIHZvaWQgaXNWaXNpYmxlQ2hhbmdlZChi
b29sKSB7IH0KICAgICB9OwogCi0gICAgYm9vbCBpc1Zpc2libGUoKSBjb25zdCB7IHJldHVybiBt
X2lzVmlzaWJsZTsgfQotICAgIGJvb2wgaXNVc2VyRmFjaW5nKCkgY29uc3QgeyByZXR1cm4gbV9p
c1VzZXJGYWNpbmc7IH0KKyAgICBib29sIGlzVmlzaWJsZSgpIGNvbnN0IHsgcmV0dXJuIGVuc3Vy
ZVN0YXRlKCkuaXNWaXNpYmxlOyB9CisgICAgYm9vbCBpc1VzZXJGYWNpbmcoKSBjb25zdCB7IHJl
dHVybiBlbnN1cmVTdGF0ZSgpLmlzVXNlckZhY2luZzsgfQogCiAgICAgdm9pZCBhZGRDbGllbnQo
Q2xpZW50Jik7CiAgICAgdm9pZCByZW1vdmVDbGllbnQoQ2xpZW50Jik7CkBAIC01OSwxNCArNTks
MjEgQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIGZyaWVuZCBjbGFzcyBOZXZlckRlc3Ryb3ll
ZDxFbmRvd21lbnRTdGF0ZVRyYWNrZXI+OwotICAgIEVuZG93bWVudFN0YXRlVHJhY2tlcigpOwot
ICAgIHZvaWQgc2V0SXNVc2VyRmFjaW5nKGJvb2wpOwotICAgIHZvaWQgc2V0SXNWaXNpYmxlKGJv
b2wpOworICAgIEVuZG93bWVudFN0YXRlVHJhY2tlcigpID0gZGVmYXVsdDsKKworICAgIHZvaWQg
cmVnaXN0ZXJNb25pdG9ySWZOZWNlc3NhcnkoKTsKKworICAgIHN0cnVjdCBTdGF0ZSB7CisgICAg
ICAgIGJvb2wgaXNVc2VyRmFjaW5nOworICAgICAgICBib29sIGlzVmlzaWJsZTsKKyAgICB9Owor
ICAgIHN0YXRpYyBTdGF0ZSBzdGF0ZUZyb21FbmRvd21lbnRzKE5TU2V0ICplbmRvd21lbnRzKTsK
KyAgICBjb25zdCBTdGF0ZSYgZW5zdXJlU3RhdGUoKSBjb25zdDsKKyAgICB2b2lkIHNldFN0YXRl
KFN0YXRlJiYpOwogCiAgICAgV2Vha0hhc2hTZXQ8Q2xpZW50PiBtX2NsaWVudHM7CiAgICAgUmV0
YWluUHRyPFJCU1Byb2Nlc3NNb25pdG9yPiBtX3Byb2Nlc3NNb25pdG9yOwotICAgIGJvb2wgbV9p
c1VzZXJGYWNpbmc7Ci0gICAgYm9vbCBtX2lzVmlzaWJsZTsKKyAgICBtdXRhYmxlIE9wdGlvbmFs
PFN0YXRlPiBtX3N0YXRlOwogfTsKIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvRW5kb3dtZW50U3RhdGVUcmFja2VyLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
RW5kb3dtZW50U3RhdGVUcmFja2VyLm1tCmluZGV4IGYyODNhODZhOThjZGI4YzQyNWQ4NWU2MDAx
NzhkYjA3YTIyYTI2NGQuLmQ2ZDVjZjJjMjZmODEwNDYzODExN2M2NjYwYzA0NmMxNzhlNjdjMzAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0VuZG93bWVudFN0YXRlVHJhY2tl
ci5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9FbmRvd21lbnRTdGF0ZVRyYWNrZXIu
bW0KQEAgLTcyLDYgKzcyLDE0IEBAIHN0YXRpYyBOU1NldDxOU1N0cmluZyAqPiAqZW5kb3dtZW50
c0ZvckhhbmRsZShSQlNQcm9jZXNzSGFuZGxlICpwcm9jZXNzSGFuZGxlKQogICAgIHJldHVybiBb
c3RhdGUgZW5kb3dtZW50TmFtZXNwYWNlc107CiB9CiAKK2lubGluZSBhdXRvIEVuZG93bWVudFN0
YXRlVHJhY2tlcjo6c3RhdGVGcm9tRW5kb3dtZW50cyhOU1NldCAqZW5kb3dtZW50cykgLT4gU3Rh
dGUKK3sKKyAgICByZXR1cm4gU3RhdGUgeworICAgICAgICBbZW5kb3dtZW50cyBjb250YWluc09i
amVjdDp1c2VyZmFjaW5nRW5kb3dtZW50XSwKKyAgICAgICAgW2VuZG93bWVudHMgY29udGFpbnNP
YmplY3Q6dmlzaWJpbGl0eUVuZG93bWVudF0KKyAgICB9OworfQorCiBib29sIEVuZG93bWVudFN0
YXRlVHJhY2tlcjo6aXNBcHBsaWNhdGlvbkZvcmVncm91bmQocGlkX3QgcGlkKQogewogICAgIHJl
dHVybiBbZW5kb3dtZW50c0ZvckhhbmRsZShoYW5kbGVGb3JQSUQocGlkKSkgY29udGFpbnNPYmpl
Y3Q6dmlzaWJpbGl0eUVuZG93bWVudF07CkBAIC04MywyOCArOTEsMjEgQEAgRW5kb3dtZW50U3Rh
dGVUcmFja2VyJiBFbmRvd21lbnRTdGF0ZVRyYWNrZXI6OnNpbmdsZXRvbigpCiAgICAgcmV0dXJu
IHRyYWNrZXI7CiB9CiAKLUVuZG93bWVudFN0YXRlVHJhY2tlcjo6RW5kb3dtZW50U3RhdGVUcmFj
a2VyKCkKK3ZvaWQgRW5kb3dtZW50U3RhdGVUcmFja2VyOjpyZWdpc3Rlck1vbml0b3JJZk5lY2Vz
c2FyeSgpCiB7Ci0gICAgYXV0byBwcm9jZXNzSGFuZGxlID0gW1JCU1Byb2Nlc3NIYW5kbGUgY3Vy
cmVudFByb2Nlc3NdOwotICAgIGF1dG8gZW5kb3dtZW50TmFtZXNwYWNlcyA9IGVuZG93bWVudHNG
b3JIYW5kbGUocHJvY2Vzc0hhbmRsZSk7Ci0KLSAgICBtX2lzVXNlckZhY2luZyA9IFtlbmRvd21l
bnROYW1lc3BhY2VzIGNvbnRhaW5zT2JqZWN0OnVzZXJmYWNpbmdFbmRvd21lbnRdOwotICAgIG1f
aXNWaXNpYmxlID0gW2VuZG93bWVudE5hbWVzcGFjZXMgY29udGFpbnNPYmplY3Q6dmlzaWJpbGl0
eUVuZG93bWVudF07Ci0KLSAgICBtX3Byb2Nlc3NNb25pdG9yID0gW1JCU1Byb2Nlc3NNb25pdG9y
IG1vbml0b3JXaXRoQ29uZmlndXJhdGlvbjpbdGhpcywgcHJvY2Vzc0hhbmRsZSA9IHJldGFpblB0
cihwcm9jZXNzSGFuZGxlKV0gKGlkPFJCU1Byb2Nlc3NNb25pdG9yQ29uZmlndXJpbmc+IGNvbmZp
ZykgeworICAgIGlmIChtX3Byb2Nlc3NNb25pdG9yKQorICAgICAgICByZXR1cm47CiAKLSAgICAg
ICAgUkJTUHJvY2Vzc1ByZWRpY2F0ZSAqcHJvY2Vzc1ByZWRpY2F0ZSA9IFtSQlNQcm9jZXNzUHJl
ZGljYXRlIHByZWRpY2F0ZU1hdGNoaW5nSGFuZGxlOnByb2Nlc3NIYW5kbGUuZ2V0KCldOworICAg
IG1fcHJvY2Vzc01vbml0b3IgPSBbUkJTUHJvY2Vzc01vbml0b3IgbW9uaXRvcldpdGhDb25maWd1
cmF0aW9uOlt0aGlzXSAoaWQ8UkJTUHJvY2Vzc01vbml0b3JDb25maWd1cmluZz4gY29uZmlnKSB7
CisgICAgICAgIFtjb25maWcgc2V0UHJlZGljYXRlczpAW1tSQlNQcm9jZXNzUHJlZGljYXRlIHBy
ZWRpY2F0ZU1hdGNoaW5nSGFuZGxlOltSQlNQcm9jZXNzSGFuZGxlIGN1cnJlbnRQcm9jZXNzXV1d
XTsKIAogICAgICAgICBSQlNQcm9jZXNzU3RhdGVEZXNjcmlwdG9yICpzdGF0ZURlc2NyaXB0b3Ig
PSBbUkJTUHJvY2Vzc1N0YXRlRGVzY3JpcHRvciBkZXNjcmlwdG9yXTsKICAgICAgICAgc3RhdGVE
ZXNjcmlwdG9yLmVuZG93bWVudE5hbWVzcGFjZXMgPSBAW3Zpc2liaWxpdHlFbmRvd21lbnQsIHVz
ZXJmYWNpbmdFbmRvd21lbnRdOwotCi0gICAgICAgIFtjb25maWcgc2V0UHJlZGljYXRlczpAW3By
b2Nlc3NQcmVkaWNhdGVdXTsKICAgICAgICAgW2NvbmZpZyBzZXRTdGF0ZURlc2NyaXB0b3I6c3Rh
dGVEZXNjcmlwdG9yXTsKIAogICAgICAgICBbY29uZmlnIHNldFVwZGF0ZUhhbmRsZXI6W3RoaXNd
IChSQlNQcm9jZXNzTW9uaXRvciAqIF9Ob25udWxsIG1vbml0b3IsIFJCU1Byb2Nlc3NIYW5kbGUg
KiBfTm9ubnVsbCBwcm9jZXNzLCBSQlNQcm9jZXNzU3RhdGVVcGRhdGUgKiBfTm9ubnVsbCB1cGRh
dGUpIG11dGFibGUgewotICAgICAgICAgICAgZGlzcGF0Y2hfYXN5bmMoZGlzcGF0Y2hfZ2V0X21h
aW5fcXVldWUoKSwgW3RoaXMsIGVuZG93bWVudE5hbWVzcGFjZXMgPSByZXRhaW5QdHIodXBkYXRl
LnN0YXRlLmVuZG93bWVudE5hbWVzcGFjZXMpXSB7Ci0gICAgICAgICAgICAgICAgc2V0SXNVc2Vy
RmFjaW5nKFtlbmRvd21lbnROYW1lc3BhY2VzIGNvbnRhaW5zT2JqZWN0OnVzZXJmYWNpbmdFbmRv
d21lbnRdKTsKLSAgICAgICAgICAgICAgICBzZXRJc1Zpc2libGUoW2VuZG93bWVudE5hbWVzcGFj
ZXMgY29udGFpbnNPYmplY3Q6dmlzaWJpbGl0eUVuZG93bWVudF0pOworICAgICAgICAgICAgZGlz
cGF0Y2hfYXN5bmMoZGlzcGF0Y2hfZ2V0X21haW5fcXVldWUoKSwgW3RoaXMsIHN0YXRlID0gc3Rh
dGVGcm9tRW5kb3dtZW50cyh1cGRhdGUuc3RhdGUuZW5kb3dtZW50TmFtZXNwYWNlcyldKCkgbXV0
YWJsZSB7CisgICAgICAgICAgICAgICAgc2V0U3RhdGUoV1RGTW92ZShzdGF0ZSkpOwogICAgICAg
ICAgICAgfSk7CiAgICAgICAgIH1dOwogICAgIH1dOwpAQCAtMTEzLDYgKzExNCw3IEBAIEVuZG93
bWVudFN0YXRlVHJhY2tlcjo6RW5kb3dtZW50U3RhdGVUcmFja2VyKCkKIHZvaWQgRW5kb3dtZW50
U3RhdGVUcmFja2VyOjphZGRDbGllbnQoQ2xpZW50JiBjbGllbnQpCiB7CiAgICAgbV9jbGllbnRz
LmFkZChjbGllbnQpOworICAgIHJlZ2lzdGVyTW9uaXRvcklmTmVjZXNzYXJ5KCk7CiB9CiAKIHZv
aWQgRW5kb3dtZW50U3RhdGVUcmFja2VyOjpyZW1vdmVDbGllbnQoQ2xpZW50JiBjbGllbnQpCkBA
IC0xMjAsMzEgKzEyMiwyOSBAQCB2b2lkIEVuZG93bWVudFN0YXRlVHJhY2tlcjo6cmVtb3ZlQ2xp
ZW50KENsaWVudCYgY2xpZW50KQogICAgIG1fY2xpZW50cy5yZW1vdmUoY2xpZW50KTsKIH0KIAot
dm9pZCBFbmRvd21lbnRTdGF0ZVRyYWNrZXI6OnNldElzVXNlckZhY2luZyhib29sIGlzVXNlckZh
Y2luZykKK2F1dG8gRW5kb3dtZW50U3RhdGVUcmFja2VyOjplbnN1cmVTdGF0ZSgpIGNvbnN0IC0+
IGNvbnN0IFN0YXRlJgogewotICAgIGlmIChtX2lzVXNlckZhY2luZyA9PSBpc1VzZXJGYWNpbmcp
Ci0gICAgICAgIHJldHVybjsKLSAgICBtX2lzVXNlckZhY2luZyA9IGlzVXNlckZhY2luZzsKLQot
ICAgIFJFTEVBU0VfTE9HKFZpZXdTdGF0ZSwgIiVwIC0gRW5kb3dtZW50U3RhdGVUcmFja2VyOjpz
ZXRJc1VzZXJGYWNpbmcoJXtwdWJsaWN9cykiLCB0aGlzLCBpc1VzZXJGYWNpbmcgPyAidHJ1ZSIg
OiAiZmFsc2UiKTsKLQotICAgIGZvciAoYXV0byYgY2xpZW50IDogY29weVRvVmVjdG9yKG1fY2xp
ZW50cykpIHsKLSAgICAgICAgaWYgKGNsaWVudCkKLSAgICAgICAgICAgIGNsaWVudC0+aXNVc2Vy
RmFjaW5nQ2hhbmdlZChtX2lzVXNlckZhY2luZyk7Ci0gICAgfQorICAgIGlmICghbV9zdGF0ZSkK
KyAgICAgICAgbV9zdGF0ZSA9IHN0YXRlRnJvbUVuZG93bWVudHMoZW5kb3dtZW50c0ZvckhhbmRs
ZShbUkJTUHJvY2Vzc0hhbmRsZSBjdXJyZW50UHJvY2Vzc10pKTsKKyAgICByZXR1cm4gKm1fc3Rh
dGU7CiB9CiAKLXZvaWQgRW5kb3dtZW50U3RhdGVUcmFja2VyOjpzZXRJc1Zpc2libGUoYm9vbCBp
c1Zpc2libGUpCit2b2lkIEVuZG93bWVudFN0YXRlVHJhY2tlcjo6c2V0U3RhdGUoU3RhdGUmJiBz
dGF0ZSkKIHsKLSAgICBpZiAobV9pc1Zpc2libGUgPT0gaXNWaXNpYmxlKQorICAgIGJvb2wgaXNV
c2VyRmFjaW5nQ2hhbmdlZCA9ICFtX3N0YXRlIHx8IG1fc3RhdGUtPmlzVXNlckZhY2luZyAhPSBz
dGF0ZS5pc1VzZXJGYWNpbmc7CisgICAgYm9vbCBpc1Zpc2libGVDaGFuZ2VkID0gIW1fc3RhdGUg
fHwgbV9zdGF0ZS0+aXNWaXNpYmxlICE9IHN0YXRlLmlzVmlzaWJsZTsKKyAgICBpZiAoIWlzVXNl
ckZhY2luZ0NoYW5nZWQgJiYgIWlzVmlzaWJsZUNoYW5nZWQpCiAgICAgICAgIHJldHVybjsKLSAg
ICBtX2lzVmlzaWJsZSA9IGlzVmlzaWJsZTsKIAotICAgIFJFTEVBU0VfTE9HKFZpZXdTdGF0ZSwg
IiVwIC0gRW5kb3dtZW50U3RhdGVUcmFja2VyOjpzZXRJc1Zpc2libGUoJXtwdWJsaWN9cykiLCB0
aGlzLCBpc1Zpc2libGUgPyAidHJ1ZSIgOiAiZmFsc2UiKTsKKyAgICBtX3N0YXRlID0gV1RGTW92
ZShzdGF0ZSk7CisKKyAgICBSRUxFQVNFX0xPRyhWaWV3U3RhdGUsICIlcCAtIEVuZG93bWVudFN0
YXRlVHJhY2tlcjo6c2V0U3RhdGUoKSBpc1VzZXJGYWNpbmc6ICV7cHVibGljfXMgaXNWaXNpYmxl
OiAle3B1YmxpY31zIiwgdGhpcywgbV9zdGF0ZS0+aXNVc2VyRmFjaW5nID8gInRydWUiIDogImZh
bHNlIiwgbV9zdGF0ZS0+aXNWaXNpYmxlID8gInRydWUiIDogImZhbHNlIik7CiAKICAgICBmb3Ig
KGF1dG8mIGNsaWVudCA6IGNvcHlUb1ZlY3RvcihtX2NsaWVudHMpKSB7Ci0gICAgICAgIGlmIChj
bGllbnQpCi0gICAgICAgICAgICBjbGllbnQtPmlzVmlzaWJsZUNoYW5nZWQobV9pc1Zpc2libGUp
OworICAgICAgICBpZiAoaXNVc2VyRmFjaW5nQ2hhbmdlZCAmJiBjbGllbnQpCisgICAgICAgICAg
ICBjbGllbnQtPmlzVXNlckZhY2luZ0NoYW5nZWQobV9zdGF0ZS0+aXNVc2VyRmFjaW5nKTsKKyAg
ICAgICAgaWYgKGlzVmlzaWJsZUNoYW5nZWQgJiYgY2xpZW50KQorICAgICAgICAgICAgY2xpZW50
LT5pc1Zpc2libGVDaGFuZ2VkKG1fc3RhdGUtPmlzVmlzaWJsZSk7CiAgICAgfQogfQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwIGIvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAppbmRleCAwNzcwYjEzMWExMGNjNmQz
OTQxM2NhODA1YjJhMGUxNzM1ZDM4OGY3Li5iM2Y2YmJiNGQyZjk3MzQzN2M1MWRiNGEzYWFhNmQ5
Njk5ZGZkOTBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJv
eHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKQEAg
LTUzMiw4ICs1MzIsNiBAQCBXZWJQYWdlUHJveHk6OldlYlBhZ2VQcm94eShQYWdlQ2xpZW50JiBw
YWdlQ2xpZW50LCBXZWJQcm9jZXNzUHJveHkmIHByb2Nlc3MsIFJlZgogICAgIAogICAgIGlmICht
X2NvbmZpZ3VyYXRpb24tPnByZWZlcmVuY2VzKCktPnNlcnZpY2VXb3JrZXJFbnRpdGxlbWVudERp
c2FibGVkRm9yVGVzdGluZygpKQogICAgICAgICBkaXNhYmxlU2VydmljZVdvcmtlckVudGl0bGVt
ZW50SW5OZXR3b3JrUHJvY2VzcygpOwotCi0gICAgRW5kb3dtZW50U3RhdGVUcmFja2VyOjpzaW5n
bGV0b24oKS5hZGRDbGllbnQoKnRoaXMpOwogI2VuZGlmCiAKICNpZiBQTEFURk9STShDT0NPQSkK
QEAgLTU3Niw3ICs1NzQsNyBAQCBXZWJQYWdlUHJveHk6On5XZWJQYWdlUHJveHkoKQogICAgIHdl
YlBhZ2VQcm94eUNvdW50ZXIuZGVjcmVtZW50KCk7CiAjZW5kaWYKIAotI2lmIFBMQVRGT1JNKElP
U19GQU1JTFkpCisjaWYgUExBVEZPUk0oTUFDQ0FUQUxZU1QpCiAgICAgRW5kb3dtZW50U3RhdGVU
cmFja2VyOjpzaW5nbGV0b24oKS5yZW1vdmVDbGllbnQoKnRoaXMpOwogI2VuZGlmCiB9CkBAIC04
OTM4LDYgKzg5MzYsMTYgQEAgdm9pZCBXZWJQYWdlUHJveHk6OnVwZGF0ZVBsYXlpbmdNZWRpYURp
ZENoYW5nZShNZWRpYVByb2R1Y2VyOjpNZWRpYVN0YXRlRmxhZ3MgbmUKICAgICBpZiAobmV3U3Rh
dGUgPT0gbV9tZWRpYVN0YXRlKQogICAgICAgICByZXR1cm47CiAKKyNpZiBQTEFURk9STShNQUND
QVRBTFlTVCkKKyAgICAvLyBXaGVuIHRoZSBwYWdlIHN0YXJ0cyBwbGF5aW5nIG1lZGlhIGZvciB0
aGUgZmlyc3QgdGltZSwgbWFrZSBzdXJlIHdlIHJlZ2lzdGVyIHdpdGgKKyAgICAvLyB0aGUgRW5k
b3dtZW50U3RhdGVUcmFja2VyIHRvIGdldCBub3RpZmljYXRpb25zIHdoZW4gdGhlIGFwcGxpY2F0
aW9uIGlzIG5vIGxvbmdlcgorICAgIC8vIHVzZXItZmFjaW5nLCBzbyB0aGF0IHdlIGNhbiBhcHBy
b3ByaWF0ZWx5IHN1c3BlbmQgYWxsIG1lZGlhIHBsYXliYWNrLgorICAgIGlmICghbV9pc0xpc3Rl
bmluZ0ZvclVzZXJGYWNpbmdTdGF0ZUNoYW5nZU5vdGlmaWNhdGlvbikgeworICAgICAgICBFbmRv
d21lbnRTdGF0ZVRyYWNrZXI6OnNpbmdsZXRvbigpLmFkZENsaWVudCgqdGhpcyk7CisgICAgICAg
IG1faXNMaXN0ZW5pbmdGb3JVc2VyRmFjaW5nU3RhdGVDaGFuZ2VOb3RpZmljYXRpb24gPSB0cnVl
OworICAgIH0KKyNlbmRpZgorCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICBXZWJDb3Jl
OjpNZWRpYVByb2R1Y2VyOjpNZWRpYVN0YXRlRmxhZ3Mgb2xkTWVkaWFDYXB0dXJlU3RhdGUgPSBt
X21lZGlhU3RhdGUgJiBXZWJDb3JlOjpNZWRpYVByb2R1Y2VyOjpNZWRpYUNhcHR1cmVNYXNrOwog
ICAgIFdlYkNvcmU6Ok1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFncyBuZXdNZWRpYUNhcHR1
cmVTdGF0ZSA9IG5ld1N0YXRlICYgV2ViQ29yZTo6TWVkaWFQcm9kdWNlcjo6TWVkaWFDYXB0dXJl
TWFzazsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5o
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKaW5kZXggNDA4NjhmZTEx
NjhmNWIxYzg1YmU5M2UyMjRkZTI3OWY0ZjRhYzZhMi4uNmFjMDc1NjEwNjM5NDQzMWNkYjMwYmNk
NTNjNTQyZTUxNDk2MTkwNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
UGFnZVByb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgK
QEAgLTEyMSwxMSArMTIxLDE0IEBACiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAK
ICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQotI2luY2x1ZGUgIkVuZG93bWVudFN0YXRlVHJhY2tl
ci5oIgogI2luY2x1ZGUgIkdlc3R1cmVUeXBlcy5oIgogI2luY2x1ZGUgIldlYkF1dG9jb3JyZWN0
aW9uQ29udGV4dC5oIgogI2VuZGlmCiAKKyNpZiBQTEFURk9STShNQUNDQVRBTFlTVCkKKyNpbmNs
dWRlICJFbmRvd21lbnRTdGF0ZVRyYWNrZXIuaCIKKyNlbmRpZgorCiBPQkpDX0NMQVNTIE5TVmll
dzsKIE9CSkNfQ0xBU1MgX1dLUmVtb3RlT2JqZWN0UmVnaXN0cnk7CiAKQEAgLTQzNCw3ICs0Mzcs
NyBAQCBjbGFzcyBXZWJQYWdlUHJveHkgOiBwdWJsaWMgQVBJOjpPYmplY3RJbXBsPEFQSTo6T2Jq
ZWN0OjpUeXBlOjpQYWdlPgogICAgICwgcHVibGljIFdlYkNvcmU6OlBsYXRmb3JtU3BlZWNoU3lu
dGhlc2lzVXR0ZXJhbmNlQ2xpZW50CiAgICAgLCBwdWJsaWMgV2ViQ29yZTo6UGxhdGZvcm1TcGVl
Y2hTeW50aGVzaXplckNsaWVudAogI2VuZGlmCi0jaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyNp
ZiBQTEFURk9STShNQUNDQVRBTFlTVCkKICAgICAsIHB1YmxpYyBFbmRvd21lbnRTdGF0ZVRyYWNr
ZXI6OkNsaWVudAogI2Vsc2UKICAgICAsIHB1YmxpYyBDYW5NYWtlV2Vha1B0cjxXZWJQYWdlUHJv
eHk+CkBAIC0xMTg4LDggKzExOTEsOSBAQCBwdWJsaWM6CiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlM
WSkKICAgICB2b2lkIHByb2Nlc3NXaWxsQmVjb21lU3VzcGVuZGVkKCk7CiAgICAgdm9pZCBwcm9j
ZXNzV2lsbEJlY29tZUZvcmVncm91bmQoKTsKKyNlbmRpZgorI2lmIFBMQVRGT1JNKE1BQ0NBVEFM
WVNUKQogICAgIHZvaWQgaXNVc2VyRmFjaW5nQ2hhbmdlZChib29sKSBmaW5hbDsKLSAgICB2b2lk
IGlzVmlzaWJsZUNoYW5nZWQoYm9vbCkgZmluYWw7CiAjZW5kaWYKIAogI2lmIEhBVkUoVklTSUJJ
TElUWV9QUk9QQUdBVElPTl9WSUVXKQpAQCAtMjQ3Miw2ICsyNDc2LDkgQEAgcHJpdmF0ZToKIAog
ICAgIE9wdGlvblNldDxXZWJDb3JlOjpBY3Rpdml0eVN0YXRlOjpGbGFnPiBtX2FjdGl2aXR5U3Rh
dGU7CiAgICAgYm9vbCBtX3ZpZXdXYXNFdmVySW5XaW5kb3cgeyBmYWxzZSB9OworI2lmIFBMQVRG
T1JNKE1BQ0NBVEFMWVNUKQorICAgIGJvb2wgbV9pc0xpc3RlbmluZ0ZvclVzZXJGYWNpbmdTdGF0
ZUNoYW5nZU5vdGlmaWNhdGlvbiB7IGZhbHNlIH07CisjZW5kaWYKICNpZiBQTEFURk9STShJT1Nf
RkFNSUxZKQogICAgIGJvb2wgbV9hbGxvd3NNZWRpYURvY3VtZW50SW5saW5lUGxheWJhY2sgeyBm
YWxzZSB9OwogICAgIHN0ZDo6dW5pcXVlX3B0cjxQcm9jZXNzVGhyb3R0bGVyOjpGb3JlZ3JvdW5k
QWN0aXZpdHk+IG1faXNWaXNpYmxlQWN0aXZpdHk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9pb3MvV2ViUGFnZVByb3h5SU9TLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvaW9zL1dlYlBhZ2VQcm94eUlPUy5tbQppbmRleCA3MjRiODUzNzk0Y2YzN2YyNDUzZDI1MDUx
ZmMyODc0OTNhMzM5MjE5Li5kMTU5YzQ5ZGMyMWJiYTc4MzMwYTUwMzk4MjhhMDYyZmRlYmZkMjBi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV2ViUGFnZVByb3h5SU9T
Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XZWJQYWdlUHJveHlJT1MubW0K
QEAgLTE2MjQsMjIgKzE2MjQsMTUgQEAgdm9pZCBXZWJQYWdlUHJveHk6OnByb2Nlc3NXaWxsQmVj
b21lRm9yZWdyb3VuZCgpCiAgICAgfQogfQogCisjaWYgUExBVEZPUk0oTUFDQ0FUQUxZU1QpCiB2
b2lkIFdlYlBhZ2VQcm94eTo6aXNVc2VyRmFjaW5nQ2hhbmdlZChib29sIGlzVXNlckZhY2luZykK
IHsKLSNpZiBQTEFURk9STShNQUNDQVRBTFlTVCkKICAgICBpZiAoIWlzVXNlckZhY2luZykKICAg
ICAgICAgc3VzcGVuZEFsbE1lZGlhUGxheWJhY2soKTsKICAgICBlbHNlCiAgICAgICAgIHJlc3Vt
ZUFsbE1lZGlhUGxheWJhY2soKTsKLSNlbHNlCi0gICAgVU5VU0VEX1BBUkFNKGlzVXNlckZhY2lu
Zyk7Ci0jZW5kaWYKLX0KLQotdm9pZCBXZWJQYWdlUHJveHk6OmlzVmlzaWJsZUNoYW5nZWQoYm9v
bCBpc1Zpc2libGUpCi17Ci0gICAgVU5VU0VEX1BBUkFNKGlzVmlzaWJsZSk7CiB9CisjZW5kaWYK
IAogI2lmIFBMQVRGT1JNKElPUykKIHZvaWQgV2ViUGFnZVByb3h5OjpncmFudEFjY2Vzc1RvQXNz
ZXRTZXJ2aWNlcygpCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>405743</attachid>
            <date>2020-07-31 14:51:37 -0700</date>
            <delta_ts>2020-07-31 15:23:58 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215029-20200731145136.patch</filename>
            <type>text/plain</type>
            <size>14172</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY1MTU5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDZmYzRlZDY5ZjljOTlhNmE0
MTY0ZmFlNTViMzdmZmY0OTIzOTVjZDAuLmMxM2VkOWM3YmZlNzcyOGMxYjYxYmZkYmViNTdmMzMx
NTM0YjI3YTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDUgQEAKKzIwMjAtMDctMzEgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBMYXVuY2ggdGltZSByZWdyZXNzaW9u
IGR1ZSB0byBFbmRvd21lbnRTdGF0ZVRyYWNrZXIgaW5pdGlhbGl6YXRpb24gaW4gV2ViUGFnZVBy
b3h5IGNvbnN0cnVjdG9yCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMTUwMjkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzY2MzYyMzMzPgorCisgICAg
ICAgIFJldmlld2VkIGJ5IEdlb2ZmcmV5IEdhcmVuLgorCisgICAgICAgIEVuZG93bWVudFN0YXRl
VHJhY2tlciB3YXMgZXhwZW5zaXZlIGFuZCBpbiBhIGNyaXRpY2FsIGNvZGUgcGF0aCBkdXJpbmcg
TW9iaWxlU2FmYXJpIGFwcCBsYXVuY2guIFNpbmNlCisgICAgICAgIHRoaXMgY29kZSBpcyBuZXcs
IHRoaXMgd2FzIGEgbmV0IGFwcCBsYXVuY2ggdGltZSByZWdyZXNzaW9uLiBUbyBhZGRyZXNzIHRo
ZSByZWdyZXNzaW9uLCB0aGUgZm9sbG93aW5nCisgICAgICAgIGNoYW5nZXMgd2VyZSBtYWRlOgor
ICAgICAgICAxLiBXZSBvbmx5IG5lZWQgdGhlIEVuZG93bWVudFN0YXRlVHJhY2tlciB0byBtb25p
dG9yIGlmIHRoZSBhcHAgaXMgdXNlci1mYWNpbmcgb3Igbm90LCBzbyB0aGF0IHdlIGNhbgorICAg
ICAgICAgICBzdXNwZW5kIC8gcmVzdW1lIG1lZGlhIHBsYXliYWNrIGFzIG5lZWRlZC4gQXMgYSBy
ZXN1bHQsIGl0IGlzIHVubmVjZXNzYXJ5IHRvIHN0YXJ0IG1vbml0b3JpbmcKKyAgICAgICAgICAg
dXNlci1mYWNpbmcgc3RhdGUgY2hhbmdlcyBhcyBzb29uIGFzIHRoZSBXZWJQYWdlUHJveHkgaXMg
Y29uc3RydWN0ZWQuIEluc3RlYWQsIHdlIG5vdyB3YWl0IHVudGlsCisgICAgICAgICAgIG1lZGlh
IHBsYXlzIG9uIHRoZSBwYWdlIGZvciB0aGUgZmlyc3QgdGltZS4KKyAgICAgICAgMi4gSXQgdHVy
bnMgb3V0IHRoYXQgb3ZlciA3MCUgb2YgQ1BVIHRpbWUgaW4gdGhlIEVuZG93bWVudFN0YXRlVHJh
Y2tlciBjb25zdHJ1Y3RvciB3YXMgc3BlbnQgZ2V0dGluZworICAgICAgICAgICB0aGUgY3VycmVu
dCBlbmRvd25tZW50IGZvciB0aGUgcHJvY2Vzcy4gQXMgYSByZXN1bHQsIEkgdXBkYXRlZCB0aGUg
Y29kZSB0byBsYXp5IHBvcHVsYXRlIHRob3NlCisgICAgICAgICAgIHVudGlsIHRoZXkgYXJlIHJl
cXVlc3RlZCBmb3IgdGhlIGZpcnN0IHRpbWUuCisgICAgICAgIDMuIFRoZSByZW1haW5pbmcgMzAl
IG9mIENQVSB0aW1lIGluIHRoZSBFbmRvd21lbnRTdGF0ZVRyYWNrZXIgY29uc3RydWN0b3Igd2Fz
IHNwZW50IGNvbnN0cnVjdGluZyB0aGUKKyAgICAgICAgICAgUkJTUHJvY2Vzc01vbml0b3IuIEkg
bW92ZWQgdGhlIGluaXRpYWxpemF0aW9uIG9mIHRoZSBSQlNQcm9jZXNzTW9uaXRvciBmcm9tIHRo
ZSBjb25zdHJ1Y3RvciB0bworICAgICAgICAgICBFbmRvd21lbnRTdGF0ZVRyYWNrZXI6OmFkZENs
aWVudCgpIHNvIHRoYXQgd2Ugb25seSBjb25zdHJ1Y3QgYSBtb25pdG9yIHdoZW4gd2UgYWN0dWFs
bHkgaGF2ZSBvdXIKKyAgICAgICAgICAgZmlyc3QgY2xpZW50LgorICAgICAgICA0LiBBbGwgdGhp
cyBjb2RlIHdhcyBhY3R1YWxseSBvbmx5IHVzZWZ1bCBmb3IgQ2F0YWx5c3QgYXBwIGFuZCB3YXMg
dGhlcmVmb3JlIGRvaW5nIHdvcmsgb24gaU9TIGZvciBubworICAgICAgICAgICByZWFzb24uIEkg
cHJvcGVybHkgI2lmZGVmJ2Qgb3V0IHRoaXMgY29kZSBzbyB0aGF0IGl0IG5vdyBvbmx5IGFwcGxp
ZXMgdG8gQ2F0YWx5c3QgYXBwcy4KKworICAgICAgICAqIFVJUHJvY2Vzcy9FbmRvd21lbnRTdGF0
ZVRyYWNrZXIuaDoKKyAgICAgICAgKFdlYktpdDo6RW5kb3dtZW50U3RhdGVUcmFja2VyOjppc1Zp
c2libGUgY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpFbmRvd21lbnRTdGF0ZVRyYWNrZXI6Omlz
VXNlckZhY2luZyBjb25zdCk6CisgICAgICAgICogVUlQcm9jZXNzL0VuZG93bWVudFN0YXRlVHJh
Y2tlci5tbToKKyAgICAgICAgKFdlYktpdDo6RW5kb3dtZW50U3RhdGVUcmFja2VyOjpzdGF0ZUZy
b21FbmRvd21lbnRzKToKKyAgICAgICAgKFdlYktpdDo6RW5kb3dtZW50U3RhdGVUcmFja2VyOjpy
ZWdpc3Rlck1vbml0b3JJZk5lY2Vzc2FyeSk6CisgICAgICAgIChXZWJLaXQ6OkVuZG93bWVudFN0
YXRlVHJhY2tlcjo6YWRkQ2xpZW50KToKKyAgICAgICAgKFdlYktpdDo6RW5kb3dtZW50U3RhdGVU
cmFja2VyOjplbnN1cmVTdGF0ZSBjb25zdCBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6OkVuZG93
bWVudFN0YXRlVHJhY2tlcjo6c2V0U3RhdGUpOgorICAgICAgICAoV2ViS2l0OjpFbmRvd21lbnRT
dGF0ZVRyYWNrZXI6OkVuZG93bWVudFN0YXRlVHJhY2tlcik6IERlbGV0ZWQuCisgICAgICAgIChX
ZWJLaXQ6OkVuZG93bWVudFN0YXRlVHJhY2tlcjo6c2V0SXNVc2VyRmFjaW5nKTogRGVsZXRlZC4K
KyAgICAgICAgKFdlYktpdDo6RW5kb3dtZW50U3RhdGVUcmFja2VyOjpzZXRJc1Zpc2libGUpOiBE
ZWxldGVkLgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwOgorICAgICAgICAo
V2ViS2l0OjptX3RyYW5zY29kaW5nUXVldWUpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJv
eHk6OnVwZGF0ZVBsYXlpbmdNZWRpYURpZENoYW5nZSk6CisgICAgICAgICogVUlQcm9jZXNzL1dl
YlBhZ2VQcm94eS5oOgorCiAyMDIwLTA3LTMxICBKaWV3ZW4gVGFuICA8amlld2VuX3RhbkBhcHBs
ZS5jb20+CiAKICAgICAgICAgU09BdXRob3JpemF0aW9uU2Vzc2lvbjo6ZGlzbWlzc1ZpZXdDb250
cm9sbGVyIGNvdWxkIGNyYXNoIG9uIGNhbGxpbmcgV2ViUGFnZVByb3h5OjpwbGF0Zm9ybVdpbmRv
dwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvRW5kb3dtZW50U3RhdGVUcmFj
a2VyLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9FbmRvd21lbnRTdGF0ZVRyYWNrZXIuaApp
bmRleCAyMjE5YTU4ODNlNDIxY2I4ZmQ5NGQ5NGRjNDc5YTY3ZTI3ODViZWJlLi4wYWM0N2JkMzE0
YTk4YmJjYzUwZjZlMmJjZGQ5Yjc4ODFiZGI5ZmQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9FbmRvd21lbnRTdGF0ZVRyYWNrZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9FbmRvd21lbnRTdGF0ZVRyYWNrZXIuaApAQCAtMzAsNiArMzAsNyBAQAogI2ltcG9y
dCA8d3RmL1JldGFpblB0ci5oPgogI2ltcG9ydCA8d3RmL1dlYWtIYXNoU2V0Lmg+CiAKK09CSkNf
Q0xBU1MgTlNTZXQ7CiBPQkpDX0NMQVNTIFJCU1Byb2Nlc3NNb25pdG9yOwogCiBuYW1lc3BhY2Ug
V2ViS2l0IHsKQEAgLTQwLDcgKzQxLDYgQEAgY2xhc3MgRW5kb3dtZW50U3RhdGVUcmFja2VyIHsK
ICAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKICAgICBzdGF0aWMgRW5kb3dt
ZW50U3RhdGVUcmFja2VyJiBzaW5nbGV0b24oKTsKLSAgICB+RW5kb3dtZW50U3RhdGVUcmFja2Vy
KCk7CiAKICAgICBjbGFzcyBDbGllbnQgOiBwdWJsaWMgQ2FuTWFrZVdlYWtQdHI8Q2xpZW50PiB7
CiAgICAgcHVibGljOgpAQCAtNDksOCArNDksOCBAQCBwdWJsaWM6CiAgICAgICAgIHZpcnR1YWwg
dm9pZCBpc1Zpc2libGVDaGFuZ2VkKGJvb2wpIHsgfQogICAgIH07CiAKLSAgICBib29sIGlzVmlz
aWJsZSgpIGNvbnN0IHsgcmV0dXJuIG1faXNWaXNpYmxlOyB9Ci0gICAgYm9vbCBpc1VzZXJGYWNp
bmcoKSBjb25zdCB7IHJldHVybiBtX2lzVXNlckZhY2luZzsgfQorICAgIGJvb2wgaXNWaXNpYmxl
KCkgY29uc3QgeyByZXR1cm4gZW5zdXJlU3RhdGUoKS5pc1Zpc2libGU7IH0KKyAgICBib29sIGlz
VXNlckZhY2luZygpIGNvbnN0IHsgcmV0dXJuIGVuc3VyZVN0YXRlKCkuaXNVc2VyRmFjaW5nOyB9
CiAKICAgICB2b2lkIGFkZENsaWVudChDbGllbnQmKTsKICAgICB2b2lkIHJlbW92ZUNsaWVudChD
bGllbnQmKTsKQEAgLTU5LDE0ICs1OSwyMSBAQCBwdWJsaWM6CiAKIHByaXZhdGU6CiAgICAgZnJp
ZW5kIGNsYXNzIE5ldmVyRGVzdHJveWVkPEVuZG93bWVudFN0YXRlVHJhY2tlcj47Ci0gICAgRW5k
b3dtZW50U3RhdGVUcmFja2VyKCk7Ci0gICAgdm9pZCBzZXRJc1VzZXJGYWNpbmcoYm9vbCk7Ci0g
ICAgdm9pZCBzZXRJc1Zpc2libGUoYm9vbCk7CisgICAgRW5kb3dtZW50U3RhdGVUcmFja2VyKCkg
PSBkZWZhdWx0OworCisgICAgdm9pZCByZWdpc3Rlck1vbml0b3JJZk5lY2Vzc2FyeSgpOworCisg
ICAgc3RydWN0IFN0YXRlIHsKKyAgICAgICAgYm9vbCBpc1VzZXJGYWNpbmc7CisgICAgICAgIGJv
b2wgaXNWaXNpYmxlOworICAgIH07CisgICAgc3RhdGljIFN0YXRlIHN0YXRlRnJvbUVuZG93bWVu
dHMoTlNTZXQgKmVuZG93bWVudHMpOworICAgIGNvbnN0IFN0YXRlJiBlbnN1cmVTdGF0ZSgpIGNv
bnN0OworICAgIHZvaWQgc2V0U3RhdGUoU3RhdGUmJik7CiAKICAgICBXZWFrSGFzaFNldDxDbGll
bnQ+IG1fY2xpZW50czsKICAgICBSZXRhaW5QdHI8UkJTUHJvY2Vzc01vbml0b3I+IG1fcHJvY2Vz
c01vbml0b3I7Ci0gICAgYm9vbCBtX2lzVXNlckZhY2luZzsKLSAgICBib29sIG1faXNWaXNpYmxl
OworICAgIG11dGFibGUgT3B0aW9uYWw8U3RhdGU+IG1fc3RhdGU7CiB9OwogCiB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9FbmRvd21lbnRTdGF0ZVRyYWNrZXIubW0gYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9FbmRvd21lbnRTdGF0ZVRyYWNrZXIubW0KaW5kZXggZjI4
M2E4NmE5OGNkYjhjNDI1ZDg1ZTYwMDE3OGRiMDdhMjJhMjY0ZC4uZDZkNWNmMmMyNmY4MTA0NjM4
MTE3YzY2NjBjMDQ2YzE3OGU2N2MzMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvRW5kb3dtZW50U3RhdGVUcmFja2VyLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L0VuZG93bWVudFN0YXRlVHJhY2tlci5tbQpAQCAtNzIsNiArNzIsMTQgQEAgc3RhdGljIE5TU2V0
PE5TU3RyaW5nICo+ICplbmRvd21lbnRzRm9ySGFuZGxlKFJCU1Byb2Nlc3NIYW5kbGUgKnByb2Nl
c3NIYW5kbGUpCiAgICAgcmV0dXJuIFtzdGF0ZSBlbmRvd21lbnROYW1lc3BhY2VzXTsKIH0KIAor
aW5saW5lIGF1dG8gRW5kb3dtZW50U3RhdGVUcmFja2VyOjpzdGF0ZUZyb21FbmRvd21lbnRzKE5T
U2V0ICplbmRvd21lbnRzKSAtPiBTdGF0ZQoreworICAgIHJldHVybiBTdGF0ZSB7CisgICAgICAg
IFtlbmRvd21lbnRzIGNvbnRhaW5zT2JqZWN0OnVzZXJmYWNpbmdFbmRvd21lbnRdLAorICAgICAg
ICBbZW5kb3dtZW50cyBjb250YWluc09iamVjdDp2aXNpYmlsaXR5RW5kb3dtZW50XQorICAgIH07
Cit9CisKIGJvb2wgRW5kb3dtZW50U3RhdGVUcmFja2VyOjppc0FwcGxpY2F0aW9uRm9yZWdyb3Vu
ZChwaWRfdCBwaWQpCiB7CiAgICAgcmV0dXJuIFtlbmRvd21lbnRzRm9ySGFuZGxlKGhhbmRsZUZv
clBJRChwaWQpKSBjb250YWluc09iamVjdDp2aXNpYmlsaXR5RW5kb3dtZW50XTsKQEAgLTgzLDI4
ICs5MSwyMSBAQCBFbmRvd21lbnRTdGF0ZVRyYWNrZXImIEVuZG93bWVudFN0YXRlVHJhY2tlcjo6
c2luZ2xldG9uKCkKICAgICByZXR1cm4gdHJhY2tlcjsKIH0KIAotRW5kb3dtZW50U3RhdGVUcmFj
a2VyOjpFbmRvd21lbnRTdGF0ZVRyYWNrZXIoKQordm9pZCBFbmRvd21lbnRTdGF0ZVRyYWNrZXI6
OnJlZ2lzdGVyTW9uaXRvcklmTmVjZXNzYXJ5KCkKIHsKLSAgICBhdXRvIHByb2Nlc3NIYW5kbGUg
PSBbUkJTUHJvY2Vzc0hhbmRsZSBjdXJyZW50UHJvY2Vzc107Ci0gICAgYXV0byBlbmRvd21lbnRO
YW1lc3BhY2VzID0gZW5kb3dtZW50c0ZvckhhbmRsZShwcm9jZXNzSGFuZGxlKTsKLQotICAgIG1f
aXNVc2VyRmFjaW5nID0gW2VuZG93bWVudE5hbWVzcGFjZXMgY29udGFpbnNPYmplY3Q6dXNlcmZh
Y2luZ0VuZG93bWVudF07Ci0gICAgbV9pc1Zpc2libGUgPSBbZW5kb3dtZW50TmFtZXNwYWNlcyBj
b250YWluc09iamVjdDp2aXNpYmlsaXR5RW5kb3dtZW50XTsKLQotICAgIG1fcHJvY2Vzc01vbml0
b3IgPSBbUkJTUHJvY2Vzc01vbml0b3IgbW9uaXRvcldpdGhDb25maWd1cmF0aW9uOlt0aGlzLCBw
cm9jZXNzSGFuZGxlID0gcmV0YWluUHRyKHByb2Nlc3NIYW5kbGUpXSAoaWQ8UkJTUHJvY2Vzc01v
bml0b3JDb25maWd1cmluZz4gY29uZmlnKSB7CisgICAgaWYgKG1fcHJvY2Vzc01vbml0b3IpCisg
ICAgICAgIHJldHVybjsKIAotICAgICAgICBSQlNQcm9jZXNzUHJlZGljYXRlICpwcm9jZXNzUHJl
ZGljYXRlID0gW1JCU1Byb2Nlc3NQcmVkaWNhdGUgcHJlZGljYXRlTWF0Y2hpbmdIYW5kbGU6cHJv
Y2Vzc0hhbmRsZS5nZXQoKV07CisgICAgbV9wcm9jZXNzTW9uaXRvciA9IFtSQlNQcm9jZXNzTW9u
aXRvciBtb25pdG9yV2l0aENvbmZpZ3VyYXRpb246W3RoaXNdIChpZDxSQlNQcm9jZXNzTW9uaXRv
ckNvbmZpZ3VyaW5nPiBjb25maWcpIHsKKyAgICAgICAgW2NvbmZpZyBzZXRQcmVkaWNhdGVzOkBb
W1JCU1Byb2Nlc3NQcmVkaWNhdGUgcHJlZGljYXRlTWF0Y2hpbmdIYW5kbGU6W1JCU1Byb2Nlc3NI
YW5kbGUgY3VycmVudFByb2Nlc3NdXV1dOwogCiAgICAgICAgIFJCU1Byb2Nlc3NTdGF0ZURlc2Ny
aXB0b3IgKnN0YXRlRGVzY3JpcHRvciA9IFtSQlNQcm9jZXNzU3RhdGVEZXNjcmlwdG9yIGRlc2Ny
aXB0b3JdOwogICAgICAgICBzdGF0ZURlc2NyaXB0b3IuZW5kb3dtZW50TmFtZXNwYWNlcyA9IEBb
dmlzaWJpbGl0eUVuZG93bWVudCwgdXNlcmZhY2luZ0VuZG93bWVudF07Ci0KLSAgICAgICAgW2Nv
bmZpZyBzZXRQcmVkaWNhdGVzOkBbcHJvY2Vzc1ByZWRpY2F0ZV1dOwogICAgICAgICBbY29uZmln
IHNldFN0YXRlRGVzY3JpcHRvcjpzdGF0ZURlc2NyaXB0b3JdOwogCiAgICAgICAgIFtjb25maWcg
c2V0VXBkYXRlSGFuZGxlcjpbdGhpc10gKFJCU1Byb2Nlc3NNb25pdG9yICogX05vbm51bGwgbW9u
aXRvciwgUkJTUHJvY2Vzc0hhbmRsZSAqIF9Ob25udWxsIHByb2Nlc3MsIFJCU1Byb2Nlc3NTdGF0
ZVVwZGF0ZSAqIF9Ob25udWxsIHVwZGF0ZSkgbXV0YWJsZSB7Ci0gICAgICAgICAgICBkaXNwYXRj
aF9hc3luYyhkaXNwYXRjaF9nZXRfbWFpbl9xdWV1ZSgpLCBbdGhpcywgZW5kb3dtZW50TmFtZXNw
YWNlcyA9IHJldGFpblB0cih1cGRhdGUuc3RhdGUuZW5kb3dtZW50TmFtZXNwYWNlcyldIHsKLSAg
ICAgICAgICAgICAgICBzZXRJc1VzZXJGYWNpbmcoW2VuZG93bWVudE5hbWVzcGFjZXMgY29udGFp
bnNPYmplY3Q6dXNlcmZhY2luZ0VuZG93bWVudF0pOwotICAgICAgICAgICAgICAgIHNldElzVmlz
aWJsZShbZW5kb3dtZW50TmFtZXNwYWNlcyBjb250YWluc09iamVjdDp2aXNpYmlsaXR5RW5kb3dt
ZW50XSk7CisgICAgICAgICAgICBkaXNwYXRjaF9hc3luYyhkaXNwYXRjaF9nZXRfbWFpbl9xdWV1
ZSgpLCBbdGhpcywgc3RhdGUgPSBzdGF0ZUZyb21FbmRvd21lbnRzKHVwZGF0ZS5zdGF0ZS5lbmRv
d21lbnROYW1lc3BhY2VzKV0oKSBtdXRhYmxlIHsKKyAgICAgICAgICAgICAgICBzZXRTdGF0ZShX
VEZNb3ZlKHN0YXRlKSk7CiAgICAgICAgICAgICB9KTsKICAgICAgICAgfV07CiAgICAgfV07CkBA
IC0xMTMsNiArMTE0LDcgQEAgRW5kb3dtZW50U3RhdGVUcmFja2VyOjpFbmRvd21lbnRTdGF0ZVRy
YWNrZXIoKQogdm9pZCBFbmRvd21lbnRTdGF0ZVRyYWNrZXI6OmFkZENsaWVudChDbGllbnQmIGNs
aWVudCkKIHsKICAgICBtX2NsaWVudHMuYWRkKGNsaWVudCk7CisgICAgcmVnaXN0ZXJNb25pdG9y
SWZOZWNlc3NhcnkoKTsKIH0KIAogdm9pZCBFbmRvd21lbnRTdGF0ZVRyYWNrZXI6OnJlbW92ZUNs
aWVudChDbGllbnQmIGNsaWVudCkKQEAgLTEyMCwzMSArMTIyLDI5IEBAIHZvaWQgRW5kb3dtZW50
U3RhdGVUcmFja2VyOjpyZW1vdmVDbGllbnQoQ2xpZW50JiBjbGllbnQpCiAgICAgbV9jbGllbnRz
LnJlbW92ZShjbGllbnQpOwogfQogCi12b2lkIEVuZG93bWVudFN0YXRlVHJhY2tlcjo6c2V0SXNV
c2VyRmFjaW5nKGJvb2wgaXNVc2VyRmFjaW5nKQorYXV0byBFbmRvd21lbnRTdGF0ZVRyYWNrZXI6
OmVuc3VyZVN0YXRlKCkgY29uc3QgLT4gY29uc3QgU3RhdGUmCiB7Ci0gICAgaWYgKG1faXNVc2Vy
RmFjaW5nID09IGlzVXNlckZhY2luZykKLSAgICAgICAgcmV0dXJuOwotICAgIG1faXNVc2VyRmFj
aW5nID0gaXNVc2VyRmFjaW5nOwotCi0gICAgUkVMRUFTRV9MT0coVmlld1N0YXRlLCAiJXAgLSBF
bmRvd21lbnRTdGF0ZVRyYWNrZXI6OnNldElzVXNlckZhY2luZygle3B1YmxpY31zKSIsIHRoaXMs
IGlzVXNlckZhY2luZyA/ICJ0cnVlIiA6ICJmYWxzZSIpOwotCi0gICAgZm9yIChhdXRvJiBjbGll
bnQgOiBjb3B5VG9WZWN0b3IobV9jbGllbnRzKSkgewotICAgICAgICBpZiAoY2xpZW50KQotICAg
ICAgICAgICAgY2xpZW50LT5pc1VzZXJGYWNpbmdDaGFuZ2VkKG1faXNVc2VyRmFjaW5nKTsKLSAg
ICB9CisgICAgaWYgKCFtX3N0YXRlKQorICAgICAgICBtX3N0YXRlID0gc3RhdGVGcm9tRW5kb3dt
ZW50cyhlbmRvd21lbnRzRm9ySGFuZGxlKFtSQlNQcm9jZXNzSGFuZGxlIGN1cnJlbnRQcm9jZXNz
XSkpOworICAgIHJldHVybiAqbV9zdGF0ZTsKIH0KIAotdm9pZCBFbmRvd21lbnRTdGF0ZVRyYWNr
ZXI6OnNldElzVmlzaWJsZShib29sIGlzVmlzaWJsZSkKK3ZvaWQgRW5kb3dtZW50U3RhdGVUcmFj
a2VyOjpzZXRTdGF0ZShTdGF0ZSYmIHN0YXRlKQogewotICAgIGlmIChtX2lzVmlzaWJsZSA9PSBp
c1Zpc2libGUpCisgICAgYm9vbCBpc1VzZXJGYWNpbmdDaGFuZ2VkID0gIW1fc3RhdGUgfHwgbV9z
dGF0ZS0+aXNVc2VyRmFjaW5nICE9IHN0YXRlLmlzVXNlckZhY2luZzsKKyAgICBib29sIGlzVmlz
aWJsZUNoYW5nZWQgPSAhbV9zdGF0ZSB8fCBtX3N0YXRlLT5pc1Zpc2libGUgIT0gc3RhdGUuaXNW
aXNpYmxlOworICAgIGlmICghaXNVc2VyRmFjaW5nQ2hhbmdlZCAmJiAhaXNWaXNpYmxlQ2hhbmdl
ZCkKICAgICAgICAgcmV0dXJuOwotICAgIG1faXNWaXNpYmxlID0gaXNWaXNpYmxlOwogCi0gICAg
UkVMRUFTRV9MT0coVmlld1N0YXRlLCAiJXAgLSBFbmRvd21lbnRTdGF0ZVRyYWNrZXI6OnNldElz
VmlzaWJsZSgle3B1YmxpY31zKSIsIHRoaXMsIGlzVmlzaWJsZSA/ICJ0cnVlIiA6ICJmYWxzZSIp
OworICAgIG1fc3RhdGUgPSBXVEZNb3ZlKHN0YXRlKTsKKworICAgIFJFTEVBU0VfTE9HKFZpZXdT
dGF0ZSwgIiVwIC0gRW5kb3dtZW50U3RhdGVUcmFja2VyOjpzZXRTdGF0ZSgpIGlzVXNlckZhY2lu
ZzogJXtwdWJsaWN9cyBpc1Zpc2libGU6ICV7cHVibGljfXMiLCB0aGlzLCBtX3N0YXRlLT5pc1Vz
ZXJGYWNpbmcgPyAidHJ1ZSIgOiAiZmFsc2UiLCBtX3N0YXRlLT5pc1Zpc2libGUgPyAidHJ1ZSIg
OiAiZmFsc2UiKTsKIAogICAgIGZvciAoYXV0byYgY2xpZW50IDogY29weVRvVmVjdG9yKG1fY2xp
ZW50cykpIHsKLSAgICAgICAgaWYgKGNsaWVudCkKLSAgICAgICAgICAgIGNsaWVudC0+aXNWaXNp
YmxlQ2hhbmdlZChtX2lzVmlzaWJsZSk7CisgICAgICAgIGlmIChpc1VzZXJGYWNpbmdDaGFuZ2Vk
ICYmIGNsaWVudCkKKyAgICAgICAgICAgIGNsaWVudC0+aXNVc2VyRmFjaW5nQ2hhbmdlZChtX3N0
YXRlLT5pc1VzZXJGYWNpbmcpOworICAgICAgICBpZiAoaXNWaXNpYmxlQ2hhbmdlZCAmJiBjbGll
bnQpCisgICAgICAgICAgICBjbGllbnQtPmlzVmlzaWJsZUNoYW5nZWQobV9zdGF0ZS0+aXNWaXNp
YmxlKTsKICAgICB9CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dl
YlBhZ2VQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3Bw
CmluZGV4IDA3NzBiMTMxYTEwY2M2ZDM5NDEzY2E4MDViMmEwZTE3MzVkMzg4ZjcuLmIzZjZiYmI0
ZDJmOTczNDM3YzUxZGI0YTNhYWE2ZDk2OTlkZmQ5MGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvV2ViUGFnZVByb3h5LmNwcApAQCAtNTMyLDggKzUzMiw2IEBAIFdlYlBhZ2VQcm94eTo6V2Vi
UGFnZVByb3h5KFBhZ2VDbGllbnQmIHBhZ2VDbGllbnQsIFdlYlByb2Nlc3NQcm94eSYgcHJvY2Vz
cywgUmVmCiAgICAgCiAgICAgaWYgKG1fY29uZmlndXJhdGlvbi0+cHJlZmVyZW5jZXMoKS0+c2Vy
dmljZVdvcmtlckVudGl0bGVtZW50RGlzYWJsZWRGb3JUZXN0aW5nKCkpCiAgICAgICAgIGRpc2Fi
bGVTZXJ2aWNlV29ya2VyRW50aXRsZW1lbnRJbk5ldHdvcmtQcm9jZXNzKCk7Ci0KLSAgICBFbmRv
d21lbnRTdGF0ZVRyYWNrZXI6OnNpbmdsZXRvbigpLmFkZENsaWVudCgqdGhpcyk7CiAjZW5kaWYK
IAogI2lmIFBMQVRGT1JNKENPQ09BKQpAQCAtNTc2LDcgKzU3NCw3IEBAIFdlYlBhZ2VQcm94eTo6
fldlYlBhZ2VQcm94eSgpCiAgICAgd2ViUGFnZVByb3h5Q291bnRlci5kZWNyZW1lbnQoKTsKICNl
bmRpZgogCi0jaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyNpZiBQTEFURk9STShNQUNDQVRBTFlT
VCkKICAgICBFbmRvd21lbnRTdGF0ZVRyYWNrZXI6OnNpbmdsZXRvbigpLnJlbW92ZUNsaWVudCgq
dGhpcyk7CiAjZW5kaWYKIH0KQEAgLTg5MzgsNiArODkzNiwxNiBAQCB2b2lkIFdlYlBhZ2VQcm94
eTo6dXBkYXRlUGxheWluZ01lZGlhRGlkQ2hhbmdlKE1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVG
bGFncyBuZQogICAgIGlmIChuZXdTdGF0ZSA9PSBtX21lZGlhU3RhdGUpCiAgICAgICAgIHJldHVy
bjsKIAorI2lmIFBMQVRGT1JNKE1BQ0NBVEFMWVNUKQorICAgIC8vIFdoZW4gdGhlIHBhZ2Ugc3Rh
cnRzIHBsYXlpbmcgbWVkaWEgZm9yIHRoZSBmaXJzdCB0aW1lLCBtYWtlIHN1cmUgd2UgcmVnaXN0
ZXIgd2l0aAorICAgIC8vIHRoZSBFbmRvd21lbnRTdGF0ZVRyYWNrZXIgdG8gZ2V0IG5vdGlmaWNh
dGlvbnMgd2hlbiB0aGUgYXBwbGljYXRpb24gaXMgbm8gbG9uZ2VyCisgICAgLy8gdXNlci1mYWNp
bmcsIHNvIHRoYXQgd2UgY2FuIGFwcHJvcHJpYXRlbHkgc3VzcGVuZCBhbGwgbWVkaWEgcGxheWJh
Y2suCisgICAgaWYgKCFtX2lzTGlzdGVuaW5nRm9yVXNlckZhY2luZ1N0YXRlQ2hhbmdlTm90aWZp
Y2F0aW9uKSB7CisgICAgICAgIEVuZG93bWVudFN0YXRlVHJhY2tlcjo6c2luZ2xldG9uKCkuYWRk
Q2xpZW50KCp0aGlzKTsKKyAgICAgICAgbV9pc0xpc3RlbmluZ0ZvclVzZXJGYWNpbmdTdGF0ZUNo
YW5nZU5vdGlmaWNhdGlvbiA9IHRydWU7CisgICAgfQorI2VuZGlmCisKICNpZiBFTkFCTEUoTUVE
SUFfU1RSRUFNKQogICAgIFdlYkNvcmU6Ok1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFncyBv
bGRNZWRpYUNhcHR1cmVTdGF0ZSA9IG1fbWVkaWFTdGF0ZSAmIFdlYkNvcmU6Ok1lZGlhUHJvZHVj
ZXI6Ok1lZGlhQ2FwdHVyZU1hc2s7CiAgICAgV2ViQ29yZTo6TWVkaWFQcm9kdWNlcjo6TWVkaWFT
dGF0ZUZsYWdzIG5ld01lZGlhQ2FwdHVyZVN0YXRlID0gbmV3U3RhdGUgJiBXZWJDb3JlOjpNZWRp
YVByb2R1Y2VyOjpNZWRpYUNhcHR1cmVNYXNrOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvV2ViUGFnZVByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdl
UHJveHkuaAppbmRleCA0MDg2OGZlMTE2OGY1YjFjODViZTkzZTIyNGRlMjc5ZjRmNGFjNmEyLi42
YWMwNzU2MTA2Mzk0NDMxY2RiMzBiY2Q1M2M1NDJlNTE0OTYxOTA0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJQYWdlUHJveHkuaApAQCAtMTIxLDExICsxMjEsMTQgQEAKICNpbmNsdWRlIDx3
dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCi0jaW5jbHVk
ZSAiRW5kb3dtZW50U3RhdGVUcmFja2VyLmgiCiAjaW5jbHVkZSAiR2VzdHVyZVR5cGVzLmgiCiAj
aW5jbHVkZSAiV2ViQXV0b2NvcnJlY3Rpb25Db250ZXh0LmgiCiAjZW5kaWYKIAorI2lmIFBMQVRG
T1JNKE1BQ0NBVEFMWVNUKQorI2luY2x1ZGUgIkVuZG93bWVudFN0YXRlVHJhY2tlci5oIgorI2Vu
ZGlmCisKIE9CSkNfQ0xBU1MgTlNWaWV3OwogT0JKQ19DTEFTUyBfV0tSZW1vdGVPYmplY3RSZWdp
c3RyeTsKIApAQCAtNDM0LDcgKzQzNyw3IEBAIGNsYXNzIFdlYlBhZ2VQcm94eSA6IHB1YmxpYyBB
UEk6Ok9iamVjdEltcGw8QVBJOjpPYmplY3Q6OlR5cGU6OlBhZ2U+CiAgICAgLCBwdWJsaWMgV2Vi
Q29yZTo6UGxhdGZvcm1TcGVlY2hTeW50aGVzaXNVdHRlcmFuY2VDbGllbnQKICAgICAsIHB1Ymxp
YyBXZWJDb3JlOjpQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpemVyQ2xpZW50CiAjZW5kaWYKLSNpZiBQ
TEFURk9STShJT1NfRkFNSUxZKQorI2lmIFBMQVRGT1JNKE1BQ0NBVEFMWVNUKQogICAgICwgcHVi
bGljIEVuZG93bWVudFN0YXRlVHJhY2tlcjo6Q2xpZW50CiAjZWxzZQogICAgICwgcHVibGljIENh
bk1ha2VXZWFrUHRyPFdlYlBhZ2VQcm94eT4KQEAgLTExODgsOCArMTE5MSw5IEBAIHB1YmxpYzoK
ICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogICAgIHZvaWQgcHJvY2Vzc1dpbGxCZWNvbWVTdXNw
ZW5kZWQoKTsKICAgICB2b2lkIHByb2Nlc3NXaWxsQmVjb21lRm9yZWdyb3VuZCgpOworI2VuZGlm
CisjaWYgUExBVEZPUk0oTUFDQ0FUQUxZU1QpCiAgICAgdm9pZCBpc1VzZXJGYWNpbmdDaGFuZ2Vk
KGJvb2wpIGZpbmFsOwotICAgIHZvaWQgaXNWaXNpYmxlQ2hhbmdlZChib29sKSBmaW5hbDsKICNl
bmRpZgogCiAjaWYgSEFWRShWSVNJQklMSVRZX1BST1BBR0FUSU9OX1ZJRVcpCkBAIC0yNDcyLDYg
KzI0NzYsOSBAQCBwcml2YXRlOgogCiAgICAgT3B0aW9uU2V0PFdlYkNvcmU6OkFjdGl2aXR5U3Rh
dGU6OkZsYWc+IG1fYWN0aXZpdHlTdGF0ZTsKICAgICBib29sIG1fdmlld1dhc0V2ZXJJbldpbmRv
dyB7IGZhbHNlIH07CisjaWYgUExBVEZPUk0oTUFDQ0FUQUxZU1QpCisgICAgYm9vbCBtX2lzTGlz
dGVuaW5nRm9yVXNlckZhY2luZ1N0YXRlQ2hhbmdlTm90aWZpY2F0aW9uIHsgZmFsc2UgfTsKKyNl
bmRpZgogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAgYm9vbCBtX2FsbG93c01lZGlhRG9j
dW1lbnRJbmxpbmVQbGF5YmFjayB7IGZhbHNlIH07CiAgICAgc3RkOjp1bmlxdWVfcHRyPFByb2Nl
c3NUaHJvdHRsZXI6OkZvcmVncm91bmRBY3Rpdml0eT4gbV9pc1Zpc2libGVBY3Rpdml0eTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XZWJQYWdlUHJveHlJT1MubW0g
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV2ViUGFnZVByb3h5SU9TLm1tCmluZGV4IDcy
NGI4NTM3OTRjZjM3ZjI0NTNkMjUwNTFmYzI4NzQ5M2EzMzkyMTkuLmQxNTljNDlkYzIxYmJhNzgz
MzBhNTAzOTgyOGEwNjJmZGViZmQyMGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL2lvcy9XZWJQYWdlUHJveHlJT1MubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
aW9zL1dlYlBhZ2VQcm94eUlPUy5tbQpAQCAtMTYyNCwyMiArMTYyNCwxNSBAQCB2b2lkIFdlYlBh
Z2VQcm94eTo6cHJvY2Vzc1dpbGxCZWNvbWVGb3JlZ3JvdW5kKCkKICAgICB9CiB9CiAKKyNpZiBQ
TEFURk9STShNQUNDQVRBTFlTVCkKIHZvaWQgV2ViUGFnZVByb3h5Ojppc1VzZXJGYWNpbmdDaGFu
Z2VkKGJvb2wgaXNVc2VyRmFjaW5nKQogewotI2lmIFBMQVRGT1JNKE1BQ0NBVEFMWVNUKQogICAg
IGlmICghaXNVc2VyRmFjaW5nKQogICAgICAgICBzdXNwZW5kQWxsTWVkaWFQbGF5YmFjaygpOwog
ICAgIGVsc2UKICAgICAgICAgcmVzdW1lQWxsTWVkaWFQbGF5YmFjaygpOwotI2Vsc2UKLSAgICBV
TlVTRURfUEFSQU0oaXNVc2VyRmFjaW5nKTsKLSNlbmRpZgotfQotCi12b2lkIFdlYlBhZ2VQcm94
eTo6aXNWaXNpYmxlQ2hhbmdlZChib29sIGlzVmlzaWJsZSkKLXsKLSAgICBVTlVTRURfUEFSQU0o
aXNWaXNpYmxlKTsKIH0KKyNlbmRpZgogCiAjaWYgUExBVEZPUk0oSU9TKQogdm9pZCBXZWJQYWdl
UHJveHk6OmdyYW50QWNjZXNzVG9Bc3NldFNlcnZpY2VzKCkK
</data>

          </attachment>
      

    </bug>

</bugzilla>