<?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>174189</bug_id>
          
          <creation_ts>2017-07-05 19:02:19 -0700</creation_ts>
          <short_desc>WebResourceLoadStatisticsStore should only be constructed when the feature is enabled</short_desc>
          <delta_ts>2017-07-06 10:23:13 -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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>174203</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ggaren</cc>
    
    <cc>wilander</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1325868</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2017-07-05 19:02:19 -0700</bug_when>
    <thetext>WebResourceLoadStatisticsStore should only be constructed when the feature is enabled.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1325874</commentid>
    <comment_count>1</comment_count>
      <attachid>314675</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2017-07-05 19:15:55 -0700</bug_when>
    <thetext>Created attachment 314675
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1326086</commentid>
    <comment_count>2</comment_count>
      <attachid>314675</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2017-07-06 10:16:11 -0700</bug_when>
    <thetext>Comment on attachment 314675
Patch

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

r=me

&gt; Source/WebKit2/UIProcess/WebResourceLoadStatisticsStore.cpp:96
&gt;  {

Should we be asserting that this construction is taking place on the main thread?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1326091</commentid>
    <comment_count>3</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2017-07-06 10:23:13 -0700</bug_when>
    <thetext>Committed r219203: &lt;http://trac.webkit.org/changeset/219203&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>314675</attachid>
            <date>2017-07-05 19:15:55 -0700</date>
            <delta_ts>2017-07-06 10:21:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-174189-20170705191554.patch</filename>
            <type>text/plain</type>
            <size>20070</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE5MTYyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNDc3ZGUwYzM2YTc5YTY4
Yzg4NDcwMDQ1ZDZhNGU5ODY1NmZhOTBlMi4uYjFjMWYzZWUyYjcyY2QwMjZkNGE3NjQ5NjMxNGJl
NGMyOTJjNGY3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDQyIEBACiAyMDE3LTA3LTA1ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKKyAgICAgICAgV2ViUmVzb3VyY2VMb2FkU3Rh
dGlzdGljc1N0b3JlIHNob3VsZCBvbmx5IGJlIGNvbnN0cnVjdGVkIHdoZW4gdGhlIGZlYXR1cmUg
aXMgZW5hYmxlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTc0MTg5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgRGVsYXkgdGhlIGNvbnN0cnVjdGlvbiBvZiB0aGUgV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGlj
c1N0b3JlIHVudGlsIHRoZSBmZWF0dXJlIGdldHMKKyAgICAgICAgZW5hYmxlZCB2aWEgV2Vic2l0
ZURhdGFTdG9yZTo6c2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0VuYWJsZWQoKS4gUHJldmlvdXNs
eSwgd2Ugd291bGQKKyAgICAgICAgYWx3YXlzIGNvbnN0cnVjdCBhIHN0b3JlIGFuZCB0aGVuIGhh
dmUgYSBib29sZWFuIG9uIHRoZSBzdG9yZSB0byBpbmRpY2F0ZSBpZiBpdCBpcworICAgICAgICBl
bmFibGVkIG9yIG5vdC4KKworICAgICAgICBBbHNvIHNpbXBsaWZ5IHRoZSBpbml0aWFsaXphdGlv
biBwcm9jZXNzIG9mIHRoZSBXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUsIHdlCisgICAg
ICAgIHVzZWQgdG8gaGF2ZToKKyAgICAgICAgMS4gV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0
b3JlIGNvbnN0cnVjdG9yCisgICAgICAgIDIuIFdlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9y
ZTo6cmVnaXN0ZXJTaGFyZWRSZXNvdXJjZUxvYWRPYnNlcnZlcigpCisgICAgICAgIDMuIFdlYlJl
c291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZTo6c2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0VuYWJs
ZWQodHJ1ZSkKKworICAgICAgICBBbGwgMyBzdGVwcyBhcmUgbm93IHRha2VuIGNhcmUgb2YgYnkg
dGhlIFdlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZSBjb25zdHJ1Y3Rvci4KKworICAgICAg
ICAqIFVJUHJvY2Vzcy9Db2NvYS9XZWJQcm9jZXNzUG9vbENvY29hLm1tOgorICAgICAgICAoV2Vi
S2l0OjpXZWJQcm9jZXNzUG9vbDo6cGxhdGZvcm1Jbml0aWFsaXplKToKKyAgICAgICAgKiBVSVBy
b2Nlc3MvV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6V2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlOjpXZWJSZXNvdXJjZUxvYWRTdGF0aXN0
aWNzU3RvcmUpOgorICAgICAgICAoV2ViS2l0OjpXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3Rv
cmU6OnJlYWREYXRhRnJvbURpc2tJZk5lZWRlZCk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlJl
c291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJzaXRl
RGF0YS9Db2NvYS9XZWJzaXRlRGF0YVN0b3JlQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6Oldl
YnNpdGVEYXRhU3RvcmU6OnBsYXRmb3JtSW5pdGlhbGl6ZSk6CisgICAgICAgICogVUlQcm9jZXNz
L1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJz
aXRlRGF0YVN0b3JlOjpXZWJzaXRlRGF0YVN0b3JlKToKKyAgICAgICAgKFdlYktpdDo6V2Vic2l0
ZURhdGFTdG9yZTo6cmVzb3VyY2VMb2FkU3RhdGlzdGljc0VuYWJsZWQpOgorICAgICAgICAoV2Vi
S2l0OjpXZWJzaXRlRGF0YVN0b3JlOjpzZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZCk6
CisgICAgICAgICogVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuaDoKKyAg
ICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6cmVzb3VyY2VMb2FkU3RhdGlzdGljcyk6
CisgICAgICAgICogVUlQcm9jZXNzL3dwZS9XZWJQcm9jZXNzUG9vbFdQRS5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYlByb2Nlc3NQb29sOjpwbGF0Zm9ybUluaXRpYWxpemUpOgorCisyMDE3LTA3
LTA1ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKICAgICAgICAgW1dLMl0gV2Vi
c2l0ZURhdGFTdG9yZTo6c2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0VuYWJsZWQoKSB1cGRhdGVz
IHByb2Nlc3NQb29scyB0aGUgc3RvcmUgaXMgbm90IGFzc29jaWF0ZWQgd2l0aAogICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc0MTc0CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9Db2NvYS9XZWJQcm9jZXNzUG9vbENvY29hLm1t
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0NvY29hL1dlYlByb2Nlc3NQb29sQ29jb2EubW0K
aW5kZXggMzEyMGIzMjFiMjVmN2MwZmE0ZDBlMDdmZmNlYTg4MmRlZWQzNWMwNC4uNDkxZTNjM2Rl
OTAyYTgzNzE1ZjZkZGZjMjY5NjNkYWVhMjNjNzMyNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0NvY29hL1dlYlByb2Nlc3NQb29sQ29jb2EubW0KKysrIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0NvY29hL1dlYlByb2Nlc3NQb29sQ29jb2EubW0KQEAgLTE0OCw4ICsx
NDgsNiBAQCB2b2lkIFdlYlByb2Nlc3NQb29sOjpwbGF0Zm9ybUluaXRpYWxpemUoKQogI2VuZGlm
CiAKICAgICBzZXRMZWdhY3lDdXN0b21Qcm90b2NvbE1hbmFnZXJDbGllbnQoc3RkOjptYWtlX3Vu
aXF1ZTxMZWdhY3lDdXN0b21Qcm90b2NvbE1hbmFnZXJDbGllbnQ+KCkpOwotCi0gICAgbV93ZWJz
aXRlRGF0YVN0b3JlLT53ZWJzaXRlRGF0YVN0b3JlKCkucmVnaXN0ZXJTaGFyZWRSZXNvdXJjZUxv
YWRPYnNlcnZlcigpOwogfQogCiAjaWYgUExBVEZPUk0oSU9TKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL1dlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5jcHAgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLmNw
cAppbmRleCBkMTNlYTA1N2ZiYjRhZWRhMmIyZmFlYjRjYzUwOTMwNzkyNWY1NTY1Li42NTI3YzEw
YWIzYzIyNzBmN2UzNTE4NWMzNWU2Njk4NjY3YTFhMWJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLmNw
cApAQCAtODcsMTggKzg3LDUyIEBAIHN0YXRpYyBjb25zdCBPcHRpb25TZXQ8V2Vic2l0ZURhdGFU
eXBlPiYgZGF0YVR5cGVzVG9SZW1vdmUoKQogICAgIHJldHVybiBkYXRhVHlwZXM7CiB9CiAKLVJl
ZjxXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmU+IFdlYlJlc291cmNlTG9hZFN0YXRpc3Rp
Y3NTdG9yZTo6Y3JlYXRlKGNvbnN0IFN0cmluZyYgcmVzb3VyY2VMb2FkU3RhdGlzdGljc0RpcmVj
dG9yeSkKLXsKLSAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBXZWJSZXNvdXJjZUxvYWRTdGF0aXN0
aWNzU3RvcmUocmVzb3VyY2VMb2FkU3RhdGlzdGljc0RpcmVjdG9yeSkpOwotfQotCi1XZWJSZXNv
dXJjZUxvYWRTdGF0aXN0aWNzU3RvcmU6OldlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZShj
b25zdCBTdHJpbmcmIHJlc291cmNlTG9hZFN0YXRpc3RpY3NEaXJlY3RvcnkpCitXZWJSZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzU3RvcmU6OldlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZShjb25z
dCBTdHJpbmcmIHJlc291cmNlTG9hZFN0YXRpc3RpY3NEaXJlY3RvcnksIFVwZGF0ZVBhcnRpdGlv
bkNvb2tpZXNGb3JEb21haW5zSGFuZGxlciYmIHVwZGF0ZVBhcnRpdGlvbkNvb2tpZXNGb3JEb21h
aW5zSGFuZGxlcikKICAgICA6IG1fcmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlKFJlc291cmNl
TG9hZFN0YXRpc3RpY3NTdG9yZTo6Y3JlYXRlKCkpCiAgICAgLCBtX3N0YXRpc3RpY3NRdWV1ZShX
b3JrUXVldWU6OmNyZWF0ZSgiV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlIFByb2Nlc3Mg
RGF0YSBRdWV1ZSIsIFdvcmtRdWV1ZTo6VHlwZTo6U2VyaWFsLCBXb3JrUXVldWU6OlFPUzo6VXRp
bGl0eSkpCiAgICAgLCBtX3N0YXRpc3RpY3NTdG9yYWdlUGF0aChyZXNvdXJjZUxvYWRTdGF0aXN0
aWNzRGlyZWN0b3J5KQogICAgICwgbV90ZWxlbWV0cnlPbmVTaG90VGltZXIoUnVuTG9vcDo6bWFp
bigpLCB0aGlzLCAmV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlOjp0ZWxlbWV0cnlUaW1l
ckZpcmVkKQogICAgICwgbV90ZWxlbWV0cnlSZXBlYXRlZFRpbWVyKFJ1bkxvb3A6Om1haW4oKSwg
dGhpcywgJldlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZTo6dGVsZW1ldHJ5VGltZXJGaXJl
ZCkKIHsKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICByZWdpc3RlclVzZXJEZWZhdWx0c0lmTmVl
ZGVkKCk7CisjZW5kaWYKKworICAgIG1fcmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLT5zZXRO
b3RpZmljYXRpb25DYWxsYmFjayhbdGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMp
XSB7CisgICAgICAgIGlmIChtX3Jlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS0+aXNFbXB0eSgp
KQorICAgICAgICAgICAgcmV0dXJuOworICAgICAgICBwcm9jZXNzU3RhdGlzdGljc0FuZERhdGFS
ZWNvcmRzKCk7CisgICAgfSk7CisgICAgbV9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUtPnNl
dFdyaXRlUGVyc2lzdGVudFN0b3JlQ2FsbGJhY2soW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBtYWtl
UmVmKCp0aGlzKV0geworICAgICAgICBtX3N0YXRpc3RpY3NRdWV1ZS0+ZGlzcGF0Y2goW3RoaXMs
IHByb3RlY3RlZFRoaXMgPSBwcm90ZWN0ZWRUaGlzLmNvcHlSZWYoKV0geworICAgICAgICAgICAg
c3RvcE1vbml0b3JpbmdTdGF0aXN0aWNzU3RvcmFnZSgpOworICAgICAgICAgICAgd3JpdGVTdG9y
ZVRvRGlzaygpOworICAgICAgICAgICAgc3RhcnRNb25pdG9yaW5nU3RhdGlzdGljc1N0b3JhZ2Uo
KTsKKyAgICAgICAgfSk7CisgICAgfSk7CisgICAgbV9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3Rv
cmUtPnNldEdyYW5kZmF0aGVyRXhpc3RpbmdXZWJzaXRlRGF0YUNhbGxiYWNrKFt0aGlzLCBwcm90
ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyldIHsKKyAgICAgICAgZ3JhbmRmYXRoZXJFeGlzdGlu
Z1dlYnNpdGVEYXRhKCk7CisgICAgfSk7CisgICAgbV9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3Rv
cmUtPnNldERlbGV0ZVBlcnNpc3RlbnRTdG9yZUNhbGxiYWNrKFt0aGlzLCBwcm90ZWN0ZWRUaGlz
ID0gbWFrZVJlZigqdGhpcyldIHsKKyAgICAgICAgbV9zdGF0aXN0aWNzUXVldWUtPmRpc3BhdGNo
KFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gcHJvdGVjdGVkVGhpcy5jb3B5UmVmKCldIHsKKyAgICAg
ICAgICAgIGRlbGV0ZVN0b3JlRnJvbURpc2soKTsKKyAgICAgICAgfSk7CisgICAgfSk7CisgICAg
bV9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUtPnNldEZpcmVUZWxlbWV0cnlDYWxsYmFjayhb
dGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpXSB7CisgICAgICAgIHN1Ym1pdFRl
bGVtZXRyeSgpOworICAgIH0pOworCisgICAgaWYgKHVwZGF0ZVBhcnRpdGlvbkNvb2tpZXNGb3JE
b21haW5zSGFuZGxlcikgeworICAgICAgICBtX3Jlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS0+
c2V0U2hvdWxkUGFydGl0aW9uQ29va2llc0NhbGxiYWNrKFt1cGRhdGVQYXJ0aXRpb25Db29raWVz
Rm9yRG9tYWluc0hhbmRsZXIgPSBXVEZNb3ZlKHVwZGF0ZVBhcnRpdGlvbkNvb2tpZXNGb3JEb21h
aW5zSGFuZGxlcildIChjb25zdCBWZWN0b3I8U3RyaW5nPiYgZG9tYWluc1RvUmVtb3ZlLCBjb25z
dCBWZWN0b3I8U3RyaW5nPiYgZG9tYWluc1RvQWRkLCBib29sIHNob3VsZENsZWFyRmlyc3QpIHsK
KyAgICAgICAgICAgIHVwZGF0ZVBhcnRpdGlvbkNvb2tpZXNGb3JEb21haW5zSGFuZGxlcihkb21h
aW5zVG9SZW1vdmUsIGRvbWFpbnNUb0FkZCwgc2hvdWxkQ2xlYXJGaXJzdCk7CisgICAgICAgIH0p
OworICAgIH0KKworICAgIG1fc3RhdGlzdGljc1F1ZXVlLT5kaXNwYXRjaChbdGhpcywgcHJvdGVj
dGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpXSB7CisgICAgICAgIHJlYWREYXRhRnJvbURpc2tJZk5l
ZWRlZCgpOworICAgICAgICBzdGFydE1vbml0b3JpbmdTdGF0aXN0aWNzU3RvcmFnZSgpOworICAg
IH0pOworCiAgICAgbV90ZWxlbWV0cnlPbmVTaG90VGltZXIuc3RhcnRPbmVTaG90KDVfcyk7CiAg
ICAgbV90ZWxlbWV0cnlSZXBlYXRlZFRpbWVyLnN0YXJ0UmVwZWF0aW5nKDI0X2gpOwogfQpAQCAt
MTg2LDcyICsyMjAsNiBAQCB2b2lkIFdlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZTo6cmVz
b3VyY2VMb2FkU3RhdGlzdGljc1VwZGF0ZWQoY29uc3QgVmVjdG9yPAogICAgIHByb2Nlc3NTdGF0
aXN0aWNzQW5kRGF0YVJlY29yZHMoKTsKIH0KIAotdm9pZCBXZWJSZXNvdXJjZUxvYWRTdGF0aXN0
aWNzU3RvcmU6OnNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkKGJvb2wgZW5hYmxlZCkK
LXsKLSAgICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOwotCi0gICAgaWYgKGVuYWJsZWQgPT0g
bV9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZCkKLSAgICAgICAgcmV0dXJuOwotCi0gICAg
bV9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZCA9IGVuYWJsZWQ7Ci0KLSAgICBpZiAobV9y
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZCkgewotICAgICAgICByZWFkRGF0YUZyb21EaXNr
SWZOZWVkZWQoKTsKLSAgICAgICAgbV9zdGF0aXN0aWNzUXVldWUtPmRpc3BhdGNoKFt0aGlzLCBw
cm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyldIHsKLSAgICAgICAgICAgIHN0YXJ0TW9uaXRv
cmluZ1N0YXRpc3RpY3NTdG9yYWdlKCk7Ci0gICAgICAgIH0pOwotICAgIH0gZWxzZQotICAgICAg
ICBtX3N0YXRpc3RpY3NRdWV1ZS0+ZGlzcGF0Y2goW3N0YXRpc3RpY3NTdG9yYWdlTW9uaXRvciA9
IFdURk1vdmUobV9zdGF0aXN0aWNzU3RvcmFnZU1vbml0b3IpXSAgeyB9KTsKLX0KLQotYm9vbCBX
ZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmU6OnJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFi
bGVkKCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxl
ZDsKLX0KLQotdm9pZCBXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmU6OnJlZ2lzdGVyU2hh
cmVkUmVzb3VyY2VMb2FkT2JzZXJ2ZXIoKQotewotICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4o
KSk7Ci0gICAgCi0gICAgbV9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUtPnNldE5vdGlmaWNh
dGlvbkNhbGxiYWNrKFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyldIHsKLSAg
ICAgICAgaWYgKG1fcmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLT5pc0VtcHR5KCkpCi0gICAg
ICAgICAgICByZXR1cm47Ci0gICAgICAgIHByb2Nlc3NTdGF0aXN0aWNzQW5kRGF0YVJlY29yZHMo
KTsKLSAgICB9KTsKLSAgICBtX3Jlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS0+c2V0V3JpdGVQ
ZXJzaXN0ZW50U3RvcmVDYWxsYmFjayhbdGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRo
aXMpXSB7Ci0gICAgICAgIG1fc3RhdGlzdGljc1F1ZXVlLT5kaXNwYXRjaChbdGhpcywgcHJvdGVj
dGVkVGhpcyA9IHByb3RlY3RlZFRoaXMuY29weVJlZigpXSB7Ci0gICAgICAgICAgICBzdG9wTW9u
aXRvcmluZ1N0YXRpc3RpY3NTdG9yYWdlKCk7Ci0gICAgICAgICAgICB3cml0ZVN0b3JlVG9EaXNr
KCk7Ci0gICAgICAgICAgICBzdGFydE1vbml0b3JpbmdTdGF0aXN0aWNzU3RvcmFnZSgpOwotICAg
ICAgICB9KTsKLSAgICB9KTsKLSAgICBtX3Jlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS0+c2V0
R3JhbmRmYXRoZXJFeGlzdGluZ1dlYnNpdGVEYXRhQ2FsbGJhY2soW3RoaXMsIHByb3RlY3RlZFRo
aXMgPSBtYWtlUmVmKCp0aGlzKV0gewotICAgICAgICBncmFuZGZhdGhlckV4aXN0aW5nV2Vic2l0
ZURhdGEoKTsKLSAgICB9KTsKLSAgICBtX3Jlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS0+c2V0
RGVsZXRlUGVyc2lzdGVudFN0b3JlQ2FsbGJhY2soW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBtYWtl
UmVmKCp0aGlzKV0gewotICAgICAgICBtX3N0YXRpc3RpY3NRdWV1ZS0+ZGlzcGF0Y2goW3RoaXMs
IHByb3RlY3RlZFRoaXMgPSBwcm90ZWN0ZWRUaGlzLmNvcHlSZWYoKV0gewotICAgICAgICAgICAg
ZGVsZXRlU3RvcmVGcm9tRGlzaygpOwotICAgICAgICB9KTsKLSAgICB9KTsKLSAgICBtX3Jlc291
cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS0+c2V0RmlyZVRlbGVtZXRyeUNhbGxiYWNrKFt0aGlzLCBw
cm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyldIHsKLSAgICAgICAgc3VibWl0VGVsZW1ldHJ5
KCk7Ci0gICAgfSk7Ci0KLSNpZiBQTEFURk9STShDT0NPQSkKLSAgICByZWdpc3RlclVzZXJEZWZh
dWx0c0lmTmVlZGVkKCk7Ci0jZW5kaWYKLX0KLQotdm9pZCBXZWJSZXNvdXJjZUxvYWRTdGF0aXN0
aWNzU3RvcmU6OnJlZ2lzdGVyU2hhcmVkUmVzb3VyY2VMb2FkT2JzZXJ2ZXIoV1RGOjpGdW5jdGlv
bjx2b2lkKGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBkb21haW5zVG9SZW1vdmUsIGNvbnN0IFZlY3Rv
cjxTdHJpbmc+JiBkb21haW5zVG9BZGQsIGJvb2wgY2xlYXJGaXJzdCk+JiYgc2hvdWxkUGFydGl0
aW9uQ29va2llc0ZvckRvbWFpbnNIYW5kbGVyKQotewotICAgIEFTU0VSVChSdW5Mb29wOjppc01h
aW4oKSk7Ci0gICAgCi0gICAgcmVnaXN0ZXJTaGFyZWRSZXNvdXJjZUxvYWRPYnNlcnZlcigpOwot
ICAgIG1fcmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLT5zZXRTaG91bGRQYXJ0aXRpb25Db29r
aWVzQ2FsbGJhY2soW3Nob3VsZFBhcnRpdGlvbkNvb2tpZXNGb3JEb21haW5zSGFuZGxlciA9IFdU
Rk1vdmUoc2hvdWxkUGFydGl0aW9uQ29va2llc0ZvckRvbWFpbnNIYW5kbGVyKV0gKGNvbnN0IFZl
Y3RvcjxTdHJpbmc+JiBkb21haW5zVG9SZW1vdmUsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBkb21h
aW5zVG9BZGQsIGJvb2wgY2xlYXJGaXJzdCkgewotICAgICAgICBzaG91bGRQYXJ0aXRpb25Db29r
aWVzRm9yRG9tYWluc0hhbmRsZXIoZG9tYWluc1RvUmVtb3ZlLCBkb21haW5zVG9BZGQsIGNsZWFy
Rmlyc3QpOwotICAgIH0pOwotfQotCiB2b2lkIFdlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9y
ZTo6Z3JhbmRmYXRoZXJFeGlzdGluZ1dlYnNpdGVEYXRhKCkKIHsKICAgICAvLyBTd2l0Y2ggdG8g
dGhlIG1haW4gdGhyZWFkIHRvIGdldCB0aGUgZGVmYXVsdCB3ZWJzaXRlIGRhdGEgc3RvcmUKQEAg
LTI4MiwzNyArMjUwLDM0IEBAIGJvb2wgV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlOjpo
YXNTdGF0aXN0aWNzRmlsZUNoYW5nZWRTaW5jZUxhc3RTeW5jKGNvbnN0CiAKIHZvaWQgV2ViUmVz
b3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlOjpyZWFkRGF0YUZyb21EaXNrSWZOZWVkZWQoKQogewot
ICAgIGlmICghbV9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZCkKKyAgICBBU1NFUlQoIVJ1
bkxvb3A6OmlzTWFpbigpKTsKKworICAgIFN0cmluZyByZXNvdXJjZUxvZyA9IHBlcnNpc3RlbnRT
dG9yYWdlUGF0aChBU0NJSUxpdGVyYWwoImZ1bGxfYnJvd3Npbmdfc2Vzc2lvbiIpKTsKKyAgICBp
ZiAocmVzb3VyY2VMb2cuaXNFbXB0eSgpIHx8ICFmaWxlRXhpc3RzKHJlc291cmNlTG9nKSkgewor
ICAgICAgICBncmFuZGZhdGhlckV4aXN0aW5nV2Vic2l0ZURhdGEoKTsKICAgICAgICAgcmV0dXJu
OworICAgIH0KIAotICAgIG1fc3RhdGlzdGljc1F1ZXVlLT5kaXNwYXRjaChbdGhpcywgcHJvdGVj
dGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpXSB7Ci0gICAgICAgIFN0cmluZyByZXNvdXJjZUxvZyA9
IHBlcnNpc3RlbnRTdG9yYWdlUGF0aChBU0NJSUxpdGVyYWwoImZ1bGxfYnJvd3Npbmdfc2Vzc2lv
biIpKTsKLSAgICAgICAgaWYgKHJlc291cmNlTG9nLmlzRW1wdHkoKSB8fCAhZmlsZUV4aXN0cyhy
ZXNvdXJjZUxvZykpIHsKLSAgICAgICAgICAgIGdyYW5kZmF0aGVyRXhpc3RpbmdXZWJzaXRlRGF0
YSgpOwotICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICB9CisgICAgaWYgKCFoYXNTdGF0aXN0
aWNzRmlsZUNoYW5nZWRTaW5jZUxhc3RTeW5jKHJlc291cmNlTG9nKSkgeworICAgICAgICAvLyBO
byBuZWVkIHRvIGdyYW5kZmF0aGVyIGluIHRoaXMgY2FzZS4KKyAgICAgICAgcmV0dXJuOworICAg
IH0KIAotICAgICAgICBpZiAoIWhhc1N0YXRpc3RpY3NGaWxlQ2hhbmdlZFNpbmNlTGFzdFN5bmMo
cmVzb3VyY2VMb2cpKSB7Ci0gICAgICAgICAgICAvLyBObyBuZWVkIHRvIGdyYW5kZmF0aGVyIGlu
IHRoaXMgY2FzZS4KLSAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgfQorICAgIFdhbGxUaW1l
IHJlYWRUaW1lID0gV2FsbFRpbWU6Om5vdygpOwogCi0gICAgICAgIFdhbGxUaW1lIHJlYWRUaW1l
ID0gV2FsbFRpbWU6Om5vdygpOworICAgIGF1dG8gZGVjb2RlciA9IGNyZWF0ZURlY29kZXJGcm9t
RGlzayhyZXNvdXJjZUxvZyk7CisgICAgaWYgKCFkZWNvZGVyKSB7CisgICAgICAgIGdyYW5kZmF0
aGVyRXhpc3RpbmdXZWJzaXRlRGF0YSgpOworICAgICAgICByZXR1cm47CisgICAgfQogCi0gICAg
ICAgIGF1dG8gZGVjb2RlciA9IGNyZWF0ZURlY29kZXJGcm9tRGlzayhyZXNvdXJjZUxvZyk7Ci0g
ICAgICAgIGlmICghZGVjb2RlcikgewotICAgICAgICAgICAgZ3JhbmRmYXRoZXJFeGlzdGluZ1dl
YnNpdGVEYXRhKCk7Ci0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIH0KLSAgICAgICAgCi0g
ICAgICAgIGNvcmVTdG9yZSgpLmNsZWFySW5NZW1vcnkoKTsKLSAgICAgICAgY29yZVN0b3JlKCku
cmVhZERhdGFGcm9tRGVjb2RlcigqZGVjb2Rlcik7CisgICAgY29yZVN0b3JlKCkuY2xlYXJJbk1l
bW9yeSgpOworICAgIGNvcmVTdG9yZSgpLnJlYWREYXRhRnJvbURlY29kZXIoKmRlY29kZXIpOwog
Ci0gICAgICAgIG1fbGFzdFN0YXRpc3RpY3NGaWxlU3luY1RpbWUgPSByZWFkVGltZTsKKyAgICBt
X2xhc3RTdGF0aXN0aWNzRmlsZVN5bmNUaW1lID0gcmVhZFRpbWU7CiAKLSAgICAgICAgaWYgKGNv
cmVTdG9yZSgpLmlzRW1wdHkoKSkKLSAgICAgICAgICAgIGdyYW5kZmF0aGVyRXhpc3RpbmdXZWJz
aXRlRGF0YSgpOwotICAgIH0pOworICAgIGlmIChjb3JlU3RvcmUoKS5pc0VtcHR5KCkpCisgICAg
ICAgIGdyYW5kZmF0aGVyRXhpc3RpbmdXZWJzaXRlRGF0YSgpOwogfQogICAgIAogdm9pZCBXZWJS
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmU6OnJlZnJlc2hGcm9tRGlzaygpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3Jl
LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0
b3JlLmgKaW5kZXggOTkxMzlhMDI5M2U2NmVmYzJhNTQ4OTYzYzg5MmIwODFkODMxMWY5Mi4uMDNj
OTZkNDc0MzE3M2I2ZWIzN2M3M2EwNGZhYmFlMTYyNDQ3Y2I1NCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL1dlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5oCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUu
aApAQCAtNTcsMjUgKzU3LDIzIEBAIGNsYXNzIFdlYlByb2Nlc3NQcm94eTsKIAogY2xhc3MgV2Vi
UmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlIGZpbmFsIDogcHVibGljIElQQzo6Q29ubmVjdGlv
bjo6V29ya1F1ZXVlTWVzc2FnZVJlY2VpdmVyIHsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUmVmPFdl
YlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZT4gY3JlYXRlKGNvbnN0IFN0cmluZyYpOworICAg
IHVzaW5nIFVwZGF0ZVBhcnRpdGlvbkNvb2tpZXNGb3JEb21haW5zSGFuZGxlciA9IFdURjo6RnVu
Y3Rpb248dm9pZChjb25zdCBWZWN0b3I8U3RyaW5nPiYgZG9tYWluc1RvUmVtb3ZlLCBjb25zdCBW
ZWN0b3I8U3RyaW5nPiYgZG9tYWluc1RvQWRkLCBib29sIHNob3VsZENsZWFyRmlyc3QpPjsKKyAg
ICBzdGF0aWMgUmVmPFdlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZT4gY3JlYXRlKGNvbnN0
IFN0cmluZyYgcmVzb3VyY2VMb2FkU3RhdGlzdGljc0RpcmVjdG9yeSwgVXBkYXRlUGFydGl0aW9u
Q29va2llc0ZvckRvbWFpbnNIYW5kbGVyJiYgdXBkYXRlUGFydGl0aW9uQ29va2llc0ZvckRvbWFp
bnNIYW5kbGVyID0geyB9KQorICAgIHsKKyAgICAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgV2Vi
UmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlKHJlc291cmNlTG9hZFN0YXRpc3RpY3NEaXJlY3Rv
cnksIFdURk1vdmUodXBkYXRlUGFydGl0aW9uQ29va2llc0ZvckRvbWFpbnNIYW5kbGVyKSkpOwor
ICAgIH0KKwogICAgIHN0YXRpYyB2b2lkIHNldE5vdGlmeVBhZ2VzV2hlbkRhdGFSZWNvcmRzV2Vy
ZVNjYW5uZWQoYm9vbCk7CiAgICAgc3RhdGljIHZvaWQgc2V0U2hvdWxkQ2xhc3NpZnlSZXNvdXJj
ZXNCZWZvcmVEYXRhUmVjb3Jkc1JlbW92YWwoYm9vbCk7CiAgICAgc3RhdGljIHZvaWQgc2V0U2hv
dWxkU3VibWl0VGVsZW1ldHJ5KGJvb2wpOwogICAgIHZpcnR1YWwgfldlYlJlc291cmNlTG9hZFN0
YXRpc3RpY3NTdG9yZSgpOwotICAgIAotICAgIHZvaWQgc2V0UmVzb3VyY2VMb2FkU3RhdGlzdGlj
c0VuYWJsZWQoYm9vbCk7Ci0gICAgYm9vbCByZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZCgp
IGNvbnN0OwotICAgIHZvaWQgcmVnaXN0ZXJTaGFyZWRSZXNvdXJjZUxvYWRPYnNlcnZlcigpOwot
ICAgIHZvaWQgcmVnaXN0ZXJTaGFyZWRSZXNvdXJjZUxvYWRPYnNlcnZlcihXVEY6OkZ1bmN0aW9u
PHZvaWQoY29uc3QgVmVjdG9yPFN0cmluZz4mIGRvbWFpbnNUb1JlbW92ZSwgY29uc3QgVmVjdG9y
PFN0cmluZz4mIGRvbWFpbnNUb0FkZCwgYm9vbCBjbGVhckZpcnN0KT4mJiBzaG91bGRQYXJ0aXRp
b25Db29raWVzRm9yRG9tYWluc0hhbmRsZXIpOwotICAgIAorCiAgICAgdm9pZCByZXNvdXJjZUxv
YWRTdGF0aXN0aWNzVXBkYXRlZChjb25zdCBWZWN0b3I8V2ViQ29yZTo6UmVzb3VyY2VMb2FkU3Rh
dGlzdGljcz4mIG9yaWdpbnMpOwogCiAgICAgdm9pZCBwcm9jZXNzV2lsbE9wZW5Db25uZWN0aW9u
KFdlYlByb2Nlc3NQcm94eSYsIElQQzo6Q29ubmVjdGlvbiYpOwogICAgIHZvaWQgcHJvY2Vzc0Rp
ZENsb3NlQ29ubmVjdGlvbihXZWJQcm9jZXNzUHJveHkmLCBJUEM6OkNvbm5lY3Rpb24mKTsKICAg
ICB2b2lkIGFwcGxpY2F0aW9uV2lsbFRlcm1pbmF0ZSgpOwogCi0gICAgdm9pZCByZWFkRGF0YUZy
b21EaXNrSWZOZWVkZWQoKTsKLQogICAgIHZvaWQgbG9nVXNlckludGVyYWN0aW9uKGNvbnN0IFdl
YkNvcmU6OlVSTCYpOwogICAgIHZvaWQgY2xlYXJVc2VySW50ZXJhY3Rpb24oY29uc3QgV2ViQ29y
ZTo6VVJMJik7CiAgICAgdm9pZCBoYXNIYWRVc2VySW50ZXJhY3Rpb24oY29uc3QgV2ViQ29yZTo6
VVJMJiwgV1RGOjpGdW5jdGlvbjx2b2lkIChib29sKT4mJik7CkBAIC0xMDIsMTIgKzEwMCwxMyBA
QCBwdWJsaWM6CiAgICAgdm9pZCBzZXRHcmFuZGZhdGhlcmluZ1RpbWUoU2Vjb25kcyk7CiAKIHBy
aXZhdGU6Ci0gICAgZXhwbGljaXQgV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlKGNvbnN0
IFN0cmluZyYpOworICAgIFdlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZShjb25zdCBTdHJp
bmcmLCBVcGRhdGVQYXJ0aXRpb25Db29raWVzRm9yRG9tYWluc0hhbmRsZXImJik7CiAKICAgICBS
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUmIGNvcmVTdG9yZSgpIHsgcmV0dXJuIG1fcmVzb3Vy
Y2VMb2FkU3RhdGlzdGljc1N0b3JlLmdldCgpOyB9CiAgICAgY29uc3QgUmVzb3VyY2VMb2FkU3Rh
dGlzdGljc1N0b3JlJiBjb3JlU3RvcmUoKSBjb25zdCB7IHJldHVybiBtX3Jlc291cmNlTG9hZFN0
YXRpc3RpY3NTdG9yZS5nZXQoKTsgfQogCiAgICAgdm9pZCBwcm9jZXNzU3RhdGlzdGljc0FuZERh
dGFSZWNvcmRzKCk7CisgICAgdm9pZCByZWFkRGF0YUZyb21EaXNrSWZOZWVkZWQoKTsKIAogICAg
IHZvaWQgY2xhc3NpZnlSZXNvdXJjZShXZWJDb3JlOjpSZXNvdXJjZUxvYWRTdGF0aXN0aWNzJik7
CiAgICAgdm9pZCByZW1vdmVEYXRhUmVjb3JkcygpOwpAQCAtMTQ4LDcgKzE0Nyw2IEBAIHByaXZh
dGU6CiAgICAgUmVmUHRyPFdlYkNvcmU6OkZpbGVNb25pdG9yPiBtX3N0YXRpc3RpY3NTdG9yYWdl
TW9uaXRvcjsKICAgICBTdHJpbmcgbV9zdGF0aXN0aWNzU3RvcmFnZVBhdGg7CiAgICAgV1RGOjpX
YWxsVGltZSBtX2xhc3RTdGF0aXN0aWNzRmlsZVN5bmNUaW1lOwotICAgIGJvb2wgbV9yZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzRW5hYmxlZCB7IGZhbHNlIH07CiAgICAgUnVuTG9vcDo6VGltZXI8V2Vi
UmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlPiBtX3RlbGVtZXRyeU9uZVNob3RUaW1lcjsKICAg
ICBSdW5Mb29wOjpUaW1lcjxXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmU+IG1fdGVsZW1l
dHJ5UmVwZWF0ZWRUaW1lcjsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vic2l0ZURhdGFTdG9yZUNvY29hLm1tIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5t
bQppbmRleCA4NGI3NzQ0MzliMDhiZDU2YTJiYTllNmU4MzIwYTNiNDRhOGY3Mjc0Li43ZjAzOGM5
ZTgyZWI4NWM5Y2EzMjhmMjdkMTc5M2VlYzc5ZTFmODUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vic2l0ZURhdGFTdG9yZUNvY29hLm1t
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRl
RGF0YVN0b3JlQ29jb2EubW0KQEAgLTEwMyw4ICsxMDMsNiBAQCB2b2lkIFdlYnNpdGVEYXRhU3Rv
cmU6OnBsYXRmb3JtSW5pdGlhbGl6ZSgpCiAKICAgICBBU1NFUlQoIWRhdGFTdG9yZXNXaXRoU3Rv
cmFnZU1hbmFnZXJzKCkuY29udGFpbnModGhpcykpOwogICAgIGRhdGFTdG9yZXNXaXRoU3RvcmFn
ZU1hbmFnZXJzKCkuYXBwZW5kKHRoaXMpOwotICAgIGlmIChtX3Jlc291cmNlTG9hZFN0YXRpc3Rp
Y3MpCi0gICAgICAgIG1fcmVzb3VyY2VMb2FkU3RhdGlzdGljcy0+cmVhZERhdGFGcm9tRGlza0lm
TmVlZGVkKCk7CiB9CiAKIHZvaWQgV2Vic2l0ZURhdGFTdG9yZTo6cGxhdGZvcm1EZXN0cm95KCkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRl
RGF0YVN0b3JlLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJz
aXRlRGF0YVN0b3JlLmNwcAppbmRleCBlNTkwNmE4NTU5YTgxNDM2OTBkYjkxYjJjZjRlOTFmNjIx
M2Q1OGZmLi5iMDdlZWZlZjNiNmU2ZWIyMjYzMWRjYzAwZDcxZDFkYWM0OTQ2ZWJkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9y
ZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVE
YXRhU3RvcmUuY3BwCkBAIC03Niw3ICs3Niw2IEBAIFdlYnNpdGVEYXRhU3RvcmU6OldlYnNpdGVE
YXRhU3RvcmUoQ29uZmlndXJhdGlvbiBjb25maWd1cmF0aW9uLCBXZWJDb3JlOjpTZXNzaW9uCiAg
ICAgLCBtX3Nlc3Npb25JRChzZXNzaW9uSUQpCiAgICAgLCBtX2NvbmZpZ3VyYXRpb24oV1RGTW92
ZShjb25maWd1cmF0aW9uKSkKICAgICAsIG1fc3RvcmFnZU1hbmFnZXIoU3RvcmFnZU1hbmFnZXI6
OmNyZWF0ZShtX2NvbmZpZ3VyYXRpb24ubG9jYWxTdG9yYWdlRGlyZWN0b3J5KSkKLSAgICAsIG1f
cmVzb3VyY2VMb2FkU3RhdGlzdGljcyhXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmU6OmNy
ZWF0ZShtX2NvbmZpZ3VyYXRpb24ucmVzb3VyY2VMb2FkU3RhdGlzdGljc0RpcmVjdG9yeSkpCiAg
ICAgLCBtX3F1ZXVlKFdvcmtRdWV1ZTo6Y3JlYXRlKCJjb20uYXBwbGUuV2ViS2l0LldlYnNpdGVE
YXRhU3RvcmUiKSkKIHsKICAgICBwbGF0Zm9ybUluaXRpYWxpemUoKTsKQEAgLTEyNTQsMzYgKzEy
NTMsMjcgQEAgdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpyZW1vdmVNZWRpYUtleXMoY29uc3QgU3Ry
aW5nJiBtZWRpYUtleXNTdG9yYWdlRGlyZWN0b3J5LAogCiBib29sIFdlYnNpdGVEYXRhU3RvcmU6
OnJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkKCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9y
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzID8gbV9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzLT5yZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzRW5hYmxlZCgpIDogZmFsc2U7CisgICAgcmV0dXJuICEhbV9yZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzOwogfQogCiB2b2lkIFdlYnNpdGVEYXRhU3RvcmU6OnNldFJlc291cmNl
TG9hZFN0YXRpc3RpY3NFbmFibGVkKGJvb2wgZW5hYmxlZCkKIHsKLSAgICBpZiAoIW1fcmVzb3Vy
Y2VMb2FkU3RhdGlzdGljcykKLSAgICAgICAgcmV0dXJuOwotCiAgICAgaWYgKGVuYWJsZWQgPT0g
cmVzb3VyY2VMb2FkU3RhdGlzdGljc0VuYWJsZWQoKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAg
Ly8gRklYTUU6IFdlIHNob3VsZCBwcm9iYWJseSBvbmx5IGluaXRpYWxpemUgbV9yZXNvdXJjZUxv
YWRTdGF0aXN0aWNzIHdoZW4gcmVzb3VyY2UgbG9hZCBzdGF0aXN0aWNzIGdldCBlbmFibGVkLgot
ICAgIG1fcmVzb3VyY2VMb2FkU3RhdGlzdGljcy0+c2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0Vu
YWJsZWQoZW5hYmxlZCk7Ci0KLSAgICBmb3IgKGF1dG8mIHByb2Nlc3NQb29sIDogcHJvY2Vzc1Bv
b2xzKCkpCi0gICAgICAgIHByb2Nlc3NQb29sLT5zZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5h
YmxlZChlbmFibGVkKTsKLX0KLQotdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpyZWdpc3RlclNoYXJl
ZFJlc291cmNlTG9hZE9ic2VydmVyKCkKLXsKLSAgICBpZiAoIW1fcmVzb3VyY2VMb2FkU3RhdGlz
dGljcykKLSAgICAgICAgcmV0dXJuOwotICAgIAorICAgIGlmIChlbmFibGVkKSB7CiAjaWYgSEFW
RShDRk5FVFdPUktfU1RPUkFHRV9QQVJUSVRJT05JTkcpCi0gICAgbV9yZXNvdXJjZUxvYWRTdGF0
aXN0aWNzLT5yZWdpc3RlclNoYXJlZFJlc291cmNlTG9hZE9ic2VydmVyKFt0aGlzXSAoY29uc3Qg
VmVjdG9yPFN0cmluZz4mIGRvbWFpbnNUb1JlbW92ZSwgY29uc3QgVmVjdG9yPFN0cmluZz4mIGRv
bWFpbnNUb0FkZCwgYm9vbCBzaG91bGRDbGVhckZpcnN0KSB7Ci0gICAgICAgIHVwZGF0ZUNvb2tp
ZVBhcnRpdGlvbmluZ0ZvclRvcFByaXZhdGVseU93bmVkRG9tYWlucyhkb21haW5zVG9SZW1vdmUs
IGRvbWFpbnNUb0FkZCwgc2hvdWxkQ2xlYXJGaXJzdCk7Ci0gICAgfSk7CisgICAgICAgIG1fcmVz
b3VyY2VMb2FkU3RhdGlzdGljcyA9IFdlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZTo6Y3Jl
YXRlKG1fY29uZmlndXJhdGlvbi5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGlyZWN0b3J5LCBbdGhp
c10gKGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBkb21haW5zVG9SZW1vdmUsIGNvbnN0IFZlY3RvcjxT
dHJpbmc+JiBkb21haW5zVG9BZGQsIGJvb2wgc2hvdWxkQ2xlYXJGaXJzdCkgeworICAgICAgICAg
ICAgdXBkYXRlQ29va2llUGFydGl0aW9uaW5nRm9yVG9wUHJpdmF0ZWx5T3duZWREb21haW5zKGRv
bWFpbnNUb1JlbW92ZSwgZG9tYWluc1RvQWRkLCBzaG91bGRDbGVhckZpcnN0KTsKKyAgICAgICAg
fSk7CiAjZWxzZQotICAgIG1fcmVzb3VyY2VMb2FkU3RhdGlzdGljcy0+cmVnaXN0ZXJTaGFyZWRS
ZXNvdXJjZUxvYWRPYnNlcnZlcigpOworICAgICAgICBtX3Jlc291cmNlTG9hZFN0YXRpc3RpY3Mg
PSBXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmU6OmNyZWF0ZShtX2NvbmZpZ3VyYXRpb24u
cmVzb3VyY2VMb2FkU3RhdGlzdGljc0RpcmVjdG9yeSk7CiAjZW5kaWYKKyAgICB9IGVsc2UKKyAg
ICAgICAgbV9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzID0gbnVsbHB0cjsKKworICAgIGZvciAoYXV0
byYgcHJvY2Vzc1Bvb2wgOiBwcm9jZXNzUG9vbHMoKSkKKyAgICAgICAgcHJvY2Vzc1Bvb2wtPnNl
dFJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkKGVuYWJsZWQpOwogfQogCiBEYXRhYmFzZVBy
b2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMgV2Vic2l0ZURhdGFTdG9yZTo6ZGF0YWJhc2VQcm9jZXNz
UGFyYW1ldGVycygpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2Vic2l0
ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYnNp
dGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuaAppbmRleCAzZDY3MTkxNTI3ZmM1M2JjNThiNjM0NDk5
ODM1MmY4YTdhYWEyYTdiLi5hYjM1NDNiM2IyMDJlYmMxZTg2NzkwNWE4YWVjZDkwY2M1ZWMyMGQ2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0
ZURhdGFTdG9yZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9X
ZWJzaXRlRGF0YVN0b3JlLmgKQEAgLTkwLDcgKzkwLDYgQEAgcHVibGljOgogICAgIGJvb2wgcmVz
b3VyY2VMb2FkU3RhdGlzdGljc0VuYWJsZWQoKSBjb25zdDsKICAgICB2b2lkIHNldFJlc291cmNl
TG9hZFN0YXRpc3RpY3NFbmFibGVkKGJvb2wpOwogICAgIFdlYlJlc291cmNlTG9hZFN0YXRpc3Rp
Y3NTdG9yZSogcmVzb3VyY2VMb2FkU3RhdGlzdGljcygpIGNvbnN0IHsgcmV0dXJuIG1fcmVzb3Vy
Y2VMb2FkU3RhdGlzdGljcy5nZXQoKTsgfQotICAgIHZvaWQgcmVnaXN0ZXJTaGFyZWRSZXNvdXJj
ZUxvYWRPYnNlcnZlcigpOwogCiAgICAgc3RhdGljIHZvaWQgY2xvbmVTZXNzaW9uRGF0YShXZWJQ
YWdlUHJveHkmIHNvdXJjZVBhZ2UsIFdlYlBhZ2VQcm94eSYgbmV3UGFnZSk7CiAKQEAgLTE2MSw3
ICsxNjAsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9oYXNSZXNvbHZlZERpcmVjdG9yaWVzIHsg
ZmFsc2UgfTsKIAogICAgIGNvbnN0IFJlZlB0cjxTdG9yYWdlTWFuYWdlcj4gbV9zdG9yYWdlTWFu
YWdlcjsKLSAgICBjb25zdCBSZWZQdHI8V2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlPiBt
X3Jlc291cmNlTG9hZFN0YXRpc3RpY3M7CisgICAgUmVmUHRyPFdlYlJlc291cmNlTG9hZFN0YXRp
c3RpY3NTdG9yZT4gbV9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzOwogCiAgICAgUmVmPFdvcmtRdWV1
ZT4gbV9xdWV1ZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3dwZS9X
ZWJQcm9jZXNzUG9vbFdQRS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mvd3BlL1dlYlBy
b2Nlc3NQb29sV1BFLmNwcAppbmRleCBhZTNlZWU2YTc1OGU2ZDM4NWE0NDcxYzliYTRhZTRkYjQ0
NDQ3MGU1Li4wYjljNmZiZThhZDc3NWIzOGI3OWZlZDBkMWY1NDk1MTJjZTJlNzY1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mvd3BlL1dlYlByb2Nlc3NQb29sV1BFLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mvd3BlL1dlYlByb2Nlc3NQb29sV1BFLmNwcApA
QCAtNzUsNyArNzUsNiBAQCB2b2lkIFdlYlByb2Nlc3NQb29sOjpwbGF0Zm9ybUluaXRpYWxpemUo
KQogICAgICAgICAgICAgZ191bnNldGVudigiV0VCS0lUX0lOU1BFQ1RPUl9TRVJWRVIiKTsKICAg
ICB9CiAjZW5kaWYKLSAgICBtX3dlYnNpdGVEYXRhU3RvcmUtPndlYnNpdGVEYXRhU3RvcmUoKS5y
ZWdpc3RlclNoYXJlZFJlc291cmNlTG9hZE9ic2VydmVyKCk7CiB9CiAKIFdURjo6U3RyaW5nIFdl
YlByb2Nlc3NQb29sOjpsZWdhY3lQbGF0Zm9ybURlZmF1bHRBcHBsaWNhdGlvbkNhY2hlRGlyZWN0
b3J5KCkK
</data>
<flag name="review"
          id="335546"
          type_id="1"
          status="+"
          setter="bfulgham"
    />
          </attachment>
      

    </bug>

</bugzilla>