<?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>207998</bug_id>
          
          <creation_ts>2020-02-20 01:54:25 -0800</creation_ts>
          <short_desc>WKWebView with non-zero origin has the wrong top content inset with NSWindowStyleMaskFullSizeContentView</short_desc>
          <delta_ts>2020-02-20 11:14:40 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</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="Tim Horton">thorton</reporter>
          <assigned_to name="Tim Horton">thorton</assigned_to>
          <cc>bdakin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>megan_gardner</cc>
    
    <cc>sam</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>timothy</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1621139</commentid>
    <comment_count>0</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2020-02-20 01:54:25 -0800</bug_when>
    <thetext>WKWebView with non-zero origin has the wrong top content inset with NSWindowStyleMaskFullSizeContentView</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1621140</commentid>
    <comment_count>1</comment_count>
      <attachid>391270</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2020-02-20 01:55:59 -0800</bug_when>
    <thetext>Created attachment 391270
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1621141</commentid>
    <comment_count>2</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2020-02-20 01:56:16 -0800</bug_when>
    <thetext>&lt;rdar://problem/40942425&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1621257</commentid>
    <comment_count>3</comment_count>
      <attachid>391270</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-02-20 09:34:32 -0800</bug_when>
    <thetext>Comment on attachment 391270
Patch

Clearing flags on attachment: 391270

Committed r257066: &lt;https://trac.webkit.org/changeset/257066&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1621258</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-02-20 09:34:33 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1621312</commentid>
    <comment_count>5</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-02-20 11:14:40 -0800</bug_when>
    <thetext>*finally*</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>391270</attachid>
            <date>2020-02-20 01:55:59 -0800</date>
            <delta_ts>2020-02-20 09:34:32 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207998-20200220015558.patch</filename>
            <type>text/plain</type>
            <size>20392</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUzMjgyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDBiMjNkNDYxMWJmY2FiNWJl
OTkyZjQ5MmQ2ZWI4MTcxZDFmYTYzNWUuLjU5Yzk0NWUwY2Q1NjE2NDZkNjJlZTA5ZmNmMzU2MTBh
Y2JiMjkzODggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMjAtMDItMjAgIFRpbSBIb3J0
b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CisKKyAgICAgICAgV0tXZWJWaWV3IHdpdGgg
bm9uLXplcm8gb3JpZ2luIGhhcyB0aGUgd3JvbmcgdG9wIGNvbnRlbnQgaW5zZXQgd2l0aCBOU1dp
bmRvd1N0eWxlTWFza0Z1bGxTaXplQ29udGVudFZpZXcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNzk5OAorICAgICAgICA8cmRhcjovL3Byb2JsZW0v
NDA5NDI0MjU+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgTmV3IEFQSSB0ZXN0czogVG9wQ29udGVudEluc2V0LntBdXRvbWF0aWNBZGp1c3RtZW50LCBB
dXRvbWF0aWNBZGp1c3RtZW50RGlzYWJsZWQsIEF1dG9tYXRpY0FkanVzdG1lbnREb2VzTm90QWZm
ZWN0SW5zZXRWaWV3c30KKworICAgICAgICAqIFVJUHJvY2Vzcy9Db2NvYS9XZWJWaWV3SW1wbC5t
bToKKyAgICAgICAgKFdlYktpdDo6V2ViVmlld0ltcGw6OnVwZGF0ZUNvbnRlbnRJbnNldHNJZkF1
dG9tYXRpYyk6CisgICAgICAgIFByZXZpb3VzbHksIGEgV0tXZWJWaWV3IHdpdGggZnJhbWUub3Jp
Z2luIGFueXdoZXJlIG90aGVyIHRoYW4gezAsIDB9CisgICAgICAgIHdvdWxkIGVuZCB1cCB3aXRo
IHRoZSBzYW1lIHRvcCBjb250ZW50IGluc2V0IGFzIGlmIGl0IG92ZXJsYXBwZWQgdGhlCisgICAg
ICAgIHRpdGxlYmFyLgorCisgICAgICAgIEl0J3Mgbm90IGNsZWFyIHdoYXQgdGhlIG9yaWdpbmFs
IGNvZGUgd2FzIGdvaW5nIGZvcjsgd2UgY2FuIGRldGVybWluZQorICAgICAgICB0aGUgb3Zlcmxh
cHBpbmcgcG9ydGlvbiBvZiB0aGUgY29udGVudExheW91dFJlY3QgYnkgc2ltcGx5IGNvbnZlcnRp
bmcKKyAgICAgICAgaXQgZnJvbSB3aW5kb3cgY29vcmRpbmF0ZXMgdG8gV0tXZWJWaWV3IGNvb3Jk
aW5hdGVzIGFuZCBsb29raW5nIGF0IHRoZQorICAgICAgICBvcmlnaW4gKGVuc3VyaW5nIHdlIGRv
bid0IGxldCBpdCBnbyBuZWdhdGl2ZSkuCisKIDIwMTktMTItMDggIFdlbnNvbiBIc2llaCAgPHdl
bnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAgICAgICAgTW92ZSBXZWJDb3JlOjpQYXRoIGVuY29k
ZXJzIGFuZCBkZWNvZGVycyBpbnRvIFdlYkNvcmUgZnJvbSBXZWJDb3JlQXJndW1lbnRDb2RlcnMK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dlYlZpZXdJbXBsLm1t
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvV2ViVmlld0ltcGwubW0KaW5kZXggNzEz
OGVmYzk0MTVmOGE2MTRmMjNhZmJhMmE0YzZhMTU1M2VjM2Q4OC4uOGNkYTQwMmRiYjY4ZDIwZjgz
NWY4ZTAxNjkzMjhkYTg0YWJlNTRkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvQ29jb2EvV2ViVmlld0ltcGwubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29j
b2EvV2ViVmlld0ltcGwubW0KQEAgLTE4NDUsOCArMTg0NSw4IEBAIHZvaWQgV2ViVmlld0ltcGw6
OnVwZGF0ZUNvbnRlbnRJbnNldHNJZkF1dG9tYXRpYygpCiAKICAgICBOU1dpbmRvdyAqd2luZG93
ID0gW21fdmlldyB3aW5kb3ddOwogICAgIGlmICgod2luZG93LnN0eWxlTWFzayAmIE5TV2luZG93
U3R5bGVNYXNrRnVsbFNpemVDb250ZW50VmlldykgJiYgIXdpbmRvdy50aXRsZWJhckFwcGVhcnNU
cmFuc3BhcmVudCAmJiAhW21fdmlldyBlbmNsb3NpbmdTY3JvbGxWaWV3XSkgewotICAgICAgICBO
U1JlY3QgY29udGVudExheW91dFJlY3QgPSBbbV92aWV3IGNvbnZlcnRSZWN0OndpbmRvdy5jb250
ZW50TGF5b3V0UmVjdCBmcm9tVmlldzpuaWxdOwotICAgICAgICBDR0Zsb2F0IG5ld1RvcENvbnRl
bnRJbnNldCA9IE5TTWF4WShjb250ZW50TGF5b3V0UmVjdCkgLSBOU0hlaWdodChjb250ZW50TGF5
b3V0UmVjdCk7CisgICAgICAgIE5TUmVjdCBjb250ZW50TGF5b3V0UmVjdEluV2ViVmlld0Nvb3Jk
aW5hdGVzID0gW21fdmlldyBjb252ZXJ0UmVjdDp3aW5kb3cuY29udGVudExheW91dFJlY3QgZnJv
bVZpZXc6bmlsXTsKKyAgICAgICAgQ0dGbG9hdCBuZXdUb3BDb250ZW50SW5zZXQgPSBzdGQ6Om1h
eDxDR0Zsb2F0Pihjb250ZW50TGF5b3V0UmVjdEluV2ViVmlld0Nvb3JkaW5hdGVzLm9yaWdpbi55
LCAwKTsKICAgICAgICAgaWYgKG1fcGFnZS0+dG9wQ29udGVudEluc2V0KCkgIT0gbmV3VG9wQ29u
dGVudEluc2V0KQogICAgICAgICAgICAgc2V0VG9wQ29udGVudEluc2V0KG5ld1RvcENvbnRlbnRJ
bnNldCk7CiAgICAgfSBlbHNlCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9D
aGFuZ2VMb2cKaW5kZXggMzhkMDdlNDY0YmNjMGI1NDA2Mzk4MGI2OTMwNDEzNTAzMDE4MDFjNC4u
MDQzODE3NWFhYjMxMjRiODJjZTliZmUxYWNkZDliZDU0ZjIxZDIwYSAxMDA2NDQKLS0tIGEvVG9v
bHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDIw
LTAyLTIwICBUaW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorCisgICAgICAg
IFdLV2ViVmlldyB3aXRoIG5vbi16ZXJvIG9yaWdpbiBoYXMgdGhlIHdyb25nIHRvcCBjb250ZW50
IGluc2V0IHdpdGggTlNXaW5kb3dTdHlsZU1hc2tGdWxsU2l6ZUNvbnRlbnRWaWV3CisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDc5OTgKKyAgICAgICAg
PHJkYXI6Ly9wcm9ibGVtLzQwOTQyNDI1PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRD
b2NvYS9Ub3BDb250ZW50SW5zZXQubW06IFJlbmFtZWQgZnJvbSBUb29scy9UZXN0V2ViS2l0QVBJ
L1Rlc3RzL1dlYktpdENvY29hL0Z1bGxzY3JlZW5Ub3BDb250ZW50SW5zZXQubW0uCisgICAgICAg
ICgtW0Z1bGxzY3JlZW5DaGFuZ2VNZXNzYWdlSGFuZGxlciB1c2VyQ29udGVudENvbnRyb2xsZXI6
ZGlkUmVjZWl2ZVNjcmlwdE1lc3NhZ2U6XSk6CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjpURVNU
KToKKyAgICAgICAgQWRkIHNvbWUgdGVzdHMgZm9yIHRvcCBjb250ZW50IGluc2V0cy4KKwogMjAx
OS0xMi0wOCAgVGltIEhvcnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KIAogICAgICAg
ICBSRUdSRVNTSU9OOiBDcmFzaCB1bmRlciBVSVNjcmlwdENvbnRyb2xsZXJJT1M6OnNpbXVsYXRl
QWNjZXNzaWJpbGl0eVNldHRpbmdzQ2hhbmdlTm90aWZpY2F0aW9uCmRpZmYgLS1naXQgYS9Ub29s
cy9UZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUEkueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBi
L1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCmluZGV4IDgxM2I4MWZjNTljNDE3NWZkYjNiMzlkNzQzMGZjMWI2YzUzOGRlYWYuLjM2ZDQy
Y2YwZmI1ZGYwOWYwMWZjYWI2NmRhZDY4MTM1OTNiNDVhODggMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rl
c3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBi
L1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCkBAIC01NTEsNyArNTUxLDcgQEAKIAkJN0M4M0UwQkExRDBBNjRGQjAwRkVCQ0YzIC8qIENv
ZGluZy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFB
QUQxOUY1MUM3Q0UyMDMwMDgzMUU0NyAvKiBDb2RpbmcubW0gKi87IH07CiAJCTdDODNFMEJCMUQw
QTY1MDAwMEZFQkNGMyAvKiBGaW5kSW5QYWdlLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMkQ4MTA0Q0IxQkVDMTNFNzAwMjBEQTQ2IC8qIEZpbmRJblBh
Z2UubW0gKi87IH07CiAJCTdDODNFMEJDMUQwQTY1MDcwMEZFQkNGMyAvKiBGaXhlZExheW91dFNp
emUubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRDFG
RTBBRjFBRDQ2NUMxMDA2Q0Q5RTYgLyogRml4ZWRMYXlvdXRTaXplLm1tICovOyB9OwotCQk3Qzgz
RTBCRDFEMEE2NTBDMDBGRUJDRjMgLyogRnVsbHNjcmVlblRvcENvbnRlbnRJbnNldC5tbSBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENERTE5NUIzMUNGRTBB
REUwMDUzRDI1NiAvKiBGdWxsc2NyZWVuVG9wQ29udGVudEluc2V0Lm1tICovOyB9OworCQk3Qzgz
RTBCRDFEMEE2NTBDMDBGRUJDRjMgLyogVG9wQ29udGVudEluc2V0Lm1tIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RFMTk1QjMxQ0ZFMEFERTAwNTNEMjU2
IC8qIFRvcENvbnRlbnRJbnNldC5tbSAqLzsgfTsKIAkJN0M4M0UwQkUxRDBBNjUxMzAwRkVCQ0Yz
IC8qIEluZGV4ZWREQk11bHRpUHJvY2Vzcy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDUxQkNFRTQ5MUM4NEY0QUYwMDQyQzgyRSAvKiBJbmRleGVkREJN
dWx0aVByb2Nlc3MubW0gKi87IH07CiAJCTdDODNFMEJGMUQwQTY1MjIwMEZFQkNGMyAvKiBJbmRl
eGVkREJQZXJzaXN0ZW5jZS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDUxQjFFRThEMUM4MEY1ODgwMDY0RkI5OCAvKiBJbmRleGVkREJQZXJzaXN0ZW5j
ZS5tbSAqLzsgfTsKIAkJN0M4M0UwQzAxRDBBNjUyNzAwRkVCQ0YzIC8qIExvYWRJbnZhbGlkVVJM
UmVxdWVzdC5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDU3OTAxRkFDMUNBRjEyQzIwMEVENjRGOSAvKiBMb2FkSW52YWxpZFVSTFJlcXVlc3QubW0gKi87
IH07CkBAIC0yNDQ5LDcgKzI0NDksNyBAQAogCQlDRENGRkVDMDIyRTI2OEQ1MDBERjQyMjMgLyog
Tm9QYXVzZVdoZW5Td2l0Y2hpbmdUYWJzLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2Jq
Y3BwOyBwYXRoID0gTm9QYXVzZVdoZW5Td2l0Y2hpbmdUYWJzLm1tOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQlDREQ2OEYwQzIyQzE4MzE3MDAwQ0YwQUUgLyogV0tXZWJWaWV3Q2xvc2VB
bGxNZWRpYVByZXNlbnRhdGlvbnMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7
IHBhdGggPSBXS1dlYlZpZXdDbG9zZUFsbE1lZGlhUHJlc2VudGF0aW9ucy5tbTsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0RFMTk1QjIxQ0ZFMEFERTAwNTNEMjU2IC8qIEZ1bGxzY3Jl
ZW5Ub3BDb250ZW50SW5zZXQuaHRtbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuaHRtbDsgcGF0aCA9IEZ1bGxz
Y3JlZW5Ub3BDb250ZW50SW5zZXQuaHRtbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJ
Q0RFMTk1QjMxQ0ZFMEFERTAwNTNEMjU2IC8qIEZ1bGxzY3JlZW5Ub3BDb250ZW50SW5zZXQubW0g
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBGdWxsc2NyZWVuVG9wQ29u
dGVudEluc2V0Lm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREUxOTVCMzFDRkUw
QURFMDA1M0QyNTYgLyogVG9wQ29udGVudEluc2V0Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAub2JqY3BwOyBwYXRoID0gVG9wQ29udGVudEluc2V0Lm1tOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQlDREYwQjc4OTIxNkQ0ODQzMDA0MjFFQ0MgLyogQ2xvc2VXZWJWaWV3RHVyaW5n
RW50ZXJGdWxsc2NyZWVuLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRo
ID0gQ2xvc2VXZWJWaWV3RHVyaW5nRW50ZXJGdWxsc2NyZWVuLm1tOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQlDREY5MjIzNjIxNkQxODY0MDA2NDdBQTcgLyogQ2xvc2VXZWJWaWV3QWZ0
ZXJFbnRlckZ1bGxzY3JlZW4ubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBDbG9zZVdlYlZpZXdB
ZnRlckVudGVyRnVsbHNjcmVlbi5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0Uw
NkRGOUExRTE4NTFGMjAwRTU3MEM5IC8qIFNlY3VyaXR5T3JpZ2luLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNlY3VyaXR5T3JpZ2luLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKQEAgLTI4ODMsNyArMjg4Myw2IEBACiAJCQkJNUNCNUIzQkQxRkZDNTE3
RTAwQzI3QkIwIC8qIEZyYW1lSGFuZGxlU2VyaWFsaXphdGlvbi5tbSAqLywKIAkJCQlDRDc4RTEx
QTFEQjdFQTM2MDAxNEEyREUgLyogRnVsbHNjcmVlbkRlbGVnYXRlLm1tICovLAogCQkJCTNGMUI1
MjY4MUQzRDcxMjkwMDhENjBDNCAvKiBGdWxsc2NyZWVuTGF5b3V0Q29uc3RyYWludHMubW0gKi8s
Ci0JCQkJQ0RFMTk1QjMxQ0ZFMEFERTAwNTNEMjU2IC8qIEZ1bGxzY3JlZW5Ub3BDb250ZW50SW5z
ZXQubW0gKi8sCiAJCQkJNjMxRUZGRjUxRTdCNUU4RDAwRDJFQkI4IC8qIEdlb2xvY2F0aW9uLm1t
ICovLAogCQkJCTA3RTFGNkEwMUZGQzNBMDgwMDk2QzdFQyAvKiBHZXREaXNwbGF5TWVkaWEubW0g
Ki8sCiAJCQkJMkRBREYyNjIyMUNCOEYzMjAwM0QzRTNBIC8qIEdldFJlc291cmNlRGF0YS5tbSAq
LywKQEAgLTI5OTcsNiArMjk5Niw3IEBACiAJCQkJNUMxNkY4RkIyMzBDOTQyQjAwNzRDNEE4IC8q
IFRleHRTaXplLm1tICovLAogCQkJCUMyMkZBMzJBMjI4Rjg3MDgwMDlENzk4OCAvKiBUZXh0V2lk
dGgubW0gKi8sCiAJCQkJNUM3M0E4MUEyMzIzMDU5ODAwREVBODVBIC8qIFRMU0RlcHJlY2F0aW9u
Lm1tICovLAorCQkJCUNERTE5NUIzMUNGRTBBREUwMDUzRDI1NiAvKiBUb3BDb250ZW50SW5zZXQu
bW0gKi8sCiAJCQkJNUNCNDBCNEQxRjRCOThCRTAwN0RDN0I5IC8qIFVJRGVsZWdhdGUubW0gKi8s
CiAJCQkJNUMzQTc3QTkyMkYyMEI4QTAwMzgyN0ZGIC8qIFVwbG9hZERpcmVjdG9yeS5tbSAqLywK
IAkJCQk3Q0MzRTFGQTE5N0UyMzQxMDBCRTYyNTIgLyogVXNlckNvbnRlbnRDb250cm9sbGVyLm1t
ICovLApAQCAtNDY1NSw3ICs0NjU1LDYgQEAKIAkJCQk3Q0NFN0VGNjFBNDExQUU2MDA0NDdDNEMg
LyogRnJhbWVNSU1FVHlwZUhUTUwuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJN0NDRTdFRjcxQTQx
MUFFNjAwNDQ3QzRDIC8qIEZyYW1lTUlNRVR5cGVQTkcuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
Q0Q3OEUxMUQxREI3RUE2NjAwMTRBMkRFIC8qIEZ1bGxzY3JlZW5EZWxlZ2F0ZS5tbSBpbiBTb3Vy
Y2VzICovLAotCQkJCTdDODNFMEJEMUQwQTY1MEMwMEZFQkNGMyAvKiBGdWxsc2NyZWVuVG9wQ29u
dGVudEluc2V0Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJQ0RCRkNDNDUxQTlGRjQ1MzAwQTdCNjkx
IC8qIEZ1bGxzY3JlZW5ab29tSW5pdGlhbEZyYW1lLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJODNE
Qjc5NjkxRUY2M0IzQzAwQkZBNUU1IC8qIEZ1bmN0aW9uLmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CTdDQ0U3RUY4MUE0MTFBRTYwMDQ0N0M0QyAvKiBHZW9sb2NhdGlvbi5jcHAgaW4gU291cmNlcyAq
LywKQEAgLTQ4OTksNiArNDg5OCw3IEBACiAJCQkJNUMxNkY4RkMyMzBDOTQzNzAwNzRDNEE4IC8q
IFRleHRTaXplLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJQzIyRkEzMkIyMjhGODcwODAwOUQ3OTg4
IC8qIFRleHRXaWR0aC5tbSBpbiBTb3VyY2VzICovLAogCQkJCTdDQ0U3RUREMUE0MTFBOTIwMDQ0
N0M0QyAvKiBUaW1lUmFuZ2VzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTdDODNFMEJEMUQwQTY1
MEMwMEZFQkNGMyAvKiBUb3BDb250ZW50SW5zZXQubW0gaW4gU291cmNlcyAqLywKIAkJCQk3Q0NF
N0VEMzFBNDExQTdFMDA0NDdDNEMgLyogVHlwaW5nU3R5bGVDcmFzaC5tbSBpbiBTb3VyY2VzICov
LAogCQkJCTU3MTUyQjc4MjFERDRFOEQwMDBDMzdDQSAvKiBVMmZDb21tYW5kQ29uc3RydWN0b3JU
ZXN0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTVDQjQwQjRFMUY0Qjk4RDMwMDdEQzdCOSAvKiBV
SURlbGVnYXRlLm1tIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0
QVBJL1Rlc3RzL1dlYktpdENvY29hL0Z1bGxzY3JlZW5Ub3BDb250ZW50SW5zZXQubW0gYi9Ub29s
cy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0Z1bGxzY3JlZW5Ub3BDb250ZW50SW5z
ZXQubW0KZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGM0MmFiZDY1MDhiY2ZlOGRhZjk2
N2I5MWI3NzJkZjYxNTE5ZmU0MTUuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9GdWxsc2Ny
ZWVuVG9wQ29udGVudEluc2V0Lm1tCisrKyAvZGV2L251bGwKQEAgLTEsODggKzAsMCBAQAotLyoK
LSAqIENvcHlyaWdodCAoQykgMjAxNiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0g
KgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAot
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgotICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLQotI2lmIFBMQVRGT1JNKE1BQykKLQotI2lt
cG9ydCAiUGxhdGZvcm1VdGlsaXRpZXMuaCIKLSNpbXBvcnQgPFdlYktpdC9XS1ByZWZlcmVuY2Vz
UHJpdmF0ZS5oPgotI2ltcG9ydCA8V2ViS2l0L1dLV2ViVmlld0NvbmZpZ3VyYXRpb25Qcml2YXRl
Lmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tXZWJWaWV3UHJpdmF0ZS5oPgotI2ltcG9ydCA8d3RmL1Jl
dGFpblB0ci5oPgotCi1zdGF0aWMgYm9vbCByZWNlaXZlZExvYWRlZE1lc3NhZ2U7Ci1zdGF0aWMg
Ym9vbCByZWNlaXZlZEZ1bGxzY3JlZW5DaGFuZ2VNZXNzYWdlOwotCi1AaW50ZXJmYWNlIEZ1bGxz
Y3JlZW5DaGFuZ2VNZXNzYWdlSGFuZGxlciA6IE5TT2JqZWN0IDxXS1NjcmlwdE1lc3NhZ2VIYW5k
bGVyPgotQGVuZAotCi1AaW1wbGVtZW50YXRpb24gRnVsbHNjcmVlbkNoYW5nZU1lc3NhZ2VIYW5k
bGVyCi0tICh2b2lkKXVzZXJDb250ZW50Q29udHJvbGxlcjooV0tVc2VyQ29udGVudENvbnRyb2xs
ZXIgKil1c2VyQ29udGVudENvbnRyb2xsZXIgZGlkUmVjZWl2ZVNjcmlwdE1lc3NhZ2U6KFdLU2Ny
aXB0TWVzc2FnZSAqKW1lc3NhZ2UKLXsKLSAgICBOU1N0cmluZyAqYm9keVN0cmluZyA9IChOU1N0
cmluZyAqKVttZXNzYWdlIGJvZHldOwotICAgIGlmIChbYm9keVN0cmluZyBpc0VxdWFsVG9TdHJp
bmc6QCJmdWxsc2NyZWVuY2hhbmdlIl0pCi0gICAgICAgIHJlY2VpdmVkRnVsbHNjcmVlbkNoYW5n
ZU1lc3NhZ2UgPSB0cnVlOwotICAgIGVsc2UgaWYgKFtib2R5U3RyaW5nIGlzRXF1YWxUb1N0cmlu
ZzpAImxvYWQiXSkKLSAgICAgICAgcmVjZWl2ZWRMb2FkZWRNZXNzYWdlID0gdHJ1ZTsKLX0KLUBl
bmQKLQotbmFtZXNwYWNlIFRlc3RXZWJLaXRBUEkgewotCi1URVNUKEZ1bGxzY3JlZW4sIFRvcENv
bnRlbnRJbnNldCkKLXsKLSAgICBSZXRhaW5QdHI8V0tXZWJWaWV3Q29uZmlndXJhdGlvbj4gY29u
ZmlndXJhdGlvbiA9IGFkb3B0TlMoW1tXS1dlYlZpZXdDb25maWd1cmF0aW9uIGFsbG9jXSBpbml0
XSk7Ci0gICAgUmV0YWluUHRyPFdLV2ViVmlldz4gd2ViVmlldyA9IGFkb3B0TlMoW1tXS1dlYlZp
ZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgwLCAwLCAxMDAsIDEwMCkgY29uZmln
dXJhdGlvbjpjb25maWd1cmF0aW9uLmdldCgpXSk7Ci0gICAgW3dlYlZpZXcgX3NldFRvcENvbnRl
bnRJbnNldDoxMF07Ci0gICAgW3dlYlZpZXcgX3NldEF1dG9tYXRpY2FsbHlBZGp1c3RzQ29udGVu
dEluc2V0czpOT107Ci0gICAgW2NvbmZpZ3VyYXRpb24gcHJlZmVyZW5jZXNdLl9mdWxsU2NyZWVu
RW5hYmxlZCA9IFlFUzsKLSAgICBSZXRhaW5QdHI8RnVsbHNjcmVlbkNoYW5nZU1lc3NhZ2VIYW5k
bGVyPiBoYW5kbGVyID0gYWRvcHROUyhbW0Z1bGxzY3JlZW5DaGFuZ2VNZXNzYWdlSGFuZGxlciBh
bGxvY10gaW5pdF0pOwotICAgIFtbY29uZmlndXJhdGlvbiB1c2VyQ29udGVudENvbnRyb2xsZXJd
IGFkZFNjcmlwdE1lc3NhZ2VIYW5kbGVyOmhhbmRsZXIuZ2V0KCkgbmFtZTpAImZ1bGxzY3JlZW5D
aGFuZ2VIYW5kbGVyIl07Ci0KLSAgICBSZXRhaW5QdHI8TlNXaW5kb3c+IHdpbmRvdyA9IGFkb3B0
TlMoW1tOU1dpbmRvdyBhbGxvY10gaW5pdFdpdGhDb250ZW50UmVjdDpbd2ViVmlldyBmcmFtZV0g
c3R5bGVNYXNrOk5TV2luZG93U3R5bGVNYXNrQm9yZGVybGVzcyBiYWNraW5nOk5TQmFja2luZ1N0
b3JlQnVmZmVyZWQgZGVmZXI6Tk9dKTsKLSAgICBbW3dpbmRvdyBjb250ZW50Vmlld10gYWRkU3Vi
dmlldzp3ZWJWaWV3LmdldCgpXTsKLSAgICBbd2luZG93IG1ha2VLZXlBbmRPcmRlckZyb250Om5p
bF07Ci0KLSAgICBOU1VSTFJlcXVlc3QgKnJlcXVlc3QgPSBbTlNVUkxSZXF1ZXN0IHJlcXVlc3RX
aXRoVVJMOltbTlNCdW5kbGUgbWFpbkJ1bmRsZV0gVVJMRm9yUmVzb3VyY2U6QCJGdWxsc2NyZWVu
VG9wQ29udGVudEluc2V0IiB3aXRoRXh0ZW5zaW9uOkAiaHRtbCIgc3ViZGlyZWN0b3J5OkAiVGVz
dFdlYktpdEFQSS5yZXNvdXJjZXMiXV07Ci0gICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6cmVxdWVz
dF07Ci0gICAgVGVzdFdlYktpdEFQSTo6VXRpbDo6cnVuKCZyZWNlaXZlZExvYWRlZE1lc3NhZ2Up
OwotCi0gICAgTlNFdmVudCAqZXZlbnQgPSBbTlNFdmVudCBtb3VzZUV2ZW50V2l0aFR5cGU6TlNF
dmVudFR5cGVMZWZ0TW91c2VEb3duIGxvY2F0aW9uOk5TTWFrZVBvaW50KDUsIDUpIG1vZGlmaWVy
RmxhZ3M6MCB0aW1lc3RhbXA6MCB3aW5kb3dOdW1iZXI6d2luZG93LmdldCgpLndpbmRvd051bWJl
ciBjb250ZXh0OjAgZXZlbnROdW1iZXI6MCBjbGlja0NvdW50OjAgcHJlc3N1cmU6MF07Ci0gICAg
W3dlYlZpZXcgbW91c2VEb3duOmV2ZW50XTsKLQotICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6OnJ1
bigmcmVjZWl2ZWRGdWxsc2NyZWVuQ2hhbmdlTWVzc2FnZSk7Ci0gICAgQVNTRVJUX0VRKHdpbmRv
dy5nZXQoKS5zY3JlZW4uZnJhbWUuc2l6ZS53aWR0aCwgd2ViVmlldy5nZXQoKS5mcmFtZS5zaXpl
LndpZHRoKTsKLSAgICBBU1NFUlRfRVEod2luZG93LmdldCgpLnNjcmVlbi5mcmFtZS5zaXplLmhl
aWdodCArIHdlYlZpZXcuZ2V0KCkuX3RvcENvbnRlbnRJbnNldCwgd2ViVmlldy5nZXQoKS5mcmFt
ZS5zaXplLmhlaWdodCk7Ci0KLSAgICByZWNlaXZlZEZ1bGxzY3JlZW5DaGFuZ2VNZXNzYWdlID0g
ZmFsc2U7Ci0gICAgW3dlYlZpZXcgbW91c2VEb3duOmV2ZW50XTsKLSAgICBUZXN0V2ViS2l0QVBJ
OjpVdGlsOjpydW4oJnJlY2VpdmVkRnVsbHNjcmVlbkNoYW5nZU1lc3NhZ2UpOwotICAgIEFTU0VS
VF9FUSgxMCwgd2ViVmlldy5nZXQoKS5fdG9wQ29udGVudEluc2V0KTsKLX0KLQotfSAvLyBuYW1l
c3BhY2UgVGVzdFdlYktpdEFQSQotCi0jZW5kaWYKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvVG9wQ29udGVudEluc2V0Lm1tIGIvVG9vbHMvVGVzdFdl
YktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9Ub3BDb250ZW50SW5zZXQubW0KbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
MTM0ODA1YzhjYTYzOWM3ZWY4MjExMzc0MmM0ODhiNjRkYTlkODJjMQotLS0gL2Rldi9udWxsCisr
KyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvVG9wQ29udGVudEluc2V0
Lm1tCkBAIC0wLDAgKzEsMTM1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE2LTIwMjAgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElT
JycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JT
CisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisg
KiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAq
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmln
LmgiCisKKyNpZiBQTEFURk9STShNQUMpCisKKyNpbXBvcnQgIlBsYXRmb3JtVXRpbGl0aWVzLmgi
CisjaW1wb3J0ICJUZXN0TmF2aWdhdGlvbkRlbGVnYXRlLmgiCisjaW1wb3J0IDxXZWJLaXQvV0tQ
cmVmZXJlbmNlc1ByaXZhdGUuaD4KKyNpbXBvcnQgPFdlYktpdC9XS1dlYlZpZXdDb25maWd1cmF0
aW9uUHJpdmF0ZS5oPgorI2ltcG9ydCA8V2ViS2l0L1dLV2ViVmlld1ByaXZhdGUuaD4KKyNpbXBv
cnQgPHd0Zi9SZXRhaW5QdHIuaD4KKworc3RhdGljIGJvb2wgcmVjZWl2ZWRMb2FkZWRNZXNzYWdl
Oworc3RhdGljIGJvb2wgcmVjZWl2ZWRGdWxsc2NyZWVuQ2hhbmdlTWVzc2FnZTsKKworQGludGVy
ZmFjZSBGdWxsc2NyZWVuQ2hhbmdlTWVzc2FnZUhhbmRsZXIgOiBOU09iamVjdCA8V0tTY3JpcHRN
ZXNzYWdlSGFuZGxlcj4KK0BlbmQKKworQGltcGxlbWVudGF0aW9uIEZ1bGxzY3JlZW5DaGFuZ2VN
ZXNzYWdlSGFuZGxlcgorLSAodm9pZCl1c2VyQ29udGVudENvbnRyb2xsZXI6KFdLVXNlckNvbnRl
bnRDb250cm9sbGVyICopdXNlckNvbnRlbnRDb250cm9sbGVyIGRpZFJlY2VpdmVTY3JpcHRNZXNz
YWdlOihXS1NjcmlwdE1lc3NhZ2UgKiltZXNzYWdlCit7CisgICAgTlNTdHJpbmcgKmJvZHlTdHJp
bmcgPSAoTlNTdHJpbmcgKilbbWVzc2FnZSBib2R5XTsKKyAgICBpZiAoW2JvZHlTdHJpbmcgaXNF
cXVhbFRvU3RyaW5nOkAiZnVsbHNjcmVlbmNoYW5nZSJdKQorICAgICAgICByZWNlaXZlZEZ1bGxz
Y3JlZW5DaGFuZ2VNZXNzYWdlID0gdHJ1ZTsKKyAgICBlbHNlIGlmIChbYm9keVN0cmluZyBpc0Vx
dWFsVG9TdHJpbmc6QCJsb2FkIl0pCisgICAgICAgIHJlY2VpdmVkTG9hZGVkTWVzc2FnZSA9IHRy
dWU7Cit9CitAZW5kCisKK25hbWVzcGFjZSBUZXN0V2ViS2l0QVBJIHsKKworVEVTVChUb3BDb250
ZW50SW5zZXQsIEZ1bGxzY3JlZW4pCit7CisgICAgUmV0YWluUHRyPFdLV2ViVmlld0NvbmZpZ3Vy
YXRpb24+IGNvbmZpZ3VyYXRpb24gPSBhZG9wdE5TKFtbV0tXZWJWaWV3Q29uZmlndXJhdGlvbiBh
bGxvY10gaW5pdF0pOworICAgIFJldGFpblB0cjxXS1dlYlZpZXc+IHdlYlZpZXcgPSBhZG9wdE5T
KFtbV0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgMTAwLCAx
MDApIGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbi5nZXQoKV0pOworICAgIFt3ZWJWaWV3IF9z
ZXRUb3BDb250ZW50SW5zZXQ6MTBdOworICAgIFt3ZWJWaWV3IF9zZXRBdXRvbWF0aWNhbGx5QWRq
dXN0c0NvbnRlbnRJbnNldHM6Tk9dOworICAgIFtjb25maWd1cmF0aW9uIHByZWZlcmVuY2VzXS5f
ZnVsbFNjcmVlbkVuYWJsZWQgPSBZRVM7CisgICAgUmV0YWluUHRyPEZ1bGxzY3JlZW5DaGFuZ2VN
ZXNzYWdlSGFuZGxlcj4gaGFuZGxlciA9IGFkb3B0TlMoW1tGdWxsc2NyZWVuQ2hhbmdlTWVzc2Fn
ZUhhbmRsZXIgYWxsb2NdIGluaXRdKTsKKyAgICBbW2NvbmZpZ3VyYXRpb24gdXNlckNvbnRlbnRD
b250cm9sbGVyXSBhZGRTY3JpcHRNZXNzYWdlSGFuZGxlcjpoYW5kbGVyLmdldCgpIG5hbWU6QCJm
dWxsc2NyZWVuQ2hhbmdlSGFuZGxlciJdOworCisgICAgUmV0YWluUHRyPE5TV2luZG93PiB3aW5k
b3cgPSBhZG9wdE5TKFtbTlNXaW5kb3cgYWxsb2NdIGluaXRXaXRoQ29udGVudFJlY3Q6W3dlYlZp
ZXcgZnJhbWVdIHN0eWxlTWFzazpOU1dpbmRvd1N0eWxlTWFza0JvcmRlcmxlc3MgYmFja2luZzpO
U0JhY2tpbmdTdG9yZUJ1ZmZlcmVkIGRlZmVyOk5PXSk7CisgICAgW1t3aW5kb3cgY29udGVudFZp
ZXddIGFkZFN1YnZpZXc6d2ViVmlldy5nZXQoKV07CisgICAgW3dpbmRvdyBtYWtlS2V5QW5kT3Jk
ZXJGcm9udDpuaWxdOworCisgICAgTlNVUkxSZXF1ZXN0ICpyZXF1ZXN0ID0gW05TVVJMUmVxdWVz
dCByZXF1ZXN0V2l0aFVSTDpbW05TQnVuZGxlIG1haW5CdW5kbGVdIFVSTEZvclJlc291cmNlOkAi
RnVsbHNjcmVlblRvcENvbnRlbnRJbnNldCIgd2l0aEV4dGVuc2lvbjpAImh0bWwiIHN1YmRpcmVj
dG9yeTpAIlRlc3RXZWJLaXRBUEkucmVzb3VyY2VzIl1dOworICAgIFt3ZWJWaWV3IGxvYWRSZXF1
ZXN0OnJlcXVlc3RdOworICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6OnJ1bigmcmVjZWl2ZWRMb2Fk
ZWRNZXNzYWdlKTsKKworICAgIE5TRXZlbnQgKmV2ZW50ID0gW05TRXZlbnQgbW91c2VFdmVudFdp
dGhUeXBlOk5TRXZlbnRUeXBlTGVmdE1vdXNlRG93biBsb2NhdGlvbjpOU01ha2VQb2ludCg1LCA1
KSBtb2RpZmllckZsYWdzOjAgdGltZXN0YW1wOjAgd2luZG93TnVtYmVyOndpbmRvdy5nZXQoKS53
aW5kb3dOdW1iZXIgY29udGV4dDowIGV2ZW50TnVtYmVyOjAgY2xpY2tDb3VudDowIHByZXNzdXJl
OjBdOworICAgIFt3ZWJWaWV3IG1vdXNlRG93bjpldmVudF07CisKKyAgICBUZXN0V2ViS2l0QVBJ
OjpVdGlsOjpydW4oJnJlY2VpdmVkRnVsbHNjcmVlbkNoYW5nZU1lc3NhZ2UpOworICAgIEFTU0VS
VF9FUSh3aW5kb3cuZ2V0KCkuc2NyZWVuLmZyYW1lLnNpemUud2lkdGgsIHdlYlZpZXcuZ2V0KCku
ZnJhbWUuc2l6ZS53aWR0aCk7CisgICAgQVNTRVJUX0VRKHdpbmRvdy5nZXQoKS5zY3JlZW4uZnJh
bWUuc2l6ZS5oZWlnaHQgKyB3ZWJWaWV3LmdldCgpLl90b3BDb250ZW50SW5zZXQsIHdlYlZpZXcu
Z2V0KCkuZnJhbWUuc2l6ZS5oZWlnaHQpOworCisgICAgcmVjZWl2ZWRGdWxsc2NyZWVuQ2hhbmdl
TWVzc2FnZSA9IGZhbHNlOworICAgIFt3ZWJWaWV3IG1vdXNlRG93bjpldmVudF07CisgICAgVGVz
dFdlYktpdEFQSTo6VXRpbDo6cnVuKCZyZWNlaXZlZEZ1bGxzY3JlZW5DaGFuZ2VNZXNzYWdlKTsK
KyAgICBBU1NFUlRfRVEoMTAsIHdlYlZpZXcuZ2V0KCkuX3RvcENvbnRlbnRJbnNldCk7Cit9CisK
K1RFU1QoVG9wQ29udGVudEluc2V0LCBBdXRvbWF0aWNBZGp1c3RtZW50KQoreworICAgIFJldGFp
blB0cjxXS1dlYlZpZXdDb25maWd1cmF0aW9uPiBjb25maWd1cmF0aW9uID0gYWRvcHROUyhbW1dL
V2ViVmlld0NvbmZpZ3VyYXRpb24gYWxsb2NdIGluaXRdKTsKKyAgICBSZXRhaW5QdHI8V0tXZWJW
aWV3PiB3ZWJWaWV3ID0gYWRvcHROUyhbW1dLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpO
U01ha2VSZWN0KDAsIDAsIDQwMCwgNDAwKSBjb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb24uZ2V0
KCldKTsKKworICAgIFJldGFpblB0cjxOU1dpbmRvdz4gd2luZG93ID0gYWRvcHROUyhbW05TV2lu
ZG93IGFsbG9jXSBpbml0V2l0aENvbnRlbnRSZWN0Ok5TTWFrZVJlY3QoMCwgMCwgNDAwLCA0MDAp
IHN0eWxlTWFzazooTlNXaW5kb3dTdHlsZU1hc2tUaXRsZWQgfCBOU1dpbmRvd1N0eWxlTWFza0Z1
bGxTaXplQ29udGVudFZpZXcpIGJhY2tpbmc6TlNCYWNraW5nU3RvcmVCdWZmZXJlZCBkZWZlcjpO
T10pOworICAgIFtbd2luZG93IGNvbnRlbnRWaWV3XSBhZGRTdWJ2aWV3OndlYlZpZXcuZ2V0KCld
OworICAgIFt3aW5kb3cgbWFrZUtleUFuZE9yZGVyRnJvbnQ6bmlsXTsKKworICAgIFt3ZWJWaWV3
IGxvYWRIVE1MU3RyaW5nOkAiIiBiYXNlVVJMOm5pbF07CisgICAgW3dlYlZpZXcgX3Rlc3Rfd2Fp
dEZvckRpZEZpbmlzaE5hdmlnYXRpb25dOworCisgICAgQVNTRVJUX0dUKHdlYlZpZXcuZ2V0KCku
X3RvcENvbnRlbnRJbnNldCwgMTApOworfQorCitURVNUKFRvcENvbnRlbnRJbnNldCwgQXV0b21h
dGljQWRqdXN0bWVudERpc2FibGVkKQoreworICAgIFJldGFpblB0cjxXS1dlYlZpZXdDb25maWd1
cmF0aW9uPiBjb25maWd1cmF0aW9uID0gYWRvcHROUyhbW1dLV2ViVmlld0NvbmZpZ3VyYXRpb24g
YWxsb2NdIGluaXRdKTsKKyAgICBSZXRhaW5QdHI8V0tXZWJWaWV3PiB3ZWJWaWV3ID0gYWRvcHRO
UyhbW1dLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDQwMCwg
NDAwKSBjb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb24uZ2V0KCldKTsKKyAgICBbd2ViVmlldyBf
c2V0QXV0b21hdGljYWxseUFkanVzdHNDb250ZW50SW5zZXRzOk5PXTsKKworICAgIFJldGFpblB0
cjxOU1dpbmRvdz4gd2luZG93ID0gYWRvcHROUyhbW05TV2luZG93IGFsbG9jXSBpbml0V2l0aENv
bnRlbnRSZWN0Ok5TTWFrZVJlY3QoMCwgMCwgNDAwLCA0MDApIHN0eWxlTWFzazooTlNXaW5kb3dT
dHlsZU1hc2tUaXRsZWQgfCBOU1dpbmRvd1N0eWxlTWFza0Z1bGxTaXplQ29udGVudFZpZXcpIGJh
Y2tpbmc6TlNCYWNraW5nU3RvcmVCdWZmZXJlZCBkZWZlcjpOT10pOworICAgIFtbd2luZG93IGNv
bnRlbnRWaWV3XSBhZGRTdWJ2aWV3OndlYlZpZXcuZ2V0KCldOworICAgIFt3aW5kb3cgbWFrZUtl
eUFuZE9yZGVyRnJvbnQ6bmlsXTsKKworICAgIFt3ZWJWaWV3IGxvYWRIVE1MU3RyaW5nOkAiIiBi
YXNlVVJMOm5pbF07CisgICAgW3dlYlZpZXcgX3Rlc3Rfd2FpdEZvckRpZEZpbmlzaE5hdmlnYXRp
b25dOworCisgICAgQVNTRVJUX0VRKHdlYlZpZXcuZ2V0KCkuX3RvcENvbnRlbnRJbnNldCwgMCk7
Cit9CisKK1RFU1QoVG9wQ29udGVudEluc2V0LCBBdXRvbWF0aWNBZGp1c3RtZW50RG9lc05vdEFm
ZmVjdEluc2V0Vmlld3MpCit7CisgICAgUmV0YWluUHRyPFdLV2ViVmlld0NvbmZpZ3VyYXRpb24+
IGNvbmZpZ3VyYXRpb24gPSBhZG9wdE5TKFtbV0tXZWJWaWV3Q29uZmlndXJhdGlvbiBhbGxvY10g
aW5pdF0pOworICAgIFJldGFpblB0cjxXS1dlYlZpZXc+IHdlYlZpZXcgPSBhZG9wdE5TKFtbV0tX
ZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3QoMTAwLCAxMDAsIDIwMCwgMjAw
KSBjb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb24uZ2V0KCldKTsKKworICAgIFJldGFpblB0cjxO
U1dpbmRvdz4gd2luZG93ID0gYWRvcHROUyhbW05TV2luZG93IGFsbG9jXSBpbml0V2l0aENvbnRl
bnRSZWN0Ok5TTWFrZVJlY3QoMCwgMCwgNDAwLCA0MDApIHN0eWxlTWFzazooTlNXaW5kb3dTdHls
ZU1hc2tUaXRsZWQgfCBOU1dpbmRvd1N0eWxlTWFza0Z1bGxTaXplQ29udGVudFZpZXcpIGJhY2tp
bmc6TlNCYWNraW5nU3RvcmVCdWZmZXJlZCBkZWZlcjpOT10pOworICAgIFtbd2luZG93IGNvbnRl
bnRWaWV3XSBhZGRTdWJ2aWV3OndlYlZpZXcuZ2V0KCldOworICAgIFt3aW5kb3cgbWFrZUtleUFu
ZE9yZGVyRnJvbnQ6bmlsXTsKKworICAgIFt3ZWJWaWV3IGxvYWRIVE1MU3RyaW5nOkAiIiBiYXNl
VVJMOm5pbF07CisgICAgW3dlYlZpZXcgX3Rlc3Rfd2FpdEZvckRpZEZpbmlzaE5hdmlnYXRpb25d
OworCisgICAgQVNTRVJUX0VRKHdlYlZpZXcuZ2V0KCkuX3RvcENvbnRlbnRJbnNldCwgMCk7Cit9
CisKK30gLy8gbmFtZXNwYWNlIFRlc3RXZWJLaXRBUEkKKworI2VuZGlmCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>