<?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>177320</bug_id>
          
          <creation_ts>2017-09-21 12:49:26 -0700</creation_ts>
          <short_desc>Remove some more code from RenderFlowThread</short_desc>
          <delta_ts>2017-09-27 12:22:44 -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>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>
          
          <blocked>174978</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Antti Koivisto">koivisto</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>hyatt</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>1351331</commentid>
    <comment_count>0</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2017-09-21 12:49:26 -0700</bug_when>
    <thetext>Remove some dead code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1351334</commentid>
    <comment_count>1</comment_count>
      <attachid>321464</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2017-09-21 12:52:28 -0700</bug_when>
    <thetext>Created attachment 321464
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1351335</commentid>
    <comment_count>2</comment_count>
      <attachid>321465</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2017-09-21 12:54:36 -0700</bug_when>
    <thetext>Created attachment 321465
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1351339</commentid>
    <comment_count>3</comment_count>
      <attachid>321465</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2017-09-21 13:01:50 -0700</bug_when>
    <thetext>Comment on attachment 321465
patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1351380</commentid>
    <comment_count>4</comment_count>
      <attachid>321465</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-09-21 14:11:06 -0700</bug_when>
    <thetext>Comment on attachment 321465
patch

Clearing flags on attachment: 321465

Committed r222350: &lt;http://trac.webkit.org/changeset/222350&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1351381</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-09-21 14:11:08 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1353338</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-09-27 12:22:44 -0700</bug_when>
    <thetext>&lt;rdar://problem/34693159&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>321464</attachid>
            <date>2017-09-21 12:52:28 -0700</date>
            <delta_ts>2017-09-21 12:54:36 -0700</delta_ts>
            <desc>patch</desc>
            <filename>remove-more-renderflowthread.patch</filename>
            <type>text/plain</type>
            <size>13239</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIyMjM0MCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSw0ICsxLDMwIEBACi0yMDE3LTA5LTIxICBCcmlhbiBC
dXJnICA8YmJ1cmdAYXBwbGUuY29tPgorMjAxNy0wOS0yMSAgQW50dGkgS29pdmlzdG8gIDxhbnR0
aUBhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIHNvbWUgbW9yZSBjb2RlIGZyb20gUmVuZGVy
Rmxvd1RocmVhZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTc3MzIwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgTW9yZSBkZWFkIGNvZGUgcmVsYXRlZCB0byBuYW1lZCBmbG93cy4KKworICAgICAgICAqIHJl
bmRlcmluZy9SZW5kZXJGbG93VGhyZWFkLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckZs
b3dUaHJlYWQ6OlJlbmRlckZsb3dUaHJlYWQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRmxv
d1RocmVhZDo6aW52YWxpZGF0ZVJlZ2lvbnMpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRmxv
d1RocmVhZDo6bGF5b3V0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckZsb3dUaHJlYWQ6Omxv
Z2ljYWxXaWR0aENoYW5nZWRJblJlZ2lvbnNGb3JCbG9jayk6CisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJGbG93VGhyZWFkOjp1cGRhdGVSZWdpb25zRmxvd1RocmVhZFBvcnRpb25SZWN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlckZsb3dUaHJlYWQ6OmFkZEZvcmNlZFJlZ2lvbkJyZWFrKToK
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckZsb3dUaHJlYWQ6Om9mZnNldEZyb21Mb2dpY2FsVG9w
T2ZGaXJzdFJlZ2lvbiBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJGbG93VGhyZWFk
OjpoYXNDYWNoZWRPZmZzZXRGcm9tTG9naWNhbFRvcE9mRmlyc3RSZWdpb24gY29uc3QpOiBEZWxl
dGVkLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRmxvd1RocmVhZDo6Y2FjaGVkT2Zmc2V0RnJv
bUxvZ2ljYWxUb3BPZkZpcnN0UmVnaW9uIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNv
cmU6OlJlbmRlckZsb3dUaHJlYWQ6OnNldE9mZnNldEZyb21Mb2dpY2FsVG9wT2ZGaXJzdFJlZ2lv
bik6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJGbG93VGhyZWFkOjpjbGVhck9m
ZnNldEZyb21Mb2dpY2FsVG9wT2ZGaXJzdFJlZ2lvbik6IERlbGV0ZWQuCisgICAgICAgIChXZWJD
b3JlOjpSZW5kZXJGbG93VGhyZWFkOjpjdXJyZW50QWN0aXZlUmVuZGVyQm94IGNvbnN0KTogRGVs
ZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckZsb3dUaHJlYWQ6OnB1c2hGbG93VGhyZWFk
TGF5b3V0U3RhdGUpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRmxvd1RocmVh
ZDo6cG9wRmxvd1RocmVhZExheW91dFN0YXRlKTogRGVsZXRlZC4KKyAgICAgICAgKiByZW5kZXJp
bmcvUmVuZGVyRmxvd1RocmVhZC5oOgorCisyMjAxNy0wOS0yMSAgQnJpYW4gQnVyZyAgPGJidXJn
QGFwcGxlLmNvbT4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBrZXlib2FyZCBzaG9ydGN1dCBm
b3IgIlJlbG9hZCBwYWdlIGZyb20gb3JpZ2luIiBkb2Vzbid0IG1hdGNoIFNhZmFyaSwgYW5kIGRv
ZXNuJ3Qgd29yawogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTc3MDEwCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRmxvd1RocmVh
ZC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZsb3dU
aHJlYWQuY3BwCShyZXZpc2lvbiAyMjIzMzUpCisrKyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyRmxvd1RocmVhZC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTUxLDE0ICs1MSwxMSBAQCBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKIFJlbmRlckZsb3dUaHJlYWQ6OlJlbmRlckZsb3dUaHJlYWQo
RG9jdW1lbnQmIGRvY3VtZW50LCBSZW5kZXJTdHlsZSYmIHN0eWxlKQogICAgIDogUmVuZGVyQmxv
Y2tGbG93KGRvY3VtZW50LCBXVEZNb3ZlKHN0eWxlKSkKLSAgICAsIG1fcHJldmlvdXNSZWdpb25D
b3VudCgwKQogICAgICwgbV9jdXJyZW50UmVnaW9uTWFpbnRhaW5lcihudWxscHRyKQogICAgICwg
bV9yZWdpb25zSW52YWxpZGF0ZWQoZmFsc2UpCiAgICAgLCBtX3JlZ2lvbnNIYXZlVW5pZm9ybUxv
Z2ljYWxXaWR0aCh0cnVlKQogICAgICwgbV9yZWdpb25zSGF2ZVVuaWZvcm1Mb2dpY2FsSGVpZ2h0
KHRydWUpCiAgICAgLCBtX3BhZ2VMb2dpY2FsU2l6ZUNoYW5nZWQoZmFsc2UpCi0gICAgLCBtX2xh
eW91dFBoYXNlKExheW91dFBoYXNlTWVhc3VyZUNvbnRlbnQpCi0gICAgLCBtX25lZWRzVHdvUGhh
c2VzTGF5b3V0KGZhbHNlKQogewogICAgIHNldElzUmVuZGVyRmxvd1RocmVhZCh0cnVlKTsKIH0K
QEAgLTEwMiw4ICs5OSw2IEBAIHZvaWQgUmVuZGVyRmxvd1RocmVhZDo6cmVtb3ZlUmVnaW9uRnJv
bVQKIAogdm9pZCBSZW5kZXJGbG93VGhyZWFkOjppbnZhbGlkYXRlUmVnaW9ucyhNYXJraW5nQmVo
YXZpb3IgbWFya2luZ1BhcmVudHMpCiB7Ci0gICAgQVNTRVJUKCFpbkZpbmFsTGF5b3V0UGhhc2Uo
KSk7Ci0KICAgICBpZiAobV9yZWdpb25zSW52YWxpZGF0ZWQpIHsKICAgICAgICAgQVNTRVJUKHNl
bGZOZWVkc0xheW91dCgpKTsKICAgICAgICAgcmV0dXJuOwpAQCAtMTY1LDEwICsxNjAsNiBAQCB2
b2lkIFJlbmRlckZsb3dUaHJlYWQ6OmxheW91dCgpCiAKICAgICBtX3BhZ2VMb2dpY2FsU2l6ZUNo
YW5nZWQgPSBtX3JlZ2lvbnNJbnZhbGlkYXRlZCAmJiBldmVySGFkTGF5b3V0KCk7CiAKLSAgICAv
LyBJdCdzIGFsc28gcG9zc2libGUgdG8gbmVlZCBhIHNlY29uZGFyeSBsYXlvdXQgaWYgdGhlIG92
ZXJmbG93IGNvbXB1dGF0aW9uIGludmFsaWRhdGVkIHRoZSByZWdpb24gY2hhaW4gKGUuZy4gb3Zl
cmZsb3c6IGF1dG8gc2Nyb2xsYmFycwotICAgIC8vIHNocnVuayBzb21lIHJlZ2lvbnMpIHNvIHJl
cHJvcGFnYXRpb24gaXMgcmVxdWlyZWQuCi0gICAgbV9uZWVkc1R3b1BoYXNlc0xheW91dCA9IGlu
T3ZlcmZsb3dMYXlvdXRQaGFzZSgpICYmIG1fcmVnaW9uc0ludmFsaWRhdGVkOwotCiAgICAgdmFs
aWRhdGVSZWdpb25zKCk7CiAKICAgICBSZW5kZXJCbG9ja0Zsb3c6OmxheW91dCgpOwpAQCAtNDU0
LDEzICs0NDUsOCBAQCB2b2lkIFJlbmRlckZsb3dUaHJlYWQ6OnJlbW92ZUxpbmVSZWdpb25JCiAK
IHZvaWQgUmVuZGVyRmxvd1RocmVhZDo6bG9naWNhbFdpZHRoQ2hhbmdlZEluUmVnaW9uc0ZvckJs
b2NrKGNvbnN0IFJlbmRlckJsb2NrKiBibG9jaywgYm9vbCYgcmVsYXlvdXRDaGlsZHJlbikKIHsK
LSAgICBpZiAoIWhhc1ZhbGlkUmVnaW9uSW5mbygpKSB7Ci0gICAgICAgIC8vIEZJWE1FOiBSZW1v
dmUgb25jZSB3ZSBzdG9wIGxheWluZyBvdXQgZmxvdyB0aHJlYWRzIHdpdGhvdXQgcmVnaW9ucy4K
LSAgICAgICAgLy8gSWYgd2UgaGFkIHJlZ2lvbnMgYnV0IGRvbid0IGFueSBtb3JlLCByZWxheW91
dCB0aGUgY2hpbGRyZW4gYmVjYXVzZSB0aGUgY29kZSBiZWxvdwotICAgICAgICAvLyBjYW4ndCBw
cm9wZXJseSBkZXRlY3QgdGhpcyBzY2VuYXJpby4KLSAgICAgICAgcmVsYXlvdXRDaGlsZHJlbiB8
PSBwcmV2aW91c1JlZ2lvbkNvdW50Q2hhbmdlZCgpOworICAgIGlmICghaGFzVmFsaWRSZWdpb25J
bmZvKCkpCiAgICAgICAgIHJldHVybjsKLSAgICB9CiAKICAgICBhdXRvIGl0ID0gbV9yZWdpb25S
YW5nZU1hcC5maW5kKGJsb2NrKTsKICAgICBpZiAoaXQgPT0gbV9yZWdpb25SYW5nZU1hcC5lbmQo
KSkKQEAgLTgwOCwxMSArNzk0LDkgQEAgdm9pZCBSZW5kZXJGbG93VGhyZWFkOjptYXJrUmVnaW9u
c0Zvck92ZQogICAgICAgICByZWdpb24tPnNldE5lZWRzU2ltcGxpZmllZE5vcm1hbEZsb3dMYXlv
dXQoKTsKIH0KIAotdm9pZCBSZW5kZXJGbG93VGhyZWFkOjp1cGRhdGVSZWdpb25zRmxvd1RocmVh
ZFBvcnRpb25SZWN0KGNvbnN0IFJlbmRlclJlZ2lvbiogbGFzdFJlZ2lvbldpdGhDb250ZW50KQor
dm9pZCBSZW5kZXJGbG93VGhyZWFkOjp1cGRhdGVSZWdpb25zRmxvd1RocmVhZFBvcnRpb25SZWN0
KCkKIHsKLSAgICBBU1NFUlQoIWxhc3RSZWdpb25XaXRoQ29udGVudCk7CiAgICAgTGF5b3V0VW5p
dCBsb2dpY2FsSGVpZ2h0ID0gMDsKLSAgICBib29sIGVtcHR5UmVnaW9uc1NlZ21lbnQgPSBmYWxz
ZTsKICAgICAvLyBGSVhNRTogT3B0aW1pemUgbm90IHRvIGNsZWFyIHRoZSBpbnRlcnZhbCBhbGwg
dGhlIHRpbWUuIFRoaXMgaW1wbGllcyBtYW51YWxseSBtYW5hZ2luZyB0aGUgdHJlZSBub2RlcyBs
aWZlY3ljbGUuCiAgICAgbV9yZWdpb25JbnRlcnZhbFRyZWUuY2xlYXIoKTsKICAgICBmb3IgKGF1
dG8mIHJlZ2lvbiA6IG1fcmVnaW9uTGlzdCkgewpAQCAtODI2LDEzICs4MTAsNyBAQCB2b2lkIFJl
bmRlckZsb3dUaHJlYWQ6OnVwZGF0ZVJlZ2lvbnNGbG93CiAgICAgICAgIG1fcmVnaW9uSW50ZXJ2
YWxUcmVlLmFkZChSZWdpb25JbnRlcnZhbFRyZWU6OmNyZWF0ZUludGVydmFsKGxvZ2ljYWxIZWln
aHQsIGxvZ2ljYWxIZWlnaHQgKyByZWdpb25Mb2dpY2FsSGVpZ2h0LCByZWdpb24pKTsKIAogICAg
ICAgICBsb2dpY2FsSGVpZ2h0ICs9IHJlZ2lvbkxvZ2ljYWxIZWlnaHQ7Ci0KLSAgICAgICAgLy8g
T25jZSB3ZSBmaW5kIHRoZSBsYXN0IHJlZ2lvbiB3aXRoIGNvbnRlbnQgdGhlIG5leHQgcmVnaW9u
cyBhcmUgY29uc2lkZXJlZCBlbXB0eS4KLSAgICAgICAgaWYgKGxhc3RSZWdpb25XaXRoQ29udGVu
dCA9PSByZWdpb24pCi0gICAgICAgICAgICBlbXB0eVJlZ2lvbnNTZWdtZW50ID0gdHJ1ZTsKICAg
ICB9Ci0KLSAgICBBU1NFUlQoIWxhc3RSZWdpb25XaXRoQ29udGVudCB8fCBlbXB0eVJlZ2lvbnNT
ZWdtZW50KTsKIH0KIAogLy8gRXZlbiBpZiB3ZSByZXF1aXJlIHRoZSBicmVhayB0byBvY2N1ciBh
dCBvZmZzZXRCcmVha0luRmxvd1RocmVhZCwgYmVjYXVzZSByZWdpb25zIG1heSBoYXZlIG1pbi9t
YXgtaGVpZ2h0IHZhbHVlcywKQEAgLTg0MCwxMyArODE4LDYgQEAgdm9pZCBSZW5kZXJGbG93VGhy
ZWFkOjp1cGRhdGVSZWdpb25zRmxvdwogLy8gb2Zmc2V0QnJlYWtBZGp1c3RtZW50IG1lYXN1cmVz
IHRoZSBkaWZmZXJlbnQgYmV0d2VlbiB0aGUgcmVxdWVzdGVkIGJyZWFrIG9mZnNldCBhbmQgdGhl
IGN1cnJlbnQgYnJlYWsgb2Zmc2V0LgogYm9vbCBSZW5kZXJGbG93VGhyZWFkOjphZGRGb3JjZWRS
ZWdpb25CcmVhayhjb25zdCBSZW5kZXJCbG9jayogYmxvY2ssIExheW91dFVuaXQgb2Zmc2V0QnJl
YWtJbkZsb3dUaHJlYWQsIFJlbmRlckJveCosIGJvb2wsIExheW91dFVuaXQqIG9mZnNldEJyZWFr
QWRqdXN0bWVudCkKIHsKLSAgICAvLyBXZSB0YWtlIGJyZWFrcyBpbnRvIGFjY291bnQgZm9yIGhl
aWdodCBjb21wdXRhdGlvbiBmb3IgYXV0byBsb2dpY2FsIGhlaWdodCByZWdpb25zCi0gICAgLy8g
b25seSBpbiB0aGUgbGF5b3V0IHBoYXNlIGluIHdoaWNoIHdlIGxheSBvdXQgdGhlIGZsb3dzIHRo
cmVhZHMgdW5jb25zdHJhaW5lZAotICAgIC8vIGFuZCB3ZSB1c2UgdGhlIGNvbnRlbnQgYnJlYWtz
IHRvIGRldGVybWluZSB0aGUgY29tcHV0ZWQgYXV0byBoZWlnaHQgZm9yCi0gICAgLy8gYXV0byBs
b2dpY2FsIGhlaWdodCByZWdpb25zLgotICAgIGlmICghaW5NZWFzdXJlQ29udGVudExheW91dFBo
YXNlKCkpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQogICAgIC8vIFdlIG5lZWQgdG8gdXBkYXRl
IHRoZSByZWdpb25zIGZsb3cgdGhyZWFkIHBvcnRpb24gcmVjdCBiZWNhdXNlIHdlIGFyZSBnb2lu
ZyB0byBwcm9jZXNzCiAgICAgLy8gYSBicmVhayBvbiB0aGVzZSByZWdpb25zLgogICAgIHVwZGF0
ZVJlZ2lvbnNGbG93VGhyZWFkUG9ydGlvblJlY3QoKTsKQEAgLTg5NCw2OCArODY1LDggQEAgTGF5
b3V0UmVjdCBSZW5kZXJGbG93VGhyZWFkOjpmcmFnbWVudHNCbwogICAgIHJldHVybiByZXN1bHQ7
CiB9CiAKLWJvb2wgUmVuZGVyRmxvd1RocmVhZDo6aGFzQ2FjaGVkT2Zmc2V0RnJvbUxvZ2ljYWxU
b3BPZkZpcnN0UmVnaW9uKGNvbnN0IFJlbmRlckJveCogYm94KSBjb25zdAotewotICAgIHJldHVy
biBtX2JveGVzVG9PZmZzZXRNYXAuY29udGFpbnMoYm94KTsKLX0KLQotTGF5b3V0VW5pdCBSZW5k
ZXJGbG93VGhyZWFkOjpjYWNoZWRPZmZzZXRGcm9tTG9naWNhbFRvcE9mRmlyc3RSZWdpb24oY29u
c3QgUmVuZGVyQm94KiBib3gpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fYm94ZXNUb09mZnNldE1h
cC5nZXQoYm94KTsKLX0KLQotdm9pZCBSZW5kZXJGbG93VGhyZWFkOjpzZXRPZmZzZXRGcm9tTG9n
aWNhbFRvcE9mRmlyc3RSZWdpb24oY29uc3QgUmVuZGVyQm94KiBib3gsIExheW91dFVuaXQgb2Zm
c2V0KQotewotICAgIG1fYm94ZXNUb09mZnNldE1hcC5zZXQoYm94LCBvZmZzZXQpOwotfQotCi12
b2lkIFJlbmRlckZsb3dUaHJlYWQ6OmNsZWFyT2Zmc2V0RnJvbUxvZ2ljYWxUb3BPZkZpcnN0UmVn
aW9uKGNvbnN0IFJlbmRlckJveCogYm94KQotewotICAgIEFTU0VSVChtX2JveGVzVG9PZmZzZXRN
YXAuY29udGFpbnMoYm94KSk7Ci0gICAgbV9ib3hlc1RvT2Zmc2V0TWFwLnJlbW92ZShib3gpOwot
fQotCi1jb25zdCBSZW5kZXJCb3gqIFJlbmRlckZsb3dUaHJlYWQ6OmN1cnJlbnRBY3RpdmVSZW5k
ZXJCb3goKSBjb25zdAotewotICAgIGlmIChtX2FjdGl2ZU9iamVjdHNTdGFjay5pc0VtcHR5KCkp
Ci0gICAgICAgIHJldHVybiBudWxscHRyOwotCi0gICAgY29uc3QgUmVuZGVyT2JqZWN0KiBjdXJy
ZW50T2JqZWN0ID0gbV9hY3RpdmVPYmplY3RzU3RhY2subGFzdCgpOwotICAgIHJldHVybiBpczxS
ZW5kZXJCb3g+KCpjdXJyZW50T2JqZWN0KSA/IGRvd25jYXN0PFJlbmRlckJveD4oY3VycmVudE9i
amVjdCkgOiBudWxscHRyOwotfQotCi12b2lkIFJlbmRlckZsb3dUaHJlYWQ6OnB1c2hGbG93VGhy
ZWFkTGF5b3V0U3RhdGUoY29uc3QgUmVuZGVyT2JqZWN0JiBvYmplY3QpCi17Ci0gICAgbV9hY3Rp
dmVPYmplY3RzU3RhY2suYXBwZW5kKCZvYmplY3QpOwotCi0gICAgaWYgKGNvbnN0IFJlbmRlckJv
eCogY3VycmVudEJveERlc2NlbmRhbnQgPSBjdXJyZW50QWN0aXZlUmVuZGVyQm94KCkpIHsKLSAg
ICAgICAgTGF5b3V0U3RhdGUqIGxheW91dFN0YXRlID0gY3VycmVudEJveERlc2NlbmRhbnQtPnZp
ZXcoKS5sYXlvdXRTdGF0ZSgpOwotICAgICAgICBpZiAobGF5b3V0U3RhdGUgJiYgbGF5b3V0U3Rh
dGUtPmlzUGFnaW5hdGVkKCkpIHsKLSAgICAgICAgICAgIEFTU0VSVChsYXlvdXRTdGF0ZS0+bV9y
ZW5kZXJlciA9PSBjdXJyZW50Qm94RGVzY2VuZGFudCk7Ci0gICAgICAgICAgICBMYXlvdXRTaXpl
IG9mZnNldERlbHRhID0gbGF5b3V0U3RhdGUtPm1fbGF5b3V0T2Zmc2V0IC0gbGF5b3V0U3RhdGUt
Pm1fcGFnZU9mZnNldDsKLSAgICAgICAgICAgIHNldE9mZnNldEZyb21Mb2dpY2FsVG9wT2ZGaXJz
dFJlZ2lvbihjdXJyZW50Qm94RGVzY2VuZGFudCwgY3VycmVudEJveERlc2NlbmRhbnQtPmlzSG9y
aXpvbnRhbFdyaXRpbmdNb2RlKCkgPyBvZmZzZXREZWx0YS5oZWlnaHQoKSA6IG9mZnNldERlbHRh
LndpZHRoKCkpOwotICAgICAgICB9Ci0gICAgfQotfQotCi12b2lkIFJlbmRlckZsb3dUaHJlYWQ6
OnBvcEZsb3dUaHJlYWRMYXlvdXRTdGF0ZSgpCi17Ci0gICAgaWYgKGNvbnN0IFJlbmRlckJveCog
Y3VycmVudEJveERlc2NlbmRhbnQgPSBjdXJyZW50QWN0aXZlUmVuZGVyQm94KCkpIHsKLSAgICAg
ICAgTGF5b3V0U3RhdGUqIGxheW91dFN0YXRlID0gY3VycmVudEJveERlc2NlbmRhbnQtPnZpZXco
KS5sYXlvdXRTdGF0ZSgpOwotICAgICAgICBpZiAobGF5b3V0U3RhdGUgJiYgbGF5b3V0U3RhdGUt
PmlzUGFnaW5hdGVkKCkpCi0gICAgICAgICAgICBjbGVhck9mZnNldEZyb21Mb2dpY2FsVG9wT2ZG
aXJzdFJlZ2lvbihjdXJyZW50Qm94RGVzY2VuZGFudCk7Ci0gICAgfQotCi0gICAgbV9hY3RpdmVP
YmplY3RzU3RhY2sucmVtb3ZlTGFzdCgpOwotfQotCiBMYXlvdXRVbml0IFJlbmRlckZsb3dUaHJl
YWQ6Om9mZnNldEZyb21Mb2dpY2FsVG9wT2ZGaXJzdFJlZ2lvbihjb25zdCBSZW5kZXJCbG9jayog
Y3VycmVudEJsb2NrKSBjb25zdAogewotICAgIC8vIEZpcnN0IGNoZWNrIGlmIHdlIGNhY2hlZCB0
aGUgb2Zmc2V0IGZvciB0aGUgYmxvY2sgaWYgaXQncyBhbiBhbmNlc3RvciBjb250YWluaW5nIGJs
b2NrIG9mIHRoZSBib3gKLSAgICAvLyBiZWluZyBjdXJyZW50bHkgbGFpZCBvdXQuCi0gICAgaWYg
KGhhc0NhY2hlZE9mZnNldEZyb21Mb2dpY2FsVG9wT2ZGaXJzdFJlZ2lvbihjdXJyZW50QmxvY2sp
KQotICAgICAgICByZXR1cm4gY2FjaGVkT2Zmc2V0RnJvbUxvZ2ljYWxUb3BPZkZpcnN0UmVnaW9u
KGN1cnJlbnRCbG9jayk7Ci0KICAgICAvLyBBcyBhIGxhc3QgcmVzb3J0LCB0YWtlIHRoZSBzbG93
IHBhdGguCiAgICAgTGF5b3V0UmVjdCBibG9ja1JlY3QoMCwgMCwgY3VycmVudEJsb2NrLT53aWR0
aCgpLCBjdXJyZW50QmxvY2stPmhlaWdodCgpKTsKICAgICB3aGlsZSAoY3VycmVudEJsb2NrICYm
ICFpczxSZW5kZXJWaWV3PigqY3VycmVudEJsb2NrKSAmJiAhY3VycmVudEJsb2NrLT5pc1JlbmRl
ckZsb3dUaHJlYWQoKSkgewpJbmRleDogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZs
b3dUaHJlYWQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
Rmxvd1RocmVhZC5oCShyZXZpc2lvbiAyMjIzMzUpCisrKyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyRmxvd1RocmVhZC5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMjUsOSArMTI1LDYgQEAg
cHVibGljOgogICAgIFJlbmRlclJlZ2lvbiogZmlyc3RSZWdpb24oKSBjb25zdDsKICAgICBSZW5k
ZXJSZWdpb24qIGxhc3RSZWdpb24oKSBjb25zdDsKIAotICAgIGJvb2wgcHJldmlvdXNSZWdpb25D
b3VudENoYW5nZWQoKSBjb25zdCB7IHJldHVybiBtX3ByZXZpb3VzUmVnaW9uQ291bnQgIT0gbV9y
ZWdpb25MaXN0LnNpemUoKTsgfTsKLSAgICB2b2lkIHVwZGF0ZVByZXZpb3VzUmVnaW9uQ291bnQo
KSB7IG1fcHJldmlvdXNSZWdpb25Db3VudCA9IG1fcmVnaW9uTGlzdC5zaXplKCk7IH07Ci0KICAg
ICB2aXJ0dWFsIHZvaWQgc2V0UmVnaW9uUmFuZ2VGb3JCb3goY29uc3QgUmVuZGVyQm94JiwgUmVu
ZGVyUmVnaW9uKiwgUmVuZGVyUmVnaW9uKik7CiAgICAgYm9vbCBnZXRSZWdpb25SYW5nZUZvckJv
eChjb25zdCBSZW5kZXJCb3gqLCBSZW5kZXJSZWdpb24qJiBzdGFydFJlZ2lvbiwgUmVuZGVyUmVn
aW9uKiYgZW5kUmVnaW9uKSBjb25zdDsKICAgICBib29sIGNvbXB1dGVkUmVnaW9uUmFuZ2VGb3JC
b3goY29uc3QgUmVuZGVyQm94KiwgUmVuZGVyUmVnaW9uKiYgc3RhcnRSZWdpb24sIFJlbmRlclJl
Z2lvbiomIGVuZFJlZ2lvbikgY29uc3Q7CkBAIC0xNTAsMjQgKzE0Nyw2IEBAIHB1YmxpYzoKICAg
ICB2b2lkIGNvbGxlY3RMYXllckZyYWdtZW50cyhMYXllckZyYWdtZW50cyYsIGNvbnN0IExheW91
dFJlY3QmIGxheWVyQm91bmRpbmdCb3gsIGNvbnN0IExheW91dFJlY3QmIGRpcnR5UmVjdCk7CiAg
ICAgTGF5b3V0UmVjdCBmcmFnbWVudHNCb3VuZGluZ0JveChjb25zdCBMYXlvdXRSZWN0JiBsYXll
ckJvdW5kaW5nQm94KTsKIAotICAgIC8vIEEgZmxvdyB0aHJlYWQgZ29lcyB0aHJvdWdoIGRpZmZl
cmVudCBzdGF0ZXMgZHVyaW5nIGxheW91dC4KLSAgICBlbnVtIExheW91dFBoYXNlIHsKLSAgICAg
ICAgTGF5b3V0UGhhc2VNZWFzdXJlQ29udGVudCA9IDAsIC8vIFRoZSBpbml0aWFsIHBoYXNlLCB1
c2VkIHRvIG1lYXN1cmUgY29udGVudCBmb3IgdGhlIGF1dG8taGVpZ2h0IHJlZ2lvbnMuCi0gICAg
ICAgIExheW91dFBoYXNlQ29uc3RyYWluZWQsIC8vIEluIHRoaXMgcGhhc2UgdGhlIHJlZ2lvbnMg
YXJlIGxhaWQgb3V0IHVzaW5nIHRoZSBzaXplcyBjb21wdXRlZCBpbiB0aGUgbm9ybWFsIHBoYXNl
LgotICAgICAgICBMYXlvdXRQaGFzZU92ZXJmbG93LCAvLyBJbiB0aGlzIHBoYXNlIHRoZSBsYXlv
dXQgb3ZlcmZsb3cgaXMgcHJvcGFnYXRlZCBmcm9tIHRoZSBjb250ZW50IHRvIHRoZSByZWdpb25z
LgotICAgICAgICBMYXlvdXRQaGFzZUZpbmFsIC8vIEluIGNhc2Ugc2Nyb2xsYmFycyBoYXZlIHJl
c2l6ZWQgdGhlIHJlZ2lvbnMsIGNvbnRlbnQgaXMgbGFpZCBvdXQgb25lIGxhc3QgdGltZSB0byBy
ZXNwZWN0IHRoZSBjaGFuZ2UuCi0gICAgfTsKLSAgICBib29sIGluTWVhc3VyZUNvbnRlbnRMYXlv
dXRQaGFzZSgpIGNvbnN0IHsgcmV0dXJuIG1fbGF5b3V0UGhhc2UgPT0gTGF5b3V0UGhhc2VNZWFz
dXJlQ29udGVudDsgfQotICAgIGJvb2wgaW5Db25zdHJhaW5lZExheW91dFBoYXNlKCkgY29uc3Qg
eyByZXR1cm4gbV9sYXlvdXRQaGFzZSA9PSBMYXlvdXRQaGFzZUNvbnN0cmFpbmVkOyB9Ci0gICAg
Ym9vbCBpbk92ZXJmbG93TGF5b3V0UGhhc2UoKSBjb25zdCB7IHJldHVybiBtX2xheW91dFBoYXNl
ID09IExheW91dFBoYXNlT3ZlcmZsb3c7IH0KLSAgICBib29sIGluRmluYWxMYXlvdXRQaGFzZSgp
IGNvbnN0IHsgcmV0dXJuIG1fbGF5b3V0UGhhc2UgPT0gTGF5b3V0UGhhc2VGaW5hbDsgfQotICAg
IHZvaWQgc2V0TGF5b3V0UGhhc2UoTGF5b3V0UGhhc2UgcGhhc2UpIHsgbV9sYXlvdXRQaGFzZSA9
IHBoYXNlOyB9Ci0KLSAgICBib29sIG5lZWRzVHdvUGhhc2VzTGF5b3V0KCkgY29uc3QgeyByZXR1
cm4gbV9uZWVkc1R3b1BoYXNlc0xheW91dDsgfQotICAgIHZvaWQgY2xlYXJOZWVkc1R3b1BoYXNl
c0xheW91dCgpIHsgbV9uZWVkc1R3b1BoYXNlc0xheW91dCA9IGZhbHNlOyB9Ci0KLSAgICB2b2lk
IHB1c2hGbG93VGhyZWFkTGF5b3V0U3RhdGUoY29uc3QgUmVuZGVyT2JqZWN0Jik7Ci0gICAgdm9p
ZCBwb3BGbG93VGhyZWFkTGF5b3V0U3RhdGUoKTsKICAgICBMYXlvdXRVbml0IG9mZnNldEZyb21M
b2dpY2FsVG9wT2ZGaXJzdFJlZ2lvbihjb25zdCBSZW5kZXJCbG9jayopIGNvbnN0OwogICAgIHZv
aWQgY2xlYXJSZW5kZXJCb3hSZWdpb25JbmZvQW5kQ3VzdG9tU3R5bGUoY29uc3QgUmVuZGVyQm94
JiwgY29uc3QgUmVuZGVyUmVnaW9uKiwgY29uc3QgUmVuZGVyUmVnaW9uKiwgY29uc3QgUmVuZGVy
UmVnaW9uKiwgY29uc3QgUmVuZGVyUmVnaW9uKik7CiAKQEAgLTIyMywyMyArMjAyLDE1IEBAIHBy
b3RlY3RlZDoKIAogICAgIHZvaWQgbWFwTG9jYWxUb0NvbnRhaW5lcihjb25zdCBSZW5kZXJMYXll
ck1vZGVsT2JqZWN0KiByZXBhaW50Q29udGFpbmVyLCBUcmFuc2Zvcm1TdGF0ZSYsIE1hcENvb3Jk
aW5hdGVzRmxhZ3MsIGJvb2wqIHdhc0ZpeGVkKSBjb25zdCBvdmVycmlkZTsKIAotICAgIHZvaWQg
dXBkYXRlUmVnaW9uc0Zsb3dUaHJlYWRQb3J0aW9uUmVjdChjb25zdCBSZW5kZXJSZWdpb24qID0g
bnVsbHB0cik7CisgICAgdm9pZCB1cGRhdGVSZWdpb25zRmxvd1RocmVhZFBvcnRpb25SZWN0KCk7
CiAgICAgYm9vbCBzaG91bGRSZXBhaW50KGNvbnN0IExheW91dFJlY3QmKSBjb25zdDsKIAotICAg
IGlubGluZSBib29sIGhhc0NhY2hlZE9mZnNldEZyb21Mb2dpY2FsVG9wT2ZGaXJzdFJlZ2lvbihj
b25zdCBSZW5kZXJCb3gqKSBjb25zdDsKLSAgICBpbmxpbmUgTGF5b3V0VW5pdCBjYWNoZWRPZmZz
ZXRGcm9tTG9naWNhbFRvcE9mRmlyc3RSZWdpb24oY29uc3QgUmVuZGVyQm94KikgY29uc3Q7Ci0g
ICAgaW5saW5lIHZvaWQgc2V0T2Zmc2V0RnJvbUxvZ2ljYWxUb3BPZkZpcnN0UmVnaW9uKGNvbnN0
IFJlbmRlckJveCosIExheW91dFVuaXQpOwotICAgIGlubGluZSB2b2lkIGNsZWFyT2Zmc2V0RnJv
bUxvZ2ljYWxUb3BPZkZpcnN0UmVnaW9uKGNvbnN0IFJlbmRlckJveCopOwotCi0gICAgaW5saW5l
IGNvbnN0IFJlbmRlckJveCogY3VycmVudEFjdGl2ZVJlbmRlckJveCgpIGNvbnN0OwotCiAgICAg
Ym9vbCBnZXRSZWdpb25SYW5nZUZvckJveEZyb21DYWNoZWRJbmZvKGNvbnN0IFJlbmRlckJveCos
IFJlbmRlclJlZ2lvbiomIHN0YXJ0UmVnaW9uLCBSZW5kZXJSZWdpb24qJiBlbmRSZWdpb24pIGNv
bnN0OwogCiAgICAgdm9pZCByZW1vdmVSZW5kZXJCb3hSZWdpb25JbmZvKFJlbmRlckJveCYpOwog
ICAgIHZvaWQgcmVtb3ZlTGluZVJlZ2lvbkluZm8oY29uc3QgUmVuZGVyQmxvY2tGbG93Jik7CiAK
ICAgICBSZW5kZXJSZWdpb25MaXN0IG1fcmVnaW9uTGlzdDsKLSAgICB1bnNpZ25lZCBzaG9ydCBt
X3ByZXZpb3VzUmVnaW9uQ291bnQ7CiAKICAgICBjbGFzcyBSZW5kZXJSZWdpb25SYW5nZSB7CiAg
ICAgcHVibGljOgpAQCAtMzA1LDEyICsyNzYsNiBAQCBwcm90ZWN0ZWQ6CiAgICAgUmVuZGVyQm94
VG9SZWdpb25NYXAgbV9icmVha0JlZm9yZVRvUmVnaW9uTWFwOwogICAgIFJlbmRlckJveFRvUmVn
aW9uTWFwIG1fYnJlYWtBZnRlclRvUmVnaW9uTWFwOwogCi0gICAgdHlwZWRlZiBWZWN0b3I8Y29u
c3QgUmVuZGVyT2JqZWN0Kj4gUmVuZGVyT2JqZWN0U3RhY2s7Ci0gICAgUmVuZGVyT2JqZWN0U3Rh
Y2sgbV9hY3RpdmVPYmplY3RzU3RhY2s7Ci0KLSAgICB0eXBlZGVmIEhhc2hNYXA8Y29uc3QgUmVu
ZGVyQm94KiwgTGF5b3V0VW5pdD4gUmVuZGVyQm94VG9PZmZzZXRNYXA7Ci0gICAgUmVuZGVyQm94
VG9PZmZzZXRNYXAgbV9ib3hlc1RvT2Zmc2V0TWFwOwotCiAgICAgUmVnaW9uSW50ZXJ2YWxUcmVl
IG1fcmVnaW9uSW50ZXJ2YWxUcmVlOwogCiAgICAgQ3VycmVudFJlbmRlclJlZ2lvbk1haW50YWlu
ZXIqIG1fY3VycmVudFJlZ2lvbk1haW50YWluZXI7CkBAIC0zMTksOCArMjg0LDYgQEAgcHJvdGVj
dGVkOgogICAgIGJvb2wgbV9yZWdpb25zSGF2ZVVuaWZvcm1Mb2dpY2FsV2lkdGggOiAxOwogICAg
IGJvb2wgbV9yZWdpb25zSGF2ZVVuaWZvcm1Mb2dpY2FsSGVpZ2h0IDogMTsKICAgICBib29sIG1f
cGFnZUxvZ2ljYWxTaXplQ2hhbmdlZCA6IDE7Ci0gICAgdW5zaWduZWQgbV9sYXlvdXRQaGFzZSA6
IDI7Ci0gICAgYm9vbCBtX25lZWRzVHdvUGhhc2VzTGF5b3V0IDogMTsKIH07CiAKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>321465</attachid>
            <date>2017-09-21 12:54:36 -0700</date>
            <delta_ts>2017-09-21 14:11:06 -0700</delta_ts>
            <desc>patch</desc>
            <filename>remove-more-renderflowthread-2.patch</filename>
            <type>text/plain</type>
            <size>13139</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIyMjM0MCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI5IEBACisyMDE3LTA5LTIxICBBbnR0aSBL
b2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgc29tZSBtb3JlIGNv
ZGUgZnJvbSBSZW5kZXJGbG93VGhyZWFkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xNzczMjAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBNb3JlIGRlYWQgY29kZSByZWxhdGVkIHRvIG5hbWVkIGZsb3dzLgor
CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckZsb3dUaHJlYWQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyRmxvd1RocmVhZDo6UmVuZGVyRmxvd1RocmVhZCk6CisgICAgICAgIChXZWJD
b3JlOjpSZW5kZXJGbG93VGhyZWFkOjppbnZhbGlkYXRlUmVnaW9ucyk6CisgICAgICAgIChXZWJD
b3JlOjpSZW5kZXJGbG93VGhyZWFkOjpsYXlvdXQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
Rmxvd1RocmVhZDo6bG9naWNhbFdpZHRoQ2hhbmdlZEluUmVnaW9uc0ZvckJsb2NrKToKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlckZsb3dUaHJlYWQ6OnVwZGF0ZVJlZ2lvbnNGbG93VGhyZWFkUG9y
dGlvblJlY3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRmxvd1RocmVhZDo6YWRkRm9yY2Vk
UmVnaW9uQnJlYWspOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRmxvd1RocmVhZDo6b2Zmc2V0
RnJvbUxvZ2ljYWxUb3BPZkZpcnN0UmVnaW9uIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJl
bmRlckZsb3dUaHJlYWQ6Omhhc0NhY2hlZE9mZnNldEZyb21Mb2dpY2FsVG9wT2ZGaXJzdFJlZ2lv
biBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJGbG93VGhyZWFkOjpj
YWNoZWRPZmZzZXRGcm9tTG9naWNhbFRvcE9mRmlyc3RSZWdpb24gY29uc3QpOiBEZWxldGVkLgor
ICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRmxvd1RocmVhZDo6c2V0T2Zmc2V0RnJvbUxvZ2ljYWxU
b3BPZkZpcnN0UmVnaW9uKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckZsb3dU
aHJlYWQ6OmNsZWFyT2Zmc2V0RnJvbUxvZ2ljYWxUb3BPZkZpcnN0UmVnaW9uKTogRGVsZXRlZC4K
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckZsb3dUaHJlYWQ6OmN1cnJlbnRBY3RpdmVSZW5kZXJC
b3ggY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRmxvd1RocmVhZDo6
cHVzaEZsb3dUaHJlYWRMYXlvdXRTdGF0ZSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJGbG93VGhyZWFkOjpwb3BGbG93VGhyZWFkTGF5b3V0U3RhdGUpOiBEZWxldGVkLgorICAg
ICAgICAqIHJlbmRlcmluZy9SZW5kZXJGbG93VGhyZWFkLmg6CisKIDIwMTctMDktMjEgIEJyaWFu
IEJ1cmcgIDxiYnVyZ0BhcHBsZS5jb20+CiAKICAgICAgICAgV2ViIEluc3BlY3Rvcjoga2V5Ym9h
cmQgc2hvcnRjdXQgZm9yICJSZWxvYWQgcGFnZSBmcm9tIG9yaWdpbiIgZG9lc24ndCBtYXRjaCBT
YWZhcmksIGFuZCBkb2Vzbid0IHdvcmsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJGbG93VGhyZWFkLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyRmxvd1RocmVhZC5jcHAJKHJldmlzaW9uIDIyMjMzNSkKKysrIFNvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJGbG93VGhyZWFkLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTEs
MTQgKzUxLDExIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogUmVuZGVyRmxvd1RocmVhZDo6UmVu
ZGVyRmxvd1RocmVhZChEb2N1bWVudCYgZG9jdW1lbnQsIFJlbmRlclN0eWxlJiYgc3R5bGUpCiAg
ICAgOiBSZW5kZXJCbG9ja0Zsb3coZG9jdW1lbnQsIFdURk1vdmUoc3R5bGUpKQotICAgICwgbV9w
cmV2aW91c1JlZ2lvbkNvdW50KDApCiAgICAgLCBtX2N1cnJlbnRSZWdpb25NYWludGFpbmVyKG51
bGxwdHIpCiAgICAgLCBtX3JlZ2lvbnNJbnZhbGlkYXRlZChmYWxzZSkKICAgICAsIG1fcmVnaW9u
c0hhdmVVbmlmb3JtTG9naWNhbFdpZHRoKHRydWUpCiAgICAgLCBtX3JlZ2lvbnNIYXZlVW5pZm9y
bUxvZ2ljYWxIZWlnaHQodHJ1ZSkKICAgICAsIG1fcGFnZUxvZ2ljYWxTaXplQ2hhbmdlZChmYWxz
ZSkKLSAgICAsIG1fbGF5b3V0UGhhc2UoTGF5b3V0UGhhc2VNZWFzdXJlQ29udGVudCkKLSAgICAs
IG1fbmVlZHNUd29QaGFzZXNMYXlvdXQoZmFsc2UpCiB7CiAgICAgc2V0SXNSZW5kZXJGbG93VGhy
ZWFkKHRydWUpOwogfQpAQCAtMTAyLDggKzk5LDYgQEAgdm9pZCBSZW5kZXJGbG93VGhyZWFkOjpy
ZW1vdmVSZWdpb25Gcm9tVAogCiB2b2lkIFJlbmRlckZsb3dUaHJlYWQ6OmludmFsaWRhdGVSZWdp
b25zKE1hcmtpbmdCZWhhdmlvciBtYXJraW5nUGFyZW50cykKIHsKLSAgICBBU1NFUlQoIWluRmlu
YWxMYXlvdXRQaGFzZSgpKTsKLQogICAgIGlmIChtX3JlZ2lvbnNJbnZhbGlkYXRlZCkgewogICAg
ICAgICBBU1NFUlQoc2VsZk5lZWRzTGF5b3V0KCkpOwogICAgICAgICByZXR1cm47CkBAIC0xNjUs
MTAgKzE2MCw2IEBAIHZvaWQgUmVuZGVyRmxvd1RocmVhZDo6bGF5b3V0KCkKIAogICAgIG1fcGFn
ZUxvZ2ljYWxTaXplQ2hhbmdlZCA9IG1fcmVnaW9uc0ludmFsaWRhdGVkICYmIGV2ZXJIYWRMYXlv
dXQoKTsKIAotICAgIC8vIEl0J3MgYWxzbyBwb3NzaWJsZSB0byBuZWVkIGEgc2Vjb25kYXJ5IGxh
eW91dCBpZiB0aGUgb3ZlcmZsb3cgY29tcHV0YXRpb24gaW52YWxpZGF0ZWQgdGhlIHJlZ2lvbiBj
aGFpbiAoZS5nLiBvdmVyZmxvdzogYXV0byBzY3JvbGxiYXJzCi0gICAgLy8gc2hydW5rIHNvbWUg
cmVnaW9ucykgc28gcmVwcm9wYWdhdGlvbiBpcyByZXF1aXJlZC4KLSAgICBtX25lZWRzVHdvUGhh
c2VzTGF5b3V0ID0gaW5PdmVyZmxvd0xheW91dFBoYXNlKCkgJiYgbV9yZWdpb25zSW52YWxpZGF0
ZWQ7Ci0KICAgICB2YWxpZGF0ZVJlZ2lvbnMoKTsKIAogICAgIFJlbmRlckJsb2NrRmxvdzo6bGF5
b3V0KCk7CkBAIC00NTQsMTMgKzQ0NSw4IEBAIHZvaWQgUmVuZGVyRmxvd1RocmVhZDo6cmVtb3Zl
TGluZVJlZ2lvbkkKIAogdm9pZCBSZW5kZXJGbG93VGhyZWFkOjpsb2dpY2FsV2lkdGhDaGFuZ2Vk
SW5SZWdpb25zRm9yQmxvY2soY29uc3QgUmVuZGVyQmxvY2sqIGJsb2NrLCBib29sJiByZWxheW91
dENoaWxkcmVuKQogewotICAgIGlmICghaGFzVmFsaWRSZWdpb25JbmZvKCkpIHsKLSAgICAgICAg
Ly8gRklYTUU6IFJlbW92ZSBvbmNlIHdlIHN0b3AgbGF5aW5nIG91dCBmbG93IHRocmVhZHMgd2l0
aG91dCByZWdpb25zLgotICAgICAgICAvLyBJZiB3ZSBoYWQgcmVnaW9ucyBidXQgZG9uJ3QgYW55
IG1vcmUsIHJlbGF5b3V0IHRoZSBjaGlsZHJlbiBiZWNhdXNlIHRoZSBjb2RlIGJlbG93Ci0gICAg
ICAgIC8vIGNhbid0IHByb3Blcmx5IGRldGVjdCB0aGlzIHNjZW5hcmlvLgotICAgICAgICByZWxh
eW91dENoaWxkcmVuIHw9IHByZXZpb3VzUmVnaW9uQ291bnRDaGFuZ2VkKCk7CisgICAgaWYgKCFo
YXNWYWxpZFJlZ2lvbkluZm8oKSkKICAgICAgICAgcmV0dXJuOwotICAgIH0KIAogICAgIGF1dG8g
aXQgPSBtX3JlZ2lvblJhbmdlTWFwLmZpbmQoYmxvY2spOwogICAgIGlmIChpdCA9PSBtX3JlZ2lv
blJhbmdlTWFwLmVuZCgpKQpAQCAtODA4LDExICs3OTQsOSBAQCB2b2lkIFJlbmRlckZsb3dUaHJl
YWQ6Om1hcmtSZWdpb25zRm9yT3ZlCiAgICAgICAgIHJlZ2lvbi0+c2V0TmVlZHNTaW1wbGlmaWVk
Tm9ybWFsRmxvd0xheW91dCgpOwogfQogCi12b2lkIFJlbmRlckZsb3dUaHJlYWQ6OnVwZGF0ZVJl
Z2lvbnNGbG93VGhyZWFkUG9ydGlvblJlY3QoY29uc3QgUmVuZGVyUmVnaW9uKiBsYXN0UmVnaW9u
V2l0aENvbnRlbnQpCit2b2lkIFJlbmRlckZsb3dUaHJlYWQ6OnVwZGF0ZVJlZ2lvbnNGbG93VGhy
ZWFkUG9ydGlvblJlY3QoKQogewotICAgIEFTU0VSVCghbGFzdFJlZ2lvbldpdGhDb250ZW50KTsK
ICAgICBMYXlvdXRVbml0IGxvZ2ljYWxIZWlnaHQgPSAwOwotICAgIGJvb2wgZW1wdHlSZWdpb25z
U2VnbWVudCA9IGZhbHNlOwogICAgIC8vIEZJWE1FOiBPcHRpbWl6ZSBub3QgdG8gY2xlYXIgdGhl
IGludGVydmFsIGFsbCB0aGUgdGltZS4gVGhpcyBpbXBsaWVzIG1hbnVhbGx5IG1hbmFnaW5nIHRo
ZSB0cmVlIG5vZGVzIGxpZmVjeWNsZS4KICAgICBtX3JlZ2lvbkludGVydmFsVHJlZS5jbGVhcigp
OwogICAgIGZvciAoYXV0byYgcmVnaW9uIDogbV9yZWdpb25MaXN0KSB7CkBAIC04MjYsMTMgKzgx
MCw3IEBAIHZvaWQgUmVuZGVyRmxvd1RocmVhZDo6dXBkYXRlUmVnaW9uc0Zsb3cKICAgICAgICAg
bV9yZWdpb25JbnRlcnZhbFRyZWUuYWRkKFJlZ2lvbkludGVydmFsVHJlZTo6Y3JlYXRlSW50ZXJ2
YWwobG9naWNhbEhlaWdodCwgbG9naWNhbEhlaWdodCArIHJlZ2lvbkxvZ2ljYWxIZWlnaHQsIHJl
Z2lvbikpOwogCiAgICAgICAgIGxvZ2ljYWxIZWlnaHQgKz0gcmVnaW9uTG9naWNhbEhlaWdodDsK
LQotICAgICAgICAvLyBPbmNlIHdlIGZpbmQgdGhlIGxhc3QgcmVnaW9uIHdpdGggY29udGVudCB0
aGUgbmV4dCByZWdpb25zIGFyZSBjb25zaWRlcmVkIGVtcHR5LgotICAgICAgICBpZiAobGFzdFJl
Z2lvbldpdGhDb250ZW50ID09IHJlZ2lvbikKLSAgICAgICAgICAgIGVtcHR5UmVnaW9uc1NlZ21l
bnQgPSB0cnVlOwogICAgIH0KLQotICAgIEFTU0VSVCghbGFzdFJlZ2lvbldpdGhDb250ZW50IHx8
IGVtcHR5UmVnaW9uc1NlZ21lbnQpOwogfQogCiAvLyBFdmVuIGlmIHdlIHJlcXVpcmUgdGhlIGJy
ZWFrIHRvIG9jY3VyIGF0IG9mZnNldEJyZWFrSW5GbG93VGhyZWFkLCBiZWNhdXNlIHJlZ2lvbnMg
bWF5IGhhdmUgbWluL21heC1oZWlnaHQgdmFsdWVzLApAQCAtODQwLDEzICs4MTgsNiBAQCB2b2lk
IFJlbmRlckZsb3dUaHJlYWQ6OnVwZGF0ZVJlZ2lvbnNGbG93CiAvLyBvZmZzZXRCcmVha0FkanVz
dG1lbnQgbWVhc3VyZXMgdGhlIGRpZmZlcmVudCBiZXR3ZWVuIHRoZSByZXF1ZXN0ZWQgYnJlYWsg
b2Zmc2V0IGFuZCB0aGUgY3VycmVudCBicmVhayBvZmZzZXQuCiBib29sIFJlbmRlckZsb3dUaHJl
YWQ6OmFkZEZvcmNlZFJlZ2lvbkJyZWFrKGNvbnN0IFJlbmRlckJsb2NrKiBibG9jaywgTGF5b3V0
VW5pdCBvZmZzZXRCcmVha0luRmxvd1RocmVhZCwgUmVuZGVyQm94KiwgYm9vbCwgTGF5b3V0VW5p
dCogb2Zmc2V0QnJlYWtBZGp1c3RtZW50KQogewotICAgIC8vIFdlIHRha2UgYnJlYWtzIGludG8g
YWNjb3VudCBmb3IgaGVpZ2h0IGNvbXB1dGF0aW9uIGZvciBhdXRvIGxvZ2ljYWwgaGVpZ2h0IHJl
Z2lvbnMKLSAgICAvLyBvbmx5IGluIHRoZSBsYXlvdXQgcGhhc2UgaW4gd2hpY2ggd2UgbGF5IG91
dCB0aGUgZmxvd3MgdGhyZWFkcyB1bmNvbnN0cmFpbmVkCi0gICAgLy8gYW5kIHdlIHVzZSB0aGUg
Y29udGVudCBicmVha3MgdG8gZGV0ZXJtaW5lIHRoZSBjb21wdXRlZCBhdXRvIGhlaWdodCBmb3IK
LSAgICAvLyBhdXRvIGxvZ2ljYWwgaGVpZ2h0IHJlZ2lvbnMuCi0gICAgaWYgKCFpbk1lYXN1cmVD
b250ZW50TGF5b3V0UGhhc2UoKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCiAgICAgLy8gV2Ug
bmVlZCB0byB1cGRhdGUgdGhlIHJlZ2lvbnMgZmxvdyB0aHJlYWQgcG9ydGlvbiByZWN0IGJlY2F1
c2Ugd2UgYXJlIGdvaW5nIHRvIHByb2Nlc3MKICAgICAvLyBhIGJyZWFrIG9uIHRoZXNlIHJlZ2lv
bnMuCiAgICAgdXBkYXRlUmVnaW9uc0Zsb3dUaHJlYWRQb3J0aW9uUmVjdCgpOwpAQCAtODk0LDY4
ICs4NjUsOCBAQCBMYXlvdXRSZWN0IFJlbmRlckZsb3dUaHJlYWQ6OmZyYWdtZW50c0JvCiAgICAg
cmV0dXJuIHJlc3VsdDsKIH0KIAotYm9vbCBSZW5kZXJGbG93VGhyZWFkOjpoYXNDYWNoZWRPZmZz
ZXRGcm9tTG9naWNhbFRvcE9mRmlyc3RSZWdpb24oY29uc3QgUmVuZGVyQm94KiBib3gpIGNvbnN0
Ci17Ci0gICAgcmV0dXJuIG1fYm94ZXNUb09mZnNldE1hcC5jb250YWlucyhib3gpOwotfQotCi1M
YXlvdXRVbml0IFJlbmRlckZsb3dUaHJlYWQ6OmNhY2hlZE9mZnNldEZyb21Mb2dpY2FsVG9wT2ZG
aXJzdFJlZ2lvbihjb25zdCBSZW5kZXJCb3gqIGJveCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9i
b3hlc1RvT2Zmc2V0TWFwLmdldChib3gpOwotfQotCi12b2lkIFJlbmRlckZsb3dUaHJlYWQ6OnNl
dE9mZnNldEZyb21Mb2dpY2FsVG9wT2ZGaXJzdFJlZ2lvbihjb25zdCBSZW5kZXJCb3gqIGJveCwg
TGF5b3V0VW5pdCBvZmZzZXQpCi17Ci0gICAgbV9ib3hlc1RvT2Zmc2V0TWFwLnNldChib3gsIG9m
ZnNldCk7Ci19Ci0KLXZvaWQgUmVuZGVyRmxvd1RocmVhZDo6Y2xlYXJPZmZzZXRGcm9tTG9naWNh
bFRvcE9mRmlyc3RSZWdpb24oY29uc3QgUmVuZGVyQm94KiBib3gpCi17Ci0gICAgQVNTRVJUKG1f
Ym94ZXNUb09mZnNldE1hcC5jb250YWlucyhib3gpKTsKLSAgICBtX2JveGVzVG9PZmZzZXRNYXAu
cmVtb3ZlKGJveCk7Ci19Ci0KLWNvbnN0IFJlbmRlckJveCogUmVuZGVyRmxvd1RocmVhZDo6Y3Vy
cmVudEFjdGl2ZVJlbmRlckJveCgpIGNvbnN0Ci17Ci0gICAgaWYgKG1fYWN0aXZlT2JqZWN0c1N0
YWNrLmlzRW1wdHkoKSkKLSAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0KLSAgICBjb25zdCBSZW5k
ZXJPYmplY3QqIGN1cnJlbnRPYmplY3QgPSBtX2FjdGl2ZU9iamVjdHNTdGFjay5sYXN0KCk7Ci0g
ICAgcmV0dXJuIGlzPFJlbmRlckJveD4oKmN1cnJlbnRPYmplY3QpID8gZG93bmNhc3Q8UmVuZGVy
Qm94PihjdXJyZW50T2JqZWN0KSA6IG51bGxwdHI7Ci19Ci0KLXZvaWQgUmVuZGVyRmxvd1RocmVh
ZDo6cHVzaEZsb3dUaHJlYWRMYXlvdXRTdGF0ZShjb25zdCBSZW5kZXJPYmplY3QmIG9iamVjdCkK
LXsKLSAgICBtX2FjdGl2ZU9iamVjdHNTdGFjay5hcHBlbmQoJm9iamVjdCk7Ci0KLSAgICBpZiAo
Y29uc3QgUmVuZGVyQm94KiBjdXJyZW50Qm94RGVzY2VuZGFudCA9IGN1cnJlbnRBY3RpdmVSZW5k
ZXJCb3goKSkgewotICAgICAgICBMYXlvdXRTdGF0ZSogbGF5b3V0U3RhdGUgPSBjdXJyZW50Qm94
RGVzY2VuZGFudC0+dmlldygpLmxheW91dFN0YXRlKCk7Ci0gICAgICAgIGlmIChsYXlvdXRTdGF0
ZSAmJiBsYXlvdXRTdGF0ZS0+aXNQYWdpbmF0ZWQoKSkgewotICAgICAgICAgICAgQVNTRVJUKGxh
eW91dFN0YXRlLT5tX3JlbmRlcmVyID09IGN1cnJlbnRCb3hEZXNjZW5kYW50KTsKLSAgICAgICAg
ICAgIExheW91dFNpemUgb2Zmc2V0RGVsdGEgPSBsYXlvdXRTdGF0ZS0+bV9sYXlvdXRPZmZzZXQg
LSBsYXlvdXRTdGF0ZS0+bV9wYWdlT2Zmc2V0OwotICAgICAgICAgICAgc2V0T2Zmc2V0RnJvbUxv
Z2ljYWxUb3BPZkZpcnN0UmVnaW9uKGN1cnJlbnRCb3hEZXNjZW5kYW50LCBjdXJyZW50Qm94RGVz
Y2VuZGFudC0+aXNIb3Jpem9udGFsV3JpdGluZ01vZGUoKSA/IG9mZnNldERlbHRhLmhlaWdodCgp
IDogb2Zmc2V0RGVsdGEud2lkdGgoKSk7Ci0gICAgICAgIH0KLSAgICB9Ci19Ci0KLXZvaWQgUmVu
ZGVyRmxvd1RocmVhZDo6cG9wRmxvd1RocmVhZExheW91dFN0YXRlKCkKLXsKLSAgICBpZiAoY29u
c3QgUmVuZGVyQm94KiBjdXJyZW50Qm94RGVzY2VuZGFudCA9IGN1cnJlbnRBY3RpdmVSZW5kZXJC
b3goKSkgewotICAgICAgICBMYXlvdXRTdGF0ZSogbGF5b3V0U3RhdGUgPSBjdXJyZW50Qm94RGVz
Y2VuZGFudC0+dmlldygpLmxheW91dFN0YXRlKCk7Ci0gICAgICAgIGlmIChsYXlvdXRTdGF0ZSAm
JiBsYXlvdXRTdGF0ZS0+aXNQYWdpbmF0ZWQoKSkKLSAgICAgICAgICAgIGNsZWFyT2Zmc2V0RnJv
bUxvZ2ljYWxUb3BPZkZpcnN0UmVnaW9uKGN1cnJlbnRCb3hEZXNjZW5kYW50KTsKLSAgICB9Ci0K
LSAgICBtX2FjdGl2ZU9iamVjdHNTdGFjay5yZW1vdmVMYXN0KCk7Ci19Ci0KIExheW91dFVuaXQg
UmVuZGVyRmxvd1RocmVhZDo6b2Zmc2V0RnJvbUxvZ2ljYWxUb3BPZkZpcnN0UmVnaW9uKGNvbnN0
IFJlbmRlckJsb2NrKiBjdXJyZW50QmxvY2spIGNvbnN0CiB7Ci0gICAgLy8gRmlyc3QgY2hlY2sg
aWYgd2UgY2FjaGVkIHRoZSBvZmZzZXQgZm9yIHRoZSBibG9jayBpZiBpdCdzIGFuIGFuY2VzdG9y
IGNvbnRhaW5pbmcgYmxvY2sgb2YgdGhlIGJveAotICAgIC8vIGJlaW5nIGN1cnJlbnRseSBsYWlk
IG91dC4KLSAgICBpZiAoaGFzQ2FjaGVkT2Zmc2V0RnJvbUxvZ2ljYWxUb3BPZkZpcnN0UmVnaW9u
KGN1cnJlbnRCbG9jaykpCi0gICAgICAgIHJldHVybiBjYWNoZWRPZmZzZXRGcm9tTG9naWNhbFRv
cE9mRmlyc3RSZWdpb24oY3VycmVudEJsb2NrKTsKLQogICAgIC8vIEFzIGEgbGFzdCByZXNvcnQs
IHRha2UgdGhlIHNsb3cgcGF0aC4KICAgICBMYXlvdXRSZWN0IGJsb2NrUmVjdCgwLCAwLCBjdXJy
ZW50QmxvY2stPndpZHRoKCksIGN1cnJlbnRCbG9jay0+aGVpZ2h0KCkpOwogICAgIHdoaWxlIChj
dXJyZW50QmxvY2sgJiYgIWlzPFJlbmRlclZpZXc+KCpjdXJyZW50QmxvY2spICYmICFjdXJyZW50
QmxvY2stPmlzUmVuZGVyRmxvd1RocmVhZCgpKSB7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyRmxvd1RocmVhZC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJGbG93VGhyZWFkLmgJKHJldmlzaW9uIDIyMjMzNSkKKysrIFNvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGbG93VGhyZWFkLmgJKHdvcmtpbmcgY29weSkKQEAgLTEy
NSw5ICsxMjUsNiBAQCBwdWJsaWM6CiAgICAgUmVuZGVyUmVnaW9uKiBmaXJzdFJlZ2lvbigpIGNv
bnN0OwogICAgIFJlbmRlclJlZ2lvbiogbGFzdFJlZ2lvbigpIGNvbnN0OwogCi0gICAgYm9vbCBw
cmV2aW91c1JlZ2lvbkNvdW50Q2hhbmdlZCgpIGNvbnN0IHsgcmV0dXJuIG1fcHJldmlvdXNSZWdp
b25Db3VudCAhPSBtX3JlZ2lvbkxpc3Quc2l6ZSgpOyB9OwotICAgIHZvaWQgdXBkYXRlUHJldmlv
dXNSZWdpb25Db3VudCgpIHsgbV9wcmV2aW91c1JlZ2lvbkNvdW50ID0gbV9yZWdpb25MaXN0LnNp
emUoKTsgfTsKLQogICAgIHZpcnR1YWwgdm9pZCBzZXRSZWdpb25SYW5nZUZvckJveChjb25zdCBS
ZW5kZXJCb3gmLCBSZW5kZXJSZWdpb24qLCBSZW5kZXJSZWdpb24qKTsKICAgICBib29sIGdldFJl
Z2lvblJhbmdlRm9yQm94KGNvbnN0IFJlbmRlckJveCosIFJlbmRlclJlZ2lvbiomIHN0YXJ0UmVn
aW9uLCBSZW5kZXJSZWdpb24qJiBlbmRSZWdpb24pIGNvbnN0OwogICAgIGJvb2wgY29tcHV0ZWRS
ZWdpb25SYW5nZUZvckJveChjb25zdCBSZW5kZXJCb3gqLCBSZW5kZXJSZWdpb24qJiBzdGFydFJl
Z2lvbiwgUmVuZGVyUmVnaW9uKiYgZW5kUmVnaW9uKSBjb25zdDsKQEAgLTE1MCwyNCArMTQ3LDYg
QEAgcHVibGljOgogICAgIHZvaWQgY29sbGVjdExheWVyRnJhZ21lbnRzKExheWVyRnJhZ21lbnRz
JiwgY29uc3QgTGF5b3V0UmVjdCYgbGF5ZXJCb3VuZGluZ0JveCwgY29uc3QgTGF5b3V0UmVjdCYg
ZGlydHlSZWN0KTsKICAgICBMYXlvdXRSZWN0IGZyYWdtZW50c0JvdW5kaW5nQm94KGNvbnN0IExh
eW91dFJlY3QmIGxheWVyQm91bmRpbmdCb3gpOwogCi0gICAgLy8gQSBmbG93IHRocmVhZCBnb2Vz
IHRocm91Z2ggZGlmZmVyZW50IHN0YXRlcyBkdXJpbmcgbGF5b3V0LgotICAgIGVudW0gTGF5b3V0
UGhhc2UgewotICAgICAgICBMYXlvdXRQaGFzZU1lYXN1cmVDb250ZW50ID0gMCwgLy8gVGhlIGlu
aXRpYWwgcGhhc2UsIHVzZWQgdG8gbWVhc3VyZSBjb250ZW50IGZvciB0aGUgYXV0by1oZWlnaHQg
cmVnaW9ucy4KLSAgICAgICAgTGF5b3V0UGhhc2VDb25zdHJhaW5lZCwgLy8gSW4gdGhpcyBwaGFz
ZSB0aGUgcmVnaW9ucyBhcmUgbGFpZCBvdXQgdXNpbmcgdGhlIHNpemVzIGNvbXB1dGVkIGluIHRo
ZSBub3JtYWwgcGhhc2UuCi0gICAgICAgIExheW91dFBoYXNlT3ZlcmZsb3csIC8vIEluIHRoaXMg
cGhhc2UgdGhlIGxheW91dCBvdmVyZmxvdyBpcyBwcm9wYWdhdGVkIGZyb20gdGhlIGNvbnRlbnQg
dG8gdGhlIHJlZ2lvbnMuCi0gICAgICAgIExheW91dFBoYXNlRmluYWwgLy8gSW4gY2FzZSBzY3Jv
bGxiYXJzIGhhdmUgcmVzaXplZCB0aGUgcmVnaW9ucywgY29udGVudCBpcyBsYWlkIG91dCBvbmUg
bGFzdCB0aW1lIHRvIHJlc3BlY3QgdGhlIGNoYW5nZS4KLSAgICB9OwotICAgIGJvb2wgaW5NZWFz
dXJlQ29udGVudExheW91dFBoYXNlKCkgY29uc3QgeyByZXR1cm4gbV9sYXlvdXRQaGFzZSA9PSBM
YXlvdXRQaGFzZU1lYXN1cmVDb250ZW50OyB9Ci0gICAgYm9vbCBpbkNvbnN0cmFpbmVkTGF5b3V0
UGhhc2UoKSBjb25zdCB7IHJldHVybiBtX2xheW91dFBoYXNlID09IExheW91dFBoYXNlQ29uc3Ry
YWluZWQ7IH0KLSAgICBib29sIGluT3ZlcmZsb3dMYXlvdXRQaGFzZSgpIGNvbnN0IHsgcmV0dXJu
IG1fbGF5b3V0UGhhc2UgPT0gTGF5b3V0UGhhc2VPdmVyZmxvdzsgfQotICAgIGJvb2wgaW5GaW5h
bExheW91dFBoYXNlKCkgY29uc3QgeyByZXR1cm4gbV9sYXlvdXRQaGFzZSA9PSBMYXlvdXRQaGFz
ZUZpbmFsOyB9Ci0gICAgdm9pZCBzZXRMYXlvdXRQaGFzZShMYXlvdXRQaGFzZSBwaGFzZSkgeyBt
X2xheW91dFBoYXNlID0gcGhhc2U7IH0KLQotICAgIGJvb2wgbmVlZHNUd29QaGFzZXNMYXlvdXQo
KSBjb25zdCB7IHJldHVybiBtX25lZWRzVHdvUGhhc2VzTGF5b3V0OyB9Ci0gICAgdm9pZCBjbGVh
ck5lZWRzVHdvUGhhc2VzTGF5b3V0KCkgeyBtX25lZWRzVHdvUGhhc2VzTGF5b3V0ID0gZmFsc2U7
IH0KLQotICAgIHZvaWQgcHVzaEZsb3dUaHJlYWRMYXlvdXRTdGF0ZShjb25zdCBSZW5kZXJPYmpl
Y3QmKTsKLSAgICB2b2lkIHBvcEZsb3dUaHJlYWRMYXlvdXRTdGF0ZSgpOwogICAgIExheW91dFVu
aXQgb2Zmc2V0RnJvbUxvZ2ljYWxUb3BPZkZpcnN0UmVnaW9uKGNvbnN0IFJlbmRlckJsb2NrKikg
Y29uc3Q7CiAgICAgdm9pZCBjbGVhclJlbmRlckJveFJlZ2lvbkluZm9BbmRDdXN0b21TdHlsZShj
b25zdCBSZW5kZXJCb3gmLCBjb25zdCBSZW5kZXJSZWdpb24qLCBjb25zdCBSZW5kZXJSZWdpb24q
LCBjb25zdCBSZW5kZXJSZWdpb24qLCBjb25zdCBSZW5kZXJSZWdpb24qKTsKIApAQCAtMjIzLDIz
ICsyMDIsMTUgQEAgcHJvdGVjdGVkOgogCiAgICAgdm9pZCBtYXBMb2NhbFRvQ29udGFpbmVyKGNv
bnN0IFJlbmRlckxheWVyTW9kZWxPYmplY3QqIHJlcGFpbnRDb250YWluZXIsIFRyYW5zZm9ybVN0
YXRlJiwgTWFwQ29vcmRpbmF0ZXNGbGFncywgYm9vbCogd2FzRml4ZWQpIGNvbnN0IG92ZXJyaWRl
OwogCi0gICAgdm9pZCB1cGRhdGVSZWdpb25zRmxvd1RocmVhZFBvcnRpb25SZWN0KGNvbnN0IFJl
bmRlclJlZ2lvbiogPSBudWxscHRyKTsKKyAgICB2b2lkIHVwZGF0ZVJlZ2lvbnNGbG93VGhyZWFk
UG9ydGlvblJlY3QoKTsKICAgICBib29sIHNob3VsZFJlcGFpbnQoY29uc3QgTGF5b3V0UmVjdCYp
IGNvbnN0OwogCi0gICAgaW5saW5lIGJvb2wgaGFzQ2FjaGVkT2Zmc2V0RnJvbUxvZ2ljYWxUb3BP
ZkZpcnN0UmVnaW9uKGNvbnN0IFJlbmRlckJveCopIGNvbnN0OwotICAgIGlubGluZSBMYXlvdXRV
bml0IGNhY2hlZE9mZnNldEZyb21Mb2dpY2FsVG9wT2ZGaXJzdFJlZ2lvbihjb25zdCBSZW5kZXJC
b3gqKSBjb25zdDsKLSAgICBpbmxpbmUgdm9pZCBzZXRPZmZzZXRGcm9tTG9naWNhbFRvcE9mRmly
c3RSZWdpb24oY29uc3QgUmVuZGVyQm94KiwgTGF5b3V0VW5pdCk7Ci0gICAgaW5saW5lIHZvaWQg
Y2xlYXJPZmZzZXRGcm9tTG9naWNhbFRvcE9mRmlyc3RSZWdpb24oY29uc3QgUmVuZGVyQm94Kik7
Ci0KLSAgICBpbmxpbmUgY29uc3QgUmVuZGVyQm94KiBjdXJyZW50QWN0aXZlUmVuZGVyQm94KCkg
Y29uc3Q7Ci0KICAgICBib29sIGdldFJlZ2lvblJhbmdlRm9yQm94RnJvbUNhY2hlZEluZm8oY29u
c3QgUmVuZGVyQm94KiwgUmVuZGVyUmVnaW9uKiYgc3RhcnRSZWdpb24sIFJlbmRlclJlZ2lvbiom
IGVuZFJlZ2lvbikgY29uc3Q7CiAKICAgICB2b2lkIHJlbW92ZVJlbmRlckJveFJlZ2lvbkluZm8o
UmVuZGVyQm94Jik7CiAgICAgdm9pZCByZW1vdmVMaW5lUmVnaW9uSW5mbyhjb25zdCBSZW5kZXJC
bG9ja0Zsb3cmKTsKIAogICAgIFJlbmRlclJlZ2lvbkxpc3QgbV9yZWdpb25MaXN0OwotICAgIHVu
c2lnbmVkIHNob3J0IG1fcHJldmlvdXNSZWdpb25Db3VudDsKIAogICAgIGNsYXNzIFJlbmRlclJl
Z2lvblJhbmdlIHsKICAgICBwdWJsaWM6CkBAIC0zMDUsMTIgKzI3Niw2IEBAIHByb3RlY3RlZDoK
ICAgICBSZW5kZXJCb3hUb1JlZ2lvbk1hcCBtX2JyZWFrQmVmb3JlVG9SZWdpb25NYXA7CiAgICAg
UmVuZGVyQm94VG9SZWdpb25NYXAgbV9icmVha0FmdGVyVG9SZWdpb25NYXA7CiAKLSAgICB0eXBl
ZGVmIFZlY3Rvcjxjb25zdCBSZW5kZXJPYmplY3QqPiBSZW5kZXJPYmplY3RTdGFjazsKLSAgICBS
ZW5kZXJPYmplY3RTdGFjayBtX2FjdGl2ZU9iamVjdHNTdGFjazsKLQotICAgIHR5cGVkZWYgSGFz
aE1hcDxjb25zdCBSZW5kZXJCb3gqLCBMYXlvdXRVbml0PiBSZW5kZXJCb3hUb09mZnNldE1hcDsK
LSAgICBSZW5kZXJCb3hUb09mZnNldE1hcCBtX2JveGVzVG9PZmZzZXRNYXA7Ci0KICAgICBSZWdp
b25JbnRlcnZhbFRyZWUgbV9yZWdpb25JbnRlcnZhbFRyZWU7CiAKICAgICBDdXJyZW50UmVuZGVy
UmVnaW9uTWFpbnRhaW5lciogbV9jdXJyZW50UmVnaW9uTWFpbnRhaW5lcjsKQEAgLTMxOSw4ICsy
ODQsNiBAQCBwcm90ZWN0ZWQ6CiAgICAgYm9vbCBtX3JlZ2lvbnNIYXZlVW5pZm9ybUxvZ2ljYWxX
aWR0aCA6IDE7CiAgICAgYm9vbCBtX3JlZ2lvbnNIYXZlVW5pZm9ybUxvZ2ljYWxIZWlnaHQgOiAx
OwogICAgIGJvb2wgbV9wYWdlTG9naWNhbFNpemVDaGFuZ2VkIDogMTsKLSAgICB1bnNpZ25lZCBt
X2xheW91dFBoYXNlIDogMjsKLSAgICBib29sIG1fbmVlZHNUd29QaGFzZXNMYXlvdXQgOiAxOwog
fTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>