<?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>179925</bug_id>
          
          <creation_ts>2017-11-21 09:57:18 -0800</creation_ts>
          <short_desc>[DFG] Introduce {Set,Map,WeakMap}Fields</short_desc>
          <delta_ts>2017-11-26 17:49:48 -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>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <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>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fpizlo</cc>
    
    <cc>ggaren</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>1374058</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2017-11-21 09:57:18 -0800</bug_when>
    <thetext>[DFG] Introduce HashMapFields</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1374059</commentid>
    <comment_count>1</comment_count>
      <attachid>327419</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2017-11-21 09:59:05 -0800</bug_when>
    <thetext>Created attachment 327419
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1374060</commentid>
    <comment_count>2</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2017-11-21 10:00:04 -0800</bug_when>
    <thetext>Let&apos;s</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1374061</commentid>
    <comment_count>3</comment_count>
      <attachid>327420</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2017-11-21 10:25:28 -0800</bug_when>
    <thetext>Created attachment 327420
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1374062</commentid>
    <comment_count>4</comment_count>
      <attachid>327421</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2017-11-21 10:26:42 -0800</bug_when>
    <thetext>Created attachment 327421
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1374771</commentid>
    <comment_count>5</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2017-11-26 17:04:53 -0800</bug_when>
    <thetext>Ping? I think it&apos;s very simple :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1374785</commentid>
    <comment_count>6</comment_count>
      <attachid>327421</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2017-11-26 17:24:29 -0800</bug_when>
    <thetext>Comment on attachment 327421
Patch

Nice. r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1374788</commentid>
    <comment_count>7</comment_count>
      <attachid>327421</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2017-11-26 17:27:32 -0800</bug_when>
    <thetext>Comment on attachment 327421
Patch

Thank you!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1374794</commentid>
    <comment_count>8</comment_count>
      <attachid>327421</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-11-26 17:47:03 -0800</bug_when>
    <thetext>Comment on attachment 327421
Patch

Clearing flags on attachment: 327421

Committed r225151: &lt;https://trac.webkit.org/changeset/225151&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1374795</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-11-26 17:47:04 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1374796</commentid>
    <comment_count>10</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-11-26 17:49:48 -0800</bug_when>
    <thetext>&lt;rdar://problem/35690965&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>327419</attachid>
            <date>2017-11-21 09:59:05 -0800</date>
            <delta_ts>2017-11-21 10:25:26 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-179925-20171122025905.patch</filename>
            <type>text/plain</type>
            <size>6015</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI1MDg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBi
ZDg2ODczNTQ2MjljYTE3NjE4MDA1NWQ2YzQ5NmIzYTMyNjc4MDQzLi44ODIzMjk0NmIyZDQ5YzNl
ZmUyMTU5MzlmOTUwMjQxODMzZmQ4ZDk4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMyBAQAorMjAxNy0xMS0yMSAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWls
LmNvbT4KKworICAgICAgICBbREZHXSBJbnRyb2R1Y2UgSGFzaE1hcEZpZWxkcworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc5OTI1CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgU2V0QWRkIGFuZCBNYXBTZXQg
dXNlcyBgd3JpdGUoTWlzY0ZpZWxkcylgLCBidXQgaXQgaXMgbm90IGNvcnJlY3QuIEl0IGFjY2lk
ZW50YWxseQorICAgICAgICB3cml0ZXMgcmVhZG9ubHkgTWlzY0ZpZWxkcyB3aGljaCBpcyB1c2Vk
IGJ5IHZhcmlvdXMgbm9kZXMgYW5kIG1ha2Ugb3B0aW1pemF0aW9uCisgICAgICAgIGNvbnNlcnZh
dGl2ZS4KKworICAgICAgICBXZSBpbnRyb2R1Y2UgSGFzaE1hcEZpZWxkcyB0byBwcmVjaXNlbHkg
bW9kZWwgY2xvYmJlcml6aW5nIG9mIE1hcCBhbmQgU2V0LgorCisgICAgICAgICogZGZnL0RGR0Fi
c3RyYWN0SGVhcC5oOgorICAgICAgICAqIGRmZy9ERkdDbG9iYmVyaXplLmg6CisgICAgICAgIChK
U0M6OkRGRzo6Y2xvYmJlcml6ZSk6CisgICAgICAgICogZGZnL0RGR0hlYXBMb2NhdGlvbi5jcHA6
CisgICAgICAgIChXVEY6OnByaW50SW50ZXJuYWwpOgorICAgICAgICAqIGRmZy9ERkdIZWFwTG9j
YXRpb24uaDoKKwogMjAxNy0xMS0yMSAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxl
LmNvbT4KIAogICAgICAgICBBbGxvdyBmb3IgbW9yZSBlZmZpY2llbnQgdXNlIG9mIEdlbmVyaWNU
eXBlZEFycmF5VmlldwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdB
YnN0cmFjdEhlYXAuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQWJzdHJhY3RIZWFw
LmgKaW5kZXggOTdjM2EzNGZhY2ExNDVlMTA1NDA5MDlmOGRhYmU1ZjVlY2NmNjhmNy4uNDY3ZjNh
NTAzNWExMWEwNjJjYTFmYjE4ZTZhYWQ1NzA4NTI5YTU4NyAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2RmZy9ERkdBYnN0cmFjdEhlYXAuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvZGZnL0RGR0Fic3RyYWN0SGVhcC5oCkBAIC03Miw2ICs3Miw4IEBAIG5hbWVzcGFjZSBK
U0MgeyBuYW1lc3BhY2UgREZHIHsKICAgICBtYWNybyhIZWFwT2JqZWN0Q291bnQpIC8qIFVzZWQg
dG8gcmVmbGVjdCB0aGUgZmFjdCB0aGF0IHNvbWUgYWxsb2NhdGlvbnMgcmV2ZWFsIG9iamVjdCBp
ZGVudGl0eSAqL1wKICAgICBtYWNybyhSZWdFeHBTdGF0ZSkgXAogICAgIG1hY3JvKE1hdGhEb3RS
YW5kb21TdGF0ZSkgXAorICAgIG1hY3JvKEhhc2hNYXBGaWVsZHMpIFwKKyAgICBtYWNybyhIYXNo
TWFwQnVja2V0RmllbGRzKSBcCiAgICAgbWFjcm8oSW50ZXJuYWxTdGF0ZSkgXAogICAgIG1hY3Jv
KEFic29sdXRlKSBcCiAgICAgLyogRE9NSklUIHRlbGxzIHRoZSBoZWFwIHJhbmdlIHdpdGggdGhl
IHBhaXIgb2YgaW50ZWdlcnMuICovXApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2RmZy9ERkdDbG9iYmVyaXplLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0Nsb2Ji
ZXJpemUuaAppbmRleCA1ZjM3MjkzMDMzZjZiZTg2MDUwMmVmZDZhYzI0NjFhMDBmYWQwY2IwLi4x
YjA3YjVmYWE2YzIwMTBlNjFhNTZjNDk1ZTlkNmI4NDFjYmZlM2U3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0Nsb2JiZXJpemUuaAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvZGZnL0RGR0Nsb2JiZXJpemUuaApAQCAtMTU5Nyw0OSArMTU5Nyw0NiBAQCB2b2lk
IGNsb2JiZXJpemUoR3JhcGgmIGdyYXBoLCBOb2RlKiBub2RlLCBjb25zdCBSZWFkRnVuY3RvciYg
cmVhZCwgY29uc3QgV3JpdGVGdQogICAgICAgICByZXR1cm47CiAKICAgICBjYXNlIEdldE1hcEJ1
Y2tldDogewotICAgICAgICByZWFkKE1pc2NGaWVsZHMpOworICAgICAgICByZWFkKEhhc2hNYXBG
aWVsZHMpOwogICAgICAgICBFZGdlJiBtYXBFZGdlID0gbm9kZS0+Y2hpbGQxKCk7CiAgICAgICAg
IEVkZ2UmIGtleUVkZ2UgPSBub2RlLT5jaGlsZDIoKTsKLSAgICAgICAgZGVmKEhlYXBMb2NhdGlv
bihNYXBCdWNrZXRMb2MsIE1pc2NGaWVsZHMsIG1hcEVkZ2UsIGtleUVkZ2UpLCBMYXp5Tm9kZShu
b2RlKSk7CisgICAgICAgIGRlZihIZWFwTG9jYXRpb24oTWFwQnVja2V0TG9jLCBIYXNoTWFwRmll
bGRzLCBtYXBFZGdlLCBrZXlFZGdlKSwgTGF6eU5vZGUobm9kZSkpOwogICAgICAgICByZXR1cm47
CiAgICAgfQogCiAgICAgY2FzZSBHZXRNYXBCdWNrZXRIZWFkOiB7Ci0gICAgICAgIHJlYWQoTWlz
Y0ZpZWxkcyk7CisgICAgICAgIHJlYWQoSGFzaE1hcEZpZWxkcyk7CiAgICAgICAgIEVkZ2UmIG1h
cEVkZ2UgPSBub2RlLT5jaGlsZDEoKTsKLSAgICAgICAgZGVmKEhlYXBMb2NhdGlvbihNYXBCdWNr
ZXRIZWFkTG9jLCBNaXNjRmllbGRzLCBtYXBFZGdlKSwgTGF6eU5vZGUobm9kZSkpOworICAgICAg
ICBkZWYoSGVhcExvY2F0aW9uKE1hcEJ1Y2tldEhlYWRMb2MsIEhhc2hNYXBGaWVsZHMsIG1hcEVk
Z2UpLCBMYXp5Tm9kZShub2RlKSk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKICAgICBjYXNl
IEdldE1hcEJ1Y2tldE5leHQ6IHsKLSAgICAgICAgcmVhZChNaXNjRmllbGRzKTsKLSAgICAgICAg
TG9jYXRpb25LaW5kIGxvY2F0aW9uS2luZCA9IE1hcEJ1Y2tldE1hcE5leHRMb2M7Ci0gICAgICAg
IGlmIChub2RlLT5idWNrZXRPd25lclR5cGUoKSA9PSBCdWNrZXRPd25lclR5cGU6OlNldCkKLSAg
ICAgICAgICAgIGxvY2F0aW9uS2luZCA9IE1hcEJ1Y2tldFNldE5leHRMb2M7CisgICAgICAgIHJl
YWQoSGFzaE1hcEZpZWxkcyk7CiAgICAgICAgIEVkZ2UmIGJ1Y2tldEVkZ2UgPSBub2RlLT5jaGls
ZDEoKTsKLSAgICAgICAgZGVmKEhlYXBMb2NhdGlvbihsb2NhdGlvbktpbmQsIE1pc2NGaWVsZHMs
IGJ1Y2tldEVkZ2UpLCBMYXp5Tm9kZShub2RlKSk7CisgICAgICAgIGRlZihIZWFwTG9jYXRpb24o
TWFwQnVja2V0TmV4dExvYywgSGFzaE1hcEZpZWxkcywgYnVja2V0RWRnZSksIExhenlOb2RlKG5v
ZGUpKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAogICAgIGNhc2UgTG9hZEtleUZyb21NYXBC
dWNrZXQ6IHsKLSAgICAgICAgcmVhZChNaXNjRmllbGRzKTsKKyAgICAgICAgcmVhZChIYXNoTWFw
RmllbGRzKTsKICAgICAgICAgRWRnZSYgYnVja2V0RWRnZSA9IG5vZGUtPmNoaWxkMSgpOwotICAg
ICAgICBkZWYoSGVhcExvY2F0aW9uKE1hcEJ1Y2tldEtleUxvYywgTWlzY0ZpZWxkcywgYnVja2V0
RWRnZSksIExhenlOb2RlKG5vZGUpKTsKKyAgICAgICAgZGVmKEhlYXBMb2NhdGlvbihNYXBCdWNr
ZXRLZXlMb2MsIEhhc2hNYXBGaWVsZHMsIGJ1Y2tldEVkZ2UpLCBMYXp5Tm9kZShub2RlKSk7CiAg
ICAgICAgIHJldHVybjsKICAgICB9CiAKICAgICBjYXNlIExvYWRWYWx1ZUZyb21NYXBCdWNrZXQ6
IHsKLSAgICAgICAgcmVhZChNaXNjRmllbGRzKTsKKyAgICAgICAgcmVhZChIYXNoTWFwRmllbGRz
KTsKICAgICAgICAgRWRnZSYgYnVja2V0RWRnZSA9IG5vZGUtPmNoaWxkMSgpOwotICAgICAgICBk
ZWYoSGVhcExvY2F0aW9uKE1hcEJ1Y2tldFZhbHVlTG9jLCBNaXNjRmllbGRzLCBidWNrZXRFZGdl
KSwgTGF6eU5vZGUobm9kZSkpOworICAgICAgICBkZWYoSGVhcExvY2F0aW9uKE1hcEJ1Y2tldFZh
bHVlTG9jLCBIYXNoTWFwRmllbGRzLCBidWNrZXRFZGdlKSwgTGF6eU5vZGUobm9kZSkpOwogICAg
ICAgICByZXR1cm47CiAgICAgfQogCiAgICAgY2FzZSBXZWFrTWFwR2V0OiB7Ci0gICAgICAgIHJl
YWQoTWlzY0ZpZWxkcyk7CisgICAgICAgIHJlYWQoSGFzaE1hcEZpZWxkcyk7CiAgICAgICAgIEVk
Z2UmIG1hcEVkZ2UgPSBub2RlLT5jaGlsZDEoKTsKICAgICAgICAgRWRnZSYga2V5RWRnZSA9IG5v
ZGUtPmNoaWxkMigpOwotICAgICAgICBkZWYoSGVhcExvY2F0aW9uKFdlYWtNYXBHZXRMb2MsIE1p
c2NGaWVsZHMsIG1hcEVkZ2UsIGtleUVkZ2UpLCBMYXp5Tm9kZShub2RlKSk7CisgICAgICAgIGRl
ZihIZWFwTG9jYXRpb24oV2Vha01hcEdldExvYywgSGFzaE1hcEZpZWxkcywgbWFwRWRnZSwga2V5
RWRnZSksIExhenlOb2RlKG5vZGUpKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIApAQCAtMTY0
Nyw3ICsxNjQ0LDcgQEAgdm9pZCBjbG9iYmVyaXplKEdyYXBoJiBncmFwaCwgTm9kZSogbm9kZSwg
Y29uc3QgUmVhZEZ1bmN0b3ImIHJlYWQsIGNvbnN0IFdyaXRlRnUKICAgICBjYXNlIE1hcFNldDog
ewogICAgICAgICAvLyBGSVhNRTogRGVmaW5lIGRlZnMgZm9yIHRoZW0gdG8gcGFydGljaXBhdGUg
aW4gQ1NFLgogICAgICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTc5OTExCi0gICAgICAgIHdyaXRlKE1pc2NGaWVsZHMpOworICAgICAgICB3cml0ZShIYXNo
TWFwRmllbGRzKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2RmZy9ERkdIZWFwTG9jYXRpb24uY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2RmZy9ERkdIZWFwTG9jYXRpb24uY3BwCmluZGV4IDIwZDkyNjlmY2VhMjhhYTQ3NDMw
OTgxZWVkNTM1MzI2NjQwNDg2OTkuLmFhODZjYjRiNjRiNzIyZjBkNWQxOWNkMWY4ODFjY2E4ZWU5
YmU4YmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHSGVhcExvY2F0
aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0hlYXBMb2NhdGlvbi5j
cHAKQEAgLTE4MCwxMiArMTgwLDggQEAgdm9pZCBwcmludEludGVybmFsKFByaW50U3RyZWFtJiBv
dXQsIExvY2F0aW9uS2luZCBraW5kKQogICAgICAgICBvdXQucHJpbnQoIk1hcEJ1Y2tldFZhbHVl
TG9jIik7CiAgICAgICAgIHJldHVybjsKIAotICAgIGNhc2UgTWFwQnVja2V0TWFwTmV4dExvYzoK
LSAgICAgICAgb3V0LnByaW50KCJNYXBCdWNrZXRNYXBOZXh0TG9jIik7Ci0gICAgICAgIHJldHVy
bjsKLQotICAgIGNhc2UgTWFwQnVja2V0U2V0TmV4dExvYzoKLSAgICAgICAgb3V0LnByaW50KCJN
YXBCdWNrZXRTZXROZXh0TG9jIik7CisgICAgY2FzZSBNYXBCdWNrZXROZXh0TG9jOgorICAgICAg
ICBvdXQucHJpbnQoIk1hcEJ1Y2tldE5leHRMb2MiKTsKICAgICAgICAgcmV0dXJuOwogCiAgICAg
Y2FzZSBXZWFrTWFwR2V0TG9jOgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Rm
Zy9ERkdIZWFwTG9jYXRpb24uaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHSGVhcExv
Y2F0aW9uLmgKaW5kZXggYTdlMTQyN2YwYWRmNDRmNjVkZDFkMTY5NzRlYmUyZGUxNjBiNGNkMi4u
YzgyMmI4ZmFjNzIzM2YwNTdhNTdjOThiNjFkMzI3OTk5ZWE4YTc2MyAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdIZWFwTG9jYXRpb24uaAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvZGZnL0RGR0hlYXBMb2NhdGlvbi5oCkBAIC02Nyw4ICs2Nyw3IEBAIGVudW0g
TG9jYXRpb25LaW5kIHsKICAgICBNYXBCdWNrZXRIZWFkTG9jLAogICAgIE1hcEJ1Y2tldFZhbHVl
TG9jLAogICAgIE1hcEJ1Y2tldEtleUxvYywKLSAgICBNYXBCdWNrZXRNYXBOZXh0TG9jLAotICAg
IE1hcEJ1Y2tldFNldE5leHRMb2MsCisgICAgTWFwQnVja2V0TmV4dExvYywKICAgICBXZWFrTWFw
R2V0TG9jLAogICAgIERPTVN0YXRlTG9jLAogfTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>327420</attachid>
            <date>2017-11-21 10:25:28 -0800</date>
            <delta_ts>2017-11-21 10:26:39 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-179925-20171122032527.patch</filename>
            <type>text/plain</type>
            <size>14099</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI1MDg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBi
ZDg2ODczNTQ2MjljYTE3NjE4MDA1NWQ2YzQ5NmIzYTMyNjc4MDQzLi42MTNjNmY5ZDNiOTFlMGU4
NTllNmE2YWFjOTMzNmFkYjg2ZjFiNTBmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNyBAQAorMjAxNy0xMS0yMSAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWls
LmNvbT4KKworICAgICAgICBbREZHXSBJbnRyb2R1Y2Uge1NldCxNYXAsV2Vha01hcH1GaWVsZHMK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3OTkyNQor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFNldEFkZCBh
bmQgTWFwU2V0IHVzZXMgYHdyaXRlKE1pc2NGaWVsZHMpYCwgYnV0IGl0IGlzIG5vdCBjb3JyZWN0
LiBJdCBhY2NpZGVudGFsbHkKKyAgICAgICAgd3JpdGVzIHJlYWRvbmx5IE1pc2NGaWVsZHMgd2hp
Y2ggaXMgdXNlZCBieSB2YXJpb3VzIG5vZGVzIGFuZCBtYWtlIG9wdGltaXphdGlvbgorICAgICAg
ICBjb25zZXJ2YXRpdmUuCisKKyAgICAgICAgV2UgaW50cm9kdWNlIEpTU2V0RmllbGRzLCBKU01h
cEZpZWxkcywgYW5kIEpTV2Vha01hcEZpZWxkcyB0byBwcmVjaXNlbHkgbW9kZWwgY2xvYmJlcml6
aW5nIG9mIE1hcCwgU2V0LCBhbmQgV2Vha01hcC4KKworICAgICAgICAqIGRmZy9ERkdBYnN0cmFj
dEhlYXAuaDoKKyAgICAgICAgKiBkZmcvREZHQnl0ZUNvZGVQYXJzZXIuY3BwOgorICAgICAgICAo
SlNDOjpERkc6OkJ5dGVDb2RlUGFyc2VyOjpoYW5kbGVJbnRyaW5zaWNDYWxsKToKKyAgICAgICAg
KiBkZmcvREZHQ2xvYmJlcml6ZS5oOgorICAgICAgICAoSlNDOjpERkc6OmNsb2JiZXJpemUpOgor
ICAgICAgICAqIGRmZy9ERkdIZWFwTG9jYXRpb24uY3BwOgorICAgICAgICAoV1RGOjpwcmludElu
dGVybmFsKToKKyAgICAgICAgKiBkZmcvREZHSGVhcExvY2F0aW9uLmg6CisgICAgICAgICogZGZn
L0RGR05vZGUuaDoKKyAgICAgICAgKEpTQzo6REZHOjpOb2RlOjpoYXNCdWNrZXRPd25lclR5cGUp
OgorCiAyMDE3LTExLTIxICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgog
CiAgICAgICAgIEFsbG93IGZvciBtb3JlIGVmZmljaWVudCB1c2Ugb2YgR2VuZXJpY1R5cGVkQXJy
YXlWaWV3CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0Fic3RyYWN0
SGVhcC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdBYnN0cmFjdEhlYXAuaAppbmRl
eCA5N2MzYTM0ZmFjYTE0NWUxMDU0MDkwOWY4ZGFiZTVmNWVjY2Y2OGY3Li5kMWVlZGZlMmM4YzAx
NDAwOGJmYjliNmMyOWYzNjhiZGEyNjFiYjliIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvZGZnL0RGR0Fic3RyYWN0SGVhcC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9k
ZmcvREZHQWJzdHJhY3RIZWFwLmgKQEAgLTcyLDYgKzcyLDEwIEBAIG5hbWVzcGFjZSBKU0MgeyBu
YW1lc3BhY2UgREZHIHsKICAgICBtYWNybyhIZWFwT2JqZWN0Q291bnQpIC8qIFVzZWQgdG8gcmVm
bGVjdCB0aGUgZmFjdCB0aGF0IHNvbWUgYWxsb2NhdGlvbnMgcmV2ZWFsIG9iamVjdCBpZGVudGl0
eSAqL1wKICAgICBtYWNybyhSZWdFeHBTdGF0ZSkgXAogICAgIG1hY3JvKE1hdGhEb3RSYW5kb21T
dGF0ZSkgXAorICAgIG1hY3JvKEpTTWFwRmllbGRzKSBcCisgICAgbWFjcm8oSlNTZXRGaWVsZHMp
IFwKKyAgICBtYWNybyhKU1dlYWtNYXBGaWVsZHMpIFwKKyAgICBtYWNybyhIYXNoTWFwQnVja2V0
RmllbGRzKSBcCiAgICAgbWFjcm8oSW50ZXJuYWxTdGF0ZSkgXAogICAgIG1hY3JvKEFic29sdXRl
KSBcCiAgICAgLyogRE9NSklUIHRlbGxzIHRoZSBoZWFwIHJhbmdlIHdpdGggdGhlIHBhaXIgb2Yg
aW50ZWdlcnMuICovXApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdC
eXRlQ29kZVBhcnNlci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0J5dGVDb2Rl
UGFyc2VyLmNwcAppbmRleCBiODQxYzdhM2EwZmIyZDVkOGQzOGZlMWIyMmIxMmI5MjViYTcyZDlj
Li41Nzg5NTY2MDUwZTNlZTMzYWYwYWViNGQ5NWEwZjJhMjQ3OGY5ZWY3IDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0J5dGVDb2RlUGFyc2VyLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0J5dGVDb2RlUGFyc2VyLmNwcApAQCAtMjg3NSw3ICsy
ODc1LDcgQEAgYm9vbCBCeXRlQ29kZVBhcnNlcjo6aGFuZGxlSW50cmluc2ljQ2FsbChOb2RlKiBj
YWxsZWUsIGludCByZXN1bHRPcGVyYW5kLCBJbnRyaW4KICAgICAgICAgTm9kZSoga2V5ID0gZ2V0
KHZpcnR1YWxSZWdpc3RlckZvckFyZ3VtZW50KDEsIHJlZ2lzdGVyT2Zmc2V0KSk7CiAgICAgICAg
IE5vZGUqIGhhc2ggPSBhZGRUb0dyYXBoKE1hcEhhc2gsIGtleSk7CiAgICAgICAgIE5vZGUqIGJ1
Y2tldCA9IGFkZFRvR3JhcGgoR2V0TWFwQnVja2V0LCBFZGdlKG1hcCwgTWFwT2JqZWN0VXNlKSwg
RWRnZShrZXkpLCBFZGdlKGhhc2gpKTsKLSAgICAgICAgTm9kZSogcmVzdWx0ID0gYWRkVG9HcmFw
aChMb2FkVmFsdWVGcm9tTWFwQnVja2V0LCBPcEluZm8oKSwgT3BJbmZvKHByZWRpY3Rpb24pLCBi
dWNrZXQpOworICAgICAgICBOb2RlKiByZXN1bHQgPSBhZGRUb0dyYXBoKExvYWRWYWx1ZUZyb21N
YXBCdWNrZXQsIE9wSW5mbyhCdWNrZXRPd25lclR5cGU6Ok1hcCksIE9wSW5mbyhwcmVkaWN0aW9u
KSwgYnVja2V0KTsKICAgICAgICAgc2V0KFZpcnR1YWxSZWdpc3RlcihyZXN1bHRPcGVyYW5kKSwg
cmVzdWx0KTsKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQpAQCAtMjk2Niw3ICsyOTY2LDgg
QEAgYm9vbCBCeXRlQ29kZVBhcnNlcjo6aGFuZGxlSW50cmluc2ljQ2FsbChOb2RlKiBjYWxsZWUs
IGludCByZXN1bHRPcGVyYW5kLCBJbnRyaW4KIAogICAgICAgICBpbnNlcnRDaGVja3MoKTsKICAg
ICAgICAgTm9kZSogYnVja2V0ID0gZ2V0KHZpcnR1YWxSZWdpc3RlckZvckFyZ3VtZW50KDEsIHJl
Z2lzdGVyT2Zmc2V0KSk7Ci0gICAgICAgIE5vZGUqIHJlc3VsdCA9IGFkZFRvR3JhcGgoTG9hZEtl
eUZyb21NYXBCdWNrZXQsIE9wSW5mbygpLCBPcEluZm8ocHJlZGljdGlvbiksIGJ1Y2tldCk7Cisg
ICAgICAgIEJ1Y2tldE93bmVyVHlwZSB0eXBlID0gaW50cmluc2ljID09IEpTU2V0QnVja2V0S2V5
SW50cmluc2ljID8gQnVja2V0T3duZXJUeXBlOjpTZXQgOiBCdWNrZXRPd25lclR5cGU6Ok1hcDsK
KyAgICAgICAgTm9kZSogcmVzdWx0ID0gYWRkVG9HcmFwaChMb2FkS2V5RnJvbU1hcEJ1Y2tldCwg
T3BJbmZvKHR5cGUpLCBPcEluZm8ocHJlZGljdGlvbiksIGJ1Y2tldCk7CiAgICAgICAgIHNldChW
aXJ0dWFsUmVnaXN0ZXIocmVzdWx0T3BlcmFuZCksIHJlc3VsdCk7CiAgICAgICAgIHJldHVybiB0
cnVlOwogICAgIH0KQEAgLTI5NzYsNyArMjk3Nyw3IEBAIGJvb2wgQnl0ZUNvZGVQYXJzZXI6Omhh
bmRsZUludHJpbnNpY0NhbGwoTm9kZSogY2FsbGVlLCBpbnQgcmVzdWx0T3BlcmFuZCwgSW50cmlu
CiAKICAgICAgICAgaW5zZXJ0Q2hlY2tzKCk7CiAgICAgICAgIE5vZGUqIGJ1Y2tldCA9IGdldCh2
aXJ0dWFsUmVnaXN0ZXJGb3JBcmd1bWVudCgxLCByZWdpc3Rlck9mZnNldCkpOwotICAgICAgICBO
b2RlKiByZXN1bHQgPSBhZGRUb0dyYXBoKExvYWRWYWx1ZUZyb21NYXBCdWNrZXQsIE9wSW5mbygp
LCBPcEluZm8ocHJlZGljdGlvbiksIGJ1Y2tldCk7CisgICAgICAgIE5vZGUqIHJlc3VsdCA9IGFk
ZFRvR3JhcGgoTG9hZFZhbHVlRnJvbU1hcEJ1Y2tldCwgT3BJbmZvKEJ1Y2tldE93bmVyVHlwZTo6
TWFwKSwgT3BJbmZvKHByZWRpY3Rpb24pLCBidWNrZXQpOwogICAgICAgICBzZXQoVmlydHVhbFJl
Z2lzdGVyKHJlc3VsdE9wZXJhbmQpLCByZXN1bHQpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAg
ICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0Nsb2JiZXJpemUu
aCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQ2xvYmJlcml6ZS5oCmluZGV4IDVmMzcy
OTMwMzNmNmJlODYwNTAyZWZkNmFjMjQ2MWEwMGZhZDBjYjAuLjVkMzU2OWMzOTBmYjg1YzVmZDk3
MDBkMTUwN2NmMTNkYjBiMDVhNzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9k
ZmcvREZHQ2xvYmJlcml6ZS5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQ2xv
YmJlcml6ZS5oCkBAIC0xNTk3LDU3ICsxNTk3LDY1IEBAIHZvaWQgY2xvYmJlcml6ZShHcmFwaCYg
Z3JhcGgsIE5vZGUqIG5vZGUsIGNvbnN0IFJlYWRGdW5jdG9yJiByZWFkLCBjb25zdCBXcml0ZUZ1
CiAgICAgICAgIHJldHVybjsKIAogICAgIGNhc2UgR2V0TWFwQnVja2V0OiB7Ci0gICAgICAgIHJl
YWQoTWlzY0ZpZWxkcyk7CiAgICAgICAgIEVkZ2UmIG1hcEVkZ2UgPSBub2RlLT5jaGlsZDEoKTsK
ICAgICAgICAgRWRnZSYga2V5RWRnZSA9IG5vZGUtPmNoaWxkMigpOwotICAgICAgICBkZWYoSGVh
cExvY2F0aW9uKE1hcEJ1Y2tldExvYywgTWlzY0ZpZWxkcywgbWFwRWRnZSwga2V5RWRnZSksIExh
enlOb2RlKG5vZGUpKTsKKyAgICAgICAgQWJzdHJhY3RIZWFwS2luZCBoZWFwID0gKG1hcEVkZ2Uu
dXNlS2luZCgpID09IE1hcE9iamVjdFVzZSkgPyBKU01hcEZpZWxkcyA6IEpTU2V0RmllbGRzOwor
ICAgICAgICByZWFkKGhlYXApOworICAgICAgICBkZWYoSGVhcExvY2F0aW9uKE1hcEJ1Y2tldExv
YywgaGVhcCwgbWFwRWRnZSwga2V5RWRnZSksIExhenlOb2RlKG5vZGUpKTsKICAgICAgICAgcmV0
dXJuOwogICAgIH0KIAogICAgIGNhc2UgR2V0TWFwQnVja2V0SGVhZDogewotICAgICAgICByZWFk
KE1pc2NGaWVsZHMpOwogICAgICAgICBFZGdlJiBtYXBFZGdlID0gbm9kZS0+Y2hpbGQxKCk7Ci0g
ICAgICAgIGRlZihIZWFwTG9jYXRpb24oTWFwQnVja2V0SGVhZExvYywgTWlzY0ZpZWxkcywgbWFw
RWRnZSksIExhenlOb2RlKG5vZGUpKTsKKyAgICAgICAgQWJzdHJhY3RIZWFwS2luZCBoZWFwID0g
KG1hcEVkZ2UudXNlS2luZCgpID09IE1hcE9iamVjdFVzZSkgPyBKU01hcEZpZWxkcyA6IEpTU2V0
RmllbGRzOworICAgICAgICByZWFkKGhlYXApOworICAgICAgICBkZWYoSGVhcExvY2F0aW9uKE1h
cEJ1Y2tldEhlYWRMb2MsIGhlYXAsIG1hcEVkZ2UpLCBMYXp5Tm9kZShub2RlKSk7CiAgICAgICAg
IHJldHVybjsKICAgICB9CiAKICAgICBjYXNlIEdldE1hcEJ1Y2tldE5leHQ6IHsKLSAgICAgICAg
cmVhZChNaXNjRmllbGRzKTsKLSAgICAgICAgTG9jYXRpb25LaW5kIGxvY2F0aW9uS2luZCA9IE1h
cEJ1Y2tldE1hcE5leHRMb2M7Ci0gICAgICAgIGlmIChub2RlLT5idWNrZXRPd25lclR5cGUoKSA9
PSBCdWNrZXRPd25lclR5cGU6OlNldCkKLSAgICAgICAgICAgIGxvY2F0aW9uS2luZCA9IE1hcEJ1
Y2tldFNldE5leHRMb2M7CisgICAgICAgIEFic3RyYWN0SGVhcEtpbmQgaGVhcCA9IChub2RlLT5i
dWNrZXRPd25lclR5cGUoKSA9PSBCdWNrZXRPd25lclR5cGU6Ok1hcCkgPyBKU01hcEZpZWxkcyA6
IEpTU2V0RmllbGRzOworICAgICAgICByZWFkKGhlYXApOwogICAgICAgICBFZGdlJiBidWNrZXRF
ZGdlID0gbm9kZS0+Y2hpbGQxKCk7Ci0gICAgICAgIGRlZihIZWFwTG9jYXRpb24obG9jYXRpb25L
aW5kLCBNaXNjRmllbGRzLCBidWNrZXRFZGdlKSwgTGF6eU5vZGUobm9kZSkpOworICAgICAgICBk
ZWYoSGVhcExvY2F0aW9uKE1hcEJ1Y2tldE5leHRMb2MsIGhlYXAsIGJ1Y2tldEVkZ2UpLCBMYXp5
Tm9kZShub2RlKSk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKICAgICBjYXNlIExvYWRLZXlG
cm9tTWFwQnVja2V0OiB7Ci0gICAgICAgIHJlYWQoTWlzY0ZpZWxkcyk7CisgICAgICAgIEFic3Ry
YWN0SGVhcEtpbmQgaGVhcCA9IChub2RlLT5idWNrZXRPd25lclR5cGUoKSA9PSBCdWNrZXRPd25l
clR5cGU6Ok1hcCkgPyBKU01hcEZpZWxkcyA6IEpTU2V0RmllbGRzOworICAgICAgICByZWFkKGhl
YXApOwogICAgICAgICBFZGdlJiBidWNrZXRFZGdlID0gbm9kZS0+Y2hpbGQxKCk7Ci0gICAgICAg
IGRlZihIZWFwTG9jYXRpb24oTWFwQnVja2V0S2V5TG9jLCBNaXNjRmllbGRzLCBidWNrZXRFZGdl
KSwgTGF6eU5vZGUobm9kZSkpOworICAgICAgICBkZWYoSGVhcExvY2F0aW9uKE1hcEJ1Y2tldEtl
eUxvYywgaGVhcCwgYnVja2V0RWRnZSksIExhenlOb2RlKG5vZGUpKTsKICAgICAgICAgcmV0dXJu
OwogICAgIH0KIAogICAgIGNhc2UgTG9hZFZhbHVlRnJvbU1hcEJ1Y2tldDogewotICAgICAgICBy
ZWFkKE1pc2NGaWVsZHMpOworICAgICAgICBBYnN0cmFjdEhlYXBLaW5kIGhlYXAgPSAobm9kZS0+
YnVja2V0T3duZXJUeXBlKCkgPT0gQnVja2V0T3duZXJUeXBlOjpNYXApID8gSlNNYXBGaWVsZHMg
OiBKU1NldEZpZWxkczsKKyAgICAgICAgcmVhZChoZWFwKTsKICAgICAgICAgRWRnZSYgYnVja2V0
RWRnZSA9IG5vZGUtPmNoaWxkMSgpOwotICAgICAgICBkZWYoSGVhcExvY2F0aW9uKE1hcEJ1Y2tl
dFZhbHVlTG9jLCBNaXNjRmllbGRzLCBidWNrZXRFZGdlKSwgTGF6eU5vZGUobm9kZSkpOworICAg
ICAgICBkZWYoSGVhcExvY2F0aW9uKE1hcEJ1Y2tldFZhbHVlTG9jLCBoZWFwLCBidWNrZXRFZGdl
KSwgTGF6eU5vZGUobm9kZSkpOwogICAgICAgICByZXR1cm47CiAgICAgfQogCiAgICAgY2FzZSBX
ZWFrTWFwR2V0OiB7Ci0gICAgICAgIHJlYWQoTWlzY0ZpZWxkcyk7CiAgICAgICAgIEVkZ2UmIG1h
cEVkZ2UgPSBub2RlLT5jaGlsZDEoKTsKICAgICAgICAgRWRnZSYga2V5RWRnZSA9IG5vZGUtPmNo
aWxkMigpOwotICAgICAgICBkZWYoSGVhcExvY2F0aW9uKFdlYWtNYXBHZXRMb2MsIE1pc2NGaWVs
ZHMsIG1hcEVkZ2UsIGtleUVkZ2UpLCBMYXp5Tm9kZShub2RlKSk7CisgICAgICAgIHJlYWQoSlNX
ZWFrTWFwRmllbGRzKTsKKyAgICAgICAgZGVmKEhlYXBMb2NhdGlvbihXZWFrTWFwR2V0TG9jLCBK
U1dlYWtNYXBGaWVsZHMsIG1hcEVkZ2UsIGtleUVkZ2UpLCBMYXp5Tm9kZShub2RlKSk7CisgICAg
ICAgIHJldHVybjsKKyAgICB9CisKKyAgICBjYXNlIFNldEFkZDogeworICAgICAgICAvLyBGSVhN
RTogRGVmaW5lIGRlZnMgZm9yIHRoZW0gdG8gcGFydGljaXBhdGUgaW4gQ1NFLgorICAgICAgICAv
LyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc5OTExCisgICAgICAg
IHdyaXRlKEpTU2V0RmllbGRzKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIGNhc2Ug
U2V0QWRkOgogICAgIGNhc2UgTWFwU2V0OiB7CiAgICAgICAgIC8vIEZJWE1FOiBEZWZpbmUgZGVm
cyBmb3IgdGhlbSB0byBwYXJ0aWNpcGF0ZSBpbiBDU0UuCiAgICAgICAgIC8vIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzk5MTEKLSAgICAgICAgd3JpdGUoTWlzY0Zp
ZWxkcyk7CisgICAgICAgIHdyaXRlKEpTTWFwRmllbGRzKTsKICAgICAgICAgcmV0dXJuOwogICAg
IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdIZWFwTG9jYXRp
b24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdIZWFwTG9jYXRpb24uY3BwCmlu
ZGV4IDIwZDkyNjlmY2VhMjhhYTQ3NDMwOTgxZWVkNTM1MzI2NjQwNDg2OTkuLmFhODZjYjRiNjRi
NzIyZjBkNWQxOWNkMWY4ODFjY2E4ZWU5YmU4YmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9kZmcvREZHSGVhcExvY2F0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvZGZnL0RGR0hlYXBMb2NhdGlvbi5jcHAKQEAgLTE4MCwxMiArMTgwLDggQEAgdm9pZCBwcmlu
dEludGVybmFsKFByaW50U3RyZWFtJiBvdXQsIExvY2F0aW9uS2luZCBraW5kKQogICAgICAgICBv
dXQucHJpbnQoIk1hcEJ1Y2tldFZhbHVlTG9jIik7CiAgICAgICAgIHJldHVybjsKIAotICAgIGNh
c2UgTWFwQnVja2V0TWFwTmV4dExvYzoKLSAgICAgICAgb3V0LnByaW50KCJNYXBCdWNrZXRNYXBO
ZXh0TG9jIik7Ci0gICAgICAgIHJldHVybjsKLQotICAgIGNhc2UgTWFwQnVja2V0U2V0TmV4dExv
YzoKLSAgICAgICAgb3V0LnByaW50KCJNYXBCdWNrZXRTZXROZXh0TG9jIik7CisgICAgY2FzZSBN
YXBCdWNrZXROZXh0TG9jOgorICAgICAgICBvdXQucHJpbnQoIk1hcEJ1Y2tldE5leHRMb2MiKTsK
ICAgICAgICAgcmV0dXJuOwogCiAgICAgY2FzZSBXZWFrTWFwR2V0TG9jOgpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdIZWFwTG9jYXRpb24uaCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9kZmcvREZHSGVhcExvY2F0aW9uLmgKaW5kZXggYTdlMTQyN2YwYWRmNDRmNjVk
ZDFkMTY5NzRlYmUyZGUxNjBiNGNkMi4uYzgyMmI4ZmFjNzIzM2YwNTdhNTdjOThiNjFkMzI3OTk5
ZWE4YTc2MyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdIZWFwTG9j
YXRpb24uaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0hlYXBMb2NhdGlvbi5o
CkBAIC02Nyw4ICs2Nyw3IEBAIGVudW0gTG9jYXRpb25LaW5kIHsKICAgICBNYXBCdWNrZXRIZWFk
TG9jLAogICAgIE1hcEJ1Y2tldFZhbHVlTG9jLAogICAgIE1hcEJ1Y2tldEtleUxvYywKLSAgICBN
YXBCdWNrZXRNYXBOZXh0TG9jLAotICAgIE1hcEJ1Y2tldFNldE5leHRMb2MsCisgICAgTWFwQnVj
a2V0TmV4dExvYywKICAgICBXZWFrTWFwR2V0TG9jLAogICAgIERPTVN0YXRlTG9jLAogfTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHTm9kZS5oIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2RmZy9ERkdOb2RlLmgKaW5kZXggMDU5NTBhZWM4ZGU3N2JmODgxNjljYmRh
ZWZlN2VhYzgzMGQ1OTBhOS4uZTA5NzA5NWNiMjY2Yjc5ZjQ1ZWVjZTQyYmYzZTU1ZWY2MGVlMGVj
ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdOb2RlLmgKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdOb2RlLmgKQEAgLTI2NjksNyArMjY2OSw3IEBA
IHN0cnVjdCBOb2RlIHsKIAogICAgIGJvb2wgaGFzQnVja2V0T3duZXJUeXBlKCkKICAgICB7Ci0g
ICAgICAgIHJldHVybiBvcCgpID09IEdldE1hcEJ1Y2tldE5leHQ7CisgICAgICAgIHJldHVybiBv
cCgpID09IEdldE1hcEJ1Y2tldE5leHQgfHwgb3AoKSA9PSBMb2FkS2V5RnJvbU1hcEJ1Y2tldCB8
fCBvcCgpID09IExvYWRWYWx1ZUZyb21NYXBCdWNrZXQ7CiAgICAgfQogCiAgICAgQnVja2V0T3du
ZXJUeXBlIGJ1Y2tldE93bmVyVHlwZSgpCmRpZmYgLS1naXQgYS9KU1Rlc3RzL0NoYW5nZUxvZyBi
L0pTVGVzdHMvQ2hhbmdlTG9nCmluZGV4IGU2MzY2NTZkOTcwMzI3Mzg3ZWEwMGQ4MzMzM2EyYjIw
ZWZlMDAwMmQuLmE1ZDQ2MjI5ZThmZTIyNGE1ZmRiOWEyMDg4YjgzMTVhYzA3YmUxNDMgMTAwNjQ0
Ci0tLSBhL0pTVGVzdHMvQ2hhbmdlTG9nCisrKyBiL0pTVGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDUg
KzEsMjUgQEAKIDIwMTctMTEtMjEgIFl1c3VrZSBTdXp1a2kgIDx1dGF0YW5lLnRlYUBnbWFpbC5j
b20+CiAKKyAgICAgICAgW0RGR10gSW50cm9kdWNlIHtTZXQsTWFwLFdlYWtNYXB9RmllbGRzCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzk5MjUKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHN0cmVzcy9t
YXAtc2V0LWNsb2JiZXItbWFwLWdldC5qczogQWRkZWQuCisgICAgICAgIChzaG91bGRCZSk6Cisg
ICAgICAgICh0ZXN0KToKKyAgICAgICAgKiBzdHJlc3MvbWFwLXNldC1kb2VzLW5vdC1jbG9iYmVy
LXNldC1oYXMuanM6IEFkZGVkLgorICAgICAgICAoc2hvdWxkQmUpOgorICAgICAgICAqIHN0cmVz
cy9tYXAtc2V0LWRvZXMtbm90LWNsb2JiZXItd2Vhay1tYXAtZ2V0LmpzOiBBZGRlZC4KKyAgICAg
ICAgKHNob3VsZEJlKToKKyAgICAgICAgKHRlc3QpOgorICAgICAgICAqIHN0cmVzcy9zZXQtYWRk
LWNsb2JiZXItc2V0LWhhcy5qczogQWRkZWQuCisgICAgICAgIChzaG91bGRCZSk6CisgICAgICAg
ICogc3RyZXNzL3NldC1hZGQtZG9lcy1ub3QtY2xvYmJlci1tYXAtZ2V0LmpzOiBBZGRlZC4KKyAg
ICAgICAgKHNob3VsZEJlKToKKworMjAxNy0xMS0yMSAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUu
dGVhQGdtYWlsLmNvbT4KKwogICAgICAgICBbREZHXVtGVExdIFN1cHBvcnQgTWFwU2V0IC8gU2V0
QWRkIGludHJpbnNpY3MKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTE3OTg1OAogCmRpZmYgLS1naXQgYS9KU1Rlc3RzL3N0cmVzcy9tYXAtc2V0LWNsb2Ji
ZXItbWFwLWdldC5qcyBiL0pTVGVzdHMvc3RyZXNzL21hcC1zZXQtY2xvYmJlci1tYXAtZ2V0Lmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjA0M2RjZjhkNjkzYzYwMjQwZGViYWZmYjJkZGM4ZDY3MGU5NDdjMzkKLS0t
IC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3N0cmVzcy9tYXAtc2V0LWNsb2JiZXItbWFwLWdldC5q
cwpAQCAtMCwwICsxLDE4IEBACitmdW5jdGlvbiBzaG91bGRCZShhY3R1YWwsIGV4cGVjdGVkKQor
eworICAgIGlmIChhY3R1YWwgIT09IGV4cGVjdGVkKQorICAgICAgICB0aHJvdyBuZXcgRXJyb3Io
J2JhZCB2YWx1ZTogJyArIGFjdHVhbCk7Cit9CisKK2Z1bmN0aW9uIHRlc3QoKQoreworICAgIHZh
ciBtYXAgPSBuZXcgTWFwKCk7CisgICAgbWFwLnNldCg0MiwgNDIpOworICAgIHZhciByZXMxID0g
bWFwLmdldCg0Mik7CisgICAgbWFwLnNldCg0MiwgMTAwKTsKKyAgICB2YXIgcmVzMiA9IG1hcC5n
ZXQoNDIpOworICAgIHJldHVybiByZXMxICsgcmVzMjsKK30KKworZm9yICh2YXIgaSA9IDA7IGkg
PCAxZTY7ICsraSkKKyAgICBzaG91bGRCZSh0ZXN0KCksIDE0Mik7CmRpZmYgLS1naXQgYS9KU1Rl
c3RzL3N0cmVzcy9tYXAtc2V0LWRvZXMtbm90LWNsb2JiZXItc2V0LWhhcy5qcyBiL0pTVGVzdHMv
c3RyZXNzL21hcC1zZXQtZG9lcy1ub3QtY2xvYmJlci1zZXQtaGFzLmpzCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmUx
MWI5ZDJkM2I4Y2YwMjFkMzgwMDJjODI1MjlkZWNmNTg4MDRjMGIKLS0tIC9kZXYvbnVsbAorKysg
Yi9KU1Rlc3RzL3N0cmVzcy9tYXAtc2V0LWRvZXMtbm90LWNsb2JiZXItc2V0LWhhcy5qcwpAQCAt
MCwwICsxLDE5IEBACitmdW5jdGlvbiBzaG91bGRCZShhY3R1YWwsIGV4cGVjdGVkKQoreworICAg
IGlmIChhY3R1YWwgIT09IGV4cGVjdGVkKQorICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2JhZCB2
YWx1ZTogJyArIGFjdHVhbCk7Cit9CisKK2Z1bmN0aW9uIHRlc3QoKQoreworICAgIHZhciBtYXAg
PSBuZXcgTWFwKCk7CisgICAgdmFyIHNldCA9IG5ldyBTZXQoKTsKKyAgICBzZXQuYWRkKDQyKTsK
KyAgICB2YXIgcmVzMSA9IHNldC5oYXMoNDIpOworICAgIG1hcC5zZXQoNDIsIDQyKTsKKyAgICB2
YXIgcmVzMiA9IHNldC5oYXMoNDIpOworICAgIHJldHVybiByZXMxICsgcmVzMjsKK30KKworZm9y
ICh2YXIgaSA9IDA7IGkgPCAxZTY7ICsraSkKKyAgICBzaG91bGRCZSh0ZXN0KCksIDIpOwpkaWZm
IC0tZ2l0IGEvSlNUZXN0cy9zdHJlc3MvbWFwLXNldC1kb2VzLW5vdC1jbG9iYmVyLXdlYWstbWFw
LWdldC5qcyBiL0pTVGVzdHMvc3RyZXNzL21hcC1zZXQtZG9lcy1ub3QtY2xvYmJlci13ZWFrLW1h
cC1nZXQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNTY0OTlmNmJjZDRhNWEzZGU3YzQ0ZjI5MzQ4MWEzZjkzMmRj
M2UzYwotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvc3RyZXNzL21hcC1zZXQtZG9lcy1ub3Qt
Y2xvYmJlci13ZWFrLW1hcC1nZXQuanMKQEAgLTAsMCArMSwyNiBAQAorZnVuY3Rpb24gc2hvdWxk
QmUoYWN0dWFsLCBleHBlY3RlZCkKK3sKKyAgICBpZiAoYWN0dWFsICE9PSBleHBlY3RlZCkKKyAg
ICAgICAgdGhyb3cgbmV3IEVycm9yKCdiYWQgdmFsdWU6ICcgKyBhY3R1YWwpOworfQorCitmdW5j
dGlvbiB0ZXN0KCkKK3sKKyAgICB2YXIgbWFwID0gbmV3IE1hcCgpOworICAgIHZhciB3ZWFrTWFw
ID0gbmV3IFdlYWtNYXAoKTsKKyAgICB2YXIga2V5ID0ge307CisKKyAgICB2YXIgcmVzMSA9IHdl
YWtNYXAuZ2V0KGtleSk7CisgICAgbWFwLnNldChrZXksIGtleSk7CisgICAgdmFyIHJlczIgPSB3
ZWFrTWFwLmdldChrZXkpOworICAgIHdlYWtNYXAuc2V0KGtleSwgNDIpOworICAgIHZhciByZXMz
ID0gd2Vha01hcC5nZXQoa2V5KTsKKyAgICByZXR1cm4gW3VuZGVmaW5lZCwgdW5kZWZpbmVkLCA0
Ml07Cit9CisKK2ZvciAodmFyIGkgPSAwOyBpIDwgMWU1OyArK2kpIHsKKyAgICB2YXIgW3JlczEs
IHJlczIsIHJlczNdID0gdGVzdCgpOworICAgIHNob3VsZEJlKHJlczEsIHVuZGVmaW5lZCk7Cisg
ICAgc2hvdWxkQmUocmVzMiwgdW5kZWZpbmVkKTsKKyAgICBzaG91bGRCZShyZXMzLCA0Mik7Cit9
CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3N0cmVzcy9zZXQtYWRkLWNsb2JiZXItc2V0LWhhcy5qcyBi
L0pTVGVzdHMvc3RyZXNzL3NldC1hZGQtY2xvYmJlci1zZXQtaGFzLmpzCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFm
MmRjOWE4OGRiZGRmODZmMjcwZjQ3NzIxNmFlYWRjYjNiM2JkZWIKLS0tIC9kZXYvbnVsbAorKysg
Yi9KU1Rlc3RzL3N0cmVzcy9zZXQtYWRkLWNsb2JiZXItc2V0LWhhcy5qcwpAQCAtMCwwICsxLDIw
IEBACitmdW5jdGlvbiBzaG91bGRCZShhY3R1YWwsIGV4cGVjdGVkKQoreworICAgIGlmIChhY3R1
YWwgIT09IGV4cGVjdGVkKQorICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2JhZCB2YWx1ZTogJyAr
IGFjdHVhbCk7Cit9CisKK2Z1bmN0aW9uIHRlc3QoKQoreworICAgIHZhciBzZXQgPSBuZXcgU2V0
KCk7CisgICAgdmFyIHJlczEgPSBzZXQuaGFzKDQyKTsKKyAgICBzZXQuYWRkKDQyKTsKKyAgICB2
YXIgcmVzMiA9IHNldC5oYXMoNDIpOworICAgIHJldHVybiBbcmVzMSwgcmVzMl07Cit9CisKK2Zv
ciAodmFyIGkgPSAwOyBpIDwgMWU2OyArK2kpIHsKKyAgICB2YXIgW3JlczEsIHJlczJdID0gdGVz
dCgpOworICAgIHNob3VsZEJlKHJlczEsIGZhbHNlKTsKKyAgICBzaG91bGRCZShyZXMyLCB0cnVl
KTsKK30KZGlmZiAtLWdpdCBhL0pTVGVzdHMvc3RyZXNzL3NldC1hZGQtZG9lcy1ub3QtY2xvYmJl
ci1tYXAtZ2V0LmpzIGIvSlNUZXN0cy9zdHJlc3Mvc2V0LWFkZC1kb2VzLW5vdC1jbG9iYmVyLW1h
cC1nZXQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMTIwZThlZDc5MWRhOWY1OGY0MjIzMzZjMzYyNDA1ZmYzN2Ux
NDZkYgotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvc3RyZXNzL3NldC1hZGQtZG9lcy1ub3Qt
Y2xvYmJlci1tYXAtZ2V0LmpzCkBAIC0wLDAgKzEsMTkgQEAKK2Z1bmN0aW9uIHNob3VsZEJlKGFj
dHVhbCwgZXhwZWN0ZWQpCit7CisgICAgaWYgKGFjdHVhbCAhPT0gZXhwZWN0ZWQpCisgICAgICAg
IHRocm93IG5ldyBFcnJvcignYmFkIHZhbHVlOiAnICsgYWN0dWFsKTsKK30KKworZnVuY3Rpb24g
dGVzdCgpCit7CisgICAgdmFyIG1hcCA9IG5ldyBNYXAoKTsKKyAgICB2YXIgc2V0ID0gbmV3IFNl
dCgpOworICAgIG1hcC5zZXQoNDIsIDQyKTsKKyAgICB2YXIgcmVzMSA9IG1hcC5nZXQoNDIpOwor
ICAgIHNldC5hZGQoNDIpOworICAgIHZhciByZXMyID0gbWFwLmdldCg0Mik7CisgICAgcmV0dXJu
IHJlczEgKyByZXMyOworfQorCitmb3IgKHZhciBpID0gMDsgaSA8IDFlNjsgKytpKQorICAgIHNo
b3VsZEJlKHRlc3QoKSwgODQpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>327421</attachid>
            <date>2017-11-21 10:26:42 -0800</date>
            <delta_ts>2017-11-26 17:47:03 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-179925-20171122032641.patch</filename>
            <type>text/plain</type>
            <size>14064</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI1MDg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBi
ZDg2ODczNTQ2MjljYTE3NjE4MDA1NWQ2YzQ5NmIzYTMyNjc4MDQzLi42MTNjNmY5ZDNiOTFlMGU4
NTllNmE2YWFjOTMzNmFkYjg2ZjFiNTBmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNyBAQAorMjAxNy0xMS0yMSAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWls
LmNvbT4KKworICAgICAgICBbREZHXSBJbnRyb2R1Y2Uge1NldCxNYXAsV2Vha01hcH1GaWVsZHMK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3OTkyNQor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFNldEFkZCBh
bmQgTWFwU2V0IHVzZXMgYHdyaXRlKE1pc2NGaWVsZHMpYCwgYnV0IGl0IGlzIG5vdCBjb3JyZWN0
LiBJdCBhY2NpZGVudGFsbHkKKyAgICAgICAgd3JpdGVzIHJlYWRvbmx5IE1pc2NGaWVsZHMgd2hp
Y2ggaXMgdXNlZCBieSB2YXJpb3VzIG5vZGVzIGFuZCBtYWtlIG9wdGltaXphdGlvbgorICAgICAg
ICBjb25zZXJ2YXRpdmUuCisKKyAgICAgICAgV2UgaW50cm9kdWNlIEpTU2V0RmllbGRzLCBKU01h
cEZpZWxkcywgYW5kIEpTV2Vha01hcEZpZWxkcyB0byBwcmVjaXNlbHkgbW9kZWwgY2xvYmJlcml6
aW5nIG9mIE1hcCwgU2V0LCBhbmQgV2Vha01hcC4KKworICAgICAgICAqIGRmZy9ERkdBYnN0cmFj
dEhlYXAuaDoKKyAgICAgICAgKiBkZmcvREZHQnl0ZUNvZGVQYXJzZXIuY3BwOgorICAgICAgICAo
SlNDOjpERkc6OkJ5dGVDb2RlUGFyc2VyOjpoYW5kbGVJbnRyaW5zaWNDYWxsKToKKyAgICAgICAg
KiBkZmcvREZHQ2xvYmJlcml6ZS5oOgorICAgICAgICAoSlNDOjpERkc6OmNsb2JiZXJpemUpOgor
ICAgICAgICAqIGRmZy9ERkdIZWFwTG9jYXRpb24uY3BwOgorICAgICAgICAoV1RGOjpwcmludElu
dGVybmFsKToKKyAgICAgICAgKiBkZmcvREZHSGVhcExvY2F0aW9uLmg6CisgICAgICAgICogZGZn
L0RGR05vZGUuaDoKKyAgICAgICAgKEpTQzo6REZHOjpOb2RlOjpoYXNCdWNrZXRPd25lclR5cGUp
OgorCiAyMDE3LTExLTIxICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgog
CiAgICAgICAgIEFsbG93IGZvciBtb3JlIGVmZmljaWVudCB1c2Ugb2YgR2VuZXJpY1R5cGVkQXJy
YXlWaWV3CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0Fic3RyYWN0
SGVhcC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdBYnN0cmFjdEhlYXAuaAppbmRl
eCA5N2MzYTM0ZmFjYTE0NWUxMDU0MDkwOWY4ZGFiZTVmNWVjY2Y2OGY3Li43ZDUzMmJmNzVmNjJh
NjJkOTNkMjUyNzk1MTQ5Y2UyMmRiMThhZTIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvZGZnL0RGR0Fic3RyYWN0SGVhcC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9k
ZmcvREZHQWJzdHJhY3RIZWFwLmgKQEAgLTcyLDYgKzcyLDkgQEAgbmFtZXNwYWNlIEpTQyB7IG5h
bWVzcGFjZSBERkcgewogICAgIG1hY3JvKEhlYXBPYmplY3RDb3VudCkgLyogVXNlZCB0byByZWZs
ZWN0IHRoZSBmYWN0IHRoYXQgc29tZSBhbGxvY2F0aW9ucyByZXZlYWwgb2JqZWN0IGlkZW50aXR5
ICovXAogICAgIG1hY3JvKFJlZ0V4cFN0YXRlKSBcCiAgICAgbWFjcm8oTWF0aERvdFJhbmRvbVN0
YXRlKSBcCisgICAgbWFjcm8oSlNNYXBGaWVsZHMpIFwKKyAgICBtYWNybyhKU1NldEZpZWxkcykg
XAorICAgIG1hY3JvKEpTV2Vha01hcEZpZWxkcykgXAogICAgIG1hY3JvKEludGVybmFsU3RhdGUp
IFwKICAgICBtYWNybyhBYnNvbHV0ZSkgXAogICAgIC8qIERPTUpJVCB0ZWxscyB0aGUgaGVhcCBy
YW5nZSB3aXRoIHRoZSBwYWlyIG9mIGludGVnZXJzLiAqL1wKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9kZmcvREZHQnl0ZUNvZGVQYXJzZXIuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2RmZy9ERkdCeXRlQ29kZVBhcnNlci5jcHAKaW5kZXggYjg0MWM3YTNhMGZiMmQ1ZDhk
MzhmZTFiMjJiMTJiOTI1YmE3MmQ5Yy4uNTc4OTU2NjA1MGUzZWUzM2FmMGFlYjRkOTVhMGYyYTI0
NzhmOWVmNyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdCeXRlQ29k
ZVBhcnNlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdCeXRlQ29kZVBh
cnNlci5jcHAKQEAgLTI4NzUsNyArMjg3NSw3IEBAIGJvb2wgQnl0ZUNvZGVQYXJzZXI6OmhhbmRs
ZUludHJpbnNpY0NhbGwoTm9kZSogY2FsbGVlLCBpbnQgcmVzdWx0T3BlcmFuZCwgSW50cmluCiAg
ICAgICAgIE5vZGUqIGtleSA9IGdldCh2aXJ0dWFsUmVnaXN0ZXJGb3JBcmd1bWVudCgxLCByZWdp
c3Rlck9mZnNldCkpOwogICAgICAgICBOb2RlKiBoYXNoID0gYWRkVG9HcmFwaChNYXBIYXNoLCBr
ZXkpOwogICAgICAgICBOb2RlKiBidWNrZXQgPSBhZGRUb0dyYXBoKEdldE1hcEJ1Y2tldCwgRWRn
ZShtYXAsIE1hcE9iamVjdFVzZSksIEVkZ2Uoa2V5KSwgRWRnZShoYXNoKSk7Ci0gICAgICAgIE5v
ZGUqIHJlc3VsdCA9IGFkZFRvR3JhcGgoTG9hZFZhbHVlRnJvbU1hcEJ1Y2tldCwgT3BJbmZvKCks
IE9wSW5mbyhwcmVkaWN0aW9uKSwgYnVja2V0KTsKKyAgICAgICAgTm9kZSogcmVzdWx0ID0gYWRk
VG9HcmFwaChMb2FkVmFsdWVGcm9tTWFwQnVja2V0LCBPcEluZm8oQnVja2V0T3duZXJUeXBlOjpN
YXApLCBPcEluZm8ocHJlZGljdGlvbiksIGJ1Y2tldCk7CiAgICAgICAgIHNldChWaXJ0dWFsUmVn
aXN0ZXIocmVzdWx0T3BlcmFuZCksIHJlc3VsdCk7CiAgICAgICAgIHJldHVybiB0cnVlOwogICAg
IH0KQEAgLTI5NjYsNyArMjk2Niw4IEBAIGJvb2wgQnl0ZUNvZGVQYXJzZXI6OmhhbmRsZUludHJp
bnNpY0NhbGwoTm9kZSogY2FsbGVlLCBpbnQgcmVzdWx0T3BlcmFuZCwgSW50cmluCiAKICAgICAg
ICAgaW5zZXJ0Q2hlY2tzKCk7CiAgICAgICAgIE5vZGUqIGJ1Y2tldCA9IGdldCh2aXJ0dWFsUmVn
aXN0ZXJGb3JBcmd1bWVudCgxLCByZWdpc3Rlck9mZnNldCkpOwotICAgICAgICBOb2RlKiByZXN1
bHQgPSBhZGRUb0dyYXBoKExvYWRLZXlGcm9tTWFwQnVja2V0LCBPcEluZm8oKSwgT3BJbmZvKHBy
ZWRpY3Rpb24pLCBidWNrZXQpOworICAgICAgICBCdWNrZXRPd25lclR5cGUgdHlwZSA9IGludHJp
bnNpYyA9PSBKU1NldEJ1Y2tldEtleUludHJpbnNpYyA/IEJ1Y2tldE93bmVyVHlwZTo6U2V0IDog
QnVja2V0T3duZXJUeXBlOjpNYXA7CisgICAgICAgIE5vZGUqIHJlc3VsdCA9IGFkZFRvR3JhcGgo
TG9hZEtleUZyb21NYXBCdWNrZXQsIE9wSW5mbyh0eXBlKSwgT3BJbmZvKHByZWRpY3Rpb24pLCBi
dWNrZXQpOwogICAgICAgICBzZXQoVmlydHVhbFJlZ2lzdGVyKHJlc3VsdE9wZXJhbmQpLCByZXN1
bHQpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CkBAIC0yOTc2LDcgKzI5NzcsNyBAQCBi
b29sIEJ5dGVDb2RlUGFyc2VyOjpoYW5kbGVJbnRyaW5zaWNDYWxsKE5vZGUqIGNhbGxlZSwgaW50
IHJlc3VsdE9wZXJhbmQsIEludHJpbgogCiAgICAgICAgIGluc2VydENoZWNrcygpOwogICAgICAg
ICBOb2RlKiBidWNrZXQgPSBnZXQodmlydHVhbFJlZ2lzdGVyRm9yQXJndW1lbnQoMSwgcmVnaXN0
ZXJPZmZzZXQpKTsKLSAgICAgICAgTm9kZSogcmVzdWx0ID0gYWRkVG9HcmFwaChMb2FkVmFsdWVG
cm9tTWFwQnVja2V0LCBPcEluZm8oKSwgT3BJbmZvKHByZWRpY3Rpb24pLCBidWNrZXQpOworICAg
ICAgICBOb2RlKiByZXN1bHQgPSBhZGRUb0dyYXBoKExvYWRWYWx1ZUZyb21NYXBCdWNrZXQsIE9w
SW5mbyhCdWNrZXRPd25lclR5cGU6Ok1hcCksIE9wSW5mbyhwcmVkaWN0aW9uKSwgYnVja2V0KTsK
ICAgICAgICAgc2V0KFZpcnR1YWxSZWdpc3RlcihyZXN1bHRPcGVyYW5kKSwgcmVzdWx0KTsKICAg
ICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2RmZy9ERkdDbG9iYmVyaXplLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0Ns
b2JiZXJpemUuaAppbmRleCA1ZjM3MjkzMDMzZjZiZTg2MDUwMmVmZDZhYzI0NjFhMDBmYWQwY2Iw
Li41ZDM1NjljMzkwZmI4NWM1ZmQ5NzAwZDE1MDdjZjEzZGIwYjA1YTc3IDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0Nsb2JiZXJpemUuaAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvZGZnL0RGR0Nsb2JiZXJpemUuaApAQCAtMTU5Nyw1NyArMTU5Nyw2NSBAQCB2
b2lkIGNsb2JiZXJpemUoR3JhcGgmIGdyYXBoLCBOb2RlKiBub2RlLCBjb25zdCBSZWFkRnVuY3Rv
ciYgcmVhZCwgY29uc3QgV3JpdGVGdQogICAgICAgICByZXR1cm47CiAKICAgICBjYXNlIEdldE1h
cEJ1Y2tldDogewotICAgICAgICByZWFkKE1pc2NGaWVsZHMpOwogICAgICAgICBFZGdlJiBtYXBF
ZGdlID0gbm9kZS0+Y2hpbGQxKCk7CiAgICAgICAgIEVkZ2UmIGtleUVkZ2UgPSBub2RlLT5jaGls
ZDIoKTsKLSAgICAgICAgZGVmKEhlYXBMb2NhdGlvbihNYXBCdWNrZXRMb2MsIE1pc2NGaWVsZHMs
IG1hcEVkZ2UsIGtleUVkZ2UpLCBMYXp5Tm9kZShub2RlKSk7CisgICAgICAgIEFic3RyYWN0SGVh
cEtpbmQgaGVhcCA9IChtYXBFZGdlLnVzZUtpbmQoKSA9PSBNYXBPYmplY3RVc2UpID8gSlNNYXBG
aWVsZHMgOiBKU1NldEZpZWxkczsKKyAgICAgICAgcmVhZChoZWFwKTsKKyAgICAgICAgZGVmKEhl
YXBMb2NhdGlvbihNYXBCdWNrZXRMb2MsIGhlYXAsIG1hcEVkZ2UsIGtleUVkZ2UpLCBMYXp5Tm9k
ZShub2RlKSk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKICAgICBjYXNlIEdldE1hcEJ1Y2tl
dEhlYWQ6IHsKLSAgICAgICAgcmVhZChNaXNjRmllbGRzKTsKICAgICAgICAgRWRnZSYgbWFwRWRn
ZSA9IG5vZGUtPmNoaWxkMSgpOwotICAgICAgICBkZWYoSGVhcExvY2F0aW9uKE1hcEJ1Y2tldEhl
YWRMb2MsIE1pc2NGaWVsZHMsIG1hcEVkZ2UpLCBMYXp5Tm9kZShub2RlKSk7CisgICAgICAgIEFi
c3RyYWN0SGVhcEtpbmQgaGVhcCA9IChtYXBFZGdlLnVzZUtpbmQoKSA9PSBNYXBPYmplY3RVc2Up
ID8gSlNNYXBGaWVsZHMgOiBKU1NldEZpZWxkczsKKyAgICAgICAgcmVhZChoZWFwKTsKKyAgICAg
ICAgZGVmKEhlYXBMb2NhdGlvbihNYXBCdWNrZXRIZWFkTG9jLCBoZWFwLCBtYXBFZGdlKSwgTGF6
eU5vZGUobm9kZSkpOwogICAgICAgICByZXR1cm47CiAgICAgfQogCiAgICAgY2FzZSBHZXRNYXBC
dWNrZXROZXh0OiB7Ci0gICAgICAgIHJlYWQoTWlzY0ZpZWxkcyk7Ci0gICAgICAgIExvY2F0aW9u
S2luZCBsb2NhdGlvbktpbmQgPSBNYXBCdWNrZXRNYXBOZXh0TG9jOwotICAgICAgICBpZiAobm9k
ZS0+YnVja2V0T3duZXJUeXBlKCkgPT0gQnVja2V0T3duZXJUeXBlOjpTZXQpCi0gICAgICAgICAg
ICBsb2NhdGlvbktpbmQgPSBNYXBCdWNrZXRTZXROZXh0TG9jOworICAgICAgICBBYnN0cmFjdEhl
YXBLaW5kIGhlYXAgPSAobm9kZS0+YnVja2V0T3duZXJUeXBlKCkgPT0gQnVja2V0T3duZXJUeXBl
OjpNYXApID8gSlNNYXBGaWVsZHMgOiBKU1NldEZpZWxkczsKKyAgICAgICAgcmVhZChoZWFwKTsK
ICAgICAgICAgRWRnZSYgYnVja2V0RWRnZSA9IG5vZGUtPmNoaWxkMSgpOwotICAgICAgICBkZWYo
SGVhcExvY2F0aW9uKGxvY2F0aW9uS2luZCwgTWlzY0ZpZWxkcywgYnVja2V0RWRnZSksIExhenlO
b2RlKG5vZGUpKTsKKyAgICAgICAgZGVmKEhlYXBMb2NhdGlvbihNYXBCdWNrZXROZXh0TG9jLCBo
ZWFwLCBidWNrZXRFZGdlKSwgTGF6eU5vZGUobm9kZSkpOwogICAgICAgICByZXR1cm47CiAgICAg
fQogCiAgICAgY2FzZSBMb2FkS2V5RnJvbU1hcEJ1Y2tldDogewotICAgICAgICByZWFkKE1pc2NG
aWVsZHMpOworICAgICAgICBBYnN0cmFjdEhlYXBLaW5kIGhlYXAgPSAobm9kZS0+YnVja2V0T3du
ZXJUeXBlKCkgPT0gQnVja2V0T3duZXJUeXBlOjpNYXApID8gSlNNYXBGaWVsZHMgOiBKU1NldEZp
ZWxkczsKKyAgICAgICAgcmVhZChoZWFwKTsKICAgICAgICAgRWRnZSYgYnVja2V0RWRnZSA9IG5v
ZGUtPmNoaWxkMSgpOwotICAgICAgICBkZWYoSGVhcExvY2F0aW9uKE1hcEJ1Y2tldEtleUxvYywg
TWlzY0ZpZWxkcywgYnVja2V0RWRnZSksIExhenlOb2RlKG5vZGUpKTsKKyAgICAgICAgZGVmKEhl
YXBMb2NhdGlvbihNYXBCdWNrZXRLZXlMb2MsIGhlYXAsIGJ1Y2tldEVkZ2UpLCBMYXp5Tm9kZShu
b2RlKSk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKICAgICBjYXNlIExvYWRWYWx1ZUZyb21N
YXBCdWNrZXQ6IHsKLSAgICAgICAgcmVhZChNaXNjRmllbGRzKTsKKyAgICAgICAgQWJzdHJhY3RI
ZWFwS2luZCBoZWFwID0gKG5vZGUtPmJ1Y2tldE93bmVyVHlwZSgpID09IEJ1Y2tldE93bmVyVHlw
ZTo6TWFwKSA/IEpTTWFwRmllbGRzIDogSlNTZXRGaWVsZHM7CisgICAgICAgIHJlYWQoaGVhcCk7
CiAgICAgICAgIEVkZ2UmIGJ1Y2tldEVkZ2UgPSBub2RlLT5jaGlsZDEoKTsKLSAgICAgICAgZGVm
KEhlYXBMb2NhdGlvbihNYXBCdWNrZXRWYWx1ZUxvYywgTWlzY0ZpZWxkcywgYnVja2V0RWRnZSks
IExhenlOb2RlKG5vZGUpKTsKKyAgICAgICAgZGVmKEhlYXBMb2NhdGlvbihNYXBCdWNrZXRWYWx1
ZUxvYywgaGVhcCwgYnVja2V0RWRnZSksIExhenlOb2RlKG5vZGUpKTsKICAgICAgICAgcmV0dXJu
OwogICAgIH0KIAogICAgIGNhc2UgV2Vha01hcEdldDogewotICAgICAgICByZWFkKE1pc2NGaWVs
ZHMpOwogICAgICAgICBFZGdlJiBtYXBFZGdlID0gbm9kZS0+Y2hpbGQxKCk7CiAgICAgICAgIEVk
Z2UmIGtleUVkZ2UgPSBub2RlLT5jaGlsZDIoKTsKLSAgICAgICAgZGVmKEhlYXBMb2NhdGlvbihX
ZWFrTWFwR2V0TG9jLCBNaXNjRmllbGRzLCBtYXBFZGdlLCBrZXlFZGdlKSwgTGF6eU5vZGUobm9k
ZSkpOworICAgICAgICByZWFkKEpTV2Vha01hcEZpZWxkcyk7CisgICAgICAgIGRlZihIZWFwTG9j
YXRpb24oV2Vha01hcEdldExvYywgSlNXZWFrTWFwRmllbGRzLCBtYXBFZGdlLCBrZXlFZGdlKSwg
TGF6eU5vZGUobm9kZSkpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgY2FzZSBTZXRB
ZGQ6IHsKKyAgICAgICAgLy8gRklYTUU6IERlZmluZSBkZWZzIGZvciB0aGVtIHRvIHBhcnRpY2lw
YXRlIGluIENTRS4KKyAgICAgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTE3OTkxMQorICAgICAgICB3cml0ZShKU1NldEZpZWxkcyk7CiAgICAgICAgIHJldHVy
bjsKICAgICB9CiAKLSAgICBjYXNlIFNldEFkZDoKICAgICBjYXNlIE1hcFNldDogewogICAgICAg
ICAvLyBGSVhNRTogRGVmaW5lIGRlZnMgZm9yIHRoZW0gdG8gcGFydGljaXBhdGUgaW4gQ1NFLgog
ICAgICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc5OTEx
Ci0gICAgICAgIHdyaXRlKE1pc2NGaWVsZHMpOworICAgICAgICB3cml0ZShKU01hcEZpZWxkcyk7
CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9kZmcvREZHSGVhcExvY2F0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcv
REZHSGVhcExvY2F0aW9uLmNwcAppbmRleCAyMGQ5MjY5ZmNlYTI4YWE0NzQzMDk4MWVlZDUzNTMy
NjY0MDQ4Njk5Li5hYTg2Y2I0YjY0YjcyMmYwZDVkMTljZDFmODgxY2NhOGVlOWJlOGJlIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0hlYXBMb2NhdGlvbi5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdIZWFwTG9jYXRpb24uY3BwCkBAIC0xODAs
MTIgKzE4MCw4IEBAIHZvaWQgcHJpbnRJbnRlcm5hbChQcmludFN0cmVhbSYgb3V0LCBMb2NhdGlv
bktpbmQga2luZCkKICAgICAgICAgb3V0LnByaW50KCJNYXBCdWNrZXRWYWx1ZUxvYyIpOwogICAg
ICAgICByZXR1cm47CiAKLSAgICBjYXNlIE1hcEJ1Y2tldE1hcE5leHRMb2M6Ci0gICAgICAgIG91
dC5wcmludCgiTWFwQnVja2V0TWFwTmV4dExvYyIpOwotICAgICAgICByZXR1cm47Ci0KLSAgICBj
YXNlIE1hcEJ1Y2tldFNldE5leHRMb2M6Ci0gICAgICAgIG91dC5wcmludCgiTWFwQnVja2V0U2V0
TmV4dExvYyIpOworICAgIGNhc2UgTWFwQnVja2V0TmV4dExvYzoKKyAgICAgICAgb3V0LnByaW50
KCJNYXBCdWNrZXROZXh0TG9jIik7CiAgICAgICAgIHJldHVybjsKIAogICAgIGNhc2UgV2Vha01h
cEdldExvYzoKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHSGVhcExv
Y2F0aW9uLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0hlYXBMb2NhdGlvbi5oCmlu
ZGV4IGE3ZTE0MjdmMGFkZjQ0ZjY1ZGQxZDE2OTc0ZWJlMmRlMTYwYjRjZDIuLmM4MjJiOGZhYzcy
MzNmMDU3YTU3Yzk4YjYxZDMyNzk5OWVhOGE3NjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9kZmcvREZHSGVhcExvY2F0aW9uLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2RmZy9ERkdIZWFwTG9jYXRpb24uaApAQCAtNjcsOCArNjcsNyBAQCBlbnVtIExvY2F0aW9uS2lu
ZCB7CiAgICAgTWFwQnVja2V0SGVhZExvYywKICAgICBNYXBCdWNrZXRWYWx1ZUxvYywKICAgICBN
YXBCdWNrZXRLZXlMb2MsCi0gICAgTWFwQnVja2V0TWFwTmV4dExvYywKLSAgICBNYXBCdWNrZXRT
ZXROZXh0TG9jLAorICAgIE1hcEJ1Y2tldE5leHRMb2MsCiAgICAgV2Vha01hcEdldExvYywKICAg
ICBET01TdGF0ZUxvYywKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZn
L0RGR05vZGUuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHTm9kZS5oCmluZGV4IDA1
OTUwYWVjOGRlNzdiZjg4MTY5Y2JkYWVmZTdlYWM4MzBkNTkwYTkuLmUwOTcwOTVjYjI2NmI3OWY0
NWVlY2U0MmJmM2U1NWVmNjBlZTBlY2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9kZmcvREZHTm9kZS5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHTm9kZS5o
CkBAIC0yNjY5LDcgKzI2NjksNyBAQCBzdHJ1Y3QgTm9kZSB7CiAKICAgICBib29sIGhhc0J1Y2tl
dE93bmVyVHlwZSgpCiAgICAgewotICAgICAgICByZXR1cm4gb3AoKSA9PSBHZXRNYXBCdWNrZXRO
ZXh0OworICAgICAgICByZXR1cm4gb3AoKSA9PSBHZXRNYXBCdWNrZXROZXh0IHx8IG9wKCkgPT0g
TG9hZEtleUZyb21NYXBCdWNrZXQgfHwgb3AoKSA9PSBMb2FkVmFsdWVGcm9tTWFwQnVja2V0Owog
ICAgIH0KIAogICAgIEJ1Y2tldE93bmVyVHlwZSBidWNrZXRPd25lclR5cGUoKQpkaWZmIC0tZ2l0
IGEvSlNUZXN0cy9DaGFuZ2VMb2cgYi9KU1Rlc3RzL0NoYW5nZUxvZwppbmRleCBlNjM2NjU2ZDk3
MDMyNzM4N2VhMDBkODMzMzNhMmIyMGVmZTAwMDJkLi5hNWQ0NjIyOWU4ZmUyMjRhNWZkYjlhMjA4
OGI4MzE1YWMwN2JlMTQzIDEwMDY0NAotLS0gYS9KU1Rlc3RzL0NoYW5nZUxvZworKysgYi9KU1Rl
c3RzL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDI1IEBACiAyMDE3LTExLTIxICBZdXN1a2UgU3V6dWtp
ICA8dXRhdGFuZS50ZWFAZ21haWwuY29tPgogCisgICAgICAgIFtERkddIEludHJvZHVjZSB7U2V0
LE1hcCxXZWFrTWFwfUZpZWxkcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTc5OTI1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiBzdHJlc3MvbWFwLXNldC1jbG9iYmVyLW1hcC1nZXQuanM6IEFkZGVkLgor
ICAgICAgICAoc2hvdWxkQmUpOgorICAgICAgICAodGVzdCk6CisgICAgICAgICogc3RyZXNzL21h
cC1zZXQtZG9lcy1ub3QtY2xvYmJlci1zZXQtaGFzLmpzOiBBZGRlZC4KKyAgICAgICAgKHNob3Vs
ZEJlKToKKyAgICAgICAgKiBzdHJlc3MvbWFwLXNldC1kb2VzLW5vdC1jbG9iYmVyLXdlYWstbWFw
LWdldC5qczogQWRkZWQuCisgICAgICAgIChzaG91bGRCZSk6CisgICAgICAgICh0ZXN0KToKKyAg
ICAgICAgKiBzdHJlc3Mvc2V0LWFkZC1jbG9iYmVyLXNldC1oYXMuanM6IEFkZGVkLgorICAgICAg
ICAoc2hvdWxkQmUpOgorICAgICAgICAqIHN0cmVzcy9zZXQtYWRkLWRvZXMtbm90LWNsb2JiZXIt
bWFwLWdldC5qczogQWRkZWQuCisgICAgICAgIChzaG91bGRCZSk6CisKKzIwMTctMTEtMjEgIFl1
c3VrZSBTdXp1a2kgIDx1dGF0YW5lLnRlYUBnbWFpbC5jb20+CisKICAgICAgICAgW0RGR11bRlRM
XSBTdXBwb3J0IE1hcFNldCAvIFNldEFkZCBpbnRyaW5zaWNzCiAgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzk4NTgKIApkaWZmIC0tZ2l0IGEvSlNUZXN0
cy9zdHJlc3MvbWFwLXNldC1jbG9iYmVyLW1hcC1nZXQuanMgYi9KU1Rlc3RzL3N0cmVzcy9tYXAt
c2V0LWNsb2JiZXItbWFwLWdldC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wNDNkY2Y4ZDY5M2M2MDI0MGRlYmFm
ZmIyZGRjOGQ2NzBlOTQ3YzM5Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy9zdHJlc3MvbWFw
LXNldC1jbG9iYmVyLW1hcC1nZXQuanMKQEAgLTAsMCArMSwxOCBAQAorZnVuY3Rpb24gc2hvdWxk
QmUoYWN0dWFsLCBleHBlY3RlZCkKK3sKKyAgICBpZiAoYWN0dWFsICE9PSBleHBlY3RlZCkKKyAg
ICAgICAgdGhyb3cgbmV3IEVycm9yKCdiYWQgdmFsdWU6ICcgKyBhY3R1YWwpOworfQorCitmdW5j
dGlvbiB0ZXN0KCkKK3sKKyAgICB2YXIgbWFwID0gbmV3IE1hcCgpOworICAgIG1hcC5zZXQoNDIs
IDQyKTsKKyAgICB2YXIgcmVzMSA9IG1hcC5nZXQoNDIpOworICAgIG1hcC5zZXQoNDIsIDEwMCk7
CisgICAgdmFyIHJlczIgPSBtYXAuZ2V0KDQyKTsKKyAgICByZXR1cm4gcmVzMSArIHJlczI7Cit9
CisKK2ZvciAodmFyIGkgPSAwOyBpIDwgMWU2OyArK2kpCisgICAgc2hvdWxkQmUodGVzdCgpLCAx
NDIpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy9zdHJlc3MvbWFwLXNldC1kb2VzLW5vdC1jbG9iYmVy
LXNldC1oYXMuanMgYi9KU1Rlc3RzL3N0cmVzcy9tYXAtc2V0LWRvZXMtbm90LWNsb2JiZXItc2V0
LWhhcy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5lMTFiOWQyZDNiOGNmMDIxZDM4MDAyYzgyNTI5ZGVjZjU4ODA0
YzBiCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy9zdHJlc3MvbWFwLXNldC1kb2VzLW5vdC1j
bG9iYmVyLXNldC1oYXMuanMKQEAgLTAsMCArMSwxOSBAQAorZnVuY3Rpb24gc2hvdWxkQmUoYWN0
dWFsLCBleHBlY3RlZCkKK3sKKyAgICBpZiAoYWN0dWFsICE9PSBleHBlY3RlZCkKKyAgICAgICAg
dGhyb3cgbmV3IEVycm9yKCdiYWQgdmFsdWU6ICcgKyBhY3R1YWwpOworfQorCitmdW5jdGlvbiB0
ZXN0KCkKK3sKKyAgICB2YXIgbWFwID0gbmV3IE1hcCgpOworICAgIHZhciBzZXQgPSBuZXcgU2V0
KCk7CisgICAgc2V0LmFkZCg0Mik7CisgICAgdmFyIHJlczEgPSBzZXQuaGFzKDQyKTsKKyAgICBt
YXAuc2V0KDQyLCA0Mik7CisgICAgdmFyIHJlczIgPSBzZXQuaGFzKDQyKTsKKyAgICByZXR1cm4g
cmVzMSArIHJlczI7Cit9CisKK2ZvciAodmFyIGkgPSAwOyBpIDwgMWU2OyArK2kpCisgICAgc2hv
dWxkQmUodGVzdCgpLCAyKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvc3RyZXNzL21hcC1zZXQtZG9l
cy1ub3QtY2xvYmJlci13ZWFrLW1hcC1nZXQuanMgYi9KU1Rlc3RzL3N0cmVzcy9tYXAtc2V0LWRv
ZXMtbm90LWNsb2JiZXItd2Vhay1tYXAtZ2V0LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjU2NDk5ZjZiY2Q0YTVh
M2RlN2M0NGYyOTM0ODFhM2Y5MzJkYzNlM2MKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3N0
cmVzcy9tYXAtc2V0LWRvZXMtbm90LWNsb2JiZXItd2Vhay1tYXAtZ2V0LmpzCkBAIC0wLDAgKzEs
MjYgQEAKK2Z1bmN0aW9uIHNob3VsZEJlKGFjdHVhbCwgZXhwZWN0ZWQpCit7CisgICAgaWYgKGFj
dHVhbCAhPT0gZXhwZWN0ZWQpCisgICAgICAgIHRocm93IG5ldyBFcnJvcignYmFkIHZhbHVlOiAn
ICsgYWN0dWFsKTsKK30KKworZnVuY3Rpb24gdGVzdCgpCit7CisgICAgdmFyIG1hcCA9IG5ldyBN
YXAoKTsKKyAgICB2YXIgd2Vha01hcCA9IG5ldyBXZWFrTWFwKCk7CisgICAgdmFyIGtleSA9IHt9
OworCisgICAgdmFyIHJlczEgPSB3ZWFrTWFwLmdldChrZXkpOworICAgIG1hcC5zZXQoa2V5LCBr
ZXkpOworICAgIHZhciByZXMyID0gd2Vha01hcC5nZXQoa2V5KTsKKyAgICB3ZWFrTWFwLnNldChr
ZXksIDQyKTsKKyAgICB2YXIgcmVzMyA9IHdlYWtNYXAuZ2V0KGtleSk7CisgICAgcmV0dXJuIFt1
bmRlZmluZWQsIHVuZGVmaW5lZCwgNDJdOworfQorCitmb3IgKHZhciBpID0gMDsgaSA8IDFlNTsg
KytpKSB7CisgICAgdmFyIFtyZXMxLCByZXMyLCByZXMzXSA9IHRlc3QoKTsKKyAgICBzaG91bGRC
ZShyZXMxLCB1bmRlZmluZWQpOworICAgIHNob3VsZEJlKHJlczIsIHVuZGVmaW5lZCk7CisgICAg
c2hvdWxkQmUocmVzMywgNDIpOworfQpkaWZmIC0tZ2l0IGEvSlNUZXN0cy9zdHJlc3Mvc2V0LWFk
ZC1jbG9iYmVyLXNldC1oYXMuanMgYi9KU1Rlc3RzL3N0cmVzcy9zZXQtYWRkLWNsb2JiZXItc2V0
LWhhcy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi4xZjJkYzlhODhkYmRkZjg2ZjI3MGY0NzcyMTZhZWFkY2IzYjNi
ZGViCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy9zdHJlc3Mvc2V0LWFkZC1jbG9iYmVyLXNl
dC1oYXMuanMKQEAgLTAsMCArMSwyMCBAQAorZnVuY3Rpb24gc2hvdWxkQmUoYWN0dWFsLCBleHBl
Y3RlZCkKK3sKKyAgICBpZiAoYWN0dWFsICE9PSBleHBlY3RlZCkKKyAgICAgICAgdGhyb3cgbmV3
IEVycm9yKCdiYWQgdmFsdWU6ICcgKyBhY3R1YWwpOworfQorCitmdW5jdGlvbiB0ZXN0KCkKK3sK
KyAgICB2YXIgc2V0ID0gbmV3IFNldCgpOworICAgIHZhciByZXMxID0gc2V0Lmhhcyg0Mik7Cisg
ICAgc2V0LmFkZCg0Mik7CisgICAgdmFyIHJlczIgPSBzZXQuaGFzKDQyKTsKKyAgICByZXR1cm4g
W3JlczEsIHJlczJdOworfQorCitmb3IgKHZhciBpID0gMDsgaSA8IDFlNjsgKytpKSB7CisgICAg
dmFyIFtyZXMxLCByZXMyXSA9IHRlc3QoKTsKKyAgICBzaG91bGRCZShyZXMxLCBmYWxzZSk7Cisg
ICAgc2hvdWxkQmUocmVzMiwgdHJ1ZSk7Cit9CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3N0cmVzcy9z
ZXQtYWRkLWRvZXMtbm90LWNsb2JiZXItbWFwLWdldC5qcyBiL0pTVGVzdHMvc3RyZXNzL3NldC1h
ZGQtZG9lcy1ub3QtY2xvYmJlci1tYXAtZ2V0LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjEyMGU4ZWQ3OTFkYTlm
NThmNDIyMzM2YzM2MjQwNWZmMzdlMTQ2ZGIKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3N0
cmVzcy9zZXQtYWRkLWRvZXMtbm90LWNsb2JiZXItbWFwLWdldC5qcwpAQCAtMCwwICsxLDE5IEBA
CitmdW5jdGlvbiBzaG91bGRCZShhY3R1YWwsIGV4cGVjdGVkKQoreworICAgIGlmIChhY3R1YWwg
IT09IGV4cGVjdGVkKQorICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2JhZCB2YWx1ZTogJyArIGFj
dHVhbCk7Cit9CisKK2Z1bmN0aW9uIHRlc3QoKQoreworICAgIHZhciBtYXAgPSBuZXcgTWFwKCk7
CisgICAgdmFyIHNldCA9IG5ldyBTZXQoKTsKKyAgICBtYXAuc2V0KDQyLCA0Mik7CisgICAgdmFy
IHJlczEgPSBtYXAuZ2V0KDQyKTsKKyAgICBzZXQuYWRkKDQyKTsKKyAgICB2YXIgcmVzMiA9IG1h
cC5nZXQoNDIpOworICAgIHJldHVybiByZXMxICsgcmVzMjsKK30KKworZm9yICh2YXIgaSA9IDA7
IGkgPCAxZTY7ICsraSkKKyAgICBzaG91bGRCZSh0ZXN0KCksIDg0KTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>