<?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>195539</bug_id>
          
          <creation_ts>2019-03-10 20:16:39 -0700</creation_ts>
          <short_desc>Make IDBServer not refcounted</short_desc>
          <delta_ts>2019-03-10 22:39: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>WebCore Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="youenn fablet">youennf</reporter>
          <assigned_to name="youenn fablet">youennf</assigned_to>
          <cc>alecflett</cc>
    
    <cc>beidson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>jsbell</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1514667</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2019-03-10 20:16:39 -0700</bug_when>
    <thetext>Make IDBServer not refcounted.
This makes IDBServer lifetime easier to understand.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1514673</commentid>
    <comment_count>1</comment_count>
      <attachid>364226</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2019-03-10 20:33:49 -0700</bug_when>
    <thetext>Created attachment 364226
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1514703</commentid>
    <comment_count>2</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2019-03-10 22:39:50 -0700</bug_when>
    <thetext>Actually this does not work since UniqueIDBDatabase may last longer than its IDBServer.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>364226</attachid>
            <date>2019-03-10 20:33:49 -0700</date>
            <delta_ts>2019-03-10 22:39:59 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-195539-20190310203346.patch</filename>
            <type>text/plain</type>
            <size>20842</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQyNTk2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmVkOTM0MzYyNDRkZTA5
ZWEwOTI1ZTQ4ZWZkYmY2NTMzOTcxODcxNi4uOTU0ZjY4NGFkYWU5ODc2YmY3OTA1NGRjMWE0Yjcw
ZGFkODkyMzk5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM3IEBACisyMDE5LTAzLTEwICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBNYWtlIElEQlNlcnZlciBu
b3QgcmVmY291bnRlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTk1NTM5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgTWFrZSBJREJTZXJ2ZXIgbm90IHJlZmNvdW50ZWQuCisgICAgICAgIFRoaXMgcmVxdWly
ZXMgVW5pcXVlSURCRGF0YWJhc2UgdG8gbm8gbG9uZ2VyIHRha2UgYSBSZWY8SURCU2VydmVyPi4K
KyAgICAgICAgSXQgY2FuIHRha2UgYW4gSURCU2VydmVyJiBzaW5jZSBpdHMgbGlmZXRpbWUgaXMg
ZnVsbHkgY29udHJvbGxlZCBieSBpdHMgSURCU2VydmVyLgorICAgICAgICBObyBjaGFuZ2Ugb2Yg
YmVoYXZpb3IuCisKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCU2VydmVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OklEQlNlcnZlcjo6SURCU2VydmVyOjpJREJTZXJ2ZXIp
OgorICAgICAgICAoV2ViQ29yZTo6SURCU2VydmVyOjpJREJTZXJ2ZXI6OmNyZWF0ZSk6IERlbGV0
ZWQuCisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQlNlcnZlci5oOgorICAg
ICAgICAoV2ViQ29yZTo6SURCU2VydmVyOjpJREJTZXJ2ZXI6OklEQlNlcnZlcik6CisgICAgICAg
IChXZWJDb3JlOjpJREJTZXJ2ZXI6OklEQlNlcnZlcjo6Y3JlYXRlKTogRGVsZXRlZC4KKyAgICAg
ICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvVW5pcXVlSURCRGF0YWJhc2UuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6SURCU2VydmVyOjpVbmlxdWVJREJEYXRhYmFzZTo6VW5pcXVlSURCRGF0
YWJhc2UpOgorICAgICAgICAoV2ViQ29yZTo6SURCU2VydmVyOjpVbmlxdWVJREJEYXRhYmFzZTo6
ZGVsZXRlQmFja2luZ1N0b3JlKToKKyAgICAgICAgKFdlYkNvcmU6OklEQlNlcnZlcjo6VW5pcXVl
SURCRGF0YWJhc2U6OnNjaGVkdWxlU2h1dGRvd25Gb3JDbG9zZSk6CisgICAgICAgIChXZWJDb3Jl
OjpJREJTZXJ2ZXI6OlVuaXF1ZUlEQkRhdGFiYXNlOjpvcGVuQmFja2luZ1N0b3JlKToKKyAgICAg
ICAgKFdlYkNvcmU6OklEQlNlcnZlcjo6VW5pcXVlSURCRGF0YWJhc2U6OnBvc3REYXRhYmFzZVRh
c2spOgorICAgICAgICAoV2ViQ29yZTo6SURCU2VydmVyOjpVbmlxdWVJREJEYXRhYmFzZTo6cG9z
dERhdGFiYXNlVGFza1JlcGx5KToKKyAgICAgICAgKFdlYkNvcmU6OklEQlNlcnZlcjo6VW5pcXVl
SURCRGF0YWJhc2U6OmltbWVkaWF0ZUNsb3NlRm9yVXNlckRlbGV0ZSk6CisgICAgICAgIChXZWJD
b3JlOjpJREJTZXJ2ZXI6OlVuaXF1ZUlEQkRhdGFiYXNlOjpub3RpZnlTZXJ2ZXJBYm91dENsb3Nl
KToKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvVW5pcXVlSURCRGF0YWJhc2Uu
aDoKKyAgICAgICAgKFdlYkNvcmU6OklEQlNlcnZlcjo6VW5pcXVlSURCRGF0YWJhc2U6OnNlcnZl
cik6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0luUHJvY2Vzc0lEQlNlcnZl
ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJblByb2Nlc3NJREJTZXJ2ZXI6OmNyZWF0ZSk6Cisg
ICAgICAgIChXZWJDb3JlOjpJblByb2Nlc3NJREJTZXJ2ZXI6OkluUHJvY2Vzc0lEQlNlcnZlcik6
CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0luUHJvY2Vzc0lEQlNlcnZlci5o
OgorCiAyMDE5LTAzLTA3ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAg
ICAgICBJbnRyb2R1Y2UgYSBxdW90YSBtYW5hZ2VyIGZvciBDYWNoZSBBUEkvU2VydmljZSBXb3Jr
ZXIvSURCIHN0b3JhZ2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291
cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggNDRhZmRhOGUwNGJjYmM5Y2VmZWYwMmRhNmI1NDM0
YmQ0YjBkZTRmMS4uMzE0MjdlZGE2MWZlYzRmNmJhOTE0MWU1YzdlNjkyZmFjOTQ2MjY1NyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAxOS0wMy0xMCAgWW91ZW5uIEZhYmxldCAgPHlvdWVu
bkBhcHBsZS5jb20+CisKKyAgICAgICAgTWFrZSBJREJTZXJ2ZXIgbm90IHJlZmNvdW50ZWQKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5NTUzOQorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE1vdmUgZnJvbSBS
ZWZDb3VudGVkIHRvIHVuaXF1ZV9wdHIuCisgICAgICAgIE1pbm9yIHJlZmFjdG9yaW5nLgorCisg
ICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuY3BwOgorICAgICAgICAoV2Vi
S2l0OjpOZXR3b3JrUHJvY2Vzczo6Y3JlYXRlSWRiU2VydmVyKToKKyAgICAgICAgKFdlYktpdDo6
TmV0d29ya1Byb2Nlc3M6OmlkYlNlcnZlcik6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0
d29ya1Byb2Nlc3MuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQ29jb2EvVmVyc2lvbkNoZWNrcy5o
OgorCiAyMDE5LTAzLTA3ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAg
ICAgICBJbnRyb2R1Y2UgYSBxdW90YSBtYW5hZ2VyIGZvciBDYWNoZSBBUEkvU2VydmljZSBXb3Jr
ZXIvSURCIHN0b3JhZ2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvQ2hhbmdlTG9n
IGIvU291cmNlL1dlYktpdExlZ2FjeS9DaGFuZ2VMb2cKaW5kZXggZGU4ZjBmODY0MmY3MmE5ZDU0
Zjc5ZDk0NjI5ZmZiNmIwZGE0NDcyMC4uZGRhZTE4YmE5NzQxOWZjZDUyOWFlN2MzMTM2Mjc0ZDJm
MjA2OGNlOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dlYktpdExlZ2FjeS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxOS0wMy0x
MCAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CisKKyAgICAgICAgTWFrZSBJREJT
ZXJ2ZXIgbm90IHJlZmNvdW50ZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE5NTUzOQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogU3RvcmFnZS9XZWJEYXRhYmFzZVByb3ZpZGVyLmNwcDoKKyAgICAgICAg
KFdlYkRhdGFiYXNlUHJvdmlkZXI6OmlkYkNvbm5lY3Rpb25Ub1NlcnZlckZvclNlc3Npb24pOgor
CiAyMDE5LTAzLTA2ICBTYW0gV2VpbmlnICA8c2FtQHdlYmtpdC5vcmc+CiAKICAgICAgICAgV2Vi
S2l0TGVnYWN5IGRvZXMgbm90IG5lZWQgdG8gZ2VuZXJhdGUgYW4gZXhwb3J0IGZpbGUgZm9yIGkz
ODYgYW55bW9yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
c2VydmVyL0lEQlNlcnZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9z
ZXJ2ZXIvSURCU2VydmVyLmNwcAppbmRleCAyZGE0ZjE2MzhlZGZlYWU0MDJhYmNlN2FmOGNhM2U4
NWJiYTRiNzhlLi40MDJjY2JiODNhMjcxZTllYzE0ZDg2ZDc0MDdjMzM3MGVlN2EyMzA4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCU2VydmVy
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCU2Vy
dmVyLmNwcApAQCAtNDIsMjggKzQyLDEwIEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiBuYW1lc3Bh
Y2UgSURCU2VydmVyIHsKIAotUmVmPElEQlNlcnZlcj4gSURCU2VydmVyOjpjcmVhdGUoSURCQmFj
a2luZ1N0b3JlVGVtcG9yYXJ5RmlsZUhhbmRsZXImIGZpbGVIYW5kbGVyLCBXVEY6OkZ1bmN0aW9u
PHZvaWQoYm9vbCk+JiYgaXNDbG9zaW5nRGF0YWJhc2VDYWxsYmFjaykKLXsKLSAgICByZXR1cm4g
YWRvcHRSZWYoKm5ldyBJREJTZXJ2ZXIoZmlsZUhhbmRsZXIsIFdURk1vdmUoaXNDbG9zaW5nRGF0
YWJhc2VDYWxsYmFjaykpKTsKLX0KLQotUmVmPElEQlNlcnZlcj4gSURCU2VydmVyOjpjcmVhdGUo
Y29uc3QgU3RyaW5nJiBkYXRhYmFzZURpcmVjdG9yeVBhdGgsIElEQkJhY2tpbmdTdG9yZVRlbXBv
cmFyeUZpbGVIYW5kbGVyJiBmaWxlSGFuZGxlciwgV1RGOjpGdW5jdGlvbjx2b2lkKGJvb2wpPiYm
IGlzQ2xvc2luZ0RhdGFiYXNlQ2FsbGJhY2spCi17Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcg
SURCU2VydmVyKGRhdGFiYXNlRGlyZWN0b3J5UGF0aCwgZmlsZUhhbmRsZXIsIFdURk1vdmUoaXND
bG9zaW5nRGF0YWJhc2VDYWxsYmFjaykpKTsKLX0KLQotSURCU2VydmVyOjpJREJTZXJ2ZXIoSURC
QmFja2luZ1N0b3JlVGVtcG9yYXJ5RmlsZUhhbmRsZXImIGZpbGVIYW5kbGVyLCBXVEY6OkZ1bmN0
aW9uPHZvaWQoYm9vbCk+JiYgaXNDbG9zaW5nRGF0YWJhc2VDYWxsYmFjaykKLSAgICA6IENyb3Nz
VGhyZWFkVGFza0hhbmRsZXIoIkluZGV4ZWREYXRhYmFzZSBTZXJ2ZXIiKQotICAgICwgbV9iYWNr
aW5nU3RvcmVUZW1wb3JhcnlGaWxlSGFuZGxlcihmaWxlSGFuZGxlcikKLSAgICAsIG1faXNDbG9z
aW5nRGF0YWJhc2VDYWxsYmFjayhXVEZNb3ZlKGlzQ2xvc2luZ0RhdGFiYXNlQ2FsbGJhY2spKQot
ICAgICwgbV9pc0Nsb3NpbmdEYXRhYmFzZUh5c3RlcmVzaXMoWyZdKFBBTDo6SHlzdGVyZXNpc1N0
YXRlIHN0YXRlKSB7IG1faXNDbG9zaW5nRGF0YWJhc2VDYWxsYmFjayhzdGF0ZSA9PSBQQUw6Okh5
c3RlcmVzaXNTdGF0ZTo6U3RhcnRlZCk7IH0pCi17Ci19Ci0KLUlEQlNlcnZlcjo6SURCU2VydmVy
KGNvbnN0IFN0cmluZyYgZGF0YWJhc2VEaXJlY3RvcnlQYXRoLCBJREJCYWNraW5nU3RvcmVUZW1w
b3JhcnlGaWxlSGFuZGxlciYgZmlsZUhhbmRsZXIsIFdURjo6RnVuY3Rpb248dm9pZChib29sKT4m
JiBpc0Nsb3NpbmdEYXRhYmFzZUNhbGxiYWNrKQorSURCU2VydmVyOjpJREJTZXJ2ZXIoSURCQmFj
a2luZ1N0b3JlVGVtcG9yYXJ5RmlsZUhhbmRsZXImIGZpbGVIYW5kbGVyLCBTdHJpbmcmJiBkYXRh
YmFzZURpcmVjdG9yeVBhdGgsIFdURjo6RnVuY3Rpb248dm9pZChib29sKT4mJiBpc0Nsb3NpbmdE
YXRhYmFzZUNhbGxiYWNrKQogICAgIDogQ3Jvc3NUaHJlYWRUYXNrSGFuZGxlcigiSW5kZXhlZERh
dGFiYXNlIFNlcnZlciIpCi0gICAgLCBtX2RhdGFiYXNlRGlyZWN0b3J5UGF0aChkYXRhYmFzZURp
cmVjdG9yeVBhdGgpCiAgICAgLCBtX2JhY2tpbmdTdG9yZVRlbXBvcmFyeUZpbGVIYW5kbGVyKGZp
bGVIYW5kbGVyKQorICAgICwgbV9kYXRhYmFzZURpcmVjdG9yeVBhdGgoV1RGTW92ZShkYXRhYmFz
ZURpcmVjdG9yeVBhdGgpKQogICAgICwgbV9pc0Nsb3NpbmdEYXRhYmFzZUNhbGxiYWNrKFdURk1v
dmUoaXNDbG9zaW5nRGF0YWJhc2VDYWxsYmFjaykpCiAgICAgLCBtX2lzQ2xvc2luZ0RhdGFiYXNl
SHlzdGVyZXNpcyhbJl0oUEFMOjpIeXN0ZXJlc2lzU3RhdGUgc3RhdGUpIHsgbV9pc0Nsb3NpbmdE
YXRhYmFzZUNhbGxiYWNrKHN0YXRlID09IFBBTDo6SHlzdGVyZXNpc1N0YXRlOjpTdGFydGVkKTsg
fSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZl
ci9JREJTZXJ2ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9J
REJTZXJ2ZXIuaAppbmRleCBmNmY1NWQzNzIzZTRjMjI1OGE3NDJkNzU5MjkzMGU5ZjhhY2QwMzVm
Li43MGExZmExNzc2NzRiOTM4MzkwZDA5ZjVmNTgzZTk2ZGFkMGNiZDZkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCU2VydmVyLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQlNlcnZlci5oCkBAIC0z
Niw3ICszNiw2IEBACiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KICNpbmNsdWRlIDx3dGYvTG9j
ay5oPgogI2luY2x1ZGUgPHd0Zi9SZWYuaD4KLSNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgog
I2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNTMsMTAg
KzUyLDkgQEAgY29uc3QgdWludDY0X3QgZGVmYXVsdFBlck9yaWdpblF1b3RhID0gNTAwICogTUI7
CiAKIGNsYXNzIElEQkJhY2tpbmdTdG9yZVRlbXBvcmFyeUZpbGVIYW5kbGVyOwogCi1jbGFzcyBJ
REJTZXJ2ZXIgOiBwdWJsaWMgUmVmQ291bnRlZDxJREJTZXJ2ZXI+LCBwdWJsaWMgQ3Jvc3NUaHJl
YWRUYXNrSGFuZGxlciB7CitjbGFzcyBJREJTZXJ2ZXIgOiBwdWJsaWMgQ3Jvc3NUaHJlYWRUYXNr
SGFuZGxlciB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFJlZjxJREJTZXJ2ZXI+IGNyZWF0ZShJREJC
YWNraW5nU3RvcmVUZW1wb3JhcnlGaWxlSGFuZGxlciYsIFdURjo6RnVuY3Rpb248dm9pZChib29s
KT4mJiBpc0Nsb3NpbmdEYXRhYmFzZUNhbGxiYWNrID0gW10oYm9vbCkgeyB9KTsKLSAgICBXRUJD
T1JFX0VYUE9SVCBzdGF0aWMgUmVmPElEQlNlcnZlcj4gY3JlYXRlKGNvbnN0IFN0cmluZyYgZGF0
YWJhc2VEaXJlY3RvcnlQYXRoLCBJREJCYWNraW5nU3RvcmVUZW1wb3JhcnlGaWxlSGFuZGxlciYs
IFdURjo6RnVuY3Rpb248dm9pZChib29sKT4mJiBpc0Nsb3NpbmdEYXRhYmFzZUNhbGxiYWNrID0g
W10oYm9vbCkgeyB9KTsKKyAgICBXRUJDT1JFX0VYUE9SVCBleHBsaWNpdCBJREJTZXJ2ZXIoSURC
QmFja2luZ1N0b3JlVGVtcG9yYXJ5RmlsZUhhbmRsZXImLCBTdHJpbmcmJiBkYXRhYmFzZURpcmVj
dG9yeVBhdGggPSB7IH0sIFdURjo6RnVuY3Rpb248dm9pZChib29sKT4mJiA9IFtdKGJvb2wpIHsg
fSk7CiAKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHJlZ2lzdGVyQ29ubmVjdGlvbihJREJDb25u
ZWN0aW9uVG9DbGllbnQmKTsKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHVucmVnaXN0ZXJDb25u
ZWN0aW9uKElEQkNvbm5lY3Rpb25Ub0NsaWVudCYpOwpAQCAtMTE1LDkgKzExMyw2IEBAIHB1Ymxp
YzoKICAgICB2b2lkIGh5c3RlcmVzaXNVcGRhdGVkKFBBTDo6SHlzdGVyZXNpc1N0YXRlKTsKIAog
cHJpdmF0ZToKLSAgICBJREJTZXJ2ZXIoSURCQmFja2luZ1N0b3JlVGVtcG9yYXJ5RmlsZUhhbmRs
ZXImLCBXVEY6OkZ1bmN0aW9uPHZvaWQoYm9vbCk+JiYpOwotICAgIElEQlNlcnZlcihjb25zdCBT
dHJpbmcmIGRhdGFiYXNlRGlyZWN0b3J5UGF0aCwgSURCQmFja2luZ1N0b3JlVGVtcG9yYXJ5Rmls
ZUhhbmRsZXImLCBXVEY6OkZ1bmN0aW9uPHZvaWQoYm9vbCk+JiYpOwotCiAgICAgVW5pcXVlSURC
RGF0YWJhc2UmIGdldE9yQ3JlYXRlVW5pcXVlSURCRGF0YWJhc2UoY29uc3QgSURCRGF0YWJhc2VJ
ZGVudGlmaWVyJik7CiAKICAgICB2b2lkIHBlcmZvcm1HZXRBbGxEYXRhYmFzZU5hbWVzKHVpbnQ2
NF90IHNlcnZlckNvbm5lY3Rpb25JZGVudGlmaWVyLCBjb25zdCBTZWN1cml0eU9yaWdpbkRhdGEm
IG1haW5GcmFtZU9yaWdpbiwgY29uc3QgU2VjdXJpdHlPcmlnaW5EYXRhJiBvcGVuaW5nT3JpZ2lu
LCB1aW50NjRfdCBjYWxsYmFja0lEKTsKQEAgLTEzNiw4ICsxMzEsOCBAQCBwcml2YXRlOgogCiAg
ICAgSGFzaE1hcDx1aW50NjRfdCwgRnVuY3Rpb248dm9pZCAoKT4+IG1fZGVsZXRlRGF0YWJhc2VD
b21wbGV0aW9uSGFuZGxlcnM7CiAKLSAgICBTdHJpbmcgbV9kYXRhYmFzZURpcmVjdG9yeVBhdGg7
CiAgICAgSURCQmFja2luZ1N0b3JlVGVtcG9yYXJ5RmlsZUhhbmRsZXImIG1fYmFja2luZ1N0b3Jl
VGVtcG9yYXJ5RmlsZUhhbmRsZXI7CisgICAgU3RyaW5nIG1fZGF0YWJhc2VEaXJlY3RvcnlQYXRo
OwogCiAgICAgdWludDY0X3QgbV9wZXJPcmlnaW5RdW90YSB7IGRlZmF1bHRQZXJPcmlnaW5RdW90
YSB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2
ZXIvVW5pcXVlSURCRGF0YWJhc2UuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvc2VydmVyL1VuaXF1ZUlEQkRhdGFiYXNlLmNwcAppbmRleCA2NWEwOTJiNGUyNzQ0YWM3ZGJj
ODMzNjM5ZDRlNjc5NGE5ZDdmODRkLi4zMzNkMTM5ZWY3ZGJiNDYzYjljZTEyYWYzYmI1YTU5YzIz
NDdjOWRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2
ZXIvVW5pcXVlSURCRGF0YWJhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL3NlcnZlci9VbmlxdWVJREJEYXRhYmFzZS5jcHAKQEAgLTU1LDcgKzU1LDcgQEAgdXNp
bmcgbmFtZXNwYWNlIEpTQzsKIG5hbWVzcGFjZSBJREJTZXJ2ZXIgewogCiBVbmlxdWVJREJEYXRh
YmFzZTo6VW5pcXVlSURCRGF0YWJhc2UoSURCU2VydmVyJiBzZXJ2ZXIsIGNvbnN0IElEQkRhdGFi
YXNlSWRlbnRpZmllciYgaWRlbnRpZmllcikKLSAgICA6IG1fc2VydmVyKCZzZXJ2ZXIpCisgICAg
OiBtX3NlcnZlcihzZXJ2ZXIpCiAgICAgLCBtX2lkZW50aWZpZXIoaWRlbnRpZmllcikKICAgICAs
IG1fb3BlcmF0aW9uQW5kVHJhbnNhY3Rpb25UaW1lcigqdGhpcywgJlVuaXF1ZUlEQkRhdGFiYXNl
OjpvcGVyYXRpb25BbmRUcmFuc2FjdGlvblRpbWVyRmlyZWQpCiB7CkBAIC0yNDUsNyArMjQ1LDcg
QEAgdm9pZCBVbmlxdWVJREJEYXRhYmFzZTo6ZGVsZXRlQmFja2luZ1N0b3JlKGNvbnN0IElEQkRh
dGFiYXNlSWRlbnRpZmllciYgaWRlbnRpZmkKICAgICAgICAgbV9iYWNraW5nU3RvcmVTdXBwb3J0
c1NpbXVsdGFuZW91c1RyYW5zYWN0aW9ucyA9IGZhbHNlOwogICAgICAgICBtX2JhY2tpbmdTdG9y
ZUlzRXBoZW1lcmFsID0gZmFsc2U7CiAgICAgfSBlbHNlIHsKLSAgICAgICAgYXV0byBiYWNraW5n
U3RvcmUgPSBtX3NlcnZlci0+Y3JlYXRlQmFja2luZ1N0b3JlKGlkZW50aWZpZXIpOworICAgICAg
ICBhdXRvIGJhY2tpbmdTdG9yZSA9IG1fc2VydmVyLmNyZWF0ZUJhY2tpbmdTdG9yZShpZGVudGlm
aWVyKTsKIAogICAgICAgICBJREJEYXRhYmFzZUluZm8gZGF0YWJhc2VJbmZvOwogICAgICAgICBh
dXRvIGVycm9yID0gYmFja2luZ1N0b3JlLT5nZXRPckVzdGFibGlzaERhdGFiYXNlSW5mbyhkYXRh
YmFzZUluZm8pOwpAQCAtMjc3LDcgKzI3Nyw3IEBAIHZvaWQgVW5pcXVlSURCRGF0YWJhc2U6OnNj
aGVkdWxlU2h1dGRvd25Gb3JDbG9zZSgpCiAgICAgbV9vcGVyYXRpb25BbmRUcmFuc2FjdGlvblRp
bWVyLnN0b3AoKTsKIAogICAgIFJFTEVBU0VfQVNTRVJUKCFtX293bmluZ1BvaW50ZXJGb3JDbG9z
ZSk7Ci0gICAgbV9vd25pbmdQb2ludGVyRm9yQ2xvc2UgPSBtX3NlcnZlci0+Y2xvc2VBbmRUYWtl
VW5pcXVlSURCRGF0YWJhc2UoKnRoaXMpOworICAgIG1fb3duaW5nUG9pbnRlckZvckNsb3NlID0g
bV9zZXJ2ZXIuY2xvc2VBbmRUYWtlVW5pcXVlSURCRGF0YWJhc2UoKnRoaXMpOwogCiAgICAgbm90
aWZ5U2VydmVyQWJvdXRDbG9zZShDbG9zZVN0YXRlOjpTdGFydCk7CiAgICAgcG9zdERhdGFiYXNl
VGFzayhjcmVhdGVDcm9zc1RocmVhZFRhc2soKnRoaXMsICZVbmlxdWVJREJEYXRhYmFzZTo6c2h1
dGRvd25Gb3JDbG9zZSkpOwpAQCAtNjM2LDcgKzYzNiw3IEBAIHZvaWQgVW5pcXVlSURCRGF0YWJh
c2U6Om9wZW5CYWNraW5nU3RvcmUoY29uc3QgSURCRGF0YWJhc2VJZGVudGlmaWVyJiBpZGVudGlm
aWVyCiAgICAgTE9HKEluZGV4ZWREQiwgIihkYikgVW5pcXVlSURCRGF0YWJhc2U6Om9wZW5CYWNr
aW5nU3RvcmUgKCVwKSIsIHRoaXMpOwogCiAgICAgQVNTRVJUKCFtX2JhY2tpbmdTdG9yZSk7Ci0g
ICAgbV9iYWNraW5nU3RvcmUgPSBtX3NlcnZlci0+Y3JlYXRlQmFja2luZ1N0b3JlKGlkZW50aWZp
ZXIpOworICAgIG1fYmFja2luZ1N0b3JlID0gbV9zZXJ2ZXIuY3JlYXRlQmFja2luZ1N0b3JlKGlk
ZW50aWZpZXIpOwogICAgIG1fYmFja2luZ1N0b3JlU3VwcG9ydHNTaW11bHRhbmVvdXNUcmFuc2Fj
dGlvbnMgPSBtX2JhY2tpbmdTdG9yZS0+c3VwcG9ydHNTaW11bHRhbmVvdXNUcmFuc2FjdGlvbnMo
KTsKICAgICBtX2JhY2tpbmdTdG9yZUlzRXBoZW1lcmFsID0gbV9iYWNraW5nU3RvcmUtPmlzRXBo
ZW1lcmFsKCk7CiAKQEAgLTE3NjMsMTMgKzE3NjMsMTMgQEAgdm9pZCBVbmlxdWVJREJEYXRhYmFz
ZTo6dHJhbnNhY3Rpb25Db21wbGV0ZWQoUmVmUHRyPFVuaXF1ZUlEQkRhdGFiYXNlVHJhbnNhY3Rp
b24KIHZvaWQgVW5pcXVlSURCRGF0YWJhc2U6OnBvc3REYXRhYmFzZVRhc2soQ3Jvc3NUaHJlYWRU
YXNrJiYgdGFzaykKIHsKICAgICBtX2RhdGFiYXNlUXVldWUuYXBwZW5kKFdURk1vdmUodGFzaykp
OwotICAgIG1fc2VydmVyLT5wb3N0RGF0YWJhc2VUYXNrKGNyZWF0ZUNyb3NzVGhyZWFkVGFzaygq
dGhpcywgJlVuaXF1ZUlEQkRhdGFiYXNlOjpleGVjdXRlTmV4dERhdGFiYXNlVGFzaykpOworICAg
IG1fc2VydmVyLnBvc3REYXRhYmFzZVRhc2soY3JlYXRlQ3Jvc3NUaHJlYWRUYXNrKCp0aGlzLCAm
VW5pcXVlSURCRGF0YWJhc2U6OmV4ZWN1dGVOZXh0RGF0YWJhc2VUYXNrKSk7CiB9CiAKIHZvaWQg
VW5pcXVlSURCRGF0YWJhc2U6OnBvc3REYXRhYmFzZVRhc2tSZXBseShDcm9zc1RocmVhZFRhc2sm
JiB0YXNrKQogewogICAgIG1fZGF0YWJhc2VSZXBseVF1ZXVlLmFwcGVuZChXVEZNb3ZlKHRhc2sp
KTsKLSAgICBtX3NlcnZlci0+cG9zdERhdGFiYXNlVGFza1JlcGx5KGNyZWF0ZUNyb3NzVGhyZWFk
VGFzaygqdGhpcywgJlVuaXF1ZUlEQkRhdGFiYXNlOjpleGVjdXRlTmV4dERhdGFiYXNlVGFza1Jl
cGx5KSk7CisgICAgbV9zZXJ2ZXIucG9zdERhdGFiYXNlVGFza1JlcGx5KGNyZWF0ZUNyb3NzVGhy
ZWFkVGFzaygqdGhpcywgJlVuaXF1ZUlEQkRhdGFiYXNlOjpleGVjdXRlTmV4dERhdGFiYXNlVGFz
a1JlcGx5KSk7CiB9CiAKIHZvaWQgVW5pcXVlSURCRGF0YWJhc2U6OmV4ZWN1dGVOZXh0RGF0YWJh
c2VUYXNrKCkKQEAgLTE4OTgsNyArMTg5OCw3IEBAIHZvaWQgVW5pcXVlSURCRGF0YWJhc2U6Omlt
bWVkaWF0ZUNsb3NlRm9yVXNlckRlbGV0ZSgpCiAgICAgbm90aWZ5U2VydmVyQWJvdXRDbG9zZShD
bG9zZVN0YXRlOjpTdGFydCk7CiAgICAgLy8gT3RoZXJ3aXNlLCB0aGlzIGRhdGFiYXNlIGlzIHN0
aWxsIHBvdGVudGlhbGx5IGFjdGl2ZS4KICAgICAvLyBTbyB3ZSdsbCBoYXZlIGl0IG93biBpdHNl
bGYgYW5kIHRoZW4gcGVyZm9ybSBhIGNsZWFuIHVuY29uZGl0aW9uYWwgZGVsZXRlIG9uIHRoZSBi
YWNrZ3JvdW5kIHRocmVhZC4KLSAgICBtX293bmluZ1BvaW50ZXJGb3JDbG9zZSA9IG1fc2VydmVy
LT5jbG9zZUFuZFRha2VVbmlxdWVJREJEYXRhYmFzZSgqdGhpcyk7CisgICAgbV9vd25pbmdQb2lu
dGVyRm9yQ2xvc2UgPSBtX3NlcnZlci5jbG9zZUFuZFRha2VVbmlxdWVJREJEYXRhYmFzZSgqdGhp
cyk7CiAgICAgcG9zdERhdGFiYXNlVGFzayhjcmVhdGVDcm9zc1RocmVhZFRhc2soKnRoaXMsICZV
bmlxdWVJREJEYXRhYmFzZTo6cGVyZm9ybVVuY29uZGl0aW9uYWxEZWxldGVCYWNraW5nU3RvcmUp
KTsKIH0KIApAQCAtMTk3Niw5ICsxOTc2LDkgQEAgdm9pZCBVbmlxdWVJREJEYXRhYmFzZTo6bm90
aWZ5U2VydmVyQWJvdXRDbG9zZShDbG9zZVN0YXRlIHN0YXRlKQogICAgIEFTU0VSVChpc01haW5U
aHJlYWQoKSk7CiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICBpZiAoc3RhdGUgPT0gQ2xv
c2VTdGF0ZTo6U3RhcnQpIAotICAgICAgICBtX3NlcnZlci0+Y2xvc2VEYXRhYmFzZSh0aGlzKTsK
KyAgICAgICAgbV9zZXJ2ZXIuY2xvc2VEYXRhYmFzZSh0aGlzKTsKICAgICBlbHNlCi0gICAgICAg
IG1fc2VydmVyLT5kaWRDbG9zZURhdGFiYXNlKHRoaXMpOworICAgICAgICBtX3NlcnZlci5kaWRD
bG9zZURhdGFiYXNlKHRoaXMpOwogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0oc3RhdGUpOwogI2Vu
ZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIv
VW5pcXVlSURCRGF0YWJhc2UuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3Nl
cnZlci9VbmlxdWVJREJEYXRhYmFzZS5oCmluZGV4IGZjMDk0ZWVmNmIzOTRmMGQyZTk3ZmExNjli
ZDIxZGNkZjIzNTUyODYuLjc0MjZhNmRkODZlNGJjODUxNmI1YTQ0M2JkYTg3ZjE3YzVlNmEzYzIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9Vbmlx
dWVJREJEYXRhYmFzZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3Nl
cnZlci9VbmlxdWVJREJEYXRhYmFzZS5oCkBAIC04Miw3ICs4Miw3IEBAIHB1YmxpYzoKICAgICB2
b2lkIG9wZW5EYXRhYmFzZUNvbm5lY3Rpb24oSURCQ29ubmVjdGlvblRvQ2xpZW50JiwgY29uc3Qg
SURCUmVxdWVzdERhdGEmKTsKIAogICAgIGNvbnN0IElEQkRhdGFiYXNlSW5mbyYgaW5mbygpIGNv
bnN0OwotICAgIElEQlNlcnZlciYgc2VydmVyKCkgeyByZXR1cm4gKm1fc2VydmVyOyB9CisgICAg
SURCU2VydmVyJiBzZXJ2ZXIoKSB7IHJldHVybiBtX3NlcnZlcjsgfQogICAgIGNvbnN0IElEQkRh
dGFiYXNlSWRlbnRpZmllciYgaWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmll
cjsgfQogCiAgICAgdm9pZCBjcmVhdGVPYmplY3RTdG9yZShVbmlxdWVJREJEYXRhYmFzZVRyYW5z
YWN0aW9uJiwgY29uc3QgSURCT2JqZWN0U3RvcmVJbmZvJiwgRXJyb3JDYWxsYmFjayk7CkBAIC0y
MjksNyArMjI5LDcgQEAgcHJpdmF0ZToKIAogICAgIHZvaWQgbm90aWZ5U2VydmVyQWJvdXRDbG9z
ZShDbG9zZVN0YXRlKTsKIAotICAgIFJlZlB0cjxJREJTZXJ2ZXI+IG1fc2VydmVyOworICAgIElE
QlNlcnZlciAmbV9zZXJ2ZXI7CiAgICAgSURCRGF0YWJhc2VJZGVudGlmaWVyIG1faWRlbnRpZmll
cjsKICAgICAKICAgICBMaXN0SGFzaFNldDxSZWZQdHI8U2VydmVyT3BlbkRCUmVxdWVzdD4+IG1f
cGVuZGluZ09wZW5EQlJlcXVlc3RzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvc2hhcmVkL0luUHJvY2Vzc0lEQlNlcnZlci5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSW5Qcm9jZXNzSURCU2VydmVyLmNwcAppbmRleCBk
ZDlmNWFkMjkzMTdjNWNkYzc1ODgzMmFjNmEzNzBiZGY5NWRkODk4Li5jNjdiZDllY2JmYzQzZTZl
MDg4ODg0YTU5YWI5NzYxOWIxZjdiM2QzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2luZGV4ZWRkYi9zaGFyZWQvSW5Qcm9jZXNzSURCU2VydmVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSW5Qcm9jZXNzSURCU2VydmVyLmNwcApA
QCAtNDQsMzAgKzQ0LDE1IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotUmVmPEluUHJvY2Vz
c0lEQlNlcnZlcj4gSW5Qcm9jZXNzSURCU2VydmVyOjpjcmVhdGUoKQorUmVmPEluUHJvY2Vzc0lE
QlNlcnZlcj4gSW5Qcm9jZXNzSURCU2VydmVyOjpjcmVhdGUoU3RyaW5nJiYgZGF0YWJhc2VEaXJl
Y3RvcnlQYXRoKQogewotICAgIFJlZjxJblByb2Nlc3NJREJTZXJ2ZXI+IHNlcnZlciA9IGFkb3B0
UmVmKCpuZXcgSW5Qcm9jZXNzSURCU2VydmVyKTsKKyAgICBhdXRvIHNlcnZlciA9IGFkb3B0UmVm
KCpuZXcgSW5Qcm9jZXNzSURCU2VydmVyKFdURk1vdmUoZGF0YWJhc2VEaXJlY3RvcnlQYXRoKSkp
OwogICAgIHNlcnZlci0+bV9zZXJ2ZXItPnJlZ2lzdGVyQ29ubmVjdGlvbihzZXJ2ZXItPmNvbm5l
Y3Rpb25Ub0NsaWVudCgpKTsKICAgICByZXR1cm4gc2VydmVyOwogfQogCi1SZWY8SW5Qcm9jZXNz
SURCU2VydmVyPiBJblByb2Nlc3NJREJTZXJ2ZXI6OmNyZWF0ZShjb25zdCBTdHJpbmcmIGRhdGFi
YXNlRGlyZWN0b3J5UGF0aCkKLXsKLSAgICBSZWY8SW5Qcm9jZXNzSURCU2VydmVyPiBzZXJ2ZXIg
PSBhZG9wdFJlZigqbmV3IEluUHJvY2Vzc0lEQlNlcnZlcihkYXRhYmFzZURpcmVjdG9yeVBhdGgp
KTsKLSAgICBzZXJ2ZXItPm1fc2VydmVyLT5yZWdpc3RlckNvbm5lY3Rpb24oc2VydmVyLT5jb25u
ZWN0aW9uVG9DbGllbnQoKSk7Ci0gICAgcmV0dXJuIHNlcnZlcjsKLX0KLQotSW5Qcm9jZXNzSURC
U2VydmVyOjpJblByb2Nlc3NJREJTZXJ2ZXIoKQotICAgIDogbV9zZXJ2ZXIoSURCU2VydmVyOjpJ
REJTZXJ2ZXI6OmNyZWF0ZSgqdGhpcykpCi17Ci0gICAgcmVsYXhBZG9wdGlvblJlcXVpcmVtZW50
KCk7Ci0gICAgbV9jb25uZWN0aW9uVG9TZXJ2ZXIgPSBJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25U
b1NlcnZlcjo6Y3JlYXRlKCp0aGlzKTsKLSAgICBtX2Nvbm5lY3Rpb25Ub0NsaWVudCA9IElEQlNl
cnZlcjo6SURCQ29ubmVjdGlvblRvQ2xpZW50OjpjcmVhdGUoKnRoaXMpOwotfQotCi1JblByb2Nl
c3NJREJTZXJ2ZXI6OkluUHJvY2Vzc0lEQlNlcnZlcihjb25zdCBTdHJpbmcmIGRhdGFiYXNlRGly
ZWN0b3J5UGF0aCkKLSAgICA6IG1fc2VydmVyKElEQlNlcnZlcjo6SURCU2VydmVyOjpjcmVhdGUo
ZGF0YWJhc2VEaXJlY3RvcnlQYXRoLCAqdGhpcykpCitJblByb2Nlc3NJREJTZXJ2ZXI6OkluUHJv
Y2Vzc0lEQlNlcnZlcihTdHJpbmcmJiBkYXRhYmFzZURpcmVjdG9yeVBhdGgpCisgICAgOiBtX3Nl
cnZlcihtYWtlVW5pcXVlUmVmPElEQlNlcnZlcjo6SURCU2VydmVyPigqdGhpcywgV1RGTW92ZShk
YXRhYmFzZURpcmVjdG9yeVBhdGgpKSkKIHsKICAgICByZWxheEFkb3B0aW9uUmVxdWlyZW1lbnQo
KTsKICAgICBtX2Nvbm5lY3Rpb25Ub1NlcnZlciA9IElEQkNsaWVudDo6SURCQ29ubmVjdGlvblRv
U2VydmVyOjpjcmVhdGUoKnRoaXMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvc2hhcmVkL0luUHJvY2Vzc0lEQlNlcnZlci5oIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0luUHJvY2Vzc0lEQlNlcnZlci5oCmluZGV4IGM3OTQ0
ZDFiMzZmNzM1OWQzY2I2MTcwNjljMzAxMjE4ODU1MzQ5NzMuLjY3NDM4YmRkNjRmZDZkNjc2Y2U2
MzhhYjliNWVlNmQ2ZmE0NjI5MjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL3NoYXJlZC9JblByb2Nlc3NJREJTZXJ2ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSW5Qcm9jZXNzSURCU2VydmVyLmgKQEAgLTMyLDYg
KzMyLDcgQEAKICNpbmNsdWRlICJJREJTZXJ2ZXIuaCIKICNpbmNsdWRlIDx3dGYvUmVmQ291bnRl
ZC5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KKyNpbmNsdWRlIDx3dGYvVW5pcXVlUmVmLmg+
CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtNDUsOCArNDYsNyBAQCBjbGFzcyBJREJTZXJ2
ZXI7CiAKIGNsYXNzIEluUHJvY2Vzc0lEQlNlcnZlciBmaW5hbCA6IHB1YmxpYyBJREJDbGllbnQ6
OklEQkNvbm5lY3Rpb25Ub1NlcnZlckRlbGVnYXRlLCBwdWJsaWMgSURCU2VydmVyOjpJREJDb25u
ZWN0aW9uVG9DbGllbnREZWxlZ2F0ZSwgcHVibGljIFJlZkNvdW50ZWQ8SW5Qcm9jZXNzSURCU2Vy
dmVyPiwgcHVibGljIElEQlNlcnZlcjo6SURCQmFja2luZ1N0b3JlVGVtcG9yYXJ5RmlsZUhhbmRs
ZXIgewogcHVibGljOgotICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBSZWY8SW5Qcm9jZXNzSURC
U2VydmVyPiBjcmVhdGUoKTsKLSAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmPEluUHJvY2Vz
c0lEQlNlcnZlcj4gY3JlYXRlKGNvbnN0IFN0cmluZyYgZGF0YWJhc2VEaXJlY3RvcnlQYXRoKTsK
KyAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmPEluUHJvY2Vzc0lEQlNlcnZlcj4gY3JlYXRl
KFN0cmluZyYmIGRhdGFiYXNlRGlyZWN0b3J5UGF0aCA9IHsgfSk7CiAKICAgICBXRUJDT1JFX0VY
UE9SVCBJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25Ub1NlcnZlciYgY29ubmVjdGlvblRvU2VydmVy
KCkgY29uc3Q7CiAgICAgSURCU2VydmVyOjpJREJDb25uZWN0aW9uVG9DbGllbnQmIGNvbm5lY3Rp
b25Ub0NsaWVudCgpIGNvbnN0OwpAQCAtMTE1LDEwICsxMTUsOSBAQCBwdWJsaWM6CiAgICAgdm9p
ZCBhY2Nlc3NUb1RlbXBvcmFyeUZpbGVDb21wbGV0ZShjb25zdCBTdHJpbmcmIHBhdGgpIG92ZXJy
aWRlOwogCiBwcml2YXRlOgotICAgIEluUHJvY2Vzc0lEQlNlcnZlcigpOwotICAgIEluUHJvY2Vz
c0lEQlNlcnZlcihjb25zdCBTdHJpbmcmIGRhdGFiYXNlRGlyZWN0b3J5UGF0aCk7CisgICAgZXhw
bGljaXQgSW5Qcm9jZXNzSURCU2VydmVyKFN0cmluZyYmIGRhdGFiYXNlRGlyZWN0b3J5UGF0aCk7
CiAKLSAgICBSZWY8SURCU2VydmVyOjpJREJTZXJ2ZXI+IG1fc2VydmVyOworICAgIFVuaXF1ZVJl
ZjxJREJTZXJ2ZXI6OklEQlNlcnZlcj4gbV9zZXJ2ZXI7CiAgICAgUmVmUHRyPElEQkNsaWVudDo6
SURCQ29ubmVjdGlvblRvU2VydmVyPiBtX2Nvbm5lY3Rpb25Ub1NlcnZlcjsKICAgICBSZWZQdHI8
SURCU2VydmVyOjpJREJDb25uZWN0aW9uVG9DbGllbnQ+IG1fY29ubmVjdGlvblRvQ2xpZW50Owog
fTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nl
c3MuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5jcHAK
aW5kZXggNjVlMDVkYjdmMTQwOTg3NDU2MWRhMzZkMmIwM2Y2MDIzMjFiODQ5ZS4uNmNhZjhjYzk0
MWZmMTFhNDFjMDkyYTdjM2U5MWViOWNmMTI3YjJiYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5jcHAKQEAgLTIwMDEsMjQgKzIwMDEsMjMgQEAg
dm9pZCBOZXR3b3JrUHJvY2Vzczo6ZGlkU3luY0FsbENvb2tpZXMoKQogfQogCiAjaWYgRU5BQkxF
KElOREVYRURfREFUQUJBU0UpCi1JREJTZXJ2ZXI6OklEQlNlcnZlciYgTmV0d29ya1Byb2Nlc3M6
OmlkYlNlcnZlcihQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQpCitzdGQ6OnVuaXF1ZV9wdHI8SURC
U2VydmVyOjpJREJTZXJ2ZXI+IE5ldHdvcmtQcm9jZXNzOjpjcmVhdGVJZGJTZXJ2ZXIoUEFMOjpT
ZXNzaW9uSUQgc2Vzc2lvbklEKQogewotICAgIGF1dG8gYWRkUmVzdWx0ID0gbV9pZGJTZXJ2ZXJz
LmFkZChzZXNzaW9uSUQsIG51bGxwdHIpOwotICAgIGlmICghYWRkUmVzdWx0LmlzTmV3RW50cnkp
IHsKLSAgICAgICAgQVNTRVJUKGFkZFJlc3VsdC5pdGVyYXRvci0+dmFsdWUpOwotICAgICAgICBy
ZXR1cm4gKmFkZFJlc3VsdC5pdGVyYXRvci0+dmFsdWU7Ci0gICAgfQotICAgIAogICAgIGF1dG8g
cGF0aCA9IG1faWRiRGF0YWJhc2VQYXRocy5nZXQoc2Vzc2lvbklEKTsKICAgICAvLyBUaGVyZSBz
aG91bGQgYWxyZWFkeSBiZSBhIHJlZ2lzdGVyZWQgcGF0aCBmb3IgdGhpcyBQQUw6OlNlc3Npb25J
RC4KICAgICAvLyBJZiB0aGVyZSdzIG5vdCwgdGhlbiB3aGVyZSBkaWQgdGhpcyBQQUw6OlNlc3Np
b25JRCBjb21lIGZyb20/CiAgICAgQVNTRVJUKCFwYXRoLmlzRW1wdHkoKSk7Ci0gICAgCi0gICAg
YWRkUmVzdWx0Lml0ZXJhdG9yLT52YWx1ZSA9IElEQlNlcnZlcjo6SURCU2VydmVyOjpjcmVhdGUo
cGF0aCwgKnRoaXMsIFt0aGlzXShib29sIGlzSG9sZGluZ0xvY2tlZEZpbGVzKSB7CisKKyAgICBy
ZXR1cm4gc3RkOjptYWtlX3VuaXF1ZTxJREJTZXJ2ZXI6OklEQlNlcnZlcj4oKnRoaXMsIFdURk1v
dmUocGF0aCksIFt0aGlzXShib29sIGlzSG9sZGluZ0xvY2tlZEZpbGVzKSB7CiAgICAgICAgIG5v
dGlmeUhvbGRpbmdMb2NrZWRGaWxlcyhpc0hvbGRpbmdMb2NrZWRGaWxlcyk7CiAgICAgfSk7Ci0g
ICAgYWRkUmVzdWx0Lml0ZXJhdG9yLT52YWx1ZS0+c2V0UGVyT3JpZ2luUXVvdGEobV9pZGJQZXJP
cmlnaW5RdW90YSk7Ci0gICAgcmV0dXJuICphZGRSZXN1bHQuaXRlcmF0b3ItPnZhbHVlOworfQor
CitJREJTZXJ2ZXI6OklEQlNlcnZlciYgTmV0d29ya1Byb2Nlc3M6OmlkYlNlcnZlcihQQUw6OlNl
c3Npb25JRCBzZXNzaW9uSUQpCit7CisgICAgcmV0dXJuICptX2lkYlNlcnZlcnMuZW5zdXJlKHNl
c3Npb25JRCwgW3RoaXMsIHNlc3Npb25JRF0geworICAgICAgICByZXR1cm4gdGhpcy0+Y3JlYXRl
SWRiU2VydmVyKHNlc3Npb25JRCk7CisgICAgfSkuaXRlcmF0b3ItPnZhbHVlOwogfQogCiB2b2lk
IE5ldHdvcmtQcm9jZXNzOjplbnN1cmVQYXRoRXhpc3RzKGNvbnN0IFN0cmluZyYgcGF0aCkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuaCBi
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuaAppbmRleCAyNTEw
MjY1ZDhiZTYxM2M4NmEzMWQ1NjM1MDAwMjk3ZDdlMDJjZjlmLi5kOTQzNjAyODA3NGU0ZmFhMjM0
M2Q1NDc4NWFlMGRhMzgxZWExNTUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL05ldHdvcmtQcm9jZXNzLmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy9OZXR3b3JrUHJvY2Vzcy5oCkBAIC00MjcsNiArNDI3LDcgQEAgcHJpdmF0ZToKICNpZiBFTkFC
TEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICB2b2lkIGFkZEluZGV4ZWREYXRhYmFzZVNlc3Npb24o
UEFMOjpTZXNzaW9uSUQsIFN0cmluZyYsIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSYpOwogICAg
IEhhc2hTZXQ8V2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhPiBpbmRleGVkRGF0YWJhc2VPcmln
aW5zKGNvbnN0IFN0cmluZyYgcGF0aCk7CisgICAgc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6OklE
QlNlcnZlcjo6SURCU2VydmVyPiBjcmVhdGVJZGJTZXJ2ZXIoUEFMOjpTZXNzaW9uSUQpOwogI2Vu
ZGlmCiAKICNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCkBAIC01MDAsNyArNTAxLDcgQEAgcHJp
dmF0ZToKIAogI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIEhhc2hNYXA8UEFMOjpT
ZXNzaW9uSUQsIFN0cmluZz4gbV9pZGJEYXRhYmFzZVBhdGhzOwotICAgIEhhc2hNYXA8UEFMOjpT
ZXNzaW9uSUQsIFJlZlB0cjxXZWJDb3JlOjpJREJTZXJ2ZXI6OklEQlNlcnZlcj4+IG1faWRiU2Vy
dmVyczsKKyAgICBIYXNoTWFwPFBBTDo6U2Vzc2lvbklELCBzdGQ6OnVuaXF1ZV9wdHI8V2ViQ29y
ZTo6SURCU2VydmVyOjpJREJTZXJ2ZXI+PiBtX2lkYlNlcnZlcnM7CiAgICAgdWludDY0X3QgbV9p
ZGJQZXJPcmlnaW5RdW90YSB7IFdlYkNvcmU6OklEQlNlcnZlcjo6ZGVmYXVsdFBlck9yaWdpblF1
b3RhIH07CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9TdG9yYWdl
L1dlYkRhdGFiYXNlUHJvdmlkZXIuY3BwIGIvU291cmNlL1dlYktpdExlZ2FjeS9TdG9yYWdlL1dl
YkRhdGFiYXNlUHJvdmlkZXIuY3BwCmluZGV4IGZiNzE2NjE3M2U3MzVhMDQ5ODBjYTYxNTlhNDQ5
ZDIyMDE5ZWQ4YmIuLmM0OGNlMTAwNDYzZjNmNWExMzIzZWQ3YWE2ZjBlODM1MmI4OGM5YjkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvU3RvcmFnZS9XZWJEYXRhYmFzZVByb3ZpZGVy
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L1N0b3JhZ2UvV2ViRGF0YWJhc2VQcm92aWRl
ci5jcHAKQEAgLTQ1LDE3ICs0NSwxMiBAQCBXZWJEYXRhYmFzZVByb3ZpZGVyOjp+V2ViRGF0YWJh
c2VQcm92aWRlcigpCiAjaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiBXZWJDb3JlOjpJREJD
bGllbnQ6OklEQkNvbm5lY3Rpb25Ub1NlcnZlciYgV2ViRGF0YWJhc2VQcm92aWRlcjo6aWRiQ29u
bmVjdGlvblRvU2VydmVyRm9yU2Vzc2lvbihjb25zdCBQQUw6OlNlc3Npb25JRCYgc2Vzc2lvbklE
KQogewotICAgIGF1dG8gcmVzdWx0ID0gbV9pZGJTZXJ2ZXJNYXAuYWRkKHNlc3Npb25JRC5zZXNz
aW9uSUQoKSwgbnVsbHB0cik7Ci0gICAgaWYgKHJlc3VsdC5pc05ld0VudHJ5KSB7Ci0gICAgICAg
IGlmIChzZXNzaW9uSUQuaXNFcGhlbWVyYWwoKSkKLSAgICAgICAgICAgIHJlc3VsdC5pdGVyYXRv
ci0+dmFsdWUgPSBXZWJDb3JlOjpJblByb2Nlc3NJREJTZXJ2ZXI6OmNyZWF0ZSgpOwotICAgICAg
ICBlbHNlCi0gICAgICAgICAgICByZXN1bHQuaXRlcmF0b3ItPnZhbHVlID0gV2ViQ29yZTo6SW5Q
cm9jZXNzSURCU2VydmVyOjpjcmVhdGUoaW5kZXhlZERhdGFiYXNlRGlyZWN0b3J5UGF0aCgpKTsK
LSAgICB9CisgICAgYXV0byYgc2VydmVyID0gKm1faWRiU2VydmVyTWFwLmVuc3VyZShzZXNzaW9u
SUQuc2Vzc2lvbklEKCksIFt0aGlzLCAmc2Vzc2lvbklEXSB7CisgICAgICAgIHJldHVybiBXZWJD
b3JlOjpJblByb2Nlc3NJREJTZXJ2ZXI6OmNyZWF0ZShzZXNzaW9uSUQuaXNFcGhlbWVyYWwoKSA/
IFN0cmluZyB7IH0gOiB0aGlzLT5pbmRleGVkRGF0YWJhc2VEaXJlY3RvcnlQYXRoKCkpOworICAg
IH0pLml0ZXJhdG9yLT52YWx1ZTsKIAotICAgIHJlc3VsdC5pdGVyYXRvci0+dmFsdWUtPmlkYlNl
cnZlcigpLnNldFBlck9yaWdpblF1b3RhKG1faWRiUGVyT3JpZ2luUXVvdGEpOwotCi0gICAgcmV0
dXJuIHJlc3VsdC5pdGVyYXRvci0+dmFsdWUtPmNvbm5lY3Rpb25Ub1NlcnZlcigpOworICAgIHNl
cnZlci5pZGJTZXJ2ZXIoKS5zZXRQZXJPcmlnaW5RdW90YShtX2lkYlBlck9yaWdpblF1b3RhKTsK
KyAgICByZXR1cm4gc2VydmVyLmNvbm5lY3Rpb25Ub1NlcnZlcigpOwogfQogCiB2b2lkIFdlYkRh
dGFiYXNlUHJvdmlkZXI6OmRlbGV0ZUFsbERhdGFiYXNlcygpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>