<?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>214017</bug_id>
          
          <creation_ts>2020-07-06 16:45:07 -0700</creation_ts>
          <short_desc>Web content process hangs in AccessibilityRenderObject::setSelectedVisiblePositionRange in some corner cases.</short_desc>
          <delta_ts>2020-07-07 19:26:06 -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>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>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=214068</see_also>
          <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="Andres Gonzalez">andresg_22</reporter>
          <assigned_to name="Andres Gonzalez">andresg_22</assigned_to>
          <cc>aboxhall</cc>
    
    <cc>apinheiro</cc>
    
    <cc>cfleizach</cc>
    
    <cc>dmazzoni</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>jcraig</cc>
    
    <cc>jdiggs</cc>
    
    <cc>samuel_white</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1669236</commentid>
    <comment_count>0</comment_count>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2020-07-06 16:45:07 -0700</bug_when>
    <thetext>Web content process hangs in AccessibilityRenderObject::setSelectedVisiblePositionRange in some corner cases.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1669242</commentid>
    <comment_count>1</comment_count>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2020-07-06 16:56:35 -0700</bug_when>
    <thetext>&lt;rdar://problem/63000006&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1669251</commentid>
    <comment_count>2</comment_count>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2020-07-06 17:04:44 -0700</bug_when>
    <thetext>Relevant output from sample:

Sampling process 12998 for 3 seconds with 1 millisecond of run time between samples
Sampling completed, processing symbols...
Analysis of sampling com.apple.WebKit.WebContent.Development (pid 12998) every 1 millisecond
Process:         com.apple.WebKit.WebContent.Development [12998]
Path:            /System/Library/Frameworks/WebKit.framework/Versions/A/XPCServices/com.apple.WebKit.WebContent.Development.xpc/Contents/MacOS/com.apple.WebKit.WebContent.Development
Load Address:    0x1058ec000
Identifier:      com.apple.WebKit.WebContent.Development

Call graph:
    2438 Thread_161694   DispatchQueue_1: com.apple.main-thread  (serial)
    + 2438 start  (in libdyld.dylib) + 1  [0x7fff6edd3221]
    +   2438 WebKit::XPCServiceMain(int, char const**)  (in WebKit) + 578  [0x7fff3e059439]
    +     2438 xpc_main  (in libxpc.dylib) + 437  [0x7fff6f046e54]
    +       2438 _xpc_objc_main  (in libxpc.dylib) + 760  [0x7fff6f04738b]
    +         2438 -[NSRunLoop(NSRunLoop) run]  (in Foundation) + 76  [0x7fff2d8fb6a3]
    +           2438 -[NSRunLoop(NSRunLoop) runMode:beforeDate:]  (in Foundation) + 212  [0x7fff2d86a5e0]
    +             2438 CFRunLoopRunSpecific  (in CoreFoundation) + 514  [0x7fff2ad9fe2b]
    +               2438 __CFRunLoopRun  (in CoreFoundation) + 1983  [0x7fff2ada0c58]
    +                 2438 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__  (in CoreFoundation) + 9  [0x7fff2addefcf]
    +                   2438 _dispatch_main_queue_callback_4CF  (in libdispatch.dylib) + 940  [0x7fff6ed882cd]
    +                     2438 _dispatch_client_callout  (in libdispatch.dylib) + 8  [0x7fff6ed7c10f]
    +                       2438 _dispatch_call_block_and_release  (in libdispatch.dylib) + 12  [0x7fff6ed7af2d]
    +                         2438 -[WebAccessibilityObjectWrapper _accessibilitySetValue:forAttribute:]  (in WebCore) + 440  [0x7fff3d89af38]
    +                           2438 WebCore::AccessibilityRenderObject::setSelectedVisiblePositionRange(WebCore::VisiblePositionRange const&amp;) const  (in WebCore) + 945  [0x7fff3c903361]
    +                             2438 WebCore::FrameSelection::moveTo(WebCore::VisiblePosition const&amp;, WebCore::EUserTriggered, WebCore::FrameSelection::CursorAlignOnScroll)  (in WebCore) + 298  [0x7fff3baa17da]
    +                               2438 WebCore::FrameSelection::setSelection(WebCore::VisibleSelection const&amp;, WTF::OptionSet&lt;WebCore::FrameSelection::SetSelectionOption&gt;, WebCore::AXTextStateChangeIntent, WebCore::FrameSelection::CursorAlignOnScroll, WebCore::TextGranularity)  (in WebCore) + 525  [0x7fff3ccef9ad]
    +                                 2438 WebKit::WebPage::sendEditorStateUpdate()  (in WebKit) + 79  [0x7fff3e44011d]
    +                                   2438 WebKit::WebPage::editorState(WebKit::WebPage::ShouldPerformLayout) const  (in WebKit) + 1128  [0x7fff3e43801a]
    +                                     2438 WebKit::WebPage::getPlatformEditorState(WebCore::Frame&amp;, WebKit::EditorState&amp;) const  (in WebKit) + 787  [0x7fff3e2f9701]
    +                                       2438 WebCore::Editor::stringForCandidateRequest() const  (in WebCore) + 123  [0x7fff3cd0d4cb]
    +                                         1930 WebCore::wordRangeFromPosition(WebCore::VisiblePosition const&amp;)  (in WebCore) + 198  [0x7fff3cd87de6]
...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1669252</commentid>
    <comment_count>3</comment_count>
      <attachid>403639</attachid>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2020-07-06 17:05:18 -0700</bug_when>
    <thetext>Created attachment 403639
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1669259</commentid>
    <comment_count>4</comment_count>
      <attachid>403639</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2020-07-06 17:15:07 -0700</bug_when>
    <thetext>Comment on attachment 403639
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=403639&amp;action=review

&gt; Source/WebCore/ChangeLog:12
&gt; +        * accessibility/AccessibilityRenderObject.cpp:

any chance to test this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1669468</commentid>
    <comment_count>5</comment_count>
      <attachid>403707</attachid>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2020-07-07 10:54:04 -0700</bug_when>
    <thetext>Created attachment 403707
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1669496</commentid>
    <comment_count>6</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-07-07 12:50:00 -0700</bug_when>
    <thetext>Committed r264037: &lt;https://trac.webkit.org/changeset/264037&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 403707.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>403639</attachid>
            <date>2020-07-06 17:05:18 -0700</date>
            <delta_ts>2020-07-07 10:54:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-214017-20200706200517.patch</filename>
            <type>text/plain</type>
            <size>3299</size>
            <attacher name="Andres Gonzalez">andresg_22</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYzOTY2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWQ2NmMyMjc1OGQ0ZjVj
YjRjYTg0MjZiYmUzMDA0YmMyMDNlMzJlNS4uNzIzNWQ0NzNhOWE5YTFjMjk3MzFkYTQzMzYxOTU5
NDA4ZjdjODA2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDIwLTA3LTA2ICBBbmRy
ZXMgR29uemFsZXogIDxhbmRyZXNnXzIyQGFwcGxlLmNvbT4KKworICAgICAgICBXZWIgY29udGVu
dCBwcm9jZXNzIGhhbmdzIGluIEFjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3Q6OnNldFNlbGVjdGVk
VmlzaWJsZVBvc2l0aW9uUmFuZ2UgaW4gc29tZSBjb3JuZXIgY2FzZXMuCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTQwMTcKKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzYzMDAwMDA2PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIEVuc3VyZXMgdGhhdCB0aGUgc2VsZWN0aW9uIHN0YXJ0IHBvc2l0aW9uIGlz
IGNvbnRhaW5lZCBpbiB0aGUgZWRpdGFibGUKKyAgICAgICAgZWxlbWVudCBpbiB3aGljaCB0aGUg
c2VsZWN0aW9uIGlzIGJlaW5nIHNldC4KKworICAgICAgICAqIGFjY2Vzc2liaWxpdHkvQWNjZXNz
aWJpbGl0eVJlbmRlck9iamVjdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBY2Nlc3NpYmlsaXR5
UmVuZGVyT2JqZWN0OjpzZXRTZWxlY3RlZFZpc2libGVQb3NpdGlvblJhbmdlIGNvbnN0KToKKwog
MjAyMC0wNy0wNiAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAK
ICAgICAgICAgW0dUS11bV1BFXSBDaGFuZ2UgdGhlIGNvb2tpZXMgYWNjZXB0IHBvbGljeSB3aGVu
IElUUCBpcyBlbmFibGVkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5
L0FjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJp
bGl0eS9BY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0LmNwcAppbmRleCAzYzVlYTAzZGMxNjgyZTc2
MGQzMWI5ZDY2ZmZhYmY5ODczOTYyOWIzLi5kMWM4M2U2ZWQzMTllMTc3MjIzZTczZjQ3ODhiNjhh
MDM2Nzc5ZWM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vz
c2liaWxpdHlSZW5kZXJPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxp
dHkvQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdC5jcHAKQEAgLTIyMTksMjYgKzIyMTksMzEgQEAg
dm9pZCBBY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0OjpzZXRTZWxlY3RlZFZpc2libGVQb3NpdGlv
blJhbmdlKGNvbnN0IFZpc2libGVQb3MKIHsKICAgICBpZiAocmFuZ2Uuc3RhcnQuaXNOdWxsKCkg
fHwgcmFuZ2UuZW5kLmlzTnVsbCgpKQogICAgICAgICByZXR1cm47Ci0gICAgCisKICAgICAvLyBJ
biBXZWJLaXQxLCB3aGVuIHRoZSB0b3Agd2ViIGFyZWEgc2V0cyB0aGUgc2VsZWN0aW9uIHRvIGJl
IGFuIGlucHV0IGVsZW1lbnQgaW4gYW4gaWZyYW1lLCB0aGUgY2FyZXQgd2lsbCBkaXNhcHBlYXIu
CiAgICAgLy8gRnJhbWVTZWxlY3Rpb246OnNldFNlbGVjdGlvbldpdGhvdXRVcGRhdGluZ0FwcGVh
cmFuY2UgaXMgc2V0dGluZyB0aGUgc2VsZWN0aW9uIG9uIHRoZSBuZXcgZnJhbWUgaW4gdGhpcyBj
YXNlLCBhbmQgY2F1c2luZyB0aGlzIGJlaGF2aW9yLgotICAgIGlmIChpc1dlYkFyZWEoKSAmJiBw
YXJlbnRPYmplY3QoKSAmJiBwYXJlbnRPYmplY3QoKS0+aXNBdHRhY2htZW50KCkpIHsKLSAgICAg
ICAgaWYgKGlzVmlzaWJsZVBvc2l0aW9uUmFuZ2VJbkRpZmZlcmVudERvY3VtZW50KHJhbmdlKSkK
LSAgICAgICAgICAgIHJldHVybjsKLSAgICB9CisgICAgaWYgKGlzV2ViQXJlYSgpICYmIHBhcmVu
dE9iamVjdCgpICYmIHBhcmVudE9iamVjdCgpLT5pc0F0dGFjaG1lbnQoKQorICAgICAgICAmJiBp
c1Zpc2libGVQb3NpdGlvblJhbmdlSW5EaWZmZXJlbnREb2N1bWVudChyYW5nZSkpCisgICAgICAg
IHJldHVybjsKIAogICAgIC8vIG1ha2Ugc2VsZWN0aW9uIGFuZCB0ZWxsIHRoZSBkb2N1bWVudCB0
byB1c2UgaXQuIGlmIGl0J3MgemVybyBsZW5ndGgsIHRoZW4gbW92ZSB0byB0aGF0IHBvc2l0aW9u
CiAgICAgaWYgKHJhbmdlLnN0YXJ0ID09IHJhbmdlLmVuZCkgewogICAgICAgICBzZXRUZXh0U2Vs
ZWN0aW9uSW50ZW50KGF4T2JqZWN0Q2FjaGUoKSwgQVhUZXh0U3RhdGVDaGFuZ2VUeXBlU2VsZWN0
aW9uTW92ZSk7Ci0gICAgICAgIG1fcmVuZGVyZXItPmZyYW1lKCkuc2VsZWN0aW9uKCkubW92ZVRv
KHJhbmdlLnN0YXJ0LCBVc2VyVHJpZ2dlcmVkKTsKLSAgICAgICAgY2xlYXJUZXh0U2VsZWN0aW9u
SW50ZW50KGF4T2JqZWN0Q2FjaGUoKSk7Ci0gICAgfQotICAgIGVsc2UgeworCisgICAgICAgIGF1
dG8gZWxlbWVudFJhbmdlID0gdGhpcy0+ZWxlbWVudFJhbmdlKCk7CisgICAgICAgIGF1dG8gc3Rh
cnQgPSByYW5nZS5zdGFydDsKKyAgICAgICAgaWYgKGVsZW1lbnRSYW5nZSAmJiAhZWxlbWVudFJh
bmdlLT5jb250YWlucyhzdGFydCkpCisgICAgICAgICAgICBzdGFydCA9IFZpc2libGVQb3NpdGlv
bihlbGVtZW50UmFuZ2UtPnN0YXJ0UG9zaXRpb24oKSk7CisKKyAgICAgICAgbV9yZW5kZXJlci0+
ZnJhbWUoKS5zZWxlY3Rpb24oKS5tb3ZlVG8oc3RhcnQsIFVzZXJUcmlnZ2VyZWQpOworICAgIH0g
ZWxzZSB7CiAgICAgICAgIHNldFRleHRTZWxlY3Rpb25JbnRlbnQoYXhPYmplY3RDYWNoZSgpLCBB
WFRleHRTdGF0ZUNoYW5nZVR5cGVTZWxlY3Rpb25FeHRlbmQpOworCiAgICAgICAgIFZpc2libGVT
ZWxlY3Rpb24gbmV3U2VsZWN0aW9uID0gVmlzaWJsZVNlbGVjdGlvbihyYW5nZS5zdGFydCwgcmFu
Z2UuZW5kKTsKICAgICAgICAgbV9yZW5kZXJlci0+ZnJhbWUoKS5zZWxlY3Rpb24oKS5zZXRTZWxl
Y3Rpb24obmV3U2VsZWN0aW9uLCBGcmFtZVNlbGVjdGlvbjo6ZGVmYXVsdFNldFNlbGVjdGlvbk9w
dGlvbnMoKSk7Ci0gICAgICAgIGNsZWFyVGV4dFNlbGVjdGlvbkludGVudChheE9iamVjdENhY2hl
KCkpOwogICAgIH0KKworICAgIGNsZWFyVGV4dFNlbGVjdGlvbkludGVudChheE9iamVjdENhY2hl
KCkpOwogfQogCiBWaXNpYmxlUG9zaXRpb24gQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdDo6dmlz
aWJsZVBvc2l0aW9uRm9yUG9pbnQoY29uc3QgSW50UG9pbnQmIHBvaW50KSBjb25zdAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>403707</attachid>
            <date>2020-07-07 10:54:04 -0700</date>
            <delta_ts>2020-07-07 12:50:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-214017-20200707135403.patch</filename>
            <type>text/plain</type>
            <size>11460</size>
            <attacher name="Andres Gonzalez">andresg_22</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYzOTY2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWQ2NmMyMjc1OGQ0ZjVj
YjRjYTg0MjZiYmUzMDA0YmMyMDNlMzJlNS4uNDUyODhmNTFlOGI1NmZiZmNlOTc2ZGNlZjZjMDdi
ODkyZTgxODgxYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDIwLTA3LTA3ICBBbmRy
ZXMgR29uemFsZXogIDxhbmRyZXNnXzIyQGFwcGxlLmNvbT4KKworICAgICAgICBXZWIgY29udGVu
dCBwcm9jZXNzIGhhbmdzIGluIEFjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3Q6OnNldFNlbGVjdGVk
VmlzaWJsZVBvc2l0aW9uUmFuZ2UgaW4gc29tZSBjb3JuZXIgY2FzZXMuCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTQwMTcKKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzYzMDAwMDA2PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIEVuc3VyZXMgdGhhdCBpbiB0aGUgY2FzZSBvZiBjb2xsYXBzZWQgcmFuZ2Vz
LCB0aGUgVmlzaWJsZVBvc2l0aW9uIHRoYXQKKyAgICAgICAgdGhlIHNlbGVjdGlvbiBpcyBiZWlu
ZyBzZXQgdG8sIGlzIGNvbnRhaW5lZCBpbiB0aGUgRWxlbWVudCBvYmplY3QuCisKKyAgICAgICAg
VGVzdDogYWNjZXNzaWJpbGl0eS9tYWMvc2VsZWN0ZWQtdmlzaWJsZS1wb3NpdGlvbi1yYW5nZS5o
dG1sCisKKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3Qu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdDo6c2V0U2Vs
ZWN0ZWRWaXNpYmxlUG9zaXRpb25SYW5nZSBjb25zdCk6CisKIDIwMjAtMDctMDYgIENhcmxvcyBH
YXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHVEtdW1dQRV0g
Q2hhbmdlIHRoZSBjb29raWVzIGFjY2VwdCBwb2xpY3kgd2hlbiBJVFAgaXMgZW5hYmxlZApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5UmVuZGVy
T2JqZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVJl
bmRlck9iamVjdC5jcHAKaW5kZXggM2M1ZWEwM2RjMTY4MmU3NjBkMzFiOWQ2NmZmYWJmOTg3Mzk2
MjliMy4uZDFjODNlNmVkMzE5ZTE3NzIyM2U3M2Y0Nzg4YjY4YTAzNjc3OWVjNyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlSZW5k
ZXJPYmplY3QuY3BwCkBAIC0yMjE5LDI2ICsyMjE5LDMxIEBAIHZvaWQgQWNjZXNzaWJpbGl0eVJl
bmRlck9iamVjdDo6c2V0U2VsZWN0ZWRWaXNpYmxlUG9zaXRpb25SYW5nZShjb25zdCBWaXNpYmxl
UG9zCiB7CiAgICAgaWYgKHJhbmdlLnN0YXJ0LmlzTnVsbCgpIHx8IHJhbmdlLmVuZC5pc051bGwo
KSkKICAgICAgICAgcmV0dXJuOwotICAgIAorCiAgICAgLy8gSW4gV2ViS2l0MSwgd2hlbiB0aGUg
dG9wIHdlYiBhcmVhIHNldHMgdGhlIHNlbGVjdGlvbiB0byBiZSBhbiBpbnB1dCBlbGVtZW50IGlu
IGFuIGlmcmFtZSwgdGhlIGNhcmV0IHdpbGwgZGlzYXBwZWFyLgogICAgIC8vIEZyYW1lU2VsZWN0
aW9uOjpzZXRTZWxlY3Rpb25XaXRob3V0VXBkYXRpbmdBcHBlYXJhbmNlIGlzIHNldHRpbmcgdGhl
IHNlbGVjdGlvbiBvbiB0aGUgbmV3IGZyYW1lIGluIHRoaXMgY2FzZSwgYW5kIGNhdXNpbmcgdGhp
cyBiZWhhdmlvci4KLSAgICBpZiAoaXNXZWJBcmVhKCkgJiYgcGFyZW50T2JqZWN0KCkgJiYgcGFy
ZW50T2JqZWN0KCktPmlzQXR0YWNobWVudCgpKSB7Ci0gICAgICAgIGlmIChpc1Zpc2libGVQb3Np
dGlvblJhbmdlSW5EaWZmZXJlbnREb2N1bWVudChyYW5nZSkpCi0gICAgICAgICAgICByZXR1cm47
Ci0gICAgfQorICAgIGlmIChpc1dlYkFyZWEoKSAmJiBwYXJlbnRPYmplY3QoKSAmJiBwYXJlbnRP
YmplY3QoKS0+aXNBdHRhY2htZW50KCkKKyAgICAgICAgJiYgaXNWaXNpYmxlUG9zaXRpb25SYW5n
ZUluRGlmZmVyZW50RG9jdW1lbnQocmFuZ2UpKQorICAgICAgICByZXR1cm47CiAKICAgICAvLyBt
YWtlIHNlbGVjdGlvbiBhbmQgdGVsbCB0aGUgZG9jdW1lbnQgdG8gdXNlIGl0LiBpZiBpdCdzIHpl
cm8gbGVuZ3RoLCB0aGVuIG1vdmUgdG8gdGhhdCBwb3NpdGlvbgogICAgIGlmIChyYW5nZS5zdGFy
dCA9PSByYW5nZS5lbmQpIHsKICAgICAgICAgc2V0VGV4dFNlbGVjdGlvbkludGVudChheE9iamVj
dENhY2hlKCksIEFYVGV4dFN0YXRlQ2hhbmdlVHlwZVNlbGVjdGlvbk1vdmUpOwotICAgICAgICBt
X3JlbmRlcmVyLT5mcmFtZSgpLnNlbGVjdGlvbigpLm1vdmVUbyhyYW5nZS5zdGFydCwgVXNlclRy
aWdnZXJlZCk7Ci0gICAgICAgIGNsZWFyVGV4dFNlbGVjdGlvbkludGVudChheE9iamVjdENhY2hl
KCkpOwotICAgIH0KLSAgICBlbHNlIHsKKworICAgICAgICBhdXRvIGVsZW1lbnRSYW5nZSA9IHRo
aXMtPmVsZW1lbnRSYW5nZSgpOworICAgICAgICBhdXRvIHN0YXJ0ID0gcmFuZ2Uuc3RhcnQ7Cisg
ICAgICAgIGlmIChlbGVtZW50UmFuZ2UgJiYgIWVsZW1lbnRSYW5nZS0+Y29udGFpbnMoc3RhcnQp
KQorICAgICAgICAgICAgc3RhcnQgPSBWaXNpYmxlUG9zaXRpb24oZWxlbWVudFJhbmdlLT5zdGFy
dFBvc2l0aW9uKCkpOworCisgICAgICAgIG1fcmVuZGVyZXItPmZyYW1lKCkuc2VsZWN0aW9uKCku
bW92ZVRvKHN0YXJ0LCBVc2VyVHJpZ2dlcmVkKTsKKyAgICB9IGVsc2UgewogICAgICAgICBzZXRU
ZXh0U2VsZWN0aW9uSW50ZW50KGF4T2JqZWN0Q2FjaGUoKSwgQVhUZXh0U3RhdGVDaGFuZ2VUeXBl
U2VsZWN0aW9uRXh0ZW5kKTsKKwogICAgICAgICBWaXNpYmxlU2VsZWN0aW9uIG5ld1NlbGVjdGlv
biA9IFZpc2libGVTZWxlY3Rpb24ocmFuZ2Uuc3RhcnQsIHJhbmdlLmVuZCk7CiAgICAgICAgIG1f
cmVuZGVyZXItPmZyYW1lKCkuc2VsZWN0aW9uKCkuc2V0U2VsZWN0aW9uKG5ld1NlbGVjdGlvbiwg
RnJhbWVTZWxlY3Rpb246OmRlZmF1bHRTZXRTZWxlY3Rpb25PcHRpb25zKCkpOwotICAgICAgICBj
bGVhclRleHRTZWxlY3Rpb25JbnRlbnQoYXhPYmplY3RDYWNoZSgpKTsKICAgICB9CisKKyAgICBj
bGVhclRleHRTZWxlY3Rpb25JbnRlbnQoYXhPYmplY3RDYWNoZSgpKTsKIH0KIAogVmlzaWJsZVBv
c2l0aW9uIEFjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3Q6OnZpc2libGVQb3NpdGlvbkZvclBvaW50
KGNvbnN0IEludFBvaW50JiBwb2ludCkgY29uc3QKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0No
YW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAxNDZhZjdjY2E5NjNkOTE5MzYx
OWUwODRkNjE5OTEwOGVlYjZmYjlmLi4wYjA3ZWI1NGU3MzJiZWJjMjQyNTYwODU3ZmMxZGVjZDA4
Yzc5ZmYyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMjAtMDctMDcgIEFuZHJlcyBHb256YWxl
eiAgPGFuZHJlc2dfMjJAYXBwbGUuY29tPgorCisgICAgICAgIFdlYiBjb250ZW50IHByb2Nlc3Mg
aGFuZ3MgaW4gQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdDo6c2V0U2VsZWN0ZWRWaXNpYmxlUG9z
aXRpb25SYW5nZSBpbiBzb21lIGNvcm5lciBjYXNlcy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNDAxNworCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgICogYWNjZXNzaWJpbGl0eS9tYWMvcmVzb3VyY2VzL2Fj
Y2Vzc2liaWxpdHktaGVscGVyLmpzOgorICAgICAgICAoc2VsZWN0VGV4dEluTm9kZSk6CisgICAg
ICAgICogYWNjZXNzaWJpbGl0eS9tYWMvc2VsZWN0ZWQtdmlzaWJsZS1wb3NpdGlvbi1yYW5nZS1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGFjY2Vzc2liaWxpdHkvbWFjL3NlbGVjdGVk
LXZpc2libGUtcG9zaXRpb24tcmFuZ2UuaHRtbDogQWRkZWQuCisgICAgICAgICogYWNjZXNzaWJp
bGl0eS9tYWMvdGV4dC1tYXJrZXItcC10YWdzLmh0bWw6CisKIDIwMjAtMDctMDYgIENhcmxvcyBH
YXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHVEtdW1dQRV0g
RW5hYmxlIHN0b3JhZ2VBY2Nlc3MgdGVzdHMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2FjY2Vz
c2liaWxpdHkvbWFjL3Jlc291cmNlcy9hY2Nlc3NpYmlsaXR5LWhlbHBlci5qcyBiL0xheW91dFRl
c3RzL2FjY2Vzc2liaWxpdHkvbWFjL3Jlc291cmNlcy9hY2Nlc3NpYmlsaXR5LWhlbHBlci5qcwpp
bmRleCBlZjY2MGFkNjliYjAyMGQ2MzMxNzY2MzcxMjVkMjU0NTJhZDY0ZjAzLi45NzM1MTQ1MWEy
MDVjZmI2NWU1ZDVmYjcxODZiOTM0YjhlOTg5OWY5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9h
Y2Nlc3NpYmlsaXR5L21hYy9yZXNvdXJjZXMvYWNjZXNzaWJpbGl0eS1oZWxwZXIuanMKKysrIGIv
TGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9tYWMvcmVzb3VyY2VzL2FjY2Vzc2liaWxpdHktaGVs
cGVyLmpzCkBAIC0yMSwzICsyMSwyMSBAQCBmdW5jdGlvbiBjYXJldEJyb3dzaW5nRW5hYmxlZCh3
ZWJBcmVhKSB7CiBmdW5jdGlvbiBzZXRDYXJldEJyb3dzaW5nRW5hYmxlZCh3ZWJBcmVhLCB2YWx1
ZSkgewogICAgIHdlYkFyZWEuc2V0Qm9vbEF0dHJpYnV0ZVZhbHVlKCJBWENhcmV0QnJvd3NpbmdF
bmFibGVkIiwgdmFsdWUpOwogfQorCitmdW5jdGlvbiBzZWxlY3RUZXh0SW5Ob2RlKG5vZGVJZCkg
eworICAgIHZhciBub2RlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQobm9kZUlkKTsKKworICAg
IGlmIChkb2N1bWVudC5ib2R5LmNyZWF0ZVRleHRSYW5nZSkgeworICAgICAgICBjb25zdCByYW5n
ZSA9IGRvY3VtZW50LmJvZHkuY3JlYXRlVGV4dFJhbmdlKCk7CisgICAgICAgIHJhbmdlLm1vdmVU
b0VsZW1lbnRUZXh0KG5vZGUpOworICAgICAgICByYW5nZS5zZWxlY3QoKTsKKyAgICB9IGVsc2Ug
aWYgKHdpbmRvdy5nZXRTZWxlY3Rpb24pIHsKKyAgICAgICAgY29uc3Qgc2VsZWN0aW9uID0gd2lu
ZG93LmdldFNlbGVjdGlvbigpOworICAgICAgICBjb25zdCByYW5nZSA9IGRvY3VtZW50LmNyZWF0
ZVJhbmdlKCk7CisgICAgICAgIHJhbmdlLnNlbGVjdE5vZGVDb250ZW50cyhub2RlKTsKKyAgICAg
ICAgc2VsZWN0aW9uLnJlbW92ZUFsbFJhbmdlcygpOworICAgICAgICBzZWxlY3Rpb24uYWRkUmFu
Z2UocmFuZ2UpOworICAgIH0gZWxzZSB7CisgICAgICAgIGNvbnNvbGUud2FybigiQ291bGQgbm90
IHNlbGVjdCB0ZXh0IGluIG5vZGU6IFVuc3VwcG9ydGVkIGJyb3dzZXIuIik7CisgICAgfQorfQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9tYWMvc2VsZWN0ZWQtdmlzaWJs
ZS1wb3NpdGlvbi1yYW5nZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5
L21hYy9zZWxlY3RlZC12aXNpYmxlLXBvc2l0aW9uLXJhbmdlLWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5lZTVmY2JkZTFiNDM1ZmQ4YTVlNjZkMWEyYzliMTY5MDVkNGNhZjg5Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9tYWMvc2VsZWN0ZWQtdmlzaWJsZS1w
b3NpdGlvbi1yYW5nZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxOSBAQAorRmlyc3QgcGFyYWdy
YXBoLgorCitMYXN0IHBhcmFncmFwaC4KKworVGhpcyB0ZXN0cyBnZXR0aW5nIGFuZCBzZXR0aW5n
IHRoZSBzZWxlY3RlZCBWaXNpYmxlUG9zaXRpb24gcmFuZ2UuCisKK09uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KKworCitQQVNTIHNlbGVjdGVkU3RyaW5nIGlzICdMYXN0IHBhcmFncmFwaC4nCitz
ZWxlY3RlZFN0cmluZyBtdXN0IGJlIHRoZSB0ZXh0IG9mIHRoZSBmaXJzdCBwYXJhZ3JhcGg6IEZp
cnN0IHBhcmFncmFwaC4KKworCitzZWxlY3RlZFN0cmluZyBtdXN0IGJlIGFuIGVtcHR5IHN0cmlu
ZzogCitzZWxlY3RlZFN0cmluZyBtdXN0IGJlIGFuIGVtcHR5IHN0cmluZzogCitQQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9tYWMvc2VsZWN0ZWQtdmlzaWJsZS1wb3NpdGlvbi1yYW5n
ZS5odG1sIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9tYWMvc2VsZWN0ZWQtdmlzaWJsZS1w
b3NpdGlvbi1yYW5nZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjZhMjhkMmI0NWJiZjVmODdlNWRmNTg4MTI1
ZDlmZmU4YTRmNjc1YWMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmls
aXR5L21hYy9zZWxlY3RlZC12aXNpYmxlLXBvc2l0aW9uLXJhbmdlLmh0bWwKQEAgLTAsMCArMSw2
NiBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0
bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMi
Pjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4vcmVzb3VyY2VzL2FjY2Vzc2liaWxpdHktaGVscGVy
LmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorCis8ZGl2IGlkPSJjb250ZW50IiBjb250
ZW50ZWRpdGFibGU9dHJ1ZT4KKyAgICA8cCBpZD0icDEiPkZpcnN0IHBhcmFncmFwaC48L3A+Cisg
ICAgPHAgaWQ9InAyIj5MYXN0IHBhcmFncmFwaC48L3A+Cis8L2Rpdj4KKworPHAgaWQ9ImRlc2Ny
aXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKworPHNjcmlwdD4KKyAgICBk
ZXNjcmlwdGlvbigiVGhpcyB0ZXN0cyBnZXR0aW5nIGFuZCBzZXR0aW5nIHRoZSBzZWxlY3RlZCBW
aXNpYmxlUG9zaXRpb24gcmFuZ2UuIik7CisKKyAgICBpZiAod2luZG93LmFjY2Vzc2liaWxpdHlD
b250cm9sbGVyKSB7CisgICAgICAgIHdpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKworICAg
ICAgICAvLyBTZWxlY3QgdGhlIGxhc3QgcGFyYWdyYXBoIHVzaW5nIERPTSBBUEkuCisgICAgICAg
IHNlbGVjdFRleHRJbk5vZGUoInAyIik7CisKKyAgICAgICAgLy8gR2V0IGN1cnJlbnQgc2VsZWN0
aW9uIHJhbmdlIHZpYSBhY2Nlc3NpYmlsaXR5IEFQSS4KKyAgICAgICAgdmFyIGNvbnRlbnQgPSBh
Y2Nlc3NpYmlsaXR5Q29udHJvbGxlci5hY2Nlc3NpYmxlRWxlbWVudEJ5SWQoImNvbnRlbnQiKTsK
KyAgICAgICAgdmFyIHNlbGVjdGVkUmFuZ2UgPSBjb250ZW50LnNlbGVjdGVkVGV4dE1hcmtlclJh
bmdlKCk7CisgICAgICAgIHZhciBzZWxlY3RlZFN0cmluZyA9IGNvbnRlbnQuc3RyaW5nRm9yVGV4
dE1hcmtlclJhbmdlKHNlbGVjdGVkUmFuZ2UpOworICAgICAgICBzaG91bGRCZSgic2VsZWN0ZWRT
dHJpbmciLCAiJ0xhc3QgcGFyYWdyYXBoLiciKTsKKworICAgICAgICAvLyBTZXQgdGhlIHNlbGVj
dGlvbiB0byB0aGUgZmlyc3QgcGFyYWdyYXBoIHZpYSBhY2Nlc3NpYmlsaXR5IEFQSS4KKyAgICAg
ICAgdmFyIHN0YXJ0VGV4dE1hcmtlciA9IGNvbnRlbnQuc3RhcnRUZXh0TWFya2VyRm9yVGV4dE1h
cmtlclJhbmdlKHNlbGVjdGVkUmFuZ2UpOworICAgICAgICB2YXIgcHJldmlvdXNQYXJhZ3JhcGhT
dGFydCA9IGNvbnRlbnQucHJldmlvdXNQYXJhZ3JhcGhTdGFydFRleHRNYXJrZXJGb3JUZXh0TWFy
a2VyKHN0YXJ0VGV4dE1hcmtlcik7CisgICAgICAgIHZhciBwYXJhZ3JhcGhSYW5nZSA9IGNvbnRl
bnQudGV4dE1hcmtlclJhbmdlRm9yTWFya2VycyhwcmV2aW91c1BhcmFncmFwaFN0YXJ0LCBzdGFy
dFRleHRNYXJrZXIpOworICAgICAgICBjb250ZW50LnNldFNlbGVjdGVkVmlzaWJsZVRleHRSYW5n
ZShwYXJhZ3JhcGhSYW5nZSk7CisgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CisgICAg
ICAgICAgICBzZWxlY3RlZFJhbmdlID0gY29udGVudC5zZWxlY3RlZFRleHRNYXJrZXJSYW5nZSgp
OworICAgICAgICAgICAgc2VsZWN0ZWRTdHJpbmcgPSBjb250ZW50LnN0cmluZ0ZvclRleHRNYXJr
ZXJSYW5nZShzZWxlY3RlZFJhbmdlKTsKKyAgICAgICAgICAgIGRlYnVnKCJzZWxlY3RlZFN0cmlu
ZyBtdXN0IGJlIHRoZSB0ZXh0IG9mIHRoZSBmaXJzdCBwYXJhZ3JhcGg6ICIgKyBzZWxlY3RlZFN0
cmluZyk7CisKKyAgICAgICAgICAgIC8vIFNldCB0aGUgc2VsZWN0aW9uIHJhbmdlIHRvIGEgY29s
bGFwc2VkIHJhbmdlIGF0IHRoZSBzdGFydCBwb3NpdGlvbiBvZiB0aGUgbGFzdCBwYXJhZ3JhcGgu
CisgICAgICAgICAgICB2YXIgbnVsbFJhbmdlID0gY29udGVudC50ZXh0TWFya2VyUmFuZ2VGb3JN
YXJrZXJzKHN0YXJ0VGV4dE1hcmtlciwgc3RhcnRUZXh0TWFya2VyKTsKKyAgICAgICAgICAgIGNv
bnRlbnQuc2V0U2VsZWN0ZWRWaXNpYmxlVGV4dFJhbmdlKG51bGxSYW5nZSk7CisgICAgICAgICAg
ICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgICAgIHNlbGVjdGVkUmFuZ2Ug
PSBjb250ZW50LnNlbGVjdGVkVGV4dE1hcmtlclJhbmdlKCk7CisgICAgICAgICAgICAgICAgc2Vs
ZWN0ZWRTdHJpbmcgPSBjb250ZW50LnN0cmluZ0ZvclRleHRNYXJrZXJSYW5nZShzZWxlY3RlZFJh
bmdlKTsKKyAgICAgICAgICAgICAgICBkZWJ1Zygic2VsZWN0ZWRTdHJpbmcgbXVzdCBiZSBhbiBl
bXB0eSBzdHJpbmc6ICIgKyBzZWxlY3RlZFN0cmluZyk7CisKKyAgICAgICAgICAgICAgICAvLyBT
ZXQgdGhlIHNlbGVjdGlvbiByYW5nZSB0byBhIGNvbGxhcHNlZCByYW5nZSBhdCB0aGUgc3RhcnQg
cG9zaXRpb24gb2YgdGhlIGZpcnN0IHBhcmFncmFwaC4KKyAgICAgICAgICAgICAgICBudWxsUmFu
Z2UgPSBjb250ZW50LnRleHRNYXJrZXJSYW5nZUZvck1hcmtlcnMocHJldmlvdXNQYXJhZ3JhcGhT
dGFydCwgcHJldmlvdXNQYXJhZ3JhcGhTdGFydCk7CisgICAgICAgICAgICAgICAgY29udGVudC5z
ZXRTZWxlY3RlZFZpc2libGVUZXh0UmFuZ2UobnVsbFJhbmdlKTsKKyAgICAgICAgICAgICAgICBz
ZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgICAgICAgICBzZWxlY3RlZFJhbmdl
ID0gY29udGVudC5zZWxlY3RlZFRleHRNYXJrZXJSYW5nZSgpOworICAgICAgICAgICAgICAgICAg
ICBzZWxlY3RlZFN0cmluZyA9IGNvbnRlbnQuc3RyaW5nRm9yVGV4dE1hcmtlclJhbmdlKHNlbGVj
dGVkUmFuZ2UpOworICAgICAgICAgICAgICAgICAgICBkZWJ1Zygic2VsZWN0ZWRTdHJpbmcgbXVz
dCBiZSBhbiBlbXB0eSBzdHJpbmc6ICIgKyBzZWxlY3RlZFN0cmluZyk7CisKKyAgICAgICAgICAg
ICAgICAgICAgZmluaXNoSlNUZXN0KCk7CisgICAgICAgICAgICAgICAgfSwgMTApOworICAgICAg
ICAgICAgfSwgMTApOworICAgICAgICB9LCAxMCk7CisgICAgfQorPC9zY3JpcHQ+Cis8c2NyaXB0
IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+
Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L21hYy90ZXh0
LW1hcmtlci1wLXRhZ3MuaHRtbCBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvbWFjL3RleHQt
bWFya2VyLXAtdGFncy5odG1sCmluZGV4IGI4YTRlNjI1YTNiMThjN2ExZGFkOWFiNjM1ZTBiMTAw
MWFiZTNmZjguLmRmYTBhNzU1OTBmNjJjMzc0NGMxOTU2Mjg4NDYyYjNlNGRmOTgyYjUgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvbWFjL3RleHQtbWFya2VyLXAtdGFncy5o
dG1sCisrKyBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvbWFjL3RleHQtbWFya2VyLXAtdGFn
cy5odG1sCkBAIC0yLDYgKzIsNyBAQAogPGh0bWw+CiA8aGVhZD4KIDxzY3JpcHQgc3JjPSIuLi8u
Li9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4vcmVz
b3VyY2VzL2FjY2Vzc2liaWxpdHktaGVscGVyLmpzIj48L3NjcmlwdD4KIDwvaGVhZD4KIDxib2R5
IGlkPSJib2R5Ij4KIApAQCAtMTksNyArMjAsNyBAQAogICAgIGlmICh3aW5kb3cuYWNjZXNzaWJp
bGl0eUNvbnRyb2xsZXIpIHsKIAogICAgICAgICAvLyBzZWxlY3QgdGV4dAotICAgICAgICBzZWxl
Y3RUZXh0KCdwMicpOworICAgICAgICBzZWxlY3RUZXh0SW5Ob2RlKCdwMicpOwogICAgICAgICB2
YXIgcDIgPSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5hY2Nlc3NpYmxlRWxlbWVudEJ5SWQoInAy
Iik7CiAgICAgICAgIHZhciBzZWxlY3RlZFJhbmdlID0gcDIuc2VsZWN0ZWRUZXh0TWFya2VyUmFu
Z2UoKTsKICAgICAgICAgdmFyIHNlbGVjdGVkU3RyaW5nID0gcDIuc3RyaW5nRm9yVGV4dE1hcmtl
clJhbmdlKHNlbGVjdGVkUmFuZ2UpOwpAQCAtNDEsMjUgKzQyLDYgQEAKICAgICAgICAgdmFyIHBh
cmFncmFwaFN0cmluZyA9IHAyLnN0cmluZ0ZvclRleHRNYXJrZXJSYW5nZShwYXJhZ3JhcGhSYW5n
ZSk7CiAgICAgICAgIGRlYnVnKCJQcmV2aW91cyBwYXJhZ3JhcGg6ICIgKyBwYXJhZ3JhcGhTdHJp
bmcpOwogICAgIH0KLQotICAgIGZ1bmN0aW9uIHNlbGVjdFRleHQobm9kZSkgewotICAgICAgICBu
b2RlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQobm9kZSk7Ci0KLSAgICAgICAgaWYgKGRvY3Vt
ZW50LmJvZHkuY3JlYXRlVGV4dFJhbmdlKSB7Ci0gICAgICAgICAgICBjb25zdCByYW5nZSA9IGRv
Y3VtZW50LmJvZHkuY3JlYXRlVGV4dFJhbmdlKCk7Ci0gICAgICAgICAgICByYW5nZS5tb3ZlVG9F
bGVtZW50VGV4dChub2RlKTsKLSAgICAgICAgICAgIHJhbmdlLnNlbGVjdCgpOwotICAgICAgICB9
IGVsc2UgaWYgKHdpbmRvdy5nZXRTZWxlY3Rpb24pIHsKLSAgICAgICAgICAgIGNvbnN0IHNlbGVj
dGlvbiA9IHdpbmRvdy5nZXRTZWxlY3Rpb24oKTsKLSAgICAgICAgICAgIGNvbnN0IHJhbmdlID0g
ZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKTsKLSAgICAgICAgICAgIHJhbmdlLnNlbGVjdE5vZGVDb250
ZW50cyhub2RlKTsKLSAgICAgICAgICAgIHNlbGVjdGlvbi5yZW1vdmVBbGxSYW5nZXMoKTsKLSAg
ICAgICAgICAgIHNlbGVjdGlvbi5hZGRSYW5nZShyYW5nZSk7Ci0gICAgICAgIH0gZWxzZSB7Ci0g
ICAgICAgICAgICBjb25zb2xlLndhcm4oIkNvdWxkIG5vdCBzZWxlY3QgdGV4dCBpbiBub2RlOiBV
bnN1cHBvcnRlZCBicm93c2VyLiIpOwotICAgICAgICB9Ci0gICAgfQotICAgIAogPC9zY3JpcHQ+
CiAKIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Njcmlw
dD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>