<?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>199879</bug_id>
          
          <creation_ts>2019-07-17 13:20:34 -0700</creation_ts>
          <short_desc>Prewarm local storage in the NetworkProcess to reduce WebContent process hangs</short_desc>
          <delta_ts>2019-07-17 19:52:24 -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>WebCore Misc.</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>achristensen</cc>
    
    <cc>beidson</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>japhet</cc>
    
    <cc>rniwa</cc>
    
    <cc>sihui_liu</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1553648</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-07-17 13:20:34 -0700</bug_when>
    <thetext>Prewarm local storage in the NetworkProcess to reduce WebContent process hangs on Messages::StorageManager::GetValues sync IPC.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1553649</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-07-17 13:20:48 -0700</bug_when>
    <thetext>&lt;rdar://problem/53217757&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1553658</commentid>
    <comment_count>2</comment_count>
      <attachid>374324</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-07-17 13:32:36 -0700</bug_when>
    <thetext>Created attachment 374324
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1553815</commentid>
    <comment_count>3</comment_count>
      <attachid>374324</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-07-17 19:52:22 -0700</bug_when>
    <thetext>Comment on attachment 374324
Patch

Clearing flags on attachment: 374324

Committed r247555: &lt;https://trac.webkit.org/changeset/247555&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1553816</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-07-17 19:52:24 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>374324</attachid>
            <date>2019-07-17 13:32:36 -0700</date>
            <delta_ts>2019-07-17 19:52:22 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-199879-20190717133235.patch</filename>
            <type>text/plain</type>
            <size>17960</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ3NDk4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDNhOGZhN2YxNzZmNjYy
ZjA3OWIzOGRlYjlkY2E5ZmI4MzhkYWU4ZS4uZWY4NjhmZmE3NmVmYWI5NmI4YzY1ZWM3OTE2YmE4
YTdhZjZjMzNiNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQyIEBACisyMDE5LTA3LTE3ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgUHJld2FybSBsb2NhbCBzdG9y
YWdlIGluIHRoZSBOZXR3b3JrUHJvY2VzcyB0byByZWR1Y2UgV2ViQ29udGVudCBwcm9jZXNzIGhh
bmdzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTk4
NzkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzUzMjE3NzU3PgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdoZW4gSlMgYWNjZXNzZXMgd2luZG93Lmxv
Y2FsU3RvcmFnZSBmb3IgdGhlIGZpcnN0IHRpbWUsIHdlIGVuZCB1cCBkb2luZyBhCisgICAgICAg
IHN5bmNocm9ub3VzIElQQyB0byB0aGUgbmV0d29yayBwcm9jZXNzIHRvIHB1bGwgaW4gYWxsIGl0
ZW1zIGluIHRoZSBsb2NhbAorICAgICAgICBzdG9yYWdlIGZvciB0aGUgb3JpZ2luLiBJZiB0aGUg
bmV0d29yayBwcm9jZXNzIGRvZXMgbm90IGhhdmUgdGhpcyBkYXRhIGluCisgICAgICAgIG1lbW9y
eSwgaXQgaGFzIHRvIHJlYWQgaXQgZnJvbSBhIGRhdGFiYXNlIG9uIGRpc2ssIHdoaWNoIG1heSB0
YWtlIGEgc2lnbmlmaWNhbnQKKyAgICAgICAgYW1vdW50IG9mIHRpbWUgYW5kIGhhbmcgdGhlIFdl
YkNvbnRlbnQgcHJvY2VzcyBkdXJpbmcgdGhpcyB0aW1lLgorCisgICAgICAgIFRvIGFsbGV2aWF0
ZSB0aGlzIHByb2JsZW0sIHRoaXMgcGF0Y2ggaW50cm9kdWNlcyBwcmV3YXJtaW5nIG9uIHRoZSBs
b2NhbCBzdG9yYWdlCisgICAgICAgIGluIHRoZSBuZXR3b3JrIHByb2Nlc3Mgd2hlbiBsb2FkaW5n
IGEgZ2l2ZW4gb3JpZ2luIGluIHRoZSBXZWJDb250ZW50IHByb2Nlc3MuCisgICAgICAgIFRoaXMg
d2F5LCBpbiBtb3N0IGNhc2VzLCB3aGVuIHRoZSBKUyBhY2Nlc3NlcyB3aW5kb3cubG9jYWxTdG9y
YWdlIGZvciB0aGUgZmlyc3QKKyAgICAgICAgdGltZSwgdGhlIHN5bmNocm9ub3VzIElQQyB0byB0
aGUgbmV0d29yayBwcm9jZXNzIHJldHVybnMgbXVjaCBmYXN0ZXIgKG1lYXN1cmVkCisgICAgICAg
IDUwLTEwMG1zIGZvciBhIHZlcnkgbGFyZ2UgZGF0YWJhc2UsIGRvd24gZnJvbSAyNTAtMzAwbXMp
LCBhcyBpdCBvbmx5IG5lZWRzIHRvCisgICAgICAgIElQQyB0aGUgZGF0YSBvdmVyLCB3aXRob3V0
IHRoZSBuZWVkIHRvIGZldGNoIGl0IGZyb20gZGlzay4KKworICAgICAgICBBcyBhIHNhZmV0eSBu
ZXQgdG8gYXZvaWQgZXhjZXNzaXZlIHByZXdhcm1pbmcsIHdlIGN1cnJlbnRseSBwcmV3YXJtIGF0
IG1vc3QgNQorICAgICAgICBzZWN1cml0eSBvcmlnaW5zIHBlciBwYWdlIGxvYWQuCisKKyAgICAg
ICAgKiBsb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXI6OmNvbW1pdERhdGEpOgorICAgICAgICAqIHBhZ2UvRE9NV2luZG93LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkRPTVdpbmRvdzo6cHJld2FybUxvY2FsU3RvcmFnZUlmTmVjZXNzYXJ5
KToKKyAgICAgICAgKiBwYWdlL0RPTVdpbmRvdy5oOgorICAgICAgICAqIHBhZ2UvRnJhbWUuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6RnJhbWU6OmRpZFByZXdhcm1Mb2NhbFN0b3JhZ2UpOgorICAg
ICAgICAoV2ViQ29yZTo6RnJhbWU6Om1heVByZXdhcm1Mb2NhbFN0b3JhZ2UgY29uc3QpOgorICAg
ICAgICAqIHBhZ2UvRnJhbWUuaDoKKyAgICAgICAgKiBzdG9yYWdlL1N0b3JhZ2UuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6U3RvcmFnZTo6cHJld2FybSk6CisgICAgICAgICogc3RvcmFnZS9TdG9y
YWdlLmg6CisgICAgICAgICogc3RvcmFnZS9TdG9yYWdlQXJlYS5oOgorICAgICAgICAoV2ViQ29y
ZTo6U3RvcmFnZUFyZWE6OnByZXdhcm0pOgorCiAyMDE5LTA3LTE2ICBQZXIgQXJuZSBWb2xsYW4g
IDxwdm9sbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBQcmV3YXJtIGZvbnQgY2FjaGUgd2l0aCBt
b3JlIGZvbnRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDA5MTIwZDU4N2FiZTIwYTMxYWQ4NjQ2MjVlZTQ1MWQxYjE1
NTlkNGYuLmM5NmY5YzIzOTY2NzFiNDVkNmU0NWVjMDY5MDk1Y2I1MjJlNWMyMjIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMjQgQEAKKzIwMTktMDctMTcgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxl
LmNvbT4KKworICAgICAgICBQcmV3YXJtIGxvY2FsIHN0b3JhZ2UgaW4gdGhlIE5ldHdvcmtQcm9j
ZXNzIHRvIHJlZHVjZSBXZWJDb250ZW50IHByb2Nlc3MgaGFuZ3MKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5OTg3OQorICAgICAgICA8cmRhcjovL3By
b2JsZW0vNTMyMTc3NTc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9XZWJTdG9yYWdlL1N0b3JhZ2VNYW5hZ2VyLmNwcDoK
KyAgICAgICAgKFdlYktpdDo6U3RvcmFnZU1hbmFnZXI6OnByZXdhcm0pOgorICAgICAgICAoV2Vi
S2l0OjpTdG9yYWdlTWFuYWdlcjo6Z2V0VmFsdWVzKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vz
cy9XZWJTdG9yYWdlL1N0b3JhZ2VNYW5hZ2VyLmg6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mv
V2ViU3RvcmFnZS9TdG9yYWdlTWFuYWdlci5tZXNzYWdlcy5pbjoKKyAgICAgICAgKiBXZWJQcm9j
ZXNzL1dlYlN0b3JhZ2UvU3RvcmFnZUFyZWFJbXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6U3Rv
cmFnZUFyZWFJbXBsOjpwcmV3YXJtKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlN0b3JhZ2Uv
U3RvcmFnZUFyZWFJbXBsLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJTdG9yYWdlL1N0b3Jh
Z2VBcmVhTWFwLmNwcDoKKyAgICAgICAgKFdlYktpdDo6U3RvcmFnZUFyZWFNYXA6OmxvYWRWYWx1
ZXNJZk5lZWRlZCk6CisgICAgICAgIChXZWJLaXQ6OlN0b3JhZ2VBcmVhTWFwOjpwcmV3YXJtKToK
KyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlN0b3JhZ2UvU3RvcmFnZUFyZWFNYXAuaDoKKwogMjAx
OS0wNy0xNiAgQnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBV
cGRhdGUgV2ViQ29udGVudCBQcm9jZXNzIHNhbmRib3ggYmFzZWQgb24gdXNlciBzZWVkIGRhdGEK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwCmluZGV4IDcxOWYxZThhYWZm
ZjkwOWQwMTA2YjdjYTk1ODI2NDhkODlhOGFiNjAuLjI3NmEzMDZmZmQwODMyMzVlNjdiNjdiMjIy
NWQ1YjhlM2M5YmQ5MTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVu
dExvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNw
cApAQCAtMTA4NCw2ICsxMDg0LDkgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6Y29tbWl0RGF0YShj
b25zdCBjaGFyKiBieXRlcywgc2l6ZV90IGxlbmd0aCkKICAgICAgICAgaWYgKCFpc0xvYWRpbmco
KSkKICAgICAgICAgICAgIHJldHVybjsKIAorICAgICAgICBpZiAoYXV0byogd2luZG93ID0gbV9m
cmFtZS0+ZG9jdW1lbnQoKS0+ZG9tV2luZG93KCkpCisgICAgICAgICAgICB3aW5kb3ctPnByZXdh
cm1Mb2NhbFN0b3JhZ2VJZk5lY2Vzc2FyeSgpOworCiAgICAgICAgIGJvb2wgdXNlckNob3NlbjsK
ICAgICAgICAgU3RyaW5nIGVuY29kaW5nOwogICAgICAgICBpZiAob3ZlcnJpZGVFbmNvZGluZygp
LmlzTnVsbCgpKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAKaW5kZXggOTViODg4ODViNDE1
ZDkzMjhhOGQ2ZTBjNDY4OTcwM2Y3MDhhNDBiYS4uMjliYmU4MmJlZTE0YWI5NWUyYWU5ZmFkYmM3
ZTliZTg1MTk0NDQyOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcApAQCAtNDIzLDYgKzQy
MywyOSBAQCB2b2lkIERPTVdpbmRvdzo6ZGlkU2VjdXJlVHJhbnNpdGlvblRvKERvY3VtZW50JiBk
b2N1bWVudCkKICAgICBtX3BlcmZvcm1hbmNlID0gbnVsbHB0cjsKIH0KIAordm9pZCBET01XaW5k
b3c6OnByZXdhcm1Mb2NhbFN0b3JhZ2VJZk5lY2Vzc2FyeSgpCit7CisgICAgYXV0byogcGFnZSA9
IHRoaXMtPnBhZ2UoKTsKKworICAgIC8vIE5vIG5lZWQgdG8gcHJld2FybSBmb3IgZXBoZW1lcmFs
IHNlc3Npb25zIHNpbmNlIHRoZSBkYXRhIGlzIGluIG1lbW9yeSBvbmx5LgorICAgIGlmICghcGFn
ZSB8fCBwYWdlLT51c2VzRXBoZW1lcmFsU2Vzc2lvbigpKQorICAgICAgICByZXR1cm47CisKKyAg
ICBpZiAoIXBhZ2UtPm1haW5GcmFtZSgpLm1heVByZXdhcm1Mb2NhbFN0b3JhZ2UoKSkKKyAgICAg
ICAgcmV0dXJuOworCisgICAgYXV0byBsb2NhbFN0b3JhZ2VSZXN1bHQgPSB0aGlzLT5sb2NhbFN0
b3JhZ2UoKTsKKyAgICBpZiAobG9jYWxTdG9yYWdlUmVzdWx0Lmhhc0V4Y2VwdGlvbigpKQorICAg
ICAgICByZXR1cm47CisKKyAgICBhdXRvKiBsb2NhbFN0b3JhZ2UgPSBsb2NhbFN0b3JhZ2VSZXN1
bHQucmV0dXJuVmFsdWUoKTsKKyAgICBpZiAoIWxvY2FsU3RvcmFnZSkKKyAgICAgICAgcmV0dXJu
OworCisgICAgaWYgKGxvY2FsU3RvcmFnZS0+cHJld2FybSgpKQorICAgICAgICBwYWdlLT5tYWlu
RnJhbWUoKS5kaWRQcmV3YXJtTG9jYWxTdG9yYWdlKCk7Cit9CisKIERPTVdpbmRvdzo6fkRPTVdp
bmRvdygpCiB7CiAgICAgaWYgKG1fc3VzcGVuZGVkRm9yRG9jdW1lbnRTdXNwZW5zaW9uKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaCBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvRE9NV2luZG93LmgKaW5kZXggNmU1NjJhOTAxZDAwZDVmNjlhYzA3ZjMzMTNhZWI5MjYx
ZDljYzRkZC4uNmRiMzIxZWI5NGM3ODJhYzA0MDM1Mjk0Zjg0MjMwNDgzNTE2YTE5NiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL0RPTVdpbmRvdy5oCkBAIC0xODEsNiArMTgxLDggQEAgcHVibGljOgogCiAgICAgdm9p
ZCBzaG93TW9kYWxEaWFsb2coY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcsIGNvbnN0IFN0cmluZyYg
ZGlhbG9nRmVhdHVyZXNTdHJpbmcsIERPTVdpbmRvdyYgYWN0aXZlV2luZG93LCBET01XaW5kb3cm
IGZpcnN0V2luZG93LCBjb25zdCBXVEY6OkZ1bmN0aW9uPHZvaWQoRE9NV2luZG93Jik+JiBwcmVw
YXJlRGlhbG9nRnVuY3Rpb24pOwogCisgICAgdm9pZCBwcmV3YXJtTG9jYWxTdG9yYWdlSWZOZWNl
c3NhcnkoKTsKKwogICAgIHZvaWQgYWxlcnQoY29uc3QgU3RyaW5nJiBtZXNzYWdlID0gZW1wdHlT
dHJpbmcoKSk7CiAgICAgYm9vbCBjb25maXJtKGNvbnN0IFN0cmluZyYgbWVzc2FnZSk7CiAgICAg
U3RyaW5nIHByb21wdChjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgZGVmYXVs
dFZhbHVlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWUuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9GcmFtZS5jcHAKaW5kZXggZWJhNjU5NjhjZWE2NTU3NzY1NjMwMjFi
ZGNlMTdmMWU3NjBiZDJkOS4uYTM5OTI4MTZiODNiZTk5Y2QyMGIyNjllMzkxZWU0ZTAwYjUzOTlk
ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9GcmFtZS5jcHAKQEAgLTExNyw2ICsxMTcsOSBAQCBzdGF0aWMgY29uc3Qg
U2Vjb25kcyBzY3JvbGxGcmVxdWVuY3kgeyAxMDAwX3MgLyA2MC4gfTsKIAogREVGSU5FX0RFQlVH
X09OTFlfR0xPQkFMKFdURjo6UmVmQ291bnRlZExlYWtDb3VudGVyLCBmcmFtZUNvdW50ZXIsICgi
RnJhbWUiKSk7CiAKKy8vIFdlIHByZXdhcm0gbG9jYWwgc3RvcmFnZSBmb3IgYXQgbW9zdCA1IG9y
aWdpbnMgaW4gYSBnaXZlbiBwYWdlLgorc3RhdGljIGNvbnN0IHVuc2lnbmVkIG1heGxvY2FsU3Rv
cmFnZVByZXdhcm1pbmdDb3VudCB7IDUgfTsKKwogc3RhdGljIGlubGluZSBGcmFtZSogcGFyZW50
RnJvbU93bmVyRWxlbWVudChIVE1MRnJhbWVPd25lckVsZW1lbnQqIG93bmVyRWxlbWVudCkKIHsK
ICAgICBpZiAoIW93bmVyRWxlbWVudCkKQEAgLTk5Miw2ICs5OTUsMTkgQEAgdm9pZCBGcmFtZTo6
ZHJvcENoaWxkcmVuKCkKICAgICAgICAgdHJlZSgpLnJlbW92ZUNoaWxkKCpjaGlsZCk7CiB9CiAK
K3ZvaWQgRnJhbWU6OmRpZFByZXdhcm1Mb2NhbFN0b3JhZ2UoKQoreworICAgIEFTU0VSVChpc01h
aW5GcmFtZSgpKTsKKyAgICBBU1NFUlQobV9sb2NhbFN0b3JhZ2VQcmV3YXJtaW5nQ291bnQgPCBt
YXhsb2NhbFN0b3JhZ2VQcmV3YXJtaW5nQ291bnQpOworICAgICsrbV9sb2NhbFN0b3JhZ2VQcmV3
YXJtaW5nQ291bnQ7Cit9CisKK2Jvb2wgRnJhbWU6Om1heVByZXdhcm1Mb2NhbFN0b3JhZ2UoKSBj
b25zdAoreworICAgIEFTU0VSVChpc01haW5GcmFtZSgpKTsKKyAgICByZXR1cm4gbV9sb2NhbFN0
b3JhZ2VQcmV3YXJtaW5nQ291bnQgPCBtYXhsb2NhbFN0b3JhZ2VQcmV3YXJtaW5nQ291bnQ7Cit9
CisKIHZvaWQgRnJhbWU6OnNlbGZPbmx5UmVmKCkKIHsKICAgICBBU1NFUlQoaXNNYWluRnJhbWUo
KSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0ZyYW1lLmgKaW5kZXggNDI3NDJkZDZmOGU3YTg3MTIzNDRlMjg5YzdmZWRlOTcy
NWUyZTg3NS4uNDM0ZGYwMWI1ZDI0OWM1NzAwODQwZDg4MzE3YTExMGNmNGFkZjcyZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvRnJhbWUuaApAQCAtMjg5LDYgKzI4OSw5IEBAIHB1YmxpYzoKICAgICBib29sIGlzVVJMQWxs
b3dlZChjb25zdCBVUkwmKSBjb25zdDsKICAgICBXRUJDT1JFX0VYUE9SVCBib29sIGlzQWx3YXlz
T25Mb2dnaW5nQWxsb3dlZCgpIGNvbnN0OwogCisgICAgdm9pZCBkaWRQcmV3YXJtTG9jYWxTdG9y
YWdlKCk7CisgICAgYm9vbCBtYXlQcmV3YXJtTG9jYWxTdG9yYWdlKCkgY29uc3Q7CisKIC8vID09
PT09PT09CiAKICAgICB2b2lkIHNlbGZPbmx5UmVmKCk7CkBAIC0zNDgsNiArMzUxLDcgQEAgcHJp
dmF0ZToKICAgICB1bnNpZ25lZCBtX25hdmlnYXRpb25EaXNhYmxlQ291bnQgeyAwIH07CiAgICAg
dW5zaWduZWQgbV9zZWxmT25seVJlZkNvdW50IHsgMCB9OwogICAgIGJvb2wgbV9oYXNIYWRVc2Vy
SW50ZXJhY3Rpb24geyBmYWxzZSB9OworICAgIHVuc2lnbmVkIG1fbG9jYWxTdG9yYWdlUHJld2Fy
bWluZ0NvdW50IHsgMCB9OwogCiBwcm90ZWN0ZWQ6CiAgICAgVW5pcXVlUmVmPEV2ZW50SGFuZGxl
cj4gbV9ldmVudEhhbmRsZXI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL1N0
b3JhZ2UuY3BwIGIvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9TdG9yYWdlLmNwcAppbmRleCA0N2Ri
YjE3ZDlhZTZkMjY5YzE0NzAzYTFhNjJhNDkyZWU2NmRmNDE2Li45MTk3YjYwZTdlNmExNTVjNDQ2
OGQ1Mjk0ZmFiMjUwYzg2Nzk4N2ZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdl
L1N0b3JhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0b3JhZ2UvU3RvcmFnZS5jcHAKQEAg
LTk3LDYgKzk3LDExIEBAIEV4Y2VwdGlvbk9yPHZvaWQ+IFN0b3JhZ2U6OnJlbW92ZUl0ZW0oY29u
c3QgU3RyaW5nJiBrZXkpCiAgICAgcmV0dXJuIHsgfTsKIH0KIAorYm9vbCBTdG9yYWdlOjpwcmV3
YXJtKCkKK3sKKyAgICByZXR1cm4gbV9zdG9yYWdlQXJlYS0+cHJld2FybSgpOworfQorCiBFeGNl
cHRpb25Pcjx2b2lkPiBTdG9yYWdlOjpjbGVhcigpCiB7CiAgICAgYXV0byogZnJhbWUgPSB0aGlz
LT5mcmFtZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9TdG9yYWdlLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL1N0b3JhZ2UuaAppbmRleCAyOGFhOWFiMTRlMWIyMmFj
YzViYzViNGY2ZTFjODRjMWE5NzRmNjYwLi41MjE1ZjQ3YzM3N2ZmNzU2NGRhYTFlNDZlZWY3OTQ0
ZDMwODVmNjExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL1N0b3JhZ2UuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL1N0b3JhZ2UuaApAQCAtNDYsNiArNDYsNyBAQCBw
dWJsaWM6CiAgICAgRXhjZXB0aW9uT3I8dm9pZD4gcmVtb3ZlSXRlbShjb25zdCBTdHJpbmcmIGtl
eSk7CiAgICAgRXhjZXB0aW9uT3I8dm9pZD4gY2xlYXIoKTsKICAgICBib29sIGNvbnRhaW5zKGNv
bnN0IFN0cmluZyYga2V5KSBjb25zdDsKKyAgICBib29sIHByZXdhcm0oKTsKIAogICAgIC8vIEJp
bmRpbmdzIHN1cHBvcnQgZnVuY3Rpb25zLgogICAgIGJvb2wgaXNTdXBwb3J0ZWRQcm9wZXJ0eU5h
bWUoY29uc3QgU3RyaW5nJikgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdG9y
YWdlL1N0b3JhZ2VBcmVhLmggYi9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL1N0b3JhZ2VBcmVhLmgK
aW5kZXggOTczMmI2NmM3YWY4NTVhZjhlZjNmYTY3Y2MwY2FkOTQ5MGI4NjQwMC4uZjM5Y2NkN2U2
ZGFjZGZmNTZhZTdkZjY2MGRkOTdiNWZmNTI2NDZkNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvc3RvcmFnZS9TdG9yYWdlQXJlYS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0b3JhZ2UvU3Rv
cmFnZUFyZWEuaApAQCAtNTgsNiArNTgsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIGlu
Y3JlbWVudEFjY2Vzc0NvdW50KCkgeyB9CiAgICAgdmlydHVhbCB2b2lkIGRlY3JlbWVudEFjY2Vz
c0NvdW50KCkgeyB9CiAgICAgdmlydHVhbCB2b2lkIGNsb3NlRGF0YWJhc2VJZklkbGUoKSB7IH0K
KyAgICB2aXJ0dWFsIGJvb2wgcHJld2FybSgpIHsgcmV0dXJuIGZhbHNlOyB9CiAKICAgICB2aXJ0
dWFsIGNvbnN0IFNlY3VyaXR5T3JpZ2luRGF0YSYgc2VjdXJpdHlPcmlnaW4oKSBjb25zdCA9IDA7
CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9XZWJTdG9yYWdl
L1N0b3JhZ2VNYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvV2ViU3Rv
cmFnZS9TdG9yYWdlTWFuYWdlci5jcHAKaW5kZXggN2UwMzM2ZjQxNGNkMjIzYmFjNzk1YzdlZTcw
MmQ5ZjBlMTEwNjMwZi4uM2I0NmVkMGIxYTMwZmJjYzU3MzE4OThjMWYyZGUxMjNlMGM5ODlmZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9XZWJTdG9yYWdlL1N0b3Jh
Z2VNYW5hZ2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1dlYlN0b3Jh
Z2UvU3RvcmFnZU1hbmFnZXIuY3BwCkBAIC02NSwxMSArNjUsMTEgQEAgcHVibGljOgogCiAgICAg
Ym9vbCBpc0VwaGVtZXJhbCgpIGNvbnN0IHsgcmV0dXJuICFtX2xvY2FsU3RvcmFnZU5hbWVzcGFj
ZTsgfQogCisgICAgdm9pZCBvcGVuRGF0YWJhc2VBbmRJbXBvcnRJdGVtc0lmTmVlZGVkKCkgY29u
c3Q7CisKIHByaXZhdGU6CiAgICAgZXhwbGljaXQgU3RvcmFnZUFyZWEoTG9jYWxTdG9yYWdlTmFt
ZXNwYWNlKiwgY29uc3QgU2VjdXJpdHlPcmlnaW5EYXRhJiwgdW5zaWduZWQgcXVvdGFJbkJ5dGVz
KTsKIAotICAgIHZvaWQgb3BlbkRhdGFiYXNlQW5kSW1wb3J0SXRlbXNJZk5lZWRlZCgpIGNvbnN0
OwotCiAgICAgdm9pZCBkaXNwYXRjaEV2ZW50cyhJUEM6OkNvbm5lY3Rpb246OlVuaXF1ZUlEIHNv
dXJjZUNvbm5lY3Rpb24sIHVpbnQ2NF90IHNvdXJjZVN0b3JhZ2VBcmVhSUQsIGNvbnN0IFN0cmlu
ZyYga2V5LCBjb25zdCBTdHJpbmcmIG9sZFZhbHVlLCBjb25zdCBTdHJpbmcmIG5ld1ZhbHVlLCBj
b25zdCBTdHJpbmcmIHVybFN0cmluZykgY29uc3Q7CiAKICAgICAvLyBXaWxsIGJlIG51bGwgaWYg
dGhlIHN0b3JhZ2UgYXJlYSBiZWxvbmdzIHRvIGEgc2Vzc2lvbiBzdG9yYWdlIG5hbWVzcGFjZSBv
ciB0aGUgc3RvcmFnZSBhcmVhIGlzIGluIGFuIGVwaGVtZXJhbCBzZXNzaW9uLgpAQCAtODQ1LDcg
Kzg0NSwxNCBAQCB2b2lkIFN0b3JhZ2VNYW5hZ2VyOjpkZXN0cm95U3RvcmFnZU1hcChJUEM6OkNv
bm5lY3Rpb24mIGNvbm5lY3Rpb24sIHVpbnQ2NF90IHN0bwogICAgIG1fc3RvcmFnZUFyZWFzQnlD
b25uZWN0aW9uLnJlbW92ZShjb25uZWN0aW9uQW5kU3RvcmFnZU1hcElEUGFpcik7CiB9CiAKLXZv
aWQgU3RvcmFnZU1hbmFnZXI6OmdldFZhbHVlcyhJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24s
IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSYmIHNlY3VyaXR5T3JpZ2luRGF0YSwgdWludDY0
X3Qgc3RvcmFnZU1hcElELCB1aW50NjRfdCBzdG9yYWdlTWFwU2VlZCwgR2V0VmFsdWVzQ2FsbGJh
Y2smJiBjb21wbGV0aW9uSGFuZGxlcikKK3ZvaWQgU3RvcmFnZU1hbmFnZXI6OnByZXdhcm0oSVBD
OjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLCB1aW50NjRfdCBzdG9yYWdlTWFwSUQpCit7CisgICAg
QVNTRVJUKCFSdW5Mb29wOjppc01haW4oKSk7CisgICAgaWYgKGF1dG8qIHN0b3JhZ2VBcmVhID0g
ZmluZFN0b3JhZ2VBcmVhKGNvbm5lY3Rpb24sIHN0b3JhZ2VNYXBJRCkpCisgICAgICAgIHN0b3Jh
Z2VBcmVhLT5vcGVuRGF0YWJhc2VBbmRJbXBvcnRJdGVtc0lmTmVlZGVkKCk7Cit9CisKK3ZvaWQg
U3RvcmFnZU1hbmFnZXI6OmdldFZhbHVlcyhJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIHVp
bnQ2NF90IHN0b3JhZ2VNYXBJRCwgdWludDY0X3Qgc3RvcmFnZU1hcFNlZWQsIEdldFZhbHVlc0Nh
bGxiYWNrJiYgY29tcGxldGlvbkhhbmRsZXIpCiB7CiAgICAgQVNTRVJUKCFSdW5Mb29wOjppc01h
aW4oKSk7CiAgICAgYXV0byogc3RvcmFnZUFyZWEgPSBmaW5kU3RvcmFnZUFyZWEoY29ubmVjdGlv
biwgc3RvcmFnZU1hcElEKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3MvV2ViU3RvcmFnZS9TdG9yYWdlTWFuYWdlci5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9XZWJTdG9yYWdlL1N0b3JhZ2VNYW5hZ2VyLmgKaW5kZXggNGNkZjUwMTkzYjlhNGFlOGQ3
NjE4OTAwODAyY2MxNGM2YWM0YTcwNi4uZTk1NGEyY2M5ZGY1OGMwZGIxMjJjNjcxOTQ5OTkxN2Q1
Mzk0ZTdjYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9XZWJTdG9y
YWdlL1N0b3JhZ2VNYW5hZ2VyLmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9X
ZWJTdG9yYWdlL1N0b3JhZ2VNYW5hZ2VyLmgKQEAgLTg2LDcgKzg2LDggQEAgcHJpdmF0ZToKICAg
ICB2b2lkIGNyZWF0ZVNlc3Npb25TdG9yYWdlTWFwKElQQzo6Q29ubmVjdGlvbiYsIHVpbnQ2NF90
IHN0b3JhZ2VNYXBJRCwgdWludDY0X3Qgc3RvcmFnZU5hbWVzcGFjZUlELCBXZWJDb3JlOjpTZWN1
cml0eU9yaWdpbkRhdGEmJik7CiAgICAgdm9pZCBkZXN0cm95U3RvcmFnZU1hcChJUEM6OkNvbm5l
Y3Rpb24mLCB1aW50NjRfdCBzdG9yYWdlTWFwSUQpOwogCi0gICAgdm9pZCBnZXRWYWx1ZXMoSVBD
OjpDb25uZWN0aW9uJiwgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhJiYsIHVpbnQ2NF90IHN0
b3JhZ2VNYXBJRCwgdWludDY0X3Qgc3RvcmFnZU1hcFNlZWQsIEdldFZhbHVlc0NhbGxiYWNrJiYp
OworICAgIHZvaWQgZ2V0VmFsdWVzKElQQzo6Q29ubmVjdGlvbiYsIHVpbnQ2NF90IHN0b3JhZ2VN
YXBJRCwgdWludDY0X3Qgc3RvcmFnZU1hcFNlZWQsIEdldFZhbHVlc0NhbGxiYWNrJiYpOworICAg
IHZvaWQgcHJld2FybShJUEM6OkNvbm5lY3Rpb24mLCB1aW50NjRfdCBzdG9yYWdlTWFwSUQpOwog
ICAgIHZvaWQgc2V0SXRlbShJUEM6OkNvbm5lY3Rpb24mLCBXZWJDb3JlOjpTZWN1cml0eU9yaWdp
bkRhdGEmJiwgdWludDY0X3Qgc3RvcmFnZU1hcElELCB1aW50NjRfdCBzb3VyY2VTdG9yYWdlQXJl
YUlELCB1aW50NjRfdCBzdG9yYWdlTWFwU2VlZCwgY29uc3QgU3RyaW5nJiBrZXksIGNvbnN0IFN0
cmluZyYgdmFsdWUsIGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nKTsKICAgICB2b2lkIHNldEl0ZW1z
KElQQzo6Q29ubmVjdGlvbiYsIHVpbnQ2NF90IHN0b3JhZ2VNYXBJRCwgY29uc3QgSGFzaE1hcDxT
dHJpbmcsIFN0cmluZz4mIGl0ZW1zKTsKICAgICB2b2lkIHJlbW92ZUl0ZW0oSVBDOjpDb25uZWN0
aW9uJiwgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhJiYsIHVpbnQ2NF90IHN0b3JhZ2VNYXBJ
RCwgdWludDY0X3Qgc291cmNlU3RvcmFnZUFyZWFJRCwgdWludDY0X3Qgc3RvcmFnZU1hcFNlZWQs
IGNvbnN0IFN0cmluZyYga2V5LCBjb25zdCBTdHJpbmcmIHVybFN0cmluZyk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1dlYlN0b3JhZ2UvU3RvcmFnZU1hbmFnZXIu
bWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1dlYlN0b3JhZ2UvU3Rv
cmFnZU1hbmFnZXIubWVzc2FnZXMuaW4KaW5kZXggZWYzN2I0N2NlZDdhM2QwOTQ0NjJjODg3NzBh
YmI0MTNmZjg0NTlmNC4uNzhiYjZhYjI0MDI4YTI1M2FhMTE4NTQyMDFkNmExNWQyNWNlMmM2ZiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9XZWJTdG9yYWdlL1N0b3Jh
Z2VNYW5hZ2VyLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
V2ViU3RvcmFnZS9TdG9yYWdlTWFuYWdlci5tZXNzYWdlcy5pbgpAQCAtMjYsNyArMjYsOCBAQCBt
ZXNzYWdlcyAtPiBTdG9yYWdlTWFuYWdlciB7CiAgICAgQ3JlYXRlU2Vzc2lvblN0b3JhZ2VNYXAo
dWludDY0X3Qgc3RvcmFnZU1hcElELCB1aW50NjRfdCBzdG9yYWdlTmFtZXNwYWNlSUQsIHN0cnVj
dCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbkRhdGEgc2VjdXJpdHlPcmlnaW5EYXRhKSBXYW50c0Nv
bm5lY3Rpb24KICAgICBEZXN0cm95U3RvcmFnZU1hcCh1aW50NjRfdCBzdG9yYWdlTWFwSUQpIFdh
bnRzQ29ubmVjdGlvbgogCi0gICAgR2V0VmFsdWVzKHN0cnVjdCBXZWJDb3JlOjpTZWN1cml0eU9y
aWdpbkRhdGEgc2VjdXJpdHlPcmlnaW5EYXRhLCB1aW50NjRfdCBzdG9yYWdlTWFwSUQsIHVpbnQ2
NF90IHN0b3JhZ2VNYXBTZWVkKSAtPiAoSGFzaE1hcDxTdHJpbmcsIFN0cmluZz4gdmFsdWVzKSBT
eW5jaHJvbm91cyBXYW50c0Nvbm5lY3Rpb24KKyAgICBQcmV3YXJtKHVpbnQ2NF90IHN0b3JhZ2VN
YXBJRCkgV2FudHNDb25uZWN0aW9uCisgICAgR2V0VmFsdWVzKHVpbnQ2NF90IHN0b3JhZ2VNYXBJ
RCwgdWludDY0X3Qgc3RvcmFnZU1hcFNlZWQpIC0+IChIYXNoTWFwPFN0cmluZywgU3RyaW5nPiB2
YWx1ZXMpIFN5bmNocm9ub3VzIFdhbnRzQ29ubmVjdGlvbgogCiAgICAgU2V0SXRlbShzdHJ1Y3Qg
V2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhIHNlY3VyaXR5T3JpZ2luRGF0YSwgdWludDY0X3Qg
c3RvcmFnZU1hcElELCB1aW50NjRfdCBzb3VyY2VTdG9yYWdlQXJlYUlELCB1aW50NjRfdCBzdG9y
YWdlTWFwU2VlZCwgU3RyaW5nIGtleSwgU3RyaW5nIHZhbHVlLCBTdHJpbmcgdXJsU3RyaW5nKSBX
YW50c0Nvbm5lY3Rpb24KICAgICBTZXRJdGVtcyh1aW50NjRfdCBzdG9yYWdlTWFwSUQsIEhhc2hN
YXA8U3RyaW5nLCBTdHJpbmc+IGl0ZW1zKSBXYW50c0Nvbm5lY3Rpb24KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJTdG9yYWdlL1N0b3JhZ2VBcmVhSW1wbC5jcHAgYi9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViU3RvcmFnZS9TdG9yYWdlQXJlYUltcGwuY3BwCmlu
ZGV4IGUzMDZmNzNkMTk1Njg0ZDhlYTI0YWM5ZDY1ZGMwNTBiMmJjMTg0MDEuLjc0MGMwZGJjMDdj
YTdkNTVlMTNjZTJiMTkwMjMzM2MwZGUwYTYyNjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJTdG9yYWdlL1N0b3JhZ2VBcmVhSW1wbC5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlN0b3JhZ2UvU3RvcmFnZUFyZWFJbXBsLmNwcApAQCAtNzMsNiAr
NzMsMTEgQEAgU3RyaW5nIFN0b3JhZ2VBcmVhSW1wbDo6aXRlbShjb25zdCBTdHJpbmcmIGtleSkK
ICAgICByZXR1cm4gbV9zdG9yYWdlQXJlYU1hcC0+aXRlbShrZXkpOwogfQogCitib29sIFN0b3Jh
Z2VBcmVhSW1wbDo6cHJld2FybSgpCit7CisgICAgcmV0dXJuIG1fc3RvcmFnZUFyZWFNYXAtPnBy
ZXdhcm0oKTsKK30KKwogdm9pZCBTdG9yYWdlQXJlYUltcGw6OnNldEl0ZW0oRnJhbWUqIHNvdXJj
ZUZyYW1lLCBjb25zdCBTdHJpbmcmIGtleSwgY29uc3QgU3RyaW5nJiB2YWx1ZSwgYm9vbCYgcXVv
dGFFeGNlcHRpb24pCiB7CiAgICAgQVNTRVJUKCF2YWx1ZS5pc051bGwoKSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViU3RvcmFnZS9TdG9yYWdlQXJlYUltcGwuaCBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJTdG9yYWdlL1N0b3JhZ2VBcmVhSW1wbC5oCmlu
ZGV4IDE2NWFmNDRkOTAxOGI5YjlkMTNmNzNmY2U4NDQ3MzkyY2QxODM0MmUuLmI4ZjE2ZjJlYWE1
YTllYWMwNjY0NWIzOGU1ZjBmZjE0NGRkZDU4MjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJTdG9yYWdlL1N0b3JhZ2VBcmVhSW1wbC5oCisrKyBiL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9XZWJTdG9yYWdlL1N0b3JhZ2VBcmVhSW1wbC5oCkBAIC02MSw2ICs2MSw3
IEBAIHByaXZhdGU6CiAgICAgdm9pZCBkZWNyZW1lbnRBY2Nlc3NDb3VudCgpIG92ZXJyaWRlOwog
ICAgIHZvaWQgY2xvc2VEYXRhYmFzZUlmSWRsZSgpIG92ZXJyaWRlOwogICAgIGNvbnN0IFdlYkNv
cmU6OlNlY3VyaXR5T3JpZ2luRGF0YSYgc2VjdXJpdHlPcmlnaW4oKSBjb25zdCBvdmVycmlkZTsK
KyAgICBib29sIHByZXdhcm0oKSBmaW5hbDsKIAogICAgIHVpbnQ2NF90IG1fc3RvcmFnZUFyZWFJ
RDsKICAgICBSZWY8U3RvcmFnZUFyZWFNYXA+IG1fc3RvcmFnZUFyZWFNYXA7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViU3RvcmFnZS9TdG9yYWdlQXJlYU1hcC5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViU3RvcmFnZS9TdG9yYWdlQXJlYU1hcC5jcHAK
aW5kZXggYmYwZGM2YzYzMDMyMDkxM2Y4NTk0NjkzMWUxZjBiNmI0ZTI5Yjg3Ni4uM2UwNTBkZjE3
OGE0NDhiYzkzMmNhNGJhZWMxMDMxYTcyZjkzODBlNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL1dlYlN0b3JhZ2UvU3RvcmFnZUFyZWFNYXAuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9XZWJTdG9yYWdlL1N0b3JhZ2VBcmVhTWFwLmNwcApAQCAtMTc4LDcg
KzE3OCw3IEBAIHZvaWQgU3RvcmFnZUFyZWFNYXA6OmxvYWRWYWx1ZXNJZk5lZWRlZCgpCiAgICAg
Ly8gRklYTUU6IFRoaXMgc2hvdWxkIHVzZSBhIHNwZWNpYWwgc2VuZFN5bmMgZmxhZyB0byBpbmRp
Y2F0ZSB0aGF0IHdlIGRvbid0IHdhbnQgdG8gcHJvY2VzcyBpbmNvbWluZyBtZXNzYWdlcyB3aGls
ZSB3YWl0aW5nIGZvciBhIHJlcGx5LgogICAgIC8vIChUaGlzIGZsYWcgZG9lcyBub3QgeWV0IGV4
aXN0KS4gU2luY2UgbG9hZFZhbHVlc0lmTmVlZGVkKCkgZW5kcyB1cCBiZWluZyBjYWxsZWQgZnJv
bSB3aXRoaW4gSmF2YVNjcmlwdCBjb2RlLCBwcm9jZXNzaW5nIGluY29taW5nIHN5bmNocm9ub3Vz
IG1lc3NhZ2VzCiAgICAgLy8gY291bGQgbGVhZCB0byB3ZWlyZCByZWVudHJlbmN5IGJ1Z3Mgb3Ro
ZXJ3aXNlLgotICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZU5ldHdvcmtQcm9jZXNz
Q29ubmVjdGlvbigpLmNvbm5lY3Rpb24oKS5zZW5kU3luYyhNZXNzYWdlczo6U3RvcmFnZU1hbmFn
ZXI6OkdldFZhbHVlcyhtX3NlY3VyaXR5T3JpZ2luLT5kYXRhKCksIG1fc3RvcmFnZU1hcElELCBt
X2N1cnJlbnRTZWVkKSwgTWVzc2FnZXM6OlN0b3JhZ2VNYW5hZ2VyOjpHZXRWYWx1ZXM6OlJlcGx5
KHZhbHVlcyksIDApOworICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZU5ldHdvcmtQ
cm9jZXNzQ29ubmVjdGlvbigpLmNvbm5lY3Rpb24oKS5zZW5kU3luYyhNZXNzYWdlczo6U3RvcmFn
ZU1hbmFnZXI6OkdldFZhbHVlcyhtX3N0b3JhZ2VNYXBJRCwgbV9jdXJyZW50U2VlZCksIE1lc3Nh
Z2VzOjpTdG9yYWdlTWFuYWdlcjo6R2V0VmFsdWVzOjpSZXBseSh2YWx1ZXMpLCAwKTsKIAogICAg
IG1fc3RvcmFnZU1hcCA9IFN0b3JhZ2VNYXA6OmNyZWF0ZShtX3F1b3RhSW5CeXRlcyk7CiAgICAg
bV9zdG9yYWdlTWFwLT5pbXBvcnRJdGVtcyhXVEZNb3ZlKHZhbHVlcykpOwpAQCAtMTg3LDYgKzE4
NywxNyBAQCB2b2lkIFN0b3JhZ2VBcmVhTWFwOjpsb2FkVmFsdWVzSWZOZWVkZWQoKQogICAgIG1f
aGFzUGVuZGluZ0dldFZhbHVlcyA9IHRydWU7CiB9CiAKK2Jvb2wgU3RvcmFnZUFyZWFNYXA6OnBy
ZXdhcm0oKQoreworICAgIGlmIChtX2RpZFByZXdhcm0gfHwgbV9zdG9yYWdlTWFwKQorICAgICAg
ICByZXR1cm4gZmFsc2U7CisgICAgbV9kaWRQcmV3YXJtID0gdHJ1ZTsKKworICAgIGNvbm5lY3Qo
KTsKKyAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5lbnN1cmVOZXR3b3JrUHJvY2Vzc0Nvbm5l
Y3Rpb24oKS5jb25uZWN0aW9uKCkuc2VuZChNZXNzYWdlczo6U3RvcmFnZU1hbmFnZXI6OlByZXdh
cm0obV9zdG9yYWdlTWFwSUQpLCAwKTsKKyAgICByZXR1cm4gdHJ1ZTsKK30KKwogdm9pZCBTdG9y
YWdlQXJlYU1hcDo6ZGlkR2V0VmFsdWVzKHVpbnQ2NF90IHN0b3JhZ2VNYXBTZWVkKQogewogICAg
IGlmIChtX2N1cnJlbnRTZWVkICE9IHN0b3JhZ2VNYXBTZWVkKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL1dlYlN0b3JhZ2UvU3RvcmFnZUFyZWFNYXAuaCBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9XZWJTdG9yYWdlL1N0b3JhZ2VBcmVhTWFwLmgKaW5kZXggMjliYTdk
OGE4YTM3ZTViM2ZjMzY1OWViYjZjOTJkNGIzM2U5MWFlNC4uZmI5MWJjOTA1NDI1ZmM4MWM2YTQ4
MzUyNzRhYmNjMGMxN2RhNDljNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1dlYlN0b3JhZ2UvU3RvcmFnZUFyZWFNYXAuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvV2ViU3RvcmFnZS9TdG9yYWdlQXJlYU1hcC5oCkBAIC01Nyw2ICs1Nyw3IEBAIHB1YmxpYzoK
ICAgICB2b2lkIHJlbW92ZUl0ZW0oV2ViQ29yZTo6RnJhbWUqIHNvdXJjZUZyYW1lLCBTdG9yYWdl
QXJlYUltcGwqIHNvdXJjZUFyZWEsIGNvbnN0IFN0cmluZyYga2V5KTsKICAgICB2b2lkIGNsZWFy
KFdlYkNvcmU6OkZyYW1lKiBzb3VyY2VGcmFtZSwgU3RvcmFnZUFyZWFJbXBsKiBzb3VyY2VBcmVh
KTsKICAgICBib29sIGNvbnRhaW5zKGNvbnN0IFN0cmluZyYga2V5KTsKKyAgICBib29sIHByZXdh
cm0oKTsKIAogICAgIC8vIElQQzo6TWVzc2FnZVJlY2VpdmVyCiAgICAgdm9pZCBkaWRSZWNlaXZl
TWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXImKSBvdmVycmlkZTsKQEAgLTEw
NCw2ICsxMDUsNyBAQCBwcml2YXRlOgogICAgIEhhc2hDb3VudGVkU2V0PFN0cmluZz4gbV9wZW5k
aW5nVmFsdWVDaGFuZ2VzOwogCiAgICAgYm9vbCBtX2lzRGlzY29ubmVjdGVkIHsgdHJ1ZSB9Owor
ICAgIGJvb2wgbV9kaWRQcmV3YXJtIHsgZmFsc2UgfTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdl
YktpdAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>