<?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>210065</bug_id>
          
          <creation_ts>2020-04-06 12:48:08 -0700</creation_ts>
          <short_desc>[iOS] Transition most process assertions to RunningBoard</short_desc>
          <delta_ts>2020-04-18 19:42:13 -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>WebKit2</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=210096</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>209990</blocked>
    
    <blocked>210076</blocked>
    
    <blocked>210711</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>achristensen</cc>
    
    <cc>beidson</cc>
    
    <cc>ggaren</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1638249</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-04-06 12:48:08 -0700</bug_when>
    <thetext>Transition most process assertions to RunningBoard, instead of legacy BKSProcessAssertion. The only assertion that still uses BKSProcessAssertion is the MediaPlayback once because we do not have a RunningBoard equivalent for this one yet (see &lt;rdar://problem/61263147&gt;).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638250</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-04-06 12:48:26 -0700</bug_when>
    <thetext>&lt;rdar://problem/61354901&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638283</commentid>
    <comment_count>2</comment_count>
      <attachid>395613</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-04-06 13:34:21 -0700</bug_when>
    <thetext>Created attachment 395613
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638303</commentid>
    <comment_count>3</comment_count>
      <attachid>395616</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-04-06 14:09:47 -0700</bug_when>
    <thetext>Created attachment 395616
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638319</commentid>
    <comment_count>4</comment_count>
      <attachid>395618</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-04-06 14:31:17 -0700</bug_when>
    <thetext>Created attachment 395618
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638329</commentid>
    <comment_count>5</comment_count>
      <attachid>395620</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-04-06 14:49:15 -0700</bug_when>
    <thetext>Created attachment 395620
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638350</commentid>
    <comment_count>6</comment_count>
      <attachid>395627</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-04-06 15:55:53 -0700</bug_when>
    <thetext>Created attachment 395627
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638353</commentid>
    <comment_count>7</comment_count>
      <attachid>395628</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-04-06 16:07:53 -0700</bug_when>
    <thetext>Created attachment 395628
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638360</commentid>
    <comment_count>8</comment_count>
      <attachid>395628</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2020-04-06 16:20:47 -0700</bug_when>
    <thetext>Comment on attachment 395628
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638362</commentid>
    <comment_count>9</comment_count>
      <attachid>395628</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-04-06 16:26:04 -0700</bug_when>
    <thetext>Comment on attachment 395628
Patch

Clearing flags on attachment: 395628

Committed r259610: &lt;https://trac.webkit.org/changeset/259610&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638363</commentid>
    <comment_count>10</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-04-06 16:26:06 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638546</commentid>
    <comment_count>11</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-04-07 08:23:55 -0700</bug_when>
    <thetext>Follow-up landed in &lt;https://trac.webkit.org/changeset/259635&gt;.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>395613</attachid>
            <date>2020-04-06 13:34:21 -0700</date>
            <delta_ts>2020-04-06 14:31:15 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210065-20200406133420.patch</filename>
            <type>text/plain</type>
            <size>10257</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5NTg2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDc0ZjVlMGZmYjVjNjM5M2Q0
YjIyYmQ1OWExMGU5YTMzZjYyOGE5N2QuLjNkNGVhYjc1NjI5NWUzZTI0NzNmMmJhZjA2ZjIyZGFk
NzAzODhmZmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMjAtMDQtMDYgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBUcmFuc2l0aW9uIG1vc3Qg
cHJvY2VzcyBhc3NlcnRpb25zIHRvIFJ1bm5pbmdCb2FyZAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEwMDY1CisgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS82MTM1NDkwMT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBUcmFuc2l0aW9uIG1vc3QgcHJvY2VzcyBhc3NlcnRpb25zIHRvIFJ1bm5pbmdCb2FyZCwg
aW5zdGVhZCBvZiBsZWdhY3kgQktTUHJvY2Vzc0Fzc2VydGlvbi4KKyAgICAgICAgVGhlIG9ubHkg
YXNzZXJ0aW9uIHRoYXQgc3RpbGwgdXNlcyBCS1NQcm9jZXNzQXNzZXJ0aW9uIGlzIHRoZSBNZWRp
YVBsYXliYWNrIG9uY2UgYmVjYXVzZQorICAgICAgICB3ZSBkbyBub3QgaGF2ZSBhIFJ1bm5pbmdC
b2FyZCBlcXVpdmFsZW50IGZvciB0aGlzIG9uZSB5ZXQgKHNlZSA8cmRhcjovL3Byb2JsZW0vNjEy
NjMxNDc+KS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmg6CisgICAg
ICAgICogVUlQcm9jZXNzL2lvcy9Qcm9jZXNzQXNzZXJ0aW9uSU9TLm1tOgorICAgICAgICAoLVtX
S1JCU0Fzc2VydGlvbkRlbGVnYXRlIGFzc2VydGlvbldpbGxJbnZhbGlkYXRlOl0pOgorICAgICAg
ICAoLVtXS1JCU0Fzc2VydGlvbkRlbGVnYXRlIGFzc2VydGlvbjpkaWRJbnZhbGlkYXRlV2l0aEVy
cm9yOl0pOgorICAgICAgICAoV2ViS2l0OjpydW5uaW5nQm9hcmROYW1lRm9yQXNzZXJ0aW9uVHlw
ZSk6CisgICAgICAgIChXZWJLaXQ6OlByb2Nlc3NBc3NlcnRpb246OlByb2Nlc3NBc3NlcnRpb24p
OgorICAgICAgICAoV2ViS2l0OjpQcm9jZXNzQXNzZXJ0aW9uOjp+UHJvY2Vzc0Fzc2VydGlvbik6
CisgICAgICAgIChXZWJLaXQ6OlByb2Nlc3NBc3NlcnRpb246OnByb2Nlc3NBc3NlcnRpb25XYXNJ
bnZhbGlkYXRlZCk6CisKIDIwMjAtMDQtMDYgIFbDrWN0b3IgTWFudWVsIErDoXF1ZXogTGVhbCAg
PHZqYXF1ZXpAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXSBSZW1vdmUgdW51c2VkIGhlYWRl
ciBpbiB3ZWIgcHJvY2VzcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJv
Y2Vzc0Fzc2VydGlvbi5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlv
bi5oCmluZGV4IGE4YzQ0MjI5MDMwY2U3M2RiYzQ2OWE1OWE1MzY1ZTdjMWEzODllMmEuLjJjODYz
YzBhYjgzZWZjZTJmNWU4NDcxOTYwOGE4NThhZjFhNmU3ZWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24uaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmgKQEAgLTM2LDggKzM2LDExIEBACiAKICNpZiBQTEFU
Rk9STShJT1NfRkFNSUxZKQogI2luY2x1ZGUgPHd0Zi9SZXRhaW5QdHIuaD4KKworT0JKQ19DTEFT
UyBSQlNBc3NlcnRpb247CitPQkpDX0NMQVNTIFdLUkJTQXNzZXJ0aW9uRGVsZWdhdGU7CiBPQkpD
X0NMQVNTIEJLU1Byb2Nlc3NBc3NlcnRpb247Ci0jZW5kaWYKKyNlbmRpZiAvLyBQTEFURk9STShJ
T1NfRkFNSUxZKQogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIApAQCAtNzUsMTEgKzc4LDE0IEBAIHBy
b3RlY3RlZDoKICNlbmRpZgogCiBwcml2YXRlOgorICAgIGNvbnN0IFByb2Nlc3NBc3NlcnRpb25U
eXBlIG1fYXNzZXJ0aW9uVHlwZTsKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQotICAgIFJldGFp
blB0cjxCS1NQcm9jZXNzQXNzZXJ0aW9uPiBtX2Fzc2VydGlvbjsKKyAgICBjb25zdCBQcm9jZXNz
SUQgbV9waWQ7CisgICAgUmV0YWluUHRyPFJCU0Fzc2VydGlvbj4gbV9yYnNBc3NlcnRpb247Cisg
ICAgUmV0YWluUHRyPFdLUkJTQXNzZXJ0aW9uRGVsZWdhdGU+IG1fZGVsZWdhdGU7CisgICAgUmV0
YWluUHRyPEJLU1Byb2Nlc3NBc3NlcnRpb24+IG1fYmtzQXNzZXJ0aW9uOyAvLyBMZWdhY3kuCiAg
ICAgVmFsaWRpdHkgbV92YWxpZGl0eSB7IFZhbGlkaXR5OjpVbnNldCB9OwogI2VuZGlmCi0gICAg
Y29uc3QgUHJvY2Vzc0Fzc2VydGlvblR5cGUgbV9hc3NlcnRpb25UeXBlOwogICAgIENsaWVudCog
bV9jbGllbnQgeyBudWxscHRyIH07CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9pb3MvUHJvY2Vzc0Fzc2VydGlvbklPUy5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL2lvcy9Qcm9jZXNzQXNzZXJ0aW9uSU9TLm1tCmluZGV4IDhmMTczYWRiMzYxOWFmYjI4MGFi
NmY5ZThiM2E5NTZkMDBkZjBjMDQuLmMzMjJiMDM5MjAwYWVlZTUyMmNmYjI0YTc2Nzc2MjgzOWU4
NzMzYjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9Qcm9jZXNzQXNz
ZXJ0aW9uSU9TLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9Qcm9jZXNzQXNz
ZXJ0aW9uSU9TLm1tCkBAIC0yNjUsOCArMjY1LDQ5IEBAIC0gKHZvaWQpX3JlbGVhc2VCYWNrZ3Jv
dW5kVGFzawogCiBAZW5kCiAKK3R5cGVkZWYgdm9pZCheUkJTQXNzZXJ0aW9uSW52YWxpZGF0aW9u
Q2FsbGJhY2tUeXBlKSgpOworCitAaW50ZXJmYWNlIFdLUkJTQXNzZXJ0aW9uRGVsZWdhdGUgOiBO
U09iamVjdDxSQlNBc3NlcnRpb25PYnNlcnZpbmc+CitAcHJvcGVydHkgKGNvcHkpIFJCU0Fzc2Vy
dGlvbkludmFsaWRhdGlvbkNhbGxiYWNrVHlwZSBpbnZhbGlkYXRpb25DYWxsYmFjazsKK0BlbmQK
KworQGltcGxlbWVudGF0aW9uIFdLUkJTQXNzZXJ0aW9uRGVsZWdhdGUKKy0gKHZvaWQpYXNzZXJ0
aW9uV2lsbEludmFsaWRhdGU6KFJCU0Fzc2VydGlvbiAqKWFzc2VydGlvbgoreworICAgIFJFTEVB
U0VfTE9HKFByb2Nlc3NTdXNwZW5zaW9uLCAiJXAgLSBXS1JCU0Fzc2VydGlvbkRlbGVnYXRlOiBh
c3NlcnRpb25XaWxsSW52YWxpZGF0ZSIsIHNlbGYpOworfQorCistICh2b2lkKWFzc2VydGlvbjoo
UkJTQXNzZXJ0aW9uICopYXNzZXJ0aW9uIGRpZEludmFsaWRhdGVXaXRoRXJyb3I6KE5TRXJyb3Ig
KillcnJvcgoreworICAgIFJFTEVBU0VfTE9HKFByb2Nlc3NTdXNwZW5zaW9uLCAiJXAgLSBXS1JC
U0Fzc2VydGlvbkRlbGVnYXRlOiBhc3NlcnRpb24gd2FzIGludmFsaWRhdGVkLCBlcnJvcjogJXtw
dWJsaWN9QCIsIGVycm9yLCBzZWxmKTsKKyAgICBpZiAoYXV0byBjYWxsYmFjayA9IF9pbnZhbGlk
YXRpb25DYWxsYmFjaykKKyAgICAgICAgY2FsbGJhY2soKTsKK30KK0BlbmQKKwogbmFtZXNwYWNl
IFdlYktpdCB7CiAKK3N0YXRpYyBOU1N0cmluZyAqcnVubmluZ0JvYXJkTmFtZUZvckFzc2VydGlv
blR5cGUoUHJvY2Vzc0Fzc2VydGlvblR5cGUgYXNzZXJ0aW9uVHlwZSkKK3sKKyNpZiBIQVZFKFJV
Tk5JTkdCT0FSRF9XRUJLSVRfQVNTRVJUSU9OUykKKyAgICBzd2l0Y2ggKGFzc2VydGlvblR5cGUp
IHsKKyAgICBjYXNlIFByb2Nlc3NBc3NlcnRpb25UeXBlOjpTdXNwZW5kZWQ6CisgICAgICAgIHJl
dHVybiBAIlN1c3BlbmRlZCI7CisgICAgY2FzZSBQcm9jZXNzQXNzZXJ0aW9uVHlwZTo6QmFja2dy
b3VuZDoKKyAgICAgICAgcmV0dXJuIEAiQmFja2dyb3VuZCI7CisgICAgY2FzZSBQcm9jZXNzQXNz
ZXJ0aW9uVHlwZTo6VW5ib3VuZGVkTmV0d29ya2luZzoKKyAgICAgICAgcmV0dXJuIEAiVW5ib3Vu
ZGVkTmV0d29ya2luZyI7CisgICAgY2FzZSBQcm9jZXNzQXNzZXJ0aW9uVHlwZTo6Rm9yZWdyb3Vu
ZDoKKyAgICAgICAgcmV0dXJuIEAiRm9yZWdyb3VuZCI7CisgICAgY2FzZSBQcm9jZXNzQXNzZXJ0
aW9uVHlwZTo6TWVkaWFQbGF5YmFjazoKKyAgICAgICAgcmV0dXJuIG5pbDsgLy8gRklYTUU6IE5h
bWUgdG8gYmUgZGVmaW5lZCBpbiA8cmRhcjovL3Byb2JsZW0vNjEyNjMxNDc+LgorICAgIH0KKyNl
bHNlCisgICAgVU5VU0VEX1BBUkFNKGFzc2VydGlvblR5cGUpOworICAgIHJldHVybiBuaWw7Cisj
ZW5kaWYKK30KKwogY29uc3QgQktTUHJvY2Vzc0Fzc2VydGlvbkZsYWdzIHN1c3BlbmRlZFRhYkZs
YWdzID0gKEJLU1Byb2Nlc3NBc3NlcnRpb25BbGxvd0lkbGVTbGVlcCk7CiBjb25zdCBCS1NQcm9j
ZXNzQXNzZXJ0aW9uRmxhZ3MgYmFja2dyb3VuZFRhYkZsYWdzID0gKEJLU1Byb2Nlc3NBc3NlcnRp
b25QcmV2ZW50VGFza1N1c3BlbmQpOwogY29uc3QgQktTUHJvY2Vzc0Fzc2VydGlvbkZsYWdzIGZv
cmVncm91bmRUYWJGbGFncyA9IChCS1NQcm9jZXNzQXNzZXJ0aW9uUHJldmVudFRhc2tTdXNwZW5k
IHwgQktTUHJvY2Vzc0Fzc2VydGlvbldhbnRzRm9yZWdyb3VuZFJlc291cmNlUHJpb3JpdHkgfCBC
S1NQcm9jZXNzQXNzZXJ0aW9uUHJldmVudFRhc2tUaHJvdHRsZURvd24pOwpAQCAtMzAxLDQzICsz
NDIsODEgQEAgc3RhdGljIEJLU1Byb2Nlc3NBc3NlcnRpb25SZWFzb24gdG9CS1NQcm9jZXNzQXNz
ZXJ0aW9uUmVhc29uKFByb2Nlc3NBc3NlcnRpb25UeXAKIAogUHJvY2Vzc0Fzc2VydGlvbjo6UHJv
Y2Vzc0Fzc2VydGlvbihwaWRfdCBwaWQsIEFTQ0lJTGl0ZXJhbCByZWFzb24sIFByb2Nlc3NBc3Nl
cnRpb25UeXBlIGFzc2VydGlvblR5cGUpCiAgICAgOiBtX2Fzc2VydGlvblR5cGUoYXNzZXJ0aW9u
VHlwZSkKKyAgICAsIG1fcGlkKHBpZCkKIHsKICAgICBhdXRvIHdlYWtUaGlzID0gbWFrZVdlYWtQ
dHIoKnRoaXMpOwotICAgIEJLU1Byb2Nlc3NBc3NlcnRpb25BY3F1aXNpdGlvbkhhbmRsZXIgaGFu
ZGxlciA9IF4oQk9PTCBhY3F1aXJlZCkgewotICAgICAgICBpZiAoIWFjcXVpcmVkKSB7Ci0gICAg
ICAgICAgICBSRUxFQVNFX0xPR19FUlJPUihQcm9jZXNzU3VzcGVuc2lvbiwgIiAlcCAtIFByb2Nl
c3NBc3NlcnRpb24oKSBQSUQgJWQgVW5hYmxlIHRvIGFjcXVpcmUgYXNzZXJ0aW9uIGZvciBwcm9j
ZXNzIHdpdGggUElEICVkIiwgdGhpcywgZ2V0cGlkKCksIHBpZCk7CisgICAgTlNTdHJpbmcgKm5z
UmVhc29uID0gW05TU3RyaW5nIHN0cmluZ1dpdGhDU3RyaW5nOnJlYXNvbi5jaGFyYWN0ZXJzKCkg
ZW5jb2Rpbmc6TlNBU0NJSVN0cmluZ0VuY29kaW5nXTsKKyAgICBOU1N0cmluZyAqcnVubmluZ0Jv
YXJkQXNzZXJ0aW9uTmFtZSA9IHJ1bm5pbmdCb2FyZE5hbWVGb3JBc3NlcnRpb25UeXBlKGFzc2Vy
dGlvblR5cGUpOworCisgICAgLy8gRklYTUU6IFJlcGxhY2UgcnVudGltZSBjaGVjayB3aXRoIEhB
VkUoUlVOTklOR0JPQVJEX1dFQktJVF9BU1NFUlRJT05TKSBjb21waWxlIHRpbWUgY2hlY2sgb25j
ZQorICAgIC8vIDxyZGFyOi8vcHJvYmxlbS82MTI2MzE0Nz4gaXMgZml4ZWQgYW5kIHdlIGhhdmUg
UnVubmluZ0JvYXJkIGVxdWl2YWxlbnRzIGZvciBhbGwgYXNzZXJ0aW9uIHR5cGVzLgorICAgIGlm
IChydW5uaW5nQm9hcmRBc3NlcnRpb25OYW1lKSB7CisgICAgICAgIFJCU1RhcmdldCAqdGFyZ2V0
ID0gW1JCU1RhcmdldCB0YXJnZXRXaXRoUGlkOnBpZF07CisgICAgICAgIFJCU0RvbWFpbkF0dHJp
YnV0ZSAqZG9tYWluQXR0cmlidXRlID0gW1JCU0RvbWFpbkF0dHJpYnV0ZSBhdHRyaWJ1dGVXaXRo
RG9tYWluOkAiY29tLmFwcGxlLndlYmtpdCIgbmFtZTpydW5uaW5nQm9hcmRBc3NlcnRpb25OYW1l
XTsKKyAgICAgICAgbV9yYnNBc3NlcnRpb24gPSBhZG9wdE5TKFtbUkJTQXNzZXJ0aW9uIGFsbG9j
XSBpbml0V2l0aEV4cGxhbmF0aW9uOm5zUmVhc29uIHRhcmdldDp0YXJnZXQgYXR0cmlidXRlczpA
W2RvbWFpbkF0dHJpYnV0ZV1dKTsKKworICAgICAgICBtX2RlbGVnYXRlID0gYWRvcHROUyhbW1dL
UkJTQXNzZXJ0aW9uRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKKyAgICAgICAgW21fcmJzQXNzZXJ0
aW9uIGFkZE9ic2VydmVyOm1fZGVsZWdhdGUuZ2V0KCldOworICAgICAgICBtX2RlbGVnYXRlLmdl
dCgpLmludmFsaWRhdGlvbkNhbGxiYWNrID0gXnsKICAgICAgICAgICAgIGRpc3BhdGNoX2FzeW5j
KGRpc3BhdGNoX2dldF9tYWluX3F1ZXVlKCksIF57CisgICAgICAgICAgICAgICAgUkVMRUFTRV9M
T0coUHJvY2Vzc1N1c3BlbnNpb24sICIlcCAtIFByb2Nlc3NBc3NlcnRpb24oKSBSQlMgUHJvY2Vz
cyBhc3NlcnRpb24gZm9yIHByb2Nlc3Mgd2l0aCBQSUQgJWQgd2FzIGludmFsaWRhdGVkIiwgdGhp
cywgcGlkKTsKICAgICAgICAgICAgICAgICBpZiAod2Vha1RoaXMpCiAgICAgICAgICAgICAgICAg
ICAgIHByb2Nlc3NBc3NlcnRpb25XYXNJbnZhbGlkYXRlZCgpOwogICAgICAgICAgICAgfSk7Ci0g
ICAgICAgIH0KLSAgICB9OwotICAgIFJFTEVBU0VfTE9HKFByb2Nlc3NTdXNwZW5zaW9uLCAiJXAg
LSBQcm9jZXNzQXNzZXJ0aW9uKCkgUElEICVkIGFjcXVpcmluZyBhc3NlcnRpb24gZm9yIHByb2Nl
c3Mgd2l0aCBQSUQgJWQsIG5hbWUgJyVzJyIsIHRoaXMsIGdldHBpZCgpLCBwaWQsIHJlYXNvbi5j
aGFyYWN0ZXJzKCkpOwotICAgIAotICAgIE5TU3RyaW5nICpuc1JlYXNvbiA9IFtOU1N0cmluZyBz
dHJpbmdXaXRoQ1N0cmluZzpyZWFzb24uY2hhcmFjdGVycygpIGVuY29kaW5nOk5TQVNDSUlTdHJp
bmdFbmNvZGluZ107Ci0gICAgbV9hc3NlcnRpb24gPSBhZG9wdE5TKFtbQktTUHJvY2Vzc0Fzc2Vy
dGlvbiBhbGxvY10gaW5pdFdpdGhQSUQ6cGlkIGZsYWdzOmZsYWdzRm9yQXNzZXJ0aW9uVHlwZShh
c3NlcnRpb25UeXBlKSByZWFzb246dG9CS1NQcm9jZXNzQXNzZXJ0aW9uUmVhc29uKGFzc2VydGlv
blR5cGUpIG5hbWU6bnNSZWFzb24gd2l0aEhhbmRsZXI6aGFuZGxlcl0pOworICAgICAgICB9Owog
Ci0gICAgbV9hc3NlcnRpb24uZ2V0KCkuaW52YWxpZGF0aW9uSGFuZGxlciA9IF4oKSB7Ci0gICAg
ICAgIGRpc3BhdGNoX2FzeW5jKGRpc3BhdGNoX2dldF9tYWluX3F1ZXVlKCksIF57Ci0gICAgICAg
ICAgICBSRUxFQVNFX0xPRyhQcm9jZXNzU3VzcGVuc2lvbiwgIiVwIC0gUHJvY2Vzc0Fzc2VydGlv
bigpIFByb2Nlc3MgYXNzZXJ0aW9uIGZvciBwcm9jZXNzIHdpdGggUElEICVkIHdhcyBpbnZhbGlk
YXRlZCIsIHRoaXMsIHBpZCk7Ci0gICAgICAgICAgICBpZiAod2Vha1RoaXMpCi0gICAgICAgICAg
ICAgICAgcHJvY2Vzc0Fzc2VydGlvbldhc0ludmFsaWRhdGVkKCk7Ci0gICAgICAgIH0pOwotICAg
IH07CisgICAgICAgIE5TRXJyb3IgKmFjcXVpc2l0aW9uRXJyb3IgPSBuaWw7CisgICAgICAgIGlm
ICghW21fcmJzQXNzZXJ0aW9uIGFjcXVpcmVXaXRoRXJyb3I6JmFjcXVpc2l0aW9uRXJyb3JdKSB7
CisgICAgICAgICAgICBSRUxFQVNFX0xPR19FUlJPUihQcm9jZXNzU3VzcGVuc2lvbiwgIlByb2Nl
c3NBc3NlcnRpb246IEZhaWxlZCB0byBhY3F1aXJlIFJCUyBhc3NlcnRpb24gJyV7cHVibGljfXMn
IGZvciBwcm9jZXNzIHdpdGggUElEICVkLCBlcnJvcjogJXtwdWJsaWN9QCIsIHJlYXNvbi5jaGFy
YWN0ZXJzKCksIHBpZCwgYWNxdWlzaXRpb25FcnJvcik7CisgICAgICAgICAgICBkaXNwYXRjaF9h
c3luYyhkaXNwYXRjaF9nZXRfbWFpbl9xdWV1ZSgpLCBeeworICAgICAgICAgICAgICAgIGlmICh3
ZWFrVGhpcykKKyAgICAgICAgICAgICAgICAgICAgcHJvY2Vzc0Fzc2VydGlvbldhc0ludmFsaWRh
dGVkKCk7CisgICAgICAgICAgICB9KTsKKyAgICAgICAgfSBlbHNlCisgICAgICAgICAgICBSRUxF
QVNFX0xPRyhQcm9jZXNzU3VzcGVuc2lvbiwgIlByb2Nlc3NBc3NlcnRpb246IFN1Y2Nlc3NmdWxs
eSB0b29rIFJCUyBhc3NlcnRpb24gJyV7cHVibGljfXMnIGZvciBwcm9jZXNzIHdpdGggUElEICVk
IiwgcmVhc29uLmNoYXJhY3RlcnMoKSwgcGlkKTsKKyAgICB9IGVsc2UgeworICAgICAgICAvLyBM
ZWdhY3kgY29kZSBwYXRoLgorICAgICAgICBCS1NQcm9jZXNzQXNzZXJ0aW9uQWNxdWlzaXRpb25I
YW5kbGVyIGhhbmRsZXIgPSBeKEJPT0wgYWNxdWlyZWQpIHsKKyAgICAgICAgICAgIGlmICghYWNx
dWlyZWQpIHsKKyAgICAgICAgICAgICAgICBSRUxFQVNFX0xPR19FUlJPUihQcm9jZXNzU3VzcGVu
c2lvbiwgIiAlcCAtIFByb2Nlc3NBc3NlcnRpb24oKSBQSUQgJWQgVW5hYmxlIHRvIGFjcXVpcmUg
QktTIGFzc2VydGlvbiBmb3IgcHJvY2VzcyB3aXRoIFBJRCAlZCIsIHRoaXMsIGdldHBpZCgpLCBw
aWQpOworICAgICAgICAgICAgICAgIGRpc3BhdGNoX2FzeW5jKGRpc3BhdGNoX2dldF9tYWluX3F1
ZXVlKCksIF57CisgICAgICAgICAgICAgICAgICAgIGlmICh3ZWFrVGhpcykKKyAgICAgICAgICAg
ICAgICAgICAgICAgIHByb2Nlc3NBc3NlcnRpb25XYXNJbnZhbGlkYXRlZCgpOworICAgICAgICAg
ICAgICAgIH0pOworICAgICAgICAgICAgfQorICAgICAgICB9OworICAgICAgICBSRUxFQVNFX0xP
RyhQcm9jZXNzU3VzcGVuc2lvbiwgIiVwIC0gUHJvY2Vzc0Fzc2VydGlvbigpIFBJRCAlZCBhY3F1
aXJpbmcgQktTIGFzc2VydGlvbiBmb3IgcHJvY2VzcyB3aXRoIFBJRCAlZCwgbmFtZSAnJXMnIiwg
dGhpcywgZ2V0cGlkKCksIHBpZCwgcmVhc29uLmNoYXJhY3RlcnMoKSk7CisKKyAgICAgICAgbV9i
a3NBc3NlcnRpb24gPSBhZG9wdE5TKFtbQktTUHJvY2Vzc0Fzc2VydGlvbiBhbGxvY10gaW5pdFdp
dGhQSUQ6cGlkIGZsYWdzOmZsYWdzRm9yQXNzZXJ0aW9uVHlwZShhc3NlcnRpb25UeXBlKSByZWFz
b246dG9CS1NQcm9jZXNzQXNzZXJ0aW9uUmVhc29uKGFzc2VydGlvblR5cGUpIG5hbWU6bnNSZWFz
b24gd2l0aEhhbmRsZXI6aGFuZGxlcl0pOworCisgICAgICAgIG1fYmtzQXNzZXJ0aW9uLmdldCgp
LmludmFsaWRhdGlvbkhhbmRsZXIgPSBeKCkgeworICAgICAgICAgICAgZGlzcGF0Y2hfYXN5bmMo
ZGlzcGF0Y2hfZ2V0X21haW5fcXVldWUoKSwgXnsKKyAgICAgICAgICAgICAgICBSRUxFQVNFX0xP
RyhQcm9jZXNzU3VzcGVuc2lvbiwgIiVwIC0gUHJvY2Vzc0Fzc2VydGlvbigpIEJLUyBQcm9jZXNz
IGFzc2VydGlvbiBmb3IgcHJvY2VzcyB3aXRoIFBJRCAlZCB3YXMgaW52YWxpZGF0ZWQiLCB0aGlz
LCBwaWQpOworICAgICAgICAgICAgICAgIGlmICh3ZWFrVGhpcykKKyAgICAgICAgICAgICAgICAg
ICAgcHJvY2Vzc0Fzc2VydGlvbldhc0ludmFsaWRhdGVkKCk7CisgICAgICAgICAgICB9KTsKKyAg
ICAgICAgfTsKKyAgICB9CisgICAgQVNTRVJUKG1fcmJzQXNzZXJ0aW9uIHx8IG1fYmtzQXNzZXJ0
aW9uKTsKIH0KIAogUHJvY2Vzc0Fzc2VydGlvbjo6flByb2Nlc3NBc3NlcnRpb24oKQogewotICAg
IG1fYXNzZXJ0aW9uLmdldCgpLmludmFsaWRhdGlvbkhhbmRsZXIgPSBuaWw7Ci0KLSAgICBSRUxF
QVNFX0xPRyhQcm9jZXNzU3VzcGVuc2lvbiwgIiVwIC0gflByb2Nlc3NBc3NlcnRpb24oKSBSZWxl
YXNpbmcgcHJvY2VzcyBhc3NlcnRpb24iLCB0aGlzKTsKLSAgICBbbV9hc3NlcnRpb24gaW52YWxp
ZGF0ZV07CisgICAgUkVMRUFTRV9MT0coUHJvY2Vzc1N1c3BlbnNpb24sICIlcCAtIH5Qcm9jZXNz
QXNzZXJ0aW9uKCkgUmVsZWFzaW5nIHByb2Nlc3MgYXNzZXJ0aW9uIGZvciBwcm9jZXNzIHdpdGgg
UElEICVkIiwgdGhpcywgbV9waWQpOworCisgICAgaWYgKG1fcmJzQXNzZXJ0aW9uKSB7CisgICAg
ICAgIFttX3Jic0Fzc2VydGlvbiByZW1vdmVPYnNlcnZlcjptX2RlbGVnYXRlLmdldCgpXTsKKyAg
ICAgICAgW21fcmJzQXNzZXJ0aW9uIGludmFsaWRhdGVdOworICAgIH0gZWxzZSB7CisgICAgICAg
IG1fYmtzQXNzZXJ0aW9uLmdldCgpLmludmFsaWRhdGlvbkhhbmRsZXIgPSBuaWw7CisgICAgICAg
IFttX2Jrc0Fzc2VydGlvbiBpbnZhbGlkYXRlXTsKKyAgICB9CiB9CiAKIHZvaWQgUHJvY2Vzc0Fz
c2VydGlvbjo6cHJvY2Vzc0Fzc2VydGlvbldhc0ludmFsaWRhdGVkKCkKIHsKICAgICBBU1NFUlQo
UnVuTG9vcDo6aXNNYWluKCkpOwotICAgIFJFTEVBU0VfTE9HX0VSUk9SKFByb2Nlc3NTdXNwZW5z
aW9uLCAiJXAgLSBQcm9jZXNzQXNzZXJ0aW9uOjpwcm9jZXNzQXNzZXJ0aW9uV2FzSW52YWxpZGF0
ZWQoKSIsIHRoaXMpOworICAgIFJFTEVBU0VfTE9HKFByb2Nlc3NTdXNwZW5zaW9uLCAiJXAgLSBQ
cm9jZXNzQXNzZXJ0aW9uOjpwcm9jZXNzQXNzZXJ0aW9uV2FzSW52YWxpZGF0ZWQoKSBQSUQ6ICVk
IiwgdGhpcywgbV9waWQpOwogCiAgICAgbV92YWxpZGl0eSA9IFZhbGlkaXR5OjpObzsKIH0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>395616</attachid>
            <date>2020-04-06 14:09:47 -0700</date>
            <delta_ts>2020-04-06 14:27:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210065-20200406140946.patch</filename>
            <type>text/plain</type>
            <size>10519</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5NTg2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDc0ZjVlMGZmYjVjNjM5M2Q0
YjIyYmQ1OWExMGU5YTMzZjYyOGE5N2QuLjNkNGVhYjc1NjI5NWUzZTI0NzNmMmJhZjA2ZjIyZGFk
NzAzODhmZmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMjAtMDQtMDYgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBUcmFuc2l0aW9uIG1vc3Qg
cHJvY2VzcyBhc3NlcnRpb25zIHRvIFJ1bm5pbmdCb2FyZAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEwMDY1CisgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS82MTM1NDkwMT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBUcmFuc2l0aW9uIG1vc3QgcHJvY2VzcyBhc3NlcnRpb25zIHRvIFJ1bm5pbmdCb2FyZCwg
aW5zdGVhZCBvZiBsZWdhY3kgQktTUHJvY2Vzc0Fzc2VydGlvbi4KKyAgICAgICAgVGhlIG9ubHkg
YXNzZXJ0aW9uIHRoYXQgc3RpbGwgdXNlcyBCS1NQcm9jZXNzQXNzZXJ0aW9uIGlzIHRoZSBNZWRp
YVBsYXliYWNrIG9uY2UgYmVjYXVzZQorICAgICAgICB3ZSBkbyBub3QgaGF2ZSBhIFJ1bm5pbmdC
b2FyZCBlcXVpdmFsZW50IGZvciB0aGlzIG9uZSB5ZXQgKHNlZSA8cmRhcjovL3Byb2JsZW0vNjEy
NjMxNDc+KS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmg6CisgICAg
ICAgICogVUlQcm9jZXNzL2lvcy9Qcm9jZXNzQXNzZXJ0aW9uSU9TLm1tOgorICAgICAgICAoLVtX
S1JCU0Fzc2VydGlvbkRlbGVnYXRlIGFzc2VydGlvbldpbGxJbnZhbGlkYXRlOl0pOgorICAgICAg
ICAoLVtXS1JCU0Fzc2VydGlvbkRlbGVnYXRlIGFzc2VydGlvbjpkaWRJbnZhbGlkYXRlV2l0aEVy
cm9yOl0pOgorICAgICAgICAoV2ViS2l0OjpydW5uaW5nQm9hcmROYW1lRm9yQXNzZXJ0aW9uVHlw
ZSk6CisgICAgICAgIChXZWJLaXQ6OlByb2Nlc3NBc3NlcnRpb246OlByb2Nlc3NBc3NlcnRpb24p
OgorICAgICAgICAoV2ViS2l0OjpQcm9jZXNzQXNzZXJ0aW9uOjp+UHJvY2Vzc0Fzc2VydGlvbik6
CisgICAgICAgIChXZWJLaXQ6OlByb2Nlc3NBc3NlcnRpb246OnByb2Nlc3NBc3NlcnRpb25XYXNJ
bnZhbGlkYXRlZCk6CisKIDIwMjAtMDQtMDYgIFbDrWN0b3IgTWFudWVsIErDoXF1ZXogTGVhbCAg
PHZqYXF1ZXpAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXSBSZW1vdmUgdW51c2VkIGhlYWRl
ciBpbiB3ZWIgcHJvY2VzcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJv
Y2Vzc0Fzc2VydGlvbi5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlv
bi5oCmluZGV4IGE4YzQ0MjI5MDMwY2U3M2RiYzQ2OWE1OWE1MzY1ZTdjMWEzODllMmEuLjU2YmE3
ODczNGQ1Y2IyMmE1MDU2OTE4Mzc0ZGI0Mzk2MGJjZTk3MTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24uaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmgKQEAgLTM2LDggKzM2LDEzIEBACiAKICNpZiBQTEFU
Rk9STShJT1NfRkFNSUxZKQogI2luY2x1ZGUgPHd0Zi9SZXRhaW5QdHIuaD4KKworI2lmIEhBVkUo
UlVOTklOR0JPQVJEX1dFQktJVF9BU1NFUlRJT05TKQorT0JKQ19DTEFTUyBSQlNBc3NlcnRpb247
CitPQkpDX0NMQVNTIFdLUkJTQXNzZXJ0aW9uRGVsZWdhdGU7CisjZW5kaWYgLy8gSEFWRShSVU5O
SU5HQk9BUkRfV0VCS0lUX0FTU0VSVElPTlMpCiBPQkpDX0NMQVNTIEJLU1Byb2Nlc3NBc3NlcnRp
b247Ci0jZW5kaWYKKyNlbmRpZiAvLyBQTEFURk9STShJT1NfRkFNSUxZKQogCiBuYW1lc3BhY2Ug
V2ViS2l0IHsKIApAQCAtNzUsMTEgKzgwLDE2IEBAIHByb3RlY3RlZDoKICNlbmRpZgogCiBwcml2
YXRlOgorICAgIGNvbnN0IFByb2Nlc3NBc3NlcnRpb25UeXBlIG1fYXNzZXJ0aW9uVHlwZTsKICNp
ZiBQTEFURk9STShJT1NfRkFNSUxZKQotICAgIFJldGFpblB0cjxCS1NQcm9jZXNzQXNzZXJ0aW9u
PiBtX2Fzc2VydGlvbjsKKyAgICBjb25zdCBQcm9jZXNzSUQgbV9waWQ7CisjaWYgSEFWRShSVU5O
SU5HQk9BUkRfV0VCS0lUX0FTU0VSVElPTlMpCisgICAgUmV0YWluUHRyPFJCU0Fzc2VydGlvbj4g
bV9yYnNBc3NlcnRpb247CisgICAgUmV0YWluUHRyPFdLUkJTQXNzZXJ0aW9uRGVsZWdhdGU+IG1f
ZGVsZWdhdGU7CisjZW5kaWYgLy8gSEFWRShSVU5OSU5HQk9BUkRfV0VCS0lUX0FTU0VSVElPTlMp
CisgICAgUmV0YWluUHRyPEJLU1Byb2Nlc3NBc3NlcnRpb24+IG1fYmtzQXNzZXJ0aW9uOyAvLyBM
ZWdhY3kuCiAgICAgVmFsaWRpdHkgbV92YWxpZGl0eSB7IFZhbGlkaXR5OjpVbnNldCB9OwogI2Vu
ZGlmCi0gICAgY29uc3QgUHJvY2Vzc0Fzc2VydGlvblR5cGUgbV9hc3NlcnRpb25UeXBlOwogICAg
IENsaWVudCogbV9jbGllbnQgeyBudWxscHRyIH07CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9pb3MvUHJvY2Vzc0Fzc2VydGlvbklPUy5tbSBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL2lvcy9Qcm9jZXNzQXNzZXJ0aW9uSU9TLm1tCmluZGV4IDhmMTczYWRiMzYx
OWFmYjI4MGFiNmY5ZThiM2E5NTZkMDBkZjBjMDQuLmFjMTQwZWZlOTlmMTM5ZjE5YmE4ZWE5OWY3
NGRiMGUzZDkwYzQ0MTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9Q
cm9jZXNzQXNzZXJ0aW9uSU9TLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9Q
cm9jZXNzQXNzZXJ0aW9uSU9TLm1tCkBAIC0yNjUsOCArMjY1LDUyIEBAIC0gKHZvaWQpX3JlbGVh
c2VCYWNrZ3JvdW5kVGFzawogCiBAZW5kCiAKKyNpZiBIQVZFKFJVTk5JTkdCT0FSRF9XRUJLSVRf
QVNTRVJUSU9OUykKKwordHlwZWRlZiB2b2lkKF5SQlNBc3NlcnRpb25JbnZhbGlkYXRpb25DYWxs
YmFja1R5cGUpKCk7CisKK0BpbnRlcmZhY2UgV0tSQlNBc3NlcnRpb25EZWxlZ2F0ZSA6IE5TT2Jq
ZWN0PFJCU0Fzc2VydGlvbk9ic2VydmluZz4KK0Bwcm9wZXJ0eSAoY29weSkgUkJTQXNzZXJ0aW9u
SW52YWxpZGF0aW9uQ2FsbGJhY2tUeXBlIGludmFsaWRhdGlvbkNhbGxiYWNrOworQGVuZAorCitA
aW1wbGVtZW50YXRpb24gV0tSQlNBc3NlcnRpb25EZWxlZ2F0ZQorLSAodm9pZClhc3NlcnRpb25X
aWxsSW52YWxpZGF0ZTooUkJTQXNzZXJ0aW9uICopYXNzZXJ0aW9uCit7CisgICAgUkVMRUFTRV9M
T0coUHJvY2Vzc1N1c3BlbnNpb24sICIlcCAtIFdLUkJTQXNzZXJ0aW9uRGVsZWdhdGU6IGFzc2Vy
dGlvbldpbGxJbnZhbGlkYXRlIiwgc2VsZik7Cit9CisKKy0gKHZvaWQpYXNzZXJ0aW9uOihSQlNB
c3NlcnRpb24gKilhc3NlcnRpb24gZGlkSW52YWxpZGF0ZVdpdGhFcnJvcjooTlNFcnJvciAqKWVy
cm9yCit7CisgICAgUkVMRUFTRV9MT0coUHJvY2Vzc1N1c3BlbnNpb24sICIlcCAtIFdLUkJTQXNz
ZXJ0aW9uRGVsZWdhdGU6IGFzc2VydGlvbiB3YXMgaW52YWxpZGF0ZWQsIGVycm9yOiAle3B1Ymxp
Y31AIiwgZXJyb3IsIHNlbGYpOworICAgIGlmIChhdXRvIGNhbGxiYWNrID0gX2ludmFsaWRhdGlv
bkNhbGxiYWNrKQorICAgICAgICBjYWxsYmFjaygpOworfQorQGVuZAorCisjZW5kaWYgLy8gSEFW
RShSVU5OSU5HQk9BUkRfV0VCS0lUX0FTU0VSVElPTlMpCisKIG5hbWVzcGFjZSBXZWJLaXQgewog
CisjaWYgSEFWRShSVU5OSU5HQk9BUkRfV0VCS0lUX0FTU0VSVElPTlMpCisKK3N0YXRpYyBOU1N0
cmluZyAqcnVubmluZ0JvYXJkTmFtZUZvckFzc2VydGlvblR5cGUoUHJvY2Vzc0Fzc2VydGlvblR5
cGUgYXNzZXJ0aW9uVHlwZSkKK3sKKyAgICBzd2l0Y2ggKGFzc2VydGlvblR5cGUpIHsKKyAgICBj
YXNlIFByb2Nlc3NBc3NlcnRpb25UeXBlOjpTdXNwZW5kZWQ6CisgICAgICAgIHJldHVybiBAIlN1
c3BlbmRlZCI7CisgICAgY2FzZSBQcm9jZXNzQXNzZXJ0aW9uVHlwZTo6QmFja2dyb3VuZDoKKyAg
ICAgICAgcmV0dXJuIEAiQmFja2dyb3VuZCI7CisgICAgY2FzZSBQcm9jZXNzQXNzZXJ0aW9uVHlw
ZTo6VW5ib3VuZGVkTmV0d29ya2luZzoKKyAgICAgICAgcmV0dXJuIEAiVW5ib3VuZGVkTmV0d29y
a2luZyI7CisgICAgY2FzZSBQcm9jZXNzQXNzZXJ0aW9uVHlwZTo6Rm9yZWdyb3VuZDoKKyAgICAg
ICAgcmV0dXJuIEAiRm9yZWdyb3VuZCI7CisgICAgY2FzZSBQcm9jZXNzQXNzZXJ0aW9uVHlwZTo6
TWVkaWFQbGF5YmFjazoKKyAgICAgICAgcmV0dXJuIG5pbDsgLy8gRklYTUU6IE5hbWUgdG8gYmUg
ZGVmaW5lZCBpbiA8cmRhcjovL3Byb2JsZW0vNjEyNjMxNDc+LgorICAgIH0KK30KKworI2VuZGlm
IC8vIEhBVkUoUlVOTklOR0JPQVJEX1dFQktJVF9BU1NFUlRJT05TKQorCiBjb25zdCBCS1NQcm9j
ZXNzQXNzZXJ0aW9uRmxhZ3Mgc3VzcGVuZGVkVGFiRmxhZ3MgPSAoQktTUHJvY2Vzc0Fzc2VydGlv
bkFsbG93SWRsZVNsZWVwKTsKIGNvbnN0IEJLU1Byb2Nlc3NBc3NlcnRpb25GbGFncyBiYWNrZ3Jv
dW5kVGFiRmxhZ3MgPSAoQktTUHJvY2Vzc0Fzc2VydGlvblByZXZlbnRUYXNrU3VzcGVuZCk7CiBj
b25zdCBCS1NQcm9jZXNzQXNzZXJ0aW9uRmxhZ3MgZm9yZWdyb3VuZFRhYkZsYWdzID0gKEJLU1By
b2Nlc3NBc3NlcnRpb25QcmV2ZW50VGFza1N1c3BlbmQgfCBCS1NQcm9jZXNzQXNzZXJ0aW9uV2Fu
dHNGb3JlZ3JvdW5kUmVzb3VyY2VQcmlvcml0eSB8IEJLU1Byb2Nlc3NBc3NlcnRpb25QcmV2ZW50
VGFza1Rocm90dGxlRG93bik7CkBAIC0zMDEsNDMgKzM0NSw4NyBAQCBzdGF0aWMgQktTUHJvY2Vz
c0Fzc2VydGlvblJlYXNvbiB0b0JLU1Byb2Nlc3NBc3NlcnRpb25SZWFzb24oUHJvY2Vzc0Fzc2Vy
dGlvblR5cAogCiBQcm9jZXNzQXNzZXJ0aW9uOjpQcm9jZXNzQXNzZXJ0aW9uKHBpZF90IHBpZCwg
QVNDSUlMaXRlcmFsIHJlYXNvbiwgUHJvY2Vzc0Fzc2VydGlvblR5cGUgYXNzZXJ0aW9uVHlwZSkK
ICAgICA6IG1fYXNzZXJ0aW9uVHlwZShhc3NlcnRpb25UeXBlKQorICAgICwgbV9waWQocGlkKQog
ewogICAgIGF1dG8gd2Vha1RoaXMgPSBtYWtlV2Vha1B0cigqdGhpcyk7Ci0gICAgQktTUHJvY2Vz
c0Fzc2VydGlvbkFjcXVpc2l0aW9uSGFuZGxlciBoYW5kbGVyID0gXihCT09MIGFjcXVpcmVkKSB7
Ci0gICAgICAgIGlmICghYWNxdWlyZWQpIHsKLSAgICAgICAgICAgIFJFTEVBU0VfTE9HX0VSUk9S
KFByb2Nlc3NTdXNwZW5zaW9uLCAiICVwIC0gUHJvY2Vzc0Fzc2VydGlvbigpIFBJRCAlZCBVbmFi
bGUgdG8gYWNxdWlyZSBhc3NlcnRpb24gZm9yIHByb2Nlc3Mgd2l0aCBQSUQgJWQiLCB0aGlzLCBn
ZXRwaWQoKSwgcGlkKTsKKyAgICBOU1N0cmluZyAqbnNSZWFzb24gPSBbTlNTdHJpbmcgc3RyaW5n
V2l0aENTdHJpbmc6cmVhc29uLmNoYXJhY3RlcnMoKSBlbmNvZGluZzpOU0FTQ0lJU3RyaW5nRW5j
b2RpbmddOworCisjaWYgSEFWRShSVU5OSU5HQk9BUkRfV0VCS0lUX0FTU0VSVElPTlMpCisgICAg
TlNTdHJpbmcgKnJ1bm5pbmdCb2FyZEFzc2VydGlvbk5hbWUgPSBydW5uaW5nQm9hcmROYW1lRm9y
QXNzZXJ0aW9uVHlwZShhc3NlcnRpb25UeXBlKTsKKyAgICBpZiAocnVubmluZ0JvYXJkQXNzZXJ0
aW9uTmFtZSkgeworICAgICAgICBSQlNUYXJnZXQgKnRhcmdldCA9IFtSQlNUYXJnZXQgdGFyZ2V0
V2l0aFBpZDpwaWRdOworICAgICAgICBSQlNEb21haW5BdHRyaWJ1dGUgKmRvbWFpbkF0dHJpYnV0
ZSA9IFtSQlNEb21haW5BdHRyaWJ1dGUgYXR0cmlidXRlV2l0aERvbWFpbjpAImNvbS5hcHBsZS53
ZWJraXQiIG5hbWU6cnVubmluZ0JvYXJkQXNzZXJ0aW9uTmFtZV07CisgICAgICAgIG1fcmJzQXNz
ZXJ0aW9uID0gYWRvcHROUyhbW1JCU0Fzc2VydGlvbiBhbGxvY10gaW5pdFdpdGhFeHBsYW5hdGlv
bjpuc1JlYXNvbiB0YXJnZXQ6dGFyZ2V0IGF0dHJpYnV0ZXM6QFtkb21haW5BdHRyaWJ1dGVdXSk7
CisKKyAgICAgICAgbV9kZWxlZ2F0ZSA9IGFkb3B0TlMoW1tXS1JCU0Fzc2VydGlvbkRlbGVnYXRl
IGFsbG9jXSBpbml0XSk7CisgICAgICAgIFttX3Jic0Fzc2VydGlvbiBhZGRPYnNlcnZlcjptX2Rl
bGVnYXRlLmdldCgpXTsKKyAgICAgICAgbV9kZWxlZ2F0ZS5nZXQoKS5pbnZhbGlkYXRpb25DYWxs
YmFjayA9IF57CiAgICAgICAgICAgICBkaXNwYXRjaF9hc3luYyhkaXNwYXRjaF9nZXRfbWFpbl9x
dWV1ZSgpLCBeeworICAgICAgICAgICAgICAgIFJFTEVBU0VfTE9HKFByb2Nlc3NTdXNwZW5zaW9u
LCAiJXAgLSBQcm9jZXNzQXNzZXJ0aW9uKCkgUkJTIFByb2Nlc3MgYXNzZXJ0aW9uIGZvciBwcm9j
ZXNzIHdpdGggUElEICVkIHdhcyBpbnZhbGlkYXRlZCIsIHRoaXMsIHBpZCk7CiAgICAgICAgICAg
ICAgICAgaWYgKHdlYWtUaGlzKQogICAgICAgICAgICAgICAgICAgICBwcm9jZXNzQXNzZXJ0aW9u
V2FzSW52YWxpZGF0ZWQoKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICB9Ci0gICAgfTsKLSAg
ICBSRUxFQVNFX0xPRyhQcm9jZXNzU3VzcGVuc2lvbiwgIiVwIC0gUHJvY2Vzc0Fzc2VydGlvbigp
IFBJRCAlZCBhY3F1aXJpbmcgYXNzZXJ0aW9uIGZvciBwcm9jZXNzIHdpdGggUElEICVkLCBuYW1l
ICclcyciLCB0aGlzLCBnZXRwaWQoKSwgcGlkLCByZWFzb24uY2hhcmFjdGVycygpKTsKLSAgICAK
LSAgICBOU1N0cmluZyAqbnNSZWFzb24gPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENTdHJpbmc6cmVh
c29uLmNoYXJhY3RlcnMoKSBlbmNvZGluZzpOU0FTQ0lJU3RyaW5nRW5jb2RpbmddOwotICAgIG1f
YXNzZXJ0aW9uID0gYWRvcHROUyhbW0JLU1Byb2Nlc3NBc3NlcnRpb24gYWxsb2NdIGluaXRXaXRo
UElEOnBpZCBmbGFnczpmbGFnc0ZvckFzc2VydGlvblR5cGUoYXNzZXJ0aW9uVHlwZSkgcmVhc29u
OnRvQktTUHJvY2Vzc0Fzc2VydGlvblJlYXNvbihhc3NlcnRpb25UeXBlKSBuYW1lOm5zUmVhc29u
IHdpdGhIYW5kbGVyOmhhbmRsZXJdKTsKKyAgICAgICAgfTsKIAotICAgIG1fYXNzZXJ0aW9uLmdl
dCgpLmludmFsaWRhdGlvbkhhbmRsZXIgPSBeKCkgewotICAgICAgICBkaXNwYXRjaF9hc3luYyhk
aXNwYXRjaF9nZXRfbWFpbl9xdWV1ZSgpLCBeewotICAgICAgICAgICAgUkVMRUFTRV9MT0coUHJv
Y2Vzc1N1c3BlbnNpb24sICIlcCAtIFByb2Nlc3NBc3NlcnRpb24oKSBQcm9jZXNzIGFzc2VydGlv
biBmb3IgcHJvY2VzcyB3aXRoIFBJRCAlZCB3YXMgaW52YWxpZGF0ZWQiLCB0aGlzLCBwaWQpOwot
ICAgICAgICAgICAgaWYgKHdlYWtUaGlzKQotICAgICAgICAgICAgICAgIHByb2Nlc3NBc3NlcnRp
b25XYXNJbnZhbGlkYXRlZCgpOwotICAgICAgICB9KTsKLSAgICB9OworICAgICAgICBOU0Vycm9y
ICphY3F1aXNpdGlvbkVycm9yID0gbmlsOworICAgICAgICBpZiAoIVttX3Jic0Fzc2VydGlvbiBh
Y3F1aXJlV2l0aEVycm9yOiZhY3F1aXNpdGlvbkVycm9yXSkgeworICAgICAgICAgICAgUkVMRUFT
RV9MT0dfRVJST1IoUHJvY2Vzc1N1c3BlbnNpb24sICJQcm9jZXNzQXNzZXJ0aW9uOiBGYWlsZWQg
dG8gYWNxdWlyZSBSQlMgYXNzZXJ0aW9uICcle3B1YmxpY31zJyBmb3IgcHJvY2VzcyB3aXRoIFBJ
RCAlZCwgZXJyb3I6ICV7cHVibGljfUAiLCByZWFzb24uY2hhcmFjdGVycygpLCBwaWQsIGFjcXVp
c2l0aW9uRXJyb3IpOworICAgICAgICAgICAgZGlzcGF0Y2hfYXN5bmMoZGlzcGF0Y2hfZ2V0X21h
aW5fcXVldWUoKSwgXnsKKyAgICAgICAgICAgICAgICBpZiAod2Vha1RoaXMpCisgICAgICAgICAg
ICAgICAgICAgIHByb2Nlc3NBc3NlcnRpb25XYXNJbnZhbGlkYXRlZCgpOworICAgICAgICAgICAg
fSk7CisgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgUkVMRUFTRV9MT0coUHJvY2Vzc1N1c3Bl
bnNpb24sICJQcm9jZXNzQXNzZXJ0aW9uOiBTdWNjZXNzZnVsbHkgdG9vayBSQlMgYXNzZXJ0aW9u
ICcle3B1YmxpY31zJyBmb3IgcHJvY2VzcyB3aXRoIFBJRCAlZCIsIHJlYXNvbi5jaGFyYWN0ZXJz
KCksIHBpZCk7CisgICAgfSBlbHNlIHsKKyNlbmRpZiAvLyBIQVZFKFJVTk5JTkdCT0FSRF9XRUJL
SVRfQVNTRVJUSU9OUykKKyAgICAgICAgLy8gTGVnYWN5IGNvZGUgcGF0aC4KKyAgICAgICAgQktT
UHJvY2Vzc0Fzc2VydGlvbkFjcXVpc2l0aW9uSGFuZGxlciBoYW5kbGVyID0gXihCT09MIGFjcXVp
cmVkKSB7CisgICAgICAgICAgICBpZiAoIWFjcXVpcmVkKSB7CisgICAgICAgICAgICAgICAgUkVM
RUFTRV9MT0dfRVJST1IoUHJvY2Vzc1N1c3BlbnNpb24sICIgJXAgLSBQcm9jZXNzQXNzZXJ0aW9u
KCkgUElEICVkIFVuYWJsZSB0byBhY3F1aXJlIEJLUyBhc3NlcnRpb24gZm9yIHByb2Nlc3Mgd2l0
aCBQSUQgJWQiLCB0aGlzLCBnZXRwaWQoKSwgcGlkKTsKKyAgICAgICAgICAgICAgICBkaXNwYXRj
aF9hc3luYyhkaXNwYXRjaF9nZXRfbWFpbl9xdWV1ZSgpLCBeeworICAgICAgICAgICAgICAgICAg
ICBpZiAod2Vha1RoaXMpCisgICAgICAgICAgICAgICAgICAgICAgICBwcm9jZXNzQXNzZXJ0aW9u
V2FzSW52YWxpZGF0ZWQoKTsKKyAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgICAgIH0KKyAg
ICAgICAgfTsKKyAgICAgICAgUkVMRUFTRV9MT0coUHJvY2Vzc1N1c3BlbnNpb24sICIlcCAtIFBy
b2Nlc3NBc3NlcnRpb24oKSBQSUQgJWQgYWNxdWlyaW5nIEJLUyBhc3NlcnRpb24gZm9yIHByb2Nl
c3Mgd2l0aCBQSUQgJWQsIG5hbWUgJyVzJyIsIHRoaXMsIGdldHBpZCgpLCBwaWQsIHJlYXNvbi5j
aGFyYWN0ZXJzKCkpOworCisgICAgICAgIG1fYmtzQXNzZXJ0aW9uID0gYWRvcHROUyhbW0JLU1By
b2Nlc3NBc3NlcnRpb24gYWxsb2NdIGluaXRXaXRoUElEOnBpZCBmbGFnczpmbGFnc0ZvckFzc2Vy
dGlvblR5cGUoYXNzZXJ0aW9uVHlwZSkgcmVhc29uOnRvQktTUHJvY2Vzc0Fzc2VydGlvblJlYXNv
bihhc3NlcnRpb25UeXBlKSBuYW1lOm5zUmVhc29uIHdpdGhIYW5kbGVyOmhhbmRsZXJdKTsKKwor
ICAgICAgICBtX2Jrc0Fzc2VydGlvbi5nZXQoKS5pbnZhbGlkYXRpb25IYW5kbGVyID0gXigpIHsK
KyAgICAgICAgICAgIGRpc3BhdGNoX2FzeW5jKGRpc3BhdGNoX2dldF9tYWluX3F1ZXVlKCksIF57
CisgICAgICAgICAgICAgICAgUkVMRUFTRV9MT0coUHJvY2Vzc1N1c3BlbnNpb24sICIlcCAtIFBy
b2Nlc3NBc3NlcnRpb24oKSBCS1MgUHJvY2VzcyBhc3NlcnRpb24gZm9yIHByb2Nlc3Mgd2l0aCBQ
SUQgJWQgd2FzIGludmFsaWRhdGVkIiwgdGhpcywgcGlkKTsKKyAgICAgICAgICAgICAgICBpZiAo
d2Vha1RoaXMpCisgICAgICAgICAgICAgICAgICAgIHByb2Nlc3NBc3NlcnRpb25XYXNJbnZhbGlk
YXRlZCgpOworICAgICAgICAgICAgfSk7CisgICAgICAgIH07CisjaWYgSEFWRShSVU5OSU5HQk9B
UkRfV0VCS0lUX0FTU0VSVElPTlMpCisgICAgfQorI2VuZGlmCisgICAgQVNTRVJUKG1fcmJzQXNz
ZXJ0aW9uIHx8IG1fYmtzQXNzZXJ0aW9uKTsKIH0KIAogUHJvY2Vzc0Fzc2VydGlvbjo6flByb2Nl
c3NBc3NlcnRpb24oKQogewotICAgIG1fYXNzZXJ0aW9uLmdldCgpLmludmFsaWRhdGlvbkhhbmRs
ZXIgPSBuaWw7CisgICAgUkVMRUFTRV9MT0coUHJvY2Vzc1N1c3BlbnNpb24sICIlcCAtIH5Qcm9j
ZXNzQXNzZXJ0aW9uKCkgUmVsZWFzaW5nIHByb2Nlc3MgYXNzZXJ0aW9uIGZvciBwcm9jZXNzIHdp
dGggUElEICVkIiwgdGhpcywgbV9waWQpOworCisjaWYgSEFWRShSVU5OSU5HQk9BUkRfV0VCS0lU
X0FTU0VSVElPTlMpCisgICAgaWYgKG1fcmJzQXNzZXJ0aW9uKSB7CisgICAgICAgIFttX3Jic0Fz
c2VydGlvbiByZW1vdmVPYnNlcnZlcjptX2RlbGVnYXRlLmdldCgpXTsKKyAgICAgICAgW21fcmJz
QXNzZXJ0aW9uIGludmFsaWRhdGVdOworICAgIH0KKyNlbmRpZgogCi0gICAgUkVMRUFTRV9MT0co
UHJvY2Vzc1N1c3BlbnNpb24sICIlcCAtIH5Qcm9jZXNzQXNzZXJ0aW9uKCkgUmVsZWFzaW5nIHBy
b2Nlc3MgYXNzZXJ0aW9uIiwgdGhpcyk7Ci0gICAgW21fYXNzZXJ0aW9uIGludmFsaWRhdGVdOwor
ICAgIGlmIChtX2Jrc0Fzc2VydGlvbikgeworICAgICAgICBtX2Jrc0Fzc2VydGlvbi5nZXQoKS5p
bnZhbGlkYXRpb25IYW5kbGVyID0gbmlsOworICAgICAgICBbbV9ia3NBc3NlcnRpb24gaW52YWxp
ZGF0ZV07CisgICAgfQogfQogCiB2b2lkIFByb2Nlc3NBc3NlcnRpb246OnByb2Nlc3NBc3NlcnRp
b25XYXNJbnZhbGlkYXRlZCgpCiB7CiAgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKLSAg
ICBSRUxFQVNFX0xPR19FUlJPUihQcm9jZXNzU3VzcGVuc2lvbiwgIiVwIC0gUHJvY2Vzc0Fzc2Vy
dGlvbjo6cHJvY2Vzc0Fzc2VydGlvbldhc0ludmFsaWRhdGVkKCkiLCB0aGlzKTsKKyAgICBSRUxF
QVNFX0xPRyhQcm9jZXNzU3VzcGVuc2lvbiwgIiVwIC0gUHJvY2Vzc0Fzc2VydGlvbjo6cHJvY2Vz
c0Fzc2VydGlvbldhc0ludmFsaWRhdGVkKCkgUElEOiAlZCIsIHRoaXMsIG1fcGlkKTsKIAogICAg
IG1fdmFsaWRpdHkgPSBWYWxpZGl0eTo6Tm87CiB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>395618</attachid>
            <date>2020-04-06 14:31:17 -0700</date>
            <delta_ts>2020-04-06 14:49:14 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210065-20200406143116.patch</filename>
            <type>text/plain</type>
            <size>11004</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5NTg2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDc0ZjVlMGZmYjVjNjM5M2Q0
YjIyYmQ1OWExMGU5YTMzZjYyOGE5N2QuLjNkNGVhYjc1NjI5NWUzZTI0NzNmMmJhZjA2ZjIyZGFk
NzAzODhmZmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMjAtMDQtMDYgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBUcmFuc2l0aW9uIG1vc3Qg
cHJvY2VzcyBhc3NlcnRpb25zIHRvIFJ1bm5pbmdCb2FyZAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEwMDY1CisgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS82MTM1NDkwMT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBUcmFuc2l0aW9uIG1vc3QgcHJvY2VzcyBhc3NlcnRpb25zIHRvIFJ1bm5pbmdCb2FyZCwg
aW5zdGVhZCBvZiBsZWdhY3kgQktTUHJvY2Vzc0Fzc2VydGlvbi4KKyAgICAgICAgVGhlIG9ubHkg
YXNzZXJ0aW9uIHRoYXQgc3RpbGwgdXNlcyBCS1NQcm9jZXNzQXNzZXJ0aW9uIGlzIHRoZSBNZWRp
YVBsYXliYWNrIG9uY2UgYmVjYXVzZQorICAgICAgICB3ZSBkbyBub3QgaGF2ZSBhIFJ1bm5pbmdC
b2FyZCBlcXVpdmFsZW50IGZvciB0aGlzIG9uZSB5ZXQgKHNlZSA8cmRhcjovL3Byb2JsZW0vNjEy
NjMxNDc+KS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmg6CisgICAg
ICAgICogVUlQcm9jZXNzL2lvcy9Qcm9jZXNzQXNzZXJ0aW9uSU9TLm1tOgorICAgICAgICAoLVtX
S1JCU0Fzc2VydGlvbkRlbGVnYXRlIGFzc2VydGlvbldpbGxJbnZhbGlkYXRlOl0pOgorICAgICAg
ICAoLVtXS1JCU0Fzc2VydGlvbkRlbGVnYXRlIGFzc2VydGlvbjpkaWRJbnZhbGlkYXRlV2l0aEVy
cm9yOl0pOgorICAgICAgICAoV2ViS2l0OjpydW5uaW5nQm9hcmROYW1lRm9yQXNzZXJ0aW9uVHlw
ZSk6CisgICAgICAgIChXZWJLaXQ6OlByb2Nlc3NBc3NlcnRpb246OlByb2Nlc3NBc3NlcnRpb24p
OgorICAgICAgICAoV2ViS2l0OjpQcm9jZXNzQXNzZXJ0aW9uOjp+UHJvY2Vzc0Fzc2VydGlvbik6
CisgICAgICAgIChXZWJLaXQ6OlByb2Nlc3NBc3NlcnRpb246OnByb2Nlc3NBc3NlcnRpb25XYXNJ
bnZhbGlkYXRlZCk6CisKIDIwMjAtMDQtMDYgIFbDrWN0b3IgTWFudWVsIErDoXF1ZXogTGVhbCAg
PHZqYXF1ZXpAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXSBSZW1vdmUgdW51c2VkIGhlYWRl
ciBpbiB3ZWIgcHJvY2VzcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9zcGkv
aW9zL1J1bm5pbmdCb2FyZFNlcnZpY2VzU1BJLmggYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL3Nw
aS9pb3MvUnVubmluZ0JvYXJkU2VydmljZXNTUEkuaAppbmRleCAwNWEzNWRhMzQwMjkzMDViMTAw
YzNiMjJiMjk2NDJhYmYzNTNlMWJkLi5jODMyMmVkZmFkYzk3OGNlOTI4YjNkZDE5NjM1MzQ4M2E5
N2EyYWVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL3NwaS9pb3MvUnVubmlu
Z0JvYXJkU2VydmljZXNTUEkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL3NwaS9pb3Mv
UnVubmluZ0JvYXJkU2VydmljZXNTUEkuaApAQCAtNDYsNiArNDYsOCBAQAogLSAoaW5zdGFuY2V0
eXBlKWluaXRXaXRoRXhwbGFuYXRpb246KE5TU3RyaW5nICopZXhwbGFuYXRpb24gdGFyZ2V0OihS
QlNUYXJnZXQgKil0YXJnZXQgYXR0cmlidXRlczooTlNBcnJheSA8UkJTQXR0cmlidXRlICo+ICop
YXR0cmlidXRlczsKIC0gKEJPT0wpYWNxdWlyZVdpdGhFcnJvcjooTlNFcnJvciAqKillcnJvcjsK
IC0gKHZvaWQpaW52YWxpZGF0ZTsKKy0gKHZvaWQpYWRkT2JzZXJ2ZXI6KGlkIDxSQlNBc3NlcnRp
b25PYnNlcnZpbmc+KW9ic2VydmVyOworLSAodm9pZClyZW1vdmVPYnNlcnZlcjooaWQgPFJCU0Fz
c2VydGlvbk9ic2VydmluZz4pb2JzZXJ2ZXI7CiBAZW5kCiAKIEBwcm90b2NvbCBSQlNBc3NlcnRp
b25PYnNlcnZpbmcgPE5TT2JqZWN0PgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvUHJvY2Vzc0Fzc2VydGlvbi5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc0Fz
c2VydGlvbi5oCmluZGV4IGE4YzQ0MjI5MDMwY2U3M2RiYzQ2OWE1OWE1MzY1ZTdjMWEzODllMmEu
LjJjODYzYzBhYjgzZWZjZTJmNWU4NDcxOTYwOGE4NThhZjFhNmU3ZWIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24uaAorKysgYi9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmgKQEAgLTM2LDggKzM2LDExIEBACiAKICNp
ZiBQTEFURk9STShJT1NfRkFNSUxZKQogI2luY2x1ZGUgPHd0Zi9SZXRhaW5QdHIuaD4KKworT0JK
Q19DTEFTUyBSQlNBc3NlcnRpb247CitPQkpDX0NMQVNTIFdLUkJTQXNzZXJ0aW9uRGVsZWdhdGU7
CiBPQkpDX0NMQVNTIEJLU1Byb2Nlc3NBc3NlcnRpb247Ci0jZW5kaWYKKyNlbmRpZiAvLyBQTEFU
Rk9STShJT1NfRkFNSUxZKQogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIApAQCAtNzUsMTEgKzc4LDE0
IEBAIHByb3RlY3RlZDoKICNlbmRpZgogCiBwcml2YXRlOgorICAgIGNvbnN0IFByb2Nlc3NBc3Nl
cnRpb25UeXBlIG1fYXNzZXJ0aW9uVHlwZTsKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQotICAg
IFJldGFpblB0cjxCS1NQcm9jZXNzQXNzZXJ0aW9uPiBtX2Fzc2VydGlvbjsKKyAgICBjb25zdCBQ
cm9jZXNzSUQgbV9waWQ7CisgICAgUmV0YWluUHRyPFJCU0Fzc2VydGlvbj4gbV9yYnNBc3NlcnRp
b247CisgICAgUmV0YWluUHRyPFdLUkJTQXNzZXJ0aW9uRGVsZWdhdGU+IG1fZGVsZWdhdGU7Cisg
ICAgUmV0YWluUHRyPEJLU1Byb2Nlc3NBc3NlcnRpb24+IG1fYmtzQXNzZXJ0aW9uOyAvLyBMZWdh
Y3kuCiAgICAgVmFsaWRpdHkgbV92YWxpZGl0eSB7IFZhbGlkaXR5OjpVbnNldCB9OwogI2VuZGlm
Ci0gICAgY29uc3QgUHJvY2Vzc0Fzc2VydGlvblR5cGUgbV9hc3NlcnRpb25UeXBlOwogICAgIENs
aWVudCogbV9jbGllbnQgeyBudWxscHRyIH07CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9pb3MvUHJvY2Vzc0Fzc2VydGlvbklPUy5tbSBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL2lvcy9Qcm9jZXNzQXNzZXJ0aW9uSU9TLm1tCmluZGV4IDhmMTczYWRiMzYxOWFm
YjI4MGFiNmY5ZThiM2E5NTZkMDBkZjBjMDQuLmMzMjJiMDM5MjAwYWVlZTUyMmNmYjI0YTc2Nzc2
MjgzOWU4NzMzYjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9Qcm9j
ZXNzQXNzZXJ0aW9uSU9TLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9Qcm9j
ZXNzQXNzZXJ0aW9uSU9TLm1tCkBAIC0yNjUsOCArMjY1LDQ5IEBAIC0gKHZvaWQpX3JlbGVhc2VC
YWNrZ3JvdW5kVGFzawogCiBAZW5kCiAKK3R5cGVkZWYgdm9pZCheUkJTQXNzZXJ0aW9uSW52YWxp
ZGF0aW9uQ2FsbGJhY2tUeXBlKSgpOworCitAaW50ZXJmYWNlIFdLUkJTQXNzZXJ0aW9uRGVsZWdh
dGUgOiBOU09iamVjdDxSQlNBc3NlcnRpb25PYnNlcnZpbmc+CitAcHJvcGVydHkgKGNvcHkpIFJC
U0Fzc2VydGlvbkludmFsaWRhdGlvbkNhbGxiYWNrVHlwZSBpbnZhbGlkYXRpb25DYWxsYmFjazsK
K0BlbmQKKworQGltcGxlbWVudGF0aW9uIFdLUkJTQXNzZXJ0aW9uRGVsZWdhdGUKKy0gKHZvaWQp
YXNzZXJ0aW9uV2lsbEludmFsaWRhdGU6KFJCU0Fzc2VydGlvbiAqKWFzc2VydGlvbgoreworICAg
IFJFTEVBU0VfTE9HKFByb2Nlc3NTdXNwZW5zaW9uLCAiJXAgLSBXS1JCU0Fzc2VydGlvbkRlbGVn
YXRlOiBhc3NlcnRpb25XaWxsSW52YWxpZGF0ZSIsIHNlbGYpOworfQorCistICh2b2lkKWFzc2Vy
dGlvbjooUkJTQXNzZXJ0aW9uICopYXNzZXJ0aW9uIGRpZEludmFsaWRhdGVXaXRoRXJyb3I6KE5T
RXJyb3IgKillcnJvcgoreworICAgIFJFTEVBU0VfTE9HKFByb2Nlc3NTdXNwZW5zaW9uLCAiJXAg
LSBXS1JCU0Fzc2VydGlvbkRlbGVnYXRlOiBhc3NlcnRpb24gd2FzIGludmFsaWRhdGVkLCBlcnJv
cjogJXtwdWJsaWN9QCIsIGVycm9yLCBzZWxmKTsKKyAgICBpZiAoYXV0byBjYWxsYmFjayA9IF9p
bnZhbGlkYXRpb25DYWxsYmFjaykKKyAgICAgICAgY2FsbGJhY2soKTsKK30KK0BlbmQKKwogbmFt
ZXNwYWNlIFdlYktpdCB7CiAKK3N0YXRpYyBOU1N0cmluZyAqcnVubmluZ0JvYXJkTmFtZUZvckFz
c2VydGlvblR5cGUoUHJvY2Vzc0Fzc2VydGlvblR5cGUgYXNzZXJ0aW9uVHlwZSkKK3sKKyNpZiBI
QVZFKFJVTk5JTkdCT0FSRF9XRUJLSVRfQVNTRVJUSU9OUykKKyAgICBzd2l0Y2ggKGFzc2VydGlv
blR5cGUpIHsKKyAgICBjYXNlIFByb2Nlc3NBc3NlcnRpb25UeXBlOjpTdXNwZW5kZWQ6CisgICAg
ICAgIHJldHVybiBAIlN1c3BlbmRlZCI7CisgICAgY2FzZSBQcm9jZXNzQXNzZXJ0aW9uVHlwZTo6
QmFja2dyb3VuZDoKKyAgICAgICAgcmV0dXJuIEAiQmFja2dyb3VuZCI7CisgICAgY2FzZSBQcm9j
ZXNzQXNzZXJ0aW9uVHlwZTo6VW5ib3VuZGVkTmV0d29ya2luZzoKKyAgICAgICAgcmV0dXJuIEAi
VW5ib3VuZGVkTmV0d29ya2luZyI7CisgICAgY2FzZSBQcm9jZXNzQXNzZXJ0aW9uVHlwZTo6Rm9y
ZWdyb3VuZDoKKyAgICAgICAgcmV0dXJuIEAiRm9yZWdyb3VuZCI7CisgICAgY2FzZSBQcm9jZXNz
QXNzZXJ0aW9uVHlwZTo6TWVkaWFQbGF5YmFjazoKKyAgICAgICAgcmV0dXJuIG5pbDsgLy8gRklY
TUU6IE5hbWUgdG8gYmUgZGVmaW5lZCBpbiA8cmRhcjovL3Byb2JsZW0vNjEyNjMxNDc+LgorICAg
IH0KKyNlbHNlCisgICAgVU5VU0VEX1BBUkFNKGFzc2VydGlvblR5cGUpOworICAgIHJldHVybiBu
aWw7CisjZW5kaWYKK30KKwogY29uc3QgQktTUHJvY2Vzc0Fzc2VydGlvbkZsYWdzIHN1c3BlbmRl
ZFRhYkZsYWdzID0gKEJLU1Byb2Nlc3NBc3NlcnRpb25BbGxvd0lkbGVTbGVlcCk7CiBjb25zdCBC
S1NQcm9jZXNzQXNzZXJ0aW9uRmxhZ3MgYmFja2dyb3VuZFRhYkZsYWdzID0gKEJLU1Byb2Nlc3NB
c3NlcnRpb25QcmV2ZW50VGFza1N1c3BlbmQpOwogY29uc3QgQktTUHJvY2Vzc0Fzc2VydGlvbkZs
YWdzIGZvcmVncm91bmRUYWJGbGFncyA9IChCS1NQcm9jZXNzQXNzZXJ0aW9uUHJldmVudFRhc2tT
dXNwZW5kIHwgQktTUHJvY2Vzc0Fzc2VydGlvbldhbnRzRm9yZWdyb3VuZFJlc291cmNlUHJpb3Jp
dHkgfCBCS1NQcm9jZXNzQXNzZXJ0aW9uUHJldmVudFRhc2tUaHJvdHRsZURvd24pOwpAQCAtMzAx
LDQzICszNDIsODEgQEAgc3RhdGljIEJLU1Byb2Nlc3NBc3NlcnRpb25SZWFzb24gdG9CS1NQcm9j
ZXNzQXNzZXJ0aW9uUmVhc29uKFByb2Nlc3NBc3NlcnRpb25UeXAKIAogUHJvY2Vzc0Fzc2VydGlv
bjo6UHJvY2Vzc0Fzc2VydGlvbihwaWRfdCBwaWQsIEFTQ0lJTGl0ZXJhbCByZWFzb24sIFByb2Nl
c3NBc3NlcnRpb25UeXBlIGFzc2VydGlvblR5cGUpCiAgICAgOiBtX2Fzc2VydGlvblR5cGUoYXNz
ZXJ0aW9uVHlwZSkKKyAgICAsIG1fcGlkKHBpZCkKIHsKICAgICBhdXRvIHdlYWtUaGlzID0gbWFr
ZVdlYWtQdHIoKnRoaXMpOwotICAgIEJLU1Byb2Nlc3NBc3NlcnRpb25BY3F1aXNpdGlvbkhhbmRs
ZXIgaGFuZGxlciA9IF4oQk9PTCBhY3F1aXJlZCkgewotICAgICAgICBpZiAoIWFjcXVpcmVkKSB7
Ci0gICAgICAgICAgICBSRUxFQVNFX0xPR19FUlJPUihQcm9jZXNzU3VzcGVuc2lvbiwgIiAlcCAt
IFByb2Nlc3NBc3NlcnRpb24oKSBQSUQgJWQgVW5hYmxlIHRvIGFjcXVpcmUgYXNzZXJ0aW9uIGZv
ciBwcm9jZXNzIHdpdGggUElEICVkIiwgdGhpcywgZ2V0cGlkKCksIHBpZCk7CisgICAgTlNTdHJp
bmcgKm5zUmVhc29uID0gW05TU3RyaW5nIHN0cmluZ1dpdGhDU3RyaW5nOnJlYXNvbi5jaGFyYWN0
ZXJzKCkgZW5jb2Rpbmc6TlNBU0NJSVN0cmluZ0VuY29kaW5nXTsKKyAgICBOU1N0cmluZyAqcnVu
bmluZ0JvYXJkQXNzZXJ0aW9uTmFtZSA9IHJ1bm5pbmdCb2FyZE5hbWVGb3JBc3NlcnRpb25UeXBl
KGFzc2VydGlvblR5cGUpOworCisgICAgLy8gRklYTUU6IFJlcGxhY2UgcnVudGltZSBjaGVjayB3
aXRoIEhBVkUoUlVOTklOR0JPQVJEX1dFQktJVF9BU1NFUlRJT05TKSBjb21waWxlIHRpbWUgY2hl
Y2sgb25jZQorICAgIC8vIDxyZGFyOi8vcHJvYmxlbS82MTI2MzE0Nz4gaXMgZml4ZWQgYW5kIHdl
IGhhdmUgUnVubmluZ0JvYXJkIGVxdWl2YWxlbnRzIGZvciBhbGwgYXNzZXJ0aW9uIHR5cGVzLgor
ICAgIGlmIChydW5uaW5nQm9hcmRBc3NlcnRpb25OYW1lKSB7CisgICAgICAgIFJCU1RhcmdldCAq
dGFyZ2V0ID0gW1JCU1RhcmdldCB0YXJnZXRXaXRoUGlkOnBpZF07CisgICAgICAgIFJCU0RvbWFp
bkF0dHJpYnV0ZSAqZG9tYWluQXR0cmlidXRlID0gW1JCU0RvbWFpbkF0dHJpYnV0ZSBhdHRyaWJ1
dGVXaXRoRG9tYWluOkAiY29tLmFwcGxlLndlYmtpdCIgbmFtZTpydW5uaW5nQm9hcmRBc3NlcnRp
b25OYW1lXTsKKyAgICAgICAgbV9yYnNBc3NlcnRpb24gPSBhZG9wdE5TKFtbUkJTQXNzZXJ0aW9u
IGFsbG9jXSBpbml0V2l0aEV4cGxhbmF0aW9uOm5zUmVhc29uIHRhcmdldDp0YXJnZXQgYXR0cmli
dXRlczpAW2RvbWFpbkF0dHJpYnV0ZV1dKTsKKworICAgICAgICBtX2RlbGVnYXRlID0gYWRvcHRO
UyhbW1dLUkJTQXNzZXJ0aW9uRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKKyAgICAgICAgW21fcmJz
QXNzZXJ0aW9uIGFkZE9ic2VydmVyOm1fZGVsZWdhdGUuZ2V0KCldOworICAgICAgICBtX2RlbGVn
YXRlLmdldCgpLmludmFsaWRhdGlvbkNhbGxiYWNrID0gXnsKICAgICAgICAgICAgIGRpc3BhdGNo
X2FzeW5jKGRpc3BhdGNoX2dldF9tYWluX3F1ZXVlKCksIF57CisgICAgICAgICAgICAgICAgUkVM
RUFTRV9MT0coUHJvY2Vzc1N1c3BlbnNpb24sICIlcCAtIFByb2Nlc3NBc3NlcnRpb24oKSBSQlMg
UHJvY2VzcyBhc3NlcnRpb24gZm9yIHByb2Nlc3Mgd2l0aCBQSUQgJWQgd2FzIGludmFsaWRhdGVk
IiwgdGhpcywgcGlkKTsKICAgICAgICAgICAgICAgICBpZiAod2Vha1RoaXMpCiAgICAgICAgICAg
ICAgICAgICAgIHByb2Nlc3NBc3NlcnRpb25XYXNJbnZhbGlkYXRlZCgpOwogICAgICAgICAgICAg
fSk7Ci0gICAgICAgIH0KLSAgICB9OwotICAgIFJFTEVBU0VfTE9HKFByb2Nlc3NTdXNwZW5zaW9u
LCAiJXAgLSBQcm9jZXNzQXNzZXJ0aW9uKCkgUElEICVkIGFjcXVpcmluZyBhc3NlcnRpb24gZm9y
IHByb2Nlc3Mgd2l0aCBQSUQgJWQsIG5hbWUgJyVzJyIsIHRoaXMsIGdldHBpZCgpLCBwaWQsIHJl
YXNvbi5jaGFyYWN0ZXJzKCkpOwotICAgIAotICAgIE5TU3RyaW5nICpuc1JlYXNvbiA9IFtOU1N0
cmluZyBzdHJpbmdXaXRoQ1N0cmluZzpyZWFzb24uY2hhcmFjdGVycygpIGVuY29kaW5nOk5TQVND
SUlTdHJpbmdFbmNvZGluZ107Ci0gICAgbV9hc3NlcnRpb24gPSBhZG9wdE5TKFtbQktTUHJvY2Vz
c0Fzc2VydGlvbiBhbGxvY10gaW5pdFdpdGhQSUQ6cGlkIGZsYWdzOmZsYWdzRm9yQXNzZXJ0aW9u
VHlwZShhc3NlcnRpb25UeXBlKSByZWFzb246dG9CS1NQcm9jZXNzQXNzZXJ0aW9uUmVhc29uKGFz
c2VydGlvblR5cGUpIG5hbWU6bnNSZWFzb24gd2l0aEhhbmRsZXI6aGFuZGxlcl0pOworICAgICAg
ICB9OwogCi0gICAgbV9hc3NlcnRpb24uZ2V0KCkuaW52YWxpZGF0aW9uSGFuZGxlciA9IF4oKSB7
Ci0gICAgICAgIGRpc3BhdGNoX2FzeW5jKGRpc3BhdGNoX2dldF9tYWluX3F1ZXVlKCksIF57Ci0g
ICAgICAgICAgICBSRUxFQVNFX0xPRyhQcm9jZXNzU3VzcGVuc2lvbiwgIiVwIC0gUHJvY2Vzc0Fz
c2VydGlvbigpIFByb2Nlc3MgYXNzZXJ0aW9uIGZvciBwcm9jZXNzIHdpdGggUElEICVkIHdhcyBp
bnZhbGlkYXRlZCIsIHRoaXMsIHBpZCk7Ci0gICAgICAgICAgICBpZiAod2Vha1RoaXMpCi0gICAg
ICAgICAgICAgICAgcHJvY2Vzc0Fzc2VydGlvbldhc0ludmFsaWRhdGVkKCk7Ci0gICAgICAgIH0p
OwotICAgIH07CisgICAgICAgIE5TRXJyb3IgKmFjcXVpc2l0aW9uRXJyb3IgPSBuaWw7CisgICAg
ICAgIGlmICghW21fcmJzQXNzZXJ0aW9uIGFjcXVpcmVXaXRoRXJyb3I6JmFjcXVpc2l0aW9uRXJy
b3JdKSB7CisgICAgICAgICAgICBSRUxFQVNFX0xPR19FUlJPUihQcm9jZXNzU3VzcGVuc2lvbiwg
IlByb2Nlc3NBc3NlcnRpb246IEZhaWxlZCB0byBhY3F1aXJlIFJCUyBhc3NlcnRpb24gJyV7cHVi
bGljfXMnIGZvciBwcm9jZXNzIHdpdGggUElEICVkLCBlcnJvcjogJXtwdWJsaWN9QCIsIHJlYXNv
bi5jaGFyYWN0ZXJzKCksIHBpZCwgYWNxdWlzaXRpb25FcnJvcik7CisgICAgICAgICAgICBkaXNw
YXRjaF9hc3luYyhkaXNwYXRjaF9nZXRfbWFpbl9xdWV1ZSgpLCBeeworICAgICAgICAgICAgICAg
IGlmICh3ZWFrVGhpcykKKyAgICAgICAgICAgICAgICAgICAgcHJvY2Vzc0Fzc2VydGlvbldhc0lu
dmFsaWRhdGVkKCk7CisgICAgICAgICAgICB9KTsKKyAgICAgICAgfSBlbHNlCisgICAgICAgICAg
ICBSRUxFQVNFX0xPRyhQcm9jZXNzU3VzcGVuc2lvbiwgIlByb2Nlc3NBc3NlcnRpb246IFN1Y2Nl
c3NmdWxseSB0b29rIFJCUyBhc3NlcnRpb24gJyV7cHVibGljfXMnIGZvciBwcm9jZXNzIHdpdGgg
UElEICVkIiwgcmVhc29uLmNoYXJhY3RlcnMoKSwgcGlkKTsKKyAgICB9IGVsc2UgeworICAgICAg
ICAvLyBMZWdhY3kgY29kZSBwYXRoLgorICAgICAgICBCS1NQcm9jZXNzQXNzZXJ0aW9uQWNxdWlz
aXRpb25IYW5kbGVyIGhhbmRsZXIgPSBeKEJPT0wgYWNxdWlyZWQpIHsKKyAgICAgICAgICAgIGlm
ICghYWNxdWlyZWQpIHsKKyAgICAgICAgICAgICAgICBSRUxFQVNFX0xPR19FUlJPUihQcm9jZXNz
U3VzcGVuc2lvbiwgIiAlcCAtIFByb2Nlc3NBc3NlcnRpb24oKSBQSUQgJWQgVW5hYmxlIHRvIGFj
cXVpcmUgQktTIGFzc2VydGlvbiBmb3IgcHJvY2VzcyB3aXRoIFBJRCAlZCIsIHRoaXMsIGdldHBp
ZCgpLCBwaWQpOworICAgICAgICAgICAgICAgIGRpc3BhdGNoX2FzeW5jKGRpc3BhdGNoX2dldF9t
YWluX3F1ZXVlKCksIF57CisgICAgICAgICAgICAgICAgICAgIGlmICh3ZWFrVGhpcykKKyAgICAg
ICAgICAgICAgICAgICAgICAgIHByb2Nlc3NBc3NlcnRpb25XYXNJbnZhbGlkYXRlZCgpOworICAg
ICAgICAgICAgICAgIH0pOworICAgICAgICAgICAgfQorICAgICAgICB9OworICAgICAgICBSRUxF
QVNFX0xPRyhQcm9jZXNzU3VzcGVuc2lvbiwgIiVwIC0gUHJvY2Vzc0Fzc2VydGlvbigpIFBJRCAl
ZCBhY3F1aXJpbmcgQktTIGFzc2VydGlvbiBmb3IgcHJvY2VzcyB3aXRoIFBJRCAlZCwgbmFtZSAn
JXMnIiwgdGhpcywgZ2V0cGlkKCksIHBpZCwgcmVhc29uLmNoYXJhY3RlcnMoKSk7CisKKyAgICAg
ICAgbV9ia3NBc3NlcnRpb24gPSBhZG9wdE5TKFtbQktTUHJvY2Vzc0Fzc2VydGlvbiBhbGxvY10g
aW5pdFdpdGhQSUQ6cGlkIGZsYWdzOmZsYWdzRm9yQXNzZXJ0aW9uVHlwZShhc3NlcnRpb25UeXBl
KSByZWFzb246dG9CS1NQcm9jZXNzQXNzZXJ0aW9uUmVhc29uKGFzc2VydGlvblR5cGUpIG5hbWU6
bnNSZWFzb24gd2l0aEhhbmRsZXI6aGFuZGxlcl0pOworCisgICAgICAgIG1fYmtzQXNzZXJ0aW9u
LmdldCgpLmludmFsaWRhdGlvbkhhbmRsZXIgPSBeKCkgeworICAgICAgICAgICAgZGlzcGF0Y2hf
YXN5bmMoZGlzcGF0Y2hfZ2V0X21haW5fcXVldWUoKSwgXnsKKyAgICAgICAgICAgICAgICBSRUxF
QVNFX0xPRyhQcm9jZXNzU3VzcGVuc2lvbiwgIiVwIC0gUHJvY2Vzc0Fzc2VydGlvbigpIEJLUyBQ
cm9jZXNzIGFzc2VydGlvbiBmb3IgcHJvY2VzcyB3aXRoIFBJRCAlZCB3YXMgaW52YWxpZGF0ZWQi
LCB0aGlzLCBwaWQpOworICAgICAgICAgICAgICAgIGlmICh3ZWFrVGhpcykKKyAgICAgICAgICAg
ICAgICAgICAgcHJvY2Vzc0Fzc2VydGlvbldhc0ludmFsaWRhdGVkKCk7CisgICAgICAgICAgICB9
KTsKKyAgICAgICAgfTsKKyAgICB9CisgICAgQVNTRVJUKG1fcmJzQXNzZXJ0aW9uIHx8IG1fYmtz
QXNzZXJ0aW9uKTsKIH0KIAogUHJvY2Vzc0Fzc2VydGlvbjo6flByb2Nlc3NBc3NlcnRpb24oKQog
ewotICAgIG1fYXNzZXJ0aW9uLmdldCgpLmludmFsaWRhdGlvbkhhbmRsZXIgPSBuaWw7Ci0KLSAg
ICBSRUxFQVNFX0xPRyhQcm9jZXNzU3VzcGVuc2lvbiwgIiVwIC0gflByb2Nlc3NBc3NlcnRpb24o
KSBSZWxlYXNpbmcgcHJvY2VzcyBhc3NlcnRpb24iLCB0aGlzKTsKLSAgICBbbV9hc3NlcnRpb24g
aW52YWxpZGF0ZV07CisgICAgUkVMRUFTRV9MT0coUHJvY2Vzc1N1c3BlbnNpb24sICIlcCAtIH5Q
cm9jZXNzQXNzZXJ0aW9uKCkgUmVsZWFzaW5nIHByb2Nlc3MgYXNzZXJ0aW9uIGZvciBwcm9jZXNz
IHdpdGggUElEICVkIiwgdGhpcywgbV9waWQpOworCisgICAgaWYgKG1fcmJzQXNzZXJ0aW9uKSB7
CisgICAgICAgIFttX3Jic0Fzc2VydGlvbiByZW1vdmVPYnNlcnZlcjptX2RlbGVnYXRlLmdldCgp
XTsKKyAgICAgICAgW21fcmJzQXNzZXJ0aW9uIGludmFsaWRhdGVdOworICAgIH0gZWxzZSB7Cisg
ICAgICAgIG1fYmtzQXNzZXJ0aW9uLmdldCgpLmludmFsaWRhdGlvbkhhbmRsZXIgPSBuaWw7Cisg
ICAgICAgIFttX2Jrc0Fzc2VydGlvbiBpbnZhbGlkYXRlXTsKKyAgICB9CiB9CiAKIHZvaWQgUHJv
Y2Vzc0Fzc2VydGlvbjo6cHJvY2Vzc0Fzc2VydGlvbldhc0ludmFsaWRhdGVkKCkKIHsKICAgICBB
U1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOwotICAgIFJFTEVBU0VfTE9HX0VSUk9SKFByb2Nlc3NT
dXNwZW5zaW9uLCAiJXAgLSBQcm9jZXNzQXNzZXJ0aW9uOjpwcm9jZXNzQXNzZXJ0aW9uV2FzSW52
YWxpZGF0ZWQoKSIsIHRoaXMpOworICAgIFJFTEVBU0VfTE9HKFByb2Nlc3NTdXNwZW5zaW9uLCAi
JXAgLSBQcm9jZXNzQXNzZXJ0aW9uOjpwcm9jZXNzQXNzZXJ0aW9uV2FzSW52YWxpZGF0ZWQoKSBQ
SUQ6ICVkIiwgdGhpcywgbV9waWQpOwogCiAgICAgbV92YWxpZGl0eSA9IFZhbGlkaXR5OjpObzsK
IH0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>395620</attachid>
            <date>2020-04-06 14:49:15 -0700</date>
            <delta_ts>2020-04-06 15:55:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210065-20200406144915.patch</filename>
            <type>text/plain</type>
            <size>11452</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5NTg2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDc0ZjVlMGZmYjVjNjM5M2Q0
YjIyYmQ1OWExMGU5YTMzZjYyOGE5N2QuLjNkNGVhYjc1NjI5NWUzZTI0NzNmMmJhZjA2ZjIyZGFk
NzAzODhmZmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMjAtMDQtMDYgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBUcmFuc2l0aW9uIG1vc3Qg
cHJvY2VzcyBhc3NlcnRpb25zIHRvIFJ1bm5pbmdCb2FyZAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEwMDY1CisgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS82MTM1NDkwMT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBUcmFuc2l0aW9uIG1vc3QgcHJvY2VzcyBhc3NlcnRpb25zIHRvIFJ1bm5pbmdCb2FyZCwg
aW5zdGVhZCBvZiBsZWdhY3kgQktTUHJvY2Vzc0Fzc2VydGlvbi4KKyAgICAgICAgVGhlIG9ubHkg
YXNzZXJ0aW9uIHRoYXQgc3RpbGwgdXNlcyBCS1NQcm9jZXNzQXNzZXJ0aW9uIGlzIHRoZSBNZWRp
YVBsYXliYWNrIG9uY2UgYmVjYXVzZQorICAgICAgICB3ZSBkbyBub3QgaGF2ZSBhIFJ1bm5pbmdC
b2FyZCBlcXVpdmFsZW50IGZvciB0aGlzIG9uZSB5ZXQgKHNlZSA8cmRhcjovL3Byb2JsZW0vNjEy
NjMxNDc+KS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmg6CisgICAg
ICAgICogVUlQcm9jZXNzL2lvcy9Qcm9jZXNzQXNzZXJ0aW9uSU9TLm1tOgorICAgICAgICAoLVtX
S1JCU0Fzc2VydGlvbkRlbGVnYXRlIGFzc2VydGlvbldpbGxJbnZhbGlkYXRlOl0pOgorICAgICAg
ICAoLVtXS1JCU0Fzc2VydGlvbkRlbGVnYXRlIGFzc2VydGlvbjpkaWRJbnZhbGlkYXRlV2l0aEVy
cm9yOl0pOgorICAgICAgICAoV2ViS2l0OjpydW5uaW5nQm9hcmROYW1lRm9yQXNzZXJ0aW9uVHlw
ZSk6CisgICAgICAgIChXZWJLaXQ6OlByb2Nlc3NBc3NlcnRpb246OlByb2Nlc3NBc3NlcnRpb24p
OgorICAgICAgICAoV2ViS2l0OjpQcm9jZXNzQXNzZXJ0aW9uOjp+UHJvY2Vzc0Fzc2VydGlvbik6
CisgICAgICAgIChXZWJLaXQ6OlByb2Nlc3NBc3NlcnRpb246OnByb2Nlc3NBc3NlcnRpb25XYXNJ
bnZhbGlkYXRlZCk6CisKIDIwMjAtMDQtMDYgIFbDrWN0b3IgTWFudWVsIErDoXF1ZXogTGVhbCAg
PHZqYXF1ZXpAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXSBSZW1vdmUgdW51c2VkIGhlYWRl
ciBpbiB3ZWIgcHJvY2VzcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9zcGkv
aW9zL1J1bm5pbmdCb2FyZFNlcnZpY2VzU1BJLmggYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL3Nw
aS9pb3MvUnVubmluZ0JvYXJkU2VydmljZXNTUEkuaAppbmRleCAwNWEzNWRhMzQwMjkzMDViMTAw
YzNiMjJiMjk2NDJhYmYzNTNlMWJkLi42ZGRkZDJkM2U0OTM0YjkwNGU0MjNkZDExNDk5YWM5YjJh
NDY4Yjk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL3NwaS9pb3MvUnVubmlu
Z0JvYXJkU2VydmljZXNTUEkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL3NwaS9pb3Mv
UnVubmluZ0JvYXJkU2VydmljZXNTUEkuaApAQCAtNDIsMTUgKzQyLDE3IEBACiArIChSQlNUYXJn
ZXQgKil0YXJnZXRXaXRoUGlkOihwaWRfdClwaWQ7CiBAZW5kCiAKK0Bwcm90b2NvbCBSQlNBc3Nl
cnRpb25PYnNlcnZpbmcgPE5TT2JqZWN0PgorLSAodm9pZClhc3NlcnRpb25XaWxsSW52YWxpZGF0
ZTooUkJTQXNzZXJ0aW9uICopYXNzZXJ0aW9uOworLSAodm9pZClhc3NlcnRpb246KFJCU0Fzc2Vy
dGlvbiAqKWFzc2VydGlvbiBkaWRJbnZhbGlkYXRlV2l0aEVycm9yOihOU0Vycm9yICopZXJyb3I7
CitAZW5kCisKIEBpbnRlcmZhY2UgUkJTQXNzZXJ0aW9uIDogTlNPYmplY3QKIC0gKGluc3RhbmNl
dHlwZSlpbml0V2l0aEV4cGxhbmF0aW9uOihOU1N0cmluZyAqKWV4cGxhbmF0aW9uIHRhcmdldDoo
UkJTVGFyZ2V0ICopdGFyZ2V0IGF0dHJpYnV0ZXM6KE5TQXJyYXkgPFJCU0F0dHJpYnV0ZSAqPiAq
KWF0dHJpYnV0ZXM7CiAtIChCT09MKWFjcXVpcmVXaXRoRXJyb3I6KE5TRXJyb3IgKiopZXJyb3I7
CiAtICh2b2lkKWludmFsaWRhdGU7Ci1AZW5kCi0KLUBwcm90b2NvbCBSQlNBc3NlcnRpb25PYnNl
cnZpbmcgPE5TT2JqZWN0PgotLSAodm9pZClhc3NlcnRpb25XaWxsSW52YWxpZGF0ZTooUkJTQXNz
ZXJ0aW9uICopYXNzZXJ0aW9uOwotLSAodm9pZClhc3NlcnRpb246KFJCU0Fzc2VydGlvbiAqKWFz
c2VydGlvbiBkaWRJbnZhbGlkYXRlV2l0aEVycm9yOihOU0Vycm9yICopZXJyb3I7CistICh2b2lk
KWFkZE9ic2VydmVyOihpZCA8UkJTQXNzZXJ0aW9uT2JzZXJ2aW5nPilvYnNlcnZlcjsKKy0gKHZv
aWQpcmVtb3ZlT2JzZXJ2ZXI6KGlkIDxSQlNBc3NlcnRpb25PYnNlcnZpbmc+KW9ic2VydmVyOwog
QGVuZAogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nl
c3NBc3NlcnRpb24uaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24u
aAppbmRleCBhOGM0NDIyOTAzMGNlNzNkYmM0NjlhNTlhNTM2NWU3YzFhMzg5ZTJhLi4yYzg2M2Mw
YWI4M2VmY2UyZjVlODQ3MTk2MDhhODU4YWYxYTZlN2ViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvUHJvY2Vzc0Fzc2VydGlvbi5oCkBAIC0zNiw4ICszNiwxMSBAQAogCiAjaWYgUExBVEZP
Uk0oSU9TX0ZBTUlMWSkKICNpbmNsdWRlIDx3dGYvUmV0YWluUHRyLmg+CisKK09CSkNfQ0xBU1Mg
UkJTQXNzZXJ0aW9uOworT0JKQ19DTEFTUyBXS1JCU0Fzc2VydGlvbkRlbGVnYXRlOwogT0JKQ19D
TEFTUyBCS1NQcm9jZXNzQXNzZXJ0aW9uOwotI2VuZGlmCisjZW5kaWYgLy8gUExBVEZPUk0oSU9T
X0ZBTUlMWSkKIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKQEAgLTc1LDExICs3OCwxNCBAQCBwcm90
ZWN0ZWQ6CiAjZW5kaWYKIAogcHJpdmF0ZToKKyAgICBjb25zdCBQcm9jZXNzQXNzZXJ0aW9uVHlw
ZSBtX2Fzc2VydGlvblR5cGU7CiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKLSAgICBSZXRhaW5Q
dHI8QktTUHJvY2Vzc0Fzc2VydGlvbj4gbV9hc3NlcnRpb247CisgICAgY29uc3QgUHJvY2Vzc0lE
IG1fcGlkOworICAgIFJldGFpblB0cjxSQlNBc3NlcnRpb24+IG1fcmJzQXNzZXJ0aW9uOworICAg
IFJldGFpblB0cjxXS1JCU0Fzc2VydGlvbkRlbGVnYXRlPiBtX2RlbGVnYXRlOworICAgIFJldGFp
blB0cjxCS1NQcm9jZXNzQXNzZXJ0aW9uPiBtX2Jrc0Fzc2VydGlvbjsgLy8gTGVnYWN5LgogICAg
IFZhbGlkaXR5IG1fdmFsaWRpdHkgeyBWYWxpZGl0eTo6VW5zZXQgfTsKICNlbmRpZgotICAgIGNv
bnN0IFByb2Nlc3NBc3NlcnRpb25UeXBlIG1fYXNzZXJ0aW9uVHlwZTsKICAgICBDbGllbnQqIG1f
Y2xpZW50IHsgbnVsbHB0ciB9OwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvaW9zL1Byb2Nlc3NBc3NlcnRpb25JT1MubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9pb3MvUHJvY2Vzc0Fzc2VydGlvbklPUy5tbQppbmRleCA4ZjE3M2FkYjM2MTlhZmIyODBhYjZm
OWU4YjNhOTU2ZDAwZGYwYzA0Li5jMzIyYjAzOTIwMGFlZWU1MjJjZmIyNGE3Njc3NjI4MzllODcz
M2I3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvUHJvY2Vzc0Fzc2Vy
dGlvbklPUy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvUHJvY2Vzc0Fzc2Vy
dGlvbklPUy5tbQpAQCAtMjY1LDggKzI2NSw0OSBAQCAtICh2b2lkKV9yZWxlYXNlQmFja2dyb3Vu
ZFRhc2sKIAogQGVuZAogCit0eXBlZGVmIHZvaWQoXlJCU0Fzc2VydGlvbkludmFsaWRhdGlvbkNh
bGxiYWNrVHlwZSkoKTsKKworQGludGVyZmFjZSBXS1JCU0Fzc2VydGlvbkRlbGVnYXRlIDogTlNP
YmplY3Q8UkJTQXNzZXJ0aW9uT2JzZXJ2aW5nPgorQHByb3BlcnR5IChjb3B5KSBSQlNBc3NlcnRp
b25JbnZhbGlkYXRpb25DYWxsYmFja1R5cGUgaW52YWxpZGF0aW9uQ2FsbGJhY2s7CitAZW5kCisK
K0BpbXBsZW1lbnRhdGlvbiBXS1JCU0Fzc2VydGlvbkRlbGVnYXRlCistICh2b2lkKWFzc2VydGlv
bldpbGxJbnZhbGlkYXRlOihSQlNBc3NlcnRpb24gKilhc3NlcnRpb24KK3sKKyAgICBSRUxFQVNF
X0xPRyhQcm9jZXNzU3VzcGVuc2lvbiwgIiVwIC0gV0tSQlNBc3NlcnRpb25EZWxlZ2F0ZTogYXNz
ZXJ0aW9uV2lsbEludmFsaWRhdGUiLCBzZWxmKTsKK30KKworLSAodm9pZClhc3NlcnRpb246KFJC
U0Fzc2VydGlvbiAqKWFzc2VydGlvbiBkaWRJbnZhbGlkYXRlV2l0aEVycm9yOihOU0Vycm9yICop
ZXJyb3IKK3sKKyAgICBSRUxFQVNFX0xPRyhQcm9jZXNzU3VzcGVuc2lvbiwgIiVwIC0gV0tSQlNB
c3NlcnRpb25EZWxlZ2F0ZTogYXNzZXJ0aW9uIHdhcyBpbnZhbGlkYXRlZCwgZXJyb3I6ICV7cHVi
bGljfUAiLCBlcnJvciwgc2VsZik7CisgICAgaWYgKGF1dG8gY2FsbGJhY2sgPSBfaW52YWxpZGF0
aW9uQ2FsbGJhY2spCisgICAgICAgIGNhbGxiYWNrKCk7Cit9CitAZW5kCisKIG5hbWVzcGFjZSBX
ZWJLaXQgewogCitzdGF0aWMgTlNTdHJpbmcgKnJ1bm5pbmdCb2FyZE5hbWVGb3JBc3NlcnRpb25U
eXBlKFByb2Nlc3NBc3NlcnRpb25UeXBlIGFzc2VydGlvblR5cGUpCit7CisjaWYgSEFWRShSVU5O
SU5HQk9BUkRfV0VCS0lUX0FTU0VSVElPTlMpCisgICAgc3dpdGNoIChhc3NlcnRpb25UeXBlKSB7
CisgICAgY2FzZSBQcm9jZXNzQXNzZXJ0aW9uVHlwZTo6U3VzcGVuZGVkOgorICAgICAgICByZXR1
cm4gQCJTdXNwZW5kZWQiOworICAgIGNhc2UgUHJvY2Vzc0Fzc2VydGlvblR5cGU6OkJhY2tncm91
bmQ6CisgICAgICAgIHJldHVybiBAIkJhY2tncm91bmQiOworICAgIGNhc2UgUHJvY2Vzc0Fzc2Vy
dGlvblR5cGU6OlVuYm91bmRlZE5ldHdvcmtpbmc6CisgICAgICAgIHJldHVybiBAIlVuYm91bmRl
ZE5ldHdvcmtpbmciOworICAgIGNhc2UgUHJvY2Vzc0Fzc2VydGlvblR5cGU6OkZvcmVncm91bmQ6
CisgICAgICAgIHJldHVybiBAIkZvcmVncm91bmQiOworICAgIGNhc2UgUHJvY2Vzc0Fzc2VydGlv
blR5cGU6Ok1lZGlhUGxheWJhY2s6CisgICAgICAgIHJldHVybiBuaWw7IC8vIEZJWE1FOiBOYW1l
IHRvIGJlIGRlZmluZWQgaW4gPHJkYXI6Ly9wcm9ibGVtLzYxMjYzMTQ3Pi4KKyAgICB9CisjZWxz
ZQorICAgIFVOVVNFRF9QQVJBTShhc3NlcnRpb25UeXBlKTsKKyAgICByZXR1cm4gbmlsOworI2Vu
ZGlmCit9CisKIGNvbnN0IEJLU1Byb2Nlc3NBc3NlcnRpb25GbGFncyBzdXNwZW5kZWRUYWJGbGFn
cyA9IChCS1NQcm9jZXNzQXNzZXJ0aW9uQWxsb3dJZGxlU2xlZXApOwogY29uc3QgQktTUHJvY2Vz
c0Fzc2VydGlvbkZsYWdzIGJhY2tncm91bmRUYWJGbGFncyA9IChCS1NQcm9jZXNzQXNzZXJ0aW9u
UHJldmVudFRhc2tTdXNwZW5kKTsKIGNvbnN0IEJLU1Byb2Nlc3NBc3NlcnRpb25GbGFncyBmb3Jl
Z3JvdW5kVGFiRmxhZ3MgPSAoQktTUHJvY2Vzc0Fzc2VydGlvblByZXZlbnRUYXNrU3VzcGVuZCB8
IEJLU1Byb2Nlc3NBc3NlcnRpb25XYW50c0ZvcmVncm91bmRSZXNvdXJjZVByaW9yaXR5IHwgQktT
UHJvY2Vzc0Fzc2VydGlvblByZXZlbnRUYXNrVGhyb3R0bGVEb3duKTsKQEAgLTMwMSw0MyArMzQy
LDgxIEBAIHN0YXRpYyBCS1NQcm9jZXNzQXNzZXJ0aW9uUmVhc29uIHRvQktTUHJvY2Vzc0Fzc2Vy
dGlvblJlYXNvbihQcm9jZXNzQXNzZXJ0aW9uVHlwCiAKIFByb2Nlc3NBc3NlcnRpb246OlByb2Nl
c3NBc3NlcnRpb24ocGlkX3QgcGlkLCBBU0NJSUxpdGVyYWwgcmVhc29uLCBQcm9jZXNzQXNzZXJ0
aW9uVHlwZSBhc3NlcnRpb25UeXBlKQogICAgIDogbV9hc3NlcnRpb25UeXBlKGFzc2VydGlvblR5
cGUpCisgICAgLCBtX3BpZChwaWQpCiB7CiAgICAgYXV0byB3ZWFrVGhpcyA9IG1ha2VXZWFrUHRy
KCp0aGlzKTsKLSAgICBCS1NQcm9jZXNzQXNzZXJ0aW9uQWNxdWlzaXRpb25IYW5kbGVyIGhhbmRs
ZXIgPSBeKEJPT0wgYWNxdWlyZWQpIHsKLSAgICAgICAgaWYgKCFhY3F1aXJlZCkgewotICAgICAg
ICAgICAgUkVMRUFTRV9MT0dfRVJST1IoUHJvY2Vzc1N1c3BlbnNpb24sICIgJXAgLSBQcm9jZXNz
QXNzZXJ0aW9uKCkgUElEICVkIFVuYWJsZSB0byBhY3F1aXJlIGFzc2VydGlvbiBmb3IgcHJvY2Vz
cyB3aXRoIFBJRCAlZCIsIHRoaXMsIGdldHBpZCgpLCBwaWQpOworICAgIE5TU3RyaW5nICpuc1Jl
YXNvbiA9IFtOU1N0cmluZyBzdHJpbmdXaXRoQ1N0cmluZzpyZWFzb24uY2hhcmFjdGVycygpIGVu
Y29kaW5nOk5TQVNDSUlTdHJpbmdFbmNvZGluZ107CisgICAgTlNTdHJpbmcgKnJ1bm5pbmdCb2Fy
ZEFzc2VydGlvbk5hbWUgPSBydW5uaW5nQm9hcmROYW1lRm9yQXNzZXJ0aW9uVHlwZShhc3NlcnRp
b25UeXBlKTsKKworICAgIC8vIEZJWE1FOiBSZXBsYWNlIHJ1bnRpbWUgY2hlY2sgd2l0aCBIQVZF
KFJVTk5JTkdCT0FSRF9XRUJLSVRfQVNTRVJUSU9OUykgY29tcGlsZSB0aW1lIGNoZWNrIG9uY2UK
KyAgICAvLyA8cmRhcjovL3Byb2JsZW0vNjEyNjMxNDc+IGlzIGZpeGVkIGFuZCB3ZSBoYXZlIFJ1
bm5pbmdCb2FyZCBlcXVpdmFsZW50cyBmb3IgYWxsIGFzc2VydGlvbiB0eXBlcy4KKyAgICBpZiAo
cnVubmluZ0JvYXJkQXNzZXJ0aW9uTmFtZSkgeworICAgICAgICBSQlNUYXJnZXQgKnRhcmdldCA9
IFtSQlNUYXJnZXQgdGFyZ2V0V2l0aFBpZDpwaWRdOworICAgICAgICBSQlNEb21haW5BdHRyaWJ1
dGUgKmRvbWFpbkF0dHJpYnV0ZSA9IFtSQlNEb21haW5BdHRyaWJ1dGUgYXR0cmlidXRlV2l0aERv
bWFpbjpAImNvbS5hcHBsZS53ZWJraXQiIG5hbWU6cnVubmluZ0JvYXJkQXNzZXJ0aW9uTmFtZV07
CisgICAgICAgIG1fcmJzQXNzZXJ0aW9uID0gYWRvcHROUyhbW1JCU0Fzc2VydGlvbiBhbGxvY10g
aW5pdFdpdGhFeHBsYW5hdGlvbjpuc1JlYXNvbiB0YXJnZXQ6dGFyZ2V0IGF0dHJpYnV0ZXM6QFtk
b21haW5BdHRyaWJ1dGVdXSk7CisKKyAgICAgICAgbV9kZWxlZ2F0ZSA9IGFkb3B0TlMoW1tXS1JC
U0Fzc2VydGlvbkRlbGVnYXRlIGFsbG9jXSBpbml0XSk7CisgICAgICAgIFttX3Jic0Fzc2VydGlv
biBhZGRPYnNlcnZlcjptX2RlbGVnYXRlLmdldCgpXTsKKyAgICAgICAgbV9kZWxlZ2F0ZS5nZXQo
KS5pbnZhbGlkYXRpb25DYWxsYmFjayA9IF57CiAgICAgICAgICAgICBkaXNwYXRjaF9hc3luYyhk
aXNwYXRjaF9nZXRfbWFpbl9xdWV1ZSgpLCBeeworICAgICAgICAgICAgICAgIFJFTEVBU0VfTE9H
KFByb2Nlc3NTdXNwZW5zaW9uLCAiJXAgLSBQcm9jZXNzQXNzZXJ0aW9uKCkgUkJTIFByb2Nlc3Mg
YXNzZXJ0aW9uIGZvciBwcm9jZXNzIHdpdGggUElEICVkIHdhcyBpbnZhbGlkYXRlZCIsIHRoaXMs
IHBpZCk7CiAgICAgICAgICAgICAgICAgaWYgKHdlYWtUaGlzKQogICAgICAgICAgICAgICAgICAg
ICBwcm9jZXNzQXNzZXJ0aW9uV2FzSW52YWxpZGF0ZWQoKTsKICAgICAgICAgICAgIH0pOwotICAg
ICAgICB9Ci0gICAgfTsKLSAgICBSRUxFQVNFX0xPRyhQcm9jZXNzU3VzcGVuc2lvbiwgIiVwIC0g
UHJvY2Vzc0Fzc2VydGlvbigpIFBJRCAlZCBhY3F1aXJpbmcgYXNzZXJ0aW9uIGZvciBwcm9jZXNz
IHdpdGggUElEICVkLCBuYW1lICclcyciLCB0aGlzLCBnZXRwaWQoKSwgcGlkLCByZWFzb24uY2hh
cmFjdGVycygpKTsKLSAgICAKLSAgICBOU1N0cmluZyAqbnNSZWFzb24gPSBbTlNTdHJpbmcgc3Ry
aW5nV2l0aENTdHJpbmc6cmVhc29uLmNoYXJhY3RlcnMoKSBlbmNvZGluZzpOU0FTQ0lJU3RyaW5n
RW5jb2RpbmddOwotICAgIG1fYXNzZXJ0aW9uID0gYWRvcHROUyhbW0JLU1Byb2Nlc3NBc3NlcnRp
b24gYWxsb2NdIGluaXRXaXRoUElEOnBpZCBmbGFnczpmbGFnc0ZvckFzc2VydGlvblR5cGUoYXNz
ZXJ0aW9uVHlwZSkgcmVhc29uOnRvQktTUHJvY2Vzc0Fzc2VydGlvblJlYXNvbihhc3NlcnRpb25U
eXBlKSBuYW1lOm5zUmVhc29uIHdpdGhIYW5kbGVyOmhhbmRsZXJdKTsKKyAgICAgICAgfTsKIAot
ICAgIG1fYXNzZXJ0aW9uLmdldCgpLmludmFsaWRhdGlvbkhhbmRsZXIgPSBeKCkgewotICAgICAg
ICBkaXNwYXRjaF9hc3luYyhkaXNwYXRjaF9nZXRfbWFpbl9xdWV1ZSgpLCBeewotICAgICAgICAg
ICAgUkVMRUFTRV9MT0coUHJvY2Vzc1N1c3BlbnNpb24sICIlcCAtIFByb2Nlc3NBc3NlcnRpb24o
KSBQcm9jZXNzIGFzc2VydGlvbiBmb3IgcHJvY2VzcyB3aXRoIFBJRCAlZCB3YXMgaW52YWxpZGF0
ZWQiLCB0aGlzLCBwaWQpOwotICAgICAgICAgICAgaWYgKHdlYWtUaGlzKQotICAgICAgICAgICAg
ICAgIHByb2Nlc3NBc3NlcnRpb25XYXNJbnZhbGlkYXRlZCgpOwotICAgICAgICB9KTsKLSAgICB9
OworICAgICAgICBOU0Vycm9yICphY3F1aXNpdGlvbkVycm9yID0gbmlsOworICAgICAgICBpZiAo
IVttX3Jic0Fzc2VydGlvbiBhY3F1aXJlV2l0aEVycm9yOiZhY3F1aXNpdGlvbkVycm9yXSkgewor
ICAgICAgICAgICAgUkVMRUFTRV9MT0dfRVJST1IoUHJvY2Vzc1N1c3BlbnNpb24sICJQcm9jZXNz
QXNzZXJ0aW9uOiBGYWlsZWQgdG8gYWNxdWlyZSBSQlMgYXNzZXJ0aW9uICcle3B1YmxpY31zJyBm
b3IgcHJvY2VzcyB3aXRoIFBJRCAlZCwgZXJyb3I6ICV7cHVibGljfUAiLCByZWFzb24uY2hhcmFj
dGVycygpLCBwaWQsIGFjcXVpc2l0aW9uRXJyb3IpOworICAgICAgICAgICAgZGlzcGF0Y2hfYXN5
bmMoZGlzcGF0Y2hfZ2V0X21haW5fcXVldWUoKSwgXnsKKyAgICAgICAgICAgICAgICBpZiAod2Vh
a1RoaXMpCisgICAgICAgICAgICAgICAgICAgIHByb2Nlc3NBc3NlcnRpb25XYXNJbnZhbGlkYXRl
ZCgpOworICAgICAgICAgICAgfSk7CisgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgUkVMRUFT
RV9MT0coUHJvY2Vzc1N1c3BlbnNpb24sICJQcm9jZXNzQXNzZXJ0aW9uOiBTdWNjZXNzZnVsbHkg
dG9vayBSQlMgYXNzZXJ0aW9uICcle3B1YmxpY31zJyBmb3IgcHJvY2VzcyB3aXRoIFBJRCAlZCIs
IHJlYXNvbi5jaGFyYWN0ZXJzKCksIHBpZCk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgLy8gTGVn
YWN5IGNvZGUgcGF0aC4KKyAgICAgICAgQktTUHJvY2Vzc0Fzc2VydGlvbkFjcXVpc2l0aW9uSGFu
ZGxlciBoYW5kbGVyID0gXihCT09MIGFjcXVpcmVkKSB7CisgICAgICAgICAgICBpZiAoIWFjcXVp
cmVkKSB7CisgICAgICAgICAgICAgICAgUkVMRUFTRV9MT0dfRVJST1IoUHJvY2Vzc1N1c3BlbnNp
b24sICIgJXAgLSBQcm9jZXNzQXNzZXJ0aW9uKCkgUElEICVkIFVuYWJsZSB0byBhY3F1aXJlIEJL
UyBhc3NlcnRpb24gZm9yIHByb2Nlc3Mgd2l0aCBQSUQgJWQiLCB0aGlzLCBnZXRwaWQoKSwgcGlk
KTsKKyAgICAgICAgICAgICAgICBkaXNwYXRjaF9hc3luYyhkaXNwYXRjaF9nZXRfbWFpbl9xdWV1
ZSgpLCBeeworICAgICAgICAgICAgICAgICAgICBpZiAod2Vha1RoaXMpCisgICAgICAgICAgICAg
ICAgICAgICAgICBwcm9jZXNzQXNzZXJ0aW9uV2FzSW52YWxpZGF0ZWQoKTsKKyAgICAgICAgICAg
ICAgICB9KTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfTsKKyAgICAgICAgUkVMRUFTRV9MT0co
UHJvY2Vzc1N1c3BlbnNpb24sICIlcCAtIFByb2Nlc3NBc3NlcnRpb24oKSBQSUQgJWQgYWNxdWly
aW5nIEJLUyBhc3NlcnRpb24gZm9yIHByb2Nlc3Mgd2l0aCBQSUQgJWQsIG5hbWUgJyVzJyIsIHRo
aXMsIGdldHBpZCgpLCBwaWQsIHJlYXNvbi5jaGFyYWN0ZXJzKCkpOworCisgICAgICAgIG1fYmtz
QXNzZXJ0aW9uID0gYWRvcHROUyhbW0JLU1Byb2Nlc3NBc3NlcnRpb24gYWxsb2NdIGluaXRXaXRo
UElEOnBpZCBmbGFnczpmbGFnc0ZvckFzc2VydGlvblR5cGUoYXNzZXJ0aW9uVHlwZSkgcmVhc29u
OnRvQktTUHJvY2Vzc0Fzc2VydGlvblJlYXNvbihhc3NlcnRpb25UeXBlKSBuYW1lOm5zUmVhc29u
IHdpdGhIYW5kbGVyOmhhbmRsZXJdKTsKKworICAgICAgICBtX2Jrc0Fzc2VydGlvbi5nZXQoKS5p
bnZhbGlkYXRpb25IYW5kbGVyID0gXigpIHsKKyAgICAgICAgICAgIGRpc3BhdGNoX2FzeW5jKGRp
c3BhdGNoX2dldF9tYWluX3F1ZXVlKCksIF57CisgICAgICAgICAgICAgICAgUkVMRUFTRV9MT0co
UHJvY2Vzc1N1c3BlbnNpb24sICIlcCAtIFByb2Nlc3NBc3NlcnRpb24oKSBCS1MgUHJvY2VzcyBh
c3NlcnRpb24gZm9yIHByb2Nlc3Mgd2l0aCBQSUQgJWQgd2FzIGludmFsaWRhdGVkIiwgdGhpcywg
cGlkKTsKKyAgICAgICAgICAgICAgICBpZiAod2Vha1RoaXMpCisgICAgICAgICAgICAgICAgICAg
IHByb2Nlc3NBc3NlcnRpb25XYXNJbnZhbGlkYXRlZCgpOworICAgICAgICAgICAgfSk7CisgICAg
ICAgIH07CisgICAgfQorICAgIEFTU0VSVChtX3Jic0Fzc2VydGlvbiB8fCBtX2Jrc0Fzc2VydGlv
bik7CiB9CiAKIFByb2Nlc3NBc3NlcnRpb246On5Qcm9jZXNzQXNzZXJ0aW9uKCkKIHsKLSAgICBt
X2Fzc2VydGlvbi5nZXQoKS5pbnZhbGlkYXRpb25IYW5kbGVyID0gbmlsOwotCi0gICAgUkVMRUFT
RV9MT0coUHJvY2Vzc1N1c3BlbnNpb24sICIlcCAtIH5Qcm9jZXNzQXNzZXJ0aW9uKCkgUmVsZWFz
aW5nIHByb2Nlc3MgYXNzZXJ0aW9uIiwgdGhpcyk7Ci0gICAgW21fYXNzZXJ0aW9uIGludmFsaWRh
dGVdOworICAgIFJFTEVBU0VfTE9HKFByb2Nlc3NTdXNwZW5zaW9uLCAiJXAgLSB+UHJvY2Vzc0Fz
c2VydGlvbigpIFJlbGVhc2luZyBwcm9jZXNzIGFzc2VydGlvbiBmb3IgcHJvY2VzcyB3aXRoIFBJ
RCAlZCIsIHRoaXMsIG1fcGlkKTsKKworICAgIGlmIChtX3Jic0Fzc2VydGlvbikgeworICAgICAg
ICBbbV9yYnNBc3NlcnRpb24gcmVtb3ZlT2JzZXJ2ZXI6bV9kZWxlZ2F0ZS5nZXQoKV07CisgICAg
ICAgIFttX3Jic0Fzc2VydGlvbiBpbnZhbGlkYXRlXTsKKyAgICB9IGVsc2UgeworICAgICAgICBt
X2Jrc0Fzc2VydGlvbi5nZXQoKS5pbnZhbGlkYXRpb25IYW5kbGVyID0gbmlsOworICAgICAgICBb
bV9ia3NBc3NlcnRpb24gaW52YWxpZGF0ZV07CisgICAgfQogfQogCiB2b2lkIFByb2Nlc3NBc3Nl
cnRpb246OnByb2Nlc3NBc3NlcnRpb25XYXNJbnZhbGlkYXRlZCgpCiB7CiAgICAgQVNTRVJUKFJ1
bkxvb3A6OmlzTWFpbigpKTsKLSAgICBSRUxFQVNFX0xPR19FUlJPUihQcm9jZXNzU3VzcGVuc2lv
biwgIiVwIC0gUHJvY2Vzc0Fzc2VydGlvbjo6cHJvY2Vzc0Fzc2VydGlvbldhc0ludmFsaWRhdGVk
KCkiLCB0aGlzKTsKKyAgICBSRUxFQVNFX0xPRyhQcm9jZXNzU3VzcGVuc2lvbiwgIiVwIC0gUHJv
Y2Vzc0Fzc2VydGlvbjo6cHJvY2Vzc0Fzc2VydGlvbldhc0ludmFsaWRhdGVkKCkgUElEOiAlZCIs
IHRoaXMsIG1fcGlkKTsKIAogICAgIG1fdmFsaWRpdHkgPSBWYWxpZGl0eTo6Tm87CiB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>395627</attachid>
            <date>2020-04-06 15:55:53 -0700</date>
            <delta_ts>2020-04-06 16:07:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210065-20200406155550.patch</filename>
            <type>text/plain</type>
            <size>11275</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5NTk1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGJmNjJkZWIwNTE0MjY4M2Vj
OTNiZTUyMzMzYjg3MTZiOWVjMmZiODQuLmNiNjFmNWVhODM3YzNmZjVhNjE3N2YyMjhjOGY2OTFh
OTgyZTI0MDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMjAtMDQtMDYgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBUcmFuc2l0aW9uIG1vc3Qg
cHJvY2VzcyBhc3NlcnRpb25zIHRvIFJ1bm5pbmdCb2FyZAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEwMDY1CisgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS82MTM1NDkwMT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBUcmFuc2l0aW9uIG1vc3QgcHJvY2VzcyBhc3NlcnRpb25zIHRvIFJ1bm5pbmdCb2FyZCwg
aW5zdGVhZCBvZiBsZWdhY3kgQktTUHJvY2Vzc0Fzc2VydGlvbi4KKyAgICAgICAgVGhlIG9ubHkg
YXNzZXJ0aW9uIHRoYXQgc3RpbGwgdXNlcyBCS1NQcm9jZXNzQXNzZXJ0aW9uIGlzIHRoZSBNZWRp
YVBsYXliYWNrIG9uY2UgYmVjYXVzZQorICAgICAgICB3ZSBkbyBub3QgaGF2ZSBhIFJ1bm5pbmdC
b2FyZCBlcXVpdmFsZW50IGZvciB0aGlzIG9uZSB5ZXQgKHNlZSA8cmRhcjovL3Byb2JsZW0vNjEy
NjMxNDc+KS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmg6CisgICAg
ICAgICogVUlQcm9jZXNzL2lvcy9Qcm9jZXNzQXNzZXJ0aW9uSU9TLm1tOgorICAgICAgICAoLVtX
S1JCU0Fzc2VydGlvbkRlbGVnYXRlIGFzc2VydGlvbldpbGxJbnZhbGlkYXRlOl0pOgorICAgICAg
ICAoLVtXS1JCU0Fzc2VydGlvbkRlbGVnYXRlIGFzc2VydGlvbjpkaWRJbnZhbGlkYXRlV2l0aEVy
cm9yOl0pOgorICAgICAgICAoV2ViS2l0OjpydW5uaW5nQm9hcmROYW1lRm9yQXNzZXJ0aW9uVHlw
ZSk6CisgICAgICAgIChXZWJLaXQ6OlByb2Nlc3NBc3NlcnRpb246OlByb2Nlc3NBc3NlcnRpb24p
OgorICAgICAgICAoV2ViS2l0OjpQcm9jZXNzQXNzZXJ0aW9uOjp+UHJvY2Vzc0Fzc2VydGlvbik6
CisgICAgICAgIChXZWJLaXQ6OlByb2Nlc3NBc3NlcnRpb246OnByb2Nlc3NBc3NlcnRpb25XYXNJ
bnZhbGlkYXRlZCk6CisKIDIwMjAtMDQtMDYgIENvbW1pdCBRdWV1ZSAgPGNvbW1pdC1xdWV1ZUB3
ZWJraXQub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJldmVydGluZyByMjU5NDY5LgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9zcGkvaW9zL1J1bm5pbmdCb2FyZFNlcnZp
Y2VzU1BJLmggYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL3NwaS9pb3MvUnVubmluZ0JvYXJkU2Vy
dmljZXNTUEkuaAppbmRleCAwNWEzNWRhMzQwMjkzMDViMTAwYzNiMjJiMjk2NDJhYmYzNTNlMWJk
Li42ZGRkZDJkM2U0OTM0YjkwNGU0MjNkZDExNDk5YWM5YjJhNDY4Yjk2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1BsYXRmb3JtL3NwaS9pb3MvUnVubmluZ0JvYXJkU2VydmljZXNTUEkuaAor
KysgYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL3NwaS9pb3MvUnVubmluZ0JvYXJkU2VydmljZXNT
UEkuaApAQCAtNDIsMTUgKzQyLDE3IEBACiArIChSQlNUYXJnZXQgKil0YXJnZXRXaXRoUGlkOihw
aWRfdClwaWQ7CiBAZW5kCiAKK0Bwcm90b2NvbCBSQlNBc3NlcnRpb25PYnNlcnZpbmcgPE5TT2Jq
ZWN0PgorLSAodm9pZClhc3NlcnRpb25XaWxsSW52YWxpZGF0ZTooUkJTQXNzZXJ0aW9uICopYXNz
ZXJ0aW9uOworLSAodm9pZClhc3NlcnRpb246KFJCU0Fzc2VydGlvbiAqKWFzc2VydGlvbiBkaWRJ
bnZhbGlkYXRlV2l0aEVycm9yOihOU0Vycm9yICopZXJyb3I7CitAZW5kCisKIEBpbnRlcmZhY2Ug
UkJTQXNzZXJ0aW9uIDogTlNPYmplY3QKIC0gKGluc3RhbmNldHlwZSlpbml0V2l0aEV4cGxhbmF0
aW9uOihOU1N0cmluZyAqKWV4cGxhbmF0aW9uIHRhcmdldDooUkJTVGFyZ2V0ICopdGFyZ2V0IGF0
dHJpYnV0ZXM6KE5TQXJyYXkgPFJCU0F0dHJpYnV0ZSAqPiAqKWF0dHJpYnV0ZXM7CiAtIChCT09M
KWFjcXVpcmVXaXRoRXJyb3I6KE5TRXJyb3IgKiopZXJyb3I7CiAtICh2b2lkKWludmFsaWRhdGU7
Ci1AZW5kCi0KLUBwcm90b2NvbCBSQlNBc3NlcnRpb25PYnNlcnZpbmcgPE5TT2JqZWN0PgotLSAo
dm9pZClhc3NlcnRpb25XaWxsSW52YWxpZGF0ZTooUkJTQXNzZXJ0aW9uICopYXNzZXJ0aW9uOwot
LSAodm9pZClhc3NlcnRpb246KFJCU0Fzc2VydGlvbiAqKWFzc2VydGlvbiBkaWRJbnZhbGlkYXRl
V2l0aEVycm9yOihOU0Vycm9yICopZXJyb3I7CistICh2b2lkKWFkZE9ic2VydmVyOihpZCA8UkJT
QXNzZXJ0aW9uT2JzZXJ2aW5nPilvYnNlcnZlcjsKKy0gKHZvaWQpcmVtb3ZlT2JzZXJ2ZXI6KGlk
IDxSQlNBc3NlcnRpb25PYnNlcnZpbmc+KW9ic2VydmVyOwogQGVuZAogCiAjZW5kaWYKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24uaCBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24uaAppbmRleCBhOGM0NDIyOTAzMGNl
NzNkYmM0NjlhNTlhNTM2NWU3YzFhMzg5ZTJhLi4yYzg2M2MwYWI4M2VmY2UyZjVlODQ3MTk2MDhh
ODU4YWYxYTZlN2ViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNz
QXNzZXJ0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlv
bi5oCkBAIC0zNiw4ICszNiwxMSBAQAogCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICNpbmNs
dWRlIDx3dGYvUmV0YWluUHRyLmg+CisKK09CSkNfQ0xBU1MgUkJTQXNzZXJ0aW9uOworT0JKQ19D
TEFTUyBXS1JCU0Fzc2VydGlvbkRlbGVnYXRlOwogT0JKQ19DTEFTUyBCS1NQcm9jZXNzQXNzZXJ0
aW9uOwotI2VuZGlmCisjZW5kaWYgLy8gUExBVEZPUk0oSU9TX0ZBTUlMWSkKIAogbmFtZXNwYWNl
IFdlYktpdCB7CiAKQEAgLTc1LDExICs3OCwxNCBAQCBwcm90ZWN0ZWQ6CiAjZW5kaWYKIAogcHJp
dmF0ZToKKyAgICBjb25zdCBQcm9jZXNzQXNzZXJ0aW9uVHlwZSBtX2Fzc2VydGlvblR5cGU7CiAj
aWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKLSAgICBSZXRhaW5QdHI8QktTUHJvY2Vzc0Fzc2VydGlv
bj4gbV9hc3NlcnRpb247CisgICAgY29uc3QgUHJvY2Vzc0lEIG1fcGlkOworICAgIFJldGFpblB0
cjxSQlNBc3NlcnRpb24+IG1fcmJzQXNzZXJ0aW9uOworICAgIFJldGFpblB0cjxXS1JCU0Fzc2Vy
dGlvbkRlbGVnYXRlPiBtX2RlbGVnYXRlOworICAgIFJldGFpblB0cjxCS1NQcm9jZXNzQXNzZXJ0
aW9uPiBtX2Jrc0Fzc2VydGlvbjsgLy8gTGVnYWN5LgogICAgIFZhbGlkaXR5IG1fdmFsaWRpdHkg
eyBWYWxpZGl0eTo6VW5zZXQgfTsKICNlbmRpZgotICAgIGNvbnN0IFByb2Nlc3NBc3NlcnRpb25U
eXBlIG1fYXNzZXJ0aW9uVHlwZTsKICAgICBDbGllbnQqIG1fY2xpZW50IHsgbnVsbHB0ciB9Owog
fTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1Byb2Nlc3NBc3Nl
cnRpb25JT1MubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvUHJvY2Vzc0Fzc2VydGlv
bklPUy5tbQppbmRleCA4ZjE3M2FkYjM2MTlhZmIyODBhYjZmOWU4YjNhOTU2ZDAwZGYwYzA0Li45
ODdkNDUyMTUxY2E5MmRmMzM0MjZjZDRmMWMxYzQ3OTBiNGNhYzJkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvUHJvY2Vzc0Fzc2VydGlvbklPUy5tbQorKysgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvUHJvY2Vzc0Fzc2VydGlvbklPUy5tbQpAQCAtMjY1LDgg
KzI2NSw1MSBAQCAtICh2b2lkKV9yZWxlYXNlQmFja2dyb3VuZFRhc2sKIAogQGVuZAogCit0eXBl
ZGVmIHZvaWQoXlJCU0Fzc2VydGlvbkludmFsaWRhdGlvbkNhbGxiYWNrVHlwZSkoKTsKKworQGlu
dGVyZmFjZSBXS1JCU0Fzc2VydGlvbkRlbGVnYXRlIDogTlNPYmplY3Q8UkJTQXNzZXJ0aW9uT2Jz
ZXJ2aW5nPgorQHByb3BlcnR5IChjb3B5KSBSQlNBc3NlcnRpb25JbnZhbGlkYXRpb25DYWxsYmFj
a1R5cGUgaW52YWxpZGF0aW9uQ2FsbGJhY2s7CitAZW5kCisKK0BpbXBsZW1lbnRhdGlvbiBXS1JC
U0Fzc2VydGlvbkRlbGVnYXRlCistICh2b2lkKWFzc2VydGlvbldpbGxJbnZhbGlkYXRlOihSQlNB
c3NlcnRpb24gKilhc3NlcnRpb24KK3sKKyAgICBSRUxFQVNFX0xPRyhQcm9jZXNzU3VzcGVuc2lv
biwgIiVwIC0gV0tSQlNBc3NlcnRpb25EZWxlZ2F0ZTogYXNzZXJ0aW9uV2lsbEludmFsaWRhdGUi
LCBzZWxmKTsKK30KKworLSAodm9pZClhc3NlcnRpb246KFJCU0Fzc2VydGlvbiAqKWFzc2VydGlv
biBkaWRJbnZhbGlkYXRlV2l0aEVycm9yOihOU0Vycm9yICopZXJyb3IKK3sKKyAgICBSRUxFQVNF
X0xPRyhQcm9jZXNzU3VzcGVuc2lvbiwgIiVwIC0gV0tSQlNBc3NlcnRpb25EZWxlZ2F0ZTogYXNz
ZXJ0aW9uIHdhcyBpbnZhbGlkYXRlZCwgZXJyb3I6ICV7cHVibGljfUAiLCBlcnJvciwgc2VsZik7
CisgICAgZGlzcGF0Y2hfYXN5bmMoZGlzcGF0Y2hfZ2V0X21haW5fcXVldWUoKSwgXnsKKyAgICAg
ICAgaWYgKF9pbnZhbGlkYXRpb25DYWxsYmFjaykKKyAgICAgICAgICAgIF9pbnZhbGlkYXRpb25D
YWxsYmFjaygpOworICAgIH0pOworfQorQGVuZAorCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAorc3Rh
dGljIE5TU3RyaW5nICpydW5uaW5nQm9hcmROYW1lRm9yQXNzZXJ0aW9uVHlwZShQcm9jZXNzQXNz
ZXJ0aW9uVHlwZSBhc3NlcnRpb25UeXBlKQoreworI2lmIEhBVkUoUlVOTklOR0JPQVJEX1dFQktJ
VF9BU1NFUlRJT05TKQorICAgIHN3aXRjaCAoYXNzZXJ0aW9uVHlwZSkgeworICAgIGNhc2UgUHJv
Y2Vzc0Fzc2VydGlvblR5cGU6OlN1c3BlbmRlZDoKKyAgICAgICAgcmV0dXJuIEAiU3VzcGVuZGVk
IjsKKyAgICBjYXNlIFByb2Nlc3NBc3NlcnRpb25UeXBlOjpCYWNrZ3JvdW5kOgorICAgICAgICBy
ZXR1cm4gQCJCYWNrZ3JvdW5kIjsKKyAgICBjYXNlIFByb2Nlc3NBc3NlcnRpb25UeXBlOjpVbmJv
dW5kZWROZXR3b3JraW5nOgorICAgICAgICByZXR1cm4gQCJVbmJvdW5kZWROZXR3b3JraW5nIjsK
KyAgICBjYXNlIFByb2Nlc3NBc3NlcnRpb25UeXBlOjpGb3JlZ3JvdW5kOgorICAgICAgICByZXR1
cm4gQCJGb3JlZ3JvdW5kIjsKKyAgICBjYXNlIFByb2Nlc3NBc3NlcnRpb25UeXBlOjpNZWRpYVBs
YXliYWNrOgorICAgICAgICByZXR1cm4gbmlsOyAvLyBGSVhNRTogTmFtZSB0byBiZSBkZWZpbmVk
IGluIDxyZGFyOi8vcHJvYmxlbS82MTI2MzE0Nz4uCisgICAgfQorI2Vsc2UKKyAgICBVTlVTRURf
UEFSQU0oYXNzZXJ0aW9uVHlwZSk7CisgICAgcmV0dXJuIG5pbDsKKyNlbmRpZgorfQorCiBjb25z
dCBCS1NQcm9jZXNzQXNzZXJ0aW9uRmxhZ3Mgc3VzcGVuZGVkVGFiRmxhZ3MgPSAoQktTUHJvY2Vz
c0Fzc2VydGlvbkFsbG93SWRsZVNsZWVwKTsKIGNvbnN0IEJLU1Byb2Nlc3NBc3NlcnRpb25GbGFn
cyBiYWNrZ3JvdW5kVGFiRmxhZ3MgPSAoQktTUHJvY2Vzc0Fzc2VydGlvblByZXZlbnRUYXNrU3Vz
cGVuZCk7CiBjb25zdCBCS1NQcm9jZXNzQXNzZXJ0aW9uRmxhZ3MgZm9yZWdyb3VuZFRhYkZsYWdz
ID0gKEJLU1Byb2Nlc3NBc3NlcnRpb25QcmV2ZW50VGFza1N1c3BlbmQgfCBCS1NQcm9jZXNzQXNz
ZXJ0aW9uV2FudHNGb3JlZ3JvdW5kUmVzb3VyY2VQcmlvcml0eSB8IEJLU1Byb2Nlc3NBc3NlcnRp
b25QcmV2ZW50VGFza1Rocm90dGxlRG93bik7CkBAIC0zMDEsNDMgKzM0NCw3NSBAQCBzdGF0aWMg
QktTUHJvY2Vzc0Fzc2VydGlvblJlYXNvbiB0b0JLU1Byb2Nlc3NBc3NlcnRpb25SZWFzb24oUHJv
Y2Vzc0Fzc2VydGlvblR5cAogCiBQcm9jZXNzQXNzZXJ0aW9uOjpQcm9jZXNzQXNzZXJ0aW9uKHBp
ZF90IHBpZCwgQVNDSUlMaXRlcmFsIHJlYXNvbiwgUHJvY2Vzc0Fzc2VydGlvblR5cGUgYXNzZXJ0
aW9uVHlwZSkKICAgICA6IG1fYXNzZXJ0aW9uVHlwZShhc3NlcnRpb25UeXBlKQorICAgICwgbV9w
aWQocGlkKQogewogICAgIGF1dG8gd2Vha1RoaXMgPSBtYWtlV2Vha1B0cigqdGhpcyk7Ci0gICAg
QktTUHJvY2Vzc0Fzc2VydGlvbkFjcXVpc2l0aW9uSGFuZGxlciBoYW5kbGVyID0gXihCT09MIGFj
cXVpcmVkKSB7Ci0gICAgICAgIGlmICghYWNxdWlyZWQpIHsKLSAgICAgICAgICAgIFJFTEVBU0Vf
TE9HX0VSUk9SKFByb2Nlc3NTdXNwZW5zaW9uLCAiICVwIC0gUHJvY2Vzc0Fzc2VydGlvbigpIFBJ
RCAlZCBVbmFibGUgdG8gYWNxdWlyZSBhc3NlcnRpb24gZm9yIHByb2Nlc3Mgd2l0aCBQSUQgJWQi
LCB0aGlzLCBnZXRwaWQoKSwgcGlkKTsKKyAgICBOU1N0cmluZyAqbnNSZWFzb24gPSBbTlNTdHJp
bmcgc3RyaW5nV2l0aENTdHJpbmc6cmVhc29uLmNoYXJhY3RlcnMoKSBlbmNvZGluZzpOU0FTQ0lJ
U3RyaW5nRW5jb2RpbmddOworICAgIE5TU3RyaW5nICpydW5uaW5nQm9hcmRBc3NlcnRpb25OYW1l
ID0gcnVubmluZ0JvYXJkTmFtZUZvckFzc2VydGlvblR5cGUoYXNzZXJ0aW9uVHlwZSk7CisgICAg
aWYgKHJ1bm5pbmdCb2FyZEFzc2VydGlvbk5hbWUpIHsKKyAgICAgICAgUkJTVGFyZ2V0ICp0YXJn
ZXQgPSBbUkJTVGFyZ2V0IHRhcmdldFdpdGhQaWQ6cGlkXTsKKyAgICAgICAgUkJTRG9tYWluQXR0
cmlidXRlICpkb21haW5BdHRyaWJ1dGUgPSBbUkJTRG9tYWluQXR0cmlidXRlIGF0dHJpYnV0ZVdp
dGhEb21haW46QCJjb20uYXBwbGUud2Via2l0IiBuYW1lOnJ1bm5pbmdCb2FyZEFzc2VydGlvbk5h
bWVdOworICAgICAgICBtX3Jic0Fzc2VydGlvbiA9IGFkb3B0TlMoW1tSQlNBc3NlcnRpb24gYWxs
b2NdIGluaXRXaXRoRXhwbGFuYXRpb246bnNSZWFzb24gdGFyZ2V0OnRhcmdldCBhdHRyaWJ1dGVz
OkBbZG9tYWluQXR0cmlidXRlXV0pOworCisgICAgICAgIG1fZGVsZWdhdGUgPSBhZG9wdE5TKFtb
V0tSQlNBc3NlcnRpb25EZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOworICAgICAgICBbbV9yYnNBc3Nl
cnRpb24gYWRkT2JzZXJ2ZXI6bV9kZWxlZ2F0ZS5nZXQoKV07CisgICAgICAgIG1fZGVsZWdhdGUu
Z2V0KCkuaW52YWxpZGF0aW9uQ2FsbGJhY2sgPSBeeworICAgICAgICAgICAgUkVMRUFTRV9MT0co
UHJvY2Vzc1N1c3BlbnNpb24sICIlcCAtIFByb2Nlc3NBc3NlcnRpb24oKSBSQlMgJXtwdWJsaWN9
QCBhc3NlcnRpb24gZm9yIHByb2Nlc3Mgd2l0aCBQSUQgJWQgd2FzIGludmFsaWRhdGVkIiwgdGhp
cywgcnVubmluZ0JvYXJkQXNzZXJ0aW9uTmFtZSwgcGlkKTsKKyAgICAgICAgICAgIHByb2Nlc3NB
c3NlcnRpb25XYXNJbnZhbGlkYXRlZCgpOworICAgICAgICB9OworCisgICAgICAgIE5TRXJyb3Ig
KmFjcXVpc2l0aW9uRXJyb3IgPSBuaWw7CisgICAgICAgIGlmICghW21fcmJzQXNzZXJ0aW9uIGFj
cXVpcmVXaXRoRXJyb3I6JmFjcXVpc2l0aW9uRXJyb3JdKSB7CisgICAgICAgICAgICBSRUxFQVNF
X0xPR19FUlJPUihQcm9jZXNzU3VzcGVuc2lvbiwgIlByb2Nlc3NBc3NlcnRpb246IEZhaWxlZCB0
byBhY3F1aXJlIFJCUyAle3B1YmxpY31AIGFzc2VydGlvbiAnJXtwdWJsaWN9cycgZm9yIHByb2Nl
c3Mgd2l0aCBQSUQgJWQsIGVycm9yOiAle3B1YmxpY31AIiwgcnVubmluZ0JvYXJkQXNzZXJ0aW9u
TmFtZSwgcmVhc29uLmNoYXJhY3RlcnMoKSwgcGlkLCBhY3F1aXNpdGlvbkVycm9yKTsKICAgICAg
ICAgICAgIGRpc3BhdGNoX2FzeW5jKGRpc3BhdGNoX2dldF9tYWluX3F1ZXVlKCksIF57CiAgICAg
ICAgICAgICAgICAgaWYgKHdlYWtUaGlzKQogICAgICAgICAgICAgICAgICAgICBwcm9jZXNzQXNz
ZXJ0aW9uV2FzSW52YWxpZGF0ZWQoKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICB9Ci0gICAg
fTsKLSAgICBSRUxFQVNFX0xPRyhQcm9jZXNzU3VzcGVuc2lvbiwgIiVwIC0gUHJvY2Vzc0Fzc2Vy
dGlvbigpIFBJRCAlZCBhY3F1aXJpbmcgYXNzZXJ0aW9uIGZvciBwcm9jZXNzIHdpdGggUElEICVk
LCBuYW1lICclcyciLCB0aGlzLCBnZXRwaWQoKSwgcGlkLCByZWFzb24uY2hhcmFjdGVycygpKTsK
LSAgICAKLSAgICBOU1N0cmluZyAqbnNSZWFzb24gPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENTdHJp
bmc6cmVhc29uLmNoYXJhY3RlcnMoKSBlbmNvZGluZzpOU0FTQ0lJU3RyaW5nRW5jb2RpbmddOwot
ICAgIG1fYXNzZXJ0aW9uID0gYWRvcHROUyhbW0JLU1Byb2Nlc3NBc3NlcnRpb24gYWxsb2NdIGlu
aXRXaXRoUElEOnBpZCBmbGFnczpmbGFnc0ZvckFzc2VydGlvblR5cGUoYXNzZXJ0aW9uVHlwZSkg
cmVhc29uOnRvQktTUHJvY2Vzc0Fzc2VydGlvblJlYXNvbihhc3NlcnRpb25UeXBlKSBuYW1lOm5z
UmVhc29uIHdpdGhIYW5kbGVyOmhhbmRsZXJdKTsKLQotICAgIG1fYXNzZXJ0aW9uLmdldCgpLmlu
dmFsaWRhdGlvbkhhbmRsZXIgPSBeKCkgewotICAgICAgICBkaXNwYXRjaF9hc3luYyhkaXNwYXRj
aF9nZXRfbWFpbl9xdWV1ZSgpLCBeewotICAgICAgICAgICAgUkVMRUFTRV9MT0coUHJvY2Vzc1N1
c3BlbnNpb24sICIlcCAtIFByb2Nlc3NBc3NlcnRpb24oKSBQcm9jZXNzIGFzc2VydGlvbiBmb3Ig
cHJvY2VzcyB3aXRoIFBJRCAlZCB3YXMgaW52YWxpZGF0ZWQiLCB0aGlzLCBwaWQpOwotICAgICAg
ICAgICAgaWYgKHdlYWtUaGlzKQotICAgICAgICAgICAgICAgIHByb2Nlc3NBc3NlcnRpb25XYXNJ
bnZhbGlkYXRlZCgpOwotICAgICAgICB9KTsKLSAgICB9OworICAgICAgICB9IGVsc2UKKyAgICAg
ICAgICAgIFJFTEVBU0VfTE9HKFByb2Nlc3NTdXNwZW5zaW9uLCAiUHJvY2Vzc0Fzc2VydGlvbjog
U3VjY2Vzc2Z1bGx5IHRvb2sgUkJTICV7cHVibGljfUAgYXNzZXJ0aW9uICcle3B1YmxpY31zJyBm
b3IgcHJvY2VzcyB3aXRoIFBJRCAlZCIsIHJ1bm5pbmdCb2FyZEFzc2VydGlvbk5hbWUsIHJlYXNv
bi5jaGFyYWN0ZXJzKCksIHBpZCk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgLy8gTGVnYWN5IGNv
ZGUgcGF0aC4KKyAgICAgICAgQktTUHJvY2Vzc0Fzc2VydGlvbkFjcXVpc2l0aW9uSGFuZGxlciBo
YW5kbGVyID0gXihCT09MIGFjcXVpcmVkKSB7CisgICAgICAgICAgICBpZiAoIWFjcXVpcmVkKSB7
CisgICAgICAgICAgICAgICAgUkVMRUFTRV9MT0dfRVJST1IoUHJvY2Vzc1N1c3BlbnNpb24sICIg
JXAgLSBQcm9jZXNzQXNzZXJ0aW9uKCkgUElEICVkIFVuYWJsZSB0byBhY3F1aXJlIEJLUyBhc3Nl
cnRpb24gZm9yIHByb2Nlc3Mgd2l0aCBQSUQgJWQiLCB0aGlzLCBnZXRwaWQoKSwgcGlkKTsKKyAg
ICAgICAgICAgICAgICBkaXNwYXRjaF9hc3luYyhkaXNwYXRjaF9nZXRfbWFpbl9xdWV1ZSgpLCBe
eworICAgICAgICAgICAgICAgICAgICBpZiAod2Vha1RoaXMpCisgICAgICAgICAgICAgICAgICAg
ICAgICBwcm9jZXNzQXNzZXJ0aW9uV2FzSW52YWxpZGF0ZWQoKTsKKyAgICAgICAgICAgICAgICB9
KTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfTsKKyAgICAgICAgUkVMRUFTRV9MT0coUHJvY2Vz
c1N1c3BlbnNpb24sICIlcCAtIFByb2Nlc3NBc3NlcnRpb24oKSBQSUQgJWQgYWNxdWlyaW5nIEJL
UyBhc3NlcnRpb24gZm9yIHByb2Nlc3Mgd2l0aCBQSUQgJWQsIG5hbWUgJyVzJyIsIHRoaXMsIGdl
dHBpZCgpLCBwaWQsIHJlYXNvbi5jaGFyYWN0ZXJzKCkpOworCisgICAgICAgIG1fYmtzQXNzZXJ0
aW9uID0gYWRvcHROUyhbW0JLU1Byb2Nlc3NBc3NlcnRpb24gYWxsb2NdIGluaXRXaXRoUElEOnBp
ZCBmbGFnczpmbGFnc0ZvckFzc2VydGlvblR5cGUoYXNzZXJ0aW9uVHlwZSkgcmVhc29uOnRvQktT
UHJvY2Vzc0Fzc2VydGlvblJlYXNvbihhc3NlcnRpb25UeXBlKSBuYW1lOm5zUmVhc29uIHdpdGhI
YW5kbGVyOmhhbmRsZXJdKTsKKworICAgICAgICBtX2Jrc0Fzc2VydGlvbi5nZXQoKS5pbnZhbGlk
YXRpb25IYW5kbGVyID0gXigpIHsKKyAgICAgICAgICAgIGRpc3BhdGNoX2FzeW5jKGRpc3BhdGNo
X2dldF9tYWluX3F1ZXVlKCksIF57CisgICAgICAgICAgICAgICAgUkVMRUFTRV9MT0coUHJvY2Vz
c1N1c3BlbnNpb24sICIlcCAtIFByb2Nlc3NBc3NlcnRpb24oKSBCS1MgUHJvY2VzcyBhc3NlcnRp
b24gZm9yIHByb2Nlc3Mgd2l0aCBQSUQgJWQgd2FzIGludmFsaWRhdGVkIiwgdGhpcywgcGlkKTsK
KyAgICAgICAgICAgICAgICBpZiAod2Vha1RoaXMpCisgICAgICAgICAgICAgICAgICAgIHByb2Nl
c3NBc3NlcnRpb25XYXNJbnZhbGlkYXRlZCgpOworICAgICAgICAgICAgfSk7CisgICAgICAgIH07
CisgICAgfQorICAgIEFTU0VSVChtX3Jic0Fzc2VydGlvbiB8fCBtX2Jrc0Fzc2VydGlvbik7CiB9
CiAKIFByb2Nlc3NBc3NlcnRpb246On5Qcm9jZXNzQXNzZXJ0aW9uKCkKIHsKLSAgICBtX2Fzc2Vy
dGlvbi5nZXQoKS5pbnZhbGlkYXRpb25IYW5kbGVyID0gbmlsOwotCi0gICAgUkVMRUFTRV9MT0co
UHJvY2Vzc1N1c3BlbnNpb24sICIlcCAtIH5Qcm9jZXNzQXNzZXJ0aW9uKCkgUmVsZWFzaW5nIHBy
b2Nlc3MgYXNzZXJ0aW9uIiwgdGhpcyk7Ci0gICAgW21fYXNzZXJ0aW9uIGludmFsaWRhdGVdOwor
ICAgIFJFTEVBU0VfTE9HKFByb2Nlc3NTdXNwZW5zaW9uLCAiJXAgLSB+UHJvY2Vzc0Fzc2VydGlv
bigpIFJlbGVhc2luZyBwcm9jZXNzIGFzc2VydGlvbiBmb3IgcHJvY2VzcyB3aXRoIFBJRCAlZCIs
IHRoaXMsIG1fcGlkKTsKKworICAgIGlmIChtX3Jic0Fzc2VydGlvbikgeworICAgICAgICBbbV9y
YnNBc3NlcnRpb24gcmVtb3ZlT2JzZXJ2ZXI6bV9kZWxlZ2F0ZS5nZXQoKV07CisgICAgICAgIFtt
X3Jic0Fzc2VydGlvbiBpbnZhbGlkYXRlXTsKKyAgICB9IGVsc2UgeworICAgICAgICBtX2Jrc0Fz
c2VydGlvbi5nZXQoKS5pbnZhbGlkYXRpb25IYW5kbGVyID0gbmlsOworICAgICAgICBbbV9ia3NB
c3NlcnRpb24gaW52YWxpZGF0ZV07CisgICAgfQogfQogCiB2b2lkIFByb2Nlc3NBc3NlcnRpb246
OnByb2Nlc3NBc3NlcnRpb25XYXNJbnZhbGlkYXRlZCgpCiB7CiAgICAgQVNTRVJUKFJ1bkxvb3A6
OmlzTWFpbigpKTsKLSAgICBSRUxFQVNFX0xPR19FUlJPUihQcm9jZXNzU3VzcGVuc2lvbiwgIiVw
IC0gUHJvY2Vzc0Fzc2VydGlvbjo6cHJvY2Vzc0Fzc2VydGlvbldhc0ludmFsaWRhdGVkKCkiLCB0
aGlzKTsKKyAgICBSRUxFQVNFX0xPRyhQcm9jZXNzU3VzcGVuc2lvbiwgIiVwIC0gUHJvY2Vzc0Fz
c2VydGlvbjo6cHJvY2Vzc0Fzc2VydGlvbldhc0ludmFsaWRhdGVkKCkgUElEOiAlZCIsIHRoaXMs
IG1fcGlkKTsKIAogICAgIG1fdmFsaWRpdHkgPSBWYWxpZGl0eTo6Tm87CiB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>395628</attachid>
            <date>2020-04-06 16:07:53 -0700</date>
            <delta_ts>2020-04-06 16:26:04 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210065-20200406160750.patch</filename>
            <type>text/plain</type>
            <size>11297</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5NTk1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGJmNjJkZWIwNTE0MjY4M2Vj
OTNiZTUyMzMzYjg3MTZiOWVjMmZiODQuLmNiNjFmNWVhODM3YzNmZjVhNjE3N2YyMjhjOGY2OTFh
OTgyZTI0MDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMjAtMDQtMDYgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBUcmFuc2l0aW9uIG1vc3Qg
cHJvY2VzcyBhc3NlcnRpb25zIHRvIFJ1bm5pbmdCb2FyZAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEwMDY1CisgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS82MTM1NDkwMT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBUcmFuc2l0aW9uIG1vc3QgcHJvY2VzcyBhc3NlcnRpb25zIHRvIFJ1bm5pbmdCb2FyZCwg
aW5zdGVhZCBvZiBsZWdhY3kgQktTUHJvY2Vzc0Fzc2VydGlvbi4KKyAgICAgICAgVGhlIG9ubHkg
YXNzZXJ0aW9uIHRoYXQgc3RpbGwgdXNlcyBCS1NQcm9jZXNzQXNzZXJ0aW9uIGlzIHRoZSBNZWRp
YVBsYXliYWNrIG9uY2UgYmVjYXVzZQorICAgICAgICB3ZSBkbyBub3QgaGF2ZSBhIFJ1bm5pbmdC
b2FyZCBlcXVpdmFsZW50IGZvciB0aGlzIG9uZSB5ZXQgKHNlZSA8cmRhcjovL3Byb2JsZW0vNjEy
NjMxNDc+KS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmg6CisgICAg
ICAgICogVUlQcm9jZXNzL2lvcy9Qcm9jZXNzQXNzZXJ0aW9uSU9TLm1tOgorICAgICAgICAoLVtX
S1JCU0Fzc2VydGlvbkRlbGVnYXRlIGFzc2VydGlvbldpbGxJbnZhbGlkYXRlOl0pOgorICAgICAg
ICAoLVtXS1JCU0Fzc2VydGlvbkRlbGVnYXRlIGFzc2VydGlvbjpkaWRJbnZhbGlkYXRlV2l0aEVy
cm9yOl0pOgorICAgICAgICAoV2ViS2l0OjpydW5uaW5nQm9hcmROYW1lRm9yQXNzZXJ0aW9uVHlw
ZSk6CisgICAgICAgIChXZWJLaXQ6OlByb2Nlc3NBc3NlcnRpb246OlByb2Nlc3NBc3NlcnRpb24p
OgorICAgICAgICAoV2ViS2l0OjpQcm9jZXNzQXNzZXJ0aW9uOjp+UHJvY2Vzc0Fzc2VydGlvbik6
CisgICAgICAgIChXZWJLaXQ6OlByb2Nlc3NBc3NlcnRpb246OnByb2Nlc3NBc3NlcnRpb25XYXNJ
bnZhbGlkYXRlZCk6CisKIDIwMjAtMDQtMDYgIENvbW1pdCBRdWV1ZSAgPGNvbW1pdC1xdWV1ZUB3
ZWJraXQub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJldmVydGluZyByMjU5NDY5LgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9zcGkvaW9zL1J1bm5pbmdCb2FyZFNlcnZp
Y2VzU1BJLmggYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL3NwaS9pb3MvUnVubmluZ0JvYXJkU2Vy
dmljZXNTUEkuaAppbmRleCAwNWEzNWRhMzQwMjkzMDViMTAwYzNiMjJiMjk2NDJhYmYzNTNlMWJk
Li42ZGRkZDJkM2U0OTM0YjkwNGU0MjNkZDExNDk5YWM5YjJhNDY4Yjk2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1BsYXRmb3JtL3NwaS9pb3MvUnVubmluZ0JvYXJkU2VydmljZXNTUEkuaAor
KysgYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL3NwaS9pb3MvUnVubmluZ0JvYXJkU2VydmljZXNT
UEkuaApAQCAtNDIsMTUgKzQyLDE3IEBACiArIChSQlNUYXJnZXQgKil0YXJnZXRXaXRoUGlkOihw
aWRfdClwaWQ7CiBAZW5kCiAKK0Bwcm90b2NvbCBSQlNBc3NlcnRpb25PYnNlcnZpbmcgPE5TT2Jq
ZWN0PgorLSAodm9pZClhc3NlcnRpb25XaWxsSW52YWxpZGF0ZTooUkJTQXNzZXJ0aW9uICopYXNz
ZXJ0aW9uOworLSAodm9pZClhc3NlcnRpb246KFJCU0Fzc2VydGlvbiAqKWFzc2VydGlvbiBkaWRJ
bnZhbGlkYXRlV2l0aEVycm9yOihOU0Vycm9yICopZXJyb3I7CitAZW5kCisKIEBpbnRlcmZhY2Ug
UkJTQXNzZXJ0aW9uIDogTlNPYmplY3QKIC0gKGluc3RhbmNldHlwZSlpbml0V2l0aEV4cGxhbmF0
aW9uOihOU1N0cmluZyAqKWV4cGxhbmF0aW9uIHRhcmdldDooUkJTVGFyZ2V0ICopdGFyZ2V0IGF0
dHJpYnV0ZXM6KE5TQXJyYXkgPFJCU0F0dHJpYnV0ZSAqPiAqKWF0dHJpYnV0ZXM7CiAtIChCT09M
KWFjcXVpcmVXaXRoRXJyb3I6KE5TRXJyb3IgKiopZXJyb3I7CiAtICh2b2lkKWludmFsaWRhdGU7
Ci1AZW5kCi0KLUBwcm90b2NvbCBSQlNBc3NlcnRpb25PYnNlcnZpbmcgPE5TT2JqZWN0PgotLSAo
dm9pZClhc3NlcnRpb25XaWxsSW52YWxpZGF0ZTooUkJTQXNzZXJ0aW9uICopYXNzZXJ0aW9uOwot
LSAodm9pZClhc3NlcnRpb246KFJCU0Fzc2VydGlvbiAqKWFzc2VydGlvbiBkaWRJbnZhbGlkYXRl
V2l0aEVycm9yOihOU0Vycm9yICopZXJyb3I7CistICh2b2lkKWFkZE9ic2VydmVyOihpZCA8UkJT
QXNzZXJ0aW9uT2JzZXJ2aW5nPilvYnNlcnZlcjsKKy0gKHZvaWQpcmVtb3ZlT2JzZXJ2ZXI6KGlk
IDxSQlNBc3NlcnRpb25PYnNlcnZpbmc+KW9ic2VydmVyOwogQGVuZAogCiAjZW5kaWYKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24uaCBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24uaAppbmRleCBhOGM0NDIyOTAzMGNl
NzNkYmM0NjlhNTlhNTM2NWU3YzFhMzg5ZTJhLi4yYzg2M2MwYWI4M2VmY2UyZjVlODQ3MTk2MDhh
ODU4YWYxYTZlN2ViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNz
QXNzZXJ0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlv
bi5oCkBAIC0zNiw4ICszNiwxMSBAQAogCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICNpbmNs
dWRlIDx3dGYvUmV0YWluUHRyLmg+CisKK09CSkNfQ0xBU1MgUkJTQXNzZXJ0aW9uOworT0JKQ19D
TEFTUyBXS1JCU0Fzc2VydGlvbkRlbGVnYXRlOwogT0JKQ19DTEFTUyBCS1NQcm9jZXNzQXNzZXJ0
aW9uOwotI2VuZGlmCisjZW5kaWYgLy8gUExBVEZPUk0oSU9TX0ZBTUlMWSkKIAogbmFtZXNwYWNl
IFdlYktpdCB7CiAKQEAgLTc1LDExICs3OCwxNCBAQCBwcm90ZWN0ZWQ6CiAjZW5kaWYKIAogcHJp
dmF0ZToKKyAgICBjb25zdCBQcm9jZXNzQXNzZXJ0aW9uVHlwZSBtX2Fzc2VydGlvblR5cGU7CiAj
aWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKLSAgICBSZXRhaW5QdHI8QktTUHJvY2Vzc0Fzc2VydGlv
bj4gbV9hc3NlcnRpb247CisgICAgY29uc3QgUHJvY2Vzc0lEIG1fcGlkOworICAgIFJldGFpblB0
cjxSQlNBc3NlcnRpb24+IG1fcmJzQXNzZXJ0aW9uOworICAgIFJldGFpblB0cjxXS1JCU0Fzc2Vy
dGlvbkRlbGVnYXRlPiBtX2RlbGVnYXRlOworICAgIFJldGFpblB0cjxCS1NQcm9jZXNzQXNzZXJ0
aW9uPiBtX2Jrc0Fzc2VydGlvbjsgLy8gTGVnYWN5LgogICAgIFZhbGlkaXR5IG1fdmFsaWRpdHkg
eyBWYWxpZGl0eTo6VW5zZXQgfTsKICNlbmRpZgotICAgIGNvbnN0IFByb2Nlc3NBc3NlcnRpb25U
eXBlIG1fYXNzZXJ0aW9uVHlwZTsKICAgICBDbGllbnQqIG1fY2xpZW50IHsgbnVsbHB0ciB9Owog
fTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1Byb2Nlc3NBc3Nl
cnRpb25JT1MubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvUHJvY2Vzc0Fzc2VydGlv
bklPUy5tbQppbmRleCA4ZjE3M2FkYjM2MTlhZmIyODBhYjZmOWU4YjNhOTU2ZDAwZGYwYzA0Li45
NTU4NmU1NTI1M2E0YWU0ZmI1ZDdjZmY2OTc4MDcwMGJiOGVlNmI5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvUHJvY2Vzc0Fzc2VydGlvbklPUy5tbQorKysgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvUHJvY2Vzc0Fzc2VydGlvbklPUy5tbQpAQCAtMjY1LDgg
KzI2NSw1MSBAQCAtICh2b2lkKV9yZWxlYXNlQmFja2dyb3VuZFRhc2sKIAogQGVuZAogCit0eXBl
ZGVmIHZvaWQoXlJCU0Fzc2VydGlvbkludmFsaWRhdGlvbkNhbGxiYWNrVHlwZSkoKTsKKworQGlu
dGVyZmFjZSBXS1JCU0Fzc2VydGlvbkRlbGVnYXRlIDogTlNPYmplY3Q8UkJTQXNzZXJ0aW9uT2Jz
ZXJ2aW5nPgorQHByb3BlcnR5IChjb3B5KSBSQlNBc3NlcnRpb25JbnZhbGlkYXRpb25DYWxsYmFj
a1R5cGUgaW52YWxpZGF0aW9uQ2FsbGJhY2s7CitAZW5kCisKK0BpbXBsZW1lbnRhdGlvbiBXS1JC
U0Fzc2VydGlvbkRlbGVnYXRlCistICh2b2lkKWFzc2VydGlvbldpbGxJbnZhbGlkYXRlOihSQlNB
c3NlcnRpb24gKilhc3NlcnRpb24KK3sKKyAgICBSRUxFQVNFX0xPRyhQcm9jZXNzU3VzcGVuc2lv
biwgIiVwIC0gV0tSQlNBc3NlcnRpb25EZWxlZ2F0ZTogYXNzZXJ0aW9uV2lsbEludmFsaWRhdGUi
LCBzZWxmKTsKK30KKworLSAodm9pZClhc3NlcnRpb246KFJCU0Fzc2VydGlvbiAqKWFzc2VydGlv
biBkaWRJbnZhbGlkYXRlV2l0aEVycm9yOihOU0Vycm9yICopZXJyb3IKK3sKKyAgICBSRUxFQVNF
X0xPRyhQcm9jZXNzU3VzcGVuc2lvbiwgIiVwIC0gV0tSQlNBc3NlcnRpb25EZWxlZ2F0ZTogYXNz
ZXJ0aW9uIHdhcyBpbnZhbGlkYXRlZCwgZXJyb3I6ICV7cHVibGljfUAiLCBlcnJvciwgc2VsZik7
CisgICAgZGlzcGF0Y2hfYXN5bmMoZGlzcGF0Y2hfZ2V0X21haW5fcXVldWUoKSwgXnsKKyAgICAg
ICAgaWYgKF9pbnZhbGlkYXRpb25DYWxsYmFjaykKKyAgICAgICAgICAgIF9pbnZhbGlkYXRpb25D
YWxsYmFjaygpOworICAgIH0pOworfQorQGVuZAorCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAorc3Rh
dGljIE5TU3RyaW5nICpydW5uaW5nQm9hcmROYW1lRm9yQXNzZXJ0aW9uVHlwZShQcm9jZXNzQXNz
ZXJ0aW9uVHlwZSBhc3NlcnRpb25UeXBlKQoreworI2lmIEhBVkUoUlVOTklOR0JPQVJEX1dFQktJ
VF9BU1NFUlRJT05TKQorICAgIHN3aXRjaCAoYXNzZXJ0aW9uVHlwZSkgeworICAgIGNhc2UgUHJv
Y2Vzc0Fzc2VydGlvblR5cGU6OlN1c3BlbmRlZDoKKyAgICAgICAgcmV0dXJuIEAiU3VzcGVuZGVk
IjsKKyAgICBjYXNlIFByb2Nlc3NBc3NlcnRpb25UeXBlOjpCYWNrZ3JvdW5kOgorICAgICAgICBy
ZXR1cm4gQCJCYWNrZ3JvdW5kIjsKKyAgICBjYXNlIFByb2Nlc3NBc3NlcnRpb25UeXBlOjpVbmJv
dW5kZWROZXR3b3JraW5nOgorICAgICAgICByZXR1cm4gQCJVbmJvdW5kZWROZXR3b3JraW5nIjsK
KyAgICBjYXNlIFByb2Nlc3NBc3NlcnRpb25UeXBlOjpGb3JlZ3JvdW5kOgorICAgICAgICByZXR1
cm4gQCJGb3JlZ3JvdW5kIjsKKyAgICBjYXNlIFByb2Nlc3NBc3NlcnRpb25UeXBlOjpNZWRpYVBs
YXliYWNrOgorICAgICAgICByZXR1cm4gbmlsOyAvLyBGSVhNRTogTmFtZSB0byBiZSBkZWZpbmVk
IGluIDxyZGFyOi8vcHJvYmxlbS82MTI2MzE0Nz4uCisgICAgfQorI2Vsc2UKKyAgICBVTlVTRURf
UEFSQU0oYXNzZXJ0aW9uVHlwZSk7CisgICAgcmV0dXJuIG5pbDsKKyNlbmRpZgorfQorCiBjb25z
dCBCS1NQcm9jZXNzQXNzZXJ0aW9uRmxhZ3Mgc3VzcGVuZGVkVGFiRmxhZ3MgPSAoQktTUHJvY2Vz
c0Fzc2VydGlvbkFsbG93SWRsZVNsZWVwKTsKIGNvbnN0IEJLU1Byb2Nlc3NBc3NlcnRpb25GbGFn
cyBiYWNrZ3JvdW5kVGFiRmxhZ3MgPSAoQktTUHJvY2Vzc0Fzc2VydGlvblByZXZlbnRUYXNrU3Vz
cGVuZCk7CiBjb25zdCBCS1NQcm9jZXNzQXNzZXJ0aW9uRmxhZ3MgZm9yZWdyb3VuZFRhYkZsYWdz
ID0gKEJLU1Byb2Nlc3NBc3NlcnRpb25QcmV2ZW50VGFza1N1c3BlbmQgfCBCS1NQcm9jZXNzQXNz
ZXJ0aW9uV2FudHNGb3JlZ3JvdW5kUmVzb3VyY2VQcmlvcml0eSB8IEJLU1Byb2Nlc3NBc3NlcnRp
b25QcmV2ZW50VGFza1Rocm90dGxlRG93bik7CkBAIC0zMDEsNDMgKzM0NCw3NSBAQCBzdGF0aWMg
QktTUHJvY2Vzc0Fzc2VydGlvblJlYXNvbiB0b0JLU1Byb2Nlc3NBc3NlcnRpb25SZWFzb24oUHJv
Y2Vzc0Fzc2VydGlvblR5cAogCiBQcm9jZXNzQXNzZXJ0aW9uOjpQcm9jZXNzQXNzZXJ0aW9uKHBp
ZF90IHBpZCwgQVNDSUlMaXRlcmFsIHJlYXNvbiwgUHJvY2Vzc0Fzc2VydGlvblR5cGUgYXNzZXJ0
aW9uVHlwZSkKICAgICA6IG1fYXNzZXJ0aW9uVHlwZShhc3NlcnRpb25UeXBlKQorICAgICwgbV9w
aWQocGlkKQogewogICAgIGF1dG8gd2Vha1RoaXMgPSBtYWtlV2Vha1B0cigqdGhpcyk7Ci0gICAg
QktTUHJvY2Vzc0Fzc2VydGlvbkFjcXVpc2l0aW9uSGFuZGxlciBoYW5kbGVyID0gXihCT09MIGFj
cXVpcmVkKSB7Ci0gICAgICAgIGlmICghYWNxdWlyZWQpIHsKLSAgICAgICAgICAgIFJFTEVBU0Vf
TE9HX0VSUk9SKFByb2Nlc3NTdXNwZW5zaW9uLCAiICVwIC0gUHJvY2Vzc0Fzc2VydGlvbigpIFBJ
RCAlZCBVbmFibGUgdG8gYWNxdWlyZSBhc3NlcnRpb24gZm9yIHByb2Nlc3Mgd2l0aCBQSUQgJWQi
LCB0aGlzLCBnZXRwaWQoKSwgcGlkKTsKKyAgICBOU1N0cmluZyAqbnNSZWFzb24gPSBbTlNTdHJp
bmcgc3RyaW5nV2l0aENTdHJpbmc6cmVhc29uLmNoYXJhY3RlcnMoKSBlbmNvZGluZzpOU0FTQ0lJ
U3RyaW5nRW5jb2RpbmddOworICAgIE5TU3RyaW5nICpydW5uaW5nQm9hcmRBc3NlcnRpb25OYW1l
ID0gcnVubmluZ0JvYXJkTmFtZUZvckFzc2VydGlvblR5cGUoYXNzZXJ0aW9uVHlwZSk7CisgICAg
aWYgKHJ1bm5pbmdCb2FyZEFzc2VydGlvbk5hbWUpIHsKKyAgICAgICAgUkJTVGFyZ2V0ICp0YXJn
ZXQgPSBbUkJTVGFyZ2V0IHRhcmdldFdpdGhQaWQ6cGlkXTsKKyAgICAgICAgUkJTRG9tYWluQXR0
cmlidXRlICpkb21haW5BdHRyaWJ1dGUgPSBbUkJTRG9tYWluQXR0cmlidXRlIGF0dHJpYnV0ZVdp
dGhEb21haW46QCJjb20uYXBwbGUud2Via2l0IiBuYW1lOnJ1bm5pbmdCb2FyZEFzc2VydGlvbk5h
bWVdOworICAgICAgICBtX3Jic0Fzc2VydGlvbiA9IGFkb3B0TlMoW1tSQlNBc3NlcnRpb24gYWxs
b2NdIGluaXRXaXRoRXhwbGFuYXRpb246bnNSZWFzb24gdGFyZ2V0OnRhcmdldCBhdHRyaWJ1dGVz
OkBbZG9tYWluQXR0cmlidXRlXV0pOworCisgICAgICAgIG1fZGVsZWdhdGUgPSBhZG9wdE5TKFtb
V0tSQlNBc3NlcnRpb25EZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOworICAgICAgICBbbV9yYnNBc3Nl
cnRpb24gYWRkT2JzZXJ2ZXI6bV9kZWxlZ2F0ZS5nZXQoKV07CisgICAgICAgIG1fZGVsZWdhdGUu
Z2V0KCkuaW52YWxpZGF0aW9uQ2FsbGJhY2sgPSBeeworICAgICAgICAgICAgUkVMRUFTRV9MT0co
UHJvY2Vzc1N1c3BlbnNpb24sICIlcCAtIFByb2Nlc3NBc3NlcnRpb24oKSBSQlMgJXtwdWJsaWN9
QCBhc3NlcnRpb24gZm9yIHByb2Nlc3Mgd2l0aCBQSUQgJWQgd2FzIGludmFsaWRhdGVkIiwgdGhp
cywgcnVubmluZ0JvYXJkQXNzZXJ0aW9uTmFtZSwgcGlkKTsKKyAgICAgICAgICAgIHByb2Nlc3NB
c3NlcnRpb25XYXNJbnZhbGlkYXRlZCgpOworICAgICAgICB9OworCisgICAgICAgIE5TRXJyb3Ig
KmFjcXVpc2l0aW9uRXJyb3IgPSBuaWw7CisgICAgICAgIGlmICghW21fcmJzQXNzZXJ0aW9uIGFj
cXVpcmVXaXRoRXJyb3I6JmFjcXVpc2l0aW9uRXJyb3JdKSB7CisgICAgICAgICAgICBSRUxFQVNF
X0xPR19FUlJPUihQcm9jZXNzU3VzcGVuc2lvbiwgIiVwIC0gUHJvY2Vzc0Fzc2VydGlvbjogRmFp
bGVkIHRvIGFjcXVpcmUgUkJTICV7cHVibGljfUAgYXNzZXJ0aW9uICcle3B1YmxpY31zJyBmb3Ig
cHJvY2VzcyB3aXRoIFBJRCAlZCwgZXJyb3I6ICV7cHVibGljfUAiLCB0aGlzLCBydW5uaW5nQm9h
cmRBc3NlcnRpb25OYW1lLCByZWFzb24uY2hhcmFjdGVycygpLCBwaWQsIGFjcXVpc2l0aW9uRXJy
b3IpOwogICAgICAgICAgICAgZGlzcGF0Y2hfYXN5bmMoZGlzcGF0Y2hfZ2V0X21haW5fcXVldWUo
KSwgXnsKICAgICAgICAgICAgICAgICBpZiAod2Vha1RoaXMpCiAgICAgICAgICAgICAgICAgICAg
IHByb2Nlc3NBc3NlcnRpb25XYXNJbnZhbGlkYXRlZCgpOwogICAgICAgICAgICAgfSk7Ci0gICAg
ICAgIH0KLSAgICB9OwotICAgIFJFTEVBU0VfTE9HKFByb2Nlc3NTdXNwZW5zaW9uLCAiJXAgLSBQ
cm9jZXNzQXNzZXJ0aW9uKCkgUElEICVkIGFjcXVpcmluZyBhc3NlcnRpb24gZm9yIHByb2Nlc3Mg
d2l0aCBQSUQgJWQsIG5hbWUgJyVzJyIsIHRoaXMsIGdldHBpZCgpLCBwaWQsIHJlYXNvbi5jaGFy
YWN0ZXJzKCkpOwotICAgIAotICAgIE5TU3RyaW5nICpuc1JlYXNvbiA9IFtOU1N0cmluZyBzdHJp
bmdXaXRoQ1N0cmluZzpyZWFzb24uY2hhcmFjdGVycygpIGVuY29kaW5nOk5TQVNDSUlTdHJpbmdF
bmNvZGluZ107Ci0gICAgbV9hc3NlcnRpb24gPSBhZG9wdE5TKFtbQktTUHJvY2Vzc0Fzc2VydGlv
biBhbGxvY10gaW5pdFdpdGhQSUQ6cGlkIGZsYWdzOmZsYWdzRm9yQXNzZXJ0aW9uVHlwZShhc3Nl
cnRpb25UeXBlKSByZWFzb246dG9CS1NQcm9jZXNzQXNzZXJ0aW9uUmVhc29uKGFzc2VydGlvblR5
cGUpIG5hbWU6bnNSZWFzb24gd2l0aEhhbmRsZXI6aGFuZGxlcl0pOwotCi0gICAgbV9hc3NlcnRp
b24uZ2V0KCkuaW52YWxpZGF0aW9uSGFuZGxlciA9IF4oKSB7Ci0gICAgICAgIGRpc3BhdGNoX2Fz
eW5jKGRpc3BhdGNoX2dldF9tYWluX3F1ZXVlKCksIF57Ci0gICAgICAgICAgICBSRUxFQVNFX0xP
RyhQcm9jZXNzU3VzcGVuc2lvbiwgIiVwIC0gUHJvY2Vzc0Fzc2VydGlvbigpIFByb2Nlc3MgYXNz
ZXJ0aW9uIGZvciBwcm9jZXNzIHdpdGggUElEICVkIHdhcyBpbnZhbGlkYXRlZCIsIHRoaXMsIHBp
ZCk7Ci0gICAgICAgICAgICBpZiAod2Vha1RoaXMpCi0gICAgICAgICAgICAgICAgcHJvY2Vzc0Fz
c2VydGlvbldhc0ludmFsaWRhdGVkKCk7Ci0gICAgICAgIH0pOwotICAgIH07CisgICAgICAgIH0g
ZWxzZQorICAgICAgICAgICAgUkVMRUFTRV9MT0coUHJvY2Vzc1N1c3BlbnNpb24sICIlcCAtIFBy
b2Nlc3NBc3NlcnRpb246IFN1Y2Nlc3NmdWxseSB0b29rIFJCUyAle3B1YmxpY31AIGFzc2VydGlv
biAnJXtwdWJsaWN9cycgZm9yIHByb2Nlc3Mgd2l0aCBQSUQgJWQiLCB0aGlzLCBydW5uaW5nQm9h
cmRBc3NlcnRpb25OYW1lLCByZWFzb24uY2hhcmFjdGVycygpLCBwaWQpOworICAgIH0gZWxzZSB7
CisgICAgICAgIC8vIExlZ2FjeSBjb2RlIHBhdGguCisgICAgICAgIEJLU1Byb2Nlc3NBc3NlcnRp
b25BY3F1aXNpdGlvbkhhbmRsZXIgaGFuZGxlciA9IF4oQk9PTCBhY3F1aXJlZCkgeworICAgICAg
ICAgICAgaWYgKCFhY3F1aXJlZCkgeworICAgICAgICAgICAgICAgIFJFTEVBU0VfTE9HX0VSUk9S
KFByb2Nlc3NTdXNwZW5zaW9uLCAiICVwIC0gUHJvY2Vzc0Fzc2VydGlvbigpIFBJRCAlZCBVbmFi
bGUgdG8gYWNxdWlyZSBCS1MgYXNzZXJ0aW9uIGZvciBwcm9jZXNzIHdpdGggUElEICVkIiwgdGhp
cywgZ2V0cGlkKCksIHBpZCk7CisgICAgICAgICAgICAgICAgZGlzcGF0Y2hfYXN5bmMoZGlzcGF0
Y2hfZ2V0X21haW5fcXVldWUoKSwgXnsKKyAgICAgICAgICAgICAgICAgICAgaWYgKHdlYWtUaGlz
KQorICAgICAgICAgICAgICAgICAgICAgICAgcHJvY2Vzc0Fzc2VydGlvbldhc0ludmFsaWRhdGVk
KCk7CisgICAgICAgICAgICAgICAgfSk7CisgICAgICAgICAgICB9CisgICAgICAgIH07CisgICAg
ICAgIFJFTEVBU0VfTE9HKFByb2Nlc3NTdXNwZW5zaW9uLCAiJXAgLSBQcm9jZXNzQXNzZXJ0aW9u
KCkgUElEICVkIGFjcXVpcmluZyBCS1MgYXNzZXJ0aW9uIGZvciBwcm9jZXNzIHdpdGggUElEICVk
LCBuYW1lICclcyciLCB0aGlzLCBnZXRwaWQoKSwgcGlkLCByZWFzb24uY2hhcmFjdGVycygpKTsK
KworICAgICAgICBtX2Jrc0Fzc2VydGlvbiA9IGFkb3B0TlMoW1tCS1NQcm9jZXNzQXNzZXJ0aW9u
IGFsbG9jXSBpbml0V2l0aFBJRDpwaWQgZmxhZ3M6ZmxhZ3NGb3JBc3NlcnRpb25UeXBlKGFzc2Vy
dGlvblR5cGUpIHJlYXNvbjp0b0JLU1Byb2Nlc3NBc3NlcnRpb25SZWFzb24oYXNzZXJ0aW9uVHlw
ZSkgbmFtZTpuc1JlYXNvbiB3aXRoSGFuZGxlcjpoYW5kbGVyXSk7CisKKyAgICAgICAgbV9ia3NB
c3NlcnRpb24uZ2V0KCkuaW52YWxpZGF0aW9uSGFuZGxlciA9IF4oKSB7CisgICAgICAgICAgICBk
aXNwYXRjaF9hc3luYyhkaXNwYXRjaF9nZXRfbWFpbl9xdWV1ZSgpLCBeeworICAgICAgICAgICAg
ICAgIFJFTEVBU0VfTE9HKFByb2Nlc3NTdXNwZW5zaW9uLCAiJXAgLSBQcm9jZXNzQXNzZXJ0aW9u
KCkgQktTIFByb2Nlc3MgYXNzZXJ0aW9uIGZvciBwcm9jZXNzIHdpdGggUElEICVkIHdhcyBpbnZh
bGlkYXRlZCIsIHRoaXMsIHBpZCk7CisgICAgICAgICAgICAgICAgaWYgKHdlYWtUaGlzKQorICAg
ICAgICAgICAgICAgICAgICBwcm9jZXNzQXNzZXJ0aW9uV2FzSW52YWxpZGF0ZWQoKTsKKyAgICAg
ICAgICAgIH0pOworICAgICAgICB9OworICAgIH0KKyAgICBBU1NFUlQobV9yYnNBc3NlcnRpb24g
fHwgbV9ia3NBc3NlcnRpb24pOwogfQogCiBQcm9jZXNzQXNzZXJ0aW9uOjp+UHJvY2Vzc0Fzc2Vy
dGlvbigpCiB7Ci0gICAgbV9hc3NlcnRpb24uZ2V0KCkuaW52YWxpZGF0aW9uSGFuZGxlciA9IG5p
bDsKLQotICAgIFJFTEVBU0VfTE9HKFByb2Nlc3NTdXNwZW5zaW9uLCAiJXAgLSB+UHJvY2Vzc0Fz
c2VydGlvbigpIFJlbGVhc2luZyBwcm9jZXNzIGFzc2VydGlvbiIsIHRoaXMpOwotICAgIFttX2Fz
c2VydGlvbiBpbnZhbGlkYXRlXTsKKyAgICBSRUxFQVNFX0xPRyhQcm9jZXNzU3VzcGVuc2lvbiwg
IiVwIC0gflByb2Nlc3NBc3NlcnRpb24oKSBSZWxlYXNpbmcgcHJvY2VzcyBhc3NlcnRpb24gZm9y
IHByb2Nlc3Mgd2l0aCBQSUQgJWQiLCB0aGlzLCBtX3BpZCk7CisKKyAgICBpZiAobV9yYnNBc3Nl
cnRpb24pIHsKKyAgICAgICAgW21fcmJzQXNzZXJ0aW9uIHJlbW92ZU9ic2VydmVyOm1fZGVsZWdh
dGUuZ2V0KCldOworICAgICAgICBbbV9yYnNBc3NlcnRpb24gaW52YWxpZGF0ZV07CisgICAgfSBl
bHNlIHsKKyAgICAgICAgbV9ia3NBc3NlcnRpb24uZ2V0KCkuaW52YWxpZGF0aW9uSGFuZGxlciA9
IG5pbDsKKyAgICAgICAgW21fYmtzQXNzZXJ0aW9uIGludmFsaWRhdGVdOworICAgIH0KIH0KIAog
dm9pZCBQcm9jZXNzQXNzZXJ0aW9uOjpwcm9jZXNzQXNzZXJ0aW9uV2FzSW52YWxpZGF0ZWQoKQog
ewogICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7Ci0gICAgUkVMRUFTRV9MT0dfRVJST1Io
UHJvY2Vzc1N1c3BlbnNpb24sICIlcCAtIFByb2Nlc3NBc3NlcnRpb246OnByb2Nlc3NBc3NlcnRp
b25XYXNJbnZhbGlkYXRlZCgpIiwgdGhpcyk7CisgICAgUkVMRUFTRV9MT0coUHJvY2Vzc1N1c3Bl
bnNpb24sICIlcCAtIFByb2Nlc3NBc3NlcnRpb246OnByb2Nlc3NBc3NlcnRpb25XYXNJbnZhbGlk
YXRlZCgpIFBJRDogJWQiLCB0aGlzLCBtX3BpZCk7CiAKICAgICBtX3ZhbGlkaXR5ID0gVmFsaWRp
dHk6Ok5vOwogfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>