<?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>175242</bug_id>
          
          <creation_ts>2017-08-06 01:40:17 -0700</creation_ts>
          <short_desc>Promise resolve and reject function should have length = 1</short_desc>
          <delta_ts>2017-08-21 12:40:29 -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>JavaScriptCore</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=175333</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>buildbot</cc>
    
    <cc>commit-queue</cc>
    
    <cc>joepeck</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>sam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1335772</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2017-08-06 01:40:17 -0700</bug_when>
    <thetext>...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1335786</commentid>
    <comment_count>1</comment_count>
      <attachid>317364</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2017-08-06 09:41:05 -0700</bug_when>
    <thetext>Created attachment 317364
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1335787</commentid>
    <comment_count>2</comment_count>
      <attachid>317365</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2017-08-06 09:41:43 -0700</bug_when>
    <thetext>Created attachment 317365
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1335790</commentid>
    <comment_count>3</comment_count>
      <attachid>317365</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2017-08-06 10:28:23 -0700</bug_when>
    <thetext>Comment on attachment 317365
Patch

Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1335798</commentid>
    <comment_count>4</comment_count>
      <attachid>317365</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-08-06 10:57:29 -0700</bug_when>
    <thetext>Comment on attachment 317365
Patch

Clearing flags on attachment: 317365

Committed r220324: &lt;http://trac.webkit.org/changeset/220324&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1335799</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-08-06 10:57:31 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1335800</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-08-06 10:58:32 -0700</bug_when>
    <thetext>&lt;rdar://problem/33744910&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1340705</commentid>
    <comment_count>7</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2017-08-21 12:40:29 -0700</bug_when>
    <thetext>Nice!! I believe this would have changed some test262 tests.

Oh, I see you updated them in:
https://trac.webkit.org/r220415</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>317364</attachid>
            <date>2017-08-06 09:41:05 -0700</date>
            <delta_ts>2017-08-06 09:41:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-175242-20170807014104.patch</filename>
            <type>text/plain</type>
            <size>13868</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIwMzIyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBh
NWUyNmMwOTBlNWJjODgzY2NiMTBmOTQyYjUxY2FjY2VhM2JiYmU1Li5hNzBiYmQzZDI5OWE4NDli
NTkxMTEzZTQwYjY0NjQ0NmVlNDI5N2YxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNCBAQAorMjAxNy0wOC0wNiAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWls
LmNvbT4KKworICAgICAgICBQcm9taXNlIHJlc29sdmUgYW5kIHJlamVjdCBmdW5jdGlvbiBzaG91
bGQgaGF2ZSBsZW5ndGggPSAxCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNzUyNDIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIHJ1bnRpbWUvSlNGdW5jdGlvbi5jcHA6CisgICAgICAgIChKU0M6OkpTRnVu
Y3Rpb246OmNyZWF0ZUJ1aWx0aW5GdW5jdGlvbik6CisgICAgICAgIChKU0M6OkpTRnVuY3Rpb246
OmdldE93blByb3BlcnR5U2xvdCk6CisgICAgICAgIChKU0M6OkpTRnVuY3Rpb246OmdldE93bk5v
bkluZGV4UHJvcGVydHlOYW1lcyk6CisgICAgICAgIChKU0M6OkpTRnVuY3Rpb246OnB1dCk6Cisg
ICAgICAgIChKU0M6OkpTRnVuY3Rpb246OmRlbGV0ZVByb3BlcnR5KToKKyAgICAgICAgKEpTQzo6
SlNGdW5jdGlvbjo6ZGVmaW5lT3duUHJvcGVydHkpOgorICAgICAgICAoSlNDOjpKU0Z1bmN0aW9u
OjpyZWlmeUxhenlQcm9wZXJ0eUlmTmVlZGVkKToKKyAgICAgICAgKEpTQzo6SlNGdW5jdGlvbjo6
cmVpZnlMYXp5UHJvcGVydHlGb3JIb3N0T3JCdWlsdGluSWZOZWVkZWQpOgorICAgICAgICAoSlND
OjpKU0Z1bmN0aW9uOjpyZWlmeUxhenlMZW5ndGhJZk5lZWRlZCk6CisgICAgICAgIChKU0M6OkpT
RnVuY3Rpb246OnJlaWZ5TGF6eUJvdW5kTmFtZUlmTmVlZGVkKToKKyAgICAgICAgKEpTQzo6SlNG
dW5jdGlvbjo6cmVpZnlCb3VuZE5hbWVJZk5lZWRlZCk6IERlbGV0ZWQuCisgICAgICAgICogcnVu
dGltZS9KU0Z1bmN0aW9uLmg6CisKIDIwMTctMDgtMDUgIEZpbGlwIFBpemxvICA8ZnBpemxvQGFw
cGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OIChyMjE5ODk1LTIxOTg5Nyk6IE51bWJlciBv
ZiBsZWFrcyBvbiBPcGVuIFNvdXJjZSB3ZW50IGZyb20gOTI0MCB0byAyMzU5ODMgYW5kIGlzIG5v
dyBhdCAzMDIzNzIKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
RnVuY3Rpb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5j
cHAKaW5kZXggNGUyMjZjM2I3N2JlMmNlODhmMWE1OTUyMmM3ODAzNmEwNTI4YjExMi4uZGZjOTM3
NTQyOWY0ZDJiODU2MDhhZjIyMmRiM2RjOGFjMjY2MmI1ZSAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5jcHAKQEAgLTEwNSw3ICsxMDUsNiBAQCBKU0Z1bmN0
aW9uKiBKU0Z1bmN0aW9uOjpjcmVhdGVCdWlsdGluRnVuY3Rpb24oVk0mIHZtLCBGdW5jdGlvbkV4
ZWN1dGFibGUqIGV4ZWN1dAogewogICAgIEpTRnVuY3Rpb24qIGZ1bmN0aW9uID0gY3JlYXRlKHZt
LCBleGVjdXRhYmxlLCBnbG9iYWxPYmplY3QpOwogICAgIGZ1bmN0aW9uLT5wdXREaXJlY3Qodm0s
IHZtLnByb3BlcnR5TmFtZXMtPm5hbWUsIGpzU3RyaW5nKCZ2bSwgZXhlY3V0YWJsZS0+bmFtZSgp
LnN0cmluZygpKSwgUmVhZE9ubHkgfCBEb250RW51bSk7Ci0gICAgZnVuY3Rpb24tPnB1dERpcmVj
dCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+bGVuZ3RoLCBqc051bWJlcihleGVjdXRhYmxlLT5wYXJh
bWV0ZXJDb3VudCgpKSwgUmVhZE9ubHkgfCBEb250RW51bSk7CiAgICAgcmV0dXJuIGZ1bmN0aW9u
OwogfQogCkBAIC0xMTMsNyArMTEyLDYgQEAgSlNGdW5jdGlvbiogSlNGdW5jdGlvbjo6Y3JlYXRl
QnVpbHRpbkZ1bmN0aW9uKFZNJiB2bSwgRnVuY3Rpb25FeGVjdXRhYmxlKiBleGVjdXQKIHsKICAg
ICBKU0Z1bmN0aW9uKiBmdW5jdGlvbiA9IGNyZWF0ZSh2bSwgZXhlY3V0YWJsZSwgZ2xvYmFsT2Jq
ZWN0KTsKICAgICBmdW5jdGlvbi0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5uYW1l
LCBqc1N0cmluZygmdm0sIG5hbWUpLCBSZWFkT25seSB8IERvbnRFbnVtKTsKLSAgICBmdW5jdGlv
bi0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5sZW5ndGgsIGpzTnVtYmVyKGV4ZWN1
dGFibGUtPnBhcmFtZXRlckNvdW50KCkpLCBSZWFkT25seSB8IERvbnRFbnVtKTsKICAgICByZXR1
cm4gZnVuY3Rpb247CiB9CiAKQEAgLTM1MCw3ICszNDgsNyBAQCBib29sIEpTRnVuY3Rpb246Omdl
dE93blByb3BlcnR5U2xvdChKU09iamVjdCogb2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMsIFByb3Bl
cnR5TgogICAgIFZNJiB2bSA9IGV4ZWMtPnZtKCk7CiAgICAgSlNGdW5jdGlvbiogdGhpc09iamVj
dCA9IGpzQ2FzdDxKU0Z1bmN0aW9uKj4ob2JqZWN0KTsKICAgICBpZiAodGhpc09iamVjdC0+aXNI
b3N0T3JCdWlsdGluRnVuY3Rpb24oKSkgewotICAgICAgICB0aGlzT2JqZWN0LT5yZWlmeUJvdW5k
TmFtZUlmTmVlZGVkKHZtLCBleGVjLCBwcm9wZXJ0eU5hbWUpOworICAgICAgICB0aGlzT2JqZWN0
LT5yZWlmeUxhenlQcm9wZXJ0eUZvckhvc3RPckJ1aWx0aW5JZk5lZWRlZCh2bSwgZXhlYywgcHJv
cGVydHlOYW1lKTsKICAgICAgICAgcmV0dXJuIEJhc2U6OmdldE93blByb3BlcnR5U2xvdCh0aGlz
T2JqZWN0LCBleGVjLCBwcm9wZXJ0eU5hbWUsIHNsb3QpOwogICAgIH0KIApAQCAtNDAyLDIxICs0
MDAsMjcgQEAgdm9pZCBKU0Z1bmN0aW9uOjpnZXRPd25Ob25JbmRleFByb3BlcnR5TmFtZXMoSlNP
YmplY3QqIG9iamVjdCwgRXhlY1N0YXRlKiBleGVjLAogewogICAgIEpTRnVuY3Rpb24qIHRoaXNP
YmplY3QgPSBqc0Nhc3Q8SlNGdW5jdGlvbio+KG9iamVjdCk7CiAgICAgVk0mIHZtID0gZXhlYy0+
dm0oKTsKLSAgICBpZiAoIXRoaXNPYmplY3QtPmlzSG9zdE9yQnVpbHRpbkZ1bmN0aW9uKCkgJiYg
bW9kZS5pbmNsdWRlRG9udEVudW1Qcm9wZXJ0aWVzKCkpIHsKLSAgICAgICAgLy8gTWFrZSBzdXJl
IHByb3RvdHlwZSBoYXMgYmVlbiByZWlmaWVkLgotICAgICAgICBQcm9wZXJ0eVNsb3Qgc2xvdCh0
aGlzT2JqZWN0LCBQcm9wZXJ0eVNsb3Q6OkludGVybmFsTWV0aG9kVHlwZTo6Vk1JbnF1aXJ5KTsK
LSAgICAgICAgdGhpc09iamVjdC0+bWV0aG9kVGFibGUodm0pLT5nZXRPd25Qcm9wZXJ0eVNsb3Qo
dGhpc09iamVjdCwgZXhlYywgdm0ucHJvcGVydHlOYW1lcy0+cHJvdG90eXBlLCBzbG90KTsKKyAg
ICBpZiAobW9kZS5pbmNsdWRlRG9udEVudW1Qcm9wZXJ0aWVzKCkpIHsKKyAgICAgICAgaWYgKCF0
aGlzT2JqZWN0LT5pc0hvc3RPckJ1aWx0aW5GdW5jdGlvbigpKSB7CisgICAgICAgICAgICAvLyBN
YWtlIHN1cmUgcHJvdG90eXBlIGhhcyBiZWVuIHJlaWZpZWQuCisgICAgICAgICAgICBQcm9wZXJ0
eVNsb3Qgc2xvdCh0aGlzT2JqZWN0LCBQcm9wZXJ0eVNsb3Q6OkludGVybmFsTWV0aG9kVHlwZTo6
Vk1JbnF1aXJ5KTsKKyAgICAgICAgICAgIHRoaXNPYmplY3QtPm1ldGhvZFRhYmxlKHZtKS0+Z2V0
T3duUHJvcGVydHlTbG90KHRoaXNPYmplY3QsIGV4ZWMsIHZtLnByb3BlcnR5TmFtZXMtPnByb3Rv
dHlwZSwgc2xvdCk7CiAKLSAgICAgICAgaWYgKHRoaXNPYmplY3QtPmpzRXhlY3V0YWJsZSgpLT5o
YXNDYWxsZXJBbmRBcmd1bWVudHNQcm9wZXJ0aWVzKCkpIHsKLSAgICAgICAgICAgIHByb3BlcnR5
TmFtZXMuYWRkKHZtLnByb3BlcnR5TmFtZXMtPmFyZ3VtZW50cyk7Ci0gICAgICAgICAgICBwcm9w
ZXJ0eU5hbWVzLmFkZCh2bS5wcm9wZXJ0eU5hbWVzLT5jYWxsZXIpOworICAgICAgICAgICAgaWYg
KHRoaXNPYmplY3QtPmpzRXhlY3V0YWJsZSgpLT5oYXNDYWxsZXJBbmRBcmd1bWVudHNQcm9wZXJ0
aWVzKCkpIHsKKyAgICAgICAgICAgICAgICBwcm9wZXJ0eU5hbWVzLmFkZCh2bS5wcm9wZXJ0eU5h
bWVzLT5hcmd1bWVudHMpOworICAgICAgICAgICAgICAgIHByb3BlcnR5TmFtZXMuYWRkKHZtLnBy
b3BlcnR5TmFtZXMtPmNhbGxlcik7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBpZiAoIXRo
aXNPYmplY3QtPmhhc1JlaWZpZWRMZW5ndGgoKSkKKyAgICAgICAgICAgICAgICBwcm9wZXJ0eU5h
bWVzLmFkZCh2bS5wcm9wZXJ0eU5hbWVzLT5sZW5ndGgpOworICAgICAgICAgICAgaWYgKCF0aGlz
T2JqZWN0LT5oYXNSZWlmaWVkTmFtZSgpKQorICAgICAgICAgICAgICAgIHByb3BlcnR5TmFtZXMu
YWRkKHZtLnByb3BlcnR5TmFtZXMtPm5hbWUpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAg
ICAgaWYgKHRoaXNPYmplY3QtPmlzQnVpbHRpbkZ1bmN0aW9uKCkgJiYgIXRoaXNPYmplY3QtPmhh
c1JlaWZpZWRMZW5ndGgoKSkKKyAgICAgICAgICAgICAgICBwcm9wZXJ0eU5hbWVzLmFkZCh2bS5w
cm9wZXJ0eU5hbWVzLT5sZW5ndGgpOworICAgICAgICAgICAgaWYgKHRoaXNPYmplY3QtPmluaGVy
aXRzKHZtLCBKU0JvdW5kRnVuY3Rpb246OmluZm8oKSkgJiYgIXRoaXNPYmplY3QtPmhhc1JlaWZp
ZWROYW1lKCkpCisgICAgICAgICAgICAgICAgcHJvcGVydHlOYW1lcy5hZGQodm0ucHJvcGVydHlO
YW1lcy0+bmFtZSk7CiAgICAgICAgIH0KLSAgICAgICAgaWYgKCF0aGlzT2JqZWN0LT5oYXNSZWlm
aWVkTGVuZ3RoKCkpCi0gICAgICAgICAgICBwcm9wZXJ0eU5hbWVzLmFkZCh2bS5wcm9wZXJ0eU5h
bWVzLT5sZW5ndGgpOwotICAgICAgICBpZiAoIXRoaXNPYmplY3QtPmhhc1JlaWZpZWROYW1lKCkp
Ci0gICAgICAgICAgICBwcm9wZXJ0eU5hbWVzLmFkZCh2bS5wcm9wZXJ0eU5hbWVzLT5uYW1lKTsK
LSAgICB9IGVsc2UgaWYgKHRoaXNPYmplY3QtPmlzSG9zdE9yQnVpbHRpbkZ1bmN0aW9uKCkgJiYg
bW9kZS5pbmNsdWRlRG9udEVudW1Qcm9wZXJ0aWVzKCkgJiYgdGhpc09iamVjdC0+aW5oZXJpdHMo
dm0sIEpTQm91bmRGdW5jdGlvbjo6aW5mbygpKSAmJiAhdGhpc09iamVjdC0+aGFzUmVpZmllZE5h
bWUoKSkKLSAgICAgICAgcHJvcGVydHlOYW1lcy5hZGQoZXhlYy0+dm0oKS5wcm9wZXJ0eU5hbWVz
LT5uYW1lKTsKKyAgICB9CiAgICAgQmFzZTo6Z2V0T3duTm9uSW5kZXhQcm9wZXJ0eU5hbWVzKHRo
aXNPYmplY3QsIGV4ZWMsIHByb3BlcnR5TmFtZXMsIG1vZGUpOwogfQogCkBAIC00MzMsNyArNDM3
LDcgQEAgYm9vbCBKU0Z1bmN0aW9uOjpwdXQoSlNDZWxsKiBjZWxsLCBFeGVjU3RhdGUqIGV4ZWMs
IFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUsIEoKICAgICB9CiAKICAgICBpZiAodGhpc09iamVj
dC0+aXNIb3N0T3JCdWlsdGluRnVuY3Rpb24oKSkgewotICAgICAgICBMYXp5UHJvcGVydHlUeXBl
IHByb3BUeXBlID0gdGhpc09iamVjdC0+cmVpZnlCb3VuZE5hbWVJZk5lZWRlZCh2bSwgZXhlYywg
cHJvcGVydHlOYW1lKTsKKyAgICAgICAgTGF6eVByb3BlcnR5VHlwZSBwcm9wVHlwZSA9IHRoaXNP
YmplY3QtPnJlaWZ5TGF6eVByb3BlcnR5Rm9ySG9zdE9yQnVpbHRpbklmTmVlZGVkKHZtLCBleGVj
LCBwcm9wZXJ0eU5hbWUpOwogICAgICAgICBpZiAocHJvcFR5cGUgPT0gTGF6eVByb3BlcnR5VHlw
ZTo6SXNMYXp5UHJvcGVydHkpCiAgICAgICAgICAgICBzbG90LmRpc2FibGVDYWNoaW5nKCk7CiAg
ICAgICAgIHNjb3BlLnJlbGVhc2UoKTsKQEAgLTQ3NSwxMiArNDc5LDEyIEBAIGJvb2wgSlNGdW5j
dGlvbjo6cHV0KEpTQ2VsbCogY2VsbCwgRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0eU5hbWUgcHJv
cGVydHlOYW1lLCBKCiAKIGJvb2wgSlNGdW5jdGlvbjo6ZGVsZXRlUHJvcGVydHkoSlNDZWxsKiBj
ZWxsLCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpCiB7CisgICAg
Vk0mIHZtID0gZXhlYy0+dm0oKTsKICAgICBKU0Z1bmN0aW9uKiB0aGlzT2JqZWN0ID0ganNDYXN0
PEpTRnVuY3Rpb24qPihjZWxsKTsKICAgICBpZiAodGhpc09iamVjdC0+aXNIb3N0T3JCdWlsdGlu
RnVuY3Rpb24oKSkKLSAgICAgICAgdGhpc09iamVjdC0+cmVpZnlCb3VuZE5hbWVJZk5lZWRlZChl
eGVjLT52bSgpLCBleGVjLCBwcm9wZXJ0eU5hbWUpOwotICAgIGVsc2UgaWYgKGV4ZWMtPnZtKCku
ZGVsZXRlUHJvcGVydHlNb2RlKCkgIT0gVk06OkRlbGV0ZVByb3BlcnR5TW9kZTo6SWdub3JlQ29u
ZmlndXJhYmxlKSB7CisgICAgICAgIHRoaXNPYmplY3QtPnJlaWZ5TGF6eVByb3BlcnR5Rm9ySG9z
dE9yQnVpbHRpbklmTmVlZGVkKHZtLCBleGVjLCBwcm9wZXJ0eU5hbWUpOworICAgIGVsc2UgaWYg
KHZtLmRlbGV0ZVByb3BlcnR5TW9kZSgpICE9IFZNOjpEZWxldGVQcm9wZXJ0eU1vZGU6Oklnbm9y
ZUNvbmZpZ3VyYWJsZSkgewogICAgICAgICAvLyBGb3Igbm9uLWhvc3QgZnVuY3Rpb25zLCBkb24n
dCBsZXQgdGhlc2UgcHJvcGVydGllcyBieSBkZWxldGVkIC0gZXhjZXB0IGJ5IERlZmluZU93blBy
b3BlcnR5LgotICAgICAgICBWTSYgdm0gPSBleGVjLT52bSgpOwogICAgICAgICBGdW5jdGlvbkV4
ZWN1dGFibGUqIGV4ZWN1dGFibGUgPSB0aGlzT2JqZWN0LT5qc0V4ZWN1dGFibGUoKTsKICAgICAg
ICAgCiAgICAgICAgIGlmIChwcm9wZXJ0eU5hbWUgPT0gZXhlYy0+cHJvcGVydHlOYW1lcygpLmNh
bGxlciB8fCBwcm9wZXJ0eU5hbWUgPT0gZXhlYy0+cHJvcGVydHlOYW1lcygpLmFyZ3VtZW50cykK
QEAgLTUwMiw3ICs1MDYsNyBAQCBib29sIEpTRnVuY3Rpb246OmRlZmluZU93blByb3BlcnR5KEpT
T2JqZWN0KiBvYmplY3QsIEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVydHlOYQogCiAgICAgSlNGdW5j
dGlvbiogdGhpc09iamVjdCA9IGpzQ2FzdDxKU0Z1bmN0aW9uKj4ob2JqZWN0KTsKICAgICBpZiAo
dGhpc09iamVjdC0+aXNIb3N0T3JCdWlsdGluRnVuY3Rpb24oKSkgewotICAgICAgICB0aGlzT2Jq
ZWN0LT5yZWlmeUJvdW5kTmFtZUlmTmVlZGVkKHZtLCBleGVjLCBwcm9wZXJ0eU5hbWUpOworICAg
ICAgICB0aGlzT2JqZWN0LT5yZWlmeUxhenlQcm9wZXJ0eUZvckhvc3RPckJ1aWx0aW5JZk5lZWRl
ZCh2bSwgZXhlYywgcHJvcGVydHlOYW1lKTsKICAgICAgICAgc2NvcGUucmVsZWFzZSgpOwogICAg
ICAgICByZXR1cm4gQmFzZTo6ZGVmaW5lT3duUHJvcGVydHkob2JqZWN0LCBleGVjLCBwcm9wZXJ0
eU5hbWUsIGRlc2NyaXB0b3IsIHRocm93RXhjZXB0aW9uKTsKICAgICB9CkBAIC02ODAsMTEgKzY4
NCw5IEBAIHZvaWQgSlNGdW5jdGlvbjo6cmVpZnlOYW1lKFZNJiB2bSwgRXhlY1N0YXRlKiBleGVj
LCBTdHJpbmcgbmFtZSkKIAogSlNGdW5jdGlvbjo6TGF6eVByb3BlcnR5VHlwZSBKU0Z1bmN0aW9u
OjpyZWlmeUxhenlQcm9wZXJ0eUlmTmVlZGVkKFZNJiB2bSwgRXhlY1N0YXRlKiBleGVjLCBQcm9w
ZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogewotICAgIGlmIChwcm9wZXJ0eU5hbWUgPT0gdm0ucHJv
cGVydHlOYW1lcy0+bGVuZ3RoKSB7Ci0gICAgICAgIGlmICghaGFzUmVpZmllZExlbmd0aCgpKQot
ICAgICAgICAgICAgcmVpZnlMZW5ndGgodm0pOworICAgIGlmIChyZWlmeUxhenlMZW5ndGhJZk5l
ZWRlZCh2bSwgZXhlYywgcHJvcGVydHlOYW1lKSA9PSBMYXp5UHJvcGVydHlUeXBlOjpJc0xhenlQ
cm9wZXJ0eSkKICAgICAgICAgcmV0dXJuIExhenlQcm9wZXJ0eVR5cGU6OklzTGF6eVByb3BlcnR5
OwotICAgIH0gZWxzZSBpZiAocHJvcGVydHlOYW1lID09IHZtLnByb3BlcnR5TmFtZXMtPm5hbWUp
IHsKKyAgICBpZiAocHJvcGVydHlOYW1lID09IHZtLnByb3BlcnR5TmFtZXMtPm5hbWUpIHsKICAg
ICAgICAgaWYgKCFoYXNSZWlmaWVkTmFtZSgpKQogICAgICAgICAgICAgcmVpZnlOYW1lKHZtLCBl
eGVjKTsKICAgICAgICAgcmV0dXJuIExhenlQcm9wZXJ0eVR5cGU6OklzTGF6eVByb3BlcnR5OwpA
QCAtNjkyLDcgKzY5NCwyNyBAQCBKU0Z1bmN0aW9uOjpMYXp5UHJvcGVydHlUeXBlIEpTRnVuY3Rp
b246OnJlaWZ5TGF6eVByb3BlcnR5SWZOZWVkZWQoVk0mIHZtLCBFeGVjUwogICAgIHJldHVybiBM
YXp5UHJvcGVydHlUeXBlOjpOb3RMYXp5UHJvcGVydHk7CiB9CiAKLUpTRnVuY3Rpb246OkxhenlQ
cm9wZXJ0eVR5cGUgSlNGdW5jdGlvbjo6cmVpZnlCb3VuZE5hbWVJZk5lZWRlZChWTSYgdm0sIEV4
ZWNTdGF0ZSogZXhlYywgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKK0pTRnVuY3Rpb246Okxh
enlQcm9wZXJ0eVR5cGUgSlNGdW5jdGlvbjo6cmVpZnlMYXp5UHJvcGVydHlGb3JIb3N0T3JCdWls
dGluSWZOZWVkZWQoVk0mIHZtLCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9wZXJ0
eU5hbWUpCit7CisgICAgQVNTRVJUKGlzSG9zdE9yQnVpbHRpbkZ1bmN0aW9uKCkpOworICAgIGlm
IChpc0J1aWx0aW5GdW5jdGlvbigpKSB7CisgICAgICAgIGlmIChyZWlmeUxhenlMZW5ndGhJZk5l
ZWRlZCh2bSwgZXhlYywgcHJvcGVydHlOYW1lKSA9PSBMYXp5UHJvcGVydHlUeXBlOjpJc0xhenlQ
cm9wZXJ0eSkKKyAgICAgICAgICAgIHJldHVybiBMYXp5UHJvcGVydHlUeXBlOjpJc0xhenlQcm9w
ZXJ0eTsKKyAgICB9CisgICAgcmV0dXJuIHJlaWZ5TGF6eUJvdW5kTmFtZUlmTmVlZGVkKHZtLCBl
eGVjLCBwcm9wZXJ0eU5hbWUpOworfQorCitKU0Z1bmN0aW9uOjpMYXp5UHJvcGVydHlUeXBlIEpT
RnVuY3Rpb246OnJlaWZ5TGF6eUxlbmd0aElmTmVlZGVkKFZNJiB2bSwgRXhlY1N0YXRlKiwgUHJv
cGVydHlOYW1lIHByb3BlcnR5TmFtZSkKK3sKKyAgICBpZiAocHJvcGVydHlOYW1lID09IHZtLnBy
b3BlcnR5TmFtZXMtPmxlbmd0aCkgeworICAgICAgICBpZiAoIWhhc1JlaWZpZWRMZW5ndGgoKSkK
KyAgICAgICAgICAgIHJlaWZ5TGVuZ3RoKHZtKTsKKyAgICAgICAgcmV0dXJuIExhenlQcm9wZXJ0
eVR5cGU6OklzTGF6eVByb3BlcnR5OworICAgIH0KKyAgICByZXR1cm4gTGF6eVByb3BlcnR5VHlw
ZTo6Tm90TGF6eVByb3BlcnR5OworfQorCitKU0Z1bmN0aW9uOjpMYXp5UHJvcGVydHlUeXBlIEpT
RnVuY3Rpb246OnJlaWZ5TGF6eUJvdW5kTmFtZUlmTmVlZGVkKFZNJiB2bSwgRXhlY1N0YXRlKiBl
eGVjLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogewogICAgIGNvbnN0IElkZW50aWZpZXIm
IG5hbWVJZGVudCA9IHZtLnByb3BlcnR5TmFtZXMtPm5hbWU7CiAgICAgaWYgKHByb3BlcnR5TmFt
ZSAhPSBuYW1lSWRlbnQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0Z1bmN0aW9uLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0Z1bmN0aW9u
LmgKaW5kZXggN2RjOWI2YWNhYmVlYzc3NzZiNDliMjM2OWRkMjdhNTFmODZlMWM3Yi4uOGM4NTcz
MGRjZTU0YjQyMTExNWFjMDE4NTU5OTFkMWYzN2Q3OGI2NSAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTRnVuY3Rpb24uaApAQCAtMTkwLDcgKzE5MCw5IEBAIGNsYXNzIEpTRnVu
Y3Rpb24gOiBwdWJsaWMgSlNDYWxsZWUgewogCiAgICAgZW51bSBjbGFzcyBMYXp5UHJvcGVydHlU
eXBlIHsgTm90TGF6eVByb3BlcnR5LCBJc0xhenlQcm9wZXJ0eSB9OwogICAgIExhenlQcm9wZXJ0
eVR5cGUgcmVpZnlMYXp5UHJvcGVydHlJZk5lZWRlZChWTSYsIEV4ZWNTdGF0ZSosIFByb3BlcnR5
TmFtZSk7Ci0gICAgTGF6eVByb3BlcnR5VHlwZSByZWlmeUJvdW5kTmFtZUlmTmVlZGVkKFZNJiwg
RXhlY1N0YXRlKiwgUHJvcGVydHlOYW1lKTsKKyAgICBMYXp5UHJvcGVydHlUeXBlIHJlaWZ5TGF6
eVByb3BlcnR5Rm9ySG9zdE9yQnVpbHRpbklmTmVlZGVkKFZNJiwgRXhlY1N0YXRlKiwgUHJvcGVy
dHlOYW1lKTsKKyAgICBMYXp5UHJvcGVydHlUeXBlIHJlaWZ5TGF6eUxlbmd0aElmTmVlZGVkKFZN
JiwgRXhlY1N0YXRlKiwgUHJvcGVydHlOYW1lKTsKKyAgICBMYXp5UHJvcGVydHlUeXBlIHJlaWZ5
TGF6eUJvdW5kTmFtZUlmTmVlZGVkKFZNJiwgRXhlY1N0YXRlKiwgUHJvcGVydHlOYW1lKTsKIAog
ICAgIGZyaWVuZCBjbGFzcyBMTEludE9mZnNldHNFeHRyYWN0b3I7CiAKZGlmZiAtLWdpdCBhL0pT
VGVzdHMvQ2hhbmdlTG9nIGIvSlNUZXN0cy9DaGFuZ2VMb2cKaW5kZXggYWU2YTkwNDA0MzBiM2I1
YmViZDFkNWIwYWRlOWE3YmNhZDg3NTQ2Yi4uMTc0MTQ0MDllNDc4YTdlMjAyZTIxNjMwYTJkNWVi
YzdjZmUxYWZkMCAxMDA2NDQKLS0tIGEvSlNUZXN0cy9DaGFuZ2VMb2cKKysrIGIvSlNUZXN0cy9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwyOSBAQAorMjAxNy0wOC0wNiAgWXVzdWtlIFN1enVraSAgPHV0
YXRhbmUudGVhQGdtYWlsLmNvbT4KKworICAgICAgICBQcm9taXNlIHJlc29sdmUgYW5kIHJlamVj
dCBmdW5jdGlvbiBzaG91bGQgaGF2ZSBsZW5ndGggPSAxCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzUyNDIKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBQcmV2aW91c2x5IHdlIGhhdmUgc2VwYXJhdGUgc3lz
dGVtIGZvciAibGVuZ3RoIiBhbmQgIm5hbWUiIGZvciBidWlsdGluIGZ1bmN0aW9ucy4KKyAgICAg
ICAgVGhlIGJ1aWx0aW4gZnVuY3Rpb25zIGRvIG5vdCB1c2UgbGF6eSByZWlmeWluZyBzeXN0ZW0u
IEluc3RlYWQsIHRoZXkgaGF2ZSBkaXJlY3QKKyAgICAgICAgcHJvcGVydGllcyB3aGVuIGluc3Rh
bnRpYXRpbmcgaXQuIFdoaWxlIHRoZSBmdW5jdGlvbiBjcmVhdGVkIGZvciBwcm9wZXJ0aWVzIChs
aWtlCisgICAgICAgIEFycmF5LnByb3RvdHlwZS5maWx0ZXIpIGlzIGNyZWF0ZWQgYnkgSlNGdW5j
dGlvbjo6Y3JlYXRlQnVpbHRpbigpLCBmdW5jdGlvbiBpbnNpZGUKKyAgICAgICAgdGhlc2UgYnVp
bHRpbiBmdW5jdGlvbnMgYXJlIGp1c3QgY3JlYXRlZCBieSBKU0Z1bmN0aW9uOjpjcmVhdGUoKS4g
U2luY2UgaXQgZG9lcworICAgICAgICBub3Qgc2V0IGFueSB2YWx1ZXMgZm9yICJsZW5ndGgiLCB0
aGVzZSBmdW5jdGlvbnMgZG8gbm90IGhhdmUgImxlbmd0aCIgcHJvcGVydHkuCisgICAgICAgIFNv
LCB0aGUgcmVzb2x2ZSBhbmQgcmVqZWN0IGZ1bmN0aW9ucyBwYXNzZWQgdG8gUHJvbWlzZSdzIGV4
ZWN1dG9yIGRvIG5vdCBoYXZlCisgICAgICAgICJsZW5ndGgiIHByb3BlcnR5LgorCisgICAgICAg
IFRoaXMgcGF0Y2ggbWFrZSBidWlsdGluIGZ1bmN0aW9ucyB1c2Ugc3RhbmRhcmQgbGF6eSByZWlm
eWluZyBzeXN0ZW0gZm9yICJsZW5ndGgiLgorICAgICAgICBTbywgImxlbmd0aCIgcHJvcGVydHkg
b2YgdGhlIGJ1aWx0aW4gZnVuY3Rpb24ganVzdCB3b3JrcyBhcyBpZiB0aGUgbm9ybWFsIGZ1bmN0
aW9ucworICAgICAgICBkby4KKworICAgICAgICAqIHN0cmVzcy9idWlsdGluLWZ1bmN0aW9uLWxl
bmd0aC5qczogQWRkZWQuCisgICAgICAgIChzaG91bGRCZSk6CisgICAgICAgIChzaG91bGRUaHJv
dyk6CisgICAgICAgIChzaG91bGRCZS5KU09OLnN0cmluZ2lmeS5PYmplY3QuZ2V0T3duUHJvcGVy
dHlEZXNjcmlwdG9yKToKKyAgICAgICAgKHNob3VsZEJlLkpTT04uc3RyaW5naWZ5Lk9iamVjdC5n
ZXRPd25Qcm9wZXJ0eU5hbWVzLkFycmF5LnByb3RvdHlwZS5maWx0ZXIuc29ydCk6CisKIDIwMTct
MDgtMDMgIENhcmxvcyBBbGJlcnRvIExvcGV6IFBlcmV6ICA8Y2xvcGV6QGlnYWxpYS5jb20+CiAK
ICAgICAgICAgSlNDIHRlc3Qgd2FzbS9qcy1hcGkvdGVzdF9tZW1vcnlfY29uc3RydWN0b3IuanMg
c2hvdWxkIGJlIHNraXBwZWQgb24gbWVtb3J5TGltaXRlZApkaWZmIC0tZ2l0IGEvSlNUZXN0cy9z
dHJlc3MvYnVpbHRpbi1mdW5jdGlvbi1sZW5ndGguanMgYi9KU1Rlc3RzL3N0cmVzcy9idWlsdGlu
LWZ1bmN0aW9uLWxlbmd0aC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mMmVhMDA4MDFmZGJkMzM1ODlhNTU1YWFj
ZmM4ODFlZmIyMmI5M2FiCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy9zdHJlc3MvYnVpbHRp
bi1mdW5jdGlvbi1sZW5ndGguanMKQEAgLTAsMCArMSw0NyBAQAorZnVuY3Rpb24gc2hvdWxkQmUo
YWN0dWFsLCBleHBlY3RlZCkgeworICAgIGlmIChhY3R1YWwgIT09IGV4cGVjdGVkKQorICAgICAg
ICB0aHJvdyBuZXcgRXJyb3IoJ2JhZCB2YWx1ZTogJyArIGFjdHVhbCk7Cit9CisKK2Z1bmN0aW9u
IHNob3VsZFRocm93KGZ1bmMsIGVycm9yTWVzc2FnZSkgeworICAgIHZhciBlcnJvclRocm93biA9
IGZhbHNlOworICAgIHZhciBlcnJvciA9IG51bGw7CisgICAgdHJ5IHsKKyAgICAgICAgZnVuYygp
OworICAgIH0gY2F0Y2ggKGUpIHsKKyAgICAgICAgZXJyb3JUaHJvd24gPSB0cnVlOworICAgICAg
ICBlcnJvciA9IGU7CisgICAgfQorICAgIGlmICghZXJyb3JUaHJvd24pCisgICAgICAgIHRocm93
IG5ldyBFcnJvcignbm90IHRocm93bicpOworICAgIGlmIChTdHJpbmcoZXJyb3IpICE9PSBlcnJv
ck1lc3NhZ2UpCisgICAgICAgIHRocm93IG5ldyBFcnJvcihgYmFkIGVycm9yOiAke1N0cmluZyhl
cnJvcil9YCk7Cit9CisKK3sKKyAgICBzaG91bGRCZShKU09OLnN0cmluZ2lmeShPYmplY3QuZ2V0
T3duUHJvcGVydHlOYW1lcyhBcnJheS5wcm90b3R5cGUuZmlsdGVyKS5zb3J0KCkpLCBgWyJsZW5n
dGgiLCJuYW1lIl1gKTsKKyAgICBzaG91bGRCZShBcnJheS5wcm90b3R5cGUuZmlsdGVyLmxlbmd0
aCwgMSk7CisgICAgc2hvdWxkQmUoSlNPTi5zdHJpbmdpZnkoT2JqZWN0LmdldE93blByb3BlcnR5
RGVzY3JpcHRvcihBcnJheS5wcm90b3R5cGUuZmlsdGVyLCAnbGVuZ3RoJykpLCBgeyJ2YWx1ZSI6
MSwid3JpdGFibGUiOmZhbHNlLCJlbnVtZXJhYmxlIjpmYWxzZSwiY29uZmlndXJhYmxlIjp0cnVl
fWApOworICAgIHNob3VsZEJlKGRlbGV0ZSBBcnJheS5wcm90b3R5cGUuZmlsdGVyLmxlbmd0aCwg
dHJ1ZSk7CisgICAgc2hvdWxkQmUoSlNPTi5zdHJpbmdpZnkoT2JqZWN0LmdldE93blByb3BlcnR5
TmFtZXMoQXJyYXkucHJvdG90eXBlLmZpbHRlcikuc29ydCgpKSwgYFsibmFtZSJdYCk7Cit9CisK
K3sKKyAgICBzaG91bGRUaHJvdyhmdW5jdGlvbiAoKSB7CisgICAgICAgICJ1c2Ugc3RyaWN0IjsK
KyAgICAgICAgQXJyYXkucHJvdG90eXBlLmZvckVhY2gubGVuZ3RoID0gNDI7CisgICAgfSwgYFR5
cGVFcnJvcjogQXR0ZW1wdGVkIHRvIGFzc2lnbiB0byByZWFkb25seSBwcm9wZXJ0eS5gKTsKK30K
KworeworICAgIHZhciByZXNvbHZlID0gbnVsbDsKKyAgICB2YXIgcmVqZWN0ID0gbnVsbDsKKyAg
ICBuZXcgUHJvbWlzZShmdW5jdGlvbiAoYXJnMCwgYXJnMSkgeworICAgICAgICByZXNvbHZlID0g
YXJnMDsKKyAgICAgICAgcmVqZWN0ID0gYXJnMTsKKyAgICB9KTsKKyAgICBzaG91bGRCZShyZXNv
bHZlLmxlbmd0aCwgMSk7CisgICAgc2hvdWxkQmUoSlNPTi5zdHJpbmdpZnkoT2JqZWN0LmdldE93
blByb3BlcnR5RGVzY3JpcHRvcihyZXNvbHZlLCAnbGVuZ3RoJykpLCBgeyJ2YWx1ZSI6MSwid3Jp
dGFibGUiOmZhbHNlLCJlbnVtZXJhYmxlIjpmYWxzZSwiY29uZmlndXJhYmxlIjp0cnVlfWApOwor
ICAgIHNob3VsZEJlKHJlamVjdC5sZW5ndGgsIDEpOworICAgIHNob3VsZEJlKEpTT04uc3RyaW5n
aWZ5KE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IocmVqZWN0LCAnbGVuZ3RoJykpLCBg
eyJ2YWx1ZSI6MSwid3JpdGFibGUiOmZhbHNlLCJlbnVtZXJhYmxlIjpmYWxzZSwiY29uZmlndXJh
YmxlIjp0cnVlfWApOworfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>317365</attachid>
            <date>2017-08-06 09:41:43 -0700</date>
            <delta_ts>2017-08-06 10:57:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-175242-20170807014142.patch</filename>
            <type>text/plain</type>
            <size>13868</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIwMzIyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBh
NWUyNmMwOTBlNWJjODgzY2NiMTBmOTQyYjUxY2FjY2VhM2JiYmU1Li5iYzM4N2MyNTUzOGQwODQx
ZDZiNjUyN2RjNDI1ZjllOTgwYTVjNDgyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzNyBAQAorMjAxNy0wOC0wNiAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWls
LmNvbT4KKworICAgICAgICBQcm9taXNlIHJlc29sdmUgYW5kIHJlamVjdCBmdW5jdGlvbiBzaG91
bGQgaGF2ZSBsZW5ndGggPSAxCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNzUyNDIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBQcmV2aW91c2x5IHdlIGhhdmUgc2VwYXJhdGUgc3lzdGVtIGZvciAibGVuZ3Ro
IiBhbmQgIm5hbWUiIGZvciBidWlsdGluIGZ1bmN0aW9ucy4KKyAgICAgICAgVGhlIGJ1aWx0aW4g
ZnVuY3Rpb25zIGRvIG5vdCB1c2UgbGF6eSByZWlmeWluZyBzeXN0ZW0uIEluc3RlYWQsIHRoZXkg
aGF2ZSBkaXJlY3QKKyAgICAgICAgcHJvcGVydGllcyB3aGVuIGluc3RhbnRpYXRpbmcgaXQuIFdo
aWxlIHRoZSBmdW5jdGlvbiBjcmVhdGVkIGZvciBwcm9wZXJ0aWVzIChsaWtlCisgICAgICAgIEFy
cmF5LnByb3RvdHlwZS5maWx0ZXIpIGlzIGNyZWF0ZWQgYnkgSlNGdW5jdGlvbjo6Y3JlYXRlQnVp
bHRpbigpLCBmdW5jdGlvbiBpbnNpZGUKKyAgICAgICAgdGhlc2UgYnVpbHRpbiBmdW5jdGlvbnMg
YXJlIGp1c3QgY3JlYXRlZCBieSBKU0Z1bmN0aW9uOjpjcmVhdGUoKS4gU2luY2UgaXQgZG9lcwor
ICAgICAgICBub3Qgc2V0IGFueSB2YWx1ZXMgZm9yICJsZW5ndGgiLCB0aGVzZSBmdW5jdGlvbnMg
ZG8gbm90IGhhdmUgImxlbmd0aCIgcHJvcGVydHkuCisgICAgICAgIFNvLCB0aGUgcmVzb2x2ZSBh
bmQgcmVqZWN0IGZ1bmN0aW9ucyBwYXNzZWQgdG8gUHJvbWlzZSdzIGV4ZWN1dG9yIGRvIG5vdCBo
YXZlCisgICAgICAgICJsZW5ndGgiIHByb3BlcnR5LgorCisgICAgICAgIFRoaXMgcGF0Y2ggbWFr
ZSBidWlsdGluIGZ1bmN0aW9ucyB1c2Ugc3RhbmRhcmQgbGF6eSByZWlmeWluZyBzeXN0ZW0gZm9y
ICJsZW5ndGgiLgorICAgICAgICBTbywgImxlbmd0aCIgcHJvcGVydHkgb2YgdGhlIGJ1aWx0aW4g
ZnVuY3Rpb24ganVzdCB3b3JrcyBhcyBpZiB0aGUgbm9ybWFsIGZ1bmN0aW9ucworICAgICAgICBk
by4KKworICAgICAgICAqIHJ1bnRpbWUvSlNGdW5jdGlvbi5jcHA6CisgICAgICAgIChKU0M6OkpT
RnVuY3Rpb246OmNyZWF0ZUJ1aWx0aW5GdW5jdGlvbik6CisgICAgICAgIChKU0M6OkpTRnVuY3Rp
b246OmdldE93blByb3BlcnR5U2xvdCk6CisgICAgICAgIChKU0M6OkpTRnVuY3Rpb246OmdldE93
bk5vbkluZGV4UHJvcGVydHlOYW1lcyk6CisgICAgICAgIChKU0M6OkpTRnVuY3Rpb246OnB1dCk6
CisgICAgICAgIChKU0M6OkpTRnVuY3Rpb246OmRlbGV0ZVByb3BlcnR5KToKKyAgICAgICAgKEpT
Qzo6SlNGdW5jdGlvbjo6ZGVmaW5lT3duUHJvcGVydHkpOgorICAgICAgICAoSlNDOjpKU0Z1bmN0
aW9uOjpyZWlmeUxhenlQcm9wZXJ0eUlmTmVlZGVkKToKKyAgICAgICAgKEpTQzo6SlNGdW5jdGlv
bjo6cmVpZnlMYXp5UHJvcGVydHlGb3JIb3N0T3JCdWlsdGluSWZOZWVkZWQpOgorICAgICAgICAo
SlNDOjpKU0Z1bmN0aW9uOjpyZWlmeUxhenlMZW5ndGhJZk5lZWRlZCk6CisgICAgICAgIChKU0M6
OkpTRnVuY3Rpb246OnJlaWZ5TGF6eUJvdW5kTmFtZUlmTmVlZGVkKToKKyAgICAgICAgKEpTQzo6
SlNGdW5jdGlvbjo6cmVpZnlCb3VuZE5hbWVJZk5lZWRlZCk6IERlbGV0ZWQuCisgICAgICAgICog
cnVudGltZS9KU0Z1bmN0aW9uLmg6CisKIDIwMTctMDgtMDUgIEZpbGlwIFBpemxvICA8ZnBpemxv
QGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OIChyMjE5ODk1LTIxOTg5Nyk6IE51bWJl
ciBvZiBsZWFrcyBvbiBPcGVuIFNvdXJjZSB3ZW50IGZyb20gOTI0MCB0byAyMzU5ODMgYW5kIGlz
IG5vdyBhdCAzMDIzNzIKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTRnVuY3Rpb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlv
bi5jcHAKaW5kZXggNGUyMjZjM2I3N2JlMmNlODhmMWE1OTUyMmM3ODAzNmEwNTI4YjExMi4uZGZj
OTM3NTQyOWY0ZDJiODU2MDhhZjIyMmRiM2RjOGFjMjY2MmI1ZSAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5jcHAKQEAgLTEwNSw3ICsxMDUsNiBAQCBKU0Z1
bmN0aW9uKiBKU0Z1bmN0aW9uOjpjcmVhdGVCdWlsdGluRnVuY3Rpb24oVk0mIHZtLCBGdW5jdGlv
bkV4ZWN1dGFibGUqIGV4ZWN1dAogewogICAgIEpTRnVuY3Rpb24qIGZ1bmN0aW9uID0gY3JlYXRl
KHZtLCBleGVjdXRhYmxlLCBnbG9iYWxPYmplY3QpOwogICAgIGZ1bmN0aW9uLT5wdXREaXJlY3Qo
dm0sIHZtLnByb3BlcnR5TmFtZXMtPm5hbWUsIGpzU3RyaW5nKCZ2bSwgZXhlY3V0YWJsZS0+bmFt
ZSgpLnN0cmluZygpKSwgUmVhZE9ubHkgfCBEb250RW51bSk7Ci0gICAgZnVuY3Rpb24tPnB1dERp
cmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+bGVuZ3RoLCBqc051bWJlcihleGVjdXRhYmxlLT5w
YXJhbWV0ZXJDb3VudCgpKSwgUmVhZE9ubHkgfCBEb250RW51bSk7CiAgICAgcmV0dXJuIGZ1bmN0
aW9uOwogfQogCkBAIC0xMTMsNyArMTEyLDYgQEAgSlNGdW5jdGlvbiogSlNGdW5jdGlvbjo6Y3Jl
YXRlQnVpbHRpbkZ1bmN0aW9uKFZNJiB2bSwgRnVuY3Rpb25FeGVjdXRhYmxlKiBleGVjdXQKIHsK
ICAgICBKU0Z1bmN0aW9uKiBmdW5jdGlvbiA9IGNyZWF0ZSh2bSwgZXhlY3V0YWJsZSwgZ2xvYmFs
T2JqZWN0KTsKICAgICBmdW5jdGlvbi0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5u
YW1lLCBqc1N0cmluZygmdm0sIG5hbWUpLCBSZWFkT25seSB8IERvbnRFbnVtKTsKLSAgICBmdW5j
dGlvbi0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5sZW5ndGgsIGpzTnVtYmVyKGV4
ZWN1dGFibGUtPnBhcmFtZXRlckNvdW50KCkpLCBSZWFkT25seSB8IERvbnRFbnVtKTsKICAgICBy
ZXR1cm4gZnVuY3Rpb247CiB9CiAKQEAgLTM1MCw3ICszNDgsNyBAQCBib29sIEpTRnVuY3Rpb246
OmdldE93blByb3BlcnR5U2xvdChKU09iamVjdCogb2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMsIFBy
b3BlcnR5TgogICAgIFZNJiB2bSA9IGV4ZWMtPnZtKCk7CiAgICAgSlNGdW5jdGlvbiogdGhpc09i
amVjdCA9IGpzQ2FzdDxKU0Z1bmN0aW9uKj4ob2JqZWN0KTsKICAgICBpZiAodGhpc09iamVjdC0+
aXNIb3N0T3JCdWlsdGluRnVuY3Rpb24oKSkgewotICAgICAgICB0aGlzT2JqZWN0LT5yZWlmeUJv
dW5kTmFtZUlmTmVlZGVkKHZtLCBleGVjLCBwcm9wZXJ0eU5hbWUpOworICAgICAgICB0aGlzT2Jq
ZWN0LT5yZWlmeUxhenlQcm9wZXJ0eUZvckhvc3RPckJ1aWx0aW5JZk5lZWRlZCh2bSwgZXhlYywg
cHJvcGVydHlOYW1lKTsKICAgICAgICAgcmV0dXJuIEJhc2U6OmdldE93blByb3BlcnR5U2xvdCh0
aGlzT2JqZWN0LCBleGVjLCBwcm9wZXJ0eU5hbWUsIHNsb3QpOwogICAgIH0KIApAQCAtNDAyLDIx
ICs0MDAsMjcgQEAgdm9pZCBKU0Z1bmN0aW9uOjpnZXRPd25Ob25JbmRleFByb3BlcnR5TmFtZXMo
SlNPYmplY3QqIG9iamVjdCwgRXhlY1N0YXRlKiBleGVjLAogewogICAgIEpTRnVuY3Rpb24qIHRo
aXNPYmplY3QgPSBqc0Nhc3Q8SlNGdW5jdGlvbio+KG9iamVjdCk7CiAgICAgVk0mIHZtID0gZXhl
Yy0+dm0oKTsKLSAgICBpZiAoIXRoaXNPYmplY3QtPmlzSG9zdE9yQnVpbHRpbkZ1bmN0aW9uKCkg
JiYgbW9kZS5pbmNsdWRlRG9udEVudW1Qcm9wZXJ0aWVzKCkpIHsKLSAgICAgICAgLy8gTWFrZSBz
dXJlIHByb3RvdHlwZSBoYXMgYmVlbiByZWlmaWVkLgotICAgICAgICBQcm9wZXJ0eVNsb3Qgc2xv
dCh0aGlzT2JqZWN0LCBQcm9wZXJ0eVNsb3Q6OkludGVybmFsTWV0aG9kVHlwZTo6Vk1JbnF1aXJ5
KTsKLSAgICAgICAgdGhpc09iamVjdC0+bWV0aG9kVGFibGUodm0pLT5nZXRPd25Qcm9wZXJ0eVNs
b3QodGhpc09iamVjdCwgZXhlYywgdm0ucHJvcGVydHlOYW1lcy0+cHJvdG90eXBlLCBzbG90KTsK
KyAgICBpZiAobW9kZS5pbmNsdWRlRG9udEVudW1Qcm9wZXJ0aWVzKCkpIHsKKyAgICAgICAgaWYg
KCF0aGlzT2JqZWN0LT5pc0hvc3RPckJ1aWx0aW5GdW5jdGlvbigpKSB7CisgICAgICAgICAgICAv
LyBNYWtlIHN1cmUgcHJvdG90eXBlIGhhcyBiZWVuIHJlaWZpZWQuCisgICAgICAgICAgICBQcm9w
ZXJ0eVNsb3Qgc2xvdCh0aGlzT2JqZWN0LCBQcm9wZXJ0eVNsb3Q6OkludGVybmFsTWV0aG9kVHlw
ZTo6Vk1JbnF1aXJ5KTsKKyAgICAgICAgICAgIHRoaXNPYmplY3QtPm1ldGhvZFRhYmxlKHZtKS0+
Z2V0T3duUHJvcGVydHlTbG90KHRoaXNPYmplY3QsIGV4ZWMsIHZtLnByb3BlcnR5TmFtZXMtPnBy
b3RvdHlwZSwgc2xvdCk7CiAKLSAgICAgICAgaWYgKHRoaXNPYmplY3QtPmpzRXhlY3V0YWJsZSgp
LT5oYXNDYWxsZXJBbmRBcmd1bWVudHNQcm9wZXJ0aWVzKCkpIHsKLSAgICAgICAgICAgIHByb3Bl
cnR5TmFtZXMuYWRkKHZtLnByb3BlcnR5TmFtZXMtPmFyZ3VtZW50cyk7Ci0gICAgICAgICAgICBw
cm9wZXJ0eU5hbWVzLmFkZCh2bS5wcm9wZXJ0eU5hbWVzLT5jYWxsZXIpOworICAgICAgICAgICAg
aWYgKHRoaXNPYmplY3QtPmpzRXhlY3V0YWJsZSgpLT5oYXNDYWxsZXJBbmRBcmd1bWVudHNQcm9w
ZXJ0aWVzKCkpIHsKKyAgICAgICAgICAgICAgICBwcm9wZXJ0eU5hbWVzLmFkZCh2bS5wcm9wZXJ0
eU5hbWVzLT5hcmd1bWVudHMpOworICAgICAgICAgICAgICAgIHByb3BlcnR5TmFtZXMuYWRkKHZt
LnByb3BlcnR5TmFtZXMtPmNhbGxlcik7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBpZiAo
IXRoaXNPYmplY3QtPmhhc1JlaWZpZWRMZW5ndGgoKSkKKyAgICAgICAgICAgICAgICBwcm9wZXJ0
eU5hbWVzLmFkZCh2bS5wcm9wZXJ0eU5hbWVzLT5sZW5ndGgpOworICAgICAgICAgICAgaWYgKCF0
aGlzT2JqZWN0LT5oYXNSZWlmaWVkTmFtZSgpKQorICAgICAgICAgICAgICAgIHByb3BlcnR5TmFt
ZXMuYWRkKHZtLnByb3BlcnR5TmFtZXMtPm5hbWUpOworICAgICAgICB9IGVsc2UgeworICAgICAg
ICAgICAgaWYgKHRoaXNPYmplY3QtPmlzQnVpbHRpbkZ1bmN0aW9uKCkgJiYgIXRoaXNPYmplY3Qt
Pmhhc1JlaWZpZWRMZW5ndGgoKSkKKyAgICAgICAgICAgICAgICBwcm9wZXJ0eU5hbWVzLmFkZCh2
bS5wcm9wZXJ0eU5hbWVzLT5sZW5ndGgpOworICAgICAgICAgICAgaWYgKHRoaXNPYmplY3QtPmlu
aGVyaXRzKHZtLCBKU0JvdW5kRnVuY3Rpb246OmluZm8oKSkgJiYgIXRoaXNPYmplY3QtPmhhc1Jl
aWZpZWROYW1lKCkpCisgICAgICAgICAgICAgICAgcHJvcGVydHlOYW1lcy5hZGQodm0ucHJvcGVy
dHlOYW1lcy0+bmFtZSk7CiAgICAgICAgIH0KLSAgICAgICAgaWYgKCF0aGlzT2JqZWN0LT5oYXNS
ZWlmaWVkTGVuZ3RoKCkpCi0gICAgICAgICAgICBwcm9wZXJ0eU5hbWVzLmFkZCh2bS5wcm9wZXJ0
eU5hbWVzLT5sZW5ndGgpOwotICAgICAgICBpZiAoIXRoaXNPYmplY3QtPmhhc1JlaWZpZWROYW1l
KCkpCi0gICAgICAgICAgICBwcm9wZXJ0eU5hbWVzLmFkZCh2bS5wcm9wZXJ0eU5hbWVzLT5uYW1l
KTsKLSAgICB9IGVsc2UgaWYgKHRoaXNPYmplY3QtPmlzSG9zdE9yQnVpbHRpbkZ1bmN0aW9uKCkg
JiYgbW9kZS5pbmNsdWRlRG9udEVudW1Qcm9wZXJ0aWVzKCkgJiYgdGhpc09iamVjdC0+aW5oZXJp
dHModm0sIEpTQm91bmRGdW5jdGlvbjo6aW5mbygpKSAmJiAhdGhpc09iamVjdC0+aGFzUmVpZmll
ZE5hbWUoKSkKLSAgICAgICAgcHJvcGVydHlOYW1lcy5hZGQoZXhlYy0+dm0oKS5wcm9wZXJ0eU5h
bWVzLT5uYW1lKTsKKyAgICB9CiAgICAgQmFzZTo6Z2V0T3duTm9uSW5kZXhQcm9wZXJ0eU5hbWVz
KHRoaXNPYmplY3QsIGV4ZWMsIHByb3BlcnR5TmFtZXMsIG1vZGUpOwogfQogCkBAIC00MzMsNyAr
NDM3LDcgQEAgYm9vbCBKU0Z1bmN0aW9uOjpwdXQoSlNDZWxsKiBjZWxsLCBFeGVjU3RhdGUqIGV4
ZWMsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUsIEoKICAgICB9CiAKICAgICBpZiAodGhpc09i
amVjdC0+aXNIb3N0T3JCdWlsdGluRnVuY3Rpb24oKSkgewotICAgICAgICBMYXp5UHJvcGVydHlU
eXBlIHByb3BUeXBlID0gdGhpc09iamVjdC0+cmVpZnlCb3VuZE5hbWVJZk5lZWRlZCh2bSwgZXhl
YywgcHJvcGVydHlOYW1lKTsKKyAgICAgICAgTGF6eVByb3BlcnR5VHlwZSBwcm9wVHlwZSA9IHRo
aXNPYmplY3QtPnJlaWZ5TGF6eVByb3BlcnR5Rm9ySG9zdE9yQnVpbHRpbklmTmVlZGVkKHZtLCBl
eGVjLCBwcm9wZXJ0eU5hbWUpOwogICAgICAgICBpZiAocHJvcFR5cGUgPT0gTGF6eVByb3BlcnR5
VHlwZTo6SXNMYXp5UHJvcGVydHkpCiAgICAgICAgICAgICBzbG90LmRpc2FibGVDYWNoaW5nKCk7
CiAgICAgICAgIHNjb3BlLnJlbGVhc2UoKTsKQEAgLTQ3NSwxMiArNDc5LDEyIEBAIGJvb2wgSlNG
dW5jdGlvbjo6cHV0KEpTQ2VsbCogY2VsbCwgRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0eU5hbWUg
cHJvcGVydHlOYW1lLCBKCiAKIGJvb2wgSlNGdW5jdGlvbjo6ZGVsZXRlUHJvcGVydHkoSlNDZWxs
KiBjZWxsLCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpCiB7Cisg
ICAgVk0mIHZtID0gZXhlYy0+dm0oKTsKICAgICBKU0Z1bmN0aW9uKiB0aGlzT2JqZWN0ID0ganND
YXN0PEpTRnVuY3Rpb24qPihjZWxsKTsKICAgICBpZiAodGhpc09iamVjdC0+aXNIb3N0T3JCdWls
dGluRnVuY3Rpb24oKSkKLSAgICAgICAgdGhpc09iamVjdC0+cmVpZnlCb3VuZE5hbWVJZk5lZWRl
ZChleGVjLT52bSgpLCBleGVjLCBwcm9wZXJ0eU5hbWUpOwotICAgIGVsc2UgaWYgKGV4ZWMtPnZt
KCkuZGVsZXRlUHJvcGVydHlNb2RlKCkgIT0gVk06OkRlbGV0ZVByb3BlcnR5TW9kZTo6SWdub3Jl
Q29uZmlndXJhYmxlKSB7CisgICAgICAgIHRoaXNPYmplY3QtPnJlaWZ5TGF6eVByb3BlcnR5Rm9y
SG9zdE9yQnVpbHRpbklmTmVlZGVkKHZtLCBleGVjLCBwcm9wZXJ0eU5hbWUpOworICAgIGVsc2Ug
aWYgKHZtLmRlbGV0ZVByb3BlcnR5TW9kZSgpICE9IFZNOjpEZWxldGVQcm9wZXJ0eU1vZGU6Okln
bm9yZUNvbmZpZ3VyYWJsZSkgewogICAgICAgICAvLyBGb3Igbm9uLWhvc3QgZnVuY3Rpb25zLCBk
b24ndCBsZXQgdGhlc2UgcHJvcGVydGllcyBieSBkZWxldGVkIC0gZXhjZXB0IGJ5IERlZmluZU93
blByb3BlcnR5LgotICAgICAgICBWTSYgdm0gPSBleGVjLT52bSgpOwogICAgICAgICBGdW5jdGlv
bkV4ZWN1dGFibGUqIGV4ZWN1dGFibGUgPSB0aGlzT2JqZWN0LT5qc0V4ZWN1dGFibGUoKTsKICAg
ICAgICAgCiAgICAgICAgIGlmIChwcm9wZXJ0eU5hbWUgPT0gZXhlYy0+cHJvcGVydHlOYW1lcygp
LmNhbGxlciB8fCBwcm9wZXJ0eU5hbWUgPT0gZXhlYy0+cHJvcGVydHlOYW1lcygpLmFyZ3VtZW50
cykKQEAgLTUwMiw3ICs1MDYsNyBAQCBib29sIEpTRnVuY3Rpb246OmRlZmluZU93blByb3BlcnR5
KEpTT2JqZWN0KiBvYmplY3QsIEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVydHlOYQogCiAgICAgSlNG
dW5jdGlvbiogdGhpc09iamVjdCA9IGpzQ2FzdDxKU0Z1bmN0aW9uKj4ob2JqZWN0KTsKICAgICBp
ZiAodGhpc09iamVjdC0+aXNIb3N0T3JCdWlsdGluRnVuY3Rpb24oKSkgewotICAgICAgICB0aGlz
T2JqZWN0LT5yZWlmeUJvdW5kTmFtZUlmTmVlZGVkKHZtLCBleGVjLCBwcm9wZXJ0eU5hbWUpOwor
ICAgICAgICB0aGlzT2JqZWN0LT5yZWlmeUxhenlQcm9wZXJ0eUZvckhvc3RPckJ1aWx0aW5JZk5l
ZWRlZCh2bSwgZXhlYywgcHJvcGVydHlOYW1lKTsKICAgICAgICAgc2NvcGUucmVsZWFzZSgpOwog
ICAgICAgICByZXR1cm4gQmFzZTo6ZGVmaW5lT3duUHJvcGVydHkob2JqZWN0LCBleGVjLCBwcm9w
ZXJ0eU5hbWUsIGRlc2NyaXB0b3IsIHRocm93RXhjZXB0aW9uKTsKICAgICB9CkBAIC02ODAsMTEg
KzY4NCw5IEBAIHZvaWQgSlNGdW5jdGlvbjo6cmVpZnlOYW1lKFZNJiB2bSwgRXhlY1N0YXRlKiBl
eGVjLCBTdHJpbmcgbmFtZSkKIAogSlNGdW5jdGlvbjo6TGF6eVByb3BlcnR5VHlwZSBKU0Z1bmN0
aW9uOjpyZWlmeUxhenlQcm9wZXJ0eUlmTmVlZGVkKFZNJiB2bSwgRXhlY1N0YXRlKiBleGVjLCBQ
cm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogewotICAgIGlmIChwcm9wZXJ0eU5hbWUgPT0gdm0u
cHJvcGVydHlOYW1lcy0+bGVuZ3RoKSB7Ci0gICAgICAgIGlmICghaGFzUmVpZmllZExlbmd0aCgp
KQotICAgICAgICAgICAgcmVpZnlMZW5ndGgodm0pOworICAgIGlmIChyZWlmeUxhenlMZW5ndGhJ
Zk5lZWRlZCh2bSwgZXhlYywgcHJvcGVydHlOYW1lKSA9PSBMYXp5UHJvcGVydHlUeXBlOjpJc0xh
enlQcm9wZXJ0eSkKICAgICAgICAgcmV0dXJuIExhenlQcm9wZXJ0eVR5cGU6OklzTGF6eVByb3Bl
cnR5OwotICAgIH0gZWxzZSBpZiAocHJvcGVydHlOYW1lID09IHZtLnByb3BlcnR5TmFtZXMtPm5h
bWUpIHsKKyAgICBpZiAocHJvcGVydHlOYW1lID09IHZtLnByb3BlcnR5TmFtZXMtPm5hbWUpIHsK
ICAgICAgICAgaWYgKCFoYXNSZWlmaWVkTmFtZSgpKQogICAgICAgICAgICAgcmVpZnlOYW1lKHZt
LCBleGVjKTsKICAgICAgICAgcmV0dXJuIExhenlQcm9wZXJ0eVR5cGU6OklzTGF6eVByb3BlcnR5
OwpAQCAtNjkyLDcgKzY5NCwyNyBAQCBKU0Z1bmN0aW9uOjpMYXp5UHJvcGVydHlUeXBlIEpTRnVu
Y3Rpb246OnJlaWZ5TGF6eVByb3BlcnR5SWZOZWVkZWQoVk0mIHZtLCBFeGVjUwogICAgIHJldHVy
biBMYXp5UHJvcGVydHlUeXBlOjpOb3RMYXp5UHJvcGVydHk7CiB9CiAKLUpTRnVuY3Rpb246Okxh
enlQcm9wZXJ0eVR5cGUgSlNGdW5jdGlvbjo6cmVpZnlCb3VuZE5hbWVJZk5lZWRlZChWTSYgdm0s
IEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKK0pTRnVuY3Rpb246
OkxhenlQcm9wZXJ0eVR5cGUgSlNGdW5jdGlvbjo6cmVpZnlMYXp5UHJvcGVydHlGb3JIb3N0T3JC
dWlsdGluSWZOZWVkZWQoVk0mIHZtLCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9w
ZXJ0eU5hbWUpCit7CisgICAgQVNTRVJUKGlzSG9zdE9yQnVpbHRpbkZ1bmN0aW9uKCkpOworICAg
IGlmIChpc0J1aWx0aW5GdW5jdGlvbigpKSB7CisgICAgICAgIGlmIChyZWlmeUxhenlMZW5ndGhJ
Zk5lZWRlZCh2bSwgZXhlYywgcHJvcGVydHlOYW1lKSA9PSBMYXp5UHJvcGVydHlUeXBlOjpJc0xh
enlQcm9wZXJ0eSkKKyAgICAgICAgICAgIHJldHVybiBMYXp5UHJvcGVydHlUeXBlOjpJc0xhenlQ
cm9wZXJ0eTsKKyAgICB9CisgICAgcmV0dXJuIHJlaWZ5TGF6eUJvdW5kTmFtZUlmTmVlZGVkKHZt
LCBleGVjLCBwcm9wZXJ0eU5hbWUpOworfQorCitKU0Z1bmN0aW9uOjpMYXp5UHJvcGVydHlUeXBl
IEpTRnVuY3Rpb246OnJlaWZ5TGF6eUxlbmd0aElmTmVlZGVkKFZNJiB2bSwgRXhlY1N0YXRlKiwg
UHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKK3sKKyAgICBpZiAocHJvcGVydHlOYW1lID09IHZt
LnByb3BlcnR5TmFtZXMtPmxlbmd0aCkgeworICAgICAgICBpZiAoIWhhc1JlaWZpZWRMZW5ndGgo
KSkKKyAgICAgICAgICAgIHJlaWZ5TGVuZ3RoKHZtKTsKKyAgICAgICAgcmV0dXJuIExhenlQcm9w
ZXJ0eVR5cGU6OklzTGF6eVByb3BlcnR5OworICAgIH0KKyAgICByZXR1cm4gTGF6eVByb3BlcnR5
VHlwZTo6Tm90TGF6eVByb3BlcnR5OworfQorCitKU0Z1bmN0aW9uOjpMYXp5UHJvcGVydHlUeXBl
IEpTRnVuY3Rpb246OnJlaWZ5TGF6eUJvdW5kTmFtZUlmTmVlZGVkKFZNJiB2bSwgRXhlY1N0YXRl
KiBleGVjLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogewogICAgIGNvbnN0IElkZW50aWZp
ZXImIG5hbWVJZGVudCA9IHZtLnByb3BlcnR5TmFtZXMtPm5hbWU7CiAgICAgaWYgKHByb3BlcnR5
TmFtZSAhPSBuYW1lSWRlbnQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0Z1bmN0aW9uLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0Z1bmN0
aW9uLmgKaW5kZXggN2RjOWI2YWNhYmVlYzc3NzZiNDliMjM2OWRkMjdhNTFmODZlMWM3Yi4uOGM4
NTczMGRjZTU0YjQyMTExNWFjMDE4NTU5OTFkMWYzN2Q3OGI2NSAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5oCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTRnVuY3Rpb24uaApAQCAtMTkwLDcgKzE5MCw5IEBAIGNsYXNzIEpT
RnVuY3Rpb24gOiBwdWJsaWMgSlNDYWxsZWUgewogCiAgICAgZW51bSBjbGFzcyBMYXp5UHJvcGVy
dHlUeXBlIHsgTm90TGF6eVByb3BlcnR5LCBJc0xhenlQcm9wZXJ0eSB9OwogICAgIExhenlQcm9w
ZXJ0eVR5cGUgcmVpZnlMYXp5UHJvcGVydHlJZk5lZWRlZChWTSYsIEV4ZWNTdGF0ZSosIFByb3Bl
cnR5TmFtZSk7Ci0gICAgTGF6eVByb3BlcnR5VHlwZSByZWlmeUJvdW5kTmFtZUlmTmVlZGVkKFZN
JiwgRXhlY1N0YXRlKiwgUHJvcGVydHlOYW1lKTsKKyAgICBMYXp5UHJvcGVydHlUeXBlIHJlaWZ5
TGF6eVByb3BlcnR5Rm9ySG9zdE9yQnVpbHRpbklmTmVlZGVkKFZNJiwgRXhlY1N0YXRlKiwgUHJv
cGVydHlOYW1lKTsKKyAgICBMYXp5UHJvcGVydHlUeXBlIHJlaWZ5TGF6eUxlbmd0aElmTmVlZGVk
KFZNJiwgRXhlY1N0YXRlKiwgUHJvcGVydHlOYW1lKTsKKyAgICBMYXp5UHJvcGVydHlUeXBlIHJl
aWZ5TGF6eUJvdW5kTmFtZUlmTmVlZGVkKFZNJiwgRXhlY1N0YXRlKiwgUHJvcGVydHlOYW1lKTsK
IAogICAgIGZyaWVuZCBjbGFzcyBMTEludE9mZnNldHNFeHRyYWN0b3I7CiAKZGlmZiAtLWdpdCBh
L0pTVGVzdHMvQ2hhbmdlTG9nIGIvSlNUZXN0cy9DaGFuZ2VMb2cKaW5kZXggYWU2YTkwNDA0MzBi
M2I1YmViZDFkNWIwYWRlOWE3YmNhZDg3NTQ2Yi4uNjI4MDJhNTYwNGI5MTVlMzg2NWQxNzRmZWZi
YTUxNjhiY2RkYzUyNCAxMDA2NDQKLS0tIGEvSlNUZXN0cy9DaGFuZ2VMb2cKKysrIGIvSlNUZXN0
cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxNy0wOC0wNiAgWXVzdWtlIFN1enVraSAg
PHV0YXRhbmUudGVhQGdtYWlsLmNvbT4KKworICAgICAgICBQcm9taXNlIHJlc29sdmUgYW5kIHJl
amVjdCBmdW5jdGlvbiBzaG91bGQgaGF2ZSBsZW5ndGggPSAxCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzUyNDIKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHN0cmVzcy9idWlsdGluLWZ1bmN0aW9uLWxl
bmd0aC5qczogQWRkZWQuCisgICAgICAgIChzaG91bGRCZSk6CisgICAgICAgIChzaG91bGRUaHJv
dyk6CisgICAgICAgIChzaG91bGRCZS5KU09OLnN0cmluZ2lmeS5PYmplY3QuZ2V0T3duUHJvcGVy
dHlEZXNjcmlwdG9yKToKKyAgICAgICAgKHNob3VsZEJlLkpTT04uc3RyaW5naWZ5Lk9iamVjdC5n
ZXRPd25Qcm9wZXJ0eU5hbWVzLkFycmF5LnByb3RvdHlwZS5maWx0ZXIuc29ydCk6CisKIDIwMTct
MDgtMDMgIENhcmxvcyBBbGJlcnRvIExvcGV6IFBlcmV6ICA8Y2xvcGV6QGlnYWxpYS5jb20+CiAK
ICAgICAgICAgSlNDIHRlc3Qgd2FzbS9qcy1hcGkvdGVzdF9tZW1vcnlfY29uc3RydWN0b3IuanMg
c2hvdWxkIGJlIHNraXBwZWQgb24gbWVtb3J5TGltaXRlZApkaWZmIC0tZ2l0IGEvSlNUZXN0cy9z
dHJlc3MvYnVpbHRpbi1mdW5jdGlvbi1sZW5ndGguanMgYi9KU1Rlc3RzL3N0cmVzcy9idWlsdGlu
LWZ1bmN0aW9uLWxlbmd0aC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mMmVhMDA4MDFmZGJkMzM1ODlhNTU1YWFj
ZmM4ODFlZmIyMmI5M2FiCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy9zdHJlc3MvYnVpbHRp
bi1mdW5jdGlvbi1sZW5ndGguanMKQEAgLTAsMCArMSw0NyBAQAorZnVuY3Rpb24gc2hvdWxkQmUo
YWN0dWFsLCBleHBlY3RlZCkgeworICAgIGlmIChhY3R1YWwgIT09IGV4cGVjdGVkKQorICAgICAg
ICB0aHJvdyBuZXcgRXJyb3IoJ2JhZCB2YWx1ZTogJyArIGFjdHVhbCk7Cit9CisKK2Z1bmN0aW9u
IHNob3VsZFRocm93KGZ1bmMsIGVycm9yTWVzc2FnZSkgeworICAgIHZhciBlcnJvclRocm93biA9
IGZhbHNlOworICAgIHZhciBlcnJvciA9IG51bGw7CisgICAgdHJ5IHsKKyAgICAgICAgZnVuYygp
OworICAgIH0gY2F0Y2ggKGUpIHsKKyAgICAgICAgZXJyb3JUaHJvd24gPSB0cnVlOworICAgICAg
ICBlcnJvciA9IGU7CisgICAgfQorICAgIGlmICghZXJyb3JUaHJvd24pCisgICAgICAgIHRocm93
IG5ldyBFcnJvcignbm90IHRocm93bicpOworICAgIGlmIChTdHJpbmcoZXJyb3IpICE9PSBlcnJv
ck1lc3NhZ2UpCisgICAgICAgIHRocm93IG5ldyBFcnJvcihgYmFkIGVycm9yOiAke1N0cmluZyhl
cnJvcil9YCk7Cit9CisKK3sKKyAgICBzaG91bGRCZShKU09OLnN0cmluZ2lmeShPYmplY3QuZ2V0
T3duUHJvcGVydHlOYW1lcyhBcnJheS5wcm90b3R5cGUuZmlsdGVyKS5zb3J0KCkpLCBgWyJsZW5n
dGgiLCJuYW1lIl1gKTsKKyAgICBzaG91bGRCZShBcnJheS5wcm90b3R5cGUuZmlsdGVyLmxlbmd0
aCwgMSk7CisgICAgc2hvdWxkQmUoSlNPTi5zdHJpbmdpZnkoT2JqZWN0LmdldE93blByb3BlcnR5
RGVzY3JpcHRvcihBcnJheS5wcm90b3R5cGUuZmlsdGVyLCAnbGVuZ3RoJykpLCBgeyJ2YWx1ZSI6
MSwid3JpdGFibGUiOmZhbHNlLCJlbnVtZXJhYmxlIjpmYWxzZSwiY29uZmlndXJhYmxlIjp0cnVl
fWApOworICAgIHNob3VsZEJlKGRlbGV0ZSBBcnJheS5wcm90b3R5cGUuZmlsdGVyLmxlbmd0aCwg
dHJ1ZSk7CisgICAgc2hvdWxkQmUoSlNPTi5zdHJpbmdpZnkoT2JqZWN0LmdldE93blByb3BlcnR5
TmFtZXMoQXJyYXkucHJvdG90eXBlLmZpbHRlcikuc29ydCgpKSwgYFsibmFtZSJdYCk7Cit9CisK
K3sKKyAgICBzaG91bGRUaHJvdyhmdW5jdGlvbiAoKSB7CisgICAgICAgICJ1c2Ugc3RyaWN0IjsK
KyAgICAgICAgQXJyYXkucHJvdG90eXBlLmZvckVhY2gubGVuZ3RoID0gNDI7CisgICAgfSwgYFR5
cGVFcnJvcjogQXR0ZW1wdGVkIHRvIGFzc2lnbiB0byByZWFkb25seSBwcm9wZXJ0eS5gKTsKK30K
KworeworICAgIHZhciByZXNvbHZlID0gbnVsbDsKKyAgICB2YXIgcmVqZWN0ID0gbnVsbDsKKyAg
ICBuZXcgUHJvbWlzZShmdW5jdGlvbiAoYXJnMCwgYXJnMSkgeworICAgICAgICByZXNvbHZlID0g
YXJnMDsKKyAgICAgICAgcmVqZWN0ID0gYXJnMTsKKyAgICB9KTsKKyAgICBzaG91bGRCZShyZXNv
bHZlLmxlbmd0aCwgMSk7CisgICAgc2hvdWxkQmUoSlNPTi5zdHJpbmdpZnkoT2JqZWN0LmdldE93
blByb3BlcnR5RGVzY3JpcHRvcihyZXNvbHZlLCAnbGVuZ3RoJykpLCBgeyJ2YWx1ZSI6MSwid3Jp
dGFibGUiOmZhbHNlLCJlbnVtZXJhYmxlIjpmYWxzZSwiY29uZmlndXJhYmxlIjp0cnVlfWApOwor
ICAgIHNob3VsZEJlKHJlamVjdC5sZW5ndGgsIDEpOworICAgIHNob3VsZEJlKEpTT04uc3RyaW5n
aWZ5KE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IocmVqZWN0LCAnbGVuZ3RoJykpLCBg
eyJ2YWx1ZSI6MSwid3JpdGFibGUiOmZhbHNlLCJlbnVtZXJhYmxlIjpmYWxzZSwiY29uZmlndXJh
YmxlIjp0cnVlfWApOworfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>