<?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>37115</bug_id>
          
          <creation_ts>2010-04-05 14:33:08 -0700</creation_ts>
          <short_desc>REGRESSION(r56989): Crash in Mail in WebCore::Position::isCandidate when deleting block using block deletion UI</short_desc>
          <delta_ts>2010-04-05 19:21:50 -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>HTML Editing</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.6</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Regression</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Mark Rowe (bdash)">mrowe</reporter>
          <assigned_to name="Mark Rowe (bdash)">mrowe</assigned_to>
          <cc>abarth</cc>
    
    <cc>enrica</cc>
    
    <cc>eric</cc>
    
    <cc>mitz</cc>
    
    <cc>rolandsteiner</cc>
    
    <cc>svetloslav</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>208707</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2010-04-05 14:33:08 -0700</bug_when>
    <thetext>When Mail is run against WebKit r56989 or newer attempting to delete a block level element via the block deletion UI will crash.  This can be reproduced by doing the following:
1) Run Mail against ToT WebKit.
2) Reply to a webkit-changes email message.
3) Place the caret in a diff hunk so that the block deletion UI appears.
4) Click on the delete button.

You’ll see a crash like so:

Thread 0 Crashed:
0   com.apple.WebCore             	0x00000001008f9118 WebCore::Position::isCandidate() const + 16 (PositionIterator.h:49)
1   com.apple.WebCore             	0x0000000100901728 WebCore::Frame::styleForSelectionStart(WebCore::Node*&amp;) const + 196 (Frame.cpp:1305)
2   com.apple.WebCore             	0x0000000100901542 WebCore::Editor::fontForSelection(bool&amp;) const + 52 (Editor.cpp:411)
3   com.apple.WebKit              	0x0000000100461f6a -[WebHTMLView(WebInternal) _updateFontPanel] + 170 (WebHTMLView.mm:5042)
4   com.apple.WebKit              	0x00000001004649aa -[WebHTMLView(WebInternal) _selectionChanged] + 42 (WebHTMLView.mm:5022)
5   com.apple.WebKit              	0x000000010046475e WebEditorClient::respondToChangedSelection() + 28 (WebEditorClient.mm:284)
6   com.apple.WebCore             	0x00000001009014f1 WebCore::Editor::respondToChangedSelection(WebCore::VisibleSelection const&amp;) + 69 (OwnPtr.h:63)
7   com.apple.WebCore             	0x00000001008fe05d WebCore::Frame::respondToChangedSelection(WebCore::VisibleSelection const&amp;, bool) + 1525 (Frame.cpp:1745)
8   com.apple.WebCore             	0x0000000100f58c23 WebCore::SelectionController::setSelection(WebCore::VisibleSelection const&amp;, bool, bool, bool, WebCore::TextGranularity) + 395 (SelectionController.cpp:162)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>208709</commentid>
    <comment_count>1</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2010-04-05 14:34:10 -0700</bug_when>
    <thetext>r56989 was a change related to bug 36741.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>208778</commentid>
    <comment_count>2</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2010-04-05 16:21:43 -0700</bug_when>
    <thetext>*** Bug 37119 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>208840</commentid>
    <comment_count>3</comment_count>
      <attachid>52596</attachid>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2010-04-05 18:38:25 -0700</bug_when>
    <thetext>Created attachment 52596
Roll out r56989</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>208841</commentid>
    <comment_count>4</comment_count>
      <attachid>52597</attachid>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2010-04-05 18:38:50 -0700</bug_when>
    <thetext>Created attachment 52597
Test case</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>208844</commentid>
    <comment_count>5</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2010-04-05 18:45:59 -0700</bug_when>
    <thetext>Landed in r57110 and r57111.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>208853</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-04-05 19:21:30 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/57110 might have broken SnowLeopard Intel Release (Tests)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>208854</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-04-05 19:21:50 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/57111 might have broken SnowLeopard Intel Release (Tests)</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>52596</attachid>
            <date>2010-04-05 18:38:25 -0700</date>
            <delta_ts>2010-04-05 18:39:45 -0700</delta_ts>
            <desc>Roll out r56989</desc>
            <filename>0001-Roll-out-r56989-as-it-introduced-crashes-in-Mail.patch</filename>
            <type>text/plain</type>
            <size>3634</size>
            <attacher name="Mark Rowe (bdash)">mrowe</attacher>
            
              <data encoding="base64">RnJvbSBkYjk5MjAxYzkwODRmMmY3NDcxMmQxMjJlMTc1YjViOGFjZjRjZjlkIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXJrIFJvd2UgPG1yb3dlQGFwcGxlLmNvbT4KRGF0ZTogTW9u
LCA1IEFwciAyMDEwIDE4OjIwOjM2IC0wNzAwClN1YmplY3Q6IFtQQVRDSCAxLzJdIFJvbGwgb3V0
IHI1Njk4OSBhcyBpdCBpbnRyb2R1Y2VkIGNyYXNoZXMgaW4gTWFpbC4KIDxodHRwOi8vd2Via2l0
Lm9yZy9iLzM3MTE1PiAvIDxyZGFyOi8vcHJvYmxlbS83ODI5MzMxPgoKUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCgoqIGRvbS9Qb3NpdGlvbi5jcHA6CihXZWJDb3JlOjpQb3NpdGlvbjo6aXND
YW5kaWRhdGUpOgoqIGRvbS9Qb3NpdGlvbkl0ZXJhdG9yLmNwcDoKKFdlYkNvcmU6OlBvc2l0aW9u
SXRlcmF0b3I6OmlzQ2FuZGlkYXRlKToKLS0tCiBXZWJDb3JlL0NoYW5nZUxvZyAgICAgICAgICAg
ICAgICB8ICAgMTIgKysrKysrKysrKysrCiBXZWJDb3JlL2RvbS9Qb3NpdGlvbi5jcHAgICAgICAg
ICB8ICAgMzMgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystCiBXZWJDb3JlL2RvbS9Q
b3NpdGlvbkl0ZXJhdG9yLmNwcCB8ICAgIDMgKy0tCiAzIGZpbGVzIGNoYW5nZWQsIDQ1IGluc2Vy
dGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VMb2cg
Yi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBiZDdkY2I4Li5iMDUzZjAxIDEwMDY0NAotLS0gYS9X
ZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBA
CisyMDEwLTA0LTA1ICBNYXJrIFJvd2UgIDxtcm93ZUBhcHBsZS5jb20+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUm9sbCBvdXQgcjU2OTg5IGFzIGl0
IGludHJvZHVjZWQgY3Jhc2hlcyBpbiBNYWlsLgorICAgICAgICA8aHR0cDovL3dlYmtpdC5vcmcv
Yi8zNzExNT4gLyA8cmRhcjovL3Byb2JsZW0vNzgyOTMzMT4KKworICAgICAgICAqIGRvbS9Qb3Np
dGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQb3NpdGlvbjo6aXNDYW5kaWRhdGUpOgorICAg
ICAgICAqIGRvbS9Qb3NpdGlvbkl0ZXJhdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBvc2l0
aW9uSXRlcmF0b3I6OmlzQ2FuZGlkYXRlKToKKwogMjAxMC0wNC0wNSAgTGFzemxvIEdvbWJvcyAg
PGxhc3psby4xLmdvbWJvc0Bub2tpYS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0
aCBSb2hkZSBDaHJpc3RpYW5zZW4uCmRpZmYgLS1naXQgYS9XZWJDb3JlL2RvbS9Qb3NpdGlvbi5j
cHAgYi9XZWJDb3JlL2RvbS9Qb3NpdGlvbi5jcHAKaW5kZXggNWE5ZmU4NC4uZmE5OTRlMyAxMDA2
NDQKLS0tIGEvV2ViQ29yZS9kb20vUG9zaXRpb24uY3BwCisrKyBiL1dlYkNvcmUvZG9tL1Bvc2l0
aW9uLmNwcApAQCAtNzI1LDcgKzcyNSwzOCBAQCBib29sIFBvc2l0aW9uOjpub2RlSXNVc2VyU2Vs
ZWN0Tm9uZShOb2RlKiBub2RlKQogCiBib29sIFBvc2l0aW9uOjppc0NhbmRpZGF0ZSgpIGNvbnN0
CiB7Ci0gICAgcmV0dXJuIFBvc2l0aW9uSXRlcmF0b3IoKnRoaXMpLmlzQ2FuZGlkYXRlKCk7Cisg
ICAgaWYgKGlzTnVsbCgpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgIAorICAgIFJl
bmRlck9iamVjdCAqcmVuZGVyZXIgPSBub2RlKCktPnJlbmRlcmVyKCk7CisgICAgaWYgKCFyZW5k
ZXJlcikKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIAorICAgIGlmIChyZW5kZXJlci0+c3R5
bGUoKS0+dmlzaWJpbGl0eSgpICE9IFZJU0lCTEUpCisgICAgICAgIHJldHVybiBmYWxzZTsKKwor
ICAgIGlmIChyZW5kZXJlci0+aXNCUigpKQorICAgICAgICByZXR1cm4gbV9vZmZzZXQgPT0gMCAm
JiAhbm9kZUlzVXNlclNlbGVjdE5vbmUobm9kZSgpLT5wYXJlbnQoKSk7CisKKyAgICBpZiAocmVu
ZGVyZXItPmlzVGV4dCgpKQorICAgICAgICByZXR1cm4gaW5SZW5kZXJlZFRleHQoKSAmJiAhbm9k
ZUlzVXNlclNlbGVjdE5vbmUobm9kZSgpKTsKKworICAgIGlmIChpc1RhYmxlRWxlbWVudChub2Rl
KCkpIHx8IGVkaXRpbmdJZ25vcmVzQ29udGVudChub2RlKCkpKQorICAgICAgICByZXR1cm4gKGF0
Rmlyc3RFZGl0aW5nUG9zaXRpb25Gb3JOb2RlKCkgfHwgYXRMYXN0RWRpdGluZ1Bvc2l0aW9uRm9y
Tm9kZSgpKSAmJiAhbm9kZUlzVXNlclNlbGVjdE5vbmUobm9kZSgpLT5wYXJlbnQoKSk7CisKKyAg
ICBpZiAobV9hbmNob3JOb2RlLT5oYXNUYWdOYW1lKGh0bWxUYWcpKQorICAgICAgICByZXR1cm4g
ZmFsc2U7CisgICAgICAgIAorICAgIGlmIChyZW5kZXJlci0+aXNCbG9ja0Zsb3coKSkgeworICAg
ICAgICBpZiAodG9SZW5kZXJCbG9jayhyZW5kZXJlciktPmhlaWdodCgpIHx8IG1fYW5jaG9yTm9k
ZS0+aGFzVGFnTmFtZShib2R5VGFnKSkgeworICAgICAgICAgICAgaWYgKCFQb3NpdGlvbjo6aGFz
UmVuZGVyZWROb25Bbm9ueW1vdXNEZXNjZW5kYW50c1dpdGhIZWlnaHQocmVuZGVyZXIpKQorICAg
ICAgICAgICAgICAgIHJldHVybiBhdEZpcnN0RWRpdGluZ1Bvc2l0aW9uRm9yTm9kZSgpICYmICFQ
b3NpdGlvbjo6bm9kZUlzVXNlclNlbGVjdE5vbmUobm9kZSgpKTsKKyAgICAgICAgICAgIHJldHVy
biBtX2FuY2hvck5vZGUtPmlzQ29udGVudEVkaXRhYmxlKCkgJiYgIVBvc2l0aW9uOjpub2RlSXNV
c2VyU2VsZWN0Tm9uZShub2RlKCkpICYmIGF0RWRpdGluZ0JvdW5kYXJ5KCk7CisgICAgICAgIH0K
KyAgICB9IGVsc2UKKyAgICAgICAgcmV0dXJuIG1fYW5jaG9yTm9kZS0+aXNDb250ZW50RWRpdGFi
bGUoKSAmJiAhUG9zaXRpb246Om5vZGVJc1VzZXJTZWxlY3ROb25lKG5vZGUoKSkgJiYgYXRFZGl0
aW5nQm91bmRhcnkoKTsKKworICAgIHJldHVybiBmYWxzZTsKIH0KIAogYm9vbCBQb3NpdGlvbjo6
aW5SZW5kZXJlZFRleHQoKSBjb25zdApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9kb20vUG9zaXRpb25J
dGVyYXRvci5jcHAgYi9XZWJDb3JlL2RvbS9Qb3NpdGlvbkl0ZXJhdG9yLmNwcAppbmRleCBhZmUz
NzM1Li5mNWI2NWY1IDEwMDY0NAotLS0gYS9XZWJDb3JlL2RvbS9Qb3NpdGlvbkl0ZXJhdG9yLmNw
cAorKysgYi9XZWJDb3JlL2RvbS9Qb3NpdGlvbkl0ZXJhdG9yLmNwcApAQCAtMTYyLDggKzE2Miw3
IEBAIGJvb2wgUG9zaXRpb25JdGVyYXRvcjo6aXNDYW5kaWRhdGUoKSBjb25zdAogICAgICAgICAg
ICAgICAgIHJldHVybiBhdFN0YXJ0T2ZOb2RlKCkgJiYgIVBvc2l0aW9uOjpub2RlSXNVc2VyU2Vs
ZWN0Tm9uZShtX2FuY2hvck5vZGUpOwogICAgICAgICAgICAgcmV0dXJuIG1fYW5jaG9yTm9kZS0+
aXNDb250ZW50RWRpdGFibGUoKSAmJiAhUG9zaXRpb246Om5vZGVJc1VzZXJTZWxlY3ROb25lKG1f
YW5jaG9yTm9kZSkgJiYgUG9zaXRpb24oKnRoaXMpLmF0RWRpdGluZ0JvdW5kYXJ5KCk7CiAgICAg
ICAgIH0KLSAgICB9IGVsc2UgCi0gICAgICAgIHJldHVybiBtX2FuY2hvck5vZGUtPmlzQ29udGVu
dEVkaXRhYmxlKCkgJiYgIVBvc2l0aW9uOjpub2RlSXNVc2VyU2VsZWN0Tm9uZShtX2FuY2hvck5v
ZGUpICYmIFBvc2l0aW9uKCp0aGlzKS5hdEVkaXRpbmdCb3VuZGFyeSgpOworICAgIH0KIAogICAg
IHJldHVybiBmYWxzZTsKIH0KLS0gCjEuNy4wLjQuMzYwLmcxMTc2NmMKCg==
</data>
<flag name="review"
          id="36112"
          type_id="1"
          status="+"
          setter="adele"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>52597</attachid>
            <date>2010-04-05 18:38:50 -0700</date>
            <delta_ts>2010-04-05 18:41:09 -0700</delta_ts>
            <desc>Test case</desc>
            <filename>0002-Test-case-for-http-webkit.org-b-37115-rdar-problem-7.patch</filename>
            <type>text/plain</type>
            <size>23040</size>
            <attacher name="Mark Rowe (bdash)">mrowe</attacher>
            
              <data encoding="base64">RnJvbSA2OGFkMjQ5MDkxOTg5MDE3OTE4NThjNTM0MWM2ZDRmNjkwMDQxNzE1IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXJrIFJvd2UgPG1yb3dlQGFwcGxlLmNvbT4KRGF0ZTogTW9u
LCA1IEFwciAyMDEwIDE4OjE1OjMxIC0wNzAwClN1YmplY3Q6IFtQQVRDSCAyLzJdIFRlc3QgY2Fz
ZSBmb3IgPGh0dHA6Ly93ZWJraXQub3JnL2IvMzcxMTU+IC8gPHJkYXI6Ly9wcm9ibGVtLzc4Mjkz
MzE+LgogUkVHUkVTU0lPTihyNTY5ODkpOiBDcmFzaCBpbiBNYWlsIGluIFdlYkNvcmU6OlBvc2l0
aW9uOjppc0NhbmRpZGF0ZSB3aGVuIGRlbGV0aW5nIGJsb2NrIHVzaW5nIGJsb2NrIGRlbGV0aW9u
IFVJCgpSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KCldlYktpdC9tYWM6CgoqIFdlYlZpZXcv
V2ViSFRNTFZpZXcubW06CigtW1dlYkhUTUxWaWV3IF91cGRhdGVGb250UGFuZWxdKTogQXNrIHRo
ZSB3aW5kb3cgd2hldGhlciBpdCBpcyB0aGUga2V5IHdpbmRvdyByYXRoZXIgdGhhbiBkb2luZyB0
aGUgY29tcGFyaXNvbgptYW51YWxseS4gIFRoaXMgYWxsb3dzIER1bXBSZW5kZXJUcmVlJ3Mgb3Zl
cnJpZGUgb2YgaXNLZXlXaW5kb3cgdG8gZm9yY2UgdGhpcyBjb2RlIHBhdGggdG8gYmUgdGFrZW4g
ZHVyaW5nIHRlc3RzLgoKV2ViS2l0VG9vbHM6CgpBZGQgYSBKYXZhU2NyaXB0IGhvb2sgaW4gRFJU
IHRvIGNhbGwgdGhyb3VnaCB0byBXZWJWaWV3J3MgLXNldEVkaXRhYmxlOi4gIFRoaXMgaXMgcmVx
dWlyZWQgaW4gb3JkZXIgdG8gcmVwcm9kdWNlCnRoZSBjcmFzaC4KCiogRHVtcFJlbmRlclRyZWUv
TGF5b3V0VGVzdENvbnRyb2xsZXIuY3BwOgooc2V0V2ViVmlld0VkaXRhYmxlQ2FsbGJhY2spOgoo
TGF5b3V0VGVzdENvbnRyb2xsZXI6OnN0YXRpY0Z1bmN0aW9ucyk6CiogRHVtcFJlbmRlclRyZWUv
TGF5b3V0VGVzdENvbnRyb2xsZXIuaDoKKiBEdW1wUmVuZGVyVHJlZS9ndGsvTGF5b3V0VGVzdENv
bnRyb2xsZXJHdGsuY3BwOgooTGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldFdlYlZpZXdFZGl0YWJs
ZSk6CiogRHVtcFJlbmRlclRyZWUvbWFjL0R1bXBSZW5kZXJUcmVlLm1tOgoocmVzZXRXZWJWaWV3
VG9Db25zaXN0ZW50U3RhdGVCZWZvcmVUZXN0aW5nKToKKiBEdW1wUmVuZGVyVHJlZS9tYWMvTGF5
b3V0VGVzdENvbnRyb2xsZXJNYWMubW06CihMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0V2ViVmll
d0VkaXRhYmxlKToKKiBEdW1wUmVuZGVyVHJlZS93aW4vTGF5b3V0VGVzdENvbnRyb2xsZXJXaW4u
Y3BwOgooTGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldFdlYlZpZXdFZGl0YWJsZSk6CiogRHVtcFJl
bmRlclRyZWUvd3gvTGF5b3V0VGVzdENvbnRyb2xsZXJXeC5jcHA6CihMYXlvdXRUZXN0Q29udHJv
bGxlcjo6c2V0V2ViVmlld0VkaXRhYmxlKToKKExheW91dFRlc3RDb250cm9sbGVyOjpsYXllclRy
ZWVBc1RleHQpOgoKTGF5b3V0VGVzdHM6CgoqIHBsYXRmb3JtL21hYy9lZGl0aW5nL2RlbGV0aW5n
L2RlbGV0aW9uVUktc3VjY2Vzc2Z1bC1kZWxldGlvbi1leHBlY3RlZC50eHQ6IEFkZGVkLgoqIHBs
YXRmb3JtL21hYy9lZGl0aW5nL2RlbGV0aW5nL2RlbGV0aW9uVUktc3VjY2Vzc2Z1bC1kZWxldGlv
bi5odG1sOiBBZGRlZC4KKiBwbGF0Zm9ybS9tYWMvZWRpdGluZy9kZWxldGluZy9yZXNvdXJjZXMv
ZGVsZXRpb25VSS1oZWxwZXJzLmpzOgooZGVsZXRpb25VSURlbGV0ZUJ1dHRvbkZvckVsZW1lbnQp
OgooZGV0ZXJtaW5lRGVsZXRpb25VSUV4aXN0ZW5jZSk6Ci0tLQogTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEzICsrKysrKwogLi4uL2RlbGV0
aW9uVUktc3VjY2Vzc2Z1bC1kZWxldGlvbi1leHBlY3RlZC50eHQgICAgfCAgICA4ICsrKysKIC4u
Li9kZWxldGluZy9kZWxldGlvblVJLXN1Y2Nlc3NmdWwtZGVsZXRpb24uaHRtbCAgIHwgICA0NCAr
KysrKysrKysrKysrKysrKysrKwogLi4uL2RlbGV0aW5nL3Jlc291cmNlcy9kZWxldGlvblVJLWhl
bHBlcnMuanMgICAgICAgfCAgICA5ICsrKystCiBXZWJLaXQvbWFjL0NoYW5nZUxvZyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTEgKysrKysKIFdlYktpdC9tYWMvV2ViVmlldy9X
ZWJIVE1MVmlldy5tbSAgICAgICAgICAgICAgICAgIHwgICAgOSArKy0tCiBXZWJLaXRUb29scy9D
aGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMjYgKysrKysrKysrKysr
CiAuLi4vRHVtcFJlbmRlclRyZWUvTGF5b3V0VGVzdENvbnRyb2xsZXIuY3BwICAgICAgICB8ICAg
MjYgKysrKysrKysrLS0tCiBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9MYXlvdXRUZXN0Q29u
dHJvbGxlci5oICB8ICAgIDQgKy0KIC4uLi9EdW1wUmVuZGVyVHJlZS9ndGsvTGF5b3V0VGVzdENv
bnRyb2xsZXJHdGsuY3BwIHwgICAgNCArKwogV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvbWFj
L0R1bXBSZW5kZXJUcmVlLm1tICAgfCAgICAxICsKIC4uLi9EdW1wUmVuZGVyVHJlZS9tYWMvTGF5
b3V0VGVzdENvbnRyb2xsZXJNYWMubW0gIHwgICAgNiArKysKIC4uLi9EdW1wUmVuZGVyVHJlZS93
aW4vTGF5b3V0VGVzdENvbnRyb2xsZXJXaW4uY3BwIHwgICAgNCArKwogLi4uL0R1bXBSZW5kZXJU
cmVlL3d4L0xheW91dFRlc3RDb250cm9sbGVyV3guY3BwICAgfCAgICA1ICsrLQogMTQgZmlsZXMg
Y2hhbmdlZCwgMTU2IGluc2VydGlvbnMoKyksIDE0IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUg
MTAwNjQ0IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9lZGl0aW5nL2RlbGV0aW5nL2RlbGV0aW9u
VUktc3VjY2Vzc2Z1bC1kZWxldGlvbi1leHBlY3RlZC50eHQKIGNyZWF0ZSBtb2RlIDEwMDY0NCBM
YXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZWRpdGluZy9kZWxldGluZy9kZWxldGlvblVJLXN1Y2Nl
c3NmdWwtZGVsZXRpb24uaHRtbAoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBkY2VkOWY3Li43MDBiMzkzIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTYgQEAKKzIwMTAtMDQtMDUgIE1hcmsgUm93ZSAgPG1yb3dlQGFwcGxlLmNvbT4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0IGNhc2Ug
Zm9yIDxodHRwOi8vd2Via2l0Lm9yZy9iLzM3MTE1PiAvIDxyZGFyOi8vcHJvYmxlbS83ODI5MzMx
Pi4KKyAgICAgICAgUkVHUkVTU0lPTihyNTY5ODkpOiBDcmFzaCBpbiBNYWlsIGluIFdlYkNvcmU6
OlBvc2l0aW9uOjppc0NhbmRpZGF0ZSB3aGVuIGRlbGV0aW5nIGJsb2NrIHVzaW5nIGJsb2NrIGRl
bGV0aW9uIFVJCisKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvZWRpdGluZy9kZWxldGluZy9kZWxl
dGlvblVJLXN1Y2Nlc3NmdWwtZGVsZXRpb24tZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiBwbGF0Zm9ybS9tYWMvZWRpdGluZy9kZWxldGluZy9kZWxldGlvblVJLXN1Y2Nlc3NmdWwtZGVs
ZXRpb24uaHRtbDogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vbWFjL2VkaXRpbmcvZGVsZXRp
bmcvcmVzb3VyY2VzL2RlbGV0aW9uVUktaGVscGVycy5qczoKKyAgICAgICAgKGRlbGV0aW9uVUlE
ZWxldGVCdXR0b25Gb3JFbGVtZW50KToKKyAgICAgICAgKGRldGVybWluZURlbGV0aW9uVUlFeGlz
dGVuY2UpOgorCiAyMDEwLTA0LTA1ICBaaGVueWFvIE1vICA8em1vQGdvb2dsZS5jb20+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9tYWMvZWRpdGluZy9kZWxldGluZy9kZWxldGlvblVJLXN1Y2Nlc3NmdWwtZGVsZXRp
b24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2VkaXRpbmcvZGVsZXRp
bmcvZGVsZXRpb25VSS1zdWNjZXNzZnVsLWRlbGV0aW9uLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40YjI0YmRkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2VkaXRpbmcvZGVsZXRpbmcvZGVsZXRpb25VSS1zdWNjZXNz
ZnVsLWRlbGV0aW9uLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDggQEAKK1RoaXMgdGVzdHMgaWYg
dGhlIGRlbGV0aW9uIFVJIHdpbGwgZGVsZXRlIHRoZSBhc3NvY2lhdGVkIGVsZW1lbnQgd2hlbiBh
Y3RpdmF0ZWQuIFRoaXMgdGVzdCBjYW4gYmUgcnVuIGJ5IERSVCBidXQgbm90IGluIHRoZSBicm93
c2VyLgorCitkb250RGVsZXRlTWVBIEhBUyBkZWxldGlvbiBVSQorZG9udERlbGV0ZU1lQiBIQVMg
ZGVsZXRpb24gVUkKK2RlbGV0ZU1lIEhBUyBkZWxldGlvbiBVSQorVGhpcyBpcyBhbiBlbGVtZW50
IHRoYXQgd2lsbCBzaG93IHRoZSBkZWxldGlvbiBVSSB3aGVuIHRoZSBzZWxlY3Rpb24gaXMgd2l0
aGluIGl0LiBUaGUgdGVzdCB3aWxsIG5vdCBkZWxldGUgdGhpcyBlbGVtZW50LgorVGhpcyBpcyBh
biBlbGVtZW50IHRoYXQgd2lsbCBzaG93IHRoZSBkZWxldGlvbiBVSSB3aGVuIHRoZSBzZWxlY3Rp
b24gaXMgd2l0aGluIGl0LiBUaGUgdGVzdCB3aWxsIG5vdCBkZWxldGUgdGhpcyBlbGVtZW50Lgor
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZWRpdGluZy9kZWxldGluZy9k
ZWxldGlvblVJLXN1Y2Nlc3NmdWwtZGVsZXRpb24uaHRtbCBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L21hYy9lZGl0aW5nL2RlbGV0aW5nL2RlbGV0aW9uVUktc3VjY2Vzc2Z1bC1kZWxldGlvbi5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRlZTY3ZGUKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZWRpdGluZy9kZWxldGluZy9kZWxldGlv
blVJLXN1Y2Nlc3NmdWwtZGVsZXRpb24uaHRtbApAQCAtMCwwICsxLDQ0IEBACis8IURPQ1RZUEUg
SFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorICAg
IDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CisgICAgICAgIC5uZWVkc0RlbGV0aW9uVUkgeyBib3Jk
ZXI6IDFweCBzb2xpZCBibGFjazsgbWluLWhlaWdodDogMTAwcHg7IH0KKyAgICA8L3N0eWxlPgor
ICAgIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvZGVsZXRpb25VSS1oZWxwZXJzLmpzIj48L3Njcmlw
dD4KKyAgICA8c2NyaXB0PgorICAgICAgICBmdW5jdGlvbiB0ZXN0KCkKKyAgICAgICAgeworICAg
ICAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgeworICAgICAgICAgICAg
ICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAgICAg
IC8vIFdlIG1ha2UgdGhlIFdlYlZpZXcgZWRpdGFibGUgaGVyZSBzbyB0aGF0IHRoZSBjb2RlIHBh
dGggcmVzcG9uc2libGUgZm9yCisgICAgICAgICAgICAgICAgLy8gPGh0dHA6Ly93ZWJraXQub3Jn
L2IvMzcxMTU+IC8gPHJkYXI6Ly9wcm9ibGVtLzc4MjkzMzE+IGlzIGV4ZXJjaXNlZC4KKyAgICAg
ICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5zZXRXZWJWaWV3RWRpdGFibGUodHJ1ZSk7
CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGRldGVybWluZURlbGV0aW9uVUlFeGlzdGVu
Y2UoImRvbnREZWxldGVNZUEiKTsKKyAgICAgICAgICAgIGRldGVybWluZURlbGV0aW9uVUlFeGlz
dGVuY2UoImRvbnREZWxldGVNZUIiKTsKKyAgICAgICAgICAgIGRldGVybWluZURlbGV0aW9uVUlF
eGlzdGVuY2UoImRlbGV0ZU1lIik7CisKKyAgICAgICAgICAgIHZhciBkZWxldGVCdXR0b24gPSBk
ZWxldGlvblVJRGVsZXRlQnV0dG9uRm9yRWxlbWVudCgiZGVsZXRlTWUiKTsKKyAgICAgICAgICAg
IHZhciBjbGlja0V2ZW50ID0gZG9jdW1lbnQuY3JlYXRlRXZlbnQoIk1vdXNlRXZlbnRzIik7Cisg
ICAgICAgICAgICBjbGlja0V2ZW50LmluaXRNb3VzZUV2ZW50KCJjbGljayIsIHRydWUsIHRydWUs
IHdpbmRvdywgMCwgMCwgMCwgMCwgMCwgZmFsc2UsIGZhbHNlLCBmYWxzZSwgZmFsc2UsIDAsIG51
bGwpOworICAgICAgICAgICAgZGVsZXRlQnV0dG9uLmRpc3BhdGNoRXZlbnQoY2xpY2tFdmVudCk7
CisKKyAgICAgICAgICAgIGlmIChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGVsZXRlTWUiKSkK
KyAgICAgICAgICAgICAgICBkZWJ1ZygiRVJST1I6IEVsZW1lbnQgZGVsZXRlTWUgd2FzIGZvdW5k
IGluIHRoZSBkb2N1bWVudCBhZnRlciB0aGUgZGVsZXRlIGJ1dHRvbiBpbiB0aGUgZGVsZXRpb24g
VUkgd2FzIGNsaWNrZWQhIik7CisgICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKzwvaGVhZD4KKzxi
b2R5IG9ubG9hZD0idGVzdCgpIj4KKyAgICA8cD5UaGlzIHRlc3RzIGlmIHRoZSBkZWxldGlvbiBV
SSB3aWxsIGRlbGV0ZSB0aGUgYXNzb2NpYXRlZCBlbGVtZW50IHdoZW4gYWN0aXZhdGVkLiBUaGlz
IHRlc3QgY2FuIGJlIHJ1biBieSBEUlQgYnV0IG5vdCBpbiB0aGUgYnJvd3Nlci48L3A+CisgICAg
PGRpdiBpZD0iY29uc29sZSI+PC9kaXY+CisKKyAgICA8ZGl2IGNvbnRlbnRlZGl0YWJsZT0idHJ1
ZSIgc3R5bGU9InBhZGRpbmc6IDFlbTsiPgorICAgICAgICAgICAgPGRpdiBpZD0iZG9udERlbGV0
ZU1lQSIgY2xhc3M9Im5lZWRzRGVsZXRpb25VSSI+VGhpcyBpcyBhbiBlbGVtZW50IHRoYXQgd2ls
bCBzaG93IHRoZSBkZWxldGlvbiBVSSB3aGVuIHRoZSBzZWxlY3Rpb24gaXMgd2l0aGluIGl0LiAg
VGhlIHRlc3QgPGVtPndpbGwgbm90PC9lbT4gZGVsZXRlIHRoaXMgZWxlbWVudC48L2Rpdj4KKyAg
ICAgICAgICAgIDxkaXYgaWQ9ImRlbGV0ZU1lIiBjbGFzcz0ibmVlZHNEZWxldGlvblVJIj5UaGlz
IGlzIGFuIGVsZW1lbnQgdGhhdCB3aWxsIHNob3cgdGhlIGRlbGV0aW9uIFVJIHdoZW4gdGhlIHNl
bGVjdGlvbiBpcyB3aXRoaW4gaXQuICBUaGUgdGVzdCA8ZW0+d2lsbDwvZW0+IGRlbGV0ZSB0aGlz
IGVsZW1lbnQuPC9kaXY+CisgICAgICAgICAgICA8ZGl2IGlkPSJkb250RGVsZXRlTWVCIiBjbGFz
cz0ibmVlZHNEZWxldGlvblVJIj5UaGlzIGlzIGFuIGVsZW1lbnQgdGhhdCB3aWxsIHNob3cgdGhl
IGRlbGV0aW9uIFVJIHdoZW4gdGhlIHNlbGVjdGlvbiBpcyB3aXRoaW4gaXQuICBUaGUgdGVzdCA8
ZW0+d2lsbCBub3Q8L2VtPiBkZWxldGUgdGhpcyBlbGVtZW50LjwvZGl2PgorICAgIDxkaXY+CisK
KzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9l
ZGl0aW5nL2RlbGV0aW5nL3Jlc291cmNlcy9kZWxldGlvblVJLWhlbHBlcnMuanMgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMvZWRpdGluZy9kZWxldGluZy9yZXNvdXJjZXMvZGVsZXRpb25VSS1o
ZWxwZXJzLmpzCmluZGV4IGEyOTQyZDguLjM2MzJmNjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy9lZGl0aW5nL2RlbGV0aW5nL3Jlc291cmNlcy9kZWxldGlvblVJLWhlbHBl
cnMuanMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2VkaXRpbmcvZGVsZXRpbmcvcmVz
b3VyY2VzL2RlbGV0aW9uVUktaGVscGVycy5qcwpAQCAtOCwxMCArOCwxNyBAQCBmdW5jdGlvbiBk
ZWJ1Zyhtc2cpCiAgICAgc3Bhbi5pbm5lckhUTUwgPSBtc2cgKyAnPGJyIC8+JzsKIH0KIAotZnVu
Y3Rpb24gZGV0ZXJtaW5lRGVsZXRpb25VSUV4aXN0ZW5jZShpZCkgeworZnVuY3Rpb24gZGVsZXRp
b25VSURlbGV0ZUJ1dHRvbkZvckVsZW1lbnQoaWQpCit7CiAgICAgdmFyIHNlbCA9IHdpbmRvdy5n
ZXRTZWxlY3Rpb24oKTsKICAgICB2YXIgc2VsRWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKGlkKTsKICAgICBzZWwuc2V0UG9zaXRpb24oc2VsRWxlbWVudCwgMCk7CiAgICAgdmFyIGRl
bGV0ZUJ1dHRvbiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJXZWJLaXQtRWRpdGluZy1EZWxl
dGUtQnV0dG9uIik7CisgICAgcmV0dXJuIGRlbGV0ZUJ1dHRvbjsKK30KKworZnVuY3Rpb24gZGV0
ZXJtaW5lRGVsZXRpb25VSUV4aXN0ZW5jZShpZCkKK3sKKyAgICB2YXIgZGVsZXRlQnV0dG9uID0g
ZGVsZXRpb25VSURlbGV0ZUJ1dHRvbkZvckVsZW1lbnQoaWQpOwogICAgIGRlYnVnKGlkICsgKGRl
bGV0ZUJ1dHRvbiA/ICIgSEFTICIgOiAiIGhhcyBOTyAiKSArICJkZWxldGlvbiBVSSIpOwogfQpk
aWZmIC0tZ2l0IGEvV2ViS2l0L21hYy9DaGFuZ2VMb2cgYi9XZWJLaXQvbWFjL0NoYW5nZUxvZwpp
bmRleCBmZDY0NjQxLi4wOWJmODQyIDEwMDY0NAotLS0gYS9XZWJLaXQvbWFjL0NoYW5nZUxvZwor
KysgYi9XZWJLaXQvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDEwLTA0LTA1ICBN
YXJrIFJvd2UgIDxtcm93ZUBhcHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgVGVzdCBjYXNlIGZvciA8aHR0cDovL3dlYmtpdC5vcmcvYi8z
NzExNT4gLyA8cmRhcjovL3Byb2JsZW0vNzgyOTMzMT4uCisgICAgICAgIFJFR1JFU1NJT04ocjU2
OTg5KTogQ3Jhc2ggaW4gTWFpbCBpbiBXZWJDb3JlOjpQb3NpdGlvbjo6aXNDYW5kaWRhdGUgd2hl
biBkZWxldGluZyBibG9jayB1c2luZyBibG9jayBkZWxldGlvbiBVSQorCisgICAgICAgICogV2Vi
Vmlldy9XZWJIVE1MVmlldy5tbToKKyAgICAgICAgKC1bV2ViSFRNTFZpZXcgX3VwZGF0ZUZvbnRQ
YW5lbF0pOiBBc2sgdGhlIHdpbmRvdyB3aGV0aGVyIGl0IGlzIHRoZSBrZXkgd2luZG93IHJhdGhl
ciB0aGFuIGRvaW5nIHRoZSBjb21wYXJpc29uCisgICAgICAgIG1hbnVhbGx5LiAgVGhpcyBhbGxv
d3MgRHVtcFJlbmRlclRyZWUncyBvdmVycmlkZSBvZiBpc0tleVdpbmRvdyB0byBmb3JjZSB0aGlz
IGNvZGUgcGF0aCB0byBiZSB0YWtlbiBkdXJpbmcgdGVzdHMuCisKIDIwMTAtMDQtMDUgIEFsZXhl
eSBQcm9za3VyeWFrb3YgIDxhcEBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFy
aW4gQWRsZXIuCmRpZmYgLS1naXQgYS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViSFRNTFZpZXcubW0g
Yi9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViSFRNTFZpZXcubW0KaW5kZXggOTE5ZDM4NC4uNGMwNmVi
ZiAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkhUTUxWaWV3Lm1tCisrKyBiL1dl
YktpdC9tYWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbQpAQCAtNTAyNywyMiArNTAyNywyMSBAQCBz
dGF0aWMgQk9PTCB3cml0aW5nRGlyZWN0aW9uS2V5QmluZGluZ3NFbmFibGVkKCkKIHsKICAgICAv
LyBGSVhNRTogTlNUZXh0VmlldyBiYWlscyBvdXQgaWYgYmVjb21pbmcgb3IgcmVzaWduaW5nIGZp
cnN0IHJlc3BvbmRlciwgZm9yIHdoaWNoIGl0IGhhcyBpdmFyIGZsYWdzLiBOb3QKICAgICAvLyBz
dXJlIGlmIHdlIG5lZWQgdG8gZG8gc29tZXRoaW5nIHNpbWlsYXIuCi0gICAgCisKICAgICBpZiAo
IVtzZWxmIF9jYW5FZGl0XSkKICAgICAgICAgcmV0dXJuOwotICAgIAorCiAgICAgTlNXaW5kb3cg
KndpbmRvdyA9IFtzZWxmIHdpbmRvd107CiAgICAgLy8gRklYTUU6IGlzIHRoaXMgZmlyc3QtcmVz
cG9uZGVyIGNoZWNrIGNvcnJlY3Q/IFdoYXQgaGFwcGVucyBpZiBhIHN1YmZyYW1lIGlzIGVkaXRh
YmxlIGFuZCBpcyBmaXJzdCByZXNwb25kZXI/Ci0gICAgaWYgKFtOU0FwcCBrZXlXaW5kb3ddICE9
IHdpbmRvdyB8fCBbd2luZG93IGZpcnN0UmVzcG9uZGVyXSAhPSBzZWxmKQorICAgIGlmICghW3dp
bmRvdyBpc0tleVdpbmRvd10gfHwgW3dpbmRvdyBmaXJzdFJlc3BvbmRlcl0gIT0gc2VsZikKICAg
ICAgICAgcmV0dXJuOwotICAgIAorCiAgICAgYm9vbCBtdWx0aXBsZUZvbnRzID0gZmFsc2U7CiAg
ICAgTlNGb250ICpmb250ID0gbmlsOwogICAgIGlmIChGcmFtZSogY29yZUZyYW1lID0gY29yZShb
c2VsZiBfZnJhbWVdKSkgewogICAgICAgICBpZiAoY29uc3QgU2ltcGxlRm9udERhdGEqIGZkID0g
Y29yZUZyYW1lLT5lZGl0b3IoKS0+Zm9udEZvclNlbGVjdGlvbihtdWx0aXBsZUZvbnRzKSkKICAg
ICAgICAgICAgIGZvbnQgPSBmZC0+Z2V0TlNGb250KCk7CiAgICAgfQotICAgIAogCiAgICAgLy8g
RklYTUU6IGZvciBub3csIHJldHVybiBhIGJvZ3VzIGZvbnQgdGhhdCBkaXN0aW5ndWlzaGVzIHRo
ZSBlbXB0eSBzZWxlY3Rpb24gZnJvbSB0aGUgbm9uLWVtcHR5CiAgICAgLy8gc2VsZWN0aW9uLiBX
ZSBzaG91bGQgYmUgYWJsZSB0byByZW1vdmUgdGhpcyBvbmNlIHRoZSByZXN0IG9mIHRoaXMgY29k
ZSB3b3JrcyBwcm9wZXJseS4KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dl
YktpdFRvb2xzL0NoYW5nZUxvZwppbmRleCAzNmM5NTYwLi45YmMxNmY1IDEwMDY0NAotLS0gYS9X
ZWJLaXRUb29scy9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMjkgQEAKKzIwMTAtMDQtMDUgIE1hcmsgUm93ZSAgPG1yb3dlQGFwcGxlLmNvbT4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0IGNhc2UgZm9y
IDxodHRwOi8vd2Via2l0Lm9yZy9iLzM3MTE1PiAvIDxyZGFyOi8vcHJvYmxlbS83ODI5MzMxPi4K
KyAgICAgICAgUkVHUkVTU0lPTihyNTY5ODkpOiBDcmFzaCBpbiBNYWlsIGluIFdlYkNvcmU6OlBv
c2l0aW9uOjppc0NhbmRpZGF0ZSB3aGVuIGRlbGV0aW5nIGJsb2NrIHVzaW5nIGJsb2NrIGRlbGV0
aW9uIFVJCisKKyAgICAgICAgQWRkIGEgSmF2YVNjcmlwdCBob29rIGluIERSVCB0byBjYWxsIHRo
cm91Z2ggdG8gV2ViVmlldydzIC1zZXRFZGl0YWJsZTouICBUaGlzIGlzIHJlcXVpcmVkIGluIG9y
ZGVyIHRvIHJlcHJvZHVjZQorICAgICAgICB0aGUgY3Jhc2guCisKKyAgICAgICAgKiBEdW1wUmVu
ZGVyVHJlZS9MYXlvdXRUZXN0Q29udHJvbGxlci5jcHA6CisgICAgICAgIChzZXRXZWJWaWV3RWRp
dGFibGVDYWxsYmFjayk6CisgICAgICAgIChMYXlvdXRUZXN0Q29udHJvbGxlcjo6c3RhdGljRnVu
Y3Rpb25zKToKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9MYXlvdXRUZXN0Q29udHJvbGxlci5o
OgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2d0ay9MYXlvdXRUZXN0Q29udHJvbGxlckd0ay5j
cHA6CisgICAgICAgIChMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0V2ViVmlld0VkaXRhYmxlKToK
KyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9tYWMvRHVtcFJlbmRlclRyZWUubW06CisgICAgICAg
IChyZXNldFdlYlZpZXdUb0NvbnNpc3RlbnRTdGF0ZUJlZm9yZVRlc3RpbmcpOgorICAgICAgICAq
IER1bXBSZW5kZXJUcmVlL21hYy9MYXlvdXRUZXN0Q29udHJvbGxlck1hYy5tbToKKyAgICAgICAg
KExheW91dFRlc3RDb250cm9sbGVyOjpzZXRXZWJWaWV3RWRpdGFibGUpOgorICAgICAgICAqIER1
bXBSZW5kZXJUcmVlL3dpbi9MYXlvdXRUZXN0Q29udHJvbGxlcldpbi5jcHA6CisgICAgICAgIChM
YXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0V2ViVmlld0VkaXRhYmxlKToKKyAgICAgICAgKiBEdW1w
UmVuZGVyVHJlZS93eC9MYXlvdXRUZXN0Q29udHJvbGxlcld4LmNwcDoKKyAgICAgICAgKExheW91
dFRlc3RDb250cm9sbGVyOjpzZXRXZWJWaWV3RWRpdGFibGUpOgorICAgICAgICAoTGF5b3V0VGVz
dENvbnRyb2xsZXI6OmxheWVyVHJlZUFzVGV4dCk6CisKIDIwMTAtMDQtMDUgIERhcmluIEFkbGVy
ICA8ZGFyaW5AYXBwbGUuY29tPgogCiAgICAgICAgIElnbm9yZSBtb3JlIGZpbGVzIHRoZSBQeXRo
b24gdG9vbHMgc3RyZXcgYWJvdXQgdGhlIHdvcmtpbmcgZGlyZWN0b3J5LgpkaWZmIC0tZ2l0IGEv
V2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvTGF5b3V0VGVzdENvbnRyb2xsZXIuY3BwIGIvV2Vi
S2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvTGF5b3V0VGVzdENvbnRyb2xsZXIuY3BwCmluZGV4IDI1
NTRmYTQuLjFjYmNjMmIgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL0xh
eW91dFRlc3RDb250cm9sbGVyLmNwcAorKysgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9M
YXlvdXRUZXN0Q29udHJvbGxlci5jcHAKQEAgLTEzMzEsNiArMTMzMSwxOSBAQCBzdGF0aWMgSlNW
YWx1ZVJlZiBhcGlUZXN0R29Ub0N1cnJlbnRCYWNrRm9yd2FyZEl0ZW1DYWxsYmFjayhKU0NvbnRl
eHRSZWYgY29udGV4dAogICAgIHJldHVybiBKU1ZhbHVlTWFrZVVuZGVmaW5lZChjb250ZXh0KTsK
IH0KIAorc3RhdGljIEpTVmFsdWVSZWYgc2V0V2ViVmlld0VkaXRhYmxlQ2FsbGJhY2soSlNDb250
ZXh0UmVmIGNvbnRleHQsIEpTT2JqZWN0UmVmIGZ1bmN0aW9uLCBKU09iamVjdFJlZiB0aGlzT2Jq
ZWN0LCBzaXplX3QgYXJndW1lbnRDb3VudCwgY29uc3QgSlNWYWx1ZVJlZiBhcmd1bWVudHNbXSwg
SlNWYWx1ZVJlZiogZXhjZXB0aW9uKQoreworICAgIC8vIEhhcyBNYWMgaW1wbGVtZW50YXRpb24K
KyAgICBpZiAoYXJndW1lbnRDb3VudCA8IDEpCisgICAgICAgIHJldHVybiBKU1ZhbHVlTWFrZVVu
ZGVmaW5lZChjb250ZXh0KTsKKworICAgIExheW91dFRlc3RDb250cm9sbGVyKiBjb250cm9sbGVy
ID0gc3RhdGljX2Nhc3Q8TGF5b3V0VGVzdENvbnRyb2xsZXIqPihKU09iamVjdEdldFByaXZhdGUo
dGhpc09iamVjdCkpOworICAgIGNvbnRyb2xsZXItPnNldFdlYlZpZXdFZGl0YWJsZShKU1ZhbHVl
VG9Cb29sZWFuKGNvbnRleHQsIGFyZ3VtZW50c1swXSkpOworCisgICAgcmV0dXJuIEpTVmFsdWVN
YWtlVW5kZWZpbmVkKGNvbnRleHQpOworfQorCisKIC8vIFN0YXRpYyBWYWx1ZXMKIAogc3RhdGlj
IEpTVmFsdWVSZWYgZ2V0R2xvYmFsRmxhZ0NhbGxiYWNrKEpTQ29udGV4dFJlZiBjb250ZXh0LCBK
U09iamVjdFJlZiB0aGlzT2JqZWN0LCBKU1N0cmluZ1JlZiBwcm9wZXJ0eU5hbWUsIEpTVmFsdWVS
ZWYqIGV4Y2VwdGlvbikKQEAgLTE0NjksNDAgKzE0ODIsNDEgQEAgSlNTdGF0aWNGdW5jdGlvbiog
TGF5b3V0VGVzdENvbnRyb2xsZXI6OnN0YXRpY0Z1bmN0aW9ucygpCiAgICAgICAgIHsgInNldEF1
dGhlbnRpY2F0aW9uUGFzc3dvcmQiLCBzZXRBdXRoZW50aWNhdGlvblBhc3N3b3JkQ2FsbGJhY2ss
IGtKU1Byb3BlcnR5QXR0cmlidXRlUmVhZE9ubHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnRE
ZWxldGUgfSwKICAgICAgICAgeyAic2V0QXV0aGVudGljYXRpb25Vc2VybmFtZSIsIHNldEF1dGhl
bnRpY2F0aW9uVXNlcm5hbWVDYWxsYmFjaywga0pTUHJvcGVydHlBdHRyaWJ1dGVSZWFkT25seSB8
IGtKU1Byb3BlcnR5QXR0cmlidXRlRG9udERlbGV0ZSB9LAogICAgICAgICB7ICJzZXRBdXRob3JB
bmRVc2VyU3R5bGVzRW5hYmxlZCIsIHNldEF1dGhvckFuZFVzZXJTdHlsZXNFbmFibGVkQ2FsbGJh
Y2ssIGtKU1Byb3BlcnR5QXR0cmlidXRlUmVhZE9ubHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURv
bnREZWxldGUgfSwKKyAgICAgICAgeyAic2V0Q2FjaGVNb2RlbCIsIHNldENhY2hlTW9kZWxDYWxs
YmFjaywga0pTUHJvcGVydHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3BlcnR5QXR0cmlidXRl
RG9udERlbGV0ZSB9LAogICAgICAgICB7ICJzZXRDYWxsQ2xvc2VPbldlYlZpZXdzIiwgc2V0Q2Fs
bENsb3NlT25XZWJWaWV3c0NhbGxiYWNrLCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwg
a0pTUHJvcGVydHlBdHRyaWJ1dGVEb250RGVsZXRlIH0sCiAgICAgICAgIHsgInNldENhbk9wZW5X
aW5kb3dzIiwgc2V0Q2FuT3BlbldpbmRvd3NDYWxsYmFjaywga0pTUHJvcGVydHlBdHRyaWJ1dGVS
ZWFkT25seSB8IGtKU1Byb3BlcnR5QXR0cmlidXRlRG9udERlbGV0ZSB9LAotICAgICAgICB7ICJz
ZXRDYWNoZU1vZGVsIiwgc2V0Q2FjaGVNb2RlbENhbGxiYWNrLCBrSlNQcm9wZXJ0eUF0dHJpYnV0
ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVEb250RGVsZXRlIH0sCiAgICAgICAgIHsg
InNldENsb3NlUmVtYWluaW5nV2luZG93c1doZW5Db21wbGV0ZSIsIHNldENsb3NlUmVtYWluaW5n
V2luZG93c1doZW5Db21wbGV0ZUNhbGxiYWNrLCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5
IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVEb250RGVsZXRlIH0sCiAgICAgICAgIHsgInNldEN1c3Rv
bVBvbGljeURlbGVnYXRlIiwgc2V0Q3VzdG9tUG9saWN5RGVsZWdhdGVDYWxsYmFjaywga0pTUHJv
cGVydHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3BlcnR5QXR0cmlidXRlRG9udERlbGV0ZSB9
LAogICAgICAgICB7ICJzZXREYXRhYmFzZVF1b3RhIiwgc2V0RGF0YWJhc2VRdW90YUNhbGxiYWNr
LCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVEb250
RGVsZXRlIH0sIAogICAgICAgICB7ICJzZXREb21haW5SZWxheGF0aW9uRm9yYmlkZGVuRm9yVVJM
U2NoZW1lIiwgc2V0RG9tYWluUmVsYXhhdGlvbkZvcmJpZGRlbkZvclVSTFNjaGVtZUNhbGxiYWNr
LCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVEb250
RGVsZXRlIH0sCisgICAgICAgIHsgInNldEZyYW1lRmxhdHRlbmluZ0VuYWJsZWQiLCBzZXRGcmFt
ZUZsYXR0ZW5pbmdFbmFibGVkQ2FsbGJhY2ssIGtKU1Byb3BlcnR5QXR0cmlidXRlUmVhZE9ubHkg
fCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwKICAgICAgICAgeyAic2V0R2VvbG9j
YXRpb25QZXJtaXNzaW9uIiwgc2V0R2VvbG9jYXRpb25QZXJtaXNzaW9uQ2FsbGJhY2ssIGtKU1By
b3BlcnR5QXR0cmlidXRlUmVhZE9ubHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUg
fSwKICAgICAgICAgeyAic2V0SGFuZGxlc0F1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlcyIsIHNldEhh
bmRsZXNBdXRoZW50aWNhdGlvbkNoYWxsZW5nZXNDYWxsYmFjaywga0pTUHJvcGVydHlBdHRyaWJ1
dGVSZWFkT25seSB8IGtKU1Byb3BlcnR5QXR0cmlidXRlRG9udERlbGV0ZSB9LAotICAgICAgICB7
ICJzZXRQT1NJWExvY2FsZSIsIHNldFBPU0lYTG9jYWxlQ2FsbGJhY2ssIGtKU1Byb3BlcnR5QXR0
cmlidXRlUmVhZE9ubHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwKICAgICAg
ICAgeyAic2V0SWNvbkRhdGFiYXNlRW5hYmxlZCIsIHNldEljb25EYXRhYmFzZUVuYWJsZWRDYWxs
YmFjaywga0pTUHJvcGVydHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3BlcnR5QXR0cmlidXRl
RG9udERlbGV0ZSB9LAogICAgICAgICB7ICJzZXRKYXZhU2NyaXB0UHJvZmlsaW5nRW5hYmxlZCIs
IHNldEphdmFTY3JpcHRQcm9maWxpbmdFbmFibGVkQ2FsbGJhY2ssIGtKU1Byb3BlcnR5QXR0cmli
dXRlUmVhZE9ubHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwKICAgICAgICAg
eyAic2V0TWFpbkZyYW1lSXNGaXJzdFJlc3BvbmRlciIsIHNldE1haW5GcmFtZUlzRmlyc3RSZXNw
b25kZXJDYWxsYmFjaywga0pTUHJvcGVydHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3BlcnR5
QXR0cmlidXRlRG9udERlbGV0ZSB9LAotICAgICAgICB7ICJzZXRNb2NrR2VvbG9jYXRpb25Qb3Np
dGlvbiIsIHNldE1vY2tHZW9sb2NhdGlvblBvc2l0aW9uQ2FsbGJhY2ssIGtKU1Byb3BlcnR5QXR0
cmlidXRlUmVhZE9ubHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwKICAgICAg
ICAgeyAic2V0TW9ja0dlb2xvY2F0aW9uRXJyb3IiLCBzZXRNb2NrR2VvbG9jYXRpb25FcnJvckNh
bGxiYWNrLCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1
dGVEb250RGVsZXRlIH0sCisgICAgICAgIHsgInNldE1vY2tHZW9sb2NhdGlvblBvc2l0aW9uIiwg
c2V0TW9ja0dlb2xvY2F0aW9uUG9zaXRpb25DYWxsYmFjaywga0pTUHJvcGVydHlBdHRyaWJ1dGVS
ZWFkT25seSB8IGtKU1Byb3BlcnR5QXR0cmlidXRlRG9udERlbGV0ZSB9LAogICAgICAgICB7ICJz
ZXROZXdXaW5kb3dzQ29weUJhY2tGb3J3YXJkTGlzdCIsIHNldE5ld1dpbmRvd3NDb3B5QmFja0Zv
cndhcmRMaXN0Q2FsbGJhY2ssIGtKU1Byb3BlcnR5QXR0cmlidXRlUmVhZE9ubHkgfCBrSlNQcm9w
ZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwKKyAgICAgICAgeyAic2V0UE9TSVhMb2NhbGUiLCBz
ZXRQT1NJWExvY2FsZUNhbGxiYWNrLCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pT
UHJvcGVydHlBdHRyaWJ1dGVEb250RGVsZXRlIH0sCiAgICAgICAgIHsgInNldFBlcnNpc3RlbnRV
c2VyU3R5bGVTaGVldExvY2F0aW9uIiwgc2V0UGVyc2lzdGVudFVzZXJTdHlsZVNoZWV0TG9jYXRp
b25DYWxsYmFjaywga0pTUHJvcGVydHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3BlcnR5QXR0
cmlidXRlRG9udERlbGV0ZSB9LAogICAgICAgICB7ICJzZXRQb3B1cEJsb2NraW5nRW5hYmxlZCIs
IHNldFBvcHVwQmxvY2tpbmdFbmFibGVkQ2FsbGJhY2ssIGtKU1Byb3BlcnR5QXR0cmlidXRlUmVh
ZE9ubHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwKICAgICAgICAgeyAic2V0
UHJpdmF0ZUJyb3dzaW5nRW5hYmxlZCIsIHNldFByaXZhdGVCcm93c2luZ0VuYWJsZWRDYWxsYmFj
aywga0pTUHJvcGVydHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3BlcnR5QXR0cmlidXRlRG9u
dERlbGV0ZSB9LAotICAgICAgICB7ICJzZXRYU1NBdWRpdG9yRW5hYmxlZCIsIHNldFhTU0F1ZGl0
b3JFbmFibGVkQ2FsbGJhY2ssIGtKU1Byb3BlcnR5QXR0cmlidXRlUmVhZE9ubHkgfCBrSlNQcm9w
ZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwKLSAgICAgICAgeyAic2V0U3BhdGlhbE5hdmlnYXRp
b25FbmFibGVkIiwgc2V0U3BhdGlhbE5hdmlnYXRpb25FbmFibGVkQ2FsbGJhY2ssIGtKU1Byb3Bl
cnR5QXR0cmlidXRlUmVhZE9ubHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwK
LSAgICAgICAgeyAic2V0RnJhbWVGbGF0dGVuaW5nRW5hYmxlZCIsIHNldEZyYW1lRmxhdHRlbmlu
Z0VuYWJsZWRDYWxsYmFjaywga0pTUHJvcGVydHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3Bl
cnR5QXR0cmlidXRlRG9udERlbGV0ZSB9LAogICAgICAgICB7ICJzZXRTZWxlY3RUcmFpbGluZ1do
aXRlc3BhY2VFbmFibGVkIiwgc2V0U2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5hYmxlZENhbGxi
YWNrLCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVE
b250RGVsZXRlIH0sCiAgICAgICAgIHsgInNldFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCIsIHNl
dFNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZENhbGxiYWNrLCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZVJl
YWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVEb250RGVsZXRlIH0sCisgICAgICAgIHsgInNl
dFNwYXRpYWxOYXZpZ2F0aW9uRW5hYmxlZCIsIHNldFNwYXRpYWxOYXZpZ2F0aW9uRW5hYmxlZENh
bGxiYWNrLCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1
dGVEb250RGVsZXRlIH0sCiAgICAgICAgIHsgInNldFN0b3BQcm92aXNpb25hbEZyYW1lTG9hZHMi
LCBzZXRTdG9wUHJvdmlzaW9uYWxGcmFtZUxvYWRzQ2FsbGJhY2ssIGtKU1Byb3BlcnR5QXR0cmli
dXRlUmVhZE9ubHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwKICAgICAgICAg
eyAic2V0VGFiS2V5Q3ljbGVzVGhyb3VnaEVsZW1lbnRzIiwgc2V0VGFiS2V5Q3ljbGVzVGhyb3Vn
aEVsZW1lbnRzQ2FsbGJhY2ssIGtKU1Byb3BlcnR5QXR0cmlidXRlUmVhZE9ubHkgfCBrSlNQcm9w
ZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwKICAgICAgICAgeyAic2V0VGltZWxpbmVQcm9maWxp
bmdFbmFibGVkIiwgc2V0VGltZWxpbmVQcm9maWxpbmdFbmFibGVkQ2FsbGJhY2ssIGtKU1Byb3Bl
cnR5QXR0cmlidXRlUmVhZE9ubHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwK
ICAgICAgICAgeyAic2V0VXNlRGFzaGJvYXJkQ29tcGF0aWJpbGl0eU1vZGUiLCBzZXRVc2VEYXNo
Ym9hcmRDb21wYXRpYmlsaXR5TW9kZUNhbGxiYWNrLCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZVJlYWRP
bmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVEb250RGVsZXRlIH0sCiAgICAgICAgIHsgInNldFVz
ZXJTdHlsZVNoZWV0RW5hYmxlZCIsIHNldFVzZXJTdHlsZVNoZWV0RW5hYmxlZENhbGxiYWNrLCBr
SlNQcm9wZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVEb250RGVs
ZXRlIH0sCiAgICAgICAgIHsgInNldFVzZXJTdHlsZVNoZWV0TG9jYXRpb24iLCBzZXRVc2VyU3R5
bGVTaGVldExvY2F0aW9uQ2FsbGJhY2ssIGtKU1Byb3BlcnR5QXR0cmlidXRlUmVhZE9ubHkgfCBr
SlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwKKyAgICAgICAgeyAic2V0V2ViVmlld0Vk
aXRhYmxlIiwgc2V0V2ViVmlld0VkaXRhYmxlQ2FsbGJhY2ssIGtKU1Byb3BlcnR5QXR0cmlidXRl
UmVhZE9ubHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwKICAgICAgICAgeyAi
c2V0V2lsbFNlbmRSZXF1ZXN0Q2xlYXJIZWFkZXIiLCBzZXRXaWxsU2VuZFJlcXVlc3RDbGVhckhl
YWRlckNhbGxiYWNrLCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlB
dHRyaWJ1dGVEb250RGVsZXRlIH0sCiAgICAgICAgIHsgInNldFdpbGxTZW5kUmVxdWVzdFJldHVy
bnNOdWxsIiwgc2V0V2lsbFNlbmRSZXF1ZXN0UmV0dXJuc051bGxDYWxsYmFjaywga0pTUHJvcGVy
dHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3BlcnR5QXR0cmlidXRlRG9udERlbGV0ZSB9LAog
ICAgICAgICB7ICJzZXRXaWxsU2VuZFJlcXVlc3RSZXR1cm5zTnVsbE9uUmVkaXJlY3QiLCBzZXRX
aWxsU2VuZFJlcXVlc3RSZXR1cm5zTnVsbE9uUmVkaXJlY3RDYWxsYmFjaywga0pTUHJvcGVydHlB
dHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3BlcnR5QXR0cmlidXRlRG9udERlbGV0ZSB9LAogICAg
ICAgICB7ICJzZXRXaW5kb3dJc0tleSIsIHNldFdpbmRvd0lzS2V5Q2FsbGJhY2ssIGtKU1Byb3Bl
cnR5QXR0cmlidXRlUmVhZE9ubHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwK
KyAgICAgICAgeyAic2V0WFNTQXVkaXRvckVuYWJsZWQiLCBzZXRYU1NBdWRpdG9yRW5hYmxlZENh
bGxiYWNrLCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1
dGVEb250RGVsZXRlIH0sCiAgICAgICAgIHsgInNob3dXZWJJbnNwZWN0b3IiLCBzaG93V2ViSW5z
cGVjdG9yQ2FsbGJhY2ssIGtKU1Byb3BlcnR5QXR0cmlidXRlUmVhZE9ubHkgfCBrSlNQcm9wZXJ0
eUF0dHJpYnV0ZURvbnREZWxldGUgfSwKICAgICAgICAgeyAidGVzdE9uc2NyZWVuIiwgdGVzdE9u
c2NyZWVuQ2FsbGJhY2ssIGtKU1Byb3BlcnR5QXR0cmlidXRlUmVhZE9ubHkgfCBrSlNQcm9wZXJ0
eUF0dHJpYnV0ZURvbnREZWxldGUgfSwKICAgICAgICAgeyAidGVzdFJlcGFpbnQiLCB0ZXN0UmVw
YWludENhbGxiYWNrLCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlB
dHRyaWJ1dGVEb250RGVsZXRlIH0sCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9EdW1wUmVuZGVy
VHJlZS9MYXlvdXRUZXN0Q29udHJvbGxlci5oIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUv
TGF5b3V0VGVzdENvbnRyb2xsZXIuaAppbmRleCAzYzcwZjk4Li5hNWM4ZmExIDEwMDY0NAotLS0g
YS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9MYXlvdXRUZXN0Q29udHJvbGxlci5oCisrKyBi
L1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL0xheW91dFRlc3RDb250cm9sbGVyLmgKQEAgLTI0
MCw3ICsyNDAsOSBAQCBwdWJsaWM6CiAgICAgdm9pZCBldmFsdWF0ZVNjcmlwdEluSXNvbGF0ZWRX
b3JsZCh1bnNpZ25lZCB3b3JsZElkLCBKU09iamVjdFJlZiBnbG9iYWxPYmplY3QsIEpTU3RyaW5n
UmVmIHNjcmlwdCk7CiAKICAgICB2b2lkIHNldFBPU0lYTG9jYWxlKEpTU3RyaW5nUmVmIGxvY2Fs
ZSk7Ci0gICAgCisKKyAgICB2b2lkIHNldFdlYlZpZXdFZGl0YWJsZShib29sKTsKKwogICAgIC8v
IFRoZSBmb2xsb3dpbmcgQVBJIHRlc3QgZnVuY3Rpb25zIHNob3VsZCBwcm9iYWJseSBiZSBtb3Zl
ZCB0byBwbGF0Zm9ybS1zcGVjaWZpYyAKICAgICAvLyB1bml0IHRlc3RzIG91dHNpZGUgb2YgRFJU
IG9uY2UgdGhleSBleGlzdC4KICAgICB2b2lkIGFwaVRlc3ROZXdXaW5kb3dEYXRhTG9hZEJhc2VV
UkwoSlNTdHJpbmdSZWYgdXRmOERhdGEsIEpTU3RyaW5nUmVmIGJhc2VVUkwpOwpkaWZmIC0tZ2l0
IGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvZ3RrL0xheW91dFRlc3RDb250cm9sbGVyR3Rr
LmNwcCBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL2d0ay9MYXlvdXRUZXN0Q29udHJvbGxl
ckd0ay5jcHAKaW5kZXggN2MxYjZlNy4uYzQzNjdjNCAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMv
RHVtcFJlbmRlclRyZWUvZ3RrL0xheW91dFRlc3RDb250cm9sbGVyR3RrLmNwcAorKysgYi9XZWJL
aXRUb29scy9EdW1wUmVuZGVyVHJlZS9ndGsvTGF5b3V0VGVzdENvbnRyb2xsZXJHdGsuY3BwCkBA
IC02NDMsMyArNjQzLDcgQEAgdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6YXBpVGVzdEdvVG9D
dXJyZW50QmFja0ZvcndhcmRJdGVtKCkKIHsKIAogfQorCit2b2lkIExheW91dFRlc3RDb250cm9s
bGVyOjpzZXRXZWJWaWV3RWRpdGFibGUoYm9vbCkKK3sKK30KZGlmZiAtLWdpdCBhL1dlYktpdFRv
b2xzL0R1bXBSZW5kZXJUcmVlL21hYy9EdW1wUmVuZGVyVHJlZS5tbSBiL1dlYktpdFRvb2xzL0R1
bXBSZW5kZXJUcmVlL21hYy9EdW1wUmVuZGVyVHJlZS5tbQppbmRleCAzNGNhYmE0Li4wNTcwNmQz
IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvRHVtcFJlbmRlclRy
ZWUubW0KKysrIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0R1bXBSZW5kZXJUcmVl
Lm1tCkBAIC0xMTQyLDYgKzExNDIsNyBAQCBzdGF0aWMgYm9vbCBzaG91bGRFbmFibGVEZXZlbG9w
ZXJFeHRyYXMoY29uc3QgY2hhciogcGF0aE9yVVJMKQogc3RhdGljIHZvaWQgcmVzZXRXZWJWaWV3
VG9Db25zaXN0ZW50U3RhdGVCZWZvcmVUZXN0aW5nKCkKIHsKICAgICBXZWJWaWV3ICp3ZWJWaWV3
ID0gW21haW5GcmFtZSB3ZWJWaWV3XTsKKyAgICBbd2ViVmlldyBzZXRFZGl0YWJsZTpOT107CiAg
ICAgWyhFZGl0aW5nRGVsZWdhdGUgKilbd2ViVmlldyBlZGl0aW5nRGVsZWdhdGVdIHNldEFjY2Vw
dHNFZGl0aW5nOllFU107CiAgICAgW3dlYlZpZXcgbWFrZVRleHRTdGFuZGFyZFNpemU6bmlsXTsK
ICAgICBbd2ViVmlldyByZXNldFBhZ2Vab29tOm5pbF07CmRpZmYgLS1naXQgYS9XZWJLaXRUb29s
cy9EdW1wUmVuZGVyVHJlZS9tYWMvTGF5b3V0VGVzdENvbnRyb2xsZXJNYWMubW0gYi9XZWJLaXRU
b29scy9EdW1wUmVuZGVyVHJlZS9tYWMvTGF5b3V0VGVzdENvbnRyb2xsZXJNYWMubW0KaW5kZXgg
ZjMzMjYzMC4uNDFmZmU2OCAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUv
bWFjL0xheW91dFRlc3RDb250cm9sbGVyTWFjLm1tCisrKyBiL1dlYktpdFRvb2xzL0R1bXBSZW5k
ZXJUcmVlL21hYy9MYXlvdXRUZXN0Q29udHJvbGxlck1hYy5tbQpAQCAtNzExLDMgKzcxMSw5IEBA
IHZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OmFwaVRlc3RHb1RvQ3VycmVudEJhY2tGb3J3YXJk
SXRlbSgpCiAgICAgV2ViVmlldyAqdmlldyA9IFttYWluRnJhbWUgd2ViVmlld107CiAgICAgW3Zp
ZXcgZ29Ub0JhY2tGb3J3YXJkSXRlbTpbW3ZpZXcgYmFja0ZvcndhcmRMaXN0XSBjdXJyZW50SXRl
bV1dOwogfQorCit2b2lkIExheW91dFRlc3RDb250cm9sbGVyOjpzZXRXZWJWaWV3RWRpdGFibGUo
Ym9vbCBlZGl0YWJsZSkKK3sKKyAgICBXZWJWaWV3ICp2aWV3ID0gW21haW5GcmFtZSB3ZWJWaWV3
XTsKKyAgICBbdmlldyBzZXRFZGl0YWJsZTplZGl0YWJsZV07Cit9CmRpZmYgLS1naXQgYS9XZWJL
aXRUb29scy9EdW1wUmVuZGVyVHJlZS93aW4vTGF5b3V0VGVzdENvbnRyb2xsZXJXaW4uY3BwIGIv
V2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvd2luL0xheW91dFRlc3RDb250cm9sbGVyV2luLmNw
cAppbmRleCBhZDc1N2U0Li4xZTRlYjEzIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9EdW1wUmVu
ZGVyVHJlZS93aW4vTGF5b3V0VGVzdENvbnRyb2xsZXJXaW4uY3BwCisrKyBiL1dlYktpdFRvb2xz
L0R1bXBSZW5kZXJUcmVlL3dpbi9MYXlvdXRUZXN0Q29udHJvbGxlcldpbi5jcHAKQEAgLTEyMTEs
MyArMTIxMSw3IEBAIHZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OmFwaVRlc3RHb1RvQ3VycmVu
dEJhY2tGb3J3YXJkSXRlbSgpCiAgICAgQk9PTCBzdWNjZXNzOwogICAgIHdlYlZpZXctPmdvVG9C
YWNrRm9yd2FyZEl0ZW0oaXRlbS5nZXQoKSwgJnN1Y2Nlc3MpOwogfQorCit2b2lkIExheW91dFRl
c3RDb250cm9sbGVyOjpzZXRXZWJWaWV3RWRpdGFibGUoYm9vbCkKK3sKK30KZGlmZiAtLWdpdCBh
L1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3d4L0xheW91dFRlc3RDb250cm9sbGVyV3guY3Bw
IGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvd3gvTGF5b3V0VGVzdENvbnRyb2xsZXJXeC5j
cHAKaW5kZXggM2FkNTkyZi4uZDlhODQ4YiAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvRHVtcFJl
bmRlclRyZWUvd3gvTGF5b3V0VGVzdENvbnRyb2xsZXJXeC5jcHAKKysrIGIvV2ViS2l0VG9vbHMv
RHVtcFJlbmRlclRyZWUvd3gvTGF5b3V0VGVzdENvbnRyb2xsZXJXeC5jcHAKQEAgLTM5Nyw2ICsz
OTcsMTAgQEAgdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0U3BhdGlhbE5hdmlnYXRpb25F
bmFibGVkKGJvb2wpCiAKIH0KIAordm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0V2ViVmll
d0VkaXRhYmxlKGJvb2wpCit7Cit9CisKIGJvb2wgTGF5b3V0VGVzdENvbnRyb2xsZXI6OmNhbGxT
aG91bGRDbG9zZU9uV2ViVmlldygpCiB7CiAgICAgcmV0dXJuIGZhbHNlOwpAQCAtNDA2LDQgKzQx
MCwzIEBAIEpTUmV0YWluUHRyPEpTU3RyaW5nUmVmPiBMYXlvdXRUZXN0Q29udHJvbGxlcjo6bGF5
ZXJUcmVlQXNUZXh0KCkgY29uc3QKIHsKICAgICByZXR1cm4gMDsKIH0KLQotLSAKMS43LjAuNC4z
NjAuZzExNzY2YwoK
</data>
<flag name="review"
          id="36113"
          type_id="1"
          status="+"
          setter="adele"
    />
          </attachment>
      

    </bug>

</bugzilla>