<?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>229083</bug_id>
          
          <creation_ts>2021-08-13 10:53:51 -0700</creation_ts>
          <short_desc>Unprefix -webkit-text-align-last</short_desc>
          <delta_ts>2022-05-30 01:29:54 -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 Local 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=76173</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>217522</blocked>
    
    <blocked>146772</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Sam Sneddon [:gsnedders]">gsnedders</reporter>
          <assigned_to name="Tim Nguyen (:ntim)">ntim</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>changseok</cc>
    
    <cc>dino</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>graouts</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>hi</cc>
    
    <cc>joepeck</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>ntim</cc>
    
    <cc>pangle</cc>
    
    <cc>pdr</cc>
    
    <cc>rcaliman</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1784160</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Sneddon [:gsnedders]">gsnedders</who>
    <bug_when>2021-08-13 10:53:51 -0700</bug_when>
    <thetext>I don&apos;t think there&apos;s been much in the way of changes here, so this should be a simple change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1785909</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-08-20 10:54:22 -0700</bug_when>
    <thetext>&lt;rdar://problem/82176885&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1822430</commentid>
    <comment_count>2</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2021-12-09 16:58:20 -0800</bug_when>
    <thetext>It looks like it&apos;s hidden behind ENABLE(CSS3_TEXT), so not sure it&apos;s even available for most people?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1822981</commentid>
    <comment_count>3</comment_count>
      <attachid>446814</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2021-12-10 14:25:45 -0800</bug_when>
    <thetext>Created attachment 446814
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1823010</commentid>
    <comment_count>4</comment_count>
      <attachid>446814</attachid>
    <who name="Sam Sneddon [:gsnedders]">gsnedders</who>
    <bug_when>2021-12-10 14:57:26 -0800</bug_when>
    <thetext>Comment on attachment 446814
Patch

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

Do we have any actual functional tests, above and beyond these tests that checking parsing/serialization?

&gt; LayoutTests/imported/w3c/web-platform-tests/css/css-text/parsing/text-align-last-computed-expected.txt:9
&gt; +FAIL Property text-align-last value &apos;match-parent&apos; assert_equals: expected &quot;match-parent&quot; but got &quot;auto&quot;

This seems bad? Is this just serialisation, or do we at least get the semantics right?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1823018</commentid>
    <comment_count>5</comment_count>
      <attachid>446814</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2021-12-10 15:06:28 -0800</bug_when>
    <thetext>Comment on attachment 446814
Patch

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

&gt;&gt; LayoutTests/imported/w3c/web-platform-tests/css/css-text/parsing/text-align-last-computed-expected.txt:9
&gt;&gt; +FAIL Property text-align-last value &apos;match-parent&apos; assert_equals: expected &quot;match-parent&quot; but got &quot;auto&quot;
&gt; 
&gt; This seems bad? Is this just serialisation, or do we at least get the semantics right?

I&apos;m not sure if the test is correct. The spec says that &apos;match-parent&apos; should match the immediate parent (which we don&apos;t have in this test), or the initial containing block which does not have a value specified for the direction value. That makes it sound like it should either be &apos;left&apos;, or maybe the default &quot;auto&quot; value. I don&apos;t think the computed value should ever be &quot;match-parent&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1823086</commentid>
    <comment_count>6</comment_count>
      <attachid>446814</attachid>
    <who name="Tim Nguyen (:ntim)">ntim</who>
    <bug_when>2021-12-10 16:33:11 -0800</bug_when>
    <thetext>Comment on attachment 446814
Patch

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

&gt;&gt;&gt; LayoutTests/imported/w3c/web-platform-tests/css/css-text/parsing/text-align-last-computed-expected.txt:9
&gt;&gt;&gt; +FAIL Property text-align-last value &apos;match-parent&apos; assert_equals: expected &quot;match-parent&quot; but got &quot;auto&quot;
&gt;&gt; 
&gt;&gt; This seems bad? Is this just serialisation, or do we at least get the semantics right?
&gt; 
&gt; I&apos;m not sure if the test is correct. The spec says that &apos;match-parent&apos; should match the immediate parent (which we don&apos;t have in this test), or the initial containing block which does not have a value specified for the direction value. That makes it sound like it should either be &apos;left&apos;, or maybe the default &quot;auto&quot; value. I don&apos;t think the computed value should ever be &quot;match-parent&quot;.

See https://github.com/w3c/csswg-drafts/issues/2577

I don&apos;t think the outcome was particularly clear unfortunately. Might be worth pinging frivoal or fantasai.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1823088</commentid>
    <comment_count>7</comment_count>
      <attachid>446814</attachid>
    <who name="Tim Nguyen (:ntim)">ntim</who>
    <bug_when>2021-12-10 16:35:55 -0800</bug_when>
    <thetext>Comment on attachment 446814
Patch

Do those WPTs start passing:
https://webkit-search.igalia.com/webkit/rev/c7aee49ebf38fcbd12c681b28cc2e877d356a1e9/LayoutTests/TestExpectations#2671-2673
?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1823092</commentid>
    <comment_count>8</comment_count>
      <attachid>446814</attachid>
    <who name="Tim Nguyen (:ntim)">ntim</who>
    <bug_when>2021-12-10 16:36:46 -0800</bug_when>
    <thetext>Comment on attachment 446814
Patch

Can you unskip https://webkit-search.igalia.com/webkit/rev/c7aee49ebf38fcbd12c681b28cc2e877d356a1e9/LayoutTests/TestExpectations#2956 as well?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1823096</commentid>
    <comment_count>9</comment_count>
    <who name="Tim Nguyen (:ntim)">ntim</who>
    <bug_when>2021-12-10 16:41:12 -0800</bug_when>
    <thetext>(In reply to Tim Nguyen (:ntim) from comment #7)
&gt; Comment on attachment 446814 [details]
&gt; Patch
&gt; 
&gt; Do those WPTs start passing:
&gt; https://webkit-search.igalia.com/webkit/rev/
&gt; c7aee49ebf38fcbd12c681b28cc2e877d356a1e9/LayoutTests/TestExpectations#2671-
&gt; 2673
&gt; ?

Looks like the WPT script adds the -webkit- prefix automatically to -webkit-text-align-last in those tests, can you please remove the now unused prefixes?

See: https://webkit-search.igalia.com/webkit/search?q=-webkit-text-align-last&amp;path=LayoutTests&amp;case=false&amp;regexp=false</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1823098</commentid>
    <comment_count>10</comment_count>
    <who name="Tim Nguyen (:ntim)">ntim</who>
    <bug_when>2021-12-10 16:43:58 -0800</bug_when>
    <thetext>See also: https://webkit-search.igalia.com/webkit/search?q=webkitTextAlignLast&amp;path=LayoutTests&amp;case=false&amp;regexp=false</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1830580</commentid>
    <comment_count>11</comment_count>
      <attachid>446814</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2022-01-13 09:35:55 -0800</bug_when>
    <thetext>Comment on attachment 446814
Patch

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

&gt; Source/WebCore/rendering/style/RenderStyle.cpp:768
&gt; -#if ENABLE(CSS3_TEXT)
&gt;          || first.textAlignLast != second.textAlignLast
&gt; +#if ENABLE(CSS3_TEXT)

Is text-align-last no longer part of CSS3 Text?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1830642</commentid>
    <comment_count>12</comment_count>
      <attachid>446814</attachid>
    <who name="Razvan Caliman">rcaliman</who>
    <bug_when>2022-01-13 11:13:29 -0800</bug_when>
    <thetext>Comment on attachment 446814
Patch

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

&gt; Source/WebInspectorUI/UserInterface/External/CSSDocumentation/CSSDocumentation.js:2360
&gt; +        &quot;syntax&quot;: &quot;auto | start | end | left | right | center | justify | match-parent&quot;,

Please don&apos;t modify `CSSDocumentation.js` directly. 
It gets automatically generated from upstream data by running the script: `Source/WebInspectorUI/Scripts/update-inspector-css-documentation`

To update a field, you can add an entry to `Source/WebInspectorUI/UserInterface/External/CSSDocumentation/CSSDocumentation-overrides.json` which will **overwrite** the corresponding field from the data source:
```
&quot;text-align-last&quot;: {
    &quot;syntax&quot;: &quot;auto | start | end | left | right | center | justify | match-parent&quot;
}
```
Then run the script `Source/WebInspectorUI/Scripts/update-inspector-css-documentation` to generate the updated `CSSDocumentation.js` file.

Alternatively, you can file an issue / send a PR to the upstream data source at https://github.com/microsoft/vscode-custom-data
After it gets merged, on the next manual run of the script, the changes will get picked up automatically.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1849280</commentid>
    <comment_count>13</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2022-03-08 08:42:48 -0800</bug_when>
    <thetext>You should consider adding animation support for this property in CSSPropertyAnimation. See the many uses of DiscretePropertyWrapper, this will likely be a one-liner.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1855199</commentid>
    <comment_count>14</comment_count>
      <attachid>446814</attachid>
    <who name="Tim Nguyen (:ntim)">ntim</who>
    <bug_when>2022-03-25 12:22:49 -0700</bug_when>
    <thetext>Comment on attachment 446814
Patch

r- to remove from queue given all the current comments + EWS status.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1872601</commentid>
    <comment_count>15</comment_count>
    <who name="Tim Nguyen (:ntim)">ntim</who>
    <bug_when>2022-05-29 02:55:19 -0700</bug_when>
    <thetext>Pull request: https://github.com/WebKit/WebKit/pull/1145</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1872700</commentid>
    <comment_count>16</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-05-30 01:29:50 -0700</bug_when>
    <thetext>Committed r295021 (251116@main): &lt;https://commits.webkit.org/251116@main&gt;

Reviewed commits have been landed. Closing PR #1145 and removing active labels.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>446814</attachid>
            <date>2021-12-10 14:25:45 -0800</date>
            <delta_ts>2022-05-29 02:54:03 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-229083-20211210142545.patch</filename>
            <type>text/plain</type>
            <size>30137</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg2ODAzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODk3M2NmNjRhOTQyY2Ey
NzNmYWZkMjg1NDcxYmYyNWFkNTk4Y2E0My4uNzEwOTUyYTk4ZmVkMmQxZWZiYWE0MDM4ODQyOGI2
ZDU0ZWI4Y2VjYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQyIEBACisyMDIxLTEyLTEwICBCcmVu
dCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBhbiB1bnByZWZp
eGVkIHZlcnNpb24gb2YgLXdlYmtpdC10ZXh0LWFsaWduLWxhc3QKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyOTA4MworICAgICAgICA8cmRhcjovLzgy
MTc2ODg1PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFByb3ZpZGUgYW4gdW5wcmVmaXhlZCB2ZXJzaW9uIG9mIC13ZWJraXQtdGV4dC1hbGlnbi1sYXN0
LgorCisgICAgICAgIFRlc3RlZCBieSBXUFQ6IHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXRl
eHQvaW5oZXJpdGFuY2UuaHRtbCwKKyAgICAgICAgICAgIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
Y3NzLXRleHQvcGFyc2luZy90ZXh0LWFsaWduLWxhc3QtY29tcHV0ZWQuaHRtbCwKKyAgICAgICAg
ICAgIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXRleHQvcGFyc2luZy90ZXh0LWFsaWduLWxh
c3QtdmFsaWQuaHRtbAorCisgICAgICAgICogY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlv
bi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjp2YWx1ZUZv
clByb3BlcnR5SW5TdHlsZSk6CisgICAgICAgICogY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGlu
Z3MuaDoKKyAgICAgICAgKiBjc3MvQ1NTUHJvcGVydGllcy5qc29uOgorICAgICAgICAqIGNzcy9T
dHlsZVByb3BlcnRpZXMuY3BwOgorICAgICAgICAqIGNzcy9wYXJzZXIvQ1NTUGFyc2VyRmFzdFBh
dGhzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1BhcnNlckZhc3RQYXRoczo6aXNWYWxpZEtl
eXdvcmRQcm9wZXJ0eUFuZFZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1BhcnNlckZhc3RQ
YXRoczo6aXNLZXl3b3JkUHJvcGVydHlJRCk6CisgICAgICAgICogcmVuZGVyaW5nL3N0eWxlL1Jl
bmRlclN0eWxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnJhcmVJbmhlcml0ZWREYXRhQ2hhbmdl
UmVxdWlyZXNMYXlvdXQpOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5o
OgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OnRleHRBbGlnbkxhc3QgY29uc3QpOgor
ICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OnNldFRleHRBbGlnbkxhc3QpOgorICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OmluaXRpYWxUZXh0QWxpZ25MYXN0KToKKyAgICAgICAg
KiByZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaDoKKyAgICAgICAgKiByZW5k
ZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpTdHlsZVJhcmVJbmhlcml0ZWREYXRhOjpTdHlsZVJhcmVJbmhlcml0ZWREYXRhKToKKyAgICAg
ICAgKFdlYkNvcmU6OlN0eWxlUmFyZUluaGVyaXRlZERhdGE6Om9wZXJhdG9yPT0gY29uc3QpOgor
ICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmg6CisgICAg
ICAgICogc3R5bGUvU3R5bGVCdWlsZGVyQ29udmVydGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpT
dHlsZTo6QnVpbGRlckNvbnZlcnRlcjo6Y29udmVydFRleHRBbGlnbkxhc3QpOgorICAgICAgICAq
IHN0eWxlL1N0eWxlQnVpbGRlckN1c3RvbS5oOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OkJ1
aWxkZXJDdXN0b206OmFwcGx5SW5pdGlhbFRleHRBbGlnbkxhc3QpOgorICAgICAgICAoV2ViQ29y
ZTo6U3R5bGU6OkJ1aWxkZXJDdXN0b206OmFwcGx5VmFsdWVUZXh0QWxpZ25MYXN0KToKKwogMjAy
MS0xMi0wOSAgQnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBV
bnByZWZpeCBDU1MgdmFsdWUgdGV4dC1hbGlnbjogLXdlYmtpdC1tYXRjaC1wYXJlbnQKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvQ2hhbmdlTG9nCmluZGV4IGExM2NmNDM5ZjE3ZmNhY2EzODQ1MDI4YjE3YzlhNTA5Zjli
OTEzNzEuLjhmY2M5NTdkY2ZjMWI1ZDE5NGZkMThhZjM0NTM5NWYzN2IxYmY3NmIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkluc3Bl
Y3RvclVJL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTEyLTEwICBCcmVudCBGdWxn
aGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBhbiB1bnByZWZpeGVkIHZl
cnNpb24gb2YgLXdlYmtpdC10ZXh0LWFsaWduLWxhc3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyOTA4MworICAgICAgICA8cmRhcjovLzgyMTc2ODg1
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFByb3Zp
ZGUgYW4gdW5wcmVmaXhlZCB2ZXJzaW9uIG9mIC13ZWJraXQtdGV4dC1hbGlnbi1sYXN0LgorCisg
ICAgICAgICogVXNlckludGVyZmFjZS9FeHRlcm5hbC9DU1NEb2N1bWVudGF0aW9uL0NTU0RvY3Vt
ZW50YXRpb24uanM6CisgICAgICAgICogVXNlckludGVyZmFjZS9Nb2RlbHMvQ1NTS2V5d29yZENv
bXBsZXRpb25zLmpzOgorCiAyMDIxLTEyLTA5ICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBw
bGUuY29tPgogCiAgICAgICAgIFVucHJlZml4IENTUyB2YWx1ZSB0ZXh0LWFsaWduOiAtd2Via2l0
LW1hdGNoLXBhcmVudApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVk
U3R5bGVEZWNsYXJhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHls
ZURlY2xhcmF0aW9uLmNwcAppbmRleCAzMWUwNmIyYTc5ZDcyYWExNzM2NjkwMWYwZTdlMjkxODhl
Yzc2NTJiLi5iZTJhOGMyMjkwYmFjYzg1NTRhODU1NTk5OTQyMWRkNmRjNzFlMzg4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcApA
QCAtMzMyOSwxMSArMzMyOSwxMSBAQCBSZWZQdHI8Q1NTVmFsdWU+IENvbXB1dGVkU3R5bGVFeHRy
YWN0b3I6OnZhbHVlRm9yUHJvcGVydHlJblN0eWxlKGNvbnN0IFJlbmRlclN0eQogICAgICAgICAg
ICAgcmV0dXJuIGNzc1ZhbHVlUG9vbC5jcmVhdGVWYWx1ZShzdHlsZS50YWJsZUxheW91dCgpKTsK
ICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVRleHRBbGlnbjoKICAgICAgICAgICAgIHJldHVybiBj
c3NWYWx1ZVBvb2wuY3JlYXRlVmFsdWUoc3R5bGUudGV4dEFsaWduKCkpOworICAgICAgICBjYXNl
IENTU1Byb3BlcnR5VGV4dEFsaWduTGFzdDoKKyAgICAgICAgICAgIHJldHVybiBjc3NWYWx1ZVBv
b2wuY3JlYXRlVmFsdWUoc3R5bGUudGV4dEFsaWduTGFzdCgpKTsKICAgICAgICAgY2FzZSBDU1NQ
cm9wZXJ0eVRleHREZWNvcmF0aW9uOgogICAgICAgICAgICAgcmV0dXJuIHJlbmRlclRleHREZWNv
cmF0aW9uTGluZUZsYWdzVG9DU1NWYWx1ZShzdHlsZS50ZXh0RGVjb3JhdGlvbigpKTsKICNpZiBF
TkFCTEUoQ1NTM19URVhUKQotICAgICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0VGV4dEFsaWdu
TGFzdDoKLSAgICAgICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2wuY3JlYXRlVmFsdWUoc3R5bGUu
dGV4dEFsaWduTGFzdCgpKTsKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdFRleHRKdXN0
aWZ5OgogICAgICAgICAgICAgcmV0dXJuIGNzc1ZhbHVlUG9vbC5jcmVhdGVWYWx1ZShzdHlsZS50
ZXh0SnVzdGlmeSgpKTsKICNlbmRpZiAvLyBDU1MzX1RFWFQKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmggYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oCmluZGV4IGI2OTdlZmQwZGI1YjlkN2VmYjA3
MDQzZjdmMTllYjU1MjU2OTJlMmQuLmIxZGQ1YzI1YzM1MTgwMWI1NWVmMGJmMjA4NGE2NTc5Y2Jl
NmY0NzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1h
cHBpbmdzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGlu
Z3MuaApAQCAtMjM0Nyw3ICsyMzQ3LDYgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZl
VmFsdWU6Om9wZXJhdG9yIFRleHRBbGlnbk1vZGUoKSBjb25zdAogICAgIH0KIH0KIAotI2lmIEVO
QUJMRShDU1MzX1RFWFQpCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NT
UHJpbWl0aXZlVmFsdWUoVGV4dEFsaWduTGFzdCBlKQogICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZl
Q2xhc3MpCiB7CkBAIC0yNDA0LDYgKzI0MDMsNyBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmlt
aXRpdmVWYWx1ZTo6b3BlcmF0b3IgVGV4dEFsaWduTGFzdCgpIGNvbnN0CiAgICAgcmV0dXJuIFRl
eHRBbGlnbkxhc3Q6OkF1dG87CiB9CiAKKyNpZiBFTkFCTEUoQ1NTM19URVhUKQogdGVtcGxhdGU8
PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKFRleHRKdXN0aWZ5
IGUpCiAgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcykKIHsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb24gYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
UHJvcGVydGllcy5qc29uCmluZGV4IDg3NzAxODFiZjhlNGY5NjhhOWM3MWIxMjI2YjY5MzI5ZjJk
NThjNzYuLjkwNmFlMGVjOGNiYTVkNzliOTI3MjQwNDZiZjA5M2E2OTZhNTk1NDMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb24KKysrIGIvU291cmNlL1dl
YkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbgpAQCAtNDUzMCw2ICs0NTMwLDMzIEBACiAgICAg
ICAgICAgICAgICAgInVybCI6ICJodHRwczovL3d3dy53My5vcmcvVFIvQ1NTMjIvdGV4dC5odG1s
I3Byb3BkZWYtdGV4dC1hbGlnbiIKICAgICAgICAgICAgIH0KICAgICAgICAgfSwKKyAgICAgICAg
InRleHQtYWxpZ24tbGFzdCI6IHsKKyAgICAgICAgICAgICJpbmhlcml0ZWQiOiB0cnVlLAorICAg
ICAgICAgICAgInZhbHVlcyI6IFsKKyAgICAgICAgICAgICAgICAibGVmdCIsCisgICAgICAgICAg
ICAgICAgInJpZ2h0IiwKKyAgICAgICAgICAgICAgICAiY2VudGVyIiwKKyAgICAgICAgICAgICAg
ICAianVzdGlmeSIsCisgICAgICAgICAgICAgICAgIm1hdGNoLXBhcmVudCIsCisgICAgICAgICAg
ICAgICAgInN0YXJ0IiwKKyAgICAgICAgICAgICAgICAiZW5kIiwKKyAgICAgICAgICAgICAgICAi
YXV0byIKKyAgICAgICAgICAgIF0sCisgICAgICAgICAgICAiY29kZWdlbi1wcm9wZXJ0aWVzIjog
eworICAgICAgICAgICAgICAgICJhbGlhc2VzIjogWworICAgICAgICAgICAgICAgICAgICAiLXdl
YmtpdC10ZXh0LWFsaWduLWxhc3QiCisgICAgICAgICAgICAgICAgXSwKKyAgICAgICAgICAgICAg
ICAiY29udmVydGVyIjogIlRleHRBbGlnbkxhc3QiLAorICAgICAgICAgICAgICAgICJjdXN0b20i
OiAiSW5pdGlhbHxWYWx1ZSIKKyAgICAgICAgICAgIH0sCisgICAgICAgICAgICAic3RhdHVzIjog
eworICAgICAgICAgICAgICAgICJzdGF0dXMiOiAiZXhwZXJpbWVudGFsIgorICAgICAgICAgICAg
fSwKKyAgICAgICAgICAgICJzcGVjaWZpY2F0aW9uIjogeworICAgICAgICAgICAgICAgICJjYXRl
Z29yeSI6ICJjc3MtdGV4dCIsCisgICAgICAgICAgICAgICAgInVybCI6ICJodHRwczovL3d3dy53
My5vcmcvVFIvY3NzLXRleHQtMy8jdGV4dC1hbGlnbi1sYXN0LXByb3BlcnR5IgorICAgICAgICAg
ICAgfQorICAgICAgICB9LAogICAgICAgICAidGV4dC1hbmNob3IiOiB7CiAgICAgICAgICAgICAi
aW5oZXJpdGVkIjogdHJ1ZSwKICAgICAgICAgICAgICJ2YWx1ZXMiOiBbCkBAIC02NzM0LDI4ICs2
NzYxLDYgQEAKICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAic3RhdHVzIjogIm5vbi1zdGFu
ZGFyZCIKICAgICAgICAgfSwKLSAgICAgICAgIi13ZWJraXQtdGV4dC1hbGlnbi1sYXN0Ijogewot
ICAgICAgICAgICAgImluaGVyaXRlZCI6IHRydWUsCi0gICAgICAgICAgICAidmFsdWVzIjogWwot
ICAgICAgICAgICAgICAgICJsZWZ0IiwKLSAgICAgICAgICAgICAgICAicmlnaHQiLAotICAgICAg
ICAgICAgICAgICJjZW50ZXIiLAotICAgICAgICAgICAgICAgICJqdXN0aWZ5IiwKLSAgICAgICAg
ICAgICAgICAic3RhcnQiLAotICAgICAgICAgICAgICAgICJlbmQiLAotICAgICAgICAgICAgICAg
ICJhdXRvIgotICAgICAgICAgICAgXSwKLSAgICAgICAgICAgICJjb2RlZ2VuLXByb3BlcnRpZXMi
OiB7Ci0gICAgICAgICAgICAgICAgImVuYWJsZS1pZiI6ICJFTkFCTEVfQ1NTM19URVhUIgotICAg
ICAgICAgICAgfSwKLSAgICAgICAgICAgICJzdGF0dXMiOiB7Ci0gICAgICAgICAgICAgICAgInN0
YXR1cyI6ICJleHBlcmltZW50YWwiCi0gICAgICAgICAgICB9LAotICAgICAgICAgICAgInNwZWNp
ZmljYXRpb24iOiB7Ci0gICAgICAgICAgICAgICAgImNhdGVnb3J5IjogImNzcy10ZXh0IiwKLSAg
ICAgICAgICAgICAgICAidXJsIjogImh0dHBzOi8vd3d3LnczLm9yZy9UUi9jc3MtdGV4dC0zLyN0
ZXh0LWFsaWduLWxhc3QtcHJvcGVydHkiCi0gICAgICAgICAgICB9Ci0gICAgICAgIH0sCiAgICAg
ICAgICItd2Via2l0LXRleHQtanVzdGlmeSI6IHsKICAgICAgICAgICAgICJpbmhlcml0ZWQiOiB0
cnVlLAogICAgICAgICAgICAgInZhbHVlcyI6IFsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9TdHlsZVByb3BlcnRpZXMuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVy
dGllcy5jcHAKaW5kZXggZjk1OTMzYjhhZDczZjY5YmM2ZjkxYTQzYWRlZWJkZDBiYWIxMjk5ZC4u
MDEyYTg4OWRjZTEyOWM3Y2YyMzc2NjNmYzZmODllMDIwMDRmZjJhOSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVydGllcy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
Y3NzL1N0eWxlUHJvcGVydGllcy5jcHAKQEAgLTE1NTcsOCArMTU1Nyw4IEBAIHN0YXRpYyBjb25z
dCBDU1NQcm9wZXJ0eUlEIGJsb2NrUHJvcGVydGllc1tdID0gewogICAgIENTU1Byb3BlcnR5UGFn
ZUJyZWFrQmVmb3JlLAogICAgIENTU1Byb3BlcnR5UGFnZUJyZWFrSW5zaWRlLAogICAgIENTU1By
b3BlcnR5VGV4dEFsaWduLAorICAgIENTU1Byb3BlcnR5VGV4dEFsaWduTGFzdCwKICNpZiBFTkFC
TEUoQ1NTM19URVhUKQotICAgIENTU1Byb3BlcnR5V2Via2l0VGV4dEFsaWduTGFzdCwKICAgICBD
U1NQcm9wZXJ0eVdlYmtpdFRleHRKdXN0aWZ5LAogI2VuZGlmIC8vIENTUzNfVEVYVAogICAgIENT
U1Byb3BlcnR5VGV4dEluZGVudCwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJz
ZXIvQ1NTUGFyc2VyRmFzdFBhdGhzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NT
UGFyc2VyRmFzdFBhdGhzLmNwcAppbmRleCBiODYzNDZmNGEyOTY3NDI2NDMxMWQ2ZmU1ZjM5ODkz
NDE4NTQ3NzQxLi5mMTY3NzdkZTZjYzE3OTIzMjcyZTczNDFmMjIxMzU3NzBkODgwZjY4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1BhcnNlckZhc3RQYXRocy5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQYXJzZXJGYXN0UGF0aHMuY3BwCkBA
IC03MTMsMTEgKzcxMyw5IEBAIGJvb2wgQ1NTUGFyc2VyRmFzdFBhdGhzOjppc1ZhbGlkS2V5d29y
ZFByb3BlcnR5QW5kVmFsdWUoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlkCiAgICAgICAgIHJldHVy
biB2YWx1ZUlEID09IENTU1ZhbHVlQXV0byB8fCB2YWx1ZUlEID09IENTU1ZhbHVlRml4ZWQ7CiAg
ICAgY2FzZSBDU1NQcm9wZXJ0eVRleHRBbGlnbjoKICAgICAgICAgcmV0dXJuICh2YWx1ZUlEID49
IENTU1ZhbHVlV2Via2l0QXV0byAmJiB2YWx1ZUlEIDw9IENTU1ZhbHVlV2Via2l0TWF0Y2hQYXJl
bnQpIHx8IHZhbHVlSUQgPT0gQ1NTVmFsdWVTdGFydCB8fCB2YWx1ZUlEID09IENTU1ZhbHVlRW5k
OwotI2lmIEVOQUJMRShDU1MzX1RFWFQpCi0gICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdFRleHRB
bGlnbkxhc3Q6CisgICAgY2FzZSBDU1NQcm9wZXJ0eVRleHRBbGlnbkxhc3Q6CiAgICAgICAgIC8v
IGF1dG8gfCBzdGFydCB8IGVuZCB8IGxlZnQgfCByaWdodCB8IGNlbnRlciB8IGp1c3RpZnkKLSAg
ICAgICAgcmV0dXJuICh2YWx1ZUlEID49IENTU1ZhbHVlTGVmdCAmJiB2YWx1ZUlEIDw9IENTU1Zh
bHVlSnVzdGlmeSkgfHwgdmFsdWVJRCA9PSBDU1NWYWx1ZVN0YXJ0IHx8IHZhbHVlSUQgPT0gQ1NT
VmFsdWVFbmQgfHwgdmFsdWVJRCA9PSBDU1NWYWx1ZUF1dG87Ci0jZW5kaWYKKyAgICAgICAgcmV0
dXJuICh2YWx1ZUlEID49IENTU1ZhbHVlTGVmdCAmJiB2YWx1ZUlEIDw9IENTU1ZhbHVlSnVzdGlm
eSkgfHwgdmFsdWVJRCA9PSBDU1NWYWx1ZVN0YXJ0IHx8IHZhbHVlSUQgPT0gQ1NTVmFsdWVFbmQg
fHwgdmFsdWVJRCA9PSBDU1NWYWx1ZUF1dG8gfHwgdmFsdWVJRCA9PSBDU1NWYWx1ZU1hdGNoUGFy
ZW50OwogICAgIGNhc2UgQ1NTUHJvcGVydHlUZXh0QW5jaG9yOgogICAgICAgICByZXR1cm4gdmFs
dWVJRCA9PSBDU1NWYWx1ZVN0YXJ0IHx8IHZhbHVlSUQgPT0gQ1NTVmFsdWVNaWRkbGUgfHwgdmFs
dWVJRCA9PSBDU1NWYWx1ZUVuZDsKIC8vIEZJWE1FLU5FV1BBUlNFUjogU3VwcG9ydApAQCAtOTUz
LDYgKzk1MSw3IEBAIGJvb2wgQ1NTUGFyc2VyRmFzdFBhdGhzOjppc0tleXdvcmRQcm9wZXJ0eUlE
KENTU1Byb3BlcnR5SUQgcHJvcGVydHlJZCkKICAgICBjYXNlIENTU1Byb3BlcnR5UmVzaXplOgog
ICAgIGNhc2UgQ1NTUHJvcGVydHlUYWJsZUxheW91dDoKICAgICBjYXNlIENTU1Byb3BlcnR5VGV4
dEFsaWduOgorICAgIGNhc2UgQ1NTUHJvcGVydHlUZXh0QWxpZ25MYXN0OgogICAgIGNhc2UgQ1NT
UHJvcGVydHlUZXh0T3JpZW50YXRpb246CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVRleHRPdmVyZmxv
dzoKICAgICBjYXNlIENTU1Byb3BlcnR5VGV4dFJlbmRlcmluZzoKQEAgLTEwMjIsNyArMTAyMSw2
IEBAIGJvb2wgQ1NTUGFyc2VyRmFzdFBhdGhzOjppc0tleXdvcmRQcm9wZXJ0eUlEKENTU1Byb3Bl
cnR5SUQgcHJvcGVydHlJZCkKICAgICAvLyBjYXNlIENTU1Byb3BlcnR5SHlwaGVuczoKICAgICAv
LyBjYXNlIENTU1Byb3BlcnR5T3ZlcmZsb3dBbmNob3I6CiAgICAgLy8gY2FzZSBDU1NQcm9wZXJ0
eVNjcm9sbFNuYXBUeXBlOgotICAgIC8vIGNhc2UgQ1NTUHJvcGVydHlUZXh0QWxpZ25MYXN0Ogog
ICAgIC8vIGNhc2UgQ1NTUHJvcGVydHlUZXh0Q29tYmluZVVwcmlnaHQ6CiAgICAgLy8gY2FzZSBD
U1NQcm9wZXJ0eVRleHREZWNvcmF0aW9uU3R5bGU6CiAgICAgLy8gY2FzZSBDU1NQcm9wZXJ0eVRl
eHRKdXN0aWZ5OgpAQCAtMTA0NCw3ICsxMDQyLDYgQEAgYm9vbCBDU1NQYXJzZXJGYXN0UGF0aHM6
OmlzS2V5d29yZFByb3BlcnR5SUQoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlkKQogICAgIGNhc2Ug
Q1NTUHJvcGVydHlXZWJraXRPdmVyZmxvd1Njcm9sbGluZzoKICNlbmRpZgogI2lmIEVOQUJMRShD
U1MzX1RFWFQpCi0gICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdFRleHRBbGlnbkxhc3Q6CiAgICAg
Y2FzZSBDU1NQcm9wZXJ0eVdlYmtpdFRleHRKdXN0aWZ5OgogI2VuZGlmCiAjaWYgUExBVEZPUk0o
SU9TX0ZBTUlMWSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9S
ZW5kZXJTdHlsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5
bGUuY3BwCmluZGV4IGQ4ODA2NDNmMmI4NzQ4YTQ1NGE5MmM4NWMwOTRjMTAzMGRiMTliZWIuLjZk
YWU2MWYwODI2OTk0N2M0ZGU0MmE5ZjE4MzZiNmU0MzlkYzMyYmQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcApAQCAtNzY0LDggKzc2NCw4IEBA
IHN0YXRpYyBib29sIHJhcmVJbmhlcml0ZWREYXRhQ2hhbmdlUmVxdWlyZXNMYXlvdXQoY29uc3Qg
U3R5bGVSYXJlSW5oZXJpdGVkRGF0YSYKICAgICBBU1NFUlQoJmZpcnN0ICE9ICZzZWNvbmQpOwog
CiAgICAgaWYgKGZpcnN0LmluZGVudCAhPSBzZWNvbmQuaW5kZW50Ci0jaWYgRU5BQkxFKENTUzNf
VEVYVCkKICAgICAgICAgfHwgZmlyc3QudGV4dEFsaWduTGFzdCAhPSBzZWNvbmQudGV4dEFsaWdu
TGFzdAorI2lmIEVOQUJMRShDU1MzX1RFWFQpCiAgICAgICAgIHx8IGZpcnN0LnRleHRKdXN0aWZ5
ICE9IHNlY29uZC50ZXh0SnVzdGlmeQogI2VuZGlmCiAgICAgICAgIHx8IGZpcnN0LnRleHRJbmRl
bnRMaW5lICE9IHNlY29uZC50ZXh0SW5kZW50TGluZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvUmVuZGVyU3R5bGUuaAppbmRleCA3MzJjNDg3MTYxNGZlMDU0M2E0NDg5YThhZjNm
N2JjMzZiNGI3YzYzLi4xOGMyMDVhNGFhOTZjMjk0YjY2Zjk0NzhjYTIyMzIzZTQ5YTViZTk5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaApAQCAtMzcw
LDYgKzM3MCw3IEBAIHB1YmxpYzoKIAogICAgIGNvbnN0IExlbmd0aCYgdGV4dEluZGVudCgpIGNv
bnN0IHsgcmV0dXJuIG1fcmFyZUluaGVyaXRlZERhdGEtPmluZGVudDsgfQogICAgIFRleHRBbGln
bk1vZGUgdGV4dEFsaWduKCkgY29uc3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8VGV4dEFsaWduTW9k
ZT4obV9pbmhlcml0ZWRGbGFncy50ZXh0QWxpZ24pOyB9CisgICAgVGV4dEFsaWduTGFzdCB0ZXh0
QWxpZ25MYXN0KCkgY29uc3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8VGV4dEFsaWduTGFzdD4obV9y
YXJlSW5oZXJpdGVkRGF0YS0+dGV4dEFsaWduTGFzdCk7IH0KICAgICBUZXh0VHJhbnNmb3JtIHRl
eHRUcmFuc2Zvcm0oKSBjb25zdCB7IHJldHVybiBzdGF0aWNfY2FzdDxUZXh0VHJhbnNmb3JtPiht
X2luaGVyaXRlZEZsYWdzLnRleHRUcmFuc2Zvcm0pOyB9CiAgICAgT3B0aW9uU2V0PFRleHREZWNv
cmF0aW9uTGluZT4gdGV4dERlY29yYXRpb25zSW5FZmZlY3QoKSBjb25zdCB7IHJldHVybiBPcHRp
b25TZXQ8VGV4dERlY29yYXRpb25MaW5lPjo6ZnJvbVJhdyhtX2luaGVyaXRlZEZsYWdzLnRleHRE
ZWNvcmF0aW9ucyk7IH0KICAgICBPcHRpb25TZXQ8VGV4dERlY29yYXRpb25MaW5lPiB0ZXh0RGVj
b3JhdGlvbigpIGNvbnN0IHsgcmV0dXJuIE9wdGlvblNldDxUZXh0RGVjb3JhdGlvbkxpbmU+Ojpm
cm9tUmF3KG1fdmlzdWFsRGF0YS0+dGV4dERlY29yYXRpb24pOyB9CkBAIC0zODIsNyArMzgzLDYg
QEAgcHVibGljOgogICAgIFRleHRJbmRlbnRMaW5lIHRleHRJbmRlbnRMaW5lKCkgY29uc3QgeyBy
ZXR1cm4gc3RhdGljX2Nhc3Q8VGV4dEluZGVudExpbmU+KG1fcmFyZUluaGVyaXRlZERhdGEtPnRl
eHRJbmRlbnRMaW5lKTsgfQogICAgIFRleHRJbmRlbnRUeXBlIHRleHRJbmRlbnRUeXBlKCkgY29u
c3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8VGV4dEluZGVudFR5cGU+KG1fcmFyZUluaGVyaXRlZERh
dGEtPnRleHRJbmRlbnRUeXBlKTsgfQogI2lmIEVOQUJMRShDU1MzX1RFWFQpCi0gICAgVGV4dEFs
aWduTGFzdCB0ZXh0QWxpZ25MYXN0KCkgY29uc3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8VGV4dEFs
aWduTGFzdD4obV9yYXJlSW5oZXJpdGVkRGF0YS0+dGV4dEFsaWduTGFzdCk7IH0KICAgICBUZXh0
SnVzdGlmeSB0ZXh0SnVzdGlmeSgpIGNvbnN0IHsgcmV0dXJuIHN0YXRpY19jYXN0PFRleHRKdXN0
aWZ5PihtX3JhcmVJbmhlcml0ZWREYXRhLT50ZXh0SnVzdGlmeSk7IH0KICNlbmRpZgogCkBAIC05
ODcsNiArOTg3LDcgQEAgcHVibGljOgogICAgIHZvaWQgc2V0Q29sb3IoY29uc3QgQ29sb3ImKTsK
ICAgICB2b2lkIHNldFRleHRJbmRlbnQoTGVuZ3RoJiYgbGVuZ3RoKSB7IFNFVF9WQVIobV9yYXJl
SW5oZXJpdGVkRGF0YSwgaW5kZW50LCBXVEZNb3ZlKGxlbmd0aCkpOyB9CiAgICAgdm9pZCBzZXRU
ZXh0QWxpZ24oVGV4dEFsaWduTW9kZSB2KSB7IG1faW5oZXJpdGVkRmxhZ3MudGV4dEFsaWduID0g
c3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHYpOyB9CisgICAgdm9pZCBzZXRUZXh0QWxpZ25MYXN0KFRl
eHRBbGlnbkxhc3QgdikgeyBTRVRfVkFSKG1fcmFyZUluaGVyaXRlZERhdGEsIHRleHRBbGlnbkxh
c3QsIHN0YXRpY19jYXN0PHVuc2lnbmVkPih2KSk7IH0KICAgICB2b2lkIHNldFRleHRUcmFuc2Zv
cm0oVGV4dFRyYW5zZm9ybSB2KSB7IG1faW5oZXJpdGVkRmxhZ3MudGV4dFRyYW5zZm9ybSA9IHN0
YXRpY19jYXN0PHVuc2lnbmVkPih2KTsgfQogICAgIHZvaWQgYWRkVG9UZXh0RGVjb3JhdGlvbnNJ
bkVmZmVjdChPcHRpb25TZXQ8VGV4dERlY29yYXRpb25MaW5lPiB2KSB7IG1faW5oZXJpdGVkRmxh
Z3MudGV4dERlY29yYXRpb25zIHw9IHN0YXRpY19jYXN0PHVuc2lnbmVkPih2LnRvUmF3KCkpOyB9
CiAgICAgdm9pZCBzZXRUZXh0RGVjb3JhdGlvbnNJbkVmZmVjdChPcHRpb25TZXQ8VGV4dERlY29y
YXRpb25MaW5lPiB2KSB7IG1faW5oZXJpdGVkRmxhZ3MudGV4dERlY29yYXRpb25zID0gdi50b1Jh
dygpOyB9CkBAIC0xMDA3LDcgKzEwMDgsNiBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRUZXh0SW5k
ZW50TGluZShUZXh0SW5kZW50TGluZSB2KSB7IFNFVF9WQVIobV9yYXJlSW5oZXJpdGVkRGF0YSwg
dGV4dEluZGVudExpbmUsIHN0YXRpY19jYXN0PHVuc2lnbmVkPih2KSk7IH0KICAgICB2b2lkIHNl
dFRleHRJbmRlbnRUeXBlKFRleHRJbmRlbnRUeXBlIHYpIHsgU0VUX1ZBUihtX3JhcmVJbmhlcml0
ZWREYXRhLCB0ZXh0SW5kZW50VHlwZSwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHYpKTsgfQogI2lm
IEVOQUJMRShDU1MzX1RFWFQpCi0gICAgdm9pZCBzZXRUZXh0QWxpZ25MYXN0KFRleHRBbGlnbkxh
c3QgdikgeyBTRVRfVkFSKG1fcmFyZUluaGVyaXRlZERhdGEsIHRleHRBbGlnbkxhc3QsIHN0YXRp
Y19jYXN0PHVuc2lnbmVkPih2KSk7IH0KICAgICB2b2lkIHNldFRleHRKdXN0aWZ5KFRleHRKdXN0
aWZ5IHYpIHsgU0VUX1ZBUihtX3JhcmVJbmhlcml0ZWREYXRhLCB0ZXh0SnVzdGlmeSwgc3RhdGlj
X2Nhc3Q8dW5zaWduZWQ+KHYpKTsgfQogI2VuZGlmCiAKQEAgLTE2MTcsNiArMTYxNyw3IEBAIHB1
YmxpYzoKICAgICAvLyBSZXR1cm5pbmcgLTEwMCUgcGVyY2VudCBoZXJlIG1lYW5zIHRoZSBsaW5l
LWhlaWdodCBpcyBub3Qgc2V0LgogICAgIHN0YXRpYyBMZW5ndGggaW5pdGlhbExpbmVIZWlnaHQo
KSB7IHJldHVybiBMZW5ndGgoLTEwMC4wZiwgTGVuZ3RoVHlwZTo6UGVyY2VudCk7IH0KICAgICBz
dGF0aWMgVGV4dEFsaWduTW9kZSBpbml0aWFsVGV4dEFsaWduKCkgeyByZXR1cm4gVGV4dEFsaWdu
TW9kZTo6U3RhcnQ7IH0KKyAgICBzdGF0aWMgVGV4dEFsaWduTGFzdCBpbml0aWFsVGV4dEFsaWdu
TGFzdCgpIHsgcmV0dXJuIFRleHRBbGlnbkxhc3Q6OkF1dG87IH0KICAgICBzdGF0aWMgT3B0aW9u
U2V0PFRleHREZWNvcmF0aW9uTGluZT4gaW5pdGlhbFRleHREZWNvcmF0aW9uKCkgeyByZXR1cm4g
T3B0aW9uU2V0PFRleHREZWNvcmF0aW9uTGluZT4geyB9OyB9CiAgICAgc3RhdGljIFRleHREZWNv
cmF0aW9uU3R5bGUgaW5pdGlhbFRleHREZWNvcmF0aW9uU3R5bGUoKSB7IHJldHVybiBUZXh0RGVj
b3JhdGlvblN0eWxlOjpTb2xpZDsgfQogICAgIHN0YXRpYyBUZXh0RGVjb3JhdGlvblNraXBJbmsg
aW5pdGlhbFRleHREZWNvcmF0aW9uU2tpcEluaygpIHsgcmV0dXJuIFRleHREZWNvcmF0aW9uU2tp
cEluazo6QXV0bzsgfQpAQCAtMTcyNCw3ICsxNzI1LDYgQEAgcHVibGljOgogICAgIHN0YXRpYyBU
ZXh0SW5kZW50TGluZSBpbml0aWFsVGV4dEluZGVudExpbmUoKSB7IHJldHVybiBUZXh0SW5kZW50
TGluZTo6Rmlyc3RMaW5lOyB9CiAgICAgc3RhdGljIFRleHRJbmRlbnRUeXBlIGluaXRpYWxUZXh0
SW5kZW50VHlwZSgpIHsgcmV0dXJuIFRleHRJbmRlbnRUeXBlOjpOb3JtYWw7IH0KICNpZiBFTkFC
TEUoQ1NTM19URVhUKQotICAgIHN0YXRpYyBUZXh0QWxpZ25MYXN0IGluaXRpYWxUZXh0QWxpZ25M
YXN0KCkgeyByZXR1cm4gVGV4dEFsaWduTGFzdDo6QXV0bzsgfQogICAgIHN0YXRpYyBUZXh0SnVz
dGlmeSBpbml0aWFsVGV4dEp1c3RpZnkoKSB7IHJldHVybiBUZXh0SnVzdGlmeTo6QXV0bzsgfQog
I2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5k
ZXJTdHlsZUNvbnN0YW50cy5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRl
clN0eWxlQ29uc3RhbnRzLmgKaW5kZXggMzg5YmE4ZjY1NDMyOTZhMWIwYzc0ZTUwNWZhNzQ5N2Y3
Njk4MzgxNy4uOWU2MjQ5ZmUxODA2MTQxYTU1ZDFmY2IxYTNmYjk3MmU0ZGU4ZWQxZCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRz
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3Rh
bnRzLmgKQEAgLTc1Nyw3ICs3NTcsNiBAQCBlbnVtIGNsYXNzIFRleHREZWNvcmF0aW9uU3R5bGUg
OiB1aW50OF90IHsKICAgICBXYXZ5CiB9OwogCi0jaWYgRU5BQkxFKENTUzNfVEVYVCkKIGVudW0g
Y2xhc3MgVGV4dEFsaWduTGFzdCA6IHVpbnQ4X3QgewogICAgIEF1dG8sCiAgICAgU3RhcnQsCkBA
IC03NjgsNiArNzY3LDcgQEAgZW51bSBjbGFzcyBUZXh0QWxpZ25MYXN0IDogdWludDhfdCB7CiAg
ICAgSnVzdGlmeQogfTsKIAorI2lmIEVOQUJMRShDU1MzX1RFWFQpCiBlbnVtIGNsYXNzIFRleHRK
dXN0aWZ5IDogdWludDhfdCB7CiAgICAgQXV0bywKICAgICBOb25lLApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZUluaGVyaXRlZERhdGEuY3BwIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZUluaGVyaXRlZERhdGEuY3Bw
CmluZGV4IDFlN2JmZjIyMGRjZjMzN2FmZTNhZWU4ODQ1OTM0ZGRlYWYwMWEwNDkuLjE4YWE4YzNk
N2MzMTE0ZTc1Y2RiY2UwMWUwNjRhOTNhMDEyZTRmNWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5jcHAKQEAg
LTExNSw4ICsxMTUsOCBAQCBTdHlsZVJhcmVJbmhlcml0ZWREYXRhOjpTdHlsZVJhcmVJbmhlcml0
ZWREYXRhKCkKICAgICAsIGltYWdlUmVzb2x1dGlvblNvdXJjZShSZW5kZXJTdHlsZTo6aW5pdGlh
bEltYWdlUmVzb2x1dGlvblNvdXJjZSgpKQogICAgICwgaW1hZ2VSZXNvbHV0aW9uU25hcChSZW5k
ZXJTdHlsZTo6aW5pdGlhbEltYWdlUmVzb2x1dGlvblNuYXAoKSkKICNlbmRpZgotI2lmIEVOQUJM
RShDU1MzX1RFWFQpCiAgICAgLCB0ZXh0QWxpZ25MYXN0KHN0YXRpY19jYXN0PHVuc2lnbmVkPihS
ZW5kZXJTdHlsZTo6aW5pdGlhbFRleHRBbGlnbkxhc3QoKSkpCisjaWYgRU5BQkxFKENTUzNfVEVY
VCkKICAgICAsIHRleHRKdXN0aWZ5KHN0YXRpY19jYXN0PHVuc2lnbmVkPihSZW5kZXJTdHlsZTo6
aW5pdGlhbFRleHRKdXN0aWZ5KCkpKQogI2VuZGlmCiAgICAgLCB0ZXh0RGVjb3JhdGlvblNraXBJ
bmsoc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KFJlbmRlclN0eWxlOjppbml0aWFsVGV4dERlY29yYXRp
b25Ta2lwSW5rKCkpKQpAQCAtMjE1LDggKzIxNSw4IEBAIGlubGluZSBTdHlsZVJhcmVJbmhlcml0
ZWREYXRhOjpTdHlsZVJhcmVJbmhlcml0ZWREYXRhKGNvbnN0IFN0eWxlUmFyZUluaGVyaXRlZERh
CiAgICAgLCBpbWFnZVJlc29sdXRpb25Tb3VyY2Uoby5pbWFnZVJlc29sdXRpb25Tb3VyY2UpCiAg
ICAgLCBpbWFnZVJlc29sdXRpb25TbmFwKG8uaW1hZ2VSZXNvbHV0aW9uU25hcCkKICNlbmRpZgot
I2lmIEVOQUJMRShDU1MzX1RFWFQpCiAgICAgLCB0ZXh0QWxpZ25MYXN0KG8udGV4dEFsaWduTGFz
dCkKKyNpZiBFTkFCTEUoQ1NTM19URVhUKQogICAgICwgdGV4dEp1c3RpZnkoby50ZXh0SnVzdGlm
eSkKICNlbmRpZgogICAgICwgdGV4dERlY29yYXRpb25Ta2lwSW5rKG8udGV4dERlY29yYXRpb25T
a2lwSW5rKQpAQCAtMzQzLDggKzM0Myw4IEBAIGJvb2wgU3R5bGVSYXJlSW5oZXJpdGVkRGF0YTo6
b3BlcmF0b3I9PShjb25zdCBTdHlsZVJhcmVJbmhlcml0ZWREYXRhJiBvKSBjb25zdAogICAgICAg
ICAmJiBpbWFnZVJlc29sdXRpb25TbmFwID09IG8uaW1hZ2VSZXNvbHV0aW9uU25hcAogICAgICAg
ICAmJiBpbWFnZVJlc29sdXRpb24gPT0gby5pbWFnZVJlc29sdXRpb24KICNlbmRpZgotI2lmIEVO
QUJMRShDU1MzX1RFWFQpCiAgICAgICAgICYmIHRleHRBbGlnbkxhc3QgPT0gby50ZXh0QWxpZ25M
YXN0CisjaWYgRU5BQkxFKENTUzNfVEVYVCkKICAgICAgICAgJiYgdGV4dEp1c3RpZnkgPT0gby50
ZXh0SnVzdGlmeQogI2VuZGlmIC8vIENTUzNfVEVYVAogICAgICAgICAmJiB0ZXh0RGVjb3JhdGlv
blNraXBJbmsgPT0gby50ZXh0RGVjb3JhdGlvblNraXBJbmsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmggYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5oCmluZGV4IDA5
M2EyNWQyMGFmNjhlODdmYTczNGZkMmJkYzNlMWIzOWNkNjVlODguLjNjZTk1MzgxOWJhNzc1M2Nk
NTk1YWZhNGY5ZDZkMDM5YWZkMmI0ODggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZUluaGVyaXRlZERhdGEuaApAQCAtMTM3LDggKzEzNyw4
IEBAIHB1YmxpYzoKICAgICB1bnNpZ25lZCBpbWFnZVJlc29sdXRpb25Tb3VyY2UgOiAxOyAvLyBJ
bWFnZVJlc29sdXRpb25Tb3VyY2UKICAgICB1bnNpZ25lZCBpbWFnZVJlc29sdXRpb25TbmFwIDog
MTsgLy8gSW1hZ2VSZXNvbHV0aW9uU25hcAogI2VuZGlmCi0jaWYgRU5BQkxFKENTUzNfVEVYVCkK
ICAgICB1bnNpZ25lZCB0ZXh0QWxpZ25MYXN0IDogMzsgLy8gVGV4dEFsaWduTGFzdAorI2lmIEVO
QUJMRShDU1MzX1RFWFQpCiAgICAgdW5zaWduZWQgdGV4dEp1c3RpZnkgOiAyOyAvLyBUZXh0SnVz
dGlmeQogI2VuZGlmCiAgICAgdW5zaWduZWQgdGV4dERlY29yYXRpb25Ta2lwSW5rIDogMjsgLy8g
VGV4dERlY29yYXRpb25Ta2lwSW5rCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9T
dHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRl
ckNvbnZlcnRlci5oCmluZGV4IDcyNjhiNGQ4MjEyMDJjMzdlZWMyMTM0MmExNmQ4OWQzYTA3ZThk
NjYuLjJhYzNmODRiYjlkMjQzNmNlMjg1OWY1NDM5YzEwZTZjOWM1N2FhMGEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oCkBAIC0xMDAsNiArMTAwLDcg
QEAgcHVibGljOgogICAgIHN0YXRpYyBTdHJpbmcgY29udmVydFN0cmluZ09yTm9uZShCdWlsZGVy
U3RhdGUmLCBjb25zdCBDU1NWYWx1ZSYpOwogICAgIHN0YXRpYyBPcHRpb25TZXQ8VGV4dEVtcGhh
c2lzUG9zaXRpb24+IGNvbnZlcnRUZXh0RW1waGFzaXNQb3NpdGlvbihCdWlsZGVyU3RhdGUmLCBj
b25zdCBDU1NWYWx1ZSYpOwogICAgIHN0YXRpYyBUZXh0QWxpZ25Nb2RlIGNvbnZlcnRUZXh0QWxp
Z24oQnVpbGRlclN0YXRlJiwgY29uc3QgQ1NTVmFsdWUmKTsKKyAgICBzdGF0aWMgVGV4dEFsaWdu
TGFzdCBjb252ZXJ0VGV4dEFsaWduTGFzdChCdWlsZGVyU3RhdGUmLCBjb25zdCBDU1NWYWx1ZSYp
OwogICAgIHN0YXRpYyBSZWZQdHI8UGF0aE9wZXJhdGlvbj4gY29udmVydFBhdGhPcGVyYXRpb24o
QnVpbGRlclN0YXRlJiwgY29uc3QgQ1NTVmFsdWUmKTsKICAgICBzdGF0aWMgUmVzaXplIGNvbnZl
cnRSZXNpemUoQnVpbGRlclN0YXRlJiwgY29uc3QgQ1NTVmFsdWUmKTsKICAgICBzdGF0aWMgaW50
IGNvbnZlcnRNYXJxdWVlUmVwZXRpdGlvbihCdWlsZGVyU3RhdGUmLCBjb25zdCBDU1NWYWx1ZSYp
OwpAQCAtNjIzLDYgKzYyNCwyMiBAQCBpbmxpbmUgVGV4dEFsaWduTW9kZSBCdWlsZGVyQ29udmVy
dGVyOjpjb252ZXJ0VGV4dEFsaWduKEJ1aWxkZXJTdGF0ZSYgYnVpbGRlclN0YQogICAgIHJldHVy
biBwYXJlbnRTdHlsZS50ZXh0QWxpZ24oKTsKIH0KIAoraW5saW5lIFRleHRBbGlnbkxhc3QgQnVp
bGRlckNvbnZlcnRlcjo6Y29udmVydFRleHRBbGlnbkxhc3QoQnVpbGRlclN0YXRlJiBidWlsZGVy
U3RhdGUsIGNvbnN0IENTU1ZhbHVlJiB2YWx1ZSkKK3sKKyAgICBhdXRvJiBwcmltaXRpdmVWYWx1
ZSA9IGRvd25jYXN0PENTU1ByaW1pdGl2ZVZhbHVlPih2YWx1ZSk7CisgICAgQVNTRVJUKHByaW1p
dGl2ZVZhbHVlLmlzVmFsdWVJRCgpKTsKKworICAgIGlmIChwcmltaXRpdmVWYWx1ZS52YWx1ZUlE
KCkgIT0gQ1NTVmFsdWVNYXRjaFBhcmVudCkKKyAgICAgICAgcmV0dXJuIHByaW1pdGl2ZVZhbHVl
OworCisgICAgYXV0byYgcGFyZW50U3R5bGUgPSBidWlsZGVyU3RhdGUucGFyZW50U3R5bGUoKTsK
KyAgICBpZiAocGFyZW50U3R5bGUudGV4dEFsaWduTGFzdCgpID09IFRleHRBbGlnbkxhc3Q6OlN0
YXJ0KQorICAgICAgICByZXR1cm4gcGFyZW50U3R5bGUuaXNMZWZ0VG9SaWdodERpcmVjdGlvbigp
ID8gVGV4dEFsaWduTGFzdDo6TGVmdCA6IFRleHRBbGlnbkxhc3Q6OlJpZ2h0OworICAgIGlmIChw
YXJlbnRTdHlsZS50ZXh0QWxpZ25MYXN0KCkgPT0gVGV4dEFsaWduTGFzdDo6RW5kKQorICAgICAg
ICByZXR1cm4gcGFyZW50U3R5bGUuaXNMZWZ0VG9SaWdodERpcmVjdGlvbigpID8gVGV4dEFsaWdu
TGFzdDo6UmlnaHQgOiBUZXh0QWxpZ25MYXN0OjpMZWZ0OworICAgIHJldHVybiBwYXJlbnRTdHls
ZS50ZXh0QWxpZ25MYXN0KCk7Cit9CisKIGlubGluZSBSZWZQdHI8UGF0aE9wZXJhdGlvbj4gQnVp
bGRlckNvbnZlcnRlcjo6Y29udmVydFBhdGhPcGVyYXRpb24oQnVpbGRlclN0YXRlJiBidWlsZGVy
U3RhdGUsIGNvbnN0IENTU1ZhbHVlJiB2YWx1ZSkKIHsKICAgICBpZiAoaXM8Q1NTUHJpbWl0aXZl
VmFsdWU+KHZhbHVlKSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVC
dWlsZGVyQ3VzdG9tLmggYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXJDdXN0b20u
aAppbmRleCA5ZWUzYTQyNzc4NzMyYzVlYTNkYjVjYjViNjRjMDNhMjI0ZjlmMWM5Li44Y2JlZjA3
ODU2NjU4NDA5MDJiYjU2YzU1ZTczNjg5Zjc5M2UxNGFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9zdHlsZS9TdHlsZUJ1aWxkZXJDdXN0b20uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHls
ZS9TdHlsZUJ1aWxkZXJDdXN0b20uaApAQCAtMTQzLDYgKzE0Myw4IEBAIHB1YmxpYzoKICAgICBz
dGF0aWMgdm9pZCBhcHBseVZhbHVlVmVydGljYWxBbGlnbihCdWlsZGVyU3RhdGUmLCBDU1NWYWx1
ZSYpOwogICAgIHN0YXRpYyB2b2lkIGFwcGx5SW5pdGlhbFRleHRBbGlnbihCdWlsZGVyU3RhdGUm
KTsKICAgICBzdGF0aWMgdm9pZCBhcHBseVZhbHVlVGV4dEFsaWduKEJ1aWxkZXJTdGF0ZSYsIENT
U1ZhbHVlJik7CisgICAgc3RhdGljIHZvaWQgYXBwbHlJbml0aWFsVGV4dEFsaWduTGFzdChCdWls
ZGVyU3RhdGUmKTsKKyAgICBzdGF0aWMgdm9pZCBhcHBseVZhbHVlVGV4dEFsaWduTGFzdChCdWls
ZGVyU3RhdGUmLCBDU1NWYWx1ZSYpOwogICAgIHN0YXRpYyB2b2lkIGFwcGx5VmFsdWVXZWJraXRM
b2NhbGUoQnVpbGRlclN0YXRlJiwgQ1NTVmFsdWUmKTsKICAgICBzdGF0aWMgdm9pZCBhcHBseVZh
bHVlV2Via2l0VGV4dE9yaWVudGF0aW9uKEJ1aWxkZXJTdGF0ZSYsIENTU1ZhbHVlJik7CiAgICAg
c3RhdGljIHZvaWQgYXBwbHlWYWx1ZVRleHRPcmllbnRhdGlvbihCdWlsZGVyU3RhdGUmLCBDU1NW
YWx1ZSYpOwpAQCAtMjA1LDYgKzIwNywxNiBAQCBpbmxpbmUgdm9pZCBCdWlsZGVyQ3VzdG9tOjph
cHBseVZhbHVlVGV4dEFsaWduKEJ1aWxkZXJTdGF0ZSYgYnVpbGRlclN0YXRlLCBDU1NWYQogICAg
IGJ1aWxkZXJTdGF0ZS5zdHlsZSgpLnNldEhhc0V4cGxpY2l0bHlTZXRUZXh0QWxpZ24odHJ1ZSk7
CiB9CiAKK2lubGluZSB2b2lkIEJ1aWxkZXJDdXN0b206OmFwcGx5SW5pdGlhbFRleHRBbGlnbkxh
c3QoQnVpbGRlclN0YXRlJiBidWlsZGVyU3RhdGUpCit7CisgICAgYnVpbGRlclN0YXRlLnN0eWxl
KCkuc2V0VGV4dEFsaWduTGFzdChSZW5kZXJTdHlsZTo6aW5pdGlhbFRleHRBbGlnbkxhc3QoKSk7
Cit9CisKK2lubGluZSB2b2lkIEJ1aWxkZXJDdXN0b206OmFwcGx5VmFsdWVUZXh0QWxpZ25MYXN0
KEJ1aWxkZXJTdGF0ZSYgYnVpbGRlclN0YXRlLCBDU1NWYWx1ZSYgdmFsdWUpCit7CisgICAgYnVp
bGRlclN0YXRlLnN0eWxlKCkuc2V0VGV4dEFsaWduTGFzdChCdWlsZGVyQ29udmVydGVyOjpjb252
ZXJ0VGV4dEFsaWduTGFzdChidWlsZGVyU3RhdGUsIHZhbHVlKSk7Cit9CisKIGlubGluZSB2b2lk
IEJ1aWxkZXJDdXN0b206OnJlc2V0RWZmZWN0aXZlWm9vbShCdWlsZGVyU3RhdGUmIGJ1aWxkZXJT
dGF0ZSkKIHsKICAgICAvLyBSZXNldCB0aGUgem9vbSBpbiBlZmZlY3QuIFRoaXMgYWxsb3dzIHRo
ZSBzZXRab29tIG1ldGhvZCB0byBhY2N1cmF0ZWx5IGNvbXB1dGUgYSBuZXcgem9vbSBpbiBlZmZl
Y3QuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9FeHRl
cm5hbC9DU1NEb2N1bWVudGF0aW9uL0NTU0RvY3VtZW50YXRpb24uanMgYi9Tb3VyY2UvV2ViSW5z
cGVjdG9yVUkvVXNlckludGVyZmFjZS9FeHRlcm5hbC9DU1NEb2N1bWVudGF0aW9uL0NTU0RvY3Vt
ZW50YXRpb24uanMKaW5kZXggZTNhNzY0NTg1NjRiNjNiZTg0Nzg3MjBmODRjZmFjNzNlMmFhNTNj
Mi4uZjhhODE0NzEyY2Y5ZGNhMjAyZWQ1ODE2NDUwMWZmMzA5MTdiYTk5OSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvRXh0ZXJuYWwvQ1NTRG9jdW1lbnRh
dGlvbi9DU1NEb2N1bWVudGF0aW9uLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2Vy
SW50ZXJmYWNlL0V4dGVybmFsL0NTU0RvY3VtZW50YXRpb24vQ1NTRG9jdW1lbnRhdGlvbi5qcwpA
QCAtMjM1Nyw3ICsyMzU3LDcgQEAgQ1NTRG9jdW1lbnRhdGlvbiA9IHsKICAgICB9LAogICAgICJ0
ZXh0LWFsaWduLWxhc3QiOiB7CiAgICAgICAgICJkZXNjcmlwdGlvbiI6ICJEZXNjcmliZXMgaG93
IHRoZSBsYXN0IGxpbmUgb2YgYSBibG9jayBvciBhIGxpbmUgcmlnaHQgYmVmb3JlIGEgZm9yY2Vk
IGxpbmUgYnJlYWsgaXMgYWxpZ25lZCB3aGVuICd0ZXh0LWFsaWduJyBpcyBzZXQgdG8gJ2p1c3Rp
ZnknLiIsCi0gICAgICAgICJzeW50YXgiOiAiYXV0byB8IHN0YXJ0IHwgZW5kIHwgbGVmdCB8IHJp
Z2h0IHwgY2VudGVyIHwganVzdGlmeSIsCisgICAgICAgICJzeW50YXgiOiAiYXV0byB8IHN0YXJ0
IHwgZW5kIHwgbGVmdCB8IHJpZ2h0IHwgY2VudGVyIHwganVzdGlmeSB8IG1hdGNoLXBhcmVudCIs
CiAgICAgICAgICJ1cmwiOiAiaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIv
Q1NTL3RleHQtYWxpZ24tbGFzdCIKICAgICB9LAogICAgICJ0ZXh0LWFuY2hvciI6IHsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9DU1NLZXl3
b3JkQ29tcGxldGlvbnMuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9N
b2RlbHMvQ1NTS2V5d29yZENvbXBsZXRpb25zLmpzCmluZGV4IDkwOWFlOTE2NDE0NzM3NGRlMzU3
ZDZmYzhmNjFlMzJhYjUxOWE3ZjUuLjUzYmM5NGY4NTU2MzQ2NmRlYTEzZDlhNmY4YjE3YzU0Y2I3
OTc2YTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01v
ZGVscy9DU1NLZXl3b3JkQ29tcGxldGlvbnMuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJ
L1VzZXJJbnRlcmZhY2UvTW9kZWxzL0NTU0tleXdvcmRDb21wbGV0aW9ucy5qcwpAQCAtMzk0LDYg
KzM5NCw3IEBAIFdJLkNTU0tleXdvcmRDb21wbGV0aW9ucy5Jbmhlcml0ZWRQcm9wZXJ0aWVzID0g
bmV3IFNldChbCiAgICAgInN0cm9rZS13aWR0aCIsCiAgICAgInRhYi1zaXplIiwKICAgICAidGV4
dC1hbGlnbiIsCisgICAgInRleHQtYWxpZ24tbGFzdCIsCiAgICAgInRleHQtYW5jaG9yIiwKICAg
ICAidGV4dC1pbmRlbnQiLAogICAgICJ0ZXh0LXJlbmRlcmluZyIsCkBAIC0xMzQ4LDYgKzEzNDks
OSBAQCBXSS5DU1NLZXl3b3JkQ29tcGxldGlvbnMuX3Byb3BlcnR5S2V5d29yZE1hcCA9IHsKICAg
ICAidGV4dC1hbGlnbiI6IFsKICAgICAgICAgIi13ZWJraXQtYXV0byIsICJsZWZ0IiwgInJpZ2h0
IiwgImNlbnRlciIsICJqdXN0aWZ5IiwgIm1hdGNoLXBhcmVudCIsICItd2Via2l0LWxlZnQiLCAi
LXdlYmtpdC1yaWdodCIsICItd2Via2l0LWNlbnRlciIsICItd2Via2l0LW1hdGNoLXBhcmVudCIs
ICJzdGFydCIsICJlbmQiLAogICAgIF0sCisgICAgInRleHQtYWxpZ24tbGFzdCI6IFsKKyAgICAg
ICAgImF1dG8iLCAic3RhcnQiLCAiZW5kIiwgImxlZnQiLCAicmlnaHQiLCAiY2VudGVyIiwgImp1
c3RpZnkiLCAibWF0Y2gtcGFyZW50IiwKKyAgICBdLAogICAgICJ0ZXh0LWFuY2hvciI6IFsKICAg
ICAgICAgIm1pZGRsZSIsICJzdGFydCIsICJlbmQiLAogICAgIF0sCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L0NoYW5nZUxvZwppbmRleCBhODRhNzhkMzAxODQ2NGViZWZhODdjNzY5OTFjYzJmN2E4MDBjOTA3
Li44ODEwN2NhMGNkNGI5ODBkN2M4ODI3OGQwOTAxM2VhZjczYjZiZmQ2IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAyMS0xMi0xMCAgQnJlbnQgRnVs
Z2hhbSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgYW4gdW5wcmVmaXhlZCB2
ZXJzaW9uIG9mIC13ZWJraXQtdGV4dC1hbGlnbi1sYXN0CisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjkwODMKKyAgICAgICAgPHJkYXI6Ly84MjE3Njg4
NT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVcGRh
dGUgZXhwZWN0YXRpb25zIHRvIG1hdGNoIG5ldyBwYXNzaW5nIHRlc3RzLgorCisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdGV4dC9pbmhlcml0YW5jZS1leHBlY3RlZC50eHQ6
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdGV4dC9wYXJzaW5nL3RleHQt
YWxpZ24tbGFzdC1jb21wdXRlZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9jc3MtdGV4dC9wYXJzaW5nL3RleHQtYWxpZ24tbGFzdC12YWxpZC1leHBlY3Rl
ZC50eHQ6CisKIDIwMjEtMTItMDkgIEJyZW50IEZ1bGdoYW0gIDxiZnVsZ2hhbUBhcHBsZS5jb20+
CiAKICAgICAgICAgVW5wcmVmaXggQ1NTIHZhbHVlIHRleHQtYWxpZ246IC13ZWJraXQtbWF0Y2gt
cGFyZW50CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9jc3MtdGV4dC9pbmhlcml0YW5jZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdGV4dC9pbmhlcml0YW5j
ZS1leHBlY3RlZC50eHQKaW5kZXggYzhkZmQ0YWY0MzkyYzJjZmUxZjI3NmUzYTFjODA3OTlkMTA1
OTkwYS4uZTdmYzI3NGYyNzEwZjExYWI2MDI1MDQxMDE4OGZkNTNhNzE3NmYyNiAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXRl
eHQvaW5oZXJpdGFuY2UtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy10ZXh0L2luaGVyaXRhbmNlLWV4cGVjdGVkLnR4
dApAQCAtMTMsOCArMTMsOCBAQCBQQVNTIFByb3BlcnR5IHRhYi1zaXplIGhhcyBpbml0aWFsIHZh
bHVlIDgKIFBBU1MgUHJvcGVydHkgdGFiLXNpemUgaW5oZXJpdHMKIEZBSUwgUHJvcGVydHkgdGV4
dC1hbGlnbi1hbGwgaGFzIGluaXRpYWwgdmFsdWUgc3RhcnQgYXNzZXJ0X3RydWU6IHRleHQtYWxp
Z24tYWxsIGRvZXNuJ3Qgc2VlbSB0byBiZSBzdXBwb3J0ZWQgaW4gdGhlIGNvbXB1dGVkIHN0eWxl
IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiBGQUlMIFByb3BlcnR5IHRleHQtYWxpZ24tYWxsIGlu
aGVyaXRzIGFzc2VydF90cnVlOiB0ZXh0LWFsaWduLWFsbCBkb2Vzbid0IHNlZW0gdG8gYmUgc3Vw
cG9ydGVkIGluIHRoZSBjb21wdXRlZCBzdHlsZSBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJ
TCBQcm9wZXJ0eSB0ZXh0LWFsaWduLWxhc3QgaGFzIGluaXRpYWwgdmFsdWUgYXV0byBhc3NlcnRf
dHJ1ZTogdGV4dC1hbGlnbi1sYXN0IGRvZXNuJ3Qgc2VlbSB0byBiZSBzdXBwb3J0ZWQgaW4gdGhl
IGNvbXB1dGVkIHN0eWxlIGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFByb3BlcnR5IHRl
eHQtYWxpZ24tbGFzdCBpbmhlcml0cyBhc3NlcnRfdHJ1ZTogdGV4dC1hbGlnbi1sYXN0IGRvZXNu
J3Qgc2VlbSB0byBiZSBzdXBwb3J0ZWQgaW4gdGhlIGNvbXB1dGVkIHN0eWxlIGV4cGVjdGVkIHRy
dWUgZ290IGZhbHNlCitQQVNTIFByb3BlcnR5IHRleHQtYWxpZ24tbGFzdCBoYXMgaW5pdGlhbCB2
YWx1ZSBhdXRvCitQQVNTIFByb3BlcnR5IHRleHQtYWxpZ24tbGFzdCBpbmhlcml0cwogUEFTUyBQ
cm9wZXJ0eSB0ZXh0LWluZGVudCBoYXMgaW5pdGlhbCB2YWx1ZSAwcHgKIFBBU1MgUHJvcGVydHkg
dGV4dC1pbmRlbnQgaW5oZXJpdHMKIEZBSUwgUHJvcGVydHkgdGV4dC1qdXN0aWZ5IGhhcyBpbml0
aWFsIHZhbHVlIGF1dG8gYXNzZXJ0X3RydWU6IHRleHQtanVzdGlmeSBkb2Vzbid0IHNlZW0gdG8g
YmUgc3VwcG9ydGVkIGluIHRoZSBjb21wdXRlZCBzdHlsZSBleHBlY3RlZCB0cnVlIGdvdCBmYWxz
ZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3MvY3NzLXRleHQvcGFyc2luZy90ZXh0LWFsaWduLWxhc3QtY29tcHV0ZWQtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nz
LXRleHQvcGFyc2luZy90ZXh0LWFsaWduLWxhc3QtY29tcHV0ZWQtZXhwZWN0ZWQudHh0CmluZGV4
IDY2N2IyNjJmZWQwYmY3Mjg1Y2RmMjc1Y2NlNTMwYWM4MzIwZmUxMTIuLmU3ODM0NWI0MjAwOThk
NDdiZWUzMzU4NTU1NzAzMTg4MTM5YzVkYTQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy10ZXh0L3BhcnNpbmcvdGV4dC1hbGln
bi1sYXN0LWNvbXB1dGVkLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdGV4dC9wYXJzaW5nL3RleHQtYWxpZ24tbGFz
dC1jb21wdXRlZC1leHBlY3RlZC50eHQKQEAgLTEsMTAgKzEsMTAgQEAKIAotRkFJTCBQcm9wZXJ0
eSB0ZXh0LWFsaWduLWxhc3QgdmFsdWUgJ2F1dG8nIGFzc2VydF90cnVlOiB0ZXh0LWFsaWduLWxh
c3QgZG9lc24ndCBzZWVtIHRvIGJlIHN1cHBvcnRlZCBpbiB0aGUgY29tcHV0ZWQgc3R5bGUgZXhw
ZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgUHJvcGVydHkgdGV4dC1hbGlnbi1sYXN0IHZhbHVl
ICdzdGFydCcgYXNzZXJ0X3RydWU6IHRleHQtYWxpZ24tbGFzdCBkb2Vzbid0IHNlZW0gdG8gYmUg
c3VwcG9ydGVkIGluIHRoZSBjb21wdXRlZCBzdHlsZSBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQot
RkFJTCBQcm9wZXJ0eSB0ZXh0LWFsaWduLWxhc3QgdmFsdWUgJ2VuZCcgYXNzZXJ0X3RydWU6IHRl
eHQtYWxpZ24tbGFzdCBkb2Vzbid0IHNlZW0gdG8gYmUgc3VwcG9ydGVkIGluIHRoZSBjb21wdXRl
ZCBzdHlsZSBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBQcm9wZXJ0eSB0ZXh0LWFsaWdu
LWxhc3QgdmFsdWUgJ2xlZnQnIGFzc2VydF90cnVlOiB0ZXh0LWFsaWduLWxhc3QgZG9lc24ndCBz
ZWVtIHRvIGJlIHN1cHBvcnRlZCBpbiB0aGUgY29tcHV0ZWQgc3R5bGUgZXhwZWN0ZWQgdHJ1ZSBn
b3QgZmFsc2UKLUZBSUwgUHJvcGVydHkgdGV4dC1hbGlnbi1sYXN0IHZhbHVlICdyaWdodCcgYXNz
ZXJ0X3RydWU6IHRleHQtYWxpZ24tbGFzdCBkb2Vzbid0IHNlZW0gdG8gYmUgc3VwcG9ydGVkIGlu
IHRoZSBjb21wdXRlZCBzdHlsZSBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBQcm9wZXJ0
eSB0ZXh0LWFsaWduLWxhc3QgdmFsdWUgJ2NlbnRlcicgYXNzZXJ0X3RydWU6IHRleHQtYWxpZ24t
bGFzdCBkb2Vzbid0IHNlZW0gdG8gYmUgc3VwcG9ydGVkIGluIHRoZSBjb21wdXRlZCBzdHlsZSBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBQcm9wZXJ0eSB0ZXh0LWFsaWduLWxhc3QgdmFs
dWUgJ2p1c3RpZnknIGFzc2VydF90cnVlOiB0ZXh0LWFsaWduLWxhc3QgZG9lc24ndCBzZWVtIHRv
IGJlIHN1cHBvcnRlZCBpbiB0aGUgY29tcHV0ZWQgc3R5bGUgZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFs
c2UKLUZBSUwgUHJvcGVydHkgdGV4dC1hbGlnbi1sYXN0IHZhbHVlICdtYXRjaC1wYXJlbnQnIGFz
c2VydF90cnVlOiB0ZXh0LWFsaWduLWxhc3QgZG9lc24ndCBzZWVtIHRvIGJlIHN1cHBvcnRlZCBp
biB0aGUgY29tcHV0ZWQgc3R5bGUgZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgUHJvcGVy
dHkgdGV4dC1hbGlnbi1sYXN0IHZhbHVlICdhdXRvJworUEFTUyBQcm9wZXJ0eSB0ZXh0LWFsaWdu
LWxhc3QgdmFsdWUgJ3N0YXJ0JworUEFTUyBQcm9wZXJ0eSB0ZXh0LWFsaWduLWxhc3QgdmFsdWUg
J2VuZCcKK1BBU1MgUHJvcGVydHkgdGV4dC1hbGlnbi1sYXN0IHZhbHVlICdsZWZ0JworUEFTUyBQ
cm9wZXJ0eSB0ZXh0LWFsaWduLWxhc3QgdmFsdWUgJ3JpZ2h0JworUEFTUyBQcm9wZXJ0eSB0ZXh0
LWFsaWduLWxhc3QgdmFsdWUgJ2NlbnRlcicKK1BBU1MgUHJvcGVydHkgdGV4dC1hbGlnbi1sYXN0
IHZhbHVlICdqdXN0aWZ5JworRkFJTCBQcm9wZXJ0eSB0ZXh0LWFsaWduLWxhc3QgdmFsdWUgJ21h
dGNoLXBhcmVudCcgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIm1hdGNoLXBhcmVudCIgYnV0IGdv
dCAiYXV0byIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3MvY3NzLXRleHQvcGFyc2luZy90ZXh0LWFsaWduLWxhc3QtdmFsaWQtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3MvY3NzLXRleHQvcGFyc2luZy90ZXh0LWFsaWduLWxhc3QtdmFsaWQtZXhwZWN0ZWQudHh0Cmlu
ZGV4IDZmODIwOWIwYjJkYjZhZDM5YTAxNWVhNDZmMWUxOGMxYmRkOWQ3NWMuLjU1ZDhiOTU3MDI3
YTcxOTZlNDkyMDg4MDcwOTg2N2YxYzNjMjE3NDQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy10ZXh0L3BhcnNpbmcvdGV4dC1h
bGlnbi1sYXN0LXZhbGlkLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdGV4dC9wYXJzaW5nL3RleHQtYWxpZ24tbGFz
dC12YWxpZC1leHBlY3RlZC50eHQKQEAgLTEsMTAgKzEsMTAgQEAKIAotRkFJTCBlLnN0eWxlWyd0
ZXh0LWFsaWduLWxhc3QnXSA9ICJhdXRvIiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZSBh
c3NlcnRfbm90X2VxdWFsczogcHJvcGVydHkgc2hvdWxkIGJlIHNldCBnb3QgZGlzYWxsb3dlZCB2
YWx1ZSAiIgotRkFJTCBlLnN0eWxlWyd0ZXh0LWFsaWduLWxhc3QnXSA9ICJzdGFydCIgc2hvdWxk
IHNldCB0aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0X25vdF9lcXVhbHM6IHByb3BlcnR5IHNob3Vs
ZCBiZSBzZXQgZ290IGRpc2FsbG93ZWQgdmFsdWUgIiIKLUZBSUwgZS5zdHlsZVsndGV4dC1hbGln
bi1sYXN0J10gPSAiZW5kIiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZSBhc3NlcnRfbm90
X2VxdWFsczogcHJvcGVydHkgc2hvdWxkIGJlIHNldCBnb3QgZGlzYWxsb3dlZCB2YWx1ZSAiIgot
RkFJTCBlLnN0eWxlWyd0ZXh0LWFsaWduLWxhc3QnXSA9ICJsZWZ0IiBzaG91bGQgc2V0IHRoZSBw
cm9wZXJ0eSB2YWx1ZSBhc3NlcnRfbm90X2VxdWFsczogcHJvcGVydHkgc2hvdWxkIGJlIHNldCBn
b3QgZGlzYWxsb3dlZCB2YWx1ZSAiIgotRkFJTCBlLnN0eWxlWyd0ZXh0LWFsaWduLWxhc3QnXSA9
ICJyaWdodCIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUgYXNzZXJ0X25vdF9lcXVhbHM6
IHByb3BlcnR5IHNob3VsZCBiZSBzZXQgZ290IGRpc2FsbG93ZWQgdmFsdWUgIiIKLUZBSUwgZS5z
dHlsZVsndGV4dC1hbGlnbi1sYXN0J10gPSAiY2VudGVyIiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0
eSB2YWx1ZSBhc3NlcnRfbm90X2VxdWFsczogcHJvcGVydHkgc2hvdWxkIGJlIHNldCBnb3QgZGlz
YWxsb3dlZCB2YWx1ZSAiIgotRkFJTCBlLnN0eWxlWyd0ZXh0LWFsaWduLWxhc3QnXSA9ICJqdXN0
aWZ5IiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZSBhc3NlcnRfbm90X2VxdWFsczogcHJv
cGVydHkgc2hvdWxkIGJlIHNldCBnb3QgZGlzYWxsb3dlZCB2YWx1ZSAiIgotRkFJTCBlLnN0eWxl
Wyd0ZXh0LWFsaWduLWxhc3QnXSA9ICJtYXRjaC1wYXJlbnQiIHNob3VsZCBzZXQgdGhlIHByb3Bl
cnR5IHZhbHVlIGFzc2VydF9ub3RfZXF1YWxzOiBwcm9wZXJ0eSBzaG91bGQgYmUgc2V0IGdvdCBk
aXNhbGxvd2VkIHZhbHVlICIiCitQQVNTIGUuc3R5bGVbJ3RleHQtYWxpZ24tbGFzdCddID0gImF1
dG8iIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlCitQQVNTIGUuc3R5bGVbJ3RleHQtYWxp
Z24tbGFzdCddID0gInN0YXJ0IiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZQorUEFTUyBl
LnN0eWxlWyd0ZXh0LWFsaWduLWxhc3QnXSA9ICJlbmQiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5
IHZhbHVlCitQQVNTIGUuc3R5bGVbJ3RleHQtYWxpZ24tbGFzdCddID0gImxlZnQiIHNob3VsZCBz
ZXQgdGhlIHByb3BlcnR5IHZhbHVlCitQQVNTIGUuc3R5bGVbJ3RleHQtYWxpZ24tbGFzdCddID0g
InJpZ2h0IiBzaG91bGQgc2V0IHRoZSBwcm9wZXJ0eSB2YWx1ZQorUEFTUyBlLnN0eWxlWyd0ZXh0
LWFsaWduLWxhc3QnXSA9ICJjZW50ZXIiIHNob3VsZCBzZXQgdGhlIHByb3BlcnR5IHZhbHVlCitQ
QVNTIGUuc3R5bGVbJ3RleHQtYWxpZ24tbGFzdCddID0gImp1c3RpZnkiIHNob3VsZCBzZXQgdGhl
IHByb3BlcnR5IHZhbHVlCitQQVNTIGUuc3R5bGVbJ3RleHQtYWxpZ24tbGFzdCddID0gIm1hdGNo
LXBhcmVudCIgc2hvdWxkIHNldCB0aGUgcHJvcGVydHkgdmFsdWUKIAo=
</data>
<flag name="review"
          id="472297"
          type_id="1"
          status="-"
          setter="ntim"
    />
    <flag name="commit-queue"
          id="472351"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
      

    </bug>

</bugzilla>