<?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>208563</bug_id>
          
          <creation_ts>2020-03-03 23:57:12 -0800</creation_ts>
          <short_desc>Implement WKTextSelectionRect in terms of WebCore::SelectionRect and WKTextRange in terms of WKTextSelectionRect</short_desc>
          <delta_ts>2020-03-04 10:06:16 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit Misc.</component>
          <version>WebKit Local Build</version>
          <rep_platform>iPhone / iPad</rep_platform>
          <op_sys>iOS 13</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>
          <dependson>208561</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Daniel Bates">dbates</reporter>
          <assigned_to name="Daniel Bates">dbates</assigned_to>
          <cc>achristensen</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1625433</commentid>
    <comment_count>0</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-03-03 23:57:12 -0800</bug_when>
    <thetext>Implement WKTextSelectionRect in terms of WebCore::SelectionRect and WKTextRange in terms of WKTextSelectionRect.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625434</commentid>
    <comment_count>1</comment_count>
      <attachid>392380</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-03-03 23:59:11 -0800</bug_when>
    <thetext>Created attachment 392380
For the bots</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625435</commentid>
    <comment_count>2</comment_count>
      <attachid>392381</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-03-04 00:00:23 -0800</bug_when>
    <thetext>Created attachment 392381
For the bots</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625436</commentid>
    <comment_count>3</comment_count>
      <attachid>392382</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-03-04 00:14:51 -0800</bug_when>
    <thetext>Created attachment 392382
For the bots</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625437</commentid>
    <comment_count>4</comment_count>
      <attachid>392383</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-03-04 00:17:37 -0800</bug_when>
    <thetext>Created attachment 392383
Patch

This patch will fail to apply without the patch for bug #208561.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625442</commentid>
    <comment_count>5</comment_count>
      <attachid>392386</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-03-04 00:30:58 -0800</bug_when>
    <thetext>Created attachment 392386
For the bots</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625450</commentid>
    <comment_count>6</comment_count>
      <attachid>392390</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-03-04 01:04:34 -0800</bug_when>
    <thetext>Created attachment 392390
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625451</commentid>
    <comment_count>7</comment_count>
      <attachid>392391</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-03-04 01:05:54 -0800</bug_when>
    <thetext>Created attachment 392391
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625452</commentid>
    <comment_count>8</comment_count>
      <attachid>392392</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-03-04 01:06:59 -0800</bug_when>
    <thetext>Created attachment 392392
For the bots</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625533</commentid>
    <comment_count>9</comment_count>
      <attachid>392391</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2020-03-04 08:50:22 -0800</bug_when>
    <thetext>Comment on attachment 392391
Patch

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

&gt; Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm:4465
&gt; +    auto rects = adoptNS([[NSMutableArray alloc] initWithCapacity:coreRects.size()]);

arrayWithCapacity?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625578</commentid>
    <comment_count>10</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-03-04 09:59:51 -0800</bug_when>
    <thetext>(In reply to Alex Christensen from comment #9)
&gt; Comment on attachment 392391 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=392391&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm:4465
&gt; &gt; +    auto rects = adoptNS([[NSMutableArray alloc] initWithCapacity:coreRects.size()]);
&gt; 
&gt; arrayWithCapacity?

I thought about it when I wrote this code and was debating whether to RetainPtr it all up or not. At the end fo the day I chose to go with RetainPtr (even though the code is not long!). The generated code will be just as efficient because of the inlining of autorelease()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625583</commentid>
    <comment_count>11</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-03-04 10:04:20 -0800</bug_when>
    <thetext>Thanks for the review.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625587</commentid>
    <comment_count>12</comment_count>
      <attachid>392391</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-03-04 10:05:47 -0800</bug_when>
    <thetext>Comment on attachment 392391
Patch

Clearing flags on attachment: 392391

Committed r257852: &lt;https://trac.webkit.org/changeset/257852&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625588</commentid>
    <comment_count>13</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-03-04 10:05:48 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625589</commentid>
    <comment_count>14</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-03-04 10:06:16 -0800</bug_when>
    <thetext>&lt;rdar://problem/60044375&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>392380</attachid>
            <date>2020-03-03 23:59:11 -0800</date>
            <delta_ts>2020-03-04 00:00:23 -0800</delta_ts>
            <desc>For the bots</desc>
            <filename>Bug208561+208563.patch</filename>
            <type>text/plain</type>
            <size>15956</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKaW5kZXggN2Y0OTc3ZjM3MjcuLmI3NzdhNDQ0MDQyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsx
LDM3IEBACisyMDIwLTAzLTAzICBEYW5pZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KKwor
ICAgICAgICBNb3ZlIFdLVGV4dFNlbGVjdGlvblJlY3QgaW50byBpdHMgb3duIGZpbGUKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwODU2MQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdLVGV4dFNlbGVjdGlv
blJlY3QgaXMgY3VycmVudGx5IGRlZmluZWQgaW4gV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1t
LiBTZXBhcmF0ZSBpdAorICAgICAgICBvdXQgaW50byBpdHMgb3duIGZpbGUgdG8gaW1wcm92ZSBw
cm9qZWN0IG9yZ2FuaXphdGlvbiBhbmQgZGUtY2x1dHRlciBXS0NvbnRlbnRWaWV3SW50ZXJhY3Rp
b24ubW0uCisKKyAgICAgICAgKiBTb3VyY2VzQ29jb2EudHh0OgorICAgICAgICAqIFVJUHJvY2Vz
cy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tOgorICAgICAgICAoLVtXS1RleHRTZWxl
Y3Rpb25SZWN0IGluaXRXaXRoV2ViUmVjdDpdKTogRGVsZXRlZC4KKyAgICAgICAgKC1bV0tUZXh0
U2VsZWN0aW9uUmVjdCBkZWFsbG9jXSk6IERlbGV0ZWQuCisgICAgICAgICgrW1dLVGV4dFNlbGVj
dGlvblJlY3QgdGV4dFNlbGVjdGlvblJlY3RzV2l0aFdlYlJlY3RzOl0pOiBEZWxldGVkLgorICAg
ICAgICAoLVtXS1RleHRTZWxlY3Rpb25SZWN0IHJlY3RdKTogRGVsZXRlZC4KKyAgICAgICAgKC1b
V0tUZXh0U2VsZWN0aW9uUmVjdCB3cml0aW5nRGlyZWN0aW9uXSk6IERlbGV0ZWQuCisgICAgICAg
ICgtW1dLVGV4dFNlbGVjdGlvblJlY3QgcmFuZ2VdKTogRGVsZXRlZC4KKyAgICAgICAgKC1bV0tU
ZXh0U2VsZWN0aW9uUmVjdCBjb250YWluc1N0YXJ0XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dL
VGV4dFNlbGVjdGlvblJlY3QgY29udGFpbnNFbmRdKTogRGVsZXRlZC4KKyAgICAgICAgKC1bV0tU
ZXh0U2VsZWN0aW9uUmVjdCBpc1ZlcnRpY2FsXSk6IERlbGV0ZWQuCisgICAgICAgICogVUlQcm9j
ZXNzL2lvcy9XS1RleHRTZWxlY3Rpb25SZWN0Lmg6IEFkZGVkLgorICAgICAgICAqIFVJUHJvY2Vz
cy9pb3MvV0tUZXh0U2VsZWN0aW9uUmVjdC5tbTogQWRkZWQuCisgICAgICAgICgtW1dLVGV4dFNl
bGVjdGlvblJlY3QgaW5pdFdpdGhXZWJSZWN0Ol0pOgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rp
b25SZWN0IGRlYWxsb2NdKToKKyAgICAgICAgKCtbV0tUZXh0U2VsZWN0aW9uUmVjdCB0ZXh0U2Vs
ZWN0aW9uUmVjdHNXaXRoV2ViUmVjdHM6XSk6CisgICAgICAgICgtW1dLVGV4dFNlbGVjdGlvblJl
Y3QgcmVjdF0pOgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rpb25SZWN0IHdyaXRpbmdEaXJlY3Rp
b25dKToKKyAgICAgICAgKC1bV0tUZXh0U2VsZWN0aW9uUmVjdCByYW5nZV0pOgorICAgICAgICAo
LVtXS1RleHRTZWxlY3Rpb25SZWN0IGNvbnRhaW5zU3RhcnRdKToKKyAgICAgICAgKC1bV0tUZXh0
U2VsZWN0aW9uUmVjdCBjb250YWluc0VuZF0pOgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rpb25S
ZWN0IGlzVmVydGljYWxdKToKKyAgICAgICAgKiBXZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvajoKKwogMjAyMC0wMy0wMyAgRGV2aW4gUm91c3NvICA8ZHJvdXNzb0BhcHBsZS5jb20+CiAK
ICAgICAgICAgV2ViIEluc3BlY3RvcjogcmUtYWRkIGBJbnNwZWN0b3JGcm9udGVuZEhvc3RgIHN1
cHBvcnQgZm9yIG1vdmluZyB0aGUgaW5zcGVjdGVkIHdpbmRvdwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9Tb3VyY2VzQ29jb2EudHh0IGIvU291cmNlL1dlYktpdC9Tb3VyY2VzQ29jb2EudHh0
CmluZGV4IDBhNzc2OTM5ODc5Li4yNWNiYTk3M2I2NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9Tb3VyY2VzQ29jb2EudHh0CisrKyBiL1NvdXJjZS9XZWJLaXQvU291cmNlc0NvY29hLnR4dApA
QCAtNDcxLDYgKzQ3MSw3IEBAIFVJUHJvY2Vzcy9pb3MvV0tTeW50aGV0aWNGbGFnc0NoYW5nZWRX
ZWJFdmVudC5tbQogVUlQcm9jZXNzL2lvcy9XS1N5bnRoZXRpY1RhcEdlc3R1cmVSZWNvZ25pemVy
Lm1tCiBVSVByb2Nlc3MvaW9zL1dLU3lzdGVtUHJldmlld1ZpZXcubW0KIFVJUHJvY2Vzcy9pb3Mv
V0tUb3VjaEFjdGlvbkdlc3R1cmVSZWNvZ25pemVyLm1tCitVSVByb2Nlc3MvaW9zL1dLVGV4dFNl
bGVjdGlvblJlY3QubW0KIFVJUHJvY2Vzcy9pb3MvV0tXZWJFdmVudC5tbQogCiBVSVByb2Nlc3Mv
TGF1bmNoZXIvbWFjL1Byb2Nlc3NMYXVuY2hlck1hYy5tbQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbSBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0KaW5kZXggODQy
MmQ1MzkzYzUuLjJhYzkwYjZhYjc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0KQEAgLTY1LDYgKzY1LDcgQEAK
ICNpbXBvcnQgIldLU2VsZWN0TWVudUxpc3RWaWV3Q29udHJvbGxlci5oIgogI2ltcG9ydCAiV0tT
eW50aGV0aWNGbGFnc0NoYW5nZWRXZWJFdmVudC5oIgogI2ltcG9ydCAiV0tUZXh0SW5wdXRMaXN0
Vmlld0NvbnRyb2xsZXIuaCIKKyNpbXBvcnQgIldLVGV4dFNlbGVjdGlvblJlY3QuaCIKICNpbXBv
cnQgIldLVGltZVBpY2tlclZpZXdDb250cm9sbGVyLmgiCiAjaW1wb3J0ICJXS1VJRGVsZWdhdGVQ
cml2YXRlLmgiCiAjaW1wb3J0ICJXS1dlYlZpZXdDb25maWd1cmF0aW9uLmgiCkBAIC0yOTAsMTMg
KzI5MSw2IEBAICsgKFdLVGV4dFBvc2l0aW9uICopdGV4dFBvc2l0aW9uV2l0aFJlY3Q6KENHUmVj
dClwb3NpdGlvblJlY3Q7CiAKIEBlbmQKIAotQGludGVyZmFjZSBXS1RleHRTZWxlY3Rpb25SZWN0
IDogVUlUZXh0U2VsZWN0aW9uUmVjdAotCi1AcHJvcGVydHkgKG5vbmF0b21pYywgcmV0YWluKSBX
ZWJTZWxlY3Rpb25SZWN0ICp3ZWJSZWN0OwotCi0rIChOU0FycmF5ICopdGV4dFNlbGVjdGlvblJl
Y3RzV2l0aFdlYlJlY3RzOihOU0FycmF5ICopd2ViUmVjdHM7Ci0KLUBlbmQKIAogQGludGVyZmFj
ZSBXS0F1dG9jb3JyZWN0aW9uUmVjdHMgOiBVSVdLQXV0b2NvcnJlY3Rpb25SZWN0cwogKyAoV0tB
dXRvY29ycmVjdGlvblJlY3RzICopYXV0b2NvcnJlY3Rpb25SZWN0c1dpdGhGaXJzdENHUmVjdDoo
Q0dSZWN0KWZpcnN0UmVjdCBsYXN0Q0dSZWN0OihDR1JlY3QpbGFzdFJlY3Q7CkBAIC0yMzAwLDcg
KzIyOTQsNyBAQCAtIChOU0FycmF5PE5TVmFsdWUgKj4gKilfdWlUZXh0U2VsZWN0aW9uUmVjdHMK
IAogICAgIGlmIChfdGV4dEludGVyYWN0aW9uQXNzaXN0YW50KSB7CiAgICAgICAgIGZvciAoV0tU
ZXh0U2VsZWN0aW9uUmVjdCAqc2VsZWN0aW9uUmVjdCBpbiBbX3RleHRJbnRlcmFjdGlvbkFzc2lz
dGFudCB2YWx1ZUZvcktleVBhdGg6QCJzZWxlY3Rpb25WaWV3LnNlbGVjdGlvbi5zZWxlY3Rpb25S
ZWN0cyJdKQotICAgICAgICAgICAgW3RleHRTZWxlY3Rpb25SZWN0cyBhZGRPYmplY3Q6W05TVmFs
dWUgdmFsdWVXaXRoQ0dSZWN0OnNlbGVjdGlvblJlY3Qud2ViUmVjdC5yZWN0XV07CisgICAgICAg
ICAgICBbdGV4dFNlbGVjdGlvblJlY3RzIGFkZE9iamVjdDpbTlNWYWx1ZSB2YWx1ZVdpdGhDR1Jl
Y3Q6c2VsZWN0aW9uUmVjdC5yZWN0XV07CiAgICAgfQogCiAgICAgcmV0dXJuIHRleHRTZWxlY3Rp
b25SZWN0czsKQEAgLTQ0NjYsNiArNDQ2MCwxNiBAQCAtICh2b2lkKXJlcGxhY2VSYW5nZTooVUlU
ZXh0UmFuZ2UgKilyYW5nZSB3aXRoVGV4dDooTlNTdHJpbmcgKil0ZXh0CiB7CiB9CiAKK3N0YXRp
YyBOU0FycmF5PFdLVGV4dFNlbGVjdGlvblJlY3QgKj4qIHdrVGV4dFNlbGVjdGlvblJlY3RzKGNv
bnN0IFZlY3RvcjxXZWJDb3JlOjpTZWxlY3Rpb25SZWN0PiYgY29yZVJlY3RzKQoreworICAgIGF1
dG8gcmVjdHMgPSBhZG9wdE5TKFtbTlNNdXRhYmxlQXJyYXkgYWxsb2NdIGluaXRXaXRoQ2FwYWNp
dHk6Y29yZVJlY3RzLnNpemUoKV0pOworICAgIGZvciAoYXV0byYgY29yZVJlY3QgOiBjb3JlUmVj
dHMpIHsKKyAgICAgICAgYXV0byB3a1RleHRTZWxlY3Rpb25SZWN0ID0gYWRvcHROUyhbW1dLVGV4
dFNlbGVjdGlvblJlY3QgYWxsb2NdIGluaXRXaXRoU2VsZWN0aW9uUmVjdDpjb3JlUmVjdF0pOwor
ICAgICAgICBbcmVjdHMgYWRkT2JqZWN0OndrVGV4dFNlbGVjdGlvblJlY3QuZ2V0KCldOworICAg
IH0KKyAgICByZXR1cm4gcmVjdHMuYXV0b3JlbGVhc2UoKTsKK30KKwogLSAoVUlUZXh0UmFuZ2Ug
KilzZWxlY3RlZFRleHRSYW5nZQogewogICAgIGlmIChfcGFnZS0+ZWRpdG9yU3RhdGUoKS5zZWxl
Y3Rpb25Jc05vbmUgfHwgX3BhZ2UtPmVkaXRvclN0YXRlKCkuaXNNaXNzaW5nUG9zdExheW91dERh
dGEpCkBAIC00NTAzLDcgKzQ1MDcsNyBAQCAtIChVSVRleHRSYW5nZSAqKXNlbGVjdGVkVGV4dFJh
bmdlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzRWRpdGFibGU6X3BhZ2UtPmVk
aXRvclN0YXRlKCkuaXNDb250ZW50RWRpdGFibGUKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHN0YXJ0UmVjdDpzdGFydFJlY3QKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgZW5kUmVjdDplbmRSZWN0Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0
aW9uUmVjdHM6W3NlbGYgd2ViU2VsZWN0aW9uUmVjdHNdCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgc2VsZWN0aW9uUmVjdHM6d2tUZXh0U2VsZWN0aW9uUmVjdHMoX3BhZ2UtPmVkaXRvclN0
YXRlKCkucG9zdExheW91dERhdGEoKS5zZWxlY3Rpb25SZWN0cykKICAgICAgICAgICAgICAgICAg
ICAgICAgIHNlbGVjdGVkVGV4dExlbmd0aDpwb3N0TGF5b3V0RWRpdG9yU3RhdGVEYXRhLnNlbGVj
dGVkVGV4dExlbmd0aF07CiB9CiAKQEAgLTQ1MTQsNyArNDUxOCw3IEBAIC0gKENHUmVjdCljYXJl
dFJlY3RGb3JQb3NpdGlvbjooVUlUZXh0UG9zaXRpb24gKilwb3NpdGlvbgogCiAtIChOU0FycmF5
ICopc2VsZWN0aW9uUmVjdHNGb3JSYW5nZTooVUlUZXh0UmFuZ2UgKilyYW5nZQogewotICAgIHJl
dHVybiBbV0tUZXh0U2VsZWN0aW9uUmVjdCB0ZXh0U2VsZWN0aW9uUmVjdHNXaXRoV2ViUmVjdHM6
KChXS1RleHRSYW5nZSAqKXJhbmdlKS5zZWxlY3Rpb25SZWN0c107CisgICAgcmV0dXJuIFsoV0tU
ZXh0UmFuZ2UgKilyYW5nZSBzZWxlY3Rpb25SZWN0c107CiB9CiAKIC0gKHZvaWQpc2V0U2VsZWN0
ZWRUZXh0UmFuZ2U6KFVJVGV4dFJhbmdlICopcmFuZ2UKQEAgLTkzMDQsNyArOTMwOCw4IEBAIEBl
bmQKIAogI2VuZGlmIC8vIEhBVkUoTElOS19QUkVWSUVXKQogCi0vLyBVSVRleHRSYW5nZSwgVUlU
ZXh0UG9zaXRpb24gYW5kIFVJVGV4dFNlbGVjdGlvblJlY3QgaW1wbGVtZW50YXRpb25zIGZvciBX
SzIKKy8vIFVJVGV4dFJhbmdlIGFuZCBVSVRleHRQb3NpdGlvbiBpbXBsZW1lbnRhdGlvbnMgZm9y
IFdLMgorLy8gRklYTUU6IE1vdmUgdGhlc2Ugb3V0IGludG8gc2VwYXJhdGUgZmlsZXMuCiAKIEBp
bXBsZW1lbnRhdGlvbiBXS1RleHRSYW5nZSAoVUlUZXh0SW5wdXRBZGRpdGlvbnMpCiAKQEAgLTk0
MjAsNzEgKzk0MjUsNiBAQCAtIChOU1N0cmluZyAqKWRlc2NyaXB0aW9uCiAKIEBlbmQKIAotQGlt
cGxlbWVudGF0aW9uIFdLVGV4dFNlbGVjdGlvblJlY3QKLQotLSAoaWQpaW5pdFdpdGhXZWJSZWN0
OihXZWJTZWxlY3Rpb25SZWN0ICopd1JlY3QKLXsKLSAgICBzZWxmID0gW3N1cGVyIGluaXRdOwot
ICAgIGlmIChzZWxmKQotICAgICAgICBzZWxmLndlYlJlY3QgPSB3UmVjdDsKLQotICAgIHJldHVy
biBzZWxmOwotfQotCi0tICh2b2lkKWRlYWxsb2MKLXsKLSAgICBzZWxmLndlYlJlY3QgPSBuaWw7
Ci0gICAgW3N1cGVyIGRlYWxsb2NdOwotfQotCi0vLyBGSVhNRTogd2UgYXJlIHVzaW5nIHRoaXMg
aW1wbGVtZW50YXRpb24gZm9yIG5vdwotLy8gdGhhdCB1c2VzIFdlYlNlbGVjdGlvblJlY3QsIGJ1
dCB3ZSB3YW50IHRvIHByb3ZpZGUgb3VyIG93bgotLy8gYmFzZWQgb24gV2ViQ29yZTo6U2VsZWN0
aW9uUmVjdC4KLQotKyAoTlNBcnJheSAqKXRleHRTZWxlY3Rpb25SZWN0c1dpdGhXZWJSZWN0czoo
TlNBcnJheSAqKXdlYlJlY3RzCi17Ci0gICAgTlNNdXRhYmxlQXJyYXkgKmFycmF5ID0gW05TTXV0
YWJsZUFycmF5IGFycmF5V2l0aENhcGFjaXR5OndlYlJlY3RzLmNvdW50XTsKLSAgICBmb3IgKFdl
YlNlbGVjdGlvblJlY3QgKndlYlJlY3QgaW4gd2ViUmVjdHMpIHsKLSAgICAgICAgUmV0YWluUHRy
PFdLVGV4dFNlbGVjdGlvblJlY3Q+IHJlY3QgPSBhZG9wdE5TKFtbV0tUZXh0U2VsZWN0aW9uUmVj
dCBhbGxvY10gaW5pdFdpdGhXZWJSZWN0OndlYlJlY3RdKTsKLSAgICAgICAgW2FycmF5IGFkZE9i
amVjdDpyZWN0LmdldCgpXTsKLSAgICB9Ci0gICAgcmV0dXJuIGFycmF5OwotfQotCi0tIChDR1Jl
Y3QpcmVjdAotewotICAgIHJldHVybiBfd2ViUmVjdC5yZWN0OwotfQotCi1BTExPV19ERVBSRUNB
VEVEX0RFQ0xBUkFUSU9OU19CRUdJTgotLSAoVUlUZXh0V3JpdGluZ0RpcmVjdGlvbil3cml0aW5n
RGlyZWN0aW9uCi17Ci0gICAgcmV0dXJuIChVSVRleHRXcml0aW5nRGlyZWN0aW9uKV93ZWJSZWN0
LndyaXRpbmdEaXJlY3Rpb247Ci19Ci1BTExPV19ERVBSRUNBVEVEX0RFQ0xBUkFUSU9OU19FTkQK
LQotLSAoVUlUZXh0UmFuZ2UgKilyYW5nZQotewotICAgIHJldHVybiBuaWw7Ci19Ci0KLS0gKEJP
T0wpY29udGFpbnNTdGFydAotewotICAgIHJldHVybiBfd2ViUmVjdC5jb250YWluc1N0YXJ0Owot
fQotCi0tIChCT09MKWNvbnRhaW5zRW5kCi17Ci0gICAgcmV0dXJuIF93ZWJSZWN0LmNvbnRhaW5z
RW5kOwotfQotCi0tIChCT09MKWlzVmVydGljYWwKLXsKLSAgICByZXR1cm4gIV93ZWJSZWN0Lmlz
SG9yaXpvbnRhbDsKLX0KLQotQGVuZAotCiBAaW1wbGVtZW50YXRpb24gV0tBdXRvY29ycmVjdGlv
blJlY3RzCiAKICsgKFdLQXV0b2NvcnJlY3Rpb25SZWN0cyAqKWF1dG9jb3JyZWN0aW9uUmVjdHNX
aXRoRmlyc3RDR1JlY3Q6KENHUmVjdClmaXJzdFJlY3QgbGFzdENHUmVjdDooQ0dSZWN0KWxhc3RS
ZWN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tUZXh0U2VsZWN0
aW9uUmVjdC5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLVGV4dFNlbGVjdGlvblJl
Y3QuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uMTA5NDZkZDU2ODYK
LS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tUZXh0U2Vs
ZWN0aW9uUmVjdC5oCkBAIC0wLDAgKzEsMzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAg
QXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFT
IElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVU
T1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09E
UyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNT
CisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRP
UlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YK
KyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UK
KworI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCisKKyNpbXBvcnQgPFVJS2l0L1VJS2l0Lmg+CisK
K0BpbnRlcmZhY2UgV0tUZXh0U2VsZWN0aW9uUmVjdCA6IFVJVGV4dFNlbGVjdGlvblJlY3QKKwor
LSAoaW5zdGFuY2V0eXBlKWluaXRXaXRoU2VsZWN0aW9uUmVjdDooY29uc3QgV2ViQ29yZTo6U2Vs
ZWN0aW9uUmVjdCYpc2VsZWN0aW9uUmVjdDsKKworQGVuZAorCisjZW5kaWYgLy8gUExBVEZPUk0o
SU9TX0ZBTUlMWSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS1Rl
eHRTZWxlY3Rpb25SZWN0Lm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLVGV4dFNl
bGVjdGlvblJlY3QubW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmI5
NTMyMzhmYjJkCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9z
L1dLVGV4dFNlbGVjdGlvblJlY3QubW0KQEAgLTAsMCArMSw4MSBAQAorLyoKKyAqIENvcHlyaWdo
dCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNp
bXBvcnQgImNvbmZpZy5oIgorI2ltcG9ydCAiV0tUZXh0U2VsZWN0aW9uUmVjdC5oIgorCisjaWYg
UExBVEZPUk0oSU9TX0ZBTUlMWSkKKworI2ltcG9ydCA8V2ViQ29yZS9TZWxlY3Rpb25SZWN0Lmg+
CisKK0BpbXBsZW1lbnRhdGlvbiBXS1RleHRTZWxlY3Rpb25SZWN0Cit7CisgICAgV2ViQ29yZTo6
U2VsZWN0aW9uUmVjdCBfc2VsZWN0aW9uUmVjdDsKK30KKworLSAoaW5zdGFuY2V0eXBlKWluaXRX
aXRoU2VsZWN0aW9uUmVjdDooY29uc3QgV2ViQ29yZTo6U2VsZWN0aW9uUmVjdCYpc2VsZWN0aW9u
UmVjdAoreworICAgIGlmICghKHNlbGYgPSBbc3VwZXIgaW5pdF0pKQorICAgICAgICByZXR1cm4g
bmlsOworICAgIF9zZWxlY3Rpb25SZWN0ID0gc2VsZWN0aW9uUmVjdDsKKyAgICByZXR1cm4gc2Vs
ZjsKK30KKworLSAoQ0dSZWN0KXJlY3QKK3sKKyAgICByZXR1cm4gX2NvcmVTZWxlY3Rpb25SZWN0
LnJlY3QoKTsKK30KKworQUxMT1dfREVQUkVDQVRFRF9ERUNMQVJBVElPTlNfQkVHSU4KKy0gKFVJ
VGV4dFdyaXRpbmdEaXJlY3Rpb24pd3JpdGluZ0RpcmVjdGlvbgoreworICAgIGF1dG8gd2tXcml0
aW5nRGlyZWN0aW9uID0gX2NvcmVTZWxlY3Rpb25SZWN0LmRpcmVjdGlvbigpID09IFdlYkNvcmU6
OlRleHREaXJlY3Rpb246OkxUUiA/IFdLV3JpdGluZ0RpcmVjdGlvbkxlZnRUb1JpZ2h0IDogV0tX
cml0aW5nRGlyZWN0aW9uUmlnaHRUb0xlZnQ7CisgICAgcmV0dXJuIChVSVRleHRXcml0aW5nRGly
ZWN0aW9uKXdrV3JpdGluZ0RpcmVjdGlvbjsKK30KK0FMTE9XX0RFUFJFQ0FURURfREVDTEFSQVRJ
T05TX0VORAorCistIChVSVRleHRSYW5nZSAqKXJhbmdlCit7CisgICAgcmV0dXJuIG5pbDsKK30K
KworLSAoQk9PTCljb250YWluc1N0YXJ0Cit7CisgICAgcmV0dXJuIF9zZWxlY3Rpb25SZWN0LmNv
bnRhaW5zU3RhcnQoKTsKK30KKworLSAoQk9PTCljb250YWluc0VuZAoreworICAgIHJldHVybiBf
c2VsZWN0aW9uUmVjdC5jb250YWluc0VuZCgpOworfQorCistIChCT09MKWlzVmVydGljYWwKK3sK
KyAgICByZXR1cm4gIV9zZWxlY3Rpb25SZWN0LmlzSG9yaXpvbnRhbCgpOworfQorCitAZW5kCisK
KyNlbmRpZiAvLyBQTEFURk9STShJT1NfRkFNSUxZKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggMTVjNTI0ZjM2MjEuLjRjYTY4MzIyYzkz
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oK
QEAgLTE3MzQsNiArMTczNCw3IEBACiAJCUNFMUEwQkQyMUE0OEU2QzYwMDU0RUY3NCAvKiBBc3Nl
cnRpb25TZXJ2aWNlc1NQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQ0UxQTBCQ0MxQTQ4RTZDNjAwNTRFRjc0IC8qIEFzc2VydGlvblNlcnZpY2VzU1BJ
LmggKi87IH07CiAJCUNFMUEwQkQ2MUE0OEU2QzYwMDU0RUY3NCAvKiBUQ0NTUEkuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENFMUEwQkQwMUE0OEU2QzYw
MDU0RUY3NCAvKiBUQ0NTUEkuaCAqLzsgfTsKIAkJQ0UxQTBCRDcxQTQ4RTZDNjAwNTRFRjc0IC8q
IFRleHRJbnB1dFNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQ0UxQTBCRDExQTQ4RTZDNjAwNTRFRjc0IC8qIFRleHRJbnB1dFNQSS5oICovOyB9Owor
CQlDRTQ1OTQ1QzI0MEY4ODU1MDA3ODAxOUYgLyogV0tUZXh0U2VsZWN0aW9uUmVjdC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0U0NTk0NUEyNDBGODVC
OTAwNzgwMTlGIC8qIFdLVGV4dFNlbGVjdGlvblJlY3QuaCAqLzsgfTsKIAkJQ0U1NTBFMTUyMjgz
NzUyMjAwRDI4NzkxIC8qIEluc2VydFRleHRPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRTU1MEUxMjIyODM3M0M4MDBEMjg3OTEgLyogSW5z
ZXJ0VGV4dE9wdGlvbnMuaCAqLzsgfTsKIAkJQ0U1QjRDODgyMUI3M0Q4NzAwMjJFNjRGIC8qIFdL
U3ludGhldGljRmxhZ3NDaGFuZ2VkV2ViRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENFNUI0Qzg2MjFCNzNEODcwMDIyRTY0RiAvKiBXS1N5bnRo
ZXRpY0ZsYWdzQ2hhbmdlZFdlYkV2ZW50LmggKi87IH07CiAJCUNFNzBFRTVEMjI0NDJCRDAwMEUw
QUYwRiAvKiBXS0Zvcm1QZXJpcGhlcmFsQmFzZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQ0U3MEVFNUMyMjQ0MkJEMDAwRTBBRjBGIC8qIFdLRm9ybVBl
cmlwaGVyYWxCYXNlLmggKi87IH07CkBAIC01MDUwLDYgKzUwNTEsOCBAQAogCQlDRTFBMEJDQzFB
NDhFNkM2MDA1NEVGNzQgLyogQXNzZXJ0aW9uU2VydmljZXNTUEkuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gQXNzZXJ0aW9uU2VydmljZXNTUEkuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJQ0UxQTBCRDAxQTQ4RTZDNjAwNTRFRjc0IC8qIFRDQ1NQSS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBUQ0NTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJQ0UxQTBCRDExQTQ4RTZDNjAwNTRFRjc0IC8qIFRleHRJbnB1dFNQSS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBUZXh0SW5wdXRTUEkuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0U0NTk0NUEyNDBGODVCOTAwNzgwMTlGIC8qIFdLVGV4dFNl
bGVjdGlvblJlY3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gV0tUZXh0U2VsZWN0aW9uUmVjdC5oOyBwYXRo
ID0gaW9zL1dLVGV4dFNlbGVjdGlvblJlY3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQ0U0NTk0NUIyNDBGODVCOTAwNzgwMTlGIC8qIFdLVGV4dFNlbGVjdGlvblJlY3QubW0gKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5vYmpjcHA7IG5hbWUgPSBXS1RleHRTZWxlY3Rpb25SZWN0Lm1tOyBwYXRoID0gaW9zL1dL
VGV4dFNlbGVjdGlvblJlY3QubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNFNTUw
RTEyMjI4MzczQzgwMEQyODc5MSAvKiBJbnNlcnRUZXh0T3B0aW9ucy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBJbnNlcnRUZXh0T3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDRTU1
MEUxMzIyODM3NDQ0MDBEMjg3OTEgLyogSW5zZXJ0VGV4dE9wdGlvbnMuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSW5zZXJ0VGV4dE9wdGlvbnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQlDRTVCNEM4NjIxQjczRDg3MDAyMkU2NEYgLyogV0tTeW50aGV0aWNGbGFnc0NoYW5nZWRX
ZWJFdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBXS1N5bnRoZXRpY0ZsYWdzQ2hhbmdlZFdlYkV2ZW50
Lmg7IHBhdGggPSBpb3MvV0tTeW50aGV0aWNGbGFnc0NoYW5nZWRXZWJFdmVudC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwpAQCAtNjc5NSw2ICs2Nzk4LDggQEAKIAkJCQkyNkYxMEJFNzE5
MTg3RTJFMDAxRDBFNjggLyogV0tTeW50aGV0aWNUYXBHZXN0dXJlUmVjb2duaXplci5tbSAqLywK
IAkJCQkzMTZCOEI2MjIwNTRCNTU4MDBCRDRBNjIgLyogV0tTeXN0ZW1QcmV2aWV3Vmlldy5oICov
LAogCQkJCTMxNkI4QjYxMjA1NEI1NTgwMEJENEE2MiAvKiBXS1N5c3RlbVByZXZpZXdWaWV3Lm1t
ICovLAorCQkJCUNFNDU5NDVBMjQwRjg1QjkwMDc4MDE5RiAvKiBXS1RleHRTZWxlY3Rpb25SZWN0
LmggKi8sCisJCQkJQ0U0NTk0NUIyNDBGODVCOTAwNzgwMTlGIC8qIFdLVGV4dFNlbGVjdGlvblJl
Y3QubW0gKi8sCiAJCQkJNzFBNjc2QTQyMkM2MjMxODAwN0Q2Mjk1IC8qIFdLVG91Y2hBY3Rpb25H
ZXN0dXJlUmVjb2duaXplci5oICovLAogCQkJCTcxQTY3NkE1MjJDNjIzMTgwMDdENjI5NSAvKiBX
S1RvdWNoQWN0aW9uR2VzdHVyZVJlY29nbml6ZXIubW0gKi8sCiAJCQkJMkQxRTgyMjEyMTZGRkY1
MDAwQTE1MjY1IC8qIFdLV2ViRXZlbnQuaCAqLywKQEAgLTExMzQ3LDYgKzExMzUyLDcgQEAKIAkJ
CQkyREQ2N0EzNTFCRDg2MTA2MDA1M0IyNTEgLyogV0tUZXh0RmluZGVyQ2xpZW50LmggaW4gSGVh
ZGVycyAqLywKIAkJCQlGNEQ1RjUxRDIwNjA4N0ExMDAzOEJCQTggLyogV0tUZXh0SW5wdXRMaXN0
Vmlld0NvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTBGQ0I0RTY4MThCQkUzRDkwMDBG
Q0ZDOSAvKiBXS1RleHRJbnB1dFdpbmRvd0NvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUNFNDU5NDVDMjQwRjg4NTUwMDc4MDE5RiAvKiBXS1RleHRTZWxlY3Rpb25SZWN0LmggaW4gSGVh
ZGVycyAqLywKIAkJCQkyRUI2RkMwMTIwMzAyMTk2MDAxN0U2MTkgLyogV0tUaW1lUGlja2VyVmll
d0NvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTcxQTY3NkE2MjJDNjIzMjUwMDdENjI5
NSAvKiBXS1RvdWNoQWN0aW9uR2VzdHVyZVJlY29nbml6ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUJDNDA3NjA4MTI0RkYwMjcwMDY4RjIwQSAvKiBXS1R5cGUuaCBpbiBIZWFkZXJzICovLAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>392381</attachid>
            <date>2020-03-04 00:00:23 -0800</date>
            <delta_ts>2020-03-04 00:14:51 -0800</delta_ts>
            <desc>For the bots</desc>
            <filename>Bug208561+208563.patch</filename>
            <type>text/plain</type>
            <size>16004</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKaW5kZXggN2Y0OTc3ZjM3MjcuLmI3NzdhNDQ0MDQyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsx
LDM3IEBACisyMDIwLTAzLTAzICBEYW5pZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KKwor
ICAgICAgICBNb3ZlIFdLVGV4dFNlbGVjdGlvblJlY3QgaW50byBpdHMgb3duIGZpbGUKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwODU2MQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdLVGV4dFNlbGVjdGlv
blJlY3QgaXMgY3VycmVudGx5IGRlZmluZWQgaW4gV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1t
LiBTZXBhcmF0ZSBpdAorICAgICAgICBvdXQgaW50byBpdHMgb3duIGZpbGUgdG8gaW1wcm92ZSBw
cm9qZWN0IG9yZ2FuaXphdGlvbiBhbmQgZGUtY2x1dHRlciBXS0NvbnRlbnRWaWV3SW50ZXJhY3Rp
b24ubW0uCisKKyAgICAgICAgKiBTb3VyY2VzQ29jb2EudHh0OgorICAgICAgICAqIFVJUHJvY2Vz
cy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tOgorICAgICAgICAoLVtXS1RleHRTZWxl
Y3Rpb25SZWN0IGluaXRXaXRoV2ViUmVjdDpdKTogRGVsZXRlZC4KKyAgICAgICAgKC1bV0tUZXh0
U2VsZWN0aW9uUmVjdCBkZWFsbG9jXSk6IERlbGV0ZWQuCisgICAgICAgICgrW1dLVGV4dFNlbGVj
dGlvblJlY3QgdGV4dFNlbGVjdGlvblJlY3RzV2l0aFdlYlJlY3RzOl0pOiBEZWxldGVkLgorICAg
ICAgICAoLVtXS1RleHRTZWxlY3Rpb25SZWN0IHJlY3RdKTogRGVsZXRlZC4KKyAgICAgICAgKC1b
V0tUZXh0U2VsZWN0aW9uUmVjdCB3cml0aW5nRGlyZWN0aW9uXSk6IERlbGV0ZWQuCisgICAgICAg
ICgtW1dLVGV4dFNlbGVjdGlvblJlY3QgcmFuZ2VdKTogRGVsZXRlZC4KKyAgICAgICAgKC1bV0tU
ZXh0U2VsZWN0aW9uUmVjdCBjb250YWluc1N0YXJ0XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dL
VGV4dFNlbGVjdGlvblJlY3QgY29udGFpbnNFbmRdKTogRGVsZXRlZC4KKyAgICAgICAgKC1bV0tU
ZXh0U2VsZWN0aW9uUmVjdCBpc1ZlcnRpY2FsXSk6IERlbGV0ZWQuCisgICAgICAgICogVUlQcm9j
ZXNzL2lvcy9XS1RleHRTZWxlY3Rpb25SZWN0Lmg6IEFkZGVkLgorICAgICAgICAqIFVJUHJvY2Vz
cy9pb3MvV0tUZXh0U2VsZWN0aW9uUmVjdC5tbTogQWRkZWQuCisgICAgICAgICgtW1dLVGV4dFNl
bGVjdGlvblJlY3QgaW5pdFdpdGhXZWJSZWN0Ol0pOgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rp
b25SZWN0IGRlYWxsb2NdKToKKyAgICAgICAgKCtbV0tUZXh0U2VsZWN0aW9uUmVjdCB0ZXh0U2Vs
ZWN0aW9uUmVjdHNXaXRoV2ViUmVjdHM6XSk6CisgICAgICAgICgtW1dLVGV4dFNlbGVjdGlvblJl
Y3QgcmVjdF0pOgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rpb25SZWN0IHdyaXRpbmdEaXJlY3Rp
b25dKToKKyAgICAgICAgKC1bV0tUZXh0U2VsZWN0aW9uUmVjdCByYW5nZV0pOgorICAgICAgICAo
LVtXS1RleHRTZWxlY3Rpb25SZWN0IGNvbnRhaW5zU3RhcnRdKToKKyAgICAgICAgKC1bV0tUZXh0
U2VsZWN0aW9uUmVjdCBjb250YWluc0VuZF0pOgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rpb25S
ZWN0IGlzVmVydGljYWxdKToKKyAgICAgICAgKiBXZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvajoKKwogMjAyMC0wMy0wMyAgRGV2aW4gUm91c3NvICA8ZHJvdXNzb0BhcHBsZS5jb20+CiAK
ICAgICAgICAgV2ViIEluc3BlY3RvcjogcmUtYWRkIGBJbnNwZWN0b3JGcm9udGVuZEhvc3RgIHN1
cHBvcnQgZm9yIG1vdmluZyB0aGUgaW5zcGVjdGVkIHdpbmRvdwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9Tb3VyY2VzQ29jb2EudHh0IGIvU291cmNlL1dlYktpdC9Tb3VyY2VzQ29jb2EudHh0
CmluZGV4IDBhNzc2OTM5ODc5Li4yNWNiYTk3M2I2NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9Tb3VyY2VzQ29jb2EudHh0CisrKyBiL1NvdXJjZS9XZWJLaXQvU291cmNlc0NvY29hLnR4dApA
QCAtNDcxLDYgKzQ3MSw3IEBAIFVJUHJvY2Vzcy9pb3MvV0tTeW50aGV0aWNGbGFnc0NoYW5nZWRX
ZWJFdmVudC5tbQogVUlQcm9jZXNzL2lvcy9XS1N5bnRoZXRpY1RhcEdlc3R1cmVSZWNvZ25pemVy
Lm1tCiBVSVByb2Nlc3MvaW9zL1dLU3lzdGVtUHJldmlld1ZpZXcubW0KIFVJUHJvY2Vzcy9pb3Mv
V0tUb3VjaEFjdGlvbkdlc3R1cmVSZWNvZ25pemVyLm1tCitVSVByb2Nlc3MvaW9zL1dLVGV4dFNl
bGVjdGlvblJlY3QubW0KIFVJUHJvY2Vzcy9pb3MvV0tXZWJFdmVudC5tbQogCiBVSVByb2Nlc3Mv
TGF1bmNoZXIvbWFjL1Byb2Nlc3NMYXVuY2hlck1hYy5tbQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbSBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0KaW5kZXggODQy
MmQ1MzkzYzUuLjJhYzkwYjZhYjc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0KQEAgLTY1LDYgKzY1LDcgQEAK
ICNpbXBvcnQgIldLU2VsZWN0TWVudUxpc3RWaWV3Q29udHJvbGxlci5oIgogI2ltcG9ydCAiV0tT
eW50aGV0aWNGbGFnc0NoYW5nZWRXZWJFdmVudC5oIgogI2ltcG9ydCAiV0tUZXh0SW5wdXRMaXN0
Vmlld0NvbnRyb2xsZXIuaCIKKyNpbXBvcnQgIldLVGV4dFNlbGVjdGlvblJlY3QuaCIKICNpbXBv
cnQgIldLVGltZVBpY2tlclZpZXdDb250cm9sbGVyLmgiCiAjaW1wb3J0ICJXS1VJRGVsZWdhdGVQ
cml2YXRlLmgiCiAjaW1wb3J0ICJXS1dlYlZpZXdDb25maWd1cmF0aW9uLmgiCkBAIC0yOTAsMTMg
KzI5MSw2IEBAICsgKFdLVGV4dFBvc2l0aW9uICopdGV4dFBvc2l0aW9uV2l0aFJlY3Q6KENHUmVj
dClwb3NpdGlvblJlY3Q7CiAKIEBlbmQKIAotQGludGVyZmFjZSBXS1RleHRTZWxlY3Rpb25SZWN0
IDogVUlUZXh0U2VsZWN0aW9uUmVjdAotCi1AcHJvcGVydHkgKG5vbmF0b21pYywgcmV0YWluKSBX
ZWJTZWxlY3Rpb25SZWN0ICp3ZWJSZWN0OwotCi0rIChOU0FycmF5ICopdGV4dFNlbGVjdGlvblJl
Y3RzV2l0aFdlYlJlY3RzOihOU0FycmF5ICopd2ViUmVjdHM7Ci0KLUBlbmQKIAogQGludGVyZmFj
ZSBXS0F1dG9jb3JyZWN0aW9uUmVjdHMgOiBVSVdLQXV0b2NvcnJlY3Rpb25SZWN0cwogKyAoV0tB
dXRvY29ycmVjdGlvblJlY3RzICopYXV0b2NvcnJlY3Rpb25SZWN0c1dpdGhGaXJzdENHUmVjdDoo
Q0dSZWN0KWZpcnN0UmVjdCBsYXN0Q0dSZWN0OihDR1JlY3QpbGFzdFJlY3Q7CkBAIC0yMzAwLDcg
KzIyOTQsNyBAQCAtIChOU0FycmF5PE5TVmFsdWUgKj4gKilfdWlUZXh0U2VsZWN0aW9uUmVjdHMK
IAogICAgIGlmIChfdGV4dEludGVyYWN0aW9uQXNzaXN0YW50KSB7CiAgICAgICAgIGZvciAoV0tU
ZXh0U2VsZWN0aW9uUmVjdCAqc2VsZWN0aW9uUmVjdCBpbiBbX3RleHRJbnRlcmFjdGlvbkFzc2lz
dGFudCB2YWx1ZUZvcktleVBhdGg6QCJzZWxlY3Rpb25WaWV3LnNlbGVjdGlvbi5zZWxlY3Rpb25S
ZWN0cyJdKQotICAgICAgICAgICAgW3RleHRTZWxlY3Rpb25SZWN0cyBhZGRPYmplY3Q6W05TVmFs
dWUgdmFsdWVXaXRoQ0dSZWN0OnNlbGVjdGlvblJlY3Qud2ViUmVjdC5yZWN0XV07CisgICAgICAg
ICAgICBbdGV4dFNlbGVjdGlvblJlY3RzIGFkZE9iamVjdDpbTlNWYWx1ZSB2YWx1ZVdpdGhDR1Jl
Y3Q6c2VsZWN0aW9uUmVjdC5yZWN0XV07CiAgICAgfQogCiAgICAgcmV0dXJuIHRleHRTZWxlY3Rp
b25SZWN0czsKQEAgLTQ0NjYsNiArNDQ2MCwxNiBAQCAtICh2b2lkKXJlcGxhY2VSYW5nZTooVUlU
ZXh0UmFuZ2UgKilyYW5nZSB3aXRoVGV4dDooTlNTdHJpbmcgKil0ZXh0CiB7CiB9CiAKK3N0YXRp
YyBOU0FycmF5PFdLVGV4dFNlbGVjdGlvblJlY3QgKj4qIHdrVGV4dFNlbGVjdGlvblJlY3RzKGNv
bnN0IFZlY3RvcjxXZWJDb3JlOjpTZWxlY3Rpb25SZWN0PiYgY29yZVJlY3RzKQoreworICAgIGF1
dG8gcmVjdHMgPSBhZG9wdE5TKFtbTlNNdXRhYmxlQXJyYXkgYWxsb2NdIGluaXRXaXRoQ2FwYWNp
dHk6Y29yZVJlY3RzLnNpemUoKV0pOworICAgIGZvciAoYXV0byYgY29yZVJlY3QgOiBjb3JlUmVj
dHMpIHsKKyAgICAgICAgYXV0byB3a1RleHRTZWxlY3Rpb25SZWN0ID0gYWRvcHROUyhbW1dLVGV4
dFNlbGVjdGlvblJlY3QgYWxsb2NdIGluaXRXaXRoU2VsZWN0aW9uUmVjdDpjb3JlUmVjdF0pOwor
ICAgICAgICBbcmVjdHMgYWRkT2JqZWN0OndrVGV4dFNlbGVjdGlvblJlY3QuZ2V0KCldOworICAg
IH0KKyAgICByZXR1cm4gcmVjdHMuYXV0b3JlbGVhc2UoKTsKK30KKwogLSAoVUlUZXh0UmFuZ2Ug
KilzZWxlY3RlZFRleHRSYW5nZQogewogICAgIGlmIChfcGFnZS0+ZWRpdG9yU3RhdGUoKS5zZWxl
Y3Rpb25Jc05vbmUgfHwgX3BhZ2UtPmVkaXRvclN0YXRlKCkuaXNNaXNzaW5nUG9zdExheW91dERh
dGEpCkBAIC00NTAzLDcgKzQ1MDcsNyBAQCAtIChVSVRleHRSYW5nZSAqKXNlbGVjdGVkVGV4dFJh
bmdlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzRWRpdGFibGU6X3BhZ2UtPmVk
aXRvclN0YXRlKCkuaXNDb250ZW50RWRpdGFibGUKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHN0YXJ0UmVjdDpzdGFydFJlY3QKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgZW5kUmVjdDplbmRSZWN0Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0
aW9uUmVjdHM6W3NlbGYgd2ViU2VsZWN0aW9uUmVjdHNdCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgc2VsZWN0aW9uUmVjdHM6d2tUZXh0U2VsZWN0aW9uUmVjdHMoX3BhZ2UtPmVkaXRvclN0
YXRlKCkucG9zdExheW91dERhdGEoKS5zZWxlY3Rpb25SZWN0cykKICAgICAgICAgICAgICAgICAg
ICAgICAgIHNlbGVjdGVkVGV4dExlbmd0aDpwb3N0TGF5b3V0RWRpdG9yU3RhdGVEYXRhLnNlbGVj
dGVkVGV4dExlbmd0aF07CiB9CiAKQEAgLTQ1MTQsNyArNDUxOCw3IEBAIC0gKENHUmVjdCljYXJl
dFJlY3RGb3JQb3NpdGlvbjooVUlUZXh0UG9zaXRpb24gKilwb3NpdGlvbgogCiAtIChOU0FycmF5
ICopc2VsZWN0aW9uUmVjdHNGb3JSYW5nZTooVUlUZXh0UmFuZ2UgKilyYW5nZQogewotICAgIHJl
dHVybiBbV0tUZXh0U2VsZWN0aW9uUmVjdCB0ZXh0U2VsZWN0aW9uUmVjdHNXaXRoV2ViUmVjdHM6
KChXS1RleHRSYW5nZSAqKXJhbmdlKS5zZWxlY3Rpb25SZWN0c107CisgICAgcmV0dXJuIFsoV0tU
ZXh0UmFuZ2UgKilyYW5nZSBzZWxlY3Rpb25SZWN0c107CiB9CiAKIC0gKHZvaWQpc2V0U2VsZWN0
ZWRUZXh0UmFuZ2U6KFVJVGV4dFJhbmdlICopcmFuZ2UKQEAgLTkzMDQsNyArOTMwOCw4IEBAIEBl
bmQKIAogI2VuZGlmIC8vIEhBVkUoTElOS19QUkVWSUVXKQogCi0vLyBVSVRleHRSYW5nZSwgVUlU
ZXh0UG9zaXRpb24gYW5kIFVJVGV4dFNlbGVjdGlvblJlY3QgaW1wbGVtZW50YXRpb25zIGZvciBX
SzIKKy8vIFVJVGV4dFJhbmdlIGFuZCBVSVRleHRQb3NpdGlvbiBpbXBsZW1lbnRhdGlvbnMgZm9y
IFdLMgorLy8gRklYTUU6IE1vdmUgdGhlc2Ugb3V0IGludG8gc2VwYXJhdGUgZmlsZXMuCiAKIEBp
bXBsZW1lbnRhdGlvbiBXS1RleHRSYW5nZSAoVUlUZXh0SW5wdXRBZGRpdGlvbnMpCiAKQEAgLTk0
MjAsNzEgKzk0MjUsNiBAQCAtIChOU1N0cmluZyAqKWRlc2NyaXB0aW9uCiAKIEBlbmQKIAotQGlt
cGxlbWVudGF0aW9uIFdLVGV4dFNlbGVjdGlvblJlY3QKLQotLSAoaWQpaW5pdFdpdGhXZWJSZWN0
OihXZWJTZWxlY3Rpb25SZWN0ICopd1JlY3QKLXsKLSAgICBzZWxmID0gW3N1cGVyIGluaXRdOwot
ICAgIGlmIChzZWxmKQotICAgICAgICBzZWxmLndlYlJlY3QgPSB3UmVjdDsKLQotICAgIHJldHVy
biBzZWxmOwotfQotCi0tICh2b2lkKWRlYWxsb2MKLXsKLSAgICBzZWxmLndlYlJlY3QgPSBuaWw7
Ci0gICAgW3N1cGVyIGRlYWxsb2NdOwotfQotCi0vLyBGSVhNRTogd2UgYXJlIHVzaW5nIHRoaXMg
aW1wbGVtZW50YXRpb24gZm9yIG5vdwotLy8gdGhhdCB1c2VzIFdlYlNlbGVjdGlvblJlY3QsIGJ1
dCB3ZSB3YW50IHRvIHByb3ZpZGUgb3VyIG93bgotLy8gYmFzZWQgb24gV2ViQ29yZTo6U2VsZWN0
aW9uUmVjdC4KLQotKyAoTlNBcnJheSAqKXRleHRTZWxlY3Rpb25SZWN0c1dpdGhXZWJSZWN0czoo
TlNBcnJheSAqKXdlYlJlY3RzCi17Ci0gICAgTlNNdXRhYmxlQXJyYXkgKmFycmF5ID0gW05TTXV0
YWJsZUFycmF5IGFycmF5V2l0aENhcGFjaXR5OndlYlJlY3RzLmNvdW50XTsKLSAgICBmb3IgKFdl
YlNlbGVjdGlvblJlY3QgKndlYlJlY3QgaW4gd2ViUmVjdHMpIHsKLSAgICAgICAgUmV0YWluUHRy
PFdLVGV4dFNlbGVjdGlvblJlY3Q+IHJlY3QgPSBhZG9wdE5TKFtbV0tUZXh0U2VsZWN0aW9uUmVj
dCBhbGxvY10gaW5pdFdpdGhXZWJSZWN0OndlYlJlY3RdKTsKLSAgICAgICAgW2FycmF5IGFkZE9i
amVjdDpyZWN0LmdldCgpXTsKLSAgICB9Ci0gICAgcmV0dXJuIGFycmF5OwotfQotCi0tIChDR1Jl
Y3QpcmVjdAotewotICAgIHJldHVybiBfd2ViUmVjdC5yZWN0OwotfQotCi1BTExPV19ERVBSRUNB
VEVEX0RFQ0xBUkFUSU9OU19CRUdJTgotLSAoVUlUZXh0V3JpdGluZ0RpcmVjdGlvbil3cml0aW5n
RGlyZWN0aW9uCi17Ci0gICAgcmV0dXJuIChVSVRleHRXcml0aW5nRGlyZWN0aW9uKV93ZWJSZWN0
LndyaXRpbmdEaXJlY3Rpb247Ci19Ci1BTExPV19ERVBSRUNBVEVEX0RFQ0xBUkFUSU9OU19FTkQK
LQotLSAoVUlUZXh0UmFuZ2UgKilyYW5nZQotewotICAgIHJldHVybiBuaWw7Ci19Ci0KLS0gKEJP
T0wpY29udGFpbnNTdGFydAotewotICAgIHJldHVybiBfd2ViUmVjdC5jb250YWluc1N0YXJ0Owot
fQotCi0tIChCT09MKWNvbnRhaW5zRW5kCi17Ci0gICAgcmV0dXJuIF93ZWJSZWN0LmNvbnRhaW5z
RW5kOwotfQotCi0tIChCT09MKWlzVmVydGljYWwKLXsKLSAgICByZXR1cm4gIV93ZWJSZWN0Lmlz
SG9yaXpvbnRhbDsKLX0KLQotQGVuZAotCiBAaW1wbGVtZW50YXRpb24gV0tBdXRvY29ycmVjdGlv
blJlY3RzCiAKICsgKFdLQXV0b2NvcnJlY3Rpb25SZWN0cyAqKWF1dG9jb3JyZWN0aW9uUmVjdHNX
aXRoRmlyc3RDR1JlY3Q6KENHUmVjdClmaXJzdFJlY3QgbGFzdENHUmVjdDooQ0dSZWN0KWxhc3RS
ZWN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tUZXh0U2VsZWN0
aW9uUmVjdC5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLVGV4dFNlbGVjdGlvblJl
Y3QuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uOGQ1OGZlMWZhNmIK
LS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tUZXh0U2Vs
ZWN0aW9uUmVjdC5oCkBAIC0wLDAgKzEsNDIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAg
QXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFT
IElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVU
T1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09E
UyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNT
CisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRP
UlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YK
KyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UK
KworI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCisKKyNpbXBvcnQgPFVJS2l0L1VJS2l0Lmg+CisK
K25hbWVzcGFjZSBXZWJDb3JlIHsKK2NsYXNzIFNlbGVjdGlvblJlY3Q7Cit9CisKK0BpbnRlcmZh
Y2UgV0tUZXh0U2VsZWN0aW9uUmVjdCA6IFVJVGV4dFNlbGVjdGlvblJlY3QKKworLSAoaW5zdGFu
Y2V0eXBlKWluaXRXaXRoU2VsZWN0aW9uUmVjdDooY29uc3QgV2ViQ29yZTo6U2VsZWN0aW9uUmVj
dCYpc2VsZWN0aW9uUmVjdDsKKworQGVuZAorCisjZW5kaWYgLy8gUExBVEZPUk0oSU9TX0ZBTUlM
WSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS1RleHRTZWxlY3Rp
b25SZWN0Lm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLVGV4dFNlbGVjdGlvblJl
Y3QubW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmI5NTMyMzhmYjJk
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLVGV4dFNl
bGVjdGlvblJlY3QubW0KQEAgLTAsMCArMSw4MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAy
MCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBg
QVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklC
VVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBvcnQgImNv
bmZpZy5oIgorI2ltcG9ydCAiV0tUZXh0U2VsZWN0aW9uUmVjdC5oIgorCisjaWYgUExBVEZPUk0o
SU9TX0ZBTUlMWSkKKworI2ltcG9ydCA8V2ViQ29yZS9TZWxlY3Rpb25SZWN0Lmg+CisKK0BpbXBs
ZW1lbnRhdGlvbiBXS1RleHRTZWxlY3Rpb25SZWN0Cit7CisgICAgV2ViQ29yZTo6U2VsZWN0aW9u
UmVjdCBfc2VsZWN0aW9uUmVjdDsKK30KKworLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRoU2VsZWN0
aW9uUmVjdDooY29uc3QgV2ViQ29yZTo6U2VsZWN0aW9uUmVjdCYpc2VsZWN0aW9uUmVjdAorewor
ICAgIGlmICghKHNlbGYgPSBbc3VwZXIgaW5pdF0pKQorICAgICAgICByZXR1cm4gbmlsOworICAg
IF9zZWxlY3Rpb25SZWN0ID0gc2VsZWN0aW9uUmVjdDsKKyAgICByZXR1cm4gc2VsZjsKK30KKwor
LSAoQ0dSZWN0KXJlY3QKK3sKKyAgICByZXR1cm4gX2NvcmVTZWxlY3Rpb25SZWN0LnJlY3QoKTsK
K30KKworQUxMT1dfREVQUkVDQVRFRF9ERUNMQVJBVElPTlNfQkVHSU4KKy0gKFVJVGV4dFdyaXRp
bmdEaXJlY3Rpb24pd3JpdGluZ0RpcmVjdGlvbgoreworICAgIGF1dG8gd2tXcml0aW5nRGlyZWN0
aW9uID0gX2NvcmVTZWxlY3Rpb25SZWN0LmRpcmVjdGlvbigpID09IFdlYkNvcmU6OlRleHREaXJl
Y3Rpb246OkxUUiA/IFdLV3JpdGluZ0RpcmVjdGlvbkxlZnRUb1JpZ2h0IDogV0tXcml0aW5nRGly
ZWN0aW9uUmlnaHRUb0xlZnQ7CisgICAgcmV0dXJuIChVSVRleHRXcml0aW5nRGlyZWN0aW9uKXdr
V3JpdGluZ0RpcmVjdGlvbjsKK30KK0FMTE9XX0RFUFJFQ0FURURfREVDTEFSQVRJT05TX0VORAor
CistIChVSVRleHRSYW5nZSAqKXJhbmdlCit7CisgICAgcmV0dXJuIG5pbDsKK30KKworLSAoQk9P
TCljb250YWluc1N0YXJ0Cit7CisgICAgcmV0dXJuIF9zZWxlY3Rpb25SZWN0LmNvbnRhaW5zU3Rh
cnQoKTsKK30KKworLSAoQk9PTCljb250YWluc0VuZAoreworICAgIHJldHVybiBfc2VsZWN0aW9u
UmVjdC5jb250YWluc0VuZCgpOworfQorCistIChCT09MKWlzVmVydGljYWwKK3sKKyAgICByZXR1
cm4gIV9zZWxlY3Rpb25SZWN0LmlzSG9yaXpvbnRhbCgpOworfQorCitAZW5kCisKKyNlbmRpZiAv
LyBQTEFURk9STShJT1NfRkFNSUxZKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJLaXQu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKaW5kZXggMTVjNTI0ZjM2MjEuLjRjYTY4MzIyYzkzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBi
L1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE3MzQs
NiArMTczNCw3IEBACiAJCUNFMUEwQkQyMUE0OEU2QzYwMDU0RUY3NCAvKiBBc3NlcnRpb25TZXJ2
aWNlc1NQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
Q0UxQTBCQ0MxQTQ4RTZDNjAwNTRFRjc0IC8qIEFzc2VydGlvblNlcnZpY2VzU1BJLmggKi87IH07
CiAJCUNFMUEwQkQ2MUE0OEU2QzYwMDU0RUY3NCAvKiBUQ0NTUEkuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENFMUEwQkQwMUE0OEU2QzYwMDU0RUY3NCAv
KiBUQ0NTUEkuaCAqLzsgfTsKIAkJQ0UxQTBCRDcxQTQ4RTZDNjAwNTRFRjc0IC8qIFRleHRJbnB1
dFNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0Ux
QTBCRDExQTQ4RTZDNjAwNTRFRjc0IC8qIFRleHRJbnB1dFNQSS5oICovOyB9OworCQlDRTQ1OTQ1
QzI0MEY4ODU1MDA3ODAxOUYgLyogV0tUZXh0U2VsZWN0aW9uUmVjdC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0U0NTk0NUEyNDBGODVCOTAwNzgwMTlG
IC8qIFdLVGV4dFNlbGVjdGlvblJlY3QuaCAqLzsgfTsKIAkJQ0U1NTBFMTUyMjgzNzUyMjAwRDI4
NzkxIC8qIEluc2VydFRleHRPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBDRTU1MEUxMjIyODM3M0M4MDBEMjg3OTEgLyogSW5zZXJ0VGV4dE9w
dGlvbnMuaCAqLzsgfTsKIAkJQ0U1QjRDODgyMUI3M0Q4NzAwMjJFNjRGIC8qIFdLU3ludGhldGlj
RmxhZ3NDaGFuZ2VkV2ViRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IENFNUI0Qzg2MjFCNzNEODcwMDIyRTY0RiAvKiBXS1N5bnRoZXRpY0ZsYWdz
Q2hhbmdlZFdlYkV2ZW50LmggKi87IH07CiAJCUNFNzBFRTVEMjI0NDJCRDAwMEUwQUYwRiAvKiBX
S0Zvcm1QZXJpcGhlcmFsQmFzZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQ0U3MEVFNUMyMjQ0MkJEMDAwRTBBRjBGIC8qIFdLRm9ybVBlcmlwaGVyYWxC
YXNlLmggKi87IH07CkBAIC01MDUwLDYgKzUwNTEsOCBAQAogCQlDRTFBMEJDQzFBNDhFNkM2MDA1
NEVGNzQgLyogQXNzZXJ0aW9uU2VydmljZXNTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gQXNzZXJ0aW9uU2VydmljZXNTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJQ0UxQTBCRDAxQTQ4RTZDNjAwNTRFRjc0IC8qIFRDQ1NQSS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBUQ0NTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJQ0UxQTBCRDExQTQ4RTZDNjAwNTRFRjc0IC8qIFRleHRJbnB1dFNQSS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBUZXh0SW5wdXRTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQ0U0NTk0NUEyNDBGODVCOTAwNzgwMTlGIC8qIFdLVGV4dFNlbGVjdGlvblJl
Y3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBuYW1lID0gV0tUZXh0U2VsZWN0aW9uUmVjdC5oOyBwYXRoID0gaW9zL1dL
VGV4dFNlbGVjdGlvblJlY3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0U0NTk0
NUIyNDBGODVCOTAwNzgwMTlGIC8qIFdLVGV4dFNlbGVjdGlvblJlY3QubW0gKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpj
cHA7IG5hbWUgPSBXS1RleHRTZWxlY3Rpb25SZWN0Lm1tOyBwYXRoID0gaW9zL1dLVGV4dFNlbGVj
dGlvblJlY3QubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNFNTUwRTEyMjI4Mzcz
QzgwMEQyODc5MSAvKiBJbnNlcnRUZXh0T3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbnNlcnRU
ZXh0T3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDRTU1MEUxMzIyODM3
NDQ0MDBEMjg3OTEgLyogSW5zZXJ0VGV4dE9wdGlvbnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SW5zZXJ0VGV4dE9wdGlvbnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDRTVC
NEM4NjIxQjczRDg3MDAyMkU2NEYgLyogV0tTeW50aGV0aWNGbGFnc0NoYW5nZWRXZWJFdmVudC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IG5hbWUgPSBXS1N5bnRoZXRpY0ZsYWdzQ2hhbmdlZFdlYkV2ZW50Lmg7IHBhdGgg
PSBpb3MvV0tTeW50aGV0aWNGbGFnc0NoYW5nZWRXZWJFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwpAQCAtNjc5NSw2ICs2Nzk4LDggQEAKIAkJCQkyNkYxMEJFNzE5MTg3RTJFMDAx
RDBFNjggLyogV0tTeW50aGV0aWNUYXBHZXN0dXJlUmVjb2duaXplci5tbSAqLywKIAkJCQkzMTZC
OEI2MjIwNTRCNTU4MDBCRDRBNjIgLyogV0tTeXN0ZW1QcmV2aWV3Vmlldy5oICovLAogCQkJCTMx
NkI4QjYxMjA1NEI1NTgwMEJENEE2MiAvKiBXS1N5c3RlbVByZXZpZXdWaWV3Lm1tICovLAorCQkJ
CUNFNDU5NDVBMjQwRjg1QjkwMDc4MDE5RiAvKiBXS1RleHRTZWxlY3Rpb25SZWN0LmggKi8sCisJ
CQkJQ0U0NTk0NUIyNDBGODVCOTAwNzgwMTlGIC8qIFdLVGV4dFNlbGVjdGlvblJlY3QubW0gKi8s
CiAJCQkJNzFBNjc2QTQyMkM2MjMxODAwN0Q2Mjk1IC8qIFdLVG91Y2hBY3Rpb25HZXN0dXJlUmVj
b2duaXplci5oICovLAogCQkJCTcxQTY3NkE1MjJDNjIzMTgwMDdENjI5NSAvKiBXS1RvdWNoQWN0
aW9uR2VzdHVyZVJlY29nbml6ZXIubW0gKi8sCiAJCQkJMkQxRTgyMjEyMTZGRkY1MDAwQTE1MjY1
IC8qIFdLV2ViRXZlbnQuaCAqLywKQEAgLTExMzQ3LDYgKzExMzUyLDcgQEAKIAkJCQkyREQ2N0Ez
NTFCRDg2MTA2MDA1M0IyNTEgLyogV0tUZXh0RmluZGVyQ2xpZW50LmggaW4gSGVhZGVycyAqLywK
IAkJCQlGNEQ1RjUxRDIwNjA4N0ExMDAzOEJCQTggLyogV0tUZXh0SW5wdXRMaXN0Vmlld0NvbnRy
b2xsZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTBGQ0I0RTY4MThCQkUzRDkwMDBGQ0ZDOSAvKiBX
S1RleHRJbnB1dFdpbmRvd0NvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUNFNDU5NDVD
MjQwRjg4NTUwMDc4MDE5RiAvKiBXS1RleHRTZWxlY3Rpb25SZWN0LmggaW4gSGVhZGVycyAqLywK
IAkJCQkyRUI2RkMwMTIwMzAyMTk2MDAxN0U2MTkgLyogV0tUaW1lUGlja2VyVmlld0NvbnRyb2xs
ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTcxQTY3NkE2MjJDNjIzMjUwMDdENjI5NSAvKiBXS1Rv
dWNoQWN0aW9uR2VzdHVyZVJlY29nbml6ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDNDA3NjA4
MTI0RkYwMjcwMDY4RjIwQSAvKiBXS1R5cGUuaCBpbiBIZWFkZXJzICovLAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>392382</attachid>
            <date>2020-03-04 00:14:51 -0800</date>
            <delta_ts>2020-03-04 00:30:07 -0800</delta_ts>
            <desc>For the bots</desc>
            <filename>Bug208561+208563.patch</filename>
            <type>text/plain</type>
            <size>18378</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKaW5kZXggN2Y0OTc3ZjM3MjcuLmJkM2NhODBlNzQxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsx
LDY2IEBACisyMDIwLTAzLTA0ICBEYW5pZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KKwor
ICAgICAgICBJbXBsZW1lbnQgV0tUZXh0U2VsZWN0aW9uUmVjdCBpbiB0ZXJtcyBvZiBXZWJDb3Jl
OjpTZWxlY3Rpb25SZWN0IGFuZCBXS1RleHRSYW5nZSBpbiB0ZXJtcyBvZiBXS1RleHRTZWxlY3Rp
b25SZWN0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MDg1NjMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJ
dCBpcyBhIGxheWVyaW5nIHZpb2xhdGlvbiB0aGF0IFdlYktpdDIgaW5jbHVkZXMgYSBoZWFkZXIg
ZnJvbSBXZWJLaXQuIEltcGxlbWVudAorICAgICAgICBXS1RleHRTZWxlY3Rpb25SZWN0IGluIHRl
cm1zIG9mIFdlYkNvcmU6OlNlbGVjdGlvblJlY3QgYXMgYSBzdGVwIHRvd2FyZHMgZml4aW5nIHRo
aXMuCisgICAgICAgIEFsc28gYXZvaWQgdGhlIFdlYkNvcmU6OlNlbGVjdGlvblJlY3QgLT4gV2Vi
U2VsZWN0aW9uUmVjdCAtPiBXS1RleHRTZWxlY3Rpb25SZWN0CisgICAgICAgIGRhbmNlIHRoYXQg
V0tUZXh0UmFuZ2UgZG9lcyBzbyB0aGF0IC1bV0tUZXh0UmFuZ2Ugc2VsZWN0aW9uUmVjdHNGb3JS
YW5nZV0gcmV0dXJucworICAgICAgICBhbiBhcnJheSBvZiBXS1RleHRTZWxlY3Rpb25SZWN0cyBi
eSB3cml0aW5nIFdLVGV4dFJhbmdlIGluIHRlcm1zIG9mIE5TQXJyYXk8V0tUZXh0U2VsZWN0aW9u
UmVjdCAqPiouCisKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFj
dGlvbi5tbToKKyAgICAgICAgKC1bV0tDb250ZW50VmlldyBfdWlUZXh0U2VsZWN0aW9uUmVjdHNd
KToKKyAgICAgICAgKC1bV0tDb250ZW50VmlldyBzZWxlY3RlZFRleHRSYW5nZV0pOgorICAgICAg
ICAoLVtXS0NvbnRlbnRWaWV3IHNlbGVjdGlvblJlY3RzRm9yUmFuZ2U6XSk6CisgICAgICAgICog
VUlQcm9jZXNzL2lvcy9XS1RleHRTZWxlY3Rpb25SZWN0Lmg6CisgICAgICAgICogVUlQcm9jZXNz
L2lvcy9XS1RleHRTZWxlY3Rpb25SZWN0Lm1tOgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rpb25S
ZWN0IGluaXRXaXRoU2VsZWN0aW9uUmVjdDpdKToKKyAgICAgICAgKC1bV0tUZXh0U2VsZWN0aW9u
UmVjdCByZWN0XSk6CisgICAgICAgICgtW1dLVGV4dFNlbGVjdGlvblJlY3Qgd3JpdGluZ0RpcmVj
dGlvbl0pOgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rpb25SZWN0IGNvbnRhaW5zU3RhcnRdKToK
KyAgICAgICAgKC1bV0tUZXh0U2VsZWN0aW9uUmVjdCBjb250YWluc0VuZF0pOgorICAgICAgICAo
LVtXS1RleHRTZWxlY3Rpb25SZWN0IGlzVmVydGljYWxdKToKKyAgICAgICAgKC1bV0tUZXh0U2Vs
ZWN0aW9uUmVjdCBpbml0V2l0aFdlYlJlY3Q6XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dLVGV4
dFNlbGVjdGlvblJlY3QgZGVhbGxvY10pOiBEZWxldGVkLgorICAgICAgICAoK1tXS1RleHRTZWxl
Y3Rpb25SZWN0IHRleHRTZWxlY3Rpb25SZWN0c1dpdGhXZWJSZWN0czpdKTogRGVsZXRlZC4KKwor
MjAyMC0wMy0wMyAgRGFuaWVsIEJhdGVzICA8ZGFiYXRlc0BhcHBsZS5jb20+CisKKyAgICAgICAg
TW92ZSBXS1RleHRTZWxlY3Rpb25SZWN0IGludG8gaXRzIG93biBmaWxlCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDg1NjEKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXS1RleHRTZWxlY3Rpb25SZWN0IGlz
IGN1cnJlbnRseSBkZWZpbmVkIGluIFdLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbS4gU2VwYXJh
dGUgaXQKKyAgICAgICAgb3V0IGludG8gaXRzIG93biBmaWxlIHRvIGltcHJvdmUgcHJvamVjdCBv
cmdhbml6YXRpb24gYW5kIGRlLWNsdXR0ZXIgV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tLgor
CisgICAgICAgICogU291cmNlc0NvY29hLnR4dDoKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dL
Q29udGVudFZpZXdJbnRlcmFjdGlvbi5tbToKKyAgICAgICAgKC1bV0tUZXh0U2VsZWN0aW9uUmVj
dCBpbml0V2l0aFdlYlJlY3Q6XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dLVGV4dFNlbGVjdGlv
blJlY3QgZGVhbGxvY10pOiBEZWxldGVkLgorICAgICAgICAoK1tXS1RleHRTZWxlY3Rpb25SZWN0
IHRleHRTZWxlY3Rpb25SZWN0c1dpdGhXZWJSZWN0czpdKTogRGVsZXRlZC4KKyAgICAgICAgKC1b
V0tUZXh0U2VsZWN0aW9uUmVjdCByZWN0XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dLVGV4dFNl
bGVjdGlvblJlY3Qgd3JpdGluZ0RpcmVjdGlvbl0pOiBEZWxldGVkLgorICAgICAgICAoLVtXS1Rl
eHRTZWxlY3Rpb25SZWN0IHJhbmdlXSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dLVGV4dFNlbGVj
dGlvblJlY3QgY29udGFpbnNTdGFydF0pOiBEZWxldGVkLgorICAgICAgICAoLVtXS1RleHRTZWxl
Y3Rpb25SZWN0IGNvbnRhaW5zRW5kXSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dLVGV4dFNlbGVj
dGlvblJlY3QgaXNWZXJ0aWNhbF0pOiBEZWxldGVkLgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3Mv
V0tUZXh0U2VsZWN0aW9uUmVjdC5oOiBBZGRlZC4KKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dL
VGV4dFNlbGVjdGlvblJlY3QubW06IEFkZGVkLgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rpb25S
ZWN0IGluaXRXaXRoV2ViUmVjdDpdKToKKyAgICAgICAgKC1bV0tUZXh0U2VsZWN0aW9uUmVjdCBk
ZWFsbG9jXSk6CisgICAgICAgICgrW1dLVGV4dFNlbGVjdGlvblJlY3QgdGV4dFNlbGVjdGlvblJl
Y3RzV2l0aFdlYlJlY3RzOl0pOgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rpb25SZWN0IHJlY3Rd
KToKKyAgICAgICAgKC1bV0tUZXh0U2VsZWN0aW9uUmVjdCB3cml0aW5nRGlyZWN0aW9uXSk6Cisg
ICAgICAgICgtW1dLVGV4dFNlbGVjdGlvblJlY3QgcmFuZ2VdKToKKyAgICAgICAgKC1bV0tUZXh0
U2VsZWN0aW9uUmVjdCBjb250YWluc1N0YXJ0XSk6CisgICAgICAgICgtW1dLVGV4dFNlbGVjdGlv
blJlY3QgY29udGFpbnNFbmRdKToKKyAgICAgICAgKC1bV0tUZXh0U2VsZWN0aW9uUmVjdCBpc1Zl
cnRpY2FsXSk6CisgICAgICAgICogV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisK
IDIwMjAtMDMtMDMgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29tPgogCiAgICAgICAg
IFdlYiBJbnNwZWN0b3I6IHJlLWFkZCBgSW5zcGVjdG9yRnJvbnRlbmRIb3N0YCBzdXBwb3J0IGZv
ciBtb3ZpbmcgdGhlIGluc3BlY3RlZCB3aW5kb3cKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
U291cmNlc0NvY29hLnR4dCBiL1NvdXJjZS9XZWJLaXQvU291cmNlc0NvY29hLnR4dAppbmRleCAw
YTc3NjkzOTg3OS4uMjVjYmE5NzNiNjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU291cmNl
c0NvY29hLnR4dAorKysgYi9Tb3VyY2UvV2ViS2l0L1NvdXJjZXNDb2NvYS50eHQKQEAgLTQ3MSw2
ICs0NzEsNyBAQCBVSVByb2Nlc3MvaW9zL1dLU3ludGhldGljRmxhZ3NDaGFuZ2VkV2ViRXZlbnQu
bW0KIFVJUHJvY2Vzcy9pb3MvV0tTeW50aGV0aWNUYXBHZXN0dXJlUmVjb2duaXplci5tbQogVUlQ
cm9jZXNzL2lvcy9XS1N5c3RlbVByZXZpZXdWaWV3Lm1tCiBVSVByb2Nlc3MvaW9zL1dLVG91Y2hB
Y3Rpb25HZXN0dXJlUmVjb2duaXplci5tbQorVUlQcm9jZXNzL2lvcy9XS1RleHRTZWxlY3Rpb25S
ZWN0Lm1tCiBVSVByb2Nlc3MvaW9zL1dLV2ViRXZlbnQubW0KIAogVUlQcm9jZXNzL0xhdW5jaGVy
L21hYy9Qcm9jZXNzTGF1bmNoZXJNYWMubW0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0gYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCmluZGV4IDg0MjJkNTM5M2M1
Li41NDkxNzkxZjdkNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dL
Q29udGVudFZpZXdJbnRlcmFjdGlvbi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9p
b3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCkBAIC02NSw2ICs2NSw3IEBACiAjaW1wb3J0
ICJXS1NlbGVjdE1lbnVMaXN0Vmlld0NvbnRyb2xsZXIuaCIKICNpbXBvcnQgIldLU3ludGhldGlj
RmxhZ3NDaGFuZ2VkV2ViRXZlbnQuaCIKICNpbXBvcnQgIldLVGV4dElucHV0TGlzdFZpZXdDb250
cm9sbGVyLmgiCisjaW1wb3J0ICJXS1RleHRTZWxlY3Rpb25SZWN0LmgiCiAjaW1wb3J0ICJXS1Rp
bWVQaWNrZXJWaWV3Q29udHJvbGxlci5oIgogI2ltcG9ydCAiV0tVSURlbGVnYXRlUHJpdmF0ZS5o
IgogI2ltcG9ydCAiV0tXZWJWaWV3Q29uZmlndXJhdGlvbi5oIgpAQCAtMjY1LDcgKzI2Niw3IEBA
IEBpbnRlcmZhY2UgV0tUZXh0UmFuZ2UgOiBVSVRleHRSYW5nZSB7CiAgICAgQk9PTCBfaXNOb25l
OwogICAgIEJPT0wgX2lzUmFuZ2U7CiAgICAgQk9PTCBfaXNFZGl0YWJsZTsKLSAgICBOU0FycmF5
ICpfc2VsZWN0aW9uUmVjdHM7CisgICAgTlNBcnJheTxXS1RleHRTZWxlY3Rpb25SZWN0ICo+Kl9z
ZWxlY3Rpb25SZWN0czsKICAgICBOU1VJbnRlZ2VyIF9zZWxlY3RlZFRleHRMZW5ndGg7CiB9CiBA
cHJvcGVydHkgKG5vbmF0b21pYykgQ0dSZWN0IHN0YXJ0UmVjdDsKQEAgLTI3NCw3ICsyNzUsNyBA
QCBAcHJvcGVydHkgKG5vbmF0b21pYykgQk9PTCBpc05vbmU7CiBAcHJvcGVydHkgKG5vbmF0b21p
YykgQk9PTCBpc1JhbmdlOwogQHByb3BlcnR5IChub25hdG9taWMpIEJPT0wgaXNFZGl0YWJsZTsK
IEBwcm9wZXJ0eSAobm9uYXRvbWljKSBOU1VJbnRlZ2VyIHNlbGVjdGVkVGV4dExlbmd0aDsKLUBw
cm9wZXJ0eSAoY29weSwgbm9uYXRvbWljKSBOU0FycmF5ICpzZWxlY3Rpb25SZWN0czsKK0Bwcm9w
ZXJ0eSAoY29weSwgbm9uYXRvbWljKSBOU0FycmF5PFdLVGV4dFNlbGVjdGlvblJlY3QgKj4gKnNl
bGVjdGlvblJlY3RzOwogCiArIChXS1RleHRSYW5nZSAqKXRleHRSYW5nZVdpdGhTdGF0ZTooQk9P
TClpc05vbmUgaXNSYW5nZTooQk9PTClpc1JhbmdlIGlzRWRpdGFibGU6KEJPT0wpaXNFZGl0YWJs
ZSBzdGFydFJlY3Q6KENHUmVjdClzdGFydFJlY3QgZW5kUmVjdDooQ0dSZWN0KWVuZFJlY3Qgc2Vs
ZWN0aW9uUmVjdHM6KE5TQXJyYXkgKilzZWxlY3Rpb25SZWN0cyBzZWxlY3RlZFRleHRMZW5ndGg6
KE5TVUludGVnZXIpc2VsZWN0ZWRUZXh0TGVuZ3RoOwogCkBAIC0yOTAsMTMgKzI5MSw2IEBAICsg
KFdLVGV4dFBvc2l0aW9uICopdGV4dFBvc2l0aW9uV2l0aFJlY3Q6KENHUmVjdClwb3NpdGlvblJl
Y3Q7CiAKIEBlbmQKIAotQGludGVyZmFjZSBXS1RleHRTZWxlY3Rpb25SZWN0IDogVUlUZXh0U2Vs
ZWN0aW9uUmVjdAotCi1AcHJvcGVydHkgKG5vbmF0b21pYywgcmV0YWluKSBXZWJTZWxlY3Rpb25S
ZWN0ICp3ZWJSZWN0OwotCi0rIChOU0FycmF5ICopdGV4dFNlbGVjdGlvblJlY3RzV2l0aFdlYlJl
Y3RzOihOU0FycmF5ICopd2ViUmVjdHM7Ci0KLUBlbmQKIAogQGludGVyZmFjZSBXS0F1dG9jb3Jy
ZWN0aW9uUmVjdHMgOiBVSVdLQXV0b2NvcnJlY3Rpb25SZWN0cwogKyAoV0tBdXRvY29ycmVjdGlv
blJlY3RzICopYXV0b2NvcnJlY3Rpb25SZWN0c1dpdGhGaXJzdENHUmVjdDooQ0dSZWN0KWZpcnN0
UmVjdCBsYXN0Q0dSZWN0OihDR1JlY3QpbGFzdFJlY3Q7CkBAIC0yMzAwLDcgKzIyOTQsNyBAQCAt
IChOU0FycmF5PE5TVmFsdWUgKj4gKilfdWlUZXh0U2VsZWN0aW9uUmVjdHMKIAogICAgIGlmIChf
dGV4dEludGVyYWN0aW9uQXNzaXN0YW50KSB7CiAgICAgICAgIGZvciAoV0tUZXh0U2VsZWN0aW9u
UmVjdCAqc2VsZWN0aW9uUmVjdCBpbiBbX3RleHRJbnRlcmFjdGlvbkFzc2lzdGFudCB2YWx1ZUZv
cktleVBhdGg6QCJzZWxlY3Rpb25WaWV3LnNlbGVjdGlvbi5zZWxlY3Rpb25SZWN0cyJdKQotICAg
ICAgICAgICAgW3RleHRTZWxlY3Rpb25SZWN0cyBhZGRPYmplY3Q6W05TVmFsdWUgdmFsdWVXaXRo
Q0dSZWN0OnNlbGVjdGlvblJlY3Qud2ViUmVjdC5yZWN0XV07CisgICAgICAgICAgICBbdGV4dFNl
bGVjdGlvblJlY3RzIGFkZE9iamVjdDpbTlNWYWx1ZSB2YWx1ZVdpdGhDR1JlY3Q6c2VsZWN0aW9u
UmVjdC5yZWN0XV07CiAgICAgfQogCiAgICAgcmV0dXJuIHRleHRTZWxlY3Rpb25SZWN0czsKQEAg
LTQ0NjYsNiArNDQ2MCwxNiBAQCAtICh2b2lkKXJlcGxhY2VSYW5nZTooVUlUZXh0UmFuZ2UgKily
YW5nZSB3aXRoVGV4dDooTlNTdHJpbmcgKil0ZXh0CiB7CiB9CiAKK3N0YXRpYyBOU0FycmF5PFdL
VGV4dFNlbGVjdGlvblJlY3QgKj4qIHdrVGV4dFNlbGVjdGlvblJlY3RzKGNvbnN0IFZlY3RvcjxX
ZWJDb3JlOjpTZWxlY3Rpb25SZWN0PiYgY29yZVJlY3RzKQoreworICAgIGF1dG8gcmVjdHMgPSBh
ZG9wdE5TKFtbTlNNdXRhYmxlQXJyYXkgYWxsb2NdIGluaXRXaXRoQ2FwYWNpdHk6Y29yZVJlY3Rz
LnNpemUoKV0pOworICAgIGZvciAoYXV0byYgY29yZVJlY3QgOiBjb3JlUmVjdHMpIHsKKyAgICAg
ICAgYXV0byB3a1RleHRTZWxlY3Rpb25SZWN0ID0gYWRvcHROUyhbW1dLVGV4dFNlbGVjdGlvblJl
Y3QgYWxsb2NdIGluaXRXaXRoU2VsZWN0aW9uUmVjdDpjb3JlUmVjdF0pOworICAgICAgICBbcmVj
dHMgYWRkT2JqZWN0OndrVGV4dFNlbGVjdGlvblJlY3QuZ2V0KCldOworICAgIH0KKyAgICByZXR1
cm4gcmVjdHMuYXV0b3JlbGVhc2UoKTsKK30KKwogLSAoVUlUZXh0UmFuZ2UgKilzZWxlY3RlZFRl
eHRSYW5nZQogewogICAgIGlmIChfcGFnZS0+ZWRpdG9yU3RhdGUoKS5zZWxlY3Rpb25Jc05vbmUg
fHwgX3BhZ2UtPmVkaXRvclN0YXRlKCkuaXNNaXNzaW5nUG9zdExheW91dERhdGEpCkBAIC00NTAz
LDcgKzQ1MDcsNyBAQCAtIChVSVRleHRSYW5nZSAqKXNlbGVjdGVkVGV4dFJhbmdlCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGlzRWRpdGFibGU6X3BhZ2UtPmVkaXRvclN0YXRlKCku
aXNDb250ZW50RWRpdGFibGUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0
UmVjdDpzdGFydFJlY3QKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5kUmVj
dDplbmRSZWN0Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0aW9uUmVjdHM6W3Nl
bGYgd2ViU2VsZWN0aW9uUmVjdHNdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0
aW9uUmVjdHM6d2tUZXh0U2VsZWN0aW9uUmVjdHMoX3BhZ2UtPmVkaXRvclN0YXRlKCkucG9zdExh
eW91dERhdGEoKS5zZWxlY3Rpb25SZWN0cykKICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVj
dGVkVGV4dExlbmd0aDpwb3N0TGF5b3V0RWRpdG9yU3RhdGVEYXRhLnNlbGVjdGVkVGV4dExlbmd0
aF07CiB9CiAKQEAgLTQ1MTQsNyArNDUxOCw3IEBAIC0gKENHUmVjdCljYXJldFJlY3RGb3JQb3Np
dGlvbjooVUlUZXh0UG9zaXRpb24gKilwb3NpdGlvbgogCiAtIChOU0FycmF5ICopc2VsZWN0aW9u
UmVjdHNGb3JSYW5nZTooVUlUZXh0UmFuZ2UgKilyYW5nZQogewotICAgIHJldHVybiBbV0tUZXh0
U2VsZWN0aW9uUmVjdCB0ZXh0U2VsZWN0aW9uUmVjdHNXaXRoV2ViUmVjdHM6KChXS1RleHRSYW5n
ZSAqKXJhbmdlKS5zZWxlY3Rpb25SZWN0c107CisgICAgcmV0dXJuIFsoV0tUZXh0UmFuZ2UgKily
YW5nZSBzZWxlY3Rpb25SZWN0c107CiB9CiAKIC0gKHZvaWQpc2V0U2VsZWN0ZWRUZXh0UmFuZ2U6
KFVJVGV4dFJhbmdlICopcmFuZ2UKQEAgLTkzMDQsNyArOTMwOCw4IEBAIEBlbmQKIAogI2VuZGlm
IC8vIEhBVkUoTElOS19QUkVWSUVXKQogCi0vLyBVSVRleHRSYW5nZSwgVUlUZXh0UG9zaXRpb24g
YW5kIFVJVGV4dFNlbGVjdGlvblJlY3QgaW1wbGVtZW50YXRpb25zIGZvciBXSzIKKy8vIFVJVGV4
dFJhbmdlIGFuZCBVSVRleHRQb3NpdGlvbiBpbXBsZW1lbnRhdGlvbnMgZm9yIFdLMgorLy8gRklY
TUU6IE1vdmUgdGhlc2Ugb3V0IGludG8gc2VwYXJhdGUgZmlsZXMuCiAKIEBpbXBsZW1lbnRhdGlv
biBXS1RleHRSYW5nZSAoVUlUZXh0SW5wdXRBZGRpdGlvbnMpCiAKQEAgLTk0MjAsNzEgKzk0MjUs
NiBAQCAtIChOU1N0cmluZyAqKWRlc2NyaXB0aW9uCiAKIEBlbmQKIAotQGltcGxlbWVudGF0aW9u
IFdLVGV4dFNlbGVjdGlvblJlY3QKLQotLSAoaWQpaW5pdFdpdGhXZWJSZWN0OihXZWJTZWxlY3Rp
b25SZWN0ICopd1JlY3QKLXsKLSAgICBzZWxmID0gW3N1cGVyIGluaXRdOwotICAgIGlmIChzZWxm
KQotICAgICAgICBzZWxmLndlYlJlY3QgPSB3UmVjdDsKLQotICAgIHJldHVybiBzZWxmOwotfQot
Ci0tICh2b2lkKWRlYWxsb2MKLXsKLSAgICBzZWxmLndlYlJlY3QgPSBuaWw7Ci0gICAgW3N1cGVy
IGRlYWxsb2NdOwotfQotCi0vLyBGSVhNRTogd2UgYXJlIHVzaW5nIHRoaXMgaW1wbGVtZW50YXRp
b24gZm9yIG5vdwotLy8gdGhhdCB1c2VzIFdlYlNlbGVjdGlvblJlY3QsIGJ1dCB3ZSB3YW50IHRv
IHByb3ZpZGUgb3VyIG93bgotLy8gYmFzZWQgb24gV2ViQ29yZTo6U2VsZWN0aW9uUmVjdC4KLQot
KyAoTlNBcnJheSAqKXRleHRTZWxlY3Rpb25SZWN0c1dpdGhXZWJSZWN0czooTlNBcnJheSAqKXdl
YlJlY3RzCi17Ci0gICAgTlNNdXRhYmxlQXJyYXkgKmFycmF5ID0gW05TTXV0YWJsZUFycmF5IGFy
cmF5V2l0aENhcGFjaXR5OndlYlJlY3RzLmNvdW50XTsKLSAgICBmb3IgKFdlYlNlbGVjdGlvblJl
Y3QgKndlYlJlY3QgaW4gd2ViUmVjdHMpIHsKLSAgICAgICAgUmV0YWluUHRyPFdLVGV4dFNlbGVj
dGlvblJlY3Q+IHJlY3QgPSBhZG9wdE5TKFtbV0tUZXh0U2VsZWN0aW9uUmVjdCBhbGxvY10gaW5p
dFdpdGhXZWJSZWN0OndlYlJlY3RdKTsKLSAgICAgICAgW2FycmF5IGFkZE9iamVjdDpyZWN0Lmdl
dCgpXTsKLSAgICB9Ci0gICAgcmV0dXJuIGFycmF5OwotfQotCi0tIChDR1JlY3QpcmVjdAotewot
ICAgIHJldHVybiBfd2ViUmVjdC5yZWN0OwotfQotCi1BTExPV19ERVBSRUNBVEVEX0RFQ0xBUkFU
SU9OU19CRUdJTgotLSAoVUlUZXh0V3JpdGluZ0RpcmVjdGlvbil3cml0aW5nRGlyZWN0aW9uCi17
Ci0gICAgcmV0dXJuIChVSVRleHRXcml0aW5nRGlyZWN0aW9uKV93ZWJSZWN0LndyaXRpbmdEaXJl
Y3Rpb247Ci19Ci1BTExPV19ERVBSRUNBVEVEX0RFQ0xBUkFUSU9OU19FTkQKLQotLSAoVUlUZXh0
UmFuZ2UgKilyYW5nZQotewotICAgIHJldHVybiBuaWw7Ci19Ci0KLS0gKEJPT0wpY29udGFpbnNT
dGFydAotewotICAgIHJldHVybiBfd2ViUmVjdC5jb250YWluc1N0YXJ0OwotfQotCi0tIChCT09M
KWNvbnRhaW5zRW5kCi17Ci0gICAgcmV0dXJuIF93ZWJSZWN0LmNvbnRhaW5zRW5kOwotfQotCi0t
IChCT09MKWlzVmVydGljYWwKLXsKLSAgICByZXR1cm4gIV93ZWJSZWN0LmlzSG9yaXpvbnRhbDsK
LX0KLQotQGVuZAotCiBAaW1wbGVtZW50YXRpb24gV0tBdXRvY29ycmVjdGlvblJlY3RzCiAKICsg
KFdLQXV0b2NvcnJlY3Rpb25SZWN0cyAqKWF1dG9jb3JyZWN0aW9uUmVjdHNXaXRoRmlyc3RDR1Jl
Y3Q6KENHUmVjdClmaXJzdFJlY3QgbGFzdENHUmVjdDooQ0dSZWN0KWxhc3RSZWN0CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tUZXh0U2VsZWN0aW9uUmVjdC5oIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLVGV4dFNlbGVjdGlvblJlY3QuaApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uOGQ1OGZlMWZhNmIKLS0tIC9kZXYvbnVs
bAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tUZXh0U2VsZWN0aW9uUmVjdC5o
CkBAIC0wLDAgKzEsNDIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBh
cmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFO
RCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2lmIFBMQVRG
T1JNKElPU19GQU1JTFkpCisKKyNpbXBvcnQgPFVJS2l0L1VJS2l0Lmg+CisKK25hbWVzcGFjZSBX
ZWJDb3JlIHsKK2NsYXNzIFNlbGVjdGlvblJlY3Q7Cit9CisKK0BpbnRlcmZhY2UgV0tUZXh0U2Vs
ZWN0aW9uUmVjdCA6IFVJVGV4dFNlbGVjdGlvblJlY3QKKworLSAoaW5zdGFuY2V0eXBlKWluaXRX
aXRoU2VsZWN0aW9uUmVjdDooY29uc3QgV2ViQ29yZTo6U2VsZWN0aW9uUmVjdCYpc2VsZWN0aW9u
UmVjdDsKKworQGVuZAorCisjZW5kaWYgLy8gUExBVEZPUk0oSU9TX0ZBTUlMWSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS1RleHRTZWxlY3Rpb25SZWN0Lm1tIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLVGV4dFNlbGVjdGlvblJlY3QubW0KbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjkzNDdiNmJlMzY2Ci0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLVGV4dFNlbGVjdGlvblJlY3Qu
bW0KQEAgLTAsMCArMSw4MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAq
IGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICog
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBvcnQgImNvbmZpZy5oIgorI2lt
cG9ydCAiV0tUZXh0U2VsZWN0aW9uUmVjdC5oIgorCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkK
KworI2ltcG9ydCA8V2ViQ29yZS9TZWxlY3Rpb25SZWN0Lmg+CisKK0BpbXBsZW1lbnRhdGlvbiBX
S1RleHRTZWxlY3Rpb25SZWN0Cit7CisgICAgV2ViQ29yZTo6U2VsZWN0aW9uUmVjdCBfc2VsZWN0
aW9uUmVjdDsKK30KKworLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRoU2VsZWN0aW9uUmVjdDooY29u
c3QgV2ViQ29yZTo6U2VsZWN0aW9uUmVjdCYpc2VsZWN0aW9uUmVjdAoreworICAgIGlmICghKHNl
bGYgPSBbc3VwZXIgaW5pdF0pKQorICAgICAgICByZXR1cm4gbmlsOworICAgIF9zZWxlY3Rpb25S
ZWN0ID0gc2VsZWN0aW9uUmVjdDsKKyAgICByZXR1cm4gc2VsZjsKK30KKworLSAoQ0dSZWN0KXJl
Y3QKK3sKKyAgICByZXR1cm4gX3NlbGVjdGlvblJlY3QucmVjdCgpOworfQorCitBTExPV19ERVBS
RUNBVEVEX0RFQ0xBUkFUSU9OU19CRUdJTgorLSAoVUlUZXh0V3JpdGluZ0RpcmVjdGlvbil3cml0
aW5nRGlyZWN0aW9uCit7CisgICAgYXV0byB3a1dyaXRpbmdEaXJlY3Rpb24gPSBfc2VsZWN0aW9u
UmVjdC5kaXJlY3Rpb24oKSA9PSBXZWJDb3JlOjpUZXh0RGlyZWN0aW9uOjpMVFIgPyBXS1dyaXRp
bmdEaXJlY3Rpb25MZWZ0VG9SaWdodCA6IFdLV3JpdGluZ0RpcmVjdGlvblJpZ2h0VG9MZWZ0Owor
ICAgIHJldHVybiAoVUlUZXh0V3JpdGluZ0RpcmVjdGlvbil3a1dyaXRpbmdEaXJlY3Rpb247Cit9
CitBTExPV19ERVBSRUNBVEVEX0RFQ0xBUkFUSU9OU19FTkQKKworLSAoVUlUZXh0UmFuZ2UgKily
YW5nZQoreworICAgIHJldHVybiBuaWw7Cit9CisKKy0gKEJPT0wpY29udGFpbnNTdGFydAorewor
ICAgIHJldHVybiBfc2VsZWN0aW9uUmVjdC5jb250YWluc1N0YXJ0KCk7Cit9CisKKy0gKEJPT0wp
Y29udGFpbnNFbmQKK3sKKyAgICByZXR1cm4gX3NlbGVjdGlvblJlY3QuY29udGFpbnNFbmQoKTsK
K30KKworLSAoQk9PTClpc1ZlcnRpY2FsCit7CisgICAgcmV0dXJuICFfc2VsZWN0aW9uUmVjdC5p
c0hvcml6b250YWwoKTsKK30KKworQGVuZAorCisjZW5kaWYgLy8gUExBVEZPUk0oSU9TX0ZBTUlM
WSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2ogYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmlu
ZGV4IDE1YzUyNGYzNjIxLi40Y2E2ODMyMmM5MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9X
ZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYktp
dC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0xNzM0LDYgKzE3MzQsNyBAQAogCQlDRTFB
MEJEMjFBNDhFNkM2MDA1NEVGNzQgLyogQXNzZXJ0aW9uU2VydmljZXNTUEkuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENFMUEwQkNDMUE0OEU2QzYwMDU0
RUY3NCAvKiBBc3NlcnRpb25TZXJ2aWNlc1NQSS5oICovOyB9OwogCQlDRTFBMEJENjFBNDhFNkM2
MDA1NEVGNzQgLyogVENDU1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBDRTFBMEJEMDFBNDhFNkM2MDA1NEVGNzQgLyogVENDU1BJLmggKi87IH07CiAJ
CUNFMUEwQkQ3MUE0OEU2QzYwMDU0RUY3NCAvKiBUZXh0SW5wdXRTUEkuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENFMUEwQkQxMUE0OEU2QzYwMDU0RUY3
NCAvKiBUZXh0SW5wdXRTUEkuaCAqLzsgfTsKKwkJQ0U0NTk0NUMyNDBGODg1NTAwNzgwMTlGIC8q
IFdLVGV4dFNlbGVjdGlvblJlY3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IENFNDU5NDVBMjQwRjg1QjkwMDc4MDE5RiAvKiBXS1RleHRTZWxlY3Rpb25S
ZWN0LmggKi87IH07CiAJCUNFNTUwRTE1MjI4Mzc1MjIwMEQyODc5MSAvKiBJbnNlcnRUZXh0T3B0
aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0U1
NTBFMTIyMjgzNzNDODAwRDI4NzkxIC8qIEluc2VydFRleHRPcHRpb25zLmggKi87IH07CiAJCUNF
NUI0Qzg4MjFCNzNEODcwMDIyRTY0RiAvKiBXS1N5bnRoZXRpY0ZsYWdzQ2hhbmdlZFdlYkV2ZW50
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRTVCNEM4
NjIxQjczRDg3MDAyMkU2NEYgLyogV0tTeW50aGV0aWNGbGFnc0NoYW5nZWRXZWJFdmVudC5oICov
OyB9OwogCQlDRTcwRUU1RDIyNDQyQkQwMDBFMEFGMEYgLyogV0tGb3JtUGVyaXBoZXJhbEJhc2Uu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENFNzBFRTVD
MjI0NDJCRDAwMEUwQUYwRiAvKiBXS0Zvcm1QZXJpcGhlcmFsQmFzZS5oICovOyB9OwpAQCAtNTA1
MCw2ICs1MDUxLDggQEAKIAkJQ0UxQTBCQ0MxQTQ4RTZDNjAwNTRFRjc0IC8qIEFzc2VydGlvblNl
cnZpY2VzU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFzc2VydGlvblNl
cnZpY2VzU1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNFMUEwQkQwMUE0OEU2
QzYwMDU0RUY3NCAvKiBUQ0NTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
VENDU1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNFMUEwQkQxMUE0OEU2QzYw
MDU0RUY3NCAvKiBUZXh0SW5wdXRTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gVGV4dElucHV0U1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNFNDU5NDVB
MjQwRjg1QjkwMDc4MDE5RiAvKiBXS1RleHRTZWxlY3Rpb25SZWN0LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9
IFdLVGV4dFNlbGVjdGlvblJlY3QuaDsgcGF0aCA9IGlvcy9XS1RleHRTZWxlY3Rpb25SZWN0Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNFNDU5NDVCMjQwRjg1QjkwMDc4MDE5RiAv
KiBXS1RleHRTZWxlY3Rpb25SZWN0Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1lID0gV0tUZXh0U2Vs
ZWN0aW9uUmVjdC5tbTsgcGF0aCA9IGlvcy9XS1RleHRTZWxlY3Rpb25SZWN0Lm1tOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlDRTU1MEUxMjIyODM3M0M4MDBEMjg3OTEgLyogSW5zZXJ0
VGV4dE9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5zZXJ0VGV4dE9wdGlvbnMuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0U1NTBFMTMyMjgzNzQ0NDAwRDI4NzkxIC8qIEluc2Vy
dFRleHRPcHRpb25zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEluc2VydFRleHRPcHRpb25zLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0U1QjRDODYyMUI3M0Q4NzAwMjJFNjRG
IC8qIFdLU3ludGhldGljRmxhZ3NDaGFuZ2VkV2ViRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gV0tT
eW50aGV0aWNGbGFnc0NoYW5nZWRXZWJFdmVudC5oOyBwYXRoID0gaW9zL1dLU3ludGhldGljRmxh
Z3NDaGFuZ2VkV2ViRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTY3OTUs
NiArNjc5OCw4IEBACiAJCQkJMjZGMTBCRTcxOTE4N0UyRTAwMUQwRTY4IC8qIFdLU3ludGhldGlj
VGFwR2VzdHVyZVJlY29nbml6ZXIubW0gKi8sCiAJCQkJMzE2QjhCNjIyMDU0QjU1ODAwQkQ0QTYy
IC8qIFdLU3lzdGVtUHJldmlld1ZpZXcuaCAqLywKIAkJCQkzMTZCOEI2MTIwNTRCNTU4MDBCRDRB
NjIgLyogV0tTeXN0ZW1QcmV2aWV3Vmlldy5tbSAqLywKKwkJCQlDRTQ1OTQ1QTI0MEY4NUI5MDA3
ODAxOUYgLyogV0tUZXh0U2VsZWN0aW9uUmVjdC5oICovLAorCQkJCUNFNDU5NDVCMjQwRjg1Qjkw
MDc4MDE5RiAvKiBXS1RleHRTZWxlY3Rpb25SZWN0Lm1tICovLAogCQkJCTcxQTY3NkE0MjJDNjIz
MTgwMDdENjI5NSAvKiBXS1RvdWNoQWN0aW9uR2VzdHVyZVJlY29nbml6ZXIuaCAqLywKIAkJCQk3
MUE2NzZBNTIyQzYyMzE4MDA3RDYyOTUgLyogV0tUb3VjaEFjdGlvbkdlc3R1cmVSZWNvZ25pemVy
Lm1tICovLAogCQkJCTJEMUU4MjIxMjE2RkZGNTAwMEExNTI2NSAvKiBXS1dlYkV2ZW50LmggKi8s
CkBAIC0xMTM0Nyw2ICsxMTM1Miw3IEBACiAJCQkJMkRENjdBMzUxQkQ4NjEwNjAwNTNCMjUxIC8q
IFdLVGV4dEZpbmRlckNsaWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRjRENUY1MUQyMDYwODdB
MTAwMzhCQkE4IC8qIFdLVGV4dElucHV0TGlzdFZpZXdDb250cm9sbGVyLmggaW4gSGVhZGVycyAq
LywKIAkJCQkwRkNCNEU2ODE4QkJFM0Q5MDAwRkNGQzkgLyogV0tUZXh0SW5wdXRXaW5kb3dDb250
cm9sbGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlDRTQ1OTQ1QzI0MEY4ODU1MDA3ODAxOUYgLyog
V0tUZXh0U2VsZWN0aW9uUmVjdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMkVCNkZDMDEyMDMwMjE5
NjAwMTdFNjE5IC8qIFdLVGltZVBpY2tlclZpZXdDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywK
IAkJCQk3MUE2NzZBNjIyQzYyMzI1MDA3RDYyOTUgLyogV0tUb3VjaEFjdGlvbkdlc3R1cmVSZWNv
Z25pemVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzQwNzYwODEyNEZGMDI3MDA2OEYyMEEgLyog
V0tUeXBlLmggaW4gSGVhZGVycyAqLywK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>392383</attachid>
            <date>2020-03-04 00:17:37 -0800</date>
            <delta_ts>2020-03-04 01:04:31 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208563-20200304001736.patch</filename>
            <type>text/plain</type>
            <size>8252</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU3ODM1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGI3NzdhNDQ0MDQyNWMwZDdm
Yjg3MzU3YjgxZjlkYjdiYzUzM2UxNGQuLmJkM2NhODBlNzQxNjM1NDI1ZWI4MzJlYWZhYjM5OGE0
Zjc5NjQ2NDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzIgQEAKKzIwMjAtMDMtMDQgIERhbmllbCBC
YXRlcyAgPGRhYmF0ZXNAYXBwbGUuY29tPgorCisgICAgICAgIEltcGxlbWVudCBXS1RleHRTZWxl
Y3Rpb25SZWN0IGluIHRlcm1zIG9mIFdlYkNvcmU6OlNlbGVjdGlvblJlY3QgYW5kIFdLVGV4dFJh
bmdlIGluIHRlcm1zIG9mIFdLVGV4dFNlbGVjdGlvblJlY3QKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwODU2MworCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEl0IGlzIGEgbGF5ZXJpbmcgdmlvbGF0aW9uIHRo
YXQgV2ViS2l0MiBpbmNsdWRlcyBhIGhlYWRlciBmcm9tIFdlYktpdC4gSW1wbGVtZW50CisgICAg
ICAgIFdLVGV4dFNlbGVjdGlvblJlY3QgaW4gdGVybXMgb2YgV2ViQ29yZTo6U2VsZWN0aW9uUmVj
dCBhcyBhIHN0ZXAgdG93YXJkcyBmaXhpbmcgdGhpcy4KKyAgICAgICAgQWxzbyBhdm9pZCB0aGUg
V2ViQ29yZTo6U2VsZWN0aW9uUmVjdCAtPiBXZWJTZWxlY3Rpb25SZWN0IC0+IFdLVGV4dFNlbGVj
dGlvblJlY3QKKyAgICAgICAgZGFuY2UgdGhhdCBXS1RleHRSYW5nZSBkb2VzIHNvIHRoYXQgLVtX
S1RleHRSYW5nZSBzZWxlY3Rpb25SZWN0c0ZvclJhbmdlXSByZXR1cm5zCisgICAgICAgIGFuIGFy
cmF5IG9mIFdLVGV4dFNlbGVjdGlvblJlY3RzIGJ5IHdyaXRpbmcgV0tUZXh0UmFuZ2UgaW4gdGVy
bXMgb2YgTlNBcnJheTxXS1RleHRTZWxlY3Rpb25SZWN0ICo+Ki4KKworICAgICAgICAqIFVJUHJv
Y2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tOgorICAgICAgICAoLVtXS0NvbnRl
bnRWaWV3IF91aVRleHRTZWxlY3Rpb25SZWN0c10pOgorICAgICAgICAoLVtXS0NvbnRlbnRWaWV3
IHNlbGVjdGVkVGV4dFJhbmdlXSk6CisgICAgICAgICgtW1dLQ29udGVudFZpZXcgc2VsZWN0aW9u
UmVjdHNGb3JSYW5nZTpdKToKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLVGV4dFNlbGVjdGlv
blJlY3QuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLVGV4dFNlbGVjdGlvblJlY3QubW06
CisgICAgICAgICgtW1dLVGV4dFNlbGVjdGlvblJlY3QgaW5pdFdpdGhTZWxlY3Rpb25SZWN0Ol0p
OgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rpb25SZWN0IHJlY3RdKToKKyAgICAgICAgKC1bV0tU
ZXh0U2VsZWN0aW9uUmVjdCB3cml0aW5nRGlyZWN0aW9uXSk6CisgICAgICAgICgtW1dLVGV4dFNl
bGVjdGlvblJlY3QgY29udGFpbnNTdGFydF0pOgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rpb25S
ZWN0IGNvbnRhaW5zRW5kXSk6CisgICAgICAgICgtW1dLVGV4dFNlbGVjdGlvblJlY3QgaXNWZXJ0
aWNhbF0pOgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rpb25SZWN0IGluaXRXaXRoV2ViUmVjdDpd
KTogRGVsZXRlZC4KKyAgICAgICAgKC1bV0tUZXh0U2VsZWN0aW9uUmVjdCBkZWFsbG9jXSk6IERl
bGV0ZWQuCisgICAgICAgICgrW1dLVGV4dFNlbGVjdGlvblJlY3QgdGV4dFNlbGVjdGlvblJlY3Rz
V2l0aFdlYlJlY3RzOl0pOiBEZWxldGVkLgorCiAyMDIwLTAzLTAzICBEYW5pZWwgQmF0ZXMgIDxk
YWJhdGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBNb3ZlIFdLVGV4dFNlbGVjdGlvblJlY3QgaW50
byBpdHMgb3duIGZpbGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9X
S0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3Mv
V0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCmluZGV4IDYzMDA4YTc5N2E5YWIxODliMjcxOGQ4
MGIzZjg4NWRiMmEwMWVmMjUuLjA1ZDg5ZGY4NGVjMzI1MGE5OTFiNmI3ZDViMmE5NDgyNGMzNDRh
ZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3
SW50ZXJhY3Rpb24ubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVu
dFZpZXdJbnRlcmFjdGlvbi5tbQpAQCAtMjY2LDcgKzI2Niw3IEBAIEBpbnRlcmZhY2UgV0tUZXh0
UmFuZ2UgOiBVSVRleHRSYW5nZSB7CiAgICAgQk9PTCBfaXNOb25lOwogICAgIEJPT0wgX2lzUmFu
Z2U7CiAgICAgQk9PTCBfaXNFZGl0YWJsZTsKLSAgICBOU0FycmF5ICpfc2VsZWN0aW9uUmVjdHM7
CisgICAgTlNBcnJheTxXS1RleHRTZWxlY3Rpb25SZWN0ICo+Kl9zZWxlY3Rpb25SZWN0czsKICAg
ICBOU1VJbnRlZ2VyIF9zZWxlY3RlZFRleHRMZW5ndGg7CiB9CiBAcHJvcGVydHkgKG5vbmF0b21p
YykgQ0dSZWN0IHN0YXJ0UmVjdDsKQEAgLTI3NSw3ICsyNzUsNyBAQCBAcHJvcGVydHkgKG5vbmF0
b21pYykgQk9PTCBpc05vbmU7CiBAcHJvcGVydHkgKG5vbmF0b21pYykgQk9PTCBpc1JhbmdlOwog
QHByb3BlcnR5IChub25hdG9taWMpIEJPT0wgaXNFZGl0YWJsZTsKIEBwcm9wZXJ0eSAobm9uYXRv
bWljKSBOU1VJbnRlZ2VyIHNlbGVjdGVkVGV4dExlbmd0aDsKLUBwcm9wZXJ0eSAoY29weSwgbm9u
YXRvbWljKSBOU0FycmF5ICpzZWxlY3Rpb25SZWN0czsKK0Bwcm9wZXJ0eSAoY29weSwgbm9uYXRv
bWljKSBOU0FycmF5PFdLVGV4dFNlbGVjdGlvblJlY3QgKj4gKnNlbGVjdGlvblJlY3RzOwogCiAr
IChXS1RleHRSYW5nZSAqKXRleHRSYW5nZVdpdGhTdGF0ZTooQk9PTClpc05vbmUgaXNSYW5nZToo
Qk9PTClpc1JhbmdlIGlzRWRpdGFibGU6KEJPT0wpaXNFZGl0YWJsZSBzdGFydFJlY3Q6KENHUmVj
dClzdGFydFJlY3QgZW5kUmVjdDooQ0dSZWN0KWVuZFJlY3Qgc2VsZWN0aW9uUmVjdHM6KE5TQXJy
YXkgKilzZWxlY3Rpb25SZWN0cyBzZWxlY3RlZFRleHRMZW5ndGg6KE5TVUludGVnZXIpc2VsZWN0
ZWRUZXh0TGVuZ3RoOwogCkBAIC0yMjk0LDcgKzIyOTQsNyBAQCAtIChOU0FycmF5PE5TVmFsdWUg
Kj4gKilfdWlUZXh0U2VsZWN0aW9uUmVjdHMKIAogICAgIGlmIChfdGV4dEludGVyYWN0aW9uQXNz
aXN0YW50KSB7CiAgICAgICAgIGZvciAoV0tUZXh0U2VsZWN0aW9uUmVjdCAqc2VsZWN0aW9uUmVj
dCBpbiBbX3RleHRJbnRlcmFjdGlvbkFzc2lzdGFudCB2YWx1ZUZvcktleVBhdGg6QCJzZWxlY3Rp
b25WaWV3LnNlbGVjdGlvbi5zZWxlY3Rpb25SZWN0cyJdKQotICAgICAgICAgICAgW3RleHRTZWxl
Y3Rpb25SZWN0cyBhZGRPYmplY3Q6W05TVmFsdWUgdmFsdWVXaXRoQ0dSZWN0OnNlbGVjdGlvblJl
Y3Qud2ViUmVjdC5yZWN0XV07CisgICAgICAgICAgICBbdGV4dFNlbGVjdGlvblJlY3RzIGFkZE9i
amVjdDpbTlNWYWx1ZSB2YWx1ZVdpdGhDR1JlY3Q6c2VsZWN0aW9uUmVjdC5yZWN0XV07CiAgICAg
fQogCiAgICAgcmV0dXJuIHRleHRTZWxlY3Rpb25SZWN0czsKQEAgLTQ0NjAsNiArNDQ2MCwxNiBA
QCAtICh2b2lkKXJlcGxhY2VSYW5nZTooVUlUZXh0UmFuZ2UgKilyYW5nZSB3aXRoVGV4dDooTlNT
dHJpbmcgKil0ZXh0CiB7CiB9CiAKK3N0YXRpYyBOU0FycmF5PFdLVGV4dFNlbGVjdGlvblJlY3Qg
Kj4gKndrVGV4dFNlbGVjdGlvblJlY3RzKGNvbnN0IFZlY3RvcjxXZWJDb3JlOjpTZWxlY3Rpb25S
ZWN0PiYgY29yZVJlY3RzKQoreworICAgIGF1dG8gcmVjdHMgPSBhZG9wdE5TKFtbTlNNdXRhYmxl
QXJyYXkgYWxsb2NdIGluaXRXaXRoQ2FwYWNpdHk6Y29yZVJlY3RzLnNpemUoKV0pOworICAgIGZv
ciAoYXV0byYgY29yZVJlY3QgOiBjb3JlUmVjdHMpIHsKKyAgICAgICAgYXV0byB3a1RleHRTZWxl
Y3Rpb25SZWN0ID0gYWRvcHROUyhbW1dLVGV4dFNlbGVjdGlvblJlY3QgYWxsb2NdIGluaXRXaXRo
U2VsZWN0aW9uUmVjdDpjb3JlUmVjdF0pOworICAgICAgICBbcmVjdHMgYWRkT2JqZWN0OndrVGV4
dFNlbGVjdGlvblJlY3QuZ2V0KCldOworICAgIH0KKyAgICByZXR1cm4gcmVjdHMuYXV0b3JlbGVh
c2UoKTsKK30KKwogLSAoVUlUZXh0UmFuZ2UgKilzZWxlY3RlZFRleHRSYW5nZQogewogICAgIGlm
IChfcGFnZS0+ZWRpdG9yU3RhdGUoKS5zZWxlY3Rpb25Jc05vbmUgfHwgX3BhZ2UtPmVkaXRvclN0
YXRlKCkuaXNNaXNzaW5nUG9zdExheW91dERhdGEpCkBAIC00NDk3LDcgKzQ1MDcsNyBAQCAtIChV
SVRleHRSYW5nZSAqKXNlbGVjdGVkVGV4dFJhbmdlCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGlzRWRpdGFibGU6X3BhZ2UtPmVkaXRvclN0YXRlKCkuaXNDb250ZW50RWRpdGFibGUK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0UmVjdDpzdGFydFJlY3QKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5kUmVjdDplbmRSZWN0Ci0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgc2VsZWN0aW9uUmVjdHM6W3NlbGYgd2ViU2VsZWN0aW9uUmVj
dHNdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0aW9uUmVjdHM6d2tUZXh0U2Vs
ZWN0aW9uUmVjdHMoX3BhZ2UtPmVkaXRvclN0YXRlKCkucG9zdExheW91dERhdGEoKS5zZWxlY3Rp
b25SZWN0cykKICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkVGV4dExlbmd0aDpwb3N0
TGF5b3V0RWRpdG9yU3RhdGVEYXRhLnNlbGVjdGVkVGV4dExlbmd0aF07CiB9CiAKQEAgLTQ1MDgs
NyArNDUxOCw3IEBAIC0gKENHUmVjdCljYXJldFJlY3RGb3JQb3NpdGlvbjooVUlUZXh0UG9zaXRp
b24gKilwb3NpdGlvbgogCiAtIChOU0FycmF5ICopc2VsZWN0aW9uUmVjdHNGb3JSYW5nZTooVUlU
ZXh0UmFuZ2UgKilyYW5nZQogewotICAgIHJldHVybiBbV0tUZXh0U2VsZWN0aW9uUmVjdCB0ZXh0
U2VsZWN0aW9uUmVjdHNXaXRoV2ViUmVjdHM6KChXS1RleHRSYW5nZSAqKXJhbmdlKS5zZWxlY3Rp
b25SZWN0c107CisgICAgcmV0dXJuIFsoV0tUZXh0UmFuZ2UgKilyYW5nZSBzZWxlY3Rpb25SZWN0
c107CiB9CiAKIC0gKHZvaWQpc2V0U2VsZWN0ZWRUZXh0UmFuZ2U6KFVJVGV4dFJhbmdlICopcmFu
Z2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS1RleHRTZWxlY3Rp
b25SZWN0LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tUZXh0U2VsZWN0aW9uUmVj
dC5oCmluZGV4IDhiYmE5ZTdiOGRkMGZlZjNkZTAzYTllNGRkM2JlNDMyZGRiYjk0NmMuLjhkNThm
ZTFmYTZiZjQ0YzA3YjI4MDdlZWZiNzVhMzAzNmMyOWFlZDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL2lvcy9XS1RleHRTZWxlY3Rpb25SZWN0LmgKKysrIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvaW9zL1dLVGV4dFNlbGVjdGlvblJlY3QuaApAQCAtMjksMTMgKzI5LDEz
IEBACiAKICNpbXBvcnQgPFVJS2l0L1VJS2l0Lmg+CiAKLUBjbGFzcyBXZWJTZWxlY3Rpb25SZWN0
OworbmFtZXNwYWNlIFdlYkNvcmUgeworY2xhc3MgU2VsZWN0aW9uUmVjdDsKK30KIAogQGludGVy
ZmFjZSBXS1RleHRTZWxlY3Rpb25SZWN0IDogVUlUZXh0U2VsZWN0aW9uUmVjdAogCi1AcHJvcGVy
dHkgKG5vbmF0b21pYywgcmV0YWluKSBXZWJTZWxlY3Rpb25SZWN0ICp3ZWJSZWN0OwotCi0rIChO
U0FycmF5ICopdGV4dFNlbGVjdGlvblJlY3RzV2l0aFdlYlJlY3RzOihOU0FycmF5ICopd2ViUmVj
dHM7CistIChpbnN0YW5jZXR5cGUpaW5pdFdpdGhTZWxlY3Rpb25SZWN0Oihjb25zdCBXZWJDb3Jl
OjpTZWxlY3Rpb25SZWN0JilzZWxlY3Rpb25SZWN0OwogCiBAZW5kCiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS1RleHRTZWxlY3Rpb25SZWN0Lm1tIGIvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLVGV4dFNlbGVjdGlvblJlY3QubW0KaW5kZXggMTVlMGIx
NTI2YjNmOTExMWE0Mjk4ZTZkMjMzMmJkMTJkYjU1MDRlZS4uOTM0N2I2YmUzNjZiOTQ3M2Y3MTBh
MGU5Y2E2NGU5YWU2ZTk1Njk2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
aW9zL1dLVGV4dFNlbGVjdGlvblJlY3QubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
aW9zL1dLVGV4dFNlbGVjdGlvblJlY3QubW0KQEAgLTI4LDQ3ICsyOCwzMSBAQAogCiAjaWYgUExB
VEZPUk0oSU9TX0ZBTUlMWSkKIAotLy8gRklYTUU6IExheWVyaW5nIHZpb2xhdGlvbjsgV2ViS2l0
MiBzaG91bGQgbm90IGluY2x1ZGUgV2ViS2l0IGhlYWRlcnMuCi0jaW1wb3J0IDxXZWJLaXQvV2Vi
U2VsZWN0aW9uUmVjdC5oPgorI2ltcG9ydCA8V2ViQ29yZS9TZWxlY3Rpb25SZWN0Lmg+CiAKIEBp
bXBsZW1lbnRhdGlvbiBXS1RleHRTZWxlY3Rpb25SZWN0Ci0KLS0gKGlkKWluaXRXaXRoV2ViUmVj
dDooV2ViU2VsZWN0aW9uUmVjdCAqKXdSZWN0CiB7Ci0gICAgc2VsZiA9IFtzdXBlciBpbml0XTsK
LSAgICBpZiAoc2VsZikKLSAgICAgICAgc2VsZi53ZWJSZWN0ID0gd1JlY3Q7CisgICAgV2ViQ29y
ZTo6U2VsZWN0aW9uUmVjdCBfc2VsZWN0aW9uUmVjdDsKK30KIAorLSAoaW5zdGFuY2V0eXBlKWlu
aXRXaXRoU2VsZWN0aW9uUmVjdDooY29uc3QgV2ViQ29yZTo6U2VsZWN0aW9uUmVjdCYpc2VsZWN0
aW9uUmVjdAoreworICAgIGlmICghKHNlbGYgPSBbc3VwZXIgaW5pdF0pKQorICAgICAgICByZXR1
cm4gbmlsOworICAgIF9zZWxlY3Rpb25SZWN0ID0gc2VsZWN0aW9uUmVjdDsKICAgICByZXR1cm4g
c2VsZjsKIH0KIAotLSAodm9pZClkZWFsbG9jCi17Ci0gICAgc2VsZi53ZWJSZWN0ID0gbmlsOwot
ICAgIFtzdXBlciBkZWFsbG9jXTsKLX0KLQotLy8gRklYTUU6IFdlIGFyZSB1c2luZyB0aGlzIGlt
cGxlbWVudGF0aW9uIGZvciBub3cgdGhhdCB1c2VzIFdlYlNlbGVjdGlvblJlY3QsIGJ1dAotLy8g
d2Ugd2FudCB0byBwcm92aWRlIG91ciBvd24gYmFzZWQgb24gV2ViQ29yZTo6U2VsZWN0aW9uUmVj
dC4KLSsgKE5TQXJyYXkgKil0ZXh0U2VsZWN0aW9uUmVjdHNXaXRoV2ViUmVjdHM6KE5TQXJyYXkg
Kil3ZWJSZWN0cwotewotICAgIE5TTXV0YWJsZUFycmF5ICphcnJheSA9IFtOU011dGFibGVBcnJh
eSBhcnJheVdpdGhDYXBhY2l0eTp3ZWJSZWN0cy5jb3VudF07Ci0gICAgZm9yIChXZWJTZWxlY3Rp
b25SZWN0ICp3ZWJSZWN0IGluIHdlYlJlY3RzKSB7Ci0gICAgICAgIFJldGFpblB0cjxXS1RleHRT
ZWxlY3Rpb25SZWN0PiByZWN0ID0gYWRvcHROUyhbW1dLVGV4dFNlbGVjdGlvblJlY3QgYWxsb2Nd
IGluaXRXaXRoV2ViUmVjdDp3ZWJSZWN0XSk7Ci0gICAgICAgIFthcnJheSBhZGRPYmplY3Q6cmVj
dC5nZXQoKV07Ci0gICAgfQotICAgIHJldHVybiBhcnJheTsKLX0KLQogLSAoQ0dSZWN0KXJlY3QK
IHsKLSAgICByZXR1cm4gX3dlYlJlY3QucmVjdDsKKyAgICByZXR1cm4gX3NlbGVjdGlvblJlY3Qu
cmVjdCgpOwogfQogCiBBTExPV19ERVBSRUNBVEVEX0RFQ0xBUkFUSU9OU19CRUdJTgogLSAoVUlU
ZXh0V3JpdGluZ0RpcmVjdGlvbil3cml0aW5nRGlyZWN0aW9uCiB7Ci0gICAgcmV0dXJuIChVSVRl
eHRXcml0aW5nRGlyZWN0aW9uKV93ZWJSZWN0LndyaXRpbmdEaXJlY3Rpb247CisgICAgYXV0byB3
a1dyaXRpbmdEaXJlY3Rpb24gPSBfc2VsZWN0aW9uUmVjdC5kaXJlY3Rpb24oKSA9PSBXZWJDb3Jl
OjpUZXh0RGlyZWN0aW9uOjpMVFIgPyBXS1dyaXRpbmdEaXJlY3Rpb25MZWZ0VG9SaWdodCA6IFdL
V3JpdGluZ0RpcmVjdGlvblJpZ2h0VG9MZWZ0OworICAgIHJldHVybiAoVUlUZXh0V3JpdGluZ0Rp
cmVjdGlvbil3a1dyaXRpbmdEaXJlY3Rpb247CiB9CiBBTExPV19ERVBSRUNBVEVEX0RFQ0xBUkFU
SU9OU19FTkQKIApAQCAtNzksMTcgKzYzLDE3IEBAIC0gKFVJVGV4dFJhbmdlICopcmFuZ2UKIAog
LSAoQk9PTCljb250YWluc1N0YXJ0CiB7Ci0gICAgcmV0dXJuIF93ZWJSZWN0LmNvbnRhaW5zU3Rh
cnQ7CisgICAgcmV0dXJuIF9zZWxlY3Rpb25SZWN0LmNvbnRhaW5zU3RhcnQoKTsKIH0KIAogLSAo
Qk9PTCljb250YWluc0VuZAogewotICAgIHJldHVybiBfd2ViUmVjdC5jb250YWluc0VuZDsKKyAg
ICByZXR1cm4gX3NlbGVjdGlvblJlY3QuY29udGFpbnNFbmQoKTsKIH0KIAogLSAoQk9PTClpc1Zl
cnRpY2FsCiB7Ci0gICAgcmV0dXJuICFfd2ViUmVjdC5pc0hvcml6b250YWw7CisgICAgcmV0dXJu
ICFfc2VsZWN0aW9uUmVjdC5pc0hvcml6b250YWwoKTsKIH0KIAogQGVuZAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>392386</attachid>
            <date>2020-03-04 00:30:58 -0800</date>
            <delta_ts>2020-03-04 01:04:32 -0800</delta_ts>
            <desc>For the bots</desc>
            <filename>Bug208561+208563.patch</filename>
            <type>text/plain</type>
            <size>18378</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKaW5kZXggN2Y0OTc3ZjM3MjcuLmJkM2NhODBlNzQxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsx
LDY2IEBACisyMDIwLTAzLTA0ICBEYW5pZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KKwor
ICAgICAgICBJbXBsZW1lbnQgV0tUZXh0U2VsZWN0aW9uUmVjdCBpbiB0ZXJtcyBvZiBXZWJDb3Jl
OjpTZWxlY3Rpb25SZWN0IGFuZCBXS1RleHRSYW5nZSBpbiB0ZXJtcyBvZiBXS1RleHRTZWxlY3Rp
b25SZWN0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MDg1NjMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJ
dCBpcyBhIGxheWVyaW5nIHZpb2xhdGlvbiB0aGF0IFdlYktpdDIgaW5jbHVkZXMgYSBoZWFkZXIg
ZnJvbSBXZWJLaXQuIEltcGxlbWVudAorICAgICAgICBXS1RleHRTZWxlY3Rpb25SZWN0IGluIHRl
cm1zIG9mIFdlYkNvcmU6OlNlbGVjdGlvblJlY3QgYXMgYSBzdGVwIHRvd2FyZHMgZml4aW5nIHRo
aXMuCisgICAgICAgIEFsc28gYXZvaWQgdGhlIFdlYkNvcmU6OlNlbGVjdGlvblJlY3QgLT4gV2Vi
U2VsZWN0aW9uUmVjdCAtPiBXS1RleHRTZWxlY3Rpb25SZWN0CisgICAgICAgIGRhbmNlIHRoYXQg
V0tUZXh0UmFuZ2UgZG9lcyBzbyB0aGF0IC1bV0tUZXh0UmFuZ2Ugc2VsZWN0aW9uUmVjdHNGb3JS
YW5nZV0gcmV0dXJucworICAgICAgICBhbiBhcnJheSBvZiBXS1RleHRTZWxlY3Rpb25SZWN0cyBi
eSB3cml0aW5nIFdLVGV4dFJhbmdlIGluIHRlcm1zIG9mIE5TQXJyYXk8V0tUZXh0U2VsZWN0aW9u
UmVjdCAqPiouCisKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFj
dGlvbi5tbToKKyAgICAgICAgKC1bV0tDb250ZW50VmlldyBfdWlUZXh0U2VsZWN0aW9uUmVjdHNd
KToKKyAgICAgICAgKC1bV0tDb250ZW50VmlldyBzZWxlY3RlZFRleHRSYW5nZV0pOgorICAgICAg
ICAoLVtXS0NvbnRlbnRWaWV3IHNlbGVjdGlvblJlY3RzRm9yUmFuZ2U6XSk6CisgICAgICAgICog
VUlQcm9jZXNzL2lvcy9XS1RleHRTZWxlY3Rpb25SZWN0Lmg6CisgICAgICAgICogVUlQcm9jZXNz
L2lvcy9XS1RleHRTZWxlY3Rpb25SZWN0Lm1tOgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rpb25S
ZWN0IGluaXRXaXRoU2VsZWN0aW9uUmVjdDpdKToKKyAgICAgICAgKC1bV0tUZXh0U2VsZWN0aW9u
UmVjdCByZWN0XSk6CisgICAgICAgICgtW1dLVGV4dFNlbGVjdGlvblJlY3Qgd3JpdGluZ0RpcmVj
dGlvbl0pOgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rpb25SZWN0IGNvbnRhaW5zU3RhcnRdKToK
KyAgICAgICAgKC1bV0tUZXh0U2VsZWN0aW9uUmVjdCBjb250YWluc0VuZF0pOgorICAgICAgICAo
LVtXS1RleHRTZWxlY3Rpb25SZWN0IGlzVmVydGljYWxdKToKKyAgICAgICAgKC1bV0tUZXh0U2Vs
ZWN0aW9uUmVjdCBpbml0V2l0aFdlYlJlY3Q6XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dLVGV4
dFNlbGVjdGlvblJlY3QgZGVhbGxvY10pOiBEZWxldGVkLgorICAgICAgICAoK1tXS1RleHRTZWxl
Y3Rpb25SZWN0IHRleHRTZWxlY3Rpb25SZWN0c1dpdGhXZWJSZWN0czpdKTogRGVsZXRlZC4KKwor
MjAyMC0wMy0wMyAgRGFuaWVsIEJhdGVzICA8ZGFiYXRlc0BhcHBsZS5jb20+CisKKyAgICAgICAg
TW92ZSBXS1RleHRTZWxlY3Rpb25SZWN0IGludG8gaXRzIG93biBmaWxlCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDg1NjEKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXS1RleHRTZWxlY3Rpb25SZWN0IGlz
IGN1cnJlbnRseSBkZWZpbmVkIGluIFdLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbS4gU2VwYXJh
dGUgaXQKKyAgICAgICAgb3V0IGludG8gaXRzIG93biBmaWxlIHRvIGltcHJvdmUgcHJvamVjdCBv
cmdhbml6YXRpb24gYW5kIGRlLWNsdXR0ZXIgV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tLgor
CisgICAgICAgICogU291cmNlc0NvY29hLnR4dDoKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dL
Q29udGVudFZpZXdJbnRlcmFjdGlvbi5tbToKKyAgICAgICAgKC1bV0tUZXh0U2VsZWN0aW9uUmVj
dCBpbml0V2l0aFdlYlJlY3Q6XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dLVGV4dFNlbGVjdGlv
blJlY3QgZGVhbGxvY10pOiBEZWxldGVkLgorICAgICAgICAoK1tXS1RleHRTZWxlY3Rpb25SZWN0
IHRleHRTZWxlY3Rpb25SZWN0c1dpdGhXZWJSZWN0czpdKTogRGVsZXRlZC4KKyAgICAgICAgKC1b
V0tUZXh0U2VsZWN0aW9uUmVjdCByZWN0XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dLVGV4dFNl
bGVjdGlvblJlY3Qgd3JpdGluZ0RpcmVjdGlvbl0pOiBEZWxldGVkLgorICAgICAgICAoLVtXS1Rl
eHRTZWxlY3Rpb25SZWN0IHJhbmdlXSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dLVGV4dFNlbGVj
dGlvblJlY3QgY29udGFpbnNTdGFydF0pOiBEZWxldGVkLgorICAgICAgICAoLVtXS1RleHRTZWxl
Y3Rpb25SZWN0IGNvbnRhaW5zRW5kXSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dLVGV4dFNlbGVj
dGlvblJlY3QgaXNWZXJ0aWNhbF0pOiBEZWxldGVkLgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3Mv
V0tUZXh0U2VsZWN0aW9uUmVjdC5oOiBBZGRlZC4KKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dL
VGV4dFNlbGVjdGlvblJlY3QubW06IEFkZGVkLgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rpb25S
ZWN0IGluaXRXaXRoV2ViUmVjdDpdKToKKyAgICAgICAgKC1bV0tUZXh0U2VsZWN0aW9uUmVjdCBk
ZWFsbG9jXSk6CisgICAgICAgICgrW1dLVGV4dFNlbGVjdGlvblJlY3QgdGV4dFNlbGVjdGlvblJl
Y3RzV2l0aFdlYlJlY3RzOl0pOgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rpb25SZWN0IHJlY3Rd
KToKKyAgICAgICAgKC1bV0tUZXh0U2VsZWN0aW9uUmVjdCB3cml0aW5nRGlyZWN0aW9uXSk6Cisg
ICAgICAgICgtW1dLVGV4dFNlbGVjdGlvblJlY3QgcmFuZ2VdKToKKyAgICAgICAgKC1bV0tUZXh0
U2VsZWN0aW9uUmVjdCBjb250YWluc1N0YXJ0XSk6CisgICAgICAgICgtW1dLVGV4dFNlbGVjdGlv
blJlY3QgY29udGFpbnNFbmRdKToKKyAgICAgICAgKC1bV0tUZXh0U2VsZWN0aW9uUmVjdCBpc1Zl
cnRpY2FsXSk6CisgICAgICAgICogV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisK
IDIwMjAtMDMtMDMgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29tPgogCiAgICAgICAg
IFdlYiBJbnNwZWN0b3I6IHJlLWFkZCBgSW5zcGVjdG9yRnJvbnRlbmRIb3N0YCBzdXBwb3J0IGZv
ciBtb3ZpbmcgdGhlIGluc3BlY3RlZCB3aW5kb3cKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
U291cmNlc0NvY29hLnR4dCBiL1NvdXJjZS9XZWJLaXQvU291cmNlc0NvY29hLnR4dAppbmRleCAw
YTc3NjkzOTg3OS4uMjVjYmE5NzNiNjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU291cmNl
c0NvY29hLnR4dAorKysgYi9Tb3VyY2UvV2ViS2l0L1NvdXJjZXNDb2NvYS50eHQKQEAgLTQ3MSw2
ICs0NzEsNyBAQCBVSVByb2Nlc3MvaW9zL1dLU3ludGhldGljRmxhZ3NDaGFuZ2VkV2ViRXZlbnQu
bW0KIFVJUHJvY2Vzcy9pb3MvV0tTeW50aGV0aWNUYXBHZXN0dXJlUmVjb2duaXplci5tbQogVUlQ
cm9jZXNzL2lvcy9XS1N5c3RlbVByZXZpZXdWaWV3Lm1tCiBVSVByb2Nlc3MvaW9zL1dLVG91Y2hB
Y3Rpb25HZXN0dXJlUmVjb2duaXplci5tbQorVUlQcm9jZXNzL2lvcy9XS1RleHRTZWxlY3Rpb25S
ZWN0Lm1tCiBVSVByb2Nlc3MvaW9zL1dLV2ViRXZlbnQubW0KIAogVUlQcm9jZXNzL0xhdW5jaGVy
L21hYy9Qcm9jZXNzTGF1bmNoZXJNYWMubW0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0gYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCmluZGV4IDg0MjJkNTM5M2M1
Li4wNWQ4OWRmODRlYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dL
Q29udGVudFZpZXdJbnRlcmFjdGlvbi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9p
b3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCkBAIC02NSw2ICs2NSw3IEBACiAjaW1wb3J0
ICJXS1NlbGVjdE1lbnVMaXN0Vmlld0NvbnRyb2xsZXIuaCIKICNpbXBvcnQgIldLU3ludGhldGlj
RmxhZ3NDaGFuZ2VkV2ViRXZlbnQuaCIKICNpbXBvcnQgIldLVGV4dElucHV0TGlzdFZpZXdDb250
cm9sbGVyLmgiCisjaW1wb3J0ICJXS1RleHRTZWxlY3Rpb25SZWN0LmgiCiAjaW1wb3J0ICJXS1Rp
bWVQaWNrZXJWaWV3Q29udHJvbGxlci5oIgogI2ltcG9ydCAiV0tVSURlbGVnYXRlUHJpdmF0ZS5o
IgogI2ltcG9ydCAiV0tXZWJWaWV3Q29uZmlndXJhdGlvbi5oIgpAQCAtMjY1LDcgKzI2Niw3IEBA
IEBpbnRlcmZhY2UgV0tUZXh0UmFuZ2UgOiBVSVRleHRSYW5nZSB7CiAgICAgQk9PTCBfaXNOb25l
OwogICAgIEJPT0wgX2lzUmFuZ2U7CiAgICAgQk9PTCBfaXNFZGl0YWJsZTsKLSAgICBOU0FycmF5
ICpfc2VsZWN0aW9uUmVjdHM7CisgICAgTlNBcnJheTxXS1RleHRTZWxlY3Rpb25SZWN0ICo+Kl9z
ZWxlY3Rpb25SZWN0czsKICAgICBOU1VJbnRlZ2VyIF9zZWxlY3RlZFRleHRMZW5ndGg7CiB9CiBA
cHJvcGVydHkgKG5vbmF0b21pYykgQ0dSZWN0IHN0YXJ0UmVjdDsKQEAgLTI3NCw3ICsyNzUsNyBA
QCBAcHJvcGVydHkgKG5vbmF0b21pYykgQk9PTCBpc05vbmU7CiBAcHJvcGVydHkgKG5vbmF0b21p
YykgQk9PTCBpc1JhbmdlOwogQHByb3BlcnR5IChub25hdG9taWMpIEJPT0wgaXNFZGl0YWJsZTsK
IEBwcm9wZXJ0eSAobm9uYXRvbWljKSBOU1VJbnRlZ2VyIHNlbGVjdGVkVGV4dExlbmd0aDsKLUBw
cm9wZXJ0eSAoY29weSwgbm9uYXRvbWljKSBOU0FycmF5ICpzZWxlY3Rpb25SZWN0czsKK0Bwcm9w
ZXJ0eSAoY29weSwgbm9uYXRvbWljKSBOU0FycmF5PFdLVGV4dFNlbGVjdGlvblJlY3QgKj4gKnNl
bGVjdGlvblJlY3RzOwogCiArIChXS1RleHRSYW5nZSAqKXRleHRSYW5nZVdpdGhTdGF0ZTooQk9P
TClpc05vbmUgaXNSYW5nZTooQk9PTClpc1JhbmdlIGlzRWRpdGFibGU6KEJPT0wpaXNFZGl0YWJs
ZSBzdGFydFJlY3Q6KENHUmVjdClzdGFydFJlY3QgZW5kUmVjdDooQ0dSZWN0KWVuZFJlY3Qgc2Vs
ZWN0aW9uUmVjdHM6KE5TQXJyYXkgKilzZWxlY3Rpb25SZWN0cyBzZWxlY3RlZFRleHRMZW5ndGg6
KE5TVUludGVnZXIpc2VsZWN0ZWRUZXh0TGVuZ3RoOwogCkBAIC0yOTAsMTMgKzI5MSw2IEBAICsg
KFdLVGV4dFBvc2l0aW9uICopdGV4dFBvc2l0aW9uV2l0aFJlY3Q6KENHUmVjdClwb3NpdGlvblJl
Y3Q7CiAKIEBlbmQKIAotQGludGVyZmFjZSBXS1RleHRTZWxlY3Rpb25SZWN0IDogVUlUZXh0U2Vs
ZWN0aW9uUmVjdAotCi1AcHJvcGVydHkgKG5vbmF0b21pYywgcmV0YWluKSBXZWJTZWxlY3Rpb25S
ZWN0ICp3ZWJSZWN0OwotCi0rIChOU0FycmF5ICopdGV4dFNlbGVjdGlvblJlY3RzV2l0aFdlYlJl
Y3RzOihOU0FycmF5ICopd2ViUmVjdHM7Ci0KLUBlbmQKIAogQGludGVyZmFjZSBXS0F1dG9jb3Jy
ZWN0aW9uUmVjdHMgOiBVSVdLQXV0b2NvcnJlY3Rpb25SZWN0cwogKyAoV0tBdXRvY29ycmVjdGlv
blJlY3RzICopYXV0b2NvcnJlY3Rpb25SZWN0c1dpdGhGaXJzdENHUmVjdDooQ0dSZWN0KWZpcnN0
UmVjdCBsYXN0Q0dSZWN0OihDR1JlY3QpbGFzdFJlY3Q7CkBAIC0yMzAwLDcgKzIyOTQsNyBAQCAt
IChOU0FycmF5PE5TVmFsdWUgKj4gKilfdWlUZXh0U2VsZWN0aW9uUmVjdHMKIAogICAgIGlmIChf
dGV4dEludGVyYWN0aW9uQXNzaXN0YW50KSB7CiAgICAgICAgIGZvciAoV0tUZXh0U2VsZWN0aW9u
UmVjdCAqc2VsZWN0aW9uUmVjdCBpbiBbX3RleHRJbnRlcmFjdGlvbkFzc2lzdGFudCB2YWx1ZUZv
cktleVBhdGg6QCJzZWxlY3Rpb25WaWV3LnNlbGVjdGlvbi5zZWxlY3Rpb25SZWN0cyJdKQotICAg
ICAgICAgICAgW3RleHRTZWxlY3Rpb25SZWN0cyBhZGRPYmplY3Q6W05TVmFsdWUgdmFsdWVXaXRo
Q0dSZWN0OnNlbGVjdGlvblJlY3Qud2ViUmVjdC5yZWN0XV07CisgICAgICAgICAgICBbdGV4dFNl
bGVjdGlvblJlY3RzIGFkZE9iamVjdDpbTlNWYWx1ZSB2YWx1ZVdpdGhDR1JlY3Q6c2VsZWN0aW9u
UmVjdC5yZWN0XV07CiAgICAgfQogCiAgICAgcmV0dXJuIHRleHRTZWxlY3Rpb25SZWN0czsKQEAg
LTQ0NjYsNiArNDQ2MCwxNiBAQCAtICh2b2lkKXJlcGxhY2VSYW5nZTooVUlUZXh0UmFuZ2UgKily
YW5nZSB3aXRoVGV4dDooTlNTdHJpbmcgKil0ZXh0CiB7CiB9CiAKK3N0YXRpYyBOU0FycmF5PFdL
VGV4dFNlbGVjdGlvblJlY3QgKj4gKndrVGV4dFNlbGVjdGlvblJlY3RzKGNvbnN0IFZlY3RvcjxX
ZWJDb3JlOjpTZWxlY3Rpb25SZWN0PiYgY29yZVJlY3RzKQoreworICAgIGF1dG8gcmVjdHMgPSBh
ZG9wdE5TKFtbTlNNdXRhYmxlQXJyYXkgYWxsb2NdIGluaXRXaXRoQ2FwYWNpdHk6Y29yZVJlY3Rz
LnNpemUoKV0pOworICAgIGZvciAoYXV0byYgY29yZVJlY3QgOiBjb3JlUmVjdHMpIHsKKyAgICAg
ICAgYXV0byB3a1RleHRTZWxlY3Rpb25SZWN0ID0gYWRvcHROUyhbW1dLVGV4dFNlbGVjdGlvblJl
Y3QgYWxsb2NdIGluaXRXaXRoU2VsZWN0aW9uUmVjdDpjb3JlUmVjdF0pOworICAgICAgICBbcmVj
dHMgYWRkT2JqZWN0OndrVGV4dFNlbGVjdGlvblJlY3QuZ2V0KCldOworICAgIH0KKyAgICByZXR1
cm4gcmVjdHMuYXV0b3JlbGVhc2UoKTsKK30KKwogLSAoVUlUZXh0UmFuZ2UgKilzZWxlY3RlZFRl
eHRSYW5nZQogewogICAgIGlmIChfcGFnZS0+ZWRpdG9yU3RhdGUoKS5zZWxlY3Rpb25Jc05vbmUg
fHwgX3BhZ2UtPmVkaXRvclN0YXRlKCkuaXNNaXNzaW5nUG9zdExheW91dERhdGEpCkBAIC00NTAz
LDcgKzQ1MDcsNyBAQCAtIChVSVRleHRSYW5nZSAqKXNlbGVjdGVkVGV4dFJhbmdlCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGlzRWRpdGFibGU6X3BhZ2UtPmVkaXRvclN0YXRlKCku
aXNDb250ZW50RWRpdGFibGUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0
UmVjdDpzdGFydFJlY3QKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5kUmVj
dDplbmRSZWN0Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0aW9uUmVjdHM6W3Nl
bGYgd2ViU2VsZWN0aW9uUmVjdHNdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0
aW9uUmVjdHM6d2tUZXh0U2VsZWN0aW9uUmVjdHMoX3BhZ2UtPmVkaXRvclN0YXRlKCkucG9zdExh
eW91dERhdGEoKS5zZWxlY3Rpb25SZWN0cykKICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVj
dGVkVGV4dExlbmd0aDpwb3N0TGF5b3V0RWRpdG9yU3RhdGVEYXRhLnNlbGVjdGVkVGV4dExlbmd0
aF07CiB9CiAKQEAgLTQ1MTQsNyArNDUxOCw3IEBAIC0gKENHUmVjdCljYXJldFJlY3RGb3JQb3Np
dGlvbjooVUlUZXh0UG9zaXRpb24gKilwb3NpdGlvbgogCiAtIChOU0FycmF5ICopc2VsZWN0aW9u
UmVjdHNGb3JSYW5nZTooVUlUZXh0UmFuZ2UgKilyYW5nZQogewotICAgIHJldHVybiBbV0tUZXh0
U2VsZWN0aW9uUmVjdCB0ZXh0U2VsZWN0aW9uUmVjdHNXaXRoV2ViUmVjdHM6KChXS1RleHRSYW5n
ZSAqKXJhbmdlKS5zZWxlY3Rpb25SZWN0c107CisgICAgcmV0dXJuIFsoV0tUZXh0UmFuZ2UgKily
YW5nZSBzZWxlY3Rpb25SZWN0c107CiB9CiAKIC0gKHZvaWQpc2V0U2VsZWN0ZWRUZXh0UmFuZ2U6
KFVJVGV4dFJhbmdlICopcmFuZ2UKQEAgLTkzMDQsNyArOTMwOCw4IEBAIEBlbmQKIAogI2VuZGlm
IC8vIEhBVkUoTElOS19QUkVWSUVXKQogCi0vLyBVSVRleHRSYW5nZSwgVUlUZXh0UG9zaXRpb24g
YW5kIFVJVGV4dFNlbGVjdGlvblJlY3QgaW1wbGVtZW50YXRpb25zIGZvciBXSzIKKy8vIFVJVGV4
dFJhbmdlIGFuZCBVSVRleHRQb3NpdGlvbiBpbXBsZW1lbnRhdGlvbnMgZm9yIFdLMgorLy8gRklY
TUU6IE1vdmUgdGhlc2Ugb3V0IGludG8gc2VwYXJhdGUgZmlsZXMuCiAKIEBpbXBsZW1lbnRhdGlv
biBXS1RleHRSYW5nZSAoVUlUZXh0SW5wdXRBZGRpdGlvbnMpCiAKQEAgLTk0MjAsNzEgKzk0MjUs
NiBAQCAtIChOU1N0cmluZyAqKWRlc2NyaXB0aW9uCiAKIEBlbmQKIAotQGltcGxlbWVudGF0aW9u
IFdLVGV4dFNlbGVjdGlvblJlY3QKLQotLSAoaWQpaW5pdFdpdGhXZWJSZWN0OihXZWJTZWxlY3Rp
b25SZWN0ICopd1JlY3QKLXsKLSAgICBzZWxmID0gW3N1cGVyIGluaXRdOwotICAgIGlmIChzZWxm
KQotICAgICAgICBzZWxmLndlYlJlY3QgPSB3UmVjdDsKLQotICAgIHJldHVybiBzZWxmOwotfQot
Ci0tICh2b2lkKWRlYWxsb2MKLXsKLSAgICBzZWxmLndlYlJlY3QgPSBuaWw7Ci0gICAgW3N1cGVy
IGRlYWxsb2NdOwotfQotCi0vLyBGSVhNRTogd2UgYXJlIHVzaW5nIHRoaXMgaW1wbGVtZW50YXRp
b24gZm9yIG5vdwotLy8gdGhhdCB1c2VzIFdlYlNlbGVjdGlvblJlY3QsIGJ1dCB3ZSB3YW50IHRv
IHByb3ZpZGUgb3VyIG93bgotLy8gYmFzZWQgb24gV2ViQ29yZTo6U2VsZWN0aW9uUmVjdC4KLQot
KyAoTlNBcnJheSAqKXRleHRTZWxlY3Rpb25SZWN0c1dpdGhXZWJSZWN0czooTlNBcnJheSAqKXdl
YlJlY3RzCi17Ci0gICAgTlNNdXRhYmxlQXJyYXkgKmFycmF5ID0gW05TTXV0YWJsZUFycmF5IGFy
cmF5V2l0aENhcGFjaXR5OndlYlJlY3RzLmNvdW50XTsKLSAgICBmb3IgKFdlYlNlbGVjdGlvblJl
Y3QgKndlYlJlY3QgaW4gd2ViUmVjdHMpIHsKLSAgICAgICAgUmV0YWluUHRyPFdLVGV4dFNlbGVj
dGlvblJlY3Q+IHJlY3QgPSBhZG9wdE5TKFtbV0tUZXh0U2VsZWN0aW9uUmVjdCBhbGxvY10gaW5p
dFdpdGhXZWJSZWN0OndlYlJlY3RdKTsKLSAgICAgICAgW2FycmF5IGFkZE9iamVjdDpyZWN0Lmdl
dCgpXTsKLSAgICB9Ci0gICAgcmV0dXJuIGFycmF5OwotfQotCi0tIChDR1JlY3QpcmVjdAotewot
ICAgIHJldHVybiBfd2ViUmVjdC5yZWN0OwotfQotCi1BTExPV19ERVBSRUNBVEVEX0RFQ0xBUkFU
SU9OU19CRUdJTgotLSAoVUlUZXh0V3JpdGluZ0RpcmVjdGlvbil3cml0aW5nRGlyZWN0aW9uCi17
Ci0gICAgcmV0dXJuIChVSVRleHRXcml0aW5nRGlyZWN0aW9uKV93ZWJSZWN0LndyaXRpbmdEaXJl
Y3Rpb247Ci19Ci1BTExPV19ERVBSRUNBVEVEX0RFQ0xBUkFUSU9OU19FTkQKLQotLSAoVUlUZXh0
UmFuZ2UgKilyYW5nZQotewotICAgIHJldHVybiBuaWw7Ci19Ci0KLS0gKEJPT0wpY29udGFpbnNT
dGFydAotewotICAgIHJldHVybiBfd2ViUmVjdC5jb250YWluc1N0YXJ0OwotfQotCi0tIChCT09M
KWNvbnRhaW5zRW5kCi17Ci0gICAgcmV0dXJuIF93ZWJSZWN0LmNvbnRhaW5zRW5kOwotfQotCi0t
IChCT09MKWlzVmVydGljYWwKLXsKLSAgICByZXR1cm4gIV93ZWJSZWN0LmlzSG9yaXpvbnRhbDsK
LX0KLQotQGVuZAotCiBAaW1wbGVtZW50YXRpb24gV0tBdXRvY29ycmVjdGlvblJlY3RzCiAKICsg
KFdLQXV0b2NvcnJlY3Rpb25SZWN0cyAqKWF1dG9jb3JyZWN0aW9uUmVjdHNXaXRoRmlyc3RDR1Jl
Y3Q6KENHUmVjdClmaXJzdFJlY3QgbGFzdENHUmVjdDooQ0dSZWN0KWxhc3RSZWN0CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tUZXh0U2VsZWN0aW9uUmVjdC5oIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLVGV4dFNlbGVjdGlvblJlY3QuaApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uOGQ1OGZlMWZhNmIKLS0tIC9kZXYvbnVs
bAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tUZXh0U2VsZWN0aW9uUmVjdC5o
CkBAIC0wLDAgKzEsNDIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBh
cmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFO
RCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2lmIFBMQVRG
T1JNKElPU19GQU1JTFkpCisKKyNpbXBvcnQgPFVJS2l0L1VJS2l0Lmg+CisKK25hbWVzcGFjZSBX
ZWJDb3JlIHsKK2NsYXNzIFNlbGVjdGlvblJlY3Q7Cit9CisKK0BpbnRlcmZhY2UgV0tUZXh0U2Vs
ZWN0aW9uUmVjdCA6IFVJVGV4dFNlbGVjdGlvblJlY3QKKworLSAoaW5zdGFuY2V0eXBlKWluaXRX
aXRoU2VsZWN0aW9uUmVjdDooY29uc3QgV2ViQ29yZTo6U2VsZWN0aW9uUmVjdCYpc2VsZWN0aW9u
UmVjdDsKKworQGVuZAorCisjZW5kaWYgLy8gUExBVEZPUk0oSU9TX0ZBTUlMWSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS1RleHRTZWxlY3Rpb25SZWN0Lm1tIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLVGV4dFNlbGVjdGlvblJlY3QubW0KbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjkzNDdiNmJlMzY2Ci0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLVGV4dFNlbGVjdGlvblJlY3Qu
bW0KQEAgLTAsMCArMSw4MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAq
IGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICog
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBvcnQgImNvbmZpZy5oIgorI2lt
cG9ydCAiV0tUZXh0U2VsZWN0aW9uUmVjdC5oIgorCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkK
KworI2ltcG9ydCA8V2ViQ29yZS9TZWxlY3Rpb25SZWN0Lmg+CisKK0BpbXBsZW1lbnRhdGlvbiBX
S1RleHRTZWxlY3Rpb25SZWN0Cit7CisgICAgV2ViQ29yZTo6U2VsZWN0aW9uUmVjdCBfc2VsZWN0
aW9uUmVjdDsKK30KKworLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRoU2VsZWN0aW9uUmVjdDooY29u
c3QgV2ViQ29yZTo6U2VsZWN0aW9uUmVjdCYpc2VsZWN0aW9uUmVjdAoreworICAgIGlmICghKHNl
bGYgPSBbc3VwZXIgaW5pdF0pKQorICAgICAgICByZXR1cm4gbmlsOworICAgIF9zZWxlY3Rpb25S
ZWN0ID0gc2VsZWN0aW9uUmVjdDsKKyAgICByZXR1cm4gc2VsZjsKK30KKworLSAoQ0dSZWN0KXJl
Y3QKK3sKKyAgICByZXR1cm4gX3NlbGVjdGlvblJlY3QucmVjdCgpOworfQorCitBTExPV19ERVBS
RUNBVEVEX0RFQ0xBUkFUSU9OU19CRUdJTgorLSAoVUlUZXh0V3JpdGluZ0RpcmVjdGlvbil3cml0
aW5nRGlyZWN0aW9uCit7CisgICAgYXV0byB3a1dyaXRpbmdEaXJlY3Rpb24gPSBfc2VsZWN0aW9u
UmVjdC5kaXJlY3Rpb24oKSA9PSBXZWJDb3JlOjpUZXh0RGlyZWN0aW9uOjpMVFIgPyBXS1dyaXRp
bmdEaXJlY3Rpb25MZWZ0VG9SaWdodCA6IFdLV3JpdGluZ0RpcmVjdGlvblJpZ2h0VG9MZWZ0Owor
ICAgIHJldHVybiAoVUlUZXh0V3JpdGluZ0RpcmVjdGlvbil3a1dyaXRpbmdEaXJlY3Rpb247Cit9
CitBTExPV19ERVBSRUNBVEVEX0RFQ0xBUkFUSU9OU19FTkQKKworLSAoVUlUZXh0UmFuZ2UgKily
YW5nZQoreworICAgIHJldHVybiBuaWw7Cit9CisKKy0gKEJPT0wpY29udGFpbnNTdGFydAorewor
ICAgIHJldHVybiBfc2VsZWN0aW9uUmVjdC5jb250YWluc1N0YXJ0KCk7Cit9CisKKy0gKEJPT0wp
Y29udGFpbnNFbmQKK3sKKyAgICByZXR1cm4gX3NlbGVjdGlvblJlY3QuY29udGFpbnNFbmQoKTsK
K30KKworLSAoQk9PTClpc1ZlcnRpY2FsCit7CisgICAgcmV0dXJuICFfc2VsZWN0aW9uUmVjdC5p
c0hvcml6b250YWwoKTsKK30KKworQGVuZAorCisjZW5kaWYgLy8gUExBVEZPUk0oSU9TX0ZBTUlM
WSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2ogYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmlu
ZGV4IDE1YzUyNGYzNjIxLi40Y2E2ODMyMmM5MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9X
ZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYktp
dC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0xNzM0LDYgKzE3MzQsNyBAQAogCQlDRTFB
MEJEMjFBNDhFNkM2MDA1NEVGNzQgLyogQXNzZXJ0aW9uU2VydmljZXNTUEkuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENFMUEwQkNDMUE0OEU2QzYwMDU0
RUY3NCAvKiBBc3NlcnRpb25TZXJ2aWNlc1NQSS5oICovOyB9OwogCQlDRTFBMEJENjFBNDhFNkM2
MDA1NEVGNzQgLyogVENDU1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBDRTFBMEJEMDFBNDhFNkM2MDA1NEVGNzQgLyogVENDU1BJLmggKi87IH07CiAJ
CUNFMUEwQkQ3MUE0OEU2QzYwMDU0RUY3NCAvKiBUZXh0SW5wdXRTUEkuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENFMUEwQkQxMUE0OEU2QzYwMDU0RUY3
NCAvKiBUZXh0SW5wdXRTUEkuaCAqLzsgfTsKKwkJQ0U0NTk0NUMyNDBGODg1NTAwNzgwMTlGIC8q
IFdLVGV4dFNlbGVjdGlvblJlY3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IENFNDU5NDVBMjQwRjg1QjkwMDc4MDE5RiAvKiBXS1RleHRTZWxlY3Rpb25S
ZWN0LmggKi87IH07CiAJCUNFNTUwRTE1MjI4Mzc1MjIwMEQyODc5MSAvKiBJbnNlcnRUZXh0T3B0
aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0U1
NTBFMTIyMjgzNzNDODAwRDI4NzkxIC8qIEluc2VydFRleHRPcHRpb25zLmggKi87IH07CiAJCUNF
NUI0Qzg4MjFCNzNEODcwMDIyRTY0RiAvKiBXS1N5bnRoZXRpY0ZsYWdzQ2hhbmdlZFdlYkV2ZW50
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRTVCNEM4
NjIxQjczRDg3MDAyMkU2NEYgLyogV0tTeW50aGV0aWNGbGFnc0NoYW5nZWRXZWJFdmVudC5oICov
OyB9OwogCQlDRTcwRUU1RDIyNDQyQkQwMDBFMEFGMEYgLyogV0tGb3JtUGVyaXBoZXJhbEJhc2Uu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENFNzBFRTVD
MjI0NDJCRDAwMEUwQUYwRiAvKiBXS0Zvcm1QZXJpcGhlcmFsQmFzZS5oICovOyB9OwpAQCAtNTA1
MCw2ICs1MDUxLDggQEAKIAkJQ0UxQTBCQ0MxQTQ4RTZDNjAwNTRFRjc0IC8qIEFzc2VydGlvblNl
cnZpY2VzU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFzc2VydGlvblNl
cnZpY2VzU1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNFMUEwQkQwMUE0OEU2
QzYwMDU0RUY3NCAvKiBUQ0NTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
VENDU1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNFMUEwQkQxMUE0OEU2QzYw
MDU0RUY3NCAvKiBUZXh0SW5wdXRTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gVGV4dElucHV0U1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNFNDU5NDVB
MjQwRjg1QjkwMDc4MDE5RiAvKiBXS1RleHRTZWxlY3Rpb25SZWN0LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9
IFdLVGV4dFNlbGVjdGlvblJlY3QuaDsgcGF0aCA9IGlvcy9XS1RleHRTZWxlY3Rpb25SZWN0Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNFNDU5NDVCMjQwRjg1QjkwMDc4MDE5RiAv
KiBXS1RleHRTZWxlY3Rpb25SZWN0Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1lID0gV0tUZXh0U2Vs
ZWN0aW9uUmVjdC5tbTsgcGF0aCA9IGlvcy9XS1RleHRTZWxlY3Rpb25SZWN0Lm1tOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlDRTU1MEUxMjIyODM3M0M4MDBEMjg3OTEgLyogSW5zZXJ0
VGV4dE9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5zZXJ0VGV4dE9wdGlvbnMuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0U1NTBFMTMyMjgzNzQ0NDAwRDI4NzkxIC8qIEluc2Vy
dFRleHRPcHRpb25zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEluc2VydFRleHRPcHRpb25zLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0U1QjRDODYyMUI3M0Q4NzAwMjJFNjRG
IC8qIFdLU3ludGhldGljRmxhZ3NDaGFuZ2VkV2ViRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gV0tT
eW50aGV0aWNGbGFnc0NoYW5nZWRXZWJFdmVudC5oOyBwYXRoID0gaW9zL1dLU3ludGhldGljRmxh
Z3NDaGFuZ2VkV2ViRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTY3OTUs
NiArNjc5OCw4IEBACiAJCQkJMjZGMTBCRTcxOTE4N0UyRTAwMUQwRTY4IC8qIFdLU3ludGhldGlj
VGFwR2VzdHVyZVJlY29nbml6ZXIubW0gKi8sCiAJCQkJMzE2QjhCNjIyMDU0QjU1ODAwQkQ0QTYy
IC8qIFdLU3lzdGVtUHJldmlld1ZpZXcuaCAqLywKIAkJCQkzMTZCOEI2MTIwNTRCNTU4MDBCRDRB
NjIgLyogV0tTeXN0ZW1QcmV2aWV3Vmlldy5tbSAqLywKKwkJCQlDRTQ1OTQ1QTI0MEY4NUI5MDA3
ODAxOUYgLyogV0tUZXh0U2VsZWN0aW9uUmVjdC5oICovLAorCQkJCUNFNDU5NDVCMjQwRjg1Qjkw
MDc4MDE5RiAvKiBXS1RleHRTZWxlY3Rpb25SZWN0Lm1tICovLAogCQkJCTcxQTY3NkE0MjJDNjIz
MTgwMDdENjI5NSAvKiBXS1RvdWNoQWN0aW9uR2VzdHVyZVJlY29nbml6ZXIuaCAqLywKIAkJCQk3
MUE2NzZBNTIyQzYyMzE4MDA3RDYyOTUgLyogV0tUb3VjaEFjdGlvbkdlc3R1cmVSZWNvZ25pemVy
Lm1tICovLAogCQkJCTJEMUU4MjIxMjE2RkZGNTAwMEExNTI2NSAvKiBXS1dlYkV2ZW50LmggKi8s
CkBAIC0xMTM0Nyw2ICsxMTM1Miw3IEBACiAJCQkJMkRENjdBMzUxQkQ4NjEwNjAwNTNCMjUxIC8q
IFdLVGV4dEZpbmRlckNsaWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRjRENUY1MUQyMDYwODdB
MTAwMzhCQkE4IC8qIFdLVGV4dElucHV0TGlzdFZpZXdDb250cm9sbGVyLmggaW4gSGVhZGVycyAq
LywKIAkJCQkwRkNCNEU2ODE4QkJFM0Q5MDAwRkNGQzkgLyogV0tUZXh0SW5wdXRXaW5kb3dDb250
cm9sbGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlDRTQ1OTQ1QzI0MEY4ODU1MDA3ODAxOUYgLyog
V0tUZXh0U2VsZWN0aW9uUmVjdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMkVCNkZDMDEyMDMwMjE5
NjAwMTdFNjE5IC8qIFdLVGltZVBpY2tlclZpZXdDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywK
IAkJCQk3MUE2NzZBNjIyQzYyMzI1MDA3RDYyOTUgLyogV0tUb3VjaEFjdGlvbkdlc3R1cmVSZWNv
Z25pemVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzQwNzYwODEyNEZGMDI3MDA2OEYyMEEgLyog
V0tUeXBlLmggaW4gSGVhZGVycyAqLywK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>392390</attachid>
            <date>2020-03-04 01:04:34 -0800</date>
            <delta_ts>2020-03-04 01:05:53 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208563-20200304010433.patch</filename>
            <type>text/plain</type>
            <size>14749</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU3ODM1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDdmNDk3N2YzNzI3MDZkMzMw
YWFlZjFjMzkzMzUwMGFjNDA2NDI5MjUuLmI3NzdhNDQ0MDQyNWMwZDdmYjg3MzU3YjgxZjlkYjdi
YzUzM2UxNGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzcgQEAKKzIwMjAtMDMtMDMgIERhbmllbCBC
YXRlcyAgPGRhYmF0ZXNAYXBwbGUuY29tPgorCisgICAgICAgIE1vdmUgV0tUZXh0U2VsZWN0aW9u
UmVjdCBpbnRvIGl0cyBvd24gZmlsZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjA4NTYxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgV0tUZXh0U2VsZWN0aW9uUmVjdCBpcyBjdXJyZW50bHkgZGVmaW5lZCBp
biBXS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0uIFNlcGFyYXRlIGl0CisgICAgICAgIG91dCBp
bnRvIGl0cyBvd24gZmlsZSB0byBpbXByb3ZlIHByb2plY3Qgb3JnYW5pemF0aW9uIGFuZCBkZS1j
bHV0dGVyIFdLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbS4KKworICAgICAgICAqIFNvdXJjZXND
b2NvYS50eHQ6CisgICAgICAgICogVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rp
b24ubW06CisgICAgICAgICgtW1dLVGV4dFNlbGVjdGlvblJlY3QgaW5pdFdpdGhXZWJSZWN0Ol0p
OiBEZWxldGVkLgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rpb25SZWN0IGRlYWxsb2NdKTogRGVs
ZXRlZC4KKyAgICAgICAgKCtbV0tUZXh0U2VsZWN0aW9uUmVjdCB0ZXh0U2VsZWN0aW9uUmVjdHNX
aXRoV2ViUmVjdHM6XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dLVGV4dFNlbGVjdGlvblJlY3Qg
cmVjdF0pOiBEZWxldGVkLgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rpb25SZWN0IHdyaXRpbmdE
aXJlY3Rpb25dKTogRGVsZXRlZC4KKyAgICAgICAgKC1bV0tUZXh0U2VsZWN0aW9uUmVjdCByYW5n
ZV0pOiBEZWxldGVkLgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rpb25SZWN0IGNvbnRhaW5zU3Rh
cnRdKTogRGVsZXRlZC4KKyAgICAgICAgKC1bV0tUZXh0U2VsZWN0aW9uUmVjdCBjb250YWluc0Vu
ZF0pOiBEZWxldGVkLgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rpb25SZWN0IGlzVmVydGljYWxd
KTogRGVsZXRlZC4KKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLVGV4dFNlbGVjdGlvblJlY3Qu
aDogQWRkZWQuCisgICAgICAgICogVUlQcm9jZXNzL2lvcy9XS1RleHRTZWxlY3Rpb25SZWN0Lm1t
OiBBZGRlZC4KKyAgICAgICAgKC1bV0tUZXh0U2VsZWN0aW9uUmVjdCBpbml0V2l0aFdlYlJlY3Q6
XSk6CisgICAgICAgICgtW1dLVGV4dFNlbGVjdGlvblJlY3QgZGVhbGxvY10pOgorICAgICAgICAo
K1tXS1RleHRTZWxlY3Rpb25SZWN0IHRleHRTZWxlY3Rpb25SZWN0c1dpdGhXZWJSZWN0czpdKToK
KyAgICAgICAgKC1bV0tUZXh0U2VsZWN0aW9uUmVjdCByZWN0XSk6CisgICAgICAgICgtW1dLVGV4
dFNlbGVjdGlvblJlY3Qgd3JpdGluZ0RpcmVjdGlvbl0pOgorICAgICAgICAoLVtXS1RleHRTZWxl
Y3Rpb25SZWN0IHJhbmdlXSk6CisgICAgICAgICgtW1dLVGV4dFNlbGVjdGlvblJlY3QgY29udGFp
bnNTdGFydF0pOgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rpb25SZWN0IGNvbnRhaW5zRW5kXSk6
CisgICAgICAgICgtW1dLVGV4dFNlbGVjdGlvblJlY3QgaXNWZXJ0aWNhbF0pOgorICAgICAgICAq
IFdlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorCiAyMDIwLTAzLTAzICBEZXZpbiBS
b3Vzc28gIDxkcm91c3NvQGFwcGxlLmNvbT4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiByZS1h
ZGQgYEluc3BlY3RvckZyb250ZW5kSG9zdGAgc3VwcG9ydCBmb3IgbW92aW5nIHRoZSBpbnNwZWN0
ZWQgd2luZG93CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NvdXJjZXNDb2NvYS50eHQgYi9T
b3VyY2UvV2ViS2l0L1NvdXJjZXNDb2NvYS50eHQKaW5kZXggMGE3NzY5Mzk4NzllYjY5NWZmYmZl
YWZiZWQ4YmMyZjljNDRjZWZhNC4uMjVjYmE5NzNiNjRmYjU3ZTJkNzU4NTIyNDdkMjQ3ZjUwYTkz
ZTIzMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9Tb3VyY2VzQ29jb2EudHh0CisrKyBiL1Nv
dXJjZS9XZWJLaXQvU291cmNlc0NvY29hLnR4dApAQCAtNDcxLDYgKzQ3MSw3IEBAIFVJUHJvY2Vz
cy9pb3MvV0tTeW50aGV0aWNGbGFnc0NoYW5nZWRXZWJFdmVudC5tbQogVUlQcm9jZXNzL2lvcy9X
S1N5bnRoZXRpY1RhcEdlc3R1cmVSZWNvZ25pemVyLm1tCiBVSVByb2Nlc3MvaW9zL1dLU3lzdGVt
UHJldmlld1ZpZXcubW0KIFVJUHJvY2Vzcy9pb3MvV0tUb3VjaEFjdGlvbkdlc3R1cmVSZWNvZ25p
emVyLm1tCitVSVByb2Nlc3MvaW9zL1dLVGV4dFNlbGVjdGlvblJlY3QubW0KIFVJUHJvY2Vzcy9p
b3MvV0tXZWJFdmVudC5tbQogCiBVSVByb2Nlc3MvTGF1bmNoZXIvbWFjL1Byb2Nlc3NMYXVuY2hl
ck1hYy5tbQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVu
dFZpZXdJbnRlcmFjdGlvbi5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRl
bnRWaWV3SW50ZXJhY3Rpb24ubW0KaW5kZXggODQyMmQ1MzkzYzU3MGYxMWI4NTgxMTk3NmM2Njk5
M2I2NWYzZmJkNS4uNjMwMDhhNzk3YTlhYjE4OWIyNzE4ZDgwYjNmODg1ZGIyYTAxZWYyNSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFj
dGlvbi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0lu
dGVyYWN0aW9uLm1tCkBAIC02NSw2ICs2NSw3IEBACiAjaW1wb3J0ICJXS1NlbGVjdE1lbnVMaXN0
Vmlld0NvbnRyb2xsZXIuaCIKICNpbXBvcnQgIldLU3ludGhldGljRmxhZ3NDaGFuZ2VkV2ViRXZl
bnQuaCIKICNpbXBvcnQgIldLVGV4dElucHV0TGlzdFZpZXdDb250cm9sbGVyLmgiCisjaW1wb3J0
ICJXS1RleHRTZWxlY3Rpb25SZWN0LmgiCiAjaW1wb3J0ICJXS1RpbWVQaWNrZXJWaWV3Q29udHJv
bGxlci5oIgogI2ltcG9ydCAiV0tVSURlbGVnYXRlUHJpdmF0ZS5oIgogI2ltcG9ydCAiV0tXZWJW
aWV3Q29uZmlndXJhdGlvbi5oIgpAQCAtMjkwLDEzICsyOTEsNiBAQCArIChXS1RleHRQb3NpdGlv
biAqKXRleHRQb3NpdGlvbldpdGhSZWN0OihDR1JlY3QpcG9zaXRpb25SZWN0OwogCiBAZW5kCiAK
LUBpbnRlcmZhY2UgV0tUZXh0U2VsZWN0aW9uUmVjdCA6IFVJVGV4dFNlbGVjdGlvblJlY3QKLQot
QHByb3BlcnR5IChub25hdG9taWMsIHJldGFpbikgV2ViU2VsZWN0aW9uUmVjdCAqd2ViUmVjdDsK
LQotKyAoTlNBcnJheSAqKXRleHRTZWxlY3Rpb25SZWN0c1dpdGhXZWJSZWN0czooTlNBcnJheSAq
KXdlYlJlY3RzOwotCi1AZW5kCiAKIEBpbnRlcmZhY2UgV0tBdXRvY29ycmVjdGlvblJlY3RzIDog
VUlXS0F1dG9jb3JyZWN0aW9uUmVjdHMKICsgKFdLQXV0b2NvcnJlY3Rpb25SZWN0cyAqKWF1dG9j
b3JyZWN0aW9uUmVjdHNXaXRoRmlyc3RDR1JlY3Q6KENHUmVjdClmaXJzdFJlY3QgbGFzdENHUmVj
dDooQ0dSZWN0KWxhc3RSZWN0OwpAQCAtOTMwNCw3ICs5Mjk4LDggQEAgQGVuZAogCiAjZW5kaWYg
Ly8gSEFWRShMSU5LX1BSRVZJRVcpCiAKLS8vIFVJVGV4dFJhbmdlLCBVSVRleHRQb3NpdGlvbiBh
bmQgVUlUZXh0U2VsZWN0aW9uUmVjdCBpbXBsZW1lbnRhdGlvbnMgZm9yIFdLMgorLy8gVUlUZXh0
UmFuZ2UgYW5kIFVJVGV4dFBvc2l0aW9uIGltcGxlbWVudGF0aW9ucyBmb3IgV0syCisvLyBGSVhN
RTogTW92ZSB0aGVzZSBvdXQgaW50byBzZXBhcmF0ZSBmaWxlcy4KIAogQGltcGxlbWVudGF0aW9u
IFdLVGV4dFJhbmdlIChVSVRleHRJbnB1dEFkZGl0aW9ucykKIApAQCAtOTQyMCw3MSArOTQxNSw2
IEBAIC0gKE5TU3RyaW5nICopZGVzY3JpcHRpb24KIAogQGVuZAogCi1AaW1wbGVtZW50YXRpb24g
V0tUZXh0U2VsZWN0aW9uUmVjdAotCi0tIChpZClpbml0V2l0aFdlYlJlY3Q6KFdlYlNlbGVjdGlv
blJlY3QgKil3UmVjdAotewotICAgIHNlbGYgPSBbc3VwZXIgaW5pdF07Ci0gICAgaWYgKHNlbGYp
Ci0gICAgICAgIHNlbGYud2ViUmVjdCA9IHdSZWN0OwotCi0gICAgcmV0dXJuIHNlbGY7Ci19Ci0K
LS0gKHZvaWQpZGVhbGxvYwotewotICAgIHNlbGYud2ViUmVjdCA9IG5pbDsKLSAgICBbc3VwZXIg
ZGVhbGxvY107Ci19Ci0KLS8vIEZJWE1FOiB3ZSBhcmUgdXNpbmcgdGhpcyBpbXBsZW1lbnRhdGlv
biBmb3Igbm93Ci0vLyB0aGF0IHVzZXMgV2ViU2VsZWN0aW9uUmVjdCwgYnV0IHdlIHdhbnQgdG8g
cHJvdmlkZSBvdXIgb3duCi0vLyBiYXNlZCBvbiBXZWJDb3JlOjpTZWxlY3Rpb25SZWN0LgotCi0r
IChOU0FycmF5ICopdGV4dFNlbGVjdGlvblJlY3RzV2l0aFdlYlJlY3RzOihOU0FycmF5ICopd2Vi
UmVjdHMKLXsKLSAgICBOU011dGFibGVBcnJheSAqYXJyYXkgPSBbTlNNdXRhYmxlQXJyYXkgYXJy
YXlXaXRoQ2FwYWNpdHk6d2ViUmVjdHMuY291bnRdOwotICAgIGZvciAoV2ViU2VsZWN0aW9uUmVj
dCAqd2ViUmVjdCBpbiB3ZWJSZWN0cykgewotICAgICAgICBSZXRhaW5QdHI8V0tUZXh0U2VsZWN0
aW9uUmVjdD4gcmVjdCA9IGFkb3B0TlMoW1tXS1RleHRTZWxlY3Rpb25SZWN0IGFsbG9jXSBpbml0
V2l0aFdlYlJlY3Q6d2ViUmVjdF0pOwotICAgICAgICBbYXJyYXkgYWRkT2JqZWN0OnJlY3QuZ2V0
KCldOwotICAgIH0KLSAgICByZXR1cm4gYXJyYXk7Ci19Ci0KLS0gKENHUmVjdClyZWN0Ci17Ci0g
ICAgcmV0dXJuIF93ZWJSZWN0LnJlY3Q7Ci19Ci0KLUFMTE9XX0RFUFJFQ0FURURfREVDTEFSQVRJ
T05TX0JFR0lOCi0tIChVSVRleHRXcml0aW5nRGlyZWN0aW9uKXdyaXRpbmdEaXJlY3Rpb24KLXsK
LSAgICByZXR1cm4gKFVJVGV4dFdyaXRpbmdEaXJlY3Rpb24pX3dlYlJlY3Qud3JpdGluZ0RpcmVj
dGlvbjsKLX0KLUFMTE9XX0RFUFJFQ0FURURfREVDTEFSQVRJT05TX0VORAotCi0tIChVSVRleHRS
YW5nZSAqKXJhbmdlCi17Ci0gICAgcmV0dXJuIG5pbDsKLX0KLQotLSAoQk9PTCljb250YWluc1N0
YXJ0Ci17Ci0gICAgcmV0dXJuIF93ZWJSZWN0LmNvbnRhaW5zU3RhcnQ7Ci19Ci0KLS0gKEJPT0wp
Y29udGFpbnNFbmQKLXsKLSAgICByZXR1cm4gX3dlYlJlY3QuY29udGFpbnNFbmQ7Ci19Ci0KLS0g
KEJPT0wpaXNWZXJ0aWNhbAotewotICAgIHJldHVybiAhX3dlYlJlY3QuaXNIb3Jpem9udGFsOwot
fQotCi1AZW5kCi0KIEBpbXBsZW1lbnRhdGlvbiBXS0F1dG9jb3JyZWN0aW9uUmVjdHMKIAogKyAo
V0tBdXRvY29ycmVjdGlvblJlY3RzICopYXV0b2NvcnJlY3Rpb25SZWN0c1dpdGhGaXJzdENHUmVj
dDooQ0dSZWN0KWZpcnN0UmVjdCBsYXN0Q0dSZWN0OihDR1JlY3QpbGFzdFJlY3QKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS1RleHRTZWxlY3Rpb25SZWN0LmggYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tUZXh0U2VsZWN0aW9uUmVjdC5oCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjhiYmE5ZTdiOGRkMGZlZjNkZTAzYTllNGRkM2JlNDMyZGRiYjk0NmMKLS0tIC9kZXYvbnVs
bAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tUZXh0U2VsZWN0aW9uUmVjdC5o
CkBAIC0wLDAgKzEsNDIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBh
cmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFO
RCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2lmIFBMQVRG
T1JNKElPU19GQU1JTFkpCisKKyNpbXBvcnQgPFVJS2l0L1VJS2l0Lmg+CisKK0BjbGFzcyBXZWJT
ZWxlY3Rpb25SZWN0OworCitAaW50ZXJmYWNlIFdLVGV4dFNlbGVjdGlvblJlY3QgOiBVSVRleHRT
ZWxlY3Rpb25SZWN0CisKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCByZXRhaW4pIFdlYlNlbGVjdGlv
blJlY3QgKndlYlJlY3Q7CisKKysgKE5TQXJyYXkgKil0ZXh0U2VsZWN0aW9uUmVjdHNXaXRoV2Vi
UmVjdHM6KE5TQXJyYXkgKil3ZWJSZWN0czsKKworQGVuZAorCisjZW5kaWYgLy8gUExBVEZPUk0o
SU9TX0ZBTUlMWSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS1Rl
eHRTZWxlY3Rpb25SZWN0Lm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLVGV4dFNl
bGVjdGlvblJlY3QubW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTVlMGIxNTI2YjNmOTExMWE0Mjk4ZTZkMjMzMmJk
MTJkYjU1MDRlZQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lv
cy9XS1RleHRTZWxlY3Rpb25SZWN0Lm1tCkBAIC0wLDAgKzEsOTcgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoK
KyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRS
SUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICog
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJ
VFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisj
aW1wb3J0ICJjb25maWcuaCIKKyNpbXBvcnQgIldLVGV4dFNlbGVjdGlvblJlY3QuaCIKKworI2lm
IFBMQVRGT1JNKElPU19GQU1JTFkpCisKKy8vIEZJWE1FOiBMYXllcmluZyB2aW9sYXRpb247IFdl
YktpdDIgc2hvdWxkIG5vdCBpbmNsdWRlIFdlYktpdCBoZWFkZXJzLgorI2ltcG9ydCA8V2ViS2l0
L1dlYlNlbGVjdGlvblJlY3QuaD4KKworQGltcGxlbWVudGF0aW9uIFdLVGV4dFNlbGVjdGlvblJl
Y3QKKworLSAoaWQpaW5pdFdpdGhXZWJSZWN0OihXZWJTZWxlY3Rpb25SZWN0ICopd1JlY3QKK3sK
KyAgICBzZWxmID0gW3N1cGVyIGluaXRdOworICAgIGlmIChzZWxmKQorICAgICAgICBzZWxmLndl
YlJlY3QgPSB3UmVjdDsKKworICAgIHJldHVybiBzZWxmOworfQorCistICh2b2lkKWRlYWxsb2MK
K3sKKyAgICBzZWxmLndlYlJlY3QgPSBuaWw7CisgICAgW3N1cGVyIGRlYWxsb2NdOworfQorCisv
LyBGSVhNRTogV2UgYXJlIHVzaW5nIHRoaXMgaW1wbGVtZW50YXRpb24gZm9yIG5vdyB0aGF0IHVz
ZXMgV2ViU2VsZWN0aW9uUmVjdCwgYnV0CisvLyB3ZSB3YW50IHRvIHByb3ZpZGUgb3VyIG93biBi
YXNlZCBvbiBXZWJDb3JlOjpTZWxlY3Rpb25SZWN0LgorKyAoTlNBcnJheSAqKXRleHRTZWxlY3Rp
b25SZWN0c1dpdGhXZWJSZWN0czooTlNBcnJheSAqKXdlYlJlY3RzCit7CisgICAgTlNNdXRhYmxl
QXJyYXkgKmFycmF5ID0gW05TTXV0YWJsZUFycmF5IGFycmF5V2l0aENhcGFjaXR5OndlYlJlY3Rz
LmNvdW50XTsKKyAgICBmb3IgKFdlYlNlbGVjdGlvblJlY3QgKndlYlJlY3QgaW4gd2ViUmVjdHMp
IHsKKyAgICAgICAgUmV0YWluUHRyPFdLVGV4dFNlbGVjdGlvblJlY3Q+IHJlY3QgPSBhZG9wdE5T
KFtbV0tUZXh0U2VsZWN0aW9uUmVjdCBhbGxvY10gaW5pdFdpdGhXZWJSZWN0OndlYlJlY3RdKTsK
KyAgICAgICAgW2FycmF5IGFkZE9iamVjdDpyZWN0LmdldCgpXTsKKyAgICB9CisgICAgcmV0dXJu
IGFycmF5OworfQorCistIChDR1JlY3QpcmVjdAoreworICAgIHJldHVybiBfd2ViUmVjdC5yZWN0
OworfQorCitBTExPV19ERVBSRUNBVEVEX0RFQ0xBUkFUSU9OU19CRUdJTgorLSAoVUlUZXh0V3Jp
dGluZ0RpcmVjdGlvbil3cml0aW5nRGlyZWN0aW9uCit7CisgICAgcmV0dXJuIChVSVRleHRXcml0
aW5nRGlyZWN0aW9uKV93ZWJSZWN0LndyaXRpbmdEaXJlY3Rpb247Cit9CitBTExPV19ERVBSRUNB
VEVEX0RFQ0xBUkFUSU9OU19FTkQKKworLSAoVUlUZXh0UmFuZ2UgKilyYW5nZQoreworICAgIHJl
dHVybiBuaWw7Cit9CisKKy0gKEJPT0wpY29udGFpbnNTdGFydAoreworICAgIHJldHVybiBfd2Vi
UmVjdC5jb250YWluc1N0YXJ0OworfQorCistIChCT09MKWNvbnRhaW5zRW5kCit7CisgICAgcmV0
dXJuIF93ZWJSZWN0LmNvbnRhaW5zRW5kOworfQorCistIChCT09MKWlzVmVydGljYWwKK3sKKyAg
ICByZXR1cm4gIV93ZWJSZWN0LmlzSG9yaXpvbnRhbDsKK30KKworQGVuZAorCisjZW5kaWYgLy8g
UExBVEZPUk0oSU9TX0ZBTUlMWSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCmluZGV4IDE1YzUyNGYzNjIxNzdkZGM3MTI3Mjc2MjU1Nzg4NzA0Y2Vi
MzlkYTMuLjRjYTY4MzIyYzkzNTE2N2FiNmE5YmQyNzBjNjg3N2VhYTViNzM1OTYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIv
U291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTczNCw2
ICsxNzM0LDcgQEAKIAkJQ0UxQTBCRDIxQTQ4RTZDNjAwNTRFRjc0IC8qIEFzc2VydGlvblNlcnZp
Y2VzU1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBD
RTFBMEJDQzFBNDhFNkM2MDA1NEVGNzQgLyogQXNzZXJ0aW9uU2VydmljZXNTUEkuaCAqLzsgfTsK
IAkJQ0UxQTBCRDYxQTQ4RTZDNjAwNTRFRjc0IC8qIFRDQ1NQSS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0UxQTBCRDAxQTQ4RTZDNjAwNTRFRjc0IC8q
IFRDQ1NQSS5oICovOyB9OwogCQlDRTFBMEJENzFBNDhFNkM2MDA1NEVGNzQgLyogVGV4dElucHV0
U1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRTFB
MEJEMTFBNDhFNkM2MDA1NEVGNzQgLyogVGV4dElucHV0U1BJLmggKi87IH07CisJCUNFNDU5NDVD
MjQwRjg4NTUwMDc4MDE5RiAvKiBXS1RleHRTZWxlY3Rpb25SZWN0LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRTQ1OTQ1QTI0MEY4NUI5MDA3ODAxOUYg
LyogV0tUZXh0U2VsZWN0aW9uUmVjdC5oICovOyB9OwogCQlDRTU1MEUxNTIyODM3NTIyMDBEMjg3
OTEgLyogSW5zZXJ0VGV4dE9wdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IENFNTUwRTEyMjI4MzczQzgwMEQyODc5MSAvKiBJbnNlcnRUZXh0T3B0
aW9ucy5oICovOyB9OwogCQlDRTVCNEM4ODIxQjczRDg3MDAyMkU2NEYgLyogV0tTeW50aGV0aWNG
bGFnc0NoYW5nZWRXZWJFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQ0U1QjRDODYyMUI3M0Q4NzAwMjJFNjRGIC8qIFdLU3ludGhldGljRmxhZ3ND
aGFuZ2VkV2ViRXZlbnQuaCAqLzsgfTsKIAkJQ0U3MEVFNUQyMjQ0MkJEMDAwRTBBRjBGIC8qIFdL
Rm9ybVBlcmlwaGVyYWxCYXNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBDRTcwRUU1QzIyNDQyQkQwMDBFMEFGMEYgLyogV0tGb3JtUGVyaXBoZXJhbEJh
c2UuaCAqLzsgfTsKQEAgLTUwNTAsNiArNTA1MSw4IEBACiAJCUNFMUEwQkNDMUE0OEU2QzYwMDU0
RUY3NCAvKiBBc3NlcnRpb25TZXJ2aWNlc1NQSS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBBc3NlcnRpb25TZXJ2aWNlc1NQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQlDRTFBMEJEMDFBNDhFNkM2MDA1NEVGNzQgLyogVENDU1BJLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFRDQ1NQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQlDRTFBMEJEMTFBNDhFNkM2MDA1NEVGNzQgLyogVGV4dElucHV0U1BJLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRleHRJbnB1dFNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlDRTQ1OTQ1QTI0MEY4NUI5MDA3ODAxOUYgLyogV0tUZXh0U2VsZWN0aW9uUmVj
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IG5hbWUgPSBXS1RleHRTZWxlY3Rpb25SZWN0Lmg7IHBhdGggPSBpb3MvV0tU
ZXh0U2VsZWN0aW9uUmVjdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRTQ1OTQ1
QjI0MEY4NUI5MDA3ODAxOUYgLyogV0tUZXh0U2VsZWN0aW9uUmVjdC5tbSAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNw
cDsgbmFtZSA9IFdLVGV4dFNlbGVjdGlvblJlY3QubW07IHBhdGggPSBpb3MvV0tUZXh0U2VsZWN0
aW9uUmVjdC5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0U1NTBFMTIyMjgzNzND
ODAwRDI4NzkxIC8qIEluc2VydFRleHRPcHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEluc2VydFRl
eHRPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNFNTUwRTEzMjI4Mzc0
NDQwMEQyODc5MSAvKiBJbnNlcnRUZXh0T3B0aW9ucy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJ
bnNlcnRUZXh0T3B0aW9ucy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNFNUI0
Qzg2MjFCNzNEODcwMDIyRTY0RiAvKiBXS1N5bnRoZXRpY0ZsYWdzQ2hhbmdlZFdlYkV2ZW50Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgbmFtZSA9IFdLU3ludGhldGljRmxhZ3NDaGFuZ2VkV2ViRXZlbnQuaDsgcGF0aCA9
IGlvcy9XS1N5bnRoZXRpY0ZsYWdzQ2hhbmdlZFdlYkV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CkBAIC02Nzk1LDYgKzY3OTgsOCBAQAogCQkJCTI2RjEwQkU3MTkxODdFMkUwMDFE
MEU2OCAvKiBXS1N5bnRoZXRpY1RhcEdlc3R1cmVSZWNvZ25pemVyLm1tICovLAogCQkJCTMxNkI4
QjYyMjA1NEI1NTgwMEJENEE2MiAvKiBXS1N5c3RlbVByZXZpZXdWaWV3LmggKi8sCiAJCQkJMzE2
QjhCNjEyMDU0QjU1ODAwQkQ0QTYyIC8qIFdLU3lzdGVtUHJldmlld1ZpZXcubW0gKi8sCisJCQkJ
Q0U0NTk0NUEyNDBGODVCOTAwNzgwMTlGIC8qIFdLVGV4dFNlbGVjdGlvblJlY3QuaCAqLywKKwkJ
CQlDRTQ1OTQ1QjI0MEY4NUI5MDA3ODAxOUYgLyogV0tUZXh0U2VsZWN0aW9uUmVjdC5tbSAqLywK
IAkJCQk3MUE2NzZBNDIyQzYyMzE4MDA3RDYyOTUgLyogV0tUb3VjaEFjdGlvbkdlc3R1cmVSZWNv
Z25pemVyLmggKi8sCiAJCQkJNzFBNjc2QTUyMkM2MjMxODAwN0Q2Mjk1IC8qIFdLVG91Y2hBY3Rp
b25HZXN0dXJlUmVjb2duaXplci5tbSAqLywKIAkJCQkyRDFFODIyMTIxNkZGRjUwMDBBMTUyNjUg
LyogV0tXZWJFdmVudC5oICovLApAQCAtMTEzNDcsNiArMTEzNTIsNyBAQAogCQkJCTJERDY3QTM1
MUJEODYxMDYwMDUzQjI1MSAvKiBXS1RleHRGaW5kZXJDbGllbnQuaCBpbiBIZWFkZXJzICovLAog
CQkJCUY0RDVGNTFEMjA2MDg3QTEwMDM4QkJBOCAvKiBXS1RleHRJbnB1dExpc3RWaWV3Q29udHJv
bGxlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEZDQjRFNjgxOEJCRTNEOTAwMEZDRkM5IC8qIFdL
VGV4dElucHV0V2luZG93Q29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0U0NTk0NUMy
NDBGODg1NTAwNzgwMTlGIC8qIFdLVGV4dFNlbGVjdGlvblJlY3QuaCBpbiBIZWFkZXJzICovLAog
CQkJCTJFQjZGQzAxMjAzMDIxOTYwMDE3RTYxOSAvKiBXS1RpbWVQaWNrZXJWaWV3Q29udHJvbGxl
ci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNzFBNjc2QTYyMkM2MjMyNTAwN0Q2Mjk1IC8qIFdLVG91
Y2hBY3Rpb25HZXN0dXJlUmVjb2duaXplci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM0MDc2MDgx
MjRGRjAyNzAwNjhGMjBBIC8qIFdLVHlwZS5oIGluIEhlYWRlcnMgKi8sCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>392391</attachid>
            <date>2020-03-04 01:05:54 -0800</date>
            <delta_ts>2020-03-04 10:05:47 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208563-20200304010554.patch</filename>
            <type>text/plain</type>
            <size>8221</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU3ODM1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGI3NzdhNDQ0MDQyNWMwZDdm
Yjg3MzU3YjgxZjlkYjdiYzUzM2UxNGQuLmJkM2NhODBlNzQxNjM1NDI1ZWI4MzJlYWZhYjM5OGE0
Zjc5NjQ2NDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzIgQEAKKzIwMjAtMDMtMDQgIERhbmllbCBC
YXRlcyAgPGRhYmF0ZXNAYXBwbGUuY29tPgorCisgICAgICAgIEltcGxlbWVudCBXS1RleHRTZWxl
Y3Rpb25SZWN0IGluIHRlcm1zIG9mIFdlYkNvcmU6OlNlbGVjdGlvblJlY3QgYW5kIFdLVGV4dFJh
bmdlIGluIHRlcm1zIG9mIFdLVGV4dFNlbGVjdGlvblJlY3QKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwODU2MworCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEl0IGlzIGEgbGF5ZXJpbmcgdmlvbGF0aW9uIHRo
YXQgV2ViS2l0MiBpbmNsdWRlcyBhIGhlYWRlciBmcm9tIFdlYktpdC4gSW1wbGVtZW50CisgICAg
ICAgIFdLVGV4dFNlbGVjdGlvblJlY3QgaW4gdGVybXMgb2YgV2ViQ29yZTo6U2VsZWN0aW9uUmVj
dCBhcyBhIHN0ZXAgdG93YXJkcyBmaXhpbmcgdGhpcy4KKyAgICAgICAgQWxzbyBhdm9pZCB0aGUg
V2ViQ29yZTo6U2VsZWN0aW9uUmVjdCAtPiBXZWJTZWxlY3Rpb25SZWN0IC0+IFdLVGV4dFNlbGVj
dGlvblJlY3QKKyAgICAgICAgZGFuY2UgdGhhdCBXS1RleHRSYW5nZSBkb2VzIHNvIHRoYXQgLVtX
S1RleHRSYW5nZSBzZWxlY3Rpb25SZWN0c0ZvclJhbmdlXSByZXR1cm5zCisgICAgICAgIGFuIGFy
cmF5IG9mIFdLVGV4dFNlbGVjdGlvblJlY3RzIGJ5IHdyaXRpbmcgV0tUZXh0UmFuZ2UgaW4gdGVy
bXMgb2YgTlNBcnJheTxXS1RleHRTZWxlY3Rpb25SZWN0ICo+Ki4KKworICAgICAgICAqIFVJUHJv
Y2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tOgorICAgICAgICAoLVtXS0NvbnRl
bnRWaWV3IF91aVRleHRTZWxlY3Rpb25SZWN0c10pOgorICAgICAgICAoLVtXS0NvbnRlbnRWaWV3
IHNlbGVjdGVkVGV4dFJhbmdlXSk6CisgICAgICAgICgtW1dLQ29udGVudFZpZXcgc2VsZWN0aW9u
UmVjdHNGb3JSYW5nZTpdKToKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLVGV4dFNlbGVjdGlv
blJlY3QuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLVGV4dFNlbGVjdGlvblJlY3QubW06
CisgICAgICAgICgtW1dLVGV4dFNlbGVjdGlvblJlY3QgaW5pdFdpdGhTZWxlY3Rpb25SZWN0Ol0p
OgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rpb25SZWN0IHJlY3RdKToKKyAgICAgICAgKC1bV0tU
ZXh0U2VsZWN0aW9uUmVjdCB3cml0aW5nRGlyZWN0aW9uXSk6CisgICAgICAgICgtW1dLVGV4dFNl
bGVjdGlvblJlY3QgY29udGFpbnNTdGFydF0pOgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rpb25S
ZWN0IGNvbnRhaW5zRW5kXSk6CisgICAgICAgICgtW1dLVGV4dFNlbGVjdGlvblJlY3QgaXNWZXJ0
aWNhbF0pOgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rpb25SZWN0IGluaXRXaXRoV2ViUmVjdDpd
KTogRGVsZXRlZC4KKyAgICAgICAgKC1bV0tUZXh0U2VsZWN0aW9uUmVjdCBkZWFsbG9jXSk6IERl
bGV0ZWQuCisgICAgICAgICgrW1dLVGV4dFNlbGVjdGlvblJlY3QgdGV4dFNlbGVjdGlvblJlY3Rz
V2l0aFdlYlJlY3RzOl0pOiBEZWxldGVkLgorCiAyMDIwLTAzLTAzICBEYW5pZWwgQmF0ZXMgIDxk
YWJhdGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBNb3ZlIFdLVGV4dFNlbGVjdGlvblJlY3QgaW50
byBpdHMgb3duIGZpbGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9X
S0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3Mv
V0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCmluZGV4IDYzMDA4YTc5N2E5YWIxODliMjcxOGQ4
MGIzZjg4NWRiMmEwMWVmMjUuLjA1ZDg5ZGY4NGVjMzI1MGE5OTFiNmI3ZDViMmE5NDgyNGMzNDRh
ZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3
SW50ZXJhY3Rpb24ubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVu
dFZpZXdJbnRlcmFjdGlvbi5tbQpAQCAtMjY2LDcgKzI2Niw3IEBAIEBpbnRlcmZhY2UgV0tUZXh0
UmFuZ2UgOiBVSVRleHRSYW5nZSB7CiAgICAgQk9PTCBfaXNOb25lOwogICAgIEJPT0wgX2lzUmFu
Z2U7CiAgICAgQk9PTCBfaXNFZGl0YWJsZTsKLSAgICBOU0FycmF5ICpfc2VsZWN0aW9uUmVjdHM7
CisgICAgTlNBcnJheTxXS1RleHRTZWxlY3Rpb25SZWN0ICo+Kl9zZWxlY3Rpb25SZWN0czsKICAg
ICBOU1VJbnRlZ2VyIF9zZWxlY3RlZFRleHRMZW5ndGg7CiB9CiBAcHJvcGVydHkgKG5vbmF0b21p
YykgQ0dSZWN0IHN0YXJ0UmVjdDsKQEAgLTI3NSw3ICsyNzUsNyBAQCBAcHJvcGVydHkgKG5vbmF0
b21pYykgQk9PTCBpc05vbmU7CiBAcHJvcGVydHkgKG5vbmF0b21pYykgQk9PTCBpc1JhbmdlOwog
QHByb3BlcnR5IChub25hdG9taWMpIEJPT0wgaXNFZGl0YWJsZTsKIEBwcm9wZXJ0eSAobm9uYXRv
bWljKSBOU1VJbnRlZ2VyIHNlbGVjdGVkVGV4dExlbmd0aDsKLUBwcm9wZXJ0eSAoY29weSwgbm9u
YXRvbWljKSBOU0FycmF5ICpzZWxlY3Rpb25SZWN0czsKK0Bwcm9wZXJ0eSAoY29weSwgbm9uYXRv
bWljKSBOU0FycmF5PFdLVGV4dFNlbGVjdGlvblJlY3QgKj4gKnNlbGVjdGlvblJlY3RzOwogCiAr
IChXS1RleHRSYW5nZSAqKXRleHRSYW5nZVdpdGhTdGF0ZTooQk9PTClpc05vbmUgaXNSYW5nZToo
Qk9PTClpc1JhbmdlIGlzRWRpdGFibGU6KEJPT0wpaXNFZGl0YWJsZSBzdGFydFJlY3Q6KENHUmVj
dClzdGFydFJlY3QgZW5kUmVjdDooQ0dSZWN0KWVuZFJlY3Qgc2VsZWN0aW9uUmVjdHM6KE5TQXJy
YXkgKilzZWxlY3Rpb25SZWN0cyBzZWxlY3RlZFRleHRMZW5ndGg6KE5TVUludGVnZXIpc2VsZWN0
ZWRUZXh0TGVuZ3RoOwogCkBAIC0yMjk0LDcgKzIyOTQsNyBAQCAtIChOU0FycmF5PE5TVmFsdWUg
Kj4gKilfdWlUZXh0U2VsZWN0aW9uUmVjdHMKIAogICAgIGlmIChfdGV4dEludGVyYWN0aW9uQXNz
aXN0YW50KSB7CiAgICAgICAgIGZvciAoV0tUZXh0U2VsZWN0aW9uUmVjdCAqc2VsZWN0aW9uUmVj
dCBpbiBbX3RleHRJbnRlcmFjdGlvbkFzc2lzdGFudCB2YWx1ZUZvcktleVBhdGg6QCJzZWxlY3Rp
b25WaWV3LnNlbGVjdGlvbi5zZWxlY3Rpb25SZWN0cyJdKQotICAgICAgICAgICAgW3RleHRTZWxl
Y3Rpb25SZWN0cyBhZGRPYmplY3Q6W05TVmFsdWUgdmFsdWVXaXRoQ0dSZWN0OnNlbGVjdGlvblJl
Y3Qud2ViUmVjdC5yZWN0XV07CisgICAgICAgICAgICBbdGV4dFNlbGVjdGlvblJlY3RzIGFkZE9i
amVjdDpbTlNWYWx1ZSB2YWx1ZVdpdGhDR1JlY3Q6c2VsZWN0aW9uUmVjdC5yZWN0XV07CiAgICAg
fQogCiAgICAgcmV0dXJuIHRleHRTZWxlY3Rpb25SZWN0czsKQEAgLTQ0NjAsNiArNDQ2MCwxNiBA
QCAtICh2b2lkKXJlcGxhY2VSYW5nZTooVUlUZXh0UmFuZ2UgKilyYW5nZSB3aXRoVGV4dDooTlNT
dHJpbmcgKil0ZXh0CiB7CiB9CiAKK3N0YXRpYyBOU0FycmF5PFdLVGV4dFNlbGVjdGlvblJlY3Qg
Kj4gKndrVGV4dFNlbGVjdGlvblJlY3RzKGNvbnN0IFZlY3RvcjxXZWJDb3JlOjpTZWxlY3Rpb25S
ZWN0PiYgY29yZVJlY3RzKQoreworICAgIGF1dG8gcmVjdHMgPSBhZG9wdE5TKFtbTlNNdXRhYmxl
QXJyYXkgYWxsb2NdIGluaXRXaXRoQ2FwYWNpdHk6Y29yZVJlY3RzLnNpemUoKV0pOworICAgIGZv
ciAoYXV0byYgY29yZVJlY3QgOiBjb3JlUmVjdHMpIHsKKyAgICAgICAgYXV0byB3a1RleHRTZWxl
Y3Rpb25SZWN0ID0gYWRvcHROUyhbW1dLVGV4dFNlbGVjdGlvblJlY3QgYWxsb2NdIGluaXRXaXRo
U2VsZWN0aW9uUmVjdDpjb3JlUmVjdF0pOworICAgICAgICBbcmVjdHMgYWRkT2JqZWN0OndrVGV4
dFNlbGVjdGlvblJlY3QuZ2V0KCldOworICAgIH0KKyAgICByZXR1cm4gcmVjdHMuYXV0b3JlbGVh
c2UoKTsKK30KKwogLSAoVUlUZXh0UmFuZ2UgKilzZWxlY3RlZFRleHRSYW5nZQogewogICAgIGlm
IChfcGFnZS0+ZWRpdG9yU3RhdGUoKS5zZWxlY3Rpb25Jc05vbmUgfHwgX3BhZ2UtPmVkaXRvclN0
YXRlKCkuaXNNaXNzaW5nUG9zdExheW91dERhdGEpCkBAIC00NDk3LDcgKzQ1MDcsNyBAQCAtIChV
SVRleHRSYW5nZSAqKXNlbGVjdGVkVGV4dFJhbmdlCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGlzRWRpdGFibGU6X3BhZ2UtPmVkaXRvclN0YXRlKCkuaXNDb250ZW50RWRpdGFibGUK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0UmVjdDpzdGFydFJlY3QKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5kUmVjdDplbmRSZWN0Ci0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgc2VsZWN0aW9uUmVjdHM6W3NlbGYgd2ViU2VsZWN0aW9uUmVj
dHNdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0aW9uUmVjdHM6d2tUZXh0U2Vs
ZWN0aW9uUmVjdHMoX3BhZ2UtPmVkaXRvclN0YXRlKCkucG9zdExheW91dERhdGEoKS5zZWxlY3Rp
b25SZWN0cykKICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkVGV4dExlbmd0aDpwb3N0
TGF5b3V0RWRpdG9yU3RhdGVEYXRhLnNlbGVjdGVkVGV4dExlbmd0aF07CiB9CiAKQEAgLTQ1MDgs
NyArNDUxOCw3IEBAIC0gKENHUmVjdCljYXJldFJlY3RGb3JQb3NpdGlvbjooVUlUZXh0UG9zaXRp
b24gKilwb3NpdGlvbgogCiAtIChOU0FycmF5ICopc2VsZWN0aW9uUmVjdHNGb3JSYW5nZTooVUlU
ZXh0UmFuZ2UgKilyYW5nZQogewotICAgIHJldHVybiBbV0tUZXh0U2VsZWN0aW9uUmVjdCB0ZXh0
U2VsZWN0aW9uUmVjdHNXaXRoV2ViUmVjdHM6KChXS1RleHRSYW5nZSAqKXJhbmdlKS5zZWxlY3Rp
b25SZWN0c107CisgICAgcmV0dXJuIFsoV0tUZXh0UmFuZ2UgKilyYW5nZSBzZWxlY3Rpb25SZWN0
c107CiB9CiAKIC0gKHZvaWQpc2V0U2VsZWN0ZWRUZXh0UmFuZ2U6KFVJVGV4dFJhbmdlICopcmFu
Z2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS1RleHRTZWxlY3Rp
b25SZWN0LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tUZXh0U2VsZWN0aW9uUmVj
dC5oCmluZGV4IDhiYmE5ZTdiOGRkMGZlZjNkZTAzYTllNGRkM2JlNDMyZGRiYjk0NmMuLjhkNThm
ZTFmYTZiZjQ0YzA3YjI4MDdlZWZiNzVhMzAzNmMyOWFlZDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL2lvcy9XS1RleHRTZWxlY3Rpb25SZWN0LmgKKysrIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvaW9zL1dLVGV4dFNlbGVjdGlvblJlY3QuaApAQCAtMjksMTMgKzI5LDEz
IEBACiAKICNpbXBvcnQgPFVJS2l0L1VJS2l0Lmg+CiAKLUBjbGFzcyBXZWJTZWxlY3Rpb25SZWN0
OworbmFtZXNwYWNlIFdlYkNvcmUgeworY2xhc3MgU2VsZWN0aW9uUmVjdDsKK30KIAogQGludGVy
ZmFjZSBXS1RleHRTZWxlY3Rpb25SZWN0IDogVUlUZXh0U2VsZWN0aW9uUmVjdAogCi1AcHJvcGVy
dHkgKG5vbmF0b21pYywgcmV0YWluKSBXZWJTZWxlY3Rpb25SZWN0ICp3ZWJSZWN0OwotCi0rIChO
U0FycmF5ICopdGV4dFNlbGVjdGlvblJlY3RzV2l0aFdlYlJlY3RzOihOU0FycmF5ICopd2ViUmVj
dHM7CistIChpbnN0YW5jZXR5cGUpaW5pdFdpdGhTZWxlY3Rpb25SZWN0Oihjb25zdCBXZWJDb3Jl
OjpTZWxlY3Rpb25SZWN0JilzZWxlY3Rpb25SZWN0OwogCiBAZW5kCiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS1RleHRTZWxlY3Rpb25SZWN0Lm1tIGIvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLVGV4dFNlbGVjdGlvblJlY3QubW0KaW5kZXggMTVlMGIx
NTI2YjNmOTExMWE0Mjk4ZTZkMjMzMmJkMTJkYjU1MDRlZS4uOTkxMDMzNWZiNWI1NTEwOThjNDM5
YTg1ZTRjMTc5OTY4OTYyZTRmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
aW9zL1dLVGV4dFNlbGVjdGlvblJlY3QubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
aW9zL1dLVGV4dFNlbGVjdGlvblJlY3QubW0KQEAgLTI4LDQ3ICsyOCwyOSBAQAogCiAjaWYgUExB
VEZPUk0oSU9TX0ZBTUlMWSkKIAotLy8gRklYTUU6IExheWVyaW5nIHZpb2xhdGlvbjsgV2ViS2l0
MiBzaG91bGQgbm90IGluY2x1ZGUgV2ViS2l0IGhlYWRlcnMuCi0jaW1wb3J0IDxXZWJLaXQvV2Vi
U2VsZWN0aW9uUmVjdC5oPgorI2ltcG9ydCA8V2ViQ29yZS9TZWxlY3Rpb25SZWN0Lmg+CiAKLUBp
bXBsZW1lbnRhdGlvbiBXS1RleHRTZWxlY3Rpb25SZWN0CitAaW1wbGVtZW50YXRpb24gV0tUZXh0
U2VsZWN0aW9uUmVjdCB7CisgICAgV2ViQ29yZTo6U2VsZWN0aW9uUmVjdCBfc2VsZWN0aW9uUmVj
dDsKK30KIAotLSAoaWQpaW5pdFdpdGhXZWJSZWN0OihXZWJTZWxlY3Rpb25SZWN0ICopd1JlY3QK
Ky0gKGluc3RhbmNldHlwZSlpbml0V2l0aFNlbGVjdGlvblJlY3Q6KGNvbnN0IFdlYkNvcmU6OlNl
bGVjdGlvblJlY3QmKXNlbGVjdGlvblJlY3QKIHsKLSAgICBzZWxmID0gW3N1cGVyIGluaXRdOwot
ICAgIGlmIChzZWxmKQotICAgICAgICBzZWxmLndlYlJlY3QgPSB3UmVjdDsKLQorICAgIGlmICgh
KHNlbGYgPSBbc3VwZXIgaW5pdF0pKQorICAgICAgICByZXR1cm4gbmlsOworICAgIF9zZWxlY3Rp
b25SZWN0ID0gc2VsZWN0aW9uUmVjdDsKICAgICByZXR1cm4gc2VsZjsKIH0KIAotLSAodm9pZClk
ZWFsbG9jCi17Ci0gICAgc2VsZi53ZWJSZWN0ID0gbmlsOwotICAgIFtzdXBlciBkZWFsbG9jXTsK
LX0KLQotLy8gRklYTUU6IFdlIGFyZSB1c2luZyB0aGlzIGltcGxlbWVudGF0aW9uIGZvciBub3cg
dGhhdCB1c2VzIFdlYlNlbGVjdGlvblJlY3QsIGJ1dAotLy8gd2Ugd2FudCB0byBwcm92aWRlIG91
ciBvd24gYmFzZWQgb24gV2ViQ29yZTo6U2VsZWN0aW9uUmVjdC4KLSsgKE5TQXJyYXkgKil0ZXh0
U2VsZWN0aW9uUmVjdHNXaXRoV2ViUmVjdHM6KE5TQXJyYXkgKil3ZWJSZWN0cwotewotICAgIE5T
TXV0YWJsZUFycmF5ICphcnJheSA9IFtOU011dGFibGVBcnJheSBhcnJheVdpdGhDYXBhY2l0eTp3
ZWJSZWN0cy5jb3VudF07Ci0gICAgZm9yIChXZWJTZWxlY3Rpb25SZWN0ICp3ZWJSZWN0IGluIHdl
YlJlY3RzKSB7Ci0gICAgICAgIFJldGFpblB0cjxXS1RleHRTZWxlY3Rpb25SZWN0PiByZWN0ID0g
YWRvcHROUyhbW1dLVGV4dFNlbGVjdGlvblJlY3QgYWxsb2NdIGluaXRXaXRoV2ViUmVjdDp3ZWJS
ZWN0XSk7Ci0gICAgICAgIFthcnJheSBhZGRPYmplY3Q6cmVjdC5nZXQoKV07Ci0gICAgfQotICAg
IHJldHVybiBhcnJheTsKLX0KLQogLSAoQ0dSZWN0KXJlY3QKIHsKLSAgICByZXR1cm4gX3dlYlJl
Y3QucmVjdDsKKyAgICByZXR1cm4gX3NlbGVjdGlvblJlY3QucmVjdCgpOwogfQogCiBBTExPV19E
RVBSRUNBVEVEX0RFQ0xBUkFUSU9OU19CRUdJTgogLSAoVUlUZXh0V3JpdGluZ0RpcmVjdGlvbil3
cml0aW5nRGlyZWN0aW9uCiB7Ci0gICAgcmV0dXJuIChVSVRleHRXcml0aW5nRGlyZWN0aW9uKV93
ZWJSZWN0LndyaXRpbmdEaXJlY3Rpb247CisgICAgcmV0dXJuIF9zZWxlY3Rpb25SZWN0LmRpcmVj
dGlvbigpID09IFdlYkNvcmU6OlRleHREaXJlY3Rpb246OkxUUiA/IFVJVGV4dFdyaXRpbmdEaXJl
Y3Rpb25MZWZ0VG9SaWdodCA6IFVJVGV4dFdyaXRpbmdEaXJlY3Rpb25SaWdodFRvTGVmdDsKIH0K
IEFMTE9XX0RFUFJFQ0FURURfREVDTEFSQVRJT05TX0VORAogCkBAIC03OSwxNyArNjEsMTcgQEAg
LSAoVUlUZXh0UmFuZ2UgKilyYW5nZQogCiAtIChCT09MKWNvbnRhaW5zU3RhcnQKIHsKLSAgICBy
ZXR1cm4gX3dlYlJlY3QuY29udGFpbnNTdGFydDsKKyAgICByZXR1cm4gX3NlbGVjdGlvblJlY3Qu
Y29udGFpbnNTdGFydCgpOwogfQogCiAtIChCT09MKWNvbnRhaW5zRW5kCiB7Ci0gICAgcmV0dXJu
IF93ZWJSZWN0LmNvbnRhaW5zRW5kOworICAgIHJldHVybiBfc2VsZWN0aW9uUmVjdC5jb250YWlu
c0VuZCgpOwogfQogCiAtIChCT09MKWlzVmVydGljYWwKIHsKLSAgICByZXR1cm4gIV93ZWJSZWN0
LmlzSG9yaXpvbnRhbDsKKyAgICByZXR1cm4gIV9zZWxlY3Rpb25SZWN0LmlzSG9yaXpvbnRhbCgp
OwogfQogCiBAZW5kCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>392392</attachid>
            <date>2020-03-04 01:06:59 -0800</date>
            <delta_ts>2020-03-04 10:04:09 -0800</delta_ts>
            <desc>For the bots</desc>
            <filename>Bug208561+208563.patch</filename>
            <type>text/plain</type>
            <size>18310</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKaW5kZXggN2Y0OTc3ZjM3MjcuLmJkM2NhODBlNzQxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsx
LDY2IEBACisyMDIwLTAzLTA0ICBEYW5pZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KKwor
ICAgICAgICBJbXBsZW1lbnQgV0tUZXh0U2VsZWN0aW9uUmVjdCBpbiB0ZXJtcyBvZiBXZWJDb3Jl
OjpTZWxlY3Rpb25SZWN0IGFuZCBXS1RleHRSYW5nZSBpbiB0ZXJtcyBvZiBXS1RleHRTZWxlY3Rp
b25SZWN0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MDg1NjMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJ
dCBpcyBhIGxheWVyaW5nIHZpb2xhdGlvbiB0aGF0IFdlYktpdDIgaW5jbHVkZXMgYSBoZWFkZXIg
ZnJvbSBXZWJLaXQuIEltcGxlbWVudAorICAgICAgICBXS1RleHRTZWxlY3Rpb25SZWN0IGluIHRl
cm1zIG9mIFdlYkNvcmU6OlNlbGVjdGlvblJlY3QgYXMgYSBzdGVwIHRvd2FyZHMgZml4aW5nIHRo
aXMuCisgICAgICAgIEFsc28gYXZvaWQgdGhlIFdlYkNvcmU6OlNlbGVjdGlvblJlY3QgLT4gV2Vi
U2VsZWN0aW9uUmVjdCAtPiBXS1RleHRTZWxlY3Rpb25SZWN0CisgICAgICAgIGRhbmNlIHRoYXQg
V0tUZXh0UmFuZ2UgZG9lcyBzbyB0aGF0IC1bV0tUZXh0UmFuZ2Ugc2VsZWN0aW9uUmVjdHNGb3JS
YW5nZV0gcmV0dXJucworICAgICAgICBhbiBhcnJheSBvZiBXS1RleHRTZWxlY3Rpb25SZWN0cyBi
eSB3cml0aW5nIFdLVGV4dFJhbmdlIGluIHRlcm1zIG9mIE5TQXJyYXk8V0tUZXh0U2VsZWN0aW9u
UmVjdCAqPiouCisKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFj
dGlvbi5tbToKKyAgICAgICAgKC1bV0tDb250ZW50VmlldyBfdWlUZXh0U2VsZWN0aW9uUmVjdHNd
KToKKyAgICAgICAgKC1bV0tDb250ZW50VmlldyBzZWxlY3RlZFRleHRSYW5nZV0pOgorICAgICAg
ICAoLVtXS0NvbnRlbnRWaWV3IHNlbGVjdGlvblJlY3RzRm9yUmFuZ2U6XSk6CisgICAgICAgICog
VUlQcm9jZXNzL2lvcy9XS1RleHRTZWxlY3Rpb25SZWN0Lmg6CisgICAgICAgICogVUlQcm9jZXNz
L2lvcy9XS1RleHRTZWxlY3Rpb25SZWN0Lm1tOgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rpb25S
ZWN0IGluaXRXaXRoU2VsZWN0aW9uUmVjdDpdKToKKyAgICAgICAgKC1bV0tUZXh0U2VsZWN0aW9u
UmVjdCByZWN0XSk6CisgICAgICAgICgtW1dLVGV4dFNlbGVjdGlvblJlY3Qgd3JpdGluZ0RpcmVj
dGlvbl0pOgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rpb25SZWN0IGNvbnRhaW5zU3RhcnRdKToK
KyAgICAgICAgKC1bV0tUZXh0U2VsZWN0aW9uUmVjdCBjb250YWluc0VuZF0pOgorICAgICAgICAo
LVtXS1RleHRTZWxlY3Rpb25SZWN0IGlzVmVydGljYWxdKToKKyAgICAgICAgKC1bV0tUZXh0U2Vs
ZWN0aW9uUmVjdCBpbml0V2l0aFdlYlJlY3Q6XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dLVGV4
dFNlbGVjdGlvblJlY3QgZGVhbGxvY10pOiBEZWxldGVkLgorICAgICAgICAoK1tXS1RleHRTZWxl
Y3Rpb25SZWN0IHRleHRTZWxlY3Rpb25SZWN0c1dpdGhXZWJSZWN0czpdKTogRGVsZXRlZC4KKwor
MjAyMC0wMy0wMyAgRGFuaWVsIEJhdGVzICA8ZGFiYXRlc0BhcHBsZS5jb20+CisKKyAgICAgICAg
TW92ZSBXS1RleHRTZWxlY3Rpb25SZWN0IGludG8gaXRzIG93biBmaWxlCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDg1NjEKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXS1RleHRTZWxlY3Rpb25SZWN0IGlz
IGN1cnJlbnRseSBkZWZpbmVkIGluIFdLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbS4gU2VwYXJh
dGUgaXQKKyAgICAgICAgb3V0IGludG8gaXRzIG93biBmaWxlIHRvIGltcHJvdmUgcHJvamVjdCBv
cmdhbml6YXRpb24gYW5kIGRlLWNsdXR0ZXIgV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tLgor
CisgICAgICAgICogU291cmNlc0NvY29hLnR4dDoKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dL
Q29udGVudFZpZXdJbnRlcmFjdGlvbi5tbToKKyAgICAgICAgKC1bV0tUZXh0U2VsZWN0aW9uUmVj
dCBpbml0V2l0aFdlYlJlY3Q6XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dLVGV4dFNlbGVjdGlv
blJlY3QgZGVhbGxvY10pOiBEZWxldGVkLgorICAgICAgICAoK1tXS1RleHRTZWxlY3Rpb25SZWN0
IHRleHRTZWxlY3Rpb25SZWN0c1dpdGhXZWJSZWN0czpdKTogRGVsZXRlZC4KKyAgICAgICAgKC1b
V0tUZXh0U2VsZWN0aW9uUmVjdCByZWN0XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dLVGV4dFNl
bGVjdGlvblJlY3Qgd3JpdGluZ0RpcmVjdGlvbl0pOiBEZWxldGVkLgorICAgICAgICAoLVtXS1Rl
eHRTZWxlY3Rpb25SZWN0IHJhbmdlXSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dLVGV4dFNlbGVj
dGlvblJlY3QgY29udGFpbnNTdGFydF0pOiBEZWxldGVkLgorICAgICAgICAoLVtXS1RleHRTZWxl
Y3Rpb25SZWN0IGNvbnRhaW5zRW5kXSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dLVGV4dFNlbGVj
dGlvblJlY3QgaXNWZXJ0aWNhbF0pOiBEZWxldGVkLgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3Mv
V0tUZXh0U2VsZWN0aW9uUmVjdC5oOiBBZGRlZC4KKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dL
VGV4dFNlbGVjdGlvblJlY3QubW06IEFkZGVkLgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rpb25S
ZWN0IGluaXRXaXRoV2ViUmVjdDpdKToKKyAgICAgICAgKC1bV0tUZXh0U2VsZWN0aW9uUmVjdCBk
ZWFsbG9jXSk6CisgICAgICAgICgrW1dLVGV4dFNlbGVjdGlvblJlY3QgdGV4dFNlbGVjdGlvblJl
Y3RzV2l0aFdlYlJlY3RzOl0pOgorICAgICAgICAoLVtXS1RleHRTZWxlY3Rpb25SZWN0IHJlY3Rd
KToKKyAgICAgICAgKC1bV0tUZXh0U2VsZWN0aW9uUmVjdCB3cml0aW5nRGlyZWN0aW9uXSk6Cisg
ICAgICAgICgtW1dLVGV4dFNlbGVjdGlvblJlY3QgcmFuZ2VdKToKKyAgICAgICAgKC1bV0tUZXh0
U2VsZWN0aW9uUmVjdCBjb250YWluc1N0YXJ0XSk6CisgICAgICAgICgtW1dLVGV4dFNlbGVjdGlv
blJlY3QgY29udGFpbnNFbmRdKToKKyAgICAgICAgKC1bV0tUZXh0U2VsZWN0aW9uUmVjdCBpc1Zl
cnRpY2FsXSk6CisgICAgICAgICogV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisK
IDIwMjAtMDMtMDMgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29tPgogCiAgICAgICAg
IFdlYiBJbnNwZWN0b3I6IHJlLWFkZCBgSW5zcGVjdG9yRnJvbnRlbmRIb3N0YCBzdXBwb3J0IGZv
ciBtb3ZpbmcgdGhlIGluc3BlY3RlZCB3aW5kb3cKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
U291cmNlc0NvY29hLnR4dCBiL1NvdXJjZS9XZWJLaXQvU291cmNlc0NvY29hLnR4dAppbmRleCAw
YTc3NjkzOTg3OS4uMjVjYmE5NzNiNjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU291cmNl
c0NvY29hLnR4dAorKysgYi9Tb3VyY2UvV2ViS2l0L1NvdXJjZXNDb2NvYS50eHQKQEAgLTQ3MSw2
ICs0NzEsNyBAQCBVSVByb2Nlc3MvaW9zL1dLU3ludGhldGljRmxhZ3NDaGFuZ2VkV2ViRXZlbnQu
bW0KIFVJUHJvY2Vzcy9pb3MvV0tTeW50aGV0aWNUYXBHZXN0dXJlUmVjb2duaXplci5tbQogVUlQ
cm9jZXNzL2lvcy9XS1N5c3RlbVByZXZpZXdWaWV3Lm1tCiBVSVByb2Nlc3MvaW9zL1dLVG91Y2hB
Y3Rpb25HZXN0dXJlUmVjb2duaXplci5tbQorVUlQcm9jZXNzL2lvcy9XS1RleHRTZWxlY3Rpb25S
ZWN0Lm1tCiBVSVByb2Nlc3MvaW9zL1dLV2ViRXZlbnQubW0KIAogVUlQcm9jZXNzL0xhdW5jaGVy
L21hYy9Qcm9jZXNzTGF1bmNoZXJNYWMubW0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0gYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCmluZGV4IDg0MjJkNTM5M2M1
Li4wNWQ4OWRmODRlYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dL
Q29udGVudFZpZXdJbnRlcmFjdGlvbi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9p
b3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCkBAIC02NSw2ICs2NSw3IEBACiAjaW1wb3J0
ICJXS1NlbGVjdE1lbnVMaXN0Vmlld0NvbnRyb2xsZXIuaCIKICNpbXBvcnQgIldLU3ludGhldGlj
RmxhZ3NDaGFuZ2VkV2ViRXZlbnQuaCIKICNpbXBvcnQgIldLVGV4dElucHV0TGlzdFZpZXdDb250
cm9sbGVyLmgiCisjaW1wb3J0ICJXS1RleHRTZWxlY3Rpb25SZWN0LmgiCiAjaW1wb3J0ICJXS1Rp
bWVQaWNrZXJWaWV3Q29udHJvbGxlci5oIgogI2ltcG9ydCAiV0tVSURlbGVnYXRlUHJpdmF0ZS5o
IgogI2ltcG9ydCAiV0tXZWJWaWV3Q29uZmlndXJhdGlvbi5oIgpAQCAtMjY1LDcgKzI2Niw3IEBA
IEBpbnRlcmZhY2UgV0tUZXh0UmFuZ2UgOiBVSVRleHRSYW5nZSB7CiAgICAgQk9PTCBfaXNOb25l
OwogICAgIEJPT0wgX2lzUmFuZ2U7CiAgICAgQk9PTCBfaXNFZGl0YWJsZTsKLSAgICBOU0FycmF5
ICpfc2VsZWN0aW9uUmVjdHM7CisgICAgTlNBcnJheTxXS1RleHRTZWxlY3Rpb25SZWN0ICo+Kl9z
ZWxlY3Rpb25SZWN0czsKICAgICBOU1VJbnRlZ2VyIF9zZWxlY3RlZFRleHRMZW5ndGg7CiB9CiBA
cHJvcGVydHkgKG5vbmF0b21pYykgQ0dSZWN0IHN0YXJ0UmVjdDsKQEAgLTI3NCw3ICsyNzUsNyBA
QCBAcHJvcGVydHkgKG5vbmF0b21pYykgQk9PTCBpc05vbmU7CiBAcHJvcGVydHkgKG5vbmF0b21p
YykgQk9PTCBpc1JhbmdlOwogQHByb3BlcnR5IChub25hdG9taWMpIEJPT0wgaXNFZGl0YWJsZTsK
IEBwcm9wZXJ0eSAobm9uYXRvbWljKSBOU1VJbnRlZ2VyIHNlbGVjdGVkVGV4dExlbmd0aDsKLUBw
cm9wZXJ0eSAoY29weSwgbm9uYXRvbWljKSBOU0FycmF5ICpzZWxlY3Rpb25SZWN0czsKK0Bwcm9w
ZXJ0eSAoY29weSwgbm9uYXRvbWljKSBOU0FycmF5PFdLVGV4dFNlbGVjdGlvblJlY3QgKj4gKnNl
bGVjdGlvblJlY3RzOwogCiArIChXS1RleHRSYW5nZSAqKXRleHRSYW5nZVdpdGhTdGF0ZTooQk9P
TClpc05vbmUgaXNSYW5nZTooQk9PTClpc1JhbmdlIGlzRWRpdGFibGU6KEJPT0wpaXNFZGl0YWJs
ZSBzdGFydFJlY3Q6KENHUmVjdClzdGFydFJlY3QgZW5kUmVjdDooQ0dSZWN0KWVuZFJlY3Qgc2Vs
ZWN0aW9uUmVjdHM6KE5TQXJyYXkgKilzZWxlY3Rpb25SZWN0cyBzZWxlY3RlZFRleHRMZW5ndGg6
KE5TVUludGVnZXIpc2VsZWN0ZWRUZXh0TGVuZ3RoOwogCkBAIC0yOTAsMTMgKzI5MSw2IEBAICsg
KFdLVGV4dFBvc2l0aW9uICopdGV4dFBvc2l0aW9uV2l0aFJlY3Q6KENHUmVjdClwb3NpdGlvblJl
Y3Q7CiAKIEBlbmQKIAotQGludGVyZmFjZSBXS1RleHRTZWxlY3Rpb25SZWN0IDogVUlUZXh0U2Vs
ZWN0aW9uUmVjdAotCi1AcHJvcGVydHkgKG5vbmF0b21pYywgcmV0YWluKSBXZWJTZWxlY3Rpb25S
ZWN0ICp3ZWJSZWN0OwotCi0rIChOU0FycmF5ICopdGV4dFNlbGVjdGlvblJlY3RzV2l0aFdlYlJl
Y3RzOihOU0FycmF5ICopd2ViUmVjdHM7Ci0KLUBlbmQKIAogQGludGVyZmFjZSBXS0F1dG9jb3Jy
ZWN0aW9uUmVjdHMgOiBVSVdLQXV0b2NvcnJlY3Rpb25SZWN0cwogKyAoV0tBdXRvY29ycmVjdGlv
blJlY3RzICopYXV0b2NvcnJlY3Rpb25SZWN0c1dpdGhGaXJzdENHUmVjdDooQ0dSZWN0KWZpcnN0
UmVjdCBsYXN0Q0dSZWN0OihDR1JlY3QpbGFzdFJlY3Q7CkBAIC0yMzAwLDcgKzIyOTQsNyBAQCAt
IChOU0FycmF5PE5TVmFsdWUgKj4gKilfdWlUZXh0U2VsZWN0aW9uUmVjdHMKIAogICAgIGlmIChf
dGV4dEludGVyYWN0aW9uQXNzaXN0YW50KSB7CiAgICAgICAgIGZvciAoV0tUZXh0U2VsZWN0aW9u
UmVjdCAqc2VsZWN0aW9uUmVjdCBpbiBbX3RleHRJbnRlcmFjdGlvbkFzc2lzdGFudCB2YWx1ZUZv
cktleVBhdGg6QCJzZWxlY3Rpb25WaWV3LnNlbGVjdGlvbi5zZWxlY3Rpb25SZWN0cyJdKQotICAg
ICAgICAgICAgW3RleHRTZWxlY3Rpb25SZWN0cyBhZGRPYmplY3Q6W05TVmFsdWUgdmFsdWVXaXRo
Q0dSZWN0OnNlbGVjdGlvblJlY3Qud2ViUmVjdC5yZWN0XV07CisgICAgICAgICAgICBbdGV4dFNl
bGVjdGlvblJlY3RzIGFkZE9iamVjdDpbTlNWYWx1ZSB2YWx1ZVdpdGhDR1JlY3Q6c2VsZWN0aW9u
UmVjdC5yZWN0XV07CiAgICAgfQogCiAgICAgcmV0dXJuIHRleHRTZWxlY3Rpb25SZWN0czsKQEAg
LTQ0NjYsNiArNDQ2MCwxNiBAQCAtICh2b2lkKXJlcGxhY2VSYW5nZTooVUlUZXh0UmFuZ2UgKily
YW5nZSB3aXRoVGV4dDooTlNTdHJpbmcgKil0ZXh0CiB7CiB9CiAKK3N0YXRpYyBOU0FycmF5PFdL
VGV4dFNlbGVjdGlvblJlY3QgKj4gKndrVGV4dFNlbGVjdGlvblJlY3RzKGNvbnN0IFZlY3RvcjxX
ZWJDb3JlOjpTZWxlY3Rpb25SZWN0PiYgY29yZVJlY3RzKQoreworICAgIGF1dG8gcmVjdHMgPSBh
ZG9wdE5TKFtbTlNNdXRhYmxlQXJyYXkgYWxsb2NdIGluaXRXaXRoQ2FwYWNpdHk6Y29yZVJlY3Rz
LnNpemUoKV0pOworICAgIGZvciAoYXV0byYgY29yZVJlY3QgOiBjb3JlUmVjdHMpIHsKKyAgICAg
ICAgYXV0byB3a1RleHRTZWxlY3Rpb25SZWN0ID0gYWRvcHROUyhbW1dLVGV4dFNlbGVjdGlvblJl
Y3QgYWxsb2NdIGluaXRXaXRoU2VsZWN0aW9uUmVjdDpjb3JlUmVjdF0pOworICAgICAgICBbcmVj
dHMgYWRkT2JqZWN0OndrVGV4dFNlbGVjdGlvblJlY3QuZ2V0KCldOworICAgIH0KKyAgICByZXR1
cm4gcmVjdHMuYXV0b3JlbGVhc2UoKTsKK30KKwogLSAoVUlUZXh0UmFuZ2UgKilzZWxlY3RlZFRl
eHRSYW5nZQogewogICAgIGlmIChfcGFnZS0+ZWRpdG9yU3RhdGUoKS5zZWxlY3Rpb25Jc05vbmUg
fHwgX3BhZ2UtPmVkaXRvclN0YXRlKCkuaXNNaXNzaW5nUG9zdExheW91dERhdGEpCkBAIC00NTAz
LDcgKzQ1MDcsNyBAQCAtIChVSVRleHRSYW5nZSAqKXNlbGVjdGVkVGV4dFJhbmdlCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGlzRWRpdGFibGU6X3BhZ2UtPmVkaXRvclN0YXRlKCku
aXNDb250ZW50RWRpdGFibGUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0
UmVjdDpzdGFydFJlY3QKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5kUmVj
dDplbmRSZWN0Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0aW9uUmVjdHM6W3Nl
bGYgd2ViU2VsZWN0aW9uUmVjdHNdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0
aW9uUmVjdHM6d2tUZXh0U2VsZWN0aW9uUmVjdHMoX3BhZ2UtPmVkaXRvclN0YXRlKCkucG9zdExh
eW91dERhdGEoKS5zZWxlY3Rpb25SZWN0cykKICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVj
dGVkVGV4dExlbmd0aDpwb3N0TGF5b3V0RWRpdG9yU3RhdGVEYXRhLnNlbGVjdGVkVGV4dExlbmd0
aF07CiB9CiAKQEAgLTQ1MTQsNyArNDUxOCw3IEBAIC0gKENHUmVjdCljYXJldFJlY3RGb3JQb3Np
dGlvbjooVUlUZXh0UG9zaXRpb24gKilwb3NpdGlvbgogCiAtIChOU0FycmF5ICopc2VsZWN0aW9u
UmVjdHNGb3JSYW5nZTooVUlUZXh0UmFuZ2UgKilyYW5nZQogewotICAgIHJldHVybiBbV0tUZXh0
U2VsZWN0aW9uUmVjdCB0ZXh0U2VsZWN0aW9uUmVjdHNXaXRoV2ViUmVjdHM6KChXS1RleHRSYW5n
ZSAqKXJhbmdlKS5zZWxlY3Rpb25SZWN0c107CisgICAgcmV0dXJuIFsoV0tUZXh0UmFuZ2UgKily
YW5nZSBzZWxlY3Rpb25SZWN0c107CiB9CiAKIC0gKHZvaWQpc2V0U2VsZWN0ZWRUZXh0UmFuZ2U6
KFVJVGV4dFJhbmdlICopcmFuZ2UKQEAgLTkzMDQsNyArOTMwOCw4IEBAIEBlbmQKIAogI2VuZGlm
IC8vIEhBVkUoTElOS19QUkVWSUVXKQogCi0vLyBVSVRleHRSYW5nZSwgVUlUZXh0UG9zaXRpb24g
YW5kIFVJVGV4dFNlbGVjdGlvblJlY3QgaW1wbGVtZW50YXRpb25zIGZvciBXSzIKKy8vIFVJVGV4
dFJhbmdlIGFuZCBVSVRleHRQb3NpdGlvbiBpbXBsZW1lbnRhdGlvbnMgZm9yIFdLMgorLy8gRklY
TUU6IE1vdmUgdGhlc2Ugb3V0IGludG8gc2VwYXJhdGUgZmlsZXMuCiAKIEBpbXBsZW1lbnRhdGlv
biBXS1RleHRSYW5nZSAoVUlUZXh0SW5wdXRBZGRpdGlvbnMpCiAKQEAgLTk0MjAsNzEgKzk0MjUs
NiBAQCAtIChOU1N0cmluZyAqKWRlc2NyaXB0aW9uCiAKIEBlbmQKIAotQGltcGxlbWVudGF0aW9u
IFdLVGV4dFNlbGVjdGlvblJlY3QKLQotLSAoaWQpaW5pdFdpdGhXZWJSZWN0OihXZWJTZWxlY3Rp
b25SZWN0ICopd1JlY3QKLXsKLSAgICBzZWxmID0gW3N1cGVyIGluaXRdOwotICAgIGlmIChzZWxm
KQotICAgICAgICBzZWxmLndlYlJlY3QgPSB3UmVjdDsKLQotICAgIHJldHVybiBzZWxmOwotfQot
Ci0tICh2b2lkKWRlYWxsb2MKLXsKLSAgICBzZWxmLndlYlJlY3QgPSBuaWw7Ci0gICAgW3N1cGVy
IGRlYWxsb2NdOwotfQotCi0vLyBGSVhNRTogd2UgYXJlIHVzaW5nIHRoaXMgaW1wbGVtZW50YXRp
b24gZm9yIG5vdwotLy8gdGhhdCB1c2VzIFdlYlNlbGVjdGlvblJlY3QsIGJ1dCB3ZSB3YW50IHRv
IHByb3ZpZGUgb3VyIG93bgotLy8gYmFzZWQgb24gV2ViQ29yZTo6U2VsZWN0aW9uUmVjdC4KLQot
KyAoTlNBcnJheSAqKXRleHRTZWxlY3Rpb25SZWN0c1dpdGhXZWJSZWN0czooTlNBcnJheSAqKXdl
YlJlY3RzCi17Ci0gICAgTlNNdXRhYmxlQXJyYXkgKmFycmF5ID0gW05TTXV0YWJsZUFycmF5IGFy
cmF5V2l0aENhcGFjaXR5OndlYlJlY3RzLmNvdW50XTsKLSAgICBmb3IgKFdlYlNlbGVjdGlvblJl
Y3QgKndlYlJlY3QgaW4gd2ViUmVjdHMpIHsKLSAgICAgICAgUmV0YWluUHRyPFdLVGV4dFNlbGVj
dGlvblJlY3Q+IHJlY3QgPSBhZG9wdE5TKFtbV0tUZXh0U2VsZWN0aW9uUmVjdCBhbGxvY10gaW5p
dFdpdGhXZWJSZWN0OndlYlJlY3RdKTsKLSAgICAgICAgW2FycmF5IGFkZE9iamVjdDpyZWN0Lmdl
dCgpXTsKLSAgICB9Ci0gICAgcmV0dXJuIGFycmF5OwotfQotCi0tIChDR1JlY3QpcmVjdAotewot
ICAgIHJldHVybiBfd2ViUmVjdC5yZWN0OwotfQotCi1BTExPV19ERVBSRUNBVEVEX0RFQ0xBUkFU
SU9OU19CRUdJTgotLSAoVUlUZXh0V3JpdGluZ0RpcmVjdGlvbil3cml0aW5nRGlyZWN0aW9uCi17
Ci0gICAgcmV0dXJuIChVSVRleHRXcml0aW5nRGlyZWN0aW9uKV93ZWJSZWN0LndyaXRpbmdEaXJl
Y3Rpb247Ci19Ci1BTExPV19ERVBSRUNBVEVEX0RFQ0xBUkFUSU9OU19FTkQKLQotLSAoVUlUZXh0
UmFuZ2UgKilyYW5nZQotewotICAgIHJldHVybiBuaWw7Ci19Ci0KLS0gKEJPT0wpY29udGFpbnNT
dGFydAotewotICAgIHJldHVybiBfd2ViUmVjdC5jb250YWluc1N0YXJ0OwotfQotCi0tIChCT09M
KWNvbnRhaW5zRW5kCi17Ci0gICAgcmV0dXJuIF93ZWJSZWN0LmNvbnRhaW5zRW5kOwotfQotCi0t
IChCT09MKWlzVmVydGljYWwKLXsKLSAgICByZXR1cm4gIV93ZWJSZWN0LmlzSG9yaXpvbnRhbDsK
LX0KLQotQGVuZAotCiBAaW1wbGVtZW50YXRpb24gV0tBdXRvY29ycmVjdGlvblJlY3RzCiAKICsg
KFdLQXV0b2NvcnJlY3Rpb25SZWN0cyAqKWF1dG9jb3JyZWN0aW9uUmVjdHNXaXRoRmlyc3RDR1Jl
Y3Q6KENHUmVjdClmaXJzdFJlY3QgbGFzdENHUmVjdDooQ0dSZWN0KWxhc3RSZWN0CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tUZXh0U2VsZWN0aW9uUmVjdC5oIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLVGV4dFNlbGVjdGlvblJlY3QuaApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uOGQ1OGZlMWZhNmIKLS0tIC9kZXYvbnVs
bAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tUZXh0U2VsZWN0aW9uUmVjdC5o
CkBAIC0wLDAgKzEsNDIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBh
cmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFO
RCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2lmIFBMQVRG
T1JNKElPU19GQU1JTFkpCisKKyNpbXBvcnQgPFVJS2l0L1VJS2l0Lmg+CisKK25hbWVzcGFjZSBX
ZWJDb3JlIHsKK2NsYXNzIFNlbGVjdGlvblJlY3Q7Cit9CisKK0BpbnRlcmZhY2UgV0tUZXh0U2Vs
ZWN0aW9uUmVjdCA6IFVJVGV4dFNlbGVjdGlvblJlY3QKKworLSAoaW5zdGFuY2V0eXBlKWluaXRX
aXRoU2VsZWN0aW9uUmVjdDooY29uc3QgV2ViQ29yZTo6U2VsZWN0aW9uUmVjdCYpc2VsZWN0aW9u
UmVjdDsKKworQGVuZAorCisjZW5kaWYgLy8gUExBVEZPUk0oSU9TX0ZBTUlMWSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS1RleHRTZWxlY3Rpb25SZWN0Lm1tIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLVGV4dFNlbGVjdGlvblJlY3QubW0KbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjk5MTAzMzVmYjViCi0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLVGV4dFNlbGVjdGlvblJlY3Qu
bW0KQEAgLTAsMCArMSw3OSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAq
IGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICog
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBvcnQgImNvbmZpZy5oIgorI2lt
cG9ydCAiV0tUZXh0U2VsZWN0aW9uUmVjdC5oIgorCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkK
KworI2ltcG9ydCA8V2ViQ29yZS9TZWxlY3Rpb25SZWN0Lmg+CisKK0BpbXBsZW1lbnRhdGlvbiBX
S1RleHRTZWxlY3Rpb25SZWN0IHsKKyAgICBXZWJDb3JlOjpTZWxlY3Rpb25SZWN0IF9zZWxlY3Rp
b25SZWN0OworfQorCistIChpbnN0YW5jZXR5cGUpaW5pdFdpdGhTZWxlY3Rpb25SZWN0Oihjb25z
dCBXZWJDb3JlOjpTZWxlY3Rpb25SZWN0JilzZWxlY3Rpb25SZWN0Cit7CisgICAgaWYgKCEoc2Vs
ZiA9IFtzdXBlciBpbml0XSkpCisgICAgICAgIHJldHVybiBuaWw7CisgICAgX3NlbGVjdGlvblJl
Y3QgPSBzZWxlY3Rpb25SZWN0OworICAgIHJldHVybiBzZWxmOworfQorCistIChDR1JlY3QpcmVj
dAoreworICAgIHJldHVybiBfc2VsZWN0aW9uUmVjdC5yZWN0KCk7Cit9CisKK0FMTE9XX0RFUFJF
Q0FURURfREVDTEFSQVRJT05TX0JFR0lOCistIChVSVRleHRXcml0aW5nRGlyZWN0aW9uKXdyaXRp
bmdEaXJlY3Rpb24KK3sKKyAgICByZXR1cm4gX3NlbGVjdGlvblJlY3QuZGlyZWN0aW9uKCkgPT0g
V2ViQ29yZTo6VGV4dERpcmVjdGlvbjo6TFRSID8gVUlUZXh0V3JpdGluZ0RpcmVjdGlvbkxlZnRU
b1JpZ2h0IDogVUlUZXh0V3JpdGluZ0RpcmVjdGlvblJpZ2h0VG9MZWZ0OworfQorQUxMT1dfREVQ
UkVDQVRFRF9ERUNMQVJBVElPTlNfRU5ECisKKy0gKFVJVGV4dFJhbmdlICopcmFuZ2UKK3sKKyAg
ICByZXR1cm4gbmlsOworfQorCistIChCT09MKWNvbnRhaW5zU3RhcnQKK3sKKyAgICByZXR1cm4g
X3NlbGVjdGlvblJlY3QuY29udGFpbnNTdGFydCgpOworfQorCistIChCT09MKWNvbnRhaW5zRW5k
Cit7CisgICAgcmV0dXJuIF9zZWxlY3Rpb25SZWN0LmNvbnRhaW5zRW5kKCk7Cit9CisKKy0gKEJP
T0wpaXNWZXJ0aWNhbAoreworICAgIHJldHVybiAhX3NlbGVjdGlvblJlY3QuaXNIb3Jpem9udGFs
KCk7Cit9CisKK0BlbmQKKworI2VuZGlmIC8vIFBMQVRGT1JNKElPU19GQU1JTFkpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291
cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAxNWM1MjRm
MzYyMS4uNGNhNjgzMjJjOTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagpAQCAtMTczNCw2ICsxNzM0LDcgQEAKIAkJQ0UxQTBCRDIxQTQ4RTZD
NjAwNTRFRjc0IC8qIEFzc2VydGlvblNlcnZpY2VzU1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRTFBMEJDQzFBNDhFNkM2MDA1NEVGNzQgLyogQXNz
ZXJ0aW9uU2VydmljZXNTUEkuaCAqLzsgfTsKIAkJQ0UxQTBCRDYxQTQ4RTZDNjAwNTRFRjc0IC8q
IFRDQ1NQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
Q0UxQTBCRDAxQTQ4RTZDNjAwNTRFRjc0IC8qIFRDQ1NQSS5oICovOyB9OwogCQlDRTFBMEJENzFB
NDhFNkM2MDA1NEVGNzQgLyogVGV4dElucHV0U1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRTFBMEJEMTFBNDhFNkM2MDA1NEVGNzQgLyogVGV4dElu
cHV0U1BJLmggKi87IH07CisJCUNFNDU5NDVDMjQwRjg4NTUwMDc4MDE5RiAvKiBXS1RleHRTZWxl
Y3Rpb25SZWN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBDRTQ1OTQ1QTI0MEY4NUI5MDA3ODAxOUYgLyogV0tUZXh0U2VsZWN0aW9uUmVjdC5oICovOyB9
OwogCQlDRTU1MEUxNTIyODM3NTIyMDBEMjg3OTEgLyogSW5zZXJ0VGV4dE9wdGlvbnMuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENFNTUwRTEyMjI4Mzcz
QzgwMEQyODc5MSAvKiBJbnNlcnRUZXh0T3B0aW9ucy5oICovOyB9OwogCQlDRTVCNEM4ODIxQjcz
RDg3MDAyMkU2NEYgLyogV0tTeW50aGV0aWNGbGFnc0NoYW5nZWRXZWJFdmVudC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0U1QjRDODYyMUI3M0Q4NzAw
MjJFNjRGIC8qIFdLU3ludGhldGljRmxhZ3NDaGFuZ2VkV2ViRXZlbnQuaCAqLzsgfTsKIAkJQ0U3
MEVFNUQyMjQ0MkJEMDAwRTBBRjBGIC8qIFdLRm9ybVBlcmlwaGVyYWxCYXNlLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRTcwRUU1QzIyNDQyQkQwMDBF
MEFGMEYgLyogV0tGb3JtUGVyaXBoZXJhbEJhc2UuaCAqLzsgfTsKQEAgLTUwNTAsNiArNTA1MSw4
IEBACiAJCUNFMUEwQkNDMUE0OEU2QzYwMDU0RUY3NCAvKiBBc3NlcnRpb25TZXJ2aWNlc1NQSS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBc3NlcnRpb25TZXJ2aWNlc1NQSS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDRTFBMEJEMDFBNDhFNkM2MDA1NEVGNzQg
LyogVENDU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRDQ1NQSS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDRTFBMEJEMTFBNDhFNkM2MDA1NEVGNzQgLyog
VGV4dElucHV0U1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRleHRJbnB1
dFNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRTQ1OTQ1QTI0MEY4NUI5MDA3
ODAxOUYgLyogV0tUZXh0U2VsZWN0aW9uUmVjdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBXS1RleHRTZWxl
Y3Rpb25SZWN0Lmg7IHBhdGggPSBpb3MvV0tUZXh0U2VsZWN0aW9uUmVjdC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlDRTQ1OTQ1QjI0MEY4NUI5MDA3ODAxOUYgLyogV0tUZXh0U2Vs
ZWN0aW9uUmVjdC5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgbmFtZSA9IFdLVGV4dFNlbGVjdGlvblJlY3Qu
bW07IHBhdGggPSBpb3MvV0tUZXh0U2VsZWN0aW9uUmVjdC5tbTsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJQ0U1NTBFMTIyMjgzNzNDODAwRDI4NzkxIC8qIEluc2VydFRleHRPcHRpb25z
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEluc2VydFRleHRPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUNFNTUwRTEzMjI4Mzc0NDQwMEQyODc5MSAvKiBJbnNlcnRUZXh0T3B0aW9u
cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbnNlcnRUZXh0T3B0aW9ucy5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNFNUI0Qzg2MjFCNzNEODcwMDIyRTY0RiAvKiBXS1N5bnRo
ZXRpY0ZsYWdzQ2hhbmdlZFdlYkV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFdLU3ludGhldGljRmxh
Z3NDaGFuZ2VkV2ViRXZlbnQuaDsgcGF0aCA9IGlvcy9XS1N5bnRoZXRpY0ZsYWdzQ2hhbmdlZFdl
YkV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC02Nzk1LDYgKzY3OTgsOCBA
QAogCQkJCTI2RjEwQkU3MTkxODdFMkUwMDFEMEU2OCAvKiBXS1N5bnRoZXRpY1RhcEdlc3R1cmVS
ZWNvZ25pemVyLm1tICovLAogCQkJCTMxNkI4QjYyMjA1NEI1NTgwMEJENEE2MiAvKiBXS1N5c3Rl
bVByZXZpZXdWaWV3LmggKi8sCiAJCQkJMzE2QjhCNjEyMDU0QjU1ODAwQkQ0QTYyIC8qIFdLU3lz
dGVtUHJldmlld1ZpZXcubW0gKi8sCisJCQkJQ0U0NTk0NUEyNDBGODVCOTAwNzgwMTlGIC8qIFdL
VGV4dFNlbGVjdGlvblJlY3QuaCAqLywKKwkJCQlDRTQ1OTQ1QjI0MEY4NUI5MDA3ODAxOUYgLyog
V0tUZXh0U2VsZWN0aW9uUmVjdC5tbSAqLywKIAkJCQk3MUE2NzZBNDIyQzYyMzE4MDA3RDYyOTUg
LyogV0tUb3VjaEFjdGlvbkdlc3R1cmVSZWNvZ25pemVyLmggKi8sCiAJCQkJNzFBNjc2QTUyMkM2
MjMxODAwN0Q2Mjk1IC8qIFdLVG91Y2hBY3Rpb25HZXN0dXJlUmVjb2duaXplci5tbSAqLywKIAkJ
CQkyRDFFODIyMTIxNkZGRjUwMDBBMTUyNjUgLyogV0tXZWJFdmVudC5oICovLApAQCAtMTEzNDcs
NiArMTEzNTIsNyBAQAogCQkJCTJERDY3QTM1MUJEODYxMDYwMDUzQjI1MSAvKiBXS1RleHRGaW5k
ZXJDbGllbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCUY0RDVGNTFEMjA2MDg3QTEwMDM4QkJBOCAv
KiBXS1RleHRJbnB1dExpc3RWaWV3Q29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEZD
QjRFNjgxOEJCRTNEOTAwMEZDRkM5IC8qIFdLVGV4dElucHV0V2luZG93Q29udHJvbGxlci5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQ0U0NTk0NUMyNDBGODg1NTAwNzgwMTlGIC8qIFdLVGV4dFNlbGVj
dGlvblJlY3QuaCBpbiBIZWFkZXJzICovLAogCQkJCTJFQjZGQzAxMjAzMDIxOTYwMDE3RTYxOSAv
KiBXS1RpbWVQaWNrZXJWaWV3Q29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNzFBNjc2
QTYyMkM2MjMyNTAwN0Q2Mjk1IC8qIFdLVG91Y2hBY3Rpb25HZXN0dXJlUmVjb2duaXplci5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJQkM0MDc2MDgxMjRGRjAyNzAwNjhGMjBBIC8qIFdLVHlwZS5oIGlu
IEhlYWRlcnMgKi8sCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>