<?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>225652</bug_id>
          
          <creation_ts>2021-05-11 06:16:24 -0700</creation_ts>
          <short_desc>[WTF] Add holdLock() overload for WTF::DataMutex</short_desc>
          <delta_ts>2021-05-13 10:04:18 -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>Web Template Framework</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="Alicia Boya García">aboya</reporter>
          <assigned_to name="Alicia Boya García">aboya</assigned_to>
          <cc>benjamin</cc>
    
    <cc>calvaris</cc>
    
    <cc>cdumez</cc>
    
    <cc>cgarcia</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gustavo</cc>
    
    <cc>jer.noble</cc>
    
    <cc>menard</cc>
    
    <cc>philipj</cc>
    
    <cc>pnormand</cc>
    
    <cc>sergio</cc>
    
    <cc>vjaquez</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1758884</commentid>
    <comment_count>0</comment_count>
    <who name="Alicia Boya García">aboya</who>
    <bug_when>2021-05-11 06:16:24 -0700</bug_when>
    <thetext>This patch adds a holdLock() overload for WTF::DataMutex as syntactic
sugar to simplify usage in a similar way to what holdLock() already
does for WTF::Locker.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1758885</commentid>
    <comment_count>1</comment_count>
      <attachid>428268</attachid>
    <who name="Alicia Boya García">aboya</who>
    <bug_when>2021-05-11 06:18:14 -0700</bug_when>
    <thetext>Created attachment 428268
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1758895</commentid>
    <comment_count>2</comment_count>
      <attachid>428268</attachid>
    <who name="Xabier Rodríguez Calvar">calvaris</who>
    <bug_when>2021-05-11 07:12:29 -0700</bug_when>
    <thetext>Comment on attachment 428268
Patch

Art.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1759722</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-05-13 10:03:46 -0700</bug_when>
    <thetext>Committed r277438 (237686@main): &lt;https://commits.webkit.org/237686@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 428268.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1759723</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-05-13 10:04:18 -0700</bug_when>
    <thetext>&lt;rdar://problem/77970928&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>428268</attachid>
            <date>2021-05-11 06:18:14 -0700</date>
            <delta_ts>2021-05-13 10:03:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225652-20210511151812.patch</filename>
            <type>text/plain</type>
            <size>23092</size>
            <attacher name="Alicia Boya García">aboya</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc3MjYyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDlkNzhiNDRmNjJmY2YzMjQ1Mzc2ZjAy
OWU4NmNmNDYxZTYxYzIzNDQuLjRlOTdhM2M4YzIzOGQyMDQzMjM3Zjg1MTU2ZjZlMDAwNjk4MzAw
OGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMjEtMDUtMTEgIEFsaWNpYSBCb3lhIEdhcmPDrWEg
IDxhYm95YUBpZ2FsaWEuY29tPgorCisgICAgICAgIFtXVEZdIEFkZCBob2xkTG9jaygpIG92ZXJs
b2FkIGZvciBXVEY6OkRhdGFNdXRleAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjI1NjUyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIGEgaG9sZExvY2soKSBvdmVybG9hZCBmb3Ig
V1RGOjpEYXRhTXV0ZXggYXMgc3ludGFjdGljCisgICAgICAgIHN1Z2FyIHRvIHNpbXBsaWZ5IHVz
YWdlIGluIGEgc2ltaWxhciB3YXkgdG8gd2hhdCBob2xkTG9jaygpIGFscmVhZHkKKyAgICAgICAg
ZG9lcyBmb3IgV1RGOjpMb2NrZXIuCisKKyAgICAgICAgKiB3dGYvRGF0YU11dGV4Lmg6CisgICAg
ICAgIChXVEY6OmhvbGRMb2NrKToKKwogMjAyMS0wNS0xMCAgUm9iIEJ1aXMgIDxyYnVpc0BpZ2Fs
aWEuY29tPgogCiAgICAgICAgIEltcGxlbWVudCA8Zm9ybT4ucmVxdWVzdFN1Ym1pdCgpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cKaW5kZXggZGNmZTM1MjcyZDk3Y2IxOWVlYzcxMjI1YmQ3MTFlMGNhZjMxMjYxNC4uZTAwYjk5
M2EwOTBhZjI1NDQ2YmI3ODQ2ZDg5MGU1ODhkY2M0NTRhOCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDQ3IEBACisyMDIxLTA1LTExICBBbGljaWEgQm95YSBHYXJjw61hICA8YWJveWFAaWdhbGlhLmNv
bT4KKworICAgICAgICBbV1RGXSBBZGQgaG9sZExvY2soKSBvdmVybG9hZCBmb3IgV1RGOjpEYXRh
TXV0ZXgKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIy
NTY1MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFs
bCBpbnN0YW50aWF0aW9ucyBvZiBEYXRhTXV0ZXg6OkxvY2tlZFdyYXBwZXIgaGF2ZSBiZWVuIHJl
cGxhY2VkIGJ5CisgICAgICAgIGhvbGRMb2NrKCksIGZvciBlcXVpdmFsZW50IGJ1dCBtb3JlIGNv
bmNpc2UgY29kZS4KKworICAgICAgICBUaGlzIHBhdGNoIGludHJvZHVjZXMgbm8gYmVoYXZpb3Ig
Y2hhbmdlcy4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9XZWJLaXRX
ZWJTb3VyY2VHU3RyZWFtZXIuY3BwOgorICAgICAgICAod2ViS2l0V2ViU3JjQ29uc3RydWN0ZWQp
OgorICAgICAgICAod2ViS2l0V2ViU3JjR2V0UHJvcGVydHkpOgorICAgICAgICAod2ViS2l0V2Vi
U3JjU2V0Q29udGV4dCk6CisgICAgICAgICh3ZWJLaXRXZWJTcmNDcmVhdGUpOgorICAgICAgICAo
d2ViS2l0V2ViU3JjTWFrZVJlcXVlc3QpOgorICAgICAgICAod2ViS2l0V2ViU3JjU3RvcCk6Cisg
ICAgICAgICh3ZWJLaXRXZWJTcmNHZXRTaXplKToKKyAgICAgICAgKHdlYktpdFdlYlNyY0lzU2Vl
a2FibGUpOgorICAgICAgICAod2ViS2l0V2ViU3JjRG9TZWVrKToKKyAgICAgICAgKHdlYktpdFdl
YlNyY1F1ZXJ5KToKKyAgICAgICAgKHdlYktpdFdlYlNyY1VuTG9jayk6CisgICAgICAgICh3ZWJL
aXRXZWJTcmNVbkxvY2tTdG9wKToKKyAgICAgICAgKHdlYktpdFdlYlNyY1NldE1lZGlhUGxheWVy
KToKKyAgICAgICAgKHdlYktpdFNyY1Bhc3NlZENPUlNBY2Nlc3NDaGVjayk6CisgICAgICAgIChD
YWNoZWRSZXNvdXJjZVN0cmVhbWluZ0NsaWVudDo6cmVzcG9uc2VSZWNlaXZlZCk6CisgICAgICAg
IChDYWNoZWRSZXNvdXJjZVN0cmVhbWluZ0NsaWVudDo6ZGF0YVJlY2VpdmVkKToKKyAgICAgICAg
KENhY2hlZFJlc291cmNlU3RyZWFtaW5nQ2xpZW50OjphY2Nlc3NDb250cm9sQ2hlY2tGYWlsZWQp
OgorICAgICAgICAoQ2FjaGVkUmVzb3VyY2VTdHJlYW1pbmdDbGllbnQ6OmxvYWRGYWlsZWQpOgor
ICAgICAgICAoQ2FjaGVkUmVzb3VyY2VTdHJlYW1pbmdDbGllbnQ6OmxvYWRGaW5pc2hlZCk6Cisg
ICAgICAgICh3ZWJLaXRTcmNXb3VsZFRhaW50T3JpZ2luKToKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9nc3RyZWFtZXIvbXNlL01lZGlhU291cmNlVHJhY2tHU3RyZWFtZXIuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6TWVkaWFTb3VyY2VUcmFja0dTdHJlYW1lcjo6aXNSZWFkeUZvck1vcmVT
YW1wbGVzKToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhU291cmNlVHJhY2tHU3RyZWFtZXI6Om5v
dGlmeVdoZW5SZWFkeUZvck1vcmVTYW1wbGVzKToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhU291
cmNlVHJhY2tHU3RyZWFtZXI6OmVucXVldWVPYmplY3QpOgorICAgICAgICAoV2ViQ29yZTo6TWVk
aWFTb3VyY2VUcmFja0dTdHJlYW1lcjo6Y2xlYXJRdWV1ZSk6CisgICAgICAgICogcGxhdGZvcm0v
Z3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9XZWJLaXRNZWRpYVNvdXJjZUdTdHJlYW1lci5jcHA6Cisg
ICAgICAgICh3ZWJLaXRNZWRpYVNyY0FjdGl2YXRlTW9kZSk6CisgICAgICAgICh3ZWJLaXRNZWRp
YVNyY1BhZExpbmtlZCk6CisgICAgICAgICh3ZWJLaXRNZWRpYVNyY0xvb3ApOgorICAgICAgICAo
d2ViS2l0TWVkaWFTcmNTdHJlYW1GbHVzaCk6CisKIDIwMjEtMDUtMTAgIEFsaWNpYSBCb3lhIEdh
cmPDrWEgIDxhYm95YUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHU3RyZWFtZXJdIEFkZCBSQUlJ
IGxvY2tlcnMgZm9yIEdTdHJlYW1lciBsb2NrcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYv
RGF0YU11dGV4LmggYi9Tb3VyY2UvV1RGL3d0Zi9EYXRhTXV0ZXguaAppbmRleCA2MGYxNTM3MGUw
NWZlYzk0OWU4NjUxZTBjNGJmNDdkZDhkOGM4OTUyLi5hMmUxZDI0MGE4YTUwN2JlNmJiYjk5ZTcz
MzQzNTEyNTVmNTU4ZTU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9EYXRhTXV0ZXguaAor
KysgYi9Tb3VyY2UvV1RGL3d0Zi9EYXRhTXV0ZXguaApAQCAtMTQ5LDQgKzE0OSwxMCBAQCBwcml2
YXRlOgogICAgIFQgbV9kYXRhOwogfTsKIAordGVtcGxhdGU8dHlwZW5hbWUgVD4KK3R5cGVuYW1l
IERhdGFNdXRleDxUPjo6TG9ja2VkV3JhcHBlciBob2xkTG9jayhEYXRhTXV0ZXg8VD4mIGRhdGFN
dXRleCkKK3sKKyAgICByZXR1cm4gdHlwZW5hbWUgRGF0YU11dGV4PFQ+OjpMb2NrZWRXcmFwcGVy
KGRhdGFNdXRleCk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdURgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL1dlYktpdFdlYlNvdXJjZUdTdHJl
YW1lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvV2Vi
S2l0V2ViU291cmNlR1N0cmVhbWVyLmNwcAppbmRleCBkYjM2NDQ3MzQ1NDUyODdmYzMxMzY2M2Vh
OTY5Y2I2MzQxNjBmZjU0Li5iMTgzOWM2YmJhOGNiMjgyNTBhOWQyNTMzYzg5NzdkMmY0MzY4YWI2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIv
V2ViS2l0V2ViU291cmNlR1N0cmVhbWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9nc3RyZWFtZXIvV2ViS2l0V2ViU291cmNlR1N0cmVhbWVyLmNwcApAQCAtMzAw
LDcgKzMwMCw3IEBAIHN0YXRpYyB2b2lkIHdlYktpdFdlYlNyY0NvbnN0cnVjdGVkKEdPYmplY3Qq
IG9iamVjdCkKIAogICAgIHByaXYtPm1pbmltdW1CbG9ja3NpemUgPSBnc3RfYmFzZV9zcmNfZ2V0
X2Jsb2Nrc2l6ZShHU1RfQkFTRV9TUkNfQ0FTVChzcmMpKTsKIAotICAgIERhdGFNdXRleDxXZWJL
aXRXZWJTcmNQcml2YXRlOjpTdHJlYW1pbmdNZW1iZXJzPjo6TG9ja2VkV3JhcHBlciBtZW1iZXJz
KHByaXYtPmRhdGFNdXRleCk7CisgICAgYXV0byBtZW1iZXJzID0gaG9sZExvY2socHJpdi0+ZGF0
YU11dGV4KTsKICAgICBtZW1iZXJzLT5hZGFwdGVyID0gYWRvcHRHUmVmKGdzdF9hZGFwdGVyX25l
dygpKTsKICAgICB3ZWJraXRXZWJTcmNSZXNldChzcmMsIG1lbWJlcnMsIFJlc2V0VHlwZTo6SGFy
ZCk7CiAKQEAgLTM0NSw3ICszNDUsNyBAQCBzdGF0aWMgdm9pZCB3ZWJLaXRXZWJTcmNHZXRQcm9w
ZXJ0eShHT2JqZWN0KiBvYmplY3QsIGd1aW50IHByb3BJRCwgR1ZhbHVlKiB2YWx1ZQogICAgICAg
ICBnX3ZhbHVlX3NldF9zdHJpbmcodmFsdWUsIHByaXYtPm9yaWdpbmFsVVJJLmRhdGEoKSk7CiAg
ICAgICAgIGJyZWFrOwogICAgIGNhc2UgUFJPUF9SRVNPTFZFRF9MT0NBVElPTjogewotICAgICAg
ICBEYXRhTXV0ZXg8V2ViS2l0V2ViU3JjUHJpdmF0ZTo6U3RyZWFtaW5nTWVtYmVycz46OkxvY2tl
ZFdyYXBwZXIgbWVtYmVycyhwcml2LT5kYXRhTXV0ZXgpOworICAgICAgICBhdXRvIG1lbWJlcnMg
PSBob2xkTG9jayhwcml2LT5kYXRhTXV0ZXgpOwogICAgICAgICBnX3ZhbHVlX3NldF9zdHJpbmco
dmFsdWUsIG1lbWJlcnMtPnJlZGlyZWN0ZWRVUkkuaXNOdWxsKCkgPyBwcml2LT5vcmlnaW5hbFVS
SS5kYXRhKCkgOiBtZW1iZXJzLT5yZWRpcmVjdGVkVVJJLmRhdGEoKSk7CiAgICAgICAgIGJyZWFr
OwogICAgIH0KQEAgLTM3NSw3ICszNzUsNyBAQCBzdGF0aWMgdm9pZCB3ZWJLaXRXZWJTcmNTZXRD
b250ZXh0KEdzdEVsZW1lbnQqIGVsZW1lbnQsIEdzdENvbnRleHQqIGNvbnRleHQpCiAgICAgR1NU
X0RFQlVHX09CSkVDVChzcmMsICJjb250ZXh0IHR5cGU6ICVzIiwgZ3N0X2NvbnRleHRfZ2V0X2Nv
bnRleHRfdHlwZShjb250ZXh0KSk7CiAgICAgaWYgKGdzdF9jb250ZXh0X2hhc19jb250ZXh0X3R5
cGUoY29udGV4dCwgV0VCS0lUX1dFQl9TUkNfUExBWUVSX0NPTlRFWFRfVFlQRV9OQU1FKSkgewog
ICAgICAgICBjb25zdCBHVmFsdWUqIHZhbHVlID0gZ3N0X3N0cnVjdHVyZV9nZXRfdmFsdWUoZ3N0
X2NvbnRleHRfZ2V0X3N0cnVjdHVyZShjb250ZXh0KSwgInBsYXllciIpOwotICAgICAgICBEYXRh
TXV0ZXg8V2ViS2l0V2ViU3JjUHJpdmF0ZTo6U3RyZWFtaW5nTWVtYmVycz46OkxvY2tlZFdyYXBw
ZXIgbWVtYmVycyhwcml2LT5kYXRhTXV0ZXgpOworICAgICAgICBhdXRvIG1lbWJlcnMgPSBob2xk
TG9jayhwcml2LT5kYXRhTXV0ZXgpOwogICAgICAgICBtZW1iZXJzLT5wbGF5ZXIgPSByZWludGVy
cHJldF9jYXN0PE1lZGlhUGxheWVyKj4oZ192YWx1ZV9nZXRfcG9pbnRlcih2YWx1ZSkpOwogICAg
IH0KICAgICBHU1RfRUxFTUVOVF9DTEFTUyhwYXJlbnRfY2xhc3MpLT5zZXRfY29udGV4dChlbGVt
ZW50LCBjb250ZXh0KTsKQEAgLTQ1OCw3ICs0NTgsNyBAQCBzdGF0aWMgR3N0Rmxvd1JldHVybiB3
ZWJLaXRXZWJTcmNDcmVhdGUoR3N0UHVzaFNyYyogcHVzaFNyYywgR3N0QnVmZmVyKiogYnVmZmVy
KQogICAgIEdzdEJhc2VTcmMqIGJhc2VTcmMgPSBHU1RfQkFTRV9TUkNfQ0FTVChwdXNoU3JjKTsK
ICAgICBXZWJLaXRXZWJTcmMqIHNyYyA9IFdFQktJVF9XRUJfU1JDKGJhc2VTcmMpOwogICAgIFdl
YktpdFdlYlNyY1ByaXZhdGUqIHByaXYgPSBzcmMtPnByaXY7Ci0gICAgRGF0YU11dGV4PFdlYktp
dFdlYlNyY1ByaXZhdGU6OlN0cmVhbWluZ01lbWJlcnM+OjpMb2NrZWRXcmFwcGVyIG1lbWJlcnMo
cHJpdi0+ZGF0YU11dGV4KTsKKyAgICBhdXRvIG1lbWJlcnMgPSBob2xkTG9jayhwcml2LT5kYXRh
TXV0ZXgpOwogCiAgICAgLy8gV2UgbmVlZCBtZW1iZXJzLT5wbGF5ZXIgdG8gbWFrZSByZXF1ZXN0
cy4gVGhlcmUgYXJlIHR3byBtZWNoYW5pc21zIGZvciB0aGlzLgogICAgIC8vCkBAIC02ODgsNyAr
Njg4LDcgQEAgc3RhdGljIHZvaWQgd2ViS2l0V2ViU3JjTWFrZVJlcXVlc3QoV2ViS2l0V2ViU3Jj
KiBzcmMsIERhdGFNdXRleDxXZWJLaXRXZWJTcmNQcmkKICAgICBBU1NFUlQoIWlzTWFpblRocmVh
ZCgpKTsKICAgICBSdW5Mb29wOjptYWluKCkuZGlzcGF0Y2goW3Byb3RlY3RvciA9IFdURjo6ZW5z
dXJlR1JlZihzcmMpLCByZXF1ZXN0ID0gV1RGTW92ZShyZXF1ZXN0KSwgcmVxdWVzdE51bWJlciA9
IG1lbWJlcnMtPnJlcXVlc3ROdW1iZXJdIHsKICAgICAgICAgV2ViS2l0V2ViU3JjUHJpdmF0ZSog
cHJpdiA9IHByb3RlY3Rvci0+cHJpdjsKLSAgICAgICAgRGF0YU11dGV4PFdlYktpdFdlYlNyY1By
aXZhdGU6OlN0cmVhbWluZ01lbWJlcnM+OjpMb2NrZWRXcmFwcGVyIG1lbWJlcnMocHJpdi0+ZGF0
YU11dGV4KTsKKyAgICAgICAgYXV0byBtZW1iZXJzID0gaG9sZExvY2socHJpdi0+ZGF0YU11dGV4
KTsKICAgICAgICAgLy8gSWdub3JlIHRoaXMgdGFzayAobm90IG1ha2luZyBhbnkgSFRUUCByZXF1
ZXN0KSBpZiBieSBub3cgV2ViS2l0V2ViU3JjIHN0cmVhbWluZyB0aHJlYWQgaXMgYWxyZWFkeSB3
YWl0aW5nCiAgICAgICAgIC8vIGZvciBhIGRpZmZlcmVudCByZXF1ZXN0LiBUaGVyZSBpcyBubyBw
b2ludCBhbnltb3JlIGluIHNlbmRpbmcgdGhpcyBvbmUuCiAgICAgICAgIGlmIChtZW1iZXJzLT5y
ZXF1ZXN0TnVtYmVyICE9IHJlcXVlc3ROdW1iZXIpIHsKQEAgLTcxNSw3ICs3MTUsNyBAQCBzdGF0
aWMgZ2Jvb2xlYW4gd2ViS2l0V2ViU3JjU3RvcChHc3RCYXNlU3JjKiBiYXNlU3JjKQogewogICAg
IFdlYktpdFdlYlNyYyogc3JjID0gV0VCS0lUX1dFQl9TUkMoYmFzZVNyYyk7CiAgICAgLy8gYmFz
ZXNyYyB3aWxsIGFsd2F5cyBjYWxsIHVuTG9jaygpIGFuZCB1bkxvY2tTdG9wKCkgYmVmb3JlIGNh
bGxpbmcgdGhpcy4gU2VlIGdzdF9iYXNlX3NyY19zdG9wKCkuCi0gICAgRGF0YU11dGV4PFdlYktp
dFdlYlNyY1ByaXZhdGU6OlN0cmVhbWluZ01lbWJlcnM+OjpMb2NrZWRXcmFwcGVyIG1lbWJlcnMo
c3JjLT5wcml2LT5kYXRhTXV0ZXgpOworICAgIGF1dG8gbWVtYmVycyA9IGhvbGRMb2NrKHNyYy0+
cHJpdi0+ZGF0YU11dGV4KTsKICAgICB3ZWJraXRXZWJTcmNSZXNldChzcmMsIG1lbWJlcnMsIFJl
c2V0VHlwZTo6SGFyZCk7CiAgICAgR1NUX0RFQlVHX09CSkVDVChzcmMsICJTdG9wcGVkIFdlYktp
dFdlYlNyYyIpOwogICAgIHJldHVybiBUUlVFOwpAQCAtNzI0LDcgKzcyNCw3IEBAIHN0YXRpYyBn
Ym9vbGVhbiB3ZWJLaXRXZWJTcmNTdG9wKEdzdEJhc2VTcmMqIGJhc2VTcmMpCiBzdGF0aWMgZ2Jv
b2xlYW4gd2ViS2l0V2ViU3JjR2V0U2l6ZShHc3RCYXNlU3JjKiBiYXNlU3JjLCBndWludDY0KiBz
aXplKQogewogICAgIFdlYktpdFdlYlNyYyogc3JjID0gV0VCS0lUX1dFQl9TUkMoYmFzZVNyYyk7
Ci0gICAgRGF0YU11dGV4PFdlYktpdFdlYlNyY1ByaXZhdGU6OlN0cmVhbWluZ01lbWJlcnM+OjpM
b2NrZWRXcmFwcGVyIG1lbWJlcnMoc3JjLT5wcml2LT5kYXRhTXV0ZXgpOworICAgIGF1dG8gbWVt
YmVycyA9IGhvbGRMb2NrKHNyYy0+cHJpdi0+ZGF0YU11dGV4KTsKIAogICAgIEdTVF9ERUJVR19P
QkpFQ1Qoc3JjLCAiaGF2ZVNpemU6ICVzLCBzaXplOiAlIiBHX0dVSU5UNjRfRk9STUFULCBib29s
Rm9yUHJpbnRpbmcobWVtYmVycy0+aGF2ZVNpemUpLCBtZW1iZXJzLT5zaXplKTsKICAgICBpZiAo
bWVtYmVycy0+aGF2ZVNpemUpIHsKQEAgLTczOCw3ICs3MzgsNyBAQCBzdGF0aWMgZ2Jvb2xlYW4g
d2ViS2l0V2ViU3JjR2V0U2l6ZShHc3RCYXNlU3JjKiBiYXNlU3JjLCBndWludDY0KiBzaXplKQog
c3RhdGljIGdib29sZWFuIHdlYktpdFdlYlNyY0lzU2Vla2FibGUoR3N0QmFzZVNyYyogYmFzZVNy
YykKIHsKICAgICBXZWJLaXRXZWJTcmMqIHNyYyA9IFdFQktJVF9XRUJfU1JDKGJhc2VTcmMpOwot
ICAgIERhdGFNdXRleDxXZWJLaXRXZWJTcmNQcml2YXRlOjpTdHJlYW1pbmdNZW1iZXJzPjo6TG9j
a2VkV3JhcHBlciBtZW1iZXJzKHNyYy0+cHJpdi0+ZGF0YU11dGV4KTsKKyAgICBhdXRvIG1lbWJl
cnMgPSBob2xkTG9jayhzcmMtPnByaXYtPmRhdGFNdXRleCk7CiAgICAgR1NUX0RFQlVHX09CSkVD
VChzcmMsICJpc1NlZWthYmxlOiAlcyIsIGJvb2xGb3JQcmludGluZyhtZW1iZXJzLT5pc1NlZWth
YmxlKSk7CiAgICAgcmV0dXJuIG1lbWJlcnMtPmlzU2Vla2FibGU7CiB9CkBAIC03NTUsNyArNzU1
LDcgQEAgc3RhdGljIGdib29sZWFuIHdlYktpdFdlYlNyY0RvU2VlayhHc3RCYXNlU3JjKiBiYXNl
U3JjLCBHc3RTZWdtZW50KiBzZWdtZW50KQogICAgIEFTU0VSVChHU1RfRUxFTUVOVChiYXNlU3Jj
KS0+Y3VycmVudF9zdGF0ZSA8IEdTVF9TVEFURV9QQVVTRUQgfHwgd2ViS2l0V2ViU3JjSXNTZWVr
YWJsZShiYXNlU3JjKSk7CiAKICAgICBXZWJLaXRXZWJTcmMqIHNyYyA9IFdFQktJVF9XRUJfU1JD
KGJhc2VTcmMpOwotICAgIERhdGFNdXRleDxXZWJLaXRXZWJTcmNQcml2YXRlOjpTdHJlYW1pbmdN
ZW1iZXJzPjo6TG9ja2VkV3JhcHBlciBtZW1iZXJzKHNyYy0+cHJpdi0+ZGF0YU11dGV4KTsKKyAg
ICBhdXRvIG1lbWJlcnMgPSBob2xkTG9jayhzcmMtPnByaXYtPmRhdGFNdXRleCk7CiAKICAgICBH
U1RfREVCVUdfT0JKRUNUKHNyYywgIlNlZWsgc2VnbWVudDogKCUiIEdfR1VJTlQ2NF9GT1JNQVQg
Ii0lIiBHX0dVSU5UNjRfRk9STUFUICIpIFBvc2l0aW9uIHByZXZpb3VzIHRvIHNlZWs6ICUiIEdf
R1VJTlQ2NF9GT1JNQVQsIHNlZ21lbnQtPnN0YXJ0LCBzZWdtZW50LT5zdG9wLCBtZW1iZXJzLT5y
ZWFkUG9zaXRpb24pOwogCkBAIC03ODUsNyArNzg1LDcgQEAgc3RhdGljIGdib29sZWFuIHdlYktp
dFdlYlNyY1F1ZXJ5KEdzdEJhc2VTcmMqIGJhc2VTcmMsIEdzdFF1ZXJ5KiBxdWVyeSkKIAogICAg
IGlmIChHU1RfUVVFUllfVFlQRShxdWVyeSkgPT0gR1NUX1FVRVJZX1VSSSkgewogICAgICAgICBn
c3RfcXVlcnlfc2V0X3VyaShxdWVyeSwgcHJpdi0+b3JpZ2luYWxVUkkuZGF0YSgpKTsKLSAgICAg
ICAgRGF0YU11dGV4PFdlYktpdFdlYlNyY1ByaXZhdGU6OlN0cmVhbWluZ01lbWJlcnM+OjpMb2Nr
ZWRXcmFwcGVyIG1lbWJlcnMoc3JjLT5wcml2LT5kYXRhTXV0ZXgpOworICAgICAgICBhdXRvIG1l
bWJlcnMgPSBob2xkTG9jayhzcmMtPnByaXYtPmRhdGFNdXRleCk7CiAgICAgICAgIGlmICghbWVt
YmVycy0+cmVkaXJlY3RlZFVSSS5pc051bGwoKSkKICAgICAgICAgICAgIGdzdF9xdWVyeV9zZXRf
dXJpX3JlZGlyZWN0aW9uKHF1ZXJ5LCBtZW1iZXJzLT5yZWRpcmVjdGVkVVJJLmRhdGEoKSk7CiAg
ICAgICAgIHJlc3VsdCA9IFRSVUU7CkBAIC04MDgsNyArODA4LDcgQEAgc3RhdGljIGdib29sZWFu
IHdlYktpdFdlYlNyY1F1ZXJ5KEdzdEJhc2VTcmMqIGJhc2VTcmMsIEdzdFF1ZXJ5KiBxdWVyeSkK
IHN0YXRpYyBnYm9vbGVhbiB3ZWJLaXRXZWJTcmNVbkxvY2soR3N0QmFzZVNyYyogYmFzZVNyYykK
IHsKICAgICBXZWJLaXRXZWJTcmMqIHNyYyA9IFdFQktJVF9XRUJfU1JDKGJhc2VTcmMpOwotICAg
IERhdGFNdXRleDxXZWJLaXRXZWJTcmNQcml2YXRlOjpTdHJlYW1pbmdNZW1iZXJzPjo6TG9ja2Vk
V3JhcHBlciBtZW1iZXJzKHNyYy0+cHJpdi0+ZGF0YU11dGV4KTsKKyAgICBhdXRvIG1lbWJlcnMg
PSBob2xkTG9jayhzcmMtPnByaXYtPmRhdGFNdXRleCk7CiAKICAgICBHU1RfREVCVUdfT0JKRUNU
KHNyYywgIlVubG9jayIpOwogICAgIG1lbWJlcnMtPmlzRmx1c2hpbmcgPSB0cnVlOwpAQCAtODM5
LDcgKzgzOSw3IEBAIHN0YXRpYyBnYm9vbGVhbiB3ZWJLaXRXZWJTcmNVbkxvY2soR3N0QmFzZVNy
YyogYmFzZVNyYykKIHN0YXRpYyBnYm9vbGVhbiB3ZWJLaXRXZWJTcmNVbkxvY2tTdG9wKEdzdEJh
c2VTcmMqIGJhc2VTcmMpCiB7CiAgICAgV2ViS2l0V2ViU3JjKiBzcmMgPSBXRUJLSVRfV0VCX1NS
QyhiYXNlU3JjKTsKLSAgICBEYXRhTXV0ZXg8V2ViS2l0V2ViU3JjUHJpdmF0ZTo6U3RyZWFtaW5n
TWVtYmVycz46OkxvY2tlZFdyYXBwZXIgbWVtYmVycyhzcmMtPnByaXYtPmRhdGFNdXRleCk7Cisg
ICAgYXV0byBtZW1iZXJzID0gaG9sZExvY2soc3JjLT5wcml2LT5kYXRhTXV0ZXgpOwogICAgIEdT
VF9ERUJVR19PQkpFQ1Qoc3JjLCAiVW5sb2NrIHN0b3AiKTsKICAgICBtZW1iZXJzLT5pc0ZsdXNo
aW5nID0gZmFsc2U7CiAgICAgd2Via2l0V2ViU3JjUmVzZXQoc3JjLCBtZW1iZXJzLCBSZXNldFR5
cGU6OlNvZnQpOwpAQCAtOTI1LDE0ICs5MjUsMTQgQEAgc3RhdGljIHZvaWQgd2ViS2l0V2ViU3Jj
VXJpSGFuZGxlckluaXQoZ3BvaW50ZXIgZ0lmYWNlLCBncG9pbnRlcikKIHZvaWQgd2ViS2l0V2Vi
U3JjU2V0TWVkaWFQbGF5ZXIoV2ViS2l0V2ViU3JjKiBzcmMsIFdlYkNvcmU6Ok1lZGlhUGxheWVy
KiBwbGF5ZXIsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIpCiB7CiAgICAgQVNTRVJUKHBsYXllcik7
Ci0gICAgRGF0YU11dGV4PFdlYktpdFdlYlNyY1ByaXZhdGU6OlN0cmVhbWluZ01lbWJlcnM+OjpM
b2NrZWRXcmFwcGVyIG1lbWJlcnMoc3JjLT5wcml2LT5kYXRhTXV0ZXgpOworICAgIGF1dG8gbWVt
YmVycyA9IGhvbGRMb2NrKHNyYy0+cHJpdi0+ZGF0YU11dGV4KTsKICAgICBtZW1iZXJzLT5wbGF5
ZXIgPSBwbGF5ZXI7CiAgICAgbWVtYmVycy0+cmVmZXJyZXIgPSByZWZlcnJlcjsKIH0KIAogYm9v
bCB3ZWJLaXRTcmNQYXNzZWRDT1JTQWNjZXNzQ2hlY2soV2ViS2l0V2ViU3JjKiBzcmMpCiB7Ci0g
ICAgRGF0YU11dGV4PFdlYktpdFdlYlNyY1ByaXZhdGU6OlN0cmVhbWluZ01lbWJlcnM+OjpMb2Nr
ZWRXcmFwcGVyIG1lbWJlcnMoc3JjLT5wcml2LT5kYXRhTXV0ZXgpOworICAgIGF1dG8gbWVtYmVy
cyA9IGhvbGRMb2NrKHNyYy0+cHJpdi0+ZGF0YU11dGV4KTsKICAgICByZXR1cm4gbWVtYmVycy0+
ZGlkUGFzc0FjY2Vzc0NvbnRyb2xDaGVjazsKIH0KIApAQCAtOTg3LDcgKzk4Nyw3IEBAIHZvaWQg
Q2FjaGVkUmVzb3VyY2VTdHJlYW1pbmdDbGllbnQ6OnJlc3BvbnNlUmVjZWl2ZWQoUGxhdGZvcm1N
ZWRpYVJlc291cmNlJiwgY29uCiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKICAgICBXZWJL
aXRXZWJTcmMqIHNyYyA9IFdFQktJVF9XRUJfU1JDKG1fc3JjLmdldCgpKTsKICAgICBXZWJLaXRX
ZWJTcmNQcml2YXRlKiBwcml2ID0gc3JjLT5wcml2OwotICAgIERhdGFNdXRleDxXZWJLaXRXZWJT
cmNQcml2YXRlOjpTdHJlYW1pbmdNZW1iZXJzPjo6TG9ja2VkV3JhcHBlciBtZW1iZXJzKHByaXYt
PmRhdGFNdXRleCk7CisgICAgYXV0byBtZW1iZXJzID0gaG9sZExvY2socHJpdi0+ZGF0YU11dGV4
KTsKICAgICBpZiAobWVtYmVycy0+cmVxdWVzdE51bWJlciAhPSBtX3JlcXVlc3ROdW1iZXIpIHsK
ICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoU2hvdWxkQ29udGludWVQb2xpY3lDaGVjazo6Tm8p
OwogICAgICAgICByZXR1cm47CkBAIC0xMTAwLDcgKzExMDAsNyBAQCB2b2lkIENhY2hlZFJlc291
cmNlU3RyZWFtaW5nQ2xpZW50OjpkYXRhUmVjZWl2ZWQoUGxhdGZvcm1NZWRpYVJlc291cmNlJiwg
Y29uc3QgYwogICAgIFdlYktpdFdlYlNyYyogc3JjID0gV0VCS0lUX1dFQl9TUkMobV9zcmMuZ2V0
KCkpOwogICAgIFdlYktpdFdlYlNyY1ByaXZhdGUqIHByaXYgPSBzcmMtPnByaXY7CiAKLSAgICBE
YXRhTXV0ZXg8V2ViS2l0V2ViU3JjUHJpdmF0ZTo6U3RyZWFtaW5nTWVtYmVycz46OkxvY2tlZFdy
YXBwZXIgbWVtYmVycyhwcml2LT5kYXRhTXV0ZXgpOworICAgIGF1dG8gbWVtYmVycyA9IGhvbGRM
b2NrKHByaXYtPmRhdGFNdXRleCk7CiAgICAgaWYgKG1lbWJlcnMtPnJlcXVlc3ROdW1iZXIgIT0g
bV9yZXF1ZXN0TnVtYmVyKQogICAgICAgICByZXR1cm47CiAKQEAgLTExMzYsNyArMTEzNiw3IEBA
IHZvaWQgQ2FjaGVkUmVzb3VyY2VTdHJlYW1pbmdDbGllbnQ6OmFjY2Vzc0NvbnRyb2xDaGVja0Zh
aWxlZChQbGF0Zm9ybU1lZGlhUmVzb3VyCiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsK
ICAgICBXZWJLaXRXZWJTcmMqIHNyYyA9IFdFQktJVF9XRUJfU1JDKG1fc3JjLmdldCgpKTsKLSAg
ICBEYXRhTXV0ZXg8V2ViS2l0V2ViU3JjUHJpdmF0ZTo6U3RyZWFtaW5nTWVtYmVycz46OkxvY2tl
ZFdyYXBwZXIgbWVtYmVycyhzcmMtPnByaXYtPmRhdGFNdXRleCk7CisgICAgYXV0byBtZW1iZXJz
ID0gaG9sZExvY2soc3JjLT5wcml2LT5kYXRhTXV0ZXgpOwogICAgIGlmIChtZW1iZXJzLT5yZXF1
ZXN0TnVtYmVyICE9IG1fcmVxdWVzdE51bWJlcikKICAgICAgICAgcmV0dXJuOwogCkBAIC0xMTQ5
LDcgKzExNDksNyBAQCB2b2lkIENhY2hlZFJlc291cmNlU3RyZWFtaW5nQ2xpZW50Ojpsb2FkRmFp
bGVkKFBsYXRmb3JtTWVkaWFSZXNvdXJjZSYsIGNvbnN0IFJlcwogewogICAgIEFTU0VSVChpc01h
aW5UaHJlYWQoKSk7CiAgICAgV2ViS2l0V2ViU3JjKiBzcmMgPSBXRUJLSVRfV0VCX1NSQyhtX3Ny
Yy5nZXQoKSk7Ci0gICAgRGF0YU11dGV4PFdlYktpdFdlYlNyY1ByaXZhdGU6OlN0cmVhbWluZ01l
bWJlcnM+OjpMb2NrZWRXcmFwcGVyIG1lbWJlcnMoc3JjLT5wcml2LT5kYXRhTXV0ZXgpOworICAg
IGF1dG8gbWVtYmVycyA9IGhvbGRMb2NrKHNyYy0+cHJpdi0+ZGF0YU11dGV4KTsKICAgICBpZiAo
bWVtYmVycy0+cmVxdWVzdE51bWJlciAhPSBtX3JlcXVlc3ROdW1iZXIpCiAgICAgICAgIHJldHVy
bjsKIApAQCAtMTE2Niw3ICsxMTY2LDcgQEAgdm9pZCBDYWNoZWRSZXNvdXJjZVN0cmVhbWluZ0Ns
aWVudDo6bG9hZEZpbmlzaGVkKFBsYXRmb3JtTWVkaWFSZXNvdXJjZSYsIGNvbnN0IE4KIHsKICAg
ICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwogICAgIFdlYktpdFdlYlNyYyogc3JjID0gV0VCS0lU
X1dFQl9TUkMobV9zcmMuZ2V0KCkpOwotICAgIERhdGFNdXRleDxXZWJLaXRXZWJTcmNQcml2YXRl
OjpTdHJlYW1pbmdNZW1iZXJzPjo6TG9ja2VkV3JhcHBlciBtZW1iZXJzKHNyYy0+cHJpdi0+ZGF0
YU11dGV4KTsKKyAgICBhdXRvIG1lbWJlcnMgPSBob2xkTG9jayhzcmMtPnByaXYtPmRhdGFNdXRl
eCk7CiAgICAgaWYgKG1lbWJlcnMtPnJlcXVlc3ROdW1iZXIgIT0gbV9yZXF1ZXN0TnVtYmVyKQog
ICAgICAgICByZXR1cm47CiAKQEAgLTExNzYsNyArMTE3Niw3IEBAIHZvaWQgQ2FjaGVkUmVzb3Vy
Y2VTdHJlYW1pbmdDbGllbnQ6OmxvYWRGaW5pc2hlZChQbGF0Zm9ybU1lZGlhUmVzb3VyY2UmLCBj
b25zdCBOCiAKIGJvb2wgd2ViS2l0U3JjV291bGRUYWludE9yaWdpbihXZWJLaXRXZWJTcmMqIHNy
YywgY29uc3QgU2VjdXJpdHlPcmlnaW4mIG9yaWdpbikKIHsKLSAgICBEYXRhTXV0ZXg8V2ViS2l0
V2ViU3JjUHJpdmF0ZTo6U3RyZWFtaW5nTWVtYmVycz46OkxvY2tlZFdyYXBwZXIgbWVtYmVycyhz
cmMtPnByaXYtPmRhdGFNdXRleCk7CisgICAgYXV0byBtZW1iZXJzID0gaG9sZExvY2soc3JjLT5w
cml2LT5kYXRhTXV0ZXgpOwogCiAgICAgYXV0byogY2FjaGVkUmVzb3VyY2VTdHJlYW1pbmdDbGll
bnQgPSByZWludGVycHJldF9jYXN0PENhY2hlZFJlc291cmNlU3RyZWFtaW5nQ2xpZW50Kj4obWVt
YmVycy0+cmVzb3VyY2UtPmNsaWVudCgpKTsKICAgICBmb3IgKGF1dG8mIHJlc3BvbnNlT3JpZ2lu
IDogY2FjaGVkUmVzb3VyY2VTdHJlYW1pbmdDbGllbnQtPnNlY3VyaXR5T3JpZ2lucygpKSB7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNl
L01lZGlhU291cmNlVHJhY2tHU3RyZWFtZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9NZWRpYVNvdXJjZVRyYWNrR1N0cmVhbWVyLmNwcAppbmRl
eCBiNGM1ZTY3MjY2YmVmMjZhMTdiOWNjNWVjOWFiMmJhMGUzMzg4MGYzLi44NjJiMTY5NTE5NDdl
ZDU1YmRmYWQzMjM4ODcxOTdiYzZlMGZkMzc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNlL01lZGlhU291cmNlVHJhY2tHU3RyZWFtZXIu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2Uv
TWVkaWFTb3VyY2VUcmFja0dTdHJlYW1lci5jcHAKQEAgLTYxLDI4ICs2MSwyOCBAQCBSZWY8TWVk
aWFTb3VyY2VUcmFja0dTdHJlYW1lcj4gTWVkaWFTb3VyY2VUcmFja0dTdHJlYW1lcjo6Y3JlYXRl
KFRyYWNrUHJpdmF0ZUJhcwogYm9vbCBNZWRpYVNvdXJjZVRyYWNrR1N0cmVhbWVyOjppc1JlYWR5
Rm9yTW9yZVNhbXBsZXMoKQogewogICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7Ci0gICAgV1RG
OjpEYXRhTXV0ZXg8VHJhY2tRdWV1ZT46OkxvY2tlZFdyYXBwZXIgcXVldWUobV9xdWV1ZURhdGFN
dXRleCk7CisgICAgYXV0byBxdWV1ZSA9IGhvbGRMb2NrKG1fcXVldWVEYXRhTXV0ZXgpOwogICAg
IHJldHVybiAhcXVldWUtPmlzRnVsbCgpOwogfQogCiB2b2lkIE1lZGlhU291cmNlVHJhY2tHU3Ry
ZWFtZXI6Om5vdGlmeVdoZW5SZWFkeUZvck1vcmVTYW1wbGVzKFRyYWNrUXVldWU6Okxvd0xldmVs
SGFuZGxlciYmIGhhbmRsZXIpCiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKLSAgICBX
VEY6OkRhdGFNdXRleDxUcmFja1F1ZXVlPjo6TG9ja2VkV3JhcHBlciBxdWV1ZShtX3F1ZXVlRGF0
YU11dGV4KTsKKyAgICBhdXRvIHF1ZXVlID0gaG9sZExvY2sobV9xdWV1ZURhdGFNdXRleCk7CiAg
ICAgcXVldWUtPm5vdGlmeVdoZW5Mb3dMZXZlbChXVEZNb3ZlKGhhbmRsZXIpKTsKIH0KIAogdm9p
ZCBNZWRpYVNvdXJjZVRyYWNrR1N0cmVhbWVyOjplbnF1ZXVlT2JqZWN0KEdSZWZQdHI8R3N0TWlu
aU9iamVjdD4mJiBvYmplY3QpCiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKLSAgICBX
VEY6OkRhdGFNdXRleDxUcmFja1F1ZXVlPjo6TG9ja2VkV3JhcHBlciBxdWV1ZShtX3F1ZXVlRGF0
YU11dGV4KTsKKyAgICBhdXRvIHF1ZXVlID0gaG9sZExvY2sobV9xdWV1ZURhdGFNdXRleCk7CiAg
ICAgcXVldWUtPmVucXVldWVPYmplY3QoV1RGTW92ZShvYmplY3QpKTsKIH0KIAogdm9pZCBNZWRp
YVNvdXJjZVRyYWNrR1N0cmVhbWVyOjpjbGVhclF1ZXVlKCkKIHsKICAgICBBU1NFUlQoaXNNYWlu
VGhyZWFkKCkpOwotICAgIFdURjo6RGF0YU11dGV4PFRyYWNrUXVldWU+OjpMb2NrZWRXcmFwcGVy
IHF1ZXVlKG1fcXVldWVEYXRhTXV0ZXgpOworICAgIGF1dG8gcXVldWUgPSBob2xkTG9jayhtX3F1
ZXVlRGF0YU11dGV4KTsKICAgICBxdWV1ZS0+Y2xlYXIoKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9XZWJLaXRNZWRpYVNv
dXJjZUdTdHJlYW1lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3Ry
ZWFtZXIvbXNlL1dlYktpdE1lZGlhU291cmNlR1N0cmVhbWVyLmNwcAppbmRleCA2ZDk5ZjJlMWUz
NjkwMDdhYzQzOTMwZDMwYmMwNjY0Y2UzMTdiN2EwLi42ZWYyMGUzZmIzNTliZWZiNmNkODE2ZTQ3
MzljMWUzNTIzZTIzMmNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9nc3RyZWFtZXIvbXNlL1dlYktpdE1lZGlhU291cmNlR1N0cmVhbWVyLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNlL1dlYktpdE1lZGlh
U291cmNlR1N0cmVhbWVyLmNwcApAQCAtMzQ0LDcgKzM0NCw3IEBAIHN0YXRpYyBnYm9vbGVhbiB3
ZWJLaXRNZWRpYVNyY0FjdGl2YXRlTW9kZShHc3RQYWQqIHBhZCwgR3N0T2JqZWN0KiBzb3VyY2Us
IEdzdFBhCiAgICAgICAgIC8vIFVuYmxvY2sgdGhlIHN0cmVhbWluZyB0aHJlYWQuCiAgICAgICAg
IFJlZlB0cjxTdHJlYW0+JiBzdHJlYW0gPSBXRUJLSVRfTUVESUFfU1JDX1BBRChwYWQpLT5wcml2
LT5zdHJlYW07CiAgICAgICAgIHsKLSAgICAgICAgICAgIERhdGFNdXRleDxTdHJlYW06OlN0cmVh
bWluZ01lbWJlcnM+OjpMb2NrZWRXcmFwcGVyIHN0cmVhbWluZ01lbWJlcnMoc3RyZWFtLT5zdHJl
YW1pbmdNZW1iZXJzRGF0YU11dGV4KTsKKyAgICAgICAgICAgIGF1dG8gc3RyZWFtaW5nTWVtYmVy
cyA9IGhvbGRMb2NrKHN0cmVhbS0+c3RyZWFtaW5nTWVtYmVyc0RhdGFNdXRleCk7CiAgICAgICAg
ICAgICBzdHJlYW1pbmdNZW1iZXJzLT5pc0ZsdXNoaW5nID0gdHJ1ZTsKICAgICAgICAgICAgIHN0
cmVhbWluZ01lbWJlcnMtPnBhZExpbmtlZE9yRmx1c2hlZENvbmRpdGlvbi5ub3RpZnlPbmUoKTsK
ICAgICAgICAgICAgIHN0cmVhbWluZ01lbWJlcnMtPnF1ZXVlQ2hhbmdlZE9yRmx1c2hlZENvbmRp
dGlvbi5ub3RpZnlPbmUoKTsKQEAgLTM1NCw3ICszNTQsNyBAQCBzdGF0aWMgZ2Jvb2xlYW4gd2Vi
S2l0TWVkaWFTcmNBY3RpdmF0ZU1vZGUoR3N0UGFkKiBwYWQsIEdzdE9iamVjdCogc291cmNlLCBH
c3RQYQogICAgICAgICAvLyBPdGhlcndpc2UgYSBkZWFkbG9jayB3b3VsZCBvY2N1ciBhcyB0aGUg
bmV4dCBmdW5jdGlvbiB0cmllcyB0byBqb2luIHRoZSB0aHJlYWQuCiAgICAgICAgIGdzdF9wYWRf
c3RvcF90YXNrKHBhZCk7CiAgICAgICAgIHsKLSAgICAgICAgICAgIERhdGFNdXRleDxTdHJlYW06
OlN0cmVhbWluZ01lbWJlcnM+OjpMb2NrZWRXcmFwcGVyIHN0cmVhbWluZ01lbWJlcnMoc3RyZWFt
LT5zdHJlYW1pbmdNZW1iZXJzRGF0YU11dGV4KTsKKyAgICAgICAgICAgIGF1dG8gc3RyZWFtaW5n
TWVtYmVycyA9IGhvbGRMb2NrKHN0cmVhbS0+c3RyZWFtaW5nTWVtYmVyc0RhdGFNdXRleCk7CiAg
ICAgICAgICAgICBzdHJlYW1pbmdNZW1iZXJzLT5pc0ZsdXNoaW5nID0gZmFsc2U7CiAgICAgICAg
IH0KICAgICB9CkBAIC0zNjQsNyArMzY0LDcgQEAgc3RhdGljIGdib29sZWFuIHdlYktpdE1lZGlh
U3JjQWN0aXZhdGVNb2RlKEdzdFBhZCogcGFkLCBHc3RPYmplY3QqIHNvdXJjZSwgR3N0UGEKIHN0
YXRpYyB2b2lkIHdlYktpdE1lZGlhU3JjUGFkTGlua2VkKEdzdFBhZCogcGFkLCBHc3RQYWQqLCB2
b2lkKikKIHsKICAgICBSZWZQdHI8U3RyZWFtPiYgc3RyZWFtID0gV0VCS0lUX01FRElBX1NSQ19Q
QUQocGFkKS0+cHJpdi0+c3RyZWFtOwotICAgIERhdGFNdXRleDxTdHJlYW06OlN0cmVhbWluZ01l
bWJlcnM+OjpMb2NrZWRXcmFwcGVyIHN0cmVhbWluZ01lbWJlcnMoc3RyZWFtLT5zdHJlYW1pbmdN
ZW1iZXJzRGF0YU11dGV4KTsKKyAgICBhdXRvIHN0cmVhbWluZ01lbWJlcnMgPSBob2xkTG9jayhz
dHJlYW0tPnN0cmVhbWluZ01lbWJlcnNEYXRhTXV0ZXgpOwogICAgIHN0cmVhbWluZ01lbWJlcnMt
PnBhZExpbmtlZE9yRmx1c2hlZENvbmRpdGlvbi5ub3RpZnlPbmUoKTsKIH0KIApAQCAtMzkxLDcg
KzM5MSw3IEBAIHN0YXRpYyB2b2lkIHdlYktpdE1lZGlhU3JjTG9vcCh2b2lkKiB1c2VyRGF0YSkK
ICAgICBHc3RQYWQqIHBhZCA9IEdTVF9QQUQodXNlckRhdGEpOwogICAgIFJlZlB0cjxTdHJlYW0+
JiBzdHJlYW0gPSBXRUJLSVRfTUVESUFfU1JDX1BBRChwYWQpLT5wcml2LT5zdHJlYW07CiAKLSAg
ICBEYXRhTXV0ZXg8U3RyZWFtOjpTdHJlYW1pbmdNZW1iZXJzPjo6TG9ja2VkV3JhcHBlciBzdHJl
YW1pbmdNZW1iZXJzKHN0cmVhbS0+c3RyZWFtaW5nTWVtYmVyc0RhdGFNdXRleCk7CisgICAgYXV0
byBzdHJlYW1pbmdNZW1iZXJzID0gaG9sZExvY2soc3RyZWFtLT5zdHJlYW1pbmdNZW1iZXJzRGF0
YU11dGV4KTsKICAgICBpZiAoc3RyZWFtaW5nTWVtYmVycy0+aXNGbHVzaGluZykgewogICAgICAg
ICBnc3RfcGFkX3BhdXNlX3Rhc2socGFkKTsKICAgICAgICAgcmV0dXJuOwpAQCAtNDQ2LDcgKzQ0
Niw3IEBAIHN0YXRpYyB2b2lkIHdlYktpdE1lZGlhU3JjTG9vcCh2b2lkKiB1c2VyRGF0YSkKIAog
ICAgIEdSZWZQdHI8R3N0TWluaU9iamVjdD4gb2JqZWN0OwogICAgIHsKLSAgICAgICAgRGF0YU11
dGV4PFRyYWNrUXVldWU+OjpMb2NrZWRXcmFwcGVyIHF1ZXVlKHN0cmVhbS0+dHJhY2stPnF1ZXVl
RGF0YU11dGV4KCkpOworICAgICAgICBhdXRvIHF1ZXVlID0gaG9sZExvY2soc3RyZWFtLT50cmFj
ay0+cXVldWVEYXRhTXV0ZXgoKSk7CiAgICAgICAgIGlmICghcXVldWUtPmlzRW1wdHkoKSkgewog
ICAgICAgICAgICAgb2JqZWN0ID0gcXVldWUtPnBvcCgpOwogICAgICAgICAgICAgc3RyZWFtaW5n
TWVtYmVycy0+aGFzUG9wcGVkRmlyc3RPYmplY3QgPSB0cnVlOwpAQCAtNDU0LDcgKzQ1NCw3IEBA
IHN0YXRpYyB2b2lkIHdlYktpdE1lZGlhU3JjTG9vcCh2b2lkKiB1c2VyRGF0YSkKICAgICAgICAg
fSBlbHNlIHsKICAgICAgICAgICAgIHF1ZXVlLT5ub3RpZnlXaGVuTm90RW1wdHkoWyZvYmplY3Qs
IHN0cmVhbV0oR1JlZlB0cjxHc3RNaW5pT2JqZWN0PiYmIHJlY2VpdmVkT2JqZWN0KSB7CiAgICAg
ICAgICAgICAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKLSAgICAgICAgICAgICAgICBEYXRh
TXV0ZXg8U3RyZWFtOjpTdHJlYW1pbmdNZW1iZXJzPjo6TG9ja2VkV3JhcHBlciBzdHJlYW1pbmdN
ZW1iZXJzKHN0cmVhbS0+c3RyZWFtaW5nTWVtYmVyc0RhdGFNdXRleCk7CisgICAgICAgICAgICAg
ICAgYXV0byBzdHJlYW1pbmdNZW1iZXJzID0gaG9sZExvY2soc3RyZWFtLT5zdHJlYW1pbmdNZW1i
ZXJzRGF0YU11dGV4KTsKICAgICAgICAgICAgICAgICBBU1NFUlQoIXN0cmVhbWluZ01lbWJlcnMt
PmlzRmx1c2hpbmcpOwogCiAgICAgICAgICAgICAgICAgb2JqZWN0ID0gV1RGTW92ZShyZWNlaXZl
ZE9iamVjdCk7CkBAIC00NzEsNyArNDcxLDcgQEAgc3RhdGljIHZvaWQgd2ViS2l0TWVkaWFTcmNM
b29wKHZvaWQqIHVzZXJEYXRhKQogICAgIH0pOwogICAgIHsKICAgICAgICAgLy8gRW5zdXJlIHRo
YXQgbm90aWZ5V2hlbk5vdEVtcHR5KCkncyBjYWxsYmFjayAoaWYgYW55KSBpcyBjbGVhcmVkIGFm
dGVyIHRoaXMgcG9pbnQuCi0gICAgICAgIERhdGFNdXRleDxUcmFja1F1ZXVlPjo6TG9ja2VkV3Jh
cHBlciBxdWV1ZShzdHJlYW0tPnRyYWNrLT5xdWV1ZURhdGFNdXRleCgpKTsKKyAgICAgICAgYXV0
byBxdWV1ZSA9IGhvbGRMb2NrKHN0cmVhbS0+dHJhY2stPnF1ZXVlRGF0YU11dGV4KCkpOwogICAg
ICAgICBxdWV1ZS0+cmVzZXROb3RFbXB0eUhhbmRsZXIoKTsKICAgICB9CiAgICAgaWYgKHN0cmVh
bWluZ01lbWJlcnMtPmlzRmx1c2hpbmcpIHsKQEAgLTU0NiwxMSArNTQ2LDExIEBAIHN0YXRpYyB2
b2lkIHdlYktpdE1lZGlhU3JjU3RyZWFtRmx1c2goU3RyZWFtKiBzdHJlYW0sIGJvb2wgaXNTZWVr
aW5nRmx1c2gpCiAgICAgYm9vbCBza2lwRmx1c2ggPSBmYWxzZTsKIAogICAgIHsKLSAgICAgICAg
RGF0YU11dGV4PFN0cmVhbTo6U3RyZWFtaW5nTWVtYmVycz46OkxvY2tlZFdyYXBwZXIgc3RyZWFt
aW5nTWVtYmVycyhzdHJlYW0tPnN0cmVhbWluZ01lbWJlcnNEYXRhTXV0ZXgpOworICAgICAgICBh
dXRvIHN0cmVhbWluZ01lbWJlcnMgPSBob2xkTG9jayhzdHJlYW0tPnN0cmVhbWluZ01lbWJlcnNE
YXRhTXV0ZXgpOwogCiAgICAgICAgIGlmICghc3RyZWFtaW5nTWVtYmVycy0+aGFzUG9wcGVkRmly
c3RPYmplY3QpIHsKICAgICAgICAgICAgIEdTVF9ERUJVR19PQkpFQ1Qoc3RyZWFtLT5zb3VyY2Us
ICJGbHVzaCByZXF1ZXN0IGZvciBzdHJlYW0gJyVzJyBvY2N1cnJlZCBiZWZvcmUgaGFzUG9wcGVk
Rmlyc3RPYmplY3QsIGp1c3QgY2xlYXJpbmcgdGhlIHF1ZXVlIGFuZCByZWFkanVzdGluZyB0aGUg
c2VnbWVudC4iLCBzdHJlYW0tPnRyYWNrLT50cmFja0lkKCkuc3RyaW5nKCkudXRmOCgpLmRhdGEo
KSk7Ci0gICAgICAgICAgICBEYXRhTXV0ZXg8VHJhY2tRdWV1ZT46OkxvY2tlZFdyYXBwZXIgcXVl
dWUoc3RyZWFtLT50cmFjay0+cXVldWVEYXRhTXV0ZXgoKSk7CisgICAgICAgICAgICBhdXRvIHF1
ZXVlID0gaG9sZExvY2soc3RyZWFtLT50cmFjay0+cXVldWVEYXRhTXV0ZXgoKSk7CiAgICAgICAg
ICAgICAvLyBXZSB1c2UgY2xlYXIoKSBpbnN0ZWFkIG9mIGZsdXNoKCkgYmVjYXVzZSB0aGUgV2Vi
S2l0TWVkaWFTcmMgc3RyZWFtaW5nIHRocmVhZCBjb3VsZCBiZSB3YWl0aW5nCiAgICAgICAgICAg
ICAvLyBmb3IgdGhlIHF1ZXVlLiBmbHVzaCgpIHdvdWxkIGNhbmNlbCB0aGUgbm90RW1wdHlDYWxs
YmFjayB0aGVyZWZvcmUgbGVhdmluZyB0aGUgc3RyZWFtaW5nIHRocmVhZAogICAgICAgICAgICAg
Ly8gc3R1Y2sgd2FpdGluZyBmb3JldmVyLgpAQCAtNTY0LDggKzU2NCw4IEBAIHN0YXRpYyB2b2lk
IHdlYktpdE1lZGlhU3JjU3RyZWFtRmx1c2goU3RyZWFtKiBzdHJlYW0sIGJvb2wgaXNTZWVraW5n
Rmx1c2gpCiAgICAgICAgIC8vIHdoaWNoIHdpbGwga2VlcGluZyB0aGUgc3RyZWFtaW5nIHRocmVh
ZCBpZGxlLgogICAgICAgICBHU1RfREVCVUdfT0JKRUNUKHN0cmVhbS0+cGFkLmdldCgpLCAiVGFr
aW5nIHRoZSBTdHJlYW1pbmdNZW1iZXJzIG11dGV4IGFuZCBzZXR0aW5nIGlzRmx1c2hpbmcgPSB0
cnVlLiIpOwogICAgICAgICB7Ci0gICAgICAgICAgICBEYXRhTXV0ZXg8U3RyZWFtOjpTdHJlYW1p
bmdNZW1iZXJzPjo6TG9ja2VkV3JhcHBlciBzdHJlYW1pbmdNZW1iZXJzKHN0cmVhbS0+c3RyZWFt
aW5nTWVtYmVyc0RhdGFNdXRleCk7Ci0gICAgICAgICAgICBEYXRhTXV0ZXg8VHJhY2tRdWV1ZT46
OkxvY2tlZFdyYXBwZXIgcXVldWUoc3RyZWFtLT50cmFjay0+cXVldWVEYXRhTXV0ZXgoKSk7Cisg
ICAgICAgICAgICBhdXRvIHN0cmVhbWluZ01lbWJlcnMgPSBob2xkTG9jayhzdHJlYW0tPnN0cmVh
bWluZ01lbWJlcnNEYXRhTXV0ZXgpOworICAgICAgICAgICAgYXV0byBxdWV1ZSA9IGhvbGRMb2Nr
KHN0cmVhbS0+dHJhY2stPnF1ZXVlRGF0YU11dGV4KCkpOwogCiAgICAgICAgICAgICBzdHJlYW1p
bmdNZW1iZXJzLT5pc0ZsdXNoaW5nID0gdHJ1ZTsKICAgICAgICAgICAgIHF1ZXVlLT5mbHVzaCgp
OyAvLyBDbGVhciB0aGUgcXVldWUgYW5kIGNhbmNlbCBhbnkgd2FpdGluZyBjYWxsYmFjay4KQEAg
LTU4Nyw3ICs1ODcsNyBAQCBzdGF0aWMgdm9pZCB3ZWJLaXRNZWRpYVNyY1N0cmVhbUZsdXNoKFN0
cmVhbSogc3RyZWFtLCBib29sIGlzU2Vla2luZ0ZsdXNoKQogICAgICAgICAvLyBJbiB0aGUgY2Fz
ZSBvZiBzZWVraW5nIGZsdXNoIHdlIGFyZSByZXNldHRpbmcgdGhlIHRpbWVsaW5lIChzZWUgdGhl
IGZsdXNoIHN0b3AgbGF0ZXIpLgogICAgICAgICAvLyBUaGUgcmVzdWx0aW5nIHNlZ21lbnQgaXMg
YnJhbmQgbmV3LCBidXQgd2l0aCBhIGRpZmZlcmVudCBzdGFydCB0aW1lLgogICAgICAgICBXZWJL
aXRNZWRpYVNyY1ByaXZhdGUqIHByaXYgPSBzdHJlYW0tPnNvdXJjZS0+cHJpdjsKLSAgICAgICAg
RGF0YU11dGV4PFN0cmVhbTo6U3RyZWFtaW5nTWVtYmVycz46OkxvY2tlZFdyYXBwZXIgc3RyZWFt
aW5nTWVtYmVycyhzdHJlYW0tPnN0cmVhbWluZ01lbWJlcnNEYXRhTXV0ZXgpOworICAgICAgICBh
dXRvIHN0cmVhbWluZ01lbWJlcnMgPSBob2xkTG9jayhzdHJlYW0tPnN0cmVhbWluZ01lbWJlcnNE
YXRhTXV0ZXgpOwogICAgICAgICBzdHJlYW1pbmdNZW1iZXJzLT5zZWdtZW50LmJhc2UgPSAwOwog
ICAgICAgICBzdHJlYW1pbmdNZW1iZXJzLT5zZWdtZW50LnJhdGUgPSBwcml2LT5yYXRlOwogICAg
ICAgICBzdHJlYW1pbmdNZW1iZXJzLT5zZWdtZW50LnN0YXJ0ID0gc3RyZWFtaW5nTWVtYmVycy0+
c2VnbWVudC50aW1lID0gcHJpdi0+c3RhcnRUaW1lOwpAQCAtNjAxLDcgKzYwMSw3IEBAIHN0YXRp
YyB2b2lkIHdlYktpdE1lZGlhU3JjU3RyZWFtRmx1c2goU3RyZWFtKiBzdHJlYW0sIGJvb2wgaXNT
ZWVraW5nRmx1c2gpCiAgICAgICAgIC8vIEdTVF9DTE9DS19USU1FX05PTkUgaXMgcmV0dXJuZWQg
d2hlbiB0aGUgcGlwZWxpbmUgaXMgbm90IHlldCBwcmUtcm9sbGVkIChlLmcuIGp1c3QgYWZ0ZXIg
YSBzZWVrKS4gSW4gdGhpcyBjYXNlCiAgICAgICAgIC8vIHdlIGRvbid0IG5lZWQgdG8gYWRqdXN0
IHRoZSBzZWdtZW50IHRob3VnaCwgYXMgcnVubmluZyB0aW1lIGhhcyBub3QgYWR2YW5jZWQuCiAg
ICAgICAgIGlmIChHU1RfQ0xPQ0tfVElNRV9JU19WQUxJRChwaXBlbGluZVN0cmVhbVRpbWUpKSB7
Ci0gICAgICAgICAgICBEYXRhTXV0ZXg8U3RyZWFtOjpTdHJlYW1pbmdNZW1iZXJzPjo6TG9ja2Vk
V3JhcHBlciBzdHJlYW1pbmdNZW1iZXJzKHN0cmVhbS0+c3RyZWFtaW5nTWVtYmVyc0RhdGFNdXRl
eCk7CisgICAgICAgICAgICBhdXRvIHN0cmVhbWluZ01lbWJlcnMgPSBob2xkTG9jayhzdHJlYW0t
PnN0cmVhbWluZ01lbWJlcnNEYXRhTXV0ZXgpOwogICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBp
bmNyZWFzZSB0aGUgYmFzZSBieSB0aGUgcnVubmluZyB0aW1lIGFjY3VtdWxhdGVkIGR1cmluZyB0
aGUgcHJldmlvdXMgc2VnbWVudC4KIAogICAgICAgICAgICAgR3N0Q2xvY2tUaW1lIHBpcGVsaW5l
UnVubmluZ1RpbWUgPSBnc3Rfc2VnbWVudF90b19ydW5uaW5nX3RpbWUoJnN0cmVhbWluZ01lbWJl
cnMtPnNlZ21lbnQsIEdTVF9GT1JNQVRfVElNRSwgcGlwZWxpbmVTdHJlYW1UaW1lKTsKQEAgLTYy
MCw3ICs2MjAsNyBAQCBzdGF0aWMgdm9pZCB3ZWJLaXRNZWRpYVNyY1N0cmVhbUZsdXNoKFN0cmVh
bSogc3RyZWFtLCBib29sIGlzU2Vla2luZ0ZsdXNoKQogICAgICAgICBhdXRvIHN0cmVhbUxvY2sg
PSBob2xkR3N0UGFkU3RyZWFtTG9jayhzdHJlYW0tPnBhZC5nZXQoKSk7CiAgICAgICAgIHsKICAg
ICAgICAgICAgIEdTVF9ERUJVR19PQkpFQ1Qoc3RyZWFtLT5wYWQuZ2V0KCksICJUYWtpbmcgdGhl
IFN0cmVhbWluZ01lbWJlcnMgbXV0ZXggYWdhaW4uIik7Ci0gICAgICAgICAgICBEYXRhTXV0ZXg8
U3RyZWFtOjpTdHJlYW1pbmdNZW1iZXJzPjo6TG9ja2VkV3JhcHBlciBzdHJlYW1pbmdNZW1iZXJz
KHN0cmVhbS0+c3RyZWFtaW5nTWVtYmVyc0RhdGFNdXRleCk7CisgICAgICAgICAgICBhdXRvIHN0
cmVhbWluZ01lbWJlcnMgPSBob2xkTG9jayhzdHJlYW0tPnN0cmVhbWluZ01lbWJlcnNEYXRhTXV0
ZXgpOwogICAgICAgICAgICAgR1NUX0RFQlVHX09CSkVDVChzdHJlYW0tPnBhZC5nZXQoKSwgIlN0
cmVhbWluZ01lbWJlcnMgbXV0ZXggdGFrZW4sIHVzaW5nIGl0IHRvIHNldCBpc0ZsdXNoaW5nID0g
ZmFsc2UuIik7CiAgICAgICAgICAgICBzdHJlYW1pbmdNZW1iZXJzLT5pc0ZsdXNoaW5nID0gZmFs
c2U7CiAgICAgICAgICAgICBzdHJlYW1pbmdNZW1iZXJzLT5kb2VzTmVlZFNlZ21lbnRFdmVudCA9
IHRydWU7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>