<?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>207789</bug_id>
          
          <creation_ts>2020-02-14 13:54:33 -0800</creation_ts>
          <short_desc>Ensure that contenteditable carets on macCatalyst are the right color, especially in Dark Mode</short_desc>
          <delta_ts>2020-02-19 08:58:16 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Megan Gardner">megan_gardner</reporter>
          <assigned_to name="Megan Gardner">megan_gardner</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>mifenton</cc>
    
    <cc>sam</cc>
    
    <cc>thorton</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1619187</commentid>
    <comment_count>0</comment_count>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2020-02-14 13:54:33 -0800</bug_when>
    <thetext>Fix contenteditable carets on MacCatalyst</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619201</commentid>
    <comment_count>1</comment_count>
      <attachid>390816</attachid>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2020-02-14 14:16:51 -0800</bug_when>
    <thetext>Created attachment 390816
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619212</commentid>
    <comment_count>2</comment_count>
      <attachid>390816</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2020-02-14 14:24:13 -0800</bug_when>
    <thetext>Comment on attachment 390816
Patch

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

&gt; Source/WebCore/editing/FrameSelection.cpp:1802
&gt;      if (element &amp;&amp; element-&gt;renderer()) {

Remove the extraneous curly braces

&gt; Source/WebCore/editing/FrameSelection.cpp:1803
&gt; +        caretColor = CaretBase::computeCaretColor(element-&gt;renderer()-&gt;style());

You don&apos;t pass a node here? Also, maybe just pass the element and have computeCaretColor find what it wants?

&gt; Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm:3222
&gt; +    return [self getInteractionTintColor];

This isn&apos;t how we use the `get` prefix. I would go with `_interactionTintColor`.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619214</commentid>
    <comment_count>3</comment_count>
      <attachid>390816</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2020-02-14 14:26:42 -0800</bug_when>
    <thetext>Comment on attachment 390816
Patch

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

&gt; Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm:277
&gt; +#if PLATFORM(MACCATALYST)

Should have a comment here about why iOS is different (on iOS, by default, we want to fall back to the tintColor (default blue), so only want to override if caretColor was /explicitly/ specified by the content, instead of using the smarts to always decide a color that we use on Mac and in macCatalyst).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619281</commentid>
    <comment_count>4</comment_count>
      <attachid>390832</attachid>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2020-02-14 16:16:56 -0800</bug_when>
    <thetext>Created attachment 390832
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619282</commentid>
    <comment_count>5</comment_count>
      <attachid>390832</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2020-02-14 16:20:30 -0800</bug_when>
    <thetext>Comment on attachment 390832
Patch

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

&gt; Source/WebCore/ChangeLog:3
&gt; +        Fix contenteditable carets on MacCatalyst

What are you fixing about them?

&gt; Source/WebCore/editing/FrameSelection.cpp:1803
&gt; +        caretColor = CaretBase::computeCaretColor(element-&gt;renderer()-&gt;style());

See my all my earlier comments!!

&gt; Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm:3224
&gt; +    return [self.textInputTraits insertionPoiWebPageIOS.mmntColor];

wat

&gt; Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm:278
&gt; +            // On MacCatalyst, we need to calculate the caret color the same way that we do on mac to maintain a consistent look.

Capitalization: macCatalyst, Mac (or macOS, but not &quot;mac&quot;)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619286</commentid>
    <comment_count>6</comment_count>
      <attachid>390833</attachid>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2020-02-14 16:29:21 -0800</bug_when>
    <thetext>Created attachment 390833
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619294</commentid>
    <comment_count>7</comment_count>
      <attachid>390833</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2020-02-14 16:59:16 -0800</bug_when>
    <thetext>Comment on attachment 390833
Patch

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

&gt; Source/WebKit/ChangeLog:3
&gt; +        Fix contenteditable carets on MacCatalyst

What are you fixing about them?? (make the title say the word &quot;color&quot; at least)

&gt; Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm:3224
&gt; +#if PLATFORM(MACCATALYST)
&gt; +    return [self _interactionTintColor];
&gt; +#endif
&gt;      return [self.textInputTraits insertionPointColor];

It is very odd that there are two `return`s in the catalyst case. Can you #else?

&gt; Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm:3237
&gt; +- (UIColor*)_interactionTintColor

Space before the *

&gt; Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm:3239
&gt; +    if (!self.webView.configuration._textInteractionGesturesEnabled)

(not a regression from this change, so you don&apos;t have to fix it here) -configuration makes a copy, which is not extremely cheap. We should directly read from WKWebView&apos;s copy instead!

&gt; Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm:3253
&gt; +    UIColor *tintColor = [self _interactionTintColor];
&gt;      [_traits _setColorsToMatchTintColor:tintColor];

Why the local?

&gt; Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm:278
&gt; +            // On MacCatalyst, we need to calculate the caret color the same way that we do on mac to maintain a consistent look.

All of my previous comments about capitalization still apply</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619428</commentid>
    <comment_count>8</comment_count>
      <attachid>390833</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2020-02-15 12:01:01 -0800</bug_when>
    <thetext>Comment on attachment 390833
Patch

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

&gt;&gt; Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm:278
&gt;&gt; +            // On MacCatalyst, we need to calculate the caret color the same way that we do on mac to maintain a consistent look.
&gt; 
&gt; All of my previous comments about capitalization still apply

Seems like this #if PLATFORM could be inside CaretBase::computeCaretColor() to keep caret logic all together.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619940</commentid>
    <comment_count>9</comment_count>
      <attachid>390994</attachid>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2020-02-17 15:31:33 -0800</bug_when>
    <thetext>Created attachment 390994
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1619950</commentid>
    <comment_count>10</comment_count>
      <attachid>390994</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2020-02-17 15:44:10 -0800</bug_when>
    <thetext>Comment on attachment 390994
Patch

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

&gt; Source/WebCore/ChangeLog:3
&gt; +        Fix contenteditable carets on MacCatalyst

oO oO oO oO Please put the new title here.

&gt; Source/WebKit/ChangeLog:9
&gt; +        Because UIKit only uses label color for the caret in MacCatlayst, 

macCatalyst

&gt; Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm:3221
&gt; +    // On macCatalyst we need to explicitly return the color we have calculated, rather than rely on textTraits, as on macCatalyst, UIKit ignores text traits, and relies on AppKit&apos;s calulation, which cannot track dark mode correctly in web content.

calulation

Also, this part isn&apos;t about dark mode... they totally ignore ANY insertionPointColor change, even from caretColor. I would just stop after &quot;ignores text traits&quot; and slap a period on there and you&apos;re golden.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620311</commentid>
    <comment_count>11</comment_count>
      <attachid>391086</attachid>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2020-02-18 13:58:42 -0800</bug_when>
    <thetext>Created attachment 391086
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620318</commentid>
    <comment_count>12</comment_count>
      <attachid>391086</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2020-02-18 14:15:17 -0800</bug_when>
    <thetext>Comment on attachment 391086
Patch

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

&gt; Source/WebCore/ChangeLog:3
&gt; +        Fix contenteditable carets on MacCatalyst

This does not match the bugzilla title</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620329</commentid>
    <comment_count>13</comment_count>
      <attachid>391093</attachid>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2020-02-18 14:34:47 -0800</bug_when>
    <thetext>Created attachment 391093
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620370</commentid>
    <comment_count>14</comment_count>
      <attachid>391093</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2020-02-18 15:19:21 -0800</bug_when>
    <thetext>Comment on attachment 391093
Patch

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

&gt; Source/WebKit/ChangeLog:9
&gt; +        Because UIKit only uses label color for the caret in macCatlayst, 

macCatalyst is not spelled correctly

&gt; Source/WebCore/editing/FrameSelection.cpp:1777
&gt; +#endif
&gt; +    auto* rootEditableElement = node ? node-&gt;rootEditableElement() : nullptr;

You have two `returns` and lots of extra unreachable code on iOS; you should have an #else instead

&gt; Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm:3226
&gt; +    // On macCatalyst we need to explicitly return the color we have calculated, rather than rely on textTraits, as on macCatalyst, UIKit ignores text traits, and relies on AppKit&apos;s calulation, which cannot track dark mode correctly in web content.

&quot;calulation&quot; is spelled incorrectly (should be &quot;calculation&quot;)

Also, this part isn&apos;t about dark mode... they totally ignore ANY insertionPointColor change, even from caretColor. I would just stop after &quot;ignores text traits&quot; and slap a period on there and you&apos;re golden.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620379</commentid>
    <comment_count>15</comment_count>
      <attachid>391105</attachid>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2020-02-18 15:26:24 -0800</bug_when>
    <thetext>Created attachment 391105
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620681</commentid>
    <comment_count>16</comment_count>
      <attachid>391105</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-02-19 08:57:20 -0800</bug_when>
    <thetext>Comment on attachment 391105
Patch

Clearing flags on attachment: 391105

Committed r256921: &lt;https://trac.webkit.org/changeset/256921&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620682</commentid>
    <comment_count>17</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-02-19 08:57:22 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1620684</commentid>
    <comment_count>18</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-02-19 08:58:16 -0800</bug_when>
    <thetext>&lt;rdar://problem/59592008&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>390816</attachid>
            <date>2020-02-14 14:16:51 -0800</date>
            <delta_ts>2020-02-14 16:16:55 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207789-20200214141650.patch</filename>
            <type>text/plain</type>
            <size>9010</size>
            <attacher name="Megan Gardner">megan_gardner</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU2NjQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDU3NTc2MTU2MWM3YzU5
YWEzYjZhODAyMGIyYmQwNzc1ZGZmZjdmMS4uMTBhMjliNjBjMjUxN2M1N2UzMGM3YThkNjQxY2Jm
MTA4Njc1YjZmMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDIwLTAyLTE0ICBNZWdh
biBHYXJkbmVyICA8bWVnYW5fZ2FyZG5lckBhcHBsZS5jb20+CisKKyAgICAgICAgRml4IGNvbnRl
bnRlZGl0YWJsZSBjYXJldHMgb24gTWFjQ2F0YWx5c3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNzc4OQorICAgICAgICA8cmRhcjovL3Byb2JsZW0v
NTk0Mjk3MTU+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgRmFjdG9yIG91dCBjYXJldCBjb2xvciBjYWxjdWxhdGlvbiB0byBiZSB1c2VkIGluIFdlYlBh
Z2VJT1MuCisKKyAgICAgICAgRml4ZXMgRWRpdG9yU3RhdGVUZXN0cy5DYXJldENvbG9ySW5Db250
ZW50RWRpdGFibGUuCisKKyAgICAgICAgKiBlZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkNhcmV0QmFzZTo6Y29tcHV0ZUNhcmV0Q29sb3IpOgorICAgICAgICAo
V2ViQ29yZTo6Q2FyZXRCYXNlOjpwYWludENhcmV0IGNvbnN0KToKKyAgICAgICAgKiBlZGl0aW5n
L0ZyYW1lU2VsZWN0aW9uLmg6CisKIDIwMjAtMDItMTQgIEFudG9pbmUgUXVpbnQgIDxncmFvdXRz
QHdlYmtpdC5vcmc+CiAKICAgICAgICAgW1dlYiBBbmltYXRpb25zXSBNaXNzaW5nIGNhbGwgdG8g
RG9jdW1lbnRUaW1lbGluZTo6cmVzdW1lQW5pbWF0aW9ucygpIGluIEZyYW1lOjpyZXN1bWVBY3Rp
dmVET01PYmplY3RzQW5kQW5pbWF0aW9ucygpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGYyNjZmMWU3YTlhZDlmNzc1
MzZjODZiMzk0YTVmYWY2NDFmNWViMTkuLjY1ZGIyNjA3NGU0YjkxZDlmZGE5MTEzNzJjODkyM2Yw
MDRkZWJjOTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjAtMDItMTQgIE1lZ2FuIEdh
cmRuZXIgIDxtZWdhbl9nYXJkbmVyQGFwcGxlLmNvbT4KKworICAgICAgICBGaXggY29udGVudGVk
aXRhYmxlIGNhcmV0cyBvbiBNYWNDYXRhbHlzdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA3Nzg5CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81OTQy
OTcxNT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBC
ZWNhdXNlIFVJS2l0IG9ubHkgdXNlcyBsYWJlbCBjb2xvciBmb3IgdGhlIGNhcmV0IGluIE1hY0Nh
dGxheXN0LCAKKyAgICAgICAgd2UgbmVlZCBza2lwIHRleHQgaW5wdXQgdHJhaXRzIGFuZCBzZW5k
IHRoZSBjb3JyZWN0bHkgY2FsY3VsYXRlZCBjb2xvciAKKyAgICAgICAgdG8gVUlLaXQuCisKKyAg
ICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbToKKyAgICAg
ICAgKC1bV0tDb250ZW50VmlldyBpbnNlcnRpb25Qb2ludENvbG9yXSk6CisgICAgICAgICgtW1dL
Q29udGVudFZpZXcgZ2V0SW50ZXJhY3Rpb25UaW50Q29sb3JdKToKKyAgICAgICAgKC1bV0tDb250
ZW50VmlldyBfdXBkYXRlSW50ZXJhY3Rpb25UaW50Q29sb3JdKToKKyAgICAgICAgKiBXZWJQcm9j
ZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW06CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6
OnBsYXRmb3JtRWRpdG9yU3RhdGUgY29uc3QpOgorCiAyMDIwLTAyLTE0ICBXZW5zb24gSHNpZWgg
IDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIGZpeCB0aGUg
aU9TIDEzLjEgYnVpbGQgYWZ0ZXIgcjI1NjUyMApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
ZWRpdGluZy9GcmFtZVNlbGVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0ZyYW1l
U2VsZWN0aW9uLmNwcAppbmRleCAyZDQxYjczMmYwZGZhOTc2NjAyOTRlYTBlZGViYjE1Yzk4YzY2
ZTA2Li43ZWZjNWNkMTFmYzk5NjY4NzFlNzZkOWM0ZDNlOTI0YWQ5YjMwMjA2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9lZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmNwcApAQCAtMTc2OCw2ICsxNzY4LDIxIEBA
IHZvaWQgRnJhbWVTZWxlY3Rpb246OnBhaW50Q2FyZXQoR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0
LCBjb25zdCBMYXlvdXRQb2ludCYgcGFpCiAgICAgICAgIENhcmV0QmFzZTo6cGFpbnRDYXJldCht
X3NlbGVjdGlvbi5zdGFydCgpLmRlcHJlY2F0ZWROb2RlKCksIGNvbnRleHQsIHBhaW50T2Zmc2V0
LCBjbGlwUmVjdCk7CiB9CiAKK0NvbG9yIENhcmV0QmFzZTo6Y29tcHV0ZUNhcmV0Q29sb3IoY29u
c3QgUmVuZGVyU3R5bGUmIGVsZW1lbnRTdHlsZSwgTm9kZSogbm9kZSkKK3sKKyAgICBhdXRvKiBy
b290RWRpdGFibGVFbGVtZW50ID0gbm9kZSA/IG5vZGUtPnJvb3RFZGl0YWJsZUVsZW1lbnQoKSA6
IG51bGxwdHI7CisgICAgYXV0byogcm9vdEVkaXRhYmxlU3R5bGUgPSByb290RWRpdGFibGVFbGVt
ZW50ICYmIHJvb3RFZGl0YWJsZUVsZW1lbnQtPnJlbmRlcmVyKCkgPyAmcm9vdEVkaXRhYmxlRWxl
bWVudC0+cmVuZGVyZXIoKS0+c3R5bGUoKSA6IG51bGxwdHI7CisgICAgLy8gQ1NTIHZhbHVlICJh
dXRvIiBpcyB0cmVhdGVkIGFzIGFuIGludmFsaWQgY29sb3IuCisgICAgaWYgKCFlbGVtZW50U3R5
bGUuY2FyZXRDb2xvcigpLmlzVmFsaWQoKSAmJiByb290RWRpdGFibGVTdHlsZSkgeworICAgICAg
ICBhdXRvIHJvb3RFZGl0YWJsZUJhY2tncm91bmRDb2xvciA9IHJvb3RFZGl0YWJsZVN0eWxlLT52
aXNpdGVkRGVwZW5kZW50Q29sb3JXaXRoQ29sb3JGaWx0ZXIoQ1NTUHJvcGVydHlCYWNrZ3JvdW5k
Q29sb3IpOworICAgICAgICBhdXRvIGVsZW1lbnRCYWNrZ3JvdW5kQ29sb3IgPSBlbGVtZW50U3R5
bGUudmlzaXRlZERlcGVuZGVudENvbG9yV2l0aENvbG9yRmlsdGVyKENTU1Byb3BlcnR5QmFja2dy
b3VuZENvbG9yKTsKKyAgICAgICAgYXV0byBkaXNhcHBlYXJzSW50b0JhY2tncm91bmQgPSByb290
RWRpdGFibGVCYWNrZ3JvdW5kQ29sb3IuYmxlbmQoZWxlbWVudEJhY2tncm91bmRDb2xvcikgPT0g
cm9vdEVkaXRhYmxlQmFja2dyb3VuZENvbG9yOworICAgICAgICBpZiAoZGlzYXBwZWFyc0ludG9C
YWNrZ3JvdW5kKQorICAgICAgICAgICAgcmV0dXJuIHJvb3RFZGl0YWJsZVN0eWxlLT52aXNpdGVk
RGVwZW5kZW50Q29sb3JXaXRoQ29sb3JGaWx0ZXIoQ1NTUHJvcGVydHlDYXJldENvbG9yKTsKKyAg
ICB9CisgICAgcmV0dXJuIGVsZW1lbnRTdHlsZS52aXNpdGVkRGVwZW5kZW50Q29sb3JXaXRoQ29s
b3JGaWx0ZXIoQ1NTUHJvcGVydHlDYXJldENvbG9yKTsKK30KKwogdm9pZCBDYXJldEJhc2U6OnBh
aW50Q2FyZXQoTm9kZSogbm9kZSwgR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0LCBjb25zdCBMYXlv
dXRQb2ludCYgcGFpbnRPZmZzZXQsIGNvbnN0IExheW91dFJlY3QmIGNsaXBSZWN0KSBjb25zdAog
ewogI2lmIEVOQUJMRShURVhUX0NBUkVUKQpAQCAtMTc4NSwyMCArMTgwMCw3IEBAIHZvaWQgQ2Fy
ZXRCYXNlOjpwYWludENhcmV0KE5vZGUqIG5vZGUsIEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCwg
Y29uc3QgTGF5b3V0UG9pCiAgICAgQ29sb3IgY2FyZXRDb2xvciA9IENvbG9yOjpibGFjazsKICAg
ICBFbGVtZW50KiBlbGVtZW50ID0gaXM8RWxlbWVudD4oKm5vZGUpID8gZG93bmNhc3Q8RWxlbWVu
dD4obm9kZSkgOiBub2RlLT5wYXJlbnRFbGVtZW50KCk7CiAgICAgaWYgKGVsZW1lbnQgJiYgZWxl
bWVudC0+cmVuZGVyZXIoKSkgewotICAgICAgICBhdXRvIGNvbXB1dGVDYXJldENvbG9yID0gW10g
KGNvbnN0IFJlbmRlclN0eWxlJiBlbGVtZW50U3R5bGUsIGNvbnN0IFJlbmRlclN0eWxlKiByb290
RWRpdGFibGVTdHlsZSkgewotICAgICAgICAgICAgLy8gQ1NTIHZhbHVlICJhdXRvIiBpcyB0cmVh
dGVkIGFzIGFuIGludmFsaWQgY29sb3IuCi0gICAgICAgICAgICBpZiAoIWVsZW1lbnRTdHlsZS5j
YXJldENvbG9yKCkuaXNWYWxpZCgpICYmIHJvb3RFZGl0YWJsZVN0eWxlKSB7Ci0gICAgICAgICAg
ICAgICAgYXV0byByb290RWRpdGFibGVCYWNrZ3JvdW5kQ29sb3IgPSByb290RWRpdGFibGVTdHls
ZS0+dmlzaXRlZERlcGVuZGVudENvbG9yV2l0aENvbG9yRmlsdGVyKENTU1Byb3BlcnR5QmFja2dy
b3VuZENvbG9yKTsKLSAgICAgICAgICAgICAgICBhdXRvIGVsZW1lbnRCYWNrZ3JvdW5kQ29sb3Ig
PSBlbGVtZW50U3R5bGUudmlzaXRlZERlcGVuZGVudENvbG9yV2l0aENvbG9yRmlsdGVyKENTU1By
b3BlcnR5QmFja2dyb3VuZENvbG9yKTsKLSAgICAgICAgICAgICAgICBhdXRvIGRpc2FwcGVhcnNJ
bnRvQmFja2dyb3VuZCA9IHJvb3RFZGl0YWJsZUJhY2tncm91bmRDb2xvci5ibGVuZChlbGVtZW50
QmFja2dyb3VuZENvbG9yKSA9PSByb290RWRpdGFibGVCYWNrZ3JvdW5kQ29sb3I7Ci0gICAgICAg
ICAgICAgICAgaWYgKGRpc2FwcGVhcnNJbnRvQmFja2dyb3VuZCkKLSAgICAgICAgICAgICAgICAg
ICAgcmV0dXJuIHJvb3RFZGl0YWJsZVN0eWxlLT52aXNpdGVkRGVwZW5kZW50Q29sb3JXaXRoQ29s
b3JGaWx0ZXIoQ1NTUHJvcGVydHlDYXJldENvbG9yKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAg
ICAgIHJldHVybiBlbGVtZW50U3R5bGUudmlzaXRlZERlcGVuZGVudENvbG9yV2l0aENvbG9yRmls
dGVyKENTU1Byb3BlcnR5Q2FyZXRDb2xvcik7Ci0gICAgICAgIH07Ci0gICAgICAgIGF1dG8qIHJv
b3RFZGl0YWJsZUVsZW1lbnQgPSBub2RlLT5yb290RWRpdGFibGVFbGVtZW50KCk7Ci0gICAgICAg
IGF1dG8qIHJvb3RFZGl0YWJsZVN0eWxlID0gcm9vdEVkaXRhYmxlRWxlbWVudCAmJiByb290RWRp
dGFibGVFbGVtZW50LT5yZW5kZXJlcigpID8gJnJvb3RFZGl0YWJsZUVsZW1lbnQtPnJlbmRlcmVy
KCktPnN0eWxlKCkgOiBudWxscHRyOwotICAgICAgICBjYXJldENvbG9yID0gY29tcHV0ZUNhcmV0
Q29sb3IoZWxlbWVudC0+cmVuZGVyZXIoKS0+c3R5bGUoKSwgcm9vdEVkaXRhYmxlU3R5bGUpOwor
ICAgICAgICBjYXJldENvbG9yID0gQ2FyZXRCYXNlOjpjb21wdXRlQ2FyZXRDb2xvcihlbGVtZW50
LT5yZW5kZXJlcigpLT5zdHlsZSgpKTsKICAgICB9CiAKICAgICBjb250ZXh0LmZpbGxSZWN0KGNh
cmV0LCBjYXJldENvbG9yKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRnJh
bWVTZWxlY3Rpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRnJhbWVTZWxlY3Rpb24uaApp
bmRleCA0NDg0YWZhZWY2MTFmY2YyOWUxMjk5ZjJlYTM3ZDNiN2U0ZjFlZWU2Li4yODU1OTE3ODRh
OWZlM2EyNzFlODQ4ZTExMmNmMDUyNzM0NzA0ODAwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9lZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9G
cmFtZVNlbGVjdGlvbi5oCkBAIC02Miw2ICs2Miw4IEBAIGVudW0gUmV2ZWFsRXh0ZW50T3B0aW9u
IHsKIGNsYXNzIENhcmV0QmFzZSB7CiAgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoQ2FyZXRCYXNl
KTsKICAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKK3B1YmxpYzoKKyAgICBXRUJDT1JFX0VY
UE9SVCBzdGF0aWMgQ29sb3IgY29tcHV0ZUNhcmV0Q29sb3IoY29uc3QgUmVuZGVyU3R5bGUmIGVs
ZW1lbnRTdHlsZSwgTm9kZSopOwogcHJvdGVjdGVkOgogICAgIGVudW0gQ2FyZXRWaXNpYmlsaXR5
IHsgVmlzaWJsZSwgSGlkZGVuIH07CiAgICAgZXhwbGljaXQgQ2FyZXRCYXNlKENhcmV0VmlzaWJp
bGl0eSA9IEhpZGRlbik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3Mv
V0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9z
L1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbQppbmRleCBlMWMyYmI4NzI1YjYxYTA0ZWVlMGJh
YTcwMGZkM2IxZThmYmI4ZTVmLi42ODUwZDI3M2VmNzllYWM3ZGVkMDg2ZGQzYzE2NDNjOGVkOGFj
OTIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmll
d0ludGVyYWN0aW9uLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRl
bnRWaWV3SW50ZXJhY3Rpb24ubW0KQEAgLTMyMTgsNiArMzIxOCw5IEBAIC0gKE5TRGljdGlvbmFy
eSAqKXRleHRTdHlsaW5nQXRQb3NpdGlvbjooVUlUZXh0UG9zaXRpb24gKilwb3NpdGlvbiBpbkRp
cmVjdGlvbjooCiAKIC0gKFVJQ29sb3IgKilpbnNlcnRpb25Qb2ludENvbG9yCiB7CisjaWYgUExB
VEZPUk0oTUFDQ0FUQUxZU1QpCisgICAgcmV0dXJuIFtzZWxmIGdldEludGVyYWN0aW9uVGludENv
bG9yXTsKKyNlbmRpZgogICAgIHJldHVybiBbc2VsZi50ZXh0SW5wdXRUcmFpdHMgaW5zZXJ0aW9u
UG9pbnRDb2xvcl07CiB9CiAKQEAgLTMyMzEsMjEgKzMyMzQsMjIgQEAgLSAoVUlDb2xvciAqKXNl
bGVjdGlvbkhpZ2hsaWdodENvbG9yCiAgICAgcmV0dXJuIFtzZWxmLnRleHRJbnB1dFRyYWl0cyBz
ZWxlY3Rpb25IaWdobGlnaHRDb2xvcl07CiB9CiAKLS0gKHZvaWQpX3VwZGF0ZUludGVyYWN0aW9u
VGludENvbG9yCistIChVSUNvbG9yKilnZXRJbnRlcmFjdGlvblRpbnRDb2xvcgogewotICAgIFVJ
Q29sb3IgKnRpbnRDb2xvciA9IF57Ci0gICAgICAgIGlmICghc2VsZi53ZWJWaWV3LmNvbmZpZ3Vy
YXRpb24uX3RleHRJbnRlcmFjdGlvbkdlc3R1cmVzRW5hYmxlZCkKLSAgICAgICAgICAgIHJldHVy
biBbVUlDb2xvciBjbGVhckNvbG9yXTsKKyAgICBpZiAoIXNlbGYud2ViVmlldy5jb25maWd1cmF0
aW9uLl90ZXh0SW50ZXJhY3Rpb25HZXN0dXJlc0VuYWJsZWQpCisgICAgICAgIHJldHVybiBbVUlD
b2xvciBjbGVhckNvbG9yXTsKIAotICAgICAgICBpZiAoIV9wYWdlLT5lZGl0b3JTdGF0ZSgpLmlz
TWlzc2luZ1Bvc3RMYXlvdXREYXRhKSB7Ci0gICAgICAgICAgICBXZWJDb3JlOjpDb2xvciBjYXJl
dENvbG9yID0gX3BhZ2UtPmVkaXRvclN0YXRlKCkucG9zdExheW91dERhdGEoKS5jYXJldENvbG9y
OwotICAgICAgICAgICAgaWYgKGNhcmV0Q29sb3IuaXNWYWxpZCgpKQotICAgICAgICAgICAgICAg
IHJldHVybiBbVUlDb2xvciBjb2xvcldpdGhDR0NvbG9yOmNhY2hlZENHQ29sb3IoY2FyZXRDb2xv
cildOwotICAgICAgICB9Ci0gICAgICAgIAotICAgICAgICByZXR1cm4gW3NlbGYgX2luaGVyaXRl
ZEludGVyYWN0aW9uVGludENvbG9yXTsgICAgCi0gICAgfSgpOworICAgIGlmICghX3BhZ2UtPmVk
aXRvclN0YXRlKCkuaXNNaXNzaW5nUG9zdExheW91dERhdGEpIHsKKyAgICAgICAgV2ViQ29yZTo6
Q29sb3IgY2FyZXRDb2xvciA9IF9wYWdlLT5lZGl0b3JTdGF0ZSgpLnBvc3RMYXlvdXREYXRhKCku
Y2FyZXRDb2xvcjsKKyAgICAgICAgaWYgKGNhcmV0Q29sb3IuaXNWYWxpZCgpKQorICAgICAgICAg
ICAgcmV0dXJuIFtVSUNvbG9yIGNvbG9yV2l0aENHQ29sb3I6Y2FjaGVkQ0dDb2xvcihjYXJldENv
bG9yKV07CisgICAgfQorICAgIHJldHVybiBbc2VsZiBfaW5oZXJpdGVkSW50ZXJhY3Rpb25UaW50
Q29sb3JdOworfQogCistICh2b2lkKV91cGRhdGVJbnRlcmFjdGlvblRpbnRDb2xvcgoreworICAg
IFVJQ29sb3IgKnRpbnRDb2xvciA9IFtzZWxmIGdldEludGVyYWN0aW9uVGludENvbG9yXTsKICAg
ICBbX3RyYWl0cyBfc2V0Q29sb3JzVG9NYXRjaFRpbnRDb2xvcjp0aW50Q29sb3JdOwogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9pb3MvV2ViUGFnZUlP
Uy5tbSBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1t
CmluZGV4IDQ3MzgzNTc2Y2YwMzkzZDdhNGVkM2Y1ODc3M2MzOTkzODllZWZhZTYuLjMxMTU0YWNj
ZGY2YzdlOTY0OGU1MGViY2Q5YzljNzZlMDlmNTAwMGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCisrKyBiL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCkBAIC0yNzQsNyArMjc0LDEx
IEBAIHZvaWQgV2ViUGFnZTo6cGxhdGZvcm1FZGl0b3JTdGF0ZShGcmFtZSYgZnJhbWUsIEVkaXRv
clN0YXRlJiByZXN1bHQsIEluY2x1ZGVQb3N0CiAgICAgICAgIGlmIChtX2ZvY3VzZWRFbGVtZW50
ICYmIG1fZm9jdXNlZEVsZW1lbnQtPnJlbmRlcmVyKCkpIHsKICAgICAgICAgICAgIGF1dG8mIHJl
bmRlcmVyID0gKm1fZm9jdXNlZEVsZW1lbnQtPnJlbmRlcmVyKCk7CiAgICAgICAgICAgICBwb3N0
TGF5b3V0RGF0YS5mb2N1c2VkRWxlbWVudFJlY3QgPSByb290Vmlld0ludGVyYWN0aW9uQm91bmRz
Rm9yRWxlbWVudCgqbV9mb2N1c2VkRWxlbWVudCk7CisjaWYgUExBVEZPUk0oTUFDQ0FUQUxZU1Qp
CisgICAgICAgICAgICBwb3N0TGF5b3V0RGF0YS5jYXJldENvbG9yID0gQ2FyZXRCYXNlOjpjb21w
dXRlQ2FyZXRDb2xvcihyZW5kZXJlci5zdHlsZSgpLCByZW5kZXJlci5lbGVtZW50KCkpOworI2Vs
c2UKICAgICAgICAgICAgIHBvc3RMYXlvdXREYXRhLmNhcmV0Q29sb3IgPSByZW5kZXJlci5zdHls
ZSgpLmNhcmV0Q29sb3IoKTsKKyNlbmRpZgogICAgICAgICB9CiAgICAgICAgIGlmIChyZXN1bHQu
aXNDb250ZW50RWRpdGFibGUpIHsKICAgICAgICAgICAgIGlmIChhdXRvIGVkaXRhYmxlUm9vdE9y
Rm9ybUNvbnRyb2wgPSBtYWtlUmVmUHRyKHNlbGVjdGlvbi5yb290RWRpdGFibGVFbGVtZW50KCkp
KSB7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>390832</attachid>
            <date>2020-02-14 16:16:56 -0800</date>
            <delta_ts>2020-02-14 16:29:18 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207789-20200214161656.patch</filename>
            <type>text/plain</type>
            <size>9426</size>
            <attacher name="Megan Gardner">megan_gardner</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU2NjQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDU3NTc2MTU2MWM3YzU5
YWEzYjZhODAyMGIyYmQwNzc1ZGZmZjdmMS4uMTBhMjliNjBjMjUxN2M1N2UzMGM3YThkNjQxY2Jm
MTA4Njc1YjZmMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDIwLTAyLTE0ICBNZWdh
biBHYXJkbmVyICA8bWVnYW5fZ2FyZG5lckBhcHBsZS5jb20+CisKKyAgICAgICAgRml4IGNvbnRl
bnRlZGl0YWJsZSBjYXJldHMgb24gTWFjQ2F0YWx5c3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNzc4OQorICAgICAgICA8cmRhcjovL3Byb2JsZW0v
NTk0Mjk3MTU+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgRmFjdG9yIG91dCBjYXJldCBjb2xvciBjYWxjdWxhdGlvbiB0byBiZSB1c2VkIGluIFdlYlBh
Z2VJT1MuCisKKyAgICAgICAgRml4ZXMgRWRpdG9yU3RhdGVUZXN0cy5DYXJldENvbG9ySW5Db250
ZW50RWRpdGFibGUuCisKKyAgICAgICAgKiBlZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkNhcmV0QmFzZTo6Y29tcHV0ZUNhcmV0Q29sb3IpOgorICAgICAgICAo
V2ViQ29yZTo6Q2FyZXRCYXNlOjpwYWludENhcmV0IGNvbnN0KToKKyAgICAgICAgKiBlZGl0aW5n
L0ZyYW1lU2VsZWN0aW9uLmg6CisKIDIwMjAtMDItMTQgIEFudG9pbmUgUXVpbnQgIDxncmFvdXRz
QHdlYmtpdC5vcmc+CiAKICAgICAgICAgW1dlYiBBbmltYXRpb25zXSBNaXNzaW5nIGNhbGwgdG8g
RG9jdW1lbnRUaW1lbGluZTo6cmVzdW1lQW5pbWF0aW9ucygpIGluIEZyYW1lOjpyZXN1bWVBY3Rp
dmVET01PYmplY3RzQW5kQW5pbWF0aW9ucygpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGYyNjZmMWU3YTlhZDlmNzc1
MzZjODZiMzk0YTVmYWY2NDFmNWViMTkuLjY1ZGIyNjA3NGU0YjkxZDlmZGE5MTEzNzJjODkyM2Yw
MDRkZWJjOTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjAtMDItMTQgIE1lZ2FuIEdh
cmRuZXIgIDxtZWdhbl9nYXJkbmVyQGFwcGxlLmNvbT4KKworICAgICAgICBGaXggY29udGVudGVk
aXRhYmxlIGNhcmV0cyBvbiBNYWNDYXRhbHlzdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA3Nzg5CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81OTQy
OTcxNT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBC
ZWNhdXNlIFVJS2l0IG9ubHkgdXNlcyBsYWJlbCBjb2xvciBmb3IgdGhlIGNhcmV0IGluIE1hY0Nh
dGxheXN0LCAKKyAgICAgICAgd2UgbmVlZCBza2lwIHRleHQgaW5wdXQgdHJhaXRzIGFuZCBzZW5k
IHRoZSBjb3JyZWN0bHkgY2FsY3VsYXRlZCBjb2xvciAKKyAgICAgICAgdG8gVUlLaXQuCisKKyAg
ICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbToKKyAgICAg
ICAgKC1bV0tDb250ZW50VmlldyBpbnNlcnRpb25Qb2ludENvbG9yXSk6CisgICAgICAgICgtW1dL
Q29udGVudFZpZXcgZ2V0SW50ZXJhY3Rpb25UaW50Q29sb3JdKToKKyAgICAgICAgKC1bV0tDb250
ZW50VmlldyBfdXBkYXRlSW50ZXJhY3Rpb25UaW50Q29sb3JdKToKKyAgICAgICAgKiBXZWJQcm9j
ZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW06CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6
OnBsYXRmb3JtRWRpdG9yU3RhdGUgY29uc3QpOgorCiAyMDIwLTAyLTE0ICBXZW5zb24gSHNpZWgg
IDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIGZpeCB0aGUg
aU9TIDEzLjEgYnVpbGQgYWZ0ZXIgcjI1NjUyMApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
ZWRpdGluZy9GcmFtZVNlbGVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0ZyYW1l
U2VsZWN0aW9uLmNwcAppbmRleCAyZDQxYjczMmYwZGZhOTc2NjAyOTRlYTBlZGViYjE1Yzk4YzY2
ZTA2Li5mY2JjZDY2ZDdhYmFhMzhmNjk0N2IyOTUzODBhM2I1OWEwMDA3Zjc1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9lZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmNwcApAQCAtMTc2OCw2ICsxNzY4LDIxIEBA
IHZvaWQgRnJhbWVTZWxlY3Rpb246OnBhaW50Q2FyZXQoR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0
LCBjb25zdCBMYXlvdXRQb2ludCYgcGFpCiAgICAgICAgIENhcmV0QmFzZTo6cGFpbnRDYXJldCht
X3NlbGVjdGlvbi5zdGFydCgpLmRlcHJlY2F0ZWROb2RlKCksIGNvbnRleHQsIHBhaW50T2Zmc2V0
LCBjbGlwUmVjdCk7CiB9CiAKK0NvbG9yIENhcmV0QmFzZTo6Y29tcHV0ZUNhcmV0Q29sb3IoY29u
c3QgUmVuZGVyU3R5bGUmIGVsZW1lbnRTdHlsZSwgTm9kZSogbm9kZSkKK3sKKyAgICBhdXRvKiBy
b290RWRpdGFibGVFbGVtZW50ID0gbm9kZSA/IG5vZGUtPnJvb3RFZGl0YWJsZUVsZW1lbnQoKSA6
IG51bGxwdHI7CisgICAgYXV0byogcm9vdEVkaXRhYmxlU3R5bGUgPSByb290RWRpdGFibGVFbGVt
ZW50ICYmIHJvb3RFZGl0YWJsZUVsZW1lbnQtPnJlbmRlcmVyKCkgPyAmcm9vdEVkaXRhYmxlRWxl
bWVudC0+cmVuZGVyZXIoKS0+c3R5bGUoKSA6IG51bGxwdHI7CisgICAgLy8gQ1NTIHZhbHVlICJh
dXRvIiBpcyB0cmVhdGVkIGFzIGFuIGludmFsaWQgY29sb3IuCisgICAgaWYgKCFlbGVtZW50U3R5
bGUuY2FyZXRDb2xvcigpLmlzVmFsaWQoKSAmJiByb290RWRpdGFibGVTdHlsZSkgeworICAgICAg
ICBhdXRvIHJvb3RFZGl0YWJsZUJhY2tncm91bmRDb2xvciA9IHJvb3RFZGl0YWJsZVN0eWxlLT52
aXNpdGVkRGVwZW5kZW50Q29sb3JXaXRoQ29sb3JGaWx0ZXIoQ1NTUHJvcGVydHlCYWNrZ3JvdW5k
Q29sb3IpOworICAgICAgICBhdXRvIGVsZW1lbnRCYWNrZ3JvdW5kQ29sb3IgPSBlbGVtZW50U3R5
bGUudmlzaXRlZERlcGVuZGVudENvbG9yV2l0aENvbG9yRmlsdGVyKENTU1Byb3BlcnR5QmFja2dy
b3VuZENvbG9yKTsKKyAgICAgICAgYXV0byBkaXNhcHBlYXJzSW50b0JhY2tncm91bmQgPSByb290
RWRpdGFibGVCYWNrZ3JvdW5kQ29sb3IuYmxlbmQoZWxlbWVudEJhY2tncm91bmRDb2xvcikgPT0g
cm9vdEVkaXRhYmxlQmFja2dyb3VuZENvbG9yOworICAgICAgICBpZiAoZGlzYXBwZWFyc0ludG9C
YWNrZ3JvdW5kKQorICAgICAgICAgICAgcmV0dXJuIHJvb3RFZGl0YWJsZVN0eWxlLT52aXNpdGVk
RGVwZW5kZW50Q29sb3JXaXRoQ29sb3JGaWx0ZXIoQ1NTUHJvcGVydHlDYXJldENvbG9yKTsKKyAg
ICB9CisgICAgcmV0dXJuIGVsZW1lbnRTdHlsZS52aXNpdGVkRGVwZW5kZW50Q29sb3JXaXRoQ29s
b3JGaWx0ZXIoQ1NTUHJvcGVydHlDYXJldENvbG9yKTsKK30KKwogdm9pZCBDYXJldEJhc2U6OnBh
aW50Q2FyZXQoTm9kZSogbm9kZSwgR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0LCBjb25zdCBMYXlv
dXRQb2ludCYgcGFpbnRPZmZzZXQsIGNvbnN0IExheW91dFJlY3QmIGNsaXBSZWN0KSBjb25zdAog
ewogI2lmIEVOQUJMRShURVhUX0NBUkVUKQpAQCAtMTc4NCwyMiArMTc5OSw4IEBAIHZvaWQgQ2Fy
ZXRCYXNlOjpwYWludENhcmV0KE5vZGUqIG5vZGUsIEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCwg
Y29uc3QgTGF5b3V0UG9pCiAKICAgICBDb2xvciBjYXJldENvbG9yID0gQ29sb3I6OmJsYWNrOwog
ICAgIEVsZW1lbnQqIGVsZW1lbnQgPSBpczxFbGVtZW50Pigqbm9kZSkgPyBkb3duY2FzdDxFbGVt
ZW50Pihub2RlKSA6IG5vZGUtPnBhcmVudEVsZW1lbnQoKTsKLSAgICBpZiAoZWxlbWVudCAmJiBl
bGVtZW50LT5yZW5kZXJlcigpKSB7Ci0gICAgICAgIGF1dG8gY29tcHV0ZUNhcmV0Q29sb3IgPSBb
XSAoY29uc3QgUmVuZGVyU3R5bGUmIGVsZW1lbnRTdHlsZSwgY29uc3QgUmVuZGVyU3R5bGUqIHJv
b3RFZGl0YWJsZVN0eWxlKSB7Ci0gICAgICAgICAgICAvLyBDU1MgdmFsdWUgImF1dG8iIGlzIHRy
ZWF0ZWQgYXMgYW4gaW52YWxpZCBjb2xvci4KLSAgICAgICAgICAgIGlmICghZWxlbWVudFN0eWxl
LmNhcmV0Q29sb3IoKS5pc1ZhbGlkKCkgJiYgcm9vdEVkaXRhYmxlU3R5bGUpIHsKLSAgICAgICAg
ICAgICAgICBhdXRvIHJvb3RFZGl0YWJsZUJhY2tncm91bmRDb2xvciA9IHJvb3RFZGl0YWJsZVN0
eWxlLT52aXNpdGVkRGVwZW5kZW50Q29sb3JXaXRoQ29sb3JGaWx0ZXIoQ1NTUHJvcGVydHlCYWNr
Z3JvdW5kQ29sb3IpOwotICAgICAgICAgICAgICAgIGF1dG8gZWxlbWVudEJhY2tncm91bmRDb2xv
ciA9IGVsZW1lbnRTdHlsZS52aXNpdGVkRGVwZW5kZW50Q29sb3JXaXRoQ29sb3JGaWx0ZXIoQ1NT
UHJvcGVydHlCYWNrZ3JvdW5kQ29sb3IpOwotICAgICAgICAgICAgICAgIGF1dG8gZGlzYXBwZWFy
c0ludG9CYWNrZ3JvdW5kID0gcm9vdEVkaXRhYmxlQmFja2dyb3VuZENvbG9yLmJsZW5kKGVsZW1l
bnRCYWNrZ3JvdW5kQ29sb3IpID09IHJvb3RFZGl0YWJsZUJhY2tncm91bmRDb2xvcjsKLSAgICAg
ICAgICAgICAgICBpZiAoZGlzYXBwZWFyc0ludG9CYWNrZ3JvdW5kKQotICAgICAgICAgICAgICAg
ICAgICByZXR1cm4gcm9vdEVkaXRhYmxlU3R5bGUtPnZpc2l0ZWREZXBlbmRlbnRDb2xvcldpdGhD
b2xvckZpbHRlcihDU1NQcm9wZXJ0eUNhcmV0Q29sb3IpOwotICAgICAgICAgICAgfQotICAgICAg
ICAgICAgcmV0dXJuIGVsZW1lbnRTdHlsZS52aXNpdGVkRGVwZW5kZW50Q29sb3JXaXRoQ29sb3JG
aWx0ZXIoQ1NTUHJvcGVydHlDYXJldENvbG9yKTsKLSAgICAgICAgfTsKLSAgICAgICAgYXV0byog
cm9vdEVkaXRhYmxlRWxlbWVudCA9IG5vZGUtPnJvb3RFZGl0YWJsZUVsZW1lbnQoKTsKLSAgICAg
ICAgYXV0byogcm9vdEVkaXRhYmxlU3R5bGUgPSByb290RWRpdGFibGVFbGVtZW50ICYmIHJvb3RF
ZGl0YWJsZUVsZW1lbnQtPnJlbmRlcmVyKCkgPyAmcm9vdEVkaXRhYmxlRWxlbWVudC0+cmVuZGVy
ZXIoKS0+c3R5bGUoKSA6IG51bGxwdHI7Ci0gICAgICAgIGNhcmV0Q29sb3IgPSBjb21wdXRlQ2Fy
ZXRDb2xvcihlbGVtZW50LT5yZW5kZXJlcigpLT5zdHlsZSgpLCByb290RWRpdGFibGVTdHlsZSk7
Ci0gICAgfQorICAgIGlmIChlbGVtZW50ICYmIGVsZW1lbnQtPnJlbmRlcmVyKCkpCisgICAgICAg
IGNhcmV0Q29sb3IgPSBDYXJldEJhc2U6OmNvbXB1dGVDYXJldENvbG9yKGVsZW1lbnQtPnJlbmRl
cmVyKCktPnN0eWxlKCkpOwogCiAgICAgY29udGV4dC5maWxsUmVjdChjYXJldCwgY2FyZXRDb2xv
cik7CiAjZWxzZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9GcmFtZVNlbGVj
dGlvbi5oIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9GcmFtZVNlbGVjdGlvbi5oCmluZGV4IDQ0
ODRhZmFlZjYxMWZjZjI5ZTEyOTlmMmVhMzdkM2I3ZTRmMWVlZTYuLjY4MjdiZDVlOWZkMTQ4ZWIz
OTQ0ODZhNzM5MDdhYWE0MDU5MTUzYzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRp
bmcvRnJhbWVTZWxlY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0ZyYW1lU2Vs
ZWN0aW9uLmgKQEAgLTYyLDYgKzYyLDggQEAgZW51bSBSZXZlYWxFeHRlbnRPcHRpb24gewogY2xh
c3MgQ2FyZXRCYXNlIHsKICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShDYXJldEJhc2UpOwogICAg
IFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGljOgorICAgIFdFQkNPUkVfRVhQT1JUIHN0
YXRpYyBDb2xvciBjb21wdXRlQ2FyZXRDb2xvcihjb25zdCBSZW5kZXJTdHlsZSYgZWxlbWVudFN0
eWxlLCBOb2RlKiA9IG51bGxwdHIpOwogcHJvdGVjdGVkOgogICAgIGVudW0gQ2FyZXRWaXNpYmls
aXR5IHsgVmlzaWJsZSwgSGlkZGVuIH07CiAgICAgZXhwbGljaXQgQ2FyZXRCYXNlKENhcmV0Vmlz
aWJpbGl0eSA9IEhpZGRlbik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9p
b3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
aW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbQppbmRleCBlMWMyYmI4NzI1YjYxYTA0ZWVl
MGJhYTcwMGZkM2IxZThmYmI4ZTVmLi40ZGIxMTkwMTJmMGY2YjRkZWYxMTdiYjAzZTQzMjdiMzg2
YWZjZTQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50
Vmlld0ludGVyYWN0aW9uLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0Nv
bnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0KQEAgLTMyMTgsNyArMzIxOCwxMCBAQCAtIChOU0RpY3Rp
b25hcnkgKil0ZXh0U3R5bGluZ0F0UG9zaXRpb246KFVJVGV4dFBvc2l0aW9uICopcG9zaXRpb24g
aW5EaXJlY3Rpb246KAogCiAtIChVSUNvbG9yICopaW5zZXJ0aW9uUG9pbnRDb2xvcgogewotICAg
IHJldHVybiBbc2VsZi50ZXh0SW5wdXRUcmFpdHMgaW5zZXJ0aW9uUG9pbnRDb2xvcl07CisjaWYg
UExBVEZPUk0oTUFDQ0FUQUxZU1QpCisgICAgcmV0dXJuIFtzZWxmIF9pbnRlcmFjdGlvblRpbnRD
b2xvcl07CisjZW5kaWYKKyAgICByZXR1cm4gW3NlbGYudGV4dElucHV0VHJhaXRzIGluc2VydGlv
blBvaVdlYlBhZ2VJT1MubW1udENvbG9yXTsKIH0KIAogLSAoVUlDb2xvciAqKXNlbGVjdGlvbkJh
ckNvbG9yCkBAIC0zMjMxLDIxICszMjM0LDIyIEBAIC0gKFVJQ29sb3IgKilzZWxlY3Rpb25IaWdo
bGlnaHRDb2xvcgogICAgIHJldHVybiBbc2VsZi50ZXh0SW5wdXRUcmFpdHMgc2VsZWN0aW9uSGln
aGxpZ2h0Q29sb3JdOwogfQogCi0tICh2b2lkKV91cGRhdGVJbnRlcmFjdGlvblRpbnRDb2xvcgor
LSAoVUlDb2xvciopX2ludGVyYWN0aW9uVGludENvbG9yCiB7Ci0gICAgVUlDb2xvciAqdGludENv
bG9yID0gXnsKLSAgICAgICAgaWYgKCFzZWxmLndlYlZpZXcuY29uZmlndXJhdGlvbi5fdGV4dElu
dGVyYWN0aW9uR2VzdHVyZXNFbmFibGVkKQotICAgICAgICAgICAgcmV0dXJuIFtVSUNvbG9yIGNs
ZWFyQ29sb3JdOworICAgIGlmICghc2VsZi53ZWJWaWV3LmNvbmZpZ3VyYXRpb24uX3RleHRJbnRl
cmFjdGlvbkdlc3R1cmVzRW5hYmxlZCkKKyAgICAgICAgcmV0dXJuIFtVSUNvbG9yIGNsZWFyQ29s
b3JdOwogCi0gICAgICAgIGlmICghX3BhZ2UtPmVkaXRvclN0YXRlKCkuaXNNaXNzaW5nUG9zdExh
eW91dERhdGEpIHsKLSAgICAgICAgICAgIFdlYkNvcmU6OkNvbG9yIGNhcmV0Q29sb3IgPSBfcGFn
ZS0+ZWRpdG9yU3RhdGUoKS5wb3N0TGF5b3V0RGF0YSgpLmNhcmV0Q29sb3I7Ci0gICAgICAgICAg
ICBpZiAoY2FyZXRDb2xvci5pc1ZhbGlkKCkpCi0gICAgICAgICAgICAgICAgcmV0dXJuIFtVSUNv
bG9yIGNvbG9yV2l0aENHQ29sb3I6Y2FjaGVkQ0dDb2xvcihjYXJldENvbG9yKV07Ci0gICAgICAg
IH0KLSAgICAgICAgCi0gICAgICAgIHJldHVybiBbc2VsZiBfaW5oZXJpdGVkSW50ZXJhY3Rpb25U
aW50Q29sb3JdOyAgICAKLSAgICB9KCk7CisgICAgaWYgKCFfcGFnZS0+ZWRpdG9yU3RhdGUoKS5p
c01pc3NpbmdQb3N0TGF5b3V0RGF0YSkgeworICAgICAgICBXZWJDb3JlOjpDb2xvciBjYXJldENv
bG9yID0gX3BhZ2UtPmVkaXRvclN0YXRlKCkucG9zdExheW91dERhdGEoKS5jYXJldENvbG9yOwor
ICAgICAgICBpZiAoY2FyZXRDb2xvci5pc1ZhbGlkKCkpCisgICAgICAgICAgICByZXR1cm4gW1VJ
Q29sb3IgY29sb3JXaXRoQ0dDb2xvcjpjYWNoZWRDR0NvbG9yKGNhcmV0Q29sb3IpXTsKKyAgICB9
CisgICAgcmV0dXJuIFtzZWxmIF9pbmhlcml0ZWRJbnRlcmFjdGlvblRpbnRDb2xvcl07Cit9CiAK
Ky0gKHZvaWQpX3VwZGF0ZUludGVyYWN0aW9uVGludENvbG9yCit7CisgICAgVUlDb2xvciAqdGlu
dENvbG9yID0gW3NlbGYgX2ludGVyYWN0aW9uVGludENvbG9yXTsKICAgICBbX3RyYWl0cyBfc2V0
Q29sb3JzVG9NYXRjaFRpbnRDb2xvcjp0aW50Q29sb3JdOwogfQogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9pb3MvV2ViUGFnZUlPUy5tbSBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCmluZGV4IDQ3MzgzNTc2
Y2YwMzkzZDdhNGVkM2Y1ODc3M2MzOTkzODllZWZhZTYuLmUzZmI2YmRmMjk1YzlmYjgwZmNlNTI0
ZTZlNWM4ZmY5NDRjZTVhM2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9X
ZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9X
ZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCkBAIC0yNzQsNyArMjc0LDEzIEBAIHZvaWQgV2ViUGFn
ZTo6cGxhdGZvcm1FZGl0b3JTdGF0ZShGcmFtZSYgZnJhbWUsIEVkaXRvclN0YXRlJiByZXN1bHQs
IEluY2x1ZGVQb3N0CiAgICAgICAgIGlmIChtX2ZvY3VzZWRFbGVtZW50ICYmIG1fZm9jdXNlZEVs
ZW1lbnQtPnJlbmRlcmVyKCkpIHsKICAgICAgICAgICAgIGF1dG8mIHJlbmRlcmVyID0gKm1fZm9j
dXNlZEVsZW1lbnQtPnJlbmRlcmVyKCk7CiAgICAgICAgICAgICBwb3N0TGF5b3V0RGF0YS5mb2N1
c2VkRWxlbWVudFJlY3QgPSByb290Vmlld0ludGVyYWN0aW9uQm91bmRzRm9yRWxlbWVudCgqbV9m
b2N1c2VkRWxlbWVudCk7CisjaWYgUExBVEZPUk0oTUFDQ0FUQUxZU1QpCisgICAgICAgICAgICAv
LyBPbiBNYWNDYXRhbHlzdCwgd2UgbmVlZCB0byBjYWxjdWxhdGUgdGhlIGNhcmV0IGNvbG9yIHRo
ZSBzYW1lIHdheSB0aGF0IHdlIGRvIG9uIG1hYyB0byBtYWludGFpbiBhIGNvbnNpc3RlbnQgbG9v
ay4KKyAgICAgICAgICAgIHBvc3RMYXlvdXREYXRhLmNhcmV0Q29sb3IgPSBDYXJldEJhc2U6OmNv
bXB1dGVDYXJldENvbG9yKHJlbmRlcmVyLnN0eWxlKCksIHJlbmRlcmVyLmVsZW1lbnQoKSk7Cisj
ZWxzZQorICAgICAgICAgICAgLy8gT24gaU9TLCB3ZSB3YW50IHRvIGZhbGwgYmFjayB0byB0aGUg
dGludENvbG9yLCBhbmQgb25seSBvdmVycmlkZSBpZiBDU1MgaGFzIGV4cGxpY2l0bHkgc3BlY2lm
aWVkIGEgY3VzdG9tIGNvbG9yLgogICAgICAgICAgICAgcG9zdExheW91dERhdGEuY2FyZXRDb2xv
ciA9IHJlbmRlcmVyLnN0eWxlKCkuY2FyZXRDb2xvcigpOworI2VuZGlmCiAgICAgICAgIH0KICAg
ICAgICAgaWYgKHJlc3VsdC5pc0NvbnRlbnRFZGl0YWJsZSkgewogICAgICAgICAgICAgaWYgKGF1
dG8gZWRpdGFibGVSb290T3JGb3JtQ29udHJvbCA9IG1ha2VSZWZQdHIoc2VsZWN0aW9uLnJvb3RF
ZGl0YWJsZUVsZW1lbnQoKSkpIHsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>390833</attachid>
            <date>2020-02-14 16:29:21 -0800</date>
            <delta_ts>2020-02-17 15:31:32 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207789-20200214162920.patch</filename>
            <type>text/plain</type>
            <size>9320</size>
            <attacher name="Megan Gardner">megan_gardner</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU2NjQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDU3NTc2MTU2MWM3YzU5
YWEzYjZhODAyMGIyYmQwNzc1ZGZmZjdmMS4uMTBhMjliNjBjMjUxN2M1N2UzMGM3YThkNjQxY2Jm
MTA4Njc1YjZmMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDIwLTAyLTE0ICBNZWdh
biBHYXJkbmVyICA8bWVnYW5fZ2FyZG5lckBhcHBsZS5jb20+CisKKyAgICAgICAgRml4IGNvbnRl
bnRlZGl0YWJsZSBjYXJldHMgb24gTWFjQ2F0YWx5c3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNzc4OQorICAgICAgICA8cmRhcjovL3Byb2JsZW0v
NTk0Mjk3MTU+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgRmFjdG9yIG91dCBjYXJldCBjb2xvciBjYWxjdWxhdGlvbiB0byBiZSB1c2VkIGluIFdlYlBh
Z2VJT1MuCisKKyAgICAgICAgRml4ZXMgRWRpdG9yU3RhdGVUZXN0cy5DYXJldENvbG9ySW5Db250
ZW50RWRpdGFibGUuCisKKyAgICAgICAgKiBlZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkNhcmV0QmFzZTo6Y29tcHV0ZUNhcmV0Q29sb3IpOgorICAgICAgICAo
V2ViQ29yZTo6Q2FyZXRCYXNlOjpwYWludENhcmV0IGNvbnN0KToKKyAgICAgICAgKiBlZGl0aW5n
L0ZyYW1lU2VsZWN0aW9uLmg6CisKIDIwMjAtMDItMTQgIEFudG9pbmUgUXVpbnQgIDxncmFvdXRz
QHdlYmtpdC5vcmc+CiAKICAgICAgICAgW1dlYiBBbmltYXRpb25zXSBNaXNzaW5nIGNhbGwgdG8g
RG9jdW1lbnRUaW1lbGluZTo6cmVzdW1lQW5pbWF0aW9ucygpIGluIEZyYW1lOjpyZXN1bWVBY3Rp
dmVET01PYmplY3RzQW5kQW5pbWF0aW9ucygpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGYyNjZmMWU3YTlhZDlmNzc1
MzZjODZiMzk0YTVmYWY2NDFmNWViMTkuLjY1ZGIyNjA3NGU0YjkxZDlmZGE5MTEzNzJjODkyM2Yw
MDRkZWJjOTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjAtMDItMTQgIE1lZ2FuIEdh
cmRuZXIgIDxtZWdhbl9nYXJkbmVyQGFwcGxlLmNvbT4KKworICAgICAgICBGaXggY29udGVudGVk
aXRhYmxlIGNhcmV0cyBvbiBNYWNDYXRhbHlzdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA3Nzg5CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81OTQy
OTcxNT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBC
ZWNhdXNlIFVJS2l0IG9ubHkgdXNlcyBsYWJlbCBjb2xvciBmb3IgdGhlIGNhcmV0IGluIE1hY0Nh
dGxheXN0LCAKKyAgICAgICAgd2UgbmVlZCBza2lwIHRleHQgaW5wdXQgdHJhaXRzIGFuZCBzZW5k
IHRoZSBjb3JyZWN0bHkgY2FsY3VsYXRlZCBjb2xvciAKKyAgICAgICAgdG8gVUlLaXQuCisKKyAg
ICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbToKKyAgICAg
ICAgKC1bV0tDb250ZW50VmlldyBpbnNlcnRpb25Qb2ludENvbG9yXSk6CisgICAgICAgICgtW1dL
Q29udGVudFZpZXcgZ2V0SW50ZXJhY3Rpb25UaW50Q29sb3JdKToKKyAgICAgICAgKC1bV0tDb250
ZW50VmlldyBfdXBkYXRlSW50ZXJhY3Rpb25UaW50Q29sb3JdKToKKyAgICAgICAgKiBXZWJQcm9j
ZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW06CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6
OnBsYXRmb3JtRWRpdG9yU3RhdGUgY29uc3QpOgorCiAyMDIwLTAyLTE0ICBXZW5zb24gSHNpZWgg
IDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIGZpeCB0aGUg
aU9TIDEzLjEgYnVpbGQgYWZ0ZXIgcjI1NjUyMApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
ZWRpdGluZy9GcmFtZVNlbGVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0ZyYW1l
U2VsZWN0aW9uLmNwcAppbmRleCAyZDQxYjczMmYwZGZhOTc2NjAyOTRlYTBlZGViYjE1Yzk4YzY2
ZTA2Li5hNTE2OWNlZGZiN2EzMjBhMWUyMGYxZjkyNzVlNDJjNWJlY2M0Yjg5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9lZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmNwcApAQCAtMTc2OCw2ICsxNzY4LDIxIEBA
IHZvaWQgRnJhbWVTZWxlY3Rpb246OnBhaW50Q2FyZXQoR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0
LCBjb25zdCBMYXlvdXRQb2ludCYgcGFpCiAgICAgICAgIENhcmV0QmFzZTo6cGFpbnRDYXJldCht
X3NlbGVjdGlvbi5zdGFydCgpLmRlcHJlY2F0ZWROb2RlKCksIGNvbnRleHQsIHBhaW50T2Zmc2V0
LCBjbGlwUmVjdCk7CiB9CiAKK0NvbG9yIENhcmV0QmFzZTo6Y29tcHV0ZUNhcmV0Q29sb3IoY29u
c3QgUmVuZGVyU3R5bGUmIGVsZW1lbnRTdHlsZSwgTm9kZSogbm9kZSkKK3sKKyAgICBhdXRvKiBy
b290RWRpdGFibGVFbGVtZW50ID0gbm9kZSA/IG5vZGUtPnJvb3RFZGl0YWJsZUVsZW1lbnQoKSA6
IG51bGxwdHI7CisgICAgYXV0byogcm9vdEVkaXRhYmxlU3R5bGUgPSByb290RWRpdGFibGVFbGVt
ZW50ICYmIHJvb3RFZGl0YWJsZUVsZW1lbnQtPnJlbmRlcmVyKCkgPyAmcm9vdEVkaXRhYmxlRWxl
bWVudC0+cmVuZGVyZXIoKS0+c3R5bGUoKSA6IG51bGxwdHI7CisgICAgLy8gQ1NTIHZhbHVlICJh
dXRvIiBpcyB0cmVhdGVkIGFzIGFuIGludmFsaWQgY29sb3IuCisgICAgaWYgKCFlbGVtZW50U3R5
bGUuY2FyZXRDb2xvcigpLmlzVmFsaWQoKSAmJiByb290RWRpdGFibGVTdHlsZSkgeworICAgICAg
ICBhdXRvIHJvb3RFZGl0YWJsZUJhY2tncm91bmRDb2xvciA9IHJvb3RFZGl0YWJsZVN0eWxlLT52
aXNpdGVkRGVwZW5kZW50Q29sb3JXaXRoQ29sb3JGaWx0ZXIoQ1NTUHJvcGVydHlCYWNrZ3JvdW5k
Q29sb3IpOworICAgICAgICBhdXRvIGVsZW1lbnRCYWNrZ3JvdW5kQ29sb3IgPSBlbGVtZW50U3R5
bGUudmlzaXRlZERlcGVuZGVudENvbG9yV2l0aENvbG9yRmlsdGVyKENTU1Byb3BlcnR5QmFja2dy
b3VuZENvbG9yKTsKKyAgICAgICAgYXV0byBkaXNhcHBlYXJzSW50b0JhY2tncm91bmQgPSByb290
RWRpdGFibGVCYWNrZ3JvdW5kQ29sb3IuYmxlbmQoZWxlbWVudEJhY2tncm91bmRDb2xvcikgPT0g
cm9vdEVkaXRhYmxlQmFja2dyb3VuZENvbG9yOworICAgICAgICBpZiAoZGlzYXBwZWFyc0ludG9C
YWNrZ3JvdW5kKQorICAgICAgICAgICAgcmV0dXJuIHJvb3RFZGl0YWJsZVN0eWxlLT52aXNpdGVk
RGVwZW5kZW50Q29sb3JXaXRoQ29sb3JGaWx0ZXIoQ1NTUHJvcGVydHlDYXJldENvbG9yKTsKKyAg
ICB9CisgICAgcmV0dXJuIGVsZW1lbnRTdHlsZS52aXNpdGVkRGVwZW5kZW50Q29sb3JXaXRoQ29s
b3JGaWx0ZXIoQ1NTUHJvcGVydHlDYXJldENvbG9yKTsKK30KKwogdm9pZCBDYXJldEJhc2U6OnBh
aW50Q2FyZXQoTm9kZSogbm9kZSwgR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0LCBjb25zdCBMYXlv
dXRQb2ludCYgcGFpbnRPZmZzZXQsIGNvbnN0IExheW91dFJlY3QmIGNsaXBSZWN0KSBjb25zdAog
ewogI2lmIEVOQUJMRShURVhUX0NBUkVUKQpAQCAtMTc4NCwyMiArMTc5OSw4IEBAIHZvaWQgQ2Fy
ZXRCYXNlOjpwYWludENhcmV0KE5vZGUqIG5vZGUsIEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCwg
Y29uc3QgTGF5b3V0UG9pCiAKICAgICBDb2xvciBjYXJldENvbG9yID0gQ29sb3I6OmJsYWNrOwog
ICAgIEVsZW1lbnQqIGVsZW1lbnQgPSBpczxFbGVtZW50Pigqbm9kZSkgPyBkb3duY2FzdDxFbGVt
ZW50Pihub2RlKSA6IG5vZGUtPnBhcmVudEVsZW1lbnQoKTsKLSAgICBpZiAoZWxlbWVudCAmJiBl
bGVtZW50LT5yZW5kZXJlcigpKSB7Ci0gICAgICAgIGF1dG8gY29tcHV0ZUNhcmV0Q29sb3IgPSBb
XSAoY29uc3QgUmVuZGVyU3R5bGUmIGVsZW1lbnRTdHlsZSwgY29uc3QgUmVuZGVyU3R5bGUqIHJv
b3RFZGl0YWJsZVN0eWxlKSB7Ci0gICAgICAgICAgICAvLyBDU1MgdmFsdWUgImF1dG8iIGlzIHRy
ZWF0ZWQgYXMgYW4gaW52YWxpZCBjb2xvci4KLSAgICAgICAgICAgIGlmICghZWxlbWVudFN0eWxl
LmNhcmV0Q29sb3IoKS5pc1ZhbGlkKCkgJiYgcm9vdEVkaXRhYmxlU3R5bGUpIHsKLSAgICAgICAg
ICAgICAgICBhdXRvIHJvb3RFZGl0YWJsZUJhY2tncm91bmRDb2xvciA9IHJvb3RFZGl0YWJsZVN0
eWxlLT52aXNpdGVkRGVwZW5kZW50Q29sb3JXaXRoQ29sb3JGaWx0ZXIoQ1NTUHJvcGVydHlCYWNr
Z3JvdW5kQ29sb3IpOwotICAgICAgICAgICAgICAgIGF1dG8gZWxlbWVudEJhY2tncm91bmRDb2xv
ciA9IGVsZW1lbnRTdHlsZS52aXNpdGVkRGVwZW5kZW50Q29sb3JXaXRoQ29sb3JGaWx0ZXIoQ1NT
UHJvcGVydHlCYWNrZ3JvdW5kQ29sb3IpOwotICAgICAgICAgICAgICAgIGF1dG8gZGlzYXBwZWFy
c0ludG9CYWNrZ3JvdW5kID0gcm9vdEVkaXRhYmxlQmFja2dyb3VuZENvbG9yLmJsZW5kKGVsZW1l
bnRCYWNrZ3JvdW5kQ29sb3IpID09IHJvb3RFZGl0YWJsZUJhY2tncm91bmRDb2xvcjsKLSAgICAg
ICAgICAgICAgICBpZiAoZGlzYXBwZWFyc0ludG9CYWNrZ3JvdW5kKQotICAgICAgICAgICAgICAg
ICAgICByZXR1cm4gcm9vdEVkaXRhYmxlU3R5bGUtPnZpc2l0ZWREZXBlbmRlbnRDb2xvcldpdGhD
b2xvckZpbHRlcihDU1NQcm9wZXJ0eUNhcmV0Q29sb3IpOwotICAgICAgICAgICAgfQotICAgICAg
ICAgICAgcmV0dXJuIGVsZW1lbnRTdHlsZS52aXNpdGVkRGVwZW5kZW50Q29sb3JXaXRoQ29sb3JG
aWx0ZXIoQ1NTUHJvcGVydHlDYXJldENvbG9yKTsKLSAgICAgICAgfTsKLSAgICAgICAgYXV0byog
cm9vdEVkaXRhYmxlRWxlbWVudCA9IG5vZGUtPnJvb3RFZGl0YWJsZUVsZW1lbnQoKTsKLSAgICAg
ICAgYXV0byogcm9vdEVkaXRhYmxlU3R5bGUgPSByb290RWRpdGFibGVFbGVtZW50ICYmIHJvb3RF
ZGl0YWJsZUVsZW1lbnQtPnJlbmRlcmVyKCkgPyAmcm9vdEVkaXRhYmxlRWxlbWVudC0+cmVuZGVy
ZXIoKS0+c3R5bGUoKSA6IG51bGxwdHI7Ci0gICAgICAgIGNhcmV0Q29sb3IgPSBjb21wdXRlQ2Fy
ZXRDb2xvcihlbGVtZW50LT5yZW5kZXJlcigpLT5zdHlsZSgpLCByb290RWRpdGFibGVTdHlsZSk7
Ci0gICAgfQorICAgIGlmIChlbGVtZW50ICYmIGVsZW1lbnQtPnJlbmRlcmVyKCkpCisgICAgICAg
IGNhcmV0Q29sb3IgPSBDYXJldEJhc2U6OmNvbXB1dGVDYXJldENvbG9yKGVsZW1lbnQtPnJlbmRl
cmVyKCktPnN0eWxlKCksIG5vZGUpOwogCiAgICAgY29udGV4dC5maWxsUmVjdChjYXJldCwgY2Fy
ZXRDb2xvcik7CiAjZWxzZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9GcmFt
ZVNlbGVjdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9GcmFtZVNlbGVjdGlvbi5oCmlu
ZGV4IDQ0ODRhZmFlZjYxMWZjZjI5ZTEyOTlmMmVhMzdkM2I3ZTRmMWVlZTYuLjI4NTU5MTc4NGE5
ZmUzYTI3MWU4NDhlMTEyY2YwNTI3MzQ3MDQ4MDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2VkaXRpbmcvRnJhbWVTZWxlY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0Zy
YW1lU2VsZWN0aW9uLmgKQEAgLTYyLDYgKzYyLDggQEAgZW51bSBSZXZlYWxFeHRlbnRPcHRpb24g
ewogY2xhc3MgQ2FyZXRCYXNlIHsKICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShDYXJldEJhc2Up
OwogICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGljOgorICAgIFdFQkNPUkVfRVhQ
T1JUIHN0YXRpYyBDb2xvciBjb21wdXRlQ2FyZXRDb2xvcihjb25zdCBSZW5kZXJTdHlsZSYgZWxl
bWVudFN0eWxlLCBOb2RlKik7CiBwcm90ZWN0ZWQ6CiAgICAgZW51bSBDYXJldFZpc2liaWxpdHkg
eyBWaXNpYmxlLCBIaWRkZW4gfTsKICAgICBleHBsaWNpdCBDYXJldEJhc2UoQ2FyZXRWaXNpYmls
aXR5ID0gSGlkZGVuKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9X
S0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3Mv
V0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCmluZGV4IGUxYzJiYjg3MjViNjFhMDRlZWUwYmFh
NzAwZmQzYjFlOGZiYjhlNWYuLjU2M2E1OGY2ODczYzk1Nzg3ZDY1MzdkMGYzNGE2YzQzZWEyYmYx
OTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3
SW50ZXJhY3Rpb24ubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVu
dFZpZXdJbnRlcmFjdGlvbi5tbQpAQCAtMzIxOCw2ICszMjE4LDkgQEAgLSAoTlNEaWN0aW9uYXJ5
ICopdGV4dFN0eWxpbmdBdFBvc2l0aW9uOihVSVRleHRQb3NpdGlvbiAqKXBvc2l0aW9uIGluRGly
ZWN0aW9uOigKIAogLSAoVUlDb2xvciAqKWluc2VydGlvblBvaW50Q29sb3IKIHsKKyNpZiBQTEFU
Rk9STShNQUNDQVRBTFlTVCkKKyAgICByZXR1cm4gW3NlbGYgX2ludGVyYWN0aW9uVGludENvbG9y
XTsKKyNlbmRpZgogICAgIHJldHVybiBbc2VsZi50ZXh0SW5wdXRUcmFpdHMgaW5zZXJ0aW9uUG9p
bnRDb2xvcl07CiB9CiAKQEAgLTMyMzEsMjEgKzMyMzQsMjIgQEAgLSAoVUlDb2xvciAqKXNlbGVj
dGlvbkhpZ2hsaWdodENvbG9yCiAgICAgcmV0dXJuIFtzZWxmLnRleHRJbnB1dFRyYWl0cyBzZWxl
Y3Rpb25IaWdobGlnaHRDb2xvcl07CiB9CiAKLS0gKHZvaWQpX3VwZGF0ZUludGVyYWN0aW9uVGlu
dENvbG9yCistIChVSUNvbG9yKilfaW50ZXJhY3Rpb25UaW50Q29sb3IKIHsKLSAgICBVSUNvbG9y
ICp0aW50Q29sb3IgPSBeewotICAgICAgICBpZiAoIXNlbGYud2ViVmlldy5jb25maWd1cmF0aW9u
Ll90ZXh0SW50ZXJhY3Rpb25HZXN0dXJlc0VuYWJsZWQpCi0gICAgICAgICAgICByZXR1cm4gW1VJ
Q29sb3IgY2xlYXJDb2xvcl07CisgICAgaWYgKCFzZWxmLndlYlZpZXcuY29uZmlndXJhdGlvbi5f
dGV4dEludGVyYWN0aW9uR2VzdHVyZXNFbmFibGVkKQorICAgICAgICByZXR1cm4gW1VJQ29sb3Ig
Y2xlYXJDb2xvcl07CiAKLSAgICAgICAgaWYgKCFfcGFnZS0+ZWRpdG9yU3RhdGUoKS5pc01pc3Np
bmdQb3N0TGF5b3V0RGF0YSkgewotICAgICAgICAgICAgV2ViQ29yZTo6Q29sb3IgY2FyZXRDb2xv
ciA9IF9wYWdlLT5lZGl0b3JTdGF0ZSgpLnBvc3RMYXlvdXREYXRhKCkuY2FyZXRDb2xvcjsKLSAg
ICAgICAgICAgIGlmIChjYXJldENvbG9yLmlzVmFsaWQoKSkKLSAgICAgICAgICAgICAgICByZXR1
cm4gW1VJQ29sb3IgY29sb3JXaXRoQ0dDb2xvcjpjYWNoZWRDR0NvbG9yKGNhcmV0Q29sb3IpXTsK
LSAgICAgICAgfQotICAgICAgICAKLSAgICAgICAgcmV0dXJuIFtzZWxmIF9pbmhlcml0ZWRJbnRl
cmFjdGlvblRpbnRDb2xvcl07ICAgIAotICAgIH0oKTsKKyAgICBpZiAoIV9wYWdlLT5lZGl0b3JT
dGF0ZSgpLmlzTWlzc2luZ1Bvc3RMYXlvdXREYXRhKSB7CisgICAgICAgIFdlYkNvcmU6OkNvbG9y
IGNhcmV0Q29sb3IgPSBfcGFnZS0+ZWRpdG9yU3RhdGUoKS5wb3N0TGF5b3V0RGF0YSgpLmNhcmV0
Q29sb3I7CisgICAgICAgIGlmIChjYXJldENvbG9yLmlzVmFsaWQoKSkKKyAgICAgICAgICAgIHJl
dHVybiBbVUlDb2xvciBjb2xvcldpdGhDR0NvbG9yOmNhY2hlZENHQ29sb3IoY2FyZXRDb2xvcild
OworICAgIH0KKyAgICByZXR1cm4gW3NlbGYgX2luaGVyaXRlZEludGVyYWN0aW9uVGludENvbG9y
XTsKK30KIAorLSAodm9pZClfdXBkYXRlSW50ZXJhY3Rpb25UaW50Q29sb3IKK3sKKyAgICBVSUNv
bG9yICp0aW50Q29sb3IgPSBbc2VsZiBfaW50ZXJhY3Rpb25UaW50Q29sb3JdOwogICAgIFtfdHJh
aXRzIF9zZXRDb2xvcnNUb01hdGNoVGludENvbG9yOnRpbnRDb2xvcl07CiB9CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0KaW5kZXgg
NDczODM1NzZjZjAzOTNkN2E0ZWQzZjU4NzczYzM5OTM4OWVlZmFlNi4uZTNmYjZiZGYyOTVjOWZi
ODBmY2U1MjRlNmU1YzhmZjk0NGNlNWEzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0KKysrIGIvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0KQEAgLTI3NCw3ICsyNzQsMTMgQEAgdm9p
ZCBXZWJQYWdlOjpwbGF0Zm9ybUVkaXRvclN0YXRlKEZyYW1lJiBmcmFtZSwgRWRpdG9yU3RhdGUm
IHJlc3VsdCwgSW5jbHVkZVBvc3QKICAgICAgICAgaWYgKG1fZm9jdXNlZEVsZW1lbnQgJiYgbV9m
b2N1c2VkRWxlbWVudC0+cmVuZGVyZXIoKSkgewogICAgICAgICAgICAgYXV0byYgcmVuZGVyZXIg
PSAqbV9mb2N1c2VkRWxlbWVudC0+cmVuZGVyZXIoKTsKICAgICAgICAgICAgIHBvc3RMYXlvdXRE
YXRhLmZvY3VzZWRFbGVtZW50UmVjdCA9IHJvb3RWaWV3SW50ZXJhY3Rpb25Cb3VuZHNGb3JFbGVt
ZW50KCptX2ZvY3VzZWRFbGVtZW50KTsKKyNpZiBQTEFURk9STShNQUNDQVRBTFlTVCkKKyAgICAg
ICAgICAgIC8vIE9uIE1hY0NhdGFseXN0LCB3ZSBuZWVkIHRvIGNhbGN1bGF0ZSB0aGUgY2FyZXQg
Y29sb3IgdGhlIHNhbWUgd2F5IHRoYXQgd2UgZG8gb24gbWFjIHRvIG1haW50YWluIGEgY29uc2lz
dGVudCBsb29rLgorICAgICAgICAgICAgcG9zdExheW91dERhdGEuY2FyZXRDb2xvciA9IENhcmV0
QmFzZTo6Y29tcHV0ZUNhcmV0Q29sb3IocmVuZGVyZXIuc3R5bGUoKSwgcmVuZGVyZXIuZWxlbWVu
dCgpKTsKKyNlbHNlCisgICAgICAgICAgICAvLyBPbiBpT1MsIHdlIHdhbnQgdG8gZmFsbCBiYWNr
IHRvIHRoZSB0aW50Q29sb3IsIGFuZCBvbmx5IG92ZXJyaWRlIGlmIENTUyBoYXMgZXhwbGljaXRs
eSBzcGVjaWZpZWQgYSBjdXN0b20gY29sb3IuCiAgICAgICAgICAgICBwb3N0TGF5b3V0RGF0YS5j
YXJldENvbG9yID0gcmVuZGVyZXIuc3R5bGUoKS5jYXJldENvbG9yKCk7CisjZW5kaWYKICAgICAg
ICAgfQogICAgICAgICBpZiAocmVzdWx0LmlzQ29udGVudEVkaXRhYmxlKSB7CiAgICAgICAgICAg
ICBpZiAoYXV0byBlZGl0YWJsZVJvb3RPckZvcm1Db250cm9sID0gbWFrZVJlZlB0cihzZWxlY3Rp
b24ucm9vdEVkaXRhYmxlRWxlbWVudCgpKSkgewo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>390994</attachid>
            <date>2020-02-17 15:31:33 -0800</date>
            <delta_ts>2020-02-18 13:58:41 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207789-20200217153133.patch</filename>
            <type>text/plain</type>
            <size>9522</size>
            <attacher name="Megan Gardner">megan_gardner</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU2NzczCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjkwZTQ1NDU4OTBlMWQy
YzUzYTk4ZjEyYTEyMGI5MWY1OWQ1ZTIxOC4uYWFjM2FkZDJlMTE4YzZlYzdiNTYzYzY4N2JhZWYy
NGI1MWNmZTEzYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDIwLTAyLTE0ICBNZWdh
biBHYXJkbmVyICA8bWVnYW5fZ2FyZG5lckBhcHBsZS5jb20+CisKKyAgICAgICAgRml4IGNvbnRl
bnRlZGl0YWJsZSBjYXJldHMgb24gTWFjQ2F0YWx5c3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNzc4OQorICAgICAgICA8cmRhcjovL3Byb2JsZW0v
NTk0Mjk3MTU+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgRmFjdG9yIG91dCBjYXJldCBjb2xvciBjYWxjdWxhdGlvbiB0byBiZSB1c2VkIGluIFdlYlBh
Z2VJT1MuCisKKyAgICAgICAgRml4ZXMgRWRpdG9yU3RhdGVUZXN0cy5DYXJldENvbG9ySW5Db250
ZW50RWRpdGFibGUuCisKKyAgICAgICAgKiBlZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkNhcmV0QmFzZTo6Y29tcHV0ZUNhcmV0Q29sb3IpOgorICAgICAgICAo
V2ViQ29yZTo6Q2FyZXRCYXNlOjpwYWludENhcmV0IGNvbnN0KToKKyAgICAgICAgKiBlZGl0aW5n
L0ZyYW1lU2VsZWN0aW9uLmg6CisKIDIwMjAtMDItMTcgIFphbGFuIEJ1anRhcyAgPHphbGFuQGFw
cGxlLmNvbT4KIAogICAgICAgICBJbmxpbmUgYm94ZXMgZm9yIGltYWdlcyB0aGF0IHJlcHJlc2Vu
dCBub3RoaW5nIHNob3VsZCBjb2xsYXBzZSB0byBlbXB0eS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggYTljZDE1M2Uw
OTIxNWE4MWVlNWQyY2E5NjgwYTRiOWRiM2VkN2JkNC4uYjg5MGFhYWUyNjcxMjY1MGNhNGQ4YzI4
MjgxYTk1MDI2NzI2ZmZmZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysr
IGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAyMC0wMi0xNCAg
TWVnYW4gR2FyZG5lciAgPG1lZ2FuX2dhcmRuZXJAYXBwbGUuY29tPgorCisgICAgICAgIEZpeCBj
b250ZW50ZWRpdGFibGUgY2FyZXRzIG9uIE1hY0NhdGFseXN0CisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDc3ODkKKyAgICAgICAgPHJkYXI6Ly9wcm9i
bGVtLzU5NDI5NzE1PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEJlY2F1c2UgVUlLaXQgb25seSB1c2VzIGxhYmVsIGNvbG9yIGZvciB0aGUgY2FyZXQg
aW4gTWFjQ2F0bGF5c3QsIAorICAgICAgICB3ZSBuZWVkIHNraXAgdGV4dCBpbnB1dCB0cmFpdHMg
YW5kIHNlbmQgdGhlIGNvcnJlY3RseSBjYWxjdWxhdGVkIGNvbG9yIAorICAgICAgICB0byBVSUtp
dC4KKworICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1t
OgorICAgICAgICAoLVtXS0NvbnRlbnRWaWV3IGluc2VydGlvblBvaW50Q29sb3JdKToKKyAgICAg
ICAgKC1bV0tDb250ZW50VmlldyBnZXRJbnRlcmFjdGlvblRpbnRDb2xvcl0pOgorICAgICAgICAo
LVtXS0NvbnRlbnRWaWV3IF91cGRhdGVJbnRlcmFjdGlvblRpbnRDb2xvcl0pOgorICAgICAgICAq
IFdlYlByb2Nlc3MvV2ViUGFnZS9pb3MvV2ViUGFnZUlPUy5tbToKKyAgICAgICAgKFdlYktpdDo6
V2ViUGFnZTo6cGxhdGZvcm1FZGl0b3JTdGF0ZSBjb25zdCk6CisKIDIwMjAtMDItMTcgIFlvdWVu
biBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBXZWJJbnNwZWN0b3Ig
c3VwcG9ydCB0byBXZWJLaXQ6OldlYlNvY2tldENoYW5uZWwKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2VkaXRpbmcvRnJhbWVTZWxlY3Rpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvZWRpdGlu
Zy9GcmFtZVNlbGVjdGlvbi5jcHAKaW5kZXggMmQ0MWI3MzJmMGRmYTk3NjYwMjk0ZWEwZWRlYmIx
NWM5OGM2NmUwNi4uMGJjOTc2NTE3ZmU3NGViNTRiMDNmMzgwNjA2MzA5YmRiYjA3ZWRkMiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9GcmFtZVNlbGVjdGlvbi5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvZWRpdGluZy9GcmFtZVNlbGVjdGlvbi5jcHAKQEAgLTE3NjgsNiArMTc2
OCwyNSBAQCB2b2lkIEZyYW1lU2VsZWN0aW9uOjpwYWludENhcmV0KEdyYXBoaWNzQ29udGV4dCYg
Y29udGV4dCwgY29uc3QgTGF5b3V0UG9pbnQmIHBhaQogICAgICAgICBDYXJldEJhc2U6OnBhaW50
Q2FyZXQobV9zZWxlY3Rpb24uc3RhcnQoKS5kZXByZWNhdGVkTm9kZSgpLCBjb250ZXh0LCBwYWlu
dE9mZnNldCwgY2xpcFJlY3QpOwogfQogCitDb2xvciBDYXJldEJhc2U6OmNvbXB1dGVDYXJldENv
bG9yKGNvbnN0IFJlbmRlclN0eWxlJiBlbGVtZW50U3R5bGUsIE5vZGUqIG5vZGUpCit7CisgICAg
Ly8gT24gaU9TLCB3ZSB3YW50IHRvIGZhbGwgYmFjayB0byB0aGUgdGludENvbG9yLCBhbmQgb25s
eSBvdmVycmlkZSBpZiBDU1MgaGFzIGV4cGxpY2l0bHkgc3BlY2lmaWVkIGEgY3VzdG9tIGNvbG9y
LgorI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpICYmICFQTEFURk9STShNQUNDQVRBTFlTVCkKKyAg
ICByZXR1cm4gZWxlbWVudFN0eWxlLmNhcmV0Q29sb3IoKTsKKyNlbmRpZgorICAgIGF1dG8qIHJv
b3RFZGl0YWJsZUVsZW1lbnQgPSBub2RlID8gbm9kZS0+cm9vdEVkaXRhYmxlRWxlbWVudCgpIDog
bnVsbHB0cjsKKyAgICBhdXRvKiByb290RWRpdGFibGVTdHlsZSA9IHJvb3RFZGl0YWJsZUVsZW1l
bnQgJiYgcm9vdEVkaXRhYmxlRWxlbWVudC0+cmVuZGVyZXIoKSA/ICZyb290RWRpdGFibGVFbGVt
ZW50LT5yZW5kZXJlcigpLT5zdHlsZSgpIDogbnVsbHB0cjsKKyAgICAvLyBDU1MgdmFsdWUgImF1
dG8iIGlzIHRyZWF0ZWQgYXMgYW4gaW52YWxpZCBjb2xvci4KKyAgICBpZiAoIWVsZW1lbnRTdHls
ZS5jYXJldENvbG9yKCkuaXNWYWxpZCgpICYmIHJvb3RFZGl0YWJsZVN0eWxlKSB7CisgICAgICAg
IGF1dG8gcm9vdEVkaXRhYmxlQmFja2dyb3VuZENvbG9yID0gcm9vdEVkaXRhYmxlU3R5bGUtPnZp
c2l0ZWREZXBlbmRlbnRDb2xvcldpdGhDb2xvckZpbHRlcihDU1NQcm9wZXJ0eUJhY2tncm91bmRD
b2xvcik7CisgICAgICAgIGF1dG8gZWxlbWVudEJhY2tncm91bmRDb2xvciA9IGVsZW1lbnRTdHls
ZS52aXNpdGVkRGVwZW5kZW50Q29sb3JXaXRoQ29sb3JGaWx0ZXIoQ1NTUHJvcGVydHlCYWNrZ3Jv
dW5kQ29sb3IpOworICAgICAgICBhdXRvIGRpc2FwcGVhcnNJbnRvQmFja2dyb3VuZCA9IHJvb3RF
ZGl0YWJsZUJhY2tncm91bmRDb2xvci5ibGVuZChlbGVtZW50QmFja2dyb3VuZENvbG9yKSA9PSBy
b290RWRpdGFibGVCYWNrZ3JvdW5kQ29sb3I7CisgICAgICAgIGlmIChkaXNhcHBlYXJzSW50b0Jh
Y2tncm91bmQpCisgICAgICAgICAgICByZXR1cm4gcm9vdEVkaXRhYmxlU3R5bGUtPnZpc2l0ZWRE
ZXBlbmRlbnRDb2xvcldpdGhDb2xvckZpbHRlcihDU1NQcm9wZXJ0eUNhcmV0Q29sb3IpOworICAg
IH0KKyAgICByZXR1cm4gZWxlbWVudFN0eWxlLnZpc2l0ZWREZXBlbmRlbnRDb2xvcldpdGhDb2xv
ckZpbHRlcihDU1NQcm9wZXJ0eUNhcmV0Q29sb3IpOworfQorCiB2b2lkIENhcmV0QmFzZTo6cGFp
bnRDYXJldChOb2RlKiBub2RlLCBHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0IExheW91
dFBvaW50JiBwYWludE9mZnNldCwgY29uc3QgTGF5b3V0UmVjdCYgY2xpcFJlY3QpIGNvbnN0CiB7
CiAjaWYgRU5BQkxFKFRFWFRfQ0FSRVQpCkBAIC0xNzg0LDIyICsxODAzLDggQEAgdm9pZCBDYXJl
dEJhc2U6OnBhaW50Q2FyZXQoTm9kZSogbm9kZSwgR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0LCBj
b25zdCBMYXlvdXRQb2kKIAogICAgIENvbG9yIGNhcmV0Q29sb3IgPSBDb2xvcjo6YmxhY2s7CiAg
ICAgRWxlbWVudCogZWxlbWVudCA9IGlzPEVsZW1lbnQ+KCpub2RlKSA/IGRvd25jYXN0PEVsZW1l
bnQ+KG5vZGUpIDogbm9kZS0+cGFyZW50RWxlbWVudCgpOwotICAgIGlmIChlbGVtZW50ICYmIGVs
ZW1lbnQtPnJlbmRlcmVyKCkpIHsKLSAgICAgICAgYXV0byBjb21wdXRlQ2FyZXRDb2xvciA9IFtd
IChjb25zdCBSZW5kZXJTdHlsZSYgZWxlbWVudFN0eWxlLCBjb25zdCBSZW5kZXJTdHlsZSogcm9v
dEVkaXRhYmxlU3R5bGUpIHsKLSAgICAgICAgICAgIC8vIENTUyB2YWx1ZSAiYXV0byIgaXMgdHJl
YXRlZCBhcyBhbiBpbnZhbGlkIGNvbG9yLgotICAgICAgICAgICAgaWYgKCFlbGVtZW50U3R5bGUu
Y2FyZXRDb2xvcigpLmlzVmFsaWQoKSAmJiByb290RWRpdGFibGVTdHlsZSkgewotICAgICAgICAg
ICAgICAgIGF1dG8gcm9vdEVkaXRhYmxlQmFja2dyb3VuZENvbG9yID0gcm9vdEVkaXRhYmxlU3R5
bGUtPnZpc2l0ZWREZXBlbmRlbnRDb2xvcldpdGhDb2xvckZpbHRlcihDU1NQcm9wZXJ0eUJhY2tn
cm91bmRDb2xvcik7Ci0gICAgICAgICAgICAgICAgYXV0byBlbGVtZW50QmFja2dyb3VuZENvbG9y
ID0gZWxlbWVudFN0eWxlLnZpc2l0ZWREZXBlbmRlbnRDb2xvcldpdGhDb2xvckZpbHRlcihDU1NQ
cm9wZXJ0eUJhY2tncm91bmRDb2xvcik7Ci0gICAgICAgICAgICAgICAgYXV0byBkaXNhcHBlYXJz
SW50b0JhY2tncm91bmQgPSByb290RWRpdGFibGVCYWNrZ3JvdW5kQ29sb3IuYmxlbmQoZWxlbWVu
dEJhY2tncm91bmRDb2xvcikgPT0gcm9vdEVkaXRhYmxlQmFja2dyb3VuZENvbG9yOwotICAgICAg
ICAgICAgICAgIGlmIChkaXNhcHBlYXJzSW50b0JhY2tncm91bmQpCi0gICAgICAgICAgICAgICAg
ICAgIHJldHVybiByb290RWRpdGFibGVTdHlsZS0+dmlzaXRlZERlcGVuZGVudENvbG9yV2l0aENv
bG9yRmlsdGVyKENTU1Byb3BlcnR5Q2FyZXRDb2xvcik7Ci0gICAgICAgICAgICB9Ci0gICAgICAg
ICAgICByZXR1cm4gZWxlbWVudFN0eWxlLnZpc2l0ZWREZXBlbmRlbnRDb2xvcldpdGhDb2xvckZp
bHRlcihDU1NQcm9wZXJ0eUNhcmV0Q29sb3IpOwotICAgICAgICB9OwotICAgICAgICBhdXRvKiBy
b290RWRpdGFibGVFbGVtZW50ID0gbm9kZS0+cm9vdEVkaXRhYmxlRWxlbWVudCgpOwotICAgICAg
ICBhdXRvKiByb290RWRpdGFibGVTdHlsZSA9IHJvb3RFZGl0YWJsZUVsZW1lbnQgJiYgcm9vdEVk
aXRhYmxlRWxlbWVudC0+cmVuZGVyZXIoKSA/ICZyb290RWRpdGFibGVFbGVtZW50LT5yZW5kZXJl
cigpLT5zdHlsZSgpIDogbnVsbHB0cjsKLSAgICAgICAgY2FyZXRDb2xvciA9IGNvbXB1dGVDYXJl
dENvbG9yKGVsZW1lbnQtPnJlbmRlcmVyKCktPnN0eWxlKCksIHJvb3RFZGl0YWJsZVN0eWxlKTsK
LSAgICB9CisgICAgaWYgKGVsZW1lbnQgJiYgZWxlbWVudC0+cmVuZGVyZXIoKSkKKyAgICAgICAg
Y2FyZXRDb2xvciA9IENhcmV0QmFzZTo6Y29tcHV0ZUNhcmV0Q29sb3IoZWxlbWVudC0+cmVuZGVy
ZXIoKS0+c3R5bGUoKSwgbm9kZSk7CiAKICAgICBjb250ZXh0LmZpbGxSZWN0KGNhcmV0LCBjYXJl
dENvbG9yKTsKICNlbHNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0ZyYW1l
U2VsZWN0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmgKaW5k
ZXggNDQ4NGFmYWVmNjExZmNmMjllMTI5OWYyZWEzN2QzYjdlNGYxZWVlNi4uMjg1NTkxNzg0YTlm
ZTNhMjcxZTg0OGUxMTJjZjA1MjczNDcwNDgwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
ZWRpdGluZy9GcmFtZVNlbGVjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRnJh
bWVTZWxlY3Rpb24uaApAQCAtNjIsNiArNjIsOCBAQCBlbnVtIFJldmVhbEV4dGVudE9wdGlvbiB7
CiBjbGFzcyBDYXJldEJhc2UgewogICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKENhcmV0QmFzZSk7
CiAgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CitwdWJsaWM6CisgICAgV0VCQ09SRV9FWFBP
UlQgc3RhdGljIENvbG9yIGNvbXB1dGVDYXJldENvbG9yKGNvbnN0IFJlbmRlclN0eWxlJiBlbGVt
ZW50U3R5bGUsIE5vZGUqKTsKIHByb3RlY3RlZDoKICAgICBlbnVtIENhcmV0VmlzaWJpbGl0eSB7
IFZpc2libGUsIEhpZGRlbiB9OwogICAgIGV4cGxpY2l0IENhcmV0QmFzZShDYXJldFZpc2liaWxp
dHkgPSBIaWRkZW4pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dL
Q29udGVudFZpZXdJbnRlcmFjdGlvbi5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9X
S0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0KaW5kZXggZTFjMmJiODcyNWI2MWEwNGVlZTBiYWE3
MDBmZDNiMWU4ZmJiOGU1Zi4uN2Q1YjNkODJjNzQ0OTA1NjQxODJkZTVlMDg5MTY2ZmJiNDkwNTA5
OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJ
bnRlcmFjdGlvbi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50
Vmlld0ludGVyYWN0aW9uLm1tCkBAIC0zMjE4LDcgKzMyMTgsMTIgQEAgLSAoTlNEaWN0aW9uYXJ5
ICopdGV4dFN0eWxpbmdBdFBvc2l0aW9uOihVSVRleHRQb3NpdGlvbiAqKXBvc2l0aW9uIGluRGly
ZWN0aW9uOigKIAogLSAoVUlDb2xvciAqKWluc2VydGlvblBvaW50Q29sb3IKIHsKKyAgICAvLyBP
biBtYWNDYXRhbHlzdCB3ZSBuZWVkIHRvIGV4cGxpY2l0bHkgcmV0dXJuIHRoZSBjb2xvciB3ZSBo
YXZlIGNhbGN1bGF0ZWQsIHJhdGhlciB0aGFuIHJlbHkgb24gdGV4dFRyYWl0cywgYXMgb24gbWFj
Q2F0YWx5c3QsIFVJS2l0IGlnbm9yZXMgdGV4dCB0cmFpdHMsIGFuZCByZWxpZXMgb24gQXBwS2l0
J3MgY2FsdWxhdGlvbiwgd2hpY2ggY2Fubm90IHRyYWNrIGRhcmsgbW9kZSBjb3JyZWN0bHkgaW4g
d2ViIGNvbnRlbnQuCisjaWYgUExBVEZPUk0oTUFDQ0FUQUxZU1QpCisgICAgcmV0dXJuIFtzZWxm
IF9pbnRlcmFjdGlvblRpbnRDb2xvcl07CisjZWxzZQogICAgIHJldHVybiBbc2VsZi50ZXh0SW5w
dXRUcmFpdHMgaW5zZXJ0aW9uUG9pbnRDb2xvcl07CisjZW5kaWYKIH0KIAogLSAoVUlDb2xvciAq
KXNlbGVjdGlvbkJhckNvbG9yCkBAIC0zMjMxLDIyICszMjM2LDIyIEBAIC0gKFVJQ29sb3IgKilz
ZWxlY3Rpb25IaWdobGlnaHRDb2xvcgogICAgIHJldHVybiBbc2VsZi50ZXh0SW5wdXRUcmFpdHMg
c2VsZWN0aW9uSGlnaGxpZ2h0Q29sb3JdOwogfQogCi0tICh2b2lkKV91cGRhdGVJbnRlcmFjdGlv
blRpbnRDb2xvcgorLSAoVUlDb2xvciAqKV9pbnRlcmFjdGlvblRpbnRDb2xvcgogewotICAgIFVJ
Q29sb3IgKnRpbnRDb2xvciA9IF57Ci0gICAgICAgIGlmICghc2VsZi53ZWJWaWV3LmNvbmZpZ3Vy
YXRpb24uX3RleHRJbnRlcmFjdGlvbkdlc3R1cmVzRW5hYmxlZCkKLSAgICAgICAgICAgIHJldHVy
biBbVUlDb2xvciBjbGVhckNvbG9yXTsKKyAgICBpZiAoIXNlbGYud2ViVmlldy5jb25maWd1cmF0
aW9uLl90ZXh0SW50ZXJhY3Rpb25HZXN0dXJlc0VuYWJsZWQpCisgICAgICAgIHJldHVybiBbVUlD
b2xvciBjbGVhckNvbG9yXTsKIAotICAgICAgICBpZiAoIV9wYWdlLT5lZGl0b3JTdGF0ZSgpLmlz
TWlzc2luZ1Bvc3RMYXlvdXREYXRhKSB7Ci0gICAgICAgICAgICBXZWJDb3JlOjpDb2xvciBjYXJl
dENvbG9yID0gX3BhZ2UtPmVkaXRvclN0YXRlKCkucG9zdExheW91dERhdGEoKS5jYXJldENvbG9y
OwotICAgICAgICAgICAgaWYgKGNhcmV0Q29sb3IuaXNWYWxpZCgpKQotICAgICAgICAgICAgICAg
IHJldHVybiBbVUlDb2xvciBjb2xvcldpdGhDR0NvbG9yOmNhY2hlZENHQ29sb3IoY2FyZXRDb2xv
cildOwotICAgICAgICB9Ci0gICAgICAgIAotICAgICAgICByZXR1cm4gW3NlbGYgX2luaGVyaXRl
ZEludGVyYWN0aW9uVGludENvbG9yXTsgICAgCi0gICAgfSgpOworICAgIGlmICghX3BhZ2UtPmVk
aXRvclN0YXRlKCkuaXNNaXNzaW5nUG9zdExheW91dERhdGEpIHsKKyAgICAgICAgV2ViQ29yZTo6
Q29sb3IgY2FyZXRDb2xvciA9IF9wYWdlLT5lZGl0b3JTdGF0ZSgpLnBvc3RMYXlvdXREYXRhKCku
Y2FyZXRDb2xvcjsKKyAgICAgICAgaWYgKGNhcmV0Q29sb3IuaXNWYWxpZCgpKQorICAgICAgICAg
ICAgcmV0dXJuIFtVSUNvbG9yIGNvbG9yV2l0aENHQ29sb3I6Y2FjaGVkQ0dDb2xvcihjYXJldENv
bG9yKV07CisgICAgfQorICAgIHJldHVybiBbc2VsZiBfaW5oZXJpdGVkSW50ZXJhY3Rpb25UaW50
Q29sb3JdOworfQogCi0gICAgW190cmFpdHMgX3NldENvbG9yc1RvTWF0Y2hUaW50Q29sb3I6dGlu
dENvbG9yXTsKKy0gKHZvaWQpX3VwZGF0ZUludGVyYWN0aW9uVGludENvbG9yCit7CisgICAgW190
cmFpdHMgX3NldENvbG9yc1RvTWF0Y2hUaW50Q29sb3I6W3NlbGYgX2ludGVyYWN0aW9uVGludENv
bG9yXV07CiB9CiAKIC0gKHZvaWQpdGludENvbG9yRGlkQ2hhbmdlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9pb3MvV2ViUGFnZUlPUy5tbSBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCmluZGV4IDQ3MzgzNTc2
Y2YwMzkzZDdhNGVkM2Y1ODc3M2MzOTkzODllZWZhZTYuLjU5OWRhMGNjMmM4ZDdlY2M2ZjkzYTc5
N2E5MzY1ZTAyYzAyYzFmODcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9X
ZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9X
ZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCkBAIC0yNzQsNyArMjc0LDcgQEAgdm9pZCBXZWJQYWdl
OjpwbGF0Zm9ybUVkaXRvclN0YXRlKEZyYW1lJiBmcmFtZSwgRWRpdG9yU3RhdGUmIHJlc3VsdCwg
SW5jbHVkZVBvc3QKICAgICAgICAgaWYgKG1fZm9jdXNlZEVsZW1lbnQgJiYgbV9mb2N1c2VkRWxl
bWVudC0+cmVuZGVyZXIoKSkgewogICAgICAgICAgICAgYXV0byYgcmVuZGVyZXIgPSAqbV9mb2N1
c2VkRWxlbWVudC0+cmVuZGVyZXIoKTsKICAgICAgICAgICAgIHBvc3RMYXlvdXREYXRhLmZvY3Vz
ZWRFbGVtZW50UmVjdCA9IHJvb3RWaWV3SW50ZXJhY3Rpb25Cb3VuZHNGb3JFbGVtZW50KCptX2Zv
Y3VzZWRFbGVtZW50KTsKLSAgICAgICAgICAgIHBvc3RMYXlvdXREYXRhLmNhcmV0Q29sb3IgPSBy
ZW5kZXJlci5zdHlsZSgpLmNhcmV0Q29sb3IoKTsKKyAgICAgICAgICAgIHBvc3RMYXlvdXREYXRh
LmNhcmV0Q29sb3IgPSBDYXJldEJhc2U6OmNvbXB1dGVDYXJldENvbG9yKHJlbmRlcmVyLnN0eWxl
KCksIHJlbmRlcmVyLmVsZW1lbnQoKSk7CiAgICAgICAgIH0KICAgICAgICAgaWYgKHJlc3VsdC5p
c0NvbnRlbnRFZGl0YWJsZSkgewogICAgICAgICAgICAgaWYgKGF1dG8gZWRpdGFibGVSb290T3JG
b3JtQ29udHJvbCA9IG1ha2VSZWZQdHIoc2VsZWN0aW9uLnJvb3RFZGl0YWJsZUVsZW1lbnQoKSkp
IHsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>391086</attachid>
            <date>2020-02-18 13:58:42 -0800</date>
            <delta_ts>2020-02-18 14:34:46 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207789-20200218135841.patch</filename>
            <type>text/plain</type>
            <size>9538</size>
            <attacher name="Megan Gardner">megan_gardner</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU2ODM1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2JmZjMzZGU0MTkwYjcz
YjU5YzhhYmFjMTExOTBjYjBiYzYxOTMxYi4uOWI3ZDdkYzNkMjkyMGUzODlkZmU2ODUzNzQzNzZi
YTY2MTU3NDg3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDIwLTAyLTE0ICBNZWdh
biBHYXJkbmVyICA8bWVnYW5fZ2FyZG5lckBhcHBsZS5jb20+CisKKyAgICAgICAgRml4IGNvbnRl
bnRlZGl0YWJsZSBjYXJldHMgb24gTWFjQ2F0YWx5c3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNzc4OQorICAgICAgICA8cmRhcjovL3Byb2JsZW0v
NTk0Mjk3MTU+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgRmFjdG9yIG91dCBjYXJldCBjb2xvciBjYWxjdWxhdGlvbiB0byBiZSB1c2VkIGluIFdlYlBh
Z2VJT1MuCisKKyAgICAgICAgRml4ZXMgRWRpdG9yU3RhdGVUZXN0cy5DYXJldENvbG9ySW5Db250
ZW50RWRpdGFibGUuCisKKyAgICAgICAgKiBlZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkNhcmV0QmFzZTo6Y29tcHV0ZUNhcmV0Q29sb3IpOgorICAgICAgICAo
V2ViQ29yZTo6Q2FyZXRCYXNlOjpwYWludENhcmV0IGNvbnN0KToKKyAgICAgICAgKiBlZGl0aW5n
L0ZyYW1lU2VsZWN0aW9uLmg6CisKIDIwMjAtMDItMTggIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZy
YXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgTW92ZSBmcm9tICJsYXllciBmbHVzaCIgdGVybWlu
b2xvZ3kgdG8gInJlbmRlcmluZyB1cGRhdGUiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDYxNzJhY2RkMzQ2MjVmN2Nm
OTRhMThjZjE1ZTI1ZDMxOGQ3MTlmZDIuLjFmZTBjYmQzYjEzYjU2N2UxZjJkOWYyNDkwYTg3MWQw
ODdlMDFmYmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjAtMDItMTQgIE1lZ2FuIEdh
cmRuZXIgIDxtZWdhbl9nYXJkbmVyQGFwcGxlLmNvbT4KKworICAgICAgICBGaXggY29udGVudGVk
aXRhYmxlIGNhcmV0cyBvbiBNYWNDYXRhbHlzdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA3Nzg5CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81OTQy
OTcxNT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBC
ZWNhdXNlIFVJS2l0IG9ubHkgdXNlcyBsYWJlbCBjb2xvciBmb3IgdGhlIGNhcmV0IGluIE1hY0Nh
dGxheXN0LCAKKyAgICAgICAgd2UgbmVlZCBza2lwIHRleHQgaW5wdXQgdHJhaXRzIGFuZCBzZW5k
IHRoZSBjb3JyZWN0bHkgY2FsY3VsYXRlZCBjb2xvciAKKyAgICAgICAgdG8gVUlLaXQuCisKKyAg
ICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbToKKyAgICAg
ICAgKC1bV0tDb250ZW50VmlldyBpbnNlcnRpb25Qb2ludENvbG9yXSk6CisgICAgICAgICgtW1dL
Q29udGVudFZpZXcgZ2V0SW50ZXJhY3Rpb25UaW50Q29sb3JdKToKKyAgICAgICAgKC1bV0tDb250
ZW50VmlldyBfdXBkYXRlSW50ZXJhY3Rpb25UaW50Q29sb3JdKToKKyAgICAgICAgKiBXZWJQcm9j
ZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW06CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6
OnBsYXRmb3JtRWRpdG9yU3RhdGUgY29uc3QpOgorCiAyMDIwLTAyLTE4ICBTaW1vbiBGcmFzZXIg
IDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAgIE1vdmUgZnJvbSAibGF5ZXIgZmx1
c2giIHRlcm1pbm9sb2d5IHRvICJyZW5kZXJpbmcgdXBkYXRlIgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvZWRpdGluZy9GcmFtZVNlbGVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0
aW5nL0ZyYW1lU2VsZWN0aW9uLmNwcAppbmRleCAyZDQxYjczMmYwZGZhOTc2NjAyOTRlYTBlZGVi
YjE1Yzk4YzY2ZTA2Li4wYmM5NzY1MTdmZTc0ZWI1NGIwM2YzODA2MDYzMDliZGJiMDdlZGQyIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmNwcApAQCAtMTc2OCw2ICsx
NzY4LDI1IEBAIHZvaWQgRnJhbWVTZWxlY3Rpb246OnBhaW50Q2FyZXQoR3JhcGhpY3NDb250ZXh0
JiBjb250ZXh0LCBjb25zdCBMYXlvdXRQb2ludCYgcGFpCiAgICAgICAgIENhcmV0QmFzZTo6cGFp
bnRDYXJldChtX3NlbGVjdGlvbi5zdGFydCgpLmRlcHJlY2F0ZWROb2RlKCksIGNvbnRleHQsIHBh
aW50T2Zmc2V0LCBjbGlwUmVjdCk7CiB9CiAKK0NvbG9yIENhcmV0QmFzZTo6Y29tcHV0ZUNhcmV0
Q29sb3IoY29uc3QgUmVuZGVyU3R5bGUmIGVsZW1lbnRTdHlsZSwgTm9kZSogbm9kZSkKK3sKKyAg
ICAvLyBPbiBpT1MsIHdlIHdhbnQgdG8gZmFsbCBiYWNrIHRvIHRoZSB0aW50Q29sb3IsIGFuZCBv
bmx5IG92ZXJyaWRlIGlmIENTUyBoYXMgZXhwbGljaXRseSBzcGVjaWZpZWQgYSBjdXN0b20gY29s
b3IuCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYgIVBMQVRGT1JNKE1BQ0NBVEFMWVNUKQor
ICAgIHJldHVybiBlbGVtZW50U3R5bGUuY2FyZXRDb2xvcigpOworI2VuZGlmCisgICAgYXV0byog
cm9vdEVkaXRhYmxlRWxlbWVudCA9IG5vZGUgPyBub2RlLT5yb290RWRpdGFibGVFbGVtZW50KCkg
OiBudWxscHRyOworICAgIGF1dG8qIHJvb3RFZGl0YWJsZVN0eWxlID0gcm9vdEVkaXRhYmxlRWxl
bWVudCAmJiByb290RWRpdGFibGVFbGVtZW50LT5yZW5kZXJlcigpID8gJnJvb3RFZGl0YWJsZUVs
ZW1lbnQtPnJlbmRlcmVyKCktPnN0eWxlKCkgOiBudWxscHRyOworICAgIC8vIENTUyB2YWx1ZSAi
YXV0byIgaXMgdHJlYXRlZCBhcyBhbiBpbnZhbGlkIGNvbG9yLgorICAgIGlmICghZWxlbWVudFN0
eWxlLmNhcmV0Q29sb3IoKS5pc1ZhbGlkKCkgJiYgcm9vdEVkaXRhYmxlU3R5bGUpIHsKKyAgICAg
ICAgYXV0byByb290RWRpdGFibGVCYWNrZ3JvdW5kQ29sb3IgPSByb290RWRpdGFibGVTdHlsZS0+
dmlzaXRlZERlcGVuZGVudENvbG9yV2l0aENvbG9yRmlsdGVyKENTU1Byb3BlcnR5QmFja2dyb3Vu
ZENvbG9yKTsKKyAgICAgICAgYXV0byBlbGVtZW50QmFja2dyb3VuZENvbG9yID0gZWxlbWVudFN0
eWxlLnZpc2l0ZWREZXBlbmRlbnRDb2xvcldpdGhDb2xvckZpbHRlcihDU1NQcm9wZXJ0eUJhY2tn
cm91bmRDb2xvcik7CisgICAgICAgIGF1dG8gZGlzYXBwZWFyc0ludG9CYWNrZ3JvdW5kID0gcm9v
dEVkaXRhYmxlQmFja2dyb3VuZENvbG9yLmJsZW5kKGVsZW1lbnRCYWNrZ3JvdW5kQ29sb3IpID09
IHJvb3RFZGl0YWJsZUJhY2tncm91bmRDb2xvcjsKKyAgICAgICAgaWYgKGRpc2FwcGVhcnNJbnRv
QmFja2dyb3VuZCkKKyAgICAgICAgICAgIHJldHVybiByb290RWRpdGFibGVTdHlsZS0+dmlzaXRl
ZERlcGVuZGVudENvbG9yV2l0aENvbG9yRmlsdGVyKENTU1Byb3BlcnR5Q2FyZXRDb2xvcik7Cisg
ICAgfQorICAgIHJldHVybiBlbGVtZW50U3R5bGUudmlzaXRlZERlcGVuZGVudENvbG9yV2l0aENv
bG9yRmlsdGVyKENTU1Byb3BlcnR5Q2FyZXRDb2xvcik7Cit9CisKIHZvaWQgQ2FyZXRCYXNlOjpw
YWludENhcmV0KE5vZGUqIG5vZGUsIEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCwgY29uc3QgTGF5
b3V0UG9pbnQmIHBhaW50T2Zmc2V0LCBjb25zdCBMYXlvdXRSZWN0JiBjbGlwUmVjdCkgY29uc3QK
IHsKICNpZiBFTkFCTEUoVEVYVF9DQVJFVCkKQEAgLTE3ODQsMjIgKzE4MDMsOCBAQCB2b2lkIENh
cmV0QmFzZTo6cGFpbnRDYXJldChOb2RlKiBub2RlLCBHcmFwaGljc0NvbnRleHQmIGNvbnRleHQs
IGNvbnN0IExheW91dFBvaQogCiAgICAgQ29sb3IgY2FyZXRDb2xvciA9IENvbG9yOjpibGFjazsK
ICAgICBFbGVtZW50KiBlbGVtZW50ID0gaXM8RWxlbWVudD4oKm5vZGUpID8gZG93bmNhc3Q8RWxl
bWVudD4obm9kZSkgOiBub2RlLT5wYXJlbnRFbGVtZW50KCk7Ci0gICAgaWYgKGVsZW1lbnQgJiYg
ZWxlbWVudC0+cmVuZGVyZXIoKSkgewotICAgICAgICBhdXRvIGNvbXB1dGVDYXJldENvbG9yID0g
W10gKGNvbnN0IFJlbmRlclN0eWxlJiBlbGVtZW50U3R5bGUsIGNvbnN0IFJlbmRlclN0eWxlKiBy
b290RWRpdGFibGVTdHlsZSkgewotICAgICAgICAgICAgLy8gQ1NTIHZhbHVlICJhdXRvIiBpcyB0
cmVhdGVkIGFzIGFuIGludmFsaWQgY29sb3IuCi0gICAgICAgICAgICBpZiAoIWVsZW1lbnRTdHls
ZS5jYXJldENvbG9yKCkuaXNWYWxpZCgpICYmIHJvb3RFZGl0YWJsZVN0eWxlKSB7Ci0gICAgICAg
ICAgICAgICAgYXV0byByb290RWRpdGFibGVCYWNrZ3JvdW5kQ29sb3IgPSByb290RWRpdGFibGVT
dHlsZS0+dmlzaXRlZERlcGVuZGVudENvbG9yV2l0aENvbG9yRmlsdGVyKENTU1Byb3BlcnR5QmFj
a2dyb3VuZENvbG9yKTsKLSAgICAgICAgICAgICAgICBhdXRvIGVsZW1lbnRCYWNrZ3JvdW5kQ29s
b3IgPSBlbGVtZW50U3R5bGUudmlzaXRlZERlcGVuZGVudENvbG9yV2l0aENvbG9yRmlsdGVyKENT
U1Byb3BlcnR5QmFja2dyb3VuZENvbG9yKTsKLSAgICAgICAgICAgICAgICBhdXRvIGRpc2FwcGVh
cnNJbnRvQmFja2dyb3VuZCA9IHJvb3RFZGl0YWJsZUJhY2tncm91bmRDb2xvci5ibGVuZChlbGVt
ZW50QmFja2dyb3VuZENvbG9yKSA9PSByb290RWRpdGFibGVCYWNrZ3JvdW5kQ29sb3I7Ci0gICAg
ICAgICAgICAgICAgaWYgKGRpc2FwcGVhcnNJbnRvQmFja2dyb3VuZCkKLSAgICAgICAgICAgICAg
ICAgICAgcmV0dXJuIHJvb3RFZGl0YWJsZVN0eWxlLT52aXNpdGVkRGVwZW5kZW50Q29sb3JXaXRo
Q29sb3JGaWx0ZXIoQ1NTUHJvcGVydHlDYXJldENvbG9yKTsKLSAgICAgICAgICAgIH0KLSAgICAg
ICAgICAgIHJldHVybiBlbGVtZW50U3R5bGUudmlzaXRlZERlcGVuZGVudENvbG9yV2l0aENvbG9y
RmlsdGVyKENTU1Byb3BlcnR5Q2FyZXRDb2xvcik7Ci0gICAgICAgIH07Ci0gICAgICAgIGF1dG8q
IHJvb3RFZGl0YWJsZUVsZW1lbnQgPSBub2RlLT5yb290RWRpdGFibGVFbGVtZW50KCk7Ci0gICAg
ICAgIGF1dG8qIHJvb3RFZGl0YWJsZVN0eWxlID0gcm9vdEVkaXRhYmxlRWxlbWVudCAmJiByb290
RWRpdGFibGVFbGVtZW50LT5yZW5kZXJlcigpID8gJnJvb3RFZGl0YWJsZUVsZW1lbnQtPnJlbmRl
cmVyKCktPnN0eWxlKCkgOiBudWxscHRyOwotICAgICAgICBjYXJldENvbG9yID0gY29tcHV0ZUNh
cmV0Q29sb3IoZWxlbWVudC0+cmVuZGVyZXIoKS0+c3R5bGUoKSwgcm9vdEVkaXRhYmxlU3R5bGUp
OwotICAgIH0KKyAgICBpZiAoZWxlbWVudCAmJiBlbGVtZW50LT5yZW5kZXJlcigpKQorICAgICAg
ICBjYXJldENvbG9yID0gQ2FyZXRCYXNlOjpjb21wdXRlQ2FyZXRDb2xvcihlbGVtZW50LT5yZW5k
ZXJlcigpLT5zdHlsZSgpLCBub2RlKTsKIAogICAgIGNvbnRleHQuZmlsbFJlY3QoY2FyZXQsIGNh
cmV0Q29sb3IpOwogI2Vsc2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRnJh
bWVTZWxlY3Rpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRnJhbWVTZWxlY3Rpb24uaApp
bmRleCA0NDg0YWZhZWY2MTFmY2YyOWUxMjk5ZjJlYTM3ZDNiN2U0ZjFlZWU2Li4yODU1OTE3ODRh
OWZlM2EyNzFlODQ4ZTExMmNmMDUyNzM0NzA0ODAwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9lZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9G
cmFtZVNlbGVjdGlvbi5oCkBAIC02Miw2ICs2Miw4IEBAIGVudW0gUmV2ZWFsRXh0ZW50T3B0aW9u
IHsKIGNsYXNzIENhcmV0QmFzZSB7CiAgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoQ2FyZXRCYXNl
KTsKICAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKK3B1YmxpYzoKKyAgICBXRUJDT1JFX0VY
UE9SVCBzdGF0aWMgQ29sb3IgY29tcHV0ZUNhcmV0Q29sb3IoY29uc3QgUmVuZGVyU3R5bGUmIGVs
ZW1lbnRTdHlsZSwgTm9kZSopOwogcHJvdGVjdGVkOgogICAgIGVudW0gQ2FyZXRWaXNpYmlsaXR5
IHsgVmlzaWJsZSwgSGlkZGVuIH07CiAgICAgZXhwbGljaXQgQ2FyZXRCYXNlKENhcmV0VmlzaWJp
bGl0eSA9IEhpZGRlbik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3Mv
V0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9z
L1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbQppbmRleCA1NmFiMTc4MTcxMTgwMzRkYjNhYzZm
NGUwZDgxMWMyNTI2MDYyMmE3Li5mMGE0NjE0N2E5ZTlhNjAxNjI5MjE2YzYwMTdmNGYyZjg3ZmMz
MDhjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmll
d0ludGVyYWN0aW9uLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRl
bnRWaWV3SW50ZXJhY3Rpb24ubW0KQEAgLTMyMjMsNyArMzIyMywxMiBAQCAtIChOU0RpY3Rpb25h
cnkgKil0ZXh0U3R5bGluZ0F0UG9zaXRpb246KFVJVGV4dFBvc2l0aW9uICopcG9zaXRpb24gaW5E
aXJlY3Rpb246KAogCiAtIChVSUNvbG9yICopaW5zZXJ0aW9uUG9pbnRDb2xvcgogeworICAgIC8v
IE9uIG1hY0NhdGFseXN0IHdlIG5lZWQgdG8gZXhwbGljaXRseSByZXR1cm4gdGhlIGNvbG9yIHdl
IGhhdmUgY2FsY3VsYXRlZCwgcmF0aGVyIHRoYW4gcmVseSBvbiB0ZXh0VHJhaXRzLCBhcyBvbiBt
YWNDYXRhbHlzdCwgVUlLaXQgaWdub3JlcyB0ZXh0IHRyYWl0cywgYW5kIHJlbGllcyBvbiBBcHBL
aXQncyBjYWx1bGF0aW9uLCB3aGljaCBjYW5ub3QgdHJhY2sgZGFyayBtb2RlIGNvcnJlY3RseSBp
biB3ZWIgY29udGVudC4KKyNpZiBQTEFURk9STShNQUNDQVRBTFlTVCkKKyAgICByZXR1cm4gW3Nl
bGYgX2ludGVyYWN0aW9uVGludENvbG9yXTsKKyNlbHNlCiAgICAgcmV0dXJuIFtzZWxmLnRleHRJ
bnB1dFRyYWl0cyBpbnNlcnRpb25Qb2ludENvbG9yXTsKKyNlbmRpZgogfQogCiAtIChVSUNvbG9y
ICopc2VsZWN0aW9uQmFyQ29sb3IKQEAgLTMyMzYsMjIgKzMyNDEsMjIgQEAgLSAoVUlDb2xvciAq
KXNlbGVjdGlvbkhpZ2hsaWdodENvbG9yCiAgICAgcmV0dXJuIFtzZWxmLnRleHRJbnB1dFRyYWl0
cyBzZWxlY3Rpb25IaWdobGlnaHRDb2xvcl07CiB9CiAKLS0gKHZvaWQpX3VwZGF0ZUludGVyYWN0
aW9uVGludENvbG9yCistIChVSUNvbG9yICopX2Nhc2NhZGVJbnRlcmFjdGlvblRpbnRDb2xvcgog
ewotICAgIFVJQ29sb3IgKnRpbnRDb2xvciA9IF57Ci0gICAgICAgIGlmICghc2VsZi53ZWJWaWV3
LmNvbmZpZ3VyYXRpb24uX3RleHRJbnRlcmFjdGlvbkdlc3R1cmVzRW5hYmxlZCkKLSAgICAgICAg
ICAgIHJldHVybiBbVUlDb2xvciBjbGVhckNvbG9yXTsKKyAgICBpZiAoIXNlbGYud2ViVmlldy5j
b25maWd1cmF0aW9uLl90ZXh0SW50ZXJhY3Rpb25HZXN0dXJlc0VuYWJsZWQpCisgICAgICAgIHJl
dHVybiBbVUlDb2xvciBjbGVhckNvbG9yXTsKIAotICAgICAgICBpZiAoIV9wYWdlLT5lZGl0b3JT
dGF0ZSgpLmlzTWlzc2luZ1Bvc3RMYXlvdXREYXRhKSB7Ci0gICAgICAgICAgICBXZWJDb3JlOjpD
b2xvciBjYXJldENvbG9yID0gX3BhZ2UtPmVkaXRvclN0YXRlKCkucG9zdExheW91dERhdGEoKS5j
YXJldENvbG9yOwotICAgICAgICAgICAgaWYgKGNhcmV0Q29sb3IuaXNWYWxpZCgpKQotICAgICAg
ICAgICAgICAgIHJldHVybiBbVUlDb2xvciBjb2xvcldpdGhDR0NvbG9yOmNhY2hlZENHQ29sb3Io
Y2FyZXRDb2xvcildOwotICAgICAgICB9Ci0gICAgICAgIAotICAgICAgICByZXR1cm4gW3NlbGYg
X2luaGVyaXRlZEludGVyYWN0aW9uVGludENvbG9yXTsgICAgCi0gICAgfSgpOworICAgIGlmICgh
X3BhZ2UtPmVkaXRvclN0YXRlKCkuaXNNaXNzaW5nUG9zdExheW91dERhdGEpIHsKKyAgICAgICAg
V2ViQ29yZTo6Q29sb3IgY2FyZXRDb2xvciA9IF9wYWdlLT5lZGl0b3JTdGF0ZSgpLnBvc3RMYXlv
dXREYXRhKCkuY2FyZXRDb2xvcjsKKyAgICAgICAgaWYgKGNhcmV0Q29sb3IuaXNWYWxpZCgpKQor
ICAgICAgICAgICAgcmV0dXJuIFtVSUNvbG9yIGNvbG9yV2l0aENHQ29sb3I6Y2FjaGVkQ0dDb2xv
cihjYXJldENvbG9yKV07CisgICAgfQorICAgIHJldHVybiBbc2VsZiBfaW5oZXJpdGVkSW50ZXJh
Y3Rpb25UaW50Q29sb3JdOworfQogCi0gICAgW190cmFpdHMgX3NldENvbG9yc1RvTWF0Y2hUaW50
Q29sb3I6dGludENvbG9yXTsKKy0gKHZvaWQpX3VwZGF0ZUludGVyYWN0aW9uVGludENvbG9yCit7
CisgICAgW190cmFpdHMgX3NldENvbG9yc1RvTWF0Y2hUaW50Q29sb3I6W3NlbGYgX2Nhc2NhZGVJ
bnRlcmFjdGlvblRpbnRDb2xvcl1dOwogfQogCiAtICh2b2lkKXRpbnRDb2xvckRpZENoYW5nZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJ
T1MubW0gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9pb3MvV2ViUGFnZUlPUy5t
bQppbmRleCA4NWFjMzQwZDFhMzM2ZTc1ZDVlMDU0MTMzYjFhOWVhZGIwMmEyNzI0Li42MWYyYjRh
ZTAwYWY2MTFiMGYwOTUxMTYwYmU4ZWYyMGFlMmNlNTkwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9pb3MvV2ViUGFnZUlPUy5tbQorKysgYi9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9pb3MvV2ViUGFnZUlPUy5tbQpAQCAtMjc0LDcgKzI3NCw3
IEBAIHZvaWQgV2ViUGFnZTo6cGxhdGZvcm1FZGl0b3JTdGF0ZShGcmFtZSYgZnJhbWUsIEVkaXRv
clN0YXRlJiByZXN1bHQsIEluY2x1ZGVQb3N0CiAgICAgICAgIGlmIChtX2ZvY3VzZWRFbGVtZW50
ICYmIG1fZm9jdXNlZEVsZW1lbnQtPnJlbmRlcmVyKCkpIHsKICAgICAgICAgICAgIGF1dG8mIHJl
bmRlcmVyID0gKm1fZm9jdXNlZEVsZW1lbnQtPnJlbmRlcmVyKCk7CiAgICAgICAgICAgICBwb3N0
TGF5b3V0RGF0YS5mb2N1c2VkRWxlbWVudFJlY3QgPSByb290Vmlld0ludGVyYWN0aW9uQm91bmRz
Rm9yRWxlbWVudCgqbV9mb2N1c2VkRWxlbWVudCk7Ci0gICAgICAgICAgICBwb3N0TGF5b3V0RGF0
YS5jYXJldENvbG9yID0gcmVuZGVyZXIuc3R5bGUoKS5jYXJldENvbG9yKCk7CisgICAgICAgICAg
ICBwb3N0TGF5b3V0RGF0YS5jYXJldENvbG9yID0gQ2FyZXRCYXNlOjpjb21wdXRlQ2FyZXRDb2xv
cihyZW5kZXJlci5zdHlsZSgpLCByZW5kZXJlci5lbGVtZW50KCkpOwogICAgICAgICB9CiAgICAg
ICAgIGlmIChyZXN1bHQuaXNDb250ZW50RWRpdGFibGUpIHsKICAgICAgICAgICAgIGlmIChhdXRv
IGVkaXRhYmxlUm9vdE9yRm9ybUNvbnRyb2wgPSBtYWtlUmVmUHRyKHNlbGVjdGlvbi5yb290RWRp
dGFibGVFbGVtZW50KCkpKSB7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>391093</attachid>
            <date>2020-02-18 14:34:47 -0800</date>
            <delta_ts>2020-02-18 21:07:41 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207789-20200218143446.patch</filename>
            <type>text/plain</type>
            <size>9651</size>
            <attacher name="Megan Gardner">megan_gardner</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU2ODM1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2JmZjMzZGU0MTkwYjcz
YjU5YzhhYmFjMTExOTBjYjBiYzYxOTMxYi4uZGE2YWQ4ODUwZTE3MzgxODdhZTgxMjQ1MzU3ZmU5
MDI4MTg1YzI2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDIwLTAyLTE0ICBNZWdh
biBHYXJkbmVyICA8bWVnYW5fZ2FyZG5lckBhcHBsZS5jb20+CisKKyAgICAgICAgRW5zdXJlIHRo
YXQgY29udGVudGVkaXRhYmxlIGNhcmV0cyBvbiBtYWNDYXRhbHlzdCBhcmUgdGhlIHJpZ2h0IGNv
bG9yLCBlc3BlY2lhbGx5IGluIERhcmsgTW9kZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA3Nzg5CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81OTQy
OTcxNT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBG
YWN0b3Igb3V0IGNhcmV0IGNvbG9yIGNhbGN1bGF0aW9uIHRvIGJlIHVzZWQgaW4gV2ViUGFnZUlP
Uy4KKworICAgICAgICBGaXhlcyBFZGl0b3JTdGF0ZVRlc3RzLkNhcmV0Q29sb3JJbkNvbnRlbnRF
ZGl0YWJsZS4KKworICAgICAgICAqIGVkaXRpbmcvRnJhbWVTZWxlY3Rpb24uY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6Q2FyZXRCYXNlOjpjb21wdXRlQ2FyZXRDb2xvcik6CisgICAgICAgIChXZWJD
b3JlOjpDYXJldEJhc2U6OnBhaW50Q2FyZXQgY29uc3QpOgorICAgICAgICAqIGVkaXRpbmcvRnJh
bWVTZWxlY3Rpb24uaDoKKwogMjAyMC0wMi0xOCAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2Vy
QGFwcGxlLmNvbT4KIAogICAgICAgICBNb3ZlIGZyb20gImxheWVyIGZsdXNoIiB0ZXJtaW5vbG9n
eSB0byAicmVuZGVyaW5nIHVwZGF0ZSIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdl
TG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggNjE3MmFjZGQzNDYyNWY3Y2Y5NGEx
OGNmMTVlMjVkMzE4ZDcxOWZkMi4uMzU0ZjRjOWY3MGNkMjZhZTk2ZjI0ZjM3MTI3YzUxNDY0NDNm
NDlhMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
YktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAyMC0wMi0xNCAgTWVnYW4gR2FyZG5l
ciAgPG1lZ2FuX2dhcmRuZXJAYXBwbGUuY29tPgorCisgICAgICAgIEVuc3VyZSB0aGF0IGNvbnRl
bnRlZGl0YWJsZSBjYXJldHMgb24gbWFjQ2F0YWx5c3QgYXJlIHRoZSByaWdodCBjb2xvciwgZXNw
ZWNpYWxseSBpbiBEYXJrIE1vZGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIwNzc4OQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTk0Mjk3MTU+CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQmVjYXVzZSBV
SUtpdCBvbmx5IHVzZXMgbGFiZWwgY29sb3IgZm9yIHRoZSBjYXJldCBpbiBtYWNDYXRsYXlzdCwg
CisgICAgICAgIHdlIG5lZWQgc2tpcCB0ZXh0IGlucHV0IHRyYWl0cyBhbmQgc2VuZCB0aGUgY29y
cmVjdGx5IGNhbGN1bGF0ZWQgY29sb3IgCisgICAgICAgIHRvIFVJS2l0LgorCisgICAgICAgICog
VUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW06CisgICAgICAgICgtW1dL
Q29udGVudFZpZXcgaW5zZXJ0aW9uUG9pbnRDb2xvcl0pOgorICAgICAgICAoLVtXS0NvbnRlbnRW
aWV3IGdldEludGVyYWN0aW9uVGludENvbG9yXSk6CisgICAgICAgICgtW1dLQ29udGVudFZpZXcg
X3VwZGF0ZUludGVyYWN0aW9uVGludENvbG9yXSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQ
YWdlL2lvcy9XZWJQYWdlSU9TLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpwbGF0Zm9y
bUVkaXRvclN0YXRlIGNvbnN0KToKKwogMjAyMC0wMi0xOCAgU2ltb24gRnJhc2VyICA8c2ltb24u
ZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBNb3ZlIGZyb20gImxheWVyIGZsdXNoIiB0ZXJt
aW5vbG9neSB0byAicmVuZGVyaW5nIHVwZGF0ZSIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2VkaXRpbmcvRnJhbWVTZWxlY3Rpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9GcmFt
ZVNlbGVjdGlvbi5jcHAKaW5kZXggMmQ0MWI3MzJmMGRmYTk3NjYwMjk0ZWEwZWRlYmIxNWM5OGM2
NmUwNi4uMGJjOTc2NTE3ZmU3NGViNTRiMDNmMzgwNjA2MzA5YmRiYjA3ZWRkMiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9GcmFtZVNlbGVjdGlvbi5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvZWRpdGluZy9GcmFtZVNlbGVjdGlvbi5jcHAKQEAgLTE3NjgsNiArMTc2OCwyNSBA
QCB2b2lkIEZyYW1lU2VsZWN0aW9uOjpwYWludENhcmV0KEdyYXBoaWNzQ29udGV4dCYgY29udGV4
dCwgY29uc3QgTGF5b3V0UG9pbnQmIHBhaQogICAgICAgICBDYXJldEJhc2U6OnBhaW50Q2FyZXQo
bV9zZWxlY3Rpb24uc3RhcnQoKS5kZXByZWNhdGVkTm9kZSgpLCBjb250ZXh0LCBwYWludE9mZnNl
dCwgY2xpcFJlY3QpOwogfQogCitDb2xvciBDYXJldEJhc2U6OmNvbXB1dGVDYXJldENvbG9yKGNv
bnN0IFJlbmRlclN0eWxlJiBlbGVtZW50U3R5bGUsIE5vZGUqIG5vZGUpCit7CisgICAgLy8gT24g
aU9TLCB3ZSB3YW50IHRvIGZhbGwgYmFjayB0byB0aGUgdGludENvbG9yLCBhbmQgb25seSBvdmVy
cmlkZSBpZiBDU1MgaGFzIGV4cGxpY2l0bHkgc3BlY2lmaWVkIGEgY3VzdG9tIGNvbG9yLgorI2lm
IFBMQVRGT1JNKElPU19GQU1JTFkpICYmICFQTEFURk9STShNQUNDQVRBTFlTVCkKKyAgICByZXR1
cm4gZWxlbWVudFN0eWxlLmNhcmV0Q29sb3IoKTsKKyNlbmRpZgorICAgIGF1dG8qIHJvb3RFZGl0
YWJsZUVsZW1lbnQgPSBub2RlID8gbm9kZS0+cm9vdEVkaXRhYmxlRWxlbWVudCgpIDogbnVsbHB0
cjsKKyAgICBhdXRvKiByb290RWRpdGFibGVTdHlsZSA9IHJvb3RFZGl0YWJsZUVsZW1lbnQgJiYg
cm9vdEVkaXRhYmxlRWxlbWVudC0+cmVuZGVyZXIoKSA/ICZyb290RWRpdGFibGVFbGVtZW50LT5y
ZW5kZXJlcigpLT5zdHlsZSgpIDogbnVsbHB0cjsKKyAgICAvLyBDU1MgdmFsdWUgImF1dG8iIGlz
IHRyZWF0ZWQgYXMgYW4gaW52YWxpZCBjb2xvci4KKyAgICBpZiAoIWVsZW1lbnRTdHlsZS5jYXJl
dENvbG9yKCkuaXNWYWxpZCgpICYmIHJvb3RFZGl0YWJsZVN0eWxlKSB7CisgICAgICAgIGF1dG8g
cm9vdEVkaXRhYmxlQmFja2dyb3VuZENvbG9yID0gcm9vdEVkaXRhYmxlU3R5bGUtPnZpc2l0ZWRE
ZXBlbmRlbnRDb2xvcldpdGhDb2xvckZpbHRlcihDU1NQcm9wZXJ0eUJhY2tncm91bmRDb2xvcik7
CisgICAgICAgIGF1dG8gZWxlbWVudEJhY2tncm91bmRDb2xvciA9IGVsZW1lbnRTdHlsZS52aXNp
dGVkRGVwZW5kZW50Q29sb3JXaXRoQ29sb3JGaWx0ZXIoQ1NTUHJvcGVydHlCYWNrZ3JvdW5kQ29s
b3IpOworICAgICAgICBhdXRvIGRpc2FwcGVhcnNJbnRvQmFja2dyb3VuZCA9IHJvb3RFZGl0YWJs
ZUJhY2tncm91bmRDb2xvci5ibGVuZChlbGVtZW50QmFja2dyb3VuZENvbG9yKSA9PSByb290RWRp
dGFibGVCYWNrZ3JvdW5kQ29sb3I7CisgICAgICAgIGlmIChkaXNhcHBlYXJzSW50b0JhY2tncm91
bmQpCisgICAgICAgICAgICByZXR1cm4gcm9vdEVkaXRhYmxlU3R5bGUtPnZpc2l0ZWREZXBlbmRl
bnRDb2xvcldpdGhDb2xvckZpbHRlcihDU1NQcm9wZXJ0eUNhcmV0Q29sb3IpOworICAgIH0KKyAg
ICByZXR1cm4gZWxlbWVudFN0eWxlLnZpc2l0ZWREZXBlbmRlbnRDb2xvcldpdGhDb2xvckZpbHRl
cihDU1NQcm9wZXJ0eUNhcmV0Q29sb3IpOworfQorCiB2b2lkIENhcmV0QmFzZTo6cGFpbnRDYXJl
dChOb2RlKiBub2RlLCBHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0IExheW91dFBvaW50
JiBwYWludE9mZnNldCwgY29uc3QgTGF5b3V0UmVjdCYgY2xpcFJlY3QpIGNvbnN0CiB7CiAjaWYg
RU5BQkxFKFRFWFRfQ0FSRVQpCkBAIC0xNzg0LDIyICsxODAzLDggQEAgdm9pZCBDYXJldEJhc2U6
OnBhaW50Q2FyZXQoTm9kZSogbm9kZSwgR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0LCBjb25zdCBM
YXlvdXRQb2kKIAogICAgIENvbG9yIGNhcmV0Q29sb3IgPSBDb2xvcjo6YmxhY2s7CiAgICAgRWxl
bWVudCogZWxlbWVudCA9IGlzPEVsZW1lbnQ+KCpub2RlKSA/IGRvd25jYXN0PEVsZW1lbnQ+KG5v
ZGUpIDogbm9kZS0+cGFyZW50RWxlbWVudCgpOwotICAgIGlmIChlbGVtZW50ICYmIGVsZW1lbnQt
PnJlbmRlcmVyKCkpIHsKLSAgICAgICAgYXV0byBjb21wdXRlQ2FyZXRDb2xvciA9IFtdIChjb25z
dCBSZW5kZXJTdHlsZSYgZWxlbWVudFN0eWxlLCBjb25zdCBSZW5kZXJTdHlsZSogcm9vdEVkaXRh
YmxlU3R5bGUpIHsKLSAgICAgICAgICAgIC8vIENTUyB2YWx1ZSAiYXV0byIgaXMgdHJlYXRlZCBh
cyBhbiBpbnZhbGlkIGNvbG9yLgotICAgICAgICAgICAgaWYgKCFlbGVtZW50U3R5bGUuY2FyZXRD
b2xvcigpLmlzVmFsaWQoKSAmJiByb290RWRpdGFibGVTdHlsZSkgewotICAgICAgICAgICAgICAg
IGF1dG8gcm9vdEVkaXRhYmxlQmFja2dyb3VuZENvbG9yID0gcm9vdEVkaXRhYmxlU3R5bGUtPnZp
c2l0ZWREZXBlbmRlbnRDb2xvcldpdGhDb2xvckZpbHRlcihDU1NQcm9wZXJ0eUJhY2tncm91bmRD
b2xvcik7Ci0gICAgICAgICAgICAgICAgYXV0byBlbGVtZW50QmFja2dyb3VuZENvbG9yID0gZWxl
bWVudFN0eWxlLnZpc2l0ZWREZXBlbmRlbnRDb2xvcldpdGhDb2xvckZpbHRlcihDU1NQcm9wZXJ0
eUJhY2tncm91bmRDb2xvcik7Ci0gICAgICAgICAgICAgICAgYXV0byBkaXNhcHBlYXJzSW50b0Jh
Y2tncm91bmQgPSByb290RWRpdGFibGVCYWNrZ3JvdW5kQ29sb3IuYmxlbmQoZWxlbWVudEJhY2tn
cm91bmRDb2xvcikgPT0gcm9vdEVkaXRhYmxlQmFja2dyb3VuZENvbG9yOwotICAgICAgICAgICAg
ICAgIGlmIChkaXNhcHBlYXJzSW50b0JhY2tncm91bmQpCi0gICAgICAgICAgICAgICAgICAgIHJl
dHVybiByb290RWRpdGFibGVTdHlsZS0+dmlzaXRlZERlcGVuZGVudENvbG9yV2l0aENvbG9yRmls
dGVyKENTU1Byb3BlcnR5Q2FyZXRDb2xvcik7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBy
ZXR1cm4gZWxlbWVudFN0eWxlLnZpc2l0ZWREZXBlbmRlbnRDb2xvcldpdGhDb2xvckZpbHRlcihD
U1NQcm9wZXJ0eUNhcmV0Q29sb3IpOwotICAgICAgICB9OwotICAgICAgICBhdXRvKiByb290RWRp
dGFibGVFbGVtZW50ID0gbm9kZS0+cm9vdEVkaXRhYmxlRWxlbWVudCgpOwotICAgICAgICBhdXRv
KiByb290RWRpdGFibGVTdHlsZSA9IHJvb3RFZGl0YWJsZUVsZW1lbnQgJiYgcm9vdEVkaXRhYmxl
RWxlbWVudC0+cmVuZGVyZXIoKSA/ICZyb290RWRpdGFibGVFbGVtZW50LT5yZW5kZXJlcigpLT5z
dHlsZSgpIDogbnVsbHB0cjsKLSAgICAgICAgY2FyZXRDb2xvciA9IGNvbXB1dGVDYXJldENvbG9y
KGVsZW1lbnQtPnJlbmRlcmVyKCktPnN0eWxlKCksIHJvb3RFZGl0YWJsZVN0eWxlKTsKLSAgICB9
CisgICAgaWYgKGVsZW1lbnQgJiYgZWxlbWVudC0+cmVuZGVyZXIoKSkKKyAgICAgICAgY2FyZXRD
b2xvciA9IENhcmV0QmFzZTo6Y29tcHV0ZUNhcmV0Q29sb3IoZWxlbWVudC0+cmVuZGVyZXIoKS0+
c3R5bGUoKSwgbm9kZSk7CiAKICAgICBjb250ZXh0LmZpbGxSZWN0KGNhcmV0LCBjYXJldENvbG9y
KTsKICNlbHNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0ZyYW1lU2VsZWN0
aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmgKaW5kZXggNDQ4
NGFmYWVmNjExZmNmMjllMTI5OWYyZWEzN2QzYjdlNGYxZWVlNi4uMjg1NTkxNzg0YTlmZTNhMjcx
ZTg0OGUxMTJjZjA1MjczNDcwNDgwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGlu
Zy9GcmFtZVNlbGVjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRnJhbWVTZWxl
Y3Rpb24uaApAQCAtNjIsNiArNjIsOCBAQCBlbnVtIFJldmVhbEV4dGVudE9wdGlvbiB7CiBjbGFz
cyBDYXJldEJhc2UgewogICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKENhcmV0QmFzZSk7CiAgICAg
V1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CitwdWJsaWM6CisgICAgV0VCQ09SRV9FWFBPUlQgc3Rh
dGljIENvbG9yIGNvbXB1dGVDYXJldENvbG9yKGNvbnN0IFJlbmRlclN0eWxlJiBlbGVtZW50U3R5
bGUsIE5vZGUqKTsKIHByb3RlY3RlZDoKICAgICBlbnVtIENhcmV0VmlzaWJpbGl0eSB7IFZpc2li
bGUsIEhpZGRlbiB9OwogICAgIGV4cGxpY2l0IENhcmV0QmFzZShDYXJldFZpc2liaWxpdHkgPSBI
aWRkZW4pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVu
dFZpZXdJbnRlcmFjdGlvbi5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRl
bnRWaWV3SW50ZXJhY3Rpb24ubW0KaW5kZXggNTZhYjE3ODE3MTE4MDM0ZGIzYWM2ZjRlMGQ4MTFj
MjUyNjA2MjJhNy4uN2ExNmE5NzdiZTY0YTJmOTk3NzRmYmMzZjViOGNlZTdkY2NmOWFlNiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFj
dGlvbi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0lu
dGVyYWN0aW9uLm1tCkBAIC0zMjIzLDcgKzMyMjMsMTIgQEAgLSAoTlNEaWN0aW9uYXJ5ICopdGV4
dFN0eWxpbmdBdFBvc2l0aW9uOihVSVRleHRQb3NpdGlvbiAqKXBvc2l0aW9uIGluRGlyZWN0aW9u
OigKIAogLSAoVUlDb2xvciAqKWluc2VydGlvblBvaW50Q29sb3IKIHsKKyAgICAvLyBPbiBtYWND
YXRhbHlzdCB3ZSBuZWVkIHRvIGV4cGxpY2l0bHkgcmV0dXJuIHRoZSBjb2xvciB3ZSBoYXZlIGNh
bGN1bGF0ZWQsIHJhdGhlciB0aGFuIHJlbHkgb24gdGV4dFRyYWl0cywgYXMgb24gbWFjQ2F0YWx5
c3QsIFVJS2l0IGlnbm9yZXMgdGV4dCB0cmFpdHMsIGFuZCByZWxpZXMgb24gQXBwS2l0J3MgY2Fs
dWxhdGlvbiwgd2hpY2ggY2Fubm90IHRyYWNrIGRhcmsgbW9kZSBjb3JyZWN0bHkgaW4gd2ViIGNv
bnRlbnQuCisjaWYgUExBVEZPUk0oTUFDQ0FUQUxZU1QpCisgICAgcmV0dXJuIFtzZWxmIF9jYXNj
YWRlSW50ZXJhY3Rpb25UaW50Q29sb3JdOworI2Vsc2UKICAgICByZXR1cm4gW3NlbGYudGV4dElu
cHV0VHJhaXRzIGluc2VydGlvblBvaW50Q29sb3JdOworI2VuZGlmCiB9CiAKIC0gKFVJQ29sb3Ig
KilzZWxlY3Rpb25CYXJDb2xvcgpAQCAtMzIzNiwyMiArMzI0MSwyMiBAQCAtIChVSUNvbG9yICop
c2VsZWN0aW9uSGlnaGxpZ2h0Q29sb3IKICAgICByZXR1cm4gW3NlbGYudGV4dElucHV0VHJhaXRz
IHNlbGVjdGlvbkhpZ2hsaWdodENvbG9yXTsKIH0KIAotLSAodm9pZClfdXBkYXRlSW50ZXJhY3Rp
b25UaW50Q29sb3IKKy0gKFVJQ29sb3IgKilfY2FzY2FkZUludGVyYWN0aW9uVGludENvbG9yCiB7
Ci0gICAgVUlDb2xvciAqdGludENvbG9yID0gXnsKLSAgICAgICAgaWYgKCFzZWxmLndlYlZpZXcu
Y29uZmlndXJhdGlvbi5fdGV4dEludGVyYWN0aW9uR2VzdHVyZXNFbmFibGVkKQotICAgICAgICAg
ICAgcmV0dXJuIFtVSUNvbG9yIGNsZWFyQ29sb3JdOworICAgIGlmICghc2VsZi53ZWJWaWV3LmNv
bmZpZ3VyYXRpb24uX3RleHRJbnRlcmFjdGlvbkdlc3R1cmVzRW5hYmxlZCkKKyAgICAgICAgcmV0
dXJuIFtVSUNvbG9yIGNsZWFyQ29sb3JdOwogCi0gICAgICAgIGlmICghX3BhZ2UtPmVkaXRvclN0
YXRlKCkuaXNNaXNzaW5nUG9zdExheW91dERhdGEpIHsKLSAgICAgICAgICAgIFdlYkNvcmU6OkNv
bG9yIGNhcmV0Q29sb3IgPSBfcGFnZS0+ZWRpdG9yU3RhdGUoKS5wb3N0TGF5b3V0RGF0YSgpLmNh
cmV0Q29sb3I7Ci0gICAgICAgICAgICBpZiAoY2FyZXRDb2xvci5pc1ZhbGlkKCkpCi0gICAgICAg
ICAgICAgICAgcmV0dXJuIFtVSUNvbG9yIGNvbG9yV2l0aENHQ29sb3I6Y2FjaGVkQ0dDb2xvcihj
YXJldENvbG9yKV07Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIHJldHVybiBbc2VsZiBf
aW5oZXJpdGVkSW50ZXJhY3Rpb25UaW50Q29sb3JdOyAgICAKLSAgICB9KCk7CisgICAgaWYgKCFf
cGFnZS0+ZWRpdG9yU3RhdGUoKS5pc01pc3NpbmdQb3N0TGF5b3V0RGF0YSkgeworICAgICAgICBX
ZWJDb3JlOjpDb2xvciBjYXJldENvbG9yID0gX3BhZ2UtPmVkaXRvclN0YXRlKCkucG9zdExheW91
dERhdGEoKS5jYXJldENvbG9yOworICAgICAgICBpZiAoY2FyZXRDb2xvci5pc1ZhbGlkKCkpCisg
ICAgICAgICAgICByZXR1cm4gW1VJQ29sb3IgY29sb3JXaXRoQ0dDb2xvcjpjYWNoZWRDR0NvbG9y
KGNhcmV0Q29sb3IpXTsKKyAgICB9CisgICAgcmV0dXJuIFtzZWxmIF9pbmhlcml0ZWRJbnRlcmFj
dGlvblRpbnRDb2xvcl07Cit9CiAKLSAgICBbX3RyYWl0cyBfc2V0Q29sb3JzVG9NYXRjaFRpbnRD
b2xvcjp0aW50Q29sb3JdOworLSAodm9pZClfdXBkYXRlSW50ZXJhY3Rpb25UaW50Q29sb3IKK3sK
KyAgICBbX3RyYWl0cyBfc2V0Q29sb3JzVG9NYXRjaFRpbnRDb2xvcjpbc2VsZiBfY2FzY2FkZUlu
dGVyYWN0aW9uVGludENvbG9yXV07CiB9CiAKIC0gKHZvaWQpdGludENvbG9yRGlkQ2hhbmdlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9pb3MvV2ViUGFnZUlP
Uy5tbSBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1t
CmluZGV4IDg1YWMzNDBkMWEzMzZlNzVkNWUwNTQxMzNiMWE5ZWFkYjAyYTI3MjQuLjYxZjJiNGFl
MDBhZjYxMWIwZjA5NTExNjBiZThlZjIwYWUyY2U1OTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCisrKyBiL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCkBAIC0yNzQsNyArMjc0LDcg
QEAgdm9pZCBXZWJQYWdlOjpwbGF0Zm9ybUVkaXRvclN0YXRlKEZyYW1lJiBmcmFtZSwgRWRpdG9y
U3RhdGUmIHJlc3VsdCwgSW5jbHVkZVBvc3QKICAgICAgICAgaWYgKG1fZm9jdXNlZEVsZW1lbnQg
JiYgbV9mb2N1c2VkRWxlbWVudC0+cmVuZGVyZXIoKSkgewogICAgICAgICAgICAgYXV0byYgcmVu
ZGVyZXIgPSAqbV9mb2N1c2VkRWxlbWVudC0+cmVuZGVyZXIoKTsKICAgICAgICAgICAgIHBvc3RM
YXlvdXREYXRhLmZvY3VzZWRFbGVtZW50UmVjdCA9IHJvb3RWaWV3SW50ZXJhY3Rpb25Cb3VuZHNG
b3JFbGVtZW50KCptX2ZvY3VzZWRFbGVtZW50KTsKLSAgICAgICAgICAgIHBvc3RMYXlvdXREYXRh
LmNhcmV0Q29sb3IgPSByZW5kZXJlci5zdHlsZSgpLmNhcmV0Q29sb3IoKTsKKyAgICAgICAgICAg
IHBvc3RMYXlvdXREYXRhLmNhcmV0Q29sb3IgPSBDYXJldEJhc2U6OmNvbXB1dGVDYXJldENvbG9y
KHJlbmRlcmVyLnN0eWxlKCksIHJlbmRlcmVyLmVsZW1lbnQoKSk7CiAgICAgICAgIH0KICAgICAg
ICAgaWYgKHJlc3VsdC5pc0NvbnRlbnRFZGl0YWJsZSkgewogICAgICAgICAgICAgaWYgKGF1dG8g
ZWRpdGFibGVSb290T3JGb3JtQ29udHJvbCA9IG1ha2VSZWZQdHIoc2VsZWN0aW9uLnJvb3RFZGl0
YWJsZUVsZW1lbnQoKSkpIHsK
</data>
<flag name="review"
          id="406660"
          type_id="1"
          status="+"
          setter="thorton"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>391105</attachid>
            <date>2020-02-18 15:26:24 -0800</date>
            <delta_ts>2020-02-19 08:57:20 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207789-20200218152624.patch</filename>
            <type>text/plain</type>
            <size>9593</size>
            <attacher name="Megan Gardner">megan_gardner</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU2ODM1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2JmZjMzZGU0MTkwYjcz
YjU5YzhhYmFjMTExOTBjYjBiYzYxOTMxYi4uZGE2YWQ4ODUwZTE3MzgxODdhZTgxMjQ1MzU3ZmU5
MDI4MTg1YzI2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDIwLTAyLTE0ICBNZWdh
biBHYXJkbmVyICA8bWVnYW5fZ2FyZG5lckBhcHBsZS5jb20+CisKKyAgICAgICAgRW5zdXJlIHRo
YXQgY29udGVudGVkaXRhYmxlIGNhcmV0cyBvbiBtYWNDYXRhbHlzdCBhcmUgdGhlIHJpZ2h0IGNv
bG9yLCBlc3BlY2lhbGx5IGluIERhcmsgTW9kZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA3Nzg5CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81OTQy
OTcxNT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBG
YWN0b3Igb3V0IGNhcmV0IGNvbG9yIGNhbGN1bGF0aW9uIHRvIGJlIHVzZWQgaW4gV2ViUGFnZUlP
Uy4KKworICAgICAgICBGaXhlcyBFZGl0b3JTdGF0ZVRlc3RzLkNhcmV0Q29sb3JJbkNvbnRlbnRF
ZGl0YWJsZS4KKworICAgICAgICAqIGVkaXRpbmcvRnJhbWVTZWxlY3Rpb24uY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6Q2FyZXRCYXNlOjpjb21wdXRlQ2FyZXRDb2xvcik6CisgICAgICAgIChXZWJD
b3JlOjpDYXJldEJhc2U6OnBhaW50Q2FyZXQgY29uc3QpOgorICAgICAgICAqIGVkaXRpbmcvRnJh
bWVTZWxlY3Rpb24uaDoKKwogMjAyMC0wMi0xOCAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2Vy
QGFwcGxlLmNvbT4KIAogICAgICAgICBNb3ZlIGZyb20gImxheWVyIGZsdXNoIiB0ZXJtaW5vbG9n
eSB0byAicmVuZGVyaW5nIHVwZGF0ZSIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdl
TG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggNjE3MmFjZGQzNDYyNWY3Y2Y5NGEx
OGNmMTVlMjVkMzE4ZDcxOWZkMi4uZDcyNjM4YzM0ZjcyYzdjNTkzMWJiZWI0NTYwMGIzNTQ2NGIx
NmMwZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
YktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAyMC0wMi0xNCAgTWVnYW4gR2FyZG5l
ciAgPG1lZ2FuX2dhcmRuZXJAYXBwbGUuY29tPgorCisgICAgICAgIEVuc3VyZSB0aGF0IGNvbnRl
bnRlZGl0YWJsZSBjYXJldHMgb24gbWFjQ2F0YWx5c3QgYXJlIHRoZSByaWdodCBjb2xvciwgZXNw
ZWNpYWxseSBpbiBEYXJrIE1vZGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIwNzc4OQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTk0Mjk3MTU+CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQmVjYXVzZSBV
SUtpdCBvbmx5IHVzZXMgbGFiZWwgY29sb3IgZm9yIHRoZSBjYXJldCBpbiBtYWNDYXRhbHlzdCwg
CisgICAgICAgIHdlIG5lZWQgc2tpcCB0ZXh0IGlucHV0IHRyYWl0cyBhbmQgc2VuZCB0aGUgY29y
cmVjdGx5IGNhbGN1bGF0ZWQgY29sb3IgCisgICAgICAgIHRvIFVJS2l0LgorCisgICAgICAgICog
VUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW06CisgICAgICAgICgtW1dL
Q29udGVudFZpZXcgaW5zZXJ0aW9uUG9pbnRDb2xvcl0pOgorICAgICAgICAoLVtXS0NvbnRlbnRW
aWV3IGdldEludGVyYWN0aW9uVGludENvbG9yXSk6CisgICAgICAgICgtW1dLQ29udGVudFZpZXcg
X3VwZGF0ZUludGVyYWN0aW9uVGludENvbG9yXSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQ
YWdlL2lvcy9XZWJQYWdlSU9TLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpwbGF0Zm9y
bUVkaXRvclN0YXRlIGNvbnN0KToKKwogMjAyMC0wMi0xOCAgU2ltb24gRnJhc2VyICA8c2ltb24u
ZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBNb3ZlIGZyb20gImxheWVyIGZsdXNoIiB0ZXJt
aW5vbG9neSB0byAicmVuZGVyaW5nIHVwZGF0ZSIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2VkaXRpbmcvRnJhbWVTZWxlY3Rpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9GcmFt
ZVNlbGVjdGlvbi5jcHAKaW5kZXggMmQ0MWI3MzJmMGRmYTk3NjYwMjk0ZWEwZWRlYmIxNWM5OGM2
NmUwNi4uY2ZkYzM5ZjA0ZWFjNDA2ODRkMWQyNDhiN2I4NzM1NjRlMDI4Mjk2NCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9GcmFtZVNlbGVjdGlvbi5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvZWRpdGluZy9GcmFtZVNlbGVjdGlvbi5jcHAKQEAgLTE3NjgsNiArMTc2OCwyNyBA
QCB2b2lkIEZyYW1lU2VsZWN0aW9uOjpwYWludENhcmV0KEdyYXBoaWNzQ29udGV4dCYgY29udGV4
dCwgY29uc3QgTGF5b3V0UG9pbnQmIHBhaQogICAgICAgICBDYXJldEJhc2U6OnBhaW50Q2FyZXQo
bV9zZWxlY3Rpb24uc3RhcnQoKS5kZXByZWNhdGVkTm9kZSgpLCBjb250ZXh0LCBwYWludE9mZnNl
dCwgY2xpcFJlY3QpOwogfQogCitDb2xvciBDYXJldEJhc2U6OmNvbXB1dGVDYXJldENvbG9yKGNv
bnN0IFJlbmRlclN0eWxlJiBlbGVtZW50U3R5bGUsIE5vZGUqIG5vZGUpCit7CisgICAgLy8gT24g
aU9TLCB3ZSB3YW50IHRvIGZhbGwgYmFjayB0byB0aGUgdGludENvbG9yLCBhbmQgb25seSBvdmVy
cmlkZSBpZiBDU1MgaGFzIGV4cGxpY2l0bHkgc3BlY2lmaWVkIGEgY3VzdG9tIGNvbG9yLgorI2lm
IFBMQVRGT1JNKElPU19GQU1JTFkpICYmICFQTEFURk9STShNQUNDQVRBTFlTVCkKKyAgICBVTlVT
RURfUEFSQU0obm9kZSk7CisgICAgcmV0dXJuIGVsZW1lbnRTdHlsZS5jYXJldENvbG9yKCk7Cisj
ZWxzZQorICAgIGF1dG8qIHJvb3RFZGl0YWJsZUVsZW1lbnQgPSBub2RlID8gbm9kZS0+cm9vdEVk
aXRhYmxlRWxlbWVudCgpIDogbnVsbHB0cjsKKyAgICBhdXRvKiByb290RWRpdGFibGVTdHlsZSA9
IHJvb3RFZGl0YWJsZUVsZW1lbnQgJiYgcm9vdEVkaXRhYmxlRWxlbWVudC0+cmVuZGVyZXIoKSA/
ICZyb290RWRpdGFibGVFbGVtZW50LT5yZW5kZXJlcigpLT5zdHlsZSgpIDogbnVsbHB0cjsKKyAg
ICAvLyBDU1MgdmFsdWUgImF1dG8iIGlzIHRyZWF0ZWQgYXMgYW4gaW52YWxpZCBjb2xvci4KKyAg
ICBpZiAoIWVsZW1lbnRTdHlsZS5jYXJldENvbG9yKCkuaXNWYWxpZCgpICYmIHJvb3RFZGl0YWJs
ZVN0eWxlKSB7CisgICAgICAgIGF1dG8gcm9vdEVkaXRhYmxlQmFja2dyb3VuZENvbG9yID0gcm9v
dEVkaXRhYmxlU3R5bGUtPnZpc2l0ZWREZXBlbmRlbnRDb2xvcldpdGhDb2xvckZpbHRlcihDU1NQ
cm9wZXJ0eUJhY2tncm91bmRDb2xvcik7CisgICAgICAgIGF1dG8gZWxlbWVudEJhY2tncm91bmRD
b2xvciA9IGVsZW1lbnRTdHlsZS52aXNpdGVkRGVwZW5kZW50Q29sb3JXaXRoQ29sb3JGaWx0ZXIo
Q1NTUHJvcGVydHlCYWNrZ3JvdW5kQ29sb3IpOworICAgICAgICBhdXRvIGRpc2FwcGVhcnNJbnRv
QmFja2dyb3VuZCA9IHJvb3RFZGl0YWJsZUJhY2tncm91bmRDb2xvci5ibGVuZChlbGVtZW50QmFj
a2dyb3VuZENvbG9yKSA9PSByb290RWRpdGFibGVCYWNrZ3JvdW5kQ29sb3I7CisgICAgICAgIGlm
IChkaXNhcHBlYXJzSW50b0JhY2tncm91bmQpCisgICAgICAgICAgICByZXR1cm4gcm9vdEVkaXRh
YmxlU3R5bGUtPnZpc2l0ZWREZXBlbmRlbnRDb2xvcldpdGhDb2xvckZpbHRlcihDU1NQcm9wZXJ0
eUNhcmV0Q29sb3IpOworICAgIH0KKyAgICByZXR1cm4gZWxlbWVudFN0eWxlLnZpc2l0ZWREZXBl
bmRlbnRDb2xvcldpdGhDb2xvckZpbHRlcihDU1NQcm9wZXJ0eUNhcmV0Q29sb3IpOworI2VuZGlm
Cit9CisKIHZvaWQgQ2FyZXRCYXNlOjpwYWludENhcmV0KE5vZGUqIG5vZGUsIEdyYXBoaWNzQ29u
dGV4dCYgY29udGV4dCwgY29uc3QgTGF5b3V0UG9pbnQmIHBhaW50T2Zmc2V0LCBjb25zdCBMYXlv
dXRSZWN0JiBjbGlwUmVjdCkgY29uc3QKIHsKICNpZiBFTkFCTEUoVEVYVF9DQVJFVCkKQEAgLTE3
ODQsMjIgKzE4MDUsOCBAQCB2b2lkIENhcmV0QmFzZTo6cGFpbnRDYXJldChOb2RlKiBub2RlLCBH
cmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0IExheW91dFBvaQogCiAgICAgQ29sb3IgY2Fy
ZXRDb2xvciA9IENvbG9yOjpibGFjazsKICAgICBFbGVtZW50KiBlbGVtZW50ID0gaXM8RWxlbWVu
dD4oKm5vZGUpID8gZG93bmNhc3Q8RWxlbWVudD4obm9kZSkgOiBub2RlLT5wYXJlbnRFbGVtZW50
KCk7Ci0gICAgaWYgKGVsZW1lbnQgJiYgZWxlbWVudC0+cmVuZGVyZXIoKSkgewotICAgICAgICBh
dXRvIGNvbXB1dGVDYXJldENvbG9yID0gW10gKGNvbnN0IFJlbmRlclN0eWxlJiBlbGVtZW50U3R5
bGUsIGNvbnN0IFJlbmRlclN0eWxlKiByb290RWRpdGFibGVTdHlsZSkgewotICAgICAgICAgICAg
Ly8gQ1NTIHZhbHVlICJhdXRvIiBpcyB0cmVhdGVkIGFzIGFuIGludmFsaWQgY29sb3IuCi0gICAg
ICAgICAgICBpZiAoIWVsZW1lbnRTdHlsZS5jYXJldENvbG9yKCkuaXNWYWxpZCgpICYmIHJvb3RF
ZGl0YWJsZVN0eWxlKSB7Ci0gICAgICAgICAgICAgICAgYXV0byByb290RWRpdGFibGVCYWNrZ3Jv
dW5kQ29sb3IgPSByb290RWRpdGFibGVTdHlsZS0+dmlzaXRlZERlcGVuZGVudENvbG9yV2l0aENv
bG9yRmlsdGVyKENTU1Byb3BlcnR5QmFja2dyb3VuZENvbG9yKTsKLSAgICAgICAgICAgICAgICBh
dXRvIGVsZW1lbnRCYWNrZ3JvdW5kQ29sb3IgPSBlbGVtZW50U3R5bGUudmlzaXRlZERlcGVuZGVu
dENvbG9yV2l0aENvbG9yRmlsdGVyKENTU1Byb3BlcnR5QmFja2dyb3VuZENvbG9yKTsKLSAgICAg
ICAgICAgICAgICBhdXRvIGRpc2FwcGVhcnNJbnRvQmFja2dyb3VuZCA9IHJvb3RFZGl0YWJsZUJh
Y2tncm91bmRDb2xvci5ibGVuZChlbGVtZW50QmFja2dyb3VuZENvbG9yKSA9PSByb290RWRpdGFi
bGVCYWNrZ3JvdW5kQ29sb3I7Ci0gICAgICAgICAgICAgICAgaWYgKGRpc2FwcGVhcnNJbnRvQmFj
a2dyb3VuZCkKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJvb3RFZGl0YWJsZVN0eWxlLT52
aXNpdGVkRGVwZW5kZW50Q29sb3JXaXRoQ29sb3JGaWx0ZXIoQ1NTUHJvcGVydHlDYXJldENvbG9y
KTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIHJldHVybiBlbGVtZW50U3R5bGUudmlzaXRl
ZERlcGVuZGVudENvbG9yV2l0aENvbG9yRmlsdGVyKENTU1Byb3BlcnR5Q2FyZXRDb2xvcik7Ci0g
ICAgICAgIH07Ci0gICAgICAgIGF1dG8qIHJvb3RFZGl0YWJsZUVsZW1lbnQgPSBub2RlLT5yb290
RWRpdGFibGVFbGVtZW50KCk7Ci0gICAgICAgIGF1dG8qIHJvb3RFZGl0YWJsZVN0eWxlID0gcm9v
dEVkaXRhYmxlRWxlbWVudCAmJiByb290RWRpdGFibGVFbGVtZW50LT5yZW5kZXJlcigpID8gJnJv
b3RFZGl0YWJsZUVsZW1lbnQtPnJlbmRlcmVyKCktPnN0eWxlKCkgOiBudWxscHRyOwotICAgICAg
ICBjYXJldENvbG9yID0gY29tcHV0ZUNhcmV0Q29sb3IoZWxlbWVudC0+cmVuZGVyZXIoKS0+c3R5
bGUoKSwgcm9vdEVkaXRhYmxlU3R5bGUpOwotICAgIH0KKyAgICBpZiAoZWxlbWVudCAmJiBlbGVt
ZW50LT5yZW5kZXJlcigpKQorICAgICAgICBjYXJldENvbG9yID0gQ2FyZXRCYXNlOjpjb21wdXRl
Q2FyZXRDb2xvcihlbGVtZW50LT5yZW5kZXJlcigpLT5zdHlsZSgpLCBub2RlKTsKIAogICAgIGNv
bnRleHQuZmlsbFJlY3QoY2FyZXQsIGNhcmV0Q29sb3IpOwogI2Vsc2UKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2VkaXRpbmcvRnJhbWVTZWxlY3Rpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2Vk
aXRpbmcvRnJhbWVTZWxlY3Rpb24uaAppbmRleCA0NDg0YWZhZWY2MTFmY2YyOWUxMjk5ZjJlYTM3
ZDNiN2U0ZjFlZWU2Li4yODU1OTE3ODRhOWZlM2EyNzFlODQ4ZTExMmNmMDUyNzM0NzA0ODAwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvZWRpdGluZy9GcmFtZVNlbGVjdGlvbi5oCkBAIC02Miw2ICs2Miw4IEBA
IGVudW0gUmV2ZWFsRXh0ZW50T3B0aW9uIHsKIGNsYXNzIENhcmV0QmFzZSB7CiAgICAgV1RGX01B
S0VfTk9OQ09QWUFCTEUoQ2FyZXRCYXNlKTsKICAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsK
K3B1YmxpYzoKKyAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgQ29sb3IgY29tcHV0ZUNhcmV0Q29s
b3IoY29uc3QgUmVuZGVyU3R5bGUmIGVsZW1lbnRTdHlsZSwgTm9kZSopOwogcHJvdGVjdGVkOgog
ICAgIGVudW0gQ2FyZXRWaXNpYmlsaXR5IHsgVmlzaWJsZSwgSGlkZGVuIH07CiAgICAgZXhwbGlj
aXQgQ2FyZXRCYXNlKENhcmV0VmlzaWJpbGl0eSA9IEhpZGRlbik7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tIGIvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbQppbmRl
eCA1NmFiMTc4MTcxMTgwMzRkYjNhYzZmNGUwZDgxMWMyNTI2MDYyMmE3Li5iNDI2YzYxOThjNjk4
NGI4YmRmOTQ5YjFhOWEyOTc1MDZkMWM4YjU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCisrKyBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0KQEAgLTMyMjMsNyAr
MzIyMywxMiBAQCAtIChOU0RpY3Rpb25hcnkgKil0ZXh0U3R5bGluZ0F0UG9zaXRpb246KFVJVGV4
dFBvc2l0aW9uICopcG9zaXRpb24gaW5EaXJlY3Rpb246KAogCiAtIChVSUNvbG9yICopaW5zZXJ0
aW9uUG9pbnRDb2xvcgogeworICAgIC8vIE9uIG1hY0NhdGFseXN0IHdlIG5lZWQgdG8gZXhwbGlj
aXRseSByZXR1cm4gdGhlIGNvbG9yIHdlIGhhdmUgY2FsY3VsYXRlZCwgcmF0aGVyIHRoYW4gcmVs
eSBvbiB0ZXh0VHJhaXRzLCBhcyBvbiBtYWNDYXRhbHlzdCwgVUlLaXQgaWdub3JlcyB0ZXh0IHRy
YWl0cy4KKyNpZiBQTEFURk9STShNQUNDQVRBTFlTVCkKKyAgICByZXR1cm4gW3NlbGYgX2Nhc2Nh
ZGVJbnRlcmFjdGlvblRpbnRDb2xvcl07CisjZWxzZQogICAgIHJldHVybiBbc2VsZi50ZXh0SW5w
dXRUcmFpdHMgaW5zZXJ0aW9uUG9pbnRDb2xvcl07CisjZW5kaWYKIH0KIAogLSAoVUlDb2xvciAq
KXNlbGVjdGlvbkJhckNvbG9yCkBAIC0zMjM2LDIyICszMjQxLDIyIEBAIC0gKFVJQ29sb3IgKilz
ZWxlY3Rpb25IaWdobGlnaHRDb2xvcgogICAgIHJldHVybiBbc2VsZi50ZXh0SW5wdXRUcmFpdHMg
c2VsZWN0aW9uSGlnaGxpZ2h0Q29sb3JdOwogfQogCi0tICh2b2lkKV91cGRhdGVJbnRlcmFjdGlv
blRpbnRDb2xvcgorLSAoVUlDb2xvciAqKV9jYXNjYWRlSW50ZXJhY3Rpb25UaW50Q29sb3IKIHsK
LSAgICBVSUNvbG9yICp0aW50Q29sb3IgPSBeewotICAgICAgICBpZiAoIXNlbGYud2ViVmlldy5j
b25maWd1cmF0aW9uLl90ZXh0SW50ZXJhY3Rpb25HZXN0dXJlc0VuYWJsZWQpCi0gICAgICAgICAg
ICByZXR1cm4gW1VJQ29sb3IgY2xlYXJDb2xvcl07CisgICAgaWYgKCFzZWxmLndlYlZpZXcuY29u
ZmlndXJhdGlvbi5fdGV4dEludGVyYWN0aW9uR2VzdHVyZXNFbmFibGVkKQorICAgICAgICByZXR1
cm4gW1VJQ29sb3IgY2xlYXJDb2xvcl07CiAKLSAgICAgICAgaWYgKCFfcGFnZS0+ZWRpdG9yU3Rh
dGUoKS5pc01pc3NpbmdQb3N0TGF5b3V0RGF0YSkgewotICAgICAgICAgICAgV2ViQ29yZTo6Q29s
b3IgY2FyZXRDb2xvciA9IF9wYWdlLT5lZGl0b3JTdGF0ZSgpLnBvc3RMYXlvdXREYXRhKCkuY2Fy
ZXRDb2xvcjsKLSAgICAgICAgICAgIGlmIChjYXJldENvbG9yLmlzVmFsaWQoKSkKLSAgICAgICAg
ICAgICAgICByZXR1cm4gW1VJQ29sb3IgY29sb3JXaXRoQ0dDb2xvcjpjYWNoZWRDR0NvbG9yKGNh
cmV0Q29sb3IpXTsKLSAgICAgICAgfQotICAgICAgICAKLSAgICAgICAgcmV0dXJuIFtzZWxmIF9p
bmhlcml0ZWRJbnRlcmFjdGlvblRpbnRDb2xvcl07ICAgIAotICAgIH0oKTsKKyAgICBpZiAoIV9w
YWdlLT5lZGl0b3JTdGF0ZSgpLmlzTWlzc2luZ1Bvc3RMYXlvdXREYXRhKSB7CisgICAgICAgIFdl
YkNvcmU6OkNvbG9yIGNhcmV0Q29sb3IgPSBfcGFnZS0+ZWRpdG9yU3RhdGUoKS5wb3N0TGF5b3V0
RGF0YSgpLmNhcmV0Q29sb3I7CisgICAgICAgIGlmIChjYXJldENvbG9yLmlzVmFsaWQoKSkKKyAg
ICAgICAgICAgIHJldHVybiBbVUlDb2xvciBjb2xvcldpdGhDR0NvbG9yOmNhY2hlZENHQ29sb3Io
Y2FyZXRDb2xvcildOworICAgIH0KKyAgICByZXR1cm4gW3NlbGYgX2luaGVyaXRlZEludGVyYWN0
aW9uVGludENvbG9yXTsKK30KIAotICAgIFtfdHJhaXRzIF9zZXRDb2xvcnNUb01hdGNoVGludENv
bG9yOnRpbnRDb2xvcl07CistICh2b2lkKV91cGRhdGVJbnRlcmFjdGlvblRpbnRDb2xvcgorewor
ICAgIFtfdHJhaXRzIF9zZXRDb2xvcnNUb01hdGNoVGludENvbG9yOltzZWxmIF9jYXNjYWRlSW50
ZXJhY3Rpb25UaW50Q29sb3JdXTsKIH0KIAogLSAodm9pZCl0aW50Q29sb3JEaWRDaGFuZ2UKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9T
Lm1tIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0K
aW5kZXggODVhYzM0MGQxYTMzNmU3NWQ1ZTA1NDEzM2IxYTllYWRiMDJhMjcyNC4uNjFmMmI0YWUw
MGFmNjExYjBmMDk1MTE2MGJlOGVmMjBhZTJjZTU5MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0KKysrIGIvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0KQEAgLTI3NCw3ICsyNzQsNyBA
QCB2b2lkIFdlYlBhZ2U6OnBsYXRmb3JtRWRpdG9yU3RhdGUoRnJhbWUmIGZyYW1lLCBFZGl0b3JT
dGF0ZSYgcmVzdWx0LCBJbmNsdWRlUG9zdAogICAgICAgICBpZiAobV9mb2N1c2VkRWxlbWVudCAm
JiBtX2ZvY3VzZWRFbGVtZW50LT5yZW5kZXJlcigpKSB7CiAgICAgICAgICAgICBhdXRvJiByZW5k
ZXJlciA9ICptX2ZvY3VzZWRFbGVtZW50LT5yZW5kZXJlcigpOwogICAgICAgICAgICAgcG9zdExh
eW91dERhdGEuZm9jdXNlZEVsZW1lbnRSZWN0ID0gcm9vdFZpZXdJbnRlcmFjdGlvbkJvdW5kc0Zv
ckVsZW1lbnQoKm1fZm9jdXNlZEVsZW1lbnQpOwotICAgICAgICAgICAgcG9zdExheW91dERhdGEu
Y2FyZXRDb2xvciA9IHJlbmRlcmVyLnN0eWxlKCkuY2FyZXRDb2xvcigpOworICAgICAgICAgICAg
cG9zdExheW91dERhdGEuY2FyZXRDb2xvciA9IENhcmV0QmFzZTo6Y29tcHV0ZUNhcmV0Q29sb3Io
cmVuZGVyZXIuc3R5bGUoKSwgcmVuZGVyZXIuZWxlbWVudCgpKTsKICAgICAgICAgfQogICAgICAg
ICBpZiAocmVzdWx0LmlzQ29udGVudEVkaXRhYmxlKSB7CiAgICAgICAgICAgICBpZiAoYXV0byBl
ZGl0YWJsZVJvb3RPckZvcm1Db250cm9sID0gbWFrZVJlZlB0cihzZWxlY3Rpb24ucm9vdEVkaXRh
YmxlRWxlbWVudCgpKSkgewo=
</data>

          </attachment>
      

    </bug>

</bugzilla>