<?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>239462</bug_id>
          
          <creation_ts>2022-04-18 12:44:40 -0700</creation_ts>
          <short_desc>Implement CSSTransformValue.is2D</short_desc>
          <delta_ts>2022-04-19 13:23:42 -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>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alex Christensen">achristensen</reporter>
          <assigned_to name="Alex Christensen">achristensen</assigned_to>
          <cc>cdumez</cc>
    
    <cc>darin</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1862297</commentid>
    <comment_count>0</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2022-04-18 12:44:40 -0700</bug_when>
    <thetext>Implement CSSTransformValue.is2D</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1862305</commentid>
    <comment_count>1</comment_count>
      <attachid>457819</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2022-04-18 13:19:02 -0700</bug_when>
    <thetext>Created attachment 457819
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1862342</commentid>
    <comment_count>2</comment_count>
      <attachid>457831</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2022-04-18 15:30:12 -0700</bug_when>
    <thetext>Created attachment 457831
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1862406</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-04-18 19:47:01 -0700</bug_when>
    <thetext>Committed r293005 (249744@main): &lt;https://commits.webkit.org/249744@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 457831.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1862407</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-04-18 19:48:15 -0700</bug_when>
    <thetext>&lt;rdar://problem/91934123&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1862698</commentid>
    <comment_count>5</comment_count>
      <attachid>457831</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2022-04-19 13:23:42 -0700</bug_when>
    <thetext>Comment on attachment 457831
Patch

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

&gt; Source/WebCore/css/typedom/numeric/CSSNumericType.h:80
&gt; +    const std::optional&lt;long&gt;&amp; valueForType(CSSNumericBaseType type) const

This seems like the wrong return type. Should just be std::optional&lt;long&gt;.

&gt; Source/WebCore/css/typedom/transform/CSSPerspective.h:42
&gt; +    static ExceptionOr&lt;Ref&lt;CSSPerspective&gt;&gt; create(CSSPerspectiveValue);

Why pass by value instead of by rvalue reference? I see this change throughout this patch and I don’t understand the rationale. For bindings, I guess both are the same, we will WTFMove from the local to the argument and then from the argument inside the function. But how did you decide this is the preferred style?

&gt; Source/WebCore/css/typedom/transform/CSSTransformComponent.h:53
&gt; +    CSSTransformComponent(Is2D is2D)

explicit

&gt; Source/WebCore/css/typedom/transform/CSSTransformComponent.h:64
&gt; -    bool m_is2D { false };
&gt; +    Is2D m_is2D;

Why change the type of the data member?</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>457819</attachid>
            <date>2022-04-18 13:19:02 -0700</date>
            <delta_ts>2022-04-18 15:30:10 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-239462-20220418131901.patch</filename>
            <type>text/plain</type>
            <size>47895</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkyODkwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzFiYjk0ZDIxYTUyZmNl
ZTcyMDUwMDlkNGFiNzQ5ZTFmMTY1NzJjZS4uZjUyZGIyODZjOWRmODFlYzk0ZjI1ZDg0NjRkZWM1
ZjNlZDc1MmRhMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY4IEBACisyMDIyLTA0LTE4ICBBbGV4
IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgSW1wbGVt
ZW50IENTU1RyYW5zZm9ybVZhbHVlLmlzMkQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIzOTQ2MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFRoaXMgaXMgYW4gb2ZmLWJ5LWRlZmF1bHQgZmVhdHVyZS4KKyAg
ICAgICAgQ292ZXJlZCBieSBXUFQgdGVzdHMuCisKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0NT
U1RyYW5zZm9ybUNvbXBvbmVudEN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0b0pTTmV3
bHlDcmVhdGVkKToKKyAgICAgICAgKiBjc3MvdHlwZWRvbS9DU1NOdW1lcmljVmFsdWUuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6Q1NTTnVtZXJpY1ZhbHVlOjpyZWN0aWZ5TnVtYmVyaXNoKToKKyAg
ICAgICAgKiBjc3MvdHlwZWRvbS9DU1NOdW1lcmljVmFsdWUuaDoKKyAgICAgICAgKiBjc3MvdHlw
ZWRvbS9udW1lcmljL0NTU051bWVyaWNUeXBlLmg6CisgICAgICAgIChXZWJDb3JlOjpDU1NOdW1l
cmljVHlwZTo6dmFsdWVGb3JUeXBlIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkNTU051bWVy
aWNUeXBlOjpub25aZXJvRW50cnlDb3VudCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpDU1NO
dW1lcmljVHlwZTo6bWF0Y2hlcyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpDU1NOdW1lcmlj
VHlwZTo6bWF0Y2hlc051bWJlciBjb25zdCk6CisgICAgICAgICogY3NzL3R5cGVkb20vdHJhbnNm
b3JtL0NTU01hdHJpeENvbXBvbmVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NNYXRyaXhD
b21wb25lbnQ6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NNYXRyaXhDb21wb25lbnQ6
OkNTU01hdHJpeENvbXBvbmVudCk6CisgICAgICAgICogY3NzL3R5cGVkb20vdHJhbnNmb3JtL0NT
U01hdHJpeENvbXBvbmVudC5oOgorICAgICAgICAoV2ViQ29yZTo6Q1NTTWF0cml4Q29tcG9uZW50
OjpjcmVhdGUpOiBEZWxldGVkLgorICAgICAgICAqIGNzcy90eXBlZG9tL3RyYW5zZm9ybS9DU1NN
YXRyaXhDb21wb25lbnQuaWRsOgorICAgICAgICAqIGNzcy90eXBlZG9tL3RyYW5zZm9ybS9DU1NS
b3RhdGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUm90YXRlOjpjcmVhdGUpOgorICAgICAg
ICAoV2ViQ29yZTo6Q1NTUm90YXRlOjpDU1NSb3RhdGUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NT
Um90YXRlOjpzZXRYKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1JvdGF0ZTo6c2V0WSk6CisgICAg
ICAgIChXZWJDb3JlOjpDU1NSb3RhdGU6OnNldFopOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUm90
YXRlOjpzZXRBbmdsZSk6CisgICAgICAgICogY3NzL3R5cGVkb20vdHJhbnNmb3JtL0NTU1JvdGF0
ZS5oOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUm90YXRlOjp4KToKKyAgICAgICAgKFdlYkNvcmU6
OkNTU1JvdGF0ZTo6eSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NSb3RhdGU6OnopOgorICAgICAg
ICAoV2ViQ29yZTo6Q1NTUm90YXRlOjpzZXRYKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6
OkNTU1JvdGF0ZTo6c2V0WSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpDU1NSb3RhdGU6
OnNldFopOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6Q1NTUm90YXRlOjpzZXRBbmdsZSk6
IERlbGV0ZWQuCisgICAgICAgICogY3NzL3R5cGVkb20vdHJhbnNmb3JtL0NTU1NjYWxlLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkNTU1NjYWxlOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6
Q1NTU2NhbGU6OkNTU1NjYWxlKToKKyAgICAgICAgKiBjc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NT
U2NhbGUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1NjYWxlOjp4IGNvbnN0KToKKyAgICAgICAg
KFdlYkNvcmU6OkNTU1NjYWxlOjp5IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1NjYWxl
Ojp6IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1NjYWxlOjp4KTogRGVsZXRlZC4KKyAg
ICAgICAgKFdlYkNvcmU6OkNTU1NjYWxlOjp5KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6
OkNTU1NjYWxlOjp6KTogRGVsZXRlZC4KKyAgICAgICAgKiBjc3MvdHlwZWRvbS90cmFuc2Zvcm0v
Q1NTVHJhbnNmb3JtQ29tcG9uZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1RyYW5zZm9y
bUNvbXBvbmVudDo6dG9TdHJpbmcgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTVHJhbnNm
b3JtQ29tcG9uZW50Ojp0b01hdHJpeCk6IERlbGV0ZWQuCisgICAgICAgICogY3NzL3R5cGVkb20v
dHJhbnNmb3JtL0NTU1RyYW5zZm9ybUNvbXBvbmVudC5oOgorICAgICAgICAoV2ViQ29yZTo6Q1NT
VHJhbnNmb3JtQ29tcG9uZW50OjpDU1NUcmFuc2Zvcm1Db21wb25lbnQpOgorICAgICAgICAoV2Vi
Q29yZTo6Q1NTVHJhbnNmb3JtQ29tcG9uZW50OjpnZXRUeXBlIGNvbnN0KTogRGVsZXRlZC4KKyAg
ICAgICAgKiBjc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTVHJhbnNmb3JtVmFsdWUuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6Q1NTVHJhbnNmb3JtVmFsdWU6OmNyZWF0ZSk6CisgICAgICAgIChXZWJD
b3JlOjpDU1NUcmFuc2Zvcm1WYWx1ZTo6c2V0SXRlbSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NU
cmFuc2Zvcm1WYWx1ZTo6aXMyRCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpDU1NUcmFuc2Zv
cm1WYWx1ZTo6c2V0SXMyRCk6IERlbGV0ZWQuCisgICAgICAgICogY3NzL3R5cGVkb20vdHJhbnNm
b3JtL0NTU1RyYW5zZm9ybVZhbHVlLmg6CisgICAgICAgICogY3NzL3R5cGVkb20vdHJhbnNmb3Jt
L0NTU1RyYW5zbGF0ZS5oOgorCiAyMDIyLTA0LTE0ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBs
ZS5jb20+CiAKICAgICAgICAgUmVxdWlyZSBhbiBleGlzdGluZyBBdG9tU3RyaW5nIGZvciBIVE1M
Rm9ybUVsZW1lbnQncyBuYW1lZCBnZXR0ZXIgcGFyYW1ldGVyCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NTU1RyYW5zZm9ybUNvbXBvbmVudEN1c3RvbS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NTU1RyYW5zZm9ybUNvbXBvbmVudEN1c3RvbS5j
cHAKaW5kZXggOTlkNmExNWNiM2MwNjBkNDc4MmFhZWZkODA3ZmQyZTViNTdjNjc0ZC4uNTg2NzNi
OTRiYjRiNjNlZWZjYWJiMjczNWYzNjY0NDljMTQ3Y2NmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNDU1NUcmFuc2Zvcm1Db21wb25lbnRDdXN0b20uY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ1NTVHJhbnNmb3JtQ29tcG9uZW50Q3VzdG9t
LmNwcApAQCAtNDQsOCArNDQsNiBAQCB1c2luZyBuYW1lc3BhY2UgSlNDOwogSlNWYWx1ZSB0b0pT
TmV3bHlDcmVhdGVkKEpTR2xvYmFsT2JqZWN0KiwgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgUmVmPENTU1RyYW5zZm9ybUNvbXBvbmVudD4mJiB2YWx1ZSkKIHsKICAgICBzd2l0Y2gg
KHZhbHVlLT5nZXRUeXBlKCkpIHsKLSAgICBjYXNlIENTU1RyYW5zZm9ybVR5cGU6OlRyYW5zZm9y
bToKLSAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8Q1NTVHJhbnNmb3JtQ29tcG9uZW50Pihn
bG9iYWxPYmplY3QsIFdURk1vdmUodmFsdWUpKTsKICAgICBjYXNlIENTU1RyYW5zZm9ybVR5cGU6
Ok1hdHJpeENvbXBvbmVudDoKICAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8Q1NTTWF0cml4
Q29tcG9uZW50PihnbG9iYWxPYmplY3QsIFdURk1vdmUodmFsdWUpKTsKICAgICBjYXNlIENTU1Ry
YW5zZm9ybVR5cGU6OlBlcnNwZWN0aXZlOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3Nz
L3R5cGVkb20vQ1NTTnVtZXJpY1ZhbHVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9t
L0NTU051bWVyaWNWYWx1ZS5jcHAKaW5kZXggZmE0MzFkYzJkOTg2YmEzZTJiNGM3MDBkMjY2MzVm
NGIxNGUxZTU4Zi4uOWZhMjZmM2Q5MTA0OGI2MTM3ZjRiYWRiZGRiZDU0MjU3YjUxOTgyOSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL3R5cGVkb20vQ1NTTnVtZXJpY1ZhbHVlLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS9DU1NOdW1lcmljVmFsdWUuY3BwCkBAIC0y
MTIsMTAgKzIxMiwxMCBAQCBSZWY8Q1NTTnVtZXJpY1ZhbHVlPiBDU1NOdW1lcmljVmFsdWU6Om1h
eChGaXhlZFZlY3RvcjxDU1NOdW1iZXJpc2g+JiYgbnVtYmVyaXNoZQogICAgIHJldHVybiBDU1NN
YXRoTWF4OjpjcmVhdGUoV1RGTW92ZSh2YWx1ZXMpKTsKIH0KIAotUmVmPENTU051bWVyaWNWYWx1
ZT4gQ1NTTnVtZXJpY1ZhbHVlOjpyZWN0aWZ5TnVtYmVyaXNoKENTU051bWJlcmlzaCYmIG51bWJl
cmlzaCkKK1JlZjxDU1NOdW1lcmljVmFsdWU+IENTU051bWVyaWNWYWx1ZTo6cmVjdGlmeU51bWJl
cmlzaChjb25zdCBDU1NOdW1iZXJpc2gmIG51bWJlcmlzaCkKIHsKICAgICAvLyBodHRwczovL2Ry
YWZ0cy5jc3MtaG91ZGluaS5vcmcvY3NzLXR5cGVkLW9tLyNyZWN0aWZ5LWEtbnVtYmVyaXNoLXZh
bHVlCi0gICAgcmV0dXJuIFdURjo6c3dpdGNoT24obnVtYmVyaXNoLCBbXShSZWZQdHI8Q1NTTnVt
ZXJpY1ZhbHVlPiYgdmFsdWUpIHsKKyAgICByZXR1cm4gV1RGOjpzd2l0Y2hPbihudW1iZXJpc2gs
IFtdKGNvbnN0IFJlZlB0cjxDU1NOdW1lcmljVmFsdWU+JiB2YWx1ZSkgewogICAgICAgICBSRUxF
QVNFX0FTU0VSVCghIXZhbHVlKTsKICAgICAgICAgcmV0dXJuIFJlZjxDU1NOdW1lcmljVmFsdWU+
IHsgKnZhbHVlIH07CiAgICAgfSwgW10oZG91YmxlIHZhbHVlKSB7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvdHlwZWRvbS9DU1NOdW1lcmljVmFsdWUuaCBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy90eXBlZG9tL0NTU051bWVyaWNWYWx1ZS5oCmluZGV4IDcxNTEwMWQ5NDFmZWIwNzkyNjA1
ZDQ3ZmIxMDRlMWNlNTIyNWQ3YjYuLjY1YmVmOGFiNjMwZDFjOGRmOTk1OWZiZTQ2ZWU1NzU3OWJh
NmMyMmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL0NTU051bWVyaWNW
YWx1ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL0NTU051bWVyaWNWYWx1ZS5o
CkBAIC02MSw3ICs2MSw3IEBAIHB1YmxpYzoKICAgICBjb25zdCBDU1NOdW1lcmljVHlwZSYgdHlw
ZSgpIGNvbnN0IHsgcmV0dXJuIG1fdHlwZTsgfQogICAgIAogICAgIHN0YXRpYyBFeGNlcHRpb25P
cjxSZWY8Q1NTTnVtZXJpY1ZhbHVlPj4gcGFyc2UoU3RyaW5nJiYpOwotICAgIHN0YXRpYyBSZWY8
Q1NTTnVtZXJpY1ZhbHVlPiByZWN0aWZ5TnVtYmVyaXNoKENTU051bWJlcmlzaCYmKTsKKyAgICBz
dGF0aWMgUmVmPENTU051bWVyaWNWYWx1ZT4gcmVjdGlmeU51bWJlcmlzaChjb25zdCBDU1NOdW1i
ZXJpc2gmKTsKIAogICAgIENTU1N0eWxlVmFsdWVUeXBlIGdldFR5cGUoKSBjb25zdCBvdmVycmlk
ZSB7IHJldHVybiBDU1NTdHlsZVZhbHVlVHlwZTo6Q1NTTnVtZXJpY1ZhbHVlOyB9CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL251bWVyaWMvQ1NTTnVtZXJpY1R5cGUu
aCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL251bWVyaWMvQ1NTTnVtZXJpY1R5cGUuaApp
bmRleCA0ZWNlOTgwYTYxZDU4YmZiNTMxNTY5ZGE3NmMwNDU0YmY0MGExYmE2Li5lOTc0ZmRiZWVj
ZTg1MTJiNGZmNWRkOWZhMmIyODA4NGNjM2ZhYjc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvdHlwZWRvbS9udW1lcmljL0NTU051bWVyaWNUeXBlLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvY3NzL3R5cGVkb20vbnVtZXJpYy9DU1NOdW1lcmljVHlwZS5oCkBAIC03Nyw2ICs3NywxMSBA
QCBzdHJ1Y3QgQ1NTTnVtZXJpY1R5cGUgewogICAgICAgICBSRUxFQVNFX0FTU0VSVF9OT1RfUkVB
Q0hFRCgpOwogICAgIH0KIAorICAgIGNvbnN0IHN0ZDo6b3B0aW9uYWw8bG9uZz4mIHZhbHVlRm9y
VHlwZShDU1NOdW1lcmljQmFzZVR5cGUgdHlwZSkgY29uc3QKKyAgICB7CisgICAgICAgIHJldHVy
biBjb25zdF9jYXN0PENTU051bWVyaWNUeXBlKj4odGhpcyktPnZhbHVlRm9yVHlwZSh0eXBlKTsK
KyAgICB9CisKICAgICB2b2lkIGFwcGx5UGVyY2VudEhpbnQoQ1NTTnVtZXJpY0Jhc2VUeXBlIGhp
bnQpCiAgICAgewogICAgICAgICAvLyBodHRwczovL2RyYWZ0cy5jc3MtaG91ZGluaS5vcmcvY3Nz
LXR5cGVkLW9tLyNhcHBseS10aGUtcGVyY2VudC1oaW50CkBAIC04OCw2ICs5Myw0MSBAQCBzdHJ1
Y3QgQ1NTTnVtZXJpY1R5cGUgewogICAgICAgICBwZXJjZW50SGludCA9IGhpbnQ7CiAgICAgfQog
CisgICAgc2l6ZV90IG5vblplcm9FbnRyeUNvdW50KCkgY29uc3QKKyAgICB7CisgICAgICAgIHNp
emVfdCBjb3VudCB7IDAgfTsKKyAgICAgICAgY291bnQgKz0gbGVuZ3RoICYmICpsZW5ndGg7Cisg
ICAgICAgIGNvdW50ICs9IGFuZ2xlICYmICphbmdsZTsKKyAgICAgICAgY291bnQgKz0gdGltZSAm
JiAqdGltZTsKKyAgICAgICAgY291bnQgKz0gZnJlcXVlbmN5ICYmICpmcmVxdWVuY3k7CisgICAg
ICAgIGNvdW50ICs9IHJlc29sdXRpb24gJiYgKnJlc29sdXRpb247CisgICAgICAgIGNvdW50ICs9
IGZsZXggJiYgKmZsZXg7CisgICAgICAgIGNvdW50ICs9IHBlcmNlbnQgJiYgKnBlcmNlbnQ7Cisg
ICAgICAgIHJldHVybiBjb3VudDsKKyAgICB9CisKKyAgICB0ZW1wbGF0ZTxDU1NOdW1lcmljQmFz
ZVR5cGUgdHlwZT4KKyAgICBib29sIG1hdGNoZXMoKSBjb25zdAorICAgIHsKKyAgICAgICAgLy8g
aHR0cHM6Ly9kcmFmdHMuY3NzLWhvdWRpbmkub3JnL2Nzcy10eXBlZC1vbS8jY3NzbnVtZXJpY3Zh
bHVlLW1hdGNoCisgICAgICAgIHJldHVybiAodHlwZSA9PSBDU1NOdW1lcmljQmFzZVR5cGU6OlBl
cmNlbnQgfHwgIXBlcmNlbnRIaW50KQorICAgICAgICAgICAgJiYgbm9uWmVyb0VudHJ5Q291bnQo
KSA9PSAxCisgICAgICAgICAgICAmJiB2YWx1ZUZvclR5cGUodHlwZSkKKyAgICAgICAgICAgICYm
ICp2YWx1ZUZvclR5cGUodHlwZSk7CisgICAgfQorCisgICAgYm9vbCBtYXRjaGVzTnVtYmVyKCkg
Y29uc3QKKyAgICB7CisgICAgICAgIC8vIGh0dHBzOi8vZHJhZnRzLmNzcy1ob3VkaW5pLm9yZy9j
c3MtdHlwZWQtb20vI2Nzc251bWVyaWN2YWx1ZS1tYXRjaAorICAgICAgICByZXR1cm4gIW5vblpl
cm9FbnRyeUNvdW50KCkgJiYgIXBlcmNlbnRIaW50OworICAgIH0KKworICAgIHRlbXBsYXRlPENT
U051bWVyaWNCYXNlVHlwZSB0eXBlPgorICAgIGJvb2wgbWF0Y2hlc1R5cGVPclBlcmNlbnRhZ2Uo
KSBjb25zdAorICAgIHsKKyAgICAgICAgcmV0dXJuIG1hdGNoZXM8dHlwZT4oKSB8fCBtYXRjaGVz
PENTU051bWVyaWNCYXNlVHlwZTo6UGVyY2VudD4oKTsKKyAgICB9CisKICAgICBTdHJpbmcgZGVi
dWdTdHJpbmcoKSBjb25zdAogICAgIHsKICAgICAgICAgcmV0dXJuIG1ha2VTdHJpbmcoInsiLApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL3R5cGVkb20vdHJhbnNmb3JtL0NTU01hdHJp
eENvbXBvbmVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NT
TWF0cml4Q29tcG9uZW50LmNwcAppbmRleCBlMWJkMzUxNjFlNTAwMzcxZGMzMTU1MGViNjI2YjJi
YjZhOTgwMTNiLi45N2UxODA0N2E2MWNiZjE4NmQ1YWFkNmE2YTg0MWI3OGE5OTFhMzYzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTTWF0cml4Q29t
cG9uZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NT
TWF0cml4Q29tcG9uZW50LmNwcApAQCAtNDEsMTQgKzQxLDE0IEBAIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAogV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9JTVBMKENTU01hdHJpeENvbXBvbmVudCk7CiAK
LVJlZjxDU1NUcmFuc2Zvcm1Db21wb25lbnQ+IENTU01hdHJpeENvbXBvbmVudDo6Y3JlYXRlKFJl
ZjxET01NYXRyaXhSZWFkT25seT4mJiBtYXRyaXgsIENTU01hdHJpeENvbXBvbmVudE9wdGlvbnMm
JiBvcHRpb25zKQorUmVmPENTU1RyYW5zZm9ybUNvbXBvbmVudD4gQ1NTTWF0cml4Q29tcG9uZW50
OjpjcmVhdGUoUmVmPERPTU1hdHJpeFJlYWRPbmx5PiYmIG1hdHJpeCwgc3RkOjpvcHRpb25hbDxD
U1NNYXRyaXhDb21wb25lbnRPcHRpb25zPiYmIG9wdGlvbnMpCiB7CiAgICAgcmV0dXJuIGFkb3B0
UmVmKCpuZXcgQ1NTTWF0cml4Q29tcG9uZW50KFdURk1vdmUobWF0cml4KSwgV1RGTW92ZShvcHRp
b25zKSkpOwogfQogCi1DU1NNYXRyaXhDb21wb25lbnQ6OkNTU01hdHJpeENvbXBvbmVudChSZWY8
RE9NTWF0cml4UmVhZE9ubHk+JiYgbWF0cml4LCBDU1NNYXRyaXhDb21wb25lbnRPcHRpb25zJiYg
b3B0aW9ucykKLSAgICA6IG1fbWF0cml4KG1hdHJpeC0+Y2xvbmVBc0RPTU1hdHJpeCgpKQotICAg
ICwgbV9vcHRpb25zKFdURk1vdmUob3B0aW9ucykpCitDU1NNYXRyaXhDb21wb25lbnQ6OkNTU01h
dHJpeENvbXBvbmVudChSZWY8RE9NTWF0cml4UmVhZE9ubHk+JiYgbWF0cml4LCBzdGQ6Om9wdGlv
bmFsPENTU01hdHJpeENvbXBvbmVudE9wdGlvbnM+JiYgb3B0aW9ucykKKyAgICA6IENTU1RyYW5z
Zm9ybUNvbXBvbmVudChvcHRpb25zID8gb3B0aW9ucy0+aXMyRCA6IG1hdHJpeC0+aXMyRCgpKQor
ICAgICwgbV9tYXRyaXgobWF0cml4LT5jbG9uZUFzRE9NTWF0cml4KCkpCiB7CiB9CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL3RyYW5zZm9ybS9DU1NNYXRyaXhDb21w
b25lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL3RyYW5zZm9ybS9DU1NNYXRyaXhD
b21wb25lbnQuaAppbmRleCA4NGYwYWZiMmY0ZjE5NzJiNTIzOGQ2YTFmMWRjZjc5OTdhNTlkN2Vk
Li4wODU3ZWZjMTcyYzA5MDRmNmMxNTljOTYxODA3OWFkMWEzMjkxZGQyIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTTWF0cml4Q29tcG9uZW50LmgK
KysrIGIvU291cmNlL1dlYkNvcmUvY3NzL3R5cGVkb20vdHJhbnNmb3JtL0NTU01hdHJpeENvbXBv
bmVudC5oCkBAIC0zOSw3ICszOSw3IEBAIHRlbXBsYXRlPHR5cGVuYW1lPiBjbGFzcyBFeGNlcHRp
b25PcjsKIGNsYXNzIENTU01hdHJpeENvbXBvbmVudCA6IHB1YmxpYyBDU1NUcmFuc2Zvcm1Db21w
b25lbnQgewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQoQ1NTTWF0cml4Q29tcG9uZW50KTsK
IHB1YmxpYzoKLSAgICBzdGF0aWMgUmVmPENTU1RyYW5zZm9ybUNvbXBvbmVudD4gY3JlYXRlKFJl
ZjxET01NYXRyaXhSZWFkT25seT4mJiBtYXRyaXgsIENTU01hdHJpeENvbXBvbmVudE9wdGlvbnMm
JiBvcHRpb25zID0gQ1NTTWF0cml4Q29tcG9uZW50T3B0aW9ucyB7IH0pOworICAgIHN0YXRpYyBS
ZWY8Q1NTVHJhbnNmb3JtQ29tcG9uZW50PiBjcmVhdGUoUmVmPERPTU1hdHJpeFJlYWRPbmx5PiYm
LCBzdGQ6Om9wdGlvbmFsPENTU01hdHJpeENvbXBvbmVudE9wdGlvbnM+JiYpOwogICAgIAogICAg
IERPTU1hdHJpeCYgbWF0cml4KCk7CiAgICAgdm9pZCBzZXRNYXRyaXgoUmVmPERPTU1hdHJpeD4m
Jik7CkBAIC00OSw5ICs0OSw4IEBAIHB1YmxpYzoKICAgICAKICAgICBDU1NUcmFuc2Zvcm1UeXBl
IGdldFR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiBDU1NUcmFuc2Zvcm1UeXBlOjpNYXRyaXhD
b21wb25lbnQ7IH0KIHByaXZhdGU6Ci0gICAgQ1NTTWF0cml4Q29tcG9uZW50KFJlZjxET01NYXRy
aXhSZWFkT25seT4mJiwgQ1NTTWF0cml4Q29tcG9uZW50T3B0aW9ucyYmKTsKKyAgICBDU1NNYXRy
aXhDb21wb25lbnQoUmVmPERPTU1hdHJpeFJlYWRPbmx5PiYmLCBzdGQ6Om9wdGlvbmFsPENTU01h
dHJpeENvbXBvbmVudE9wdGlvbnM+JiYpOwogICAgIFJlZjxET01NYXRyaXg+IG1fbWF0cml4Owot
ICAgIENTU01hdHJpeENvbXBvbmVudE9wdGlvbnMgbV9vcHRpb25zOwogfTsKIAogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL3R5cGVkb20vdHJh
bnNmb3JtL0NTU01hdHJpeENvbXBvbmVudC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRv
bS90cmFuc2Zvcm0vQ1NTTWF0cml4Q29tcG9uZW50LmlkbAppbmRleCBlMWExY2YxODg3MDQ3Mzk3
ODdjZWRhZmEyZGY2MjkyOTQyNDJiYTdkLi5hNTIyMzE0YzkyMTg3MTU5MWU2ZTA3YThhNDU1NDA3
ZmEwNjBiOTliIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zv
cm0vQ1NTTWF0cml4Q29tcG9uZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRv
bS90cmFuc2Zvcm0vQ1NTTWF0cml4Q29tcG9uZW50LmlkbApAQCAtMjksNiArMjksOSBAQAogICAg
IENvbmRpdGlvbmFsPUNTU19UWVBFRF9PTSwKICAgICBFeHBvc2VkPShXaW5kb3csV29ya2VyLFBh
aW50V29ya2xldCksCiBdIGludGVyZmFjZSBDU1NNYXRyaXhDb21wb25lbnQgOiBDU1NUcmFuc2Zv
cm1Db21wb25lbnQgeworICAgIC8vIEZJWE1FOiB3aGVuIHRoZSBzZWNvbmQgcGFyYW1ldGVyIGlz
IG1pc3Npbmcgb3Igbm90IGEgZGljdGlvbmFyeSwKKyAgICAvLyBDU1NNYXRyaXhDb21wb25lbnQ6
OmNyZWF0ZSBpcyBub3QgY2FsbGVkIHdpdGggc3RkOjpudWxsb3B0IGluIHRoZSBnZW5lcmF0ZWQg
YmluZGluZ3MgY29kZS4KKyAgICAvLyBEb2luZyBzbyB3b3VsZCBmaXggdGhlIHJlbWFpbmluZyBm
YWlsdXJlcyBpbiB0aGUgY3NzTWF0cml4Q29tcG9uZW50LnRlbnRhdGl2ZSB0ZXN0LgogICAgIGNv
bnN0cnVjdG9yKERPTU1hdHJpeFJlYWRPbmx5IG1hdHJpeCwgb3B0aW9uYWwgQ1NTTWF0cml4Q29t
cG9uZW50T3B0aW9ucyBvcHRpb25zKTsKIAogICAgIGF0dHJpYnV0ZSBET01NYXRyaXggbWF0cml4
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL3R5cGVkb20vdHJhbnNmb3JtL0NTU1Jv
dGF0ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTUm90YXRl
LmNwcAppbmRleCBjZjgzYTc0YTYxMmUyMjhiMjE4ZWZkNGVhN2Q1ZGZmOGQ3NjU3MzYxLi4wNmRk
YzJhMjQ2ZDg1Zjg3ODUzNTcwMThmZDlkODliMTkwZjA2ODY2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTUm90YXRlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTUm90YXRlLmNwcApAQCAtMzIsNiArMzIs
OCBAQAogCiAjaWYgRU5BQkxFKENTU19UWVBFRF9PTSkKIAorI2luY2x1ZGUgIkNTU1VuaXRWYWx1
ZS5oIgorI2luY2x1ZGUgIkNTU1VuaXRzLmgiCiAjaW5jbHVkZSAiRE9NTWF0cml4LmgiCiAjaW5j
bHVkZSAiRXhjZXB0aW9uT3IuaCIKICNpbmNsdWRlIDx3dGYvSXNvTWFsbG9jSW5saW5lcy5oPgpA
QCAtNDAsMjQgKzQyLDc4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogV1RGX01BS0VfSVNPX0FM
TE9DQVRFRF9JTVBMKENTU1JvdGF0ZSk7CiAKLVJlZjxDU1NSb3RhdGU+IENTU1JvdGF0ZTo6Y3Jl
YXRlKENTU051bWJlcmlzaCYmIHgsIENTU051bWJlcmlzaCYmIHksIENTU051bWJlcmlzaCYmIHos
IFJlZjxDU1NOdW1lcmljVmFsdWU+JiYgYW5nbGUpCitFeGNlcHRpb25PcjxSZWY8Q1NTUm90YXRl
Pj4gQ1NTUm90YXRlOjpjcmVhdGUoQ1NTTnVtYmVyaXNoIHgsIENTU051bWJlcmlzaCB5LCBDU1NO
dW1iZXJpc2ggeiwgUmVmPENTU051bWVyaWNWYWx1ZT4gYW5nbGUpCiB7Ci0gICAgcmV0dXJuIGFk
b3B0UmVmKCpuZXcgQ1NTUm90YXRlKFdURk1vdmUoeCksIFdURk1vdmUoeSksIFdURk1vdmUoeiks
IFdURk1vdmUoYW5nbGUpKSk7CisgICAgaWYgKCFhbmdsZS0+dHlwZSgpLm1hdGNoZXM8Q1NTTnVt
ZXJpY0Jhc2VUeXBlOjpBbmdsZT4oKSkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IFR5cGVF
cnJvciB9OworCisgICAgaWYgKCFDU1NOdW1lcmljVmFsdWU6OnJlY3RpZnlOdW1iZXJpc2goeCkt
PnR5cGUoKS5tYXRjaGVzTnVtYmVyKCkKKyAgICAgICAgfHwgIUNTU051bWVyaWNWYWx1ZTo6cmVj
dGlmeU51bWJlcmlzaCh5KS0+dHlwZSgpLm1hdGNoZXNOdW1iZXIoKQorICAgICAgICB8fCAhQ1NT
TnVtZXJpY1ZhbHVlOjpyZWN0aWZ5TnVtYmVyaXNoKHopLT50eXBlKCkubWF0Y2hlc051bWJlcigp
KQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgVHlwZUVycm9yIH07CisKKyAgICByZXR1cm4g
YWRvcHRSZWYoKm5ldyBDU1NSb3RhdGUoZmFsc2UsCisgICAgICAgIENTU051bWVyaWNWYWx1ZTo6
cmVjdGlmeU51bWJlcmlzaChXVEZNb3ZlKHgpKSwKKyAgICAgICAgQ1NTTnVtZXJpY1ZhbHVlOjpy
ZWN0aWZ5TnVtYmVyaXNoKFdURk1vdmUoeSkpLAorICAgICAgICBDU1NOdW1lcmljVmFsdWU6OnJl
Y3RpZnlOdW1iZXJpc2goV1RGTW92ZSh6KSksCisgICAgICAgIFdURk1vdmUoYW5nbGUpKSk7CiB9
CiAKLVJlZjxDU1NSb3RhdGU+IENTU1JvdGF0ZTo6Y3JlYXRlKFJlZjxDU1NOdW1lcmljVmFsdWU+
JiYgYW5nbGUpCitFeGNlcHRpb25PcjxSZWY8Q1NTUm90YXRlPj4gQ1NTUm90YXRlOjpjcmVhdGUo
UmVmPENTU051bWVyaWNWYWx1ZT4gYW5nbGUpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcg
Q1NTUm90YXRlKDAuMCwgMC4wLCAwLjAsIFdURk1vdmUoYW5nbGUpKSk7CisgICAgaWYgKCFhbmds
ZS0+dHlwZSgpLm1hdGNoZXM8Q1NTTnVtZXJpY0Jhc2VUeXBlOjpBbmdsZT4oKSkKKyAgICAgICAg
cmV0dXJuIEV4Y2VwdGlvbiB7IFR5cGVFcnJvciB9OworICAgIHJldHVybiBhZG9wdFJlZigqbmV3
IENTU1JvdGF0ZSh0cnVlLAorICAgICAgICBDU1NVbml0VmFsdWU6OmNyZWF0ZSgwLjAsIENTU1Vu
aXRUeXBlOjpDU1NfTlVNQkVSKSwKKyAgICAgICAgQ1NTVW5pdFZhbHVlOjpjcmVhdGUoMC4wLCBD
U1NVbml0VHlwZTo6Q1NTX05VTUJFUiksCisgICAgICAgIENTU1VuaXRWYWx1ZTo6Y3JlYXRlKDEu
MCwgQ1NTVW5pdFR5cGU6OkNTU19OVU1CRVIpLAorICAgICAgICBXVEZNb3ZlKGFuZ2xlKSkpOwog
fQogCi1DU1NSb3RhdGU6OkNTU1JvdGF0ZShDU1NOdW1iZXJpc2gmJiB4LCBDU1NOdW1iZXJpc2gm
JiB5LCBDU1NOdW1iZXJpc2gmJiB6LCBSZWY8Q1NTTnVtZXJpY1ZhbHVlPiYmIGFuZ2xlKQotICAg
IDogbV94KFdURk1vdmUoeCkpCitDU1NSb3RhdGU6OkNTU1JvdGF0ZShib29sIGlzMkQsIFJlZjxD
U1NOdW1lcmljVmFsdWU+IHgsIFJlZjxDU1NOdW1lcmljVmFsdWU+IHksIFJlZjxDU1NOdW1lcmlj
VmFsdWU+IHosIFJlZjxDU1NOdW1lcmljVmFsdWU+IGFuZ2xlKQorICAgIDogQ1NTVHJhbnNmb3Jt
Q29tcG9uZW50KGlzMkQpCisgICAgLCBtX3goV1RGTW92ZSh4KSkKICAgICAsIG1feShXVEZNb3Zl
KHkpKQogICAgICwgbV96KFdURk1vdmUoeikpCiAgICAgLCBtX2FuZ2xlKFdURk1vdmUoYW5nbGUp
KQogewogfQogCitFeGNlcHRpb25Pcjx2b2lkPiBDU1NSb3RhdGU6OnNldFgoQ1NTTnVtYmVyaXNo
IHgpCit7CisgICAgYXV0byByZWN0aWZpZWQgPSBDU1NOdW1lcmljVmFsdWU6OnJlY3RpZnlOdW1i
ZXJpc2goeCk7CisgICAgaWYgKCFyZWN0aWZpZWQtPnR5cGUoKS5tYXRjaGVzTnVtYmVyKCkpCisg
ICAgICAgIHJldHVybiBFeGNlcHRpb24geyBUeXBlRXJyb3IgfTsKKyAgICBtX3ggPSBXVEZNb3Zl
KHJlY3RpZmllZCk7CisgICAgcmV0dXJuIHsgfTsKK30KKworRXhjZXB0aW9uT3I8dm9pZD4gQ1NT
Um90YXRlOjpzZXRZKENTU051bWJlcmlzaCB5KQoreworICAgIGF1dG8gcmVjdGlmaWVkID0gQ1NT
TnVtZXJpY1ZhbHVlOjpyZWN0aWZ5TnVtYmVyaXNoKHkpOworICAgIGlmICghcmVjdGlmaWVkLT50
eXBlKCkubWF0Y2hlc051bWJlcigpKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgVHlwZUVy
cm9yIH07CisgICAgbV95ID0gV1RGTW92ZShyZWN0aWZpZWQpOworICAgIHJldHVybiB7IH07Cit9
CisKK0V4Y2VwdGlvbk9yPHZvaWQ+IENTU1JvdGF0ZTo6c2V0WihDU1NOdW1iZXJpc2ggeikKK3sK
KyAgICBhdXRvIHJlY3RpZmllZCA9IENTU051bWVyaWNWYWx1ZTo6cmVjdGlmeU51bWJlcmlzaCh6
KTsKKyAgICBpZiAoIXJlY3RpZmllZC0+dHlwZSgpLm1hdGNoZXNOdW1iZXIoKSkKKyAgICAgICAg
cmV0dXJuIEV4Y2VwdGlvbiB7IFR5cGVFcnJvciB9OworICAgIG1feiA9IFdURk1vdmUocmVjdGlm
aWVkKTsKKyAgICByZXR1cm4geyB9OworfQorCitFeGNlcHRpb25Pcjx2b2lkPiBDU1NSb3RhdGU6
OnNldEFuZ2xlKFJlZjxDU1NOdW1lcmljVmFsdWU+IGFuZ2xlKQoreworICAgIGlmICghYW5nbGUt
PnR5cGUoKS5tYXRjaGVzPENTU051bWVyaWNCYXNlVHlwZTo6QW5nbGU+KCkpCisgICAgICAgIHJl
dHVybiBFeGNlcHRpb24geyBUeXBlRXJyb3IgfTsKKyAgICBtX2FuZ2xlID0gV1RGTW92ZShhbmds
ZSk7CisgICAgcmV0dXJuIHsgfTsKK30KKwogLy8gRklYTUU6IEZpeCBhbGwgdGhlIGZvbGxvd2lu
ZyB2aXJ0dWFsIGZ1bmN0aW9ucwogCiBTdHJpbmcgQ1NTUm90YXRlOjp0b1N0cmluZygpIGNvbnN0
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTUm90
YXRlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTUm90YXRlLmgK
aW5kZXggZTRiYjA2NzIyZGFiYmRiM2E0NDY1OWIwMjdhNDdmZDhmNjAzNDRkYi4uZjhjMGZmMmQw
ZmRiNjk4NTE3YWFiNTJhNzZhZWFiMjE3ZjVjMWNiYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvY3NzL3R5cGVkb20vdHJhbnNmb3JtL0NTU1JvdGF0ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy90eXBlZG9tL3RyYW5zZm9ybS9DU1NSb3RhdGUuaApAQCAtMzcsMzAgKzM3LDMwIEBAIHRl
bXBsYXRlPHR5cGVuYW1lPiBjbGFzcyBFeGNlcHRpb25PcjsKIGNsYXNzIENTU1JvdGF0ZSA6IHB1
YmxpYyBDU1NUcmFuc2Zvcm1Db21wb25lbnQgewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQo
Q1NTUm90YXRlKTsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUmVmPENTU1JvdGF0ZT4gY3JlYXRlKENT
U051bWJlcmlzaCYmLCBDU1NOdW1iZXJpc2gmJiwgQ1NTTnVtYmVyaXNoJiYsIFJlZjxDU1NOdW1l
cmljVmFsdWU+JiYpOwotICAgIHN0YXRpYyBSZWY8Q1NTUm90YXRlPiBjcmVhdGUoUmVmPENTU051
bWVyaWNWYWx1ZT4mJik7CisgICAgc3RhdGljIEV4Y2VwdGlvbk9yPFJlZjxDU1NSb3RhdGU+PiBj
cmVhdGUoQ1NTTnVtYmVyaXNoLCBDU1NOdW1iZXJpc2gsIENTU051bWJlcmlzaCwgUmVmPENTU051
bWVyaWNWYWx1ZT4pOworICAgIHN0YXRpYyBFeGNlcHRpb25PcjxSZWY8Q1NTUm90YXRlPj4gY3Jl
YXRlKFJlZjxDU1NOdW1lcmljVmFsdWU+KTsKIAotICAgIGNvbnN0IENTU051bWJlcmlzaCYgeCgp
IHsgcmV0dXJuIG1feDsgfQotICAgIGNvbnN0IENTU051bWJlcmlzaCYgeSgpIHsgcmV0dXJuIG1f
eDsgfQotICAgIGNvbnN0IENTU051bWJlcmlzaCYgeigpIHsgcmV0dXJuIG1feDsgfQorICAgIENT
U051bWJlcmlzaCB4KCkgeyByZXR1cm4geyBtX3gucHRyKCkgfTsgfQorICAgIENTU051bWJlcmlz
aCB5KCkgeyByZXR1cm4geyBtX3kucHRyKCkgfTsgfQorICAgIENTU051bWJlcmlzaCB6KCkgeyBy
ZXR1cm4geyBtX3oucHRyKCkgfTsgfQogICAgIGNvbnN0IENTU051bWVyaWNWYWx1ZSYgYW5nbGUo
KSB7IHJldHVybiBtX2FuZ2xlLmdldCgpOyB9Ci0gICAgCi0gICAgdm9pZCBzZXRYKENTU051bWJl
cmlzaCYmIHgpIHsgbV94ID0gV1RGTW92ZSh4KTsgfQotICAgIHZvaWQgc2V0WShDU1NOdW1iZXJp
c2gmJiB5KSB7IG1feSA9IFdURk1vdmUoeSk7IH0KLSAgICB2b2lkIHNldFooQ1NTTnVtYmVyaXNo
JiYgeikgeyBtX3ogPSBXVEZNb3ZlKHopOyB9Ci0gICAgdm9pZCBzZXRBbmdsZShSZWY8Q1NTTnVt
ZXJpY1ZhbHVlPiYmIGFuZ2xlKSB7IG1fYW5nbGUgPSBXVEZNb3ZlKGFuZ2xlKTsgfQotICAgIAor
CisgICAgRXhjZXB0aW9uT3I8dm9pZD4gc2V0WChDU1NOdW1iZXJpc2gpOworICAgIEV4Y2VwdGlv
bk9yPHZvaWQ+IHNldFkoQ1NTTnVtYmVyaXNoKTsKKyAgICBFeGNlcHRpb25Pcjx2b2lkPiBzZXRa
KENTU051bWJlcmlzaCk7CisgICAgRXhjZXB0aW9uT3I8dm9pZD4gc2V0QW5nbGUoUmVmPENTU051
bWVyaWNWYWx1ZT4pOworCiAgICAgU3RyaW5nIHRvU3RyaW5nKCkgY29uc3QgZmluYWw7CiAgICAg
RXhjZXB0aW9uT3I8UmVmPERPTU1hdHJpeD4+IHRvTWF0cml4KCkgZmluYWw7CiAgICAgCiAgICAg
Q1NTVHJhbnNmb3JtVHlwZSBnZXRUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gQ1NTVHJhbnNm
b3JtVHlwZTo6Um90YXRlOyB9CiAgICAgCiBwcml2YXRlOgotICAgIENTU1JvdGF0ZShDU1NOdW1i
ZXJpc2gmJiwgQ1NTTnVtYmVyaXNoJiYsIENTU051bWJlcmlzaCYmLCBSZWY8Q1NTTnVtZXJpY1Zh
bHVlPiYmKTsKKyAgICBDU1NSb3RhdGUoYm9vbCBpczJELCBSZWY8Q1NTTnVtZXJpY1ZhbHVlPiwg
UmVmPENTU051bWVyaWNWYWx1ZT4sIFJlZjxDU1NOdW1lcmljVmFsdWU+LCBSZWY8Q1NTTnVtZXJp
Y1ZhbHVlPik7CiAgICAgCi0gICAgQ1NTTnVtYmVyaXNoIG1feDsKLSAgICBDU1NOdW1iZXJpc2gg
bV95OwotICAgIENTU051bWJlcmlzaCBtX3o7CisgICAgUmVmPENTU051bWVyaWNWYWx1ZT4gbV94
OworICAgIFJlZjxDU1NOdW1lcmljVmFsdWU+IG1feTsKKyAgICBSZWY8Q1NTTnVtZXJpY1ZhbHVl
PiBtX3o7CiAgICAgUmVmPENTU051bWVyaWNWYWx1ZT4gbV9hbmdsZTsKIH07CiAgICAgCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTU2NhbGUuY3Bw
IGIvU291cmNlL1dlYkNvcmUvY3NzL3R5cGVkb20vdHJhbnNmb3JtL0NTU1NjYWxlLmNwcAppbmRl
eCAwOTdjMzI4MDczMGY0OTI5Zjc2Yzc5NjQ0OTk2OGJhYTdkYTQ1NjhhLi40ZWNhZTRkMzIzNmVk
Yjk4MDE4MjVjMzcyMmVkMzVkNTExNzY3YjE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTU2NhbGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy90eXBlZG9tL3RyYW5zZm9ybS9DU1NTY2FsZS5jcHAKQEAgLTMyLDYgKzMyLDggQEAKIAogI2lm
IEVOQUJMRShDU1NfVFlQRURfT00pCiAKKyNpbmNsdWRlICJDU1NVbml0VmFsdWUuaCIKKyNpbmNs
dWRlICJDU1NVbml0cy5oIgogI2luY2x1ZGUgIkRPTU1hdHJpeC5oIgogI2luY2x1ZGUgIkV4Y2Vw
dGlvbk9yLmgiCiAjaW5jbHVkZSA8d3RmL0lzb01hbGxvY0lubGluZXMuaD4KQEAgLTQwLDE4ICs0
Miw0NCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU1Q
TChDU1NTY2FsZSk7CiAKLVJlZjxDU1NTY2FsZT4gQ1NTU2NhbGU6OmNyZWF0ZShDU1NOdW1iZXJp
c2gmJiB4LCBDU1NOdW1iZXJpc2gmJiB5LCBzdGQ6Om9wdGlvbmFsPENTU051bWJlcmlzaD4mJiB6
KQorRXhjZXB0aW9uT3I8UmVmPENTU1NjYWxlPj4gQ1NTU2NhbGU6OmNyZWF0ZShDU1NOdW1iZXJp
c2ggeCwgQ1NTTnVtYmVyaXNoIHksIHN0ZDo6b3B0aW9uYWw8Q1NTTnVtYmVyaXNoPiB6KQogewot
ICAgIHJldHVybiBhZG9wdFJlZigqbmV3IENTU1NjYWxlKFdURk1vdmUoeCksIFdURk1vdmUoeSks
IFdURk1vdmUoeikpKTsKKyAgICBhdXRvIHJlY3RpZmllZFggPSBDU1NOdW1lcmljVmFsdWU6OnJl
Y3RpZnlOdW1iZXJpc2goeCk7CisgICAgYXV0byByZWN0aWZpZWRZID0gQ1NTTnVtZXJpY1ZhbHVl
OjpyZWN0aWZ5TnVtYmVyaXNoKHkpOworICAgIGF1dG8gcmVjdGlmaWVkWiA9IHogPyBDU1NOdW1l
cmljVmFsdWU6OnJlY3RpZnlOdW1iZXJpc2goKnopIDogUmVmPENTU051bWVyaWNWYWx1ZT4geyBD
U1NVbml0VmFsdWU6OmNyZWF0ZSgxLjAsIENTU1VuaXRUeXBlOjpDU1NfTlVNQkVSKSB9OworCisg
ICAgLy8gaHR0cHM6Ly9kcmFmdHMuY3NzLWhvdWRpbmkub3JnL2Nzcy10eXBlZC1vbS8jZG9tLWNz
c3NjYWxlLWNzc3NjYWxlCisgICAgaWYgKCFyZWN0aWZpZWRYLT50eXBlKCkubWF0Y2hlc051bWJl
cigpCisgICAgICAgIHx8ICFyZWN0aWZpZWRZLT50eXBlKCkubWF0Y2hlc051bWJlcigpCisgICAg
ICAgIHx8ICghcmVjdGlmaWVkWi0+dHlwZSgpLm1hdGNoZXNOdW1iZXIoKSkpCisgICAgICAgIHJl
dHVybiBFeGNlcHRpb24geyBUeXBlRXJyb3IgfTsKKworICAgIHJldHVybiBhZG9wdFJlZigqbmV3
IENTU1NjYWxlKCF6LCBXVEZNb3ZlKHJlY3RpZmllZFgpLCBXVEZNb3ZlKHJlY3RpZmllZFkpLCBX
VEZNb3ZlKHJlY3RpZmllZFopKSk7CiB9CiAKLUNTU1NjYWxlOjpDU1NTY2FsZShDU1NOdW1iZXJp
c2gmJiB4LCBDU1NOdW1iZXJpc2gmJiB5LCBzdGQ6Om9wdGlvbmFsPENTU051bWJlcmlzaD4mJiB6
KQotICAgIDogbV94KFdURk1vdmUoeCkpCitDU1NTY2FsZTo6Q1NTU2NhbGUoYm9vbCBpczJELCBS
ZWY8Q1NTTnVtZXJpY1ZhbHVlPiB4LCBSZWY8Q1NTTnVtZXJpY1ZhbHVlPiB5LCBSZWY8Q1NTTnVt
ZXJpY1ZhbHVlPiB6KQorICAgIDogQ1NTVHJhbnNmb3JtQ29tcG9uZW50KGlzMkQpCisgICAgLCBt
X3goV1RGTW92ZSh4KSkKICAgICAsIG1feShXVEZNb3ZlKHkpKQogICAgICwgbV96KFdURk1vdmUo
eikpCiB7CiB9CiAKK3ZvaWQgQ1NTU2NhbGU6OnNldFgoQ1NTTnVtYmVyaXNoIHgpCit7CisgICAg
bV94ID0gQ1NTTnVtZXJpY1ZhbHVlOjpyZWN0aWZ5TnVtYmVyaXNoKHgpOworfQorCit2b2lkIENT
U1NjYWxlOjpzZXRZKENTU051bWJlcmlzaCB5KQoreworICAgIG1feSA9IENTU051bWVyaWNWYWx1
ZTo6cmVjdGlmeU51bWJlcmlzaCh5KTsKK30KKwordm9pZCBDU1NTY2FsZTo6c2V0WihDU1NOdW1i
ZXJpc2ggeikKK3sKKyAgICBtX3ogPSBDU1NOdW1lcmljVmFsdWU6OnJlY3RpZnlOdW1iZXJpc2go
eik7Cit9CisKIC8vIEZJWE1FOiBGaXggYWxsIHRoZSBmb2xsb3dpbmcgdmlydHVhbCBmdW5jdGlv
bnMKIAogU3RyaW5nIENTU1NjYWxlOjp0b1N0cmluZygpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTU2NhbGUuaCBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy90eXBlZG9tL3RyYW5zZm9ybS9DU1NTY2FsZS5oCmluZGV4IGYwMGY2MGQ0MWY0YWM1
NmJlZDU5YzI2NzE5MzY2ZjE5MGI4MWI2NDUuLmFjMGY2ZGU0ZTEzMDVmZGJmZWIyODNkMDFkNjY2
MjZmNDMzOTFkZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL3RyYW5z
Zm9ybS9DU1NTY2FsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL3RyYW5zZm9y
bS9DU1NTY2FsZS5oCkBAIC0zNywyNyArMzcsMjcgQEAgdGVtcGxhdGU8dHlwZW5hbWU+IGNsYXNz
IEV4Y2VwdGlvbk9yOwogY2xhc3MgQ1NTU2NhbGUgOiBwdWJsaWMgQ1NTVHJhbnNmb3JtQ29tcG9u
ZW50IHsKICAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKENTU1NjYWxlKTsKIHB1YmxpYzoKLSAg
ICBzdGF0aWMgUmVmPENTU1NjYWxlPiBjcmVhdGUoQ1NTTnVtYmVyaXNoJiYgeCwgQ1NTTnVtYmVy
aXNoJiYgeSwgc3RkOjpvcHRpb25hbDxDU1NOdW1iZXJpc2g+JiYgeik7CisgICAgc3RhdGljIEV4
Y2VwdGlvbk9yPFJlZjxDU1NTY2FsZT4+IGNyZWF0ZShDU1NOdW1iZXJpc2ggeCwgQ1NTTnVtYmVy
aXNoIHksIHN0ZDo6b3B0aW9uYWw8Q1NTTnVtYmVyaXNoPiB6KTsKIAogICAgIFN0cmluZyB0b1N0
cmluZygpIGNvbnN0IGZpbmFsOwogICAgIEV4Y2VwdGlvbk9yPFJlZjxET01NYXRyaXg+PiB0b01h
dHJpeCgpIGZpbmFsOwotICAgIAotICAgIENTU051bWJlcmlzaCB4KCkgeyByZXR1cm4gbV94OyB9
Ci0gICAgQ1NTTnVtYmVyaXNoIHkoKSB7IHJldHVybiBtX3k7IH0KLSAgICBDU1NOdW1iZXJpc2gg
eigpIHsgcmV0dXJuIG1feiA/ICptX3ogOiAwLjA7IH0KIAotICAgIHZvaWQgc2V0WChDU1NOdW1i
ZXJpc2gmJiB4KSB7IG1feCA9IFdURk1vdmUoeCk7IH0KLSAgICB2b2lkIHNldFkoQ1NTTnVtYmVy
aXNoJiYgeSkgeyBtX3kgPSBXVEZNb3ZlKHkpOyB9Ci0gICAgdm9pZCBzZXRaKENTU051bWJlcmlz
aCYmIHopIHsgbV96ID0gV1RGTW92ZSh6KTsgfQorICAgIENTU051bWJlcmlzaCB4KCkgY29uc3Qg
eyByZXR1cm4gbV94LnB0cigpOyB9CisgICAgQ1NTTnVtYmVyaXNoIHkoKSBjb25zdCB7IHJldHVy
biBtX3kucHRyKCk7IH0KKyAgICBDU1NOdW1iZXJpc2ggeigpIGNvbnN0IHsgcmV0dXJuIG1fei5w
dHIoKTsgfQorCisgICAgdm9pZCBzZXRYKENTU051bWJlcmlzaCk7CisgICAgdm9pZCBzZXRZKENT
U051bWJlcmlzaCk7CisgICAgdm9pZCBzZXRaKENTU051bWJlcmlzaCk7CiAKICAgICBDU1NUcmFu
c2Zvcm1UeXBlIGdldFR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiBDU1NUcmFuc2Zvcm1UeXBl
OjpTY2FsZTsgfQogCiBwcml2YXRlOgotICAgIENTU1NjYWxlKENTU051bWJlcmlzaCYmIHgsIENT
U051bWJlcmlzaCYmIHksIHN0ZDo6b3B0aW9uYWw8Q1NTTnVtYmVyaXNoPiYmIHopOwotICAgIAot
ICAgIENTU051bWJlcmlzaCBtX3g7Ci0gICAgQ1NTTnVtYmVyaXNoIG1feTsKLSAgICBzdGQ6Om9w
dGlvbmFsPENTU051bWJlcmlzaD4gbV96OworICAgIENTU1NjYWxlKGJvb2wgaXMyRCwgUmVmPENT
U051bWVyaWNWYWx1ZT4sIFJlZjxDU1NOdW1lcmljVmFsdWU+LCBSZWY8Q1NTTnVtZXJpY1ZhbHVl
Pik7CisKKyAgICBSZWY8Q1NTTnVtZXJpY1ZhbHVlPiBtX3g7CisgICAgUmVmPENTU051bWVyaWNW
YWx1ZT4gbV95OworICAgIFJlZjxDU1NOdW1lcmljVmFsdWU+IG1fejsKIH07CiAgICAgCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRv
bS90cmFuc2Zvcm0vQ1NTVHJhbnNmb3JtQ29tcG9uZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy90eXBlZG9tL3RyYW5zZm9ybS9DU1NUcmFuc2Zvcm1Db21wb25lbnQuY3BwCmluZGV4IGRlZmJj
NzIyMWIzZWJhNThiMGM3MzRlZWRkODlhMDA3NDg0MmY5NjYuLjljMmQwNzJhMjFhYWRmZWNmZjll
N2MzMmRlNzNjNWM1YmViZWI1NTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBl
ZG9tL3RyYW5zZm9ybS9DU1NUcmFuc2Zvcm1Db21wb25lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy90eXBlZG9tL3RyYW5zZm9ybS9DU1NUcmFuc2Zvcm1Db21wb25lbnQuY3BwCkBAIC0z
OCwyMCArMzgsMTIgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1XVEZfTUFLRV9JU09fQUxM
T0NBVEVEX0lNUEwoQ1NTVHJhbnNmb3JtQ29tcG9uZW50KTsKLQotLy8gRklYTUU6IEZpeCBhbGwg
dGhlIGZvbGxvd2luZyB2aXJ0dWFsIGZ1bmN0aW9ucwotCiBTdHJpbmcgQ1NTVHJhbnNmb3JtQ29t
cG9uZW50Ojp0b1N0cmluZygpIGNvbnN0CiB7CisgICAgLy8gRklYTUU6IGltcGxlbWVudC4KICAg
ICByZXR1cm4gZW1wdHlTdHJpbmcoKTsKIH0KIAotRXhjZXB0aW9uT3I8UmVmPERPTU1hdHJpeD4+
IENTU1RyYW5zZm9ybUNvbXBvbmVudDo6dG9NYXRyaXgoKQotewotICAgIHJldHVybiBET01NYXRy
aXg6OmZyb21NYXRyaXgoRE9NTWF0cml4SW5pdCB7IH0pOwotfQotCiB9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL3R5cGVkb20v
dHJhbnNmb3JtL0NTU1RyYW5zZm9ybUNvbXBvbmVudC5oIGIvU291cmNlL1dlYkNvcmUvY3NzL3R5
cGVkb20vdHJhbnNmb3JtL0NTU1RyYW5zZm9ybUNvbXBvbmVudC5oCmluZGV4IDQ4NjE3ZGY3Njhm
NTk4ZmIzYjFiZjcwMWYxMjdjYjM3NGNhYWE1NGQuLjY5ZGIzODE4MmMxMmM2MWU5ZTU0MDNhNjIx
MjE1Y2U0Y2UyMWE1NGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL3Ry
YW5zZm9ybS9DU1NUcmFuc2Zvcm1Db21wb25lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
dHlwZWRvbS90cmFuc2Zvcm0vQ1NTVHJhbnNmb3JtQ29tcG9uZW50LmgKQEAgLTM0LDcgKzM0LDYg
QEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogZW51bSBjbGFzcyBDU1NUcmFuc2Zvcm1UeXBlIDog
dWludDhfdCB7Ci0gICAgVHJhbnNmb3JtLAogICAgIE1hdHJpeENvbXBvbmVudCwKICAgICBQZXJz
cGVjdGl2ZSwKICAgICBSb3RhdGUsCkBAIC00OSwxNSArNDgsMTggQEAgY2xhc3MgRE9NTWF0cml4
OwogdGVtcGxhdGU8dHlwZW5hbWU+IGNsYXNzIEV4Y2VwdGlvbk9yOwogCiBjbGFzcyBDU1NUcmFu
c2Zvcm1Db21wb25lbnQgOiBwdWJsaWMgUmVmQ291bnRlZDxDU1NUcmFuc2Zvcm1Db21wb25lbnQ+
IHsKLSAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKENTU1RyYW5zZm9ybUNvbXBvbmVudCk7CiBw
dWJsaWM6CiAgICAgdmlydHVhbCBTdHJpbmcgdG9TdHJpbmcoKSBjb25zdDsKICAgICBib29sIGlz
MkQoKSBjb25zdCB7IHJldHVybiBtX2lzMkQ7IH0KICAgICB2b2lkIHNldElzMkQoYm9vbCBpczJE
KSB7IG1faXMyRCA9IGlzMkQ7IH0KLSAgICB2aXJ0dWFsIEV4Y2VwdGlvbk9yPFJlZjxET01NYXRy
aXg+PiB0b01hdHJpeCgpOworICAgIHZpcnR1YWwgRXhjZXB0aW9uT3I8UmVmPERPTU1hdHJpeD4+
IHRvTWF0cml4KCkgPSAwOwogICAgIHZpcnR1YWwgfkNTU1RyYW5zZm9ybUNvbXBvbmVudCgpID0g
ZGVmYXVsdDsKLSAgICB2aXJ0dWFsIENTU1RyYW5zZm9ybVR5cGUgZ2V0VHlwZSgpIGNvbnN0IHsg
cmV0dXJuIENTU1RyYW5zZm9ybVR5cGU6OlRyYW5zZm9ybTsgfQorICAgIHZpcnR1YWwgQ1NTVHJh
bnNmb3JtVHlwZSBnZXRUeXBlKCkgY29uc3QgPSAwOwogCitwcm90ZWN0ZWQ6CisgICAgLy8gRklY
TUU6IFJlbW92ZSB0aGUgZGVmYXVsdCB2YWx1ZSBvbmNlIGFsbCBDU1NUcmFuc2Zvcm1Db21wb25l
bnQgc3ViY2xhc3NlcyBoYXZlIGlzMkQgaW1wbGVtZW50ZWQuCisgICAgQ1NTVHJhbnNmb3JtQ29t
cG9uZW50KGJvb2wgaXMyRCA9IGZhbHNlKQorICAgICAgICA6IG1faXMyRChpczJEKSB7IH0KIHBy
aXZhdGU6CiAgICAgYm9vbCBtX2lzMkQgeyBmYWxzZSB9OwogfTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy90eXBlZG9tL3RyYW5zZm9ybS9DU1NUcmFuc2Zvcm1WYWx1ZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTVHJhbnNmb3JtVmFsdWUuY3Bw
CmluZGV4IDBiZGIzYmJjZmNjM2VjZjE0NmFiY2UyZmJjMGI1YzMxODhhODJkNzAuLmE2Y2ZmMjM2
ZWU2NWFlMWM0NzhhOWZkMTE3MjQ3ZjM0MzEzZDBhOTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy90eXBlZG9tL3RyYW5zZm9ybS9DU1NUcmFuc2Zvcm1WYWx1ZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvY3NzL3R5cGVkb20vdHJhbnNmb3JtL0NTU1RyYW5zZm9ybVZhbHVlLmNwcApA
QCAtMzUsNiArMzUsNyBAQAogI2luY2x1ZGUgIkNTU1RyYW5zZm9ybUNvbXBvbmVudC5oIgogI2lu
Y2x1ZGUgIkRPTU1hdHJpeC5oIgogI2luY2x1ZGUgIkV4Y2VwdGlvbk9yLmgiCisjaW5jbHVkZSA8
d3RmL0FsZ29yaXRobXMuaD4KICNpbmNsdWRlIDx3dGYvSXNvTWFsbG9jSW5saW5lcy5oPgogI2lu
Y2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCkBAIC00Miw4ICs0MywxMSBAQCBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU1QTChDU1NUcmFuc2Zvcm1W
YWx1ZSk7CiAKLVJlZjxDU1NUcmFuc2Zvcm1WYWx1ZT4gQ1NTVHJhbnNmb3JtVmFsdWU6OmNyZWF0
ZShWZWN0b3I8UmVmUHRyPENTU1RyYW5zZm9ybUNvbXBvbmVudD4+JiYgdHJhbnNmb3JtcykKK0V4
Y2VwdGlvbk9yPFJlZjxDU1NUcmFuc2Zvcm1WYWx1ZT4+IENTU1RyYW5zZm9ybVZhbHVlOjpjcmVh
dGUoVmVjdG9yPFJlZlB0cjxDU1NUcmFuc2Zvcm1Db21wb25lbnQ+PiYmIHRyYW5zZm9ybXMpCiB7
CisgICAgLy8gaHR0cHM6Ly9kcmFmdHMuY3NzLWhvdWRpbmkub3JnL2Nzcy10eXBlZC1vbS8jZG9t
LWNzc3RyYW5zZm9ybXZhbHVlLWNzc3RyYW5zZm9ybXZhbHVlCisgICAgaWYgKHRyYW5zZm9ybXMu
aXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgVHlwZUVycm9yIH07CiAgICAg
cmV0dXJuIGFkb3B0UmVmKCpuZXcgQ1NTVHJhbnNmb3JtVmFsdWUoV1RGTW92ZSh0cmFuc2Zvcm1z
KSkpOwogfQogCkBAIC01NywyMiArNjEsMjMgQEAgRXhjZXB0aW9uT3I8UmVmUHRyPENTU1RyYW5z
Zm9ybUNvbXBvbmVudD4+IENTU1RyYW5zZm9ybVZhbHVlOjppdGVtKHNpemVfdCBpbmRleCkKIAog
RXhjZXB0aW9uT3I8UmVmUHRyPENTU1RyYW5zZm9ybUNvbXBvbmVudD4+IENTU1RyYW5zZm9ybVZh
bHVlOjpzZXRJdGVtKHNpemVfdCBpbmRleCwgUmVmPENTU1RyYW5zZm9ybUNvbXBvbmVudD4mJiB2
YWx1ZSkKIHsKLSAgICBpZiAoaW5kZXggPj0gbV9jb21wb25lbnRzLnNpemUoKSkKKyAgICBpZiAo
aW5kZXggPiBtX2NvbXBvbmVudHMuc2l6ZSgpKQogICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsg
UmFuZ2VFcnJvciwgbWFrZVN0cmluZygiSW5kZXggIiwgaW5kZXgsICIgZXhjZWVkcyB0aGUgcmFu
Z2Ugb2YgQ1NTVHJhbnNmb3JtVmFsdWUuIikgfTsKLSAgICAKLSAgICBtX2NvbXBvbmVudHNbaW5k
ZXhdID0gV1RGTW92ZSh2YWx1ZSk7CisKKyAgICBpZiAoaW5kZXggPT0gbV9jb21wb25lbnRzLnNp
emUoKSkKKyAgICAgICAgbV9jb21wb25lbnRzLmFwcGVuZChXVEZNb3ZlKHZhbHVlKSk7CisgICAg
ZWxzZQorICAgICAgICBtX2NvbXBvbmVudHNbaW5kZXhdID0gV1RGTW92ZSh2YWx1ZSk7CiAKICAg
ICByZXR1cm4gUmVmUHRyPENTU1RyYW5zZm9ybUNvbXBvbmVudD4geyBtX2NvbXBvbmVudHNbaW5k
ZXhdIH07CiB9CiAKIGJvb2wgQ1NTVHJhbnNmb3JtVmFsdWU6OmlzMkQoKSBjb25zdAogewotICAg
IHJldHVybiBtX2lzMkQ7Ci19Ci0KLXZvaWQgQ1NTVHJhbnNmb3JtVmFsdWU6OnNldElzMkQoYm9v
bCBpczJEKQotewotICAgIG1faXMyRCA9IGlzMkQ7CisgICAgLy8gaHR0cHM6Ly9kcmFmdHMuY3Nz
LWhvdWRpbmkub3JnL2Nzcy10eXBlZC1vbS8jZG9tLWNzc3RyYW5zZm9ybXZhbHVlLWlzMmQKKyAg
ICByZXR1cm4gV1RGOjphbGxPZihtX2NvbXBvbmVudHMsIFtdIChhdXRvJiBjb21wb25lbnQpIHsK
KyAgICAgICAgcmV0dXJuIGNvbXBvbmVudCAmJiBjb21wb25lbnQtPmlzMkQoKTsKKyAgICB9KTsK
IH0KIAogRXhjZXB0aW9uT3I8UmVmPERPTU1hdHJpeD4+IENTU1RyYW5zZm9ybVZhbHVlOjp0b01h
dHJpeCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0v
Q1NTVHJhbnNmb3JtVmFsdWUuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL3RyYW5zZm9y
bS9DU1NUcmFuc2Zvcm1WYWx1ZS5oCmluZGV4IGE1YTBlNzhiMGI5ZDk0MjQ3NTNmMTQ2YTdjNzA4
ZWNiYmM5YjIzYTcuLjVhN2ViNGEzYmU4NDZjNmE3ZDU0NzAwN2ViMDViYjI0YTkxM2FjMzQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL3RyYW5zZm9ybS9DU1NUcmFuc2Zv
cm1WYWx1ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL3RyYW5zZm9ybS9DU1NU
cmFuc2Zvcm1WYWx1ZS5oCkBAIC00MCwxNCArNDAsMTMgQEAgdGVtcGxhdGU8dHlwZW5hbWU+IGNs
YXNzIEV4Y2VwdGlvbk9yOwogY2xhc3MgQ1NTVHJhbnNmb3JtVmFsdWUgZmluYWwgOiBwdWJsaWMg
Q1NTU3R5bGVWYWx1ZSB7CiAgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChDU1NUcmFuc2Zvcm1W
YWx1ZSk7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFJlZjxDU1NUcmFuc2Zvcm1WYWx1ZT4gY3JlYXRl
KFZlY3RvcjxSZWZQdHI8Q1NTVHJhbnNmb3JtQ29tcG9uZW50Pj4mJiB0cmFuc2Zvcm1zKTsKKyAg
ICBzdGF0aWMgRXhjZXB0aW9uT3I8UmVmPENTU1RyYW5zZm9ybVZhbHVlPj4gY3JlYXRlKFZlY3Rv
cjxSZWZQdHI8Q1NTVHJhbnNmb3JtQ29tcG9uZW50Pj4mJik7CiAKICAgICBzaXplX3QgbGVuZ3Ro
KCkgY29uc3QgeyByZXR1cm4gbV9jb21wb25lbnRzLnNpemUoKTsgfQogICAgIEV4Y2VwdGlvbk9y
PFJlZlB0cjxDU1NUcmFuc2Zvcm1Db21wb25lbnQ+PiBpdGVtKHNpemVfdCk7CiAgICAgRXhjZXB0
aW9uT3I8UmVmUHRyPENTU1RyYW5zZm9ybUNvbXBvbmVudD4+IHNldEl0ZW0oc2l6ZV90LCBSZWY8
Q1NTVHJhbnNmb3JtQ29tcG9uZW50PiYmKTsKICAgICAKICAgICBib29sIGlzMkQoKSBjb25zdDsK
LSAgICB2b2lkIHNldElzMkQoYm9vbCk7CiAgICAgCiAgICAgRXhjZXB0aW9uT3I8UmVmPERPTU1h
dHJpeD4+IHRvTWF0cml4KCk7CiAgICAgCkBAIC01NSw3ICs1NCw2IEBAIHB1YmxpYzoKIHByaXZh
dGU6CiAgICAgQ1NTVHJhbnNmb3JtVmFsdWUoVmVjdG9yPFJlZlB0cjxDU1NUcmFuc2Zvcm1Db21w
b25lbnQ+PiYmKTsKIAotICAgIGJvb2wgbV9pczJEIHsgZmFsc2UgfTsKICAgICBWZWN0b3I8UmVm
UHRyPENTU1RyYW5zZm9ybUNvbXBvbmVudD4+IG1fY29tcG9uZW50czsKIH07CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL3RyYW5zZm9ybS9DU1NUcmFuc2xhdGUuY3Bw
IGIvU291cmNlL1dlYkNvcmUvY3NzL3R5cGVkb20vdHJhbnNmb3JtL0NTU1RyYW5zbGF0ZS5jcHAK
aW5kZXggM2Y5NzY3MjY0NDk4NTk5Mjg5NzYzZWYxMWNjNzk3OGVhZDc4Y2M2Zi4uOThmZDFhYjU1
ZDEyYTY2MTk0ZjgwNTM0OWFlYTkxNzA5ZDJhNjRiMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvY3NzL3R5cGVkb20vdHJhbnNmb3JtL0NTU1RyYW5zbGF0ZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvY3NzL3R5cGVkb20vdHJhbnNmb3JtL0NTU1RyYW5zbGF0ZS5jcHAKQEAgLTMzLDYgKzMz
LDggQEAKICNpZiBFTkFCTEUoQ1NTX1RZUEVEX09NKQogCiAjaW5jbHVkZSAiQ1NTTnVtZXJpY1Zh
bHVlLmgiCisjaW5jbHVkZSAiQ1NTVW5pdFZhbHVlLmgiCisjaW5jbHVkZSAiQ1NTVW5pdHMuaCIK
ICNpbmNsdWRlICJET01NYXRyaXguaCIKICNpbmNsdWRlICJFeGNlcHRpb25Pci5oIgogI2luY2x1
ZGUgPHd0Zi9Jc29NYWxsb2NJbmxpbmVzLmg+CkBAIC00MSwxMyArNDMsMjMgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogCiBXVEZfTUFLRV9JU09fQUxMT0NBVEVEX0lNUEwoQ1NTVHJhbnNsYXRlKTsK
IAotUmVmPENTU1RyYW5zbGF0ZT4gQ1NTVHJhbnNsYXRlOjpjcmVhdGUoUmVmPENTU051bWVyaWNW
YWx1ZT4mJiB4LCBSZWY8Q1NTTnVtZXJpY1ZhbHVlPiYmIHksIFJlZlB0cjxDU1NOdW1lcmljVmFs
dWU+JiYgeikKK0V4Y2VwdGlvbk9yPFJlZjxDU1NUcmFuc2xhdGU+PiBDU1NUcmFuc2xhdGU6OmNy
ZWF0ZShSZWY8Q1NTTnVtZXJpY1ZhbHVlPiB4LCBSZWY8Q1NTTnVtZXJpY1ZhbHVlPiB5LCBSZWZQ
dHI8Q1NTTnVtZXJpY1ZhbHVlPiB6KQogewotICAgIHJldHVybiBhZG9wdFJlZigqbmV3IENTU1Ry
YW5zbGF0ZShXVEZNb3ZlKHgpLCBXVEZNb3ZlKHkpLCBXVEZNb3ZlKHopKSk7CisgICAgYm9vbCBp
czJEID0gIXo7CisgICAgaWYgKGlzMkQpCisgICAgICAgIHogPSBDU1NVbml0VmFsdWU6OmNyZWF0
ZSgwLjAsIENTU1VuaXRUeXBlOjpDU1NfUFgpOworCisgICAgaWYgKCF4LT50eXBlKCkubWF0Y2hl
c1R5cGVPclBlcmNlbnRhZ2U8Q1NTTnVtZXJpY0Jhc2VUeXBlOjpMZW5ndGg+KCkKKyAgICAgICAg
fHwgIXktPnR5cGUoKS5tYXRjaGVzVHlwZU9yUGVyY2VudGFnZTxDU1NOdW1lcmljQmFzZVR5cGU6
Okxlbmd0aD4oKQorICAgICAgICB8fCAhei0+dHlwZSgpLm1hdGNoZXNUeXBlT3JQZXJjZW50YWdl
PENTU051bWVyaWNCYXNlVHlwZTo6TGVuZ3RoPigpKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9u
IHsgVHlwZUVycm9yIH07CisKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBDU1NUcmFuc2xhdGUo
aXMyRCwgV1RGTW92ZSh4KSwgV1RGTW92ZSh5KSwgei5yZWxlYXNlTm9uTnVsbCgpKSk7CiB9CiAK
LUNTU1RyYW5zbGF0ZTo6Q1NTVHJhbnNsYXRlKFJlZjxDU1NOdW1lcmljVmFsdWU+JiYgeCwgUmVm
PENTU051bWVyaWNWYWx1ZT4mJiB5LCBSZWZQdHI8Q1NTTnVtZXJpY1ZhbHVlPiYmIHopCi0gICAg
OiBtX3goV1RGTW92ZSh4KSkKK0NTU1RyYW5zbGF0ZTo6Q1NTVHJhbnNsYXRlKGJvb2wgaXMyRCwg
UmVmPENTU051bWVyaWNWYWx1ZT4geCwgUmVmPENTU051bWVyaWNWYWx1ZT4geSwgUmVmPENTU051
bWVyaWNWYWx1ZT4geikKKyAgICA6IENTU1RyYW5zZm9ybUNvbXBvbmVudChpczJEKQorICAgICwg
bV94KFdURk1vdmUoeCkpCiAgICAgLCBtX3koV1RGTW92ZSh5KSkKICAgICAsIG1feihXVEZNb3Zl
KHopKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL3R5cGVkb20vdHJhbnNmb3Jt
L0NTU1RyYW5zbGF0ZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL3R5cGVkb20vdHJhbnNmb3JtL0NT
U1RyYW5zbGF0ZS5oCmluZGV4IDYyNmYyZDQ0ZTY2YTRlNWM4MWRlYWM3MTY4YTRmY2I5YzlkNzBj
MDEuLmQxNjM1ZDE2Y2JiOTQ2NjY5N2ZlNDY3ZDU0NWJiYzQ3YTQwMjZiZDIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL3RyYW5zZm9ybS9DU1NUcmFuc2xhdGUuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTVHJhbnNsYXRlLmgKQEAg
LTM3LDI1ICszNywyNyBAQCB0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7CiBj
bGFzcyBDU1NUcmFuc2xhdGUgOiBwdWJsaWMgQ1NTVHJhbnNmb3JtQ29tcG9uZW50IHsKICAgICBX
VEZfTUFLRV9JU09fQUxMT0NBVEVEKENTU1RyYW5zbGF0ZSk7CiBwdWJsaWM6Ci0gICAgc3RhdGlj
IFJlZjxDU1NUcmFuc2xhdGU+IGNyZWF0ZShSZWY8Q1NTTnVtZXJpY1ZhbHVlPiYmLCBSZWY8Q1NT
TnVtZXJpY1ZhbHVlPiYmLCBSZWZQdHI8Q1NTTnVtZXJpY1ZhbHVlPiYmKTsKKyAgICBzdGF0aWMg
RXhjZXB0aW9uT3I8UmVmPENTU1RyYW5zbGF0ZT4+IGNyZWF0ZShSZWY8Q1NTTnVtZXJpY1ZhbHVl
PiB4LCBSZWY8Q1NTTnVtZXJpY1ZhbHVlPiB5LCBSZWZQdHI8Q1NTTnVtZXJpY1ZhbHVlPiB6KTsK
ICAgICAKICAgICBSZWY8Q1NTTnVtZXJpY1ZhbHVlPiB4KCkgeyByZXR1cm4gbV94OyB9CiAgICAg
UmVmPENTU051bWVyaWNWYWx1ZT4geSgpIHsgcmV0dXJuIG1feTsgfQotICAgIFJlZlB0cjxDU1NO
dW1lcmljVmFsdWU+IHooKSB7IHJldHVybiBtX3o7IH0KKyAgICBSZWY8Q1NTTnVtZXJpY1ZhbHVl
PiB6KCkgeyByZXR1cm4gbV96OyB9CiAKLSAgICB2b2lkIHNldFgoUmVmPENTU051bWVyaWNWYWx1
ZT4mJiB4KSB7IG1feCA9IFdURk1vdmUoeCk7IH0KLSAgICB2b2lkIHNldFkoUmVmPENTU051bWVy
aWNWYWx1ZT4mJiB5KSB7IG1feSA9IFdURk1vdmUoeSk7IH0KLSAgICB2b2lkIHNldFooUmVmPENT
U051bWVyaWNWYWx1ZT4mJiB6KSB7IG1feiA9IFdURk1vdmUoeik7IH0KKyAgICB2b2lkIHNldFgo
UmVmPENTU051bWVyaWNWYWx1ZT4geCkgeyBtX3ggPSBXVEZNb3ZlKHgpOyB9CisgICAgdm9pZCBz
ZXRZKFJlZjxDU1NOdW1lcmljVmFsdWU+IHkpIHsgbV95ID0gV1RGTW92ZSh5KTsgfQorICAgIHZv
aWQgc2V0WihSZWY8Q1NTTnVtZXJpY1ZhbHVlPiB6KSB7IG1feiA9IFdURk1vdmUoeik7IH0KICAg
ICAKICAgICBTdHJpbmcgdG9TdHJpbmcoKSBjb25zdCBmaW5hbDsKICAgICBFeGNlcHRpb25PcjxS
ZWY8RE9NTWF0cml4Pj4gdG9NYXRyaXgoKSBmaW5hbDsKIAogcHJpdmF0ZToKLSAgICBDU1NUcmFu
c2xhdGUoUmVmPENTU051bWVyaWNWYWx1ZT4mJiwgUmVmPENTU051bWVyaWNWYWx1ZT4mJiwgUmVm
UHRyPENTU051bWVyaWNWYWx1ZT4mJik7Ci0gICAgCisgICAgQ1NTVHJhbnNsYXRlKGJvb2wgaXMy
RCwgUmVmPENTU051bWVyaWNWYWx1ZT4sIFJlZjxDU1NOdW1lcmljVmFsdWU+LCBSZWY8Q1NTTnVt
ZXJpY1ZhbHVlPik7CisKKyAgICBDU1NUcmFuc2Zvcm1UeXBlIGdldFR5cGUoKSBjb25zdCBmaW5h
bCB7IHJldHVybiBDU1NUcmFuc2Zvcm1UeXBlOjpUcmFuc2xhdGU7IH0KKwogICAgIFJlZjxDU1NO
dW1lcmljVmFsdWU+IG1feDsKICAgICBSZWY8Q1NTTnVtZXJpY1ZhbHVlPiBtX3k7Ci0gICAgUmVm
UHRyPENTU051bWVyaWNWYWx1ZT4gbV96OworICAgIFJlZjxDU1NOdW1lcmljVmFsdWU+IG1fejsK
IH07CiAgICAgCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5n
ZUxvZwppbmRleCA1NGI5MzY0MGUyNzg0Y2QzMTNkZjM4OWU1ZWRiM2Y3NmRiMTUyZWE5Li45MWZh
YmRiNGIxNGZkNzZlNzQxMWUyZGM1YmI4NWFiYmI2NDFjOTdkIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMi0wNC0xOCAgQWxleCBDaHJpc3RlbnNl
biAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIEltcGxlbWVudCBDU1NUcmFu
c2Zvcm1WYWx1ZS5pczJECisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMzk0NjIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXR5cGVkLW9tL3N0eWxldmFsdWUt
c3ViY2xhc3Nlcy9jc3NNYXRyaXhDb21wb25lbnQudGVudGF0aXZlLWV4cGVjdGVkLnR4dDoKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy10eXBlZC1vbS9zdHlsZXZhbHVlLXN1
YmNsYXNzZXMvY3NzUm90YXRlLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdHlwZWQtb20vc3R5bGV2YWx1ZS1zdWJjbGFzc2VzL2Nz
c1NjYWxlLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3MtdHlwZWQtb20vc3R5bGV2YWx1ZS1zdWJjbGFzc2VzL2Nzc1RyYW5zZm9ybVZh
bHVlLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQ6CisKIDIwMjItMDQtMTQgIFlvdWVubiBGYWJsZXQg
IDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIEV4cG9zZSB3b3JrZXJzIGFzIHNlcnZpY2Ug
d29ya2VyIGNsaWVudHMgYW5kIGltcGxlbWVudCByZWdpc3RyYXRpb24gbWF0Y2hpbmcgZm9yIGRl
ZGljYXRlZCB3b3JrZXJzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdHlwZWQtb20vc3R5bGV2YWx1ZS1zdWJjbGFzc2VzL2Nz
c01hdHJpeENvbXBvbmVudC50ZW50YXRpdmUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXR5cGVkLW9tL3N0eWxldmFsdWUt
c3ViY2xhc3Nlcy9jc3NNYXRyaXhDb21wb25lbnQudGVudGF0aXZlLWV4cGVjdGVkLnR4dAppbmRl
eCBhNTYwZDlmZDY4YmUxZTNiMjdmMWJiM2ZmOWM2MjNmOWNlYjE4NzNkLi43YTk3NDVmOTA4OWQ2
MjJlMWU3ZjVhMGE0YzIyNmFkMGFhY2ZhM2EzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdHlwZWQtb20vc3R5bGV2YWx1ZS1z
dWJjbGFzc2VzL2Nzc01hdHJpeENvbXBvbmVudC50ZW50YXRpdmUtZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy10eXBl
ZC1vbS9zdHlsZXZhbHVlLXN1YmNsYXNzZXMvY3NzTWF0cml4Q29tcG9uZW50LnRlbnRhdGl2ZS1l
eHBlY3RlZC50eHQKQEAgLTEsMTAgKzEsMTAgQEAKIAotRkFJTCBDU1NNYXRyaXhDb21wb25lbnQg
Y2FuIGJlIGNvbnN0cnVjdGVkIGZyb20gYSAyRCBtYXRyaXggd2l0aCBpczJEIHRydWUgYXNzZXJ0
X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTIENTU01hdHJpeENvbXBvbmVudCBj
YW4gYmUgY29uc3RydWN0ZWQgZnJvbSBhIDJEIG1hdHJpeCB3aXRoIGlzMkQgdHJ1ZQogUEFTUyBD
U1NNYXRyaXhDb21wb25lbnQgY2FuIGJlIGNvbnN0cnVjdGVkIGZyb20gYSAyRCBtYXRyaXggd2l0
aCBpczJEIGZhbHNlCiBGQUlMIENTU01hdHJpeENvbXBvbmVudCBjYW4gYmUgY29uc3RydWN0ZWQg
ZnJvbSBhIDJEIG1hdHJpeCB3aXRob3V0IGEgQ1NTTWF0cml4Q29tcG9uZW50T3B0aW9ucyBhc3Nl
cnRfZXF1YWxzOiBleHBlY3RlZCB0cnVlIGJ1dCBnb3QgZmFsc2UKIEZBSUwgQ1NTTWF0cml4Q29t
cG9uZW50IGNhbiBiZSBjb25zdHJ1Y3RlZCBmcm9tIGEgMkQgbWF0cml4IHdpdGggYW4gaW52YWxp
ZCBDU1NNYXRyaXhDb21wb25lbnRPcHRpb25zIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIHRydWUg
YnV0IGdvdCBmYWxzZQogUEFTUyBDU1NNYXRyaXhDb21wb25lbnQubWF0cml4IGNhbiBiZSB1cGRh
dGVkIHRvIGEgMkQgbWF0cml4Ci1GQUlMIENTU01hdHJpeENvbXBvbmVudCBjYW4gYmUgY29uc3Ry
dWN0ZWQgZnJvbSBhIDNEIG1hdHJpeCB3aXRoIGlzMkQgdHJ1ZSBhc3NlcnRfdHJ1ZTogZXhwZWN0
ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgQ1NTTWF0cml4Q29tcG9uZW50IGNhbiBiZSBjb25zdHJ1
Y3RlZCBmcm9tIGEgM0QgbWF0cml4IHdpdGggaXMyRCB0cnVlCiBQQVNTIENTU01hdHJpeENvbXBv
bmVudCBjYW4gYmUgY29uc3RydWN0ZWQgZnJvbSBhIDNEIG1hdHJpeCB3aXRoIGlzMkQgZmFsc2UK
IFBBU1MgQ1NTTWF0cml4Q29tcG9uZW50IGNhbiBiZSBjb25zdHJ1Y3RlZCBmcm9tIGEgM0QgbWF0
cml4IHdpdGhvdXQgYSBDU1NNYXRyaXhDb21wb25lbnRPcHRpb25zCiBQQVNTIENTU01hdHJpeENv
bXBvbmVudCBjYW4gYmUgY29uc3RydWN0ZWQgZnJvbSBhIDNEIG1hdHJpeCB3aXRoIGFuIGludmFs
aWQgQ1NTTWF0cml4Q29tcG9uZW50T3B0aW9ucwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXR5cGVkLW9tL3N0eWxldmFsdWUt
c3ViY2xhc3Nlcy9jc3NSb3RhdGUudGVudGF0aXZlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy10eXBlZC1vbS9zdHlsZXZh
bHVlLXN1YmNsYXNzZXMvY3NzUm90YXRlLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQKaW5kZXggN2Zl
NTJmOTFjMDI2ODM0OGJhOTgwZTQwMzA3ZTM5MmUzYTM3N2ZkMy4uMWViNmQxYzYzZDkzZDI3MWZi
YzdiYzcyOTNhZmE2NDUyYjY0Yzk3NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXR5cGVkLW9tL3N0eWxldmFsdWUtc3ViY2xh
c3Nlcy9jc3NSb3RhdGUudGVudGF0aXZlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdHlwZWQtb20vc3R5bGV2YWx1
ZS1zdWJjbGFzc2VzL2Nzc1JvdGF0ZS50ZW50YXRpdmUtZXhwZWN0ZWQudHh0CkBAIC0xLDI4ICsx
LDI4IEBACiAKLUZBSUwgQ29uc3RydWN0aW5nIGEgQ1NTUm90YXRlIHdpdGggYSBDU1NVbml0VmFs
dWUgd2l0aCB0eXBlIG90aGVyIHRoYW4gYW5nbGUgZm9yIHRoZSBhbmdsZSB0aHJvd3MgYSBUeXBl
RXJyb3IgYXNzZXJ0X3Rocm93c19qczogZnVuY3Rpb24gIigpID0+IG5ldyBDU1NSb3RhdGUoYW5n
bGUpIiBkaWQgbm90IHRocm93Ci1GQUlMIENvbnN0cnVjdGluZyBhIENTU1JvdGF0ZSB3aXRoIGEg
Q1NTTWF0aFZhbHVlIHRoYXQgZG9lc24ndCBtYXRjaCA8YW5nbGU+IGZvciB0aGUgYW5nbGUgdGhy
b3dzIGEgVHlwZUVycm9yIGFzc2VydF90aHJvd3NfanM6IGZ1bmN0aW9uICIoKSA9PiBuZXcgQ1NT
Um90YXRlKGFuZ2xlKSIgZGlkIG5vdCB0aHJvdwotRkFJTCBDb25zdHJ1Y3RpbmcgYSBDU1NSb3Rh
dGUgd2l0aCBhIENTU1VuaXRWYWx1ZSB3aXRoIHR5cGUgb3RoZXIgdGhhbiBudW1iZXIgZm9yIHRo
ZSBjb29yZGluYXRlcyB0aHJvd3MgYSBUeXBlRXJyb3IgYXNzZXJ0X3Rocm93c19qczogZnVuY3Rp
b24gIigpID0+IG5ldyBDU1NSb3RhdGUoY29vcmQsIDAsIDAsIENTUy5kZWcoMCkpIiBkaWQgbm90
IHRocm93Ci1GQUlMIENvbnN0cnVjdGluZyBhIENTU1JvdGF0ZSB3aXRoIGEgQ1NTTWF0aFZhbHVl
IHRoYXQgZG9lc24ndCBtYXRjaCA8bnVtYmVyPiBmb3IgdGhlIGNvb3JkaW5hdGVzIHRocm93cyBh
IFR5cGVFcnJvciBhc3NlcnRfdGhyb3dzX2pzOiBmdW5jdGlvbiAiKCkgPT4gbmV3IENTU1JvdGF0
ZShjb29yZCwgMCwgMCwgQ1NTLmRlZygwKSkiIGRpZCBub3QgdGhyb3cKLUZBSUwgVXBkYXRpbmcg
Q1NTUm90YXRlLnggdG8gYSBDU1NVbml0VmFsdWUgd2l0aCB0eXBlIG90aGVyIHRoYW4gbnVtYmVy
IHRocm93cyBhIFR5cGVFcnJvciBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiQ1NTVW5pdFZhbHVl
IiBidXQgZ290ICJOdW1iZXIiCi1GQUlMIFVwZGF0aW5nIENTU1JvdGF0ZS54IHRvIGEgQ1NTTWF0
aFZhbHVlIHRoYXQgZG9lc24ndCBtYXRjaCA8bnVtYmVyPiB0aHJvd3MgYSBUeXBlRXJyb3IgYXNz
ZXJ0X2VxdWFsczogZXhwZWN0ZWQgIkNTU1VuaXRWYWx1ZSIgYnV0IGdvdCAiTnVtYmVyIgotRkFJ
TCBVcGRhdGluZyBDU1NSb3RhdGUueSB0byBhIENTU1VuaXRWYWx1ZSB3aXRoIHR5cGUgb3RoZXIg
dGhhbiBudW1iZXIgdGhyb3dzIGEgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJD
U1NVbml0VmFsdWUiIGJ1dCBnb3QgIk51bWJlciIKLUZBSUwgVXBkYXRpbmcgQ1NTUm90YXRlLnkg
dG8gYSBDU1NNYXRoVmFsdWUgdGhhdCBkb2Vzbid0IG1hdGNoIDxudW1iZXI+IHRocm93cyBhIFR5
cGVFcnJvciBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiQ1NTVW5pdFZhbHVlIiBidXQgZ290ICJO
dW1iZXIiCi1GQUlMIFVwZGF0aW5nIENTU1JvdGF0ZS56IHRvIGEgQ1NTVW5pdFZhbHVlIHdpdGgg
dHlwZSBvdGhlciB0aGFuIG51bWJlciB0aHJvd3MgYSBUeXBlRXJyb3IgYXNzZXJ0X2VxdWFsczog
ZXhwZWN0ZWQgIkNTU1VuaXRWYWx1ZSIgYnV0IGdvdCAiTnVtYmVyIgotRkFJTCBVcGRhdGluZyBD
U1NSb3RhdGUueiB0byBhIENTU01hdGhWYWx1ZSB0aGF0IGRvZXNuJ3QgbWF0Y2ggPG51bWJlcj4g
dGhyb3dzIGEgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJDU1NVbml0VmFsdWUi
IGJ1dCBnb3QgIk51bWJlciIKLUZBSUwgVXBkYXRpbmcgQ1NTUm90YXRlLmFuZ2xlIHRvIGEgQ1NT
VW5pdFZhbHVlIHdpdGggdHlwZSBvdGhlciB0aGFuIGFuZ2xlIHRocm93cyBhIFR5cGVFcnJvciBh
c3NlcnRfdGhyb3dzX2pzOiBmdW5jdGlvbiAiKCkgPT4gcmVzdWx0LmFuZ2xlID0gYW5nbGUiIGRp
ZCBub3QgdGhyb3cKLUZBSUwgVXBkYXRpbmcgQ1NTUm90YXRlLmFuZ2xlIHRvIGEgQ1NTTWF0aFZh
bHVlIHRoYXQgZG9lc24ndCBtYXRjaCA8YW5nbGU+IHRocm93cyBhIFR5cGVFcnJvciBhc3NlcnRf
dGhyb3dzX2pzOiBmdW5jdGlvbiAiKCkgPT4gcmVzdWx0LmFuZ2xlID0gYW5nbGUiIGRpZCBub3Qg
dGhyb3cKLUZBSUwgQ1NTUm90YXRlIGNhbiBiZSBjb25zdHJ1Y3RlZCBmcm9tIGEgc2luZ2xlIGFu
Z2xlIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJDU1NVbml0VmFsdWUiIGJ1dCBnb3QgIk51bWJl
ciIKLUZBSUwgQ1NTUm90YXRlIGNhbiBiZSBjb25zdHJ1Y3RlZCBmcm9tIG51bWJlcmlzaCBjb29y
ZGluYXRlcyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiQ1NTVW5pdFZhbHVlIiBidXQgZ290ICJO
dW1iZXIiCi1GQUlMIENTU1JvdGF0ZSBjYW4gYmUgY29uc3RydWN0ZWQgZnJvbSBDU1NNYXRoVmFs
dWVzIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJDU1NNYXRoUHJvZHVjdCIgYnV0IGdvdCAiQ1NT
TWF0aFN1bSIKLUZBSUwgQ1NTUm90YXRlLnggY2FuIGJlIHVwZGF0ZWQgdG8gYSBkb3VibGUgYXNz
ZXJ0X2VxdWFsczogZXhwZWN0ZWQgIkNTU1VuaXRWYWx1ZSIgYnV0IGdvdCAiTnVtYmVyIgorUEFT
UyBDb25zdHJ1Y3RpbmcgYSBDU1NSb3RhdGUgd2l0aCBhIENTU1VuaXRWYWx1ZSB3aXRoIHR5cGUg
b3RoZXIgdGhhbiBhbmdsZSBmb3IgdGhlIGFuZ2xlIHRocm93cyBhIFR5cGVFcnJvcgorUEFTUyBD
b25zdHJ1Y3RpbmcgYSBDU1NSb3RhdGUgd2l0aCBhIENTU01hdGhWYWx1ZSB0aGF0IGRvZXNuJ3Qg
bWF0Y2ggPGFuZ2xlPiBmb3IgdGhlIGFuZ2xlIHRocm93cyBhIFR5cGVFcnJvcgorUEFTUyBDb25z
dHJ1Y3RpbmcgYSBDU1NSb3RhdGUgd2l0aCBhIENTU1VuaXRWYWx1ZSB3aXRoIHR5cGUgb3RoZXIg
dGhhbiBudW1iZXIgZm9yIHRoZSBjb29yZGluYXRlcyB0aHJvd3MgYSBUeXBlRXJyb3IKK1BBU1Mg
Q29uc3RydWN0aW5nIGEgQ1NTUm90YXRlIHdpdGggYSBDU1NNYXRoVmFsdWUgdGhhdCBkb2Vzbid0
IG1hdGNoIDxudW1iZXI+IGZvciB0aGUgY29vcmRpbmF0ZXMgdGhyb3dzIGEgVHlwZUVycm9yCitQ
QVNTIFVwZGF0aW5nIENTU1JvdGF0ZS54IHRvIGEgQ1NTVW5pdFZhbHVlIHdpdGggdHlwZSBvdGhl
ciB0aGFuIG51bWJlciB0aHJvd3MgYSBUeXBlRXJyb3IKK1BBU1MgVXBkYXRpbmcgQ1NTUm90YXRl
LnggdG8gYSBDU1NNYXRoVmFsdWUgdGhhdCBkb2Vzbid0IG1hdGNoIDxudW1iZXI+IHRocm93cyBh
IFR5cGVFcnJvcgorUEFTUyBVcGRhdGluZyBDU1NSb3RhdGUueSB0byBhIENTU1VuaXRWYWx1ZSB3
aXRoIHR5cGUgb3RoZXIgdGhhbiBudW1iZXIgdGhyb3dzIGEgVHlwZUVycm9yCitQQVNTIFVwZGF0
aW5nIENTU1JvdGF0ZS55IHRvIGEgQ1NTTWF0aFZhbHVlIHRoYXQgZG9lc24ndCBtYXRjaCA8bnVt
YmVyPiB0aHJvd3MgYSBUeXBlRXJyb3IKK1BBU1MgVXBkYXRpbmcgQ1NTUm90YXRlLnogdG8gYSBD
U1NVbml0VmFsdWUgd2l0aCB0eXBlIG90aGVyIHRoYW4gbnVtYmVyIHRocm93cyBhIFR5cGVFcnJv
cgorUEFTUyBVcGRhdGluZyBDU1NSb3RhdGUueiB0byBhIENTU01hdGhWYWx1ZSB0aGF0IGRvZXNu
J3QgbWF0Y2ggPG51bWJlcj4gdGhyb3dzIGEgVHlwZUVycm9yCitQQVNTIFVwZGF0aW5nIENTU1Jv
dGF0ZS5hbmdsZSB0byBhIENTU1VuaXRWYWx1ZSB3aXRoIHR5cGUgb3RoZXIgdGhhbiBhbmdsZSB0
aHJvd3MgYSBUeXBlRXJyb3IKK1BBU1MgVXBkYXRpbmcgQ1NTUm90YXRlLmFuZ2xlIHRvIGEgQ1NT
TWF0aFZhbHVlIHRoYXQgZG9lc24ndCBtYXRjaCA8YW5nbGU+IHRocm93cyBhIFR5cGVFcnJvcgor
UEFTUyBDU1NSb3RhdGUgY2FuIGJlIGNvbnN0cnVjdGVkIGZyb20gYSBzaW5nbGUgYW5nbGUKK1BB
U1MgQ1NTUm90YXRlIGNhbiBiZSBjb25zdHJ1Y3RlZCBmcm9tIG51bWJlcmlzaCBjb29yZGluYXRl
cworRkFJTCBDU1NSb3RhdGUgY2FuIGJlIGNvbnN0cnVjdGVkIGZyb20gQ1NTTWF0aFZhbHVlcyBU
eXBlIGVycm9yCitQQVNTIENTU1JvdGF0ZS54IGNhbiBiZSB1cGRhdGVkIHRvIGEgZG91YmxlCiBQ
QVNTIENTU1JvdGF0ZS54IGNhbiBiZSB1cGRhdGVkIHRvIGEgbnVtYmVyIENTU1VuaXRWYWx1ZQog
UEFTUyBDU1NSb3RhdGUueCBjYW4gYmUgdXBkYXRlZCB0byBhIENTU01hdGhWYWx1ZSBtYXRjaGlu
ZyA8bnVtYmVyPgotRkFJTCBDU1NSb3RhdGUueSBjYW4gYmUgdXBkYXRlZCB0byBhIGRvdWJsZSBh
c3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiQ1NTVW5pdFZhbHVlIiBidXQgZ290ICJOdW1iZXIiCi1G
QUlMIENTU1JvdGF0ZS55IGNhbiBiZSB1cGRhdGVkIHRvIGEgbnVtYmVyIENTU1VuaXRWYWx1ZSBh
c3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiQ1NTVW5pdFZhbHVlIiBidXQgZ290ICJOdW1iZXIiCi1G
QUlMIENTU1JvdGF0ZS55IGNhbiBiZSB1cGRhdGVkIHRvIGEgQ1NTTWF0aFZhbHVlIG1hdGNoaW5n
IDxudW1iZXI+IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJDU1NNYXRoU3VtIiBidXQgZ290ICJO
dW1iZXIiCi1GQUlMIENTU1JvdGF0ZS56IGNhbiBiZSB1cGRhdGVkIHRvIGEgZG91YmxlIGFzc2Vy
dF9lcXVhbHM6IGV4cGVjdGVkICJDU1NVbml0VmFsdWUiIGJ1dCBnb3QgIk51bWJlciIKLUZBSUwg
Q1NTUm90YXRlLnogY2FuIGJlIHVwZGF0ZWQgdG8gYSBudW1iZXIgQ1NTVW5pdFZhbHVlIGFzc2Vy
dF9lcXVhbHM6IGV4cGVjdGVkICJDU1NVbml0VmFsdWUiIGJ1dCBnb3QgIk51bWJlciIKLUZBSUwg
Q1NTUm90YXRlLnogY2FuIGJlIHVwZGF0ZWQgdG8gYSBDU1NNYXRoVmFsdWUgbWF0Y2hpbmcgPG51
bWJlcj4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIkNTU01hdGhTdW0iIGJ1dCBnb3QgIk51bWJl
ciIKK1BBU1MgQ1NTUm90YXRlLnkgY2FuIGJlIHVwZGF0ZWQgdG8gYSBkb3VibGUKK1BBU1MgQ1NT
Um90YXRlLnkgY2FuIGJlIHVwZGF0ZWQgdG8gYSBudW1iZXIgQ1NTVW5pdFZhbHVlCitQQVNTIENT
U1JvdGF0ZS55IGNhbiBiZSB1cGRhdGVkIHRvIGEgQ1NTTWF0aFZhbHVlIG1hdGNoaW5nIDxudW1i
ZXI+CitQQVNTIENTU1JvdGF0ZS56IGNhbiBiZSB1cGRhdGVkIHRvIGEgZG91YmxlCitQQVNTIENT
U1JvdGF0ZS56IGNhbiBiZSB1cGRhdGVkIHRvIGEgbnVtYmVyIENTU1VuaXRWYWx1ZQorUEFTUyBD
U1NSb3RhdGUueiBjYW4gYmUgdXBkYXRlZCB0byBhIENTU01hdGhWYWx1ZSBtYXRjaGluZyA8bnVt
YmVyPgogUEFTUyBDU1NSb3RhdGUuYW5nbGUgY2FuIGJlIHVwZGF0ZWQgdG8gYSBkZWdyZWUgQ1NT
VW5pdFZhbHVlCiBQQVNTIENTU1JvdGF0ZS5hbmdsZSBjYW4gYmUgdXBkYXRlZCB0byBhIENTU01h
dGhWYWx1ZSBtYXRjaGluZyA8YW5nbGU+CiBQQVNTIE1vZGlmeWluZyBDU1NSb3RhdGUuaXMyRCBj
YW4gYmUgdXBkYXRlZCB0byB0cnVlIG9yIGZhbHNlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdHlwZWQtb20vc3R5bGV2YWx1
ZS1zdWJjbGFzc2VzL2Nzc1NjYWxlLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdHlwZWQtb20vc3R5bGV2
YWx1ZS1zdWJjbGFzc2VzL2Nzc1NjYWxlLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQKaW5kZXggNmVl
NmU3MzFjYzMxMmE3YjU4ZTU2YTM0N2ZlMmM3NjM5MTkzNWY0Ni4uZTE1NjNkOTYyZmRjNjg3NzNl
NTRkZGM2NmE1ZTYyNTEyZjk4NjhhNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXR5cGVkLW9tL3N0eWxldmFsdWUtc3ViY2xh
c3Nlcy9jc3NTY2FsZS50ZW50YXRpdmUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy10eXBlZC1vbS9zdHlsZXZhbHVl
LXN1YmNsYXNzZXMvY3NzU2NhbGUudGVudGF0aXZlLWV4cGVjdGVkLnR4dApAQCAtMSwyNiArMSwy
NiBAQAogCi1GQUlMIENvbnN0cnVjdGluZyBhIENTU1NjYWxlIHdpdGggYW4gYW5nbGUgQ1NTVW5p
dFZhbHVlIGZvciB0aGUgY29vcmRpbmF0ZXMgdGhyb3dzIGEgVHlwZUVycm9yIGFzc2VydF90aHJv
d3NfanM6IGZ1bmN0aW9uICIoKSA9PiBuZXcgQ1NTU2NhbGUoY29vcmQsIDApIiBkaWQgbm90IHRo
cm93Ci1GQUlMIENvbnN0cnVjdGluZyBhIENTU1NjYWxlIHdpdGggYSBDU1NNYXRoVmFsdWUgdGhh
dCBkb2Vzbid0IG1hdGNoIDxudW1iZXI+IGZvciB0aGUgY29vcmRpbmF0ZXMgdGhyb3dzIGEgVHlw
ZUVycm9yIGFzc2VydF90aHJvd3NfanM6IGZ1bmN0aW9uICIoKSA9PiBuZXcgQ1NTU2NhbGUoY29v
cmQsIDApIiBkaWQgbm90IHRocm93CitQQVNTIENvbnN0cnVjdGluZyBhIENTU1NjYWxlIHdpdGgg
YW4gYW5nbGUgQ1NTVW5pdFZhbHVlIGZvciB0aGUgY29vcmRpbmF0ZXMgdGhyb3dzIGEgVHlwZUVy
cm9yCitQQVNTIENvbnN0cnVjdGluZyBhIENTU1NjYWxlIHdpdGggYSBDU1NNYXRoVmFsdWUgdGhh
dCBkb2Vzbid0IG1hdGNoIDxudW1iZXI+IGZvciB0aGUgY29vcmRpbmF0ZXMgdGhyb3dzIGEgVHlw
ZUVycm9yCiBGQUlMIENvbnN0cnVjdGluZyBhIENTU1NjYWxlIHdpdGggYW4gaW52YWxpZCBkaXZp
c2lvbiBieSBweC9weCBmb3IgdGhlIGNvb3JkaW5hdGVzIHRocm93cyBhIFR5cGVFcnJvciBhc3Nl
cnRfdGhyb3dzX2pzOiBmdW5jdGlvbiAiKCkgPT4gbmV3IENTU1NjYWxlKGNvb3JkLCAwKSIgZGlk
IG5vdCB0aHJvdwotRkFJTCBVcGRhdGluZyBDU1NTY2FsZS54IHRvIGFuIGFuZ2xlIENTU1VuaXRW
YWx1ZSB0aHJvd3MgYSBUeXBlRXJyb3IgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIkNTU1VuaXRW
YWx1ZSIgYnV0IGdvdCAiTnVtYmVyIgotRkFJTCBVcGRhdGluZyBDU1NTY2FsZS54IHRvIGEgQ1NT
TWF0aFZhbHVlIHRoYXQgZG9lc24ndCBtYXRjaCA8bnVtYmVyPiB0aHJvd3MgYSBUeXBlRXJyb3Ig
YXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIkNTU1VuaXRWYWx1ZSIgYnV0IGdvdCAiTnVtYmVyIgot
RkFJTCBVcGRhdGluZyBDU1NTY2FsZS54IHRvIGFuIGludmFsaWQgZGl2aXNpb24gYnkgcHgvcHgg
dGhyb3dzIGEgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJDU1NVbml0VmFsdWUi
IGJ1dCBnb3QgIk51bWJlciIKLUZBSUwgVXBkYXRpbmcgQ1NTU2NhbGUueSB0byBhbiBhbmdsZSBD
U1NVbml0VmFsdWUgdGhyb3dzIGEgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJD
U1NVbml0VmFsdWUiIGJ1dCBnb3QgIk51bWJlciIKLUZBSUwgVXBkYXRpbmcgQ1NTU2NhbGUueSB0
byBhIENTU01hdGhWYWx1ZSB0aGF0IGRvZXNuJ3QgbWF0Y2ggPG51bWJlcj4gdGhyb3dzIGEgVHlw
ZUVycm9yIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJDU1NVbml0VmFsdWUiIGJ1dCBnb3QgIk51
bWJlciIKLUZBSUwgVXBkYXRpbmcgQ1NTU2NhbGUueSB0byBhbiBpbnZhbGlkIGRpdmlzaW9uIGJ5
IHB4L3B4IHRocm93cyBhIFR5cGVFcnJvciBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiQ1NTVW5p
dFZhbHVlIiBidXQgZ290ICJOdW1iZXIiCi1GQUlMIFVwZGF0aW5nIENTU1NjYWxlLnogdG8gYW4g
YW5nbGUgQ1NTVW5pdFZhbHVlIHRocm93cyBhIFR5cGVFcnJvciBhc3NlcnRfZXF1YWxzOiBleHBl
Y3RlZCAiQ1NTVW5pdFZhbHVlIiBidXQgZ290ICJOdW1iZXIiCi1GQUlMIFVwZGF0aW5nIENTU1Nj
YWxlLnogdG8gYSBDU1NNYXRoVmFsdWUgdGhhdCBkb2Vzbid0IG1hdGNoIDxudW1iZXI+IHRocm93
cyBhIFR5cGVFcnJvciBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiQ1NTVW5pdFZhbHVlIiBidXQg
Z290ICJOdW1iZXIiCi1GQUlMIFVwZGF0aW5nIENTU1NjYWxlLnogdG8gYW4gaW52YWxpZCBkaXZp
c2lvbiBieSBweC9weCB0aHJvd3MgYSBUeXBlRXJyb3IgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQg
IkNTU1VuaXRWYWx1ZSIgYnV0IGdvdCAiTnVtYmVyIgotRkFJTCBDU1NTY2FsZSBjYW4gYmUgY29u
c3RydWN0ZWQgZnJvbSB0d28gbnVtYmVyIGNvb3JkaW5hdGVzIGFzc2VydF9lcXVhbHM6IGV4cGVj
dGVkICJDU1NVbml0VmFsdWUiIGJ1dCBnb3QgIk51bWJlciIKLUZBSUwgQ1NTU2NhbGUgY2FuIGJl
IGNvbnN0cnVjdGVkIGZyb20gdGhyZWUgbnVtYmVyIGNvb3JkaW5hdGVzIGFzc2VydF9lcXVhbHM6
IGV4cGVjdGVkICJDU1NVbml0VmFsdWUiIGJ1dCBnb3QgIk51bWJlciIKK1BBU1MgVXBkYXRpbmcg
Q1NTU2NhbGUueCB0byBhbiBhbmdsZSBDU1NVbml0VmFsdWUgdGhyb3dzIGEgVHlwZUVycm9yCitQ
QVNTIFVwZGF0aW5nIENTU1NjYWxlLnggdG8gYSBDU1NNYXRoVmFsdWUgdGhhdCBkb2Vzbid0IG1h
dGNoIDxudW1iZXI+IHRocm93cyBhIFR5cGVFcnJvcgorUEFTUyBVcGRhdGluZyBDU1NTY2FsZS54
IHRvIGFuIGludmFsaWQgZGl2aXNpb24gYnkgcHgvcHggdGhyb3dzIGEgVHlwZUVycm9yCitQQVNT
IFVwZGF0aW5nIENTU1NjYWxlLnkgdG8gYW4gYW5nbGUgQ1NTVW5pdFZhbHVlIHRocm93cyBhIFR5
cGVFcnJvcgorUEFTUyBVcGRhdGluZyBDU1NTY2FsZS55IHRvIGEgQ1NTTWF0aFZhbHVlIHRoYXQg
ZG9lc24ndCBtYXRjaCA8bnVtYmVyPiB0aHJvd3MgYSBUeXBlRXJyb3IKK1BBU1MgVXBkYXRpbmcg
Q1NTU2NhbGUueSB0byBhbiBpbnZhbGlkIGRpdmlzaW9uIGJ5IHB4L3B4IHRocm93cyBhIFR5cGVF
cnJvcgorUEFTUyBVcGRhdGluZyBDU1NTY2FsZS56IHRvIGFuIGFuZ2xlIENTU1VuaXRWYWx1ZSB0
aHJvd3MgYSBUeXBlRXJyb3IKK1BBU1MgVXBkYXRpbmcgQ1NTU2NhbGUueiB0byBhIENTU01hdGhW
YWx1ZSB0aGF0IGRvZXNuJ3QgbWF0Y2ggPG51bWJlcj4gdGhyb3dzIGEgVHlwZUVycm9yCitQQVNT
IFVwZGF0aW5nIENTU1NjYWxlLnogdG8gYW4gaW52YWxpZCBkaXZpc2lvbiBieSBweC9weCB0aHJv
d3MgYSBUeXBlRXJyb3IKK1BBU1MgQ1NTU2NhbGUgY2FuIGJlIGNvbnN0cnVjdGVkIGZyb20gdHdv
IG51bWJlciBjb29yZGluYXRlcworUEFTUyBDU1NTY2FsZSBjYW4gYmUgY29uc3RydWN0ZWQgZnJv
bSB0aHJlZSBudW1iZXIgY29vcmRpbmF0ZXMKIFBBU1MgQ1NTU2NhbGUgY2FuIGJlIGNvbnN0cnVj
dGVkIGZyb20gQ1NTTWF0aFZhbHVlIGNvb3JkaW5hdGVzCi1GQUlMIENTU1NjYWxlLnggY2FuIGJl
IHVwZGF0ZWQgdG8gYSBudW1iZXIgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIkNTU1VuaXRWYWx1
ZSIgYnV0IGdvdCAiTnVtYmVyIgorUEFTUyBDU1NTY2FsZS54IGNhbiBiZSB1cGRhdGVkIHRvIGEg
bnVtYmVyCiBQQVNTIENTU1NjYWxlLnggY2FuIGJlIHVwZGF0ZWQgdG8gYSBudW1iZXJpc2gKIFBB
U1MgQ1NTU2NhbGUueCBjYW4gYmUgdXBkYXRlZCB0byBhIENTU01hdGhWYWx1ZQotRkFJTCBDU1NT
Y2FsZS55IGNhbiBiZSB1cGRhdGVkIHRvIGEgbnVtYmVyIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVk
ICJDU1NVbml0VmFsdWUiIGJ1dCBnb3QgIk51bWJlciIKK1BBU1MgQ1NTU2NhbGUueSBjYW4gYmUg
dXBkYXRlZCB0byBhIG51bWJlcgogUEFTUyBDU1NTY2FsZS55IGNhbiBiZSB1cGRhdGVkIHRvIGEg
bnVtYmVyaXNoCiBQQVNTIENTU1NjYWxlLnkgY2FuIGJlIHVwZGF0ZWQgdG8gYSBDU1NNYXRoVmFs
dWUKLUZBSUwgQ1NTU2NhbGUueiBjYW4gYmUgdXBkYXRlZCB0byBhIG51bWJlciBhc3NlcnRfZXF1
YWxzOiBleHBlY3RlZCAiQ1NTVW5pdFZhbHVlIiBidXQgZ290ICJOdW1iZXIiCitQQVNTIENTU1Nj
YWxlLnogY2FuIGJlIHVwZGF0ZWQgdG8gYSBudW1iZXIKIFBBU1MgQ1NTU2NhbGUueiBjYW4gYmUg
dXBkYXRlZCB0byBhIG51bWJlcmlzaAogUEFTUyBDU1NTY2FsZS56IGNhbiBiZSB1cGRhdGVkIHRv
IGEgQ1NTTWF0aFZhbHVlCiBQQVNTIE1vZGlmeWluZyBDU1NTY2FsZS5pczJEIGNhbiBiZSB1cGRh
dGVkIHRvIHRydWUgb3IgZmFsc2UKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy10eXBlZC1vbS9zdHlsZXZhbHVlLXN1YmNsYXNz
ZXMvY3NzVHJhbnNmb3JtVmFsdWUudGVudGF0aXZlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy10eXBlZC1vbS9zdHlsZXZh
bHVlLXN1YmNsYXNzZXMvY3NzVHJhbnNmb3JtVmFsdWUudGVudGF0aXZlLWV4cGVjdGVkLnR4dApp
bmRleCBlNjNkM2I3ODFkOGMxMzE1N2JmY2Q4NjE0NDI2YjY1Y2ZkMDllYTcwLi42NzZjYTVhOWE3
OGUyYzYzNGU5OTVhMzBlZGRlYmY0OWFhNWMwZTdhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdHlwZWQtb20vc3R5bGV2YWx1
ZS1zdWJjbGFzc2VzL2Nzc1RyYW5zZm9ybVZhbHVlLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXR5
cGVkLW9tL3N0eWxldmFsdWUtc3ViY2xhc3Nlcy9jc3NUcmFuc2Zvcm1WYWx1ZS50ZW50YXRpdmUt
ZXhwZWN0ZWQudHh0CkBAIC0xLDEwICsxLDEwIEBACiAKLUZBSUwgQ29uc3RydWN0aW5nIGEgQ1NT
VHJhbnNmb3JtVmFsdWUgd2l0aCBubyBjb21wb25lbnRzIHRocm93cyBUeXBlRXJyb3IgYXNzZXJ0
X3Rocm93c19qczogZnVuY3Rpb24gIigpID0+IG5ldyBDU1NUcmFuc2Zvcm1WYWx1ZShbXSkiIGRp
ZCBub3QgdGhyb3cKK1BBU1MgQ29uc3RydWN0aW5nIGEgQ1NTVHJhbnNmb3JtVmFsdWUgd2l0aCBu
byBjb21wb25lbnRzIHRocm93cyBUeXBlRXJyb3IKIFBBU1MgQ1NTVHJhbnNmb3JtVmFsdWUgY2Fu
IGJlIGNvbnN0cnVjdGVkIHdpdGggbXVsdGlwbGUgdHJhbnNmb3JtcwogUEFTUyBDU1NUcmFuc2Zv
cm1WYWx1ZS5zZXQgY29ycmVjdGx5IHNldHMgdGhlIENTU1RyYW5zZm9ybUNvbXBvbmVudCBhdCB0
aGUgZ2l2ZW4gaW5kZXgKLUZBSUwgU2V0dGluZyBhIGNvbXBvbmVudCBpbiBDU1NUcmFuc2Zvcm1W
YWx1ZSBjb3JyZWN0bHkgYXBwZW5kcyB0aGUgQ1NTVHJhbnNmb3JtQ29tcG9uZW50IGlmIGluZGV4
IHNwZWNpZmllZCBpcyBncmVhdGVyIHRoYW4gbGVuZ3RoIEluZGV4IDMgZXhjZWVkcyB0aGUgcmFu
Z2Ugb2YgQ1NTVHJhbnNmb3JtVmFsdWUuCitQQVNTIFNldHRpbmcgYSBjb21wb25lbnQgaW4gQ1NT
VHJhbnNmb3JtVmFsdWUgY29ycmVjdGx5IGFwcGVuZHMgdGhlIENTU1RyYW5zZm9ybUNvbXBvbmVu
dCBpZiBpbmRleCBzcGVjaWZpZWQgaXMgZ3JlYXRlciB0aGFuIGxlbmd0aAogUEFTUyBDU1NUcmFu
c2Zvcm1WYWx1ZS5pczJEIGlzIGZhbHNlIHdoZW4gZ2l2ZW4gbWl4IG9mIDJEIGFuZCAzRCB0cmFu
c2Zvcm1zCi1GQUlMIENTU1RyYW5zZm9ybVZhbHVlLmlzMkQgaXMgdHJ1ZSB3aGVuIGdpdmVuIG9u
bHkgMkQgdHJhbnNmb3JtcyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCB0cnVlIGJ1dCBnb3QgZmFs
c2UKLUZBSUwgQ1NTVHJhbnNmb3JtVmFsdWUuaXMyRCBpcyByZWFkb25seSBhc3NlcnRfZXF1YWxz
OiBleHBlY3RlZCB0cnVlIGJ1dCBnb3QgZmFsc2UKK1BBU1MgQ1NTVHJhbnNmb3JtVmFsdWUuaXMy
RCBpcyB0cnVlIHdoZW4gZ2l2ZW4gb25seSAyRCB0cmFuc2Zvcm1zCitQQVNTIENTU1RyYW5zZm9y
bVZhbHVlLmlzMkQgaXMgcmVhZG9ubHkKIFBBU1MgQ2FuIGl0ZXJhdGUgdGhyb3VnaCBDU1NUcmFu
c2Zvcm1WYWx1ZSBjb21wb25lbnRzCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy10eXBlZC1vbS9zdHlsZXZhbHVlLXN1YmNs
YXNzZXMvY3NzVHJhbnNsYXRlLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdHlwZWQtb20vc3R5bGV2YWx1
ZS1zdWJjbGFzc2VzL2Nzc1RyYW5zbGF0ZS50ZW50YXRpdmUtZXhwZWN0ZWQudHh0CmluZGV4IDY3
ZGU1NjAzNDRlMmZhNWFlN2UyNWU1YmJjM2Q4NjliNGZhMDJmMTYuLmM4MDcyN2NjYjM1ZDVjZjRh
NThjY2RkOWU2Zjc4NjI2OTRlMTUxMjggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy10eXBlZC1vbS9zdHlsZXZhbHVlLXN1YmNs
YXNzZXMvY3NzVHJhbnNsYXRlLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXR5cGVkLW9tL3N0eWxl
dmFsdWUtc3ViY2xhc3Nlcy9jc3NUcmFuc2xhdGUudGVudGF0aXZlLWV4cGVjdGVkLnR4dApAQCAt
MSw2ICsxLDYgQEAKIAotRkFJTCBDb25zdHJ1Y3RpbmcgYSBDU1NUcmFuc2xhdGUgd2l0aCBhIENT
U1VuaXRWYWx1ZSB3aXRoIHR5cGUgb3RoZXIgdGhhbiBsZW5ndGggb3IgcGVyY2VudCBmb3IgdGhl
IGNvb3JkaW5hdGVzIHRocm93cyBhIFR5cGVFcnJvciBhc3NlcnRfdGhyb3dzX2pzOiBmdW5jdGlv
biAiKCkgPT4gbmV3IENTU1RyYW5zbGF0ZShjb29yZCwgQ1NTLnB4KDApLCBDU1MucHgoMCkpIiBk
aWQgbm90IHRocm93Ci1GQUlMIENvbnN0cnVjdGluZyBhIENTU1RyYW5zbGF0ZSB3aXRoIGEgQ1NT
TWF0aFZhbHVlIHRoYXQgZG9lc24ndCBtYXRjaCA8bGVuZ3RoLXBlcmNlbnRhZ2U+IGZvciB0aGUg
Y29vcmRpbmF0ZXMgdGhyb3dzIGEgVHlwZUVycm9yIGFzc2VydF90aHJvd3NfanM6IGZ1bmN0aW9u
ICIoKSA9PiBuZXcgQ1NTVHJhbnNsYXRlKGNvb3JkLCBDU1MucHgoMCksIENTUy5weCgwKSkiIGRp
ZCBub3QgdGhyb3cKK1BBU1MgQ29uc3RydWN0aW5nIGEgQ1NTVHJhbnNsYXRlIHdpdGggYSBDU1NV
bml0VmFsdWUgd2l0aCB0eXBlIG90aGVyIHRoYW4gbGVuZ3RoIG9yIHBlcmNlbnQgZm9yIHRoZSBj
b29yZGluYXRlcyB0aHJvd3MgYSBUeXBlRXJyb3IKK1BBU1MgQ29uc3RydWN0aW5nIGEgQ1NTVHJh
bnNsYXRlIHdpdGggYSBDU1NNYXRoVmFsdWUgdGhhdCBkb2Vzbid0IG1hdGNoIDxsZW5ndGgtcGVy
Y2VudGFnZT4gZm9yIHRoZSBjb29yZGluYXRlcyB0aHJvd3MgYSBUeXBlRXJyb3IKIEZBSUwgQ29u
c3RydWN0aW5nIGEgQ1NTVHJhbnNsYXRlIHdpdGggYSBwZXJjZW50IGZvciB0aGUgWiBjb29yZGlu
YXRlIHRocm93cyBhIFR5cGVFcnJvciBhc3NlcnRfdGhyb3dzX2pzOiBmdW5jdGlvbiAiKCkgPT4g
bmV3IENTU1RyYW5zbGF0ZShDU1MucHgoMCksIENTUy5weCgwKSwgQ1NTLnBlcmNlbnQoMCkpIiBk
aWQgbm90IHRocm93CiBQQVNTIFVwZGF0aW5nIENTU1RyYW5zbGF0ZS54IHRvIGEgQ1NTVW5pdFZh
bHVlIHdpdGggdHlwZSBvdGhlciB0aGFuIGxlbmd0aCBvciBwZXJjZW50IHRocm93cyBhIFR5cGVF
cnJvcgogUEFTUyBVcGRhdGluZyBDU1NUcmFuc2xhdGUueCB0byBhIENTU01hdGhWYWx1ZSB0aGF0
IGRvZXNuJ3QgbWF0Y2ggPGxlbmd0aC1wZXJjZW50YWdlPiB0aHJvd3MgYSBUeXBlRXJyb3IKQEAg
LTksOSArOSw5IEBAIFBBU1MgVXBkYXRpbmcgQ1NTVHJhbnNsYXRlLnkgdG8gYSBDU1NNYXRoVmFs
dWUgdGhhdCBkb2Vzbid0IG1hdGNoIDxsZW5ndGgtcGVyY2VuCiBQQVNTIFVwZGF0aW5nIENTU1Ry
YW5zbGF0ZS56IHRvIGEgQ1NTVW5pdFZhbHVlIHdpdGggdHlwZSBvdGhlciB0aGFuIGxlbmd0aCBv
ciBwZXJjZW50IHRocm93cyBhIFR5cGVFcnJvcgogUEFTUyBVcGRhdGluZyBDU1NUcmFuc2xhdGUu
eiB0byBhIENTU01hdGhWYWx1ZSB0aGF0IGRvZXNuJ3QgbWF0Y2ggPGxlbmd0aC1wZXJjZW50YWdl
PiB0aHJvd3MgYSBUeXBlRXJyb3IKIEZBSUwgVXBkYXRpbmcgQ1NTVHJhbnNsYXRlLnogdG8gYSBw
ZXJjZW50IHRocm93cyBhIFR5cGVFcnJvciBhc3NlcnRfdGhyb3dzX2pzOiBmdW5jdGlvbiAiKCkg
PT4gcmVzdWx0LnogPSBDU1MucGVyY2VudCgwKSIgZGlkIG5vdCB0aHJvdwotRkFJTCBDU1NUcmFu
c2xhdGUgY2FuIGJlIGNvbnN0cnVjdGVkIGZyb20gdHdvIGxlbmd0aCBvciBwZXJjZW50IGNvb3Jk
aW5hdGVzIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIG9iamVjdCAiMHB4IiBidXQgZ290IG51bGwK
K1BBU1MgQ1NTVHJhbnNsYXRlIGNhbiBiZSBjb25zdHJ1Y3RlZCBmcm9tIHR3byBsZW5ndGggb3Ig
cGVyY2VudCBjb29yZGluYXRlcwogUEFTUyBDU1NUcmFuc2xhdGUgY2FuIGJlIGNvbnN0cnVjdGVk
IGZyb20gdGhyZWUgbGVuZ3RoIG9yIHBlcmNlbnQgY29vcmRpbmF0ZXMKLUZBSUwgQ1NTVHJhbnNs
YXRlIGNhbiBiZSBjb25zdHJ1Y3RlZCBmcm9tIENTU01hdGhWYWx1ZXMgYXNzZXJ0X2VxdWFsczog
ZXhwZWN0ZWQgb2JqZWN0ICIwcHgiIGJ1dCBnb3QgbnVsbAorUEFTUyBDU1NUcmFuc2xhdGUgY2Fu
IGJlIGNvbnN0cnVjdGVkIGZyb20gQ1NTTWF0aFZhbHVlcwogUEFTUyBDU1NUcmFuc2xhdGUueCBj
YW4gYmUgdXBkYXRlZCB0byBhIGxlbmd0aAogUEFTUyBDU1NUcmFuc2xhdGUueCBjYW4gYmUgdXBk
YXRlZCB0byBhIHBlcmNlbnQKIFBBU1MgQ1NTVHJhbnNsYXRlLnggY2FuIGJlIHVwZGF0ZWQgdG8g
YSBDU1NNYXRoVmFsdWUK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>457831</attachid>
            <date>2022-04-18 15:30:12 -0700</date>
            <delta_ts>2022-04-18 19:47:02 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-239462-20220418153011.patch</filename>
            <type>text/plain</type>
            <size>72789</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkyODkwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzFiYjk0ZDIxYTUyZmNl
ZTcyMDUwMDlkNGFiNzQ5ZTFmMTY1NzJjZS4uZjUyZGIyODZjOWRmODFlYzk0ZjI1ZDg0NjRkZWM1
ZjNlZDc1MmRhMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY4IEBACisyMDIyLTA0LTE4ICBBbGV4
IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgSW1wbGVt
ZW50IENTU1RyYW5zZm9ybVZhbHVlLmlzMkQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIzOTQ2MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFRoaXMgaXMgYW4gb2ZmLWJ5LWRlZmF1bHQgZmVhdHVyZS4KKyAg
ICAgICAgQ292ZXJlZCBieSBXUFQgdGVzdHMuCisKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0NT
U1RyYW5zZm9ybUNvbXBvbmVudEN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0b0pTTmV3
bHlDcmVhdGVkKToKKyAgICAgICAgKiBjc3MvdHlwZWRvbS9DU1NOdW1lcmljVmFsdWUuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6Q1NTTnVtZXJpY1ZhbHVlOjpyZWN0aWZ5TnVtYmVyaXNoKToKKyAg
ICAgICAgKiBjc3MvdHlwZWRvbS9DU1NOdW1lcmljVmFsdWUuaDoKKyAgICAgICAgKiBjc3MvdHlw
ZWRvbS9udW1lcmljL0NTU051bWVyaWNUeXBlLmg6CisgICAgICAgIChXZWJDb3JlOjpDU1NOdW1l
cmljVHlwZTo6dmFsdWVGb3JUeXBlIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkNTU051bWVy
aWNUeXBlOjpub25aZXJvRW50cnlDb3VudCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpDU1NO
dW1lcmljVHlwZTo6bWF0Y2hlcyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpDU1NOdW1lcmlj
VHlwZTo6bWF0Y2hlc051bWJlciBjb25zdCk6CisgICAgICAgICogY3NzL3R5cGVkb20vdHJhbnNm
b3JtL0NTU01hdHJpeENvbXBvbmVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NNYXRyaXhD
b21wb25lbnQ6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NNYXRyaXhDb21wb25lbnQ6
OkNTU01hdHJpeENvbXBvbmVudCk6CisgICAgICAgICogY3NzL3R5cGVkb20vdHJhbnNmb3JtL0NT
U01hdHJpeENvbXBvbmVudC5oOgorICAgICAgICAoV2ViQ29yZTo6Q1NTTWF0cml4Q29tcG9uZW50
OjpjcmVhdGUpOiBEZWxldGVkLgorICAgICAgICAqIGNzcy90eXBlZG9tL3RyYW5zZm9ybS9DU1NN
YXRyaXhDb21wb25lbnQuaWRsOgorICAgICAgICAqIGNzcy90eXBlZG9tL3RyYW5zZm9ybS9DU1NS
b3RhdGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUm90YXRlOjpjcmVhdGUpOgorICAgICAg
ICAoV2ViQ29yZTo6Q1NTUm90YXRlOjpDU1NSb3RhdGUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NT
Um90YXRlOjpzZXRYKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1JvdGF0ZTo6c2V0WSk6CisgICAg
ICAgIChXZWJDb3JlOjpDU1NSb3RhdGU6OnNldFopOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUm90
YXRlOjpzZXRBbmdsZSk6CisgICAgICAgICogY3NzL3R5cGVkb20vdHJhbnNmb3JtL0NTU1JvdGF0
ZS5oOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUm90YXRlOjp4KToKKyAgICAgICAgKFdlYkNvcmU6
OkNTU1JvdGF0ZTo6eSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NSb3RhdGU6OnopOgorICAgICAg
ICAoV2ViQ29yZTo6Q1NTUm90YXRlOjpzZXRYKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6
OkNTU1JvdGF0ZTo6c2V0WSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpDU1NSb3RhdGU6
OnNldFopOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6Q1NTUm90YXRlOjpzZXRBbmdsZSk6
IERlbGV0ZWQuCisgICAgICAgICogY3NzL3R5cGVkb20vdHJhbnNmb3JtL0NTU1NjYWxlLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkNTU1NjYWxlOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6
Q1NTU2NhbGU6OkNTU1NjYWxlKToKKyAgICAgICAgKiBjc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NT
U2NhbGUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1NjYWxlOjp4IGNvbnN0KToKKyAgICAgICAg
KFdlYkNvcmU6OkNTU1NjYWxlOjp5IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1NjYWxl
Ojp6IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1NjYWxlOjp4KTogRGVsZXRlZC4KKyAg
ICAgICAgKFdlYkNvcmU6OkNTU1NjYWxlOjp5KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6
OkNTU1NjYWxlOjp6KTogRGVsZXRlZC4KKyAgICAgICAgKiBjc3MvdHlwZWRvbS90cmFuc2Zvcm0v
Q1NTVHJhbnNmb3JtQ29tcG9uZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1RyYW5zZm9y
bUNvbXBvbmVudDo6dG9TdHJpbmcgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTVHJhbnNm
b3JtQ29tcG9uZW50Ojp0b01hdHJpeCk6IERlbGV0ZWQuCisgICAgICAgICogY3NzL3R5cGVkb20v
dHJhbnNmb3JtL0NTU1RyYW5zZm9ybUNvbXBvbmVudC5oOgorICAgICAgICAoV2ViQ29yZTo6Q1NT
VHJhbnNmb3JtQ29tcG9uZW50OjpDU1NUcmFuc2Zvcm1Db21wb25lbnQpOgorICAgICAgICAoV2Vi
Q29yZTo6Q1NTVHJhbnNmb3JtQ29tcG9uZW50OjpnZXRUeXBlIGNvbnN0KTogRGVsZXRlZC4KKyAg
ICAgICAgKiBjc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTVHJhbnNmb3JtVmFsdWUuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6Q1NTVHJhbnNmb3JtVmFsdWU6OmNyZWF0ZSk6CisgICAgICAgIChXZWJD
b3JlOjpDU1NUcmFuc2Zvcm1WYWx1ZTo6c2V0SXRlbSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NU
cmFuc2Zvcm1WYWx1ZTo6aXMyRCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpDU1NUcmFuc2Zv
cm1WYWx1ZTo6c2V0SXMyRCk6IERlbGV0ZWQuCisgICAgICAgICogY3NzL3R5cGVkb20vdHJhbnNm
b3JtL0NTU1RyYW5zZm9ybVZhbHVlLmg6CisgICAgICAgICogY3NzL3R5cGVkb20vdHJhbnNmb3Jt
L0NTU1RyYW5zbGF0ZS5oOgorCiAyMDIyLTA0LTE0ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBs
ZS5jb20+CiAKICAgICAgICAgUmVxdWlyZSBhbiBleGlzdGluZyBBdG9tU3RyaW5nIGZvciBIVE1M
Rm9ybUVsZW1lbnQncyBuYW1lZCBnZXR0ZXIgcGFyYW1ldGVyCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NTU1RyYW5zZm9ybUNvbXBvbmVudEN1c3RvbS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NTU1RyYW5zZm9ybUNvbXBvbmVudEN1c3RvbS5j
cHAKaW5kZXggOTlkNmExNWNiM2MwNjBkNDc4MmFhZWZkODA3ZmQyZTViNTdjNjc0ZC4uNTg2NzNi
OTRiYjRiNjNlZWZjYWJiMjczNWYzNjY0NDljMTQ3Y2NmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNDU1NUcmFuc2Zvcm1Db21wb25lbnRDdXN0b20uY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ1NTVHJhbnNmb3JtQ29tcG9uZW50Q3VzdG9t
LmNwcApAQCAtNDQsOCArNDQsNiBAQCB1c2luZyBuYW1lc3BhY2UgSlNDOwogSlNWYWx1ZSB0b0pT
TmV3bHlDcmVhdGVkKEpTR2xvYmFsT2JqZWN0KiwgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgUmVmPENTU1RyYW5zZm9ybUNvbXBvbmVudD4mJiB2YWx1ZSkKIHsKICAgICBzd2l0Y2gg
KHZhbHVlLT5nZXRUeXBlKCkpIHsKLSAgICBjYXNlIENTU1RyYW5zZm9ybVR5cGU6OlRyYW5zZm9y
bToKLSAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8Q1NTVHJhbnNmb3JtQ29tcG9uZW50Pihn
bG9iYWxPYmplY3QsIFdURk1vdmUodmFsdWUpKTsKICAgICBjYXNlIENTU1RyYW5zZm9ybVR5cGU6
Ok1hdHJpeENvbXBvbmVudDoKICAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8Q1NTTWF0cml4
Q29tcG9uZW50PihnbG9iYWxPYmplY3QsIFdURk1vdmUodmFsdWUpKTsKICAgICBjYXNlIENTU1Ry
YW5zZm9ybVR5cGU6OlBlcnNwZWN0aXZlOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3Nz
L3R5cGVkb20vQ1NTS2V5d29yZFZhbHVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9t
L0NTU0tleXdvcmRWYWx1ZS5jcHAKaW5kZXggOTNmODNhZjIyZTE2NmM0YTI1ZTk1NWM3MDY5ZmMy
MGQwNjk1OWFkOC4uZmUyMzYxYzQ5NzM1YThhZTljYzBhNzJlYTg0MmMxNzNiNjhkODI3YSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL3R5cGVkb20vQ1NTS2V5d29yZFZhbHVlLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS9DU1NLZXl3b3JkVmFsdWUuY3BwCkBAIC0z
OSw2ICszOSwxNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFdURl9NQUtFX0lTT19BTExPQ0FU
RURfSU1QTChDU1NLZXl3b3JkVmFsdWUpOwogCitSZWY8Q1NTS2V5d29yZFZhbHVlPiBDU1NLZXl3
b3JkVmFsdWU6OnJlY3RpZnlLZXl3b3JkaXNoKENTU0tleXdvcmRpc2gmJiBrZXl3b3JkaXNoKQor
eworICAgIC8vIGh0dHBzOi8vZHJhZnRzLmNzcy1ob3VkaW5pLm9yZy9jc3MtdHlwZWQtb20vI3Jl
Y3RpZnktYS1rZXl3b3JkaXNoLXZhbHVlCisgICAgcmV0dXJuIFdURjo6c3dpdGNoT24oV1RGTW92
ZShrZXl3b3JkaXNoKSwgW10gKFN0cmluZyBzdHJpbmcpIHsKKyAgICAgICAgcmV0dXJuIGFkb3B0
UmVmKCpuZXcgQ1NTS2V5d29yZFZhbHVlKHN0cmluZykpOworICAgIH0sIFtdIChSZWZQdHI8Q1NT
S2V5d29yZFZhbHVlPiB2YWx1ZSkgeworICAgICAgICBSRUxFQVNFX0FTU0VSVCh2YWx1ZSk7Cisg
ICAgICAgIHJldHVybiB2YWx1ZS5yZWxlYXNlTm9uTnVsbCgpOworICAgIH0pOworfQorCiBFeGNl
cHRpb25PcjxSZWY8Q1NTS2V5d29yZFZhbHVlPj4gQ1NTS2V5d29yZFZhbHVlOjpjcmVhdGUoY29u
c3QgU3RyaW5nJiB2YWx1ZSkKIHsKICAgICBpZiAodmFsdWUuaXNFbXB0eSgpKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvY3NzL3R5cGVkb20vQ1NTS2V5d29yZFZhbHVlLmggYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvdHlwZWRvbS9DU1NLZXl3b3JkVmFsdWUuaAppbmRleCA3MjJiN2Q1NzNjYWYz
ZmJmZjhhZTkzYzRkNTMxOTI2Yzk3NjRiMjUwLi5hNjhiZWViNWQ3ODdjZWNjMjZlMDkyMGY0MGVj
MzVjNGRkZTc4MGFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS9DU1NL
ZXl3b3JkVmFsdWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS9DU1NLZXl3b3Jk
VmFsdWUuaApAQCAtMzQsNiArMzQsOCBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiB0ZW1wbGF0
ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7CitjbGFzcyBDU1NLZXl3b3JkVmFsdWU7Cit1
c2luZyBDU1NLZXl3b3JkaXNoID0gc3RkOjp2YXJpYW50PFN0cmluZywgUmVmUHRyPENTU0tleXdv
cmRWYWx1ZT4+OwogCiBjbGFzcyBDU1NLZXl3b3JkVmFsdWUgZmluYWwgOiBwdWJsaWMgQ1NTU3R5
bGVWYWx1ZSB7CiAgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChDU1NLZXl3b3JkVmFsdWUpOwpA
QCAtNDQsNiArNDYsOSBAQCBwdWJsaWM6CiAgICAgRXhjZXB0aW9uT3I8dm9pZD4gc2V0VmFsdWUo
Y29uc3QgU3RyaW5nJik7CiAgICAgCiAgICAgQ1NTU3R5bGVWYWx1ZVR5cGUgZ2V0VHlwZSgpIGNv
bnN0IGZpbmFsIHsgcmV0dXJuIENTU1N0eWxlVmFsdWVUeXBlOjpDU1NLZXl3b3JkVmFsdWU7IH0K
KyAgICAKKyAgICBzdGF0aWMgUmVmPENTU0tleXdvcmRWYWx1ZT4gcmVjdGlmeUtleXdvcmRpc2go
Q1NTS2V5d29yZGlzaCYmKTsKKwogcHJpdmF0ZToKICAgICBleHBsaWNpdCBDU1NLZXl3b3JkVmFs
dWUoY29uc3QgU3RyaW5nJiB2YWx1ZSkKICAgICAgICAgOiBtX3ZhbHVlKHZhbHVlKSB7IH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL251bWVyaWMvQ1NTTnVtZXJpY1R5
cGUuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL251bWVyaWMvQ1NTTnVtZXJpY1R5cGUu
aAppbmRleCA0ZWNlOTgwYTYxZDU4YmZiNTMxNTY5ZGE3NmMwNDU0YmY0MGExYmE2Li5lOTc0ZmRi
ZWVjZTg1MTJiNGZmNWRkOWZhMmIyODA4NGNjM2ZhYjc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvdHlwZWRvbS9udW1lcmljL0NTU051bWVyaWNUeXBlLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvY3NzL3R5cGVkb20vbnVtZXJpYy9DU1NOdW1lcmljVHlwZS5oCkBAIC03Nyw2ICs3Nywx
MSBAQCBzdHJ1Y3QgQ1NTTnVtZXJpY1R5cGUgewogICAgICAgICBSRUxFQVNFX0FTU0VSVF9OT1Rf
UkVBQ0hFRCgpOwogICAgIH0KIAorICAgIGNvbnN0IHN0ZDo6b3B0aW9uYWw8bG9uZz4mIHZhbHVl
Rm9yVHlwZShDU1NOdW1lcmljQmFzZVR5cGUgdHlwZSkgY29uc3QKKyAgICB7CisgICAgICAgIHJl
dHVybiBjb25zdF9jYXN0PENTU051bWVyaWNUeXBlKj4odGhpcyktPnZhbHVlRm9yVHlwZSh0eXBl
KTsKKyAgICB9CisKICAgICB2b2lkIGFwcGx5UGVyY2VudEhpbnQoQ1NTTnVtZXJpY0Jhc2VUeXBl
IGhpbnQpCiAgICAgewogICAgICAgICAvLyBodHRwczovL2RyYWZ0cy5jc3MtaG91ZGluaS5vcmcv
Y3NzLXR5cGVkLW9tLyNhcHBseS10aGUtcGVyY2VudC1oaW50CkBAIC04OCw2ICs5Myw0MSBAQCBz
dHJ1Y3QgQ1NTTnVtZXJpY1R5cGUgewogICAgICAgICBwZXJjZW50SGludCA9IGhpbnQ7CiAgICAg
fQogCisgICAgc2l6ZV90IG5vblplcm9FbnRyeUNvdW50KCkgY29uc3QKKyAgICB7CisgICAgICAg
IHNpemVfdCBjb3VudCB7IDAgfTsKKyAgICAgICAgY291bnQgKz0gbGVuZ3RoICYmICpsZW5ndGg7
CisgICAgICAgIGNvdW50ICs9IGFuZ2xlICYmICphbmdsZTsKKyAgICAgICAgY291bnQgKz0gdGlt
ZSAmJiAqdGltZTsKKyAgICAgICAgY291bnQgKz0gZnJlcXVlbmN5ICYmICpmcmVxdWVuY3k7Cisg
ICAgICAgIGNvdW50ICs9IHJlc29sdXRpb24gJiYgKnJlc29sdXRpb247CisgICAgICAgIGNvdW50
ICs9IGZsZXggJiYgKmZsZXg7CisgICAgICAgIGNvdW50ICs9IHBlcmNlbnQgJiYgKnBlcmNlbnQ7
CisgICAgICAgIHJldHVybiBjb3VudDsKKyAgICB9CisKKyAgICB0ZW1wbGF0ZTxDU1NOdW1lcmlj
QmFzZVR5cGUgdHlwZT4KKyAgICBib29sIG1hdGNoZXMoKSBjb25zdAorICAgIHsKKyAgICAgICAg
Ly8gaHR0cHM6Ly9kcmFmdHMuY3NzLWhvdWRpbmkub3JnL2Nzcy10eXBlZC1vbS8jY3NzbnVtZXJp
Y3ZhbHVlLW1hdGNoCisgICAgICAgIHJldHVybiAodHlwZSA9PSBDU1NOdW1lcmljQmFzZVR5cGU6
OlBlcmNlbnQgfHwgIXBlcmNlbnRIaW50KQorICAgICAgICAgICAgJiYgbm9uWmVyb0VudHJ5Q291
bnQoKSA9PSAxCisgICAgICAgICAgICAmJiB2YWx1ZUZvclR5cGUodHlwZSkKKyAgICAgICAgICAg
ICYmICp2YWx1ZUZvclR5cGUodHlwZSk7CisgICAgfQorCisgICAgYm9vbCBtYXRjaGVzTnVtYmVy
KCkgY29uc3QKKyAgICB7CisgICAgICAgIC8vIGh0dHBzOi8vZHJhZnRzLmNzcy1ob3VkaW5pLm9y
Zy9jc3MtdHlwZWQtb20vI2Nzc251bWVyaWN2YWx1ZS1tYXRjaAorICAgICAgICByZXR1cm4gIW5v
blplcm9FbnRyeUNvdW50KCkgJiYgIXBlcmNlbnRIaW50OworICAgIH0KKworICAgIHRlbXBsYXRl
PENTU051bWVyaWNCYXNlVHlwZSB0eXBlPgorICAgIGJvb2wgbWF0Y2hlc1R5cGVPclBlcmNlbnRh
Z2UoKSBjb25zdAorICAgIHsKKyAgICAgICAgcmV0dXJuIG1hdGNoZXM8dHlwZT4oKSB8fCBtYXRj
aGVzPENTU051bWVyaWNCYXNlVHlwZTo6UGVyY2VudD4oKTsKKyAgICB9CisKICAgICBTdHJpbmcg
ZGVidWdTdHJpbmcoKSBjb25zdAogICAgIHsKICAgICAgICAgcmV0dXJuIG1ha2VTdHJpbmcoInsi
LApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL3R5cGVkb20vdHJhbnNmb3JtL0NTU01h
dHJpeENvbXBvbmVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0v
Q1NTTWF0cml4Q29tcG9uZW50LmNwcAppbmRleCBlMWJkMzUxNjFlNTAwMzcxZGMzMTU1MGViNjI2
YjJiYjZhOTgwMTNiLi42Yjk2NWRmMjgzYzg5ZDA0N2U3MGFjN2YyMWVhZGUzMjAyMmY3YWVkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTTWF0cml4
Q29tcG9uZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0v
Q1NTTWF0cml4Q29tcG9uZW50LmNwcApAQCAtNDEsMTQgKzQxLDE0IEBAIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAogV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9JTVBMKENTU01hdHJpeENvbXBvbmVudCk7
CiAKLVJlZjxDU1NUcmFuc2Zvcm1Db21wb25lbnQ+IENTU01hdHJpeENvbXBvbmVudDo6Y3JlYXRl
KFJlZjxET01NYXRyaXhSZWFkT25seT4mJiBtYXRyaXgsIENTU01hdHJpeENvbXBvbmVudE9wdGlv
bnMmJiBvcHRpb25zKQorUmVmPENTU1RyYW5zZm9ybUNvbXBvbmVudD4gQ1NTTWF0cml4Q29tcG9u
ZW50OjpjcmVhdGUoUmVmPERPTU1hdHJpeFJlYWRPbmx5PiYmIG1hdHJpeCwgc3RkOjpvcHRpb25h
bDxDU1NNYXRyaXhDb21wb25lbnRPcHRpb25zPiYmIG9wdGlvbnMpCiB7CiAgICAgcmV0dXJuIGFk
b3B0UmVmKCpuZXcgQ1NTTWF0cml4Q29tcG9uZW50KFdURk1vdmUobWF0cml4KSwgV1RGTW92ZShv
cHRpb25zKSkpOwogfQogCi1DU1NNYXRyaXhDb21wb25lbnQ6OkNTU01hdHJpeENvbXBvbmVudChS
ZWY8RE9NTWF0cml4UmVhZE9ubHk+JiYgbWF0cml4LCBDU1NNYXRyaXhDb21wb25lbnRPcHRpb25z
JiYgb3B0aW9ucykKLSAgICA6IG1fbWF0cml4KG1hdHJpeC0+Y2xvbmVBc0RPTU1hdHJpeCgpKQot
ICAgICwgbV9vcHRpb25zKFdURk1vdmUob3B0aW9ucykpCitDU1NNYXRyaXhDb21wb25lbnQ6OkNT
U01hdHJpeENvbXBvbmVudChSZWY8RE9NTWF0cml4UmVhZE9ubHk+JiYgbWF0cml4LCBzdGQ6Om9w
dGlvbmFsPENTU01hdHJpeENvbXBvbmVudE9wdGlvbnM+JiYgb3B0aW9ucykKKyAgICA6IENTU1Ry
YW5zZm9ybUNvbXBvbmVudCgob3B0aW9ucyA/IG9wdGlvbnMtPmlzMkQgOiBtYXRyaXgtPmlzMkQo
KSkgPyBJczJEOjpZZXMgOiBJczJEOjpObykKKyAgICAsIG1fbWF0cml4KG1hdHJpeC0+Y2xvbmVB
c0RPTU1hdHJpeCgpKQogewogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlw
ZWRvbS90cmFuc2Zvcm0vQ1NTTWF0cml4Q29tcG9uZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
dHlwZWRvbS90cmFuc2Zvcm0vQ1NTTWF0cml4Q29tcG9uZW50LmgKaW5kZXggODRmMGFmYjJmNGYx
OTcyYjUyMzhkNmExZjFkY2Y3OTk3YTU5ZDdlZC4uMDg1N2VmYzE3MmMwOTA0ZjZjMTU5Yzk2MTgw
NzlhZDFhMzI5MWRkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL3R5cGVkb20vdHJh
bnNmb3JtL0NTU01hdHJpeENvbXBvbmVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBl
ZG9tL3RyYW5zZm9ybS9DU1NNYXRyaXhDb21wb25lbnQuaApAQCAtMzksNyArMzksNyBAQCB0ZW1w
bGF0ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7CiBjbGFzcyBDU1NNYXRyaXhDb21wb25l
bnQgOiBwdWJsaWMgQ1NTVHJhbnNmb3JtQ29tcG9uZW50IHsKICAgICBXVEZfTUFLRV9JU09fQUxM
T0NBVEVEKENTU01hdHJpeENvbXBvbmVudCk7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFJlZjxDU1NU
cmFuc2Zvcm1Db21wb25lbnQ+IGNyZWF0ZShSZWY8RE9NTWF0cml4UmVhZE9ubHk+JiYgbWF0cml4
LCBDU1NNYXRyaXhDb21wb25lbnRPcHRpb25zJiYgb3B0aW9ucyA9IENTU01hdHJpeENvbXBvbmVu
dE9wdGlvbnMgeyB9KTsKKyAgICBzdGF0aWMgUmVmPENTU1RyYW5zZm9ybUNvbXBvbmVudD4gY3Jl
YXRlKFJlZjxET01NYXRyaXhSZWFkT25seT4mJiwgc3RkOjpvcHRpb25hbDxDU1NNYXRyaXhDb21w
b25lbnRPcHRpb25zPiYmKTsKICAgICAKICAgICBET01NYXRyaXgmIG1hdHJpeCgpOwogICAgIHZv
aWQgc2V0TWF0cml4KFJlZjxET01NYXRyaXg+JiYpOwpAQCAtNDksOSArNDksOCBAQCBwdWJsaWM6
CiAgICAgCiAgICAgQ1NTVHJhbnNmb3JtVHlwZSBnZXRUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1
cm4gQ1NTVHJhbnNmb3JtVHlwZTo6TWF0cml4Q29tcG9uZW50OyB9CiBwcml2YXRlOgotICAgIENT
U01hdHJpeENvbXBvbmVudChSZWY8RE9NTWF0cml4UmVhZE9ubHk+JiYsIENTU01hdHJpeENvbXBv
bmVudE9wdGlvbnMmJik7CisgICAgQ1NTTWF0cml4Q29tcG9uZW50KFJlZjxET01NYXRyaXhSZWFk
T25seT4mJiwgc3RkOjpvcHRpb25hbDxDU1NNYXRyaXhDb21wb25lbnRPcHRpb25zPiYmKTsKICAg
ICBSZWY8RE9NTWF0cml4PiBtX21hdHJpeDsKLSAgICBDU1NNYXRyaXhDb21wb25lbnRPcHRpb25z
IG1fb3B0aW9uczsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL3RyYW5zZm9ybS9DU1NNYXRyaXhDb21wb25lbnQuaWRs
IGIvU291cmNlL1dlYkNvcmUvY3NzL3R5cGVkb20vdHJhbnNmb3JtL0NTU01hdHJpeENvbXBvbmVu
dC5pZGwKaW5kZXggZTFhMWNmMTg4NzA0NzM5Nzg3Y2VkYWZhMmRmNjI5Mjk0MjQyYmE3ZC4uYTUy
MjMxNGM5MjE4NzE1OTFlNmUwN2E4YTQ1NTQwN2ZhMDYwYjk5YiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvY3NzL3R5cGVkb20vdHJhbnNmb3JtL0NTU01hdHJpeENvbXBvbmVudC5pZGwKKysr
IGIvU291cmNlL1dlYkNvcmUvY3NzL3R5cGVkb20vdHJhbnNmb3JtL0NTU01hdHJpeENvbXBvbmVu
dC5pZGwKQEAgLTI5LDYgKzI5LDkgQEAKICAgICBDb25kaXRpb25hbD1DU1NfVFlQRURfT00sCiAg
ICAgRXhwb3NlZD0oV2luZG93LFdvcmtlcixQYWludFdvcmtsZXQpLAogXSBpbnRlcmZhY2UgQ1NT
TWF0cml4Q29tcG9uZW50IDogQ1NTVHJhbnNmb3JtQ29tcG9uZW50IHsKKyAgICAvLyBGSVhNRTog
d2hlbiB0aGUgc2Vjb25kIHBhcmFtZXRlciBpcyBtaXNzaW5nIG9yIG5vdCBhIGRpY3Rpb25hcnks
CisgICAgLy8gQ1NTTWF0cml4Q29tcG9uZW50OjpjcmVhdGUgaXMgbm90IGNhbGxlZCB3aXRoIHN0
ZDo6bnVsbG9wdCBpbiB0aGUgZ2VuZXJhdGVkIGJpbmRpbmdzIGNvZGUuCisgICAgLy8gRG9pbmcg
c28gd291bGQgZml4IHRoZSByZW1haW5pbmcgZmFpbHVyZXMgaW4gdGhlIGNzc01hdHJpeENvbXBv
bmVudC50ZW50YXRpdmUgdGVzdC4KICAgICBjb25zdHJ1Y3RvcihET01NYXRyaXhSZWFkT25seSBt
YXRyaXgsIG9wdGlvbmFsIENTU01hdHJpeENvbXBvbmVudE9wdGlvbnMgb3B0aW9ucyk7CiAKICAg
ICBhdHRyaWJ1dGUgRE9NTWF0cml4IG1hdHJpeDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy90eXBlZG9tL3RyYW5zZm9ybS9DU1NQZXJzcGVjdGl2ZS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTUGVyc3BlY3RpdmUuY3BwCmluZGV4IGI5ODczOTRm
MjNiODY0Y2Q0NDZlYmFkNjc5YmRiM2UyMjY3YmI5NjIuLjk5ODE4ODc0YjA1MWViMjgzNjMxNDNk
NmI0NDc2ZTM4YmVmMDkwMTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9t
L3RyYW5zZm9ybS9DU1NQZXJzcGVjdGl2ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL3R5
cGVkb20vdHJhbnNmb3JtL0NTU1BlcnNwZWN0aXZlLmNwcApAQCAtMzIsNiArMzIsNyBAQAogCiAj
aWYgRU5BQkxFKENTU19UWVBFRF9PTSkKIAorI2luY2x1ZGUgIkNTU0tleXdvcmRWYWx1ZS5oIgog
I2luY2x1ZGUgIkRPTU1hdHJpeC5oIgogI2luY2x1ZGUgIkV4Y2VwdGlvbk9yLmgiCiAjaW5jbHVk
ZSA8d3RmL0lzb01hbGxvY0lubGluZXMuaD4KQEAgLTQwLDE0ICs0MSw1MSBAQCBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU1QTChDU1NQZXJzcGVjdGl2ZSk7
CiAKLVJlZjxDU1NQZXJzcGVjdGl2ZT4gQ1NTUGVyc3BlY3RpdmU6OmNyZWF0ZShSZWY8Q1NTTnVt
ZXJpY1ZhbHVlPiYmIGxlbmd0aCkKK3N0YXRpYyBFeGNlcHRpb25PcjxDU1NQZXJzcGVjdGl2ZVZh
bHVlPiBjaGVja0xlbmd0aChDU1NQZXJzcGVjdGl2ZVZhbHVlIGxlbmd0aCkKIHsKLSAgICByZXR1
cm4gYWRvcHRSZWYoKm5ldyBDU1NQZXJzcGVjdGl2ZShXVEZNb3ZlKGxlbmd0aCkpKTsKKyAgICAv
LyBodHRwczovL2RyYWZ0cy5jc3MtaG91ZGluaS5vcmcvY3NzLXR5cGVkLW9tLyNkb20tY3NzcGVy
c3BlY3RpdmUtY3NzcGVyc3BlY3RpdmUKKyAgICBhdXRvIGNoZWNrS2V5d29yZFZhbHVlID0gW10g
KFJlZlB0cjxDU1NLZXl3b3JkVmFsdWU+IHZhbHVlKSAtPiBFeGNlcHRpb25PcjxDU1NQZXJzcGVj
dGl2ZVZhbHVlPiB7CisgICAgICAgIFJFTEVBU0VfQVNTRVJUKHZhbHVlKTsKKyAgICAgICAgaWYg
KCFlcXVhbElnbm9yaW5nQVNDSUlDYXNlKHZhbHVlLT52YWx1ZSgpLCAibm9uZSIpKQorICAgICAg
ICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IFR5cGVFcnJvciB9OworICAgICAgICByZXR1cm4geyBX
VEZNb3ZlKHZhbHVlKSB9OworICAgIH07CisgICAgcmV0dXJuIFdURjo6c3dpdGNoT24oV1RGTW92
ZShsZW5ndGgpLAorICAgICAgICBbXSAoUmVmUHRyPENTU051bWVyaWNWYWx1ZT4gdmFsdWUpIC0+
IEV4Y2VwdGlvbk9yPENTU1BlcnNwZWN0aXZlVmFsdWU+IHsKKyAgICAgICAgICAgIGlmICh2YWx1
ZSAmJiAhdmFsdWUtPnR5cGUoKS5tYXRjaGVzPENTU051bWVyaWNCYXNlVHlwZTo6TGVuZ3RoPigp
KQorICAgICAgICAgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBUeXBlRXJyb3IgfTsKKyAgICAg
ICAgICAgIHJldHVybiB7IFdURk1vdmUodmFsdWUpIH07CisgICAgICAgIH0sIFsmXSAoU3RyaW5n
IHZhbHVlKSB7CisgICAgICAgICAgICByZXR1cm4gY2hlY2tLZXl3b3JkVmFsdWUoQ1NTS2V5d29y
ZFZhbHVlOjpyZWN0aWZ5S2V5d29yZGlzaChXVEZNb3ZlKHZhbHVlKSkpOworICAgICAgICB9LCBj
aGVja0tleXdvcmRWYWx1ZSk7CiB9CiAKLUNTU1BlcnNwZWN0aXZlOjpDU1NQZXJzcGVjdGl2ZShS
ZWY8Q1NTTnVtZXJpY1ZhbHVlPiYmIGxlbmd0aCkKLSAgICA6IG1fbGVuZ3RoKFdURk1vdmUobGVu
Z3RoKSkKK0V4Y2VwdGlvbk9yPFJlZjxDU1NQZXJzcGVjdGl2ZT4+IENTU1BlcnNwZWN0aXZlOjpj
cmVhdGUoQ1NTUGVyc3BlY3RpdmVWYWx1ZSBsZW5ndGgpCiB7CisgICAgYXV0byBjaGVja2VkTGVu
Z3RoID0gY2hlY2tMZW5ndGgoV1RGTW92ZShsZW5ndGgpKTsKKyAgICBpZiAoY2hlY2tlZExlbmd0
aC5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIGNoZWNrZWRMZW5ndGgucmVsZWFzZUV4
Y2VwdGlvbigpOworICAgIHJldHVybiBhZG9wdFJlZigqbmV3IENTU1BlcnNwZWN0aXZlKGNoZWNr
ZWRMZW5ndGgucmVsZWFzZVJldHVyblZhbHVlKCkpKTsKK30KKworQ1NTUGVyc3BlY3RpdmU6OkNT
U1BlcnNwZWN0aXZlKENTU1BlcnNwZWN0aXZlVmFsdWUgbGVuZ3RoKQorICAgIDogQ1NTVHJhbnNm
b3JtQ29tcG9uZW50KElzMkQ6Ok5vKQorICAgICwgbV9sZW5ndGgoV1RGTW92ZShsZW5ndGgpKQor
eworfQorCitFeGNlcHRpb25Pcjx2b2lkPiBDU1NQZXJzcGVjdGl2ZTo6c2V0TGVuZ3RoKENTU1Bl
cnNwZWN0aXZlVmFsdWUgbGVuZ3RoKQoreworICAgIGF1dG8gY2hlY2tlZExlbmd0aCA9IGNoZWNr
TGVuZ3RoKFdURk1vdmUobGVuZ3RoKSk7CisgICAgaWYgKGNoZWNrZWRMZW5ndGguaGFzRXhjZXB0
aW9uKCkpCisgICAgICAgIHJldHVybiBjaGVja2VkTGVuZ3RoLnJlbGVhc2VFeGNlcHRpb24oKTsK
KyAgICBtX2xlbmd0aCA9IGNoZWNrZWRMZW5ndGgucmVsZWFzZVJldHVyblZhbHVlKCk7CisgICAg
cmV0dXJuIHsgfTsKK30KKwordm9pZCBDU1NQZXJzcGVjdGl2ZTo6c2V0SXMyRChib29sKQorewor
ICAgIC8vIGh0dHBzOi8vZHJhZnRzLmNzcy1ob3VkaW5pLm9yZy9jc3MtdHlwZWQtb20vI2RvbS1j
c3NwZXJzcGVjdGl2ZS1pczJkIHNheXMgdG8gZG8gbm90aGluZyBoZXJlLgogfQogCiAvLyBGSVhN
RTogRml4IGFsbCB0aGUgZm9sbG93aW5nIHZpcnR1YWwgZnVuY3Rpb25zCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTUGVyc3BlY3RpdmUuaCBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL3RyYW5zZm9ybS9DU1NQZXJzcGVjdGl2ZS5oCmluZGV4
IDRhNzFkNGQyNzc5ODUxZDAyZjExMjJlYjkzMmM2NDQ2NzAxZmEwY2MuLjc4ZjExMjA0MWYzNDY3
MWY4OGMyODA2YTU3NDI2MWFkZDkzMjIzNjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy90eXBlZG9tL3RyYW5zZm9ybS9DU1NQZXJzcGVjdGl2ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy90eXBlZG9tL3RyYW5zZm9ybS9DU1NQZXJzcGVjdGl2ZS5oCkBAIC0zMywxNCArMzMsMTYg
QEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdGVtcGxhdGU8dHlwZW5hbWU+IGNsYXNzIEV4Y2Vw
dGlvbk9yOworY2xhc3MgQ1NTS2V5d29yZFZhbHVlOwordXNpbmcgQ1NTUGVyc3BlY3RpdmVWYWx1
ZSA9IHN0ZDo6dmFyaWFudDxSZWZQdHI8Q1NTTnVtZXJpY1ZhbHVlPiwgU3RyaW5nLCBSZWZQdHI8
Q1NTS2V5d29yZFZhbHVlPj47CiAKIGNsYXNzIENTU1BlcnNwZWN0aXZlIDogcHVibGljIENTU1Ry
YW5zZm9ybUNvbXBvbmVudCB7CiAgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChDU1NQZXJzcGVj
dGl2ZSk7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFJlZjxDU1NQZXJzcGVjdGl2ZT4gY3JlYXRlKFJl
ZjxDU1NOdW1lcmljVmFsdWU+JiYgbGVuZ3RoKTsKKyAgICBzdGF0aWMgRXhjZXB0aW9uT3I8UmVm
PENTU1BlcnNwZWN0aXZlPj4gY3JlYXRlKENTU1BlcnNwZWN0aXZlVmFsdWUpOwogICAgIAotICAg
IENTU051bWVyaWNWYWx1ZSYgbGVuZ3RoKCkgeyByZXR1cm4gbV9sZW5ndGguZ2V0KCk7IH0KLSAg
ICB2b2lkIHNldExlbmd0aChSZWY8Q1NTTnVtZXJpY1ZhbHVlPiYmIGxlbmd0aCkgeyBtX2xlbmd0
aCA9IFdURk1vdmUobGVuZ3RoKTsgfQorICAgIGNvbnN0IENTU1BlcnNwZWN0aXZlVmFsdWUmIGxl
bmd0aCgpIGNvbnN0IHsgcmV0dXJuIG1fbGVuZ3RoOyB9CisgICAgRXhjZXB0aW9uT3I8dm9pZD4g
c2V0TGVuZ3RoKENTU1BlcnNwZWN0aXZlVmFsdWUpOwogICAgIAogICAgIFN0cmluZyB0b1N0cmlu
ZygpIGNvbnN0IGZpbmFsOwogICAgIEV4Y2VwdGlvbk9yPFJlZjxET01NYXRyaXg+PiB0b01hdHJp
eCgpIGZpbmFsOwpAQCAtNDgsOSArNTAsMTEgQEAgcHVibGljOgogICAgIENTU1RyYW5zZm9ybVR5
cGUgZ2V0VHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIENTU1RyYW5zZm9ybVR5cGU6OlBlcnNw
ZWN0aXZlOyB9CiAKIHByaXZhdGU6Ci0gICAgQ1NTUGVyc3BlY3RpdmUoUmVmPENTU051bWVyaWNW
YWx1ZT4mJiBsZW5ndGgpOwotICAgIAotICAgIFJlZjxDU1NOdW1lcmljVmFsdWU+IG1fbGVuZ3Ro
OworICAgIENTU1BlcnNwZWN0aXZlKENTU1BlcnNwZWN0aXZlVmFsdWUpOworCisgICAgdm9pZCBz
ZXRJczJEKGJvb2wpOworCisgICAgQ1NTUGVyc3BlY3RpdmVWYWx1ZSBtX2xlbmd0aDsKIH07CiAg
ICAgCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTUGVyc3BlY3RpdmUuaWRsIGIvU291cmNlL1dlYkNvcmUv
Y3NzL3R5cGVkb20vdHJhbnNmb3JtL0NTU1BlcnNwZWN0aXZlLmlkbAppbmRleCAzNTBmMjIzZTAz
ZTFiZGQyMzY3NzIyZjY5Nzc3MTk2ZTk5YzI0NjIyLi5kOTA0M2FhZGRlMDZkODVlZGJmYjMwNWUx
Y2NjMjY3YWQ1OWZmYzJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90
cmFuc2Zvcm0vQ1NTUGVyc3BlY3RpdmUuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBl
ZG9tL3RyYW5zZm9ybS9DU1NQZXJzcGVjdGl2ZS5pZGwKQEAgLTIzLDEzICsyMywxNiBAQAogKiBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgogKi8KIAordHlwZWRlZiAoRE9NU3RyaW5nIG9yIENTU0tleXdvcmRWYWx1ZSkg
Q1NTS2V5d29yZGlzaDsKK3R5cGVkZWYgKENTU051bWVyaWNWYWx1ZSBvciBDU1NLZXl3b3JkaXNo
KSBDU1NQZXJzcGVjdGl2ZVZhbHVlOworCiAvLyBodHRwczovL2RyYWZ0cy5jc3MtaG91ZGluaS5v
cmcvY3NzLXR5cGVkLW9tLyNjc3NwZXJzcGVjdGl2ZQogWwogICAgIEVuYWJsZWRCeVNldHRpbmc9
Q1NTVHlwZWRPTUVuYWJsZWQsCiAgICAgQ29uZGl0aW9uYWw9Q1NTX1RZUEVEX09NLAogICAgIEV4
cG9zZWQ9KFdpbmRvdyxXb3JrZXIsUGFpbnRXb3JrbGV0KQogXSBpbnRlcmZhY2UgQ1NTUGVyc3Bl
Y3RpdmUgOiBDU1NUcmFuc2Zvcm1Db21wb25lbnQgewotICAgIGNvbnN0cnVjdG9yKENTU051bWVy
aWNWYWx1ZSBsZW5ndGgpOworICAgIGNvbnN0cnVjdG9yKENTU1BlcnNwZWN0aXZlVmFsdWUgbGVu
Z3RoKTsKICAgICAKLSAgICBhdHRyaWJ1dGUgQ1NTTnVtZXJpY1ZhbHVlIGxlbmd0aDsKKyAgICBh
dHRyaWJ1dGUgQ1NTUGVyc3BlY3RpdmVWYWx1ZSBsZW5ndGg7CiB9OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvY3NzL3R5cGVkb20vdHJhbnNmb3JtL0NTU1JvdGF0ZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTUm90YXRlLmNwcAppbmRleCBjZjgzYTc0
YTYxMmUyMjhiMjE4ZWZkNGVhN2Q1ZGZmOGQ3NjU3MzYxLi4zNjI2N2Q5NWZkNjY4ODk0Y2U3Yzdh
ZWNlZmRjOTlkNTUzNGE5MjY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRv
bS90cmFuc2Zvcm0vQ1NTUm90YXRlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRv
bS90cmFuc2Zvcm0vQ1NTUm90YXRlLmNwcApAQCAtMzIsNiArMzIsOCBAQAogCiAjaWYgRU5BQkxF
KENTU19UWVBFRF9PTSkKIAorI2luY2x1ZGUgIkNTU1VuaXRWYWx1ZS5oIgorI2luY2x1ZGUgIkNT
U1VuaXRzLmgiCiAjaW5jbHVkZSAiRE9NTWF0cml4LmgiCiAjaW5jbHVkZSAiRXhjZXB0aW9uT3Iu
aCIKICNpbmNsdWRlIDx3dGYvSXNvTWFsbG9jSW5saW5lcy5oPgpAQCAtNDAsMjQgKzQyLDc4IEBA
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9JTVBMKENTU1Jv
dGF0ZSk7CiAKLVJlZjxDU1NSb3RhdGU+IENTU1JvdGF0ZTo6Y3JlYXRlKENTU051bWJlcmlzaCYm
IHgsIENTU051bWJlcmlzaCYmIHksIENTU051bWJlcmlzaCYmIHosIFJlZjxDU1NOdW1lcmljVmFs
dWU+JiYgYW5nbGUpCitFeGNlcHRpb25PcjxSZWY8Q1NTUm90YXRlPj4gQ1NTUm90YXRlOjpjcmVh
dGUoQ1NTTnVtYmVyaXNoIHgsIENTU051bWJlcmlzaCB5LCBDU1NOdW1iZXJpc2ggeiwgUmVmPENT
U051bWVyaWNWYWx1ZT4gYW5nbGUpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgQ1NTUm90
YXRlKFdURk1vdmUoeCksIFdURk1vdmUoeSksIFdURk1vdmUoeiksIFdURk1vdmUoYW5nbGUpKSk7
CisgICAgaWYgKCFhbmdsZS0+dHlwZSgpLm1hdGNoZXM8Q1NTTnVtZXJpY0Jhc2VUeXBlOjpBbmds
ZT4oKSkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IFR5cGVFcnJvciB9OworCisgICAgYXV0
byByZWN0aWZpZWRYID0gQ1NTTnVtZXJpY1ZhbHVlOjpyZWN0aWZ5TnVtYmVyaXNoKFdURk1vdmUo
eCkpOworICAgIGF1dG8gcmVjdGlmaWVkWSA9IENTU051bWVyaWNWYWx1ZTo6cmVjdGlmeU51bWJl
cmlzaChXVEZNb3ZlKHkpKTsKKyAgICBhdXRvIHJlY3RpZmllZFogPSBDU1NOdW1lcmljVmFsdWU6
OnJlY3RpZnlOdW1iZXJpc2goV1RGTW92ZSh6KSk7CisKKyAgICBpZiAoIXJlY3RpZmllZFgtPnR5
cGUoKS5tYXRjaGVzTnVtYmVyKCkKKyAgICAgICAgfHwgIXJlY3RpZmllZFktPnR5cGUoKS5tYXRj
aGVzTnVtYmVyKCkKKyAgICAgICAgfHwgIXJlY3RpZmllZFotPnR5cGUoKS5tYXRjaGVzTnVtYmVy
KCkpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBUeXBlRXJyb3IgfTsKKworICAgIHJldHVy
biBhZG9wdFJlZigqbmV3IENTU1JvdGF0ZShJczJEOjpObywgV1RGTW92ZShyZWN0aWZpZWRYKSwg
V1RGTW92ZShyZWN0aWZpZWRZKSwgV1RGTW92ZShyZWN0aWZpZWRaKSwgV1RGTW92ZShhbmdsZSkp
KTsKIH0KIAotUmVmPENTU1JvdGF0ZT4gQ1NTUm90YXRlOjpjcmVhdGUoUmVmPENTU051bWVyaWNW
YWx1ZT4mJiBhbmdsZSkKK0V4Y2VwdGlvbk9yPFJlZjxDU1NSb3RhdGU+PiBDU1NSb3RhdGU6OmNy
ZWF0ZShSZWY8Q1NTTnVtZXJpY1ZhbHVlPiBhbmdsZSkKIHsKLSAgICByZXR1cm4gYWRvcHRSZWYo
Km5ldyBDU1NSb3RhdGUoMC4wLCAwLjAsIDAuMCwgV1RGTW92ZShhbmdsZSkpKTsKKyAgICBpZiAo
IWFuZ2xlLT50eXBlKCkubWF0Y2hlczxDU1NOdW1lcmljQmFzZVR5cGU6OkFuZ2xlPigpKQorICAg
ICAgICByZXR1cm4gRXhjZXB0aW9uIHsgVHlwZUVycm9yIH07CisgICAgcmV0dXJuIGFkb3B0UmVm
KCpuZXcgQ1NTUm90YXRlKElzMkQ6OlllcywKKyAgICAgICAgQ1NTVW5pdFZhbHVlOjpjcmVhdGUo
MC4wLCBDU1NVbml0VHlwZTo6Q1NTX05VTUJFUiksCisgICAgICAgIENTU1VuaXRWYWx1ZTo6Y3Jl
YXRlKDAuMCwgQ1NTVW5pdFR5cGU6OkNTU19OVU1CRVIpLAorICAgICAgICBDU1NVbml0VmFsdWU6
OmNyZWF0ZSgxLjAsIENTU1VuaXRUeXBlOjpDU1NfTlVNQkVSKSwKKyAgICAgICAgV1RGTW92ZShh
bmdsZSkpKTsKIH0KIAotQ1NTUm90YXRlOjpDU1NSb3RhdGUoQ1NTTnVtYmVyaXNoJiYgeCwgQ1NT
TnVtYmVyaXNoJiYgeSwgQ1NTTnVtYmVyaXNoJiYgeiwgUmVmPENTU051bWVyaWNWYWx1ZT4mJiBh
bmdsZSkKLSAgICA6IG1feChXVEZNb3ZlKHgpKQorQ1NTUm90YXRlOjpDU1NSb3RhdGUoQ1NTVHJh
bnNmb3JtQ29tcG9uZW50OjpJczJEIGlzMkQsIFJlZjxDU1NOdW1lcmljVmFsdWU+IHgsIFJlZjxD
U1NOdW1lcmljVmFsdWU+IHksIFJlZjxDU1NOdW1lcmljVmFsdWU+IHosIFJlZjxDU1NOdW1lcmlj
VmFsdWU+IGFuZ2xlKQorICAgIDogQ1NTVHJhbnNmb3JtQ29tcG9uZW50KGlzMkQpCisgICAgLCBt
X3goV1RGTW92ZSh4KSkKICAgICAsIG1feShXVEZNb3ZlKHkpKQogICAgICwgbV96KFdURk1vdmUo
eikpCiAgICAgLCBtX2FuZ2xlKFdURk1vdmUoYW5nbGUpKQogewogfQogCitFeGNlcHRpb25Pcjx2
b2lkPiBDU1NSb3RhdGU6OnNldFgoQ1NTTnVtYmVyaXNoIHgpCit7CisgICAgYXV0byByZWN0aWZp
ZWQgPSBDU1NOdW1lcmljVmFsdWU6OnJlY3RpZnlOdW1iZXJpc2goV1RGTW92ZSh4KSk7CisgICAg
aWYgKCFyZWN0aWZpZWQtPnR5cGUoKS5tYXRjaGVzTnVtYmVyKCkpCisgICAgICAgIHJldHVybiBF
eGNlcHRpb24geyBUeXBlRXJyb3IgfTsKKyAgICBtX3ggPSBXVEZNb3ZlKHJlY3RpZmllZCk7Cisg
ICAgcmV0dXJuIHsgfTsKK30KKworRXhjZXB0aW9uT3I8dm9pZD4gQ1NTUm90YXRlOjpzZXRZKENT
U051bWJlcmlzaCB5KQoreworICAgIGF1dG8gcmVjdGlmaWVkID0gQ1NTTnVtZXJpY1ZhbHVlOjpy
ZWN0aWZ5TnVtYmVyaXNoKFdURk1vdmUoeSkpOworICAgIGlmICghcmVjdGlmaWVkLT50eXBlKCku
bWF0Y2hlc051bWJlcigpKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgVHlwZUVycm9yIH07
CisgICAgbV95ID0gV1RGTW92ZShyZWN0aWZpZWQpOworICAgIHJldHVybiB7IH07Cit9CisKK0V4
Y2VwdGlvbk9yPHZvaWQ+IENTU1JvdGF0ZTo6c2V0WihDU1NOdW1iZXJpc2ggeikKK3sKKyAgICBh
dXRvIHJlY3RpZmllZCA9IENTU051bWVyaWNWYWx1ZTo6cmVjdGlmeU51bWJlcmlzaChXVEZNb3Zl
KHopKTsKKyAgICBpZiAoIXJlY3RpZmllZC0+dHlwZSgpLm1hdGNoZXNOdW1iZXIoKSkKKyAgICAg
ICAgcmV0dXJuIEV4Y2VwdGlvbiB7IFR5cGVFcnJvciB9OworICAgIG1feiA9IFdURk1vdmUocmVj
dGlmaWVkKTsKKyAgICByZXR1cm4geyB9OworfQorCitFeGNlcHRpb25Pcjx2b2lkPiBDU1NSb3Rh
dGU6OnNldEFuZ2xlKFJlZjxDU1NOdW1lcmljVmFsdWU+IGFuZ2xlKQoreworICAgIGlmICghYW5n
bGUtPnR5cGUoKS5tYXRjaGVzPENTU051bWVyaWNCYXNlVHlwZTo6QW5nbGU+KCkpCisgICAgICAg
IHJldHVybiBFeGNlcHRpb24geyBUeXBlRXJyb3IgfTsKKyAgICBtX2FuZ2xlID0gV1RGTW92ZShh
bmdsZSk7CisgICAgcmV0dXJuIHsgfTsKK30KKwogLy8gRklYTUU6IEZpeCBhbGwgdGhlIGZvbGxv
d2luZyB2aXJ0dWFsIGZ1bmN0aW9ucwogCiBTdHJpbmcgQ1NTUm90YXRlOjp0b1N0cmluZygpIGNv
bnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NT
Um90YXRlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTUm90YXRl
LmgKaW5kZXggZTRiYjA2NzIyZGFiYmRiM2E0NDY1OWIwMjdhNDdmZDhmNjAzNDRkYi4uZDcxOGY1
NWUzOGUxYWNjYTcxNGQ3YWQ1MmI2OTg3Zjc0NGEwMjhhMCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvY3NzL3R5cGVkb20vdHJhbnNmb3JtL0NTU1JvdGF0ZS5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy90eXBlZG9tL3RyYW5zZm9ybS9DU1NSb3RhdGUuaApAQCAtMzcsMzAgKzM3LDMwIEBA
IHRlbXBsYXRlPHR5cGVuYW1lPiBjbGFzcyBFeGNlcHRpb25PcjsKIGNsYXNzIENTU1JvdGF0ZSA6
IHB1YmxpYyBDU1NUcmFuc2Zvcm1Db21wb25lbnQgewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FU
RUQoQ1NTUm90YXRlKTsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUmVmPENTU1JvdGF0ZT4gY3JlYXRl
KENTU051bWJlcmlzaCYmLCBDU1NOdW1iZXJpc2gmJiwgQ1NTTnVtYmVyaXNoJiYsIFJlZjxDU1NO
dW1lcmljVmFsdWU+JiYpOwotICAgIHN0YXRpYyBSZWY8Q1NTUm90YXRlPiBjcmVhdGUoUmVmPENT
U051bWVyaWNWYWx1ZT4mJik7CisgICAgc3RhdGljIEV4Y2VwdGlvbk9yPFJlZjxDU1NSb3RhdGU+
PiBjcmVhdGUoQ1NTTnVtYmVyaXNoLCBDU1NOdW1iZXJpc2gsIENTU051bWJlcmlzaCwgUmVmPENT
U051bWVyaWNWYWx1ZT4pOworICAgIHN0YXRpYyBFeGNlcHRpb25PcjxSZWY8Q1NTUm90YXRlPj4g
Y3JlYXRlKFJlZjxDU1NOdW1lcmljVmFsdWU+KTsKIAotICAgIGNvbnN0IENTU051bWJlcmlzaCYg
eCgpIHsgcmV0dXJuIG1feDsgfQotICAgIGNvbnN0IENTU051bWJlcmlzaCYgeSgpIHsgcmV0dXJu
IG1feDsgfQotICAgIGNvbnN0IENTU051bWJlcmlzaCYgeigpIHsgcmV0dXJuIG1feDsgfQorICAg
IENTU051bWJlcmlzaCB4KCkgeyByZXR1cm4geyBtX3gucHRyKCkgfTsgfQorICAgIENTU051bWJl
cmlzaCB5KCkgeyByZXR1cm4geyBtX3kucHRyKCkgfTsgfQorICAgIENTU051bWJlcmlzaCB6KCkg
eyByZXR1cm4geyBtX3oucHRyKCkgfTsgfQogICAgIGNvbnN0IENTU051bWVyaWNWYWx1ZSYgYW5n
bGUoKSB7IHJldHVybiBtX2FuZ2xlLmdldCgpOyB9Ci0gICAgCi0gICAgdm9pZCBzZXRYKENTU051
bWJlcmlzaCYmIHgpIHsgbV94ID0gV1RGTW92ZSh4KTsgfQotICAgIHZvaWQgc2V0WShDU1NOdW1i
ZXJpc2gmJiB5KSB7IG1feSA9IFdURk1vdmUoeSk7IH0KLSAgICB2b2lkIHNldFooQ1NTTnVtYmVy
aXNoJiYgeikgeyBtX3ogPSBXVEZNb3ZlKHopOyB9Ci0gICAgdm9pZCBzZXRBbmdsZShSZWY8Q1NT
TnVtZXJpY1ZhbHVlPiYmIGFuZ2xlKSB7IG1fYW5nbGUgPSBXVEZNb3ZlKGFuZ2xlKTsgfQotICAg
IAorCisgICAgRXhjZXB0aW9uT3I8dm9pZD4gc2V0WChDU1NOdW1iZXJpc2gpOworICAgIEV4Y2Vw
dGlvbk9yPHZvaWQ+IHNldFkoQ1NTTnVtYmVyaXNoKTsKKyAgICBFeGNlcHRpb25Pcjx2b2lkPiBz
ZXRaKENTU051bWJlcmlzaCk7CisgICAgRXhjZXB0aW9uT3I8dm9pZD4gc2V0QW5nbGUoUmVmPENT
U051bWVyaWNWYWx1ZT4pOworCiAgICAgU3RyaW5nIHRvU3RyaW5nKCkgY29uc3QgZmluYWw7CiAg
ICAgRXhjZXB0aW9uT3I8UmVmPERPTU1hdHJpeD4+IHRvTWF0cml4KCkgZmluYWw7CiAgICAgCiAg
ICAgQ1NTVHJhbnNmb3JtVHlwZSBnZXRUeXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gQ1NTVHJh
bnNmb3JtVHlwZTo6Um90YXRlOyB9CiAgICAgCiBwcml2YXRlOgotICAgIENTU1JvdGF0ZShDU1NO
dW1iZXJpc2gmJiwgQ1NTTnVtYmVyaXNoJiYsIENTU051bWJlcmlzaCYmLCBSZWY8Q1NTTnVtZXJp
Y1ZhbHVlPiYmKTsKKyAgICBDU1NSb3RhdGUoQ1NTVHJhbnNmb3JtQ29tcG9uZW50OjpJczJELCBS
ZWY8Q1NTTnVtZXJpY1ZhbHVlPiwgUmVmPENTU051bWVyaWNWYWx1ZT4sIFJlZjxDU1NOdW1lcmlj
VmFsdWU+LCBSZWY8Q1NTTnVtZXJpY1ZhbHVlPik7CiAgICAgCi0gICAgQ1NTTnVtYmVyaXNoIG1f
eDsKLSAgICBDU1NOdW1iZXJpc2ggbV95OwotICAgIENTU051bWJlcmlzaCBtX3o7CisgICAgUmVm
PENTU051bWVyaWNWYWx1ZT4gbV94OworICAgIFJlZjxDU1NOdW1lcmljVmFsdWU+IG1feTsKKyAg
ICBSZWY8Q1NTTnVtZXJpY1ZhbHVlPiBtX3o7CiAgICAgUmVmPENTU051bWVyaWNWYWx1ZT4gbV9h
bmdsZTsKIH07CiAgICAgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90
cmFuc2Zvcm0vQ1NTU2NhbGUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL3R5cGVkb20vdHJhbnNm
b3JtL0NTU1NjYWxlLmNwcAppbmRleCAwOTdjMzI4MDczMGY0OTI5Zjc2Yzc5NjQ0OTk2OGJhYTdk
YTQ1NjhhLi4zOTY0NjE5YjRiYzc3NGUxNGQ2MjZiYWRiMDY3MTU4MDVjZGNlOTI5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTU2NhbGUuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL3RyYW5zZm9ybS9DU1NTY2FsZS5jcHAKQEAg
LTMyLDYgKzMyLDggQEAKIAogI2lmIEVOQUJMRShDU1NfVFlQRURfT00pCiAKKyNpbmNsdWRlICJD
U1NVbml0VmFsdWUuaCIKKyNpbmNsdWRlICJDU1NVbml0cy5oIgogI2luY2x1ZGUgIkRPTU1hdHJp
eC5oIgogI2luY2x1ZGUgIkV4Y2VwdGlvbk9yLmgiCiAjaW5jbHVkZSA8d3RmL0lzb01hbGxvY0lu
bGluZXMuaD4KQEAgLTQwLDE4ICs0Miw0NCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFdURl9N
QUtFX0lTT19BTExPQ0FURURfSU1QTChDU1NTY2FsZSk7CiAKLVJlZjxDU1NTY2FsZT4gQ1NTU2Nh
bGU6OmNyZWF0ZShDU1NOdW1iZXJpc2gmJiB4LCBDU1NOdW1iZXJpc2gmJiB5LCBzdGQ6Om9wdGlv
bmFsPENTU051bWJlcmlzaD4mJiB6KQorRXhjZXB0aW9uT3I8UmVmPENTU1NjYWxlPj4gQ1NTU2Nh
bGU6OmNyZWF0ZShDU1NOdW1iZXJpc2ggeCwgQ1NTTnVtYmVyaXNoIHksIHN0ZDo6b3B0aW9uYWw8
Q1NTTnVtYmVyaXNoPiB6KQogewotICAgIHJldHVybiBhZG9wdFJlZigqbmV3IENTU1NjYWxlKFdU
Rk1vdmUoeCksIFdURk1vdmUoeSksIFdURk1vdmUoeikpKTsKKyAgICBhdXRvIHJlY3RpZmllZFgg
PSBDU1NOdW1lcmljVmFsdWU6OnJlY3RpZnlOdW1iZXJpc2goV1RGTW92ZSh4KSk7CisgICAgYXV0
byByZWN0aWZpZWRZID0gQ1NTTnVtZXJpY1ZhbHVlOjpyZWN0aWZ5TnVtYmVyaXNoKFdURk1vdmUo
eSkpOworICAgIGF1dG8gcmVjdGlmaWVkWiA9IHogPyBDU1NOdW1lcmljVmFsdWU6OnJlY3RpZnlO
dW1iZXJpc2goV1RGTW92ZSgqeikpIDogUmVmPENTU051bWVyaWNWYWx1ZT4geyBDU1NVbml0VmFs
dWU6OmNyZWF0ZSgxLjAsIENTU1VuaXRUeXBlOjpDU1NfTlVNQkVSKSB9OworCisgICAgLy8gaHR0
cHM6Ly9kcmFmdHMuY3NzLWhvdWRpbmkub3JnL2Nzcy10eXBlZC1vbS8jZG9tLWNzc3NjYWxlLWNz
c3NjYWxlCisgICAgaWYgKCFyZWN0aWZpZWRYLT50eXBlKCkubWF0Y2hlc051bWJlcigpCisgICAg
ICAgIHx8ICFyZWN0aWZpZWRZLT50eXBlKCkubWF0Y2hlc051bWJlcigpCisgICAgICAgIHx8ICgh
cmVjdGlmaWVkWi0+dHlwZSgpLm1hdGNoZXNOdW1iZXIoKSkpCisgICAgICAgIHJldHVybiBFeGNl
cHRpb24geyBUeXBlRXJyb3IgfTsKKworICAgIHJldHVybiBhZG9wdFJlZigqbmV3IENTU1NjYWxl
KHogPyBJczJEOjpObyA6IElzMkQ6OlllcywgV1RGTW92ZShyZWN0aWZpZWRYKSwgV1RGTW92ZShy
ZWN0aWZpZWRZKSwgV1RGTW92ZShyZWN0aWZpZWRaKSkpOwogfQogCi1DU1NTY2FsZTo6Q1NTU2Nh
bGUoQ1NTTnVtYmVyaXNoJiYgeCwgQ1NTTnVtYmVyaXNoJiYgeSwgc3RkOjpvcHRpb25hbDxDU1NO
dW1iZXJpc2g+JiYgeikKLSAgICA6IG1feChXVEZNb3ZlKHgpKQorQ1NTU2NhbGU6OkNTU1NjYWxl
KENTU1RyYW5zZm9ybUNvbXBvbmVudDo6SXMyRCBpczJELCBSZWY8Q1NTTnVtZXJpY1ZhbHVlPiB4
LCBSZWY8Q1NTTnVtZXJpY1ZhbHVlPiB5LCBSZWY8Q1NTTnVtZXJpY1ZhbHVlPiB6KQorICAgIDog
Q1NTVHJhbnNmb3JtQ29tcG9uZW50KGlzMkQpCisgICAgLCBtX3goV1RGTW92ZSh4KSkKICAgICAs
IG1feShXVEZNb3ZlKHkpKQogICAgICwgbV96KFdURk1vdmUoeikpCiB7CiB9CiAKK3ZvaWQgQ1NT
U2NhbGU6OnNldFgoQ1NTTnVtYmVyaXNoIHgpCit7CisgICAgbV94ID0gQ1NTTnVtZXJpY1ZhbHVl
OjpyZWN0aWZ5TnVtYmVyaXNoKFdURk1vdmUoeCkpOworfQorCit2b2lkIENTU1NjYWxlOjpzZXRZ
KENTU051bWJlcmlzaCB5KQoreworICAgIG1feSA9IENTU051bWVyaWNWYWx1ZTo6cmVjdGlmeU51
bWJlcmlzaChXVEZNb3ZlKHkpKTsKK30KKwordm9pZCBDU1NTY2FsZTo6c2V0WihDU1NOdW1iZXJp
c2ggeikKK3sKKyAgICBtX3ogPSBDU1NOdW1lcmljVmFsdWU6OnJlY3RpZnlOdW1iZXJpc2goV1RG
TW92ZSh6KSk7Cit9CisKIC8vIEZJWE1FOiBGaXggYWxsIHRoZSBmb2xsb3dpbmcgdmlydHVhbCBm
dW5jdGlvbnMKIAogU3RyaW5nIENTU1NjYWxlOjp0b1N0cmluZygpIGNvbnN0CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTU2NhbGUuaCBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy90eXBlZG9tL3RyYW5zZm9ybS9DU1NTY2FsZS5oCmluZGV4IGYwMGY2MGQ0
MWY0YWM1NmJlZDU5YzI2NzE5MzY2ZjE5MGI4MWI2NDUuLjkzZjZiY2NhZDZkMDM1ZmYzN2E0OGU0
NDVlZmIzNDIyYWUwYzQzYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9t
L3RyYW5zZm9ybS9DU1NTY2FsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL3Ry
YW5zZm9ybS9DU1NTY2FsZS5oCkBAIC0zNywyNyArMzcsMjcgQEAgdGVtcGxhdGU8dHlwZW5hbWU+
IGNsYXNzIEV4Y2VwdGlvbk9yOwogY2xhc3MgQ1NTU2NhbGUgOiBwdWJsaWMgQ1NTVHJhbnNmb3Jt
Q29tcG9uZW50IHsKICAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKENTU1NjYWxlKTsKIHB1Ymxp
YzoKLSAgICBzdGF0aWMgUmVmPENTU1NjYWxlPiBjcmVhdGUoQ1NTTnVtYmVyaXNoJiYgeCwgQ1NT
TnVtYmVyaXNoJiYgeSwgc3RkOjpvcHRpb25hbDxDU1NOdW1iZXJpc2g+JiYgeik7CisgICAgc3Rh
dGljIEV4Y2VwdGlvbk9yPFJlZjxDU1NTY2FsZT4+IGNyZWF0ZShDU1NOdW1iZXJpc2ggeCwgQ1NT
TnVtYmVyaXNoIHksIHN0ZDo6b3B0aW9uYWw8Q1NTTnVtYmVyaXNoPiB6KTsKIAogICAgIFN0cmlu
ZyB0b1N0cmluZygpIGNvbnN0IGZpbmFsOwogICAgIEV4Y2VwdGlvbk9yPFJlZjxET01NYXRyaXg+
PiB0b01hdHJpeCgpIGZpbmFsOwotICAgIAotICAgIENTU051bWJlcmlzaCB4KCkgeyByZXR1cm4g
bV94OyB9Ci0gICAgQ1NTTnVtYmVyaXNoIHkoKSB7IHJldHVybiBtX3k7IH0KLSAgICBDU1NOdW1i
ZXJpc2ggeigpIHsgcmV0dXJuIG1feiA/ICptX3ogOiAwLjA7IH0KIAotICAgIHZvaWQgc2V0WChD
U1NOdW1iZXJpc2gmJiB4KSB7IG1feCA9IFdURk1vdmUoeCk7IH0KLSAgICB2b2lkIHNldFkoQ1NT
TnVtYmVyaXNoJiYgeSkgeyBtX3kgPSBXVEZNb3ZlKHkpOyB9Ci0gICAgdm9pZCBzZXRaKENTU051
bWJlcmlzaCYmIHopIHsgbV96ID0gV1RGTW92ZSh6KTsgfQorICAgIENTU051bWJlcmlzaCB4KCkg
Y29uc3QgeyByZXR1cm4gbV94LnB0cigpOyB9CisgICAgQ1NTTnVtYmVyaXNoIHkoKSBjb25zdCB7
IHJldHVybiBtX3kucHRyKCk7IH0KKyAgICBDU1NOdW1iZXJpc2ggeigpIGNvbnN0IHsgcmV0dXJu
IG1fei5wdHIoKTsgfQorCisgICAgdm9pZCBzZXRYKENTU051bWJlcmlzaCk7CisgICAgdm9pZCBz
ZXRZKENTU051bWJlcmlzaCk7CisgICAgdm9pZCBzZXRaKENTU051bWJlcmlzaCk7CiAKICAgICBD
U1NUcmFuc2Zvcm1UeXBlIGdldFR5cGUoKSBjb25zdCBmaW5hbCB7IHJldHVybiBDU1NUcmFuc2Zv
cm1UeXBlOjpTY2FsZTsgfQogCiBwcml2YXRlOgotICAgIENTU1NjYWxlKENTU051bWJlcmlzaCYm
IHgsIENTU051bWJlcmlzaCYmIHksIHN0ZDo6b3B0aW9uYWw8Q1NTTnVtYmVyaXNoPiYmIHopOwot
ICAgIAotICAgIENTU051bWJlcmlzaCBtX3g7Ci0gICAgQ1NTTnVtYmVyaXNoIG1feTsKLSAgICBz
dGQ6Om9wdGlvbmFsPENTU051bWJlcmlzaD4gbV96OworICAgIENTU1NjYWxlKENTU1RyYW5zZm9y
bUNvbXBvbmVudDo6SXMyRCwgUmVmPENTU051bWVyaWNWYWx1ZT4sIFJlZjxDU1NOdW1lcmljVmFs
dWU+LCBSZWY8Q1NTTnVtZXJpY1ZhbHVlPik7CisKKyAgICBSZWY8Q1NTTnVtZXJpY1ZhbHVlPiBt
X3g7CisgICAgUmVmPENTU051bWVyaWNWYWx1ZT4gbV95OworICAgIFJlZjxDU1NOdW1lcmljVmFs
dWU+IG1fejsKIH07CiAgICAgCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTU2tldy5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTU2tldy5jcHAKaW5kZXggMjkxZWE0YTMz
YTY0NWNjY2EwYTQ0MThlNWE5OGM4ZjBjMTUyZmFmNS4uNzZhYTc1MzAzM2VmYWMwNDMwODMwNWZk
ODBiMGM0ZTU2OGVkOWM3ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL3R5cGVkb20v
dHJhbnNmb3JtL0NTU1NrZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL3Ry
YW5zZm9ybS9DU1NTa2V3LmNwcApAQCAtNDAsMTMgKzQwLDE3IEBAIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAogV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9JTVBMKENTU1NrZXcpOwogCi1SZWY8Q1NTU2tl
dz4gQ1NTU2tldzo6Y3JlYXRlKFJlZjxDU1NOdW1lcmljVmFsdWU+JiYgYXgsIFJlZjxDU1NOdW1l
cmljVmFsdWU+JiYgYXkpCitFeGNlcHRpb25PcjxSZWY8Q1NTU2tldz4+IENTU1NrZXc6OmNyZWF0
ZShSZWY8Q1NTTnVtZXJpY1ZhbHVlPiBheCwgUmVmPENTU051bWVyaWNWYWx1ZT4gYXkpCiB7Cisg
ICAgaWYgKCFheC0+dHlwZSgpLm1hdGNoZXM8Q1NTTnVtZXJpY0Jhc2VUeXBlOjpBbmdsZT4oKQor
ICAgICAgICB8fCAhYXktPnR5cGUoKS5tYXRjaGVzPENTU051bWVyaWNCYXNlVHlwZTo6QW5nbGU+
KCkpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBUeXBlRXJyb3IgfTsKICAgICByZXR1cm4g
YWRvcHRSZWYoKm5ldyBDU1NTa2V3KFdURk1vdmUoYXgpLCBXVEZNb3ZlKGF5KSkpOwogfQogCi1D
U1NTa2V3OjpDU1NTa2V3KFJlZjxDU1NOdW1lcmljVmFsdWU+JiYgYXgsIFJlZjxDU1NOdW1lcmlj
VmFsdWU+JiYgYXkpCi0gICAgOiBtX2F4KFdURk1vdmUoYXgpKQorQ1NTU2tldzo6Q1NTU2tldyhS
ZWY8Q1NTTnVtZXJpY1ZhbHVlPiBheCwgUmVmPENTU051bWVyaWNWYWx1ZT4gYXkpCisgICAgOiBD
U1NUcmFuc2Zvcm1Db21wb25lbnQoSXMyRDo6WWVzKQorICAgICwgbV9heChXVEZNb3ZlKGF4KSkK
ICAgICAsIG1fYXkoV1RGTW92ZShheSkpCiB7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTU2tldy5oIGIvU291cmNlL1dlYkNvcmUvY3NzL3R5
cGVkb20vdHJhbnNmb3JtL0NTU1NrZXcuaAppbmRleCBmYTA1YTc0NmE3YjZkNGNkOWI3YTNiY2Mw
YTk4NjgzZTU2ZmU0Zjg1Li45MmNkYjYzYWM2ODg4ZjVkZmVlMmM1ZjYwMTFlNmE4Y2VlZGZjM2M1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTU2tl
dy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL3RyYW5zZm9ybS9DU1NTa2V3LmgK
QEAgLTM3LDEzICszNywxMyBAQCB0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7
CiBjbGFzcyBDU1NTa2V3IDogcHVibGljIENTU1RyYW5zZm9ybUNvbXBvbmVudCB7CiAgICAgV1RG
X01BS0VfSVNPX0FMTE9DQVRFRChDU1NTa2V3KTsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUmVmPENT
U1NrZXc+IGNyZWF0ZShSZWY8Q1NTTnVtZXJpY1ZhbHVlPiYmLCBSZWY8Q1NTTnVtZXJpY1ZhbHVl
PiYmKTsKKyAgICBzdGF0aWMgRXhjZXB0aW9uT3I8UmVmPENTU1NrZXc+PiBjcmVhdGUoUmVmPENT
U051bWVyaWNWYWx1ZT4sIFJlZjxDU1NOdW1lcmljVmFsdWU+KTsKICAgICAKLSAgICBDU1NOdW1l
cmljVmFsdWUmIGF4KCkgeyByZXR1cm4gbV9heC5nZXQoKTsgfQotICAgIENTU051bWVyaWNWYWx1
ZSYgYXkoKSB7IHJldHVybiBtX2F5LmdldCgpOyB9CisgICAgY29uc3QgQ1NTTnVtZXJpY1ZhbHVl
JiBheCgpIGNvbnN0IHsgcmV0dXJuIG1fYXguZ2V0KCk7IH0KKyAgICBjb25zdCBDU1NOdW1lcmlj
VmFsdWUmIGF5KCkgY29uc3QgeyByZXR1cm4gbV9heS5nZXQoKTsgfQogICAgIAotICAgIHZvaWQg
c2V0QXgoUmVmPENTU051bWVyaWNWYWx1ZT4mJiBheCkgeyBtX2F4ID0gV1RGTW92ZShheCk7IH0K
LSAgICB2b2lkIHNldEF5KFJlZjxDU1NOdW1lcmljVmFsdWU+JiYgYXkpIHsgbV9heSA9IFdURk1v
dmUoYXkpOyB9CisgICAgdm9pZCBzZXRBeChSZWY8Q1NTTnVtZXJpY1ZhbHVlPiBheCkgeyBtX2F4
ID0gV1RGTW92ZShheCk7IH0KKyAgICB2b2lkIHNldEF5KFJlZjxDU1NOdW1lcmljVmFsdWU+IGF5
KSB7IG1fYXkgPSBXVEZNb3ZlKGF5KTsgfQogICAgIAogICAgIFN0cmluZyB0b1N0cmluZygpIGNv
bnN0IGZpbmFsOwogICAgIEV4Y2VwdGlvbk9yPFJlZjxET01NYXRyaXg+PiB0b01hdHJpeCgpIGZp
bmFsOwpAQCAtNTEsNyArNTEsNyBAQCBwdWJsaWM6CiAgICAgQ1NTVHJhbnNmb3JtVHlwZSBnZXRU
eXBlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gQ1NTVHJhbnNmb3JtVHlwZTo6U2tldzsgfQogCiBw
cml2YXRlOgotICAgIENTU1NrZXcoUmVmPENTU051bWVyaWNWYWx1ZT4mJiBheCwgUmVmPENTU051
bWVyaWNWYWx1ZT4mJiBheSk7CisgICAgQ1NTU2tldyhSZWY8Q1NTTnVtZXJpY1ZhbHVlPiBheCwg
UmVmPENTU051bWVyaWNWYWx1ZT4gYXkpOwogICAgIAogICAgIFJlZjxDU1NOdW1lcmljVmFsdWU+
IG1fYXg7CiAgICAgUmVmPENTU051bWVyaWNWYWx1ZT4gbV9heTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy90eXBlZG9tL3RyYW5zZm9ybS9DU1NTa2V3WC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTU2tld1guY3BwCmluZGV4IGVmZjNlM2RjOTM3
OGNiZTIzNmM0OTFjYTM5NjczZjVmZTFmNWU4ZjQuLjVhN2Y1NGYxOTEzY2UyMTY4MDVlY2VmODg3
NTYxZTAyYTA3MjM5M2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL3Ry
YW5zZm9ybS9DU1NTa2V3WC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL3R5cGVkb20vdHJh
bnNmb3JtL0NTU1NrZXdYLmNwcApAQCAtNDAsMTMgKzQwLDE2IEBAIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAogV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9JTVBMKENTU1NrZXdYKTsKIAotUmVmPENTU1Nr
ZXdYPiBDU1NTa2V3WDo6Y3JlYXRlKFJlZjxDU1NOdW1lcmljVmFsdWU+JiYgYXgpCitFeGNlcHRp
b25PcjxSZWY8Q1NTU2tld1g+PiBDU1NTa2V3WDo6Y3JlYXRlKFJlZjxDU1NOdW1lcmljVmFsdWU+
IGF4KQogeworICAgIGlmICghYXgtPnR5cGUoKS5tYXRjaGVzPENTU051bWVyaWNCYXNlVHlwZTo6
QW5nbGU+KCkpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBUeXBlRXJyb3IgfTsKICAgICBy
ZXR1cm4gYWRvcHRSZWYoKm5ldyBDU1NTa2V3WChXVEZNb3ZlKGF4KSkpOwogfQogCi1DU1NTa2V3
WDo6Q1NTU2tld1goUmVmPENTU051bWVyaWNWYWx1ZT4mJiBheCkKLSAgICA6IG1fYXgoV1RGTW92
ZShheCkpCitDU1NTa2V3WDo6Q1NTU2tld1goUmVmPENTU051bWVyaWNWYWx1ZT4gYXgpCisgICAg
OiBDU1NUcmFuc2Zvcm1Db21wb25lbnQoSXMyRDo6WWVzKQorICAgICwgbV9heChXVEZNb3ZlKGF4
KSkKIHsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL3R5cGVkb20vdHJhbnNm
b3JtL0NTU1NrZXdYLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NT
U2tld1guaAppbmRleCA0NjcwZmIxOGJjNTQ4ZjI5Njg5ZTU1N2UxZmYyNzU2MmY3NzBkMjQ2Li5i
ODExODU2NTllMzMxNjE1ZWY1N2Q2MDE0OTRiODAwODlkMDVlMGI0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTU2tld1guaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTU2tld1guaApAQCAtMzcsMTAgKzM3LDEw
IEBAIHRlbXBsYXRlPHR5cGVuYW1lPiBjbGFzcyBFeGNlcHRpb25PcjsKIGNsYXNzIENTU1NrZXdY
IDogcHVibGljIENTU1RyYW5zZm9ybUNvbXBvbmVudCB7CiAgICAgV1RGX01BS0VfSVNPX0FMTE9D
QVRFRChDU1NTa2V3WCk7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFJlZjxDU1NTa2V3WD4gY3JlYXRl
KFJlZjxDU1NOdW1lcmljVmFsdWU+JiYgYXgpOworICAgIHN0YXRpYyBFeGNlcHRpb25PcjxSZWY8
Q1NTU2tld1g+PiBjcmVhdGUoUmVmPENTU051bWVyaWNWYWx1ZT4pOwogICAgIAotICAgIENTU051
bWVyaWNWYWx1ZSYgYXgoKSB7IHJldHVybiBtX2F4LmdldCgpOyB9Ci0gICAgdm9pZCBzZXRBeChS
ZWY8Q1NTTnVtZXJpY1ZhbHVlPiYmIGF4KSB7IG1fYXggPSBXVEZNb3ZlKGF4KTsgfQorICAgIGNv
bnN0IENTU051bWVyaWNWYWx1ZSYgYXgoKSBjb25zdCB7IHJldHVybiBtX2F4LmdldCgpOyB9Cisg
ICAgdm9pZCBzZXRBeChSZWY8Q1NTTnVtZXJpY1ZhbHVlPiBheCkgeyBtX2F4ID0gV1RGTW92ZShh
eCk7IH0KICAgICAKICAgICBTdHJpbmcgdG9TdHJpbmcoKSBjb25zdCBmaW5hbDsKICAgICBFeGNl
cHRpb25PcjxSZWY8RE9NTWF0cml4Pj4gdG9NYXRyaXgoKSBmaW5hbDsKQEAgLTQ4LDcgKzQ4LDcg
QEAgcHVibGljOgogICAgIENTU1RyYW5zZm9ybVR5cGUgZ2V0VHlwZSgpIGNvbnN0IGZpbmFsIHsg
cmV0dXJuIENTU1RyYW5zZm9ybVR5cGU6OlNrZXdYOyB9CiAKIHByaXZhdGU6Ci0gICAgQ1NTU2tl
d1goUmVmPENTU051bWVyaWNWYWx1ZT4mJiBheCk7CisgICAgQ1NTU2tld1goUmVmPENTU051bWVy
aWNWYWx1ZT4gYXgpOwogICAgIAogICAgIFJlZjxDU1NOdW1lcmljVmFsdWU+IG1fYXg7CiB9Owpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL3R5cGVkb20vdHJhbnNmb3JtL0NTU1NrZXdZ
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL3RyYW5zZm9ybS9DU1NTa2V3WS5jcHAK
aW5kZXggNzVkMWJmMjNmNWE5ZWU5YTVhMTljYmE1ODMyYWQyZjY3NjY3YjU5MS4uNDY3N2JiZGJm
MjQwZjE0ZDc0Y2VlYmQ1ZWU5NmM5NWVmMTJkNTI0ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvY3NzL3R5cGVkb20vdHJhbnNmb3JtL0NTU1NrZXdZLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTU2tld1kuY3BwCkBAIC00MCwxMyArNDAsMTYgQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogCiBXVEZfTUFLRV9JU09fQUxMT0NBVEVEX0lNUEwoQ1NTU2tl
d1kpOwogCi1SZWY8Q1NTU2tld1k+IENTU1NrZXdZOjpjcmVhdGUoUmVmPENTU051bWVyaWNWYWx1
ZT4mJiBheSkKK0V4Y2VwdGlvbk9yPFJlZjxDU1NTa2V3WT4+IENTU1NrZXdZOjpjcmVhdGUoUmVm
PENTU051bWVyaWNWYWx1ZT4gYXkpCiB7CisgICAgaWYgKCFheS0+dHlwZSgpLm1hdGNoZXM8Q1NT
TnVtZXJpY0Jhc2VUeXBlOjpBbmdsZT4oKSkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IFR5
cGVFcnJvciB9OwogICAgIHJldHVybiBhZG9wdFJlZigqbmV3IENTU1NrZXdZKFdURk1vdmUoYXkp
KSk7CiB9CiAKLUNTU1NrZXdZOjpDU1NTa2V3WShSZWY8Q1NTTnVtZXJpY1ZhbHVlPiYmIGF5KQot
ICAgIDogbV9heShXVEZNb3ZlKGF5KSkKK0NTU1NrZXdZOjpDU1NTa2V3WShSZWY8Q1NTTnVtZXJp
Y1ZhbHVlPiBheSkKKyAgICA6IENTU1RyYW5zZm9ybUNvbXBvbmVudChJczJEOjpZZXMpCisgICAg
LCBtX2F5KFdURk1vdmUoYXkpKQogewogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTU2tld1kuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBl
ZG9tL3RyYW5zZm9ybS9DU1NTa2V3WS5oCmluZGV4IDJhY2Y1MGE5NTNkYTc3YWQ4ZDU2NGQwYzBm
Mzg4Y2FjNGJlZTNlZjEuLjY0NzZiMzhmZmUzNzgwNjJjYjRmMmZiNzA5Y2E1M2VlMDMxZjk2MGIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL3RyYW5zZm9ybS9DU1NTa2V3
WS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL3RyYW5zZm9ybS9DU1NTa2V3WS5o
CkBAIC0zNywxMCArMzcsMTAgQEAgdGVtcGxhdGU8dHlwZW5hbWU+IGNsYXNzIEV4Y2VwdGlvbk9y
OwogY2xhc3MgQ1NTU2tld1kgOiBwdWJsaWMgQ1NTVHJhbnNmb3JtQ29tcG9uZW50IHsKICAgICBX
VEZfTUFLRV9JU09fQUxMT0NBVEVEKENTU1NrZXdZKTsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUmVm
PENTU1NrZXdZPiBjcmVhdGUoUmVmPENTU051bWVyaWNWYWx1ZT4mJik7CisgICAgc3RhdGljIEV4
Y2VwdGlvbk9yPFJlZjxDU1NTa2V3WT4+IGNyZWF0ZShSZWY8Q1NTTnVtZXJpY1ZhbHVlPik7CiAg
ICAgCi0gICAgQ1NTTnVtZXJpY1ZhbHVlJiBheSgpIHsgcmV0dXJuIG1fYXkuZ2V0KCk7IH0KLSAg
ICB2b2lkIHNldEF5KFJlZjxDU1NOdW1lcmljVmFsdWU+JiYgYXkpIHsgbV9heSA9IFdURk1vdmUo
YXkpOyB9CisgICAgY29uc3QgQ1NTTnVtZXJpY1ZhbHVlJiBheSgpIGNvbnN0IHsgcmV0dXJuIG1f
YXkuZ2V0KCk7IH0KKyAgICB2b2lkIHNldEF5KFJlZjxDU1NOdW1lcmljVmFsdWU+IGF5KSB7IG1f
YXkgPSBXVEZNb3ZlKGF5KTsgfQogICAgIAogICAgIFN0cmluZyB0b1N0cmluZygpIGNvbnN0IGZp
bmFsOwogICAgIEV4Y2VwdGlvbk9yPFJlZjxET01NYXRyaXg+PiB0b01hdHJpeCgpIGZpbmFsOwpA
QCAtNDgsNyArNDgsNyBAQCBwdWJsaWM6CiAgICAgQ1NTVHJhbnNmb3JtVHlwZSBnZXRUeXBlKCkg
Y29uc3QgZmluYWwgeyByZXR1cm4gQ1NTVHJhbnNmb3JtVHlwZTo6U2tld1k7IH0KIAogcHJpdmF0
ZToKLSAgICBDU1NTa2V3WShSZWY8Q1NTTnVtZXJpY1ZhbHVlPiYmIGF5KTsKKyAgICBDU1NTa2V3
WShSZWY8Q1NTTnVtZXJpY1ZhbHVlPiBheSk7CiAgICAgCiAgICAgUmVmPENTU051bWVyaWNWYWx1
ZT4gbV9heTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFu
c2Zvcm0vQ1NTVHJhbnNmb3JtQ29tcG9uZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBl
ZG9tL3RyYW5zZm9ybS9DU1NUcmFuc2Zvcm1Db21wb25lbnQuY3BwCmluZGV4IGRlZmJjNzIyMWIz
ZWJhNThiMGM3MzRlZWRkODlhMDA3NDg0MmY5NjYuLjljMmQwNzJhMjFhYWRmZWNmZjllN2MzMmRl
NzNjNWM1YmViZWI1NTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL3Ry
YW5zZm9ybS9DU1NUcmFuc2Zvcm1Db21wb25lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy90eXBlZG9tL3RyYW5zZm9ybS9DU1NUcmFuc2Zvcm1Db21wb25lbnQuY3BwCkBAIC0zOCwyMCAr
MzgsMTIgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1XVEZfTUFLRV9JU09fQUxMT0NBVEVE
X0lNUEwoQ1NTVHJhbnNmb3JtQ29tcG9uZW50KTsKLQotLy8gRklYTUU6IEZpeCBhbGwgdGhlIGZv
bGxvd2luZyB2aXJ0dWFsIGZ1bmN0aW9ucwotCiBTdHJpbmcgQ1NTVHJhbnNmb3JtQ29tcG9uZW50
Ojp0b1N0cmluZygpIGNvbnN0CiB7CisgICAgLy8gRklYTUU6IGltcGxlbWVudC4KICAgICByZXR1
cm4gZW1wdHlTdHJpbmcoKTsKIH0KIAotRXhjZXB0aW9uT3I8UmVmPERPTU1hdHJpeD4+IENTU1Ry
YW5zZm9ybUNvbXBvbmVudDo6dG9NYXRyaXgoKQotewotICAgIHJldHVybiBET01NYXRyaXg6OmZy
b21NYXRyaXgoRE9NTWF0cml4SW5pdCB7IH0pOwotfQotCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL3R5cGVkb20vdHJhbnNm
b3JtL0NTU1RyYW5zZm9ybUNvbXBvbmVudC5oIGIvU291cmNlL1dlYkNvcmUvY3NzL3R5cGVkb20v
dHJhbnNmb3JtL0NTU1RyYW5zZm9ybUNvbXBvbmVudC5oCmluZGV4IDQ4NjE3ZGY3NjhmNTk4ZmIz
YjFiZjcwMWYxMjdjYjM3NGNhYWE1NGQuLjBmNDdlM2UyZWFjYmFjNDdjOWU0MWJhZmNkZmJjZmE5
OTViM2U2N2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL3RyYW5zZm9y
bS9DU1NUcmFuc2Zvcm1Db21wb25lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRv
bS90cmFuc2Zvcm0vQ1NTVHJhbnNmb3JtQ29tcG9uZW50LmgKQEAgLTM0LDcgKzM0LDYgQEAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAogZW51bSBjbGFzcyBDU1NUcmFuc2Zvcm1UeXBlIDogdWludDhf
dCB7Ci0gICAgVHJhbnNmb3JtLAogICAgIE1hdHJpeENvbXBvbmVudCwKICAgICBQZXJzcGVjdGl2
ZSwKICAgICBSb3RhdGUsCkBAIC00OSwxNyArNDgsMjAgQEAgY2xhc3MgRE9NTWF0cml4OwogdGVt
cGxhdGU8dHlwZW5hbWU+IGNsYXNzIEV4Y2VwdGlvbk9yOwogCiBjbGFzcyBDU1NUcmFuc2Zvcm1D
b21wb25lbnQgOiBwdWJsaWMgUmVmQ291bnRlZDxDU1NUcmFuc2Zvcm1Db21wb25lbnQ+IHsKLSAg
ICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKENTU1RyYW5zZm9ybUNvbXBvbmVudCk7Citwcm90ZWN0
ZWQ6CisgICAgZW51bSBjbGFzcyBJczJEIDogYm9vbCB7IE5vLCBZZXMgfTsKKyAgICBDU1NUcmFu
c2Zvcm1Db21wb25lbnQoSXMyRCBpczJEKQorICAgICAgICA6IG1faXMyRChpczJEKSB7IH0KIHB1
YmxpYzoKICAgICB2aXJ0dWFsIFN0cmluZyB0b1N0cmluZygpIGNvbnN0OwotICAgIGJvb2wgaXMy
RCgpIGNvbnN0IHsgcmV0dXJuIG1faXMyRDsgfQotICAgIHZvaWQgc2V0SXMyRChib29sIGlzMkQp
IHsgbV9pczJEID0gaXMyRDsgfQotICAgIHZpcnR1YWwgRXhjZXB0aW9uT3I8UmVmPERPTU1hdHJp
eD4+IHRvTWF0cml4KCk7CisgICAgYm9vbCBpczJEKCkgY29uc3QgeyByZXR1cm4gbV9pczJEID09
IElzMkQ6OlllczsgfQorICAgIHZpcnR1YWwgdm9pZCBzZXRJczJEKGJvb2wgaXMyRCkgeyBtX2lz
MkQgPSBpczJEID8gSXMyRDo6WWVzIDogSXMyRDo6Tm87IH0KKyAgICB2aXJ0dWFsIEV4Y2VwdGlv
bk9yPFJlZjxET01NYXRyaXg+PiB0b01hdHJpeCgpID0gMDsKICAgICB2aXJ0dWFsIH5DU1NUcmFu
c2Zvcm1Db21wb25lbnQoKSA9IGRlZmF1bHQ7Ci0gICAgdmlydHVhbCBDU1NUcmFuc2Zvcm1UeXBl
IGdldFR5cGUoKSBjb25zdCB7IHJldHVybiBDU1NUcmFuc2Zvcm1UeXBlOjpUcmFuc2Zvcm07IH0K
KyAgICB2aXJ0dWFsIENTU1RyYW5zZm9ybVR5cGUgZ2V0VHlwZSgpIGNvbnN0ID0gMDsKIAogcHJp
dmF0ZToKLSAgICBib29sIG1faXMyRCB7IGZhbHNlIH07CisgICAgSXMyRCBtX2lzMkQ7CiB9Owog
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
dHlwZWRvbS90cmFuc2Zvcm0vQ1NTVHJhbnNmb3JtVmFsdWUuY3BwIGIvU291cmNlL1dlYkNvcmUv
Y3NzL3R5cGVkb20vdHJhbnNmb3JtL0NTU1RyYW5zZm9ybVZhbHVlLmNwcAppbmRleCAwYmRiM2Ji
Y2ZjYzNlY2YxNDZhYmNlMmZiYzBiNWMzMTg4YTgyZDcwLi5hNmNmZjIzNmVlNjVhZTFjNDc4YTlm
ZDExNzI0N2YzNDMxM2QwYTkwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRv
bS90cmFuc2Zvcm0vQ1NTVHJhbnNmb3JtVmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy90eXBlZG9tL3RyYW5zZm9ybS9DU1NUcmFuc2Zvcm1WYWx1ZS5jcHAKQEAgLTM1LDYgKzM1LDcg
QEAKICNpbmNsdWRlICJDU1NUcmFuc2Zvcm1Db21wb25lbnQuaCIKICNpbmNsdWRlICJET01NYXRy
aXguaCIKICNpbmNsdWRlICJFeGNlcHRpb25Pci5oIgorI2luY2x1ZGUgPHd0Zi9BbGdvcml0aG1z
Lmg+CiAjaW5jbHVkZSA8d3RmL0lzb01hbGxvY0lubGluZXMuaD4KICNpbmNsdWRlIDx3dGYvdGV4
dC9XVEZTdHJpbmcuaD4KIApAQCAtNDIsOCArNDMsMTEgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
CiBXVEZfTUFLRV9JU09fQUxMT0NBVEVEX0lNUEwoQ1NTVHJhbnNmb3JtVmFsdWUpOwogCi1SZWY8
Q1NTVHJhbnNmb3JtVmFsdWU+IENTU1RyYW5zZm9ybVZhbHVlOjpjcmVhdGUoVmVjdG9yPFJlZlB0
cjxDU1NUcmFuc2Zvcm1Db21wb25lbnQ+PiYmIHRyYW5zZm9ybXMpCitFeGNlcHRpb25PcjxSZWY8
Q1NTVHJhbnNmb3JtVmFsdWU+PiBDU1NUcmFuc2Zvcm1WYWx1ZTo6Y3JlYXRlKFZlY3RvcjxSZWZQ
dHI8Q1NTVHJhbnNmb3JtQ29tcG9uZW50Pj4mJiB0cmFuc2Zvcm1zKQogeworICAgIC8vIGh0dHBz
Oi8vZHJhZnRzLmNzcy1ob3VkaW5pLm9yZy9jc3MtdHlwZWQtb20vI2RvbS1jc3N0cmFuc2Zvcm12
YWx1ZS1jc3N0cmFuc2Zvcm12YWx1ZQorICAgIGlmICh0cmFuc2Zvcm1zLmlzRW1wdHkoKSkKKyAg
ICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IFR5cGVFcnJvciB9OwogICAgIHJldHVybiBhZG9wdFJl
ZigqbmV3IENTU1RyYW5zZm9ybVZhbHVlKFdURk1vdmUodHJhbnNmb3JtcykpKTsKIH0KIApAQCAt
NTcsMjIgKzYxLDIzIEBAIEV4Y2VwdGlvbk9yPFJlZlB0cjxDU1NUcmFuc2Zvcm1Db21wb25lbnQ+
PiBDU1NUcmFuc2Zvcm1WYWx1ZTo6aXRlbShzaXplX3QgaW5kZXgpCiAKIEV4Y2VwdGlvbk9yPFJl
ZlB0cjxDU1NUcmFuc2Zvcm1Db21wb25lbnQ+PiBDU1NUcmFuc2Zvcm1WYWx1ZTo6c2V0SXRlbShz
aXplX3QgaW5kZXgsIFJlZjxDU1NUcmFuc2Zvcm1Db21wb25lbnQ+JiYgdmFsdWUpCiB7Ci0gICAg
aWYgKGluZGV4ID49IG1fY29tcG9uZW50cy5zaXplKCkpCisgICAgaWYgKGluZGV4ID4gbV9jb21w
b25lbnRzLnNpemUoKSkKICAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IFJhbmdlRXJyb3IsIG1h
a2VTdHJpbmcoIkluZGV4ICIsIGluZGV4LCAiIGV4Y2VlZHMgdGhlIHJhbmdlIG9mIENTU1RyYW5z
Zm9ybVZhbHVlLiIpIH07Ci0gICAgCi0gICAgbV9jb21wb25lbnRzW2luZGV4XSA9IFdURk1vdmUo
dmFsdWUpOworCisgICAgaWYgKGluZGV4ID09IG1fY29tcG9uZW50cy5zaXplKCkpCisgICAgICAg
IG1fY29tcG9uZW50cy5hcHBlbmQoV1RGTW92ZSh2YWx1ZSkpOworICAgIGVsc2UKKyAgICAgICAg
bV9jb21wb25lbnRzW2luZGV4XSA9IFdURk1vdmUodmFsdWUpOwogCiAgICAgcmV0dXJuIFJlZlB0
cjxDU1NUcmFuc2Zvcm1Db21wb25lbnQ+IHsgbV9jb21wb25lbnRzW2luZGV4XSB9OwogfQogCiBi
b29sIENTU1RyYW5zZm9ybVZhbHVlOjppczJEKCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9pczJE
OwotfQotCi12b2lkIENTU1RyYW5zZm9ybVZhbHVlOjpzZXRJczJEKGJvb2wgaXMyRCkKLXsKLSAg
ICBtX2lzMkQgPSBpczJEOworICAgIC8vIGh0dHBzOi8vZHJhZnRzLmNzcy1ob3VkaW5pLm9yZy9j
c3MtdHlwZWQtb20vI2RvbS1jc3N0cmFuc2Zvcm12YWx1ZS1pczJkCisgICAgcmV0dXJuIFdURjo6
YWxsT2YobV9jb21wb25lbnRzLCBbXSAoYXV0byYgY29tcG9uZW50KSB7CisgICAgICAgIHJldHVy
biBjb21wb25lbnQgJiYgY29tcG9uZW50LT5pczJEKCk7CisgICAgfSk7CiB9CiAKIEV4Y2VwdGlv
bk9yPFJlZjxET01NYXRyaXg+PiBDU1NUcmFuc2Zvcm1WYWx1ZTo6dG9NYXRyaXgoKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL3R5cGVkb20vdHJhbnNmb3JtL0NTU1RyYW5zZm9ybVZh
bHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTVHJhbnNmb3Jt
VmFsdWUuaAppbmRleCBhNWEwZTc4YjBiOWQ5NDI0NzUzZjE0NmE3YzcwOGVjYmJjOWIyM2E3Li41
YTdlYjRhM2JlODQ2YzZhN2Q1NDcwMDdlYjA1YmIyNGE5MTNhYzM0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTVHJhbnNmb3JtVmFsdWUuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTVHJhbnNmb3JtVmFsdWUu
aApAQCAtNDAsMTQgKzQwLDEzIEBAIHRlbXBsYXRlPHR5cGVuYW1lPiBjbGFzcyBFeGNlcHRpb25P
cjsKIGNsYXNzIENTU1RyYW5zZm9ybVZhbHVlIGZpbmFsIDogcHVibGljIENTU1N0eWxlVmFsdWUg
ewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQoQ1NTVHJhbnNmb3JtVmFsdWUpOwogcHVibGlj
OgotICAgIHN0YXRpYyBSZWY8Q1NTVHJhbnNmb3JtVmFsdWU+IGNyZWF0ZShWZWN0b3I8UmVmUHRy
PENTU1RyYW5zZm9ybUNvbXBvbmVudD4+JiYgdHJhbnNmb3Jtcyk7CisgICAgc3RhdGljIEV4Y2Vw
dGlvbk9yPFJlZjxDU1NUcmFuc2Zvcm1WYWx1ZT4+IGNyZWF0ZShWZWN0b3I8UmVmUHRyPENTU1Ry
YW5zZm9ybUNvbXBvbmVudD4+JiYpOwogCiAgICAgc2l6ZV90IGxlbmd0aCgpIGNvbnN0IHsgcmV0
dXJuIG1fY29tcG9uZW50cy5zaXplKCk7IH0KICAgICBFeGNlcHRpb25PcjxSZWZQdHI8Q1NTVHJh
bnNmb3JtQ29tcG9uZW50Pj4gaXRlbShzaXplX3QpOwogICAgIEV4Y2VwdGlvbk9yPFJlZlB0cjxD
U1NUcmFuc2Zvcm1Db21wb25lbnQ+PiBzZXRJdGVtKHNpemVfdCwgUmVmPENTU1RyYW5zZm9ybUNv
bXBvbmVudD4mJik7CiAgICAgCiAgICAgYm9vbCBpczJEKCkgY29uc3Q7Ci0gICAgdm9pZCBzZXRJ
czJEKGJvb2wpOwogICAgIAogICAgIEV4Y2VwdGlvbk9yPFJlZjxET01NYXRyaXg+PiB0b01hdHJp
eCgpOwogICAgIApAQCAtNTUsNyArNTQsNiBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAgIENTU1Ry
YW5zZm9ybVZhbHVlKFZlY3RvcjxSZWZQdHI8Q1NTVHJhbnNmb3JtQ29tcG9uZW50Pj4mJik7CiAK
LSAgICBib29sIG1faXMyRCB7IGZhbHNlIH07CiAgICAgVmVjdG9yPFJlZlB0cjxDU1NUcmFuc2Zv
cm1Db21wb25lbnQ+PiBtX2NvbXBvbmVudHM7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0vQ1NTVHJhbnNsYXRlLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy90eXBlZG9tL3RyYW5zZm9ybS9DU1NUcmFuc2xhdGUuY3BwCmluZGV4IDNmOTc2NzI2
NDQ5ODU5OTI4OTc2M2VmMTFjYzc5NzhlYWQ3OGNjNmYuLjBlZmNiMWUxZWE5MmQyN2I2N2Q3YzQy
YmNiOWQ4NjAwZTQyMzE5ZWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9t
L3RyYW5zZm9ybS9DU1NUcmFuc2xhdGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBl
ZG9tL3RyYW5zZm9ybS9DU1NUcmFuc2xhdGUuY3BwCkBAIC0zMyw2ICszMyw4IEBACiAjaWYgRU5B
QkxFKENTU19UWVBFRF9PTSkKIAogI2luY2x1ZGUgIkNTU051bWVyaWNWYWx1ZS5oIgorI2luY2x1
ZGUgIkNTU1VuaXRWYWx1ZS5oIgorI2luY2x1ZGUgIkNTU1VuaXRzLmgiCiAjaW5jbHVkZSAiRE9N
TWF0cml4LmgiCiAjaW5jbHVkZSAiRXhjZXB0aW9uT3IuaCIKICNpbmNsdWRlIDx3dGYvSXNvTWFs
bG9jSW5saW5lcy5oPgpAQCAtNDEsMTMgKzQzLDIzIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAog
V1RGX01BS0VfSVNPX0FMTE9DQVRFRF9JTVBMKENTU1RyYW5zbGF0ZSk7CiAKLVJlZjxDU1NUcmFu
c2xhdGU+IENTU1RyYW5zbGF0ZTo6Y3JlYXRlKFJlZjxDU1NOdW1lcmljVmFsdWU+JiYgeCwgUmVm
PENTU051bWVyaWNWYWx1ZT4mJiB5LCBSZWZQdHI8Q1NTTnVtZXJpY1ZhbHVlPiYmIHopCitFeGNl
cHRpb25PcjxSZWY8Q1NTVHJhbnNsYXRlPj4gQ1NTVHJhbnNsYXRlOjpjcmVhdGUoUmVmPENTU051
bWVyaWNWYWx1ZT4geCwgUmVmPENTU051bWVyaWNWYWx1ZT4geSwgUmVmUHRyPENTU051bWVyaWNW
YWx1ZT4geikKIHsKLSAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBDU1NUcmFuc2xhdGUoV1RGTW92
ZSh4KSwgV1RGTW92ZSh5KSwgV1RGTW92ZSh6KSkpOworICAgIGF1dG8gaXMyRCA9IHogPyBDU1NU
cmFuc2Zvcm1Db21wb25lbnQ6OklzMkQ6Ok5vIDogQ1NTVHJhbnNmb3JtQ29tcG9uZW50OjpJczJE
OjpZZXM7CisgICAgaWYgKCF6KQorICAgICAgICB6ID0gQ1NTVW5pdFZhbHVlOjpjcmVhdGUoMC4w
LCBDU1NVbml0VHlwZTo6Q1NTX1BYKTsKKworICAgIGlmICgheC0+dHlwZSgpLm1hdGNoZXNUeXBl
T3JQZXJjZW50YWdlPENTU051bWVyaWNCYXNlVHlwZTo6TGVuZ3RoPigpCisgICAgICAgIHx8ICF5
LT50eXBlKCkubWF0Y2hlc1R5cGVPclBlcmNlbnRhZ2U8Q1NTTnVtZXJpY0Jhc2VUeXBlOjpMZW5n
dGg+KCkKKyAgICAgICAgfHwgIXotPnR5cGUoKS5tYXRjaGVzVHlwZU9yUGVyY2VudGFnZTxDU1NO
dW1lcmljQmFzZVR5cGU6Okxlbmd0aD4oKSkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IFR5
cGVFcnJvciB9OworCisgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgQ1NTVHJhbnNsYXRlKGlzMkQs
IFdURk1vdmUoeCksIFdURk1vdmUoeSksIHoucmVsZWFzZU5vbk51bGwoKSkpOwogfQogCi1DU1NU
cmFuc2xhdGU6OkNTU1RyYW5zbGF0ZShSZWY8Q1NTTnVtZXJpY1ZhbHVlPiYmIHgsIFJlZjxDU1NO
dW1lcmljVmFsdWU+JiYgeSwgUmVmUHRyPENTU051bWVyaWNWYWx1ZT4mJiB6KQotICAgIDogbV94
KFdURk1vdmUoeCkpCitDU1NUcmFuc2xhdGU6OkNTU1RyYW5zbGF0ZShDU1NUcmFuc2Zvcm1Db21w
b25lbnQ6OklzMkQgaXMyRCwgUmVmPENTU051bWVyaWNWYWx1ZT4geCwgUmVmPENTU051bWVyaWNW
YWx1ZT4geSwgUmVmPENTU051bWVyaWNWYWx1ZT4geikKKyAgICA6IENTU1RyYW5zZm9ybUNvbXBv
bmVudChpczJEKQorICAgICwgbV94KFdURk1vdmUoeCkpCiAgICAgLCBtX3koV1RGTW92ZSh5KSkK
ICAgICAsIG1feihXVEZNb3ZlKHopKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3Nz
L3R5cGVkb20vdHJhbnNmb3JtL0NTU1RyYW5zbGF0ZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL3R5
cGVkb20vdHJhbnNmb3JtL0NTU1RyYW5zbGF0ZS5oCmluZGV4IDYyNmYyZDQ0ZTY2YTRlNWM4MWRl
YWM3MTY4YTRmY2I5YzlkNzBjMDEuLmMxNmNjZGE3NDRjYmVhYzMwYTAwNTk0NjIwOTFjMzU0MGM4
YzNhNTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL3RyYW5zZm9ybS9D
U1NUcmFuc2xhdGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS90cmFuc2Zvcm0v
Q1NTVHJhbnNsYXRlLmgKQEAgLTM3LDI1ICszNywyNyBAQCB0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xh
c3MgRXhjZXB0aW9uT3I7CiBjbGFzcyBDU1NUcmFuc2xhdGUgOiBwdWJsaWMgQ1NTVHJhbnNmb3Jt
Q29tcG9uZW50IHsKICAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKENTU1RyYW5zbGF0ZSk7CiBw
dWJsaWM6Ci0gICAgc3RhdGljIFJlZjxDU1NUcmFuc2xhdGU+IGNyZWF0ZShSZWY8Q1NTTnVtZXJp
Y1ZhbHVlPiYmLCBSZWY8Q1NTTnVtZXJpY1ZhbHVlPiYmLCBSZWZQdHI8Q1NTTnVtZXJpY1ZhbHVl
PiYmKTsKKyAgICBzdGF0aWMgRXhjZXB0aW9uT3I8UmVmPENTU1RyYW5zbGF0ZT4+IGNyZWF0ZShS
ZWY8Q1NTTnVtZXJpY1ZhbHVlPiB4LCBSZWY8Q1NTTnVtZXJpY1ZhbHVlPiB5LCBSZWZQdHI8Q1NT
TnVtZXJpY1ZhbHVlPiB6KTsKICAgICAKLSAgICBSZWY8Q1NTTnVtZXJpY1ZhbHVlPiB4KCkgeyBy
ZXR1cm4gbV94OyB9Ci0gICAgUmVmPENTU051bWVyaWNWYWx1ZT4geSgpIHsgcmV0dXJuIG1feTsg
fQotICAgIFJlZlB0cjxDU1NOdW1lcmljVmFsdWU+IHooKSB7IHJldHVybiBtX3o7IH0KKyAgICBj
b25zdCBDU1NOdW1lcmljVmFsdWUmIHgoKSBjb25zdCB7IHJldHVybiBtX3guZ2V0KCk7IH0KKyAg
ICBjb25zdCBDU1NOdW1lcmljVmFsdWUmIHkoKSBjb25zdCB7IHJldHVybiBtX3kuZ2V0KCk7IH0K
KyAgICBjb25zdCBDU1NOdW1lcmljVmFsdWUmIHooKSBjb25zdCB7IHJldHVybiBtX3ouZ2V0KCk7
IH0KIAotICAgIHZvaWQgc2V0WChSZWY8Q1NTTnVtZXJpY1ZhbHVlPiYmIHgpIHsgbV94ID0gV1RG
TW92ZSh4KTsgfQotICAgIHZvaWQgc2V0WShSZWY8Q1NTTnVtZXJpY1ZhbHVlPiYmIHkpIHsgbV95
ID0gV1RGTW92ZSh5KTsgfQotICAgIHZvaWQgc2V0WihSZWY8Q1NTTnVtZXJpY1ZhbHVlPiYmIHop
IHsgbV96ID0gV1RGTW92ZSh6KTsgfQorICAgIHZvaWQgc2V0WChSZWY8Q1NTTnVtZXJpY1ZhbHVl
PiB4KSB7IG1feCA9IFdURk1vdmUoeCk7IH0KKyAgICB2b2lkIHNldFkoUmVmPENTU051bWVyaWNW
YWx1ZT4geSkgeyBtX3kgPSBXVEZNb3ZlKHkpOyB9CisgICAgdm9pZCBzZXRaKFJlZjxDU1NOdW1l
cmljVmFsdWU+IHopIHsgbV96ID0gV1RGTW92ZSh6KTsgfQogICAgIAogICAgIFN0cmluZyB0b1N0
cmluZygpIGNvbnN0IGZpbmFsOwogICAgIEV4Y2VwdGlvbk9yPFJlZjxET01NYXRyaXg+PiB0b01h
dHJpeCgpIGZpbmFsOwogCiBwcml2YXRlOgotICAgIENTU1RyYW5zbGF0ZShSZWY8Q1NTTnVtZXJp
Y1ZhbHVlPiYmLCBSZWY8Q1NTTnVtZXJpY1ZhbHVlPiYmLCBSZWZQdHI8Q1NTTnVtZXJpY1ZhbHVl
PiYmKTsKLSAgICAKKyAgICBDU1NUcmFuc2xhdGUoQ1NTVHJhbnNmb3JtQ29tcG9uZW50OjpJczJE
LCBSZWY8Q1NTTnVtZXJpY1ZhbHVlPiwgUmVmPENTU051bWVyaWNWYWx1ZT4sIFJlZjxDU1NOdW1l
cmljVmFsdWU+KTsKKworICAgIENTU1RyYW5zZm9ybVR5cGUgZ2V0VHlwZSgpIGNvbnN0IGZpbmFs
IHsgcmV0dXJuIENTU1RyYW5zZm9ybVR5cGU6OlRyYW5zbGF0ZTsgfQorCiAgICAgUmVmPENTU051
bWVyaWNWYWx1ZT4gbV94OwogICAgIFJlZjxDU1NOdW1lcmljVmFsdWU+IG1feTsKLSAgICBSZWZQ
dHI8Q1NTTnVtZXJpY1ZhbHVlPiBtX3o7CisgICAgUmVmPENTU051bWVyaWNWYWx1ZT4gbV96Owog
fTsKICAgICAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdl
TG9nCmluZGV4IDU0YjkzNjQwZTI3ODRjZDMxM2RmMzg5ZTVlZGIzZjc2ZGIxNTJlYTkuLjAxNWU1
MGQ1ZTUxYThjNDY4Mjc4ZDhiNjI1NzhlYmM5ZGIzYjhiNGYgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIyLTA0LTE4ICBBbGV4IENocmlzdGVuc2Vu
ICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgSW1wbGVtZW50IENTU1RyYW5z
Zm9ybVZhbHVlLmlzMkQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIzOTQ2MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdHlwZWQtb20vc3R5bGV2YWx1ZS1z
dWJjbGFzc2VzL2Nzc01hdHJpeENvbXBvbmVudC50ZW50YXRpdmUtZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXR5cGVkLW9tL3N0eWxldmFsdWUtc3Vi
Y2xhc3Nlcy9jc3NSb3RhdGUudGVudGF0aXZlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy10eXBlZC1vbS9zdHlsZXZhbHVlLXN1YmNsYXNzZXMvY3Nz
U2NhbGUudGVudGF0aXZlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy10eXBlZC1vbS9zdHlsZXZhbHVlLXN1YmNsYXNzZXMvY3NzVHJhbnNmb3JtVmFs
dWUudGVudGF0aXZlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL2Nzcy10eXBlZC1vbS9zdHlsZXZhbHVlLXN1YmNsYXNzZXMvY3NzUGVyc3BlY3RpdmUudGVu
dGF0aXZlLWV4cGVjdGVkLnR4dDoKKwogMjAyMi0wNC0xNCAgWW91ZW5uIEZhYmxldCAgPHlvdWVu
bkBhcHBsZS5jb20+CiAKICAgICAgICAgRXhwb3NlIHdvcmtlcnMgYXMgc2VydmljZSB3b3JrZXIg
Y2xpZW50cyBhbmQgaW1wbGVtZW50IHJlZ2lzdHJhdGlvbiBtYXRjaGluZyBmb3IgZGVkaWNhdGVk
IHdvcmtlcnMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzcy10eXBlZC1vbS9zdHlsZXZhbHVlLXN1YmNsYXNzZXMvY3NzTWF0cml4
Q29tcG9uZW50LnRlbnRhdGl2ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdHlwZWQtb20vc3R5bGV2YWx1ZS1zdWJjbGFz
c2VzL2Nzc01hdHJpeENvbXBvbmVudC50ZW50YXRpdmUtZXhwZWN0ZWQudHh0CmluZGV4IGE1NjBk
OWZkNjhiZTFlM2IyN2YxYmIzZmY5YzYyM2Y5Y2ViMTg3M2QuLjdhOTc0NWY5MDg5ZDYyMmUxZTdm
NWEwYTRjMjI2YWQwYWFjZmEzYTMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy10eXBlZC1vbS9zdHlsZXZhbHVlLXN1YmNsYXNz
ZXMvY3NzTWF0cml4Q29tcG9uZW50LnRlbnRhdGl2ZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXR5cGVkLW9tL3N0
eWxldmFsdWUtc3ViY2xhc3Nlcy9jc3NNYXRyaXhDb21wb25lbnQudGVudGF0aXZlLWV4cGVjdGVk
LnR4dApAQCAtMSwxMCArMSwxMCBAQAogCi1GQUlMIENTU01hdHJpeENvbXBvbmVudCBjYW4gYmUg
Y29uc3RydWN0ZWQgZnJvbSBhIDJEIG1hdHJpeCB3aXRoIGlzMkQgdHJ1ZSBhc3NlcnRfdHJ1ZTog
ZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgQ1NTTWF0cml4Q29tcG9uZW50IGNhbiBiZSBj
b25zdHJ1Y3RlZCBmcm9tIGEgMkQgbWF0cml4IHdpdGggaXMyRCB0cnVlCiBQQVNTIENTU01hdHJp
eENvbXBvbmVudCBjYW4gYmUgY29uc3RydWN0ZWQgZnJvbSBhIDJEIG1hdHJpeCB3aXRoIGlzMkQg
ZmFsc2UKIEZBSUwgQ1NTTWF0cml4Q29tcG9uZW50IGNhbiBiZSBjb25zdHJ1Y3RlZCBmcm9tIGEg
MkQgbWF0cml4IHdpdGhvdXQgYSBDU1NNYXRyaXhDb21wb25lbnRPcHRpb25zIGFzc2VydF9lcXVh
bHM6IGV4cGVjdGVkIHRydWUgYnV0IGdvdCBmYWxzZQogRkFJTCBDU1NNYXRyaXhDb21wb25lbnQg
Y2FuIGJlIGNvbnN0cnVjdGVkIGZyb20gYSAyRCBtYXRyaXggd2l0aCBhbiBpbnZhbGlkIENTU01h
dHJpeENvbXBvbmVudE9wdGlvbnMgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgdHJ1ZSBidXQgZ290
IGZhbHNlCiBQQVNTIENTU01hdHJpeENvbXBvbmVudC5tYXRyaXggY2FuIGJlIHVwZGF0ZWQgdG8g
YSAyRCBtYXRyaXgKLUZBSUwgQ1NTTWF0cml4Q29tcG9uZW50IGNhbiBiZSBjb25zdHJ1Y3RlZCBm
cm9tIGEgM0QgbWF0cml4IHdpdGggaXMyRCB0cnVlIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVl
IGdvdCBmYWxzZQorUEFTUyBDU1NNYXRyaXhDb21wb25lbnQgY2FuIGJlIGNvbnN0cnVjdGVkIGZy
b20gYSAzRCBtYXRyaXggd2l0aCBpczJEIHRydWUKIFBBU1MgQ1NTTWF0cml4Q29tcG9uZW50IGNh
biBiZSBjb25zdHJ1Y3RlZCBmcm9tIGEgM0QgbWF0cml4IHdpdGggaXMyRCBmYWxzZQogUEFTUyBD
U1NNYXRyaXhDb21wb25lbnQgY2FuIGJlIGNvbnN0cnVjdGVkIGZyb20gYSAzRCBtYXRyaXggd2l0
aG91dCBhIENTU01hdHJpeENvbXBvbmVudE9wdGlvbnMKIFBBU1MgQ1NTTWF0cml4Q29tcG9uZW50
IGNhbiBiZSBjb25zdHJ1Y3RlZCBmcm9tIGEgM0QgbWF0cml4IHdpdGggYW4gaW52YWxpZCBDU1NN
YXRyaXhDb21wb25lbnRPcHRpb25zCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdHlwZWQtb20vc3R5bGV2YWx1ZS1zdWJjbGFz
c2VzL2Nzc1BlcnNwZWN0aXZlLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdHlwZWQtb20vc3R5bGV2YWx1
ZS1zdWJjbGFzc2VzL2Nzc1BlcnNwZWN0aXZlLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQKaW5kZXgg
MDgyNjdlMzE2NzljZGE0YTc2NGIzNzM0Yzg0MTU5NjUwYTA1MGFiMi4uOGVlNjIzMTZiZTdiZWMy
ZWFkNDUxNjQwMjY5ZWQ5YTIzMGEyMGNmYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXR5cGVkLW9tL3N0eWxldmFsdWUtc3Vi
Y2xhc3Nlcy9jc3NQZXJzcGVjdGl2ZS50ZW50YXRpdmUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy10eXBlZC1vbS9z
dHlsZXZhbHVlLXN1YmNsYXNzZXMvY3NzUGVyc3BlY3RpdmUudGVudGF0aXZlLWV4cGVjdGVkLnR4
dApAQCAtMywxOSArMywxOSBAQCBQQVNTIENvbnN0cnVjdGluZyBhIENTU1BlcnNwZWN0aXZlIHdp
dGggYSBrZXl3b3JkIHRocm93cyBhIFR5cGVFcnJvcgogUEFTUyBDb25zdHJ1Y3RpbmcgYSBDU1NQ
ZXJzcGVjdGl2ZSB3aXRoIGEgZG91YmxlIHRocm93cyBhIFR5cGVFcnJvcgogUEFTUyBDb25zdHJ1
Y3RpbmcgYSBDU1NQZXJzcGVjdGl2ZSB3aXRoIGEgdW5pdGxlc3MgemVybyB0aHJvd3MgYSBUeXBl
RXJyb3IKIFBBU1MgQ29uc3RydWN0aW5nIGEgQ1NTUGVyc3BlY3RpdmUgd2l0aCBhIHN0cmluZyBs
ZW5ndGggdGhyb3dzIGEgVHlwZUVycm9yCi1GQUlMIENvbnN0cnVjdGluZyBhIENTU1BlcnNwZWN0
aXZlIHdpdGggYSBudW1iZXIgQ1NTVW5pdFZhbHVlIHRocm93cyBhIFR5cGVFcnJvciBhc3NlcnRf
dGhyb3dzX2pzOiBmdW5jdGlvbiAiKCkgPT4gbmV3IENTU1BlcnNwZWN0aXZlKGxlbmd0aCkiIGRp
ZCBub3QgdGhyb3cKLUZBSUwgQ29uc3RydWN0aW5nIGEgQ1NTUGVyc3BlY3RpdmUgd2l0aCBhIHRp
bWUgZGltZW5zaW9uIENTU1VuaXRWYWx1ZSB0aHJvd3MgYSBUeXBlRXJyb3IgYXNzZXJ0X3Rocm93
c19qczogZnVuY3Rpb24gIigpID0+IG5ldyBDU1NQZXJzcGVjdGl2ZShsZW5ndGgpIiBkaWQgbm90
IHRocm93Ci1GQUlMIENvbnN0cnVjdGluZyBhIENTU1BlcnNwZWN0aXZlIHdpdGggYSBDU1NNYXRo
VmFsdWUgb2YgYW5nbGUgdHlwZSB0aHJvd3MgYSBUeXBlRXJyb3IgYXNzZXJ0X3Rocm93c19qczog
ZnVuY3Rpb24gIigpID0+IG5ldyBDU1NQZXJzcGVjdGl2ZShsZW5ndGgpIiBkaWQgbm90IHRocm93
CitQQVNTIENvbnN0cnVjdGluZyBhIENTU1BlcnNwZWN0aXZlIHdpdGggYSBudW1iZXIgQ1NTVW5p
dFZhbHVlIHRocm93cyBhIFR5cGVFcnJvcgorUEFTUyBDb25zdHJ1Y3RpbmcgYSBDU1NQZXJzcGVj
dGl2ZSB3aXRoIGEgdGltZSBkaW1lbnNpb24gQ1NTVW5pdFZhbHVlIHRocm93cyBhIFR5cGVFcnJv
cgorUEFTUyBDb25zdHJ1Y3RpbmcgYSBDU1NQZXJzcGVjdGl2ZSB3aXRoIGEgQ1NTTWF0aFZhbHVl
IG9mIGFuZ2xlIHR5cGUgdGhyb3dzIGEgVHlwZUVycm9yCiBQQVNTIFVwZGF0aW5nIENTU1BlcnNw
ZWN0aXZlLmxlbmd0aCB3aXRoIGEga2V5d29yZCB0aHJvd3MgYSBUeXBlRXJyb3IKIFBBU1MgVXBk
YXRpbmcgQ1NTUGVyc3BlY3RpdmUubGVuZ3RoIHdpdGggYSBkb3VibGUgdGhyb3dzIGEgVHlwZUVy
cm9yCiBQQVNTIFVwZGF0aW5nIENTU1BlcnNwZWN0aXZlLmxlbmd0aCB3aXRoIGEgdW5pdGxlc3Mg
emVybyB0aHJvd3MgYSBUeXBlRXJyb3IKIFBBU1MgVXBkYXRpbmcgQ1NTUGVyc3BlY3RpdmUubGVu
Z3RoIHdpdGggYSBzdHJpbmcgbGVuZ3RoIHRocm93cyBhIFR5cGVFcnJvcgotRkFJTCBVcGRhdGlu
ZyBDU1NQZXJzcGVjdGl2ZS5sZW5ndGggd2l0aCBhIG51bWJlciBDU1NVbml0VmFsdWUgdGhyb3dz
IGEgVHlwZUVycm9yIGFzc2VydF90aHJvd3NfanM6IGZ1bmN0aW9uICIoKSA9PiBwZXJzcGVjdGl2
ZS5sZW5ndGggPSBsZW5ndGgiIGRpZCBub3QgdGhyb3cKLUZBSUwgVXBkYXRpbmcgQ1NTUGVyc3Bl
Y3RpdmUubGVuZ3RoIHdpdGggYSB0aW1lIGRpbWVuc2lvbiBDU1NVbml0VmFsdWUgdGhyb3dzIGEg
VHlwZUVycm9yIGFzc2VydF90aHJvd3NfanM6IGZ1bmN0aW9uICIoKSA9PiBwZXJzcGVjdGl2ZS5s
ZW5ndGggPSBsZW5ndGgiIGRpZCBub3QgdGhyb3cKLUZBSUwgVXBkYXRpbmcgQ1NTUGVyc3BlY3Rp
dmUubGVuZ3RoIHdpdGggYSBDU1NNYXRoVmFsdWUgb2YgYW5nbGUgdHlwZSB0aHJvd3MgYSBUeXBl
RXJyb3IgYXNzZXJ0X3Rocm93c19qczogZnVuY3Rpb24gIigpID0+IHBlcnNwZWN0aXZlLmxlbmd0
aCA9IGxlbmd0aCIgZGlkIG5vdCB0aHJvdworUEFTUyBVcGRhdGluZyBDU1NQZXJzcGVjdGl2ZS5s
ZW5ndGggd2l0aCBhIG51bWJlciBDU1NVbml0VmFsdWUgdGhyb3dzIGEgVHlwZUVycm9yCitQQVNT
IFVwZGF0aW5nIENTU1BlcnNwZWN0aXZlLmxlbmd0aCB3aXRoIGEgdGltZSBkaW1lbnNpb24gQ1NT
VW5pdFZhbHVlIHRocm93cyBhIFR5cGVFcnJvcgorUEFTUyBVcGRhdGluZyBDU1NQZXJzcGVjdGl2
ZS5sZW5ndGggd2l0aCBhIENTU01hdGhWYWx1ZSBvZiBhbmdsZSB0eXBlIHRocm93cyBhIFR5cGVF
cnJvcgogUEFTUyBDU1NQZXJzcGVjdGl2ZSBjYW4gYmUgY29uc3RydWN0ZWQgZnJvbSBhIGxlbmd0
aCBDU1NVbml0VmFsdWUKIFBBU1MgQ1NTUGVyc3BlY3RpdmUubGVuZ3RoIGNhbiBiZSB1cGRhdGVk
IHRvIGEgbGVuZ3RoIENTU1VuaXRWYWx1ZQogUEFTUyBDU1NQZXJzcGVjdGl2ZSBjYW4gYmUgY29u
c3RydWN0ZWQgZnJvbSBhIENTU01hdGhWYWx1ZSBvZiBsZW5ndGggdHlwZQogUEFTUyBDU1NQZXJz
cGVjdGl2ZS5sZW5ndGggY2FuIGJlIHVwZGF0ZWQgdG8gYSBDU1NNYXRoVmFsdWUgb2YgbGVuZ3Ro
IHR5cGUKLUZBSUwgTW9kaWZ5aW5nIENTU1BlcnNwZWN0aXZlLmlzMkQgaXMgYSBuby1vcCBhc3Nl
cnRfZmFsc2U6IGV4cGVjdGVkIGZhbHNlIGdvdCB0cnVlCitQQVNTIE1vZGlmeWluZyBDU1NQZXJz
cGVjdGl2ZS5pczJEIGlzIGEgbm8tb3AKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXR5cGVkLW9tL3N0eWxldmFsdWUtc3Vi
Y2xhc3Nlcy9jc3NSb3RhdGUudGVudGF0aXZlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy10eXBlZC1vbS9zdHlsZXZhbHVl
LXN1YmNsYXNzZXMvY3NzUm90YXRlLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQKaW5kZXggN2ZlNTJm
OTFjMDI2ODM0OGJhOTgwZTQwMzA3ZTM5MmUzYTM3N2ZkMy4uMWViNmQxYzYzZDkzZDI3MWZiYzdi
YzcyOTNhZmE2NDUyYjY0Yzk3NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXR5cGVkLW9tL3N0eWxldmFsdWUtc3ViY2xhc3Nl
cy9jc3NSb3RhdGUudGVudGF0aXZlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdHlwZWQtb20vc3R5bGV2YWx1ZS1z
dWJjbGFzc2VzL2Nzc1JvdGF0ZS50ZW50YXRpdmUtZXhwZWN0ZWQudHh0CkBAIC0xLDI4ICsxLDI4
IEBACiAKLUZBSUwgQ29uc3RydWN0aW5nIGEgQ1NTUm90YXRlIHdpdGggYSBDU1NVbml0VmFsdWUg
d2l0aCB0eXBlIG90aGVyIHRoYW4gYW5nbGUgZm9yIHRoZSBhbmdsZSB0aHJvd3MgYSBUeXBlRXJy
b3IgYXNzZXJ0X3Rocm93c19qczogZnVuY3Rpb24gIigpID0+IG5ldyBDU1NSb3RhdGUoYW5nbGUp
IiBkaWQgbm90IHRocm93Ci1GQUlMIENvbnN0cnVjdGluZyBhIENTU1JvdGF0ZSB3aXRoIGEgQ1NT
TWF0aFZhbHVlIHRoYXQgZG9lc24ndCBtYXRjaCA8YW5nbGU+IGZvciB0aGUgYW5nbGUgdGhyb3dz
IGEgVHlwZUVycm9yIGFzc2VydF90aHJvd3NfanM6IGZ1bmN0aW9uICIoKSA9PiBuZXcgQ1NTUm90
YXRlKGFuZ2xlKSIgZGlkIG5vdCB0aHJvdwotRkFJTCBDb25zdHJ1Y3RpbmcgYSBDU1NSb3RhdGUg
d2l0aCBhIENTU1VuaXRWYWx1ZSB3aXRoIHR5cGUgb3RoZXIgdGhhbiBudW1iZXIgZm9yIHRoZSBj
b29yZGluYXRlcyB0aHJvd3MgYSBUeXBlRXJyb3IgYXNzZXJ0X3Rocm93c19qczogZnVuY3Rpb24g
IigpID0+IG5ldyBDU1NSb3RhdGUoY29vcmQsIDAsIDAsIENTUy5kZWcoMCkpIiBkaWQgbm90IHRo
cm93Ci1GQUlMIENvbnN0cnVjdGluZyBhIENTU1JvdGF0ZSB3aXRoIGEgQ1NTTWF0aFZhbHVlIHRo
YXQgZG9lc24ndCBtYXRjaCA8bnVtYmVyPiBmb3IgdGhlIGNvb3JkaW5hdGVzIHRocm93cyBhIFR5
cGVFcnJvciBhc3NlcnRfdGhyb3dzX2pzOiBmdW5jdGlvbiAiKCkgPT4gbmV3IENTU1JvdGF0ZShj
b29yZCwgMCwgMCwgQ1NTLmRlZygwKSkiIGRpZCBub3QgdGhyb3cKLUZBSUwgVXBkYXRpbmcgQ1NT
Um90YXRlLnggdG8gYSBDU1NVbml0VmFsdWUgd2l0aCB0eXBlIG90aGVyIHRoYW4gbnVtYmVyIHRo
cm93cyBhIFR5cGVFcnJvciBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiQ1NTVW5pdFZhbHVlIiBi
dXQgZ290ICJOdW1iZXIiCi1GQUlMIFVwZGF0aW5nIENTU1JvdGF0ZS54IHRvIGEgQ1NTTWF0aFZh
bHVlIHRoYXQgZG9lc24ndCBtYXRjaCA8bnVtYmVyPiB0aHJvd3MgYSBUeXBlRXJyb3IgYXNzZXJ0
X2VxdWFsczogZXhwZWN0ZWQgIkNTU1VuaXRWYWx1ZSIgYnV0IGdvdCAiTnVtYmVyIgotRkFJTCBV
cGRhdGluZyBDU1NSb3RhdGUueSB0byBhIENTU1VuaXRWYWx1ZSB3aXRoIHR5cGUgb3RoZXIgdGhh
biBudW1iZXIgdGhyb3dzIGEgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJDU1NV
bml0VmFsdWUiIGJ1dCBnb3QgIk51bWJlciIKLUZBSUwgVXBkYXRpbmcgQ1NTUm90YXRlLnkgdG8g
YSBDU1NNYXRoVmFsdWUgdGhhdCBkb2Vzbid0IG1hdGNoIDxudW1iZXI+IHRocm93cyBhIFR5cGVF
cnJvciBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiQ1NTVW5pdFZhbHVlIiBidXQgZ290ICJOdW1i
ZXIiCi1GQUlMIFVwZGF0aW5nIENTU1JvdGF0ZS56IHRvIGEgQ1NTVW5pdFZhbHVlIHdpdGggdHlw
ZSBvdGhlciB0aGFuIG51bWJlciB0aHJvd3MgYSBUeXBlRXJyb3IgYXNzZXJ0X2VxdWFsczogZXhw
ZWN0ZWQgIkNTU1VuaXRWYWx1ZSIgYnV0IGdvdCAiTnVtYmVyIgotRkFJTCBVcGRhdGluZyBDU1NS
b3RhdGUueiB0byBhIENTU01hdGhWYWx1ZSB0aGF0IGRvZXNuJ3QgbWF0Y2ggPG51bWJlcj4gdGhy
b3dzIGEgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJDU1NVbml0VmFsdWUiIGJ1
dCBnb3QgIk51bWJlciIKLUZBSUwgVXBkYXRpbmcgQ1NTUm90YXRlLmFuZ2xlIHRvIGEgQ1NTVW5p
dFZhbHVlIHdpdGggdHlwZSBvdGhlciB0aGFuIGFuZ2xlIHRocm93cyBhIFR5cGVFcnJvciBhc3Nl
cnRfdGhyb3dzX2pzOiBmdW5jdGlvbiAiKCkgPT4gcmVzdWx0LmFuZ2xlID0gYW5nbGUiIGRpZCBu
b3QgdGhyb3cKLUZBSUwgVXBkYXRpbmcgQ1NTUm90YXRlLmFuZ2xlIHRvIGEgQ1NTTWF0aFZhbHVl
IHRoYXQgZG9lc24ndCBtYXRjaCA8YW5nbGU+IHRocm93cyBhIFR5cGVFcnJvciBhc3NlcnRfdGhy
b3dzX2pzOiBmdW5jdGlvbiAiKCkgPT4gcmVzdWx0LmFuZ2xlID0gYW5nbGUiIGRpZCBub3QgdGhy
b3cKLUZBSUwgQ1NTUm90YXRlIGNhbiBiZSBjb25zdHJ1Y3RlZCBmcm9tIGEgc2luZ2xlIGFuZ2xl
IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJDU1NVbml0VmFsdWUiIGJ1dCBnb3QgIk51bWJlciIK
LUZBSUwgQ1NTUm90YXRlIGNhbiBiZSBjb25zdHJ1Y3RlZCBmcm9tIG51bWJlcmlzaCBjb29yZGlu
YXRlcyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiQ1NTVW5pdFZhbHVlIiBidXQgZ290ICJOdW1i
ZXIiCi1GQUlMIENTU1JvdGF0ZSBjYW4gYmUgY29uc3RydWN0ZWQgZnJvbSBDU1NNYXRoVmFsdWVz
IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJDU1NNYXRoUHJvZHVjdCIgYnV0IGdvdCAiQ1NTTWF0
aFN1bSIKLUZBSUwgQ1NTUm90YXRlLnggY2FuIGJlIHVwZGF0ZWQgdG8gYSBkb3VibGUgYXNzZXJ0
X2VxdWFsczogZXhwZWN0ZWQgIkNTU1VuaXRWYWx1ZSIgYnV0IGdvdCAiTnVtYmVyIgorUEFTUyBD
b25zdHJ1Y3RpbmcgYSBDU1NSb3RhdGUgd2l0aCBhIENTU1VuaXRWYWx1ZSB3aXRoIHR5cGUgb3Ro
ZXIgdGhhbiBhbmdsZSBmb3IgdGhlIGFuZ2xlIHRocm93cyBhIFR5cGVFcnJvcgorUEFTUyBDb25z
dHJ1Y3RpbmcgYSBDU1NSb3RhdGUgd2l0aCBhIENTU01hdGhWYWx1ZSB0aGF0IGRvZXNuJ3QgbWF0
Y2ggPGFuZ2xlPiBmb3IgdGhlIGFuZ2xlIHRocm93cyBhIFR5cGVFcnJvcgorUEFTUyBDb25zdHJ1
Y3RpbmcgYSBDU1NSb3RhdGUgd2l0aCBhIENTU1VuaXRWYWx1ZSB3aXRoIHR5cGUgb3RoZXIgdGhh
biBudW1iZXIgZm9yIHRoZSBjb29yZGluYXRlcyB0aHJvd3MgYSBUeXBlRXJyb3IKK1BBU1MgQ29u
c3RydWN0aW5nIGEgQ1NTUm90YXRlIHdpdGggYSBDU1NNYXRoVmFsdWUgdGhhdCBkb2Vzbid0IG1h
dGNoIDxudW1iZXI+IGZvciB0aGUgY29vcmRpbmF0ZXMgdGhyb3dzIGEgVHlwZUVycm9yCitQQVNT
IFVwZGF0aW5nIENTU1JvdGF0ZS54IHRvIGEgQ1NTVW5pdFZhbHVlIHdpdGggdHlwZSBvdGhlciB0
aGFuIG51bWJlciB0aHJvd3MgYSBUeXBlRXJyb3IKK1BBU1MgVXBkYXRpbmcgQ1NTUm90YXRlLngg
dG8gYSBDU1NNYXRoVmFsdWUgdGhhdCBkb2Vzbid0IG1hdGNoIDxudW1iZXI+IHRocm93cyBhIFR5
cGVFcnJvcgorUEFTUyBVcGRhdGluZyBDU1NSb3RhdGUueSB0byBhIENTU1VuaXRWYWx1ZSB3aXRo
IHR5cGUgb3RoZXIgdGhhbiBudW1iZXIgdGhyb3dzIGEgVHlwZUVycm9yCitQQVNTIFVwZGF0aW5n
IENTU1JvdGF0ZS55IHRvIGEgQ1NTTWF0aFZhbHVlIHRoYXQgZG9lc24ndCBtYXRjaCA8bnVtYmVy
PiB0aHJvd3MgYSBUeXBlRXJyb3IKK1BBU1MgVXBkYXRpbmcgQ1NTUm90YXRlLnogdG8gYSBDU1NV
bml0VmFsdWUgd2l0aCB0eXBlIG90aGVyIHRoYW4gbnVtYmVyIHRocm93cyBhIFR5cGVFcnJvcgor
UEFTUyBVcGRhdGluZyBDU1NSb3RhdGUueiB0byBhIENTU01hdGhWYWx1ZSB0aGF0IGRvZXNuJ3Qg
bWF0Y2ggPG51bWJlcj4gdGhyb3dzIGEgVHlwZUVycm9yCitQQVNTIFVwZGF0aW5nIENTU1JvdGF0
ZS5hbmdsZSB0byBhIENTU1VuaXRWYWx1ZSB3aXRoIHR5cGUgb3RoZXIgdGhhbiBhbmdsZSB0aHJv
d3MgYSBUeXBlRXJyb3IKK1BBU1MgVXBkYXRpbmcgQ1NTUm90YXRlLmFuZ2xlIHRvIGEgQ1NTTWF0
aFZhbHVlIHRoYXQgZG9lc24ndCBtYXRjaCA8YW5nbGU+IHRocm93cyBhIFR5cGVFcnJvcgorUEFT
UyBDU1NSb3RhdGUgY2FuIGJlIGNvbnN0cnVjdGVkIGZyb20gYSBzaW5nbGUgYW5nbGUKK1BBU1Mg
Q1NTUm90YXRlIGNhbiBiZSBjb25zdHJ1Y3RlZCBmcm9tIG51bWJlcmlzaCBjb29yZGluYXRlcwor
RkFJTCBDU1NSb3RhdGUgY2FuIGJlIGNvbnN0cnVjdGVkIGZyb20gQ1NTTWF0aFZhbHVlcyBUeXBl
IGVycm9yCitQQVNTIENTU1JvdGF0ZS54IGNhbiBiZSB1cGRhdGVkIHRvIGEgZG91YmxlCiBQQVNT
IENTU1JvdGF0ZS54IGNhbiBiZSB1cGRhdGVkIHRvIGEgbnVtYmVyIENTU1VuaXRWYWx1ZQogUEFT
UyBDU1NSb3RhdGUueCBjYW4gYmUgdXBkYXRlZCB0byBhIENTU01hdGhWYWx1ZSBtYXRjaGluZyA8
bnVtYmVyPgotRkFJTCBDU1NSb3RhdGUueSBjYW4gYmUgdXBkYXRlZCB0byBhIGRvdWJsZSBhc3Nl
cnRfZXF1YWxzOiBleHBlY3RlZCAiQ1NTVW5pdFZhbHVlIiBidXQgZ290ICJOdW1iZXIiCi1GQUlM
IENTU1JvdGF0ZS55IGNhbiBiZSB1cGRhdGVkIHRvIGEgbnVtYmVyIENTU1VuaXRWYWx1ZSBhc3Nl
cnRfZXF1YWxzOiBleHBlY3RlZCAiQ1NTVW5pdFZhbHVlIiBidXQgZ290ICJOdW1iZXIiCi1GQUlM
IENTU1JvdGF0ZS55IGNhbiBiZSB1cGRhdGVkIHRvIGEgQ1NTTWF0aFZhbHVlIG1hdGNoaW5nIDxu
dW1iZXI+IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJDU1NNYXRoU3VtIiBidXQgZ290ICJOdW1i
ZXIiCi1GQUlMIENTU1JvdGF0ZS56IGNhbiBiZSB1cGRhdGVkIHRvIGEgZG91YmxlIGFzc2VydF9l
cXVhbHM6IGV4cGVjdGVkICJDU1NVbml0VmFsdWUiIGJ1dCBnb3QgIk51bWJlciIKLUZBSUwgQ1NT
Um90YXRlLnogY2FuIGJlIHVwZGF0ZWQgdG8gYSBudW1iZXIgQ1NTVW5pdFZhbHVlIGFzc2VydF9l
cXVhbHM6IGV4cGVjdGVkICJDU1NVbml0VmFsdWUiIGJ1dCBnb3QgIk51bWJlciIKLUZBSUwgQ1NT
Um90YXRlLnogY2FuIGJlIHVwZGF0ZWQgdG8gYSBDU1NNYXRoVmFsdWUgbWF0Y2hpbmcgPG51bWJl
cj4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIkNTU01hdGhTdW0iIGJ1dCBnb3QgIk51bWJlciIK
K1BBU1MgQ1NTUm90YXRlLnkgY2FuIGJlIHVwZGF0ZWQgdG8gYSBkb3VibGUKK1BBU1MgQ1NTUm90
YXRlLnkgY2FuIGJlIHVwZGF0ZWQgdG8gYSBudW1iZXIgQ1NTVW5pdFZhbHVlCitQQVNTIENTU1Jv
dGF0ZS55IGNhbiBiZSB1cGRhdGVkIHRvIGEgQ1NTTWF0aFZhbHVlIG1hdGNoaW5nIDxudW1iZXI+
CitQQVNTIENTU1JvdGF0ZS56IGNhbiBiZSB1cGRhdGVkIHRvIGEgZG91YmxlCitQQVNTIENTU1Jv
dGF0ZS56IGNhbiBiZSB1cGRhdGVkIHRvIGEgbnVtYmVyIENTU1VuaXRWYWx1ZQorUEFTUyBDU1NS
b3RhdGUueiBjYW4gYmUgdXBkYXRlZCB0byBhIENTU01hdGhWYWx1ZSBtYXRjaGluZyA8bnVtYmVy
PgogUEFTUyBDU1NSb3RhdGUuYW5nbGUgY2FuIGJlIHVwZGF0ZWQgdG8gYSBkZWdyZWUgQ1NTVW5p
dFZhbHVlCiBQQVNTIENTU1JvdGF0ZS5hbmdsZSBjYW4gYmUgdXBkYXRlZCB0byBhIENTU01hdGhW
YWx1ZSBtYXRjaGluZyA8YW5nbGU+CiBQQVNTIE1vZGlmeWluZyBDU1NSb3RhdGUuaXMyRCBjYW4g
YmUgdXBkYXRlZCB0byB0cnVlIG9yIGZhbHNlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdHlwZWQtb20vc3R5bGV2YWx1ZS1z
dWJjbGFzc2VzL2Nzc1NjYWxlLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdHlwZWQtb20vc3R5bGV2YWx1
ZS1zdWJjbGFzc2VzL2Nzc1NjYWxlLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQKaW5kZXggNmVlNmU3
MzFjYzMxMmE3YjU4ZTU2YTM0N2ZlMmM3NjM5MTkzNWY0Ni4uZTE1NjNkOTYyZmRjNjg3NzNlNTRk
ZGM2NmE1ZTYyNTEyZjk4NjhhNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXR5cGVkLW9tL3N0eWxldmFsdWUtc3ViY2xhc3Nl
cy9jc3NTY2FsZS50ZW50YXRpdmUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy10eXBlZC1vbS9zdHlsZXZhbHVlLXN1
YmNsYXNzZXMvY3NzU2NhbGUudGVudGF0aXZlLWV4cGVjdGVkLnR4dApAQCAtMSwyNiArMSwyNiBA
QAogCi1GQUlMIENvbnN0cnVjdGluZyBhIENTU1NjYWxlIHdpdGggYW4gYW5nbGUgQ1NTVW5pdFZh
bHVlIGZvciB0aGUgY29vcmRpbmF0ZXMgdGhyb3dzIGEgVHlwZUVycm9yIGFzc2VydF90aHJvd3Nf
anM6IGZ1bmN0aW9uICIoKSA9PiBuZXcgQ1NTU2NhbGUoY29vcmQsIDApIiBkaWQgbm90IHRocm93
Ci1GQUlMIENvbnN0cnVjdGluZyBhIENTU1NjYWxlIHdpdGggYSBDU1NNYXRoVmFsdWUgdGhhdCBk
b2Vzbid0IG1hdGNoIDxudW1iZXI+IGZvciB0aGUgY29vcmRpbmF0ZXMgdGhyb3dzIGEgVHlwZUVy
cm9yIGFzc2VydF90aHJvd3NfanM6IGZ1bmN0aW9uICIoKSA9PiBuZXcgQ1NTU2NhbGUoY29vcmQs
IDApIiBkaWQgbm90IHRocm93CitQQVNTIENvbnN0cnVjdGluZyBhIENTU1NjYWxlIHdpdGggYW4g
YW5nbGUgQ1NTVW5pdFZhbHVlIGZvciB0aGUgY29vcmRpbmF0ZXMgdGhyb3dzIGEgVHlwZUVycm9y
CitQQVNTIENvbnN0cnVjdGluZyBhIENTU1NjYWxlIHdpdGggYSBDU1NNYXRoVmFsdWUgdGhhdCBk
b2Vzbid0IG1hdGNoIDxudW1iZXI+IGZvciB0aGUgY29vcmRpbmF0ZXMgdGhyb3dzIGEgVHlwZUVy
cm9yCiBGQUlMIENvbnN0cnVjdGluZyBhIENTU1NjYWxlIHdpdGggYW4gaW52YWxpZCBkaXZpc2lv
biBieSBweC9weCBmb3IgdGhlIGNvb3JkaW5hdGVzIHRocm93cyBhIFR5cGVFcnJvciBhc3NlcnRf
dGhyb3dzX2pzOiBmdW5jdGlvbiAiKCkgPT4gbmV3IENTU1NjYWxlKGNvb3JkLCAwKSIgZGlkIG5v
dCB0aHJvdwotRkFJTCBVcGRhdGluZyBDU1NTY2FsZS54IHRvIGFuIGFuZ2xlIENTU1VuaXRWYWx1
ZSB0aHJvd3MgYSBUeXBlRXJyb3IgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIkNTU1VuaXRWYWx1
ZSIgYnV0IGdvdCAiTnVtYmVyIgotRkFJTCBVcGRhdGluZyBDU1NTY2FsZS54IHRvIGEgQ1NTTWF0
aFZhbHVlIHRoYXQgZG9lc24ndCBtYXRjaCA8bnVtYmVyPiB0aHJvd3MgYSBUeXBlRXJyb3IgYXNz
ZXJ0X2VxdWFsczogZXhwZWN0ZWQgIkNTU1VuaXRWYWx1ZSIgYnV0IGdvdCAiTnVtYmVyIgotRkFJ
TCBVcGRhdGluZyBDU1NTY2FsZS54IHRvIGFuIGludmFsaWQgZGl2aXNpb24gYnkgcHgvcHggdGhy
b3dzIGEgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJDU1NVbml0VmFsdWUiIGJ1
dCBnb3QgIk51bWJlciIKLUZBSUwgVXBkYXRpbmcgQ1NTU2NhbGUueSB0byBhbiBhbmdsZSBDU1NV
bml0VmFsdWUgdGhyb3dzIGEgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJDU1NV
bml0VmFsdWUiIGJ1dCBnb3QgIk51bWJlciIKLUZBSUwgVXBkYXRpbmcgQ1NTU2NhbGUueSB0byBh
IENTU01hdGhWYWx1ZSB0aGF0IGRvZXNuJ3QgbWF0Y2ggPG51bWJlcj4gdGhyb3dzIGEgVHlwZUVy
cm9yIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJDU1NVbml0VmFsdWUiIGJ1dCBnb3QgIk51bWJl
ciIKLUZBSUwgVXBkYXRpbmcgQ1NTU2NhbGUueSB0byBhbiBpbnZhbGlkIGRpdmlzaW9uIGJ5IHB4
L3B4IHRocm93cyBhIFR5cGVFcnJvciBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiQ1NTVW5pdFZh
bHVlIiBidXQgZ290ICJOdW1iZXIiCi1GQUlMIFVwZGF0aW5nIENTU1NjYWxlLnogdG8gYW4gYW5n
bGUgQ1NTVW5pdFZhbHVlIHRocm93cyBhIFR5cGVFcnJvciBhc3NlcnRfZXF1YWxzOiBleHBlY3Rl
ZCAiQ1NTVW5pdFZhbHVlIiBidXQgZ290ICJOdW1iZXIiCi1GQUlMIFVwZGF0aW5nIENTU1NjYWxl
LnogdG8gYSBDU1NNYXRoVmFsdWUgdGhhdCBkb2Vzbid0IG1hdGNoIDxudW1iZXI+IHRocm93cyBh
IFR5cGVFcnJvciBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiQ1NTVW5pdFZhbHVlIiBidXQgZ290
ICJOdW1iZXIiCi1GQUlMIFVwZGF0aW5nIENTU1NjYWxlLnogdG8gYW4gaW52YWxpZCBkaXZpc2lv
biBieSBweC9weCB0aHJvd3MgYSBUeXBlRXJyb3IgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIkNT
U1VuaXRWYWx1ZSIgYnV0IGdvdCAiTnVtYmVyIgotRkFJTCBDU1NTY2FsZSBjYW4gYmUgY29uc3Ry
dWN0ZWQgZnJvbSB0d28gbnVtYmVyIGNvb3JkaW5hdGVzIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVk
ICJDU1NVbml0VmFsdWUiIGJ1dCBnb3QgIk51bWJlciIKLUZBSUwgQ1NTU2NhbGUgY2FuIGJlIGNv
bnN0cnVjdGVkIGZyb20gdGhyZWUgbnVtYmVyIGNvb3JkaW5hdGVzIGFzc2VydF9lcXVhbHM6IGV4
cGVjdGVkICJDU1NVbml0VmFsdWUiIGJ1dCBnb3QgIk51bWJlciIKK1BBU1MgVXBkYXRpbmcgQ1NT
U2NhbGUueCB0byBhbiBhbmdsZSBDU1NVbml0VmFsdWUgdGhyb3dzIGEgVHlwZUVycm9yCitQQVNT
IFVwZGF0aW5nIENTU1NjYWxlLnggdG8gYSBDU1NNYXRoVmFsdWUgdGhhdCBkb2Vzbid0IG1hdGNo
IDxudW1iZXI+IHRocm93cyBhIFR5cGVFcnJvcgorUEFTUyBVcGRhdGluZyBDU1NTY2FsZS54IHRv
IGFuIGludmFsaWQgZGl2aXNpb24gYnkgcHgvcHggdGhyb3dzIGEgVHlwZUVycm9yCitQQVNTIFVw
ZGF0aW5nIENTU1NjYWxlLnkgdG8gYW4gYW5nbGUgQ1NTVW5pdFZhbHVlIHRocm93cyBhIFR5cGVF
cnJvcgorUEFTUyBVcGRhdGluZyBDU1NTY2FsZS55IHRvIGEgQ1NTTWF0aFZhbHVlIHRoYXQgZG9l
c24ndCBtYXRjaCA8bnVtYmVyPiB0aHJvd3MgYSBUeXBlRXJyb3IKK1BBU1MgVXBkYXRpbmcgQ1NT
U2NhbGUueSB0byBhbiBpbnZhbGlkIGRpdmlzaW9uIGJ5IHB4L3B4IHRocm93cyBhIFR5cGVFcnJv
cgorUEFTUyBVcGRhdGluZyBDU1NTY2FsZS56IHRvIGFuIGFuZ2xlIENTU1VuaXRWYWx1ZSB0aHJv
d3MgYSBUeXBlRXJyb3IKK1BBU1MgVXBkYXRpbmcgQ1NTU2NhbGUueiB0byBhIENTU01hdGhWYWx1
ZSB0aGF0IGRvZXNuJ3QgbWF0Y2ggPG51bWJlcj4gdGhyb3dzIGEgVHlwZUVycm9yCitQQVNTIFVw
ZGF0aW5nIENTU1NjYWxlLnogdG8gYW4gaW52YWxpZCBkaXZpc2lvbiBieSBweC9weCB0aHJvd3Mg
YSBUeXBlRXJyb3IKK1BBU1MgQ1NTU2NhbGUgY2FuIGJlIGNvbnN0cnVjdGVkIGZyb20gdHdvIG51
bWJlciBjb29yZGluYXRlcworUEFTUyBDU1NTY2FsZSBjYW4gYmUgY29uc3RydWN0ZWQgZnJvbSB0
aHJlZSBudW1iZXIgY29vcmRpbmF0ZXMKIFBBU1MgQ1NTU2NhbGUgY2FuIGJlIGNvbnN0cnVjdGVk
IGZyb20gQ1NTTWF0aFZhbHVlIGNvb3JkaW5hdGVzCi1GQUlMIENTU1NjYWxlLnggY2FuIGJlIHVw
ZGF0ZWQgdG8gYSBudW1iZXIgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIkNTU1VuaXRWYWx1ZSIg
YnV0IGdvdCAiTnVtYmVyIgorUEFTUyBDU1NTY2FsZS54IGNhbiBiZSB1cGRhdGVkIHRvIGEgbnVt
YmVyCiBQQVNTIENTU1NjYWxlLnggY2FuIGJlIHVwZGF0ZWQgdG8gYSBudW1iZXJpc2gKIFBBU1Mg
Q1NTU2NhbGUueCBjYW4gYmUgdXBkYXRlZCB0byBhIENTU01hdGhWYWx1ZQotRkFJTCBDU1NTY2Fs
ZS55IGNhbiBiZSB1cGRhdGVkIHRvIGEgbnVtYmVyIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJD
U1NVbml0VmFsdWUiIGJ1dCBnb3QgIk51bWJlciIKK1BBU1MgQ1NTU2NhbGUueSBjYW4gYmUgdXBk
YXRlZCB0byBhIG51bWJlcgogUEFTUyBDU1NTY2FsZS55IGNhbiBiZSB1cGRhdGVkIHRvIGEgbnVt
YmVyaXNoCiBQQVNTIENTU1NjYWxlLnkgY2FuIGJlIHVwZGF0ZWQgdG8gYSBDU1NNYXRoVmFsdWUK
LUZBSUwgQ1NTU2NhbGUueiBjYW4gYmUgdXBkYXRlZCB0byBhIG51bWJlciBhc3NlcnRfZXF1YWxz
OiBleHBlY3RlZCAiQ1NTVW5pdFZhbHVlIiBidXQgZ290ICJOdW1iZXIiCitQQVNTIENTU1NjYWxl
LnogY2FuIGJlIHVwZGF0ZWQgdG8gYSBudW1iZXIKIFBBU1MgQ1NTU2NhbGUueiBjYW4gYmUgdXBk
YXRlZCB0byBhIG51bWJlcmlzaAogUEFTUyBDU1NTY2FsZS56IGNhbiBiZSB1cGRhdGVkIHRvIGEg
Q1NTTWF0aFZhbHVlCiBQQVNTIE1vZGlmeWluZyBDU1NTY2FsZS5pczJEIGNhbiBiZSB1cGRhdGVk
IHRvIHRydWUgb3IgZmFsc2UKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy10eXBlZC1vbS9zdHlsZXZhbHVlLXN1YmNsYXNzZXMv
Y3NzU2tldy50ZW50YXRpdmUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXR5cGVkLW9tL3N0eWxldmFsdWUtc3ViY2xhc3Nl
cy9jc3NTa2V3LnRlbnRhdGl2ZS1leHBlY3RlZC50eHQKaW5kZXggMmMzYjc0MzViMzljNjcyMGQx
OWY4NWE5YjRmNmQ4MzZlODEzYzc2Yy4uNDU0MDIyNjNiMGZkNmVjZTcwMWE4MTJiOGFmMzIyN2Vl
OWQ4MmU3MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3MvY3NzLXR5cGVkLW9tL3N0eWxldmFsdWUtc3ViY2xhc3Nlcy9jc3NTa2V3LnRl
bnRhdGl2ZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXR5cGVkLW9tL3N0eWxldmFsdWUtc3ViY2xhc3Nlcy9jc3NT
a2V3LnRlbnRhdGl2ZS1leHBlY3RlZC50eHQKQEAgLTMsOSArMyw5IEBAIFBBU1MgQ29uc3RydWN0
aW5nIGEgQ1NTU2tldyB3aXRoIGEga2V5d29yZCB0aHJvd3MgYSBUeXBlRXJyb3IKIFBBU1MgQ29u
c3RydWN0aW5nIGEgQ1NTU2tldyB3aXRoIGEgZG91YmxlIHRocm93cyBhIFR5cGVFcnJvcgogUEFT
UyBDb25zdHJ1Y3RpbmcgYSBDU1NTa2V3IHdpdGggYSB1bml0bGVzcyB6ZXJvIHRocm93cyBhIFR5
cGVFcnJvcgogUEFTUyBDb25zdHJ1Y3RpbmcgYSBDU1NTa2V3IHdpdGggYSBzdHJpbmcgYW5nbGUg
dGhyb3dzIGEgVHlwZUVycm9yCi1GQUlMIENvbnN0cnVjdGluZyBhIENTU1NrZXcgd2l0aCBhIG51
bWJlciBDU1NVbml0VmFsdWUgdGhyb3dzIGEgVHlwZUVycm9yIGFzc2VydF90aHJvd3NfanM6IGZ1
bmN0aW9uICIoKSA9PiBuZXcgQ1NTU2tldyh2YWx1ZSwgQ1NTLmRlZygwKSkiIGRpZCBub3QgdGhy
b3cKLUZBSUwgQ29uc3RydWN0aW5nIGEgQ1NTU2tldyB3aXRoIGEgdGltZSBkaW1lbnNpb24gQ1NT
VW5pdFZhbHVlIHRocm93cyBhIFR5cGVFcnJvciBhc3NlcnRfdGhyb3dzX2pzOiBmdW5jdGlvbiAi
KCkgPT4gbmV3IENTU1NrZXcodmFsdWUsIENTUy5kZWcoMCkpIiBkaWQgbm90IHRocm93Ci1GQUlM
IENvbnN0cnVjdGluZyBhIENTU1NrZXcgd2l0aCBhIENTU01hdGhWYWx1ZSBvZiBsZW5ndGggdHlw
ZSB0aHJvd3MgYSBUeXBlRXJyb3IgYXNzZXJ0X3Rocm93c19qczogZnVuY3Rpb24gIigpID0+IG5l
dyBDU1NTa2V3KHZhbHVlLCBDU1MuZGVnKDApKSIgZGlkIG5vdCB0aHJvdworUEFTUyBDb25zdHJ1
Y3RpbmcgYSBDU1NTa2V3IHdpdGggYSBudW1iZXIgQ1NTVW5pdFZhbHVlIHRocm93cyBhIFR5cGVF
cnJvcgorUEFTUyBDb25zdHJ1Y3RpbmcgYSBDU1NTa2V3IHdpdGggYSB0aW1lIGRpbWVuc2lvbiBD
U1NVbml0VmFsdWUgdGhyb3dzIGEgVHlwZUVycm9yCitQQVNTIENvbnN0cnVjdGluZyBhIENTU1Nr
ZXcgd2l0aCBhIENTU01hdGhWYWx1ZSBvZiBsZW5ndGggdHlwZSB0aHJvd3MgYSBUeXBlRXJyb3IK
IFBBU1MgVXBkYXRpbmcgQ1NTU2tldy5heCB3aXRoIGEga2V5d29yZCB0aHJvd3MgYSBUeXBlRXJy
b3IKIFBBU1MgVXBkYXRpbmcgQ1NTU2tldy5heCB3aXRoIGEgZG91YmxlIHRocm93cyBhIFR5cGVF
cnJvcgogUEFTUyBVcGRhdGluZyBDU1NTa2V3LmF4IHdpdGggYSB1bml0bGVzcyB6ZXJvIHRocm93
cyBhIFR5cGVFcnJvcgpAQCAtMjAsMTAgKzIwLDEwIEBAIFBBU1MgVXBkYXRpbmcgQ1NTU2tldy5h
eSB3aXRoIGEgc3RyaW5nIGFuZ2xlIHRocm93cyBhIFR5cGVFcnJvcgogRkFJTCBVcGRhdGluZyBD
U1NTa2V3LmF5IHdpdGggYSBudW1iZXIgQ1NTVW5pdFZhbHVlIHRocm93cyBhIFR5cGVFcnJvciBh
c3NlcnRfdGhyb3dzX2pzOiBmdW5jdGlvbiAiKCkgPT4gc2tld1thdHRyXSA9IHZhbHVlIiBkaWQg
bm90IHRocm93CiBGQUlMIFVwZGF0aW5nIENTU1NrZXcuYXkgd2l0aCBhIHRpbWUgZGltZW5zaW9u
IENTU1VuaXRWYWx1ZSB0aHJvd3MgYSBUeXBlRXJyb3IgYXNzZXJ0X3Rocm93c19qczogZnVuY3Rp
b24gIigpID0+IHNrZXdbYXR0cl0gPSB2YWx1ZSIgZGlkIG5vdCB0aHJvdwogRkFJTCBVcGRhdGlu
ZyBDU1NTa2V3LmF5IHdpdGggYSBDU1NNYXRoVmFsdWUgb2YgbGVuZ3RoIHR5cGUgdGhyb3dzIGEg
VHlwZUVycm9yIGFzc2VydF90aHJvd3NfanM6IGZ1bmN0aW9uICIoKSA9PiBza2V3W2F0dHJdID0g
dmFsdWUiIGRpZCBub3QgdGhyb3cKLUZBSUwgQ1NTU2tldyBjYW4gYmUgY29uc3RydWN0ZWQgZnJv
bSBhbiBhbmdsZSBDU1NVbml0VmFsdWUgYW5kIGFuIGFuZ2xlIENTU1VuaXRWYWx1ZSBhc3NlcnRf
dHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgQ1NTU2tldyBjYW4gYmUgY29uc3Ry
dWN0ZWQgZnJvbSBhbiBhbmdsZSBDU1NVbml0VmFsdWUgYW5kIGEgQ1NTTWF0aFZhbHVlIG9mIGFu
Z2xlIHR5cGUgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIENTU1Nr
ZXcgY2FuIGJlIGNvbnN0cnVjdGVkIGZyb20gYSBDU1NNYXRoVmFsdWUgb2YgYW5nbGUgdHlwZSBh
bmQgYW4gYW5nbGUgQ1NTVW5pdFZhbHVlIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBm
YWxzZQotRkFJTCBDU1NTa2V3IGNhbiBiZSBjb25zdHJ1Y3RlZCBmcm9tIGEgQ1NTTWF0aFZhbHVl
IG9mIGFuZ2xlIHR5cGUgYW5kIGEgQ1NTTWF0aFZhbHVlIG9mIGFuZ2xlIHR5cGUgYXNzZXJ0X3Ry
dWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTIENTU1NrZXcgY2FuIGJlIGNvbnN0cnVj
dGVkIGZyb20gYW4gYW5nbGUgQ1NTVW5pdFZhbHVlIGFuZCBhbiBhbmdsZSBDU1NVbml0VmFsdWUK
K1BBU1MgQ1NTU2tldyBjYW4gYmUgY29uc3RydWN0ZWQgZnJvbSBhbiBhbmdsZSBDU1NVbml0VmFs
dWUgYW5kIGEgQ1NTTWF0aFZhbHVlIG9mIGFuZ2xlIHR5cGUKK1BBU1MgQ1NTU2tldyBjYW4gYmUg
Y29uc3RydWN0ZWQgZnJvbSBhIENTU01hdGhWYWx1ZSBvZiBhbmdsZSB0eXBlIGFuZCBhbiBhbmds
ZSBDU1NVbml0VmFsdWUKK1BBU1MgQ1NTU2tldyBjYW4gYmUgY29uc3RydWN0ZWQgZnJvbSBhIENT
U01hdGhWYWx1ZSBvZiBhbmdsZSB0eXBlIGFuZCBhIENTU01hdGhWYWx1ZSBvZiBhbmdsZSB0eXBl
CiBQQVNTIENTU1NrZXcuYXggY2FuIGJlIHVwZGF0ZWQgdG8gYW4gYW5nbGUgQ1NTVW5pdFZhbHVl
CiBQQVNTIENTU1NrZXcuYXggY2FuIGJlIHVwZGF0ZWQgdG8gYSBDU1NNYXRoVmFsdWUgb2YgYW5n
bGUgdHlwZQogUEFTUyBDU1NTa2V3LmF5IGNhbiBiZSB1cGRhdGVkIHRvIGFuIGFuZ2xlIENTU1Vu
aXRWYWx1ZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3MvY3NzLXR5cGVkLW9tL3N0eWxldmFsdWUtc3ViY2xhc3Nlcy9jc3NTa2V3WC50
ZW50YXRpdmUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3MvY3NzLXR5cGVkLW9tL3N0eWxldmFsdWUtc3ViY2xhc3Nlcy9jc3NTa2V3
WC50ZW50YXRpdmUtZXhwZWN0ZWQudHh0CmluZGV4IGExMjljZmI5MmQ0ODAxY2MxMWJjNWFhMjI1
NmQ5NWJmMjQwOTIwOTEuLjM4NjJhMzYzZTMyOWI3MjVlZDVjMDU5ZTg5MmJmZTNmNGE2YWFlZDQg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL2Nzcy10eXBlZC1vbS9zdHlsZXZhbHVlLXN1YmNsYXNzZXMvY3NzU2tld1gudGVudGF0aXZl
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9jc3MtdHlwZWQtb20vc3R5bGV2YWx1ZS1zdWJjbGFzc2VzL2Nzc1NrZXdYLnRl
bnRhdGl2ZS1leHBlY3RlZC50eHQKQEAgLTMsOSArMyw5IEBAIFBBU1MgQ29uc3RydWN0aW5nIGEg
Q1NTU2tld1ggd2l0aCBhIGtleXdvcmQgdGhyb3dzIGEgVHlwZUVycm9yCiBQQVNTIENvbnN0cnVj
dGluZyBhIENTU1NrZXdYIHdpdGggYSBkb3VibGUgdGhyb3dzIGEgVHlwZUVycm9yCiBQQVNTIENv
bnN0cnVjdGluZyBhIENTU1NrZXdYIHdpdGggYSB1bml0bGVzcyB6ZXJvIHRocm93cyBhIFR5cGVF
cnJvcgogUEFTUyBDb25zdHJ1Y3RpbmcgYSBDU1NTa2V3WCB3aXRoIGEgc3RyaW5nIGFuZ2xlIHRo
cm93cyBhIFR5cGVFcnJvcgotRkFJTCBDb25zdHJ1Y3RpbmcgYSBDU1NTa2V3WCB3aXRoIGEgbnVt
YmVyIENTU1VuaXRWYWx1ZSB0aHJvd3MgYSBUeXBlRXJyb3IgYXNzZXJ0X3Rocm93c19qczogZnVu
Y3Rpb24gIigpID0+IG5ldyBDU1NTa2V3WCh2YWx1ZSkiIGRpZCBub3QgdGhyb3cKLUZBSUwgQ29u
c3RydWN0aW5nIGEgQ1NTU2tld1ggd2l0aCBhIHRpbWUgZGltZW5zaW9uIENTU1VuaXRWYWx1ZSB0
aHJvd3MgYSBUeXBlRXJyb3IgYXNzZXJ0X3Rocm93c19qczogZnVuY3Rpb24gIigpID0+IG5ldyBD
U1NTa2V3WCh2YWx1ZSkiIGRpZCBub3QgdGhyb3cKLUZBSUwgQ29uc3RydWN0aW5nIGEgQ1NTU2tl
d1ggd2l0aCBhIENTU01hdGhWYWx1ZSBvZiBsZW5ndGggdHlwZSB0aHJvd3MgYSBUeXBlRXJyb3Ig
YXNzZXJ0X3Rocm93c19qczogZnVuY3Rpb24gIigpID0+IG5ldyBDU1NTa2V3WCh2YWx1ZSkiIGRp
ZCBub3QgdGhyb3cKK1BBU1MgQ29uc3RydWN0aW5nIGEgQ1NTU2tld1ggd2l0aCBhIG51bWJlciBD
U1NVbml0VmFsdWUgdGhyb3dzIGEgVHlwZUVycm9yCitQQVNTIENvbnN0cnVjdGluZyBhIENTU1Nr
ZXdYIHdpdGggYSB0aW1lIGRpbWVuc2lvbiBDU1NVbml0VmFsdWUgdGhyb3dzIGEgVHlwZUVycm9y
CitQQVNTIENvbnN0cnVjdGluZyBhIENTU1NrZXdYIHdpdGggYSBDU1NNYXRoVmFsdWUgb2YgbGVu
Z3RoIHR5cGUgdGhyb3dzIGEgVHlwZUVycm9yCiBQQVNTIFVwZGF0aW5nIENTU1NrZXdYLmF4IHdp
dGggYSBrZXl3b3JkIHRocm93cyBhIFR5cGVFcnJvcgogUEFTUyBVcGRhdGluZyBDU1NTa2V3WC5h
eCB3aXRoIGEgZG91YmxlIHRocm93cyBhIFR5cGVFcnJvcgogUEFTUyBVcGRhdGluZyBDU1NTa2V3
WC5heCB3aXRoIGEgdW5pdGxlc3MgemVybyB0aHJvd3MgYSBUeXBlRXJyb3IKQEAgLTEzLDggKzEz
LDggQEAgUEFTUyBVcGRhdGluZyBDU1NTa2V3WC5heCB3aXRoIGEgc3RyaW5nIGFuZ2xlIHRocm93
cyBhIFR5cGVFcnJvcgogRkFJTCBVcGRhdGluZyBDU1NTa2V3WC5heCB3aXRoIGEgbnVtYmVyIENT
U1VuaXRWYWx1ZSB0aHJvd3MgYSBUeXBlRXJyb3IgYXNzZXJ0X3Rocm93c19qczogZnVuY3Rpb24g
IigpID0+IHNrZXdYLmF4ID0gdmFsdWUiIGRpZCBub3QgdGhyb3cKIEZBSUwgVXBkYXRpbmcgQ1NT
U2tld1guYXggd2l0aCBhIHRpbWUgZGltZW5zaW9uIENTU1VuaXRWYWx1ZSB0aHJvd3MgYSBUeXBl
RXJyb3IgYXNzZXJ0X3Rocm93c19qczogZnVuY3Rpb24gIigpID0+IHNrZXdYLmF4ID0gdmFsdWUi
IGRpZCBub3QgdGhyb3cKIEZBSUwgVXBkYXRpbmcgQ1NTU2tld1guYXggd2l0aCBhIENTU01hdGhW
YWx1ZSBvZiBsZW5ndGggdHlwZSB0aHJvd3MgYSBUeXBlRXJyb3IgYXNzZXJ0X3Rocm93c19qczog
ZnVuY3Rpb24gIigpID0+IHNrZXdYLmF4ID0gdmFsdWUiIGRpZCBub3QgdGhyb3cKLUZBSUwgQ1NT
U2tld1ggY2FuIGJlIGNvbnN0cnVjdGVkIGZyb20gYW4gYW5nbGUgQ1NTVW5pdFZhbHVlIGFzc2Vy
dF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBDU1NTa2V3WCBjYW4gYmUgY29u
c3RydWN0ZWQgZnJvbSBhIENTU01hdGhWYWx1ZSBvZiBhbmdsZSB0eXBlIGFzc2VydF90cnVlOiBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyBDU1NTa2V3WCBjYW4gYmUgY29uc3RydWN0ZWQg
ZnJvbSBhbiBhbmdsZSBDU1NVbml0VmFsdWUKK1BBU1MgQ1NTU2tld1ggY2FuIGJlIGNvbnN0cnVj
dGVkIGZyb20gYSBDU1NNYXRoVmFsdWUgb2YgYW5nbGUgdHlwZQogUEFTUyBDU1NTa2V3LmF4IGNh
biBiZSB1cGRhdGVkIHRvIGFuIGFuZ2xlIENTU1VuaXRWYWx1ZQogUEFTUyBDU1NTa2V3LmF4IGNh
biBiZSB1cGRhdGVkIHRvIGEgQ1NTTWF0aFZhbHVlIG9mIGFuZ2xlIHR5cGUKIEZBSUwgTW9kaWZ5
aW5nIHNrZXdYLmlzMkQgaXMgYSBuby1vcCBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3Qg
ZmFsc2UKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy10eXBlZC1vbS9zdHlsZXZhbHVlLXN1YmNsYXNzZXMvY3NzU2tld1kudGVu
dGF0aXZlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzcy10eXBlZC1vbS9zdHlsZXZhbHVlLXN1YmNsYXNzZXMvY3NzU2tld1ku
dGVudGF0aXZlLWV4cGVjdGVkLnR4dAppbmRleCA0YmU5Y2M0MzViM2QxMGUyNDQ5YjJkOTNjOGUw
MDUwMDg5Y2FjZTk3Li4yOTI5Y2QyYTRiNWJmMTE2ZDBjNmM1ODJiMzAxYTE4MTBhMWZlODJiIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9jc3MtdHlwZWQtb20vc3R5bGV2YWx1ZS1zdWJjbGFzc2VzL2Nzc1NrZXdZLnRlbnRhdGl2ZS1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLXR5cGVkLW9tL3N0eWxldmFsdWUtc3ViY2xhc3Nlcy9jc3NTa2V3WS50ZW50
YXRpdmUtZXhwZWN0ZWQudHh0CkBAIC0zLDkgKzMsOSBAQCBQQVNTIENvbnN0cnVjdGluZyBhIENT
U1NrZXdZIHdpdGggYSBrZXl3b3JkIHRocm93cyBhIFR5cGVFcnJvcgogUEFTUyBDb25zdHJ1Y3Rp
bmcgYSBDU1NTa2V3WSB3aXRoIGEgZG91YmxlIHRocm93cyBhIFR5cGVFcnJvcgogUEFTUyBDb25z
dHJ1Y3RpbmcgYSBDU1NTa2V3WSB3aXRoIGEgdW5pdGxlc3MgemVybyB0aHJvd3MgYSBUeXBlRXJy
b3IKIFBBU1MgQ29uc3RydWN0aW5nIGEgQ1NTU2tld1kgd2l0aCBhIHN0cmluZyBhbmdsZSB0aHJv
d3MgYSBUeXBlRXJyb3IKLUZBSUwgQ29uc3RydWN0aW5nIGEgQ1NTU2tld1kgd2l0aCBhIG51bWJl
ciBDU1NVbml0VmFsdWUgdGhyb3dzIGEgVHlwZUVycm9yIGFzc2VydF90aHJvd3NfanM6IGZ1bmN0
aW9uICIoKSA9PiBuZXcgQ1NTU2tld1kodmFsdWUpIiBkaWQgbm90IHRocm93Ci1GQUlMIENvbnN0
cnVjdGluZyBhIENTU1NrZXdZIHdpdGggYSB0aW1lIGRpbWVuc2lvbiBDU1NVbml0VmFsdWUgdGhy
b3dzIGEgVHlwZUVycm9yIGFzc2VydF90aHJvd3NfanM6IGZ1bmN0aW9uICIoKSA9PiBuZXcgQ1NT
U2tld1kodmFsdWUpIiBkaWQgbm90IHRocm93Ci1GQUlMIENvbnN0cnVjdGluZyBhIENTU1NrZXdZ
IHdpdGggYSBDU1NNYXRoVmFsdWUgb2YgbGVuZ3RoIHR5cGUgdGhyb3dzIGEgVHlwZUVycm9yIGFz
c2VydF90aHJvd3NfanM6IGZ1bmN0aW9uICIoKSA9PiBuZXcgQ1NTU2tld1kodmFsdWUpIiBkaWQg
bm90IHRocm93CitQQVNTIENvbnN0cnVjdGluZyBhIENTU1NrZXdZIHdpdGggYSBudW1iZXIgQ1NT
VW5pdFZhbHVlIHRocm93cyBhIFR5cGVFcnJvcgorUEFTUyBDb25zdHJ1Y3RpbmcgYSBDU1NTa2V3
WSB3aXRoIGEgdGltZSBkaW1lbnNpb24gQ1NTVW5pdFZhbHVlIHRocm93cyBhIFR5cGVFcnJvcgor
UEFTUyBDb25zdHJ1Y3RpbmcgYSBDU1NTa2V3WSB3aXRoIGEgQ1NTTWF0aFZhbHVlIG9mIGxlbmd0
aCB0eXBlIHRocm93cyBhIFR5cGVFcnJvcgogUEFTUyBVcGRhdGluZyBDU1NTa2V3WS5heSB3aXRo
IGEga2V5d29yZCB0aHJvd3MgYSBUeXBlRXJyb3IKIFBBU1MgVXBkYXRpbmcgQ1NTU2tld1kuYXkg
d2l0aCBhIGRvdWJsZSB0aHJvd3MgYSBUeXBlRXJyb3IKIFBBU1MgVXBkYXRpbmcgQ1NTU2tld1ku
YXkgd2l0aCBhIHVuaXRsZXNzIHplcm8gdGhyb3dzIGEgVHlwZUVycm9yCkBAIC0xMyw4ICsxMyw4
IEBAIFBBU1MgVXBkYXRpbmcgQ1NTU2tld1kuYXkgd2l0aCBhIHN0cmluZyBhbmdsZSB0aHJvd3Mg
YSBUeXBlRXJyb3IKIEZBSUwgVXBkYXRpbmcgQ1NTU2tld1kuYXkgd2l0aCBhIG51bWJlciBDU1NV
bml0VmFsdWUgdGhyb3dzIGEgVHlwZUVycm9yIGFzc2VydF90aHJvd3NfanM6IGZ1bmN0aW9uICIo
KSA9PiBza2V3WS5heSA9IHZhbHVlIiBkaWQgbm90IHRocm93CiBGQUlMIFVwZGF0aW5nIENTU1Nr
ZXdZLmF5IHdpdGggYSB0aW1lIGRpbWVuc2lvbiBDU1NVbml0VmFsdWUgdGhyb3dzIGEgVHlwZUVy
cm9yIGFzc2VydF90aHJvd3NfanM6IGZ1bmN0aW9uICIoKSA9PiBza2V3WS5heSA9IHZhbHVlIiBk
aWQgbm90IHRocm93CiBGQUlMIFVwZGF0aW5nIENTU1NrZXdZLmF5IHdpdGggYSBDU1NNYXRoVmFs
dWUgb2YgbGVuZ3RoIHR5cGUgdGhyb3dzIGEgVHlwZUVycm9yIGFzc2VydF90aHJvd3NfanM6IGZ1
bmN0aW9uICIoKSA9PiBza2V3WS5heSA9IHZhbHVlIiBkaWQgbm90IHRocm93Ci1GQUlMIENTU1Nr
ZXdZIGNhbiBiZSBjb25zdHJ1Y3RlZCBmcm9tIGFuIGFuZ2xlIENTU1VuaXRWYWx1ZSBhc3NlcnRf
dHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgQ1NTU2tld1kgY2FuIGJlIGNvbnN0
cnVjdGVkIGZyb20gYSBDU1NNYXRoVmFsdWUgb2YgYW5nbGUgdHlwZSBhc3NlcnRfdHJ1ZTogZXhw
ZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgQ1NTU2tld1kgY2FuIGJlIGNvbnN0cnVjdGVkIGZy
b20gYW4gYW5nbGUgQ1NTVW5pdFZhbHVlCitQQVNTIENTU1NrZXdZIGNhbiBiZSBjb25zdHJ1Y3Rl
ZCBmcm9tIGEgQ1NTTWF0aFZhbHVlIG9mIGFuZ2xlIHR5cGUKIFBBU1MgQ1NTU2tld1kuYXkgY2Fu
IGJlIHVwZGF0ZWQgdG8gYW4gYW5nbGUgQ1NTVW5pdFZhbHVlCiBQQVNTIENTU1NrZXdZLmF5IGNh
biBiZSB1cGRhdGVkIHRvIGEgQ1NTTWF0aFZhbHVlIG9mIGFuZ2xlIHR5cGUKIEZBSUwgTW9kaWZ5
aW5nIHNrZXdZLmlzMkQgaXMgYSBuby1vcCBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3Qg
ZmFsc2UKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy10eXBlZC1vbS9zdHlsZXZhbHVlLXN1YmNsYXNzZXMvY3NzVHJhbnNmb3Jt
VmFsdWUudGVudGF0aXZlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy10eXBlZC1vbS9zdHlsZXZhbHVlLXN1YmNsYXNzZXMv
Y3NzVHJhbnNmb3JtVmFsdWUudGVudGF0aXZlLWV4cGVjdGVkLnR4dAppbmRleCBlNjNkM2I3ODFk
OGMxMzE1N2JmY2Q4NjE0NDI2YjY1Y2ZkMDllYTcwLi42NzZjYTVhOWE3OGUyYzYzNGU5OTVhMzBl
ZGRlYmY0OWFhNWMwZTdhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdHlwZWQtb20vc3R5bGV2YWx1ZS1zdWJjbGFzc2VzL2Nz
c1RyYW5zZm9ybVZhbHVlLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXR5cGVkLW9tL3N0eWxldmFs
dWUtc3ViY2xhc3Nlcy9jc3NUcmFuc2Zvcm1WYWx1ZS50ZW50YXRpdmUtZXhwZWN0ZWQudHh0CkBA
IC0xLDEwICsxLDEwIEBACiAKLUZBSUwgQ29uc3RydWN0aW5nIGEgQ1NTVHJhbnNmb3JtVmFsdWUg
d2l0aCBubyBjb21wb25lbnRzIHRocm93cyBUeXBlRXJyb3IgYXNzZXJ0X3Rocm93c19qczogZnVu
Y3Rpb24gIigpID0+IG5ldyBDU1NUcmFuc2Zvcm1WYWx1ZShbXSkiIGRpZCBub3QgdGhyb3cKK1BB
U1MgQ29uc3RydWN0aW5nIGEgQ1NTVHJhbnNmb3JtVmFsdWUgd2l0aCBubyBjb21wb25lbnRzIHRo
cm93cyBUeXBlRXJyb3IKIFBBU1MgQ1NTVHJhbnNmb3JtVmFsdWUgY2FuIGJlIGNvbnN0cnVjdGVk
IHdpdGggbXVsdGlwbGUgdHJhbnNmb3JtcwogUEFTUyBDU1NUcmFuc2Zvcm1WYWx1ZS5zZXQgY29y
cmVjdGx5IHNldHMgdGhlIENTU1RyYW5zZm9ybUNvbXBvbmVudCBhdCB0aGUgZ2l2ZW4gaW5kZXgK
LUZBSUwgU2V0dGluZyBhIGNvbXBvbmVudCBpbiBDU1NUcmFuc2Zvcm1WYWx1ZSBjb3JyZWN0bHkg
YXBwZW5kcyB0aGUgQ1NTVHJhbnNmb3JtQ29tcG9uZW50IGlmIGluZGV4IHNwZWNpZmllZCBpcyBn
cmVhdGVyIHRoYW4gbGVuZ3RoIEluZGV4IDMgZXhjZWVkcyB0aGUgcmFuZ2Ugb2YgQ1NTVHJhbnNm
b3JtVmFsdWUuCitQQVNTIFNldHRpbmcgYSBjb21wb25lbnQgaW4gQ1NTVHJhbnNmb3JtVmFsdWUg
Y29ycmVjdGx5IGFwcGVuZHMgdGhlIENTU1RyYW5zZm9ybUNvbXBvbmVudCBpZiBpbmRleCBzcGVj
aWZpZWQgaXMgZ3JlYXRlciB0aGFuIGxlbmd0aAogUEFTUyBDU1NUcmFuc2Zvcm1WYWx1ZS5pczJE
IGlzIGZhbHNlIHdoZW4gZ2l2ZW4gbWl4IG9mIDJEIGFuZCAzRCB0cmFuc2Zvcm1zCi1GQUlMIENT
U1RyYW5zZm9ybVZhbHVlLmlzMkQgaXMgdHJ1ZSB3aGVuIGdpdmVuIG9ubHkgMkQgdHJhbnNmb3Jt
cyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCB0cnVlIGJ1dCBnb3QgZmFsc2UKLUZBSUwgQ1NTVHJh
bnNmb3JtVmFsdWUuaXMyRCBpcyByZWFkb25seSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCB0cnVl
IGJ1dCBnb3QgZmFsc2UKK1BBU1MgQ1NTVHJhbnNmb3JtVmFsdWUuaXMyRCBpcyB0cnVlIHdoZW4g
Z2l2ZW4gb25seSAyRCB0cmFuc2Zvcm1zCitQQVNTIENTU1RyYW5zZm9ybVZhbHVlLmlzMkQgaXMg
cmVhZG9ubHkKIFBBU1MgQ2FuIGl0ZXJhdGUgdGhyb3VnaCBDU1NUcmFuc2Zvcm1WYWx1ZSBjb21w
b25lbnRzCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzcy10eXBlZC1vbS9zdHlsZXZhbHVlLXN1YmNsYXNzZXMvY3NzVHJhbnNs
YXRlLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdHlwZWQtb20vc3R5bGV2YWx1ZS1zdWJjbGFzc2VzL2Nz
c1RyYW5zbGF0ZS50ZW50YXRpdmUtZXhwZWN0ZWQudHh0CmluZGV4IDY3ZGU1NjAzNDRlMmZhNWFl
N2UyNWU1YmJjM2Q4NjliNGZhMDJmMTYuLmM4MDcyN2NjYjM1ZDVjZjRhNThjY2RkOWU2Zjc4NjI2
OTRlMTUxMjggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzcy10eXBlZC1vbS9zdHlsZXZhbHVlLXN1YmNsYXNzZXMvY3NzVHJhbnNs
YXRlLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXR5cGVkLW9tL3N0eWxldmFsdWUtc3ViY2xhc3Nl
cy9jc3NUcmFuc2xhdGUudGVudGF0aXZlLWV4cGVjdGVkLnR4dApAQCAtMSw2ICsxLDYgQEAKIAot
RkFJTCBDb25zdHJ1Y3RpbmcgYSBDU1NUcmFuc2xhdGUgd2l0aCBhIENTU1VuaXRWYWx1ZSB3aXRo
IHR5cGUgb3RoZXIgdGhhbiBsZW5ndGggb3IgcGVyY2VudCBmb3IgdGhlIGNvb3JkaW5hdGVzIHRo
cm93cyBhIFR5cGVFcnJvciBhc3NlcnRfdGhyb3dzX2pzOiBmdW5jdGlvbiAiKCkgPT4gbmV3IENT
U1RyYW5zbGF0ZShjb29yZCwgQ1NTLnB4KDApLCBDU1MucHgoMCkpIiBkaWQgbm90IHRocm93Ci1G
QUlMIENvbnN0cnVjdGluZyBhIENTU1RyYW5zbGF0ZSB3aXRoIGEgQ1NTTWF0aFZhbHVlIHRoYXQg
ZG9lc24ndCBtYXRjaCA8bGVuZ3RoLXBlcmNlbnRhZ2U+IGZvciB0aGUgY29vcmRpbmF0ZXMgdGhy
b3dzIGEgVHlwZUVycm9yIGFzc2VydF90aHJvd3NfanM6IGZ1bmN0aW9uICIoKSA9PiBuZXcgQ1NT
VHJhbnNsYXRlKGNvb3JkLCBDU1MucHgoMCksIENTUy5weCgwKSkiIGRpZCBub3QgdGhyb3cKK1BB
U1MgQ29uc3RydWN0aW5nIGEgQ1NTVHJhbnNsYXRlIHdpdGggYSBDU1NVbml0VmFsdWUgd2l0aCB0
eXBlIG90aGVyIHRoYW4gbGVuZ3RoIG9yIHBlcmNlbnQgZm9yIHRoZSBjb29yZGluYXRlcyB0aHJv
d3MgYSBUeXBlRXJyb3IKK1BBU1MgQ29uc3RydWN0aW5nIGEgQ1NTVHJhbnNsYXRlIHdpdGggYSBD
U1NNYXRoVmFsdWUgdGhhdCBkb2Vzbid0IG1hdGNoIDxsZW5ndGgtcGVyY2VudGFnZT4gZm9yIHRo
ZSBjb29yZGluYXRlcyB0aHJvd3MgYSBUeXBlRXJyb3IKIEZBSUwgQ29uc3RydWN0aW5nIGEgQ1NT
VHJhbnNsYXRlIHdpdGggYSBwZXJjZW50IGZvciB0aGUgWiBjb29yZGluYXRlIHRocm93cyBhIFR5
cGVFcnJvciBhc3NlcnRfdGhyb3dzX2pzOiBmdW5jdGlvbiAiKCkgPT4gbmV3IENTU1RyYW5zbGF0
ZShDU1MucHgoMCksIENTUy5weCgwKSwgQ1NTLnBlcmNlbnQoMCkpIiBkaWQgbm90IHRocm93CiBQ
QVNTIFVwZGF0aW5nIENTU1RyYW5zbGF0ZS54IHRvIGEgQ1NTVW5pdFZhbHVlIHdpdGggdHlwZSBv
dGhlciB0aGFuIGxlbmd0aCBvciBwZXJjZW50IHRocm93cyBhIFR5cGVFcnJvcgogUEFTUyBVcGRh
dGluZyBDU1NUcmFuc2xhdGUueCB0byBhIENTU01hdGhWYWx1ZSB0aGF0IGRvZXNuJ3QgbWF0Y2gg
PGxlbmd0aC1wZXJjZW50YWdlPiB0aHJvd3MgYSBUeXBlRXJyb3IKQEAgLTksOSArOSw5IEBAIFBB
U1MgVXBkYXRpbmcgQ1NTVHJhbnNsYXRlLnkgdG8gYSBDU1NNYXRoVmFsdWUgdGhhdCBkb2Vzbid0
IG1hdGNoIDxsZW5ndGgtcGVyY2VuCiBQQVNTIFVwZGF0aW5nIENTU1RyYW5zbGF0ZS56IHRvIGEg
Q1NTVW5pdFZhbHVlIHdpdGggdHlwZSBvdGhlciB0aGFuIGxlbmd0aCBvciBwZXJjZW50IHRocm93
cyBhIFR5cGVFcnJvcgogUEFTUyBVcGRhdGluZyBDU1NUcmFuc2xhdGUueiB0byBhIENTU01hdGhW
YWx1ZSB0aGF0IGRvZXNuJ3QgbWF0Y2ggPGxlbmd0aC1wZXJjZW50YWdlPiB0aHJvd3MgYSBUeXBl
RXJyb3IKIEZBSUwgVXBkYXRpbmcgQ1NTVHJhbnNsYXRlLnogdG8gYSBwZXJjZW50IHRocm93cyBh
IFR5cGVFcnJvciBhc3NlcnRfdGhyb3dzX2pzOiBmdW5jdGlvbiAiKCkgPT4gcmVzdWx0LnogPSBD
U1MucGVyY2VudCgwKSIgZGlkIG5vdCB0aHJvdwotRkFJTCBDU1NUcmFuc2xhdGUgY2FuIGJlIGNv
bnN0cnVjdGVkIGZyb20gdHdvIGxlbmd0aCBvciBwZXJjZW50IGNvb3JkaW5hdGVzIGFzc2VydF9l
cXVhbHM6IGV4cGVjdGVkIG9iamVjdCAiMHB4IiBidXQgZ290IG51bGwKK1BBU1MgQ1NTVHJhbnNs
YXRlIGNhbiBiZSBjb25zdHJ1Y3RlZCBmcm9tIHR3byBsZW5ndGggb3IgcGVyY2VudCBjb29yZGlu
YXRlcwogUEFTUyBDU1NUcmFuc2xhdGUgY2FuIGJlIGNvbnN0cnVjdGVkIGZyb20gdGhyZWUgbGVu
Z3RoIG9yIHBlcmNlbnQgY29vcmRpbmF0ZXMKLUZBSUwgQ1NTVHJhbnNsYXRlIGNhbiBiZSBjb25z
dHJ1Y3RlZCBmcm9tIENTU01hdGhWYWx1ZXMgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgb2JqZWN0
ICIwcHgiIGJ1dCBnb3QgbnVsbAorUEFTUyBDU1NUcmFuc2xhdGUgY2FuIGJlIGNvbnN0cnVjdGVk
IGZyb20gQ1NTTWF0aFZhbHVlcwogUEFTUyBDU1NUcmFuc2xhdGUueCBjYW4gYmUgdXBkYXRlZCB0
byBhIGxlbmd0aAogUEFTUyBDU1NUcmFuc2xhdGUueCBjYW4gYmUgdXBkYXRlZCB0byBhIHBlcmNl
bnQKIFBBU1MgQ1NTVHJhbnNsYXRlLnggY2FuIGJlIHVwZGF0ZWQgdG8gYSBDU1NNYXRoVmFsdWUK
</data>

          </attachment>
      

    </bug>

</bugzilla>