<?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>202259</bug_id>
          
          <creation_ts>2019-09-26 01:46:21 -0700</creation_ts>
          <short_desc>[css-grid] The computed value of grid-template-{columns|rows} should not expand repeat()</short_desc>
          <delta_ts>2022-03-27 21:19:20 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>CSS</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.chromium.org/p/chromium/issues/detail?id=989004</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>204580</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Oriol Brufau">obrufau</reporter>
          <assigned_to name="Matt Woodrow">mattwoodrow</assigned_to>
          <cc>changseok</cc>
    
    <cc>dino</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>graouts</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>jfernandez</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>macpherson</cc>
    
    <cc>mattwoodrow</cc>
    
    <cc>menard</cc>
    
    <cc>pdr</cc>
    
    <cc>rego</cc>
    
    <cc>svillar</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1574387</commentid>
    <comment_count>0</comment_count>
    <who name="Oriol Brufau">obrufau</who>
    <bug_when>2019-09-26 01:46:21 -0700</bug_when>
    <thetext>The repeat() notation with an integral number of repetitions used to be expanded at specified-value time.
After bug 197840, this happens at computed-value time. But this is still wrong, it should be expanded at used-value time.

Usually this is not noticeable because getComputedStyle returns the used value for grid containers.
But it&apos;s observable if the property is used in an element which is not a grid container.
Also, preserving repeat() is necessary for proper interpolation (https://github.com/w3c/csswg-drafts/issues/3503)

What steps will reproduce the problem?
(1) Load https://software.hixie.ch/utilities/js/live-dom-viewer/?%3C!DOCTYPE%20html%3E%0A%3Cdiv%20id%3D%22foo%22%20style%3D%22grid-template-rows%3A%20repeat(2%2C%20100px)%22%3E%3C%2Fdiv%3E%0A%3Cscript%3Ew(getComputedStyle(foo).gridTemplateRows)%3C%2Fscript%3E

    &lt;div id=&quot;foo&quot; style=&quot;grid-template-rows: repeat(2, 100px)&quot;&gt;&lt;/div&gt;
    &lt;script&gt;console.log(getComputedStyle(foo).gridTemplateRows)&lt;/script&gt;

What is the expected result?
It logs &quot;repeat(2, 100px)&quot;

What happens instead?
It logs &quot;100px 100px&quot;

Blink is also wrong: https://bugs.chromium.org/p/chromium/issues/detail?id=989004
Firefox fixed it: https://bugzilla.mozilla.org/show_bug.cgi?id=1519958</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1593437</commentid>
    <comment_count>1</comment_count>
    <who name="Oriol Brufau">obrufau</who>
    <bug_when>2019-11-25 08:02:28 -0800</bug_when>
    <thetext>Blocking bug 204580 since this affects interpolation.
https://drafts.csswg.org/css-grid/#repeat-interpolation</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1852109</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-03-16 19:45:28 -0700</bug_when>
    <thetext>&lt;rdar://problem/90406085&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1852110</commentid>
    <comment_count>3</comment_count>
      <attachid>454925</attachid>
    <who name="Matt Woodrow">mattwoodrow</who>
    <bug_when>2022-03-16 19:45:47 -0700</bug_when>
    <thetext>Created attachment 454925
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1855461</commentid>
    <comment_count>4</comment_count>
      <attachid>455869</attachid>
    <who name="Matt Woodrow">mattwoodrow</who>
    <bug_when>2022-03-27 16:19:00 -0700</bug_when>
    <thetext>Created attachment 455869
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1855492</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-03-27 21:19:16 -0700</bug_when>
    <thetext>Committed r291956 (248923@main): &lt;https://commits.webkit.org/248923@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 455869.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>454925</attachid>
            <date>2022-03-16 19:45:47 -0700</date>
            <delta_ts>2022-03-25 12:52:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-202259-20220317154545.patch</filename>
            <type>text/plain</type>
            <size>107723</size>
            <attacher name="Matt Woodrow">mattwoodrow</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxMDI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGJlOWQwMTYzNDIzNzM3
N2ExY2E1NWE0NDc5N2EyMDE5NTliMGYyZS4uODczNzM1MmY4ZThjYzE4OGM4ZGI5ZGViMTQ5OWIx
YTZlYTNlODU5YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyMyBAQAorMjAyMi0wMy0xNiAgTWF0
dCBXb29kcm93ICA8bWF0dHdvb2Ryb3dAYXBwbGUuY29tPgorCisgICAgICAgIFByZXNlcnZlIHJl
cGVhdCgpIG5vdGF0aW9uIGZvciBncmlkLXRlbXBsYXRlcworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyMjU5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBhbmltYXRpb24vQ1NTUHJvcGVydHlBbmltYXRp
b24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6YmxlbmRGdW5jKToKKyAgICAgICAgKFdlYkNvcmU6
OkNTU1Byb3BlcnR5QW5pbWF0aW9uV3JhcHBlck1hcDo6Q1NTUHJvcGVydHlBbmltYXRpb25XcmFw
cGVyTWFwKToKKyAgICAgICAgKFdlYkNvcmU6OkdyaWRUZW1wbGF0ZVRyYWNrc1dyYXBwZXI8Rm9y
Q29sdW1ucz46OkdyaWRUZW1wbGF0ZVRyYWNrc1dyYXBwZXIpOiBEZWxldGVkLgorICAgICAgICAo
V2ViQ29yZTo6R3JpZFRlbXBsYXRlVHJhY2tzV3JhcHBlcjxGb3JSb3dzPjo6R3JpZFRlbXBsYXRl
VHJhY2tzV3JhcHBlcik6IERlbGV0ZWQuCisKKyAgICAgICAgUmVwbGFjZXMgR3JpZFRlbXBsYXRl
VHJhY2tzV3JhcHBlciB3aXRoIGEgc2ltcGxlciBHcmlkVGVtcGxhdGVQcm9wZXJ0eVdyYXBwZXIg
dGhhdCBqdXN0IGNvbXBhcmVzIHRoZQorICAgICAgICB0cmFjayBsaXN0cy4gSW4gdGhlIGZ1dHVy
ZSB3ZSBjYW4gaXRlcmF0ZSB0aGUgdHdvIHRyYWNrcyBsaXN0cyBpbiBwYXJhbGxlbCBhbmQgaW50
ZXJwb2xhdGUgcGVyLWl0ZW0sCisgICAgICAgIGluIG9yZGVyIHRvIGdldCBhbmltYXRpb24gY29y
cmVjdCBwZXItc3BlYy4KKworICAgICAgICAqIGNzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRp
b24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6cG9wdWxhdGVHcmlkVHJhY2tMaXN0KToKKyAgICAg
ICAgKFdlYkNvcmU6OnBvcHVsYXRlU3ViZ3JpZExpbmVOYW1lTGlzdCk6CisgICAgICAgIChXZWJD
b3JlOjp2YWx1ZUZvckdyaWRUcmFja0xpc3QpOgorICAgICAgICAoV2ViQ29yZTo6T3JkZXJlZE5h
bWVkTGluZXNDb2xsZWN0b3JJbnNpZGVSZXBlYXQ6Ok9yZGVyZWROYW1lZExpbmVzQ29sbGVjdG9y
SW5zaWRlUmVwZWF0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6Ok9yZGVyZWROYW1lZExp
bmVzQ29sbGVjdG9yOjpjb2xsZWN0TGluZU5hbWVzRm9ySW5kZXggY29uc3QpOiBEZWxldGVkLgor
ICAgICAgICAoV2ViQ29yZTo6T3JkZXJlZE5hbWVkTGluZXNDb2xsZWN0b3JJbnNpZGVSZXBlYXQ6
OmNvbGxlY3RMaW5lTmFtZXNGb3JJbmRleCBjb25zdCk6IERlbGV0ZWQuCisKKyAgICAgICAgSW1w
bGVtZW50cyBnZXRDb21wdXRlZFN0eWxlIGJ5IGl0ZXJhdGluZyB0aGUgdHJhY2sgbGlzdCBhbmQg
ZG9pbmcgYSAxOjEgY29udmVyc2lvbiB0byBDU1NWYWx1ZXMsIGluc3RlYWQKKyAgICAgICAgb2Yg
cmVjb25zdHJ1Y3RpbmcgZnJvbSB0aGUgcHJvY2Vzc2VkIGhhc2h0YWJsZXMuCisgICAgICAgIFRo
aXMgY29ycmVjdGx5IHByZXNlcnZlcyByZXBlYXQoKSBpbnN0YW5jZXMgaW4gdGhlIHRyYWNrIGxp
c3QsIHdoaWNoIHdlcmVuJ3QgcmV0cmVpdmFibGUgZnJvbSB0aGUgcHJvY2Vzc2VkCisgICAgICAg
IGRhdGEuCisKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaDoKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjpncmlkQ29sdW1ucyBjb25zdCk6CisgICAgICAgIChX
ZWJDb3JlOjpSZW5kZXJTdHlsZTo6Z3JpZFJvd3MgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6
UmVuZGVyU3R5bGU6OmdyaWRDb2x1bW5MaXN0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJl
bmRlclN0eWxlOjpncmlkUm93TGlzdCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJT
dHlsZTo6Z3JpZEF1dG9SZXBlYXRDb2x1bW5zIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJl
bmRlclN0eWxlOjpncmlkQXV0b1JlcGVhdFJvd3MgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6
UmVuZGVyU3R5bGU6OmdyaWRBdXRvUmVwZWF0Q29sdW1uc0luc2VydGlvblBvaW50IGNvbnN0KToK
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjpncmlkQXV0b1JlcGVhdFJvd3NJbnNlcnRp
b25Qb2ludCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6Z3JpZEF1dG9S
ZXBlYXRDb2x1bW5zVHlwZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6
Z3JpZEF1dG9SZXBlYXRSb3dzVHlwZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJT
dHlsZTo6bmFtZWRHcmlkQ29sdW1uTGluZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyU3R5bGU6Om5hbWVkR3JpZFJvd0xpbmVzIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJl
bmRlclN0eWxlOjpvcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXMgY29uc3QpOgorICAgICAgICAo
V2ViQ29yZTo6UmVuZGVyU3R5bGU6Om9yZGVyZWROYW1lZEdyaWRSb3dMaW5lcyBjb25zdCk6Cisg
ICAgICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6YXV0b1JlcGVhdE5hbWVkR3JpZENvbHVtbkxp
bmVzIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjphdXRvUmVwZWF0TmFt
ZWRHcmlkUm93TGluZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OmF1
dG9SZXBlYXRPcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXMgY29uc3QpOgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyU3R5bGU6OmF1dG9SZXBlYXRPcmRlcmVkTmFtZWRHcmlkUm93TGluZXMgY29u
c3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OmdyaWRTdWJncmlkUm93cyBjb25z
dCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6Z3JpZFN1YmdyaWRDb2x1bW5zIGNv
bnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjpzZXRHcmlkQ29sdW1uTGlzdCk6
CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6c2V0R3JpZFJvd0xpc3QpOgorICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OnNldEdyaWRBdXRvUm93cyk6CisgICAgICAgIChXZWJD
b3JlOjpSZW5kZXJTdHlsZTo6c2V0R3JpZEF1dG9GbG93KToKKyAgICAgICAgKFdlYkNvcmU6OlJl
bmRlclN0eWxlOjpzZXRHcmlkQ29sdW1ucyk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJTdHlsZTo6c2V0R3JpZFJvd3MpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyU3R5bGU6OnNldEdyaWRBdXRvUmVwZWF0Q29sdW1ucyk6IERlbGV0ZWQuCisgICAgICAgIChX
ZWJDb3JlOjpSZW5kZXJTdHlsZTo6c2V0R3JpZEF1dG9SZXBlYXRSb3dzKTogRGVsZXRlZC4KKyAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjpzZXRHcmlkQXV0b1JlcGVhdENvbHVtbnNJbnNl
cnRpb25Qb2ludCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6c2V0
R3JpZEF1dG9SZXBlYXRSb3dzSW5zZXJ0aW9uUG9pbnQpOiBEZWxldGVkLgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyU3R5bGU6OnNldEdyaWRBdXRvUmVwZWF0Q29sdW1uc1R5cGUpOiBEZWxldGVk
LgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OnNldEdyaWRBdXRvUmVwZWF0Um93c1R5
cGUpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OnNldE5hbWVkR3Jp
ZENvbHVtbkxpbmVzKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjpz
ZXROYW1lZEdyaWRSb3dMaW5lcyk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJT
dHlsZTo6c2V0T3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzKTogRGVsZXRlZC4KKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlclN0eWxlOjpzZXRPcmRlcmVkTmFtZWRHcmlkUm93TGluZXMpOiBEZWxl
dGVkLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OnNldEF1dG9SZXBlYXROYW1lZEdy
aWRDb2x1bW5MaW5lcyk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6
c2V0QXV0b1JlcGVhdE5hbWVkR3JpZFJvd0xpbmVzKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNv
cmU6OlJlbmRlclN0eWxlOjpzZXRBdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVz
KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjpzZXRBdXRvUmVwZWF0
T3JkZXJlZE5hbWVkR3JpZFJvd0xpbmVzKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlJl
bmRlclN0eWxlOjpzZXRHcmlkU3ViZ3JpZFJvd3MpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29y
ZTo6UmVuZGVyU3R5bGU6OnNldEdyaWRTdWJncmlkQ29sdW1ucyk6IERlbGV0ZWQuCisgICAgICAg
ICogcmVuZGVyaW5nL3N0eWxlL1N0eWxlR3JpZERhdGEuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
U3R5bGVHcmlkRGF0YTo6U3R5bGVHcmlkRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZUdy
aWREYXRhOjpzZXRSb3dzKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlR3JpZERhdGE6OnNldENv
bHVtbnMpOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlR3JpZExpbmVOYW1lc0xpc3QpOgorICAg
ICAgICAoV2ViQ29yZTo6U3R5bGVHcmlkRGF0YTo6Y29tcHV0ZUNhY2hlZFRyYWNrRGF0YSk6Cisg
ICAgICAgIChXZWJDb3JlOjpvcGVyYXRvcjw8KToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUv
U3R5bGVHcmlkRGF0YS5oOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVHcmlkRGF0YTo6b3BlcmF0
b3I9PSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZUdyaWREYXRhOjpncmlkQ29sdW1u
cyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZUdyaWREYXRhOjpncmlkUm93cyBjb25z
dCk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZUdyaWREYXRhOjpuYW1lZEdyaWRDb2x1bW5MaW5l
cyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZUdyaWREYXRhOjpuYW1lZEdyaWRSb3dM
aW5lcyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZUdyaWREYXRhOjpvcmRlcmVkTmFt
ZWRHcmlkQ29sdW1uTGluZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVHcmlkRGF0
YTo6b3JkZXJlZE5hbWVkR3JpZFJvd0xpbmVzIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlN0
eWxlR3JpZERhdGE6OmF1dG9SZXBlYXROYW1lZEdyaWRDb2x1bW5MaW5lcyBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpTdHlsZUdyaWREYXRhOjphdXRvUmVwZWF0TmFtZWRHcmlkUm93TGluZXMg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVHcmlkRGF0YTo6YXV0b1JlcGVhdE9yZGVy
ZWROYW1lZEdyaWRDb2x1bW5MaW5lcyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZUdy
aWREYXRhOjphdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZFJvd0xpbmVzIGNvbnN0KToKKyAgICAg
ICAgKFdlYkNvcmU6OlN0eWxlR3JpZERhdGE6OmdyaWRBdXRvUmVwZWF0Q29sdW1ucyBjb25zdCk6
CisgICAgICAgIChXZWJDb3JlOjpTdHlsZUdyaWREYXRhOjpncmlkQXV0b1JlcGVhdFJvd3MgY29u
c3QpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVHcmlkRGF0YTo6YXV0b1JlcGVhdENvbHVtbnNJ
bnNlcnRpb25Qb2ludCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZUdyaWREYXRhOjph
dXRvUmVwZWF0Um93c0luc2VydGlvblBvaW50IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlN0
eWxlR3JpZERhdGE6OmF1dG9SZXBlYXRDb2x1bW5zVHlwZSBjb25zdCk6CisgICAgICAgIChXZWJD
b3JlOjpTdHlsZUdyaWREYXRhOjphdXRvUmVwZWF0Um93c1R5cGUgY29uc3QpOgorICAgICAgICAo
V2ViQ29yZTo6U3R5bGVHcmlkRGF0YTo6c3ViZ3JpZFJvd3MgY29uc3QpOgorICAgICAgICAoV2Vi
Q29yZTo6U3R5bGVHcmlkRGF0YTo6c3ViZ3JpZENvbHVtbnMgY29uc3QpOgorICAgICAgICAoV2Vi
Q29yZTo6U3R5bGVHcmlkRGF0YTo6Y29sdW1ucyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpT
dHlsZUdyaWREYXRhOjpyb3dzIGNvbnN0KToKKworICAgICAgICBTdG9yZXMgdGhlIGNvbXB1dGVk
IHRyYWNrIGxpc3RzIGRpcmVjdGx5IG9uIFJlbmRlckdyaWQsIHdoaWxlIHJldGFpbmluZyBzdG9y
YWdlIG9mIHRoZSBwcm9jZXNzZWQgZGF0YS4KKyAgICAgICAgY29tcHV0ZUNhY2hlZFRyYWNrRGF0
YSBzaG91bGQgYmUgbG9naWNhbGx5IGlkZW50aWNhbCB0byB0aGUgb2xkIEJ1aWxkZXJDb252ZXJ0
ZXI6OmNyZWF0ZUdyaWRUcmFja0xpc3QsIGJ1dAorICAgICAgICBoYXBwZW5zIHdoZW4gd2UgbW9k
aWZ5IHRoZSBTdHlsZUdyaWREYXRhIHNvIHRoYXQgd2UgY2FuIHJ1biBpdCBkdXJpbmcgYW5pbWF0
aW9ucy4KKworICAgICAgICAqIHN0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oOgorICAgICAg
ICAoV2ViQ29yZTo6U3R5bGU6OkJ1aWxkZXJDb252ZXJ0ZXI6OmNyZWF0ZUdyaWRUcmFja0xpc3Qp
OgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OmNyZWF0ZUdyaWRMaW5lTmFtZXNMaXN0KTogRGVs
ZXRlZC4KKyAgICAgICAgKCk6IERlbGV0ZWQuCisgICAgICAgICogc3R5bGUvU3R5bGVCdWlsZGVy
Q3VzdG9tLmg6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6QnVpbGRlckN1c3RvbTo6YXBwbHlJ
bml0aWFsR3JpZFRlbXBsYXRlQ29sdW1ucyk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6QnVp
bGRlckN1c3RvbTo6YXBwbHlWYWx1ZUdyaWRUZW1wbGF0ZUNvbHVtbnMpOgorICAgICAgICAoV2Vi
Q29yZTo6U3R5bGU6OkJ1aWxkZXJDdXN0b206OmFwcGx5SW5pdGlhbEdyaWRUZW1wbGF0ZVJvd3Mp
OgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OkJ1aWxkZXJDdXN0b206OmFwcGx5VmFsdWVHcmlk
VGVtcGxhdGVSb3dzKToKKworICAgICAgICBSYXRoZXIgdGhhbiBjb252ZXJ0aW5nIHRoZSB0cmFj
ayBsaXN0IGludG8gcHJvY2Vzc2VkIGhhc2h0YWJsZXMsIGp1c3QgY29waWVzIHRoZSBkYXRhIGlu
IHRoZSB0cmFjayBsaXN0CisgICAgICAgIGZvcm1hdCBzbyB0aGF0IHRoZSBTdHlsZUdyaWREYXRh
IGNhbiBhY2Nlc3MgdGhlIG9yaWdpbmFsIGRhdGEuCisKIDIwMjItMDMtMTQgIE1hdHQgV29vZHJv
dyAgPG1hdHR3b29kcm93QGFwcGxlLmNvbT4KIAogICAgICAgICBGaXggc2VyaWFsaXphdGlvbiBv
ZiBncmlkLXRlbXBsYXRlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vQ1NT
UHJvcGVydHlBbmltYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0NTU1Byb3Bl
cnR5QW5pbWF0aW9uLmNwcAppbmRleCAxN2RmZjA5OTI0YzJlZTMwMWZhM2QzMjhkMjU3MGIwMGRl
ZjU5YWE1Li43ZWVkOTBlMGUwNzQxOGVkOTZjNTIyMTgxNGJmNDdjMjRlOGM1MTA1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vQ1NTUHJvcGVydHlBbmltYXRpb24uY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9DU1NQcm9wZXJ0eUFuaW1hdGlvbi5jcHAKQEAg
LTYwNyw2ICs2MDcsMTEgQEAgc3RhdGljIGlubGluZSBPZmZzZXRSb3RhdGlvbiBibGVuZEZ1bmMo
Y29uc3QgT2Zmc2V0Um90YXRpb24mIGZyb20sIGNvbnN0IE9mZnNldFIKICAgICByZXR1cm4gT2Zm
c2V0Um90YXRpb24oZnJvbS5oYXNBdXRvKCksIGNsYW1wVG88ZmxvYXQ+KGJsZW5kKGZyb20uYW5n
bGUoKSwgdG8uYW5nbGUoKSwgY29udGV4dCkpKTsKIH0KIAorc3RhdGljIGlubGluZSBHcmlkVHJh
Y2tMaXN0IGJsZW5kRnVuYyhjb25zdCBHcmlkVHJhY2tMaXN0JiBmcm9tLCBjb25zdCBHcmlkVHJh
Y2tMaXN0JiB0bywgY29uc3QgQ1NTUHJvcGVydHlCbGVuZGluZ0NvbnRleHQmIGNvbnRleHQpCit7
CisgICAgcmV0dXJuIGNvbnRleHQucHJvZ3Jlc3MgPCAwLjUgPyBmcm9tIDogdG87Cit9CisKIGNs
YXNzIEFuaW1hdGlvblByb3BlcnR5V3JhcHBlckJhc2UgewogICAgIFdURl9NQUtFX05PTkNPUFlB
QkxFKEFuaW1hdGlvblByb3BlcnR5V3JhcHBlckJhc2UpOwogICAgIFdURl9NQUtFX0ZBU1RfQUxM
T0NBVEVEOwpAQCAtNzQ5LDc0ICs3NTQsMjYgQEAgcHJpdmF0ZToKICAgICB2b2lkIChSZW5kZXJT
dHlsZTo6Km1fc2V0dGVyKShUKTsKIH07CiAKLXRlbXBsYXRlIDxHcmlkVHJhY2tTaXppbmdEaXJl
Y3Rpb24+Ci1jbGFzcyBHcmlkVGVtcGxhdGVUcmFja3NXcmFwcGVyIDogcHVibGljIEFuaW1hdGlv
blByb3BlcnR5V3JhcHBlckJhc2UgeworY2xhc3MgR3JpZFRlbXBsYXRlUHJvcGVydHlXcmFwcGVy
IGZpbmFsIDogcHVibGljIFByb3BlcnR5V3JhcHBlcjxjb25zdCBHcmlkVHJhY2tMaXN0Jj4gewog
ICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwogcHVibGljOgotICAgIEdyaWRUZW1wbGF0ZVRy
YWNrc1dyYXBwZXIoKTsKLQotcHJpdmF0ZToKLSAgICBib29sIGNhbkludGVycG9sYXRlKGNvbnN0
IFJlbmRlclN0eWxlJiwgY29uc3QgUmVuZGVyU3R5bGUmLCBDb21wb3NpdGVPcGVyYXRpb24pIGNv
bnN0IGZpbmFsIHsgcmV0dXJuIGZhbHNlOyB9Ci0KLSAgICBib29sIGVxdWFscyhjb25zdCBSZW5k
ZXJTdHlsZSYgYSwgY29uc3QgUmVuZGVyU3R5bGUmIGIpIGNvbnN0IG92ZXJyaWRlCisgICAgR3Jp
ZFRlbXBsYXRlUHJvcGVydHlXcmFwcGVyKENTU1Byb3BlcnR5SUQgcHJvcGVydHksIGNvbnN0IEdy
aWRUcmFja0xpc3QmIChSZW5kZXJTdHlsZTo6KmdldHRlcikoKSBjb25zdCwgdm9pZCAoUmVuZGVy
U3R5bGU6OipzZXR0ZXIpKGNvbnN0IEdyaWRUcmFja0xpc3QmKSkKKyAgICAgICAgOiBQcm9wZXJ0
eVdyYXBwZXI8Y29uc3QgR3JpZFRyYWNrTGlzdCY+KHByb3BlcnR5LCBnZXR0ZXIsIHNldHRlcikK
ICAgICB7Ci0gICAgICAgIHJldHVybiBtX2dyaWRUcmFja3NXcmFwcGVyLmVxdWFscyhhLCBiKSAm
JiBtX2F1dG9SZXBlYXRUcmFja3NXcmFwcGVyLmVxdWFscyhhLCBiKSAmJiBtX2dyaWRBdXRvUmVw
ZWF0VHlwZVRyYWNrc1dyYXBwZXIuZXF1YWxzKGEsIGIpICYmIG1fZ3JpZEF1dG9SZXBlYXRJbnNl
cnRpb25Qb2ludFRyYWNrc1dyYXBwZXIuZXF1YWxzKGEsIGIpICYmIG1fb3JkZXJlZE5hbWVkR3Jp
ZExpbmVzVHJhY2tzV3JhcHBlci5lcXVhbHMoYSwgYikgJiYgbV9hdXRvUmVwZWF0T3JkZXJlZE5h
bWVkR3JpZExpbmVzVHJhY2tzV3JhcHBlci5lcXVhbHMoYSwgYik7CiAgICAgfQogCitwcml2YXRl
OgogICAgIHZvaWQgYmxlbmQoUmVuZGVyU3R5bGUmIGRlc3RpbmF0aW9uLCBjb25zdCBSZW5kZXJT
dHlsZSYgZnJvbSwgY29uc3QgUmVuZGVyU3R5bGUmIHRvLCBjb25zdCBDU1NQcm9wZXJ0eUJsZW5k
aW5nQ29udGV4dCYgY29udGV4dCkgY29uc3QgZmluYWwKICAgICB7Ci0gICAgICAgIG1fZ3JpZFRy
YWNrc1dyYXBwZXIuYmxlbmQoZGVzdGluYXRpb24sIGZyb20sIHRvLCBjb250ZXh0KTsKLSAgICAg
ICAgbV9hdXRvUmVwZWF0VHJhY2tzV3JhcHBlci5ibGVuZChkZXN0aW5hdGlvbiwgZnJvbSwgdG8s
IGNvbnRleHQpOwotICAgICAgICBtX2dyaWRBdXRvUmVwZWF0VHlwZVRyYWNrc1dyYXBwZXIuYmxl
bmQoZGVzdGluYXRpb24sIGZyb20sIHRvLCBjb250ZXh0KTsKLSAgICAgICAgbV9ncmlkQXV0b1Jl
cGVhdEluc2VydGlvblBvaW50VHJhY2tzV3JhcHBlci5ibGVuZChkZXN0aW5hdGlvbiwgZnJvbSwg
dG8sIGNvbnRleHQpOwotICAgICAgICBtX29yZGVyZWROYW1lZEdyaWRMaW5lc1RyYWNrc1dyYXBw
ZXIuYmxlbmQoZGVzdGluYXRpb24sIGZyb20sIHRvLCBjb250ZXh0KTsKLSAgICAgICAgbV9hdXRv
UmVwZWF0T3JkZXJlZE5hbWVkR3JpZExpbmVzVHJhY2tzV3JhcHBlci5ibGVuZChkZXN0aW5hdGlv
biwgZnJvbSwgdG8sIGNvbnRleHQpOworICAgICAgICAoZGVzdGluYXRpb24uKm1fc2V0dGVyKShi
bGVuZEZ1bmModGhpcy0+dmFsdWUoZnJvbSksIHRoaXMtPnZhbHVlKHRvKSwgY29udGV4dCkpOwog
ICAgIH0KIAotI2lmICFMT0dfRElTQUJMRUQKLSAgICB2b2lkIGxvZ0JsZW5kKGNvbnN0IFJlbmRl
clN0eWxlJiBmcm9tLCBjb25zdCBSZW5kZXJTdHlsZSYgdG8sIGNvbnN0IFJlbmRlclN0eWxlJiBk
ZXN0aW5hdGlvbiwgZG91YmxlIHByb2dyZXNzKSBjb25zdCBmaW5hbAorICAgIGJvb2wgY2FuSW50
ZXJwb2xhdGUoY29uc3QgUmVuZGVyU3R5bGUmLCBjb25zdCBSZW5kZXJTdHlsZSYsIENvbXBvc2l0
ZU9wZXJhdGlvbikgY29uc3QgZmluYWwKICAgICB7Ci0gICAgICAgIG1fZ3JpZFRyYWNrc1dyYXBw
ZXIubG9nQmxlbmQoZnJvbSwgdG8sIGRlc3RpbmF0aW9uLCBwcm9ncmVzcyk7Ci0gICAgICAgIG1f
YXV0b1JlcGVhdFRyYWNrc1dyYXBwZXIubG9nQmxlbmQoZnJvbSwgdG8sIGRlc3RpbmF0aW9uLCBw
cm9ncmVzcyk7Ci0gICAgICAgIG1fZ3JpZEF1dG9SZXBlYXRUeXBlVHJhY2tzV3JhcHBlci5sb2dC
bGVuZChmcm9tLCB0bywgZGVzdGluYXRpb24sIHByb2dyZXNzKTsKLSAgICAgICAgbV9ncmlkQXV0
b1JlcGVhdEluc2VydGlvblBvaW50VHJhY2tzV3JhcHBlci5sb2dCbGVuZChmcm9tLCB0bywgZGVz
dGluYXRpb24sIHByb2dyZXNzKTsKLSAgICAgICAgbV9vcmRlcmVkTmFtZWRHcmlkTGluZXNUcmFj
a3NXcmFwcGVyLmxvZ0JsZW5kKGZyb20sIHRvLCBkZXN0aW5hdGlvbiwgcHJvZ3Jlc3MpOwotICAg
ICAgICBtX2F1dG9SZXBlYXRPcmRlcmVkTmFtZWRHcmlkTGluZXNUcmFja3NXcmFwcGVyLmxvZ0Js
ZW5kKGZyb20sIHRvLCBkZXN0aW5hdGlvbiwgcHJvZ3Jlc3MpOworICAgICAgICByZXR1cm4gZmFs
c2U7CiAgICAgfQotI2VuZGlmCi0KLSAgICBEaXNjcmV0ZVByb3BlcnR5V3JhcHBlcjxjb25zdCBW
ZWN0b3I8R3JpZFRyYWNrU2l6ZT4mPiBtX2dyaWRUcmFja3NXcmFwcGVyOwotICAgIERpc2NyZXRl
UHJvcGVydHlXcmFwcGVyPGNvbnN0IFZlY3RvcjxHcmlkVHJhY2tTaXplPiY+IG1fYXV0b1JlcGVh
dFRyYWNrc1dyYXBwZXI7Ci0gICAgRGlzY3JldGVQcm9wZXJ0eVdyYXBwZXI8QXV0b1JlcGVhdFR5
cGU+IG1fZ3JpZEF1dG9SZXBlYXRUeXBlVHJhY2tzV3JhcHBlcjsKLSAgICBEaXNjcmV0ZVByb3Bl
cnR5V3JhcHBlcjx1bnNpZ25lZD4gbV9ncmlkQXV0b1JlcGVhdEluc2VydGlvblBvaW50VHJhY2tz
V3JhcHBlcjsKLSAgICBEaXNjcmV0ZVByb3BlcnR5V3JhcHBlcjxjb25zdCBPcmRlcmVkTmFtZWRH
cmlkTGluZXNNYXAmPiBtX29yZGVyZWROYW1lZEdyaWRMaW5lc1RyYWNrc1dyYXBwZXI7Ci0gICAg
RGlzY3JldGVQcm9wZXJ0eVdyYXBwZXI8Y29uc3QgT3JkZXJlZE5hbWVkR3JpZExpbmVzTWFwJj4g
bV9hdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZExpbmVzVHJhY2tzV3JhcHBlcjsKIH07CiAKLXRl
bXBsYXRlIDw+Ci1HcmlkVGVtcGxhdGVUcmFja3NXcmFwcGVyPEZvckNvbHVtbnM+OjpHcmlkVGVt
cGxhdGVUcmFja3NXcmFwcGVyKCkKLSAgICA6IEFuaW1hdGlvblByb3BlcnR5V3JhcHBlckJhc2Uo
Q1NTUHJvcGVydHlHcmlkVGVtcGxhdGVDb2x1bW5zKQotICAgICwgbV9ncmlkVHJhY2tzV3JhcHBl
cihEaXNjcmV0ZVByb3BlcnR5V3JhcHBlcjxjb25zdCBWZWN0b3I8R3JpZFRyYWNrU2l6ZT4mPihD
U1NQcm9wZXJ0eUdyaWRUZW1wbGF0ZUNvbHVtbnMsICZSZW5kZXJTdHlsZTo6Z3JpZENvbHVtbnMs
ICZSZW5kZXJTdHlsZTo6c2V0R3JpZENvbHVtbnMpKQotICAgICwgbV9hdXRvUmVwZWF0VHJhY2tz
V3JhcHBlcihEaXNjcmV0ZVByb3BlcnR5V3JhcHBlcjxjb25zdCBWZWN0b3I8R3JpZFRyYWNrU2l6
ZT4mPihDU1NQcm9wZXJ0eUdyaWRUZW1wbGF0ZUNvbHVtbnMsICZSZW5kZXJTdHlsZTo6Z3JpZEF1
dG9SZXBlYXRDb2x1bW5zLCAmUmVuZGVyU3R5bGU6OnNldEdyaWRBdXRvUmVwZWF0Q29sdW1ucykp
Ci0gICAgLCBtX2dyaWRBdXRvUmVwZWF0VHlwZVRyYWNrc1dyYXBwZXIoRGlzY3JldGVQcm9wZXJ0
eVdyYXBwZXI8QXV0b1JlcGVhdFR5cGU+KENTU1Byb3BlcnR5R3JpZFRlbXBsYXRlQ29sdW1ucywg
JlJlbmRlclN0eWxlOjpncmlkQXV0b1JlcGVhdENvbHVtbnNUeXBlLCAmUmVuZGVyU3R5bGU6OnNl
dEdyaWRBdXRvUmVwZWF0Q29sdW1uc1R5cGUpKQotICAgICwgbV9ncmlkQXV0b1JlcGVhdEluc2Vy
dGlvblBvaW50VHJhY2tzV3JhcHBlcihEaXNjcmV0ZVByb3BlcnR5V3JhcHBlcjx1bnNpZ25lZD4o
Q1NTUHJvcGVydHlHcmlkVGVtcGxhdGVDb2x1bW5zLCAmUmVuZGVyU3R5bGU6OmdyaWRBdXRvUmVw
ZWF0Q29sdW1uc0luc2VydGlvblBvaW50LCAmUmVuZGVyU3R5bGU6OnNldEdyaWRBdXRvUmVwZWF0
Q29sdW1uc0luc2VydGlvblBvaW50KSkKLSAgICAsIG1fb3JkZXJlZE5hbWVkR3JpZExpbmVzVHJh
Y2tzV3JhcHBlcihEaXNjcmV0ZVByb3BlcnR5V3JhcHBlcjxjb25zdCBPcmRlcmVkTmFtZWRHcmlk
TGluZXNNYXAmPihDU1NQcm9wZXJ0eUdyaWRUZW1wbGF0ZUNvbHVtbnMsICZSZW5kZXJTdHlsZTo6
b3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzLCAmUmVuZGVyU3R5bGU6OnNldE9yZGVyZWROYW1l
ZEdyaWRDb2x1bW5MaW5lcykpCi0gICAgLCBtX2F1dG9SZXBlYXRPcmRlcmVkTmFtZWRHcmlkTGlu
ZXNUcmFja3NXcmFwcGVyKERpc2NyZXRlUHJvcGVydHlXcmFwcGVyPGNvbnN0IE9yZGVyZWROYW1l
ZEdyaWRMaW5lc01hcCY+KENTU1Byb3BlcnR5R3JpZFRlbXBsYXRlQ29sdW1ucywgJlJlbmRlclN0
eWxlOjphdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzLCAmUmVuZGVyU3R5bGU6
OnNldEF1dG9SZXBlYXRPcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXMpKQotewotfQotCi10ZW1w
bGF0ZSA8PgotR3JpZFRlbXBsYXRlVHJhY2tzV3JhcHBlcjxGb3JSb3dzPjo6R3JpZFRlbXBsYXRl
VHJhY2tzV3JhcHBlcigpCi0gICAgOiBBbmltYXRpb25Qcm9wZXJ0eVdyYXBwZXJCYXNlKENTU1By
b3BlcnR5R3JpZFRlbXBsYXRlUm93cykKLSAgICAsIG1fZ3JpZFRyYWNrc1dyYXBwZXIoRGlzY3Jl
dGVQcm9wZXJ0eVdyYXBwZXI8Y29uc3QgVmVjdG9yPEdyaWRUcmFja1NpemU+Jj4oQ1NTUHJvcGVy
dHlHcmlkVGVtcGxhdGVSb3dzLCAmUmVuZGVyU3R5bGU6OmdyaWRSb3dzLCAmUmVuZGVyU3R5bGU6
OnNldEdyaWRSb3dzKSkKLSAgICAsIG1fYXV0b1JlcGVhdFRyYWNrc1dyYXBwZXIoRGlzY3JldGVQ
cm9wZXJ0eVdyYXBwZXI8Y29uc3QgVmVjdG9yPEdyaWRUcmFja1NpemU+Jj4oQ1NTUHJvcGVydHlH
cmlkVGVtcGxhdGVSb3dzLCAmUmVuZGVyU3R5bGU6OmdyaWRBdXRvUmVwZWF0Um93cywgJlJlbmRl
clN0eWxlOjpzZXRHcmlkQXV0b1JlcGVhdFJvd3MpKQotICAgICwgbV9ncmlkQXV0b1JlcGVhdFR5
cGVUcmFja3NXcmFwcGVyKERpc2NyZXRlUHJvcGVydHlXcmFwcGVyPEF1dG9SZXBlYXRUeXBlPihD
U1NQcm9wZXJ0eUdyaWRUZW1wbGF0ZVJvd3MsICZSZW5kZXJTdHlsZTo6Z3JpZEF1dG9SZXBlYXRS
b3dzVHlwZSwgJlJlbmRlclN0eWxlOjpzZXRHcmlkQXV0b1JlcGVhdFJvd3NUeXBlKSkKLSAgICAs
IG1fZ3JpZEF1dG9SZXBlYXRJbnNlcnRpb25Qb2ludFRyYWNrc1dyYXBwZXIoRGlzY3JldGVQcm9w
ZXJ0eVdyYXBwZXI8dW5zaWduZWQ+KENTU1Byb3BlcnR5R3JpZFRlbXBsYXRlUm93cywgJlJlbmRl
clN0eWxlOjpncmlkQXV0b1JlcGVhdFJvd3NJbnNlcnRpb25Qb2ludCwgJlJlbmRlclN0eWxlOjpz
ZXRHcmlkQXV0b1JlcGVhdFJvd3NJbnNlcnRpb25Qb2ludCkpCi0gICAgLCBtX29yZGVyZWROYW1l
ZEdyaWRMaW5lc1RyYWNrc1dyYXBwZXIoRGlzY3JldGVQcm9wZXJ0eVdyYXBwZXI8Y29uc3QgT3Jk
ZXJlZE5hbWVkR3JpZExpbmVzTWFwJj4oQ1NTUHJvcGVydHlHcmlkVGVtcGxhdGVSb3dzLCAmUmVu
ZGVyU3R5bGU6Om9yZGVyZWROYW1lZEdyaWRSb3dMaW5lcywgJlJlbmRlclN0eWxlOjpzZXRPcmRl
cmVkTmFtZWRHcmlkUm93TGluZXMpKQotICAgICwgbV9hdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3Jp
ZExpbmVzVHJhY2tzV3JhcHBlcihEaXNjcmV0ZVByb3BlcnR5V3JhcHBlcjxjb25zdCBPcmRlcmVk
TmFtZWRHcmlkTGluZXNNYXAmPihDU1NQcm9wZXJ0eUdyaWRUZW1wbGF0ZVJvd3MsICZSZW5kZXJT
dHlsZTo6YXV0b1JlcGVhdE9yZGVyZWROYW1lZEdyaWRSb3dMaW5lcywgJlJlbmRlclN0eWxlOjpz
ZXRBdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZFJvd0xpbmVzKSkKLXsKLX0KLQogY2xhc3MgQm9y
ZGVySW1hZ2VSZXBlYXRXcmFwcGVyIGZpbmFsIDogcHVibGljIEFuaW1hdGlvblByb3BlcnR5V3Jh
cHBlckJhc2UgewogICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwogcHVibGljOgpAQCAtMjc0
OCw4ICsyNzA1LDggQEAgQ1NTUHJvcGVydHlBbmltYXRpb25XcmFwcGVyTWFwOjpDU1NQcm9wZXJ0
eUFuaW1hdGlvbldyYXBwZXJNYXAoKQogICAgICAgICBuZXcgRGlzY3JldGVQcm9wZXJ0eVdyYXBw
ZXI8Y29uc3QgVmVjdG9yPEdyaWRUcmFja1NpemU+Jj4oQ1NTUHJvcGVydHlHcmlkQXV0b0NvbHVt
bnMsICZSZW5kZXJTdHlsZTo6Z3JpZEF1dG9Db2x1bW5zLCAmUmVuZGVyU3R5bGU6OnNldEdyaWRB
dXRvQ29sdW1ucyksCiAgICAgICAgIG5ldyBEaXNjcmV0ZVByb3BlcnR5V3JhcHBlcjxHcmlkQXV0
b0Zsb3c+KENTU1Byb3BlcnR5R3JpZEF1dG9GbG93LCAmUmVuZGVyU3R5bGU6OmdyaWRBdXRvRmxv
dywgJlJlbmRlclN0eWxlOjpzZXRHcmlkQXV0b0Zsb3cpLAogICAgICAgICBuZXcgRGlzY3JldGVQ
cm9wZXJ0eVdyYXBwZXI8Y29uc3QgVmVjdG9yPEdyaWRUcmFja1NpemU+Jj4oQ1NTUHJvcGVydHlH
cmlkQXV0b1Jvd3MsICZSZW5kZXJTdHlsZTo6Z3JpZEF1dG9Sb3dzLCAmUmVuZGVyU3R5bGU6OnNl
dEdyaWRBdXRvUm93cyksCi0gICAgICAgIG5ldyBHcmlkVGVtcGxhdGVUcmFja3NXcmFwcGVyPEZv
ckNvbHVtbnM+LAotICAgICAgICBuZXcgR3JpZFRlbXBsYXRlVHJhY2tzV3JhcHBlcjxGb3JSb3dz
PiwKKyAgICAgICAgbmV3IEdyaWRUZW1wbGF0ZVByb3BlcnR5V3JhcHBlcihDU1NQcm9wZXJ0eUdy
aWRUZW1wbGF0ZVJvd3MsICZSZW5kZXJTdHlsZTo6Z3JpZFJvd0xpc3QsICZSZW5kZXJTdHlsZTo6
c2V0R3JpZFJvd0xpc3QpLAorICAgICAgICBuZXcgR3JpZFRlbXBsYXRlUHJvcGVydHlXcmFwcGVy
KENTU1Byb3BlcnR5R3JpZFRlbXBsYXRlQ29sdW1ucywgJlJlbmRlclN0eWxlOjpncmlkQ29sdW1u
TGlzdCwgJlJlbmRlclN0eWxlOjpzZXRHcmlkQ29sdW1uTGlzdCksCiAgICAgICAgIG5ldyBEaXNj
cmV0ZVByb3BlcnR5V3JhcHBlcjxjb25zdCBHcmlkUG9zaXRpb24mPihDU1NQcm9wZXJ0eUdyaWRD
b2x1bW5FbmQsICZSZW5kZXJTdHlsZTo6Z3JpZEl0ZW1Db2x1bW5FbmQsICZSZW5kZXJTdHlsZTo6
c2V0R3JpZEl0ZW1Db2x1bW5FbmQpLAogICAgICAgICBuZXcgRGlzY3JldGVQcm9wZXJ0eVdyYXBw
ZXI8Y29uc3QgR3JpZFBvc2l0aW9uJj4oQ1NTUHJvcGVydHlHcmlkQ29sdW1uU3RhcnQsICZSZW5k
ZXJTdHlsZTo6Z3JpZEl0ZW1Db2x1bW5TdGFydCwgJlJlbmRlclN0eWxlOjpzZXRHcmlkSXRlbUNv
bHVtblN0YXJ0KSwKICAgICAgICAgbmV3IERpc2NyZXRlUHJvcGVydHlXcmFwcGVyPGNvbnN0IEdy
aWRQb3NpdGlvbiY+KENTU1Byb3BlcnR5R3JpZFJvd0VuZCwgJlJlbmRlclN0eWxlOjpncmlkSXRl
bVJvd0VuZCwgJlJlbmRlclN0eWxlOjpzZXRHcmlkSXRlbVJvd0VuZCksCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwCmluZGV4IGU5NDUx
NzcxMzZlNjExZmQ4YjZiMDAwNjI3MmVhZjEwNmJjMDQ5ZTYuLjJmZTMxODRkZmI1MDFlZDMyOWU1
ZWRlN2ExODM3ODJjYTFlOTQ2MjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1ND
b21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1ND
b21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwCkBAIC0zNSw2ICszNSw3IEBACiAjaW5jbHVkZSAi
Q1NTRm9udFZhcmlhdGlvblZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTRnVuY3Rpb25WYWx1ZS5oIgog
I2luY2x1ZGUgIkNTU0dyaWRBdXRvUmVwZWF0VmFsdWUuaCIKKyNpbmNsdWRlICJDU1NHcmlkSW50
ZWdlclJlcGVhdFZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTTGluZUJveENvbnRhaW5WYWx1ZS5oIgog
I2luY2x1ZGUgIkNTU1ByaW1pdGl2ZVZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTUHJpbWl0aXZlVmFs
dWVNYXBwaW5ncy5oIgpAQCAtODU1LDcgKzg1Niw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIH5P
cmRlcmVkTmFtZWRMaW5lc0NvbGxlY3RvcigpID0gZGVmYXVsdDsKIAogICAgIGJvb2wgaXNFbXB0
eSgpIGNvbnN0IHsgcmV0dXJuIG1fb3JkZXJlZE5hbWVkR3JpZExpbmVzLmlzRW1wdHkoKSAmJiBt
X29yZGVyZWROYW1lZEF1dG9SZXBlYXRHcmlkTGluZXMuaXNFbXB0eSgpOyB9Ci0gICAgdmlydHVh
bCB2b2lkIGNvbGxlY3RMaW5lTmFtZXNGb3JJbmRleChDU1NHcmlkTGluZU5hbWVzVmFsdWUmLCB1
bnNpZ25lZCBpbmRleCkgY29uc3Q7CisgICAgdmlydHVhbCB2b2lkIGNvbGxlY3RMaW5lTmFtZXNG
b3JJbmRleChDU1NHcmlkTGluZU5hbWVzVmFsdWUmLCB1bnNpZ25lZCBpbmRleCkgY29uc3QgPSAw
OwogCiAgICAgdmlydHVhbCBpbnQgbmFtZWRHcmlkTGluZUNvdW50KCkgY29uc3QgeyByZXR1cm4g
bV9vcmRlcmVkTmFtZWRHcmlkTGluZXMuc2l6ZSgpOyB9CiAKQEAgLTg2OCwxOCArODY5LDYgQEAg
cHJvdGVjdGVkOgogICAgIGNvbnN0IE9yZGVyZWROYW1lZEdyaWRMaW5lc01hcCYgbV9vcmRlcmVk
TmFtZWRBdXRvUmVwZWF0R3JpZExpbmVzOwogfTsKIAotY2xhc3MgT3JkZXJlZE5hbWVkTGluZXND
b2xsZWN0b3JJbnNpZGVSZXBlYXQgOiBwdWJsaWMgT3JkZXJlZE5hbWVkTGluZXNDb2xsZWN0b3Ig
ewotcHVibGljOgotICAgIE9yZGVyZWROYW1lZExpbmVzQ29sbGVjdG9ySW5zaWRlUmVwZWF0KGNv
bnN0IFJlbmRlclN0eWxlJiBzdHlsZSwgYm9vbCBpc1Jvd0F4aXMpCi0gICAgICAgIDogT3JkZXJl
ZE5hbWVkTGluZXNDb2xsZWN0b3Ioc3R5bGUsIGlzUm93QXhpcykKLSAgICB7Ci0gICAgfQotCi0g
ICAgdm9pZCBjb2xsZWN0TGluZU5hbWVzRm9ySW5kZXgoQ1NTR3JpZExpbmVOYW1lc1ZhbHVlJiwg
dW5zaWduZWQgaW5kZXgpIGNvbnN0IG92ZXJyaWRlOwotCi0gICAgaW50IG5hbWVkR3JpZExpbmVD
b3VudCgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIG1fb3JkZXJlZE5hbWVkQXV0b1JlcGVhdEdy
aWRMaW5lcy5zaXplKCk7IH0KLX07Ci0KIGNsYXNzIE9yZGVyZWROYW1lZExpbmVzQ29sbGVjdG9y
SW5HcmlkTGF5b3V0IDogcHVibGljIE9yZGVyZWROYW1lZExpbmVzQ29sbGVjdG9yIHsKIHB1Ymxp
YzoKICAgICBPcmRlcmVkTmFtZWRMaW5lc0NvbGxlY3RvckluR3JpZExheW91dChjb25zdCBSZW5k
ZXJTdHlsZSYgc3R5bGUsIGJvb2wgaXNSb3dBeGlzLCB1bnNpZ25lZCBhdXRvUmVwZWF0VHJhY2tz
Q291bnQsIHVuc2lnbmVkIGF1dG9SZXBlYXRUcmFja0xpc3RMZW5ndGgpCkBAIC05NDEsMTggKzkz
MCw2IEBAIHZvaWQgT3JkZXJlZE5hbWVkTGluZXNDb2xsZWN0b3I6OmFwcGVuZExpbmVzKENTU0dy
aWRMaW5lTmFtZXNWYWx1ZSYgbGluZU5hbWVzVmFsCiAgICAgICAgIGxpbmVOYW1lc1ZhbHVlLmFw
cGVuZChjc3NWYWx1ZVBvb2wuY3JlYXRlQ3VzdG9tSWRlbnQobGluZU5hbWUpKTsKIH0KIAotdm9p
ZCBPcmRlcmVkTmFtZWRMaW5lc0NvbGxlY3Rvcjo6Y29sbGVjdExpbmVOYW1lc0ZvckluZGV4KENT
U0dyaWRMaW5lTmFtZXNWYWx1ZSYgbGluZU5hbWVzVmFsdWUsIHVuc2lnbmVkIGkpIGNvbnN0Ci17
Ci0gICAgQVNTRVJUKCFpc0VtcHR5KCkpOwotICAgIGFwcGVuZExpbmVzKGxpbmVOYW1lc1ZhbHVl
LCBpLCBOYW1lZExpbmVzKTsKLX0KLQotdm9pZCBPcmRlcmVkTmFtZWRMaW5lc0NvbGxlY3Rvcklu
c2lkZVJlcGVhdDo6Y29sbGVjdExpbmVOYW1lc0ZvckluZGV4KENTU0dyaWRMaW5lTmFtZXNWYWx1
ZSYgbGluZU5hbWVzVmFsdWUsIHVuc2lnbmVkIGkpIGNvbnN0Ci17Ci0gICAgQVNTRVJUKCFpc0Vt
cHR5KCkpOwotICAgIGFwcGVuZExpbmVzKGxpbmVOYW1lc1ZhbHVlLCBpLCBBdXRvUmVwZWF0TmFt
ZWRMaW5lcyk7Ci19Ci0KIHZvaWQgT3JkZXJlZE5hbWVkTGluZXNDb2xsZWN0b3JJbkdyaWRMYXlv
dXQ6OmNvbGxlY3RMaW5lTmFtZXNGb3JJbmRleChDU1NHcmlkTGluZU5hbWVzVmFsdWUmIGxpbmVO
YW1lc1ZhbHVlLCB1bnNpZ25lZCBpKSBjb25zdAogewogICAgIEFTU0VSVCghaXNFbXB0eSgpKTsK
QEAgLTEwMjQsOSArMTAwMSwxMCBAQCBzdGF0aWMgUmVmPENTU1ZhbHVlTGlzdD4gdmFsdWVGb3JH
cmlkVHJhY2tTaXplTGlzdChHcmlkVHJhY2tTaXppbmdEaXJlY3Rpb24gZGlyZQogfQogCiB0ZW1w
bGF0ZSA8dHlwZW5hbWUgVCwgdHlwZW5hbWUgRj4KLXZvaWQgcG9wdWxhdGVHcmlkVHJhY2tMaXN0
KENTU1ZhbHVlTGlzdCYgbGlzdCwgT3JkZXJlZE5hbWVkTGluZXNDb2xsZWN0b3ImIGNvbGxlY3Rv
ciwgY29uc3QgVmVjdG9yPFQ+JiB0cmFja3MsIEYgZ2V0VHJhY2tTaXplLCBpbnQgc3RhcnQsIGlu
dCBlbmQsIGludCBvZmZzZXQgPSAwKQordm9pZCBwb3B1bGF0ZUdyaWRUcmFja0xpc3QoQ1NTVmFs
dWVMaXN0JiBsaXN0LCBPcmRlcmVkTmFtZWRMaW5lc0NvbGxlY3RvciYgY29sbGVjdG9yLCBjb25z
dCBWZWN0b3I8VD4mIHRyYWNrcywgRiBnZXRUcmFja1NpemUsIGludCBvZmZzZXQgPSAwKQogewot
ICAgIEFTU0VSVCgwIDw9IHN0YXJ0KTsKKyAgICBpbnQgc3RhcnQgPSAwOworICAgIGludCBlbmQg
PSB0cmFja3Muc2l6ZSgpOwogICAgIEFTU0VSVChzdGFydCA8PSBlbmQpOwogICAgIEFTU0VSVChz
dGF0aWNfY2FzdDx1bnNpZ25lZD4oZW5kKSA8PSB0cmFja3Muc2l6ZSgpKTsKICAgICBmb3IgKGlu
dCBpID0gc3RhcnQ7IGkgPCBlbmQ7ICsraSkgewpAQCAtMTAzOCwyMSArMTAxNiwxMCBAQCB2b2lk
IHBvcHVsYXRlR3JpZFRyYWNrTGlzdChDU1NWYWx1ZUxpc3QmIGxpc3QsIE9yZGVyZWROYW1lZExp
bmVzQ29sbGVjdG9yJiBjb2xsZQogICAgICAgICBhZGRWYWx1ZXNGb3JOYW1lZEdyaWRMaW5lc0F0
SW5kZXgoY29sbGVjdG9yLCBlbmQgKyBvZmZzZXQsIGxpc3QpOwogfQogCi10ZW1wbGF0ZSA8dHlw
ZW5hbWUgVCwgdHlwZW5hbWUgRj4KLXZvaWQgcG9wdWxhdGVHcmlkVHJhY2tMaXN0KENTU1ZhbHVl
TGlzdCYgbGlzdCwgT3JkZXJlZE5hbWVkTGluZXNDb2xsZWN0b3ImIGNvbGxlY3RvciwgY29uc3Qg
VmVjdG9yPFQ+JiB0cmFja3MsIEYgZ2V0VHJhY2tTaXplLCBpbnQgb2Zmc2V0ID0gMCkKLXsKLSAg
ICBwb3B1bGF0ZUdyaWRUcmFja0xpc3Q8VD4obGlzdCwgY29sbGVjdG9yLCB0cmFja3MsIGdldFRy
YWNrU2l6ZSwgMCwgdHJhY2tzLnNpemUoKSwgb2Zmc2V0KTsKLX0KLQotc3RhdGljIHZvaWQgcG9w
dWxhdGVTdWJncmlkTGluZU5hbWVMaXN0KENTU1ZhbHVlTGlzdCYgbGlzdCwgT3JkZXJlZE5hbWVk
TGluZXNDb2xsZWN0b3ImIGNvbGxlY3RvciwgaW50IHN0YXJ0LCBpbnQgZW5kKQotewotICAgIGZv
ciAoaW50IGkgPSBzdGFydDsgaSA8IGVuZDsgaSsrKQotICAgICAgICBhZGRWYWx1ZXNGb3JOYW1l
ZEdyaWRMaW5lc0F0SW5kZXgoY29sbGVjdG9yLCBpLCBsaXN0LCB0cnVlKTsKLX0KLQogc3RhdGlj
IHZvaWQgcG9wdWxhdGVTdWJncmlkTGluZU5hbWVMaXN0KENTU1ZhbHVlTGlzdCYgbGlzdCwgT3Jk
ZXJlZE5hbWVkTGluZXNDb2xsZWN0b3ImIGNvbGxlY3RvcikKIHsKLSAgICBwb3B1bGF0ZVN1Ymdy
aWRMaW5lTmFtZUxpc3QobGlzdCwgY29sbGVjdG9yLCAwLCBjb2xsZWN0b3IubmFtZWRHcmlkTGlu
ZUNvdW50KCkpOworICAgIGZvciAoaW50IGkgPSAwOyBpIDwgY29sbGVjdG9yLm5hbWVkR3JpZExp
bmVDb3VudCgpOyBpKyspCisgICAgICAgIGFkZFZhbHVlc0Zvck5hbWVkR3JpZExpbmVzQXRJbmRl
eChjb2xsZWN0b3IsIGksIGxpc3QsIHRydWUpOwogfQogCiBzdGF0aWMgUmVmPENTU1ZhbHVlPiB2
YWx1ZUZvckdyaWRUcmFja0xpc3QoR3JpZFRyYWNrU2l6aW5nRGlyZWN0aW9uIGRpcmVjdGlvbiwg
UmVuZGVyT2JqZWN0KiByZW5kZXJlciwgY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlKQpAQCAtMTA3
Nyw4ICsxMDQ0LDYgQEAgc3RhdGljIFJlZjxDU1NWYWx1ZT4gdmFsdWVGb3JHcmlkVHJhY2tMaXN0
KEdyaWRUcmFja1NpemluZ0RpcmVjdGlvbiBkaXJlY3Rpb24sIFIKICAgICAgICAgcmV0dXJuIENT
U1ZhbHVlUG9vbDo6c2luZ2xldG9uKCkuY3JlYXRlSWRlbnRpZmllclZhbHVlKENTU1ZhbHVlTm9u
ZSk7CiAKICAgICBhdXRvIGxpc3QgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVk
KCk7Ci0gICAgaWYgKGlzU3ViZ3JpZCkKLSAgICAgICAgbGlzdC0+YXBwZW5kKENTU1ZhbHVlUG9v
bDo6c2luZ2xldG9uKCkuY3JlYXRlSWRlbnRpZmllclZhbHVlKENTU1ZhbHVlU3ViZ3JpZCkpOwog
CiAgICAgLy8gSWYgdGhlIGVsZW1lbnQgaXMgYSBncmlkIGNvbnRhaW5lciwgdGhlIHJlc29sdmVk
IHZhbHVlIGlzIHRoZSB1c2VkIHZhbHVlLAogICAgIC8vIHNwZWNpZnlpbmcgdHJhY2sgc2l6ZXMg
aW4gcGl4ZWxzIGFuZCBleHBhbmRpbmcgdGhlIHJlcGVhdCgpIG5vdGF0aW9uLgpAQCAtMTA4Nyw2
ICsxMDUyLDggQEAgc3RhdGljIFJlZjxDU1NWYWx1ZT4gdmFsdWVGb3JHcmlkVHJhY2tMaXN0KEdy
aWRUcmFja1NpemluZ0RpcmVjdGlvbiBkaXJlY3Rpb24sIFIKICAgICBpZiAoaXNSZW5kZXJHcmlk
ICYmICghaXNTdWJncmlkIHx8IGRvd25jYXN0PFJlbmRlckdyaWQ+KHJlbmRlcmVyKS0+aXNTdWJn
cmlkKGRpcmVjdGlvbikpKSB7CiAgICAgICAgIGF1dG8qIGdyaWQgPSBkb3duY2FzdDxSZW5kZXJH
cmlkPihyZW5kZXJlcik7CiAgICAgICAgIGlmIChpc1N1YmdyaWQpIHsKKyAgICAgICAgICAgIGxp
c3QtPmFwcGVuZChDU1NWYWx1ZVBvb2w6OnNpbmdsZXRvbigpLmNyZWF0ZUlkZW50aWZpZXJWYWx1
ZShDU1NWYWx1ZVN1YmdyaWQpKTsKKwogICAgICAgICAgICAgT3JkZXJlZE5hbWVkTGluZXNDb2xs
ZWN0b3JJblN1YmdyaWRMYXlvdXQgY29sbGVjdG9yKHN0eWxlLCBpc1Jvd0F4aXMsIGdyaWQtPm51
bVRyYWNrcyhkaXJlY3Rpb24pKTsKICAgICAgICAgICAgIHBvcHVsYXRlU3ViZ3JpZExpbmVOYW1l
TGlzdChsaXN0LmdldCgpLCBjb2xsZWN0b3IpOwogICAgICAgICAgICAgcmV0dXJuIGxpc3Q7CkBA
IC0xMTAyLDU0ICsxMDY5LDQzIEBAIHN0YXRpYyBSZWY8Q1NTVmFsdWU+IHZhbHVlRm9yR3JpZFRy
YWNrTGlzdChHcmlkVHJhY2tTaXppbmdEaXJlY3Rpb24gZGlyZWN0aW9uLCBSCiAgICAgfQogCiAg
ICAgLy8gT3RoZXJ3aXNlLCB0aGUgcmVzb2x2ZWQgdmFsdWUgaXMgdGhlIGNvbXB1dGVkIHZhbHVl
LCBwcmVzZXJ2aW5nIHJlcGVhdCgpLgotICAgIE9yZGVyZWROYW1lZExpbmVzQ29sbGVjdG9yIGNv
bGxlY3RvcihzdHlsZSwgaXNSb3dBeGlzKTsKLSAgICBhdXRvIGdldFRyYWNrU2l6ZSA9IFsmXShj
b25zdCBHcmlkVHJhY2tTaXplJiB2KSB7Ci0gICAgICAgIHJldHVybiBzcGVjaWZpZWRWYWx1ZUZv
ckdyaWRUcmFja1NpemUodiwgc3R5bGUpOwotICAgIH07Ci0KLSAgICBPcmRlcmVkTmFtZWRMaW5l
c0NvbGxlY3Rvckluc2lkZVJlcGVhdCByZXBlYXRDb2xsZWN0b3Ioc3R5bGUsIGlzUm93QXhpcyk7
Ci0gICAgaWYgKGlzU3ViZ3JpZCkgewotICAgICAgICBpZiAoIXJlcGVhdENvbGxlY3Rvci5uYW1l
ZEdyaWRMaW5lQ291bnQoKSkgewotICAgICAgICAgICAgcG9wdWxhdGVTdWJncmlkTGluZU5hbWVM
aXN0KGxpc3QuZ2V0KCksIGNvbGxlY3Rvcik7Ci0gICAgICAgICAgICByZXR1cm4gbGlzdDsKKyAg
ICBjb25zdCBHcmlkVHJhY2tMaXN0JiBjb21wdXRlZFRyYWNrcyA9IGlzUm93QXhpcyA/IHN0eWxl
LmdyaWRDb2x1bW5MaXN0KCkgOiBzdHlsZS5ncmlkUm93TGlzdCgpOworCisgICAgYXV0byByZXBl
YXRWaXNpdG9yID0gWyZdKENTU1ZhbHVlTGlzdCYgZGVzdCwgY29uc3QgUmVwZWF0RW50cnkmIGVu
dHJ5KSB7CisgICAgICAgIGlmIChzdGQ6OmhvbGRzX2FsdGVybmF0aXZlPFZlY3RvcjxTdHJpbmc+
PihlbnRyeSkpIHsKKyAgICAgICAgICAgIGF1dG8gbGluZU5hbWVzVmFsdWUgPSBDU1NHcmlkTGlu
ZU5hbWVzVmFsdWU6OmNyZWF0ZSgpOworICAgICAgICAgICAgZm9yIChjb25zdCBhdXRvJiBuYW1l
IDogc3RkOjpnZXQ8VmVjdG9yPFN0cmluZz4+KGVudHJ5KSkKKyAgICAgICAgICAgICAgICBsaW5l
TmFtZXNWYWx1ZS0+YXBwZW5kKENTU1ZhbHVlUG9vbDo6c2luZ2xldG9uKCkuY3JlYXRlQ3VzdG9t
SWRlbnQobmFtZSkpOworICAgICAgICAgICAgZGVzdC5hcHBlbmQobGluZU5hbWVzVmFsdWUpOwor
ICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgZGVzdC5hcHBlbmQoc3BlY2lmaWVkVmFsdWVG
b3JHcmlkVHJhY2tTaXplKHN0ZDo6Z2V0PEdyaWRUcmFja1NpemU+KGVudHJ5KSwgc3R5bGUpKTsK
ICAgICAgICAgfQorICAgIH07CiAKLSAgICAgICAgLy8gQWRkIHRoZSBsaW5lIG5hbWVzIHRoYXQg
cHJlY2VkZSB0aGUgYXV0byByZXBlYXQoKS4KLSAgICAgICAgaW50IGF1dG9SZXBlYXRJbnNlcnRp
b25Qb2ludCA9IGlzUm93QXhpcyA/IHN0eWxlLmdyaWRBdXRvUmVwZWF0Q29sdW1uc0luc2VydGlv
blBvaW50KCkgOiBzdHlsZS5ncmlkQXV0b1JlcGVhdFJvd3NJbnNlcnRpb25Qb2ludCgpOwotICAg
ICAgICBhdXRvUmVwZWF0SW5zZXJ0aW9uUG9pbnQgPSBzdGQ6OmNsYW1wPGludD4oYXV0b1JlcGVh
dEluc2VydGlvblBvaW50LCAwLCBjb2xsZWN0b3IubmFtZWRHcmlkTGluZUNvdW50KCkpOwotICAg
ICAgICBwb3B1bGF0ZVN1YmdyaWRMaW5lTmFtZUxpc3QobGlzdC5nZXQoKSwgY29sbGVjdG9yLCAw
LCBhdXRvUmVwZWF0SW5zZXJ0aW9uUG9pbnQpOwotCi0gICAgICAgIC8vIEFkZCBhIENTU0dyaWRB
dXRvUmVwZWF0VmFsdWUgd2l0aCB0aGUgY29udGVudHMgb2YgdGhlIGF1dG8gcmVwZWF0KCkuCi0g
ICAgICAgIEFTU0VSVCgoaXNSb3dBeGlzID8gc3R5bGUuZ3JpZEF1dG9SZXBlYXRDb2x1bW5zVHlw
ZSgpIDogc3R5bGUuZ3JpZEF1dG9SZXBlYXRSb3dzVHlwZSgpKSA9PSBBdXRvUmVwZWF0VHlwZTo6
RmlsbCk7Ci0gICAgICAgIGF1dG8gcmVwZWF0ZWRWYWx1ZXMgPSBDU1NHcmlkQXV0b1JlcGVhdFZh
bHVlOjpjcmVhdGUoQ1NTVmFsdWVBdXRvRmlsbCk7Ci0gICAgICAgIHBvcHVsYXRlU3ViZ3JpZExp
bmVOYW1lTGlzdChyZXBlYXRlZFZhbHVlcy5nZXQoKSwgcmVwZWF0Q29sbGVjdG9yKTsKLSAgICAg
ICAgbGlzdC0+YXBwZW5kKHJlcGVhdGVkVmFsdWVzLmdldCgpKTsKLQotICAgICAgICAvLyBBZGQg
dGhlIGxpbmUgbmFtZXMgdGhhdCBmb2xsb3cgdGhlIGF1dG8gcmVwZWF0KCkuCi0gICAgICAgIHBv
cHVsYXRlU3ViZ3JpZExpbmVOYW1lTGlzdChsaXN0LmdldCgpLCBjb2xsZWN0b3IsIGF1dG9SZXBl
YXRJbnNlcnRpb25Qb2ludCwgY29sbGVjdG9yLm5hbWVkR3JpZExpbmVDb3VudCgpKTsKLSAgICAg
ICAgcmV0dXJuIGxpc3Q7Ci0gICAgfQotCi0gICAgaWYgKGF1dG9SZXBlYXRUcmFja1NpemVzLmlz
RW1wdHkoKSkgewotICAgICAgICAvLyBJZiB0aGVyZSdzIG5vIGF1dG8gcmVwZWF0KCksIGp1c3Qg
YWRkIGFsbCB0aGUgbGluZSBuYW1lcyBhbmQgdHJhY2sgc2l6ZXMuCi0gICAgICAgIHBvcHVsYXRl
R3JpZFRyYWNrTGlzdChsaXN0LmdldCgpLCBjb2xsZWN0b3IsIHRyYWNrU2l6ZXMsIGdldFRyYWNr
U2l6ZSk7Ci0gICAgICAgIHJldHVybiBsaXN0OwotICAgIH0KLQotICAgIC8vIEFkZCB0aGUgbGlu
ZSBuYW1lcyBhbmQgdHJhY2sgc2l6ZXMgdGhhdCBwcmVjZWRlIHRoZSBhdXRvIHJlcGVhdCgpLgot
ICAgIGludCBhdXRvUmVwZWF0SW5zZXJ0aW9uUG9pbnQgPSBpc1Jvd0F4aXMgPyBzdHlsZS5ncmlk
QXV0b1JlcGVhdENvbHVtbnNJbnNlcnRpb25Qb2ludCgpIDogc3R5bGUuZ3JpZEF1dG9SZXBlYXRS
b3dzSW5zZXJ0aW9uUG9pbnQoKTsKLSAgICBhdXRvUmVwZWF0SW5zZXJ0aW9uUG9pbnQgPSBzdGQ6
OmNsYW1wPGludD4oYXV0b1JlcGVhdEluc2VydGlvblBvaW50LCAwLCB0cmFja1NpemVzLnNpemUo
KSk7Ci0gICAgcG9wdWxhdGVHcmlkVHJhY2tMaXN0KGxpc3QuZ2V0KCksIGNvbGxlY3RvciwgdHJh
Y2tTaXplcywgZ2V0VHJhY2tTaXplLCAwLCBhdXRvUmVwZWF0SW5zZXJ0aW9uUG9pbnQpOwotCi0g
ICAgLy8gQWRkIGEgQ1NTR3JpZEF1dG9SZXBlYXRWYWx1ZSB3aXRoIHRoZSBjb250ZW50cyBvZiB0
aGUgYXV0byByZXBlYXQoKS4KLSAgICBBdXRvUmVwZWF0VHlwZSBhdXRvUmVwZWF0VHlwZSA9IGlz
Um93QXhpcyA/IHN0eWxlLmdyaWRBdXRvUmVwZWF0Q29sdW1uc1R5cGUoKSA6IHN0eWxlLmdyaWRB
dXRvUmVwZWF0Um93c1R5cGUoKTsKLSAgICBhdXRvIHJlcGVhdGVkVmFsdWVzID0gQ1NTR3JpZEF1
dG9SZXBlYXRWYWx1ZTo6Y3JlYXRlKGF1dG9SZXBlYXRUeXBlID09IEF1dG9SZXBlYXRUeXBlOjpG
aWxsID8gQ1NTVmFsdWVBdXRvRmlsbCA6IENTU1ZhbHVlQXV0b0ZpdCk7CisgICAgYXV0byB0cmFj
a0VudHJ5VmlzaXRvciA9IFdURjo6bWFrZVZpc2l0b3IoWyZdKGNvbnN0IEdyaWRUcmFja1NpemUm
IHNpemUpIHsKKyAgICAgICAgbGlzdC0+YXBwZW5kKHNwZWNpZmllZFZhbHVlRm9yR3JpZFRyYWNr
U2l6ZShzaXplLCBzdHlsZSkpOworICAgIH0sIFsmXShjb25zdCBWZWN0b3I8U3RyaW5nPiYgbmFt
ZXMpIHsKKyAgICAgICAgYXV0byBsaW5lTmFtZXNWYWx1ZSA9IENTU0dyaWRMaW5lTmFtZXNWYWx1
ZTo6Y3JlYXRlKCk7CisgICAgICAgIGZvciAoY29uc3QgYXV0byYgbmFtZSA6IG5hbWVzKQorICAg
ICAgICAgICAgbGluZU5hbWVzVmFsdWUtPmFwcGVuZChDU1NWYWx1ZVBvb2w6OnNpbmdsZXRvbigp
LmNyZWF0ZUN1c3RvbUlkZW50KG5hbWUpKTsKKyAgICAgICAgbGlzdC0+YXBwZW5kKGxpbmVOYW1l
c1ZhbHVlKTsKKyAgICB9LCBbJl0oY29uc3QgR3JpZFRyYWNrRW50cnlSZXBlYXQmIHJlcGVhdCkg
eworICAgICAgICBhdXRvIHJlcGVhdGVkVmFsdWVzID0gQ1NTR3JpZEludGVnZXJSZXBlYXRWYWx1
ZTo6Y3JlYXRlKHJlcGVhdC5yZXBlYXRzKTsKKyAgICAgICAgZm9yIChjb25zdCBhdXRvJiBlbnRy
eSA6IHJlcGVhdC5saXN0KQorICAgICAgICAgICAgcmVwZWF0VmlzaXRvcihyZXBlYXRlZFZhbHVl
cywgZW50cnkpOworICAgICAgICBsaXN0LT5hcHBlbmQocmVwZWF0ZWRWYWx1ZXMpOworICAgIH0s
IFsmXShjb25zdCBHcmlkVHJhY2tFbnRyeUF1dG9SZXBlYXQmIHJlcGVhdCkgeworICAgICAgICBh
dXRvIHJlcGVhdGVkVmFsdWVzID0gQ1NTR3JpZEF1dG9SZXBlYXRWYWx1ZTo6Y3JlYXRlKHJlcGVh
dC50eXBlID09IEF1dG9SZXBlYXRUeXBlOjpGaWxsID8gQ1NTVmFsdWVBdXRvRmlsbCA6IENTU1Zh
bHVlQXV0b0ZpdCk7CisgICAgICAgIGZvciAoY29uc3QgYXV0byYgZW50cnkgOiByZXBlYXQubGlz
dCkKKyAgICAgICAgICAgIHJlcGVhdFZpc2l0b3IocmVwZWF0ZWRWYWx1ZXMsIGVudHJ5KTsKKyAg
ICAgICAgbGlzdC0+YXBwZW5kKHJlcGVhdGVkVmFsdWVzKTsKKyAgICB9LCBbJl0oY29uc3QgR3Jp
ZFRyYWNrRW50cnlTdWJncmlkJikgeworICAgICAgICBsaXN0LT5hcHBlbmQoQ1NTVmFsdWVQb29s
OjpzaW5nbGV0b24oKS5jcmVhdGVJZGVudGlmaWVyVmFsdWUoQ1NTVmFsdWVTdWJncmlkKSk7Cisg
ICAgfSk7CiAKLSAgICBwb3B1bGF0ZUdyaWRUcmFja0xpc3QocmVwZWF0ZWRWYWx1ZXMuZ2V0KCks
IHJlcGVhdENvbGxlY3RvciwgYXV0b1JlcGVhdFRyYWNrU2l6ZXMsIGdldFRyYWNrU2l6ZSk7Ci0g
ICAgbGlzdC0+YXBwZW5kKHJlcGVhdGVkVmFsdWVzLmdldCgpKTsKKyAgICBmb3IgKGNvbnN0IGF1
dG8mIGVudHJ5IDogY29tcHV0ZWRUcmFja3MpCisgICAgICAgIHN0ZDo6dmlzaXQodHJhY2tFbnRy
eVZpc2l0b3IsIGVudHJ5KTsKIAotICAgIC8vIEFkZCB0aGUgbGluZSBuYW1lcyBhbmQgdHJhY2sg
c2l6ZXMgdGhhdCBmb2xsb3cgdGhlIGF1dG8gcmVwZWF0KCkuCi0gICAgcG9wdWxhdGVHcmlkVHJh
Y2tMaXN0KGxpc3QuZ2V0KCksIGNvbGxlY3RvciwgdHJhY2tTaXplcywgZ2V0VHJhY2tTaXplLCBh
dXRvUmVwZWF0SW5zZXJ0aW9uUG9pbnQsIHRyYWNrU2l6ZXMuc2l6ZSgpLCAxKTsKICAgICByZXR1
cm4gbGlzdDsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxl
L1JlbmRlclN0eWxlLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5
bGUuaAppbmRleCAyNjhmZGIwNDVhNDA3NmFkODM5NzAwN2QxODc4OGRjMmQ4M2M0ZWZlLi4xMzQ5
MGNiZTRhZDY0Y2MyMDJmNzMyMTUzYjM2Y2Y5NWRkMTU1ZTE4IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaApAQCAtNTYxLDMwICs1NjEsMzIgQEAgcHVi
bGljOgogICAgIGNvbnN0IFN0eWxlU2VsZkFsaWdubWVudERhdGEmIGp1c3RpZnlJdGVtcygpIGNv
bnN0IHsgcmV0dXJuIG1fcmFyZU5vbkluaGVyaXRlZERhdGEtPmp1c3RpZnlJdGVtczsgfQogICAg
IGNvbnN0IFN0eWxlU2VsZkFsaWdubWVudERhdGEmIGp1c3RpZnlTZWxmKCkgY29uc3QgeyByZXR1
cm4gbV9yYXJlTm9uSW5oZXJpdGVkRGF0YS0+anVzdGlmeVNlbGY7IH0KIAotICAgIGNvbnN0IFZl
Y3RvcjxHcmlkVHJhY2tTaXplPiYgZ3JpZENvbHVtbnMoKSBjb25zdCB7IHJldHVybiBtX3JhcmVO
b25Jbmhlcml0ZWREYXRhLT5ncmlkLT5ncmlkQ29sdW1uczsgfQotICAgIGNvbnN0IFZlY3RvcjxH
cmlkVHJhY2tTaXplPiYgZ3JpZFJvd3MoKSBjb25zdCB7IHJldHVybiBtX3JhcmVOb25Jbmhlcml0
ZWREYXRhLT5ncmlkLT5ncmlkUm93czsgfQotICAgIGNvbnN0IFZlY3RvcjxHcmlkVHJhY2tTaXpl
PiYgZ3JpZEF1dG9SZXBlYXRDb2x1bW5zKCkgY29uc3QgeyByZXR1cm4gbV9yYXJlTm9uSW5oZXJp
dGVkRGF0YS0+Z3JpZC0+Z3JpZEF1dG9SZXBlYXRDb2x1bW5zOyB9Ci0gICAgY29uc3QgVmVjdG9y
PEdyaWRUcmFja1NpemU+JiBncmlkQXV0b1JlcGVhdFJvd3MoKSBjb25zdCB7IHJldHVybiBtX3Jh
cmVOb25Jbmhlcml0ZWREYXRhLT5ncmlkLT5ncmlkQXV0b1JlcGVhdFJvd3M7IH0KLSAgICB1bnNp
Z25lZCBncmlkQXV0b1JlcGVhdENvbHVtbnNJbnNlcnRpb25Qb2ludCgpIGNvbnN0IHsgcmV0dXJu
IG1fcmFyZU5vbkluaGVyaXRlZERhdGEtPmdyaWQtPmF1dG9SZXBlYXRDb2x1bW5zSW5zZXJ0aW9u
UG9pbnQ7IH0KLSAgICB1bnNpZ25lZCBncmlkQXV0b1JlcGVhdFJvd3NJbnNlcnRpb25Qb2ludCgp
IGNvbnN0IHsgcmV0dXJuIG1fcmFyZU5vbkluaGVyaXRlZERhdGEtPmdyaWQtPmF1dG9SZXBlYXRS
b3dzSW5zZXJ0aW9uUG9pbnQ7IH0KLSAgICBBdXRvUmVwZWF0VHlwZSBncmlkQXV0b1JlcGVhdENv
bHVtbnNUeXBlKCkgY29uc3QgIHsgcmV0dXJuIG1fcmFyZU5vbkluaGVyaXRlZERhdGEtPmdyaWQt
PmF1dG9SZXBlYXRDb2x1bW5zVHlwZTsgfQotICAgIEF1dG9SZXBlYXRUeXBlIGdyaWRBdXRvUmVw
ZWF0Um93c1R5cGUoKSBjb25zdCAgeyByZXR1cm4gbV9yYXJlTm9uSW5oZXJpdGVkRGF0YS0+Z3Jp
ZC0+YXV0b1JlcGVhdFJvd3NUeXBlOyB9Ci0gICAgY29uc3QgTmFtZWRHcmlkTGluZXNNYXAmIG5h
bWVkR3JpZENvbHVtbkxpbmVzKCkgY29uc3QgeyByZXR1cm4gbV9yYXJlTm9uSW5oZXJpdGVkRGF0
YS0+Z3JpZC0+bmFtZWRHcmlkQ29sdW1uTGluZXM7IH0KLSAgICBjb25zdCBOYW1lZEdyaWRMaW5l
c01hcCYgbmFtZWRHcmlkUm93TGluZXMoKSBjb25zdCB7IHJldHVybiBtX3JhcmVOb25Jbmhlcml0
ZWREYXRhLT5ncmlkLT5uYW1lZEdyaWRSb3dMaW5lczsgfQotICAgIGNvbnN0IE9yZGVyZWROYW1l
ZEdyaWRMaW5lc01hcCYgb3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzKCkgY29uc3QgeyByZXR1
cm4gbV9yYXJlTm9uSW5oZXJpdGVkRGF0YS0+Z3JpZC0+b3JkZXJlZE5hbWVkR3JpZENvbHVtbkxp
bmVzOyB9Ci0gICAgY29uc3QgT3JkZXJlZE5hbWVkR3JpZExpbmVzTWFwJiBvcmRlcmVkTmFtZWRH
cmlkUm93TGluZXMoKSBjb25zdCB7IHJldHVybiBtX3JhcmVOb25Jbmhlcml0ZWREYXRhLT5ncmlk
LT5vcmRlcmVkTmFtZWRHcmlkUm93TGluZXM7IH0KLSAgICBjb25zdCBOYW1lZEdyaWRMaW5lc01h
cCYgYXV0b1JlcGVhdE5hbWVkR3JpZENvbHVtbkxpbmVzKCkgY29uc3QgeyByZXR1cm4gbV9yYXJl
Tm9uSW5oZXJpdGVkRGF0YS0+Z3JpZC0+YXV0b1JlcGVhdE5hbWVkR3JpZENvbHVtbkxpbmVzOyB9
Ci0gICAgY29uc3QgTmFtZWRHcmlkTGluZXNNYXAmIGF1dG9SZXBlYXROYW1lZEdyaWRSb3dMaW5l
cygpIGNvbnN0IHsgcmV0dXJuIG1fcmFyZU5vbkluaGVyaXRlZERhdGEtPmdyaWQtPmF1dG9SZXBl
YXROYW1lZEdyaWRSb3dMaW5lczsgfQotICAgIGNvbnN0IE9yZGVyZWROYW1lZEdyaWRMaW5lc01h
cCYgYXV0b1JlcGVhdE9yZGVyZWROYW1lZEdyaWRDb2x1bW5MaW5lcygpIGNvbnN0IHsgcmV0dXJu
IG1fcmFyZU5vbkluaGVyaXRlZERhdGEtPmdyaWQtPmF1dG9SZXBlYXRPcmRlcmVkTmFtZWRHcmlk
Q29sdW1uTGluZXM7IH0KLSAgICBjb25zdCBPcmRlcmVkTmFtZWRHcmlkTGluZXNNYXAmIGF1dG9S
ZXBlYXRPcmRlcmVkTmFtZWRHcmlkUm93TGluZXMoKSBjb25zdCB7IHJldHVybiBtX3JhcmVOb25J
bmhlcml0ZWREYXRhLT5ncmlkLT5hdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZFJvd0xpbmVzOyB9
CisgICAgY29uc3QgVmVjdG9yPEdyaWRUcmFja1NpemU+JiBncmlkQ29sdW1ucygpIGNvbnN0IHsg
cmV0dXJuIG1fcmFyZU5vbkluaGVyaXRlZERhdGEtPmdyaWQtPmdyaWRDb2x1bW5zKCk7IH0KKyAg
ICBjb25zdCBWZWN0b3I8R3JpZFRyYWNrU2l6ZT4mIGdyaWRSb3dzKCkgY29uc3QgeyByZXR1cm4g
bV9yYXJlTm9uSW5oZXJpdGVkRGF0YS0+Z3JpZC0+Z3JpZFJvd3MoKTsgfQorICAgIGNvbnN0IEdy
aWRUcmFja0xpc3QmIGdyaWRDb2x1bW5MaXN0KCkgY29uc3QgeyByZXR1cm4gbV9yYXJlTm9uSW5o
ZXJpdGVkRGF0YS0+Z3JpZC0+Y29sdW1ucygpOyB9CisgICAgY29uc3QgR3JpZFRyYWNrTGlzdCYg
Z3JpZFJvd0xpc3QoKSBjb25zdCB7IHJldHVybiBtX3JhcmVOb25Jbmhlcml0ZWREYXRhLT5ncmlk
LT5yb3dzKCk7IH0KKyAgICBjb25zdCBWZWN0b3I8R3JpZFRyYWNrU2l6ZT4mIGdyaWRBdXRvUmVw
ZWF0Q29sdW1ucygpIGNvbnN0IHsgcmV0dXJuIG1fcmFyZU5vbkluaGVyaXRlZERhdGEtPmdyaWQt
PmdyaWRBdXRvUmVwZWF0Q29sdW1ucygpOyB9CisgICAgY29uc3QgVmVjdG9yPEdyaWRUcmFja1Np
emU+JiBncmlkQXV0b1JlcGVhdFJvd3MoKSBjb25zdCB7IHJldHVybiBtX3JhcmVOb25Jbmhlcml0
ZWREYXRhLT5ncmlkLT5ncmlkQXV0b1JlcGVhdFJvd3MoKTsgfQorICAgIHVuc2lnbmVkIGdyaWRB
dXRvUmVwZWF0Q29sdW1uc0luc2VydGlvblBvaW50KCkgY29uc3QgeyByZXR1cm4gbV9yYXJlTm9u
SW5oZXJpdGVkRGF0YS0+Z3JpZC0+YXV0b1JlcGVhdENvbHVtbnNJbnNlcnRpb25Qb2ludCgpOyB9
CisgICAgdW5zaWduZWQgZ3JpZEF1dG9SZXBlYXRSb3dzSW5zZXJ0aW9uUG9pbnQoKSBjb25zdCB7
IHJldHVybiBtX3JhcmVOb25Jbmhlcml0ZWREYXRhLT5ncmlkLT5hdXRvUmVwZWF0Um93c0luc2Vy
dGlvblBvaW50KCk7IH0KKyAgICBBdXRvUmVwZWF0VHlwZSBncmlkQXV0b1JlcGVhdENvbHVtbnNU
eXBlKCkgY29uc3QgIHsgcmV0dXJuIG1fcmFyZU5vbkluaGVyaXRlZERhdGEtPmdyaWQtPmF1dG9S
ZXBlYXRDb2x1bW5zVHlwZSgpOyB9CisgICAgQXV0b1JlcGVhdFR5cGUgZ3JpZEF1dG9SZXBlYXRS
b3dzVHlwZSgpIGNvbnN0ICB7IHJldHVybiBtX3JhcmVOb25Jbmhlcml0ZWREYXRhLT5ncmlkLT5h
dXRvUmVwZWF0Um93c1R5cGUoKTsgfQorICAgIGNvbnN0IE5hbWVkR3JpZExpbmVzTWFwJiBuYW1l
ZEdyaWRDb2x1bW5MaW5lcygpIGNvbnN0IHsgcmV0dXJuIG1fcmFyZU5vbkluaGVyaXRlZERhdGEt
PmdyaWQtPm5hbWVkR3JpZENvbHVtbkxpbmVzKCk7IH0KKyAgICBjb25zdCBOYW1lZEdyaWRMaW5l
c01hcCYgbmFtZWRHcmlkUm93TGluZXMoKSBjb25zdCB7IHJldHVybiBtX3JhcmVOb25Jbmhlcml0
ZWREYXRhLT5ncmlkLT5uYW1lZEdyaWRSb3dMaW5lcygpOyB9CisgICAgY29uc3QgT3JkZXJlZE5h
bWVkR3JpZExpbmVzTWFwJiBvcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXMoKSBjb25zdCB7IHJl
dHVybiBtX3JhcmVOb25Jbmhlcml0ZWREYXRhLT5ncmlkLT5vcmRlcmVkTmFtZWRHcmlkQ29sdW1u
TGluZXMoKTsgfQorICAgIGNvbnN0IE9yZGVyZWROYW1lZEdyaWRMaW5lc01hcCYgb3JkZXJlZE5h
bWVkR3JpZFJvd0xpbmVzKCkgY29uc3QgeyByZXR1cm4gbV9yYXJlTm9uSW5oZXJpdGVkRGF0YS0+
Z3JpZC0+b3JkZXJlZE5hbWVkR3JpZFJvd0xpbmVzKCk7IH0KKyAgICBjb25zdCBOYW1lZEdyaWRM
aW5lc01hcCYgYXV0b1JlcGVhdE5hbWVkR3JpZENvbHVtbkxpbmVzKCkgY29uc3QgeyByZXR1cm4g
bV9yYXJlTm9uSW5oZXJpdGVkRGF0YS0+Z3JpZC0+YXV0b1JlcGVhdE5hbWVkR3JpZENvbHVtbkxp
bmVzKCk7IH0KKyAgICBjb25zdCBOYW1lZEdyaWRMaW5lc01hcCYgYXV0b1JlcGVhdE5hbWVkR3Jp
ZFJvd0xpbmVzKCkgY29uc3QgeyByZXR1cm4gbV9yYXJlTm9uSW5oZXJpdGVkRGF0YS0+Z3JpZC0+
YXV0b1JlcGVhdE5hbWVkR3JpZFJvd0xpbmVzKCk7IH0KKyAgICBjb25zdCBPcmRlcmVkTmFtZWRH
cmlkTGluZXNNYXAmIGF1dG9SZXBlYXRPcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXMoKSBjb25z
dCB7IHJldHVybiBtX3JhcmVOb25Jbmhlcml0ZWREYXRhLT5ncmlkLT5hdXRvUmVwZWF0T3JkZXJl
ZE5hbWVkR3JpZENvbHVtbkxpbmVzKCk7IH0KKyAgICBjb25zdCBPcmRlcmVkTmFtZWRHcmlkTGlu
ZXNNYXAmIGF1dG9SZXBlYXRPcmRlcmVkTmFtZWRHcmlkUm93TGluZXMoKSBjb25zdCB7IHJldHVy
biBtX3JhcmVOb25Jbmhlcml0ZWREYXRhLT5ncmlkLT5hdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3Jp
ZFJvd0xpbmVzKCk7IH0KICAgICBjb25zdCBOYW1lZEdyaWRMaW5lc01hcCYgaW1wbGljaXROYW1l
ZEdyaWRDb2x1bW5MaW5lcygpIGNvbnN0IHsgcmV0dXJuIG1fcmFyZU5vbkluaGVyaXRlZERhdGEt
PmdyaWQtPmltcGxpY2l0TmFtZWRHcmlkQ29sdW1uTGluZXM7IH0KICAgICBjb25zdCBOYW1lZEdy
aWRMaW5lc01hcCYgaW1wbGljaXROYW1lZEdyaWRSb3dMaW5lcygpIGNvbnN0IHsgcmV0dXJuIG1f
cmFyZU5vbkluaGVyaXRlZERhdGEtPmdyaWQtPmltcGxpY2l0TmFtZWRHcmlkUm93TGluZXM7IH0K
ICAgICBjb25zdCBOYW1lZEdyaWRBcmVhTWFwJiBuYW1lZEdyaWRBcmVhKCkgY29uc3QgeyByZXR1
cm4gbV9yYXJlTm9uSW5oZXJpdGVkRGF0YS0+Z3JpZC0+bmFtZWRHcmlkQXJlYTsgfQogICAgIHNp
emVfdCBuYW1lZEdyaWRBcmVhUm93Q291bnQoKSBjb25zdCB7IHJldHVybiBtX3JhcmVOb25Jbmhl
cml0ZWREYXRhLT5ncmlkLT5uYW1lZEdyaWRBcmVhUm93Q291bnQ7IH0KICAgICBzaXplX3QgbmFt
ZWRHcmlkQXJlYUNvbHVtbkNvdW50KCkgY29uc3QgeyByZXR1cm4gbV9yYXJlTm9uSW5oZXJpdGVk
RGF0YS0+Z3JpZC0+bmFtZWRHcmlkQXJlYUNvbHVtbkNvdW50OyB9CiAgICAgR3JpZEF1dG9GbG93
IGdyaWRBdXRvRmxvdygpIGNvbnN0IHsgcmV0dXJuIHN0YXRpY19jYXN0PEdyaWRBdXRvRmxvdz4o
bV9yYXJlTm9uSW5oZXJpdGVkRGF0YS0+Z3JpZC0+Z3JpZEF1dG9GbG93KTsgfQotICAgIGJvb2wg
Z3JpZFN1YmdyaWRSb3dzKCkgY29uc3QgeyByZXR1cm4gbV9yYXJlTm9uSW5oZXJpdGVkRGF0YS0+
Z3JpZC0+c3ViZ3JpZFJvd3M7IH0KLSAgICBib29sIGdyaWRTdWJncmlkQ29sdW1ucygpIGNvbnN0
IHsgcmV0dXJuIG1fcmFyZU5vbkluaGVyaXRlZERhdGEtPmdyaWQtPnN1YmdyaWRDb2x1bW5zOyB9
CisgICAgYm9vbCBncmlkU3ViZ3JpZFJvd3MoKSBjb25zdCB7IHJldHVybiBtX3JhcmVOb25Jbmhl
cml0ZWREYXRhLT5ncmlkLT5zdWJncmlkUm93cygpOyB9CisgICAgYm9vbCBncmlkU3ViZ3JpZENv
bHVtbnMoKSBjb25zdCB7IHJldHVybiBtX3JhcmVOb25Jbmhlcml0ZWREYXRhLT5ncmlkLT5zdWJn
cmlkQ29sdW1ucygpOyB9CiAgICAgYm9vbCBpc0dyaWRBdXRvRmxvd0RpcmVjdGlvblJvdygpIGNv
bnN0IHsgcmV0dXJuIChtX3JhcmVOb25Jbmhlcml0ZWREYXRhLT5ncmlkLT5ncmlkQXV0b0Zsb3cg
JiBJbnRlcm5hbEF1dG9GbG93RGlyZWN0aW9uUm93KTsgfQogICAgIGJvb2wgaXNHcmlkQXV0b0Zs
b3dEaXJlY3Rpb25Db2x1bW4oKSBjb25zdCB7IHJldHVybiAobV9yYXJlTm9uSW5oZXJpdGVkRGF0
YS0+Z3JpZC0+Z3JpZEF1dG9GbG93ICYgSW50ZXJuYWxBdXRvRmxvd0RpcmVjdGlvbkNvbHVtbik7
IH0KICAgICBib29sIGlzR3JpZEF1dG9GbG93QWxnb3JpdGhtU3BhcnNlKCkgY29uc3QgeyByZXR1
cm4gKG1fcmFyZU5vbkluaGVyaXRlZERhdGEtPmdyaWQtPmdyaWRBdXRvRmxvdyAmIEludGVybmFs
QXV0b0Zsb3dBbGdvcml0aG1TcGFyc2UpOyB9CkBAIC0xMTg1LDMyICsxMTg3LDI0IEBAIHB1Ymxp
YzoKICAgICB2b2lkIHNldEJveERlY29yYXRpb25CcmVhayhCb3hEZWNvcmF0aW9uQnJlYWsgYikg
eyBTRVRfVkFSKG1fYm94RGF0YSwgbV9ib3hEZWNvcmF0aW9uQnJlYWssIHN0YXRpY19jYXN0PHVu
c2lnbmVkPihiKSk7IH0KICNlbmRpZgogCisgICAgdm9pZCBzZXRHcmlkQ29sdW1uTGlzdChjb25z
dCBHcmlkVHJhY2tMaXN0JiBsaXN0KQorICAgIHsKKyAgICAgICAgaWYgKCFjb21wYXJlRXF1YWwo
bV9yYXJlTm9uSW5oZXJpdGVkRGF0YS0+Z3JpZC0+Y29sdW1ucygpLCBsaXN0KSkKKyAgICAgICAg
ICAgIG1fcmFyZU5vbkluaGVyaXRlZERhdGEuYWNjZXNzKCkuZ3JpZC5hY2Nlc3MoKS5zZXRDb2x1
bW5zKGxpc3QpOworICAgIH0KKyAgICB2b2lkIHNldEdyaWRSb3dMaXN0KGNvbnN0IEdyaWRUcmFj
a0xpc3QmIGxpc3QpCisgICAgeworICAgICAgICBpZiAoIWNvbXBhcmVFcXVhbChtX3JhcmVOb25J
bmhlcml0ZWREYXRhLT5ncmlkLT5yb3dzKCksIGxpc3QpKQorICAgICAgICAgICAgbV9yYXJlTm9u
SW5oZXJpdGVkRGF0YS5hY2Nlc3MoKS5ncmlkLmFjY2VzcygpLnNldFJvd3MobGlzdCk7CisgICAg
fQogICAgIHZvaWQgc2V0R3JpZEF1dG9Db2x1bW5zKGNvbnN0IFZlY3RvcjxHcmlkVHJhY2tTaXpl
PiYgdHJhY2tTaXplTGlzdCkgeyBTRVRfTkVTVEVEX1ZBUihtX3JhcmVOb25Jbmhlcml0ZWREYXRh
LCBncmlkLCBncmlkQXV0b0NvbHVtbnMsIHRyYWNrU2l6ZUxpc3QpOyB9CiAgICAgdm9pZCBzZXRH
cmlkQXV0b1Jvd3MoY29uc3QgVmVjdG9yPEdyaWRUcmFja1NpemU+JiB0cmFja1NpemVMaXN0KSB7
IFNFVF9ORVNURURfVkFSKG1fcmFyZU5vbkluaGVyaXRlZERhdGEsIGdyaWQsIGdyaWRBdXRvUm93
cywgdHJhY2tTaXplTGlzdCk7IH0KLSAgICB2b2lkIHNldEdyaWRDb2x1bW5zKGNvbnN0IFZlY3Rv
cjxHcmlkVHJhY2tTaXplPiYgbGVuZ3RocykgeyBTRVRfTkVTVEVEX1ZBUihtX3JhcmVOb25Jbmhl
cml0ZWREYXRhLCBncmlkLCBncmlkQ29sdW1ucywgbGVuZ3Rocyk7IH0KLSAgICB2b2lkIHNldEdy
aWRSb3dzKGNvbnN0IFZlY3RvcjxHcmlkVHJhY2tTaXplPiYgbGVuZ3RocykgeyBTRVRfTkVTVEVE
X1ZBUihtX3JhcmVOb25Jbmhlcml0ZWREYXRhLCBncmlkLCBncmlkUm93cywgbGVuZ3Rocyk7IH0K
LSAgICB2b2lkIHNldEdyaWRBdXRvUmVwZWF0Q29sdW1ucyhjb25zdCBWZWN0b3I8R3JpZFRyYWNr
U2l6ZT4mIGxlbmd0aHMpIHsgU0VUX05FU1RFRF9WQVIobV9yYXJlTm9uSW5oZXJpdGVkRGF0YSwg
Z3JpZCwgZ3JpZEF1dG9SZXBlYXRDb2x1bW5zLCBsZW5ndGhzKTsgfQotICAgIHZvaWQgc2V0R3Jp
ZEF1dG9SZXBlYXRSb3dzKGNvbnN0IFZlY3RvcjxHcmlkVHJhY2tTaXplPiYgbGVuZ3RocykgeyBT
RVRfTkVTVEVEX1ZBUihtX3JhcmVOb25Jbmhlcml0ZWREYXRhLCBncmlkLCBncmlkQXV0b1JlcGVh
dFJvd3MsIGxlbmd0aHMpOyB9Ci0gICAgdm9pZCBzZXRHcmlkQXV0b1JlcGVhdENvbHVtbnNJbnNl
cnRpb25Qb2ludChjb25zdCB1bnNpZ25lZCBpbnNlcnRpb25Qb2ludCkgeyBTRVRfTkVTVEVEX1ZB
UihtX3JhcmVOb25Jbmhlcml0ZWREYXRhLCBncmlkLCBhdXRvUmVwZWF0Q29sdW1uc0luc2VydGlv
blBvaW50LCBpbnNlcnRpb25Qb2ludCk7IH0KLSAgICB2b2lkIHNldEdyaWRBdXRvUmVwZWF0Um93
c0luc2VydGlvblBvaW50KGNvbnN0IHVuc2lnbmVkIGluc2VydGlvblBvaW50KSB7IFNFVF9ORVNU
RURfVkFSKG1fcmFyZU5vbkluaGVyaXRlZERhdGEsIGdyaWQsIGF1dG9SZXBlYXRSb3dzSW5zZXJ0
aW9uUG9pbnQsIGluc2VydGlvblBvaW50KTsgfQotICAgIHZvaWQgc2V0R3JpZEF1dG9SZXBlYXRD
b2x1bW5zVHlwZShjb25zdCBBdXRvUmVwZWF0VHlwZSBhdXRvUmVwZWF0VHlwZSkgeyBTRVRfTkVT
VEVEX1ZBUihtX3JhcmVOb25Jbmhlcml0ZWREYXRhLCBncmlkLCBhdXRvUmVwZWF0Q29sdW1uc1R5
cGUsIGF1dG9SZXBlYXRUeXBlKTsgfQotICAgIHZvaWQgc2V0R3JpZEF1dG9SZXBlYXRSb3dzVHlw
ZShjb25zdCBBdXRvUmVwZWF0VHlwZSBhdXRvUmVwZWF0VHlwZSkgeyBTRVRfTkVTVEVEX1ZBUiht
X3JhcmVOb25Jbmhlcml0ZWREYXRhLCBncmlkLCBhdXRvUmVwZWF0Um93c1R5cGUsIGF1dG9SZXBl
YXRUeXBlKTsgfQotICAgIHZvaWQgc2V0TmFtZWRHcmlkQ29sdW1uTGluZXMoY29uc3QgTmFtZWRH
cmlkTGluZXNNYXAmIG5hbWVkR3JpZENvbHVtbkxpbmVzKSB7IFNFVF9ORVNURURfVkFSKG1fcmFy
ZU5vbkluaGVyaXRlZERhdGEsIGdyaWQsIG5hbWVkR3JpZENvbHVtbkxpbmVzLCBuYW1lZEdyaWRD
b2x1bW5MaW5lcyk7IH0KLSAgICB2b2lkIHNldE5hbWVkR3JpZFJvd0xpbmVzKGNvbnN0IE5hbWVk
R3JpZExpbmVzTWFwJiBuYW1lZEdyaWRSb3dMaW5lcykgeyBTRVRfTkVTVEVEX1ZBUihtX3JhcmVO
b25Jbmhlcml0ZWREYXRhLCBncmlkLCBuYW1lZEdyaWRSb3dMaW5lcywgbmFtZWRHcmlkUm93TGlu
ZXMpOyB9Ci0gICAgdm9pZCBzZXRPcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXMoY29uc3QgT3Jk
ZXJlZE5hbWVkR3JpZExpbmVzTWFwJiBvcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXMpIHsgU0VU
X05FU1RFRF9WQVIobV9yYXJlTm9uSW5oZXJpdGVkRGF0YSwgZ3JpZCwgb3JkZXJlZE5hbWVkR3Jp
ZENvbHVtbkxpbmVzLCBvcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXMpOyB9Ci0gICAgdm9pZCBz
ZXRPcmRlcmVkTmFtZWRHcmlkUm93TGluZXMoY29uc3QgT3JkZXJlZE5hbWVkR3JpZExpbmVzTWFw
JiBvcmRlcmVkTmFtZWRHcmlkUm93TGluZXMpIHsgU0VUX05FU1RFRF9WQVIobV9yYXJlTm9uSW5o
ZXJpdGVkRGF0YSwgZ3JpZCwgb3JkZXJlZE5hbWVkR3JpZFJvd0xpbmVzLCBvcmRlcmVkTmFtZWRH
cmlkUm93TGluZXMpOyB9Ci0gICAgdm9pZCBzZXRBdXRvUmVwZWF0TmFtZWRHcmlkQ29sdW1uTGlu
ZXMoY29uc3QgTmFtZWRHcmlkTGluZXNNYXAmIG5hbWVkR3JpZENvbHVtbkxpbmVzKSB7IFNFVF9O
RVNURURfVkFSKG1fcmFyZU5vbkluaGVyaXRlZERhdGEsIGdyaWQsIGF1dG9SZXBlYXROYW1lZEdy
aWRDb2x1bW5MaW5lcywgbmFtZWRHcmlkQ29sdW1uTGluZXMpOyB9Ci0gICAgdm9pZCBzZXRBdXRv
UmVwZWF0TmFtZWRHcmlkUm93TGluZXMoY29uc3QgTmFtZWRHcmlkTGluZXNNYXAmIG5hbWVkR3Jp
ZFJvd0xpbmVzKSB7IFNFVF9ORVNURURfVkFSKG1fcmFyZU5vbkluaGVyaXRlZERhdGEsIGdyaWQs
IGF1dG9SZXBlYXROYW1lZEdyaWRSb3dMaW5lcywgbmFtZWRHcmlkUm93TGluZXMpOyB9Ci0gICAg
dm9pZCBzZXRBdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzKGNvbnN0IE9yZGVy
ZWROYW1lZEdyaWRMaW5lc01hcCYgb3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzKSB7IFNFVF9O
RVNURURfVkFSKG1fcmFyZU5vbkluaGVyaXRlZERhdGEsIGdyaWQsIGF1dG9SZXBlYXRPcmRlcmVk
TmFtZWRHcmlkQ29sdW1uTGluZXMsIG9yZGVyZWROYW1lZEdyaWRDb2x1bW5MaW5lcyk7IH0KLSAg
ICB2b2lkIHNldEF1dG9SZXBlYXRPcmRlcmVkTmFtZWRHcmlkUm93TGluZXMoY29uc3QgT3JkZXJl
ZE5hbWVkR3JpZExpbmVzTWFwJiBvcmRlcmVkTmFtZWRHcmlkUm93TGluZXMpIHsgU0VUX05FU1RF
RF9WQVIobV9yYXJlTm9uSW5oZXJpdGVkRGF0YSwgZ3JpZCwgYXV0b1JlcGVhdE9yZGVyZWROYW1l
ZEdyaWRSb3dMaW5lcywgb3JkZXJlZE5hbWVkR3JpZFJvd0xpbmVzKTsgfQogICAgIHZvaWQgc2V0
SW1wbGljaXROYW1lZEdyaWRDb2x1bW5MaW5lcyhjb25zdCBOYW1lZEdyaWRMaW5lc01hcCYgbmFt
ZWRHcmlkQ29sdW1uTGluZXMpIHsgU0VUX05FU1RFRF9WQVIobV9yYXJlTm9uSW5oZXJpdGVkRGF0
YSwgZ3JpZCwgaW1wbGljaXROYW1lZEdyaWRDb2x1bW5MaW5lcywgbmFtZWRHcmlkQ29sdW1uTGlu
ZXMpOyB9CiAgICAgdm9pZCBzZXRJbXBsaWNpdE5hbWVkR3JpZFJvd0xpbmVzKGNvbnN0IE5hbWVk
R3JpZExpbmVzTWFwJiBuYW1lZEdyaWRSb3dMaW5lcykgeyBTRVRfTkVTVEVEX1ZBUihtX3JhcmVO
b25Jbmhlcml0ZWREYXRhLCBncmlkLCBpbXBsaWNpdE5hbWVkR3JpZFJvd0xpbmVzLCBuYW1lZEdy
aWRSb3dMaW5lcyk7IH0KICAgICB2b2lkIHNldE5hbWVkR3JpZEFyZWEoY29uc3QgTmFtZWRHcmlk
QXJlYU1hcCYgbmFtZWRHcmlkQXJlYSkgeyBTRVRfTkVTVEVEX1ZBUihtX3JhcmVOb25Jbmhlcml0
ZWREYXRhLCBncmlkLCBuYW1lZEdyaWRBcmVhLCBuYW1lZEdyaWRBcmVhKTsgfQogICAgIHZvaWQg
c2V0TmFtZWRHcmlkQXJlYVJvd0NvdW50KHNpemVfdCByb3dDb3VudCkgeyBTRVRfTkVTVEVEX1ZB
UihtX3JhcmVOb25Jbmhlcml0ZWREYXRhLCBncmlkLCBuYW1lZEdyaWRBcmVhUm93Q291bnQsIHJv
d0NvdW50KTsgfQogICAgIHZvaWQgc2V0TmFtZWRHcmlkQXJlYUNvbHVtbkNvdW50KHNpemVfdCBj
b2x1bW5Db3VudCkgeyBTRVRfTkVTVEVEX1ZBUihtX3JhcmVOb25Jbmhlcml0ZWREYXRhLCBncmlk
LCBuYW1lZEdyaWRBcmVhQ29sdW1uQ291bnQsIGNvbHVtbkNvdW50KTsgfQogICAgIHZvaWQgc2V0
R3JpZEF1dG9GbG93KEdyaWRBdXRvRmxvdyBmbG93KSB7IFNFVF9ORVNURURfVkFSKG1fcmFyZU5v
bkluaGVyaXRlZERhdGEsIGdyaWQsIGdyaWRBdXRvRmxvdywgZmxvdyk7IH0KLSAgICB2b2lkIHNl
dEdyaWRTdWJncmlkUm93cyhib29sIHN1YmdyaWQpIHsgU0VUX05FU1RFRF9WQVIobV9yYXJlTm9u
SW5oZXJpdGVkRGF0YSwgZ3JpZCwgc3ViZ3JpZFJvd3MsIHN1YmdyaWQpOyB9Ci0gICAgdm9pZCBz
ZXRHcmlkU3ViZ3JpZENvbHVtbnMoYm9vbCBzdWJncmlkKSB7IFNFVF9ORVNURURfVkFSKG1fcmFy
ZU5vbkluaGVyaXRlZERhdGEsIGdyaWQsIHN1YmdyaWRDb2x1bW5zLCBzdWJncmlkKTsgfQogICAg
IHZvaWQgc2V0R3JpZEl0ZW1Db2x1bW5TdGFydChjb25zdCBHcmlkUG9zaXRpb24mIGNvbHVtblN0
YXJ0UG9zaXRpb24pIHsgU0VUX05FU1RFRF9WQVIobV9yYXJlTm9uSW5oZXJpdGVkRGF0YSwgZ3Jp
ZEl0ZW0sIGdyaWRDb2x1bW5TdGFydCwgY29sdW1uU3RhcnRQb3NpdGlvbik7IH0KICAgICB2b2lk
IHNldEdyaWRJdGVtQ29sdW1uRW5kKGNvbnN0IEdyaWRQb3NpdGlvbiYgY29sdW1uRW5kUG9zaXRp
b24pIHsgU0VUX05FU1RFRF9WQVIobV9yYXJlTm9uSW5oZXJpdGVkRGF0YSwgZ3JpZEl0ZW0sIGdy
aWRDb2x1bW5FbmQsIGNvbHVtbkVuZFBvc2l0aW9uKTsgfQogICAgIHZvaWQgc2V0R3JpZEl0ZW1S
b3dTdGFydChjb25zdCBHcmlkUG9zaXRpb24mIHJvd1N0YXJ0UG9zaXRpb24pIHsgU0VUX05FU1RF
RF9WQVIobV9yYXJlTm9uSW5oZXJpdGVkRGF0YSwgZ3JpZEl0ZW0sIGdyaWRSb3dTdGFydCwgcm93
U3RhcnRQb3NpdGlvbik7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9TdHlsZUdyaWREYXRhLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9T
dHlsZUdyaWREYXRhLmNwcAppbmRleCA5MjM5MTk3YzVmZjUzYzBlNTZmZmQ4NDUwZWU3NWQ1YjNh
ZmQxZjk5Li41YzY4YjhiZmFkM2M2OTlkN2NiNjZmOGE2OTZjYjQ5YTY0Nzg2ZDY0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVHcmlkRGF0YS5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlR3JpZERhdGEuY3BwCkBAIC0z
MSwxNyArMzEsNyBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBTdHlsZUdyaWREYXRhOjpTdHls
ZUdyaWREYXRhKCkKLSAgICA6IGdyaWRDb2x1bW5zKFJlbmRlclN0eWxlOjppbml0aWFsR3JpZENv
bHVtbnMoKSkKLSAgICAsIGdyaWRSb3dzKFJlbmRlclN0eWxlOjppbml0aWFsR3JpZFJvd3MoKSkK
LSAgICAsIG5hbWVkR3JpZENvbHVtbkxpbmVzKFJlbmRlclN0eWxlOjppbml0aWFsTmFtZWRHcmlk
Q29sdW1uTGluZXMoKSkKLSAgICAsIG5hbWVkR3JpZFJvd0xpbmVzKFJlbmRlclN0eWxlOjppbml0
aWFsTmFtZWRHcmlkUm93TGluZXMoKSkKLSAgICAsIG9yZGVyZWROYW1lZEdyaWRDb2x1bW5MaW5l
cyhSZW5kZXJTdHlsZTo6aW5pdGlhbE9yZGVyZWROYW1lZEdyaWRDb2x1bW5MaW5lcygpKQotICAg
ICwgb3JkZXJlZE5hbWVkR3JpZFJvd0xpbmVzKFJlbmRlclN0eWxlOjppbml0aWFsT3JkZXJlZE5h
bWVkR3JpZFJvd0xpbmVzKCkpCi0gICAgLCBhdXRvUmVwZWF0TmFtZWRHcmlkQ29sdW1uTGluZXMo
UmVuZGVyU3R5bGU6OmluaXRpYWxOYW1lZEdyaWRDb2x1bW5MaW5lcygpKQotICAgICwgYXV0b1Jl
cGVhdE5hbWVkR3JpZFJvd0xpbmVzKFJlbmRlclN0eWxlOjppbml0aWFsTmFtZWRHcmlkUm93TGlu
ZXMoKSkKLSAgICAsIGF1dG9SZXBlYXRPcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXMoUmVuZGVy
U3R5bGU6OmluaXRpYWxPcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXMoKSkKLSAgICAsIGF1dG9S
ZXBlYXRPcmRlcmVkTmFtZWRHcmlkUm93TGluZXMoUmVuZGVyU3R5bGU6OmluaXRpYWxPcmRlcmVk
TmFtZWRHcmlkUm93TGluZXMoKSkKLSAgICAsIGltcGxpY2l0TmFtZWRHcmlkQ29sdW1uTGluZXMo
UmVuZGVyU3R5bGU6OmluaXRpYWxOYW1lZEdyaWRDb2x1bW5MaW5lcygpKQorICAgIDogaW1wbGlj
aXROYW1lZEdyaWRDb2x1bW5MaW5lcyhSZW5kZXJTdHlsZTo6aW5pdGlhbE5hbWVkR3JpZENvbHVt
bkxpbmVzKCkpCiAgICAgLCBpbXBsaWNpdE5hbWVkR3JpZFJvd0xpbmVzKFJlbmRlclN0eWxlOjpp
bml0aWFsTmFtZWRHcmlkUm93TGluZXMoKSkKICAgICAsIGdyaWRBdXRvRmxvdyhSZW5kZXJTdHls
ZTo6aW5pdGlhbEdyaWRBdXRvRmxvdygpKQogICAgICwgZ3JpZEF1dG9Sb3dzKFJlbmRlclN0eWxl
Ojppbml0aWFsR3JpZEF1dG9Sb3dzKCkpCkBAIC00OSwyOSArMzksMjkgQEAgU3R5bGVHcmlkRGF0
YTo6U3R5bGVHcmlkRGF0YSgpCiAgICAgLCBuYW1lZEdyaWRBcmVhKFJlbmRlclN0eWxlOjppbml0
aWFsTmFtZWRHcmlkQXJlYSgpKQogICAgICwgbmFtZWRHcmlkQXJlYVJvd0NvdW50KFJlbmRlclN0
eWxlOjppbml0aWFsTmFtZWRHcmlkQXJlYUNvdW50KCkpCiAgICAgLCBuYW1lZEdyaWRBcmVhQ29s
dW1uQ291bnQoUmVuZGVyU3R5bGU6OmluaXRpYWxOYW1lZEdyaWRBcmVhQ291bnQoKSkKLSAgICAs
IGdyaWRBdXRvUmVwZWF0Q29sdW1ucyhSZW5kZXJTdHlsZTo6aW5pdGlhbEdyaWRBdXRvUmVwZWF0
VHJhY2tzKCkpCi0gICAgLCBncmlkQXV0b1JlcGVhdFJvd3MoUmVuZGVyU3R5bGU6OmluaXRpYWxH
cmlkQXV0b1JlcGVhdFRyYWNrcygpKQotICAgICwgYXV0b1JlcGVhdENvbHVtbnNJbnNlcnRpb25Q
b2ludChSZW5kZXJTdHlsZTo6aW5pdGlhbEdyaWRBdXRvUmVwZWF0SW5zZXJ0aW9uUG9pbnQoKSkK
LSAgICAsIGF1dG9SZXBlYXRSb3dzSW5zZXJ0aW9uUG9pbnQoUmVuZGVyU3R5bGU6OmluaXRpYWxH
cmlkQXV0b1JlcGVhdEluc2VydGlvblBvaW50KCkpCi0gICAgLCBhdXRvUmVwZWF0Q29sdW1uc1R5
cGUoUmVuZGVyU3R5bGU6OmluaXRpYWxHcmlkQXV0b1JlcGVhdFR5cGUoKSkKLSAgICAsIGF1dG9S
ZXBlYXRSb3dzVHlwZShSZW5kZXJTdHlsZTo6aW5pdGlhbEdyaWRBdXRvUmVwZWF0VHlwZSgpKQot
ICAgICwgc3ViZ3JpZFJvd3MoZmFsc2UpCi0gICAgLCBzdWJncmlkQ29sdW1ucyhmYWxzZSkKKyAg
ICAsIG1fZ3JpZENvbHVtbnMoUmVuZGVyU3R5bGU6OmluaXRpYWxHcmlkQ29sdW1ucygpKQorICAg
ICwgbV9ncmlkUm93cyhSZW5kZXJTdHlsZTo6aW5pdGlhbEdyaWRSb3dzKCkpCisgICAgLCBtX25h
bWVkR3JpZENvbHVtbkxpbmVzKFJlbmRlclN0eWxlOjppbml0aWFsTmFtZWRHcmlkQ29sdW1uTGlu
ZXMoKSkKKyAgICAsIG1fbmFtZWRHcmlkUm93TGluZXMoUmVuZGVyU3R5bGU6OmluaXRpYWxOYW1l
ZEdyaWRSb3dMaW5lcygpKQorICAgICwgbV9vcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXMoUmVu
ZGVyU3R5bGU6OmluaXRpYWxPcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXMoKSkKKyAgICAsIG1f
b3JkZXJlZE5hbWVkR3JpZFJvd0xpbmVzKFJlbmRlclN0eWxlOjppbml0aWFsT3JkZXJlZE5hbWVk
R3JpZFJvd0xpbmVzKCkpCisgICAgLCBtX2F1dG9SZXBlYXROYW1lZEdyaWRDb2x1bW5MaW5lcyhS
ZW5kZXJTdHlsZTo6aW5pdGlhbE5hbWVkR3JpZENvbHVtbkxpbmVzKCkpCisgICAgLCBtX2F1dG9S
ZXBlYXROYW1lZEdyaWRSb3dMaW5lcyhSZW5kZXJTdHlsZTo6aW5pdGlhbE5hbWVkR3JpZFJvd0xp
bmVzKCkpCisgICAgLCBtX2F1dG9SZXBlYXRPcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXMoUmVu
ZGVyU3R5bGU6OmluaXRpYWxPcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXMoKSkKKyAgICAsIG1f
YXV0b1JlcGVhdE9yZGVyZWROYW1lZEdyaWRSb3dMaW5lcyhSZW5kZXJTdHlsZTo6aW5pdGlhbE9y
ZGVyZWROYW1lZEdyaWRSb3dMaW5lcygpKQorICAgICwgbV9ncmlkQXV0b1JlcGVhdENvbHVtbnMo
UmVuZGVyU3R5bGU6OmluaXRpYWxHcmlkQXV0b1JlcGVhdFRyYWNrcygpKQorICAgICwgbV9ncmlk
QXV0b1JlcGVhdFJvd3MoUmVuZGVyU3R5bGU6OmluaXRpYWxHcmlkQXV0b1JlcGVhdFRyYWNrcygp
KQorICAgICwgbV9hdXRvUmVwZWF0Q29sdW1uc0luc2VydGlvblBvaW50KFJlbmRlclN0eWxlOjpp
bml0aWFsR3JpZEF1dG9SZXBlYXRJbnNlcnRpb25Qb2ludCgpKQorICAgICwgbV9hdXRvUmVwZWF0
Um93c0luc2VydGlvblBvaW50KFJlbmRlclN0eWxlOjppbml0aWFsR3JpZEF1dG9SZXBlYXRJbnNl
cnRpb25Qb2ludCgpKQorICAgICwgbV9hdXRvUmVwZWF0Q29sdW1uc1R5cGUoUmVuZGVyU3R5bGU6
OmluaXRpYWxHcmlkQXV0b1JlcGVhdFR5cGUoKSkKKyAgICAsIG1fYXV0b1JlcGVhdFJvd3NUeXBl
KFJlbmRlclN0eWxlOjppbml0aWFsR3JpZEF1dG9SZXBlYXRUeXBlKCkpCisgICAgLCBtX3N1Ymdy
aWRSb3dzKGZhbHNlKQorICAgICwgbV9zdWJncmlkQ29sdW1ucyhmYWxzZSkKIHsKIH0KIAogaW5s
aW5lIFN0eWxlR3JpZERhdGE6OlN0eWxlR3JpZERhdGEoY29uc3QgU3R5bGVHcmlkRGF0YSYgbykK
ICAgICA6IFJlZkNvdW50ZWQ8U3R5bGVHcmlkRGF0YT4oKQotICAgICwgZ3JpZENvbHVtbnMoby5n
cmlkQ29sdW1ucykKLSAgICAsIGdyaWRSb3dzKG8uZ3JpZFJvd3MpCi0gICAgLCBuYW1lZEdyaWRD
b2x1bW5MaW5lcyhvLm5hbWVkR3JpZENvbHVtbkxpbmVzKQotICAgICwgbmFtZWRHcmlkUm93TGlu
ZXMoby5uYW1lZEdyaWRSb3dMaW5lcykKLSAgICAsIG9yZGVyZWROYW1lZEdyaWRDb2x1bW5MaW5l
cyhvLm9yZGVyZWROYW1lZEdyaWRDb2x1bW5MaW5lcykKLSAgICAsIG9yZGVyZWROYW1lZEdyaWRS
b3dMaW5lcyhvLm9yZGVyZWROYW1lZEdyaWRSb3dMaW5lcykKLSAgICAsIGF1dG9SZXBlYXROYW1l
ZEdyaWRDb2x1bW5MaW5lcyhvLmF1dG9SZXBlYXROYW1lZEdyaWRDb2x1bW5MaW5lcykKLSAgICAs
IGF1dG9SZXBlYXROYW1lZEdyaWRSb3dMaW5lcyhvLmF1dG9SZXBlYXROYW1lZEdyaWRSb3dMaW5l
cykKLSAgICAsIGF1dG9SZXBlYXRPcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXMoby5hdXRvUmVw
ZWF0T3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzKQotICAgICwgYXV0b1JlcGVhdE9yZGVyZWRO
YW1lZEdyaWRSb3dMaW5lcyhvLmF1dG9SZXBlYXRPcmRlcmVkTmFtZWRHcmlkUm93TGluZXMpCiAg
ICAgLCBpbXBsaWNpdE5hbWVkR3JpZENvbHVtbkxpbmVzKG8uaW1wbGljaXROYW1lZEdyaWRDb2x1
bW5MaW5lcykKICAgICAsIGltcGxpY2l0TmFtZWRHcmlkUm93TGluZXMoby5pbXBsaWNpdE5hbWVk
R3JpZFJvd0xpbmVzKQogICAgICwgZ3JpZEF1dG9GbG93KG8uZ3JpZEF1dG9GbG93KQpAQCAtODAs
MTcgKzcwLDE1MyBAQCBpbmxpbmUgU3R5bGVHcmlkRGF0YTo6U3R5bGVHcmlkRGF0YShjb25zdCBT
dHlsZUdyaWREYXRhJiBvKQogICAgICwgbmFtZWRHcmlkQXJlYShvLm5hbWVkR3JpZEFyZWEpCiAg
ICAgLCBuYW1lZEdyaWRBcmVhUm93Q291bnQoby5uYW1lZEdyaWRBcmVhUm93Q291bnQpCiAgICAg
LCBuYW1lZEdyaWRBcmVhQ29sdW1uQ291bnQoby5uYW1lZEdyaWRBcmVhQ29sdW1uQ291bnQpCi0g
ICAgLCBncmlkQXV0b1JlcGVhdENvbHVtbnMoby5ncmlkQXV0b1JlcGVhdENvbHVtbnMpCi0gICAg
LCBncmlkQXV0b1JlcGVhdFJvd3Moby5ncmlkQXV0b1JlcGVhdFJvd3MpCi0gICAgLCBhdXRvUmVw
ZWF0Q29sdW1uc0luc2VydGlvblBvaW50KG8uYXV0b1JlcGVhdENvbHVtbnNJbnNlcnRpb25Qb2lu
dCkKLSAgICAsIGF1dG9SZXBlYXRSb3dzSW5zZXJ0aW9uUG9pbnQoby5hdXRvUmVwZWF0Um93c0lu
c2VydGlvblBvaW50KQotICAgICwgYXV0b1JlcGVhdENvbHVtbnNUeXBlKG8uYXV0b1JlcGVhdENv
bHVtbnNUeXBlKQotICAgICwgYXV0b1JlcGVhdFJvd3NUeXBlKG8uYXV0b1JlcGVhdFJvd3NUeXBl
KQotICAgICwgc3ViZ3JpZFJvd3Moby5zdWJncmlkUm93cykKLSAgICAsIHN1YmdyaWRDb2x1bW5z
KG8uc3ViZ3JpZENvbHVtbnMpCisgICAgLCBtX2NvbHVtbnMoby5tX2NvbHVtbnMpCisgICAgLCBt
X3Jvd3Moby5tX3Jvd3MpCisgICAgLCBtX2dyaWRDb2x1bW5zKG8ubV9ncmlkQ29sdW1ucykKKyAg
ICAsIG1fZ3JpZFJvd3Moby5tX2dyaWRSb3dzKQorICAgICwgbV9uYW1lZEdyaWRDb2x1bW5MaW5l
cyhvLm1fbmFtZWRHcmlkQ29sdW1uTGluZXMpCisgICAgLCBtX25hbWVkR3JpZFJvd0xpbmVzKG8u
bV9uYW1lZEdyaWRSb3dMaW5lcykKKyAgICAsIG1fb3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVz
KG8ubV9vcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXMpCisgICAgLCBtX29yZGVyZWROYW1lZEdy
aWRSb3dMaW5lcyhvLm1fb3JkZXJlZE5hbWVkR3JpZFJvd0xpbmVzKQorICAgICwgbV9hdXRvUmVw
ZWF0TmFtZWRHcmlkQ29sdW1uTGluZXMoby5tX2F1dG9SZXBlYXROYW1lZEdyaWRDb2x1bW5MaW5l
cykKKyAgICAsIG1fYXV0b1JlcGVhdE5hbWVkR3JpZFJvd0xpbmVzKG8ubV9hdXRvUmVwZWF0TmFt
ZWRHcmlkUm93TGluZXMpCisgICAgLCBtX2F1dG9SZXBlYXRPcmRlcmVkTmFtZWRHcmlkQ29sdW1u
TGluZXMoby5tX2F1dG9SZXBlYXRPcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXMpCisgICAgLCBt
X2F1dG9SZXBlYXRPcmRlcmVkTmFtZWRHcmlkUm93TGluZXMoby5tX2F1dG9SZXBlYXRPcmRlcmVk
TmFtZWRHcmlkUm93TGluZXMpCisgICAgLCBtX2dyaWRBdXRvUmVwZWF0Q29sdW1ucyhvLm1fZ3Jp
ZEF1dG9SZXBlYXRDb2x1bW5zKQorICAgICwgbV9ncmlkQXV0b1JlcGVhdFJvd3Moby5tX2dyaWRB
dXRvUmVwZWF0Um93cykKKyAgICAsIG1fYXV0b1JlcGVhdENvbHVtbnNJbnNlcnRpb25Qb2ludChv
Lm1fYXV0b1JlcGVhdENvbHVtbnNJbnNlcnRpb25Qb2ludCkKKyAgICAsIG1fYXV0b1JlcGVhdFJv
d3NJbnNlcnRpb25Qb2ludChvLm1fYXV0b1JlcGVhdFJvd3NJbnNlcnRpb25Qb2ludCkKKyAgICAs
IG1fYXV0b1JlcGVhdENvbHVtbnNUeXBlKG8ubV9hdXRvUmVwZWF0Q29sdW1uc1R5cGUpCisgICAg
LCBtX2F1dG9SZXBlYXRSb3dzVHlwZShvLm1fYXV0b1JlcGVhdFJvd3NUeXBlKQorICAgICwgbV9z
dWJncmlkUm93cyhvLm1fc3ViZ3JpZFJvd3MpCisgICAgLCBtX3N1YmdyaWRDb2x1bW5zKG8ubV9z
dWJncmlkQ29sdW1ucykKIHsKIH0KIAordm9pZCBTdHlsZUdyaWREYXRhOjpzZXRSb3dzKGNvbnN0
IEdyaWRUcmFja0xpc3QmIGxpc3QpCit7CisgICAgbV9yb3dzID0gbGlzdDsKKyAgICBjb21wdXRl
Q2FjaGVkVHJhY2tEYXRhKG1fcm93cywgbV9ncmlkUm93cywgbV9uYW1lZEdyaWRSb3dMaW5lcywg
bV9vcmRlcmVkTmFtZWRHcmlkUm93TGluZXMsIG1fZ3JpZEF1dG9SZXBlYXRSb3dzLCBtX2F1dG9S
ZXBlYXROYW1lZEdyaWRSb3dMaW5lcywgbV9hdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZFJvd0xp
bmVzLCBtX2F1dG9SZXBlYXRSb3dzSW5zZXJ0aW9uUG9pbnQsIG1fYXV0b1JlcGVhdFJvd3NUeXBl
LCBtX3N1YmdyaWRSb3dzKTsKK30KKwordm9pZCBTdHlsZUdyaWREYXRhOjpzZXRDb2x1bW5zKGNv
bnN0IEdyaWRUcmFja0xpc3QmIGxpc3QpCit7CisgICAgbV9jb2x1bW5zID0gbGlzdDsKKyAgICBj
b21wdXRlQ2FjaGVkVHJhY2tEYXRhKG1fY29sdW1ucywgbV9ncmlkQ29sdW1ucywgbV9uYW1lZEdy
aWRDb2x1bW5MaW5lcywgbV9vcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXMsIG1fZ3JpZEF1dG9S
ZXBlYXRDb2x1bW5zLCBtX2F1dG9SZXBlYXROYW1lZEdyaWRDb2x1bW5MaW5lcywgbV9hdXRvUmVw
ZWF0T3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzLCBtX2F1dG9SZXBlYXRDb2x1bW5zSW5zZXJ0
aW9uUG9pbnQsIG1fYXV0b1JlcGVhdENvbHVtbnNUeXBlLCBtX3N1YmdyaWRDb2x1bW5zKTsKK30K
Kworc3RhdGljIHZvaWQgY3JlYXRlR3JpZExpbmVOYW1lc0xpc3QoY29uc3QgVmVjdG9yPFN0cmlu
Zz4mIG5hbWVzLCB1bnNpZ25lZCBjdXJyZW50TmFtZWRHcmlkTGluZSwgTmFtZWRHcmlkTGluZXNN
YXAmIG5hbWVkR3JpZExpbmVzLCBPcmRlcmVkTmFtZWRHcmlkTGluZXNNYXAmIG9yZGVyZWROYW1l
ZEdyaWRMaW5lcykKK3sKKyAgICBhdXRvIG9yZGVyZWRSZXN1bHQgPSBvcmRlcmVkTmFtZWRHcmlk
TGluZXMuYWRkKGN1cnJlbnROYW1lZEdyaWRMaW5lLCBWZWN0b3I8U3RyaW5nPigpKTsKKworICAg
IGZvciAoYXV0byYgbmFtZSA6IG5hbWVzKSB7CisgICAgICAgIGF1dG8gcmVzdWx0ID0gbmFtZWRH
cmlkTGluZXMuYWRkKG5hbWUsIFZlY3Rvcjx1bnNpZ25lZD4oKSk7CisgICAgICAgIHJlc3VsdC5p
dGVyYXRvci0+dmFsdWUuYXBwZW5kKGN1cnJlbnROYW1lZEdyaWRMaW5lKTsKKworICAgICAgICBv
cmRlcmVkUmVzdWx0Lml0ZXJhdG9yLT52YWx1ZS5hcHBlbmQobmFtZSk7CisgICAgfQorfQorCit2
b2lkIFN0eWxlR3JpZERhdGE6OmNvbXB1dGVDYWNoZWRUcmFja0RhdGEoY29uc3QgR3JpZFRyYWNr
TGlzdCYgbGlzdCwgVmVjdG9yPEdyaWRUcmFja1NpemU+JiBzaXplcywgTmFtZWRHcmlkTGluZXNN
YXAmIG5hbWVkTGluZXMsIE9yZGVyZWROYW1lZEdyaWRMaW5lc01hcCYgb3JkZXJlZE5hbWVkTGlu
ZXMsIFZlY3RvcjxHcmlkVHJhY2tTaXplPiYgYXV0b1JlcGVhdFNpemVzLCBOYW1lZEdyaWRMaW5l
c01hcCYgYXV0b1JlcGVhdE5hbWVkTGluZXMsIE9yZGVyZWROYW1lZEdyaWRMaW5lc01hcCYgYXV0
b1JlcGVhdE9yZGVyZWROYW1lZExpbmVzLCB1bnNpZ25lZCYgYXV0b1JlcGVhdEluc2VydGlvblBv
aW50LCBBdXRvUmVwZWF0VHlwZSYgYXV0b1JlcGVhdFR5cGUsIGJvb2wmIHN1YmdyaWQpCit7Cisg
ICAgc2l6ZXMuY2xlYXIoKTsKKyAgICBuYW1lZExpbmVzLmNsZWFyKCk7CisgICAgb3JkZXJlZE5h
bWVkTGluZXMuY2xlYXIoKTsKKyAgICBhdXRvUmVwZWF0U2l6ZXMuY2xlYXIoKTsKKyAgICBhdXRv
UmVwZWF0TmFtZWRMaW5lcy5jbGVhcigpOworICAgIGF1dG9SZXBlYXRPcmRlcmVkTmFtZWRMaW5l
cy5jbGVhcigpOworICAgIGF1dG9SZXBlYXRJbnNlcnRpb25Qb2ludCA9IFJlbmRlclN0eWxlOjpp
bml0aWFsR3JpZEF1dG9SZXBlYXRJbnNlcnRpb25Qb2ludCgpOworICAgIGF1dG9SZXBlYXRUeXBl
ID0gUmVuZGVyU3R5bGU6OmluaXRpYWxHcmlkQXV0b1JlcGVhdFR5cGUoKTsKKyAgICBzdWJncmlk
ID0gZmFsc2U7CisKKyAgICBpZiAobGlzdC5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybjsKKwor
ICAgIHVuc2lnbmVkIGN1cnJlbnROYW1lZEdyaWRMaW5lID0gMDsKKyAgICB1bnNpZ25lZCBhdXRv
UmVwZWF0SW5kZXggPSAwOworICAgIGF1dG8gdmlzaXRvciA9IFdURjo6bWFrZVZpc2l0b3IoWyZd
KGNvbnN0IEdyaWRUcmFja1NpemUmIHNpemUpIHsKKyAgICAgICAgKytjdXJyZW50TmFtZWRHcmlk
TGluZTsKKyAgICAgICAgc2l6ZXMuYXBwZW5kKHNpemUpOworICAgIH0sIFsmXShjb25zdCBWZWN0
b3I8U3RyaW5nPiYgbmFtZXMpIHsKKyAgICAgICAgY3JlYXRlR3JpZExpbmVOYW1lc0xpc3QobmFt
ZXMsIGN1cnJlbnROYW1lZEdyaWRMaW5lLCBuYW1lZExpbmVzLCBvcmRlcmVkTmFtZWRMaW5lcyk7
CisgICAgICAgIC8vIFN1YmdyaWRzIG9ubHkgaGF2ZSBsaW5lIG5hbWVzIGRlZmluZWQsIG5vdCB0
cmFjayBzaXplcywgc28gd2Ugd2FudCBvdXIgY291bnQKKyAgICAgICAgLy8gdG8gYmUgdGhlIG51
bWJlciBvZiBsaW5lcyBuYW1lZCByYXRoZXIgdGhhbiBudW1iZXIgb2Ygc2l6ZWQgdHJhY2tzLgor
ICAgICAgICBpZiAoc3ViZ3JpZCkKKyAgICAgICAgICAgIGN1cnJlbnROYW1lZEdyaWRMaW5lKys7
CisgICAgfSwgWyZdKGNvbnN0IEdyaWRUcmFja0VudHJ5UmVwZWF0JiByZXBlYXQpIHsKKyAgICAg
ICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCByZXBlYXQucmVwZWF0czsgKytpKSB7CisgICAgICAg
ICAgICBmb3IgKGF1dG8mIHJlcGVhdEVudHJ5IDogcmVwZWF0Lmxpc3QpIHsKKyAgICAgICAgICAg
ICAgICBpZiAoc3RkOjpob2xkc19hbHRlcm5hdGl2ZTxWZWN0b3I8U3RyaW5nPj4ocmVwZWF0RW50
cnkpKSB7CisgICAgICAgICAgICAgICAgICAgIGNyZWF0ZUdyaWRMaW5lTmFtZXNMaXN0KHN0ZDo6
Z2V0PFZlY3RvcjxTdHJpbmc+PihyZXBlYXRFbnRyeSksIGN1cnJlbnROYW1lZEdyaWRMaW5lLCBu
YW1lZExpbmVzLCBvcmRlcmVkTmFtZWRMaW5lcyk7CisgICAgICAgICAgICAgICAgICAgIC8vIFN1
YmdyaWRzIG9ubHkgaGF2ZSBsaW5lIG5hbWVzIGRlZmluZWQsIG5vdCB0cmFjayBzaXplcywgc28g
d2Ugd2FudCBvdXIgY291bnQKKyAgICAgICAgICAgICAgICAgICAgLy8gdG8gYmUgdGhlIG51bWJl
ciBvZiBsaW5lcyBuYW1lZCByYXRoZXIgdGhhbiBudW1iZXIgb2Ygc2l6ZWQgdHJhY2tzLgorICAg
ICAgICAgICAgICAgICAgICBpZiAoc3ViZ3JpZCkKKyAgICAgICAgICAgICAgICAgICAgICAgIGN1
cnJlbnROYW1lZEdyaWRMaW5lKys7CisgICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAg
ICAgICAgICAgICAgKytjdXJyZW50TmFtZWRHcmlkTGluZTsKKyAgICAgICAgICAgICAgICAgICAg
c2l6ZXMuYXBwZW5kKHN0ZDo6Z2V0PEdyaWRUcmFja1NpemU+KHJlcGVhdEVudHJ5KSk7CisgICAg
ICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgfSwgWyZdKGNvbnN0
IEdyaWRUcmFja0VudHJ5QXV0b1JlcGVhdCYgcmVwZWF0KSB7CisgICAgICAgIEFTU0VSVCghYXV0
b1JlcGVhdEluZGV4KTsKKyAgICAgICAgYXV0b1JlcGVhdEluZGV4ID0gMDsKKyAgICAgICAgYXV0
b1JlcGVhdFR5cGUgPSByZXBlYXQudHlwZTsKKyAgICAgICAgZm9yIChhdXRvJiBhdXRvUmVwZWF0
RW50cnkgOiByZXBlYXQubGlzdCkgeworICAgICAgICAgICAgaWYgKHN0ZDo6aG9sZHNfYWx0ZXJu
YXRpdmU8VmVjdG9yPFN0cmluZz4+KGF1dG9SZXBlYXRFbnRyeSkpIHsKKyAgICAgICAgICAgICAg
ICBjcmVhdGVHcmlkTGluZU5hbWVzTGlzdChzdGQ6OmdldDxWZWN0b3I8U3RyaW5nPj4oYXV0b1Jl
cGVhdEVudHJ5KSwgYXV0b1JlcGVhdEluZGV4LCBhdXRvUmVwZWF0TmFtZWRMaW5lcywgYXV0b1Jl
cGVhdE9yZGVyZWROYW1lZExpbmVzKTsKKyAgICAgICAgICAgICAgICBpZiAoc3ViZ3JpZCkKKyAg
ICAgICAgICAgICAgICAgICAgKythdXRvUmVwZWF0SW5kZXg7CisgICAgICAgICAgICAgICAgY29u
dGludWU7CisgICAgICAgICAgICB9CisgICAgICAgICAgICArK2F1dG9SZXBlYXRJbmRleDsKKyAg
ICAgICAgICAgIGF1dG9SZXBlYXRTaXplcy5hcHBlbmQoc3RkOjpnZXQ8R3JpZFRyYWNrU2l6ZT4o
YXV0b1JlcGVhdEVudHJ5KSk7CisgICAgICAgIH0KKyAgICAgICAgYXV0b1JlcGVhdEluc2VydGlv
blBvaW50ID0gY3VycmVudE5hbWVkR3JpZExpbmU7CisgICAgICAgIGlmICghc3ViZ3JpZCkKKyAg
ICAgICAgICAgIGN1cnJlbnROYW1lZEdyaWRMaW5lKys7CisgICAgfSwgWyZdKGNvbnN0IEdyaWRU
cmFja0VudHJ5U3ViZ3JpZCYpIHsKKyAgICAgICAgc3ViZ3JpZCA9IHRydWU7CisgICAgfSk7CisK
KyAgICBmb3IgKGNvbnN0IGF1dG8mIGVudHJ5IDogbGlzdCkKKyAgICAgICAgc3RkOjp2aXNpdCh2
aXNpdG9yLCBlbnRyeSk7CisKKyAgICAvLyBUaGUgcGFyc2VyIHNob3VsZCBoYXZlIHJlamVjdGVk
IGFueSA8dHJhY2stbGlzdD4gd2l0aG91dCBhbnkgPHRyYWNrLXNpemU+IGFzCisgICAgLy8gdGhp
cyBpcyBub3QgY29uZm9ybWFudCB0byB0aGUgc3ludGF4LgorICAgIEFTU0VSVCghc2l6ZXMuaXNF
bXB0eSgpIHx8ICFhdXRvUmVwZWF0U2l6ZXMuaXNFbXB0eSgpIHx8IHN1YmdyaWQpOworfQorCitX
VEY6OlRleHRTdHJlYW0mIG9wZXJhdG9yPDwoV1RGOjpUZXh0U3RyZWFtJiB0cywgY29uc3QgUmVw
ZWF0RW50cnkmIGVudHJ5KQoreworICAgIGF1dG8gdmlzaXRvciA9IFdURjo6bWFrZVZpc2l0b3Io
WyZdKGNvbnN0IEdyaWRUcmFja1NpemUmIHNpemUpIHsKKyAgICAgICAgdHMgPDwgc2l6ZTsKKyAg
ICB9LCBbJl0oY29uc3QgVmVjdG9yPFN0cmluZz4mIG5hbWVzKSB7CisgICAgICAgIHRzIDw8IG5h
bWVzOworICAgIH0pOworCisgICAgc3RkOjp2aXNpdCh2aXNpdG9yLCBlbnRyeSk7CisgICAgcmV0
dXJuIHRzOworfQorCitXVEY6OlRleHRTdHJlYW0mIG9wZXJhdG9yPDwoV1RGOjpUZXh0U3RyZWFt
JiB0cywgY29uc3QgR3JpZFRyYWNrRW50cnkmIGVudHJ5KQoreworICAgIGF1dG8gdmlzaXRvciA9
IFdURjo6bWFrZVZpc2l0b3IoWyZdKGNvbnN0IEdyaWRUcmFja1NpemUmIHNpemUpIHsKKyAgICAg
ICAgdHMgPDwgc2l6ZTsKKyAgICB9LCBbJl0oY29uc3QgVmVjdG9yPFN0cmluZz4mIG5hbWVzKSB7
CisgICAgICAgIHRzIDw8IG5hbWVzOworICAgIH0sIFsmXShjb25zdCBHcmlkVHJhY2tFbnRyeVJl
cGVhdCYgcmVwZWF0KSB7CisgICAgICAgIHRzIDw8ICJyZXBlYXQoIiA8PCByZXBlYXQucmVwZWF0
cyA8PCAiLCAiIDw8IHJlcGVhdC5saXN0IDw8ICIpIjsKKyAgICB9LCBbJl0oY29uc3QgR3JpZFRy
YWNrRW50cnlBdXRvUmVwZWF0JiByZXBlYXQpIHsKKyAgICAgICAgdHMgPDwgInJlcGVhdCgiIDw8
IHJlcGVhdC50eXBlIDw8ICIsICIgPDwgcmVwZWF0Lmxpc3QgPDwgIikiOworICAgIH0sIFsmXShj
b25zdCBHcmlkVHJhY2tFbnRyeVN1YmdyaWQmKSB7CisgICAgICAgIHRzIDw8ICJzdWJncmlkIjsK
KyAgICB9KTsKKworICAgIHN0ZDo6dmlzaXQodmlzaXRvciwgZW50cnkpOworICAgIHJldHVybiB0
czsKK30KKwogUmVmPFN0eWxlR3JpZERhdGE+IFN0eWxlR3JpZERhdGE6OmNvcHkoKSBjb25zdAog
ewogICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFN0eWxlR3JpZERhdGEoKnRoaXMpKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUdyaWREYXRhLmggYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVHcmlkRGF0YS5oCmluZGV4IGViOWIz
MmVmOTBjMWZmMjMxYmQ0MzZhOGVjZjE5Zjk1NmVjNTlkYmIuLjJjZGNjMGUxNWMxNDBkNzdmYmNl
ZjI1ODZlODViY2RmMTUxZTlhMTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdHlsZS9TdHlsZUdyaWREYXRhLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0
eWxlL1N0eWxlR3JpZERhdGEuaApAQCAtMjgsOSArMjgsMTEgQEAKICNpbmNsdWRlICJHcmlkQXJl
YS5oIgogI2luY2x1ZGUgIkdyaWRUcmFja1NpemUuaCIKICNpbmNsdWRlICJSZW5kZXJTdHlsZUNv
bnN0YW50cy5oIgorI2luY2x1ZGUgPHZhcmlhbnQ+CiAjaW5jbHVkZSA8d3RmL1JlZi5oPgogI2lu
Y2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgorI2luY2x1
ZGUgPHd0Zi90ZXh0L1RleHRTdHJlYW0uaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcu
aD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtMzgsNiArNDAsMzAgQEAgbmFtZXNwYWNlIFdl
YkNvcmUgewogdHlwZWRlZiBIYXNoTWFwPFN0cmluZywgVmVjdG9yPHVuc2lnbmVkPj4gTmFtZWRH
cmlkTGluZXNNYXA7CiB0eXBlZGVmIEhhc2hNYXA8dW5zaWduZWQsIFZlY3RvcjxTdHJpbmc+LCBJ
bnRIYXNoPHVuc2lnbmVkPiwgV1RGOjpVbnNpZ25lZFdpdGhaZXJvS2V5SGFzaFRyYWl0czx1bnNp
Z25lZD4+IE9yZGVyZWROYW1lZEdyaWRMaW5lc01hcDsKIAordHlwZWRlZiBzdGQ6OnZhcmlhbnQ8
R3JpZFRyYWNrU2l6ZSwgVmVjdG9yPFN0cmluZz4+IFJlcGVhdEVudHJ5OwordHlwZWRlZiBWZWN0
b3I8UmVwZWF0RW50cnk+IFJlcGVhdFRyYWNrTGlzdDsKKworc3RydWN0IEdyaWRUcmFja0VudHJ5
U3ViZ3JpZCB7CisgICAgYm9vbCBvcGVyYXRvcj09KGNvbnN0IEdyaWRUcmFja0VudHJ5U3ViZ3Jp
ZCYpIGNvbnN0ID0gZGVmYXVsdDsKK307CitzdHJ1Y3QgR3JpZFRyYWNrRW50cnlSZXBlYXQgewor
ICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBHcmlkVHJhY2tFbnRyeVJlcGVhdCYpIGNvbnN0ID0g
ZGVmYXVsdDsKKworICAgIHVuc2lnbmVkIHJlcGVhdHM7CisgICAgUmVwZWF0VHJhY2tMaXN0IGxp
c3Q7Cit9Oworc3RydWN0IEdyaWRUcmFja0VudHJ5QXV0b1JlcGVhdCB7CisgICAgYm9vbCBvcGVy
YXRvcj09KGNvbnN0IEdyaWRUcmFja0VudHJ5QXV0b1JlcGVhdCYpIGNvbnN0ID0gZGVmYXVsdDsK
KworICAgIEF1dG9SZXBlYXRUeXBlIHR5cGU7CisgICAgUmVwZWF0VHJhY2tMaXN0IGxpc3Q7Cit9
OwordHlwZWRlZiBzdGQ6OnZhcmlhbnQ8R3JpZFRyYWNrU2l6ZSwgVmVjdG9yPFN0cmluZz4sIEdy
aWRUcmFja0VudHJ5UmVwZWF0LCBHcmlkVHJhY2tFbnRyeUF1dG9SZXBlYXQsIEdyaWRUcmFja0Vu
dHJ5U3ViZ3JpZD4gR3JpZFRyYWNrRW50cnk7Cit0eXBlZGVmIFZlY3RvcjxHcmlkVHJhY2tFbnRy
eT4gR3JpZFRyYWNrTGlzdDsKKworV1RGOjpUZXh0U3RyZWFtJiBvcGVyYXRvcjw8KFdURjo6VGV4
dFN0cmVhbSYsIGNvbnN0IFJlcGVhdEVudHJ5JiBpdGVtKTsKK1dURjo6VGV4dFN0cmVhbSYgb3Bl
cmF0b3I8PChXVEY6OlRleHRTdHJlYW0mLCBjb25zdCBHcmlkVHJhY2tFbnRyeSYgaXRlbSk7CisK
IGNsYXNzIFN0eWxlR3JpZERhdGEgOiBwdWJsaWMgUmVmQ291bnRlZDxTdHlsZUdyaWREYXRhPiB7
CiBwdWJsaWM6CiAgICAgc3RhdGljIFJlZjxTdHlsZUdyaWREYXRhPiBjcmVhdGUoKSB7IHJldHVy
biBhZG9wdFJlZigqbmV3IFN0eWxlR3JpZERhdGEpOyB9CkBAIC00NSwyMCArNzEsNyBAQCBwdWJs
aWM6CiAKICAgICBib29sIG9wZXJhdG9yPT0oY29uc3QgU3R5bGVHcmlkRGF0YSYgbykgY29uc3QK
ICAgICB7Ci0gICAgICAgIC8vIEZJWE1FOiBjb21wYXJpbmcgdHdvIGhhc2hlcyBkb2Vzbid0IGxv
b2sgZ3JlYXQgZm9yIHBlcmZvcm1hbmNlLiBTb21ldGhpbmcgdG8ga2VlcCBpbiBtaW5kIGdvaW5n
IGZvcndhcmQuCi0gICAgICAgIHJldHVybiBncmlkQ29sdW1ucyA9PSBvLmdyaWRDb2x1bW5zICYm
IGdyaWRSb3dzID09IG8uZ3JpZFJvd3MKLSAgICAgICAgICAgICYmIGdyaWRBdXRvRmxvdyA9PSBv
LmdyaWRBdXRvRmxvdyAmJiBncmlkQXV0b1Jvd3MgPT0gby5ncmlkQXV0b1Jvd3MgJiYgZ3JpZEF1
dG9Db2x1bW5zID09IG8uZ3JpZEF1dG9Db2x1bW5zCi0gICAgICAgICAgICAmJiBuYW1lZEdyaWRD
b2x1bW5MaW5lcyA9PSBvLm5hbWVkR3JpZENvbHVtbkxpbmVzICYmIG5hbWVkR3JpZFJvd0xpbmVz
ID09IG8ubmFtZWRHcmlkUm93TGluZXMKLSAgICAgICAgICAgICYmIGF1dG9SZXBlYXROYW1lZEdy
aWRDb2x1bW5MaW5lcyA9PSBvLmF1dG9SZXBlYXROYW1lZEdyaWRDb2x1bW5MaW5lcyAmJiBhdXRv
UmVwZWF0TmFtZWRHcmlkUm93TGluZXMgPT0gby5hdXRvUmVwZWF0TmFtZWRHcmlkUm93TGluZXMK
LSAgICAgICAgICAgICYmIGF1dG9SZXBlYXRPcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXMgPT0g
by5hdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzICYmIGF1dG9SZXBlYXRPcmRl
cmVkTmFtZWRHcmlkUm93TGluZXMgPT0gby5hdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZFJvd0xp
bmVzCi0gICAgICAgICAgICAmJiBpbXBsaWNpdE5hbWVkR3JpZENvbHVtbkxpbmVzID09IG8uaW1w
bGljaXROYW1lZEdyaWRDb2x1bW5MaW5lcyAmJiBpbXBsaWNpdE5hbWVkR3JpZFJvd0xpbmVzID09
IG8uaW1wbGljaXROYW1lZEdyaWRSb3dMaW5lcwotICAgICAgICAgICAgJiYgbmFtZWRHcmlkQXJl
YSA9PSBvLm5hbWVkR3JpZEFyZWEgJiYgbmFtZWRHcmlkQXJlYSA9PSBvLm5hbWVkR3JpZEFyZWEK
LSAgICAgICAgICAgICYmIG5hbWVkR3JpZEFyZWFSb3dDb3VudCA9PSBvLm5hbWVkR3JpZEFyZWFS
b3dDb3VudCAmJiBuYW1lZEdyaWRBcmVhQ29sdW1uQ291bnQgPT0gby5uYW1lZEdyaWRBcmVhQ29s
dW1uQ291bnQKLSAgICAgICAgICAgICYmIG9yZGVyZWROYW1lZEdyaWRSb3dMaW5lcyA9PSBvLm9y
ZGVyZWROYW1lZEdyaWRSb3dMaW5lcyAmJiBvcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXMgPT0g
by5vcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXMKLSAgICAgICAgICAgICYmIGdyaWRBdXRvUmVw
ZWF0Q29sdW1ucyA9PSBvLmdyaWRBdXRvUmVwZWF0Q29sdW1ucyAmJiBncmlkQXV0b1JlcGVhdFJv
d3MgPT0gby5ncmlkQXV0b1JlcGVhdFJvd3MKLSAgICAgICAgICAgICYmIGF1dG9SZXBlYXRDb2x1
bW5zSW5zZXJ0aW9uUG9pbnQgPT0gby5hdXRvUmVwZWF0Q29sdW1uc0luc2VydGlvblBvaW50ICYm
IGF1dG9SZXBlYXRSb3dzSW5zZXJ0aW9uUG9pbnQgPT0gby5hdXRvUmVwZWF0Um93c0luc2VydGlv
blBvaW50Ci0gICAgICAgICAgICAmJiBhdXRvUmVwZWF0Q29sdW1uc1R5cGUgPT0gby5hdXRvUmVw
ZWF0Q29sdW1uc1R5cGUgJiYgYXV0b1JlcGVhdFJvd3NUeXBlID09IG8uYXV0b1JlcGVhdFJvd3NU
eXBlICYmIHN1YmdyaWRSb3dzID09IG8uc3ViZ3JpZFJvd3MKLSAgICAgICAgICAgICYmIHN1Ymdy
aWRDb2x1bW5zID09IG8uc3ViZ3JpZENvbHVtbnM7CisgICAgICAgIHJldHVybiBjb2x1bW5zKCkg
PT0gby5jb2x1bW5zKCkgJiYgcm93cygpID09IG8ucm93cygpICYmIGltcGxpY2l0TmFtZWRHcmlk
Q29sdW1uTGluZXMgPT0gby5pbXBsaWNpdE5hbWVkR3JpZENvbHVtbkxpbmVzICYmIGltcGxpY2l0
TmFtZWRHcmlkUm93TGluZXMgPT0gby5pbXBsaWNpdE5hbWVkR3JpZFJvd0xpbmVzICYmIGdyaWRB
dXRvRmxvdyA9PSBvLmdyaWRBdXRvRmxvdyAmJiBncmlkQXV0b1Jvd3MgPT0gby5ncmlkQXV0b1Jv
d3MgJiYgZ3JpZEF1dG9Db2x1bW5zID09IG8uZ3JpZEF1dG9Db2x1bW5zICYmIG5hbWVkR3JpZEFy
ZWEgPT0gby5uYW1lZEdyaWRBcmVhICYmIG5hbWVkR3JpZEFyZWFSb3dDb3VudCA9PSBvLm5hbWVk
R3JpZEFyZWFSb3dDb3VudCAmJiBuYW1lZEdyaWRBcmVhQ29sdW1uQ291bnQgPT0gby5uYW1lZEdy
aWRBcmVhQ29sdW1uQ291bnQ7CiAgICAgfQogCiAgICAgYm9vbCBvcGVyYXRvciE9KGNvbnN0IFN0
eWxlR3JpZERhdGEmIG8pIGNvbnN0CkBAIC02NiwxOSArNzksMzcgQEAgcHVibGljOgogICAgICAg
ICByZXR1cm4gISgqdGhpcyA9PSBvKTsKICAgICB9CiAKLSAgICBWZWN0b3I8R3JpZFRyYWNrU2l6
ZT4gZ3JpZENvbHVtbnM7Ci0gICAgVmVjdG9yPEdyaWRUcmFja1NpemU+IGdyaWRSb3dzOworICAg
IHZvaWQgc2V0Um93cyhjb25zdCBHcmlkVHJhY2tMaXN0Jik7CisgICAgdm9pZCBzZXRDb2x1bW5z
KGNvbnN0IEdyaWRUcmFja0xpc3QmKTsKKworICAgIGNvbnN0IFZlY3RvcjxHcmlkVHJhY2tTaXpl
PiYgZ3JpZENvbHVtbnMoKSBjb25zdCB7IHJldHVybiBtX2dyaWRDb2x1bW5zOyB9CisgICAgY29u
c3QgVmVjdG9yPEdyaWRUcmFja1NpemU+JiBncmlkUm93cygpIGNvbnN0IHsgcmV0dXJuIG1fZ3Jp
ZFJvd3M7IH0KKworICAgIGNvbnN0IE5hbWVkR3JpZExpbmVzTWFwJiBuYW1lZEdyaWRDb2x1bW5M
aW5lcygpIGNvbnN0IHsgcmV0dXJuIG1fbmFtZWRHcmlkQ29sdW1uTGluZXM7IH07CisgICAgY29u
c3QgTmFtZWRHcmlkTGluZXNNYXAmIG5hbWVkR3JpZFJvd0xpbmVzKCkgY29uc3QgeyByZXR1cm4g
bV9uYW1lZEdyaWRSb3dMaW5lczsgfTsKKworICAgIGNvbnN0IE9yZGVyZWROYW1lZEdyaWRMaW5l
c01hcCYgb3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzKCkgY29uc3QgeyByZXR1cm4gbV9vcmRl
cmVkTmFtZWRHcmlkQ29sdW1uTGluZXM7IH0KKyAgICBjb25zdCBPcmRlcmVkTmFtZWRHcmlkTGlu
ZXNNYXAmIG9yZGVyZWROYW1lZEdyaWRSb3dMaW5lcygpIGNvbnN0IHsgcmV0dXJuIG1fb3JkZXJl
ZE5hbWVkR3JpZFJvd0xpbmVzOyB9CisKKyAgICBjb25zdCBOYW1lZEdyaWRMaW5lc01hcCYgYXV0
b1JlcGVhdE5hbWVkR3JpZENvbHVtbkxpbmVzKCkgY29uc3QgeyByZXR1cm4gbV9hdXRvUmVwZWF0
TmFtZWRHcmlkQ29sdW1uTGluZXM7IH0KKyAgICBjb25zdCBOYW1lZEdyaWRMaW5lc01hcCYgYXV0
b1JlcGVhdE5hbWVkR3JpZFJvd0xpbmVzKCkgY29uc3QgeyByZXR1cm4gbV9hdXRvUmVwZWF0TmFt
ZWRHcmlkUm93TGluZXM7IH0KKyAgICBjb25zdCBPcmRlcmVkTmFtZWRHcmlkTGluZXNNYXAmIGF1
dG9SZXBlYXRPcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXMoKSBjb25zdCB7IHJldHVybiBtX2F1
dG9SZXBlYXRPcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXM7IH0KKyAgICBjb25zdCBPcmRlcmVk
TmFtZWRHcmlkTGluZXNNYXAmIGF1dG9SZXBlYXRPcmRlcmVkTmFtZWRHcmlkUm93TGluZXMoKSBj
b25zdCB7IHJldHVybiBtX2F1dG9SZXBlYXRPcmRlcmVkTmFtZWRHcmlkUm93TGluZXM7IH0KIAot
ICAgIE5hbWVkR3JpZExpbmVzTWFwIG5hbWVkR3JpZENvbHVtbkxpbmVzOwotICAgIE5hbWVkR3Jp
ZExpbmVzTWFwIG5hbWVkR3JpZFJvd0xpbmVzOworICAgIGNvbnN0IFZlY3RvcjxHcmlkVHJhY2tT
aXplPiYgZ3JpZEF1dG9SZXBlYXRDb2x1bW5zKCkgY29uc3QgeyByZXR1cm4gbV9ncmlkQXV0b1Jl
cGVhdENvbHVtbnM7IH0KKyAgICBjb25zdCBWZWN0b3I8R3JpZFRyYWNrU2l6ZT4mIGdyaWRBdXRv
UmVwZWF0Um93cygpIGNvbnN0IHsgcmV0dXJuIG1fZ3JpZEF1dG9SZXBlYXRSb3dzOyB9CiAKLSAg
ICBPcmRlcmVkTmFtZWRHcmlkTGluZXNNYXAgb3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzOwot
ICAgIE9yZGVyZWROYW1lZEdyaWRMaW5lc01hcCBvcmRlcmVkTmFtZWRHcmlkUm93TGluZXM7Cisg
ICAgY29uc3QgdW5zaWduZWQmIGF1dG9SZXBlYXRDb2x1bW5zSW5zZXJ0aW9uUG9pbnQoKSBjb25z
dCB7IHJldHVybiBtX2F1dG9SZXBlYXRDb2x1bW5zSW5zZXJ0aW9uUG9pbnQ7IH0KKyAgICBjb25z
dCB1bnNpZ25lZCYgYXV0b1JlcGVhdFJvd3NJbnNlcnRpb25Qb2ludCgpIGNvbnN0IHsgcmV0dXJu
IG1fYXV0b1JlcGVhdFJvd3NJbnNlcnRpb25Qb2ludDsgfQogCi0gICAgTmFtZWRHcmlkTGluZXNN
YXAgYXV0b1JlcGVhdE5hbWVkR3JpZENvbHVtbkxpbmVzOwotICAgIE5hbWVkR3JpZExpbmVzTWFw
IGF1dG9SZXBlYXROYW1lZEdyaWRSb3dMaW5lczsKLSAgICBPcmRlcmVkTmFtZWRHcmlkTGluZXNN
YXAgYXV0b1JlcGVhdE9yZGVyZWROYW1lZEdyaWRDb2x1bW5MaW5lczsKLSAgICBPcmRlcmVkTmFt
ZWRHcmlkTGluZXNNYXAgYXV0b1JlcGVhdE9yZGVyZWROYW1lZEdyaWRSb3dMaW5lczsKKyAgICBj
b25zdCBBdXRvUmVwZWF0VHlwZSYgYXV0b1JlcGVhdENvbHVtbnNUeXBlKCkgY29uc3QgeyByZXR1
cm4gbV9hdXRvUmVwZWF0Q29sdW1uc1R5cGU7IH0KKyAgICBjb25zdCBBdXRvUmVwZWF0VHlwZSYg
YXV0b1JlcGVhdFJvd3NUeXBlKCkgY29uc3QgeyByZXR1cm4gbV9hdXRvUmVwZWF0Um93c1R5cGU7
IH0KKworICAgIGNvbnN0IGJvb2wmIHN1YmdyaWRSb3dzKCkgY29uc3QgeyByZXR1cm4gbV9zdWJn
cmlkUm93czsgfTsKKyAgICBjb25zdCBib29sJiBzdWJncmlkQ29sdW1ucygpIGNvbnN0IHsgcmV0
dXJuIG1fc3ViZ3JpZENvbHVtbnM7IH0KKworICAgIGNvbnN0IEdyaWRUcmFja0xpc3QmIGNvbHVt
bnMoKSBjb25zdCB7IHJldHVybiBtX2NvbHVtbnM7IH07CisgICAgY29uc3QgR3JpZFRyYWNrTGlz
dCYgcm93cygpIGNvbnN0IHsgcmV0dXJuIG1fcm93czsgfTsKIAogICAgIE5hbWVkR3JpZExpbmVz
TWFwIGltcGxpY2l0TmFtZWRHcmlkQ29sdW1uTGluZXM7CiAgICAgTmFtZWRHcmlkTGluZXNNYXAg
aW1wbGljaXROYW1lZEdyaWRSb3dMaW5lczsKQEAgLTk0LDIxICsxMjUsNDMgQEAgcHVibGljOgog
ICAgIHVuc2lnbmVkIG5hbWVkR3JpZEFyZWFSb3dDb3VudDsKICAgICB1bnNpZ25lZCBuYW1lZEdy
aWRBcmVhQ29sdW1uQ291bnQ7CiAKLSAgICBWZWN0b3I8R3JpZFRyYWNrU2l6ZT4gZ3JpZEF1dG9S
ZXBlYXRDb2x1bW5zOwotICAgIFZlY3RvcjxHcmlkVHJhY2tTaXplPiBncmlkQXV0b1JlcGVhdFJv
d3M7Citwcml2YXRlOgorCisgICAgdm9pZCBjb21wdXRlQ2FjaGVkVHJhY2tEYXRhKGNvbnN0IEdy
aWRUcmFja0xpc3QmLCBWZWN0b3I8R3JpZFRyYWNrU2l6ZT4mIHNpemVzLCBOYW1lZEdyaWRMaW5l
c01hcCYgbmFtZWRMaW5lcywgT3JkZXJlZE5hbWVkR3JpZExpbmVzTWFwJiBvcmRlcmVkTmFtZWRM
aW5lcywgVmVjdG9yPEdyaWRUcmFja1NpemU+JiBhdXRvUmVwZWF0U2l6ZXMsIE5hbWVkR3JpZExp
bmVzTWFwJiBhdXRvUmVwZWF0TmFtZWRMaW5lcywgT3JkZXJlZE5hbWVkR3JpZExpbmVzTWFwJiBh
dXRvUmVwZWF0T3JkZXJlZE5hbWVkTGluZXMsIHVuc2lnbmVkJiBhdXRvUmVwZWF0SW5zZXJ0aW9u
UG9pbnQsIEF1dG9SZXBlYXRUeXBlJiwgYm9vbCYgc3ViZ3JpZCk7CiAKLSAgICB1bnNpZ25lZCBh
dXRvUmVwZWF0Q29sdW1uc0luc2VydGlvblBvaW50OwotICAgIHVuc2lnbmVkIGF1dG9SZXBlYXRS
b3dzSW5zZXJ0aW9uUG9pbnQ7CisgICAgR3JpZFRyYWNrTGlzdCBtX2NvbHVtbnM7CisgICAgR3Jp
ZFRyYWNrTGlzdCBtX3Jvd3M7CiAKLSAgICBBdXRvUmVwZWF0VHlwZSBhdXRvUmVwZWF0Q29sdW1u
c1R5cGU7Ci0gICAgQXV0b1JlcGVhdFR5cGUgYXV0b1JlcGVhdFJvd3NUeXBlOworICAgIC8vIENh
Y2hlZCBkYXRhIGNvbXB1dGVkIGZyb20gbV9jb2xtbnMvcm93czsKKyAgICBWZWN0b3I8R3JpZFRy
YWNrU2l6ZT4gbV9ncmlkQ29sdW1uczsKKyAgICBWZWN0b3I8R3JpZFRyYWNrU2l6ZT4gbV9ncmlk
Um93czsKIAotICAgIGJvb2wgc3ViZ3JpZFJvd3M7Ci0gICAgYm9vbCBzdWJncmlkQ29sdW1uczsK
KyAgICBOYW1lZEdyaWRMaW5lc01hcCBtX25hbWVkR3JpZENvbHVtbkxpbmVzOworICAgIE5hbWVk
R3JpZExpbmVzTWFwIG1fbmFtZWRHcmlkUm93TGluZXM7CisKKyAgICBPcmRlcmVkTmFtZWRHcmlk
TGluZXNNYXAgbV9vcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXM7CisgICAgT3JkZXJlZE5hbWVk
R3JpZExpbmVzTWFwIG1fb3JkZXJlZE5hbWVkR3JpZFJvd0xpbmVzOworCisgICAgTmFtZWRHcmlk
TGluZXNNYXAgbV9hdXRvUmVwZWF0TmFtZWRHcmlkQ29sdW1uTGluZXM7CisgICAgTmFtZWRHcmlk
TGluZXNNYXAgbV9hdXRvUmVwZWF0TmFtZWRHcmlkUm93TGluZXM7CisgICAgT3JkZXJlZE5hbWVk
R3JpZExpbmVzTWFwIG1fYXV0b1JlcGVhdE9yZGVyZWROYW1lZEdyaWRDb2x1bW5MaW5lczsKKyAg
ICBPcmRlcmVkTmFtZWRHcmlkTGluZXNNYXAgbV9hdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZFJv
d0xpbmVzOworCisgICAgVmVjdG9yPEdyaWRUcmFja1NpemU+IG1fZ3JpZEF1dG9SZXBlYXRDb2x1
bW5zOworICAgIFZlY3RvcjxHcmlkVHJhY2tTaXplPiBtX2dyaWRBdXRvUmVwZWF0Um93czsKKwor
ICAgIHVuc2lnbmVkIG1fYXV0b1JlcGVhdENvbHVtbnNJbnNlcnRpb25Qb2ludDsKKyAgICB1bnNp
Z25lZCBtX2F1dG9SZXBlYXRSb3dzSW5zZXJ0aW9uUG9pbnQ7CisKKyAgICBBdXRvUmVwZWF0VHlw
ZSBtX2F1dG9SZXBlYXRDb2x1bW5zVHlwZTsKKyAgICBBdXRvUmVwZWF0VHlwZSBtX2F1dG9SZXBl
YXRSb3dzVHlwZTsKKworICAgIGJvb2wgbV9zdWJncmlkUm93czsKKyAgICBib29sIG1fc3ViZ3Jp
ZENvbHVtbnM7CiAKLXByaXZhdGU6CiAgICAgU3R5bGVHcmlkRGF0YSgpOwogICAgIFN0eWxlR3Jp
ZERhdGEoY29uc3QgU3R5bGVHcmlkRGF0YSYpOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXJDb252ZXJ0
ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oCmluZGV4
IDc0NjRmODRkOGJmNmIyYjJhMzMxMjNkNTkyYmUyOTJmMTRjYzI4ZGUuLjI4ZDQ2YzJmNWNmYTVi
YWEzZjU1Nzk3YTI3YjEyNWRjOTJkNTM2ZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0
eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0
eWxlQnVpbGRlckNvbnZlcnRlci5oCkBAIC01OCw2ICs1OCw3IEBACiAjaW5jbHVkZSAiU1ZHVVJJ
UmVmZXJlbmNlLmgiCiAjaW5jbHVkZSAiU2V0dGluZ3MuaCIKICNpbmNsdWRlICJTdHlsZUJ1aWxk
ZXJTdGF0ZS5oIgorI2luY2x1ZGUgIlN0eWxlR3JpZERhdGEuaCIKICNpbmNsdWRlICJTdHlsZVNj
cm9sbFNuYXBQb2ludHMuaCIKICNpbmNsdWRlICJUYWJTaXplLmgiCiAjaW5jbHVkZSAiVG91Y2hB
Y3Rpb24uaCIKQEAgLTE5MSw4ICsxOTIsNyBAQCBwcml2YXRlOgogCiAgICAgc3RhdGljIEdyaWRM
ZW5ndGggY3JlYXRlR3JpZFRyYWNrQnJlYWR0aChjb25zdCBDU1NQcmltaXRpdmVWYWx1ZSYsIEJ1
aWxkZXJTdGF0ZSYpOwogICAgIHN0YXRpYyBHcmlkVHJhY2tTaXplIGNyZWF0ZUdyaWRUcmFja1Np
emUoY29uc3QgQ1NTVmFsdWUmLCBCdWlsZGVyU3RhdGUmKTsKLSAgICBzdHJ1Y3QgVHJhY2tzRGF0
YTsKLSAgICBzdGF0aWMgYm9vbCBjcmVhdGVHcmlkVHJhY2tMaXN0KGNvbnN0IENTU1ZhbHVlJiwg
VHJhY2tzRGF0YSYsIEJ1aWxkZXJTdGF0ZSYpOworICAgIHN0YXRpYyBib29sIGNyZWF0ZUdyaWRU
cmFja0xpc3QoY29uc3QgQ1NTVmFsdWUmLCBHcmlkVHJhY2tMaXN0JiwgQnVpbGRlclN0YXRlJik7
CiAgICAgc3RhdGljIGJvb2wgY3JlYXRlR3JpZFBvc2l0aW9uKGNvbnN0IENTU1ZhbHVlJiwgR3Jp
ZFBvc2l0aW9uJik7CiAgICAgc3RhdGljIHZvaWQgY3JlYXRlSW1wbGljaXROYW1lZEdyaWRMaW5l
c0Zyb21HcmlkQXJlYShjb25zdCBOYW1lZEdyaWRBcmVhTWFwJiwgTmFtZWRHcmlkTGluZXNNYXAm
LCBHcmlkVHJhY2tTaXppbmdEaXJlY3Rpb24pOwogICAgIHN0YXRpYyBDU1NUb0xlbmd0aENvbnZl
cnNpb25EYXRhIGNzc3RvTGVuZ3RoQ29udmVyc2lvbkRhdGFXaXRoVGV4dFpvb21GYWN0b3IoQnVp
bGRlclN0YXRlJik7CkBAIC05NzksMzcgKzk3OSw3IEBAIGlubGluZSBHcmlkVHJhY2tTaXplIEJ1
aWxkZXJDb252ZXJ0ZXI6OmNyZWF0ZUdyaWRUcmFja1NpemUoY29uc3QgQ1NTVmFsdWUmIHZhbHVl
CiAgICAgcmV0dXJuIEdyaWRUcmFja1NpemUobWluVHJhY2tCcmVhZHRoLCBtYXhUcmFja0JyZWFk
dGgpOwogfQogCi1zdGF0aWMgdm9pZCBjcmVhdGVHcmlkTGluZU5hbWVzTGlzdChjb25zdCBDU1NW
YWx1ZSYgdmFsdWUsIHVuc2lnbmVkIGN1cnJlbnROYW1lZEdyaWRMaW5lLCBOYW1lZEdyaWRMaW5l
c01hcCYgbmFtZWRHcmlkTGluZXMsIE9yZGVyZWROYW1lZEdyaWRMaW5lc01hcCYgb3JkZXJlZE5h
bWVkR3JpZExpbmVzKQotewotICAgIEFTU0VSVCh2YWx1ZS5pc0dyaWRMaW5lTmFtZXNWYWx1ZSgp
KTsKLSAgICBhdXRvIG9yZGVyZWRSZXN1bHQgPSBvcmRlcmVkTmFtZWRHcmlkTGluZXMuYWRkKGN1
cnJlbnROYW1lZEdyaWRMaW5lLCBWZWN0b3I8U3RyaW5nPigpKTsKLQotICAgIGZvciAoYXV0byYg
bmFtZWRHcmlkTGluZVZhbHVlIDogZG93bmNhc3Q8Q1NTR3JpZExpbmVOYW1lc1ZhbHVlPih2YWx1
ZSkpIHsKLSAgICAgICAgU3RyaW5nIG5hbWVkR3JpZExpbmUgPSBkb3duY2FzdDxDU1NQcmltaXRp
dmVWYWx1ZT4obmFtZWRHcmlkTGluZVZhbHVlLmdldCgpKS5zdHJpbmdWYWx1ZSgpOwotICAgICAg
ICBhdXRvIHJlc3VsdCA9IG5hbWVkR3JpZExpbmVzLmFkZChuYW1lZEdyaWRMaW5lLCBWZWN0b3I8
dW5zaWduZWQ+KCkpOwotICAgICAgICByZXN1bHQuaXRlcmF0b3ItPnZhbHVlLmFwcGVuZChjdXJy
ZW50TmFtZWRHcmlkTGluZSk7Ci0KLSAgICAgICAgb3JkZXJlZFJlc3VsdC5pdGVyYXRvci0+dmFs
dWUuYXBwZW5kKG5hbWVkR3JpZExpbmUpOwotICAgIH0KLX0KLQotc3RydWN0IEJ1aWxkZXJDb252
ZXJ0ZXI6OlRyYWNrc0RhdGEgewotICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKFRyYWNrc0RhdGEp
OyBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKLXB1YmxpYzoKLSAgICBUcmFja3NEYXRhKCkgPSBk
ZWZhdWx0OwotCi0gICAgVmVjdG9yPEdyaWRUcmFja1NpemU+IG1fdHJhY2tTaXplczsKLSAgICBO
YW1lZEdyaWRMaW5lc01hcCBtX25hbWVkR3JpZExpbmVzOwotICAgIE9yZGVyZWROYW1lZEdyaWRM
aW5lc01hcCBtX29yZGVyZWROYW1lZEdyaWRMaW5lczsKLSAgICBWZWN0b3I8R3JpZFRyYWNrU2l6
ZT4gbV9hdXRvUmVwZWF0VHJhY2tTaXplczsKLSAgICBOYW1lZEdyaWRMaW5lc01hcCBtX2F1dG9S
ZXBlYXROYW1lZEdyaWRMaW5lczsKLSAgICBPcmRlcmVkTmFtZWRHcmlkTGluZXNNYXAgbV9hdXRv
UmVwZWF0T3JkZXJlZE5hbWVkR3JpZExpbmVzOwotICAgIHVuc2lnbmVkIG1fYXV0b1JlcGVhdElu
c2VydGlvblBvaW50IHsgUmVuZGVyU3R5bGU6OmluaXRpYWxHcmlkQXV0b1JlcGVhdEluc2VydGlv
blBvaW50KCkgfTsKLSAgICBBdXRvUmVwZWF0VHlwZSBtX2F1dG9SZXBlYXRUeXBlIHsgUmVuZGVy
U3R5bGU6OmluaXRpYWxHcmlkQXV0b1JlcGVhdFR5cGUoKSB9OwotICAgIGJvb2wgaXNTdWJncmlk
IHsgZmFsc2UgfTsKLX07Ci0KLWlubGluZSBib29sIEJ1aWxkZXJDb252ZXJ0ZXI6OmNyZWF0ZUdy
aWRUcmFja0xpc3QoY29uc3QgQ1NTVmFsdWUmIHZhbHVlLCBUcmFja3NEYXRhJiB0cmFja3NEYXRh
LCBCdWlsZGVyU3RhdGUmIGJ1aWxkZXJTdGF0ZSkKK2lubGluZSBib29sIEJ1aWxkZXJDb252ZXJ0
ZXI6OmNyZWF0ZUdyaWRUcmFja0xpc3QoY29uc3QgQ1NTVmFsdWUmIHZhbHVlLCBHcmlkVHJhY2tM
aXN0JiB0cmFja0xpc3QsIEJ1aWxkZXJTdGF0ZSYgYnVpbGRlclN0YXRlKQogewogICAgIC8vIEhh
bmRsZSAnbm9uZScuCiAgICAgaWYgKGlzPENTU1ByaW1pdGl2ZVZhbHVlPih2YWx1ZSkpCkBAIC0x
MDE4LDYyICs5ODgsNTIgQEAgaW5saW5lIGJvb2wgQnVpbGRlckNvbnZlcnRlcjo6Y3JlYXRlR3Jp
ZFRyYWNrTGlzdChjb25zdCBDU1NWYWx1ZSYgdmFsdWUsIFRyYWNrc0QKICAgICBpZiAoIWlzPENT
U1ZhbHVlTGlzdD4odmFsdWUpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAgICB1bnNpZ25l
ZCBjdXJyZW50TmFtZWRHcmlkTGluZSA9IDA7Ci0gICAgYXV0byBoYW5kbGVMaW5lTmFtZU9yVHJh
Y2tTaXplID0gWyZdKGNvbnN0IENTU1ZhbHVlJiBjdXJyZW50VmFsdWUpIHsKLSAgICAgICAgaWYg
KGlzPENTU0dyaWRMaW5lTmFtZXNWYWx1ZT4oY3VycmVudFZhbHVlKSkgewotICAgICAgICAgICAg
Y3JlYXRlR3JpZExpbmVOYW1lc0xpc3QoY3VycmVudFZhbHVlLCBjdXJyZW50TmFtZWRHcmlkTGlu
ZSwgdHJhY2tzRGF0YS5tX25hbWVkR3JpZExpbmVzLCB0cmFja3NEYXRhLm1fb3JkZXJlZE5hbWVk
R3JpZExpbmVzKTsKLSAgICAgICAgICAgIC8vIFN1YmdyaWRzIG9ubHkgaGF2ZSBsaW5lIG5hbWVz
IGRlZmluZWQsIG5vdCB0cmFjayBzaXplcywgc28gd2Ugd2FudCBvdXIgY291bnQKLSAgICAgICAg
ICAgIC8vIHRvIGJlIHRoZSBudW1iZXIgb2YgbGluZXMgbmFtZWQgcmF0aGVyIHRoYW4gbnVtYmVy
IG9mIHNpemVkIHRyYWNrcy4KLSAgICAgICAgICAgIGlmICh0cmFja3NEYXRhLmlzU3ViZ3JpZCkK
LSAgICAgICAgICAgICAgICBjdXJyZW50TmFtZWRHcmlkTGluZSsrOwotICAgICAgICB9IGVsc2Ug
ewotICAgICAgICAgICAgKytjdXJyZW50TmFtZWRHcmlkTGluZTsKLSAgICAgICAgICAgIHRyYWNr
c0RhdGEubV90cmFja1NpemVzLmFwcGVuZChjcmVhdGVHcmlkVHJhY2tTaXplKGN1cnJlbnRWYWx1
ZSwgYnVpbGRlclN0YXRlKSk7CisgICAgaWYgKGlzPENTU1N1YmdyaWRWYWx1ZT4odmFsdWUpKQor
ICAgICAgICB0cmFja0xpc3QuYXBwZW5kKEdyaWRUcmFja0VudHJ5U3ViZ3JpZCgpKTsKKworICAg
IGF1dG8gYnVpbGRSZXBlYXRMaXN0ID0gWyZdKGNvbnN0IENTU1ZhbHVlJiByZXBlYXRWYWx1ZSwg
UmVwZWF0VHJhY2tMaXN0JiByZXBlYXRMaXN0KSB7CisgICAgICAgIGZvciAoYXV0byYgY3VycmVu
dFZhbHVlIDogZG93bmNhc3Q8Q1NTVmFsdWVMaXN0PihyZXBlYXRWYWx1ZSkpIHsKKyAgICAgICAg
ICAgIGlmIChpczxDU1NHcmlkTGluZU5hbWVzVmFsdWU+KGN1cnJlbnRWYWx1ZSkpIHsKKyAgICAg
ICAgICAgICAgICBWZWN0b3I8U3RyaW5nPiBuYW1lczsKKyAgICAgICAgICAgICAgICBmb3IgKGF1
dG8mIG5hbWVkR3JpZExpbmVWYWx1ZSA6IGRvd25jYXN0PENTU0dyaWRMaW5lTmFtZXNWYWx1ZT4o
Y3VycmVudFZhbHVlLmdldCgpKSkKKyAgICAgICAgICAgICAgICAgICAgbmFtZXMuYXBwZW5kKGRv
d25jYXN0PENTU1ByaW1pdGl2ZVZhbHVlPihuYW1lZEdyaWRMaW5lVmFsdWUuZ2V0KCkpLnN0cmlu
Z1ZhbHVlKCkpOworICAgICAgICAgICAgICAgIHJlcGVhdExpc3QuYXBwZW5kKFdURk1vdmUobmFt
ZXMpKTsKKyAgICAgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgICAgIHJlcGVhdExpc3QuYXBw
ZW5kKGNyZWF0ZUdyaWRUcmFja1NpemUoY3VycmVudFZhbHVlLCBidWlsZGVyU3RhdGUpKTsKICAg
ICAgICAgfQogICAgIH07CiAKLSAgICBpZiAoaXM8Q1NTU3ViZ3JpZFZhbHVlPih2YWx1ZSkpCi0g
ICAgICAgIHRyYWNrc0RhdGEuaXNTdWJncmlkID0gdHJ1ZTsKKyAgICAvLyBGSVhNRTogRW5zdXJl
IHdlIGFsd2F5cyBoYXZlIGEgbGluZSBuYW1lIHNldCBhdCB0aGUgc3RhcnQgYW5kIGVuZCwgdW5s
ZXNzIHdlJ3JlCisgICAgLy8gc3ViZ3JpZCwgc2luY2UgdGhpcyBpcyB0aGUgY2Fub25pY2FsIHJl
cHJlc2VudGVkIG9mIHRoZSBjb21wdXRlZCB2YWx1ZS4KKyAgICAvLyBNYWtlIHN1cmUgY29kZSBy
ZWFkaW5nIHRoaXMgaGFuZGxlcyBlbXB0eSBsaW5lIG5hbWUgc2V0cy4KIAotICAgIHVuc2lnbmVk
IGF1dG9SZXBlYXRJbmRleCA9IDA7CiAgICAgZm9yIChhdXRvJiBjdXJyZW50VmFsdWUgOiBkb3du
Y2FzdDxDU1NWYWx1ZUxpc3Q+KHZhbHVlKSkgewogICAgICAgICBpZiAoaXM8Q1NTR3JpZEF1dG9S
ZXBlYXRWYWx1ZT4oY3VycmVudFZhbHVlKSkgewotICAgICAgICAgICAgQVNTRVJUKCFhdXRvUmVw
ZWF0SW5kZXgpOwotICAgICAgICAgICAgYXV0b1JlcGVhdEluZGV4ID0gMDsKICAgICAgICAgICAg
IENTU1ZhbHVlSUQgYXV0b1JlcGVhdElEID0gZG93bmNhc3Q8Q1NTR3JpZEF1dG9SZXBlYXRWYWx1
ZT4oY3VycmVudFZhbHVlLmdldCgpKS5hdXRvUmVwZWF0SUQoKTsKICAgICAgICAgICAgIEFTU0VS
VChhdXRvUmVwZWF0SUQgPT0gQ1NTVmFsdWVBdXRvRmlsbCB8fCBhdXRvUmVwZWF0SUQgPT0gQ1NT
VmFsdWVBdXRvRml0KTsKLSAgICAgICAgICAgIHRyYWNrc0RhdGEubV9hdXRvUmVwZWF0VHlwZSA9
IGF1dG9SZXBlYXRJRCA9PSBDU1NWYWx1ZUF1dG9GaWxsID8gQXV0b1JlcGVhdFR5cGU6OkZpbGwg
OiBBdXRvUmVwZWF0VHlwZTo6Rml0OwotICAgICAgICAgICAgZm9yIChhdXRvJiBhdXRvUmVwZWF0
VmFsdWUgOiBkb3duY2FzdDxDU1NWYWx1ZUxpc3Q+KGN1cnJlbnRWYWx1ZS5nZXQoKSkpIHsKLSAg
ICAgICAgICAgICAgICBpZiAoaXM8Q1NTR3JpZExpbmVOYW1lc1ZhbHVlPihhdXRvUmVwZWF0VmFs
dWUpKSB7Ci0gICAgICAgICAgICAgICAgICAgIGNyZWF0ZUdyaWRMaW5lTmFtZXNMaXN0KGF1dG9S
ZXBlYXRWYWx1ZS5nZXQoKSwgYXV0b1JlcGVhdEluZGV4LCB0cmFja3NEYXRhLm1fYXV0b1JlcGVh
dE5hbWVkR3JpZExpbmVzLCB0cmFja3NEYXRhLm1fYXV0b1JlcGVhdE9yZGVyZWROYW1lZEdyaWRM
aW5lcyk7Ci0gICAgICAgICAgICAgICAgICAgIGlmICh0cmFja3NEYXRhLmlzU3ViZ3JpZCkKLSAg
ICAgICAgICAgICAgICAgICAgICAgICsrYXV0b1JlcGVhdEluZGV4OwotICAgICAgICAgICAgICAg
ICAgICBjb250aW51ZTsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgKythdXRv
UmVwZWF0SW5kZXg7Ci0gICAgICAgICAgICAgICAgdHJhY2tzRGF0YS5tX2F1dG9SZXBlYXRUcmFj
a1NpemVzLmFwcGVuZChjcmVhdGVHcmlkVHJhY2tTaXplKGF1dG9SZXBlYXRWYWx1ZS5nZXQoKSwg
YnVpbGRlclN0YXRlKSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICB0cmFja3NEYXRhLm1f
YXV0b1JlcGVhdEluc2VydGlvblBvaW50ID0gY3VycmVudE5hbWVkR3JpZExpbmU7Ci0gICAgICAg
ICAgICBpZiAoIXRyYWNrc0RhdGEuaXNTdWJncmlkKQotICAgICAgICAgICAgICAgIGN1cnJlbnRO
YW1lZEdyaWRMaW5lKys7Ci0gICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgfQogCi0gICAg
ICAgIGlmIChpczxDU1NHcmlkSW50ZWdlclJlcGVhdFZhbHVlPihjdXJyZW50VmFsdWUpKSB7Ci0g
ICAgICAgICAgICBzaXplX3QgcmVwZXRpdGlvbnMgPSBkb3duY2FzdDxDU1NHcmlkSW50ZWdlclJl
cGVhdFZhbHVlPihjdXJyZW50VmFsdWUuZ2V0KCkpLnJlcGV0aXRpb25zKCk7Ci0gICAgICAgICAg
ICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHJlcGV0aXRpb25zOyArK2kpIHsKLSAgICAgICAgICAg
ICAgICBmb3IgKGF1dG8mIGludGVnZXJSZXBlYXRWYWx1ZSA6IGRvd25jYXN0PENTU1ZhbHVlTGlz
dD4oY3VycmVudFZhbHVlLmdldCgpKSkKLSAgICAgICAgICAgICAgICAgICAgaGFuZGxlTGluZU5h
bWVPclRyYWNrU2l6ZShpbnRlZ2VyUmVwZWF0VmFsdWUpOworICAgICAgICAgICAgR3JpZFRyYWNr
RW50cnlBdXRvUmVwZWF0IHJlcGVhdDsKKyAgICAgICAgICAgIHJlcGVhdC50eXBlID0gYXV0b1Jl
cGVhdElEID09IENTU1ZhbHVlQXV0b0ZpbGwgPyBBdXRvUmVwZWF0VHlwZTo6RmlsbCA6IEF1dG9S
ZXBlYXRUeXBlOjpGaXQ7CisKKyAgICAgICAgICAgIGJ1aWxkUmVwZWF0TGlzdChjdXJyZW50VmFs
dWUsIHJlcGVhdC5saXN0KTsKKyAgICAgICAgICAgIHRyYWNrTGlzdC5hcHBlbmQoV1RGTW92ZShy
ZXBlYXQpKTsKKyAgICAgICAgfSBlbHNlIGlmIChpczxDU1NHcmlkSW50ZWdlclJlcGVhdFZhbHVl
PihjdXJyZW50VmFsdWUpKSB7CisgICAgICAgICAgICBHcmlkVHJhY2tFbnRyeVJlcGVhdCByZXBl
YXQ7CisgICAgICAgICAgICByZXBlYXQucmVwZWF0cyA9IGRvd25jYXN0PENTU0dyaWRJbnRlZ2Vy
UmVwZWF0VmFsdWU+KGN1cnJlbnRWYWx1ZS5nZXQoKSkucmVwZXRpdGlvbnMoKTsKKworICAgICAg
ICAgICAgYnVpbGRSZXBlYXRMaXN0KGN1cnJlbnRWYWx1ZSwgcmVwZWF0Lmxpc3QpOworICAgICAg
ICAgICAgdHJhY2tMaXN0LmFwcGVuZChXVEZNb3ZlKHJlcGVhdCkpOworICAgICAgICB9IGVsc2Ug
aWYgKGlzPENTU0dyaWRMaW5lTmFtZXNWYWx1ZT4oY3VycmVudFZhbHVlKSkgeworICAgICAgICAg
ICAgVmVjdG9yPFN0cmluZz4gbmFtZXM7CisgICAgICAgICAgICBmb3IgKGF1dG8mIG5hbWVkR3Jp
ZExpbmVWYWx1ZSA6IGRvd25jYXN0PENTU0dyaWRMaW5lTmFtZXNWYWx1ZT4oY3VycmVudFZhbHVl
LmdldCgpKSkgeworICAgICAgICAgICAgICAgIG5hbWVzLmFwcGVuZChkb3duY2FzdDxDU1NQcmlt
aXRpdmVWYWx1ZT4obmFtZWRHcmlkTGluZVZhbHVlLmdldCgpKS5zdHJpbmdWYWx1ZSgpKTsKICAg
ICAgICAgICAgIH0KLSAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICAgICAgdHJhY2tMaXN0
LmFwcGVuZChXVEZNb3ZlKG5hbWVzKSk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICB0
cmFja0xpc3QuYXBwZW5kKGNyZWF0ZUdyaWRUcmFja1NpemUoY3VycmVudFZhbHVlLCBidWlsZGVy
U3RhdGUpKTsKICAgICAgICAgfQotCi0gICAgICAgIGhhbmRsZUxpbmVOYW1lT3JUcmFja1NpemUo
Y3VycmVudFZhbHVlKTsKICAgICB9CiAKLSAgICAvLyBUaGUgcGFyc2VyIHNob3VsZCBoYXZlIHJl
amVjdGVkIGFueSA8dHJhY2stbGlzdD4gd2l0aG91dCBhbnkgPHRyYWNrLXNpemU+IGFzCi0gICAg
Ly8gdGhpcyBpcyBub3QgY29uZm9ybWFudCB0byB0aGUgc3ludGF4LgotICAgIEFTU0VSVCghdHJh
Y2tzRGF0YS5tX3RyYWNrU2l6ZXMuaXNFbXB0eSgpIHx8ICF0cmFja3NEYXRhLm1fYXV0b1JlcGVh
dFRyYWNrU2l6ZXMuaXNFbXB0eSgpIHx8IHRyYWNrc0RhdGEuaXNTdWJncmlkKTsKICAgICByZXR1
cm4gdHJ1ZTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVCdWls
ZGVyQ3VzdG9tLmggYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXJDdXN0b20uaApp
bmRleCBlODg0ZTViY2ZhYzVkZDQ4NTA5ZGVkMjM5ZWUyZWY2NmFmM2UxNGVkLi44MTUyZTJmZjlj
MDJhMzJjZWFhNWUyMTY0N2E0NDA5NTY4MWFmNzczIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9zdHlsZS9TdHlsZUJ1aWxkZXJDdXN0b20uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9T
dHlsZUJ1aWxkZXJDdXN0b20uaApAQCAtMTg5NiwzMiArMTg5NiwyNCBAQCBpbmxpbmUgdm9pZCBC
dWlsZGVyQ3VzdG9tOjphcHBseVZhbHVlR3JpZFRlbXBsYXRlQXJlYXMoQnVpbGRlclN0YXRlJiBi
dWlsZGVyU3RhdAogICAgIGJ1aWxkZXJTdGF0ZS5zdHlsZSgpLnNldE5hbWVkR3JpZEFyZWFDb2x1
bW5Db3VudChncmlkVGVtcGxhdGVBcmVhc1ZhbHVlLmNvbHVtbkNvdW50KCkpOwogfQogCi0jZGVm
aW5lIFNFVF9UUkFDS1NfREFUQV9JTlRFUk5BTCh0cmFja3NEYXRhLCBzdHlsZSwgcGFyZW50U3R5
bGUsIFRyYWNrVHlwZSkgXAotICAgIEFTU0VSVCh0cmFja3NEYXRhIHx8IHBhcmVudFN0eWxlKTsg
XAotICAgIHN0eWxlLnNldEdyaWQjI1RyYWNrVHlwZSMjcyh0cmFja3NEYXRhID8gdHJhY2tzRGF0
YS0+bV90cmFja1NpemVzIDogcGFyZW50U3R5bGUtPmdyaWQjI1RyYWNrVHlwZSMjcygpKTsgXAot
ICAgIHN0eWxlLnNldE5hbWVkR3JpZCMjVHJhY2tUeXBlIyNMaW5lcyh0cmFja3NEYXRhID8gdHJh
Y2tzRGF0YS0+bV9uYW1lZEdyaWRMaW5lcyA6IHBhcmVudFN0eWxlLT5uYW1lZEdyaWQjI1RyYWNr
VHlwZSMjTGluZXMoKSk7IFwKLSAgICBzdHlsZS5zZXRPcmRlcmVkTmFtZWRHcmlkIyNUcmFja1R5
cGUjI0xpbmVzKHRyYWNrc0RhdGEgPyB0cmFja3NEYXRhLT5tX29yZGVyZWROYW1lZEdyaWRMaW5l
cyA6IHBhcmVudFN0eWxlLT5vcmRlcmVkTmFtZWRHcmlkIyNUcmFja1R5cGUjI0xpbmVzKCkpOyBc
Ci0gICAgc3R5bGUuc2V0R3JpZEF1dG9SZXBlYXQjI1RyYWNrVHlwZSMjcyh0cmFja3NEYXRhID8g
dHJhY2tzRGF0YS0+bV9hdXRvUmVwZWF0VHJhY2tTaXplcyA6IHBhcmVudFN0eWxlLT5ncmlkQXV0
b1JlcGVhdCMjVHJhY2tUeXBlIyNzKCkpOyBcCi0gICAgc3R5bGUuc2V0R3JpZEF1dG9SZXBlYXQj
I1RyYWNrVHlwZSMjc0luc2VydGlvblBvaW50KHRyYWNrc0RhdGEgPyB0cmFja3NEYXRhLT5tX2F1
dG9SZXBlYXRJbnNlcnRpb25Qb2ludCA6IHBhcmVudFN0eWxlLT5ncmlkQXV0b1JlcGVhdCMjVHJh
Y2tUeXBlIyNzSW5zZXJ0aW9uUG9pbnQoKSk7IFwKLSAgICBzdHlsZS5zZXRBdXRvUmVwZWF0TmFt
ZWRHcmlkIyNUcmFja1R5cGUjI0xpbmVzKHRyYWNrc0RhdGEgPyB0cmFja3NEYXRhLT5tX2F1dG9S
ZXBlYXROYW1lZEdyaWRMaW5lcyA6IHBhcmVudFN0eWxlLT5hdXRvUmVwZWF0TmFtZWRHcmlkIyNU
cmFja1R5cGUjI0xpbmVzKCkpOyBcCi0gICAgc3R5bGUuc2V0QXV0b1JlcGVhdE9yZGVyZWROYW1l
ZEdyaWQjI1RyYWNrVHlwZSMjTGluZXModHJhY2tzRGF0YSA/IHRyYWNrc0RhdGEtPm1fYXV0b1Jl
cGVhdE9yZGVyZWROYW1lZEdyaWRMaW5lcyA6IHBhcmVudFN0eWxlLT5hdXRvUmVwZWF0T3JkZXJl
ZE5hbWVkR3JpZCMjVHJhY2tUeXBlIyNMaW5lcygpKTsgXAotICAgIHN0eWxlLnNldEdyaWRBdXRv
UmVwZWF0IyNUcmFja1R5cGUjI3NUeXBlKHRyYWNrc0RhdGEgPyB0cmFja3NEYXRhLT5tX2F1dG9S
ZXBlYXRUeXBlIDogcGFyZW50U3R5bGUtPmdyaWRBdXRvUmVwZWF0IyNUcmFja1R5cGUjI3NUeXBl
KCkpOyBcCi0gICAgc3R5bGUuc2V0R3JpZFN1YmdyaWQjI1RyYWNrVHlwZSMjcyh0cmFja3NEYXRh
ID8gdHJhY2tzRGF0YS0+aXNTdWJncmlkIDogcGFyZW50U3R5bGUtPmdyaWRTdWJncmlkIyNUcmFj
a1R5cGUjI3MoKSk7CisjZGVmaW5lIFNFVF9UUkFDS1NfREFUQV9JTlRFUk5BTCh0cmFja0xpc3Qs
IHN0eWxlLCBwYXJlbnRTdHlsZSwgVHJhY2tUeXBlKSBcCisgICAgQVNTRVJUKHRyYWNrTGlzdCB8
fCBwYXJlbnRTdHlsZSk7IFwKKyAgICBzdHlsZS5zZXRHcmlkIyNUcmFja1R5cGUjI0xpc3QodHJh
Y2tMaXN0ID8gKnRyYWNrTGlzdCA6IHBhcmVudFN0eWxlLT5ncmlkIyNUcmFja1R5cGUjI0xpc3Qo
KSk7IFwKIAogI2RlZmluZSBTRVRfSU5IRVJJVF9UUkFDS1NfREFUQShzdHlsZSwgcGFyZW50U3R5
bGUsIFRyYWNrVHlwZSkgXAotICAgIEJ1aWxkZXJDb252ZXJ0ZXI6OlRyYWNrc0RhdGEqIHRyYWNr
c0RhdGEgPSBudWxscHRyOyBcCisgICAgR3JpZFRyYWNrTGlzdCogdHJhY2tMaXN0ID0gbnVsbHB0
cjsgXAogICAgIGNvbnN0IFJlbmRlclN0eWxlKiBwYXJlbnRTdHlsZVBvaW50ZXIgPSAmcGFyZW50
U3R5bGU7IFwKLSAgICBTRVRfVFJBQ0tTX0RBVEFfSU5URVJOQUwodHJhY2tzRGF0YSwgc3R5bGUs
IHBhcmVudFN0eWxlUG9pbnRlciwgVHJhY2tUeXBlKQorICAgIFNFVF9UUkFDS1NfREFUQV9JTlRF
Uk5BTCh0cmFja0xpc3QsIHN0eWxlLCBwYXJlbnRTdHlsZVBvaW50ZXIsIFRyYWNrVHlwZSkKIAot
I2RlZmluZSBTRVRfVFJBQ0tTX0RBVEEodHJhY2tzRGF0YSwgc3R5bGUsIFRyYWNrVHlwZSkgXAot
ICAgIEJ1aWxkZXJDb252ZXJ0ZXI6OlRyYWNrc0RhdGEqIHRyYWNrc0RhdGFQb2ludGVyID0gJnRy
YWNrc0RhdGE7IFwKKyNkZWZpbmUgU0VUX1RSQUNLU19EQVRBKHRyYWNrTGlzdCwgc3R5bGUsIFRy
YWNrVHlwZSkgXAorICAgIEdyaWRUcmFja0xpc3QqIHRyYWNrTGlzdFBvaW50ZXIgPSAmdHJhY2tM
aXN0OyBcCiAgICAgY29uc3QgUmVuZGVyU3R5bGUqIHBhcmVudFN0eWxlID0gbnVsbHB0cjsgXAot
ICAgIFNFVF9UUkFDS1NfREFUQV9JTlRFUk5BTCh0cmFja3NEYXRhUG9pbnRlciwgc3R5bGUsIHBh
cmVudFN0eWxlLCBUcmFja1R5cGUpCisgICAgU0VUX1RSQUNLU19EQVRBX0lOVEVSTkFMKHRyYWNr
TGlzdFBvaW50ZXIsIHN0eWxlLCBwYXJlbnRTdHlsZSwgVHJhY2tUeXBlKQogCiBpbmxpbmUgdm9p
ZCBCdWlsZGVyQ3VzdG9tOjphcHBseUluaXRpYWxHcmlkVGVtcGxhdGVDb2x1bW5zKEJ1aWxkZXJT
dGF0ZSYgYnVpbGRlclN0YXRlKQogewotICAgIEJ1aWxkZXJDb252ZXJ0ZXI6OlRyYWNrc0RhdGEg
aW5pdGlhbFRyYWNrc0RhdGE7Ci0gICAgU0VUX1RSQUNLU19EQVRBKGluaXRpYWxUcmFja3NEYXRh
LCBidWlsZGVyU3RhdGUuc3R5bGUoKSwgQ29sdW1uKTsKKyAgICBHcmlkVHJhY2tMaXN0IGluaXRp
YWxUcmFja0xpc3Q7CisgICAgU0VUX1RSQUNLU19EQVRBKGluaXRpYWxUcmFja0xpc3QsIGJ1aWxk
ZXJTdGF0ZS5zdHlsZSgpLCBDb2x1bW4pOwogfQogCiBpbmxpbmUgdm9pZCBCdWlsZGVyQ3VzdG9t
OjphcHBseUluaGVyaXRHcmlkVGVtcGxhdGVDb2x1bW5zKEJ1aWxkZXJTdGF0ZSYgYnVpbGRlclN0
YXRlKQpAQCAtMTkzMSwxNiArMTkyMywxNiBAQCBpbmxpbmUgdm9pZCBCdWlsZGVyQ3VzdG9tOjph
cHBseUluaGVyaXRHcmlkVGVtcGxhdGVDb2x1bW5zKEJ1aWxkZXJTdGF0ZSYgYnVpbGRlcgogCiBp
bmxpbmUgdm9pZCBCdWlsZGVyQ3VzdG9tOjphcHBseVZhbHVlR3JpZFRlbXBsYXRlQ29sdW1ucyhC
dWlsZGVyU3RhdGUmIGJ1aWxkZXJTdGF0ZSwgQ1NTVmFsdWUmIHZhbHVlKQogewotICAgIEJ1aWxk
ZXJDb252ZXJ0ZXI6OlRyYWNrc0RhdGEgdHJhY2tzRGF0YTsKLSAgICBpZiAoIUJ1aWxkZXJDb252
ZXJ0ZXI6OmNyZWF0ZUdyaWRUcmFja0xpc3QodmFsdWUsIHRyYWNrc0RhdGEsIGJ1aWxkZXJTdGF0
ZSkpCisgICAgR3JpZFRyYWNrTGlzdCB0cmFja0xpc3Q7CisgICAgaWYgKCFCdWlsZGVyQ29udmVy
dGVyOjpjcmVhdGVHcmlkVHJhY2tMaXN0KHZhbHVlLCB0cmFja0xpc3QsIGJ1aWxkZXJTdGF0ZSkp
CiAgICAgICAgIHJldHVybjsKLSAgICBTRVRfVFJBQ0tTX0RBVEEodHJhY2tzRGF0YSwgYnVpbGRl
clN0YXRlLnN0eWxlKCksIENvbHVtbik7CisgICAgU0VUX1RSQUNLU19EQVRBKHRyYWNrTGlzdCwg
YnVpbGRlclN0YXRlLnN0eWxlKCksIENvbHVtbik7CiB9CiAKIGlubGluZSB2b2lkIEJ1aWxkZXJD
dXN0b206OmFwcGx5SW5pdGlhbEdyaWRUZW1wbGF0ZVJvd3MoQnVpbGRlclN0YXRlJiBidWlsZGVy
U3RhdGUpCiB7Ci0gICAgQnVpbGRlckNvbnZlcnRlcjo6VHJhY2tzRGF0YSBpbml0aWFsVHJhY2tz
RGF0YTsKLSAgICBTRVRfVFJBQ0tTX0RBVEEoaW5pdGlhbFRyYWNrc0RhdGEsIGJ1aWxkZXJTdGF0
ZS5zdHlsZSgpLCBSb3cpOworICAgIEdyaWRUcmFja0xpc3QgaW5pdGlhbFRyYWNrTGlzdDsKKyAg
ICBTRVRfVFJBQ0tTX0RBVEEoaW5pdGlhbFRyYWNrTGlzdCwgYnVpbGRlclN0YXRlLnN0eWxlKCks
IFJvdyk7CiB9CiAKIGlubGluZSB2b2lkIEJ1aWxkZXJDdXN0b206OmFwcGx5SW5oZXJpdEdyaWRU
ZW1wbGF0ZVJvd3MoQnVpbGRlclN0YXRlJiBidWlsZGVyU3RhdGUpCkBAIC0xOTUwLDExICsxOTQy
LDExIEBAIGlubGluZSB2b2lkIEJ1aWxkZXJDdXN0b206OmFwcGx5SW5oZXJpdEdyaWRUZW1wbGF0
ZVJvd3MoQnVpbGRlclN0YXRlJiBidWlsZGVyU3RhCiAKIGlubGluZSB2b2lkIEJ1aWxkZXJDdXN0
b206OmFwcGx5VmFsdWVHcmlkVGVtcGxhdGVSb3dzKEJ1aWxkZXJTdGF0ZSYgYnVpbGRlclN0YXRl
LCBDU1NWYWx1ZSYgdmFsdWUpCiB7Ci0gICAgQnVpbGRlckNvbnZlcnRlcjo6VHJhY2tzRGF0YSB0
cmFja3NEYXRhOwotICAgIGlmICghQnVpbGRlckNvbnZlcnRlcjo6Y3JlYXRlR3JpZFRyYWNrTGlz
dCh2YWx1ZSwgdHJhY2tzRGF0YSwgYnVpbGRlclN0YXRlKSkKKyAgICBHcmlkVHJhY2tMaXN0IHRy
YWNrTGlzdDsKKyAgICBpZiAoIUJ1aWxkZXJDb252ZXJ0ZXI6OmNyZWF0ZUdyaWRUcmFja0xpc3Qo
dmFsdWUsIHRyYWNrTGlzdCwgYnVpbGRlclN0YXRlKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAg
U0VUX1RSQUNLU19EQVRBKHRyYWNrc0RhdGEsIGJ1aWxkZXJTdGF0ZS5zdHlsZSgpLCBSb3cpOwor
ICAgIFNFVF9UUkFDS1NfREFUQSh0cmFja0xpc3QsIGJ1aWxkZXJTdGF0ZS5zdHlsZSgpLCBSb3cp
OwogfQogCiB2b2lkIEJ1aWxkZXJDdXN0b206OmFwcGx5VmFsdWVBbHQoQnVpbGRlclN0YXRlJiBi
dWlsZGVyU3RhdGUsIENTU1ZhbHVlJiB2YWx1ZSkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9n
CmluZGV4IGY2ODRiNTQwZTliMzg4MGFjNTM0MzhiODhkYmMyMmU4MjRiNDFmMjAuLjM5YWU0MTE2
MDA5NmI1NTQ2MTNhOWNiNTJiZjQ2NDk0MmZiMDI1NGEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0No
YW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDIyLTAzLTE2ICBNYXR0IFdvb2Ryb3cgIDxtYXR0
d29vZHJvd0BhcHBsZS5jb20+CisKKyAgICAgICAgUHJlc2VydmUgcmVwZWF0KCkgbm90YXRpb24g
Zm9yIGdyaWQtdGVtcGxhdGVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMDIyNTkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvYW5pbWF0aW9uL2dy
aWQtdGVtcGxhdGUtY29sdW1ucy1pbnRlcnBvbGF0aW9uLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1ncmlkL2FuaW1hdGlvbi9ncmlkLXRlbXBsYXRl
LXJvd3MtaW50ZXJwb2xhdGlvbi1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9jc3MtZ3JpZC9wYXJzaW5nL2dyaWQtdGVtcGxhdGUtY29sdW1ucy1jb21wdXRl
ZC1ub2dyaWQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
Y3NzLWdyaWQvcGFyc2luZy9ncmlkLXRlbXBsYXRlLXJvd3MtY29tcHV0ZWQtbm9ncmlkLWV4cGVj
dGVkLnR4dDoKKworICAgICAgICBVcGRhdGUgZXhwZWN0YXRpb25zIGZvciBleGlzdGluZyBXUFQg
dGVzdHMsIG5vdyB0aGF0IHdlIGdldCB0aGUgY29ycmVjdCBjb21wdXRlZCB2YWx1ZSBmb3IKKyAg
ICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzL2NvbHVtbnMuCisKIDIwMjItMDMtMTQgIE1hdHQgV29v
ZHJvdyAgPG1hdHR3b29kcm93QGFwcGxlLmNvbT4KIAogICAgICAgICBGaXggc2VyaWFsaXphdGlv
biBvZiBncmlkLXRlbXBsYXRlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3JpZC9hbmltYXRpb24vZ3JpZC10ZW1wbGF0ZS1j
b2x1bW5zLWludGVycG9sYXRpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvYW5pbWF0aW9uL2dyaWQtdGVtcGxh
dGUtY29sdW1ucy1pbnRlcnBvbGF0aW9uLWV4cGVjdGVkLnR4dAppbmRleCAyMzU1YzJjOTY5OTY5
NDdkM2FiMTEwZGYzMjJlYjRkNzQ0MDU1ZGU1Li45ZmQ5MjNiMjlmNjY3YjA3NGZkMGJmM2ZhMzVh
NTM0NDM3MzgxMDcyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3JpZC9hbmltYXRpb24vZ3JpZC10ZW1wbGF0ZS1jb2x1bW5z
LWludGVycG9sYXRpb24tZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1ncmlkL2FuaW1hdGlvbi9ncmlkLXRlbXBsYXRl
LWNvbHVtbnMtaW50ZXJwb2xhdGlvbi1leHBlY3RlZC50eHQKQEAgLTMzOSwzMCArMzM5LDMwIEBA
IFBBU1MgV2ViIEFuaW1hdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLWNvbHVtbnM+IGZy
b20gW3JlcGVhdCgyLCAyZnIgMzBweCldCiBQQVNTIFdlYiBBbmltYXRpb25zOiBwcm9wZXJ0eSA8
Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zPiBmcm9tIFtyZXBlYXQoMiwgMmZyIDMwcHgpXSB0byBbcmVw
ZWF0KDQsIDQwcHgpXSBhdCAoMC42KSBzaG91bGQgYmUgW3JlcGVhdCg0LCA0MHB4KV0KIFBBU1Mg
V2ViIEFuaW1hdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLWNvbHVtbnM+IGZyb20gW3Jl
cGVhdCgyLCAyZnIgMzBweCldIHRvIFtyZXBlYXQoNCwgNDBweCldIGF0ICgxKSBzaG91bGQgYmUg
W3JlcGVhdCg0LCA0MHB4KV0KIFBBU1MgV2ViIEFuaW1hdGlvbnM6IHByb3BlcnR5IDxncmlkLXRl
bXBsYXRlLWNvbHVtbnM+IGZyb20gW3JlcGVhdCgyLCAyZnIgMzBweCldIHRvIFtyZXBlYXQoNCwg
NDBweCldIGF0ICgxLjUpIHNob3VsZCBiZSBbcmVwZWF0KDQsIDQwcHgpXQotRkFJTCBDU1MgVHJh
bnNpdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLWNvbHVtbnM+IGZyb20gWzFmciByZXBl
YXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4
KSAyZnJdIGF0ICgtMSkgc2hvdWxkIGJlIFswZnIgcmVwZWF0KDIsIDFmciBhdXRvIDIwcHgpIDBm
cl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjBmciAxZnIgYXV0byAyMHB4IDFmciBhdXRvIDIw
cHggMGZyICIgYnV0IGdvdCAiMmZyIDNmciAzMHB4IDQwcHggM2ZyIDMwcHggNDBweCAyZnIgIgot
RkFJTCBDU1MgVHJhbnNpdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLWNvbHVtbnM+IGZy
b20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAz
ZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgwKSBzaG91bGQgYmUgWzFmciByZXBlYXQoMiwgMmZyIGF1
dG8gMzBweCkgMWZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiMWZyIDJmciBhdXRvIDMwcHgg
MmZyIGF1dG8gMzBweCAxZnIgIiBidXQgZ290ICIyZnIgM2ZyIDMwcHggNDBweCAzZnIgMzBweCA0
MHB4IDJmciAiCi1GQUlMIENTUyBUcmFuc2l0aW9uczogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUt
Y29sdW1ucz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIg
cmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKDAuNCkgc2hvdWxkIGJlIFsxLjRmciBy
ZXBlYXQoMiwgMi40ZnIgYXV0byAzNHB4KSAxLjRmcl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQg
IjEuNGZyIDIuNGZyIGF1dG8gMzRweCAyLjRmciBhdXRvIDM0cHggMS40ZnIgIiBidXQgZ290ICIy
ZnIgM2ZyIDMwcHggNDBweCAzZnIgMzBweCA0MHB4IDJmciAiCi1GQUlMIENTUyBUcmFuc2l0aW9u
czogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtY29sdW1ucz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAy
ZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0g
YXQgKDAuNikgc2hvdWxkIGJlIFsxLjZmciByZXBlYXQoMiwgMi42ZnIgMzBweCAzNnB4KSAxLjZm
cl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjEuNmZyIDIuNmZyIDMwcHggMzZweCAyLjZmciAz
MHB4IDM2cHggMS42ZnIgIiBidXQgZ290ICIyZnIgM2ZyIDMwcHggNDBweCAzZnIgMzBweCA0MHB4
IDJmciAiCitGQUlMIENTUyBUcmFuc2l0aW9uczogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtY29s
dW1ucz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVw
ZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKC0xKSBzaG91bGQgYmUgWzBmciByZXBlYXQo
MiwgMWZyIGF1dG8gMjBweCkgMGZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiMGZyIHJlcGVh
dCAoIDIgLCAxZnIgYXV0byAyMHB4ICkgMGZyICIgYnV0IGdvdCAiMmZyIHJlcGVhdCAoIDIgLCAz
ZnIgMzBweCA0MHB4ICkgMmZyICIKK0ZBSUwgQ1NTIFRyYW5zaXRpb25zOiBwcm9wZXJ0eSA8Z3Jp
ZC10ZW1wbGF0ZS1jb2x1bW5zPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFm
cl0gdG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoMCkgc2hvdWxkIGJl
IFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0
ZWQgIjFmciByZXBlYXQgKCAyICwgMmZyIGF1dG8gMzBweCApIDFmciAiIGJ1dCBnb3QgIjJmciBy
ZXBlYXQgKCAyICwgM2ZyIDMwcHggNDBweCApIDJmciAiCitGQUlMIENTUyBUcmFuc2l0aW9uczog
cHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtY29sdW1ucz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIg
YXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQg
KDAuNCkgc2hvdWxkIGJlIFsxLjRmciByZXBlYXQoMiwgMi40ZnIgYXV0byAzNHB4KSAxLjRmcl0g
YXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjEuNGZyIHJlcGVhdCAoIDIgLCAyLjRmciBhdXRvIDM0
cHggKSAxLjRmciAiIGJ1dCBnb3QgIjJmciByZXBlYXQgKCAyICwgM2ZyIDMwcHggNDBweCApIDJm
ciAiCitGQUlMIENTUyBUcmFuc2l0aW9uczogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtY29sdW1u
cz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0
KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKDAuNikgc2hvdWxkIGJlIFsxLjZmciByZXBlYXQo
MiwgMi42ZnIgMzBweCAzNnB4KSAxLjZmcl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjEuNmZy
IHJlcGVhdCAoIDIgLCAyLjZmciAzMHB4IDM2cHggKSAxLjZmciAiIGJ1dCBnb3QgIjJmciByZXBl
YXQgKCAyICwgM2ZyIDMwcHggNDBweCApIDJmciAiCiBQQVNTIENTUyBUcmFuc2l0aW9uczogcHJv
cGVydHkgPGdyaWQtdGVtcGxhdGUtY29sdW1ucz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0
byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKDEp
IHNob3VsZCBiZSBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdCi1GQUlMIENTUyBU
cmFuc2l0aW9uczogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtY29sdW1ucz4gZnJvbSBbMWZyIHJl
cGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQw
cHgpIDJmcl0gYXQgKDIpIHNob3VsZCBiZSBbM2ZyIHJlcGVhdCgyLCA0ZnIgMzBweCA1MHB4KSAz
ZnJdIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIzZnIgNGZyIDMwcHggNTBweCA0ZnIgMzBweCA1
MHB4IDNmciAiIGJ1dCBnb3QgIjJmciAzZnIgMzBweCA0MHB4IDNmciAzMHB4IDQwcHggMmZyICIK
LUZBSUwgQ1NTIFRyYW5zaXRpb25zIHdpdGggdHJhbnNpdGlvbjogYWxsOiBwcm9wZXJ0eSA8Z3Jp
ZC10ZW1wbGF0ZS1jb2x1bW5zPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFm
cl0gdG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoLTEpIHNob3VsZCBi
ZSBbMGZyIHJlcGVhdCgyLCAxZnIgYXV0byAyMHB4KSAwZnJdIGFzc2VydF9lcXVhbHM6IGV4cGVj
dGVkICIwZnIgMWZyIGF1dG8gMjBweCAxZnIgYXV0byAyMHB4IDBmciAiIGJ1dCBnb3QgIjJmciAz
ZnIgMzBweCA0MHB4IDNmciAzMHB4IDQwcHggMmZyICIKLUZBSUwgQ1NTIFRyYW5zaXRpb25zIHdp
dGggdHJhbnNpdGlvbjogYWxsOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zPiBmcm9t
IFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2Zy
IDMwcHggNDBweCkgMmZyXSBhdCAoMCkgc2hvdWxkIGJlIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRv
IDMwcHgpIDFmcl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjFmciAyZnIgYXV0byAzMHB4IDJm
ciBhdXRvIDMwcHggMWZyICIgYnV0IGdvdCAiMmZyIDNmciAzMHB4IDQwcHggM2ZyIDMwcHggNDBw
eCAyZnIgIgotRkFJTCBDU1MgVHJhbnNpdGlvbnMgd2l0aCB0cmFuc2l0aW9uOiBhbGw6IHByb3Bl
cnR5IDxncmlkLXRlbXBsYXRlLWNvbHVtbnM+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8g
MzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgwLjQp
IHNob3VsZCBiZSBbMS40ZnIgcmVwZWF0KDIsIDIuNGZyIGF1dG8gMzRweCkgMS40ZnJdIGFzc2Vy
dF9lcXVhbHM6IGV4cGVjdGVkICIxLjRmciAyLjRmciBhdXRvIDM0cHggMi40ZnIgYXV0byAzNHB4
IDEuNGZyICIgYnV0IGdvdCAiMmZyIDNmciAzMHB4IDQwcHggM2ZyIDMwcHggNDBweCAyZnIgIgot
RkFJTCBDU1MgVHJhbnNpdGlvbnMgd2l0aCB0cmFuc2l0aW9uOiBhbGw6IHByb3BlcnR5IDxncmlk
LXRlbXBsYXRlLWNvbHVtbnM+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZy
XSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgwLjYpIHNob3VsZCBi
ZSBbMS42ZnIgcmVwZWF0KDIsIDIuNmZyIDMwcHggMzZweCkgMS42ZnJdIGFzc2VydF9lcXVhbHM6
IGV4cGVjdGVkICIxLjZmciAyLjZmciAzMHB4IDM2cHggMi42ZnIgMzBweCAzNnB4IDEuNmZyICIg
YnV0IGdvdCAiMmZyIDNmciAzMHB4IDQwcHggM2ZyIDMwcHggNDBweCAyZnIgIgorRkFJTCBDU1Mg
VHJhbnNpdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLWNvbHVtbnM+IGZyb20gWzFmciBy
ZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0
MHB4KSAyZnJdIGF0ICgyKSBzaG91bGQgYmUgWzNmciByZXBlYXQoMiwgNGZyIDMwcHggNTBweCkg
M2ZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiM2ZyIHJlcGVhdCAoIDIgLCA0ZnIgMzBweCA1
MHB4ICkgM2ZyICIgYnV0IGdvdCAiMmZyIHJlcGVhdCAoIDIgLCAzZnIgMzBweCA0MHB4ICkgMmZy
ICIKK0ZBSUwgQ1NTIFRyYW5zaXRpb25zIHdpdGggdHJhbnNpdGlvbjogYWxsOiBwcm9wZXJ0eSA8
Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgp
IDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoLTEpIHNob3Vs
ZCBiZSBbMGZyIHJlcGVhdCgyLCAxZnIgYXV0byAyMHB4KSAwZnJdIGFzc2VydF9lcXVhbHM6IGV4
cGVjdGVkICIwZnIgcmVwZWF0ICggMiAsIDFmciBhdXRvIDIwcHggKSAwZnIgIiBidXQgZ290ICIy
ZnIgcmVwZWF0ICggMiAsIDNmciAzMHB4IDQwcHggKSAyZnIgIgorRkFJTCBDU1MgVHJhbnNpdGlv
bnMgd2l0aCB0cmFuc2l0aW9uOiBhbGw6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLWNvbHVtbnM+
IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgy
LCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgwKSBzaG91bGQgYmUgWzFmciByZXBlYXQoMiwgMmZy
IGF1dG8gMzBweCkgMWZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiMWZyIHJlcGVhdCAoIDIg
LCAyZnIgYXV0byAzMHB4ICkgMWZyICIgYnV0IGdvdCAiMmZyIHJlcGVhdCAoIDIgLCAzZnIgMzBw
eCA0MHB4ICkgMmZyICIKK0ZBSUwgQ1NTIFRyYW5zaXRpb25zIHdpdGggdHJhbnNpdGlvbjogYWxs
OiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJm
ciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBh
dCAoMC40KSBzaG91bGQgYmUgWzEuNGZyIHJlcGVhdCgyLCAyLjRmciBhdXRvIDM0cHgpIDEuNGZy
XSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiMS40ZnIgcmVwZWF0ICggMiAsIDIuNGZyIGF1dG8g
MzRweCApIDEuNGZyICIgYnV0IGdvdCAiMmZyIHJlcGVhdCAoIDIgLCAzZnIgMzBweCA0MHB4ICkg
MmZyICIKK0ZBSUwgQ1NTIFRyYW5zaXRpb25zIHdpdGggdHJhbnNpdGlvbjogYWxsOiBwcm9wZXJ0
eSA8Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMw
cHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoMC42KSBz
aG91bGQgYmUgWzEuNmZyIHJlcGVhdCgyLCAyLjZmciAzMHB4IDM2cHgpIDEuNmZyXSBhc3NlcnRf
ZXF1YWxzOiBleHBlY3RlZCAiMS42ZnIgcmVwZWF0ICggMiAsIDIuNmZyIDMwcHggMzZweCApIDEu
NmZyICIgYnV0IGdvdCAiMmZyIHJlcGVhdCAoIDIgLCAzZnIgMzBweCA0MHB4ICkgMmZyICIKIFBB
U1MgQ1NTIFRyYW5zaXRpb25zIHdpdGggdHJhbnNpdGlvbjogYWxsOiBwcm9wZXJ0eSA8Z3JpZC10
ZW1wbGF0ZS1jb2x1bW5zPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0g
dG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoMSkgc2hvdWxkIGJlIFsy
ZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0KLUZBSUwgQ1NTIFRyYW5zaXRpb25zIHdp
dGggdHJhbnNpdGlvbjogYWxsOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zPiBmcm9t
IFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2Zy
IDMwcHggNDBweCkgMmZyXSBhdCAoMikgc2hvdWxkIGJlIFszZnIgcmVwZWF0KDIsIDRmciAzMHB4
IDUwcHgpIDNmcl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjNmciA0ZnIgMzBweCA1MHB4IDRm
ciAzMHB4IDUwcHggM2ZyICIgYnV0IGdvdCAiMmZyIDNmciAzMHB4IDQwcHggM2ZyIDMwcHggNDBw
eCAyZnIgIgotRkFJTCBDU1MgQW5pbWF0aW9uczogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtY29s
dW1ucz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVw
ZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKC0xKSBzaG91bGQgYmUgWzBmciByZXBlYXQo
MiwgMWZyIGF1dG8gMjBweCkgMGZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiMGZyIDFmciBh
dXRvIDIwcHggMWZyIGF1dG8gMjBweCAwZnIgIiBidXQgZ290ICIxZnIgMmZyIGF1dG8gMzBweCAy
ZnIgYXV0byAzMHB4IDFmciAiCitGQUlMIENTUyBUcmFuc2l0aW9ucyB3aXRoIHRyYW5zaXRpb246
IGFsbDogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtY29sdW1ucz4gZnJvbSBbMWZyIHJlcGVhdCgy
LCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJm
cl0gYXQgKDIpIHNob3VsZCBiZSBbM2ZyIHJlcGVhdCgyLCA0ZnIgMzBweCA1MHB4KSAzZnJdIGFz
c2VydF9lcXVhbHM6IGV4cGVjdGVkICIzZnIgcmVwZWF0ICggMiAsIDRmciAzMHB4IDUwcHggKSAz
ZnIgIiBidXQgZ290ICIyZnIgcmVwZWF0ICggMiAsIDNmciAzMHB4IDQwcHggKSAyZnIgIgorRkFJ
TCBDU1MgQW5pbWF0aW9uczogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtY29sdW1ucz4gZnJvbSBb
MWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAz
MHB4IDQwcHgpIDJmcl0gYXQgKC0xKSBzaG91bGQgYmUgWzBmciByZXBlYXQoMiwgMWZyIGF1dG8g
MjBweCkgMGZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiMGZyIHJlcGVhdCAoIDIgLCAxZnIg
YXV0byAyMHB4ICkgMGZyICIgYnV0IGdvdCAiMWZyIHJlcGVhdCAoIDIgLCAyZnIgYXV0byAzMHB4
ICkgMWZyICIKIFBBU1MgQ1NTIEFuaW1hdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLWNv
bHVtbnM+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJl
cGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgwKSBzaG91bGQgYmUgWzFmciByZXBlYXQo
MiwgMmZyIGF1dG8gMzBweCkgMWZyXQotRkFJTCBDU1MgQW5pbWF0aW9uczogcHJvcGVydHkgPGdy
aWQtdGVtcGxhdGUtY29sdW1ucz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAx
ZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKDAuNCkgc2hvdWxk
IGJlIFsxLjRmciByZXBlYXQoMiwgMi40ZnIgYXV0byAzNHB4KSAxLjRmcl0gYXNzZXJ0X2VxdWFs
czogZXhwZWN0ZWQgIjEuNGZyIDIuNGZyIGF1dG8gMzRweCAyLjRmciBhdXRvIDM0cHggMS40ZnIg
IiBidXQgZ290ICIxZnIgMmZyIGF1dG8gMzBweCAyZnIgYXV0byAzMHB4IDFmciAiCi1GQUlMIENT
UyBBbmltYXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zPiBmcm9tIFsxZnIg
cmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHgg
NDBweCkgMmZyXSBhdCAoMC42KSBzaG91bGQgYmUgWzEuNmZyIHJlcGVhdCgyLCAyLjZmciAzMHB4
IDM2cHgpIDEuNmZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiMS42ZnIgMi42ZnIgMzBweCAz
NnB4IDIuNmZyIDMwcHggMzZweCAxLjZmciAiIGJ1dCBnb3QgIjJmciAzZnIgMzBweCA0MHB4IDNm
ciAzMHB4IDQwcHggMmZyICIKK0ZBSUwgQ1NTIEFuaW1hdGlvbnM6IHByb3BlcnR5IDxncmlkLXRl
bXBsYXRlLWNvbHVtbnM+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0
byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgwLjQpIHNob3VsZCBiZSBb
MS40ZnIgcmVwZWF0KDIsIDIuNGZyIGF1dG8gMzRweCkgMS40ZnJdIGFzc2VydF9lcXVhbHM6IGV4
cGVjdGVkICIxLjRmciByZXBlYXQgKCAyICwgMi40ZnIgYXV0byAzNHB4ICkgMS40ZnIgIiBidXQg
Z290ICIxZnIgcmVwZWF0ICggMiAsIDJmciBhdXRvIDMwcHggKSAxZnIgIgorRkFJTCBDU1MgQW5p
bWF0aW9uczogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtY29sdW1ucz4gZnJvbSBbMWZyIHJlcGVh
dCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgp
IDJmcl0gYXQgKDAuNikgc2hvdWxkIGJlIFsxLjZmciByZXBlYXQoMiwgMi42ZnIgMzBweCAzNnB4
KSAxLjZmcl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjEuNmZyIHJlcGVhdCAoIDIgLCAyLjZm
ciAzMHB4IDM2cHggKSAxLjZmciAiIGJ1dCBnb3QgIjJmciByZXBlYXQgKCAyICwgM2ZyIDMwcHgg
NDBweCApIDJmciAiCiBQQVNTIENTUyBBbmltYXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0
ZS1jb2x1bW5zPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJm
ciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoMSkgc2hvdWxkIGJlIFsyZnIgcmVw
ZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0KLUZBSUwgQ1NTIEFuaW1hdGlvbnM6IHByb3BlcnR5
IDxncmlkLXRlbXBsYXRlLWNvbHVtbnM+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBw
eCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgyKSBzaG91
bGQgYmUgWzNmciByZXBlYXQoMiwgNGZyIDMwcHggNTBweCkgM2ZyXSBhc3NlcnRfZXF1YWxzOiBl
eHBlY3RlZCAiM2ZyIDRmciAzMHB4IDUwcHggNGZyIDMwcHggNTBweCAzZnIgIiBidXQgZ290ICIy
ZnIgM2ZyIDMwcHggNDBweCAzZnIgMzBweCA0MHB4IDJmciAiCi1GQUlMIFdlYiBBbmltYXRpb25z
OiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJm
ciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBh
dCAoLTEpIHNob3VsZCBiZSBbMGZyIHJlcGVhdCgyLCAxZnIgYXV0byAyMHB4KSAwZnJdIGFzc2Vy
dF9lcXVhbHM6IGV4cGVjdGVkICIwZnIgMWZyIGF1dG8gMjBweCAxZnIgYXV0byAyMHB4IDBmciAi
IGJ1dCBnb3QgIjFmciAyZnIgYXV0byAzMHB4IDJmciBhdXRvIDMwcHggMWZyICIKK0ZBSUwgQ1NT
IEFuaW1hdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLWNvbHVtbnM+IGZyb20gWzFmciBy
ZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0
MHB4KSAyZnJdIGF0ICgyKSBzaG91bGQgYmUgWzNmciByZXBlYXQoMiwgNGZyIDMwcHggNTBweCkg
M2ZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiM2ZyIHJlcGVhdCAoIDIgLCA0ZnIgMzBweCA1
MHB4ICkgM2ZyICIgYnV0IGdvdCAiMmZyIHJlcGVhdCAoIDIgLCAzZnIgMzBweCA0MHB4ICkgMmZy
ICIKK0ZBSUwgV2ViIEFuaW1hdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLWNvbHVtbnM+
IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgy
LCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgtMSkgc2hvdWxkIGJlIFswZnIgcmVwZWF0KDIsIDFm
ciBhdXRvIDIwcHgpIDBmcl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjBmciByZXBlYXQgKCAy
ICwgMWZyIGF1dG8gMjBweCApIDBmciAiIGJ1dCBnb3QgIjFmciByZXBlYXQgKCAyICwgMmZyIGF1
dG8gMzBweCApIDFmciAiCiBQQVNTIFdlYiBBbmltYXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1w
bGF0ZS1jb2x1bW5zPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8g
WzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoMCkgc2hvdWxkIGJlIFsxZnIg
cmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0KLUZBSUwgV2ViIEFuaW1hdGlvbnM6IHByb3Bl
cnR5IDxncmlkLXRlbXBsYXRlLWNvbHVtbnM+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8g
MzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgwLjQp
IHNob3VsZCBiZSBbMS40ZnIgcmVwZWF0KDIsIDIuNGZyIGF1dG8gMzRweCkgMS40ZnJdIGFzc2Vy
dF9lcXVhbHM6IGV4cGVjdGVkICIxLjRmciAyLjRmciBhdXRvIDM0cHggMi40ZnIgYXV0byAzNHB4
IDEuNGZyICIgYnV0IGdvdCAiMWZyIDJmciBhdXRvIDMwcHggMmZyIGF1dG8gMzBweCAxZnIgIgot
RkFJTCBXZWIgQW5pbWF0aW9uczogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtY29sdW1ucz4gZnJv
bSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNm
ciAzMHB4IDQwcHgpIDJmcl0gYXQgKDAuNikgc2hvdWxkIGJlIFsxLjZmciByZXBlYXQoMiwgMi42
ZnIgMzBweCAzNnB4KSAxLjZmcl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjEuNmZyIDIuNmZy
IDMwcHggMzZweCAyLjZmciAzMHB4IDM2cHggMS42ZnIgIiBidXQgZ290ICIyZnIgM2ZyIDMwcHgg
NDBweCAzZnIgMzBweCA0MHB4IDJmciAiCitGQUlMIFdlYiBBbmltYXRpb25zOiBwcm9wZXJ0eSA8
Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgp
IDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoMC40KSBzaG91
bGQgYmUgWzEuNGZyIHJlcGVhdCgyLCAyLjRmciBhdXRvIDM0cHgpIDEuNGZyXSBhc3NlcnRfZXF1
YWxzOiBleHBlY3RlZCAiMS40ZnIgcmVwZWF0ICggMiAsIDIuNGZyIGF1dG8gMzRweCApIDEuNGZy
ICIgYnV0IGdvdCAiMWZyIHJlcGVhdCAoIDIgLCAyZnIgYXV0byAzMHB4ICkgMWZyICIKK0ZBSUwg
V2ViIEFuaW1hdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLWNvbHVtbnM+IGZyb20gWzFm
ciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBw
eCA0MHB4KSAyZnJdIGF0ICgwLjYpIHNob3VsZCBiZSBbMS42ZnIgcmVwZWF0KDIsIDIuNmZyIDMw
cHggMzZweCkgMS42ZnJdIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIxLjZmciByZXBlYXQgKCAy
ICwgMi42ZnIgMzBweCAzNnB4ICkgMS42ZnIgIiBidXQgZ290ICIyZnIgcmVwZWF0ICggMiAsIDNm
ciAzMHB4IDQwcHggKSAyZnIgIgogUEFTUyBXZWIgQW5pbWF0aW9uczogcHJvcGVydHkgPGdyaWQt
dGVtcGxhdGUtY29sdW1ucz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJd
IHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKDEpIHNob3VsZCBiZSBb
MmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdCi1GQUlMIFdlYiBBbmltYXRpb25zOiBw
cm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBh
dXRvIDMwcHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAo
Mikgc2hvdWxkIGJlIFszZnIgcmVwZWF0KDIsIDRmciAzMHB4IDUwcHgpIDNmcl0gYXNzZXJ0X2Vx
dWFsczogZXhwZWN0ZWQgIjNmciA0ZnIgMzBweCA1MHB4IDRmciAzMHB4IDUwcHggM2ZyICIgYnV0
IGdvdCAiMmZyIDNmciAzMHB4IDQwcHggM2ZyIDMwcHggNDBweCAyZnIgIgorRkFJTCBXZWIgQW5p
bWF0aW9uczogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtY29sdW1ucz4gZnJvbSBbMWZyIHJlcGVh
dCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgp
IDJmcl0gYXQgKDIpIHNob3VsZCBiZSBbM2ZyIHJlcGVhdCgyLCA0ZnIgMzBweCA1MHB4KSAzZnJd
IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIzZnIgcmVwZWF0ICggMiAsIDRmciAzMHB4IDUwcHgg
KSAzZnIgIiBidXQgZ290ICIyZnIgcmVwZWF0ICggMiAsIDNmciAzMHB4IDQwcHggKSAyZnIgIgog
UEFTUyBDU1MgVHJhbnNpdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLWNvbHVtbnM+IGZy
b20gWzEwcHggcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDI1cHgsIDFmcikpIDEwcHhdIHRvIFsy
MHB4IDIwcHggcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDMwcHgsIDFmcikpXSBhdCAoLTAuMykg
c2hvdWxkIGJlIFsyMHB4IDIwcHggcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDMwcHgsIDFmcikp
XQogUEFTUyBDU1MgVHJhbnNpdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLWNvbHVtbnM+
IGZyb20gWzEwcHggcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDI1cHgsIDFmcikpIDEwcHhdIHRv
IFsyMHB4IDIwcHggcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDMwcHgsIDFmcikpXSBhdCAoMCkg
c2hvdWxkIGJlIFsyMHB4IDIwcHggcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDMwcHgsIDFmcikp
XQogUEFTUyBDU1MgVHJhbnNpdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLWNvbHVtbnM+
IGZyb20gWzEwcHggcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDI1cHgsIDFmcikpIDEwcHhdIHRv
IFsyMHB4IDIwcHggcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDMwcHgsIDFmcikpXSBhdCAoMC4z
KSBzaG91bGQgYmUgWzIwcHggMjBweCByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgoMzBweCwgMWZy
KSldCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3MtZ3JpZC9hbmltYXRpb24vZ3JpZC10ZW1wbGF0ZS1yb3dzLWludGVycG9sYXRp
b24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLWdyaWQvYW5pbWF0aW9uL2dyaWQtdGVtcGxhdGUtcm93cy1pbnRlcnBvbGF0
aW9uLWV4cGVjdGVkLnR4dAppbmRleCA0ZmE5MDIzYWM4NDIwMjBlZmZhNWE2ZTY2YTc5Mzg1YWE1
NTY3NDNlLi5hMjU2ZGZhZjAwMjFkNzRkY2Q0M2I4MzA5NmVjMjIzYmZhNDNlMzZlIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3Mt
Z3JpZC9hbmltYXRpb24vZ3JpZC10ZW1wbGF0ZS1yb3dzLWludGVycG9sYXRpb24tZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzcy1ncmlkL2FuaW1hdGlvbi9ncmlkLXRlbXBsYXRlLXJvd3MtaW50ZXJwb2xhdGlvbi1leHBl
Y3RlZC50eHQKQEAgLTMzOSwzMCArMzM5LDMwIEBAIFBBU1MgV2ViIEFuaW1hdGlvbnM6IHByb3Bl
cnR5IDxncmlkLXRlbXBsYXRlLXJvd3M+IGZyb20gW3JlcGVhdCgyLCAyZnIgMzBweCldIHRvCiBQ
QVNTIFdlYiBBbmltYXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1yb3dzPiBmcm9tIFty
ZXBlYXQoMiwgMmZyIDMwcHgpXSB0byBbcmVwZWF0KDQsIDQwcHgpXSBhdCAoMC42KSBzaG91bGQg
YmUgW3JlcGVhdCg0LCA0MHB4KV0KIFBBU1MgV2ViIEFuaW1hdGlvbnM6IHByb3BlcnR5IDxncmlk
LXRlbXBsYXRlLXJvd3M+IGZyb20gW3JlcGVhdCgyLCAyZnIgMzBweCldIHRvIFtyZXBlYXQoNCwg
NDBweCldIGF0ICgxKSBzaG91bGQgYmUgW3JlcGVhdCg0LCA0MHB4KV0KIFBBU1MgV2ViIEFuaW1h
dGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLXJvd3M+IGZyb20gW3JlcGVhdCgyLCAyZnIg
MzBweCldIHRvIFtyZXBlYXQoNCwgNDBweCldIGF0ICgxLjUpIHNob3VsZCBiZSBbcmVwZWF0KDQs
IDQwcHgpXQotRkFJTCBDU1MgVHJhbnNpdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLXJv
d3M+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVh
dCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgtMSkgc2hvdWxkIGJlIFswZnIgcmVwZWF0KDIs
IDFmciBhdXRvIDIwcHgpIDBmcl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjBmciAxZnIgYXV0
byAyMHB4IDFmciBhdXRvIDIwcHggMGZyICIgYnV0IGdvdCAiMmZyIDNmciAzMHB4IDQwcHggM2Zy
IDMwcHggNDBweCAyZnIgIgotRkFJTCBDU1MgVHJhbnNpdGlvbnM6IHByb3BlcnR5IDxncmlkLXRl
bXBsYXRlLXJvd3M+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBb
MmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgwKSBzaG91bGQgYmUgWzFmciBy
ZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiMWZy
IDJmciBhdXRvIDMwcHggMmZyIGF1dG8gMzBweCAxZnIgIiBidXQgZ290ICIyZnIgM2ZyIDMwcHgg
NDBweCAzZnIgMzBweCA0MHB4IDJmciAiCi1GQUlMIENTUyBUcmFuc2l0aW9uczogcHJvcGVydHkg
PGdyaWQtdGVtcGxhdGUtcm93cz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAx
ZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKDAuNCkgc2hvdWxk
IGJlIFsxLjRmciByZXBlYXQoMiwgMi40ZnIgYXV0byAzNHB4KSAxLjRmcl0gYXNzZXJ0X2VxdWFs
czogZXhwZWN0ZWQgIjEuNGZyIDIuNGZyIGF1dG8gMzRweCAyLjRmciBhdXRvIDM0cHggMS40ZnIg
IiBidXQgZ290ICIyZnIgM2ZyIDMwcHggNDBweCAzZnIgMzBweCA0MHB4IDJmciAiCi1GQUlMIENT
UyBUcmFuc2l0aW9uczogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtcm93cz4gZnJvbSBbMWZyIHJl
cGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQw
cHgpIDJmcl0gYXQgKDAuNikgc2hvdWxkIGJlIFsxLjZmciByZXBlYXQoMiwgMi42ZnIgMzBweCAz
NnB4KSAxLjZmcl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjEuNmZyIDIuNmZyIDMwcHggMzZw
eCAyLjZmciAzMHB4IDM2cHggMS42ZnIgIiBidXQgZ290ICIyZnIgM2ZyIDMwcHggNDBweCAzZnIg
MzBweCA0MHB4IDJmciAiCitGQUlMIENTUyBUcmFuc2l0aW9uczogcHJvcGVydHkgPGdyaWQtdGVt
cGxhdGUtcm93cz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsy
ZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKC0xKSBzaG91bGQgYmUgWzBmciBy
ZXBlYXQoMiwgMWZyIGF1dG8gMjBweCkgMGZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiMGZy
IHJlcGVhdCAoIDIgLCAxZnIgYXV0byAyMHB4ICkgMGZyICIgYnV0IGdvdCAiMmZyIHJlcGVhdCAo
IDIgLCAzZnIgMzBweCA0MHB4ICkgMmZyICIKK0ZBSUwgQ1NTIFRyYW5zaXRpb25zOiBwcm9wZXJ0
eSA8Z3JpZC10ZW1wbGF0ZS1yb3dzPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgp
IDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoMCkgc2hvdWxk
IGJlIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gYXNzZXJ0X2VxdWFsczogZXhw
ZWN0ZWQgIjFmciByZXBlYXQgKCAyICwgMmZyIGF1dG8gMzBweCApIDFmciAiIGJ1dCBnb3QgIjJm
ciByZXBlYXQgKCAyICwgM2ZyIDMwcHggNDBweCApIDJmciAiCitGQUlMIENTUyBUcmFuc2l0aW9u
czogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtcm93cz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIg
YXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQg
KDAuNCkgc2hvdWxkIGJlIFsxLjRmciByZXBlYXQoMiwgMi40ZnIgYXV0byAzNHB4KSAxLjRmcl0g
YXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjEuNGZyIHJlcGVhdCAoIDIgLCAyLjRmciBhdXRvIDM0
cHggKSAxLjRmciAiIGJ1dCBnb3QgIjJmciByZXBlYXQgKCAyICwgM2ZyIDMwcHggNDBweCApIDJm
ciAiCitGQUlMIENTUyBUcmFuc2l0aW9uczogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtcm93cz4g
ZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIs
IDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKDAuNikgc2hvdWxkIGJlIFsxLjZmciByZXBlYXQoMiwg
Mi42ZnIgMzBweCAzNnB4KSAxLjZmcl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjEuNmZyIHJl
cGVhdCAoIDIgLCAyLjZmciAzMHB4IDM2cHggKSAxLjZmciAiIGJ1dCBnb3QgIjJmciByZXBlYXQg
KCAyICwgM2ZyIDMwcHggNDBweCApIDJmciAiCiBQQVNTIENTUyBUcmFuc2l0aW9uczogcHJvcGVy
dHkgPGdyaWQtdGVtcGxhdGUtcm93cz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4
KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKDEpIHNob3Vs
ZCBiZSBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdCi1GQUlMIENTUyBUcmFuc2l0
aW9uczogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtcm93cz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAy
ZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0g
YXQgKDIpIHNob3VsZCBiZSBbM2ZyIHJlcGVhdCgyLCA0ZnIgMzBweCA1MHB4KSAzZnJdIGFzc2Vy
dF9lcXVhbHM6IGV4cGVjdGVkICIzZnIgNGZyIDMwcHggNTBweCA0ZnIgMzBweCA1MHB4IDNmciAi
IGJ1dCBnb3QgIjJmciAzZnIgMzBweCA0MHB4IDNmciAzMHB4IDQwcHggMmZyICIKLUZBSUwgQ1NT
IFRyYW5zaXRpb25zIHdpdGggdHJhbnNpdGlvbjogYWxsOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0
ZS1yb3dzPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciBy
ZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoLTEpIHNob3VsZCBiZSBbMGZyIHJlcGVh
dCgyLCAxZnIgYXV0byAyMHB4KSAwZnJdIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIwZnIgMWZy
IGF1dG8gMjBweCAxZnIgYXV0byAyMHB4IDBmciAiIGJ1dCBnb3QgIjJmciAzZnIgMzBweCA0MHB4
IDNmciAzMHB4IDQwcHggMmZyICIKLUZBSUwgQ1NTIFRyYW5zaXRpb25zIHdpdGggdHJhbnNpdGlv
bjogYWxsOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1yb3dzPiBmcm9tIFsxZnIgcmVwZWF0KDIs
IDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZy
XSBhdCAoMCkgc2hvdWxkIGJlIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gYXNz
ZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjFmciAyZnIgYXV0byAzMHB4IDJmciBhdXRvIDMwcHggMWZy
ICIgYnV0IGdvdCAiMmZyIDNmciAzMHB4IDQwcHggM2ZyIDMwcHggNDBweCAyZnIgIgotRkFJTCBD
U1MgVHJhbnNpdGlvbnMgd2l0aCB0cmFuc2l0aW9uOiBhbGw6IHByb3BlcnR5IDxncmlkLXRlbXBs
YXRlLXJvd3M+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZy
IHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgwLjQpIHNob3VsZCBiZSBbMS40ZnIg
cmVwZWF0KDIsIDIuNGZyIGF1dG8gMzRweCkgMS40ZnJdIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVk
ICIxLjRmciAyLjRmciBhdXRvIDM0cHggMi40ZnIgYXV0byAzNHB4IDEuNGZyICIgYnV0IGdvdCAi
MmZyIDNmciAzMHB4IDQwcHggM2ZyIDMwcHggNDBweCAyZnIgIgotRkFJTCBDU1MgVHJhbnNpdGlv
bnMgd2l0aCB0cmFuc2l0aW9uOiBhbGw6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLXJvd3M+IGZy
b20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAz
ZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgwLjYpIHNob3VsZCBiZSBbMS42ZnIgcmVwZWF0KDIsIDIu
NmZyIDMwcHggMzZweCkgMS42ZnJdIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIxLjZmciAyLjZm
ciAzMHB4IDM2cHggMi42ZnIgMzBweCAzNnB4IDEuNmZyICIgYnV0IGdvdCAiMmZyIDNmciAzMHB4
IDQwcHggM2ZyIDMwcHggNDBweCAyZnIgIgorRkFJTCBDU1MgVHJhbnNpdGlvbnM6IHByb3BlcnR5
IDxncmlkLXRlbXBsYXRlLXJvd3M+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkg
MWZyXSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgyKSBzaG91bGQg
YmUgWzNmciByZXBlYXQoMiwgNGZyIDMwcHggNTBweCkgM2ZyXSBhc3NlcnRfZXF1YWxzOiBleHBl
Y3RlZCAiM2ZyIHJlcGVhdCAoIDIgLCA0ZnIgMzBweCA1MHB4ICkgM2ZyICIgYnV0IGdvdCAiMmZy
IHJlcGVhdCAoIDIgLCAzZnIgMzBweCA0MHB4ICkgMmZyICIKK0ZBSUwgQ1NTIFRyYW5zaXRpb25z
IHdpdGggdHJhbnNpdGlvbjogYWxsOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1yb3dzPiBmcm9t
IFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2Zy
IDMwcHggNDBweCkgMmZyXSBhdCAoLTEpIHNob3VsZCBiZSBbMGZyIHJlcGVhdCgyLCAxZnIgYXV0
byAyMHB4KSAwZnJdIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIwZnIgcmVwZWF0ICggMiAsIDFm
ciBhdXRvIDIwcHggKSAwZnIgIiBidXQgZ290ICIyZnIgcmVwZWF0ICggMiAsIDNmciAzMHB4IDQw
cHggKSAyZnIgIgorRkFJTCBDU1MgVHJhbnNpdGlvbnMgd2l0aCB0cmFuc2l0aW9uOiBhbGw6IHBy
b3BlcnR5IDxncmlkLXRlbXBsYXRlLXJvd3M+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8g
MzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgwKSBz
aG91bGQgYmUgWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSBhc3NlcnRfZXF1YWxz
OiBleHBlY3RlZCAiMWZyIHJlcGVhdCAoIDIgLCAyZnIgYXV0byAzMHB4ICkgMWZyICIgYnV0IGdv
dCAiMmZyIHJlcGVhdCAoIDIgLCAzZnIgMzBweCA0MHB4ICkgMmZyICIKK0ZBSUwgQ1NTIFRyYW5z
aXRpb25zIHdpdGggdHJhbnNpdGlvbjogYWxsOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1yb3dz
PiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciByZXBlYXQo
MiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoMC40KSBzaG91bGQgYmUgWzEuNGZyIHJlcGVhdCgy
LCAyLjRmciBhdXRvIDM0cHgpIDEuNGZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiMS40ZnIg
cmVwZWF0ICggMiAsIDIuNGZyIGF1dG8gMzRweCApIDEuNGZyICIgYnV0IGdvdCAiMmZyIHJlcGVh
dCAoIDIgLCAzZnIgMzBweCA0MHB4ICkgMmZyICIKK0ZBSUwgQ1NTIFRyYW5zaXRpb25zIHdpdGgg
dHJhbnNpdGlvbjogYWxsOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1yb3dzPiBmcm9tIFsxZnIg
cmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHgg
NDBweCkgMmZyXSBhdCAoMC42KSBzaG91bGQgYmUgWzEuNmZyIHJlcGVhdCgyLCAyLjZmciAzMHB4
IDM2cHgpIDEuNmZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiMS42ZnIgcmVwZWF0ICggMiAs
IDIuNmZyIDMwcHggMzZweCApIDEuNmZyICIgYnV0IGdvdCAiMmZyIHJlcGVhdCAoIDIgLCAzZnIg
MzBweCA0MHB4ICkgMmZyICIKIFBBU1MgQ1NTIFRyYW5zaXRpb25zIHdpdGggdHJhbnNpdGlvbjog
YWxsOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1yb3dzPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJm
ciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBh
dCAoMSkgc2hvdWxkIGJlIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0KLUZBSUwg
Q1NTIFRyYW5zaXRpb25zIHdpdGggdHJhbnNpdGlvbjogYWxsOiBwcm9wZXJ0eSA8Z3JpZC10ZW1w
bGF0ZS1yb3dzPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJm
ciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoMikgc2hvdWxkIGJlIFszZnIgcmVw
ZWF0KDIsIDRmciAzMHB4IDUwcHgpIDNmcl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjNmciA0
ZnIgMzBweCA1MHB4IDRmciAzMHB4IDUwcHggM2ZyICIgYnV0IGdvdCAiMmZyIDNmciAzMHB4IDQw
cHggM2ZyIDMwcHggNDBweCAyZnIgIgotRkFJTCBDU1MgQW5pbWF0aW9uczogcHJvcGVydHkgPGdy
aWQtdGVtcGxhdGUtcm93cz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJd
IHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKC0xKSBzaG91bGQgYmUg
WzBmciByZXBlYXQoMiwgMWZyIGF1dG8gMjBweCkgMGZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3Rl
ZCAiMGZyIDFmciBhdXRvIDIwcHggMWZyIGF1dG8gMjBweCAwZnIgIiBidXQgZ290ICIxZnIgMmZy
IGF1dG8gMzBweCAyZnIgYXV0byAzMHB4IDFmciAiCitGQUlMIENTUyBUcmFuc2l0aW9ucyB3aXRo
IHRyYW5zaXRpb246IGFsbDogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtcm93cz4gZnJvbSBbMWZy
IHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4
IDQwcHgpIDJmcl0gYXQgKDIpIHNob3VsZCBiZSBbM2ZyIHJlcGVhdCgyLCA0ZnIgMzBweCA1MHB4
KSAzZnJdIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIzZnIgcmVwZWF0ICggMiAsIDRmciAzMHB4
IDUwcHggKSAzZnIgIiBidXQgZ290ICIyZnIgcmVwZWF0ICggMiAsIDNmciAzMHB4IDQwcHggKSAy
ZnIgIgorRkFJTCBDU1MgQW5pbWF0aW9uczogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtcm93cz4g
ZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIs
IDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKC0xKSBzaG91bGQgYmUgWzBmciByZXBlYXQoMiwgMWZy
IGF1dG8gMjBweCkgMGZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiMGZyIHJlcGVhdCAoIDIg
LCAxZnIgYXV0byAyMHB4ICkgMGZyICIgYnV0IGdvdCAiMWZyIHJlcGVhdCAoIDIgLCAyZnIgYXV0
byAzMHB4ICkgMWZyICIKIFBBU1MgQ1NTIEFuaW1hdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBs
YXRlLXJvd3M+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZy
IHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgwKSBzaG91bGQgYmUgWzFmciByZXBl
YXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXQotRkFJTCBDU1MgQW5pbWF0aW9uczogcHJvcGVydHkg
PGdyaWQtdGVtcGxhdGUtcm93cz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAx
ZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKDAuNCkgc2hvdWxk
IGJlIFsxLjRmciByZXBlYXQoMiwgMi40ZnIgYXV0byAzNHB4KSAxLjRmcl0gYXNzZXJ0X2VxdWFs
czogZXhwZWN0ZWQgIjEuNGZyIDIuNGZyIGF1dG8gMzRweCAyLjRmciBhdXRvIDM0cHggMS40ZnIg
IiBidXQgZ290ICIxZnIgMmZyIGF1dG8gMzBweCAyZnIgYXV0byAzMHB4IDFmciAiCi1GQUlMIENT
UyBBbmltYXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1yb3dzPiBmcm9tIFsxZnIgcmVw
ZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBw
eCkgMmZyXSBhdCAoMC42KSBzaG91bGQgYmUgWzEuNmZyIHJlcGVhdCgyLCAyLjZmciAzMHB4IDM2
cHgpIDEuNmZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiMS42ZnIgMi42ZnIgMzBweCAzNnB4
IDIuNmZyIDMwcHggMzZweCAxLjZmciAiIGJ1dCBnb3QgIjJmciAzZnIgMzBweCA0MHB4IDNmciAz
MHB4IDQwcHggMmZyICIKK0ZBSUwgQ1NTIEFuaW1hdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBs
YXRlLXJvd3M+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZy
IHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgwLjQpIHNob3VsZCBiZSBbMS40ZnIg
cmVwZWF0KDIsIDIuNGZyIGF1dG8gMzRweCkgMS40ZnJdIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVk
ICIxLjRmciByZXBlYXQgKCAyICwgMi40ZnIgYXV0byAzNHB4ICkgMS40ZnIgIiBidXQgZ290ICIx
ZnIgcmVwZWF0ICggMiAsIDJmciBhdXRvIDMwcHggKSAxZnIgIgorRkFJTCBDU1MgQW5pbWF0aW9u
czogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtcm93cz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIg
YXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQg
KDAuNikgc2hvdWxkIGJlIFsxLjZmciByZXBlYXQoMiwgMi42ZnIgMzBweCAzNnB4KSAxLjZmcl0g
YXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjEuNmZyIHJlcGVhdCAoIDIgLCAyLjZmciAzMHB4IDM2
cHggKSAxLjZmciAiIGJ1dCBnb3QgIjJmciByZXBlYXQgKCAyICwgM2ZyIDMwcHggNDBweCApIDJm
ciAiCiBQQVNTIENTUyBBbmltYXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1yb3dzPiBm
cm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwg
M2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoMSkgc2hvdWxkIGJlIFsyZnIgcmVwZWF0KDIsIDNmciAz
MHB4IDQwcHgpIDJmcl0KLUZBSUwgQ1NTIEFuaW1hdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBs
YXRlLXJvd3M+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZy
IHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgyKSBzaG91bGQgYmUgWzNmciByZXBl
YXQoMiwgNGZyIDMwcHggNTBweCkgM2ZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiM2ZyIDRm
ciAzMHB4IDUwcHggNGZyIDMwcHggNTBweCAzZnIgIiBidXQgZ290ICIyZnIgM2ZyIDMwcHggNDBw
eCAzZnIgMzBweCA0MHB4IDJmciAiCi1GQUlMIFdlYiBBbmltYXRpb25zOiBwcm9wZXJ0eSA8Z3Jp
ZC10ZW1wbGF0ZS1yb3dzPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0g
dG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoLTEpIHNob3VsZCBiZSBb
MGZyIHJlcGVhdCgyLCAxZnIgYXV0byAyMHB4KSAwZnJdIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVk
ICIwZnIgMWZyIGF1dG8gMjBweCAxZnIgYXV0byAyMHB4IDBmciAiIGJ1dCBnb3QgIjFmciAyZnIg
YXV0byAzMHB4IDJmciBhdXRvIDMwcHggMWZyICIKK0ZBSUwgQ1NTIEFuaW1hdGlvbnM6IHByb3Bl
cnR5IDxncmlkLXRlbXBsYXRlLXJvd3M+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBw
eCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgyKSBzaG91
bGQgYmUgWzNmciByZXBlYXQoMiwgNGZyIDMwcHggNTBweCkgM2ZyXSBhc3NlcnRfZXF1YWxzOiBl
eHBlY3RlZCAiM2ZyIHJlcGVhdCAoIDIgLCA0ZnIgMzBweCA1MHB4ICkgM2ZyICIgYnV0IGdvdCAi
MmZyIHJlcGVhdCAoIDIgLCAzZnIgMzBweCA0MHB4ICkgMmZyICIKK0ZBSUwgV2ViIEFuaW1hdGlv
bnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLXJvd3M+IGZyb20gWzFmciByZXBlYXQoMiwgMmZy
IGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0
ICgtMSkgc2hvdWxkIGJlIFswZnIgcmVwZWF0KDIsIDFmciBhdXRvIDIwcHgpIDBmcl0gYXNzZXJ0
X2VxdWFsczogZXhwZWN0ZWQgIjBmciByZXBlYXQgKCAyICwgMWZyIGF1dG8gMjBweCApIDBmciAi
IGJ1dCBnb3QgIjFmciByZXBlYXQgKCAyICwgMmZyIGF1dG8gMzBweCApIDFmciAiCiBQQVNTIFdl
YiBBbmltYXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1yb3dzPiBmcm9tIFsxZnIgcmVw
ZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBw
eCkgMmZyXSBhdCAoMCkgc2hvdWxkIGJlIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFm
cl0KLUZBSUwgV2ViIEFuaW1hdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLXJvd3M+IGZy
b20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAz
ZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgwLjQpIHNob3VsZCBiZSBbMS40ZnIgcmVwZWF0KDIsIDIu
NGZyIGF1dG8gMzRweCkgMS40ZnJdIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIxLjRmciAyLjRm
ciBhdXRvIDM0cHggMi40ZnIgYXV0byAzNHB4IDEuNGZyICIgYnV0IGdvdCAiMWZyIDJmciBhdXRv
IDMwcHggMmZyIGF1dG8gMzBweCAxZnIgIgotRkFJTCBXZWIgQW5pbWF0aW9uczogcHJvcGVydHkg
PGdyaWQtdGVtcGxhdGUtcm93cz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAx
ZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKDAuNikgc2hvdWxk
IGJlIFsxLjZmciByZXBlYXQoMiwgMi42ZnIgMzBweCAzNnB4KSAxLjZmcl0gYXNzZXJ0X2VxdWFs
czogZXhwZWN0ZWQgIjEuNmZyIDIuNmZyIDMwcHggMzZweCAyLjZmciAzMHB4IDM2cHggMS42ZnIg
IiBidXQgZ290ICIyZnIgM2ZyIDMwcHggNDBweCAzZnIgMzBweCA0MHB4IDJmciAiCitGQUlMIFdl
YiBBbmltYXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1yb3dzPiBmcm9tIFsxZnIgcmVw
ZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBw
eCkgMmZyXSBhdCAoMC40KSBzaG91bGQgYmUgWzEuNGZyIHJlcGVhdCgyLCAyLjRmciBhdXRvIDM0
cHgpIDEuNGZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiMS40ZnIgcmVwZWF0ICggMiAsIDIu
NGZyIGF1dG8gMzRweCApIDEuNGZyICIgYnV0IGdvdCAiMWZyIHJlcGVhdCAoIDIgLCAyZnIgYXV0
byAzMHB4ICkgMWZyICIKK0ZBSUwgV2ViIEFuaW1hdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBs
YXRlLXJvd3M+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZy
IHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgwLjYpIHNob3VsZCBiZSBbMS42ZnIg
cmVwZWF0KDIsIDIuNmZyIDMwcHggMzZweCkgMS42ZnJdIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVk
ICIxLjZmciByZXBlYXQgKCAyICwgMi42ZnIgMzBweCAzNnB4ICkgMS42ZnIgIiBidXQgZ290ICIy
ZnIgcmVwZWF0ICggMiAsIDNmciAzMHB4IDQwcHggKSAyZnIgIgogUEFTUyBXZWIgQW5pbWF0aW9u
czogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtcm93cz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIg
YXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQg
KDEpIHNob3VsZCBiZSBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdCi1GQUlMIFdl
YiBBbmltYXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1yb3dzPiBmcm9tIFsxZnIgcmVw
ZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBw
eCkgMmZyXSBhdCAoMikgc2hvdWxkIGJlIFszZnIgcmVwZWF0KDIsIDRmciAzMHB4IDUwcHgpIDNm
cl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjNmciA0ZnIgMzBweCA1MHB4IDRmciAzMHB4IDUw
cHggM2ZyICIgYnV0IGdvdCAiMmZyIDNmciAzMHB4IDQwcHggM2ZyIDMwcHggNDBweCAyZnIgIgor
RkFJTCBXZWIgQW5pbWF0aW9uczogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtcm93cz4gZnJvbSBb
MWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAz
MHB4IDQwcHgpIDJmcl0gYXQgKDIpIHNob3VsZCBiZSBbM2ZyIHJlcGVhdCgyLCA0ZnIgMzBweCA1
MHB4KSAzZnJdIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIzZnIgcmVwZWF0ICggMiAsIDRmciAz
MHB4IDUwcHggKSAzZnIgIiBidXQgZ290ICIyZnIgcmVwZWF0ICggMiAsIDNmciAzMHB4IDQwcHgg
KSAyZnIgIgogUEFTUyBDU1MgVHJhbnNpdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLXJv
d3M+IGZyb20gWzEwcHggcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDI1cHgsIDFmcikpIDEwcHhd
IHRvIFsyMHB4IDIwcHggcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDMwcHgsIDFmcikpXSBhdCAo
LTAuMykgc2hvdWxkIGJlIFsyMHB4IDIwcHggcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDMwcHgs
IDFmcikpXQogUEFTUyBDU1MgVHJhbnNpdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLXJv
d3M+IGZyb20gWzEwcHggcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDI1cHgsIDFmcikpIDEwcHhd
IHRvIFsyMHB4IDIwcHggcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDMwcHgsIDFmcikpXSBhdCAo
MCkgc2hvdWxkIGJlIFsyMHB4IDIwcHggcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDMwcHgsIDFm
cikpXQogUEFTUyBDU1MgVHJhbnNpdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLXJvd3M+
IGZyb20gWzEwcHggcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDI1cHgsIDFmcikpIDEwcHhdIHRv
IFsyMHB4IDIwcHggcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDMwcHgsIDFmcikpXSBhdCAoMC4z
KSBzaG91bGQgYmUgWzIwcHggMjBweCByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgoMzBweCwgMWZy
KSldCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3MtZ3JpZC9wYXJzaW5nL2dyaWQtdGVtcGxhdGUtY29sdW1ucy1jb21wdXRlZC1u
b2dyaWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3MvY3NzLWdyaWQvcGFyc2luZy9ncmlkLXRlbXBsYXRlLWNvbHVtbnMtY29tcHV0
ZWQtbm9ncmlkLWV4cGVjdGVkLnR4dAppbmRleCBlNjZkMWRmMzI5ZGFkMGZkOWEwZjdkMTYxMTYx
YWJhMTNkY2ZkY2QxLi42ZGVlYTU3ODRlODVjMGM0N2FlMTJhMmUxODY1MTJmYTk3Y2Y2YzVmIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9jc3MtZ3JpZC9wYXJzaW5nL2dyaWQtdGVtcGxhdGUtY29sdW1ucy1jb21wdXRlZC1ub2dyaWQt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy1ncmlkL3BhcnNpbmcvZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zLWNvbXB1dGVk
LW5vZ3JpZC1leHBlY3RlZC50eHQKQEAgLTUsMjIgKzUsMjIgQEAgUEFTUyBQcm9wZXJ0eSBncmlk
LXRlbXBsYXRlLWNvbHVtbnMgdmFsdWUgJzFweCBbYV0nCiBQQVNTIFByb3BlcnR5IGdyaWQtdGVt
cGxhdGUtY29sdW1ucyB2YWx1ZSAnMXB4IFthXSAycHgnCiBQQVNTIFByb3BlcnR5IGdyaWQtdGVt
cGxhdGUtY29sdW1ucyB2YWx1ZSAnW2FdIDFweCcKIFBBU1MgUHJvcGVydHkgZ3JpZC10ZW1wbGF0
ZS1jb2x1bW5zIHZhbHVlICdbYV0gMXB4IFtiXScKLUZBSUwgUHJvcGVydHkgZ3JpZC10ZW1wbGF0
ZS1jb2x1bW5zIHZhbHVlICcxcHggcmVwZWF0KDEsIDJweCkgM3B4JyBhc3NlcnRfZXF1YWxzOiBl
eHBlY3RlZCAiMXB4IHJlcGVhdCgxLCAycHgpIDNweCIgYnV0IGdvdCAiMXB4IDJweCAzcHgiCitQ
QVNTIFByb3BlcnR5IGdyaWQtdGVtcGxhdGUtY29sdW1ucyB2YWx1ZSAnMXB4IHJlcGVhdCgxLCAy
cHgpIDNweCcKIFBBU1MgUHJvcGVydHkgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zIHZhbHVlICcxcHgg
cmVwZWF0KGF1dG8tZmlsbCwgMnB4KSAzcHgnCiBQQVNTIFByb3BlcnR5IGdyaWQtdGVtcGxhdGUt
Y29sdW1ucyB2YWx1ZSAnMXB4IHJlcGVhdChhdXRvLWZpdCwgMnB4KSAzcHgnCi1GQUlMIFByb3Bl
cnR5IGdyaWQtdGVtcGxhdGUtY29sdW1ucyB2YWx1ZSAnMXB4IFthXSByZXBlYXQoMSwgMnB4IDNw
eCkgW2JdIDRweCcgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjFweCBbYV0gcmVwZWF0KDEsIDJw
eCAzcHgpIFtiXSA0cHgiIGJ1dCBnb3QgIjFweCBbYV0gMnB4IDNweCBbYl0gNHB4IgorUEFTUyBQ
cm9wZXJ0eSBncmlkLXRlbXBsYXRlLWNvbHVtbnMgdmFsdWUgJzFweCBbYV0gcmVwZWF0KDEsIDJw
eCAzcHgpIFtiXSA0cHgnCiBQQVNTIFByb3BlcnR5IGdyaWQtdGVtcGxhdGUtY29sdW1ucyB2YWx1
ZSAnMXB4IFthXSByZXBlYXQoYXV0by1maWxsLCAycHggM3B4KSBbYl0gNHB4JwogUEFTUyBQcm9w
ZXJ0eSBncmlkLXRlbXBsYXRlLWNvbHVtbnMgdmFsdWUgJzFweCBbYV0gcmVwZWF0KGF1dG8tZml0
LCAycHggM3B4KSBbYl0gNHB4JwotRkFJTCBQcm9wZXJ0eSBncmlkLXRlbXBsYXRlLWNvbHVtbnMg
dmFsdWUgJzFweCBbYV0gcmVwZWF0KDEsIFtiXSAycHggW2NdKSBbZF0gM3B4JyBhc3NlcnRfZXF1
YWxzOiBleHBlY3RlZCAiMXB4IFthXSByZXBlYXQoMSwgW2JdIDJweCBbY10pIFtkXSAzcHgiIGJ1
dCBnb3QgIjFweCBbYSBiXSAycHggW2MgZF0gM3B4IgorUEFTUyBQcm9wZXJ0eSBncmlkLXRlbXBs
YXRlLWNvbHVtbnMgdmFsdWUgJzFweCBbYV0gcmVwZWF0KDEsIFtiXSAycHggW2NdKSBbZF0gM3B4
JwogUEFTUyBQcm9wZXJ0eSBncmlkLXRlbXBsYXRlLWNvbHVtbnMgdmFsdWUgJzFweCBbYV0gcmVw
ZWF0KGF1dG8tZmlsbCwgW2JdIDJweCBbY10pIFtkXSAzcHgnCiBQQVNTIFByb3BlcnR5IGdyaWQt
dGVtcGxhdGUtY29sdW1ucyB2YWx1ZSAnMXB4IFthXSByZXBlYXQoYXV0by1maXQsIFtiXSAycHgg
W2NdKSBbZF0gM3B4JwotRkFJTCBQcm9wZXJ0eSBncmlkLXRlbXBsYXRlLWNvbHVtbnMgdmFsdWUg
J1thXSAxcHggcmVwZWF0KDEsIDJweCBbYl0gM3B4KSA0cHggW2RdJyBhc3NlcnRfZXF1YWxzOiBl
eHBlY3RlZCAiW2FdIDFweCByZXBlYXQoMSwgMnB4IFtiXSAzcHgpIDRweCBbZF0iIGJ1dCBnb3Qg
IlthXSAxcHggMnB4IFtiXSAzcHggNHB4IFtkXSIKK1BBU1MgUHJvcGVydHkgZ3JpZC10ZW1wbGF0
ZS1jb2x1bW5zIHZhbHVlICdbYV0gMXB4IHJlcGVhdCgxLCAycHggW2JdIDNweCkgNHB4IFtkXScK
IFBBU1MgUHJvcGVydHkgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zIHZhbHVlICdbYV0gMXB4IHJlcGVh
dChhdXRvLWZpbGwsIDJweCBbYl0gM3B4KSA0cHggW2RdJwogUEFTUyBQcm9wZXJ0eSBncmlkLXRl
bXBsYXRlLWNvbHVtbnMgdmFsdWUgJ1thXSAxcHggcmVwZWF0KGF1dG8tZml0LCAycHggW2JdIDNw
eCkgNHB4IFtkXScKLUZBSUwgUHJvcGVydHkgZ3JpZC10ZW1wbGF0ZS1yb3dzIHZhbHVlICcxMDAl
IFthXSByZXBlYXQoMSwgW2JdIDIwMCUgW2NdKSBbZF0gMzAwJScgYXNzZXJ0X2VxdWFsczogZXhw
ZWN0ZWQgIjEwMCUgW2FdIHJlcGVhdCgxLCBbYl0gMjAwJSBbY10pIFtkXSAzMDAlIiBidXQgZ290
ICIxMDAlIFthIGJdIDIwMCUgW2MgZF0gMzAwJSIKK1BBU1MgUHJvcGVydHkgZ3JpZC10ZW1wbGF0
ZS1yb3dzIHZhbHVlICcxMDAlIFthXSByZXBlYXQoMSwgW2JdIDIwMCUgW2NdKSBbZF0gMzAwJScK
IFBBU1MgUHJvcGVydHkgZ3JpZC10ZW1wbGF0ZS1yb3dzIHZhbHVlICcxMDAlIFthXSByZXBlYXQo
YXV0by1maWxsLCBbYl0gMjAwJSBbY10pIFtkXSAzMDAlJwogUEFTUyBQcm9wZXJ0eSBncmlkLXRl
bXBsYXRlLXJvd3MgdmFsdWUgJzEwMCUgW2FdIHJlcGVhdChhdXRvLWZpdCwgW2JdIDIwMCUgW2Nd
KSBbZF0gMzAwJScKLUZBSUwgUHJvcGVydHkgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zIHZhbHVlICdb
YV0gMWVtIHJlcGVhdCgxLCAyZW0gW2JdIDNlbSkgNGVtIFtkXScgYXNzZXJ0X2VxdWFsczogZXhw
ZWN0ZWQgIlthXSAxcHggcmVwZWF0KDEsIDJweCBbYl0gM3B4KSA0cHggW2RdIiBidXQgZ290ICJb
YV0gMXB4IDJweCBbYl0gM3B4IDRweCBbZF0iCitQQVNTIFByb3BlcnR5IGdyaWQtdGVtcGxhdGUt
Y29sdW1ucyB2YWx1ZSAnW2FdIDFlbSByZXBlYXQoMSwgMmVtIFtiXSAzZW0pIDRlbSBbZF0nCiBQ
QVNTIFByb3BlcnR5IGdyaWQtdGVtcGxhdGUtY29sdW1ucyB2YWx1ZSAnW2FdIDFlbSByZXBlYXQo
YXV0by1maWxsLCAyZW0gW2JdIDNlbSkgNGVtIFtkXScKIFBBU1MgUHJvcGVydHkgZ3JpZC10ZW1w
bGF0ZS1jb2x1bW5zIHZhbHVlICdbYV0gMWVtIHJlcGVhdChhdXRvLWZpdCwgMmVtIFtiXSAzZW0p
IDRlbSBbZF0nCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL2Nzcy1ncmlkL3BhcnNpbmcvZ3JpZC10ZW1wbGF0ZS1yb3dzLWNvbXB1
dGVkLW5vZ3JpZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3JpZC9wYXJzaW5nL2dyaWQtdGVtcGxhdGUtcm93cy1jb21w
dXRlZC1ub2dyaWQtZXhwZWN0ZWQudHh0CmluZGV4IGM5ZGU3OWMwNDVlY2JlYmNiMzY1ZGE3Yzcz
NWZjOWZkNzI4YmM5ZjQuLjUwYzg4ZGEwM2Y5YWMxMDY5NDk1ZTYzOTY4MzAyYTk5NTUzNzE3NTIg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL2Nzcy1ncmlkL3BhcnNpbmcvZ3JpZC10ZW1wbGF0ZS1yb3dzLWNvbXB1dGVkLW5vZ3JpZC1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLWdyaWQvcGFyc2luZy9ncmlkLXRlbXBsYXRlLXJvd3MtY29tcHV0ZWQtbm9n
cmlkLWV4cGVjdGVkLnR4dApAQCAtNSwyMiArNSwyMiBAQCBQQVNTIFByb3BlcnR5IGdyaWQtdGVt
cGxhdGUtcm93cyB2YWx1ZSAnMXB4IFthXScKIFBBU1MgUHJvcGVydHkgZ3JpZC10ZW1wbGF0ZS1y
b3dzIHZhbHVlICcxcHggW2FdIDJweCcKIFBBU1MgUHJvcGVydHkgZ3JpZC10ZW1wbGF0ZS1yb3dz
IHZhbHVlICdbYV0gMXB4JwogUEFTUyBQcm9wZXJ0eSBncmlkLXRlbXBsYXRlLXJvd3MgdmFsdWUg
J1thXSAxcHggW2JdJwotRkFJTCBQcm9wZXJ0eSBncmlkLXRlbXBsYXRlLXJvd3MgdmFsdWUgJzFw
eCByZXBlYXQoMSwgMnB4KSAzcHgnIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIxcHggcmVwZWF0
KDEsIDJweCkgM3B4IiBidXQgZ290ICIxcHggMnB4IDNweCIKK1BBU1MgUHJvcGVydHkgZ3JpZC10
ZW1wbGF0ZS1yb3dzIHZhbHVlICcxcHggcmVwZWF0KDEsIDJweCkgM3B4JwogUEFTUyBQcm9wZXJ0
eSBncmlkLXRlbXBsYXRlLXJvd3MgdmFsdWUgJzFweCByZXBlYXQoYXV0by1maWxsLCAycHgpIDNw
eCcKIFBBU1MgUHJvcGVydHkgZ3JpZC10ZW1wbGF0ZS1yb3dzIHZhbHVlICcxcHggcmVwZWF0KGF1
dG8tZml0LCAycHgpIDNweCcKLUZBSUwgUHJvcGVydHkgZ3JpZC10ZW1wbGF0ZS1yb3dzIHZhbHVl
ICcxcHggW2FdIHJlcGVhdCgxLCAycHggM3B4KSBbYl0gNHB4JyBhc3NlcnRfZXF1YWxzOiBleHBl
Y3RlZCAiMXB4IFthXSByZXBlYXQoMSwgMnB4IDNweCkgW2JdIDRweCIgYnV0IGdvdCAiMXB4IFth
XSAycHggM3B4IFtiXSA0cHgiCitQQVNTIFByb3BlcnR5IGdyaWQtdGVtcGxhdGUtcm93cyB2YWx1
ZSAnMXB4IFthXSByZXBlYXQoMSwgMnB4IDNweCkgW2JdIDRweCcKIFBBU1MgUHJvcGVydHkgZ3Jp
ZC10ZW1wbGF0ZS1yb3dzIHZhbHVlICcxcHggW2FdIHJlcGVhdChhdXRvLWZpbGwsIDJweCAzcHgp
IFtiXSA0cHgnCiBQQVNTIFByb3BlcnR5IGdyaWQtdGVtcGxhdGUtcm93cyB2YWx1ZSAnMXB4IFth
XSByZXBlYXQoYXV0by1maXQsIDJweCAzcHgpIFtiXSA0cHgnCi1GQUlMIFByb3BlcnR5IGdyaWQt
dGVtcGxhdGUtcm93cyB2YWx1ZSAnMXB4IFthXSByZXBlYXQoMSwgW2JdIDJweCBbY10pIFtkXSAz
cHgnIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIxcHggW2FdIHJlcGVhdCgxLCBbYl0gMnB4IFtj
XSkgW2RdIDNweCIgYnV0IGdvdCAiMXB4IFthIGJdIDJweCBbYyBkXSAzcHgiCitQQVNTIFByb3Bl
cnR5IGdyaWQtdGVtcGxhdGUtcm93cyB2YWx1ZSAnMXB4IFthXSByZXBlYXQoMSwgW2JdIDJweCBb
Y10pIFtkXSAzcHgnCiBQQVNTIFByb3BlcnR5IGdyaWQtdGVtcGxhdGUtcm93cyB2YWx1ZSAnMXB4
IFthXSByZXBlYXQoYXV0by1maWxsLCBbYl0gMnB4IFtjXSkgW2RdIDNweCcKIFBBU1MgUHJvcGVy
dHkgZ3JpZC10ZW1wbGF0ZS1yb3dzIHZhbHVlICcxcHggW2FdIHJlcGVhdChhdXRvLWZpdCwgW2Jd
IDJweCBbY10pIFtkXSAzcHgnCi1GQUlMIFByb3BlcnR5IGdyaWQtdGVtcGxhdGUtcm93cyB2YWx1
ZSAnW2FdIDFweCByZXBlYXQoMSwgMnB4IFtiXSAzcHgpIDRweCBbZF0nIGFzc2VydF9lcXVhbHM6
IGV4cGVjdGVkICJbYV0gMXB4IHJlcGVhdCgxLCAycHggW2JdIDNweCkgNHB4IFtkXSIgYnV0IGdv
dCAiW2FdIDFweCAycHggW2JdIDNweCA0cHggW2RdIgorUEFTUyBQcm9wZXJ0eSBncmlkLXRlbXBs
YXRlLXJvd3MgdmFsdWUgJ1thXSAxcHggcmVwZWF0KDEsIDJweCBbYl0gM3B4KSA0cHggW2RdJwog
UEFTUyBQcm9wZXJ0eSBncmlkLXRlbXBsYXRlLXJvd3MgdmFsdWUgJ1thXSAxcHggcmVwZWF0KGF1
dG8tZmlsbCwgMnB4IFtiXSAzcHgpIDRweCBbZF0nCiBQQVNTIFByb3BlcnR5IGdyaWQtdGVtcGxh
dGUtcm93cyB2YWx1ZSAnW2FdIDFweCByZXBlYXQoYXV0by1maXQsIDJweCBbYl0gM3B4KSA0cHgg
W2RdJwotRkFJTCBQcm9wZXJ0eSBncmlkLXRlbXBsYXRlLXJvd3MgdmFsdWUgJzEwMCUgW2FdIHJl
cGVhdCgxLCBbYl0gMjAwJSBbY10pIFtkXSAzMDAlJyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAi
MTAwJSBbYV0gcmVwZWF0KDEsIFtiXSAyMDAlIFtjXSkgW2RdIDMwMCUiIGJ1dCBnb3QgIjEwMCUg
W2EgYl0gMjAwJSBbYyBkXSAzMDAlIgorUEFTUyBQcm9wZXJ0eSBncmlkLXRlbXBsYXRlLXJvd3Mg
dmFsdWUgJzEwMCUgW2FdIHJlcGVhdCgxLCBbYl0gMjAwJSBbY10pIFtkXSAzMDAlJwogUEFTUyBQ
cm9wZXJ0eSBncmlkLXRlbXBsYXRlLXJvd3MgdmFsdWUgJzEwMCUgW2FdIHJlcGVhdChhdXRvLWZp
bGwsIFtiXSAyMDAlIFtjXSkgW2RdIDMwMCUnCiBQQVNTIFByb3BlcnR5IGdyaWQtdGVtcGxhdGUt
cm93cyB2YWx1ZSAnMTAwJSBbYV0gcmVwZWF0KGF1dG8tZml0LCBbYl0gMjAwJSBbY10pIFtkXSAz
MDAlJwotRkFJTCBQcm9wZXJ0eSBncmlkLXRlbXBsYXRlLXJvd3MgdmFsdWUgJ1thXSAxZW0gcmVw
ZWF0KDEsIDJlbSBbYl0gM2VtKSA0ZW0gW2RdJyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiW2Fd
IDFweCByZXBlYXQoMSwgMnB4IFtiXSAzcHgpIDRweCBbZF0iIGJ1dCBnb3QgIlthXSAxcHggMnB4
IFtiXSAzcHggNHB4IFtkXSIKK1BBU1MgUHJvcGVydHkgZ3JpZC10ZW1wbGF0ZS1yb3dzIHZhbHVl
ICdbYV0gMWVtIHJlcGVhdCgxLCAyZW0gW2JdIDNlbSkgNGVtIFtkXScKIFBBU1MgUHJvcGVydHkg
Z3JpZC10ZW1wbGF0ZS1yb3dzIHZhbHVlICdbYV0gMWVtIHJlcGVhdChhdXRvLWZpbGwsIDJlbSBb
Yl0gM2VtKSA0ZW0gW2RdJwogUEFTUyBQcm9wZXJ0eSBncmlkLXRlbXBsYXRlLXJvd3MgdmFsdWUg
J1thXSAxZW0gcmVwZWF0KGF1dG8tZml0LCAyZW0gW2JdIDNlbSkgNGVtIFtkXScKIAo=
</data>
<flag name="review"
          id="482730"
          type_id="1"
          status="+"
          setter="dino"
    />
    <flag name="commit-queue"
          id="482733"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>455869</attachid>
            <date>2022-03-27 16:19:00 -0700</date>
            <delta_ts>2022-03-27 21:19:18 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-202259-20220328121858.patch</filename>
            <type>text/plain</type>
            <size>119292</size>
            <attacher name="Matt Woodrow">mattwoodrow</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxOTUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTU1N2M3MDg4YzQyYWM0
Yjk3YzQzYTA1NGQyOTdlYmYwZjk2YmIxOS4uZmUzMzAzOGMzYzkwZDJkNzNkZjJmZWJmN2U1ZjU0
YjdkZmRiMzc5NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyMyBAQAorMjAyMi0wMy0xNiAgTWF0
dCBXb29kcm93ICA8bWF0dHdvb2Ryb3dAYXBwbGUuY29tPgorCisgICAgICAgIFByZXNlcnZlIHJl
cGVhdCgpIG5vdGF0aW9uIGZvciBncmlkLXRlbXBsYXRlcworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyMjU5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
RGVhbiBKYWNrc29uLgorCisgICAgICAgICogYW5pbWF0aW9uL0NTU1Byb3BlcnR5QW5pbWF0aW9u
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmJsZW5kRnVuYyk6CisgICAgICAgIChXZWJDb3JlOjpD
U1NQcm9wZXJ0eUFuaW1hdGlvbldyYXBwZXJNYXA6OkNTU1Byb3BlcnR5QW5pbWF0aW9uV3JhcHBl
ck1hcCk6CisgICAgICAgIChXZWJDb3JlOjpHcmlkVGVtcGxhdGVUcmFja3NXcmFwcGVyPEZvckNv
bHVtbnM+OjpHcmlkVGVtcGxhdGVUcmFja3NXcmFwcGVyKTogRGVsZXRlZC4KKyAgICAgICAgKFdl
YkNvcmU6OkdyaWRUZW1wbGF0ZVRyYWNrc1dyYXBwZXI8Rm9yUm93cz46OkdyaWRUZW1wbGF0ZVRy
YWNrc1dyYXBwZXIpOiBEZWxldGVkLgorCisgICAgICAgIFJlcGxhY2VzIEdyaWRUZW1wbGF0ZVRy
YWNrc1dyYXBwZXIgd2l0aCBhIHNpbXBsZXIgR3JpZFRlbXBsYXRlUHJvcGVydHlXcmFwcGVyIHRo
YXQganVzdCBjb21wYXJlcyB0aGUKKyAgICAgICAgdHJhY2sgbGlzdHMuIEluIHRoZSBmdXR1cmUg
d2UgY2FuIGl0ZXJhdGUgdGhlIHR3byB0cmFja3MgbGlzdHMgaW4gcGFyYWxsZWwgYW5kIGludGVy
cG9sYXRlIHBlci1pdGVtLAorICAgICAgICBpbiBvcmRlciB0byBnZXQgYW5pbWF0aW9uIGNvcnJl
Y3QgcGVyLXNwZWMuCisKKyAgICAgICAgKiBjc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9u
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnBvcHVsYXRlR3JpZFRyYWNrTGlzdCk6CisgICAgICAg
IChXZWJDb3JlOjpwb3B1bGF0ZVN1YmdyaWRMaW5lTmFtZUxpc3QpOgorICAgICAgICAoV2ViQ29y
ZTo6dmFsdWVGb3JHcmlkVHJhY2tMaXN0KToKKyAgICAgICAgKFdlYkNvcmU6Ok9yZGVyZWROYW1l
ZExpbmVzQ29sbGVjdG9ySW5zaWRlUmVwZWF0OjpPcmRlcmVkTmFtZWRMaW5lc0NvbGxlY3Rvcklu
c2lkZVJlcGVhdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpPcmRlcmVkTmFtZWRMaW5l
c0NvbGxlY3Rvcjo6Y29sbGVjdExpbmVOYW1lc0ZvckluZGV4IGNvbnN0KTogRGVsZXRlZC4KKyAg
ICAgICAgKFdlYkNvcmU6Ok9yZGVyZWROYW1lZExpbmVzQ29sbGVjdG9ySW5zaWRlUmVwZWF0Ojpj
b2xsZWN0TGluZU5hbWVzRm9ySW5kZXggY29uc3QpOiBEZWxldGVkLgorCisgICAgICAgIEltcGxl
bWVudHMgZ2V0Q29tcHV0ZWRTdHlsZSBieSBpdGVyYXRpbmcgdGhlIHRyYWNrIGxpc3QgYW5kIGRv
aW5nIGEgMToxIGNvbnZlcnNpb24gdG8gQ1NTVmFsdWVzLCBpbnN0ZWFkCisgICAgICAgIG9mIHJl
Y29uc3RydWN0aW5nIGZyb20gdGhlIHByb2Nlc3NlZCBoYXNodGFibGVzLgorICAgICAgICBUaGlz
IGNvcnJlY3RseSBwcmVzZXJ2ZXMgcmVwZWF0KCkgaW5zdGFuY2VzIGluIHRoZSB0cmFjayBsaXN0
LCB3aGljaCB3ZXJlbid0IHJldHJlaXZhYmxlIGZyb20gdGhlIHByb2Nlc3NlZAorICAgICAgICBk
YXRhLgorCisgICAgICAgICogcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmg6CisgICAgICAg
IChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6Z3JpZENvbHVtbnMgY29uc3QpOgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyU3R5bGU6OmdyaWRSb3dzIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJl
bmRlclN0eWxlOjpncmlkQ29sdW1uTGlzdCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJTdHlsZTo6Z3JpZFJvd0xpc3QgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5
bGU6OmdyaWRBdXRvUmVwZWF0Q29sdW1ucyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJTdHlsZTo6Z3JpZEF1dG9SZXBlYXRSb3dzIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJl
bmRlclN0eWxlOjpncmlkQXV0b1JlcGVhdENvbHVtbnNJbnNlcnRpb25Qb2ludCBjb25zdCk6Cisg
ICAgICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6Z3JpZEF1dG9SZXBlYXRSb3dzSW5zZXJ0aW9u
UG9pbnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OmdyaWRBdXRvUmVw
ZWF0Q29sdW1uc1R5cGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6Omdy
aWRBdXRvUmVwZWF0Um93c1R5cGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5
bGU6Om5hbWVkR3JpZENvbHVtbkxpbmVzIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
clN0eWxlOjpuYW1lZEdyaWRSb3dMaW5lcyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJTdHlsZTo6b3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzIGNvbnN0KToKKyAgICAgICAgKFdl
YkNvcmU6OlJlbmRlclN0eWxlOjpvcmRlcmVkTmFtZWRHcmlkUm93TGluZXMgY29uc3QpOgorICAg
ICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OmF1dG9SZXBlYXROYW1lZEdyaWRDb2x1bW5MaW5l
cyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6YXV0b1JlcGVhdE5hbWVk
R3JpZFJvd0xpbmVzIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjphdXRv
UmVwZWF0T3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzIGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OlJlbmRlclN0eWxlOjphdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZFJvd0xpbmVzIGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjpncmlkU3ViZ3JpZFJvd3MgY29uc3Qp
OgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OmdyaWRTdWJncmlkQ29sdW1ucyBjb25z
dCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6c2V0R3JpZENvbHVtbkxpc3QpOgor
ICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OnNldEdyaWRSb3dMaXN0KToKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlclN0eWxlOjpzZXRHcmlkQXV0b1Jvd3MpOgorICAgICAgICAoV2ViQ29y
ZTo6UmVuZGVyU3R5bGU6OnNldEdyaWRBdXRvRmxvdyk6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJTdHlsZTo6c2V0R3JpZENvbHVtbnMpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyU3R5bGU6OnNldEdyaWRSb3dzKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
clN0eWxlOjpzZXRHcmlkQXV0b1JlcGVhdENvbHVtbnMpOiBEZWxldGVkLgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyU3R5bGU6OnNldEdyaWRBdXRvUmVwZWF0Um93cyk6IERlbGV0ZWQuCisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6c2V0R3JpZEF1dG9SZXBlYXRDb2x1bW5zSW5zZXJ0
aW9uUG9pbnQpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OnNldEdy
aWRBdXRvUmVwZWF0Um93c0luc2VydGlvblBvaW50KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNv
cmU6OlJlbmRlclN0eWxlOjpzZXRHcmlkQXV0b1JlcGVhdENvbHVtbnNUeXBlKTogRGVsZXRlZC4K
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjpzZXRHcmlkQXV0b1JlcGVhdFJvd3NUeXBl
KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjpzZXROYW1lZEdyaWRD
b2x1bW5MaW5lcyk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6c2V0
TmFtZWRHcmlkUm93TGluZXMpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5
bGU6OnNldE9yZGVyZWROYW1lZEdyaWRDb2x1bW5MaW5lcyk6IERlbGV0ZWQuCisgICAgICAgIChX
ZWJDb3JlOjpSZW5kZXJTdHlsZTo6c2V0T3JkZXJlZE5hbWVkR3JpZFJvd0xpbmVzKTogRGVsZXRl
ZC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjpzZXRBdXRvUmVwZWF0TmFtZWRHcmlk
Q29sdW1uTGluZXMpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OnNl
dEF1dG9SZXBlYXROYW1lZEdyaWRSb3dMaW5lcyk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3Jl
OjpSZW5kZXJTdHlsZTo6c2V0QXV0b1JlcGVhdE9yZGVyZWROYW1lZEdyaWRDb2x1bW5MaW5lcyk6
IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6c2V0QXV0b1JlcGVhdE9y
ZGVyZWROYW1lZEdyaWRSb3dMaW5lcyk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJTdHlsZTo6c2V0R3JpZFN1YmdyaWRSb3dzKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6
OlJlbmRlclN0eWxlOjpzZXRHcmlkU3ViZ3JpZENvbHVtbnMpOiBEZWxldGVkLgorICAgICAgICAq
IHJlbmRlcmluZy9zdHlsZS9TdHlsZUdyaWREYXRhLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0
eWxlR3JpZERhdGE6OlN0eWxlR3JpZERhdGEpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVHcmlk
RGF0YTo6c2V0Um93cyk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZUdyaWREYXRhOjpzZXRDb2x1
bW5zKToKKyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZUdyaWRMaW5lTmFtZXNMaXN0KToKKyAgICAg
ICAgKFdlYkNvcmU6OlN0eWxlR3JpZERhdGE6OmNvbXB1dGVDYWNoZWRUcmFja0RhdGEpOgorICAg
ICAgICAoV2ViQ29yZTo6b3BlcmF0b3I8PCk6CisgICAgICAgICogcmVuZGVyaW5nL3N0eWxlL1N0
eWxlR3JpZERhdGEuaDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlR3JpZERhdGE6Om9wZXJhdG9y
PT0gY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVHcmlkRGF0YTo6Z3JpZENvbHVtbnMg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVHcmlkRGF0YTo6Z3JpZFJvd3MgY29uc3Qp
OgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVHcmlkRGF0YTo6bmFtZWRHcmlkQ29sdW1uTGluZXMg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVHcmlkRGF0YTo6bmFtZWRHcmlkUm93TGlu
ZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVHcmlkRGF0YTo6b3JkZXJlZE5hbWVk
R3JpZENvbHVtbkxpbmVzIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlR3JpZERhdGE6
Om9yZGVyZWROYW1lZEdyaWRSb3dMaW5lcyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpTdHls
ZUdyaWREYXRhOjphdXRvUmVwZWF0TmFtZWRHcmlkQ29sdW1uTGluZXMgY29uc3QpOgorICAgICAg
ICAoV2ViQ29yZTo6U3R5bGVHcmlkRGF0YTo6YXV0b1JlcGVhdE5hbWVkR3JpZFJvd0xpbmVzIGNv
bnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlR3JpZERhdGE6OmF1dG9SZXBlYXRPcmRlcmVk
TmFtZWRHcmlkQ29sdW1uTGluZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVHcmlk
RGF0YTo6YXV0b1JlcGVhdE9yZGVyZWROYW1lZEdyaWRSb3dMaW5lcyBjb25zdCk6CisgICAgICAg
IChXZWJDb3JlOjpTdHlsZUdyaWREYXRhOjpncmlkQXV0b1JlcGVhdENvbHVtbnMgY29uc3QpOgor
ICAgICAgICAoV2ViQ29yZTo6U3R5bGVHcmlkRGF0YTo6Z3JpZEF1dG9SZXBlYXRSb3dzIGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlR3JpZERhdGE6OmF1dG9SZXBlYXRDb2x1bW5zSW5z
ZXJ0aW9uUG9pbnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVHcmlkRGF0YTo6YXV0
b1JlcGVhdFJvd3NJbnNlcnRpb25Qb2ludCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpTdHls
ZUdyaWREYXRhOjphdXRvUmVwZWF0Q29sdW1uc1R5cGUgY29uc3QpOgorICAgICAgICAoV2ViQ29y
ZTo6U3R5bGVHcmlkRGF0YTo6YXV0b1JlcGVhdFJvd3NUeXBlIGNvbnN0KToKKyAgICAgICAgKFdl
YkNvcmU6OlN0eWxlR3JpZERhdGE6OnN1YmdyaWRSb3dzIGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OlN0eWxlR3JpZERhdGE6OnN1YmdyaWRDb2x1bW5zIGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OlN0eWxlR3JpZERhdGE6OmNvbHVtbnMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6U3R5
bGVHcmlkRGF0YTo6cm93cyBjb25zdCk6CisKKyAgICAgICAgU3RvcmVzIHRoZSBjb21wdXRlZCB0
cmFjayBsaXN0cyBkaXJlY3RseSBvbiBSZW5kZXJHcmlkLCB3aGlsZSByZXRhaW5pbmcgc3RvcmFn
ZSBvZiB0aGUgcHJvY2Vzc2VkIGRhdGEuCisgICAgICAgIGNvbXB1dGVDYWNoZWRUcmFja0RhdGEg
c2hvdWxkIGJlIGxvZ2ljYWxseSBpZGVudGljYWwgdG8gdGhlIG9sZCBCdWlsZGVyQ29udmVydGVy
OjpjcmVhdGVHcmlkVHJhY2tMaXN0LCBidXQKKyAgICAgICAgaGFwcGVucyB3aGVuIHdlIG1vZGlm
eSB0aGUgU3R5bGVHcmlkRGF0YSBzbyB0aGF0IHdlIGNhbiBydW4gaXQgZHVyaW5nIGFuaW1hdGlv
bnMuCisKKyAgICAgICAgKiBzdHlsZS9TdHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaDoKKyAgICAgICAg
KFdlYkNvcmU6OlN0eWxlOjpCdWlsZGVyQ29udmVydGVyOjpjcmVhdGVHcmlkVHJhY2tMaXN0KToK
KyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpjcmVhdGVHcmlkTGluZU5hbWVzTGlzdCk6IERlbGV0
ZWQuCisgICAgICAgICgpOiBEZWxldGVkLgorICAgICAgICAqIHN0eWxlL1N0eWxlQnVpbGRlckN1
c3RvbS5oOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OkJ1aWxkZXJDdXN0b206OmFwcGx5SW5p
dGlhbEdyaWRUZW1wbGF0ZUNvbHVtbnMpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OkJ1aWxk
ZXJDdXN0b206OmFwcGx5VmFsdWVHcmlkVGVtcGxhdGVDb2x1bW5zKToKKyAgICAgICAgKFdlYkNv
cmU6OlN0eWxlOjpCdWlsZGVyQ3VzdG9tOjphcHBseUluaXRpYWxHcmlkVGVtcGxhdGVSb3dzKToK
KyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpCdWlsZGVyQ3VzdG9tOjphcHBseVZhbHVlR3JpZFRl
bXBsYXRlUm93cyk6CisKKyAgICAgICAgUmF0aGVyIHRoYW4gY29udmVydGluZyB0aGUgdHJhY2sg
bGlzdCBpbnRvIHByb2Nlc3NlZCBoYXNodGFibGVzLCBqdXN0IGNvcGllcyB0aGUgZGF0YSBpbiB0
aGUgdHJhY2sgbGlzdAorICAgICAgICBmb3JtYXQgc28gdGhhdCB0aGUgU3R5bGVHcmlkRGF0YSBj
YW4gYWNjZXNzIHRoZSBvcmlnaW5hbCBkYXRhLgorCiAyMDIyLTAzLTE0ICBNYXR0IFdvb2Ryb3cg
IDxtYXR0d29vZHJvd0BhcHBsZS5jb20+CiAKICAgICAgICAgRml4IHNlcmlhbGl6YXRpb24gb2Yg
Z3JpZC10ZW1wbGF0ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0NTU1By
b3BlcnR5QW5pbWF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9DU1NQcm9wZXJ0
eUFuaW1hdGlvbi5jcHAKaW5kZXggYmFiMGE3MzM5MTQ4NTM1NjkwYzA4ZTRmZjZiMzE4NGRjMGE4
MjU5OC4uNWY5OTQyZjY0YmRjZTViMjcwYjMzYzcyNzI1Y2EyMWZmZDRmNTZmZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0NTU1Byb3BlcnR5QW5pbWF0aW9uLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vQ1NTUHJvcGVydHlBbmltYXRpb24uY3BwCkBAIC02
MDksNiArNjA5LDExIEBAIHN0YXRpYyBpbmxpbmUgT2Zmc2V0Um90YXRpb24gYmxlbmRGdW5jKGNv
bnN0IE9mZnNldFJvdGF0aW9uJiBmcm9tLCBjb25zdCBPZmZzZXRSCiAgICAgcmV0dXJuIE9mZnNl
dFJvdGF0aW9uKGZyb20uaGFzQXV0bygpLCBjbGFtcFRvPGZsb2F0PihibGVuZChmcm9tLmFuZ2xl
KCksIHRvLmFuZ2xlKCksIGNvbnRleHQpKSk7CiB9CiAKK3N0YXRpYyBpbmxpbmUgR3JpZFRyYWNr
TGlzdCBibGVuZEZ1bmMoY29uc3QgR3JpZFRyYWNrTGlzdCYgZnJvbSwgY29uc3QgR3JpZFRyYWNr
TGlzdCYgdG8sIGNvbnN0IENTU1Byb3BlcnR5QmxlbmRpbmdDb250ZXh0JiBjb250ZXh0KQorewor
ICAgIHJldHVybiBjb250ZXh0LnByb2dyZXNzIDwgMC41ID8gZnJvbSA6IHRvOworfQorCiBjbGFz
cyBBbmltYXRpb25Qcm9wZXJ0eVdyYXBwZXJCYXNlIHsKICAgICBXVEZfTUFLRV9OT05DT1BZQUJM
RShBbmltYXRpb25Qcm9wZXJ0eVdyYXBwZXJCYXNlKTsKICAgICBXVEZfTUFLRV9GQVNUX0FMTE9D
QVRFRDsKQEAgLTc1MSw3NCArNzU2LDI2IEBAIHByaXZhdGU6CiAgICAgdm9pZCAoUmVuZGVyU3R5
bGU6OiptX3NldHRlcikoVCk7CiB9OwogCi10ZW1wbGF0ZSA8R3JpZFRyYWNrU2l6aW5nRGlyZWN0
aW9uPgotY2xhc3MgR3JpZFRlbXBsYXRlVHJhY2tzV3JhcHBlciA6IHB1YmxpYyBBbmltYXRpb25Q
cm9wZXJ0eVdyYXBwZXJCYXNlIHsKK2NsYXNzIEdyaWRUZW1wbGF0ZVByb3BlcnR5V3JhcHBlciBm
aW5hbCA6IHB1YmxpYyBQcm9wZXJ0eVdyYXBwZXI8Y29uc3QgR3JpZFRyYWNrTGlzdCY+IHsKICAg
ICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKLSAgICBHcmlkVGVtcGxhdGVUcmFj
a3NXcmFwcGVyKCk7Ci0KLXByaXZhdGU6Ci0gICAgYm9vbCBjYW5JbnRlcnBvbGF0ZShjb25zdCBS
ZW5kZXJTdHlsZSYsIGNvbnN0IFJlbmRlclN0eWxlJiwgQ29tcG9zaXRlT3BlcmF0aW9uKSBjb25z
dCBmaW5hbCB7IHJldHVybiBmYWxzZTsgfQotCi0gICAgYm9vbCBlcXVhbHMoY29uc3QgUmVuZGVy
U3R5bGUmIGEsIGNvbnN0IFJlbmRlclN0eWxlJiBiKSBjb25zdCBvdmVycmlkZQorICAgIEdyaWRU
ZW1wbGF0ZVByb3BlcnR5V3JhcHBlcihDU1NQcm9wZXJ0eUlEIHByb3BlcnR5LCBjb25zdCBHcmlk
VHJhY2tMaXN0JiAoUmVuZGVyU3R5bGU6OipnZXR0ZXIpKCkgY29uc3QsIHZvaWQgKFJlbmRlclN0
eWxlOjoqc2V0dGVyKShjb25zdCBHcmlkVHJhY2tMaXN0JikpCisgICAgICAgIDogUHJvcGVydHlX
cmFwcGVyPGNvbnN0IEdyaWRUcmFja0xpc3QmPihwcm9wZXJ0eSwgZ2V0dGVyLCBzZXR0ZXIpCiAg
ICAgewotICAgICAgICByZXR1cm4gbV9ncmlkVHJhY2tzV3JhcHBlci5lcXVhbHMoYSwgYikgJiYg
bV9hdXRvUmVwZWF0VHJhY2tzV3JhcHBlci5lcXVhbHMoYSwgYikgJiYgbV9ncmlkQXV0b1JlcGVh
dFR5cGVUcmFja3NXcmFwcGVyLmVxdWFscyhhLCBiKSAmJiBtX2dyaWRBdXRvUmVwZWF0SW5zZXJ0
aW9uUG9pbnRUcmFja3NXcmFwcGVyLmVxdWFscyhhLCBiKSAmJiBtX29yZGVyZWROYW1lZEdyaWRM
aW5lc1RyYWNrc1dyYXBwZXIuZXF1YWxzKGEsIGIpICYmIG1fYXV0b1JlcGVhdE9yZGVyZWROYW1l
ZEdyaWRMaW5lc1RyYWNrc1dyYXBwZXIuZXF1YWxzKGEsIGIpOwogICAgIH0KIAorcHJpdmF0ZToK
ICAgICB2b2lkIGJsZW5kKFJlbmRlclN0eWxlJiBkZXN0aW5hdGlvbiwgY29uc3QgUmVuZGVyU3R5
bGUmIGZyb20sIGNvbnN0IFJlbmRlclN0eWxlJiB0bywgY29uc3QgQ1NTUHJvcGVydHlCbGVuZGlu
Z0NvbnRleHQmIGNvbnRleHQpIGNvbnN0IGZpbmFsCiAgICAgewotICAgICAgICBtX2dyaWRUcmFj
a3NXcmFwcGVyLmJsZW5kKGRlc3RpbmF0aW9uLCBmcm9tLCB0bywgY29udGV4dCk7Ci0gICAgICAg
IG1fYXV0b1JlcGVhdFRyYWNrc1dyYXBwZXIuYmxlbmQoZGVzdGluYXRpb24sIGZyb20sIHRvLCBj
b250ZXh0KTsKLSAgICAgICAgbV9ncmlkQXV0b1JlcGVhdFR5cGVUcmFja3NXcmFwcGVyLmJsZW5k
KGRlc3RpbmF0aW9uLCBmcm9tLCB0bywgY29udGV4dCk7Ci0gICAgICAgIG1fZ3JpZEF1dG9SZXBl
YXRJbnNlcnRpb25Qb2ludFRyYWNrc1dyYXBwZXIuYmxlbmQoZGVzdGluYXRpb24sIGZyb20sIHRv
LCBjb250ZXh0KTsKLSAgICAgICAgbV9vcmRlcmVkTmFtZWRHcmlkTGluZXNUcmFja3NXcmFwcGVy
LmJsZW5kKGRlc3RpbmF0aW9uLCBmcm9tLCB0bywgY29udGV4dCk7Ci0gICAgICAgIG1fYXV0b1Jl
cGVhdE9yZGVyZWROYW1lZEdyaWRMaW5lc1RyYWNrc1dyYXBwZXIuYmxlbmQoZGVzdGluYXRpb24s
IGZyb20sIHRvLCBjb250ZXh0KTsKKyAgICAgICAgKGRlc3RpbmF0aW9uLiptX3NldHRlcikoYmxl
bmRGdW5jKHRoaXMtPnZhbHVlKGZyb20pLCB0aGlzLT52YWx1ZSh0byksIGNvbnRleHQpKTsKICAg
ICB9CiAKLSNpZiAhTE9HX0RJU0FCTEVECi0gICAgdm9pZCBsb2dCbGVuZChjb25zdCBSZW5kZXJT
dHlsZSYgZnJvbSwgY29uc3QgUmVuZGVyU3R5bGUmIHRvLCBjb25zdCBSZW5kZXJTdHlsZSYgZGVz
dGluYXRpb24sIGRvdWJsZSBwcm9ncmVzcykgY29uc3QgZmluYWwKKyAgICBib29sIGNhbkludGVy
cG9sYXRlKGNvbnN0IFJlbmRlclN0eWxlJiwgY29uc3QgUmVuZGVyU3R5bGUmLCBDb21wb3NpdGVP
cGVyYXRpb24pIGNvbnN0IGZpbmFsCiAgICAgewotICAgICAgICBtX2dyaWRUcmFja3NXcmFwcGVy
LmxvZ0JsZW5kKGZyb20sIHRvLCBkZXN0aW5hdGlvbiwgcHJvZ3Jlc3MpOwotICAgICAgICBtX2F1
dG9SZXBlYXRUcmFja3NXcmFwcGVyLmxvZ0JsZW5kKGZyb20sIHRvLCBkZXN0aW5hdGlvbiwgcHJv
Z3Jlc3MpOwotICAgICAgICBtX2dyaWRBdXRvUmVwZWF0VHlwZVRyYWNrc1dyYXBwZXIubG9nQmxl
bmQoZnJvbSwgdG8sIGRlc3RpbmF0aW9uLCBwcm9ncmVzcyk7Ci0gICAgICAgIG1fZ3JpZEF1dG9S
ZXBlYXRJbnNlcnRpb25Qb2ludFRyYWNrc1dyYXBwZXIubG9nQmxlbmQoZnJvbSwgdG8sIGRlc3Rp
bmF0aW9uLCBwcm9ncmVzcyk7Ci0gICAgICAgIG1fb3JkZXJlZE5hbWVkR3JpZExpbmVzVHJhY2tz
V3JhcHBlci5sb2dCbGVuZChmcm9tLCB0bywgZGVzdGluYXRpb24sIHByb2dyZXNzKTsKLSAgICAg
ICAgbV9hdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZExpbmVzVHJhY2tzV3JhcHBlci5sb2dCbGVu
ZChmcm9tLCB0bywgZGVzdGluYXRpb24sIHByb2dyZXNzKTsKKyAgICAgICAgcmV0dXJuIGZhbHNl
OwogICAgIH0KLSNlbmRpZgotCi0gICAgRGlzY3JldGVQcm9wZXJ0eVdyYXBwZXI8Y29uc3QgVmVj
dG9yPEdyaWRUcmFja1NpemU+Jj4gbV9ncmlkVHJhY2tzV3JhcHBlcjsKLSAgICBEaXNjcmV0ZVBy
b3BlcnR5V3JhcHBlcjxjb25zdCBWZWN0b3I8R3JpZFRyYWNrU2l6ZT4mPiBtX2F1dG9SZXBlYXRU
cmFja3NXcmFwcGVyOwotICAgIERpc2NyZXRlUHJvcGVydHlXcmFwcGVyPEF1dG9SZXBlYXRUeXBl
PiBtX2dyaWRBdXRvUmVwZWF0VHlwZVRyYWNrc1dyYXBwZXI7Ci0gICAgRGlzY3JldGVQcm9wZXJ0
eVdyYXBwZXI8dW5zaWduZWQ+IG1fZ3JpZEF1dG9SZXBlYXRJbnNlcnRpb25Qb2ludFRyYWNrc1dy
YXBwZXI7Ci0gICAgRGlzY3JldGVQcm9wZXJ0eVdyYXBwZXI8Y29uc3QgT3JkZXJlZE5hbWVkR3Jp
ZExpbmVzTWFwJj4gbV9vcmRlcmVkTmFtZWRHcmlkTGluZXNUcmFja3NXcmFwcGVyOwotICAgIERp
c2NyZXRlUHJvcGVydHlXcmFwcGVyPGNvbnN0IE9yZGVyZWROYW1lZEdyaWRMaW5lc01hcCY+IG1f
YXV0b1JlcGVhdE9yZGVyZWROYW1lZEdyaWRMaW5lc1RyYWNrc1dyYXBwZXI7CiB9OwogCi10ZW1w
bGF0ZSA8PgotR3JpZFRlbXBsYXRlVHJhY2tzV3JhcHBlcjxGb3JDb2x1bW5zPjo6R3JpZFRlbXBs
YXRlVHJhY2tzV3JhcHBlcigpCi0gICAgOiBBbmltYXRpb25Qcm9wZXJ0eVdyYXBwZXJCYXNlKENT
U1Byb3BlcnR5R3JpZFRlbXBsYXRlQ29sdW1ucykKLSAgICAsIG1fZ3JpZFRyYWNrc1dyYXBwZXIo
RGlzY3JldGVQcm9wZXJ0eVdyYXBwZXI8Y29uc3QgVmVjdG9yPEdyaWRUcmFja1NpemU+Jj4oQ1NT
UHJvcGVydHlHcmlkVGVtcGxhdGVDb2x1bW5zLCAmUmVuZGVyU3R5bGU6OmdyaWRDb2x1bW5zLCAm
UmVuZGVyU3R5bGU6OnNldEdyaWRDb2x1bW5zKSkKLSAgICAsIG1fYXV0b1JlcGVhdFRyYWNrc1dy
YXBwZXIoRGlzY3JldGVQcm9wZXJ0eVdyYXBwZXI8Y29uc3QgVmVjdG9yPEdyaWRUcmFja1NpemU+
Jj4oQ1NTUHJvcGVydHlHcmlkVGVtcGxhdGVDb2x1bW5zLCAmUmVuZGVyU3R5bGU6OmdyaWRBdXRv
UmVwZWF0Q29sdW1ucywgJlJlbmRlclN0eWxlOjpzZXRHcmlkQXV0b1JlcGVhdENvbHVtbnMpKQot
ICAgICwgbV9ncmlkQXV0b1JlcGVhdFR5cGVUcmFja3NXcmFwcGVyKERpc2NyZXRlUHJvcGVydHlX
cmFwcGVyPEF1dG9SZXBlYXRUeXBlPihDU1NQcm9wZXJ0eUdyaWRUZW1wbGF0ZUNvbHVtbnMsICZS
ZW5kZXJTdHlsZTo6Z3JpZEF1dG9SZXBlYXRDb2x1bW5zVHlwZSwgJlJlbmRlclN0eWxlOjpzZXRH
cmlkQXV0b1JlcGVhdENvbHVtbnNUeXBlKSkKLSAgICAsIG1fZ3JpZEF1dG9SZXBlYXRJbnNlcnRp
b25Qb2ludFRyYWNrc1dyYXBwZXIoRGlzY3JldGVQcm9wZXJ0eVdyYXBwZXI8dW5zaWduZWQ+KENT
U1Byb3BlcnR5R3JpZFRlbXBsYXRlQ29sdW1ucywgJlJlbmRlclN0eWxlOjpncmlkQXV0b1JlcGVh
dENvbHVtbnNJbnNlcnRpb25Qb2ludCwgJlJlbmRlclN0eWxlOjpzZXRHcmlkQXV0b1JlcGVhdENv
bHVtbnNJbnNlcnRpb25Qb2ludCkpCi0gICAgLCBtX29yZGVyZWROYW1lZEdyaWRMaW5lc1RyYWNr
c1dyYXBwZXIoRGlzY3JldGVQcm9wZXJ0eVdyYXBwZXI8Y29uc3QgT3JkZXJlZE5hbWVkR3JpZExp
bmVzTWFwJj4oQ1NTUHJvcGVydHlHcmlkVGVtcGxhdGVDb2x1bW5zLCAmUmVuZGVyU3R5bGU6Om9y
ZGVyZWROYW1lZEdyaWRDb2x1bW5MaW5lcywgJlJlbmRlclN0eWxlOjpzZXRPcmRlcmVkTmFtZWRH
cmlkQ29sdW1uTGluZXMpKQotICAgICwgbV9hdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZExpbmVz
VHJhY2tzV3JhcHBlcihEaXNjcmV0ZVByb3BlcnR5V3JhcHBlcjxjb25zdCBPcmRlcmVkTmFtZWRH
cmlkTGluZXNNYXAmPihDU1NQcm9wZXJ0eUdyaWRUZW1wbGF0ZUNvbHVtbnMsICZSZW5kZXJTdHls
ZTo6YXV0b1JlcGVhdE9yZGVyZWROYW1lZEdyaWRDb2x1bW5MaW5lcywgJlJlbmRlclN0eWxlOjpz
ZXRBdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzKSkKLXsKLX0KLQotdGVtcGxh
dGUgPD4KLUdyaWRUZW1wbGF0ZVRyYWNrc1dyYXBwZXI8Rm9yUm93cz46OkdyaWRUZW1wbGF0ZVRy
YWNrc1dyYXBwZXIoKQotICAgIDogQW5pbWF0aW9uUHJvcGVydHlXcmFwcGVyQmFzZShDU1NQcm9w
ZXJ0eUdyaWRUZW1wbGF0ZVJvd3MpCi0gICAgLCBtX2dyaWRUcmFja3NXcmFwcGVyKERpc2NyZXRl
UHJvcGVydHlXcmFwcGVyPGNvbnN0IFZlY3RvcjxHcmlkVHJhY2tTaXplPiY+KENTU1Byb3BlcnR5
R3JpZFRlbXBsYXRlUm93cywgJlJlbmRlclN0eWxlOjpncmlkUm93cywgJlJlbmRlclN0eWxlOjpz
ZXRHcmlkUm93cykpCi0gICAgLCBtX2F1dG9SZXBlYXRUcmFja3NXcmFwcGVyKERpc2NyZXRlUHJv
cGVydHlXcmFwcGVyPGNvbnN0IFZlY3RvcjxHcmlkVHJhY2tTaXplPiY+KENTU1Byb3BlcnR5R3Jp
ZFRlbXBsYXRlUm93cywgJlJlbmRlclN0eWxlOjpncmlkQXV0b1JlcGVhdFJvd3MsICZSZW5kZXJT
dHlsZTo6c2V0R3JpZEF1dG9SZXBlYXRSb3dzKSkKLSAgICAsIG1fZ3JpZEF1dG9SZXBlYXRUeXBl
VHJhY2tzV3JhcHBlcihEaXNjcmV0ZVByb3BlcnR5V3JhcHBlcjxBdXRvUmVwZWF0VHlwZT4oQ1NT
UHJvcGVydHlHcmlkVGVtcGxhdGVSb3dzLCAmUmVuZGVyU3R5bGU6OmdyaWRBdXRvUmVwZWF0Um93
c1R5cGUsICZSZW5kZXJTdHlsZTo6c2V0R3JpZEF1dG9SZXBlYXRSb3dzVHlwZSkpCi0gICAgLCBt
X2dyaWRBdXRvUmVwZWF0SW5zZXJ0aW9uUG9pbnRUcmFja3NXcmFwcGVyKERpc2NyZXRlUHJvcGVy
dHlXcmFwcGVyPHVuc2lnbmVkPihDU1NQcm9wZXJ0eUdyaWRUZW1wbGF0ZVJvd3MsICZSZW5kZXJT
dHlsZTo6Z3JpZEF1dG9SZXBlYXRSb3dzSW5zZXJ0aW9uUG9pbnQsICZSZW5kZXJTdHlsZTo6c2V0
R3JpZEF1dG9SZXBlYXRSb3dzSW5zZXJ0aW9uUG9pbnQpKQotICAgICwgbV9vcmRlcmVkTmFtZWRH
cmlkTGluZXNUcmFja3NXcmFwcGVyKERpc2NyZXRlUHJvcGVydHlXcmFwcGVyPGNvbnN0IE9yZGVy
ZWROYW1lZEdyaWRMaW5lc01hcCY+KENTU1Byb3BlcnR5R3JpZFRlbXBsYXRlUm93cywgJlJlbmRl
clN0eWxlOjpvcmRlcmVkTmFtZWRHcmlkUm93TGluZXMsICZSZW5kZXJTdHlsZTo6c2V0T3JkZXJl
ZE5hbWVkR3JpZFJvd0xpbmVzKSkKLSAgICAsIG1fYXV0b1JlcGVhdE9yZGVyZWROYW1lZEdyaWRM
aW5lc1RyYWNrc1dyYXBwZXIoRGlzY3JldGVQcm9wZXJ0eVdyYXBwZXI8Y29uc3QgT3JkZXJlZE5h
bWVkR3JpZExpbmVzTWFwJj4oQ1NTUHJvcGVydHlHcmlkVGVtcGxhdGVSb3dzLCAmUmVuZGVyU3R5
bGU6OmF1dG9SZXBlYXRPcmRlcmVkTmFtZWRHcmlkUm93TGluZXMsICZSZW5kZXJTdHlsZTo6c2V0
QXV0b1JlcGVhdE9yZGVyZWROYW1lZEdyaWRSb3dMaW5lcykpCi17Ci19Ci0KIGNsYXNzIEJvcmRl
ckltYWdlUmVwZWF0V3JhcHBlciBmaW5hbCA6IHB1YmxpYyBBbmltYXRpb25Qcm9wZXJ0eVdyYXBw
ZXJCYXNlIHsKICAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKQEAgLTMxNzks
OCArMzEzNiw4IEBAIENTU1Byb3BlcnR5QW5pbWF0aW9uV3JhcHBlck1hcDo6Q1NTUHJvcGVydHlB
bmltYXRpb25XcmFwcGVyTWFwKCkKICAgICAgICAgbmV3IERpc2NyZXRlUHJvcGVydHlXcmFwcGVy
PGNvbnN0IFZlY3RvcjxHcmlkVHJhY2tTaXplPiY+KENTU1Byb3BlcnR5R3JpZEF1dG9Db2x1bW5z
LCAmUmVuZGVyU3R5bGU6OmdyaWRBdXRvQ29sdW1ucywgJlJlbmRlclN0eWxlOjpzZXRHcmlkQXV0
b0NvbHVtbnMpLAogICAgICAgICBuZXcgRGlzY3JldGVQcm9wZXJ0eVdyYXBwZXI8R3JpZEF1dG9G
bG93PihDU1NQcm9wZXJ0eUdyaWRBdXRvRmxvdywgJlJlbmRlclN0eWxlOjpncmlkQXV0b0Zsb3cs
ICZSZW5kZXJTdHlsZTo6c2V0R3JpZEF1dG9GbG93KSwKICAgICAgICAgbmV3IERpc2NyZXRlUHJv
cGVydHlXcmFwcGVyPGNvbnN0IFZlY3RvcjxHcmlkVHJhY2tTaXplPiY+KENTU1Byb3BlcnR5R3Jp
ZEF1dG9Sb3dzLCAmUmVuZGVyU3R5bGU6OmdyaWRBdXRvUm93cywgJlJlbmRlclN0eWxlOjpzZXRH
cmlkQXV0b1Jvd3MpLAotICAgICAgICBuZXcgR3JpZFRlbXBsYXRlVHJhY2tzV3JhcHBlcjxGb3JD
b2x1bW5zPiwKLSAgICAgICAgbmV3IEdyaWRUZW1wbGF0ZVRyYWNrc1dyYXBwZXI8Rm9yUm93cz4s
CisgICAgICAgIG5ldyBHcmlkVGVtcGxhdGVQcm9wZXJ0eVdyYXBwZXIoQ1NTUHJvcGVydHlHcmlk
VGVtcGxhdGVSb3dzLCAmUmVuZGVyU3R5bGU6OmdyaWRSb3dMaXN0LCAmUmVuZGVyU3R5bGU6OnNl
dEdyaWRSb3dMaXN0KSwKKyAgICAgICAgbmV3IEdyaWRUZW1wbGF0ZVByb3BlcnR5V3JhcHBlcihD
U1NQcm9wZXJ0eUdyaWRUZW1wbGF0ZUNvbHVtbnMsICZSZW5kZXJTdHlsZTo6Z3JpZENvbHVtbkxp
c3QsICZSZW5kZXJTdHlsZTo6c2V0R3JpZENvbHVtbkxpc3QpLAogICAgICAgICBuZXcgRGlzY3Jl
dGVQcm9wZXJ0eVdyYXBwZXI8Y29uc3QgR3JpZFBvc2l0aW9uJj4oQ1NTUHJvcGVydHlHcmlkQ29s
dW1uRW5kLCAmUmVuZGVyU3R5bGU6OmdyaWRJdGVtQ29sdW1uRW5kLCAmUmVuZGVyU3R5bGU6OnNl
dEdyaWRJdGVtQ29sdW1uRW5kKSwKICAgICAgICAgbmV3IERpc2NyZXRlUHJvcGVydHlXcmFwcGVy
PGNvbnN0IEdyaWRQb3NpdGlvbiY+KENTU1Byb3BlcnR5R3JpZENvbHVtblN0YXJ0LCAmUmVuZGVy
U3R5bGU6OmdyaWRJdGVtQ29sdW1uU3RhcnQsICZSZW5kZXJTdHlsZTo6c2V0R3JpZEl0ZW1Db2x1
bW5TdGFydCksCiAgICAgICAgIG5ldyBEaXNjcmV0ZVByb3BlcnR5V3JhcHBlcjxjb25zdCBHcmlk
UG9zaXRpb24mPihDU1NQcm9wZXJ0eUdyaWRSb3dFbmQsICZSZW5kZXJTdHlsZTo6Z3JpZEl0ZW1S
b3dFbmQsICZSZW5kZXJTdHlsZTo6c2V0R3JpZEl0ZW1Sb3dFbmQpLApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcAppbmRleCAwYjU3YTFm
MjZkMGE1ZWIyY2I1YWIzZTkwZjJjNjliOWI4YTViMzliLi41OTE3ODczMGJlYTdmMjgzMTA1YWRh
NTQ5OWFlMDQ2NzQ0NGM5YjZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29t
cHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29t
cHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcApAQCAtMzUsNiArMzUsNyBAQAogI2luY2x1ZGUgIkNT
U0ZvbnRWYXJpYXRpb25WYWx1ZS5oIgogI2luY2x1ZGUgIkNTU0Z1bmN0aW9uVmFsdWUuaCIKICNp
bmNsdWRlICJDU1NHcmlkQXV0b1JlcGVhdFZhbHVlLmgiCisjaW5jbHVkZSAiQ1NTR3JpZEludGVn
ZXJSZXBlYXRWYWx1ZS5oIgogI2luY2x1ZGUgIkNTU0xpbmVCb3hDb250YWluVmFsdWUuaCIKICNp
bmNsdWRlICJDU1NQcmltaXRpdmVWYWx1ZS5oIgogI2luY2x1ZGUgIkNTU1ByaW1pdGl2ZVZhbHVl
TWFwcGluZ3MuaCIKQEAgLTg1NSw3ICs4NTYsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB+T3Jk
ZXJlZE5hbWVkTGluZXNDb2xsZWN0b3IoKSA9IGRlZmF1bHQ7CiAKICAgICBib29sIGlzRW1wdHko
KSBjb25zdCB7IHJldHVybiBtX29yZGVyZWROYW1lZEdyaWRMaW5lcy5pc0VtcHR5KCkgJiYgbV9v
cmRlcmVkTmFtZWRBdXRvUmVwZWF0R3JpZExpbmVzLmlzRW1wdHkoKTsgfQotICAgIHZpcnR1YWwg
dm9pZCBjb2xsZWN0TGluZU5hbWVzRm9ySW5kZXgoQ1NTR3JpZExpbmVOYW1lc1ZhbHVlJiwgdW5z
aWduZWQgaW5kZXgpIGNvbnN0OworICAgIHZpcnR1YWwgdm9pZCBjb2xsZWN0TGluZU5hbWVzRm9y
SW5kZXgoQ1NTR3JpZExpbmVOYW1lc1ZhbHVlJiwgdW5zaWduZWQgaW5kZXgpIGNvbnN0ID0gMDsK
IAogICAgIHZpcnR1YWwgaW50IG5hbWVkR3JpZExpbmVDb3VudCgpIGNvbnN0IHsgcmV0dXJuIG1f
b3JkZXJlZE5hbWVkR3JpZExpbmVzLnNpemUoKTsgfQogCkBAIC04NjgsMTggKzg2OSw2IEBAIHBy
b3RlY3RlZDoKICAgICBjb25zdCBPcmRlcmVkTmFtZWRHcmlkTGluZXNNYXAmIG1fb3JkZXJlZE5h
bWVkQXV0b1JlcGVhdEdyaWRMaW5lczsKIH07CiAKLWNsYXNzIE9yZGVyZWROYW1lZExpbmVzQ29s
bGVjdG9ySW5zaWRlUmVwZWF0IDogcHVibGljIE9yZGVyZWROYW1lZExpbmVzQ29sbGVjdG9yIHsK
LXB1YmxpYzoKLSAgICBPcmRlcmVkTmFtZWRMaW5lc0NvbGxlY3Rvckluc2lkZVJlcGVhdChjb25z
dCBSZW5kZXJTdHlsZSYgc3R5bGUsIGJvb2wgaXNSb3dBeGlzKQotICAgICAgICA6IE9yZGVyZWRO
YW1lZExpbmVzQ29sbGVjdG9yKHN0eWxlLCBpc1Jvd0F4aXMpCi0gICAgewotICAgIH0KLQotICAg
IHZvaWQgY29sbGVjdExpbmVOYW1lc0ZvckluZGV4KENTU0dyaWRMaW5lTmFtZXNWYWx1ZSYsIHVu
c2lnbmVkIGluZGV4KSBjb25zdCBvdmVycmlkZTsKLQotICAgIGludCBuYW1lZEdyaWRMaW5lQ291
bnQoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBtX29yZGVyZWROYW1lZEF1dG9SZXBlYXRHcmlk
TGluZXMuc2l6ZSgpOyB9Ci19OwotCiBjbGFzcyBPcmRlcmVkTmFtZWRMaW5lc0NvbGxlY3Rvcklu
R3JpZExheW91dCA6IHB1YmxpYyBPcmRlcmVkTmFtZWRMaW5lc0NvbGxlY3RvciB7CiBwdWJsaWM6
CiAgICAgT3JkZXJlZE5hbWVkTGluZXNDb2xsZWN0b3JJbkdyaWRMYXlvdXQoY29uc3QgUmVuZGVy
U3R5bGUmIHN0eWxlLCBib29sIGlzUm93QXhpcywgdW5zaWduZWQgYXV0b1JlcGVhdFRyYWNrc0Nv
dW50LCB1bnNpZ25lZCBhdXRvUmVwZWF0VHJhY2tMaXN0TGVuZ3RoKQpAQCAtOTQxLDE4ICs5MzAs
NiBAQCB2b2lkIE9yZGVyZWROYW1lZExpbmVzQ29sbGVjdG9yOjphcHBlbmRMaW5lcyhDU1NHcmlk
TGluZU5hbWVzVmFsdWUmIGxpbmVOYW1lc1ZhbAogICAgICAgICBsaW5lTmFtZXNWYWx1ZS5hcHBl
bmQoY3NzVmFsdWVQb29sLmNyZWF0ZUN1c3RvbUlkZW50KGxpbmVOYW1lKSk7CiB9CiAKLXZvaWQg
T3JkZXJlZE5hbWVkTGluZXNDb2xsZWN0b3I6OmNvbGxlY3RMaW5lTmFtZXNGb3JJbmRleChDU1NH
cmlkTGluZU5hbWVzVmFsdWUmIGxpbmVOYW1lc1ZhbHVlLCB1bnNpZ25lZCBpKSBjb25zdAotewot
ICAgIEFTU0VSVCghaXNFbXB0eSgpKTsKLSAgICBhcHBlbmRMaW5lcyhsaW5lTmFtZXNWYWx1ZSwg
aSwgTmFtZWRMaW5lcyk7Ci19Ci0KLXZvaWQgT3JkZXJlZE5hbWVkTGluZXNDb2xsZWN0b3JJbnNp
ZGVSZXBlYXQ6OmNvbGxlY3RMaW5lTmFtZXNGb3JJbmRleChDU1NHcmlkTGluZU5hbWVzVmFsdWUm
IGxpbmVOYW1lc1ZhbHVlLCB1bnNpZ25lZCBpKSBjb25zdAotewotICAgIEFTU0VSVCghaXNFbXB0
eSgpKTsKLSAgICBhcHBlbmRMaW5lcyhsaW5lTmFtZXNWYWx1ZSwgaSwgQXV0b1JlcGVhdE5hbWVk
TGluZXMpOwotfQotCiB2b2lkIE9yZGVyZWROYW1lZExpbmVzQ29sbGVjdG9ySW5HcmlkTGF5b3V0
Ojpjb2xsZWN0TGluZU5hbWVzRm9ySW5kZXgoQ1NTR3JpZExpbmVOYW1lc1ZhbHVlJiBsaW5lTmFt
ZXNWYWx1ZSwgdW5zaWduZWQgaSkgY29uc3QKIHsKICAgICBBU1NFUlQoIWlzRW1wdHkoKSk7CkBA
IC0xMDI0LDkgKzEwMDEsMTAgQEAgc3RhdGljIFJlZjxDU1NWYWx1ZUxpc3Q+IHZhbHVlRm9yR3Jp
ZFRyYWNrU2l6ZUxpc3QoR3JpZFRyYWNrU2l6aW5nRGlyZWN0aW9uIGRpcmUKIH0KIAogdGVtcGxh
dGUgPHR5cGVuYW1lIFQsIHR5cGVuYW1lIEY+Ci12b2lkIHBvcHVsYXRlR3JpZFRyYWNrTGlzdChD
U1NWYWx1ZUxpc3QmIGxpc3QsIE9yZGVyZWROYW1lZExpbmVzQ29sbGVjdG9yJiBjb2xsZWN0b3Is
IGNvbnN0IFZlY3RvcjxUPiYgdHJhY2tzLCBGIGdldFRyYWNrU2l6ZSwgaW50IHN0YXJ0LCBpbnQg
ZW5kLCBpbnQgb2Zmc2V0ID0gMCkKK3ZvaWQgcG9wdWxhdGVHcmlkVHJhY2tMaXN0KENTU1ZhbHVl
TGlzdCYgbGlzdCwgT3JkZXJlZE5hbWVkTGluZXNDb2xsZWN0b3ImIGNvbGxlY3RvciwgY29uc3Qg
VmVjdG9yPFQ+JiB0cmFja3MsIEYgZ2V0VHJhY2tTaXplLCBpbnQgb2Zmc2V0ID0gMCkKIHsKLSAg
ICBBU1NFUlQoMCA8PSBzdGFydCk7CisgICAgaW50IHN0YXJ0ID0gMDsKKyAgICBpbnQgZW5kID0g
dHJhY2tzLnNpemUoKTsKICAgICBBU1NFUlQoc3RhcnQgPD0gZW5kKTsKICAgICBBU1NFUlQoc3Rh
dGljX2Nhc3Q8dW5zaWduZWQ+KGVuZCkgPD0gdHJhY2tzLnNpemUoKSk7CiAgICAgZm9yIChpbnQg
aSA9IHN0YXJ0OyBpIDwgZW5kOyArK2kpIHsKQEAgLTEwMzgsMjEgKzEwMTYsMTAgQEAgdm9pZCBw
b3B1bGF0ZUdyaWRUcmFja0xpc3QoQ1NTVmFsdWVMaXN0JiBsaXN0LCBPcmRlcmVkTmFtZWRMaW5l
c0NvbGxlY3RvciYgY29sbGUKICAgICAgICAgYWRkVmFsdWVzRm9yTmFtZWRHcmlkTGluZXNBdElu
ZGV4KGNvbGxlY3RvciwgZW5kICsgb2Zmc2V0LCBsaXN0KTsKIH0KIAotdGVtcGxhdGUgPHR5cGVu
YW1lIFQsIHR5cGVuYW1lIEY+Ci12b2lkIHBvcHVsYXRlR3JpZFRyYWNrTGlzdChDU1NWYWx1ZUxp
c3QmIGxpc3QsIE9yZGVyZWROYW1lZExpbmVzQ29sbGVjdG9yJiBjb2xsZWN0b3IsIGNvbnN0IFZl
Y3RvcjxUPiYgdHJhY2tzLCBGIGdldFRyYWNrU2l6ZSwgaW50IG9mZnNldCA9IDApCi17Ci0gICAg
cG9wdWxhdGVHcmlkVHJhY2tMaXN0PFQ+KGxpc3QsIGNvbGxlY3RvciwgdHJhY2tzLCBnZXRUcmFj
a1NpemUsIDAsIHRyYWNrcy5zaXplKCksIG9mZnNldCk7Ci19Ci0KLXN0YXRpYyB2b2lkIHBvcHVs
YXRlU3ViZ3JpZExpbmVOYW1lTGlzdChDU1NWYWx1ZUxpc3QmIGxpc3QsIE9yZGVyZWROYW1lZExp
bmVzQ29sbGVjdG9yJiBjb2xsZWN0b3IsIGludCBzdGFydCwgaW50IGVuZCkKLXsKLSAgICBmb3Ig
KGludCBpID0gc3RhcnQ7IGkgPCBlbmQ7IGkrKykKLSAgICAgICAgYWRkVmFsdWVzRm9yTmFtZWRH
cmlkTGluZXNBdEluZGV4KGNvbGxlY3RvciwgaSwgbGlzdCwgdHJ1ZSk7Ci19Ci0KIHN0YXRpYyB2
b2lkIHBvcHVsYXRlU3ViZ3JpZExpbmVOYW1lTGlzdChDU1NWYWx1ZUxpc3QmIGxpc3QsIE9yZGVy
ZWROYW1lZExpbmVzQ29sbGVjdG9yJiBjb2xsZWN0b3IpCiB7Ci0gICAgcG9wdWxhdGVTdWJncmlk
TGluZU5hbWVMaXN0KGxpc3QsIGNvbGxlY3RvciwgMCwgY29sbGVjdG9yLm5hbWVkR3JpZExpbmVD
b3VudCgpKTsKKyAgICBmb3IgKGludCBpID0gMDsgaSA8IGNvbGxlY3Rvci5uYW1lZEdyaWRMaW5l
Q291bnQoKTsgaSsrKQorICAgICAgICBhZGRWYWx1ZXNGb3JOYW1lZEdyaWRMaW5lc0F0SW5kZXgo
Y29sbGVjdG9yLCBpLCBsaXN0LCB0cnVlKTsKIH0KIAogc3RhdGljIFJlZjxDU1NWYWx1ZT4gdmFs
dWVGb3JHcmlkVHJhY2tMaXN0KEdyaWRUcmFja1NpemluZ0RpcmVjdGlvbiBkaXJlY3Rpb24sIFJl
bmRlck9iamVjdCogcmVuZGVyZXIsIGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZSkKQEAgLTEwNzcs
OCArMTA0NCw2IEBAIHN0YXRpYyBSZWY8Q1NTVmFsdWU+IHZhbHVlRm9yR3JpZFRyYWNrTGlzdChH
cmlkVHJhY2tTaXppbmdEaXJlY3Rpb24gZGlyZWN0aW9uLCBSCiAgICAgICAgIHJldHVybiBDU1NW
YWx1ZVBvb2w6OnNpbmdsZXRvbigpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZU5vbmUp
OwogCiAgICAgYXV0byBsaXN0ID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVTcGFjZVNlcGFyYXRlZCgp
OwotICAgIGlmIChpc1N1YmdyaWQpCi0gICAgICAgIGxpc3QtPmFwcGVuZChDU1NWYWx1ZVBvb2w6
OnNpbmdsZXRvbigpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZVN1YmdyaWQpKTsKIAog
ICAgIC8vIElmIHRoZSBlbGVtZW50IGlzIGEgZ3JpZCBjb250YWluZXIsIHRoZSByZXNvbHZlZCB2
YWx1ZSBpcyB0aGUgdXNlZCB2YWx1ZSwKICAgICAvLyBzcGVjaWZ5aW5nIHRyYWNrIHNpemVzIGlu
IHBpeGVscyBhbmQgZXhwYW5kaW5nIHRoZSByZXBlYXQoKSBub3RhdGlvbi4KQEAgLTEwODcsNiAr
MTA1Miw4IEBAIHN0YXRpYyBSZWY8Q1NTVmFsdWU+IHZhbHVlRm9yR3JpZFRyYWNrTGlzdChHcmlk
VHJhY2tTaXppbmdEaXJlY3Rpb24gZGlyZWN0aW9uLCBSCiAgICAgaWYgKGlzUmVuZGVyR3JpZCAm
JiAoIWlzU3ViZ3JpZCB8fCBkb3duY2FzdDxSZW5kZXJHcmlkPihyZW5kZXJlciktPmlzU3ViZ3Jp
ZChkaXJlY3Rpb24pKSkgewogICAgICAgICBhdXRvKiBncmlkID0gZG93bmNhc3Q8UmVuZGVyR3Jp
ZD4ocmVuZGVyZXIpOwogICAgICAgICBpZiAoaXNTdWJncmlkKSB7CisgICAgICAgICAgICBsaXN0
LT5hcHBlbmQoQ1NTVmFsdWVQb29sOjpzaW5nbGV0b24oKS5jcmVhdGVJZGVudGlmaWVyVmFsdWUo
Q1NTVmFsdWVTdWJncmlkKSk7CisKICAgICAgICAgICAgIE9yZGVyZWROYW1lZExpbmVzQ29sbGVj
dG9ySW5TdWJncmlkTGF5b3V0IGNvbGxlY3RvcihzdHlsZSwgaXNSb3dBeGlzLCBncmlkLT5udW1U
cmFja3MoZGlyZWN0aW9uKSk7CiAgICAgICAgICAgICBwb3B1bGF0ZVN1YmdyaWRMaW5lTmFtZUxp
c3QobGlzdC5nZXQoKSwgY29sbGVjdG9yKTsKICAgICAgICAgICAgIHJldHVybiBsaXN0OwpAQCAt
MTEwMiw1NCArMTA2OSw0MyBAQCBzdGF0aWMgUmVmPENTU1ZhbHVlPiB2YWx1ZUZvckdyaWRUcmFj
a0xpc3QoR3JpZFRyYWNrU2l6aW5nRGlyZWN0aW9uIGRpcmVjdGlvbiwgUgogICAgIH0KIAogICAg
IC8vIE90aGVyd2lzZSwgdGhlIHJlc29sdmVkIHZhbHVlIGlzIHRoZSBjb21wdXRlZCB2YWx1ZSwg
cHJlc2VydmluZyByZXBlYXQoKS4KLSAgICBPcmRlcmVkTmFtZWRMaW5lc0NvbGxlY3RvciBjb2xs
ZWN0b3Ioc3R5bGUsIGlzUm93QXhpcyk7Ci0gICAgYXV0byBnZXRUcmFja1NpemUgPSBbJl0oY29u
c3QgR3JpZFRyYWNrU2l6ZSYgdikgewotICAgICAgICByZXR1cm4gc3BlY2lmaWVkVmFsdWVGb3JH
cmlkVHJhY2tTaXplKHYsIHN0eWxlKTsKLSAgICB9OwotCi0gICAgT3JkZXJlZE5hbWVkTGluZXND
b2xsZWN0b3JJbnNpZGVSZXBlYXQgcmVwZWF0Q29sbGVjdG9yKHN0eWxlLCBpc1Jvd0F4aXMpOwot
ICAgIGlmIChpc1N1YmdyaWQpIHsKLSAgICAgICAgaWYgKCFyZXBlYXRDb2xsZWN0b3IubmFtZWRH
cmlkTGluZUNvdW50KCkpIHsKLSAgICAgICAgICAgIHBvcHVsYXRlU3ViZ3JpZExpbmVOYW1lTGlz
dChsaXN0LmdldCgpLCBjb2xsZWN0b3IpOwotICAgICAgICAgICAgcmV0dXJuIGxpc3Q7CisgICAg
Y29uc3QgR3JpZFRyYWNrTGlzdCYgY29tcHV0ZWRUcmFja3MgPSBpc1Jvd0F4aXMgPyBzdHlsZS5n
cmlkQ29sdW1uTGlzdCgpIDogc3R5bGUuZ3JpZFJvd0xpc3QoKTsKKworICAgIGF1dG8gcmVwZWF0
VmlzaXRvciA9IFsmXShDU1NWYWx1ZUxpc3QmIGRlc3QsIGNvbnN0IFJlcGVhdEVudHJ5JiBlbnRy
eSkgeworICAgICAgICBpZiAoc3RkOjpob2xkc19hbHRlcm5hdGl2ZTxWZWN0b3I8U3RyaW5nPj4o
ZW50cnkpKSB7CisgICAgICAgICAgICBhdXRvIGxpbmVOYW1lc1ZhbHVlID0gQ1NTR3JpZExpbmVO
YW1lc1ZhbHVlOjpjcmVhdGUoKTsKKyAgICAgICAgICAgIGZvciAoY29uc3QgYXV0byYgbmFtZSA6
IHN0ZDo6Z2V0PFZlY3RvcjxTdHJpbmc+PihlbnRyeSkpCisgICAgICAgICAgICAgICAgbGluZU5h
bWVzVmFsdWUtPmFwcGVuZChDU1NWYWx1ZVBvb2w6OnNpbmdsZXRvbigpLmNyZWF0ZUN1c3RvbUlk
ZW50KG5hbWUpKTsKKyAgICAgICAgICAgIGRlc3QuYXBwZW5kKGxpbmVOYW1lc1ZhbHVlKTsKKyAg
ICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGRlc3QuYXBwZW5kKHNwZWNpZmllZFZhbHVlRm9y
R3JpZFRyYWNrU2l6ZShzdGQ6OmdldDxHcmlkVHJhY2tTaXplPihlbnRyeSksIHN0eWxlKSk7CiAg
ICAgICAgIH0KKyAgICB9OwogCi0gICAgICAgIC8vIEFkZCB0aGUgbGluZSBuYW1lcyB0aGF0IHBy
ZWNlZGUgdGhlIGF1dG8gcmVwZWF0KCkuCi0gICAgICAgIGludCBhdXRvUmVwZWF0SW5zZXJ0aW9u
UG9pbnQgPSBpc1Jvd0F4aXMgPyBzdHlsZS5ncmlkQXV0b1JlcGVhdENvbHVtbnNJbnNlcnRpb25Q
b2ludCgpIDogc3R5bGUuZ3JpZEF1dG9SZXBlYXRSb3dzSW5zZXJ0aW9uUG9pbnQoKTsKLSAgICAg
ICAgYXV0b1JlcGVhdEluc2VydGlvblBvaW50ID0gc3RkOjpjbGFtcDxpbnQ+KGF1dG9SZXBlYXRJ
bnNlcnRpb25Qb2ludCwgMCwgY29sbGVjdG9yLm5hbWVkR3JpZExpbmVDb3VudCgpKTsKLSAgICAg
ICAgcG9wdWxhdGVTdWJncmlkTGluZU5hbWVMaXN0KGxpc3QuZ2V0KCksIGNvbGxlY3RvciwgMCwg
YXV0b1JlcGVhdEluc2VydGlvblBvaW50KTsKLQotICAgICAgICAvLyBBZGQgYSBDU1NHcmlkQXV0
b1JlcGVhdFZhbHVlIHdpdGggdGhlIGNvbnRlbnRzIG9mIHRoZSBhdXRvIHJlcGVhdCgpLgotICAg
ICAgICBBU1NFUlQoKGlzUm93QXhpcyA/IHN0eWxlLmdyaWRBdXRvUmVwZWF0Q29sdW1uc1R5cGUo
KSA6IHN0eWxlLmdyaWRBdXRvUmVwZWF0Um93c1R5cGUoKSkgPT0gQXV0b1JlcGVhdFR5cGU6OkZp
bGwpOwotICAgICAgICBhdXRvIHJlcGVhdGVkVmFsdWVzID0gQ1NTR3JpZEF1dG9SZXBlYXRWYWx1
ZTo6Y3JlYXRlKENTU1ZhbHVlQXV0b0ZpbGwpOwotICAgICAgICBwb3B1bGF0ZVN1YmdyaWRMaW5l
TmFtZUxpc3QocmVwZWF0ZWRWYWx1ZXMuZ2V0KCksIHJlcGVhdENvbGxlY3Rvcik7Ci0gICAgICAg
IGxpc3QtPmFwcGVuZChyZXBlYXRlZFZhbHVlcy5nZXQoKSk7Ci0KLSAgICAgICAgLy8gQWRkIHRo
ZSBsaW5lIG5hbWVzIHRoYXQgZm9sbG93IHRoZSBhdXRvIHJlcGVhdCgpLgotICAgICAgICBwb3B1
bGF0ZVN1YmdyaWRMaW5lTmFtZUxpc3QobGlzdC5nZXQoKSwgY29sbGVjdG9yLCBhdXRvUmVwZWF0
SW5zZXJ0aW9uUG9pbnQsIGNvbGxlY3Rvci5uYW1lZEdyaWRMaW5lQ291bnQoKSk7Ci0gICAgICAg
IHJldHVybiBsaXN0OwotICAgIH0KLQotICAgIGlmIChhdXRvUmVwZWF0VHJhY2tTaXplcy5pc0Vt
cHR5KCkpIHsKLSAgICAgICAgLy8gSWYgdGhlcmUncyBubyBhdXRvIHJlcGVhdCgpLCBqdXN0IGFk
ZCBhbGwgdGhlIGxpbmUgbmFtZXMgYW5kIHRyYWNrIHNpemVzLgotICAgICAgICBwb3B1bGF0ZUdy
aWRUcmFja0xpc3QobGlzdC5nZXQoKSwgY29sbGVjdG9yLCB0cmFja1NpemVzLCBnZXRUcmFja1Np
emUpOwotICAgICAgICByZXR1cm4gbGlzdDsKLSAgICB9Ci0KLSAgICAvLyBBZGQgdGhlIGxpbmUg
bmFtZXMgYW5kIHRyYWNrIHNpemVzIHRoYXQgcHJlY2VkZSB0aGUgYXV0byByZXBlYXQoKS4KLSAg
ICBpbnQgYXV0b1JlcGVhdEluc2VydGlvblBvaW50ID0gaXNSb3dBeGlzID8gc3R5bGUuZ3JpZEF1
dG9SZXBlYXRDb2x1bW5zSW5zZXJ0aW9uUG9pbnQoKSA6IHN0eWxlLmdyaWRBdXRvUmVwZWF0Um93
c0luc2VydGlvblBvaW50KCk7Ci0gICAgYXV0b1JlcGVhdEluc2VydGlvblBvaW50ID0gc3RkOjpj
bGFtcDxpbnQ+KGF1dG9SZXBlYXRJbnNlcnRpb25Qb2ludCwgMCwgdHJhY2tTaXplcy5zaXplKCkp
OwotICAgIHBvcHVsYXRlR3JpZFRyYWNrTGlzdChsaXN0LmdldCgpLCBjb2xsZWN0b3IsIHRyYWNr
U2l6ZXMsIGdldFRyYWNrU2l6ZSwgMCwgYXV0b1JlcGVhdEluc2VydGlvblBvaW50KTsKLQotICAg
IC8vIEFkZCBhIENTU0dyaWRBdXRvUmVwZWF0VmFsdWUgd2l0aCB0aGUgY29udGVudHMgb2YgdGhl
IGF1dG8gcmVwZWF0KCkuCi0gICAgQXV0b1JlcGVhdFR5cGUgYXV0b1JlcGVhdFR5cGUgPSBpc1Jv
d0F4aXMgPyBzdHlsZS5ncmlkQXV0b1JlcGVhdENvbHVtbnNUeXBlKCkgOiBzdHlsZS5ncmlkQXV0
b1JlcGVhdFJvd3NUeXBlKCk7Ci0gICAgYXV0byByZXBlYXRlZFZhbHVlcyA9IENTU0dyaWRBdXRv
UmVwZWF0VmFsdWU6OmNyZWF0ZShhdXRvUmVwZWF0VHlwZSA9PSBBdXRvUmVwZWF0VHlwZTo6Rmls
bCA/IENTU1ZhbHVlQXV0b0ZpbGwgOiBDU1NWYWx1ZUF1dG9GaXQpOworICAgIGF1dG8gdHJhY2tF
bnRyeVZpc2l0b3IgPSBXVEY6Om1ha2VWaXNpdG9yKFsmXShjb25zdCBHcmlkVHJhY2tTaXplJiBz
aXplKSB7CisgICAgICAgIGxpc3QtPmFwcGVuZChzcGVjaWZpZWRWYWx1ZUZvckdyaWRUcmFja1Np
emUoc2l6ZSwgc3R5bGUpKTsKKyAgICB9LCBbJl0oY29uc3QgVmVjdG9yPFN0cmluZz4mIG5hbWVz
KSB7CisgICAgICAgIGF1dG8gbGluZU5hbWVzVmFsdWUgPSBDU1NHcmlkTGluZU5hbWVzVmFsdWU6
OmNyZWF0ZSgpOworICAgICAgICBmb3IgKGNvbnN0IGF1dG8mIG5hbWUgOiBuYW1lcykKKyAgICAg
ICAgICAgIGxpbmVOYW1lc1ZhbHVlLT5hcHBlbmQoQ1NTVmFsdWVQb29sOjpzaW5nbGV0b24oKS5j
cmVhdGVDdXN0b21JZGVudChuYW1lKSk7CisgICAgICAgIGxpc3QtPmFwcGVuZChsaW5lTmFtZXNW
YWx1ZSk7CisgICAgfSwgWyZdKGNvbnN0IEdyaWRUcmFja0VudHJ5UmVwZWF0JiByZXBlYXQpIHsK
KyAgICAgICAgYXV0byByZXBlYXRlZFZhbHVlcyA9IENTU0dyaWRJbnRlZ2VyUmVwZWF0VmFsdWU6
OmNyZWF0ZShyZXBlYXQucmVwZWF0cyk7CisgICAgICAgIGZvciAoY29uc3QgYXV0byYgZW50cnkg
OiByZXBlYXQubGlzdCkKKyAgICAgICAgICAgIHJlcGVhdFZpc2l0b3IocmVwZWF0ZWRWYWx1ZXMs
IGVudHJ5KTsKKyAgICAgICAgbGlzdC0+YXBwZW5kKHJlcGVhdGVkVmFsdWVzKTsKKyAgICB9LCBb
Jl0oY29uc3QgR3JpZFRyYWNrRW50cnlBdXRvUmVwZWF0JiByZXBlYXQpIHsKKyAgICAgICAgYXV0
byByZXBlYXRlZFZhbHVlcyA9IENTU0dyaWRBdXRvUmVwZWF0VmFsdWU6OmNyZWF0ZShyZXBlYXQu
dHlwZSA9PSBBdXRvUmVwZWF0VHlwZTo6RmlsbCA/IENTU1ZhbHVlQXV0b0ZpbGwgOiBDU1NWYWx1
ZUF1dG9GaXQpOworICAgICAgICBmb3IgKGNvbnN0IGF1dG8mIGVudHJ5IDogcmVwZWF0Lmxpc3Qp
CisgICAgICAgICAgICByZXBlYXRWaXNpdG9yKHJlcGVhdGVkVmFsdWVzLCBlbnRyeSk7CisgICAg
ICAgIGxpc3QtPmFwcGVuZChyZXBlYXRlZFZhbHVlcyk7CisgICAgfSwgWyZdKGNvbnN0IEdyaWRU
cmFja0VudHJ5U3ViZ3JpZCYpIHsKKyAgICAgICAgbGlzdC0+YXBwZW5kKENTU1ZhbHVlUG9vbDo6
c2luZ2xldG9uKCkuY3JlYXRlSWRlbnRpZmllclZhbHVlKENTU1ZhbHVlU3ViZ3JpZCkpOworICAg
IH0pOwogCi0gICAgcG9wdWxhdGVHcmlkVHJhY2tMaXN0KHJlcGVhdGVkVmFsdWVzLmdldCgpLCBy
ZXBlYXRDb2xsZWN0b3IsIGF1dG9SZXBlYXRUcmFja1NpemVzLCBnZXRUcmFja1NpemUpOwotICAg
IGxpc3QtPmFwcGVuZChyZXBlYXRlZFZhbHVlcy5nZXQoKSk7CisgICAgZm9yIChjb25zdCBhdXRv
JiBlbnRyeSA6IGNvbXB1dGVkVHJhY2tzKQorICAgICAgICBzdGQ6OnZpc2l0KHRyYWNrRW50cnlW
aXNpdG9yLCBlbnRyeSk7CiAKLSAgICAvLyBBZGQgdGhlIGxpbmUgbmFtZXMgYW5kIHRyYWNrIHNp
emVzIHRoYXQgZm9sbG93IHRoZSBhdXRvIHJlcGVhdCgpLgotICAgIHBvcHVsYXRlR3JpZFRyYWNr
TGlzdChsaXN0LmdldCgpLCBjb2xsZWN0b3IsIHRyYWNrU2l6ZXMsIGdldFRyYWNrU2l6ZSwgYXV0
b1JlcGVhdEluc2VydGlvblBvaW50LCB0cmFja1NpemVzLnNpemUoKSwgMSk7CiAgICAgcmV0dXJu
IGxpc3Q7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9S
ZW5kZXJTdHlsZS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxl
LmgKaW5kZXggZTRhODY4OGM5N2U5ZDc4MDlmYjA2Y2ZiYWI0NTQ1MDM4MTM0MTIxMy4uNWIzNjE0
ZWI5YmExODU5MWI4ODQ2NzVlMDhiOWE3MmE1MzZjYTE2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKQEAgLTU2NywzMCArNTY3LDMyIEBAIHB1Ymxp
YzoKICAgICBjb25zdCBTdHlsZVNlbGZBbGlnbm1lbnREYXRhJiBqdXN0aWZ5SXRlbXMoKSBjb25z
dCB7IHJldHVybiBtX3JhcmVOb25Jbmhlcml0ZWREYXRhLT5qdXN0aWZ5SXRlbXM7IH0KICAgICBj
b25zdCBTdHlsZVNlbGZBbGlnbm1lbnREYXRhJiBqdXN0aWZ5U2VsZigpIGNvbnN0IHsgcmV0dXJu
IG1fcmFyZU5vbkluaGVyaXRlZERhdGEtPmp1c3RpZnlTZWxmOyB9CiAKLSAgICBjb25zdCBWZWN0
b3I8R3JpZFRyYWNrU2l6ZT4mIGdyaWRDb2x1bW5zKCkgY29uc3QgeyByZXR1cm4gbV9yYXJlTm9u
SW5oZXJpdGVkRGF0YS0+Z3JpZC0+Z3JpZENvbHVtbnM7IH0KLSAgICBjb25zdCBWZWN0b3I8R3Jp
ZFRyYWNrU2l6ZT4mIGdyaWRSb3dzKCkgY29uc3QgeyByZXR1cm4gbV9yYXJlTm9uSW5oZXJpdGVk
RGF0YS0+Z3JpZC0+Z3JpZFJvd3M7IH0KLSAgICBjb25zdCBWZWN0b3I8R3JpZFRyYWNrU2l6ZT4m
IGdyaWRBdXRvUmVwZWF0Q29sdW1ucygpIGNvbnN0IHsgcmV0dXJuIG1fcmFyZU5vbkluaGVyaXRl
ZERhdGEtPmdyaWQtPmdyaWRBdXRvUmVwZWF0Q29sdW1uczsgfQotICAgIGNvbnN0IFZlY3RvcjxH
cmlkVHJhY2tTaXplPiYgZ3JpZEF1dG9SZXBlYXRSb3dzKCkgY29uc3QgeyByZXR1cm4gbV9yYXJl
Tm9uSW5oZXJpdGVkRGF0YS0+Z3JpZC0+Z3JpZEF1dG9SZXBlYXRSb3dzOyB9Ci0gICAgdW5zaWdu
ZWQgZ3JpZEF1dG9SZXBlYXRDb2x1bW5zSW5zZXJ0aW9uUG9pbnQoKSBjb25zdCB7IHJldHVybiBt
X3JhcmVOb25Jbmhlcml0ZWREYXRhLT5ncmlkLT5hdXRvUmVwZWF0Q29sdW1uc0luc2VydGlvblBv
aW50OyB9Ci0gICAgdW5zaWduZWQgZ3JpZEF1dG9SZXBlYXRSb3dzSW5zZXJ0aW9uUG9pbnQoKSBj
b25zdCB7IHJldHVybiBtX3JhcmVOb25Jbmhlcml0ZWREYXRhLT5ncmlkLT5hdXRvUmVwZWF0Um93
c0luc2VydGlvblBvaW50OyB9Ci0gICAgQXV0b1JlcGVhdFR5cGUgZ3JpZEF1dG9SZXBlYXRDb2x1
bW5zVHlwZSgpIGNvbnN0ICB7IHJldHVybiBtX3JhcmVOb25Jbmhlcml0ZWREYXRhLT5ncmlkLT5h
dXRvUmVwZWF0Q29sdW1uc1R5cGU7IH0KLSAgICBBdXRvUmVwZWF0VHlwZSBncmlkQXV0b1JlcGVh
dFJvd3NUeXBlKCkgY29uc3QgIHsgcmV0dXJuIG1fcmFyZU5vbkluaGVyaXRlZERhdGEtPmdyaWQt
PmF1dG9SZXBlYXRSb3dzVHlwZTsgfQotICAgIGNvbnN0IE5hbWVkR3JpZExpbmVzTWFwJiBuYW1l
ZEdyaWRDb2x1bW5MaW5lcygpIGNvbnN0IHsgcmV0dXJuIG1fcmFyZU5vbkluaGVyaXRlZERhdGEt
PmdyaWQtPm5hbWVkR3JpZENvbHVtbkxpbmVzOyB9Ci0gICAgY29uc3QgTmFtZWRHcmlkTGluZXNN
YXAmIG5hbWVkR3JpZFJvd0xpbmVzKCkgY29uc3QgeyByZXR1cm4gbV9yYXJlTm9uSW5oZXJpdGVk
RGF0YS0+Z3JpZC0+bmFtZWRHcmlkUm93TGluZXM7IH0KLSAgICBjb25zdCBPcmRlcmVkTmFtZWRH
cmlkTGluZXNNYXAmIG9yZGVyZWROYW1lZEdyaWRDb2x1bW5MaW5lcygpIGNvbnN0IHsgcmV0dXJu
IG1fcmFyZU5vbkluaGVyaXRlZERhdGEtPmdyaWQtPm9yZGVyZWROYW1lZEdyaWRDb2x1bW5MaW5l
czsgfQotICAgIGNvbnN0IE9yZGVyZWROYW1lZEdyaWRMaW5lc01hcCYgb3JkZXJlZE5hbWVkR3Jp
ZFJvd0xpbmVzKCkgY29uc3QgeyByZXR1cm4gbV9yYXJlTm9uSW5oZXJpdGVkRGF0YS0+Z3JpZC0+
b3JkZXJlZE5hbWVkR3JpZFJvd0xpbmVzOyB9Ci0gICAgY29uc3QgTmFtZWRHcmlkTGluZXNNYXAm
IGF1dG9SZXBlYXROYW1lZEdyaWRDb2x1bW5MaW5lcygpIGNvbnN0IHsgcmV0dXJuIG1fcmFyZU5v
bkluaGVyaXRlZERhdGEtPmdyaWQtPmF1dG9SZXBlYXROYW1lZEdyaWRDb2x1bW5MaW5lczsgfQot
ICAgIGNvbnN0IE5hbWVkR3JpZExpbmVzTWFwJiBhdXRvUmVwZWF0TmFtZWRHcmlkUm93TGluZXMo
KSBjb25zdCB7IHJldHVybiBtX3JhcmVOb25Jbmhlcml0ZWREYXRhLT5ncmlkLT5hdXRvUmVwZWF0
TmFtZWRHcmlkUm93TGluZXM7IH0KLSAgICBjb25zdCBPcmRlcmVkTmFtZWRHcmlkTGluZXNNYXAm
IGF1dG9SZXBlYXRPcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXMoKSBjb25zdCB7IHJldHVybiBt
X3JhcmVOb25Jbmhlcml0ZWREYXRhLT5ncmlkLT5hdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZENv
bHVtbkxpbmVzOyB9Ci0gICAgY29uc3QgT3JkZXJlZE5hbWVkR3JpZExpbmVzTWFwJiBhdXRvUmVw
ZWF0T3JkZXJlZE5hbWVkR3JpZFJvd0xpbmVzKCkgY29uc3QgeyByZXR1cm4gbV9yYXJlTm9uSW5o
ZXJpdGVkRGF0YS0+Z3JpZC0+YXV0b1JlcGVhdE9yZGVyZWROYW1lZEdyaWRSb3dMaW5lczsgfQor
ICAgIGNvbnN0IFZlY3RvcjxHcmlkVHJhY2tTaXplPiYgZ3JpZENvbHVtbnMoKSBjb25zdCB7IHJl
dHVybiBtX3JhcmVOb25Jbmhlcml0ZWREYXRhLT5ncmlkLT5ncmlkQ29sdW1ucygpOyB9CisgICAg
Y29uc3QgVmVjdG9yPEdyaWRUcmFja1NpemU+JiBncmlkUm93cygpIGNvbnN0IHsgcmV0dXJuIG1f
cmFyZU5vbkluaGVyaXRlZERhdGEtPmdyaWQtPmdyaWRSb3dzKCk7IH0KKyAgICBjb25zdCBHcmlk
VHJhY2tMaXN0JiBncmlkQ29sdW1uTGlzdCgpIGNvbnN0IHsgcmV0dXJuIG1fcmFyZU5vbkluaGVy
aXRlZERhdGEtPmdyaWQtPmNvbHVtbnMoKTsgfQorICAgIGNvbnN0IEdyaWRUcmFja0xpc3QmIGdy
aWRSb3dMaXN0KCkgY29uc3QgeyByZXR1cm4gbV9yYXJlTm9uSW5oZXJpdGVkRGF0YS0+Z3JpZC0+
cm93cygpOyB9CisgICAgY29uc3QgVmVjdG9yPEdyaWRUcmFja1NpemU+JiBncmlkQXV0b1JlcGVh
dENvbHVtbnMoKSBjb25zdCB7IHJldHVybiBtX3JhcmVOb25Jbmhlcml0ZWREYXRhLT5ncmlkLT5n
cmlkQXV0b1JlcGVhdENvbHVtbnMoKTsgfQorICAgIGNvbnN0IFZlY3RvcjxHcmlkVHJhY2tTaXpl
PiYgZ3JpZEF1dG9SZXBlYXRSb3dzKCkgY29uc3QgeyByZXR1cm4gbV9yYXJlTm9uSW5oZXJpdGVk
RGF0YS0+Z3JpZC0+Z3JpZEF1dG9SZXBlYXRSb3dzKCk7IH0KKyAgICB1bnNpZ25lZCBncmlkQXV0
b1JlcGVhdENvbHVtbnNJbnNlcnRpb25Qb2ludCgpIGNvbnN0IHsgcmV0dXJuIG1fcmFyZU5vbklu
aGVyaXRlZERhdGEtPmdyaWQtPmF1dG9SZXBlYXRDb2x1bW5zSW5zZXJ0aW9uUG9pbnQoKTsgfQor
ICAgIHVuc2lnbmVkIGdyaWRBdXRvUmVwZWF0Um93c0luc2VydGlvblBvaW50KCkgY29uc3QgeyBy
ZXR1cm4gbV9yYXJlTm9uSW5oZXJpdGVkRGF0YS0+Z3JpZC0+YXV0b1JlcGVhdFJvd3NJbnNlcnRp
b25Qb2ludCgpOyB9CisgICAgQXV0b1JlcGVhdFR5cGUgZ3JpZEF1dG9SZXBlYXRDb2x1bW5zVHlw
ZSgpIGNvbnN0ICB7IHJldHVybiBtX3JhcmVOb25Jbmhlcml0ZWREYXRhLT5ncmlkLT5hdXRvUmVw
ZWF0Q29sdW1uc1R5cGUoKTsgfQorICAgIEF1dG9SZXBlYXRUeXBlIGdyaWRBdXRvUmVwZWF0Um93
c1R5cGUoKSBjb25zdCAgeyByZXR1cm4gbV9yYXJlTm9uSW5oZXJpdGVkRGF0YS0+Z3JpZC0+YXV0
b1JlcGVhdFJvd3NUeXBlKCk7IH0KKyAgICBjb25zdCBOYW1lZEdyaWRMaW5lc01hcCYgbmFtZWRH
cmlkQ29sdW1uTGluZXMoKSBjb25zdCB7IHJldHVybiBtX3JhcmVOb25Jbmhlcml0ZWREYXRhLT5n
cmlkLT5uYW1lZEdyaWRDb2x1bW5MaW5lcygpOyB9CisgICAgY29uc3QgTmFtZWRHcmlkTGluZXNN
YXAmIG5hbWVkR3JpZFJvd0xpbmVzKCkgY29uc3QgeyByZXR1cm4gbV9yYXJlTm9uSW5oZXJpdGVk
RGF0YS0+Z3JpZC0+bmFtZWRHcmlkUm93TGluZXMoKTsgfQorICAgIGNvbnN0IE9yZGVyZWROYW1l
ZEdyaWRMaW5lc01hcCYgb3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzKCkgY29uc3QgeyByZXR1
cm4gbV9yYXJlTm9uSW5oZXJpdGVkRGF0YS0+Z3JpZC0+b3JkZXJlZE5hbWVkR3JpZENvbHVtbkxp
bmVzKCk7IH0KKyAgICBjb25zdCBPcmRlcmVkTmFtZWRHcmlkTGluZXNNYXAmIG9yZGVyZWROYW1l
ZEdyaWRSb3dMaW5lcygpIGNvbnN0IHsgcmV0dXJuIG1fcmFyZU5vbkluaGVyaXRlZERhdGEtPmdy
aWQtPm9yZGVyZWROYW1lZEdyaWRSb3dMaW5lcygpOyB9CisgICAgY29uc3QgTmFtZWRHcmlkTGlu
ZXNNYXAmIGF1dG9SZXBlYXROYW1lZEdyaWRDb2x1bW5MaW5lcygpIGNvbnN0IHsgcmV0dXJuIG1f
cmFyZU5vbkluaGVyaXRlZERhdGEtPmdyaWQtPmF1dG9SZXBlYXROYW1lZEdyaWRDb2x1bW5MaW5l
cygpOyB9CisgICAgY29uc3QgTmFtZWRHcmlkTGluZXNNYXAmIGF1dG9SZXBlYXROYW1lZEdyaWRS
b3dMaW5lcygpIGNvbnN0IHsgcmV0dXJuIG1fcmFyZU5vbkluaGVyaXRlZERhdGEtPmdyaWQtPmF1
dG9SZXBlYXROYW1lZEdyaWRSb3dMaW5lcygpOyB9CisgICAgY29uc3QgT3JkZXJlZE5hbWVkR3Jp
ZExpbmVzTWFwJiBhdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzKCkgY29uc3Qg
eyByZXR1cm4gbV9yYXJlTm9uSW5oZXJpdGVkRGF0YS0+Z3JpZC0+YXV0b1JlcGVhdE9yZGVyZWRO
YW1lZEdyaWRDb2x1bW5MaW5lcygpOyB9CisgICAgY29uc3QgT3JkZXJlZE5hbWVkR3JpZExpbmVz
TWFwJiBhdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZFJvd0xpbmVzKCkgY29uc3QgeyByZXR1cm4g
bV9yYXJlTm9uSW5oZXJpdGVkRGF0YS0+Z3JpZC0+YXV0b1JlcGVhdE9yZGVyZWROYW1lZEdyaWRS
b3dMaW5lcygpOyB9CiAgICAgY29uc3QgTmFtZWRHcmlkTGluZXNNYXAmIGltcGxpY2l0TmFtZWRH
cmlkQ29sdW1uTGluZXMoKSBjb25zdCB7IHJldHVybiBtX3JhcmVOb25Jbmhlcml0ZWREYXRhLT5n
cmlkLT5pbXBsaWNpdE5hbWVkR3JpZENvbHVtbkxpbmVzOyB9CiAgICAgY29uc3QgTmFtZWRHcmlk
TGluZXNNYXAmIGltcGxpY2l0TmFtZWRHcmlkUm93TGluZXMoKSBjb25zdCB7IHJldHVybiBtX3Jh
cmVOb25Jbmhlcml0ZWREYXRhLT5ncmlkLT5pbXBsaWNpdE5hbWVkR3JpZFJvd0xpbmVzOyB9CiAg
ICAgY29uc3QgTmFtZWRHcmlkQXJlYU1hcCYgbmFtZWRHcmlkQXJlYSgpIGNvbnN0IHsgcmV0dXJu
IG1fcmFyZU5vbkluaGVyaXRlZERhdGEtPmdyaWQtPm5hbWVkR3JpZEFyZWE7IH0KICAgICBzaXpl
X3QgbmFtZWRHcmlkQXJlYVJvd0NvdW50KCkgY29uc3QgeyByZXR1cm4gbV9yYXJlTm9uSW5oZXJp
dGVkRGF0YS0+Z3JpZC0+bmFtZWRHcmlkQXJlYVJvd0NvdW50OyB9CiAgICAgc2l6ZV90IG5hbWVk
R3JpZEFyZWFDb2x1bW5Db3VudCgpIGNvbnN0IHsgcmV0dXJuIG1fcmFyZU5vbkluaGVyaXRlZERh
dGEtPmdyaWQtPm5hbWVkR3JpZEFyZWFDb2x1bW5Db3VudDsgfQogICAgIEdyaWRBdXRvRmxvdyBn
cmlkQXV0b0Zsb3coKSBjb25zdCB7IHJldHVybiBzdGF0aWNfY2FzdDxHcmlkQXV0b0Zsb3c+KG1f
cmFyZU5vbkluaGVyaXRlZERhdGEtPmdyaWQtPmdyaWRBdXRvRmxvdyk7IH0KLSAgICBib29sIGdy
aWRTdWJncmlkUm93cygpIGNvbnN0IHsgcmV0dXJuIG1fcmFyZU5vbkluaGVyaXRlZERhdGEtPmdy
aWQtPnN1YmdyaWRSb3dzOyB9Ci0gICAgYm9vbCBncmlkU3ViZ3JpZENvbHVtbnMoKSBjb25zdCB7
IHJldHVybiBtX3JhcmVOb25Jbmhlcml0ZWREYXRhLT5ncmlkLT5zdWJncmlkQ29sdW1uczsgfQor
ICAgIGJvb2wgZ3JpZFN1YmdyaWRSb3dzKCkgY29uc3QgeyByZXR1cm4gbV9yYXJlTm9uSW5oZXJp
dGVkRGF0YS0+Z3JpZC0+c3ViZ3JpZFJvd3MoKTsgfQorICAgIGJvb2wgZ3JpZFN1YmdyaWRDb2x1
bW5zKCkgY29uc3QgeyByZXR1cm4gbV9yYXJlTm9uSW5oZXJpdGVkRGF0YS0+Z3JpZC0+c3ViZ3Jp
ZENvbHVtbnMoKTsgfQogICAgIGJvb2wgaXNHcmlkQXV0b0Zsb3dEaXJlY3Rpb25Sb3coKSBjb25z
dCB7IHJldHVybiAobV9yYXJlTm9uSW5oZXJpdGVkRGF0YS0+Z3JpZC0+Z3JpZEF1dG9GbG93ICYg
SW50ZXJuYWxBdXRvRmxvd0RpcmVjdGlvblJvdyk7IH0KICAgICBib29sIGlzR3JpZEF1dG9GbG93
RGlyZWN0aW9uQ29sdW1uKCkgY29uc3QgeyByZXR1cm4gKG1fcmFyZU5vbkluaGVyaXRlZERhdGEt
PmdyaWQtPmdyaWRBdXRvRmxvdyAmIEludGVybmFsQXV0b0Zsb3dEaXJlY3Rpb25Db2x1bW4pOyB9
CiAgICAgYm9vbCBpc0dyaWRBdXRvRmxvd0FsZ29yaXRobVNwYXJzZSgpIGNvbnN0IHsgcmV0dXJu
IChtX3JhcmVOb25Jbmhlcml0ZWREYXRhLT5ncmlkLT5ncmlkQXV0b0Zsb3cgJiBJbnRlcm5hbEF1
dG9GbG93QWxnb3JpdGhtU3BhcnNlKTsgfQpAQCAtMTIwNCwzMiArMTIwNiwyNCBAQCBwdWJsaWM6
CiAgICAgdm9pZCBzZXRCb3hEZWNvcmF0aW9uQnJlYWsoQm94RGVjb3JhdGlvbkJyZWFrIGIpIHsg
U0VUX1ZBUihtX2JveERhdGEsIG1fYm94RGVjb3JhdGlvbkJyZWFrLCBzdGF0aWNfY2FzdDx1bnNp
Z25lZD4oYikpOyB9CiAjZW5kaWYKIAorICAgIHZvaWQgc2V0R3JpZENvbHVtbkxpc3QoY29uc3Qg
R3JpZFRyYWNrTGlzdCYgbGlzdCkKKyAgICB7CisgICAgICAgIGlmICghY29tcGFyZUVxdWFsKG1f
cmFyZU5vbkluaGVyaXRlZERhdGEtPmdyaWQtPmNvbHVtbnMoKSwgbGlzdCkpCisgICAgICAgICAg
ICBtX3JhcmVOb25Jbmhlcml0ZWREYXRhLmFjY2VzcygpLmdyaWQuYWNjZXNzKCkuc2V0Q29sdW1u
cyhsaXN0KTsKKyAgICB9CisgICAgdm9pZCBzZXRHcmlkUm93TGlzdChjb25zdCBHcmlkVHJhY2tM
aXN0JiBsaXN0KQorICAgIHsKKyAgICAgICAgaWYgKCFjb21wYXJlRXF1YWwobV9yYXJlTm9uSW5o
ZXJpdGVkRGF0YS0+Z3JpZC0+cm93cygpLCBsaXN0KSkKKyAgICAgICAgICAgIG1fcmFyZU5vbklu
aGVyaXRlZERhdGEuYWNjZXNzKCkuZ3JpZC5hY2Nlc3MoKS5zZXRSb3dzKGxpc3QpOworICAgIH0K
ICAgICB2b2lkIHNldEdyaWRBdXRvQ29sdW1ucyhjb25zdCBWZWN0b3I8R3JpZFRyYWNrU2l6ZT4m
IHRyYWNrU2l6ZUxpc3QpIHsgU0VUX05FU1RFRF9WQVIobV9yYXJlTm9uSW5oZXJpdGVkRGF0YSwg
Z3JpZCwgZ3JpZEF1dG9Db2x1bW5zLCB0cmFja1NpemVMaXN0KTsgfQogICAgIHZvaWQgc2V0R3Jp
ZEF1dG9Sb3dzKGNvbnN0IFZlY3RvcjxHcmlkVHJhY2tTaXplPiYgdHJhY2tTaXplTGlzdCkgeyBT
RVRfTkVTVEVEX1ZBUihtX3JhcmVOb25Jbmhlcml0ZWREYXRhLCBncmlkLCBncmlkQXV0b1Jvd3Ms
IHRyYWNrU2l6ZUxpc3QpOyB9Ci0gICAgdm9pZCBzZXRHcmlkQ29sdW1ucyhjb25zdCBWZWN0b3I8
R3JpZFRyYWNrU2l6ZT4mIGxlbmd0aHMpIHsgU0VUX05FU1RFRF9WQVIobV9yYXJlTm9uSW5oZXJp
dGVkRGF0YSwgZ3JpZCwgZ3JpZENvbHVtbnMsIGxlbmd0aHMpOyB9Ci0gICAgdm9pZCBzZXRHcmlk
Um93cyhjb25zdCBWZWN0b3I8R3JpZFRyYWNrU2l6ZT4mIGxlbmd0aHMpIHsgU0VUX05FU1RFRF9W
QVIobV9yYXJlTm9uSW5oZXJpdGVkRGF0YSwgZ3JpZCwgZ3JpZFJvd3MsIGxlbmd0aHMpOyB9Ci0g
ICAgdm9pZCBzZXRHcmlkQXV0b1JlcGVhdENvbHVtbnMoY29uc3QgVmVjdG9yPEdyaWRUcmFja1Np
emU+JiBsZW5ndGhzKSB7IFNFVF9ORVNURURfVkFSKG1fcmFyZU5vbkluaGVyaXRlZERhdGEsIGdy
aWQsIGdyaWRBdXRvUmVwZWF0Q29sdW1ucywgbGVuZ3Rocyk7IH0KLSAgICB2b2lkIHNldEdyaWRB
dXRvUmVwZWF0Um93cyhjb25zdCBWZWN0b3I8R3JpZFRyYWNrU2l6ZT4mIGxlbmd0aHMpIHsgU0VU
X05FU1RFRF9WQVIobV9yYXJlTm9uSW5oZXJpdGVkRGF0YSwgZ3JpZCwgZ3JpZEF1dG9SZXBlYXRS
b3dzLCBsZW5ndGhzKTsgfQotICAgIHZvaWQgc2V0R3JpZEF1dG9SZXBlYXRDb2x1bW5zSW5zZXJ0
aW9uUG9pbnQoY29uc3QgdW5zaWduZWQgaW5zZXJ0aW9uUG9pbnQpIHsgU0VUX05FU1RFRF9WQVIo
bV9yYXJlTm9uSW5oZXJpdGVkRGF0YSwgZ3JpZCwgYXV0b1JlcGVhdENvbHVtbnNJbnNlcnRpb25Q
b2ludCwgaW5zZXJ0aW9uUG9pbnQpOyB9Ci0gICAgdm9pZCBzZXRHcmlkQXV0b1JlcGVhdFJvd3NJ
bnNlcnRpb25Qb2ludChjb25zdCB1bnNpZ25lZCBpbnNlcnRpb25Qb2ludCkgeyBTRVRfTkVTVEVE
X1ZBUihtX3JhcmVOb25Jbmhlcml0ZWREYXRhLCBncmlkLCBhdXRvUmVwZWF0Um93c0luc2VydGlv
blBvaW50LCBpbnNlcnRpb25Qb2ludCk7IH0KLSAgICB2b2lkIHNldEdyaWRBdXRvUmVwZWF0Q29s
dW1uc1R5cGUoY29uc3QgQXV0b1JlcGVhdFR5cGUgYXV0b1JlcGVhdFR5cGUpIHsgU0VUX05FU1RF
RF9WQVIobV9yYXJlTm9uSW5oZXJpdGVkRGF0YSwgZ3JpZCwgYXV0b1JlcGVhdENvbHVtbnNUeXBl
LCBhdXRvUmVwZWF0VHlwZSk7IH0KLSAgICB2b2lkIHNldEdyaWRBdXRvUmVwZWF0Um93c1R5cGUo
Y29uc3QgQXV0b1JlcGVhdFR5cGUgYXV0b1JlcGVhdFR5cGUpIHsgU0VUX05FU1RFRF9WQVIobV9y
YXJlTm9uSW5oZXJpdGVkRGF0YSwgZ3JpZCwgYXV0b1JlcGVhdFJvd3NUeXBlLCBhdXRvUmVwZWF0
VHlwZSk7IH0KLSAgICB2b2lkIHNldE5hbWVkR3JpZENvbHVtbkxpbmVzKGNvbnN0IE5hbWVkR3Jp
ZExpbmVzTWFwJiBuYW1lZEdyaWRDb2x1bW5MaW5lcykgeyBTRVRfTkVTVEVEX1ZBUihtX3JhcmVO
b25Jbmhlcml0ZWREYXRhLCBncmlkLCBuYW1lZEdyaWRDb2x1bW5MaW5lcywgbmFtZWRHcmlkQ29s
dW1uTGluZXMpOyB9Ci0gICAgdm9pZCBzZXROYW1lZEdyaWRSb3dMaW5lcyhjb25zdCBOYW1lZEdy
aWRMaW5lc01hcCYgbmFtZWRHcmlkUm93TGluZXMpIHsgU0VUX05FU1RFRF9WQVIobV9yYXJlTm9u
SW5oZXJpdGVkRGF0YSwgZ3JpZCwgbmFtZWRHcmlkUm93TGluZXMsIG5hbWVkR3JpZFJvd0xpbmVz
KTsgfQotICAgIHZvaWQgc2V0T3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzKGNvbnN0IE9yZGVy
ZWROYW1lZEdyaWRMaW5lc01hcCYgb3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzKSB7IFNFVF9O
RVNURURfVkFSKG1fcmFyZU5vbkluaGVyaXRlZERhdGEsIGdyaWQsIG9yZGVyZWROYW1lZEdyaWRD
b2x1bW5MaW5lcywgb3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzKTsgfQotICAgIHZvaWQgc2V0
T3JkZXJlZE5hbWVkR3JpZFJvd0xpbmVzKGNvbnN0IE9yZGVyZWROYW1lZEdyaWRMaW5lc01hcCYg
b3JkZXJlZE5hbWVkR3JpZFJvd0xpbmVzKSB7IFNFVF9ORVNURURfVkFSKG1fcmFyZU5vbkluaGVy
aXRlZERhdGEsIGdyaWQsIG9yZGVyZWROYW1lZEdyaWRSb3dMaW5lcywgb3JkZXJlZE5hbWVkR3Jp
ZFJvd0xpbmVzKTsgfQotICAgIHZvaWQgc2V0QXV0b1JlcGVhdE5hbWVkR3JpZENvbHVtbkxpbmVz
KGNvbnN0IE5hbWVkR3JpZExpbmVzTWFwJiBuYW1lZEdyaWRDb2x1bW5MaW5lcykgeyBTRVRfTkVT
VEVEX1ZBUihtX3JhcmVOb25Jbmhlcml0ZWREYXRhLCBncmlkLCBhdXRvUmVwZWF0TmFtZWRHcmlk
Q29sdW1uTGluZXMsIG5hbWVkR3JpZENvbHVtbkxpbmVzKTsgfQotICAgIHZvaWQgc2V0QXV0b1Jl
cGVhdE5hbWVkR3JpZFJvd0xpbmVzKGNvbnN0IE5hbWVkR3JpZExpbmVzTWFwJiBuYW1lZEdyaWRS
b3dMaW5lcykgeyBTRVRfTkVTVEVEX1ZBUihtX3JhcmVOb25Jbmhlcml0ZWREYXRhLCBncmlkLCBh
dXRvUmVwZWF0TmFtZWRHcmlkUm93TGluZXMsIG5hbWVkR3JpZFJvd0xpbmVzKTsgfQotICAgIHZv
aWQgc2V0QXV0b1JlcGVhdE9yZGVyZWROYW1lZEdyaWRDb2x1bW5MaW5lcyhjb25zdCBPcmRlcmVk
TmFtZWRHcmlkTGluZXNNYXAmIG9yZGVyZWROYW1lZEdyaWRDb2x1bW5MaW5lcykgeyBTRVRfTkVT
VEVEX1ZBUihtX3JhcmVOb25Jbmhlcml0ZWREYXRhLCBncmlkLCBhdXRvUmVwZWF0T3JkZXJlZE5h
bWVkR3JpZENvbHVtbkxpbmVzLCBvcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXMpOyB9Ci0gICAg
dm9pZCBzZXRBdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZFJvd0xpbmVzKGNvbnN0IE9yZGVyZWRO
YW1lZEdyaWRMaW5lc01hcCYgb3JkZXJlZE5hbWVkR3JpZFJvd0xpbmVzKSB7IFNFVF9ORVNURURf
VkFSKG1fcmFyZU5vbkluaGVyaXRlZERhdGEsIGdyaWQsIGF1dG9SZXBlYXRPcmRlcmVkTmFtZWRH
cmlkUm93TGluZXMsIG9yZGVyZWROYW1lZEdyaWRSb3dMaW5lcyk7IH0KICAgICB2b2lkIHNldElt
cGxpY2l0TmFtZWRHcmlkQ29sdW1uTGluZXMoY29uc3QgTmFtZWRHcmlkTGluZXNNYXAmIG5hbWVk
R3JpZENvbHVtbkxpbmVzKSB7IFNFVF9ORVNURURfVkFSKG1fcmFyZU5vbkluaGVyaXRlZERhdGEs
IGdyaWQsIGltcGxpY2l0TmFtZWRHcmlkQ29sdW1uTGluZXMsIG5hbWVkR3JpZENvbHVtbkxpbmVz
KTsgfQogICAgIHZvaWQgc2V0SW1wbGljaXROYW1lZEdyaWRSb3dMaW5lcyhjb25zdCBOYW1lZEdy
aWRMaW5lc01hcCYgbmFtZWRHcmlkUm93TGluZXMpIHsgU0VUX05FU1RFRF9WQVIobV9yYXJlTm9u
SW5oZXJpdGVkRGF0YSwgZ3JpZCwgaW1wbGljaXROYW1lZEdyaWRSb3dMaW5lcywgbmFtZWRHcmlk
Um93TGluZXMpOyB9CiAgICAgdm9pZCBzZXROYW1lZEdyaWRBcmVhKGNvbnN0IE5hbWVkR3JpZEFy
ZWFNYXAmIG5hbWVkR3JpZEFyZWEpIHsgU0VUX05FU1RFRF9WQVIobV9yYXJlTm9uSW5oZXJpdGVk
RGF0YSwgZ3JpZCwgbmFtZWRHcmlkQXJlYSwgbmFtZWRHcmlkQXJlYSk7IH0KICAgICB2b2lkIHNl
dE5hbWVkR3JpZEFyZWFSb3dDb3VudChzaXplX3Qgcm93Q291bnQpIHsgU0VUX05FU1RFRF9WQVIo
bV9yYXJlTm9uSW5oZXJpdGVkRGF0YSwgZ3JpZCwgbmFtZWRHcmlkQXJlYVJvd0NvdW50LCByb3dD
b3VudCk7IH0KICAgICB2b2lkIHNldE5hbWVkR3JpZEFyZWFDb2x1bW5Db3VudChzaXplX3QgY29s
dW1uQ291bnQpIHsgU0VUX05FU1RFRF9WQVIobV9yYXJlTm9uSW5oZXJpdGVkRGF0YSwgZ3JpZCwg
bmFtZWRHcmlkQXJlYUNvbHVtbkNvdW50LCBjb2x1bW5Db3VudCk7IH0KICAgICB2b2lkIHNldEdy
aWRBdXRvRmxvdyhHcmlkQXV0b0Zsb3cgZmxvdykgeyBTRVRfTkVTVEVEX1ZBUihtX3JhcmVOb25J
bmhlcml0ZWREYXRhLCBncmlkLCBncmlkQXV0b0Zsb3csIGZsb3cpOyB9Ci0gICAgdm9pZCBzZXRH
cmlkU3ViZ3JpZFJvd3MoYm9vbCBzdWJncmlkKSB7IFNFVF9ORVNURURfVkFSKG1fcmFyZU5vbklu
aGVyaXRlZERhdGEsIGdyaWQsIHN1YmdyaWRSb3dzLCBzdWJncmlkKTsgfQotICAgIHZvaWQgc2V0
R3JpZFN1YmdyaWRDb2x1bW5zKGJvb2wgc3ViZ3JpZCkgeyBTRVRfTkVTVEVEX1ZBUihtX3JhcmVO
b25Jbmhlcml0ZWREYXRhLCBncmlkLCBzdWJncmlkQ29sdW1ucywgc3ViZ3JpZCk7IH0KICAgICB2
b2lkIHNldEdyaWRJdGVtQ29sdW1uU3RhcnQoY29uc3QgR3JpZFBvc2l0aW9uJiBjb2x1bW5TdGFy
dFBvc2l0aW9uKSB7IFNFVF9ORVNURURfVkFSKG1fcmFyZU5vbkluaGVyaXRlZERhdGEsIGdyaWRJ
dGVtLCBncmlkQ29sdW1uU3RhcnQsIGNvbHVtblN0YXJ0UG9zaXRpb24pOyB9CiAgICAgdm9pZCBz
ZXRHcmlkSXRlbUNvbHVtbkVuZChjb25zdCBHcmlkUG9zaXRpb24mIGNvbHVtbkVuZFBvc2l0aW9u
KSB7IFNFVF9ORVNURURfVkFSKG1fcmFyZU5vbkluaGVyaXRlZERhdGEsIGdyaWRJdGVtLCBncmlk
Q29sdW1uRW5kLCBjb2x1bW5FbmRQb3NpdGlvbik7IH0KICAgICB2b2lkIHNldEdyaWRJdGVtUm93
U3RhcnQoY29uc3QgR3JpZFBvc2l0aW9uJiByb3dTdGFydFBvc2l0aW9uKSB7IFNFVF9ORVNURURf
VkFSKG1fcmFyZU5vbkluaGVyaXRlZERhdGEsIGdyaWRJdGVtLCBncmlkUm93U3RhcnQsIHJvd1N0
YXJ0UG9zaXRpb24pOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5
bGUvU3R5bGVHcmlkRGF0YS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5
bGVHcmlkRGF0YS5jcHAKaW5kZXggOTIzOTE5N2M1ZmY1M2MwZTU2ZmZkODQ1MGVlNzVkNWIzYWZk
MWY5OS4uNWM2OGI4YmZhZDNjNjk5ZDdjYjY2ZjhhNjk2Y2I0OWE2NDc4NmQ2NCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlR3JpZERhdGEuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUdyaWREYXRhLmNwcApAQCAtMzEs
MTcgKzMxLDcgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogU3R5bGVHcmlkRGF0YTo6U3R5bGVH
cmlkRGF0YSgpCi0gICAgOiBncmlkQ29sdW1ucyhSZW5kZXJTdHlsZTo6aW5pdGlhbEdyaWRDb2x1
bW5zKCkpCi0gICAgLCBncmlkUm93cyhSZW5kZXJTdHlsZTo6aW5pdGlhbEdyaWRSb3dzKCkpCi0g
ICAgLCBuYW1lZEdyaWRDb2x1bW5MaW5lcyhSZW5kZXJTdHlsZTo6aW5pdGlhbE5hbWVkR3JpZENv
bHVtbkxpbmVzKCkpCi0gICAgLCBuYW1lZEdyaWRSb3dMaW5lcyhSZW5kZXJTdHlsZTo6aW5pdGlh
bE5hbWVkR3JpZFJvd0xpbmVzKCkpCi0gICAgLCBvcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXMo
UmVuZGVyU3R5bGU6OmluaXRpYWxPcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXMoKSkKLSAgICAs
IG9yZGVyZWROYW1lZEdyaWRSb3dMaW5lcyhSZW5kZXJTdHlsZTo6aW5pdGlhbE9yZGVyZWROYW1l
ZEdyaWRSb3dMaW5lcygpKQotICAgICwgYXV0b1JlcGVhdE5hbWVkR3JpZENvbHVtbkxpbmVzKFJl
bmRlclN0eWxlOjppbml0aWFsTmFtZWRHcmlkQ29sdW1uTGluZXMoKSkKLSAgICAsIGF1dG9SZXBl
YXROYW1lZEdyaWRSb3dMaW5lcyhSZW5kZXJTdHlsZTo6aW5pdGlhbE5hbWVkR3JpZFJvd0xpbmVz
KCkpCi0gICAgLCBhdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzKFJlbmRlclN0
eWxlOjppbml0aWFsT3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzKCkpCi0gICAgLCBhdXRvUmVw
ZWF0T3JkZXJlZE5hbWVkR3JpZFJvd0xpbmVzKFJlbmRlclN0eWxlOjppbml0aWFsT3JkZXJlZE5h
bWVkR3JpZFJvd0xpbmVzKCkpCi0gICAgLCBpbXBsaWNpdE5hbWVkR3JpZENvbHVtbkxpbmVzKFJl
bmRlclN0eWxlOjppbml0aWFsTmFtZWRHcmlkQ29sdW1uTGluZXMoKSkKKyAgICA6IGltcGxpY2l0
TmFtZWRHcmlkQ29sdW1uTGluZXMoUmVuZGVyU3R5bGU6OmluaXRpYWxOYW1lZEdyaWRDb2x1bW5M
aW5lcygpKQogICAgICwgaW1wbGljaXROYW1lZEdyaWRSb3dMaW5lcyhSZW5kZXJTdHlsZTo6aW5p
dGlhbE5hbWVkR3JpZFJvd0xpbmVzKCkpCiAgICAgLCBncmlkQXV0b0Zsb3coUmVuZGVyU3R5bGU6
OmluaXRpYWxHcmlkQXV0b0Zsb3coKSkKICAgICAsIGdyaWRBdXRvUm93cyhSZW5kZXJTdHlsZTo6
aW5pdGlhbEdyaWRBdXRvUm93cygpKQpAQCAtNDksMjkgKzM5LDI5IEBAIFN0eWxlR3JpZERhdGE6
OlN0eWxlR3JpZERhdGEoKQogICAgICwgbmFtZWRHcmlkQXJlYShSZW5kZXJTdHlsZTo6aW5pdGlh
bE5hbWVkR3JpZEFyZWEoKSkKICAgICAsIG5hbWVkR3JpZEFyZWFSb3dDb3VudChSZW5kZXJTdHls
ZTo6aW5pdGlhbE5hbWVkR3JpZEFyZWFDb3VudCgpKQogICAgICwgbmFtZWRHcmlkQXJlYUNvbHVt
bkNvdW50KFJlbmRlclN0eWxlOjppbml0aWFsTmFtZWRHcmlkQXJlYUNvdW50KCkpCi0gICAgLCBn
cmlkQXV0b1JlcGVhdENvbHVtbnMoUmVuZGVyU3R5bGU6OmluaXRpYWxHcmlkQXV0b1JlcGVhdFRy
YWNrcygpKQotICAgICwgZ3JpZEF1dG9SZXBlYXRSb3dzKFJlbmRlclN0eWxlOjppbml0aWFsR3Jp
ZEF1dG9SZXBlYXRUcmFja3MoKSkKLSAgICAsIGF1dG9SZXBlYXRDb2x1bW5zSW5zZXJ0aW9uUG9p
bnQoUmVuZGVyU3R5bGU6OmluaXRpYWxHcmlkQXV0b1JlcGVhdEluc2VydGlvblBvaW50KCkpCi0g
ICAgLCBhdXRvUmVwZWF0Um93c0luc2VydGlvblBvaW50KFJlbmRlclN0eWxlOjppbml0aWFsR3Jp
ZEF1dG9SZXBlYXRJbnNlcnRpb25Qb2ludCgpKQotICAgICwgYXV0b1JlcGVhdENvbHVtbnNUeXBl
KFJlbmRlclN0eWxlOjppbml0aWFsR3JpZEF1dG9SZXBlYXRUeXBlKCkpCi0gICAgLCBhdXRvUmVw
ZWF0Um93c1R5cGUoUmVuZGVyU3R5bGU6OmluaXRpYWxHcmlkQXV0b1JlcGVhdFR5cGUoKSkKLSAg
ICAsIHN1YmdyaWRSb3dzKGZhbHNlKQotICAgICwgc3ViZ3JpZENvbHVtbnMoZmFsc2UpCisgICAg
LCBtX2dyaWRDb2x1bW5zKFJlbmRlclN0eWxlOjppbml0aWFsR3JpZENvbHVtbnMoKSkKKyAgICAs
IG1fZ3JpZFJvd3MoUmVuZGVyU3R5bGU6OmluaXRpYWxHcmlkUm93cygpKQorICAgICwgbV9uYW1l
ZEdyaWRDb2x1bW5MaW5lcyhSZW5kZXJTdHlsZTo6aW5pdGlhbE5hbWVkR3JpZENvbHVtbkxpbmVz
KCkpCisgICAgLCBtX25hbWVkR3JpZFJvd0xpbmVzKFJlbmRlclN0eWxlOjppbml0aWFsTmFtZWRH
cmlkUm93TGluZXMoKSkKKyAgICAsIG1fb3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzKFJlbmRl
clN0eWxlOjppbml0aWFsT3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzKCkpCisgICAgLCBtX29y
ZGVyZWROYW1lZEdyaWRSb3dMaW5lcyhSZW5kZXJTdHlsZTo6aW5pdGlhbE9yZGVyZWROYW1lZEdy
aWRSb3dMaW5lcygpKQorICAgICwgbV9hdXRvUmVwZWF0TmFtZWRHcmlkQ29sdW1uTGluZXMoUmVu
ZGVyU3R5bGU6OmluaXRpYWxOYW1lZEdyaWRDb2x1bW5MaW5lcygpKQorICAgICwgbV9hdXRvUmVw
ZWF0TmFtZWRHcmlkUm93TGluZXMoUmVuZGVyU3R5bGU6OmluaXRpYWxOYW1lZEdyaWRSb3dMaW5l
cygpKQorICAgICwgbV9hdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzKFJlbmRl
clN0eWxlOjppbml0aWFsT3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzKCkpCisgICAgLCBtX2F1
dG9SZXBlYXRPcmRlcmVkTmFtZWRHcmlkUm93TGluZXMoUmVuZGVyU3R5bGU6OmluaXRpYWxPcmRl
cmVkTmFtZWRHcmlkUm93TGluZXMoKSkKKyAgICAsIG1fZ3JpZEF1dG9SZXBlYXRDb2x1bW5zKFJl
bmRlclN0eWxlOjppbml0aWFsR3JpZEF1dG9SZXBlYXRUcmFja3MoKSkKKyAgICAsIG1fZ3JpZEF1
dG9SZXBlYXRSb3dzKFJlbmRlclN0eWxlOjppbml0aWFsR3JpZEF1dG9SZXBlYXRUcmFja3MoKSkK
KyAgICAsIG1fYXV0b1JlcGVhdENvbHVtbnNJbnNlcnRpb25Qb2ludChSZW5kZXJTdHlsZTo6aW5p
dGlhbEdyaWRBdXRvUmVwZWF0SW5zZXJ0aW9uUG9pbnQoKSkKKyAgICAsIG1fYXV0b1JlcGVhdFJv
d3NJbnNlcnRpb25Qb2ludChSZW5kZXJTdHlsZTo6aW5pdGlhbEdyaWRBdXRvUmVwZWF0SW5zZXJ0
aW9uUG9pbnQoKSkKKyAgICAsIG1fYXV0b1JlcGVhdENvbHVtbnNUeXBlKFJlbmRlclN0eWxlOjpp
bml0aWFsR3JpZEF1dG9SZXBlYXRUeXBlKCkpCisgICAgLCBtX2F1dG9SZXBlYXRSb3dzVHlwZShS
ZW5kZXJTdHlsZTo6aW5pdGlhbEdyaWRBdXRvUmVwZWF0VHlwZSgpKQorICAgICwgbV9zdWJncmlk
Um93cyhmYWxzZSkKKyAgICAsIG1fc3ViZ3JpZENvbHVtbnMoZmFsc2UpCiB7CiB9CiAKIGlubGlu
ZSBTdHlsZUdyaWREYXRhOjpTdHlsZUdyaWREYXRhKGNvbnN0IFN0eWxlR3JpZERhdGEmIG8pCiAg
ICAgOiBSZWZDb3VudGVkPFN0eWxlR3JpZERhdGE+KCkKLSAgICAsIGdyaWRDb2x1bW5zKG8uZ3Jp
ZENvbHVtbnMpCi0gICAgLCBncmlkUm93cyhvLmdyaWRSb3dzKQotICAgICwgbmFtZWRHcmlkQ29s
dW1uTGluZXMoby5uYW1lZEdyaWRDb2x1bW5MaW5lcykKLSAgICAsIG5hbWVkR3JpZFJvd0xpbmVz
KG8ubmFtZWRHcmlkUm93TGluZXMpCi0gICAgLCBvcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXMo
by5vcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXMpCi0gICAgLCBvcmRlcmVkTmFtZWRHcmlkUm93
TGluZXMoby5vcmRlcmVkTmFtZWRHcmlkUm93TGluZXMpCi0gICAgLCBhdXRvUmVwZWF0TmFtZWRH
cmlkQ29sdW1uTGluZXMoby5hdXRvUmVwZWF0TmFtZWRHcmlkQ29sdW1uTGluZXMpCi0gICAgLCBh
dXRvUmVwZWF0TmFtZWRHcmlkUm93TGluZXMoby5hdXRvUmVwZWF0TmFtZWRHcmlkUm93TGluZXMp
Ci0gICAgLCBhdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzKG8uYXV0b1JlcGVh
dE9yZGVyZWROYW1lZEdyaWRDb2x1bW5MaW5lcykKLSAgICAsIGF1dG9SZXBlYXRPcmRlcmVkTmFt
ZWRHcmlkUm93TGluZXMoby5hdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZFJvd0xpbmVzKQogICAg
ICwgaW1wbGljaXROYW1lZEdyaWRDb2x1bW5MaW5lcyhvLmltcGxpY2l0TmFtZWRHcmlkQ29sdW1u
TGluZXMpCiAgICAgLCBpbXBsaWNpdE5hbWVkR3JpZFJvd0xpbmVzKG8uaW1wbGljaXROYW1lZEdy
aWRSb3dMaW5lcykKICAgICAsIGdyaWRBdXRvRmxvdyhvLmdyaWRBdXRvRmxvdykKQEAgLTgwLDE3
ICs3MCwxNTMgQEAgaW5saW5lIFN0eWxlR3JpZERhdGE6OlN0eWxlR3JpZERhdGEoY29uc3QgU3R5
bGVHcmlkRGF0YSYgbykKICAgICAsIG5hbWVkR3JpZEFyZWEoby5uYW1lZEdyaWRBcmVhKQogICAg
ICwgbmFtZWRHcmlkQXJlYVJvd0NvdW50KG8ubmFtZWRHcmlkQXJlYVJvd0NvdW50KQogICAgICwg
bmFtZWRHcmlkQXJlYUNvbHVtbkNvdW50KG8ubmFtZWRHcmlkQXJlYUNvbHVtbkNvdW50KQotICAg
ICwgZ3JpZEF1dG9SZXBlYXRDb2x1bW5zKG8uZ3JpZEF1dG9SZXBlYXRDb2x1bW5zKQotICAgICwg
Z3JpZEF1dG9SZXBlYXRSb3dzKG8uZ3JpZEF1dG9SZXBlYXRSb3dzKQotICAgICwgYXV0b1JlcGVh
dENvbHVtbnNJbnNlcnRpb25Qb2ludChvLmF1dG9SZXBlYXRDb2x1bW5zSW5zZXJ0aW9uUG9pbnQp
Ci0gICAgLCBhdXRvUmVwZWF0Um93c0luc2VydGlvblBvaW50KG8uYXV0b1JlcGVhdFJvd3NJbnNl
cnRpb25Qb2ludCkKLSAgICAsIGF1dG9SZXBlYXRDb2x1bW5zVHlwZShvLmF1dG9SZXBlYXRDb2x1
bW5zVHlwZSkKLSAgICAsIGF1dG9SZXBlYXRSb3dzVHlwZShvLmF1dG9SZXBlYXRSb3dzVHlwZSkK
LSAgICAsIHN1YmdyaWRSb3dzKG8uc3ViZ3JpZFJvd3MpCi0gICAgLCBzdWJncmlkQ29sdW1ucyhv
LnN1YmdyaWRDb2x1bW5zKQorICAgICwgbV9jb2x1bW5zKG8ubV9jb2x1bW5zKQorICAgICwgbV9y
b3dzKG8ubV9yb3dzKQorICAgICwgbV9ncmlkQ29sdW1ucyhvLm1fZ3JpZENvbHVtbnMpCisgICAg
LCBtX2dyaWRSb3dzKG8ubV9ncmlkUm93cykKKyAgICAsIG1fbmFtZWRHcmlkQ29sdW1uTGluZXMo
by5tX25hbWVkR3JpZENvbHVtbkxpbmVzKQorICAgICwgbV9uYW1lZEdyaWRSb3dMaW5lcyhvLm1f
bmFtZWRHcmlkUm93TGluZXMpCisgICAgLCBtX29yZGVyZWROYW1lZEdyaWRDb2x1bW5MaW5lcyhv
Lm1fb3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzKQorICAgICwgbV9vcmRlcmVkTmFtZWRHcmlk
Um93TGluZXMoby5tX29yZGVyZWROYW1lZEdyaWRSb3dMaW5lcykKKyAgICAsIG1fYXV0b1JlcGVh
dE5hbWVkR3JpZENvbHVtbkxpbmVzKG8ubV9hdXRvUmVwZWF0TmFtZWRHcmlkQ29sdW1uTGluZXMp
CisgICAgLCBtX2F1dG9SZXBlYXROYW1lZEdyaWRSb3dMaW5lcyhvLm1fYXV0b1JlcGVhdE5hbWVk
R3JpZFJvd0xpbmVzKQorICAgICwgbV9hdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZENvbHVtbkxp
bmVzKG8ubV9hdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzKQorICAgICwgbV9h
dXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZFJvd0xpbmVzKG8ubV9hdXRvUmVwZWF0T3JkZXJlZE5h
bWVkR3JpZFJvd0xpbmVzKQorICAgICwgbV9ncmlkQXV0b1JlcGVhdENvbHVtbnMoby5tX2dyaWRB
dXRvUmVwZWF0Q29sdW1ucykKKyAgICAsIG1fZ3JpZEF1dG9SZXBlYXRSb3dzKG8ubV9ncmlkQXV0
b1JlcGVhdFJvd3MpCisgICAgLCBtX2F1dG9SZXBlYXRDb2x1bW5zSW5zZXJ0aW9uUG9pbnQoby5t
X2F1dG9SZXBlYXRDb2x1bW5zSW5zZXJ0aW9uUG9pbnQpCisgICAgLCBtX2F1dG9SZXBlYXRSb3dz
SW5zZXJ0aW9uUG9pbnQoby5tX2F1dG9SZXBlYXRSb3dzSW5zZXJ0aW9uUG9pbnQpCisgICAgLCBt
X2F1dG9SZXBlYXRDb2x1bW5zVHlwZShvLm1fYXV0b1JlcGVhdENvbHVtbnNUeXBlKQorICAgICwg
bV9hdXRvUmVwZWF0Um93c1R5cGUoby5tX2F1dG9SZXBlYXRSb3dzVHlwZSkKKyAgICAsIG1fc3Vi
Z3JpZFJvd3Moby5tX3N1YmdyaWRSb3dzKQorICAgICwgbV9zdWJncmlkQ29sdW1ucyhvLm1fc3Vi
Z3JpZENvbHVtbnMpCiB7CiB9CiAKK3ZvaWQgU3R5bGVHcmlkRGF0YTo6c2V0Um93cyhjb25zdCBH
cmlkVHJhY2tMaXN0JiBsaXN0KQoreworICAgIG1fcm93cyA9IGxpc3Q7CisgICAgY29tcHV0ZUNh
Y2hlZFRyYWNrRGF0YShtX3Jvd3MsIG1fZ3JpZFJvd3MsIG1fbmFtZWRHcmlkUm93TGluZXMsIG1f
b3JkZXJlZE5hbWVkR3JpZFJvd0xpbmVzLCBtX2dyaWRBdXRvUmVwZWF0Um93cywgbV9hdXRvUmVw
ZWF0TmFtZWRHcmlkUm93TGluZXMsIG1fYXV0b1JlcGVhdE9yZGVyZWROYW1lZEdyaWRSb3dMaW5l
cywgbV9hdXRvUmVwZWF0Um93c0luc2VydGlvblBvaW50LCBtX2F1dG9SZXBlYXRSb3dzVHlwZSwg
bV9zdWJncmlkUm93cyk7Cit9CisKK3ZvaWQgU3R5bGVHcmlkRGF0YTo6c2V0Q29sdW1ucyhjb25z
dCBHcmlkVHJhY2tMaXN0JiBsaXN0KQoreworICAgIG1fY29sdW1ucyA9IGxpc3Q7CisgICAgY29t
cHV0ZUNhY2hlZFRyYWNrRGF0YShtX2NvbHVtbnMsIG1fZ3JpZENvbHVtbnMsIG1fbmFtZWRHcmlk
Q29sdW1uTGluZXMsIG1fb3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzLCBtX2dyaWRBdXRvUmVw
ZWF0Q29sdW1ucywgbV9hdXRvUmVwZWF0TmFtZWRHcmlkQ29sdW1uTGluZXMsIG1fYXV0b1JlcGVh
dE9yZGVyZWROYW1lZEdyaWRDb2x1bW5MaW5lcywgbV9hdXRvUmVwZWF0Q29sdW1uc0luc2VydGlv
blBvaW50LCBtX2F1dG9SZXBlYXRDb2x1bW5zVHlwZSwgbV9zdWJncmlkQ29sdW1ucyk7Cit9CisK
K3N0YXRpYyB2b2lkIGNyZWF0ZUdyaWRMaW5lTmFtZXNMaXN0KGNvbnN0IFZlY3RvcjxTdHJpbmc+
JiBuYW1lcywgdW5zaWduZWQgY3VycmVudE5hbWVkR3JpZExpbmUsIE5hbWVkR3JpZExpbmVzTWFw
JiBuYW1lZEdyaWRMaW5lcywgT3JkZXJlZE5hbWVkR3JpZExpbmVzTWFwJiBvcmRlcmVkTmFtZWRH
cmlkTGluZXMpCit7CisgICAgYXV0byBvcmRlcmVkUmVzdWx0ID0gb3JkZXJlZE5hbWVkR3JpZExp
bmVzLmFkZChjdXJyZW50TmFtZWRHcmlkTGluZSwgVmVjdG9yPFN0cmluZz4oKSk7CisKKyAgICBm
b3IgKGF1dG8mIG5hbWUgOiBuYW1lcykgeworICAgICAgICBhdXRvIHJlc3VsdCA9IG5hbWVkR3Jp
ZExpbmVzLmFkZChuYW1lLCBWZWN0b3I8dW5zaWduZWQ+KCkpOworICAgICAgICByZXN1bHQuaXRl
cmF0b3ItPnZhbHVlLmFwcGVuZChjdXJyZW50TmFtZWRHcmlkTGluZSk7CisKKyAgICAgICAgb3Jk
ZXJlZFJlc3VsdC5pdGVyYXRvci0+dmFsdWUuYXBwZW5kKG5hbWUpOworICAgIH0KK30KKwordm9p
ZCBTdHlsZUdyaWREYXRhOjpjb21wdXRlQ2FjaGVkVHJhY2tEYXRhKGNvbnN0IEdyaWRUcmFja0xp
c3QmIGxpc3QsIFZlY3RvcjxHcmlkVHJhY2tTaXplPiYgc2l6ZXMsIE5hbWVkR3JpZExpbmVzTWFw
JiBuYW1lZExpbmVzLCBPcmRlcmVkTmFtZWRHcmlkTGluZXNNYXAmIG9yZGVyZWROYW1lZExpbmVz
LCBWZWN0b3I8R3JpZFRyYWNrU2l6ZT4mIGF1dG9SZXBlYXRTaXplcywgTmFtZWRHcmlkTGluZXNN
YXAmIGF1dG9SZXBlYXROYW1lZExpbmVzLCBPcmRlcmVkTmFtZWRHcmlkTGluZXNNYXAmIGF1dG9S
ZXBlYXRPcmRlcmVkTmFtZWRMaW5lcywgdW5zaWduZWQmIGF1dG9SZXBlYXRJbnNlcnRpb25Qb2lu
dCwgQXV0b1JlcGVhdFR5cGUmIGF1dG9SZXBlYXRUeXBlLCBib29sJiBzdWJncmlkKQoreworICAg
IHNpemVzLmNsZWFyKCk7CisgICAgbmFtZWRMaW5lcy5jbGVhcigpOworICAgIG9yZGVyZWROYW1l
ZExpbmVzLmNsZWFyKCk7CisgICAgYXV0b1JlcGVhdFNpemVzLmNsZWFyKCk7CisgICAgYXV0b1Jl
cGVhdE5hbWVkTGluZXMuY2xlYXIoKTsKKyAgICBhdXRvUmVwZWF0T3JkZXJlZE5hbWVkTGluZXMu
Y2xlYXIoKTsKKyAgICBhdXRvUmVwZWF0SW5zZXJ0aW9uUG9pbnQgPSBSZW5kZXJTdHlsZTo6aW5p
dGlhbEdyaWRBdXRvUmVwZWF0SW5zZXJ0aW9uUG9pbnQoKTsKKyAgICBhdXRvUmVwZWF0VHlwZSA9
IFJlbmRlclN0eWxlOjppbml0aWFsR3JpZEF1dG9SZXBlYXRUeXBlKCk7CisgICAgc3ViZ3JpZCA9
IGZhbHNlOworCisgICAgaWYgKGxpc3QuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm47CisKKyAg
ICB1bnNpZ25lZCBjdXJyZW50TmFtZWRHcmlkTGluZSA9IDA7CisgICAgdW5zaWduZWQgYXV0b1Jl
cGVhdEluZGV4ID0gMDsKKyAgICBhdXRvIHZpc2l0b3IgPSBXVEY6Om1ha2VWaXNpdG9yKFsmXShj
b25zdCBHcmlkVHJhY2tTaXplJiBzaXplKSB7CisgICAgICAgICsrY3VycmVudE5hbWVkR3JpZExp
bmU7CisgICAgICAgIHNpemVzLmFwcGVuZChzaXplKTsKKyAgICB9LCBbJl0oY29uc3QgVmVjdG9y
PFN0cmluZz4mIG5hbWVzKSB7CisgICAgICAgIGNyZWF0ZUdyaWRMaW5lTmFtZXNMaXN0KG5hbWVz
LCBjdXJyZW50TmFtZWRHcmlkTGluZSwgbmFtZWRMaW5lcywgb3JkZXJlZE5hbWVkTGluZXMpOwor
ICAgICAgICAvLyBTdWJncmlkcyBvbmx5IGhhdmUgbGluZSBuYW1lcyBkZWZpbmVkLCBub3QgdHJh
Y2sgc2l6ZXMsIHNvIHdlIHdhbnQgb3VyIGNvdW50CisgICAgICAgIC8vIHRvIGJlIHRoZSBudW1i
ZXIgb2YgbGluZXMgbmFtZWQgcmF0aGVyIHRoYW4gbnVtYmVyIG9mIHNpemVkIHRyYWNrcy4KKyAg
ICAgICAgaWYgKHN1YmdyaWQpCisgICAgICAgICAgICBjdXJyZW50TmFtZWRHcmlkTGluZSsrOwor
ICAgIH0sIFsmXShjb25zdCBHcmlkVHJhY2tFbnRyeVJlcGVhdCYgcmVwZWF0KSB7CisgICAgICAg
IGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgcmVwZWF0LnJlcGVhdHM7ICsraSkgeworICAgICAgICAg
ICAgZm9yIChhdXRvJiByZXBlYXRFbnRyeSA6IHJlcGVhdC5saXN0KSB7CisgICAgICAgICAgICAg
ICAgaWYgKHN0ZDo6aG9sZHNfYWx0ZXJuYXRpdmU8VmVjdG9yPFN0cmluZz4+KHJlcGVhdEVudHJ5
KSkgeworICAgICAgICAgICAgICAgICAgICBjcmVhdGVHcmlkTGluZU5hbWVzTGlzdChzdGQ6Omdl
dDxWZWN0b3I8U3RyaW5nPj4ocmVwZWF0RW50cnkpLCBjdXJyZW50TmFtZWRHcmlkTGluZSwgbmFt
ZWRMaW5lcywgb3JkZXJlZE5hbWVkTGluZXMpOworICAgICAgICAgICAgICAgICAgICAvLyBTdWJn
cmlkcyBvbmx5IGhhdmUgbGluZSBuYW1lcyBkZWZpbmVkLCBub3QgdHJhY2sgc2l6ZXMsIHNvIHdl
IHdhbnQgb3VyIGNvdW50CisgICAgICAgICAgICAgICAgICAgIC8vIHRvIGJlIHRoZSBudW1iZXIg
b2YgbGluZXMgbmFtZWQgcmF0aGVyIHRoYW4gbnVtYmVyIG9mIHNpemVkIHRyYWNrcy4KKyAgICAg
ICAgICAgICAgICAgICAgaWYgKHN1YmdyaWQpCisgICAgICAgICAgICAgICAgICAgICAgICBjdXJy
ZW50TmFtZWRHcmlkTGluZSsrOworICAgICAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAg
ICAgICAgICAgICsrY3VycmVudE5hbWVkR3JpZExpbmU7CisgICAgICAgICAgICAgICAgICAgIHNp
emVzLmFwcGVuZChzdGQ6OmdldDxHcmlkVHJhY2tTaXplPihyZXBlYXRFbnRyeSkpOworICAgICAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0sIFsmXShjb25zdCBH
cmlkVHJhY2tFbnRyeUF1dG9SZXBlYXQmIHJlcGVhdCkgeworICAgICAgICBBU1NFUlQoIWF1dG9S
ZXBlYXRJbmRleCk7CisgICAgICAgIGF1dG9SZXBlYXRJbmRleCA9IDA7CisgICAgICAgIGF1dG9S
ZXBlYXRUeXBlID0gcmVwZWF0LnR5cGU7CisgICAgICAgIGZvciAoYXV0byYgYXV0b1JlcGVhdEVu
dHJ5IDogcmVwZWF0Lmxpc3QpIHsKKyAgICAgICAgICAgIGlmIChzdGQ6OmhvbGRzX2FsdGVybmF0
aXZlPFZlY3RvcjxTdHJpbmc+PihhdXRvUmVwZWF0RW50cnkpKSB7CisgICAgICAgICAgICAgICAg
Y3JlYXRlR3JpZExpbmVOYW1lc0xpc3Qoc3RkOjpnZXQ8VmVjdG9yPFN0cmluZz4+KGF1dG9SZXBl
YXRFbnRyeSksIGF1dG9SZXBlYXRJbmRleCwgYXV0b1JlcGVhdE5hbWVkTGluZXMsIGF1dG9SZXBl
YXRPcmRlcmVkTmFtZWRMaW5lcyk7CisgICAgICAgICAgICAgICAgaWYgKHN1YmdyaWQpCisgICAg
ICAgICAgICAgICAgICAgICsrYXV0b1JlcGVhdEluZGV4OworICAgICAgICAgICAgICAgIGNvbnRp
bnVlOworICAgICAgICAgICAgfQorICAgICAgICAgICAgKythdXRvUmVwZWF0SW5kZXg7CisgICAg
ICAgICAgICBhdXRvUmVwZWF0U2l6ZXMuYXBwZW5kKHN0ZDo6Z2V0PEdyaWRUcmFja1NpemU+KGF1
dG9SZXBlYXRFbnRyeSkpOworICAgICAgICB9CisgICAgICAgIGF1dG9SZXBlYXRJbnNlcnRpb25Q
b2ludCA9IGN1cnJlbnROYW1lZEdyaWRMaW5lOworICAgICAgICBpZiAoIXN1YmdyaWQpCisgICAg
ICAgICAgICBjdXJyZW50TmFtZWRHcmlkTGluZSsrOworICAgIH0sIFsmXShjb25zdCBHcmlkVHJh
Y2tFbnRyeVN1YmdyaWQmKSB7CisgICAgICAgIHN1YmdyaWQgPSB0cnVlOworICAgIH0pOworCisg
ICAgZm9yIChjb25zdCBhdXRvJiBlbnRyeSA6IGxpc3QpCisgICAgICAgIHN0ZDo6dmlzaXQodmlz
aXRvciwgZW50cnkpOworCisgICAgLy8gVGhlIHBhcnNlciBzaG91bGQgaGF2ZSByZWplY3RlZCBh
bnkgPHRyYWNrLWxpc3Q+IHdpdGhvdXQgYW55IDx0cmFjay1zaXplPiBhcworICAgIC8vIHRoaXMg
aXMgbm90IGNvbmZvcm1hbnQgdG8gdGhlIHN5bnRheC4KKyAgICBBU1NFUlQoIXNpemVzLmlzRW1w
dHkoKSB8fCAhYXV0b1JlcGVhdFNpemVzLmlzRW1wdHkoKSB8fCBzdWJncmlkKTsKK30KKworV1RG
OjpUZXh0U3RyZWFtJiBvcGVyYXRvcjw8KFdURjo6VGV4dFN0cmVhbSYgdHMsIGNvbnN0IFJlcGVh
dEVudHJ5JiBlbnRyeSkKK3sKKyAgICBhdXRvIHZpc2l0b3IgPSBXVEY6Om1ha2VWaXNpdG9yKFsm
XShjb25zdCBHcmlkVHJhY2tTaXplJiBzaXplKSB7CisgICAgICAgIHRzIDw8IHNpemU7CisgICAg
fSwgWyZdKGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBuYW1lcykgeworICAgICAgICB0cyA8PCBuYW1l
czsKKyAgICB9KTsKKworICAgIHN0ZDo6dmlzaXQodmlzaXRvciwgZW50cnkpOworICAgIHJldHVy
biB0czsKK30KKworV1RGOjpUZXh0U3RyZWFtJiBvcGVyYXRvcjw8KFdURjo6VGV4dFN0cmVhbSYg
dHMsIGNvbnN0IEdyaWRUcmFja0VudHJ5JiBlbnRyeSkKK3sKKyAgICBhdXRvIHZpc2l0b3IgPSBX
VEY6Om1ha2VWaXNpdG9yKFsmXShjb25zdCBHcmlkVHJhY2tTaXplJiBzaXplKSB7CisgICAgICAg
IHRzIDw8IHNpemU7CisgICAgfSwgWyZdKGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBuYW1lcykgewor
ICAgICAgICB0cyA8PCBuYW1lczsKKyAgICB9LCBbJl0oY29uc3QgR3JpZFRyYWNrRW50cnlSZXBl
YXQmIHJlcGVhdCkgeworICAgICAgICB0cyA8PCAicmVwZWF0KCIgPDwgcmVwZWF0LnJlcGVhdHMg
PDwgIiwgIiA8PCByZXBlYXQubGlzdCA8PCAiKSI7CisgICAgfSwgWyZdKGNvbnN0IEdyaWRUcmFj
a0VudHJ5QXV0b1JlcGVhdCYgcmVwZWF0KSB7CisgICAgICAgIHRzIDw8ICJyZXBlYXQoIiA8PCBy
ZXBlYXQudHlwZSA8PCAiLCAiIDw8IHJlcGVhdC5saXN0IDw8ICIpIjsKKyAgICB9LCBbJl0oY29u
c3QgR3JpZFRyYWNrRW50cnlTdWJncmlkJikgeworICAgICAgICB0cyA8PCAic3ViZ3JpZCI7Cisg
ICAgfSk7CisKKyAgICBzdGQ6OnZpc2l0KHZpc2l0b3IsIGVudHJ5KTsKKyAgICByZXR1cm4gdHM7
Cit9CisKIFJlZjxTdHlsZUdyaWREYXRhPiBTdHlsZUdyaWREYXRhOjpjb3B5KCkgY29uc3QKIHsK
ICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBTdHlsZUdyaWREYXRhKCp0aGlzKSk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVHcmlkRGF0YS5oIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlR3JpZERhdGEuaAppbmRleCBlYjliMzJl
ZjkwYzFmZjIzMWJkNDM2YThlY2YxOWY5NTZlYzU5ZGJiLi4yY2RjYzBlMTVjMTQwZDc3ZmJjZWYy
NTg2ZTg1YmNkZjE1MWU5YTEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvU3R5bGVHcmlkRGF0YS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHls
ZS9TdHlsZUdyaWREYXRhLmgKQEAgLTI4LDkgKzI4LDExIEBACiAjaW5jbHVkZSAiR3JpZEFyZWEu
aCIKICNpbmNsdWRlICJHcmlkVHJhY2tTaXplLmgiCiAjaW5jbHVkZSAiUmVuZGVyU3R5bGVDb25z
dGFudHMuaCIKKyNpbmNsdWRlIDx2YXJpYW50PgogI2luY2x1ZGUgPHd0Zi9SZWYuaD4KICNpbmNs
dWRlIDx3dGYvUmVmQ291bnRlZC5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KKyNpbmNsdWRl
IDx3dGYvdGV4dC9UZXh0U3RyZWFtLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+
CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTM4LDYgKzQwLDMwIEBAIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIHR5cGVkZWYgSGFzaE1hcDxTdHJpbmcsIFZlY3Rvcjx1bnNpZ25lZD4+IE5hbWVkR3Jp
ZExpbmVzTWFwOwogdHlwZWRlZiBIYXNoTWFwPHVuc2lnbmVkLCBWZWN0b3I8U3RyaW5nPiwgSW50
SGFzaDx1bnNpZ25lZD4sIFdURjo6VW5zaWduZWRXaXRoWmVyb0tleUhhc2hUcmFpdHM8dW5zaWdu
ZWQ+PiBPcmRlcmVkTmFtZWRHcmlkTGluZXNNYXA7CiAKK3R5cGVkZWYgc3RkOjp2YXJpYW50PEdy
aWRUcmFja1NpemUsIFZlY3RvcjxTdHJpbmc+PiBSZXBlYXRFbnRyeTsKK3R5cGVkZWYgVmVjdG9y
PFJlcGVhdEVudHJ5PiBSZXBlYXRUcmFja0xpc3Q7CisKK3N0cnVjdCBHcmlkVHJhY2tFbnRyeVN1
YmdyaWQgeworICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBHcmlkVHJhY2tFbnRyeVN1YmdyaWQm
KSBjb25zdCA9IGRlZmF1bHQ7Cit9Oworc3RydWN0IEdyaWRUcmFja0VudHJ5UmVwZWF0IHsKKyAg
ICBib29sIG9wZXJhdG9yPT0oY29uc3QgR3JpZFRyYWNrRW50cnlSZXBlYXQmKSBjb25zdCA9IGRl
ZmF1bHQ7CisKKyAgICB1bnNpZ25lZCByZXBlYXRzOworICAgIFJlcGVhdFRyYWNrTGlzdCBsaXN0
OworfTsKK3N0cnVjdCBHcmlkVHJhY2tFbnRyeUF1dG9SZXBlYXQgeworICAgIGJvb2wgb3BlcmF0
b3I9PShjb25zdCBHcmlkVHJhY2tFbnRyeUF1dG9SZXBlYXQmKSBjb25zdCA9IGRlZmF1bHQ7CisK
KyAgICBBdXRvUmVwZWF0VHlwZSB0eXBlOworICAgIFJlcGVhdFRyYWNrTGlzdCBsaXN0OworfTsK
K3R5cGVkZWYgc3RkOjp2YXJpYW50PEdyaWRUcmFja1NpemUsIFZlY3RvcjxTdHJpbmc+LCBHcmlk
VHJhY2tFbnRyeVJlcGVhdCwgR3JpZFRyYWNrRW50cnlBdXRvUmVwZWF0LCBHcmlkVHJhY2tFbnRy
eVN1YmdyaWQ+IEdyaWRUcmFja0VudHJ5OwordHlwZWRlZiBWZWN0b3I8R3JpZFRyYWNrRW50cnk+
IEdyaWRUcmFja0xpc3Q7CisKK1dURjo6VGV4dFN0cmVhbSYgb3BlcmF0b3I8PChXVEY6OlRleHRT
dHJlYW0mLCBjb25zdCBSZXBlYXRFbnRyeSYgaXRlbSk7CitXVEY6OlRleHRTdHJlYW0mIG9wZXJh
dG9yPDwoV1RGOjpUZXh0U3RyZWFtJiwgY29uc3QgR3JpZFRyYWNrRW50cnkmIGl0ZW0pOworCiBj
bGFzcyBTdHlsZUdyaWREYXRhIDogcHVibGljIFJlZkNvdW50ZWQ8U3R5bGVHcmlkRGF0YT4gewog
cHVibGljOgogICAgIHN0YXRpYyBSZWY8U3R5bGVHcmlkRGF0YT4gY3JlYXRlKCkgeyByZXR1cm4g
YWRvcHRSZWYoKm5ldyBTdHlsZUdyaWREYXRhKTsgfQpAQCAtNDUsMjAgKzcxLDcgQEAgcHVibGlj
OgogCiAgICAgYm9vbCBvcGVyYXRvcj09KGNvbnN0IFN0eWxlR3JpZERhdGEmIG8pIGNvbnN0CiAg
ICAgewotICAgICAgICAvLyBGSVhNRTogY29tcGFyaW5nIHR3byBoYXNoZXMgZG9lc24ndCBsb29r
IGdyZWF0IGZvciBwZXJmb3JtYW5jZS4gU29tZXRoaW5nIHRvIGtlZXAgaW4gbWluZCBnb2luZyBm
b3J3YXJkLgotICAgICAgICByZXR1cm4gZ3JpZENvbHVtbnMgPT0gby5ncmlkQ29sdW1ucyAmJiBn
cmlkUm93cyA9PSBvLmdyaWRSb3dzCi0gICAgICAgICAgICAmJiBncmlkQXV0b0Zsb3cgPT0gby5n
cmlkQXV0b0Zsb3cgJiYgZ3JpZEF1dG9Sb3dzID09IG8uZ3JpZEF1dG9Sb3dzICYmIGdyaWRBdXRv
Q29sdW1ucyA9PSBvLmdyaWRBdXRvQ29sdW1ucwotICAgICAgICAgICAgJiYgbmFtZWRHcmlkQ29s
dW1uTGluZXMgPT0gby5uYW1lZEdyaWRDb2x1bW5MaW5lcyAmJiBuYW1lZEdyaWRSb3dMaW5lcyA9
PSBvLm5hbWVkR3JpZFJvd0xpbmVzCi0gICAgICAgICAgICAmJiBhdXRvUmVwZWF0TmFtZWRHcmlk
Q29sdW1uTGluZXMgPT0gby5hdXRvUmVwZWF0TmFtZWRHcmlkQ29sdW1uTGluZXMgJiYgYXV0b1Jl
cGVhdE5hbWVkR3JpZFJvd0xpbmVzID09IG8uYXV0b1JlcGVhdE5hbWVkR3JpZFJvd0xpbmVzCi0g
ICAgICAgICAgICAmJiBhdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzID09IG8u
YXV0b1JlcGVhdE9yZGVyZWROYW1lZEdyaWRDb2x1bW5MaW5lcyAmJiBhdXRvUmVwZWF0T3JkZXJl
ZE5hbWVkR3JpZFJvd0xpbmVzID09IG8uYXV0b1JlcGVhdE9yZGVyZWROYW1lZEdyaWRSb3dMaW5l
cwotICAgICAgICAgICAgJiYgaW1wbGljaXROYW1lZEdyaWRDb2x1bW5MaW5lcyA9PSBvLmltcGxp
Y2l0TmFtZWRHcmlkQ29sdW1uTGluZXMgJiYgaW1wbGljaXROYW1lZEdyaWRSb3dMaW5lcyA9PSBv
LmltcGxpY2l0TmFtZWRHcmlkUm93TGluZXMKLSAgICAgICAgICAgICYmIG5hbWVkR3JpZEFyZWEg
PT0gby5uYW1lZEdyaWRBcmVhICYmIG5hbWVkR3JpZEFyZWEgPT0gby5uYW1lZEdyaWRBcmVhCi0g
ICAgICAgICAgICAmJiBuYW1lZEdyaWRBcmVhUm93Q291bnQgPT0gby5uYW1lZEdyaWRBcmVhUm93
Q291bnQgJiYgbmFtZWRHcmlkQXJlYUNvbHVtbkNvdW50ID09IG8ubmFtZWRHcmlkQXJlYUNvbHVt
bkNvdW50Ci0gICAgICAgICAgICAmJiBvcmRlcmVkTmFtZWRHcmlkUm93TGluZXMgPT0gby5vcmRl
cmVkTmFtZWRHcmlkUm93TGluZXMgJiYgb3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzID09IG8u
b3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzCi0gICAgICAgICAgICAmJiBncmlkQXV0b1JlcGVh
dENvbHVtbnMgPT0gby5ncmlkQXV0b1JlcGVhdENvbHVtbnMgJiYgZ3JpZEF1dG9SZXBlYXRSb3dz
ID09IG8uZ3JpZEF1dG9SZXBlYXRSb3dzCi0gICAgICAgICAgICAmJiBhdXRvUmVwZWF0Q29sdW1u
c0luc2VydGlvblBvaW50ID09IG8uYXV0b1JlcGVhdENvbHVtbnNJbnNlcnRpb25Qb2ludCAmJiBh
dXRvUmVwZWF0Um93c0luc2VydGlvblBvaW50ID09IG8uYXV0b1JlcGVhdFJvd3NJbnNlcnRpb25Q
b2ludAotICAgICAgICAgICAgJiYgYXV0b1JlcGVhdENvbHVtbnNUeXBlID09IG8uYXV0b1JlcGVh
dENvbHVtbnNUeXBlICYmIGF1dG9SZXBlYXRSb3dzVHlwZSA9PSBvLmF1dG9SZXBlYXRSb3dzVHlw
ZSAmJiBzdWJncmlkUm93cyA9PSBvLnN1YmdyaWRSb3dzCi0gICAgICAgICAgICAmJiBzdWJncmlk
Q29sdW1ucyA9PSBvLnN1YmdyaWRDb2x1bW5zOworICAgICAgICByZXR1cm4gY29sdW1ucygpID09
IG8uY29sdW1ucygpICYmIHJvd3MoKSA9PSBvLnJvd3MoKSAmJiBpbXBsaWNpdE5hbWVkR3JpZENv
bHVtbkxpbmVzID09IG8uaW1wbGljaXROYW1lZEdyaWRDb2x1bW5MaW5lcyAmJiBpbXBsaWNpdE5h
bWVkR3JpZFJvd0xpbmVzID09IG8uaW1wbGljaXROYW1lZEdyaWRSb3dMaW5lcyAmJiBncmlkQXV0
b0Zsb3cgPT0gby5ncmlkQXV0b0Zsb3cgJiYgZ3JpZEF1dG9Sb3dzID09IG8uZ3JpZEF1dG9Sb3dz
ICYmIGdyaWRBdXRvQ29sdW1ucyA9PSBvLmdyaWRBdXRvQ29sdW1ucyAmJiBuYW1lZEdyaWRBcmVh
ID09IG8ubmFtZWRHcmlkQXJlYSAmJiBuYW1lZEdyaWRBcmVhUm93Q291bnQgPT0gby5uYW1lZEdy
aWRBcmVhUm93Q291bnQgJiYgbmFtZWRHcmlkQXJlYUNvbHVtbkNvdW50ID09IG8ubmFtZWRHcmlk
QXJlYUNvbHVtbkNvdW50OwogICAgIH0KIAogICAgIGJvb2wgb3BlcmF0b3IhPShjb25zdCBTdHls
ZUdyaWREYXRhJiBvKSBjb25zdApAQCAtNjYsMTkgKzc5LDM3IEBAIHB1YmxpYzoKICAgICAgICAg
cmV0dXJuICEoKnRoaXMgPT0gbyk7CiAgICAgfQogCi0gICAgVmVjdG9yPEdyaWRUcmFja1NpemU+
IGdyaWRDb2x1bW5zOwotICAgIFZlY3RvcjxHcmlkVHJhY2tTaXplPiBncmlkUm93czsKKyAgICB2
b2lkIHNldFJvd3MoY29uc3QgR3JpZFRyYWNrTGlzdCYpOworICAgIHZvaWQgc2V0Q29sdW1ucyhj
b25zdCBHcmlkVHJhY2tMaXN0Jik7CisKKyAgICBjb25zdCBWZWN0b3I8R3JpZFRyYWNrU2l6ZT4m
IGdyaWRDb2x1bW5zKCkgY29uc3QgeyByZXR1cm4gbV9ncmlkQ29sdW1uczsgfQorICAgIGNvbnN0
IFZlY3RvcjxHcmlkVHJhY2tTaXplPiYgZ3JpZFJvd3MoKSBjb25zdCB7IHJldHVybiBtX2dyaWRS
b3dzOyB9CisKKyAgICBjb25zdCBOYW1lZEdyaWRMaW5lc01hcCYgbmFtZWRHcmlkQ29sdW1uTGlu
ZXMoKSBjb25zdCB7IHJldHVybiBtX25hbWVkR3JpZENvbHVtbkxpbmVzOyB9OworICAgIGNvbnN0
IE5hbWVkR3JpZExpbmVzTWFwJiBuYW1lZEdyaWRSb3dMaW5lcygpIGNvbnN0IHsgcmV0dXJuIG1f
bmFtZWRHcmlkUm93TGluZXM7IH07CisKKyAgICBjb25zdCBPcmRlcmVkTmFtZWRHcmlkTGluZXNN
YXAmIG9yZGVyZWROYW1lZEdyaWRDb2x1bW5MaW5lcygpIGNvbnN0IHsgcmV0dXJuIG1fb3JkZXJl
ZE5hbWVkR3JpZENvbHVtbkxpbmVzOyB9CisgICAgY29uc3QgT3JkZXJlZE5hbWVkR3JpZExpbmVz
TWFwJiBvcmRlcmVkTmFtZWRHcmlkUm93TGluZXMoKSBjb25zdCB7IHJldHVybiBtX29yZGVyZWRO
YW1lZEdyaWRSb3dMaW5lczsgfQorCisgICAgY29uc3QgTmFtZWRHcmlkTGluZXNNYXAmIGF1dG9S
ZXBlYXROYW1lZEdyaWRDb2x1bW5MaW5lcygpIGNvbnN0IHsgcmV0dXJuIG1fYXV0b1JlcGVhdE5h
bWVkR3JpZENvbHVtbkxpbmVzOyB9CisgICAgY29uc3QgTmFtZWRHcmlkTGluZXNNYXAmIGF1dG9S
ZXBlYXROYW1lZEdyaWRSb3dMaW5lcygpIGNvbnN0IHsgcmV0dXJuIG1fYXV0b1JlcGVhdE5hbWVk
R3JpZFJvd0xpbmVzOyB9CisgICAgY29uc3QgT3JkZXJlZE5hbWVkR3JpZExpbmVzTWFwJiBhdXRv
UmVwZWF0T3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzKCkgY29uc3QgeyByZXR1cm4gbV9hdXRv
UmVwZWF0T3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzOyB9CisgICAgY29uc3QgT3JkZXJlZE5h
bWVkR3JpZExpbmVzTWFwJiBhdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZFJvd0xpbmVzKCkgY29u
c3QgeyByZXR1cm4gbV9hdXRvUmVwZWF0T3JkZXJlZE5hbWVkR3JpZFJvd0xpbmVzOyB9CiAKLSAg
ICBOYW1lZEdyaWRMaW5lc01hcCBuYW1lZEdyaWRDb2x1bW5MaW5lczsKLSAgICBOYW1lZEdyaWRM
aW5lc01hcCBuYW1lZEdyaWRSb3dMaW5lczsKKyAgICBjb25zdCBWZWN0b3I8R3JpZFRyYWNrU2l6
ZT4mIGdyaWRBdXRvUmVwZWF0Q29sdW1ucygpIGNvbnN0IHsgcmV0dXJuIG1fZ3JpZEF1dG9SZXBl
YXRDb2x1bW5zOyB9CisgICAgY29uc3QgVmVjdG9yPEdyaWRUcmFja1NpemU+JiBncmlkQXV0b1Jl
cGVhdFJvd3MoKSBjb25zdCB7IHJldHVybiBtX2dyaWRBdXRvUmVwZWF0Um93czsgfQogCi0gICAg
T3JkZXJlZE5hbWVkR3JpZExpbmVzTWFwIG9yZGVyZWROYW1lZEdyaWRDb2x1bW5MaW5lczsKLSAg
ICBPcmRlcmVkTmFtZWRHcmlkTGluZXNNYXAgb3JkZXJlZE5hbWVkR3JpZFJvd0xpbmVzOworICAg
IGNvbnN0IHVuc2lnbmVkJiBhdXRvUmVwZWF0Q29sdW1uc0luc2VydGlvblBvaW50KCkgY29uc3Qg
eyByZXR1cm4gbV9hdXRvUmVwZWF0Q29sdW1uc0luc2VydGlvblBvaW50OyB9CisgICAgY29uc3Qg
dW5zaWduZWQmIGF1dG9SZXBlYXRSb3dzSW5zZXJ0aW9uUG9pbnQoKSBjb25zdCB7IHJldHVybiBt
X2F1dG9SZXBlYXRSb3dzSW5zZXJ0aW9uUG9pbnQ7IH0KIAotICAgIE5hbWVkR3JpZExpbmVzTWFw
IGF1dG9SZXBlYXROYW1lZEdyaWRDb2x1bW5MaW5lczsKLSAgICBOYW1lZEdyaWRMaW5lc01hcCBh
dXRvUmVwZWF0TmFtZWRHcmlkUm93TGluZXM7Ci0gICAgT3JkZXJlZE5hbWVkR3JpZExpbmVzTWFw
IGF1dG9SZXBlYXRPcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXM7Ci0gICAgT3JkZXJlZE5hbWVk
R3JpZExpbmVzTWFwIGF1dG9SZXBlYXRPcmRlcmVkTmFtZWRHcmlkUm93TGluZXM7CisgICAgY29u
c3QgQXV0b1JlcGVhdFR5cGUmIGF1dG9SZXBlYXRDb2x1bW5zVHlwZSgpIGNvbnN0IHsgcmV0dXJu
IG1fYXV0b1JlcGVhdENvbHVtbnNUeXBlOyB9CisgICAgY29uc3QgQXV0b1JlcGVhdFR5cGUmIGF1
dG9SZXBlYXRSb3dzVHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fYXV0b1JlcGVhdFJvd3NUeXBlOyB9
CisKKyAgICBjb25zdCBib29sJiBzdWJncmlkUm93cygpIGNvbnN0IHsgcmV0dXJuIG1fc3ViZ3Jp
ZFJvd3M7IH07CisgICAgY29uc3QgYm9vbCYgc3ViZ3JpZENvbHVtbnMoKSBjb25zdCB7IHJldHVy
biBtX3N1YmdyaWRDb2x1bW5zOyB9CisKKyAgICBjb25zdCBHcmlkVHJhY2tMaXN0JiBjb2x1bW5z
KCkgY29uc3QgeyByZXR1cm4gbV9jb2x1bW5zOyB9OworICAgIGNvbnN0IEdyaWRUcmFja0xpc3Qm
IHJvd3MoKSBjb25zdCB7IHJldHVybiBtX3Jvd3M7IH07CiAKICAgICBOYW1lZEdyaWRMaW5lc01h
cCBpbXBsaWNpdE5hbWVkR3JpZENvbHVtbkxpbmVzOwogICAgIE5hbWVkR3JpZExpbmVzTWFwIGlt
cGxpY2l0TmFtZWRHcmlkUm93TGluZXM7CkBAIC05NCwyMSArMTI1LDQzIEBAIHB1YmxpYzoKICAg
ICB1bnNpZ25lZCBuYW1lZEdyaWRBcmVhUm93Q291bnQ7CiAgICAgdW5zaWduZWQgbmFtZWRHcmlk
QXJlYUNvbHVtbkNvdW50OwogCi0gICAgVmVjdG9yPEdyaWRUcmFja1NpemU+IGdyaWRBdXRvUmVw
ZWF0Q29sdW1uczsKLSAgICBWZWN0b3I8R3JpZFRyYWNrU2l6ZT4gZ3JpZEF1dG9SZXBlYXRSb3dz
OworcHJpdmF0ZToKKworICAgIHZvaWQgY29tcHV0ZUNhY2hlZFRyYWNrRGF0YShjb25zdCBHcmlk
VHJhY2tMaXN0JiwgVmVjdG9yPEdyaWRUcmFja1NpemU+JiBzaXplcywgTmFtZWRHcmlkTGluZXNN
YXAmIG5hbWVkTGluZXMsIE9yZGVyZWROYW1lZEdyaWRMaW5lc01hcCYgb3JkZXJlZE5hbWVkTGlu
ZXMsIFZlY3RvcjxHcmlkVHJhY2tTaXplPiYgYXV0b1JlcGVhdFNpemVzLCBOYW1lZEdyaWRMaW5l
c01hcCYgYXV0b1JlcGVhdE5hbWVkTGluZXMsIE9yZGVyZWROYW1lZEdyaWRMaW5lc01hcCYgYXV0
b1JlcGVhdE9yZGVyZWROYW1lZExpbmVzLCB1bnNpZ25lZCYgYXV0b1JlcGVhdEluc2VydGlvblBv
aW50LCBBdXRvUmVwZWF0VHlwZSYsIGJvb2wmIHN1YmdyaWQpOwogCi0gICAgdW5zaWduZWQgYXV0
b1JlcGVhdENvbHVtbnNJbnNlcnRpb25Qb2ludDsKLSAgICB1bnNpZ25lZCBhdXRvUmVwZWF0Um93
c0luc2VydGlvblBvaW50OworICAgIEdyaWRUcmFja0xpc3QgbV9jb2x1bW5zOworICAgIEdyaWRU
cmFja0xpc3QgbV9yb3dzOwogCi0gICAgQXV0b1JlcGVhdFR5cGUgYXV0b1JlcGVhdENvbHVtbnNU
eXBlOwotICAgIEF1dG9SZXBlYXRUeXBlIGF1dG9SZXBlYXRSb3dzVHlwZTsKKyAgICAvLyBDYWNo
ZWQgZGF0YSBjb21wdXRlZCBmcm9tIG1fY29sbW5zL3Jvd3M7CisgICAgVmVjdG9yPEdyaWRUcmFj
a1NpemU+IG1fZ3JpZENvbHVtbnM7CisgICAgVmVjdG9yPEdyaWRUcmFja1NpemU+IG1fZ3JpZFJv
d3M7CiAKLSAgICBib29sIHN1YmdyaWRSb3dzOwotICAgIGJvb2wgc3ViZ3JpZENvbHVtbnM7Cisg
ICAgTmFtZWRHcmlkTGluZXNNYXAgbV9uYW1lZEdyaWRDb2x1bW5MaW5lczsKKyAgICBOYW1lZEdy
aWRMaW5lc01hcCBtX25hbWVkR3JpZFJvd0xpbmVzOworCisgICAgT3JkZXJlZE5hbWVkR3JpZExp
bmVzTWFwIG1fb3JkZXJlZE5hbWVkR3JpZENvbHVtbkxpbmVzOworICAgIE9yZGVyZWROYW1lZEdy
aWRMaW5lc01hcCBtX29yZGVyZWROYW1lZEdyaWRSb3dMaW5lczsKKworICAgIE5hbWVkR3JpZExp
bmVzTWFwIG1fYXV0b1JlcGVhdE5hbWVkR3JpZENvbHVtbkxpbmVzOworICAgIE5hbWVkR3JpZExp
bmVzTWFwIG1fYXV0b1JlcGVhdE5hbWVkR3JpZFJvd0xpbmVzOworICAgIE9yZGVyZWROYW1lZEdy
aWRMaW5lc01hcCBtX2F1dG9SZXBlYXRPcmRlcmVkTmFtZWRHcmlkQ29sdW1uTGluZXM7CisgICAg
T3JkZXJlZE5hbWVkR3JpZExpbmVzTWFwIG1fYXV0b1JlcGVhdE9yZGVyZWROYW1lZEdyaWRSb3dM
aW5lczsKKworICAgIFZlY3RvcjxHcmlkVHJhY2tTaXplPiBtX2dyaWRBdXRvUmVwZWF0Q29sdW1u
czsKKyAgICBWZWN0b3I8R3JpZFRyYWNrU2l6ZT4gbV9ncmlkQXV0b1JlcGVhdFJvd3M7CisKKyAg
ICB1bnNpZ25lZCBtX2F1dG9SZXBlYXRDb2x1bW5zSW5zZXJ0aW9uUG9pbnQ7CisgICAgdW5zaWdu
ZWQgbV9hdXRvUmVwZWF0Um93c0luc2VydGlvblBvaW50OworCisgICAgQXV0b1JlcGVhdFR5cGUg
bV9hdXRvUmVwZWF0Q29sdW1uc1R5cGU7CisgICAgQXV0b1JlcGVhdFR5cGUgbV9hdXRvUmVwZWF0
Um93c1R5cGU7CisKKyAgICBib29sIG1fc3ViZ3JpZFJvd3M7CisgICAgYm9vbCBtX3N1YmdyaWRD
b2x1bW5zOwogCi1wcml2YXRlOgogICAgIFN0eWxlR3JpZERhdGEoKTsKICAgICBTdHlsZUdyaWRE
YXRhKGNvbnN0IFN0eWxlR3JpZERhdGEmKTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
KwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyQ29udmVydGVy
LmggYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaAppbmRleCBh
Y2JiZjVmOWE3ZTFjNzJkOWNjYWI4NTAyM2Q3ZWZkNGQyMTdiMmEyLi4xZjc4OWRmMDJjY2I3MmEw
MzY1Y2QzYWQ3OWJlNDY2NmZmOTliYTFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHls
ZS9TdHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHls
ZUJ1aWxkZXJDb252ZXJ0ZXIuaApAQCAtNTgsNiArNTgsNyBAQAogI2luY2x1ZGUgIlNWR1VSSVJl
ZmVyZW5jZS5oIgogI2luY2x1ZGUgIlNldHRpbmdzLmgiCiAjaW5jbHVkZSAiU3R5bGVCdWlsZGVy
U3RhdGUuaCIKKyNpbmNsdWRlICJTdHlsZUdyaWREYXRhLmgiCiAjaW5jbHVkZSAiU3R5bGVTY3Jv
bGxTbmFwUG9pbnRzLmgiCiAjaW5jbHVkZSAiVGFiU2l6ZS5oIgogI2luY2x1ZGUgIlRvdWNoQWN0
aW9uLmgiCkBAIC0xOTEsOCArMTkyLDcgQEAgcHJpdmF0ZToKIAogICAgIHN0YXRpYyBHcmlkTGVu
Z3RoIGNyZWF0ZUdyaWRUcmFja0JyZWFkdGgoY29uc3QgQ1NTUHJpbWl0aXZlVmFsdWUmLCBCdWls
ZGVyU3RhdGUmKTsKICAgICBzdGF0aWMgR3JpZFRyYWNrU2l6ZSBjcmVhdGVHcmlkVHJhY2tTaXpl
KGNvbnN0IENTU1ZhbHVlJiwgQnVpbGRlclN0YXRlJik7Ci0gICAgc3RydWN0IFRyYWNrc0RhdGE7
Ci0gICAgc3RhdGljIGJvb2wgY3JlYXRlR3JpZFRyYWNrTGlzdChjb25zdCBDU1NWYWx1ZSYsIFRy
YWNrc0RhdGEmLCBCdWlsZGVyU3RhdGUmKTsKKyAgICBzdGF0aWMgYm9vbCBjcmVhdGVHcmlkVHJh
Y2tMaXN0KGNvbnN0IENTU1ZhbHVlJiwgR3JpZFRyYWNrTGlzdCYsIEJ1aWxkZXJTdGF0ZSYpOwog
ICAgIHN0YXRpYyBib29sIGNyZWF0ZUdyaWRQb3NpdGlvbihjb25zdCBDU1NWYWx1ZSYsIEdyaWRQ
b3NpdGlvbiYpOwogICAgIHN0YXRpYyB2b2lkIGNyZWF0ZUltcGxpY2l0TmFtZWRHcmlkTGluZXNG
cm9tR3JpZEFyZWEoY29uc3QgTmFtZWRHcmlkQXJlYU1hcCYsIE5hbWVkR3JpZExpbmVzTWFwJiwg
R3JpZFRyYWNrU2l6aW5nRGlyZWN0aW9uKTsKICAgICBzdGF0aWMgQ1NTVG9MZW5ndGhDb252ZXJz
aW9uRGF0YSBjc3N0b0xlbmd0aENvbnZlcnNpb25EYXRhV2l0aFRleHRab29tRmFjdG9yKEJ1aWxk
ZXJTdGF0ZSYpOwpAQCAtOTc5LDM3ICs5NzksNyBAQCBpbmxpbmUgR3JpZFRyYWNrU2l6ZSBCdWls
ZGVyQ29udmVydGVyOjpjcmVhdGVHcmlkVHJhY2tTaXplKGNvbnN0IENTU1ZhbHVlJiB2YWx1ZQog
ICAgIHJldHVybiBHcmlkVHJhY2tTaXplKG1pblRyYWNrQnJlYWR0aCwgbWF4VHJhY2tCcmVhZHRo
KTsKIH0KIAotc3RhdGljIHZvaWQgY3JlYXRlR3JpZExpbmVOYW1lc0xpc3QoY29uc3QgQ1NTVmFs
dWUmIHZhbHVlLCB1bnNpZ25lZCBjdXJyZW50TmFtZWRHcmlkTGluZSwgTmFtZWRHcmlkTGluZXNN
YXAmIG5hbWVkR3JpZExpbmVzLCBPcmRlcmVkTmFtZWRHcmlkTGluZXNNYXAmIG9yZGVyZWROYW1l
ZEdyaWRMaW5lcykKLXsKLSAgICBBU1NFUlQodmFsdWUuaXNHcmlkTGluZU5hbWVzVmFsdWUoKSk7
Ci0gICAgYXV0byBvcmRlcmVkUmVzdWx0ID0gb3JkZXJlZE5hbWVkR3JpZExpbmVzLmFkZChjdXJy
ZW50TmFtZWRHcmlkTGluZSwgVmVjdG9yPFN0cmluZz4oKSk7Ci0KLSAgICBmb3IgKGF1dG8mIG5h
bWVkR3JpZExpbmVWYWx1ZSA6IGRvd25jYXN0PENTU0dyaWRMaW5lTmFtZXNWYWx1ZT4odmFsdWUp
KSB7Ci0gICAgICAgIFN0cmluZyBuYW1lZEdyaWRMaW5lID0gZG93bmNhc3Q8Q1NTUHJpbWl0aXZl
VmFsdWU+KG5hbWVkR3JpZExpbmVWYWx1ZS5nZXQoKSkuc3RyaW5nVmFsdWUoKTsKLSAgICAgICAg
YXV0byByZXN1bHQgPSBuYW1lZEdyaWRMaW5lcy5hZGQobmFtZWRHcmlkTGluZSwgVmVjdG9yPHVu
c2lnbmVkPigpKTsKLSAgICAgICAgcmVzdWx0Lml0ZXJhdG9yLT52YWx1ZS5hcHBlbmQoY3VycmVu
dE5hbWVkR3JpZExpbmUpOwotCi0gICAgICAgIG9yZGVyZWRSZXN1bHQuaXRlcmF0b3ItPnZhbHVl
LmFwcGVuZChuYW1lZEdyaWRMaW5lKTsKLSAgICB9Ci19Ci0KLXN0cnVjdCBCdWlsZGVyQ29udmVy
dGVyOjpUcmFja3NEYXRhIHsKLSAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShUcmFja3NEYXRhKTsg
V1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7Ci1wdWJsaWM6Ci0gICAgVHJhY2tzRGF0YSgpID0gZGVm
YXVsdDsKLQotICAgIFZlY3RvcjxHcmlkVHJhY2tTaXplPiBtX3RyYWNrU2l6ZXM7Ci0gICAgTmFt
ZWRHcmlkTGluZXNNYXAgbV9uYW1lZEdyaWRMaW5lczsKLSAgICBPcmRlcmVkTmFtZWRHcmlkTGlu
ZXNNYXAgbV9vcmRlcmVkTmFtZWRHcmlkTGluZXM7Ci0gICAgVmVjdG9yPEdyaWRUcmFja1NpemU+
IG1fYXV0b1JlcGVhdFRyYWNrU2l6ZXM7Ci0gICAgTmFtZWRHcmlkTGluZXNNYXAgbV9hdXRvUmVw
ZWF0TmFtZWRHcmlkTGluZXM7Ci0gICAgT3JkZXJlZE5hbWVkR3JpZExpbmVzTWFwIG1fYXV0b1Jl
cGVhdE9yZGVyZWROYW1lZEdyaWRMaW5lczsKLSAgICB1bnNpZ25lZCBtX2F1dG9SZXBlYXRJbnNl
cnRpb25Qb2ludCB7IFJlbmRlclN0eWxlOjppbml0aWFsR3JpZEF1dG9SZXBlYXRJbnNlcnRpb25Q
b2ludCgpIH07Ci0gICAgQXV0b1JlcGVhdFR5cGUgbV9hdXRvUmVwZWF0VHlwZSB7IFJlbmRlclN0
eWxlOjppbml0aWFsR3JpZEF1dG9SZXBlYXRUeXBlKCkgfTsKLSAgICBib29sIGlzU3ViZ3JpZCB7
IGZhbHNlIH07Ci19OwotCi1pbmxpbmUgYm9vbCBCdWlsZGVyQ29udmVydGVyOjpjcmVhdGVHcmlk
VHJhY2tMaXN0KGNvbnN0IENTU1ZhbHVlJiB2YWx1ZSwgVHJhY2tzRGF0YSYgdHJhY2tzRGF0YSwg
QnVpbGRlclN0YXRlJiBidWlsZGVyU3RhdGUpCitpbmxpbmUgYm9vbCBCdWlsZGVyQ29udmVydGVy
OjpjcmVhdGVHcmlkVHJhY2tMaXN0KGNvbnN0IENTU1ZhbHVlJiB2YWx1ZSwgR3JpZFRyYWNrTGlz
dCYgdHJhY2tMaXN0LCBCdWlsZGVyU3RhdGUmIGJ1aWxkZXJTdGF0ZSkKIHsKICAgICAvLyBIYW5k
bGUgJ25vbmUnLgogICAgIGlmIChpczxDU1NQcmltaXRpdmVWYWx1ZT4odmFsdWUpKQpAQCAtMTAx
OCw2MiArOTg4LDUyIEBAIGlubGluZSBib29sIEJ1aWxkZXJDb252ZXJ0ZXI6OmNyZWF0ZUdyaWRU
cmFja0xpc3QoY29uc3QgQ1NTVmFsdWUmIHZhbHVlLCBUcmFja3NECiAgICAgaWYgKCFpczxDU1NW
YWx1ZUxpc3Q+KHZhbHVlKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgdW5zaWduZWQg
Y3VycmVudE5hbWVkR3JpZExpbmUgPSAwOwotICAgIGF1dG8gaGFuZGxlTGluZU5hbWVPclRyYWNr
U2l6ZSA9IFsmXShjb25zdCBDU1NWYWx1ZSYgY3VycmVudFZhbHVlKSB7Ci0gICAgICAgIGlmIChp
czxDU1NHcmlkTGluZU5hbWVzVmFsdWU+KGN1cnJlbnRWYWx1ZSkpIHsKLSAgICAgICAgICAgIGNy
ZWF0ZUdyaWRMaW5lTmFtZXNMaXN0KGN1cnJlbnRWYWx1ZSwgY3VycmVudE5hbWVkR3JpZExpbmUs
IHRyYWNrc0RhdGEubV9uYW1lZEdyaWRMaW5lcywgdHJhY2tzRGF0YS5tX29yZGVyZWROYW1lZEdy
aWRMaW5lcyk7Ci0gICAgICAgICAgICAvLyBTdWJncmlkcyBvbmx5IGhhdmUgbGluZSBuYW1lcyBk
ZWZpbmVkLCBub3QgdHJhY2sgc2l6ZXMsIHNvIHdlIHdhbnQgb3VyIGNvdW50Ci0gICAgICAgICAg
ICAvLyB0byBiZSB0aGUgbnVtYmVyIG9mIGxpbmVzIG5hbWVkIHJhdGhlciB0aGFuIG51bWJlciBv
ZiBzaXplZCB0cmFja3MuCi0gICAgICAgICAgICBpZiAodHJhY2tzRGF0YS5pc1N1YmdyaWQpCi0g
ICAgICAgICAgICAgICAgY3VycmVudE5hbWVkR3JpZExpbmUrKzsKLSAgICAgICAgfSBlbHNlIHsK
LSAgICAgICAgICAgICsrY3VycmVudE5hbWVkR3JpZExpbmU7Ci0gICAgICAgICAgICB0cmFja3NE
YXRhLm1fdHJhY2tTaXplcy5hcHBlbmQoY3JlYXRlR3JpZFRyYWNrU2l6ZShjdXJyZW50VmFsdWUs
IGJ1aWxkZXJTdGF0ZSkpOworICAgIGlmIChpczxDU1NTdWJncmlkVmFsdWU+KHZhbHVlKSkKKyAg
ICAgICAgdHJhY2tMaXN0LmFwcGVuZChHcmlkVHJhY2tFbnRyeVN1YmdyaWQoKSk7CisKKyAgICBh
dXRvIGJ1aWxkUmVwZWF0TGlzdCA9IFsmXShjb25zdCBDU1NWYWx1ZSYgcmVwZWF0VmFsdWUsIFJl
cGVhdFRyYWNrTGlzdCYgcmVwZWF0TGlzdCkgeworICAgICAgICBmb3IgKGF1dG8mIGN1cnJlbnRW
YWx1ZSA6IGRvd25jYXN0PENTU1ZhbHVlTGlzdD4ocmVwZWF0VmFsdWUpKSB7CisgICAgICAgICAg
ICBpZiAoaXM8Q1NTR3JpZExpbmVOYW1lc1ZhbHVlPihjdXJyZW50VmFsdWUpKSB7CisgICAgICAg
ICAgICAgICAgVmVjdG9yPFN0cmluZz4gbmFtZXM7CisgICAgICAgICAgICAgICAgZm9yIChhdXRv
JiBuYW1lZEdyaWRMaW5lVmFsdWUgOiBkb3duY2FzdDxDU1NHcmlkTGluZU5hbWVzVmFsdWU+KGN1
cnJlbnRWYWx1ZS5nZXQoKSkpCisgICAgICAgICAgICAgICAgICAgIG5hbWVzLmFwcGVuZChkb3du
Y2FzdDxDU1NQcmltaXRpdmVWYWx1ZT4obmFtZWRHcmlkTGluZVZhbHVlLmdldCgpKS5zdHJpbmdW
YWx1ZSgpKTsKKyAgICAgICAgICAgICAgICByZXBlYXRMaXN0LmFwcGVuZChXVEZNb3ZlKG5hbWVz
KSk7CisgICAgICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgICAgICByZXBlYXRMaXN0LmFwcGVu
ZChjcmVhdGVHcmlkVHJhY2tTaXplKGN1cnJlbnRWYWx1ZSwgYnVpbGRlclN0YXRlKSk7CiAgICAg
ICAgIH0KICAgICB9OwogCi0gICAgaWYgKGlzPENTU1N1YmdyaWRWYWx1ZT4odmFsdWUpKQotICAg
ICAgICB0cmFja3NEYXRhLmlzU3ViZ3JpZCA9IHRydWU7CisgICAgLy8gRklYTUU6IEVuc3VyZSB3
ZSBhbHdheXMgaGF2ZSBhIGxpbmUgbmFtZSBzZXQgYXQgdGhlIHN0YXJ0IGFuZCBlbmQsIHVubGVz
cyB3ZSdyZQorICAgIC8vIHN1YmdyaWQsIHNpbmNlIHRoaXMgaXMgdGhlIGNhbm9uaWNhbCByZXBy
ZXNlbnRlZCBvZiB0aGUgY29tcHV0ZWQgdmFsdWUuCisgICAgLy8gTWFrZSBzdXJlIGNvZGUgcmVh
ZGluZyB0aGlzIGhhbmRsZXMgZW1wdHkgbGluZSBuYW1lIHNldHMuCiAKLSAgICB1bnNpZ25lZCBh
dXRvUmVwZWF0SW5kZXggPSAwOwogICAgIGZvciAoYXV0byYgY3VycmVudFZhbHVlIDogZG93bmNh
c3Q8Q1NTVmFsdWVMaXN0Pih2YWx1ZSkpIHsKICAgICAgICAgaWYgKGlzPENTU0dyaWRBdXRvUmVw
ZWF0VmFsdWU+KGN1cnJlbnRWYWx1ZSkpIHsKLSAgICAgICAgICAgIEFTU0VSVCghYXV0b1JlcGVh
dEluZGV4KTsKLSAgICAgICAgICAgIGF1dG9SZXBlYXRJbmRleCA9IDA7CiAgICAgICAgICAgICBD
U1NWYWx1ZUlEIGF1dG9SZXBlYXRJRCA9IGRvd25jYXN0PENTU0dyaWRBdXRvUmVwZWF0VmFsdWU+
KGN1cnJlbnRWYWx1ZS5nZXQoKSkuYXV0b1JlcGVhdElEKCk7CiAgICAgICAgICAgICBBU1NFUlQo
YXV0b1JlcGVhdElEID09IENTU1ZhbHVlQXV0b0ZpbGwgfHwgYXV0b1JlcGVhdElEID09IENTU1Zh
bHVlQXV0b0ZpdCk7Ci0gICAgICAgICAgICB0cmFja3NEYXRhLm1fYXV0b1JlcGVhdFR5cGUgPSBh
dXRvUmVwZWF0SUQgPT0gQ1NTVmFsdWVBdXRvRmlsbCA/IEF1dG9SZXBlYXRUeXBlOjpGaWxsIDog
QXV0b1JlcGVhdFR5cGU6OkZpdDsKLSAgICAgICAgICAgIGZvciAoYXV0byYgYXV0b1JlcGVhdFZh
bHVlIDogZG93bmNhc3Q8Q1NTVmFsdWVMaXN0PihjdXJyZW50VmFsdWUuZ2V0KCkpKSB7Ci0gICAg
ICAgICAgICAgICAgaWYgKGlzPENTU0dyaWRMaW5lTmFtZXNWYWx1ZT4oYXV0b1JlcGVhdFZhbHVl
KSkgewotICAgICAgICAgICAgICAgICAgICBjcmVhdGVHcmlkTGluZU5hbWVzTGlzdChhdXRvUmVw
ZWF0VmFsdWUuZ2V0KCksIGF1dG9SZXBlYXRJbmRleCwgdHJhY2tzRGF0YS5tX2F1dG9SZXBlYXRO
YW1lZEdyaWRMaW5lcywgdHJhY2tzRGF0YS5tX2F1dG9SZXBlYXRPcmRlcmVkTmFtZWRHcmlkTGlu
ZXMpOwotICAgICAgICAgICAgICAgICAgICBpZiAodHJhY2tzRGF0YS5pc1N1YmdyaWQpCi0gICAg
ICAgICAgICAgICAgICAgICAgICArK2F1dG9SZXBlYXRJbmRleDsKLSAgICAgICAgICAgICAgICAg
ICAgY29udGludWU7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICsrYXV0b1Jl
cGVhdEluZGV4OwotICAgICAgICAgICAgICAgIHRyYWNrc0RhdGEubV9hdXRvUmVwZWF0VHJhY2tT
aXplcy5hcHBlbmQoY3JlYXRlR3JpZFRyYWNrU2l6ZShhdXRvUmVwZWF0VmFsdWUuZ2V0KCksIGJ1
aWxkZXJTdGF0ZSkpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgdHJhY2tzRGF0YS5tX2F1
dG9SZXBlYXRJbnNlcnRpb25Qb2ludCA9IGN1cnJlbnROYW1lZEdyaWRMaW5lOwotICAgICAgICAg
ICAgaWYgKCF0cmFja3NEYXRhLmlzU3ViZ3JpZCkKLSAgICAgICAgICAgICAgICBjdXJyZW50TmFt
ZWRHcmlkTGluZSsrOwotICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIH0KIAotICAgICAg
ICBpZiAoaXM8Q1NTR3JpZEludGVnZXJSZXBlYXRWYWx1ZT4oY3VycmVudFZhbHVlKSkgewotICAg
ICAgICAgICAgc2l6ZV90IHJlcGV0aXRpb25zID0gZG93bmNhc3Q8Q1NTR3JpZEludGVnZXJSZXBl
YXRWYWx1ZT4oY3VycmVudFZhbHVlLmdldCgpKS5yZXBldGl0aW9ucygpOwotICAgICAgICAgICAg
Zm9yIChzaXplX3QgaSA9IDA7IGkgPCByZXBldGl0aW9uczsgKytpKSB7Ci0gICAgICAgICAgICAg
ICAgZm9yIChhdXRvJiBpbnRlZ2VyUmVwZWF0VmFsdWUgOiBkb3duY2FzdDxDU1NWYWx1ZUxpc3Q+
KGN1cnJlbnRWYWx1ZS5nZXQoKSkpCi0gICAgICAgICAgICAgICAgICAgIGhhbmRsZUxpbmVOYW1l
T3JUcmFja1NpemUoaW50ZWdlclJlcGVhdFZhbHVlKTsKKyAgICAgICAgICAgIEdyaWRUcmFja0Vu
dHJ5QXV0b1JlcGVhdCByZXBlYXQ7CisgICAgICAgICAgICByZXBlYXQudHlwZSA9IGF1dG9SZXBl
YXRJRCA9PSBDU1NWYWx1ZUF1dG9GaWxsID8gQXV0b1JlcGVhdFR5cGU6OkZpbGwgOiBBdXRvUmVw
ZWF0VHlwZTo6Rml0OworCisgICAgICAgICAgICBidWlsZFJlcGVhdExpc3QoY3VycmVudFZhbHVl
LCByZXBlYXQubGlzdCk7CisgICAgICAgICAgICB0cmFja0xpc3QuYXBwZW5kKFdURk1vdmUocmVw
ZWF0KSk7CisgICAgICAgIH0gZWxzZSBpZiAoaXM8Q1NTR3JpZEludGVnZXJSZXBlYXRWYWx1ZT4o
Y3VycmVudFZhbHVlKSkgeworICAgICAgICAgICAgR3JpZFRyYWNrRW50cnlSZXBlYXQgcmVwZWF0
OworICAgICAgICAgICAgcmVwZWF0LnJlcGVhdHMgPSBkb3duY2FzdDxDU1NHcmlkSW50ZWdlclJl
cGVhdFZhbHVlPihjdXJyZW50VmFsdWUuZ2V0KCkpLnJlcGV0aXRpb25zKCk7CisKKyAgICAgICAg
ICAgIGJ1aWxkUmVwZWF0TGlzdChjdXJyZW50VmFsdWUsIHJlcGVhdC5saXN0KTsKKyAgICAgICAg
ICAgIHRyYWNrTGlzdC5hcHBlbmQoV1RGTW92ZShyZXBlYXQpKTsKKyAgICAgICAgfSBlbHNlIGlm
IChpczxDU1NHcmlkTGluZU5hbWVzVmFsdWU+KGN1cnJlbnRWYWx1ZSkpIHsKKyAgICAgICAgICAg
IFZlY3RvcjxTdHJpbmc+IG5hbWVzOworICAgICAgICAgICAgZm9yIChhdXRvJiBuYW1lZEdyaWRM
aW5lVmFsdWUgOiBkb3duY2FzdDxDU1NHcmlkTGluZU5hbWVzVmFsdWU+KGN1cnJlbnRWYWx1ZS5n
ZXQoKSkpIHsKKyAgICAgICAgICAgICAgICBuYW1lcy5hcHBlbmQoZG93bmNhc3Q8Q1NTUHJpbWl0
aXZlVmFsdWU+KG5hbWVkR3JpZExpbmVWYWx1ZS5nZXQoKSkuc3RyaW5nVmFsdWUoKSk7CiAgICAg
ICAgICAgICB9Ci0gICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgICAgIHRyYWNrTGlzdC5h
cHBlbmQoV1RGTW92ZShuYW1lcykpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgdHJh
Y2tMaXN0LmFwcGVuZChjcmVhdGVHcmlkVHJhY2tTaXplKGN1cnJlbnRWYWx1ZSwgYnVpbGRlclN0
YXRlKSk7CiAgICAgICAgIH0KLQotICAgICAgICBoYW5kbGVMaW5lTmFtZU9yVHJhY2tTaXplKGN1
cnJlbnRWYWx1ZSk7CiAgICAgfQogCi0gICAgLy8gVGhlIHBhcnNlciBzaG91bGQgaGF2ZSByZWpl
Y3RlZCBhbnkgPHRyYWNrLWxpc3Q+IHdpdGhvdXQgYW55IDx0cmFjay1zaXplPiBhcwotICAgIC8v
IHRoaXMgaXMgbm90IGNvbmZvcm1hbnQgdG8gdGhlIHN5bnRheC4KLSAgICBBU1NFUlQoIXRyYWNr
c0RhdGEubV90cmFja1NpemVzLmlzRW1wdHkoKSB8fCAhdHJhY2tzRGF0YS5tX2F1dG9SZXBlYXRU
cmFja1NpemVzLmlzRW1wdHkoKSB8fCB0cmFja3NEYXRhLmlzU3ViZ3JpZCk7CiAgICAgcmV0dXJu
IHRydWU7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRl
ckN1c3RvbS5oIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyQ3VzdG9tLmgKaW5k
ZXggZTdhYWRkZDA0YmQyMWNiNjYwNzNiMzFmMjkxYWRiNzdiODJjMDEyNS4uOTNiZTNhNTYxNDQ0
YTdkZDNlNGUwNzVhNWZkNTczYzUzZDI2NmYxNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
c3R5bGUvU3R5bGVCdWlsZGVyQ3VzdG9tLmgKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5
bGVCdWlsZGVyQ3VzdG9tLmgKQEAgLTE5MjQsMzIgKzE5MjQsMjQgQEAgaW5saW5lIHZvaWQgQnVp
bGRlckN1c3RvbTo6YXBwbHlWYWx1ZUdyaWRUZW1wbGF0ZUFyZWFzKEJ1aWxkZXJTdGF0ZSYgYnVp
bGRlclN0YXQKICAgICBidWlsZGVyU3RhdGUuc3R5bGUoKS5zZXROYW1lZEdyaWRBcmVhQ29sdW1u
Q291bnQoZ3JpZFRlbXBsYXRlQXJlYXNWYWx1ZS5jb2x1bW5Db3VudCgpKTsKIH0KIAotI2RlZmlu
ZSBTRVRfVFJBQ0tTX0RBVEFfSU5URVJOQUwodHJhY2tzRGF0YSwgc3R5bGUsIHBhcmVudFN0eWxl
LCBUcmFja1R5cGUpIFwKLSAgICBBU1NFUlQodHJhY2tzRGF0YSB8fCBwYXJlbnRTdHlsZSk7IFwK
LSAgICBzdHlsZS5zZXRHcmlkIyNUcmFja1R5cGUjI3ModHJhY2tzRGF0YSA/IHRyYWNrc0RhdGEt
Pm1fdHJhY2tTaXplcyA6IHBhcmVudFN0eWxlLT5ncmlkIyNUcmFja1R5cGUjI3MoKSk7IFwKLSAg
ICBzdHlsZS5zZXROYW1lZEdyaWQjI1RyYWNrVHlwZSMjTGluZXModHJhY2tzRGF0YSA/IHRyYWNr
c0RhdGEtPm1fbmFtZWRHcmlkTGluZXMgOiBwYXJlbnRTdHlsZS0+bmFtZWRHcmlkIyNUcmFja1R5
cGUjI0xpbmVzKCkpOyBcCi0gICAgc3R5bGUuc2V0T3JkZXJlZE5hbWVkR3JpZCMjVHJhY2tUeXBl
IyNMaW5lcyh0cmFja3NEYXRhID8gdHJhY2tzRGF0YS0+bV9vcmRlcmVkTmFtZWRHcmlkTGluZXMg
OiBwYXJlbnRTdHlsZS0+b3JkZXJlZE5hbWVkR3JpZCMjVHJhY2tUeXBlIyNMaW5lcygpKTsgXAot
ICAgIHN0eWxlLnNldEdyaWRBdXRvUmVwZWF0IyNUcmFja1R5cGUjI3ModHJhY2tzRGF0YSA/IHRy
YWNrc0RhdGEtPm1fYXV0b1JlcGVhdFRyYWNrU2l6ZXMgOiBwYXJlbnRTdHlsZS0+Z3JpZEF1dG9S
ZXBlYXQjI1RyYWNrVHlwZSMjcygpKTsgXAotICAgIHN0eWxlLnNldEdyaWRBdXRvUmVwZWF0IyNU
cmFja1R5cGUjI3NJbnNlcnRpb25Qb2ludCh0cmFja3NEYXRhID8gdHJhY2tzRGF0YS0+bV9hdXRv
UmVwZWF0SW5zZXJ0aW9uUG9pbnQgOiBwYXJlbnRTdHlsZS0+Z3JpZEF1dG9SZXBlYXQjI1RyYWNr
VHlwZSMjc0luc2VydGlvblBvaW50KCkpOyBcCi0gICAgc3R5bGUuc2V0QXV0b1JlcGVhdE5hbWVk
R3JpZCMjVHJhY2tUeXBlIyNMaW5lcyh0cmFja3NEYXRhID8gdHJhY2tzRGF0YS0+bV9hdXRvUmVw
ZWF0TmFtZWRHcmlkTGluZXMgOiBwYXJlbnRTdHlsZS0+YXV0b1JlcGVhdE5hbWVkR3JpZCMjVHJh
Y2tUeXBlIyNMaW5lcygpKTsgXAotICAgIHN0eWxlLnNldEF1dG9SZXBlYXRPcmRlcmVkTmFtZWRH
cmlkIyNUcmFja1R5cGUjI0xpbmVzKHRyYWNrc0RhdGEgPyB0cmFja3NEYXRhLT5tX2F1dG9SZXBl
YXRPcmRlcmVkTmFtZWRHcmlkTGluZXMgOiBwYXJlbnRTdHlsZS0+YXV0b1JlcGVhdE9yZGVyZWRO
YW1lZEdyaWQjI1RyYWNrVHlwZSMjTGluZXMoKSk7IFwKLSAgICBzdHlsZS5zZXRHcmlkQXV0b1Jl
cGVhdCMjVHJhY2tUeXBlIyNzVHlwZSh0cmFja3NEYXRhID8gdHJhY2tzRGF0YS0+bV9hdXRvUmVw
ZWF0VHlwZSA6IHBhcmVudFN0eWxlLT5ncmlkQXV0b1JlcGVhdCMjVHJhY2tUeXBlIyNzVHlwZSgp
KTsgXAotICAgIHN0eWxlLnNldEdyaWRTdWJncmlkIyNUcmFja1R5cGUjI3ModHJhY2tzRGF0YSA/
IHRyYWNrc0RhdGEtPmlzU3ViZ3JpZCA6IHBhcmVudFN0eWxlLT5ncmlkU3ViZ3JpZCMjVHJhY2tU
eXBlIyNzKCkpOworI2RlZmluZSBTRVRfVFJBQ0tTX0RBVEFfSU5URVJOQUwodHJhY2tMaXN0LCBz
dHlsZSwgcGFyZW50U3R5bGUsIFRyYWNrVHlwZSkgXAorICAgIEFTU0VSVCh0cmFja0xpc3QgfHwg
cGFyZW50U3R5bGUpOyBcCisgICAgc3R5bGUuc2V0R3JpZCMjVHJhY2tUeXBlIyNMaXN0KHRyYWNr
TGlzdCA/ICp0cmFja0xpc3QgOiBwYXJlbnRTdHlsZS0+Z3JpZCMjVHJhY2tUeXBlIyNMaXN0KCkp
OyBcCiAKICNkZWZpbmUgU0VUX0lOSEVSSVRfVFJBQ0tTX0RBVEEoc3R5bGUsIHBhcmVudFN0eWxl
LCBUcmFja1R5cGUpIFwKLSAgICBCdWlsZGVyQ29udmVydGVyOjpUcmFja3NEYXRhKiB0cmFja3NE
YXRhID0gbnVsbHB0cjsgXAorICAgIEdyaWRUcmFja0xpc3QqIHRyYWNrTGlzdCA9IG51bGxwdHI7
IFwKICAgICBjb25zdCBSZW5kZXJTdHlsZSogcGFyZW50U3R5bGVQb2ludGVyID0gJnBhcmVudFN0
eWxlOyBcCi0gICAgU0VUX1RSQUNLU19EQVRBX0lOVEVSTkFMKHRyYWNrc0RhdGEsIHN0eWxlLCBw
YXJlbnRTdHlsZVBvaW50ZXIsIFRyYWNrVHlwZSkKKyAgICBTRVRfVFJBQ0tTX0RBVEFfSU5URVJO
QUwodHJhY2tMaXN0LCBzdHlsZSwgcGFyZW50U3R5bGVQb2ludGVyLCBUcmFja1R5cGUpCiAKLSNk
ZWZpbmUgU0VUX1RSQUNLU19EQVRBKHRyYWNrc0RhdGEsIHN0eWxlLCBUcmFja1R5cGUpIFwKLSAg
ICBCdWlsZGVyQ29udmVydGVyOjpUcmFja3NEYXRhKiB0cmFja3NEYXRhUG9pbnRlciA9ICZ0cmFj
a3NEYXRhOyBcCisjZGVmaW5lIFNFVF9UUkFDS1NfREFUQSh0cmFja0xpc3QsIHN0eWxlLCBUcmFj
a1R5cGUpIFwKKyAgICBHcmlkVHJhY2tMaXN0KiB0cmFja0xpc3RQb2ludGVyID0gJnRyYWNrTGlz
dDsgXAogICAgIGNvbnN0IFJlbmRlclN0eWxlKiBwYXJlbnRTdHlsZSA9IG51bGxwdHI7IFwKLSAg
ICBTRVRfVFJBQ0tTX0RBVEFfSU5URVJOQUwodHJhY2tzRGF0YVBvaW50ZXIsIHN0eWxlLCBwYXJl
bnRTdHlsZSwgVHJhY2tUeXBlKQorICAgIFNFVF9UUkFDS1NfREFUQV9JTlRFUk5BTCh0cmFja0xp
c3RQb2ludGVyLCBzdHlsZSwgcGFyZW50U3R5bGUsIFRyYWNrVHlwZSkKIAogaW5saW5lIHZvaWQg
QnVpbGRlckN1c3RvbTo6YXBwbHlJbml0aWFsR3JpZFRlbXBsYXRlQ29sdW1ucyhCdWlsZGVyU3Rh
dGUmIGJ1aWxkZXJTdGF0ZSkKIHsKLSAgICBCdWlsZGVyQ29udmVydGVyOjpUcmFja3NEYXRhIGlu
aXRpYWxUcmFja3NEYXRhOwotICAgIFNFVF9UUkFDS1NfREFUQShpbml0aWFsVHJhY2tzRGF0YSwg
YnVpbGRlclN0YXRlLnN0eWxlKCksIENvbHVtbik7CisgICAgR3JpZFRyYWNrTGlzdCBpbml0aWFs
VHJhY2tMaXN0OworICAgIFNFVF9UUkFDS1NfREFUQShpbml0aWFsVHJhY2tMaXN0LCBidWlsZGVy
U3RhdGUuc3R5bGUoKSwgQ29sdW1uKTsKIH0KIAogaW5saW5lIHZvaWQgQnVpbGRlckN1c3RvbTo6
YXBwbHlJbmhlcml0R3JpZFRlbXBsYXRlQ29sdW1ucyhCdWlsZGVyU3RhdGUmIGJ1aWxkZXJTdGF0
ZSkKQEAgLTE5NTksMTYgKzE5NTEsMTYgQEAgaW5saW5lIHZvaWQgQnVpbGRlckN1c3RvbTo6YXBw
bHlJbmhlcml0R3JpZFRlbXBsYXRlQ29sdW1ucyhCdWlsZGVyU3RhdGUmIGJ1aWxkZXIKIAogaW5s
aW5lIHZvaWQgQnVpbGRlckN1c3RvbTo6YXBwbHlWYWx1ZUdyaWRUZW1wbGF0ZUNvbHVtbnMoQnVp
bGRlclN0YXRlJiBidWlsZGVyU3RhdGUsIENTU1ZhbHVlJiB2YWx1ZSkKIHsKLSAgICBCdWlsZGVy
Q29udmVydGVyOjpUcmFja3NEYXRhIHRyYWNrc0RhdGE7Ci0gICAgaWYgKCFCdWlsZGVyQ29udmVy
dGVyOjpjcmVhdGVHcmlkVHJhY2tMaXN0KHZhbHVlLCB0cmFja3NEYXRhLCBidWlsZGVyU3RhdGUp
KQorICAgIEdyaWRUcmFja0xpc3QgdHJhY2tMaXN0OworICAgIGlmICghQnVpbGRlckNvbnZlcnRl
cjo6Y3JlYXRlR3JpZFRyYWNrTGlzdCh2YWx1ZSwgdHJhY2tMaXN0LCBidWlsZGVyU3RhdGUpKQog
ICAgICAgICByZXR1cm47Ci0gICAgU0VUX1RSQUNLU19EQVRBKHRyYWNrc0RhdGEsIGJ1aWxkZXJT
dGF0ZS5zdHlsZSgpLCBDb2x1bW4pOworICAgIFNFVF9UUkFDS1NfREFUQSh0cmFja0xpc3QsIGJ1
aWxkZXJTdGF0ZS5zdHlsZSgpLCBDb2x1bW4pOwogfQogCiBpbmxpbmUgdm9pZCBCdWlsZGVyQ3Vz
dG9tOjphcHBseUluaXRpYWxHcmlkVGVtcGxhdGVSb3dzKEJ1aWxkZXJTdGF0ZSYgYnVpbGRlclN0
YXRlKQogewotICAgIEJ1aWxkZXJDb252ZXJ0ZXI6OlRyYWNrc0RhdGEgaW5pdGlhbFRyYWNrc0Rh
dGE7Ci0gICAgU0VUX1RSQUNLU19EQVRBKGluaXRpYWxUcmFja3NEYXRhLCBidWlsZGVyU3RhdGUu
c3R5bGUoKSwgUm93KTsKKyAgICBHcmlkVHJhY2tMaXN0IGluaXRpYWxUcmFja0xpc3Q7CisgICAg
U0VUX1RSQUNLU19EQVRBKGluaXRpYWxUcmFja0xpc3QsIGJ1aWxkZXJTdGF0ZS5zdHlsZSgpLCBS
b3cpOwogfQogCiBpbmxpbmUgdm9pZCBCdWlsZGVyQ3VzdG9tOjphcHBseUluaGVyaXRHcmlkVGVt
cGxhdGVSb3dzKEJ1aWxkZXJTdGF0ZSYgYnVpbGRlclN0YXRlKQpAQCAtMTk3OCwxMSArMTk3MCwx
MSBAQCBpbmxpbmUgdm9pZCBCdWlsZGVyQ3VzdG9tOjphcHBseUluaGVyaXRHcmlkVGVtcGxhdGVS
b3dzKEJ1aWxkZXJTdGF0ZSYgYnVpbGRlclN0YQogCiBpbmxpbmUgdm9pZCBCdWlsZGVyQ3VzdG9t
OjphcHBseVZhbHVlR3JpZFRlbXBsYXRlUm93cyhCdWlsZGVyU3RhdGUmIGJ1aWxkZXJTdGF0ZSwg
Q1NTVmFsdWUmIHZhbHVlKQogewotICAgIEJ1aWxkZXJDb252ZXJ0ZXI6OlRyYWNrc0RhdGEgdHJh
Y2tzRGF0YTsKLSAgICBpZiAoIUJ1aWxkZXJDb252ZXJ0ZXI6OmNyZWF0ZUdyaWRUcmFja0xpc3Qo
dmFsdWUsIHRyYWNrc0RhdGEsIGJ1aWxkZXJTdGF0ZSkpCisgICAgR3JpZFRyYWNrTGlzdCB0cmFj
a0xpc3Q7CisgICAgaWYgKCFCdWlsZGVyQ29udmVydGVyOjpjcmVhdGVHcmlkVHJhY2tMaXN0KHZh
bHVlLCB0cmFja0xpc3QsIGJ1aWxkZXJTdGF0ZSkpCiAgICAgICAgIHJldHVybjsKIAotICAgIFNF
VF9UUkFDS1NfREFUQSh0cmFja3NEYXRhLCBidWlsZGVyU3RhdGUuc3R5bGUoKSwgUm93KTsKKyAg
ICBTRVRfVFJBQ0tTX0RBVEEodHJhY2tMaXN0LCBidWlsZGVyU3RhdGUuc3R5bGUoKSwgUm93KTsK
IH0KIAogdm9pZCBCdWlsZGVyQ3VzdG9tOjphcHBseVZhbHVlQWx0KEJ1aWxkZXJTdGF0ZSYgYnVp
bGRlclN0YXRlLCBDU1NWYWx1ZSYgdmFsdWUpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggM2UxOGVmNDM1M2JkYmZiMTBkZmFi
NDc3ZDRjZWMxYWFlYjE1YzZmMy4uZDA1NDUzODdhMWRhN2ExZWJiZTZmMTkyYzk0NTFjNjEyOGZk
ODhhMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDIyLTAzLTE2ICBNYXR0IFdvb2Ryb3cgIDxt
YXR0d29vZHJvd0BhcHBsZS5jb20+CisKKyAgICAgICAgUHJlc2VydmUgcmVwZWF0KCkgbm90YXRp
b24gZm9yIGdyaWQtdGVtcGxhdGVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMDIyNTkKKworICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tzb24u
CisKKyAgICAgICAgKiBmYXN0L2Nzcy1ncmlkLWxheW91dC9ncmlkLXJlcGVhdC1jYWxjLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2Nzcy1ncmlkLWxheW91dC9ncmlkLXJlcGVhdC1jYWxj
Lmh0bWw6CisgICAgICAgICogZmFzdC9jc3MtZ3JpZC1sYXlvdXQvbm9uLWdyaWQtZWxlbWVudC1y
ZXBlYXQtZ2V0LXNldC1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9jc3MtZ3JpZC1sYXlv
dXQvbm9uLWdyaWQtZWxlbWVudC1yZXBlYXQtZ2V0LXNldC5odG1sOgorCisgICAgICAgIFVwZGF0
ZSBleHBlY3RlZCByZXN1bHRzIHRvIHVzZSByZXBlYXQoKSBub3RhdGlvbi4KKwogMjAyMi0wMy0y
NyAgTWF0dCBXb29kcm93ICA8bWF0dHdvb2Ryb3dAYXBwbGUuY29tPgogCiAgICAgICAgIFVzZSB0
aGUgc2l6aW5nIGFsZ29yaXRobSdzIGF2YWlsYWJsZSBzaXplIHRvIGNvbXB1dGUgZ3JpZCBnYXAu
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCA0ZGMzYjg0MjQwNjdhOTIyZjFjMzIw
YWZlZjgwMDg4YWM1NTA1NzcwLi41OWIzMjM2OTIzYTRhMTRiNTM1YTU1N2Y5ZWU1YWYwNzMyMmUw
YzAzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAy
Mi0wMy0xNiAgTWF0dCBXb29kcm93ICA8bWF0dHdvb2Ryb3dAYXBwbGUuY29tPgorCisgICAgICAg
IFByZXNlcnZlIHJlcGVhdCgpIG5vdGF0aW9uIGZvciBncmlkLXRlbXBsYXRlcworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAyMjU5CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgRGVhbiBKYWNrc29uLgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9jc3MtZ3JpZC9hbmltYXRpb24vZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zLWludGVycG9sYXRp
b24tZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdy
aWQvYW5pbWF0aW9uL2dyaWQtdGVtcGxhdGUtcm93cy1pbnRlcnBvbGF0aW9uLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1ncmlkL3BhcnNpbmcvZ3Jp
ZC10ZW1wbGF0ZS1jb2x1bW5zLWNvbXB1dGVkLW5vZ3JpZC1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3JpZC9wYXJzaW5nL2dyaWQtdGVtcGxhdGUt
cm93cy1jb21wdXRlZC1ub2dyaWQtZXhwZWN0ZWQudHh0OgorCisgICAgICAgIFVwZGF0ZSBleHBl
Y3RhdGlvbnMgZm9yIGV4aXN0aW5nIFdQVCB0ZXN0cywgbm93IHRoYXQgd2UgZ2V0IHRoZSBjb3Jy
ZWN0IGNvbXB1dGVkIHZhbHVlIGZvcgorICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3MvY29sdW1u
cy4KKwogMjAyMi0wMy0xNCAgTWF0dCBXb29kcm93ICA8bWF0dHdvb2Ryb3dAYXBwbGUuY29tPgog
CiAgICAgICAgIEZpeCBzZXJpYWxpemF0aW9uIG9mIGdyaWQtdGVtcGxhdGUKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L2dyaWQtcmVwZWF0LWNhbGMtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3JpZC1yZXBlYXQtY2Fs
Yy1leHBlY3RlZC50eHQKaW5kZXggNDc2ZDEwN2UzYmQ3NjFjZjI4ZTVjZmE4MTM2NGI0ZjQ1NjRl
ZjgwYi4uZGNjYTQ2YmJhYzA5Y2Y4M2FmZGE5OWFhZGY0NTU2NTFjMzU5MzA0MSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3JpZC1yZXBlYXQtY2FsYy1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3JpZC1yZXBl
YXQtY2FsYy1leHBlY3RlZC50eHQKQEAgLTYsNyArNiw3IEBAIE9uIHN1Y2Nlc3MsIHlvdSB3aWxs
IHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBM
RVRFCiBQQVNTIHRlc3REaXYuc3R5bGVbJ2dyaWQtdGVtcGxhdGUtcm93cyddIGlzICIiCiB0ZXN0
RGl2LnN0eWxlWydncmlkLXRlbXBsYXRlLXJvd3MnXSA9ICdyZXBlYXQoY2FsYygxICsgMSksIDE4
cHgpJwogUEFTUyB0ZXN0RGl2LnN0eWxlWydncmlkLXRlbXBsYXRlLXJvd3MnXSBpcyAicmVwZWF0
KDIsIDE4cHgpIgotUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZSh0ZXN0RGl2KS5nZXRQcm9w
ZXJ0eVZhbHVlKCdncmlkLXRlbXBsYXRlLXJvd3MnKSBpcyAiMThweCAxOHB4IgorUEFTUyB3aW5k
b3cuZ2V0Q29tcHV0ZWRTdHlsZSh0ZXN0RGl2KS5nZXRQcm9wZXJ0eVZhbHVlKCdncmlkLXRlbXBs
YXRlLXJvd3MnKSBpcyAicmVwZWF0KDIsIDE4cHgpIgogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQg
aXMgdHJ1ZQogCiBURVNUIENPTVBMRVRFCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nz
cy1ncmlkLWxheW91dC9ncmlkLXJlcGVhdC1jYWxjLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nz
cy1ncmlkLWxheW91dC9ncmlkLXJlcGVhdC1jYWxjLmh0bWwKaW5kZXggNzI1YzkyNzhhMmZhMWVi
OTUyMWM4ZTVjMzZmYjZmZTg3ZTg1YzFiMS4uMmQyOTI1NTg0MjEyMzJjMjQ4ZGZkYzI0YTNjM2Jj
M2M0ZGZmMjQ4ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQv
Z3JpZC1yZXBlYXQtY2FsYy5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5
b3V0L2dyaWQtcmVwZWF0LWNhbGMuaHRtbApAQCAtMTEsNyArMTEsNyBAQCB2YXIgdGVzdERpdiA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0RGl2Iik7CiBzaG91bGRCZUVtcHR5U3RyaW5n
KCJ0ZXN0RGl2LnN0eWxlWydncmlkLXRlbXBsYXRlLXJvd3MnXSIpOwogZXZhbEFuZExvZygidGVz
dERpdi5zdHlsZVsnZ3JpZC10ZW1wbGF0ZS1yb3dzJ10gPSAncmVwZWF0KGNhbGMoMSArIDEpLCAx
OHB4KSciKTsKIHNob3VsZEJlRXF1YWxUb1N0cmluZygidGVzdERpdi5zdHlsZVsnZ3JpZC10ZW1w
bGF0ZS1yb3dzJ10iLCAicmVwZWF0KDIsIDE4cHgpIik7Ci1zaG91bGRCZUVxdWFsVG9TdHJpbmco
IndpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHRlc3REaXYpLmdldFByb3BlcnR5VmFsdWUoJ2dyaWQt
dGVtcGxhdGUtcm93cycpIiwgIjE4cHggMThweCIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ3
aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZSh0ZXN0RGl2KS5nZXRQcm9wZXJ0eVZhbHVlKCdncmlkLXRl
bXBsYXRlLXJvd3MnKSIsICJyZXBlYXQoMiwgMThweCkiKTsKIAogPC9zY3JpcHQ+CiA8c2NyaXB0
IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1ncmlkLWxheW91dC9ub24tZ3JpZC1lbGVtZW50LXJl
cGVhdC1nZXQtc2V0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5
b3V0L25vbi1ncmlkLWVsZW1lbnQtcmVwZWF0LWdldC1zZXQtZXhwZWN0ZWQudHh0CmluZGV4IGYy
MTA0NzUyZjJkMDkwMTgzN2JmNDBmYTBmYzhhMjk4MGIzYTA0YzMuLjc0Mjc3NjJhOTViNTE0ZjM5
NWNkMzJhMGM3ZTBlZmFhY2NjYzRmOWUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3Nz
LWdyaWQtbGF5b3V0L25vbi1ncmlkLWVsZW1lbnQtcmVwZWF0LWdldC1zZXQtZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L25vbi1ncmlkLWVsZW1lbnQt
cmVwZWF0LWdldC1zZXQtZXhwZWN0ZWQudHh0CkBAIC00LDI0ICs0LDI0IEBAIE9uIHN1Y2Nlc3Ms
IHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJU
RVNUIENPTVBMRVRFCiAKIAogVGVzdCBnZXR0aW5nIGdyaWQtdGVtcGxhdGUtY29sdW1ucyBhbmQg
Z3JpZC10ZW1wbGF0ZS1yb3dzIHNldCB0aHJvdWdoIENTUwotUEFTUyB3aW5kb3cuZ2V0Q29tcHV0
ZWRTdHlsZShzaW5nbGVTaW5nbGVUcmFja1JlcGVhdCwgJycpLmdldFByb3BlcnR5VmFsdWUoJ2dy
aWQtdGVtcGxhdGUtY29sdW1ucycpIGlzICIxNSUiCi1QQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0
eWxlKHNpbmdsZVNpbmdsZVRyYWNrUmVwZWF0LCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgnZ3JpZC10
ZW1wbGF0ZS1yb3dzJykgaXMgIjE4cHgiCi1QQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHR3
b1NpbmdsZVRyYWNrUmVwZWF0LCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgnZ3JpZC10ZW1wbGF0ZS1j
b2x1bW5zJykgaXMgIm1pbm1heCgxNXB4LCA1MCUpIG1pbm1heCgxNXB4LCA1MCUpIgotUEFTUyB3
aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZSh0d29TaW5nbGVUcmFja1JlcGVhdCwgJycpLmdldFByb3Bl
cnR5VmFsdWUoJ2dyaWQtdGVtcGxhdGUtcm93cycpIGlzICJhdXRvIGF1dG8iCi1QQVNTIHdpbmRv
dy5nZXRDb21wdXRlZFN0eWxlKHR3b0RvdWJsZVRyYWNrUmVwZWF0LCAnJykuZ2V0UHJvcGVydHlW
YWx1ZSgnZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zJykgaXMgImF1dG8gbWlubWF4KDEwMHB4LCAxMjBw
eCkgYXV0byBtaW5tYXgoMTAwcHgsIDEyMHB4KSIKLVBBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5
bGUodHdvRG91YmxlVHJhY2tSZXBlYXQsICcnKS5nZXRQcm9wZXJ0eVZhbHVlKCdncmlkLXRlbXBs
YXRlLXJvd3MnKSBpcyAibWlubWF4KDVweCwgMTBweCkgYXV0byBtaW5tYXgoNXB4LCAxMHB4KSBh
dXRvIgotUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZSh0d29Eb3VibGVUcmFja1dpdGhOYW1l
ZEdyaWRMaW5lUmVwZWF0LCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgnZ3JpZC10ZW1wbGF0ZS1jb2x1
bW5zJykgaXMgImF1dG8gW21pZGRsZV0gMjUwcHggW2VuZF0gYXV0byBbbWlkZGxlXSAyNTBweCBb
ZW5kXSIKLVBBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUodHdvRG91YmxlVHJhY2tXaXRoTmFt
ZWRHcmlkTGluZVJlcGVhdCwgJycpLmdldFByb3BlcnR5VmFsdWUoJ2dyaWQtdGVtcGxhdGUtcm93
cycpIGlzICIxMHB4IFtzdGFydF0gYXV0byBbZW5kXSAxMHB4IFtzdGFydF0gYXV0byBbZW5kXSIK
LVBBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUodHdvRG91YmxlVHJhY2tXaXRoVHJhaWxpbmdO
YW1lZEdyaWRMaW5lUmVwZWF0LCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgnZ3JpZC10ZW1wbGF0ZS1j
b2x1bW5zJykgaXMgIltiZWZvcmVdIGF1dG8gW2JlZm9yZV0gYXV0byIKLVBBU1Mgd2luZG93Lmdl
dENvbXB1dGVkU3R5bGUodHdvRG91YmxlVHJhY2tXaXRoVHJhaWxpbmdOYW1lZEdyaWRMaW5lUmVw
ZWF0LCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgnZ3JpZC10ZW1wbGF0ZS1yb3dzJykgaXMgIltiZWZv
cmVdIDEwcHggW2JlZm9yZV0gMTBweCIKLVBBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUodHJh
aWxpbmdOYW1lZEdyaWRMaW5lUmVwZWF0LCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgnZ3JpZC10ZW1w
bGF0ZS1jb2x1bW5zJykgaXMgIjI1MHB4IFtlbmRdIgotUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRT
dHlsZSh0cmFpbGluZ05hbWVkR3JpZExpbmVSZXBlYXQsICcnKS5nZXRQcm9wZXJ0eVZhbHVlKCdn
cmlkLXRlbXBsYXRlLXJvd3MnKSBpcyAiMTBweCBbZW5kXSIKLVBBU1Mgd2luZG93LmdldENvbXB1
dGVkU3R5bGUobGVhZGluZ05hbWVkR3JpZExpbmVSZXBlYXQsICcnKS5nZXRQcm9wZXJ0eVZhbHVl
KCdncmlkLXRlbXBsYXRlLWNvbHVtbnMnKSBpcyAiW3N0YXJ0XSAyNTBweCAyNTBweCIKLVBBU1Mg
d2luZG93LmdldENvbXB1dGVkU3R5bGUobGVhZGluZ05hbWVkR3JpZExpbmVSZXBlYXQsICcnKS5n
ZXRQcm9wZXJ0eVZhbHVlKCdncmlkLXRlbXBsYXRlLXJvd3MnKSBpcyAiW3N0YXJ0XSAxMHB4IDEw
cHgiCi1QQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKG1peFJlcGVhdEFmdGVyTm9uUmVwZWF0
LCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgnZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zJykgaXMgIltzdGFy
dF0gMTQwcHggMjUwcHggMjUwcHgiCi1QQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKG1peFJl
cGVhdEFmdGVyTm9uUmVwZWF0LCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgnZ3JpZC10ZW1wbGF0ZS1y
b3dzJykgaXMgImF1dG8gMTBweCAxMHB4IgotUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZSht
aXhOb25SZXBlYXRBZnRlclJlcGVhdCwgJycpLmdldFByb3BlcnR5VmFsdWUoJ2dyaWQtdGVtcGxh
dGUtY29sdW1ucycpIGlzICIyNTBweCAyNTBweCAxNSUgW2xhc3RdIgotUEFTUyB3aW5kb3cuZ2V0
Q29tcHV0ZWRTdHlsZShtaXhOb25SZXBlYXRBZnRlclJlcGVhdCwgJycpLmdldFByb3BlcnR5VmFs
dWUoJ2dyaWQtdGVtcGxhdGUtcm93cycpIGlzICIxMHB4IDEwcHggW2VuZF0gYXV0byIKK1BBU1Mg
d2luZG93LmdldENvbXB1dGVkU3R5bGUoc2luZ2xlU2luZ2xlVHJhY2tSZXBlYXQsICcnKS5nZXRQ
cm9wZXJ0eVZhbHVlKCdncmlkLXRlbXBsYXRlLWNvbHVtbnMnKSBpcyAicmVwZWF0KDEsIDE1JSki
CitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHNpbmdsZVNpbmdsZVRyYWNrUmVwZWF0LCAn
JykuZ2V0UHJvcGVydHlWYWx1ZSgnZ3JpZC10ZW1wbGF0ZS1yb3dzJykgaXMgInJlcGVhdCgxLCAx
OHB4KSIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUodHdvU2luZ2xlVHJhY2tSZXBlYXQs
ICcnKS5nZXRQcm9wZXJ0eVZhbHVlKCdncmlkLXRlbXBsYXRlLWNvbHVtbnMnKSBpcyAicmVwZWF0
KDIsIG1pbm1heCgxNXB4LCA1MCUpKSIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUodHdv
U2luZ2xlVHJhY2tSZXBlYXQsICcnKS5nZXRQcm9wZXJ0eVZhbHVlKCdncmlkLXRlbXBsYXRlLXJv
d3MnKSBpcyAicmVwZWF0KDIsIGF1dG8pIgorUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZSh0
d29Eb3VibGVUcmFja1JlcGVhdCwgJycpLmdldFByb3BlcnR5VmFsdWUoJ2dyaWQtdGVtcGxhdGUt
Y29sdW1ucycpIGlzICJyZXBlYXQoMiwgYXV0byBtaW5tYXgoMTAwcHgsIDEyMHB4KSkiCitQQVNT
IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHR3b0RvdWJsZVRyYWNrUmVwZWF0LCAnJykuZ2V0UHJv
cGVydHlWYWx1ZSgnZ3JpZC10ZW1wbGF0ZS1yb3dzJykgaXMgInJlcGVhdCgyLCBtaW5tYXgoNXB4
LCAxMHB4KSBhdXRvKSIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUodHdvRG91YmxlVHJh
Y2tXaXRoTmFtZWRHcmlkTGluZVJlcGVhdCwgJycpLmdldFByb3BlcnR5VmFsdWUoJ2dyaWQtdGVt
cGxhdGUtY29sdW1ucycpIGlzICJyZXBlYXQoMiwgYXV0byBbbWlkZGxlXSAyNTBweCBbZW5kXSki
CitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHR3b0RvdWJsZVRyYWNrV2l0aE5hbWVkR3Jp
ZExpbmVSZXBlYXQsICcnKS5nZXRQcm9wZXJ0eVZhbHVlKCdncmlkLXRlbXBsYXRlLXJvd3MnKSBp
cyAicmVwZWF0KDIsIDEwcHggW3N0YXJ0XSBhdXRvIFtlbmRdKSIKK1BBU1Mgd2luZG93LmdldENv
bXB1dGVkU3R5bGUodHdvRG91YmxlVHJhY2tXaXRoVHJhaWxpbmdOYW1lZEdyaWRMaW5lUmVwZWF0
LCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgnZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zJykgaXMgInJlcGVh
dCgyLCBbYmVmb3JlXSBhdXRvKSIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUodHdvRG91
YmxlVHJhY2tXaXRoVHJhaWxpbmdOYW1lZEdyaWRMaW5lUmVwZWF0LCAnJykuZ2V0UHJvcGVydHlW
YWx1ZSgnZ3JpZC10ZW1wbGF0ZS1yb3dzJykgaXMgInJlcGVhdCgyLCBbYmVmb3JlXSAxMHB4KSIK
K1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUodHJhaWxpbmdOYW1lZEdyaWRMaW5lUmVwZWF0
LCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgnZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zJykgaXMgInJlcGVh
dCgxLCAyNTBweCkgW2VuZF0iCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHRyYWlsaW5n
TmFtZWRHcmlkTGluZVJlcGVhdCwgJycpLmdldFByb3BlcnR5VmFsdWUoJ2dyaWQtdGVtcGxhdGUt
cm93cycpIGlzICJyZXBlYXQoMSwgMTBweCkgW2VuZF0iCitQQVNTIHdpbmRvdy5nZXRDb21wdXRl
ZFN0eWxlKGxlYWRpbmdOYW1lZEdyaWRMaW5lUmVwZWF0LCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgn
Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zJykgaXMgIltzdGFydF0gcmVwZWF0KDIsIDI1MHB4KSIKK1BB
U1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUobGVhZGluZ05hbWVkR3JpZExpbmVSZXBlYXQsICcn
KS5nZXRQcm9wZXJ0eVZhbHVlKCdncmlkLXRlbXBsYXRlLXJvd3MnKSBpcyAiW3N0YXJ0XSByZXBl
YXQoMiwgMTBweCkiCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKG1peFJlcGVhdEFmdGVy
Tm9uUmVwZWF0LCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgnZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zJykg
aXMgIltzdGFydF0gMTQwcHggcmVwZWF0KDIsIDI1MHB4KSIKK1BBU1Mgd2luZG93LmdldENvbXB1
dGVkU3R5bGUobWl4UmVwZWF0QWZ0ZXJOb25SZXBlYXQsICcnKS5nZXRQcm9wZXJ0eVZhbHVlKCdn
cmlkLXRlbXBsYXRlLXJvd3MnKSBpcyAiYXV0byByZXBlYXQoMiwgMTBweCkiCitQQVNTIHdpbmRv
dy5nZXRDb21wdXRlZFN0eWxlKG1peE5vblJlcGVhdEFmdGVyUmVwZWF0LCAnJykuZ2V0UHJvcGVy
dHlWYWx1ZSgnZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zJykgaXMgInJlcGVhdCgyLCAyNTBweCkgMTUl
IFtsYXN0XSIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUobWl4Tm9uUmVwZWF0QWZ0ZXJS
ZXBlYXQsICcnKS5nZXRQcm9wZXJ0eVZhbHVlKCdncmlkLXRlbXBsYXRlLXJvd3MnKSBpcyAicmVw
ZWF0KDIsIDEwcHgpIFtlbmRdIGF1dG8iCiAKIFRlc3QgaW52YWxpZCByZXBlYXQgc3ludGF4Lgog
UEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50LCAnJykuZ2V0UHJvcGVydHlWYWx1
ZSgnZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zJykgaXMgIm5vbmUiCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L2Nzcy1ncmlkLWxheW91dC9ub24tZ3JpZC1lbGVtZW50LXJlcGVhdC1nZXQtc2V0
Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1ncmlkLWxheW91dC9ub24tZ3JpZC1lbGVtZW50
LXJlcGVhdC1nZXQtc2V0Lmh0bWwKaW5kZXggZmYzYjJmMDFmNDQzODkyNTg4ZWYzYzk5YmYzZTY5
YjQ2MTQxZTdlZS4uNDQ3ZWI2MjBjMTkyNjNlZDEyYjdjMGY2OGYxNzc4NTg4NjU5Y2FhNSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvbm9uLWdyaWQtZWxlbWVu
dC1yZXBlYXQtZ2V0LXNldC5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5
b3V0L25vbi1ncmlkLWVsZW1lbnQtcmVwZWF0LWdldC1zZXQuaHRtbApAQCAtNjYsMTUgKzY2LDE1
IEBACiAgICAgZGVzY3JpcHRpb24oJ1Rlc3QgdGhhdCBzZXR0aW5nIGFuZCBnZXR0aW5nIGdyaWQt
dGVtcGxhdGUtY29sdW1ucyBhbmQgZ3JpZC10ZW1wbGF0ZS1yb3dzIHdpdGggcmVwZWF0KCkgd29y
a3MgYXMgZXhwZWN0ZWQnKTsKIAogICAgIGRlYnVnKCJUZXN0IGdldHRpbmcgZ3JpZC10ZW1wbGF0
ZS1jb2x1bW5zIGFuZCBncmlkLXRlbXBsYXRlLXJvd3Mgc2V0IHRocm91Z2ggQ1NTIik7Ci0gICAg
dGVzdEdyaWRUZW1wbGF0ZXNWYWx1ZXMoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNpbmdsZVNp
bmdsZVRyYWNrUmVwZWF0IiksICIxNSUiLCAiMThweCIpOwotICAgIHRlc3RHcmlkVGVtcGxhdGVz
VmFsdWVzKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0d29TaW5nbGVUcmFja1JlcGVhdCIpLCAi
bWlubWF4KDE1cHgsIDUwJSkgbWlubWF4KDE1cHgsIDUwJSkiLCAiYXV0byBhdXRvIik7Ci0gICAg
dGVzdEdyaWRUZW1wbGF0ZXNWYWx1ZXMoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInR3b0RvdWJs
ZVRyYWNrUmVwZWF0IiksICJhdXRvIG1pbm1heCgxMDBweCwgMTIwcHgpIGF1dG8gbWlubWF4KDEw
MHB4LCAxMjBweCkiLCAibWlubWF4KDVweCwgMTBweCkgYXV0byBtaW5tYXgoNXB4LCAxMHB4KSBh
dXRvIik7Ci0gICAgdGVzdEdyaWRUZW1wbGF0ZXNWYWx1ZXMoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInR3b0RvdWJsZVRyYWNrV2l0aE5hbWVkR3JpZExpbmVSZXBlYXQiKSwgImF1dG8gW21pZGRs
ZV0gMjUwcHggW2VuZF0gYXV0byBbbWlkZGxlXSAyNTBweCBbZW5kXSIsICIxMHB4IFtzdGFydF0g
YXV0byBbZW5kXSAxMHB4IFtzdGFydF0gYXV0byBbZW5kXSIpOwotICAgIHRlc3RHcmlkVGVtcGxh
dGVzVmFsdWVzKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0d29Eb3VibGVUcmFja1dpdGhUcmFp
bGluZ05hbWVkR3JpZExpbmVSZXBlYXQiKSwgIltiZWZvcmVdIGF1dG8gW2JlZm9yZV0gYXV0byIs
ICJbYmVmb3JlXSAxMHB4IFtiZWZvcmVdIDEwcHgiKTsKLSAgICB0ZXN0R3JpZFRlbXBsYXRlc1Zh
bHVlcyhkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidHJhaWxpbmdOYW1lZEdyaWRMaW5lUmVwZWF0
IiksICIyNTBweCBbZW5kXSIsICIxMHB4IFtlbmRdIik7Ci0gICAgdGVzdEdyaWRUZW1wbGF0ZXNW
YWx1ZXMoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxlYWRpbmdOYW1lZEdyaWRMaW5lUmVwZWF0
IiksICJbc3RhcnRdIDI1MHB4IDI1MHB4IiwgIltzdGFydF0gMTBweCAxMHB4Iik7Ci0gICAgdGVz
dEdyaWRUZW1wbGF0ZXNWYWx1ZXMoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1peFJlcGVhdEFm
dGVyTm9uUmVwZWF0IiksICJbc3RhcnRdIDE0MHB4IDI1MHB4IDI1MHB4IiwgImF1dG8gMTBweCAx
MHB4Iik7Ci0gICAgdGVzdEdyaWRUZW1wbGF0ZXNWYWx1ZXMoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoIm1peE5vblJlcGVhdEFmdGVyUmVwZWF0IiksICIyNTBweCAyNTBweCAxNSUgW2xhc3RdIiwg
IjEwcHggMTBweCBbZW5kXSBhdXRvIik7CisgICAgdGVzdEdyaWRUZW1wbGF0ZXNWYWx1ZXMoZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNpbmdsZVNpbmdsZVRyYWNrUmVwZWF0IiksICJyZXBlYXQo
MSwgMTUlKSIsICJyZXBlYXQoMSwgMThweCkiKTsKKyAgICB0ZXN0R3JpZFRlbXBsYXRlc1ZhbHVl
cyhkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidHdvU2luZ2xlVHJhY2tSZXBlYXQiKSwgInJlcGVh
dCgyLCBtaW5tYXgoMTVweCwgNTAlKSkiLCAicmVwZWF0KDIsIGF1dG8pIik7CisgICAgdGVzdEdy
aWRUZW1wbGF0ZXNWYWx1ZXMoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInR3b0RvdWJsZVRyYWNr
UmVwZWF0IiksICJyZXBlYXQoMiwgYXV0byBtaW5tYXgoMTAwcHgsIDEyMHB4KSkiLCAicmVwZWF0
KDIsIG1pbm1heCg1cHgsIDEwcHgpIGF1dG8pIik7CisgICAgdGVzdEdyaWRUZW1wbGF0ZXNWYWx1
ZXMoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInR3b0RvdWJsZVRyYWNrV2l0aE5hbWVkR3JpZExp
bmVSZXBlYXQiKSwgInJlcGVhdCgyLCBhdXRvIFttaWRkbGVdIDI1MHB4IFtlbmRdKSIsICJyZXBl
YXQoMiwgMTBweCBbc3RhcnRdIGF1dG8gW2VuZF0pIik7CisgICAgdGVzdEdyaWRUZW1wbGF0ZXNW
YWx1ZXMoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInR3b0RvdWJsZVRyYWNrV2l0aFRyYWlsaW5n
TmFtZWRHcmlkTGluZVJlcGVhdCIpLCAicmVwZWF0KDIsIFtiZWZvcmVdIGF1dG8pIiwgInJlcGVh
dCgyLCBbYmVmb3JlXSAxMHB4KSIpOworICAgIHRlc3RHcmlkVGVtcGxhdGVzVmFsdWVzKGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJ0cmFpbGluZ05hbWVkR3JpZExpbmVSZXBlYXQiKSwgInJlcGVh
dCgxLCAyNTBweCkgW2VuZF0iLCAicmVwZWF0KDEsIDEwcHgpIFtlbmRdIik7CisgICAgdGVzdEdy
aWRUZW1wbGF0ZXNWYWx1ZXMoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxlYWRpbmdOYW1lZEdy
aWRMaW5lUmVwZWF0IiksICJbc3RhcnRdIHJlcGVhdCgyLCAyNTBweCkiLCAiW3N0YXJ0XSByZXBl
YXQoMiwgMTBweCkiKTsKKyAgICB0ZXN0R3JpZFRlbXBsYXRlc1ZhbHVlcyhkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgibWl4UmVwZWF0QWZ0ZXJOb25SZXBlYXQiKSwgIltzdGFydF0gMTQwcHggcmVw
ZWF0KDIsIDI1MHB4KSIsICJhdXRvIHJlcGVhdCgyLCAxMHB4KSIpOworICAgIHRlc3RHcmlkVGVt
cGxhdGVzVmFsdWVzKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtaXhOb25SZXBlYXRBZnRlclJl
cGVhdCIpLCAicmVwZWF0KDIsIDI1MHB4KSAxNSUgW2xhc3RdIiwgInJlcGVhdCgyLCAxMHB4KSBb
ZW5kXSBhdXRvIik7CiAKICAgICBkZWJ1ZygiIik7CiAgICAgZGVidWcoIlRlc3QgaW52YWxpZCBy
ZXBlYXQgc3ludGF4LiIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvYW5pbWF0aW9uL2dyaWQtdGVtcGxhdGUtY29s
dW1ucy1pbnRlcnBvbGF0aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1ncmlkL2FuaW1hdGlvbi9ncmlkLXRlbXBsYXRl
LWNvbHVtbnMtaW50ZXJwb2xhdGlvbi1leHBlY3RlZC50eHQKaW5kZXggMjM1NWMyYzk2OTk2OTQ3
ZDNhYjExMGRmMzIyZWI0ZDc0NDA1NWRlNS4uOWZkOTIzYjI5ZjY2N2IwNzRmZDBiZjNmYTM1YTUz
NDQzNzM4MTA3MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvYW5pbWF0aW9uL2dyaWQtdGVtcGxhdGUtY29sdW1ucy1p
bnRlcnBvbGF0aW9uLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3JpZC9hbmltYXRpb24vZ3JpZC10ZW1wbGF0ZS1j
b2x1bW5zLWludGVycG9sYXRpb24tZXhwZWN0ZWQudHh0CkBAIC0zMzksMzAgKzMzOSwzMCBAQCBQ
QVNTIFdlYiBBbmltYXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zPiBmcm9t
IFtyZXBlYXQoMiwgMmZyIDMwcHgpXQogUEFTUyBXZWIgQW5pbWF0aW9uczogcHJvcGVydHkgPGdy
aWQtdGVtcGxhdGUtY29sdW1ucz4gZnJvbSBbcmVwZWF0KDIsIDJmciAzMHB4KV0gdG8gW3JlcGVh
dCg0LCA0MHB4KV0gYXQgKDAuNikgc2hvdWxkIGJlIFtyZXBlYXQoNCwgNDBweCldCiBQQVNTIFdl
YiBBbmltYXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zPiBmcm9tIFtyZXBl
YXQoMiwgMmZyIDMwcHgpXSB0byBbcmVwZWF0KDQsIDQwcHgpXSBhdCAoMSkgc2hvdWxkIGJlIFty
ZXBlYXQoNCwgNDBweCldCiBQQVNTIFdlYiBBbmltYXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1w
bGF0ZS1jb2x1bW5zPiBmcm9tIFtyZXBlYXQoMiwgMmZyIDMwcHgpXSB0byBbcmVwZWF0KDQsIDQw
cHgpXSBhdCAoMS41KSBzaG91bGQgYmUgW3JlcGVhdCg0LCA0MHB4KV0KLUZBSUwgQ1NTIFRyYW5z
aXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zPiBmcm9tIFsxZnIgcmVwZWF0
KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkg
MmZyXSBhdCAoLTEpIHNob3VsZCBiZSBbMGZyIHJlcGVhdCgyLCAxZnIgYXV0byAyMHB4KSAwZnJd
IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIwZnIgMWZyIGF1dG8gMjBweCAxZnIgYXV0byAyMHB4
IDBmciAiIGJ1dCBnb3QgIjJmciAzZnIgMzBweCA0MHB4IDNmciAzMHB4IDQwcHggMmZyICIKLUZB
SUwgQ1NTIFRyYW5zaXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zPiBmcm9t
IFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2Zy
IDMwcHggNDBweCkgMmZyXSBhdCAoMCkgc2hvdWxkIGJlIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRv
IDMwcHgpIDFmcl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjFmciAyZnIgYXV0byAzMHB4IDJm
ciBhdXRvIDMwcHggMWZyICIgYnV0IGdvdCAiMmZyIDNmciAzMHB4IDQwcHggM2ZyIDMwcHggNDBw
eCAyZnIgIgotRkFJTCBDU1MgVHJhbnNpdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLWNv
bHVtbnM+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJl
cGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgwLjQpIHNob3VsZCBiZSBbMS40ZnIgcmVw
ZWF0KDIsIDIuNGZyIGF1dG8gMzRweCkgMS40ZnJdIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIx
LjRmciAyLjRmciBhdXRvIDM0cHggMi40ZnIgYXV0byAzNHB4IDEuNGZyICIgYnV0IGdvdCAiMmZy
IDNmciAzMHB4IDQwcHggM2ZyIDMwcHggNDBweCAyZnIgIgotRkFJTCBDU1MgVHJhbnNpdGlvbnM6
IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLWNvbHVtbnM+IGZyb20gWzFmciByZXBlYXQoMiwgMmZy
IGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0
ICgwLjYpIHNob3VsZCBiZSBbMS42ZnIgcmVwZWF0KDIsIDIuNmZyIDMwcHggMzZweCkgMS42ZnJd
IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIxLjZmciAyLjZmciAzMHB4IDM2cHggMi42ZnIgMzBw
eCAzNnB4IDEuNmZyICIgYnV0IGdvdCAiMmZyIDNmciAzMHB4IDQwcHggM2ZyIDMwcHggNDBweCAy
ZnIgIgorRkFJTCBDU1MgVHJhbnNpdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLWNvbHVt
bnM+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVh
dCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgtMSkgc2hvdWxkIGJlIFswZnIgcmVwZWF0KDIs
IDFmciBhdXRvIDIwcHgpIDBmcl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjBmciByZXBlYXQg
KCAyICwgMWZyIGF1dG8gMjBweCApIDBmciAiIGJ1dCBnb3QgIjJmciByZXBlYXQgKCAyICwgM2Zy
IDMwcHggNDBweCApIDJmciAiCitGQUlMIENTUyBUcmFuc2l0aW9uczogcHJvcGVydHkgPGdyaWQt
dGVtcGxhdGUtY29sdW1ucz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJd
IHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKDApIHNob3VsZCBiZSBb
MWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVk
ICIxZnIgcmVwZWF0ICggMiAsIDJmciBhdXRvIDMwcHggKSAxZnIgIiBidXQgZ290ICIyZnIgcmVw
ZWF0ICggMiAsIDNmciAzMHB4IDQwcHggKSAyZnIgIgorRkFJTCBDU1MgVHJhbnNpdGlvbnM6IHBy
b3BlcnR5IDxncmlkLXRlbXBsYXRlLWNvbHVtbnM+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1
dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgw
LjQpIHNob3VsZCBiZSBbMS40ZnIgcmVwZWF0KDIsIDIuNGZyIGF1dG8gMzRweCkgMS40ZnJdIGFz
c2VydF9lcXVhbHM6IGV4cGVjdGVkICIxLjRmciByZXBlYXQgKCAyICwgMi40ZnIgYXV0byAzNHB4
ICkgMS40ZnIgIiBidXQgZ290ICIyZnIgcmVwZWF0ICggMiAsIDNmciAzMHB4IDQwcHggKSAyZnIg
IgorRkFJTCBDU1MgVHJhbnNpdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLWNvbHVtbnM+
IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgy
LCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgwLjYpIHNob3VsZCBiZSBbMS42ZnIgcmVwZWF0KDIs
IDIuNmZyIDMwcHggMzZweCkgMS42ZnJdIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIxLjZmciBy
ZXBlYXQgKCAyICwgMi42ZnIgMzBweCAzNnB4ICkgMS42ZnIgIiBidXQgZ290ICIyZnIgcmVwZWF0
ICggMiAsIDNmciAzMHB4IDQwcHggKSAyZnIgIgogUEFTUyBDU1MgVHJhbnNpdGlvbnM6IHByb3Bl
cnR5IDxncmlkLXRlbXBsYXRlLWNvbHVtbnM+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8g
MzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgxKSBz
aG91bGQgYmUgWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXQotRkFJTCBDU1MgVHJh
bnNpdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLWNvbHVtbnM+IGZyb20gWzFmciByZXBl
YXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4
KSAyZnJdIGF0ICgyKSBzaG91bGQgYmUgWzNmciByZXBlYXQoMiwgNGZyIDMwcHggNTBweCkgM2Zy
XSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiM2ZyIDRmciAzMHB4IDUwcHggNGZyIDMwcHggNTBw
eCAzZnIgIiBidXQgZ290ICIyZnIgM2ZyIDMwcHggNDBweCAzZnIgMzBweCA0MHB4IDJmciAiCi1G
QUlMIENTUyBUcmFuc2l0aW9ucyB3aXRoIHRyYW5zaXRpb246IGFsbDogcHJvcGVydHkgPGdyaWQt
dGVtcGxhdGUtY29sdW1ucz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJd
IHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKC0xKSBzaG91bGQgYmUg
WzBmciByZXBlYXQoMiwgMWZyIGF1dG8gMjBweCkgMGZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3Rl
ZCAiMGZyIDFmciBhdXRvIDIwcHggMWZyIGF1dG8gMjBweCAwZnIgIiBidXQgZ290ICIyZnIgM2Zy
IDMwcHggNDBweCAzZnIgMzBweCA0MHB4IDJmciAiCi1GQUlMIENTUyBUcmFuc2l0aW9ucyB3aXRo
IHRyYW5zaXRpb246IGFsbDogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtY29sdW1ucz4gZnJvbSBb
MWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAz
MHB4IDQwcHgpIDJmcl0gYXQgKDApIHNob3VsZCBiZSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAz
MHB4KSAxZnJdIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIxZnIgMmZyIGF1dG8gMzBweCAyZnIg
YXV0byAzMHB4IDFmciAiIGJ1dCBnb3QgIjJmciAzZnIgMzBweCA0MHB4IDNmciAzMHB4IDQwcHgg
MmZyICIKLUZBSUwgQ1NTIFRyYW5zaXRpb25zIHdpdGggdHJhbnNpdGlvbjogYWxsOiBwcm9wZXJ0
eSA8Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMw
cHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoMC40KSBz
aG91bGQgYmUgWzEuNGZyIHJlcGVhdCgyLCAyLjRmciBhdXRvIDM0cHgpIDEuNGZyXSBhc3NlcnRf
ZXF1YWxzOiBleHBlY3RlZCAiMS40ZnIgMi40ZnIgYXV0byAzNHB4IDIuNGZyIGF1dG8gMzRweCAx
LjRmciAiIGJ1dCBnb3QgIjJmciAzZnIgMzBweCA0MHB4IDNmciAzMHB4IDQwcHggMmZyICIKLUZB
SUwgQ1NTIFRyYW5zaXRpb25zIHdpdGggdHJhbnNpdGlvbjogYWxsOiBwcm9wZXJ0eSA8Z3JpZC10
ZW1wbGF0ZS1jb2x1bW5zPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0g
dG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoMC42KSBzaG91bGQgYmUg
WzEuNmZyIHJlcGVhdCgyLCAyLjZmciAzMHB4IDM2cHgpIDEuNmZyXSBhc3NlcnRfZXF1YWxzOiBl
eHBlY3RlZCAiMS42ZnIgMi42ZnIgMzBweCAzNnB4IDIuNmZyIDMwcHggMzZweCAxLjZmciAiIGJ1
dCBnb3QgIjJmciAzZnIgMzBweCA0MHB4IDNmciAzMHB4IDQwcHggMmZyICIKK0ZBSUwgQ1NTIFRy
YW5zaXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zPiBmcm9tIFsxZnIgcmVw
ZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBw
eCkgMmZyXSBhdCAoMikgc2hvdWxkIGJlIFszZnIgcmVwZWF0KDIsIDRmciAzMHB4IDUwcHgpIDNm
cl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjNmciByZXBlYXQgKCAyICwgNGZyIDMwcHggNTBw
eCApIDNmciAiIGJ1dCBnb3QgIjJmciByZXBlYXQgKCAyICwgM2ZyIDMwcHggNDBweCApIDJmciAi
CitGQUlMIENTUyBUcmFuc2l0aW9ucyB3aXRoIHRyYW5zaXRpb246IGFsbDogcHJvcGVydHkgPGdy
aWQtdGVtcGxhdGUtY29sdW1ucz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAx
ZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKC0xKSBzaG91bGQg
YmUgWzBmciByZXBlYXQoMiwgMWZyIGF1dG8gMjBweCkgMGZyXSBhc3NlcnRfZXF1YWxzOiBleHBl
Y3RlZCAiMGZyIHJlcGVhdCAoIDIgLCAxZnIgYXV0byAyMHB4ICkgMGZyICIgYnV0IGdvdCAiMmZy
IHJlcGVhdCAoIDIgLCAzZnIgMzBweCA0MHB4ICkgMmZyICIKK0ZBSUwgQ1NTIFRyYW5zaXRpb25z
IHdpdGggdHJhbnNpdGlvbjogYWxsOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zPiBm
cm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwg
M2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoMCkgc2hvdWxkIGJlIFsxZnIgcmVwZWF0KDIsIDJmciBh
dXRvIDMwcHgpIDFmcl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjFmciByZXBlYXQgKCAyICwg
MmZyIGF1dG8gMzBweCApIDFmciAiIGJ1dCBnb3QgIjJmciByZXBlYXQgKCAyICwgM2ZyIDMwcHgg
NDBweCApIDJmciAiCitGQUlMIENTUyBUcmFuc2l0aW9ucyB3aXRoIHRyYW5zaXRpb246IGFsbDog
cHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtY29sdW1ucz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIg
YXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQg
KDAuNCkgc2hvdWxkIGJlIFsxLjRmciByZXBlYXQoMiwgMi40ZnIgYXV0byAzNHB4KSAxLjRmcl0g
YXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjEuNGZyIHJlcGVhdCAoIDIgLCAyLjRmciBhdXRvIDM0
cHggKSAxLjRmciAiIGJ1dCBnb3QgIjJmciByZXBlYXQgKCAyICwgM2ZyIDMwcHggNDBweCApIDJm
ciAiCitGQUlMIENTUyBUcmFuc2l0aW9ucyB3aXRoIHRyYW5zaXRpb246IGFsbDogcHJvcGVydHkg
PGdyaWQtdGVtcGxhdGUtY29sdW1ucz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4
KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKDAuNikgc2hv
dWxkIGJlIFsxLjZmciByZXBlYXQoMiwgMi42ZnIgMzBweCAzNnB4KSAxLjZmcl0gYXNzZXJ0X2Vx
dWFsczogZXhwZWN0ZWQgIjEuNmZyIHJlcGVhdCAoIDIgLCAyLjZmciAzMHB4IDM2cHggKSAxLjZm
ciAiIGJ1dCBnb3QgIjJmciByZXBlYXQgKCAyICwgM2ZyIDMwcHggNDBweCApIDJmciAiCiBQQVNT
IENTUyBUcmFuc2l0aW9ucyB3aXRoIHRyYW5zaXRpb246IGFsbDogcHJvcGVydHkgPGdyaWQtdGVt
cGxhdGUtY29sdW1ucz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRv
IFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKDEpIHNob3VsZCBiZSBbMmZy
IHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdCi1GQUlMIENTUyBUcmFuc2l0aW9ucyB3aXRo
IHRyYW5zaXRpb246IGFsbDogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtY29sdW1ucz4gZnJvbSBb
MWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAz
MHB4IDQwcHgpIDJmcl0gYXQgKDIpIHNob3VsZCBiZSBbM2ZyIHJlcGVhdCgyLCA0ZnIgMzBweCA1
MHB4KSAzZnJdIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIzZnIgNGZyIDMwcHggNTBweCA0ZnIg
MzBweCA1MHB4IDNmciAiIGJ1dCBnb3QgIjJmciAzZnIgMzBweCA0MHB4IDNmciAzMHB4IDQwcHgg
MmZyICIKLUZBSUwgQ1NTIEFuaW1hdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLWNvbHVt
bnM+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVh
dCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgtMSkgc2hvdWxkIGJlIFswZnIgcmVwZWF0KDIs
IDFmciBhdXRvIDIwcHgpIDBmcl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjBmciAxZnIgYXV0
byAyMHB4IDFmciBhdXRvIDIwcHggMGZyICIgYnV0IGdvdCAiMWZyIDJmciBhdXRvIDMwcHggMmZy
IGF1dG8gMzBweCAxZnIgIgorRkFJTCBDU1MgVHJhbnNpdGlvbnMgd2l0aCB0cmFuc2l0aW9uOiBh
bGw6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLWNvbHVtbnM+IGZyb20gWzFmciByZXBlYXQoMiwg
MmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJd
IGF0ICgyKSBzaG91bGQgYmUgWzNmciByZXBlYXQoMiwgNGZyIDMwcHggNTBweCkgM2ZyXSBhc3Nl
cnRfZXF1YWxzOiBleHBlY3RlZCAiM2ZyIHJlcGVhdCAoIDIgLCA0ZnIgMzBweCA1MHB4ICkgM2Zy
ICIgYnV0IGdvdCAiMmZyIHJlcGVhdCAoIDIgLCAzZnIgMzBweCA0MHB4ICkgMmZyICIKK0ZBSUwg
Q1NTIEFuaW1hdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLWNvbHVtbnM+IGZyb20gWzFm
ciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBw
eCA0MHB4KSAyZnJdIGF0ICgtMSkgc2hvdWxkIGJlIFswZnIgcmVwZWF0KDIsIDFmciBhdXRvIDIw
cHgpIDBmcl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjBmciByZXBlYXQgKCAyICwgMWZyIGF1
dG8gMjBweCApIDBmciAiIGJ1dCBnb3QgIjFmciByZXBlYXQgKCAyICwgMmZyIGF1dG8gMzBweCAp
IDFmciAiCiBQQVNTIENTUyBBbmltYXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1jb2x1
bW5zPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciByZXBl
YXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoMCkgc2hvdWxkIGJlIFsxZnIgcmVwZWF0KDIs
IDJmciBhdXRvIDMwcHgpIDFmcl0KLUZBSUwgQ1NTIEFuaW1hdGlvbnM6IHByb3BlcnR5IDxncmlk
LXRlbXBsYXRlLWNvbHVtbnM+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZy
XSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgwLjQpIHNob3VsZCBi
ZSBbMS40ZnIgcmVwZWF0KDIsIDIuNGZyIGF1dG8gMzRweCkgMS40ZnJdIGFzc2VydF9lcXVhbHM6
IGV4cGVjdGVkICIxLjRmciAyLjRmciBhdXRvIDM0cHggMi40ZnIgYXV0byAzNHB4IDEuNGZyICIg
YnV0IGdvdCAiMWZyIDJmciBhdXRvIDMwcHggMmZyIGF1dG8gMzBweCAxZnIgIgotRkFJTCBDU1Mg
QW5pbWF0aW9uczogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtY29sdW1ucz4gZnJvbSBbMWZyIHJl
cGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQw
cHgpIDJmcl0gYXQgKDAuNikgc2hvdWxkIGJlIFsxLjZmciByZXBlYXQoMiwgMi42ZnIgMzBweCAz
NnB4KSAxLjZmcl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjEuNmZyIDIuNmZyIDMwcHggMzZw
eCAyLjZmciAzMHB4IDM2cHggMS42ZnIgIiBidXQgZ290ICIyZnIgM2ZyIDMwcHggNDBweCAzZnIg
MzBweCA0MHB4IDJmciAiCitGQUlMIENTUyBBbmltYXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1w
bGF0ZS1jb2x1bW5zPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8g
WzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoMC40KSBzaG91bGQgYmUgWzEu
NGZyIHJlcGVhdCgyLCAyLjRmciBhdXRvIDM0cHgpIDEuNGZyXSBhc3NlcnRfZXF1YWxzOiBleHBl
Y3RlZCAiMS40ZnIgcmVwZWF0ICggMiAsIDIuNGZyIGF1dG8gMzRweCApIDEuNGZyICIgYnV0IGdv
dCAiMWZyIHJlcGVhdCAoIDIgLCAyZnIgYXV0byAzMHB4ICkgMWZyICIKK0ZBSUwgQ1NTIEFuaW1h
dGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLWNvbHVtbnM+IGZyb20gWzFmciByZXBlYXQo
MiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAy
ZnJdIGF0ICgwLjYpIHNob3VsZCBiZSBbMS42ZnIgcmVwZWF0KDIsIDIuNmZyIDMwcHggMzZweCkg
MS42ZnJdIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIxLjZmciByZXBlYXQgKCAyICwgMi42ZnIg
MzBweCAzNnB4ICkgMS42ZnIgIiBidXQgZ290ICIyZnIgcmVwZWF0ICggMiAsIDNmciAzMHB4IDQw
cHggKSAyZnIgIgogUEFTUyBDU1MgQW5pbWF0aW9uczogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUt
Y29sdW1ucz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIg
cmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKDEpIHNob3VsZCBiZSBbMmZyIHJlcGVh
dCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdCi1GQUlMIENTUyBBbmltYXRpb25zOiBwcm9wZXJ0eSA8
Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgp
IDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoMikgc2hvdWxk
IGJlIFszZnIgcmVwZWF0KDIsIDRmciAzMHB4IDUwcHgpIDNmcl0gYXNzZXJ0X2VxdWFsczogZXhw
ZWN0ZWQgIjNmciA0ZnIgMzBweCA1MHB4IDRmciAzMHB4IDUwcHggM2ZyICIgYnV0IGdvdCAiMmZy
IDNmciAzMHB4IDQwcHggM2ZyIDMwcHggNDBweCAyZnIgIgotRkFJTCBXZWIgQW5pbWF0aW9uczog
cHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtY29sdW1ucz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIg
YXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQg
KC0xKSBzaG91bGQgYmUgWzBmciByZXBlYXQoMiwgMWZyIGF1dG8gMjBweCkgMGZyXSBhc3NlcnRf
ZXF1YWxzOiBleHBlY3RlZCAiMGZyIDFmciBhdXRvIDIwcHggMWZyIGF1dG8gMjBweCAwZnIgIiBi
dXQgZ290ICIxZnIgMmZyIGF1dG8gMzBweCAyZnIgYXV0byAzMHB4IDFmciAiCitGQUlMIENTUyBB
bmltYXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zPiBmcm9tIFsxZnIgcmVw
ZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBw
eCkgMmZyXSBhdCAoMikgc2hvdWxkIGJlIFszZnIgcmVwZWF0KDIsIDRmciAzMHB4IDUwcHgpIDNm
cl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjNmciByZXBlYXQgKCAyICwgNGZyIDMwcHggNTBw
eCApIDNmciAiIGJ1dCBnb3QgIjJmciByZXBlYXQgKCAyICwgM2ZyIDMwcHggNDBweCApIDJmciAi
CitGQUlMIFdlYiBBbmltYXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zPiBm
cm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwg
M2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoLTEpIHNob3VsZCBiZSBbMGZyIHJlcGVhdCgyLCAxZnIg
YXV0byAyMHB4KSAwZnJdIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIwZnIgcmVwZWF0ICggMiAs
IDFmciBhdXRvIDIwcHggKSAwZnIgIiBidXQgZ290ICIxZnIgcmVwZWF0ICggMiAsIDJmciBhdXRv
IDMwcHggKSAxZnIgIgogUEFTUyBXZWIgQW5pbWF0aW9uczogcHJvcGVydHkgPGdyaWQtdGVtcGxh
dGUtY29sdW1ucz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsy
ZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKDApIHNob3VsZCBiZSBbMWZyIHJl
cGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdCi1GQUlMIFdlYiBBbmltYXRpb25zOiBwcm9wZXJ0
eSA8Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMw
cHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoMC40KSBz
aG91bGQgYmUgWzEuNGZyIHJlcGVhdCgyLCAyLjRmciBhdXRvIDM0cHgpIDEuNGZyXSBhc3NlcnRf
ZXF1YWxzOiBleHBlY3RlZCAiMS40ZnIgMi40ZnIgYXV0byAzNHB4IDIuNGZyIGF1dG8gMzRweCAx
LjRmciAiIGJ1dCBnb3QgIjFmciAyZnIgYXV0byAzMHB4IDJmciBhdXRvIDMwcHggMWZyICIKLUZB
SUwgV2ViIEFuaW1hdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLWNvbHVtbnM+IGZyb20g
WzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAzZnIg
MzBweCA0MHB4KSAyZnJdIGF0ICgwLjYpIHNob3VsZCBiZSBbMS42ZnIgcmVwZWF0KDIsIDIuNmZy
IDMwcHggMzZweCkgMS42ZnJdIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIxLjZmciAyLjZmciAz
MHB4IDM2cHggMi42ZnIgMzBweCAzNnB4IDEuNmZyICIgYnV0IGdvdCAiMmZyIDNmciAzMHB4IDQw
cHggM2ZyIDMwcHggNDBweCAyZnIgIgorRkFJTCBXZWIgQW5pbWF0aW9uczogcHJvcGVydHkgPGdy
aWQtdGVtcGxhdGUtY29sdW1ucz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAx
ZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKDAuNCkgc2hvdWxk
IGJlIFsxLjRmciByZXBlYXQoMiwgMi40ZnIgYXV0byAzNHB4KSAxLjRmcl0gYXNzZXJ0X2VxdWFs
czogZXhwZWN0ZWQgIjEuNGZyIHJlcGVhdCAoIDIgLCAyLjRmciBhdXRvIDM0cHggKSAxLjRmciAi
IGJ1dCBnb3QgIjFmciByZXBlYXQgKCAyICwgMmZyIGF1dG8gMzBweCApIDFmciAiCitGQUlMIFdl
YiBBbmltYXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zPiBmcm9tIFsxZnIg
cmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHgg
NDBweCkgMmZyXSBhdCAoMC42KSBzaG91bGQgYmUgWzEuNmZyIHJlcGVhdCgyLCAyLjZmciAzMHB4
IDM2cHgpIDEuNmZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiMS42ZnIgcmVwZWF0ICggMiAs
IDIuNmZyIDMwcHggMzZweCApIDEuNmZyICIgYnV0IGdvdCAiMmZyIHJlcGVhdCAoIDIgLCAzZnIg
MzBweCA0MHB4ICkgMmZyICIKIFBBU1MgV2ViIEFuaW1hdGlvbnM6IHByb3BlcnR5IDxncmlkLXRl
bXBsYXRlLWNvbHVtbnM+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0
byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgxKSBzaG91bGQgYmUgWzJm
ciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXQotRkFJTCBXZWIgQW5pbWF0aW9uczogcHJv
cGVydHkgPGdyaWQtdGVtcGxhdGUtY29sdW1ucz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0
byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKDIp
IHNob3VsZCBiZSBbM2ZyIHJlcGVhdCgyLCA0ZnIgMzBweCA1MHB4KSAzZnJdIGFzc2VydF9lcXVh
bHM6IGV4cGVjdGVkICIzZnIgNGZyIDMwcHggNTBweCA0ZnIgMzBweCA1MHB4IDNmciAiIGJ1dCBn
b3QgIjJmciAzZnIgMzBweCA0MHB4IDNmciAzMHB4IDQwcHggMmZyICIKK0ZBSUwgV2ViIEFuaW1h
dGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLWNvbHVtbnM+IGZyb20gWzFmciByZXBlYXQo
MiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAy
ZnJdIGF0ICgyKSBzaG91bGQgYmUgWzNmciByZXBlYXQoMiwgNGZyIDMwcHggNTBweCkgM2ZyXSBh
c3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiM2ZyIHJlcGVhdCAoIDIgLCA0ZnIgMzBweCA1MHB4ICkg
M2ZyICIgYnV0IGdvdCAiMmZyIHJlcGVhdCAoIDIgLCAzZnIgMzBweCA0MHB4ICkgMmZyICIKIFBB
U1MgQ1NTIFRyYW5zaXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zPiBmcm9t
IFsxMHB4IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgyNXB4LCAxZnIpKSAxMHB4XSB0byBbMjBw
eCAyMHB4IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgzMHB4LCAxZnIpKV0gYXQgKC0wLjMpIHNo
b3VsZCBiZSBbMjBweCAyMHB4IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgzMHB4LCAxZnIpKV0K
IFBBU1MgQ1NTIFRyYW5zaXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zPiBm
cm9tIFsxMHB4IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgyNXB4LCAxZnIpKSAxMHB4XSB0byBb
MjBweCAyMHB4IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgzMHB4LCAxZnIpKV0gYXQgKDApIHNo
b3VsZCBiZSBbMjBweCAyMHB4IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgzMHB4LCAxZnIpKV0K
IFBBU1MgQ1NTIFRyYW5zaXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zPiBm
cm9tIFsxMHB4IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgyNXB4LCAxZnIpKSAxMHB4XSB0byBb
MjBweCAyMHB4IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgzMHB4LCAxZnIpKV0gYXQgKDAuMykg
c2hvdWxkIGJlIFsyMHB4IDIwcHggcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDMwcHgsIDFmcikp
XQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3MvY3NzLWdyaWQvYW5pbWF0aW9uL2dyaWQtdGVtcGxhdGUtcm93cy1pbnRlcnBvbGF0aW9u
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy1ncmlkL2FuaW1hdGlvbi9ncmlkLXRlbXBsYXRlLXJvd3MtaW50ZXJwb2xhdGlv
bi1leHBlY3RlZC50eHQKaW5kZXggNGZhOTAyM2FjODQyMDIwZWZmYTVhNmU2NmE3OTM4NWFhNTU2
NzQzZS4uYTI1NmRmYWYwMDIxZDc0ZGNkNDNiODMwOTZlYzIyM2JmYTQzZTM2ZSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdy
aWQvYW5pbWF0aW9uL2dyaWQtdGVtcGxhdGUtcm93cy1pbnRlcnBvbGF0aW9uLWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3MtZ3JpZC9hbmltYXRpb24vZ3JpZC10ZW1wbGF0ZS1yb3dzLWludGVycG9sYXRpb24tZXhwZWN0
ZWQudHh0CkBAIC0zMzksMzAgKzMzOSwzMCBAQCBQQVNTIFdlYiBBbmltYXRpb25zOiBwcm9wZXJ0
eSA8Z3JpZC10ZW1wbGF0ZS1yb3dzPiBmcm9tIFtyZXBlYXQoMiwgMmZyIDMwcHgpXSB0bwogUEFT
UyBXZWIgQW5pbWF0aW9uczogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtcm93cz4gZnJvbSBbcmVw
ZWF0KDIsIDJmciAzMHB4KV0gdG8gW3JlcGVhdCg0LCA0MHB4KV0gYXQgKDAuNikgc2hvdWxkIGJl
IFtyZXBlYXQoNCwgNDBweCldCiBQQVNTIFdlYiBBbmltYXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10
ZW1wbGF0ZS1yb3dzPiBmcm9tIFtyZXBlYXQoMiwgMmZyIDMwcHgpXSB0byBbcmVwZWF0KDQsIDQw
cHgpXSBhdCAoMSkgc2hvdWxkIGJlIFtyZXBlYXQoNCwgNDBweCldCiBQQVNTIFdlYiBBbmltYXRp
b25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1yb3dzPiBmcm9tIFtyZXBlYXQoMiwgMmZyIDMw
cHgpXSB0byBbcmVwZWF0KDQsIDQwcHgpXSBhdCAoMS41KSBzaG91bGQgYmUgW3JlcGVhdCg0LCA0
MHB4KV0KLUZBSUwgQ1NTIFRyYW5zaXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1yb3dz
PiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciByZXBlYXQo
MiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoLTEpIHNob3VsZCBiZSBbMGZyIHJlcGVhdCgyLCAx
ZnIgYXV0byAyMHB4KSAwZnJdIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIwZnIgMWZyIGF1dG8g
MjBweCAxZnIgYXV0byAyMHB4IDBmciAiIGJ1dCBnb3QgIjJmciAzZnIgMzBweCA0MHB4IDNmciAz
MHB4IDQwcHggMmZyICIKLUZBSUwgQ1NTIFRyYW5zaXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1w
bGF0ZS1yb3dzPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJm
ciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoMCkgc2hvdWxkIGJlIFsxZnIgcmVw
ZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjFmciAy
ZnIgYXV0byAzMHB4IDJmciBhdXRvIDMwcHggMWZyICIgYnV0IGdvdCAiMmZyIDNmciAzMHB4IDQw
cHggM2ZyIDMwcHggNDBweCAyZnIgIgotRkFJTCBDU1MgVHJhbnNpdGlvbnM6IHByb3BlcnR5IDxn
cmlkLXRlbXBsYXRlLXJvd3M+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZy
XSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgwLjQpIHNob3VsZCBi
ZSBbMS40ZnIgcmVwZWF0KDIsIDIuNGZyIGF1dG8gMzRweCkgMS40ZnJdIGFzc2VydF9lcXVhbHM6
IGV4cGVjdGVkICIxLjRmciAyLjRmciBhdXRvIDM0cHggMi40ZnIgYXV0byAzNHB4IDEuNGZyICIg
YnV0IGdvdCAiMmZyIDNmciAzMHB4IDQwcHggM2ZyIDMwcHggNDBweCAyZnIgIgotRkFJTCBDU1Mg
VHJhbnNpdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLXJvd3M+IGZyb20gWzFmciByZXBl
YXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4
KSAyZnJdIGF0ICgwLjYpIHNob3VsZCBiZSBbMS42ZnIgcmVwZWF0KDIsIDIuNmZyIDMwcHggMzZw
eCkgMS42ZnJdIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIxLjZmciAyLjZmciAzMHB4IDM2cHgg
Mi42ZnIgMzBweCAzNnB4IDEuNmZyICIgYnV0IGdvdCAiMmZyIDNmciAzMHB4IDQwcHggM2ZyIDMw
cHggNDBweCAyZnIgIgorRkFJTCBDU1MgVHJhbnNpdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBs
YXRlLXJvd3M+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZy
IHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgtMSkgc2hvdWxkIGJlIFswZnIgcmVw
ZWF0KDIsIDFmciBhdXRvIDIwcHgpIDBmcl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjBmciBy
ZXBlYXQgKCAyICwgMWZyIGF1dG8gMjBweCApIDBmciAiIGJ1dCBnb3QgIjJmciByZXBlYXQgKCAy
ICwgM2ZyIDMwcHggNDBweCApIDJmciAiCitGQUlMIENTUyBUcmFuc2l0aW9uczogcHJvcGVydHkg
PGdyaWQtdGVtcGxhdGUtcm93cz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAx
ZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKDApIHNob3VsZCBi
ZSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIGFzc2VydF9lcXVhbHM6IGV4cGVj
dGVkICIxZnIgcmVwZWF0ICggMiAsIDJmciBhdXRvIDMwcHggKSAxZnIgIiBidXQgZ290ICIyZnIg
cmVwZWF0ICggMiAsIDNmciAzMHB4IDQwcHggKSAyZnIgIgorRkFJTCBDU1MgVHJhbnNpdGlvbnM6
IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLXJvd3M+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1
dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgw
LjQpIHNob3VsZCBiZSBbMS40ZnIgcmVwZWF0KDIsIDIuNGZyIGF1dG8gMzRweCkgMS40ZnJdIGFz
c2VydF9lcXVhbHM6IGV4cGVjdGVkICIxLjRmciByZXBlYXQgKCAyICwgMi40ZnIgYXV0byAzNHB4
ICkgMS40ZnIgIiBidXQgZ290ICIyZnIgcmVwZWF0ICggMiAsIDNmciAzMHB4IDQwcHggKSAyZnIg
IgorRkFJTCBDU1MgVHJhbnNpdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLXJvd3M+IGZy
b20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAz
ZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgwLjYpIHNob3VsZCBiZSBbMS42ZnIgcmVwZWF0KDIsIDIu
NmZyIDMwcHggMzZweCkgMS42ZnJdIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIxLjZmciByZXBl
YXQgKCAyICwgMi42ZnIgMzBweCAzNnB4ICkgMS42ZnIgIiBidXQgZ290ICIyZnIgcmVwZWF0ICgg
MiAsIDNmciAzMHB4IDQwcHggKSAyZnIgIgogUEFTUyBDU1MgVHJhbnNpdGlvbnM6IHByb3BlcnR5
IDxncmlkLXRlbXBsYXRlLXJvd3M+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkg
MWZyXSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgxKSBzaG91bGQg
YmUgWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXQotRkFJTCBDU1MgVHJhbnNpdGlv
bnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLXJvd3M+IGZyb20gWzFmciByZXBlYXQoMiwgMmZy
IGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0
ICgyKSBzaG91bGQgYmUgWzNmciByZXBlYXQoMiwgNGZyIDMwcHggNTBweCkgM2ZyXSBhc3NlcnRf
ZXF1YWxzOiBleHBlY3RlZCAiM2ZyIDRmciAzMHB4IDUwcHggNGZyIDMwcHggNTBweCAzZnIgIiBi
dXQgZ290ICIyZnIgM2ZyIDMwcHggNDBweCAzZnIgMzBweCA0MHB4IDJmciAiCi1GQUlMIENTUyBU
cmFuc2l0aW9ucyB3aXRoIHRyYW5zaXRpb246IGFsbDogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUt
cm93cz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVw
ZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKC0xKSBzaG91bGQgYmUgWzBmciByZXBlYXQo
MiwgMWZyIGF1dG8gMjBweCkgMGZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiMGZyIDFmciBh
dXRvIDIwcHggMWZyIGF1dG8gMjBweCAwZnIgIiBidXQgZ290ICIyZnIgM2ZyIDMwcHggNDBweCAz
ZnIgMzBweCA0MHB4IDJmciAiCi1GQUlMIENTUyBUcmFuc2l0aW9ucyB3aXRoIHRyYW5zaXRpb246
IGFsbDogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtcm93cz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAy
ZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0g
YXQgKDApIHNob3VsZCBiZSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIGFzc2Vy
dF9lcXVhbHM6IGV4cGVjdGVkICIxZnIgMmZyIGF1dG8gMzBweCAyZnIgYXV0byAzMHB4IDFmciAi
IGJ1dCBnb3QgIjJmciAzZnIgMzBweCA0MHB4IDNmciAzMHB4IDQwcHggMmZyICIKLUZBSUwgQ1NT
IFRyYW5zaXRpb25zIHdpdGggdHJhbnNpdGlvbjogYWxsOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0
ZS1yb3dzPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciBy
ZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoMC40KSBzaG91bGQgYmUgWzEuNGZyIHJl
cGVhdCgyLCAyLjRmciBhdXRvIDM0cHgpIDEuNGZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAi
MS40ZnIgMi40ZnIgYXV0byAzNHB4IDIuNGZyIGF1dG8gMzRweCAxLjRmciAiIGJ1dCBnb3QgIjJm
ciAzZnIgMzBweCA0MHB4IDNmciAzMHB4IDQwcHggMmZyICIKLUZBSUwgQ1NTIFRyYW5zaXRpb25z
IHdpdGggdHJhbnNpdGlvbjogYWxsOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1yb3dzPiBmcm9t
IFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2Zy
IDMwcHggNDBweCkgMmZyXSBhdCAoMC42KSBzaG91bGQgYmUgWzEuNmZyIHJlcGVhdCgyLCAyLjZm
ciAzMHB4IDM2cHgpIDEuNmZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiMS42ZnIgMi42ZnIg
MzBweCAzNnB4IDIuNmZyIDMwcHggMzZweCAxLjZmciAiIGJ1dCBnb3QgIjJmciAzZnIgMzBweCA0
MHB4IDNmciAzMHB4IDQwcHggMmZyICIKK0ZBSUwgQ1NTIFRyYW5zaXRpb25zOiBwcm9wZXJ0eSA8
Z3JpZC10ZW1wbGF0ZS1yb3dzPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFm
cl0gdG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoMikgc2hvdWxkIGJl
IFszZnIgcmVwZWF0KDIsIDRmciAzMHB4IDUwcHgpIDNmcl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0
ZWQgIjNmciByZXBlYXQgKCAyICwgNGZyIDMwcHggNTBweCApIDNmciAiIGJ1dCBnb3QgIjJmciBy
ZXBlYXQgKCAyICwgM2ZyIDMwcHggNDBweCApIDJmciAiCitGQUlMIENTUyBUcmFuc2l0aW9ucyB3
aXRoIHRyYW5zaXRpb246IGFsbDogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtcm93cz4gZnJvbSBb
MWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAz
MHB4IDQwcHgpIDJmcl0gYXQgKC0xKSBzaG91bGQgYmUgWzBmciByZXBlYXQoMiwgMWZyIGF1dG8g
MjBweCkgMGZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiMGZyIHJlcGVhdCAoIDIgLCAxZnIg
YXV0byAyMHB4ICkgMGZyICIgYnV0IGdvdCAiMmZyIHJlcGVhdCAoIDIgLCAzZnIgMzBweCA0MHB4
ICkgMmZyICIKK0ZBSUwgQ1NTIFRyYW5zaXRpb25zIHdpdGggdHJhbnNpdGlvbjogYWxsOiBwcm9w
ZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1yb3dzPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMw
cHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoMCkgc2hv
dWxkIGJlIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gYXNzZXJ0X2VxdWFsczog
ZXhwZWN0ZWQgIjFmciByZXBlYXQgKCAyICwgMmZyIGF1dG8gMzBweCApIDFmciAiIGJ1dCBnb3Qg
IjJmciByZXBlYXQgKCAyICwgM2ZyIDMwcHggNDBweCApIDJmciAiCitGQUlMIENTUyBUcmFuc2l0
aW9ucyB3aXRoIHRyYW5zaXRpb246IGFsbDogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtcm93cz4g
ZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIs
IDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKDAuNCkgc2hvdWxkIGJlIFsxLjRmciByZXBlYXQoMiwg
Mi40ZnIgYXV0byAzNHB4KSAxLjRmcl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjEuNGZyIHJl
cGVhdCAoIDIgLCAyLjRmciBhdXRvIDM0cHggKSAxLjRmciAiIGJ1dCBnb3QgIjJmciByZXBlYXQg
KCAyICwgM2ZyIDMwcHggNDBweCApIDJmciAiCitGQUlMIENTUyBUcmFuc2l0aW9ucyB3aXRoIHRy
YW5zaXRpb246IGFsbDogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtcm93cz4gZnJvbSBbMWZyIHJl
cGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQw
cHgpIDJmcl0gYXQgKDAuNikgc2hvdWxkIGJlIFsxLjZmciByZXBlYXQoMiwgMi42ZnIgMzBweCAz
NnB4KSAxLjZmcl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjEuNmZyIHJlcGVhdCAoIDIgLCAy
LjZmciAzMHB4IDM2cHggKSAxLjZmciAiIGJ1dCBnb3QgIjJmciByZXBlYXQgKCAyICwgM2ZyIDMw
cHggNDBweCApIDJmciAiCiBQQVNTIENTUyBUcmFuc2l0aW9ucyB3aXRoIHRyYW5zaXRpb246IGFs
bDogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtcm93cz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIg
YXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQg
KDEpIHNob3VsZCBiZSBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdCi1GQUlMIENT
UyBUcmFuc2l0aW9ucyB3aXRoIHRyYW5zaXRpb246IGFsbDogcHJvcGVydHkgPGdyaWQtdGVtcGxh
dGUtcm93cz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIg
cmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKDIpIHNob3VsZCBiZSBbM2ZyIHJlcGVh
dCgyLCA0ZnIgMzBweCA1MHB4KSAzZnJdIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIzZnIgNGZy
IDMwcHggNTBweCA0ZnIgMzBweCA1MHB4IDNmciAiIGJ1dCBnb3QgIjJmciAzZnIgMzBweCA0MHB4
IDNmciAzMHB4IDQwcHggMmZyICIKLUZBSUwgQ1NTIEFuaW1hdGlvbnM6IHByb3BlcnR5IDxncmlk
LXRlbXBsYXRlLXJvd3M+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0
byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgtMSkgc2hvdWxkIGJlIFsw
ZnIgcmVwZWF0KDIsIDFmciBhdXRvIDIwcHgpIDBmcl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQg
IjBmciAxZnIgYXV0byAyMHB4IDFmciBhdXRvIDIwcHggMGZyICIgYnV0IGdvdCAiMWZyIDJmciBh
dXRvIDMwcHggMmZyIGF1dG8gMzBweCAxZnIgIgorRkFJTCBDU1MgVHJhbnNpdGlvbnMgd2l0aCB0
cmFuc2l0aW9uOiBhbGw6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLXJvd3M+IGZyb20gWzFmciBy
ZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0
MHB4KSAyZnJdIGF0ICgyKSBzaG91bGQgYmUgWzNmciByZXBlYXQoMiwgNGZyIDMwcHggNTBweCkg
M2ZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiM2ZyIHJlcGVhdCAoIDIgLCA0ZnIgMzBweCA1
MHB4ICkgM2ZyICIgYnV0IGdvdCAiMmZyIHJlcGVhdCAoIDIgLCAzZnIgMzBweCA0MHB4ICkgMmZy
ICIKK0ZBSUwgQ1NTIEFuaW1hdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLXJvd3M+IGZy
b20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAz
ZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgtMSkgc2hvdWxkIGJlIFswZnIgcmVwZWF0KDIsIDFmciBh
dXRvIDIwcHgpIDBmcl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjBmciByZXBlYXQgKCAyICwg
MWZyIGF1dG8gMjBweCApIDBmciAiIGJ1dCBnb3QgIjFmciByZXBlYXQgKCAyICwgMmZyIGF1dG8g
MzBweCApIDFmciAiCiBQQVNTIENTUyBBbmltYXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0
ZS1yb3dzPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciBy
ZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoMCkgc2hvdWxkIGJlIFsxZnIgcmVwZWF0
KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0KLUZBSUwgQ1NTIEFuaW1hdGlvbnM6IHByb3BlcnR5IDxn
cmlkLXRlbXBsYXRlLXJvd3M+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZy
XSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgwLjQpIHNob3VsZCBi
ZSBbMS40ZnIgcmVwZWF0KDIsIDIuNGZyIGF1dG8gMzRweCkgMS40ZnJdIGFzc2VydF9lcXVhbHM6
IGV4cGVjdGVkICIxLjRmciAyLjRmciBhdXRvIDM0cHggMi40ZnIgYXV0byAzNHB4IDEuNGZyICIg
YnV0IGdvdCAiMWZyIDJmciBhdXRvIDMwcHggMmZyIGF1dG8gMzBweCAxZnIgIgotRkFJTCBDU1Mg
QW5pbWF0aW9uczogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtcm93cz4gZnJvbSBbMWZyIHJlcGVh
dCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgp
IDJmcl0gYXQgKDAuNikgc2hvdWxkIGJlIFsxLjZmciByZXBlYXQoMiwgMi42ZnIgMzBweCAzNnB4
KSAxLjZmcl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjEuNmZyIDIuNmZyIDMwcHggMzZweCAy
LjZmciAzMHB4IDM2cHggMS42ZnIgIiBidXQgZ290ICIyZnIgM2ZyIDMwcHggNDBweCAzZnIgMzBw
eCA0MHB4IDJmciAiCitGQUlMIENTUyBBbmltYXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0
ZS1yb3dzPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciBy
ZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoMC40KSBzaG91bGQgYmUgWzEuNGZyIHJl
cGVhdCgyLCAyLjRmciBhdXRvIDM0cHgpIDEuNGZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAi
MS40ZnIgcmVwZWF0ICggMiAsIDIuNGZyIGF1dG8gMzRweCApIDEuNGZyICIgYnV0IGdvdCAiMWZy
IHJlcGVhdCAoIDIgLCAyZnIgYXV0byAzMHB4ICkgMWZyICIKK0ZBSUwgQ1NTIEFuaW1hdGlvbnM6
IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLXJvd3M+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1
dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgw
LjYpIHNob3VsZCBiZSBbMS42ZnIgcmVwZWF0KDIsIDIuNmZyIDMwcHggMzZweCkgMS42ZnJdIGFz
c2VydF9lcXVhbHM6IGV4cGVjdGVkICIxLjZmciByZXBlYXQgKCAyICwgMi42ZnIgMzBweCAzNnB4
ICkgMS42ZnIgIiBidXQgZ290ICIyZnIgcmVwZWF0ICggMiAsIDNmciAzMHB4IDQwcHggKSAyZnIg
IgogUEFTUyBDU1MgQW5pbWF0aW9uczogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtcm93cz4gZnJv
bSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNm
ciAzMHB4IDQwcHgpIDJmcl0gYXQgKDEpIHNob3VsZCBiZSBbMmZyIHJlcGVhdCgyLCAzZnIgMzBw
eCA0MHB4KSAyZnJdCi1GQUlMIENTUyBBbmltYXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0
ZS1yb3dzPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciBy
ZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoMikgc2hvdWxkIGJlIFszZnIgcmVwZWF0
KDIsIDRmciAzMHB4IDUwcHgpIDNmcl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjNmciA0ZnIg
MzBweCA1MHB4IDRmciAzMHB4IDUwcHggM2ZyICIgYnV0IGdvdCAiMmZyIDNmciAzMHB4IDQwcHgg
M2ZyIDMwcHggNDBweCAyZnIgIgotRkFJTCBXZWIgQW5pbWF0aW9uczogcHJvcGVydHkgPGdyaWQt
dGVtcGxhdGUtcm93cz4gZnJvbSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRv
IFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgpIDJmcl0gYXQgKC0xKSBzaG91bGQgYmUgWzBm
ciByZXBlYXQoMiwgMWZyIGF1dG8gMjBweCkgMGZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAi
MGZyIDFmciBhdXRvIDIwcHggMWZyIGF1dG8gMjBweCAwZnIgIiBidXQgZ290ICIxZnIgMmZyIGF1
dG8gMzBweCAyZnIgYXV0byAzMHB4IDFmciAiCitGQUlMIENTUyBBbmltYXRpb25zOiBwcm9wZXJ0
eSA8Z3JpZC10ZW1wbGF0ZS1yb3dzPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgp
IDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoMikgc2hvdWxk
IGJlIFszZnIgcmVwZWF0KDIsIDRmciAzMHB4IDUwcHgpIDNmcl0gYXNzZXJ0X2VxdWFsczogZXhw
ZWN0ZWQgIjNmciByZXBlYXQgKCAyICwgNGZyIDMwcHggNTBweCApIDNmciAiIGJ1dCBnb3QgIjJm
ciByZXBlYXQgKCAyICwgM2ZyIDMwcHggNDBweCApIDJmciAiCitGQUlMIFdlYiBBbmltYXRpb25z
OiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1yb3dzPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBh
dXRvIDMwcHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAo
LTEpIHNob3VsZCBiZSBbMGZyIHJlcGVhdCgyLCAxZnIgYXV0byAyMHB4KSAwZnJdIGFzc2VydF9l
cXVhbHM6IGV4cGVjdGVkICIwZnIgcmVwZWF0ICggMiAsIDFmciBhdXRvIDIwcHggKSAwZnIgIiBi
dXQgZ290ICIxZnIgcmVwZWF0ICggMiAsIDJmciBhdXRvIDMwcHggKSAxZnIgIgogUEFTUyBXZWIg
QW5pbWF0aW9uczogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtcm93cz4gZnJvbSBbMWZyIHJlcGVh
dCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgp
IDJmcl0gYXQgKDApIHNob3VsZCBiZSBbMWZyIHJlcGVhdCgyLCAyZnIgYXV0byAzMHB4KSAxZnJd
Ci1GQUlMIFdlYiBBbmltYXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1yb3dzPiBmcm9t
IFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciByZXBlYXQoMiwgM2Zy
IDMwcHggNDBweCkgMmZyXSBhdCAoMC40KSBzaG91bGQgYmUgWzEuNGZyIHJlcGVhdCgyLCAyLjRm
ciBhdXRvIDM0cHgpIDEuNGZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiMS40ZnIgMi40ZnIg
YXV0byAzNHB4IDIuNGZyIGF1dG8gMzRweCAxLjRmciAiIGJ1dCBnb3QgIjFmciAyZnIgYXV0byAz
MHB4IDJmciBhdXRvIDMwcHggMWZyICIKLUZBSUwgV2ViIEFuaW1hdGlvbnM6IHByb3BlcnR5IDxn
cmlkLXRlbXBsYXRlLXJvd3M+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZy
XSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgwLjYpIHNob3VsZCBi
ZSBbMS42ZnIgcmVwZWF0KDIsIDIuNmZyIDMwcHggMzZweCkgMS42ZnJdIGFzc2VydF9lcXVhbHM6
IGV4cGVjdGVkICIxLjZmciAyLjZmciAzMHB4IDM2cHggMi42ZnIgMzBweCAzNnB4IDEuNmZyICIg
YnV0IGdvdCAiMmZyIDNmciAzMHB4IDQwcHggM2ZyIDMwcHggNDBweCAyZnIgIgorRkFJTCBXZWIg
QW5pbWF0aW9uczogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtcm93cz4gZnJvbSBbMWZyIHJlcGVh
dCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgp
IDJmcl0gYXQgKDAuNCkgc2hvdWxkIGJlIFsxLjRmciByZXBlYXQoMiwgMi40ZnIgYXV0byAzNHB4
KSAxLjRmcl0gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjEuNGZyIHJlcGVhdCAoIDIgLCAyLjRm
ciBhdXRvIDM0cHggKSAxLjRmciAiIGJ1dCBnb3QgIjFmciByZXBlYXQgKCAyICwgMmZyIGF1dG8g
MzBweCApIDFmciAiCitGQUlMIFdlYiBBbmltYXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0
ZS1yb3dzPiBmcm9tIFsxZnIgcmVwZWF0KDIsIDJmciBhdXRvIDMwcHgpIDFmcl0gdG8gWzJmciBy
ZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXSBhdCAoMC42KSBzaG91bGQgYmUgWzEuNmZyIHJl
cGVhdCgyLCAyLjZmciAzMHB4IDM2cHgpIDEuNmZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAi
MS42ZnIgcmVwZWF0ICggMiAsIDIuNmZyIDMwcHggMzZweCApIDEuNmZyICIgYnV0IGdvdCAiMmZy
IHJlcGVhdCAoIDIgLCAzZnIgMzBweCA0MHB4ICkgMmZyICIKIFBBU1MgV2ViIEFuaW1hdGlvbnM6
IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLXJvd3M+IGZyb20gWzFmciByZXBlYXQoMiwgMmZyIGF1
dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBweCA0MHB4KSAyZnJdIGF0ICgx
KSBzaG91bGQgYmUgWzJmciByZXBlYXQoMiwgM2ZyIDMwcHggNDBweCkgMmZyXQotRkFJTCBXZWIg
QW5pbWF0aW9uczogcHJvcGVydHkgPGdyaWQtdGVtcGxhdGUtcm93cz4gZnJvbSBbMWZyIHJlcGVh
dCgyLCAyZnIgYXV0byAzMHB4KSAxZnJdIHRvIFsyZnIgcmVwZWF0KDIsIDNmciAzMHB4IDQwcHgp
IDJmcl0gYXQgKDIpIHNob3VsZCBiZSBbM2ZyIHJlcGVhdCgyLCA0ZnIgMzBweCA1MHB4KSAzZnJd
IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIzZnIgNGZyIDMwcHggNTBweCA0ZnIgMzBweCA1MHB4
IDNmciAiIGJ1dCBnb3QgIjJmciAzZnIgMzBweCA0MHB4IDNmciAzMHB4IDQwcHggMmZyICIKK0ZB
SUwgV2ViIEFuaW1hdGlvbnM6IHByb3BlcnR5IDxncmlkLXRlbXBsYXRlLXJvd3M+IGZyb20gWzFm
ciByZXBlYXQoMiwgMmZyIGF1dG8gMzBweCkgMWZyXSB0byBbMmZyIHJlcGVhdCgyLCAzZnIgMzBw
eCA0MHB4KSAyZnJdIGF0ICgyKSBzaG91bGQgYmUgWzNmciByZXBlYXQoMiwgNGZyIDMwcHggNTBw
eCkgM2ZyXSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiM2ZyIHJlcGVhdCAoIDIgLCA0ZnIgMzBw
eCA1MHB4ICkgM2ZyICIgYnV0IGdvdCAiMmZyIHJlcGVhdCAoIDIgLCAzZnIgMzBweCA0MHB4ICkg
MmZyICIKIFBBU1MgQ1NTIFRyYW5zaXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1yb3dz
PiBmcm9tIFsxMHB4IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgyNXB4LCAxZnIpKSAxMHB4XSB0
byBbMjBweCAyMHB4IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgzMHB4LCAxZnIpKV0gYXQgKC0w
LjMpIHNob3VsZCBiZSBbMjBweCAyMHB4IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgzMHB4LCAx
ZnIpKV0KIFBBU1MgQ1NTIFRyYW5zaXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1yb3dz
PiBmcm9tIFsxMHB4IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgyNXB4LCAxZnIpKSAxMHB4XSB0
byBbMjBweCAyMHB4IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgzMHB4LCAxZnIpKV0gYXQgKDAp
IHNob3VsZCBiZSBbMjBweCAyMHB4IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgzMHB4LCAxZnIp
KV0KIFBBU1MgQ1NTIFRyYW5zaXRpb25zOiBwcm9wZXJ0eSA8Z3JpZC10ZW1wbGF0ZS1yb3dzPiBm
cm9tIFsxMHB4IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgyNXB4LCAxZnIpKSAxMHB4XSB0byBb
MjBweCAyMHB4IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgzMHB4LCAxZnIpKV0gYXQgKDAuMykg
c2hvdWxkIGJlIFsyMHB4IDIwcHggcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDMwcHgsIDFmcikp
XQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3MvY3NzLWdyaWQvcGFyc2luZy9ncmlkLXRlbXBsYXRlLWNvbHVtbnMtY29tcHV0ZWQtbm9n
cmlkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy1ncmlkL3BhcnNpbmcvZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zLWNvbXB1dGVk
LW5vZ3JpZC1leHBlY3RlZC50eHQKaW5kZXggZTY2ZDFkZjMyOWRhZDBmZDlhMGY3ZDE2MTE2MWFi
YTEzZGNmZGNkMS4uNmRlZWE1Nzg0ZTg1YzBjNDdhZTEyYTJlMTg2NTEyZmE5N2NmNmM1ZiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
Y3NzLWdyaWQvcGFyc2luZy9ncmlkLXRlbXBsYXRlLWNvbHVtbnMtY29tcHV0ZWQtbm9ncmlkLWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3MtZ3JpZC9wYXJzaW5nL2dyaWQtdGVtcGxhdGUtY29sdW1ucy1jb21wdXRlZC1u
b2dyaWQtZXhwZWN0ZWQudHh0CkBAIC01LDIyICs1LDIyIEBAIFBBU1MgUHJvcGVydHkgZ3JpZC10
ZW1wbGF0ZS1jb2x1bW5zIHZhbHVlICcxcHggW2FdJwogUEFTUyBQcm9wZXJ0eSBncmlkLXRlbXBs
YXRlLWNvbHVtbnMgdmFsdWUgJzFweCBbYV0gMnB4JwogUEFTUyBQcm9wZXJ0eSBncmlkLXRlbXBs
YXRlLWNvbHVtbnMgdmFsdWUgJ1thXSAxcHgnCiBQQVNTIFByb3BlcnR5IGdyaWQtdGVtcGxhdGUt
Y29sdW1ucyB2YWx1ZSAnW2FdIDFweCBbYl0nCi1GQUlMIFByb3BlcnR5IGdyaWQtdGVtcGxhdGUt
Y29sdW1ucyB2YWx1ZSAnMXB4IHJlcGVhdCgxLCAycHgpIDNweCcgYXNzZXJ0X2VxdWFsczogZXhw
ZWN0ZWQgIjFweCByZXBlYXQoMSwgMnB4KSAzcHgiIGJ1dCBnb3QgIjFweCAycHggM3B4IgorUEFT
UyBQcm9wZXJ0eSBncmlkLXRlbXBsYXRlLWNvbHVtbnMgdmFsdWUgJzFweCByZXBlYXQoMSwgMnB4
KSAzcHgnCiBQQVNTIFByb3BlcnR5IGdyaWQtdGVtcGxhdGUtY29sdW1ucyB2YWx1ZSAnMXB4IHJl
cGVhdChhdXRvLWZpbGwsIDJweCkgM3B4JwogUEFTUyBQcm9wZXJ0eSBncmlkLXRlbXBsYXRlLWNv
bHVtbnMgdmFsdWUgJzFweCByZXBlYXQoYXV0by1maXQsIDJweCkgM3B4JwotRkFJTCBQcm9wZXJ0
eSBncmlkLXRlbXBsYXRlLWNvbHVtbnMgdmFsdWUgJzFweCBbYV0gcmVwZWF0KDEsIDJweCAzcHgp
IFtiXSA0cHgnIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIxcHggW2FdIHJlcGVhdCgxLCAycHgg
M3B4KSBbYl0gNHB4IiBidXQgZ290ICIxcHggW2FdIDJweCAzcHggW2JdIDRweCIKK1BBU1MgUHJv
cGVydHkgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zIHZhbHVlICcxcHggW2FdIHJlcGVhdCgxLCAycHgg
M3B4KSBbYl0gNHB4JwogUEFTUyBQcm9wZXJ0eSBncmlkLXRlbXBsYXRlLWNvbHVtbnMgdmFsdWUg
JzFweCBbYV0gcmVwZWF0KGF1dG8tZmlsbCwgMnB4IDNweCkgW2JdIDRweCcKIFBBU1MgUHJvcGVy
dHkgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zIHZhbHVlICcxcHggW2FdIHJlcGVhdChhdXRvLWZpdCwg
MnB4IDNweCkgW2JdIDRweCcKLUZBSUwgUHJvcGVydHkgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zIHZh
bHVlICcxcHggW2FdIHJlcGVhdCgxLCBbYl0gMnB4IFtjXSkgW2RdIDNweCcgYXNzZXJ0X2VxdWFs
czogZXhwZWN0ZWQgIjFweCBbYV0gcmVwZWF0KDEsIFtiXSAycHggW2NdKSBbZF0gM3B4IiBidXQg
Z290ICIxcHggW2EgYl0gMnB4IFtjIGRdIDNweCIKK1BBU1MgUHJvcGVydHkgZ3JpZC10ZW1wbGF0
ZS1jb2x1bW5zIHZhbHVlICcxcHggW2FdIHJlcGVhdCgxLCBbYl0gMnB4IFtjXSkgW2RdIDNweCcK
IFBBU1MgUHJvcGVydHkgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zIHZhbHVlICcxcHggW2FdIHJlcGVh
dChhdXRvLWZpbGwsIFtiXSAycHggW2NdKSBbZF0gM3B4JwogUEFTUyBQcm9wZXJ0eSBncmlkLXRl
bXBsYXRlLWNvbHVtbnMgdmFsdWUgJzFweCBbYV0gcmVwZWF0KGF1dG8tZml0LCBbYl0gMnB4IFtj
XSkgW2RdIDNweCcKLUZBSUwgUHJvcGVydHkgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zIHZhbHVlICdb
YV0gMXB4IHJlcGVhdCgxLCAycHggW2JdIDNweCkgNHB4IFtkXScgYXNzZXJ0X2VxdWFsczogZXhw
ZWN0ZWQgIlthXSAxcHggcmVwZWF0KDEsIDJweCBbYl0gM3B4KSA0cHggW2RdIiBidXQgZ290ICJb
YV0gMXB4IDJweCBbYl0gM3B4IDRweCBbZF0iCitQQVNTIFByb3BlcnR5IGdyaWQtdGVtcGxhdGUt
Y29sdW1ucyB2YWx1ZSAnW2FdIDFweCByZXBlYXQoMSwgMnB4IFtiXSAzcHgpIDRweCBbZF0nCiBQ
QVNTIFByb3BlcnR5IGdyaWQtdGVtcGxhdGUtY29sdW1ucyB2YWx1ZSAnW2FdIDFweCByZXBlYXQo
YXV0by1maWxsLCAycHggW2JdIDNweCkgNHB4IFtkXScKIFBBU1MgUHJvcGVydHkgZ3JpZC10ZW1w
bGF0ZS1jb2x1bW5zIHZhbHVlICdbYV0gMXB4IHJlcGVhdChhdXRvLWZpdCwgMnB4IFtiXSAzcHgp
IDRweCBbZF0nCi1GQUlMIFByb3BlcnR5IGdyaWQtdGVtcGxhdGUtcm93cyB2YWx1ZSAnMTAwJSBb
YV0gcmVwZWF0KDEsIFtiXSAyMDAlIFtjXSkgW2RdIDMwMCUnIGFzc2VydF9lcXVhbHM6IGV4cGVj
dGVkICIxMDAlIFthXSByZXBlYXQoMSwgW2JdIDIwMCUgW2NdKSBbZF0gMzAwJSIgYnV0IGdvdCAi
MTAwJSBbYSBiXSAyMDAlIFtjIGRdIDMwMCUiCitQQVNTIFByb3BlcnR5IGdyaWQtdGVtcGxhdGUt
cm93cyB2YWx1ZSAnMTAwJSBbYV0gcmVwZWF0KDEsIFtiXSAyMDAlIFtjXSkgW2RdIDMwMCUnCiBQ
QVNTIFByb3BlcnR5IGdyaWQtdGVtcGxhdGUtcm93cyB2YWx1ZSAnMTAwJSBbYV0gcmVwZWF0KGF1
dG8tZmlsbCwgW2JdIDIwMCUgW2NdKSBbZF0gMzAwJScKIFBBU1MgUHJvcGVydHkgZ3JpZC10ZW1w
bGF0ZS1yb3dzIHZhbHVlICcxMDAlIFthXSByZXBlYXQoYXV0by1maXQsIFtiXSAyMDAlIFtjXSkg
W2RdIDMwMCUnCi1GQUlMIFByb3BlcnR5IGdyaWQtdGVtcGxhdGUtY29sdW1ucyB2YWx1ZSAnW2Fd
IDFlbSByZXBlYXQoMSwgMmVtIFtiXSAzZW0pIDRlbSBbZF0nIGFzc2VydF9lcXVhbHM6IGV4cGVj
dGVkICJbYV0gMXB4IHJlcGVhdCgxLCAycHggW2JdIDNweCkgNHB4IFtkXSIgYnV0IGdvdCAiW2Fd
IDFweCAycHggW2JdIDNweCA0cHggW2RdIgorUEFTUyBQcm9wZXJ0eSBncmlkLXRlbXBsYXRlLWNv
bHVtbnMgdmFsdWUgJ1thXSAxZW0gcmVwZWF0KDEsIDJlbSBbYl0gM2VtKSA0ZW0gW2RdJwogUEFT
UyBQcm9wZXJ0eSBncmlkLXRlbXBsYXRlLWNvbHVtbnMgdmFsdWUgJ1thXSAxZW0gcmVwZWF0KGF1
dG8tZmlsbCwgMmVtIFtiXSAzZW0pIDRlbSBbZF0nCiBQQVNTIFByb3BlcnR5IGdyaWQtdGVtcGxh
dGUtY29sdW1ucyB2YWx1ZSAnW2FdIDFlbSByZXBlYXQoYXV0by1maXQsIDJlbSBbYl0gM2VtKSA0
ZW0gW2RdJwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9jc3MtZ3JpZC9wYXJzaW5nL2dyaWQtdGVtcGxhdGUtcm93cy1jb21wdXRl
ZC1ub2dyaWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvcGFyc2luZy9ncmlkLXRlbXBsYXRlLXJvd3MtY29tcHV0
ZWQtbm9ncmlkLWV4cGVjdGVkLnR4dAppbmRleCBjOWRlNzljMDQ1ZWNiZWJjYjM2NWRhN2M3MzVm
YzlmZDcyOGJjOWY0Li41MGM4OGRhMDNmOWFjMTA2OTQ5NWU2Mzk2ODMwMmE5OTU1MzcxNzUyIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9jc3MtZ3JpZC9wYXJzaW5nL2dyaWQtdGVtcGxhdGUtcm93cy1jb21wdXRlZC1ub2dyaWQtZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy1ncmlkL3BhcnNpbmcvZ3JpZC10ZW1wbGF0ZS1yb3dzLWNvbXB1dGVkLW5vZ3Jp
ZC1leHBlY3RlZC50eHQKQEAgLTUsMjIgKzUsMjIgQEAgUEFTUyBQcm9wZXJ0eSBncmlkLXRlbXBs
YXRlLXJvd3MgdmFsdWUgJzFweCBbYV0nCiBQQVNTIFByb3BlcnR5IGdyaWQtdGVtcGxhdGUtcm93
cyB2YWx1ZSAnMXB4IFthXSAycHgnCiBQQVNTIFByb3BlcnR5IGdyaWQtdGVtcGxhdGUtcm93cyB2
YWx1ZSAnW2FdIDFweCcKIFBBU1MgUHJvcGVydHkgZ3JpZC10ZW1wbGF0ZS1yb3dzIHZhbHVlICdb
YV0gMXB4IFtiXScKLUZBSUwgUHJvcGVydHkgZ3JpZC10ZW1wbGF0ZS1yb3dzIHZhbHVlICcxcHgg
cmVwZWF0KDEsIDJweCkgM3B4JyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiMXB4IHJlcGVhdCgx
LCAycHgpIDNweCIgYnV0IGdvdCAiMXB4IDJweCAzcHgiCitQQVNTIFByb3BlcnR5IGdyaWQtdGVt
cGxhdGUtcm93cyB2YWx1ZSAnMXB4IHJlcGVhdCgxLCAycHgpIDNweCcKIFBBU1MgUHJvcGVydHkg
Z3JpZC10ZW1wbGF0ZS1yb3dzIHZhbHVlICcxcHggcmVwZWF0KGF1dG8tZmlsbCwgMnB4KSAzcHgn
CiBQQVNTIFByb3BlcnR5IGdyaWQtdGVtcGxhdGUtcm93cyB2YWx1ZSAnMXB4IHJlcGVhdChhdXRv
LWZpdCwgMnB4KSAzcHgnCi1GQUlMIFByb3BlcnR5IGdyaWQtdGVtcGxhdGUtcm93cyB2YWx1ZSAn
MXB4IFthXSByZXBlYXQoMSwgMnB4IDNweCkgW2JdIDRweCcgYXNzZXJ0X2VxdWFsczogZXhwZWN0
ZWQgIjFweCBbYV0gcmVwZWF0KDEsIDJweCAzcHgpIFtiXSA0cHgiIGJ1dCBnb3QgIjFweCBbYV0g
MnB4IDNweCBbYl0gNHB4IgorUEFTUyBQcm9wZXJ0eSBncmlkLXRlbXBsYXRlLXJvd3MgdmFsdWUg
JzFweCBbYV0gcmVwZWF0KDEsIDJweCAzcHgpIFtiXSA0cHgnCiBQQVNTIFByb3BlcnR5IGdyaWQt
dGVtcGxhdGUtcm93cyB2YWx1ZSAnMXB4IFthXSByZXBlYXQoYXV0by1maWxsLCAycHggM3B4KSBb
Yl0gNHB4JwogUEFTUyBQcm9wZXJ0eSBncmlkLXRlbXBsYXRlLXJvd3MgdmFsdWUgJzFweCBbYV0g
cmVwZWF0KGF1dG8tZml0LCAycHggM3B4KSBbYl0gNHB4JwotRkFJTCBQcm9wZXJ0eSBncmlkLXRl
bXBsYXRlLXJvd3MgdmFsdWUgJzFweCBbYV0gcmVwZWF0KDEsIFtiXSAycHggW2NdKSBbZF0gM3B4
JyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiMXB4IFthXSByZXBlYXQoMSwgW2JdIDJweCBbY10p
IFtkXSAzcHgiIGJ1dCBnb3QgIjFweCBbYSBiXSAycHggW2MgZF0gM3B4IgorUEFTUyBQcm9wZXJ0
eSBncmlkLXRlbXBsYXRlLXJvd3MgdmFsdWUgJzFweCBbYV0gcmVwZWF0KDEsIFtiXSAycHggW2Nd
KSBbZF0gM3B4JwogUEFTUyBQcm9wZXJ0eSBncmlkLXRlbXBsYXRlLXJvd3MgdmFsdWUgJzFweCBb
YV0gcmVwZWF0KGF1dG8tZmlsbCwgW2JdIDJweCBbY10pIFtkXSAzcHgnCiBQQVNTIFByb3BlcnR5
IGdyaWQtdGVtcGxhdGUtcm93cyB2YWx1ZSAnMXB4IFthXSByZXBlYXQoYXV0by1maXQsIFtiXSAy
cHggW2NdKSBbZF0gM3B4JwotRkFJTCBQcm9wZXJ0eSBncmlkLXRlbXBsYXRlLXJvd3MgdmFsdWUg
J1thXSAxcHggcmVwZWF0KDEsIDJweCBbYl0gM3B4KSA0cHggW2RdJyBhc3NlcnRfZXF1YWxzOiBl
eHBlY3RlZCAiW2FdIDFweCByZXBlYXQoMSwgMnB4IFtiXSAzcHgpIDRweCBbZF0iIGJ1dCBnb3Qg
IlthXSAxcHggMnB4IFtiXSAzcHggNHB4IFtkXSIKK1BBU1MgUHJvcGVydHkgZ3JpZC10ZW1wbGF0
ZS1yb3dzIHZhbHVlICdbYV0gMXB4IHJlcGVhdCgxLCAycHggW2JdIDNweCkgNHB4IFtkXScKIFBB
U1MgUHJvcGVydHkgZ3JpZC10ZW1wbGF0ZS1yb3dzIHZhbHVlICdbYV0gMXB4IHJlcGVhdChhdXRv
LWZpbGwsIDJweCBbYl0gM3B4KSA0cHggW2RdJwogUEFTUyBQcm9wZXJ0eSBncmlkLXRlbXBsYXRl
LXJvd3MgdmFsdWUgJ1thXSAxcHggcmVwZWF0KGF1dG8tZml0LCAycHggW2JdIDNweCkgNHB4IFtk
XScKLUZBSUwgUHJvcGVydHkgZ3JpZC10ZW1wbGF0ZS1yb3dzIHZhbHVlICcxMDAlIFthXSByZXBl
YXQoMSwgW2JdIDIwMCUgW2NdKSBbZF0gMzAwJScgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjEw
MCUgW2FdIHJlcGVhdCgxLCBbYl0gMjAwJSBbY10pIFtkXSAzMDAlIiBidXQgZ290ICIxMDAlIFth
IGJdIDIwMCUgW2MgZF0gMzAwJSIKK1BBU1MgUHJvcGVydHkgZ3JpZC10ZW1wbGF0ZS1yb3dzIHZh
bHVlICcxMDAlIFthXSByZXBlYXQoMSwgW2JdIDIwMCUgW2NdKSBbZF0gMzAwJScKIFBBU1MgUHJv
cGVydHkgZ3JpZC10ZW1wbGF0ZS1yb3dzIHZhbHVlICcxMDAlIFthXSByZXBlYXQoYXV0by1maWxs
LCBbYl0gMjAwJSBbY10pIFtkXSAzMDAlJwogUEFTUyBQcm9wZXJ0eSBncmlkLXRlbXBsYXRlLXJv
d3MgdmFsdWUgJzEwMCUgW2FdIHJlcGVhdChhdXRvLWZpdCwgW2JdIDIwMCUgW2NdKSBbZF0gMzAw
JScKLUZBSUwgUHJvcGVydHkgZ3JpZC10ZW1wbGF0ZS1yb3dzIHZhbHVlICdbYV0gMWVtIHJlcGVh
dCgxLCAyZW0gW2JdIDNlbSkgNGVtIFtkXScgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIlthXSAx
cHggcmVwZWF0KDEsIDJweCBbYl0gM3B4KSA0cHggW2RdIiBidXQgZ290ICJbYV0gMXB4IDJweCBb
Yl0gM3B4IDRweCBbZF0iCitQQVNTIFByb3BlcnR5IGdyaWQtdGVtcGxhdGUtcm93cyB2YWx1ZSAn
W2FdIDFlbSByZXBlYXQoMSwgMmVtIFtiXSAzZW0pIDRlbSBbZF0nCiBQQVNTIFByb3BlcnR5IGdy
aWQtdGVtcGxhdGUtcm93cyB2YWx1ZSAnW2FdIDFlbSByZXBlYXQoYXV0by1maWxsLCAyZW0gW2Jd
IDNlbSkgNGVtIFtkXScKIFBBU1MgUHJvcGVydHkgZ3JpZC10ZW1wbGF0ZS1yb3dzIHZhbHVlICdb
YV0gMWVtIHJlcGVhdChhdXRvLWZpdCwgMmVtIFtiXSAzZW0pIDRlbSBbZF0nCiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>