<?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>227801</bug_id>
          
          <creation_ts>2021-07-08 10:05:53 -0700</creation_ts>
          <short_desc>Implement ::backdrop pseudo element</short_desc>
          <delta_ts>2021-08-19 15:15:17 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>CSS</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=229296</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>229042</dependson>
          <blocked>84635</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Tim Nguyen (:ntim)">ntim</reporter>
          <assigned_to name="Tim Nguyen (:ntim)">ntim</assigned_to>
          <cc>allan.jensen</cc>
    
    <cc>cdumez</cc>
    
    <cc>changseok</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>hi</cc>
    
    <cc>joepeck</cc>
    
    <cc>kangil.han</cc>
    
    <cc>keith_miller</cc>
    
    <cc>koivisto</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>macpherson</cc>
    
    <cc>mark.lam</cc>
    
    <cc>menard</cc>
    
    <cc>msaboff</cc>
    
    <cc>pangle</cc>
    
    <cc>pdr</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1775700</commentid>
    <comment_count>0</comment_count>
    <who name="Tim Nguyen (:ntim)">ntim</who>
    <bug_when>2021-07-08 10:05:53 -0700</bug_when>
    <thetext>https://fullscreen.spec.whatwg.org/#new-stacking-layer

https://fullscreen.spec.whatwg.org/#css-pe-backdrop</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1775703</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-07-08 10:06:43 -0700</bug_when>
    <thetext>&lt;rdar://problem/80330009&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1783575</commentid>
    <comment_count>2</comment_count>
      <attachid>435364</attachid>
    <who name="Tim Nguyen (:ntim)">ntim</who>
    <bug_when>2021-08-11 11:43:07 -0700</bug_when>
    <thetext>Created attachment 435364
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1783576</commentid>
    <comment_count>3</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2021-08-11 11:44:30 -0700</bug_when>
    <thetext>This patch modifies the inspector protocol. Please ensure that any frontend changes appropriately use feature checks for new protocol features.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1783600</commentid>
    <comment_count>4</comment_count>
      <attachid>435369</attachid>
    <who name="Tim Nguyen (:ntim)">ntim</who>
    <bug_when>2021-08-11 12:41:48 -0700</bug_when>
    <thetext>Created attachment 435369
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1783770</commentid>
    <comment_count>5</comment_count>
      <attachid>435406</attachid>
    <who name="Tim Nguyen (:ntim)">ntim</who>
    <bug_when>2021-08-12 03:33:16 -0700</bug_when>
    <thetext>Created attachment 435406
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1783773</commentid>
    <comment_count>6</comment_count>
      <attachid>435408</attachid>
    <who name="Tim Nguyen (:ntim)">ntim</who>
    <bug_when>2021-08-12 03:42:55 -0700</bug_when>
    <thetext>Created attachment 435408
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1783776</commentid>
    <comment_count>7</comment_count>
      <attachid>435410</attachid>
    <who name="Tim Nguyen (:ntim)">ntim</who>
    <bug_when>2021-08-12 04:02:05 -0700</bug_when>
    <thetext>Created attachment 435410
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1783779</commentid>
    <comment_count>8</comment_count>
      <attachid>435411</attachid>
    <who name="Tim Nguyen (:ntim)">ntim</who>
    <bug_when>2021-08-12 04:08:28 -0700</bug_when>
    <thetext>Created attachment 435411
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1783788</commentid>
    <comment_count>9</comment_count>
      <attachid>435411</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2021-08-12 04:44:01 -0700</bug_when>
    <thetext>Comment on attachment 435411
Patch

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

Seems pretty good but lets do another round.

&gt; Source/WebCore/rendering/RenderElement.cpp:2378
&gt; +RenderBlockFlow* RenderElement::backdropRenderer() const

This could return WeakPtr for safety.

&gt; Source/WebCore/rendering/updating/RenderTreeBuilder.cpp:895
&gt; +void RenderTreeBuilder::updateBackdropRenderer(RenderElement&amp; renderer)

This could go to RenderTreeBuilder::GeneratedContent and maybe invoked from GeneratedContent::updatePseudoElement

&gt; Source/WebCore/rendering/updating/RenderTreeBuilder.cpp:905
&gt; +    auto style = renderer.getCachedPseudoStyle(PseudoId::Backdrop, renderer.document().renderStyle());

You can use renderer.view().style(), so you don&apos;t bounce into DOM side unnecessarily (it is the same thing).

&gt; Source/WebCore/rendering/updating/RenderTreeBuilder.cpp:907
&gt; +    if (!style || style-&gt;display() == DisplayType::None)
&gt; +        return;

Shouldn&apos;t we destroy an existing renderer in this case? 

If so we probably should have a test.

&gt; Source/WebCore/rendering/updating/RenderTreeBuilder.cpp:911
&gt; +    auto* backdropRenderer = renderer.backdropRenderer();

This should be a WeakPtr. We have had lots of safety issues in render tree building code.

&gt; Source/WebCore/rendering/updating/RenderTreeBuilder.cpp:923
&gt; +    RenderElement* currentParent = backdropRenderer-&gt;parent();
&gt; +    RenderElement* newParent = renderer.parent();

WeakPtrs

&gt; Source/WebCore/style/StyleTreeResolver.cpp:287
&gt; -    
&gt; -    auto&amp; parentStyle = *elementUpdate.style;
&gt; +
&gt; +    auto&amp; parentStyle = pseudoId == PseudoId::Backdrop ? *element.document().renderStyle() : *elementUpdate.style;
&gt;      auto* parentBoxStyle = parentBoxStyleForPseudo(elementUpdate);
&gt; -    
&gt; +

This is unnecessary as the code doesn&apos;t currently handle Backdrop. You could assert against it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1783792</commentid>
    <comment_count>10</comment_count>
      <attachid>435411</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2021-08-12 04:52:20 -0700</bug_when>
    <thetext>Comment on attachment 435411
Patch

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

&gt;&gt; Source/WebCore/rendering/updating/RenderTreeBuilder.cpp:905
&gt;&gt; +    auto style = renderer.getCachedPseudoStyle(PseudoId::Backdrop, renderer.document().renderStyle());
&gt; 
&gt; You can use renderer.view().style(), so you don&apos;t bounce into DOM side unnecessarily (it is the same thing).

Also you could add a comment (like a spec reference) about the odd parent style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1783793</commentid>
    <comment_count>11</comment_count>
      <attachid>435411</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2021-08-12 04:53:02 -0700</bug_when>
    <thetext>Comment on attachment 435411
Patch

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

&gt; Source/WebCore/rendering/updating/RenderTreeBuilder.cpp:904
&gt; +    // Update ::backdrop renderer style or create renderer

This comment is kinda pointless though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1783811</commentid>
    <comment_count>12</comment_count>
      <attachid>435420</attachid>
    <who name="Tim Nguyen (:ntim)">ntim</who>
    <bug_when>2021-08-12 06:38:44 -0700</bug_when>
    <thetext>Created attachment 435420
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1783848</commentid>
    <comment_count>13</comment_count>
      <attachid>435420</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2021-08-12 09:09:08 -0700</bug_when>
    <thetext>Comment on attachment 435420
Patch

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

&gt; Source/WebCore/rendering/updating/RenderTreeUpdaterGeneratedContent.cpp:189
&gt; +    WeakPtr backdropRenderer = renderer.backdropRenderer();

could be auto

&gt; Source/WebCore/rendering/updating/RenderTreeUpdaterGeneratedContent.cpp:201
&gt; +    WeakPtr currentParent = makeWeakPtr(backdropRenderer-&gt;parent());
&gt; +    WeakPtr newParent = makeWeakPtr(renderer.parent());

these too</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1783871</commentid>
    <comment_count>14</comment_count>
      <attachid>435432</attachid>
    <who name="Tim Nguyen (:ntim)">ntim</who>
    <bug_when>2021-08-12 10:18:24 -0700</bug_when>
    <thetext>Created attachment 435432
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1784100</commentid>
    <comment_count>15</comment_count>
      <attachid>435481</attachid>
    <who name="Tim Nguyen (:ntim)">ntim</who>
    <bug_when>2021-08-13 07:19:40 -0700</bug_when>
    <thetext>Created attachment 435481
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1785415</commentid>
    <comment_count>16</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-08-19 02:02:11 -0700</bug_when>
    <thetext>Committed r281229 (240666@main): &lt;https://commits.webkit.org/240666@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 435481.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>435364</attachid>
            <date>2021-08-11 11:43:07 -0700</date>
            <delta_ts>2021-08-11 12:41:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227801-20210811204305.patch</filename>
            <type>text/plain</type>
            <size>17865</size>
            <attacher name="Tim Nguyen (:ntim)">ntim</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgwNzY3CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBl
ZmYwZmU5NWIzNjhiNzk4MjU3NzMzNjNiYTI2NDVhNGUzNjQ5OGM5Li4yOTFiMjQxOWJlNzdlZTIz
ODIyZTkzYjhiNDg3N2UwMWU5YmVkY2UzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNSBAQAorMjAyMS0wOC0xMSAgVGltIE5ndXllbiAgPG50aW1AYXBwbGUuY29tPgorCisg
ICAgICAgIEltcGxlbWVudCA6OmJhY2tkcm9wIHBzZXVkbyBlbGVtZW50CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjc4MDEKKworICAgICAgICBUaGlz
IGFkZHMgVUEgc3R5bGVzLCBSZW5kZXJUcmVlQnVpbGRlciBzdXBwb3J0IGFuZCBXZWJJbnNwZWN0
b3Igc3VwcG9ydCBmb3IgOjpiYWNrZHJvcC4KKyAgICAgICAgU29tZSBpbXBvcnRlZCBibGluayB0
ZXN0cyBub3cgc3RhcnQgcGFzc2luZywgc29tZSBzdGlsbCBuZWVkIHByb3BlciB0b3AgbGF5ZXIg
c3VwcG9ydC4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIGluc3BlY3Rvci9wcm90b2NvbC9DU1MuanNvbjoKKwogMjAyMS0wOC0wNyAgTWljaGFlbCBD
YXRhbnphcm8gIDxtY2F0YW56YXJvQGdub21lLm9yZz4KIAogICAgICAgICBGaXggT0RSIHZpb2xh
dGlvbnMgaW4gSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMmQ2ZDVmN2Y1YmViYjE1NWQwYTE0YmJiOTQ4ZGU1
ZTlmZDU1NTljOS4uYjc4M2FlMmI5NmY2OTU3NWQ0ZmZkZDYxZDA5ZGMxNDY5OGY5NDZkNSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwpAQCAtMSwzICsxLDM4IEBACisyMDIxLTA4LTExICBUaW0gTmd1eWVuICA8bnRpbUBh
cHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IDo6YmFja2Ryb3AgcHNldWRvIGVsZW1lbnQK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNzgwMQor
CisgICAgICAgIFRoaXMgYWRkcyBVQSBzdHlsZXMsIFJlbmRlclRyZWVCdWlsZGVyIHN1cHBvcnQg
YW5kIFdlYkluc3BlY3RvciBzdXBwb3J0IGZvciA6OmJhY2tkcm9wLgorICAgICAgICBTb21lIGlt
cG9ydGVkIGJsaW5rIHRlc3RzIG5vdyBzdGFydCBwYXNzaW5nLCBzb21lIHN0aWxsIG5lZWQgcHJv
cGVyIHRvcCBsYXllciBzdXBwb3J0LgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogY3NzL0NTU1NlbGVjdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkNTU1NlbGVjdG9yOjpwc2V1ZG9JZCk6CisgICAgICAgICogY3NzL0NTU1NlbGVjdG9yLmg6Cisg
ICAgICAgICogY3NzL1NlbGVjdG9yUHNldWRvRWxlbWVudFR5cGVNYXAuaW46CisgICAgICAgICog
Y3NzL2RpYWxvZy5jc3M6CisgICAgICAgIChkaWFsb2c6OmJhY2tkcm9wKToKKyAgICAgICAgKDo6
YmFja2Ryb3ApOgorICAgICAgICAqIGRvbS9FbGVtZW50Lmg6CisgICAgICAgIChXZWJDb3JlOjpF
bGVtZW50Ojppc0luVG9wTGF5ZXIgY29uc3QpOgorICAgICAgICAqIGluc3BlY3Rvci9hZ2VudHMv
SW5zcGVjdG9yQ1NTQWdlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6cHJvdG9jb2xWYWx1ZUZv
clBzZXVkb0lkKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJFbGVtZW50OjpiYWNrZHJvcFJlbmRlcmVyIGNvbnN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlckVsZW1lbnQ6OnNldEJhY2tkcm9wUmVuZGVyZXIpOgorICAg
ICAgICAqIHJlbmRlcmluZy9SZW5kZXJFbGVtZW50Lmg6CisgICAgICAgICogcmVuZGVyaW5nL1Jl
bmRlck9iamVjdC5oOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0
YW50cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpvcGVyYXRvcjw8KToKKyAgICAgICAgKiByZW5k
ZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaDoKKyAgICAgICAgKiByZW5kZXJpbmcv
dXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
VHJlZUJ1aWxkZXI6OmRlc3Ryb3lBbmRDbGVhblVwQW5vbnltb3VzV3JhcHBlcnMpOgorICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyVHJlZUJ1aWxkZXI6OnVwZGF0ZUFmdGVyRGVzY2VuZGFudHMpOgor
ICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVHJlZUJ1aWxkZXI6OnVwZGF0ZUJhY2tkcm9wUmVuZGVy
ZXIpOgorICAgICAgICAqIHJlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlQnVpbGRlci5oOgor
CiAyMDIxLTA4LTA4ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAg
IFJFR1JFU1NJT046IGh0dHAvdGVzdHMvcHJlbG9hZC9vbmxvYWRfZXZlbnQuaHRtbCBpcyBhIGZs
YWt5IHRpbWVvdXQgb24gQmlnIFN1ciB3azEgUmVsZWFzZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
Ykluc3BlY3RvclVJL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cK
aW5kZXggMWJlM2M5ZjUwMDRjMmMzYzNjNzY5MzY2OTFhMTRiNDYxMzUzMWViYi4uODlhOTdmYjM5
MTRhM2Q1YTY2ZWE4Y2RhMDJiOGYwYmM2NjE2NjUzYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYklu
c3BlY3RvclVJL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMTYgQEAKKzIwMjEtMDgtMTEgIFRpbSBOZ3V5ZW4gIDxudGltQGFwcGxlLmNv
bT4KKworICAgICAgICBJbXBsZW1lbnQgOjpiYWNrZHJvcCBwc2V1ZG8gZWxlbWVudAorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI3ODAxCisKKyAgICAg
ICAgVGhpcyBhZGRzIFVBIHN0eWxlcywgUmVuZGVyVHJlZUJ1aWxkZXIgc3VwcG9ydCBhbmQgV2Vi
SW5zcGVjdG9yIHN1cHBvcnQgZm9yIDo6YmFja2Ryb3AuCisgICAgICAgIFNvbWUgaW1wb3J0ZWQg
YmxpbmsgdGVzdHMgbm93IHN0YXJ0IHBhc3NpbmcsIHNvbWUgc3RpbGwgbmVlZCBwcm9wZXIgdG9w
IGxheWVyIHN1cHBvcnQuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiBVc2VySW50ZXJmYWNlL0NvbnRyb2xsZXJzL0NTU01hbmFnZXIuanM6CisgICAg
ICAgIChXSS5DU1NNYW5hZ2VyLmRpc3BsYXlOYW1lRm9yUHNldWRvSWQpOgorCiAyMDIxLTA4LTAz
ICBTb25pYSBTaW5nbGEgIDxzb25pYXNpbmdsYS4xODEyQGdtYWlsLmNvbT4KIAogICAgICAgICBX
ZWIgSW5zcGVjdG9yOiBBZGQgc3RhbmRhcmQgbG9naWNhbCBwcm9wZXJ0aWVzIHRvIENTUyBrZXl3
b3JkIGNvbXBsZXRpb24KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0
b3IvcHJvdG9jb2wvQ1NTLmpzb24gYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3By
b3RvY29sL0NTUy5qc29uCmluZGV4IGM5ZWI1NzZiZDdjMjU5MzRhYTU5Y2JmMzJlMWNjY2Y5MzM5
MTdjZTguLjRjNjJkZTkwYTE1MGM2MjNkYzVhMDc0NTJhYTRiNDM3OWIyODQ2ZjQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvQ1NTLmpzb24KKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9DU1MuanNvbgpAQCAt
NDMsNiArNDMsNyBAQAogICAgICAgICAgICAgICAgICJiZWZvcmUiLAogICAgICAgICAgICAgICAg
ICJhZnRlciIsCiAgICAgICAgICAgICAgICAgInNlbGVjdGlvbiIsCisgICAgICAgICAgICAgICAg
ImJhY2tkcm9wIiwKICAgICAgICAgICAgICAgICAic2Nyb2xsYmFyIiwKICAgICAgICAgICAgICAg
ICAic2Nyb2xsYmFyLXRodW1iIiwKICAgICAgICAgICAgICAgICAic2Nyb2xsYmFyLWJ1dHRvbiIs
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2VsZWN0b3IuY3BwIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1NlbGVjdG9yLmNwcAppbmRleCBjMTVjNjI5MmVmOGI1MjI0MjE5MWVi
YzRjNDE1MDUyZTVlMjI0YTRhLi42ODUwZTg0ZjhiZjBjNTQ4MTE3NDYxMjUwNjhlMDAzODAyZTky
ZDU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2VsZWN0b3IuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWxlY3Rvci5jcHAKQEAgLTIzMiw2ICsyMzIsOCBAQCBQ
c2V1ZG9JZCBDU1NTZWxlY3Rvcjo6cHNldWRvSWQoUHNldWRvRWxlbWVudFR5cGUgdHlwZSkKICAg
ICAgICAgcmV0dXJuIFBzZXVkb0lkOjpIaWdobGlnaHQ7CiAgICAgY2FzZSBQc2V1ZG9FbGVtZW50
TWFya2VyOgogICAgICAgICByZXR1cm4gUHNldWRvSWQ6Ok1hcmtlcjsKKyAgICBjYXNlIFBzZXVk
b0VsZW1lbnRCYWNrZHJvcDoKKyAgICAgICAgcmV0dXJuIFBzZXVkb0lkOjpCYWNrZHJvcDsKICAg
ICBjYXNlIFBzZXVkb0VsZW1lbnRCZWZvcmU6CiAgICAgICAgIHJldHVybiBQc2V1ZG9JZDo6QmVm
b3JlOwogICAgIGNhc2UgUHNldWRvRWxlbWVudEFmdGVyOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvY3NzL0NTU1NlbGVjdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2VsZWN0b3Iu
aAppbmRleCA1YjRiOWYxNWYzMzRkMjRiMmNiMmMxYmJlMDk2NGQwZjdkZTgwYTAzLi5iYzgzYWZk
OTE3NDBhMTEyMGYzMWQ4NDY3OWM5ZDEyNmM3Y2MxZjk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTU2VsZWN0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2VsZWN0
b3IuaApAQCAtMTgwLDYgKzE4MCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgZW51
bSBQc2V1ZG9FbGVtZW50VHlwZSB7CiAgICAgICAgICAgICBQc2V1ZG9FbGVtZW50VW5rbm93biA9
IDAsCiAgICAgICAgICAgICBQc2V1ZG9FbGVtZW50QWZ0ZXIsCisgICAgICAgICAgICBQc2V1ZG9F
bGVtZW50QmFja2Ryb3AsCiAgICAgICAgICAgICBQc2V1ZG9FbGVtZW50QmVmb3JlLAogI2lmIEVO
QUJMRShWSURFTykKICAgICAgICAgICAgIFBzZXVkb0VsZW1lbnRDdWUsCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JQc2V1ZG9FbGVtZW50VHlwZU1hcC5pbiBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9TZWxlY3RvclBzZXVkb0VsZW1lbnRUeXBlTWFwLmluCmluZGV4IDBiNWVm
YzY2ODRjYjU2ZmVlZTA1OTJlNzNmODZjNjJlMGIyYzJjZTIuLmUxZTUxOTQ4ZmUyMjc2M2ExN2Rl
MTg4OTRjZDQ3OThhOTcwYTIwNDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TZWxl
Y3RvclBzZXVkb0VsZW1lbnRUeXBlTWFwLmluCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TZWxl
Y3RvclBzZXVkb0VsZW1lbnRUeXBlTWFwLmluCkBAIC0xLDQgKzEsNSBAQAogYWZ0ZXIKK2JhY2tk
cm9wCiBiZWZvcmUKICNpZiBFTkFCTEUoVklERU8pCiBjdWUKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9kaWFsb2cuY3NzIGIvU291cmNlL1dlYkNvcmUvY3NzL2RpYWxvZy5jc3MKaW5k
ZXggYjYxZGM5ZDc2ZjIwYmMwNGM0MDQ2NTZiMTJjNGM4YWRhY2I5MDk2Ni4uMWU3ZTVhMTUyMGYx
MzJiNjkwNDZkOTRlMmUyYTFkZjMwNDUzYjA1YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
Y3NzL2RpYWxvZy5jc3MKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL2RpYWxvZy5jc3MKQEAgLTI0
LDMgKzI0LDE2IEBAIGRpYWxvZzotaW50ZXJuYWwtbW9kYWwtZGlhbG9nIHsKICAgICBtYXgtd2lk
dGg6IGNhbGMoMTAwJSAtIDZweCAtIDJlbSk7CiAgICAgbWF4LWhlaWdodDogY2FsYygxMDAlIC0g
NnB4IC0gMmVtKTsKIH0KKworZGlhbG9nOjpiYWNrZHJvcCB7CisgICAgYmFja2dyb3VuZDogcmdi
YSgwLCAwLCAwLCAwLjEpOworfQorCis6OmJhY2tkcm9wIHsKKyAgICBkaXNwbGF5OiBibG9jazsK
KyAgICBwb3NpdGlvbjogZml4ZWQ7CisgICAgdG9wOiAwOworICAgIGxlZnQ6IDA7CisgICAgcmln
aHQ6IDA7CisgICAgYm90dG9tOiAwOworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9t
L0VsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKaW5kZXggOWI0MDljYTlm
M2Q5OTg3NjVlMjFlZTNlNTcwOWVkMzY5MzgwNDA2MC4uNTgyZGIxMjNiNmQ5NzU3NzRlYTVmYzI0
MmE4MzYzMWM4NDczYmUzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCkBAIC01MTEsNiArNTExLDggQEAg
cHVibGljOgogICAgIGNvbnN0IFJlbmRlclN0eWxlKiBsYXN0U3R5bGVDaGFuZ2VFdmVudFN0eWxl
KFBzZXVkb0lkKSBjb25zdDsKICAgICB2b2lkIHNldExhc3RTdHlsZUNoYW5nZUV2ZW50U3R5bGUo
UHNldWRvSWQsIHN0ZDo6dW5pcXVlX3B0cjxjb25zdCBSZW5kZXJTdHlsZT4mJik7CiAKKyAgICBi
b29sIGlzSW5Ub3BMYXllcigpIGNvbnN0IHsgcmV0dXJuIGRvY3VtZW50KCkudG9wTGF5ZXJFbGVt
ZW50cygpLmNvbnRhaW5zKG1ha2VSZWYoKmNvbnN0X2Nhc3Q8RWxlbWVudCo+KHRoaXMpKSk7IH0K
KwogI2lmIEVOQUJMRShGVUxMU0NSRUVOX0FQSSkKICAgICBib29sIGNvbnRhaW5zRnVsbFNjcmVl
bkVsZW1lbnQoKSBjb25zdCB7IHJldHVybiBoYXNOb2RlRmxhZyhOb2RlRmxhZzo6Q29udGFpbnNG
dWxsU2NyZWVuRWxlbWVudCk7IH0KICAgICB2b2lkIHNldENvbnRhaW5zRnVsbFNjcmVlbkVsZW1l
bnQoYm9vbCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0lu
c3BlY3RvckNTU0FnZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5z
cGVjdG9yQ1NTQWdlbnQuY3BwCmluZGV4IDY1YTgxMzEyOWQ2MzE3MzlhYjA1NjA0MWY5NzUwYmQy
ODg4ZTJjNDguLjNlYzE0ZjY3MWVkODY1NTFjNGNjOWQxZWRiODZjN2FmYTAwY2YyNWUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yQ1NTQWdlbnQu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yQ1NTQWdl
bnQuY3BwCkBAIC00NDksNiArNDQ5LDggQEAgc3RhdGljIHN0ZDo6b3B0aW9uYWw8UHJvdG9jb2w6
OkNTUzo6UHNldWRvSWQ+IHByb3RvY29sVmFsdWVGb3JQc2V1ZG9JZChQc2V1ZG9JZAogICAgICAg
ICByZXR1cm4gUHJvdG9jb2w6OkNTUzo6UHNldWRvSWQ6OkZpcnN0TGV0dGVyOwogICAgIGNhc2Ug
UHNldWRvSWQ6Ok1hcmtlcjoKICAgICAgICAgcmV0dXJuIFByb3RvY29sOjpDU1M6OlBzZXVkb0lk
OjpNYXJrZXI7CisgICAgY2FzZSBQc2V1ZG9JZDo6QmFja2Ryb3A6CisgICAgICAgIHJldHVybiBQ
cm90b2NvbDo6Q1NTOjpQc2V1ZG9JZDo6QmFja2Ryb3A7CiAgICAgY2FzZSBQc2V1ZG9JZDo6QmVm
b3JlOgogICAgICAgICByZXR1cm4gUHJvdG9jb2w6OkNTUzo6UHNldWRvSWQ6OkJlZm9yZTsKICAg
ICBjYXNlIFBzZXVkb0lkOjpBZnRlcjoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJF
bGVtZW50LmNwcAppbmRleCBmODdkMDVmMzk5ZTg0OTA4YjU5OThmNWM5Zjk1NmM5YWQ1Y2MyZjE3
Li5lODBlZDcxZGFlNDFkMzI2ZGIyMDU2NzJjNGViODQ3MTIyNDFiZjYwIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlckVsZW1lbnQuY3BwCkBAIC0yMzc1LDQgKzIzNzUsMTQgQEAg
c3RkOjp1bmlxdWVfcHRyPFJlbmRlclN0eWxlPiBSZW5kZXJFbGVtZW50OjphbmltYXRlZFN0eWxl
KCkKICAgICByZXR1cm4gcmVzdWx0OwogfQogCitSZW5kZXJCbG9ja0Zsb3cqIFJlbmRlckVsZW1l
bnQ6OmJhY2tkcm9wUmVuZGVyZXIoKSBjb25zdAoreworICAgIHJldHVybiBoYXNSYXJlRGF0YSgp
ID8gcmFyZURhdGEoKS5iYWNrZHJvcFJlbmRlcmVyLmdldCgpIDogbnVsbHB0cjsKK30KKwordm9p
ZCBSZW5kZXJFbGVtZW50OjpzZXRCYWNrZHJvcFJlbmRlcmVyKFJlbmRlckJsb2NrRmxvdyYgcmVu
ZGVyZXIpCit7CisgICAgZW5zdXJlUmFyZURhdGEoKS5iYWNrZHJvcFJlbmRlcmVyID0gbWFrZVdl
YWtQdHIocmVuZGVyZXIpOworfQorCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVs
ZW1lbnQuaAppbmRleCAyMzc3YmE5NzJjNGFjOTVjYzhmNzhkZDMyZGRlODE5NDljNDdmZTI1Li4w
YzRhZDQzZTljNGZjMmUyZGQ1Zjc0ZDg1NDYyZTIyOGY5YTQxZGE1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJFbGVtZW50LmgKQEAgLTI1Nyw2ICsyNTcsOSBAQCBwdWJsaWM6CiAg
ICAgdmlydHVhbCB2b2lkIHN1c3BlbmRBbmltYXRpb25zKE1vbm90b25pY1RpbWUgPSBNb25vdG9u
aWNUaW1lKCkpIHsgfQogICAgIHN0ZDo6dW5pcXVlX3B0cjxSZW5kZXJTdHlsZT4gYW5pbWF0ZWRT
dHlsZSgpOwogCisgICAgUmVuZGVyQmxvY2tGbG93KiBiYWNrZHJvcFJlbmRlcmVyKCkgY29uc3Q7
CisgICAgdm9pZCBzZXRCYWNrZHJvcFJlbmRlcmVyKFJlbmRlckJsb2NrRmxvdyYpOworCiBwcm90
ZWN0ZWQ6CiAgICAgZW51bSBCYXNlVHlwZUZsYWcgewogICAgICAgICBSZW5kZXJMYXllck1vZGVs
T2JqZWN0RmxhZyAgPSAxIDw8IDAsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyT2JqZWN0LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0
LmgKaW5kZXggMmZkOTY4NzkwMjJhNmEzYjhhY2MzMTZhZjFlMTUwNGE2MjMyNzRlNy4uNTU2N2U0
ZGMzNTFlNTRmMzgxNTI5Y2E2MDAwY2MxYjk0ODVjYzM0MCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJPYmplY3QuaApAQCAtNTksNiArNTksNyBAQCBjbGFzcyBQb3NpdGlvbjsKIGNs
YXNzIFJlbmRlckJveE1vZGVsT2JqZWN0OwogY2xhc3MgUmVuZGVySW5saW5lOwogY2xhc3MgUmVu
ZGVyQmxvY2s7CitjbGFzcyBSZW5kZXJCbG9ja0Zsb3c7CiBjbGFzcyBSZW5kZXJFbGVtZW50Owog
Y2xhc3MgUmVuZGVyRnJhZ21lbnRlZEZsb3c7CiBjbGFzcyBSZW5kZXJHZW9tZXRyeU1hcDsKQEAg
LTkzOCw2ICs5MzksNyBAQCBwcml2YXRlOgogCiAgICAgICAgIC8vIEZyb20gUmVuZGVyRWxlbWVu
dAogICAgICAgICBzdGQ6OnVuaXF1ZV9wdHI8UmVuZGVyU3R5bGU+IGNhY2hlZEZpcnN0TGluZVN0
eWxlOworICAgICAgICBXZWFrUHRyPFJlbmRlckJsb2NrRmxvdz4gYmFja2Ryb3BSZW5kZXJlcjsK
ICAgICB9OwogICAgIAogICAgIGNvbnN0IFJlbmRlck9iamVjdDo6UmVuZGVyT2JqZWN0UmFyZURh
dGEmIHJhcmVEYXRhKCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcAppbmRleCA0NmE1OTJjYmQ0YjBkZmJi
NzcwMDViMGU4NWRmOTM5NjYxNDM4MmVhLi41ZWQxMDNjNzUyYzAxOTA3MTgzZGU5Mzk1NDU0NjJl
MzkyM2Q4MjNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVu
ZGVyU3R5bGVDb25zdGFudHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHls
ZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5jcHAKQEAgLTg4Nyw2ICs4ODcsNyBAQCBUZXh0U3RyZWFt
JiBvcGVyYXRvcjw8KFRleHRTdHJlYW0mIHRzLCBQc2V1ZG9JZCBwc2V1ZG9JZCkKICAgICBjYXNl
IFBzZXVkb0lkOjpGaXJzdExldHRlcjogdHMgPDwgImZpcnN0LWxldHRlciI7IGJyZWFrOwogICAg
IGNhc2UgUHNldWRvSWQ6OkhpZ2hsaWdodDogdHMgPDwgImhpZ2hsaWdodCI7IGJyZWFrOwogICAg
IGNhc2UgUHNldWRvSWQ6Ok1hcmtlcjogdHMgPDwgIm1hcmtlciI7IGJyZWFrOworICAgIGNhc2Ug
UHNldWRvSWQ6OkJhY2tkcm9wOiB0cyA8PCAiYmFja2Ryb3AiOyBicmVhazsKICAgICBjYXNlIFBz
ZXVkb0lkOjpCZWZvcmU6IHRzIDw8ICJiZWZvcmUiOyBicmVhazsKICAgICBjYXNlIFBzZXVkb0lk
OjpBZnRlcjogdHMgPDwgImFmdGVyIjsgYnJlYWs7CiAgICAgY2FzZSBQc2V1ZG9JZDo6U2VsZWN0
aW9uOiB0cyA8PCAic2VsZWN0aW9uIjsgYnJlYWs7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaCBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5oCmluZGV4IDgzOWJkYzIwYWJm
OTYxMmEzMTcxMWUxYzMwOTBlNTI0YzU3Nzg0MTEuLjczZDRiOWQ1OWFjZmVmYzFlNjNlMWE5NDhl
NmJjY2UwZjEzODcwNjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHls
ZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5oCkBAIC05NSw2ICs5NSw3IEBAIGVudW0gY2xhc3Mg
UHNldWRvSWQgOiB1aW50MTZfdCB7CiAgICAgQmVmb3JlLAogICAgIEFmdGVyLAogICAgIFNlbGVj
dGlvbiwKKyAgICBCYWNrZHJvcCwKICAgICBTY3JvbGxiYXIsCiAKICAgICAvLyBJbnRlcm5hbDoK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVl
QnVpbGRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJl
ZUJ1aWxkZXIuY3BwCmluZGV4IGViNjY4YjRiZDYzODY2MzA5OTRlMjZhZGQyZDFlNjVjODM5NDk5
OWYuLjNkZjlkOGMzZDBlZmJjZjczODdiN2Y5MjMzNGEzYTU5N2VkMzhhZmQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlQnVpbGRlci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRyZWVCdWlsZGVy
LmNwcApAQCAtODA3LDYgKzgwNywxMiBAQCB2b2lkIFJlbmRlclRyZWVCdWlsZGVyOjpkZXN0cm95
QW5kQ2xlYW5VcEFub255bW91c1dyYXBwZXJzKFJlbmRlck9iamVjdCYgcmVuZGVyZQogICAgICAg
ICByZXR1cm47CiAgICAgfQogCisgICAgLy8gQWxzbyBkZXN0cm95IDo6YmFja2Ryb3AgYWxvbmcg
d2l0aCBlbGVtZW50IGlmIHRoZXJlIGlzIG9uZQorICAgIGlmIChpczxSZW5kZXJFbGVtZW50Pihy
ZW5kZXJlclRvRGVzdHJveSkpIHsKKyAgICAgICAgaWYgKGF1dG8gYmFja2Ryb3BSZW5kZXJlciA9
IGRvd25jYXN0PFJlbmRlckVsZW1lbnQ+KHJlbmRlcmVyVG9EZXN0cm95KS5iYWNrZHJvcFJlbmRl
cmVyKCkpCisgICAgICAgICAgICBkZXN0cm95KCpiYWNrZHJvcFJlbmRlcmVyKTsKKyAgICB9CisK
ICAgICBhdXRvIGlzQW5vbnltb3VzQW5kU2FmZVRvRGVsZXRlID0gW10gKGNvbnN0IGF1dG8mIHJl
bmRlcmVyKSB7CiAgICAgICAgIHJldHVybiByZW5kZXJlci5pc0Fub255bW91cygpICYmICFyZW5k
ZXJlci5pc1JlbmRlclZpZXcoKSAmJiAhcmVuZGVyZXIuaXNSZW5kZXJGcmFnbWVudGVkRmxvdygp
OwogICAgIH07CkBAIC04NzUsNiArODgxLDggQEAgdm9pZCBSZW5kZXJUcmVlQnVpbGRlcjo6ZGVz
dHJveUFuZENsZWFuVXBBbm9ueW1vdXNXcmFwcGVycyhSZW5kZXJPYmplY3QmIHJlbmRlcmUKIAog
dm9pZCBSZW5kZXJUcmVlQnVpbGRlcjo6dXBkYXRlQWZ0ZXJEZXNjZW5kYW50cyhSZW5kZXJFbGVt
ZW50JiByZW5kZXJlcikKIHsKKyAgICB1cGRhdGVCYWNrZHJvcFJlbmRlcmVyKHJlbmRlcmVyKTsK
KwogICAgIGlmIChpczxSZW5kZXJCbG9jaz4ocmVuZGVyZXIpKQogICAgICAgICBmaXJzdExldHRl
ckJ1aWxkZXIoKS51cGRhdGVBZnRlckRlc2NlbmRhbnRzKGRvd25jYXN0PFJlbmRlckJsb2NrPihy
ZW5kZXJlcikpOwogICAgIGlmIChpczxSZW5kZXJMaXN0SXRlbT4ocmVuZGVyZXIpKQpAQCAtODgz
LDYgKzg5MSw0NyBAQCB2b2lkIFJlbmRlclRyZWVCdWlsZGVyOjp1cGRhdGVBZnRlckRlc2NlbmRh
bnRzKFJlbmRlckVsZW1lbnQmIHJlbmRlcmVyKQogICAgICAgICBtdWx0aUNvbHVtbkJ1aWxkZXIo
KS51cGRhdGVBZnRlckRlc2NlbmRhbnRzKGRvd25jYXN0PFJlbmRlckJsb2NrRmxvdz4ocmVuZGVy
ZXIpKTsKIH0KIAordm9pZCBSZW5kZXJUcmVlQnVpbGRlcjo6dXBkYXRlQmFja2Ryb3BSZW5kZXJl
cihSZW5kZXJFbGVtZW50JiByZW5kZXJlcikKK3sKKyAgICAvLyBEZXN0cm95IDo6YmFja2Ryb3Ag
aWYgbmV3IGVsZW1lbnQgbm8gbG9uZ2VyIGlzIGluIHRvcCBsYXllcgorICAgIGlmIChyZW5kZXJl
ci5lbGVtZW50KCkgJiYgIXJlbmRlcmVyLmVsZW1lbnQoKS0+aXNJblRvcExheWVyKCkpIHsKKyAg
ICAgICAgaWYgKGF1dG8qIGJhY2tkcm9wUmVuZGVyZXIgPSByZW5kZXJlci5iYWNrZHJvcFJlbmRl
cmVyKCkpCisgICAgICAgICAgICBkZXN0cm95KCpiYWNrZHJvcFJlbmRlcmVyKTsKKyAgICAgICAg
cmV0dXJuOworICAgIH0KKworICAgIC8vIFVwZGF0ZSA6OmJhY2tkcm9wIHJlbmRlcmVyIHN0eWxl
IG9yIGNyZWF0ZSByZW5kZXJlcgorICAgIGF1dG8gc3R5bGUgPSByZW5kZXJlci5nZXRDYWNoZWRQ
c2V1ZG9TdHlsZShQc2V1ZG9JZDo6QmFja2Ryb3AsIG51bGxwdHIpOworICAgIGlmICghc3R5bGUg
fHwgc3R5bGUtPmRpc3BsYXkoKSA9PSBEaXNwbGF5VHlwZTo6Tm9uZSkKKyAgICAgICAgcmV0dXJu
OworCisgICAgYXV0byBuZXdTdHlsZSA9IFJlbmRlclN0eWxlOjpjbG9uZSgqc3R5bGUpOworICAg
IFJlbmRlclB0cjxSZW5kZXJCbG9ja0Zsb3c+IG5ld0JhY2tkcm9wUmVuZGVyZXI7CisgICAgYXV0
byogYmFja2Ryb3BSZW5kZXJlciA9IHJlbmRlcmVyLmJhY2tkcm9wUmVuZGVyZXIoKTsKKyAgICBp
ZiAoYmFja2Ryb3BSZW5kZXJlcikKKyAgICAgICAgYmFja2Ryb3BSZW5kZXJlci0+c2V0U3R5bGUo
V1RGTW92ZShuZXdTdHlsZSkpOworICAgIGVsc2UgeworICAgICAgICBuZXdCYWNrZHJvcFJlbmRl
cmVyID0gV2ViQ29yZTo6Y3JlYXRlUmVuZGVyZXI8UmVuZGVyQmxvY2tGbG93PihyZW5kZXJlci5k
b2N1bWVudCgpLCBXVEZNb3ZlKG5ld1N0eWxlKSk7CisgICAgICAgIG5ld0JhY2tkcm9wUmVuZGVy
ZXItPmluaXRpYWxpemVTdHlsZSgpOworICAgICAgICBiYWNrZHJvcFJlbmRlcmVyID0gbmV3QmFj
a2Ryb3BSZW5kZXJlci5nZXQoKTsKKyAgICAgICAgcmVuZGVyZXIuc2V0QmFja2Ryb3BSZW5kZXJl
cigqYmFja2Ryb3BSZW5kZXJlcik7CisgICAgfQorCisgICAgLy8gVXBkYXRlIG9yIGF0dGFjaCB0
byByZW5kZXJlciBwYXJlbnQKKyAgICBSZW5kZXJFbGVtZW50KiBjdXJyZW50UGFyZW50ID0gYmFj
a2Ryb3BSZW5kZXJlci0+cGFyZW50KCk7CisgICAgUmVuZGVyRWxlbWVudCogbmV3UGFyZW50ID0g
cmVuZGVyZXIucGFyZW50KCk7CisKKyAgICBBU1NFUlQobmV3UGFyZW50LCAiU2hvdWxkIGhhdmUg
bmV3IHBhcmVudCIpOworCisgICAgaWYgKG5ld1BhcmVudCA9PSBjdXJyZW50UGFyZW50KQorICAg
ICAgICByZXR1cm47CisKKyAgICBpZiAoY3VycmVudFBhcmVudCkKKyAgICAgICAgYXR0YWNoKCpu
ZXdQYXJlbnQsIGRldGFjaCgqY3VycmVudFBhcmVudCwgKmJhY2tkcm9wUmVuZGVyZXIsIFJlbmRl
clRyZWVCdWlsZGVyOjpDYW5Db2xsYXBzZUFub255bW91c0Jsb2NrOjpObyksICZyZW5kZXJlcik7
CisgICAgZWxzZQorICAgICAgICBhdHRhY2goKm5ld1BhcmVudCwgV1RGTW92ZShuZXdCYWNrZHJv
cFJlbmRlcmVyKSwgJnJlbmRlcmVyKTsKK30KKwogUmVuZGVyUHRyPFJlbmRlck9iamVjdD4gUmVu
ZGVyVHJlZUJ1aWxkZXI6OmRldGFjaEZyb21SZW5kZXJHcmlkKFJlbmRlckdyaWQmIHBhcmVudCwg
UmVuZGVyT2JqZWN0JiBjaGlsZCkKIHsKICAgICBhdXRvIHRha2VuQ2hpbGQgPSBibG9ja0J1aWxk
ZXIoKS5kZXRhY2gocGFyZW50LCBjaGlsZCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlQnVpbGRlci5oCmluZGV4IGIxMjc5ODZiNTQ2YmMy
MWRjZmUwNWI3ZTBkNGE1Zjg0ZTBiZTFiNjAuLjM4YjdlNzJmNjJjMTliMWEyMTkwNzk4NzViMjQy
ODI4NDA0YWIxNzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGlu
Zy9SZW5kZXJUcmVlQnVpbGRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRh
dGluZy9SZW5kZXJUcmVlQnVpbGRlci5oCkBAIC01NSw2ICs1NSw3IEBAIHB1YmxpYzoKICAgICB2
b2lkIG1vdmUoUmVuZGVyQm94TW9kZWxPYmplY3QmIGZyb20sIFJlbmRlckJveE1vZGVsT2JqZWN0
JiB0bywgUmVuZGVyT2JqZWN0JiBjaGlsZCwgTm9ybWFsaXplQWZ0ZXJJbnNlcnRpb24pOwogCiAg
ICAgdm9pZCB1cGRhdGVBZnRlckRlc2NlbmRhbnRzKFJlbmRlckVsZW1lbnQmKTsKKyAgICB2b2lk
IHVwZGF0ZUJhY2tkcm9wUmVuZGVyZXIoUmVuZGVyRWxlbWVudCYpOwogICAgIHZvaWQgZGVzdHJv
eUFuZENsZWFuVXBBbm9ueW1vdXNXcmFwcGVycyhSZW5kZXJPYmplY3QmIGNoaWxkKTsKICAgICB2
b2lkIG5vcm1hbGl6ZVRyZWVBZnRlclN0eWxlQ2hhbmdlKFJlbmRlckVsZW1lbnQmLCBSZW5kZXJT
dHlsZSYgb2xkU3R5bGUpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNl
ckludGVyZmFjZS9Db250cm9sbGVycy9DU1NNYW5hZ2VyLmpzIGIvU291cmNlL1dlYkluc3BlY3Rv
clVJL1VzZXJJbnRlcmZhY2UvQ29udHJvbGxlcnMvQ1NTTWFuYWdlci5qcwppbmRleCAyZjYzYmJj
NDk4OWI1YTE1ZTE0YTU1MWVjZWNkOTdiN2UyNTI1M2E1Li5hZDA2MWJkMTY1Njc5YmY3Mzk0ZmM4
N2RlOWVmY2M5NjgzNGY5ZTc5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNl
ckludGVyZmFjZS9Db250cm9sbGVycy9DU1NNYW5hZ2VyLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNw
ZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0NvbnRyb2xsZXJzL0NTU01hbmFnZXIuanMKQEAgLTE1NSw2
ICsxNTUsOCBAQCBXSS5DU1NNYW5hZ2VyID0gY2xhc3MgQ1NTTWFuYWdlciBleHRlbmRzIFdJLk9i
amVjdAogICAgICAgICAgICAgcmV0dXJuIFdJLnVubG9jYWxpemVkU3RyaW5nKCI6OmFmdGVyIik7
CiAgICAgICAgIGNhc2UgQ1NTTWFuYWdlci5Qc2V1ZG9TZWxlY3Rvck5hbWVzLlNlbGVjdGlvbjoK
ICAgICAgICAgICAgIHJldHVybiBXSS51bmxvY2FsaXplZFN0cmluZygiOjpzZWxlY3Rpb24iKTsK
KyAgICAgICAgY2FzZSBDU1NNYW5hZ2VyLlBzZXVkb1NlbGVjdG9yTmFtZXMuQmFja2Ryb3A6Cisg
ICAgICAgICAgICByZXR1cm4gV0kudW5sb2NhbGl6ZWRTdHJpbmcoIjo6YmFja2Ryb3AiKTsKICAg
ICAgICAgY2FzZSBDU1NNYW5hZ2VyLlBzZXVkb1NlbGVjdG9yTmFtZXMuU2Nyb2xsYmFyOgogICAg
ICAgICAgICAgcmV0dXJuIFdJLnVubG9jYWxpemVkU3RyaW5nKCI6OnNjcm9sbGJhciIpOwogICAg
ICAgICBjYXNlIENTU01hbmFnZXIuUHNldWRvU2VsZWN0b3JOYW1lcy5TY3JvbGxiYXJUaHVtYjoK
QEAgLTY4NCw2ICs2ODYsNyBAQCBXSS5DU1NNYW5hZ2VyLkFwcGVhcmFuY2UgPSB7CiBXSS5DU1NN
YW5hZ2VyLlBzZXVkb1NlbGVjdG9yTmFtZXMgPSB7CiAgICAgQWZ0ZXI6ICJhZnRlciIsCiAgICAg
QmVmb3JlOiAiYmVmb3JlIiwKKyAgICBCYWNrZHJvcDogImJhY2tkcm9wIiwKICAgICBGaXJzdExl
dHRlcjogImZpcnN0LWxldHRlciIsCiAgICAgRmlyc3RMaW5lOiAiZmlyc3QtbGluZSIsCiAgICAg
SGlnaGxpZ2h0OiAiaGlnaGxpZ2h0IiwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxv
ZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA0YzA2M2FlM2U4ZDAyN2IyZmY4ZjVhYTYz
ZWU1ZGJiYTkzYmYyNDQ5Li5jYzFkZDJjYTY3NDZiNjI2ZDIxYmYyM2EzNTU5MTE0MDVjNTliZDQx
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjEtMDgtMTEgIFRpbSBOZ3V5ZW4gIDxudGltQGFw
cGxlLmNvbT4KKworICAgICAgICBJbXBsZW1lbnQgOjpiYWNrZHJvcCBwc2V1ZG8gZWxlbWVudAor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI3ODAxCisK
KyAgICAgICAgVGhpcyBhZGRzIFVBIHN0eWxlcywgUmVuZGVyVHJlZUJ1aWxkZXIgc3VwcG9ydCBh
bmQgV2ViSW5zcGVjdG9yIHN1cHBvcnQgZm9yIDo6YmFja2Ryb3AuCisgICAgICAgIFNvbWUgaW1w
b3J0ZWQgYmxpbmsgdGVzdHMgbm93IHN0YXJ0IHBhc3NpbmcsIHNvbWUgc3RpbGwgbmVlZCBwcm9w
ZXIgdG9wIGxheWVyIHN1cHBvcnQuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgKiBUZXN0RXhwZWN0YXRpb25zOgorCiAyMDIxLTA4LTA4ICBXZW5zb24g
SHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgogCiAgICAgICAgIGNhcmV0LWNvbG9yIGRv
ZXMgbm90IHdvcmsgb24gZmlyc3QgY2xpY2sgaW4gaW9zCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwppbmRleCA1
ODNjM2ZiNjI2ZTJmMzM5Mjg3NGRlNjllZTQxYWRiYzJhZjU0YjNiLi45YjYyNTE5MDRmNmE4Y2Yz
YWExNjc5NWE4ZmZiOWZjMzkzMDMzODg2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9UZXN0RXhw
ZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTIzODcsOCAr
MjM4Nyw2IEBAIHdlYmtpdC5vcmcvYi8yMjc4MDEgaW1wb3J0ZWQvYmxpbmsvZGlhbG9nL2JhY2tk
cm9wLXN0YWNraW5nLW9yZGVyLmh0bWwgWyBJbWFnZU9uCiAKICMgVG9wIGxheWVyIHRlc3RzCiB3
ZWJraXQub3JnL2IvODQ3OTYgaW1wb3J0ZWQvYmxpbmsvZGlhbG9nL2RvbnQtc2hhcmUtc3R5bGUt
dG8tdG9wLWxheWVyLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi84NDc5
NiBpbXBvcnRlZC9ibGluay9kaWFsb2cvbW9kYWwtZGlhbG9nLWJhY2tkcm9wLmh0bWwgWyBJbWFn
ZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi84NDc5NiBpbXBvcnRlZC9ibGluay9kaWFsb2cv
bW9kYWwtZGlhbG9nLWdlbmVyYXRlZC1jb250ZW50Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0K
IHdlYmtpdC5vcmcvYi84NDc5NiBpbXBvcnRlZC9ibGluay9kaWFsb2cvbW9kYWwtZGlhbG9nLWlu
LXJlcGxhY2VkLXJlbmRlcmVyLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcv
Yi84NDc5NiBpbXBvcnRlZC9ibGluay9kaWFsb2cvbW9kYWwtZGlhbG9nLWluLXRhYmxlLWNvbHVt
bi5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvODQ3OTYgaW1wb3J0ZWQv
YmxpbmsvZGlhbG9nL3JlbW92ZWQtZWxlbWVudC1pcy1yZW1vdmVkLWZyb20tdG9wLWxheWVyLmh0
bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>435369</attachid>
            <date>2021-08-11 12:41:48 -0700</date>
            <delta_ts>2021-08-12 03:33:11 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227801-20210811214147.patch</filename>
            <type>text/plain</type>
            <size>20059</size>
            <attacher name="Tim Nguyen (:ntim)">ntim</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgwOTIzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAx
ZDM4N2Q3MjBmMzEyNjFlMjRkMmU5ZTRmYTM5ZTBhOGIwMDhjMmU3Li5mZjA1MGVlOGVmZDllZDQ5
OGYxMWE2NDU5YjdjZjc1YmFjMzg1M2FhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNSBAQAorMjAyMS0wOC0xMSAgVGltIE5ndXllbiAgPG50aW1AYXBwbGUuY29tPgorCisg
ICAgICAgIEltcGxlbWVudCA6OmJhY2tkcm9wIHBzZXVkbyBlbGVtZW50CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjc4MDEKKworICAgICAgICBUaGlz
IGFkZHMgVUEgc3R5bGVzLCBSZW5kZXJUcmVlQnVpbGRlciBzdXBwb3J0IGFuZCBXZWJJbnNwZWN0
b3Igc3VwcG9ydCBmb3IgOjpiYWNrZHJvcC4KKyAgICAgICAgU29tZSBpbXBvcnRlZCBibGluayB0
ZXN0cyBub3cgc3RhcnQgcGFzc2luZywgc29tZSBzdGlsbCBuZWVkIHByb3BlciB0b3AgbGF5ZXIg
c3VwcG9ydC4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIGluc3BlY3Rvci9wcm90b2NvbC9DU1MuanNvbjoKKwogMjAyMS0wOC0xMSAgWXVzdWtlIFN1
enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgogCiAgICAgICAgIFdURkNyYXNoIGluIEpTQzo6TGV4
ZXI8Y2hhcjE2X3Q+OjphcHBlbmQ4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjUwMTU5NjEzNzExMDU0MWRlYmQ3
MDY5YWEzZmYwNjVhNGFmZjM4NC4uMTU3M2NjMWM4NTlmMjFjODg2MDliMGExZDczMDMxYTgxOWRj
NDVhMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM4IEBACisyMDIxLTA4LTExICBUaW0gTmd1eWVu
ICA8bnRpbUBhcHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IDo6YmFja2Ryb3AgcHNldWRv
IGVsZW1lbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIyNzgwMQorCisgICAgICAgIFRoaXMgYWRkcyBVQSBzdHlsZXMsIFJlbmRlclRyZWVCdWlsZGVy
IHN1cHBvcnQgYW5kIFdlYkluc3BlY3RvciBzdXBwb3J0IGZvciA6OmJhY2tkcm9wLgorICAgICAg
ICBTb21lIGltcG9ydGVkIGJsaW5rIHRlc3RzIG5vdyBzdGFydCBwYXNzaW5nLCBzb21lIHN0aWxs
IG5lZWQgcHJvcGVyIHRvcCBsYXllciBzdXBwb3J0LgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgICogY3NzL0NTU1NlbGVjdG9yLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkNTU1NlbGVjdG9yOjpwc2V1ZG9JZCk6CisgICAgICAgICogY3NzL0NTU1NlbGVj
dG9yLmg6CisgICAgICAgICogY3NzL1NlbGVjdG9yUHNldWRvRWxlbWVudFR5cGVNYXAuaW46Cisg
ICAgICAgICogY3NzL2RpYWxvZy5jc3M6CisgICAgICAgIChkaWFsb2c6OmJhY2tkcm9wKToKKyAg
ICAgICAgKDo6YmFja2Ryb3ApOgorICAgICAgICAqIGRvbS9FbGVtZW50Lmg6CisgICAgICAgIChX
ZWJDb3JlOjpFbGVtZW50Ojppc0luVG9wTGF5ZXIgY29uc3QpOgorICAgICAgICAqIGluc3BlY3Rv
ci9hZ2VudHMvSW5zcGVjdG9yQ1NTQWdlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6cHJvdG9j
b2xWYWx1ZUZvclBzZXVkb0lkKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJFbGVtZW50OjpiYWNrZHJvcFJlbmRlcmVyIGNv
bnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckVsZW1lbnQ6OnNldEJhY2tkcm9wUmVuZGVy
ZXIpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJFbGVtZW50Lmg6CisgICAgICAgICogcmVu
ZGVyaW5nL1JlbmRlck9iamVjdC5oOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9SZW5kZXJT
dHlsZUNvbnN0YW50cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpvcGVyYXRvcjw8KToKKyAgICAg
ICAgKiByZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaDoKKyAgICAgICAgKiBy
ZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6UmVuZGVyVHJlZUJ1aWxkZXI6OmRlc3Ryb3lBbmRDbGVhblVwQW5vbnltb3VzV3JhcHBlcnMp
OgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVHJlZUJ1aWxkZXI6OnVwZGF0ZUFmdGVyRGVzY2Vu
ZGFudHMpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVHJlZUJ1aWxkZXI6OnVwZGF0ZUJhY2tk
cm9wUmVuZGVyZXIpOgorICAgICAgICAqIHJlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlQnVp
bGRlci5oOgorCiAyMDIxLTA4LTExICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4K
IAogICAgICAgICBNZWRpYSBlbGVtZW50IGlzIG5vdCBhbHdheXMgYXV0b3BsYXlpbmcgd2hlbiBn
b2luZyBmcm9tIGJhY2tncm91bmQgdG8gZm9yZWdyb3VuZCBpZiBpdCBpcyBpbml0aWFsbHkgbm90
IGluIHZpZXdwb3J0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvQ2hhbmdlTG9n
IGIvU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZwppbmRleCAxYmUzYzlmNTAwNGMyYzNj
M2M3NjkzNjY5MWExNGI0NjEzNTMxZWJiLi44OWE5N2ZiMzkxNGEzZDVhNjZlYThjZGEwMmI4ZjBi
YzY2MTY2NTNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvQ2hhbmdlTG9nCisr
KyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAy
MS0wOC0xMSAgVGltIE5ndXllbiAgPG50aW1AYXBwbGUuY29tPgorCisgICAgICAgIEltcGxlbWVu
dCA6OmJhY2tkcm9wIHBzZXVkbyBlbGVtZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMjc4MDEKKworICAgICAgICBUaGlzIGFkZHMgVUEgc3R5bGVz
LCBSZW5kZXJUcmVlQnVpbGRlciBzdXBwb3J0IGFuZCBXZWJJbnNwZWN0b3Igc3VwcG9ydCBmb3Ig
OjpiYWNrZHJvcC4KKyAgICAgICAgU29tZSBpbXBvcnRlZCBibGluayB0ZXN0cyBub3cgc3RhcnQg
cGFzc2luZywgc29tZSBzdGlsbCBuZWVkIHByb3BlciB0b3AgbGF5ZXIgc3VwcG9ydC4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFVzZXJJbnRlcmZh
Y2UvQ29udHJvbGxlcnMvQ1NTTWFuYWdlci5qczoKKyAgICAgICAgKFdJLkNTU01hbmFnZXIuZGlz
cGxheU5hbWVGb3JQc2V1ZG9JZCk6CisKIDIwMjEtMDgtMDMgIFNvbmlhIFNpbmdsYSAgPHNvbmlh
c2luZ2xhLjE4MTJAZ21haWwuY29tPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IEFkZCBzdGFu
ZGFyZCBsb2dpY2FsIHByb3BlcnRpZXMgdG8gQ1NTIGtleXdvcmQgY29tcGxldGlvbgpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9DU1MuanNvbiBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvQ1NTLmpzb24KaW5kZXgg
YzllYjU3NmJkN2MyNTkzNGFhNTljYmYzMmUxY2NjZjkzMzkxN2NlOC4uNGM2MmRlOTBhMTUwYzYy
M2RjNWEwNzQ1MmFhNGI0Mzc5YjI4NDZmNCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2luc3BlY3Rvci9wcm90b2NvbC9DU1MuanNvbgorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvaW5zcGVjdG9yL3Byb3RvY29sL0NTUy5qc29uCkBAIC00Myw2ICs0Myw3IEBACiAgICAgICAg
ICAgICAgICAgImJlZm9yZSIsCiAgICAgICAgICAgICAgICAgImFmdGVyIiwKICAgICAgICAgICAg
ICAgICAic2VsZWN0aW9uIiwKKyAgICAgICAgICAgICAgICAiYmFja2Ryb3AiLAogICAgICAgICAg
ICAgICAgICJzY3JvbGxiYXIiLAogICAgICAgICAgICAgICAgICJzY3JvbGxiYXItdGh1bWIiLAog
ICAgICAgICAgICAgICAgICJzY3JvbGxiYXItYnV0dG9uIiwKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NTZWxlY3Rvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2VsZWN0
b3IuY3BwCmluZGV4IGMxNWM2MjkyZWY4YjUyMjQyMTkxZWJjNGM0MTUwNTJlNWUyMjRhNGEuLjY4
NTBlODRmOGJmMGM1NDgxMTc0NjEyNTA2OGUwMDM4MDJlOTJkNTkgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NTZWxlY3Rvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NT
U1NlbGVjdG9yLmNwcApAQCAtMjMyLDYgKzIzMiw4IEBAIFBzZXVkb0lkIENTU1NlbGVjdG9yOjpw
c2V1ZG9JZChQc2V1ZG9FbGVtZW50VHlwZSB0eXBlKQogICAgICAgICByZXR1cm4gUHNldWRvSWQ6
OkhpZ2hsaWdodDsKICAgICBjYXNlIFBzZXVkb0VsZW1lbnRNYXJrZXI6CiAgICAgICAgIHJldHVy
biBQc2V1ZG9JZDo6TWFya2VyOworICAgIGNhc2UgUHNldWRvRWxlbWVudEJhY2tkcm9wOgorICAg
ICAgICByZXR1cm4gUHNldWRvSWQ6OkJhY2tkcm9wOwogICAgIGNhc2UgUHNldWRvRWxlbWVudEJl
Zm9yZToKICAgICAgICAgcmV0dXJuIFBzZXVkb0lkOjpCZWZvcmU7CiAgICAgY2FzZSBQc2V1ZG9F
bGVtZW50QWZ0ZXI6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2VsZWN0b3Iu
aCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWxlY3Rvci5oCmluZGV4IDViNGI5ZjE1ZjMzNGQy
NGIyY2IyYzFiYmUwOTY0ZDBmN2RlODBhMDMuLmJjODNhZmQ5MTc0MGExMTIwZjMxZDg0Njc5Yzlk
MTI2YzdjYzFmOTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWxlY3Rvci5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWxlY3Rvci5oCkBAIC0xODAsNiArMTgwLDcg
QEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBlbnVtIFBzZXVkb0VsZW1lbnRUeXBlIHsK
ICAgICAgICAgICAgIFBzZXVkb0VsZW1lbnRVbmtub3duID0gMCwKICAgICAgICAgICAgIFBzZXVk
b0VsZW1lbnRBZnRlciwKKyAgICAgICAgICAgIFBzZXVkb0VsZW1lbnRCYWNrZHJvcCwKICAgICAg
ICAgICAgIFBzZXVkb0VsZW1lbnRCZWZvcmUsCiAjaWYgRU5BQkxFKFZJREVPKQogICAgICAgICAg
ICAgUHNldWRvRWxlbWVudEN1ZSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TZWxl
Y3RvclBzZXVkb0VsZW1lbnRUeXBlTWFwLmluIGIvU291cmNlL1dlYkNvcmUvY3NzL1NlbGVjdG9y
UHNldWRvRWxlbWVudFR5cGVNYXAuaW4KaW5kZXggMGI1ZWZjNjY4NGNiNTZmZWVlMDU5MmU3M2Y4
NmM2MmUwYjJjMmNlMi4uZTFlNTE5NDhmZTIyNzYzYTE3ZGUxODg5NGNkNDc5OGE5NzBhMjA0MSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1NlbGVjdG9yUHNldWRvRWxlbWVudFR5cGVN
YXAuaW4KKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1NlbGVjdG9yUHNldWRvRWxlbWVudFR5cGVN
YXAuaW4KQEAgLTEsNCArMSw1IEBACiBhZnRlcgorYmFja2Ryb3AKIGJlZm9yZQogI2lmIEVOQUJM
RShWSURFTykKIGN1ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL2RpYWxvZy5jc3Mg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvZGlhbG9nLmNzcwppbmRleCBiNjFkYzlkNzZmMjBiYzA0YzQw
NDY1NmIxMmM0YzhhZGFjYjkwOTY2Li4xZTdlNWExNTIwZjEzMmI2OTA0NmQ5NGUyZTJhMWRmMzA0
NTNiMDVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvZGlhbG9nLmNzcworKysgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvZGlhbG9nLmNzcwpAQCAtMjQsMyArMjQsMTYgQEAgZGlhbG9nOi1p
bnRlcm5hbC1tb2RhbC1kaWFsb2cgewogICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gNnB4IC0g
MmVtKTsKICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSA2cHggLSAyZW0pOwogfQorCitkaWFs
b2c6OmJhY2tkcm9wIHsKKyAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7Cit9CisK
Kzo6YmFja2Ryb3AgeworICAgIGRpc3BsYXk6IGJsb2NrOworICAgIHBvc2l0aW9uOiBmaXhlZDsK
KyAgICB0b3A6IDA7CisgICAgbGVmdDogMDsKKyAgICByaWdodDogMDsKKyAgICBib3R0b206IDA7
Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oIGIvU291cmNlL1dl
YkNvcmUvZG9tL0VsZW1lbnQuaAppbmRleCA5YjQwOWNhOWYzZDk5ODc2NWUyMWVlM2U1NzA5ZWQz
NjkzODA0MDYwLi41ODJkYjEyM2I2ZDk3NTc3NGVhNWZjMjQyYTgzNjMxYzg0NzNiZTNlIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2RvbS9FbGVtZW50LmgKQEAgLTUxMSw2ICs1MTEsOCBAQCBwdWJsaWM6CiAgICAgY29uc3QgUmVu
ZGVyU3R5bGUqIGxhc3RTdHlsZUNoYW5nZUV2ZW50U3R5bGUoUHNldWRvSWQpIGNvbnN0OwogICAg
IHZvaWQgc2V0TGFzdFN0eWxlQ2hhbmdlRXZlbnRTdHlsZShQc2V1ZG9JZCwgc3RkOjp1bmlxdWVf
cHRyPGNvbnN0IFJlbmRlclN0eWxlPiYmKTsKIAorICAgIGJvb2wgaXNJblRvcExheWVyKCkgY29u
c3QgeyByZXR1cm4gZG9jdW1lbnQoKS50b3BMYXllckVsZW1lbnRzKCkuY29udGFpbnMobWFrZVJl
ZigqY29uc3RfY2FzdDxFbGVtZW50Kj4odGhpcykpKTsgfQorCiAjaWYgRU5BQkxFKEZVTExTQ1JF
RU5fQVBJKQogICAgIGJvb2wgY29udGFpbnNGdWxsU2NyZWVuRWxlbWVudCgpIGNvbnN0IHsgcmV0
dXJuIGhhc05vZGVGbGFnKE5vZGVGbGFnOjpDb250YWluc0Z1bGxTY3JlZW5FbGVtZW50KTsgfQog
ICAgIHZvaWQgc2V0Q29udGFpbnNGdWxsU2NyZWVuRWxlbWVudChib29sKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yQ1NTQWdlbnQuY3BwIGIv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JDU1NBZ2VudC5jcHAKaW5k
ZXggNjVhODEzMTI5ZDYzMTczOWFiMDU2MDQxZjk3NTBiZDI4ODhlMmM0OC4uM2VjMTRmNjcxZWQ4
NjU1MWM0Y2M5ZDFlZGI4NmM3YWZhMDBjZjI1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JDU1NBZ2VudC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JDU1NBZ2VudC5jcHAKQEAgLTQ0OSw2ICs0NDks
OCBAQCBzdGF0aWMgc3RkOjpvcHRpb25hbDxQcm90b2NvbDo6Q1NTOjpQc2V1ZG9JZD4gcHJvdG9j
b2xWYWx1ZUZvclBzZXVkb0lkKFBzZXVkb0lkCiAgICAgICAgIHJldHVybiBQcm90b2NvbDo6Q1NT
OjpQc2V1ZG9JZDo6Rmlyc3RMZXR0ZXI7CiAgICAgY2FzZSBQc2V1ZG9JZDo6TWFya2VyOgogICAg
ICAgICByZXR1cm4gUHJvdG9jb2w6OkNTUzo6UHNldWRvSWQ6Ok1hcmtlcjsKKyAgICBjYXNlIFBz
ZXVkb0lkOjpCYWNrZHJvcDoKKyAgICAgICAgcmV0dXJuIFByb3RvY29sOjpDU1M6OlBzZXVkb0lk
OjpCYWNrZHJvcDsKICAgICBjYXNlIFBzZXVkb0lkOjpCZWZvcmU6CiAgICAgICAgIHJldHVybiBQ
cm90b2NvbDo6Q1NTOjpQc2V1ZG9JZDo6QmVmb3JlOwogICAgIGNhc2UgUHNldWRvSWQ6OkFmdGVy
OgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVsZW1lbnQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVsZW1lbnQuY3BwCmluZGV4IGY4N2Qw
NWYzOTllODQ5MDhiNTk5OGY1YzlmOTU2YzlhZDVjYzJmMTcuLmU4MGVkNzFkYWU0MWQzMjZkYjIw
NTY3MmM0ZWI4NDcxMjI0MWJmNjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
RWxlbWVudC5jcHAKQEAgLTIzNzUsNCArMjM3NSwxNCBAQCBzdGQ6OnVuaXF1ZV9wdHI8UmVuZGVy
U3R5bGU+IFJlbmRlckVsZW1lbnQ6OmFuaW1hdGVkU3R5bGUoKQogICAgIHJldHVybiByZXN1bHQ7
CiB9CiAKK1JlbmRlckJsb2NrRmxvdyogUmVuZGVyRWxlbWVudDo6YmFja2Ryb3BSZW5kZXJlcigp
IGNvbnN0Cit7CisgICAgcmV0dXJuIGhhc1JhcmVEYXRhKCkgPyByYXJlRGF0YSgpLmJhY2tkcm9w
UmVuZGVyZXIuZ2V0KCkgOiBudWxscHRyOworfQorCit2b2lkIFJlbmRlckVsZW1lbnQ6OnNldEJh
Y2tkcm9wUmVuZGVyZXIoUmVuZGVyQmxvY2tGbG93JiByZW5kZXJlcikKK3sKKyAgICBlbnN1cmVS
YXJlRGF0YSgpLmJhY2tkcm9wUmVuZGVyZXIgPSBtYWtlV2Vha1B0cihyZW5kZXJlcik7Cit9CisK
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbGVtZW50Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5oCmluZGV4IDIzNzdiYTk3
MmM0YWM5NWNjOGY3OGRkMzJkZGU4MTk0OWM0N2ZlMjUuLjBjNGFkNDNlOWM0ZmMyZTJkZDVmNzRk
ODU0NjJlMjI4ZjlhNDFkYTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVsZW1l
bnQuaApAQCAtMjU3LDYgKzI1Nyw5IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgc3VzcGVu
ZEFuaW1hdGlvbnMoTW9ub3RvbmljVGltZSA9IE1vbm90b25pY1RpbWUoKSkgeyB9CiAgICAgc3Rk
Ojp1bmlxdWVfcHRyPFJlbmRlclN0eWxlPiBhbmltYXRlZFN0eWxlKCk7CiAKKyAgICBSZW5kZXJC
bG9ja0Zsb3cqIGJhY2tkcm9wUmVuZGVyZXIoKSBjb25zdDsKKyAgICB2b2lkIHNldEJhY2tkcm9w
UmVuZGVyZXIoUmVuZGVyQmxvY2tGbG93Jik7CisKIHByb3RlY3RlZDoKICAgICBlbnVtIEJhc2VU
eXBlRmxhZyB7CiAgICAgICAgIFJlbmRlckxheWVyTW9kZWxPYmplY3RGbGFnICA9IDEgPDwgMCwK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuaCBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuaAppbmRleCAyZmQ5Njg3OTAyMmE2
YTNiOGFjYzMxNmFmMWUxNTA0YTYyMzI3NGU3Li41NTY3ZTRkYzM1MWU1NGYzODE1MjljYTYwMDBj
YzFiOTQ4NWNjMzQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
T2JqZWN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oCkBA
IC01OSw2ICs1OSw3IEBAIGNsYXNzIFBvc2l0aW9uOwogY2xhc3MgUmVuZGVyQm94TW9kZWxPYmpl
Y3Q7CiBjbGFzcyBSZW5kZXJJbmxpbmU7CiBjbGFzcyBSZW5kZXJCbG9jazsKK2NsYXNzIFJlbmRl
ckJsb2NrRmxvdzsKIGNsYXNzIFJlbmRlckVsZW1lbnQ7CiBjbGFzcyBSZW5kZXJGcmFnbWVudGVk
RmxvdzsKIGNsYXNzIFJlbmRlckdlb21ldHJ5TWFwOwpAQCAtOTM4LDYgKzkzOSw3IEBAIHByaXZh
dGU6CiAKICAgICAgICAgLy8gRnJvbSBSZW5kZXJFbGVtZW50CiAgICAgICAgIHN0ZDo6dW5pcXVl
X3B0cjxSZW5kZXJTdHlsZT4gY2FjaGVkRmlyc3RMaW5lU3R5bGU7CisgICAgICAgIFdlYWtQdHI8
UmVuZGVyQmxvY2tGbG93PiBiYWNrZHJvcFJlbmRlcmVyOwogICAgIH07CiAgICAgCiAgICAgY29u
c3QgUmVuZGVyT2JqZWN0OjpSZW5kZXJPYmplY3RSYXJlRGF0YSYgcmFyZURhdGEoKSBjb25zdDsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNv
bnN0YW50cy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVD
b25zdGFudHMuY3BwCmluZGV4IDQ2YTU5MmNiZDRiMGRmYmI3NzAwNWIwZTg1ZGY5Mzk2NjE0Mzgy
ZWEuLjVlZDEwM2M3NTJjMDE5MDcxODNkZTkzOTU0NTQ2MmUzOTIzZDgyM2UgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRz
LmNwcApAQCAtODg3LDYgKzg4Nyw3IEBAIFRleHRTdHJlYW0mIG9wZXJhdG9yPDwoVGV4dFN0cmVh
bSYgdHMsIFBzZXVkb0lkIHBzZXVkb0lkKQogICAgIGNhc2UgUHNldWRvSWQ6OkZpcnN0TGV0dGVy
OiB0cyA8PCAiZmlyc3QtbGV0dGVyIjsgYnJlYWs7CiAgICAgY2FzZSBQc2V1ZG9JZDo6SGlnaGxp
Z2h0OiB0cyA8PCAiaGlnaGxpZ2h0IjsgYnJlYWs7CiAgICAgY2FzZSBQc2V1ZG9JZDo6TWFya2Vy
OiB0cyA8PCAibWFya2VyIjsgYnJlYWs7CisgICAgY2FzZSBQc2V1ZG9JZDo6QmFja2Ryb3A6IHRz
IDw8ICJiYWNrZHJvcCI7IGJyZWFrOwogICAgIGNhc2UgUHNldWRvSWQ6OkJlZm9yZTogdHMgPDwg
ImJlZm9yZSI7IGJyZWFrOwogICAgIGNhc2UgUHNldWRvSWQ6OkFmdGVyOiB0cyA8PCAiYWZ0ZXIi
OyBicmVhazsKICAgICBjYXNlIFBzZXVkb0lkOjpTZWxlY3Rpb246IHRzIDw8ICJzZWxlY3Rpb24i
OyBicmVhazsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5k
ZXJTdHlsZUNvbnN0YW50cy5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRl
clN0eWxlQ29uc3RhbnRzLmgKaW5kZXggODM5YmRjMjBhYmY5NjEyYTMxNzExZTFjMzA5MGU1MjRj
NTc3ODQxMS4uNzNkNGI5ZDU5YWNmZWZjMWU2M2UxYTk0OGU2YmNjZTBmMTM4NzA2MyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRz
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3Rh
bnRzLmgKQEAgLTk1LDYgKzk1LDcgQEAgZW51bSBjbGFzcyBQc2V1ZG9JZCA6IHVpbnQxNl90IHsK
ICAgICBCZWZvcmUsCiAgICAgQWZ0ZXIsCiAgICAgU2VsZWN0aW9uLAorICAgIEJhY2tkcm9wLAog
ICAgIFNjcm9sbGJhciwKIAogICAgIC8vIEludGVybmFsOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRyZWVCdWlsZGVyLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlQnVpbGRlci5jcHAKaW5kZXggZWI2
NjhiNGJkNjM4NjYzMDk5NGUyNmFkZDJkMWU2NWM4Mzk0OTk5Zi4uM2RmOWQ4YzNkMGVmYmNmNzM4
N2I3ZjkyMzM0YTNhNTk3ZWQzOGFmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL3VwZGF0aW5nL1JlbmRlclRyZWVCdWlsZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXIuY3BwCkBAIC04MDcsNiArODA3LDEy
IEBAIHZvaWQgUmVuZGVyVHJlZUJ1aWxkZXI6OmRlc3Ryb3lBbmRDbGVhblVwQW5vbnltb3VzV3Jh
cHBlcnMoUmVuZGVyT2JqZWN0JiByZW5kZXJlCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKKyAg
ICAvLyBBbHNvIGRlc3Ryb3kgOjpiYWNrZHJvcCBhbG9uZyB3aXRoIGVsZW1lbnQgaWYgdGhlcmUg
aXMgb25lCisgICAgaWYgKGlzPFJlbmRlckVsZW1lbnQ+KHJlbmRlcmVyVG9EZXN0cm95KSkgewor
ICAgICAgICBpZiAoYXV0byBiYWNrZHJvcFJlbmRlcmVyID0gZG93bmNhc3Q8UmVuZGVyRWxlbWVu
dD4ocmVuZGVyZXJUb0Rlc3Ryb3kpLmJhY2tkcm9wUmVuZGVyZXIoKSkKKyAgICAgICAgICAgIGRl
c3Ryb3koKmJhY2tkcm9wUmVuZGVyZXIpOworICAgIH0KKwogICAgIGF1dG8gaXNBbm9ueW1vdXNB
bmRTYWZlVG9EZWxldGUgPSBbXSAoY29uc3QgYXV0byYgcmVuZGVyZXIpIHsKICAgICAgICAgcmV0
dXJuIHJlbmRlcmVyLmlzQW5vbnltb3VzKCkgJiYgIXJlbmRlcmVyLmlzUmVuZGVyVmlldygpICYm
ICFyZW5kZXJlci5pc1JlbmRlckZyYWdtZW50ZWRGbG93KCk7CiAgICAgfTsKQEAgLTg3NSw2ICs4
ODEsOCBAQCB2b2lkIFJlbmRlclRyZWVCdWlsZGVyOjpkZXN0cm95QW5kQ2xlYW5VcEFub255bW91
c1dyYXBwZXJzKFJlbmRlck9iamVjdCYgcmVuZGVyZQogCiB2b2lkIFJlbmRlclRyZWVCdWlsZGVy
Ojp1cGRhdGVBZnRlckRlc2NlbmRhbnRzKFJlbmRlckVsZW1lbnQmIHJlbmRlcmVyKQogeworICAg
IHVwZGF0ZUJhY2tkcm9wUmVuZGVyZXIocmVuZGVyZXIpOworCiAgICAgaWYgKGlzPFJlbmRlckJs
b2NrPihyZW5kZXJlcikpCiAgICAgICAgIGZpcnN0TGV0dGVyQnVpbGRlcigpLnVwZGF0ZUFmdGVy
RGVzY2VuZGFudHMoZG93bmNhc3Q8UmVuZGVyQmxvY2s+KHJlbmRlcmVyKSk7CiAgICAgaWYgKGlz
PFJlbmRlckxpc3RJdGVtPihyZW5kZXJlcikpCkBAIC04ODMsNiArODkxLDQ3IEBAIHZvaWQgUmVu
ZGVyVHJlZUJ1aWxkZXI6OnVwZGF0ZUFmdGVyRGVzY2VuZGFudHMoUmVuZGVyRWxlbWVudCYgcmVu
ZGVyZXIpCiAgICAgICAgIG11bHRpQ29sdW1uQnVpbGRlcigpLnVwZGF0ZUFmdGVyRGVzY2VuZGFu
dHMoZG93bmNhc3Q8UmVuZGVyQmxvY2tGbG93PihyZW5kZXJlcikpOwogfQogCit2b2lkIFJlbmRl
clRyZWVCdWlsZGVyOjp1cGRhdGVCYWNrZHJvcFJlbmRlcmVyKFJlbmRlckVsZW1lbnQmIHJlbmRl
cmVyKQoreworICAgIC8vIERlc3Ryb3kgOjpiYWNrZHJvcCBpZiBuZXcgZWxlbWVudCBubyBsb25n
ZXIgaXMgaW4gdG9wIGxheWVyCisgICAgaWYgKHJlbmRlcmVyLmVsZW1lbnQoKSAmJiAhcmVuZGVy
ZXIuZWxlbWVudCgpLT5pc0luVG9wTGF5ZXIoKSkgeworICAgICAgICBpZiAoYXV0byogYmFja2Ry
b3BSZW5kZXJlciA9IHJlbmRlcmVyLmJhY2tkcm9wUmVuZGVyZXIoKSkKKyAgICAgICAgICAgIGRl
c3Ryb3koKmJhY2tkcm9wUmVuZGVyZXIpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAg
Ly8gVXBkYXRlIDo6YmFja2Ryb3AgcmVuZGVyZXIgc3R5bGUgb3IgY3JlYXRlIHJlbmRlcmVyCisg
ICAgYXV0byBzdHlsZSA9IHJlbmRlcmVyLmdldENhY2hlZFBzZXVkb1N0eWxlKFBzZXVkb0lkOjpC
YWNrZHJvcCwgbnVsbHB0cik7CisgICAgaWYgKCFzdHlsZSB8fCBzdHlsZS0+ZGlzcGxheSgpID09
IERpc3BsYXlUeXBlOjpOb25lKQorICAgICAgICByZXR1cm47CisKKyAgICBhdXRvIG5ld1N0eWxl
ID0gUmVuZGVyU3R5bGU6OmNsb25lKCpzdHlsZSk7CisgICAgUmVuZGVyUHRyPFJlbmRlckJsb2Nr
Rmxvdz4gbmV3QmFja2Ryb3BSZW5kZXJlcjsKKyAgICBhdXRvKiBiYWNrZHJvcFJlbmRlcmVyID0g
cmVuZGVyZXIuYmFja2Ryb3BSZW5kZXJlcigpOworICAgIGlmIChiYWNrZHJvcFJlbmRlcmVyKQor
ICAgICAgICBiYWNrZHJvcFJlbmRlcmVyLT5zZXRTdHlsZShXVEZNb3ZlKG5ld1N0eWxlKSk7Cisg
ICAgZWxzZSB7CisgICAgICAgIG5ld0JhY2tkcm9wUmVuZGVyZXIgPSBXZWJDb3JlOjpjcmVhdGVS
ZW5kZXJlcjxSZW5kZXJCbG9ja0Zsb3c+KHJlbmRlcmVyLmRvY3VtZW50KCksIFdURk1vdmUobmV3
U3R5bGUpKTsKKyAgICAgICAgbmV3QmFja2Ryb3BSZW5kZXJlci0+aW5pdGlhbGl6ZVN0eWxlKCk7
CisgICAgICAgIGJhY2tkcm9wUmVuZGVyZXIgPSBuZXdCYWNrZHJvcFJlbmRlcmVyLmdldCgpOwor
ICAgICAgICByZW5kZXJlci5zZXRCYWNrZHJvcFJlbmRlcmVyKCpiYWNrZHJvcFJlbmRlcmVyKTsK
KyAgICB9CisKKyAgICAvLyBVcGRhdGUgb3IgYXR0YWNoIHRvIHJlbmRlcmVyIHBhcmVudAorICAg
IFJlbmRlckVsZW1lbnQqIGN1cnJlbnRQYXJlbnQgPSBiYWNrZHJvcFJlbmRlcmVyLT5wYXJlbnQo
KTsKKyAgICBSZW5kZXJFbGVtZW50KiBuZXdQYXJlbnQgPSByZW5kZXJlci5wYXJlbnQoKTsKKwor
ICAgIEFTU0VSVChuZXdQYXJlbnQsICJTaG91bGQgaGF2ZSBuZXcgcGFyZW50Iik7CisKKyAgICBp
ZiAobmV3UGFyZW50ID09IGN1cnJlbnRQYXJlbnQpCisgICAgICAgIHJldHVybjsKKworICAgIGlm
IChjdXJyZW50UGFyZW50KQorICAgICAgICBhdHRhY2goKm5ld1BhcmVudCwgZGV0YWNoKCpjdXJy
ZW50UGFyZW50LCAqYmFja2Ryb3BSZW5kZXJlciwgUmVuZGVyVHJlZUJ1aWxkZXI6OkNhbkNvbGxh
cHNlQW5vbnltb3VzQmxvY2s6Ok5vKSwgJnJlbmRlcmVyKTsKKyAgICBlbHNlCisgICAgICAgIGF0
dGFjaCgqbmV3UGFyZW50LCBXVEZNb3ZlKG5ld0JhY2tkcm9wUmVuZGVyZXIpLCAmcmVuZGVyZXIp
OworfQorCiBSZW5kZXJQdHI8UmVuZGVyT2JqZWN0PiBSZW5kZXJUcmVlQnVpbGRlcjo6ZGV0YWNo
RnJvbVJlbmRlckdyaWQoUmVuZGVyR3JpZCYgcGFyZW50LCBSZW5kZXJPYmplY3QmIGNoaWxkKQog
ewogICAgIGF1dG8gdGFrZW5DaGlsZCA9IGJsb2NrQnVpbGRlcigpLmRldGFjaChwYXJlbnQsIGNo
aWxkKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5k
ZXJUcmVlQnVpbGRlci5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRl
clRyZWVCdWlsZGVyLmgKaW5kZXggYjEyNzk4NmI1NDZiYzIxZGNmZTA1YjdlMGQ0YTVmODRlMGJl
MWI2MC4uMzhiN2U3MmY2MmMxOWIxYTIxOTA3OTg3NWIyNDI4Mjg0MDRhYjE3NiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRyZWVCdWlsZGVyLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRyZWVCdWlsZGVy
LmgKQEAgLTU1LDYgKzU1LDcgQEAgcHVibGljOgogICAgIHZvaWQgbW92ZShSZW5kZXJCb3hNb2Rl
bE9iamVjdCYgZnJvbSwgUmVuZGVyQm94TW9kZWxPYmplY3QmIHRvLCBSZW5kZXJPYmplY3QmIGNo
aWxkLCBOb3JtYWxpemVBZnRlckluc2VydGlvbik7CiAKICAgICB2b2lkIHVwZGF0ZUFmdGVyRGVz
Y2VuZGFudHMoUmVuZGVyRWxlbWVudCYpOworICAgIHZvaWQgdXBkYXRlQmFja2Ryb3BSZW5kZXJl
cihSZW5kZXJFbGVtZW50Jik7CiAgICAgdm9pZCBkZXN0cm95QW5kQ2xlYW5VcEFub255bW91c1dy
YXBwZXJzKFJlbmRlck9iamVjdCYgY2hpbGQpOwogICAgIHZvaWQgbm9ybWFsaXplVHJlZUFmdGVy
U3R5bGVDaGFuZ2UoUmVuZGVyRWxlbWVudCYsIFJlbmRlclN0eWxlJiBvbGRTdHlsZSk7CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0NvbnRyb2xsZXJz
L0NTU01hbmFnZXIuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Db250
cm9sbGVycy9DU1NNYW5hZ2VyLmpzCmluZGV4IDJmNjNiYmM0OTg5YjVhMTVlMTRhNTUxZWNlY2Q5
N2I3ZTI1MjUzYTUuLmFkMDYxYmQxNjU2NzliZjczOTRmYzg3ZGU5ZWZjYzk2ODM0ZjllNzkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0NvbnRyb2xsZXJz
L0NTU01hbmFnZXIuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2Uv
Q29udHJvbGxlcnMvQ1NTTWFuYWdlci5qcwpAQCAtMTU1LDYgKzE1NSw4IEBAIFdJLkNTU01hbmFn
ZXIgPSBjbGFzcyBDU1NNYW5hZ2VyIGV4dGVuZHMgV0kuT2JqZWN0CiAgICAgICAgICAgICByZXR1
cm4gV0kudW5sb2NhbGl6ZWRTdHJpbmcoIjo6YWZ0ZXIiKTsKICAgICAgICAgY2FzZSBDU1NNYW5h
Z2VyLlBzZXVkb1NlbGVjdG9yTmFtZXMuU2VsZWN0aW9uOgogICAgICAgICAgICAgcmV0dXJuIFdJ
LnVubG9jYWxpemVkU3RyaW5nKCI6OnNlbGVjdGlvbiIpOworICAgICAgICBjYXNlIENTU01hbmFn
ZXIuUHNldWRvU2VsZWN0b3JOYW1lcy5CYWNrZHJvcDoKKyAgICAgICAgICAgIHJldHVybiBXSS51
bmxvY2FsaXplZFN0cmluZygiOjpiYWNrZHJvcCIpOwogICAgICAgICBjYXNlIENTU01hbmFnZXIu
UHNldWRvU2VsZWN0b3JOYW1lcy5TY3JvbGxiYXI6CiAgICAgICAgICAgICByZXR1cm4gV0kudW5s
b2NhbGl6ZWRTdHJpbmcoIjo6c2Nyb2xsYmFyIik7CiAgICAgICAgIGNhc2UgQ1NTTWFuYWdlci5Q
c2V1ZG9TZWxlY3Rvck5hbWVzLlNjcm9sbGJhclRodW1iOgpAQCAtNjg0LDYgKzY4Niw3IEBAIFdJ
LkNTU01hbmFnZXIuQXBwZWFyYW5jZSA9IHsKIFdJLkNTU01hbmFnZXIuUHNldWRvU2VsZWN0b3JO
YW1lcyA9IHsKICAgICBBZnRlcjogImFmdGVyIiwKICAgICBCZWZvcmU6ICJiZWZvcmUiLAorICAg
IEJhY2tkcm9wOiAiYmFja2Ryb3AiLAogICAgIEZpcnN0TGV0dGVyOiAiZmlyc3QtbGV0dGVyIiwK
ICAgICBGaXJzdExpbmU6ICJmaXJzdC1saW5lIiwKICAgICBIaWdobGlnaHQ6ICJoaWdobGlnaHQi
LApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCmluZGV4IDJiMDIzMjBmYjJkYTAyZGE5NGE0NGQ0M2I0YzBjZjE3YTBiN2Y3N2IuLjM5OTUy
N2FkMjViMDA1NGYxNWE2Mzc3NzNiMmJkZDczMWQ3ZDA3OTMgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBA
QAorMjAyMS0wOC0xMSAgVGltIE5ndXllbiAgPG50aW1AYXBwbGUuY29tPgorCisgICAgICAgIElt
cGxlbWVudCA6OmJhY2tkcm9wIHBzZXVkbyBlbGVtZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjc4MDEKKworICAgICAgICBUaGlzIGFkZHMgVUEg
c3R5bGVzLCBSZW5kZXJUcmVlQnVpbGRlciBzdXBwb3J0IGFuZCBXZWJJbnNwZWN0b3Igc3VwcG9y
dCBmb3IgOjpiYWNrZHJvcC4KKyAgICAgICAgU29tZSBpbXBvcnRlZCBibGluayB0ZXN0cyBub3cg
c3RhcnQgcGFzc2luZywgc29tZSBzdGlsbCBuZWVkIHByb3BlciB0b3AgbGF5ZXIgc3VwcG9ydC4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFRlc3RF
eHBlY3RhdGlvbnM6CisKIDIwMjEtMDgtMTEgIEF5dW1pIEtvamltYSAgPGF5dW1pX2tvamltYUBh
cHBsZS5jb20+CiAKICAgICAgICAgWyBXaW4gRVdTIF0gZmFzdC9mb3Jtcy9pbnB1dC1iYXNlbGlu
ZS5odG1sIGlzIGZsYWt5IGNyYXNoaW5nLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5k
ZXggOWQxMjNmMzJlMDEzMTBhZTBjYzJmMDRmNWMwMmIyZDNlMmRkOGM2NS4uZDcxNDM3NmIwY2Rm
M2NlZWI4NjBmM2RiZmM0ZWQ0NDZiYzcxN2ZjZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjEtMDgtMTEgIFRpbSBOZ3V5ZW4gIDxudGltQGFwcGxl
LmNvbT4KKworICAgICAgICBJbXBsZW1lbnQgOjpiYWNrZHJvcCBwc2V1ZG8gZWxlbWVudAorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI3ODAxCisKKyAg
ICAgICAgVGhpcyBhZGRzIFVBIHN0eWxlcywgUmVuZGVyVHJlZUJ1aWxkZXIgc3VwcG9ydCBhbmQg
V2ViSW5zcGVjdG9yIHN1cHBvcnQgZm9yIDo6YmFja2Ryb3AuCisgICAgICAgIFNvbWUgaW1wb3J0
ZWQgYmxpbmsgdGVzdHMgbm93IHN0YXJ0IHBhc3NpbmcsIHNvbWUgc3RpbGwgbmVlZCBwcm9wZXIg
dG9wIGxheWVyIHN1cHBvcnQuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy12YWx1ZXMvY2gtZW1wdHkt
cHNldWRvLXJlY2FsYy1vbi1mb250LWxvYWQtZXhwZWN0ZWQudHh0OgorCiAyMDIxLTA4LTExICBD
aHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgSFRNTE1ldGFFbGVtZW50
IGh0dHAtZXF1aXYgc2hvdWxkIG5vdCBiZSBwcm9jZXNzZWQgaW4gc2hhZG93IHRyZWVzCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvVGVzdEV4
cGVjdGF0aW9ucwppbmRleCAzMTU2MjQ5NzQ2MmVkZWFjNDJlNzA0ZWE5MDczMDI4N2U3ZmE1MzY1
Li41YTQxNzJmZjAyYTBjODUzYzRjOThjNjY5YjEwNmQ2YWEzZjIwMWFmIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3Rh
dGlvbnMKQEAgLTIzNzgsOCArMjM3OCw2IEBAIHdlYmtpdC5vcmcvYi8yMjc4MDEgaW1wb3J0ZWQv
YmxpbmsvZGlhbG9nL2JhY2tkcm9wLXN0YWNraW5nLW9yZGVyLmh0bWwgWyBJbWFnZU9uCiAKICMg
VG9wIGxheWVyIHRlc3RzCiB3ZWJraXQub3JnL2IvODQ3OTYgaW1wb3J0ZWQvYmxpbmsvZGlhbG9n
L2RvbnQtc2hhcmUtc3R5bGUtdG8tdG9wLWxheWVyLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0K
LXdlYmtpdC5vcmcvYi84NDc5NiBpbXBvcnRlZC9ibGluay9kaWFsb2cvbW9kYWwtZGlhbG9nLWJh
Y2tkcm9wLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi84NDc5NiBpbXBv
cnRlZC9ibGluay9kaWFsb2cvbW9kYWwtZGlhbG9nLWdlbmVyYXRlZC1jb250ZW50Lmh0bWwgWyBJ
bWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi84NDc5NiBpbXBvcnRlZC9ibGluay9kaWFs
b2cvbW9kYWwtZGlhbG9nLWluLXJlcGxhY2VkLXJlbmRlcmVyLmh0bWwgWyBJbWFnZU9ubHlGYWls
dXJlIF0KIHdlYmtpdC5vcmcvYi84NDc5NiBpbXBvcnRlZC9ibGluay9kaWFsb2cvbW9kYWwtZGlh
bG9nLWluLXRhYmxlLWNvbHVtbi5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiB3ZWJraXQub3Jn
L2IvODQ3OTYgaW1wb3J0ZWQvYmxpbmsvZGlhbG9nL3JlbW92ZWQtZWxlbWVudC1pcy1yZW1vdmVk
LWZyb20tdG9wLWxheWVyLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy12YWx1ZXMv
Y2gtZW1wdHktcHNldWRvLXJlY2FsYy1vbi1mb250LWxvYWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXZhbHVlcy9jaC1l
bXB0eS1wc2V1ZG8tcmVjYWxjLW9uLWZvbnQtbG9hZC1leHBlY3RlZC50eHQKaW5kZXggNjljN2Vh
OTg0N2M2OTlmMjVjNTE4YTZiMTc3YWUyYWM1YmQ1ZmM3Yi4uMDE2NjFmYTkxZjU5MzY3MzJkMzU5
ZjI1NzViODAxOTJiNDBjN2FlOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXZhbHVlcy9jaC1lbXB0eS1wc2V1ZG8tcmVjYWxj
LW9uLWZvbnQtbG9hZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXZhbHVlcy9jaC1lbXB0eS1wc2V1ZG8tcmVjYWxj
LW9uLWZvbnQtbG9hZC1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZBSUwgY2ggaW4g
cHNldWRvLWVsZW1lbnQgOjpiZWZvcmUgc2hvdWxkIGJlIHJlY2FsY3VsYXRlZCBhZnRlciBsb2Fk
aW5nIGEgd2ViIGZvbnQgYXNzZXJ0X2xlc3NfdGhhbjogZXhwZWN0ZWQgYSBudW1iZXIgbGVzcyB0
aGFuIDI0IGJ1dCBnb3QgTmFOCi1GQUlMIGNoIGluIHBzZXVkby1lbGVtZW50IDo6YWZ0ZXIgc2hv
dWxkIGJlIHJlY2FsY3VsYXRlZCBhZnRlciBsb2FkaW5nIGEgd2ViIGZvbnQgYXNzZXJ0X2xlc3Nf
dGhhbjogZXhwZWN0ZWQgYSBudW1iZXIgbGVzcyB0aGFuIDI0IGJ1dCBnb3QgTmFOCi1GQUlMIGNo
IGluIHBzZXVkby1lbGVtZW50IDo6YmFja2Ryb3Agc2hvdWxkIGJlIHJlY2FsY3VsYXRlZCBhZnRl
ciBsb2FkaW5nIGEgd2ViIGZvbnQgYXNzZXJ0X2xlc3NfdGhhbjogZXhwZWN0ZWQgYSBudW1iZXIg
bGVzcyB0aGFuIDI0IGJ1dCBnb3QgTmFOCitQQVNTIGNoIGluIHBzZXVkby1lbGVtZW50IDo6YmVm
b3JlIHNob3VsZCBiZSByZWNhbGN1bGF0ZWQgYWZ0ZXIgbG9hZGluZyBhIHdlYiBmb250CitQQVNT
IGNoIGluIHBzZXVkby1lbGVtZW50IDo6YWZ0ZXIgc2hvdWxkIGJlIHJlY2FsY3VsYXRlZCBhZnRl
ciBsb2FkaW5nIGEgd2ViIGZvbnQKK1BBU1MgY2ggaW4gcHNldWRvLWVsZW1lbnQgOjpiYWNrZHJv
cCBzaG91bGQgYmUgcmVjYWxjdWxhdGVkIGFmdGVyIGxvYWRpbmcgYSB3ZWIgZm9udAogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>435406</attachid>
            <date>2021-08-12 03:33:16 -0700</date>
            <delta_ts>2021-08-12 03:53:34 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227801-20210812123315.patch</filename>
            <type>text/plain</type>
            <size>21849</size>
            <attacher name="Tim Nguyen (:ntim)">ntim</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgwOTIzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAx
ZDM4N2Q3MjBmMzEyNjFlMjRkMmU5ZTRmYTM5ZTBhOGIwMDhjMmU3Li5mZjA1MGVlOGVmZDllZDQ5
OGYxMWE2NDU5YjdjZjc1YmFjMzg1M2FhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNSBAQAorMjAyMS0wOC0xMSAgVGltIE5ndXllbiAgPG50aW1AYXBwbGUuY29tPgorCisg
ICAgICAgIEltcGxlbWVudCA6OmJhY2tkcm9wIHBzZXVkbyBlbGVtZW50CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjc4MDEKKworICAgICAgICBUaGlz
IGFkZHMgVUEgc3R5bGVzLCBSZW5kZXJUcmVlQnVpbGRlciBzdXBwb3J0IGFuZCBXZWJJbnNwZWN0
b3Igc3VwcG9ydCBmb3IgOjpiYWNrZHJvcC4KKyAgICAgICAgU29tZSBpbXBvcnRlZCBibGluayB0
ZXN0cyBub3cgc3RhcnQgcGFzc2luZywgc29tZSBzdGlsbCBuZWVkIHByb3BlciB0b3AgbGF5ZXIg
c3VwcG9ydC4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIGluc3BlY3Rvci9wcm90b2NvbC9DU1MuanNvbjoKKwogMjAyMS0wOC0xMSAgWXVzdWtlIFN1
enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgogCiAgICAgICAgIFdURkNyYXNoIGluIEpTQzo6TGV4
ZXI8Y2hhcjE2X3Q+OjphcHBlbmQ4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjUwMTU5NjEzNzExMDU0MWRlYmQ3
MDY5YWEzZmYwNjVhNGFmZjM4NC4uMWFjNDk1NjMwZGVlODg0ZmQ5NmY4MGI2MjUzMGE2YTdlYzU3
OGVkNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDIxLTA4LTExICBUaW0gTmd1eWVu
ICA8bnRpbUBhcHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IDo6YmFja2Ryb3AgcHNldWRv
IGVsZW1lbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIyNzgwMQorCisgICAgICAgIFRoaXMgYWRkcyBVQSBzdHlsZXMsIFJlbmRlclRyZWVCdWlsZGVy
IHN1cHBvcnQgYW5kIFdlYkluc3BlY3RvciBzdXBwb3J0IGZvciA6OmJhY2tkcm9wLgorICAgICAg
ICBTb21lIGltcG9ydGVkIGJsaW5rIHRlc3RzIG5vdyBzdGFydCBwYXNzaW5nLCBzb21lIHN0aWxs
IG5lZWQgcHJvcGVyIHRvcCBsYXllciBzdXBwb3J0LgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgICogY3NzL0NTU1NlbGVjdG9yLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkNTU1NlbGVjdG9yOjpwc2V1ZG9JZCk6CisgICAgICAgICogY3NzL0NTU1NlbGVj
dG9yLmg6CisgICAgICAgICogY3NzL1NlbGVjdG9yUHNldWRvRWxlbWVudFR5cGVNYXAuaW46Cisg
ICAgICAgICogY3NzL2RpYWxvZy5jc3M6CisgICAgICAgIChkaWFsb2c6OmJhY2tkcm9wKToKKyAg
ICAgICAgKDo6YmFja2Ryb3ApOgorICAgICAgICAqIGRvbS9FbGVtZW50Lmg6CisgICAgICAgIChX
ZWJDb3JlOjpFbGVtZW50Ojppc0luVG9wTGF5ZXIgY29uc3QpOgorICAgICAgICAqIGluc3BlY3Rv
ci9hZ2VudHMvSW5zcGVjdG9yQ1NTQWdlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6cHJvdG9j
b2xWYWx1ZUZvclBzZXVkb0lkKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJFbGVtZW50OjpiYWNrZHJvcFJlbmRlcmVyIGNv
bnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckVsZW1lbnQ6OnNldEJhY2tkcm9wUmVuZGVy
ZXIpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJFbGVtZW50Lmg6CisgICAgICAgICogcmVu
ZGVyaW5nL1JlbmRlck9iamVjdC5oOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9SZW5kZXJT
dHlsZUNvbnN0YW50cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpvcGVyYXRvcjw8KToKKyAgICAg
ICAgKiByZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaDoKKyAgICAgICAgKiBy
ZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6UmVuZGVyVHJlZUJ1aWxkZXI6OmRlc3Ryb3lBbmRDbGVhblVwQW5vbnltb3VzV3JhcHBlcnMp
OgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVHJlZUJ1aWxkZXI6OnVwZGF0ZUFmdGVyRGVzY2Vu
ZGFudHMpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVHJlZUJ1aWxkZXI6OnVwZGF0ZUJhY2tk
cm9wUmVuZGVyZXIpOgorICAgICAgICAqIHJlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlQnVp
bGRlci5oOgorICAgICAgICAqIHN0eWxlL1N0eWxlVHJlZVJlc29sdmVyLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlN0eWxlOjpUcmVlUmVzb2x2ZXI6OnJlc29sdmVQc2V1ZG9TdHlsZSk6CisKIDIw
MjEtMDgtMTEgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIE1l
ZGlhIGVsZW1lbnQgaXMgbm90IGFsd2F5cyBhdXRvcGxheWluZyB3aGVuIGdvaW5nIGZyb20gYmFj
a2dyb3VuZCB0byBmb3JlZ3JvdW5kIGlmIGl0IGlzIGluaXRpYWxseSBub3QgaW4gdmlld3BvcnQK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IDFiZTNjOWY1MDA0YzJjM2MzYzc2OTM2NjkxYTE0
YjQ2MTM1MzFlYmIuLjg5YTk3ZmIzOTE0YTNkNWE2NmVhOGNkYTAyYjhmMGJjNjYxNjY1M2MgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTA4LTExICBUaW0g
Tmd1eWVuICA8bnRpbUBhcHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IDo6YmFja2Ryb3Ag
cHNldWRvIGVsZW1lbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIyNzgwMQorCisgICAgICAgIFRoaXMgYWRkcyBVQSBzdHlsZXMsIFJlbmRlclRyZWVC
dWlsZGVyIHN1cHBvcnQgYW5kIFdlYkluc3BlY3RvciBzdXBwb3J0IGZvciA6OmJhY2tkcm9wLgor
ICAgICAgICBTb21lIGltcG9ydGVkIGJsaW5rIHRlc3RzIG5vdyBzdGFydCBwYXNzaW5nLCBzb21l
IHN0aWxsIG5lZWQgcHJvcGVyIHRvcCBsYXllciBzdXBwb3J0LgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVXNlckludGVyZmFjZS9Db250cm9sbGVy
cy9DU1NNYW5hZ2VyLmpzOgorICAgICAgICAoV0kuQ1NTTWFuYWdlci5kaXNwbGF5TmFtZUZvclBz
ZXVkb0lkKToKKwogMjAyMS0wOC0wMyAgU29uaWEgU2luZ2xhICA8c29uaWFzaW5nbGEuMTgxMkBn
bWFpbC5jb20+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogQWRkIHN0YW5kYXJkIGxvZ2ljYWwg
cHJvcGVydGllcyB0byBDU1Mga2V5d29yZCBjb21wbGV0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Byb3RvY29sL0NTUy5qc29uIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9DU1MuanNvbgppbmRleCBjOWViNTc2YmQ3YzI1
OTM0YWE1OWNiZjMyZTFjY2NmOTMzOTE3Y2U4Li40YzYyZGU5MGExNTBjNjIzZGM1YTA3NDUyYWE0
YjQzNzliMjg0NmY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9y
L3Byb3RvY29sL0NTUy5qc29uCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Iv
cHJvdG9jb2wvQ1NTLmpzb24KQEAgLTQzLDYgKzQzLDcgQEAKICAgICAgICAgICAgICAgICAiYmVm
b3JlIiwKICAgICAgICAgICAgICAgICAiYWZ0ZXIiLAogICAgICAgICAgICAgICAgICJzZWxlY3Rp
b24iLAorICAgICAgICAgICAgICAgICJiYWNrZHJvcCIsCiAgICAgICAgICAgICAgICAgInNjcm9s
bGJhciIsCiAgICAgICAgICAgICAgICAgInNjcm9sbGJhci10aHVtYiIsCiAgICAgICAgICAgICAg
ICAgInNjcm9sbGJhci1idXR0b24iLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NT
U1NlbGVjdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWxlY3Rvci5jcHAKaW5kZXgg
YzE1YzYyOTJlZjhiNTIyNDIxOTFlYmM0YzQxNTA1MmU1ZTIyNGE0YS4uNjg1MGU4NGY4YmYwYzU0
ODExNzQ2MTI1MDY4ZTAwMzgwMmU5MmQ1OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1NlbGVjdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2VsZWN0b3IuY3Bw
CkBAIC0yMzIsNiArMjMyLDggQEAgUHNldWRvSWQgQ1NTU2VsZWN0b3I6OnBzZXVkb0lkKFBzZXVk
b0VsZW1lbnRUeXBlIHR5cGUpCiAgICAgICAgIHJldHVybiBQc2V1ZG9JZDo6SGlnaGxpZ2h0Owog
ICAgIGNhc2UgUHNldWRvRWxlbWVudE1hcmtlcjoKICAgICAgICAgcmV0dXJuIFBzZXVkb0lkOjpN
YXJrZXI7CisgICAgY2FzZSBQc2V1ZG9FbGVtZW50QmFja2Ryb3A6CisgICAgICAgIHJldHVybiBQ
c2V1ZG9JZDo6QmFja2Ryb3A7CiAgICAgY2FzZSBQc2V1ZG9FbGVtZW50QmVmb3JlOgogICAgICAg
ICByZXR1cm4gUHNldWRvSWQ6OkJlZm9yZTsKICAgICBjYXNlIFBzZXVkb0VsZW1lbnRBZnRlcjoK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWxlY3Rvci5oIGIvU291cmNlL1dl
YkNvcmUvY3NzL0NTU1NlbGVjdG9yLmgKaW5kZXggNWI0YjlmMTVmMzM0ZDI0YjJjYjJjMWJiZTA5
NjRkMGY3ZGU4MGEwMy4uYmM4M2FmZDkxNzQwYTExMjBmMzFkODQ2NzljOWQxMjZjN2NjMWY5NSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1NlbGVjdG9yLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1NlbGVjdG9yLmgKQEAgLTE4MCw2ICsxODAsNyBAQCBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAgICAgICAgIGVudW0gUHNldWRvRWxlbWVudFR5cGUgewogICAgICAgICAgICAg
UHNldWRvRWxlbWVudFVua25vd24gPSAwLAogICAgICAgICAgICAgUHNldWRvRWxlbWVudEFmdGVy
LAorICAgICAgICAgICAgUHNldWRvRWxlbWVudEJhY2tkcm9wLAogICAgICAgICAgICAgUHNldWRv
RWxlbWVudEJlZm9yZSwKICNpZiBFTkFCTEUoVklERU8pCiAgICAgICAgICAgICBQc2V1ZG9FbGVt
ZW50Q3VlLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1NlbGVjdG9yUHNldWRvRWxl
bWVudFR5cGVNYXAuaW4gYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JQc2V1ZG9FbGVtZW50
VHlwZU1hcC5pbgppbmRleCAwYjVlZmM2Njg0Y2I1NmZlZWUwNTkyZTczZjg2YzYyZTBiMmMyY2Uy
Li5lMWU1MTk0OGZlMjI3NjNhMTdkZTE4ODk0Y2Q0Nzk4YTk3MGEyMDQxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JQc2V1ZG9FbGVtZW50VHlwZU1hcC5pbgorKysgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JQc2V1ZG9FbGVtZW50VHlwZU1hcC5pbgpAQCAtMSw0
ICsxLDUgQEAKIGFmdGVyCitiYWNrZHJvcAogYmVmb3JlCiAjaWYgRU5BQkxFKFZJREVPKQogY3Vl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvZGlhbG9nLmNzcyBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9kaWFsb2cuY3NzCmluZGV4IGI2MWRjOWQ3NmYyMGJjMDRjNDA0NjU2YjEyYzRjOGFk
YWNiOTA5NjYuLjFlN2U1YTE1MjBmMTMyYjY5MDQ2ZDk0ZTJlMmExZGYzMDQ1M2IwNWEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9kaWFsb2cuY3NzCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9kaWFsb2cuY3NzCkBAIC0yNCwzICsyNCwxNiBAQCBkaWFsb2c6LWludGVybmFsLW1vZGFs
LWRpYWxvZyB7CiAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA2cHggLSAyZW0pOwogICAgIG1h
eC1oZWlnaHQ6IGNhbGMoMTAwJSAtIDZweCAtIDJlbSk7CiB9CisKK2RpYWxvZzo6YmFja2Ryb3Ag
eworICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsKK30KKworOjpiYWNrZHJvcCB7
CisgICAgZGlzcGxheTogYmxvY2s7CisgICAgcG9zaXRpb246IGZpeGVkOworICAgIHRvcDogMDsK
KyAgICBsZWZ0OiAwOworICAgIHJpZ2h0OiAwOworICAgIGJvdHRvbTogMDsKK30KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxl
bWVudC5oCmluZGV4IDliNDA5Y2E5ZjNkOTk4NzY1ZTIxZWUzZTU3MDllZDM2OTM4MDQwNjAuLjU4
MmRiMTIzYjZkOTc1Nzc0ZWE1ZmMyNDJhODM2MzFjODQ3M2JlM2UgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQu
aApAQCAtNTExLDYgKzUxMSw4IEBAIHB1YmxpYzoKICAgICBjb25zdCBSZW5kZXJTdHlsZSogbGFz
dFN0eWxlQ2hhbmdlRXZlbnRTdHlsZShQc2V1ZG9JZCkgY29uc3Q7CiAgICAgdm9pZCBzZXRMYXN0
U3R5bGVDaGFuZ2VFdmVudFN0eWxlKFBzZXVkb0lkLCBzdGQ6OnVuaXF1ZV9wdHI8Y29uc3QgUmVu
ZGVyU3R5bGU+JiYpOwogCisgICAgYm9vbCBpc0luVG9wTGF5ZXIoKSBjb25zdCB7IHJldHVybiBk
b2N1bWVudCgpLnRvcExheWVyRWxlbWVudHMoKS5jb250YWlucyhtYWtlUmVmKCpjb25zdF9jYXN0
PEVsZW1lbnQqPih0aGlzKSkpOyB9CisKICNpZiBFTkFCTEUoRlVMTFNDUkVFTl9BUEkpCiAgICAg
Ym9vbCBjb250YWluc0Z1bGxTY3JlZW5FbGVtZW50KCkgY29uc3QgeyByZXR1cm4gaGFzTm9kZUZs
YWcoTm9kZUZsYWc6OkNvbnRhaW5zRnVsbFNjcmVlbkVsZW1lbnQpOyB9CiAgICAgdm9pZCBzZXRD
b250YWluc0Z1bGxTY3JlZW5FbGVtZW50KGJvb2wpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JDU1NBZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckNTU0FnZW50LmNwcAppbmRleCA2NWE4MTMxMjlk
NjMxNzM5YWIwNTYwNDFmOTc1MGJkMjg4OGUyYzQ4Li4zZWMxNGY2NzFlZDg2NTUxYzRjYzlkMWVk
Yjg2YzdhZmEwMGNmMjVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdl
bnRzL0luc3BlY3RvckNTU0FnZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
YWdlbnRzL0luc3BlY3RvckNTU0FnZW50LmNwcApAQCAtNDQ5LDYgKzQ0OSw4IEBAIHN0YXRpYyBz
dGQ6Om9wdGlvbmFsPFByb3RvY29sOjpDU1M6OlBzZXVkb0lkPiBwcm90b2NvbFZhbHVlRm9yUHNl
dWRvSWQoUHNldWRvSWQKICAgICAgICAgcmV0dXJuIFByb3RvY29sOjpDU1M6OlBzZXVkb0lkOjpG
aXJzdExldHRlcjsKICAgICBjYXNlIFBzZXVkb0lkOjpNYXJrZXI6CiAgICAgICAgIHJldHVybiBQ
cm90b2NvbDo6Q1NTOjpQc2V1ZG9JZDo6TWFya2VyOworICAgIGNhc2UgUHNldWRvSWQ6OkJhY2tk
cm9wOgorICAgICAgICByZXR1cm4gUHJvdG9jb2w6OkNTUzo6UHNldWRvSWQ6OkJhY2tkcm9wOwog
ICAgIGNhc2UgUHNldWRvSWQ6OkJlZm9yZToKICAgICAgICAgcmV0dXJuIFByb3RvY29sOjpDU1M6
OlBzZXVkb0lkOjpCZWZvcmU7CiAgICAgY2FzZSBQc2V1ZG9JZDo6QWZ0ZXI6CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5jcHAKaW5kZXggZjg3ZDA1ZjM5OWU4NDkwOGI1
OTk4ZjVjOWY5NTZjOWFkNWNjMmYxNy4uZTgwZWQ3MWRhZTQxZDMyNmRiMjA1NjcyYzRlYjg0NzEy
MjQxYmY2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVsZW1l
bnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbGVtZW50LmNwcApA
QCAtMjM3NSw0ICsyMzc1LDE0IEBAIHN0ZDo6dW5pcXVlX3B0cjxSZW5kZXJTdHlsZT4gUmVuZGVy
RWxlbWVudDo6YW5pbWF0ZWRTdHlsZSgpCiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAorUmVuZGVy
QmxvY2tGbG93KiBSZW5kZXJFbGVtZW50OjpiYWNrZHJvcFJlbmRlcmVyKCkgY29uc3QKK3sKKyAg
ICByZXR1cm4gaGFzUmFyZURhdGEoKSA/IHJhcmVEYXRhKCkuYmFja2Ryb3BSZW5kZXJlci5nZXQo
KSA6IG51bGxwdHI7Cit9CisKK3ZvaWQgUmVuZGVyRWxlbWVudDo6c2V0QmFja2Ryb3BSZW5kZXJl
cihSZW5kZXJCbG9ja0Zsb3cmIHJlbmRlcmVyKQoreworICAgIGVuc3VyZVJhcmVEYXRhKCkuYmFj
a2Ryb3BSZW5kZXJlciA9IG1ha2VXZWFrUHRyKHJlbmRlcmVyKTsKK30KKwogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVsZW1lbnQuaCBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJFbGVtZW50LmgKaW5kZXggMjM3N2JhOTcyYzRhYzk1Y2M4Zjc4
ZGQzMmRkZTgxOTQ5YzQ3ZmUyNS4uMGM0YWQ0M2U5YzRmYzJlMmRkNWY3NGQ4NTQ2MmUyMjhmOWE0
MWRhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVsZW1lbnQu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5oCkBAIC0yNTcs
NiArMjU3LDkgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBzdXNwZW5kQW5pbWF0aW9ucyhN
b25vdG9uaWNUaW1lID0gTW9ub3RvbmljVGltZSgpKSB7IH0KICAgICBzdGQ6OnVuaXF1ZV9wdHI8
UmVuZGVyU3R5bGU+IGFuaW1hdGVkU3R5bGUoKTsKIAorICAgIFJlbmRlckJsb2NrRmxvdyogYmFj
a2Ryb3BSZW5kZXJlcigpIGNvbnN0OworICAgIHZvaWQgc2V0QmFja2Ryb3BSZW5kZXJlcihSZW5k
ZXJCbG9ja0Zsb3cmKTsKKwogcHJvdGVjdGVkOgogICAgIGVudW0gQmFzZVR5cGVGbGFnIHsKICAg
ICAgICAgUmVuZGVyTGF5ZXJNb2RlbE9iamVjdEZsYWcgID0gMSA8PCAwLApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlck9iamVjdC5oCmluZGV4IDJmZDk2ODc5MDIyYTZhM2I4YWNjMzE2YWYx
ZTE1MDRhNjIzMjc0ZTcuLjU1NjdlNGRjMzUxZTU0ZjM4MTUyOWNhNjAwMGNjMWI5NDg1Y2MzNDAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmgKQEAgLTU5LDYgKzU5LDcg
QEAgY2xhc3MgUG9zaXRpb247CiBjbGFzcyBSZW5kZXJCb3hNb2RlbE9iamVjdDsKIGNsYXNzIFJl
bmRlcklubGluZTsKIGNsYXNzIFJlbmRlckJsb2NrOworY2xhc3MgUmVuZGVyQmxvY2tGbG93Owog
Y2xhc3MgUmVuZGVyRWxlbWVudDsKIGNsYXNzIFJlbmRlckZyYWdtZW50ZWRGbG93OwogY2xhc3Mg
UmVuZGVyR2VvbWV0cnlNYXA7CkBAIC05MzgsNiArOTM5LDcgQEAgcHJpdmF0ZToKIAogICAgICAg
ICAvLyBGcm9tIFJlbmRlckVsZW1lbnQKICAgICAgICAgc3RkOjp1bmlxdWVfcHRyPFJlbmRlclN0
eWxlPiBjYWNoZWRGaXJzdExpbmVTdHlsZTsKKyAgICAgICAgV2Vha1B0cjxSZW5kZXJCbG9ja0Zs
b3c+IGJhY2tkcm9wUmVuZGVyZXI7CiAgICAgfTsKICAgICAKICAgICBjb25zdCBSZW5kZXJPYmpl
Y3Q6OlJlbmRlck9iamVjdFJhcmVEYXRhJiByYXJlRGF0YSgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5jcHAK
aW5kZXggNDZhNTkyY2JkNGIwZGZiYjc3MDA1YjBlODVkZjkzOTY2MTQzODJlYS4uNWVkMTAzYzc1
MmMwMTkwNzE4M2RlOTM5NTQ1NDYyZTM5MjNkODIzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuY3BwCkBAIC04ODcs
NiArODg3LDcgQEAgVGV4dFN0cmVhbSYgb3BlcmF0b3I8PChUZXh0U3RyZWFtJiB0cywgUHNldWRv
SWQgcHNldWRvSWQpCiAgICAgY2FzZSBQc2V1ZG9JZDo6Rmlyc3RMZXR0ZXI6IHRzIDw8ICJmaXJz
dC1sZXR0ZXIiOyBicmVhazsKICAgICBjYXNlIFBzZXVkb0lkOjpIaWdobGlnaHQ6IHRzIDw8ICJo
aWdobGlnaHQiOyBicmVhazsKICAgICBjYXNlIFBzZXVkb0lkOjpNYXJrZXI6IHRzIDw8ICJtYXJr
ZXIiOyBicmVhazsKKyAgICBjYXNlIFBzZXVkb0lkOjpCYWNrZHJvcDogdHMgPDwgImJhY2tkcm9w
IjsgYnJlYWs7CiAgICAgY2FzZSBQc2V1ZG9JZDo6QmVmb3JlOiB0cyA8PCAiYmVmb3JlIjsgYnJl
YWs7CiAgICAgY2FzZSBQc2V1ZG9JZDo6QWZ0ZXI6IHRzIDw8ICJhZnRlciI7IGJyZWFrOwogICAg
IGNhc2UgUHNldWRvSWQ6OlNlbGVjdGlvbjogdHMgPDwgInNlbGVjdGlvbiI7IGJyZWFrOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3Rh
bnRzLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFu
dHMuaAppbmRleCA4MzliZGMyMGFiZjk2MTJhMzE3MTFlMWMzMDkwZTUyNGM1Nzc4NDExLi43M2Q0
YjlkNTlhY2ZlZmMxZTYzZTFhOTQ4ZTZiY2NlMGYxMzg3MDYzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaApAQCAtOTUs
NiArOTUsNyBAQCBlbnVtIGNsYXNzIFBzZXVkb0lkIDogdWludDE2X3QgewogICAgIEJlZm9yZSwK
ICAgICBBZnRlciwKICAgICBTZWxlY3Rpb24sCisgICAgQmFja2Ryb3AsCiAgICAgU2Nyb2xsYmFy
LAogCiAgICAgLy8gSW50ZXJuYWw6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvdXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL3VwZGF0aW5nL1JlbmRlclRyZWVCdWlsZGVyLmNwcAppbmRleCBlYjY2OGI0YmQ2Mzg2NjMw
OTk0ZTI2YWRkMmQxZTY1YzgzOTQ5OTlmLi5hYWNiYmM4MmQ0NDNjOWE2NWQ0ODEwYWZhNDI0ZmRi
NTlkODdiYTAxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcv
UmVuZGVyVHJlZUJ1aWxkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRh
dGluZy9SZW5kZXJUcmVlQnVpbGRlci5jcHAKQEAgLTgwNyw2ICs4MDcsMTIgQEAgdm9pZCBSZW5k
ZXJUcmVlQnVpbGRlcjo6ZGVzdHJveUFuZENsZWFuVXBBbm9ueW1vdXNXcmFwcGVycyhSZW5kZXJP
YmplY3QmIHJlbmRlcmUKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAorICAgIC8vIEFsc28gZGVz
dHJveSA6OmJhY2tkcm9wIGFsb25nIHdpdGggZWxlbWVudCBpZiB0aGVyZSBpcyBvbmUKKyAgICBp
ZiAoaXM8UmVuZGVyRWxlbWVudD4ocmVuZGVyZXJUb0Rlc3Ryb3kpKSB7CisgICAgICAgIGlmIChh
dXRvIGJhY2tkcm9wUmVuZGVyZXIgPSBkb3duY2FzdDxSZW5kZXJFbGVtZW50PihyZW5kZXJlclRv
RGVzdHJveSkuYmFja2Ryb3BSZW5kZXJlcigpKQorICAgICAgICAgICAgZGVzdHJveSgqYmFja2Ry
b3BSZW5kZXJlcik7CisgICAgfQorCiAgICAgYXV0byBpc0Fub255bW91c0FuZFNhZmVUb0RlbGV0
ZSA9IFtdIChjb25zdCBhdXRvJiByZW5kZXJlcikgewogICAgICAgICByZXR1cm4gcmVuZGVyZXIu
aXNBbm9ueW1vdXMoKSAmJiAhcmVuZGVyZXIuaXNSZW5kZXJWaWV3KCkgJiYgIXJlbmRlcmVyLmlz
UmVuZGVyRnJhZ21lbnRlZEZsb3coKTsKICAgICB9OwpAQCAtODc1LDYgKzg4MSw4IEBAIHZvaWQg
UmVuZGVyVHJlZUJ1aWxkZXI6OmRlc3Ryb3lBbmRDbGVhblVwQW5vbnltb3VzV3JhcHBlcnMoUmVu
ZGVyT2JqZWN0JiByZW5kZXJlCiAKIHZvaWQgUmVuZGVyVHJlZUJ1aWxkZXI6OnVwZGF0ZUFmdGVy
RGVzY2VuZGFudHMoUmVuZGVyRWxlbWVudCYgcmVuZGVyZXIpCiB7CisgICAgdXBkYXRlQmFja2Ry
b3BSZW5kZXJlcihyZW5kZXJlcik7CisKICAgICBpZiAoaXM8UmVuZGVyQmxvY2s+KHJlbmRlcmVy
KSkKICAgICAgICAgZmlyc3RMZXR0ZXJCdWlsZGVyKCkudXBkYXRlQWZ0ZXJEZXNjZW5kYW50cyhk
b3duY2FzdDxSZW5kZXJCbG9jaz4ocmVuZGVyZXIpKTsKICAgICBpZiAoaXM8UmVuZGVyTGlzdEl0
ZW0+KHJlbmRlcmVyKSkKQEAgLTg4Myw2ICs4OTEsNDcgQEAgdm9pZCBSZW5kZXJUcmVlQnVpbGRl
cjo6dXBkYXRlQWZ0ZXJEZXNjZW5kYW50cyhSZW5kZXJFbGVtZW50JiByZW5kZXJlcikKICAgICAg
ICAgbXVsdGlDb2x1bW5CdWlsZGVyKCkudXBkYXRlQWZ0ZXJEZXNjZW5kYW50cyhkb3duY2FzdDxS
ZW5kZXJCbG9ja0Zsb3c+KHJlbmRlcmVyKSk7CiB9CiAKK3ZvaWQgUmVuZGVyVHJlZUJ1aWxkZXI6
OnVwZGF0ZUJhY2tkcm9wUmVuZGVyZXIoUmVuZGVyRWxlbWVudCYgcmVuZGVyZXIpCit7CisgICAg
Ly8gRGVzdHJveSA6OmJhY2tkcm9wIGlmIG5ldyBlbGVtZW50IG5vIGxvbmdlciBpcyBpbiB0b3Ag
bGF5ZXIKKyAgICBpZiAocmVuZGVyZXIuZWxlbWVudCgpICYmICFyZW5kZXJlci5lbGVtZW50KCkt
PmlzSW5Ub3BMYXllcigpKSB7CisgICAgICAgIGlmIChhdXRvKiBiYWNrZHJvcFJlbmRlcmVyID0g
cmVuZGVyZXIuYmFja2Ryb3BSZW5kZXJlcigpKQorICAgICAgICAgICAgZGVzdHJveSgqYmFja2Ry
b3BSZW5kZXJlcik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICAvLyBVcGRhdGUgOjpi
YWNrZHJvcCByZW5kZXJlciBzdHlsZSBvciBjcmVhdGUgcmVuZGVyZXIKKyAgICBhdXRvIHN0eWxl
ID0gcmVuZGVyZXIuZ2V0Q2FjaGVkUHNldWRvU3R5bGUoUHNldWRvSWQ6OkJhY2tkcm9wLCByZW5k
ZXJlci5kb2N1bWVudCgpLnJlbmRlclN0eWxlKCkpOworICAgIGlmICghc3R5bGUgfHwgc3R5bGUt
PmRpc3BsYXkoKSA9PSBEaXNwbGF5VHlwZTo6Tm9uZSkKKyAgICAgICAgcmV0dXJuOworCisgICAg
YXV0byBuZXdTdHlsZSA9IFJlbmRlclN0eWxlOjpjbG9uZSgqc3R5bGUpOworICAgIFJlbmRlclB0
cjxSZW5kZXJCbG9ja0Zsb3c+IG5ld0JhY2tkcm9wUmVuZGVyZXI7CisgICAgYXV0byogYmFja2Ry
b3BSZW5kZXJlciA9IHJlbmRlcmVyLmJhY2tkcm9wUmVuZGVyZXIoKTsKKyAgICBpZiAoYmFja2Ry
b3BSZW5kZXJlcikKKyAgICAgICAgYmFja2Ryb3BSZW5kZXJlci0+c2V0U3R5bGUoV1RGTW92ZShu
ZXdTdHlsZSkpOworICAgIGVsc2UgeworICAgICAgICBuZXdCYWNrZHJvcFJlbmRlcmVyID0gV2Vi
Q29yZTo6Y3JlYXRlUmVuZGVyZXI8UmVuZGVyQmxvY2tGbG93PihyZW5kZXJlci5kb2N1bWVudCgp
LCBXVEZNb3ZlKG5ld1N0eWxlKSk7CisgICAgICAgIG5ld0JhY2tkcm9wUmVuZGVyZXItPmluaXRp
YWxpemVTdHlsZSgpOworICAgICAgICBiYWNrZHJvcFJlbmRlcmVyID0gbmV3QmFja2Ryb3BSZW5k
ZXJlci5nZXQoKTsKKyAgICAgICAgcmVuZGVyZXIuc2V0QmFja2Ryb3BSZW5kZXJlcigqYmFja2Ry
b3BSZW5kZXJlcik7CisgICAgfQorCisgICAgLy8gVXBkYXRlIG9yIGF0dGFjaCB0byByZW5kZXJl
ciBwYXJlbnQKKyAgICBSZW5kZXJFbGVtZW50KiBjdXJyZW50UGFyZW50ID0gYmFja2Ryb3BSZW5k
ZXJlci0+cGFyZW50KCk7CisgICAgUmVuZGVyRWxlbWVudCogbmV3UGFyZW50ID0gcmVuZGVyZXIu
cGFyZW50KCk7CisKKyAgICBBU1NFUlQobmV3UGFyZW50LCAiU2hvdWxkIGhhdmUgbmV3IHBhcmVu
dCIpOworCisgICAgaWYgKG5ld1BhcmVudCA9PSBjdXJyZW50UGFyZW50KQorICAgICAgICByZXR1
cm47CisKKyAgICBpZiAoY3VycmVudFBhcmVudCkKKyAgICAgICAgYXR0YWNoKCpuZXdQYXJlbnQs
IGRldGFjaCgqY3VycmVudFBhcmVudCwgKmJhY2tkcm9wUmVuZGVyZXIsIFJlbmRlclRyZWVCdWls
ZGVyOjpDYW5Db2xsYXBzZUFub255bW91c0Jsb2NrOjpObyksICZyZW5kZXJlcik7CisgICAgZWxz
ZQorICAgICAgICBhdHRhY2goKm5ld1BhcmVudCwgV1RGTW92ZShuZXdCYWNrZHJvcFJlbmRlcmVy
KSwgJnJlbmRlcmVyKTsKK30KKwogUmVuZGVyUHRyPFJlbmRlck9iamVjdD4gUmVuZGVyVHJlZUJ1
aWxkZXI6OmRldGFjaEZyb21SZW5kZXJHcmlkKFJlbmRlckdyaWQmIHBhcmVudCwgUmVuZGVyT2Jq
ZWN0JiBjaGlsZCkKIHsKICAgICBhdXRvIHRha2VuQ2hpbGQgPSBibG9ja0J1aWxkZXIoKS5kZXRh
Y2gocGFyZW50LCBjaGlsZCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
dXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91
cGRhdGluZy9SZW5kZXJUcmVlQnVpbGRlci5oCmluZGV4IGIxMjc5ODZiNTQ2YmMyMWRjZmUwNWI3
ZTBkNGE1Zjg0ZTBiZTFiNjAuLjM4YjdlNzJmNjJjMTliMWEyMTkwNzk4NzViMjQyODI4NDA0YWIx
NzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJU
cmVlQnVpbGRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5k
ZXJUcmVlQnVpbGRlci5oCkBAIC01NSw2ICs1NSw3IEBAIHB1YmxpYzoKICAgICB2b2lkIG1vdmUo
UmVuZGVyQm94TW9kZWxPYmplY3QmIGZyb20sIFJlbmRlckJveE1vZGVsT2JqZWN0JiB0bywgUmVu
ZGVyT2JqZWN0JiBjaGlsZCwgTm9ybWFsaXplQWZ0ZXJJbnNlcnRpb24pOwogCiAgICAgdm9pZCB1
cGRhdGVBZnRlckRlc2NlbmRhbnRzKFJlbmRlckVsZW1lbnQmKTsKKyAgICB2b2lkIHVwZGF0ZUJh
Y2tkcm9wUmVuZGVyZXIoUmVuZGVyRWxlbWVudCYpOwogICAgIHZvaWQgZGVzdHJveUFuZENsZWFu
VXBBbm9ueW1vdXNXcmFwcGVycyhSZW5kZXJPYmplY3QmIGNoaWxkKTsKICAgICB2b2lkIG5vcm1h
bGl6ZVRyZWVBZnRlclN0eWxlQ2hhbmdlKFJlbmRlckVsZW1lbnQmLCBSZW5kZXJTdHlsZSYgb2xk
U3R5bGUpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVRyZWVSZXNv
bHZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVRyZWVSZXNvbHZlci5jcHAKaW5k
ZXggMGM1MjhiMTliYzZjYzcyYjY1OTU2MjU2OWJjZDE0Mjc3YWNjNjQ0NS4uMDdiNDY0ZjZhYjA1
OWFiNTNhN2I3OWUzNmQ0Y2ZmNzdmNzFjZGY4ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
c3R5bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0
eWxlVHJlZVJlc29sdmVyLmNwcApAQCAtMjgyLDcgKzI4Miw3IEBAIHN0ZDo6b3B0aW9uYWw8RWxl
bWVudFVwZGF0ZT4gVHJlZVJlc29sdmVyOjpyZXNvbHZlUHNldWRvU3R5bGUoRWxlbWVudCYgZWxl
bWVudCwKICAgICBpZiAoIWVsZW1lbnRVcGRhdGUuc3R5bGUtPmhhc1BzZXVkb1N0eWxlKHBzZXVk
b0lkKSkKICAgICAgICAgcmV0dXJuIHsgfTsKICAgICAKLSAgICBhdXRvJiBwYXJlbnRTdHlsZSA9
ICplbGVtZW50VXBkYXRlLnN0eWxlOworICAgIGF1dG8mIHBhcmVudFN0eWxlID0gcHNldWRvSWQg
PT0gUHNldWRvSWQ6OkJhY2tkcm9wID8gZWxlbWVudC5kb2N1bWVudCgpLnJlbmRlclN0eWxlKCkg
OiAqZWxlbWVudFVwZGF0ZS5zdHlsZTsKICAgICBhdXRvKiBwYXJlbnRCb3hTdHlsZSA9IHBhcmVu
dEJveFN0eWxlRm9yUHNldWRvKGVsZW1lbnRVcGRhdGUpOwogICAgIAogICAgIGF1dG8gcHNldWRv
U3R5bGUgPSBzY29wZSgpLnJlc29sdmVyLT5wc2V1ZG9TdHlsZUZvckVsZW1lbnQoZWxlbWVudCwg
eyBwc2V1ZG9JZCB9LCBwYXJlbnRTdHlsZSwgcGFyZW50Qm94U3R5bGUsICZzY29wZSgpLnNlbGVj
dG9yRmlsdGVyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL0NvbnRyb2xsZXJzL0NTU01hbmFnZXIuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNl
ckludGVyZmFjZS9Db250cm9sbGVycy9DU1NNYW5hZ2VyLmpzCmluZGV4IDJmNjNiYmM0OTg5YjVh
MTVlMTRhNTUxZWNlY2Q5N2I3ZTI1MjUzYTUuLmFkMDYxYmQxNjU2NzliZjczOTRmYzg3ZGU5ZWZj
Yzk2ODM0ZjllNzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL0NvbnRyb2xsZXJzL0NTU01hbmFnZXIuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJ
L1VzZXJJbnRlcmZhY2UvQ29udHJvbGxlcnMvQ1NTTWFuYWdlci5qcwpAQCAtMTU1LDYgKzE1NSw4
IEBAIFdJLkNTU01hbmFnZXIgPSBjbGFzcyBDU1NNYW5hZ2VyIGV4dGVuZHMgV0kuT2JqZWN0CiAg
ICAgICAgICAgICByZXR1cm4gV0kudW5sb2NhbGl6ZWRTdHJpbmcoIjo6YWZ0ZXIiKTsKICAgICAg
ICAgY2FzZSBDU1NNYW5hZ2VyLlBzZXVkb1NlbGVjdG9yTmFtZXMuU2VsZWN0aW9uOgogICAgICAg
ICAgICAgcmV0dXJuIFdJLnVubG9jYWxpemVkU3RyaW5nKCI6OnNlbGVjdGlvbiIpOworICAgICAg
ICBjYXNlIENTU01hbmFnZXIuUHNldWRvU2VsZWN0b3JOYW1lcy5CYWNrZHJvcDoKKyAgICAgICAg
ICAgIHJldHVybiBXSS51bmxvY2FsaXplZFN0cmluZygiOjpiYWNrZHJvcCIpOwogICAgICAgICBj
YXNlIENTU01hbmFnZXIuUHNldWRvU2VsZWN0b3JOYW1lcy5TY3JvbGxiYXI6CiAgICAgICAgICAg
ICByZXR1cm4gV0kudW5sb2NhbGl6ZWRTdHJpbmcoIjo6c2Nyb2xsYmFyIik7CiAgICAgICAgIGNh
c2UgQ1NTTWFuYWdlci5Qc2V1ZG9TZWxlY3Rvck5hbWVzLlNjcm9sbGJhclRodW1iOgpAQCAtNjg0
LDYgKzY4Niw3IEBAIFdJLkNTU01hbmFnZXIuQXBwZWFyYW5jZSA9IHsKIFdJLkNTU01hbmFnZXIu
UHNldWRvU2VsZWN0b3JOYW1lcyA9IHsKICAgICBBZnRlcjogImFmdGVyIiwKICAgICBCZWZvcmU6
ICJiZWZvcmUiLAorICAgIEJhY2tkcm9wOiAiYmFja2Ryb3AiLAogICAgIEZpcnN0TGV0dGVyOiAi
Zmlyc3QtbGV0dGVyIiwKICAgICBGaXJzdExpbmU6ICJmaXJzdC1saW5lIiwKICAgICBIaWdobGln
aHQ6ICJoaWdobGlnaHQiLApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDJiMDIzMjBmYjJkYTAyZGE5NGE0NGQ0M2I0YzBjZjE3
YTBiN2Y3N2IuLjM5OTUyN2FkMjViMDA1NGYxNWE2Mzc3NzNiMmJkZDczMWQ3ZDA3OTMgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
QEAgLTEsMyArMSwxNSBAQAorMjAyMS0wOC0xMSAgVGltIE5ndXllbiAgPG50aW1AYXBwbGUuY29t
PgorCisgICAgICAgIEltcGxlbWVudCA6OmJhY2tkcm9wIHBzZXVkbyBlbGVtZW50CisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjc4MDEKKworICAgICAg
ICBUaGlzIGFkZHMgVUEgc3R5bGVzLCBSZW5kZXJUcmVlQnVpbGRlciBzdXBwb3J0IGFuZCBXZWJJ
bnNwZWN0b3Igc3VwcG9ydCBmb3IgOjpiYWNrZHJvcC4KKyAgICAgICAgU29tZSBpbXBvcnRlZCBi
bGluayB0ZXN0cyBub3cgc3RhcnQgcGFzc2luZywgc29tZSBzdGlsbCBuZWVkIHByb3BlciB0b3Ag
bGF5ZXIgc3VwcG9ydC4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIFRlc3RFeHBlY3RhdGlvbnM6CisKIDIwMjEtMDgtMTEgIEF5dW1pIEtvamltYSAg
PGF5dW1pX2tvamltYUBhcHBsZS5jb20+CiAKICAgICAgICAgWyBXaW4gRVdTIF0gZmFzdC9mb3Jt
cy9pbnB1dC1iYXNlbGluZS5odG1sIGlzIGZsYWt5IGNyYXNoaW5nLgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy9DaGFuZ2VMb2cKaW5kZXggOWQxMjNmMzJlMDEzMTBhZTBjYzJmMDRmNWMwMmIyZDNlMmRkOGM2
NS4uZDcxNDM3NmIwY2RmM2NlZWI4NjBmM2RiZmM0ZWQ0NDZiYzcxN2ZjZCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjEtMDgtMTEgIFRpbSBOZ3V5
ZW4gIDxudGltQGFwcGxlLmNvbT4KKworICAgICAgICBJbXBsZW1lbnQgOjpiYWNrZHJvcCBwc2V1
ZG8gZWxlbWVudAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjI3ODAxCisKKyAgICAgICAgVGhpcyBhZGRzIFVBIHN0eWxlcywgUmVuZGVyVHJlZUJ1aWxk
ZXIgc3VwcG9ydCBhbmQgV2ViSW5zcGVjdG9yIHN1cHBvcnQgZm9yIDo6YmFja2Ryb3AuCisgICAg
ICAgIFNvbWUgaW1wb3J0ZWQgYmxpbmsgdGVzdHMgbm93IHN0YXJ0IHBhc3NpbmcsIHNvbWUgc3Rp
bGwgbmVlZCBwcm9wZXIgdG9wIGxheWVyIHN1cHBvcnQuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy12
YWx1ZXMvY2gtZW1wdHktcHNldWRvLXJlY2FsYy1vbi1mb250LWxvYWQtZXhwZWN0ZWQudHh0Ogor
CiAyMDIxLTA4LTExICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAg
SFRNTE1ldGFFbGVtZW50IGh0dHAtZXF1aXYgc2hvdWxkIG5vdCBiZSBwcm9jZXNzZWQgaW4gc2hh
ZG93IHRyZWVzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5
b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwppbmRleCAzMTU2MjQ5NzQ2MmVkZWFjNDJlNzA0ZWE5
MDczMDI4N2U3ZmE1MzY1Li45OGUyM2NhOGE2MjUwY2ZjYjY5MTEzZTJhZjZjYTJkOTg5YzkyYWU0
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRl
c3RzL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTIzNjksMTcgKzIzNjksMTAgQEAgbG9hZGVyL3N0YXRl
b2JqZWN0cy9yZXBsYWNlc3RhdGUtc2l6ZS5odG1sIFsgU2xvdyBdCiBpbXBvcnRlZC9ibGluay9m
YXN0L211bHRpY29sL291dGxpbmVzLWF0LWNvbHVtbi1ib3VuZGFyaWVzLmh0bWwgWyBJbWFnZU9u
bHlGYWlsdXJlIF0KIGZhc3QvbXVsdGljb2wvbXVsdGljb2wtd2l0aC1jaGlsZC1yZW5kZXJMYXll
ci1mb3ItaW5wdXQuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQogCi0jIDo6YmFja2Ryb3AKLXdl
YmtpdC5vcmcvYi8yMjc4MDEgaW1wb3J0ZWQvYmxpbmsvZGlhbG9nL2JhY2tkcm9wLWRlc2NlbmRh
bnQtc2VsZWN0b3IuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzIyNzgw
MSBpbXBvcnRlZC9ibGluay9kaWFsb2cvYmFja2Ryb3AtZG9lcy1ub3QtaW5oZXJpdC5odG1sIFsg
SW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMjI3ODAxIGltcG9ydGVkL2JsaW5rL2Rp
YWxvZy9iYWNrZHJvcC1keW5hbWljLXN0eWxlLWNoYW5nZS5odG1sIFsgSW1hZ2VPbmx5RmFpbHVy
ZSBdCi13ZWJraXQub3JnL2IvMjI3ODAxIGltcG9ydGVkL2JsaW5rL2RpYWxvZy9iYWNrZHJvcC1p
bi1mbG93Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8yMjc4MDEgaW1w
b3J0ZWQvYmxpbmsvZGlhbG9nL2JhY2tkcm9wLXN0YWNraW5nLW9yZGVyLmh0bWwgWyBJbWFnZU9u
bHlGYWlsdXJlIF0KLQogIyBUb3AgbGF5ZXIgdGVzdHMKK3dlYmtpdC5vcmcvYi84NDc5NiBpbXBv
cnRlZC9ibGluay9kaWFsb2cvYmFja2Ryb3AtaW4tZmxvdy5odG1sIFsgSW1hZ2VPbmx5RmFpbHVy
ZSBdCit3ZWJraXQub3JnL2IvODQ3OTYgaW1wb3J0ZWQvYmxpbmsvZGlhbG9nL2JhY2tkcm9wLXN0
YWNraW5nLW9yZGVyLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi84NDc5
NiBpbXBvcnRlZC9ibGluay9kaWFsb2cvZG9udC1zaGFyZS1zdHlsZS10by10b3AtbGF5ZXIuaHRt
bCBbIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzg0Nzk2IGltcG9ydGVkL2JsaW5r
L2RpYWxvZy9tb2RhbC1kaWFsb2ctYmFja2Ryb3AuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQot
d2Via2l0Lm9yZy9iLzg0Nzk2IGltcG9ydGVkL2JsaW5rL2RpYWxvZy9tb2RhbC1kaWFsb2ctZ2Vu
ZXJhdGVkLWNvbnRlbnQuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzg0
Nzk2IGltcG9ydGVkL2JsaW5rL2RpYWxvZy9tb2RhbC1kaWFsb2ctaW4tcmVwbGFjZWQtcmVuZGVy
ZXIuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzg0Nzk2IGltcG9ydGVk
L2JsaW5rL2RpYWxvZy9tb2RhbC1kaWFsb2ctaW4tdGFibGUtY29sdW1uLmh0bWwgWyBJbWFnZU9u
bHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi84NDc5NiBpbXBvcnRlZC9ibGluay9kaWFsb2cvcmVt
b3ZlZC1lbGVtZW50LWlzLXJlbW92ZWQtZnJvbS10b3AtbGF5ZXIuaHRtbCBbIEltYWdlT25seUZh
aWx1cmUgXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3MvY3NzLXZhbHVlcy9jaC1lbXB0eS1wc2V1ZG8tcmVjYWxjLW9uLWZvbnQtbG9h
ZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3MtdmFsdWVzL2NoLWVtcHR5LXBzZXVkby1yZWNhbGMtb24tZm9udC1sb2FkLWV4
cGVjdGVkLnR4dAppbmRleCA2OWM3ZWE5ODQ3YzY5OWYyNWM1MThhNmIxNzdhZTJhYzViZDVmYzdi
Li4wMTY2MWZhOTFmNTkzNjczMmQzNTlmMjU3NWI4MDE5MmI0MGM3YWU5IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdmFsdWVz
L2NoLWVtcHR5LXBzZXVkby1yZWNhbGMtb24tZm9udC1sb2FkLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdmFsdWVz
L2NoLWVtcHR5LXBzZXVkby1yZWNhbGMtb24tZm9udC1sb2FkLWV4cGVjdGVkLnR4dApAQCAtMSw1
ICsxLDUgQEAKIAotRkFJTCBjaCBpbiBwc2V1ZG8tZWxlbWVudCA6OmJlZm9yZSBzaG91bGQgYmUg
cmVjYWxjdWxhdGVkIGFmdGVyIGxvYWRpbmcgYSB3ZWIgZm9udCBhc3NlcnRfbGVzc190aGFuOiBl
eHBlY3RlZCBhIG51bWJlciBsZXNzIHRoYW4gMjQgYnV0IGdvdCBOYU4KLUZBSUwgY2ggaW4gcHNl
dWRvLWVsZW1lbnQgOjphZnRlciBzaG91bGQgYmUgcmVjYWxjdWxhdGVkIGFmdGVyIGxvYWRpbmcg
YSB3ZWIgZm9udCBhc3NlcnRfbGVzc190aGFuOiBleHBlY3RlZCBhIG51bWJlciBsZXNzIHRoYW4g
MjQgYnV0IGdvdCBOYU4KLUZBSUwgY2ggaW4gcHNldWRvLWVsZW1lbnQgOjpiYWNrZHJvcCBzaG91
bGQgYmUgcmVjYWxjdWxhdGVkIGFmdGVyIGxvYWRpbmcgYSB3ZWIgZm9udCBhc3NlcnRfbGVzc190
aGFuOiBleHBlY3RlZCBhIG51bWJlciBsZXNzIHRoYW4gMjQgYnV0IGdvdCBOYU4KK1BBU1MgY2gg
aW4gcHNldWRvLWVsZW1lbnQgOjpiZWZvcmUgc2hvdWxkIGJlIHJlY2FsY3VsYXRlZCBhZnRlciBs
b2FkaW5nIGEgd2ViIGZvbnQKK1BBU1MgY2ggaW4gcHNldWRvLWVsZW1lbnQgOjphZnRlciBzaG91
bGQgYmUgcmVjYWxjdWxhdGVkIGFmdGVyIGxvYWRpbmcgYSB3ZWIgZm9udAorUEFTUyBjaCBpbiBw
c2V1ZG8tZWxlbWVudCA6OmJhY2tkcm9wIHNob3VsZCBiZSByZWNhbGN1bGF0ZWQgYWZ0ZXIgbG9h
ZGluZyBhIHdlYiBmb250CiAK
</data>
<flag name="commit-queue"
          id="458211"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>435408</attachid>
            <date>2021-08-12 03:42:55 -0700</date>
            <delta_ts>2021-08-12 04:08:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227801-20210812124254.patch</filename>
            <type>text/plain</type>
            <size>21921</size>
            <attacher name="Tim Nguyen (:ntim)">ntim</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgwOTIzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAx
ZDM4N2Q3MjBmMzEyNjFlMjRkMmU5ZTRmYTM5ZTBhOGIwMDhjMmU3Li5mZjA1MGVlOGVmZDllZDQ5
OGYxMWE2NDU5YjdjZjc1YmFjMzg1M2FhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNSBAQAorMjAyMS0wOC0xMSAgVGltIE5ndXllbiAgPG50aW1AYXBwbGUuY29tPgorCisg
ICAgICAgIEltcGxlbWVudCA6OmJhY2tkcm9wIHBzZXVkbyBlbGVtZW50CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjc4MDEKKworICAgICAgICBUaGlz
IGFkZHMgVUEgc3R5bGVzLCBSZW5kZXJUcmVlQnVpbGRlciBzdXBwb3J0IGFuZCBXZWJJbnNwZWN0
b3Igc3VwcG9ydCBmb3IgOjpiYWNrZHJvcC4KKyAgICAgICAgU29tZSBpbXBvcnRlZCBibGluayB0
ZXN0cyBub3cgc3RhcnQgcGFzc2luZywgc29tZSBzdGlsbCBuZWVkIHByb3BlciB0b3AgbGF5ZXIg
c3VwcG9ydC4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIGluc3BlY3Rvci9wcm90b2NvbC9DU1MuanNvbjoKKwogMjAyMS0wOC0xMSAgWXVzdWtlIFN1
enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgogCiAgICAgICAgIFdURkNyYXNoIGluIEpTQzo6TGV4
ZXI8Y2hhcjE2X3Q+OjphcHBlbmQ4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjUwMTU5NjEzNzExMDU0MWRlYmQ3
MDY5YWEzZmYwNjVhNGFmZjM4NC4uMWFjNDk1NjMwZGVlODg0ZmQ5NmY4MGI2MjUzMGE2YTdlYzU3
OGVkNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDIxLTA4LTExICBUaW0gTmd1eWVu
ICA8bnRpbUBhcHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IDo6YmFja2Ryb3AgcHNldWRv
IGVsZW1lbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIyNzgwMQorCisgICAgICAgIFRoaXMgYWRkcyBVQSBzdHlsZXMsIFJlbmRlclRyZWVCdWlsZGVy
IHN1cHBvcnQgYW5kIFdlYkluc3BlY3RvciBzdXBwb3J0IGZvciA6OmJhY2tkcm9wLgorICAgICAg
ICBTb21lIGltcG9ydGVkIGJsaW5rIHRlc3RzIG5vdyBzdGFydCBwYXNzaW5nLCBzb21lIHN0aWxs
IG5lZWQgcHJvcGVyIHRvcCBsYXllciBzdXBwb3J0LgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgICogY3NzL0NTU1NlbGVjdG9yLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkNTU1NlbGVjdG9yOjpwc2V1ZG9JZCk6CisgICAgICAgICogY3NzL0NTU1NlbGVj
dG9yLmg6CisgICAgICAgICogY3NzL1NlbGVjdG9yUHNldWRvRWxlbWVudFR5cGVNYXAuaW46Cisg
ICAgICAgICogY3NzL2RpYWxvZy5jc3M6CisgICAgICAgIChkaWFsb2c6OmJhY2tkcm9wKToKKyAg
ICAgICAgKDo6YmFja2Ryb3ApOgorICAgICAgICAqIGRvbS9FbGVtZW50Lmg6CisgICAgICAgIChX
ZWJDb3JlOjpFbGVtZW50Ojppc0luVG9wTGF5ZXIgY29uc3QpOgorICAgICAgICAqIGluc3BlY3Rv
ci9hZ2VudHMvSW5zcGVjdG9yQ1NTQWdlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6cHJvdG9j
b2xWYWx1ZUZvclBzZXVkb0lkKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJFbGVtZW50OjpiYWNrZHJvcFJlbmRlcmVyIGNv
bnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckVsZW1lbnQ6OnNldEJhY2tkcm9wUmVuZGVy
ZXIpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJFbGVtZW50Lmg6CisgICAgICAgICogcmVu
ZGVyaW5nL1JlbmRlck9iamVjdC5oOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9SZW5kZXJT
dHlsZUNvbnN0YW50cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpvcGVyYXRvcjw8KToKKyAgICAg
ICAgKiByZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaDoKKyAgICAgICAgKiBy
ZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6UmVuZGVyVHJlZUJ1aWxkZXI6OmRlc3Ryb3lBbmRDbGVhblVwQW5vbnltb3VzV3JhcHBlcnMp
OgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVHJlZUJ1aWxkZXI6OnVwZGF0ZUFmdGVyRGVzY2Vu
ZGFudHMpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVHJlZUJ1aWxkZXI6OnVwZGF0ZUJhY2tk
cm9wUmVuZGVyZXIpOgorICAgICAgICAqIHJlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlQnVp
bGRlci5oOgorICAgICAgICAqIHN0eWxlL1N0eWxlVHJlZVJlc29sdmVyLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlN0eWxlOjpUcmVlUmVzb2x2ZXI6OnJlc29sdmVQc2V1ZG9TdHlsZSk6CisKIDIw
MjEtMDgtMTEgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIE1l
ZGlhIGVsZW1lbnQgaXMgbm90IGFsd2F5cyBhdXRvcGxheWluZyB3aGVuIGdvaW5nIGZyb20gYmFj
a2dyb3VuZCB0byBmb3JlZ3JvdW5kIGlmIGl0IGlzIGluaXRpYWxseSBub3QgaW4gdmlld3BvcnQK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IDFiZTNjOWY1MDA0YzJjM2MzYzc2OTM2NjkxYTE0
YjQ2MTM1MzFlYmIuLjg5YTk3ZmIzOTE0YTNkNWE2NmVhOGNkYTAyYjhmMGJjNjYxNjY1M2MgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTA4LTExICBUaW0g
Tmd1eWVuICA8bnRpbUBhcHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IDo6YmFja2Ryb3Ag
cHNldWRvIGVsZW1lbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIyNzgwMQorCisgICAgICAgIFRoaXMgYWRkcyBVQSBzdHlsZXMsIFJlbmRlclRyZWVC
dWlsZGVyIHN1cHBvcnQgYW5kIFdlYkluc3BlY3RvciBzdXBwb3J0IGZvciA6OmJhY2tkcm9wLgor
ICAgICAgICBTb21lIGltcG9ydGVkIGJsaW5rIHRlc3RzIG5vdyBzdGFydCBwYXNzaW5nLCBzb21l
IHN0aWxsIG5lZWQgcHJvcGVyIHRvcCBsYXllciBzdXBwb3J0LgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVXNlckludGVyZmFjZS9Db250cm9sbGVy
cy9DU1NNYW5hZ2VyLmpzOgorICAgICAgICAoV0kuQ1NTTWFuYWdlci5kaXNwbGF5TmFtZUZvclBz
ZXVkb0lkKToKKwogMjAyMS0wOC0wMyAgU29uaWEgU2luZ2xhICA8c29uaWFzaW5nbGEuMTgxMkBn
bWFpbC5jb20+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogQWRkIHN0YW5kYXJkIGxvZ2ljYWwg
cHJvcGVydGllcyB0byBDU1Mga2V5d29yZCBjb21wbGV0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Byb3RvY29sL0NTUy5qc29uIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9DU1MuanNvbgppbmRleCBjOWViNTc2YmQ3YzI1
OTM0YWE1OWNiZjMyZTFjY2NmOTMzOTE3Y2U4Li40YzYyZGU5MGExNTBjNjIzZGM1YTA3NDUyYWE0
YjQzNzliMjg0NmY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9y
L3Byb3RvY29sL0NTUy5qc29uCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Iv
cHJvdG9jb2wvQ1NTLmpzb24KQEAgLTQzLDYgKzQzLDcgQEAKICAgICAgICAgICAgICAgICAiYmVm
b3JlIiwKICAgICAgICAgICAgICAgICAiYWZ0ZXIiLAogICAgICAgICAgICAgICAgICJzZWxlY3Rp
b24iLAorICAgICAgICAgICAgICAgICJiYWNrZHJvcCIsCiAgICAgICAgICAgICAgICAgInNjcm9s
bGJhciIsCiAgICAgICAgICAgICAgICAgInNjcm9sbGJhci10aHVtYiIsCiAgICAgICAgICAgICAg
ICAgInNjcm9sbGJhci1idXR0b24iLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NT
U1NlbGVjdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWxlY3Rvci5jcHAKaW5kZXgg
YzE1YzYyOTJlZjhiNTIyNDIxOTFlYmM0YzQxNTA1MmU1ZTIyNGE0YS4uNjg1MGU4NGY4YmYwYzU0
ODExNzQ2MTI1MDY4ZTAwMzgwMmU5MmQ1OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1NlbGVjdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2VsZWN0b3IuY3Bw
CkBAIC0yMzIsNiArMjMyLDggQEAgUHNldWRvSWQgQ1NTU2VsZWN0b3I6OnBzZXVkb0lkKFBzZXVk
b0VsZW1lbnRUeXBlIHR5cGUpCiAgICAgICAgIHJldHVybiBQc2V1ZG9JZDo6SGlnaGxpZ2h0Owog
ICAgIGNhc2UgUHNldWRvRWxlbWVudE1hcmtlcjoKICAgICAgICAgcmV0dXJuIFBzZXVkb0lkOjpN
YXJrZXI7CisgICAgY2FzZSBQc2V1ZG9FbGVtZW50QmFja2Ryb3A6CisgICAgICAgIHJldHVybiBQ
c2V1ZG9JZDo6QmFja2Ryb3A7CiAgICAgY2FzZSBQc2V1ZG9FbGVtZW50QmVmb3JlOgogICAgICAg
ICByZXR1cm4gUHNldWRvSWQ6OkJlZm9yZTsKICAgICBjYXNlIFBzZXVkb0VsZW1lbnRBZnRlcjoK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWxlY3Rvci5oIGIvU291cmNlL1dl
YkNvcmUvY3NzL0NTU1NlbGVjdG9yLmgKaW5kZXggNWI0YjlmMTVmMzM0ZDI0YjJjYjJjMWJiZTA5
NjRkMGY3ZGU4MGEwMy4uYmM4M2FmZDkxNzQwYTExMjBmMzFkODQ2NzljOWQxMjZjN2NjMWY5NSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1NlbGVjdG9yLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1NlbGVjdG9yLmgKQEAgLTE4MCw2ICsxODAsNyBAQCBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAgICAgICAgIGVudW0gUHNldWRvRWxlbWVudFR5cGUgewogICAgICAgICAgICAg
UHNldWRvRWxlbWVudFVua25vd24gPSAwLAogICAgICAgICAgICAgUHNldWRvRWxlbWVudEFmdGVy
LAorICAgICAgICAgICAgUHNldWRvRWxlbWVudEJhY2tkcm9wLAogICAgICAgICAgICAgUHNldWRv
RWxlbWVudEJlZm9yZSwKICNpZiBFTkFCTEUoVklERU8pCiAgICAgICAgICAgICBQc2V1ZG9FbGVt
ZW50Q3VlLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1NlbGVjdG9yUHNldWRvRWxl
bWVudFR5cGVNYXAuaW4gYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JQc2V1ZG9FbGVtZW50
VHlwZU1hcC5pbgppbmRleCAwYjVlZmM2Njg0Y2I1NmZlZWUwNTkyZTczZjg2YzYyZTBiMmMyY2Uy
Li5lMWU1MTk0OGZlMjI3NjNhMTdkZTE4ODk0Y2Q0Nzk4YTk3MGEyMDQxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JQc2V1ZG9FbGVtZW50VHlwZU1hcC5pbgorKysgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JQc2V1ZG9FbGVtZW50VHlwZU1hcC5pbgpAQCAtMSw0
ICsxLDUgQEAKIGFmdGVyCitiYWNrZHJvcAogYmVmb3JlCiAjaWYgRU5BQkxFKFZJREVPKQogY3Vl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvZGlhbG9nLmNzcyBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9kaWFsb2cuY3NzCmluZGV4IGI2MWRjOWQ3NmYyMGJjMDRjNDA0NjU2YjEyYzRjOGFk
YWNiOTA5NjYuLjFlN2U1YTE1MjBmMTMyYjY5MDQ2ZDk0ZTJlMmExZGYzMDQ1M2IwNWEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9kaWFsb2cuY3NzCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9kaWFsb2cuY3NzCkBAIC0yNCwzICsyNCwxNiBAQCBkaWFsb2c6LWludGVybmFsLW1vZGFs
LWRpYWxvZyB7CiAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA2cHggLSAyZW0pOwogICAgIG1h
eC1oZWlnaHQ6IGNhbGMoMTAwJSAtIDZweCAtIDJlbSk7CiB9CisKK2RpYWxvZzo6YmFja2Ryb3Ag
eworICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsKK30KKworOjpiYWNrZHJvcCB7
CisgICAgZGlzcGxheTogYmxvY2s7CisgICAgcG9zaXRpb246IGZpeGVkOworICAgIHRvcDogMDsK
KyAgICBsZWZ0OiAwOworICAgIHJpZ2h0OiAwOworICAgIGJvdHRvbTogMDsKK30KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxl
bWVudC5oCmluZGV4IDliNDA5Y2E5ZjNkOTk4NzY1ZTIxZWUzZTU3MDllZDM2OTM4MDQwNjAuLjU4
MmRiMTIzYjZkOTc1Nzc0ZWE1ZmMyNDJhODM2MzFjODQ3M2JlM2UgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQu
aApAQCAtNTExLDYgKzUxMSw4IEBAIHB1YmxpYzoKICAgICBjb25zdCBSZW5kZXJTdHlsZSogbGFz
dFN0eWxlQ2hhbmdlRXZlbnRTdHlsZShQc2V1ZG9JZCkgY29uc3Q7CiAgICAgdm9pZCBzZXRMYXN0
U3R5bGVDaGFuZ2VFdmVudFN0eWxlKFBzZXVkb0lkLCBzdGQ6OnVuaXF1ZV9wdHI8Y29uc3QgUmVu
ZGVyU3R5bGU+JiYpOwogCisgICAgYm9vbCBpc0luVG9wTGF5ZXIoKSBjb25zdCB7IHJldHVybiBk
b2N1bWVudCgpLnRvcExheWVyRWxlbWVudHMoKS5jb250YWlucyhtYWtlUmVmKCpjb25zdF9jYXN0
PEVsZW1lbnQqPih0aGlzKSkpOyB9CisKICNpZiBFTkFCTEUoRlVMTFNDUkVFTl9BUEkpCiAgICAg
Ym9vbCBjb250YWluc0Z1bGxTY3JlZW5FbGVtZW50KCkgY29uc3QgeyByZXR1cm4gaGFzTm9kZUZs
YWcoTm9kZUZsYWc6OkNvbnRhaW5zRnVsbFNjcmVlbkVsZW1lbnQpOyB9CiAgICAgdm9pZCBzZXRD
b250YWluc0Z1bGxTY3JlZW5FbGVtZW50KGJvb2wpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JDU1NBZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckNTU0FnZW50LmNwcAppbmRleCA2NWE4MTMxMjlk
NjMxNzM5YWIwNTYwNDFmOTc1MGJkMjg4OGUyYzQ4Li4zZWMxNGY2NzFlZDg2NTUxYzRjYzlkMWVk
Yjg2YzdhZmEwMGNmMjVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdl
bnRzL0luc3BlY3RvckNTU0FnZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
YWdlbnRzL0luc3BlY3RvckNTU0FnZW50LmNwcApAQCAtNDQ5LDYgKzQ0OSw4IEBAIHN0YXRpYyBz
dGQ6Om9wdGlvbmFsPFByb3RvY29sOjpDU1M6OlBzZXVkb0lkPiBwcm90b2NvbFZhbHVlRm9yUHNl
dWRvSWQoUHNldWRvSWQKICAgICAgICAgcmV0dXJuIFByb3RvY29sOjpDU1M6OlBzZXVkb0lkOjpG
aXJzdExldHRlcjsKICAgICBjYXNlIFBzZXVkb0lkOjpNYXJrZXI6CiAgICAgICAgIHJldHVybiBQ
cm90b2NvbDo6Q1NTOjpQc2V1ZG9JZDo6TWFya2VyOworICAgIGNhc2UgUHNldWRvSWQ6OkJhY2tk
cm9wOgorICAgICAgICByZXR1cm4gUHJvdG9jb2w6OkNTUzo6UHNldWRvSWQ6OkJhY2tkcm9wOwog
ICAgIGNhc2UgUHNldWRvSWQ6OkJlZm9yZToKICAgICAgICAgcmV0dXJuIFByb3RvY29sOjpDU1M6
OlBzZXVkb0lkOjpCZWZvcmU7CiAgICAgY2FzZSBQc2V1ZG9JZDo6QWZ0ZXI6CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5jcHAKaW5kZXggZjg3ZDA1ZjM5OWU4NDkwOGI1
OTk4ZjVjOWY5NTZjOWFkNWNjMmYxNy4uZTgwZWQ3MWRhZTQxZDMyNmRiMjA1NjcyYzRlYjg0NzEy
MjQxYmY2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVsZW1l
bnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbGVtZW50LmNwcApA
QCAtMjM3NSw0ICsyMzc1LDE0IEBAIHN0ZDo6dW5pcXVlX3B0cjxSZW5kZXJTdHlsZT4gUmVuZGVy
RWxlbWVudDo6YW5pbWF0ZWRTdHlsZSgpCiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAorUmVuZGVy
QmxvY2tGbG93KiBSZW5kZXJFbGVtZW50OjpiYWNrZHJvcFJlbmRlcmVyKCkgY29uc3QKK3sKKyAg
ICByZXR1cm4gaGFzUmFyZURhdGEoKSA/IHJhcmVEYXRhKCkuYmFja2Ryb3BSZW5kZXJlci5nZXQo
KSA6IG51bGxwdHI7Cit9CisKK3ZvaWQgUmVuZGVyRWxlbWVudDo6c2V0QmFja2Ryb3BSZW5kZXJl
cihSZW5kZXJCbG9ja0Zsb3cmIHJlbmRlcmVyKQoreworICAgIGVuc3VyZVJhcmVEYXRhKCkuYmFj
a2Ryb3BSZW5kZXJlciA9IG1ha2VXZWFrUHRyKHJlbmRlcmVyKTsKK30KKwogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVsZW1lbnQuaCBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJFbGVtZW50LmgKaW5kZXggMjM3N2JhOTcyYzRhYzk1Y2M4Zjc4
ZGQzMmRkZTgxOTQ5YzQ3ZmUyNS4uMGM0YWQ0M2U5YzRmYzJlMmRkNWY3NGQ4NTQ2MmUyMjhmOWE0
MWRhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVsZW1lbnQu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5oCkBAIC0yNTcs
NiArMjU3LDkgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBzdXNwZW5kQW5pbWF0aW9ucyhN
b25vdG9uaWNUaW1lID0gTW9ub3RvbmljVGltZSgpKSB7IH0KICAgICBzdGQ6OnVuaXF1ZV9wdHI8
UmVuZGVyU3R5bGU+IGFuaW1hdGVkU3R5bGUoKTsKIAorICAgIFJlbmRlckJsb2NrRmxvdyogYmFj
a2Ryb3BSZW5kZXJlcigpIGNvbnN0OworICAgIHZvaWQgc2V0QmFja2Ryb3BSZW5kZXJlcihSZW5k
ZXJCbG9ja0Zsb3cmKTsKKwogcHJvdGVjdGVkOgogICAgIGVudW0gQmFzZVR5cGVGbGFnIHsKICAg
ICAgICAgUmVuZGVyTGF5ZXJNb2RlbE9iamVjdEZsYWcgID0gMSA8PCAwLApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlck9iamVjdC5oCmluZGV4IDJmZDk2ODc5MDIyYTZhM2I4YWNjMzE2YWYx
ZTE1MDRhNjIzMjc0ZTcuLjU1NjdlNGRjMzUxZTU0ZjM4MTUyOWNhNjAwMGNjMWI5NDg1Y2MzNDAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmgKQEAgLTU5LDYgKzU5LDcg
QEAgY2xhc3MgUG9zaXRpb247CiBjbGFzcyBSZW5kZXJCb3hNb2RlbE9iamVjdDsKIGNsYXNzIFJl
bmRlcklubGluZTsKIGNsYXNzIFJlbmRlckJsb2NrOworY2xhc3MgUmVuZGVyQmxvY2tGbG93Owog
Y2xhc3MgUmVuZGVyRWxlbWVudDsKIGNsYXNzIFJlbmRlckZyYWdtZW50ZWRGbG93OwogY2xhc3Mg
UmVuZGVyR2VvbWV0cnlNYXA7CkBAIC05MzgsNiArOTM5LDcgQEAgcHJpdmF0ZToKIAogICAgICAg
ICAvLyBGcm9tIFJlbmRlckVsZW1lbnQKICAgICAgICAgc3RkOjp1bmlxdWVfcHRyPFJlbmRlclN0
eWxlPiBjYWNoZWRGaXJzdExpbmVTdHlsZTsKKyAgICAgICAgV2Vha1B0cjxSZW5kZXJCbG9ja0Zs
b3c+IGJhY2tkcm9wUmVuZGVyZXI7CiAgICAgfTsKICAgICAKICAgICBjb25zdCBSZW5kZXJPYmpl
Y3Q6OlJlbmRlck9iamVjdFJhcmVEYXRhJiByYXJlRGF0YSgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5jcHAK
aW5kZXggNDZhNTkyY2JkNGIwZGZiYjc3MDA1YjBlODVkZjkzOTY2MTQzODJlYS4uNWVkMTAzYzc1
MmMwMTkwNzE4M2RlOTM5NTQ1NDYyZTM5MjNkODIzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuY3BwCkBAIC04ODcs
NiArODg3LDcgQEAgVGV4dFN0cmVhbSYgb3BlcmF0b3I8PChUZXh0U3RyZWFtJiB0cywgUHNldWRv
SWQgcHNldWRvSWQpCiAgICAgY2FzZSBQc2V1ZG9JZDo6Rmlyc3RMZXR0ZXI6IHRzIDw8ICJmaXJz
dC1sZXR0ZXIiOyBicmVhazsKICAgICBjYXNlIFBzZXVkb0lkOjpIaWdobGlnaHQ6IHRzIDw8ICJo
aWdobGlnaHQiOyBicmVhazsKICAgICBjYXNlIFBzZXVkb0lkOjpNYXJrZXI6IHRzIDw8ICJtYXJr
ZXIiOyBicmVhazsKKyAgICBjYXNlIFBzZXVkb0lkOjpCYWNrZHJvcDogdHMgPDwgImJhY2tkcm9w
IjsgYnJlYWs7CiAgICAgY2FzZSBQc2V1ZG9JZDo6QmVmb3JlOiB0cyA8PCAiYmVmb3JlIjsgYnJl
YWs7CiAgICAgY2FzZSBQc2V1ZG9JZDo6QWZ0ZXI6IHRzIDw8ICJhZnRlciI7IGJyZWFrOwogICAg
IGNhc2UgUHNldWRvSWQ6OlNlbGVjdGlvbjogdHMgPDwgInNlbGVjdGlvbiI7IGJyZWFrOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3Rh
bnRzLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFu
dHMuaAppbmRleCA4MzliZGMyMGFiZjk2MTJhMzE3MTFlMWMzMDkwZTUyNGM1Nzc4NDExLi43M2Q0
YjlkNTlhY2ZlZmMxZTYzZTFhOTQ4ZTZiY2NlMGYxMzg3MDYzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaApAQCAtOTUs
NiArOTUsNyBAQCBlbnVtIGNsYXNzIFBzZXVkb0lkIDogdWludDE2X3QgewogICAgIEJlZm9yZSwK
ICAgICBBZnRlciwKICAgICBTZWxlY3Rpb24sCisgICAgQmFja2Ryb3AsCiAgICAgU2Nyb2xsYmFy
LAogCiAgICAgLy8gSW50ZXJuYWw6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvdXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL3VwZGF0aW5nL1JlbmRlclRyZWVCdWlsZGVyLmNwcAppbmRleCBlYjY2OGI0YmQ2Mzg2NjMw
OTk0ZTI2YWRkMmQxZTY1YzgzOTQ5OTlmLi5hYWNiYmM4MmQ0NDNjOWE2NWQ0ODEwYWZhNDI0ZmRi
NTlkODdiYTAxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcv
UmVuZGVyVHJlZUJ1aWxkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRh
dGluZy9SZW5kZXJUcmVlQnVpbGRlci5jcHAKQEAgLTgwNyw2ICs4MDcsMTIgQEAgdm9pZCBSZW5k
ZXJUcmVlQnVpbGRlcjo6ZGVzdHJveUFuZENsZWFuVXBBbm9ueW1vdXNXcmFwcGVycyhSZW5kZXJP
YmplY3QmIHJlbmRlcmUKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAorICAgIC8vIEFsc28gZGVz
dHJveSA6OmJhY2tkcm9wIGFsb25nIHdpdGggZWxlbWVudCBpZiB0aGVyZSBpcyBvbmUKKyAgICBp
ZiAoaXM8UmVuZGVyRWxlbWVudD4ocmVuZGVyZXJUb0Rlc3Ryb3kpKSB7CisgICAgICAgIGlmIChh
dXRvIGJhY2tkcm9wUmVuZGVyZXIgPSBkb3duY2FzdDxSZW5kZXJFbGVtZW50PihyZW5kZXJlclRv
RGVzdHJveSkuYmFja2Ryb3BSZW5kZXJlcigpKQorICAgICAgICAgICAgZGVzdHJveSgqYmFja2Ry
b3BSZW5kZXJlcik7CisgICAgfQorCiAgICAgYXV0byBpc0Fub255bW91c0FuZFNhZmVUb0RlbGV0
ZSA9IFtdIChjb25zdCBhdXRvJiByZW5kZXJlcikgewogICAgICAgICByZXR1cm4gcmVuZGVyZXIu
aXNBbm9ueW1vdXMoKSAmJiAhcmVuZGVyZXIuaXNSZW5kZXJWaWV3KCkgJiYgIXJlbmRlcmVyLmlz
UmVuZGVyRnJhZ21lbnRlZEZsb3coKTsKICAgICB9OwpAQCAtODc1LDYgKzg4MSw4IEBAIHZvaWQg
UmVuZGVyVHJlZUJ1aWxkZXI6OmRlc3Ryb3lBbmRDbGVhblVwQW5vbnltb3VzV3JhcHBlcnMoUmVu
ZGVyT2JqZWN0JiByZW5kZXJlCiAKIHZvaWQgUmVuZGVyVHJlZUJ1aWxkZXI6OnVwZGF0ZUFmdGVy
RGVzY2VuZGFudHMoUmVuZGVyRWxlbWVudCYgcmVuZGVyZXIpCiB7CisgICAgdXBkYXRlQmFja2Ry
b3BSZW5kZXJlcihyZW5kZXJlcik7CisKICAgICBpZiAoaXM8UmVuZGVyQmxvY2s+KHJlbmRlcmVy
KSkKICAgICAgICAgZmlyc3RMZXR0ZXJCdWlsZGVyKCkudXBkYXRlQWZ0ZXJEZXNjZW5kYW50cyhk
b3duY2FzdDxSZW5kZXJCbG9jaz4ocmVuZGVyZXIpKTsKICAgICBpZiAoaXM8UmVuZGVyTGlzdEl0
ZW0+KHJlbmRlcmVyKSkKQEAgLTg4Myw2ICs4OTEsNDcgQEAgdm9pZCBSZW5kZXJUcmVlQnVpbGRl
cjo6dXBkYXRlQWZ0ZXJEZXNjZW5kYW50cyhSZW5kZXJFbGVtZW50JiByZW5kZXJlcikKICAgICAg
ICAgbXVsdGlDb2x1bW5CdWlsZGVyKCkudXBkYXRlQWZ0ZXJEZXNjZW5kYW50cyhkb3duY2FzdDxS
ZW5kZXJCbG9ja0Zsb3c+KHJlbmRlcmVyKSk7CiB9CiAKK3ZvaWQgUmVuZGVyVHJlZUJ1aWxkZXI6
OnVwZGF0ZUJhY2tkcm9wUmVuZGVyZXIoUmVuZGVyRWxlbWVudCYgcmVuZGVyZXIpCit7CisgICAg
Ly8gRGVzdHJveSA6OmJhY2tkcm9wIGlmIG5ldyBlbGVtZW50IG5vIGxvbmdlciBpcyBpbiB0b3Ag
bGF5ZXIKKyAgICBpZiAocmVuZGVyZXIuZWxlbWVudCgpICYmICFyZW5kZXJlci5lbGVtZW50KCkt
PmlzSW5Ub3BMYXllcigpKSB7CisgICAgICAgIGlmIChhdXRvKiBiYWNrZHJvcFJlbmRlcmVyID0g
cmVuZGVyZXIuYmFja2Ryb3BSZW5kZXJlcigpKQorICAgICAgICAgICAgZGVzdHJveSgqYmFja2Ry
b3BSZW5kZXJlcik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICAvLyBVcGRhdGUgOjpi
YWNrZHJvcCByZW5kZXJlciBzdHlsZSBvciBjcmVhdGUgcmVuZGVyZXIKKyAgICBhdXRvIHN0eWxl
ID0gcmVuZGVyZXIuZ2V0Q2FjaGVkUHNldWRvU3R5bGUoUHNldWRvSWQ6OkJhY2tkcm9wLCByZW5k
ZXJlci5kb2N1bWVudCgpLnJlbmRlclN0eWxlKCkpOworICAgIGlmICghc3R5bGUgfHwgc3R5bGUt
PmRpc3BsYXkoKSA9PSBEaXNwbGF5VHlwZTo6Tm9uZSkKKyAgICAgICAgcmV0dXJuOworCisgICAg
YXV0byBuZXdTdHlsZSA9IFJlbmRlclN0eWxlOjpjbG9uZSgqc3R5bGUpOworICAgIFJlbmRlclB0
cjxSZW5kZXJCbG9ja0Zsb3c+IG5ld0JhY2tkcm9wUmVuZGVyZXI7CisgICAgYXV0byogYmFja2Ry
b3BSZW5kZXJlciA9IHJlbmRlcmVyLmJhY2tkcm9wUmVuZGVyZXIoKTsKKyAgICBpZiAoYmFja2Ry
b3BSZW5kZXJlcikKKyAgICAgICAgYmFja2Ryb3BSZW5kZXJlci0+c2V0U3R5bGUoV1RGTW92ZShu
ZXdTdHlsZSkpOworICAgIGVsc2UgeworICAgICAgICBuZXdCYWNrZHJvcFJlbmRlcmVyID0gV2Vi
Q29yZTo6Y3JlYXRlUmVuZGVyZXI8UmVuZGVyQmxvY2tGbG93PihyZW5kZXJlci5kb2N1bWVudCgp
LCBXVEZNb3ZlKG5ld1N0eWxlKSk7CisgICAgICAgIG5ld0JhY2tkcm9wUmVuZGVyZXItPmluaXRp
YWxpemVTdHlsZSgpOworICAgICAgICBiYWNrZHJvcFJlbmRlcmVyID0gbmV3QmFja2Ryb3BSZW5k
ZXJlci5nZXQoKTsKKyAgICAgICAgcmVuZGVyZXIuc2V0QmFja2Ryb3BSZW5kZXJlcigqYmFja2Ry
b3BSZW5kZXJlcik7CisgICAgfQorCisgICAgLy8gVXBkYXRlIG9yIGF0dGFjaCB0byByZW5kZXJl
ciBwYXJlbnQKKyAgICBSZW5kZXJFbGVtZW50KiBjdXJyZW50UGFyZW50ID0gYmFja2Ryb3BSZW5k
ZXJlci0+cGFyZW50KCk7CisgICAgUmVuZGVyRWxlbWVudCogbmV3UGFyZW50ID0gcmVuZGVyZXIu
cGFyZW50KCk7CisKKyAgICBBU1NFUlQobmV3UGFyZW50LCAiU2hvdWxkIGhhdmUgbmV3IHBhcmVu
dCIpOworCisgICAgaWYgKG5ld1BhcmVudCA9PSBjdXJyZW50UGFyZW50KQorICAgICAgICByZXR1
cm47CisKKyAgICBpZiAoY3VycmVudFBhcmVudCkKKyAgICAgICAgYXR0YWNoKCpuZXdQYXJlbnQs
IGRldGFjaCgqY3VycmVudFBhcmVudCwgKmJhY2tkcm9wUmVuZGVyZXIsIFJlbmRlclRyZWVCdWls
ZGVyOjpDYW5Db2xsYXBzZUFub255bW91c0Jsb2NrOjpObyksICZyZW5kZXJlcik7CisgICAgZWxz
ZQorICAgICAgICBhdHRhY2goKm5ld1BhcmVudCwgV1RGTW92ZShuZXdCYWNrZHJvcFJlbmRlcmVy
KSwgJnJlbmRlcmVyKTsKK30KKwogUmVuZGVyUHRyPFJlbmRlck9iamVjdD4gUmVuZGVyVHJlZUJ1
aWxkZXI6OmRldGFjaEZyb21SZW5kZXJHcmlkKFJlbmRlckdyaWQmIHBhcmVudCwgUmVuZGVyT2Jq
ZWN0JiBjaGlsZCkKIHsKICAgICBhdXRvIHRha2VuQ2hpbGQgPSBibG9ja0J1aWxkZXIoKS5kZXRh
Y2gocGFyZW50LCBjaGlsZCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
dXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91
cGRhdGluZy9SZW5kZXJUcmVlQnVpbGRlci5oCmluZGV4IGIxMjc5ODZiNTQ2YmMyMWRjZmUwNWI3
ZTBkNGE1Zjg0ZTBiZTFiNjAuLjM4YjdlNzJmNjJjMTliMWEyMTkwNzk4NzViMjQyODI4NDA0YWIx
NzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJU
cmVlQnVpbGRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5k
ZXJUcmVlQnVpbGRlci5oCkBAIC01NSw2ICs1NSw3IEBAIHB1YmxpYzoKICAgICB2b2lkIG1vdmUo
UmVuZGVyQm94TW9kZWxPYmplY3QmIGZyb20sIFJlbmRlckJveE1vZGVsT2JqZWN0JiB0bywgUmVu
ZGVyT2JqZWN0JiBjaGlsZCwgTm9ybWFsaXplQWZ0ZXJJbnNlcnRpb24pOwogCiAgICAgdm9pZCB1
cGRhdGVBZnRlckRlc2NlbmRhbnRzKFJlbmRlckVsZW1lbnQmKTsKKyAgICB2b2lkIHVwZGF0ZUJh
Y2tkcm9wUmVuZGVyZXIoUmVuZGVyRWxlbWVudCYpOwogICAgIHZvaWQgZGVzdHJveUFuZENsZWFu
VXBBbm9ueW1vdXNXcmFwcGVycyhSZW5kZXJPYmplY3QmIGNoaWxkKTsKICAgICB2b2lkIG5vcm1h
bGl6ZVRyZWVBZnRlclN0eWxlQ2hhbmdlKFJlbmRlckVsZW1lbnQmLCBSZW5kZXJTdHlsZSYgb2xk
U3R5bGUpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVRyZWVSZXNv
bHZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVRyZWVSZXNvbHZlci5jcHAKaW5k
ZXggMGM1MjhiMTliYzZjYzcyYjY1OTU2MjU2OWJjZDE0Mjc3YWNjNjQ0NS4uZGMzMmE1Y2Y4ZmRj
NzZjN2M5MjVkOTA4NjkyMzRjY2E3NTYxOThkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
c3R5bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0
eWxlVHJlZVJlc29sdmVyLmNwcApAQCAtMjgxLDEwICsyODEsMTAgQEAgc3RkOjpvcHRpb25hbDxF
bGVtZW50VXBkYXRlPiBUcmVlUmVzb2x2ZXI6OnJlc29sdmVQc2V1ZG9TdHlsZShFbGVtZW50JiBl
bGVtZW50LAogICAgICAgICByZXR1cm4geyB9OwogICAgIGlmICghZWxlbWVudFVwZGF0ZS5zdHls
ZS0+aGFzUHNldWRvU3R5bGUocHNldWRvSWQpKQogICAgICAgICByZXR1cm4geyB9OwotICAgIAot
ICAgIGF1dG8mIHBhcmVudFN0eWxlID0gKmVsZW1lbnRVcGRhdGUuc3R5bGU7CisKKyAgICBhdXRv
JiBwYXJlbnRTdHlsZSA9IHBzZXVkb0lkID09IFBzZXVkb0lkOjpCYWNrZHJvcCA/ICplbGVtZW50
LmRvY3VtZW50KCkucmVuZGVyU3R5bGUoKSA6ICplbGVtZW50VXBkYXRlLnN0eWxlOwogICAgIGF1
dG8qIHBhcmVudEJveFN0eWxlID0gcGFyZW50Qm94U3R5bGVGb3JQc2V1ZG8oZWxlbWVudFVwZGF0
ZSk7Ci0gICAgCisKICAgICBhdXRvIHBzZXVkb1N0eWxlID0gc2NvcGUoKS5yZXNvbHZlci0+cHNl
dWRvU3R5bGVGb3JFbGVtZW50KGVsZW1lbnQsIHsgcHNldWRvSWQgfSwgcGFyZW50U3R5bGUsIHBh
cmVudEJveFN0eWxlLCAmc2NvcGUoKS5zZWxlY3RvckZpbHRlcik7CiAgICAgaWYgKCFwc2V1ZG9T
dHlsZSkKICAgICAgICAgcmV0dXJuIHsgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0
b3JVSS9Vc2VySW50ZXJmYWNlL0NvbnRyb2xsZXJzL0NTU01hbmFnZXIuanMgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Db250cm9sbGVycy9DU1NNYW5hZ2VyLmpzCmluZGV4
IDJmNjNiYmM0OTg5YjVhMTVlMTRhNTUxZWNlY2Q5N2I3ZTI1MjUzYTUuLmFkMDYxYmQxNjU2Nzli
ZjczOTRmYzg3ZGU5ZWZjYzk2ODM0ZjllNzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0
b3JVSS9Vc2VySW50ZXJmYWNlL0NvbnRyb2xsZXJzL0NTU01hbmFnZXIuanMKKysrIGIvU291cmNl
L1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQ29udHJvbGxlcnMvQ1NTTWFuYWdlci5qcwpA
QCAtMTU1LDYgKzE1NSw4IEBAIFdJLkNTU01hbmFnZXIgPSBjbGFzcyBDU1NNYW5hZ2VyIGV4dGVu
ZHMgV0kuT2JqZWN0CiAgICAgICAgICAgICByZXR1cm4gV0kudW5sb2NhbGl6ZWRTdHJpbmcoIjo6
YWZ0ZXIiKTsKICAgICAgICAgY2FzZSBDU1NNYW5hZ2VyLlBzZXVkb1NlbGVjdG9yTmFtZXMuU2Vs
ZWN0aW9uOgogICAgICAgICAgICAgcmV0dXJuIFdJLnVubG9jYWxpemVkU3RyaW5nKCI6OnNlbGVj
dGlvbiIpOworICAgICAgICBjYXNlIENTU01hbmFnZXIuUHNldWRvU2VsZWN0b3JOYW1lcy5CYWNr
ZHJvcDoKKyAgICAgICAgICAgIHJldHVybiBXSS51bmxvY2FsaXplZFN0cmluZygiOjpiYWNrZHJv
cCIpOwogICAgICAgICBjYXNlIENTU01hbmFnZXIuUHNldWRvU2VsZWN0b3JOYW1lcy5TY3JvbGxi
YXI6CiAgICAgICAgICAgICByZXR1cm4gV0kudW5sb2NhbGl6ZWRTdHJpbmcoIjo6c2Nyb2xsYmFy
Iik7CiAgICAgICAgIGNhc2UgQ1NTTWFuYWdlci5Qc2V1ZG9TZWxlY3Rvck5hbWVzLlNjcm9sbGJh
clRodW1iOgpAQCAtNjg0LDYgKzY4Niw3IEBAIFdJLkNTU01hbmFnZXIuQXBwZWFyYW5jZSA9IHsK
IFdJLkNTU01hbmFnZXIuUHNldWRvU2VsZWN0b3JOYW1lcyA9IHsKICAgICBBZnRlcjogImFmdGVy
IiwKICAgICBCZWZvcmU6ICJiZWZvcmUiLAorICAgIEJhY2tkcm9wOiAiYmFja2Ryb3AiLAogICAg
IEZpcnN0TGV0dGVyOiAiZmlyc3QtbGV0dGVyIiwKICAgICBGaXJzdExpbmU6ICJmaXJzdC1saW5l
IiwKICAgICBIaWdobGlnaHQ6ICJoaWdobGlnaHQiLApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDJiMDIzMjBmYjJkYTAyZGE5
NGE0NGQ0M2I0YzBjZjE3YTBiN2Y3N2IuLjM5OTUyN2FkMjViMDA1NGYxNWE2Mzc3NzNiMmJkZDcz
MWQ3ZDA3OTMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMS0wOC0xMSAgVGltIE5ndXllbiAg
PG50aW1AYXBwbGUuY29tPgorCisgICAgICAgIEltcGxlbWVudCA6OmJhY2tkcm9wIHBzZXVkbyBl
bGVtZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
Mjc4MDEKKworICAgICAgICBUaGlzIGFkZHMgVUEgc3R5bGVzLCBSZW5kZXJUcmVlQnVpbGRlciBz
dXBwb3J0IGFuZCBXZWJJbnNwZWN0b3Igc3VwcG9ydCBmb3IgOjpiYWNrZHJvcC4KKyAgICAgICAg
U29tZSBpbXBvcnRlZCBibGluayB0ZXN0cyBub3cgc3RhcnQgcGFzc2luZywgc29tZSBzdGlsbCBu
ZWVkIHByb3BlciB0b3AgbGF5ZXIgc3VwcG9ydC4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIFRlc3RFeHBlY3RhdGlvbnM6CisKIDIwMjEtMDgtMTEg
IEF5dW1pIEtvamltYSAgPGF5dW1pX2tvamltYUBhcHBsZS5jb20+CiAKICAgICAgICAgWyBXaW4g
RVdTIF0gZmFzdC9mb3Jtcy9pbnB1dC1iYXNlbGluZS5odG1sIGlzIGZsYWt5IGNyYXNoaW5nLgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggOWQxMjNmMzJlMDEzMTBhZTBjYzJmMDRm
NWMwMmIyZDNlMmRkOGM2NS4uZDcxNDM3NmIwY2RmM2NlZWI4NjBmM2RiZmM0ZWQ0NDZiYzcxN2Zj
ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjEt
MDgtMTEgIFRpbSBOZ3V5ZW4gIDxudGltQGFwcGxlLmNvbT4KKworICAgICAgICBJbXBsZW1lbnQg
OjpiYWNrZHJvcCBwc2V1ZG8gZWxlbWVudAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjI3ODAxCisKKyAgICAgICAgVGhpcyBhZGRzIFVBIHN0eWxlcywg
UmVuZGVyVHJlZUJ1aWxkZXIgc3VwcG9ydCBhbmQgV2ViSW5zcGVjdG9yIHN1cHBvcnQgZm9yIDo6
YmFja2Ryb3AuCisgICAgICAgIFNvbWUgaW1wb3J0ZWQgYmxpbmsgdGVzdHMgbm93IHN0YXJ0IHBh
c3NpbmcsIHNvbWUgc3RpbGwgbmVlZCBwcm9wZXIgdG9wIGxheWVyIHN1cHBvcnQuCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy12YWx1ZXMvY2gtZW1wdHktcHNldWRvLXJlY2FsYy1vbi1mb250LWxvYWQt
ZXhwZWN0ZWQudHh0OgorCiAyMDIxLTA4LTExICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5j
b20+CiAKICAgICAgICAgSFRNTE1ldGFFbGVtZW50IGh0dHAtZXF1aXYgc2hvdWxkIG5vdCBiZSBw
cm9jZXNzZWQgaW4gc2hhZG93IHRyZWVzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9UZXN0RXhw
ZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwppbmRleCAzMTU2MjQ5NzQ2
MmVkZWFjNDJlNzA0ZWE5MDczMDI4N2U3ZmE1MzY1Li45OGUyM2NhOGE2MjUwY2ZjYjY5MTEzZTJh
ZjZjYTJkOTg5YzkyYWU0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25z
CisrKyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTIzNjksMTcgKzIzNjksMTAg
QEAgbG9hZGVyL3N0YXRlb2JqZWN0cy9yZXBsYWNlc3RhdGUtc2l6ZS5odG1sIFsgU2xvdyBdCiBp
bXBvcnRlZC9ibGluay9mYXN0L211bHRpY29sL291dGxpbmVzLWF0LWNvbHVtbi1ib3VuZGFyaWVz
Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIGZhc3QvbXVsdGljb2wvbXVsdGljb2wtd2l0aC1j
aGlsZC1yZW5kZXJMYXllci1mb3ItaW5wdXQuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQogCi0j
IDo6YmFja2Ryb3AKLXdlYmtpdC5vcmcvYi8yMjc4MDEgaW1wb3J0ZWQvYmxpbmsvZGlhbG9nL2Jh
Y2tkcm9wLWRlc2NlbmRhbnQtc2VsZWN0b3IuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQotd2Vi
a2l0Lm9yZy9iLzIyNzgwMSBpbXBvcnRlZC9ibGluay9kaWFsb2cvYmFja2Ryb3AtZG9lcy1ub3Qt
aW5oZXJpdC5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMjI3ODAxIGlt
cG9ydGVkL2JsaW5rL2RpYWxvZy9iYWNrZHJvcC1keW5hbWljLXN0eWxlLWNoYW5nZS5odG1sIFsg
SW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMjI3ODAxIGltcG9ydGVkL2JsaW5rL2Rp
YWxvZy9iYWNrZHJvcC1pbi1mbG93Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5v
cmcvYi8yMjc4MDEgaW1wb3J0ZWQvYmxpbmsvZGlhbG9nL2JhY2tkcm9wLXN0YWNraW5nLW9yZGVy
Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLQogIyBUb3AgbGF5ZXIgdGVzdHMKK3dlYmtpdC5v
cmcvYi84NDc5NiBpbXBvcnRlZC9ibGluay9kaWFsb2cvYmFja2Ryb3AtaW4tZmxvdy5odG1sIFsg
SW1hZ2VPbmx5RmFpbHVyZSBdCit3ZWJraXQub3JnL2IvODQ3OTYgaW1wb3J0ZWQvYmxpbmsvZGlh
bG9nL2JhY2tkcm9wLXN0YWNraW5nLW9yZGVyLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdl
YmtpdC5vcmcvYi84NDc5NiBpbXBvcnRlZC9ibGluay9kaWFsb2cvZG9udC1zaGFyZS1zdHlsZS10
by10b3AtbGF5ZXIuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzg0Nzk2
IGltcG9ydGVkL2JsaW5rL2RpYWxvZy9tb2RhbC1kaWFsb2ctYmFja2Ryb3AuaHRtbCBbIEltYWdl
T25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzg0Nzk2IGltcG9ydGVkL2JsaW5rL2RpYWxvZy9t
b2RhbC1kaWFsb2ctZ2VuZXJhdGVkLWNvbnRlbnQuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQog
d2Via2l0Lm9yZy9iLzg0Nzk2IGltcG9ydGVkL2JsaW5rL2RpYWxvZy9tb2RhbC1kaWFsb2ctaW4t
cmVwbGFjZWQtcmVuZGVyZXIuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQogd2Via2l0Lm9yZy9i
Lzg0Nzk2IGltcG9ydGVkL2JsaW5rL2RpYWxvZy9tb2RhbC1kaWFsb2ctaW4tdGFibGUtY29sdW1u
Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi84NDc5NiBpbXBvcnRlZC9i
bGluay9kaWFsb2cvcmVtb3ZlZC1lbGVtZW50LWlzLXJlbW92ZWQtZnJvbS10b3AtbGF5ZXIuaHRt
bCBbIEltYWdlT25seUZhaWx1cmUgXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXZhbHVlcy9jaC1lbXB0eS1wc2V1ZG8tcmVj
YWxjLW9uLWZvbnQtbG9hZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdmFsdWVzL2NoLWVtcHR5LXBzZXVkby1yZWNhbGMt
b24tZm9udC1sb2FkLWV4cGVjdGVkLnR4dAppbmRleCA2OWM3ZWE5ODQ3YzY5OWYyNWM1MThhNmIx
NzdhZTJhYzViZDVmYzdiLi4wMTY2MWZhOTFmNTkzNjczMmQzNTlmMjU3NWI4MDE5MmI0MGM3YWU5
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9jc3MtdmFsdWVzL2NoLWVtcHR5LXBzZXVkby1yZWNhbGMtb24tZm9udC1sb2FkLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9jc3MtdmFsdWVzL2NoLWVtcHR5LXBzZXVkby1yZWNhbGMtb24tZm9udC1sb2FkLWV4cGVj
dGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAotRkFJTCBjaCBpbiBwc2V1ZG8tZWxlbWVudCA6OmJl
Zm9yZSBzaG91bGQgYmUgcmVjYWxjdWxhdGVkIGFmdGVyIGxvYWRpbmcgYSB3ZWIgZm9udCBhc3Nl
cnRfbGVzc190aGFuOiBleHBlY3RlZCBhIG51bWJlciBsZXNzIHRoYW4gMjQgYnV0IGdvdCBOYU4K
LUZBSUwgY2ggaW4gcHNldWRvLWVsZW1lbnQgOjphZnRlciBzaG91bGQgYmUgcmVjYWxjdWxhdGVk
IGFmdGVyIGxvYWRpbmcgYSB3ZWIgZm9udCBhc3NlcnRfbGVzc190aGFuOiBleHBlY3RlZCBhIG51
bWJlciBsZXNzIHRoYW4gMjQgYnV0IGdvdCBOYU4KLUZBSUwgY2ggaW4gcHNldWRvLWVsZW1lbnQg
OjpiYWNrZHJvcCBzaG91bGQgYmUgcmVjYWxjdWxhdGVkIGFmdGVyIGxvYWRpbmcgYSB3ZWIgZm9u
dCBhc3NlcnRfbGVzc190aGFuOiBleHBlY3RlZCBhIG51bWJlciBsZXNzIHRoYW4gMjQgYnV0IGdv
dCBOYU4KK1BBU1MgY2ggaW4gcHNldWRvLWVsZW1lbnQgOjpiZWZvcmUgc2hvdWxkIGJlIHJlY2Fs
Y3VsYXRlZCBhZnRlciBsb2FkaW5nIGEgd2ViIGZvbnQKK1BBU1MgY2ggaW4gcHNldWRvLWVsZW1l
bnQgOjphZnRlciBzaG91bGQgYmUgcmVjYWxjdWxhdGVkIGFmdGVyIGxvYWRpbmcgYSB3ZWIgZm9u
dAorUEFTUyBjaCBpbiBwc2V1ZG8tZWxlbWVudCA6OmJhY2tkcm9wIHNob3VsZCBiZSByZWNhbGN1
bGF0ZWQgYWZ0ZXIgbG9hZGluZyBhIHdlYiBmb250CiAK
</data>
<flag name="commit-queue"
          id="458216"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>435410</attachid>
            <date>2021-08-12 04:02:05 -0700</date>
            <delta_ts>2021-08-12 04:22:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227801-20210812130203.patch</filename>
            <type>text/plain</type>
            <size>22129</size>
            <attacher name="Tim Nguyen (:ntim)">ntim</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgwOTIzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAx
ZDM4N2Q3MjBmMzEyNjFlMjRkMmU5ZTRmYTM5ZTBhOGIwMDhjMmU3Li5mZjA1MGVlOGVmZDllZDQ5
OGYxMWE2NDU5YjdjZjc1YmFjMzg1M2FhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNSBAQAorMjAyMS0wOC0xMSAgVGltIE5ndXllbiAgPG50aW1AYXBwbGUuY29tPgorCisg
ICAgICAgIEltcGxlbWVudCA6OmJhY2tkcm9wIHBzZXVkbyBlbGVtZW50CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjc4MDEKKworICAgICAgICBUaGlz
IGFkZHMgVUEgc3R5bGVzLCBSZW5kZXJUcmVlQnVpbGRlciBzdXBwb3J0IGFuZCBXZWJJbnNwZWN0
b3Igc3VwcG9ydCBmb3IgOjpiYWNrZHJvcC4KKyAgICAgICAgU29tZSBpbXBvcnRlZCBibGluayB0
ZXN0cyBub3cgc3RhcnQgcGFzc2luZywgc29tZSBzdGlsbCBuZWVkIHByb3BlciB0b3AgbGF5ZXIg
c3VwcG9ydC4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIGluc3BlY3Rvci9wcm90b2NvbC9DU1MuanNvbjoKKwogMjAyMS0wOC0xMSAgWXVzdWtlIFN1
enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgogCiAgICAgICAgIFdURkNyYXNoIGluIEpTQzo6TGV4
ZXI8Y2hhcjE2X3Q+OjphcHBlbmQ4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjUwMTU5NjEzNzExMDU0MWRlYmQ3
MDY5YWEzZmYwNjVhNGFmZjM4NC4uMWFjNDk1NjMwZGVlODg0ZmQ5NmY4MGI2MjUzMGE2YTdlYzU3
OGVkNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDIxLTA4LTExICBUaW0gTmd1eWVu
ICA8bnRpbUBhcHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IDo6YmFja2Ryb3AgcHNldWRv
IGVsZW1lbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIyNzgwMQorCisgICAgICAgIFRoaXMgYWRkcyBVQSBzdHlsZXMsIFJlbmRlclRyZWVCdWlsZGVy
IHN1cHBvcnQgYW5kIFdlYkluc3BlY3RvciBzdXBwb3J0IGZvciA6OmJhY2tkcm9wLgorICAgICAg
ICBTb21lIGltcG9ydGVkIGJsaW5rIHRlc3RzIG5vdyBzdGFydCBwYXNzaW5nLCBzb21lIHN0aWxs
IG5lZWQgcHJvcGVyIHRvcCBsYXllciBzdXBwb3J0LgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgICogY3NzL0NTU1NlbGVjdG9yLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkNTU1NlbGVjdG9yOjpwc2V1ZG9JZCk6CisgICAgICAgICogY3NzL0NTU1NlbGVj
dG9yLmg6CisgICAgICAgICogY3NzL1NlbGVjdG9yUHNldWRvRWxlbWVudFR5cGVNYXAuaW46Cisg
ICAgICAgICogY3NzL2RpYWxvZy5jc3M6CisgICAgICAgIChkaWFsb2c6OmJhY2tkcm9wKToKKyAg
ICAgICAgKDo6YmFja2Ryb3ApOgorICAgICAgICAqIGRvbS9FbGVtZW50Lmg6CisgICAgICAgIChX
ZWJDb3JlOjpFbGVtZW50Ojppc0luVG9wTGF5ZXIgY29uc3QpOgorICAgICAgICAqIGluc3BlY3Rv
ci9hZ2VudHMvSW5zcGVjdG9yQ1NTQWdlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6cHJvdG9j
b2xWYWx1ZUZvclBzZXVkb0lkKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJFbGVtZW50OjpiYWNrZHJvcFJlbmRlcmVyIGNv
bnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckVsZW1lbnQ6OnNldEJhY2tkcm9wUmVuZGVy
ZXIpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJFbGVtZW50Lmg6CisgICAgICAgICogcmVu
ZGVyaW5nL1JlbmRlck9iamVjdC5oOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9SZW5kZXJT
dHlsZUNvbnN0YW50cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpvcGVyYXRvcjw8KToKKyAgICAg
ICAgKiByZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaDoKKyAgICAgICAgKiBy
ZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6UmVuZGVyVHJlZUJ1aWxkZXI6OmRlc3Ryb3lBbmRDbGVhblVwQW5vbnltb3VzV3JhcHBlcnMp
OgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVHJlZUJ1aWxkZXI6OnVwZGF0ZUFmdGVyRGVzY2Vu
ZGFudHMpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVHJlZUJ1aWxkZXI6OnVwZGF0ZUJhY2tk
cm9wUmVuZGVyZXIpOgorICAgICAgICAqIHJlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlQnVp
bGRlci5oOgorICAgICAgICAqIHN0eWxlL1N0eWxlVHJlZVJlc29sdmVyLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlN0eWxlOjpUcmVlUmVzb2x2ZXI6OnJlc29sdmVQc2V1ZG9TdHlsZSk6CisKIDIw
MjEtMDgtMTEgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIE1l
ZGlhIGVsZW1lbnQgaXMgbm90IGFsd2F5cyBhdXRvcGxheWluZyB3aGVuIGdvaW5nIGZyb20gYmFj
a2dyb3VuZCB0byBmb3JlZ3JvdW5kIGlmIGl0IGlzIGluaXRpYWxseSBub3QgaW4gdmlld3BvcnQK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IDFiZTNjOWY1MDA0YzJjM2MzYzc2OTM2NjkxYTE0
YjQ2MTM1MzFlYmIuLjg5YTk3ZmIzOTE0YTNkNWE2NmVhOGNkYTAyYjhmMGJjNjYxNjY1M2MgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTA4LTExICBUaW0g
Tmd1eWVuICA8bnRpbUBhcHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IDo6YmFja2Ryb3Ag
cHNldWRvIGVsZW1lbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIyNzgwMQorCisgICAgICAgIFRoaXMgYWRkcyBVQSBzdHlsZXMsIFJlbmRlclRyZWVC
dWlsZGVyIHN1cHBvcnQgYW5kIFdlYkluc3BlY3RvciBzdXBwb3J0IGZvciA6OmJhY2tkcm9wLgor
ICAgICAgICBTb21lIGltcG9ydGVkIGJsaW5rIHRlc3RzIG5vdyBzdGFydCBwYXNzaW5nLCBzb21l
IHN0aWxsIG5lZWQgcHJvcGVyIHRvcCBsYXllciBzdXBwb3J0LgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVXNlckludGVyZmFjZS9Db250cm9sbGVy
cy9DU1NNYW5hZ2VyLmpzOgorICAgICAgICAoV0kuQ1NTTWFuYWdlci5kaXNwbGF5TmFtZUZvclBz
ZXVkb0lkKToKKwogMjAyMS0wOC0wMyAgU29uaWEgU2luZ2xhICA8c29uaWFzaW5nbGEuMTgxMkBn
bWFpbC5jb20+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogQWRkIHN0YW5kYXJkIGxvZ2ljYWwg
cHJvcGVydGllcyB0byBDU1Mga2V5d29yZCBjb21wbGV0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Byb3RvY29sL0NTUy5qc29uIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9DU1MuanNvbgppbmRleCBjOWViNTc2YmQ3YzI1
OTM0YWE1OWNiZjMyZTFjY2NmOTMzOTE3Y2U4Li40YzYyZGU5MGExNTBjNjIzZGM1YTA3NDUyYWE0
YjQzNzliMjg0NmY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9y
L3Byb3RvY29sL0NTUy5qc29uCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Iv
cHJvdG9jb2wvQ1NTLmpzb24KQEAgLTQzLDYgKzQzLDcgQEAKICAgICAgICAgICAgICAgICAiYmVm
b3JlIiwKICAgICAgICAgICAgICAgICAiYWZ0ZXIiLAogICAgICAgICAgICAgICAgICJzZWxlY3Rp
b24iLAorICAgICAgICAgICAgICAgICJiYWNrZHJvcCIsCiAgICAgICAgICAgICAgICAgInNjcm9s
bGJhciIsCiAgICAgICAgICAgICAgICAgInNjcm9sbGJhci10aHVtYiIsCiAgICAgICAgICAgICAg
ICAgInNjcm9sbGJhci1idXR0b24iLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NT
U1NlbGVjdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWxlY3Rvci5jcHAKaW5kZXgg
YzE1YzYyOTJlZjhiNTIyNDIxOTFlYmM0YzQxNTA1MmU1ZTIyNGE0YS4uNjg1MGU4NGY4YmYwYzU0
ODExNzQ2MTI1MDY4ZTAwMzgwMmU5MmQ1OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1NlbGVjdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2VsZWN0b3IuY3Bw
CkBAIC0yMzIsNiArMjMyLDggQEAgUHNldWRvSWQgQ1NTU2VsZWN0b3I6OnBzZXVkb0lkKFBzZXVk
b0VsZW1lbnRUeXBlIHR5cGUpCiAgICAgICAgIHJldHVybiBQc2V1ZG9JZDo6SGlnaGxpZ2h0Owog
ICAgIGNhc2UgUHNldWRvRWxlbWVudE1hcmtlcjoKICAgICAgICAgcmV0dXJuIFBzZXVkb0lkOjpN
YXJrZXI7CisgICAgY2FzZSBQc2V1ZG9FbGVtZW50QmFja2Ryb3A6CisgICAgICAgIHJldHVybiBQ
c2V1ZG9JZDo6QmFja2Ryb3A7CiAgICAgY2FzZSBQc2V1ZG9FbGVtZW50QmVmb3JlOgogICAgICAg
ICByZXR1cm4gUHNldWRvSWQ6OkJlZm9yZTsKICAgICBjYXNlIFBzZXVkb0VsZW1lbnRBZnRlcjoK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWxlY3Rvci5oIGIvU291cmNlL1dl
YkNvcmUvY3NzL0NTU1NlbGVjdG9yLmgKaW5kZXggNWI0YjlmMTVmMzM0ZDI0YjJjYjJjMWJiZTA5
NjRkMGY3ZGU4MGEwMy4uYmM4M2FmZDkxNzQwYTExMjBmMzFkODQ2NzljOWQxMjZjN2NjMWY5NSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1NlbGVjdG9yLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1NlbGVjdG9yLmgKQEAgLTE4MCw2ICsxODAsNyBAQCBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAgICAgICAgIGVudW0gUHNldWRvRWxlbWVudFR5cGUgewogICAgICAgICAgICAg
UHNldWRvRWxlbWVudFVua25vd24gPSAwLAogICAgICAgICAgICAgUHNldWRvRWxlbWVudEFmdGVy
LAorICAgICAgICAgICAgUHNldWRvRWxlbWVudEJhY2tkcm9wLAogICAgICAgICAgICAgUHNldWRv
RWxlbWVudEJlZm9yZSwKICNpZiBFTkFCTEUoVklERU8pCiAgICAgICAgICAgICBQc2V1ZG9FbGVt
ZW50Q3VlLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1NlbGVjdG9yUHNldWRvRWxl
bWVudFR5cGVNYXAuaW4gYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JQc2V1ZG9FbGVtZW50
VHlwZU1hcC5pbgppbmRleCAwYjVlZmM2Njg0Y2I1NmZlZWUwNTkyZTczZjg2YzYyZTBiMmMyY2Uy
Li5lMWU1MTk0OGZlMjI3NjNhMTdkZTE4ODk0Y2Q0Nzk4YTk3MGEyMDQxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JQc2V1ZG9FbGVtZW50VHlwZU1hcC5pbgorKysgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JQc2V1ZG9FbGVtZW50VHlwZU1hcC5pbgpAQCAtMSw0
ICsxLDUgQEAKIGFmdGVyCitiYWNrZHJvcAogYmVmb3JlCiAjaWYgRU5BQkxFKFZJREVPKQogY3Vl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvZGlhbG9nLmNzcyBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9kaWFsb2cuY3NzCmluZGV4IGI2MWRjOWQ3NmYyMGJjMDRjNDA0NjU2YjEyYzRjOGFk
YWNiOTA5NjYuLjFlN2U1YTE1MjBmMTMyYjY5MDQ2ZDk0ZTJlMmExZGYzMDQ1M2IwNWEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9kaWFsb2cuY3NzCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9kaWFsb2cuY3NzCkBAIC0yNCwzICsyNCwxNiBAQCBkaWFsb2c6LWludGVybmFsLW1vZGFs
LWRpYWxvZyB7CiAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA2cHggLSAyZW0pOwogICAgIG1h
eC1oZWlnaHQ6IGNhbGMoMTAwJSAtIDZweCAtIDJlbSk7CiB9CisKK2RpYWxvZzo6YmFja2Ryb3Ag
eworICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsKK30KKworOjpiYWNrZHJvcCB7
CisgICAgZGlzcGxheTogYmxvY2s7CisgICAgcG9zaXRpb246IGZpeGVkOworICAgIHRvcDogMDsK
KyAgICBsZWZ0OiAwOworICAgIHJpZ2h0OiAwOworICAgIGJvdHRvbTogMDsKK30KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxl
bWVudC5oCmluZGV4IDliNDA5Y2E5ZjNkOTk4NzY1ZTIxZWUzZTU3MDllZDM2OTM4MDQwNjAuLjU4
MmRiMTIzYjZkOTc1Nzc0ZWE1ZmMyNDJhODM2MzFjODQ3M2JlM2UgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQu
aApAQCAtNTExLDYgKzUxMSw4IEBAIHB1YmxpYzoKICAgICBjb25zdCBSZW5kZXJTdHlsZSogbGFz
dFN0eWxlQ2hhbmdlRXZlbnRTdHlsZShQc2V1ZG9JZCkgY29uc3Q7CiAgICAgdm9pZCBzZXRMYXN0
U3R5bGVDaGFuZ2VFdmVudFN0eWxlKFBzZXVkb0lkLCBzdGQ6OnVuaXF1ZV9wdHI8Y29uc3QgUmVu
ZGVyU3R5bGU+JiYpOwogCisgICAgYm9vbCBpc0luVG9wTGF5ZXIoKSBjb25zdCB7IHJldHVybiBk
b2N1bWVudCgpLnRvcExheWVyRWxlbWVudHMoKS5jb250YWlucyhtYWtlUmVmKCpjb25zdF9jYXN0
PEVsZW1lbnQqPih0aGlzKSkpOyB9CisKICNpZiBFTkFCTEUoRlVMTFNDUkVFTl9BUEkpCiAgICAg
Ym9vbCBjb250YWluc0Z1bGxTY3JlZW5FbGVtZW50KCkgY29uc3QgeyByZXR1cm4gaGFzTm9kZUZs
YWcoTm9kZUZsYWc6OkNvbnRhaW5zRnVsbFNjcmVlbkVsZW1lbnQpOyB9CiAgICAgdm9pZCBzZXRD
b250YWluc0Z1bGxTY3JlZW5FbGVtZW50KGJvb2wpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JDU1NBZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckNTU0FnZW50LmNwcAppbmRleCA2NWE4MTMxMjlk
NjMxNzM5YWIwNTYwNDFmOTc1MGJkMjg4OGUyYzQ4Li4zZWMxNGY2NzFlZDg2NTUxYzRjYzlkMWVk
Yjg2YzdhZmEwMGNmMjVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdl
bnRzL0luc3BlY3RvckNTU0FnZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
YWdlbnRzL0luc3BlY3RvckNTU0FnZW50LmNwcApAQCAtNDQ5LDYgKzQ0OSw4IEBAIHN0YXRpYyBz
dGQ6Om9wdGlvbmFsPFByb3RvY29sOjpDU1M6OlBzZXVkb0lkPiBwcm90b2NvbFZhbHVlRm9yUHNl
dWRvSWQoUHNldWRvSWQKICAgICAgICAgcmV0dXJuIFByb3RvY29sOjpDU1M6OlBzZXVkb0lkOjpG
aXJzdExldHRlcjsKICAgICBjYXNlIFBzZXVkb0lkOjpNYXJrZXI6CiAgICAgICAgIHJldHVybiBQ
cm90b2NvbDo6Q1NTOjpQc2V1ZG9JZDo6TWFya2VyOworICAgIGNhc2UgUHNldWRvSWQ6OkJhY2tk
cm9wOgorICAgICAgICByZXR1cm4gUHJvdG9jb2w6OkNTUzo6UHNldWRvSWQ6OkJhY2tkcm9wOwog
ICAgIGNhc2UgUHNldWRvSWQ6OkJlZm9yZToKICAgICAgICAgcmV0dXJuIFByb3RvY29sOjpDU1M6
OlBzZXVkb0lkOjpCZWZvcmU7CiAgICAgY2FzZSBQc2V1ZG9JZDo6QWZ0ZXI6CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5jcHAKaW5kZXggZjg3ZDA1ZjM5OWU4NDkwOGI1
OTk4ZjVjOWY5NTZjOWFkNWNjMmYxNy4uZTgwZWQ3MWRhZTQxZDMyNmRiMjA1NjcyYzRlYjg0NzEy
MjQxYmY2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVsZW1l
bnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbGVtZW50LmNwcApA
QCAtMjM3NSw0ICsyMzc1LDE0IEBAIHN0ZDo6dW5pcXVlX3B0cjxSZW5kZXJTdHlsZT4gUmVuZGVy
RWxlbWVudDo6YW5pbWF0ZWRTdHlsZSgpCiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAorUmVuZGVy
QmxvY2tGbG93KiBSZW5kZXJFbGVtZW50OjpiYWNrZHJvcFJlbmRlcmVyKCkgY29uc3QKK3sKKyAg
ICByZXR1cm4gaGFzUmFyZURhdGEoKSA/IHJhcmVEYXRhKCkuYmFja2Ryb3BSZW5kZXJlci5nZXQo
KSA6IG51bGxwdHI7Cit9CisKK3ZvaWQgUmVuZGVyRWxlbWVudDo6c2V0QmFja2Ryb3BSZW5kZXJl
cihSZW5kZXJCbG9ja0Zsb3cmIHJlbmRlcmVyKQoreworICAgIGVuc3VyZVJhcmVEYXRhKCkuYmFj
a2Ryb3BSZW5kZXJlciA9IG1ha2VXZWFrUHRyKHJlbmRlcmVyKTsKK30KKwogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVsZW1lbnQuaCBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJFbGVtZW50LmgKaW5kZXggMjM3N2JhOTcyYzRhYzk1Y2M4Zjc4
ZGQzMmRkZTgxOTQ5YzQ3ZmUyNS4uMGM0YWQ0M2U5YzRmYzJlMmRkNWY3NGQ4NTQ2MmUyMjhmOWE0
MWRhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVsZW1lbnQu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5oCkBAIC0yNTcs
NiArMjU3LDkgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBzdXNwZW5kQW5pbWF0aW9ucyhN
b25vdG9uaWNUaW1lID0gTW9ub3RvbmljVGltZSgpKSB7IH0KICAgICBzdGQ6OnVuaXF1ZV9wdHI8
UmVuZGVyU3R5bGU+IGFuaW1hdGVkU3R5bGUoKTsKIAorICAgIFJlbmRlckJsb2NrRmxvdyogYmFj
a2Ryb3BSZW5kZXJlcigpIGNvbnN0OworICAgIHZvaWQgc2V0QmFja2Ryb3BSZW5kZXJlcihSZW5k
ZXJCbG9ja0Zsb3cmKTsKKwogcHJvdGVjdGVkOgogICAgIGVudW0gQmFzZVR5cGVGbGFnIHsKICAg
ICAgICAgUmVuZGVyTGF5ZXJNb2RlbE9iamVjdEZsYWcgID0gMSA8PCAwLApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlck9iamVjdC5oCmluZGV4IDJmZDk2ODc5MDIyYTZhM2I4YWNjMzE2YWYx
ZTE1MDRhNjIzMjc0ZTcuLjU1NjdlNGRjMzUxZTU0ZjM4MTUyOWNhNjAwMGNjMWI5NDg1Y2MzNDAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmgKQEAgLTU5LDYgKzU5LDcg
QEAgY2xhc3MgUG9zaXRpb247CiBjbGFzcyBSZW5kZXJCb3hNb2RlbE9iamVjdDsKIGNsYXNzIFJl
bmRlcklubGluZTsKIGNsYXNzIFJlbmRlckJsb2NrOworY2xhc3MgUmVuZGVyQmxvY2tGbG93Owog
Y2xhc3MgUmVuZGVyRWxlbWVudDsKIGNsYXNzIFJlbmRlckZyYWdtZW50ZWRGbG93OwogY2xhc3Mg
UmVuZGVyR2VvbWV0cnlNYXA7CkBAIC05MzgsNiArOTM5LDcgQEAgcHJpdmF0ZToKIAogICAgICAg
ICAvLyBGcm9tIFJlbmRlckVsZW1lbnQKICAgICAgICAgc3RkOjp1bmlxdWVfcHRyPFJlbmRlclN0
eWxlPiBjYWNoZWRGaXJzdExpbmVTdHlsZTsKKyAgICAgICAgV2Vha1B0cjxSZW5kZXJCbG9ja0Zs
b3c+IGJhY2tkcm9wUmVuZGVyZXI7CiAgICAgfTsKICAgICAKICAgICBjb25zdCBSZW5kZXJPYmpl
Y3Q6OlJlbmRlck9iamVjdFJhcmVEYXRhJiByYXJlRGF0YSgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5jcHAK
aW5kZXggNDZhNTkyY2JkNGIwZGZiYjc3MDA1YjBlODVkZjkzOTY2MTQzODJlYS4uNWVkMTAzYzc1
MmMwMTkwNzE4M2RlOTM5NTQ1NDYyZTM5MjNkODIzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuY3BwCkBAIC04ODcs
NiArODg3LDcgQEAgVGV4dFN0cmVhbSYgb3BlcmF0b3I8PChUZXh0U3RyZWFtJiB0cywgUHNldWRv
SWQgcHNldWRvSWQpCiAgICAgY2FzZSBQc2V1ZG9JZDo6Rmlyc3RMZXR0ZXI6IHRzIDw8ICJmaXJz
dC1sZXR0ZXIiOyBicmVhazsKICAgICBjYXNlIFBzZXVkb0lkOjpIaWdobGlnaHQ6IHRzIDw8ICJo
aWdobGlnaHQiOyBicmVhazsKICAgICBjYXNlIFBzZXVkb0lkOjpNYXJrZXI6IHRzIDw8ICJtYXJr
ZXIiOyBicmVhazsKKyAgICBjYXNlIFBzZXVkb0lkOjpCYWNrZHJvcDogdHMgPDwgImJhY2tkcm9w
IjsgYnJlYWs7CiAgICAgY2FzZSBQc2V1ZG9JZDo6QmVmb3JlOiB0cyA8PCAiYmVmb3JlIjsgYnJl
YWs7CiAgICAgY2FzZSBQc2V1ZG9JZDo6QWZ0ZXI6IHRzIDw8ICJhZnRlciI7IGJyZWFrOwogICAg
IGNhc2UgUHNldWRvSWQ6OlNlbGVjdGlvbjogdHMgPDwgInNlbGVjdGlvbiI7IGJyZWFrOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3Rh
bnRzLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFu
dHMuaAppbmRleCA4MzliZGMyMGFiZjk2MTJhMzE3MTFlMWMzMDkwZTUyNGM1Nzc4NDExLi43M2Q0
YjlkNTlhY2ZlZmMxZTYzZTFhOTQ4ZTZiY2NlMGYxMzg3MDYzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaApAQCAtOTUs
NiArOTUsNyBAQCBlbnVtIGNsYXNzIFBzZXVkb0lkIDogdWludDE2X3QgewogICAgIEJlZm9yZSwK
ICAgICBBZnRlciwKICAgICBTZWxlY3Rpb24sCisgICAgQmFja2Ryb3AsCiAgICAgU2Nyb2xsYmFy
LAogCiAgICAgLy8gSW50ZXJuYWw6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvdXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL3VwZGF0aW5nL1JlbmRlclRyZWVCdWlsZGVyLmNwcAppbmRleCBlYjY2OGI0YmQ2Mzg2NjMw
OTk0ZTI2YWRkMmQxZTY1YzgzOTQ5OTlmLi5hZDEyNGU5ZWMxNDM3MTFkOWM1YTcyYmNlOTJmZTJm
NzUwZGNiYzA3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcv
UmVuZGVyVHJlZUJ1aWxkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRh
dGluZy9SZW5kZXJUcmVlQnVpbGRlci5jcHAKQEAgLTI5LDYgKzI5LDcgQEAKICNpbmNsdWRlICJB
WE9iamVjdENhY2hlLmgiCiAjaW5jbHVkZSAiRnJhbWUuaCIKICNpbmNsdWRlICJGcmFtZVNlbGVj
dGlvbi5oIgorI2luY2x1ZGUgIk5vZGUuaCIKICNpbmNsdWRlICJSZW5kZXJCdXR0b24uaCIKICNp
bmNsdWRlICJSZW5kZXJDb3VudGVyLmgiCiAjaW5jbHVkZSAiUmVuZGVyRGVzY2VuZGFudEl0ZXJh
dG9yLmgiCkBAIC04MDcsNiArODA4LDEyIEBAIHZvaWQgUmVuZGVyVHJlZUJ1aWxkZXI6OmRlc3Ry
b3lBbmRDbGVhblVwQW5vbnltb3VzV3JhcHBlcnMoUmVuZGVyT2JqZWN0JiByZW5kZXJlCiAgICAg
ICAgIHJldHVybjsKICAgICB9CiAKKyAgICAvLyBBbHNvIGRlc3Ryb3kgOjpiYWNrZHJvcCBhbG9u
ZyB3aXRoIGVsZW1lbnQgaWYgdGhlcmUgaXMgb25lCisgICAgaWYgKGlzPFJlbmRlckVsZW1lbnQ+
KHJlbmRlcmVyVG9EZXN0cm95KSkgeworICAgICAgICBpZiAoYXV0byBiYWNrZHJvcFJlbmRlcmVy
ID0gZG93bmNhc3Q8UmVuZGVyRWxlbWVudD4ocmVuZGVyZXJUb0Rlc3Ryb3kpLmJhY2tkcm9wUmVu
ZGVyZXIoKSkKKyAgICAgICAgICAgIGRlc3Ryb3koKmJhY2tkcm9wUmVuZGVyZXIpOworICAgIH0K
KwogICAgIGF1dG8gaXNBbm9ueW1vdXNBbmRTYWZlVG9EZWxldGUgPSBbXSAoY29uc3QgYXV0byYg
cmVuZGVyZXIpIHsKICAgICAgICAgcmV0dXJuIHJlbmRlcmVyLmlzQW5vbnltb3VzKCkgJiYgIXJl
bmRlcmVyLmlzUmVuZGVyVmlldygpICYmICFyZW5kZXJlci5pc1JlbmRlckZyYWdtZW50ZWRGbG93
KCk7CiAgICAgfTsKQEAgLTg3NSw2ICs4ODIsOCBAQCB2b2lkIFJlbmRlclRyZWVCdWlsZGVyOjpk
ZXN0cm95QW5kQ2xlYW5VcEFub255bW91c1dyYXBwZXJzKFJlbmRlck9iamVjdCYgcmVuZGVyZQog
CiB2b2lkIFJlbmRlclRyZWVCdWlsZGVyOjp1cGRhdGVBZnRlckRlc2NlbmRhbnRzKFJlbmRlckVs
ZW1lbnQmIHJlbmRlcmVyKQogeworICAgIHVwZGF0ZUJhY2tkcm9wUmVuZGVyZXIocmVuZGVyZXIp
OworCiAgICAgaWYgKGlzPFJlbmRlckJsb2NrPihyZW5kZXJlcikpCiAgICAgICAgIGZpcnN0TGV0
dGVyQnVpbGRlcigpLnVwZGF0ZUFmdGVyRGVzY2VuZGFudHMoZG93bmNhc3Q8UmVuZGVyQmxvY2s+
KHJlbmRlcmVyKSk7CiAgICAgaWYgKGlzPFJlbmRlckxpc3RJdGVtPihyZW5kZXJlcikpCkBAIC04
ODMsNiArODkyLDQ3IEBAIHZvaWQgUmVuZGVyVHJlZUJ1aWxkZXI6OnVwZGF0ZUFmdGVyRGVzY2Vu
ZGFudHMoUmVuZGVyRWxlbWVudCYgcmVuZGVyZXIpCiAgICAgICAgIG11bHRpQ29sdW1uQnVpbGRl
cigpLnVwZGF0ZUFmdGVyRGVzY2VuZGFudHMoZG93bmNhc3Q8UmVuZGVyQmxvY2tGbG93PihyZW5k
ZXJlcikpOwogfQogCit2b2lkIFJlbmRlclRyZWVCdWlsZGVyOjp1cGRhdGVCYWNrZHJvcFJlbmRl
cmVyKFJlbmRlckVsZW1lbnQmIHJlbmRlcmVyKQoreworICAgIC8vIERlc3Ryb3kgOjpiYWNrZHJv
cCBpZiBuZXcgZWxlbWVudCBubyBsb25nZXIgaXMgaW4gdG9wIGxheWVyCisgICAgaWYgKHJlbmRl
cmVyLmVsZW1lbnQoKSAmJiAhcmVuZGVyZXIuZWxlbWVudCgpLT5pc0luVG9wTGF5ZXIoKSkgewor
ICAgICAgICBpZiAoYXV0byogYmFja2Ryb3BSZW5kZXJlciA9IHJlbmRlcmVyLmJhY2tkcm9wUmVu
ZGVyZXIoKSkKKyAgICAgICAgICAgIGRlc3Ryb3koKmJhY2tkcm9wUmVuZGVyZXIpOworICAgICAg
ICByZXR1cm47CisgICAgfQorCisgICAgLy8gVXBkYXRlIDo6YmFja2Ryb3AgcmVuZGVyZXIgc3R5
bGUgb3IgY3JlYXRlIHJlbmRlcmVyCisgICAgYXV0byBzdHlsZSA9IHJlbmRlcmVyLmdldENhY2hl
ZFBzZXVkb1N0eWxlKFBzZXVkb0lkOjpCYWNrZHJvcCwgcmVuZGVyZXIuZG9jdW1lbnQoKS5yZW5k
ZXJTdHlsZSgpKTsKKyAgICBpZiAoIXN0eWxlIHx8IHN0eWxlLT5kaXNwbGF5KCkgPT0gRGlzcGxh
eVR5cGU6Ok5vbmUpCisgICAgICAgIHJldHVybjsKKworICAgIGF1dG8gbmV3U3R5bGUgPSBSZW5k
ZXJTdHlsZTo6Y2xvbmUoKnN0eWxlKTsKKyAgICBSZW5kZXJQdHI8UmVuZGVyQmxvY2tGbG93PiBu
ZXdCYWNrZHJvcFJlbmRlcmVyOworICAgIGF1dG8qIGJhY2tkcm9wUmVuZGVyZXIgPSByZW5kZXJl
ci5iYWNrZHJvcFJlbmRlcmVyKCk7CisgICAgaWYgKGJhY2tkcm9wUmVuZGVyZXIpCisgICAgICAg
IGJhY2tkcm9wUmVuZGVyZXItPnNldFN0eWxlKFdURk1vdmUobmV3U3R5bGUpKTsKKyAgICBlbHNl
IHsKKyAgICAgICAgbmV3QmFja2Ryb3BSZW5kZXJlciA9IFdlYkNvcmU6OmNyZWF0ZVJlbmRlcmVy
PFJlbmRlckJsb2NrRmxvdz4ocmVuZGVyZXIuZG9jdW1lbnQoKSwgV1RGTW92ZShuZXdTdHlsZSkp
OworICAgICAgICBuZXdCYWNrZHJvcFJlbmRlcmVyLT5pbml0aWFsaXplU3R5bGUoKTsKKyAgICAg
ICAgYmFja2Ryb3BSZW5kZXJlciA9IG5ld0JhY2tkcm9wUmVuZGVyZXIuZ2V0KCk7CisgICAgICAg
IHJlbmRlcmVyLnNldEJhY2tkcm9wUmVuZGVyZXIoKmJhY2tkcm9wUmVuZGVyZXIpOworICAgIH0K
KworICAgIC8vIFVwZGF0ZSBvciBhdHRhY2ggdG8gcmVuZGVyZXIgcGFyZW50CisgICAgUmVuZGVy
RWxlbWVudCogY3VycmVudFBhcmVudCA9IGJhY2tkcm9wUmVuZGVyZXItPnBhcmVudCgpOworICAg
IFJlbmRlckVsZW1lbnQqIG5ld1BhcmVudCA9IHJlbmRlcmVyLnBhcmVudCgpOworCisgICAgQVNT
RVJUKG5ld1BhcmVudCwgIlNob3VsZCBoYXZlIG5ldyBwYXJlbnQiKTsKKworICAgIGlmIChuZXdQ
YXJlbnQgPT0gY3VycmVudFBhcmVudCkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKGN1cnJl
bnRQYXJlbnQpCisgICAgICAgIGF0dGFjaCgqbmV3UGFyZW50LCBkZXRhY2goKmN1cnJlbnRQYXJl
bnQsICpiYWNrZHJvcFJlbmRlcmVyLCBSZW5kZXJUcmVlQnVpbGRlcjo6Q2FuQ29sbGFwc2VBbm9u
eW1vdXNCbG9jazo6Tm8pLCAmcmVuZGVyZXIpOworICAgIGVsc2UKKyAgICAgICAgYXR0YWNoKCpu
ZXdQYXJlbnQsIFdURk1vdmUobmV3QmFja2Ryb3BSZW5kZXJlciksICZyZW5kZXJlcik7Cit9CisK
IFJlbmRlclB0cjxSZW5kZXJPYmplY3Q+IFJlbmRlclRyZWVCdWlsZGVyOjpkZXRhY2hGcm9tUmVu
ZGVyR3JpZChSZW5kZXJHcmlkJiBwYXJlbnQsIFJlbmRlck9iamVjdCYgY2hpbGQpCiB7CiAgICAg
YXV0byB0YWtlbkNoaWxkID0gYmxvY2tCdWlsZGVyKCkuZGV0YWNoKHBhcmVudCwgY2hpbGQpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRyZWVC
dWlsZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZUJ1
aWxkZXIuaAppbmRleCBiMTI3OTg2YjU0NmJjMjFkY2ZlMDViN2UwZDRhNWY4NGUwYmUxYjYwLi4z
OGI3ZTcyZjYyYzE5YjFhMjE5MDc5ODc1YjI0MjgyODQwNGFiMTc2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXIuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXIuaApAQCAt
NTUsNiArNTUsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBtb3ZlKFJlbmRlckJveE1vZGVsT2JqZWN0
JiBmcm9tLCBSZW5kZXJCb3hNb2RlbE9iamVjdCYgdG8sIFJlbmRlck9iamVjdCYgY2hpbGQsIE5v
cm1hbGl6ZUFmdGVySW5zZXJ0aW9uKTsKIAogICAgIHZvaWQgdXBkYXRlQWZ0ZXJEZXNjZW5kYW50
cyhSZW5kZXJFbGVtZW50Jik7CisgICAgdm9pZCB1cGRhdGVCYWNrZHJvcFJlbmRlcmVyKFJlbmRl
ckVsZW1lbnQmKTsKICAgICB2b2lkIGRlc3Ryb3lBbmRDbGVhblVwQW5vbnltb3VzV3JhcHBlcnMo
UmVuZGVyT2JqZWN0JiBjaGlsZCk7CiAgICAgdm9pZCBub3JtYWxpemVUcmVlQWZ0ZXJTdHlsZUNo
YW5nZShSZW5kZXJFbGVtZW50JiwgUmVuZGVyU3R5bGUmIG9sZFN0eWxlKTsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3BwIGIvU291cmNlL1dl
YkNvcmUvc3R5bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3BwCmluZGV4IDBjNTI4YjE5YmM2Y2M3MmI2
NTk1NjI1NjliY2QxNDI3N2FjYzY0NDUuLmRjMzJhNWNmOGZkYzc2YzdjOTI1ZDkwODY5MjM0Y2Nh
NzU2MTk4ZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlVHJlZVJlc29s
dmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVRyZWVSZXNvbHZlci5jcHAK
QEAgLTI4MSwxMCArMjgxLDEwIEBAIHN0ZDo6b3B0aW9uYWw8RWxlbWVudFVwZGF0ZT4gVHJlZVJl
c29sdmVyOjpyZXNvbHZlUHNldWRvU3R5bGUoRWxlbWVudCYgZWxlbWVudCwKICAgICAgICAgcmV0
dXJuIHsgfTsKICAgICBpZiAoIWVsZW1lbnRVcGRhdGUuc3R5bGUtPmhhc1BzZXVkb1N0eWxlKHBz
ZXVkb0lkKSkKICAgICAgICAgcmV0dXJuIHsgfTsKLSAgICAKLSAgICBhdXRvJiBwYXJlbnRTdHls
ZSA9ICplbGVtZW50VXBkYXRlLnN0eWxlOworCisgICAgYXV0byYgcGFyZW50U3R5bGUgPSBwc2V1
ZG9JZCA9PSBQc2V1ZG9JZDo6QmFja2Ryb3AgPyAqZWxlbWVudC5kb2N1bWVudCgpLnJlbmRlclN0
eWxlKCkgOiAqZWxlbWVudFVwZGF0ZS5zdHlsZTsKICAgICBhdXRvKiBwYXJlbnRCb3hTdHlsZSA9
IHBhcmVudEJveFN0eWxlRm9yUHNldWRvKGVsZW1lbnRVcGRhdGUpOwotICAgIAorCiAgICAgYXV0
byBwc2V1ZG9TdHlsZSA9IHNjb3BlKCkucmVzb2x2ZXItPnBzZXVkb1N0eWxlRm9yRWxlbWVudChl
bGVtZW50LCB7IHBzZXVkb0lkIH0sIHBhcmVudFN0eWxlLCBwYXJlbnRCb3hTdHlsZSwgJnNjb3Bl
KCkuc2VsZWN0b3JGaWx0ZXIpOwogICAgIGlmICghcHNldWRvU3R5bGUpCiAgICAgICAgIHJldHVy
biB7IH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9D
b250cm9sbGVycy9DU1NNYW5hZ2VyLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRl
cmZhY2UvQ29udHJvbGxlcnMvQ1NTTWFuYWdlci5qcwppbmRleCAyZjYzYmJjNDk4OWI1YTE1ZTE0
YTU1MWVjZWNkOTdiN2UyNTI1M2E1Li5hZDA2MWJkMTY1Njc5YmY3Mzk0ZmM4N2RlOWVmY2M5Njgz
NGY5ZTc5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9D
b250cm9sbGVycy9DU1NNYW5hZ2VyLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2Vy
SW50ZXJmYWNlL0NvbnRyb2xsZXJzL0NTU01hbmFnZXIuanMKQEAgLTE1NSw2ICsxNTUsOCBAQCBX
SS5DU1NNYW5hZ2VyID0gY2xhc3MgQ1NTTWFuYWdlciBleHRlbmRzIFdJLk9iamVjdAogICAgICAg
ICAgICAgcmV0dXJuIFdJLnVubG9jYWxpemVkU3RyaW5nKCI6OmFmdGVyIik7CiAgICAgICAgIGNh
c2UgQ1NTTWFuYWdlci5Qc2V1ZG9TZWxlY3Rvck5hbWVzLlNlbGVjdGlvbjoKICAgICAgICAgICAg
IHJldHVybiBXSS51bmxvY2FsaXplZFN0cmluZygiOjpzZWxlY3Rpb24iKTsKKyAgICAgICAgY2Fz
ZSBDU1NNYW5hZ2VyLlBzZXVkb1NlbGVjdG9yTmFtZXMuQmFja2Ryb3A6CisgICAgICAgICAgICBy
ZXR1cm4gV0kudW5sb2NhbGl6ZWRTdHJpbmcoIjo6YmFja2Ryb3AiKTsKICAgICAgICAgY2FzZSBD
U1NNYW5hZ2VyLlBzZXVkb1NlbGVjdG9yTmFtZXMuU2Nyb2xsYmFyOgogICAgICAgICAgICAgcmV0
dXJuIFdJLnVubG9jYWxpemVkU3RyaW5nKCI6OnNjcm9sbGJhciIpOwogICAgICAgICBjYXNlIENT
U01hbmFnZXIuUHNldWRvU2VsZWN0b3JOYW1lcy5TY3JvbGxiYXJUaHVtYjoKQEAgLTY4NCw2ICs2
ODYsNyBAQCBXSS5DU1NNYW5hZ2VyLkFwcGVhcmFuY2UgPSB7CiBXSS5DU1NNYW5hZ2VyLlBzZXVk
b1NlbGVjdG9yTmFtZXMgPSB7CiAgICAgQWZ0ZXI6ICJhZnRlciIsCiAgICAgQmVmb3JlOiAiYmVm
b3JlIiwKKyAgICBCYWNrZHJvcDogImJhY2tkcm9wIiwKICAgICBGaXJzdExldHRlcjogImZpcnN0
LWxldHRlciIsCiAgICAgRmlyc3RMaW5lOiAiZmlyc3QtbGluZSIsCiAgICAgSGlnaGxpZ2h0OiAi
aGlnaGxpZ2h0IiwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwppbmRleCAyYjAyMzIwZmIyZGEwMmRhOTRhNDRkNDNiNGMwY2YxN2EwYjdm
NzdiLi4zOTk1MjdhZDI1YjAwNTRmMTVhNjM3NzczYjJiZGQ3MzFkN2QwNzkzIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTUgQEAKKzIwMjEtMDgtMTEgIFRpbSBOZ3V5ZW4gIDxudGltQGFwcGxlLmNvbT4KKwor
ICAgICAgICBJbXBsZW1lbnQgOjpiYWNrZHJvcCBwc2V1ZG8gZWxlbWVudAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI3ODAxCisKKyAgICAgICAgVGhp
cyBhZGRzIFVBIHN0eWxlcywgUmVuZGVyVHJlZUJ1aWxkZXIgc3VwcG9ydCBhbmQgV2ViSW5zcGVj
dG9yIHN1cHBvcnQgZm9yIDo6YmFja2Ryb3AuCisgICAgICAgIFNvbWUgaW1wb3J0ZWQgYmxpbmsg
dGVzdHMgbm93IHN0YXJ0IHBhc3NpbmcsIHNvbWUgc3RpbGwgbmVlZCBwcm9wZXIgdG9wIGxheWVy
IHN1cHBvcnQuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgKiBUZXN0RXhwZWN0YXRpb25zOgorCiAyMDIxLTA4LTExICBBeXVtaSBLb2ppbWEgIDxheXVt
aV9rb2ppbWFAYXBwbGUuY29tPgogCiAgICAgICAgIFsgV2luIEVXUyBdIGZhc3QvZm9ybXMvaW5w
dXQtYmFzZWxpbmUuaHRtbCBpcyBmbGFreSBjcmFzaGluZy4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hh
bmdlTG9nCmluZGV4IDlkMTIzZjMyZTAxMzEwYWUwY2MyZjA0ZjVjMDJiMmQzZTJkZDhjNjUuLmQ3
MTQzNzZiMGNkZjNjZWViODYwZjNkYmZjNGVkNDQ2YmM3MTdmY2QgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDIxLTA4LTExICBUaW0gTmd1eWVuICA8
bnRpbUBhcHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IDo6YmFja2Ryb3AgcHNldWRvIGVs
ZW1lbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIy
NzgwMQorCisgICAgICAgIFRoaXMgYWRkcyBVQSBzdHlsZXMsIFJlbmRlclRyZWVCdWlsZGVyIHN1
cHBvcnQgYW5kIFdlYkluc3BlY3RvciBzdXBwb3J0IGZvciA6OmJhY2tkcm9wLgorICAgICAgICBT
b21lIGltcG9ydGVkIGJsaW5rIHRlc3RzIG5vdyBzdGFydCBwYXNzaW5nLCBzb21lIHN0aWxsIG5l
ZWQgcHJvcGVyIHRvcCBsYXllciBzdXBwb3J0LgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdmFsdWVz
L2NoLWVtcHR5LXBzZXVkby1yZWNhbGMtb24tZm9udC1sb2FkLWV4cGVjdGVkLnR4dDoKKwogMjAy
MS0wOC0xMSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIEhUTUxN
ZXRhRWxlbWVudCBodHRwLWVxdWl2IHNob3VsZCBub3QgYmUgcHJvY2Vzc2VkIGluIHNoYWRvdyB0
cmVlcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRl
c3RzL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggMzE1NjI0OTc0NjJlZGVhYzQyZTcwNGVhOTA3MzAy
ODdlN2ZhNTM2NS4uOThlMjNjYThhNjI1MGNmY2I2OTExM2UyYWY2Y2EyZDk4OWM5MmFlNCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9U
ZXN0RXhwZWN0YXRpb25zCkBAIC0yMzY5LDE3ICsyMzY5LDEwIEBAIGxvYWRlci9zdGF0ZW9iamVj
dHMvcmVwbGFjZXN0YXRlLXNpemUuaHRtbCBbIFNsb3cgXQogaW1wb3J0ZWQvYmxpbmsvZmFzdC9t
dWx0aWNvbC9vdXRsaW5lcy1hdC1jb2x1bW4tYm91bmRhcmllcy5odG1sIFsgSW1hZ2VPbmx5RmFp
bHVyZSBdCiBmYXN0L211bHRpY29sL211bHRpY29sLXdpdGgtY2hpbGQtcmVuZGVyTGF5ZXItZm9y
LWlucHV0Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIAotIyA6OmJhY2tkcm9wCi13ZWJraXQu
b3JnL2IvMjI3ODAxIGltcG9ydGVkL2JsaW5rL2RpYWxvZy9iYWNrZHJvcC1kZXNjZW5kYW50LXNl
bGVjdG9yLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8yMjc4MDEgaW1w
b3J0ZWQvYmxpbmsvZGlhbG9nL2JhY2tkcm9wLWRvZXMtbm90LWluaGVyaXQuaHRtbCBbIEltYWdl
T25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzIyNzgwMSBpbXBvcnRlZC9ibGluay9kaWFsb2cv
YmFja2Ryb3AtZHluYW1pYy1zdHlsZS1jaGFuZ2UuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQot
d2Via2l0Lm9yZy9iLzIyNzgwMSBpbXBvcnRlZC9ibGluay9kaWFsb2cvYmFja2Ryb3AtaW4tZmxv
dy5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMjI3ODAxIGltcG9ydGVk
L2JsaW5rL2RpYWxvZy9iYWNrZHJvcC1zdGFja2luZy1vcmRlci5odG1sIFsgSW1hZ2VPbmx5RmFp
bHVyZSBdCi0KICMgVG9wIGxheWVyIHRlc3RzCit3ZWJraXQub3JnL2IvODQ3OTYgaW1wb3J0ZWQv
YmxpbmsvZGlhbG9nL2JhY2tkcm9wLWluLWZsb3cuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQor
d2Via2l0Lm9yZy9iLzg0Nzk2IGltcG9ydGVkL2JsaW5rL2RpYWxvZy9iYWNrZHJvcC1zdGFja2lu
Zy1vcmRlci5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvODQ3OTYgaW1w
b3J0ZWQvYmxpbmsvZGlhbG9nL2RvbnQtc2hhcmUtc3R5bGUtdG8tdG9wLWxheWVyLmh0bWwgWyBJ
bWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi84NDc5NiBpbXBvcnRlZC9ibGluay9kaWFs
b2cvbW9kYWwtZGlhbG9nLWJhY2tkcm9wLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtp
dC5vcmcvYi84NDc5NiBpbXBvcnRlZC9ibGluay9kaWFsb2cvbW9kYWwtZGlhbG9nLWdlbmVyYXRl
ZC1jb250ZW50Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi84NDc5NiBp
bXBvcnRlZC9ibGluay9kaWFsb2cvbW9kYWwtZGlhbG9nLWluLXJlcGxhY2VkLXJlbmRlcmVyLmh0
bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi84NDc5NiBpbXBvcnRlZC9ibGlu
ay9kaWFsb2cvbW9kYWwtZGlhbG9nLWluLXRhYmxlLWNvbHVtbi5odG1sIFsgSW1hZ2VPbmx5RmFp
bHVyZSBdCiB3ZWJraXQub3JnL2IvODQ3OTYgaW1wb3J0ZWQvYmxpbmsvZGlhbG9nL3JlbW92ZWQt
ZWxlbWVudC1pcy1yZW1vdmVkLWZyb20tdG9wLWxheWVyLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJl
IF0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy12YWx1ZXMvY2gtZW1wdHktcHNldWRvLXJlY2FsYy1vbi1mb250LWxvYWQtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3MvY3NzLXZhbHVlcy9jaC1lbXB0eS1wc2V1ZG8tcmVjYWxjLW9uLWZvbnQtbG9hZC1leHBlY3Rl
ZC50eHQKaW5kZXggNjljN2VhOTg0N2M2OTlmMjVjNTE4YTZiMTc3YWUyYWM1YmQ1ZmM3Yi4uMDE2
NjFmYTkxZjU5MzY3MzJkMzU5ZjI1NzViODAxOTJiNDBjN2FlOSAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXZhbHVlcy9jaC1l
bXB0eS1wc2V1ZG8tcmVjYWxjLW9uLWZvbnQtbG9hZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXZhbHVlcy9jaC1l
bXB0eS1wc2V1ZG8tcmVjYWxjLW9uLWZvbnQtbG9hZC1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1
IEBACiAKLUZBSUwgY2ggaW4gcHNldWRvLWVsZW1lbnQgOjpiZWZvcmUgc2hvdWxkIGJlIHJlY2Fs
Y3VsYXRlZCBhZnRlciBsb2FkaW5nIGEgd2ViIGZvbnQgYXNzZXJ0X2xlc3NfdGhhbjogZXhwZWN0
ZWQgYSBudW1iZXIgbGVzcyB0aGFuIDI0IGJ1dCBnb3QgTmFOCi1GQUlMIGNoIGluIHBzZXVkby1l
bGVtZW50IDo6YWZ0ZXIgc2hvdWxkIGJlIHJlY2FsY3VsYXRlZCBhZnRlciBsb2FkaW5nIGEgd2Vi
IGZvbnQgYXNzZXJ0X2xlc3NfdGhhbjogZXhwZWN0ZWQgYSBudW1iZXIgbGVzcyB0aGFuIDI0IGJ1
dCBnb3QgTmFOCi1GQUlMIGNoIGluIHBzZXVkby1lbGVtZW50IDo6YmFja2Ryb3Agc2hvdWxkIGJl
IHJlY2FsY3VsYXRlZCBhZnRlciBsb2FkaW5nIGEgd2ViIGZvbnQgYXNzZXJ0X2xlc3NfdGhhbjog
ZXhwZWN0ZWQgYSBudW1iZXIgbGVzcyB0aGFuIDI0IGJ1dCBnb3QgTmFOCitQQVNTIGNoIGluIHBz
ZXVkby1lbGVtZW50IDo6YmVmb3JlIHNob3VsZCBiZSByZWNhbGN1bGF0ZWQgYWZ0ZXIgbG9hZGlu
ZyBhIHdlYiBmb250CitQQVNTIGNoIGluIHBzZXVkby1lbGVtZW50IDo6YWZ0ZXIgc2hvdWxkIGJl
IHJlY2FsY3VsYXRlZCBhZnRlciBsb2FkaW5nIGEgd2ViIGZvbnQKK1BBU1MgY2ggaW4gcHNldWRv
LWVsZW1lbnQgOjpiYWNrZHJvcCBzaG91bGQgYmUgcmVjYWxjdWxhdGVkIGFmdGVyIGxvYWRpbmcg
YSB3ZWIgZm9udAogCg==
</data>
<flag name="commit-queue"
          id="458220"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>435411</attachid>
            <date>2021-08-12 04:08:28 -0700</date>
            <delta_ts>2021-08-12 06:38:39 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227801-20210812130827.patch</filename>
            <type>text/plain</type>
            <size>22140</size>
            <attacher name="Tim Nguyen (:ntim)">ntim</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgwOTIzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAx
ZDM4N2Q3MjBmMzEyNjFlMjRkMmU5ZTRmYTM5ZTBhOGIwMDhjMmU3Li5mZjA1MGVlOGVmZDllZDQ5
OGYxMWE2NDU5YjdjZjc1YmFjMzg1M2FhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNSBAQAorMjAyMS0wOC0xMSAgVGltIE5ndXllbiAgPG50aW1AYXBwbGUuY29tPgorCisg
ICAgICAgIEltcGxlbWVudCA6OmJhY2tkcm9wIHBzZXVkbyBlbGVtZW50CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjc4MDEKKworICAgICAgICBUaGlz
IGFkZHMgVUEgc3R5bGVzLCBSZW5kZXJUcmVlQnVpbGRlciBzdXBwb3J0IGFuZCBXZWJJbnNwZWN0
b3Igc3VwcG9ydCBmb3IgOjpiYWNrZHJvcC4KKyAgICAgICAgU29tZSBpbXBvcnRlZCBibGluayB0
ZXN0cyBub3cgc3RhcnQgcGFzc2luZywgc29tZSBzdGlsbCBuZWVkIHByb3BlciB0b3AgbGF5ZXIg
c3VwcG9ydC4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIGluc3BlY3Rvci9wcm90b2NvbC9DU1MuanNvbjoKKwogMjAyMS0wOC0xMSAgWXVzdWtlIFN1
enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgogCiAgICAgICAgIFdURkNyYXNoIGluIEpTQzo6TGV4
ZXI8Y2hhcjE2X3Q+OjphcHBlbmQ4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjUwMTU5NjEzNzExMDU0MWRlYmQ3
MDY5YWEzZmYwNjVhNGFmZjM4NC4uMWFjNDk1NjMwZGVlODg0ZmQ5NmY4MGI2MjUzMGE2YTdlYzU3
OGVkNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDIxLTA4LTExICBUaW0gTmd1eWVu
ICA8bnRpbUBhcHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IDo6YmFja2Ryb3AgcHNldWRv
IGVsZW1lbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIyNzgwMQorCisgICAgICAgIFRoaXMgYWRkcyBVQSBzdHlsZXMsIFJlbmRlclRyZWVCdWlsZGVy
IHN1cHBvcnQgYW5kIFdlYkluc3BlY3RvciBzdXBwb3J0IGZvciA6OmJhY2tkcm9wLgorICAgICAg
ICBTb21lIGltcG9ydGVkIGJsaW5rIHRlc3RzIG5vdyBzdGFydCBwYXNzaW5nLCBzb21lIHN0aWxs
IG5lZWQgcHJvcGVyIHRvcCBsYXllciBzdXBwb3J0LgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgICogY3NzL0NTU1NlbGVjdG9yLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkNTU1NlbGVjdG9yOjpwc2V1ZG9JZCk6CisgICAgICAgICogY3NzL0NTU1NlbGVj
dG9yLmg6CisgICAgICAgICogY3NzL1NlbGVjdG9yUHNldWRvRWxlbWVudFR5cGVNYXAuaW46Cisg
ICAgICAgICogY3NzL2RpYWxvZy5jc3M6CisgICAgICAgIChkaWFsb2c6OmJhY2tkcm9wKToKKyAg
ICAgICAgKDo6YmFja2Ryb3ApOgorICAgICAgICAqIGRvbS9FbGVtZW50Lmg6CisgICAgICAgIChX
ZWJDb3JlOjpFbGVtZW50Ojppc0luVG9wTGF5ZXIgY29uc3QpOgorICAgICAgICAqIGluc3BlY3Rv
ci9hZ2VudHMvSW5zcGVjdG9yQ1NTQWdlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6cHJvdG9j
b2xWYWx1ZUZvclBzZXVkb0lkKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJFbGVtZW50OjpiYWNrZHJvcFJlbmRlcmVyIGNv
bnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckVsZW1lbnQ6OnNldEJhY2tkcm9wUmVuZGVy
ZXIpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJFbGVtZW50Lmg6CisgICAgICAgICogcmVu
ZGVyaW5nL1JlbmRlck9iamVjdC5oOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9SZW5kZXJT
dHlsZUNvbnN0YW50cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpvcGVyYXRvcjw8KToKKyAgICAg
ICAgKiByZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaDoKKyAgICAgICAgKiBy
ZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6UmVuZGVyVHJlZUJ1aWxkZXI6OmRlc3Ryb3lBbmRDbGVhblVwQW5vbnltb3VzV3JhcHBlcnMp
OgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVHJlZUJ1aWxkZXI6OnVwZGF0ZUFmdGVyRGVzY2Vu
ZGFudHMpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVHJlZUJ1aWxkZXI6OnVwZGF0ZUJhY2tk
cm9wUmVuZGVyZXIpOgorICAgICAgICAqIHJlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlQnVp
bGRlci5oOgorICAgICAgICAqIHN0eWxlL1N0eWxlVHJlZVJlc29sdmVyLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlN0eWxlOjpUcmVlUmVzb2x2ZXI6OnJlc29sdmVQc2V1ZG9TdHlsZSk6CisKIDIw
MjEtMDgtMTEgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIE1l
ZGlhIGVsZW1lbnQgaXMgbm90IGFsd2F5cyBhdXRvcGxheWluZyB3aGVuIGdvaW5nIGZyb20gYmFj
a2dyb3VuZCB0byBmb3JlZ3JvdW5kIGlmIGl0IGlzIGluaXRpYWxseSBub3QgaW4gdmlld3BvcnQK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IDFiZTNjOWY1MDA0YzJjM2MzYzc2OTM2NjkxYTE0
YjQ2MTM1MzFlYmIuLjg5YTk3ZmIzOTE0YTNkNWE2NmVhOGNkYTAyYjhmMGJjNjYxNjY1M2MgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTA4LTExICBUaW0g
Tmd1eWVuICA8bnRpbUBhcHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IDo6YmFja2Ryb3Ag
cHNldWRvIGVsZW1lbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIyNzgwMQorCisgICAgICAgIFRoaXMgYWRkcyBVQSBzdHlsZXMsIFJlbmRlclRyZWVC
dWlsZGVyIHN1cHBvcnQgYW5kIFdlYkluc3BlY3RvciBzdXBwb3J0IGZvciA6OmJhY2tkcm9wLgor
ICAgICAgICBTb21lIGltcG9ydGVkIGJsaW5rIHRlc3RzIG5vdyBzdGFydCBwYXNzaW5nLCBzb21l
IHN0aWxsIG5lZWQgcHJvcGVyIHRvcCBsYXllciBzdXBwb3J0LgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVXNlckludGVyZmFjZS9Db250cm9sbGVy
cy9DU1NNYW5hZ2VyLmpzOgorICAgICAgICAoV0kuQ1NTTWFuYWdlci5kaXNwbGF5TmFtZUZvclBz
ZXVkb0lkKToKKwogMjAyMS0wOC0wMyAgU29uaWEgU2luZ2xhICA8c29uaWFzaW5nbGEuMTgxMkBn
bWFpbC5jb20+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogQWRkIHN0YW5kYXJkIGxvZ2ljYWwg
cHJvcGVydGllcyB0byBDU1Mga2V5d29yZCBjb21wbGV0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Byb3RvY29sL0NTUy5qc29uIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9DU1MuanNvbgppbmRleCBjOWViNTc2YmQ3YzI1
OTM0YWE1OWNiZjMyZTFjY2NmOTMzOTE3Y2U4Li40YzYyZGU5MGExNTBjNjIzZGM1YTA3NDUyYWE0
YjQzNzliMjg0NmY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9y
L3Byb3RvY29sL0NTUy5qc29uCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Iv
cHJvdG9jb2wvQ1NTLmpzb24KQEAgLTQzLDYgKzQzLDcgQEAKICAgICAgICAgICAgICAgICAiYmVm
b3JlIiwKICAgICAgICAgICAgICAgICAiYWZ0ZXIiLAogICAgICAgICAgICAgICAgICJzZWxlY3Rp
b24iLAorICAgICAgICAgICAgICAgICJiYWNrZHJvcCIsCiAgICAgICAgICAgICAgICAgInNjcm9s
bGJhciIsCiAgICAgICAgICAgICAgICAgInNjcm9sbGJhci10aHVtYiIsCiAgICAgICAgICAgICAg
ICAgInNjcm9sbGJhci1idXR0b24iLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NT
U1NlbGVjdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWxlY3Rvci5jcHAKaW5kZXgg
YzE1YzYyOTJlZjhiNTIyNDIxOTFlYmM0YzQxNTA1MmU1ZTIyNGE0YS4uNjg1MGU4NGY4YmYwYzU0
ODExNzQ2MTI1MDY4ZTAwMzgwMmU5MmQ1OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1NlbGVjdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2VsZWN0b3IuY3Bw
CkBAIC0yMzIsNiArMjMyLDggQEAgUHNldWRvSWQgQ1NTU2VsZWN0b3I6OnBzZXVkb0lkKFBzZXVk
b0VsZW1lbnRUeXBlIHR5cGUpCiAgICAgICAgIHJldHVybiBQc2V1ZG9JZDo6SGlnaGxpZ2h0Owog
ICAgIGNhc2UgUHNldWRvRWxlbWVudE1hcmtlcjoKICAgICAgICAgcmV0dXJuIFBzZXVkb0lkOjpN
YXJrZXI7CisgICAgY2FzZSBQc2V1ZG9FbGVtZW50QmFja2Ryb3A6CisgICAgICAgIHJldHVybiBQ
c2V1ZG9JZDo6QmFja2Ryb3A7CiAgICAgY2FzZSBQc2V1ZG9FbGVtZW50QmVmb3JlOgogICAgICAg
ICByZXR1cm4gUHNldWRvSWQ6OkJlZm9yZTsKICAgICBjYXNlIFBzZXVkb0VsZW1lbnRBZnRlcjoK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWxlY3Rvci5oIGIvU291cmNlL1dl
YkNvcmUvY3NzL0NTU1NlbGVjdG9yLmgKaW5kZXggNWI0YjlmMTVmMzM0ZDI0YjJjYjJjMWJiZTA5
NjRkMGY3ZGU4MGEwMy4uYmM4M2FmZDkxNzQwYTExMjBmMzFkODQ2NzljOWQxMjZjN2NjMWY5NSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1NlbGVjdG9yLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1NlbGVjdG9yLmgKQEAgLTE4MCw2ICsxODAsNyBAQCBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAgICAgICAgIGVudW0gUHNldWRvRWxlbWVudFR5cGUgewogICAgICAgICAgICAg
UHNldWRvRWxlbWVudFVua25vd24gPSAwLAogICAgICAgICAgICAgUHNldWRvRWxlbWVudEFmdGVy
LAorICAgICAgICAgICAgUHNldWRvRWxlbWVudEJhY2tkcm9wLAogICAgICAgICAgICAgUHNldWRv
RWxlbWVudEJlZm9yZSwKICNpZiBFTkFCTEUoVklERU8pCiAgICAgICAgICAgICBQc2V1ZG9FbGVt
ZW50Q3VlLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1NlbGVjdG9yUHNldWRvRWxl
bWVudFR5cGVNYXAuaW4gYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JQc2V1ZG9FbGVtZW50
VHlwZU1hcC5pbgppbmRleCAwYjVlZmM2Njg0Y2I1NmZlZWUwNTkyZTczZjg2YzYyZTBiMmMyY2Uy
Li5lMWU1MTk0OGZlMjI3NjNhMTdkZTE4ODk0Y2Q0Nzk4YTk3MGEyMDQxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JQc2V1ZG9FbGVtZW50VHlwZU1hcC5pbgorKysgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JQc2V1ZG9FbGVtZW50VHlwZU1hcC5pbgpAQCAtMSw0
ICsxLDUgQEAKIGFmdGVyCitiYWNrZHJvcAogYmVmb3JlCiAjaWYgRU5BQkxFKFZJREVPKQogY3Vl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvZGlhbG9nLmNzcyBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9kaWFsb2cuY3NzCmluZGV4IGI2MWRjOWQ3NmYyMGJjMDRjNDA0NjU2YjEyYzRjOGFk
YWNiOTA5NjYuLjFlN2U1YTE1MjBmMTMyYjY5MDQ2ZDk0ZTJlMmExZGYzMDQ1M2IwNWEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9kaWFsb2cuY3NzCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9kaWFsb2cuY3NzCkBAIC0yNCwzICsyNCwxNiBAQCBkaWFsb2c6LWludGVybmFsLW1vZGFs
LWRpYWxvZyB7CiAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA2cHggLSAyZW0pOwogICAgIG1h
eC1oZWlnaHQ6IGNhbGMoMTAwJSAtIDZweCAtIDJlbSk7CiB9CisKK2RpYWxvZzo6YmFja2Ryb3Ag
eworICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsKK30KKworOjpiYWNrZHJvcCB7
CisgICAgZGlzcGxheTogYmxvY2s7CisgICAgcG9zaXRpb246IGZpeGVkOworICAgIHRvcDogMDsK
KyAgICBsZWZ0OiAwOworICAgIHJpZ2h0OiAwOworICAgIGJvdHRvbTogMDsKK30KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxl
bWVudC5oCmluZGV4IDliNDA5Y2E5ZjNkOTk4NzY1ZTIxZWUzZTU3MDllZDM2OTM4MDQwNjAuLjU4
MmRiMTIzYjZkOTc1Nzc0ZWE1ZmMyNDJhODM2MzFjODQ3M2JlM2UgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQu
aApAQCAtNTExLDYgKzUxMSw4IEBAIHB1YmxpYzoKICAgICBjb25zdCBSZW5kZXJTdHlsZSogbGFz
dFN0eWxlQ2hhbmdlRXZlbnRTdHlsZShQc2V1ZG9JZCkgY29uc3Q7CiAgICAgdm9pZCBzZXRMYXN0
U3R5bGVDaGFuZ2VFdmVudFN0eWxlKFBzZXVkb0lkLCBzdGQ6OnVuaXF1ZV9wdHI8Y29uc3QgUmVu
ZGVyU3R5bGU+JiYpOwogCisgICAgYm9vbCBpc0luVG9wTGF5ZXIoKSBjb25zdCB7IHJldHVybiBk
b2N1bWVudCgpLnRvcExheWVyRWxlbWVudHMoKS5jb250YWlucyhtYWtlUmVmKCpjb25zdF9jYXN0
PEVsZW1lbnQqPih0aGlzKSkpOyB9CisKICNpZiBFTkFCTEUoRlVMTFNDUkVFTl9BUEkpCiAgICAg
Ym9vbCBjb250YWluc0Z1bGxTY3JlZW5FbGVtZW50KCkgY29uc3QgeyByZXR1cm4gaGFzTm9kZUZs
YWcoTm9kZUZsYWc6OkNvbnRhaW5zRnVsbFNjcmVlbkVsZW1lbnQpOyB9CiAgICAgdm9pZCBzZXRD
b250YWluc0Z1bGxTY3JlZW5FbGVtZW50KGJvb2wpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JDU1NBZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckNTU0FnZW50LmNwcAppbmRleCA2NWE4MTMxMjlk
NjMxNzM5YWIwNTYwNDFmOTc1MGJkMjg4OGUyYzQ4Li4zZWMxNGY2NzFlZDg2NTUxYzRjYzlkMWVk
Yjg2YzdhZmEwMGNmMjVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdl
bnRzL0luc3BlY3RvckNTU0FnZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
YWdlbnRzL0luc3BlY3RvckNTU0FnZW50LmNwcApAQCAtNDQ5LDYgKzQ0OSw4IEBAIHN0YXRpYyBz
dGQ6Om9wdGlvbmFsPFByb3RvY29sOjpDU1M6OlBzZXVkb0lkPiBwcm90b2NvbFZhbHVlRm9yUHNl
dWRvSWQoUHNldWRvSWQKICAgICAgICAgcmV0dXJuIFByb3RvY29sOjpDU1M6OlBzZXVkb0lkOjpG
aXJzdExldHRlcjsKICAgICBjYXNlIFBzZXVkb0lkOjpNYXJrZXI6CiAgICAgICAgIHJldHVybiBQ
cm90b2NvbDo6Q1NTOjpQc2V1ZG9JZDo6TWFya2VyOworICAgIGNhc2UgUHNldWRvSWQ6OkJhY2tk
cm9wOgorICAgICAgICByZXR1cm4gUHJvdG9jb2w6OkNTUzo6UHNldWRvSWQ6OkJhY2tkcm9wOwog
ICAgIGNhc2UgUHNldWRvSWQ6OkJlZm9yZToKICAgICAgICAgcmV0dXJuIFByb3RvY29sOjpDU1M6
OlBzZXVkb0lkOjpCZWZvcmU7CiAgICAgY2FzZSBQc2V1ZG9JZDo6QWZ0ZXI6CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5jcHAKaW5kZXggZjg3ZDA1ZjM5OWU4NDkwOGI1
OTk4ZjVjOWY5NTZjOWFkNWNjMmYxNy4uZTgwZWQ3MWRhZTQxZDMyNmRiMjA1NjcyYzRlYjg0NzEy
MjQxYmY2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVsZW1l
bnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbGVtZW50LmNwcApA
QCAtMjM3NSw0ICsyMzc1LDE0IEBAIHN0ZDo6dW5pcXVlX3B0cjxSZW5kZXJTdHlsZT4gUmVuZGVy
RWxlbWVudDo6YW5pbWF0ZWRTdHlsZSgpCiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAorUmVuZGVy
QmxvY2tGbG93KiBSZW5kZXJFbGVtZW50OjpiYWNrZHJvcFJlbmRlcmVyKCkgY29uc3QKK3sKKyAg
ICByZXR1cm4gaGFzUmFyZURhdGEoKSA/IHJhcmVEYXRhKCkuYmFja2Ryb3BSZW5kZXJlci5nZXQo
KSA6IG51bGxwdHI7Cit9CisKK3ZvaWQgUmVuZGVyRWxlbWVudDo6c2V0QmFja2Ryb3BSZW5kZXJl
cihSZW5kZXJCbG9ja0Zsb3cmIHJlbmRlcmVyKQoreworICAgIGVuc3VyZVJhcmVEYXRhKCkuYmFj
a2Ryb3BSZW5kZXJlciA9IG1ha2VXZWFrUHRyKHJlbmRlcmVyKTsKK30KKwogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVsZW1lbnQuaCBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJFbGVtZW50LmgKaW5kZXggMjM3N2JhOTcyYzRhYzk1Y2M4Zjc4
ZGQzMmRkZTgxOTQ5YzQ3ZmUyNS4uMGM0YWQ0M2U5YzRmYzJlMmRkNWY3NGQ4NTQ2MmUyMjhmOWE0
MWRhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVsZW1lbnQu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5oCkBAIC0yNTcs
NiArMjU3LDkgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBzdXNwZW5kQW5pbWF0aW9ucyhN
b25vdG9uaWNUaW1lID0gTW9ub3RvbmljVGltZSgpKSB7IH0KICAgICBzdGQ6OnVuaXF1ZV9wdHI8
UmVuZGVyU3R5bGU+IGFuaW1hdGVkU3R5bGUoKTsKIAorICAgIFJlbmRlckJsb2NrRmxvdyogYmFj
a2Ryb3BSZW5kZXJlcigpIGNvbnN0OworICAgIHZvaWQgc2V0QmFja2Ryb3BSZW5kZXJlcihSZW5k
ZXJCbG9ja0Zsb3cmKTsKKwogcHJvdGVjdGVkOgogICAgIGVudW0gQmFzZVR5cGVGbGFnIHsKICAg
ICAgICAgUmVuZGVyTGF5ZXJNb2RlbE9iamVjdEZsYWcgID0gMSA8PCAwLApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlck9iamVjdC5oCmluZGV4IDJmZDk2ODc5MDIyYTZhM2I4YWNjMzE2YWYx
ZTE1MDRhNjIzMjc0ZTcuLjU1NjdlNGRjMzUxZTU0ZjM4MTUyOWNhNjAwMGNjMWI5NDg1Y2MzNDAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmgKQEAgLTU5LDYgKzU5LDcg
QEAgY2xhc3MgUG9zaXRpb247CiBjbGFzcyBSZW5kZXJCb3hNb2RlbE9iamVjdDsKIGNsYXNzIFJl
bmRlcklubGluZTsKIGNsYXNzIFJlbmRlckJsb2NrOworY2xhc3MgUmVuZGVyQmxvY2tGbG93Owog
Y2xhc3MgUmVuZGVyRWxlbWVudDsKIGNsYXNzIFJlbmRlckZyYWdtZW50ZWRGbG93OwogY2xhc3Mg
UmVuZGVyR2VvbWV0cnlNYXA7CkBAIC05MzgsNiArOTM5LDcgQEAgcHJpdmF0ZToKIAogICAgICAg
ICAvLyBGcm9tIFJlbmRlckVsZW1lbnQKICAgICAgICAgc3RkOjp1bmlxdWVfcHRyPFJlbmRlclN0
eWxlPiBjYWNoZWRGaXJzdExpbmVTdHlsZTsKKyAgICAgICAgV2Vha1B0cjxSZW5kZXJCbG9ja0Zs
b3c+IGJhY2tkcm9wUmVuZGVyZXI7CiAgICAgfTsKICAgICAKICAgICBjb25zdCBSZW5kZXJPYmpl
Y3Q6OlJlbmRlck9iamVjdFJhcmVEYXRhJiByYXJlRGF0YSgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5jcHAK
aW5kZXggNDZhNTkyY2JkNGIwZGZiYjc3MDA1YjBlODVkZjkzOTY2MTQzODJlYS4uNWVkMTAzYzc1
MmMwMTkwNzE4M2RlOTM5NTQ1NDYyZTM5MjNkODIzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuY3BwCkBAIC04ODcs
NiArODg3LDcgQEAgVGV4dFN0cmVhbSYgb3BlcmF0b3I8PChUZXh0U3RyZWFtJiB0cywgUHNldWRv
SWQgcHNldWRvSWQpCiAgICAgY2FzZSBQc2V1ZG9JZDo6Rmlyc3RMZXR0ZXI6IHRzIDw8ICJmaXJz
dC1sZXR0ZXIiOyBicmVhazsKICAgICBjYXNlIFBzZXVkb0lkOjpIaWdobGlnaHQ6IHRzIDw8ICJo
aWdobGlnaHQiOyBicmVhazsKICAgICBjYXNlIFBzZXVkb0lkOjpNYXJrZXI6IHRzIDw8ICJtYXJr
ZXIiOyBicmVhazsKKyAgICBjYXNlIFBzZXVkb0lkOjpCYWNrZHJvcDogdHMgPDwgImJhY2tkcm9w
IjsgYnJlYWs7CiAgICAgY2FzZSBQc2V1ZG9JZDo6QmVmb3JlOiB0cyA8PCAiYmVmb3JlIjsgYnJl
YWs7CiAgICAgY2FzZSBQc2V1ZG9JZDo6QWZ0ZXI6IHRzIDw8ICJhZnRlciI7IGJyZWFrOwogICAg
IGNhc2UgUHNldWRvSWQ6OlNlbGVjdGlvbjogdHMgPDwgInNlbGVjdGlvbiI7IGJyZWFrOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3Rh
bnRzLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFu
dHMuaAppbmRleCA4MzliZGMyMGFiZjk2MTJhMzE3MTFlMWMzMDkwZTUyNGM1Nzc4NDExLi43M2Q0
YjlkNTlhY2ZlZmMxZTYzZTFhOTQ4ZTZiY2NlMGYxMzg3MDYzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaApAQCAtOTUs
NiArOTUsNyBAQCBlbnVtIGNsYXNzIFBzZXVkb0lkIDogdWludDE2X3QgewogICAgIEJlZm9yZSwK
ICAgICBBZnRlciwKICAgICBTZWxlY3Rpb24sCisgICAgQmFja2Ryb3AsCiAgICAgU2Nyb2xsYmFy
LAogCiAgICAgLy8gSW50ZXJuYWw6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvdXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL3VwZGF0aW5nL1JlbmRlclRyZWVCdWlsZGVyLmNwcAppbmRleCBlYjY2OGI0YmQ2Mzg2NjMw
OTk0ZTI2YWRkMmQxZTY1YzgzOTQ5OTlmLi43YWM4N2I4MGViMGI4OGI2MmE4MmI0OTdhMjliYjQw
NzlhODFkMDU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcv
UmVuZGVyVHJlZUJ1aWxkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRh
dGluZy9SZW5kZXJUcmVlQnVpbGRlci5jcHAKQEAgLTI5LDYgKzI5LDcgQEAKICNpbmNsdWRlICJB
WE9iamVjdENhY2hlLmgiCiAjaW5jbHVkZSAiRnJhbWUuaCIKICNpbmNsdWRlICJGcmFtZVNlbGVj
dGlvbi5oIgorI2luY2x1ZGUgIk5vZGVSZW5kZXJTdHlsZS5oIgogI2luY2x1ZGUgIlJlbmRlckJ1
dHRvbi5oIgogI2luY2x1ZGUgIlJlbmRlckNvdW50ZXIuaCIKICNpbmNsdWRlICJSZW5kZXJEZXNj
ZW5kYW50SXRlcmF0b3IuaCIKQEAgLTgwNyw2ICs4MDgsMTIgQEAgdm9pZCBSZW5kZXJUcmVlQnVp
bGRlcjo6ZGVzdHJveUFuZENsZWFuVXBBbm9ueW1vdXNXcmFwcGVycyhSZW5kZXJPYmplY3QmIHJl
bmRlcmUKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAorICAgIC8vIEFsc28gZGVzdHJveSA6OmJh
Y2tkcm9wIGFsb25nIHdpdGggZWxlbWVudCBpZiB0aGVyZSBpcyBvbmUKKyAgICBpZiAoaXM8UmVu
ZGVyRWxlbWVudD4ocmVuZGVyZXJUb0Rlc3Ryb3kpKSB7CisgICAgICAgIGlmIChhdXRvIGJhY2tk
cm9wUmVuZGVyZXIgPSBkb3duY2FzdDxSZW5kZXJFbGVtZW50PihyZW5kZXJlclRvRGVzdHJveSku
YmFja2Ryb3BSZW5kZXJlcigpKQorICAgICAgICAgICAgZGVzdHJveSgqYmFja2Ryb3BSZW5kZXJl
cik7CisgICAgfQorCiAgICAgYXV0byBpc0Fub255bW91c0FuZFNhZmVUb0RlbGV0ZSA9IFtdIChj
b25zdCBhdXRvJiByZW5kZXJlcikgewogICAgICAgICByZXR1cm4gcmVuZGVyZXIuaXNBbm9ueW1v
dXMoKSAmJiAhcmVuZGVyZXIuaXNSZW5kZXJWaWV3KCkgJiYgIXJlbmRlcmVyLmlzUmVuZGVyRnJh
Z21lbnRlZEZsb3coKTsKICAgICB9OwpAQCAtODc1LDYgKzg4Miw4IEBAIHZvaWQgUmVuZGVyVHJl
ZUJ1aWxkZXI6OmRlc3Ryb3lBbmRDbGVhblVwQW5vbnltb3VzV3JhcHBlcnMoUmVuZGVyT2JqZWN0
JiByZW5kZXJlCiAKIHZvaWQgUmVuZGVyVHJlZUJ1aWxkZXI6OnVwZGF0ZUFmdGVyRGVzY2VuZGFu
dHMoUmVuZGVyRWxlbWVudCYgcmVuZGVyZXIpCiB7CisgICAgdXBkYXRlQmFja2Ryb3BSZW5kZXJl
cihyZW5kZXJlcik7CisKICAgICBpZiAoaXM8UmVuZGVyQmxvY2s+KHJlbmRlcmVyKSkKICAgICAg
ICAgZmlyc3RMZXR0ZXJCdWlsZGVyKCkudXBkYXRlQWZ0ZXJEZXNjZW5kYW50cyhkb3duY2FzdDxS
ZW5kZXJCbG9jaz4ocmVuZGVyZXIpKTsKICAgICBpZiAoaXM8UmVuZGVyTGlzdEl0ZW0+KHJlbmRl
cmVyKSkKQEAgLTg4Myw2ICs4OTIsNDcgQEAgdm9pZCBSZW5kZXJUcmVlQnVpbGRlcjo6dXBkYXRl
QWZ0ZXJEZXNjZW5kYW50cyhSZW5kZXJFbGVtZW50JiByZW5kZXJlcikKICAgICAgICAgbXVsdGlD
b2x1bW5CdWlsZGVyKCkudXBkYXRlQWZ0ZXJEZXNjZW5kYW50cyhkb3duY2FzdDxSZW5kZXJCbG9j
a0Zsb3c+KHJlbmRlcmVyKSk7CiB9CiAKK3ZvaWQgUmVuZGVyVHJlZUJ1aWxkZXI6OnVwZGF0ZUJh
Y2tkcm9wUmVuZGVyZXIoUmVuZGVyRWxlbWVudCYgcmVuZGVyZXIpCit7CisgICAgLy8gRGVzdHJv
eSA6OmJhY2tkcm9wIGlmIG5ldyBlbGVtZW50IG5vIGxvbmdlciBpcyBpbiB0b3AgbGF5ZXIKKyAg
ICBpZiAocmVuZGVyZXIuZWxlbWVudCgpICYmICFyZW5kZXJlci5lbGVtZW50KCktPmlzSW5Ub3BM
YXllcigpKSB7CisgICAgICAgIGlmIChhdXRvKiBiYWNrZHJvcFJlbmRlcmVyID0gcmVuZGVyZXIu
YmFja2Ryb3BSZW5kZXJlcigpKQorICAgICAgICAgICAgZGVzdHJveSgqYmFja2Ryb3BSZW5kZXJl
cik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICAvLyBVcGRhdGUgOjpiYWNrZHJvcCBy
ZW5kZXJlciBzdHlsZSBvciBjcmVhdGUgcmVuZGVyZXIKKyAgICBhdXRvIHN0eWxlID0gcmVuZGVy
ZXIuZ2V0Q2FjaGVkUHNldWRvU3R5bGUoUHNldWRvSWQ6OkJhY2tkcm9wLCByZW5kZXJlci5kb2N1
bWVudCgpLnJlbmRlclN0eWxlKCkpOworICAgIGlmICghc3R5bGUgfHwgc3R5bGUtPmRpc3BsYXko
KSA9PSBEaXNwbGF5VHlwZTo6Tm9uZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgYXV0byBuZXdT
dHlsZSA9IFJlbmRlclN0eWxlOjpjbG9uZSgqc3R5bGUpOworICAgIFJlbmRlclB0cjxSZW5kZXJC
bG9ja0Zsb3c+IG5ld0JhY2tkcm9wUmVuZGVyZXI7CisgICAgYXV0byogYmFja2Ryb3BSZW5kZXJl
ciA9IHJlbmRlcmVyLmJhY2tkcm9wUmVuZGVyZXIoKTsKKyAgICBpZiAoYmFja2Ryb3BSZW5kZXJl
cikKKyAgICAgICAgYmFja2Ryb3BSZW5kZXJlci0+c2V0U3R5bGUoV1RGTW92ZShuZXdTdHlsZSkp
OworICAgIGVsc2UgeworICAgICAgICBuZXdCYWNrZHJvcFJlbmRlcmVyID0gV2ViQ29yZTo6Y3Jl
YXRlUmVuZGVyZXI8UmVuZGVyQmxvY2tGbG93PihyZW5kZXJlci5kb2N1bWVudCgpLCBXVEZNb3Zl
KG5ld1N0eWxlKSk7CisgICAgICAgIG5ld0JhY2tkcm9wUmVuZGVyZXItPmluaXRpYWxpemVTdHls
ZSgpOworICAgICAgICBiYWNrZHJvcFJlbmRlcmVyID0gbmV3QmFja2Ryb3BSZW5kZXJlci5nZXQo
KTsKKyAgICAgICAgcmVuZGVyZXIuc2V0QmFja2Ryb3BSZW5kZXJlcigqYmFja2Ryb3BSZW5kZXJl
cik7CisgICAgfQorCisgICAgLy8gVXBkYXRlIG9yIGF0dGFjaCB0byByZW5kZXJlciBwYXJlbnQK
KyAgICBSZW5kZXJFbGVtZW50KiBjdXJyZW50UGFyZW50ID0gYmFja2Ryb3BSZW5kZXJlci0+cGFy
ZW50KCk7CisgICAgUmVuZGVyRWxlbWVudCogbmV3UGFyZW50ID0gcmVuZGVyZXIucGFyZW50KCk7
CisKKyAgICBBU1NFUlQobmV3UGFyZW50LCAiU2hvdWxkIGhhdmUgbmV3IHBhcmVudCIpOworCisg
ICAgaWYgKG5ld1BhcmVudCA9PSBjdXJyZW50UGFyZW50KQorICAgICAgICByZXR1cm47CisKKyAg
ICBpZiAoY3VycmVudFBhcmVudCkKKyAgICAgICAgYXR0YWNoKCpuZXdQYXJlbnQsIGRldGFjaCgq
Y3VycmVudFBhcmVudCwgKmJhY2tkcm9wUmVuZGVyZXIsIFJlbmRlclRyZWVCdWlsZGVyOjpDYW5D
b2xsYXBzZUFub255bW91c0Jsb2NrOjpObyksICZyZW5kZXJlcik7CisgICAgZWxzZQorICAgICAg
ICBhdHRhY2goKm5ld1BhcmVudCwgV1RGTW92ZShuZXdCYWNrZHJvcFJlbmRlcmVyKSwgJnJlbmRl
cmVyKTsKK30KKwogUmVuZGVyUHRyPFJlbmRlck9iamVjdD4gUmVuZGVyVHJlZUJ1aWxkZXI6OmRl
dGFjaEZyb21SZW5kZXJHcmlkKFJlbmRlckdyaWQmIHBhcmVudCwgUmVuZGVyT2JqZWN0JiBjaGls
ZCkKIHsKICAgICBhdXRvIHRha2VuQ2hpbGQgPSBibG9ja0J1aWxkZXIoKS5kZXRhY2gocGFyZW50
LCBjaGlsZCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcv
UmVuZGVyVHJlZUJ1aWxkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9S
ZW5kZXJUcmVlQnVpbGRlci5oCmluZGV4IGIxMjc5ODZiNTQ2YmMyMWRjZmUwNWI3ZTBkNGE1Zjg0
ZTBiZTFiNjAuLjM4YjdlNzJmNjJjMTliMWEyMTkwNzk4NzViMjQyODI4NDA0YWIxNzYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlQnVpbGRl
ci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlQnVp
bGRlci5oCkBAIC01NSw2ICs1NSw3IEBAIHB1YmxpYzoKICAgICB2b2lkIG1vdmUoUmVuZGVyQm94
TW9kZWxPYmplY3QmIGZyb20sIFJlbmRlckJveE1vZGVsT2JqZWN0JiB0bywgUmVuZGVyT2JqZWN0
JiBjaGlsZCwgTm9ybWFsaXplQWZ0ZXJJbnNlcnRpb24pOwogCiAgICAgdm9pZCB1cGRhdGVBZnRl
ckRlc2NlbmRhbnRzKFJlbmRlckVsZW1lbnQmKTsKKyAgICB2b2lkIHVwZGF0ZUJhY2tkcm9wUmVu
ZGVyZXIoUmVuZGVyRWxlbWVudCYpOwogICAgIHZvaWQgZGVzdHJveUFuZENsZWFuVXBBbm9ueW1v
dXNXcmFwcGVycyhSZW5kZXJPYmplY3QmIGNoaWxkKTsKICAgICB2b2lkIG5vcm1hbGl6ZVRyZWVB
ZnRlclN0eWxlQ2hhbmdlKFJlbmRlckVsZW1lbnQmLCBSZW5kZXJTdHlsZSYgb2xkU3R5bGUpOwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVRyZWVSZXNvbHZlci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVRyZWVSZXNvbHZlci5jcHAKaW5kZXggMGM1Mjhi
MTliYzZjYzcyYjY1OTU2MjU2OWJjZDE0Mjc3YWNjNjQ0NS4uZGMzMmE1Y2Y4ZmRjNzZjN2M5MjVk
OTA4NjkyMzRjY2E3NTYxOThkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5
bGVUcmVlUmVzb2x2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlVHJlZVJl
c29sdmVyLmNwcApAQCAtMjgxLDEwICsyODEsMTAgQEAgc3RkOjpvcHRpb25hbDxFbGVtZW50VXBk
YXRlPiBUcmVlUmVzb2x2ZXI6OnJlc29sdmVQc2V1ZG9TdHlsZShFbGVtZW50JiBlbGVtZW50LAog
ICAgICAgICByZXR1cm4geyB9OwogICAgIGlmICghZWxlbWVudFVwZGF0ZS5zdHlsZS0+aGFzUHNl
dWRvU3R5bGUocHNldWRvSWQpKQogICAgICAgICByZXR1cm4geyB9OwotICAgIAotICAgIGF1dG8m
IHBhcmVudFN0eWxlID0gKmVsZW1lbnRVcGRhdGUuc3R5bGU7CisKKyAgICBhdXRvJiBwYXJlbnRT
dHlsZSA9IHBzZXVkb0lkID09IFBzZXVkb0lkOjpCYWNrZHJvcCA/ICplbGVtZW50LmRvY3VtZW50
KCkucmVuZGVyU3R5bGUoKSA6ICplbGVtZW50VXBkYXRlLnN0eWxlOwogICAgIGF1dG8qIHBhcmVu
dEJveFN0eWxlID0gcGFyZW50Qm94U3R5bGVGb3JQc2V1ZG8oZWxlbWVudFVwZGF0ZSk7Ci0gICAg
CisKICAgICBhdXRvIHBzZXVkb1N0eWxlID0gc2NvcGUoKS5yZXNvbHZlci0+cHNldWRvU3R5bGVG
b3JFbGVtZW50KGVsZW1lbnQsIHsgcHNldWRvSWQgfSwgcGFyZW50U3R5bGUsIHBhcmVudEJveFN0
eWxlLCAmc2NvcGUoKS5zZWxlY3RvckZpbHRlcik7CiAgICAgaWYgKCFwc2V1ZG9TdHlsZSkKICAg
ICAgICAgcmV0dXJuIHsgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2Vy
SW50ZXJmYWNlL0NvbnRyb2xsZXJzL0NTU01hbmFnZXIuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvVXNlckludGVyZmFjZS9Db250cm9sbGVycy9DU1NNYW5hZ2VyLmpzCmluZGV4IDJmNjNiYmM0
OTg5YjVhMTVlMTRhNTUxZWNlY2Q5N2I3ZTI1MjUzYTUuLmFkMDYxYmQxNjU2NzliZjczOTRmYzg3
ZGU5ZWZjYzk2ODM0ZjllNzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2Vy
SW50ZXJmYWNlL0NvbnRyb2xsZXJzL0NTU01hbmFnZXIuanMKKysrIGIvU291cmNlL1dlYkluc3Bl
Y3RvclVJL1VzZXJJbnRlcmZhY2UvQ29udHJvbGxlcnMvQ1NTTWFuYWdlci5qcwpAQCAtMTU1LDYg
KzE1NSw4IEBAIFdJLkNTU01hbmFnZXIgPSBjbGFzcyBDU1NNYW5hZ2VyIGV4dGVuZHMgV0kuT2Jq
ZWN0CiAgICAgICAgICAgICByZXR1cm4gV0kudW5sb2NhbGl6ZWRTdHJpbmcoIjo6YWZ0ZXIiKTsK
ICAgICAgICAgY2FzZSBDU1NNYW5hZ2VyLlBzZXVkb1NlbGVjdG9yTmFtZXMuU2VsZWN0aW9uOgog
ICAgICAgICAgICAgcmV0dXJuIFdJLnVubG9jYWxpemVkU3RyaW5nKCI6OnNlbGVjdGlvbiIpOwor
ICAgICAgICBjYXNlIENTU01hbmFnZXIuUHNldWRvU2VsZWN0b3JOYW1lcy5CYWNrZHJvcDoKKyAg
ICAgICAgICAgIHJldHVybiBXSS51bmxvY2FsaXplZFN0cmluZygiOjpiYWNrZHJvcCIpOwogICAg
ICAgICBjYXNlIENTU01hbmFnZXIuUHNldWRvU2VsZWN0b3JOYW1lcy5TY3JvbGxiYXI6CiAgICAg
ICAgICAgICByZXR1cm4gV0kudW5sb2NhbGl6ZWRTdHJpbmcoIjo6c2Nyb2xsYmFyIik7CiAgICAg
ICAgIGNhc2UgQ1NTTWFuYWdlci5Qc2V1ZG9TZWxlY3Rvck5hbWVzLlNjcm9sbGJhclRodW1iOgpA
QCAtNjg0LDYgKzY4Niw3IEBAIFdJLkNTU01hbmFnZXIuQXBwZWFyYW5jZSA9IHsKIFdJLkNTU01h
bmFnZXIuUHNldWRvU2VsZWN0b3JOYW1lcyA9IHsKICAgICBBZnRlcjogImFmdGVyIiwKICAgICBC
ZWZvcmU6ICJiZWZvcmUiLAorICAgIEJhY2tkcm9wOiAiYmFja2Ryb3AiLAogICAgIEZpcnN0TGV0
dGVyOiAiZmlyc3QtbGV0dGVyIiwKICAgICBGaXJzdExpbmU6ICJmaXJzdC1saW5lIiwKICAgICBI
aWdobGlnaHQ6ICJoaWdobGlnaHQiLApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
IGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDJiMDIzMjBmYjJkYTAyZGE5NGE0NGQ0M2I0
YzBjZjE3YTBiN2Y3N2IuLjM5OTUyN2FkMjViMDA1NGYxNWE2Mzc3NzNiMmJkZDczMWQ3ZDA3OTMg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMS0wOC0xMSAgVGltIE5ndXllbiAgPG50aW1AYXBw
bGUuY29tPgorCisgICAgICAgIEltcGxlbWVudCA6OmJhY2tkcm9wIHBzZXVkbyBlbGVtZW50Cisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjc4MDEKKwor
ICAgICAgICBUaGlzIGFkZHMgVUEgc3R5bGVzLCBSZW5kZXJUcmVlQnVpbGRlciBzdXBwb3J0IGFu
ZCBXZWJJbnNwZWN0b3Igc3VwcG9ydCBmb3IgOjpiYWNrZHJvcC4KKyAgICAgICAgU29tZSBpbXBv
cnRlZCBibGluayB0ZXN0cyBub3cgc3RhcnQgcGFzc2luZywgc29tZSBzdGlsbCBuZWVkIHByb3Bl
ciB0b3AgbGF5ZXIgc3VwcG9ydC4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIFRlc3RFeHBlY3RhdGlvbnM6CisKIDIwMjEtMDgtMTEgIEF5dW1pIEtv
amltYSAgPGF5dW1pX2tvamltYUBhcHBsZS5jb20+CiAKICAgICAgICAgWyBXaW4gRVdTIF0gZmFz
dC9mb3Jtcy9pbnB1dC1iYXNlbGluZS5odG1sIGlzIGZsYWt5IGNyYXNoaW5nLgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggOWQxMjNmMzJlMDEzMTBhZTBjYzJmMDRmNWMwMmIyZDNl
MmRkOGM2NS4uZDcxNDM3NmIwY2RmM2NlZWI4NjBmM2RiZmM0ZWQ0NDZiYzcxN2ZjZCAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjEtMDgtMTEgIFRp
bSBOZ3V5ZW4gIDxudGltQGFwcGxlLmNvbT4KKworICAgICAgICBJbXBsZW1lbnQgOjpiYWNrZHJv
cCBwc2V1ZG8gZWxlbWVudAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjI3ODAxCisKKyAgICAgICAgVGhpcyBhZGRzIFVBIHN0eWxlcywgUmVuZGVyVHJl
ZUJ1aWxkZXIgc3VwcG9ydCBhbmQgV2ViSW5zcGVjdG9yIHN1cHBvcnQgZm9yIDo6YmFja2Ryb3Au
CisgICAgICAgIFNvbWUgaW1wb3J0ZWQgYmxpbmsgdGVzdHMgbm93IHN0YXJ0IHBhc3NpbmcsIHNv
bWUgc3RpbGwgbmVlZCBwcm9wZXIgdG9wIGxheWVyIHN1cHBvcnQuCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzcy12YWx1ZXMvY2gtZW1wdHktcHNldWRvLXJlY2FsYy1vbi1mb250LWxvYWQtZXhwZWN0ZWQu
dHh0OgorCiAyMDIxLTA4LTExICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAg
ICAgICAgSFRNTE1ldGFFbGVtZW50IGh0dHAtZXF1aXYgc2hvdWxkIG5vdCBiZSBwcm9jZXNzZWQg
aW4gc2hhZG93IHRyZWVzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25z
IGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwppbmRleCAzMTU2MjQ5NzQ2MmVkZWFjNDJl
NzA0ZWE5MDczMDI4N2U3ZmE1MzY1Li45OGUyM2NhOGE2MjUwY2ZjYjY5MTEzZTJhZjZjYTJkOTg5
YzkyYWU0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xh
eW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTIzNjksMTcgKzIzNjksMTAgQEAgbG9hZGVy
L3N0YXRlb2JqZWN0cy9yZXBsYWNlc3RhdGUtc2l6ZS5odG1sIFsgU2xvdyBdCiBpbXBvcnRlZC9i
bGluay9mYXN0L211bHRpY29sL291dGxpbmVzLWF0LWNvbHVtbi1ib3VuZGFyaWVzLmh0bWwgWyBJ
bWFnZU9ubHlGYWlsdXJlIF0KIGZhc3QvbXVsdGljb2wvbXVsdGljb2wtd2l0aC1jaGlsZC1yZW5k
ZXJMYXllci1mb3ItaW5wdXQuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQogCi0jIDo6YmFja2Ry
b3AKLXdlYmtpdC5vcmcvYi8yMjc4MDEgaW1wb3J0ZWQvYmxpbmsvZGlhbG9nL2JhY2tkcm9wLWRl
c2NlbmRhbnQtc2VsZWN0b3IuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9i
LzIyNzgwMSBpbXBvcnRlZC9ibGluay9kaWFsb2cvYmFja2Ryb3AtZG9lcy1ub3QtaW5oZXJpdC5o
dG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMjI3ODAxIGltcG9ydGVkL2Js
aW5rL2RpYWxvZy9iYWNrZHJvcC1keW5hbWljLXN0eWxlLWNoYW5nZS5odG1sIFsgSW1hZ2VPbmx5
RmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMjI3ODAxIGltcG9ydGVkL2JsaW5rL2RpYWxvZy9iYWNr
ZHJvcC1pbi1mbG93Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8yMjc4
MDEgaW1wb3J0ZWQvYmxpbmsvZGlhbG9nL2JhY2tkcm9wLXN0YWNraW5nLW9yZGVyLmh0bWwgWyBJ
bWFnZU9ubHlGYWlsdXJlIF0KLQogIyBUb3AgbGF5ZXIgdGVzdHMKK3dlYmtpdC5vcmcvYi84NDc5
NiBpbXBvcnRlZC9ibGluay9kaWFsb2cvYmFja2Ryb3AtaW4tZmxvdy5odG1sIFsgSW1hZ2VPbmx5
RmFpbHVyZSBdCit3ZWJraXQub3JnL2IvODQ3OTYgaW1wb3J0ZWQvYmxpbmsvZGlhbG9nL2JhY2tk
cm9wLXN0YWNraW5nLW9yZGVyLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcv
Yi84NDc5NiBpbXBvcnRlZC9ibGluay9kaWFsb2cvZG9udC1zaGFyZS1zdHlsZS10by10b3AtbGF5
ZXIuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzg0Nzk2IGltcG9ydGVk
L2JsaW5rL2RpYWxvZy9tb2RhbC1kaWFsb2ctYmFja2Ryb3AuaHRtbCBbIEltYWdlT25seUZhaWx1
cmUgXQotd2Via2l0Lm9yZy9iLzg0Nzk2IGltcG9ydGVkL2JsaW5rL2RpYWxvZy9tb2RhbC1kaWFs
b2ctZ2VuZXJhdGVkLWNvbnRlbnQuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQogd2Via2l0Lm9y
Zy9iLzg0Nzk2IGltcG9ydGVkL2JsaW5rL2RpYWxvZy9tb2RhbC1kaWFsb2ctaW4tcmVwbGFjZWQt
cmVuZGVyZXIuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzg0Nzk2IGlt
cG9ydGVkL2JsaW5rL2RpYWxvZy9tb2RhbC1kaWFsb2ctaW4tdGFibGUtY29sdW1uLmh0bWwgWyBJ
bWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi84NDc5NiBpbXBvcnRlZC9ibGluay9kaWFs
b2cvcmVtb3ZlZC1lbGVtZW50LWlzLXJlbW92ZWQtZnJvbS10b3AtbGF5ZXIuaHRtbCBbIEltYWdl
T25seUZhaWx1cmUgXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXZhbHVlcy9jaC1lbXB0eS1wc2V1ZG8tcmVjYWxjLW9uLWZv
bnQtbG9hZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9jc3MtdmFsdWVzL2NoLWVtcHR5LXBzZXVkby1yZWNhbGMtb24tZm9udC1s
b2FkLWV4cGVjdGVkLnR4dAppbmRleCA2OWM3ZWE5ODQ3YzY5OWYyNWM1MThhNmIxNzdhZTJhYzVi
ZDVmYzdiLi4wMTY2MWZhOTFmNTkzNjczMmQzNTlmMjU3NWI4MDE5MmI0MGM3YWU5IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3Mt
dmFsdWVzL2NoLWVtcHR5LXBzZXVkby1yZWNhbGMtb24tZm9udC1sb2FkLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3Mt
dmFsdWVzL2NoLWVtcHR5LXBzZXVkby1yZWNhbGMtb24tZm9udC1sb2FkLWV4cGVjdGVkLnR4dApA
QCAtMSw1ICsxLDUgQEAKIAotRkFJTCBjaCBpbiBwc2V1ZG8tZWxlbWVudCA6OmJlZm9yZSBzaG91
bGQgYmUgcmVjYWxjdWxhdGVkIGFmdGVyIGxvYWRpbmcgYSB3ZWIgZm9udCBhc3NlcnRfbGVzc190
aGFuOiBleHBlY3RlZCBhIG51bWJlciBsZXNzIHRoYW4gMjQgYnV0IGdvdCBOYU4KLUZBSUwgY2gg
aW4gcHNldWRvLWVsZW1lbnQgOjphZnRlciBzaG91bGQgYmUgcmVjYWxjdWxhdGVkIGFmdGVyIGxv
YWRpbmcgYSB3ZWIgZm9udCBhc3NlcnRfbGVzc190aGFuOiBleHBlY3RlZCBhIG51bWJlciBsZXNz
IHRoYW4gMjQgYnV0IGdvdCBOYU4KLUZBSUwgY2ggaW4gcHNldWRvLWVsZW1lbnQgOjpiYWNrZHJv
cCBzaG91bGQgYmUgcmVjYWxjdWxhdGVkIGFmdGVyIGxvYWRpbmcgYSB3ZWIgZm9udCBhc3NlcnRf
bGVzc190aGFuOiBleHBlY3RlZCBhIG51bWJlciBsZXNzIHRoYW4gMjQgYnV0IGdvdCBOYU4KK1BB
U1MgY2ggaW4gcHNldWRvLWVsZW1lbnQgOjpiZWZvcmUgc2hvdWxkIGJlIHJlY2FsY3VsYXRlZCBh
ZnRlciBsb2FkaW5nIGEgd2ViIGZvbnQKK1BBU1MgY2ggaW4gcHNldWRvLWVsZW1lbnQgOjphZnRl
ciBzaG91bGQgYmUgcmVjYWxjdWxhdGVkIGFmdGVyIGxvYWRpbmcgYSB3ZWIgZm9udAorUEFTUyBj
aCBpbiBwc2V1ZG8tZWxlbWVudCA6OmJhY2tkcm9wIHNob3VsZCBiZSByZWNhbGN1bGF0ZWQgYWZ0
ZXIgbG9hZGluZyBhIHdlYiBmb250CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>435420</attachid>
            <date>2021-08-12 06:38:44 -0700</date>
            <delta_ts>2021-08-12 10:18:18 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227801-20210812153843.patch</filename>
            <type>text/plain</type>
            <size>23152</size>
            <attacher name="Tim Nguyen (:ntim)">ntim</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgwOTIzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAx
ZDM4N2Q3MjBmMzEyNjFlMjRkMmU5ZTRmYTM5ZTBhOGIwMDhjMmU3Li4zNDUyOTFiNGE4MDczOWU0
MTkwZGYxYjg4OGU0YzE0OGYzNmM2MWE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNSBAQAorMjAyMS0wOC0xMiAgVGltIE5ndXllbiAgPG50aW1AYXBwbGUuY29tPgorCisg
ICAgICAgIEltcGxlbWVudCA6OmJhY2tkcm9wIHBzZXVkbyBlbGVtZW50CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjc4MDEKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGFkZHMgVUEgc3R5bGVzLCBS
ZW5kZXJUcmVlQnVpbGRlciBzdXBwb3J0IGFuZCBXZWJJbnNwZWN0b3Igc3VwcG9ydCBmb3IgOjpi
YWNrZHJvcC4KKyAgICAgICAgU29tZSBpbXBvcnRlZCBibGluayB0ZXN0cyBub3cgc3RhcnQgcGFz
c2luZywgc29tZSBzdGlsbCBuZWVkIHByb3BlciB0b3AgbGF5ZXIgc3VwcG9ydC4KKworICAgICAg
ICAqIGluc3BlY3Rvci9wcm90b2NvbC9DU1MuanNvbjoKKwogMjAyMS0wOC0xMSAgWXVzdWtlIFN1
enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgogCiAgICAgICAgIFdURkNyYXNoIGluIEpTQzo6TGV4
ZXI8Y2hhcjE2X3Q+OjphcHBlbmQ4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjUwMTU5NjEzNzExMDU0MWRlYmQ3
MDY5YWEzZmYwNjVhNGFmZjM4NC4uYzBmYmQ4NmVhNWMxMzMxMzk3ODhmN2I0YTQxM2QwN2U4NTFk
MzY3NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQyIEBACisyMDIxLTA4LTEyICBUaW0gTmd1eWVu
ICA8bnRpbUBhcHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IDo6YmFja2Ryb3AgcHNldWRv
IGVsZW1lbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIyNzgwMQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFRoaXMgYWRkcyBVQSBzdHlsZXMsIFJlbmRlclRyZWVCdWlsZGVyIHN1cHBvcnQgYW5kIFdlYklu
c3BlY3RvciBzdXBwb3J0IGZvciA6OmJhY2tkcm9wLgorICAgICAgICBTb21lIGltcG9ydGVkIGJs
aW5rIHRlc3RzIG5vdyBzdGFydCBwYXNzaW5nLCBzb21lIHN0aWxsIG5lZWQgcHJvcGVyIHRvcCBs
YXllciBzdXBwb3J0LgorCisgICAgICAgICogY3NzL0NTU1NlbGVjdG9yLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkNTU1NlbGVjdG9yOjpwc2V1ZG9JZCk6CisgICAgICAgICogY3NzL0NTU1NlbGVj
dG9yLmg6CisgICAgICAgICogY3NzL1NlbGVjdG9yUHNldWRvRWxlbWVudFR5cGVNYXAuaW46Cisg
ICAgICAgICogY3NzL2RpYWxvZy5jc3M6CisgICAgICAgIChkaWFsb2c6OmJhY2tkcm9wKToKKyAg
ICAgICAgKDo6YmFja2Ryb3ApOgorICAgICAgICAqIGRvbS9FbGVtZW50Lmg6CisgICAgICAgIChX
ZWJDb3JlOjpFbGVtZW50Ojppc0luVG9wTGF5ZXIgY29uc3QpOgorICAgICAgICAqIGluc3BlY3Rv
ci9hZ2VudHMvSW5zcGVjdG9yQ1NTQWdlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6cHJvdG9j
b2xWYWx1ZUZvclBzZXVkb0lkKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJFbGVtZW50OjpiYWNrZHJvcFJlbmRlcmVyIGNv
bnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckVsZW1lbnQ6OnNldEJhY2tkcm9wUmVuZGVy
ZXIpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJFbGVtZW50Lmg6CisgICAgICAgICogcmVu
ZGVyaW5nL1JlbmRlck9iamVjdC5oOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9SZW5kZXJT
dHlsZUNvbnN0YW50cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpvcGVyYXRvcjw8KToKKyAgICAg
ICAgKiByZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaDoKKyAgICAgICAgKiBy
ZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6UmVuZGVyVHJlZUJ1aWxkZXI6OmRlc3Ryb3lBbmRDbGVhblVwQW5vbnltb3VzV3JhcHBlcnMp
OgorICAgICAgICAqIHJlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlVXBkYXRlci5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpSZW5kZXJUcmVlVXBkYXRlcjo6dXBkYXRlQWZ0ZXJEZXNjZW5kYW50
cyk6CisgICAgICAgICogcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRyZWVVcGRhdGVyR2VuZXJh
dGVkQ29udGVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUcmVlVXBkYXRlcjo6R2Vu
ZXJhdGVkQ29udGVudDo6dXBkYXRlQmFja2Ryb3BSZW5kZXJlcik6CisgICAgICAgICogcmVuZGVy
aW5nL3VwZGF0aW5nL1JlbmRlclRyZWVVcGRhdGVyR2VuZXJhdGVkQ29udGVudC5oOgorICAgICAg
ICAqIHN0eWxlL1N0eWxlVHJlZVJlc29sdmVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxl
OjpUcmVlUmVzb2x2ZXI6OnJlc29sdmVQc2V1ZG9TdHlsZSk6CisKIDIwMjEtMDgtMTEgIFlvdWVu
biBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIE1lZGlhIGVsZW1lbnQgaXMg
bm90IGFsd2F5cyBhdXRvcGxheWluZyB3aGVuIGdvaW5nIGZyb20gYmFja2dyb3VuZCB0byBmb3Jl
Z3JvdW5kIGlmIGl0IGlzIGluaXRpYWxseSBub3QgaW4gdmlld3BvcnQKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvQ2hh
bmdlTG9nCmluZGV4IDFiZTNjOWY1MDA0YzJjM2MzYzc2OTM2NjkxYTE0YjQ2MTM1MzFlYmIuLmIw
MTYxZWM3ZWVhMmQ4MjEyYTNmMDEzMDFiOTZiMzI0YmU4MzZmMzMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL0No
YW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTA4LTEyICBUaW0gTmd1eWVuICA8bnRpbUBh
cHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IDo6YmFja2Ryb3AgcHNldWRvIGVsZW1lbnQK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNzgwMQor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgYWRk
cyBVQSBzdHlsZXMsIFJlbmRlclRyZWVCdWlsZGVyIHN1cHBvcnQgYW5kIFdlYkluc3BlY3RvciBz
dXBwb3J0IGZvciA6OmJhY2tkcm9wLgorICAgICAgICBTb21lIGltcG9ydGVkIGJsaW5rIHRlc3Rz
IG5vdyBzdGFydCBwYXNzaW5nLCBzb21lIHN0aWxsIG5lZWQgcHJvcGVyIHRvcCBsYXllciBzdXBw
b3J0LgorCisgICAgICAgICogVXNlckludGVyZmFjZS9Db250cm9sbGVycy9DU1NNYW5hZ2VyLmpz
OgorICAgICAgICAoV0kuQ1NTTWFuYWdlci5kaXNwbGF5TmFtZUZvclBzZXVkb0lkKToKKwogMjAy
MS0wOC0wMyAgU29uaWEgU2luZ2xhICA8c29uaWFzaW5nbGEuMTgxMkBnbWFpbC5jb20+CiAKICAg
ICAgICAgV2ViIEluc3BlY3RvcjogQWRkIHN0YW5kYXJkIGxvZ2ljYWwgcHJvcGVydGllcyB0byBD
U1Mga2V5d29yZCBjb21wbGV0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aW5zcGVjdG9yL3Byb3RvY29sL0NTUy5qc29uIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3Bl
Y3Rvci9wcm90b2NvbC9DU1MuanNvbgppbmRleCBjOWViNTc2YmQ3YzI1OTM0YWE1OWNiZjMyZTFj
Y2NmOTMzOTE3Y2U4Li40YzYyZGU5MGExNTBjNjIzZGM1YTA3NDUyYWE0YjQzNzliMjg0NmY0IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Byb3RvY29sL0NTUy5q
c29uCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvQ1NTLmpz
b24KQEAgLTQzLDYgKzQzLDcgQEAKICAgICAgICAgICAgICAgICAiYmVmb3JlIiwKICAgICAgICAg
ICAgICAgICAiYWZ0ZXIiLAogICAgICAgICAgICAgICAgICJzZWxlY3Rpb24iLAorICAgICAgICAg
ICAgICAgICJiYWNrZHJvcCIsCiAgICAgICAgICAgICAgICAgInNjcm9sbGJhciIsCiAgICAgICAg
ICAgICAgICAgInNjcm9sbGJhci10aHVtYiIsCiAgICAgICAgICAgICAgICAgInNjcm9sbGJhci1i
dXR0b24iLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1NlbGVjdG9yLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWxlY3Rvci5jcHAKaW5kZXggYzE1YzYyOTJlZjhiNTIy
NDIxOTFlYmM0YzQxNTA1MmU1ZTIyNGE0YS4uNjg1MGU4NGY4YmYwYzU0ODExNzQ2MTI1MDY4ZTAw
MzgwMmU5MmQ1OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1NlbGVjdG9yLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2VsZWN0b3IuY3BwCkBAIC0yMzIsNiArMjMy
LDggQEAgUHNldWRvSWQgQ1NTU2VsZWN0b3I6OnBzZXVkb0lkKFBzZXVkb0VsZW1lbnRUeXBlIHR5
cGUpCiAgICAgICAgIHJldHVybiBQc2V1ZG9JZDo6SGlnaGxpZ2h0OwogICAgIGNhc2UgUHNldWRv
RWxlbWVudE1hcmtlcjoKICAgICAgICAgcmV0dXJuIFBzZXVkb0lkOjpNYXJrZXI7CisgICAgY2Fz
ZSBQc2V1ZG9FbGVtZW50QmFja2Ryb3A6CisgICAgICAgIHJldHVybiBQc2V1ZG9JZDo6QmFja2Ry
b3A7CiAgICAgY2FzZSBQc2V1ZG9FbGVtZW50QmVmb3JlOgogICAgICAgICByZXR1cm4gUHNldWRv
SWQ6OkJlZm9yZTsKICAgICBjYXNlIFBzZXVkb0VsZW1lbnRBZnRlcjoKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWxlY3Rvci5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Nl
bGVjdG9yLmgKaW5kZXggNWI0YjlmMTVmMzM0ZDI0YjJjYjJjMWJiZTA5NjRkMGY3ZGU4MGEwMy4u
YmM4M2FmZDkxNzQwYTExMjBmMzFkODQ2NzljOWQxMjZjN2NjMWY5NSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvY3NzL0NTU1NlbGVjdG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NT
U1NlbGVjdG9yLmgKQEAgLTE4MCw2ICsxODAsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAg
ICAgIGVudW0gUHNldWRvRWxlbWVudFR5cGUgewogICAgICAgICAgICAgUHNldWRvRWxlbWVudFVu
a25vd24gPSAwLAogICAgICAgICAgICAgUHNldWRvRWxlbWVudEFmdGVyLAorICAgICAgICAgICAg
UHNldWRvRWxlbWVudEJhY2tkcm9wLAogICAgICAgICAgICAgUHNldWRvRWxlbWVudEJlZm9yZSwK
ICNpZiBFTkFCTEUoVklERU8pCiAgICAgICAgICAgICBQc2V1ZG9FbGVtZW50Q3VlLApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1NlbGVjdG9yUHNldWRvRWxlbWVudFR5cGVNYXAuaW4g
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JQc2V1ZG9FbGVtZW50VHlwZU1hcC5pbgppbmRl
eCAwYjVlZmM2Njg0Y2I1NmZlZWUwNTkyZTczZjg2YzYyZTBiMmMyY2UyLi5lMWU1MTk0OGZlMjI3
NjNhMTdkZTE4ODk0Y2Q0Nzk4YTk3MGEyMDQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvU2VsZWN0b3JQc2V1ZG9FbGVtZW50VHlwZU1hcC5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvU2VsZWN0b3JQc2V1ZG9FbGVtZW50VHlwZU1hcC5pbgpAQCAtMSw0ICsxLDUgQEAKIGFmdGVy
CitiYWNrZHJvcAogYmVmb3JlCiAjaWYgRU5BQkxFKFZJREVPKQogY3VlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9jc3MvZGlhbG9nLmNzcyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9kaWFsb2cu
Y3NzCmluZGV4IGI2MWRjOWQ3NmYyMGJjMDRjNDA0NjU2YjEyYzRjOGFkYWNiOTA5NjYuLjFlN2U1
YTE1MjBmMTMyYjY5MDQ2ZDk0ZTJlMmExZGYzMDQ1M2IwNWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9kaWFsb2cuY3NzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9kaWFsb2cuY3Nz
CkBAIC0yNCwzICsyNCwxNiBAQCBkaWFsb2c6LWludGVybmFsLW1vZGFsLWRpYWxvZyB7CiAgICAg
bWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA2cHggLSAyZW0pOwogICAgIG1heC1oZWlnaHQ6IGNhbGMo
MTAwJSAtIDZweCAtIDJlbSk7CiB9CisKK2RpYWxvZzo6YmFja2Ryb3AgeworICAgIGJhY2tncm91
bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsKK30KKworOjpiYWNrZHJvcCB7CisgICAgZGlzcGxheTog
YmxvY2s7CisgICAgcG9zaXRpb246IGZpeGVkOworICAgIHRvcDogMDsKKyAgICBsZWZ0OiAwOwor
ICAgIHJpZ2h0OiAwOworICAgIGJvdHRvbTogMDsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2RvbS9FbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCmluZGV4IDli
NDA5Y2E5ZjNkOTk4NzY1ZTIxZWUzZTU3MDllZDM2OTM4MDQwNjAuLjU4MmRiMTIzYjZkOTc1Nzc0
ZWE1ZmMyNDJhODM2MzFjODQ3M2JlM2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9F
bGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaApAQCAtNTExLDYgKzUx
MSw4IEBAIHB1YmxpYzoKICAgICBjb25zdCBSZW5kZXJTdHlsZSogbGFzdFN0eWxlQ2hhbmdlRXZl
bnRTdHlsZShQc2V1ZG9JZCkgY29uc3Q7CiAgICAgdm9pZCBzZXRMYXN0U3R5bGVDaGFuZ2VFdmVu
dFN0eWxlKFBzZXVkb0lkLCBzdGQ6OnVuaXF1ZV9wdHI8Y29uc3QgUmVuZGVyU3R5bGU+JiYpOwog
CisgICAgYm9vbCBpc0luVG9wTGF5ZXIoKSBjb25zdCB7IHJldHVybiBkb2N1bWVudCgpLnRvcExh
eWVyRWxlbWVudHMoKS5jb250YWlucyhtYWtlUmVmKCpjb25zdF9jYXN0PEVsZW1lbnQqPih0aGlz
KSkpOyB9CisKICNpZiBFTkFCTEUoRlVMTFNDUkVFTl9BUEkpCiAgICAgYm9vbCBjb250YWluc0Z1
bGxTY3JlZW5FbGVtZW50KCkgY29uc3QgeyByZXR1cm4gaGFzTm9kZUZsYWcoTm9kZUZsYWc6OkNv
bnRhaW5zRnVsbFNjcmVlbkVsZW1lbnQpOyB9CiAgICAgdm9pZCBzZXRDb250YWluc0Z1bGxTY3Jl
ZW5FbGVtZW50KGJvb2wpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Fn
ZW50cy9JbnNwZWN0b3JDU1NBZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdl
bnRzL0luc3BlY3RvckNTU0FnZW50LmNwcAppbmRleCA2NWE4MTMxMjlkNjMxNzM5YWIwNTYwNDFm
OTc1MGJkMjg4OGUyYzQ4Li4zZWMxNGY2NzFlZDg2NTUxYzRjYzlkMWVkYjg2YzdhZmEwMGNmMjVl
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckNT
U0FnZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3Rv
ckNTU0FnZW50LmNwcApAQCAtNDQ5LDYgKzQ0OSw4IEBAIHN0YXRpYyBzdGQ6Om9wdGlvbmFsPFBy
b3RvY29sOjpDU1M6OlBzZXVkb0lkPiBwcm90b2NvbFZhbHVlRm9yUHNldWRvSWQoUHNldWRvSWQK
ICAgICAgICAgcmV0dXJuIFByb3RvY29sOjpDU1M6OlBzZXVkb0lkOjpGaXJzdExldHRlcjsKICAg
ICBjYXNlIFBzZXVkb0lkOjpNYXJrZXI6CiAgICAgICAgIHJldHVybiBQcm90b2NvbDo6Q1NTOjpQ
c2V1ZG9JZDo6TWFya2VyOworICAgIGNhc2UgUHNldWRvSWQ6OkJhY2tkcm9wOgorICAgICAgICBy
ZXR1cm4gUHJvdG9jb2w6OkNTUzo6UHNldWRvSWQ6OkJhY2tkcm9wOwogICAgIGNhc2UgUHNldWRv
SWQ6OkJlZm9yZToKICAgICAgICAgcmV0dXJuIFByb3RvY29sOjpDU1M6OlBzZXVkb0lkOjpCZWZv
cmU7CiAgICAgY2FzZSBQc2V1ZG9JZDo6QWZ0ZXI6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyRWxlbWVudC5jcHAKaW5kZXggZjg3ZDA1ZjM5OWU4NDkwOGI1OTk4ZjVjOWY5NTZjOWFk
NWNjMmYxNy4uNmZmODMyNmEyNmVkZmNkZjg2MGJmY2U0YWNkODgyY2NkYmE1NTFkMiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVsZW1lbnQuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbGVtZW50LmNwcApAQCAtMjM3NSw0ICsyMzc1
LDE0IEBAIHN0ZDo6dW5pcXVlX3B0cjxSZW5kZXJTdHlsZT4gUmVuZGVyRWxlbWVudDo6YW5pbWF0
ZWRTdHlsZSgpCiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAorV2Vha1B0cjxSZW5kZXJCbG9ja0Zs
b3c+IFJlbmRlckVsZW1lbnQ6OmJhY2tkcm9wUmVuZGVyZXIoKSBjb25zdAoreworICAgIHJldHVy
biBoYXNSYXJlRGF0YSgpID8gcmFyZURhdGEoKS5iYWNrZHJvcFJlbmRlcmVyIDogbnVsbHB0cjsK
K30KKwordm9pZCBSZW5kZXJFbGVtZW50OjpzZXRCYWNrZHJvcFJlbmRlcmVyKFJlbmRlckJsb2Nr
RmxvdyYgcmVuZGVyZXIpCit7CisgICAgZW5zdXJlUmFyZURhdGEoKS5iYWNrZHJvcFJlbmRlcmVy
ID0gbWFrZVdlYWtQdHIocmVuZGVyZXIpOworfQorCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckVsZW1lbnQuaAppbmRleCAyMzc3YmE5NzJjNGFjOTVjYzhmNzhkZDMyZGRlODE5NDlj
NDdmZTI1Li5hNjU1N2NkNDIwYzI4NDRjN2I0NTU2ODU3YjY5NzRhMzJhNmMxMjE1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbGVtZW50LmgKQEAgLTI1Nyw2ICsyNTcsOSBAQCBw
dWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHN1c3BlbmRBbmltYXRpb25zKE1vbm90b25pY1RpbWUg
PSBNb25vdG9uaWNUaW1lKCkpIHsgfQogICAgIHN0ZDo6dW5pcXVlX3B0cjxSZW5kZXJTdHlsZT4g
YW5pbWF0ZWRTdHlsZSgpOwogCisgICAgV2Vha1B0cjxSZW5kZXJCbG9ja0Zsb3c+IGJhY2tkcm9w
UmVuZGVyZXIoKSBjb25zdDsKKyAgICB2b2lkIHNldEJhY2tkcm9wUmVuZGVyZXIoUmVuZGVyQmxv
Y2tGbG93Jik7CisKIHByb3RlY3RlZDoKICAgICBlbnVtIEJhc2VUeXBlRmxhZyB7CiAgICAgICAg
IFJlbmRlckxheWVyTW9kZWxPYmplY3RGbGFnICA9IDEgPDwgMCwKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJPYmplY3QuaAppbmRleCAyZmQ5Njg3OTAyMmE2YTNiOGFjYzMxNmFmMWUxNTA0
YTYyMzI3NGU3Li41NTY3ZTRkYzM1MWU1NGYzODE1MjljYTYwMDBjYzFiOTQ4NWNjMzQwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oCkBAIC01OSw2ICs1OSw3IEBAIGNs
YXNzIFBvc2l0aW9uOwogY2xhc3MgUmVuZGVyQm94TW9kZWxPYmplY3Q7CiBjbGFzcyBSZW5kZXJJ
bmxpbmU7CiBjbGFzcyBSZW5kZXJCbG9jazsKK2NsYXNzIFJlbmRlckJsb2NrRmxvdzsKIGNsYXNz
IFJlbmRlckVsZW1lbnQ7CiBjbGFzcyBSZW5kZXJGcmFnbWVudGVkRmxvdzsKIGNsYXNzIFJlbmRl
ckdlb21ldHJ5TWFwOwpAQCAtOTM4LDYgKzkzOSw3IEBAIHByaXZhdGU6CiAKICAgICAgICAgLy8g
RnJvbSBSZW5kZXJFbGVtZW50CiAgICAgICAgIHN0ZDo6dW5pcXVlX3B0cjxSZW5kZXJTdHlsZT4g
Y2FjaGVkRmlyc3RMaW5lU3R5bGU7CisgICAgICAgIFdlYWtQdHI8UmVuZGVyQmxvY2tGbG93PiBi
YWNrZHJvcFJlbmRlcmVyOwogICAgIH07CiAgICAgCiAgICAgY29uc3QgUmVuZGVyT2JqZWN0OjpS
ZW5kZXJPYmplY3RSYXJlRGF0YSYgcmFyZURhdGEoKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuY3BwCmluZGV4
IDQ2YTU5MmNiZDRiMGRmYmI3NzAwNWIwZTg1ZGY5Mzk2NjE0MzgyZWEuLjVlZDEwM2M3NTJjMDE5
MDcxODNkZTkzOTU0NTQ2MmUzOTIzZDgyM2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcApAQCAtODg3LDYgKzg4
Nyw3IEBAIFRleHRTdHJlYW0mIG9wZXJhdG9yPDwoVGV4dFN0cmVhbSYgdHMsIFBzZXVkb0lkIHBz
ZXVkb0lkKQogICAgIGNhc2UgUHNldWRvSWQ6OkZpcnN0TGV0dGVyOiB0cyA8PCAiZmlyc3QtbGV0
dGVyIjsgYnJlYWs7CiAgICAgY2FzZSBQc2V1ZG9JZDo6SGlnaGxpZ2h0OiB0cyA8PCAiaGlnaGxp
Z2h0IjsgYnJlYWs7CiAgICAgY2FzZSBQc2V1ZG9JZDo6TWFya2VyOiB0cyA8PCAibWFya2VyIjsg
YnJlYWs7CisgICAgY2FzZSBQc2V1ZG9JZDo6QmFja2Ryb3A6IHRzIDw8ICJiYWNrZHJvcCI7IGJy
ZWFrOwogICAgIGNhc2UgUHNldWRvSWQ6OkJlZm9yZTogdHMgPDwgImJlZm9yZSI7IGJyZWFrOwog
ICAgIGNhc2UgUHNldWRvSWQ6OkFmdGVyOiB0cyA8PCAiYWZ0ZXIiOyBicmVhazsKICAgICBjYXNl
IFBzZXVkb0lkOjpTZWxlY3Rpb246IHRzIDw8ICJzZWxlY3Rpb24iOyBicmVhazsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5o
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmgK
aW5kZXggODM5YmRjMjBhYmY5NjEyYTMxNzExZTFjMzA5MGU1MjRjNTc3ODQxMS4uNzNkNGI5ZDU5
YWNmZWZjMWU2M2UxYTk0OGU2YmNjZTBmMTM4NzA2MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmgKQEAgLTk1LDYgKzk1
LDcgQEAgZW51bSBjbGFzcyBQc2V1ZG9JZCA6IHVpbnQxNl90IHsKICAgICBCZWZvcmUsCiAgICAg
QWZ0ZXIsCiAgICAgU2VsZWN0aW9uLAorICAgIEJhY2tkcm9wLAogICAgIFNjcm9sbGJhciwKIAog
ICAgIC8vIEludGVybmFsOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3Vw
ZGF0aW5nL1JlbmRlclRyZWVCdWlsZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91
cGRhdGluZy9SZW5kZXJUcmVlQnVpbGRlci5jcHAKaW5kZXggZWI2NjhiNGJkNjM4NjYzMDk5NGUy
NmFkZDJkMWU2NWM4Mzk0OTk5Zi4uNjYyN2VjMWViZTYyMjE5MTcyNzJhZjgxOGI4ZjFlNmUzZTI5
MjkxZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRl
clRyZWVCdWlsZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcv
UmVuZGVyVHJlZUJ1aWxkZXIuY3BwCkBAIC04MDcsNiArODA3LDEyIEBAIHZvaWQgUmVuZGVyVHJl
ZUJ1aWxkZXI6OmRlc3Ryb3lBbmRDbGVhblVwQW5vbnltb3VzV3JhcHBlcnMoUmVuZGVyT2JqZWN0
JiByZW5kZXJlCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKKyAgICAvLyBBbHNvIGRlc3Ryb3kg
OjpiYWNrZHJvcCBhbG9uZyB3aXRoIGVsZW1lbnQgaWYgdGhlcmUgaXMgb25lCisgICAgaWYgKGlz
PFJlbmRlckVsZW1lbnQ+KHJlbmRlcmVyVG9EZXN0cm95KSkgeworICAgICAgICBpZiAoYXV0byBi
YWNrZHJvcFJlbmRlcmVyID0gZG93bmNhc3Q8UmVuZGVyRWxlbWVudD4ocmVuZGVyZXJUb0Rlc3Ry
b3kpLmJhY2tkcm9wUmVuZGVyZXIoKSkKKyAgICAgICAgICAgIGRlc3Ryb3koKmJhY2tkcm9wUmVu
ZGVyZXIpOworICAgIH0KKwogICAgIGF1dG8gaXNBbm9ueW1vdXNBbmRTYWZlVG9EZWxldGUgPSBb
XSAoY29uc3QgYXV0byYgcmVuZGVyZXIpIHsKICAgICAgICAgcmV0dXJuIHJlbmRlcmVyLmlzQW5v
bnltb3VzKCkgJiYgIXJlbmRlcmVyLmlzUmVuZGVyVmlldygpICYmICFyZW5kZXJlci5pc1JlbmRl
ckZyYWdtZW50ZWRGbG93KCk7CiAgICAgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlVXBkYXRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZVVwZGF0ZXIuY3BwCmluZGV4IDAyYmIyZmFjZTZl
NjMxNDI2OWFmNTMxYjFhMTY0YWU2NTYzZjlhMjguLmEzMzE2OWZkNzcyZGQyYTc0MzUzNWM4OTEy
OGQyZWJhZTNkNjYyZGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRh
dGluZy9SZW5kZXJUcmVlVXBkYXRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3VwZGF0aW5nL1JlbmRlclRyZWVVcGRhdGVyLmNwcApAQCAtMjY2LDYgKzI2Niw3IEBAIHZvaWQg
UmVuZGVyVHJlZVVwZGF0ZXI6OnVwZGF0ZUFmdGVyRGVzY2VuZGFudHMoRWxlbWVudCYgZWxlbWVu
dCwgY29uc3QgU3R5bGU6OkVsCiAgICAgaWYgKCFyZW5kZXJlcikKICAgICAgICAgcmV0dXJuOwog
CisgICAgZ2VuZXJhdGVkQ29udGVudCgpLnVwZGF0ZUJhY2tkcm9wUmVuZGVyZXIoKnJlbmRlcmVy
KTsKICAgICBtX2J1aWxkZXIudXBkYXRlQWZ0ZXJEZXNjZW5kYW50cygqcmVuZGVyZXIpOwogCiAg
ICAgaWYgKGVsZW1lbnQuaGFzQ3VzdG9tU3R5bGVSZXNvbHZlQ2FsbGJhY2tzKCkgJiYgdXBkYXRl
cyAmJiB1cGRhdGVzLT51cGRhdGUuY2hhbmdlID09IFN0eWxlOjpDaGFuZ2U6OlJlbmRlcmVyKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRyZWVV
cGRhdGVyR2VuZXJhdGVkQ29udGVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBk
YXRpbmcvUmVuZGVyVHJlZVVwZGF0ZXJHZW5lcmF0ZWRDb250ZW50LmNwcAppbmRleCAxOWIzNGE0
NzI2Yzk2ZjBhZTA2NmU0ZGFhYjljZjVjMTczYTczMWEyLi40ZjNjMmQ4OTI1MDE3NzVkMzA3YzU3
YzRjZDE5OWQ3NzA1MjYzY2NjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
dXBkYXRpbmcvUmVuZGVyVHJlZVVwZGF0ZXJHZW5lcmF0ZWRDb250ZW50LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZVVwZGF0ZXJHZW5lcmF0ZWRD
b250ZW50LmNwcApAQCAtMTcyLDYgKzE3Miw0NSBAQCB2b2lkIFJlbmRlclRyZWVVcGRhdGVyOjpH
ZW5lcmF0ZWRDb250ZW50Ojp1cGRhdGVQc2V1ZG9FbGVtZW50KEVsZW1lbnQmIGN1cnJlbnQsCiAg
ICAgbV91cGRhdGVyLm1fYnVpbGRlci51cGRhdGVBZnRlckRlc2NlbmRhbnRzKCpwc2V1ZG9FbGVt
ZW50UmVuZGVyZXIpOwogfQogCit2b2lkIFJlbmRlclRyZWVVcGRhdGVyOjpHZW5lcmF0ZWRDb250
ZW50Ojp1cGRhdGVCYWNrZHJvcFJlbmRlcmVyKFJlbmRlckVsZW1lbnQmIHJlbmRlcmVyKQorewor
ICAgIC8vIDo6YmFja2Ryb3AgZG9lcyBub3QgaW5oZXJpdCBzdHlsZSwgaGVuY2UgdXNpbmcgdGhl
IHZpZXcgc3R5bGUgYXMgcGFyZW50IHN0eWxlCisgICAgYXV0byBzdHlsZSA9IHJlbmRlcmVyLmdl
dENhY2hlZFBzZXVkb1N0eWxlKFBzZXVkb0lkOjpCYWNrZHJvcCwgJnJlbmRlcmVyLnZpZXcoKS5z
dHlsZSgpKTsKKworICAgIC8vIERlc3Ryb3kgOjpiYWNrZHJvcCBpZiBuZXcgZWxlbWVudCBubyBs
b25nZXIgaXMgaW4gdG9wIGxheWVyLCBvciBpZiBpdCBpcyBoaWRkZW4KKyAgICBpZiAoKHJlbmRl
cmVyLmVsZW1lbnQoKSAmJiAhcmVuZGVyZXIuZWxlbWVudCgpLT5pc0luVG9wTGF5ZXIoKSkgfHwg
IXN0eWxlIHx8IHN0eWxlLT5kaXNwbGF5KCkgPT0gRGlzcGxheVR5cGU6Ok5vbmUpIHsKKyAgICAg
ICAgaWYgKFdlYWtQdHIgYmFja2Ryb3BSZW5kZXJlciA9IHJlbmRlcmVyLmJhY2tkcm9wUmVuZGVy
ZXIoKSkKKyAgICAgICAgICAgIG1fdXBkYXRlci5tX2J1aWxkZXIuZGVzdHJveSgqYmFja2Ryb3BS
ZW5kZXJlcik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBhdXRvIG5ld1N0eWxlID0g
UmVuZGVyU3R5bGU6OmNsb25lKCpzdHlsZSk7CisgICAgUmVuZGVyUHRyPFJlbmRlckJsb2NrRmxv
dz4gbmV3QmFja2Ryb3BSZW5kZXJlcjsKKyAgICBXZWFrUHRyIGJhY2tkcm9wUmVuZGVyZXIgPSBy
ZW5kZXJlci5iYWNrZHJvcFJlbmRlcmVyKCk7CisgICAgaWYgKGJhY2tkcm9wUmVuZGVyZXIpCisg
ICAgICAgIGJhY2tkcm9wUmVuZGVyZXItPnNldFN0eWxlKFdURk1vdmUobmV3U3R5bGUpKTsKKyAg
ICBlbHNlIHsKKyAgICAgICAgbmV3QmFja2Ryb3BSZW5kZXJlciA9IFdlYkNvcmU6OmNyZWF0ZVJl
bmRlcmVyPFJlbmRlckJsb2NrRmxvdz4ocmVuZGVyZXIuZG9jdW1lbnQoKSwgV1RGTW92ZShuZXdT
dHlsZSkpOworICAgICAgICBuZXdCYWNrZHJvcFJlbmRlcmVyLT5pbml0aWFsaXplU3R5bGUoKTsK
KyAgICAgICAgYmFja2Ryb3BSZW5kZXJlciA9IG1ha2VXZWFrUHRyKG5ld0JhY2tkcm9wUmVuZGVy
ZXIuZ2V0KCkpOworICAgICAgICByZW5kZXJlci5zZXRCYWNrZHJvcFJlbmRlcmVyKCpiYWNrZHJv
cFJlbmRlcmVyKTsKKyAgICB9CisKKyAgICAvLyBVcGRhdGUgb3IgYXR0YWNoIHRvIHJlbmRlcmVy
IHBhcmVudAorICAgIFdlYWtQdHIgY3VycmVudFBhcmVudCA9IG1ha2VXZWFrUHRyKGJhY2tkcm9w
UmVuZGVyZXItPnBhcmVudCgpKTsKKyAgICBXZWFrUHRyIG5ld1BhcmVudCA9IG1ha2VXZWFrUHRy
KHJlbmRlcmVyLnBhcmVudCgpKTsKKworICAgIEFTU0VSVChuZXdQYXJlbnQsICJTaG91bGQgaGF2
ZSBuZXcgcGFyZW50Iik7CisKKyAgICBpZiAobmV3UGFyZW50ID09IGN1cnJlbnRQYXJlbnQpCisg
ICAgICAgIHJldHVybjsKKworICAgIGlmIChjdXJyZW50UGFyZW50KQorICAgICAgICBtX3VwZGF0
ZXIubV9idWlsZGVyLmF0dGFjaCgqbmV3UGFyZW50LCBtX3VwZGF0ZXIubV9idWlsZGVyLmRldGFj
aCgqY3VycmVudFBhcmVudCwgKmJhY2tkcm9wUmVuZGVyZXIsIFJlbmRlclRyZWVCdWlsZGVyOjpD
YW5Db2xsYXBzZUFub255bW91c0Jsb2NrOjpObyksICZyZW5kZXJlcik7CisgICAgZWxzZQorICAg
ICAgICBtX3VwZGF0ZXIubV9idWlsZGVyLmF0dGFjaCgqbmV3UGFyZW50LCBXVEZNb3ZlKG5ld0Jh
Y2tkcm9wUmVuZGVyZXIpLCAmcmVuZGVyZXIpOworfQorCiBib29sIFJlbmRlclRyZWVVcGRhdGVy
OjpHZW5lcmF0ZWRDb250ZW50OjpuZWVkc1BzZXVkb0VsZW1lbnQoY29uc3QgU3R5bGU6OkVsZW1l
bnRVcGRhdGUqIHVwZGF0ZSkKIHsKICAgICBpZiAoIXVwZGF0ZSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlVXBkYXRlckdlbmVyYXRlZENv
bnRlbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlVXBk
YXRlckdlbmVyYXRlZENvbnRlbnQuaAppbmRleCAzNDg4YzAzYjA1YjU1NWMyN2QxN2FjMWY0Yzdl
MThlZGY1ZjFmMTkzLi5mM2YwMTZkZDY4NzhjMjUxYzkxODQ5YTU4OTM0ODE5ZWZhN2Q4MGFmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZVVw
ZGF0ZXJHZW5lcmF0ZWRDb250ZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3Vw
ZGF0aW5nL1JlbmRlclRyZWVVcGRhdGVyR2VuZXJhdGVkQ29udGVudC5oCkBAIC0zOCw2ICszOCw3
IEBAIGNsYXNzIFJlbmRlclRyZWVVcGRhdGVyOjpHZW5lcmF0ZWRDb250ZW50IHsKIHB1YmxpYzoK
ICAgICBHZW5lcmF0ZWRDb250ZW50KFJlbmRlclRyZWVVcGRhdGVyJik7CiAKKyAgICB2b2lkIHVw
ZGF0ZUJhY2tkcm9wUmVuZGVyZXIoUmVuZGVyRWxlbWVudCYpOwogICAgIHZvaWQgdXBkYXRlUHNl
dWRvRWxlbWVudChFbGVtZW50JiwgY29uc3QgU3R5bGU6OkVsZW1lbnRVcGRhdGVzJiwgUHNldWRv
SWQpOwogICAgIHZvaWQgdXBkYXRlUmVtYWluaW5nUXVvdGVzKCk7CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlVHJlZVJlc29sdmVyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3N0eWxlL1N0eWxlVHJlZVJlc29sdmVyLmNwcAppbmRleCAwYzUyOGIxOWJjNmNjNzJiNjU5NTYy
NTY5YmNkMTQyNzdhY2M2NDQ1Li5hZjQ4ZmQzYjQ5OGMwMDE0ZGNlY2M4MzkzZDMyOTIwZmI4OGEy
YTc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVRyZWVSZXNvbHZlci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3BwCkBAIC0y
NzUsMTYgKzI3NSwxOCBAQCBFbGVtZW50VXBkYXRlcyBUcmVlUmVzb2x2ZXI6OnJlc29sdmVFbGVt
ZW50KEVsZW1lbnQmIGVsZW1lbnQpCiAKIHN0ZDo6b3B0aW9uYWw8RWxlbWVudFVwZGF0ZT4gVHJl
ZVJlc29sdmVyOjpyZXNvbHZlUHNldWRvU3R5bGUoRWxlbWVudCYgZWxlbWVudCwgY29uc3QgRWxl
bWVudFVwZGF0ZSYgZWxlbWVudFVwZGF0ZSwgUHNldWRvSWQgcHNldWRvSWQpCiB7CisgICAgQVNT
RVJUKHBzZXVkb0lkICE9IFBzZXVkb0lkOjpCYWNrZHJvcCwgIlRoaXMgbWV0aG9kIGRvZXMgbm90
IGhhbmRsZSA6OmJhY2tkcm9wIGN1cnJlbnRseSIpOworCiAgICAgaWYgKHBzZXVkb0lkID09IFBz
ZXVkb0lkOjpNYXJrZXIgJiYgZWxlbWVudFVwZGF0ZS5zdHlsZS0+ZGlzcGxheSgpICE9IERpc3Bs
YXlUeXBlOjpMaXN0SXRlbSkKICAgICAgICAgcmV0dXJuIHsgfTsKICAgICBpZiAoZWxlbWVudFVw
ZGF0ZS5zdHlsZS0+ZGlzcGxheSgpID09IERpc3BsYXlUeXBlOjpOb25lKQogICAgICAgICByZXR1
cm4geyB9OwogICAgIGlmICghZWxlbWVudFVwZGF0ZS5zdHlsZS0+aGFzUHNldWRvU3R5bGUocHNl
dWRvSWQpKQogICAgICAgICByZXR1cm4geyB9OwotICAgIAorCiAgICAgYXV0byYgcGFyZW50U3R5
bGUgPSAqZWxlbWVudFVwZGF0ZS5zdHlsZTsKICAgICBhdXRvKiBwYXJlbnRCb3hTdHlsZSA9IHBh
cmVudEJveFN0eWxlRm9yUHNldWRvKGVsZW1lbnRVcGRhdGUpOwotICAgIAorCiAgICAgYXV0byBw
c2V1ZG9TdHlsZSA9IHNjb3BlKCkucmVzb2x2ZXItPnBzZXVkb1N0eWxlRm9yRWxlbWVudChlbGVt
ZW50LCB7IHBzZXVkb0lkIH0sIHBhcmVudFN0eWxlLCBwYXJlbnRCb3hTdHlsZSwgJnNjb3BlKCku
c2VsZWN0b3JGaWx0ZXIpOwogICAgIGlmICghcHNldWRvU3R5bGUpCiAgICAgICAgIHJldHVybiB7
IH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Db250
cm9sbGVycy9DU1NNYW5hZ2VyLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvQ29udHJvbGxlcnMvQ1NTTWFuYWdlci5qcwppbmRleCAyZjYzYmJjNDk4OWI1YTE1ZTE0YTU1
MWVjZWNkOTdiN2UyNTI1M2E1Li5hZDA2MWJkMTY1Njc5YmY3Mzk0ZmM4N2RlOWVmY2M5NjgzNGY5
ZTc5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Db250
cm9sbGVycy9DU1NNYW5hZ2VyLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL0NvbnRyb2xsZXJzL0NTU01hbmFnZXIuanMKQEAgLTE1NSw2ICsxNTUsOCBAQCBXSS5D
U1NNYW5hZ2VyID0gY2xhc3MgQ1NTTWFuYWdlciBleHRlbmRzIFdJLk9iamVjdAogICAgICAgICAg
ICAgcmV0dXJuIFdJLnVubG9jYWxpemVkU3RyaW5nKCI6OmFmdGVyIik7CiAgICAgICAgIGNhc2Ug
Q1NTTWFuYWdlci5Qc2V1ZG9TZWxlY3Rvck5hbWVzLlNlbGVjdGlvbjoKICAgICAgICAgICAgIHJl
dHVybiBXSS51bmxvY2FsaXplZFN0cmluZygiOjpzZWxlY3Rpb24iKTsKKyAgICAgICAgY2FzZSBD
U1NNYW5hZ2VyLlBzZXVkb1NlbGVjdG9yTmFtZXMuQmFja2Ryb3A6CisgICAgICAgICAgICByZXR1
cm4gV0kudW5sb2NhbGl6ZWRTdHJpbmcoIjo6YmFja2Ryb3AiKTsKICAgICAgICAgY2FzZSBDU1NN
YW5hZ2VyLlBzZXVkb1NlbGVjdG9yTmFtZXMuU2Nyb2xsYmFyOgogICAgICAgICAgICAgcmV0dXJu
IFdJLnVubG9jYWxpemVkU3RyaW5nKCI6OnNjcm9sbGJhciIpOwogICAgICAgICBjYXNlIENTU01h
bmFnZXIuUHNldWRvU2VsZWN0b3JOYW1lcy5TY3JvbGxiYXJUaHVtYjoKQEAgLTY4NCw2ICs2ODYs
NyBAQCBXSS5DU1NNYW5hZ2VyLkFwcGVhcmFuY2UgPSB7CiBXSS5DU1NNYW5hZ2VyLlBzZXVkb1Nl
bGVjdG9yTmFtZXMgPSB7CiAgICAgQWZ0ZXI6ICJhZnRlciIsCiAgICAgQmVmb3JlOiAiYmVmb3Jl
IiwKKyAgICBCYWNrZHJvcDogImJhY2tkcm9wIiwKICAgICBGaXJzdExldHRlcjogImZpcnN0LWxl
dHRlciIsCiAgICAgRmlyc3RMaW5lOiAiZmlyc3QtbGluZSIsCiAgICAgSGlnaGxpZ2h0OiAiaGln
aGxpZ2h0IiwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwppbmRleCAyYjAyMzIwZmIyZGEwMmRhOTRhNDRkNDNiNGMwY2YxN2EwYjdmNzdi
Li4yYWYwZjYxNzJjM2U3ZDZkMTIwMWY1ZDhlYmU4MzRiYjI3NTk3MmNhIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTUgQEAKKzIwMjEtMDgtMTIgIFRpbSBOZ3V5ZW4gIDxudGltQGFwcGxlLmNvbT4KKworICAg
ICAgICBJbXBsZW1lbnQgOjpiYWNrZHJvcCBwc2V1ZG8gZWxlbWVudAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI3ODAxCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBhZGRzIFVBIHN0eWxlcywgUmVu
ZGVyVHJlZUJ1aWxkZXIgc3VwcG9ydCBhbmQgV2ViSW5zcGVjdG9yIHN1cHBvcnQgZm9yIDo6YmFj
a2Ryb3AuCisgICAgICAgIFNvbWUgaW1wb3J0ZWQgYmxpbmsgdGVzdHMgbm93IHN0YXJ0IHBhc3Np
bmcsIHNvbWUgc3RpbGwgbmVlZCBwcm9wZXIgdG9wIGxheWVyIHN1cHBvcnQuCisKKyAgICAgICAg
KiBUZXN0RXhwZWN0YXRpb25zOgorCiAyMDIxLTA4LTExICBBeXVtaSBLb2ppbWEgIDxheXVtaV9r
b2ppbWFAYXBwbGUuY29tPgogCiAgICAgICAgIFsgV2luIEVXUyBdIGZhc3QvZm9ybXMvaW5wdXQt
YmFzZWxpbmUuaHRtbCBpcyBmbGFreSBjcmFzaGluZy4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdl
TG9nCmluZGV4IDlkMTIzZjMyZTAxMzEwYWUwY2MyZjA0ZjVjMDJiMmQzZTJkZDhjNjUuLmQwMDNh
YTkwOWU1YTNiMjhlMGRkYjdlMzZiMzJkYTllODAxOGNkNzkgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDIxLTA4LTEyICBUaW0gTmd1eWVuICA8bnRp
bUBhcHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IDo6YmFja2Ryb3AgcHNldWRvIGVsZW1l
bnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNzgw
MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMg
YWRkcyBVQSBzdHlsZXMsIFJlbmRlclRyZWVCdWlsZGVyIHN1cHBvcnQgYW5kIFdlYkluc3BlY3Rv
ciBzdXBwb3J0IGZvciA6OmJhY2tkcm9wLgorICAgICAgICBTb21lIGltcG9ydGVkIGJsaW5rIHRl
c3RzIG5vdyBzdGFydCBwYXNzaW5nLCBzb21lIHN0aWxsIG5lZWQgcHJvcGVyIHRvcCBsYXllciBz
dXBwb3J0LgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdmFsdWVzL2No
LWVtcHR5LXBzZXVkby1yZWNhbGMtb24tZm9udC1sb2FkLWV4cGVjdGVkLnR4dDoKKwogMjAyMS0w
OC0xMSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIEhUTUxNZXRh
RWxlbWVudCBodHRwLWVxdWl2IHNob3VsZCBub3QgYmUgcHJvY2Vzc2VkIGluIHNoYWRvdyB0cmVl
cwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3Rz
L1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggMzE1NjI0OTc0NjJlZGVhYzQyZTcwNGVhOTA3MzAyODdl
N2ZhNTM2NS4uOThlMjNjYThhNjI1MGNmY2I2OTExM2UyYWY2Y2EyZDk4OWM5MmFlNCAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9UZXN0
RXhwZWN0YXRpb25zCkBAIC0yMzY5LDE3ICsyMzY5LDEwIEBAIGxvYWRlci9zdGF0ZW9iamVjdHMv
cmVwbGFjZXN0YXRlLXNpemUuaHRtbCBbIFNsb3cgXQogaW1wb3J0ZWQvYmxpbmsvZmFzdC9tdWx0
aWNvbC9vdXRsaW5lcy1hdC1jb2x1bW4tYm91bmRhcmllcy5odG1sIFsgSW1hZ2VPbmx5RmFpbHVy
ZSBdCiBmYXN0L211bHRpY29sL211bHRpY29sLXdpdGgtY2hpbGQtcmVuZGVyTGF5ZXItZm9yLWlu
cHV0Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIAotIyA6OmJhY2tkcm9wCi13ZWJraXQub3Jn
L2IvMjI3ODAxIGltcG9ydGVkL2JsaW5rL2RpYWxvZy9iYWNrZHJvcC1kZXNjZW5kYW50LXNlbGVj
dG9yLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8yMjc4MDEgaW1wb3J0
ZWQvYmxpbmsvZGlhbG9nL2JhY2tkcm9wLWRvZXMtbm90LWluaGVyaXQuaHRtbCBbIEltYWdlT25s
eUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzIyNzgwMSBpbXBvcnRlZC9ibGluay9kaWFsb2cvYmFj
a2Ryb3AtZHluYW1pYy1zdHlsZS1jaGFuZ2UuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQotd2Vi
a2l0Lm9yZy9iLzIyNzgwMSBpbXBvcnRlZC9ibGluay9kaWFsb2cvYmFja2Ryb3AtaW4tZmxvdy5o
dG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMjI3ODAxIGltcG9ydGVkL2Js
aW5rL2RpYWxvZy9iYWNrZHJvcC1zdGFja2luZy1vcmRlci5odG1sIFsgSW1hZ2VPbmx5RmFpbHVy
ZSBdCi0KICMgVG9wIGxheWVyIHRlc3RzCit3ZWJraXQub3JnL2IvODQ3OTYgaW1wb3J0ZWQvYmxp
bmsvZGlhbG9nL2JhY2tkcm9wLWluLWZsb3cuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQord2Vi
a2l0Lm9yZy9iLzg0Nzk2IGltcG9ydGVkL2JsaW5rL2RpYWxvZy9iYWNrZHJvcC1zdGFja2luZy1v
cmRlci5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvODQ3OTYgaW1wb3J0
ZWQvYmxpbmsvZGlhbG9nL2RvbnQtc2hhcmUtc3R5bGUtdG8tdG9wLWxheWVyLmh0bWwgWyBJbWFn
ZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi84NDc5NiBpbXBvcnRlZC9ibGluay9kaWFsb2cv
bW9kYWwtZGlhbG9nLWJhY2tkcm9wLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5v
cmcvYi84NDc5NiBpbXBvcnRlZC9ibGluay9kaWFsb2cvbW9kYWwtZGlhbG9nLWdlbmVyYXRlZC1j
b250ZW50Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi84NDc5NiBpbXBv
cnRlZC9ibGluay9kaWFsb2cvbW9kYWwtZGlhbG9nLWluLXJlcGxhY2VkLXJlbmRlcmVyLmh0bWwg
WyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi84NDc5NiBpbXBvcnRlZC9ibGluay9k
aWFsb2cvbW9kYWwtZGlhbG9nLWluLXRhYmxlLWNvbHVtbi5odG1sIFsgSW1hZ2VPbmx5RmFpbHVy
ZSBdCiB3ZWJraXQub3JnL2IvODQ3OTYgaW1wb3J0ZWQvYmxpbmsvZGlhbG9nL3JlbW92ZWQtZWxl
bWVudC1pcy1yZW1vdmVkLWZyb20tdG9wLWxheWVyLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL2Nzcy12YWx1ZXMvY2gtZW1wdHktcHNldWRvLXJlY2FsYy1vbi1mb250LWxvYWQtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
Y3NzLXZhbHVlcy9jaC1lbXB0eS1wc2V1ZG8tcmVjYWxjLW9uLWZvbnQtbG9hZC1leHBlY3RlZC50
eHQKaW5kZXggNjljN2VhOTg0N2M2OTlmMjVjNTE4YTZiMTc3YWUyYWM1YmQ1ZmM3Yi4uMDE2NjFm
YTkxZjU5MzY3MzJkMzU5ZjI1NzViODAxOTJiNDBjN2FlOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXZhbHVlcy9jaC1lbXB0
eS1wc2V1ZG8tcmVjYWxjLW9uLWZvbnQtbG9hZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXZhbHVlcy9jaC1lbXB0
eS1wc2V1ZG8tcmVjYWxjLW9uLWZvbnQtbG9hZC1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBA
CiAKLUZBSUwgY2ggaW4gcHNldWRvLWVsZW1lbnQgOjpiZWZvcmUgc2hvdWxkIGJlIHJlY2FsY3Vs
YXRlZCBhZnRlciBsb2FkaW5nIGEgd2ViIGZvbnQgYXNzZXJ0X2xlc3NfdGhhbjogZXhwZWN0ZWQg
YSBudW1iZXIgbGVzcyB0aGFuIDI0IGJ1dCBnb3QgTmFOCi1GQUlMIGNoIGluIHBzZXVkby1lbGVt
ZW50IDo6YWZ0ZXIgc2hvdWxkIGJlIHJlY2FsY3VsYXRlZCBhZnRlciBsb2FkaW5nIGEgd2ViIGZv
bnQgYXNzZXJ0X2xlc3NfdGhhbjogZXhwZWN0ZWQgYSBudW1iZXIgbGVzcyB0aGFuIDI0IGJ1dCBn
b3QgTmFOCi1GQUlMIGNoIGluIHBzZXVkby1lbGVtZW50IDo6YmFja2Ryb3Agc2hvdWxkIGJlIHJl
Y2FsY3VsYXRlZCBhZnRlciBsb2FkaW5nIGEgd2ViIGZvbnQgYXNzZXJ0X2xlc3NfdGhhbjogZXhw
ZWN0ZWQgYSBudW1iZXIgbGVzcyB0aGFuIDI0IGJ1dCBnb3QgTmFOCitQQVNTIGNoIGluIHBzZXVk
by1lbGVtZW50IDo6YmVmb3JlIHNob3VsZCBiZSByZWNhbGN1bGF0ZWQgYWZ0ZXIgbG9hZGluZyBh
IHdlYiBmb250CitQQVNTIGNoIGluIHBzZXVkby1lbGVtZW50IDo6YWZ0ZXIgc2hvdWxkIGJlIHJl
Y2FsY3VsYXRlZCBhZnRlciBsb2FkaW5nIGEgd2ViIGZvbnQKK1BBU1MgY2ggaW4gcHNldWRvLWVs
ZW1lbnQgOjpiYWNrZHJvcCBzaG91bGQgYmUgcmVjYWxjdWxhdGVkIGFmdGVyIGxvYWRpbmcgYSB3
ZWIgZm9udAogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>435432</attachid>
            <date>2021-08-12 10:18:24 -0700</date>
            <delta_ts>2021-08-13 07:19:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227801-20210812191823.patch</filename>
            <type>text/plain</type>
            <size>23143</size>
            <attacher name="Tim Nguyen (:ntim)">ntim</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgwOTIzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAx
ZDM4N2Q3MjBmMzEyNjFlMjRkMmU5ZTRmYTM5ZTBhOGIwMDhjMmU3Li4wNzg2ZTQ5YzgzODVmZTIx
YThhMzQxNTdmZGYzYjMyNmM2MDliMWU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNSBAQAorMjAyMS0wOC0xMiAgVGltIE5ndXllbiAgPG50aW1AYXBwbGUuY29tPgorCisg
ICAgICAgIEltcGxlbWVudCA6OmJhY2tkcm9wIHBzZXVkbyBlbGVtZW50CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjc4MDEKKworICAgICAgICBSZXZp
ZXdlZCBieSBBbnR0aSBLb2l2aXN0by4KKworICAgICAgICBUaGlzIGFkZHMgVUEgc3R5bGVzLCBS
ZW5kZXJUcmVlQnVpbGRlciBzdXBwb3J0IGFuZCBXZWJJbnNwZWN0b3Igc3VwcG9ydCBmb3IgOjpi
YWNrZHJvcC4KKyAgICAgICAgU29tZSBpbXBvcnRlZCBibGluayB0ZXN0cyBub3cgc3RhcnQgcGFz
c2luZywgc29tZSBzdGlsbCBuZWVkIHByb3BlciB0b3AgbGF5ZXIgc3VwcG9ydC4KKworICAgICAg
ICAqIGluc3BlY3Rvci9wcm90b2NvbC9DU1MuanNvbjoKKwogMjAyMS0wOC0xMSAgWXVzdWtlIFN1
enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgogCiAgICAgICAgIFdURkNyYXNoIGluIEpTQzo6TGV4
ZXI8Y2hhcjE2X3Q+OjphcHBlbmQ4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjUwMTU5NjEzNzExMDU0MWRlYmQ3
MDY5YWEzZmYwNjVhNGFmZjM4NC4uMmIwMDAyMTBjMDk2MDk4OGU4MDZmYTRiODMwYWQ5Y2RhZmMz
OGRkZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQyIEBACisyMDIxLTA4LTEyICBUaW0gTmd1eWVu
ICA8bnRpbUBhcHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IDo6YmFja2Ryb3AgcHNldWRv
IGVsZW1lbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIyNzgwMQorCisgICAgICAgIFJldmlld2VkIGJ5IEFudHRpIEtvaXZpc3RvLgorCisgICAgICAg
IFRoaXMgYWRkcyBVQSBzdHlsZXMsIFJlbmRlclRyZWVCdWlsZGVyIHN1cHBvcnQgYW5kIFdlYklu
c3BlY3RvciBzdXBwb3J0IGZvciA6OmJhY2tkcm9wLgorICAgICAgICBTb21lIGltcG9ydGVkIGJs
aW5rIHRlc3RzIG5vdyBzdGFydCBwYXNzaW5nLCBzb21lIHN0aWxsIG5lZWQgcHJvcGVyIHRvcCBs
YXllciBzdXBwb3J0LgorCisgICAgICAgICogY3NzL0NTU1NlbGVjdG9yLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkNTU1NlbGVjdG9yOjpwc2V1ZG9JZCk6CisgICAgICAgICogY3NzL0NTU1NlbGVj
dG9yLmg6CisgICAgICAgICogY3NzL1NlbGVjdG9yUHNldWRvRWxlbWVudFR5cGVNYXAuaW46Cisg
ICAgICAgICogY3NzL2RpYWxvZy5jc3M6CisgICAgICAgIChkaWFsb2c6OmJhY2tkcm9wKToKKyAg
ICAgICAgKDo6YmFja2Ryb3ApOgorICAgICAgICAqIGRvbS9FbGVtZW50Lmg6CisgICAgICAgIChX
ZWJDb3JlOjpFbGVtZW50Ojppc0luVG9wTGF5ZXIgY29uc3QpOgorICAgICAgICAqIGluc3BlY3Rv
ci9hZ2VudHMvSW5zcGVjdG9yQ1NTQWdlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6cHJvdG9j
b2xWYWx1ZUZvclBzZXVkb0lkKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJFbGVtZW50OjpiYWNrZHJvcFJlbmRlcmVyIGNv
bnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckVsZW1lbnQ6OnNldEJhY2tkcm9wUmVuZGVy
ZXIpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJFbGVtZW50Lmg6CisgICAgICAgICogcmVu
ZGVyaW5nL1JlbmRlck9iamVjdC5oOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9SZW5kZXJT
dHlsZUNvbnN0YW50cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpvcGVyYXRvcjw8KToKKyAgICAg
ICAgKiByZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaDoKKyAgICAgICAgKiBy
ZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6UmVuZGVyVHJlZUJ1aWxkZXI6OmRlc3Ryb3lBbmRDbGVhblVwQW5vbnltb3VzV3JhcHBlcnMp
OgorICAgICAgICAqIHJlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlVXBkYXRlci5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpSZW5kZXJUcmVlVXBkYXRlcjo6dXBkYXRlQWZ0ZXJEZXNjZW5kYW50
cyk6CisgICAgICAgICogcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRyZWVVcGRhdGVyR2VuZXJh
dGVkQ29udGVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUcmVlVXBkYXRlcjo6R2Vu
ZXJhdGVkQ29udGVudDo6dXBkYXRlQmFja2Ryb3BSZW5kZXJlcik6CisgICAgICAgICogcmVuZGVy
aW5nL3VwZGF0aW5nL1JlbmRlclRyZWVVcGRhdGVyR2VuZXJhdGVkQ29udGVudC5oOgorICAgICAg
ICAqIHN0eWxlL1N0eWxlVHJlZVJlc29sdmVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxl
OjpUcmVlUmVzb2x2ZXI6OnJlc29sdmVQc2V1ZG9TdHlsZSk6CisKIDIwMjEtMDgtMTEgIFlvdWVu
biBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIE1lZGlhIGVsZW1lbnQgaXMg
bm90IGFsd2F5cyBhdXRvcGxheWluZyB3aGVuIGdvaW5nIGZyb20gYmFja2dyb3VuZCB0byBmb3Jl
Z3JvdW5kIGlmIGl0IGlzIGluaXRpYWxseSBub3QgaW4gdmlld3BvcnQKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvQ2hh
bmdlTG9nCmluZGV4IDFiZTNjOWY1MDA0YzJjM2MzYzc2OTM2NjkxYTE0YjQ2MTM1MzFlYmIuLjY5
MzUxMTY0MWU3NjFiNmFiZGQwYmJlM2U2NmY3ZDFlYjllZjZjYWMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL0No
YW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTA4LTEyICBUaW0gTmd1eWVuICA8bnRpbUBh
cHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IDo6YmFja2Ryb3AgcHNldWRvIGVsZW1lbnQK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNzgwMQor
CisgICAgICAgIFJldmlld2VkIGJ5IEFudHRpIEtvaXZpc3RvLgorCisgICAgICAgIFRoaXMgYWRk
cyBVQSBzdHlsZXMsIFJlbmRlclRyZWVCdWlsZGVyIHN1cHBvcnQgYW5kIFdlYkluc3BlY3RvciBz
dXBwb3J0IGZvciA6OmJhY2tkcm9wLgorICAgICAgICBTb21lIGltcG9ydGVkIGJsaW5rIHRlc3Rz
IG5vdyBzdGFydCBwYXNzaW5nLCBzb21lIHN0aWxsIG5lZWQgcHJvcGVyIHRvcCBsYXllciBzdXBw
b3J0LgorCisgICAgICAgICogVXNlckludGVyZmFjZS9Db250cm9sbGVycy9DU1NNYW5hZ2VyLmpz
OgorICAgICAgICAoV0kuQ1NTTWFuYWdlci5kaXNwbGF5TmFtZUZvclBzZXVkb0lkKToKKwogMjAy
MS0wOC0wMyAgU29uaWEgU2luZ2xhICA8c29uaWFzaW5nbGEuMTgxMkBnbWFpbC5jb20+CiAKICAg
ICAgICAgV2ViIEluc3BlY3RvcjogQWRkIHN0YW5kYXJkIGxvZ2ljYWwgcHJvcGVydGllcyB0byBD
U1Mga2V5d29yZCBjb21wbGV0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aW5zcGVjdG9yL3Byb3RvY29sL0NTUy5qc29uIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3Bl
Y3Rvci9wcm90b2NvbC9DU1MuanNvbgppbmRleCBjOWViNTc2YmQ3YzI1OTM0YWE1OWNiZjMyZTFj
Y2NmOTMzOTE3Y2U4Li40YzYyZGU5MGExNTBjNjIzZGM1YTA3NDUyYWE0YjQzNzliMjg0NmY0IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Byb3RvY29sL0NTUy5q
c29uCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvQ1NTLmpz
b24KQEAgLTQzLDYgKzQzLDcgQEAKICAgICAgICAgICAgICAgICAiYmVmb3JlIiwKICAgICAgICAg
ICAgICAgICAiYWZ0ZXIiLAogICAgICAgICAgICAgICAgICJzZWxlY3Rpb24iLAorICAgICAgICAg
ICAgICAgICJiYWNrZHJvcCIsCiAgICAgICAgICAgICAgICAgInNjcm9sbGJhciIsCiAgICAgICAg
ICAgICAgICAgInNjcm9sbGJhci10aHVtYiIsCiAgICAgICAgICAgICAgICAgInNjcm9sbGJhci1i
dXR0b24iLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1NlbGVjdG9yLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWxlY3Rvci5jcHAKaW5kZXggYzE1YzYyOTJlZjhiNTIy
NDIxOTFlYmM0YzQxNTA1MmU1ZTIyNGE0YS4uNjg1MGU4NGY4YmYwYzU0ODExNzQ2MTI1MDY4ZTAw
MzgwMmU5MmQ1OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1NlbGVjdG9yLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2VsZWN0b3IuY3BwCkBAIC0yMzIsNiArMjMy
LDggQEAgUHNldWRvSWQgQ1NTU2VsZWN0b3I6OnBzZXVkb0lkKFBzZXVkb0VsZW1lbnRUeXBlIHR5
cGUpCiAgICAgICAgIHJldHVybiBQc2V1ZG9JZDo6SGlnaGxpZ2h0OwogICAgIGNhc2UgUHNldWRv
RWxlbWVudE1hcmtlcjoKICAgICAgICAgcmV0dXJuIFBzZXVkb0lkOjpNYXJrZXI7CisgICAgY2Fz
ZSBQc2V1ZG9FbGVtZW50QmFja2Ryb3A6CisgICAgICAgIHJldHVybiBQc2V1ZG9JZDo6QmFja2Ry
b3A7CiAgICAgY2FzZSBQc2V1ZG9FbGVtZW50QmVmb3JlOgogICAgICAgICByZXR1cm4gUHNldWRv
SWQ6OkJlZm9yZTsKICAgICBjYXNlIFBzZXVkb0VsZW1lbnRBZnRlcjoKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWxlY3Rvci5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Nl
bGVjdG9yLmgKaW5kZXggNWI0YjlmMTVmMzM0ZDI0YjJjYjJjMWJiZTA5NjRkMGY3ZGU4MGEwMy4u
YmM4M2FmZDkxNzQwYTExMjBmMzFkODQ2NzljOWQxMjZjN2NjMWY5NSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvY3NzL0NTU1NlbGVjdG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NT
U1NlbGVjdG9yLmgKQEAgLTE4MCw2ICsxODAsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAg
ICAgIGVudW0gUHNldWRvRWxlbWVudFR5cGUgewogICAgICAgICAgICAgUHNldWRvRWxlbWVudFVu
a25vd24gPSAwLAogICAgICAgICAgICAgUHNldWRvRWxlbWVudEFmdGVyLAorICAgICAgICAgICAg
UHNldWRvRWxlbWVudEJhY2tkcm9wLAogICAgICAgICAgICAgUHNldWRvRWxlbWVudEJlZm9yZSwK
ICNpZiBFTkFCTEUoVklERU8pCiAgICAgICAgICAgICBQc2V1ZG9FbGVtZW50Q3VlLApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1NlbGVjdG9yUHNldWRvRWxlbWVudFR5cGVNYXAuaW4g
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JQc2V1ZG9FbGVtZW50VHlwZU1hcC5pbgppbmRl
eCAwYjVlZmM2Njg0Y2I1NmZlZWUwNTkyZTczZjg2YzYyZTBiMmMyY2UyLi5lMWU1MTk0OGZlMjI3
NjNhMTdkZTE4ODk0Y2Q0Nzk4YTk3MGEyMDQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvU2VsZWN0b3JQc2V1ZG9FbGVtZW50VHlwZU1hcC5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvU2VsZWN0b3JQc2V1ZG9FbGVtZW50VHlwZU1hcC5pbgpAQCAtMSw0ICsxLDUgQEAKIGFmdGVy
CitiYWNrZHJvcAogYmVmb3JlCiAjaWYgRU5BQkxFKFZJREVPKQogY3VlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9jc3MvZGlhbG9nLmNzcyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9kaWFsb2cu
Y3NzCmluZGV4IGI2MWRjOWQ3NmYyMGJjMDRjNDA0NjU2YjEyYzRjOGFkYWNiOTA5NjYuLjFlN2U1
YTE1MjBmMTMyYjY5MDQ2ZDk0ZTJlMmExZGYzMDQ1M2IwNWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9kaWFsb2cuY3NzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9kaWFsb2cuY3Nz
CkBAIC0yNCwzICsyNCwxNiBAQCBkaWFsb2c6LWludGVybmFsLW1vZGFsLWRpYWxvZyB7CiAgICAg
bWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA2cHggLSAyZW0pOwogICAgIG1heC1oZWlnaHQ6IGNhbGMo
MTAwJSAtIDZweCAtIDJlbSk7CiB9CisKK2RpYWxvZzo6YmFja2Ryb3AgeworICAgIGJhY2tncm91
bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsKK30KKworOjpiYWNrZHJvcCB7CisgICAgZGlzcGxheTog
YmxvY2s7CisgICAgcG9zaXRpb246IGZpeGVkOworICAgIHRvcDogMDsKKyAgICBsZWZ0OiAwOwor
ICAgIHJpZ2h0OiAwOworICAgIGJvdHRvbTogMDsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2RvbS9FbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCmluZGV4IDli
NDA5Y2E5ZjNkOTk4NzY1ZTIxZWUzZTU3MDllZDM2OTM4MDQwNjAuLjU4MmRiMTIzYjZkOTc1Nzc0
ZWE1ZmMyNDJhODM2MzFjODQ3M2JlM2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9F
bGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaApAQCAtNTExLDYgKzUx
MSw4IEBAIHB1YmxpYzoKICAgICBjb25zdCBSZW5kZXJTdHlsZSogbGFzdFN0eWxlQ2hhbmdlRXZl
bnRTdHlsZShQc2V1ZG9JZCkgY29uc3Q7CiAgICAgdm9pZCBzZXRMYXN0U3R5bGVDaGFuZ2VFdmVu
dFN0eWxlKFBzZXVkb0lkLCBzdGQ6OnVuaXF1ZV9wdHI8Y29uc3QgUmVuZGVyU3R5bGU+JiYpOwog
CisgICAgYm9vbCBpc0luVG9wTGF5ZXIoKSBjb25zdCB7IHJldHVybiBkb2N1bWVudCgpLnRvcExh
eWVyRWxlbWVudHMoKS5jb250YWlucyhtYWtlUmVmKCpjb25zdF9jYXN0PEVsZW1lbnQqPih0aGlz
KSkpOyB9CisKICNpZiBFTkFCTEUoRlVMTFNDUkVFTl9BUEkpCiAgICAgYm9vbCBjb250YWluc0Z1
bGxTY3JlZW5FbGVtZW50KCkgY29uc3QgeyByZXR1cm4gaGFzTm9kZUZsYWcoTm9kZUZsYWc6OkNv
bnRhaW5zRnVsbFNjcmVlbkVsZW1lbnQpOyB9CiAgICAgdm9pZCBzZXRDb250YWluc0Z1bGxTY3Jl
ZW5FbGVtZW50KGJvb2wpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Fn
ZW50cy9JbnNwZWN0b3JDU1NBZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdl
bnRzL0luc3BlY3RvckNTU0FnZW50LmNwcAppbmRleCA2NWE4MTMxMjlkNjMxNzM5YWIwNTYwNDFm
OTc1MGJkMjg4OGUyYzQ4Li4zZWMxNGY2NzFlZDg2NTUxYzRjYzlkMWVkYjg2YzdhZmEwMGNmMjVl
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckNT
U0FnZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3Rv
ckNTU0FnZW50LmNwcApAQCAtNDQ5LDYgKzQ0OSw4IEBAIHN0YXRpYyBzdGQ6Om9wdGlvbmFsPFBy
b3RvY29sOjpDU1M6OlBzZXVkb0lkPiBwcm90b2NvbFZhbHVlRm9yUHNldWRvSWQoUHNldWRvSWQK
ICAgICAgICAgcmV0dXJuIFByb3RvY29sOjpDU1M6OlBzZXVkb0lkOjpGaXJzdExldHRlcjsKICAg
ICBjYXNlIFBzZXVkb0lkOjpNYXJrZXI6CiAgICAgICAgIHJldHVybiBQcm90b2NvbDo6Q1NTOjpQ
c2V1ZG9JZDo6TWFya2VyOworICAgIGNhc2UgUHNldWRvSWQ6OkJhY2tkcm9wOgorICAgICAgICBy
ZXR1cm4gUHJvdG9jb2w6OkNTUzo6UHNldWRvSWQ6OkJhY2tkcm9wOwogICAgIGNhc2UgUHNldWRv
SWQ6OkJlZm9yZToKICAgICAgICAgcmV0dXJuIFByb3RvY29sOjpDU1M6OlBzZXVkb0lkOjpCZWZv
cmU7CiAgICAgY2FzZSBQc2V1ZG9JZDo6QWZ0ZXI6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyRWxlbWVudC5jcHAKaW5kZXggZjg3ZDA1ZjM5OWU4NDkwOGI1OTk4ZjVjOWY5NTZjOWFk
NWNjMmYxNy4uNmZmODMyNmEyNmVkZmNkZjg2MGJmY2U0YWNkODgyY2NkYmE1NTFkMiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVsZW1lbnQuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbGVtZW50LmNwcApAQCAtMjM3NSw0ICsyMzc1
LDE0IEBAIHN0ZDo6dW5pcXVlX3B0cjxSZW5kZXJTdHlsZT4gUmVuZGVyRWxlbWVudDo6YW5pbWF0
ZWRTdHlsZSgpCiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAorV2Vha1B0cjxSZW5kZXJCbG9ja0Zs
b3c+IFJlbmRlckVsZW1lbnQ6OmJhY2tkcm9wUmVuZGVyZXIoKSBjb25zdAoreworICAgIHJldHVy
biBoYXNSYXJlRGF0YSgpID8gcmFyZURhdGEoKS5iYWNrZHJvcFJlbmRlcmVyIDogbnVsbHB0cjsK
K30KKwordm9pZCBSZW5kZXJFbGVtZW50OjpzZXRCYWNrZHJvcFJlbmRlcmVyKFJlbmRlckJsb2Nr
RmxvdyYgcmVuZGVyZXIpCit7CisgICAgZW5zdXJlUmFyZURhdGEoKS5iYWNrZHJvcFJlbmRlcmVy
ID0gbWFrZVdlYWtQdHIocmVuZGVyZXIpOworfQorCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckVsZW1lbnQuaAppbmRleCAyMzc3YmE5NzJjNGFjOTVjYzhmNzhkZDMyZGRlODE5NDlj
NDdmZTI1Li5hNjU1N2NkNDIwYzI4NDRjN2I0NTU2ODU3YjY5NzRhMzJhNmMxMjE1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbGVtZW50LmgKQEAgLTI1Nyw2ICsyNTcsOSBAQCBw
dWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHN1c3BlbmRBbmltYXRpb25zKE1vbm90b25pY1RpbWUg
PSBNb25vdG9uaWNUaW1lKCkpIHsgfQogICAgIHN0ZDo6dW5pcXVlX3B0cjxSZW5kZXJTdHlsZT4g
YW5pbWF0ZWRTdHlsZSgpOwogCisgICAgV2Vha1B0cjxSZW5kZXJCbG9ja0Zsb3c+IGJhY2tkcm9w
UmVuZGVyZXIoKSBjb25zdDsKKyAgICB2b2lkIHNldEJhY2tkcm9wUmVuZGVyZXIoUmVuZGVyQmxv
Y2tGbG93Jik7CisKIHByb3RlY3RlZDoKICAgICBlbnVtIEJhc2VUeXBlRmxhZyB7CiAgICAgICAg
IFJlbmRlckxheWVyTW9kZWxPYmplY3RGbGFnICA9IDEgPDwgMCwKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJPYmplY3QuaAppbmRleCAyZmQ5Njg3OTAyMmE2YTNiOGFjYzMxNmFmMWUxNTA0
YTYyMzI3NGU3Li41NTY3ZTRkYzM1MWU1NGYzODE1MjljYTYwMDBjYzFiOTQ4NWNjMzQwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oCkBAIC01OSw2ICs1OSw3IEBAIGNs
YXNzIFBvc2l0aW9uOwogY2xhc3MgUmVuZGVyQm94TW9kZWxPYmplY3Q7CiBjbGFzcyBSZW5kZXJJ
bmxpbmU7CiBjbGFzcyBSZW5kZXJCbG9jazsKK2NsYXNzIFJlbmRlckJsb2NrRmxvdzsKIGNsYXNz
IFJlbmRlckVsZW1lbnQ7CiBjbGFzcyBSZW5kZXJGcmFnbWVudGVkRmxvdzsKIGNsYXNzIFJlbmRl
ckdlb21ldHJ5TWFwOwpAQCAtOTM4LDYgKzkzOSw3IEBAIHByaXZhdGU6CiAKICAgICAgICAgLy8g
RnJvbSBSZW5kZXJFbGVtZW50CiAgICAgICAgIHN0ZDo6dW5pcXVlX3B0cjxSZW5kZXJTdHlsZT4g
Y2FjaGVkRmlyc3RMaW5lU3R5bGU7CisgICAgICAgIFdlYWtQdHI8UmVuZGVyQmxvY2tGbG93PiBi
YWNrZHJvcFJlbmRlcmVyOwogICAgIH07CiAgICAgCiAgICAgY29uc3QgUmVuZGVyT2JqZWN0OjpS
ZW5kZXJPYmplY3RSYXJlRGF0YSYgcmFyZURhdGEoKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuY3BwCmluZGV4
IDQ2YTU5MmNiZDRiMGRmYmI3NzAwNWIwZTg1ZGY5Mzk2NjE0MzgyZWEuLjVlZDEwM2M3NTJjMDE5
MDcxODNkZTkzOTU0NTQ2MmUzOTIzZDgyM2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcApAQCAtODg3LDYgKzg4
Nyw3IEBAIFRleHRTdHJlYW0mIG9wZXJhdG9yPDwoVGV4dFN0cmVhbSYgdHMsIFBzZXVkb0lkIHBz
ZXVkb0lkKQogICAgIGNhc2UgUHNldWRvSWQ6OkZpcnN0TGV0dGVyOiB0cyA8PCAiZmlyc3QtbGV0
dGVyIjsgYnJlYWs7CiAgICAgY2FzZSBQc2V1ZG9JZDo6SGlnaGxpZ2h0OiB0cyA8PCAiaGlnaGxp
Z2h0IjsgYnJlYWs7CiAgICAgY2FzZSBQc2V1ZG9JZDo6TWFya2VyOiB0cyA8PCAibWFya2VyIjsg
YnJlYWs7CisgICAgY2FzZSBQc2V1ZG9JZDo6QmFja2Ryb3A6IHRzIDw8ICJiYWNrZHJvcCI7IGJy
ZWFrOwogICAgIGNhc2UgUHNldWRvSWQ6OkJlZm9yZTogdHMgPDwgImJlZm9yZSI7IGJyZWFrOwog
ICAgIGNhc2UgUHNldWRvSWQ6OkFmdGVyOiB0cyA8PCAiYWZ0ZXIiOyBicmVhazsKICAgICBjYXNl
IFBzZXVkb0lkOjpTZWxlY3Rpb246IHRzIDw8ICJzZWxlY3Rpb24iOyBicmVhazsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5o
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmgK
aW5kZXggODM5YmRjMjBhYmY5NjEyYTMxNzExZTFjMzA5MGU1MjRjNTc3ODQxMS4uNzNkNGI5ZDU5
YWNmZWZjMWU2M2UxYTk0OGU2YmNjZTBmMTM4NzA2MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmgKQEAgLTk1LDYgKzk1
LDcgQEAgZW51bSBjbGFzcyBQc2V1ZG9JZCA6IHVpbnQxNl90IHsKICAgICBCZWZvcmUsCiAgICAg
QWZ0ZXIsCiAgICAgU2VsZWN0aW9uLAorICAgIEJhY2tkcm9wLAogICAgIFNjcm9sbGJhciwKIAog
ICAgIC8vIEludGVybmFsOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3Vw
ZGF0aW5nL1JlbmRlclRyZWVCdWlsZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91
cGRhdGluZy9SZW5kZXJUcmVlQnVpbGRlci5jcHAKaW5kZXggZWI2NjhiNGJkNjM4NjYzMDk5NGUy
NmFkZDJkMWU2NWM4Mzk0OTk5Zi4uNjYyN2VjMWViZTYyMjE5MTcyNzJhZjgxOGI4ZjFlNmUzZTI5
MjkxZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRl
clRyZWVCdWlsZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcv
UmVuZGVyVHJlZUJ1aWxkZXIuY3BwCkBAIC04MDcsNiArODA3LDEyIEBAIHZvaWQgUmVuZGVyVHJl
ZUJ1aWxkZXI6OmRlc3Ryb3lBbmRDbGVhblVwQW5vbnltb3VzV3JhcHBlcnMoUmVuZGVyT2JqZWN0
JiByZW5kZXJlCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKKyAgICAvLyBBbHNvIGRlc3Ryb3kg
OjpiYWNrZHJvcCBhbG9uZyB3aXRoIGVsZW1lbnQgaWYgdGhlcmUgaXMgb25lCisgICAgaWYgKGlz
PFJlbmRlckVsZW1lbnQ+KHJlbmRlcmVyVG9EZXN0cm95KSkgeworICAgICAgICBpZiAoYXV0byBi
YWNrZHJvcFJlbmRlcmVyID0gZG93bmNhc3Q8UmVuZGVyRWxlbWVudD4ocmVuZGVyZXJUb0Rlc3Ry
b3kpLmJhY2tkcm9wUmVuZGVyZXIoKSkKKyAgICAgICAgICAgIGRlc3Ryb3koKmJhY2tkcm9wUmVu
ZGVyZXIpOworICAgIH0KKwogICAgIGF1dG8gaXNBbm9ueW1vdXNBbmRTYWZlVG9EZWxldGUgPSBb
XSAoY29uc3QgYXV0byYgcmVuZGVyZXIpIHsKICAgICAgICAgcmV0dXJuIHJlbmRlcmVyLmlzQW5v
bnltb3VzKCkgJiYgIXJlbmRlcmVyLmlzUmVuZGVyVmlldygpICYmICFyZW5kZXJlci5pc1JlbmRl
ckZyYWdtZW50ZWRGbG93KCk7CiAgICAgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlVXBkYXRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZVVwZGF0ZXIuY3BwCmluZGV4IDAyYmIyZmFjZTZl
NjMxNDI2OWFmNTMxYjFhMTY0YWU2NTYzZjlhMjguLmEzMzE2OWZkNzcyZGQyYTc0MzUzNWM4OTEy
OGQyZWJhZTNkNjYyZGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRh
dGluZy9SZW5kZXJUcmVlVXBkYXRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3VwZGF0aW5nL1JlbmRlclRyZWVVcGRhdGVyLmNwcApAQCAtMjY2LDYgKzI2Niw3IEBAIHZvaWQg
UmVuZGVyVHJlZVVwZGF0ZXI6OnVwZGF0ZUFmdGVyRGVzY2VuZGFudHMoRWxlbWVudCYgZWxlbWVu
dCwgY29uc3QgU3R5bGU6OkVsCiAgICAgaWYgKCFyZW5kZXJlcikKICAgICAgICAgcmV0dXJuOwog
CisgICAgZ2VuZXJhdGVkQ29udGVudCgpLnVwZGF0ZUJhY2tkcm9wUmVuZGVyZXIoKnJlbmRlcmVy
KTsKICAgICBtX2J1aWxkZXIudXBkYXRlQWZ0ZXJEZXNjZW5kYW50cygqcmVuZGVyZXIpOwogCiAg
ICAgaWYgKGVsZW1lbnQuaGFzQ3VzdG9tU3R5bGVSZXNvbHZlQ2FsbGJhY2tzKCkgJiYgdXBkYXRl
cyAmJiB1cGRhdGVzLT51cGRhdGUuY2hhbmdlID09IFN0eWxlOjpDaGFuZ2U6OlJlbmRlcmVyKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRyZWVV
cGRhdGVyR2VuZXJhdGVkQ29udGVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBk
YXRpbmcvUmVuZGVyVHJlZVVwZGF0ZXJHZW5lcmF0ZWRDb250ZW50LmNwcAppbmRleCAxOWIzNGE0
NzI2Yzk2ZjBhZTA2NmU0ZGFhYjljZjVjMTczYTczMWEyLi5jYzRhYzViNWJlZjM3MzcwOGI2MWM0
ODFhOTk1YzQ5NWE5MDg2NWE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
dXBkYXRpbmcvUmVuZGVyVHJlZVVwZGF0ZXJHZW5lcmF0ZWRDb250ZW50LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZVVwZGF0ZXJHZW5lcmF0ZWRD
b250ZW50LmNwcApAQCAtMTcyLDYgKzE3Miw0NSBAQCB2b2lkIFJlbmRlclRyZWVVcGRhdGVyOjpH
ZW5lcmF0ZWRDb250ZW50Ojp1cGRhdGVQc2V1ZG9FbGVtZW50KEVsZW1lbnQmIGN1cnJlbnQsCiAg
ICAgbV91cGRhdGVyLm1fYnVpbGRlci51cGRhdGVBZnRlckRlc2NlbmRhbnRzKCpwc2V1ZG9FbGVt
ZW50UmVuZGVyZXIpOwogfQogCit2b2lkIFJlbmRlclRyZWVVcGRhdGVyOjpHZW5lcmF0ZWRDb250
ZW50Ojp1cGRhdGVCYWNrZHJvcFJlbmRlcmVyKFJlbmRlckVsZW1lbnQmIHJlbmRlcmVyKQorewor
ICAgIC8vIDo6YmFja2Ryb3AgZG9lcyBub3QgaW5oZXJpdCBzdHlsZSwgaGVuY2UgdXNpbmcgdGhl
IHZpZXcgc3R5bGUgYXMgcGFyZW50IHN0eWxlCisgICAgYXV0byBzdHlsZSA9IHJlbmRlcmVyLmdl
dENhY2hlZFBzZXVkb1N0eWxlKFBzZXVkb0lkOjpCYWNrZHJvcCwgJnJlbmRlcmVyLnZpZXcoKS5z
dHlsZSgpKTsKKworICAgIC8vIERlc3Ryb3kgOjpiYWNrZHJvcCBpZiBuZXcgZWxlbWVudCBubyBs
b25nZXIgaXMgaW4gdG9wIGxheWVyLCBvciBpZiBpdCBpcyBoaWRkZW4KKyAgICBpZiAoKHJlbmRl
cmVyLmVsZW1lbnQoKSAmJiAhcmVuZGVyZXIuZWxlbWVudCgpLT5pc0luVG9wTGF5ZXIoKSkgfHwg
IXN0eWxlIHx8IHN0eWxlLT5kaXNwbGF5KCkgPT0gRGlzcGxheVR5cGU6Ok5vbmUpIHsKKyAgICAg
ICAgaWYgKFdlYWtQdHIgYmFja2Ryb3BSZW5kZXJlciA9IHJlbmRlcmVyLmJhY2tkcm9wUmVuZGVy
ZXIoKSkKKyAgICAgICAgICAgIG1fdXBkYXRlci5tX2J1aWxkZXIuZGVzdHJveSgqYmFja2Ryb3BS
ZW5kZXJlcik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBhdXRvIG5ld1N0eWxlID0g
UmVuZGVyU3R5bGU6OmNsb25lKCpzdHlsZSk7CisgICAgUmVuZGVyUHRyPFJlbmRlckJsb2NrRmxv
dz4gbmV3QmFja2Ryb3BSZW5kZXJlcjsKKyAgICBhdXRvIGJhY2tkcm9wUmVuZGVyZXIgPSByZW5k
ZXJlci5iYWNrZHJvcFJlbmRlcmVyKCk7CisgICAgaWYgKGJhY2tkcm9wUmVuZGVyZXIpCisgICAg
ICAgIGJhY2tkcm9wUmVuZGVyZXItPnNldFN0eWxlKFdURk1vdmUobmV3U3R5bGUpKTsKKyAgICBl
bHNlIHsKKyAgICAgICAgbmV3QmFja2Ryb3BSZW5kZXJlciA9IFdlYkNvcmU6OmNyZWF0ZVJlbmRl
cmVyPFJlbmRlckJsb2NrRmxvdz4ocmVuZGVyZXIuZG9jdW1lbnQoKSwgV1RGTW92ZShuZXdTdHls
ZSkpOworICAgICAgICBuZXdCYWNrZHJvcFJlbmRlcmVyLT5pbml0aWFsaXplU3R5bGUoKTsKKyAg
ICAgICAgYmFja2Ryb3BSZW5kZXJlciA9IG1ha2VXZWFrUHRyKG5ld0JhY2tkcm9wUmVuZGVyZXIu
Z2V0KCkpOworICAgICAgICByZW5kZXJlci5zZXRCYWNrZHJvcFJlbmRlcmVyKCpiYWNrZHJvcFJl
bmRlcmVyKTsKKyAgICB9CisKKyAgICAvLyBVcGRhdGUgb3IgYXR0YWNoIHRvIHJlbmRlcmVyIHBh
cmVudAorICAgIGF1dG8gY3VycmVudFBhcmVudCA9IG1ha2VXZWFrUHRyKGJhY2tkcm9wUmVuZGVy
ZXItPnBhcmVudCgpKTsKKyAgICBhdXRvIG5ld1BhcmVudCA9IG1ha2VXZWFrUHRyKHJlbmRlcmVy
LnBhcmVudCgpKTsKKworICAgIEFTU0VSVChuZXdQYXJlbnQsICJTaG91bGQgaGF2ZSBuZXcgcGFy
ZW50Iik7CisKKyAgICBpZiAobmV3UGFyZW50ID09IGN1cnJlbnRQYXJlbnQpCisgICAgICAgIHJl
dHVybjsKKworICAgIGlmIChjdXJyZW50UGFyZW50KQorICAgICAgICBtX3VwZGF0ZXIubV9idWls
ZGVyLmF0dGFjaCgqbmV3UGFyZW50LCBtX3VwZGF0ZXIubV9idWlsZGVyLmRldGFjaCgqY3VycmVu
dFBhcmVudCwgKmJhY2tkcm9wUmVuZGVyZXIsIFJlbmRlclRyZWVCdWlsZGVyOjpDYW5Db2xsYXBz
ZUFub255bW91c0Jsb2NrOjpObyksICZyZW5kZXJlcik7CisgICAgZWxzZQorICAgICAgICBtX3Vw
ZGF0ZXIubV9idWlsZGVyLmF0dGFjaCgqbmV3UGFyZW50LCBXVEZNb3ZlKG5ld0JhY2tkcm9wUmVu
ZGVyZXIpLCAmcmVuZGVyZXIpOworfQorCiBib29sIFJlbmRlclRyZWVVcGRhdGVyOjpHZW5lcmF0
ZWRDb250ZW50OjpuZWVkc1BzZXVkb0VsZW1lbnQoY29uc3QgU3R5bGU6OkVsZW1lbnRVcGRhdGUq
IHVwZGF0ZSkKIHsKICAgICBpZiAoIXVwZGF0ZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlVXBkYXRlckdlbmVyYXRlZENvbnRlbnQuaCBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlVXBkYXRlckdlbmVy
YXRlZENvbnRlbnQuaAppbmRleCAzNDg4YzAzYjA1YjU1NWMyN2QxN2FjMWY0YzdlMThlZGY1ZjFm
MTkzLi5mM2YwMTZkZDY4NzhjMjUxYzkxODQ5YTU4OTM0ODE5ZWZhN2Q4MGFmIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZVVwZGF0ZXJHZW5l
cmF0ZWRDb250ZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3VwZGF0aW5nL1Jl
bmRlclRyZWVVcGRhdGVyR2VuZXJhdGVkQ29udGVudC5oCkBAIC0zOCw2ICszOCw3IEBAIGNsYXNz
IFJlbmRlclRyZWVVcGRhdGVyOjpHZW5lcmF0ZWRDb250ZW50IHsKIHB1YmxpYzoKICAgICBHZW5l
cmF0ZWRDb250ZW50KFJlbmRlclRyZWVVcGRhdGVyJik7CiAKKyAgICB2b2lkIHVwZGF0ZUJhY2tk
cm9wUmVuZGVyZXIoUmVuZGVyRWxlbWVudCYpOwogICAgIHZvaWQgdXBkYXRlUHNldWRvRWxlbWVu
dChFbGVtZW50JiwgY29uc3QgU3R5bGU6OkVsZW1lbnRVcGRhdGVzJiwgUHNldWRvSWQpOwogICAg
IHZvaWQgdXBkYXRlUmVtYWluaW5nUXVvdGVzKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3N0eWxlL1N0eWxlVHJlZVJlc29sdmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0
eWxlVHJlZVJlc29sdmVyLmNwcAppbmRleCAwYzUyOGIxOWJjNmNjNzJiNjU5NTYyNTY5YmNkMTQy
NzdhY2M2NDQ1Li5hZjQ4ZmQzYjQ5OGMwMDE0ZGNlY2M4MzkzZDMyOTIwZmI4OGEyYTc3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVRyZWVSZXNvbHZlci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3BwCkBAIC0yNzUsMTYgKzI3
NSwxOCBAQCBFbGVtZW50VXBkYXRlcyBUcmVlUmVzb2x2ZXI6OnJlc29sdmVFbGVtZW50KEVsZW1l
bnQmIGVsZW1lbnQpCiAKIHN0ZDo6b3B0aW9uYWw8RWxlbWVudFVwZGF0ZT4gVHJlZVJlc29sdmVy
OjpyZXNvbHZlUHNldWRvU3R5bGUoRWxlbWVudCYgZWxlbWVudCwgY29uc3QgRWxlbWVudFVwZGF0
ZSYgZWxlbWVudFVwZGF0ZSwgUHNldWRvSWQgcHNldWRvSWQpCiB7CisgICAgQVNTRVJUKHBzZXVk
b0lkICE9IFBzZXVkb0lkOjpCYWNrZHJvcCwgIlRoaXMgbWV0aG9kIGRvZXMgbm90IGhhbmRsZSA6
OmJhY2tkcm9wIGN1cnJlbnRseSIpOworCiAgICAgaWYgKHBzZXVkb0lkID09IFBzZXVkb0lkOjpN
YXJrZXIgJiYgZWxlbWVudFVwZGF0ZS5zdHlsZS0+ZGlzcGxheSgpICE9IERpc3BsYXlUeXBlOjpM
aXN0SXRlbSkKICAgICAgICAgcmV0dXJuIHsgfTsKICAgICBpZiAoZWxlbWVudFVwZGF0ZS5zdHls
ZS0+ZGlzcGxheSgpID09IERpc3BsYXlUeXBlOjpOb25lKQogICAgICAgICByZXR1cm4geyB9Owog
ICAgIGlmICghZWxlbWVudFVwZGF0ZS5zdHlsZS0+aGFzUHNldWRvU3R5bGUocHNldWRvSWQpKQog
ICAgICAgICByZXR1cm4geyB9OwotICAgIAorCiAgICAgYXV0byYgcGFyZW50U3R5bGUgPSAqZWxl
bWVudFVwZGF0ZS5zdHlsZTsKICAgICBhdXRvKiBwYXJlbnRCb3hTdHlsZSA9IHBhcmVudEJveFN0
eWxlRm9yUHNldWRvKGVsZW1lbnRVcGRhdGUpOwotICAgIAorCiAgICAgYXV0byBwc2V1ZG9TdHls
ZSA9IHNjb3BlKCkucmVzb2x2ZXItPnBzZXVkb1N0eWxlRm9yRWxlbWVudChlbGVtZW50LCB7IHBz
ZXVkb0lkIH0sIHBhcmVudFN0eWxlLCBwYXJlbnRCb3hTdHlsZSwgJnNjb3BlKCkuc2VsZWN0b3JG
aWx0ZXIpOwogICAgIGlmICghcHNldWRvU3R5bGUpCiAgICAgICAgIHJldHVybiB7IH07CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Db250cm9sbGVycy9D
U1NNYW5hZ2VyLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQ29udHJv
bGxlcnMvQ1NTTWFuYWdlci5qcwppbmRleCAyZjYzYmJjNDk4OWI1YTE1ZTE0YTU1MWVjZWNkOTdi
N2UyNTI1M2E1Li5hZDA2MWJkMTY1Njc5YmY3Mzk0ZmM4N2RlOWVmY2M5NjgzNGY5ZTc5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Db250cm9sbGVycy9D
U1NNYW5hZ2VyLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0Nv
bnRyb2xsZXJzL0NTU01hbmFnZXIuanMKQEAgLTE1NSw2ICsxNTUsOCBAQCBXSS5DU1NNYW5hZ2Vy
ID0gY2xhc3MgQ1NTTWFuYWdlciBleHRlbmRzIFdJLk9iamVjdAogICAgICAgICAgICAgcmV0dXJu
IFdJLnVubG9jYWxpemVkU3RyaW5nKCI6OmFmdGVyIik7CiAgICAgICAgIGNhc2UgQ1NTTWFuYWdl
ci5Qc2V1ZG9TZWxlY3Rvck5hbWVzLlNlbGVjdGlvbjoKICAgICAgICAgICAgIHJldHVybiBXSS51
bmxvY2FsaXplZFN0cmluZygiOjpzZWxlY3Rpb24iKTsKKyAgICAgICAgY2FzZSBDU1NNYW5hZ2Vy
LlBzZXVkb1NlbGVjdG9yTmFtZXMuQmFja2Ryb3A6CisgICAgICAgICAgICByZXR1cm4gV0kudW5s
b2NhbGl6ZWRTdHJpbmcoIjo6YmFja2Ryb3AiKTsKICAgICAgICAgY2FzZSBDU1NNYW5hZ2VyLlBz
ZXVkb1NlbGVjdG9yTmFtZXMuU2Nyb2xsYmFyOgogICAgICAgICAgICAgcmV0dXJuIFdJLnVubG9j
YWxpemVkU3RyaW5nKCI6OnNjcm9sbGJhciIpOwogICAgICAgICBjYXNlIENTU01hbmFnZXIuUHNl
dWRvU2VsZWN0b3JOYW1lcy5TY3JvbGxiYXJUaHVtYjoKQEAgLTY4NCw2ICs2ODYsNyBAQCBXSS5D
U1NNYW5hZ2VyLkFwcGVhcmFuY2UgPSB7CiBXSS5DU1NNYW5hZ2VyLlBzZXVkb1NlbGVjdG9yTmFt
ZXMgPSB7CiAgICAgQWZ0ZXI6ICJhZnRlciIsCiAgICAgQmVmb3JlOiAiYmVmb3JlIiwKKyAgICBC
YWNrZHJvcDogImJhY2tkcm9wIiwKICAgICBGaXJzdExldHRlcjogImZpcnN0LWxldHRlciIsCiAg
ICAgRmlyc3RMaW5lOiAiZmlyc3QtbGluZSIsCiAgICAgSGlnaGxpZ2h0OiAiaGlnaGxpZ2h0IiwK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAyYjAyMzIwZmIyZGEwMmRhOTRhNDRkNDNiNGMwY2YxN2EwYjdmNzdiLi5hYmVkNDkz
ZWMzMDJjMTEwYWViODZkNjU1M2I3ZTc2YjY4MjM4OTVkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMjEtMDgtMTIgIFRpbSBOZ3V5ZW4gIDxudGltQGFwcGxlLmNvbT4KKworICAgICAgICBJbXBs
ZW1lbnQgOjpiYWNrZHJvcCBwc2V1ZG8gZWxlbWVudAorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI3ODAxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQW50
dGkgS29pdmlzdG8uCisKKyAgICAgICAgVGhpcyBhZGRzIFVBIHN0eWxlcywgUmVuZGVyVHJlZUJ1
aWxkZXIgc3VwcG9ydCBhbmQgV2ViSW5zcGVjdG9yIHN1cHBvcnQgZm9yIDo6YmFja2Ryb3AuCisg
ICAgICAgIFNvbWUgaW1wb3J0ZWQgYmxpbmsgdGVzdHMgbm93IHN0YXJ0IHBhc3NpbmcsIHNvbWUg
c3RpbGwgbmVlZCBwcm9wZXIgdG9wIGxheWVyIHN1cHBvcnQuCisKKyAgICAgICAgKiBUZXN0RXhw
ZWN0YXRpb25zOgorCiAyMDIxLTA4LTExICBBeXVtaSBLb2ppbWEgIDxheXVtaV9rb2ppbWFAYXBw
bGUuY29tPgogCiAgICAgICAgIFsgV2luIEVXUyBdIGZhc3QvZm9ybXMvaW5wdXQtYmFzZWxpbmUu
aHRtbCBpcyBmbGFreSBjcmFzaGluZy4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4
IDlkMTIzZjMyZTAxMzEwYWUwY2MyZjA0ZjVjMDJiMmQzZTJkZDhjNjUuLjAxYTc4ODA4NTViYjkx
OWJkYmI3YzQyOWE0NjI3ODQ1NGMzMGVhYmIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE1IEBACisyMDIxLTA4LTEyICBUaW0gTmd1eWVuICA8bnRpbUBhcHBsZS5j
b20+CisKKyAgICAgICAgSW1wbGVtZW50IDo6YmFja2Ryb3AgcHNldWRvIGVsZW1lbnQKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNzgwMQorCisgICAg
ICAgIFJldmlld2VkIGJ5IEFudHRpIEtvaXZpc3RvLgorCisgICAgICAgIFRoaXMgYWRkcyBVQSBz
dHlsZXMsIFJlbmRlclRyZWVCdWlsZGVyIHN1cHBvcnQgYW5kIFdlYkluc3BlY3RvciBzdXBwb3J0
IGZvciA6OmJhY2tkcm9wLgorICAgICAgICBTb21lIGltcG9ydGVkIGJsaW5rIHRlc3RzIG5vdyBz
dGFydCBwYXNzaW5nLCBzb21lIHN0aWxsIG5lZWQgcHJvcGVyIHRvcCBsYXllciBzdXBwb3J0Lgor
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdmFsdWVzL2NoLWVtcHR5LXBz
ZXVkby1yZWNhbGMtb24tZm9udC1sb2FkLWV4cGVjdGVkLnR4dDoKKwogMjAyMS0wOC0xMSAgQ2hy
aXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIEhUTUxNZXRhRWxlbWVudCBo
dHRwLWVxdWl2IHNob3VsZCBub3QgYmUgcHJvY2Vzc2VkIGluIHNoYWRvdyB0cmVlcwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL1Rlc3RFeHBl
Y3RhdGlvbnMKaW5kZXggMzE1NjI0OTc0NjJlZGVhYzQyZTcwNGVhOTA3MzAyODdlN2ZhNTM2NS4u
OThlMjNjYThhNjI1MGNmY2I2OTExM2UyYWY2Y2EyZDk4OWM5MmFlNCAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRp
b25zCkBAIC0yMzY5LDE3ICsyMzY5LDEwIEBAIGxvYWRlci9zdGF0ZW9iamVjdHMvcmVwbGFjZXN0
YXRlLXNpemUuaHRtbCBbIFNsb3cgXQogaW1wb3J0ZWQvYmxpbmsvZmFzdC9tdWx0aWNvbC9vdXRs
aW5lcy1hdC1jb2x1bW4tYm91bmRhcmllcy5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiBmYXN0
L211bHRpY29sL211bHRpY29sLXdpdGgtY2hpbGQtcmVuZGVyTGF5ZXItZm9yLWlucHV0Lmh0bWwg
WyBJbWFnZU9ubHlGYWlsdXJlIF0KIAotIyA6OmJhY2tkcm9wCi13ZWJraXQub3JnL2IvMjI3ODAx
IGltcG9ydGVkL2JsaW5rL2RpYWxvZy9iYWNrZHJvcC1kZXNjZW5kYW50LXNlbGVjdG9yLmh0bWwg
WyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8yMjc4MDEgaW1wb3J0ZWQvYmxpbmsv
ZGlhbG9nL2JhY2tkcm9wLWRvZXMtbm90LWluaGVyaXQuaHRtbCBbIEltYWdlT25seUZhaWx1cmUg
XQotd2Via2l0Lm9yZy9iLzIyNzgwMSBpbXBvcnRlZC9ibGluay9kaWFsb2cvYmFja2Ryb3AtZHlu
YW1pYy1zdHlsZS1jaGFuZ2UuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9i
LzIyNzgwMSBpbXBvcnRlZC9ibGluay9kaWFsb2cvYmFja2Ryb3AtaW4tZmxvdy5odG1sIFsgSW1h
Z2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMjI3ODAxIGltcG9ydGVkL2JsaW5rL2RpYWxv
Zy9iYWNrZHJvcC1zdGFja2luZy1vcmRlci5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCi0KICMg
VG9wIGxheWVyIHRlc3RzCit3ZWJraXQub3JnL2IvODQ3OTYgaW1wb3J0ZWQvYmxpbmsvZGlhbG9n
L2JhY2tkcm9wLWluLWZsb3cuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQord2Via2l0Lm9yZy9i
Lzg0Nzk2IGltcG9ydGVkL2JsaW5rL2RpYWxvZy9iYWNrZHJvcC1zdGFja2luZy1vcmRlci5odG1s
IFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvODQ3OTYgaW1wb3J0ZWQvYmxpbmsv
ZGlhbG9nL2RvbnQtc2hhcmUtc3R5bGUtdG8tdG9wLWxheWVyLmh0bWwgWyBJbWFnZU9ubHlGYWls
dXJlIF0KLXdlYmtpdC5vcmcvYi84NDc5NiBpbXBvcnRlZC9ibGluay9kaWFsb2cvbW9kYWwtZGlh
bG9nLWJhY2tkcm9wLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi84NDc5
NiBpbXBvcnRlZC9ibGluay9kaWFsb2cvbW9kYWwtZGlhbG9nLWdlbmVyYXRlZC1jb250ZW50Lmh0
bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi84NDc5NiBpbXBvcnRlZC9ibGlu
ay9kaWFsb2cvbW9kYWwtZGlhbG9nLWluLXJlcGxhY2VkLXJlbmRlcmVyLmh0bWwgWyBJbWFnZU9u
bHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi84NDc5NiBpbXBvcnRlZC9ibGluay9kaWFsb2cvbW9k
YWwtZGlhbG9nLWluLXRhYmxlLWNvbHVtbi5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiB3ZWJr
aXQub3JnL2IvODQ3OTYgaW1wb3J0ZWQvYmxpbmsvZGlhbG9nL3JlbW92ZWQtZWxlbWVudC1pcy1y
ZW1vdmVkLWZyb20tdG9wLWxheWVyLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy12
YWx1ZXMvY2gtZW1wdHktcHNldWRvLXJlY2FsYy1vbi1mb250LWxvYWQtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXZhbHVl
cy9jaC1lbXB0eS1wc2V1ZG8tcmVjYWxjLW9uLWZvbnQtbG9hZC1leHBlY3RlZC50eHQKaW5kZXgg
NjljN2VhOTg0N2M2OTlmMjVjNTE4YTZiMTc3YWUyYWM1YmQ1ZmM3Yi4uMDE2NjFmYTkxZjU5MzY3
MzJkMzU5ZjI1NzViODAxOTJiNDBjN2FlOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXZhbHVlcy9jaC1lbXB0eS1wc2V1ZG8t
cmVjYWxjLW9uLWZvbnQtbG9hZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXZhbHVlcy9jaC1lbXB0eS1wc2V1ZG8t
cmVjYWxjLW9uLWZvbnQtbG9hZC1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZBSUwg
Y2ggaW4gcHNldWRvLWVsZW1lbnQgOjpiZWZvcmUgc2hvdWxkIGJlIHJlY2FsY3VsYXRlZCBhZnRl
ciBsb2FkaW5nIGEgd2ViIGZvbnQgYXNzZXJ0X2xlc3NfdGhhbjogZXhwZWN0ZWQgYSBudW1iZXIg
bGVzcyB0aGFuIDI0IGJ1dCBnb3QgTmFOCi1GQUlMIGNoIGluIHBzZXVkby1lbGVtZW50IDo6YWZ0
ZXIgc2hvdWxkIGJlIHJlY2FsY3VsYXRlZCBhZnRlciBsb2FkaW5nIGEgd2ViIGZvbnQgYXNzZXJ0
X2xlc3NfdGhhbjogZXhwZWN0ZWQgYSBudW1iZXIgbGVzcyB0aGFuIDI0IGJ1dCBnb3QgTmFOCi1G
QUlMIGNoIGluIHBzZXVkby1lbGVtZW50IDo6YmFja2Ryb3Agc2hvdWxkIGJlIHJlY2FsY3VsYXRl
ZCBhZnRlciBsb2FkaW5nIGEgd2ViIGZvbnQgYXNzZXJ0X2xlc3NfdGhhbjogZXhwZWN0ZWQgYSBu
dW1iZXIgbGVzcyB0aGFuIDI0IGJ1dCBnb3QgTmFOCitQQVNTIGNoIGluIHBzZXVkby1lbGVtZW50
IDo6YmVmb3JlIHNob3VsZCBiZSByZWNhbGN1bGF0ZWQgYWZ0ZXIgbG9hZGluZyBhIHdlYiBmb250
CitQQVNTIGNoIGluIHBzZXVkby1lbGVtZW50IDo6YWZ0ZXIgc2hvdWxkIGJlIHJlY2FsY3VsYXRl
ZCBhZnRlciBsb2FkaW5nIGEgd2ViIGZvbnQKK1BBU1MgY2ggaW4gcHNldWRvLWVsZW1lbnQgOjpi
YWNrZHJvcCBzaG91bGQgYmUgcmVjYWxjdWxhdGVkIGFmdGVyIGxvYWRpbmcgYSB3ZWIgZm9udAog
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>435481</attachid>
            <date>2021-08-13 07:19:40 -0700</date>
            <delta_ts>2021-08-19 02:02:13 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227801-20210813161939.patch</filename>
            <type>text/plain</type>
            <size>22317</size>
            <attacher name="Tim Nguyen (:ntim)">ntim</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgxMDE0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBi
OTgzMGI2OTNmYzY4NzAwYTFjNDUxZWE5ZTU3ZTIyYTMzZWZiYWIyLi42YmQ4YzFkMWU5NjkyNWVl
YWE0Y2IzYzdkMjk0ZWUxMTlhMTUwYzExIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNSBAQAorMjAyMS0wOC0xMiAgVGltIE5ndXllbiAgPG50aW1AYXBwbGUuY29tPgorCisg
ICAgICAgIEltcGxlbWVudCA6OmJhY2tkcm9wIHBzZXVkbyBlbGVtZW50CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjc4MDEKKworICAgICAgICBSZXZp
ZXdlZCBieSBBbnR0aSBLb2l2aXN0by4KKworICAgICAgICBUaGlzIGFkZHMgVUEgc3R5bGVzLCBS
ZW5kZXJUcmVlQnVpbGRlciBzdXBwb3J0IGFuZCBXZWJJbnNwZWN0b3Igc3VwcG9ydCBmb3IgOjpi
YWNrZHJvcC4KKyAgICAgICAgU29tZSBpbXBvcnRlZCBibGluayB0ZXN0cyBub3cgc3RhcnQgcGFz
c2luZywgc29tZSBzdGlsbCBuZWVkIHByb3BlciB0b3AgbGF5ZXIgc3VwcG9ydC4KKworICAgICAg
ICAqIGluc3BlY3Rvci9wcm90b2NvbC9DU1MuanNvbjoKKwogMjAyMS0wOC0xMiAgTWFyayBMYW0g
IDxtYXJrLmxhbUBhcHBsZS5jb20+CiAKICAgICAgICAgUmVmYWN0b3Igc29tZSBBUk02NEVIYXNo
IGNvZGUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cKaW5kZXggY2U3NWIyODY4MGYxYTE5YmJlOGM2ZWM5ODdmMjRkMzM0MWNl
ODc2ZC4uN2U3MTcyMmVlNTAzNjUzNmFhMjI5NTM5MThlNDdlMmJmOTVhMDhkOSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDQwIEBACisyMDIxLTA4LTEyICBUaW0gTmd1eWVuICA8bnRpbUBhcHBsZS5j
b20+CisKKyAgICAgICAgSW1wbGVtZW50IDo6YmFja2Ryb3AgcHNldWRvIGVsZW1lbnQKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNzgwMQorCisgICAg
ICAgIFJldmlld2VkIGJ5IEFudHRpIEtvaXZpc3RvLgorCisgICAgICAgIFRoaXMgYWRkcyBVQSBz
dHlsZXMsIFJlbmRlclRyZWVCdWlsZGVyIHN1cHBvcnQgYW5kIFdlYkluc3BlY3RvciBzdXBwb3J0
IGZvciA6OmJhY2tkcm9wLgorICAgICAgICBTb21lIGltcG9ydGVkIGJsaW5rIHRlc3RzIG5vdyBz
dGFydCBwYXNzaW5nLCBzb21lIHN0aWxsIG5lZWQgcHJvcGVyIHRvcCBsYXllciBzdXBwb3J0Lgor
CisgICAgICAgICogY3NzL0NTU1NlbGVjdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1Nl
bGVjdG9yOjpwc2V1ZG9JZCk6CisgICAgICAgICogY3NzL0NTU1NlbGVjdG9yLmg6CisgICAgICAg
ICogY3NzL1NlbGVjdG9yUHNldWRvRWxlbWVudFR5cGVNYXAuaW46CisgICAgICAgICogY3NzL2Rp
YWxvZy5jc3M6CisgICAgICAgIChkaWFsb2c6OmJhY2tkcm9wKToKKyAgICAgICAgKDo6YmFja2Ry
b3ApOgorICAgICAgICAqIGluc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yQ1NTQWdlbnQuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6cHJvdG9jb2xWYWx1ZUZvclBzZXVkb0lkKToKKyAgICAgICAgKiBy
ZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJFbGVt
ZW50OjpiYWNrZHJvcFJlbmRlcmVyIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckVs
ZW1lbnQ6OnNldEJhY2tkcm9wUmVuZGVyZXIpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJF
bGVtZW50Lmg6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oOgorICAgICAgICAq
IHJlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpvcGVyYXRvcjw8KToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVD
b25zdGFudHMuaDoKKyAgICAgICAgKiByZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxk
ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVHJlZUJ1aWxkZXI6OmRlc3Ryb3lBbmRD
bGVhblVwQW5vbnltb3VzV3JhcHBlcnMpOgorICAgICAgICAqIHJlbmRlcmluZy91cGRhdGluZy9S
ZW5kZXJUcmVlVXBkYXRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUcmVlVXBkYXRl
cjo6dXBkYXRlQWZ0ZXJEZXNjZW5kYW50cyk6CisgICAgICAgICogcmVuZGVyaW5nL3VwZGF0aW5n
L1JlbmRlclRyZWVVcGRhdGVyR2VuZXJhdGVkQ29udGVudC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpSZW5kZXJUcmVlVXBkYXRlcjo6R2VuZXJhdGVkQ29udGVudDo6dXBkYXRlQmFja2Ryb3BSZW5k
ZXJlcik6CisgICAgICAgICogcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRyZWVVcGRhdGVyR2Vu
ZXJhdGVkQ29udGVudC5oOgorICAgICAgICAqIHN0eWxlL1N0eWxlVHJlZVJlc29sdmVyLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpUcmVlUmVzb2x2ZXI6OnJlc29sdmVQc2V1ZG9TdHls
ZSk6CisKIDIwMjEtMDgtMTMgIFRpbSBOZ3V5ZW4gIDxudGltQGFwcGxlLmNvbT4KIAogICAgICAg
ICBDaGVjayBmb3IgZGlhbG9nIGV4aXN0ZW5jZSBpbiB0b3AgbGF5ZXIgaW4gSFRNTERpYWxvZ0Vs
ZW1lbnQ6OnNob3dNb2RhbCAmIGNsb3NlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZwppbmRleCA1MTI0
MWYzZGNlNzZmMDUwNjcxNjhhMzc3MWM4YWE0OTRhMTk5Nzg5Li5mMWYxMjU1MjdjMDVlMDI3ZWQ5
OTBlZTljY2I1ODMwZDcwODVkOTAyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkv
Q2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwxNiBAQAorMjAyMS0wOC0xMiAgVGltIE5ndXllbiAgPG50aW1AYXBwbGUuY29tPgorCisgICAg
ICAgIEltcGxlbWVudCA6OmJhY2tkcm9wIHBzZXVkbyBlbGVtZW50CisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjc4MDEKKworICAgICAgICBSZXZpZXdl
ZCBieSBBbnR0aSBLb2l2aXN0by4KKworICAgICAgICBUaGlzIGFkZHMgVUEgc3R5bGVzLCBSZW5k
ZXJUcmVlQnVpbGRlciBzdXBwb3J0IGFuZCBXZWJJbnNwZWN0b3Igc3VwcG9ydCBmb3IgOjpiYWNr
ZHJvcC4KKyAgICAgICAgU29tZSBpbXBvcnRlZCBibGluayB0ZXN0cyBub3cgc3RhcnQgcGFzc2lu
Zywgc29tZSBzdGlsbCBuZWVkIHByb3BlciB0b3AgbGF5ZXIgc3VwcG9ydC4KKworICAgICAgICAq
IFVzZXJJbnRlcmZhY2UvQ29udHJvbGxlcnMvQ1NTTWFuYWdlci5qczoKKyAgICAgICAgKFdJLkNT
U01hbmFnZXIuZGlzcGxheU5hbWVGb3JQc2V1ZG9JZCk6CisKIDIwMjEtMDgtMTIgIFBhdHJpY2sg
QW5nbGUgIDxwYW5nbGVAYXBwbGUuY29tPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IEFkZGlu
ZyBleGVjdXRpb24gY29udGV4dHMgYWZ0ZXIgcGFnZSBsb2FkIGRvZXNuJ3Qgc2hvdyBhIGhpZGRl
biBleGVjdXRpb24gc2VsZWN0b3IKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9p
bnNwZWN0b3IvcHJvdG9jb2wvQ1NTLmpzb24gYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVj
dG9yL3Byb3RvY29sL0NTUy5qc29uCmluZGV4IGM5ZWI1NzZiZDdjMjU5MzRhYTU5Y2JmMzJlMWNj
Y2Y5MzM5MTdjZTguLjRjNjJkZTkwYTE1MGM2MjNkYzVhMDc0NTJhYTRiNDM3OWIyODQ2ZjQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvQ1NTLmpz
b24KKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9DU1MuanNv
bgpAQCAtNDMsNiArNDMsNyBAQAogICAgICAgICAgICAgICAgICJiZWZvcmUiLAogICAgICAgICAg
ICAgICAgICJhZnRlciIsCiAgICAgICAgICAgICAgICAgInNlbGVjdGlvbiIsCisgICAgICAgICAg
ICAgICAgImJhY2tkcm9wIiwKICAgICAgICAgICAgICAgICAic2Nyb2xsYmFyIiwKICAgICAgICAg
ICAgICAgICAic2Nyb2xsYmFyLXRodW1iIiwKICAgICAgICAgICAgICAgICAic2Nyb2xsYmFyLWJ1
dHRvbiIsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2VsZWN0b3IuY3BwIGIv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1NlbGVjdG9yLmNwcAppbmRleCBjMTVjNjI5MmVmOGI1MjI0
MjE5MWViYzRjNDE1MDUyZTVlMjI0YTRhLi42ODUwZTg0ZjhiZjBjNTQ4MTE3NDYxMjUwNjhlMDAz
ODAyZTkyZDU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2VsZWN0b3IuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWxlY3Rvci5jcHAKQEAgLTIzMiw2ICsyMzIs
OCBAQCBQc2V1ZG9JZCBDU1NTZWxlY3Rvcjo6cHNldWRvSWQoUHNldWRvRWxlbWVudFR5cGUgdHlw
ZSkKICAgICAgICAgcmV0dXJuIFBzZXVkb0lkOjpIaWdobGlnaHQ7CiAgICAgY2FzZSBQc2V1ZG9F
bGVtZW50TWFya2VyOgogICAgICAgICByZXR1cm4gUHNldWRvSWQ6Ok1hcmtlcjsKKyAgICBjYXNl
IFBzZXVkb0VsZW1lbnRCYWNrZHJvcDoKKyAgICAgICAgcmV0dXJuIFBzZXVkb0lkOjpCYWNrZHJv
cDsKICAgICBjYXNlIFBzZXVkb0VsZW1lbnRCZWZvcmU6CiAgICAgICAgIHJldHVybiBQc2V1ZG9J
ZDo6QmVmb3JlOwogICAgIGNhc2UgUHNldWRvRWxlbWVudEFmdGVyOgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvY3NzL0NTU1NlbGVjdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2Vs
ZWN0b3IuaAppbmRleCA1YjRiOWYxNWYzMzRkMjRiMmNiMmMxYmJlMDk2NGQwZjdkZTgwYTAzLi5i
YzgzYWZkOTE3NDBhMTEyMGYzMWQ4NDY3OWM5ZDEyNmM3Y2MxZjk1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTU2VsZWN0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
U2VsZWN0b3IuaApAQCAtMTgwLDYgKzE4MCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAg
ICAgZW51bSBQc2V1ZG9FbGVtZW50VHlwZSB7CiAgICAgICAgICAgICBQc2V1ZG9FbGVtZW50VW5r
bm93biA9IDAsCiAgICAgICAgICAgICBQc2V1ZG9FbGVtZW50QWZ0ZXIsCisgICAgICAgICAgICBQ
c2V1ZG9FbGVtZW50QmFja2Ryb3AsCiAgICAgICAgICAgICBQc2V1ZG9FbGVtZW50QmVmb3JlLAog
I2lmIEVOQUJMRShWSURFTykKICAgICAgICAgICAgIFBzZXVkb0VsZW1lbnRDdWUsCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JQc2V1ZG9FbGVtZW50VHlwZU1hcC5pbiBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9TZWxlY3RvclBzZXVkb0VsZW1lbnRUeXBlTWFwLmluCmluZGV4
IDBiNWVmYzY2ODRjYjU2ZmVlZTA1OTJlNzNmODZjNjJlMGIyYzJjZTIuLmUxZTUxOTQ4ZmUyMjc2
M2ExN2RlMTg4OTRjZDQ3OThhOTcwYTIwNDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9TZWxlY3RvclBzZXVkb0VsZW1lbnRUeXBlTWFwLmluCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9TZWxlY3RvclBzZXVkb0VsZW1lbnRUeXBlTWFwLmluCkBAIC0xLDQgKzEsNSBAQAogYWZ0ZXIK
K2JhY2tkcm9wCiBiZWZvcmUKICNpZiBFTkFCTEUoVklERU8pCiBjdWUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9kaWFsb2cuY3NzIGIvU291cmNlL1dlYkNvcmUvY3NzL2RpYWxvZy5j
c3MKaW5kZXggYjYxZGM5ZDc2ZjIwYmMwNGM0MDQ2NTZiMTJjNGM4YWRhY2I5MDk2Ni4uMWU3ZTVh
MTUyMGYxMzJiNjkwNDZkOTRlMmUyYTFkZjMwNDUzYjA1YSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvY3NzL2RpYWxvZy5jc3MKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL2RpYWxvZy5jc3MK
QEAgLTI0LDMgKzI0LDE2IEBAIGRpYWxvZzotaW50ZXJuYWwtbW9kYWwtZGlhbG9nIHsKICAgICBt
YXgtd2lkdGg6IGNhbGMoMTAwJSAtIDZweCAtIDJlbSk7CiAgICAgbWF4LWhlaWdodDogY2FsYygx
MDAlIC0gNnB4IC0gMmVtKTsKIH0KKworZGlhbG9nOjpiYWNrZHJvcCB7CisgICAgYmFja2dyb3Vu
ZDogcmdiYSgwLCAwLCAwLCAwLjEpOworfQorCis6OmJhY2tkcm9wIHsKKyAgICBkaXNwbGF5OiBi
bG9jazsKKyAgICBwb3NpdGlvbjogZml4ZWQ7CisgICAgdG9wOiAwOworICAgIGxlZnQ6IDA7Cisg
ICAgcmlnaHQ6IDA7CisgICAgYm90dG9tOiAwOworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JDU1NBZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckNTU0FnZW50LmNwcAppbmRleCA2NWE4MTMxMjlk
NjMxNzM5YWIwNTYwNDFmOTc1MGJkMjg4OGUyYzQ4Li4zZWMxNGY2NzFlZDg2NTUxYzRjYzlkMWVk
Yjg2YzdhZmEwMGNmMjVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdl
bnRzL0luc3BlY3RvckNTU0FnZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
YWdlbnRzL0luc3BlY3RvckNTU0FnZW50LmNwcApAQCAtNDQ5LDYgKzQ0OSw4IEBAIHN0YXRpYyBz
dGQ6Om9wdGlvbmFsPFByb3RvY29sOjpDU1M6OlBzZXVkb0lkPiBwcm90b2NvbFZhbHVlRm9yUHNl
dWRvSWQoUHNldWRvSWQKICAgICAgICAgcmV0dXJuIFByb3RvY29sOjpDU1M6OlBzZXVkb0lkOjpG
aXJzdExldHRlcjsKICAgICBjYXNlIFBzZXVkb0lkOjpNYXJrZXI6CiAgICAgICAgIHJldHVybiBQ
cm90b2NvbDo6Q1NTOjpQc2V1ZG9JZDo6TWFya2VyOworICAgIGNhc2UgUHNldWRvSWQ6OkJhY2tk
cm9wOgorICAgICAgICByZXR1cm4gUHJvdG9jb2w6OkNTUzo6UHNldWRvSWQ6OkJhY2tkcm9wOwog
ICAgIGNhc2UgUHNldWRvSWQ6OkJlZm9yZToKICAgICAgICAgcmV0dXJuIFByb3RvY29sOjpDU1M6
OlBzZXVkb0lkOjpCZWZvcmU7CiAgICAgY2FzZSBQc2V1ZG9JZDo6QWZ0ZXI6CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5jcHAKaW5kZXggZjg3ZDA1ZjM5OWU4NDkwOGI1
OTk4ZjVjOWY5NTZjOWFkNWNjMmYxNy4uNmZmODMyNmEyNmVkZmNkZjg2MGJmY2U0YWNkODgyY2Nk
YmE1NTFkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVsZW1l
bnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbGVtZW50LmNwcApA
QCAtMjM3NSw0ICsyMzc1LDE0IEBAIHN0ZDo6dW5pcXVlX3B0cjxSZW5kZXJTdHlsZT4gUmVuZGVy
RWxlbWVudDo6YW5pbWF0ZWRTdHlsZSgpCiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAorV2Vha1B0
cjxSZW5kZXJCbG9ja0Zsb3c+IFJlbmRlckVsZW1lbnQ6OmJhY2tkcm9wUmVuZGVyZXIoKSBjb25z
dAoreworICAgIHJldHVybiBoYXNSYXJlRGF0YSgpID8gcmFyZURhdGEoKS5iYWNrZHJvcFJlbmRl
cmVyIDogbnVsbHB0cjsKK30KKwordm9pZCBSZW5kZXJFbGVtZW50OjpzZXRCYWNrZHJvcFJlbmRl
cmVyKFJlbmRlckJsb2NrRmxvdyYgcmVuZGVyZXIpCit7CisgICAgZW5zdXJlUmFyZURhdGEoKS5i
YWNrZHJvcFJlbmRlcmVyID0gbWFrZVdlYWtQdHIocmVuZGVyZXIpOworfQorCiB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5oIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlckVsZW1lbnQuaAppbmRleCAyMzc3YmE5NzJjNGFjOTVjYzhm
NzhkZDMyZGRlODE5NDljNDdmZTI1Li5hNjU1N2NkNDIwYzI4NDRjN2I0NTU2ODU3YjY5NzRhMzJh
NmMxMjE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVu
dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbGVtZW50LmgKQEAgLTI1
Nyw2ICsyNTcsOSBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHN1c3BlbmRBbmltYXRpb25z
KE1vbm90b25pY1RpbWUgPSBNb25vdG9uaWNUaW1lKCkpIHsgfQogICAgIHN0ZDo6dW5pcXVlX3B0
cjxSZW5kZXJTdHlsZT4gYW5pbWF0ZWRTdHlsZSgpOwogCisgICAgV2Vha1B0cjxSZW5kZXJCbG9j
a0Zsb3c+IGJhY2tkcm9wUmVuZGVyZXIoKSBjb25zdDsKKyAgICB2b2lkIHNldEJhY2tkcm9wUmVu
ZGVyZXIoUmVuZGVyQmxvY2tGbG93Jik7CisKIHByb3RlY3RlZDoKICAgICBlbnVtIEJhc2VUeXBl
RmxhZyB7CiAgICAgICAgIFJlbmRlckxheWVyTW9kZWxPYmplY3RGbGFnICA9IDEgPDwgMCwKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuaCBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuaAppbmRleCAyZmQ5Njg3OTAyMmE2YTNi
OGFjYzMxNmFmMWUxNTA0YTYyMzI3NGU3Li41NTY3ZTRkYzM1MWU1NGYzODE1MjljYTYwMDBjYzFi
OTQ4NWNjMzQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2Jq
ZWN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oCkBAIC01
OSw2ICs1OSw3IEBAIGNsYXNzIFBvc2l0aW9uOwogY2xhc3MgUmVuZGVyQm94TW9kZWxPYmplY3Q7
CiBjbGFzcyBSZW5kZXJJbmxpbmU7CiBjbGFzcyBSZW5kZXJCbG9jazsKK2NsYXNzIFJlbmRlckJs
b2NrRmxvdzsKIGNsYXNzIFJlbmRlckVsZW1lbnQ7CiBjbGFzcyBSZW5kZXJGcmFnbWVudGVkRmxv
dzsKIGNsYXNzIFJlbmRlckdlb21ldHJ5TWFwOwpAQCAtOTM4LDYgKzkzOSw3IEBAIHByaXZhdGU6
CiAKICAgICAgICAgLy8gRnJvbSBSZW5kZXJFbGVtZW50CiAgICAgICAgIHN0ZDo6dW5pcXVlX3B0
cjxSZW5kZXJTdHlsZT4gY2FjaGVkRmlyc3RMaW5lU3R5bGU7CisgICAgICAgIFdlYWtQdHI8UmVu
ZGVyQmxvY2tGbG93PiBiYWNrZHJvcFJlbmRlcmVyOwogICAgIH07CiAgICAgCiAgICAgY29uc3Qg
UmVuZGVyT2JqZWN0OjpSZW5kZXJPYmplY3RSYXJlRGF0YSYgcmFyZURhdGEoKSBjb25zdDsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0
YW50cy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25z
dGFudHMuY3BwCmluZGV4IDQ2YTU5MmNiZDRiMGRmYmI3NzAwNWIwZTg1ZGY5Mzk2NjE0MzgyZWEu
LjVlZDEwM2M3NTJjMDE5MDcxODNkZTkzOTU0NTQ2MmUzOTIzZDgyM2UgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNw
cApAQCAtODg3LDYgKzg4Nyw3IEBAIFRleHRTdHJlYW0mIG9wZXJhdG9yPDwoVGV4dFN0cmVhbSYg
dHMsIFBzZXVkb0lkIHBzZXVkb0lkKQogICAgIGNhc2UgUHNldWRvSWQ6OkZpcnN0TGV0dGVyOiB0
cyA8PCAiZmlyc3QtbGV0dGVyIjsgYnJlYWs7CiAgICAgY2FzZSBQc2V1ZG9JZDo6SGlnaGxpZ2h0
OiB0cyA8PCAiaGlnaGxpZ2h0IjsgYnJlYWs7CiAgICAgY2FzZSBQc2V1ZG9JZDo6TWFya2VyOiB0
cyA8PCAibWFya2VyIjsgYnJlYWs7CisgICAgY2FzZSBQc2V1ZG9JZDo6QmFja2Ryb3A6IHRzIDw8
ICJiYWNrZHJvcCI7IGJyZWFrOwogICAgIGNhc2UgUHNldWRvSWQ6OkJlZm9yZTogdHMgPDwgImJl
Zm9yZSI7IGJyZWFrOwogICAgIGNhc2UgUHNldWRvSWQ6OkFmdGVyOiB0cyA8PCAiYWZ0ZXIiOyBi
cmVhazsKICAgICBjYXNlIFBzZXVkb0lkOjpTZWxlY3Rpb246IHRzIDw8ICJzZWxlY3Rpb24iOyBi
cmVhazsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJT
dHlsZUNvbnN0YW50cy5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0
eWxlQ29uc3RhbnRzLmgKaW5kZXggODM5YmRjMjBhYmY5NjEyYTMxNzExZTFjMzA5MGU1MjRjNTc3
ODQxMS4uNzNkNGI5ZDU5YWNmZWZjMWU2M2UxYTk0OGU2YmNjZTBmMTM4NzA2MyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRz
LmgKQEAgLTk1LDYgKzk1LDcgQEAgZW51bSBjbGFzcyBQc2V1ZG9JZCA6IHVpbnQxNl90IHsKICAg
ICBCZWZvcmUsCiAgICAgQWZ0ZXIsCiAgICAgU2VsZWN0aW9uLAorICAgIEJhY2tkcm9wLAogICAg
IFNjcm9sbGJhciwKIAogICAgIC8vIEludGVybmFsOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRyZWVCdWlsZGVyLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlQnVpbGRlci5jcHAKaW5kZXggZWI2Njhi
NGJkNjM4NjYzMDk5NGUyNmFkZDJkMWU2NWM4Mzk0OTk5Zi4uNjYyN2VjMWViZTYyMjE5MTcyNzJh
ZjgxOGI4ZjFlNmUzZTI5MjkxZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3VwZGF0aW5nL1JlbmRlclRyZWVCdWlsZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXIuY3BwCkBAIC04MDcsNiArODA3LDEyIEBA
IHZvaWQgUmVuZGVyVHJlZUJ1aWxkZXI6OmRlc3Ryb3lBbmRDbGVhblVwQW5vbnltb3VzV3JhcHBl
cnMoUmVuZGVyT2JqZWN0JiByZW5kZXJlCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKKyAgICAv
LyBBbHNvIGRlc3Ryb3kgOjpiYWNrZHJvcCBhbG9uZyB3aXRoIGVsZW1lbnQgaWYgdGhlcmUgaXMg
b25lCisgICAgaWYgKGlzPFJlbmRlckVsZW1lbnQ+KHJlbmRlcmVyVG9EZXN0cm95KSkgeworICAg
ICAgICBpZiAoYXV0byBiYWNrZHJvcFJlbmRlcmVyID0gZG93bmNhc3Q8UmVuZGVyRWxlbWVudD4o
cmVuZGVyZXJUb0Rlc3Ryb3kpLmJhY2tkcm9wUmVuZGVyZXIoKSkKKyAgICAgICAgICAgIGRlc3Ry
b3koKmJhY2tkcm9wUmVuZGVyZXIpOworICAgIH0KKwogICAgIGF1dG8gaXNBbm9ueW1vdXNBbmRT
YWZlVG9EZWxldGUgPSBbXSAoY29uc3QgYXV0byYgcmVuZGVyZXIpIHsKICAgICAgICAgcmV0dXJu
IHJlbmRlcmVyLmlzQW5vbnltb3VzKCkgJiYgIXJlbmRlcmVyLmlzUmVuZGVyVmlldygpICYmICFy
ZW5kZXJlci5pc1JlbmRlckZyYWdtZW50ZWRGbG93KCk7CiAgICAgfTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlVXBkYXRlci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZVVwZGF0ZXIuY3BwCmlu
ZGV4IDAyYmIyZmFjZTZlNjMxNDI2OWFmNTMxYjFhMTY0YWU2NTYzZjlhMjguLmEzMzE2OWZkNzcy
ZGQyYTc0MzUzNWM4OTEyOGQyZWJhZTNkNjYyZGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlVXBkYXRlci5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRyZWVVcGRhdGVyLmNwcApAQCAtMjY2LDYg
KzI2Niw3IEBAIHZvaWQgUmVuZGVyVHJlZVVwZGF0ZXI6OnVwZGF0ZUFmdGVyRGVzY2VuZGFudHMo
RWxlbWVudCYgZWxlbWVudCwgY29uc3QgU3R5bGU6OkVsCiAgICAgaWYgKCFyZW5kZXJlcikKICAg
ICAgICAgcmV0dXJuOwogCisgICAgZ2VuZXJhdGVkQ29udGVudCgpLnVwZGF0ZUJhY2tkcm9wUmVu
ZGVyZXIoKnJlbmRlcmVyKTsKICAgICBtX2J1aWxkZXIudXBkYXRlQWZ0ZXJEZXNjZW5kYW50cygq
cmVuZGVyZXIpOwogCiAgICAgaWYgKGVsZW1lbnQuaGFzQ3VzdG9tU3R5bGVSZXNvbHZlQ2FsbGJh
Y2tzKCkgJiYgdXBkYXRlcyAmJiB1cGRhdGVzLT51cGRhdGUuY2hhbmdlID09IFN0eWxlOjpDaGFu
Z2U6OlJlbmRlcmVyKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3VwZGF0
aW5nL1JlbmRlclRyZWVVcGRhdGVyR2VuZXJhdGVkQ29udGVudC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZVVwZGF0ZXJHZW5lcmF0ZWRDb250ZW50LmNw
cAppbmRleCAxOWIzNGE0NzI2Yzk2ZjBhZTA2NmU0ZGFhYjljZjVjMTczYTczMWEyLi5jYzRhYzVi
NWJlZjM3MzcwOGI2MWM0ODFhOTk1YzQ5NWE5MDg2NWE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZVVwZGF0ZXJHZW5lcmF0ZWRDb250ZW50
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZVVw
ZGF0ZXJHZW5lcmF0ZWRDb250ZW50LmNwcApAQCAtMTcyLDYgKzE3Miw0NSBAQCB2b2lkIFJlbmRl
clRyZWVVcGRhdGVyOjpHZW5lcmF0ZWRDb250ZW50Ojp1cGRhdGVQc2V1ZG9FbGVtZW50KEVsZW1l
bnQmIGN1cnJlbnQsCiAgICAgbV91cGRhdGVyLm1fYnVpbGRlci51cGRhdGVBZnRlckRlc2NlbmRh
bnRzKCpwc2V1ZG9FbGVtZW50UmVuZGVyZXIpOwogfQogCit2b2lkIFJlbmRlclRyZWVVcGRhdGVy
OjpHZW5lcmF0ZWRDb250ZW50Ojp1cGRhdGVCYWNrZHJvcFJlbmRlcmVyKFJlbmRlckVsZW1lbnQm
IHJlbmRlcmVyKQoreworICAgIC8vIDo6YmFja2Ryb3AgZG9lcyBub3QgaW5oZXJpdCBzdHlsZSwg
aGVuY2UgdXNpbmcgdGhlIHZpZXcgc3R5bGUgYXMgcGFyZW50IHN0eWxlCisgICAgYXV0byBzdHls
ZSA9IHJlbmRlcmVyLmdldENhY2hlZFBzZXVkb1N0eWxlKFBzZXVkb0lkOjpCYWNrZHJvcCwgJnJl
bmRlcmVyLnZpZXcoKS5zdHlsZSgpKTsKKworICAgIC8vIERlc3Ryb3kgOjpiYWNrZHJvcCBpZiBu
ZXcgZWxlbWVudCBubyBsb25nZXIgaXMgaW4gdG9wIGxheWVyLCBvciBpZiBpdCBpcyBoaWRkZW4K
KyAgICBpZiAoKHJlbmRlcmVyLmVsZW1lbnQoKSAmJiAhcmVuZGVyZXIuZWxlbWVudCgpLT5pc0lu
VG9wTGF5ZXIoKSkgfHwgIXN0eWxlIHx8IHN0eWxlLT5kaXNwbGF5KCkgPT0gRGlzcGxheVR5cGU6
Ok5vbmUpIHsKKyAgICAgICAgaWYgKFdlYWtQdHIgYmFja2Ryb3BSZW5kZXJlciA9IHJlbmRlcmVy
LmJhY2tkcm9wUmVuZGVyZXIoKSkKKyAgICAgICAgICAgIG1fdXBkYXRlci5tX2J1aWxkZXIuZGVz
dHJveSgqYmFja2Ryb3BSZW5kZXJlcik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBh
dXRvIG5ld1N0eWxlID0gUmVuZGVyU3R5bGU6OmNsb25lKCpzdHlsZSk7CisgICAgUmVuZGVyUHRy
PFJlbmRlckJsb2NrRmxvdz4gbmV3QmFja2Ryb3BSZW5kZXJlcjsKKyAgICBhdXRvIGJhY2tkcm9w
UmVuZGVyZXIgPSByZW5kZXJlci5iYWNrZHJvcFJlbmRlcmVyKCk7CisgICAgaWYgKGJhY2tkcm9w
UmVuZGVyZXIpCisgICAgICAgIGJhY2tkcm9wUmVuZGVyZXItPnNldFN0eWxlKFdURk1vdmUobmV3
U3R5bGUpKTsKKyAgICBlbHNlIHsKKyAgICAgICAgbmV3QmFja2Ryb3BSZW5kZXJlciA9IFdlYkNv
cmU6OmNyZWF0ZVJlbmRlcmVyPFJlbmRlckJsb2NrRmxvdz4ocmVuZGVyZXIuZG9jdW1lbnQoKSwg
V1RGTW92ZShuZXdTdHlsZSkpOworICAgICAgICBuZXdCYWNrZHJvcFJlbmRlcmVyLT5pbml0aWFs
aXplU3R5bGUoKTsKKyAgICAgICAgYmFja2Ryb3BSZW5kZXJlciA9IG1ha2VXZWFrUHRyKG5ld0Jh
Y2tkcm9wUmVuZGVyZXIuZ2V0KCkpOworICAgICAgICByZW5kZXJlci5zZXRCYWNrZHJvcFJlbmRl
cmVyKCpiYWNrZHJvcFJlbmRlcmVyKTsKKyAgICB9CisKKyAgICAvLyBVcGRhdGUgb3IgYXR0YWNo
IHRvIHJlbmRlcmVyIHBhcmVudAorICAgIGF1dG8gY3VycmVudFBhcmVudCA9IG1ha2VXZWFrUHRy
KGJhY2tkcm9wUmVuZGVyZXItPnBhcmVudCgpKTsKKyAgICBhdXRvIG5ld1BhcmVudCA9IG1ha2VX
ZWFrUHRyKHJlbmRlcmVyLnBhcmVudCgpKTsKKworICAgIEFTU0VSVChuZXdQYXJlbnQsICJTaG91
bGQgaGF2ZSBuZXcgcGFyZW50Iik7CisKKyAgICBpZiAobmV3UGFyZW50ID09IGN1cnJlbnRQYXJl
bnQpCisgICAgICAgIHJldHVybjsKKworICAgIGlmIChjdXJyZW50UGFyZW50KQorICAgICAgICBt
X3VwZGF0ZXIubV9idWlsZGVyLmF0dGFjaCgqbmV3UGFyZW50LCBtX3VwZGF0ZXIubV9idWlsZGVy
LmRldGFjaCgqY3VycmVudFBhcmVudCwgKmJhY2tkcm9wUmVuZGVyZXIsIFJlbmRlclRyZWVCdWls
ZGVyOjpDYW5Db2xsYXBzZUFub255bW91c0Jsb2NrOjpObyksICZyZW5kZXJlcik7CisgICAgZWxz
ZQorICAgICAgICBtX3VwZGF0ZXIubV9idWlsZGVyLmF0dGFjaCgqbmV3UGFyZW50LCBXVEZNb3Zl
KG5ld0JhY2tkcm9wUmVuZGVyZXIpLCAmcmVuZGVyZXIpOworfQorCiBib29sIFJlbmRlclRyZWVV
cGRhdGVyOjpHZW5lcmF0ZWRDb250ZW50OjpuZWVkc1BzZXVkb0VsZW1lbnQoY29uc3QgU3R5bGU6
OkVsZW1lbnRVcGRhdGUqIHVwZGF0ZSkKIHsKICAgICBpZiAoIXVwZGF0ZSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlVXBkYXRlckdlbmVy
YXRlZENvbnRlbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJU
cmVlVXBkYXRlckdlbmVyYXRlZENvbnRlbnQuaAppbmRleCAzNDg4YzAzYjA1YjU1NWMyN2QxN2Fj
MWY0YzdlMThlZGY1ZjFmMTkzLi5mM2YwMTZkZDY4NzhjMjUxYzkxODQ5YTU4OTM0ODE5ZWZhN2Q4
MGFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVy
VHJlZVVwZGF0ZXJHZW5lcmF0ZWRDb250ZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL3VwZGF0aW5nL1JlbmRlclRyZWVVcGRhdGVyR2VuZXJhdGVkQ29udGVudC5oCkBAIC0zOCw2
ICszOCw3IEBAIGNsYXNzIFJlbmRlclRyZWVVcGRhdGVyOjpHZW5lcmF0ZWRDb250ZW50IHsKIHB1
YmxpYzoKICAgICBHZW5lcmF0ZWRDb250ZW50KFJlbmRlclRyZWVVcGRhdGVyJik7CiAKKyAgICB2
b2lkIHVwZGF0ZUJhY2tkcm9wUmVuZGVyZXIoUmVuZGVyRWxlbWVudCYpOwogICAgIHZvaWQgdXBk
YXRlUHNldWRvRWxlbWVudChFbGVtZW50JiwgY29uc3QgU3R5bGU6OkVsZW1lbnRVcGRhdGVzJiwg
UHNldWRvSWQpOwogICAgIHZvaWQgdXBkYXRlUmVtYWluaW5nUXVvdGVzKCk7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlVHJlZVJlc29sdmVyLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3N0eWxlL1N0eWxlVHJlZVJlc29sdmVyLmNwcAppbmRleCAwYzUyOGIxOWJjNmNjNzJi
NjU5NTYyNTY5YmNkMTQyNzdhY2M2NDQ1Li5hZjQ4ZmQzYjQ5OGMwMDE0ZGNlY2M4MzkzZDMyOTIw
ZmI4OGEyYTc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVRyZWVSZXNv
bHZlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3Bw
CkBAIC0yNzUsMTYgKzI3NSwxOCBAQCBFbGVtZW50VXBkYXRlcyBUcmVlUmVzb2x2ZXI6OnJlc29s
dmVFbGVtZW50KEVsZW1lbnQmIGVsZW1lbnQpCiAKIHN0ZDo6b3B0aW9uYWw8RWxlbWVudFVwZGF0
ZT4gVHJlZVJlc29sdmVyOjpyZXNvbHZlUHNldWRvU3R5bGUoRWxlbWVudCYgZWxlbWVudCwgY29u
c3QgRWxlbWVudFVwZGF0ZSYgZWxlbWVudFVwZGF0ZSwgUHNldWRvSWQgcHNldWRvSWQpCiB7Cisg
ICAgQVNTRVJUKHBzZXVkb0lkICE9IFBzZXVkb0lkOjpCYWNrZHJvcCwgIlRoaXMgbWV0aG9kIGRv
ZXMgbm90IGhhbmRsZSA6OmJhY2tkcm9wIGN1cnJlbnRseSIpOworCiAgICAgaWYgKHBzZXVkb0lk
ID09IFBzZXVkb0lkOjpNYXJrZXIgJiYgZWxlbWVudFVwZGF0ZS5zdHlsZS0+ZGlzcGxheSgpICE9
IERpc3BsYXlUeXBlOjpMaXN0SXRlbSkKICAgICAgICAgcmV0dXJuIHsgfTsKICAgICBpZiAoZWxl
bWVudFVwZGF0ZS5zdHlsZS0+ZGlzcGxheSgpID09IERpc3BsYXlUeXBlOjpOb25lKQogICAgICAg
ICByZXR1cm4geyB9OwogICAgIGlmICghZWxlbWVudFVwZGF0ZS5zdHlsZS0+aGFzUHNldWRvU3R5
bGUocHNldWRvSWQpKQogICAgICAgICByZXR1cm4geyB9OwotICAgIAorCiAgICAgYXV0byYgcGFy
ZW50U3R5bGUgPSAqZWxlbWVudFVwZGF0ZS5zdHlsZTsKICAgICBhdXRvKiBwYXJlbnRCb3hTdHls
ZSA9IHBhcmVudEJveFN0eWxlRm9yUHNldWRvKGVsZW1lbnRVcGRhdGUpOwotICAgIAorCiAgICAg
YXV0byBwc2V1ZG9TdHlsZSA9IHNjb3BlKCkucmVzb2x2ZXItPnBzZXVkb1N0eWxlRm9yRWxlbWVu
dChlbGVtZW50LCB7IHBzZXVkb0lkIH0sIHBhcmVudFN0eWxlLCBwYXJlbnRCb3hTdHlsZSwgJnNj
b3BlKCkuc2VsZWN0b3JGaWx0ZXIpOwogICAgIGlmICghcHNldWRvU3R5bGUpCiAgICAgICAgIHJl
dHVybiB7IH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFj
ZS9Db250cm9sbGVycy9DU1NNYW5hZ2VyLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJ
bnRlcmZhY2UvQ29udHJvbGxlcnMvQ1NTTWFuYWdlci5qcwppbmRleCAyZjYzYmJjNDk4OWI1YTE1
ZTE0YTU1MWVjZWNkOTdiN2UyNTI1M2E1Li5hZDA2MWJkMTY1Njc5YmY3Mzk0ZmM4N2RlOWVmY2M5
NjgzNGY5ZTc5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFj
ZS9Db250cm9sbGVycy9DU1NNYW5hZ2VyLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9V
c2VySW50ZXJmYWNlL0NvbnRyb2xsZXJzL0NTU01hbmFnZXIuanMKQEAgLTE1NSw2ICsxNTUsOCBA
QCBXSS5DU1NNYW5hZ2VyID0gY2xhc3MgQ1NTTWFuYWdlciBleHRlbmRzIFdJLk9iamVjdAogICAg
ICAgICAgICAgcmV0dXJuIFdJLnVubG9jYWxpemVkU3RyaW5nKCI6OmFmdGVyIik7CiAgICAgICAg
IGNhc2UgQ1NTTWFuYWdlci5Qc2V1ZG9TZWxlY3Rvck5hbWVzLlNlbGVjdGlvbjoKICAgICAgICAg
ICAgIHJldHVybiBXSS51bmxvY2FsaXplZFN0cmluZygiOjpzZWxlY3Rpb24iKTsKKyAgICAgICAg
Y2FzZSBDU1NNYW5hZ2VyLlBzZXVkb1NlbGVjdG9yTmFtZXMuQmFja2Ryb3A6CisgICAgICAgICAg
ICByZXR1cm4gV0kudW5sb2NhbGl6ZWRTdHJpbmcoIjo6YmFja2Ryb3AiKTsKICAgICAgICAgY2Fz
ZSBDU1NNYW5hZ2VyLlBzZXVkb1NlbGVjdG9yTmFtZXMuU2Nyb2xsYmFyOgogICAgICAgICAgICAg
cmV0dXJuIFdJLnVubG9jYWxpemVkU3RyaW5nKCI6OnNjcm9sbGJhciIpOwogICAgICAgICBjYXNl
IENTU01hbmFnZXIuUHNldWRvU2VsZWN0b3JOYW1lcy5TY3JvbGxiYXJUaHVtYjoKQEAgLTY4NCw2
ICs2ODYsNyBAQCBXSS5DU1NNYW5hZ2VyLkFwcGVhcmFuY2UgPSB7CiBXSS5DU1NNYW5hZ2VyLlBz
ZXVkb1NlbGVjdG9yTmFtZXMgPSB7CiAgICAgQWZ0ZXI6ICJhZnRlciIsCiAgICAgQmVmb3JlOiAi
YmVmb3JlIiwKKyAgICBCYWNrZHJvcDogImJhY2tkcm9wIiwKICAgICBGaXJzdExldHRlcjogImZp
cnN0LWxldHRlciIsCiAgICAgRmlyc3RMaW5lOiAiZmlyc3QtbGluZSIsCiAgICAgSGlnaGxpZ2h0
OiAiaGlnaGxpZ2h0IiwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwppbmRleCBlOGQ4M2RmOGMxYjhmNWNiNjM0ZTQ1NDQzZmRjZTQwNTc4
NWNmMmZlLi40NGQ4OTJmZDJhOGMxNThjYjVhZDgyYmRhMDk2OTViMzViZDE3ZmM4IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMjEtMDgtMTIgIFRpbSBOZ3V5ZW4gIDxudGltQGFwcGxlLmNvbT4K
KworICAgICAgICBJbXBsZW1lbnQgOjpiYWNrZHJvcCBwc2V1ZG8gZWxlbWVudAorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI3ODAxCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgQW50dGkgS29pdmlzdG8uCisKKyAgICAgICAgVGhpcyBhZGRzIFVBIHN0eWxl
cywgUmVuZGVyVHJlZUJ1aWxkZXIgc3VwcG9ydCBhbmQgV2ViSW5zcGVjdG9yIHN1cHBvcnQgZm9y
IDo6YmFja2Ryb3AuCisgICAgICAgIFNvbWUgaW1wb3J0ZWQgYmxpbmsgdGVzdHMgbm93IHN0YXJ0
IHBhc3NpbmcsIHNvbWUgc3RpbGwgbmVlZCBwcm9wZXIgdG9wIGxheWVyIHN1cHBvcnQuCisKKyAg
ICAgICAgKiBUZXN0RXhwZWN0YXRpb25zOgorCiAyMDIxLTA4LTEzICBZb3Vlbm4gRmFibGV0ICA8
eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBPdmVybHkgdmVyYm9zZSBjYXRjaGFibGUgZmV0
Y2ggZXJyb3IgbWVzc2FnZXMgbGVhZCB0byBjcm9zcy1vcmlnaW4gbGVha3MKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2MvQ2hhbmdlTG9nCmluZGV4IGIxMzI2MmRjYTIxMDJkZWY2ODg3ODQyZjEwMzBkMTI1NTM2
OTNiODQuLmMwMThmN2E4N2E4NmIzNDA1MDI5ZTQwYTdiZDQ5MjQ2ZjhhYWJjNjUgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDIxLTA4LTEyICBUaW0g
Tmd1eWVuICA8bnRpbUBhcHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IDo6YmFja2Ryb3Ag
cHNldWRvIGVsZW1lbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIyNzgwMQorCisgICAgICAgIFJldmlld2VkIGJ5IEFudHRpIEtvaXZpc3RvLgorCisg
ICAgICAgIFRoaXMgYWRkcyBVQSBzdHlsZXMsIFJlbmRlclRyZWVCdWlsZGVyIHN1cHBvcnQgYW5k
IFdlYkluc3BlY3RvciBzdXBwb3J0IGZvciA6OmJhY2tkcm9wLgorICAgICAgICBTb21lIGltcG9y
dGVkIGJsaW5rIHRlc3RzIG5vdyBzdGFydCBwYXNzaW5nLCBzb21lIHN0aWxsIG5lZWQgcHJvcGVy
IHRvcCBsYXllciBzdXBwb3J0LgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3MtdmFsdWVzL2NoLWVtcHR5LXBzZXVkby1yZWNhbGMtb24tZm9udC1sb2FkLWV4cGVjdGVkLnR4
dDoKKwogMjAyMS0wOC0xMyAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAg
ICAgICAgT3Zlcmx5IHZlcmJvc2UgY2F0Y2hhYmxlIGZldGNoIGVycm9yIG1lc3NhZ2VzIGxlYWQg
dG8gY3Jvc3Mtb3JpZ2luIGxlYWtzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0
YXRpb25zIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwppbmRleCBkM2UzMjgzZmRhNGZl
OTVkZTNkYWNmMjFkZWViNzQ1YTBhMTNhNTQzLi41NTQ4MzNiN2RhNjM3OWFiZmQwZTA3NDRjMDMz
OThiNzYxMDBhNDU0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCisr
KyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTIzNzksMTcgKzIzNzksMTAgQEAg
bG9hZGVyL3N0YXRlb2JqZWN0cy9yZXBsYWNlc3RhdGUtc2l6ZS5odG1sIFsgU2xvdyBdCiBpbXBv
cnRlZC9ibGluay9mYXN0L211bHRpY29sL291dGxpbmVzLWF0LWNvbHVtbi1ib3VuZGFyaWVzLmh0
bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIGZhc3QvbXVsdGljb2wvbXVsdGljb2wtd2l0aC1jaGls
ZC1yZW5kZXJMYXllci1mb3ItaW5wdXQuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQogCi0jIDo6
YmFja2Ryb3AKLXdlYmtpdC5vcmcvYi8yMjc4MDEgaW1wb3J0ZWQvYmxpbmsvZGlhbG9nL2JhY2tk
cm9wLWRlc2NlbmRhbnQtc2VsZWN0b3IuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0
Lm9yZy9iLzIyNzgwMSBpbXBvcnRlZC9ibGluay9kaWFsb2cvYmFja2Ryb3AtZG9lcy1ub3QtaW5o
ZXJpdC5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMjI3ODAxIGltcG9y
dGVkL2JsaW5rL2RpYWxvZy9iYWNrZHJvcC1keW5hbWljLXN0eWxlLWNoYW5nZS5odG1sIFsgSW1h
Z2VPbmx5RmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMjI3ODAxIGltcG9ydGVkL2JsaW5rL2RpYWxv
Zy9iYWNrZHJvcC1pbi1mbG93Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLXdlYmtpdC5vcmcv
Yi8yMjc4MDEgaW1wb3J0ZWQvYmxpbmsvZGlhbG9nL2JhY2tkcm9wLXN0YWNraW5nLW9yZGVyLmh0
bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLQogIyBUb3AgbGF5ZXIgdGVzdHMKK3dlYmtpdC5vcmcv
Yi84NDc5NiBpbXBvcnRlZC9ibGluay9kaWFsb2cvYmFja2Ryb3AtaW4tZmxvdy5odG1sIFsgSW1h
Z2VPbmx5RmFpbHVyZSBdCit3ZWJraXQub3JnL2IvODQ3OTYgaW1wb3J0ZWQvYmxpbmsvZGlhbG9n
L2JhY2tkcm9wLXN0YWNraW5nLW9yZGVyLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtp
dC5vcmcvYi84NDc5NiBpbXBvcnRlZC9ibGluay9kaWFsb2cvZG9udC1zaGFyZS1zdHlsZS10by10
b3AtbGF5ZXIuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzg0Nzk2IGlt
cG9ydGVkL2JsaW5rL2RpYWxvZy9tb2RhbC1kaWFsb2ctYmFja2Ryb3AuaHRtbCBbIEltYWdlT25s
eUZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzg0Nzk2IGltcG9ydGVkL2JsaW5rL2RpYWxvZy9tb2Rh
bC1kaWFsb2ctZ2VuZXJhdGVkLWNvbnRlbnQuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQogd2Vi
a2l0Lm9yZy9iLzg0Nzk2IGltcG9ydGVkL2JsaW5rL2RpYWxvZy9tb2RhbC1kaWFsb2ctaW4tcmVw
bGFjZWQtcmVuZGVyZXIuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzg0
Nzk2IGltcG9ydGVkL2JsaW5rL2RpYWxvZy9tb2RhbC1kaWFsb2ctaW4tdGFibGUtY29sdW1uLmh0
bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi84NDc5NiBpbXBvcnRlZC9ibGlu
ay9kaWFsb2cvcmVtb3ZlZC1lbGVtZW50LWlzLXJlbW92ZWQtZnJvbS10b3AtbGF5ZXIuaHRtbCBb
IEltYWdlT25seUZhaWx1cmUgXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXZhbHVlcy9jaC1lbXB0eS1wc2V1ZG8tcmVjYWxj
LW9uLWZvbnQtbG9hZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdmFsdWVzL2NoLWVtcHR5LXBzZXVkby1yZWNhbGMtb24t
Zm9udC1sb2FkLWV4cGVjdGVkLnR4dAppbmRleCA2OWM3ZWE5ODQ3YzY5OWYyNWM1MThhNmIxNzdh
ZTJhYzViZDVmYzdiLi4wMTY2MWZhOTFmNTkzNjczMmQzNTlmMjU3NWI4MDE5MmI0MGM3YWU5IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9jc3MtdmFsdWVzL2NoLWVtcHR5LXBzZXVkby1yZWNhbGMtb24tZm9udC1sb2FkLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9jc3MtdmFsdWVzL2NoLWVtcHR5LXBzZXVkby1yZWNhbGMtb24tZm9udC1sb2FkLWV4cGVjdGVk
LnR4dApAQCAtMSw1ICsxLDUgQEAKIAotRkFJTCBjaCBpbiBwc2V1ZG8tZWxlbWVudCA6OmJlZm9y
ZSBzaG91bGQgYmUgcmVjYWxjdWxhdGVkIGFmdGVyIGxvYWRpbmcgYSB3ZWIgZm9udCBhc3NlcnRf
bGVzc190aGFuOiBleHBlY3RlZCBhIG51bWJlciBsZXNzIHRoYW4gMjQgYnV0IGdvdCBOYU4KLUZB
SUwgY2ggaW4gcHNldWRvLWVsZW1lbnQgOjphZnRlciBzaG91bGQgYmUgcmVjYWxjdWxhdGVkIGFm
dGVyIGxvYWRpbmcgYSB3ZWIgZm9udCBhc3NlcnRfbGVzc190aGFuOiBleHBlY3RlZCBhIG51bWJl
ciBsZXNzIHRoYW4gMjQgYnV0IGdvdCBOYU4KLUZBSUwgY2ggaW4gcHNldWRvLWVsZW1lbnQgOjpi
YWNrZHJvcCBzaG91bGQgYmUgcmVjYWxjdWxhdGVkIGFmdGVyIGxvYWRpbmcgYSB3ZWIgZm9udCBh
c3NlcnRfbGVzc190aGFuOiBleHBlY3RlZCBhIG51bWJlciBsZXNzIHRoYW4gMjQgYnV0IGdvdCBO
YU4KK1BBU1MgY2ggaW4gcHNldWRvLWVsZW1lbnQgOjpiZWZvcmUgc2hvdWxkIGJlIHJlY2FsY3Vs
YXRlZCBhZnRlciBsb2FkaW5nIGEgd2ViIGZvbnQKK1BBU1MgY2ggaW4gcHNldWRvLWVsZW1lbnQg
OjphZnRlciBzaG91bGQgYmUgcmVjYWxjdWxhdGVkIGFmdGVyIGxvYWRpbmcgYSB3ZWIgZm9udAor
UEFTUyBjaCBpbiBwc2V1ZG8tZWxlbWVudCA6OmJhY2tkcm9wIHNob3VsZCBiZSByZWNhbGN1bGF0
ZWQgYWZ0ZXIgbG9hZGluZyBhIHdlYiBmb250CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>