<?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>182651</bug_id>
          
          <creation_ts>2018-02-09 14:24:04 -0800</creation_ts>
          <short_desc>[RenderTreeBuilder] Move RenderRubyAsInline/AsBlock::takeChild mutation to a RenderTreeBuilder</short_desc>
          <delta_ts>2018-02-09 15:23:09 -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>commit-queue</cc>
    
    <cc>koivisto</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>1398089</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2018-02-09 14:24:04 -0800</bug_when>
    <thetext>ssia</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1398090</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-02-09 14:24:29 -0800</bug_when>
    <thetext>&lt;rdar://problem/37405042&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1398091</commentid>
    <comment_count>2</comment_count>
      <attachid>333516</attachid>
    <who name="alan">zalan</who>
    <bug_when>2018-02-09 14:28:44 -0800</bug_when>
    <thetext>Created attachment 333516
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1398092</commentid>
    <comment_count>3</comment_count>
      <attachid>333516</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2018-02-09 14:30:57 -0800</bug_when>
    <thetext>Comment on attachment 333516
Patch

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

&gt; Source/WebCore/rendering/updating/RenderTreeBuilderRuby.h:46
&gt; +    RenderPtr&lt;RenderObject&gt;takeChild(RenderRubyAsBlock&amp; parent, RenderObject&amp; child);

Missing space after &gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1398094</commentid>
    <comment_count>4</comment_count>
      <attachid>333518</attachid>
    <who name="alan">zalan</who>
    <bug_when>2018-02-09 14:34:31 -0800</bug_when>
    <thetext>Created attachment 333518
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1398120</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-02-09 15:22:40 -0800</bug_when>
    <thetext>The commit-queue encountered the following flaky tests while processing attachment 333518:

imported/w3c/web-platform-tests/fetch/api/cors/cors-redirect-preflight.any.html bug 182270 (author: youennf@gmail.com)
The commit-queue is continuing to process your patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1398122</commentid>
    <comment_count>6</comment_count>
      <attachid>333518</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-02-09 15:23:07 -0800</bug_when>
    <thetext>Comment on attachment 333518
Patch

Clearing flags on attachment: 333518

Committed r228339: &lt;https://trac.webkit.org/changeset/228339&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1398123</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-02-09 15:23:09 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>333516</attachid>
            <date>2018-02-09 14:28:44 -0800</date>
            <delta_ts>2018-02-09 14:34:29 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-182651-20180209142843.patch</filename>
            <type>text/plain</type>
            <size>11707</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI4MzM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjJlNDkyMTEwODJhMjI2
Mjk5ZDVlMjM0OTkyMTFmYzQwODkwMmIzNi4uYTkzODExMjgwMTY4MzRkMDFkM2ViMGYyMTg3MDBh
ZmU3NTBjMmE5OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDE4LTAyLTA5ICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW1JlbmRlclRyZWVCdWlsZGVy
XSBNb3ZlIFJlbmRlclJ1YnlBc0lubGluZS9Bc0Jsb2NrOjp0YWtlQ2hpbGQgbXV0YXRpb24gdG8g
YSBSZW5kZXJUcmVlQnVpbGRlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTgyNjUxCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8zNzQwNTA0Mj4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBjaGFuZ2Ug
aW4gZnVuY3Rpb25hbGl0eS4KKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJSdWJ5LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclJ1YnlBc0lubGluZTo6dGFrZUNoaWxkKToKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlclJ1YnlBc0Jsb2NrOjp0YWtlQ2hpbGQpOgorICAgICAgICAoV2Vi
Q29yZTo6aXNBbm9ueW1vdXNSdWJ5SW5saW5lQmxvY2spOiBEZWxldGVkLgorICAgICAgICAoV2Vi
Q29yZTo6aXNSdWJ5Q2hpbGRGb3JOb3JtYWxSZW1vdmFsKTogRGVsZXRlZC4KKyAgICAgICAgKFdl
YkNvcmU6OmZpbmRSdWJ5UnVuUGFyZW50KTogRGVsZXRlZC4KKyAgICAgICAgKiByZW5kZXJpbmcv
dXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
VHJlZUJ1aWxkZXI6OnRha2VDaGlsZEZyb21SZW5kZXJSdWJ5QXNJbmxpbmUpOgorICAgICAgICAo
V2ViQ29yZTo6UmVuZGVyVHJlZUJ1aWxkZXI6OnRha2VDaGlsZEZyb21SZW5kZXJSdWJ5QXNCbG9j
ayk6CisgICAgICAgICogcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRyZWVCdWlsZGVyLmg6Cisg
ICAgICAgICogcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRyZWVCdWlsZGVyUnVieS5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpmaW5kUnVieVJ1blBhcmVudCk6CisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJUcmVlQnVpbGRlcjo6UnVieTo6dGFrZUNoaWxkKToKKyAgICAgICAgKiByZW5kZXJpbmcv
dXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXJSdWJ5Lmg6CisKIDIwMTgtMDItMDkgIFphbGFuIEJ1
anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBbUmVuZGVyVHJlZUJ1aWxkZXJdIElu
dHJvZHVjZSBSZW5kZXJUcmVlQnVpbGRlciB0byB3aWxsQmVEZXN0b3J5ZWQvcmVtb3ZlRnJvbVBh
cmVudEFuZERlc3Ryb3kKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJSdWJ5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSdWJ5LmNwcAppbmRl
eCA4YWRiMjQ4NDVmMGRhNjhhODNiOTg1ZWZlYWU1ZDZiMDc3NzA5ZWY3Li4yYjc5ZWRjOGRmMDdm
MDE4ODFmZDU5NzAxMGM4OTlhY2ZmYmE0MTExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyUnVieS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlclJ1YnkuY3BwCkBAIC00NSwzOSArNDUsNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiBXVEZf
TUFLRV9JU09fQUxMT0NBVEVEX0lNUEwoUmVuZGVyUnVieUFzSW5saW5lKTsKIFdURl9NQUtFX0lT
T19BTExPQ0FURURfSU1QTChSZW5kZXJSdWJ5QXNCbG9jayk7CiAKLS8vPT09IGdlbmVyaWMgaGVs
cGVyIGZ1bmN0aW9ucyB0byBhdm9pZCBleGNlc3NpdmUgY29kZSBkdXBsaWNhdGlvbiA9PT0KLQot
c3RhdGljIGlubGluZSBib29sIGlzQW5vbnltb3VzUnVieUlubGluZUJsb2NrKGNvbnN0IFJlbmRl
ck9iamVjdCogb2JqZWN0KQotewotICAgIEFTU0VSVCghb2JqZWN0Ci0gICAgICAgIHx8ICFpc1J1
Ynkob2JqZWN0LT5wYXJlbnQoKSkKLSAgICAgICAgfHwgaXM8UmVuZGVyUnVieVJ1bj4oKm9iamVj
dCkKLSAgICAgICAgfHwgKG9iamVjdC0+aXNJbmxpbmUoKSAmJiAob2JqZWN0LT5pc0JlZm9yZUNv
bnRlbnQoKSB8fCBvYmplY3QtPmlzQWZ0ZXJDb250ZW50KCkpKQotICAgICAgICB8fCAob2JqZWN0
LT5pc0Fub255bW91cygpICYmIGlzPFJlbmRlckJsb2NrPigqb2JqZWN0KSAmJiBvYmplY3QtPnN0
eWxlKCkuZGlzcGxheSgpID09IElOTElORV9CTE9DSykpOwotCi0gICAgcmV0dXJuIG9iamVjdAot
ICAgICAgICAmJiBpc1J1Ynkob2JqZWN0LT5wYXJlbnQoKSkKLSAgICAgICAgJiYgaXM8UmVuZGVy
QmxvY2s+KCpvYmplY3QpCi0gICAgICAgICYmICFpczxSZW5kZXJSdWJ5UnVuPigqb2JqZWN0KTsK
LX0KLQotI2lmbmRlZiBBU1NFUlRfRElTQUJMRUQKLXN0YXRpYyBpbmxpbmUgYm9vbCBpc1J1YnlD
aGlsZEZvck5vcm1hbFJlbW92YWwoY29uc3QgUmVuZGVyT2JqZWN0JiBvYmplY3QpCi17Ci0gICAg
cmV0dXJuIG9iamVjdC5pc1J1YnlSdW4oKQotICAgIHx8IG9iamVjdC5pc0JlZm9yZUNvbnRlbnQo
KQotICAgIHx8IG9iamVjdC5pc0FmdGVyQ29udGVudCgpCi0gICAgfHwgb2JqZWN0LmlzUmVuZGVy
TXVsdGlDb2x1bW5GbG93KCkKLSAgICB8fCBvYmplY3QuaXNSZW5kZXJNdWx0aUNvbHVtblNldCgp
Ci0gICAgfHwgaXNBbm9ueW1vdXNSdWJ5SW5saW5lQmxvY2soJm9iamVjdCk7Ci19Ci0jZW5kaWYK
LQotc3RhdGljIGlubGluZSBSZW5kZXJSdWJ5UnVuJiBmaW5kUnVieVJ1blBhcmVudChSZW5kZXJP
YmplY3QmIGNoaWxkKQotewotICAgIHJldHVybiAqbGluZWFnZU9mVHlwZTxSZW5kZXJSdWJ5UnVu
PihjaGlsZCkuZmlyc3QoKTsKLX0KLQogLy89PT0gcnVieSBhcyBpbmxpbmUgb2JqZWN0ID09PQog
CiBSZW5kZXJSdWJ5QXNJbmxpbmU6OlJlbmRlclJ1YnlBc0lubGluZShFbGVtZW50JiBlbGVtZW50
LCBSZW5kZXJTdHlsZSYmIHN0eWxlKQpAQCAtOTUsMjYgKzYyLDcgQEAgdm9pZCBSZW5kZXJSdWJ5
QXNJbmxpbmU6OnN0eWxlRGlkQ2hhbmdlKFN0eWxlRGlmZmVyZW5jZSBkaWZmLCBjb25zdCBSZW5k
ZXJTdHlsZSoKIAogUmVuZGVyUHRyPFJlbmRlck9iamVjdD4gUmVuZGVyUnVieUFzSW5saW5lOjp0
YWtlQ2hpbGQoUmVuZGVyVHJlZUJ1aWxkZXImIGJ1aWxkZXIsIFJlbmRlck9iamVjdCYgY2hpbGQp
CiB7Ci0gICAgLy8gSWYgdGhlIGNoaWxkJ3MgcGFyZW50IGlzICp0aGlzIChtdXN0IGJlIGEgcnVi
eSBydW4gb3IgZ2VuZXJhdGVkIGNvbnRlbnQgb3IgYW5vbnltb3VzIGJsb2NrKSwKLSAgICAvLyBq
dXN0IHVzZSB0aGUgbm9ybWFsIHJlbW92ZSBtZXRob2QuCi0gICAgaWYgKGNoaWxkLnBhcmVudCgp
ID09IHRoaXMpIHsKLSNpZm5kZWYgQVNTRVJUX0RJU0FCTEVECi0gICAgICAgIEFTU0VSVChpc1J1
YnlDaGlsZEZvck5vcm1hbFJlbW92YWwoY2hpbGQpKTsKLSNlbmRpZgotICAgICAgICByZXR1cm4g
UmVuZGVySW5saW5lOjp0YWtlQ2hpbGQoYnVpbGRlciwgY2hpbGQpOwotICAgIH0KLSAgICAvLyBJ
ZiB0aGUgY2hpbGQncyBwYXJlbnQgaXMgYW4gYW5veW1vdXMgYmxvY2sgKG11c3QgYmUgZ2VuZXJh
dGVkIDpiZWZvcmUvOmFmdGVyIGNvbnRlbnQpCi0gICAgLy8ganVzdCB1c2UgdGhlIGJsb2NrJ3Mg
cmVtb3ZlIG1ldGhvZC4KLSAgICBpZiAoaXNBbm9ueW1vdXNSdWJ5SW5saW5lQmxvY2soY2hpbGQu
cGFyZW50KCkpKSB7Ci0gICAgICAgIEFTU0VSVChjaGlsZC5pc0JlZm9yZUNvbnRlbnQoKSB8fCBj
aGlsZC5pc0FmdGVyQ29udGVudCgpKTsKLSAgICAgICAgYXV0byYgcGFyZW50ID0gKmNoaWxkLnBh
cmVudCgpOwotICAgICAgICBhdXRvIHRha2VuQ2hpbGQgPSBwYXJlbnQudGFrZUNoaWxkKGJ1aWxk
ZXIsIGNoaWxkKTsKLSAgICAgICAgcGFyZW50LnJlbW92ZUZyb21QYXJlbnRBbmREZXN0cm95KGJ1
aWxkZXIpOwotICAgICAgICByZXR1cm4gdGFrZW5DaGlsZDsKLSAgICB9Ci0KLSAgICAvLyBPdGhl
cndpc2UgZmluZCB0aGUgY29udGFpbmluZyBydW4gYW5kIHJlbW92ZSBpdCBmcm9tIHRoZXJlLgot
ICAgIHJldHVybiBmaW5kUnVieVJ1blBhcmVudChjaGlsZCkudGFrZUNoaWxkKGJ1aWxkZXIsIGNo
aWxkKTsKKyAgICByZXR1cm4gYnVpbGRlci50YWtlQ2hpbGRGcm9tUmVuZGVyUnVieUFzSW5saW5l
KCp0aGlzLCBjaGlsZCk7CiB9CiAKIC8vPT09IHJ1YnkgYXMgYmxvY2sgb2JqZWN0ID09PQpAQCAt
MTM0LDI2ICs4Miw3IEBAIHZvaWQgUmVuZGVyUnVieUFzQmxvY2s6OnN0eWxlRGlkQ2hhbmdlKFN0
eWxlRGlmZmVyZW5jZSBkaWZmLCBjb25zdCBSZW5kZXJTdHlsZSoKIAogUmVuZGVyUHRyPFJlbmRl
ck9iamVjdD4gUmVuZGVyUnVieUFzQmxvY2s6OnRha2VDaGlsZChSZW5kZXJUcmVlQnVpbGRlciYg
YnVpbGRlciwgUmVuZGVyT2JqZWN0JiBjaGlsZCkKIHsKLSAgICAvLyBJZiB0aGUgY2hpbGQncyBw
YXJlbnQgaXMgKnRoaXMgKG11c3QgYmUgYSBydWJ5IHJ1biBvciBnZW5lcmF0ZWQgY29udGVudCBv
ciBhbm9ueW1vdXMgYmxvY2spLAotICAgIC8vIGp1c3QgdXNlIHRoZSBub3JtYWwgcmVtb3ZlIG1l
dGhvZC4KLSAgICBpZiAoY2hpbGQucGFyZW50KCkgPT0gdGhpcykgewotI2lmbmRlZiBBU1NFUlRf
RElTQUJMRUQKLSAgICAgICAgQVNTRVJUKGlzUnVieUNoaWxkRm9yTm9ybWFsUmVtb3ZhbChjaGls
ZCkpOwotI2VuZGlmCi0gICAgICAgIHJldHVybiBSZW5kZXJCbG9ja0Zsb3c6OnRha2VDaGlsZChi
dWlsZGVyLCBjaGlsZCk7Ci0gICAgfQotICAgIC8vIElmIHRoZSBjaGlsZCdzIHBhcmVudCBpcyBh
biBhbm95bW91cyBibG9jayAobXVzdCBiZSBnZW5lcmF0ZWQgOmJlZm9yZS86YWZ0ZXIgY29udGVu
dCkKLSAgICAvLyBqdXN0IHVzZSB0aGUgYmxvY2sncyByZW1vdmUgbWV0aG9kLgotICAgIGlmIChp
c0Fub255bW91c1J1YnlJbmxpbmVCbG9jayhjaGlsZC5wYXJlbnQoKSkpIHsKLSAgICAgICAgQVNT
RVJUKGNoaWxkLmlzQmVmb3JlQ29udGVudCgpIHx8IGNoaWxkLmlzQWZ0ZXJDb250ZW50KCkpOwot
ICAgICAgICBhdXRvJiBwYXJlbnQgPSAqY2hpbGQucGFyZW50KCk7Ci0gICAgICAgIGF1dG8gdGFr
ZW5DaGlsZCA9IHBhcmVudC50YWtlQ2hpbGQoYnVpbGRlciwgY2hpbGQpOwotICAgICAgICBwYXJl
bnQucmVtb3ZlRnJvbVBhcmVudEFuZERlc3Ryb3koYnVpbGRlcik7Ci0gICAgICAgIHJldHVybiB0
YWtlbkNoaWxkOwotICAgIH0KLQotICAgIC8vIE90aGVyd2lzZSBmaW5kIHRoZSBjb250YWluaW5n
IHJ1biBhbmQgcmVtb3ZlIGl0IGZyb20gdGhlcmUuCi0gICAgcmV0dXJuIGZpbmRSdWJ5UnVuUGFy
ZW50KGNoaWxkKS50YWtlQ2hpbGQoYnVpbGRlciwgY2hpbGQpOworICAgIHJldHVybiBidWlsZGVy
LnRha2VDaGlsZEZyb21SZW5kZXJSdWJ5QXNCbG9jaygqdGhpcywgY2hpbGQpOwogfQogCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
dXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3VwZGF0aW5nL1JlbmRlclRyZWVCdWlsZGVyLmNwcAppbmRleCAxMDI0Y2Q5ZjFmYWRhYmQ1MWI4
MzlmNWQyOTFhZjZmNTYyMGMzNTE2Li4wNjc3Mjc3MjU4OTk2YWFiODhkMDM2OTgwYWU0OGUyM2Ni
OWNhMDEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVu
ZGVyVHJlZUJ1aWxkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGlu
Zy9SZW5kZXJUcmVlQnVpbGRlci5jcHAKQEAgLTQ3MCw2ICs0NzAsMTYgQEAgdm9pZCBSZW5kZXJU
cmVlQnVpbGRlcjo6aW5zZXJ0Q2hpbGRUb1JlbmRlck1hdGhNTEZlbmNlZChSZW5kZXJNYXRoTUxG
ZW5jZWQmIHBhcmUKICAgICBtYXRoTUxCdWlsZGVyKCkuaW5zZXJ0Q2hpbGQocGFyZW50LCBXVEZN
b3ZlKGNoaWxkKSwgYmVmb3JlQ2hpbGQpOwogfQogCitSZW5kZXJQdHI8UmVuZGVyT2JqZWN0PiBS
ZW5kZXJUcmVlQnVpbGRlcjo6dGFrZUNoaWxkRnJvbVJlbmRlclJ1YnlBc0lubGluZShSZW5kZXJS
dWJ5QXNJbmxpbmUmIHBhcmVudCwgUmVuZGVyT2JqZWN0JiBjaGlsZCkKK3sKKyAgICByZXR1cm4g
cnVieUJ1aWxkZXIoKS50YWtlQ2hpbGQocGFyZW50LCBjaGlsZCk7Cit9CisKK1JlbmRlclB0cjxS
ZW5kZXJPYmplY3Q+IFJlbmRlclRyZWVCdWlsZGVyOjp0YWtlQ2hpbGRGcm9tUmVuZGVyUnVieUFz
QmxvY2soUmVuZGVyUnVieUFzQmxvY2smIHBhcmVudCwgUmVuZGVyT2JqZWN0JiBjaGlsZCkKK3sK
KyAgICByZXR1cm4gcnVieUJ1aWxkZXIoKS50YWtlQ2hpbGQocGFyZW50LCBjaGlsZCk7Cit9CisK
IHZvaWQgUmVuZGVyVHJlZUJ1aWxkZXI6OnVwZGF0ZUFmdGVyRGVzY2VuZGFudHMoUmVuZGVyRWxl
bWVudCYgcmVuZGVyZXIpCiB7CiAgICAgaWYgKGlzPFJlbmRlckJsb2NrPihyZW5kZXJlcikpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZUJ1
aWxkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlQnVp
bGRlci5oCmluZGV4IDAwNTM2MDRhYjA1ZmNhN2M5ZjExOTMyM2Q0Y2E4NzJmZWQ3NDU3MzkuLjY2
OGVhM2YzNDczMzBhOWRmNWZiOTJlYjczNjFjMDdkOGVjMDQ5YTggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlQnVpbGRlci5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlQnVpbGRlci5oCkBAIC0z
MCw2ICszMCw4IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIFJlbmRlck1hdGhNTEZl
bmNlZDsKK2NsYXNzIFJlbmRlclJ1YnlBc0Jsb2NrOworY2xhc3MgUmVuZGVyUnVieUFzSW5saW5l
OwogY2xhc3MgUmVuZGVyUnVieUJhc2U7CiBjbGFzcyBSZW5kZXJSdWJ5UnVuOwogY2xhc3MgUmVu
ZGVyU1ZHQ29udGFpbmVyOwpAQCAtNzEsNiArNzMsOSBAQCBwdWJsaWM6CiAgICAgdm9pZCBpbnNl
cnRDaGlsZFRvUmVuZGVyVGFibGVSb3coUmVuZGVyVGFibGVSb3cmIHBhcmVudCwgUmVuZGVyUHRy
PFJlbmRlck9iamVjdD4gY2hpbGQsIFJlbmRlck9iamVjdCogYmVmb3JlQ2hpbGQgPSBudWxscHRy
KTsKICAgICB2b2lkIGluc2VydENoaWxkVG9SZW5kZXJNYXRoTUxGZW5jZWQoUmVuZGVyTWF0aE1M
RmVuY2VkJiBwYXJlbnQsIFJlbmRlclB0cjxSZW5kZXJPYmplY3Q+IGNoaWxkLCBSZW5kZXJPYmpl
Y3QqIGJlZm9yZUNoaWxkID0gbnVsbHB0cik7CiAKKyAgICBSZW5kZXJQdHI8UmVuZGVyT2JqZWN0
PiB0YWtlQ2hpbGRGcm9tUmVuZGVyUnVieUFzSW5saW5lKFJlbmRlclJ1YnlBc0lubGluZSYgcGFy
ZW50LCBSZW5kZXJPYmplY3QmIGNoaWxkKTsKKyAgICBSZW5kZXJQdHI8UmVuZGVyT2JqZWN0PiB0
YWtlQ2hpbGRGcm9tUmVuZGVyUnVieUFzQmxvY2soUmVuZGVyUnVieUFzQmxvY2smIHBhcmVudCwg
UmVuZGVyT2JqZWN0JiBjaGlsZCk7CisKICAgICBib29sIGNoaWxkUmVxdWlyZXNUYWJsZShjb25z
dCBSZW5kZXJFbGVtZW50JiBwYXJlbnQsIGNvbnN0IFJlbmRlck9iamVjdCYgY2hpbGQpOwogICAg
IHZvaWQgbWFrZUNoaWxkcmVuTm9uSW5saW5lKFJlbmRlckJsb2NrJiBwYXJlbnQsIFJlbmRlck9i
amVjdCogaW5zZXJ0aW9uUG9pbnQgPSBudWxscHRyKTsKICAgICBSZW5kZXJPYmplY3QqIHNwbGl0
QW5vbnltb3VzQm94ZXNBcm91bmRDaGlsZChSZW5kZXJCb3gmIHBhcmVudCwgUmVuZGVyT2JqZWN0
KiBiZWZvcmVDaGlsZCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBk
YXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXJSdWJ5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy91cGRhdGluZy9SZW5kZXJUcmVlQnVpbGRlclJ1YnkuY3BwCmluZGV4IDg1NDRkODYwOTZlM2Fm
YjdlOTQxZDNhMjRkMzEyNzNkNTgwNmQ2N2MuLjYwOTZlOTJlZjNkN2M1NzkyYjllMGVlYWUxMDcz
NTIzOGM2Y2I2YTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGlu
Zy9SZW5kZXJUcmVlQnVpbGRlclJ1YnkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy91cGRhdGluZy9SZW5kZXJUcmVlQnVpbGRlclJ1YnkuY3BwCkBAIC0zMyw2ICszMywxMSBAQAog
CiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK3N0YXRpYyBpbmxpbmUgUmVuZGVyUnVieVJ1biYgZmlu
ZFJ1YnlSdW5QYXJlbnQoUmVuZGVyT2JqZWN0JiBjaGlsZCkKK3sKKyAgICByZXR1cm4gKmxpbmVh
Z2VPZlR5cGU8UmVuZGVyUnVieVJ1bj4oY2hpbGQpLmZpcnN0KCk7Cit9CisKIHN0YXRpYyBpbmxp
bmUgYm9vbCBpc0Fub255bW91c1J1YnlJbmxpbmVCbG9jayhjb25zdCBSZW5kZXJPYmplY3QqIG9i
amVjdCkKIHsKICAgICBBU1NFUlQoIW9iamVjdApAQCAtMzY3LDQgKzM3Miw1MiBAQCBSZW5kZXJS
dWJ5QmFzZSYgUmVuZGVyVHJlZUJ1aWxkZXI6OlJ1Ynk6OnJ1YnlCYXNlU2FmZShSZW5kZXJSdWJ5
UnVuJiBydWJ5UnVuKQogICAgIHJldHVybiAqYmFzZTsKIH0KIAorUmVuZGVyUHRyPFJlbmRlck9i
amVjdD4gUmVuZGVyVHJlZUJ1aWxkZXI6OlJ1Ynk6OnRha2VDaGlsZChSZW5kZXJSdWJ5QXNJbmxp
bmUmIHBhcmVudCwgUmVuZGVyT2JqZWN0JiBjaGlsZCkKK3sKKyAgICAvLyBJZiB0aGUgY2hpbGQn
cyBwYXJlbnQgaXMgKnRoaXMgKG11c3QgYmUgYSBydWJ5IHJ1biBvciBnZW5lcmF0ZWQgY29udGVu
dCBvciBhbm9ueW1vdXMgYmxvY2spLAorICAgIC8vIGp1c3QgdXNlIHRoZSBub3JtYWwgcmVtb3Zl
IG1ldGhvZC4KKyAgICBpZiAoY2hpbGQucGFyZW50KCkgPT0gJnBhcmVudCkgeworI2lmbmRlZiBB
U1NFUlRfRElTQUJMRUQKKyAgICAgICAgQVNTRVJUKGlzUnVieUNoaWxkRm9yTm9ybWFsUmVtb3Zh
bChjaGlsZCkpOworI2VuZGlmCisgICAgICAgIHJldHVybiBwYXJlbnQuUmVuZGVySW5saW5lOjp0
YWtlQ2hpbGQobV9idWlsZGVyLCBjaGlsZCk7CisgICAgfQorICAgIC8vIElmIHRoZSBjaGlsZCdz
IHBhcmVudCBpcyBhbiBhbm95bW91cyBibG9jayAobXVzdCBiZSBnZW5lcmF0ZWQgOmJlZm9yZS86
YWZ0ZXIgY29udGVudCkKKyAgICAvLyBqdXN0IHVzZSB0aGUgYmxvY2sncyByZW1vdmUgbWV0aG9k
LgorICAgIGlmIChpc0Fub255bW91c1J1YnlJbmxpbmVCbG9jayhjaGlsZC5wYXJlbnQoKSkpIHsK
KyAgICAgICAgQVNTRVJUKGNoaWxkLmlzQmVmb3JlQ29udGVudCgpIHx8IGNoaWxkLmlzQWZ0ZXJD
b250ZW50KCkpOworICAgICAgICBhdXRvJiBwYXJlbnQgPSAqY2hpbGQucGFyZW50KCk7CisgICAg
ICAgIGF1dG8gdGFrZW5DaGlsZCA9IHBhcmVudC50YWtlQ2hpbGQobV9idWlsZGVyLCBjaGlsZCk7
CisgICAgICAgIHBhcmVudC5yZW1vdmVGcm9tUGFyZW50QW5kRGVzdHJveShtX2J1aWxkZXIpOwor
ICAgICAgICByZXR1cm4gdGFrZW5DaGlsZDsKKyAgICB9CisKKyAgICAvLyBPdGhlcndpc2UgZmlu
ZCB0aGUgY29udGFpbmluZyBydW4gYW5kIHJlbW92ZSBpdCBmcm9tIHRoZXJlLgorICAgIHJldHVy
biBmaW5kUnVieVJ1blBhcmVudChjaGlsZCkudGFrZUNoaWxkKG1fYnVpbGRlciwgY2hpbGQpOwor
fQorCitSZW5kZXJQdHI8UmVuZGVyT2JqZWN0PiBSZW5kZXJUcmVlQnVpbGRlcjo6UnVieTo6dGFr
ZUNoaWxkKFJlbmRlclJ1YnlBc0Jsb2NrJiBwYXJlbnQsIFJlbmRlck9iamVjdCYgY2hpbGQpCit7
CisgICAgLy8gSWYgdGhlIGNoaWxkJ3MgcGFyZW50IGlzICp0aGlzIChtdXN0IGJlIGEgcnVieSBy
dW4gb3IgZ2VuZXJhdGVkIGNvbnRlbnQgb3IgYW5vbnltb3VzIGJsb2NrKSwKKyAgICAvLyBqdXN0
IHVzZSB0aGUgbm9ybWFsIHJlbW92ZSBtZXRob2QuCisgICAgaWYgKGNoaWxkLnBhcmVudCgpID09
ICZwYXJlbnQpIHsKKyNpZm5kZWYgQVNTRVJUX0RJU0FCTEVECisgICAgICAgIEFTU0VSVChpc1J1
YnlDaGlsZEZvck5vcm1hbFJlbW92YWwoY2hpbGQpKTsKKyNlbmRpZgorICAgICAgICByZXR1cm4g
cGFyZW50LlJlbmRlckJsb2NrRmxvdzo6dGFrZUNoaWxkKG1fYnVpbGRlciwgY2hpbGQpOworICAg
IH0KKyAgICAvLyBJZiB0aGUgY2hpbGQncyBwYXJlbnQgaXMgYW4gYW5veW1vdXMgYmxvY2sgKG11
c3QgYmUgZ2VuZXJhdGVkIDpiZWZvcmUvOmFmdGVyIGNvbnRlbnQpCisgICAgLy8ganVzdCB1c2Ug
dGhlIGJsb2NrJ3MgcmVtb3ZlIG1ldGhvZC4KKyAgICBpZiAoaXNBbm9ueW1vdXNSdWJ5SW5saW5l
QmxvY2soY2hpbGQucGFyZW50KCkpKSB7CisgICAgICAgIEFTU0VSVChjaGlsZC5pc0JlZm9yZUNv
bnRlbnQoKSB8fCBjaGlsZC5pc0FmdGVyQ29udGVudCgpKTsKKyAgICAgICAgYXV0byYgcGFyZW50
ID0gKmNoaWxkLnBhcmVudCgpOworICAgICAgICBhdXRvIHRha2VuQ2hpbGQgPSBwYXJlbnQudGFr
ZUNoaWxkKG1fYnVpbGRlciwgY2hpbGQpOworICAgICAgICBwYXJlbnQucmVtb3ZlRnJvbVBhcmVu
dEFuZERlc3Ryb3kobV9idWlsZGVyKTsKKyAgICAgICAgcmV0dXJuIHRha2VuQ2hpbGQ7CisgICAg
fQorCisgICAgLy8gT3RoZXJ3aXNlIGZpbmQgdGhlIGNvbnRhaW5pbmcgcnVuIGFuZCByZW1vdmUg
aXQgZnJvbSB0aGVyZS4KKyAgICByZXR1cm4gZmluZFJ1YnlSdW5QYXJlbnQoY2hpbGQpLnRha2VD
aGlsZChtX2J1aWxkZXIsIGNoaWxkKTsKK30KKwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRyZWVCdWlsZGVyUnVieS5oIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRyZWVCdWlsZGVyUnVieS5oCmluZGV4IDBm
NGJlNGUyMzc1N2JmMDVkZWFlYTg3NmUyYmFhNTMwZjk5ZmEwYTYuLjUxYWFjYzc3YzdjYjQ1MzZj
OTcwM2VjNzdlNjA1ZTAwNWU1MTQyMWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy91cGRhdGluZy9SZW5kZXJUcmVlQnVpbGRlclJ1YnkuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXJSdWJ5LmgKQEAgLTQyLDYgKzQy
LDkgQEAgcHVibGljOgogICAgIFJ1YnkoUmVuZGVyVHJlZUJ1aWxkZXImKTsKIAogICAgIHZvaWQg
aW5zZXJ0Q2hpbGQoUmVuZGVyUnVieVJ1biYgcGFyZW50LCBSZW5kZXJQdHI8UmVuZGVyT2JqZWN0
PiBjaGlsZCwgUmVuZGVyT2JqZWN0KiBiZWZvcmVDaGlsZCk7CisgICAgUmVuZGVyUHRyPFJlbmRl
ck9iamVjdD4gdGFrZUNoaWxkKFJlbmRlclJ1YnlBc0lubGluZSYgcGFyZW50LCBSZW5kZXJPYmpl
Y3QmIGNoaWxkKTsKKyAgICBSZW5kZXJQdHI8UmVuZGVyT2JqZWN0PnRha2VDaGlsZChSZW5kZXJS
dWJ5QXNCbG9jayYgcGFyZW50LCBSZW5kZXJPYmplY3QmIGNoaWxkKTsKKwogICAgIFJlbmRlckVs
ZW1lbnQmIGZpbmRPckNyZWF0ZVBhcmVudEZvckNoaWxkKFJlbmRlclJ1YnlBc0Jsb2NrJiBwYXJl
bnQsIGNvbnN0IFJlbmRlck9iamVjdCYgY2hpbGQsIFJlbmRlck9iamVjdComIGJlZm9yZUNoaWxk
KTsKICAgICBSZW5kZXJFbGVtZW50JiBmaW5kT3JDcmVhdGVQYXJlbnRGb3JDaGlsZChSZW5kZXJS
dWJ5QXNJbmxpbmUmIHBhcmVudCwgY29uc3QgUmVuZGVyT2JqZWN0JiBjaGlsZCwgUmVuZGVyT2Jq
ZWN0KiYgYmVmb3JlQ2hpbGQpOwogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>333518</attachid>
            <date>2018-02-09 14:34:31 -0800</date>
            <delta_ts>2018-02-09 15:23:07 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-182651-20180209143430.patch</filename>
            <type>text/plain</type>
            <size>11708</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI4MzM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjJlNDkyMTEwODJhMjI2
Mjk5ZDVlMjM0OTkyMTFmYzQwODkwMmIzNi4uZTVmNGUxY2MzMjk3ZmUxYWI0OWZiYmU3YjdjZTg3
YzhhYTkxNjE3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDE4LTAyLTA5ICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW1JlbmRlclRyZWVCdWlsZGVy
XSBNb3ZlIFJlbmRlclJ1YnlBc0lubGluZS9Bc0Jsb2NrOjp0YWtlQ2hpbGQgbXV0YXRpb24gdG8g
YSBSZW5kZXJUcmVlQnVpbGRlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTgyNjUxCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8zNzQwNTA0Mj4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBBbnR0aSBLb2l2aXN0by4KKworICAgICAgICBObyBjaGFuZ2Ug
aW4gZnVuY3Rpb25hbGl0eS4KKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJSdWJ5LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclJ1YnlBc0lubGluZTo6dGFrZUNoaWxkKToKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlclJ1YnlBc0Jsb2NrOjp0YWtlQ2hpbGQpOgorICAgICAgICAoV2Vi
Q29yZTo6aXNBbm9ueW1vdXNSdWJ5SW5saW5lQmxvY2spOiBEZWxldGVkLgorICAgICAgICAoV2Vi
Q29yZTo6aXNSdWJ5Q2hpbGRGb3JOb3JtYWxSZW1vdmFsKTogRGVsZXRlZC4KKyAgICAgICAgKFdl
YkNvcmU6OmZpbmRSdWJ5UnVuUGFyZW50KTogRGVsZXRlZC4KKyAgICAgICAgKiByZW5kZXJpbmcv
dXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
VHJlZUJ1aWxkZXI6OnRha2VDaGlsZEZyb21SZW5kZXJSdWJ5QXNJbmxpbmUpOgorICAgICAgICAo
V2ViQ29yZTo6UmVuZGVyVHJlZUJ1aWxkZXI6OnRha2VDaGlsZEZyb21SZW5kZXJSdWJ5QXNCbG9j
ayk6CisgICAgICAgICogcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRyZWVCdWlsZGVyLmg6Cisg
ICAgICAgICogcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRyZWVCdWlsZGVyUnVieS5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpmaW5kUnVieVJ1blBhcmVudCk6CisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJUcmVlQnVpbGRlcjo6UnVieTo6dGFrZUNoaWxkKToKKyAgICAgICAgKiByZW5kZXJpbmcv
dXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXJSdWJ5Lmg6CisKIDIwMTgtMDItMDkgIFphbGFuIEJ1
anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBbUmVuZGVyVHJlZUJ1aWxkZXJdIElu
dHJvZHVjZSBSZW5kZXJUcmVlQnVpbGRlciB0byB3aWxsQmVEZXN0b3J5ZWQvcmVtb3ZlRnJvbVBh
cmVudEFuZERlc3Ryb3kKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJSdWJ5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSdWJ5LmNwcAppbmRl
eCA4YWRiMjQ4NDVmMGRhNjhhODNiOTg1ZWZlYWU1ZDZiMDc3NzA5ZWY3Li4yYjc5ZWRjOGRmMDdm
MDE4ODFmZDU5NzAxMGM4OTlhY2ZmYmE0MTExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyUnVieS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlclJ1YnkuY3BwCkBAIC00NSwzOSArNDUsNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiBXVEZf
TUFLRV9JU09fQUxMT0NBVEVEX0lNUEwoUmVuZGVyUnVieUFzSW5saW5lKTsKIFdURl9NQUtFX0lT
T19BTExPQ0FURURfSU1QTChSZW5kZXJSdWJ5QXNCbG9jayk7CiAKLS8vPT09IGdlbmVyaWMgaGVs
cGVyIGZ1bmN0aW9ucyB0byBhdm9pZCBleGNlc3NpdmUgY29kZSBkdXBsaWNhdGlvbiA9PT0KLQot
c3RhdGljIGlubGluZSBib29sIGlzQW5vbnltb3VzUnVieUlubGluZUJsb2NrKGNvbnN0IFJlbmRl
ck9iamVjdCogb2JqZWN0KQotewotICAgIEFTU0VSVCghb2JqZWN0Ci0gICAgICAgIHx8ICFpc1J1
Ynkob2JqZWN0LT5wYXJlbnQoKSkKLSAgICAgICAgfHwgaXM8UmVuZGVyUnVieVJ1bj4oKm9iamVj
dCkKLSAgICAgICAgfHwgKG9iamVjdC0+aXNJbmxpbmUoKSAmJiAob2JqZWN0LT5pc0JlZm9yZUNv
bnRlbnQoKSB8fCBvYmplY3QtPmlzQWZ0ZXJDb250ZW50KCkpKQotICAgICAgICB8fCAob2JqZWN0
LT5pc0Fub255bW91cygpICYmIGlzPFJlbmRlckJsb2NrPigqb2JqZWN0KSAmJiBvYmplY3QtPnN0
eWxlKCkuZGlzcGxheSgpID09IElOTElORV9CTE9DSykpOwotCi0gICAgcmV0dXJuIG9iamVjdAot
ICAgICAgICAmJiBpc1J1Ynkob2JqZWN0LT5wYXJlbnQoKSkKLSAgICAgICAgJiYgaXM8UmVuZGVy
QmxvY2s+KCpvYmplY3QpCi0gICAgICAgICYmICFpczxSZW5kZXJSdWJ5UnVuPigqb2JqZWN0KTsK
LX0KLQotI2lmbmRlZiBBU1NFUlRfRElTQUJMRUQKLXN0YXRpYyBpbmxpbmUgYm9vbCBpc1J1YnlD
aGlsZEZvck5vcm1hbFJlbW92YWwoY29uc3QgUmVuZGVyT2JqZWN0JiBvYmplY3QpCi17Ci0gICAg
cmV0dXJuIG9iamVjdC5pc1J1YnlSdW4oKQotICAgIHx8IG9iamVjdC5pc0JlZm9yZUNvbnRlbnQo
KQotICAgIHx8IG9iamVjdC5pc0FmdGVyQ29udGVudCgpCi0gICAgfHwgb2JqZWN0LmlzUmVuZGVy
TXVsdGlDb2x1bW5GbG93KCkKLSAgICB8fCBvYmplY3QuaXNSZW5kZXJNdWx0aUNvbHVtblNldCgp
Ci0gICAgfHwgaXNBbm9ueW1vdXNSdWJ5SW5saW5lQmxvY2soJm9iamVjdCk7Ci19Ci0jZW5kaWYK
LQotc3RhdGljIGlubGluZSBSZW5kZXJSdWJ5UnVuJiBmaW5kUnVieVJ1blBhcmVudChSZW5kZXJP
YmplY3QmIGNoaWxkKQotewotICAgIHJldHVybiAqbGluZWFnZU9mVHlwZTxSZW5kZXJSdWJ5UnVu
PihjaGlsZCkuZmlyc3QoKTsKLX0KLQogLy89PT0gcnVieSBhcyBpbmxpbmUgb2JqZWN0ID09PQog
CiBSZW5kZXJSdWJ5QXNJbmxpbmU6OlJlbmRlclJ1YnlBc0lubGluZShFbGVtZW50JiBlbGVtZW50
LCBSZW5kZXJTdHlsZSYmIHN0eWxlKQpAQCAtOTUsMjYgKzYyLDcgQEAgdm9pZCBSZW5kZXJSdWJ5
QXNJbmxpbmU6OnN0eWxlRGlkQ2hhbmdlKFN0eWxlRGlmZmVyZW5jZSBkaWZmLCBjb25zdCBSZW5k
ZXJTdHlsZSoKIAogUmVuZGVyUHRyPFJlbmRlck9iamVjdD4gUmVuZGVyUnVieUFzSW5saW5lOjp0
YWtlQ2hpbGQoUmVuZGVyVHJlZUJ1aWxkZXImIGJ1aWxkZXIsIFJlbmRlck9iamVjdCYgY2hpbGQp
CiB7Ci0gICAgLy8gSWYgdGhlIGNoaWxkJ3MgcGFyZW50IGlzICp0aGlzIChtdXN0IGJlIGEgcnVi
eSBydW4gb3IgZ2VuZXJhdGVkIGNvbnRlbnQgb3IgYW5vbnltb3VzIGJsb2NrKSwKLSAgICAvLyBq
dXN0IHVzZSB0aGUgbm9ybWFsIHJlbW92ZSBtZXRob2QuCi0gICAgaWYgKGNoaWxkLnBhcmVudCgp
ID09IHRoaXMpIHsKLSNpZm5kZWYgQVNTRVJUX0RJU0FCTEVECi0gICAgICAgIEFTU0VSVChpc1J1
YnlDaGlsZEZvck5vcm1hbFJlbW92YWwoY2hpbGQpKTsKLSNlbmRpZgotICAgICAgICByZXR1cm4g
UmVuZGVySW5saW5lOjp0YWtlQ2hpbGQoYnVpbGRlciwgY2hpbGQpOwotICAgIH0KLSAgICAvLyBJ
ZiB0aGUgY2hpbGQncyBwYXJlbnQgaXMgYW4gYW5veW1vdXMgYmxvY2sgKG11c3QgYmUgZ2VuZXJh
dGVkIDpiZWZvcmUvOmFmdGVyIGNvbnRlbnQpCi0gICAgLy8ganVzdCB1c2UgdGhlIGJsb2NrJ3Mg
cmVtb3ZlIG1ldGhvZC4KLSAgICBpZiAoaXNBbm9ueW1vdXNSdWJ5SW5saW5lQmxvY2soY2hpbGQu
cGFyZW50KCkpKSB7Ci0gICAgICAgIEFTU0VSVChjaGlsZC5pc0JlZm9yZUNvbnRlbnQoKSB8fCBj
aGlsZC5pc0FmdGVyQ29udGVudCgpKTsKLSAgICAgICAgYXV0byYgcGFyZW50ID0gKmNoaWxkLnBh
cmVudCgpOwotICAgICAgICBhdXRvIHRha2VuQ2hpbGQgPSBwYXJlbnQudGFrZUNoaWxkKGJ1aWxk
ZXIsIGNoaWxkKTsKLSAgICAgICAgcGFyZW50LnJlbW92ZUZyb21QYXJlbnRBbmREZXN0cm95KGJ1
aWxkZXIpOwotICAgICAgICByZXR1cm4gdGFrZW5DaGlsZDsKLSAgICB9Ci0KLSAgICAvLyBPdGhl
cndpc2UgZmluZCB0aGUgY29udGFpbmluZyBydW4gYW5kIHJlbW92ZSBpdCBmcm9tIHRoZXJlLgot
ICAgIHJldHVybiBmaW5kUnVieVJ1blBhcmVudChjaGlsZCkudGFrZUNoaWxkKGJ1aWxkZXIsIGNo
aWxkKTsKKyAgICByZXR1cm4gYnVpbGRlci50YWtlQ2hpbGRGcm9tUmVuZGVyUnVieUFzSW5saW5l
KCp0aGlzLCBjaGlsZCk7CiB9CiAKIC8vPT09IHJ1YnkgYXMgYmxvY2sgb2JqZWN0ID09PQpAQCAt
MTM0LDI2ICs4Miw3IEBAIHZvaWQgUmVuZGVyUnVieUFzQmxvY2s6OnN0eWxlRGlkQ2hhbmdlKFN0
eWxlRGlmZmVyZW5jZSBkaWZmLCBjb25zdCBSZW5kZXJTdHlsZSoKIAogUmVuZGVyUHRyPFJlbmRl
ck9iamVjdD4gUmVuZGVyUnVieUFzQmxvY2s6OnRha2VDaGlsZChSZW5kZXJUcmVlQnVpbGRlciYg
YnVpbGRlciwgUmVuZGVyT2JqZWN0JiBjaGlsZCkKIHsKLSAgICAvLyBJZiB0aGUgY2hpbGQncyBw
YXJlbnQgaXMgKnRoaXMgKG11c3QgYmUgYSBydWJ5IHJ1biBvciBnZW5lcmF0ZWQgY29udGVudCBv
ciBhbm9ueW1vdXMgYmxvY2spLAotICAgIC8vIGp1c3QgdXNlIHRoZSBub3JtYWwgcmVtb3ZlIG1l
dGhvZC4KLSAgICBpZiAoY2hpbGQucGFyZW50KCkgPT0gdGhpcykgewotI2lmbmRlZiBBU1NFUlRf
RElTQUJMRUQKLSAgICAgICAgQVNTRVJUKGlzUnVieUNoaWxkRm9yTm9ybWFsUmVtb3ZhbChjaGls
ZCkpOwotI2VuZGlmCi0gICAgICAgIHJldHVybiBSZW5kZXJCbG9ja0Zsb3c6OnRha2VDaGlsZChi
dWlsZGVyLCBjaGlsZCk7Ci0gICAgfQotICAgIC8vIElmIHRoZSBjaGlsZCdzIHBhcmVudCBpcyBh
biBhbm95bW91cyBibG9jayAobXVzdCBiZSBnZW5lcmF0ZWQgOmJlZm9yZS86YWZ0ZXIgY29udGVu
dCkKLSAgICAvLyBqdXN0IHVzZSB0aGUgYmxvY2sncyByZW1vdmUgbWV0aG9kLgotICAgIGlmIChp
c0Fub255bW91c1J1YnlJbmxpbmVCbG9jayhjaGlsZC5wYXJlbnQoKSkpIHsKLSAgICAgICAgQVNT
RVJUKGNoaWxkLmlzQmVmb3JlQ29udGVudCgpIHx8IGNoaWxkLmlzQWZ0ZXJDb250ZW50KCkpOwot
ICAgICAgICBhdXRvJiBwYXJlbnQgPSAqY2hpbGQucGFyZW50KCk7Ci0gICAgICAgIGF1dG8gdGFr
ZW5DaGlsZCA9IHBhcmVudC50YWtlQ2hpbGQoYnVpbGRlciwgY2hpbGQpOwotICAgICAgICBwYXJl
bnQucmVtb3ZlRnJvbVBhcmVudEFuZERlc3Ryb3koYnVpbGRlcik7Ci0gICAgICAgIHJldHVybiB0
YWtlbkNoaWxkOwotICAgIH0KLQotICAgIC8vIE90aGVyd2lzZSBmaW5kIHRoZSBjb250YWluaW5n
IHJ1biBhbmQgcmVtb3ZlIGl0IGZyb20gdGhlcmUuCi0gICAgcmV0dXJuIGZpbmRSdWJ5UnVuUGFy
ZW50KGNoaWxkKS50YWtlQ2hpbGQoYnVpbGRlciwgY2hpbGQpOworICAgIHJldHVybiBidWlsZGVy
LnRha2VDaGlsZEZyb21SZW5kZXJSdWJ5QXNCbG9jaygqdGhpcywgY2hpbGQpOwogfQogCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
dXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3VwZGF0aW5nL1JlbmRlclRyZWVCdWlsZGVyLmNwcAppbmRleCAxMDI0Y2Q5ZjFmYWRhYmQ1MWI4
MzlmNWQyOTFhZjZmNTYyMGMzNTE2Li4wNjc3Mjc3MjU4OTk2YWFiODhkMDM2OTgwYWU0OGUyM2Ni
OWNhMDEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVu
ZGVyVHJlZUJ1aWxkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGlu
Zy9SZW5kZXJUcmVlQnVpbGRlci5jcHAKQEAgLTQ3MCw2ICs0NzAsMTYgQEAgdm9pZCBSZW5kZXJU
cmVlQnVpbGRlcjo6aW5zZXJ0Q2hpbGRUb1JlbmRlck1hdGhNTEZlbmNlZChSZW5kZXJNYXRoTUxG
ZW5jZWQmIHBhcmUKICAgICBtYXRoTUxCdWlsZGVyKCkuaW5zZXJ0Q2hpbGQocGFyZW50LCBXVEZN
b3ZlKGNoaWxkKSwgYmVmb3JlQ2hpbGQpOwogfQogCitSZW5kZXJQdHI8UmVuZGVyT2JqZWN0PiBS
ZW5kZXJUcmVlQnVpbGRlcjo6dGFrZUNoaWxkRnJvbVJlbmRlclJ1YnlBc0lubGluZShSZW5kZXJS
dWJ5QXNJbmxpbmUmIHBhcmVudCwgUmVuZGVyT2JqZWN0JiBjaGlsZCkKK3sKKyAgICByZXR1cm4g
cnVieUJ1aWxkZXIoKS50YWtlQ2hpbGQocGFyZW50LCBjaGlsZCk7Cit9CisKK1JlbmRlclB0cjxS
ZW5kZXJPYmplY3Q+IFJlbmRlclRyZWVCdWlsZGVyOjp0YWtlQ2hpbGRGcm9tUmVuZGVyUnVieUFz
QmxvY2soUmVuZGVyUnVieUFzQmxvY2smIHBhcmVudCwgUmVuZGVyT2JqZWN0JiBjaGlsZCkKK3sK
KyAgICByZXR1cm4gcnVieUJ1aWxkZXIoKS50YWtlQ2hpbGQocGFyZW50LCBjaGlsZCk7Cit9CisK
IHZvaWQgUmVuZGVyVHJlZUJ1aWxkZXI6OnVwZGF0ZUFmdGVyRGVzY2VuZGFudHMoUmVuZGVyRWxl
bWVudCYgcmVuZGVyZXIpCiB7CiAgICAgaWYgKGlzPFJlbmRlckJsb2NrPihyZW5kZXJlcikpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZUJ1
aWxkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlQnVp
bGRlci5oCmluZGV4IDAwNTM2MDRhYjA1ZmNhN2M5ZjExOTMyM2Q0Y2E4NzJmZWQ3NDU3MzkuLjY2
OGVhM2YzNDczMzBhOWRmNWZiOTJlYjczNjFjMDdkOGVjMDQ5YTggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlQnVpbGRlci5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlQnVpbGRlci5oCkBAIC0z
MCw2ICszMCw4IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIFJlbmRlck1hdGhNTEZl
bmNlZDsKK2NsYXNzIFJlbmRlclJ1YnlBc0Jsb2NrOworY2xhc3MgUmVuZGVyUnVieUFzSW5saW5l
OwogY2xhc3MgUmVuZGVyUnVieUJhc2U7CiBjbGFzcyBSZW5kZXJSdWJ5UnVuOwogY2xhc3MgUmVu
ZGVyU1ZHQ29udGFpbmVyOwpAQCAtNzEsNiArNzMsOSBAQCBwdWJsaWM6CiAgICAgdm9pZCBpbnNl
cnRDaGlsZFRvUmVuZGVyVGFibGVSb3coUmVuZGVyVGFibGVSb3cmIHBhcmVudCwgUmVuZGVyUHRy
PFJlbmRlck9iamVjdD4gY2hpbGQsIFJlbmRlck9iamVjdCogYmVmb3JlQ2hpbGQgPSBudWxscHRy
KTsKICAgICB2b2lkIGluc2VydENoaWxkVG9SZW5kZXJNYXRoTUxGZW5jZWQoUmVuZGVyTWF0aE1M
RmVuY2VkJiBwYXJlbnQsIFJlbmRlclB0cjxSZW5kZXJPYmplY3Q+IGNoaWxkLCBSZW5kZXJPYmpl
Y3QqIGJlZm9yZUNoaWxkID0gbnVsbHB0cik7CiAKKyAgICBSZW5kZXJQdHI8UmVuZGVyT2JqZWN0
PiB0YWtlQ2hpbGRGcm9tUmVuZGVyUnVieUFzSW5saW5lKFJlbmRlclJ1YnlBc0lubGluZSYgcGFy
ZW50LCBSZW5kZXJPYmplY3QmIGNoaWxkKTsKKyAgICBSZW5kZXJQdHI8UmVuZGVyT2JqZWN0PiB0
YWtlQ2hpbGRGcm9tUmVuZGVyUnVieUFzQmxvY2soUmVuZGVyUnVieUFzQmxvY2smIHBhcmVudCwg
UmVuZGVyT2JqZWN0JiBjaGlsZCk7CisKICAgICBib29sIGNoaWxkUmVxdWlyZXNUYWJsZShjb25z
dCBSZW5kZXJFbGVtZW50JiBwYXJlbnQsIGNvbnN0IFJlbmRlck9iamVjdCYgY2hpbGQpOwogICAg
IHZvaWQgbWFrZUNoaWxkcmVuTm9uSW5saW5lKFJlbmRlckJsb2NrJiBwYXJlbnQsIFJlbmRlck9i
amVjdCogaW5zZXJ0aW9uUG9pbnQgPSBudWxscHRyKTsKICAgICBSZW5kZXJPYmplY3QqIHNwbGl0
QW5vbnltb3VzQm94ZXNBcm91bmRDaGlsZChSZW5kZXJCb3gmIHBhcmVudCwgUmVuZGVyT2JqZWN0
KiBiZWZvcmVDaGlsZCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBk
YXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXJSdWJ5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy91cGRhdGluZy9SZW5kZXJUcmVlQnVpbGRlclJ1YnkuY3BwCmluZGV4IDg1NDRkODYwOTZlM2Fm
YjdlOTQxZDNhMjRkMzEyNzNkNTgwNmQ2N2MuLjYwOTZlOTJlZjNkN2M1NzkyYjllMGVlYWUxMDcz
NTIzOGM2Y2I2YTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGlu
Zy9SZW5kZXJUcmVlQnVpbGRlclJ1YnkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy91cGRhdGluZy9SZW5kZXJUcmVlQnVpbGRlclJ1YnkuY3BwCkBAIC0zMyw2ICszMywxMSBAQAog
CiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK3N0YXRpYyBpbmxpbmUgUmVuZGVyUnVieVJ1biYgZmlu
ZFJ1YnlSdW5QYXJlbnQoUmVuZGVyT2JqZWN0JiBjaGlsZCkKK3sKKyAgICByZXR1cm4gKmxpbmVh
Z2VPZlR5cGU8UmVuZGVyUnVieVJ1bj4oY2hpbGQpLmZpcnN0KCk7Cit9CisKIHN0YXRpYyBpbmxp
bmUgYm9vbCBpc0Fub255bW91c1J1YnlJbmxpbmVCbG9jayhjb25zdCBSZW5kZXJPYmplY3QqIG9i
amVjdCkKIHsKICAgICBBU1NFUlQoIW9iamVjdApAQCAtMzY3LDQgKzM3Miw1MiBAQCBSZW5kZXJS
dWJ5QmFzZSYgUmVuZGVyVHJlZUJ1aWxkZXI6OlJ1Ynk6OnJ1YnlCYXNlU2FmZShSZW5kZXJSdWJ5
UnVuJiBydWJ5UnVuKQogICAgIHJldHVybiAqYmFzZTsKIH0KIAorUmVuZGVyUHRyPFJlbmRlck9i
amVjdD4gUmVuZGVyVHJlZUJ1aWxkZXI6OlJ1Ynk6OnRha2VDaGlsZChSZW5kZXJSdWJ5QXNJbmxp
bmUmIHBhcmVudCwgUmVuZGVyT2JqZWN0JiBjaGlsZCkKK3sKKyAgICAvLyBJZiB0aGUgY2hpbGQn
cyBwYXJlbnQgaXMgKnRoaXMgKG11c3QgYmUgYSBydWJ5IHJ1biBvciBnZW5lcmF0ZWQgY29udGVu
dCBvciBhbm9ueW1vdXMgYmxvY2spLAorICAgIC8vIGp1c3QgdXNlIHRoZSBub3JtYWwgcmVtb3Zl
IG1ldGhvZC4KKyAgICBpZiAoY2hpbGQucGFyZW50KCkgPT0gJnBhcmVudCkgeworI2lmbmRlZiBB
U1NFUlRfRElTQUJMRUQKKyAgICAgICAgQVNTRVJUKGlzUnVieUNoaWxkRm9yTm9ybWFsUmVtb3Zh
bChjaGlsZCkpOworI2VuZGlmCisgICAgICAgIHJldHVybiBwYXJlbnQuUmVuZGVySW5saW5lOjp0
YWtlQ2hpbGQobV9idWlsZGVyLCBjaGlsZCk7CisgICAgfQorICAgIC8vIElmIHRoZSBjaGlsZCdz
IHBhcmVudCBpcyBhbiBhbm95bW91cyBibG9jayAobXVzdCBiZSBnZW5lcmF0ZWQgOmJlZm9yZS86
YWZ0ZXIgY29udGVudCkKKyAgICAvLyBqdXN0IHVzZSB0aGUgYmxvY2sncyByZW1vdmUgbWV0aG9k
LgorICAgIGlmIChpc0Fub255bW91c1J1YnlJbmxpbmVCbG9jayhjaGlsZC5wYXJlbnQoKSkpIHsK
KyAgICAgICAgQVNTRVJUKGNoaWxkLmlzQmVmb3JlQ29udGVudCgpIHx8IGNoaWxkLmlzQWZ0ZXJD
b250ZW50KCkpOworICAgICAgICBhdXRvJiBwYXJlbnQgPSAqY2hpbGQucGFyZW50KCk7CisgICAg
ICAgIGF1dG8gdGFrZW5DaGlsZCA9IHBhcmVudC50YWtlQ2hpbGQobV9idWlsZGVyLCBjaGlsZCk7
CisgICAgICAgIHBhcmVudC5yZW1vdmVGcm9tUGFyZW50QW5kRGVzdHJveShtX2J1aWxkZXIpOwor
ICAgICAgICByZXR1cm4gdGFrZW5DaGlsZDsKKyAgICB9CisKKyAgICAvLyBPdGhlcndpc2UgZmlu
ZCB0aGUgY29udGFpbmluZyBydW4gYW5kIHJlbW92ZSBpdCBmcm9tIHRoZXJlLgorICAgIHJldHVy
biBmaW5kUnVieVJ1blBhcmVudChjaGlsZCkudGFrZUNoaWxkKG1fYnVpbGRlciwgY2hpbGQpOwor
fQorCitSZW5kZXJQdHI8UmVuZGVyT2JqZWN0PiBSZW5kZXJUcmVlQnVpbGRlcjo6UnVieTo6dGFr
ZUNoaWxkKFJlbmRlclJ1YnlBc0Jsb2NrJiBwYXJlbnQsIFJlbmRlck9iamVjdCYgY2hpbGQpCit7
CisgICAgLy8gSWYgdGhlIGNoaWxkJ3MgcGFyZW50IGlzICp0aGlzIChtdXN0IGJlIGEgcnVieSBy
dW4gb3IgZ2VuZXJhdGVkIGNvbnRlbnQgb3IgYW5vbnltb3VzIGJsb2NrKSwKKyAgICAvLyBqdXN0
IHVzZSB0aGUgbm9ybWFsIHJlbW92ZSBtZXRob2QuCisgICAgaWYgKGNoaWxkLnBhcmVudCgpID09
ICZwYXJlbnQpIHsKKyNpZm5kZWYgQVNTRVJUX0RJU0FCTEVECisgICAgICAgIEFTU0VSVChpc1J1
YnlDaGlsZEZvck5vcm1hbFJlbW92YWwoY2hpbGQpKTsKKyNlbmRpZgorICAgICAgICByZXR1cm4g
cGFyZW50LlJlbmRlckJsb2NrRmxvdzo6dGFrZUNoaWxkKG1fYnVpbGRlciwgY2hpbGQpOworICAg
IH0KKyAgICAvLyBJZiB0aGUgY2hpbGQncyBwYXJlbnQgaXMgYW4gYW5veW1vdXMgYmxvY2sgKG11
c3QgYmUgZ2VuZXJhdGVkIDpiZWZvcmUvOmFmdGVyIGNvbnRlbnQpCisgICAgLy8ganVzdCB1c2Ug
dGhlIGJsb2NrJ3MgcmVtb3ZlIG1ldGhvZC4KKyAgICBpZiAoaXNBbm9ueW1vdXNSdWJ5SW5saW5l
QmxvY2soY2hpbGQucGFyZW50KCkpKSB7CisgICAgICAgIEFTU0VSVChjaGlsZC5pc0JlZm9yZUNv
bnRlbnQoKSB8fCBjaGlsZC5pc0FmdGVyQ29udGVudCgpKTsKKyAgICAgICAgYXV0byYgcGFyZW50
ID0gKmNoaWxkLnBhcmVudCgpOworICAgICAgICBhdXRvIHRha2VuQ2hpbGQgPSBwYXJlbnQudGFr
ZUNoaWxkKG1fYnVpbGRlciwgY2hpbGQpOworICAgICAgICBwYXJlbnQucmVtb3ZlRnJvbVBhcmVu
dEFuZERlc3Ryb3kobV9idWlsZGVyKTsKKyAgICAgICAgcmV0dXJuIHRha2VuQ2hpbGQ7CisgICAg
fQorCisgICAgLy8gT3RoZXJ3aXNlIGZpbmQgdGhlIGNvbnRhaW5pbmcgcnVuIGFuZCByZW1vdmUg
aXQgZnJvbSB0aGVyZS4KKyAgICByZXR1cm4gZmluZFJ1YnlSdW5QYXJlbnQoY2hpbGQpLnRha2VD
aGlsZChtX2J1aWxkZXIsIGNoaWxkKTsKK30KKwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRyZWVCdWlsZGVyUnVieS5oIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRyZWVCdWlsZGVyUnVieS5oCmluZGV4IDBm
NGJlNGUyMzc1N2JmMDVkZWFlYTg3NmUyYmFhNTMwZjk5ZmEwYTYuLmZhYThmZjlkMWMzMjUwOTIy
NTQ1NjllZTE1NWY5NWY2Zjc0M2FhMTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy91cGRhdGluZy9SZW5kZXJUcmVlQnVpbGRlclJ1YnkuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXJSdWJ5LmgKQEAgLTQyLDYgKzQy
LDkgQEAgcHVibGljOgogICAgIFJ1YnkoUmVuZGVyVHJlZUJ1aWxkZXImKTsKIAogICAgIHZvaWQg
aW5zZXJ0Q2hpbGQoUmVuZGVyUnVieVJ1biYgcGFyZW50LCBSZW5kZXJQdHI8UmVuZGVyT2JqZWN0
PiBjaGlsZCwgUmVuZGVyT2JqZWN0KiBiZWZvcmVDaGlsZCk7CisgICAgUmVuZGVyUHRyPFJlbmRl
ck9iamVjdD4gdGFrZUNoaWxkKFJlbmRlclJ1YnlBc0lubGluZSYgcGFyZW50LCBSZW5kZXJPYmpl
Y3QmIGNoaWxkKTsKKyAgICBSZW5kZXJQdHI8UmVuZGVyT2JqZWN0PiB0YWtlQ2hpbGQoUmVuZGVy
UnVieUFzQmxvY2smIHBhcmVudCwgUmVuZGVyT2JqZWN0JiBjaGlsZCk7CisKICAgICBSZW5kZXJF
bGVtZW50JiBmaW5kT3JDcmVhdGVQYXJlbnRGb3JDaGlsZChSZW5kZXJSdWJ5QXNCbG9jayYgcGFy
ZW50LCBjb25zdCBSZW5kZXJPYmplY3QmIGNoaWxkLCBSZW5kZXJPYmplY3QqJiBiZWZvcmVDaGls
ZCk7CiAgICAgUmVuZGVyRWxlbWVudCYgZmluZE9yQ3JlYXRlUGFyZW50Rm9yQ2hpbGQoUmVuZGVy
UnVieUFzSW5saW5lJiBwYXJlbnQsIGNvbnN0IFJlbmRlck9iamVjdCYgY2hpbGQsIFJlbmRlck9i
amVjdComIGJlZm9yZUNoaWxkKTsKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>