<?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>185711</bug_id>
          
          <creation_ts>2018-05-16 20:21:14 -0700</creation_ts>
          <short_desc>[LFC] Move replaced logic from Layout::Box to Layout::Replaced class</short_desc>
          <delta_ts>2018-05-17 07:13:01 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="alan">zalan</reporter>
          <assigned_to name="alan">zalan</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>koivisto</cc>
    
    <cc>sam</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1424592</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2018-05-16 20:21:14 -0700</bug_when>
    <thetext>and have an optional member in Layout::Box</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1424597</commentid>
    <comment_count>1</comment_count>
      <attachid>340552</attachid>
    <who name="alan">zalan</who>
    <bug_when>2018-05-16 20:46:24 -0700</bug_when>
    <thetext>Created attachment 340552
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1424606</commentid>
    <comment_count>2</comment_count>
      <attachid>340553</attachid>
    <who name="alan">zalan</who>
    <bug_when>2018-05-16 21:50:49 -0700</bug_when>
    <thetext>Created attachment 340553
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1424707</commentid>
    <comment_count>3</comment_count>
      <attachid>340553</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-05-17 07:11:14 -0700</bug_when>
    <thetext>Comment on attachment 340553
Patch

Clearing flags on attachment: 340553

Committed r231895: &lt;https://trac.webkit.org/changeset/231895&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1424708</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-05-17 07:11:15 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1424709</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-05-17 07:13:01 -0700</bug_when>
    <thetext>&lt;rdar://problem/40330365&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>340552</attachid>
            <date>2018-05-16 20:46:24 -0700</date>
            <delta_ts>2018-05-16 21:50:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-185711-20180516204624.patch</filename>
            <type>text/plain</type>
            <size>11612</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjMxODU0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDUxYjZiYzc4OGEwZTEy
NmNmNzFhMDRkZThkNzg0MWFhZmJkNWJhOS4uZjI3MDFjZDBmODBlMjM0MjhhNzc4ZDdhZTkyMmNk
MjA1NzRmZWRjMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDE4LTA1LTE2ICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW0xGQ10gTW92ZSByZXBsYWNl
ZCBsb2dpYyBmcm9tIExheW91dDo6Qm94IHRvIExheW91dDo6UmVwbGFjZWQgY2xhc3MKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NTcxMQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU291cmNlcy50eHQ6
CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAq
IGxheW91dC9Gb3JtYXR0aW5nQ29udGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6
OkZvcm1hdHRpbmdDb250ZXh0Ojpjb21wdXRlT3V0T2ZGbG93V2lkdGggY29uc3QpOgorICAgICAg
ICAoV2ViQ29yZTo6TGF5b3V0OjpGb3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0ZUZsb2F0aW5nV2lk
dGggY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpGb3JtYXR0aW5nQ29udGV4dDo6
Y29tcHV0ZU91dE9mRmxvd0hlaWdodCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6
OkZvcm1hdHRpbmdDb250ZXh0Ojpjb21wdXRlSW5GbG93UmVwbGFjZWRXaWR0aCBjb25zdCk6Cisg
ICAgICAgICogbGF5b3V0L2Jsb2NrZm9ybWF0dGluZy9CbG9ja0Zvcm1hdHRpbmdDb250ZXh0LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6QmxvY2tGb3JtYXR0aW5nQ29udGV4dDo6Y29t
cHV0ZUluRmxvd1dpZHRoIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6QmxvY2tG
b3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0ZUluRmxvd0hlaWdodCBjb25zdCk6CisgICAgICAgICog
bGF5b3V0L2xheW91dHRyZWUvTGF5b3V0Qm94LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxheW91
dDo6Qm94Ojppc1JlcGxhY2VkIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6Okxh
eW91dDo6Qm94OjpoYXNJbnRyaW5zaWNXaWR0aCBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChX
ZWJDb3JlOjpMYXlvdXQ6OkJveDo6aGFzSW50cmluc2ljSGVpZ2h0IGNvbnN0KTogRGVsZXRlZC4K
KyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6Qm94OjpoYXNJbnRyaW5zaWNSYXRpbyBjb25zdCk6
IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OkJveDo6aW50cmluc2ljV2lkdGgg
Y29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpCb3g6OmludHJpbnNp
Y0hlaWdodCBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OkJveDo6
aW50cmluc2ljUmF0aW8gY29uc3QpOiBEZWxldGVkLgorICAgICAgICAqIGxheW91dC9sYXlvdXR0
cmVlL0xheW91dEJveC5oOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpCb3g6OnJlcGxhY2Vk
IGNvbnN0KToKKwogMjAxOC0wNS0xNCAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWls
LmNvbT4KIAogICAgICAgICBbV2luXSBVc2UgQysrMTcgaW4gTVNWQwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvU291cmNlcy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAppbmRl
eCA5YzkzOGE1NDZhZjU3MjE4ZWU3NDc5Y2MwZDM2YjQyNjY0NDlmMWIwLi5kYjMxMDY1ZTJmZTdh
MjZjMDgzMTE5NGYzM2ViYzY3YjhkMzI2YTdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9T
b3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dApAQCAtMTIzMSw2ICsx
MjMxLDcgQEAgbGF5b3V0L2xheW91dHRyZWUvTGF5b3V0Qm94LmNwcAogbGF5b3V0L2xheW91dHRy
ZWUvTGF5b3V0Q29udGFpbmVyLmNwcAogbGF5b3V0L2xheW91dHRyZWUvTGF5b3V0SW5saW5lQm94
LmNwcAogbGF5b3V0L2xheW91dHRyZWUvTGF5b3V0SW5saW5lQ29udGFpbmVyLmNwcAorbGF5b3V0
L2xheW91dHRyZWUvTGF5b3V0UmVwbGFjZWQuY3BwCiBsYXlvdXQvbGF5b3V0dHJlZS9MYXlvdXRU
cmVlQnVpbGRlci5jcHAKIAogbG9hZGVyL0NvbnRlbnRGaWx0ZXIuY3BwCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNTM0YjQ3MGRh
ZWU3MTQ1NDE0YTAxMTllODg1YTNiZDBhNzFmZGZhOS4uNzA2NTc1OWU1NzA5ZjYzODZkMjQwZjQ1
NGJiOWQ1MTczZGUzYzNmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagpAQCAtNTcyNyw2ICs1NzI3LDggQEAKIAkJMTExMDBGQ0EyMDky
ODY4RDAwODFBQTZDIC8qIExheW91dEFuY2VzdG9ySXRlcmF0b3IuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
TGF5b3V0QW5jZXN0b3JJdGVyYXRvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkx
MTEwMEZENTIwOTUxNERFMDA4MUFBNkMgLyogTGF5b3V0VHJlZUJ1aWxkZXIuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gTGF5b3V0VHJlZUJ1aWxkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQkxMTEwMEZENzIwOTUxNERGMDA4MUFBNkMgLyogTGF5b3V0VHJlZUJ1aWxkZXIuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gTGF5b3V0VHJlZUJ1aWxkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMTExQzYxNTYyMEFEMUFFMTAwNUI4MkZBIC8qIExheW91dFJlcGxhY2VkLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IExheW91dFJlcGxhY2VkLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTExMUM2MTU3MjBBRDFBRTEwMDVCODJGQSAvKiBMYXlvdXRSZXBsYWNlZC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBMYXlvdXRSZXBsYWNlZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTExMjNBRkQ5MjA5QUJCMjAwMDczNkFDQyAvKiBCbG9ja0ludmFsaWRhdGlvbi5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBCbG9ja0ludmFsaWRhdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQkxMTIzQUZEQTIwOUFCQjIwMDA3MzZBQ0MgLyogQmxvY2tJbnZhbGlkYXRpb24uY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gQmxvY2tJbnZhbGlkYXRpb24uY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQkxMTIzQUZEQzIwOUFCQkJBMDA3MzZBQ0MgLyogSW5saW5lSW52YWxp
ZGF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElubGluZUludmFsaWRhdGlvbi5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwpAQCAtMTU3MDAsNiArMTU3MDIsOCBAQAogCQkJCTExOTlGQTRFMjA4
RTM4OTkwMDIzNThDQyAvKiBMYXlvdXRJbmxpbmVDb250YWluZXIuY3BwICovLAogCQkJCTExOTlG
QTREMjA4RTM4OTkwMDIzNThDQyAvKiBMYXlvdXRJbmxpbmVDb250YWluZXIuaCAqLywKIAkJCQkx
MTEwMEZDNzIwOTI3NjRDMDA4MUFBNkMgLyogTGF5b3V0SXRlcmF0b3IuaCAqLywKKwkJCQkxMTFD
NjE1NzIwQUQxQUUxMDA1QjgyRkEgLyogTGF5b3V0UmVwbGFjZWQuY3BwICovLAorCQkJCTExMUM2
MTU2MjBBRDFBRTEwMDVCODJGQSAvKiBMYXlvdXRSZXBsYWNlZC5oICovLAogCQkJCTExMTAwRkQ1
MjA5NTE0REUwMDgxQUE2QyAvKiBMYXlvdXRUcmVlQnVpbGRlci5jcHAgKi8sCiAJCQkJMTExMDBG
RDcyMDk1MTRERjAwODFBQTZDIC8qIExheW91dFRyZWVCdWlsZGVyLmggKi8sCiAJCQkpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L0Zvcm1hdHRpbmdDb250ZXh0LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2xheW91dC9Gb3JtYXR0aW5nQ29udGV4dC5jcHAKaW5kZXggOGRmOWRmZjQz
NTIyNTgyNTk4M2NkOTA2MjM5YTU2ZGI2MTgxZmQxZC4uYmIzMmY3ZDI1YWE2MGU2YjkxMDE4NTU5
MzBkYWRhMjA3MzRhOTExYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L0Zvcm1h
dHRpbmdDb250ZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvRm9ybWF0dGluZ0Nv
bnRleHQuY3BwCkBAIC04MCw3ICs4MCw3IEBAIHZvaWQgRm9ybWF0dGluZ0NvbnRleHQ6OmNvbXB1
dGVIZWlnaHQoTGF5b3V0Q29udGV4dCYgbGF5b3V0Q29udGV4dCwgY29uc3QgQm94JiBsCiAKIHZv
aWQgRm9ybWF0dGluZ0NvbnRleHQ6OmNvbXB1dGVPdXRPZkZsb3dXaWR0aChMYXlvdXRDb250ZXh0
JiBsYXlvdXRDb250ZXh0LCBjb25zdCBCb3gmIGxheW91dEJveCwgRGlzcGxheTo6Qm94JiBkaXNw
bGF5Qm94KSBjb25zdAogewotICAgIGlmICghbGF5b3V0Qm94LmlzUmVwbGFjZWQoKSkgeworICAg
IGlmICghbGF5b3V0Qm94LnJlcGxhY2VkKCkpIHsKICAgICAgICAgY29tcHV0ZU91dE9mRmxvd05v
blJlcGxhY2VkV2lkdGgobGF5b3V0Q29udGV4dCwgbGF5b3V0Qm94LCBkaXNwbGF5Qm94KTsKICAg
ICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTg5LDcgKzg5LDcgQEAgdm9pZCBGb3JtYXR0aW5nQ29u
dGV4dDo6Y29tcHV0ZU91dE9mRmxvd1dpZHRoKExheW91dENvbnRleHQmIGxheW91dENvbnRleHQs
IGNvbnMKIAogdm9pZCBGb3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0ZUZsb2F0aW5nV2lkdGgoTGF5
b3V0Q29udGV4dCYgbGF5b3V0Q29udGV4dCwgY29uc3QgQm94JiBsYXlvdXRCb3gsIERpc3BsYXk6
OkJveCYgZGlzcGxheUJveCkgY29uc3QKIHsKLSAgICBpZiAoIWxheW91dEJveC5pc1JlcGxhY2Vk
KCkpIHsKKyAgICBpZiAoIWxheW91dEJveC5yZXBsYWNlZCgpKSB7CiAgICAgICAgIEFTU0VSVF9O
T1RfUkVBQ0hFRCgpOwogICAgICAgICByZXR1cm47CiAgICAgfQpAQCAtOTgsNyArOTgsNyBAQCB2
b2lkIEZvcm1hdHRpbmdDb250ZXh0Ojpjb21wdXRlRmxvYXRpbmdXaWR0aChMYXlvdXRDb250ZXh0
JiBsYXlvdXRDb250ZXh0LCBjb25zdAogCiB2b2lkIEZvcm1hdHRpbmdDb250ZXh0Ojpjb21wdXRl
T3V0T2ZGbG93SGVpZ2h0KExheW91dENvbnRleHQmIGxheW91dENvbnRleHQsIGNvbnN0IEJveCYg
bGF5b3V0Qm94LCBEaXNwbGF5OjpCb3gmIGRpc3BsYXlCb3gpIGNvbnN0CiB7Ci0gICAgaWYgKCFs
YXlvdXRCb3guaXNSZXBsYWNlZCgpKSB7CisgICAgaWYgKCFsYXlvdXRCb3gucmVwbGFjZWQoKSkg
ewogICAgICAgICBjb21wdXRlT3V0T2ZGbG93Tm9uUmVwbGFjZWRIZWlnaHQobGF5b3V0Q29udGV4
dCwgbGF5b3V0Qm94LCBkaXNwbGF5Qm94KTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTIz
NCwyMSArMjM0LDIzIEBAIHZvaWQgRm9ybWF0dGluZ0NvbnRleHQ6OmNvbXB1dGVJbkZsb3dSZXBs
YWNlZFdpZHRoKExheW91dENvbnRleHQmLCBjb25zdCBCb3gmIGxhCiAgICAgYXV0byBoZWlnaHQg
PSBzdHlsZS5sb2dpY2FsSGVpZ2h0KCk7CiAKICAgICBMYXlvdXRVbml0IGNvbXB1dGVkV2lkdGhW
YWx1ZTsKKyAgICBhdXRvIHJlcGxhY2VkID0gbGF5b3V0Qm94LnJlcGxhY2VkKCk7CisgICAgQVNT
RVJUKHJlcGxhY2VkKTsKIAotICAgIGlmICh3aWR0aC5pc0F1dG8oKSAmJiBoZWlnaHQuaXNBdXRv
KCkgJiYgbGF5b3V0Qm94Lmhhc0ludHJpbnNpY1dpZHRoKCkpIHsKKyAgICBpZiAod2lkdGguaXNB
dXRvKCkgJiYgaGVpZ2h0LmlzQXV0bygpICYmIHJlcGxhY2VkLT5oYXNJbnRyaW5zaWNXaWR0aCgp
KSB7CiAgICAgICAgIC8vICMxCi0gICAgICAgIGNvbXB1dGVkV2lkdGhWYWx1ZSA9IGxheW91dEJv
eC5pbnRyaW5zaWNXaWR0aCgpOwotICAgIH0gZWxzZSBpZiAod2lkdGguaXNBdXRvKCkgJiYgKGhl
aWdodC5pc0NhbGN1bGF0ZWQoKSB8fCBsYXlvdXRCb3guaGFzSW50cmluc2ljSGVpZ2h0KCkpICYm
IGxheW91dEJveC5oYXNJbnRyaW5zaWNSYXRpbygpKSB7CisgICAgICAgIGNvbXB1dGVkV2lkdGhW
YWx1ZSA9IHJlcGxhY2VkLT5pbnRyaW5zaWNXaWR0aCgpOworICAgIH0gZWxzZSBpZiAod2lkdGgu
aXNBdXRvKCkgJiYgKGhlaWdodC5pc0NhbGN1bGF0ZWQoKSB8fCByZXBsYWNlZC0+aGFzSW50cmlu
c2ljSGVpZ2h0KCkpICYmIHJlcGxhY2VkLT5oYXNJbnRyaW5zaWNSYXRpbygpKSB7CiAgICAgICAg
IC8vICMyCi0gICAgICAgIGF1dG8gdXNlZEhlaWdodCA9IGhlaWdodC5pc0NhbGN1bGF0ZWQoKSA/
IExheW91dFVuaXQoaGVpZ2h0LnZhbHVlKCkpIDogbGF5b3V0Qm94LmludHJpbnNpY0hlaWdodCgp
OyAgIAotICAgICAgICBjb21wdXRlZFdpZHRoVmFsdWUgPSB1c2VkSGVpZ2h0ICogbGF5b3V0Qm94
LmludHJpbnNpY1JhdGlvKCk7Ci0gICAgfSBlbHNlIGlmICh3aWR0aC5pc0F1dG8oKSAmJiBoZWln
aHQuaXNBdXRvKCkgJiYgbGF5b3V0Qm94Lmhhc0ludHJpbnNpY1JhdGlvKCkpIHsKKyAgICAgICAg
YXV0byB1c2VkSGVpZ2h0ID0gaGVpZ2h0LmlzQ2FsY3VsYXRlZCgpID8gTGF5b3V0VW5pdChoZWln
aHQudmFsdWUoKSkgOiByZXBsYWNlZC0+aW50cmluc2ljSGVpZ2h0KCk7ICAgCisgICAgICAgIGNv
bXB1dGVkV2lkdGhWYWx1ZSA9IHVzZWRIZWlnaHQgKiByZXBsYWNlZC0+aW50cmluc2ljUmF0aW8o
KTsKKyAgICB9IGVsc2UgaWYgKHdpZHRoLmlzQXV0bygpICYmIGhlaWdodC5pc0F1dG8oKSAmJiBy
ZXBsYWNlZC0+aGFzSW50cmluc2ljUmF0aW8oKSkgewogICAgICAgICAvLyAjMwogICAgICAgICAv
LyBGSVhNRTogdW5kZWZpbmVkIGJ1dCBzdXJlbHkgZG9hYmxlLgogICAgICAgICBBU1NFUlRfTk9U
X1JFQUNIRUQoKTsKLSAgICB9IGVsc2UgaWYgKHdpZHRoLmlzQXV0bygpICYmIGxheW91dEJveC5o
YXNJbnRyaW5zaWNXaWR0aCgpKSB7CisgICAgfSBlbHNlIGlmICh3aWR0aC5pc0F1dG8oKSAmJiBy
ZXBsYWNlZC0+aGFzSW50cmluc2ljV2lkdGgoKSkgewogICAgICAgICAvLyAjNAotICAgICAgICBj
b21wdXRlZFdpZHRoVmFsdWUgPSBsYXlvdXRCb3guaW50cmluc2ljV2lkdGgoKTsKKyAgICAgICAg
Y29tcHV0ZWRXaWR0aFZhbHVlID0gcmVwbGFjZWQtPmludHJpbnNpY1dpZHRoKCk7CiAgICAgfSBl
bHNlIHsKICAgICAgICAgLy8gIzUKICAgICAgICAgY29tcHV0ZWRXaWR0aFZhbHVlID0gMzAwOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Jsb2NrZm9ybWF0dGluZy9CbG9ja0Zv
cm1hdHRpbmdDb250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9ibG9ja2Zvcm1hdHRp
bmcvQmxvY2tGb3JtYXR0aW5nQ29udGV4dC5jcHAKaW5kZXggZTc4YjU5MmE4YTE4MGQxZTY2NzJh
MTMyZjMyNmQzZGJlYmE0NDlmMC4uYzU3OWI2NTk3MGVkZmQxMjdlZGZkOGNjN2VjMTUxZjg0Nzc2
OTYwMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Jsb2NrZm9ybWF0dGluZy9C
bG9ja0Zvcm1hdHRpbmdDb250ZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvYmxv
Y2tmb3JtYXR0aW5nL0Jsb2NrRm9ybWF0dGluZ0NvbnRleHQuY3BwCkBAIC0xNDUsNyArMTQ1LDcg
QEAgdm9pZCBCbG9ja0Zvcm1hdHRpbmdDb250ZXh0Ojpjb21wdXRlU3RhdGljUG9zaXRpb24oTGF5
b3V0Q29udGV4dCYgbGF5b3V0Q29udGV4dCwKIAogdm9pZCBCbG9ja0Zvcm1hdHRpbmdDb250ZXh0
Ojpjb21wdXRlSW5GbG93V2lkdGgoTGF5b3V0Q29udGV4dCYgbGF5b3V0Q29udGV4dCwgY29uc3Qg
Qm94JiBsYXlvdXRCb3gsIERpc3BsYXk6OkJveCYgZGlzcGxheUJveCkgY29uc3QKIHsKLSAgICBp
ZiAoIWxheW91dEJveC5pc1JlcGxhY2VkKCkpIHsKKyAgICBpZiAoIWxheW91dEJveC5yZXBsYWNl
ZCgpKSB7CiAgICAgICAgIGNvbXB1dGVJbkZsb3dOb25SZXBsYWNlZFdpZHRoKGxheW91dENvbnRl
eHQsIGxheW91dEJveCwgZGlzcGxheUJveCk7CiAgICAgICAgIHJldHVybjsKICAgICB9CkBAIC0x
ODMsNyArMTgzLDcgQEAgdm9pZCBCbG9ja0Zvcm1hdHRpbmdDb250ZXh0Ojpjb21wdXRlSW5GbG93
Tm9uUmVwbGFjZWRXaWR0aChMYXlvdXRDb250ZXh0JiBsYXlvdXQKIAogdm9pZCBCbG9ja0Zvcm1h
dHRpbmdDb250ZXh0Ojpjb21wdXRlSW5GbG93SGVpZ2h0KExheW91dENvbnRleHQmIGxheW91dENv
bnRleHQsIGNvbnN0IEJveCYgbGF5b3V0Qm94LCBEaXNwbGF5OjpCb3gmIGRpc3BsYXlCb3gpIGNv
bnN0CiB7Ci0gICAgaWYgKCFsYXlvdXRCb3guaXNSZXBsYWNlZCgpKSB7CisgICAgaWYgKCFsYXlv
dXRCb3gucmVwbGFjZWQoKSkgewogICAgICAgICBjb21wdXRlSW5GbG93Tm9uUmVwbGFjZWRIZWln
aHQobGF5b3V0Q29udGV4dCwgbGF5b3V0Qm94LCBkaXNwbGF5Qm94KTsKICAgICAgICAgcmV0dXJu
OwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9sYXlvdXR0cmVlL0xh
eW91dEJveC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvbGF5b3V0dHJlZS9MYXlvdXRCb3gu
Y3BwCmluZGV4IDk0MGY5MDhhOTAzYTA4ZjIzOGY2ODU0NTRjNDk5ZWUyZGEyMTM1MTcuLjQ0Nzk3
YWY4ZWM3MWEwMjhlNjhiYWVlMTNkMzEyODJmNTRmMGY2NWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xheW91dC9sYXlvdXR0cmVlL0xheW91dEJveC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvbGF5b3V0L2xheW91dHRyZWUvTGF5b3V0Qm94LmNwcApAQCAtMTc5LDEyICsxNzksNiBAQCBi
b29sIEJveDo6aXNJbml0aWFsQ29udGFpbmluZ0Jsb2NrKCkgY29uc3QKICAgICByZXR1cm4gIXBh
cmVudCgpOwogfQogCi1ib29sIEJveDo6aXNSZXBsYWNlZCgpIGNvbnN0Ci17Ci0gICAgLy8gSFRN
TEF1ZGlvRWxlbWVudCB8fCBIVE1MQ2FudmFzRWxlbWVudCB8fCBIVE1MRW1iZWRFbGVtZW50IHx8
IEhUTUxJRnJhbWVFbGVtZW50IHx8IEhUTUxJbWFnZUVsZW1lbnQgfHwgSFRNTElucHV0RWxlbWVu
dCB8fCBIVE1MT2JqZWN0RWxlbWVudCB8fCBIVE1MVmlkZW9FbGVtZW50Ci0gICAgcmV0dXJuIGZh
bHNlOwotfQotCiBjb25zdCBCb3gqIEJveDo6bmV4dEluRmxvd1NpYmxpbmcoKSBjb25zdAogewog
ICAgIGlmIChhdXRvKiBuZXh0U2libGluZyA9IHRoaXMtPm5leHRTaWJsaW5nKCkpIHsKQEAgLTIz
MCwzOSArMjI0LDYgQEAgYm9vbCBCb3g6OmlzT3ZlcmZsb3dWaXNpYmxlKCkgY29uc3QKICAgICBy
ZXR1cm4gbV9zdHlsZS5vdmVyZmxvd1goKSA9PSBPVklTSUJMRSB8fCBtX3N0eWxlLm92ZXJmbG93
WSgpID09IE9WSVNJQkxFOwogfQogCi1ib29sIEJveDo6aGFzSW50cmluc2ljV2lkdGgoKSBjb25z
dAotewotICAgIHJldHVybiBmYWxzZTsKLX0KLQotYm9vbCBCb3g6Omhhc0ludHJpbnNpY0hlaWdo
dCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIGZhbHNlOwotfQotCi1ib29sIEJveDo6aGFzSW50cmlu
c2ljUmF0aW8oKSBjb25zdAotewotICAgIHJldHVybiBmYWxzZTsKLX0KLQotTGF5b3V0VW5pdCBC
b3g6OmludHJpbnNpY1dpZHRoKCkgY29uc3QKLXsKLSAgICBBU1NFUlQoaGFzSW50cmluc2ljV2lk
dGgoKSk7Ci0gICAgcmV0dXJuIHsgfTsKLX0KLQotTGF5b3V0VW5pdCBCb3g6OmludHJpbnNpY0hl
aWdodCgpIGNvbnN0Ci17Ci0gICAgQVNTRVJUKGhhc0ludHJpbnNpY0hlaWdodCgpKTsKLSAgICBy
ZXR1cm4geyB9OwotfQotCi1MYXlvdXRVbml0IEJveDo6aW50cmluc2ljUmF0aW8oKSBjb25zdAot
ewotICAgIEFTU0VSVChoYXNJbnRyaW5zaWNSYXRpbygpKTsKLSAgICByZXR1cm4geyB9OwotfQot
CiB9CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9sYXlvdXR0cmVlL0xh
eW91dEJveC5oIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2xheW91dHRyZWUvTGF5b3V0Qm94LmgK
aW5kZXggNzA0MzdjOTliNjM1ZTMwMjRjN2U3MjY2MTM3MDFlMjUyOTI1ODRjNS4uMTBmNjBhYmZm
ZTBlYTMxZWE3MWE0MTBiNGUyZmY5ZjI1MDQ5MzI4OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvbGF5b3V0L2xheW91dHRyZWUvTGF5b3V0Qm94LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5
b3V0L2xheW91dHRyZWUvTGF5b3V0Qm94LmgKQEAgLTI3LDYgKzI3LDcgQEAKIAogI2lmIEVOQUJM
RShMQVlPVVRfRk9STUFUVElOR19DT05URVhUKQogCisjaW5jbHVkZSAiTGF5b3V0UmVwbGFjZWQu
aCIKICNpbmNsdWRlICJSZW5kZXJTdHlsZS5oIgogI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2MuaD4K
ICNpbmNsdWRlIDx3dGYvV2Vha1B0ci5oPgpAQCAtOTAsMTQgKzkxLDcgQEAgcHVibGljOgogICAg
IGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZSgpIGNvbnN0IHsgcmV0dXJuIG1fc3R5bGU7IH0KICAg
ICBhdXRvJiB3ZWFrUHRyRmFjdG9yeSgpIGNvbnN0IHsgcmV0dXJuIG1fd2Vha0ZhY3Rvcnk7IH0K
IAotICAgIGJvb2wgaXNSZXBsYWNlZCgpIGNvbnN0OwotICAgIC8vIEZJWE1FOiBmaW5kIG91dCBo
b3cgdG8gbm90IHBvbGx1dGUgdGhlIEJveCBpbnRlcmZhY2UKLSAgICBib29sIGhhc0ludHJpbnNp
Y1dpZHRoKCkgY29uc3Q7Ci0gICAgYm9vbCBoYXNJbnRyaW5zaWNIZWlnaHQoKSBjb25zdDsKLSAg
ICBib29sIGhhc0ludHJpbnNpY1JhdGlvKCkgY29uc3Q7Ci0gICAgTGF5b3V0VW5pdCBpbnRyaW5z
aWNXaWR0aCgpIGNvbnN0OwotICAgIExheW91dFVuaXQgaW50cmluc2ljSGVpZ2h0KCkgY29uc3Q7
Ci0gICAgTGF5b3V0VW5pdCBpbnRyaW5zaWNSYXRpbygpIGNvbnN0OworICAgIHN0ZDo6b3B0aW9u
YWw8Y29uc3QgUmVwbGFjZWQ+IHJlcGxhY2VkKCkgY29uc3QgeyByZXR1cm4gbV9yZXBsYWNlZDsg
fQogCiBwcm90ZWN0ZWQ6CiAgICAgZW51bSBCYXNlVHlwZUZsYWcgewpAQCAtMTIzLDYgKzExNyw4
IEBAIHByaXZhdGU6CiAgICAgQm94KiBtX3ByZXZpb3VzU2libGluZyB7IG51bGxwdHIgfTsKICAg
ICBCb3gqIG1fbmV4dFNpYmxpbmcgeyBudWxscHRyIH07CiAKKyAgICBzdGQ6Om9wdGlvbmFsPGNv
bnN0IFJlcGxhY2VkPiBtX3JlcGxhY2VkOworCiAgICAgdW5zaWduZWQgbV9iYXNlVHlwZUZsYWdz
IDogNDsKICAgICB1bnNpZ25lZCBtX2lzQW5vbnltb3VzIDogMTsKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>340553</attachid>
            <date>2018-05-16 21:50:49 -0700</date>
            <delta_ts>2018-05-17 07:11:14 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-185711-20180516215048.patch</filename>
            <type>text/plain</type>
            <size>16716</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjMxODU0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDUxYjZiYzc4OGEwZTEy
NmNmNzFhMDRkZThkNzg0MWFhZmJkNWJhOS4uZjI3MDFjZDBmODBlMjM0MjhhNzc4ZDdhZTkyMmNk
MjA1NzRmZWRjMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDE4LTA1LTE2ICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW0xGQ10gTW92ZSByZXBsYWNl
ZCBsb2dpYyBmcm9tIExheW91dDo6Qm94IHRvIExheW91dDo6UmVwbGFjZWQgY2xhc3MKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NTcxMQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU291cmNlcy50eHQ6
CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAq
IGxheW91dC9Gb3JtYXR0aW5nQ29udGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6
OkZvcm1hdHRpbmdDb250ZXh0Ojpjb21wdXRlT3V0T2ZGbG93V2lkdGggY29uc3QpOgorICAgICAg
ICAoV2ViQ29yZTo6TGF5b3V0OjpGb3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0ZUZsb2F0aW5nV2lk
dGggY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpGb3JtYXR0aW5nQ29udGV4dDo6
Y29tcHV0ZU91dE9mRmxvd0hlaWdodCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6
OkZvcm1hdHRpbmdDb250ZXh0Ojpjb21wdXRlSW5GbG93UmVwbGFjZWRXaWR0aCBjb25zdCk6Cisg
ICAgICAgICogbGF5b3V0L2Jsb2NrZm9ybWF0dGluZy9CbG9ja0Zvcm1hdHRpbmdDb250ZXh0LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6QmxvY2tGb3JtYXR0aW5nQ29udGV4dDo6Y29t
cHV0ZUluRmxvd1dpZHRoIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6QmxvY2tG
b3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0ZUluRmxvd0hlaWdodCBjb25zdCk6CisgICAgICAgICog
bGF5b3V0L2xheW91dHRyZWUvTGF5b3V0Qm94LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxheW91
dDo6Qm94Ojppc1JlcGxhY2VkIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6Okxh
eW91dDo6Qm94OjpoYXNJbnRyaW5zaWNXaWR0aCBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChX
ZWJDb3JlOjpMYXlvdXQ6OkJveDo6aGFzSW50cmluc2ljSGVpZ2h0IGNvbnN0KTogRGVsZXRlZC4K
KyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6Qm94OjpoYXNJbnRyaW5zaWNSYXRpbyBjb25zdCk6
IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OkJveDo6aW50cmluc2ljV2lkdGgg
Y29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpCb3g6OmludHJpbnNp
Y0hlaWdodCBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OkJveDo6
aW50cmluc2ljUmF0aW8gY29uc3QpOiBEZWxldGVkLgorICAgICAgICAqIGxheW91dC9sYXlvdXR0
cmVlL0xheW91dEJveC5oOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpCb3g6OnJlcGxhY2Vk
IGNvbnN0KToKKwogMjAxOC0wNS0xNCAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWls
LmNvbT4KIAogICAgICAgICBbV2luXSBVc2UgQysrMTcgaW4gTVNWQwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvU291cmNlcy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAppbmRl
eCA5YzkzOGE1NDZhZjU3MjE4ZWU3NDc5Y2MwZDM2YjQyNjY0NDlmMWIwLi5kYjMxMDY1ZTJmZTdh
MjZjMDgzMTE5NGYzM2ViYzY3YjhkMzI2YTdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9T
b3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dApAQCAtMTIzMSw2ICsx
MjMxLDcgQEAgbGF5b3V0L2xheW91dHRyZWUvTGF5b3V0Qm94LmNwcAogbGF5b3V0L2xheW91dHRy
ZWUvTGF5b3V0Q29udGFpbmVyLmNwcAogbGF5b3V0L2xheW91dHRyZWUvTGF5b3V0SW5saW5lQm94
LmNwcAogbGF5b3V0L2xheW91dHRyZWUvTGF5b3V0SW5saW5lQ29udGFpbmVyLmNwcAorbGF5b3V0
L2xheW91dHRyZWUvTGF5b3V0UmVwbGFjZWQuY3BwCiBsYXlvdXQvbGF5b3V0dHJlZS9MYXlvdXRU
cmVlQnVpbGRlci5jcHAKIAogbG9hZGVyL0NvbnRlbnRGaWx0ZXIuY3BwCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNTM0YjQ3MGRh
ZWU3MTQ1NDE0YTAxMTllODg1YTNiZDBhNzFmZGZhOS4uNzA2NTc1OWU1NzA5ZjYzODZkMjQwZjQ1
NGJiOWQ1MTczZGUzYzNmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagpAQCAtNTcyNyw2ICs1NzI3LDggQEAKIAkJMTExMDBGQ0EyMDky
ODY4RDAwODFBQTZDIC8qIExheW91dEFuY2VzdG9ySXRlcmF0b3IuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
TGF5b3V0QW5jZXN0b3JJdGVyYXRvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkx
MTEwMEZENTIwOTUxNERFMDA4MUFBNkMgLyogTGF5b3V0VHJlZUJ1aWxkZXIuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gTGF5b3V0VHJlZUJ1aWxkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQkxMTEwMEZENzIwOTUxNERGMDA4MUFBNkMgLyogTGF5b3V0VHJlZUJ1aWxkZXIuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gTGF5b3V0VHJlZUJ1aWxkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMTExQzYxNTYyMEFEMUFFMTAwNUI4MkZBIC8qIExheW91dFJlcGxhY2VkLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IExheW91dFJlcGxhY2VkLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTExMUM2MTU3MjBBRDFBRTEwMDVCODJGQSAvKiBMYXlvdXRSZXBsYWNlZC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBMYXlvdXRSZXBsYWNlZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTExMjNBRkQ5MjA5QUJCMjAwMDczNkFDQyAvKiBCbG9ja0ludmFsaWRhdGlvbi5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBCbG9ja0ludmFsaWRhdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQkxMTIzQUZEQTIwOUFCQjIwMDA3MzZBQ0MgLyogQmxvY2tJbnZhbGlkYXRpb24uY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gQmxvY2tJbnZhbGlkYXRpb24uY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQkxMTIzQUZEQzIwOUFCQkJBMDA3MzZBQ0MgLyogSW5saW5lSW52YWxp
ZGF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElubGluZUludmFsaWRhdGlvbi5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwpAQCAtMTU3MDAsNiArMTU3MDIsOCBAQAogCQkJCTExOTlGQTRFMjA4
RTM4OTkwMDIzNThDQyAvKiBMYXlvdXRJbmxpbmVDb250YWluZXIuY3BwICovLAogCQkJCTExOTlG
QTREMjA4RTM4OTkwMDIzNThDQyAvKiBMYXlvdXRJbmxpbmVDb250YWluZXIuaCAqLywKIAkJCQkx
MTEwMEZDNzIwOTI3NjRDMDA4MUFBNkMgLyogTGF5b3V0SXRlcmF0b3IuaCAqLywKKwkJCQkxMTFD
NjE1NzIwQUQxQUUxMDA1QjgyRkEgLyogTGF5b3V0UmVwbGFjZWQuY3BwICovLAorCQkJCTExMUM2
MTU2MjBBRDFBRTEwMDVCODJGQSAvKiBMYXlvdXRSZXBsYWNlZC5oICovLAogCQkJCTExMTAwRkQ1
MjA5NTE0REUwMDgxQUE2QyAvKiBMYXlvdXRUcmVlQnVpbGRlci5jcHAgKi8sCiAJCQkJMTExMDBG
RDcyMDk1MTRERjAwODFBQTZDIC8qIExheW91dFRyZWVCdWlsZGVyLmggKi8sCiAJCQkpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L0Zvcm1hdHRpbmdDb250ZXh0LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2xheW91dC9Gb3JtYXR0aW5nQ29udGV4dC5jcHAKaW5kZXggOGRmOWRmZjQz
NTIyNTgyNTk4M2NkOTA2MjM5YTU2ZGI2MTgxZmQxZC4uYmIzMmY3ZDI1YWE2MGU2YjkxMDE4NTU5
MzBkYWRhMjA3MzRhOTExYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L0Zvcm1h
dHRpbmdDb250ZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvRm9ybWF0dGluZ0Nv
bnRleHQuY3BwCkBAIC04MCw3ICs4MCw3IEBAIHZvaWQgRm9ybWF0dGluZ0NvbnRleHQ6OmNvbXB1
dGVIZWlnaHQoTGF5b3V0Q29udGV4dCYgbGF5b3V0Q29udGV4dCwgY29uc3QgQm94JiBsCiAKIHZv
aWQgRm9ybWF0dGluZ0NvbnRleHQ6OmNvbXB1dGVPdXRPZkZsb3dXaWR0aChMYXlvdXRDb250ZXh0
JiBsYXlvdXRDb250ZXh0LCBjb25zdCBCb3gmIGxheW91dEJveCwgRGlzcGxheTo6Qm94JiBkaXNw
bGF5Qm94KSBjb25zdAogewotICAgIGlmICghbGF5b3V0Qm94LmlzUmVwbGFjZWQoKSkgeworICAg
IGlmICghbGF5b3V0Qm94LnJlcGxhY2VkKCkpIHsKICAgICAgICAgY29tcHV0ZU91dE9mRmxvd05v
blJlcGxhY2VkV2lkdGgobGF5b3V0Q29udGV4dCwgbGF5b3V0Qm94LCBkaXNwbGF5Qm94KTsKICAg
ICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTg5LDcgKzg5LDcgQEAgdm9pZCBGb3JtYXR0aW5nQ29u
dGV4dDo6Y29tcHV0ZU91dE9mRmxvd1dpZHRoKExheW91dENvbnRleHQmIGxheW91dENvbnRleHQs
IGNvbnMKIAogdm9pZCBGb3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0ZUZsb2F0aW5nV2lkdGgoTGF5
b3V0Q29udGV4dCYgbGF5b3V0Q29udGV4dCwgY29uc3QgQm94JiBsYXlvdXRCb3gsIERpc3BsYXk6
OkJveCYgZGlzcGxheUJveCkgY29uc3QKIHsKLSAgICBpZiAoIWxheW91dEJveC5pc1JlcGxhY2Vk
KCkpIHsKKyAgICBpZiAoIWxheW91dEJveC5yZXBsYWNlZCgpKSB7CiAgICAgICAgIEFTU0VSVF9O
T1RfUkVBQ0hFRCgpOwogICAgICAgICByZXR1cm47CiAgICAgfQpAQCAtOTgsNyArOTgsNyBAQCB2
b2lkIEZvcm1hdHRpbmdDb250ZXh0Ojpjb21wdXRlRmxvYXRpbmdXaWR0aChMYXlvdXRDb250ZXh0
JiBsYXlvdXRDb250ZXh0LCBjb25zdAogCiB2b2lkIEZvcm1hdHRpbmdDb250ZXh0Ojpjb21wdXRl
T3V0T2ZGbG93SGVpZ2h0KExheW91dENvbnRleHQmIGxheW91dENvbnRleHQsIGNvbnN0IEJveCYg
bGF5b3V0Qm94LCBEaXNwbGF5OjpCb3gmIGRpc3BsYXlCb3gpIGNvbnN0CiB7Ci0gICAgaWYgKCFs
YXlvdXRCb3guaXNSZXBsYWNlZCgpKSB7CisgICAgaWYgKCFsYXlvdXRCb3gucmVwbGFjZWQoKSkg
ewogICAgICAgICBjb21wdXRlT3V0T2ZGbG93Tm9uUmVwbGFjZWRIZWlnaHQobGF5b3V0Q29udGV4
dCwgbGF5b3V0Qm94LCBkaXNwbGF5Qm94KTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTIz
NCwyMSArMjM0LDIzIEBAIHZvaWQgRm9ybWF0dGluZ0NvbnRleHQ6OmNvbXB1dGVJbkZsb3dSZXBs
YWNlZFdpZHRoKExheW91dENvbnRleHQmLCBjb25zdCBCb3gmIGxhCiAgICAgYXV0byBoZWlnaHQg
PSBzdHlsZS5sb2dpY2FsSGVpZ2h0KCk7CiAKICAgICBMYXlvdXRVbml0IGNvbXB1dGVkV2lkdGhW
YWx1ZTsKKyAgICBhdXRvIHJlcGxhY2VkID0gbGF5b3V0Qm94LnJlcGxhY2VkKCk7CisgICAgQVNT
RVJUKHJlcGxhY2VkKTsKIAotICAgIGlmICh3aWR0aC5pc0F1dG8oKSAmJiBoZWlnaHQuaXNBdXRv
KCkgJiYgbGF5b3V0Qm94Lmhhc0ludHJpbnNpY1dpZHRoKCkpIHsKKyAgICBpZiAod2lkdGguaXNB
dXRvKCkgJiYgaGVpZ2h0LmlzQXV0bygpICYmIHJlcGxhY2VkLT5oYXNJbnRyaW5zaWNXaWR0aCgp
KSB7CiAgICAgICAgIC8vICMxCi0gICAgICAgIGNvbXB1dGVkV2lkdGhWYWx1ZSA9IGxheW91dEJv
eC5pbnRyaW5zaWNXaWR0aCgpOwotICAgIH0gZWxzZSBpZiAod2lkdGguaXNBdXRvKCkgJiYgKGhl
aWdodC5pc0NhbGN1bGF0ZWQoKSB8fCBsYXlvdXRCb3guaGFzSW50cmluc2ljSGVpZ2h0KCkpICYm
IGxheW91dEJveC5oYXNJbnRyaW5zaWNSYXRpbygpKSB7CisgICAgICAgIGNvbXB1dGVkV2lkdGhW
YWx1ZSA9IHJlcGxhY2VkLT5pbnRyaW5zaWNXaWR0aCgpOworICAgIH0gZWxzZSBpZiAod2lkdGgu
aXNBdXRvKCkgJiYgKGhlaWdodC5pc0NhbGN1bGF0ZWQoKSB8fCByZXBsYWNlZC0+aGFzSW50cmlu
c2ljSGVpZ2h0KCkpICYmIHJlcGxhY2VkLT5oYXNJbnRyaW5zaWNSYXRpbygpKSB7CiAgICAgICAg
IC8vICMyCi0gICAgICAgIGF1dG8gdXNlZEhlaWdodCA9IGhlaWdodC5pc0NhbGN1bGF0ZWQoKSA/
IExheW91dFVuaXQoaGVpZ2h0LnZhbHVlKCkpIDogbGF5b3V0Qm94LmludHJpbnNpY0hlaWdodCgp
OyAgIAotICAgICAgICBjb21wdXRlZFdpZHRoVmFsdWUgPSB1c2VkSGVpZ2h0ICogbGF5b3V0Qm94
LmludHJpbnNpY1JhdGlvKCk7Ci0gICAgfSBlbHNlIGlmICh3aWR0aC5pc0F1dG8oKSAmJiBoZWln
aHQuaXNBdXRvKCkgJiYgbGF5b3V0Qm94Lmhhc0ludHJpbnNpY1JhdGlvKCkpIHsKKyAgICAgICAg
YXV0byB1c2VkSGVpZ2h0ID0gaGVpZ2h0LmlzQ2FsY3VsYXRlZCgpID8gTGF5b3V0VW5pdChoZWln
aHQudmFsdWUoKSkgOiByZXBsYWNlZC0+aW50cmluc2ljSGVpZ2h0KCk7ICAgCisgICAgICAgIGNv
bXB1dGVkV2lkdGhWYWx1ZSA9IHVzZWRIZWlnaHQgKiByZXBsYWNlZC0+aW50cmluc2ljUmF0aW8o
KTsKKyAgICB9IGVsc2UgaWYgKHdpZHRoLmlzQXV0bygpICYmIGhlaWdodC5pc0F1dG8oKSAmJiBy
ZXBsYWNlZC0+aGFzSW50cmluc2ljUmF0aW8oKSkgewogICAgICAgICAvLyAjMwogICAgICAgICAv
LyBGSVhNRTogdW5kZWZpbmVkIGJ1dCBzdXJlbHkgZG9hYmxlLgogICAgICAgICBBU1NFUlRfTk9U
X1JFQUNIRUQoKTsKLSAgICB9IGVsc2UgaWYgKHdpZHRoLmlzQXV0bygpICYmIGxheW91dEJveC5o
YXNJbnRyaW5zaWNXaWR0aCgpKSB7CisgICAgfSBlbHNlIGlmICh3aWR0aC5pc0F1dG8oKSAmJiBy
ZXBsYWNlZC0+aGFzSW50cmluc2ljV2lkdGgoKSkgewogICAgICAgICAvLyAjNAotICAgICAgICBj
b21wdXRlZFdpZHRoVmFsdWUgPSBsYXlvdXRCb3guaW50cmluc2ljV2lkdGgoKTsKKyAgICAgICAg
Y29tcHV0ZWRXaWR0aFZhbHVlID0gcmVwbGFjZWQtPmludHJpbnNpY1dpZHRoKCk7CiAgICAgfSBl
bHNlIHsKICAgICAgICAgLy8gIzUKICAgICAgICAgY29tcHV0ZWRXaWR0aFZhbHVlID0gMzAwOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Jsb2NrZm9ybWF0dGluZy9CbG9ja0Zv
cm1hdHRpbmdDb250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9ibG9ja2Zvcm1hdHRp
bmcvQmxvY2tGb3JtYXR0aW5nQ29udGV4dC5jcHAKaW5kZXggZTc4YjU5MmE4YTE4MGQxZTY2NzJh
MTMyZjMyNmQzZGJlYmE0NDlmMC4uYzU3OWI2NTk3MGVkZmQxMjdlZGZkOGNjN2VjMTUxZjg0Nzc2
OTYwMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Jsb2NrZm9ybWF0dGluZy9C
bG9ja0Zvcm1hdHRpbmdDb250ZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvYmxv
Y2tmb3JtYXR0aW5nL0Jsb2NrRm9ybWF0dGluZ0NvbnRleHQuY3BwCkBAIC0xNDUsNyArMTQ1LDcg
QEAgdm9pZCBCbG9ja0Zvcm1hdHRpbmdDb250ZXh0Ojpjb21wdXRlU3RhdGljUG9zaXRpb24oTGF5
b3V0Q29udGV4dCYgbGF5b3V0Q29udGV4dCwKIAogdm9pZCBCbG9ja0Zvcm1hdHRpbmdDb250ZXh0
Ojpjb21wdXRlSW5GbG93V2lkdGgoTGF5b3V0Q29udGV4dCYgbGF5b3V0Q29udGV4dCwgY29uc3Qg
Qm94JiBsYXlvdXRCb3gsIERpc3BsYXk6OkJveCYgZGlzcGxheUJveCkgY29uc3QKIHsKLSAgICBp
ZiAoIWxheW91dEJveC5pc1JlcGxhY2VkKCkpIHsKKyAgICBpZiAoIWxheW91dEJveC5yZXBsYWNl
ZCgpKSB7CiAgICAgICAgIGNvbXB1dGVJbkZsb3dOb25SZXBsYWNlZFdpZHRoKGxheW91dENvbnRl
eHQsIGxheW91dEJveCwgZGlzcGxheUJveCk7CiAgICAgICAgIHJldHVybjsKICAgICB9CkBAIC0x
ODMsNyArMTgzLDcgQEAgdm9pZCBCbG9ja0Zvcm1hdHRpbmdDb250ZXh0Ojpjb21wdXRlSW5GbG93
Tm9uUmVwbGFjZWRXaWR0aChMYXlvdXRDb250ZXh0JiBsYXlvdXQKIAogdm9pZCBCbG9ja0Zvcm1h
dHRpbmdDb250ZXh0Ojpjb21wdXRlSW5GbG93SGVpZ2h0KExheW91dENvbnRleHQmIGxheW91dENv
bnRleHQsIGNvbnN0IEJveCYgbGF5b3V0Qm94LCBEaXNwbGF5OjpCb3gmIGRpc3BsYXlCb3gpIGNv
bnN0CiB7Ci0gICAgaWYgKCFsYXlvdXRCb3guaXNSZXBsYWNlZCgpKSB7CisgICAgaWYgKCFsYXlv
dXRCb3gucmVwbGFjZWQoKSkgewogICAgICAgICBjb21wdXRlSW5GbG93Tm9uUmVwbGFjZWRIZWln
aHQobGF5b3V0Q29udGV4dCwgbGF5b3V0Qm94LCBkaXNwbGF5Qm94KTsKICAgICAgICAgcmV0dXJu
OwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9sYXlvdXR0cmVlL0xh
eW91dEJveC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvbGF5b3V0dHJlZS9MYXlvdXRCb3gu
Y3BwCmluZGV4IDk0MGY5MDhhOTAzYTA4ZjIzOGY2ODU0NTRjNDk5ZWUyZGEyMTM1MTcuLjQ0Nzk3
YWY4ZWM3MWEwMjhlNjhiYWVlMTNkMzEyODJmNTRmMGY2NWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xheW91dC9sYXlvdXR0cmVlL0xheW91dEJveC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvbGF5b3V0L2xheW91dHRyZWUvTGF5b3V0Qm94LmNwcApAQCAtMTc5LDEyICsxNzksNiBAQCBi
b29sIEJveDo6aXNJbml0aWFsQ29udGFpbmluZ0Jsb2NrKCkgY29uc3QKICAgICByZXR1cm4gIXBh
cmVudCgpOwogfQogCi1ib29sIEJveDo6aXNSZXBsYWNlZCgpIGNvbnN0Ci17Ci0gICAgLy8gSFRN
TEF1ZGlvRWxlbWVudCB8fCBIVE1MQ2FudmFzRWxlbWVudCB8fCBIVE1MRW1iZWRFbGVtZW50IHx8
IEhUTUxJRnJhbWVFbGVtZW50IHx8IEhUTUxJbWFnZUVsZW1lbnQgfHwgSFRNTElucHV0RWxlbWVu
dCB8fCBIVE1MT2JqZWN0RWxlbWVudCB8fCBIVE1MVmlkZW9FbGVtZW50Ci0gICAgcmV0dXJuIGZh
bHNlOwotfQotCiBjb25zdCBCb3gqIEJveDo6bmV4dEluRmxvd1NpYmxpbmcoKSBjb25zdAogewog
ICAgIGlmIChhdXRvKiBuZXh0U2libGluZyA9IHRoaXMtPm5leHRTaWJsaW5nKCkpIHsKQEAgLTIz
MCwzOSArMjI0LDYgQEAgYm9vbCBCb3g6OmlzT3ZlcmZsb3dWaXNpYmxlKCkgY29uc3QKICAgICBy
ZXR1cm4gbV9zdHlsZS5vdmVyZmxvd1goKSA9PSBPVklTSUJMRSB8fCBtX3N0eWxlLm92ZXJmbG93
WSgpID09IE9WSVNJQkxFOwogfQogCi1ib29sIEJveDo6aGFzSW50cmluc2ljV2lkdGgoKSBjb25z
dAotewotICAgIHJldHVybiBmYWxzZTsKLX0KLQotYm9vbCBCb3g6Omhhc0ludHJpbnNpY0hlaWdo
dCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIGZhbHNlOwotfQotCi1ib29sIEJveDo6aGFzSW50cmlu
c2ljUmF0aW8oKSBjb25zdAotewotICAgIHJldHVybiBmYWxzZTsKLX0KLQotTGF5b3V0VW5pdCBC
b3g6OmludHJpbnNpY1dpZHRoKCkgY29uc3QKLXsKLSAgICBBU1NFUlQoaGFzSW50cmluc2ljV2lk
dGgoKSk7Ci0gICAgcmV0dXJuIHsgfTsKLX0KLQotTGF5b3V0VW5pdCBCb3g6OmludHJpbnNpY0hl
aWdodCgpIGNvbnN0Ci17Ci0gICAgQVNTRVJUKGhhc0ludHJpbnNpY0hlaWdodCgpKTsKLSAgICBy
ZXR1cm4geyB9OwotfQotCi1MYXlvdXRVbml0IEJveDo6aW50cmluc2ljUmF0aW8oKSBjb25zdAot
ewotICAgIEFTU0VSVChoYXNJbnRyaW5zaWNSYXRpbygpKTsKLSAgICByZXR1cm4geyB9OwotfQot
CiB9CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9sYXlvdXR0cmVlL0xh
eW91dEJveC5oIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2xheW91dHRyZWUvTGF5b3V0Qm94LmgK
aW5kZXggNzA0MzdjOTliNjM1ZTMwMjRjN2U3MjY2MTM3MDFlMjUyOTI1ODRjNS4uMTBmNjBhYmZm
ZTBlYTMxZWE3MWE0MTBiNGUyZmY5ZjI1MDQ5MzI4OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvbGF5b3V0L2xheW91dHRyZWUvTGF5b3V0Qm94LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5
b3V0L2xheW91dHRyZWUvTGF5b3V0Qm94LmgKQEAgLTI3LDYgKzI3LDcgQEAKIAogI2lmIEVOQUJM
RShMQVlPVVRfRk9STUFUVElOR19DT05URVhUKQogCisjaW5jbHVkZSAiTGF5b3V0UmVwbGFjZWQu
aCIKICNpbmNsdWRlICJSZW5kZXJTdHlsZS5oIgogI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2MuaD4K
ICNpbmNsdWRlIDx3dGYvV2Vha1B0ci5oPgpAQCAtOTAsMTQgKzkxLDcgQEAgcHVibGljOgogICAg
IGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZSgpIGNvbnN0IHsgcmV0dXJuIG1fc3R5bGU7IH0KICAg
ICBhdXRvJiB3ZWFrUHRyRmFjdG9yeSgpIGNvbnN0IHsgcmV0dXJuIG1fd2Vha0ZhY3Rvcnk7IH0K
IAotICAgIGJvb2wgaXNSZXBsYWNlZCgpIGNvbnN0OwotICAgIC8vIEZJWE1FOiBmaW5kIG91dCBo
b3cgdG8gbm90IHBvbGx1dGUgdGhlIEJveCBpbnRlcmZhY2UKLSAgICBib29sIGhhc0ludHJpbnNp
Y1dpZHRoKCkgY29uc3Q7Ci0gICAgYm9vbCBoYXNJbnRyaW5zaWNIZWlnaHQoKSBjb25zdDsKLSAg
ICBib29sIGhhc0ludHJpbnNpY1JhdGlvKCkgY29uc3Q7Ci0gICAgTGF5b3V0VW5pdCBpbnRyaW5z
aWNXaWR0aCgpIGNvbnN0OwotICAgIExheW91dFVuaXQgaW50cmluc2ljSGVpZ2h0KCkgY29uc3Q7
Ci0gICAgTGF5b3V0VW5pdCBpbnRyaW5zaWNSYXRpbygpIGNvbnN0OworICAgIHN0ZDo6b3B0aW9u
YWw8Y29uc3QgUmVwbGFjZWQ+IHJlcGxhY2VkKCkgY29uc3QgeyByZXR1cm4gbV9yZXBsYWNlZDsg
fQogCiBwcm90ZWN0ZWQ6CiAgICAgZW51bSBCYXNlVHlwZUZsYWcgewpAQCAtMTIzLDYgKzExNyw4
IEBAIHByaXZhdGU6CiAgICAgQm94KiBtX3ByZXZpb3VzU2libGluZyB7IG51bGxwdHIgfTsKICAg
ICBCb3gqIG1fbmV4dFNpYmxpbmcgeyBudWxscHRyIH07CiAKKyAgICBzdGQ6Om9wdGlvbmFsPGNv
bnN0IFJlcGxhY2VkPiBtX3JlcGxhY2VkOworCiAgICAgdW5zaWduZWQgbV9iYXNlVHlwZUZsYWdz
IDogNDsKICAgICB1bnNpZ25lZCBtX2lzQW5vbnltb3VzIDogMTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvbGF5b3V0L2xheW91dHRyZWUvTGF5b3V0UmVwbGFjZWQuY3BwIGIvU291cmNl
L1dlYkNvcmUvbGF5b3V0L2xheW91dHRyZWUvTGF5b3V0UmVwbGFjZWQuY3BwCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmI5YWQxMDM0NmE0NzM2MDlkNWNmMGU0MGI3ZDMxMDI0ODU2ZmI2N2QKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvbGF5b3V0dHJlZS9MYXlvdXRSZXBsYWNlZC5jcHAK
QEAgLTAsMCArMSw0NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFy
ZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNs
dWRlICJMYXlvdXRSZXBsYWNlZC5oIgorCisjaWYgRU5BQkxFKExBWU9VVF9GT1JNQVRUSU5HX0NP
TlRFWFQpCisKKyNpbmNsdWRlICJMYXlvdXRCb3guaCIKKyNpbmNsdWRlIDx3dGYvSXNvTWFsbG9j
SW5saW5lcy5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CituYW1lc3BhY2UgTGF5b3V0IHsKKwor
UmVwbGFjZWQ6OlJlcGxhY2VkKGNvbnN0IExheW91dEJveCYpCit7Cit9CisKK30KK30KKworI2Vu
ZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvbGF5b3V0dHJlZS9MYXlvdXRS
ZXBsYWNlZC5oIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2xheW91dHRyZWUvTGF5b3V0UmVwbGFj
ZWQuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5jZmMxOGU2MDExYzg4MjUzMzE5MWViNWU1YWVhYTY2Y2UxMjcwNzFk
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2xheW91dHRyZWUvTGF5
b3V0UmVwbGFjZWQuaApAQCAtMCwwICsxLDgwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE4
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBB
UyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJV
VE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
CisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNl
CisKKyNpZiBFTkFCTEUoTEFZT1VUX0ZPUk1BVFRJTkdfQ09OVEVYVCkKKworI2luY2x1ZGUgIkxh
eW91dFVuaXQuaCIKKyNpbmNsdWRlIDx3dGYvSXNvTWFsbG9jLmg+CisKK25hbWVzcGFjZSBXZWJD
b3JlIHsKKworbmFtZXNwYWNlIExheW91dCB7CitjbGFzcyBMYXlvdXRCb3g7CisKKy8vIEhUTUxB
dWRpb0VsZW1lbnQsIEhUTUxDYW52YXNFbGVtZW50LiBIVE1MRW1iZWRFbGVtZW50LCBIVE1MSUZy
YW1lRWxlbWVudCwgSFRNTEltYWdlRWxlbWVudCwgSFRNTElucHV0RWxlbWVudCwgSFRNTE9iamVj
dEVsZW1lbnQsIEhUTUxWaWRlb0VsZW1lbnQuCitjbGFzcyBSZXBsYWNlZCB7CisgICAgV1RGX01B
S0VfSVNPX0FMTE9DQVRFRChSZXBsYWNlZCk7CitwdWJsaWM6CisgICAgZnJpZW5kIGNsYXNzIExh
eW91dEJveDsKKworICAgIGJvb2wgaGFzSW50cmluc2ljV2lkdGgoKSBjb25zdCB7IHJldHVybiBt
X2ludHJpbnNpY1dpZHRoLmhhc192YWx1ZSgpOyB9CisgICAgYm9vbCBoYXNJbnRyaW5zaWNIZWln
aHQoKSBjb25zdCB7IHJldHVybiBtX2ludHJpbnNpY0hlaWdodC5oYXNfdmFsdWUoKTsgfQorICAg
IGJvb2wgaGFzSW50cmluc2ljUmF0aW8oKSBjb25zdCB7IHJldHVybiBtX2ludHJpbnNpY1JhdGlv
Lmhhc192YWx1ZSgpOyB9CisgICAgTGF5b3V0VW5pdCBpbnRyaW5zaWNXaWR0aCgpIGNvbnN0Owor
ICAgIExheW91dFVuaXQgaW50cmluc2ljSGVpZ2h0KCkgY29uc3Q7CisgICAgTGF5b3V0VW5pdCBp
bnRyaW5zaWNSYXRpbygpIGNvbnN0OworCitwcml2YXRlOgorICAgIFJlcGxhY2VkKGNvbnN0IExh
eW91dEJveCYpOworCisgICAgc3RkOjpvcHRpb25hbDxMYXlvdXRVbml0PiBtX2ludHJpbnNpY1dp
ZHRoOworICAgIHN0ZDo6b3B0aW9uYWw8TGF5b3V0VW5pdD4gbV9pbnRyaW5zaWNIZWlnaHQ7Cisg
ICAgc3RkOjpvcHRpb25hbDxMYXlvdXRVbml0PiBtX2ludHJpbnNpY1JhdGlvOworfTsKKworaW5s
aW5lIExheW91dFVuaXQgUmVwbGFjZWQ6OmludHJpbnNpY1dpZHRoKCkgY29uc3QKK3sKKyAgICBB
U1NFUlQoaGFzSW50cmluc2ljV2lkdGgoKSk7CisgICAgcmV0dXJuIG1faW50cmluc2ljV2lkdGgu
dmFsdWVfb3IoTGF5b3V0VW5pdDo6bWF4KCkpOworfQorCitpbmxpbmUgTGF5b3V0VW5pdCBSZXBs
YWNlZDo6aW50cmluc2ljSGVpZ2h0KCkgY29uc3QKK3sKKyAgICBBU1NFUlQoaGFzSW50cmluc2lj
SGVpZ2h0KCkpOworICAgIHJldHVybiBtX2ludHJpbnNpY0hlaWdodC52YWx1ZV9vcihMYXlvdXRV
bml0OjptYXgoKSk7Cit9CisKK2lubGluZSBMYXlvdXRVbml0IFJlcGxhY2VkOjppbnRyaW5zaWNS
YXRpbygpIGNvbnN0Cit7CisgICAgQVNTRVJUKGhhc0ludHJpbnNpY1JhdGlvKCkpOworICAgIHJl
dHVybiBtX2ludHJpbnNpY1JhdGlvLnZhbHVlX29yKExheW91dFVuaXQ6Om1heCgpKTsKK30KKwor
fQorfQorCisjZW5kaWYK
</data>

          </attachment>
      

    </bug>

</bugzilla>