<?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>202089</bug_id>
          
          <creation_ts>2019-09-21 20:38:11 -0700</creation_ts>
          <short_desc>WebIDBConnectionToClient does not need to be RefCounted or a SessionID</short_desc>
          <delta_ts>2019-09-21 22:21:40 -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>achristensen</cc>
    
    <cc>alecflett</cc>
    
    <cc>beidson</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>jsbell</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1573133</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-09-21 20:38:11 -0700</bug_when>
    <thetext>WebIDBConnectionToClient does not need to be RefCounted or a SessionID.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1573134</commentid>
    <comment_count>1</comment_count>
      <attachid>379337</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-09-21 20:42:59 -0700</bug_when>
    <thetext>Created attachment 379337
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1573150</commentid>
    <comment_count>2</comment_count>
      <attachid>379337</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-09-21 22:16:27 -0700</bug_when>
    <thetext>Comment on attachment 379337
Patch

Clearing flags on attachment: 379337

Committed r250193: &lt;https://trac.webkit.org/changeset/250193&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1573151</commentid>
    <comment_count>3</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-09-21 22:16:29 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1573154</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-09-21 22:17:17 -0700</bug_when>
    <thetext>&lt;rdar://problem/55596685&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>379337</attachid>
            <date>2019-09-21 20:42:59 -0700</date>
            <delta_ts>2019-09-21 22:16:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-202089-20190921204257.patch</filename>
            <type>text/plain</type>
            <size>19825</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUwMTczCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDc4ZTZlNjVlNmNlNmZk
NWVkZmIzMjQzODMzMTY0ZDQ0YmEyZTUzNy4uNGFhYjYzNDVjMWY4YWYzYjdjMDY4MjBkYzQ1YWEx
ODNlZTBhNzgxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDE5LTA5LTIxICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViSURCQ29ubmVjdGlvblRv
Q2xpZW50IGRvZXMgbm90IG5lZWQgdG8gYmUgUmVmQ291bnRlZCBvciBhIFNlc3Npb25JRAorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyMDg5CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRHJvcCBzb21lIGRl
YWQgY29kZS4KKworICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJDb25uZWN0
aW9uVG9DbGllbnREZWxlZ2F0ZS5oOgorCiAyMDE5LTA5LTIxICBDaHJpcyBEdW1leiAgPGNkdW1l
ekBhcHBsZS5jb20+CiAKICAgICAgICAgU2VydmljZVdvcmtlckNvbnRleHREYXRhIGRvZXMgbm90
IG5lZWQgYSBzZXNzaW9uSUQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIv
U291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggMGIxNjIyMmQ2ZWNjYzZlNGExOWExYjM0MmE0
NDdiYmIzZWIyOWUzMy4uZjdlNzUxOTM3MDgwZGY5ODRiMjI1MTlhMjFhN2E1MWZjM2JlNjYzYSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cKQEAgLTEsMyArMSw1NSBAQAorMjAxOS0wOS0yMSAgQ2hyaXMgRHVtZXogIDxjZHVt
ZXpAYXBwbGUuY29tPgorCisgICAgICAgIFdlYklEQkNvbm5lY3Rpb25Ub0NsaWVudCBkb2VzIG5v
dCBuZWVkIHRvIGJlIFJlZkNvdW50ZWQgb3IgYSBTZXNzaW9uSUQKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMjA4OQorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdlYklEQkNvbm5lY3Rpb25Ub0NsaWVudCBk
b2VzIG5vdCBuZWVkIHRvIGJlIFJlZkNvdW50ZWQsIHRoZSByZWYoKSAvIGRlcmVmKCkgdmlydHVh
bCBmdW5jdGlvbgorICAgICAgICBpdCBpbXBsZW1lbnRlZCBmcm9tIGl0cyBpbnRlcmZhY2Ugd2Vy
ZSBkZWFkIGNvZGUuIFdlIG5vdyBzdG9wIHN1YmNsYXNzaW5nIFJlZkNvdW50ZWQgYW5kIGhhdmUK
KyAgICAgICAgdGhlIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzIGZ1bGx5IG93biB0aGUg
V2ViSURCQ29ubmVjdGlvblRvQ2xpZW50LiBJbnN0ZWFkIG9mIHRoZQorICAgICAgICBXZWJJREJD
b25uZWN0aW9uVG9DbGllbnQgaGF2aW5nIDMgZGF0YSBtZW1iZXJzIGZvciB0aGUgTmV0d29ya1By
b2Nlc3MsIHRoZSBzZXNzaW9uSUQgYW5kIHRoZSBJUEMKKyAgICAgICAgY29ubmVjdGlvbiwgdXNl
IGEgc2luZ2xlIGRhdGEgbWVtYmVyIHRvIGl0cyBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vz
cyBwYXJlbnQuIEl0IGNhbiBnZXQKKyAgICAgICAgZXZlcnl0aGluZyBpdCBuZWVkcyBmcm9tIGl0
cyBwYXJlbnQuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9JbmRleGVkREIvV2ViSURCQ29u
bmVjdGlvblRvQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViSURCQ29ubmVjdGlvblRv
Q2xpZW50OjpXZWJJREJDb25uZWN0aW9uVG9DbGllbnQpOgorICAgICAgICAoV2ViS2l0OjpXZWJJ
REJDb25uZWN0aW9uVG9DbGllbnQ6OmlkYlNlcnZlcik6CisgICAgICAgIChXZWJLaXQ6OldlYklE
QkNvbm5lY3Rpb25Ub0NsaWVudDo6ZGlzY29ubmVjdGVkRnJvbVdlYlByb2Nlc3MpOgorICAgICAg
ICAoV2ViS2l0OjpXZWJJREJDb25uZWN0aW9uVG9DbGllbnQ6Om1lc3NhZ2VTZW5kZXJDb25uZWN0
aW9uIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViSURCQ29ubmVjdGlvblRvQ2xpZW50Ojpj
b25uZWN0aW9uVG9DbGllbnQpOgorICAgICAgICAoV2ViS2l0OjpXZWJJREJDb25uZWN0aW9uVG9D
bGllbnQ6OmRlbGV0ZURhdGFiYXNlKToKKyAgICAgICAgKFdlYktpdDo6V2ViSURCQ29ubmVjdGlv
blRvQ2xpZW50OjpvcGVuRGF0YWJhc2UpOgorICAgICAgICAoV2ViS2l0OjpXZWJJREJDb25uZWN0
aW9uVG9DbGllbnQ6OmFib3J0VHJhbnNhY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpXZWJJREJD
b25uZWN0aW9uVG9DbGllbnQ6OmNvbW1pdFRyYW5zYWN0aW9uKToKKyAgICAgICAgKFdlYktpdDo6
V2ViSURCQ29ubmVjdGlvblRvQ2xpZW50OjpkaWRGaW5pc2hIYW5kbGluZ1ZlcnNpb25DaGFuZ2VU
cmFuc2FjdGlvbik6CisgICAgICAgIChXZWJLaXQ6OldlYklEQkNvbm5lY3Rpb25Ub0NsaWVudDo6
Y3JlYXRlT2JqZWN0U3RvcmUpOgorICAgICAgICAoV2ViS2l0OjpXZWJJREJDb25uZWN0aW9uVG9D
bGllbnQ6OmRlbGV0ZU9iamVjdFN0b3JlKToKKyAgICAgICAgKFdlYktpdDo6V2ViSURCQ29ubmVj
dGlvblRvQ2xpZW50OjpyZW5hbWVPYmplY3RTdG9yZSk6CisgICAgICAgIChXZWJLaXQ6OldlYklE
QkNvbm5lY3Rpb25Ub0NsaWVudDo6Y2xlYXJPYmplY3RTdG9yZSk6CisgICAgICAgIChXZWJLaXQ6
OldlYklEQkNvbm5lY3Rpb25Ub0NsaWVudDo6Y3JlYXRlSW5kZXgpOgorICAgICAgICAoV2ViS2l0
OjpXZWJJREJDb25uZWN0aW9uVG9DbGllbnQ6OmRlbGV0ZUluZGV4KToKKyAgICAgICAgKFdlYktp
dDo6V2ViSURCQ29ubmVjdGlvblRvQ2xpZW50OjpyZW5hbWVJbmRleCk6CisgICAgICAgIChXZWJL
aXQ6OldlYklEQkNvbm5lY3Rpb25Ub0NsaWVudDo6cHV0T3JBZGQpOgorICAgICAgICAoV2ViS2l0
OjpXZWJJREJDb25uZWN0aW9uVG9DbGllbnQ6OmdldFJlY29yZCk6CisgICAgICAgIChXZWJLaXQ6
OldlYklEQkNvbm5lY3Rpb25Ub0NsaWVudDo6Z2V0QWxsUmVjb3Jkcyk6CisgICAgICAgIChXZWJL
aXQ6OldlYklEQkNvbm5lY3Rpb25Ub0NsaWVudDo6Z2V0Q291bnQpOgorICAgICAgICAoV2ViS2l0
OjpXZWJJREJDb25uZWN0aW9uVG9DbGllbnQ6OmRlbGV0ZVJlY29yZCk6CisgICAgICAgIChXZWJL
aXQ6OldlYklEQkNvbm5lY3Rpb25Ub0NsaWVudDo6b3BlbkN1cnNvcik6CisgICAgICAgIChXZWJL
aXQ6OldlYklEQkNvbm5lY3Rpb25Ub0NsaWVudDo6aXRlcmF0ZUN1cnNvcik6CisgICAgICAgIChX
ZWJLaXQ6OldlYklEQkNvbm5lY3Rpb25Ub0NsaWVudDo6ZXN0YWJsaXNoVHJhbnNhY3Rpb24pOgor
ICAgICAgICAoV2ViS2l0OjpXZWJJREJDb25uZWN0aW9uVG9DbGllbnQ6OmRhdGFiYXNlQ29ubmVj
dGlvblBlbmRpbmdDbG9zZSk6CisgICAgICAgIChXZWJLaXQ6OldlYklEQkNvbm5lY3Rpb25Ub0Ns
aWVudDo6ZGF0YWJhc2VDb25uZWN0aW9uQ2xvc2VkKToKKyAgICAgICAgKFdlYktpdDo6V2ViSURC
Q29ubmVjdGlvblRvQ2xpZW50OjphYm9ydE9wZW5BbmRVcGdyYWRlTmVlZGVkKToKKyAgICAgICAg
KFdlYktpdDo6V2ViSURCQ29ubmVjdGlvblRvQ2xpZW50OjpkaWRGaXJlVmVyc2lvbkNoYW5nZUV2
ZW50KToKKyAgICAgICAgKFdlYktpdDo6V2ViSURCQ29ubmVjdGlvblRvQ2xpZW50OjpvcGVuREJS
ZXF1ZXN0Q2FuY2VsbGVkKToKKyAgICAgICAgKFdlYktpdDo6V2ViSURCQ29ubmVjdGlvblRvQ2xp
ZW50Ojpjb25maXJtRGlkQ2xvc2VGcm9tU2VydmVyKToKKyAgICAgICAgKFdlYktpdDo6V2ViSURC
Q29ubmVjdGlvblRvQ2xpZW50OjpnZXRBbGxEYXRhYmFzZU5hbWVzKToKKyAgICAgICAgKiBOZXR3
b3JrUHJvY2Vzcy9JbmRleGVkREIvV2ViSURCQ29ubmVjdGlvblRvQ2xpZW50Lmg6CisgICAgICAg
ICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6ZXN0YWJsaXNoSURC
Q29ubmVjdGlvblRvU2VydmVyKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrQ29u
bmVjdGlvblRvV2ViUHJvY2Vzcy5oOgorCiAyMDE5LTA5LTIxICBDaHJpcyBEdW1leiAgPGNkdW1l
ekBhcHBsZS5jb20+CiAKICAgICAgICAgRHJvcCB1bm5lY2Vzc2FyeSBOZXR3b3JrUHJvY2Vzczo6
bV9zZXNzaW9uQnlDb25uZWN0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9zZXJ2ZXIvSURCQ29ubmVjdGlvblRvQ2xpZW50RGVsZWdhdGUuaCBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJDb25uZWN0aW9uVG9DbGllbnRE
ZWxlZ2F0ZS5oCmluZGV4IDgzYzZmY2EyZTZhYTkwNTBhYmYzMGY4NzFmYzdhMzczYzFhYTdlMzQu
LjI3MDJlYTI5YmRjMzAwZThjNmMxZjZhZTE2MTY5NmI5ZmU5YzU2NGMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJDb25uZWN0aW9uVG9DbGll
bnREZWxlZ2F0ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZl
ci9JREJDb25uZWN0aW9uVG9DbGllbnREZWxlZ2F0ZS5oCkBAIC03Miw5ICs3Miw2IEBAIHB1Ymxp
YzoKICAgICB2aXJ0dWFsIHZvaWQgbm90aWZ5T3BlbkRCUmVxdWVzdEJsb2NrZWQoY29uc3QgSURC
UmVzb3VyY2VJZGVudGlmaWVyJiByZXF1ZXN0SWRlbnRpZmllciwgdWludDY0X3Qgb2xkVmVyc2lv
biwgdWludDY0X3QgbmV3VmVyc2lvbikgPSAwOwogCiAgICAgdmlydHVhbCB2b2lkIGRpZEdldEFs
bERhdGFiYXNlTmFtZXModWludDY0X3QgY2FsbGJhY2tJRCwgY29uc3QgVmVjdG9yPFN0cmluZz4m
IGRhdGFiYXNlTmFtZXMpID0gMDsKLQotICAgIHZpcnR1YWwgdm9pZCByZWYoKSA9IDA7Ci0gICAg
dmlydHVhbCB2b2lkIGRlcmVmKCkgPSAwOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVy
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0luZGV4ZWREQi9XZWJJ
REJDb25uZWN0aW9uVG9DbGllbnQuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9J
bmRleGVkREIvV2ViSURCQ29ubmVjdGlvblRvQ2xpZW50LmNwcAppbmRleCA0NjY5MmZlYWM2OGM3
ZDBmZTc0MjU4YTQzZmI4YjJmOGU4Mzk2MmYxLi4wYzgxMmRmMzJmNzg5NWVkNmY1NGIwMjUyYzlk
YjZiZWJkMDQ2OTI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0lu
ZGV4ZWREQi9XZWJJREJDb25uZWN0aW9uVG9DbGllbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3MvSW5kZXhlZERCL1dlYklEQkNvbm5lY3Rpb25Ub0NsaWVudC5jcHAKQEAg
LTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDE2IEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAxNi0yMDE5IEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtNDQs
MzkgKzQ0LDM2IEBACiBuYW1lc3BhY2UgV2ViS2l0IHsKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3Jl
OwogCi1SZWY8V2ViSURCQ29ubmVjdGlvblRvQ2xpZW50PiBXZWJJREJDb25uZWN0aW9uVG9DbGll
bnQ6OmNyZWF0ZShOZXR3b3JrUHJvY2VzcyYgbmV0d29ya1Byb2Nlc3MsIElQQzo6Q29ubmVjdGlv
biYgY29ubmVjdGlvbiwgUHJvY2Vzc0lkZW50aWZpZXIgc2VydmVyQ29ubmVjdGlvbklkZW50aWZp
ZXIsIFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCkKLXsKLSAgICByZXR1cm4gYWRvcHRSZWYoKm5l
dyBXZWJJREJDb25uZWN0aW9uVG9DbGllbnQobmV0d29ya1Byb2Nlc3MsIGNvbm5lY3Rpb24sIHNl
cnZlckNvbm5lY3Rpb25JZGVudGlmaWVyLCBzZXNzaW9uSUQpKTsKLX0KLQotV2ViSURCQ29ubmVj
dGlvblRvQ2xpZW50OjpXZWJJREJDb25uZWN0aW9uVG9DbGllbnQoTmV0d29ya1Byb2Nlc3MmIG5l
dHdvcmtQcm9jZXNzLCBJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIFByb2Nlc3NJZGVudGlm
aWVyIHNlcnZlckNvbm5lY3Rpb25JZGVudGlmaWVyLCBQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQp
CitXZWJJREJDb25uZWN0aW9uVG9DbGllbnQ6OldlYklEQkNvbm5lY3Rpb25Ub0NsaWVudChOZXR3
b3JrQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYgY29ubmVjdGlvbiwgV2ViQ29yZTo6SURCQ29ubmVj
dGlvbklkZW50aWZpZXIgc2VydmVyQ29ubmVjdGlvbklkZW50aWZpZXIpCiAgICAgOiBtX2Nvbm5l
Y3Rpb24oY29ubmVjdGlvbikKLSAgICAsIG1fbmV0d29ya1Byb2Nlc3MobmV0d29ya1Byb2Nlc3Mp
CiAgICAgLCBtX2lkZW50aWZpZXIoc2VydmVyQ29ubmVjdGlvbklkZW50aWZpZXIpCi0gICAgLCBt
X3Nlc3Npb25JRChzZXNzaW9uSUQpCisgICAgLCBtX2Nvbm5lY3Rpb25Ub0NsaWVudChJREJTZXJ2
ZXI6OklEQkNvbm5lY3Rpb25Ub0NsaWVudDo6Y3JlYXRlKCp0aGlzKSkKIHsKLSAgICByZWxheEFk
b3B0aW9uUmVxdWlyZW1lbnQoKTsKLSAgICBtX2Nvbm5lY3Rpb25Ub0NsaWVudCA9IElEQlNlcnZl
cjo6SURCQ29ubmVjdGlvblRvQ2xpZW50OjpjcmVhdGUoKnRoaXMpOwotICAgIG5ldHdvcmtQcm9j
ZXNzLmlkYlNlcnZlcihtX3Nlc3Npb25JRCkucmVnaXN0ZXJDb25uZWN0aW9uKCptX2Nvbm5lY3Rp
b25Ub0NsaWVudCk7CisgICAgaWRiU2VydmVyKCkucmVnaXN0ZXJDb25uZWN0aW9uKG1fY29ubmVj
dGlvblRvQ2xpZW50KTsKIH0KIAogV2ViSURCQ29ubmVjdGlvblRvQ2xpZW50Ojp+V2ViSURCQ29u
bmVjdGlvblRvQ2xpZW50KCkKIHsKIH0KIAorSURCU2VydmVyOjpJREJTZXJ2ZXImIFdlYklEQkNv
bm5lY3Rpb25Ub0NsaWVudDo6aWRiU2VydmVyKCkKK3sKKyAgICByZXR1cm4gbV9jb25uZWN0aW9u
Lm5ldHdvcmtQcm9jZXNzKCkuaWRiU2VydmVyKG1fY29ubmVjdGlvbi5zZXNzaW9uSUQoKSk7Cit9
CisKIHZvaWQgV2ViSURCQ29ubmVjdGlvblRvQ2xpZW50OjpkaXNjb25uZWN0ZWRGcm9tV2ViUHJv
Y2VzcygpCiB7Ci0gICAgbV9uZXR3b3JrUHJvY2Vzcy0+aWRiU2VydmVyKG1fc2Vzc2lvbklEKS51
bnJlZ2lzdGVyQ29ubmVjdGlvbigqbV9jb25uZWN0aW9uVG9DbGllbnQpOworICAgIGlkYlNlcnZl
cigpLnVucmVnaXN0ZXJDb25uZWN0aW9uKG1fY29ubmVjdGlvblRvQ2xpZW50KTsKIH0KIAogSVBD
OjpDb25uZWN0aW9uKiBXZWJJREJDb25uZWN0aW9uVG9DbGllbnQ6Om1lc3NhZ2VTZW5kZXJDb25u
ZWN0aW9uKCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9jb25uZWN0aW9uLnB0cigpOworICAgIHJl
dHVybiAmbV9jb25uZWN0aW9uLmNvbm5lY3Rpb24oKTsKIH0KIAogV2ViQ29yZTo6SURCU2VydmVy
OjpJREJDb25uZWN0aW9uVG9DbGllbnQmIFdlYklEQkNvbm5lY3Rpb25Ub0NsaWVudDo6Y29ubmVj
dGlvblRvQ2xpZW50KCkKIHsKLSAgICByZXR1cm4gKm1fY29ubmVjdGlvblRvQ2xpZW50OworICAg
IHJldHVybiBtX2Nvbm5lY3Rpb25Ub0NsaWVudDsKIH0KIAogdm9pZCBXZWJJREJDb25uZWN0aW9u
VG9DbGllbnQ6OmRpZERlbGV0ZURhdGFiYXNlKGNvbnN0IFdlYkNvcmU6OklEQlJlc3VsdERhdGEm
IHJlc3VsdERhdGEpCkBAIC0yMTcsMTM3ICsyMTQsMTM3IEBAIHZvaWQgV2ViSURCQ29ubmVjdGlv
blRvQ2xpZW50OjpkaWRHZXRBbGxEYXRhYmFzZU5hbWVzKHVpbnQ2NF90IGNhbGxiYWNrSUQsIGNv
bnN0CiAKIHZvaWQgV2ViSURCQ29ubmVjdGlvblRvQ2xpZW50OjpkZWxldGVEYXRhYmFzZShjb25z
dCBJREJSZXF1ZXN0RGF0YSYgcmVxdWVzdCkKIHsKLSAgICBtX25ldHdvcmtQcm9jZXNzLT5pZGJT
ZXJ2ZXIobV9zZXNzaW9uSUQpLmRlbGV0ZURhdGFiYXNlKHJlcXVlc3QpOworICAgIGlkYlNlcnZl
cigpLmRlbGV0ZURhdGFiYXNlKHJlcXVlc3QpOwogfQogCiB2b2lkIFdlYklEQkNvbm5lY3Rpb25U
b0NsaWVudDo6b3BlbkRhdGFiYXNlKGNvbnN0IElEQlJlcXVlc3REYXRhJiByZXF1ZXN0KQogewot
ICAgIG1fbmV0d29ya1Byb2Nlc3MtPmlkYlNlcnZlcihtX3Nlc3Npb25JRCkub3BlbkRhdGFiYXNl
KHJlcXVlc3QpOworICAgIGlkYlNlcnZlcigpLm9wZW5EYXRhYmFzZShyZXF1ZXN0KTsKIH0KIAog
dm9pZCBXZWJJREJDb25uZWN0aW9uVG9DbGllbnQ6OmFib3J0VHJhbnNhY3Rpb24oY29uc3QgSURC
UmVzb3VyY2VJZGVudGlmaWVyJiB0cmFuc2FjdGlvbklkZW50aWZpZXIpCiB7Ci0gICAgbV9uZXR3
b3JrUHJvY2Vzcy0+aWRiU2VydmVyKG1fc2Vzc2lvbklEKS5hYm9ydFRyYW5zYWN0aW9uKHRyYW5z
YWN0aW9uSWRlbnRpZmllcik7CisgICAgaWRiU2VydmVyKCkuYWJvcnRUcmFuc2FjdGlvbih0cmFu
c2FjdGlvbklkZW50aWZpZXIpOwogfQogCiB2b2lkIFdlYklEQkNvbm5lY3Rpb25Ub0NsaWVudDo6
Y29tbWl0VHJhbnNhY3Rpb24oY29uc3QgSURCUmVzb3VyY2VJZGVudGlmaWVyJiB0cmFuc2FjdGlv
bklkZW50aWZpZXIpCiB7Ci0gICAgbV9uZXR3b3JrUHJvY2Vzcy0+aWRiU2VydmVyKG1fc2Vzc2lv
bklEKS5jb21taXRUcmFuc2FjdGlvbih0cmFuc2FjdGlvbklkZW50aWZpZXIpOworICAgIGlkYlNl
cnZlcigpLmNvbW1pdFRyYW5zYWN0aW9uKHRyYW5zYWN0aW9uSWRlbnRpZmllcik7CiB9CiAKIHZv
aWQgV2ViSURCQ29ubmVjdGlvblRvQ2xpZW50OjpkaWRGaW5pc2hIYW5kbGluZ1ZlcnNpb25DaGFu
Z2VUcmFuc2FjdGlvbih1aW50NjRfdCBkYXRhYmFzZUNvbm5lY3Rpb25JZGVudGlmaWVyLCBjb25z
dCBJREJSZXNvdXJjZUlkZW50aWZpZXImIHRyYW5zYWN0aW9uSWRlbnRpZmllcikKIHsKLSAgICBt
X25ldHdvcmtQcm9jZXNzLT5pZGJTZXJ2ZXIobV9zZXNzaW9uSUQpLmRpZEZpbmlzaEhhbmRsaW5n
VmVyc2lvbkNoYW5nZVRyYW5zYWN0aW9uKGRhdGFiYXNlQ29ubmVjdGlvbklkZW50aWZpZXIsIHRy
YW5zYWN0aW9uSWRlbnRpZmllcik7CisgICAgaWRiU2VydmVyKCkuZGlkRmluaXNoSGFuZGxpbmdW
ZXJzaW9uQ2hhbmdlVHJhbnNhY3Rpb24oZGF0YWJhc2VDb25uZWN0aW9uSWRlbnRpZmllciwgdHJh
bnNhY3Rpb25JZGVudGlmaWVyKTsKIH0KIAogdm9pZCBXZWJJREJDb25uZWN0aW9uVG9DbGllbnQ6
OmNyZWF0ZU9iamVjdFN0b3JlKGNvbnN0IElEQlJlcXVlc3REYXRhJiByZXF1ZXN0LCBjb25zdCBJ
REJPYmplY3RTdG9yZUluZm8mIGluZm8pCiB7Ci0gICAgbV9uZXR3b3JrUHJvY2Vzcy0+aWRiU2Vy
dmVyKG1fc2Vzc2lvbklEKS5jcmVhdGVPYmplY3RTdG9yZShyZXF1ZXN0LCBpbmZvKTsKKyAgICBp
ZGJTZXJ2ZXIoKS5jcmVhdGVPYmplY3RTdG9yZShyZXF1ZXN0LCBpbmZvKTsKIH0KIAogdm9pZCBX
ZWJJREJDb25uZWN0aW9uVG9DbGllbnQ6OmRlbGV0ZU9iamVjdFN0b3JlKGNvbnN0IElEQlJlcXVl
c3REYXRhJiByZXF1ZXN0LCBjb25zdCBTdHJpbmcmIG5hbWUpCiB7Ci0gICAgbV9uZXR3b3JrUHJv
Y2Vzcy0+aWRiU2VydmVyKG1fc2Vzc2lvbklEKS5kZWxldGVPYmplY3RTdG9yZShyZXF1ZXN0LCBu
YW1lKTsKKyAgICBpZGJTZXJ2ZXIoKS5kZWxldGVPYmplY3RTdG9yZShyZXF1ZXN0LCBuYW1lKTsK
IH0KIAogdm9pZCBXZWJJREJDb25uZWN0aW9uVG9DbGllbnQ6OnJlbmFtZU9iamVjdFN0b3JlKGNv
bnN0IElEQlJlcXVlc3REYXRhJiByZXF1ZXN0LCB1aW50NjRfdCBvYmplY3RTdG9yZUlkZW50aWZp
ZXIsIGNvbnN0IFN0cmluZyYgbmV3TmFtZSkKIHsKLSAgICBtX25ldHdvcmtQcm9jZXNzLT5pZGJT
ZXJ2ZXIobV9zZXNzaW9uSUQpLnJlbmFtZU9iamVjdFN0b3JlKHJlcXVlc3QsIG9iamVjdFN0b3Jl
SWRlbnRpZmllciwgbmV3TmFtZSk7CisgICAgaWRiU2VydmVyKCkucmVuYW1lT2JqZWN0U3RvcmUo
cmVxdWVzdCwgb2JqZWN0U3RvcmVJZGVudGlmaWVyLCBuZXdOYW1lKTsKIH0KIAogdm9pZCBXZWJJ
REJDb25uZWN0aW9uVG9DbGllbnQ6OmNsZWFyT2JqZWN0U3RvcmUoY29uc3QgSURCUmVxdWVzdERh
dGEmIHJlcXVlc3QsIHVpbnQ2NF90IG9iamVjdFN0b3JlSWRlbnRpZmllcikKIHsKLSAgICBtX25l
dHdvcmtQcm9jZXNzLT5pZGJTZXJ2ZXIobV9zZXNzaW9uSUQpLmNsZWFyT2JqZWN0U3RvcmUocmVx
dWVzdCwgb2JqZWN0U3RvcmVJZGVudGlmaWVyKTsKKyAgICBpZGJTZXJ2ZXIoKS5jbGVhck9iamVj
dFN0b3JlKHJlcXVlc3QsIG9iamVjdFN0b3JlSWRlbnRpZmllcik7CiB9CiAKIHZvaWQgV2ViSURC
Q29ubmVjdGlvblRvQ2xpZW50OjpjcmVhdGVJbmRleChjb25zdCBJREJSZXF1ZXN0RGF0YSYgcmVx
dWVzdCwgY29uc3QgSURCSW5kZXhJbmZvJiBpbmZvKQogewotICAgIG1fbmV0d29ya1Byb2Nlc3Mt
PmlkYlNlcnZlcihtX3Nlc3Npb25JRCkuY3JlYXRlSW5kZXgocmVxdWVzdCwgaW5mbyk7CisgICAg
aWRiU2VydmVyKCkuY3JlYXRlSW5kZXgocmVxdWVzdCwgaW5mbyk7CiB9CiAKIHZvaWQgV2ViSURC
Q29ubmVjdGlvblRvQ2xpZW50OjpkZWxldGVJbmRleChjb25zdCBJREJSZXF1ZXN0RGF0YSYgcmVx
dWVzdCwgdWludDY0X3Qgb2JqZWN0U3RvcmVJZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIG5hbWUp
CiB7Ci0gICAgbV9uZXR3b3JrUHJvY2Vzcy0+aWRiU2VydmVyKG1fc2Vzc2lvbklEKS5kZWxldGVJ
bmRleChyZXF1ZXN0LCBvYmplY3RTdG9yZUlkZW50aWZpZXIsIG5hbWUpOworICAgIGlkYlNlcnZl
cigpLmRlbGV0ZUluZGV4KHJlcXVlc3QsIG9iamVjdFN0b3JlSWRlbnRpZmllciwgbmFtZSk7CiB9
CiAKIHZvaWQgV2ViSURCQ29ubmVjdGlvblRvQ2xpZW50OjpyZW5hbWVJbmRleChjb25zdCBJREJS
ZXF1ZXN0RGF0YSYgcmVxdWVzdCwgdWludDY0X3Qgb2JqZWN0U3RvcmVJZGVudGlmaWVyLCB1aW50
NjRfdCBpbmRleElkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgbmV3TmFtZSkKIHsKLSAgICBtX25l
dHdvcmtQcm9jZXNzLT5pZGJTZXJ2ZXIobV9zZXNzaW9uSUQpLnJlbmFtZUluZGV4KHJlcXVlc3Qs
IG9iamVjdFN0b3JlSWRlbnRpZmllciwgaW5kZXhJZGVudGlmaWVyLCBuZXdOYW1lKTsKKyAgICBp
ZGJTZXJ2ZXIoKS5yZW5hbWVJbmRleChyZXF1ZXN0LCBvYmplY3RTdG9yZUlkZW50aWZpZXIsIGlu
ZGV4SWRlbnRpZmllciwgbmV3TmFtZSk7CiB9CiAKIHZvaWQgV2ViSURCQ29ubmVjdGlvblRvQ2xp
ZW50OjpwdXRPckFkZChjb25zdCBJREJSZXF1ZXN0RGF0YSYgcmVxdWVzdCwgY29uc3QgSURCS2V5
RGF0YSYga2V5LCBjb25zdCBJREJWYWx1ZSYgdmFsdWUsIEluZGV4ZWREQjo6T2JqZWN0U3RvcmVP
dmVyd3JpdGVNb2RlIG1vZGUpCiB7Ci0gICAgbV9uZXR3b3JrUHJvY2Vzcy0+aWRiU2VydmVyKG1f
c2Vzc2lvbklEKS5wdXRPckFkZChyZXF1ZXN0LCBrZXksIHZhbHVlLCBtb2RlKTsKKyAgICBpZGJT
ZXJ2ZXIoKS5wdXRPckFkZChyZXF1ZXN0LCBrZXksIHZhbHVlLCBtb2RlKTsKIH0KIAogdm9pZCBX
ZWJJREJDb25uZWN0aW9uVG9DbGllbnQ6OmdldFJlY29yZChjb25zdCBJREJSZXF1ZXN0RGF0YSYg
cmVxdWVzdCwgY29uc3QgSURCR2V0UmVjb3JkRGF0YSYgZ2V0UmVjb3JkRGF0YSkKIHsKLSAgICBt
X25ldHdvcmtQcm9jZXNzLT5pZGJTZXJ2ZXIobV9zZXNzaW9uSUQpLmdldFJlY29yZChyZXF1ZXN0
LCBnZXRSZWNvcmREYXRhKTsKKyAgICBpZGJTZXJ2ZXIoKS5nZXRSZWNvcmQocmVxdWVzdCwgZ2V0
UmVjb3JkRGF0YSk7CiB9CiAKIHZvaWQgV2ViSURCQ29ubmVjdGlvblRvQ2xpZW50OjpnZXRBbGxS
ZWNvcmRzKGNvbnN0IElEQlJlcXVlc3REYXRhJiByZXF1ZXN0LCBjb25zdCBJREJHZXRBbGxSZWNv
cmRzRGF0YSYgZ2V0QWxsUmVjb3Jkc0RhdGEpCiB7Ci0gICAgbV9uZXR3b3JrUHJvY2Vzcy0+aWRi
U2VydmVyKG1fc2Vzc2lvbklEKS5nZXRBbGxSZWNvcmRzKHJlcXVlc3QsIGdldEFsbFJlY29yZHNE
YXRhKTsKKyAgICBpZGJTZXJ2ZXIoKS5nZXRBbGxSZWNvcmRzKHJlcXVlc3QsIGdldEFsbFJlY29y
ZHNEYXRhKTsKIH0KIAogdm9pZCBXZWJJREJDb25uZWN0aW9uVG9DbGllbnQ6OmdldENvdW50KGNv
bnN0IElEQlJlcXVlc3REYXRhJiByZXF1ZXN0LCBjb25zdCBJREJLZXlSYW5nZURhdGEmIHJhbmdl
KQogewotICAgIG1fbmV0d29ya1Byb2Nlc3MtPmlkYlNlcnZlcihtX3Nlc3Npb25JRCkuZ2V0Q291
bnQocmVxdWVzdCwgcmFuZ2UpOworICAgIGlkYlNlcnZlcigpLmdldENvdW50KHJlcXVlc3QsIHJh
bmdlKTsKIH0KIAogdm9pZCBXZWJJREJDb25uZWN0aW9uVG9DbGllbnQ6OmRlbGV0ZVJlY29yZChj
b25zdCBJREJSZXF1ZXN0RGF0YSYgcmVxdWVzdCwgY29uc3QgSURCS2V5UmFuZ2VEYXRhJiByYW5n
ZSkKIHsKLSAgICBtX25ldHdvcmtQcm9jZXNzLT5pZGJTZXJ2ZXIobV9zZXNzaW9uSUQpLmRlbGV0
ZVJlY29yZChyZXF1ZXN0LCByYW5nZSk7CisgICAgaWRiU2VydmVyKCkuZGVsZXRlUmVjb3JkKHJl
cXVlc3QsIHJhbmdlKTsKIH0KIAogdm9pZCBXZWJJREJDb25uZWN0aW9uVG9DbGllbnQ6Om9wZW5D
dXJzb3IoY29uc3QgSURCUmVxdWVzdERhdGEmIHJlcXVlc3QsIGNvbnN0IElEQkN1cnNvckluZm8m
IGluZm8pCiB7Ci0gICAgbV9uZXR3b3JrUHJvY2Vzcy0+aWRiU2VydmVyKG1fc2Vzc2lvbklEKS5v
cGVuQ3Vyc29yKHJlcXVlc3QsIGluZm8pOworICAgIGlkYlNlcnZlcigpLm9wZW5DdXJzb3IocmVx
dWVzdCwgaW5mbyk7CiB9CiAKIHZvaWQgV2ViSURCQ29ubmVjdGlvblRvQ2xpZW50OjppdGVyYXRl
Q3Vyc29yKGNvbnN0IElEQlJlcXVlc3REYXRhJiByZXF1ZXN0LCBjb25zdCBJREJJdGVyYXRlQ3Vy
c29yRGF0YSYgZGF0YSkKIHsKLSAgICBtX25ldHdvcmtQcm9jZXNzLT5pZGJTZXJ2ZXIobV9zZXNz
aW9uSUQpLml0ZXJhdGVDdXJzb3IocmVxdWVzdCwgZGF0YSk7CisgICAgaWRiU2VydmVyKCkuaXRl
cmF0ZUN1cnNvcihyZXF1ZXN0LCBkYXRhKTsKIH0KIAogdm9pZCBXZWJJREJDb25uZWN0aW9uVG9D
bGllbnQ6OmVzdGFibGlzaFRyYW5zYWN0aW9uKHVpbnQ2NF90IGRhdGFiYXNlQ29ubmVjdGlvbklk
ZW50aWZpZXIsIGNvbnN0IElEQlRyYW5zYWN0aW9uSW5mbyYgaW5mbykKIHsKLSAgICBtX25ldHdv
cmtQcm9jZXNzLT5pZGJTZXJ2ZXIobV9zZXNzaW9uSUQpLmVzdGFibGlzaFRyYW5zYWN0aW9uKGRh
dGFiYXNlQ29ubmVjdGlvbklkZW50aWZpZXIsIGluZm8pOworICAgIGlkYlNlcnZlcigpLmVzdGFi
bGlzaFRyYW5zYWN0aW9uKGRhdGFiYXNlQ29ubmVjdGlvbklkZW50aWZpZXIsIGluZm8pOwogfQog
CiB2b2lkIFdlYklEQkNvbm5lY3Rpb25Ub0NsaWVudDo6ZGF0YWJhc2VDb25uZWN0aW9uUGVuZGlu
Z0Nsb3NlKHVpbnQ2NF90IGRhdGFiYXNlQ29ubmVjdGlvbklkZW50aWZpZXIpCiB7Ci0gICAgbV9u
ZXR3b3JrUHJvY2Vzcy0+aWRiU2VydmVyKG1fc2Vzc2lvbklEKS5kYXRhYmFzZUNvbm5lY3Rpb25Q
ZW5kaW5nQ2xvc2UoZGF0YWJhc2VDb25uZWN0aW9uSWRlbnRpZmllcik7CisgICAgaWRiU2VydmVy
KCkuZGF0YWJhc2VDb25uZWN0aW9uUGVuZGluZ0Nsb3NlKGRhdGFiYXNlQ29ubmVjdGlvbklkZW50
aWZpZXIpOwogfQogCiB2b2lkIFdlYklEQkNvbm5lY3Rpb25Ub0NsaWVudDo6ZGF0YWJhc2VDb25u
ZWN0aW9uQ2xvc2VkKHVpbnQ2NF90IGRhdGFiYXNlQ29ubmVjdGlvbklkZW50aWZpZXIpCiB7Ci0g
ICAgbV9uZXR3b3JrUHJvY2Vzcy0+aWRiU2VydmVyKG1fc2Vzc2lvbklEKS5kYXRhYmFzZUNvbm5l
Y3Rpb25DbG9zZWQoZGF0YWJhc2VDb25uZWN0aW9uSWRlbnRpZmllcik7CisgICAgaWRiU2VydmVy
KCkuZGF0YWJhc2VDb25uZWN0aW9uQ2xvc2VkKGRhdGFiYXNlQ29ubmVjdGlvbklkZW50aWZpZXIp
OwogfQogCiB2b2lkIFdlYklEQkNvbm5lY3Rpb25Ub0NsaWVudDo6YWJvcnRPcGVuQW5kVXBncmFk
ZU5lZWRlZCh1aW50NjRfdCBkYXRhYmFzZUNvbm5lY3Rpb25JZGVudGlmaWVyLCBjb25zdCBJREJS
ZXNvdXJjZUlkZW50aWZpZXImIHRyYW5zYWN0aW9uSWRlbnRpZmllcikKIHsKLSAgICBtX25ldHdv
cmtQcm9jZXNzLT5pZGJTZXJ2ZXIobV9zZXNzaW9uSUQpLmFib3J0T3BlbkFuZFVwZ3JhZGVOZWVk
ZWQoZGF0YWJhc2VDb25uZWN0aW9uSWRlbnRpZmllciwgdHJhbnNhY3Rpb25JZGVudGlmaWVyKTsK
KyAgICBpZGJTZXJ2ZXIoKS5hYm9ydE9wZW5BbmRVcGdyYWRlTmVlZGVkKGRhdGFiYXNlQ29ubmVj
dGlvbklkZW50aWZpZXIsIHRyYW5zYWN0aW9uSWRlbnRpZmllcik7CiB9CiAKIHZvaWQgV2ViSURC
Q29ubmVjdGlvblRvQ2xpZW50OjpkaWRGaXJlVmVyc2lvbkNoYW5nZUV2ZW50KHVpbnQ2NF90IGRh
dGFiYXNlQ29ubmVjdGlvbklkZW50aWZpZXIsIGNvbnN0IElEQlJlc291cmNlSWRlbnRpZmllciYg
dHJhbnNhY3Rpb25JZGVudGlmaWVyKQogewotICAgIG1fbmV0d29ya1Byb2Nlc3MtPmlkYlNlcnZl
cihtX3Nlc3Npb25JRCkuZGlkRmlyZVZlcnNpb25DaGFuZ2VFdmVudChkYXRhYmFzZUNvbm5lY3Rp
b25JZGVudGlmaWVyLCB0cmFuc2FjdGlvbklkZW50aWZpZXIpOworICAgIGlkYlNlcnZlcigpLmRp
ZEZpcmVWZXJzaW9uQ2hhbmdlRXZlbnQoZGF0YWJhc2VDb25uZWN0aW9uSWRlbnRpZmllciwgdHJh
bnNhY3Rpb25JZGVudGlmaWVyKTsKIH0KIAogdm9pZCBXZWJJREJDb25uZWN0aW9uVG9DbGllbnQ6
Om9wZW5EQlJlcXVlc3RDYW5jZWxsZWQoY29uc3QgSURCUmVxdWVzdERhdGEmIHJlcXVlc3REYXRh
KQogewotICAgIG1fbmV0d29ya1Byb2Nlc3MtPmlkYlNlcnZlcihtX3Nlc3Npb25JRCkub3BlbkRC
UmVxdWVzdENhbmNlbGxlZChyZXF1ZXN0RGF0YSk7CisgICAgaWRiU2VydmVyKCkub3BlbkRCUmVx
dWVzdENhbmNlbGxlZChyZXF1ZXN0RGF0YSk7CiB9CiAKIHZvaWQgV2ViSURCQ29ubmVjdGlvblRv
Q2xpZW50Ojpjb25maXJtRGlkQ2xvc2VGcm9tU2VydmVyKHVpbnQ2NF90IGRhdGFiYXNlQ29ubmVj
dGlvbklkZW50aWZpZXIpCiB7Ci0gICAgbV9uZXR3b3JrUHJvY2Vzcy0+aWRiU2VydmVyKG1fc2Vz
c2lvbklEKS5jb25maXJtRGlkQ2xvc2VGcm9tU2VydmVyKGRhdGFiYXNlQ29ubmVjdGlvbklkZW50
aWZpZXIpOworICAgIGlkYlNlcnZlcigpLmNvbmZpcm1EaWRDbG9zZUZyb21TZXJ2ZXIoZGF0YWJh
c2VDb25uZWN0aW9uSWRlbnRpZmllcik7CiB9CiAKIHZvaWQgV2ViSURCQ29ubmVjdGlvblRvQ2xp
ZW50OjpnZXRBbGxEYXRhYmFzZU5hbWVzKGNvbnN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0
YSYgdG9wT3JpZ2luLCBjb25zdCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbkRhdGEmIG9wZW5pbmdP
cmlnaW4sIHVpbnQ2NF90IGNhbGxiYWNrSUQpCiB7Ci0gICAgbV9uZXR3b3JrUHJvY2Vzcy0+aWRi
U2VydmVyKG1fc2Vzc2lvbklEKS5nZXRBbGxEYXRhYmFzZU5hbWVzKGlkZW50aWZpZXIoKSwgdG9w
T3JpZ2luLCBvcGVuaW5nT3JpZ2luLCBjYWxsYmFja0lEKTsKKyAgICBpZGJTZXJ2ZXIoKS5nZXRB
bGxEYXRhYmFzZU5hbWVzKGlkZW50aWZpZXIoKSwgdG9wT3JpZ2luLCBvcGVuaW5nT3JpZ2luLCBj
YWxsYmFja0lEKTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0luZGV4ZWREQi9XZWJJREJDb25uZWN0aW9uVG9DbGll
bnQuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvSW5kZXhlZERCL1dlYklEQkNvbm5l
Y3Rpb25Ub0NsaWVudC5oCmluZGV4IGRjNzMyZDhkMTZmNDdlNjQ2NWU1YzAzZjljYTQ2ZGEyYTQy
NmY1NTguLmFhMDFhMzA4OWU5OTY5YTI0MDE1NWE3ZmEwZjNkYjIzZjczYTE3YTQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvSW5kZXhlZERCL1dlYklEQkNvbm5lY3Rp
b25Ub0NsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvSW5kZXhlZERC
L1dlYklEQkNvbm5lY3Rpb25Ub0NsaWVudC5oCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHly
aWdodCAoQykgMjAxNiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmln
aHQgKEMpIDIwMTYtMjAxOSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTQ4LDMwICs0OCwzMCBAQCBzdHJ1Y3QgSURCR2V0
UmVjb3JkRGF0YTsKIHN0cnVjdCBJREJJdGVyYXRlQ3Vyc29yRGF0YTsKIHN0cnVjdCBJREJLZXlS
YW5nZURhdGE7CiBzdHJ1Y3QgU2VjdXJpdHlPcmlnaW5EYXRhOworCituYW1lc3BhY2UgSURCU2Vy
dmVyIHsKK2NsYXNzIElEQlNlcnZlcjsKK30KIH0KIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKIGNs
YXNzIE5ldHdvcmtQcm9jZXNzOwogCi1jbGFzcyBXZWJJREJDb25uZWN0aW9uVG9DbGllbnQgZmlu
YWwgOiBwdWJsaWMgV2ViQ29yZTo6SURCU2VydmVyOjpJREJDb25uZWN0aW9uVG9DbGllbnREZWxl
Z2F0ZSwgcHVibGljIElQQzo6TWVzc2FnZVNlbmRlciwgcHVibGljIFJlZkNvdW50ZWQ8V2ViSURC
Q29ubmVjdGlvblRvQ2xpZW50PiB7CitjbGFzcyBXZWJJREJDb25uZWN0aW9uVG9DbGllbnQgZmlu
YWwgOiBwdWJsaWMgV2ViQ29yZTo6SURCU2VydmVyOjpJREJDb25uZWN0aW9uVG9DbGllbnREZWxl
Z2F0ZSwgcHVibGljIElQQzo6TWVzc2FnZVNlbmRlciB7CisgICAgV1RGX01BS0VfRkFTVF9BTExP
Q0FURUQ7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFJlZjxXZWJJREJDb25uZWN0aW9uVG9DbGllbnQ+
IGNyZWF0ZShOZXR3b3JrUHJvY2VzcyYsIElQQzo6Q29ubmVjdGlvbiYsIFdlYkNvcmU6OklEQkNv
bm5lY3Rpb25JZGVudGlmaWVyLCBQQUw6OlNlc3Npb25JRCk7CisgICAgV2ViSURCQ29ubmVjdGlv
blRvQ2xpZW50KE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiwgV2ViQ29yZTo6SURCQ29u
bmVjdGlvbklkZW50aWZpZXIpOwogCiAgICAgdmlydHVhbCB+V2ViSURCQ29ubmVjdGlvblRvQ2xp
ZW50KCk7CiAKICAgICBXZWJDb3JlOjpJREJTZXJ2ZXI6OklEQkNvbm5lY3Rpb25Ub0NsaWVudCYg
Y29ubmVjdGlvblRvQ2xpZW50KCk7CiAgICAgV2ViQ29yZTo6SURCQ29ubmVjdGlvbklkZW50aWZp
ZXIgaWRlbnRpZmllcigpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQogCi0g
ICAgdm9pZCByZWYoKSBvdmVycmlkZSB7IFJlZkNvdW50ZWQ8V2ViSURCQ29ubmVjdGlvblRvQ2xp
ZW50Pjo6cmVmKCk7IH0KLSAgICB2b2lkIGRlcmVmKCkgb3ZlcnJpZGUgeyBSZWZDb3VudGVkPFdl
YklEQkNvbm5lY3Rpb25Ub0NsaWVudD46OmRlcmVmKCk7IH0KLQogICAgIHZvaWQgZGlkUmVjZWl2
ZU1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiwgSVBDOjpEZWNvZGVyJik7CiAgICAgdm9pZCBkaXNj
b25uZWN0ZWRGcm9tV2ViUHJvY2VzcygpOwogCiBwcml2YXRlOgotICAgIFdlYklEQkNvbm5lY3Rp
b25Ub0NsaWVudChOZXR3b3JrUHJvY2VzcyYsIElQQzo6Q29ubmVjdGlvbiYsIFdlYkNvcmU6OlBy
b2Nlc3NJZGVudGlmaWVyLCBQQUw6OlNlc3Npb25JRCk7Ci0KICAgICBJUEM6OkNvbm5lY3Rpb24q
IG1lc3NhZ2VTZW5kZXJDb25uZWN0aW9uKCkgY29uc3QgZmluYWw7CiAgICAgdWludDY0X3QgbWVz
c2FnZVNlbmRlckRlc3RpbmF0aW9uSUQoKSBjb25zdCBmaW5hbCB7IHJldHVybiAwOyB9CiAKQEAg
LTEzNSwxMiArMTM1LDExIEBAIHByaXZhdGU6CiAKICAgICB0ZW1wbGF0ZTxjbGFzcyBNZXNzYWdl
VHlwZT4gdm9pZCBoYW5kbGVHZXRSZXN1bHQoY29uc3QgV2ViQ29yZTo6SURCUmVzdWx0RGF0YSYp
OwogCi0gICAgUmVmPElQQzo6Q29ubmVjdGlvbj4gbV9jb25uZWN0aW9uOwotICAgIFJlZjxOZXR3
b3JrUHJvY2Vzcz4gbV9uZXR3b3JrUHJvY2VzczsKKyAgICBXZWJDb3JlOjpJREJTZXJ2ZXI6OklE
QlNlcnZlciYgaWRiU2VydmVyKCk7CiAKKyAgICBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vz
cyYgbV9jb25uZWN0aW9uOwogICAgIFdlYkNvcmU6OklEQkNvbm5lY3Rpb25JZGVudGlmaWVyIG1f
aWRlbnRpZmllcjsKLSAgICBQQUw6OlNlc3Npb25JRCBtX3Nlc3Npb25JRDsKLSAgICBSZWZQdHI8
V2ViQ29yZTo6SURCU2VydmVyOjpJREJDb25uZWN0aW9uVG9DbGllbnQ+IG1fY29ubmVjdGlvblRv
Q2xpZW50OworICAgIFJlZjxXZWJDb3JlOjpJREJTZXJ2ZXI6OklEQkNvbm5lY3Rpb25Ub0NsaWVu
dD4gbV9jb25uZWN0aW9uVG9DbGllbnQ7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25U
b1dlYlByb2Nlc3MuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrQ29u
bmVjdGlvblRvV2ViUHJvY2Vzcy5jcHAKaW5kZXggZmZlOWM0YWMxOGVhNjBiOGQxMjcxYWJhYzQ0
MTg1YTMxYWQzZDgzMy4uMDgyMTkwZDRlZTQ1ZDk1YzMxMjQ4Y2IzZmQwNjRjZmNmNjkwZmFlNSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrQ29ubmVjdGlv
blRvV2ViUHJvY2Vzcy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3
b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHAKQEAgLTg0OCw3ICs4NDgsNyBAQCB2b2lkIE5l
dHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjplc3RhYmxpc2hJREJDb25uZWN0aW9uVG9TZXJ2
ZXIoKQogICAgIExPRyhJbmRleGVkREIsICJOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6
ZXN0YWJsaXNoSURCQ29ubmVjdGlvblRvU2VydmVyIC0gJSIgUFJJdTY0LCBtX3Nlc3Npb25JRC50
b1VJbnQ2NCgpKTsKICAgICBBU1NFUlQoIW1fd2ViSURCQ29ubmVjdGlvbik7CiAgICAgCi0gICAg
bV93ZWJJREJDb25uZWN0aW9uID0gV2ViSURCQ29ubmVjdGlvblRvQ2xpZW50OjpjcmVhdGUobV9u
ZXR3b3JrUHJvY2VzcywgbV9jb25uZWN0aW9uLmdldCgpLCBtX3dlYlByb2Nlc3NJZGVudGlmaWVy
LCBtX3Nlc3Npb25JRCk7CisgICAgbV93ZWJJREJDb25uZWN0aW9uID0gbWFrZVVuaXF1ZTxXZWJJ
REJDb25uZWN0aW9uVG9DbGllbnQ+KCp0aGlzLCBtX3dlYlByb2Nlc3NJZGVudGlmaWVyKTsKIH0K
ICNlbmRpZgogICAgIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9O
ZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9OZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5oCmluZGV4IDdjZmQ4M2Q1MjFjOWJl
OTNmNDAzMWRjNzY3MWRmZmNjMGE0ZWUwYmQuLjk3ZGMyNGI4ZmFhNzlmZTA2ZWZmMGZhMTZkZDlm
MjY4NzU2OGEwNTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0
d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuaAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL05ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmgKQEAgLTMyMSw3ICszMjEsNyBA
QCBwcml2YXRlOgogICAgIFJlZlB0cjxDYWNoZVN0b3JhZ2VFbmdpbmVDb25uZWN0aW9uPiBtX2Nh
Y2hlU3RvcmFnZUNvbm5lY3Rpb247CiAKICNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLSAg
ICBSZWZQdHI8V2ViSURCQ29ubmVjdGlvblRvQ2xpZW50PiBtX3dlYklEQkNvbm5lY3Rpb247Cisg
ICAgc3RkOjp1bmlxdWVfcHRyPFdlYklEQkNvbm5lY3Rpb25Ub0NsaWVudD4gbV93ZWJJREJDb25u
ZWN0aW9uOwogI2VuZGlmCiAKICNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>