<?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>208779</bug_id>
          
          <creation_ts>2020-03-07 16:47:29 -0800</creation_ts>
          <short_desc>Adopt Context Menus for Data Detectors</short_desc>
          <delta_ts>2020-03-08 01:00:56 -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>thorton</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1627369</commentid>
    <comment_count>0</comment_count>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2020-03-07 16:47:29 -0800</bug_when>
    <thetext>Adopt Context Menus for Data Detectors</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1627371</commentid>
    <comment_count>1</comment_count>
      <attachid>392914</attachid>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2020-03-07 16:54:36 -0800</bug_when>
    <thetext>Created attachment 392914
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1627373</commentid>
    <comment_count>2</comment_count>
      <attachid>392914</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2020-03-07 17:07:03 -0800</bug_when>
    <thetext>Comment on attachment 392914
Patch

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

&gt; Source/WebKit/UIProcess/ios/WKActionSheetAssistant.h:65
&gt; +- (CGPoint)contextMenuDisplayLocation;

Cocoa tradition is to pass the object that&apos;s delegating behavior to the delegate methods. You even realized why, earlier (so that you can have one object be the delegate of multiple instances of the same class). See all of the others above.

&gt; Source/WebKit/UIProcess/ios/WKActionSheetAssistant.mm:738
&gt; +- (_UIContextMenuStyle *)_contextMenuInteraction:(UIContextMenuInteraction *)interaction styleForMenuWithConfiguration:(UIContextMenuConfiguration *)configuration

Missing a newline</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1627384</commentid>
    <comment_count>3</comment_count>
      <attachid>392918</attachid>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2020-03-07 17:24:33 -0800</bug_when>
    <thetext>Created attachment 392918
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1627390</commentid>
    <comment_count>4</comment_count>
      <attachid>392918</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2020-03-07 17:43:56 -0800</bug_when>
    <thetext>Comment on attachment 392918
Patch

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

&gt; Source/WebKit/UIProcess/ios/WKActionSheetAssistant.mm:691
&gt; +    [self ensureContextMenuInteraction];

Seems bad that we make and install it, and then don&apos;t present it, which means we won&apos;t remove it. I think this needs to be JUST before the -present

&gt; Source/WebKit/UIProcess/ios/WKActionSheetAssistant.mm:694
&gt; +    if ([delegate respondsToSelector:@selector(contextMenuDisplayLocation)]) {
&gt; +        [_dataDetectorContextMenuInteraction _presentMenuAtLocation:[delegate contextMenuDisplayLocation]];

You forgot to change the name here</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1627408</commentid>
    <comment_count>5</comment_count>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2020-03-07 18:40:56 -0800</bug_when>
    <thetext>&lt;rdar://problem/59358079&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1627453</commentid>
    <comment_count>6</comment_count>
      <attachid>392935</attachid>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2020-03-07 20:36:50 -0800</bug_when>
    <thetext>Created attachment 392935
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1627464</commentid>
    <comment_count>7</comment_count>
      <attachid>392937</attachid>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2020-03-07 22:24:56 -0800</bug_when>
    <thetext>Created attachment 392937
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1627467</commentid>
    <comment_count>8</comment_count>
      <attachid>392937</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2020-03-07 22:38:33 -0800</bug_when>
    <thetext>Comment on attachment 392937
Patch

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

&gt; Source/WebKit/UIProcess/ios/WKActionSheetAssistant.h:65
&gt; +- (CGPoint)contextMenuDisplayLocationForActionSheetAssistant:(WKActionSheetAssistant *)assistant;

Maybe &quot;presentation&quot; or &quot;origin&quot; instead of &quot;display&quot;, but I don&apos;t really care.

&gt; Source/WebKit/UIProcess/ios/WKActionSheetAssistant.mm:719
&gt; +- (UIContextMenuConfiguration *)contextMenuInteraction:(UIContextMenuInteraction *)interaction configurationForMenuAtLocation:(CGPoint)location

USE(UICONTEXTMENU)?

&gt; Source/WebKit/UIProcess/ios/WKActionSheetAssistant.mm:747
&gt; +    if ([delegate respondsToSelector:@selector(contextMenuDisplayLocationForActionSheetAssistant:)])
&gt; +        center = [delegate contextMenuDisplayLocationForActionSheetAssistant:self];
&gt; +    RetainPtr&lt;UIPreviewParameters&gt; unusedPreviewParameters = adoptNS([[UIPreviewParameters alloc] init]);
&gt; +    RetainPtr&lt;UIPreviewTarget&gt; previewTarget = adoptNS([[UIPreviewTarget alloc] initWithContainer:_view.getAutoreleased() center:center]);
&gt; +    RetainPtr&lt;UITargetedPreview&gt; preview = adoptNS([[UITargetedPreview alloc] initWithView:_view.getAutoreleased() parameters:unusedPreviewParameters.get() target:previewTarget.get()]);

How ugly is the hint? We probably want to share some of this with the better code in WKContentViewInteraction, but that can be in a follow-up</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1627468</commentid>
    <comment_count>9</comment_count>
      <attachid>392937</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-03-07 22:39:30 -0800</bug_when>
    <thetext>Comment on attachment 392937
Patch

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

&gt; Source/WebKit/UIProcess/ios/WKActionSheetAssistant.mm:645
&gt; +
&gt; +- (void)ensureContextMenuInteraction

Generally, -ensure* methods should return the object they’re ensuring (in this case, the _dataDetectorContextMenuInteraction). I think that if you added a return _dataDetectorContextMenuInteraction.get(); at the end here, it would allow you to then do this below:

        auto delegate = _delegate.get();
        if ([delegate respondsToSelector:@selector(contextMenuDisplayLocationForActionSheetAssistant:)]) {
            [[self ensureContextMenuInteraction] _presentMenuAtLocation:[delegate contextMenuDisplayLocationForActionSheetAssistant:self]];
            return;
        }

I believe this would also address Tim’s earlier comment in https://bugs.webkit.org/show_bug.cgi?id=208779#c4.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1627469</commentid>
    <comment_count>10</comment_count>
      <attachid>392938</attachid>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2020-03-07 22:50:48 -0800</bug_when>
    <thetext>Created attachment 392938
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1627470</commentid>
    <comment_count>11</comment_count>
      <attachid>392939</attachid>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2020-03-07 22:56:28 -0800</bug_when>
    <thetext>Created attachment 392939
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1627471</commentid>
    <comment_count>12</comment_count>
      <attachid>392940</attachid>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2020-03-07 23:02:29 -0800</bug_when>
    <thetext>Created attachment 392940
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1627472</commentid>
    <comment_count>13</comment_count>
      <attachid>392941</attachid>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2020-03-07 23:16:17 -0800</bug_when>
    <thetext>Created attachment 392941
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1627479</commentid>
    <comment_count>14</comment_count>
      <attachid>392944</attachid>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2020-03-08 00:17:12 -0800</bug_when>
    <thetext>Created attachment 392944
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1627481</commentid>
    <comment_count>15</comment_count>
      <attachid>392944</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-03-08 01:00:54 -0800</bug_when>
    <thetext>Comment on attachment 392944
Patch for landing

Clearing flags on attachment: 392944

Committed r258102: &lt;https://trac.webkit.org/changeset/258102&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1627482</commentid>
    <comment_count>16</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-03-08 01:00:56 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>392914</attachid>
            <date>2020-03-07 16:54:36 -0800</date>
            <delta_ts>2020-03-07 17:24:32 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208779-20200307165435.patch</filename>
            <type>text/plain</type>
            <size>8328</size>
            <attacher name="Megan Gardner">megan_gardner</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4MDQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDU4ZWExOTMzMjMwZjg1ZWJh
NmEwYzU4YTEzOGQzNTE2OGUzZTU2MzEuLmY1YTY4NWI0YTU4ZGI2OGZlMDVkZDMzY2I2MzEwNGQw
MzliYmYzMjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMjAtMDMtMDcgIE1lZ2FuIEdh
cmRuZXIgIDxtZWdhbl9nYXJkbmVyQGFwcGxlLmNvbT4KKworICAgICAgICBBZG9wdCBDb250ZXh0
IE1lbnVzIGZvciBEYXRhIERldGVjdG9ycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjA4Nzc5CisKKyAgICAgICAgU3dpdGNoIHRvIGNvbnRleHQgbWVu
dXMgZm9yIGRhdGEgZGV0ZWN0b3IgYWN0aW9uIHNoZWV0cy4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVl
dEFzc2lzdGFudC5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFzc2lz
dGFudC5tbToKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVldEFzc2lzdGFudCByZW1vdmVDb250ZXh0
TWVudUludGVyYWN0aW9uXSk6CisgICAgICAgICgtW1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQgZW5z
dXJlQ29udGV4dE1lbnVJbnRlcmFjdGlvbl0pOgorICAgICAgICAoLVtXS0FjdGlvblNoZWV0QXNz
aXN0YW50IHNob3dEYXRhRGV0ZWN0b3JzU2hlZXRdKToKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVl
dEFzc2lzdGFudCBjb250ZXh0TWVudUludGVyYWN0aW9uOmNvbmZpZ3VyYXRpb25Gb3JNZW51QXRM
b2NhdGlvbjpdKToKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVldEFzc2lzdGFudCBfY29udGV4dE1l
bnVJbnRlcmFjdGlvbjpzdHlsZUZvck1lbnVXaXRoQ29uZmlndXJhdGlvbjpdKToKKyAgICAgICAg
KC1bV0tBY3Rpb25TaGVldEFzc2lzdGFudCBjb250ZXh0TWVudUludGVyYWN0aW9uOndpbGxFbmRG
b3JDb25maWd1cmF0aW9uOmFuaW1hdG9yOl0pOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tD
b250ZW50Vmlld0ludGVyYWN0aW9uLmg6CisgICAgICAgICogVUlQcm9jZXNzL2lvcy9XS0NvbnRl
bnRWaWV3SW50ZXJhY3Rpb24ubW06CisgICAgICAgICgtW1dLQ29udGVudFZpZXcgcHJvZ3JhbW1h
dGljYWxseVByZXNlbnRpbmdDb250ZXh0TWVudUZvckRhdGFEZXRlY3RvcnNUYXBNZW51XSk6Cisg
ICAgICAgICgtW1dLQ29udGVudFZpZXcgX3Nob3dEYXRhRGV0ZWN0b3JzU2hlZXRdKToKKyAgICAg
ICAgKC1bV0tDb250ZW50VmlldyBjb250ZXh0TWVudURpc3BsYXlMb2NhdGlvbl0pOgorICAgICAg
ICAoLVtXS0NvbnRlbnRWaWV3IF9jb250ZXh0TWVudUludGVyYWN0aW9uOmNvbmZpZ3VyYXRpb25G
b3JNZW51QXRMb2NhdGlvbjpjb21wbGV0aW9uOl0pOgorICAgICAgICAoLVtXS0NvbnRlbnRWaWV3
IGNvbnRpbnVlQ29udGV4dE1lbnVJbnRlcmFjdGlvbldpdGhEYXRhRGV0ZWN0b3JzOl0pOgorICAg
ICAgICAoLVtXS0NvbnRlbnRWaWV3IF9jb250ZXh0TWVudUludGVyYWN0aW9uOnN0eWxlRm9yTWVu
dVdpdGhDb25maWd1cmF0aW9uOl0pOgorCiAyMDIwLTAzLTA2ICBBbmRyZXMgR29uemFsZXogIDxh
bmRyZXNnXzIyQGFwcGxlLmNvbT4KIAogICAgICAgICBJbXBsZW1lbnRhdGlvbiBvZiBBY2Nlc3Np
YmlsaXR5U3VwcG9ydCBBWFNJc29sYXRlZFRyZWVNb2RlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvaW9zL1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQuaCBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0QXNzaXN0YW50LmgKaW5kZXggYjA0ZGQxMDVh
OTQ3NjhkZDkwYWI5ZjZkYjQ4M2FkYWM2MzRkOTRlNy4uOWU4YjkyOWE2Y2NjNTc4MDQxYzQ3NTUx
MmE5YzdhODQwMGZjNjc5YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9z
L1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9p
b3MvV0tBY3Rpb25TaGVldEFzc2lzdGFudC5oCkBAIC00MCw2ICs0MCw3IEBAIHN0cnVjdCBJbnRl
cmFjdGlvbkluZm9ybWF0aW9uQXRQb3NpdGlvbjsKIEBjbGFzcyBfV0tBY3RpdmF0ZWRFbGVtZW50
SW5mbzsKIEBjbGFzcyBfV0tFbGVtZW50QWN0aW9uOwogQHByb3RvY29sIFdLQWN0aW9uU2hlZXRE
ZWxlZ2F0ZTsKK0Bwcm90b2NvbCBVSUNvbnRleHRNZW51SW50ZXJhY3Rpb25EZWxlZ2F0ZTsKIAog
QHByb3RvY29sIFdLQWN0aW9uU2hlZXRBc3Npc3RhbnREZWxlZ2F0ZSA8TlNPYmplY3Q+CiBAcmVx
dWlyZWQKQEAgLTYxLDExICs2MiwxMiBAQCBzdHJ1Y3QgSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0
UG9zaXRpb247CiAtIChOU0RpY3Rpb25hcnkgKilkYXRhRGV0ZWN0aW9uQ29udGV4dEZvckFjdGlv
blNoZWV0QXNzaXN0YW50OihXS0FjdGlvblNoZWV0QXNzaXN0YW50ICopYXNzaXN0YW50OwogLSAo
TlNTdHJpbmcgKilzZWxlY3RlZFRleHRGb3JBY3Rpb25TaGVldEFzc2lzdGFudDooV0tBY3Rpb25T
aGVldEFzc2lzdGFudCAqKWFzc2lzdGFudDsKIC0gKHZvaWQpYWN0aW9uU2hlZXRBc3Npc3RhbnQ6
KFdLQWN0aW9uU2hlZXRBc3Npc3RhbnQgKilhc3Npc3RhbnQgZ2V0QWx0ZXJuYXRlVVJMRm9ySW1h
Z2U6KFVJSW1hZ2UgKilpbWFnZSBjb21wbGV0aW9uOih2b2lkICheKShOU1VSTCAqYWx0ZXJuYXRl
VVJMLCBOU0RpY3Rpb25hcnkgKnVzZXJJbmZvKSljb21wbGV0aW9uOworLSAoQ0dQb2ludCljb250
ZXh0TWVudURpc3BsYXlMb2NhdGlvbjsKIAogQGVuZAogCi0jaWYgRU5BQkxFKERBVEFfREVURUNU
SU9OKQotQGludGVyZmFjZSBXS0FjdGlvblNoZWV0QXNzaXN0YW50IDogTlNPYmplY3QgPFdLQWN0
aW9uU2hlZXREZWxlZ2F0ZSwgREREZXRlY3Rpb25Db250cm9sbGVySW50ZXJhY3Rpb25EZWxlZ2F0
ZT4KKyNpZiBFTkFCTEUoREFUQV9ERVRFQ1RJT04pICYmIFVTRShVSUNPTlRFWFRNRU5VKQorQGlu
dGVyZmFjZSBXS0FjdGlvblNoZWV0QXNzaXN0YW50IDogTlNPYmplY3QgPFdLQWN0aW9uU2hlZXRE
ZWxlZ2F0ZSwgREREZXRlY3Rpb25Db250cm9sbGVySW50ZXJhY3Rpb25EZWxlZ2F0ZSwgVUlDb250
ZXh0TWVudUludGVyYWN0aW9uRGVsZWdhdGU+CiAjZWxzZQogQGludGVyZmFjZSBXS0FjdGlvblNo
ZWV0QXNzaXN0YW50IDogTlNPYmplY3QgPFdLQWN0aW9uU2hlZXREZWxlZ2F0ZT4KICNlbmRpZgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQWN0aW9uU2hlZXRBc3Np
c3RhbnQubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFzc2lz
dGFudC5tbQppbmRleCBhN2ZhNTE3ZWNiMjAwM2I3YjViMjFkZTQyYmUxOWY0OTA0NzA2MGQ2Li41
ZTU1NDUyYWI0YzE0OTQ1MGUwNTY3ZDJlNGMzMWFkYjY1NDgwMjVlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFzc2lzdGFudC5tbQorKysgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFzc2lzdGFudC5tbQpAQCAt
MTAxLDYgKzEwMSw3IEBAIHN0YXRpYyBMU0FwcExpbmsgKmFwcExpbmtGb3JVUkwoTlNVUkwgKnVy
bCkKICAgICBCT09MIF9uZWVkc0xpbmtJbmRpY2F0b3I7CiAgICAgQk9PTCBfaXNQcmVzZW50aW5n
RERVc2VySW50ZXJmYWNlOwogICAgIEJPT0wgX2hhc1BlbmRpbmdBY3Rpb25TaGVldDsKKyAgICBS
ZXRhaW5QdHI8VUlDb250ZXh0TWVudUludGVyYWN0aW9uPiBfZGF0YURldGVjdG9yQ29udGV4dE1l
bnVJbnRlcmFjdGlvbjsKIH0KIAogLSAoaWQgPFdLQWN0aW9uU2hlZXRBc3Npc3RhbnREZWxlZ2F0
ZT4pZGVsZWdhdGUKQEAgLTYzMiw2ICs2MzMsMjQgQEAgQUxMT1dfREVQUkVDQVRFRF9ERUNMQVJB
VElPTlNfRU5ECiAgICAgICAgIFtzZWxmIGNsZWFudXBTaGVldF07CiB9CiAKKyNpZiBFTkFCTEUo
REFUQV9ERVRFQ1RJT04pICYmIFVTRShVSUNPTlRFWFRNRU5VKQorLSAodm9pZClyZW1vdmVDb250
ZXh0TWVudUludGVyYWN0aW9uCit7CisgICAgaWYgKF9kYXRhRGV0ZWN0b3JDb250ZXh0TWVudUlu
dGVyYWN0aW9uKSB7CisgICAgICAgIFtfdmlldyByZW1vdmVJbnRlcmFjdGlvbjpfZGF0YURldGVj
dG9yQ29udGV4dE1lbnVJbnRlcmFjdGlvbi5nZXQoKV07CisgICAgICAgIF9kYXRhRGV0ZWN0b3JD
b250ZXh0TWVudUludGVyYWN0aW9uID0gbmlsOworICAgIH0KK30KKworLSAodm9pZCllbnN1cmVD
b250ZXh0TWVudUludGVyYWN0aW9uCit7CisgICAgaWYgKCFfZGF0YURldGVjdG9yQ29udGV4dE1l
bnVJbnRlcmFjdGlvbikgeworICAgICAgICBfZGF0YURldGVjdG9yQ29udGV4dE1lbnVJbnRlcmFj
dGlvbiA9IGFkb3B0TlMoW1tVSUNvbnRleHRNZW51SW50ZXJhY3Rpb24gYWxsb2NdIGluaXRXaXRo
RGVsZWdhdGU6c2VsZl0pOworICAgICAgICBbX3ZpZXcgYWRkSW50ZXJhY3Rpb246X2RhdGFEZXRl
Y3RvckNvbnRleHRNZW51SW50ZXJhY3Rpb24uZ2V0KCldOworICAgIH0KK30KKyNlbmRpZgorCiAt
ICh2b2lkKXNob3dEYXRhRGV0ZWN0b3JzU2hlZXQKIHsKICNpZiBFTkFCTEUoREFUQV9ERVRFQ1RJ
T04pCkBAIC02NjcsNiArNjg2LDE1IEBAIEFMTE9XX0RFUFJFQ0FURURfREVDTEFSQVRJT05TX0VO
RAogICAgIE5TQXJyYXkgKmRhdGFEZXRlY3RvcnNBY3Rpb25zID0gW2NvbnRyb2xsZXIgYWN0aW9u
c0ZvclVSTDp0YXJnZXRVUkwgaWRlbnRpZmllcjpfcG9zaXRpb25JbmZvcm1hdGlvbi0+ZGF0YURl
dGVjdG9ySWRlbnRpZmllciBzZWxlY3RlZFRleHQ6dGV4dEF0U2VsZWN0aW9uIHJlc3VsdHM6X3Bv
c2l0aW9uSW5mb3JtYXRpb24tPmRhdGFEZXRlY3RvclJlc3VsdHMuZ2V0KCkgY29udGV4dDpjb250
ZXh0XTsKICAgICBpZiAoW2RhdGFEZXRlY3RvcnNBY3Rpb25zIGNvdW50XSA9PSAwKQogICAgICAg
ICByZXR1cm47CisgICAgCisjaWYgRU5BQkxFKERBVEFfREVURUNUSU9OKSAmJiBVU0UoVUlDT05U
RVhUTUVOVSkKKyAgICBbc2VsZiBlbnN1cmVDb250ZXh0TWVudUludGVyYWN0aW9uXTsKKyAgICBh
dXRvIGRlbGVnYXRlID0gX2RlbGVnYXRlLmdldCgpOworICAgIGlmIChbZGVsZWdhdGUgcmVzcG9u
ZHNUb1NlbGVjdG9yOkBzZWxlY3Rvcihjb250ZXh0TWVudURpc3BsYXlMb2NhdGlvbildKQorICAg
ICAgICBbX2RhdGFEZXRlY3RvckNvbnRleHRNZW51SW50ZXJhY3Rpb24gX3ByZXNlbnRNZW51QXRM
b2NhdGlvbjpbZGVsZWdhdGUgY29udGV4dE1lbnVEaXNwbGF5TG9jYXRpb25dXTsKKyAgICAKKyAg
ICByZXR1cm47CisjZW5kaWYKIAogICAgIE5TTXV0YWJsZUFycmF5ICplbGVtZW50QWN0aW9ucyA9
IFtOU011dGFibGVBcnJheSBhcnJheV07CiAgICAgZm9yIChOU1VJbnRlZ2VyIGFjdGlvbk51bWJl
ciA9IDA7IGFjdGlvbk51bWJlciA8IFtkYXRhRGV0ZWN0b3JzQWN0aW9ucyBjb3VudF07IGFjdGlv
bk51bWJlcisrKSB7CkBAIC02ODgsNiArNzE2LDM5IEBAIEFMTE9XX0RFUFJFQ0FURURfREVDTEFS
QVRJT05TX0VORAogI2VuZGlmCiB9CiAKKy0gKFVJQ29udGV4dE1lbnVDb25maWd1cmF0aW9uICop
Y29udGV4dE1lbnVJbnRlcmFjdGlvbjooVUlDb250ZXh0TWVudUludGVyYWN0aW9uICopaW50ZXJh
Y3Rpb24gY29uZmlndXJhdGlvbkZvck1lbnVBdExvY2F0aW9uOihDR1BvaW50KWxvY2F0aW9uCit7
CisgICAgREREZXRlY3Rpb25Db250cm9sbGVyICpjb250cm9sbGVyID0gW2dldERERGV0ZWN0aW9u
Q29udHJvbGxlckNsYXNzKCkgc2hhcmVkQ29udHJvbGxlcl07CisgICAgTlNEaWN0aW9uYXJ5ICpj
b250ZXh0ID0gbmlsOworICAgIE5TU3RyaW5nICp0ZXh0QXRTZWxlY3Rpb24gPSBuaWw7CisKKyAg
ICBpZiAoW19kZWxlZ2F0ZSByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKGRhdGFEZXRlY3Rp
b25Db250ZXh0Rm9yQWN0aW9uU2hlZXRBc3Npc3RhbnQ6KV0pCisgICAgICAgIGNvbnRleHQgPSBb
X2RlbGVnYXRlIGRhdGFEZXRlY3Rpb25Db250ZXh0Rm9yQWN0aW9uU2hlZXRBc3Npc3RhbnQ6c2Vs
Zl07CisgICAgaWYgKFtfZGVsZWdhdGUgcmVzcG9uZHNUb1NlbGVjdG9yOkBzZWxlY3RvcihzZWxl
Y3RlZFRleHRGb3JBY3Rpb25TaGVldEFzc2lzdGFudDopXSkKKyAgICAgICAgdGV4dEF0U2VsZWN0
aW9uID0gW19kZWxlZ2F0ZSBzZWxlY3RlZFRleHRGb3JBY3Rpb25TaGVldEFzc2lzdGFudDpzZWxm
XTsKKworICAgIE5TRGljdGlvbmFyeSAqbmV3Q29udGV4dCA9IG5pbDsKKyAgICBERFJlc3VsdFJl
ZiBkZFJlc3VsdCA9IFtjb250cm9sbGVyIHJlc3VsdEZvclVSTDpfcG9zaXRpb25JbmZvcm1hdGlv
bi0+dXJsIGlkZW50aWZpZXI6X3Bvc2l0aW9uSW5mb3JtYXRpb24tPmRhdGFEZXRlY3RvcklkZW50
aWZpZXIgc2VsZWN0ZWRUZXh0OnRleHRBdFNlbGVjdGlvbiByZXN1bHRzOl9wb3NpdGlvbkluZm9y
bWF0aW9uLT5kYXRhRGV0ZWN0b3JSZXN1bHRzLmdldCgpIGNvbnRleHQ6Y29udGV4dCBleHRlbmRl
ZENvbnRleHQ6Jm5ld0NvbnRleHRdOworICAgIAorICAgIGF1dG8gZGRDb250ZXh0TWVudUFjdGlv
bkNsYXNzID0gZ2V0RERDb250ZXh0TWVudUFjdGlvbkNsYXNzKCk7CisgICAgaWYgKGRkUmVzdWx0
KQorICAgICAgICByZXR1cm4gW2RkQ29udGV4dE1lbnVBY3Rpb25DbGFzcyBjb250ZXh0TWVudUNv
bmZpZ3VyYXRpb25XaXRoUmVzdWx0OmRkUmVzdWx0IGluVmlldzpfdmlldy5nZXRBdXRvcmVsZWFz
ZWQoKSBjb250ZXh0OmNvbnRleHQgbWVudUlkZW50aWZpZXI6bmlsXTsKKyAgICByZXR1cm4gW2Rk
Q29udGV4dE1lbnVBY3Rpb25DbGFzcyBjb250ZXh0TWVudUNvbmZpZ3VyYXRpb25XaXRoVVJMOl9w
b3NpdGlvbkluZm9ybWF0aW9uLT51cmwgaW5WaWV3Ol92aWV3LmdldEF1dG9yZWxlYXNlZCgpIGNv
bnRleHQ6Y29udGV4dCBtZW51SWRlbnRpZmllcjpuaWxdOworfQorLSAoX1VJQ29udGV4dE1lbnVT
dHlsZSAqKV9jb250ZXh0TWVudUludGVyYWN0aW9uOihVSUNvbnRleHRNZW51SW50ZXJhY3Rpb24g
KilpbnRlcmFjdGlvbiBzdHlsZUZvck1lbnVXaXRoQ29uZmlndXJhdGlvbjooVUlDb250ZXh0TWVu
dUNvbmZpZ3VyYXRpb24gKiljb25maWd1cmF0aW9uCit7CisgICAgX1VJQ29udGV4dE1lbnVTdHls
ZSAqc3R5bGUgPSBbX1VJQ29udGV4dE1lbnVTdHlsZSBkZWZhdWx0U3R5bGVdOworICAgIHN0eWxl
LnByZWZlcnJlZExheW91dCA9IF9VSUNvbnRleHRNZW51TGF5b3V0Q29tcGFjdE1lbnU7CisgICAg
cmV0dXJuIHN0eWxlOworfQorCistICh2b2lkKWNvbnRleHRNZW51SW50ZXJhY3Rpb246KFVJQ29u
dGV4dE1lbnVJbnRlcmFjdGlvbiAqKWludGVyYWN0aW9uIHdpbGxFbmRGb3JDb25maWd1cmF0aW9u
OihVSUNvbnRleHRNZW51Q29uZmlndXJhdGlvbiAqKWNvbmZpZ3VyYXRpb24gYW5pbWF0b3I6KGlk
PFVJQ29udGV4dE1lbnVJbnRlcmFjdGlvbkFuaW1hdGluZz4pYW5pbWF0b3IKK3sKKyAgICBbYW5p
bWF0b3IgYWRkQ29tcGxldGlvbjpeeworICAgICAgICBbc2VsZiByZW1vdmVDb250ZXh0TWVudUlu
dGVyYWN0aW9uXTsKKyAgICB9XTsKK30KKwogLSAodm9pZCljbGVhbnVwU2hlZXQKIHsKICAgICBh
dXRvIGRlbGVnYXRlID0gX2RlbGVnYXRlLmdldCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbSBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0KaW5kZXggMDVkODlk
Zjg0ZWMzMjUwYTk5MWI2YjdkNWIyYTk0ODI0YzM0NGFmOC4uOTA4NGFlNGEwOGNlYzg4OTEwYWUz
ZjQ0YTc0NTQzNTdmMWYyMWZkYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
aW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCkBAIC02NzkzLDYgKzY3OTMsMTEg
QEAgc3RhdGljIEJPT0wgYWxsUGFzdGVib2FyZEl0ZW1PcmlnaW5zTWF0Y2hPcmlnaW4oVUlQYXN0
ZWJvYXJkICpwYXN0ZWJvYXJkLCBjb25zdAogICAgICAgICBjb21wbGV0aW9uKG5pbCwgbmlsKTsK
IH0KIAorLSAoQ0dQb2ludCljb250ZXh0TWVudURpc3BsYXlMb2NhdGlvbgoreworICAgIHJldHVy
biBbc2VsZiBsYXN0SW50ZXJhY3Rpb25Mb2NhdGlvbl07Cit9CisKIC0gKEJPT0wpX3Nob3VsZFVz
ZUNvbnRleHRNZW51cwogewogI2lmIEhBVkUoTElOS19QUkVWSUVXKSAmJiBVU0UoVUlDT05URVhU
TUVOVSkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>392918</attachid>
            <date>2020-03-07 17:24:33 -0800</date>
            <delta_ts>2020-03-07 20:36:49 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208779-20200307172432.patch</filename>
            <type>text/plain</type>
            <size>8455</size>
            <attacher name="Megan Gardner">megan_gardner</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4MDQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDU4ZWExOTMzMjMwZjg1ZWJh
NmEwYzU4YTEzOGQzNTE2OGUzZTU2MzEuLmY1YTY4NWI0YTU4ZGI2OGZlMDVkZDMzY2I2MzEwNGQw
MzliYmYzMjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMjAtMDMtMDcgIE1lZ2FuIEdh
cmRuZXIgIDxtZWdhbl9nYXJkbmVyQGFwcGxlLmNvbT4KKworICAgICAgICBBZG9wdCBDb250ZXh0
IE1lbnVzIGZvciBEYXRhIERldGVjdG9ycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjA4Nzc5CisKKyAgICAgICAgU3dpdGNoIHRvIGNvbnRleHQgbWVu
dXMgZm9yIGRhdGEgZGV0ZWN0b3IgYWN0aW9uIHNoZWV0cy4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVl
dEFzc2lzdGFudC5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFzc2lz
dGFudC5tbToKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVldEFzc2lzdGFudCByZW1vdmVDb250ZXh0
TWVudUludGVyYWN0aW9uXSk6CisgICAgICAgICgtW1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQgZW5z
dXJlQ29udGV4dE1lbnVJbnRlcmFjdGlvbl0pOgorICAgICAgICAoLVtXS0FjdGlvblNoZWV0QXNz
aXN0YW50IHNob3dEYXRhRGV0ZWN0b3JzU2hlZXRdKToKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVl
dEFzc2lzdGFudCBjb250ZXh0TWVudUludGVyYWN0aW9uOmNvbmZpZ3VyYXRpb25Gb3JNZW51QXRM
b2NhdGlvbjpdKToKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVldEFzc2lzdGFudCBfY29udGV4dE1l
bnVJbnRlcmFjdGlvbjpzdHlsZUZvck1lbnVXaXRoQ29uZmlndXJhdGlvbjpdKToKKyAgICAgICAg
KC1bV0tBY3Rpb25TaGVldEFzc2lzdGFudCBjb250ZXh0TWVudUludGVyYWN0aW9uOndpbGxFbmRG
b3JDb25maWd1cmF0aW9uOmFuaW1hdG9yOl0pOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tD
b250ZW50Vmlld0ludGVyYWN0aW9uLmg6CisgICAgICAgICogVUlQcm9jZXNzL2lvcy9XS0NvbnRl
bnRWaWV3SW50ZXJhY3Rpb24ubW06CisgICAgICAgICgtW1dLQ29udGVudFZpZXcgcHJvZ3JhbW1h
dGljYWxseVByZXNlbnRpbmdDb250ZXh0TWVudUZvckRhdGFEZXRlY3RvcnNUYXBNZW51XSk6Cisg
ICAgICAgICgtW1dLQ29udGVudFZpZXcgX3Nob3dEYXRhRGV0ZWN0b3JzU2hlZXRdKToKKyAgICAg
ICAgKC1bV0tDb250ZW50VmlldyBjb250ZXh0TWVudURpc3BsYXlMb2NhdGlvbl0pOgorICAgICAg
ICAoLVtXS0NvbnRlbnRWaWV3IF9jb250ZXh0TWVudUludGVyYWN0aW9uOmNvbmZpZ3VyYXRpb25G
b3JNZW51QXRMb2NhdGlvbjpjb21wbGV0aW9uOl0pOgorICAgICAgICAoLVtXS0NvbnRlbnRWaWV3
IGNvbnRpbnVlQ29udGV4dE1lbnVJbnRlcmFjdGlvbldpdGhEYXRhRGV0ZWN0b3JzOl0pOgorICAg
ICAgICAoLVtXS0NvbnRlbnRWaWV3IF9jb250ZXh0TWVudUludGVyYWN0aW9uOnN0eWxlRm9yTWVu
dVdpdGhDb25maWd1cmF0aW9uOl0pOgorCiAyMDIwLTAzLTA2ICBBbmRyZXMgR29uemFsZXogIDxh
bmRyZXNnXzIyQGFwcGxlLmNvbT4KIAogICAgICAgICBJbXBsZW1lbnRhdGlvbiBvZiBBY2Nlc3Np
YmlsaXR5U3VwcG9ydCBBWFNJc29sYXRlZFRyZWVNb2RlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvaW9zL1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQuaCBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0QXNzaXN0YW50LmgKaW5kZXggYjA0ZGQxMDVh
OTQ3NjhkZDkwYWI5ZjZkYjQ4M2FkYWM2MzRkOTRlNy4uNGM1ZjFmN2MwMzI0ZjY3OTgxMWVkMTZk
Y2ZhMTk2MWEyYzI1ZDY3NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9z
L1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9p
b3MvV0tBY3Rpb25TaGVldEFzc2lzdGFudC5oCkBAIC00MCw2ICs0MCw3IEBAIHN0cnVjdCBJbnRl
cmFjdGlvbkluZm9ybWF0aW9uQXRQb3NpdGlvbjsKIEBjbGFzcyBfV0tBY3RpdmF0ZWRFbGVtZW50
SW5mbzsKIEBjbGFzcyBfV0tFbGVtZW50QWN0aW9uOwogQHByb3RvY29sIFdLQWN0aW9uU2hlZXRE
ZWxlZ2F0ZTsKK0Bwcm90b2NvbCBVSUNvbnRleHRNZW51SW50ZXJhY3Rpb25EZWxlZ2F0ZTsKIAog
QHByb3RvY29sIFdLQWN0aW9uU2hlZXRBc3Npc3RhbnREZWxlZ2F0ZSA8TlNPYmplY3Q+CiBAcmVx
dWlyZWQKQEAgLTYxLDExICs2MiwxMiBAQCBzdHJ1Y3QgSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0
UG9zaXRpb247CiAtIChOU0RpY3Rpb25hcnkgKilkYXRhRGV0ZWN0aW9uQ29udGV4dEZvckFjdGlv
blNoZWV0QXNzaXN0YW50OihXS0FjdGlvblNoZWV0QXNzaXN0YW50ICopYXNzaXN0YW50OwogLSAo
TlNTdHJpbmcgKilzZWxlY3RlZFRleHRGb3JBY3Rpb25TaGVldEFzc2lzdGFudDooV0tBY3Rpb25T
aGVldEFzc2lzdGFudCAqKWFzc2lzdGFudDsKIC0gKHZvaWQpYWN0aW9uU2hlZXRBc3Npc3RhbnQ6
KFdLQWN0aW9uU2hlZXRBc3Npc3RhbnQgKilhc3Npc3RhbnQgZ2V0QWx0ZXJuYXRlVVJMRm9ySW1h
Z2U6KFVJSW1hZ2UgKilpbWFnZSBjb21wbGV0aW9uOih2b2lkICheKShOU1VSTCAqYWx0ZXJuYXRl
VVJMLCBOU0RpY3Rpb25hcnkgKnVzZXJJbmZvKSljb21wbGV0aW9uOworLSAoQ0dQb2ludCljb250
ZXh0TWVudURpc3BsYXlMb2NhdGlvbkZvckFjdGlvblNoZWV0QXNzaXN0YW50OihXS0FjdGlvblNo
ZWV0QXNzaXN0YW50ICopYXNzaXN0YW50OwogCiBAZW5kCiAKLSNpZiBFTkFCTEUoREFUQV9ERVRF
Q1RJT04pCi1AaW50ZXJmYWNlIFdLQWN0aW9uU2hlZXRBc3Npc3RhbnQgOiBOU09iamVjdCA8V0tB
Y3Rpb25TaGVldERlbGVnYXRlLCBERERldGVjdGlvbkNvbnRyb2xsZXJJbnRlcmFjdGlvbkRlbGVn
YXRlPgorI2lmIEVOQUJMRShEQVRBX0RFVEVDVElPTikgJiYgVVNFKFVJQ09OVEVYVE1FTlUpCitA
aW50ZXJmYWNlIFdLQWN0aW9uU2hlZXRBc3Npc3RhbnQgOiBOU09iamVjdCA8V0tBY3Rpb25TaGVl
dERlbGVnYXRlLCBERERldGVjdGlvbkNvbnRyb2xsZXJJbnRlcmFjdGlvbkRlbGVnYXRlLCBVSUNv
bnRleHRNZW51SW50ZXJhY3Rpb25EZWxlZ2F0ZT4KICNlbHNlCiBAaW50ZXJmYWNlIFdLQWN0aW9u
U2hlZXRBc3Npc3RhbnQgOiBOU09iamVjdCA8V0tBY3Rpb25TaGVldERlbGVnYXRlPgogI2VuZGlm
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFz
c2lzdGFudC5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0QXNz
aXN0YW50Lm1tCmluZGV4IGE3ZmE1MTdlY2IyMDAzYjdiNWIyMWRlNDJiZTE5ZjQ5MDQ3MDYwZDYu
LjA0ZWQzZjFlYTcyNTc3OGNlODg2YjY1MDg0OWNkZjk2MTllOTA1NGUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0QXNzaXN0YW50Lm1tCisrKyBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0QXNzaXN0YW50Lm1tCkBA
IC0xMDEsNiArMTAxLDcgQEAgc3RhdGljIExTQXBwTGluayAqYXBwTGlua0ZvclVSTChOU1VSTCAq
dXJsKQogICAgIEJPT0wgX25lZWRzTGlua0luZGljYXRvcjsKICAgICBCT09MIF9pc1ByZXNlbnRp
bmdERFVzZXJJbnRlcmZhY2U7CiAgICAgQk9PTCBfaGFzUGVuZGluZ0FjdGlvblNoZWV0OworICAg
IFJldGFpblB0cjxVSUNvbnRleHRNZW51SW50ZXJhY3Rpb24+IF9kYXRhRGV0ZWN0b3JDb250ZXh0
TWVudUludGVyYWN0aW9uOwogfQogCiAtIChpZCA8V0tBY3Rpb25TaGVldEFzc2lzdGFudERlbGVn
YXRlPilkZWxlZ2F0ZQpAQCAtNjMyLDYgKzYzMywyNCBAQCBBTExPV19ERVBSRUNBVEVEX0RFQ0xB
UkFUSU9OU19FTkQKICAgICAgICAgW3NlbGYgY2xlYW51cFNoZWV0XTsKIH0KIAorI2lmIEVOQUJM
RShEQVRBX0RFVEVDVElPTikgJiYgVVNFKFVJQ09OVEVYVE1FTlUpCistICh2b2lkKXJlbW92ZUNv
bnRleHRNZW51SW50ZXJhY3Rpb24KK3sKKyAgICBpZiAoX2RhdGFEZXRlY3RvckNvbnRleHRNZW51
SW50ZXJhY3Rpb24pIHsKKyAgICAgICAgW192aWV3IHJlbW92ZUludGVyYWN0aW9uOl9kYXRhRGV0
ZWN0b3JDb250ZXh0TWVudUludGVyYWN0aW9uLmdldCgpXTsKKyAgICAgICAgX2RhdGFEZXRlY3Rv
ckNvbnRleHRNZW51SW50ZXJhY3Rpb24gPSBuaWw7CisgICAgfQorfQorCistICh2b2lkKWVuc3Vy
ZUNvbnRleHRNZW51SW50ZXJhY3Rpb24KK3sKKyAgICBpZiAoIV9kYXRhRGV0ZWN0b3JDb250ZXh0
TWVudUludGVyYWN0aW9uKSB7CisgICAgICAgIF9kYXRhRGV0ZWN0b3JDb250ZXh0TWVudUludGVy
YWN0aW9uID0gYWRvcHROUyhbW1VJQ29udGV4dE1lbnVJbnRlcmFjdGlvbiBhbGxvY10gaW5pdFdp
dGhEZWxlZ2F0ZTpzZWxmXSk7CisgICAgICAgIFtfdmlldyBhZGRJbnRlcmFjdGlvbjpfZGF0YURl
dGVjdG9yQ29udGV4dE1lbnVJbnRlcmFjdGlvbi5nZXQoKV07CisgICAgfQorfQorI2VuZGlmCisK
IC0gKHZvaWQpc2hvd0RhdGFEZXRlY3RvcnNTaGVldAogewogI2lmIEVOQUJMRShEQVRBX0RFVEVD
VElPTikKQEAgLTY2Nyw2ICs2ODYsMTUgQEAgQUxMT1dfREVQUkVDQVRFRF9ERUNMQVJBVElPTlNf
RU5ECiAgICAgTlNBcnJheSAqZGF0YURldGVjdG9yc0FjdGlvbnMgPSBbY29udHJvbGxlciBhY3Rp
b25zRm9yVVJMOnRhcmdldFVSTCBpZGVudGlmaWVyOl9wb3NpdGlvbkluZm9ybWF0aW9uLT5kYXRh
RGV0ZWN0b3JJZGVudGlmaWVyIHNlbGVjdGVkVGV4dDp0ZXh0QXRTZWxlY3Rpb24gcmVzdWx0czpf
cG9zaXRpb25JbmZvcm1hdGlvbi0+ZGF0YURldGVjdG9yUmVzdWx0cy5nZXQoKSBjb250ZXh0OmNv
bnRleHRdOwogICAgIGlmIChbZGF0YURldGVjdG9yc0FjdGlvbnMgY291bnRdID09IDApCiAgICAg
ICAgIHJldHVybjsKKyAgICAKKyNpZiBFTkFCTEUoREFUQV9ERVRFQ1RJT04pICYmIFVTRShVSUNP
TlRFWFRNRU5VKQorICAgIFtzZWxmIGVuc3VyZUNvbnRleHRNZW51SW50ZXJhY3Rpb25dOworICAg
IGF1dG8gZGVsZWdhdGUgPSBfZGVsZWdhdGUuZ2V0KCk7CisgICAgaWYgKFtkZWxlZ2F0ZSByZXNw
b25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKGNvbnRleHRNZW51RGlzcGxheUxvY2F0aW9uKV0pIHsK
KyAgICAgICAgW19kYXRhRGV0ZWN0b3JDb250ZXh0TWVudUludGVyYWN0aW9uIF9wcmVzZW50TWVu
dUF0TG9jYXRpb246W2RlbGVnYXRlIGNvbnRleHRNZW51RGlzcGxheUxvY2F0aW9uXV07CisgICAg
ICAgIHJldHVybjsKKyAgICB9CisjZW5kaWYKIAogICAgIE5TTXV0YWJsZUFycmF5ICplbGVtZW50
QWN0aW9ucyA9IFtOU011dGFibGVBcnJheSBhcnJheV07CiAgICAgZm9yIChOU1VJbnRlZ2VyIGFj
dGlvbk51bWJlciA9IDA7IGFjdGlvbk51bWJlciA8IFtkYXRhRGV0ZWN0b3JzQWN0aW9ucyBjb3Vu
dF07IGFjdGlvbk51bWJlcisrKSB7CkBAIC02ODgsNiArNzE2LDQwIEBAIEFMTE9XX0RFUFJFQ0FU
RURfREVDTEFSQVRJT05TX0VORAogI2VuZGlmCiB9CiAKKy0gKFVJQ29udGV4dE1lbnVDb25maWd1
cmF0aW9uICopY29udGV4dE1lbnVJbnRlcmFjdGlvbjooVUlDb250ZXh0TWVudUludGVyYWN0aW9u
ICopaW50ZXJhY3Rpb24gY29uZmlndXJhdGlvbkZvck1lbnVBdExvY2F0aW9uOihDR1BvaW50KWxv
Y2F0aW9uCit7CisgICAgREREZXRlY3Rpb25Db250cm9sbGVyICpjb250cm9sbGVyID0gW2dldERE
RGV0ZWN0aW9uQ29udHJvbGxlckNsYXNzKCkgc2hhcmVkQ29udHJvbGxlcl07CisgICAgTlNEaWN0
aW9uYXJ5ICpjb250ZXh0ID0gbmlsOworICAgIE5TU3RyaW5nICp0ZXh0QXRTZWxlY3Rpb24gPSBu
aWw7CisKKyAgICBpZiAoW19kZWxlZ2F0ZSByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKGRh
dGFEZXRlY3Rpb25Db250ZXh0Rm9yQWN0aW9uU2hlZXRBc3Npc3RhbnQ6KV0pCisgICAgICAgIGNv
bnRleHQgPSBbX2RlbGVnYXRlIGRhdGFEZXRlY3Rpb25Db250ZXh0Rm9yQWN0aW9uU2hlZXRBc3Np
c3RhbnQ6c2VsZl07CisgICAgaWYgKFtfZGVsZWdhdGUgcmVzcG9uZHNUb1NlbGVjdG9yOkBzZWxl
Y3RvcihzZWxlY3RlZFRleHRGb3JBY3Rpb25TaGVldEFzc2lzdGFudDopXSkKKyAgICAgICAgdGV4
dEF0U2VsZWN0aW9uID0gW19kZWxlZ2F0ZSBzZWxlY3RlZFRleHRGb3JBY3Rpb25TaGVldEFzc2lz
dGFudDpzZWxmXTsKKworICAgIE5TRGljdGlvbmFyeSAqbmV3Q29udGV4dCA9IG5pbDsKKyAgICBE
RFJlc3VsdFJlZiBkZFJlc3VsdCA9IFtjb250cm9sbGVyIHJlc3VsdEZvclVSTDpfcG9zaXRpb25J
bmZvcm1hdGlvbi0+dXJsIGlkZW50aWZpZXI6X3Bvc2l0aW9uSW5mb3JtYXRpb24tPmRhdGFEZXRl
Y3RvcklkZW50aWZpZXIgc2VsZWN0ZWRUZXh0OnRleHRBdFNlbGVjdGlvbiByZXN1bHRzOl9wb3Np
dGlvbkluZm9ybWF0aW9uLT5kYXRhRGV0ZWN0b3JSZXN1bHRzLmdldCgpIGNvbnRleHQ6Y29udGV4
dCBleHRlbmRlZENvbnRleHQ6Jm5ld0NvbnRleHRdOworICAgIAorICAgIGF1dG8gZGRDb250ZXh0
TWVudUFjdGlvbkNsYXNzID0gZ2V0RERDb250ZXh0TWVudUFjdGlvbkNsYXNzKCk7CisgICAgaWYg
KGRkUmVzdWx0KQorICAgICAgICByZXR1cm4gW2RkQ29udGV4dE1lbnVBY3Rpb25DbGFzcyBjb250
ZXh0TWVudUNvbmZpZ3VyYXRpb25XaXRoUmVzdWx0OmRkUmVzdWx0IGluVmlldzpfdmlldy5nZXRB
dXRvcmVsZWFzZWQoKSBjb250ZXh0OmNvbnRleHQgbWVudUlkZW50aWZpZXI6bmlsXTsKKyAgICBy
ZXR1cm4gW2RkQ29udGV4dE1lbnVBY3Rpb25DbGFzcyBjb250ZXh0TWVudUNvbmZpZ3VyYXRpb25X
aXRoVVJMOl9wb3NpdGlvbkluZm9ybWF0aW9uLT51cmwgaW5WaWV3Ol92aWV3LmdldEF1dG9yZWxl
YXNlZCgpIGNvbnRleHQ6Y29udGV4dCBtZW51SWRlbnRpZmllcjpuaWxdOworfQorCistIChfVUlD
b250ZXh0TWVudVN0eWxlICopX2NvbnRleHRNZW51SW50ZXJhY3Rpb246KFVJQ29udGV4dE1lbnVJ
bnRlcmFjdGlvbiAqKWludGVyYWN0aW9uIHN0eWxlRm9yTWVudVdpdGhDb25maWd1cmF0aW9uOihV
SUNvbnRleHRNZW51Q29uZmlndXJhdGlvbiAqKWNvbmZpZ3VyYXRpb24KK3sKKyAgICBfVUlDb250
ZXh0TWVudVN0eWxlICpzdHlsZSA9IFtfVUlDb250ZXh0TWVudVN0eWxlIGRlZmF1bHRTdHlsZV07
CisgICAgc3R5bGUucHJlZmVycmVkTGF5b3V0ID0gX1VJQ29udGV4dE1lbnVMYXlvdXRDb21wYWN0
TWVudTsKKyAgICByZXR1cm4gc3R5bGU7Cit9CisKKy0gKHZvaWQpY29udGV4dE1lbnVJbnRlcmFj
dGlvbjooVUlDb250ZXh0TWVudUludGVyYWN0aW9uICopaW50ZXJhY3Rpb24gd2lsbEVuZEZvckNv
bmZpZ3VyYXRpb246KFVJQ29udGV4dE1lbnVDb25maWd1cmF0aW9uICopY29uZmlndXJhdGlvbiBh
bmltYXRvcjooaWQ8VUlDb250ZXh0TWVudUludGVyYWN0aW9uQW5pbWF0aW5nPilhbmltYXRvcgor
eworICAgIFthbmltYXRvciBhZGRDb21wbGV0aW9uOl57CisgICAgICAgIFtzZWxmIHJlbW92ZUNv
bnRleHRNZW51SW50ZXJhY3Rpb25dOworICAgIH1dOworfQorCiAtICh2b2lkKWNsZWFudXBTaGVl
dAogewogICAgIGF1dG8gZGVsZWdhdGUgPSBfZGVsZWdhdGUuZ2V0KCk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbQpp
bmRleCAwNWQ4OWRmODRlYzMyNTBhOTkxYjZiN2Q1YjJhOTQ4MjRjMzQ0YWY4Li5kYzYwZjgzOWIx
ZDk1MzI0ZmNjMjUyYjM4MjRlNDFmODdiMjljYTY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCisrKyBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0KQEAgLTY3OTMs
NiArNjc5MywxMSBAQCBzdGF0aWMgQk9PTCBhbGxQYXN0ZWJvYXJkSXRlbU9yaWdpbnNNYXRjaE9y
aWdpbihVSVBhc3RlYm9hcmQgKnBhc3RlYm9hcmQsIGNvbnN0CiAgICAgICAgIGNvbXBsZXRpb24o
bmlsLCBuaWwpOwogfQogCistIChDR1BvaW50KWNvbnRleHRNZW51RGlzcGxheUxvY2F0aW9uRm9y
QWN0aW9uU2hlZXRBc3Npc3RhbnQ6KFdLQWN0aW9uU2hlZXRBc3Npc3RhbnQgKilhc3Npc3RhbnQK
K3sKKyAgICByZXR1cm4gW3NlbGYgbGFzdEludGVyYWN0aW9uTG9jYXRpb25dOworfQorCiAtIChC
T09MKV9zaG91bGRVc2VDb250ZXh0TWVudXMKIHsKICNpZiBIQVZFKExJTktfUFJFVklFVykgJiYg
VVNFKFVJQ09OVEVYVE1FTlUpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>392935</attachid>
            <date>2020-03-07 20:36:50 -0800</date>
            <delta_ts>2020-03-07 22:24:55 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208779-20200307203649.patch</filename>
            <type>text/plain</type>
            <size>9406</size>
            <attacher name="Megan Gardner">megan_gardner</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4MDQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDU4ZWExOTMzMjMwZjg1ZWJh
NmEwYzU4YTEzOGQzNTE2OGUzZTU2MzEuLjAyZWRkY2QyMjhmYTk0NmY4M2ZlNjAxODU3ZDllMWMx
ZjE0ZWY2YjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMjAtMDMtMDcgIE1lZ2FuIEdh
cmRuZXIgIDxtZWdhbl9nYXJkbmVyQGFwcGxlLmNvbT4KKworICAgICAgICBBZG9wdCBDb250ZXh0
IE1lbnVzIGZvciBEYXRhIERldGVjdG9ycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjA4Nzc5CisKKyAgICAgICAgU3dpdGNoIHRvIGNvbnRleHQgbWVu
dXMgZm9yIGRhdGEgZGV0ZWN0b3IKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFzc2lzdGFudC5oOgor
ICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFzc2lzdGFudC5tbToKKyAgICAg
ICAgKC1bV0tBY3Rpb25TaGVldEFzc2lzdGFudCByZW1vdmVDb250ZXh0TWVudUludGVyYWN0aW9u
XSk6CisgICAgICAgICgtW1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQgZW5zdXJlQ29udGV4dE1lbnVJ
bnRlcmFjdGlvbl0pOgorICAgICAgICAoLVtXS0FjdGlvblNoZWV0QXNzaXN0YW50IHNob3dEYXRh
RGV0ZWN0b3JzU2hlZXRdKToKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVldEFzc2lzdGFudCBjb250
ZXh0TWVudUludGVyYWN0aW9uOmNvbmZpZ3VyYXRpb25Gb3JNZW51QXRMb2NhdGlvbjpdKToKKyAg
ICAgICAgKC1bV0tBY3Rpb25TaGVldEFzc2lzdGFudCBfY29udGV4dE1lbnVJbnRlcmFjdGlvbjpz
dHlsZUZvck1lbnVXaXRoQ29uZmlndXJhdGlvbjpdKToKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVl
dEFzc2lzdGFudCBjb250ZXh0TWVudUludGVyYWN0aW9uOndpbGxFbmRGb3JDb25maWd1cmF0aW9u
OmFuaW1hdG9yOl0pOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVy
YWN0aW9uLmg6CisgICAgICAgICogVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rp
b24ubW06CisgICAgICAgICgtW1dLQ29udGVudFZpZXcgcHJvZ3JhbW1hdGljYWxseVByZXNlbnRp
bmdDb250ZXh0TWVudUZvckRhdGFEZXRlY3RvcnNUYXBNZW51XSk6CisgICAgICAgICgtW1dLQ29u
dGVudFZpZXcgX3Nob3dEYXRhRGV0ZWN0b3JzU2hlZXRdKToKKyAgICAgICAgKC1bV0tDb250ZW50
VmlldyBjb250ZXh0TWVudURpc3BsYXlMb2NhdGlvbl0pOgorICAgICAgICAoLVtXS0NvbnRlbnRW
aWV3IF9jb250ZXh0TWVudUludGVyYWN0aW9uOmNvbmZpZ3VyYXRpb25Gb3JNZW51QXRMb2NhdGlv
bjpjb21wbGV0aW9uOl0pOgorICAgICAgICAoLVtXS0NvbnRlbnRWaWV3IGNvbnRpbnVlQ29udGV4
dE1lbnVJbnRlcmFjdGlvbldpdGhEYXRhRGV0ZWN0b3JzOl0pOgorICAgICAgICAoLVtXS0NvbnRl
bnRWaWV3IF9jb250ZXh0TWVudUludGVyYWN0aW9uOnN0eWxlRm9yTWVudVdpdGhDb25maWd1cmF0
aW9uOl0pOgorCiAyMDIwLTAzLTA2ICBBbmRyZXMgR29uemFsZXogIDxhbmRyZXNnXzIyQGFwcGxl
LmNvbT4KIAogICAgICAgICBJbXBsZW1lbnRhdGlvbiBvZiBBY2Nlc3NpYmlsaXR5U3VwcG9ydCBB
WFNJc29sYXRlZFRyZWVNb2RlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
aW9zL1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lv
cy9XS0FjdGlvblNoZWV0QXNzaXN0YW50LmgKaW5kZXggYjA0ZGQxMDVhOTQ3NjhkZDkwYWI5ZjZk
YjQ4M2FkYWM2MzRkOTRlNy4uNGM1ZjFmN2MwMzI0ZjY3OTgxMWVkMTZkY2ZhMTk2MWEyYzI1ZDY3
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQWN0aW9uU2hlZXRB
c3Npc3RhbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVl
dEFzc2lzdGFudC5oCkBAIC00MCw2ICs0MCw3IEBAIHN0cnVjdCBJbnRlcmFjdGlvbkluZm9ybWF0
aW9uQXRQb3NpdGlvbjsKIEBjbGFzcyBfV0tBY3RpdmF0ZWRFbGVtZW50SW5mbzsKIEBjbGFzcyBf
V0tFbGVtZW50QWN0aW9uOwogQHByb3RvY29sIFdLQWN0aW9uU2hlZXREZWxlZ2F0ZTsKK0Bwcm90
b2NvbCBVSUNvbnRleHRNZW51SW50ZXJhY3Rpb25EZWxlZ2F0ZTsKIAogQHByb3RvY29sIFdLQWN0
aW9uU2hlZXRBc3Npc3RhbnREZWxlZ2F0ZSA8TlNPYmplY3Q+CiBAcmVxdWlyZWQKQEAgLTYxLDEx
ICs2MiwxMiBAQCBzdHJ1Y3QgSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb247CiAtIChO
U0RpY3Rpb25hcnkgKilkYXRhRGV0ZWN0aW9uQ29udGV4dEZvckFjdGlvblNoZWV0QXNzaXN0YW50
OihXS0FjdGlvblNoZWV0QXNzaXN0YW50ICopYXNzaXN0YW50OwogLSAoTlNTdHJpbmcgKilzZWxl
Y3RlZFRleHRGb3JBY3Rpb25TaGVldEFzc2lzdGFudDooV0tBY3Rpb25TaGVldEFzc2lzdGFudCAq
KWFzc2lzdGFudDsKIC0gKHZvaWQpYWN0aW9uU2hlZXRBc3Npc3RhbnQ6KFdLQWN0aW9uU2hlZXRB
c3Npc3RhbnQgKilhc3Npc3RhbnQgZ2V0QWx0ZXJuYXRlVVJMRm9ySW1hZ2U6KFVJSW1hZ2UgKilp
bWFnZSBjb21wbGV0aW9uOih2b2lkICheKShOU1VSTCAqYWx0ZXJuYXRlVVJMLCBOU0RpY3Rpb25h
cnkgKnVzZXJJbmZvKSljb21wbGV0aW9uOworLSAoQ0dQb2ludCljb250ZXh0TWVudURpc3BsYXlM
b2NhdGlvbkZvckFjdGlvblNoZWV0QXNzaXN0YW50OihXS0FjdGlvblNoZWV0QXNzaXN0YW50ICop
YXNzaXN0YW50OwogCiBAZW5kCiAKLSNpZiBFTkFCTEUoREFUQV9ERVRFQ1RJT04pCi1AaW50ZXJm
YWNlIFdLQWN0aW9uU2hlZXRBc3Npc3RhbnQgOiBOU09iamVjdCA8V0tBY3Rpb25TaGVldERlbGVn
YXRlLCBERERldGVjdGlvbkNvbnRyb2xsZXJJbnRlcmFjdGlvbkRlbGVnYXRlPgorI2lmIEVOQUJM
RShEQVRBX0RFVEVDVElPTikgJiYgVVNFKFVJQ09OVEVYVE1FTlUpCitAaW50ZXJmYWNlIFdLQWN0
aW9uU2hlZXRBc3Npc3RhbnQgOiBOU09iamVjdCA8V0tBY3Rpb25TaGVldERlbGVnYXRlLCBERERl
dGVjdGlvbkNvbnRyb2xsZXJJbnRlcmFjdGlvbkRlbGVnYXRlLCBVSUNvbnRleHRNZW51SW50ZXJh
Y3Rpb25EZWxlZ2F0ZT4KICNlbHNlCiBAaW50ZXJmYWNlIFdLQWN0aW9uU2hlZXRBc3Npc3RhbnQg
OiBOU09iamVjdCA8V0tBY3Rpb25TaGVldERlbGVnYXRlPgogI2VuZGlmCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFzc2lzdGFudC5tbSBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0QXNzaXN0YW50Lm1tCmluZGV4
IGE3ZmE1MTdlY2IyMDAzYjdiNWIyMWRlNDJiZTE5ZjQ5MDQ3MDYwZDYuLjhlODZiYzBkYzA3YWFj
MjI1M2U1MTU4YjE3NjFmNmMxN2IzYTcxZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0QXNzaXN0YW50Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0QXNzaXN0YW50Lm1tCkBAIC0xMDEsNiArMTAxLDcg
QEAgc3RhdGljIExTQXBwTGluayAqYXBwTGlua0ZvclVSTChOU1VSTCAqdXJsKQogICAgIEJPT0wg
X25lZWRzTGlua0luZGljYXRvcjsKICAgICBCT09MIF9pc1ByZXNlbnRpbmdERFVzZXJJbnRlcmZh
Y2U7CiAgICAgQk9PTCBfaGFzUGVuZGluZ0FjdGlvblNoZWV0OworICAgIFJldGFpblB0cjxVSUNv
bnRleHRNZW51SW50ZXJhY3Rpb24+IF9kYXRhRGV0ZWN0b3JDb250ZXh0TWVudUludGVyYWN0aW9u
OwogfQogCiAtIChpZCA8V0tBY3Rpb25TaGVldEFzc2lzdGFudERlbGVnYXRlPilkZWxlZ2F0ZQpA
QCAtNjMyLDYgKzYzMywyNCBAQCBBTExPV19ERVBSRUNBVEVEX0RFQ0xBUkFUSU9OU19FTkQKICAg
ICAgICAgW3NlbGYgY2xlYW51cFNoZWV0XTsKIH0KIAorI2lmIEVOQUJMRShEQVRBX0RFVEVDVElP
TikgJiYgVVNFKFVJQ09OVEVYVE1FTlUpCistICh2b2lkKXJlbW92ZUNvbnRleHRNZW51SW50ZXJh
Y3Rpb24KK3sKKyAgICBpZiAoX2RhdGFEZXRlY3RvckNvbnRleHRNZW51SW50ZXJhY3Rpb24pIHsK
KyAgICAgICAgW192aWV3IHJlbW92ZUludGVyYWN0aW9uOl9kYXRhRGV0ZWN0b3JDb250ZXh0TWVu
dUludGVyYWN0aW9uLmdldCgpXTsKKyAgICAgICAgX2RhdGFEZXRlY3RvckNvbnRleHRNZW51SW50
ZXJhY3Rpb24gPSBuaWw7CisgICAgfQorfQorCistICh2b2lkKWVuc3VyZUNvbnRleHRNZW51SW50
ZXJhY3Rpb24KK3sKKyAgICBpZiAoIV9kYXRhRGV0ZWN0b3JDb250ZXh0TWVudUludGVyYWN0aW9u
KSB7CisgICAgICAgIF9kYXRhRGV0ZWN0b3JDb250ZXh0TWVudUludGVyYWN0aW9uID0gYWRvcHRO
UyhbW1VJQ29udGV4dE1lbnVJbnRlcmFjdGlvbiBhbGxvY10gaW5pdFdpdGhEZWxlZ2F0ZTpzZWxm
XSk7CisgICAgICAgIFtfdmlldyBhZGRJbnRlcmFjdGlvbjpfZGF0YURldGVjdG9yQ29udGV4dE1l
bnVJbnRlcmFjdGlvbi5nZXQoKV07CisgICAgfQorfQorI2VuZGlmCisKIC0gKHZvaWQpc2hvd0Rh
dGFEZXRlY3RvcnNTaGVldAogewogI2lmIEVOQUJMRShEQVRBX0RFVEVDVElPTikKQEAgLTY2Nyw2
ICs2ODYsMTUgQEAgQUxMT1dfREVQUkVDQVRFRF9ERUNMQVJBVElPTlNfRU5ECiAgICAgTlNBcnJh
eSAqZGF0YURldGVjdG9yc0FjdGlvbnMgPSBbY29udHJvbGxlciBhY3Rpb25zRm9yVVJMOnRhcmdl
dFVSTCBpZGVudGlmaWVyOl9wb3NpdGlvbkluZm9ybWF0aW9uLT5kYXRhRGV0ZWN0b3JJZGVudGlm
aWVyIHNlbGVjdGVkVGV4dDp0ZXh0QXRTZWxlY3Rpb24gcmVzdWx0czpfcG9zaXRpb25JbmZvcm1h
dGlvbi0+ZGF0YURldGVjdG9yUmVzdWx0cy5nZXQoKSBjb250ZXh0OmNvbnRleHRdOwogICAgIGlm
IChbZGF0YURldGVjdG9yc0FjdGlvbnMgY291bnRdID09IDApCiAgICAgICAgIHJldHVybjsKKyAg
ICAKKyNpZiBFTkFCTEUoREFUQV9ERVRFQ1RJT04pICYmIFVTRShVSUNPTlRFWFRNRU5VKQorICAg
IFtzZWxmIGVuc3VyZUNvbnRleHRNZW51SW50ZXJhY3Rpb25dOworICAgIGF1dG8gZGVsZWdhdGUg
PSBfZGVsZWdhdGUuZ2V0KCk7CisgICAgaWYgKFtkZWxlZ2F0ZSByZXNwb25kc1RvU2VsZWN0b3I6
QHNlbGVjdG9yKGNvbnRleHRNZW51RGlzcGxheUxvY2F0aW9uRm9yQWN0aW9uU2hlZXRBc3Npc3Rh
bnQ6KV0pIHsKKyAgICAgICAgW19kYXRhRGV0ZWN0b3JDb250ZXh0TWVudUludGVyYWN0aW9uIF9w
cmVzZW50TWVudUF0TG9jYXRpb246W2RlbGVnYXRlIGNvbnRleHRNZW51RGlzcGxheUxvY2F0aW9u
Rm9yQWN0aW9uU2hlZXRBc3Npc3RhbnQ6c2VsZl1dOworICAgICAgICByZXR1cm47CisgICAgfQor
I2VuZGlmCiAKICAgICBOU011dGFibGVBcnJheSAqZWxlbWVudEFjdGlvbnMgPSBbTlNNdXRhYmxl
QXJyYXkgYXJyYXldOwogICAgIGZvciAoTlNVSW50ZWdlciBhY3Rpb25OdW1iZXIgPSAwOyBhY3Rp
b25OdW1iZXIgPCBbZGF0YURldGVjdG9yc0FjdGlvbnMgY291bnRdOyBhY3Rpb25OdW1iZXIrKykg
ewpAQCAtNjg4LDYgKzcxNiw1MyBAQCBBTExPV19ERVBSRUNBVEVEX0RFQ0xBUkFUSU9OU19FTkQK
ICNlbmRpZgogfQogCistIChVSUNvbnRleHRNZW51Q29uZmlndXJhdGlvbiAqKWNvbnRleHRNZW51
SW50ZXJhY3Rpb246KFVJQ29udGV4dE1lbnVJbnRlcmFjdGlvbiAqKWludGVyYWN0aW9uIGNvbmZp
Z3VyYXRpb25Gb3JNZW51QXRMb2NhdGlvbjooQ0dQb2ludClsb2NhdGlvbgoreworICAgIERERGV0
ZWN0aW9uQ29udHJvbGxlciAqY29udHJvbGxlciA9IFtnZXRERERldGVjdGlvbkNvbnRyb2xsZXJD
bGFzcygpIHNoYXJlZENvbnRyb2xsZXJdOworICAgIE5TRGljdGlvbmFyeSAqY29udGV4dCA9IG5p
bDsKKyAgICBOU1N0cmluZyAqdGV4dEF0U2VsZWN0aW9uID0gbmlsOworCisgICAgaWYgKFtfZGVs
ZWdhdGUgcmVzcG9uZHNUb1NlbGVjdG9yOkBzZWxlY3RvcihkYXRhRGV0ZWN0aW9uQ29udGV4dEZv
ckFjdGlvblNoZWV0QXNzaXN0YW50OildKQorICAgICAgICBjb250ZXh0ID0gW19kZWxlZ2F0ZSBk
YXRhRGV0ZWN0aW9uQ29udGV4dEZvckFjdGlvblNoZWV0QXNzaXN0YW50OnNlbGZdOworICAgIGlm
IChbX2RlbGVnYXRlIHJlc3BvbmRzVG9TZWxlY3RvcjpAc2VsZWN0b3Ioc2VsZWN0ZWRUZXh0Rm9y
QWN0aW9uU2hlZXRBc3Npc3RhbnQ6KV0pCisgICAgICAgIHRleHRBdFNlbGVjdGlvbiA9IFtfZGVs
ZWdhdGUgc2VsZWN0ZWRUZXh0Rm9yQWN0aW9uU2hlZXRBc3Npc3RhbnQ6c2VsZl07CisKKyAgICBO
U0RpY3Rpb25hcnkgKm5ld0NvbnRleHQgPSBuaWw7CisgICAgRERSZXN1bHRSZWYgZGRSZXN1bHQg
PSBbY29udHJvbGxlciByZXN1bHRGb3JVUkw6X3Bvc2l0aW9uSW5mb3JtYXRpb24tPnVybCBpZGVu
dGlmaWVyOl9wb3NpdGlvbkluZm9ybWF0aW9uLT5kYXRhRGV0ZWN0b3JJZGVudGlmaWVyIHNlbGVj
dGVkVGV4dDp0ZXh0QXRTZWxlY3Rpb24gcmVzdWx0czpfcG9zaXRpb25JbmZvcm1hdGlvbi0+ZGF0
YURldGVjdG9yUmVzdWx0cy5nZXQoKSBjb250ZXh0OmNvbnRleHQgZXh0ZW5kZWRDb250ZXh0OiZu
ZXdDb250ZXh0XTsKKyAgICAKKyAgICBhdXRvIGRkQ29udGV4dE1lbnVBY3Rpb25DbGFzcyA9IGdl
dEREQ29udGV4dE1lbnVBY3Rpb25DbGFzcygpOworICAgIGlmIChkZFJlc3VsdCkKKyAgICAgICAg
cmV0dXJuIFtkZENvbnRleHRNZW51QWN0aW9uQ2xhc3MgY29udGV4dE1lbnVDb25maWd1cmF0aW9u
V2l0aFJlc3VsdDpkZFJlc3VsdCBpblZpZXc6X3ZpZXcuZ2V0QXV0b3JlbGVhc2VkKCkgY29udGV4
dDpjb250ZXh0IG1lbnVJZGVudGlmaWVyOm5pbF07CisgICAgcmV0dXJuIFtkZENvbnRleHRNZW51
QWN0aW9uQ2xhc3MgY29udGV4dE1lbnVDb25maWd1cmF0aW9uV2l0aFVSTDpfcG9zaXRpb25JbmZv
cm1hdGlvbi0+dXJsIGluVmlldzpfdmlldy5nZXRBdXRvcmVsZWFzZWQoKSBjb250ZXh0OmNvbnRl
eHQgbWVudUlkZW50aWZpZXI6bmlsXTsKK30KKworLSAoVUlUYXJnZXRlZFByZXZpZXcgKiljb250
ZXh0TWVudUludGVyYWN0aW9uOihVSUNvbnRleHRNZW51SW50ZXJhY3Rpb24gKilpbnRlcmFjdGlv
biBwcmV2aWV3Rm9ySGlnaGxpZ2h0aW5nTWVudVdpdGhDb25maWd1cmF0aW9uOihVSUNvbnRleHRN
ZW51Q29uZmlndXJhdGlvbiAqKWNvbmZpZ3VyYXRpb24KK3sKKyAgICBhdXRvIGRlbGVnYXRlID0g
X2RlbGVnYXRlLmdldCgpOworICAgIENHUG9pbnQgY2VudGVyID0gQ0dQb2ludFplcm87CisgICAg
aWYgKFtkZWxlZ2F0ZSByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKGNvbnRleHRNZW51RGlz
cGxheUxvY2F0aW9uRm9yQWN0aW9uU2hlZXRBc3Npc3RhbnQ6KV0pCisgICAgICAgIGNlbnRlciA9
IFtkZWxlZ2F0ZSBjb250ZXh0TWVudURpc3BsYXlMb2NhdGlvbkZvckFjdGlvblNoZWV0QXNzaXN0
YW50OnNlbGZdOworICAgIFJldGFpblB0cjxVSVByZXZpZXdQYXJhbWV0ZXJzPiB1bnVzZWRQcmV2
aWV3UGFyYW1ldGVycyA9IGFkb3B0TlMoW1tVSVByZXZpZXdQYXJhbWV0ZXJzIGFsbG9jXSBpbml0
XSk7CisgICAgUmV0YWluUHRyPFVJUHJldmlld1RhcmdldD4gcHJldmlld1RhcmdldCA9IGFkb3B0
TlMoW1tVSVByZXZpZXdUYXJnZXQgYWxsb2NdIGluaXRXaXRoQ29udGFpbmVyOl92aWV3LmdldEF1
dG9yZWxlYXNlZCgpIGNlbnRlcjpjZW50ZXJdKTsKKyAgICBSZXRhaW5QdHI8VUlUYXJnZXRlZFBy
ZXZpZXc+IHByZXZpZXcgPSBhZG9wdE5TKFtbVUlUYXJnZXRlZFByZXZpZXcgYWxsb2NdIGluaXRX
aXRoVmlldzpfdmlldy5nZXRBdXRvcmVsZWFzZWQoKSBwYXJhbWV0ZXJzOnVudXNlZFByZXZpZXdQ
YXJhbWV0ZXJzLmdldCgpIHRhcmdldDpwcmV2aWV3VGFyZ2V0LmdldCgpXSk7CisKKyAgICByZXR1
cm4gcHJldmlldy5hdXRvcmVsZWFzZSgpOworfQorCistIChfVUlDb250ZXh0TWVudVN0eWxlICop
X2NvbnRleHRNZW51SW50ZXJhY3Rpb246KFVJQ29udGV4dE1lbnVJbnRlcmFjdGlvbiAqKWludGVy
YWN0aW9uIHN0eWxlRm9yTWVudVdpdGhDb25maWd1cmF0aW9uOihVSUNvbnRleHRNZW51Q29uZmln
dXJhdGlvbiAqKWNvbmZpZ3VyYXRpb24KK3sKKyAgICBfVUlDb250ZXh0TWVudVN0eWxlICpzdHls
ZSA9IFtfVUlDb250ZXh0TWVudVN0eWxlIGRlZmF1bHRTdHlsZV07CisgICAgc3R5bGUucHJlZmVy
cmVkTGF5b3V0ID0gX1VJQ29udGV4dE1lbnVMYXlvdXRDb21wYWN0TWVudTsKKyAgICByZXR1cm4g
c3R5bGU7Cit9CisKKy0gKHZvaWQpY29udGV4dE1lbnVJbnRlcmFjdGlvbjooVUlDb250ZXh0TWVu
dUludGVyYWN0aW9uICopaW50ZXJhY3Rpb24gd2lsbEVuZEZvckNvbmZpZ3VyYXRpb246KFVJQ29u
dGV4dE1lbnVDb25maWd1cmF0aW9uICopY29uZmlndXJhdGlvbiBhbmltYXRvcjooaWQ8VUlDb250
ZXh0TWVudUludGVyYWN0aW9uQW5pbWF0aW5nPilhbmltYXRvcgoreworICAgIFthbmltYXRvciBh
ZGRDb21wbGV0aW9uOl57CisgICAgICAgIFtzZWxmIHJlbW92ZUNvbnRleHRNZW51SW50ZXJhY3Rp
b25dOworICAgIH1dOworfQorCiAtICh2b2lkKWNsZWFudXBTaGVldAogewogICAgIGF1dG8gZGVs
ZWdhdGUgPSBfZGVsZWdhdGUuZ2V0KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbQppbmRleCAwNWQ4OWRmODRlYzMy
NTBhOTkxYjZiN2Q1YjJhOTQ4MjRjMzQ0YWY4Li5kYzYwZjgzOWIxZDk1MzI0ZmNjMjUyYjM4MjRl
NDFmODdiMjljYTY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tD
b250ZW50Vmlld0ludGVyYWN0aW9uLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lv
cy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0KQEAgLTY3OTMsNiArNjc5MywxMSBAQCBzdGF0
aWMgQk9PTCBhbGxQYXN0ZWJvYXJkSXRlbU9yaWdpbnNNYXRjaE9yaWdpbihVSVBhc3RlYm9hcmQg
KnBhc3RlYm9hcmQsIGNvbnN0CiAgICAgICAgIGNvbXBsZXRpb24obmlsLCBuaWwpOwogfQogCist
IChDR1BvaW50KWNvbnRleHRNZW51RGlzcGxheUxvY2F0aW9uRm9yQWN0aW9uU2hlZXRBc3Npc3Rh
bnQ6KFdLQWN0aW9uU2hlZXRBc3Npc3RhbnQgKilhc3Npc3RhbnQKK3sKKyAgICByZXR1cm4gW3Nl
bGYgbGFzdEludGVyYWN0aW9uTG9jYXRpb25dOworfQorCiAtIChCT09MKV9zaG91bGRVc2VDb250
ZXh0TWVudXMKIHsKICNpZiBIQVZFKExJTktfUFJFVklFVykgJiYgVVNFKFVJQ09OVEVYVE1FTlUp
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>392937</attachid>
            <date>2020-03-07 22:24:56 -0800</date>
            <delta_ts>2020-03-07 23:16:14 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208779-20200307222455.patch</filename>
            <type>text/plain</type>
            <size>9201</size>
            <attacher name="Megan Gardner">megan_gardner</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4MTAxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDJmOTBmZTQ0NDAxMjcwODY3
ODQ3ZDgxMmFhNTRlNDUxMTBhYzdhMmYuLmFkODUyMzJmMjkyNWNhNTI0ZmFmZjRlZGI3ZGUzZmNl
MDljZjBiODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMjAtMDMtMDcgIE1lZ2FuIEdh
cmRuZXIgIDxtZWdhbl9nYXJkbmVyQGFwcGxlLmNvbT4KKworICAgICAgICBBZG9wdCBDb250ZXh0
IE1lbnVzIGZvciBEYXRhIERldGVjdG9ycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjA4Nzc5CisKKyAgICAgICAgU3dpdGNoIHRvIGNvbnRleHQgbWVu
dXMgZm9yIGRhdGEgZGV0ZWN0b3IgYWN0aW9uIHNoZWV0cy4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVl
dEFzc2lzdGFudC5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFzc2lz
dGFudC5tbToKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVldEFzc2lzdGFudCByZW1vdmVDb250ZXh0
TWVudUludGVyYWN0aW9uXSk6CisgICAgICAgICgtW1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQgZW5z
dXJlQ29udGV4dE1lbnVJbnRlcmFjdGlvbl0pOgorICAgICAgICAoLVtXS0FjdGlvblNoZWV0QXNz
aXN0YW50IHNob3dEYXRhRGV0ZWN0b3JzU2hlZXRdKToKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVl
dEFzc2lzdGFudCBjb250ZXh0TWVudUludGVyYWN0aW9uOmNvbmZpZ3VyYXRpb25Gb3JNZW51QXRM
b2NhdGlvbjpdKToKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVldEFzc2lzdGFudCBjb250ZXh0TWVu
dUludGVyYWN0aW9uOnByZXZpZXdGb3JIaWdobGlnaHRpbmdNZW51V2l0aENvbmZpZ3VyYXRpb246
XSk6CisgICAgICAgICgtW1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQgX2NvbnRleHRNZW51SW50ZXJh
Y3Rpb246c3R5bGVGb3JNZW51V2l0aENvbmZpZ3VyYXRpb246XSk6CisgICAgICAgICgtW1dLQWN0
aW9uU2hlZXRBc3Npc3RhbnQgY29udGV4dE1lbnVJbnRlcmFjdGlvbjp3aWxsRW5kRm9yQ29uZmln
dXJhdGlvbjphbmltYXRvcjpdKToKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLQ29udGVudFZp
ZXdJbnRlcmFjdGlvbi5tbToKKyAgICAgICAgKC1bV0tDb250ZW50VmlldyBjb250ZXh0TWVudURp
c3BsYXlMb2NhdGlvbkZvckFjdGlvblNoZWV0QXNzaXN0YW50Ol0pOgorCiAyMDIwLTAzLTA3ICBC
cmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgogCiAgICAgICAgIENyZWF0ZSBhIGZs
YWcgdG8gZGlzYWJsZSBpbi1hcHAgYnJvd3NlciBxdWlya3MKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0QXNzaXN0YW50LmggYi9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFzc2lzdGFudC5oCmluZGV4IGIwNGRkMTA1
YTk0NzY4ZGQ5MGFiOWY2ZGI0ODNhZGFjNjM0ZDk0ZTcuLjRjNWYxZjdjMDMyNGY2Nzk4MTFlZDE2
ZGNmYTE5NjFhMmMyNWQ2NzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lv
cy9XS0FjdGlvblNoZWV0QXNzaXN0YW50LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
aW9zL1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQuaApAQCAtNDAsNiArNDAsNyBAQCBzdHJ1Y3QgSW50
ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb247CiBAY2xhc3MgX1dLQWN0aXZhdGVkRWxlbWVu
dEluZm87CiBAY2xhc3MgX1dLRWxlbWVudEFjdGlvbjsKIEBwcm90b2NvbCBXS0FjdGlvblNoZWV0
RGVsZWdhdGU7CitAcHJvdG9jb2wgVUlDb250ZXh0TWVudUludGVyYWN0aW9uRGVsZWdhdGU7CiAK
IEBwcm90b2NvbCBXS0FjdGlvblNoZWV0QXNzaXN0YW50RGVsZWdhdGUgPE5TT2JqZWN0PgogQHJl
cXVpcmVkCkBAIC02MSwxMSArNjIsMTIgQEAgc3RydWN0IEludGVyYWN0aW9uSW5mb3JtYXRpb25B
dFBvc2l0aW9uOwogLSAoTlNEaWN0aW9uYXJ5ICopZGF0YURldGVjdGlvbkNvbnRleHRGb3JBY3Rp
b25TaGVldEFzc2lzdGFudDooV0tBY3Rpb25TaGVldEFzc2lzdGFudCAqKWFzc2lzdGFudDsKIC0g
KE5TU3RyaW5nICopc2VsZWN0ZWRUZXh0Rm9yQWN0aW9uU2hlZXRBc3Npc3RhbnQ6KFdLQWN0aW9u
U2hlZXRBc3Npc3RhbnQgKilhc3Npc3RhbnQ7CiAtICh2b2lkKWFjdGlvblNoZWV0QXNzaXN0YW50
OihXS0FjdGlvblNoZWV0QXNzaXN0YW50ICopYXNzaXN0YW50IGdldEFsdGVybmF0ZVVSTEZvcklt
YWdlOihVSUltYWdlICopaW1hZ2UgY29tcGxldGlvbjoodm9pZCAoXikoTlNVUkwgKmFsdGVybmF0
ZVVSTCwgTlNEaWN0aW9uYXJ5ICp1c2VySW5mbykpY29tcGxldGlvbjsKKy0gKENHUG9pbnQpY29u
dGV4dE1lbnVEaXNwbGF5TG9jYXRpb25Gb3JBY3Rpb25TaGVldEFzc2lzdGFudDooV0tBY3Rpb25T
aGVldEFzc2lzdGFudCAqKWFzc2lzdGFudDsKIAogQGVuZAogCi0jaWYgRU5BQkxFKERBVEFfREVU
RUNUSU9OKQotQGludGVyZmFjZSBXS0FjdGlvblNoZWV0QXNzaXN0YW50IDogTlNPYmplY3QgPFdL
QWN0aW9uU2hlZXREZWxlZ2F0ZSwgREREZXRlY3Rpb25Db250cm9sbGVySW50ZXJhY3Rpb25EZWxl
Z2F0ZT4KKyNpZiBFTkFCTEUoREFUQV9ERVRFQ1RJT04pICYmIFVTRShVSUNPTlRFWFRNRU5VKQor
QGludGVyZmFjZSBXS0FjdGlvblNoZWV0QXNzaXN0YW50IDogTlNPYmplY3QgPFdLQWN0aW9uU2hl
ZXREZWxlZ2F0ZSwgREREZXRlY3Rpb25Db250cm9sbGVySW50ZXJhY3Rpb25EZWxlZ2F0ZSwgVUlD
b250ZXh0TWVudUludGVyYWN0aW9uRGVsZWdhdGU+CiAjZWxzZQogQGludGVyZmFjZSBXS0FjdGlv
blNoZWV0QXNzaXN0YW50IDogTlNPYmplY3QgPFdLQWN0aW9uU2hlZXREZWxlZ2F0ZT4KICNlbmRp
ZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQWN0aW9uU2hlZXRB
c3Npc3RhbnQubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFz
c2lzdGFudC5tbQppbmRleCBhN2ZhNTE3ZWNiMjAwM2I3YjViMjFkZTQyYmUxOWY0OTA0NzA2MGQ2
Li4zMTRhNmYxNmQ5MzA5YmM0N2YwMWRmY2JlNjUxM2U2ODgwODIzN2Y1IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFzc2lzdGFudC5tbQorKysg
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFzc2lzdGFudC5tbQpA
QCAtOTcsNiArOTcsNyBAQCBzdGF0aWMgTFNBcHBMaW5rICphcHBMaW5rRm9yVVJMKE5TVVJMICp1
cmwpCiAgICAgUmV0YWluUHRyPFdLQWN0aW9uU2hlZXQ+IF9pbnRlcmFjdGlvblNoZWV0OwogICAg
IFJldGFpblB0cjxfV0tBY3RpdmF0ZWRFbGVtZW50SW5mbz4gX2VsZW1lbnRJbmZvOwogICAgIE9w
dGlvbmFsPFdlYktpdDo6SW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb24+IF9wb3NpdGlv
bkluZm9ybWF0aW9uOworICAgIFJldGFpblB0cjxVSUNvbnRleHRNZW51SW50ZXJhY3Rpb24+IF9k
YXRhRGV0ZWN0b3JDb250ZXh0TWVudUludGVyYWN0aW9uOwogICAgIFdlYWtPYmpDUHRyPFVJVmll
dz4gX3ZpZXc7CiAgICAgQk9PTCBfbmVlZHNMaW5rSW5kaWNhdG9yOwogICAgIEJPT0wgX2lzUHJl
c2VudGluZ0REVXNlckludGVyZmFjZTsKQEAgLTYzMiw2ICs2MzMsMjQgQEAgQUxMT1dfREVQUkVD
QVRFRF9ERUNMQVJBVElPTlNfRU5ECiAgICAgICAgIFtzZWxmIGNsZWFudXBTaGVldF07CiB9CiAK
KyNpZiBFTkFCTEUoREFUQV9ERVRFQ1RJT04pICYmIFVTRShVSUNPTlRFWFRNRU5VKQorLSAodm9p
ZClyZW1vdmVDb250ZXh0TWVudUludGVyYWN0aW9uCit7CisgICAgaWYgKF9kYXRhRGV0ZWN0b3JD
b250ZXh0TWVudUludGVyYWN0aW9uKSB7CisgICAgICAgIFtfdmlldyByZW1vdmVJbnRlcmFjdGlv
bjpfZGF0YURldGVjdG9yQ29udGV4dE1lbnVJbnRlcmFjdGlvbi5nZXQoKV07CisgICAgICAgIF9k
YXRhRGV0ZWN0b3JDb250ZXh0TWVudUludGVyYWN0aW9uID0gbmlsOworICAgIH0KK30KKworLSAo
dm9pZCllbnN1cmVDb250ZXh0TWVudUludGVyYWN0aW9uCit7CisgICAgaWYgKCFfZGF0YURldGVj
dG9yQ29udGV4dE1lbnVJbnRlcmFjdGlvbikgeworICAgICAgICBfZGF0YURldGVjdG9yQ29udGV4
dE1lbnVJbnRlcmFjdGlvbiA9IGFkb3B0TlMoW1tVSUNvbnRleHRNZW51SW50ZXJhY3Rpb24gYWxs
b2NdIGluaXRXaXRoRGVsZWdhdGU6c2VsZl0pOworICAgICAgICBbX3ZpZXcgYWRkSW50ZXJhY3Rp
b246X2RhdGFEZXRlY3RvckNvbnRleHRNZW51SW50ZXJhY3Rpb24uZ2V0KCldOworICAgIH0KK30K
KyNlbmRpZgorCiAtICh2b2lkKXNob3dEYXRhRGV0ZWN0b3JzU2hlZXQKIHsKICNpZiBFTkFCTEUo
REFUQV9ERVRFQ1RJT04pCkBAIC02NjcsNiArNjg2LDE1IEBAIEFMTE9XX0RFUFJFQ0FURURfREVD
TEFSQVRJT05TX0VORAogICAgIE5TQXJyYXkgKmRhdGFEZXRlY3RvcnNBY3Rpb25zID0gW2NvbnRy
b2xsZXIgYWN0aW9uc0ZvclVSTDp0YXJnZXRVUkwgaWRlbnRpZmllcjpfcG9zaXRpb25JbmZvcm1h
dGlvbi0+ZGF0YURldGVjdG9ySWRlbnRpZmllciBzZWxlY3RlZFRleHQ6dGV4dEF0U2VsZWN0aW9u
IHJlc3VsdHM6X3Bvc2l0aW9uSW5mb3JtYXRpb24tPmRhdGFEZXRlY3RvclJlc3VsdHMuZ2V0KCkg
Y29udGV4dDpjb250ZXh0XTsKICAgICBpZiAoW2RhdGFEZXRlY3RvcnNBY3Rpb25zIGNvdW50XSA9
PSAwKQogICAgICAgICByZXR1cm47CisgICAgCisjaWYgRU5BQkxFKERBVEFfREVURUNUSU9OKSAm
JiBVU0UoVUlDT05URVhUTUVOVSkKKyAgICBbc2VsZiBlbnN1cmVDb250ZXh0TWVudUludGVyYWN0
aW9uXTsKKyAgICBhdXRvIGRlbGVnYXRlID0gX2RlbGVnYXRlLmdldCgpOworICAgIGlmIChbZGVs
ZWdhdGUgcmVzcG9uZHNUb1NlbGVjdG9yOkBzZWxlY3Rvcihjb250ZXh0TWVudURpc3BsYXlMb2Nh
dGlvbkZvckFjdGlvblNoZWV0QXNzaXN0YW50OildKSB7CisgICAgICAgIFtfZGF0YURldGVjdG9y
Q29udGV4dE1lbnVJbnRlcmFjdGlvbiBfcHJlc2VudE1lbnVBdExvY2F0aW9uOltkZWxlZ2F0ZSBj
b250ZXh0TWVudURpc3BsYXlMb2NhdGlvbkZvckFjdGlvblNoZWV0QXNzaXN0YW50OnNlbGZdXTsK
KyAgICAgICAgcmV0dXJuOworICAgIH0KKyNlbmRpZgogCiAgICAgTlNNdXRhYmxlQXJyYXkgKmVs
ZW1lbnRBY3Rpb25zID0gW05TTXV0YWJsZUFycmF5IGFycmF5XTsKICAgICBmb3IgKE5TVUludGVn
ZXIgYWN0aW9uTnVtYmVyID0gMDsgYWN0aW9uTnVtYmVyIDwgW2RhdGFEZXRlY3RvcnNBY3Rpb25z
IGNvdW50XTsgYWN0aW9uTnVtYmVyKyspIHsKQEAgLTY4OCw2ICs3MTYsNTQgQEAgQUxMT1dfREVQ
UkVDQVRFRF9ERUNMQVJBVElPTlNfRU5ECiAjZW5kaWYKIH0KIAorLSAoVUlDb250ZXh0TWVudUNv
bmZpZ3VyYXRpb24gKiljb250ZXh0TWVudUludGVyYWN0aW9uOihVSUNvbnRleHRNZW51SW50ZXJh
Y3Rpb24gKilpbnRlcmFjdGlvbiBjb25maWd1cmF0aW9uRm9yTWVudUF0TG9jYXRpb246KENHUG9p
bnQpbG9jYXRpb24KK3sKKyAgICBERERldGVjdGlvbkNvbnRyb2xsZXIgKmNvbnRyb2xsZXIgPSBb
Z2V0REREZXRlY3Rpb25Db250cm9sbGVyQ2xhc3MoKSBzaGFyZWRDb250cm9sbGVyXTsKKyAgICBO
U0RpY3Rpb25hcnkgKmNvbnRleHQgPSBuaWw7CisgICAgTlNTdHJpbmcgKnRleHRBdFNlbGVjdGlv
biA9IG5pbDsKKworICAgIGlmIChbX2RlbGVnYXRlIHJlc3BvbmRzVG9TZWxlY3RvcjpAc2VsZWN0
b3IoZGF0YURldGVjdGlvbkNvbnRleHRGb3JBY3Rpb25TaGVldEFzc2lzdGFudDopXSkKKyAgICAg
ICAgY29udGV4dCA9IFtfZGVsZWdhdGUgZGF0YURldGVjdGlvbkNvbnRleHRGb3JBY3Rpb25TaGVl
dEFzc2lzdGFudDpzZWxmXTsKKyAgICBpZiAoW19kZWxlZ2F0ZSByZXNwb25kc1RvU2VsZWN0b3I6
QHNlbGVjdG9yKHNlbGVjdGVkVGV4dEZvckFjdGlvblNoZWV0QXNzaXN0YW50OildKQorICAgICAg
ICB0ZXh0QXRTZWxlY3Rpb24gPSBbX2RlbGVnYXRlIHNlbGVjdGVkVGV4dEZvckFjdGlvblNoZWV0
QXNzaXN0YW50OnNlbGZdOworCisgICAgTlNEaWN0aW9uYXJ5ICpuZXdDb250ZXh0ID0gbmlsOwor
ICAgIEREUmVzdWx0UmVmIGRkUmVzdWx0ID0gW2NvbnRyb2xsZXIgcmVzdWx0Rm9yVVJMOl9wb3Np
dGlvbkluZm9ybWF0aW9uLT51cmwgaWRlbnRpZmllcjpfcG9zaXRpb25JbmZvcm1hdGlvbi0+ZGF0
YURldGVjdG9ySWRlbnRpZmllciBzZWxlY3RlZFRleHQ6dGV4dEF0U2VsZWN0aW9uIHJlc3VsdHM6
X3Bvc2l0aW9uSW5mb3JtYXRpb24tPmRhdGFEZXRlY3RvclJlc3VsdHMuZ2V0KCkgY29udGV4dDpj
b250ZXh0IGV4dGVuZGVkQ29udGV4dDombmV3Q29udGV4dF07CisKKyAgICBhdXRvIGRkQ29udGV4
dE1lbnVBY3Rpb25DbGFzcyA9IGdldEREQ29udGV4dE1lbnVBY3Rpb25DbGFzcygpOworICAgIGlm
IChkZFJlc3VsdCkKKyAgICAgICAgcmV0dXJuIFtkZENvbnRleHRNZW51QWN0aW9uQ2xhc3MgY29u
dGV4dE1lbnVDb25maWd1cmF0aW9uV2l0aFJlc3VsdDpkZFJlc3VsdCBpblZpZXc6X3ZpZXcuZ2V0
QXV0b3JlbGVhc2VkKCkgY29udGV4dDpjb250ZXh0IG1lbnVJZGVudGlmaWVyOm5pbF07CisgICAg
cmV0dXJuIFtkZENvbnRleHRNZW51QWN0aW9uQ2xhc3MgY29udGV4dE1lbnVDb25maWd1cmF0aW9u
V2l0aFVSTDpfcG9zaXRpb25JbmZvcm1hdGlvbi0+dXJsIGluVmlldzpfdmlldy5nZXRBdXRvcmVs
ZWFzZWQoKSBjb250ZXh0OmNvbnRleHQgbWVudUlkZW50aWZpZXI6bmlsXTsKK30KKworLSAoVUlU
YXJnZXRlZFByZXZpZXcgKiljb250ZXh0TWVudUludGVyYWN0aW9uOihVSUNvbnRleHRNZW51SW50
ZXJhY3Rpb24gKilpbnRlcmFjdGlvbiBwcmV2aWV3Rm9ySGlnaGxpZ2h0aW5nTWVudVdpdGhDb25m
aWd1cmF0aW9uOihVSUNvbnRleHRNZW51Q29uZmlndXJhdGlvbiAqKWNvbmZpZ3VyYXRpb24KK3sK
KyAgICBhdXRvIGRlbGVnYXRlID0gX2RlbGVnYXRlLmdldCgpOworICAgIENHUG9pbnQgY2VudGVy
ID0gQ0dQb2ludFplcm87CisgICAgaWYgKFtkZWxlZ2F0ZSByZXNwb25kc1RvU2VsZWN0b3I6QHNl
bGVjdG9yKGNvbnRleHRNZW51RGlzcGxheUxvY2F0aW9uRm9yQWN0aW9uU2hlZXRBc3Npc3RhbnQ6
KV0pCisgICAgICAgIGNlbnRlciA9IFtkZWxlZ2F0ZSBjb250ZXh0TWVudURpc3BsYXlMb2NhdGlv
bkZvckFjdGlvblNoZWV0QXNzaXN0YW50OnNlbGZdOworICAgIFJldGFpblB0cjxVSVByZXZpZXdQ
YXJhbWV0ZXJzPiB1bnVzZWRQcmV2aWV3UGFyYW1ldGVycyA9IGFkb3B0TlMoW1tVSVByZXZpZXdQ
YXJhbWV0ZXJzIGFsbG9jXSBpbml0XSk7CisgICAgUmV0YWluUHRyPFVJUHJldmlld1RhcmdldD4g
cHJldmlld1RhcmdldCA9IGFkb3B0TlMoW1tVSVByZXZpZXdUYXJnZXQgYWxsb2NdIGluaXRXaXRo
Q29udGFpbmVyOl92aWV3LmdldEF1dG9yZWxlYXNlZCgpIGNlbnRlcjpjZW50ZXJdKTsKKyAgICBS
ZXRhaW5QdHI8VUlUYXJnZXRlZFByZXZpZXc+IHByZXZpZXcgPSBhZG9wdE5TKFtbVUlUYXJnZXRl
ZFByZXZpZXcgYWxsb2NdIGluaXRXaXRoVmlldzpfdmlldy5nZXRBdXRvcmVsZWFzZWQoKSBwYXJh
bWV0ZXJzOnVudXNlZFByZXZpZXdQYXJhbWV0ZXJzLmdldCgpIHRhcmdldDpwcmV2aWV3VGFyZ2V0
LmdldCgpXSk7CisKKyAgICByZXR1cm4gcHJldmlldy5hdXRvcmVsZWFzZSgpOworfQorCistIChf
VUlDb250ZXh0TWVudVN0eWxlICopX2NvbnRleHRNZW51SW50ZXJhY3Rpb246KFVJQ29udGV4dE1l
bnVJbnRlcmFjdGlvbiAqKWludGVyYWN0aW9uIHN0eWxlRm9yTWVudVdpdGhDb25maWd1cmF0aW9u
OihVSUNvbnRleHRNZW51Q29uZmlndXJhdGlvbiAqKWNvbmZpZ3VyYXRpb24KK3sKKyAgICBfVUlD
b250ZXh0TWVudVN0eWxlICpzdHlsZSA9IFtfVUlDb250ZXh0TWVudVN0eWxlIGRlZmF1bHRTdHls
ZV07CisgICAgc3R5bGUucHJlZmVycmVkTGF5b3V0ID0gX1VJQ29udGV4dE1lbnVMYXlvdXRDb21w
YWN0TWVudTsKKyAgICByZXR1cm4gc3R5bGU7Cit9CisKKy0gKHZvaWQpY29udGV4dE1lbnVJbnRl
cmFjdGlvbjooVUlDb250ZXh0TWVudUludGVyYWN0aW9uICopaW50ZXJhY3Rpb24gd2lsbEVuZEZv
ckNvbmZpZ3VyYXRpb246KFVJQ29udGV4dE1lbnVDb25maWd1cmF0aW9uICopY29uZmlndXJhdGlv
biBhbmltYXRvcjooaWQ8VUlDb250ZXh0TWVudUludGVyYWN0aW9uQW5pbWF0aW5nPilhbmltYXRv
cgoreworICAgIFthbmltYXRvciBhZGRDb21wbGV0aW9uOl57CisgICAgICAgIFtzZWxmIHJlbW92
ZUNvbnRleHRNZW51SW50ZXJhY3Rpb25dOworICAgIH1dOworfQorCisKIC0gKHZvaWQpY2xlYW51
cFNoZWV0CiB7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IF9kZWxlZ2F0ZS5nZXQoKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24u
bW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9u
Lm1tCmluZGV4IDk2OGM1YTZjYzQxNzc5NDkzOTdhYTZlYzRkZTk3MjQ2OTdjMzNlMjkuLjE0MTM3
YTMzY2UyNTUyNjJiMDI0OWEzYzk4YWFhZDcwZmVkMzJkMTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0KKysrIGIvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbQpAQCAt
NjgxNCw2ICs2ODE0LDExIEBAIHN0YXRpYyBCT09MIGFsbFBhc3RlYm9hcmRJdGVtT3JpZ2luc01h
dGNoT3JpZ2luKFVJUGFzdGVib2FyZCAqcGFzdGVib2FyZCwgY29uc3QKICAgICAgICAgY29tcGxl
dGlvbihuaWwsIG5pbCk7CiB9CiAKKy0gKENHUG9pbnQpY29udGV4dE1lbnVEaXNwbGF5TG9jYXRp
b25Gb3JBY3Rpb25TaGVldEFzc2lzdGFudDooV0tBY3Rpb25TaGVldEFzc2lzdGFudCAqKWFzc2lz
dGFudAoreworICAgIHJldHVybiBbc2VsZiBsYXN0SW50ZXJhY3Rpb25Mb2NhdGlvbl07Cit9CisK
IC0gKEJPT0wpX3Nob3VsZFVzZUNvbnRleHRNZW51cwogewogI2lmIEhBVkUoTElOS19QUkVWSUVX
KSAmJiBVU0UoVUlDT05URVhUTUVOVSkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>392938</attachid>
            <date>2020-03-07 22:50:48 -0800</date>
            <delta_ts>2020-03-07 22:56:51 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208779-20200307225047.patch</filename>
            <type>text/plain</type>
            <size>10473</size>
            <attacher name="Megan Gardner">megan_gardner</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4MTAxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDJmOTBmZTQ0NDAxMjcwODY3
ODQ3ZDgxMmFhNTRlNDUxMTBhYzdhMmYuLmFkODUyMzJmMjkyNWNhNTI0ZmFmZjRlZGI3ZGUzZmNl
MDljZjBiODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMjAtMDMtMDcgIE1lZ2FuIEdh
cmRuZXIgIDxtZWdhbl9nYXJkbmVyQGFwcGxlLmNvbT4KKworICAgICAgICBBZG9wdCBDb250ZXh0
IE1lbnVzIGZvciBEYXRhIERldGVjdG9ycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjA4Nzc5CisKKyAgICAgICAgU3dpdGNoIHRvIGNvbnRleHQgbWVu
dXMgZm9yIGRhdGEgZGV0ZWN0b3IgYWN0aW9uIHNoZWV0cy4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVl
dEFzc2lzdGFudC5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFzc2lz
dGFudC5tbToKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVldEFzc2lzdGFudCByZW1vdmVDb250ZXh0
TWVudUludGVyYWN0aW9uXSk6CisgICAgICAgICgtW1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQgZW5z
dXJlQ29udGV4dE1lbnVJbnRlcmFjdGlvbl0pOgorICAgICAgICAoLVtXS0FjdGlvblNoZWV0QXNz
aXN0YW50IHNob3dEYXRhRGV0ZWN0b3JzU2hlZXRdKToKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVl
dEFzc2lzdGFudCBjb250ZXh0TWVudUludGVyYWN0aW9uOmNvbmZpZ3VyYXRpb25Gb3JNZW51QXRM
b2NhdGlvbjpdKToKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVldEFzc2lzdGFudCBjb250ZXh0TWVu
dUludGVyYWN0aW9uOnByZXZpZXdGb3JIaWdobGlnaHRpbmdNZW51V2l0aENvbmZpZ3VyYXRpb246
XSk6CisgICAgICAgICgtW1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQgX2NvbnRleHRNZW51SW50ZXJh
Y3Rpb246c3R5bGVGb3JNZW51V2l0aENvbmZpZ3VyYXRpb246XSk6CisgICAgICAgICgtW1dLQWN0
aW9uU2hlZXRBc3Npc3RhbnQgY29udGV4dE1lbnVJbnRlcmFjdGlvbjp3aWxsRW5kRm9yQ29uZmln
dXJhdGlvbjphbmltYXRvcjpdKToKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLQ29udGVudFZp
ZXdJbnRlcmFjdGlvbi5tbToKKyAgICAgICAgKC1bV0tDb250ZW50VmlldyBjb250ZXh0TWVudURp
c3BsYXlMb2NhdGlvbkZvckFjdGlvblNoZWV0QXNzaXN0YW50Ol0pOgorCiAyMDIwLTAzLTA3ICBC
cmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgogCiAgICAgICAgIENyZWF0ZSBhIGZs
YWcgdG8gZGlzYWJsZSBpbi1hcHAgYnJvd3NlciBxdWlya3MKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL1BBTC9wYWwvc3BpL2lvcy9EYXRhRGV0ZWN0b3JzVUlTUEkuaCBiL1NvdXJjZS9XZWJD
b3JlL1BBTC9wYWwvc3BpL2lvcy9EYXRhRGV0ZWN0b3JzVUlTUEkuaAppbmRleCA5MzhlYzVlODIz
M2QxMzNjNDliZWQ1Mjg1Y2JhYzg5Y2RlY2ZmNmRhLi5hOThhZTAxYjA2ZTdmMTdmYWQ1NDU3YThl
YWMwY2FjNWU1YWJjZTdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9p
b3MvRGF0YURldGVjdG9yc1VJU1BJLmgKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkv
aW9zL0RhdGFEZXRlY3RvcnNVSVNQSS5oCkBAIC01NCw2ICs1NCw4IEBACiBAaW50ZXJmYWNlIERE
Q29udGV4dE1lbnVBY3Rpb24KICsgKFVJQ29udGV4dE1lbnVDb25maWd1cmF0aW9uICopY29udGV4
dE1lbnVDb25maWd1cmF0aW9uV2l0aFVSTDooTlNVUkwgKilVUkwgaW5WaWV3OihVSVZpZXcgKil2
aWV3IGNvbnRleHQ6KE5TRGljdGlvbmFyeSAqKWNvbnRleHQgbWVudUlkZW50aWZpZXI6KE5TU3Ry
aW5nICopbWVudUlkZW50aWZpZXI7CiArIChVSUNvbnRleHRNZW51Q29uZmlndXJhdGlvbiAqKWNv
bnRleHRNZW51Q29uZmlndXJhdGlvbkZvclVSTDooTlNVUkwgKilVUkwgaWRlbnRpZmllcjooTlNT
dHJpbmcgKilpZGVudGlmaWVyIHNlbGVjdGVkVGV4dDooTlNTdHJpbmcgKilzZWxlY3RlZFRleHQg
cmVzdWx0czooTlNBcnJheSAqKSByZXN1bHRzIGluVmlldzogKFVJVmlldyAqKSB2aWV3IGNvbnRl
eHQ6KE5TRGljdGlvbmFyeSAqKWNvbnRleHQgbWVudUlkZW50aWZpZXI6KE5TU3RyaW5nICopbWVu
dUlkZW50aWZpZXI7CisrIChERENvbnRleHRNZW51Q29uZmlndXJhdGlvbiAqKWNvbnRleHRNZW51
Q29uZmlndXJhdGlvbldpdGhSZXN1bHQ6KEREUmVzdWx0UmVmKXJlc3VsdCBpblZpZXc6KFVJVmll
dyAqKXZpZXcgY29udGV4dDooTlNEaWN0aW9uYXJ5ICopY29udGV4dCBtZW51SWRlbnRpZmllcjoo
TlNTdHJpbmcgKiltZW51SWRlbnRpZmllcjsKKysgKEREQ29udGV4dE1lbnVDb25maWd1cmF0aW9u
ICopY29udGV4dE1lbnVDb25maWd1cmF0aW9uV2l0aFVSTDooTlNVUkwgKilVUkwgaW5WaWV3OihV
SVZpZXcgKil2aWV3IGNvbnRleHQ6KE5TRGljdGlvbmFyeSAqKWNvbnRleHQgbWVudUlkZW50aWZp
ZXI6KE5TU3RyaW5nICopbWVudUlkZW50aWZpZXI7CiBAZW5kCiAjZW5kaWYKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQuaCBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0QXNzaXN0YW50LmgKaW5k
ZXggYjA0ZGQxMDVhOTQ3NjhkZDkwYWI5ZjZkYjQ4M2FkYWM2MzRkOTRlNy4uMWQzMDk0NjMwYzhh
NDRlMDA5YWU4NzEwOTc2NGVkZGY4ZDVkOTY2YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvaW9zL1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFzc2lzdGFudC5oCkBAIC00MCw2ICs0MCw3IEBA
IHN0cnVjdCBJbnRlcmFjdGlvbkluZm9ybWF0aW9uQXRQb3NpdGlvbjsKIEBjbGFzcyBfV0tBY3Rp
dmF0ZWRFbGVtZW50SW5mbzsKIEBjbGFzcyBfV0tFbGVtZW50QWN0aW9uOwogQHByb3RvY29sIFdL
QWN0aW9uU2hlZXREZWxlZ2F0ZTsKK0Bwcm90b2NvbCBVSUNvbnRleHRNZW51SW50ZXJhY3Rpb25E
ZWxlZ2F0ZTsKIAogQHByb3RvY29sIFdLQWN0aW9uU2hlZXRBc3Npc3RhbnREZWxlZ2F0ZSA8TlNP
YmplY3Q+CiBAcmVxdWlyZWQKQEAgLTYxLDExICs2MiwxMiBAQCBzdHJ1Y3QgSW50ZXJhY3Rpb25J
bmZvcm1hdGlvbkF0UG9zaXRpb247CiAtIChOU0RpY3Rpb25hcnkgKilkYXRhRGV0ZWN0aW9uQ29u
dGV4dEZvckFjdGlvblNoZWV0QXNzaXN0YW50OihXS0FjdGlvblNoZWV0QXNzaXN0YW50ICopYXNz
aXN0YW50OwogLSAoTlNTdHJpbmcgKilzZWxlY3RlZFRleHRGb3JBY3Rpb25TaGVldEFzc2lzdGFu
dDooV0tBY3Rpb25TaGVldEFzc2lzdGFudCAqKWFzc2lzdGFudDsKIC0gKHZvaWQpYWN0aW9uU2hl
ZXRBc3Npc3RhbnQ6KFdLQWN0aW9uU2hlZXRBc3Npc3RhbnQgKilhc3Npc3RhbnQgZ2V0QWx0ZXJu
YXRlVVJMRm9ySW1hZ2U6KFVJSW1hZ2UgKilpbWFnZSBjb21wbGV0aW9uOih2b2lkICheKShOU1VS
TCAqYWx0ZXJuYXRlVVJMLCBOU0RpY3Rpb25hcnkgKnVzZXJJbmZvKSljb21wbGV0aW9uOworLSAo
Q0dQb2ludCljb250ZXh0TWVudVByZXNlbnRhdGlvbkxvY2F0aW9uRm9yQWN0aW9uU2hlZXRBc3Np
c3RhbnQ6KFdLQWN0aW9uU2hlZXRBc3Npc3RhbnQgKilhc3Npc3RhbnQ7CiAKIEBlbmQKIAotI2lm
IEVOQUJMRShEQVRBX0RFVEVDVElPTikKLUBpbnRlcmZhY2UgV0tBY3Rpb25TaGVldEFzc2lzdGFu
dCA6IE5TT2JqZWN0IDxXS0FjdGlvblNoZWV0RGVsZWdhdGUsIERERGV0ZWN0aW9uQ29udHJvbGxl
ckludGVyYWN0aW9uRGVsZWdhdGU+CisjaWYgRU5BQkxFKERBVEFfREVURUNUSU9OKSAmJiBVU0Uo
VUlDT05URVhUTUVOVSkKK0BpbnRlcmZhY2UgV0tBY3Rpb25TaGVldEFzc2lzdGFudCA6IE5TT2Jq
ZWN0IDxXS0FjdGlvblNoZWV0RGVsZWdhdGUsIERERGV0ZWN0aW9uQ29udHJvbGxlckludGVyYWN0
aW9uRGVsZWdhdGUsIFVJQ29udGV4dE1lbnVJbnRlcmFjdGlvbkRlbGVnYXRlPgogI2Vsc2UKIEBp
bnRlcmZhY2UgV0tBY3Rpb25TaGVldEFzc2lzdGFudCA6IE5TT2JqZWN0IDxXS0FjdGlvblNoZWV0
RGVsZWdhdGU+CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lv
cy9XS0FjdGlvblNoZWV0QXNzaXN0YW50Lm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9z
L1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQubW0KaW5kZXggYTdmYTUxN2VjYjIwMDNiN2I1YjIxZGU0
MmJlMTlmNDkwNDcwNjBkNi4uN2FmZGMwZDRiMWQyNzAzNmE4M2Q4YWM4ZDVhMzg0Yzc1NGQwMzgy
ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQWN0aW9uU2hlZXRB
c3Npc3RhbnQubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQWN0aW9uU2hl
ZXRBc3Npc3RhbnQubW0KQEAgLTk3LDYgKzk3LDcgQEAgc3RhdGljIExTQXBwTGluayAqYXBwTGlu
a0ZvclVSTChOU1VSTCAqdXJsKQogICAgIFJldGFpblB0cjxXS0FjdGlvblNoZWV0PiBfaW50ZXJh
Y3Rpb25TaGVldDsKICAgICBSZXRhaW5QdHI8X1dLQWN0aXZhdGVkRWxlbWVudEluZm8+IF9lbGVt
ZW50SW5mbzsKICAgICBPcHRpb25hbDxXZWJLaXQ6OkludGVyYWN0aW9uSW5mb3JtYXRpb25BdFBv
c2l0aW9uPiBfcG9zaXRpb25JbmZvcm1hdGlvbjsKKyAgICBSZXRhaW5QdHI8VUlDb250ZXh0TWVu
dUludGVyYWN0aW9uPiBfZGF0YURldGVjdG9yQ29udGV4dE1lbnVJbnRlcmFjdGlvbjsKICAgICBX
ZWFrT2JqQ1B0cjxVSVZpZXc+IF92aWV3OwogICAgIEJPT0wgX25lZWRzTGlua0luZGljYXRvcjsK
ICAgICBCT09MIF9pc1ByZXNlbnRpbmdERFVzZXJJbnRlcmZhY2U7CkBAIC02MzIsNiArNjMzLDI0
IEBAIEFMTE9XX0RFUFJFQ0FURURfREVDTEFSQVRJT05TX0VORAogICAgICAgICBbc2VsZiBjbGVh
bnVwU2hlZXRdOwogfQogCisjaWYgRU5BQkxFKERBVEFfREVURUNUSU9OKSAmJiBVU0UoVUlDT05U
RVhUTUVOVSkKKy0gKHZvaWQpcmVtb3ZlQ29udGV4dE1lbnVJbnRlcmFjdGlvbgoreworICAgIGlm
IChfZGF0YURldGVjdG9yQ29udGV4dE1lbnVJbnRlcmFjdGlvbikgeworICAgICAgICBbX3ZpZXcg
cmVtb3ZlSW50ZXJhY3Rpb246X2RhdGFEZXRlY3RvckNvbnRleHRNZW51SW50ZXJhY3Rpb24uZ2V0
KCldOworICAgICAgICBfZGF0YURldGVjdG9yQ29udGV4dE1lbnVJbnRlcmFjdGlvbiA9IG5pbDsK
KyAgICB9Cit9CisKKy0gKHZvaWQpZW5zdXJlQ29udGV4dE1lbnVJbnRlcmFjdGlvbgoreworICAg
IGlmICghX2RhdGFEZXRlY3RvckNvbnRleHRNZW51SW50ZXJhY3Rpb24pIHsKKyAgICAgICAgX2Rh
dGFEZXRlY3RvckNvbnRleHRNZW51SW50ZXJhY3Rpb24gPSBhZG9wdE5TKFtbVUlDb250ZXh0TWVu
dUludGVyYWN0aW9uIGFsbG9jXSBpbml0V2l0aERlbGVnYXRlOnNlbGZdKTsKKyAgICAgICAgW192
aWV3IGFkZEludGVyYWN0aW9uOl9kYXRhRGV0ZWN0b3JDb250ZXh0TWVudUludGVyYWN0aW9uLmdl
dCgpXTsKKyAgICB9Cit9CisjZW5kaWYKKwogLSAodm9pZClzaG93RGF0YURldGVjdG9yc1NoZWV0
CiB7CiAjaWYgRU5BQkxFKERBVEFfREVURUNUSU9OKQpAQCAtNjY3LDYgKzY4NiwxNSBAQCBBTExP
V19ERVBSRUNBVEVEX0RFQ0xBUkFUSU9OU19FTkQKICAgICBOU0FycmF5ICpkYXRhRGV0ZWN0b3Jz
QWN0aW9ucyA9IFtjb250cm9sbGVyIGFjdGlvbnNGb3JVUkw6dGFyZ2V0VVJMIGlkZW50aWZpZXI6
X3Bvc2l0aW9uSW5mb3JtYXRpb24tPmRhdGFEZXRlY3RvcklkZW50aWZpZXIgc2VsZWN0ZWRUZXh0
OnRleHRBdFNlbGVjdGlvbiByZXN1bHRzOl9wb3NpdGlvbkluZm9ybWF0aW9uLT5kYXRhRGV0ZWN0
b3JSZXN1bHRzLmdldCgpIGNvbnRleHQ6Y29udGV4dF07CiAgICAgaWYgKFtkYXRhRGV0ZWN0b3Jz
QWN0aW9ucyBjb3VudF0gPT0gMCkKICAgICAgICAgcmV0dXJuOworICAgIAorI2lmIEVOQUJMRShE
QVRBX0RFVEVDVElPTikgJiYgVVNFKFVJQ09OVEVYVE1FTlUpCisgICAgYXV0byBkZWxlZ2F0ZSA9
IF9kZWxlZ2F0ZS5nZXQoKTsKKyAgICBpZiAoW2RlbGVnYXRlIHJlc3BvbmRzVG9TZWxlY3RvcjpA
c2VsZWN0b3IoY29udGV4dE1lbnVQcmVzZW50YXRpb25Mb2NhdGlvbkZvckFjdGlvblNoZWV0QXNz
aXN0YW50OildKSB7CisgICAgICAgIFtzZWxmIGVuc3VyZUNvbnRleHRNZW51SW50ZXJhY3Rpb25d
OworICAgICAgICBbX2RhdGFEZXRlY3RvckNvbnRleHRNZW51SW50ZXJhY3Rpb24gX3ByZXNlbnRN
ZW51QXRMb2NhdGlvbjpbZGVsZWdhdGUgY29udGV4dE1lbnVQcmVzZW50YXRpb25Mb2NhdGlvbkZv
ckFjdGlvblNoZWV0QXNzaXN0YW50OnNlbGZdXTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyNl
bmRpZgogCiAgICAgTlNNdXRhYmxlQXJyYXkgKmVsZW1lbnRBY3Rpb25zID0gW05TTXV0YWJsZUFy
cmF5IGFycmF5XTsKICAgICBmb3IgKE5TVUludGVnZXIgYWN0aW9uTnVtYmVyID0gMDsgYWN0aW9u
TnVtYmVyIDwgW2RhdGFEZXRlY3RvcnNBY3Rpb25zIGNvdW50XTsgYWN0aW9uTnVtYmVyKyspIHsK
QEAgLTY4OCw2ICs3MTYsNTUgQEAgQUxMT1dfREVQUkVDQVRFRF9ERUNMQVJBVElPTlNfRU5ECiAj
ZW5kaWYKIH0KIAorI2lmIFVTRShVSUNPTlRFWFRNRU5VKQorLSAoVUlDb250ZXh0TWVudUNvbmZp
Z3VyYXRpb24gKiljb250ZXh0TWVudUludGVyYWN0aW9uOihVSUNvbnRleHRNZW51SW50ZXJhY3Rp
b24gKilpbnRlcmFjdGlvbiBjb25maWd1cmF0aW9uRm9yTWVudUF0TG9jYXRpb246KENHUG9pbnQp
bG9jYXRpb24KK3sKKyAgICBERERldGVjdGlvbkNvbnRyb2xsZXIgKmNvbnRyb2xsZXIgPSBbZ2V0
REREZXRlY3Rpb25Db250cm9sbGVyQ2xhc3MoKSBzaGFyZWRDb250cm9sbGVyXTsKKyAgICBOU0Rp
Y3Rpb25hcnkgKmNvbnRleHQgPSBuaWw7CisgICAgTlNTdHJpbmcgKnRleHRBdFNlbGVjdGlvbiA9
IG5pbDsKKworICAgIGlmIChbX2RlbGVnYXRlIHJlc3BvbmRzVG9TZWxlY3RvcjpAc2VsZWN0b3Io
ZGF0YURldGVjdGlvbkNvbnRleHRGb3JBY3Rpb25TaGVldEFzc2lzdGFudDopXSkKKyAgICAgICAg
Y29udGV4dCA9IFtfZGVsZWdhdGUgZGF0YURldGVjdGlvbkNvbnRleHRGb3JBY3Rpb25TaGVldEFz
c2lzdGFudDpzZWxmXTsKKyAgICBpZiAoW19kZWxlZ2F0ZSByZXNwb25kc1RvU2VsZWN0b3I6QHNl
bGVjdG9yKHNlbGVjdGVkVGV4dEZvckFjdGlvblNoZWV0QXNzaXN0YW50OildKQorICAgICAgICB0
ZXh0QXRTZWxlY3Rpb24gPSBbX2RlbGVnYXRlIHNlbGVjdGVkVGV4dEZvckFjdGlvblNoZWV0QXNz
aXN0YW50OnNlbGZdOworCisgICAgTlNEaWN0aW9uYXJ5ICpuZXdDb250ZXh0ID0gbmlsOworICAg
IEREUmVzdWx0UmVmIGRkUmVzdWx0ID0gW2NvbnRyb2xsZXIgcmVzdWx0Rm9yVVJMOl9wb3NpdGlv
bkluZm9ybWF0aW9uLT51cmwgaWRlbnRpZmllcjpfcG9zaXRpb25JbmZvcm1hdGlvbi0+ZGF0YURl
dGVjdG9ySWRlbnRpZmllciBzZWxlY3RlZFRleHQ6dGV4dEF0U2VsZWN0aW9uIHJlc3VsdHM6X3Bv
c2l0aW9uSW5mb3JtYXRpb24tPmRhdGFEZXRlY3RvclJlc3VsdHMuZ2V0KCkgY29udGV4dDpjb250
ZXh0IGV4dGVuZGVkQ29udGV4dDombmV3Q29udGV4dF07CisKKyAgICBhdXRvIGRkQ29udGV4dE1l
bnVBY3Rpb25DbGFzcyA9IGdldEREQ29udGV4dE1lbnVBY3Rpb25DbGFzcygpOworICAgIGlmIChk
ZFJlc3VsdCkKKyAgICAgICAgcmV0dXJuIFtkZENvbnRleHRNZW51QWN0aW9uQ2xhc3MgY29udGV4
dE1lbnVDb25maWd1cmF0aW9uV2l0aFJlc3VsdDpkZFJlc3VsdCBpblZpZXc6X3ZpZXcuZ2V0QXV0
b3JlbGVhc2VkKCkgY29udGV4dDpjb250ZXh0IG1lbnVJZGVudGlmaWVyOm5pbF07CisgICAgcmV0
dXJuIFtkZENvbnRleHRNZW51QWN0aW9uQ2xhc3MgY29udGV4dE1lbnVDb25maWd1cmF0aW9uV2l0
aFVSTDpfcG9zaXRpb25JbmZvcm1hdGlvbi0+dXJsIGluVmlldzpfdmlldy5nZXRBdXRvcmVsZWFz
ZWQoKSBjb250ZXh0OmNvbnRleHQgbWVudUlkZW50aWZpZXI6bmlsXTsKK30KKworLSAoVUlUYXJn
ZXRlZFByZXZpZXcgKiljb250ZXh0TWVudUludGVyYWN0aW9uOihVSUNvbnRleHRNZW51SW50ZXJh
Y3Rpb24gKilpbnRlcmFjdGlvbiBwcmV2aWV3Rm9ySGlnaGxpZ2h0aW5nTWVudVdpdGhDb25maWd1
cmF0aW9uOihVSUNvbnRleHRNZW51Q29uZmlndXJhdGlvbiAqKWNvbmZpZ3VyYXRpb24KK3sKKyAg
ICBhdXRvIGRlbGVnYXRlID0gX2RlbGVnYXRlLmdldCgpOworICAgIENHUG9pbnQgY2VudGVyID0g
Q0dQb2ludFplcm87CisgICAgaWYgKFtkZWxlZ2F0ZSByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVj
dG9yKGNvbnRleHRNZW51UHJlc2VudGF0aW9uTG9jYXRpb25Gb3JBY3Rpb25TaGVldEFzc2lzdGFu
dDopXSkKKyAgICAgICAgY2VudGVyID0gW2RlbGVnYXRlIGNvbnRleHRNZW51UHJlc2VudGF0aW9u
TG9jYXRpb25Gb3JBY3Rpb25TaGVldEFzc2lzdGFudDpzZWxmXTsKKyAgICBSZXRhaW5QdHI8VUlQ
cmV2aWV3UGFyYW1ldGVycz4gdW51c2VkUHJldmlld1BhcmFtZXRlcnMgPSBhZG9wdE5TKFtbVUlQ
cmV2aWV3UGFyYW1ldGVycyBhbGxvY10gaW5pdF0pOworICAgIFJldGFpblB0cjxVSVByZXZpZXdU
YXJnZXQ+IHByZXZpZXdUYXJnZXQgPSBhZG9wdE5TKFtbVUlQcmV2aWV3VGFyZ2V0IGFsbG9jXSBp
bml0V2l0aENvbnRhaW5lcjpfdmlldy5nZXRBdXRvcmVsZWFzZWQoKSBjZW50ZXI6Y2VudGVyXSk7
CisgICAgUmV0YWluUHRyPFVJVGFyZ2V0ZWRQcmV2aWV3PiBwcmV2aWV3ID0gYWRvcHROUyhbW1VJ
VGFyZ2V0ZWRQcmV2aWV3IGFsbG9jXSBpbml0V2l0aFZpZXc6X3ZpZXcuZ2V0QXV0b3JlbGVhc2Vk
KCkgcGFyYW1ldGVyczp1bnVzZWRQcmV2aWV3UGFyYW1ldGVycy5nZXQoKSB0YXJnZXQ6cHJldmll
d1RhcmdldC5nZXQoKV0pOworCisgICAgcmV0dXJuIHByZXZpZXcuYXV0b3JlbGVhc2UoKTsKK30K
KworLSAoX1VJQ29udGV4dE1lbnVTdHlsZSAqKV9jb250ZXh0TWVudUludGVyYWN0aW9uOihVSUNv
bnRleHRNZW51SW50ZXJhY3Rpb24gKilpbnRlcmFjdGlvbiBzdHlsZUZvck1lbnVXaXRoQ29uZmln
dXJhdGlvbjooVUlDb250ZXh0TWVudUNvbmZpZ3VyYXRpb24gKiljb25maWd1cmF0aW9uCit7Cisg
ICAgX1VJQ29udGV4dE1lbnVTdHlsZSAqc3R5bGUgPSBbX1VJQ29udGV4dE1lbnVTdHlsZSBkZWZh
dWx0U3R5bGVdOworICAgIHN0eWxlLnByZWZlcnJlZExheW91dCA9IF9VSUNvbnRleHRNZW51TGF5
b3V0Q29tcGFjdE1lbnU7CisgICAgcmV0dXJuIHN0eWxlOworfQorCistICh2b2lkKWNvbnRleHRN
ZW51SW50ZXJhY3Rpb246KFVJQ29udGV4dE1lbnVJbnRlcmFjdGlvbiAqKWludGVyYWN0aW9uIHdp
bGxFbmRGb3JDb25maWd1cmF0aW9uOihVSUNvbnRleHRNZW51Q29uZmlndXJhdGlvbiAqKWNvbmZp
Z3VyYXRpb24gYW5pbWF0b3I6KGlkPFVJQ29udGV4dE1lbnVJbnRlcmFjdGlvbkFuaW1hdGluZz4p
YW5pbWF0b3IKK3sKKyAgICBbYW5pbWF0b3IgYWRkQ29tcGxldGlvbjpeeworICAgICAgICBbc2Vs
ZiByZW1vdmVDb250ZXh0TWVudUludGVyYWN0aW9uXTsKKyAgICB9XTsKK30KKyNlbmRpZgorCiAt
ICh2b2lkKWNsZWFudXBTaGVldAogewogICAgIGF1dG8gZGVsZWdhdGUgPSBfZGVsZWdhdGUuZ2V0
KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmll
d0ludGVyYWN0aW9uLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZp
ZXdJbnRlcmFjdGlvbi5tbQppbmRleCA5NjhjNWE2Y2M0MTc3OTQ5Mzk3YWE2ZWM0ZGU5NzI0Njk3
YzMzZTI5Li5mNDUzYzJlZDgxZGI3NDgxMGM2ZDVlYmZlNTAxNTdlODVkZjNjMGFjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9u
Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJh
Y3Rpb24ubW0KQEAgLTY4MTQsNiArNjgxNCwxMSBAQCBzdGF0aWMgQk9PTCBhbGxQYXN0ZWJvYXJk
SXRlbU9yaWdpbnNNYXRjaE9yaWdpbihVSVBhc3RlYm9hcmQgKnBhc3RlYm9hcmQsIGNvbnN0CiAg
ICAgICAgIGNvbXBsZXRpb24obmlsLCBuaWwpOwogfQogCistIChDR1BvaW50KWNvbnRleHRNZW51
UHJlc2VudGF0aW9uTG9jYXRpb25Gb3JBY3Rpb25TaGVldEFzc2lzdGFudDooV0tBY3Rpb25TaGVl
dEFzc2lzdGFudCAqKWFzc2lzdGFudAoreworICAgIHJldHVybiBbc2VsZiBsYXN0SW50ZXJhY3Rp
b25Mb2NhdGlvbl07Cit9CisKIC0gKEJPT0wpX3Nob3VsZFVzZUNvbnRleHRNZW51cwogewogI2lm
IEhBVkUoTElOS19QUkVWSUVXKSAmJiBVU0UoVUlDT05URVhUTUVOVSkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>392939</attachid>
            <date>2020-03-07 22:56:28 -0800</date>
            <delta_ts>2020-03-07 23:02:48 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208779-20200307225628.patch</filename>
            <type>text/plain</type>
            <size>10594</size>
            <attacher name="Megan Gardner">megan_gardner</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4MTAxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDJmOTBmZTQ0NDAxMjcwODY3
ODQ3ZDgxMmFhNTRlNDUxMTBhYzdhMmYuLmFkODUyMzJmMjkyNWNhNTI0ZmFmZjRlZGI3ZGUzZmNl
MDljZjBiODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMjAtMDMtMDcgIE1lZ2FuIEdh
cmRuZXIgIDxtZWdhbl9nYXJkbmVyQGFwcGxlLmNvbT4KKworICAgICAgICBBZG9wdCBDb250ZXh0
IE1lbnVzIGZvciBEYXRhIERldGVjdG9ycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjA4Nzc5CisKKyAgICAgICAgU3dpdGNoIHRvIGNvbnRleHQgbWVu
dXMgZm9yIGRhdGEgZGV0ZWN0b3IgYWN0aW9uIHNoZWV0cy4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVl
dEFzc2lzdGFudC5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFzc2lz
dGFudC5tbToKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVldEFzc2lzdGFudCByZW1vdmVDb250ZXh0
TWVudUludGVyYWN0aW9uXSk6CisgICAgICAgICgtW1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQgZW5z
dXJlQ29udGV4dE1lbnVJbnRlcmFjdGlvbl0pOgorICAgICAgICAoLVtXS0FjdGlvblNoZWV0QXNz
aXN0YW50IHNob3dEYXRhRGV0ZWN0b3JzU2hlZXRdKToKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVl
dEFzc2lzdGFudCBjb250ZXh0TWVudUludGVyYWN0aW9uOmNvbmZpZ3VyYXRpb25Gb3JNZW51QXRM
b2NhdGlvbjpdKToKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVldEFzc2lzdGFudCBjb250ZXh0TWVu
dUludGVyYWN0aW9uOnByZXZpZXdGb3JIaWdobGlnaHRpbmdNZW51V2l0aENvbmZpZ3VyYXRpb246
XSk6CisgICAgICAgICgtW1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQgX2NvbnRleHRNZW51SW50ZXJh
Y3Rpb246c3R5bGVGb3JNZW51V2l0aENvbmZpZ3VyYXRpb246XSk6CisgICAgICAgICgtW1dLQWN0
aW9uU2hlZXRBc3Npc3RhbnQgY29udGV4dE1lbnVJbnRlcmFjdGlvbjp3aWxsRW5kRm9yQ29uZmln
dXJhdGlvbjphbmltYXRvcjpdKToKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLQ29udGVudFZp
ZXdJbnRlcmFjdGlvbi5tbToKKyAgICAgICAgKC1bV0tDb250ZW50VmlldyBjb250ZXh0TWVudURp
c3BsYXlMb2NhdGlvbkZvckFjdGlvblNoZWV0QXNzaXN0YW50Ol0pOgorCiAyMDIwLTAzLTA3ICBC
cmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgogCiAgICAgICAgIENyZWF0ZSBhIGZs
YWcgdG8gZGlzYWJsZSBpbi1hcHAgYnJvd3NlciBxdWlya3MKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL1BBTC9wYWwvc3BpL2lvcy9EYXRhRGV0ZWN0b3JzVUlTUEkuaCBiL1NvdXJjZS9XZWJD
b3JlL1BBTC9wYWwvc3BpL2lvcy9EYXRhRGV0ZWN0b3JzVUlTUEkuaAppbmRleCA5MzhlYzVlODIz
M2QxMzNjNDliZWQ1Mjg1Y2JhYzg5Y2RlY2ZmNmRhLi43MDMwZjAxMjlhYjE5MTM3YjVjZGQxZjA4
YWQyODNlODI5OTA2NjdmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9p
b3MvRGF0YURldGVjdG9yc1VJU1BJLmgKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkv
aW9zL0RhdGFEZXRlY3RvcnNVSVNQSS5oCkBAIC01MSw5ICs1MSwxMiBAQAogCiAjaWYgSEFWRShM
SU5LX1BSRVZJRVcpICYmIFVTRShVSUNPTlRFWFRNRU5VKQogQGNsYXNzIFVJQ29udGV4dE1lbnVD
b25maWd1cmF0aW9uOworQGNsYXNzIEREQ29udGV4dE1lbnVDb25maWd1cmF0aW9uOwogQGludGVy
ZmFjZSBERENvbnRleHRNZW51QWN0aW9uCiArIChVSUNvbnRleHRNZW51Q29uZmlndXJhdGlvbiAq
KWNvbnRleHRNZW51Q29uZmlndXJhdGlvbldpdGhVUkw6KE5TVVJMICopVVJMIGluVmlldzooVUlW
aWV3ICopdmlldyBjb250ZXh0OihOU0RpY3Rpb25hcnkgKiljb250ZXh0IG1lbnVJZGVudGlmaWVy
OihOU1N0cmluZyAqKW1lbnVJZGVudGlmaWVyOwogKyAoVUlDb250ZXh0TWVudUNvbmZpZ3VyYXRp
b24gKiljb250ZXh0TWVudUNvbmZpZ3VyYXRpb25Gb3JVUkw6KE5TVVJMICopVVJMIGlkZW50aWZp
ZXI6KE5TU3RyaW5nICopaWRlbnRpZmllciBzZWxlY3RlZFRleHQ6KE5TU3RyaW5nICopc2VsZWN0
ZWRUZXh0IHJlc3VsdHM6KE5TQXJyYXkgKikgcmVzdWx0cyBpblZpZXc6IChVSVZpZXcgKikgdmll
dyBjb250ZXh0OihOU0RpY3Rpb25hcnkgKiljb250ZXh0IG1lbnVJZGVudGlmaWVyOihOU1N0cmlu
ZyAqKW1lbnVJZGVudGlmaWVyOworKyAoRERDb250ZXh0TWVudUNvbmZpZ3VyYXRpb24gKiljb250
ZXh0TWVudUNvbmZpZ3VyYXRpb25XaXRoUmVzdWx0OihERFJlc3VsdFJlZilyZXN1bHQgaW5WaWV3
OihVSVZpZXcgKil2aWV3IGNvbnRleHQ6KE5TRGljdGlvbmFyeSAqKWNvbnRleHQgbWVudUlkZW50
aWZpZXI6KE5TU3RyaW5nICopbWVudUlkZW50aWZpZXI7CisrIChERENvbnRleHRNZW51Q29uZmln
dXJhdGlvbiAqKWNvbnRleHRNZW51Q29uZmlndXJhdGlvbldpdGhVUkw6KE5TVVJMICopVVJMIGlu
VmlldzooVUlWaWV3ICopdmlldyBjb250ZXh0OihOU0RpY3Rpb25hcnkgKiljb250ZXh0IG1lbnVJ
ZGVudGlmaWVyOihOU1N0cmluZyAqKW1lbnVJZGVudGlmaWVyOwogQGVuZAogI2VuZGlmCiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0QXNzaXN0
YW50LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFzc2lzdGFu
dC5oCmluZGV4IGIwNGRkMTA1YTk0NzY4ZGQ5MGFiOWY2ZGI0ODNhZGFjNjM0ZDk0ZTcuLjFkMzA5
NDYzMGM4YTQ0ZTAwOWFlODcxMDk3NjRlZGRmOGQ1ZDk2NmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0QXNzaXN0YW50LmgKKysrIGIvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQuaApAQCAtNDAsNiAr
NDAsNyBAQCBzdHJ1Y3QgSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb247CiBAY2xhc3Mg
X1dLQWN0aXZhdGVkRWxlbWVudEluZm87CiBAY2xhc3MgX1dLRWxlbWVudEFjdGlvbjsKIEBwcm90
b2NvbCBXS0FjdGlvblNoZWV0RGVsZWdhdGU7CitAcHJvdG9jb2wgVUlDb250ZXh0TWVudUludGVy
YWN0aW9uRGVsZWdhdGU7CiAKIEBwcm90b2NvbCBXS0FjdGlvblNoZWV0QXNzaXN0YW50RGVsZWdh
dGUgPE5TT2JqZWN0PgogQHJlcXVpcmVkCkBAIC02MSwxMSArNjIsMTIgQEAgc3RydWN0IEludGVy
YWN0aW9uSW5mb3JtYXRpb25BdFBvc2l0aW9uOwogLSAoTlNEaWN0aW9uYXJ5ICopZGF0YURldGVj
dGlvbkNvbnRleHRGb3JBY3Rpb25TaGVldEFzc2lzdGFudDooV0tBY3Rpb25TaGVldEFzc2lzdGFu
dCAqKWFzc2lzdGFudDsKIC0gKE5TU3RyaW5nICopc2VsZWN0ZWRUZXh0Rm9yQWN0aW9uU2hlZXRB
c3Npc3RhbnQ6KFdLQWN0aW9uU2hlZXRBc3Npc3RhbnQgKilhc3Npc3RhbnQ7CiAtICh2b2lkKWFj
dGlvblNoZWV0QXNzaXN0YW50OihXS0FjdGlvblNoZWV0QXNzaXN0YW50ICopYXNzaXN0YW50IGdl
dEFsdGVybmF0ZVVSTEZvckltYWdlOihVSUltYWdlICopaW1hZ2UgY29tcGxldGlvbjoodm9pZCAo
XikoTlNVUkwgKmFsdGVybmF0ZVVSTCwgTlNEaWN0aW9uYXJ5ICp1c2VySW5mbykpY29tcGxldGlv
bjsKKy0gKENHUG9pbnQpY29udGV4dE1lbnVQcmVzZW50YXRpb25Mb2NhdGlvbkZvckFjdGlvblNo
ZWV0QXNzaXN0YW50OihXS0FjdGlvblNoZWV0QXNzaXN0YW50ICopYXNzaXN0YW50OwogCiBAZW5k
CiAKLSNpZiBFTkFCTEUoREFUQV9ERVRFQ1RJT04pCi1AaW50ZXJmYWNlIFdLQWN0aW9uU2hlZXRB
c3Npc3RhbnQgOiBOU09iamVjdCA8V0tBY3Rpb25TaGVldERlbGVnYXRlLCBERERldGVjdGlvbkNv
bnRyb2xsZXJJbnRlcmFjdGlvbkRlbGVnYXRlPgorI2lmIEVOQUJMRShEQVRBX0RFVEVDVElPTikg
JiYgVVNFKFVJQ09OVEVYVE1FTlUpCitAaW50ZXJmYWNlIFdLQWN0aW9uU2hlZXRBc3Npc3RhbnQg
OiBOU09iamVjdCA8V0tBY3Rpb25TaGVldERlbGVnYXRlLCBERERldGVjdGlvbkNvbnRyb2xsZXJJ
bnRlcmFjdGlvbkRlbGVnYXRlLCBVSUNvbnRleHRNZW51SW50ZXJhY3Rpb25EZWxlZ2F0ZT4KICNl
bHNlCiBAaW50ZXJmYWNlIFdLQWN0aW9uU2hlZXRBc3Npc3RhbnQgOiBOU09iamVjdCA8V0tBY3Rp
b25TaGVldERlbGVnYXRlPgogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFzc2lzdGFudC5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL2lvcy9XS0FjdGlvblNoZWV0QXNzaXN0YW50Lm1tCmluZGV4IGE3ZmE1MTdlY2IyMDAzYjdi
NWIyMWRlNDJiZTE5ZjQ5MDQ3MDYwZDYuLjdhZmRjMGQ0YjFkMjcwMzZhODNkOGFjOGQ1YTM4NGM3
NTRkMDM4MmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0FjdGlv
blNoZWV0QXNzaXN0YW50Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0Fj
dGlvblNoZWV0QXNzaXN0YW50Lm1tCkBAIC05Nyw2ICs5Nyw3IEBAIHN0YXRpYyBMU0FwcExpbmsg
KmFwcExpbmtGb3JVUkwoTlNVUkwgKnVybCkKICAgICBSZXRhaW5QdHI8V0tBY3Rpb25TaGVldD4g
X2ludGVyYWN0aW9uU2hlZXQ7CiAgICAgUmV0YWluUHRyPF9XS0FjdGl2YXRlZEVsZW1lbnRJbmZv
PiBfZWxlbWVudEluZm87CiAgICAgT3B0aW9uYWw8V2ViS2l0OjpJbnRlcmFjdGlvbkluZm9ybWF0
aW9uQXRQb3NpdGlvbj4gX3Bvc2l0aW9uSW5mb3JtYXRpb247CisgICAgUmV0YWluUHRyPFVJQ29u
dGV4dE1lbnVJbnRlcmFjdGlvbj4gX2RhdGFEZXRlY3RvckNvbnRleHRNZW51SW50ZXJhY3Rpb247
CiAgICAgV2Vha09iakNQdHI8VUlWaWV3PiBfdmlldzsKICAgICBCT09MIF9uZWVkc0xpbmtJbmRp
Y2F0b3I7CiAgICAgQk9PTCBfaXNQcmVzZW50aW5nRERVc2VySW50ZXJmYWNlOwpAQCAtNjMyLDYg
KzYzMywyNCBAQCBBTExPV19ERVBSRUNBVEVEX0RFQ0xBUkFUSU9OU19FTkQKICAgICAgICAgW3Nl
bGYgY2xlYW51cFNoZWV0XTsKIH0KIAorI2lmIEVOQUJMRShEQVRBX0RFVEVDVElPTikgJiYgVVNF
KFVJQ09OVEVYVE1FTlUpCistICh2b2lkKXJlbW92ZUNvbnRleHRNZW51SW50ZXJhY3Rpb24KK3sK
KyAgICBpZiAoX2RhdGFEZXRlY3RvckNvbnRleHRNZW51SW50ZXJhY3Rpb24pIHsKKyAgICAgICAg
W192aWV3IHJlbW92ZUludGVyYWN0aW9uOl9kYXRhRGV0ZWN0b3JDb250ZXh0TWVudUludGVyYWN0
aW9uLmdldCgpXTsKKyAgICAgICAgX2RhdGFEZXRlY3RvckNvbnRleHRNZW51SW50ZXJhY3Rpb24g
PSBuaWw7CisgICAgfQorfQorCistICh2b2lkKWVuc3VyZUNvbnRleHRNZW51SW50ZXJhY3Rpb24K
K3sKKyAgICBpZiAoIV9kYXRhRGV0ZWN0b3JDb250ZXh0TWVudUludGVyYWN0aW9uKSB7CisgICAg
ICAgIF9kYXRhRGV0ZWN0b3JDb250ZXh0TWVudUludGVyYWN0aW9uID0gYWRvcHROUyhbW1VJQ29u
dGV4dE1lbnVJbnRlcmFjdGlvbiBhbGxvY10gaW5pdFdpdGhEZWxlZ2F0ZTpzZWxmXSk7CisgICAg
ICAgIFtfdmlldyBhZGRJbnRlcmFjdGlvbjpfZGF0YURldGVjdG9yQ29udGV4dE1lbnVJbnRlcmFj
dGlvbi5nZXQoKV07CisgICAgfQorfQorI2VuZGlmCisKIC0gKHZvaWQpc2hvd0RhdGFEZXRlY3Rv
cnNTaGVldAogewogI2lmIEVOQUJMRShEQVRBX0RFVEVDVElPTikKQEAgLTY2Nyw2ICs2ODYsMTUg
QEAgQUxMT1dfREVQUkVDQVRFRF9ERUNMQVJBVElPTlNfRU5ECiAgICAgTlNBcnJheSAqZGF0YURl
dGVjdG9yc0FjdGlvbnMgPSBbY29udHJvbGxlciBhY3Rpb25zRm9yVVJMOnRhcmdldFVSTCBpZGVu
dGlmaWVyOl9wb3NpdGlvbkluZm9ybWF0aW9uLT5kYXRhRGV0ZWN0b3JJZGVudGlmaWVyIHNlbGVj
dGVkVGV4dDp0ZXh0QXRTZWxlY3Rpb24gcmVzdWx0czpfcG9zaXRpb25JbmZvcm1hdGlvbi0+ZGF0
YURldGVjdG9yUmVzdWx0cy5nZXQoKSBjb250ZXh0OmNvbnRleHRdOwogICAgIGlmIChbZGF0YURl
dGVjdG9yc0FjdGlvbnMgY291bnRdID09IDApCiAgICAgICAgIHJldHVybjsKKyAgICAKKyNpZiBF
TkFCTEUoREFUQV9ERVRFQ1RJT04pICYmIFVTRShVSUNPTlRFWFRNRU5VKQorICAgIGF1dG8gZGVs
ZWdhdGUgPSBfZGVsZWdhdGUuZ2V0KCk7CisgICAgaWYgKFtkZWxlZ2F0ZSByZXNwb25kc1RvU2Vs
ZWN0b3I6QHNlbGVjdG9yKGNvbnRleHRNZW51UHJlc2VudGF0aW9uTG9jYXRpb25Gb3JBY3Rpb25T
aGVldEFzc2lzdGFudDopXSkgeworICAgICAgICBbc2VsZiBlbnN1cmVDb250ZXh0TWVudUludGVy
YWN0aW9uXTsKKyAgICAgICAgW19kYXRhRGV0ZWN0b3JDb250ZXh0TWVudUludGVyYWN0aW9uIF9w
cmVzZW50TWVudUF0TG9jYXRpb246W2RlbGVnYXRlIGNvbnRleHRNZW51UHJlc2VudGF0aW9uTG9j
YXRpb25Gb3JBY3Rpb25TaGVldEFzc2lzdGFudDpzZWxmXV07CisgICAgICAgIHJldHVybjsKKyAg
ICB9CisjZW5kaWYKIAogICAgIE5TTXV0YWJsZUFycmF5ICplbGVtZW50QWN0aW9ucyA9IFtOU011
dGFibGVBcnJheSBhcnJheV07CiAgICAgZm9yIChOU1VJbnRlZ2VyIGFjdGlvbk51bWJlciA9IDA7
IGFjdGlvbk51bWJlciA8IFtkYXRhRGV0ZWN0b3JzQWN0aW9ucyBjb3VudF07IGFjdGlvbk51bWJl
cisrKSB7CkBAIC02ODgsNiArNzE2LDU1IEBAIEFMTE9XX0RFUFJFQ0FURURfREVDTEFSQVRJT05T
X0VORAogI2VuZGlmCiB9CiAKKyNpZiBVU0UoVUlDT05URVhUTUVOVSkKKy0gKFVJQ29udGV4dE1l
bnVDb25maWd1cmF0aW9uICopY29udGV4dE1lbnVJbnRlcmFjdGlvbjooVUlDb250ZXh0TWVudUlu
dGVyYWN0aW9uICopaW50ZXJhY3Rpb24gY29uZmlndXJhdGlvbkZvck1lbnVBdExvY2F0aW9uOihD
R1BvaW50KWxvY2F0aW9uCit7CisgICAgREREZXRlY3Rpb25Db250cm9sbGVyICpjb250cm9sbGVy
ID0gW2dldERERGV0ZWN0aW9uQ29udHJvbGxlckNsYXNzKCkgc2hhcmVkQ29udHJvbGxlcl07Cisg
ICAgTlNEaWN0aW9uYXJ5ICpjb250ZXh0ID0gbmlsOworICAgIE5TU3RyaW5nICp0ZXh0QXRTZWxl
Y3Rpb24gPSBuaWw7CisKKyAgICBpZiAoW19kZWxlZ2F0ZSByZXNwb25kc1RvU2VsZWN0b3I6QHNl
bGVjdG9yKGRhdGFEZXRlY3Rpb25Db250ZXh0Rm9yQWN0aW9uU2hlZXRBc3Npc3RhbnQ6KV0pCisg
ICAgICAgIGNvbnRleHQgPSBbX2RlbGVnYXRlIGRhdGFEZXRlY3Rpb25Db250ZXh0Rm9yQWN0aW9u
U2hlZXRBc3Npc3RhbnQ6c2VsZl07CisgICAgaWYgKFtfZGVsZWdhdGUgcmVzcG9uZHNUb1NlbGVj
dG9yOkBzZWxlY3RvcihzZWxlY3RlZFRleHRGb3JBY3Rpb25TaGVldEFzc2lzdGFudDopXSkKKyAg
ICAgICAgdGV4dEF0U2VsZWN0aW9uID0gW19kZWxlZ2F0ZSBzZWxlY3RlZFRleHRGb3JBY3Rpb25T
aGVldEFzc2lzdGFudDpzZWxmXTsKKworICAgIE5TRGljdGlvbmFyeSAqbmV3Q29udGV4dCA9IG5p
bDsKKyAgICBERFJlc3VsdFJlZiBkZFJlc3VsdCA9IFtjb250cm9sbGVyIHJlc3VsdEZvclVSTDpf
cG9zaXRpb25JbmZvcm1hdGlvbi0+dXJsIGlkZW50aWZpZXI6X3Bvc2l0aW9uSW5mb3JtYXRpb24t
PmRhdGFEZXRlY3RvcklkZW50aWZpZXIgc2VsZWN0ZWRUZXh0OnRleHRBdFNlbGVjdGlvbiByZXN1
bHRzOl9wb3NpdGlvbkluZm9ybWF0aW9uLT5kYXRhRGV0ZWN0b3JSZXN1bHRzLmdldCgpIGNvbnRl
eHQ6Y29udGV4dCBleHRlbmRlZENvbnRleHQ6Jm5ld0NvbnRleHRdOworCisgICAgYXV0byBkZENv
bnRleHRNZW51QWN0aW9uQ2xhc3MgPSBnZXRERENvbnRleHRNZW51QWN0aW9uQ2xhc3MoKTsKKyAg
ICBpZiAoZGRSZXN1bHQpCisgICAgICAgIHJldHVybiBbZGRDb250ZXh0TWVudUFjdGlvbkNsYXNz
IGNvbnRleHRNZW51Q29uZmlndXJhdGlvbldpdGhSZXN1bHQ6ZGRSZXN1bHQgaW5WaWV3Ol92aWV3
LmdldEF1dG9yZWxlYXNlZCgpIGNvbnRleHQ6Y29udGV4dCBtZW51SWRlbnRpZmllcjpuaWxdOwor
ICAgIHJldHVybiBbZGRDb250ZXh0TWVudUFjdGlvbkNsYXNzIGNvbnRleHRNZW51Q29uZmlndXJh
dGlvbldpdGhVUkw6X3Bvc2l0aW9uSW5mb3JtYXRpb24tPnVybCBpblZpZXc6X3ZpZXcuZ2V0QXV0
b3JlbGVhc2VkKCkgY29udGV4dDpjb250ZXh0IG1lbnVJZGVudGlmaWVyOm5pbF07Cit9CisKKy0g
KFVJVGFyZ2V0ZWRQcmV2aWV3ICopY29udGV4dE1lbnVJbnRlcmFjdGlvbjooVUlDb250ZXh0TWVu
dUludGVyYWN0aW9uICopaW50ZXJhY3Rpb24gcHJldmlld0ZvckhpZ2hsaWdodGluZ01lbnVXaXRo
Q29uZmlndXJhdGlvbjooVUlDb250ZXh0TWVudUNvbmZpZ3VyYXRpb24gKiljb25maWd1cmF0aW9u
Cit7CisgICAgYXV0byBkZWxlZ2F0ZSA9IF9kZWxlZ2F0ZS5nZXQoKTsKKyAgICBDR1BvaW50IGNl
bnRlciA9IENHUG9pbnRaZXJvOworICAgIGlmIChbZGVsZWdhdGUgcmVzcG9uZHNUb1NlbGVjdG9y
OkBzZWxlY3Rvcihjb250ZXh0TWVudVByZXNlbnRhdGlvbkxvY2F0aW9uRm9yQWN0aW9uU2hlZXRB
c3Npc3RhbnQ6KV0pCisgICAgICAgIGNlbnRlciA9IFtkZWxlZ2F0ZSBjb250ZXh0TWVudVByZXNl
bnRhdGlvbkxvY2F0aW9uRm9yQWN0aW9uU2hlZXRBc3Npc3RhbnQ6c2VsZl07CisgICAgUmV0YWlu
UHRyPFVJUHJldmlld1BhcmFtZXRlcnM+IHVudXNlZFByZXZpZXdQYXJhbWV0ZXJzID0gYWRvcHRO
UyhbW1VJUHJldmlld1BhcmFtZXRlcnMgYWxsb2NdIGluaXRdKTsKKyAgICBSZXRhaW5QdHI8VUlQ
cmV2aWV3VGFyZ2V0PiBwcmV2aWV3VGFyZ2V0ID0gYWRvcHROUyhbW1VJUHJldmlld1RhcmdldCBh
bGxvY10gaW5pdFdpdGhDb250YWluZXI6X3ZpZXcuZ2V0QXV0b3JlbGVhc2VkKCkgY2VudGVyOmNl
bnRlcl0pOworICAgIFJldGFpblB0cjxVSVRhcmdldGVkUHJldmlldz4gcHJldmlldyA9IGFkb3B0
TlMoW1tVSVRhcmdldGVkUHJldmlldyBhbGxvY10gaW5pdFdpdGhWaWV3Ol92aWV3LmdldEF1dG9y
ZWxlYXNlZCgpIHBhcmFtZXRlcnM6dW51c2VkUHJldmlld1BhcmFtZXRlcnMuZ2V0KCkgdGFyZ2V0
OnByZXZpZXdUYXJnZXQuZ2V0KCldKTsKKworICAgIHJldHVybiBwcmV2aWV3LmF1dG9yZWxlYXNl
KCk7Cit9CisKKy0gKF9VSUNvbnRleHRNZW51U3R5bGUgKilfY29udGV4dE1lbnVJbnRlcmFjdGlv
bjooVUlDb250ZXh0TWVudUludGVyYWN0aW9uICopaW50ZXJhY3Rpb24gc3R5bGVGb3JNZW51V2l0
aENvbmZpZ3VyYXRpb246KFVJQ29udGV4dE1lbnVDb25maWd1cmF0aW9uICopY29uZmlndXJhdGlv
bgoreworICAgIF9VSUNvbnRleHRNZW51U3R5bGUgKnN0eWxlID0gW19VSUNvbnRleHRNZW51U3R5
bGUgZGVmYXVsdFN0eWxlXTsKKyAgICBzdHlsZS5wcmVmZXJyZWRMYXlvdXQgPSBfVUlDb250ZXh0
TWVudUxheW91dENvbXBhY3RNZW51OworICAgIHJldHVybiBzdHlsZTsKK30KKworLSAodm9pZClj
b250ZXh0TWVudUludGVyYWN0aW9uOihVSUNvbnRleHRNZW51SW50ZXJhY3Rpb24gKilpbnRlcmFj
dGlvbiB3aWxsRW5kRm9yQ29uZmlndXJhdGlvbjooVUlDb250ZXh0TWVudUNvbmZpZ3VyYXRpb24g
Kiljb25maWd1cmF0aW9uIGFuaW1hdG9yOihpZDxVSUNvbnRleHRNZW51SW50ZXJhY3Rpb25Bbmlt
YXRpbmc+KWFuaW1hdG9yCit7CisgICAgW2FuaW1hdG9yIGFkZENvbXBsZXRpb246XnsKKyAgICAg
ICAgW3NlbGYgcmVtb3ZlQ29udGV4dE1lbnVJbnRlcmFjdGlvbl07CisgICAgfV07Cit9CisjZW5k
aWYKKwogLSAodm9pZCljbGVhbnVwU2hlZXQKIHsKICAgICBhdXRvIGRlbGVnYXRlID0gX2RlbGVn
YXRlLmdldCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29u
dGVudFZpZXdJbnRlcmFjdGlvbi5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0Nv
bnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0KaW5kZXggOTY4YzVhNmNjNDE3Nzk0OTM5N2FhNmVjNGRl
OTcyNDY5N2MzM2UyOS4uZjQ1M2MyZWQ4MWRiNzQ4MTBjNmQ1ZWJmZTUwMTU3ZTg1ZGYzYzBhYyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRl
cmFjdGlvbi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmll
d0ludGVyYWN0aW9uLm1tCkBAIC02ODE0LDYgKzY4MTQsMTEgQEAgc3RhdGljIEJPT0wgYWxsUGFz
dGVib2FyZEl0ZW1PcmlnaW5zTWF0Y2hPcmlnaW4oVUlQYXN0ZWJvYXJkICpwYXN0ZWJvYXJkLCBj
b25zdAogICAgICAgICBjb21wbGV0aW9uKG5pbCwgbmlsKTsKIH0KIAorLSAoQ0dQb2ludCljb250
ZXh0TWVudVByZXNlbnRhdGlvbkxvY2F0aW9uRm9yQWN0aW9uU2hlZXRBc3Npc3RhbnQ6KFdLQWN0
aW9uU2hlZXRBc3Npc3RhbnQgKilhc3Npc3RhbnQKK3sKKyAgICByZXR1cm4gW3NlbGYgbGFzdElu
dGVyYWN0aW9uTG9jYXRpb25dOworfQorCiAtIChCT09MKV9zaG91bGRVc2VDb250ZXh0TWVudXMK
IHsKICNpZiBIQVZFKExJTktfUFJFVklFVykgJiYgVVNFKFVJQ09OVEVYVE1FTlUpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>392940</attachid>
            <date>2020-03-07 23:02:29 -0800</date>
            <delta_ts>2020-03-07 23:16:15 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208779-20200307230228.patch</filename>
            <type>text/plain</type>
            <size>10594</size>
            <attacher name="Megan Gardner">megan_gardner</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4MTAxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDJmOTBmZTQ0NDAxMjcwODY3
ODQ3ZDgxMmFhNTRlNDUxMTBhYzdhMmYuLmFkODUyMzJmMjkyNWNhNTI0ZmFmZjRlZGI3ZGUzZmNl
MDljZjBiODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMjAtMDMtMDcgIE1lZ2FuIEdh
cmRuZXIgIDxtZWdhbl9nYXJkbmVyQGFwcGxlLmNvbT4KKworICAgICAgICBBZG9wdCBDb250ZXh0
IE1lbnVzIGZvciBEYXRhIERldGVjdG9ycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjA4Nzc5CisKKyAgICAgICAgU3dpdGNoIHRvIGNvbnRleHQgbWVu
dXMgZm9yIGRhdGEgZGV0ZWN0b3IgYWN0aW9uIHNoZWV0cy4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVl
dEFzc2lzdGFudC5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFzc2lz
dGFudC5tbToKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVldEFzc2lzdGFudCByZW1vdmVDb250ZXh0
TWVudUludGVyYWN0aW9uXSk6CisgICAgICAgICgtW1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQgZW5z
dXJlQ29udGV4dE1lbnVJbnRlcmFjdGlvbl0pOgorICAgICAgICAoLVtXS0FjdGlvblNoZWV0QXNz
aXN0YW50IHNob3dEYXRhRGV0ZWN0b3JzU2hlZXRdKToKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVl
dEFzc2lzdGFudCBjb250ZXh0TWVudUludGVyYWN0aW9uOmNvbmZpZ3VyYXRpb25Gb3JNZW51QXRM
b2NhdGlvbjpdKToKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVldEFzc2lzdGFudCBjb250ZXh0TWVu
dUludGVyYWN0aW9uOnByZXZpZXdGb3JIaWdobGlnaHRpbmdNZW51V2l0aENvbmZpZ3VyYXRpb246
XSk6CisgICAgICAgICgtW1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQgX2NvbnRleHRNZW51SW50ZXJh
Y3Rpb246c3R5bGVGb3JNZW51V2l0aENvbmZpZ3VyYXRpb246XSk6CisgICAgICAgICgtW1dLQWN0
aW9uU2hlZXRBc3Npc3RhbnQgY29udGV4dE1lbnVJbnRlcmFjdGlvbjp3aWxsRW5kRm9yQ29uZmln
dXJhdGlvbjphbmltYXRvcjpdKToKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLQ29udGVudFZp
ZXdJbnRlcmFjdGlvbi5tbToKKyAgICAgICAgKC1bV0tDb250ZW50VmlldyBjb250ZXh0TWVudURp
c3BsYXlMb2NhdGlvbkZvckFjdGlvblNoZWV0QXNzaXN0YW50Ol0pOgorCiAyMDIwLTAzLTA3ICBC
cmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgogCiAgICAgICAgIENyZWF0ZSBhIGZs
YWcgdG8gZGlzYWJsZSBpbi1hcHAgYnJvd3NlciBxdWlya3MKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL1BBTC9wYWwvc3BpL2lvcy9EYXRhRGV0ZWN0b3JzVUlTUEkuaCBiL1NvdXJjZS9XZWJD
b3JlL1BBTC9wYWwvc3BpL2lvcy9EYXRhRGV0ZWN0b3JzVUlTUEkuaAppbmRleCA5MzhlYzVlODIz
M2QxMzNjNDliZWQ1Mjg1Y2JhYzg5Y2RlY2ZmNmRhLi4xMjE4ZTM1YmVkM2M2MzE1OGQyMzAxNzZm
NjNiZmEwNjI2NTM1M2IzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9p
b3MvRGF0YURldGVjdG9yc1VJU1BJLmgKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkv
aW9zL0RhdGFEZXRlY3RvcnNVSVNQSS5oCkBAIC01MSw5ICs1MSwxMSBAQAogCiAjaWYgSEFWRShM
SU5LX1BSRVZJRVcpICYmIFVTRShVSUNPTlRFWFRNRU5VKQogQGNsYXNzIFVJQ29udGV4dE1lbnVD
b25maWd1cmF0aW9uOworQGNsYXNzIEREQ29udGV4dE1lbnVDb25maWd1cmF0aW9uOwogQGludGVy
ZmFjZSBERENvbnRleHRNZW51QWN0aW9uCi0rIChVSUNvbnRleHRNZW51Q29uZmlndXJhdGlvbiAq
KWNvbnRleHRNZW51Q29uZmlndXJhdGlvbldpdGhVUkw6KE5TVVJMICopVVJMIGluVmlldzooVUlW
aWV3ICopdmlldyBjb250ZXh0OihOU0RpY3Rpb25hcnkgKiljb250ZXh0IG1lbnVJZGVudGlmaWVy
OihOU1N0cmluZyAqKW1lbnVJZGVudGlmaWVyOwogKyAoVUlDb250ZXh0TWVudUNvbmZpZ3VyYXRp
b24gKiljb250ZXh0TWVudUNvbmZpZ3VyYXRpb25Gb3JVUkw6KE5TVVJMICopVVJMIGlkZW50aWZp
ZXI6KE5TU3RyaW5nICopaWRlbnRpZmllciBzZWxlY3RlZFRleHQ6KE5TU3RyaW5nICopc2VsZWN0
ZWRUZXh0IHJlc3VsdHM6KE5TQXJyYXkgKikgcmVzdWx0cyBpblZpZXc6IChVSVZpZXcgKikgdmll
dyBjb250ZXh0OihOU0RpY3Rpb25hcnkgKiljb250ZXh0IG1lbnVJZGVudGlmaWVyOihOU1N0cmlu
ZyAqKW1lbnVJZGVudGlmaWVyOworKyAoRERDb250ZXh0TWVudUNvbmZpZ3VyYXRpb24gKiljb250
ZXh0TWVudUNvbmZpZ3VyYXRpb25XaXRoUmVzdWx0OihERFJlc3VsdFJlZilyZXN1bHQgaW5WaWV3
OihVSVZpZXcgKil2aWV3IGNvbnRleHQ6KE5TRGljdGlvbmFyeSAqKWNvbnRleHQgbWVudUlkZW50
aWZpZXI6KE5TU3RyaW5nICopbWVudUlkZW50aWZpZXI7CisrIChERENvbnRleHRNZW51Q29uZmln
dXJhdGlvbiAqKWNvbnRleHRNZW51Q29uZmlndXJhdGlvbldpdGhVUkw6KE5TVVJMICopVVJMIGlu
VmlldzooVUlWaWV3ICopdmlldyBjb250ZXh0OihOU0RpY3Rpb25hcnkgKiljb250ZXh0IG1lbnVJ
ZGVudGlmaWVyOihOU1N0cmluZyAqKW1lbnVJZGVudGlmaWVyOwogQGVuZAogI2VuZGlmCiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0QXNzaXN0
YW50LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFzc2lzdGFu
dC5oCmluZGV4IGIwNGRkMTA1YTk0NzY4ZGQ5MGFiOWY2ZGI0ODNhZGFjNjM0ZDk0ZTcuLjFkMzA5
NDYzMGM4YTQ0ZTAwOWFlODcxMDk3NjRlZGRmOGQ1ZDk2NmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0QXNzaXN0YW50LmgKKysrIGIvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQuaApAQCAtNDAsNiAr
NDAsNyBAQCBzdHJ1Y3QgSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb247CiBAY2xhc3Mg
X1dLQWN0aXZhdGVkRWxlbWVudEluZm87CiBAY2xhc3MgX1dLRWxlbWVudEFjdGlvbjsKIEBwcm90
b2NvbCBXS0FjdGlvblNoZWV0RGVsZWdhdGU7CitAcHJvdG9jb2wgVUlDb250ZXh0TWVudUludGVy
YWN0aW9uRGVsZWdhdGU7CiAKIEBwcm90b2NvbCBXS0FjdGlvblNoZWV0QXNzaXN0YW50RGVsZWdh
dGUgPE5TT2JqZWN0PgogQHJlcXVpcmVkCkBAIC02MSwxMSArNjIsMTIgQEAgc3RydWN0IEludGVy
YWN0aW9uSW5mb3JtYXRpb25BdFBvc2l0aW9uOwogLSAoTlNEaWN0aW9uYXJ5ICopZGF0YURldGVj
dGlvbkNvbnRleHRGb3JBY3Rpb25TaGVldEFzc2lzdGFudDooV0tBY3Rpb25TaGVldEFzc2lzdGFu
dCAqKWFzc2lzdGFudDsKIC0gKE5TU3RyaW5nICopc2VsZWN0ZWRUZXh0Rm9yQWN0aW9uU2hlZXRB
c3Npc3RhbnQ6KFdLQWN0aW9uU2hlZXRBc3Npc3RhbnQgKilhc3Npc3RhbnQ7CiAtICh2b2lkKWFj
dGlvblNoZWV0QXNzaXN0YW50OihXS0FjdGlvblNoZWV0QXNzaXN0YW50ICopYXNzaXN0YW50IGdl
dEFsdGVybmF0ZVVSTEZvckltYWdlOihVSUltYWdlICopaW1hZ2UgY29tcGxldGlvbjoodm9pZCAo
XikoTlNVUkwgKmFsdGVybmF0ZVVSTCwgTlNEaWN0aW9uYXJ5ICp1c2VySW5mbykpY29tcGxldGlv
bjsKKy0gKENHUG9pbnQpY29udGV4dE1lbnVQcmVzZW50YXRpb25Mb2NhdGlvbkZvckFjdGlvblNo
ZWV0QXNzaXN0YW50OihXS0FjdGlvblNoZWV0QXNzaXN0YW50ICopYXNzaXN0YW50OwogCiBAZW5k
CiAKLSNpZiBFTkFCTEUoREFUQV9ERVRFQ1RJT04pCi1AaW50ZXJmYWNlIFdLQWN0aW9uU2hlZXRB
c3Npc3RhbnQgOiBOU09iamVjdCA8V0tBY3Rpb25TaGVldERlbGVnYXRlLCBERERldGVjdGlvbkNv
bnRyb2xsZXJJbnRlcmFjdGlvbkRlbGVnYXRlPgorI2lmIEVOQUJMRShEQVRBX0RFVEVDVElPTikg
JiYgVVNFKFVJQ09OVEVYVE1FTlUpCitAaW50ZXJmYWNlIFdLQWN0aW9uU2hlZXRBc3Npc3RhbnQg
OiBOU09iamVjdCA8V0tBY3Rpb25TaGVldERlbGVnYXRlLCBERERldGVjdGlvbkNvbnRyb2xsZXJJ
bnRlcmFjdGlvbkRlbGVnYXRlLCBVSUNvbnRleHRNZW51SW50ZXJhY3Rpb25EZWxlZ2F0ZT4KICNl
bHNlCiBAaW50ZXJmYWNlIFdLQWN0aW9uU2hlZXRBc3Npc3RhbnQgOiBOU09iamVjdCA8V0tBY3Rp
b25TaGVldERlbGVnYXRlPgogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFzc2lzdGFudC5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL2lvcy9XS0FjdGlvblNoZWV0QXNzaXN0YW50Lm1tCmluZGV4IGE3ZmE1MTdlY2IyMDAzYjdi
NWIyMWRlNDJiZTE5ZjQ5MDQ3MDYwZDYuLjdhZmRjMGQ0YjFkMjcwMzZhODNkOGFjOGQ1YTM4NGM3
NTRkMDM4MmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0FjdGlv
blNoZWV0QXNzaXN0YW50Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0Fj
dGlvblNoZWV0QXNzaXN0YW50Lm1tCkBAIC05Nyw2ICs5Nyw3IEBAIHN0YXRpYyBMU0FwcExpbmsg
KmFwcExpbmtGb3JVUkwoTlNVUkwgKnVybCkKICAgICBSZXRhaW5QdHI8V0tBY3Rpb25TaGVldD4g
X2ludGVyYWN0aW9uU2hlZXQ7CiAgICAgUmV0YWluUHRyPF9XS0FjdGl2YXRlZEVsZW1lbnRJbmZv
PiBfZWxlbWVudEluZm87CiAgICAgT3B0aW9uYWw8V2ViS2l0OjpJbnRlcmFjdGlvbkluZm9ybWF0
aW9uQXRQb3NpdGlvbj4gX3Bvc2l0aW9uSW5mb3JtYXRpb247CisgICAgUmV0YWluUHRyPFVJQ29u
dGV4dE1lbnVJbnRlcmFjdGlvbj4gX2RhdGFEZXRlY3RvckNvbnRleHRNZW51SW50ZXJhY3Rpb247
CiAgICAgV2Vha09iakNQdHI8VUlWaWV3PiBfdmlldzsKICAgICBCT09MIF9uZWVkc0xpbmtJbmRp
Y2F0b3I7CiAgICAgQk9PTCBfaXNQcmVzZW50aW5nRERVc2VySW50ZXJmYWNlOwpAQCAtNjMyLDYg
KzYzMywyNCBAQCBBTExPV19ERVBSRUNBVEVEX0RFQ0xBUkFUSU9OU19FTkQKICAgICAgICAgW3Nl
bGYgY2xlYW51cFNoZWV0XTsKIH0KIAorI2lmIEVOQUJMRShEQVRBX0RFVEVDVElPTikgJiYgVVNF
KFVJQ09OVEVYVE1FTlUpCistICh2b2lkKXJlbW92ZUNvbnRleHRNZW51SW50ZXJhY3Rpb24KK3sK
KyAgICBpZiAoX2RhdGFEZXRlY3RvckNvbnRleHRNZW51SW50ZXJhY3Rpb24pIHsKKyAgICAgICAg
W192aWV3IHJlbW92ZUludGVyYWN0aW9uOl9kYXRhRGV0ZWN0b3JDb250ZXh0TWVudUludGVyYWN0
aW9uLmdldCgpXTsKKyAgICAgICAgX2RhdGFEZXRlY3RvckNvbnRleHRNZW51SW50ZXJhY3Rpb24g
PSBuaWw7CisgICAgfQorfQorCistICh2b2lkKWVuc3VyZUNvbnRleHRNZW51SW50ZXJhY3Rpb24K
K3sKKyAgICBpZiAoIV9kYXRhRGV0ZWN0b3JDb250ZXh0TWVudUludGVyYWN0aW9uKSB7CisgICAg
ICAgIF9kYXRhRGV0ZWN0b3JDb250ZXh0TWVudUludGVyYWN0aW9uID0gYWRvcHROUyhbW1VJQ29u
dGV4dE1lbnVJbnRlcmFjdGlvbiBhbGxvY10gaW5pdFdpdGhEZWxlZ2F0ZTpzZWxmXSk7CisgICAg
ICAgIFtfdmlldyBhZGRJbnRlcmFjdGlvbjpfZGF0YURldGVjdG9yQ29udGV4dE1lbnVJbnRlcmFj
dGlvbi5nZXQoKV07CisgICAgfQorfQorI2VuZGlmCisKIC0gKHZvaWQpc2hvd0RhdGFEZXRlY3Rv
cnNTaGVldAogewogI2lmIEVOQUJMRShEQVRBX0RFVEVDVElPTikKQEAgLTY2Nyw2ICs2ODYsMTUg
QEAgQUxMT1dfREVQUkVDQVRFRF9ERUNMQVJBVElPTlNfRU5ECiAgICAgTlNBcnJheSAqZGF0YURl
dGVjdG9yc0FjdGlvbnMgPSBbY29udHJvbGxlciBhY3Rpb25zRm9yVVJMOnRhcmdldFVSTCBpZGVu
dGlmaWVyOl9wb3NpdGlvbkluZm9ybWF0aW9uLT5kYXRhRGV0ZWN0b3JJZGVudGlmaWVyIHNlbGVj
dGVkVGV4dDp0ZXh0QXRTZWxlY3Rpb24gcmVzdWx0czpfcG9zaXRpb25JbmZvcm1hdGlvbi0+ZGF0
YURldGVjdG9yUmVzdWx0cy5nZXQoKSBjb250ZXh0OmNvbnRleHRdOwogICAgIGlmIChbZGF0YURl
dGVjdG9yc0FjdGlvbnMgY291bnRdID09IDApCiAgICAgICAgIHJldHVybjsKKyAgICAKKyNpZiBF
TkFCTEUoREFUQV9ERVRFQ1RJT04pICYmIFVTRShVSUNPTlRFWFRNRU5VKQorICAgIGF1dG8gZGVs
ZWdhdGUgPSBfZGVsZWdhdGUuZ2V0KCk7CisgICAgaWYgKFtkZWxlZ2F0ZSByZXNwb25kc1RvU2Vs
ZWN0b3I6QHNlbGVjdG9yKGNvbnRleHRNZW51UHJlc2VudGF0aW9uTG9jYXRpb25Gb3JBY3Rpb25T
aGVldEFzc2lzdGFudDopXSkgeworICAgICAgICBbc2VsZiBlbnN1cmVDb250ZXh0TWVudUludGVy
YWN0aW9uXTsKKyAgICAgICAgW19kYXRhRGV0ZWN0b3JDb250ZXh0TWVudUludGVyYWN0aW9uIF9w
cmVzZW50TWVudUF0TG9jYXRpb246W2RlbGVnYXRlIGNvbnRleHRNZW51UHJlc2VudGF0aW9uTG9j
YXRpb25Gb3JBY3Rpb25TaGVldEFzc2lzdGFudDpzZWxmXV07CisgICAgICAgIHJldHVybjsKKyAg
ICB9CisjZW5kaWYKIAogICAgIE5TTXV0YWJsZUFycmF5ICplbGVtZW50QWN0aW9ucyA9IFtOU011
dGFibGVBcnJheSBhcnJheV07CiAgICAgZm9yIChOU1VJbnRlZ2VyIGFjdGlvbk51bWJlciA9IDA7
IGFjdGlvbk51bWJlciA8IFtkYXRhRGV0ZWN0b3JzQWN0aW9ucyBjb3VudF07IGFjdGlvbk51bWJl
cisrKSB7CkBAIC02ODgsNiArNzE2LDU1IEBAIEFMTE9XX0RFUFJFQ0FURURfREVDTEFSQVRJT05T
X0VORAogI2VuZGlmCiB9CiAKKyNpZiBVU0UoVUlDT05URVhUTUVOVSkKKy0gKFVJQ29udGV4dE1l
bnVDb25maWd1cmF0aW9uICopY29udGV4dE1lbnVJbnRlcmFjdGlvbjooVUlDb250ZXh0TWVudUlu
dGVyYWN0aW9uICopaW50ZXJhY3Rpb24gY29uZmlndXJhdGlvbkZvck1lbnVBdExvY2F0aW9uOihD
R1BvaW50KWxvY2F0aW9uCit7CisgICAgREREZXRlY3Rpb25Db250cm9sbGVyICpjb250cm9sbGVy
ID0gW2dldERERGV0ZWN0aW9uQ29udHJvbGxlckNsYXNzKCkgc2hhcmVkQ29udHJvbGxlcl07Cisg
ICAgTlNEaWN0aW9uYXJ5ICpjb250ZXh0ID0gbmlsOworICAgIE5TU3RyaW5nICp0ZXh0QXRTZWxl
Y3Rpb24gPSBuaWw7CisKKyAgICBpZiAoW19kZWxlZ2F0ZSByZXNwb25kc1RvU2VsZWN0b3I6QHNl
bGVjdG9yKGRhdGFEZXRlY3Rpb25Db250ZXh0Rm9yQWN0aW9uU2hlZXRBc3Npc3RhbnQ6KV0pCisg
ICAgICAgIGNvbnRleHQgPSBbX2RlbGVnYXRlIGRhdGFEZXRlY3Rpb25Db250ZXh0Rm9yQWN0aW9u
U2hlZXRBc3Npc3RhbnQ6c2VsZl07CisgICAgaWYgKFtfZGVsZWdhdGUgcmVzcG9uZHNUb1NlbGVj
dG9yOkBzZWxlY3RvcihzZWxlY3RlZFRleHRGb3JBY3Rpb25TaGVldEFzc2lzdGFudDopXSkKKyAg
ICAgICAgdGV4dEF0U2VsZWN0aW9uID0gW19kZWxlZ2F0ZSBzZWxlY3RlZFRleHRGb3JBY3Rpb25T
aGVldEFzc2lzdGFudDpzZWxmXTsKKworICAgIE5TRGljdGlvbmFyeSAqbmV3Q29udGV4dCA9IG5p
bDsKKyAgICBERFJlc3VsdFJlZiBkZFJlc3VsdCA9IFtjb250cm9sbGVyIHJlc3VsdEZvclVSTDpf
cG9zaXRpb25JbmZvcm1hdGlvbi0+dXJsIGlkZW50aWZpZXI6X3Bvc2l0aW9uSW5mb3JtYXRpb24t
PmRhdGFEZXRlY3RvcklkZW50aWZpZXIgc2VsZWN0ZWRUZXh0OnRleHRBdFNlbGVjdGlvbiByZXN1
bHRzOl9wb3NpdGlvbkluZm9ybWF0aW9uLT5kYXRhRGV0ZWN0b3JSZXN1bHRzLmdldCgpIGNvbnRl
eHQ6Y29udGV4dCBleHRlbmRlZENvbnRleHQ6Jm5ld0NvbnRleHRdOworCisgICAgYXV0byBkZENv
bnRleHRNZW51QWN0aW9uQ2xhc3MgPSBnZXRERENvbnRleHRNZW51QWN0aW9uQ2xhc3MoKTsKKyAg
ICBpZiAoZGRSZXN1bHQpCisgICAgICAgIHJldHVybiBbZGRDb250ZXh0TWVudUFjdGlvbkNsYXNz
IGNvbnRleHRNZW51Q29uZmlndXJhdGlvbldpdGhSZXN1bHQ6ZGRSZXN1bHQgaW5WaWV3Ol92aWV3
LmdldEF1dG9yZWxlYXNlZCgpIGNvbnRleHQ6Y29udGV4dCBtZW51SWRlbnRpZmllcjpuaWxdOwor
ICAgIHJldHVybiBbZGRDb250ZXh0TWVudUFjdGlvbkNsYXNzIGNvbnRleHRNZW51Q29uZmlndXJh
dGlvbldpdGhVUkw6X3Bvc2l0aW9uSW5mb3JtYXRpb24tPnVybCBpblZpZXc6X3ZpZXcuZ2V0QXV0
b3JlbGVhc2VkKCkgY29udGV4dDpjb250ZXh0IG1lbnVJZGVudGlmaWVyOm5pbF07Cit9CisKKy0g
KFVJVGFyZ2V0ZWRQcmV2aWV3ICopY29udGV4dE1lbnVJbnRlcmFjdGlvbjooVUlDb250ZXh0TWVu
dUludGVyYWN0aW9uICopaW50ZXJhY3Rpb24gcHJldmlld0ZvckhpZ2hsaWdodGluZ01lbnVXaXRo
Q29uZmlndXJhdGlvbjooVUlDb250ZXh0TWVudUNvbmZpZ3VyYXRpb24gKiljb25maWd1cmF0aW9u
Cit7CisgICAgYXV0byBkZWxlZ2F0ZSA9IF9kZWxlZ2F0ZS5nZXQoKTsKKyAgICBDR1BvaW50IGNl
bnRlciA9IENHUG9pbnRaZXJvOworICAgIGlmIChbZGVsZWdhdGUgcmVzcG9uZHNUb1NlbGVjdG9y
OkBzZWxlY3Rvcihjb250ZXh0TWVudVByZXNlbnRhdGlvbkxvY2F0aW9uRm9yQWN0aW9uU2hlZXRB
c3Npc3RhbnQ6KV0pCisgICAgICAgIGNlbnRlciA9IFtkZWxlZ2F0ZSBjb250ZXh0TWVudVByZXNl
bnRhdGlvbkxvY2F0aW9uRm9yQWN0aW9uU2hlZXRBc3Npc3RhbnQ6c2VsZl07CisgICAgUmV0YWlu
UHRyPFVJUHJldmlld1BhcmFtZXRlcnM+IHVudXNlZFByZXZpZXdQYXJhbWV0ZXJzID0gYWRvcHRO
UyhbW1VJUHJldmlld1BhcmFtZXRlcnMgYWxsb2NdIGluaXRdKTsKKyAgICBSZXRhaW5QdHI8VUlQ
cmV2aWV3VGFyZ2V0PiBwcmV2aWV3VGFyZ2V0ID0gYWRvcHROUyhbW1VJUHJldmlld1RhcmdldCBh
bGxvY10gaW5pdFdpdGhDb250YWluZXI6X3ZpZXcuZ2V0QXV0b3JlbGVhc2VkKCkgY2VudGVyOmNl
bnRlcl0pOworICAgIFJldGFpblB0cjxVSVRhcmdldGVkUHJldmlldz4gcHJldmlldyA9IGFkb3B0
TlMoW1tVSVRhcmdldGVkUHJldmlldyBhbGxvY10gaW5pdFdpdGhWaWV3Ol92aWV3LmdldEF1dG9y
ZWxlYXNlZCgpIHBhcmFtZXRlcnM6dW51c2VkUHJldmlld1BhcmFtZXRlcnMuZ2V0KCkgdGFyZ2V0
OnByZXZpZXdUYXJnZXQuZ2V0KCldKTsKKworICAgIHJldHVybiBwcmV2aWV3LmF1dG9yZWxlYXNl
KCk7Cit9CisKKy0gKF9VSUNvbnRleHRNZW51U3R5bGUgKilfY29udGV4dE1lbnVJbnRlcmFjdGlv
bjooVUlDb250ZXh0TWVudUludGVyYWN0aW9uICopaW50ZXJhY3Rpb24gc3R5bGVGb3JNZW51V2l0
aENvbmZpZ3VyYXRpb246KFVJQ29udGV4dE1lbnVDb25maWd1cmF0aW9uICopY29uZmlndXJhdGlv
bgoreworICAgIF9VSUNvbnRleHRNZW51U3R5bGUgKnN0eWxlID0gW19VSUNvbnRleHRNZW51U3R5
bGUgZGVmYXVsdFN0eWxlXTsKKyAgICBzdHlsZS5wcmVmZXJyZWRMYXlvdXQgPSBfVUlDb250ZXh0
TWVudUxheW91dENvbXBhY3RNZW51OworICAgIHJldHVybiBzdHlsZTsKK30KKworLSAodm9pZClj
b250ZXh0TWVudUludGVyYWN0aW9uOihVSUNvbnRleHRNZW51SW50ZXJhY3Rpb24gKilpbnRlcmFj
dGlvbiB3aWxsRW5kRm9yQ29uZmlndXJhdGlvbjooVUlDb250ZXh0TWVudUNvbmZpZ3VyYXRpb24g
Kiljb25maWd1cmF0aW9uIGFuaW1hdG9yOihpZDxVSUNvbnRleHRNZW51SW50ZXJhY3Rpb25Bbmlt
YXRpbmc+KWFuaW1hdG9yCit7CisgICAgW2FuaW1hdG9yIGFkZENvbXBsZXRpb246XnsKKyAgICAg
ICAgW3NlbGYgcmVtb3ZlQ29udGV4dE1lbnVJbnRlcmFjdGlvbl07CisgICAgfV07Cit9CisjZW5k
aWYKKwogLSAodm9pZCljbGVhbnVwU2hlZXQKIHsKICAgICBhdXRvIGRlbGVnYXRlID0gX2RlbGVn
YXRlLmdldCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29u
dGVudFZpZXdJbnRlcmFjdGlvbi5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0Nv
bnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0KaW5kZXggOTY4YzVhNmNjNDE3Nzk0OTM5N2FhNmVjNGRl
OTcyNDY5N2MzM2UyOS4uZjQ1M2MyZWQ4MWRiNzQ4MTBjNmQ1ZWJmZTUwMTU3ZTg1ZGYzYzBhYyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRl
cmFjdGlvbi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmll
d0ludGVyYWN0aW9uLm1tCkBAIC02ODE0LDYgKzY4MTQsMTEgQEAgc3RhdGljIEJPT0wgYWxsUGFz
dGVib2FyZEl0ZW1PcmlnaW5zTWF0Y2hPcmlnaW4oVUlQYXN0ZWJvYXJkICpwYXN0ZWJvYXJkLCBj
b25zdAogICAgICAgICBjb21wbGV0aW9uKG5pbCwgbmlsKTsKIH0KIAorLSAoQ0dQb2ludCljb250
ZXh0TWVudVByZXNlbnRhdGlvbkxvY2F0aW9uRm9yQWN0aW9uU2hlZXRBc3Npc3RhbnQ6KFdLQWN0
aW9uU2hlZXRBc3Npc3RhbnQgKilhc3Npc3RhbnQKK3sKKyAgICByZXR1cm4gW3NlbGYgbGFzdElu
dGVyYWN0aW9uTG9jYXRpb25dOworfQorCiAtIChCT09MKV9zaG91bGRVc2VDb250ZXh0TWVudXMK
IHsKICNpZiBIQVZFKExJTktfUFJFVklFVykgJiYgVVNFKFVJQ09OVEVYVE1FTlUpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>392941</attachid>
            <date>2020-03-07 23:16:17 -0800</date>
            <delta_ts>2020-03-08 00:17:10 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208779-20200307231616.patch</filename>
            <type>text/plain</type>
            <size>10555</size>
            <attacher name="Megan Gardner">megan_gardner</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4MTAxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDJmOTBmZTQ0NDAxMjcwODY3
ODQ3ZDgxMmFhNTRlNDUxMTBhYzdhMmYuLmFkODUyMzJmMjkyNWNhNTI0ZmFmZjRlZGI3ZGUzZmNl
MDljZjBiODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMjAtMDMtMDcgIE1lZ2FuIEdh
cmRuZXIgIDxtZWdhbl9nYXJkbmVyQGFwcGxlLmNvbT4KKworICAgICAgICBBZG9wdCBDb250ZXh0
IE1lbnVzIGZvciBEYXRhIERldGVjdG9ycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjA4Nzc5CisKKyAgICAgICAgU3dpdGNoIHRvIGNvbnRleHQgbWVu
dXMgZm9yIGRhdGEgZGV0ZWN0b3IgYWN0aW9uIHNoZWV0cy4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVl
dEFzc2lzdGFudC5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFzc2lz
dGFudC5tbToKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVldEFzc2lzdGFudCByZW1vdmVDb250ZXh0
TWVudUludGVyYWN0aW9uXSk6CisgICAgICAgICgtW1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQgZW5z
dXJlQ29udGV4dE1lbnVJbnRlcmFjdGlvbl0pOgorICAgICAgICAoLVtXS0FjdGlvblNoZWV0QXNz
aXN0YW50IHNob3dEYXRhRGV0ZWN0b3JzU2hlZXRdKToKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVl
dEFzc2lzdGFudCBjb250ZXh0TWVudUludGVyYWN0aW9uOmNvbmZpZ3VyYXRpb25Gb3JNZW51QXRM
b2NhdGlvbjpdKToKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVldEFzc2lzdGFudCBjb250ZXh0TWVu
dUludGVyYWN0aW9uOnByZXZpZXdGb3JIaWdobGlnaHRpbmdNZW51V2l0aENvbmZpZ3VyYXRpb246
XSk6CisgICAgICAgICgtW1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQgX2NvbnRleHRNZW51SW50ZXJh
Y3Rpb246c3R5bGVGb3JNZW51V2l0aENvbmZpZ3VyYXRpb246XSk6CisgICAgICAgICgtW1dLQWN0
aW9uU2hlZXRBc3Npc3RhbnQgY29udGV4dE1lbnVJbnRlcmFjdGlvbjp3aWxsRW5kRm9yQ29uZmln
dXJhdGlvbjphbmltYXRvcjpdKToKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLQ29udGVudFZp
ZXdJbnRlcmFjdGlvbi5tbToKKyAgICAgICAgKC1bV0tDb250ZW50VmlldyBjb250ZXh0TWVudURp
c3BsYXlMb2NhdGlvbkZvckFjdGlvblNoZWV0QXNzaXN0YW50Ol0pOgorCiAyMDIwLTAzLTA3ICBC
cmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgogCiAgICAgICAgIENyZWF0ZSBhIGZs
YWcgdG8gZGlzYWJsZSBpbi1hcHAgYnJvd3NlciBxdWlya3MKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL1BBTC9wYWwvc3BpL2lvcy9EYXRhRGV0ZWN0b3JzVUlTUEkuaCBiL1NvdXJjZS9XZWJD
b3JlL1BBTC9wYWwvc3BpL2lvcy9EYXRhRGV0ZWN0b3JzVUlTUEkuaAppbmRleCA5MzhlYzVlODIz
M2QxMzNjNDliZWQ1Mjg1Y2JhYzg5Y2RlY2ZmNmRhLi5kZmQ2OTNkMWU2Y2M5Y2MxMWE2ZmYwMDU5
ZGY4YzRiNGFjY2I3OGMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9p
b3MvRGF0YURldGVjdG9yc1VJU1BJLmgKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkv
aW9zL0RhdGFEZXRlY3RvcnNVSVNQSS5oCkBAIC01Miw4ICs1Miw5IEBACiAjaWYgSEFWRShMSU5L
X1BSRVZJRVcpICYmIFVTRShVSUNPTlRFWFRNRU5VKQogQGNsYXNzIFVJQ29udGV4dE1lbnVDb25m
aWd1cmF0aW9uOwogQGludGVyZmFjZSBERENvbnRleHRNZW51QWN0aW9uCi0rIChVSUNvbnRleHRN
ZW51Q29uZmlndXJhdGlvbiAqKWNvbnRleHRNZW51Q29uZmlndXJhdGlvbldpdGhVUkw6KE5TVVJM
ICopVVJMIGluVmlldzooVUlWaWV3ICopdmlldyBjb250ZXh0OihOU0RpY3Rpb25hcnkgKiljb250
ZXh0IG1lbnVJZGVudGlmaWVyOihOU1N0cmluZyAqKW1lbnVJZGVudGlmaWVyOwogKyAoVUlDb250
ZXh0TWVudUNvbmZpZ3VyYXRpb24gKiljb250ZXh0TWVudUNvbmZpZ3VyYXRpb25Gb3JVUkw6KE5T
VVJMICopVVJMIGlkZW50aWZpZXI6KE5TU3RyaW5nICopaWRlbnRpZmllciBzZWxlY3RlZFRleHQ6
KE5TU3RyaW5nICopc2VsZWN0ZWRUZXh0IHJlc3VsdHM6KE5TQXJyYXkgKikgcmVzdWx0cyBpblZp
ZXc6IChVSVZpZXcgKikgdmlldyBjb250ZXh0OihOU0RpY3Rpb25hcnkgKiljb250ZXh0IG1lbnVJ
ZGVudGlmaWVyOihOU1N0cmluZyAqKW1lbnVJZGVudGlmaWVyOworKyAoVUlDb250ZXh0TWVudUNv
bmZpZ3VyYXRpb24gKiljb250ZXh0TWVudUNvbmZpZ3VyYXRpb25XaXRoUmVzdWx0OihERFJlc3Vs
dFJlZilyZXN1bHQgaW5WaWV3OihVSVZpZXcgKil2aWV3IGNvbnRleHQ6KE5TRGljdGlvbmFyeSAq
KWNvbnRleHQgbWVudUlkZW50aWZpZXI6KE5TU3RyaW5nICopbWVudUlkZW50aWZpZXI7CisrIChV
SUNvbnRleHRNZW51Q29uZmlndXJhdGlvbiAqKWNvbnRleHRNZW51Q29uZmlndXJhdGlvbldpdGhV
Ukw6KE5TVVJMICopVVJMIGluVmlldzooVUlWaWV3ICopdmlldyBjb250ZXh0OihOU0RpY3Rpb25h
cnkgKiljb250ZXh0IG1lbnVJZGVudGlmaWVyOihOU1N0cmluZyAqKW1lbnVJZGVudGlmaWVyOwog
QGVuZAogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9X
S0FjdGlvblNoZWV0QXNzaXN0YW50LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tB
Y3Rpb25TaGVldEFzc2lzdGFudC5oCmluZGV4IGIwNGRkMTA1YTk0NzY4ZGQ5MGFiOWY2ZGI0ODNh
ZGFjNjM0ZDk0ZTcuLjFkMzA5NDYzMGM4YTQ0ZTAwOWFlODcxMDk3NjRlZGRmOGQ1ZDk2NmMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0QXNzaXN0
YW50LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQWN0aW9uU2hlZXRBc3Np
c3RhbnQuaApAQCAtNDAsNiArNDAsNyBAQCBzdHJ1Y3QgSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0
UG9zaXRpb247CiBAY2xhc3MgX1dLQWN0aXZhdGVkRWxlbWVudEluZm87CiBAY2xhc3MgX1dLRWxl
bWVudEFjdGlvbjsKIEBwcm90b2NvbCBXS0FjdGlvblNoZWV0RGVsZWdhdGU7CitAcHJvdG9jb2wg
VUlDb250ZXh0TWVudUludGVyYWN0aW9uRGVsZWdhdGU7CiAKIEBwcm90b2NvbCBXS0FjdGlvblNo
ZWV0QXNzaXN0YW50RGVsZWdhdGUgPE5TT2JqZWN0PgogQHJlcXVpcmVkCkBAIC02MSwxMSArNjIs
MTIgQEAgc3RydWN0IEludGVyYWN0aW9uSW5mb3JtYXRpb25BdFBvc2l0aW9uOwogLSAoTlNEaWN0
aW9uYXJ5ICopZGF0YURldGVjdGlvbkNvbnRleHRGb3JBY3Rpb25TaGVldEFzc2lzdGFudDooV0tB
Y3Rpb25TaGVldEFzc2lzdGFudCAqKWFzc2lzdGFudDsKIC0gKE5TU3RyaW5nICopc2VsZWN0ZWRU
ZXh0Rm9yQWN0aW9uU2hlZXRBc3Npc3RhbnQ6KFdLQWN0aW9uU2hlZXRBc3Npc3RhbnQgKilhc3Np
c3RhbnQ7CiAtICh2b2lkKWFjdGlvblNoZWV0QXNzaXN0YW50OihXS0FjdGlvblNoZWV0QXNzaXN0
YW50ICopYXNzaXN0YW50IGdldEFsdGVybmF0ZVVSTEZvckltYWdlOihVSUltYWdlICopaW1hZ2Ug
Y29tcGxldGlvbjoodm9pZCAoXikoTlNVUkwgKmFsdGVybmF0ZVVSTCwgTlNEaWN0aW9uYXJ5ICp1
c2VySW5mbykpY29tcGxldGlvbjsKKy0gKENHUG9pbnQpY29udGV4dE1lbnVQcmVzZW50YXRpb25M
b2NhdGlvbkZvckFjdGlvblNoZWV0QXNzaXN0YW50OihXS0FjdGlvblNoZWV0QXNzaXN0YW50ICop
YXNzaXN0YW50OwogCiBAZW5kCiAKLSNpZiBFTkFCTEUoREFUQV9ERVRFQ1RJT04pCi1AaW50ZXJm
YWNlIFdLQWN0aW9uU2hlZXRBc3Npc3RhbnQgOiBOU09iamVjdCA8V0tBY3Rpb25TaGVldERlbGVn
YXRlLCBERERldGVjdGlvbkNvbnRyb2xsZXJJbnRlcmFjdGlvbkRlbGVnYXRlPgorI2lmIEVOQUJM
RShEQVRBX0RFVEVDVElPTikgJiYgVVNFKFVJQ09OVEVYVE1FTlUpCitAaW50ZXJmYWNlIFdLQWN0
aW9uU2hlZXRBc3Npc3RhbnQgOiBOU09iamVjdCA8V0tBY3Rpb25TaGVldERlbGVnYXRlLCBERERl
dGVjdGlvbkNvbnRyb2xsZXJJbnRlcmFjdGlvbkRlbGVnYXRlLCBVSUNvbnRleHRNZW51SW50ZXJh
Y3Rpb25EZWxlZ2F0ZT4KICNlbHNlCiBAaW50ZXJmYWNlIFdLQWN0aW9uU2hlZXRBc3Npc3RhbnQg
OiBOU09iamVjdCA8V0tBY3Rpb25TaGVldERlbGVnYXRlPgogI2VuZGlmCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFzc2lzdGFudC5tbSBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0QXNzaXN0YW50Lm1tCmluZGV4
IGE3ZmE1MTdlY2IyMDAzYjdiNWIyMWRlNDJiZTE5ZjQ5MDQ3MDYwZDYuLjdhZmRjMGQ0YjFkMjcw
MzZhODNkOGFjOGQ1YTM4NGM3NTRkMDM4MmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0QXNzaXN0YW50Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0QXNzaXN0YW50Lm1tCkBAIC05Nyw2ICs5Nyw3IEBA
IHN0YXRpYyBMU0FwcExpbmsgKmFwcExpbmtGb3JVUkwoTlNVUkwgKnVybCkKICAgICBSZXRhaW5Q
dHI8V0tBY3Rpb25TaGVldD4gX2ludGVyYWN0aW9uU2hlZXQ7CiAgICAgUmV0YWluUHRyPF9XS0Fj
dGl2YXRlZEVsZW1lbnRJbmZvPiBfZWxlbWVudEluZm87CiAgICAgT3B0aW9uYWw8V2ViS2l0OjpJ
bnRlcmFjdGlvbkluZm9ybWF0aW9uQXRQb3NpdGlvbj4gX3Bvc2l0aW9uSW5mb3JtYXRpb247Cisg
ICAgUmV0YWluUHRyPFVJQ29udGV4dE1lbnVJbnRlcmFjdGlvbj4gX2RhdGFEZXRlY3RvckNvbnRl
eHRNZW51SW50ZXJhY3Rpb247CiAgICAgV2Vha09iakNQdHI8VUlWaWV3PiBfdmlldzsKICAgICBC
T09MIF9uZWVkc0xpbmtJbmRpY2F0b3I7CiAgICAgQk9PTCBfaXNQcmVzZW50aW5nRERVc2VySW50
ZXJmYWNlOwpAQCAtNjMyLDYgKzYzMywyNCBAQCBBTExPV19ERVBSRUNBVEVEX0RFQ0xBUkFUSU9O
U19FTkQKICAgICAgICAgW3NlbGYgY2xlYW51cFNoZWV0XTsKIH0KIAorI2lmIEVOQUJMRShEQVRB
X0RFVEVDVElPTikgJiYgVVNFKFVJQ09OVEVYVE1FTlUpCistICh2b2lkKXJlbW92ZUNvbnRleHRN
ZW51SW50ZXJhY3Rpb24KK3sKKyAgICBpZiAoX2RhdGFEZXRlY3RvckNvbnRleHRNZW51SW50ZXJh
Y3Rpb24pIHsKKyAgICAgICAgW192aWV3IHJlbW92ZUludGVyYWN0aW9uOl9kYXRhRGV0ZWN0b3JD
b250ZXh0TWVudUludGVyYWN0aW9uLmdldCgpXTsKKyAgICAgICAgX2RhdGFEZXRlY3RvckNvbnRl
eHRNZW51SW50ZXJhY3Rpb24gPSBuaWw7CisgICAgfQorfQorCistICh2b2lkKWVuc3VyZUNvbnRl
eHRNZW51SW50ZXJhY3Rpb24KK3sKKyAgICBpZiAoIV9kYXRhRGV0ZWN0b3JDb250ZXh0TWVudUlu
dGVyYWN0aW9uKSB7CisgICAgICAgIF9kYXRhRGV0ZWN0b3JDb250ZXh0TWVudUludGVyYWN0aW9u
ID0gYWRvcHROUyhbW1VJQ29udGV4dE1lbnVJbnRlcmFjdGlvbiBhbGxvY10gaW5pdFdpdGhEZWxl
Z2F0ZTpzZWxmXSk7CisgICAgICAgIFtfdmlldyBhZGRJbnRlcmFjdGlvbjpfZGF0YURldGVjdG9y
Q29udGV4dE1lbnVJbnRlcmFjdGlvbi5nZXQoKV07CisgICAgfQorfQorI2VuZGlmCisKIC0gKHZv
aWQpc2hvd0RhdGFEZXRlY3RvcnNTaGVldAogewogI2lmIEVOQUJMRShEQVRBX0RFVEVDVElPTikK
QEAgLTY2Nyw2ICs2ODYsMTUgQEAgQUxMT1dfREVQUkVDQVRFRF9ERUNMQVJBVElPTlNfRU5ECiAg
ICAgTlNBcnJheSAqZGF0YURldGVjdG9yc0FjdGlvbnMgPSBbY29udHJvbGxlciBhY3Rpb25zRm9y
VVJMOnRhcmdldFVSTCBpZGVudGlmaWVyOl9wb3NpdGlvbkluZm9ybWF0aW9uLT5kYXRhRGV0ZWN0
b3JJZGVudGlmaWVyIHNlbGVjdGVkVGV4dDp0ZXh0QXRTZWxlY3Rpb24gcmVzdWx0czpfcG9zaXRp
b25JbmZvcm1hdGlvbi0+ZGF0YURldGVjdG9yUmVzdWx0cy5nZXQoKSBjb250ZXh0OmNvbnRleHRd
OwogICAgIGlmIChbZGF0YURldGVjdG9yc0FjdGlvbnMgY291bnRdID09IDApCiAgICAgICAgIHJl
dHVybjsKKyAgICAKKyNpZiBFTkFCTEUoREFUQV9ERVRFQ1RJT04pICYmIFVTRShVSUNPTlRFWFRN
RU5VKQorICAgIGF1dG8gZGVsZWdhdGUgPSBfZGVsZWdhdGUuZ2V0KCk7CisgICAgaWYgKFtkZWxl
Z2F0ZSByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKGNvbnRleHRNZW51UHJlc2VudGF0aW9u
TG9jYXRpb25Gb3JBY3Rpb25TaGVldEFzc2lzdGFudDopXSkgeworICAgICAgICBbc2VsZiBlbnN1
cmVDb250ZXh0TWVudUludGVyYWN0aW9uXTsKKyAgICAgICAgW19kYXRhRGV0ZWN0b3JDb250ZXh0
TWVudUludGVyYWN0aW9uIF9wcmVzZW50TWVudUF0TG9jYXRpb246W2RlbGVnYXRlIGNvbnRleHRN
ZW51UHJlc2VudGF0aW9uTG9jYXRpb25Gb3JBY3Rpb25TaGVldEFzc2lzdGFudDpzZWxmXV07Cisg
ICAgICAgIHJldHVybjsKKyAgICB9CisjZW5kaWYKIAogICAgIE5TTXV0YWJsZUFycmF5ICplbGVt
ZW50QWN0aW9ucyA9IFtOU011dGFibGVBcnJheSBhcnJheV07CiAgICAgZm9yIChOU1VJbnRlZ2Vy
IGFjdGlvbk51bWJlciA9IDA7IGFjdGlvbk51bWJlciA8IFtkYXRhRGV0ZWN0b3JzQWN0aW9ucyBj
b3VudF07IGFjdGlvbk51bWJlcisrKSB7CkBAIC02ODgsNiArNzE2LDU1IEBAIEFMTE9XX0RFUFJF
Q0FURURfREVDTEFSQVRJT05TX0VORAogI2VuZGlmCiB9CiAKKyNpZiBVU0UoVUlDT05URVhUTUVO
VSkKKy0gKFVJQ29udGV4dE1lbnVDb25maWd1cmF0aW9uICopY29udGV4dE1lbnVJbnRlcmFjdGlv
bjooVUlDb250ZXh0TWVudUludGVyYWN0aW9uICopaW50ZXJhY3Rpb24gY29uZmlndXJhdGlvbkZv
ck1lbnVBdExvY2F0aW9uOihDR1BvaW50KWxvY2F0aW9uCit7CisgICAgREREZXRlY3Rpb25Db250
cm9sbGVyICpjb250cm9sbGVyID0gW2dldERERGV0ZWN0aW9uQ29udHJvbGxlckNsYXNzKCkgc2hh
cmVkQ29udHJvbGxlcl07CisgICAgTlNEaWN0aW9uYXJ5ICpjb250ZXh0ID0gbmlsOworICAgIE5T
U3RyaW5nICp0ZXh0QXRTZWxlY3Rpb24gPSBuaWw7CisKKyAgICBpZiAoW19kZWxlZ2F0ZSByZXNw
b25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKGRhdGFEZXRlY3Rpb25Db250ZXh0Rm9yQWN0aW9uU2hl
ZXRBc3Npc3RhbnQ6KV0pCisgICAgICAgIGNvbnRleHQgPSBbX2RlbGVnYXRlIGRhdGFEZXRlY3Rp
b25Db250ZXh0Rm9yQWN0aW9uU2hlZXRBc3Npc3RhbnQ6c2VsZl07CisgICAgaWYgKFtfZGVsZWdh
dGUgcmVzcG9uZHNUb1NlbGVjdG9yOkBzZWxlY3RvcihzZWxlY3RlZFRleHRGb3JBY3Rpb25TaGVl
dEFzc2lzdGFudDopXSkKKyAgICAgICAgdGV4dEF0U2VsZWN0aW9uID0gW19kZWxlZ2F0ZSBzZWxl
Y3RlZFRleHRGb3JBY3Rpb25TaGVldEFzc2lzdGFudDpzZWxmXTsKKworICAgIE5TRGljdGlvbmFy
eSAqbmV3Q29udGV4dCA9IG5pbDsKKyAgICBERFJlc3VsdFJlZiBkZFJlc3VsdCA9IFtjb250cm9s
bGVyIHJlc3VsdEZvclVSTDpfcG9zaXRpb25JbmZvcm1hdGlvbi0+dXJsIGlkZW50aWZpZXI6X3Bv
c2l0aW9uSW5mb3JtYXRpb24tPmRhdGFEZXRlY3RvcklkZW50aWZpZXIgc2VsZWN0ZWRUZXh0OnRl
eHRBdFNlbGVjdGlvbiByZXN1bHRzOl9wb3NpdGlvbkluZm9ybWF0aW9uLT5kYXRhRGV0ZWN0b3JS
ZXN1bHRzLmdldCgpIGNvbnRleHQ6Y29udGV4dCBleHRlbmRlZENvbnRleHQ6Jm5ld0NvbnRleHRd
OworCisgICAgYXV0byBkZENvbnRleHRNZW51QWN0aW9uQ2xhc3MgPSBnZXRERENvbnRleHRNZW51
QWN0aW9uQ2xhc3MoKTsKKyAgICBpZiAoZGRSZXN1bHQpCisgICAgICAgIHJldHVybiBbZGRDb250
ZXh0TWVudUFjdGlvbkNsYXNzIGNvbnRleHRNZW51Q29uZmlndXJhdGlvbldpdGhSZXN1bHQ6ZGRS
ZXN1bHQgaW5WaWV3Ol92aWV3LmdldEF1dG9yZWxlYXNlZCgpIGNvbnRleHQ6Y29udGV4dCBtZW51
SWRlbnRpZmllcjpuaWxdOworICAgIHJldHVybiBbZGRDb250ZXh0TWVudUFjdGlvbkNsYXNzIGNv
bnRleHRNZW51Q29uZmlndXJhdGlvbldpdGhVUkw6X3Bvc2l0aW9uSW5mb3JtYXRpb24tPnVybCBp
blZpZXc6X3ZpZXcuZ2V0QXV0b3JlbGVhc2VkKCkgY29udGV4dDpjb250ZXh0IG1lbnVJZGVudGlm
aWVyOm5pbF07Cit9CisKKy0gKFVJVGFyZ2V0ZWRQcmV2aWV3ICopY29udGV4dE1lbnVJbnRlcmFj
dGlvbjooVUlDb250ZXh0TWVudUludGVyYWN0aW9uICopaW50ZXJhY3Rpb24gcHJldmlld0Zvckhp
Z2hsaWdodGluZ01lbnVXaXRoQ29uZmlndXJhdGlvbjooVUlDb250ZXh0TWVudUNvbmZpZ3VyYXRp
b24gKiljb25maWd1cmF0aW9uCit7CisgICAgYXV0byBkZWxlZ2F0ZSA9IF9kZWxlZ2F0ZS5nZXQo
KTsKKyAgICBDR1BvaW50IGNlbnRlciA9IENHUG9pbnRaZXJvOworICAgIGlmIChbZGVsZWdhdGUg
cmVzcG9uZHNUb1NlbGVjdG9yOkBzZWxlY3Rvcihjb250ZXh0TWVudVByZXNlbnRhdGlvbkxvY2F0
aW9uRm9yQWN0aW9uU2hlZXRBc3Npc3RhbnQ6KV0pCisgICAgICAgIGNlbnRlciA9IFtkZWxlZ2F0
ZSBjb250ZXh0TWVudVByZXNlbnRhdGlvbkxvY2F0aW9uRm9yQWN0aW9uU2hlZXRBc3Npc3RhbnQ6
c2VsZl07CisgICAgUmV0YWluUHRyPFVJUHJldmlld1BhcmFtZXRlcnM+IHVudXNlZFByZXZpZXdQ
YXJhbWV0ZXJzID0gYWRvcHROUyhbW1VJUHJldmlld1BhcmFtZXRlcnMgYWxsb2NdIGluaXRdKTsK
KyAgICBSZXRhaW5QdHI8VUlQcmV2aWV3VGFyZ2V0PiBwcmV2aWV3VGFyZ2V0ID0gYWRvcHROUyhb
W1VJUHJldmlld1RhcmdldCBhbGxvY10gaW5pdFdpdGhDb250YWluZXI6X3ZpZXcuZ2V0QXV0b3Jl
bGVhc2VkKCkgY2VudGVyOmNlbnRlcl0pOworICAgIFJldGFpblB0cjxVSVRhcmdldGVkUHJldmll
dz4gcHJldmlldyA9IGFkb3B0TlMoW1tVSVRhcmdldGVkUHJldmlldyBhbGxvY10gaW5pdFdpdGhW
aWV3Ol92aWV3LmdldEF1dG9yZWxlYXNlZCgpIHBhcmFtZXRlcnM6dW51c2VkUHJldmlld1BhcmFt
ZXRlcnMuZ2V0KCkgdGFyZ2V0OnByZXZpZXdUYXJnZXQuZ2V0KCldKTsKKworICAgIHJldHVybiBw
cmV2aWV3LmF1dG9yZWxlYXNlKCk7Cit9CisKKy0gKF9VSUNvbnRleHRNZW51U3R5bGUgKilfY29u
dGV4dE1lbnVJbnRlcmFjdGlvbjooVUlDb250ZXh0TWVudUludGVyYWN0aW9uICopaW50ZXJhY3Rp
b24gc3R5bGVGb3JNZW51V2l0aENvbmZpZ3VyYXRpb246KFVJQ29udGV4dE1lbnVDb25maWd1cmF0
aW9uICopY29uZmlndXJhdGlvbgoreworICAgIF9VSUNvbnRleHRNZW51U3R5bGUgKnN0eWxlID0g
W19VSUNvbnRleHRNZW51U3R5bGUgZGVmYXVsdFN0eWxlXTsKKyAgICBzdHlsZS5wcmVmZXJyZWRM
YXlvdXQgPSBfVUlDb250ZXh0TWVudUxheW91dENvbXBhY3RNZW51OworICAgIHJldHVybiBzdHls
ZTsKK30KKworLSAodm9pZCljb250ZXh0TWVudUludGVyYWN0aW9uOihVSUNvbnRleHRNZW51SW50
ZXJhY3Rpb24gKilpbnRlcmFjdGlvbiB3aWxsRW5kRm9yQ29uZmlndXJhdGlvbjooVUlDb250ZXh0
TWVudUNvbmZpZ3VyYXRpb24gKiljb25maWd1cmF0aW9uIGFuaW1hdG9yOihpZDxVSUNvbnRleHRN
ZW51SW50ZXJhY3Rpb25BbmltYXRpbmc+KWFuaW1hdG9yCit7CisgICAgW2FuaW1hdG9yIGFkZENv
bXBsZXRpb246XnsKKyAgICAgICAgW3NlbGYgcmVtb3ZlQ29udGV4dE1lbnVJbnRlcmFjdGlvbl07
CisgICAgfV07Cit9CisjZW5kaWYKKwogLSAodm9pZCljbGVhbnVwU2hlZXQKIHsKICAgICBhdXRv
IGRlbGVnYXRlID0gX2RlbGVnYXRlLmdldCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbSBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0KaW5kZXggOTY4YzVhNmNj
NDE3Nzk0OTM5N2FhNmVjNGRlOTcyNDY5N2MzM2UyOS4uZjQ1M2MyZWQ4MWRiNzQ4MTBjNmQ1ZWJm
ZTUwMTU3ZTg1ZGYzYzBhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9z
L1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCkBAIC02ODE0LDYgKzY4MTQsMTEgQEAg
c3RhdGljIEJPT0wgYWxsUGFzdGVib2FyZEl0ZW1PcmlnaW5zTWF0Y2hPcmlnaW4oVUlQYXN0ZWJv
YXJkICpwYXN0ZWJvYXJkLCBjb25zdAogICAgICAgICBjb21wbGV0aW9uKG5pbCwgbmlsKTsKIH0K
IAorLSAoQ0dQb2ludCljb250ZXh0TWVudVByZXNlbnRhdGlvbkxvY2F0aW9uRm9yQWN0aW9uU2hl
ZXRBc3Npc3RhbnQ6KFdLQWN0aW9uU2hlZXRBc3Npc3RhbnQgKilhc3Npc3RhbnQKK3sKKyAgICBy
ZXR1cm4gW3NlbGYgbGFzdEludGVyYWN0aW9uTG9jYXRpb25dOworfQorCiAtIChCT09MKV9zaG91
bGRVc2VDb250ZXh0TWVudXMKIHsKICNpZiBIQVZFKExJTktfUFJFVklFVykgJiYgVVNFKFVJQ09O
VEVYVE1FTlUpCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>392944</attachid>
            <date>2020-03-08 00:17:12 -0800</date>
            <delta_ts>2020-03-08 01:00:54 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-208779-20200308001711.patch</filename>
            <type>text/plain</type>
            <size>10551</size>
            <attacher name="Megan Gardner">megan_gardner</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4MTAxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDJmOTBmZTQ0NDAxMjcwODY3
ODQ3ZDgxMmFhNTRlNDUxMTBhYzdhMmYuLmY0OTkxNzJiYWMxYmJmZDBhNTA5NDk0MmM2NWUwM2Y2
OWVkMDEwM2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMjAtMDMtMDcgIE1lZ2FuIEdh
cmRuZXIgIDxtZWdhbl9nYXJkbmVyQGFwcGxlLmNvbT4KKworICAgICAgICBBZG9wdCBDb250ZXh0
IE1lbnVzIGZvciBEYXRhIERldGVjdG9ycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjA4Nzc5CisKKyAgICAgICAgU3dpdGNoIHRvIGNvbnRleHQgbWVu
dXMgZm9yIGRhdGEgZGV0ZWN0b3IgYWN0aW9uIHNoZWV0cy4KKworICAgICAgICBSZXZpZXdlZCBi
eSBUaW0gSG9ydG9uLgorCisgICAgICAgICogVUlQcm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0QXNz
aXN0YW50Lmg6CisgICAgICAgICogVUlQcm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0QXNzaXN0YW50
Lm1tOgorICAgICAgICAoLVtXS0FjdGlvblNoZWV0QXNzaXN0YW50IHJlbW92ZUNvbnRleHRNZW51
SW50ZXJhY3Rpb25dKToKKyAgICAgICAgKC1bV0tBY3Rpb25TaGVldEFzc2lzdGFudCBlbnN1cmVD
b250ZXh0TWVudUludGVyYWN0aW9uXSk6CisgICAgICAgICgtW1dLQWN0aW9uU2hlZXRBc3Npc3Rh
bnQgc2hvd0RhdGFEZXRlY3RvcnNTaGVldF0pOgorICAgICAgICAoLVtXS0FjdGlvblNoZWV0QXNz
aXN0YW50IGNvbnRleHRNZW51SW50ZXJhY3Rpb246Y29uZmlndXJhdGlvbkZvck1lbnVBdExvY2F0
aW9uOl0pOgorICAgICAgICAoLVtXS0FjdGlvblNoZWV0QXNzaXN0YW50IGNvbnRleHRNZW51SW50
ZXJhY3Rpb246cHJldmlld0ZvckhpZ2hsaWdodGluZ01lbnVXaXRoQ29uZmlndXJhdGlvbjpdKToK
KyAgICAgICAgKC1bV0tBY3Rpb25TaGVldEFzc2lzdGFudCBfY29udGV4dE1lbnVJbnRlcmFjdGlv
bjpzdHlsZUZvck1lbnVXaXRoQ29uZmlndXJhdGlvbjpdKToKKyAgICAgICAgKC1bV0tBY3Rpb25T
aGVldEFzc2lzdGFudCBjb250ZXh0TWVudUludGVyYWN0aW9uOndpbGxFbmRGb3JDb25maWd1cmF0
aW9uOmFuaW1hdG9yOl0pOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0lu
dGVyYWN0aW9uLm1tOgorICAgICAgICAoLVtXS0NvbnRlbnRWaWV3IGNvbnRleHRNZW51RGlzcGxh
eUxvY2F0aW9uRm9yQWN0aW9uU2hlZXRBc3Npc3RhbnQ6XSk6CisKIDIwMjAtMDMtMDcgIEJyZW50
IEZ1bGdoYW0gIDxiZnVsZ2hhbUBhcHBsZS5jb20+CiAKICAgICAgICAgQ3JlYXRlIGEgZmxhZyB0
byBkaXNhYmxlIGluLWFwcCBicm93c2VyIHF1aXJrcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvUEFML3BhbC9zcGkvaW9zL0RhdGFEZXRlY3RvcnNVSVNQSS5oIGIvU291cmNlL1dlYkNvcmUv
UEFML3BhbC9zcGkvaW9zL0RhdGFEZXRlY3RvcnNVSVNQSS5oCmluZGV4IDkzOGVjNWU4MjMzZDEz
M2M0OWJlZDUyODVjYmFjODljZGVjZmY2ZGEuLmRmZDY5M2QxZTZjYzljYzExYTZmZjAwNTlkZjhj
NGI0YWNjYjc4YzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2lvcy9E
YXRhRGV0ZWN0b3JzVUlTUEkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9pb3Mv
RGF0YURldGVjdG9yc1VJU1BJLmgKQEAgLTUyLDggKzUyLDkgQEAKICNpZiBIQVZFKExJTktfUFJF
VklFVykgJiYgVVNFKFVJQ09OVEVYVE1FTlUpCiBAY2xhc3MgVUlDb250ZXh0TWVudUNvbmZpZ3Vy
YXRpb247CiBAaW50ZXJmYWNlIEREQ29udGV4dE1lbnVBY3Rpb24KLSsgKFVJQ29udGV4dE1lbnVD
b25maWd1cmF0aW9uICopY29udGV4dE1lbnVDb25maWd1cmF0aW9uV2l0aFVSTDooTlNVUkwgKilV
UkwgaW5WaWV3OihVSVZpZXcgKil2aWV3IGNvbnRleHQ6KE5TRGljdGlvbmFyeSAqKWNvbnRleHQg
bWVudUlkZW50aWZpZXI6KE5TU3RyaW5nICopbWVudUlkZW50aWZpZXI7CiArIChVSUNvbnRleHRN
ZW51Q29uZmlndXJhdGlvbiAqKWNvbnRleHRNZW51Q29uZmlndXJhdGlvbkZvclVSTDooTlNVUkwg
KilVUkwgaWRlbnRpZmllcjooTlNTdHJpbmcgKilpZGVudGlmaWVyIHNlbGVjdGVkVGV4dDooTlNT
dHJpbmcgKilzZWxlY3RlZFRleHQgcmVzdWx0czooTlNBcnJheSAqKSByZXN1bHRzIGluVmlldzog
KFVJVmlldyAqKSB2aWV3IGNvbnRleHQ6KE5TRGljdGlvbmFyeSAqKWNvbnRleHQgbWVudUlkZW50
aWZpZXI6KE5TU3RyaW5nICopbWVudUlkZW50aWZpZXI7CisrIChVSUNvbnRleHRNZW51Q29uZmln
dXJhdGlvbiAqKWNvbnRleHRNZW51Q29uZmlndXJhdGlvbldpdGhSZXN1bHQ6KEREUmVzdWx0UmVm
KXJlc3VsdCBpblZpZXc6KFVJVmlldyAqKXZpZXcgY29udGV4dDooTlNEaWN0aW9uYXJ5ICopY29u
dGV4dCBtZW51SWRlbnRpZmllcjooTlNTdHJpbmcgKiltZW51SWRlbnRpZmllcjsKKysgKFVJQ29u
dGV4dE1lbnVDb25maWd1cmF0aW9uICopY29udGV4dE1lbnVDb25maWd1cmF0aW9uV2l0aFVSTDoo
TlNVUkwgKilVUkwgaW5WaWV3OihVSVZpZXcgKil2aWV3IGNvbnRleHQ6KE5TRGljdGlvbmFyeSAq
KWNvbnRleHQgbWVudUlkZW50aWZpZXI6KE5TU3RyaW5nICopbWVudUlkZW50aWZpZXI7CiBAZW5k
CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQWN0
aW9uU2hlZXRBc3Npc3RhbnQuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0FjdGlv
blNoZWV0QXNzaXN0YW50LmgKaW5kZXggYjA0ZGQxMDVhOTQ3NjhkZDkwYWI5ZjZkYjQ4M2FkYWM2
MzRkOTRlNy4uMWQzMDk0NjMwYzhhNDRlMDA5YWU4NzEwOTc2NGVkZGY4ZDVkOTY2YyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQu
aAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFzc2lzdGFu
dC5oCkBAIC00MCw2ICs0MCw3IEBAIHN0cnVjdCBJbnRlcmFjdGlvbkluZm9ybWF0aW9uQXRQb3Np
dGlvbjsKIEBjbGFzcyBfV0tBY3RpdmF0ZWRFbGVtZW50SW5mbzsKIEBjbGFzcyBfV0tFbGVtZW50
QWN0aW9uOwogQHByb3RvY29sIFdLQWN0aW9uU2hlZXREZWxlZ2F0ZTsKK0Bwcm90b2NvbCBVSUNv
bnRleHRNZW51SW50ZXJhY3Rpb25EZWxlZ2F0ZTsKIAogQHByb3RvY29sIFdLQWN0aW9uU2hlZXRB
c3Npc3RhbnREZWxlZ2F0ZSA8TlNPYmplY3Q+CiBAcmVxdWlyZWQKQEAgLTYxLDExICs2MiwxMiBA
QCBzdHJ1Y3QgSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb247CiAtIChOU0RpY3Rpb25h
cnkgKilkYXRhRGV0ZWN0aW9uQ29udGV4dEZvckFjdGlvblNoZWV0QXNzaXN0YW50OihXS0FjdGlv
blNoZWV0QXNzaXN0YW50ICopYXNzaXN0YW50OwogLSAoTlNTdHJpbmcgKilzZWxlY3RlZFRleHRG
b3JBY3Rpb25TaGVldEFzc2lzdGFudDooV0tBY3Rpb25TaGVldEFzc2lzdGFudCAqKWFzc2lzdGFu
dDsKIC0gKHZvaWQpYWN0aW9uU2hlZXRBc3Npc3RhbnQ6KFdLQWN0aW9uU2hlZXRBc3Npc3RhbnQg
Kilhc3Npc3RhbnQgZ2V0QWx0ZXJuYXRlVVJMRm9ySW1hZ2U6KFVJSW1hZ2UgKilpbWFnZSBjb21w
bGV0aW9uOih2b2lkICheKShOU1VSTCAqYWx0ZXJuYXRlVVJMLCBOU0RpY3Rpb25hcnkgKnVzZXJJ
bmZvKSljb21wbGV0aW9uOworLSAoQ0dQb2ludCljb250ZXh0TWVudVByZXNlbnRhdGlvbkxvY2F0
aW9uRm9yQWN0aW9uU2hlZXRBc3Npc3RhbnQ6KFdLQWN0aW9uU2hlZXRBc3Npc3RhbnQgKilhc3Np
c3RhbnQ7CiAKIEBlbmQKIAotI2lmIEVOQUJMRShEQVRBX0RFVEVDVElPTikKLUBpbnRlcmZhY2Ug
V0tBY3Rpb25TaGVldEFzc2lzdGFudCA6IE5TT2JqZWN0IDxXS0FjdGlvblNoZWV0RGVsZWdhdGUs
IERERGV0ZWN0aW9uQ29udHJvbGxlckludGVyYWN0aW9uRGVsZWdhdGU+CisjaWYgRU5BQkxFKERB
VEFfREVURUNUSU9OKSAmJiBVU0UoVUlDT05URVhUTUVOVSkKK0BpbnRlcmZhY2UgV0tBY3Rpb25T
aGVldEFzc2lzdGFudCA6IE5TT2JqZWN0IDxXS0FjdGlvblNoZWV0RGVsZWdhdGUsIERERGV0ZWN0
aW9uQ29udHJvbGxlckludGVyYWN0aW9uRGVsZWdhdGUsIFVJQ29udGV4dE1lbnVJbnRlcmFjdGlv
bkRlbGVnYXRlPgogI2Vsc2UKIEBpbnRlcmZhY2UgV0tBY3Rpb25TaGVldEFzc2lzdGFudCA6IE5T
T2JqZWN0IDxXS0FjdGlvblNoZWV0RGVsZWdhdGU+CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0QXNzaXN0YW50Lm1tIGIvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQubW0KaW5kZXggYTdm
YTUxN2VjYjIwMDNiN2I1YjIxZGU0MmJlMTlmNDkwNDcwNjBkNi4uN2FmZGMwZDRiMWQyNzAzNmE4
M2Q4YWM4ZDVhMzg0Yzc1NGQwMzgyZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvaW9zL1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvaW9zL1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQubW0KQEAgLTk3LDYgKzk3LDcgQEAgc3Rh
dGljIExTQXBwTGluayAqYXBwTGlua0ZvclVSTChOU1VSTCAqdXJsKQogICAgIFJldGFpblB0cjxX
S0FjdGlvblNoZWV0PiBfaW50ZXJhY3Rpb25TaGVldDsKICAgICBSZXRhaW5QdHI8X1dLQWN0aXZh
dGVkRWxlbWVudEluZm8+IF9lbGVtZW50SW5mbzsKICAgICBPcHRpb25hbDxXZWJLaXQ6OkludGVy
YWN0aW9uSW5mb3JtYXRpb25BdFBvc2l0aW9uPiBfcG9zaXRpb25JbmZvcm1hdGlvbjsKKyAgICBS
ZXRhaW5QdHI8VUlDb250ZXh0TWVudUludGVyYWN0aW9uPiBfZGF0YURldGVjdG9yQ29udGV4dE1l
bnVJbnRlcmFjdGlvbjsKICAgICBXZWFrT2JqQ1B0cjxVSVZpZXc+IF92aWV3OwogICAgIEJPT0wg
X25lZWRzTGlua0luZGljYXRvcjsKICAgICBCT09MIF9pc1ByZXNlbnRpbmdERFVzZXJJbnRlcmZh
Y2U7CkBAIC02MzIsNiArNjMzLDI0IEBAIEFMTE9XX0RFUFJFQ0FURURfREVDTEFSQVRJT05TX0VO
RAogICAgICAgICBbc2VsZiBjbGVhbnVwU2hlZXRdOwogfQogCisjaWYgRU5BQkxFKERBVEFfREVU
RUNUSU9OKSAmJiBVU0UoVUlDT05URVhUTUVOVSkKKy0gKHZvaWQpcmVtb3ZlQ29udGV4dE1lbnVJ
bnRlcmFjdGlvbgoreworICAgIGlmIChfZGF0YURldGVjdG9yQ29udGV4dE1lbnVJbnRlcmFjdGlv
bikgeworICAgICAgICBbX3ZpZXcgcmVtb3ZlSW50ZXJhY3Rpb246X2RhdGFEZXRlY3RvckNvbnRl
eHRNZW51SW50ZXJhY3Rpb24uZ2V0KCldOworICAgICAgICBfZGF0YURldGVjdG9yQ29udGV4dE1l
bnVJbnRlcmFjdGlvbiA9IG5pbDsKKyAgICB9Cit9CisKKy0gKHZvaWQpZW5zdXJlQ29udGV4dE1l
bnVJbnRlcmFjdGlvbgoreworICAgIGlmICghX2RhdGFEZXRlY3RvckNvbnRleHRNZW51SW50ZXJh
Y3Rpb24pIHsKKyAgICAgICAgX2RhdGFEZXRlY3RvckNvbnRleHRNZW51SW50ZXJhY3Rpb24gPSBh
ZG9wdE5TKFtbVUlDb250ZXh0TWVudUludGVyYWN0aW9uIGFsbG9jXSBpbml0V2l0aERlbGVnYXRl
OnNlbGZdKTsKKyAgICAgICAgW192aWV3IGFkZEludGVyYWN0aW9uOl9kYXRhRGV0ZWN0b3JDb250
ZXh0TWVudUludGVyYWN0aW9uLmdldCgpXTsKKyAgICB9Cit9CisjZW5kaWYKKwogLSAodm9pZClz
aG93RGF0YURldGVjdG9yc1NoZWV0CiB7CiAjaWYgRU5BQkxFKERBVEFfREVURUNUSU9OKQpAQCAt
NjY3LDYgKzY4NiwxNSBAQCBBTExPV19ERVBSRUNBVEVEX0RFQ0xBUkFUSU9OU19FTkQKICAgICBO
U0FycmF5ICpkYXRhRGV0ZWN0b3JzQWN0aW9ucyA9IFtjb250cm9sbGVyIGFjdGlvbnNGb3JVUkw6
dGFyZ2V0VVJMIGlkZW50aWZpZXI6X3Bvc2l0aW9uSW5mb3JtYXRpb24tPmRhdGFEZXRlY3Rvcklk
ZW50aWZpZXIgc2VsZWN0ZWRUZXh0OnRleHRBdFNlbGVjdGlvbiByZXN1bHRzOl9wb3NpdGlvbklu
Zm9ybWF0aW9uLT5kYXRhRGV0ZWN0b3JSZXN1bHRzLmdldCgpIGNvbnRleHQ6Y29udGV4dF07CiAg
ICAgaWYgKFtkYXRhRGV0ZWN0b3JzQWN0aW9ucyBjb3VudF0gPT0gMCkKICAgICAgICAgcmV0dXJu
OworICAgIAorI2lmIEVOQUJMRShEQVRBX0RFVEVDVElPTikgJiYgVVNFKFVJQ09OVEVYVE1FTlUp
CisgICAgYXV0byBkZWxlZ2F0ZSA9IF9kZWxlZ2F0ZS5nZXQoKTsKKyAgICBpZiAoW2RlbGVnYXRl
IHJlc3BvbmRzVG9TZWxlY3RvcjpAc2VsZWN0b3IoY29udGV4dE1lbnVQcmVzZW50YXRpb25Mb2Nh
dGlvbkZvckFjdGlvblNoZWV0QXNzaXN0YW50OildKSB7CisgICAgICAgIFtzZWxmIGVuc3VyZUNv
bnRleHRNZW51SW50ZXJhY3Rpb25dOworICAgICAgICBbX2RhdGFEZXRlY3RvckNvbnRleHRNZW51
SW50ZXJhY3Rpb24gX3ByZXNlbnRNZW51QXRMb2NhdGlvbjpbZGVsZWdhdGUgY29udGV4dE1lbnVQ
cmVzZW50YXRpb25Mb2NhdGlvbkZvckFjdGlvblNoZWV0QXNzaXN0YW50OnNlbGZdXTsKKyAgICAg
ICAgcmV0dXJuOworICAgIH0KKyNlbmRpZgogCiAgICAgTlNNdXRhYmxlQXJyYXkgKmVsZW1lbnRB
Y3Rpb25zID0gW05TTXV0YWJsZUFycmF5IGFycmF5XTsKICAgICBmb3IgKE5TVUludGVnZXIgYWN0
aW9uTnVtYmVyID0gMDsgYWN0aW9uTnVtYmVyIDwgW2RhdGFEZXRlY3RvcnNBY3Rpb25zIGNvdW50
XTsgYWN0aW9uTnVtYmVyKyspIHsKQEAgLTY4OCw2ICs3MTYsNTUgQEAgQUxMT1dfREVQUkVDQVRF
RF9ERUNMQVJBVElPTlNfRU5ECiAjZW5kaWYKIH0KIAorI2lmIFVTRShVSUNPTlRFWFRNRU5VKQor
LSAoVUlDb250ZXh0TWVudUNvbmZpZ3VyYXRpb24gKiljb250ZXh0TWVudUludGVyYWN0aW9uOihV
SUNvbnRleHRNZW51SW50ZXJhY3Rpb24gKilpbnRlcmFjdGlvbiBjb25maWd1cmF0aW9uRm9yTWVu
dUF0TG9jYXRpb246KENHUG9pbnQpbG9jYXRpb24KK3sKKyAgICBERERldGVjdGlvbkNvbnRyb2xs
ZXIgKmNvbnRyb2xsZXIgPSBbZ2V0REREZXRlY3Rpb25Db250cm9sbGVyQ2xhc3MoKSBzaGFyZWRD
b250cm9sbGVyXTsKKyAgICBOU0RpY3Rpb25hcnkgKmNvbnRleHQgPSBuaWw7CisgICAgTlNTdHJp
bmcgKnRleHRBdFNlbGVjdGlvbiA9IG5pbDsKKworICAgIGlmIChbX2RlbGVnYXRlIHJlc3BvbmRz
VG9TZWxlY3RvcjpAc2VsZWN0b3IoZGF0YURldGVjdGlvbkNvbnRleHRGb3JBY3Rpb25TaGVldEFz
c2lzdGFudDopXSkKKyAgICAgICAgY29udGV4dCA9IFtfZGVsZWdhdGUgZGF0YURldGVjdGlvbkNv
bnRleHRGb3JBY3Rpb25TaGVldEFzc2lzdGFudDpzZWxmXTsKKyAgICBpZiAoW19kZWxlZ2F0ZSBy
ZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKHNlbGVjdGVkVGV4dEZvckFjdGlvblNoZWV0QXNz
aXN0YW50OildKQorICAgICAgICB0ZXh0QXRTZWxlY3Rpb24gPSBbX2RlbGVnYXRlIHNlbGVjdGVk
VGV4dEZvckFjdGlvblNoZWV0QXNzaXN0YW50OnNlbGZdOworCisgICAgTlNEaWN0aW9uYXJ5ICpu
ZXdDb250ZXh0ID0gbmlsOworICAgIEREUmVzdWx0UmVmIGRkUmVzdWx0ID0gW2NvbnRyb2xsZXIg
cmVzdWx0Rm9yVVJMOl9wb3NpdGlvbkluZm9ybWF0aW9uLT51cmwgaWRlbnRpZmllcjpfcG9zaXRp
b25JbmZvcm1hdGlvbi0+ZGF0YURldGVjdG9ySWRlbnRpZmllciBzZWxlY3RlZFRleHQ6dGV4dEF0
U2VsZWN0aW9uIHJlc3VsdHM6X3Bvc2l0aW9uSW5mb3JtYXRpb24tPmRhdGFEZXRlY3RvclJlc3Vs
dHMuZ2V0KCkgY29udGV4dDpjb250ZXh0IGV4dGVuZGVkQ29udGV4dDombmV3Q29udGV4dF07CisK
KyAgICBhdXRvIGRkQ29udGV4dE1lbnVBY3Rpb25DbGFzcyA9IGdldEREQ29udGV4dE1lbnVBY3Rp
b25DbGFzcygpOworICAgIGlmIChkZFJlc3VsdCkKKyAgICAgICAgcmV0dXJuIFtkZENvbnRleHRN
ZW51QWN0aW9uQ2xhc3MgY29udGV4dE1lbnVDb25maWd1cmF0aW9uV2l0aFJlc3VsdDpkZFJlc3Vs
dCBpblZpZXc6X3ZpZXcuZ2V0QXV0b3JlbGVhc2VkKCkgY29udGV4dDpjb250ZXh0IG1lbnVJZGVu
dGlmaWVyOm5pbF07CisgICAgcmV0dXJuIFtkZENvbnRleHRNZW51QWN0aW9uQ2xhc3MgY29udGV4
dE1lbnVDb25maWd1cmF0aW9uV2l0aFVSTDpfcG9zaXRpb25JbmZvcm1hdGlvbi0+dXJsIGluVmll
dzpfdmlldy5nZXRBdXRvcmVsZWFzZWQoKSBjb250ZXh0OmNvbnRleHQgbWVudUlkZW50aWZpZXI6
bmlsXTsKK30KKworLSAoVUlUYXJnZXRlZFByZXZpZXcgKiljb250ZXh0TWVudUludGVyYWN0aW9u
OihVSUNvbnRleHRNZW51SW50ZXJhY3Rpb24gKilpbnRlcmFjdGlvbiBwcmV2aWV3Rm9ySGlnaGxp
Z2h0aW5nTWVudVdpdGhDb25maWd1cmF0aW9uOihVSUNvbnRleHRNZW51Q29uZmlndXJhdGlvbiAq
KWNvbmZpZ3VyYXRpb24KK3sKKyAgICBhdXRvIGRlbGVnYXRlID0gX2RlbGVnYXRlLmdldCgpOwor
ICAgIENHUG9pbnQgY2VudGVyID0gQ0dQb2ludFplcm87CisgICAgaWYgKFtkZWxlZ2F0ZSByZXNw
b25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKGNvbnRleHRNZW51UHJlc2VudGF0aW9uTG9jYXRpb25G
b3JBY3Rpb25TaGVldEFzc2lzdGFudDopXSkKKyAgICAgICAgY2VudGVyID0gW2RlbGVnYXRlIGNv
bnRleHRNZW51UHJlc2VudGF0aW9uTG9jYXRpb25Gb3JBY3Rpb25TaGVldEFzc2lzdGFudDpzZWxm
XTsKKyAgICBSZXRhaW5QdHI8VUlQcmV2aWV3UGFyYW1ldGVycz4gdW51c2VkUHJldmlld1BhcmFt
ZXRlcnMgPSBhZG9wdE5TKFtbVUlQcmV2aWV3UGFyYW1ldGVycyBhbGxvY10gaW5pdF0pOworICAg
IFJldGFpblB0cjxVSVByZXZpZXdUYXJnZXQ+IHByZXZpZXdUYXJnZXQgPSBhZG9wdE5TKFtbVUlQ
cmV2aWV3VGFyZ2V0IGFsbG9jXSBpbml0V2l0aENvbnRhaW5lcjpfdmlldy5nZXRBdXRvcmVsZWFz
ZWQoKSBjZW50ZXI6Y2VudGVyXSk7CisgICAgUmV0YWluUHRyPFVJVGFyZ2V0ZWRQcmV2aWV3PiBw
cmV2aWV3ID0gYWRvcHROUyhbW1VJVGFyZ2V0ZWRQcmV2aWV3IGFsbG9jXSBpbml0V2l0aFZpZXc6
X3ZpZXcuZ2V0QXV0b3JlbGVhc2VkKCkgcGFyYW1ldGVyczp1bnVzZWRQcmV2aWV3UGFyYW1ldGVy
cy5nZXQoKSB0YXJnZXQ6cHJldmlld1RhcmdldC5nZXQoKV0pOworCisgICAgcmV0dXJuIHByZXZp
ZXcuYXV0b3JlbGVhc2UoKTsKK30KKworLSAoX1VJQ29udGV4dE1lbnVTdHlsZSAqKV9jb250ZXh0
TWVudUludGVyYWN0aW9uOihVSUNvbnRleHRNZW51SW50ZXJhY3Rpb24gKilpbnRlcmFjdGlvbiBz
dHlsZUZvck1lbnVXaXRoQ29uZmlndXJhdGlvbjooVUlDb250ZXh0TWVudUNvbmZpZ3VyYXRpb24g
Kiljb25maWd1cmF0aW9uCit7CisgICAgX1VJQ29udGV4dE1lbnVTdHlsZSAqc3R5bGUgPSBbX1VJ
Q29udGV4dE1lbnVTdHlsZSBkZWZhdWx0U3R5bGVdOworICAgIHN0eWxlLnByZWZlcnJlZExheW91
dCA9IF9VSUNvbnRleHRNZW51TGF5b3V0Q29tcGFjdE1lbnU7CisgICAgcmV0dXJuIHN0eWxlOwor
fQorCistICh2b2lkKWNvbnRleHRNZW51SW50ZXJhY3Rpb246KFVJQ29udGV4dE1lbnVJbnRlcmFj
dGlvbiAqKWludGVyYWN0aW9uIHdpbGxFbmRGb3JDb25maWd1cmF0aW9uOihVSUNvbnRleHRNZW51
Q29uZmlndXJhdGlvbiAqKWNvbmZpZ3VyYXRpb24gYW5pbWF0b3I6KGlkPFVJQ29udGV4dE1lbnVJ
bnRlcmFjdGlvbkFuaW1hdGluZz4pYW5pbWF0b3IKK3sKKyAgICBbYW5pbWF0b3IgYWRkQ29tcGxl
dGlvbjpeeworICAgICAgICBbc2VsZiByZW1vdmVDb250ZXh0TWVudUludGVyYWN0aW9uXTsKKyAg
ICB9XTsKK30KKyNlbmRpZgorCiAtICh2b2lkKWNsZWFudXBTaGVldAogewogICAgIGF1dG8gZGVs
ZWdhdGUgPSBfZGVsZWdhdGUuZ2V0KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbQppbmRleCA5NjhjNWE2Y2M0MTc3
OTQ5Mzk3YWE2ZWM0ZGU5NzI0Njk3YzMzZTI5Li5mNDUzYzJlZDgxZGI3NDgxMGM2ZDVlYmZlNTAx
NTdlODVkZjNjMGFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tD
b250ZW50Vmlld0ludGVyYWN0aW9uLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lv
cy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0KQEAgLTY4MTQsNiArNjgxNCwxMSBAQCBzdGF0
aWMgQk9PTCBhbGxQYXN0ZWJvYXJkSXRlbU9yaWdpbnNNYXRjaE9yaWdpbihVSVBhc3RlYm9hcmQg
KnBhc3RlYm9hcmQsIGNvbnN0CiAgICAgICAgIGNvbXBsZXRpb24obmlsLCBuaWwpOwogfQogCist
IChDR1BvaW50KWNvbnRleHRNZW51UHJlc2VudGF0aW9uTG9jYXRpb25Gb3JBY3Rpb25TaGVldEFz
c2lzdGFudDooV0tBY3Rpb25TaGVldEFzc2lzdGFudCAqKWFzc2lzdGFudAoreworICAgIHJldHVy
biBbc2VsZiBsYXN0SW50ZXJhY3Rpb25Mb2NhdGlvbl07Cit9CisKIC0gKEJPT0wpX3Nob3VsZFVz
ZUNvbnRleHRNZW51cwogewogI2lmIEhBVkUoTElOS19QUkVWSUVXKSAmJiBVU0UoVUlDT05URVhU
TUVOVSkK
</data>

          </attachment>
      

    </bug>

</bugzilla>