<?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>193292</bug_id>
          
          <creation_ts>2019-01-09 12:25:47 -0800</creation_ts>
          <short_desc>Gigacage disabling checks should handle the GIGACAGE_ALLOCATION_CAN_FAIL case properly.</short_desc>
          <delta_ts>2019-01-14 14:48:30 -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>JavaScriptCore</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <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="Mark Lam">mark.lam</reporter>
          <assigned_to name="Mark Lam">mark.lam</assigned_to>
          <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>dbates</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fpizlo</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>msaboff</cc>
    
    <cc>rmorisset</cc>
    
    <cc>saam</cc>
    
    <cc>thorton</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1493024</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2019-01-09 12:25:47 -0800</bug_when>
    <thetext>&lt;rdar://problem/46485450&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1493042</commentid>
    <comment_count>1</comment_count>
      <attachid>358729</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2019-01-09 13:05:00 -0800</bug_when>
    <thetext>Created attachment 358729
proposed patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1493082</commentid>
    <comment_count>2</comment_count>
      <attachid>358729</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2019-01-09 14:16:41 -0800</bug_when>
    <thetext>Comment on attachment 358729
proposed patch.

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

r=me

&gt; Source/bmalloc/bmalloc/Gigacage.cpp:218
&gt; +        if (!GIGACAGE_ALLOCATION_CAN_FAIL || wasEnabled())

This code clearly says that the following `function` will be expected to cause the crash. So I think this `function` name should be renamed to `crash` or something like this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1493086</commentid>
    <comment_count>3</comment_count>
      <attachid>358729</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2019-01-09 14:22:48 -0800</bug_when>
    <thetext>Comment on attachment 358729
proposed patch.

Oops, my fix is incorrect.  We are using addPrimitiveDisableCallback() elsewhere to fire watchpoints if the Gigacage is disabled.  Hence, I do need to call the callbacks.  Will update the fix and post a mew patch shortly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1493099</commentid>
    <comment_count>4</comment_count>
      <attachid>358741</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2019-01-09 14:39:21 -0800</bug_when>
    <thetext>Created attachment 358741
proposed patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1493100</commentid>
    <comment_count>5</comment_count>
      <attachid>358741</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2019-01-09 14:41:07 -0800</bug_when>
    <thetext>Comment on attachment 358741
proposed patch.

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1493104</commentid>
    <comment_count>6</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2019-01-09 14:45:43 -0800</bug_when>
    <thetext>Thanks for the review.  Landed in r239787: &lt;http://trac.webkit.org/r239787&gt;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1494326</commentid>
    <comment_count>7</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2019-01-14 14:48:30 -0800</bug_when>
    <thetext>ensureGigacage() is probably no longer an appropriate name for the function, since it no longer ensures Gigacage is allocated, like it used to when originally written. That semantic issue probably contributed to this bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>358729</attachid>
            <date>2019-01-09 13:05:00 -0800</date>
            <delta_ts>2019-01-09 14:22:48 -0800</delta_ts>
            <desc>proposed patch.</desc>
            <filename>bug-193292.patch</filename>
            <type>text/plain</type>
            <size>12355</size>
            <attacher name="Mark Lam">mark.lam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjM5NzgxKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBA
CisyMDE5LTAxLTA5ICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KKworICAgICAgICBH
aWdhY2FnZSBkaXNhYmxpbmcgY2hlY2tzIHNob3VsZCBoYW5kbGUgdGhlIEdJR0FDQUdFX0FMTE9D
QVRJT05fQ0FOX0ZBSUwgY2FzZSBwcm9wZXJseS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MzI5MgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNDY0
ODU0NTA+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
KiBydW50aW1lL1ZNLmg6CisgICAgICAgIChKU0M6OlZNOjpnaWdhY2FnZUF1eGlsaWFyeVNwYWNl
KToKKwogMjAxOS0wMS0wOCAgS2VpdGggTWlsbGVyICA8a2VpdGhfbWlsbGVyQGFwcGxlLmNvbT4K
IAogICAgICAgICBidWlsdGlucyBzaG91bGQgYmUgYWJsZSB0byB1c2UgYXN5bmMvYXdhaXQKSW5k
ZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZNLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0uaAkocmV2aXNpb24gMjM5NzgxKQorKysgU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0uaAkod29ya2luZyBjb3B5KQpAQCAtMSw1ICsx
LDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxOSBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTM0Niw2
ICszNDYsOCBAQCBwdWJsaWM6CiAgICAgQUxXQVlTX0lOTElORSBDb21wbGV0ZVN1YnNwYWNlJiBn
aWdhY2FnZUF1eGlsaWFyeVNwYWNlKEdpZ2FjYWdlOjpLaW5kIGtpbmQpCiAgICAgewogICAgICAg
ICBzd2l0Y2ggKGtpbmQpIHsKKyAgICAgICAgY2FzZSBHaWdhY2FnZTo6UmVzZXJ2ZWRGb3JGbGFn
c0FuZE5vdEFCYXNlUHRyOgorICAgICAgICAgICAgUkVMRUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQo
KTsKICAgICAgICAgY2FzZSBHaWdhY2FnZTo6UHJpbWl0aXZlOgogICAgICAgICAgICAgcmV0dXJu
IHByaW1pdGl2ZUdpZ2FjYWdlQXV4aWxpYXJ5U3BhY2U7CiAgICAgICAgIGNhc2UgR2lnYWNhZ2U6
OkpTVmFsdWU6CkluZGV4OiBTb3VyY2UvV1RGL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV1RGL0NoYW5nZUxvZwkocmV2aXNpb24gMjM5NzgxKQorKysgU291cmNlL1dURi9DaGFuZ2VM
b2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNSBAQAorMjAxOS0wMS0wOSAgTWFyayBMYW0g
IDxtYXJrLmxhbUBhcHBsZS5jb20+CisKKyAgICAgICAgR2lnYWNhZ2UgZGlzYWJsaW5nIGNoZWNr
cyBzaG91bGQgaGFuZGxlIHRoZSBHSUdBQ0FHRV9BTExPQ0FUSU9OX0NBTl9GQUlMIGNhc2UgcHJv
cGVybHkuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
OTMyOTIKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQ2NDg1NDUwPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZSB0aGUgVVNFX1NZU1RFTV9N
QUxMT0MgdmVyc2lvbiBvZiBHaWdhY2FnZS5oIHRvIG1hdGNoIHRoZSBibWFsbG9jIHZlcnNpb24u
CisKKyAgICAgICAgKiB3dGYvR2lnYWNhZ2UuaDoKKwogMjAxOS0wMS0wNyAgRGF2aWQgS2lsemVy
ICA8ZGRraWx6ZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFByZWZlciBSZXRhaW5QdHI8TlNPYmpl
Y3Q+IHRvIFJldGFpblB0cjxOU09iamVjdCAqPgpJbmRleDogU291cmNlL1dURi93dGYvR2lnYWNh
Z2UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9HaWdhY2FnZS5oCShyZXZpc2lvbiAy
Mzk3ODEpCisrKyBTb3VyY2UvV1RGL3d0Zi9HaWdhY2FnZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0x
LDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNy0yMDE4IEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAxNy0yMDE5IEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAt
NDAsMTUgKzQwLDIwIEBAIGFsaWduYXModm9pZCopIGV4dGVybiBXVEZfRVhQT1JUX1BSSVZBVEUK
IG5hbWVzcGFjZSBHaWdhY2FnZSB7CiAKIHN0cnVjdCBCYXNlUHRycyB7CisgICAgdWludHB0cl90
IHJlc2VydmVkRm9yRmxhZ3M7CiAgICAgdm9pZCogcHJpbWl0aXZlOwogICAgIHZvaWQqIGpzVmFs
dWU7CiB9OwogCiBlbnVtIEtpbmQgeworICAgIFJlc2VydmVkRm9yRmxhZ3NBbmROb3RBQmFzZVB0
ciA9IDAsCiAgICAgUHJpbWl0aXZlLAogICAgIEpTVmFsdWUsCiB9OwogCitzdGF0aWNfYXNzZXJ0
KG9mZnNldG9mKEJhc2VQdHJzLCBwcmltaXRpdmUpID09IEtpbmQ6OlByaW1pdGl2ZSAqIHNpemVv
Zih2b2lkKiksICIiKTsKK3N0YXRpY19hc3NlcnQob2Zmc2V0b2YoQmFzZVB0cnMsIGpzVmFsdWUp
ID09IEtpbmQ6OkpTVmFsdWUgKiBzaXplb2Yodm9pZCopLCAiIik7CisKIGlubGluZSB2b2lkIGVu
c3VyZUdpZ2FjYWdlKCkgeyB9CiBpbmxpbmUgdm9pZCBkaXNhYmxlUHJpbWl0aXZlR2lnYWNhZ2Uo
KSB7IH0KIGlubGluZSBib29sIHNob3VsZEJlRW5hYmxlZCgpIHsgcmV0dXJuIGZhbHNlOyB9CkBA
IC02NSw2ICs3MCw4IEBAIGlubGluZSBib29sIGNhblByaW1pdGl2ZUdpZ2FjYWdlQmVEaXNhYmwK
IEFMV0FZU19JTkxJTkUgY29uc3QgY2hhciogbmFtZShLaW5kIGtpbmQpCiB7CiAgICAgc3dpdGNo
IChraW5kKSB7CisgICAgY2FzZSBSZXNlcnZlZEZvckZsYWdzQW5kTm90QUJhc2VQdHI6CisgICAg
ICAgIFJFTEVBU0VfQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgY2FzZSBQcmltaXRpdmU6CiAg
ICAgICAgIHJldHVybiAiUHJpbWl0aXZlIjsKICAgICBjYXNlIEpTVmFsdWU6CkBAIC03Nyw2ICs4
NCw4IEBAIEFMV0FZU19JTkxJTkUgY29uc3QgY2hhciogbmFtZShLaW5kIGtpbmQKIEFMV0FZU19J
TkxJTkUgdm9pZComIGJhc2VQdHIoQmFzZVB0cnMmIGJhc2VQdHJzLCBLaW5kIGtpbmQpCiB7CiAg
ICAgc3dpdGNoIChraW5kKSB7CisgICAgY2FzZSBSZXNlcnZlZEZvckZsYWdzQW5kTm90QUJhc2VQ
dHI6CisgICAgICAgIFJFTEVBU0VfQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgY2FzZSBQcmlt
aXRpdmU6CiAgICAgICAgIHJldHVybiBiYXNlUHRycy5wcmltaXRpdmU7CiAgICAgY2FzZSBKU1Zh
bHVlOgpJbmRleDogU291cmNlL2JtYWxsb2MvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9ibWFsbG9jL0NoYW5nZUxvZwkocmV2aXNpb24gMjM5NzgxKQorKysgU291cmNlL2JtYWxsb2Mv
Q2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsNTAgQEAKKzIwMTktMDEtMDkgIE1h
cmsgTGFtICA8bWFyay5sYW1AYXBwbGUuY29tPgorCisgICAgICAgIEdpZ2FjYWdlIGRpc2FibGlu
ZyBjaGVja3Mgc2hvdWxkIGhhbmRsZSB0aGUgR0lHQUNBR0VfQUxMT0NBVElPTl9DQU5fRkFJTCBj
YXNlIHByb3Blcmx5LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTkzMjkyCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS80NjQ4NTQ1MD4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBQcmV2aW91c2x5LCB3aGVu
IEdJR0FDQUdFX0FMTE9DQVRJT05fQ0FOX0ZBSUwgaXMgdHJ1ZSwgd2UgYWxsb3cgdGhlIEdpZ2Fj
YWdlIHRvCisgICAgICAgIGJlIGRpc2FibGVkIGlmIHdlIGZhaWwgdG8gYWxsb2NhdGUgbWVtb3J5
IGZvciBpdC4gIEhvd2V2ZXIsIGFkZFByaW1pdGl2ZURpc2FibGVDYWxsYmFjaygpCisgICAgICAg
IHN0aWxsIGFsd2F5cyBhc3N1bWVzIHRoYXQgdGhlIEdpZ2FjYWdlIGlzIGFsd2F5cyBlbmFibGVk
IGFmdGVyIGVuc3VyZUdpZ2FjYWdlKCkgaXMKKyAgICAgICAgY2FsbGVkLgorCisgICAgICAgIFRo
aXMgcGF0Y2ggdXBkYXRlcyBhZGRQcmltaXRpdmVEaXNhYmxlQ2FsbGJhY2soKSB0byBhbGxvdyB0
aGUgR2lnYWNhZ2UgdG8gYWxyZWFkeQorICAgICAgICBiZSBkaXNhYmxlZCBpZiBHSUdBQ0FHRV9B
TExPQ0FUSU9OX0NBTl9GQUlMIGlzIHRydWUgYW5kIHdhc0VuYWJsZWQoKSBpcyBmYWxzZS4KKwor
ICAgICAgICBJbiB0aGlzIHBhdGNoLCB3ZSBhbHNvIHB1dCB0aGUgd2FzRW5hYmxlZCBmbGFnIGlu
IHRoZSAwdGggc2xvdCBvZiB0aGUKKyAgICAgICAgZ19naWdhY2FnZUJhc2VQdHJzIGJ1ZmZlciB0
byBlbnN1cmUgdGhhdCBpdCBpcyBhbHNvIHByb3RlY3RlZCBhZ2FpbnN0IHdyaXRlcyBqdXN0Cisg
ICAgICAgIGxpa2UgdGhlIEdpZ2FjYWdlIGJhc2UgcG9pbnRlcnMuCisKKyAgICAgICAgVG8gYWNo
aWV2ZSB0aGlzLCB3ZSBkbyB0aGUgZm9sbG93aW5nOgorICAgICAgICAxLiBBZGRlZCBhIHJlc2Vy
dmVkRm9yRmxhZ3MgZmllbGQgaW4gc3RydWN0IEJhc2VQdHJzLgorICAgICAgICAyLiBBZGRlZCBh
IFJlc2VydmVkRm9yRmxhZ3NBbmROb3RBQmFzZVB0ciBHaWdhY2FnZTo6S2luZC4KKyAgICAgICAg
My4gQWRkZWQgYXNzZXJ0aW9ucyB0byBlbnN1cmUgdGhhdCB0aGUgQmFzZVB0cnM6OnByaW1pdGl2
ZSBpcyBhdCB0aGUgb2Zmc2V0CisgICAgICAgICAgIG1hdGNoaW5nIHRoZSBvZmZzZXQgY29tcHV0
ZWQgZnJvbSBHaWdhY2FnZTo6UHJpbWl0aXZlLiAgRGl0dG8gZm9yCisgICAgICAgICAgIEJhc2VQ
dHJzOjpqc1ZhbHVlIGFuZCBHaWdhY2FnZTo6SlNWYWx1ZS4KKyAgICAgICAgNC4gQWRkZWQgYXNz
ZXJ0aW9ucyB0byBlbnN1cmUgdGhhdCBHaWdhY2FnZTo6UmVzZXJ2ZWRGb3JGbGFnc0FuZE5vdEFC
YXNlUHRyIGlzIG5vdAorICAgICAgICAgICB1c2VkIGZvciBmZXRjaGluZyBhIEdpZ2FjYWdlIGJh
c2UgcG9pbnRlci4KKyAgICAgICAgNS4gQWRkZWQgUkVMRUFTRV9CQVNTRVJUX05PVF9SRUFDSEVE
KCkgdG8gaW1wbGVtZW50IHN1Y2ggYXNzZXJ0aW9ucyBpbiBibWFsbG9jLgorCisgICAgICAgIE5v
IHRlc3QgYWRkZWQgYmVjYXVzZSB0aGlzIGlzc3VlIHJlcXVpcmVzIEdpZ2FjYWdlIGFsbG9jYXRp
b24gdG8gZmFpbCBpbiBvcmRlciB0bworICAgICAgICBtYW5pZmVzdC4gIEkndmUgdGVzdGVkIGl0
IG1hbnVhbGx5IGJ5IG1vZGlmeWluZyB0aGUgY29kZSBsb2NhbGx5IHRvIGZvcmNlIGFuCisgICAg
ICAgIGFsbG9jYXRpb24gZmFpbHVyZS4KKworICAgICAgICAqIGJtYWxsb2MvQkFzc2VydC5oOgor
ICAgICAgICAqIGJtYWxsb2MvR2lnYWNhZ2UuY3BwOgorICAgICAgICAoR2lnYWNhZ2U6OmVuc3Vy
ZUdpZ2FjYWdlKToKKyAgICAgICAgKEdpZ2FjYWdlOjphZGRQcmltaXRpdmVEaXNhYmxlQ2FsbGJh
Y2spOgorICAgICAgICAqIGJtYWxsb2MvR2lnYWNhZ2UuaDoKKyAgICAgICAgKEdpZ2FjYWdlOjp3
YXNFbmFibGVkKToKKyAgICAgICAgKEdpZ2FjYWdlOjpzZXRXYXNFbmFibGVkKToKKyAgICAgICAg
KEdpZ2FjYWdlOjpuYW1lKToKKyAgICAgICAgKEdpZ2FjYWdlOjpiYXNlUHRyKToKKyAgICAgICAg
KEdpZ2FjYWdlOjpzaXplKToKKyAgICAgICAgKiBibWFsbG9jL0hlYXBLaW5kLmg6CisgICAgICAg
IChibWFsbG9jOjpoZWFwS2luZCk6CisKIDIwMTgtMTItMTUgIFl1c3VrZSBTdXp1a2kgIDx5dXN1
a2VzdXp1a2lAc2xvd3N0YXJ0Lm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLCBzdXBwcmVzcyB3
YXJuaW5ncyBpbiBMaW51eApJbmRleDogU291cmNlL2JtYWxsb2MvYm1hbGxvYy9CQXNzZXJ0LmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL2JtYWxsb2MvYm1hbGxvYy9CQXNzZXJ0LmgJKHJldmlzaW9u
IDIzOTc4MSkKKysrIFNvdXJjZS9ibWFsbG9jL2JtYWxsb2MvQkFzc2VydC5oCSh3b3JraW5nIGNv
cHkpCkBAIC04MSw2ICs4MSw3IEBACiB9IHdoaWxlICgwKQogCiAjZGVmaW5lIFJFTEVBU0VfQkFT
U0VSVCh4KSBCQVNTRVJUX0lNUEwoeCkKKyNkZWZpbmUgUkVMRUFTRV9CQVNTRVJUX05PVF9SRUFD
SEVEKCkgQkNSQVNIKCkKIAogI2lmIEJVU0UoT1NfTE9HKQogI2RlZmluZSBCTUFMTE9DX0xPR0dJ
TkdfUFJFRklYICJibWFsbG9jOiAiCkluZGV4OiBTb3VyY2UvYm1hbGxvYy9ibWFsbG9jL0dpZ2Fj
YWdlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvYm1hbGxvYy9ibWFsbG9jL0dpZ2FjYWdlLmNw
cAkocmV2aXNpb24gMjM5NzgxKQorKysgU291cmNlL2JtYWxsb2MvYm1hbGxvYy9HaWdhY2FnZS5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAy
MDE3LTIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChD
KSAyMDE3LTIwMTkgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCkBAIC00MiwxNCArNDIsMTYgQEAKIC8vIElmIHRoaXMgd2VyZSBs
ZXNzIHRoYW4gMzJHQiwgdGhvc2UgT09CIGFjY2Vzc2VzIGNvdWxkIHJlYWNoIG91dHNpZGUgb2Yg
dGhlIGNhZ2UuCiAjZGVmaW5lIEdJR0FDQUdFX1JVTldBWSAoMzJsbHUgKiAxMDI0ICogMTAyNCAq
IDEwMjQpCiAKKy8vIE5vdGU6IGdfZ2lnYWNhZ2VCYXNlUHRyc1swXSBpcyByZXNlcnZlZCBmb3Ig
c3RvcmluZyB0aGUgd2FzRW5hYmxlZCBmbGFnLgorLy8gVGhlIGZpcnN0IGdpZ2FjYWdlQmFzZVB0
ciB3aWxsIHN0YXJ0IGF0IGdfZ2lnYWNhZ2VCYXNlUHRyc1tzaXplb2Yodm9pZCopXS4KKy8vIFRo
aXMgaXMgZG9uZSBzbyB0aGF0IHRoZSB3YXNFbmFibGVkIGZsYWcgd2lsbCBhbHNvIGJlIHByb3Rl
Y3RlZCBhbG9uZyB3aXRoIHRoZQorLy8gZ2lnYWNhZ2VCYXNlUHRycy4KIGFsaWduYXMoR0lHQUNB
R0VfQkFTRV9QVFJTX1NJWkUpIGNoYXIgZ19naWdhY2FnZUJhc2VQdHJzW0dJR0FDQUdFX0JBU0Vf
UFRSU19TSVpFXTsKIAogdXNpbmcgbmFtZXNwYWNlIGJtYWxsb2M7CiAKIG5hbWVzcGFjZSBHaWdh
Y2FnZSB7CiAKLWJvb2wgZ193YXNFbmFibGVkOwotCiBuYW1lc3BhY2UgewogCiBib29sIHNfaXNE
aXNhYmxpbmdQcmltaXRpdmVHaWdhY2FnZURpc2FibGVkOwpAQCAtMTAzLDYgKzEwNSw4IEBAIHN0
cnVjdCBQcmltaXRpdmVEaXNhYmxlQ2FsbGJhY2tzIHsKIHNpemVfdCBydW53YXlTaXplKEtpbmQg
a2luZCkKIHsKICAgICBzd2l0Y2ggKGtpbmQpIHsKKyAgICBjYXNlIEtpbmQ6OlJlc2VydmVkRm9y
RmxhZ3NBbmROb3RBQmFzZVB0cjoKKyAgICAgICAgUkVMRUFTRV9CQVNTRVJUX05PVF9SRUFDSEVE
KCk7CiAgICAgY2FzZSBLaW5kOjpQcmltaXRpdmU6CiAgICAgICAgIHJldHVybiBzdGF0aWNfY2Fz
dDxzaXplX3Q+KEdJR0FDQUdFX1JVTldBWSk7CiAgICAgY2FzZSBLaW5kOjpKU1ZhbHVlOgpAQCAt
MTI2LDcgKzEzMCw3IEBAIHZvaWQgZW5zdXJlR2lnYWNhZ2UoKQogICAgICAgICAgICAgCiAgICAg
ICAgICAgICBLaW5kIHNodWZmbGVkS2luZHNbbnVtS2luZHNdOwogICAgICAgICAgICAgZm9yICh1
bnNpZ25lZCBpID0gMDsgaSA8IG51bUtpbmRzOyArK2kpCi0gICAgICAgICAgICAgICAgc2h1ZmZs
ZWRLaW5kc1tpXSA9IHN0YXRpY19jYXN0PEtpbmQ+KGkpOworICAgICAgICAgICAgICAgIHNodWZm
bGVkS2luZHNbaV0gPSBzdGF0aWNfY2FzdDxLaW5kPihpICsgMSk7IC8vICsgMSB0byBza2lwIEtp
bmQ6OlJlc2VydmVkRm9yRmxhZ3NBbmROb3RBQmFzZVB0ci4KICAgICAgICAgICAgIAogICAgICAg
ICAgICAgLy8gV2UganVzdCBnbyBhaGVhZCBhbmQgYXNzdW1lIHRoYXQgNjQgYml0cyBpcyBlbm91
Z2ggcmFuZG9tbmVzcy4gVGhhdCdzIHRyaXZpYWxseSB0cnVlIHJpZ2h0CiAgICAgICAgICAgICAv
LyBub3csIGJ1dCB3b3VsZCBzdG9wIGJlaW5nIHRydWUgaWYgd2Ugd2VudCBjcmF6eSB3aXRoIGdp
Z2FjYWdlcy4gQmFzZWQgb24gbXkgbWF0aCwgMjEgaXMgdGhlCkBAIC0xODIsOCArMTg2LDggQEAg
dm9pZCBlbnN1cmVHaWdhY2FnZSgpCiAgICAgICAgICAgICB9CiAgICAgICAgICAgICAKICAgICAg
ICAgICAgIHZtRGVhbGxvY2F0ZVBoeXNpY2FsUGFnZXMoYmFzZSwgdG90YWxTaXplKTsKKyAgICAg
ICAgICAgIHNldFdhc0VuYWJsZWQoKTsKICAgICAgICAgICAgIHByb3RlY3RHaWdhY2FnZUJhc2VQ
dHJzKCk7Ci0gICAgICAgICAgICBnX3dhc0VuYWJsZWQgPSB0cnVlOwogICAgICAgICB9KTsKICNl
bmRpZiAvLyBHSUdBQ0FHRV9FTkFCTEVECiB9CkBAIC0yMTEsNyArMjE1LDggQEAgdm9pZCBhZGRQ
cmltaXRpdmVEaXNhYmxlQ2FsbGJhY2sodm9pZCAoKgogICAgIGVuc3VyZUdpZ2FjYWdlKCk7CiAg
ICAgaWYgKCFiYXNlUHRycygpLnByaW1pdGl2ZSkgewogICAgICAgICAvLyBJdCB3YXMgYWxyZWFk
eSBkaXNhYmxlZCBvciB3ZSB3ZXJlIG5ldmVyIGFibGUgdG8gZW5hYmxlIGl0LgotICAgICAgICBm
dW5jdGlvbihhcmd1bWVudCk7CisgICAgICAgIGlmICghR0lHQUNBR0VfQUxMT0NBVElPTl9DQU5f
RkFJTCB8fCB3YXNFbmFibGVkKCkpCisgICAgICAgICAgICBmdW5jdGlvbihhcmd1bWVudCk7CiAg
ICAgICAgIHJldHVybjsKICAgICB9CiAgICAgCkluZGV4OiBTb3VyY2UvYm1hbGxvYy9ibWFsbG9j
L0dpZ2FjYWdlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL2JtYWxsb2MvYm1hbGxvYy9HaWdhY2Fn
ZS5oCShyZXZpc2lvbiAyMzk3ODEpCisrKyBTb3VyY2UvYm1hbGxvYy9ibWFsbG9jL0dpZ2FjYWdl
LmgJKHdvcmtpbmcgY29weSkKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAy
MDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAx
Ny0yMDE5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
ICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucwpAQCAtNzUsMTkgKzc1LDI0IEBAIGV4dGVybiAiQyIgYWxpZ25hcyhHSUdB
Q0FHRV9CQVNFX1BUUlNfU0kKIAogbmFtZXNwYWNlIEdpZ2FjYWdlIHsKIAotZXh0ZXJuIEJFWFBP
UlQgYm9vbCBnX3dhc0VuYWJsZWQ7Ci1CSU5MSU5FIGJvb2wgd2FzRW5hYmxlZCgpIHsgcmV0dXJu
IGdfd2FzRW5hYmxlZDsgfQorQklOTElORSBib29sIHdhc0VuYWJsZWQoKSB7IHJldHVybiBnX2dp
Z2FjYWdlQmFzZVB0cnNbMF07IH0KK0JJTkxJTkUgdm9pZCBzZXRXYXNFbmFibGVkKCkgeyBnX2dp
Z2FjYWdlQmFzZVB0cnNbMF0gPSB0cnVlOyB9CiAKIHN0cnVjdCBCYXNlUHRycyB7CisgICAgdWlu
dHB0cl90IHJlc2VydmVkRm9yRmxhZ3M7CiAgICAgdm9pZCogcHJpbWl0aXZlOwogICAgIHZvaWQq
IGpzVmFsdWU7CiB9OwogCiBlbnVtIEtpbmQgeworICAgIFJlc2VydmVkRm9yRmxhZ3NBbmROb3RB
QmFzZVB0ciA9IDAsCiAgICAgUHJpbWl0aXZlLAogICAgIEpTVmFsdWUsCiB9OwogCitzdGF0aWNf
YXNzZXJ0KG9mZnNldG9mKEJhc2VQdHJzLCBwcmltaXRpdmUpID09IEtpbmQ6OlByaW1pdGl2ZSAq
IHNpemVvZih2b2lkKiksICIiKTsKK3N0YXRpY19hc3NlcnQob2Zmc2V0b2YoQmFzZVB0cnMsIGpz
VmFsdWUpID09IEtpbmQ6OkpTVmFsdWUgKiBzaXplb2Yodm9pZCopLCAiIik7CisKIHN0YXRpYyBj
b25zdGV4cHIgdW5zaWduZWQgbnVtS2luZHMgPSAyOwogCiBCRVhQT1JUIHZvaWQgZW5zdXJlR2ln
YWNhZ2UoKTsKQEAgLTEwNyw2ICsxMTIsOCBAQCBpbmxpbmUgYm9vbCBjYW5QcmltaXRpdmVHaWdh
Y2FnZUJlRGlzYWJsCiBCSU5MSU5FIGNvbnN0IGNoYXIqIG5hbWUoS2luZCBraW5kKQogewogICAg
IHN3aXRjaCAoa2luZCkgeworICAgIGNhc2UgUmVzZXJ2ZWRGb3JGbGFnc0FuZE5vdEFCYXNlUHRy
OgorICAgICAgICBSRUxFQVNFX0JBU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICBjYXNlIFByaW1p
dGl2ZToKICAgICAgICAgcmV0dXJuICJQcmltaXRpdmUiOwogICAgIGNhc2UgSlNWYWx1ZToKQEAg
LTExOSw2ICsxMjYsOCBAQCBCSU5MSU5FIGNvbnN0IGNoYXIqIG5hbWUoS2luZCBraW5kKQogQklO
TElORSB2b2lkKiYgYmFzZVB0cihCYXNlUHRycyYgYmFzZVB0cnMsIEtpbmQga2luZCkKIHsKICAg
ICBzd2l0Y2ggKGtpbmQpIHsKKyAgICBjYXNlIFJlc2VydmVkRm9yRmxhZ3NBbmROb3RBQmFzZVB0
cjoKKyAgICAgICAgUkVMRUFTRV9CQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgY2FzZSBQcmlt
aXRpdmU6CiAgICAgICAgIHJldHVybiBiYXNlUHRycy5wcmltaXRpdmU7CiAgICAgY2FzZSBKU1Zh
bHVlOgpAQCAtMTQ2LDYgKzE1NSw4IEBAIEJJTkxJTkUgYm9vbCBpc0VuYWJsZWQoS2luZCBraW5k
KQogQklOTElORSBzaXplX3Qgc2l6ZShLaW5kIGtpbmQpCiB7CiAgICAgc3dpdGNoIChraW5kKSB7
CisgICAgY2FzZSBSZXNlcnZlZEZvckZsYWdzQW5kTm90QUJhc2VQdHI6CisgICAgICAgIFJFTEVB
U0VfQkFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgIGNhc2UgUHJpbWl0aXZlOgogICAgICAgICBy
ZXR1cm4gc3RhdGljX2Nhc3Q8c2l6ZV90PihQUklNSVRJVkVfR0lHQUNBR0VfU0laRSk7CiAgICAg
Y2FzZSBKU1ZhbHVlOgpJbmRleDogU291cmNlL2JtYWxsb2MvYm1hbGxvYy9IZWFwS2luZC5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9ibWFsbG9jL2JtYWxsb2MvSGVhcEtpbmQuaAkocmV2aXNpb24g
MjM5NzgxKQorKysgU291cmNlL2JtYWxsb2MvYm1hbGxvYy9IZWFwS2luZC5oCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNyBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTctMjAxOSBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
QEAgLTcwLDYgKzcwLDggQEAgQklOTElORSBHaWdhY2FnZTo6S2luZCBnaWdhY2FnZUtpbmQoSGVh
cAogQklOTElORSBIZWFwS2luZCBoZWFwS2luZChHaWdhY2FnZTo6S2luZCBraW5kKQogewogICAg
IHN3aXRjaCAoa2luZCkgeworICAgIGNhc2UgR2lnYWNhZ2U6OlJlc2VydmVkRm9yRmxhZ3NBbmRO
b3RBQmFzZVB0cjoKKyAgICAgICAgUkVMRUFTRV9CQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAg
Y2FzZSBHaWdhY2FnZTo6UHJpbWl0aXZlOgogICAgICAgICByZXR1cm4gSGVhcEtpbmQ6OlByaW1p
dGl2ZUdpZ2FjYWdlOwogICAgIGNhc2UgR2lnYWNhZ2U6OkpTVmFsdWU6Cg==
</data>
<flag name="review"
          id="375552"
          type_id="1"
          status="-"
          setter="mark.lam"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>358741</attachid>
            <date>2019-01-09 14:39:21 -0800</date>
            <delta_ts>2019-01-09 14:41:07 -0800</delta_ts>
            <desc>proposed patch.</desc>
            <filename>bug-193292.patch</filename>
            <type>text/plain</type>
            <size>12371</size>
            <attacher name="Mark Lam">mark.lam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjM5NzgxKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBA
CisyMDE5LTAxLTA5ICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KKworICAgICAgICBH
aWdhY2FnZSBkaXNhYmxpbmcgY2hlY2tzIHNob3VsZCBoYW5kbGUgdGhlIEdJR0FDQUdFX0FMTE9D
QVRJT05fQ0FOX0ZBSUwgY2FzZSBwcm9wZXJseS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MzI5MgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNDY0
ODU0NTA+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
KiBydW50aW1lL1ZNLmg6CisgICAgICAgIChKU0M6OlZNOjpnaWdhY2FnZUF1eGlsaWFyeVNwYWNl
KToKKwogMjAxOS0wMS0wOCAgS2VpdGggTWlsbGVyICA8a2VpdGhfbWlsbGVyQGFwcGxlLmNvbT4K
IAogICAgICAgICBidWlsdGlucyBzaG91bGQgYmUgYWJsZSB0byB1c2UgYXN5bmMvYXdhaXQKSW5k
ZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZNLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0uaAkocmV2aXNpb24gMjM5NzgxKQorKysgU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0uaAkod29ya2luZyBjb3B5KQpAQCAtMSw1ICsx
LDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxOSBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTM0Niw2
ICszNDYsOCBAQCBwdWJsaWM6CiAgICAgQUxXQVlTX0lOTElORSBDb21wbGV0ZVN1YnNwYWNlJiBn
aWdhY2FnZUF1eGlsaWFyeVNwYWNlKEdpZ2FjYWdlOjpLaW5kIGtpbmQpCiAgICAgewogICAgICAg
ICBzd2l0Y2ggKGtpbmQpIHsKKyAgICAgICAgY2FzZSBHaWdhY2FnZTo6UmVzZXJ2ZWRGb3JGbGFn
c0FuZE5vdEFCYXNlUHRyOgorICAgICAgICAgICAgUkVMRUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQo
KTsKICAgICAgICAgY2FzZSBHaWdhY2FnZTo6UHJpbWl0aXZlOgogICAgICAgICAgICAgcmV0dXJu
IHByaW1pdGl2ZUdpZ2FjYWdlQXV4aWxpYXJ5U3BhY2U7CiAgICAgICAgIGNhc2UgR2lnYWNhZ2U6
OkpTVmFsdWU6CkluZGV4OiBTb3VyY2UvV1RGL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV1RGL0NoYW5nZUxvZwkocmV2aXNpb24gMjM5NzgxKQorKysgU291cmNlL1dURi9DaGFuZ2VM
b2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNSBAQAorMjAxOS0wMS0wOSAgTWFyayBMYW0g
IDxtYXJrLmxhbUBhcHBsZS5jb20+CisKKyAgICAgICAgR2lnYWNhZ2UgZGlzYWJsaW5nIGNoZWNr
cyBzaG91bGQgaGFuZGxlIHRoZSBHSUdBQ0FHRV9BTExPQ0FUSU9OX0NBTl9GQUlMIGNhc2UgcHJv
cGVybHkuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
OTMyOTIKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQ2NDg1NDUwPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZSB0aGUgVVNFX1NZU1RFTV9N
QUxMT0MgdmVyc2lvbiBvZiBHaWdhY2FnZS5oIHRvIG1hdGNoIHRoZSBibWFsbG9jIHZlcnNpb24u
CisKKyAgICAgICAgKiB3dGYvR2lnYWNhZ2UuaDoKKwogMjAxOS0wMS0wNyAgRGF2aWQgS2lsemVy
ICA8ZGRraWx6ZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFByZWZlciBSZXRhaW5QdHI8TlNPYmpl
Y3Q+IHRvIFJldGFpblB0cjxOU09iamVjdCAqPgpJbmRleDogU291cmNlL1dURi93dGYvR2lnYWNh
Z2UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9HaWdhY2FnZS5oCShyZXZpc2lvbiAy
Mzk3ODEpCisrKyBTb3VyY2UvV1RGL3d0Zi9HaWdhY2FnZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0x
LDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNy0yMDE4IEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAxNy0yMDE5IEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAt
NDAsMTUgKzQwLDIwIEBAIGFsaWduYXModm9pZCopIGV4dGVybiBXVEZfRVhQT1JUX1BSSVZBVEUK
IG5hbWVzcGFjZSBHaWdhY2FnZSB7CiAKIHN0cnVjdCBCYXNlUHRycyB7CisgICAgdWludHB0cl90
IHJlc2VydmVkRm9yRmxhZ3M7CiAgICAgdm9pZCogcHJpbWl0aXZlOwogICAgIHZvaWQqIGpzVmFs
dWU7CiB9OwogCiBlbnVtIEtpbmQgeworICAgIFJlc2VydmVkRm9yRmxhZ3NBbmROb3RBQmFzZVB0
ciA9IDAsCiAgICAgUHJpbWl0aXZlLAogICAgIEpTVmFsdWUsCiB9OwogCitzdGF0aWNfYXNzZXJ0
KG9mZnNldG9mKEJhc2VQdHJzLCBwcmltaXRpdmUpID09IEtpbmQ6OlByaW1pdGl2ZSAqIHNpemVv
Zih2b2lkKiksICIiKTsKK3N0YXRpY19hc3NlcnQob2Zmc2V0b2YoQmFzZVB0cnMsIGpzVmFsdWUp
ID09IEtpbmQ6OkpTVmFsdWUgKiBzaXplb2Yodm9pZCopLCAiIik7CisKIGlubGluZSB2b2lkIGVu
c3VyZUdpZ2FjYWdlKCkgeyB9CiBpbmxpbmUgdm9pZCBkaXNhYmxlUHJpbWl0aXZlR2lnYWNhZ2Uo
KSB7IH0KIGlubGluZSBib29sIHNob3VsZEJlRW5hYmxlZCgpIHsgcmV0dXJuIGZhbHNlOyB9CkBA
IC02NSw2ICs3MCw4IEBAIGlubGluZSBib29sIGNhblByaW1pdGl2ZUdpZ2FjYWdlQmVEaXNhYmwK
IEFMV0FZU19JTkxJTkUgY29uc3QgY2hhciogbmFtZShLaW5kIGtpbmQpCiB7CiAgICAgc3dpdGNo
IChraW5kKSB7CisgICAgY2FzZSBSZXNlcnZlZEZvckZsYWdzQW5kTm90QUJhc2VQdHI6CisgICAg
ICAgIFJFTEVBU0VfQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgY2FzZSBQcmltaXRpdmU6CiAg
ICAgICAgIHJldHVybiAiUHJpbWl0aXZlIjsKICAgICBjYXNlIEpTVmFsdWU6CkBAIC03Nyw2ICs4
NCw4IEBAIEFMV0FZU19JTkxJTkUgY29uc3QgY2hhciogbmFtZShLaW5kIGtpbmQKIEFMV0FZU19J
TkxJTkUgdm9pZComIGJhc2VQdHIoQmFzZVB0cnMmIGJhc2VQdHJzLCBLaW5kIGtpbmQpCiB7CiAg
ICAgc3dpdGNoIChraW5kKSB7CisgICAgY2FzZSBSZXNlcnZlZEZvckZsYWdzQW5kTm90QUJhc2VQ
dHI6CisgICAgICAgIFJFTEVBU0VfQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgY2FzZSBQcmlt
aXRpdmU6CiAgICAgICAgIHJldHVybiBiYXNlUHRycy5wcmltaXRpdmU7CiAgICAgY2FzZSBKU1Zh
bHVlOgpJbmRleDogU291cmNlL2JtYWxsb2MvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9ibWFsbG9jL0NoYW5nZUxvZwkocmV2aXNpb24gMjM5Nzg2KQorKysgU291cmNlL2JtYWxsb2Mv
Q2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsNTEgQEAKKzIwMTktMDEtMDkgIE1h
cmsgTGFtICA8bWFyay5sYW1AYXBwbGUuY29tPgorCisgICAgICAgIEdpZ2FjYWdlIGRpc2FibGlu
ZyBjaGVja3Mgc2hvdWxkIGhhbmRsZSB0aGUgR0lHQUNBR0VfQUxMT0NBVElPTl9DQU5fRkFJTCBj
YXNlIHByb3Blcmx5LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTkzMjkyCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS80NjQ4NTQ1MD4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBQcmV2aW91c2x5LCB3aGVu
IEdJR0FDQUdFX0FMTE9DQVRJT05fQ0FOX0ZBSUwgaXMgdHJ1ZSwgd2UgYWxsb3cgdGhlIEdpZ2Fj
YWdlIHRvCisgICAgICAgIGJlIGRpc2FibGVkIGlmIHdlIGZhaWwgdG8gYWxsb2NhdGUgbWVtb3J5
IGZvciBpdC4gIEhvd2V2ZXIsIEdpZ2FjYWdlOjpwcmltaXRpdmVHaWdhY2FnZURpc2FibGVkKCkK
KyAgICAgICAgc3RpbGwgYWx3YXlzIGFzc3VtZXMgdGhhdCB0aGUgR2lnYWNhZ2UgaXMgYWx3YXlz
IGVuYWJsZWQgYWZ0ZXIgZW5zdXJlR2lnYWNhZ2UoKSBpcworICAgICAgICBjYWxsZWQuCisKKyAg
ICAgICAgVGhpcyBwYXRjaCB1cGRhdGVzIEdpZ2FjYWdlOjpwcmltaXRpdmVHaWdhY2FnZURpc2Fi
bGVkKCkgdG8gYWxsb3cgdGhlIEdpZ2FjYWdlIHRvCisgICAgICAgIGFscmVhZHkgYmUgZGlzYWJs
ZWQgaWYgR0lHQUNBR0VfQUxMT0NBVElPTl9DQU5fRkFJTCBpcyB0cnVlIGFuZCB3YXNFbmFibGVk
KCkgaXMKKyAgICAgICAgZmFsc2UuCisKKyAgICAgICAgSW4gdGhpcyBwYXRjaCwgd2UgYWxzbyBw
dXQgdGhlIHdhc0VuYWJsZWQgZmxhZyBpbiB0aGUgMHRoIHNsb3Qgb2YgdGhlCisgICAgICAgIGdf
Z2lnYWNhZ2VCYXNlUHRycyBidWZmZXIgdG8gZW5zdXJlIHRoYXQgaXQgaXMgYWxzbyBwcm90ZWN0
ZWQgYWdhaW5zdCB3cml0ZXMganVzdAorICAgICAgICBsaWtlIHRoZSBHaWdhY2FnZSBiYXNlIHBv
aW50ZXJzLgorCisgICAgICAgIFRvIGFjaGlldmUgdGhpcywgd2UgZG8gdGhlIGZvbGxvd2luZzoK
KyAgICAgICAgMS4gQWRkZWQgYSByZXNlcnZlZEZvckZsYWdzIGZpZWxkIGluIHN0cnVjdCBCYXNl
UHRycy4KKyAgICAgICAgMi4gQWRkZWQgYSBSZXNlcnZlZEZvckZsYWdzQW5kTm90QUJhc2VQdHIg
R2lnYWNhZ2U6OktpbmQuCisgICAgICAgIDMuIEFkZGVkIGFzc2VydGlvbnMgdG8gZW5zdXJlIHRo
YXQgdGhlIEJhc2VQdHJzOjpwcmltaXRpdmUgaXMgYXQgdGhlIG9mZnNldAorICAgICAgICAgICBt
YXRjaGluZyB0aGUgb2Zmc2V0IGNvbXB1dGVkIGZyb20gR2lnYWNhZ2U6OlByaW1pdGl2ZS4gIERp
dHRvIGZvcgorICAgICAgICAgICBCYXNlUHRyczo6anNWYWx1ZSBhbmQgR2lnYWNhZ2U6OkpTVmFs
dWUuCisgICAgICAgIDQuIEFkZGVkIGFzc2VydGlvbnMgdG8gZW5zdXJlIHRoYXQgR2lnYWNhZ2U6
OlJlc2VydmVkRm9yRmxhZ3NBbmROb3RBQmFzZVB0ciBpcyBub3QKKyAgICAgICAgICAgdXNlZCBm
b3IgZmV0Y2hpbmcgYSBHaWdhY2FnZSBiYXNlIHBvaW50ZXIuCisgICAgICAgIDUuIEFkZGVkIFJF
TEVBU0VfQkFTU0VSVF9OT1RfUkVBQ0hFRCgpIHRvIGltcGxlbWVudCBzdWNoIGFzc2VydGlvbnMg
aW4gYm1hbGxvYy4KKworICAgICAgICBObyB0ZXN0IGFkZGVkIGJlY2F1c2UgdGhpcyBpc3N1ZSBy
ZXF1aXJlcyBHaWdhY2FnZSBhbGxvY2F0aW9uIHRvIGZhaWwgaW4gb3JkZXIgdG8KKyAgICAgICAg
bWFuaWZlc3QuICBJJ3ZlIHRlc3RlZCBpdCBtYW51YWxseSBieSBtb2RpZnlpbmcgdGhlIGNvZGUg
bG9jYWxseSB0byBmb3JjZSBhbgorICAgICAgICBhbGxvY2F0aW9uIGZhaWx1cmUuCisKKyAgICAg
ICAgKiBibWFsbG9jL0JBc3NlcnQuaDoKKyAgICAgICAgKiBibWFsbG9jL0dpZ2FjYWdlLmNwcDoK
KyAgICAgICAgKEdpZ2FjYWdlOjplbnN1cmVHaWdhY2FnZSk6CisgICAgICAgIChHaWdhY2FnZTo6
cHJpbWl0aXZlR2lnYWNhZ2VEaXNhYmxlZCk6CisgICAgICAgICogYm1hbGxvYy9HaWdhY2FnZS5o
OgorICAgICAgICAoR2lnYWNhZ2U6Ondhc0VuYWJsZWQpOgorICAgICAgICAoR2lnYWNhZ2U6OnNl
dFdhc0VuYWJsZWQpOgorICAgICAgICAoR2lnYWNhZ2U6Om5hbWUpOgorICAgICAgICAoR2lnYWNh
Z2U6OmJhc2VQdHIpOgorICAgICAgICAoR2lnYWNhZ2U6OnNpemUpOgorICAgICAgICAqIGJtYWxs
b2MvSGVhcEtpbmQuaDoKKyAgICAgICAgKGJtYWxsb2M6OmhlYXBLaW5kKToKKwogMjAxOC0xMi0x
NSAgWXVzdWtlIFN1enVraSAgPHl1c3VrZXN1enVraUBzbG93c3RhcnQub3JnPgogCiAgICAgICAg
IFVucmV2aWV3ZWQsIHN1cHByZXNzIHdhcm5pbmdzIGluIExpbnV4CkluZGV4OiBTb3VyY2UvYm1h
bGxvYy9ibWFsbG9jL0JBc3NlcnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvYm1hbGxvYy9ibWFs
bG9jL0JBc3NlcnQuaAkocmV2aXNpb24gMjM5NzgxKQorKysgU291cmNlL2JtYWxsb2MvYm1hbGxv
Yy9CQXNzZXJ0LmgJKHdvcmtpbmcgY29weSkKQEAgLTgxLDYgKzgxLDcgQEAKIH0gd2hpbGUgKDAp
CiAKICNkZWZpbmUgUkVMRUFTRV9CQVNTRVJUKHgpIEJBU1NFUlRfSU1QTCh4KQorI2RlZmluZSBS
RUxFQVNFX0JBU1NFUlRfTk9UX1JFQUNIRUQoKSBCQ1JBU0goKQogCiAjaWYgQlVTRShPU19MT0cp
CiAjZGVmaW5lIEJNQUxMT0NfTE9HR0lOR19QUkVGSVggImJtYWxsb2M6ICIKSW5kZXg6IFNvdXJj
ZS9ibWFsbG9jL2JtYWxsb2MvR2lnYWNhZ2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9ibWFs
bG9jL2JtYWxsb2MvR2lnYWNhZ2UuY3BwCShyZXZpc2lvbiAyMzk3ODEpCisrKyBTb3VyY2UvYm1h
bGxvYy9ibWFsbG9jL0dpZ2FjYWdlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMSw1ICsxLDUgQEAK
IC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTctMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTctMjAxOSBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTQyLDE0ICs0Miwx
NiBAQAogLy8gSWYgdGhpcyB3ZXJlIGxlc3MgdGhhbiAzMkdCLCB0aG9zZSBPT0IgYWNjZXNzZXMg
Y291bGQgcmVhY2ggb3V0c2lkZSBvZiB0aGUgY2FnZS4KICNkZWZpbmUgR0lHQUNBR0VfUlVOV0FZ
ICgzMmxsdSAqIDEwMjQgKiAxMDI0ICogMTAyNCkKIAorLy8gTm90ZTogZ19naWdhY2FnZUJhc2VQ
dHJzWzBdIGlzIHJlc2VydmVkIGZvciBzdG9yaW5nIHRoZSB3YXNFbmFibGVkIGZsYWcuCisvLyBU
aGUgZmlyc3QgZ2lnYWNhZ2VCYXNlUHRyIHdpbGwgc3RhcnQgYXQgZ19naWdhY2FnZUJhc2VQdHJz
W3NpemVvZih2b2lkKildLgorLy8gVGhpcyBpcyBkb25lIHNvIHRoYXQgdGhlIHdhc0VuYWJsZWQg
ZmxhZyB3aWxsIGFsc28gYmUgcHJvdGVjdGVkIGFsb25nIHdpdGggdGhlCisvLyBnaWdhY2FnZUJh
c2VQdHJzLgogYWxpZ25hcyhHSUdBQ0FHRV9CQVNFX1BUUlNfU0laRSkgY2hhciBnX2dpZ2FjYWdl
QmFzZVB0cnNbR0lHQUNBR0VfQkFTRV9QVFJTX1NJWkVdOwogCiB1c2luZyBuYW1lc3BhY2UgYm1h
bGxvYzsKIAogbmFtZXNwYWNlIEdpZ2FjYWdlIHsKIAotYm9vbCBnX3dhc0VuYWJsZWQ7Ci0KIG5h
bWVzcGFjZSB7CiAKIGJvb2wgc19pc0Rpc2FibGluZ1ByaW1pdGl2ZUdpZ2FjYWdlRGlzYWJsZWQ7
CkBAIC0xMDMsNiArMTA1LDggQEAgc3RydWN0IFByaW1pdGl2ZURpc2FibGVDYWxsYmFja3Mgewog
c2l6ZV90IHJ1bndheVNpemUoS2luZCBraW5kKQogewogICAgIHN3aXRjaCAoa2luZCkgeworICAg
IGNhc2UgS2luZDo6UmVzZXJ2ZWRGb3JGbGFnc0FuZE5vdEFCYXNlUHRyOgorICAgICAgICBSRUxF
QVNFX0JBU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICBjYXNlIEtpbmQ6OlByaW1pdGl2ZToKICAg
ICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PHNpemVfdD4oR0lHQUNBR0VfUlVOV0FZKTsKICAgICBj
YXNlIEtpbmQ6OkpTVmFsdWU6CkBAIC0xMjYsNyArMTMwLDcgQEAgdm9pZCBlbnN1cmVHaWdhY2Fn
ZSgpCiAgICAgICAgICAgICAKICAgICAgICAgICAgIEtpbmQgc2h1ZmZsZWRLaW5kc1tudW1LaW5k
c107CiAgICAgICAgICAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgbnVtS2luZHM7ICsraSkK
LSAgICAgICAgICAgICAgICBzaHVmZmxlZEtpbmRzW2ldID0gc3RhdGljX2Nhc3Q8S2luZD4oaSk7
CisgICAgICAgICAgICAgICAgc2h1ZmZsZWRLaW5kc1tpXSA9IHN0YXRpY19jYXN0PEtpbmQ+KGkg
KyAxKTsgLy8gKyAxIHRvIHNraXAgS2luZDo6UmVzZXJ2ZWRGb3JGbGFnc0FuZE5vdEFCYXNlUHRy
LgogICAgICAgICAgICAgCiAgICAgICAgICAgICAvLyBXZSBqdXN0IGdvIGFoZWFkIGFuZCBhc3N1
bWUgdGhhdCA2NCBiaXRzIGlzIGVub3VnaCByYW5kb21uZXNzLiBUaGF0J3MgdHJpdmlhbGx5IHRy
dWUgcmlnaHQKICAgICAgICAgICAgIC8vIG5vdywgYnV0IHdvdWxkIHN0b3AgYmVpbmcgdHJ1ZSBp
ZiB3ZSB3ZW50IGNyYXp5IHdpdGggZ2lnYWNhZ2VzLiBCYXNlZCBvbiBteSBtYXRoLCAyMSBpcyB0
aGUKQEAgLTE4Miw4ICsxODYsOCBAQCB2b2lkIGVuc3VyZUdpZ2FjYWdlKCkKICAgICAgICAgICAg
IH0KICAgICAgICAgICAgIAogICAgICAgICAgICAgdm1EZWFsbG9jYXRlUGh5c2ljYWxQYWdlcyhi
YXNlLCB0b3RhbFNpemUpOworICAgICAgICAgICAgc2V0V2FzRW5hYmxlZCgpOwogICAgICAgICAg
ICAgcHJvdGVjdEdpZ2FjYWdlQmFzZVB0cnMoKTsKLSAgICAgICAgICAgIGdfd2FzRW5hYmxlZCA9
IHRydWU7CiAgICAgICAgIH0pOwogI2VuZGlmIC8vIEdJR0FDQUdFX0VOQUJMRUQKIH0KQEAgLTIz
Niw2ICsyNDAsOSBAQCB2b2lkIHJlbW92ZVByaW1pdGl2ZURpc2FibGVDYWxsYmFjayh2b2lkCiAK
IHN0YXRpYyB2b2lkIHByaW1pdGl2ZUdpZ2FjYWdlRGlzYWJsZWQodm9pZCopCiB7CisgICAgaWYg
KEdJR0FDQUdFX0FMTE9DQVRJT05fQ0FOX0ZBSUwgJiYgIXdhc0VuYWJsZWQoKSkKKyAgICAgICAg
cmV0dXJuOworCiAgICAgc3RhdGljIGJvb2wgc19mYWxzZTsKICAgICBmcHJpbnRmKHN0ZGVyciwg
IkZBVEFMOiBQcmltaXRpdmUgZ2lnYWNhZ2UgZGlzYWJsZWQsIGJ1dCB3ZSBkb24ndCB3YW50IHRo
YXQgaW4gdGhpcyBwcm9jZXNzLlxuIik7CiAgICAgaWYgKCFzX2ZhbHNlKQpJbmRleDogU291cmNl
L2JtYWxsb2MvYm1hbGxvYy9HaWdhY2FnZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9ibWFsbG9j
L2JtYWxsb2MvR2lnYWNhZ2UuaAkocmV2aXNpb24gMjM5NzgxKQorKysgU291cmNlL2JtYWxsb2Mv
Ym1hbGxvYy9HaWdhY2FnZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAq
IENvcHlyaWdodCAoQykgMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBD
b3B5cmlnaHQgKEMpIDIwMTctMjAxOSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAg
KgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTc1LDE5ICs3NSwyNCBAQCBleHRlcm4g
IkMiIGFsaWduYXMoR0lHQUNBR0VfQkFTRV9QVFJTX1NJCiAKIG5hbWVzcGFjZSBHaWdhY2FnZSB7
CiAKLWV4dGVybiBCRVhQT1JUIGJvb2wgZ193YXNFbmFibGVkOwotQklOTElORSBib29sIHdhc0Vu
YWJsZWQoKSB7IHJldHVybiBnX3dhc0VuYWJsZWQ7IH0KK0JJTkxJTkUgYm9vbCB3YXNFbmFibGVk
KCkgeyByZXR1cm4gZ19naWdhY2FnZUJhc2VQdHJzWzBdOyB9CitCSU5MSU5FIHZvaWQgc2V0V2Fz
RW5hYmxlZCgpIHsgZ19naWdhY2FnZUJhc2VQdHJzWzBdID0gdHJ1ZTsgfQogCiBzdHJ1Y3QgQmFz
ZVB0cnMgeworICAgIHVpbnRwdHJfdCByZXNlcnZlZEZvckZsYWdzOwogICAgIHZvaWQqIHByaW1p
dGl2ZTsKICAgICB2b2lkKiBqc1ZhbHVlOwogfTsKIAogZW51bSBLaW5kIHsKKyAgICBSZXNlcnZl
ZEZvckZsYWdzQW5kTm90QUJhc2VQdHIgPSAwLAogICAgIFByaW1pdGl2ZSwKICAgICBKU1ZhbHVl
LAogfTsKIAorc3RhdGljX2Fzc2VydChvZmZzZXRvZihCYXNlUHRycywgcHJpbWl0aXZlKSA9PSBL
aW5kOjpQcmltaXRpdmUgKiBzaXplb2Yodm9pZCopLCAiIik7CitzdGF0aWNfYXNzZXJ0KG9mZnNl
dG9mKEJhc2VQdHJzLCBqc1ZhbHVlKSA9PSBLaW5kOjpKU1ZhbHVlICogc2l6ZW9mKHZvaWQqKSwg
IiIpOworCiBzdGF0aWMgY29uc3RleHByIHVuc2lnbmVkIG51bUtpbmRzID0gMjsKIAogQkVYUE9S
VCB2b2lkIGVuc3VyZUdpZ2FjYWdlKCk7CkBAIC0xMDcsNiArMTEyLDggQEAgaW5saW5lIGJvb2wg
Y2FuUHJpbWl0aXZlR2lnYWNhZ2VCZURpc2FibAogQklOTElORSBjb25zdCBjaGFyKiBuYW1lKEtp
bmQga2luZCkKIHsKICAgICBzd2l0Y2ggKGtpbmQpIHsKKyAgICBjYXNlIFJlc2VydmVkRm9yRmxh
Z3NBbmROb3RBQmFzZVB0cjoKKyAgICAgICAgUkVMRUFTRV9CQVNTRVJUX05PVF9SRUFDSEVEKCk7
CiAgICAgY2FzZSBQcmltaXRpdmU6CiAgICAgICAgIHJldHVybiAiUHJpbWl0aXZlIjsKICAgICBj
YXNlIEpTVmFsdWU6CkBAIC0xMTksNiArMTI2LDggQEAgQklOTElORSBjb25zdCBjaGFyKiBuYW1l
KEtpbmQga2luZCkKIEJJTkxJTkUgdm9pZComIGJhc2VQdHIoQmFzZVB0cnMmIGJhc2VQdHJzLCBL
aW5kIGtpbmQpCiB7CiAgICAgc3dpdGNoIChraW5kKSB7CisgICAgY2FzZSBSZXNlcnZlZEZvckZs
YWdzQW5kTm90QUJhc2VQdHI6CisgICAgICAgIFJFTEVBU0VfQkFTU0VSVF9OT1RfUkVBQ0hFRCgp
OwogICAgIGNhc2UgUHJpbWl0aXZlOgogICAgICAgICByZXR1cm4gYmFzZVB0cnMucHJpbWl0aXZl
OwogICAgIGNhc2UgSlNWYWx1ZToKQEAgLTE0Niw2ICsxNTUsOCBAQCBCSU5MSU5FIGJvb2wgaXNF
bmFibGVkKEtpbmQga2luZCkKIEJJTkxJTkUgc2l6ZV90IHNpemUoS2luZCBraW5kKQogewogICAg
IHN3aXRjaCAoa2luZCkgeworICAgIGNhc2UgUmVzZXJ2ZWRGb3JGbGFnc0FuZE5vdEFCYXNlUHRy
OgorICAgICAgICBSRUxFQVNFX0JBU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICBjYXNlIFByaW1p
dGl2ZToKICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PHNpemVfdD4oUFJJTUlUSVZFX0dJR0FD
QUdFX1NJWkUpOwogICAgIGNhc2UgSlNWYWx1ZToKSW5kZXg6IFNvdXJjZS9ibWFsbG9jL2JtYWxs
b2MvSGVhcEtpbmQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvYm1hbGxvYy9ibWFsbG9jL0hlYXBL
aW5kLmgJKHJldmlzaW9uIDIzOTc4MSkKKysrIFNvdXJjZS9ibWFsbG9jL2JtYWxsb2MvSGVhcEtp
bmQuaAkod29ya2luZyBjb3B5KQpAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMp
IDIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAy
MDE3LTIwMTkgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCkBAIC03MCw2ICs3MCw4IEBAIEJJTkxJTkUgR2lnYWNhZ2U6OktpbmQg
Z2lnYWNhZ2VLaW5kKEhlYXAKIEJJTkxJTkUgSGVhcEtpbmQgaGVhcEtpbmQoR2lnYWNhZ2U6Oktp
bmQga2luZCkKIHsKICAgICBzd2l0Y2ggKGtpbmQpIHsKKyAgICBjYXNlIEdpZ2FjYWdlOjpSZXNl
cnZlZEZvckZsYWdzQW5kTm90QUJhc2VQdHI6CisgICAgICAgIFJFTEVBU0VfQkFTU0VSVF9OT1Rf
UkVBQ0hFRCgpOwogICAgIGNhc2UgR2lnYWNhZ2U6OlByaW1pdGl2ZToKICAgICAgICAgcmV0dXJu
IEhlYXBLaW5kOjpQcmltaXRpdmVHaWdhY2FnZTsKICAgICBjYXNlIEdpZ2FjYWdlOjpKU1ZhbHVl
Ogo=
</data>
<flag name="review"
          id="375565"
          type_id="1"
          status="+"
          setter="ysuzuki"
    />
          </attachment>
      

    </bug>

</bugzilla>