<?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>195220</bug_id>
          
          <creation_ts>2019-03-01 12:17:55 -0800</creation_ts>
          <short_desc>[ContentChangeObserver] Check for pending style recalcs at the end of each timer run.</short_desc>
          <delta_ts>2019-03-01 14:49:02 -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>Layout and Rendering</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="alan">zalan</reporter>
          <assigned_to name="alan">zalan</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>kangil.han</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1511519</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2019-03-01 12:17:55 -0800</bug_when>
    <thetext>instead of relying on didScheduleStyleRecalc since style recalc scheduling can turn into sync style recalcs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1511530</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-03-01 12:33:42 -0800</bug_when>
    <thetext>&lt;rdar://problem/48518979&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1511555</commentid>
    <comment_count>2</comment_count>
      <attachid>363362</attachid>
    <who name="alan">zalan</who>
    <bug_when>2019-03-01 13:00:18 -0800</bug_when>
    <thetext>Created attachment 363362
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1511565</commentid>
    <comment_count>3</comment_count>
      <attachid>363362</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2019-03-01 13:19:08 -0800</bug_when>
    <thetext>Comment on attachment 363362
Patch

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

&gt; Source/WebCore/ChangeLog:10
&gt; +        when in addition to this style recalc scheduling, something later (thouhg during the same timer firing) triggers a sync style recalc.

thouhg

&gt; Source/WebCore/page/ios/ContentChangeObserver.cpp:99
&gt; +    auto inDeterminedState = observedContentChange == WKContentVisibilityChange || (!countOfObservedDOMTimers() &amp;&amp; observedContentChange == WKContentNoChange &amp;&amp; !hasPendingStyleRecalc);  

hasDeterminedState</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1511566</commentid>
    <comment_count>4</comment_count>
      <attachid>363362</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2019-03-01 13:21:29 -0800</bug_when>
    <thetext>Comment on attachment 363362
Patch

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

&gt; LayoutTests/fast/events/touch/ios/style-recalc-schedule-and-force-relalc.html:33
&gt; +            document.body.offsetHeight;

Doesn&apos;t seem necessary.

&gt; LayoutTests/fast/events/touch/ios/style-recalc-schedule-and-force-relalc.html:34
&gt; +            testRunner.dumpAsText();

Normally we do this at the start

&gt; LayoutTests/fast/events/touch/ios/style-recalc-schedule-and-force-relalc.html:37
&gt; +    }, 100);

Fix this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1511569</commentid>
    <comment_count>5</comment_count>
      <attachid>363364</attachid>
    <who name="alan">zalan</who>
    <bug_when>2019-03-01 13:28:11 -0800</bug_when>
    <thetext>Created attachment 363364
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1511628</commentid>
    <comment_count>6</comment_count>
      <attachid>363364</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-03-01 14:49:00 -0800</bug_when>
    <thetext>Comment on attachment 363364
Patch

Clearing flags on attachment: 363364

Committed r242290: &lt;https://trac.webkit.org/changeset/242290&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1511629</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-03-01 14:49:02 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>363362</attachid>
            <date>2019-03-01 13:00:18 -0800</date>
            <delta_ts>2019-03-01 13:28:10 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-195220-20190301130017.patch</filename>
            <type>text/plain</type>
            <size>11229</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQyMjc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMGY2ZTc0NmRkYTI0MDMy
NWU5OTY5ZDBhYjJjM2EwNThiMTU2MzM4NS4uZjdiZWI2YjExN2Q4NWIzNTIwZWM4ZTZmYjk2MWU5
Yzg3MjllNzg5MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDE5LTAzLTAxICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW0NvbnRlbnRDaGFuZ2VPYnNl
cnZlcl0gQ2hlY2sgZm9yIHBlbmRpbmcgc3R5bGUgcmVjYWxjcyBhdCB0aGUgZW5kIG9mIGVhY2gg
dGltZXIgcnVuLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTk1MjIwCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS80ODUxODk3OT4KKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBkaWRTY2hlZHVsZVN0eWxlUmVj
YWxjIGNhbGxiYWNrIHdhcyBpbnRyb2R1Y2VkIHRvIHNlZSBpZiBhIHN0eWxlIHJlY2FsYyBpcyBz
Y2hlZHVsZWQgd2hpbGUgZmlyaW5nIHRoZSBET00gdGltZXIuIEhvd2V2ZXIgaXQgZG9lcyBub3Qg
aGFuZGxlIHRoZSBjYXNlCisgICAgICAgIHdoZW4gaW4gYWRkaXRpb24gdG8gdGhpcyBzdHlsZSBy
ZWNhbGMgc2NoZWR1bGluZywgc29tZXRoaW5nIGxhdGVyICh0aG91aGcgZHVyaW5nIHRoZSBzYW1l
IHRpbWVyIGZpcmluZykgdHJpZ2dlcnMgYSBzeW5jIHN0eWxlIHJlY2FsYy4KKyAgICAgICAgTGV0
J3MganVzdCBjaGVjayBpZiB3ZSd2ZSBnb3QgYSBwZW5kaW5nIHN0eWxlIHJlY2FsYyB3aGVuIHRo
ZSBET00gdGltZXIgY29tZXMgYmFjay4KKworICAgICAgICBUZXN0OiBmYXN0L2V2ZW50cy90b3Vj
aC9pb3Mvc3R5bGUtcmVjYWxjLXNjaGVkdWxlLWFuZC1mb3JjZS1yZWxhbGMuaHRtbAorCisgICAg
ICAgICogZG9tL0RvY3VtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50OjpzY2hl
ZHVsZVN0eWxlUmVjYWxjKToKKyAgICAgICAgKiBwYWdlL2lvcy9Db250ZW50Q2hhbmdlT2JzZXJ2
ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6aGFzUGVuZGluZ1N0eWxlUmVjYWxjKToKKyAgICAg
ICAgKFdlYkNvcmU6OkNvbnRlbnRDaGFuZ2VPYnNlcnZlcjo6c3RhcnRPYnNlcnZpbmdET01UaW1l
ckV4ZWN1dGUpOgorICAgICAgICAoV2ViQ29yZTo6Q29udGVudENoYW5nZU9ic2VydmVyOjpzdG9w
T2JzZXJ2aW5nRE9NVGltZXJFeGVjdXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRlbnRDaGFu
Z2VPYnNlcnZlcjo6c3RhcnRPYnNlcnZpbmdDb250ZW50Q2hhbmdlcyk6CisgICAgICAgIChXZWJD
b3JlOjpDb250ZW50Q2hhbmdlT2JzZXJ2ZXI6OmRpZFNjaGVkdWxlU3R5bGVSZWNhbGMpOiBEZWxl
dGVkLgorICAgICAgICAqIHBhZ2UvaW9zL0NvbnRlbnRDaGFuZ2VPYnNlcnZlci5oOgorICAgICAg
ICAoV2ViQ29yZTo6Q29udGVudENoYW5nZU9ic2VydmVyOjpzdGFydE9ic2VydmluZ1N0eWxlUmVj
YWxjU2NoZWR1bGluZyk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpDb250ZW50Q2hhbmdl
T2JzZXJ2ZXI6OnN0b3BPYnNlcnZpbmdTdHlsZVJlY2FsY1NjaGVkdWxpbmcpOiBEZWxldGVkLgor
ICAgICAgICAoV2ViQ29yZTo6Q29udGVudENoYW5nZU9ic2VydmVyOjppc09ic2VydmluZ1N0eWxl
UmVjYWxjU2NoZWR1bGluZyBjb25zdCk6IERlbGV0ZWQuCisKIDIwMTktMDMtMDEgIFphbGFuIEJ1
anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBbQ29udGVudENoYW5nZU9ic2VydmVy
XSBSZW5hbWUgbWVtYmVycyBhbmQgbW92ZSBpbXBsZW1lbnRhdGlvbiB0byBoZWFkZXIuCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUv
ZG9tL0RvY3VtZW50LmNwcAppbmRleCA2YjZmMGNlYTk4ZGJiZGM0YmJiZDRlYzlmYWU1MjM3YTMx
ODYwNGI1Li5jNjBkNWY2MDU4ZjAzMDRkYzk0OGFlMjljZGQ2YzBmMDRmMmE1NGQ1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2RvbS9Eb2N1bWVudC5jcHAKQEAgLTE4MzMsMTAgKzE4MzMsNiBAQCB2b2lkIERvY3VtZW50Ojpz
Y2hlZHVsZVN0eWxlUmVjYWxjKCkKICAgICAgICAgcmV0dXJuOwogCiAgICAgbV9zdHlsZVJlY2Fs
Y1RpbWVyLnN0YXJ0T25lU2hvdCgwX3MpOwotI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCi0gICAg
aWYgKGF1dG8qIHBhZ2UgPSB0aGlzLT5wYWdlKCkpCi0gICAgICAgIHBhZ2UtPmNvbnRlbnRDaGFu
Z2VPYnNlcnZlcigpLmRpZFNjaGVkdWxlU3R5bGVSZWNhbGMoKTsKLSNlbmRpZgogCiAgICAgSW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRTY2hlZHVsZVN0eWxlUmVjYWxjdWxhdGlvbigqdGhp
cyk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL2lvcy9Db250ZW50Q2hhbmdl
T2JzZXJ2ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9pb3MvQ29udGVudENoYW5nZU9ic2Vy
dmVyLmNwcAppbmRleCBkZWM5YjBlNDM1ODY2ODFkMzg2MzkxOTVmMTg2NmEzYzkxMjRkMmFiLi40
NzNmMmYxM2NjOGU5MzcxMjNkYzBmZjVjYjMyY2ViMGNkZmNmMGJmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL2lvcy9Db250ZW50Q2hhbmdlT2JzZXJ2ZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvaW9zL0NvbnRlbnRDaGFuZ2VPYnNlcnZlci5jcHAKQEAgLTM1LDYgKzM1
LDE3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorc3RhdGljIGJvb2wgaGFzUGVuZGluZ1N0
eWxlUmVjYWxjKGNvbnN0IFBhZ2UmIHBhZ2UpCit7CisgICAgZm9yIChhdXRvKiBmcmFtZSA9ICZw
YWdlLm1haW5GcmFtZSgpOyBmcmFtZTsgZnJhbWUgPSBmcmFtZS0+dHJlZSgpLnRyYXZlcnNlTmV4
dCgpKSB7CisgICAgICAgIGlmIChhdXRvKiBkb2N1bWVudCA9IGZyYW1lLT5kb2N1bWVudCgpKSB7
CisgICAgICAgICAgICBpZiAoZG9jdW1lbnQtPmhhc1BlbmRpbmdTdHlsZVJlY2FsYygpKQorICAg
ICAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAgICB9CisgICAgfQorICAgIHJldHVybiBm
YWxzZTsKK30KKwogQ29udGVudENoYW5nZU9ic2VydmVyOjpDb250ZW50Q2hhbmdlT2JzZXJ2ZXIo
UGFnZSYgcGFnZSkKICAgICA6IG1fcGFnZShwYWdlKQogewpAQCAtNzEsNyArODIsNiBAQCB2b2lk
IENvbnRlbnRDaGFuZ2VPYnNlcnZlcjo6c3RhcnRPYnNlcnZpbmdET01UaW1lckV4ZWN1dGUoY29u
c3QgRE9NVGltZXImIHRpbWVyKQogICAgIGlmICghY29udGFpbnNPYnNlcnZlZERPTVRpbWVyKHRp
bWVyKSkKICAgICAgICAgcmV0dXJuOwogICAgIExPR19XSVRIX1NUUkVBTShDb250ZW50T2JzZXJ2
YXRpb24sIHN0cmVhbSA8PCAic3RhcnRPYnNlcnZpbmdET01UaW1lckV4ZWN1dGU6IHN0YXJ0IG9i
c2VydmluZyAoIiA8PCAmdGltZXIgPDwgIikgdGltZXIgY2FsbGJhY2suIik7Ci0gICAgc3RhcnRP
YnNlcnZpbmdTdHlsZVJlY2FsY1NjaGVkdWxpbmcoKTsKICAgICBtX2lzT2JzZXJ2aW5nQ29udGVu
dENoYW5nZXMgPSB0cnVlOwogfQogCkBAIC03OSwzMiArODksMjYgQEAgdm9pZCBDb250ZW50Q2hh
bmdlT2JzZXJ2ZXI6OnN0b3BPYnNlcnZpbmdET01UaW1lckV4ZWN1dGUoY29uc3QgRE9NVGltZXIm
IHRpbWVyKQogewogICAgIGlmICghY29udGFpbnNPYnNlcnZlZERPTVRpbWVyKHRpbWVyKSkKICAg
ICAgICAgcmV0dXJuOworICAgIExPR19XSVRIX1NUUkVBTShDb250ZW50T2JzZXJ2YXRpb24sIHN0
cmVhbSA8PCAic3RvcE9ic2VydmluZ0RPTVRpbWVyRXhlY3V0ZTogc3RvcCBvYnNlcnZpbmcgKCIg
PDwgJnRpbWVyIDw8ICIpIHRpbWVyIGNhbGxiYWNrLiIpOworCiAgICAgcmVtb3ZlT2JzZXJ2ZWRE
T01UaW1lcih0aW1lcik7Ci0gICAgc3RvcE9ic2VydmluZ1N0eWxlUmVjYWxjU2NoZWR1bGluZygp
OwogICAgIHN0b3BPYnNlcnZpbmdDb250ZW50Q2hhbmdlcygpOwogICAgIGF1dG8gb2JzZXJ2ZWRD
b250ZW50Q2hhbmdlID0gdGhpcy0+b2JzZXJ2ZWRDb250ZW50Q2hhbmdlKCk7CisgICAgYXV0byBo
YXNQZW5kaW5nU3R5bGVSZWNhbGMgPSBXZWJDb3JlOjpoYXNQZW5kaW5nU3R5bGVSZWNhbGMobV9w
YWdlKTsKICAgICAvLyBDaGVjayBpZiB0aGUgdGltZXIgY2FsbGJhY2sgdHJpZ2dlcmVkIGVpdGhl
ciBhIHN5bmMgb3IgYXN5bmMgc3R5bGUgdXBkYXRlLgotICAgIGF1dG8gaW5EZXRlcm1pbmVkU3Rh
dGUgPSBvYnNlcnZlZENvbnRlbnRDaGFuZ2UgPT0gV0tDb250ZW50VmlzaWJpbGl0eUNoYW5nZSB8
fCAoIWNvdW50T2ZPYnNlcnZlZERPTVRpbWVycygpICYmIG9ic2VydmVkQ29udGVudENoYW5nZSA9
PSBXS0NvbnRlbnROb0NoYW5nZSk7ICAKLQotICAgIExPR19XSVRIX1NUUkVBTShDb250ZW50T2Jz
ZXJ2YXRpb24sIHN0cmVhbSA8PCAic3RvcE9ic2VydmluZ0RPTVRpbWVyRXhlY3V0ZTogc3RvcCBv
YnNlcnZpbmcgKCIgPDwgJnRpbWVyIDw8ICIpIHRpbWVyIGNhbGxiYWNrLiIpOworICAgIGF1dG8g
aW5EZXRlcm1pbmVkU3RhdGUgPSBvYnNlcnZlZENvbnRlbnRDaGFuZ2UgPT0gV0tDb250ZW50Vmlz
aWJpbGl0eUNoYW5nZSB8fCAoIWNvdW50T2ZPYnNlcnZlZERPTVRpbWVycygpICYmIG9ic2VydmVk
Q29udGVudENoYW5nZSA9PSBXS0NvbnRlbnROb0NoYW5nZSAmJiAhaGFzUGVuZGluZ1N0eWxlUmVj
YWxjKTsgIAogICAgIGlmIChpbkRldGVybWluZWRTdGF0ZSkgewogICAgICAgICBMT0dfV0lUSF9T
VFJFQU0oQ29udGVudE9ic2VydmF0aW9uLCBzdHJlYW0gPDwgInN0b3BPYnNlcnZpbmdET01UaW1l
ckV4ZWN1dGU6ICgiIDw8ICZ0aW1lciA8PCAiKSBpbiBkZXRlcm1pbmVkIHN0YXRlLiIpOwogICAg
ICAgICBtX3BhZ2UuY2hyb21lKCkuY2xpZW50KCkub2JzZXJ2ZWRDb250ZW50Q2hhbmdlKG1fcGFn
ZS5tYWluRnJhbWUoKSk7Ci0gICAgfSBlbHNlIGlmIChvYnNlcnZlZENvbnRlbnRDaGFuZ2UgPT0g
V0tDb250ZW50SW5kZXRlcm1pbmF0ZUNoYW5nZSkgeworICAgICAgICByZXR1cm47CisgICAgfQor
ICAgIGlmIChoYXNQZW5kaW5nU3R5bGVSZWNhbGMpIHsKICAgICAgICAgLy8gQW4gYXN5bmMgc3R5
bGUgcmVjYWxjIGhhcyBiZWVuIHNjaGVkdWxlZC4gTGV0J3Mgb2JzZXJ2ZSBpdC4KICAgICAgICAg
TE9HX1dJVEhfU1RSRUFNKENvbnRlbnRPYnNlcnZhdGlvbiwgc3RyZWFtIDw8ICJzdG9wT2JzZXJ2
aW5nRE9NVGltZXJFeGVjdXRlOiAoIiA8PCAmdGltZXIgPDwgIikgd2FpdCB1bnRpbCBuZXh0IHN0
eWxlIHJlY2FsYyBmaXJlcy4iKTsKICAgICAgICAgc2V0U2hvdWxkT2JzZXJ2ZVN0eWxlUmVjYWxj
KHRydWUpOwogICAgIH0KIH0KIAotdm9pZCBDb250ZW50Q2hhbmdlT2JzZXJ2ZXI6OmRpZFNjaGVk
dWxlU3R5bGVSZWNhbGMoKQotewotICAgIGlmICghaXNPYnNlcnZpbmdTdHlsZVJlY2FsY1NjaGVk
dWxpbmcoKSkKLSAgICAgICAgcmV0dXJuOwotICAgIExPRyhDb250ZW50T2JzZXJ2YXRpb24sICJk
aWRTY2hlZHVsZVN0eWxlUmVjYWxjOiByZWdpc3RlciB0aGlzIHN0eWxlIHJlY2FsYyBzY2hlZHVs
ZSBhbmQgb2JzZXJ2ZSB3aGVuIGl0IGZpcmVzLiIpOwotICAgIHNldE9ic2VydmVkQ29udGVudENo
YW5nZShXS0NvbnRlbnRJbmRldGVybWluYXRlQ2hhbmdlKTsKLX0KLQogdm9pZCBDb250ZW50Q2hh
bmdlT2JzZXJ2ZXI6OnN0YXJ0T2JzZXJ2aW5nU3R5bGVSZWNhbGMoKQogewogICAgIGlmICghc2hv
dWxkT2JzZXJ2ZVN0eWxlUmVjYWxjKCkpCkBAIC0xNTQsNiArMTU4LDcgQEAgdm9pZCBDb250ZW50
Q2hhbmdlT2JzZXJ2ZXI6OmRpZENvbnRlbnRWaXNpYmlsaXR5Q2hhbmdlKCkKIAogdm9pZCBDb250
ZW50Q2hhbmdlT2JzZXJ2ZXI6OnN0YXJ0T2JzZXJ2aW5nQ29udGVudENoYW5nZXMoKQogeworICAg
IEFTU0VSVCghaGFzUGVuZGluZ1N0eWxlUmVjYWxjKG1fcGFnZSkpOwogICAgIHN0YXJ0T2JzZXJ2
aW5nRE9NVGltZXJTY2hlZHVsaW5nKCk7CiAgICAgcmVzZXRPYnNlcnZlZENvbnRlbnRDaGFuZ2Uo
KTsKICAgICBjbGVhck9ic2VydmVkRE9NVGltZXJzKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL2lvcy9Db250ZW50Q2hhbmdlT2JzZXJ2ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvaW9zL0NvbnRlbnRDaGFuZ2VPYnNlcnZlci5oCmluZGV4IDY3YjVmMmFkNTA4YTQxM2UzODA0
OTI1ZDliMGU5NTgxOWFjMWRiMTUuLjdhYjgyMGRhNzg5ZGQxN2Y3ODlmYzQ1NzQ0MzZjMWJhOWZm
YmNiYzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvaW9zL0NvbnRlbnRDaGFuZ2VP
YnNlcnZlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvaW9zL0NvbnRlbnRDaGFuZ2VPYnNl
cnZlci5oCkBAIC00NSw3ICs0NSw2IEBAIHB1YmxpYzoKICAgICB2b2lkIGRpZEluc3RhbGxET01U
aW1lcihjb25zdCBET01UaW1lciYsIFNlY29uZHMgdGltZW91dCwgYm9vbCBzaW5nbGVTaG90KTsK
ICAgICB2b2lkIGRpZFJlbW92ZURPTVRpbWVyKGNvbnN0IERPTVRpbWVyJik7CiAgICAgdm9pZCBk
aWRDb250ZW50VmlzaWJpbGl0eUNoYW5nZSgpOwotICAgIHZvaWQgZGlkU2NoZWR1bGVTdHlsZVJl
Y2FsYygpOwogICAgIHZvaWQgZGlkU3VzcGVuZEFjdGl2ZURPTU9iamVjdHMoKTsKICAgICB2b2lk
IHdpbGxEZXRhY2hQYWdlKCk7CiAKQEAgLTk1LDEwICs5NCw2IEBAIHByaXZhdGU6CiAgICAgdm9p
ZCByZW1vdmVPYnNlcnZlZERPTVRpbWVyKGNvbnN0IERPTVRpbWVyJik7CiAgICAgYm9vbCBjb250
YWluc09ic2VydmVkRE9NVGltZXIoY29uc3QgRE9NVGltZXImIHRpbWVyKSBjb25zdCB7IHJldHVy
biBtX0RPTVRpbWVyTGlzdC5jb250YWlucygmdGltZXIpOyB9CiAKLSAgICB2b2lkIHN0YXJ0T2Jz
ZXJ2aW5nU3R5bGVSZWNhbGNTY2hlZHVsaW5nKCkgeyBtX2lzT2JzZXJ2aW5nU3R5bGVSZWNhbGNT
Y2hlZHVsaW5nID0gdHJ1ZTsgfQotICAgIHZvaWQgc3RvcE9ic2VydmluZ1N0eWxlUmVjYWxjU2No
ZWR1bGluZygpIHsgbV9pc09ic2VydmluZ1N0eWxlUmVjYWxjU2NoZWR1bGluZyA9IGZhbHNlOyB9
Ci0gICAgYm9vbCBpc09ic2VydmluZ1N0eWxlUmVjYWxjU2NoZWR1bGluZygpIGNvbnN0IHsgcmV0
dXJuIG1faXNPYnNlcnZpbmdTdHlsZVJlY2FsY1NjaGVkdWxpbmc7IH0KLQogICAgIHZvaWQgc2V0
U2hvdWxkT2JzZXJ2ZVN0eWxlUmVjYWxjKGJvb2wgc2hvdWxkT2JzZXJ2ZSkgeyBtX3Nob3VsZE9i
c2VydmVTdHlsZVJlY2FsYyA9IHNob3VsZE9ic2VydmU7IH0KICAgICBib29sIHNob3VsZE9ic2Vy
dmVTdHlsZVJlY2FsYygpIGNvbnN0IHsgcmV0dXJuIG1fc2hvdWxkT2JzZXJ2ZVN0eWxlUmVjYWxj
OyB9CiAKQEAgLTExNCw3ICsxMDksNiBAQCBwcml2YXRlOgogICAgIFBhZ2UmIG1fcGFnZTsKICAg
ICBIYXNoU2V0PGNvbnN0IERPTVRpbWVyKj4gbV9ET01UaW1lckxpc3Q7CiAgICAgYm9vbCBtX3No
b3VsZE9ic2VydmVTdHlsZVJlY2FsYyB7IGZhbHNlIH07Ci0gICAgYm9vbCBtX2lzT2JzZXJ2aW5n
U3R5bGVSZWNhbGNTY2hlZHVsaW5nIHsgZmFsc2UgfTsKICAgICBib29sIG1faXNPYnNlcnZpbmdE
T01UaW1lclNjaGVkdWxpbmcgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9pc09ic2VydmluZ0NvbnRl
bnRDaGFuZ2VzIHsgZmFsc2UgfTsKIH07CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggOThkYzVmNzI4NDMzMmRjM2IyNDVkMTIw
ZDM2ZjMzOGI5YTM3YjFjMi4uNDZhYmU1NWNhZjY5MjI1YTg0MWI0ZmYyODdmNTVmZjMwOTA4NzA5
ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDE5LTAzLTAxICBaYWxhbiBCdWp0YXMgIDx6YWxh
bkBhcHBsZS5jb20+CisKKyAgICAgICAgW0NvbnRlbnRDaGFuZ2VPYnNlcnZlcl0gQ2hlY2sgZm9y
IHBlbmRpbmcgc3R5bGUgcmVjYWxjcyBhdCB0aGUgZW5kIG9mIGVhY2ggdGltZXIgcnVuLgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1MjIwCisgICAg
ICAgIDxyZGFyOi8vcHJvYmxlbS80ODUxODk3OT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIGZhc3QvZXZlbnRzL3RvdWNoL2lvcy9zdHlsZS1yZWNh
bGMtc2NoZWR1bGUtYW5kLWZvcmNlLXJlbGFsYy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGZhc3QvZXZlbnRzL3RvdWNoL2lvcy9zdHlsZS1yZWNhbGMtc2NoZWR1bGUtYW5kLWZvcmNl
LXJlbGFsYy5odG1sOiBBZGRlZC4KKwogMjAxOS0wMy0wMSAgQW50b2luZSBRdWludCAgPGdyYW91
dHNAYXBwbGUuY29tPgogCiAgICAgICAgIEVuYWJsZSBXUFQgUG9pbnRlciBFdmVudHMgdGVzdHMK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3RvdWNoL2lvcy9zdHlsZS1yZWNh
bGMtc2NoZWR1bGUtYW5kLWZvcmNlLXJlbGFsYy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9m
YXN0L2V2ZW50cy90b3VjaC9pb3Mvc3R5bGUtcmVjYWxjLXNjaGVkdWxlLWFuZC1mb3JjZS1yZWxh
bGMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY3N2UzYTMxZTRkMjc1OTNhYTk0ZGJkNjM3YTQ1
M2FmOGNlZGRkNzgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90
b3VjaC9pb3Mvc3R5bGUtcmVjYWxjLXNjaGVkdWxlLWFuZC1mb3JjZS1yZWxhbGMtZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsMiBAQAorUEFTUyBpZiAnY2xpY2tlZCcgdGV4dCBpcyBzaG93biBiZWxv
dy4KK2NsaWNrZWQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3RvdWNoL2lv
cy9zdHlsZS1yZWNhbGMtc2NoZWR1bGUtYW5kLWZvcmNlLXJlbGFsYy5odG1sIGIvTGF5b3V0VGVz
dHMvZmFzdC9ldmVudHMvdG91Y2gvaW9zL3N0eWxlLXJlY2FsYy1zY2hlZHVsZS1hbmQtZm9yY2Ut
cmVsYWxjLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODJhZjY2OTgwMGM5YTFmMTIwYzgyM2Q4YmFmNDkwNzZk
YjgyZjdlNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3RvdWNo
L2lvcy9zdHlsZS1yZWNhbGMtc2NoZWR1bGUtYW5kLWZvcmNlLXJlbGFsYy5odG1sCkBAIC0wLDAg
KzEsNzAgQEAKKzxodG1sPgorPGhlYWQ+Cis8dGl0bGU+VGhpcyB0ZXN0IHRoYXQgd2UgdHJpZ2dl
ciBob3ZlciB3aGVuIHRoZSBjb250ZW50IGNoYW5nZSBzdGFydHMgYXMgYXN5bmMgYnV0IGl0IHR1
cm5zIGludG8gYSBzeW5jIHN0eWxlIHJlY2FsYy48L3RpdGxlPgorPHNjcmlwdCBzcmM9Ii4uLy4u
Ly4uLy4uL3Jlc291cmNlcy9iYXNpYy1nZXN0dXJlcy5qcyI+PC9zY3JpcHQ+Cis8c3R5bGU+Cisj
dGFwdGhpcyB7CisgICAgd2lkdGg6IDQwMHB4OworICAgIGhlaWdodDogNDAwcHg7CisgICAgYm9y
ZGVyOiAxcHggc29saWQgZ3JlZW47Cit9CisKKyNzdGF5c0hpZGRlbiB7CisgICAgdmlzaWJpbGl0
eTogaGlkZGVuOworICAgIHdpZHRoOiAxMDBweDsKKyAgICBoZWlnaHQ6IDEwMHB4OworICAgIGJh
Y2tncm91bmQtY29sb3I6IGdyZWVuOworfQorPC9zdHlsZT4KKzxzY3JpcHQ+Cithc3luYyBmdW5j
dGlvbiB0ZXN0KCkgeworICAgIGlmICghd2luZG93LnRlc3RSdW5uZXIgfHwgIXRlc3RSdW5uZXIu
cnVuVUlTY3JpcHQpCisgICAgICAgIHJldHVybjsKKworICAgIHRlc3RSdW5uZXIud2FpdFVudGls
RG9uZSgpOworCisgICAgbGV0IHJlY3QgPSB0YXB0aGlzLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgp
OworICAgIGxldCB4ID0gcmVjdC5sZWZ0ICsgcmVjdC53aWR0aCAvIDI7CisgICAgbGV0IHkgPSBy
ZWN0LnRvcCArIHJlY3QuaGVpZ2h0IC8gMjsKKworICAgIGF3YWl0IHRhcEF0UG9pbnQoeCwgeSk7
CisgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsKKyAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVu
bmVyKSB7CisgICAgICAgICAgICBkb2N1bWVudC5ib2R5Lm9mZnNldEhlaWdodDsKKyAgICAgICAg
ICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgICAgICAgICAgdGVzdFJ1bm5lci5ub3Rp
ZnlEb25lKCk7CisgICAgICAgIH0KKyAgICB9LCAxMDApOworfQorPC9zY3JpcHQ+Cis8L2hlYWQ+
Cis8Ym9keSBvbmxvYWQ9InRlc3QoKSI+Cis8ZGl2IGlkPXRhcHRoaXM+UEFTUyBpZiAnY2xpY2tl
ZCcgdGV4dCBpcyBzaG93biBiZWxvdy48L2Rpdj4KKzxkaXYgaWQ9c3RheXNIaWRkZW4+PC9kaXY+
Cis8cHJlIGlkPXJlc3VsdD48L3ByZT4KKzxzY3JpcHQ+Cit0YXB0aGlzLmFkZEV2ZW50TGlzdGVu
ZXIoIm1vdXNlb3ZlciIsIGZ1bmN0aW9uKCBldmVudCApIHsKKyAgICAvLyAxLiBJbnN0YWxsIGEg
dGltZXIgb24gaG92ZXIKKyAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeworICAgICAgICAvLyAy
LiBUcmlnZ2VyIHNvbWUgbm9uLWZvcmNpbmcgKG5vbi12aXNpYmlsaXR5KSBzdHlsZSBjaGFuZ2Ug
d2l0aCBmb3JjaW5nIG9mZnNldEhlaWdodC4KKyAgICAgICAgc3RheXNIaWRkZW4uc3R5bGUubWFy
Z2luTGVmdCA9ICI1cHgiOworICAgICAgICBzdGF5c0hpZGRlbi5zdHlsZS5tYXJnaW5MZWZ0ID0g
IjE1cHgiOworICAgICAgICBzdGF5c0hpZGRlbi5zdHlsZS5tYXJnaW5MZWZ0ID0gIjI1cHgiOwor
CisgICAgICAgIGRvY3VtZW50LmJvZHkub2Zmc2V0SGVpZ2h0OworICAgIH0sIDApOworICAgIC8v
IDMuIEluc3RhbGwgYSBsb25nZXIsIGVtcHR5IHRpbWVyLgorICAgIHNldFRpbWVvdXQoZnVuY3Rp
b24oKSB7CisgICAgfSwgNSk7Cit9LCBmYWxzZSk7CisKK3N0YXlzSGlkZGVuLmFkZEV2ZW50TGlz
dGVuZXIoImNsaWNrIiwgZnVuY3Rpb24oIGV2ZW50ICkgeyAgIAorICAgIHJlc3VsdC5pbm5lckhU
TUwgPSAiY2xpY2tlZCBoaWRkZW4iOworfSwgZmFsc2UpOworCit0YXB0aGlzLmFkZEV2ZW50TGlz
dGVuZXIoImNsaWNrIiwgZnVuY3Rpb24oIGV2ZW50ICkgeyAgIAorICAgIHJlc3VsdC5pbm5lckhU
TUwgPSAiY2xpY2tlZCI7Cit9LCBmYWxzZSk7Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>363364</attachid>
            <date>2019-03-01 13:28:11 -0800</date>
            <delta_ts>2019-03-01 14:49:00 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-195220-20190301132810.patch</filename>
            <type>text/plain</type>
            <size>11720</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQyMjc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMGY2ZTc0NmRkYTI0MDMy
NWU5OTY5ZDBhYjJjM2EwNThiMTU2MzM4NS4uZWNiZGEwMTE1YmJjZTgxYjc2YTRlNDg1OGU1MGRk
ZjZkODk2M2ZlZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDE5LTAzLTAxICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW0NvbnRlbnRDaGFuZ2VPYnNl
cnZlcl0gQ2hlY2sgZm9yIHBlbmRpbmcgc3R5bGUgcmVjYWxjcyBhdCB0aGUgZW5kIG9mIGVhY2gg
dGltZXIgcnVuLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTk1MjIwCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS80ODUxODk3OT4KKworICAgICAgICBS
ZXZpZXdlZCBieSBTaW1vbiBGcmFzZXIuCisKKyAgICAgICAgZGlkU2NoZWR1bGVTdHlsZVJlY2Fs
YyBjYWxsYmFjayB3YXMgaW50cm9kdWNlZCB0byBzZWUgaWYgYSBzdHlsZSByZWNhbGMgaXMgc2No
ZWR1bGVkIHdoaWxlIGZpcmluZyB0aGUgRE9NIHRpbWVyLiBIb3dldmVyIGl0IGRvZXMgbm90IGhh
bmRsZSB0aGUgY2FzZQorICAgICAgICB3aGVuIGluIGFkZGl0aW9uIHRvIHRoaXMgc3R5bGUgcmVj
YWxjIHNjaGVkdWxpbmcsIHNvbWV0aGluZyBsYXRlciAodGhvdWdoIGR1cmluZyB0aGUgc2FtZSB0
aW1lciBmaXJpbmcpIHRyaWdnZXJzIGEgc3luYyBzdHlsZSByZWNhbGMuCisgICAgICAgIExldCdz
IGp1c3QgY2hlY2sgaWYgd2UndmUgZ290IGEgcGVuZGluZyBzdHlsZSByZWNhbGMgd2hlbiB0aGUg
RE9NIHRpbWVyIGNvbWVzIGJhY2suCisKKyAgICAgICAgVGVzdDogZmFzdC9ldmVudHMvdG91Y2gv
aW9zL3N0eWxlLXJlY2FsYy1zY2hlZHVsZS1hbmQtZm9yY2UtcmVsYWxjLmh0bWwKKworICAgICAg
ICAqIGRvbS9Eb2N1bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudDo6c2NoZWR1
bGVTdHlsZVJlY2FsYyk6CisgICAgICAgICogcGFnZS9pb3MvQ29udGVudENoYW5nZU9ic2VydmVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Omhhc1BlbmRpbmdTdHlsZVJlY2FsYyk6CisgICAgICAg
IChXZWJDb3JlOjpDb250ZW50Q2hhbmdlT2JzZXJ2ZXI6OnN0YXJ0T2JzZXJ2aW5nRE9NVGltZXJF
eGVjdXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRlbnRDaGFuZ2VPYnNlcnZlcjo6c3RvcE9i
c2VydmluZ0RPTVRpbWVyRXhlY3V0ZSk6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50Q2hhbmdl
T2JzZXJ2ZXI6OnN0YXJ0T2JzZXJ2aW5nQ29udGVudENoYW5nZXMpOgorICAgICAgICAoV2ViQ29y
ZTo6Q29udGVudENoYW5nZU9ic2VydmVyOjpkaWRTY2hlZHVsZVN0eWxlUmVjYWxjKTogRGVsZXRl
ZC4KKyAgICAgICAgKiBwYWdlL2lvcy9Db250ZW50Q2hhbmdlT2JzZXJ2ZXIuaDoKKyAgICAgICAg
KFdlYkNvcmU6OkNvbnRlbnRDaGFuZ2VPYnNlcnZlcjo6c3RhcnRPYnNlcnZpbmdTdHlsZVJlY2Fs
Y1NjaGVkdWxpbmcpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6Q29udGVudENoYW5nZU9i
c2VydmVyOjpzdG9wT2JzZXJ2aW5nU3R5bGVSZWNhbGNTY2hlZHVsaW5nKTogRGVsZXRlZC4KKyAg
ICAgICAgKFdlYkNvcmU6OkNvbnRlbnRDaGFuZ2VPYnNlcnZlcjo6aXNPYnNlcnZpbmdTdHlsZVJl
Y2FsY1NjaGVkdWxpbmcgY29uc3QpOiBEZWxldGVkLgorCiAyMDE5LTAzLTAxICBaYWxhbiBCdWp0
YXMgIDx6YWxhbkBhcHBsZS5jb20+CiAKICAgICAgICAgW0NvbnRlbnRDaGFuZ2VPYnNlcnZlcl0g
UmVuYW1lIG1lbWJlcnMgYW5kIG1vdmUgaW1wbGVtZW50YXRpb24gdG8gaGVhZGVyLgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9Eb2N1bWVudC5jcHAKaW5kZXggNmI2ZjBjZWE5OGRiYmRjNGJiYmQ0ZWM5ZmFlNTIzN2EzMTg2
MDRiNS4uYzYwZDVmNjA1OGYwMzA0ZGM5NDhhZTI5Y2RkNmMwZjA0ZjJhNTRkNSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9k
b20vRG9jdW1lbnQuY3BwCkBAIC0xODMzLDEwICsxODMzLDYgQEAgdm9pZCBEb2N1bWVudDo6c2No
ZWR1bGVTdHlsZVJlY2FsYygpCiAgICAgICAgIHJldHVybjsKIAogICAgIG1fc3R5bGVSZWNhbGNU
aW1lci5zdGFydE9uZVNob3QoMF9zKTsKLSNpZiBQTEFURk9STShJT1NfRkFNSUxZKQotICAgIGlm
IChhdXRvKiBwYWdlID0gdGhpcy0+cGFnZSgpKQotICAgICAgICBwYWdlLT5jb250ZW50Q2hhbmdl
T2JzZXJ2ZXIoKS5kaWRTY2hlZHVsZVN0eWxlUmVjYWxjKCk7Ci0jZW5kaWYKIAogICAgIEluc3Bl
Y3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkU2NoZWR1bGVTdHlsZVJlY2FsY3VsYXRpb24oKnRoaXMp
OwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9pb3MvQ29udGVudENoYW5nZU9i
c2VydmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvaW9zL0NvbnRlbnRDaGFuZ2VPYnNlcnZl
ci5jcHAKaW5kZXggZGVjOWIwZTQzNTg2NjgxZDM4NjM5MTk1ZjE4NjZhM2M5MTI0ZDJhYi4uMGFk
MjU5MWM0ODEyM2Q3MzA2M2JmYmY3YjQ2ZjMwYjQzZThkMGMwMiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGFnZS9pb3MvQ29udGVudENoYW5nZU9ic2VydmVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL2lvcy9Db250ZW50Q2hhbmdlT2JzZXJ2ZXIuY3BwCkBAIC0zNSw2ICszNSwx
NyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK3N0YXRpYyBib29sIGhhc1BlbmRpbmdTdHls
ZVJlY2FsYyhjb25zdCBQYWdlJiBwYWdlKQoreworICAgIGZvciAoYXV0byogZnJhbWUgPSAmcGFn
ZS5tYWluRnJhbWUoKTsgZnJhbWU7IGZyYW1lID0gZnJhbWUtPnRyZWUoKS50cmF2ZXJzZU5leHQo
KSkgeworICAgICAgICBpZiAoYXV0byogZG9jdW1lbnQgPSBmcmFtZS0+ZG9jdW1lbnQoKSkgewor
ICAgICAgICAgICAgaWYgKGRvY3VtZW50LT5oYXNQZW5kaW5nU3R5bGVSZWNhbGMoKSkKKyAgICAg
ICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgICAgfQorICAgIH0KKyAgICByZXR1cm4gZmFs
c2U7Cit9CisKIENvbnRlbnRDaGFuZ2VPYnNlcnZlcjo6Q29udGVudENoYW5nZU9ic2VydmVyKFBh
Z2UmIHBhZ2UpCiAgICAgOiBtX3BhZ2UocGFnZSkKIHsKQEAgLTcxLDcgKzgyLDYgQEAgdm9pZCBD
b250ZW50Q2hhbmdlT2JzZXJ2ZXI6OnN0YXJ0T2JzZXJ2aW5nRE9NVGltZXJFeGVjdXRlKGNvbnN0
IERPTVRpbWVyJiB0aW1lcikKICAgICBpZiAoIWNvbnRhaW5zT2JzZXJ2ZWRET01UaW1lcih0aW1l
cikpCiAgICAgICAgIHJldHVybjsKICAgICBMT0dfV0lUSF9TVFJFQU0oQ29udGVudE9ic2VydmF0
aW9uLCBzdHJlYW0gPDwgInN0YXJ0T2JzZXJ2aW5nRE9NVGltZXJFeGVjdXRlOiBzdGFydCBvYnNl
cnZpbmcgKCIgPDwgJnRpbWVyIDw8ICIpIHRpbWVyIGNhbGxiYWNrLiIpOwotICAgIHN0YXJ0T2Jz
ZXJ2aW5nU3R5bGVSZWNhbGNTY2hlZHVsaW5nKCk7CiAgICAgbV9pc09ic2VydmluZ0NvbnRlbnRD
aGFuZ2VzID0gdHJ1ZTsKIH0KIApAQCAtNzksMzIgKzg5LDI2IEBAIHZvaWQgQ29udGVudENoYW5n
ZU9ic2VydmVyOjpzdG9wT2JzZXJ2aW5nRE9NVGltZXJFeGVjdXRlKGNvbnN0IERPTVRpbWVyJiB0
aW1lcikKIHsKICAgICBpZiAoIWNvbnRhaW5zT2JzZXJ2ZWRET01UaW1lcih0aW1lcikpCiAgICAg
ICAgIHJldHVybjsKKyAgICBMT0dfV0lUSF9TVFJFQU0oQ29udGVudE9ic2VydmF0aW9uLCBzdHJl
YW0gPDwgInN0b3BPYnNlcnZpbmdET01UaW1lckV4ZWN1dGU6IHN0b3Agb2JzZXJ2aW5nICgiIDw8
ICZ0aW1lciA8PCAiKSB0aW1lciBjYWxsYmFjay4iKTsKKwogICAgIHJlbW92ZU9ic2VydmVkRE9N
VGltZXIodGltZXIpOwotICAgIHN0b3BPYnNlcnZpbmdTdHlsZVJlY2FsY1NjaGVkdWxpbmcoKTsK
ICAgICBzdG9wT2JzZXJ2aW5nQ29udGVudENoYW5nZXMoKTsKICAgICBhdXRvIG9ic2VydmVkQ29u
dGVudENoYW5nZSA9IHRoaXMtPm9ic2VydmVkQ29udGVudENoYW5nZSgpOworICAgIGF1dG8gaGFz
UGVuZGluZ1N0eWxlUmVjYWxjID0gV2ViQ29yZTo6aGFzUGVuZGluZ1N0eWxlUmVjYWxjKG1fcGFn
ZSk7CiAgICAgLy8gQ2hlY2sgaWYgdGhlIHRpbWVyIGNhbGxiYWNrIHRyaWdnZXJlZCBlaXRoZXIg
YSBzeW5jIG9yIGFzeW5jIHN0eWxlIHVwZGF0ZS4KLSAgICBhdXRvIGluRGV0ZXJtaW5lZFN0YXRl
ID0gb2JzZXJ2ZWRDb250ZW50Q2hhbmdlID09IFdLQ29udGVudFZpc2liaWxpdHlDaGFuZ2UgfHwg
KCFjb3VudE9mT2JzZXJ2ZWRET01UaW1lcnMoKSAmJiBvYnNlcnZlZENvbnRlbnRDaGFuZ2UgPT0g
V0tDb250ZW50Tm9DaGFuZ2UpOyAgCi0KLSAgICBMT0dfV0lUSF9TVFJFQU0oQ29udGVudE9ic2Vy
dmF0aW9uLCBzdHJlYW0gPDwgInN0b3BPYnNlcnZpbmdET01UaW1lckV4ZWN1dGU6IHN0b3Agb2Jz
ZXJ2aW5nICgiIDw8ICZ0aW1lciA8PCAiKSB0aW1lciBjYWxsYmFjay4iKTsKLSAgICBpZiAoaW5E
ZXRlcm1pbmVkU3RhdGUpIHsKKyAgICBhdXRvIGhhc0RldGVybWluZWRTdGF0ZSA9IG9ic2VydmVk
Q29udGVudENoYW5nZSA9PSBXS0NvbnRlbnRWaXNpYmlsaXR5Q2hhbmdlIHx8ICghY291bnRPZk9i
c2VydmVkRE9NVGltZXJzKCkgJiYgb2JzZXJ2ZWRDb250ZW50Q2hhbmdlID09IFdLQ29udGVudE5v
Q2hhbmdlICYmICFoYXNQZW5kaW5nU3R5bGVSZWNhbGMpOyAgCisgICAgaWYgKGhhc0RldGVybWlu
ZWRTdGF0ZSkgewogICAgICAgICBMT0dfV0lUSF9TVFJFQU0oQ29udGVudE9ic2VydmF0aW9uLCBz
dHJlYW0gPDwgInN0b3BPYnNlcnZpbmdET01UaW1lckV4ZWN1dGU6ICgiIDw8ICZ0aW1lciA8PCAi
KSBpbiBkZXRlcm1pbmVkIHN0YXRlLiIpOwogICAgICAgICBtX3BhZ2UuY2hyb21lKCkuY2xpZW50
KCkub2JzZXJ2ZWRDb250ZW50Q2hhbmdlKG1fcGFnZS5tYWluRnJhbWUoKSk7Ci0gICAgfSBlbHNl
IGlmIChvYnNlcnZlZENvbnRlbnRDaGFuZ2UgPT0gV0tDb250ZW50SW5kZXRlcm1pbmF0ZUNoYW5n
ZSkgeworICAgICAgICByZXR1cm47CisgICAgfQorICAgIGlmIChoYXNQZW5kaW5nU3R5bGVSZWNh
bGMpIHsKICAgICAgICAgLy8gQW4gYXN5bmMgc3R5bGUgcmVjYWxjIGhhcyBiZWVuIHNjaGVkdWxl
ZC4gTGV0J3Mgb2JzZXJ2ZSBpdC4KICAgICAgICAgTE9HX1dJVEhfU1RSRUFNKENvbnRlbnRPYnNl
cnZhdGlvbiwgc3RyZWFtIDw8ICJzdG9wT2JzZXJ2aW5nRE9NVGltZXJFeGVjdXRlOiAoIiA8PCAm
dGltZXIgPDwgIikgd2FpdCB1bnRpbCBuZXh0IHN0eWxlIHJlY2FsYyBmaXJlcy4iKTsKICAgICAg
ICAgc2V0U2hvdWxkT2JzZXJ2ZVN0eWxlUmVjYWxjKHRydWUpOwogICAgIH0KIH0KIAotdm9pZCBD
b250ZW50Q2hhbmdlT2JzZXJ2ZXI6OmRpZFNjaGVkdWxlU3R5bGVSZWNhbGMoKQotewotICAgIGlm
ICghaXNPYnNlcnZpbmdTdHlsZVJlY2FsY1NjaGVkdWxpbmcoKSkKLSAgICAgICAgcmV0dXJuOwot
ICAgIExPRyhDb250ZW50T2JzZXJ2YXRpb24sICJkaWRTY2hlZHVsZVN0eWxlUmVjYWxjOiByZWdp
c3RlciB0aGlzIHN0eWxlIHJlY2FsYyBzY2hlZHVsZSBhbmQgb2JzZXJ2ZSB3aGVuIGl0IGZpcmVz
LiIpOwotICAgIHNldE9ic2VydmVkQ29udGVudENoYW5nZShXS0NvbnRlbnRJbmRldGVybWluYXRl
Q2hhbmdlKTsKLX0KLQogdm9pZCBDb250ZW50Q2hhbmdlT2JzZXJ2ZXI6OnN0YXJ0T2JzZXJ2aW5n
U3R5bGVSZWNhbGMoKQogewogICAgIGlmICghc2hvdWxkT2JzZXJ2ZVN0eWxlUmVjYWxjKCkpCkBA
IC0xMTksOCArMTIzLDggQEAgdm9pZCBDb250ZW50Q2hhbmdlT2JzZXJ2ZXI6OnN0b3BPYnNlcnZp
bmdTdHlsZVJlY2FsYygpCiAgICAgICAgIHJldHVybjsKICAgICBMT0coQ29udGVudE9ic2VydmF0
aW9uLCAic3RvcE9ic2VydmluZ1N0eWxlUmVjYWxjOiBzdG9wIG9ic2VydmluZyBzdHlsZSByZWNh
bGMiKTsKICAgICBzZXRTaG91bGRPYnNlcnZlU3R5bGVSZWNhbGMoZmFsc2UpOwotICAgIGF1dG8g
aW5EZXRlcm1pbmVkU3RhdGUgPSBvYnNlcnZlZENvbnRlbnRDaGFuZ2UoKSA9PSBXS0NvbnRlbnRW
aXNpYmlsaXR5Q2hhbmdlIHx8ICFjb3VudE9mT2JzZXJ2ZWRET01UaW1lcnMoKTsKLSAgICBpZiAo
IWluRGV0ZXJtaW5lZFN0YXRlKSB7CisgICAgYXV0byBoYXNEZXRlcm1pbmVkU3RhdGUgPSBvYnNl
cnZlZENvbnRlbnRDaGFuZ2UoKSA9PSBXS0NvbnRlbnRWaXNpYmlsaXR5Q2hhbmdlIHx8ICFjb3Vu
dE9mT2JzZXJ2ZWRET01UaW1lcnMoKTsKKyAgICBpZiAoIWhhc0RldGVybWluZWRTdGF0ZSkgewog
ICAgICAgICBMT0coQ29udGVudE9ic2VydmF0aW9uLCAic3RvcE9ic2VydmluZ1N0eWxlUmVjYWxj
OiBjYW4ndCBkZWNpZGVkIGl0IHlldC4iKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTE1
NCw2ICsxNTgsNyBAQCB2b2lkIENvbnRlbnRDaGFuZ2VPYnNlcnZlcjo6ZGlkQ29udGVudFZpc2li
aWxpdHlDaGFuZ2UoKQogCiB2b2lkIENvbnRlbnRDaGFuZ2VPYnNlcnZlcjo6c3RhcnRPYnNlcnZp
bmdDb250ZW50Q2hhbmdlcygpCiB7CisgICAgQVNTRVJUKCFoYXNQZW5kaW5nU3R5bGVSZWNhbGMo
bV9wYWdlKSk7CiAgICAgc3RhcnRPYnNlcnZpbmdET01UaW1lclNjaGVkdWxpbmcoKTsKICAgICBy
ZXNldE9ic2VydmVkQ29udGVudENoYW5nZSgpOwogICAgIGNsZWFyT2JzZXJ2ZWRET01UaW1lcnMo
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvaW9zL0NvbnRlbnRDaGFuZ2VPYnNl
cnZlci5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9pb3MvQ29udGVudENoYW5nZU9ic2VydmVyLmgK
aW5kZXggNjdiNWYyYWQ1MDhhNDEzZTM4MDQ5MjVkOWIwZTk1ODE5YWMxZGIxNS4uN2FiODIwZGE3
ODlkZDE3Zjc4OWZjNDU3NDQzNmMxYmE5ZmZiY2JjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGFnZS9pb3MvQ29udGVudENoYW5nZU9ic2VydmVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9pb3MvQ29udGVudENoYW5nZU9ic2VydmVyLmgKQEAgLTQ1LDcgKzQ1LDYgQEAgcHVibGlj
OgogICAgIHZvaWQgZGlkSW5zdGFsbERPTVRpbWVyKGNvbnN0IERPTVRpbWVyJiwgU2Vjb25kcyB0
aW1lb3V0LCBib29sIHNpbmdsZVNob3QpOwogICAgIHZvaWQgZGlkUmVtb3ZlRE9NVGltZXIoY29u
c3QgRE9NVGltZXImKTsKICAgICB2b2lkIGRpZENvbnRlbnRWaXNpYmlsaXR5Q2hhbmdlKCk7Ci0g
ICAgdm9pZCBkaWRTY2hlZHVsZVN0eWxlUmVjYWxjKCk7CiAgICAgdm9pZCBkaWRTdXNwZW5kQWN0
aXZlRE9NT2JqZWN0cygpOwogICAgIHZvaWQgd2lsbERldGFjaFBhZ2UoKTsKIApAQCAtOTUsMTAg
Kzk0LDYgQEAgcHJpdmF0ZToKICAgICB2b2lkIHJlbW92ZU9ic2VydmVkRE9NVGltZXIoY29uc3Qg
RE9NVGltZXImKTsKICAgICBib29sIGNvbnRhaW5zT2JzZXJ2ZWRET01UaW1lcihjb25zdCBET01U
aW1lciYgdGltZXIpIGNvbnN0IHsgcmV0dXJuIG1fRE9NVGltZXJMaXN0LmNvbnRhaW5zKCZ0aW1l
cik7IH0KIAotICAgIHZvaWQgc3RhcnRPYnNlcnZpbmdTdHlsZVJlY2FsY1NjaGVkdWxpbmcoKSB7
IG1faXNPYnNlcnZpbmdTdHlsZVJlY2FsY1NjaGVkdWxpbmcgPSB0cnVlOyB9Ci0gICAgdm9pZCBz
dG9wT2JzZXJ2aW5nU3R5bGVSZWNhbGNTY2hlZHVsaW5nKCkgeyBtX2lzT2JzZXJ2aW5nU3R5bGVS
ZWNhbGNTY2hlZHVsaW5nID0gZmFsc2U7IH0KLSAgICBib29sIGlzT2JzZXJ2aW5nU3R5bGVSZWNh
bGNTY2hlZHVsaW5nKCkgY29uc3QgeyByZXR1cm4gbV9pc09ic2VydmluZ1N0eWxlUmVjYWxjU2No
ZWR1bGluZzsgfQotCiAgICAgdm9pZCBzZXRTaG91bGRPYnNlcnZlU3R5bGVSZWNhbGMoYm9vbCBz
aG91bGRPYnNlcnZlKSB7IG1fc2hvdWxkT2JzZXJ2ZVN0eWxlUmVjYWxjID0gc2hvdWxkT2JzZXJ2
ZTsgfQogICAgIGJvb2wgc2hvdWxkT2JzZXJ2ZVN0eWxlUmVjYWxjKCkgY29uc3QgeyByZXR1cm4g
bV9zaG91bGRPYnNlcnZlU3R5bGVSZWNhbGM7IH0KIApAQCAtMTE0LDcgKzEwOSw2IEBAIHByaXZh
dGU6CiAgICAgUGFnZSYgbV9wYWdlOwogICAgIEhhc2hTZXQ8Y29uc3QgRE9NVGltZXIqPiBtX0RP
TVRpbWVyTGlzdDsKICAgICBib29sIG1fc2hvdWxkT2JzZXJ2ZVN0eWxlUmVjYWxjIHsgZmFsc2Ug
fTsKLSAgICBib29sIG1faXNPYnNlcnZpbmdTdHlsZVJlY2FsY1NjaGVkdWxpbmcgeyBmYWxzZSB9
OwogICAgIGJvb2wgbV9pc09ic2VydmluZ0RPTVRpbWVyU2NoZWR1bGluZyB7IGZhbHNlIH07CiAg
ICAgYm9vbCBtX2lzT2JzZXJ2aW5nQ29udGVudENoYW5nZXMgeyBmYWxzZSB9OwogfTsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRl
eCA5OGRjNWY3Mjg0MzMyZGMzYjI0NWQxMjBkMzZmMzM4YjlhMzdiMWMyLi41YWFhMDMzYzViMDFl
ZmY1MjU4MmY2ZWY5MjE0OGExMzJjODc1OTdjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTkt
MDMtMDEgIFphbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbQ29udGVu
dENoYW5nZU9ic2VydmVyXSBDaGVjayBmb3IgcGVuZGluZyBzdHlsZSByZWNhbGNzIGF0IHRoZSBl
bmQgb2YgZWFjaCB0aW1lciBydW4uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xOTUyMjAKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQ4NTE4OTc5Pgor
CisgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNlci4KKworICAgICAgICAqIGZhc3QvZXZl
bnRzL3RvdWNoL2lvcy9zdHlsZS1yZWNhbGMtc2NoZWR1bGUtYW5kLWZvcmNlLXJlbGFsYy1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZXZlbnRzL3RvdWNoL2lvcy9zdHlsZS1y
ZWNhbGMtc2NoZWR1bGUtYW5kLWZvcmNlLXJlbGFsYy5odG1sOiBBZGRlZC4KKwogMjAxOS0wMy0w
MSAgQW50b2luZSBRdWludCAgPGdyYW91dHNAYXBwbGUuY29tPgogCiAgICAgICAgIEVuYWJsZSBX
UFQgUG9pbnRlciBFdmVudHMgdGVzdHMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZXZl
bnRzL3RvdWNoL2lvcy9zdHlsZS1yZWNhbGMtc2NoZWR1bGUtYW5kLWZvcmNlLXJlbGFsYy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9pb3Mvc3R5bGUtcmVjYWxj
LXNjaGVkdWxlLWFuZC1mb3JjZS1yZWxhbGMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY3N2Uz
YTMxZTRkMjc1OTNhYTk0ZGJkNjM3YTQ1M2FmOGNlZGRkNzgKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9pb3Mvc3R5bGUtcmVjYWxjLXNjaGVkdWxlLWFu
ZC1mb3JjZS1yZWxhbGMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAorUEFTUyBpZiAnY2xp
Y2tlZCcgdGV4dCBpcyBzaG93biBiZWxvdy4KK2NsaWNrZWQKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvZXZlbnRzL3RvdWNoL2lvcy9zdHlsZS1yZWNhbGMtc2NoZWR1bGUtYW5kLWZvcmNl
LXJlbGFsYy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvaW9zL3N0eWxlLXJl
Y2FsYy1zY2hlZHVsZS1hbmQtZm9yY2UtcmVsYWxjLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGQ1M2M2ZWYw
ZjVjY2VmODA0YzQxMDQ5ZDRiYmRiMjIxMDA0NzhkNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvZXZlbnRzL3RvdWNoL2lvcy9zdHlsZS1yZWNhbGMtc2NoZWR1bGUtYW5kLWZv
cmNlLXJlbGFsYy5odG1sCkBAIC0wLDAgKzEsNjYgQEAKKzxodG1sPgorPGhlYWQ+Cis8dGl0bGU+
VGhpcyB0ZXN0IHRoYXQgd2UgdHJpZ2dlciBob3ZlciB3aGVuIHRoZSBjb250ZW50IGNoYW5nZSBz
dGFydHMgYXMgYXN5bmMgYnV0IGl0IHR1cm5zIGludG8gYSBzeW5jIHN0eWxlIHJlY2FsYy48L3Rp
dGxlPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy9iYXNpYy1nZXN0dXJlcy5q
cyI+PC9zY3JpcHQ+Cis8c3R5bGU+CisjdGFwdGhpcyB7CisgICAgd2lkdGg6IDQwMHB4OworICAg
IGhlaWdodDogNDAwcHg7CisgICAgYm9yZGVyOiAxcHggc29saWQgZ3JlZW47Cit9CisKKyNzdGF5
c0hpZGRlbiB7CisgICAgdmlzaWJpbGl0eTogaGlkZGVuOworICAgIHdpZHRoOiAxMDBweDsKKyAg
ICBoZWlnaHQ6IDEwMHB4OworICAgIGJhY2tncm91bmQtY29sb3I6IGdyZWVuOworfQorPC9zdHls
ZT4KKzxzY3JpcHQ+Cithc3luYyBmdW5jdGlvbiB0ZXN0KCkgeworICAgIGlmICghd2luZG93LnRl
c3RSdW5uZXIgfHwgIXRlc3RSdW5uZXIucnVuVUlTY3JpcHQpCisgICAgICAgIHJldHVybjsKKwor
ICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4
dCgpOworCisgICAgbGV0IHJlY3QgPSB0YXB0aGlzLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpOwor
ICAgIGxldCB4ID0gcmVjdC5sZWZ0ICsgcmVjdC53aWR0aCAvIDI7CisgICAgbGV0IHkgPSByZWN0
LnRvcCArIHJlY3QuaGVpZ2h0IC8gMjsKKworICAgIGF3YWl0IHRhcEF0UG9pbnQoeCwgeSk7Cit9
Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5IG9ubG9hZD0idGVzdCgpIj4KKzxkaXYgaWQ9dGFw
dGhpcz5QQVNTIGlmICdjbGlja2VkJyB0ZXh0IGlzIHNob3duIGJlbG93LjwvZGl2PgorPGRpdiBp
ZD1zdGF5c0hpZGRlbj48L2Rpdj4KKzxwcmUgaWQ9cmVzdWx0PjwvcHJlPgorPHNjcmlwdD4KK3Rh
cHRoaXMuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VvdmVyIiwgZnVuY3Rpb24oIGV2ZW50ICkgewor
ICAgIC8vIDEuIEluc3RhbGwgYSB0aW1lciBvbiBob3ZlcgorICAgIHNldFRpbWVvdXQoZnVuY3Rp
b24oKSB7CisgICAgICAgIC8vIDIuIFRyaWdnZXIgc29tZSBub24tZm9yY2luZyAobm9uLXZpc2li
aWxpdHkpIHN0eWxlIGNoYW5nZSB3aXRoIGZvcmNpbmcgb2Zmc2V0SGVpZ2h0LgorICAgICAgICBz
dGF5c0hpZGRlbi5zdHlsZS5tYXJnaW5MZWZ0ID0gIjVweCI7CisKKyAgICAgICAgZG9jdW1lbnQu
Ym9keS5vZmZzZXRIZWlnaHQ7CisgICAgfSwgMCk7CisgICAgLy8gMy4gSW5zdGFsbCBhIGxvbmdl
ciwgZW1wdHkgdGltZXIuCisgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsKKyAgICB9LCA1KTsK
K30sIGZhbHNlKTsKKworc3RheXNIaWRkZW4uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCBmdW5j
dGlvbiggZXZlbnQgKSB7ICAgCisgICAgcmVzdWx0LmlubmVySFRNTCA9ICJjbGlja2VkIGhpZGRl
biI7Cit9LCBmYWxzZSk7CisKK3RhcHRoaXMuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCBmdW5j
dGlvbiggZXZlbnQgKSB7ICAgCisgICAgcmVzdWx0LmlubmVySFRNTCA9ICJjbGlja2VkIjsKKyAg
ICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeworICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIp
CisgICAgICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKKyAgICB9LCAwKTsKK30sIGZh
bHNlKTsKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>