<?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>162377</bug_id>
          
          <creation_ts>2016-09-22 01:11:32 -0700</creation_ts>
          <short_desc>test262: Function length should be number of parameters before parameters with default values</short_desc>
          <delta_ts>2016-09-26 11:43:45 -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>JavaScriptCore</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Joseph Pecoraro">joepeck</reporter>
          <assigned_to name="Joseph Pecoraro">joepeck</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>joepeck</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1232360</commentid>
    <comment_count>0</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2016-09-22 01:11:32 -0700</bug_when>
    <thetext>Summary:
Function length should be number of parameters before parameters with default values

Spec:
https://tc39.github.io/ecma262/#sec-function-definitions-static-semantics-expectedargumentcount

&gt; NOTE: The ExpectedArgumentCount of a FormalParameterList is the number of
&gt; FormalParameters to the left of either the rest parameter or the first
&gt; FormalParameter with an Initializer. A FormalParameter without an
&gt; initializer is allowed after the first parameter with an initializer
&gt; but such parameters are considered to be optional with undefined as
&gt; their default value.

Example:
// foo.length should be 1
function foo(a,b=1,c) {};

Notes:
- Applies to all functions (getters/setters, generators, methods, arrow functions)
- setters require 1 param, but that can have a default value so this needs to be handled
- getters require 0 params, so are not affected

Covered by 32 tst262 tests with &quot;*-dflt-length.js&quot; in the name.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1232361</commentid>
    <comment_count>1</comment_count>
      <attachid>289535</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2016-09-22 01:16:03 -0700</bug_when>
    <thetext>Created attachment 289535
[PATCH] Proposed Fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1232363</commentid>
    <comment_count>2</comment_count>
      <attachid>289535</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2016-09-22 01:20:19 -0700</bug_when>
    <thetext>Comment on attachment 289535
[PATCH] Proposed Fix

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

&gt; Source/JavaScriptCore/ChangeLog:19
&gt; +        Alongside the parameterCount value, maintain a separate count,
&gt; +        nonDefaultParameterCount, which will be the count before seeing
&gt; +        a rest parameter or initialized parameter.

Of course after I wrote the patch &quot;nonDefaultParameterCount&quot; is a kind of poor name since (1) you can have non-default-parameters after the first default-parameter and (2) a rest parameter affects this but is not a default parameter.

    function (a,b=1,c) {} // length === 1

I&apos;m open to better naming suggestions!

Here are some suggestions:

    parameterCountForLength
    parameterCountForFunctionLength
    parameterCountBeforeInitializedParameter</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1232451</commentid>
    <comment_count>3</comment_count>
      <attachid>289535</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2016-09-22 09:03:29 -0700</bug_when>
    <thetext>Comment on attachment 289535
[PATCH] Proposed Fix

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

r=me

&gt; JSTests/stress/es6-default-parameters.js:236
&gt; +function named11(a=1,...b){};

Can you also add a test like:
(a=10, b, c=20, ...r) or something similar.

&gt;&gt; Source/JavaScriptCore/ChangeLog:19
&gt;&gt; +        a rest parameter or initialized parameter.
&gt; 
&gt; Of course after I wrote the patch &quot;nonDefaultParameterCount&quot; is a kind of poor name since (1) you can have non-default-parameters after the first default-parameter and (2) a rest parameter affects this but is not a default parameter.
&gt; 
&gt;     function (a,b=1,c) {} // length === 1
&gt; 
&gt; I&apos;m open to better naming suggestions!
&gt; 
&gt; Here are some suggestions:
&gt; 
&gt;     parameterCountForLength
&gt;     parameterCountForFunctionLength
&gt;     parameterCountBeforeInitializedParameter

Why not just &quot;functionLength&quot;?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1232559</commentid>
    <comment_count>4</comment_count>
      <attachid>289589</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2016-09-22 11:49:36 -0700</bug_when>
    <thetext>Created attachment 289589
[PATCH] For Landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1232567</commentid>
    <comment_count>5</comment_count>
      <attachid>289589</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-09-22 12:13:39 -0700</bug_when>
    <thetext>Comment on attachment 289589
[PATCH] For Landing

Clearing flags on attachment: 289589

Committed r206268: &lt;http://trac.webkit.org/changeset/206268&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>289535</attachid>
            <date>2016-09-22 01:16:03 -0700</date>
            <delta_ts>2016-09-22 09:03:29 -0700</delta_ts>
            <desc>[PATCH] Proposed Fix</desc>
            <filename>param-count-1.patch</filename>
            <type>text/plain</type>
            <size>54973</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0pTVGVzdHMvQ2hhbmdlTG9nIGIvSlNUZXN0cy9DaGFuZ2VMb2cKaW5kZXgg
YjNmNjhkMi4uODdhNGM2YSAxMDA2NDQKLS0tIGEvSlNUZXN0cy9DaGFuZ2VMb2cKKysrIGIvSlNU
ZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxNi0wOS0yMiAgSm9zZXBoIFBlY29y
YXJvICA8cGVjb3Jhcm9AYXBwbGUuY29tPgorCisgICAgICAgIHRlc3QyNjI6IEZ1bmN0aW9uIGxl
bmd0aCBzaG91bGQgYmUgbnVtYmVyIG9mIHBhcmFtZXRlcnMgYmVmb3JlIHBhcmFtZXRlcnMgd2l0
aCBkZWZhdWx0IHZhbHVlcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTYyMzc3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiBzdHJlc3MvZXM2LWRlZmF1bHQtcGFyYW1ldGVycy5qczoKKyAgICAgICAgQWRk
IG91ciBvd24gdGVzdHMgZm9yIGZ1bmN0aW9uIGxlbmd0aHMgd2l0aCBkZWZhdWx0IHBhcmFtZXRl
cnMuCisKKyAgICAgICAgKiB0ZXN0MjYyLnlhbWw6CisgICAgICAgIFdlIG5vdyBwYXNzIGFsbCBk
Zmx0LWxlbmd0aCB0ZXN0cy4KKwogMjAxNi0wOS0yMCAgQmVuamFtaW4gUG91bGFpbiAgPGJwb3Vs
YWluQGFwcGxlLmNvbT4KIAogICAgICAgICBbSlNDXSBEbyBub3QgdXNlIEVhZ2VyUnVuIG9uIHRl
c3RzIGNvdW50aW5nIHJlY29tcGlsYXRpb24KZGlmZiAtLWdpdCBhL0pTVGVzdHMvc3RyZXNzL2Vz
Ni1kZWZhdWx0LXBhcmFtZXRlcnMuanMgYi9KU1Rlc3RzL3N0cmVzcy9lczYtZGVmYXVsdC1wYXJh
bWV0ZXJzLmpzCmluZGV4IDlhMDA0ZTEuLjQzNGU1ZGEgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvc3Ry
ZXNzL2VzNi1kZWZhdWx0LXBhcmFtZXRlcnMuanMKKysrIGIvSlNUZXN0cy9zdHJlc3MvZXM2LWRl
ZmF1bHQtcGFyYW1ldGVycy5qcwpAQCAtMjIxLDYgKzIyMSw5NSBAQCBhdWdtZW50c0FyZ3VtZW50
czUoMjApOwogICAgIH0KIH0pKCk7CiAKKy8vIExlbmd0aAorCitmdW5jdGlvbiBuYW1lZDEoYSl7
fTsKK2Z1bmN0aW9uIG5hbWVkMihhPTEpe307CitmdW5jdGlvbiBuYW1lZDMoYSxiKXt9OworZnVu
Y3Rpb24gbmFtZWQ0KGEsYj0xKXt9OworZnVuY3Rpb24gbmFtZWQ1KGE9MSxiPTEpe307CitmdW5j
dGlvbiBuYW1lZDYoYSxiLGMpe307CitmdW5jdGlvbiBuYW1lZDcoYT0xLGIsYyl7fTsKK2Z1bmN0
aW9uIG5hbWVkOChhLGI9MSxjKXt9OworZnVuY3Rpb24gbmFtZWQ5KGEsYixjPTEpe307CitmdW5j
dGlvbiBuYW1lZDEwKGEsLi4uYil7fTsKK2Z1bmN0aW9uIG5hbWVkMTEoYT0xLC4uLmIpe307CisK
K2Fzc2VydCggbmFtZWQxLmxlbmd0aCA9PT0gMSApOworYXNzZXJ0KCBuYW1lZDIubGVuZ3RoID09
PSAwICk7Cithc3NlcnQoIG5hbWVkMy5sZW5ndGggPT09IDIgKTsKK2Fzc2VydCggbmFtZWQ0Lmxl
bmd0aCA9PT0gMSApOworYXNzZXJ0KCBuYW1lZDUubGVuZ3RoID09PSAwICk7Cithc3NlcnQoIG5h
bWVkNi5sZW5ndGggPT09IDMgKTsKK2Fzc2VydCggbmFtZWQ3Lmxlbmd0aCA9PT0gMCApOworYXNz
ZXJ0KCBuYW1lZDgubGVuZ3RoID09PSAxICk7Cithc3NlcnQoIG5hbWVkOS5sZW5ndGggPT09IDIg
KTsKK2Fzc2VydCggbmFtZWQxMC5sZW5ndGggPT09IDEgKTsKK2Fzc2VydCggbmFtZWQxMS5sZW5n
dGggPT09IDAgKTsKKworYXNzZXJ0KCAoZnVuY3Rpb24qKGEpe30pLmxlbmd0aCA9PT0gMSApOwor
YXNzZXJ0KCAoZnVuY3Rpb24qKGE9MSl7fSkubGVuZ3RoID09PSAwICk7Cithc3NlcnQoIChmdW5j
dGlvbiooYSxiKXt9KS5sZW5ndGggPT09IDIgKTsKK2Fzc2VydCggKGZ1bmN0aW9uKihhLGI9MSl7
fSkubGVuZ3RoID09PSAxICk7Cithc3NlcnQoIChmdW5jdGlvbiooYT0xLGI9MSl7fSkubGVuZ3Ro
ID09PSAwICk7Cithc3NlcnQoIChmdW5jdGlvbiooYSxiLGMpe30pLmxlbmd0aCA9PT0gMyApOwor
YXNzZXJ0KCAoZnVuY3Rpb24qKGE9MSxiLGMpe30pLmxlbmd0aCA9PT0gMCApOworYXNzZXJ0KCAo
ZnVuY3Rpb24qKGEsYj0xLGMpe30pLmxlbmd0aCA9PT0gMSApOworYXNzZXJ0KCAoZnVuY3Rpb24q
KGEsYixjPTEpe30pLmxlbmd0aCA9PT0gMiApOworYXNzZXJ0KCAoZnVuY3Rpb24qKGEsLi4uYil7
fSkubGVuZ3RoID09PSAxICk7Cithc3NlcnQoIChmdW5jdGlvbiooYT0xLC4uLmIpe30pLmxlbmd0
aCA9PT0gMCApOworCithc3NlcnQoICgoYSk9Pnt9KS5sZW5ndGggPT09IDEgKTsKK2Fzc2VydCgg
KChhPTEpPT57fSkubGVuZ3RoID09PSAwICk7Cithc3NlcnQoICgoYSxiKT0+e30pLmxlbmd0aCA9
PT0gMiApOworYXNzZXJ0KCAoKGEsYj0xKT0+e30pLmxlbmd0aCA9PT0gMSApOworYXNzZXJ0KCAo
KGE9MSxiPTEpPT57fSkubGVuZ3RoID09PSAwICk7Cithc3NlcnQoICgoYSxiLGMpPT57fSkubGVu
Z3RoID09PSAzICk7Cithc3NlcnQoICgoYT0xLGIsYyk9Pnt9KS5sZW5ndGggPT09IDAgKTsKK2Fz
c2VydCggKChhLGI9MSxjKT0+e30pLmxlbmd0aCA9PT0gMSApOworYXNzZXJ0KCAoKGEsYixjPTEp
PT57fSkubGVuZ3RoID09PSAyICk7Cithc3NlcnQoICgoYSwuLi5iKT0+e30pLmxlbmd0aCA9PT0g
MSApOworYXNzZXJ0KCAoKGE9MSwuLi5iKT0+e30pLmxlbmd0aCA9PT0gMCApOworCithc3NlcnQo
IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Ioe3NldCBzZXR0ZXIoYSl7fX0sICJzZXR0
ZXIiKS5zZXQubGVuZ3RoID09PSAxICk7Cithc3NlcnQoIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURl
c2NyaXB0b3Ioe3NldCBzZXR0ZXIoYT0xKXt9fSwgInNldHRlciIpLnNldC5sZW5ndGggPT09IDAg
KTsKKworYXNzZXJ0KCAoe21ldGhvZChhKXt9fSkubWV0aG9kLmxlbmd0aCA9PT0gMSApOworYXNz
ZXJ0KCAoe21ldGhvZChhPTEpe319KS5tZXRob2QubGVuZ3RoID09PSAwICk7Cithc3NlcnQoICh7
bWV0aG9kKGEsYil7fX0pLm1ldGhvZC5sZW5ndGggPT09IDIgKTsKK2Fzc2VydCggKHttZXRob2Qo
YSxiPTEpe319KS5tZXRob2QubGVuZ3RoID09PSAxICk7Cithc3NlcnQoICh7bWV0aG9kKGE9MSxi
PTEpe319KS5tZXRob2QubGVuZ3RoID09PSAwICk7Cithc3NlcnQoICh7bWV0aG9kKGEsYixjKXt9
fSkubWV0aG9kLmxlbmd0aCA9PT0gMyApOworYXNzZXJ0KCAoe21ldGhvZChhPTEsYixjKXt9fSku
bWV0aG9kLmxlbmd0aCA9PT0gMCApOworYXNzZXJ0KCAoe21ldGhvZChhLGI9MSxjKXt9fSkubWV0
aG9kLmxlbmd0aCA9PT0gMSApOworYXNzZXJ0KCAoe21ldGhvZChhLGIsYz0xKXt9fSkubWV0aG9k
Lmxlbmd0aCA9PT0gMiApOworYXNzZXJ0KCAoe21ldGhvZChhLC4uLmIpe319KS5tZXRob2QubGVu
Z3RoID09PSAxICk7Cithc3NlcnQoICh7bWV0aG9kKGE9MSwuLi5iKXt9fSkubWV0aG9kLmxlbmd0
aCA9PT0gMCApOworCithc3NlcnQoICh7Km1ldGhvZChhKXt9fSkubWV0aG9kLmxlbmd0aCA9PT0g
MSApOworYXNzZXJ0KCAoeyptZXRob2QoYT0xKXt9fSkubWV0aG9kLmxlbmd0aCA9PT0gMCApOwor
YXNzZXJ0KCAoeyptZXRob2QoYSxiKXt9fSkubWV0aG9kLmxlbmd0aCA9PT0gMiApOworYXNzZXJ0
KCAoeyptZXRob2QoYSxiPTEpe319KS5tZXRob2QubGVuZ3RoID09PSAxICk7Cithc3NlcnQoICh7
Km1ldGhvZChhPTEsYj0xKXt9fSkubWV0aG9kLmxlbmd0aCA9PT0gMCApOworYXNzZXJ0KCAoeypt
ZXRob2QoYSxiLGMpe319KS5tZXRob2QubGVuZ3RoID09PSAzICk7Cithc3NlcnQoICh7Km1ldGhv
ZChhPTEsYixjKXt9fSkubWV0aG9kLmxlbmd0aCA9PT0gMCApOworYXNzZXJ0KCAoeyptZXRob2Qo
YSxiPTEsYyl7fX0pLm1ldGhvZC5sZW5ndGggPT09IDEgKTsKK2Fzc2VydCggKHsqbWV0aG9kKGEs
YixjPTEpe319KS5tZXRob2QubGVuZ3RoID09PSAyICk7Cithc3NlcnQoICh7Km1ldGhvZChhLC4u
LmIpe319KS5tZXRob2QubGVuZ3RoID09PSAxICk7Cithc3NlcnQoICh7Km1ldGhvZChhPTEsLi4u
Yil7fX0pLm1ldGhvZC5sZW5ndGggPT09IDAgKTsKKworYXNzZXJ0KCAoY2xhc3Mge3N0YXRpYyBt
ZXRob2QoYSl7fX0pLm1ldGhvZC5sZW5ndGggPT09IDEgKTsKK2Fzc2VydCggKGNsYXNzIHtzdGF0
aWMgbWV0aG9kKGE9MSl7fX0pLm1ldGhvZC5sZW5ndGggPT09IDAgKTsKK2Fzc2VydCggKGNsYXNz
IHtzdGF0aWMgbWV0aG9kKGEsYil7fX0pLm1ldGhvZC5sZW5ndGggPT09IDIgKTsKK2Fzc2VydCgg
KGNsYXNzIHtzdGF0aWMgbWV0aG9kKGEsYj0xKXt9fSkubWV0aG9kLmxlbmd0aCA9PT0gMSApOwor
YXNzZXJ0KCAoY2xhc3Mge3N0YXRpYyBtZXRob2QoYT0xLGI9MSl7fX0pLm1ldGhvZC5sZW5ndGgg
PT09IDAgKTsKK2Fzc2VydCggKGNsYXNzIHtzdGF0aWMgbWV0aG9kKGEsYixjKXt9fSkubWV0aG9k
Lmxlbmd0aCA9PT0gMyApOworYXNzZXJ0KCAoY2xhc3Mge3N0YXRpYyBtZXRob2QoYT0xLGIsYyl7
fX0pLm1ldGhvZC5sZW5ndGggPT09IDAgKTsKK2Fzc2VydCggKGNsYXNzIHtzdGF0aWMgbWV0aG9k
KGEsYj0xLGMpe319KS5tZXRob2QubGVuZ3RoID09PSAxICk7Cithc3NlcnQoIChjbGFzcyB7c3Rh
dGljIG1ldGhvZChhLGIsYz0xKXt9fSkubWV0aG9kLmxlbmd0aCA9PT0gMiApOworYXNzZXJ0KCAo
Y2xhc3Mge3N0YXRpYyBtZXRob2QoYSwuLi5iKXt9fSkubWV0aG9kLmxlbmd0aCA9PT0gMSApOwor
YXNzZXJ0KCAoY2xhc3Mge3N0YXRpYyBtZXRob2QoYT0xLC4uLmIpe319KS5tZXRob2QubGVuZ3Ro
ID09PSAwICk7CisKIC8vIFREWiBlcnJvcnMuCiA7KGZ1bmN0aW9uKCkgewogICAgIGZ1bmN0aW9u
IGJhc2ljRXJyb3IoeCA9IHksIHkpIHsgfQpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyLnlh
bWwgYi9KU1Rlc3RzL3Rlc3QyNjIueWFtbAppbmRleCBjNTE2MDUzLi43ZTE3YzllIDEwMDY0NAot
LS0gYS9KU1Rlc3RzL3Rlc3QyNjIueWFtbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIueWFtbApAQCAt
NTQwMDAsOSArNTQwMDAsOSBAQAogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVz
c2lvbnMvYXJyb3ctZnVuY3Rpb24vZXhwcmVzc2lvbi1ib2R5LWltcGxpY2l0LXJldHVybi5qcwog
ICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9o
YXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyJdLCBbOnN0cmlj
dF0KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2Fycm93LWZ1bmN0
aW9uL2xlbmd0aC1kZmx0LmpzCi0gIGNtZDogcnVuVGVzdDI2MiA6ZmFpbCwgIk5vRXhjZXB0aW9u
IiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNz
L3N0YS5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0sIFtdCisg
IGNtZDogcnVuVGVzdDI2MiA6bm9ybWFsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4uLy4uL2hh
cm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4uLy4uLy4u
Ly4uL2hhcm5lc3MvcHJvcGVydHlIZWxwZXIuanMiXSwgW10KIC0gcGF0aDogdGVzdDI2Mi90ZXN0
L2xhbmd1YWdlL2V4cHJlc3Npb25zL2Fycm93LWZ1bmN0aW9uL2xlbmd0aC1kZmx0LmpzCi0gIGNt
ZDogcnVuVGVzdDI2MiA6ZmFpbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNz
L2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi9o
YXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0sIFs6c3RyaWN0XQorICBjbWQ6IHJ1blRlc3QyNjIg
Om5vcm1hbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIs
ICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3Bl
cnR5SGVscGVyLmpzIl0sIFs6c3RyaWN0XQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uv
ZXhwcmVzc2lvbnMvYXJyb3ctZnVuY3Rpb24vbGV4aWNhbC1hcmd1bWVudHMuanMKICAgY21kOiBy
dW5UZXN0MjYyIDpub3JtYWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9h
c3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiXSwgW10KIC0gcGF0aDogdGVz
dDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2Fycm93LWZ1bmN0aW9uL2xleGljYWwtYXJn
dW1lbnRzLmpzCkBAIC01ODg1Miw5ICs1ODg1Miw5IEBACiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9s
YW5ndWFnZS9leHByZXNzaW9ucy9jbGFzcy9kc3RyLW1ldGgtc3RhdGljLW9iai1wdHJuLXByb3At
b2JqLmpzCiAgIGNtZDogcnVuVGVzdDI2MiA6bm9ybWFsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4u
Ly4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIl0s
IFs6c3RyaWN0XQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvY2xh
c3MvZ2VuLW1ldGhvZC1sZW5ndGgtZGZsdC5qcwotICBjbWQ6IHJ1blRlc3QyNjIgOmZhaWwsICJO
b0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4v
Li4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBlci5q
cyJdLCBbXQorICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8u
Li8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyIs
ICIuLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0sIFtdCiAtIHBhdGg6IHRl
c3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9jbGFzcy9nZW4tbWV0aG9kLWxlbmd0aC1k
Zmx0LmpzCi0gIGNtZDogcnVuVGVzdDI2MiA6ZmFpbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8u
Li8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyIsICIu
Li8uLi8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0sIFs6c3RyaWN0XQorICBjbWQ6
IHJ1blRlc3QyNjIgOm5vcm1hbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNz
L2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi9o
YXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0sIFs6c3RyaWN0XQogLSBwYXRoOiB0ZXN0MjYyL3Rl
c3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvY2xhc3MvZ2VuLW1ldGhvZC1wYXJhbS1kZmx0LXlpZWxk
LmpzCiAgIGNtZDogcnVuVGVzdDI2MiA6bm9ybWFsLCAiU3ludGF4RXJyb3IiLCBbIi4uLy4uLy4u
Ly4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIl0sIFtd
CiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9jbGFzcy9nZW4tbWV0
aG9kLXBhcmFtLWRmbHQteWllbGQuanMKQEAgLTU4ODY0LDkgKzU4ODY0LDkgQEAKIC0gcGF0aDog
dGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2NsYXNzL2dldHRlci1wYXJhbS1kZmx0
LmpzCiAgIGNtZDogcnVuVGVzdDI2MiA6bm9ybWFsLCAiU3ludGF4RXJyb3IiLCBbIi4uLy4uLy4u
Ly4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIl0sIFs6
c3RyaWN0XQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvY2xhc3Mv
bWV0aG9kLWxlbmd0aC1kZmx0LmpzCi0gIGNtZDogcnVuVGVzdDI2MiA6ZmFpbCwgIk5vRXhjZXB0
aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJu
ZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0sIFtd
CisgIGNtZDogcnVuVGVzdDI2MiA6bm9ybWFsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4uLy4u
L2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4uLy4u
Ly4uLy4uL2hhcm5lc3MvcHJvcGVydHlIZWxwZXIuanMiXSwgW10KIC0gcGF0aDogdGVzdDI2Mi90
ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2NsYXNzL21ldGhvZC1sZW5ndGgtZGZsdC5qcwotICBj
bWQ6IHJ1blRlc3QyNjIgOmZhaWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVz
cy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4v
aGFybmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbOnN0cmljdF0KKyAgY21kOiBydW5UZXN0MjYy
IDpub3JtYWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMi
LCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9w
ZXJ0eUhlbHBlci5qcyJdLCBbOnN0cmljdF0KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdl
L2V4cHJlc3Npb25zL2NsYXNzL21ldGhvZC1wYXJhbS1kZmx0LXlpZWxkLmpzCiAgIGNtZDogcnVu
VGVzdDI2MiA6bm9ybWFsLCAiU3ludGF4RXJyb3IiLCBbIi4uLy4uLy4uLy4uL2hhcm5lc3MvYXNz
ZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIl0sIFtdCiAtIHBhdGg6IHRlc3Qy
NjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9jbGFzcy9tZXRob2QtcGFyYW0tZGZsdC15aWVs
ZC5qcwpAQCAtNTkxMDAsMTcgKzU5MTAwLDE3IEBACiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5n
dWFnZS9leHByZXNzaW9ucy9jbGFzcy9zY29wZS1zdGF0aWMtc2V0dGVyLXBhcmFtc2JvZHktdmFy
LW9wZW4uanMKICAgY21kOiBydW5UZXN0MjYyIDpub3JtYWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4v
Li4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMi
XSwgWzpzdHJpY3RdCiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9j
bGFzcy9zZXR0ZXItbGVuZ3RoLWRmbHQuanMKLSAgY21kOiBydW5UZXN0MjYyIDpmYWlsLCAiTm9F
eGNlcHRpb24iLCBbIi4uLy4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4u
L2hhcm5lc3Mvc3RhLmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3MvcHJvcGVydHlIZWxwZXIuanMi
XSwgW10KKyAgY21kOiBydW5UZXN0MjYyIDpub3JtYWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4v
Li4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAi
Li4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbXQogLSBwYXRoOiB0ZXN0
MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvY2xhc3Mvc2V0dGVyLWxlbmd0aC1kZmx0Lmpz
Ci0gIGNtZDogcnVuVGVzdDI2MiA6ZmFpbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9o
YXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyIsICIuLi8uLi8u
Li8uLi9oYXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0sIFs6c3RyaWN0XQorICBjbWQ6IHJ1blRl
c3QyNjIgOm5vcm1hbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2Vy
dC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNz
L3Byb3BlcnR5SGVscGVyLmpzIl0sIFs6c3RyaWN0XQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFu
Z3VhZ2UvZXhwcmVzc2lvbnMvY2xhc3Mvc3RhdGljLWdlbi1tZXRob2QtcGFyYW0tZGZsdC15aWVs
ZC5qcwogICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIlN5bnRheEVycm9yIiwgWyIuLi8uLi8u
Li8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyJdLCBb
XQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvY2xhc3Mvc3RhdGlj
LWdlbi1tZXRob2QtcGFyYW0tZGZsdC15aWVsZC5qcwogICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1h
bCwgIlN5bnRheEVycm9yIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8u
Li8uLi8uLi9oYXJuZXNzL3N0YS5qcyJdLCBbOnN0cmljdF0KIC0gcGF0aDogdGVzdDI2Mi90ZXN0
L2xhbmd1YWdlL2V4cHJlc3Npb25zL2NsYXNzL3N0YXRpYy1tZXRob2QtbGVuZ3RoLWRmbHQuanMK
LSAgY21kOiBydW5UZXN0MjYyIDpmYWlsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4uLy4uL2hh
cm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4uLy4uLy4u
Ly4uL2hhcm5lc3MvcHJvcGVydHlIZWxwZXIuanMiXSwgW10KKyAgY21kOiBydW5UZXN0MjYyIDpu
b3JtYWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAi
Li4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0
eUhlbHBlci5qcyJdLCBbXQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lv
bnMvY2xhc3Mvc3RhdGljLW1ldGhvZC1sZW5ndGgtZGZsdC5qcwotICBjbWQ6IHJ1blRlc3QyNjIg
OmZhaWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAi
Li4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0
eUhlbHBlci5qcyJdLCBbOnN0cmljdF0KKyAgY21kOiBydW5UZXN0MjYyIDpub3JtYWwsICJOb0V4
Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4v
aGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJd
LCBbOnN0cmljdF0KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2Ns
YXNzL3N0YXRpYy1tZXRob2QtcGFyYW0tZGZsdC15aWVsZC5qcwogICBjbWQ6IHJ1blRlc3QyNjIg
Om5vcm1hbCwgIlN5bnRheEVycm9yIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIs
ICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyJdLCBbXQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3Qv
bGFuZ3VhZ2UvZXhwcmVzc2lvbnMvY2xhc3Mvc3RhdGljLW1ldGhvZC1wYXJhbS1kZmx0LXlpZWxk
LmpzCkBAIC02MjE0OCw5ICs2MjE0OCw5IEBACiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFn
ZS9leHByZXNzaW9ucy9mdW5jdGlvbi9lYXJseS1wYXJhbXMtc3VwZXItcHJvcC5qcwogICBjbWQ6
IHJ1blRlc3QyNjIgOm5vcm1hbCwgIlN5bnRheEVycm9yIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNz
L2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyJdLCBbOnN0cmljdF0KIC0g
cGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2Z1bmN0aW9uL2xlbmd0aC1k
Zmx0LmpzCi0gIGNtZDogcnVuVGVzdDI2MiA6ZmFpbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8u
Li8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyIsICIu
Li8uLi8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0sIFtdCisgIGNtZDogcnVuVGVz
dDI2MiA6bm9ybWFsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0
LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mv
cHJvcGVydHlIZWxwZXIuanMiXSwgW10KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4
cHJlc3Npb25zL2Z1bmN0aW9uL2xlbmd0aC1kZmx0LmpzCi0gIGNtZDogcnVuVGVzdDI2MiA6ZmFp
bCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8u
Li8uLi8uLi9oYXJuZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVs
cGVyLmpzIl0sIFs6c3RyaWN0XQorICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIk5vRXhjZXB0
aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJu
ZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0sIFs6
c3RyaWN0XQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZnVuY3Rp
b24vbmFtZS5qcwogICBjbWQ6IHJ1blRlc3QyNjIgOmZhaWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4v
Li4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMi
LCAiLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbXQogLSBwYXRoOiB0
ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZnVuY3Rpb24vbmFtZS5qcwpAQCAtNjI5
NTgsOSArNjI5NTgsOSBAQAogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lv
bnMvZ2VuZXJhdG9ycy9pbnZva2UtYXMtY29uc3RydWN0b3IuanMKICAgY21kOiBydW5UZXN0MjYy
IDpub3JtYWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMi
LCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiXSwgWzpzdHJpY3RdCiAtIHBhdGg6IHRlc3Qy
NjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9nZW5lcmF0b3JzL2xlbmd0aC1kZmx0LmpzCi0g
IGNtZDogcnVuVGVzdDI2MiA6ZmFpbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJu
ZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8u
Li9oYXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0sIFtdCisgIGNtZDogcnVuVGVzdDI2MiA6bm9y
bWFsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4u
Ly4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3MvcHJvcGVydHlI
ZWxwZXIuanMiXSwgW10KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25z
L2dlbmVyYXRvcnMvbGVuZ3RoLWRmbHQuanMKLSAgY21kOiBydW5UZXN0MjYyIDpmYWlsLCAiTm9F
eGNlcHRpb24iLCBbIi4uLy4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4u
L2hhcm5lc3Mvc3RhLmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3MvcHJvcGVydHlIZWxwZXIuanMi
XSwgWzpzdHJpY3RdCisgIGNtZDogcnVuVGVzdDI2MiA6bm9ybWFsLCAiTm9FeGNlcHRpb24iLCBb
Ii4uLy4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3Rh
LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3MvcHJvcGVydHlIZWxwZXIuanMiXSwgWzpzdHJpY3Rd
CiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9nZW5lcmF0b3JzL2xl
bmd0aC1wcm9wZXJ0eS1kZXNjcmlwdG9yLmpzCiAgIGNtZDogcnVuVGVzdDI2MiA6bm9ybWFsLCAi
Tm9FeGNlcHRpb24iLCBbIi4uLy4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4u
Ly4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3MvcHJvcGVydHlIZWxwZXIu
anMiXSwgW10KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2dlbmVy
YXRvcnMvbGVuZ3RoLXByb3BlcnR5LWRlc2NyaXB0b3IuanMKQEAgLTY2NDc0LDkgKzY2NDc0LDkg
QEAKIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL29iamVjdC9tZXRo
b2QtZGVmaW5pdGlvbi9nZW5lcmF0b3ItaW52b2tlLWZuLXN0cmljdC5qcwogICBjbWQ6IHJ1blRl
c3QyNjIgOm5vcm1hbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi8uLi9oYXJuZXNzL2Fz
c2VydC5qcyIsICIuLi8uLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyJdLCBbXQogLSBwYXRoOiB0
ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvb2JqZWN0L21ldGhvZC1kZWZpbml0aW9u
L2dlbmVyYXRvci1sZW5ndGgtZGZsdC5qcwotICBjbWQ6IHJ1blRlc3QyNjIgOmZhaWwsICJOb0V4
Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4v
Li4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhl
bHBlci5qcyJdLCBbXQorICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIk5vRXhjZXB0aW9uIiwg
WyIuLi8uLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi8uLi9oYXJu
ZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0s
IFtdCiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9vYmplY3QvbWV0
aG9kLWRlZmluaXRpb24vZ2VuZXJhdG9yLWxlbmd0aC1kZmx0LmpzCi0gIGNtZDogcnVuVGVzdDI2
MiA6ZmFpbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5q
cyIsICIuLi8uLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi8uLi9oYXJu
ZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0sIFs6c3RyaWN0XQorICBjbWQ6IHJ1blRlc3QyNjIgOm5v
cm1hbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIs
ICIuLi8uLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi8uLi9oYXJuZXNz
L3Byb3BlcnR5SGVscGVyLmpzIl0sIFs6c3RyaWN0XQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFu
Z3VhZ2UvZXhwcmVzc2lvbnMvb2JqZWN0L21ldGhvZC1kZWZpbml0aW9uL2dlbmVyYXRvci1sZW5n
dGguanMKICAgY21kOiBydW5UZXN0MjYyIDpub3JtYWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4v
Li4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEu
anMiLCAiLi4vLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbXQogLSBw
YXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvb2JqZWN0L21ldGhvZC1kZWZp
bml0aW9uL2dlbmVyYXRvci1sZW5ndGguanMKQEAgLTY2NTYyLDkgKzY2NTYyLDkgQEAKIC0gcGF0
aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL29iamVjdC9tZXRob2QtZGVmaW5p
dGlvbi9uYW1lLWludm9rZS1mbi1zdHJpY3QuanMKICAgY21kOiBydW5UZXN0MjYyIDpub3JtYWws
ICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4v
Li4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiXSwgW10KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xh
bmd1YWdlL2V4cHJlc3Npb25zL29iamVjdC9tZXRob2QtZGVmaW5pdGlvbi9uYW1lLWxlbmd0aC1k
Zmx0LmpzCi0gIGNtZDogcnVuVGVzdDI2MiA6ZmFpbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8u
Li8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5q
cyIsICIuLi8uLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0sIFtdCisgIGNt
ZDogcnVuVGVzdDI2MiA6bm9ybWFsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4uLy4uLy4uL2hh
cm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4uLy4u
Ly4uLy4uLy4uL2hhcm5lc3MvcHJvcGVydHlIZWxwZXIuanMiXSwgW10KIC0gcGF0aDogdGVzdDI2
Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL29iamVjdC9tZXRob2QtZGVmaW5pdGlvbi9uYW1l
LWxlbmd0aC1kZmx0LmpzCi0gIGNtZDogcnVuVGVzdDI2MiA6ZmFpbCwgIk5vRXhjZXB0aW9uIiwg
WyIuLi8uLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi8uLi9oYXJu
ZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0s
IFs6c3RyaWN0XQorICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIk5vRXhjZXB0aW9uIiwgWyIu
Li8uLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi8uLi9oYXJuZXNz
L3N0YS5qcyIsICIuLi8uLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0sIFs6
c3RyaWN0XQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvb2JqZWN0
L21ldGhvZC1kZWZpbml0aW9uL25hbWUtbGVuZ3RoLmpzCiAgIGNtZDogcnVuVGVzdDI2MiA6bm9y
bWFsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwg
Ii4uLy4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4uLy4uLy4uLy4uLy4uL2hhcm5lc3Mv
cHJvcGVydHlIZWxwZXIuanMiXSwgW10KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4
cHJlc3Npb25zL29iamVjdC9tZXRob2QtZGVmaW5pdGlvbi9uYW1lLWxlbmd0aC5qcwpAQCAtNjY4
NzYsOSArNjY4NzYsOSBAQAogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lv
bnMvb2JqZWN0L3Njb3BlLXNldHRlci1wYXJhbXNib2R5LXZhci1vcGVuLmpzCiAgIGNtZDogcnVu
VGVzdDI2MiA6bm9ybWFsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4uLy4uL2hhcm5lc3MvYXNz
ZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIl0sIFs6c3RyaWN0XQogLSBwYXRo
OiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvb2JqZWN0L3NldHRlci1sZW5ndGgt
ZGZsdC5qcwotICBjbWQ6IHJ1blRlc3QyNjIgOmZhaWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4v
Li4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAi
Li4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbXQorICBjbWQ6IHJ1blRl
c3QyNjIgOm5vcm1hbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2Vy
dC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNz
L3Byb3BlcnR5SGVscGVyLmpzIl0sIFtdCiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9l
eHByZXNzaW9ucy9vYmplY3Qvc2V0dGVyLWxlbmd0aC1kZmx0LmpzCi0gIGNtZDogcnVuVGVzdDI2
MiA6ZmFpbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIs
ICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3Bl
cnR5SGVscGVyLmpzIl0sIFs6c3RyaWN0XQorICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIk5v
RXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8u
Li9oYXJuZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVscGVyLmpz
Il0sIFs6c3RyaWN0XQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMv
b2JqZWN0L3NldHRlci1wcm9wLWRlc2MuanMKICAgY21kOiBydW5UZXN0MjYyIDpub3JtYWwsICJO
b0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4v
Li4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBlci5q
cyJdLCBbXQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvb2JqZWN0
L3NldHRlci1wcm9wLWRlc2MuanMKQEAgLTc2MTIyLDkgKzc2MTIyLDkgQEAKIC0gcGF0aDogdGVz
dDI2Mi90ZXN0L2xhbmd1YWdlL3N0YXRlbWVudHMvY2xhc3MvZHN0ci1tZXRoLXN0YXRpYy1vYmot
cHRybi1wcm9wLW9iai5qcwogICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIk5vRXhjZXB0aW9u
IiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNz
L3N0YS5qcyJdLCBbOnN0cmljdF0KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL3N0YXRl
bWVudHMvY2xhc3MvZ2VuLW1ldGhvZC1sZW5ndGgtZGZsdC5qcwotICBjbWQ6IHJ1blRlc3QyNjIg
OmZhaWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAi
Li4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0
eUhlbHBlci5qcyJdLCBbXQorICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIk5vRXhjZXB0aW9u
IiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNz
L3N0YS5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0sIFtdCiAt
IHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9zdGF0ZW1lbnRzL2NsYXNzL2dlbi1tZXRob2Qt
bGVuZ3RoLWRmbHQuanMKLSAgY21kOiBydW5UZXN0MjYyIDpmYWlsLCAiTm9FeGNlcHRpb24iLCBb
Ii4uLy4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3Rh
LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3MvcHJvcGVydHlIZWxwZXIuanMiXSwgWzpzdHJpY3Rd
CisgIGNtZDogcnVuVGVzdDI2MiA6bm9ybWFsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4uLy4u
L2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4uLy4u
Ly4uLy4uL2hhcm5lc3MvcHJvcGVydHlIZWxwZXIuanMiXSwgWzpzdHJpY3RdCiAtIHBhdGg6IHRl
c3QyNjIvdGVzdC9sYW5ndWFnZS9zdGF0ZW1lbnRzL2NsYXNzL2dlbi1tZXRob2QtcGFyYW0tZGZs
dC15aWVsZC5qcwogICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIlN5bnRheEVycm9yIiwgWyIu
Li8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5q
cyJdLCBbXQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uvc3RhdGVtZW50cy9jbGFzcy9n
ZW4tbWV0aG9kLXBhcmFtLWRmbHQteWllbGQuanMKQEAgLTc2MTM0LDkgKzc2MTM0LDkgQEAKIC0g
cGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL3N0YXRlbWVudHMvY2xhc3MvZ2V0dGVyLXBhcmFt
LWRmbHQuanMKICAgY21kOiBydW5UZXN0MjYyIDpub3JtYWwsICJTeW50YXhFcnJvciIsIFsiLi4v
Li4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMi
XSwgWzpzdHJpY3RdCiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9zdGF0ZW1lbnRzL2Ns
YXNzL21ldGhvZC1sZW5ndGgtZGZsdC5qcwotICBjbWQ6IHJ1blRlc3QyNjIgOmZhaWwsICJOb0V4
Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4v
aGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJd
LCBbXQorICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8u
Li8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyIsICIu
Li8uLi8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0sIFtdCiAtIHBhdGg6IHRlc3Qy
NjIvdGVzdC9sYW5ndWFnZS9zdGF0ZW1lbnRzL2NsYXNzL21ldGhvZC1sZW5ndGgtZGZsdC5qcwot
ICBjbWQ6IHJ1blRlc3QyNjIgOmZhaWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFy
bmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4v
Li4vaGFybmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbOnN0cmljdF0KKyAgY21kOiBydW5UZXN0
MjYyIDpub3JtYWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQu
anMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9w
cm9wZXJ0eUhlbHBlci5qcyJdLCBbOnN0cmljdF0KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1
YWdlL3N0YXRlbWVudHMvY2xhc3MvbWV0aG9kLXBhcmFtLXlpZWxkLmpzCiAgIGNtZDogcnVuVGVz
dDI2MiA6bm9ybWFsLCAiU3ludGF4RXJyb3IiLCBbIi4uLy4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0
LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIl0sIFtdCiAtIHBhdGg6IHRlc3QyNjIv
dGVzdC9sYW5ndWFnZS9zdGF0ZW1lbnRzL2NsYXNzL21ldGhvZC1wYXJhbS15aWVsZC5qcwpAQCAt
NzYzOTQsOSArNzYzOTQsOSBAQAogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uvc3RhdGVt
ZW50cy9jbGFzcy9zY29wZS1zdGF0aWMtc2V0dGVyLXBhcmFtc2JvZHktdmFyLW9wZW4uanMKICAg
Y21kOiBydW5UZXN0MjYyIDpub3JtYWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFy
bmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiXSwgWzpzdHJpY3Rd
CiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9zdGF0ZW1lbnRzL2NsYXNzL3NldHRlci1s
ZW5ndGgtZGZsdC5qcwotICBjbWQ6IHJ1blRlc3QyNjIgOmZhaWwsICJOb0V4Y2VwdGlvbiIsIFsi
Li4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEu
anMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbXQorICBjbWQ6
IHJ1blRlc3QyNjIgOm5vcm1hbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNz
L2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi9o
YXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0sIFtdCiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5n
dWFnZS9zdGF0ZW1lbnRzL2NsYXNzL3NldHRlci1sZW5ndGgtZGZsdC5qcwotICBjbWQ6IHJ1blRl
c3QyNjIgOmZhaWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQu
anMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9w
cm9wZXJ0eUhlbHBlci5qcyJdLCBbOnN0cmljdF0KKyAgY21kOiBydW5UZXN0MjYyIDpub3JtYWws
ICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4v
Li4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBl
ci5qcyJdLCBbOnN0cmljdF0KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL3N0YXRlbWVu
dHMvY2xhc3Mvc3RhdGljLWdlbi1tZXRob2QtcGFyYW0tZGZsdC15aWVsZC5qcwogICBjbWQ6IHJ1
blRlc3QyNjIgOm5vcm1hbCwgIlN5bnRheEVycm9yIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fz
c2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyJdLCBbXQogLSBwYXRoOiB0ZXN0
MjYyL3Rlc3QvbGFuZ3VhZ2Uvc3RhdGVtZW50cy9jbGFzcy9zdGF0aWMtZ2VuLW1ldGhvZC1wYXJh
bS1kZmx0LXlpZWxkLmpzCkBAIC03NjQwNiw5ICs3NjQwNiw5IEBACiAtIHBhdGg6IHRlc3QyNjIv
dGVzdC9sYW5ndWFnZS9zdGF0ZW1lbnRzL2NsYXNzL3N0YXRpYy1tZXRob2QtZ2VuLW5vbi1jb25m
aWd1cmFibGUtZXJyLmpzCiAgIGNtZDogcnVuVGVzdDI2MiA6bm9ybWFsLCAiTm9FeGNlcHRpb24i
LCBbIi4uLy4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mv
c3RhLmpzIl0sIFs6c3RyaWN0XQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uvc3RhdGVt
ZW50cy9jbGFzcy9zdGF0aWMtbWV0aG9kLWxlbmd0aC1kZmx0LmpzCi0gIGNtZDogcnVuVGVzdDI2
MiA6ZmFpbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIs
ICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3Bl
cnR5SGVscGVyLmpzIl0sIFtdCisgIGNtZDogcnVuVGVzdDI2MiA6bm9ybWFsLCAiTm9FeGNlcHRp
b24iLCBbIi4uLy4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5l
c3Mvc3RhLmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3MvcHJvcGVydHlIZWxwZXIuanMiXSwgW10K
IC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL3N0YXRlbWVudHMvY2xhc3Mvc3RhdGljLW1l
dGhvZC1sZW5ndGgtZGZsdC5qcwotICBjbWQ6IHJ1blRlc3QyNjIgOmZhaWwsICJOb0V4Y2VwdGlv
biIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVz
cy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbOnN0
cmljdF0KKyAgY21kOiBydW5UZXN0MjYyIDpub3JtYWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4v
Li4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAi
Li4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbOnN0cmljdF0KIC0gcGF0
aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL3N0YXRlbWVudHMvY2xhc3Mvc3RhdGljLW1ldGhvZC1u
b24tY29uZmlndXJhYmxlLWVyci5qcwogICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIk5vRXhj
ZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9o
YXJuZXNzL3N0YS5qcyJdLCBbXQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uvc3RhdGVt
ZW50cy9jbGFzcy9zdGF0aWMtbWV0aG9kLW5vbi1jb25maWd1cmFibGUtZXJyLmpzCkBAIC04MzMy
NCw5ICs4MzMyNCw5IEBACiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9zdGF0ZW1lbnRz
L2Z1bmN0aW9uL2Vhcmx5LXBhcmFtcy1zdXBlci1wcm9wLmpzCiAgIGNtZDogcnVuVGVzdDI2MiA6
bm9ybWFsLCAiU3ludGF4RXJyb3IiLCBbIi4uLy4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwg
Ii4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIl0sIFs6c3RyaWN0XQogLSBwYXRoOiB0ZXN0MjYy
L3Rlc3QvbGFuZ3VhZ2Uvc3RhdGVtZW50cy9mdW5jdGlvbi9sZW5ndGgtZGZsdC5qcwotICBjbWQ6
IHJ1blRlc3QyNjIgOmZhaWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9h
c3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFy
bmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbXQorICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwg
Ik5vRXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8u
Li8uLi9oYXJuZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVscGVy
LmpzIl0sIFtdCiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9zdGF0ZW1lbnRzL2Z1bmN0
aW9uL2xlbmd0aC1kZmx0LmpzCi0gIGNtZDogcnVuVGVzdDI2MiA6ZmFpbCwgIk5vRXhjZXB0aW9u
IiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNz
L3N0YS5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0sIFs6c3Ry
aWN0XQorICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8u
Li8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyIsICIu
Li8uLi8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0sIFs6c3RyaWN0XQogLSBwYXRo
OiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uvc3RhdGVtZW50cy9mdW5jdGlvbi9uYW1lLmpzCiAgIGNt
ZDogcnVuVGVzdDI2MiA6bm9ybWFsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4uLy4uL2hhcm5l
c3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4uLy4uLy4uLy4u
L2hhcm5lc3MvcHJvcGVydHlIZWxwZXIuanMiXSwgW10KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xh
bmd1YWdlL3N0YXRlbWVudHMvZnVuY3Rpb24vbmFtZS5qcwpAQCAtODQxMjYsOSArODQxMjYsOSBA
QAogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uvc3RhdGVtZW50cy9nZW5lcmF0b3JzL2lu
dm9rZS1hcy1jb25zdHJ1Y3Rvci5qcwogICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIk5vRXhj
ZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9o
YXJuZXNzL3N0YS5qcyJdLCBbOnN0cmljdF0KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdl
L3N0YXRlbWVudHMvZ2VuZXJhdG9ycy9sZW5ndGgtZGZsdC5qcwotICBjbWQ6IHJ1blRlc3QyNjIg
OmZhaWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAi
Li4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0
eUhlbHBlci5qcyJdLCBbXQorICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIk5vRXhjZXB0aW9u
IiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNz
L3N0YS5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0sIFtdCiAt
IHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9zdGF0ZW1lbnRzL2dlbmVyYXRvcnMvbGVuZ3Ro
LWRmbHQuanMKLSAgY21kOiBydW5UZXN0MjYyIDpmYWlsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4u
Ly4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwg
Ii4uLy4uLy4uLy4uL2hhcm5lc3MvcHJvcGVydHlIZWxwZXIuanMiXSwgWzpzdHJpY3RdCisgIGNt
ZDogcnVuVGVzdDI2MiA6bm9ybWFsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4uLy4uL2hhcm5l
c3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4uLy4uLy4uLy4u
L2hhcm5lc3MvcHJvcGVydHlIZWxwZXIuanMiXSwgWzpzdHJpY3RdCiAtIHBhdGg6IHRlc3QyNjIv
dGVzdC9sYW5ndWFnZS9zdGF0ZW1lbnRzL2dlbmVyYXRvcnMvbGVuZ3RoLXByb3BlcnR5LWRlc2Ny
aXB0b3IuanMKICAgY21kOiBydW5UZXN0MjYyIDpub3JtYWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4v
Li4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMi
LCAiLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbXQogLSBwYXRoOiB0
ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uvc3RhdGVtZW50cy9nZW5lcmF0b3JzL2xlbmd0aC1wcm9wZXJ0
eS1kZXNjcmlwdG9yLmpzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBhMTJkMjM1Li5jNTBm
N2Q2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSw1MCBAQAorMjAxNi0wOS0y
MiAgSm9zZXBoIFBlY29yYXJvICA8cGVjb3Jhcm9AYXBwbGUuY29tPgorCisgICAgICAgIHRlc3Qy
NjI6IEZ1bmN0aW9uIGxlbmd0aCBzaG91bGQgYmUgbnVtYmVyIG9mIHBhcmFtZXRlcnMgYmVmb3Jl
IHBhcmFtZXRlcnMgd2l0aCBkZWZhdWx0IHZhbHVlcworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYyMzc3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgaHR0cHM6Ly90YzM5LmdpdGh1Yi5pby9lY21hMjYyLyNz
ZWMtZnVuY3Rpb24tZGVmaW5pdGlvbnMtc3RhdGljLXNlbWFudGljcy1leHBlY3RlZGFyZ3VtZW50
Y291bnQKKworICAgICAgICA+IE5PVEU6IFRoZSBFeHBlY3RlZEFyZ3VtZW50Q291bnQgb2YgYSBG
b3JtYWxQYXJhbWV0ZXJMaXN0IGlzIHRoZSBudW1iZXIgb2YKKyAgICAgICAgPiBGb3JtYWxQYXJh
bWV0ZXJzIHRvIHRoZSBsZWZ0IG9mIGVpdGhlciB0aGUgcmVzdCBwYXJhbWV0ZXIgb3IgdGhlIGZp
cnN0CisgICAgICAgID4gRm9ybWFsUGFyYW1ldGVyIHdpdGggYW4gSW5pdGlhbGl6ZXIuIEEgRm9y
bWFsUGFyYW1ldGVyIHdpdGhvdXQgYW4KKyAgICAgICAgPiBpbml0aWFsaXplciBpcyBhbGxvd2Vk
IGFmdGVyIHRoZSBmaXJzdCBwYXJhbWV0ZXIgd2l0aCBhbiBpbml0aWFsaXplcgorICAgICAgICA+
IGJ1dCBzdWNoIHBhcmFtZXRlcnMgYXJlIGNvbnNpZGVyZWQgdG8gYmUgb3B0aW9uYWwgd2l0aCB1
bmRlZmluZWQgYXMKKyAgICAgICAgPiB0aGVpciBkZWZhdWx0IHZhbHVlLgorCisgICAgICAgIEFs
b25nc2lkZSB0aGUgcGFyYW1ldGVyQ291bnQgdmFsdWUsIG1haW50YWluIGEgc2VwYXJhdGUgY291
bnQsCisgICAgICAgIG5vbkRlZmF1bHRQYXJhbWV0ZXJDb3VudCwgd2hpY2ggd2lsbCBiZSB0aGUg
Y291bnQgYmVmb3JlIHNlZWluZworICAgICAgICBhIHJlc3QgcGFyYW1ldGVyIG9yIGluaXRpYWxp
emVkIHBhcmFtZXRlci4KKworICAgICAgICAqIGJ5dGVjb2RlL1VubGlua2VkQ29kZUJsb2NrLmg6
CisgICAgICAgICogYnl0ZWNvZGUvVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUuY3BwOgorICAg
ICAgICAoSlNDOjpVbmxpbmtlZEZ1bmN0aW9uRXhlY3V0YWJsZTo6VW5saW5rZWRGdW5jdGlvbkV4
ZWN1dGFibGUpOgorICAgICAgICAqIGJ5dGVjb2RlL1VubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxl
Lmg6CisgICAgICAgICogcGFyc2VyL0FTVEJ1aWxkZXIuaDoKKyAgICAgICAgKEpTQzo6QVNUQnVp
bGRlcjo6Y3JlYXRlRnVuY3Rpb25NZXRhZGF0YSk6CisgICAgICAgICogcGFyc2VyL05vZGVzLmNw
cDoKKyAgICAgICAgKEpTQzo6RnVuY3Rpb25NZXRhZGF0YU5vZGU6OkZ1bmN0aW9uTWV0YWRhdGFO
b2RlKToKKyAgICAgICAgKiBwYXJzZXIvTm9kZXMuaDoKKyAgICAgICAgKiBwYXJzZXIvUGFyc2Vy
LmNwcDoKKyAgICAgICAgKEpTQzo6UGFyc2VyPExleGVyVHlwZT46OmlzQXJyb3dGdW5jdGlvblBh
cmFtZXRlcnMpOgorICAgICAgICAoSlNDOjpQYXJzZXI8TGV4ZXJUeXBlPjo6cGFyc2VHZW5lcmF0
b3JGdW5jdGlvblNvdXJjZUVsZW1lbnRzKToKKyAgICAgICAgKEpTQzo6UGFyc2VyPExleGVyVHlw
ZT46OnBhcnNlRm9ybWFsUGFyYW1ldGVycyk6CisgICAgICAgIChKU0M6OlBhcnNlcjxMZXhlclR5
cGU+OjpwYXJzZUZ1bmN0aW9uQm9keSk6CisgICAgICAgIChKU0M6OlBhcnNlcjxMZXhlclR5cGU+
OjpwYXJzZUZ1bmN0aW9uUGFyYW1ldGVycyk6CisgICAgICAgIChKU0M6OlBhcnNlcjxMZXhlclR5
cGU+OjpwYXJzZUZ1bmN0aW9uSW5mbyk6CisgICAgICAgICogcGFyc2VyL1BhcnNlci5oOgorICAg
ICAgICAqIHBhcnNlci9QYXJzZXJGdW5jdGlvbkluZm8uaDoKKyAgICAgICAgKiBwYXJzZXIvU291
cmNlUHJvdmlkZXJDYWNoZUl0ZW0uaDoKKyAgICAgICAgKEpTQzo6U291cmNlUHJvdmlkZXJDYWNo
ZUl0ZW06OlNvdXJjZVByb3ZpZGVyQ2FjaGVJdGVtKToKKyAgICAgICAgKiBwYXJzZXIvU3ludGF4
Q2hlY2tlci5oOgorICAgICAgICAoSlNDOjpTeW50YXhDaGVja2VyOjpjcmVhdGVGdW5jdGlvbk1l
dGFkYXRhKToKKyAgICAgICAgKiBydW50aW1lL0V4ZWN1dGFibGUuaDoKKyAgICAgICAgKiBydW50
aW1lL0pTRnVuY3Rpb24uY3BwOgorICAgICAgICAoSlNDOjpKU0Z1bmN0aW9uOjpjcmVhdGVCdWls
dGluRnVuY3Rpb24pOgorICAgICAgICAoSlNDOjpKU0Z1bmN0aW9uOjpyZWlmeUxlbmd0aCk6CisK
IDIwMTYtMDktMjEgIEpvc2VwaCBQZWNvcmFybyAgPHBlY29yYXJvQGFwcGxlLmNvbT4KIAogICAg
ICAgICBSZW1vdmUgYSBidW5jaCBvZiB1bm5lY2Vzc2FyeSBpbmNsdWRlcwpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkQ29kZUJsb2NrLmggYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRDb2RlQmxvY2suaAppbmRleCA2OWI5
ZDg2Li42OWZmNzk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUv
VW5saW5rZWRDb2RlQmxvY2suaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUv
VW5saW5rZWRDb2RlQmxvY2suaApAQCAtNDcsNyArNDcsNiBAQCBuYW1lc3BhY2UgSlNDIHsKIAog
Y2xhc3MgQnl0ZWNvZGVSZXdyaXRlcjsKIGNsYXNzIERlYnVnZ2VyOwotY2xhc3MgRnVuY3Rpb25N
ZXRhZGF0YU5vZGU7CiBjbGFzcyBGdW5jdGlvbkV4ZWN1dGFibGU7CiBjbGFzcyBQYXJzZXJFcnJv
cjsKIGNsYXNzIFNjcmlwdEV4ZWN1dGFibGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYnl0ZWNvZGUvVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlLmNwcAppbmRl
eCAwNTRkNjNkLi5lNTk2ZDEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0
ZWNvZGUvVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ieXRlY29kZS9VbmxpbmtlZEZ1bmN0aW9uRXhlY3V0YWJsZS5jcHAKQEAgLTg4LDYg
Kzg4LDcgQEAgVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGU6OlVubGlua2VkRnVuY3Rpb25FeGVj
dXRhYmxlKFZNKiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3QKICAgICAsIG1fdHlwZVByb2ZpbGluZ1N0
YXJ0T2Zmc2V0KG5vZGUtPmZ1bmN0aW9uS2V5d29yZFN0YXJ0KCkpCiAgICAgLCBtX3R5cGVQcm9m
aWxpbmdFbmRPZmZzZXQobm9kZS0+c3RhcnRTdGFydE9mZnNldCgpICsgbm9kZS0+c291cmNlKCku
bGVuZ3RoKCkgLSAxKQogICAgICwgbV9wYXJhbWV0ZXJDb3VudChub2RlLT5wYXJhbWV0ZXJDb3Vu
dCgpKQorICAgICwgbV9ub25EZWZhdWx0UGFyYW1ldGVyQ291bnQobm9kZS0+bm9uRGVmYXVsdFBh
cmFtZXRlckNvdW50KCkpCiAgICAgLCBtX2ZlYXR1cmVzKDApCiAgICAgLCBtX2lzSW5TdHJpY3RD
b250ZXh0KG5vZGUtPmlzSW5TdHJpY3RDb250ZXh0KCkpCiAgICAgLCBtX2hhc0NhcHR1cmVkVmFy
aWFibGVzKGZhbHNlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2Rl
L1VubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0
ZWNvZGUvVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUuaAppbmRleCAxZTNjYmFmLi5iNGY4YWRj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRGdW5j
dGlvbkV4ZWN1dGFibGUuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5s
aW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUuaApAQCAtNzcsNiArNzcsNyBAQCBwdWJsaWM6CiAgICAg
dm9pZCBzZXRFY21hTmFtZShjb25zdCBJZGVudGlmaWVyJiBuYW1lKSB7IG1fZWNtYU5hbWUgPSBu
YW1lOyB9CiAgICAgY29uc3QgSWRlbnRpZmllciYgaW5mZXJyZWROYW1lKCkgY29uc3QgeyByZXR1
cm4gbV9pbmZlcnJlZE5hbWU7IH0KICAgICB1bnNpZ25lZCBwYXJhbWV0ZXJDb3VudCgpIGNvbnN0
IHsgcmV0dXJuIG1fcGFyYW1ldGVyQ291bnQ7IH07CisgICAgdW5zaWduZWQgbm9uRGVmYXVsdFBh
cmFtZXRlckNvdW50KCkgY29uc3QgeyByZXR1cm4gbV9ub25EZWZhdWx0UGFyYW1ldGVyQ291bnQ7
IH0KICAgICBTb3VyY2VQYXJzZU1vZGUgcGFyc2VNb2RlKCkgY29uc3QgeyByZXR1cm4gc3RhdGlj
X2Nhc3Q8U291cmNlUGFyc2VNb2RlPihtX3NvdXJjZVBhcnNlTW9kZSk7IH07CiAKICAgICBjb25z
dCBTb3VyY2VDb2RlJiBjbGFzc1NvdXJjZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NTb3VyY2U7
IH07CkBAIC0xNTQsNiArMTU1LDcgQEAgcHJpdmF0ZToKICAgICB1bnNpZ25lZCBtX3R5cGVQcm9m
aWxpbmdTdGFydE9mZnNldDsKICAgICB1bnNpZ25lZCBtX3R5cGVQcm9maWxpbmdFbmRPZmZzZXQ7
CiAgICAgdW5zaWduZWQgbV9wYXJhbWV0ZXJDb3VudDsKKyAgICB1bnNpZ25lZCBtX25vbkRlZmF1
bHRQYXJhbWV0ZXJDb3VudDsKICAgICBDb2RlRmVhdHVyZXMgbV9mZWF0dXJlczsKICAgICB1bnNp
Z25lZCBtX2lzSW5TdHJpY3RDb250ZXh0IDogMTsKICAgICB1bnNpZ25lZCBtX2hhc0NhcHR1cmVk
VmFyaWFibGVzIDogMTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIv
QVNUQnVpbGRlci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9BU1RCdWlsZGVyLmgK
aW5kZXggMWMxMTNiYS4uMjM3MmVlYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3BhcnNlci9BU1RCdWlsZGVyLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9B
U1RCdWlsZGVyLmgKQEAgLTM5NCwxMiArMzk0LDE1IEBAIHB1YmxpYzoKICAgICAgICAgY29uc3Qg
SlNUb2tlbkxvY2F0aW9uJiBzdGFydExvY2F0aW9uLCBjb25zdCBKU1Rva2VuTG9jYXRpb24mIGVu
ZExvY2F0aW9uLCAKICAgICAgICAgdW5zaWduZWQgc3RhcnRDb2x1bW4sIHVuc2lnbmVkIGVuZENv
bHVtbiwgaW50IGZ1bmN0aW9uS2V5d29yZFN0YXJ0LCAKICAgICAgICAgaW50IGZ1bmN0aW9uTmFt
ZVN0YXJ0LCBpbnQgcGFyYW1ldGVyc1N0YXJ0LCBib29sIGluU3RyaWN0Q29udGV4dCwgCi0gICAg
ICAgIENvbnN0cnVjdG9yS2luZCBjb25zdHJ1Y3RvcktpbmQsIFN1cGVyQmluZGluZyBzdXBlckJp
bmRpbmcsIHVuc2lnbmVkIHBhcmFtZXRlckNvdW50LCBTb3VyY2VQYXJzZU1vZGUgbW9kZSwgYm9v
bCBpc0Fycm93RnVuY3Rpb25Cb2R5RXhwcmVzc2lvbikKKyAgICAgICAgQ29uc3RydWN0b3JLaW5k
IGNvbnN0cnVjdG9yS2luZCwgU3VwZXJCaW5kaW5nIHN1cGVyQmluZGluZywKKyAgICAgICAgdW5z
aWduZWQgcGFyYW1ldGVyQ291bnQsIHVuc2lnbmVkIG5vbkRlZmF1bHRQYXJhbWV0ZXJDb3VudCwK
KyAgICAgICAgU291cmNlUGFyc2VNb2RlIG1vZGUsIGJvb2wgaXNBcnJvd0Z1bmN0aW9uQm9keUV4
cHJlc3Npb24pCiAgICAgewogICAgICAgICByZXR1cm4gbmV3IChtX3BhcnNlckFyZW5hKSBGdW5j
dGlvbk1ldGFkYXRhTm9kZSgKICAgICAgICAgICAgIG1fcGFyc2VyQXJlbmEsIHN0YXJ0TG9jYXRp
b24sIGVuZExvY2F0aW9uLCBzdGFydENvbHVtbiwgZW5kQ29sdW1uLCAKICAgICAgICAgICAgIGZ1
bmN0aW9uS2V5d29yZFN0YXJ0LCBmdW5jdGlvbk5hbWVTdGFydCwgcGFyYW1ldGVyc1N0YXJ0LCAK
LSAgICAgICAgICAgIGluU3RyaWN0Q29udGV4dCwgY29uc3RydWN0b3JLaW5kLCBzdXBlckJpbmRp
bmcsIHBhcmFtZXRlckNvdW50LCBtb2RlLCBpc0Fycm93RnVuY3Rpb25Cb2R5RXhwcmVzc2lvbik7
CisgICAgICAgICAgICBpblN0cmljdENvbnRleHQsIGNvbnN0cnVjdG9yS2luZCwgc3VwZXJCaW5k
aW5nLAorICAgICAgICAgICAgcGFyYW1ldGVyQ291bnQsIG5vbkRlZmF1bHRQYXJhbWV0ZXJDb3Vu
dCwgbW9kZSwgaXNBcnJvd0Z1bmN0aW9uQm9keUV4cHJlc3Npb24pOwogICAgIH0KIAogICAgIEV4
cHJlc3Npb25Ob2RlKiBjcmVhdGVBcnJvd0Z1bmN0aW9uRXhwcihjb25zdCBKU1Rva2VuTG9jYXRp
b24mIGxvY2F0aW9uLCBjb25zdCBQYXJzZXJGdW5jdGlvbkluZm88QVNUQnVpbGRlcj4mIGZ1bmN0
aW9uSW5mbykKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvTm9kZXMu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Ob2Rlcy5jcHAKaW5kZXggM2EwOGI2
My4uN2EzMGVjYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Ob2Rl
cy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Ob2Rlcy5jcHAKQEAgLTEz
NSw3ICsxMzUsNyBAQCBGdW5jdGlvbk1ldGFkYXRhTm9kZTo6RnVuY3Rpb25NZXRhZGF0YU5vZGUo
CiAgICAgUGFyc2VyQXJlbmEmLCBjb25zdCBKU1Rva2VuTG9jYXRpb24mIHN0YXJ0TG9jYXRpb24s
IAogICAgIGNvbnN0IEpTVG9rZW5Mb2NhdGlvbiYgZW5kTG9jYXRpb24sIHVuc2lnbmVkIHN0YXJ0
Q29sdW1uLCB1bnNpZ25lZCBlbmRDb2x1bW4sIAogICAgIGludCBmdW5jdGlvbktleXdvcmRTdGFy
dCwgaW50IGZ1bmN0aW9uTmFtZVN0YXJ0LCBpbnQgcGFyYW1ldGVyc1N0YXJ0LCBib29sIGlzSW5T
dHJpY3RDb250ZXh0LCAKLSAgICBDb25zdHJ1Y3RvcktpbmQgY29uc3RydWN0b3JLaW5kLCBTdXBl
ckJpbmRpbmcgc3VwZXJCaW5kaW5nLCB1bnNpZ25lZCBwYXJhbWV0ZXJDb3VudCwgU291cmNlUGFy
c2VNb2RlIG1vZGUsIGJvb2wgaXNBcnJvd0Z1bmN0aW9uQm9keUV4cHJlc3Npb24pCisgICAgQ29u
c3RydWN0b3JLaW5kIGNvbnN0cnVjdG9yS2luZCwgU3VwZXJCaW5kaW5nIHN1cGVyQmluZGluZywg
dW5zaWduZWQgcGFyYW1ldGVyQ291bnQsIHVuc2lnbmVkIG5vbkRlZmF1bHRQYXJhbWV0ZXJDb3Vu
dCwgU291cmNlUGFyc2VNb2RlIG1vZGUsIGJvb2wgaXNBcnJvd0Z1bmN0aW9uQm9keUV4cHJlc3Np
b24pCiAgICAgICAgIDogTm9kZShlbmRMb2NhdGlvbikKICAgICAgICAgLCBtX3N0YXJ0Q29sdW1u
KHN0YXJ0Q29sdW1uKQogICAgICAgICAsIG1fZW5kQ29sdW1uKGVuZENvbHVtbikKQEAgLTE0NCw2
ICsxNDQsNyBAQCBGdW5jdGlvbk1ldGFkYXRhTm9kZTo6RnVuY3Rpb25NZXRhZGF0YU5vZGUoCiAg
ICAgICAgICwgbV9wYXJhbWV0ZXJzU3RhcnQocGFyYW1ldGVyc1N0YXJ0KQogICAgICAgICAsIG1f
c3RhcnRTdGFydE9mZnNldChzdGFydExvY2F0aW9uLnN0YXJ0T2Zmc2V0KQogICAgICAgICAsIG1f
cGFyYW1ldGVyQ291bnQocGFyYW1ldGVyQ291bnQpCisgICAgICAgICwgbV9ub25EZWZhdWx0UGFy
YW1ldGVyQ291bnQobm9uRGVmYXVsdFBhcmFtZXRlckNvdW50KQogICAgICAgICAsIG1fcGFyc2VN
b2RlKG1vZGUpCiAgICAgICAgICwgbV9pc0luU3RyaWN0Q29udGV4dChpc0luU3RyaWN0Q29udGV4
dCkKICAgICAgICAgLCBtX3N1cGVyQmluZGluZyhzdGF0aWNfY2FzdDx1bnNpZ25lZD4oc3VwZXJC
aW5kaW5nKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvTm9kZXMu
aCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvTm9kZXMuaAppbmRleCA2MWYyYWMzLi40
MmFhNjAzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL05vZGVzLmgK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Ob2Rlcy5oCkBAIC0xODU5LDcgKzE4
NTksOCBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAgICAgICAgIFBhcnNlckFyZW5hJiwgY29uc3Qg
SlNUb2tlbkxvY2F0aW9uJiBzdGFydCwgY29uc3QgSlNUb2tlbkxvY2F0aW9uJiBlbmQsIAogICAg
ICAgICAgICAgdW5zaWduZWQgc3RhcnRDb2x1bW4sIHVuc2lnbmVkIGVuZENvbHVtbiwgaW50IGZ1
bmN0aW9uS2V5d29yZFN0YXJ0LCAKICAgICAgICAgICAgIGludCBmdW5jdGlvbk5hbWVTdGFydCwg
aW50IHBhcmFtZXRlcnNTdGFydCwgYm9vbCBpc0luU3RyaWN0Q29udGV4dCwgCi0gICAgICAgICAg
ICBDb25zdHJ1Y3RvcktpbmQsIFN1cGVyQmluZGluZywgdW5zaWduZWQsIFNvdXJjZVBhcnNlTW9k
ZSwgYm9vbCBpc0Fycm93RnVuY3Rpb25Cb2R5RXhwcmVzc2lvbik7CisgICAgICAgICAgICBDb25z
dHJ1Y3RvcktpbmQsIFN1cGVyQmluZGluZywgdW5zaWduZWQgcGFyYW1ldGVyQ291bnQsIHVuc2ln
bmVkIG5vbkRlZmF1bHRQYXJhbWV0ZXJDb3VudCwKKyAgICAgICAgICAgIFNvdXJjZVBhcnNlTW9k
ZSwgYm9vbCBpc0Fycm93RnVuY3Rpb25Cb2R5RXhwcmVzc2lvbik7CiAKICAgICAgICAgdm9pZCBm
aW5pc2hQYXJzaW5nKGNvbnN0IFNvdXJjZUNvZGUmLCBjb25zdCBJZGVudGlmaWVyJiwgRnVuY3Rp
b25Nb2RlKTsKICAgICAgICAgCkBAIC0xODc4LDYgKzE4NzksNyBAQCBuYW1lc3BhY2UgSlNDIHsK
ICAgICAgICAgdW5zaWduZWQgc3RhcnRDb2x1bW4oKSBjb25zdCB7IHJldHVybiBtX3N0YXJ0Q29s
dW1uOyB9CiAgICAgICAgIHVuc2lnbmVkIGVuZENvbHVtbigpIGNvbnN0IHsgcmV0dXJuIG1fZW5k
Q29sdW1uOyB9CiAgICAgICAgIHVuc2lnbmVkIHBhcmFtZXRlckNvdW50KCkgY29uc3QgeyByZXR1
cm4gbV9wYXJhbWV0ZXJDb3VudDsgfQorICAgICAgICB1bnNpZ25lZCBub25EZWZhdWx0UGFyYW1l
dGVyQ291bnQoKSBjb25zdCB7IHJldHVybiBtX25vbkRlZmF1bHRQYXJhbWV0ZXJDb3VudDsgfQog
ICAgICAgICBTb3VyY2VQYXJzZU1vZGUgcGFyc2VNb2RlKCkgY29uc3QgeyByZXR1cm4gbV9wYXJz
ZU1vZGU7IH0KIAogICAgICAgICB2b2lkIHNldEVuZFBvc2l0aW9uKEpTVGV4dFBvc2l0aW9uKTsK
QEAgLTE5MTQsNiArMTkxNiw3IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICBTb3VyY2VDb2Rl
IG1fY2xhc3NTb3VyY2U7CiAgICAgICAgIGludCBtX3N0YXJ0U3RhcnRPZmZzZXQ7CiAgICAgICAg
IHVuc2lnbmVkIG1fcGFyYW1ldGVyQ291bnQ7CisgICAgICAgIHVuc2lnbmVkIG1fbm9uRGVmYXVs
dFBhcmFtZXRlckNvdW50OwogICAgICAgICBpbnQgbV9sYXN0TGluZTsKICAgICAgICAgU291cmNl
UGFyc2VNb2RlIG1fcGFyc2VNb2RlOwogICAgICAgICB1bnNpZ25lZCBtX2lzSW5TdHJpY3RDb250
ZXh0IDogMTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2Vy
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyLmNwcAppbmRleCBiYTc4
MTczLi4wZjE5YTk4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1Bh
cnNlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9QYXJzZXIuY3BwCkBA
IC0zNzgsNyArMzc4LDggQEAgYm9vbCBQYXJzZXI8TGV4ZXJUeXBlPjo6aXNBcnJvd0Z1bmN0aW9u
UGFyYW1ldGVycygpCiAgICAgICAgICAgICBmYWtlU2NvcGUtPnNldFNvdXJjZVBhcnNlTW9kZShT
b3VyY2VQYXJzZU1vZGU6OkFycm93RnVuY3Rpb25Nb2RlKTsKIAogICAgICAgICAgICAgdW5zaWdu
ZWQgcGFyYW1ldGVyc0NvdW50ID0gMDsKLSAgICAgICAgICAgIGlzQXJyb3dGdW5jdGlvbiA9IHBh
cnNlRm9ybWFsUGFyYW1ldGVycyhzeW50YXhDaGVja2VyLCBzeW50YXhDaGVja2VyLmNyZWF0ZUZv
cm1hbFBhcmFtZXRlckxpc3QoKSwgcGFyYW1ldGVyc0NvdW50KSAmJiBjb25zdW1lKENMT1NFUEFS
RU4pICYmIG1hdGNoKEFSUk9XRlVOQ1RJT04pOworICAgICAgICAgICAgdW5zaWduZWQgbm9uRGVm
YXVsdFBhcmFtZXRlckNvdW50ID0gMDsKKyAgICAgICAgICAgIGlzQXJyb3dGdW5jdGlvbiA9IHBh
cnNlRm9ybWFsUGFyYW1ldGVycyhzeW50YXhDaGVja2VyLCBzeW50YXhDaGVja2VyLmNyZWF0ZUZv
cm1hbFBhcmFtZXRlckxpc3QoKSwgcGFyYW1ldGVyc0NvdW50LCBub25EZWZhdWx0UGFyYW1ldGVy
Q291bnQpICYmIGNvbnN1bWUoQ0xPU0VQQVJFTikgJiYgbWF0Y2goQVJST1dGVU5DVElPTik7CiAg
ICAgICAgICAgICAgICAgCiAgICAgICAgICAgICBwb3BTY29wZShmYWtlU2NvcGUsIHN5bnRheENo
ZWNrZXIuTmVlZHNGcmVlVmFyaWFibGVJbmZvKTsKICAgICAgICAgfQpAQCAtNTI1LDcgKzUyNiw3
IEBAIHRlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4gVHJlZVNvdXJjZUVsZW1lbnRzIFBhcnNl
cjxMZXhlclR5cGU+OjpwYXJzZUdlbmVyYXRvCiAgICAgICAgIGZhaWxJZkZhbHNlKHBhcnNlU291
cmNlRWxlbWVudHMoZ2VuZXJhdG9yRnVuY3Rpb25Db250ZXh0LCBtb2RlKSwgIkNhbm5vdCBwYXJz
ZSB0aGUgYm9keSBvZiBhIGdlbmVyYXRvciIpOwogICAgICAgICBwb3BTY29wZShnZW5lcmF0b3JC
b2R5U2NvcGUsIFRyZWVCdWlsZGVyOjpOZWVkc0ZyZWVWYXJpYWJsZUluZm8pOwogICAgIH0KLSAg
ICBpbmZvLmJvZHkgPSBjb250ZXh0LmNyZWF0ZUZ1bmN0aW9uTWV0YWRhdGEoc3RhcnRMb2NhdGlv
biwgdG9rZW5Mb2NhdGlvbigpLCBzdGFydENvbHVtbiwgdG9rZW5Db2x1bW4oKSwgZnVuY3Rpb25L
ZXl3b3JkU3RhcnQsIGZ1bmN0aW9uTmFtZVN0YXJ0LCBwYXJhbWV0ZXJzU3RhcnQsIHN0cmljdE1v
ZGUoKSwgQ29uc3RydWN0b3JLaW5kOjpOb25lLCBtX3N1cGVyQmluZGluZywgaW5mby5wYXJhbWV0
ZXJDb3VudCwgU291cmNlUGFyc2VNb2RlOjpHZW5lcmF0b3JCb2R5TW9kZSwgZmFsc2UpOworICAg
IGluZm8uYm9keSA9IGNvbnRleHQuY3JlYXRlRnVuY3Rpb25NZXRhZGF0YShzdGFydExvY2F0aW9u
LCB0b2tlbkxvY2F0aW9uKCksIHN0YXJ0Q29sdW1uLCB0b2tlbkNvbHVtbigpLCBmdW5jdGlvbktl
eXdvcmRTdGFydCwgZnVuY3Rpb25OYW1lU3RhcnQsIHBhcmFtZXRlcnNTdGFydCwgc3RyaWN0TW9k
ZSgpLCBDb25zdHJ1Y3RvcktpbmQ6Ok5vbmUsIG1fc3VwZXJCaW5kaW5nLCBpbmZvLnBhcmFtZXRl
ckNvdW50LCBpbmZvLm5vbkRlZmF1bHRQYXJhbWV0ZXJDb3VudCwgU291cmNlUGFyc2VNb2RlOjpH
ZW5lcmF0b3JCb2R5TW9kZSwgZmFsc2UpOwogCiAgICAgaW5mby5lbmRMaW5lID0gdG9rZW5MaW5l
KCk7CiAgICAgaW5mby5lbmRPZmZzZXQgPSBtX3Rva2VuLm1fZGF0YS5vZmZzZXQ7CkBAIC0xNzQz
LDcgKzE3NDQsNyBAQCB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXI+IFRyZWVTdGF0ZW1lbnQg
UGFyc2VyPExleGVyVHlwZT46OnBhcnNlU3RhdGVtZW50KFRyZQogfQogCiB0ZW1wbGF0ZSA8dHlw
ZW5hbWUgTGV4ZXJUeXBlPgotdGVtcGxhdGUgPGNsYXNzIFRyZWVCdWlsZGVyPiBib29sIFBhcnNl
cjxMZXhlclR5cGU+OjpwYXJzZUZvcm1hbFBhcmFtZXRlcnMoVHJlZUJ1aWxkZXImIGNvbnRleHQs
IFRyZWVGb3JtYWxQYXJhbWV0ZXJMaXN0IGxpc3QsIHVuc2lnbmVkJiBwYXJhbWV0ZXJDb3VudCkK
K3RlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4gYm9vbCBQYXJzZXI8TGV4ZXJUeXBlPjo6cGFy
c2VGb3JtYWxQYXJhbWV0ZXJzKFRyZWVCdWlsZGVyJiBjb250ZXh0LCBUcmVlRm9ybWFsUGFyYW1l
dGVyTGlzdCBsaXN0LCB1bnNpZ25lZCYgcGFyYW1ldGVyQ291bnQsIHVuc2lnbmVkJiBub25EZWZh
dWx0UGFyYW1ldGVyQ291bnQpCiB7CiAjZGVmaW5lIGZhaWxJZkR1cGxpY2F0ZUlmVmlvbGF0aW9u
KCkgXAogICAgIGlmIChkdXBsaWNhdGVQYXJhbWV0ZXIpIHtcCkBAIC0xNzgzLDggKzE3ODQsMTEg
QEAgdGVtcGxhdGUgPGNsYXNzIFRyZWVCdWlsZGVyPiBib29sIFBhcnNlcjxMZXhlclR5cGU+Ojpw
YXJzZUZvcm1hbFBhcmFtZXRlcnMoVHJlZUIKICAgICAgICAgaWYgKGlzUmVzdFBhcmFtZXRlciB8
fCBkZWZhdWx0VmFsdWUgfHwgaGFzRGVzdHJ1Y3R1cmluZ1BhdHRlcm4pCiAgICAgICAgICAgICBj
dXJyZW50U2NvcGUoKS0+c2V0SGFzTm9uU2ltcGxlUGFyYW1ldGVyTGlzdCgpOwogICAgICAgICBj
b250ZXh0LmFwcGVuZFBhcmFtZXRlcihsaXN0LCBwYXJhbWV0ZXIsIGRlZmF1bHRWYWx1ZSk7Ci0g
ICAgICAgIGlmICghaXNSZXN0UGFyYW1ldGVyKQorICAgICAgICBpZiAoIWlzUmVzdFBhcmFtZXRl
cikgewogICAgICAgICAgICAgcGFyYW1ldGVyQ291bnQrKzsKKyAgICAgICAgICAgIGlmICghaGFz
RGVmYXVsdFBhcmFtZXRlclZhbHVlcykKKyAgICAgICAgICAgICAgICBub25EZWZhdWx0UGFyYW1l
dGVyQ291bnQrKzsKKyAgICAgICAgfQogICAgIH0gd2hpbGUgKCFpc1Jlc3RQYXJhbWV0ZXIgJiYg
Y29uc3VtZShDT01NQSkpOwogCiAgICAgcmV0dXJuIHRydWU7CkBAIC0xNzkzLDE1ICsxNzk3LDE1
IEBAIHRlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4gYm9vbCBQYXJzZXI8TGV4ZXJUeXBlPjo6
cGFyc2VGb3JtYWxQYXJhbWV0ZXJzKFRyZWVCCiAKIHRlbXBsYXRlIDx0eXBlbmFtZSBMZXhlclR5
cGU+CiB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXI+IFRyZWVGdW5jdGlvbkJvZHkgUGFyc2Vy
PExleGVyVHlwZT46OnBhcnNlRnVuY3Rpb25Cb2R5KAotICAgIFRyZWVCdWlsZGVyJiBjb250ZXh0
LCBTeW50YXhDaGVja2VyJiBzeW50YXhDaGVja2VyLCBjb25zdCBKU1Rva2VuTG9jYXRpb24mIHN0
YXJ0TG9jYXRpb24sIGludCBzdGFydENvbHVtbiwgaW50IGZ1bmN0aW9uS2V5d29yZFN0YXJ0LCBp
bnQgZnVuY3Rpb25OYW1lU3RhcnQsIGludCBwYXJhbWV0ZXJzU3RhcnQsIAotICAgIENvbnN0cnVj
dG9yS2luZCBjb25zdHJ1Y3RvcktpbmQsIFN1cGVyQmluZGluZyBzdXBlckJpbmRpbmcsIEZ1bmN0
aW9uQm9keVR5cGUgYm9keVR5cGUsIHVuc2lnbmVkIHBhcmFtZXRlckNvdW50LCBTb3VyY2VQYXJz
ZU1vZGUgcGFyc2VNb2RlKQorICAgIFRyZWVCdWlsZGVyJiBjb250ZXh0LCBTeW50YXhDaGVja2Vy
JiBzeW50YXhDaGVja2VyLCBjb25zdCBKU1Rva2VuTG9jYXRpb24mIHN0YXJ0TG9jYXRpb24sIGlu
dCBzdGFydENvbHVtbiwgaW50IGZ1bmN0aW9uS2V5d29yZFN0YXJ0LCBpbnQgZnVuY3Rpb25OYW1l
U3RhcnQsIGludCBwYXJhbWV0ZXJzU3RhcnQsCisgICAgQ29uc3RydWN0b3JLaW5kIGNvbnN0cnVj
dG9yS2luZCwgU3VwZXJCaW5kaW5nIHN1cGVyQmluZGluZywgRnVuY3Rpb25Cb2R5VHlwZSBib2R5
VHlwZSwgdW5zaWduZWQgcGFyYW1ldGVyQ291bnQsIHVuc2lnbmVkIG5vbkRlZmF1bHRQYXJhbWV0
ZXJDb3VudCwgU291cmNlUGFyc2VNb2RlIHBhcnNlTW9kZSkKIHsKICAgICBib29sIGlzQXJyb3dG
dW5jdGlvbkJvZHlFeHByZXNzaW9uID0gYm9keVR5cGUgPT0gQXJyb3dGdW5jdGlvbkJvZHlFeHBy
ZXNzaW9uOwogICAgIGlmICghaXNBcnJvd0Z1bmN0aW9uQm9keUV4cHJlc3Npb24pIHsKICAgICAg
ICAgbmV4dCgpOwogICAgICAgICBpZiAobWF0Y2goQ0xPU0VCUkFDRSkpIHsKICAgICAgICAgICAg
IHVuc2lnbmVkIGVuZENvbHVtbiA9IHRva2VuQ29sdW1uKCk7Ci0gICAgICAgICAgICByZXR1cm4g
Y29udGV4dC5jcmVhdGVGdW5jdGlvbk1ldGFkYXRhKHN0YXJ0TG9jYXRpb24sIHRva2VuTG9jYXRp
b24oKSwgc3RhcnRDb2x1bW4sIGVuZENvbHVtbiwgZnVuY3Rpb25LZXl3b3JkU3RhcnQsIGZ1bmN0
aW9uTmFtZVN0YXJ0LCBwYXJhbWV0ZXJzU3RhcnQsIHN0cmljdE1vZGUoKSwgY29uc3RydWN0b3JL
aW5kLCBzdXBlckJpbmRpbmcsIHBhcmFtZXRlckNvdW50LCBwYXJzZU1vZGUsIGlzQXJyb3dGdW5j
dGlvbkJvZHlFeHByZXNzaW9uKTsKKyAgICAgICAgICAgIHJldHVybiBjb250ZXh0LmNyZWF0ZUZ1
bmN0aW9uTWV0YWRhdGEoc3RhcnRMb2NhdGlvbiwgdG9rZW5Mb2NhdGlvbigpLCBzdGFydENvbHVt
biwgZW5kQ29sdW1uLCBmdW5jdGlvbktleXdvcmRTdGFydCwgZnVuY3Rpb25OYW1lU3RhcnQsIHBh
cmFtZXRlcnNTdGFydCwgc3RyaWN0TW9kZSgpLCBjb25zdHJ1Y3RvcktpbmQsIHN1cGVyQmluZGlu
ZywgcGFyYW1ldGVyQ291bnQsIG5vbkRlZmF1bHRQYXJhbWV0ZXJDb3VudCwgcGFyc2VNb2RlLCBp
c0Fycm93RnVuY3Rpb25Cb2R5RXhwcmVzc2lvbik7CiAgICAgICAgIH0KICAgICB9CiAKQEAgLTE4
MTIsNyArMTgxNiw3IEBAIHRlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4gVHJlZUZ1bmN0aW9u
Qm9keSBQYXJzZXI8TGV4ZXJUeXBlPjo6cGFyc2VGdW5jdGlvbkJvCiAgICAgZWxzZQogICAgICAg
ICBmYWlsSWZGYWxzZShwYXJzZVNvdXJjZUVsZW1lbnRzKHN5bnRheENoZWNrZXIsIENoZWNrRm9y
U3RyaWN0TW9kZSksIGJvZHlUeXBlID09IFN0YW5kYXJkRnVuY3Rpb25Cb2R5QmxvY2sgPyAiQ2Fu
bm90IHBhcnNlIGJvZHkgb2YgdGhpcyBmdW5jdGlvbiIgOiAiQ2Fubm90IHBhcnNlIGJvZHkgb2Yg
dGhpcyBhcnJvdyBmdW5jdGlvbiIpOwogICAgIHVuc2lnbmVkIGVuZENvbHVtbiA9IHRva2VuQ29s
dW1uKCk7Ci0gICAgcmV0dXJuIGNvbnRleHQuY3JlYXRlRnVuY3Rpb25NZXRhZGF0YShzdGFydExv
Y2F0aW9uLCB0b2tlbkxvY2F0aW9uKCksIHN0YXJ0Q29sdW1uLCBlbmRDb2x1bW4sIGZ1bmN0aW9u
S2V5d29yZFN0YXJ0LCBmdW5jdGlvbk5hbWVTdGFydCwgcGFyYW1ldGVyc1N0YXJ0LCBzdHJpY3RN
b2RlKCksIGNvbnN0cnVjdG9yS2luZCwgc3VwZXJCaW5kaW5nLCBwYXJhbWV0ZXJDb3VudCwgcGFy
c2VNb2RlLCBpc0Fycm93RnVuY3Rpb25Cb2R5RXhwcmVzc2lvbik7CisgICAgcmV0dXJuIGNvbnRl
eHQuY3JlYXRlRnVuY3Rpb25NZXRhZGF0YShzdGFydExvY2F0aW9uLCB0b2tlbkxvY2F0aW9uKCks
IHN0YXJ0Q29sdW1uLCBlbmRDb2x1bW4sIGZ1bmN0aW9uS2V5d29yZFN0YXJ0LCBmdW5jdGlvbk5h
bWVTdGFydCwgcGFyYW1ldGVyc1N0YXJ0LCBzdHJpY3RNb2RlKCksIGNvbnN0cnVjdG9yS2luZCwg
c3VwZXJCaW5kaW5nLCBwYXJhbWV0ZXJDb3VudCwgbm9uRGVmYXVsdFBhcmFtZXRlckNvdW50LCBw
YXJzZU1vZGUsIGlzQXJyb3dGdW5jdGlvbkJvZHlFeHByZXNzaW9uKTsKIH0KIAogc3RhdGljIGNv
bnN0IGNoYXIqIHN0cmluZ0ZvckZ1bmN0aW9uTW9kZShTb3VyY2VQYXJzZU1vZGUgbW9kZSkKQEAg
LTE4NTYsMTQgKzE4NjAsMTYgQEAgdGVtcGxhdGUgPHR5cGVuYW1lIExleGVyVHlwZT4gdGVtcGxh
dGUgPGNsYXNzIFRyZWVCdWlsZGVyLCBjbGFzcyBGdW5jdGlvbkluZm9UeXAKICAgICAgICAgICAg
IGlmIChtYXRjaChPUEVOUEFSRU4pKSB7CiAgICAgICAgICAgICAgICAgbmV4dCgpOwogICAgICAg
ICAgICAgICAgIAotICAgICAgICAgICAgICAgIGlmIChtYXRjaChDTE9TRVBBUkVOKSkKKyAgICAg
ICAgICAgICAgICBpZiAobWF0Y2goQ0xPU0VQQVJFTikpIHsKICAgICAgICAgICAgICAgICAgICAg
ZnVuY3Rpb25JbmZvLnBhcmFtZXRlckNvdW50ID0gMDsKLSAgICAgICAgICAgICAgICBlbHNlCi0g
ICAgICAgICAgICAgICAgICAgIGZhaWxJZkZhbHNlKHBhcnNlRm9ybWFsUGFyYW1ldGVycyhjb250
ZXh0LCBwYXJhbWV0ZXJMaXN0LCBmdW5jdGlvbkluZm8ucGFyYW1ldGVyQ291bnQpLCAiQ2Fubm90
IHBhcnNlIHBhcmFtZXRlcnMgZm9yIHRoaXMgIiwgc3RyaW5nRm9yRnVuY3Rpb25Nb2RlKG1vZGUp
KTsKKyAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb25JbmZvLm5vbkRlZmF1bHRQYXJhbWV0ZXJD
b3VudCA9IDA7CisgICAgICAgICAgICAgICAgfSBlbHNlCisgICAgICAgICAgICAgICAgICAgIGZh
aWxJZkZhbHNlKHBhcnNlRm9ybWFsUGFyYW1ldGVycyhjb250ZXh0LCBwYXJhbWV0ZXJMaXN0LCBm
dW5jdGlvbkluZm8ucGFyYW1ldGVyQ291bnQsIGZ1bmN0aW9uSW5mby5ub25EZWZhdWx0UGFyYW1l
dGVyQ291bnQpLCAiQ2Fubm90IHBhcnNlIHBhcmFtZXRlcnMgZm9yIHRoaXMgIiwgc3RyaW5nRm9y
RnVuY3Rpb25Nb2RlKG1vZGUpKTsKICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICBj
b25zdW1lT3JGYWlsKENMT1NFUEFSRU4sICJFeHBlY3RlZCBhICcpJyBvciBhICcsJyBhZnRlciBh
IHBhcmFtZXRlciBkZWNsYXJhdGlvbiIpOwogICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAg
ICAgICAgICBmdW5jdGlvbkluZm8ucGFyYW1ldGVyQ291bnQgPSAxOworICAgICAgICAgICAgICAg
IGZ1bmN0aW9uSW5mby5ub25EZWZhdWx0UGFyYW1ldGVyQ291bnQgPSAxOwogICAgICAgICAgICAg
ICAgIGF1dG8gcGFyYW1ldGVyID0gcGFyc2VEZXN0cnVjdHVyaW5nUGF0dGVybihjb250ZXh0LCBE
ZXN0cnVjdHVyaW5nS2luZDo6RGVzdHJ1Y3R1cmVUb1BhcmFtZXRlcnMsIEV4cG9ydFR5cGU6Ok5v
dEV4cG9ydGVkKTsKICAgICAgICAgICAgICAgICBmYWlsSWZGYWxzZShwYXJhbWV0ZXIsICJDYW5u
b3QgcGFyc2UgcGFyYW1ldGVyIHBhdHRlcm4iKTsKICAgICAgICAgICAgICAgICBjb250ZXh0LmFw
cGVuZFBhcmFtZXRlcihwYXJhbWV0ZXJMaXN0LCBwYXJhbWV0ZXIsIDApOwpAQCAtMTg4MSw2ICsx
ODg3LDcgQEAgdGVtcGxhdGUgPHR5cGVuYW1lIExleGVyVHlwZT4gdGVtcGxhdGUgPGNsYXNzIFRy
ZWVCdWlsZGVyLCBjbGFzcyBGdW5jdGlvbkluZm9UeXAKICAgICBpZiAobW9kZSA9PSBTb3VyY2VQ
YXJzZU1vZGU6OkdldHRlck1vZGUpIHsKICAgICAgICAgY29uc3VtZU9yRmFpbChDTE9TRVBBUkVO
LCAiZ2V0dGVyIGZ1bmN0aW9ucyBtdXN0IGhhdmUgbm8gcGFyYW1ldGVycyIpOwogICAgICAgICBm
dW5jdGlvbkluZm8ucGFyYW1ldGVyQ291bnQgPSAwOworICAgICAgICBmdW5jdGlvbkluZm8ubm9u
RGVmYXVsdFBhcmFtZXRlckNvdW50ID0gMDsKICAgICB9IGVsc2UgaWYgKG1vZGUgPT0gU291cmNl
UGFyc2VNb2RlOjpTZXR0ZXJNb2RlKSB7CiAgICAgICAgIGZhaWxJZlRydWUobWF0Y2goQ0xPU0VQ
QVJFTiksICJzZXR0ZXIgZnVuY3Rpb25zIG11c3QgaGF2ZSBvbmUgcGFyYW1ldGVyIik7CiAgICAg
ICAgIGNvbnN0IElkZW50aWZpZXIqIGR1cGxpY2F0ZVBhcmFtZXRlciA9IG51bGxwdHI7CkBAIC0x
ODkxLDEzICsxODk4LDE1IEBAIHRlbXBsYXRlIDx0eXBlbmFtZSBMZXhlclR5cGU+IHRlbXBsYXRl
IDxjbGFzcyBUcmVlQnVpbGRlciwgY2xhc3MgRnVuY3Rpb25JbmZvVHlwCiAgICAgICAgIHNlbWFu
dGljRmFpbElmVHJ1ZShkdXBsaWNhdGVQYXJhbWV0ZXIgJiYgZGVmYXVsdFZhbHVlLCAiRHVwbGlj
YXRlIHBhcmFtZXRlciAnIiwgZHVwbGljYXRlUGFyYW1ldGVyLT5pbXBsKCksICInIG5vdCBhbGxv
d2VkIGluIGZ1bmN0aW9uIHdpdGggZGVmYXVsdCBwYXJhbWV0ZXIgdmFsdWVzIik7CiAgICAgICAg
IGNvbnRleHQuYXBwZW5kUGFyYW1ldGVyKHBhcmFtZXRlckxpc3QsIHBhcmFtZXRlciwgZGVmYXVs
dFZhbHVlKTsKICAgICAgICAgZnVuY3Rpb25JbmZvLnBhcmFtZXRlckNvdW50ID0gMTsKKyAgICAg
ICAgZnVuY3Rpb25JbmZvLm5vbkRlZmF1bHRQYXJhbWV0ZXJDb3VudCA9IGRlZmF1bHRWYWx1ZSA/
IDAgOiAxOwogICAgICAgICBmYWlsSWZUcnVlKG1hdGNoKENPTU1BKSwgInNldHRlciBmdW5jdGlv
bnMgbXVzdCBoYXZlIG9uZSBwYXJhbWV0ZXIiKTsKICAgICAgICAgY29uc3VtZU9yRmFpbChDTE9T
RVBBUkVOLCAiRXhwZWN0ZWQgYSAnKScgYWZ0ZXIgYSBwYXJhbWV0ZXIgZGVjbGFyYXRpb24iKTsK
ICAgICB9IGVsc2UgewotICAgICAgICBpZiAobWF0Y2goQ0xPU0VQQVJFTikpCisgICAgICAgIGlm
IChtYXRjaChDTE9TRVBBUkVOKSkgewogICAgICAgICAgICAgZnVuY3Rpb25JbmZvLnBhcmFtZXRl
ckNvdW50ID0gMDsKLSAgICAgICAgZWxzZQotICAgICAgICAgICAgZmFpbElmRmFsc2UocGFyc2VG
b3JtYWxQYXJhbWV0ZXJzKGNvbnRleHQsIHBhcmFtZXRlckxpc3QsIGZ1bmN0aW9uSW5mby5wYXJh
bWV0ZXJDb3VudCksICJDYW5ub3QgcGFyc2UgcGFyYW1ldGVycyBmb3IgdGhpcyAiLCBzdHJpbmdG
b3JGdW5jdGlvbk1vZGUobW9kZSkpOworICAgICAgICAgICAgZnVuY3Rpb25JbmZvLm5vbkRlZmF1
bHRQYXJhbWV0ZXJDb3VudCA9IDA7CisgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgZmFpbElm
RmFsc2UocGFyc2VGb3JtYWxQYXJhbWV0ZXJzKGNvbnRleHQsIHBhcmFtZXRlckxpc3QsIGZ1bmN0
aW9uSW5mby5wYXJhbWV0ZXJDb3VudCwgZnVuY3Rpb25JbmZvLm5vbkRlZmF1bHRQYXJhbWV0ZXJD
b3VudCksICJDYW5ub3QgcGFyc2UgcGFyYW1ldGVycyBmb3IgdGhpcyAiLCBzdHJpbmdGb3JGdW5j
dGlvbk1vZGUobW9kZSkpOwogICAgICAgICBjb25zdW1lT3JGYWlsKENMT1NFUEFSRU4sICJFeHBl
Y3RlZCBhICcpJyBvciBhICcsJyBhZnRlciBhIHBhcmFtZXRlciBkZWNsYXJhdGlvbiIpOwogICAg
IH0KIApAQCAtMTk5MCw5ICsxOTk5LDEyIEBAIHRlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4g
Ym9vbCBQYXJzZXI8TGV4ZXJUeXBlPjo6cGFyc2VGdW5jdGlvbkluZm8oVHJlZUJ1aWxkCiAgICAg
ICAgICAgICBmdW5jdGlvbkluZm8uYm9keSA9IGNvbnRleHQuY3JlYXRlRnVuY3Rpb25NZXRhZGF0
YSgKICAgICAgICAgICAgICAgICBzdGFydExvY2F0aW9uLCBlbmRMb2NhdGlvbiwgc3RhcnRDb2x1
bW4sIGJvZHlFbmRDb2x1bW4sIAogICAgICAgICAgICAgICAgIGZ1bmN0aW9uS2V5d29yZFN0YXJ0
LCBmdW5jdGlvbk5hbWVTdGFydCwgcGFyYW1ldGVyc1N0YXJ0LCAKLSAgICAgICAgICAgICAgICBj
YWNoZWRJbmZvLT5zdHJpY3RNb2RlLCBjb25zdHJ1Y3RvcktpbmQsIGV4cGVjdGVkU3VwZXJCaW5k
aW5nLCBjYWNoZWRJbmZvLT5wYXJhbWV0ZXJDb3VudCwgbW9kZSwgZnVuY3Rpb25Cb2R5VHlwZSA9
PSBBcnJvd0Z1bmN0aW9uQm9keUV4cHJlc3Npb24pOworICAgICAgICAgICAgICAgIGNhY2hlZElu
Zm8tPnN0cmljdE1vZGUsIGNvbnN0cnVjdG9yS2luZCwgZXhwZWN0ZWRTdXBlckJpbmRpbmcsCisg
ICAgICAgICAgICAgICAgY2FjaGVkSW5mby0+cGFyYW1ldGVyQ291bnQsIGNhY2hlZEluZm8tPm5v
bkRlZmF1bHRQYXJhbWV0ZXJDb3VudCwKKyAgICAgICAgICAgICAgICBtb2RlLCBmdW5jdGlvbkJv
ZHlUeXBlID09IEFycm93RnVuY3Rpb25Cb2R5RXhwcmVzc2lvbik7CiAgICAgICAgICAgICBmdW5j
dGlvbkluZm8uZW5kT2Zmc2V0ID0gY2FjaGVkSW5mby0+ZW5kRnVuY3Rpb25PZmZzZXQ7CiAgICAg
ICAgICAgICBmdW5jdGlvbkluZm8ucGFyYW1ldGVyQ291bnQgPSBjYWNoZWRJbmZvLT5wYXJhbWV0
ZXJDb3VudDsKKyAgICAgICAgICAgIGZ1bmN0aW9uSW5mby5ub25EZWZhdWx0UGFyYW1ldGVyQ291
bnQgPSBjYWNoZWRJbmZvLT5ub25EZWZhdWx0UGFyYW1ldGVyQ291bnQ7CiAKICAgICAgICAgICAg
IGZ1bmN0aW9uU2NvcGUtPnJlc3RvcmVGcm9tU291cmNlUHJvdmlkZXJDYWNoZShjYWNoZWRJbmZv
KTsKICAgICAgICAgICAgIHBvcFNjb3BlKGZ1bmN0aW9uU2NvcGUsIFRyZWVCdWlsZGVyOjpOZWVk
c0ZyZWVWYXJpYWJsZUluZm8pOwpAQCAtMjE0OSw3ICsyMTYxLDcgQEAgdGVtcGxhdGUgPGNsYXNz
IFRyZWVCdWlsZGVyPiBib29sIFBhcnNlcjxMZXhlclR5cGU+OjpwYXJzZUZ1bmN0aW9uSW5mbyhU
cmVlQnVpbGQKICAgICB9KTsKIAogICAgIGF1dG8gcGVyZm9ybVBhcnNpbmdGdW5jdGlvbkJvZHkg
PSBbJl0gewotICAgICAgICByZXR1cm4gcGFyc2VGdW5jdGlvbkJvZHkoY29udGV4dCwgc3ludGF4
Q2hlY2tlciwgc3RhcnRMb2NhdGlvbiwgc3RhcnRDb2x1bW4sIGZ1bmN0aW9uS2V5d29yZFN0YXJ0
LCBmdW5jdGlvbk5hbWVTdGFydCwgcGFyYW1ldGVyc1N0YXJ0LCBjb25zdHJ1Y3RvcktpbmQsIGV4
cGVjdGVkU3VwZXJCaW5kaW5nLCBmdW5jdGlvbkJvZHlUeXBlLCBmdW5jdGlvbkluZm8ucGFyYW1l
dGVyQ291bnQsIG1vZGUpOworICAgICAgICByZXR1cm4gcGFyc2VGdW5jdGlvbkJvZHkoY29udGV4
dCwgc3ludGF4Q2hlY2tlciwgc3RhcnRMb2NhdGlvbiwgc3RhcnRDb2x1bW4sIGZ1bmN0aW9uS2V5
d29yZFN0YXJ0LCBmdW5jdGlvbk5hbWVTdGFydCwgcGFyYW1ldGVyc1N0YXJ0LCBjb25zdHJ1Y3Rv
cktpbmQsIGV4cGVjdGVkU3VwZXJCaW5kaW5nLCBmdW5jdGlvbkJvZHlUeXBlLCBmdW5jdGlvbklu
Zm8ucGFyYW1ldGVyQ291bnQsIGZ1bmN0aW9uSW5mby5ub25EZWZhdWx0UGFyYW1ldGVyQ291bnQs
IG1vZGUpOwogICAgIH07CiAKICAgICBpZiAobW9kZSA9PSBTb3VyY2VQYXJzZU1vZGU6OkdlbmVy
YXRvcldyYXBwZXJGdW5jdGlvbk1vZGUpIHsKQEAgLTIyMDIsNiArMjIxNCw3IEBAIHRlbXBsYXRl
IDxjbGFzcyBUcmVlQnVpbGRlcj4gYm9vbCBQYXJzZXI8TGV4ZXJUeXBlPjo6cGFyc2VGdW5jdGlv
bkluZm8oVHJlZUJ1aWxkCiAgICAgICAgIHBhcmFtZXRlcnMubGFzdFRva2VuRW5kT2Zmc2V0ID0g
bG9jYXRpb24uZW5kT2Zmc2V0OwogICAgICAgICBwYXJhbWV0ZXJzLmxhc3RUb2tlbkxpbmVTdGFy
dE9mZnNldCA9IGxvY2F0aW9uLmxpbmVTdGFydE9mZnNldDsKICAgICAgICAgcGFyYW1ldGVycy5w
YXJhbWV0ZXJDb3VudCA9IGZ1bmN0aW9uSW5mby5wYXJhbWV0ZXJDb3VudDsKKyAgICAgICAgcGFy
YW1ldGVycy5ub25EZWZhdWx0UGFyYW1ldGVyQ291bnQgPSBmdW5jdGlvbkluZm8ubm9uRGVmYXVs
dFBhcmFtZXRlckNvdW50OwogICAgICAgICBwYXJhbWV0ZXJzLmNvbnN0cnVjdG9yS2luZCA9IGNv
bnN0cnVjdG9yS2luZDsKICAgICAgICAgcGFyYW1ldGVycy5leHBlY3RlZFN1cGVyQmluZGluZyA9
IGV4cGVjdGVkU3VwZXJCaW5kaW5nOwogICAgICAgICBpZiAoZnVuY3Rpb25Cb2R5VHlwZSA9PSBB
cnJvd0Z1bmN0aW9uQm9keUV4cHJlc3Npb24pIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9wYXJzZXIvUGFyc2VyLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1Bh
cnNlci5oCmluZGV4IDM4ODMyNWYuLjI3MDM1ZjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9wYXJzZXIvUGFyc2VyLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNl
ci9QYXJzZXIuaApAQCAtMjAsOCArMjAsNyBAQAogICoKICAqLwogCi0jaWZuZGVmIFBhcnNlcl9o
Ci0jZGVmaW5lIFBhcnNlcl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgIkV4Y2VwdGlvbkhl
bHBlcnMuaCIKICNpbmNsdWRlICJFeGVjdXRhYmxlLmgiCkBAIC0xMzk3LDggKzEzOTYsOCBAQCBw
cml2YXRlOgogICAgIHRlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4gVHJlZVByb3BlcnR5IHBh
cnNlUHJvcGVydHkoVHJlZUJ1aWxkZXImLCBib29sIHN0cmljdCk7CiAgICAgdGVtcGxhdGUgPGNs
YXNzIFRyZWVCdWlsZGVyPiBUcmVlRXhwcmVzc2lvbiBwYXJzZVByb3BlcnR5TWV0aG9kKFRyZWVC
dWlsZGVyJiBjb250ZXh0LCBjb25zdCBJZGVudGlmaWVyKiBtZXRob2ROYW1lLCBib29sIGlzR2Vu
ZXJhdG9yKTsKICAgICB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXI+IFRyZWVQcm9wZXJ0eSBw
YXJzZUdldHRlclNldHRlcihUcmVlQnVpbGRlciYsIGJvb2wgc3RyaWN0LCBQcm9wZXJ0eU5vZGU6
OlR5cGUsIHVuc2lnbmVkIGdldHRlck9yU2V0dGVyU3RhcnRPZmZzZXQsIENvbnN0cnVjdG9yS2lu
ZCwgYm9vbCBpc0NsYXNzUHJvcGVydHkpOwotICAgIHRlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRl
cj4gQUxXQVlTX0lOTElORSBUcmVlRnVuY3Rpb25Cb2R5IHBhcnNlRnVuY3Rpb25Cb2R5KFRyZWVC
dWlsZGVyJiwgU3ludGF4Q2hlY2tlciYsIGNvbnN0IEpTVG9rZW5Mb2NhdGlvbiYsIGludCwgaW50
IGZ1bmN0aW9uS2V5d29yZFN0YXJ0LCBpbnQgZnVuY3Rpb25OYW1lU3RhcnQsIGludCBwYXJhbWV0
ZXJzU3RhcnQsIENvbnN0cnVjdG9yS2luZCwgU3VwZXJCaW5kaW5nLCBGdW5jdGlvbkJvZHlUeXBl
LCB1bnNpZ25lZCwgU291cmNlUGFyc2VNb2RlKTsKLSAgICB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1
aWxkZXI+IEFMV0FZU19JTkxJTkUgYm9vbCBwYXJzZUZvcm1hbFBhcmFtZXRlcnMoVHJlZUJ1aWxk
ZXImLCBUcmVlRm9ybWFsUGFyYW1ldGVyTGlzdCwgdW5zaWduZWQmKTsKKyAgICB0ZW1wbGF0ZSA8
Y2xhc3MgVHJlZUJ1aWxkZXI+IEFMV0FZU19JTkxJTkUgVHJlZUZ1bmN0aW9uQm9keSBwYXJzZUZ1
bmN0aW9uQm9keShUcmVlQnVpbGRlciYsIFN5bnRheENoZWNrZXImLCBjb25zdCBKU1Rva2VuTG9j
YXRpb24mLCBpbnQsIGludCBmdW5jdGlvbktleXdvcmRTdGFydCwgaW50IGZ1bmN0aW9uTmFtZVN0
YXJ0LCBpbnQgcGFyYW1ldGVyc1N0YXJ0LCBDb25zdHJ1Y3RvcktpbmQsIFN1cGVyQmluZGluZywg
RnVuY3Rpb25Cb2R5VHlwZSwgdW5zaWduZWQsIHVuc2lnbmVkLCBTb3VyY2VQYXJzZU1vZGUpOwor
ICAgIHRlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4gQUxXQVlTX0lOTElORSBib29sIHBhcnNl
Rm9ybWFsUGFyYW1ldGVycyhUcmVlQnVpbGRlciYsIFRyZWVGb3JtYWxQYXJhbWV0ZXJMaXN0LCB1
bnNpZ25lZCYsIHVuc2lnbmVkJik7CiAgICAgZW51bSBWYXJEZWNsYXJhdGlvbkxpc3RDb250ZXh0
IHsgRm9yTG9vcENvbnRleHQsIFZhckRlY2xhcmF0aW9uQ29udGV4dCB9OwogICAgIHRlbXBsYXRl
IDxjbGFzcyBUcmVlQnVpbGRlcj4gVHJlZUV4cHJlc3Npb24gcGFyc2VWYXJpYWJsZURlY2xhcmF0
aW9uTGlzdChUcmVlQnVpbGRlciYsIGludCYgZGVjbGFyYXRpb25zLCBUcmVlRGVzdHJ1Y3R1cmlu
Z1BhdHRlcm4mIGxhc3RQYXR0ZXJuLCBUcmVlRXhwcmVzc2lvbiYgbGFzdEluaXRpYWxpemVyLCBK
U1RleHRQb3NpdGlvbiYgaWRlbnRTdGFydCwgSlNUZXh0UG9zaXRpb24mIGluaXRTdGFydCwgSlNU
ZXh0UG9zaXRpb24mIGluaXRFbmQsIFZhckRlY2xhcmF0aW9uTGlzdENvbnRleHQsIERlY2xhcmF0
aW9uVHlwZSwgRXhwb3J0VHlwZSwgYm9vbCYgZm9yTG9vcENvbnN0RG9lc05vdEhhdmVJbml0aWFs
aXplcik7CiAgICAgdGVtcGxhdGUgPGNsYXNzIFRyZWVCdWlsZGVyPiBUcmVlU291cmNlRWxlbWVu
dHMgcGFyc2VBcnJvd0Z1bmN0aW9uU2luZ2xlRXhwcmVzc2lvbkJvZHlTb3VyY2VFbGVtZW50cyhU
cmVlQnVpbGRlciYpOwpAQCAtMTc0MSw0ICsxNzQwLDMgQEAgc3RkOjp1bmlxdWVfcHRyPFBhcnNl
ZE5vZGU+IHBhcnNlKAogfQogCiB9IC8vIG5hbWVzcGFjZQotI2VuZGlmCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNlckZ1bmN0aW9uSW5mby5oIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3BhcnNlci9QYXJzZXJGdW5jdGlvbkluZm8uaAppbmRleCA1MGZmNTM0
Li5mOTU0NjVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNl
ckZ1bmN0aW9uSW5mby5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2Vy
RnVuY3Rpb25JbmZvLmgKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFBhcnNlckZ1bmN0aW9uSW5mb19oCi0jZGVmaW5l
IFBhcnNlckZ1bmN0aW9uSW5mb19oCisjcHJhZ21hIG9uY2UKIAogbmFtZXNwYWNlIEpTQyB7CiAK
QEAgLTMzLDYgKzMyLDcgQEAgc3RydWN0IFBhcnNlckZ1bmN0aW9uSW5mbyB7CiAgICAgY29uc3Qg
SWRlbnRpZmllciogbmFtZSA9IDA7CiAgICAgdHlwZW5hbWUgVHJlZUJ1aWxkZXI6OkZ1bmN0aW9u
Qm9keSBib2R5ID0gMDsKICAgICB1bnNpZ25lZCBwYXJhbWV0ZXJDb3VudCA9IDA7CisgICAgdW5z
aWduZWQgbm9uRGVmYXVsdFBhcmFtZXRlckNvdW50ID0gMDsKICAgICB1bnNpZ25lZCBzdGFydE9m
ZnNldCA9IDA7CiAgICAgdW5zaWduZWQgZW5kT2Zmc2V0ID0gMDsKICAgICBpbnQgc3RhcnRMaW5l
ID0gMDsKQEAgLTUwLDUgKzUwLDMgQEAgc3RydWN0IFBhcnNlckNsYXNzSW5mbyB7CiB9OwogCiB9
Ci0KLSNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Tb3Vy
Y2VQcm92aWRlckNhY2hlSXRlbS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Tb3Vy
Y2VQcm92aWRlckNhY2hlSXRlbS5oCmluZGV4IDgxNTk0MzQuLmE3ZTQ3MzMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvU291cmNlUHJvdmlkZXJDYWNoZUl0ZW0uaAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1NvdXJjZVByb3ZpZGVyQ2FjaGVJdGVt
LmgKQEAgLTQxLDYgKzQxLDcgQEAgc3RydWN0IFNvdXJjZVByb3ZpZGVyQ2FjaGVJdGVtQ3JlYXRp
b25QYXJhbWV0ZXJzIHsKICAgICB1bnNpZ25lZCBsYXN0VG9rZW5MaW5lU3RhcnRPZmZzZXQ7CiAg
ICAgdW5zaWduZWQgZW5kRnVuY3Rpb25PZmZzZXQ7CiAgICAgdW5zaWduZWQgcGFyYW1ldGVyQ291
bnQ7CisgICAgdW5zaWduZWQgbm9uRGVmYXVsdFBhcmFtZXRlckNvdW50OwogICAgIGJvb2wgbmVl
ZHNGdWxsQWN0aXZhdGlvbjsKICAgICBib29sIHVzZXNFdmFsOwogICAgIGJvb2wgc3RyaWN0TW9k
ZTsKQEAgLTg4LDYgKzg5LDcgQEAgcHVibGljOgogICAgIHVuc2lnbmVkIGNvbnN0cnVjdG9yS2lu
ZCA6IDI7IC8vIENvbnN0cnVjdG9yS2luZAogICAgIHVuc2lnbmVkIHBhcmFtZXRlckNvdW50IDog
MzE7CiAgICAgdW5zaWduZWQgZXhwZWN0ZWRTdXBlckJpbmRpbmcgOiAxOyAvLyBTdXBlckJpbmRp
bmcKKyAgICB1bnNpZ25lZCBub25EZWZhdWx0UGFyYW1ldGVyQ291bnQ7CiAgICAgdW5zaWduZWQg
bGFzdFRva2VuTGluZVN0YXJ0T2Zmc2V0OwogICAgIHVuc2lnbmVkIHVzZWRWYXJpYWJsZXNDb3Vu
dDsKICAgICBJbm5lckFycm93RnVuY3Rpb25Db2RlRmVhdHVyZXMgaW5uZXJBcnJvd0Z1bmN0aW9u
RmVhdHVyZXM7CkBAIC0xMjgsNiArMTMwLDcgQEAgaW5saW5lIFNvdXJjZVByb3ZpZGVyQ2FjaGVJ
dGVtOjpTb3VyY2VQcm92aWRlckNhY2hlSXRlbShjb25zdCBTb3VyY2VQcm92aWRlckNhY2gKICAg
ICAsIGNvbnN0cnVjdG9yS2luZChzdGF0aWNfY2FzdDx1bnNpZ25lZD4ocGFyYW1ldGVycy5jb25z
dHJ1Y3RvcktpbmQpKQogICAgICwgcGFyYW1ldGVyQ291bnQocGFyYW1ldGVycy5wYXJhbWV0ZXJD
b3VudCkKICAgICAsIGV4cGVjdGVkU3VwZXJCaW5kaW5nKHN0YXRpY19jYXN0PHVuc2lnbmVkPihw
YXJhbWV0ZXJzLmV4cGVjdGVkU3VwZXJCaW5kaW5nKSkKKyAgICAsIG5vbkRlZmF1bHRQYXJhbWV0
ZXJDb3VudChwYXJhbWV0ZXJzLm5vbkRlZmF1bHRQYXJhbWV0ZXJDb3VudCkKICAgICAsIGxhc3RU
b2tlbkxpbmVTdGFydE9mZnNldChwYXJhbWV0ZXJzLmxhc3RUb2tlbkxpbmVTdGFydE9mZnNldCkK
ICAgICAsIHVzZWRWYXJpYWJsZXNDb3VudChwYXJhbWV0ZXJzLnVzZWRWYXJpYWJsZXMuc2l6ZSgp
KQogICAgICwgaW5uZXJBcnJvd0Z1bmN0aW9uRmVhdHVyZXMocGFyYW1ldGVycy5pbm5lckFycm93
RnVuY3Rpb25GZWF0dXJlcykKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJz
ZXIvU3ludGF4Q2hlY2tlci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9TeW50YXhD
aGVja2VyLmgKaW5kZXggMWMwZDE4ZS4uODA0YTA0NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3BhcnNlci9TeW50YXhDaGVja2VyLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3BhcnNlci9TeW50YXhDaGVja2VyLmgKQEAgLTE4NCw3ICsxODQsNyBAQCBwdWJsaWM6CiAg
ICAgRXhwcmVzc2lvblR5cGUgY3JlYXRlWWllbGQoY29uc3QgSlNUb2tlbkxvY2F0aW9uJiwgRXhw
cmVzc2lvblR5cGUsIGJvb2wsIGludCwgaW50LCBpbnQpIHsgcmV0dXJuIFlpZWxkRXhwcjsgfQog
ICAgIENsYXNzRXhwcmVzc2lvbiBjcmVhdGVDbGFzc0V4cHIoY29uc3QgSlNUb2tlbkxvY2F0aW9u
JiwgY29uc3QgUGFyc2VyQ2xhc3NJbmZvPFN5bnRheENoZWNrZXI+JiwgVmFyaWFibGVFbnZpcm9u
bWVudCYsIEV4cHJlc3Npb25UeXBlLCBFeHByZXNzaW9uVHlwZSwgUHJvcGVydHlMaXN0LCBQcm9w
ZXJ0eUxpc3QpIHsgcmV0dXJuIENsYXNzRXhwcjsgfQogICAgIEV4cHJlc3Npb25UeXBlIGNyZWF0
ZUZ1bmN0aW9uRXhwcihjb25zdCBKU1Rva2VuTG9jYXRpb24mLCBjb25zdCBQYXJzZXJGdW5jdGlv
bkluZm88U3ludGF4Q2hlY2tlcj4mKSB7IHJldHVybiBGdW5jdGlvbkV4cHI7IH0KLSAgICBpbnQg
Y3JlYXRlRnVuY3Rpb25NZXRhZGF0YShjb25zdCBKU1Rva2VuTG9jYXRpb24mLCBjb25zdCBKU1Rv
a2VuTG9jYXRpb24mLCBpbnQsIGludCwgYm9vbCwgaW50LCBpbnQsIGludCwgQ29uc3RydWN0b3JL
aW5kLCBTdXBlckJpbmRpbmcsIHVuc2lnbmVkLCBTb3VyY2VQYXJzZU1vZGUsIGJvb2wsIElubmVy
QXJyb3dGdW5jdGlvbkNvZGVGZWF0dXJlcyA9IE5vSW5uZXJBcnJvd0Z1bmN0aW9uRmVhdHVyZXMp
IHsgcmV0dXJuIEZ1bmN0aW9uQm9keVJlc3VsdDsgfQorICAgIGludCBjcmVhdGVGdW5jdGlvbk1l
dGFkYXRhKGNvbnN0IEpTVG9rZW5Mb2NhdGlvbiYsIGNvbnN0IEpTVG9rZW5Mb2NhdGlvbiYsIGlu
dCwgaW50LCBib29sLCBpbnQsIGludCwgaW50LCBDb25zdHJ1Y3RvcktpbmQsIFN1cGVyQmluZGlu
ZywgdW5zaWduZWQsIGludCwgU291cmNlUGFyc2VNb2RlLCBib29sLCBJbm5lckFycm93RnVuY3Rp
b25Db2RlRmVhdHVyZXMgPSBOb0lubmVyQXJyb3dGdW5jdGlvbkZlYXR1cmVzKSB7IHJldHVybiBG
dW5jdGlvbkJvZHlSZXN1bHQ7IH0KICAgICBFeHByZXNzaW9uVHlwZSBjcmVhdGVBcnJvd0Z1bmN0
aW9uRXhwcihjb25zdCBKU1Rva2VuTG9jYXRpb24mLCBjb25zdCBQYXJzZXJGdW5jdGlvbkluZm88
U3ludGF4Q2hlY2tlcj4mKSB7IHJldHVybiBGdW5jdGlvbkV4cHI7IH0KICAgICBFeHByZXNzaW9u
VHlwZSBjcmVhdGVNZXRob2REZWZpbml0aW9uKGNvbnN0IEpTVG9rZW5Mb2NhdGlvbiYsIGNvbnN0
IFBhcnNlckZ1bmN0aW9uSW5mbzxTeW50YXhDaGVja2VyPiYpIHsgcmV0dXJuIEZ1bmN0aW9uRXhw
cjsgfQogICAgIHZvaWQgc2V0RnVuY3Rpb25OYW1lU3RhcnQoaW50LCBpbnQpIHsgfQpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhlY3V0YWJsZS5oIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhlY3V0YWJsZS5oCmluZGV4IDdjN2ZlODcuLjRhNzdh
MDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V4ZWN1dGFibGUu
aAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FeGVjdXRhYmxlLmgKQEAgLTY1
Nyw3ICs2NTcsOCBAQCBwdWJsaWM6CiAgICAgY29uc3QgSWRlbnRpZmllciYgbmFtZSgpIHsgcmV0
dXJuIG1fdW5saW5rZWRFeGVjdXRhYmxlLT5uYW1lKCk7IH0KICAgICBjb25zdCBJZGVudGlmaWVy
JiBlY21hTmFtZSgpIHsgcmV0dXJuIG1fdW5saW5rZWRFeGVjdXRhYmxlLT5lY21hTmFtZSgpOyB9
CiAgICAgY29uc3QgSWRlbnRpZmllciYgaW5mZXJyZWROYW1lKCkgeyByZXR1cm4gbV91bmxpbmtl
ZEV4ZWN1dGFibGUtPmluZmVycmVkTmFtZSgpOyB9Ci0gICAgc2l6ZV90IHBhcmFtZXRlckNvdW50
KCkgY29uc3QgeyByZXR1cm4gbV91bmxpbmtlZEV4ZWN1dGFibGUtPnBhcmFtZXRlckNvdW50KCk7
IH0gLy8gRXhjbHVkaW5nICd0aGlzJyEKKyAgICB1bnNpZ25lZCBwYXJhbWV0ZXJDb3VudCgpIGNv
bnN0IHsgcmV0dXJuIG1fdW5saW5rZWRFeGVjdXRhYmxlLT5wYXJhbWV0ZXJDb3VudCgpOyB9IC8v
IEV4Y2x1ZGluZyAndGhpcychCisgICAgdW5zaWduZWQgbm9uRGVmYXVsdFBhcmFtZXRlckNvdW50
KCkgY29uc3QgeyByZXR1cm4gbV91bmxpbmtlZEV4ZWN1dGFibGUtPm5vbkRlZmF1bHRQYXJhbWV0
ZXJDb3VudCgpOyB9CiAgICAgU291cmNlUGFyc2VNb2RlIHBhcnNlTW9kZSgpIGNvbnN0IHsgcmV0
dXJuIG1fdW5saW5rZWRFeGVjdXRhYmxlLT5wYXJzZU1vZGUoKTsgfQogICAgIEpTUGFyc2VyQ29t
bWVudE1vZGUgY29tbWVudE1vZGUoKSBjb25zdCB7IHJldHVybiBtX3VubGlua2VkRXhlY3V0YWJs
ZS0+Y29tbWVudE1vZGUoKTsgfQogICAgIGNvbnN0IFNvdXJjZUNvZGUmIGNsYXNzU291cmNlKCkg
Y29uc3QgeyByZXR1cm4gbV91bmxpbmtlZEV4ZWN1dGFibGUtPmNsYXNzU291cmNlKCk7IH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRnVuY3Rpb24uY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5jcHAKaW5kZXggMDBkZThi
Ni4uZTgwYTFhNiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNG
dW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlv
bi5jcHAKQEAgLTExNCw3ICsxMTQsNyBAQCBKU0Z1bmN0aW9uKiBKU0Z1bmN0aW9uOjpjcmVhdGVC
dWlsdGluRnVuY3Rpb24oVk0mIHZtLCBGdW5jdGlvbkV4ZWN1dGFibGUqIGV4ZWN1dAogewogICAg
IEpTRnVuY3Rpb24qIGZ1bmN0aW9uID0gY3JlYXRlKHZtLCBleGVjdXRhYmxlLCBnbG9iYWxPYmpl
Y3QpOwogICAgIGZ1bmN0aW9uLT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPm5hbWUs
IGpzU3RyaW5nKCZ2bSwgZXhlY3V0YWJsZS0+bmFtZSgpLnN0cmluZygpKSwgUmVhZE9ubHkgfCBE
b250RW51bSk7Ci0gICAgZnVuY3Rpb24tPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+
bGVuZ3RoLCBqc051bWJlcihleGVjdXRhYmxlLT5wYXJhbWV0ZXJDb3VudCgpKSwgUmVhZE9ubHkg
fCBEb250RW51bSk7CisgICAgZnVuY3Rpb24tPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1l
cy0+bGVuZ3RoLCBqc051bWJlcihleGVjdXRhYmxlLT5ub25EZWZhdWx0UGFyYW1ldGVyQ291bnQo
KSksIFJlYWRPbmx5IHwgRG9udEVudW0pOwogICAgIHJldHVybiBmdW5jdGlvbjsKIH0KIApAQCAt
MTIyLDcgKzEyMiw3IEBAIEpTRnVuY3Rpb24qIEpTRnVuY3Rpb246OmNyZWF0ZUJ1aWx0aW5GdW5j
dGlvbihWTSYgdm0sIEZ1bmN0aW9uRXhlY3V0YWJsZSogZXhlY3V0CiB7CiAgICAgSlNGdW5jdGlv
biogZnVuY3Rpb24gPSBjcmVhdGUodm0sIGV4ZWN1dGFibGUsIGdsb2JhbE9iamVjdCk7CiAgICAg
ZnVuY3Rpb24tPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+bmFtZSwganNTdHJpbmco
JnZtLCBuYW1lKSwgUmVhZE9ubHkgfCBEb250RW51bSk7Ci0gICAgZnVuY3Rpb24tPnB1dERpcmVj
dCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+bGVuZ3RoLCBqc051bWJlcihleGVjdXRhYmxlLT5wYXJh
bWV0ZXJDb3VudCgpKSwgUmVhZE9ubHkgfCBEb250RW51bSk7CisgICAgZnVuY3Rpb24tPnB1dERp
cmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+bGVuZ3RoLCBqc051bWJlcihleGVjdXRhYmxlLT5u
b25EZWZhdWx0UGFyYW1ldGVyQ291bnQoKSksIFJlYWRPbmx5IHwgRG9udEVudW0pOwogICAgIHJl
dHVybiBmdW5jdGlvbjsKIH0KIApAQCAtNjI3LDcgKzYyNyw3IEBAIHZvaWQgSlNGdW5jdGlvbjo6
cmVpZnlMZW5ndGgoVk0mIHZtKQogCiAgICAgQVNTRVJUKCFoYXNSZWlmaWVkTGVuZ3RoKCkpOwog
ICAgIEFTU0VSVCghaXNIb3N0RnVuY3Rpb24oKSk7Ci0gICAgSlNWYWx1ZSBpbml0aWFsVmFsdWUg
PSBqc051bWJlcihqc0V4ZWN1dGFibGUoKS0+cGFyYW1ldGVyQ291bnQoKSk7CisgICAgSlNWYWx1
ZSBpbml0aWFsVmFsdWUgPSBqc051bWJlcihqc0V4ZWN1dGFibGUoKS0+bm9uRGVmYXVsdFBhcmFt
ZXRlckNvdW50KCkpOwogICAgIHVuc2lnbmVkIGluaXRpYWxBdHRyaWJ1dGVzID0gRG9udEVudW0g
fCBSZWFkT25seTsKICAgICBjb25zdCBJZGVudGlmaWVyJiBpZGVudGlmaWVyID0gdm0ucHJvcGVy
dHlOYW1lcy0+bGVuZ3RoOwogICAgIHB1dERpcmVjdCh2bSwgaWRlbnRpZmllciwgaW5pdGlhbFZh
bHVlLCBpbml0aWFsQXR0cmlidXRlcyk7Cg==
</data>
<flag name="review"
          id="312766"
          type_id="1"
          status="+"
          setter="saam"
    />
    <flag name="commit-queue"
          id="312767"
          type_id="3"
          status="-"
          setter="joepeck"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>289589</attachid>
            <date>2016-09-22 11:49:36 -0700</date>
            <delta_ts>2016-09-22 12:13:39 -0700</delta_ts>
            <desc>[PATCH] For Landing</desc>
            <filename>for-landing-1.patch</filename>
            <type>text/plain</type>
            <size>55492</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0pTVGVzdHMvQ2hhbmdlTG9nIGIvSlNUZXN0cy9DaGFuZ2VMb2cKaW5kZXgg
YjNmNjhkMi4uNTA4YjhjMyAxMDA2NDQKLS0tIGEvSlNUZXN0cy9DaGFuZ2VMb2cKKysrIGIvSlNU
ZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxNi0wOS0yMiAgSm9zZXBoIFBlY29y
YXJvICA8cGVjb3Jhcm9AYXBwbGUuY29tPgorCisgICAgICAgIHRlc3QyNjI6IEZ1bmN0aW9uIGxl
bmd0aCBzaG91bGQgYmUgbnVtYmVyIG9mIHBhcmFtZXRlcnMgYmVmb3JlIHBhcmFtZXRlcnMgd2l0
aCBkZWZhdWx0IHZhbHVlcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTYyMzc3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FhbSBCYXJhdGkuCisKKyAg
ICAgICAgKiBzdHJlc3MvZXM2LWRlZmF1bHQtcGFyYW1ldGVycy5qczoKKyAgICAgICAgQWRkIG91
ciBvd24gdGVzdHMgZm9yIGZ1bmN0aW9uIGxlbmd0aHMgd2l0aCBkZWZhdWx0IHBhcmFtZXRlcnMu
CisKKyAgICAgICAgKiB0ZXN0MjYyLnlhbWw6CisgICAgICAgIFdlIG5vdyBwYXNzIGFsbCBkZmx0
LWxlbmd0aCB0ZXN0cy4KKwogMjAxNi0wOS0yMCAgQmVuamFtaW4gUG91bGFpbiAgPGJwb3VsYWlu
QGFwcGxlLmNvbT4KIAogICAgICAgICBbSlNDXSBEbyBub3QgdXNlIEVhZ2VyUnVuIG9uIHRlc3Rz
IGNvdW50aW5nIHJlY29tcGlsYXRpb24KZGlmZiAtLWdpdCBhL0pTVGVzdHMvc3RyZXNzL2VzNi1k
ZWZhdWx0LXBhcmFtZXRlcnMuanMgYi9KU1Rlc3RzL3N0cmVzcy9lczYtZGVmYXVsdC1wYXJhbWV0
ZXJzLmpzCmluZGV4IDlhMDA0ZTEuLjE2MGQxODUgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvc3RyZXNz
L2VzNi1kZWZhdWx0LXBhcmFtZXRlcnMuanMKKysrIGIvSlNUZXN0cy9zdHJlc3MvZXM2LWRlZmF1
bHQtcGFyYW1ldGVycy5qcwpAQCAtMjIxLDYgKzIyMSwxMTUgQEAgYXVnbWVudHNBcmd1bWVudHM1
KDIwKTsKICAgICB9CiB9KSgpOwogCisvLyBMZW5ndGgKKworZnVuY3Rpb24gbmFtZWQxKGEpe307
CitmdW5jdGlvbiBuYW1lZDIoYT0xKXt9OworZnVuY3Rpb24gbmFtZWQzKGEsYil7fTsKK2Z1bmN0
aW9uIG5hbWVkNChhLGI9MSl7fTsKK2Z1bmN0aW9uIG5hbWVkNShhPTEsYj0xKXt9OworZnVuY3Rp
b24gbmFtZWQ2KGEsYixjKXt9OworZnVuY3Rpb24gbmFtZWQ3KGE9MSxiLGMpe307CitmdW5jdGlv
biBuYW1lZDgoYSxiPTEsYyl7fTsKK2Z1bmN0aW9uIG5hbWVkOShhLGIsYz0xKXt9OworZnVuY3Rp
b24gbmFtZWQxMChhLC4uLmIpe307CitmdW5jdGlvbiBuYW1lZDExKGE9MSwuLi5iKXt9OworZnVu
Y3Rpb24gbmFtZWQxMihhPTEwLGIsYz0yMCwuLi5yKXt9OworCithc3NlcnQoIG5hbWVkMS5sZW5n
dGggPT09IDEgKTsKK2Fzc2VydCggbmFtZWQyLmxlbmd0aCA9PT0gMCApOworYXNzZXJ0KCBuYW1l
ZDMubGVuZ3RoID09PSAyICk7Cithc3NlcnQoIG5hbWVkNC5sZW5ndGggPT09IDEgKTsKK2Fzc2Vy
dCggbmFtZWQ1Lmxlbmd0aCA9PT0gMCApOworYXNzZXJ0KCBuYW1lZDYubGVuZ3RoID09PSAzICk7
Cithc3NlcnQoIG5hbWVkNy5sZW5ndGggPT09IDAgKTsKK2Fzc2VydCggbmFtZWQ4Lmxlbmd0aCA9
PT0gMSApOworYXNzZXJ0KCBuYW1lZDkubGVuZ3RoID09PSAyICk7Cithc3NlcnQoIG5hbWVkMTAu
bGVuZ3RoID09PSAxICk7Cithc3NlcnQoIG5hbWVkMTEubGVuZ3RoID09PSAwICk7Cithc3NlcnQo
IG5hbWVkMTIubGVuZ3RoID09PSAwICk7CisKK2Fzc2VydCggKGZ1bmN0aW9uKGEpe30pLmxlbmd0
aCA9PT0gMSApOworYXNzZXJ0KCAoZnVuY3Rpb24oYT0xKXt9KS5sZW5ndGggPT09IDAgKTsKK2Fz
c2VydCggKGZ1bmN0aW9uKGEsYil7fSkubGVuZ3RoID09PSAyICk7Cithc3NlcnQoIChmdW5jdGlv
bihhLGI9MSl7fSkubGVuZ3RoID09PSAxICk7Cithc3NlcnQoIChmdW5jdGlvbihhPTEsYj0xKXt9
KS5sZW5ndGggPT09IDAgKTsKK2Fzc2VydCggKGZ1bmN0aW9uKGEsYixjKXt9KS5sZW5ndGggPT09
IDMgKTsKK2Fzc2VydCggKGZ1bmN0aW9uKGE9MSxiLGMpe30pLmxlbmd0aCA9PT0gMCApOworYXNz
ZXJ0KCAoZnVuY3Rpb24oYSxiPTEsYyl7fSkubGVuZ3RoID09PSAxICk7Cithc3NlcnQoIChmdW5j
dGlvbihhLGIsYz0xKXt9KS5sZW5ndGggPT09IDIgKTsKK2Fzc2VydCggKGZ1bmN0aW9uKGEsLi4u
Yil7fSkubGVuZ3RoID09PSAxICk7Cithc3NlcnQoIChmdW5jdGlvbihhPTEsLi4uYil7fSkubGVu
Z3RoID09PSAwICk7Cithc3NlcnQoIChmdW5jdGlvbihhPTEwLGIsYz0yMCwuLi5yKXt9KS5sZW5n
dGggPT09IDAgKTsKKworYXNzZXJ0KCAoZnVuY3Rpb24qKGEpe30pLmxlbmd0aCA9PT0gMSApOwor
YXNzZXJ0KCAoZnVuY3Rpb24qKGE9MSl7fSkubGVuZ3RoID09PSAwICk7Cithc3NlcnQoIChmdW5j
dGlvbiooYSxiKXt9KS5sZW5ndGggPT09IDIgKTsKK2Fzc2VydCggKGZ1bmN0aW9uKihhLGI9MSl7
fSkubGVuZ3RoID09PSAxICk7Cithc3NlcnQoIChmdW5jdGlvbiooYT0xLGI9MSl7fSkubGVuZ3Ro
ID09PSAwICk7Cithc3NlcnQoIChmdW5jdGlvbiooYSxiLGMpe30pLmxlbmd0aCA9PT0gMyApOwor
YXNzZXJ0KCAoZnVuY3Rpb24qKGE9MSxiLGMpe30pLmxlbmd0aCA9PT0gMCApOworYXNzZXJ0KCAo
ZnVuY3Rpb24qKGEsYj0xLGMpe30pLmxlbmd0aCA9PT0gMSApOworYXNzZXJ0KCAoZnVuY3Rpb24q
KGEsYixjPTEpe30pLmxlbmd0aCA9PT0gMiApOworYXNzZXJ0KCAoZnVuY3Rpb24qKGEsLi4uYil7
fSkubGVuZ3RoID09PSAxICk7Cithc3NlcnQoIChmdW5jdGlvbiooYT0xLC4uLmIpe30pLmxlbmd0
aCA9PT0gMCApOworYXNzZXJ0KCAoZnVuY3Rpb24qKGE9MTAsYixjPTIwLC4uLnIpe30pLmxlbmd0
aCA9PT0gMCApOworCithc3NlcnQoICgoYSk9Pnt9KS5sZW5ndGggPT09IDEgKTsKK2Fzc2VydCgg
KChhPTEpPT57fSkubGVuZ3RoID09PSAwICk7Cithc3NlcnQoICgoYSxiKT0+e30pLmxlbmd0aCA9
PT0gMiApOworYXNzZXJ0KCAoKGEsYj0xKT0+e30pLmxlbmd0aCA9PT0gMSApOworYXNzZXJ0KCAo
KGE9MSxiPTEpPT57fSkubGVuZ3RoID09PSAwICk7Cithc3NlcnQoICgoYSxiLGMpPT57fSkubGVu
Z3RoID09PSAzICk7Cithc3NlcnQoICgoYT0xLGIsYyk9Pnt9KS5sZW5ndGggPT09IDAgKTsKK2Fz
c2VydCggKChhLGI9MSxjKT0+e30pLmxlbmd0aCA9PT0gMSApOworYXNzZXJ0KCAoKGEsYixjPTEp
PT57fSkubGVuZ3RoID09PSAyICk7Cithc3NlcnQoICgoYSwuLi5iKT0+e30pLmxlbmd0aCA9PT0g
MSApOworYXNzZXJ0KCAoKGE9MSwuLi5iKT0+e30pLmxlbmd0aCA9PT0gMCApOworYXNzZXJ0KCAo
KGE9MTAsYixjPTIwLC4uLnIpPT57fSkubGVuZ3RoID09PSAwICk7CisKK2Fzc2VydCggT2JqZWN0
LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih7c2V0IHNldHRlcihhKXt9fSwgInNldHRlciIpLnNl
dC5sZW5ndGggPT09IDEgKTsKK2Fzc2VydCggT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRv
cih7c2V0IHNldHRlcihhPTEpe319LCAic2V0dGVyIikuc2V0Lmxlbmd0aCA9PT0gMCApOworCith
c3NlcnQoICh7bWV0aG9kKGEpe319KS5tZXRob2QubGVuZ3RoID09PSAxICk7Cithc3NlcnQoICh7
bWV0aG9kKGE9MSl7fX0pLm1ldGhvZC5sZW5ndGggPT09IDAgKTsKK2Fzc2VydCggKHttZXRob2Qo
YSxiKXt9fSkubWV0aG9kLmxlbmd0aCA9PT0gMiApOworYXNzZXJ0KCAoe21ldGhvZChhLGI9MSl7
fX0pLm1ldGhvZC5sZW5ndGggPT09IDEgKTsKK2Fzc2VydCggKHttZXRob2QoYT0xLGI9MSl7fX0p
Lm1ldGhvZC5sZW5ndGggPT09IDAgKTsKK2Fzc2VydCggKHttZXRob2QoYSxiLGMpe319KS5tZXRo
b2QubGVuZ3RoID09PSAzICk7Cithc3NlcnQoICh7bWV0aG9kKGE9MSxiLGMpe319KS5tZXRob2Qu
bGVuZ3RoID09PSAwICk7Cithc3NlcnQoICh7bWV0aG9kKGEsYj0xLGMpe319KS5tZXRob2QubGVu
Z3RoID09PSAxICk7Cithc3NlcnQoICh7bWV0aG9kKGEsYixjPTEpe319KS5tZXRob2QubGVuZ3Ro
ID09PSAyICk7Cithc3NlcnQoICh7bWV0aG9kKGEsLi4uYil7fX0pLm1ldGhvZC5sZW5ndGggPT09
IDEgKTsKK2Fzc2VydCggKHttZXRob2QoYT0xLC4uLmIpe319KS5tZXRob2QubGVuZ3RoID09PSAw
ICk7Cithc3NlcnQoICh7bWV0aG9kKGE9MTAsYixjPTIwLC4uLnIpe319KS5tZXRob2QubGVuZ3Ro
ID09PSAwICk7CisKK2Fzc2VydCggKHsqbWV0aG9kKGEpe319KS5tZXRob2QubGVuZ3RoID09PSAx
ICk7Cithc3NlcnQoICh7Km1ldGhvZChhPTEpe319KS5tZXRob2QubGVuZ3RoID09PSAwICk7Cith
c3NlcnQoICh7Km1ldGhvZChhLGIpe319KS5tZXRob2QubGVuZ3RoID09PSAyICk7Cithc3NlcnQo
ICh7Km1ldGhvZChhLGI9MSl7fX0pLm1ldGhvZC5sZW5ndGggPT09IDEgKTsKK2Fzc2VydCggKHsq
bWV0aG9kKGE9MSxiPTEpe319KS5tZXRob2QubGVuZ3RoID09PSAwICk7Cithc3NlcnQoICh7Km1l
dGhvZChhLGIsYyl7fX0pLm1ldGhvZC5sZW5ndGggPT09IDMgKTsKK2Fzc2VydCggKHsqbWV0aG9k
KGE9MSxiLGMpe319KS5tZXRob2QubGVuZ3RoID09PSAwICk7Cithc3NlcnQoICh7Km1ldGhvZChh
LGI9MSxjKXt9fSkubWV0aG9kLmxlbmd0aCA9PT0gMSApOworYXNzZXJ0KCAoeyptZXRob2QoYSxi
LGM9MSl7fX0pLm1ldGhvZC5sZW5ndGggPT09IDIgKTsKK2Fzc2VydCggKHsqbWV0aG9kKGEsLi4u
Yil7fX0pLm1ldGhvZC5sZW5ndGggPT09IDEgKTsKK2Fzc2VydCggKHsqbWV0aG9kKGE9MSwuLi5i
KXt9fSkubWV0aG9kLmxlbmd0aCA9PT0gMCApOworYXNzZXJ0KCAoeyptZXRob2QoYT0xMCxiLGM9
MjAsLi4ucil7fX0pLm1ldGhvZC5sZW5ndGggPT09IDAgKTsKKworYXNzZXJ0KCAoY2xhc3Mge3N0
YXRpYyBtZXRob2QoYSl7fX0pLm1ldGhvZC5sZW5ndGggPT09IDEgKTsKK2Fzc2VydCggKGNsYXNz
IHtzdGF0aWMgbWV0aG9kKGE9MSl7fX0pLm1ldGhvZC5sZW5ndGggPT09IDAgKTsKK2Fzc2VydCgg
KGNsYXNzIHtzdGF0aWMgbWV0aG9kKGEsYil7fX0pLm1ldGhvZC5sZW5ndGggPT09IDIgKTsKK2Fz
c2VydCggKGNsYXNzIHtzdGF0aWMgbWV0aG9kKGEsYj0xKXt9fSkubWV0aG9kLmxlbmd0aCA9PT0g
MSApOworYXNzZXJ0KCAoY2xhc3Mge3N0YXRpYyBtZXRob2QoYT0xLGI9MSl7fX0pLm1ldGhvZC5s
ZW5ndGggPT09IDAgKTsKK2Fzc2VydCggKGNsYXNzIHtzdGF0aWMgbWV0aG9kKGEsYixjKXt9fSku
bWV0aG9kLmxlbmd0aCA9PT0gMyApOworYXNzZXJ0KCAoY2xhc3Mge3N0YXRpYyBtZXRob2QoYT0x
LGIsYyl7fX0pLm1ldGhvZC5sZW5ndGggPT09IDAgKTsKK2Fzc2VydCggKGNsYXNzIHtzdGF0aWMg
bWV0aG9kKGEsYj0xLGMpe319KS5tZXRob2QubGVuZ3RoID09PSAxICk7Cithc3NlcnQoIChjbGFz
cyB7c3RhdGljIG1ldGhvZChhLGIsYz0xKXt9fSkubWV0aG9kLmxlbmd0aCA9PT0gMiApOworYXNz
ZXJ0KCAoY2xhc3Mge3N0YXRpYyBtZXRob2QoYSwuLi5iKXt9fSkubWV0aG9kLmxlbmd0aCA9PT0g
MSApOworYXNzZXJ0KCAoY2xhc3Mge3N0YXRpYyBtZXRob2QoYT0xLC4uLmIpe319KS5tZXRob2Qu
bGVuZ3RoID09PSAwICk7Cithc3NlcnQoIChjbGFzcyB7c3RhdGljIG1ldGhvZChhPTEwLGIsYz0y
MCwuLi5yKXt9fSkubWV0aG9kLmxlbmd0aCA9PT0gMCApOworCiAvLyBURFogZXJyb3JzLgogOyhm
dW5jdGlvbigpIHsKICAgICBmdW5jdGlvbiBiYXNpY0Vycm9yKHggPSB5LCB5KSB7IH0KZGlmZiAt
LWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi55YW1sIGIvSlNUZXN0cy90ZXN0MjYyLnlhbWwKaW5kZXgg
YzUxNjA1My4uN2UxN2M5ZSAxMDA2NDQKLS0tIGEvSlNUZXN0cy90ZXN0MjYyLnlhbWwKKysrIGIv
SlNUZXN0cy90ZXN0MjYyLnlhbWwKQEAgLTU0MDAwLDkgKzU0MDAwLDkgQEAKIC0gcGF0aDogdGVz
dDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2Fycm93LWZ1bmN0aW9uL2V4cHJlc3Npb24t
Ym9keS1pbXBsaWNpdC1yZXR1cm4uanMKICAgY21kOiBydW5UZXN0MjYyIDpub3JtYWwsICJOb0V4
Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4v
aGFybmVzcy9zdGEuanMiXSwgWzpzdHJpY3RdCiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFn
ZS9leHByZXNzaW9ucy9hcnJvdy1mdW5jdGlvbi9sZW5ndGgtZGZsdC5qcwotICBjbWQ6IHJ1blRl
c3QyNjIgOmZhaWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQu
anMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9w
cm9wZXJ0eUhlbHBlci5qcyJdLCBbXQorICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIk5vRXhj
ZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9o
YXJuZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0s
IFtdCiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9hcnJvdy1mdW5j
dGlvbi9sZW5ndGgtZGZsdC5qcwotICBjbWQ6IHJ1blRlc3QyNjIgOmZhaWwsICJOb0V4Y2VwdGlv
biIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVz
cy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbOnN0
cmljdF0KKyAgY21kOiBydW5UZXN0MjYyIDpub3JtYWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4v
Li4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAi
Li4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbOnN0cmljdF0KIC0gcGF0
aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2Fycm93LWZ1bmN0aW9uL2xleGlj
YWwtYXJndW1lbnRzLmpzCiAgIGNtZDogcnVuVGVzdDI2MiA6bm9ybWFsLCAiTm9FeGNlcHRpb24i
LCBbIi4uLy4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mv
c3RhLmpzIl0sIFtdCiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9h
cnJvdy1mdW5jdGlvbi9sZXhpY2FsLWFyZ3VtZW50cy5qcwpAQCAtNTg4NTIsOSArNTg4NTIsOSBA
QAogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvY2xhc3MvZHN0ci1t
ZXRoLXN0YXRpYy1vYmotcHRybi1wcm9wLW9iai5qcwogICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1h
bCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8u
Li8uLi8uLi9oYXJuZXNzL3N0YS5qcyJdLCBbOnN0cmljdF0KIC0gcGF0aDogdGVzdDI2Mi90ZXN0
L2xhbmd1YWdlL2V4cHJlc3Npb25zL2NsYXNzL2dlbi1tZXRob2QtbGVuZ3RoLWRmbHQuanMKLSAg
Y21kOiBydW5UZXN0MjYyIDpmYWlsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4uLy4uL2hhcm5l
c3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4uLy4uLy4uLy4u
L2hhcm5lc3MvcHJvcGVydHlIZWxwZXIuanMiXSwgW10KKyAgY21kOiBydW5UZXN0MjYyIDpub3Jt
YWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4v
Li4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhl
bHBlci5qcyJdLCBbXQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMv
Y2xhc3MvZ2VuLW1ldGhvZC1sZW5ndGgtZGZsdC5qcwotICBjbWQ6IHJ1blRlc3QyNjIgOmZhaWws
ICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4v
Li4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBl
ci5qcyJdLCBbOnN0cmljdF0KKyAgY21kOiBydW5UZXN0MjYyIDpub3JtYWwsICJOb0V4Y2VwdGlv
biIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVz
cy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbOnN0
cmljdF0KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2NsYXNzL2dl
bi1tZXRob2QtcGFyYW0tZGZsdC15aWVsZC5qcwogICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwg
IlN5bnRheEVycm9yIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8u
Li8uLi9oYXJuZXNzL3N0YS5qcyJdLCBbXQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uv
ZXhwcmVzc2lvbnMvY2xhc3MvZ2VuLW1ldGhvZC1wYXJhbS1kZmx0LXlpZWxkLmpzCkBAIC01ODg2
NCw5ICs1ODg2NCw5IEBACiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9u
cy9jbGFzcy9nZXR0ZXItcGFyYW0tZGZsdC5qcwogICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwg
IlN5bnRheEVycm9yIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8u
Li8uLi9oYXJuZXNzL3N0YS5qcyJdLCBbOnN0cmljdF0KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xh
bmd1YWdlL2V4cHJlc3Npb25zL2NsYXNzL21ldGhvZC1sZW5ndGgtZGZsdC5qcwotICBjbWQ6IHJ1
blRlc3QyNjIgOmZhaWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3Nl
cnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVz
cy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbXQorICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIk5v
RXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8u
Li9oYXJuZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVscGVyLmpz
Il0sIFtdCiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9jbGFzcy9t
ZXRob2QtbGVuZ3RoLWRmbHQuanMKLSAgY21kOiBydW5UZXN0MjYyIDpmYWlsLCAiTm9FeGNlcHRp
b24iLCBbIi4uLy4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5l
c3Mvc3RhLmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3MvcHJvcGVydHlIZWxwZXIuanMiXSwgWzpz
dHJpY3RdCisgIGNtZDogcnVuVGVzdDI2MiA6bm9ybWFsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4u
Ly4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwg
Ii4uLy4uLy4uLy4uL2hhcm5lc3MvcHJvcGVydHlIZWxwZXIuanMiXSwgWzpzdHJpY3RdCiAtIHBh
dGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9jbGFzcy9tZXRob2QtcGFyYW0t
ZGZsdC15aWVsZC5qcwogICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIlN5bnRheEVycm9yIiwg
WyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0
YS5qcyJdLCBbXQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvY2xh
c3MvbWV0aG9kLXBhcmFtLWRmbHQteWllbGQuanMKQEAgLTU5MTAwLDE3ICs1OTEwMCwxNyBAQAog
LSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvY2xhc3Mvc2NvcGUtc3Rh
dGljLXNldHRlci1wYXJhbXNib2R5LXZhci1vcGVuLmpzCiAgIGNtZDogcnVuVGVzdDI2MiA6bm9y
bWFsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4u
Ly4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIl0sIFs6c3RyaWN0XQogLSBwYXRoOiB0ZXN0MjYyL3Rl
c3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvY2xhc3Mvc2V0dGVyLWxlbmd0aC1kZmx0LmpzCi0gIGNt
ZDogcnVuVGVzdDI2MiA6ZmFpbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNz
L2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi9o
YXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0sIFtdCisgIGNtZDogcnVuVGVzdDI2MiA6bm9ybWFs
LCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4u
Ly4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3MvcHJvcGVydHlIZWxw
ZXIuanMiXSwgW10KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2Ns
YXNzL3NldHRlci1sZW5ndGgtZGZsdC5qcwotICBjbWQ6IHJ1blRlc3QyNjIgOmZhaWwsICJOb0V4
Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4v
aGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJd
LCBbOnN0cmljdF0KKyAgY21kOiBydW5UZXN0MjYyIDpub3JtYWwsICJOb0V4Y2VwdGlvbiIsIFsi
Li4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEu
anMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbOnN0cmljdF0K
IC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2NsYXNzL3N0YXRpYy1n
ZW4tbWV0aG9kLXBhcmFtLWRmbHQteWllbGQuanMKICAgY21kOiBydW5UZXN0MjYyIDpub3JtYWws
ICJTeW50YXhFcnJvciIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4v
Li4vLi4vaGFybmVzcy9zdGEuanMiXSwgW10KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdl
L2V4cHJlc3Npb25zL2NsYXNzL3N0YXRpYy1nZW4tbWV0aG9kLXBhcmFtLWRmbHQteWllbGQuanMK
ICAgY21kOiBydW5UZXN0MjYyIDpub3JtYWwsICJTeW50YXhFcnJvciIsIFsiLi4vLi4vLi4vLi4v
aGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiXSwgWzpzdHJp
Y3RdCiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9jbGFzcy9zdGF0
aWMtbWV0aG9kLWxlbmd0aC1kZmx0LmpzCi0gIGNtZDogcnVuVGVzdDI2MiA6ZmFpbCwgIk5vRXhj
ZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9o
YXJuZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0s
IFtdCisgIGNtZDogcnVuVGVzdDI2MiA6bm9ybWFsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4u
Ly4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4u
Ly4uLy4uLy4uL2hhcm5lc3MvcHJvcGVydHlIZWxwZXIuanMiXSwgW10KIC0gcGF0aDogdGVzdDI2
Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2NsYXNzL3N0YXRpYy1tZXRob2QtbGVuZ3RoLWRm
bHQuanMKLSAgY21kOiBydW5UZXN0MjYyIDpmYWlsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4u
Ly4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4u
Ly4uLy4uLy4uL2hhcm5lc3MvcHJvcGVydHlIZWxwZXIuanMiXSwgWzpzdHJpY3RdCisgIGNtZDog
cnVuVGVzdDI2MiA6bm9ybWFsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4uLy4uL2hhcm5lc3Mv
YXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4uLy4uLy4uLy4uL2hh
cm5lc3MvcHJvcGVydHlIZWxwZXIuanMiXSwgWzpzdHJpY3RdCiAtIHBhdGg6IHRlc3QyNjIvdGVz
dC9sYW5ndWFnZS9leHByZXNzaW9ucy9jbGFzcy9zdGF0aWMtbWV0aG9kLXBhcmFtLWRmbHQteWll
bGQuanMKICAgY21kOiBydW5UZXN0MjYyIDpub3JtYWwsICJTeW50YXhFcnJvciIsIFsiLi4vLi4v
Li4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiXSwg
W10KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2NsYXNzL3N0YXRp
Yy1tZXRob2QtcGFyYW0tZGZsdC15aWVsZC5qcwpAQCAtNjIxNDgsOSArNjIxNDgsOSBAQAogLSBw
YXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZnVuY3Rpb24vZWFybHktcGFy
YW1zLXN1cGVyLXByb3AuanMKICAgY21kOiBydW5UZXN0MjYyIDpub3JtYWwsICJTeW50YXhFcnJv
ciIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVz
cy9zdGEuanMiXSwgWzpzdHJpY3RdCiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHBy
ZXNzaW9ucy9mdW5jdGlvbi9sZW5ndGgtZGZsdC5qcwotICBjbWQ6IHJ1blRlc3QyNjIgOmZhaWws
ICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4v
Li4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBl
ci5qcyJdLCBbXQorICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIk5vRXhjZXB0aW9uIiwgWyIu
Li8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5q
cyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0sIFtdCiAtIHBhdGg6
IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9mdW5jdGlvbi9sZW5ndGgtZGZsdC5q
cwotICBjbWQ6IHJ1blRlc3QyNjIgOmZhaWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4v
aGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4v
Li4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbOnN0cmljdF0KKyAgY21kOiBydW5U
ZXN0MjYyIDpub3JtYWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3Nl
cnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVz
cy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbOnN0cmljdF0KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xh
bmd1YWdlL2V4cHJlc3Npb25zL2Z1bmN0aW9uL25hbWUuanMKICAgY21kOiBydW5UZXN0MjYyIDpm
YWlsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4u
Ly4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3MvcHJvcGVydHlI
ZWxwZXIuanMiXSwgW10KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25z
L2Z1bmN0aW9uL25hbWUuanMKQEAgLTYyOTU4LDkgKzYyOTU4LDkgQEAKIC0gcGF0aDogdGVzdDI2
Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2dlbmVyYXRvcnMvaW52b2tlLWFzLWNvbnN0cnVj
dG9yLmpzCiAgIGNtZDogcnVuVGVzdDI2MiA6bm9ybWFsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4u
Ly4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIl0s
IFs6c3RyaWN0XQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZ2Vu
ZXJhdG9ycy9sZW5ndGgtZGZsdC5qcwotICBjbWQ6IHJ1blRlc3QyNjIgOmZhaWwsICJOb0V4Y2Vw
dGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFy
bmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBb
XQorICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8u
Li9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyIsICIuLi8u
Li8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0sIFtdCiAtIHBhdGg6IHRlc3QyNjIv
dGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9nZW5lcmF0b3JzL2xlbmd0aC1kZmx0LmpzCi0gIGNt
ZDogcnVuVGVzdDI2MiA6ZmFpbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNz
L2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi9o
YXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0sIFs6c3RyaWN0XQorICBjbWQ6IHJ1blRlc3QyNjIg
Om5vcm1hbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIs
ICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3Bl
cnR5SGVscGVyLmpzIl0sIFs6c3RyaWN0XQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uv
ZXhwcmVzc2lvbnMvZ2VuZXJhdG9ycy9sZW5ndGgtcHJvcGVydHktZGVzY3JpcHRvci5qcwogICBj
bWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJu
ZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8u
Li9oYXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0sIFtdCiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9s
YW5ndWFnZS9leHByZXNzaW9ucy9nZW5lcmF0b3JzL2xlbmd0aC1wcm9wZXJ0eS1kZXNjcmlwdG9y
LmpzCkBAIC02NjQ3NCw5ICs2NjQ3NCw5IEBACiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFn
ZS9leHByZXNzaW9ucy9vYmplY3QvbWV0aG9kLWRlZmluaXRpb24vZ2VuZXJhdG9yLWludm9rZS1m
bi1zdHJpY3QuanMKICAgY21kOiBydW5UZXN0MjYyIDpub3JtYWwsICJOb0V4Y2VwdGlvbiIsIFsi
Li4vLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vLi4vaGFybmVz
cy9zdGEuanMiXSwgW10KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25z
L29iamVjdC9tZXRob2QtZGVmaW5pdGlvbi9nZW5lcmF0b3ItbGVuZ3RoLWRmbHQuanMKLSAgY21k
OiBydW5UZXN0MjYyIDpmYWlsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4uLy4uLy4uL2hhcm5l
c3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4uLy4uLy4u
Ly4uLy4uL2hhcm5lc3MvcHJvcGVydHlIZWxwZXIuanMiXSwgW10KKyAgY21kOiBydW5UZXN0MjYy
IDpub3JtYWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQu
anMiLCAiLi4vLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vLi4vaGFy
bmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbXQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3Vh
Z2UvZXhwcmVzc2lvbnMvb2JqZWN0L21ldGhvZC1kZWZpbml0aW9uL2dlbmVyYXRvci1sZW5ndGgt
ZGZsdC5qcwotICBjbWQ6IHJ1blRlc3QyNjIgOmZhaWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4v
Li4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEu
anMiLCAiLi4vLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbOnN0cmlj
dF0KKyAgY21kOiBydW5UZXN0MjYyIDpub3JtYWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4v
Li4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMi
LCAiLi4vLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbOnN0cmljdF0K
IC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL29iamVjdC9tZXRob2Qt
ZGVmaW5pdGlvbi9nZW5lcmF0b3ItbGVuZ3RoLmpzCiAgIGNtZDogcnVuVGVzdDI2MiA6bm9ybWFs
LCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4u
Ly4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4uLy4uLy4uLy4uLy4uL2hhcm5lc3MvcHJv
cGVydHlIZWxwZXIuanMiXSwgW10KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJl
c3Npb25zL29iamVjdC9tZXRob2QtZGVmaW5pdGlvbi9nZW5lcmF0b3ItbGVuZ3RoLmpzCkBAIC02
NjU2Miw5ICs2NjU2Miw5IEBACiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNz
aW9ucy9vYmplY3QvbWV0aG9kLWRlZmluaXRpb24vbmFtZS1pbnZva2UtZm4tc3RyaWN0LmpzCiAg
IGNtZDogcnVuVGVzdDI2MiA6bm9ybWFsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4uLy4uLy4u
L2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIl0sIFtd
CiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9vYmplY3QvbWV0aG9k
LWRlZmluaXRpb24vbmFtZS1sZW5ndGgtZGZsdC5qcwotICBjbWQ6IHJ1blRlc3QyNjIgOmZhaWws
ICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4v
Li4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9w
ZXJ0eUhlbHBlci5qcyJdLCBbXQorICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIk5vRXhjZXB0
aW9uIiwgWyIuLi8uLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi8u
Li9oYXJuZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVscGVy
LmpzIl0sIFtdCiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9vYmpl
Y3QvbWV0aG9kLWRlZmluaXRpb24vbmFtZS1sZW5ndGgtZGZsdC5qcwotICBjbWQ6IHJ1blRlc3Qy
NjIgOmZhaWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQu
anMiLCAiLi4vLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vLi4vaGFy
bmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbOnN0cmljdF0KKyAgY21kOiBydW5UZXN0MjYyIDpu
b3JtYWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMi
LCAiLi4vLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vLi4vaGFybmVz
cy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbOnN0cmljdF0KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xh
bmd1YWdlL2V4cHJlc3Npb25zL29iamVjdC9tZXRob2QtZGVmaW5pdGlvbi9uYW1lLWxlbmd0aC5q
cwogICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8u
Li8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyIs
ICIuLi8uLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0sIFtdCiAtIHBhdGg6
IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9vYmplY3QvbWV0aG9kLWRlZmluaXRp
b24vbmFtZS1sZW5ndGguanMKQEAgLTY2ODc2LDkgKzY2ODc2LDkgQEAKIC0gcGF0aDogdGVzdDI2
Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL29iamVjdC9zY29wZS1zZXR0ZXItcGFyYW1zYm9k
eS12YXItb3Blbi5qcwogICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIk5vRXhjZXB0aW9uIiwg
WyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0
YS5qcyJdLCBbOnN0cmljdF0KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Np
b25zL29iamVjdC9zZXR0ZXItbGVuZ3RoLWRmbHQuanMKLSAgY21kOiBydW5UZXN0MjYyIDpmYWls
LCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4u
Ly4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3MvcHJvcGVydHlIZWxw
ZXIuanMiXSwgW10KKyAgY21kOiBydW5UZXN0MjYyIDpub3JtYWwsICJOb0V4Y2VwdGlvbiIsIFsi
Li4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEu
anMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbXQogLSBwYXRo
OiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvb2JqZWN0L3NldHRlci1sZW5ndGgt
ZGZsdC5qcwotICBjbWQ6IHJ1blRlc3QyNjIgOmZhaWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4v
Li4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAi
Li4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbOnN0cmljdF0KKyAgY21k
OiBydW5UZXN0MjYyIDpub3JtYWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVz
cy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4v
aGFybmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbOnN0cmljdF0KIC0gcGF0aDogdGVzdDI2Mi90
ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL29iamVjdC9zZXR0ZXItcHJvcC1kZXNjLmpzCiAgIGNt
ZDogcnVuVGVzdDI2MiA6bm9ybWFsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4uLy4uL2hhcm5l
c3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4uLy4uLy4uLy4u
L2hhcm5lc3MvcHJvcGVydHlIZWxwZXIuanMiXSwgW10KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xh
bmd1YWdlL2V4cHJlc3Npb25zL29iamVjdC9zZXR0ZXItcHJvcC1kZXNjLmpzCkBAIC03NjEyMiw5
ICs3NjEyMiw5IEBACiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9zdGF0ZW1lbnRzL2Ns
YXNzL2RzdHItbWV0aC1zdGF0aWMtb2JqLXB0cm4tcHJvcC1vYmouanMKICAgY21kOiBydW5UZXN0
MjYyIDpub3JtYWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQu
anMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiXSwgWzpzdHJpY3RdCiAtIHBhdGg6IHRl
c3QyNjIvdGVzdC9sYW5ndWFnZS9zdGF0ZW1lbnRzL2NsYXNzL2dlbi1tZXRob2QtbGVuZ3RoLWRm
bHQuanMKLSAgY21kOiBydW5UZXN0MjYyIDpmYWlsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4u
Ly4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4u
Ly4uLy4uLy4uL2hhcm5lc3MvcHJvcGVydHlIZWxwZXIuanMiXSwgW10KKyAgY21kOiBydW5UZXN0
MjYyIDpub3JtYWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQu
anMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9w
cm9wZXJ0eUhlbHBlci5qcyJdLCBbXQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uvc3Rh
dGVtZW50cy9jbGFzcy9nZW4tbWV0aG9kLWxlbmd0aC1kZmx0LmpzCi0gIGNtZDogcnVuVGVzdDI2
MiA6ZmFpbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIs
ICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3Bl
cnR5SGVscGVyLmpzIl0sIFs6c3RyaWN0XQorICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIk5v
RXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8u
Li9oYXJuZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVscGVyLmpz
Il0sIFs6c3RyaWN0XQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uvc3RhdGVtZW50cy9j
bGFzcy9nZW4tbWV0aG9kLXBhcmFtLWRmbHQteWllbGQuanMKICAgY21kOiBydW5UZXN0MjYyIDpu
b3JtYWwsICJTeW50YXhFcnJvciIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAi
Li4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiXSwgW10KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xh
bmd1YWdlL3N0YXRlbWVudHMvY2xhc3MvZ2VuLW1ldGhvZC1wYXJhbS1kZmx0LXlpZWxkLmpzCkBA
IC03NjEzNCw5ICs3NjEzNCw5IEBACiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9zdGF0
ZW1lbnRzL2NsYXNzL2dldHRlci1wYXJhbS1kZmx0LmpzCiAgIGNtZDogcnVuVGVzdDI2MiA6bm9y
bWFsLCAiU3ludGF4RXJyb3IiLCBbIi4uLy4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4u
Ly4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIl0sIFs6c3RyaWN0XQogLSBwYXRoOiB0ZXN0MjYyL3Rl
c3QvbGFuZ3VhZ2Uvc3RhdGVtZW50cy9jbGFzcy9tZXRob2QtbGVuZ3RoLWRmbHQuanMKLSAgY21k
OiBydW5UZXN0MjYyIDpmYWlsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4uLy4uL2hhcm5lc3Mv
YXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4uLy4uLy4uLy4uL2hh
cm5lc3MvcHJvcGVydHlIZWxwZXIuanMiXSwgW10KKyAgY21kOiBydW5UZXN0MjYyIDpub3JtYWws
ICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4v
Li4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBl
ci5qcyJdLCBbXQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uvc3RhdGVtZW50cy9jbGFz
cy9tZXRob2QtbGVuZ3RoLWRmbHQuanMKLSAgY21kOiBydW5UZXN0MjYyIDpmYWlsLCAiTm9FeGNl
cHRpb24iLCBbIi4uLy4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hh
cm5lc3Mvc3RhLmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3MvcHJvcGVydHlIZWxwZXIuanMiXSwg
WzpzdHJpY3RdCisgIGNtZDogcnVuVGVzdDI2MiA6bm9ybWFsLCAiTm9FeGNlcHRpb24iLCBbIi4u
Ly4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpz
IiwgIi4uLy4uLy4uLy4uL2hhcm5lc3MvcHJvcGVydHlIZWxwZXIuanMiXSwgWzpzdHJpY3RdCiAt
IHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9zdGF0ZW1lbnRzL2NsYXNzL21ldGhvZC1wYXJh
bS15aWVsZC5qcwogICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIlN5bnRheEVycm9yIiwgWyIu
Li8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5q
cyJdLCBbXQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uvc3RhdGVtZW50cy9jbGFzcy9t
ZXRob2QtcGFyYW0teWllbGQuanMKQEAgLTc2Mzk0LDkgKzc2Mzk0LDkgQEAKIC0gcGF0aDogdGVz
dDI2Mi90ZXN0L2xhbmd1YWdlL3N0YXRlbWVudHMvY2xhc3Mvc2NvcGUtc3RhdGljLXNldHRlci1w
YXJhbXNib2R5LXZhci1vcGVuLmpzCiAgIGNtZDogcnVuVGVzdDI2MiA6bm9ybWFsLCAiTm9FeGNl
cHRpb24iLCBbIi4uLy4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hh
cm5lc3Mvc3RhLmpzIl0sIFs6c3RyaWN0XQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uv
c3RhdGVtZW50cy9jbGFzcy9zZXR0ZXItbGVuZ3RoLWRmbHQuanMKLSAgY21kOiBydW5UZXN0MjYy
IDpmYWlsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwg
Ii4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3MvcHJvcGVy
dHlIZWxwZXIuanMiXSwgW10KKyAgY21kOiBydW5UZXN0MjYyIDpub3JtYWwsICJOb0V4Y2VwdGlv
biIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVz
cy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbXQog
LSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uvc3RhdGVtZW50cy9jbGFzcy9zZXR0ZXItbGVu
Z3RoLWRmbHQuanMKLSAgY21kOiBydW5UZXN0MjYyIDpmYWlsLCAiTm9FeGNlcHRpb24iLCBbIi4u
Ly4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpz
IiwgIi4uLy4uLy4uLy4uL2hhcm5lc3MvcHJvcGVydHlIZWxwZXIuanMiXSwgWzpzdHJpY3RdCisg
IGNtZDogcnVuVGVzdDI2MiA6bm9ybWFsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4uLy4uL2hh
cm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4uLy4uLy4u
Ly4uL2hhcm5lc3MvcHJvcGVydHlIZWxwZXIuanMiXSwgWzpzdHJpY3RdCiAtIHBhdGg6IHRlc3Qy
NjIvdGVzdC9sYW5ndWFnZS9zdGF0ZW1lbnRzL2NsYXNzL3N0YXRpYy1nZW4tbWV0aG9kLXBhcmFt
LWRmbHQteWllbGQuanMKICAgY21kOiBydW5UZXN0MjYyIDpub3JtYWwsICJTeW50YXhFcnJvciIs
IFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9z
dGEuanMiXSwgW10KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL3N0YXRlbWVudHMvY2xh
c3Mvc3RhdGljLWdlbi1tZXRob2QtcGFyYW0tZGZsdC15aWVsZC5qcwpAQCAtNzY0MDYsOSArNzY0
MDYsOSBAQAogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uvc3RhdGVtZW50cy9jbGFzcy9z
dGF0aWMtbWV0aG9kLWdlbi1ub24tY29uZmlndXJhYmxlLWVyci5qcwogICBjbWQ6IHJ1blRlc3Qy
NjIgOm5vcm1hbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5q
cyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyJdLCBbOnN0cmljdF0KIC0gcGF0aDogdGVz
dDI2Mi90ZXN0L2xhbmd1YWdlL3N0YXRlbWVudHMvY2xhc3Mvc3RhdGljLW1ldGhvZC1sZW5ndGgt
ZGZsdC5qcwotICBjbWQ6IHJ1blRlc3QyNjIgOmZhaWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4v
Li4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAi
Li4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbXQorICBjbWQ6IHJ1blRl
c3QyNjIgOm5vcm1hbCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2Vy
dC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNz
L3Byb3BlcnR5SGVscGVyLmpzIl0sIFtdCiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9z
dGF0ZW1lbnRzL2NsYXNzL3N0YXRpYy1tZXRob2QtbGVuZ3RoLWRmbHQuanMKLSAgY21kOiBydW5U
ZXN0MjYyIDpmYWlsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0
LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mv
cHJvcGVydHlIZWxwZXIuanMiXSwgWzpzdHJpY3RdCisgIGNtZDogcnVuVGVzdDI2MiA6bm9ybWFs
LCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4u
Ly4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3MvcHJvcGVydHlIZWxw
ZXIuanMiXSwgWzpzdHJpY3RdCiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9zdGF0ZW1l
bnRzL2NsYXNzL3N0YXRpYy1tZXRob2Qtbm9uLWNvbmZpZ3VyYWJsZS1lcnIuanMKICAgY21kOiBy
dW5UZXN0MjYyIDpub3JtYWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9h
c3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiXSwgW10KIC0gcGF0aDogdGVz
dDI2Mi90ZXN0L2xhbmd1YWdlL3N0YXRlbWVudHMvY2xhc3Mvc3RhdGljLW1ldGhvZC1ub24tY29u
ZmlndXJhYmxlLWVyci5qcwpAQCAtODMzMjQsOSArODMzMjQsOSBAQAogLSBwYXRoOiB0ZXN0MjYy
L3Rlc3QvbGFuZ3VhZ2Uvc3RhdGVtZW50cy9mdW5jdGlvbi9lYXJseS1wYXJhbXMtc3VwZXItcHJv
cC5qcwogICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIlN5bnRheEVycm9yIiwgWyIuLi8uLi8u
Li8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3N0YS5qcyJdLCBb
OnN0cmljdF0KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL3N0YXRlbWVudHMvZnVuY3Rp
b24vbGVuZ3RoLWRmbHQuanMKLSAgY21kOiBydW5UZXN0MjYyIDpmYWlsLCAiTm9FeGNlcHRpb24i
LCBbIi4uLy4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mv
c3RhLmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3MvcHJvcGVydHlIZWxwZXIuanMiXSwgW10KKyAg
Y21kOiBydW5UZXN0MjYyIDpub3JtYWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFy
bmVzcy9hc3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4v
Li4vaGFybmVzcy9wcm9wZXJ0eUhlbHBlci5qcyJdLCBbXQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3Qv
bGFuZ3VhZ2Uvc3RhdGVtZW50cy9mdW5jdGlvbi9sZW5ndGgtZGZsdC5qcwotICBjbWQ6IHJ1blRl
c3QyNjIgOmZhaWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQu
anMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9w
cm9wZXJ0eUhlbHBlci5qcyJdLCBbOnN0cmljdF0KKyAgY21kOiBydW5UZXN0MjYyIDpub3JtYWws
ICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQuanMiLCAiLi4vLi4v
Li4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9wcm9wZXJ0eUhlbHBl
ci5qcyJdLCBbOnN0cmljdF0KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL3N0YXRlbWVu
dHMvZnVuY3Rpb24vbmFtZS5qcwogICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIk5vRXhjZXB0
aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJu
ZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0sIFtd
CiAtIHBhdGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9zdGF0ZW1lbnRzL2Z1bmN0aW9uL25hbWUu
anMKQEAgLTg0MTI2LDkgKzg0MTI2LDkgQEAKIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdl
L3N0YXRlbWVudHMvZ2VuZXJhdG9ycy9pbnZva2UtYXMtY29uc3RydWN0b3IuanMKICAgY21kOiBy
dW5UZXN0MjYyIDpub3JtYWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9h
c3NlcnQuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiXSwgWzpzdHJpY3RdCiAtIHBh
dGg6IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9zdGF0ZW1lbnRzL2dlbmVyYXRvcnMvbGVuZ3RoLWRm
bHQuanMKLSAgY21kOiBydW5UZXN0MjYyIDpmYWlsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4u
Ly4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4u
Ly4uLy4uLy4uL2hhcm5lc3MvcHJvcGVydHlIZWxwZXIuanMiXSwgW10KKyAgY21kOiBydW5UZXN0
MjYyIDpub3JtYWwsICJOb0V4Y2VwdGlvbiIsIFsiLi4vLi4vLi4vLi4vaGFybmVzcy9hc3NlcnQu
anMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9zdGEuanMiLCAiLi4vLi4vLi4vLi4vaGFybmVzcy9w
cm9wZXJ0eUhlbHBlci5qcyJdLCBbXQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uvc3Rh
dGVtZW50cy9nZW5lcmF0b3JzL2xlbmd0aC1kZmx0LmpzCi0gIGNtZDogcnVuVGVzdDI2MiA6ZmFp
bCwgIk5vRXhjZXB0aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8u
Li8uLi8uLi9oYXJuZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVs
cGVyLmpzIl0sIFs6c3RyaWN0XQorICBjbWQ6IHJ1blRlc3QyNjIgOm5vcm1hbCwgIk5vRXhjZXB0
aW9uIiwgWyIuLi8uLi8uLi8uLi9oYXJuZXNzL2Fzc2VydC5qcyIsICIuLi8uLi8uLi8uLi9oYXJu
ZXNzL3N0YS5qcyIsICIuLi8uLi8uLi8uLi9oYXJuZXNzL3Byb3BlcnR5SGVscGVyLmpzIl0sIFs6
c3RyaWN0XQogLSBwYXRoOiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uvc3RhdGVtZW50cy9nZW5lcmF0
b3JzL2xlbmd0aC1wcm9wZXJ0eS1kZXNjcmlwdG9yLmpzCiAgIGNtZDogcnVuVGVzdDI2MiA6bm9y
bWFsLCAiTm9FeGNlcHRpb24iLCBbIi4uLy4uLy4uLy4uL2hhcm5lc3MvYXNzZXJ0LmpzIiwgIi4u
Ly4uLy4uLy4uL2hhcm5lc3Mvc3RhLmpzIiwgIi4uLy4uLy4uLy4uL2hhcm5lc3MvcHJvcGVydHlI
ZWxwZXIuanMiXSwgW10KIC0gcGF0aDogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL3N0YXRlbWVudHMv
Z2VuZXJhdG9ycy9sZW5ndGgtcHJvcGVydHktZGVzY3JpcHRvci5qcwpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFu
Z2VMb2cKaW5kZXggYTEyZDIzNS4uZGNlNzFlNSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsNTAgQEAKKzIwMTYtMDktMjIgIEpvc2VwaCBQZWNvcmFybyAgPHBlY29yYXJvQGFw
cGxlLmNvbT4KKworICAgICAgICB0ZXN0MjYyOiBGdW5jdGlvbiBsZW5ndGggc2hvdWxkIGJlIG51
bWJlciBvZiBwYXJhbWV0ZXJzIGJlZm9yZSBwYXJhbWV0ZXJzIHdpdGggZGVmYXVsdCB2YWx1ZXMK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2MjM3Nwor
CisgICAgICAgIFJldmlld2VkIGJ5IFNhYW0gQmFyYXRpLgorCisgICAgICAgIGh0dHBzOi8vdGMz
OS5naXRodWIuaW8vZWNtYTI2Mi8jc2VjLWZ1bmN0aW9uLWRlZmluaXRpb25zLXN0YXRpYy1zZW1h
bnRpY3MtZXhwZWN0ZWRhcmd1bWVudGNvdW50CisKKyAgICAgICAgPiBOT1RFOiBUaGUgRXhwZWN0
ZWRBcmd1bWVudENvdW50IG9mIGEgRm9ybWFsUGFyYW1ldGVyTGlzdCBpcyB0aGUgbnVtYmVyIG9m
CisgICAgICAgID4gRm9ybWFsUGFyYW1ldGVycyB0byB0aGUgbGVmdCBvZiBlaXRoZXIgdGhlIHJl
c3QgcGFyYW1ldGVyIG9yIHRoZSBmaXJzdAorICAgICAgICA+IEZvcm1hbFBhcmFtZXRlciB3aXRo
IGFuIEluaXRpYWxpemVyLiBBIEZvcm1hbFBhcmFtZXRlciB3aXRob3V0IGFuCisgICAgICAgID4g
aW5pdGlhbGl6ZXIgaXMgYWxsb3dlZCBhZnRlciB0aGUgZmlyc3QgcGFyYW1ldGVyIHdpdGggYW4g
aW5pdGlhbGl6ZXIKKyAgICAgICAgPiBidXQgc3VjaCBwYXJhbWV0ZXJzIGFyZSBjb25zaWRlcmVk
IHRvIGJlIG9wdGlvbmFsIHdpdGggdW5kZWZpbmVkIGFzCisgICAgICAgID4gdGhlaXIgZGVmYXVs
dCB2YWx1ZS4KKworICAgICAgICBBbG9uZ3NpZGUgdGhlIHBhcmFtZXRlckNvdW50IHZhbHVlLCBt
YWludGFpbiBhIHNlcGFyYXRlIGNvdW50LAorICAgICAgICBmdW5jdGlvbkxlbmd0aCwgd2hpY2gg
d2lsbCBiZSB0aGUgY291bnQgYmVmb3JlIHNlZWluZyBhIHJlc3QgcGFyYW1ldGVyCisgICAgICAg
IG9yIHBhcmFtZXRlciB3aXRoIGEgZGVmYXVsdCB2YWx1ZS4gVGhpcyB3aWxsIGJlIHRoZSBmdW5j
dGlvbidzIGxlbmd0aC4KKworICAgICAgICAqIGJ5dGVjb2RlL1VubGlua2VkQ29kZUJsb2NrLmg6
CisgICAgICAgICogYnl0ZWNvZGUvVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUuY3BwOgorICAg
ICAgICAoSlNDOjpVbmxpbmtlZEZ1bmN0aW9uRXhlY3V0YWJsZTo6VW5saW5rZWRGdW5jdGlvbkV4
ZWN1dGFibGUpOgorICAgICAgICAqIGJ5dGVjb2RlL1VubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxl
Lmg6CisgICAgICAgICogcGFyc2VyL0FTVEJ1aWxkZXIuaDoKKyAgICAgICAgKEpTQzo6QVNUQnVp
bGRlcjo6Y3JlYXRlRnVuY3Rpb25NZXRhZGF0YSk6CisgICAgICAgICogcGFyc2VyL05vZGVzLmNw
cDoKKyAgICAgICAgKEpTQzo6RnVuY3Rpb25NZXRhZGF0YU5vZGU6OkZ1bmN0aW9uTWV0YWRhdGFO
b2RlKToKKyAgICAgICAgKiBwYXJzZXIvTm9kZXMuaDoKKyAgICAgICAgKiBwYXJzZXIvUGFyc2Vy
LmNwcDoKKyAgICAgICAgKEpTQzo6UGFyc2VyPExleGVyVHlwZT46OmlzQXJyb3dGdW5jdGlvblBh
cmFtZXRlcnMpOgorICAgICAgICAoSlNDOjpQYXJzZXI8TGV4ZXJUeXBlPjo6cGFyc2VHZW5lcmF0
b3JGdW5jdGlvblNvdXJjZUVsZW1lbnRzKToKKyAgICAgICAgKEpTQzo6UGFyc2VyPExleGVyVHlw
ZT46OnBhcnNlRm9ybWFsUGFyYW1ldGVycyk6CisgICAgICAgIChKU0M6OlBhcnNlcjxMZXhlclR5
cGU+OjpwYXJzZUZ1bmN0aW9uQm9keSk6CisgICAgICAgIChKU0M6OlBhcnNlcjxMZXhlclR5cGU+
OjpwYXJzZUZ1bmN0aW9uUGFyYW1ldGVycyk6CisgICAgICAgIChKU0M6OlBhcnNlcjxMZXhlclR5
cGU+OjpwYXJzZUZ1bmN0aW9uSW5mbyk6CisgICAgICAgICogcGFyc2VyL1BhcnNlci5oOgorICAg
ICAgICAqIHBhcnNlci9QYXJzZXJGdW5jdGlvbkluZm8uaDoKKyAgICAgICAgKiBwYXJzZXIvU291
cmNlUHJvdmlkZXJDYWNoZUl0ZW0uaDoKKyAgICAgICAgKEpTQzo6U291cmNlUHJvdmlkZXJDYWNo
ZUl0ZW06OlNvdXJjZVByb3ZpZGVyQ2FjaGVJdGVtKToKKyAgICAgICAgKiBwYXJzZXIvU3ludGF4
Q2hlY2tlci5oOgorICAgICAgICAoSlNDOjpTeW50YXhDaGVja2VyOjpjcmVhdGVGdW5jdGlvbk1l
dGFkYXRhKToKKyAgICAgICAgKiBydW50aW1lL0V4ZWN1dGFibGUuaDoKKyAgICAgICAgKiBydW50
aW1lL0pTRnVuY3Rpb24uY3BwOgorICAgICAgICAoSlNDOjpKU0Z1bmN0aW9uOjpjcmVhdGVCdWls
dGluRnVuY3Rpb24pOgorICAgICAgICAoSlNDOjpKU0Z1bmN0aW9uOjpyZWlmeUxlbmd0aCk6CisK
IDIwMTYtMDktMjEgIEpvc2VwaCBQZWNvcmFybyAgPHBlY29yYXJvQGFwcGxlLmNvbT4KIAogICAg
ICAgICBSZW1vdmUgYSBidW5jaCBvZiB1bm5lY2Vzc2FyeSBpbmNsdWRlcwpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkQ29kZUJsb2NrLmggYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRDb2RlQmxvY2suaAppbmRleCA2OWI5
ZDg2Li42OWZmNzk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUv
VW5saW5rZWRDb2RlQmxvY2suaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUv
VW5saW5rZWRDb2RlQmxvY2suaApAQCAtNDcsNyArNDcsNiBAQCBuYW1lc3BhY2UgSlNDIHsKIAog
Y2xhc3MgQnl0ZWNvZGVSZXdyaXRlcjsKIGNsYXNzIERlYnVnZ2VyOwotY2xhc3MgRnVuY3Rpb25N
ZXRhZGF0YU5vZGU7CiBjbGFzcyBGdW5jdGlvbkV4ZWN1dGFibGU7CiBjbGFzcyBQYXJzZXJFcnJv
cjsKIGNsYXNzIFNjcmlwdEV4ZWN1dGFibGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYnl0ZWNvZGUvVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlLmNwcAppbmRl
eCAwNTRkNjNkLi5hZjQyYTg3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0
ZWNvZGUvVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ieXRlY29kZS9VbmxpbmtlZEZ1bmN0aW9uRXhlY3V0YWJsZS5jcHAKQEAgLTg4LDYg
Kzg4LDcgQEAgVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGU6OlVubGlua2VkRnVuY3Rpb25FeGVj
dXRhYmxlKFZNKiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3QKICAgICAsIG1fdHlwZVByb2ZpbGluZ1N0
YXJ0T2Zmc2V0KG5vZGUtPmZ1bmN0aW9uS2V5d29yZFN0YXJ0KCkpCiAgICAgLCBtX3R5cGVQcm9m
aWxpbmdFbmRPZmZzZXQobm9kZS0+c3RhcnRTdGFydE9mZnNldCgpICsgbm9kZS0+c291cmNlKCku
bGVuZ3RoKCkgLSAxKQogICAgICwgbV9wYXJhbWV0ZXJDb3VudChub2RlLT5wYXJhbWV0ZXJDb3Vu
dCgpKQorICAgICwgbV9mdW5jdGlvbkxlbmd0aChub2RlLT5mdW5jdGlvbkxlbmd0aCgpKQogICAg
ICwgbV9mZWF0dXJlcygwKQogICAgICwgbV9pc0luU3RyaWN0Q29udGV4dChub2RlLT5pc0luU3Ry
aWN0Q29udGV4dCgpKQogICAgICwgbV9oYXNDYXB0dXJlZFZhcmlhYmxlcyhmYWxzZSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9VbmxpbmtlZEZ1bmN0aW9uRXhl
Y3V0YWJsZS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkRnVuY3Rp
b25FeGVjdXRhYmxlLmgKaW5kZXggMWUzY2JhZi4uMjcwYzQyNSAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlLmgKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkRnVuY3Rpb25FeGVjdXRh
YmxlLmgKQEAgLTc3LDYgKzc3LDcgQEAgcHVibGljOgogICAgIHZvaWQgc2V0RWNtYU5hbWUoY29u
c3QgSWRlbnRpZmllciYgbmFtZSkgeyBtX2VjbWFOYW1lID0gbmFtZTsgfQogICAgIGNvbnN0IElk
ZW50aWZpZXImIGluZmVycmVkTmFtZSgpIGNvbnN0IHsgcmV0dXJuIG1faW5mZXJyZWROYW1lOyB9
CiAgICAgdW5zaWduZWQgcGFyYW1ldGVyQ291bnQoKSBjb25zdCB7IHJldHVybiBtX3BhcmFtZXRl
ckNvdW50OyB9OworICAgIHVuc2lnbmVkIGZ1bmN0aW9uTGVuZ3RoKCkgY29uc3QgeyByZXR1cm4g
bV9mdW5jdGlvbkxlbmd0aDsgfQogICAgIFNvdXJjZVBhcnNlTW9kZSBwYXJzZU1vZGUoKSBjb25z
dCB7IHJldHVybiBzdGF0aWNfY2FzdDxTb3VyY2VQYXJzZU1vZGU+KG1fc291cmNlUGFyc2VNb2Rl
KTsgfTsKIAogICAgIGNvbnN0IFNvdXJjZUNvZGUmIGNsYXNzU291cmNlKCkgY29uc3QgeyByZXR1
cm4gbV9jbGFzc1NvdXJjZTsgfTsKQEAgLTE1NCw2ICsxNTUsNyBAQCBwcml2YXRlOgogICAgIHVu
c2lnbmVkIG1fdHlwZVByb2ZpbGluZ1N0YXJ0T2Zmc2V0OwogICAgIHVuc2lnbmVkIG1fdHlwZVBy
b2ZpbGluZ0VuZE9mZnNldDsKICAgICB1bnNpZ25lZCBtX3BhcmFtZXRlckNvdW50OworICAgIHVu
c2lnbmVkIG1fZnVuY3Rpb25MZW5ndGg7CiAgICAgQ29kZUZlYXR1cmVzIG1fZmVhdHVyZXM7CiAg
ICAgdW5zaWduZWQgbV9pc0luU3RyaWN0Q29udGV4dCA6IDE7CiAgICAgdW5zaWduZWQgbV9oYXND
YXB0dXJlZFZhcmlhYmxlcyA6IDE7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cGFyc2VyL0FTVEJ1aWxkZXIuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvQVNUQnVp
bGRlci5oCmluZGV4IDFjMTEzYmEuLmJmYmVjZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9wYXJzZXIvQVNUQnVpbGRlci5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9w
YXJzZXIvQVNUQnVpbGRlci5oCkBAIC0zOTQsMTIgKzM5NCwxNSBAQCBwdWJsaWM6CiAgICAgICAg
IGNvbnN0IEpTVG9rZW5Mb2NhdGlvbiYgc3RhcnRMb2NhdGlvbiwgY29uc3QgSlNUb2tlbkxvY2F0
aW9uJiBlbmRMb2NhdGlvbiwgCiAgICAgICAgIHVuc2lnbmVkIHN0YXJ0Q29sdW1uLCB1bnNpZ25l
ZCBlbmRDb2x1bW4sIGludCBmdW5jdGlvbktleXdvcmRTdGFydCwgCiAgICAgICAgIGludCBmdW5j
dGlvbk5hbWVTdGFydCwgaW50IHBhcmFtZXRlcnNTdGFydCwgYm9vbCBpblN0cmljdENvbnRleHQs
IAotICAgICAgICBDb25zdHJ1Y3RvcktpbmQgY29uc3RydWN0b3JLaW5kLCBTdXBlckJpbmRpbmcg
c3VwZXJCaW5kaW5nLCB1bnNpZ25lZCBwYXJhbWV0ZXJDb3VudCwgU291cmNlUGFyc2VNb2RlIG1v
ZGUsIGJvb2wgaXNBcnJvd0Z1bmN0aW9uQm9keUV4cHJlc3Npb24pCisgICAgICAgIENvbnN0cnVj
dG9yS2luZCBjb25zdHJ1Y3RvcktpbmQsIFN1cGVyQmluZGluZyBzdXBlckJpbmRpbmcsCisgICAg
ICAgIHVuc2lnbmVkIHBhcmFtZXRlckNvdW50LCB1bnNpZ25lZCBmdW5jdGlvbkxlbmd0aCwKKyAg
ICAgICAgU291cmNlUGFyc2VNb2RlIG1vZGUsIGJvb2wgaXNBcnJvd0Z1bmN0aW9uQm9keUV4cHJl
c3Npb24pCiAgICAgewogICAgICAgICByZXR1cm4gbmV3IChtX3BhcnNlckFyZW5hKSBGdW5jdGlv
bk1ldGFkYXRhTm9kZSgKICAgICAgICAgICAgIG1fcGFyc2VyQXJlbmEsIHN0YXJ0TG9jYXRpb24s
IGVuZExvY2F0aW9uLCBzdGFydENvbHVtbiwgZW5kQ29sdW1uLCAKICAgICAgICAgICAgIGZ1bmN0
aW9uS2V5d29yZFN0YXJ0LCBmdW5jdGlvbk5hbWVTdGFydCwgcGFyYW1ldGVyc1N0YXJ0LCAKLSAg
ICAgICAgICAgIGluU3RyaWN0Q29udGV4dCwgY29uc3RydWN0b3JLaW5kLCBzdXBlckJpbmRpbmcs
IHBhcmFtZXRlckNvdW50LCBtb2RlLCBpc0Fycm93RnVuY3Rpb25Cb2R5RXhwcmVzc2lvbik7Cisg
ICAgICAgICAgICBpblN0cmljdENvbnRleHQsIGNvbnN0cnVjdG9yS2luZCwgc3VwZXJCaW5kaW5n
LAorICAgICAgICAgICAgcGFyYW1ldGVyQ291bnQsIGZ1bmN0aW9uTGVuZ3RoLCBtb2RlLCBpc0Fy
cm93RnVuY3Rpb25Cb2R5RXhwcmVzc2lvbik7CiAgICAgfQogCiAgICAgRXhwcmVzc2lvbk5vZGUq
IGNyZWF0ZUFycm93RnVuY3Rpb25FeHByKGNvbnN0IEpTVG9rZW5Mb2NhdGlvbiYgbG9jYXRpb24s
IGNvbnN0IFBhcnNlckZ1bmN0aW9uSW5mbzxBU1RCdWlsZGVyPiYgZnVuY3Rpb25JbmZvKQpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Ob2Rlcy5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcGFyc2VyL05vZGVzLmNwcAppbmRleCAzYTA4YjYzLi44MGM2NTdlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL05vZGVzLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL05vZGVzLmNwcApAQCAtMTM1LDcgKzEzNSw3IEBA
IEZ1bmN0aW9uTWV0YWRhdGFOb2RlOjpGdW5jdGlvbk1ldGFkYXRhTm9kZSgKICAgICBQYXJzZXJB
cmVuYSYsIGNvbnN0IEpTVG9rZW5Mb2NhdGlvbiYgc3RhcnRMb2NhdGlvbiwgCiAgICAgY29uc3Qg
SlNUb2tlbkxvY2F0aW9uJiBlbmRMb2NhdGlvbiwgdW5zaWduZWQgc3RhcnRDb2x1bW4sIHVuc2ln
bmVkIGVuZENvbHVtbiwgCiAgICAgaW50IGZ1bmN0aW9uS2V5d29yZFN0YXJ0LCBpbnQgZnVuY3Rp
b25OYW1lU3RhcnQsIGludCBwYXJhbWV0ZXJzU3RhcnQsIGJvb2wgaXNJblN0cmljdENvbnRleHQs
IAotICAgIENvbnN0cnVjdG9yS2luZCBjb25zdHJ1Y3RvcktpbmQsIFN1cGVyQmluZGluZyBzdXBl
ckJpbmRpbmcsIHVuc2lnbmVkIHBhcmFtZXRlckNvdW50LCBTb3VyY2VQYXJzZU1vZGUgbW9kZSwg
Ym9vbCBpc0Fycm93RnVuY3Rpb25Cb2R5RXhwcmVzc2lvbikKKyAgICBDb25zdHJ1Y3RvcktpbmQg
Y29uc3RydWN0b3JLaW5kLCBTdXBlckJpbmRpbmcgc3VwZXJCaW5kaW5nLCB1bnNpZ25lZCBwYXJh
bWV0ZXJDb3VudCwgdW5zaWduZWQgZnVuY3Rpb25MZW5ndGgsIFNvdXJjZVBhcnNlTW9kZSBtb2Rl
LCBib29sIGlzQXJyb3dGdW5jdGlvbkJvZHlFeHByZXNzaW9uKQogICAgICAgICA6IE5vZGUoZW5k
TG9jYXRpb24pCiAgICAgICAgICwgbV9zdGFydENvbHVtbihzdGFydENvbHVtbikKICAgICAgICAg
LCBtX2VuZENvbHVtbihlbmRDb2x1bW4pCkBAIC0xNDQsNiArMTQ0LDcgQEAgRnVuY3Rpb25NZXRh
ZGF0YU5vZGU6OkZ1bmN0aW9uTWV0YWRhdGFOb2RlKAogICAgICAgICAsIG1fcGFyYW1ldGVyc1N0
YXJ0KHBhcmFtZXRlcnNTdGFydCkKICAgICAgICAgLCBtX3N0YXJ0U3RhcnRPZmZzZXQoc3RhcnRM
b2NhdGlvbi5zdGFydE9mZnNldCkKICAgICAgICAgLCBtX3BhcmFtZXRlckNvdW50KHBhcmFtZXRl
ckNvdW50KQorICAgICAgICAsIG1fZnVuY3Rpb25MZW5ndGgoZnVuY3Rpb25MZW5ndGgpCiAgICAg
ICAgICwgbV9wYXJzZU1vZGUobW9kZSkKICAgICAgICAgLCBtX2lzSW5TdHJpY3RDb250ZXh0KGlz
SW5TdHJpY3RDb250ZXh0KQogICAgICAgICAsIG1fc3VwZXJCaW5kaW5nKHN0YXRpY19jYXN0PHVu
c2lnbmVkPihzdXBlckJpbmRpbmcpKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3BhcnNlci9Ob2Rlcy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Ob2Rlcy5oCmlu
ZGV4IDYxZjJhYzMuLmVlZmY2YTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9w
YXJzZXIvTm9kZXMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL05vZGVzLmgK
QEAgLTE4NTksNyArMTg1OSw4IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICAgICAgUGFyc2Vy
QXJlbmEmLCBjb25zdCBKU1Rva2VuTG9jYXRpb24mIHN0YXJ0LCBjb25zdCBKU1Rva2VuTG9jYXRp
b24mIGVuZCwgCiAgICAgICAgICAgICB1bnNpZ25lZCBzdGFydENvbHVtbiwgdW5zaWduZWQgZW5k
Q29sdW1uLCBpbnQgZnVuY3Rpb25LZXl3b3JkU3RhcnQsIAogICAgICAgICAgICAgaW50IGZ1bmN0
aW9uTmFtZVN0YXJ0LCBpbnQgcGFyYW1ldGVyc1N0YXJ0LCBib29sIGlzSW5TdHJpY3RDb250ZXh0
LCAKLSAgICAgICAgICAgIENvbnN0cnVjdG9yS2luZCwgU3VwZXJCaW5kaW5nLCB1bnNpZ25lZCwg
U291cmNlUGFyc2VNb2RlLCBib29sIGlzQXJyb3dGdW5jdGlvbkJvZHlFeHByZXNzaW9uKTsKKyAg
ICAgICAgICAgIENvbnN0cnVjdG9yS2luZCwgU3VwZXJCaW5kaW5nLCB1bnNpZ25lZCBwYXJhbWV0
ZXJDb3VudCwgdW5zaWduZWQgZnVuY3Rpb25MZW5ndGgsCisgICAgICAgICAgICBTb3VyY2VQYXJz
ZU1vZGUsIGJvb2wgaXNBcnJvd0Z1bmN0aW9uQm9keUV4cHJlc3Npb24pOwogCiAgICAgICAgIHZv
aWQgZmluaXNoUGFyc2luZyhjb25zdCBTb3VyY2VDb2RlJiwgY29uc3QgSWRlbnRpZmllciYsIEZ1
bmN0aW9uTW9kZSk7CiAgICAgICAgIApAQCAtMTg3OCw2ICsxODc5LDcgQEAgbmFtZXNwYWNlIEpT
QyB7CiAgICAgICAgIHVuc2lnbmVkIHN0YXJ0Q29sdW1uKCkgY29uc3QgeyByZXR1cm4gbV9zdGFy
dENvbHVtbjsgfQogICAgICAgICB1bnNpZ25lZCBlbmRDb2x1bW4oKSBjb25zdCB7IHJldHVybiBt
X2VuZENvbHVtbjsgfQogICAgICAgICB1bnNpZ25lZCBwYXJhbWV0ZXJDb3VudCgpIGNvbnN0IHsg
cmV0dXJuIG1fcGFyYW1ldGVyQ291bnQ7IH0KKyAgICAgICAgdW5zaWduZWQgZnVuY3Rpb25MZW5n
dGgoKSBjb25zdCB7IHJldHVybiBtX2Z1bmN0aW9uTGVuZ3RoOyB9CiAgICAgICAgIFNvdXJjZVBh
cnNlTW9kZSBwYXJzZU1vZGUoKSBjb25zdCB7IHJldHVybiBtX3BhcnNlTW9kZTsgfQogCiAgICAg
ICAgIHZvaWQgc2V0RW5kUG9zaXRpb24oSlNUZXh0UG9zaXRpb24pOwpAQCAtMTkxNCw2ICsxOTE2
LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgICAgIFNvdXJjZUNvZGUgbV9jbGFzc1NvdXJjZTsK
ICAgICAgICAgaW50IG1fc3RhcnRTdGFydE9mZnNldDsKICAgICAgICAgdW5zaWduZWQgbV9wYXJh
bWV0ZXJDb3VudDsKKyAgICAgICAgdW5zaWduZWQgbV9mdW5jdGlvbkxlbmd0aDsKICAgICAgICAg
aW50IG1fbGFzdExpbmU7CiAgICAgICAgIFNvdXJjZVBhcnNlTW9kZSBtX3BhcnNlTW9kZTsKICAg
ICAgICAgdW5zaWduZWQgbV9pc0luU3RyaWN0Q29udGV4dCA6IDE7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNlci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcGFyc2VyL1BhcnNlci5jcHAKaW5kZXggYmE3ODE3My4uZTEzMDA1NCAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9QYXJzZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyLmNwcApAQCAtMzc4LDcgKzM3OCw4IEBAIGJvb2wgUGFy
c2VyPExleGVyVHlwZT46OmlzQXJyb3dGdW5jdGlvblBhcmFtZXRlcnMoKQogICAgICAgICAgICAg
ZmFrZVNjb3BlLT5zZXRTb3VyY2VQYXJzZU1vZGUoU291cmNlUGFyc2VNb2RlOjpBcnJvd0Z1bmN0
aW9uTW9kZSk7CiAKICAgICAgICAgICAgIHVuc2lnbmVkIHBhcmFtZXRlcnNDb3VudCA9IDA7Ci0g
ICAgICAgICAgICBpc0Fycm93RnVuY3Rpb24gPSBwYXJzZUZvcm1hbFBhcmFtZXRlcnMoc3ludGF4
Q2hlY2tlciwgc3ludGF4Q2hlY2tlci5jcmVhdGVGb3JtYWxQYXJhbWV0ZXJMaXN0KCksIHBhcmFt
ZXRlcnNDb3VudCkgJiYgY29uc3VtZShDTE9TRVBBUkVOKSAmJiBtYXRjaChBUlJPV0ZVTkNUSU9O
KTsKKyAgICAgICAgICAgIHVuc2lnbmVkIGZ1bmN0aW9uTGVuZ3RoID0gMDsKKyAgICAgICAgICAg
IGlzQXJyb3dGdW5jdGlvbiA9IHBhcnNlRm9ybWFsUGFyYW1ldGVycyhzeW50YXhDaGVja2VyLCBz
eW50YXhDaGVja2VyLmNyZWF0ZUZvcm1hbFBhcmFtZXRlckxpc3QoKSwgcGFyYW1ldGVyc0NvdW50
LCBmdW5jdGlvbkxlbmd0aCkgJiYgY29uc3VtZShDTE9TRVBBUkVOKSAmJiBtYXRjaChBUlJPV0ZV
TkNUSU9OKTsKICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgIHBvcFNjb3BlKGZha2VTY29w
ZSwgc3ludGF4Q2hlY2tlci5OZWVkc0ZyZWVWYXJpYWJsZUluZm8pOwogICAgICAgICB9CkBAIC01
MjUsNyArNTI2LDcgQEAgdGVtcGxhdGUgPGNsYXNzIFRyZWVCdWlsZGVyPiBUcmVlU291cmNlRWxl
bWVudHMgUGFyc2VyPExleGVyVHlwZT46OnBhcnNlR2VuZXJhdG8KICAgICAgICAgZmFpbElmRmFs
c2UocGFyc2VTb3VyY2VFbGVtZW50cyhnZW5lcmF0b3JGdW5jdGlvbkNvbnRleHQsIG1vZGUpLCAi
Q2Fubm90IHBhcnNlIHRoZSBib2R5IG9mIGEgZ2VuZXJhdG9yIik7CiAgICAgICAgIHBvcFNjb3Bl
KGdlbmVyYXRvckJvZHlTY29wZSwgVHJlZUJ1aWxkZXI6Ok5lZWRzRnJlZVZhcmlhYmxlSW5mbyk7
CiAgICAgfQotICAgIGluZm8uYm9keSA9IGNvbnRleHQuY3JlYXRlRnVuY3Rpb25NZXRhZGF0YShz
dGFydExvY2F0aW9uLCB0b2tlbkxvY2F0aW9uKCksIHN0YXJ0Q29sdW1uLCB0b2tlbkNvbHVtbigp
LCBmdW5jdGlvbktleXdvcmRTdGFydCwgZnVuY3Rpb25OYW1lU3RhcnQsIHBhcmFtZXRlcnNTdGFy
dCwgc3RyaWN0TW9kZSgpLCBDb25zdHJ1Y3RvcktpbmQ6Ok5vbmUsIG1fc3VwZXJCaW5kaW5nLCBp
bmZvLnBhcmFtZXRlckNvdW50LCBTb3VyY2VQYXJzZU1vZGU6OkdlbmVyYXRvckJvZHlNb2RlLCBm
YWxzZSk7CisgICAgaW5mby5ib2R5ID0gY29udGV4dC5jcmVhdGVGdW5jdGlvbk1ldGFkYXRhKHN0
YXJ0TG9jYXRpb24sIHRva2VuTG9jYXRpb24oKSwgc3RhcnRDb2x1bW4sIHRva2VuQ29sdW1uKCks
IGZ1bmN0aW9uS2V5d29yZFN0YXJ0LCBmdW5jdGlvbk5hbWVTdGFydCwgcGFyYW1ldGVyc1N0YXJ0
LCBzdHJpY3RNb2RlKCksIENvbnN0cnVjdG9yS2luZDo6Tm9uZSwgbV9zdXBlckJpbmRpbmcsIGlu
Zm8ucGFyYW1ldGVyQ291bnQsIGluZm8uZnVuY3Rpb25MZW5ndGgsIFNvdXJjZVBhcnNlTW9kZTo6
R2VuZXJhdG9yQm9keU1vZGUsIGZhbHNlKTsKIAogICAgIGluZm8uZW5kTGluZSA9IHRva2VuTGlu
ZSgpOwogICAgIGluZm8uZW5kT2Zmc2V0ID0gbV90b2tlbi5tX2RhdGEub2Zmc2V0OwpAQCAtMTc0
Myw3ICsxNzQ0LDcgQEAgdGVtcGxhdGUgPGNsYXNzIFRyZWVCdWlsZGVyPiBUcmVlU3RhdGVtZW50
IFBhcnNlcjxMZXhlclR5cGU+OjpwYXJzZVN0YXRlbWVudChUcmUKIH0KIAogdGVtcGxhdGUgPHR5
cGVuYW1lIExleGVyVHlwZT4KLXRlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4gYm9vbCBQYXJz
ZXI8TGV4ZXJUeXBlPjo6cGFyc2VGb3JtYWxQYXJhbWV0ZXJzKFRyZWVCdWlsZGVyJiBjb250ZXh0
LCBUcmVlRm9ybWFsUGFyYW1ldGVyTGlzdCBsaXN0LCB1bnNpZ25lZCYgcGFyYW1ldGVyQ291bnQp
Cit0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXI+IGJvb2wgUGFyc2VyPExleGVyVHlwZT46OnBh
cnNlRm9ybWFsUGFyYW1ldGVycyhUcmVlQnVpbGRlciYgY29udGV4dCwgVHJlZUZvcm1hbFBhcmFt
ZXRlckxpc3QgbGlzdCwgdW5zaWduZWQmIHBhcmFtZXRlckNvdW50LCB1bnNpZ25lZCYgZnVuY3Rp
b25MZW5ndGgpCiB7CiAjZGVmaW5lIGZhaWxJZkR1cGxpY2F0ZUlmVmlvbGF0aW9uKCkgXAogICAg
IGlmIChkdXBsaWNhdGVQYXJhbWV0ZXIpIHtcCkBAIC0xNzgzLDggKzE3ODQsMTEgQEAgdGVtcGxh
dGUgPGNsYXNzIFRyZWVCdWlsZGVyPiBib29sIFBhcnNlcjxMZXhlclR5cGU+OjpwYXJzZUZvcm1h
bFBhcmFtZXRlcnMoVHJlZUIKICAgICAgICAgaWYgKGlzUmVzdFBhcmFtZXRlciB8fCBkZWZhdWx0
VmFsdWUgfHwgaGFzRGVzdHJ1Y3R1cmluZ1BhdHRlcm4pCiAgICAgICAgICAgICBjdXJyZW50U2Nv
cGUoKS0+c2V0SGFzTm9uU2ltcGxlUGFyYW1ldGVyTGlzdCgpOwogICAgICAgICBjb250ZXh0LmFw
cGVuZFBhcmFtZXRlcihsaXN0LCBwYXJhbWV0ZXIsIGRlZmF1bHRWYWx1ZSk7Ci0gICAgICAgIGlm
ICghaXNSZXN0UGFyYW1ldGVyKQorICAgICAgICBpZiAoIWlzUmVzdFBhcmFtZXRlcikgewogICAg
ICAgICAgICAgcGFyYW1ldGVyQ291bnQrKzsKKyAgICAgICAgICAgIGlmICghaGFzRGVmYXVsdFBh
cmFtZXRlclZhbHVlcykKKyAgICAgICAgICAgICAgICBmdW5jdGlvbkxlbmd0aCsrOworICAgICAg
ICB9CiAgICAgfSB3aGlsZSAoIWlzUmVzdFBhcmFtZXRlciAmJiBjb25zdW1lKENPTU1BKSk7CiAK
ICAgICByZXR1cm4gdHJ1ZTsKQEAgLTE3OTMsMTUgKzE3OTcsMTUgQEAgdGVtcGxhdGUgPGNsYXNz
IFRyZWVCdWlsZGVyPiBib29sIFBhcnNlcjxMZXhlclR5cGU+OjpwYXJzZUZvcm1hbFBhcmFtZXRl
cnMoVHJlZUIKIAogdGVtcGxhdGUgPHR5cGVuYW1lIExleGVyVHlwZT4KIHRlbXBsYXRlIDxjbGFz
cyBUcmVlQnVpbGRlcj4gVHJlZUZ1bmN0aW9uQm9keSBQYXJzZXI8TGV4ZXJUeXBlPjo6cGFyc2VG
dW5jdGlvbkJvZHkoCi0gICAgVHJlZUJ1aWxkZXImIGNvbnRleHQsIFN5bnRheENoZWNrZXImIHN5
bnRheENoZWNrZXIsIGNvbnN0IEpTVG9rZW5Mb2NhdGlvbiYgc3RhcnRMb2NhdGlvbiwgaW50IHN0
YXJ0Q29sdW1uLCBpbnQgZnVuY3Rpb25LZXl3b3JkU3RhcnQsIGludCBmdW5jdGlvbk5hbWVTdGFy
dCwgaW50IHBhcmFtZXRlcnNTdGFydCwgCi0gICAgQ29uc3RydWN0b3JLaW5kIGNvbnN0cnVjdG9y
S2luZCwgU3VwZXJCaW5kaW5nIHN1cGVyQmluZGluZywgRnVuY3Rpb25Cb2R5VHlwZSBib2R5VHlw
ZSwgdW5zaWduZWQgcGFyYW1ldGVyQ291bnQsIFNvdXJjZVBhcnNlTW9kZSBwYXJzZU1vZGUpCisg
ICAgVHJlZUJ1aWxkZXImIGNvbnRleHQsIFN5bnRheENoZWNrZXImIHN5bnRheENoZWNrZXIsIGNv
bnN0IEpTVG9rZW5Mb2NhdGlvbiYgc3RhcnRMb2NhdGlvbiwgaW50IHN0YXJ0Q29sdW1uLCBpbnQg
ZnVuY3Rpb25LZXl3b3JkU3RhcnQsIGludCBmdW5jdGlvbk5hbWVTdGFydCwgaW50IHBhcmFtZXRl
cnNTdGFydCwKKyAgICBDb25zdHJ1Y3RvcktpbmQgY29uc3RydWN0b3JLaW5kLCBTdXBlckJpbmRp
bmcgc3VwZXJCaW5kaW5nLCBGdW5jdGlvbkJvZHlUeXBlIGJvZHlUeXBlLCB1bnNpZ25lZCBwYXJh
bWV0ZXJDb3VudCwgdW5zaWduZWQgZnVuY3Rpb25MZW5ndGgsIFNvdXJjZVBhcnNlTW9kZSBwYXJz
ZU1vZGUpCiB7CiAgICAgYm9vbCBpc0Fycm93RnVuY3Rpb25Cb2R5RXhwcmVzc2lvbiA9IGJvZHlU
eXBlID09IEFycm93RnVuY3Rpb25Cb2R5RXhwcmVzc2lvbjsKICAgICBpZiAoIWlzQXJyb3dGdW5j
dGlvbkJvZHlFeHByZXNzaW9uKSB7CiAgICAgICAgIG5leHQoKTsKICAgICAgICAgaWYgKG1hdGNo
KENMT1NFQlJBQ0UpKSB7CiAgICAgICAgICAgICB1bnNpZ25lZCBlbmRDb2x1bW4gPSB0b2tlbkNv
bHVtbigpOwotICAgICAgICAgICAgcmV0dXJuIGNvbnRleHQuY3JlYXRlRnVuY3Rpb25NZXRhZGF0
YShzdGFydExvY2F0aW9uLCB0b2tlbkxvY2F0aW9uKCksIHN0YXJ0Q29sdW1uLCBlbmRDb2x1bW4s
IGZ1bmN0aW9uS2V5d29yZFN0YXJ0LCBmdW5jdGlvbk5hbWVTdGFydCwgcGFyYW1ldGVyc1N0YXJ0
LCBzdHJpY3RNb2RlKCksIGNvbnN0cnVjdG9yS2luZCwgc3VwZXJCaW5kaW5nLCBwYXJhbWV0ZXJD
b3VudCwgcGFyc2VNb2RlLCBpc0Fycm93RnVuY3Rpb25Cb2R5RXhwcmVzc2lvbik7CisgICAgICAg
ICAgICByZXR1cm4gY29udGV4dC5jcmVhdGVGdW5jdGlvbk1ldGFkYXRhKHN0YXJ0TG9jYXRpb24s
IHRva2VuTG9jYXRpb24oKSwgc3RhcnRDb2x1bW4sIGVuZENvbHVtbiwgZnVuY3Rpb25LZXl3b3Jk
U3RhcnQsIGZ1bmN0aW9uTmFtZVN0YXJ0LCBwYXJhbWV0ZXJzU3RhcnQsIHN0cmljdE1vZGUoKSwg
Y29uc3RydWN0b3JLaW5kLCBzdXBlckJpbmRpbmcsIHBhcmFtZXRlckNvdW50LCBmdW5jdGlvbkxl
bmd0aCwgcGFyc2VNb2RlLCBpc0Fycm93RnVuY3Rpb25Cb2R5RXhwcmVzc2lvbik7CiAgICAgICAg
IH0KICAgICB9CiAKQEAgLTE4MTIsNyArMTgxNiw3IEBAIHRlbXBsYXRlIDxjbGFzcyBUcmVlQnVp
bGRlcj4gVHJlZUZ1bmN0aW9uQm9keSBQYXJzZXI8TGV4ZXJUeXBlPjo6cGFyc2VGdW5jdGlvbkJv
CiAgICAgZWxzZQogICAgICAgICBmYWlsSWZGYWxzZShwYXJzZVNvdXJjZUVsZW1lbnRzKHN5bnRh
eENoZWNrZXIsIENoZWNrRm9yU3RyaWN0TW9kZSksIGJvZHlUeXBlID09IFN0YW5kYXJkRnVuY3Rp
b25Cb2R5QmxvY2sgPyAiQ2Fubm90IHBhcnNlIGJvZHkgb2YgdGhpcyBmdW5jdGlvbiIgOiAiQ2Fu
bm90IHBhcnNlIGJvZHkgb2YgdGhpcyBhcnJvdyBmdW5jdGlvbiIpOwogICAgIHVuc2lnbmVkIGVu
ZENvbHVtbiA9IHRva2VuQ29sdW1uKCk7Ci0gICAgcmV0dXJuIGNvbnRleHQuY3JlYXRlRnVuY3Rp
b25NZXRhZGF0YShzdGFydExvY2F0aW9uLCB0b2tlbkxvY2F0aW9uKCksIHN0YXJ0Q29sdW1uLCBl
bmRDb2x1bW4sIGZ1bmN0aW9uS2V5d29yZFN0YXJ0LCBmdW5jdGlvbk5hbWVTdGFydCwgcGFyYW1l
dGVyc1N0YXJ0LCBzdHJpY3RNb2RlKCksIGNvbnN0cnVjdG9yS2luZCwgc3VwZXJCaW5kaW5nLCBw
YXJhbWV0ZXJDb3VudCwgcGFyc2VNb2RlLCBpc0Fycm93RnVuY3Rpb25Cb2R5RXhwcmVzc2lvbik7
CisgICAgcmV0dXJuIGNvbnRleHQuY3JlYXRlRnVuY3Rpb25NZXRhZGF0YShzdGFydExvY2F0aW9u
LCB0b2tlbkxvY2F0aW9uKCksIHN0YXJ0Q29sdW1uLCBlbmRDb2x1bW4sIGZ1bmN0aW9uS2V5d29y
ZFN0YXJ0LCBmdW5jdGlvbk5hbWVTdGFydCwgcGFyYW1ldGVyc1N0YXJ0LCBzdHJpY3RNb2RlKCks
IGNvbnN0cnVjdG9yS2luZCwgc3VwZXJCaW5kaW5nLCBwYXJhbWV0ZXJDb3VudCwgZnVuY3Rpb25M
ZW5ndGgsIHBhcnNlTW9kZSwgaXNBcnJvd0Z1bmN0aW9uQm9keUV4cHJlc3Npb24pOwogfQogCiBz
dGF0aWMgY29uc3QgY2hhciogc3RyaW5nRm9yRnVuY3Rpb25Nb2RlKFNvdXJjZVBhcnNlTW9kZSBt
b2RlKQpAQCAtMTg1NiwxNCArMTg2MCwxNiBAQCB0ZW1wbGF0ZSA8dHlwZW5hbWUgTGV4ZXJUeXBl
PiB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXIsIGNsYXNzIEZ1bmN0aW9uSW5mb1R5cAogICAg
ICAgICAgICAgaWYgKG1hdGNoKE9QRU5QQVJFTikpIHsKICAgICAgICAgICAgICAgICBuZXh0KCk7
CiAgICAgICAgICAgICAgICAgCi0gICAgICAgICAgICAgICAgaWYgKG1hdGNoKENMT1NFUEFSRU4p
KQorICAgICAgICAgICAgICAgIGlmIChtYXRjaChDTE9TRVBBUkVOKSkgewogICAgICAgICAgICAg
ICAgICAgICBmdW5jdGlvbkluZm8ucGFyYW1ldGVyQ291bnQgPSAwOwotICAgICAgICAgICAgICAg
IGVsc2UKLSAgICAgICAgICAgICAgICAgICAgZmFpbElmRmFsc2UocGFyc2VGb3JtYWxQYXJhbWV0
ZXJzKGNvbnRleHQsIHBhcmFtZXRlckxpc3QsIGZ1bmN0aW9uSW5mby5wYXJhbWV0ZXJDb3VudCks
ICJDYW5ub3QgcGFyc2UgcGFyYW1ldGVycyBmb3IgdGhpcyAiLCBzdHJpbmdGb3JGdW5jdGlvbk1v
ZGUobW9kZSkpOworICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbkluZm8uZnVuY3Rpb25MZW5n
dGggPSAwOworICAgICAgICAgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgICAgICAgICBmYWls
SWZGYWxzZShwYXJzZUZvcm1hbFBhcmFtZXRlcnMoY29udGV4dCwgcGFyYW1ldGVyTGlzdCwgZnVu
Y3Rpb25JbmZvLnBhcmFtZXRlckNvdW50LCBmdW5jdGlvbkluZm8uZnVuY3Rpb25MZW5ndGgpLCAi
Q2Fubm90IHBhcnNlIHBhcmFtZXRlcnMgZm9yIHRoaXMgIiwgc3RyaW5nRm9yRnVuY3Rpb25Nb2Rl
KG1vZGUpKTsKICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICBjb25zdW1lT3JGYWls
KENMT1NFUEFSRU4sICJFeHBlY3RlZCBhICcpJyBvciBhICcsJyBhZnRlciBhIHBhcmFtZXRlciBk
ZWNsYXJhdGlvbiIpOwogICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICBmdW5j
dGlvbkluZm8ucGFyYW1ldGVyQ291bnQgPSAxOworICAgICAgICAgICAgICAgIGZ1bmN0aW9uSW5m
by5mdW5jdGlvbkxlbmd0aCA9IDE7CiAgICAgICAgICAgICAgICAgYXV0byBwYXJhbWV0ZXIgPSBw
YXJzZURlc3RydWN0dXJpbmdQYXR0ZXJuKGNvbnRleHQsIERlc3RydWN0dXJpbmdLaW5kOjpEZXN0
cnVjdHVyZVRvUGFyYW1ldGVycywgRXhwb3J0VHlwZTo6Tm90RXhwb3J0ZWQpOwogICAgICAgICAg
ICAgICAgIGZhaWxJZkZhbHNlKHBhcmFtZXRlciwgIkNhbm5vdCBwYXJzZSBwYXJhbWV0ZXIgcGF0
dGVybiIpOwogICAgICAgICAgICAgICAgIGNvbnRleHQuYXBwZW5kUGFyYW1ldGVyKHBhcmFtZXRl
ckxpc3QsIHBhcmFtZXRlciwgMCk7CkBAIC0xODgxLDYgKzE4ODcsNyBAQCB0ZW1wbGF0ZSA8dHlw
ZW5hbWUgTGV4ZXJUeXBlPiB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXIsIGNsYXNzIEZ1bmN0
aW9uSW5mb1R5cAogICAgIGlmIChtb2RlID09IFNvdXJjZVBhcnNlTW9kZTo6R2V0dGVyTW9kZSkg
ewogICAgICAgICBjb25zdW1lT3JGYWlsKENMT1NFUEFSRU4sICJnZXR0ZXIgZnVuY3Rpb25zIG11
c3QgaGF2ZSBubyBwYXJhbWV0ZXJzIik7CiAgICAgICAgIGZ1bmN0aW9uSW5mby5wYXJhbWV0ZXJD
b3VudCA9IDA7CisgICAgICAgIGZ1bmN0aW9uSW5mby5mdW5jdGlvbkxlbmd0aCA9IDA7CiAgICAg
fSBlbHNlIGlmIChtb2RlID09IFNvdXJjZVBhcnNlTW9kZTo6U2V0dGVyTW9kZSkgewogICAgICAg
ICBmYWlsSWZUcnVlKG1hdGNoKENMT1NFUEFSRU4pLCAic2V0dGVyIGZ1bmN0aW9ucyBtdXN0IGhh
dmUgb25lIHBhcmFtZXRlciIpOwogICAgICAgICBjb25zdCBJZGVudGlmaWVyKiBkdXBsaWNhdGVQ
YXJhbWV0ZXIgPSBudWxscHRyOwpAQCAtMTg5MSwxMyArMTg5OCwxNSBAQCB0ZW1wbGF0ZSA8dHlw
ZW5hbWUgTGV4ZXJUeXBlPiB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXIsIGNsYXNzIEZ1bmN0
aW9uSW5mb1R5cAogICAgICAgICBzZW1hbnRpY0ZhaWxJZlRydWUoZHVwbGljYXRlUGFyYW1ldGVy
ICYmIGRlZmF1bHRWYWx1ZSwgIkR1cGxpY2F0ZSBwYXJhbWV0ZXIgJyIsIGR1cGxpY2F0ZVBhcmFt
ZXRlci0+aW1wbCgpLCAiJyBub3QgYWxsb3dlZCBpbiBmdW5jdGlvbiB3aXRoIGRlZmF1bHQgcGFy
YW1ldGVyIHZhbHVlcyIpOwogICAgICAgICBjb250ZXh0LmFwcGVuZFBhcmFtZXRlcihwYXJhbWV0
ZXJMaXN0LCBwYXJhbWV0ZXIsIGRlZmF1bHRWYWx1ZSk7CiAgICAgICAgIGZ1bmN0aW9uSW5mby5w
YXJhbWV0ZXJDb3VudCA9IDE7CisgICAgICAgIGZ1bmN0aW9uSW5mby5mdW5jdGlvbkxlbmd0aCA9
IGRlZmF1bHRWYWx1ZSA/IDAgOiAxOwogICAgICAgICBmYWlsSWZUcnVlKG1hdGNoKENPTU1BKSwg
InNldHRlciBmdW5jdGlvbnMgbXVzdCBoYXZlIG9uZSBwYXJhbWV0ZXIiKTsKICAgICAgICAgY29u
c3VtZU9yRmFpbChDTE9TRVBBUkVOLCAiRXhwZWN0ZWQgYSAnKScgYWZ0ZXIgYSBwYXJhbWV0ZXIg
ZGVjbGFyYXRpb24iKTsKICAgICB9IGVsc2UgewotICAgICAgICBpZiAobWF0Y2goQ0xPU0VQQVJF
TikpCisgICAgICAgIGlmIChtYXRjaChDTE9TRVBBUkVOKSkgewogICAgICAgICAgICAgZnVuY3Rp
b25JbmZvLnBhcmFtZXRlckNvdW50ID0gMDsKLSAgICAgICAgZWxzZQotICAgICAgICAgICAgZmFp
bElmRmFsc2UocGFyc2VGb3JtYWxQYXJhbWV0ZXJzKGNvbnRleHQsIHBhcmFtZXRlckxpc3QsIGZ1
bmN0aW9uSW5mby5wYXJhbWV0ZXJDb3VudCksICJDYW5ub3QgcGFyc2UgcGFyYW1ldGVycyBmb3Ig
dGhpcyAiLCBzdHJpbmdGb3JGdW5jdGlvbk1vZGUobW9kZSkpOworICAgICAgICAgICAgZnVuY3Rp
b25JbmZvLmZ1bmN0aW9uTGVuZ3RoID0gMDsKKyAgICAgICAgfSBlbHNlCisgICAgICAgICAgICBm
YWlsSWZGYWxzZShwYXJzZUZvcm1hbFBhcmFtZXRlcnMoY29udGV4dCwgcGFyYW1ldGVyTGlzdCwg
ZnVuY3Rpb25JbmZvLnBhcmFtZXRlckNvdW50LCBmdW5jdGlvbkluZm8uZnVuY3Rpb25MZW5ndGgp
LCAiQ2Fubm90IHBhcnNlIHBhcmFtZXRlcnMgZm9yIHRoaXMgIiwgc3RyaW5nRm9yRnVuY3Rpb25N
b2RlKG1vZGUpKTsKICAgICAgICAgY29uc3VtZU9yRmFpbChDTE9TRVBBUkVOLCAiRXhwZWN0ZWQg
YSAnKScgb3IgYSAnLCcgYWZ0ZXIgYSBwYXJhbWV0ZXIgZGVjbGFyYXRpb24iKTsKICAgICB9CiAK
QEAgLTE5OTAsOSArMTk5OSwxMiBAQCB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXI+IGJvb2wg
UGFyc2VyPExleGVyVHlwZT46OnBhcnNlRnVuY3Rpb25JbmZvKFRyZWVCdWlsZAogICAgICAgICAg
ICAgZnVuY3Rpb25JbmZvLmJvZHkgPSBjb250ZXh0LmNyZWF0ZUZ1bmN0aW9uTWV0YWRhdGEoCiAg
ICAgICAgICAgICAgICAgc3RhcnRMb2NhdGlvbiwgZW5kTG9jYXRpb24sIHN0YXJ0Q29sdW1uLCBi
b2R5RW5kQ29sdW1uLCAKICAgICAgICAgICAgICAgICBmdW5jdGlvbktleXdvcmRTdGFydCwgZnVu
Y3Rpb25OYW1lU3RhcnQsIHBhcmFtZXRlcnNTdGFydCwgCi0gICAgICAgICAgICAgICAgY2FjaGVk
SW5mby0+c3RyaWN0TW9kZSwgY29uc3RydWN0b3JLaW5kLCBleHBlY3RlZFN1cGVyQmluZGluZywg
Y2FjaGVkSW5mby0+cGFyYW1ldGVyQ291bnQsIG1vZGUsIGZ1bmN0aW9uQm9keVR5cGUgPT0gQXJy
b3dGdW5jdGlvbkJvZHlFeHByZXNzaW9uKTsKKyAgICAgICAgICAgICAgICBjYWNoZWRJbmZvLT5z
dHJpY3RNb2RlLCBjb25zdHJ1Y3RvcktpbmQsIGV4cGVjdGVkU3VwZXJCaW5kaW5nLAorICAgICAg
ICAgICAgICAgIGNhY2hlZEluZm8tPnBhcmFtZXRlckNvdW50LCBjYWNoZWRJbmZvLT5mdW5jdGlv
bkxlbmd0aCwKKyAgICAgICAgICAgICAgICBtb2RlLCBmdW5jdGlvbkJvZHlUeXBlID09IEFycm93
RnVuY3Rpb25Cb2R5RXhwcmVzc2lvbik7CiAgICAgICAgICAgICBmdW5jdGlvbkluZm8uZW5kT2Zm
c2V0ID0gY2FjaGVkSW5mby0+ZW5kRnVuY3Rpb25PZmZzZXQ7CiAgICAgICAgICAgICBmdW5jdGlv
bkluZm8ucGFyYW1ldGVyQ291bnQgPSBjYWNoZWRJbmZvLT5wYXJhbWV0ZXJDb3VudDsKKyAgICAg
ICAgICAgIGZ1bmN0aW9uSW5mby5mdW5jdGlvbkxlbmd0aCA9IGNhY2hlZEluZm8tPmZ1bmN0aW9u
TGVuZ3RoOwogCiAgICAgICAgICAgICBmdW5jdGlvblNjb3BlLT5yZXN0b3JlRnJvbVNvdXJjZVBy
b3ZpZGVyQ2FjaGUoY2FjaGVkSW5mbyk7CiAgICAgICAgICAgICBwb3BTY29wZShmdW5jdGlvblNj
b3BlLCBUcmVlQnVpbGRlcjo6TmVlZHNGcmVlVmFyaWFibGVJbmZvKTsKQEAgLTIxNDksNyArMjE2
MSw3IEBAIHRlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4gYm9vbCBQYXJzZXI8TGV4ZXJUeXBl
Pjo6cGFyc2VGdW5jdGlvbkluZm8oVHJlZUJ1aWxkCiAgICAgfSk7CiAKICAgICBhdXRvIHBlcmZv
cm1QYXJzaW5nRnVuY3Rpb25Cb2R5ID0gWyZdIHsKLSAgICAgICAgcmV0dXJuIHBhcnNlRnVuY3Rp
b25Cb2R5KGNvbnRleHQsIHN5bnRheENoZWNrZXIsIHN0YXJ0TG9jYXRpb24sIHN0YXJ0Q29sdW1u
LCBmdW5jdGlvbktleXdvcmRTdGFydCwgZnVuY3Rpb25OYW1lU3RhcnQsIHBhcmFtZXRlcnNTdGFy
dCwgY29uc3RydWN0b3JLaW5kLCBleHBlY3RlZFN1cGVyQmluZGluZywgZnVuY3Rpb25Cb2R5VHlw
ZSwgZnVuY3Rpb25JbmZvLnBhcmFtZXRlckNvdW50LCBtb2RlKTsKKyAgICAgICAgcmV0dXJuIHBh
cnNlRnVuY3Rpb25Cb2R5KGNvbnRleHQsIHN5bnRheENoZWNrZXIsIHN0YXJ0TG9jYXRpb24sIHN0
YXJ0Q29sdW1uLCBmdW5jdGlvbktleXdvcmRTdGFydCwgZnVuY3Rpb25OYW1lU3RhcnQsIHBhcmFt
ZXRlcnNTdGFydCwgY29uc3RydWN0b3JLaW5kLCBleHBlY3RlZFN1cGVyQmluZGluZywgZnVuY3Rp
b25Cb2R5VHlwZSwgZnVuY3Rpb25JbmZvLnBhcmFtZXRlckNvdW50LCBmdW5jdGlvbkluZm8uZnVu
Y3Rpb25MZW5ndGgsIG1vZGUpOwogICAgIH07CiAKICAgICBpZiAobW9kZSA9PSBTb3VyY2VQYXJz
ZU1vZGU6OkdlbmVyYXRvcldyYXBwZXJGdW5jdGlvbk1vZGUpIHsKQEAgLTIyMDIsNiArMjIxNCw3
IEBAIHRlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4gYm9vbCBQYXJzZXI8TGV4ZXJUeXBlPjo6
cGFyc2VGdW5jdGlvbkluZm8oVHJlZUJ1aWxkCiAgICAgICAgIHBhcmFtZXRlcnMubGFzdFRva2Vu
RW5kT2Zmc2V0ID0gbG9jYXRpb24uZW5kT2Zmc2V0OwogICAgICAgICBwYXJhbWV0ZXJzLmxhc3RU
b2tlbkxpbmVTdGFydE9mZnNldCA9IGxvY2F0aW9uLmxpbmVTdGFydE9mZnNldDsKICAgICAgICAg
cGFyYW1ldGVycy5wYXJhbWV0ZXJDb3VudCA9IGZ1bmN0aW9uSW5mby5wYXJhbWV0ZXJDb3VudDsK
KyAgICAgICAgcGFyYW1ldGVycy5mdW5jdGlvbkxlbmd0aCA9IGZ1bmN0aW9uSW5mby5mdW5jdGlv
bkxlbmd0aDsKICAgICAgICAgcGFyYW1ldGVycy5jb25zdHJ1Y3RvcktpbmQgPSBjb25zdHJ1Y3Rv
cktpbmQ7CiAgICAgICAgIHBhcmFtZXRlcnMuZXhwZWN0ZWRTdXBlckJpbmRpbmcgPSBleHBlY3Rl
ZFN1cGVyQmluZGluZzsKICAgICAgICAgaWYgKGZ1bmN0aW9uQm9keVR5cGUgPT0gQXJyb3dGdW5j
dGlvbkJvZHlFeHByZXNzaW9uKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cGFyc2VyL1BhcnNlci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9QYXJzZXIuaApp
bmRleCAzODgzMjVmLi4yNzAzNWY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cGFyc2VyL1BhcnNlci5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2Vy
LmgKQEAgLTIwLDggKzIwLDcgQEAKICAqCiAgKi8KIAotI2lmbmRlZiBQYXJzZXJfaAotI2RlZmlu
ZSBQYXJzZXJfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJFeGNlcHRpb25IZWxwZXJzLmgi
CiAjaW5jbHVkZSAiRXhlY3V0YWJsZS5oIgpAQCAtMTM5Nyw4ICsxMzk2LDggQEAgcHJpdmF0ZToK
ICAgICB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXI+IFRyZWVQcm9wZXJ0eSBwYXJzZVByb3Bl
cnR5KFRyZWVCdWlsZGVyJiwgYm9vbCBzdHJpY3QpOwogICAgIHRlbXBsYXRlIDxjbGFzcyBUcmVl
QnVpbGRlcj4gVHJlZUV4cHJlc3Npb24gcGFyc2VQcm9wZXJ0eU1ldGhvZChUcmVlQnVpbGRlciYg
Y29udGV4dCwgY29uc3QgSWRlbnRpZmllciogbWV0aG9kTmFtZSwgYm9vbCBpc0dlbmVyYXRvcik7
CiAgICAgdGVtcGxhdGUgPGNsYXNzIFRyZWVCdWlsZGVyPiBUcmVlUHJvcGVydHkgcGFyc2VHZXR0
ZXJTZXR0ZXIoVHJlZUJ1aWxkZXImLCBib29sIHN0cmljdCwgUHJvcGVydHlOb2RlOjpUeXBlLCB1
bnNpZ25lZCBnZXR0ZXJPclNldHRlclN0YXJ0T2Zmc2V0LCBDb25zdHJ1Y3RvcktpbmQsIGJvb2wg
aXNDbGFzc1Byb3BlcnR5KTsKLSAgICB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXI+IEFMV0FZ
U19JTkxJTkUgVHJlZUZ1bmN0aW9uQm9keSBwYXJzZUZ1bmN0aW9uQm9keShUcmVlQnVpbGRlciYs
IFN5bnRheENoZWNrZXImLCBjb25zdCBKU1Rva2VuTG9jYXRpb24mLCBpbnQsIGludCBmdW5jdGlv
bktleXdvcmRTdGFydCwgaW50IGZ1bmN0aW9uTmFtZVN0YXJ0LCBpbnQgcGFyYW1ldGVyc1N0YXJ0
LCBDb25zdHJ1Y3RvcktpbmQsIFN1cGVyQmluZGluZywgRnVuY3Rpb25Cb2R5VHlwZSwgdW5zaWdu
ZWQsIFNvdXJjZVBhcnNlTW9kZSk7Ci0gICAgdGVtcGxhdGUgPGNsYXNzIFRyZWVCdWlsZGVyPiBB
TFdBWVNfSU5MSU5FIGJvb2wgcGFyc2VGb3JtYWxQYXJhbWV0ZXJzKFRyZWVCdWlsZGVyJiwgVHJl
ZUZvcm1hbFBhcmFtZXRlckxpc3QsIHVuc2lnbmVkJik7CisgICAgdGVtcGxhdGUgPGNsYXNzIFRy
ZWVCdWlsZGVyPiBBTFdBWVNfSU5MSU5FIFRyZWVGdW5jdGlvbkJvZHkgcGFyc2VGdW5jdGlvbkJv
ZHkoVHJlZUJ1aWxkZXImLCBTeW50YXhDaGVja2VyJiwgY29uc3QgSlNUb2tlbkxvY2F0aW9uJiwg
aW50LCBpbnQgZnVuY3Rpb25LZXl3b3JkU3RhcnQsIGludCBmdW5jdGlvbk5hbWVTdGFydCwgaW50
IHBhcmFtZXRlcnNTdGFydCwgQ29uc3RydWN0b3JLaW5kLCBTdXBlckJpbmRpbmcsIEZ1bmN0aW9u
Qm9keVR5cGUsIHVuc2lnbmVkLCB1bnNpZ25lZCwgU291cmNlUGFyc2VNb2RlKTsKKyAgICB0ZW1w
bGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXI+IEFMV0FZU19JTkxJTkUgYm9vbCBwYXJzZUZvcm1hbFBh
cmFtZXRlcnMoVHJlZUJ1aWxkZXImLCBUcmVlRm9ybWFsUGFyYW1ldGVyTGlzdCwgdW5zaWduZWQm
LCB1bnNpZ25lZCYpOwogICAgIGVudW0gVmFyRGVjbGFyYXRpb25MaXN0Q29udGV4dCB7IEZvckxv
b3BDb250ZXh0LCBWYXJEZWNsYXJhdGlvbkNvbnRleHQgfTsKICAgICB0ZW1wbGF0ZSA8Y2xhc3Mg
VHJlZUJ1aWxkZXI+IFRyZWVFeHByZXNzaW9uIHBhcnNlVmFyaWFibGVEZWNsYXJhdGlvbkxpc3Qo
VHJlZUJ1aWxkZXImLCBpbnQmIGRlY2xhcmF0aW9ucywgVHJlZURlc3RydWN0dXJpbmdQYXR0ZXJu
JiBsYXN0UGF0dGVybiwgVHJlZUV4cHJlc3Npb24mIGxhc3RJbml0aWFsaXplciwgSlNUZXh0UG9z
aXRpb24mIGlkZW50U3RhcnQsIEpTVGV4dFBvc2l0aW9uJiBpbml0U3RhcnQsIEpTVGV4dFBvc2l0
aW9uJiBpbml0RW5kLCBWYXJEZWNsYXJhdGlvbkxpc3RDb250ZXh0LCBEZWNsYXJhdGlvblR5cGUs
IEV4cG9ydFR5cGUsIGJvb2wmIGZvckxvb3BDb25zdERvZXNOb3RIYXZlSW5pdGlhbGl6ZXIpOwog
ICAgIHRlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4gVHJlZVNvdXJjZUVsZW1lbnRzIHBhcnNl
QXJyb3dGdW5jdGlvblNpbmdsZUV4cHJlc3Npb25Cb2R5U291cmNlRWxlbWVudHMoVHJlZUJ1aWxk
ZXImKTsKQEAgLTE3NDEsNCArMTc0MCwzIEBAIHN0ZDo6dW5pcXVlX3B0cjxQYXJzZWROb2RlPiBw
YXJzZSgKIH0KIAogfSAvLyBuYW1lc3BhY2UKLSNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3BhcnNlci9QYXJzZXJGdW5jdGlvbkluZm8uaCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9wYXJzZXIvUGFyc2VyRnVuY3Rpb25JbmZvLmgKaW5kZXggNTBmZjUzNC4uYjlmZDY3
OSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9QYXJzZXJGdW5jdGlv
bkluZm8uaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNlckZ1bmN0aW9u
SW5mby5oCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCiAgKi8KIAotI2lmbmRlZiBQYXJzZXJGdW5jdGlvbkluZm9faAotI2RlZmluZSBQYXJzZXJG
dW5jdGlvbkluZm9faAorI3ByYWdtYSBvbmNlCiAKIG5hbWVzcGFjZSBKU0MgewogCkBAIC0zMyw2
ICszMiw3IEBAIHN0cnVjdCBQYXJzZXJGdW5jdGlvbkluZm8gewogICAgIGNvbnN0IElkZW50aWZp
ZXIqIG5hbWUgPSAwOwogICAgIHR5cGVuYW1lIFRyZWVCdWlsZGVyOjpGdW5jdGlvbkJvZHkgYm9k
eSA9IDA7CiAgICAgdW5zaWduZWQgcGFyYW1ldGVyQ291bnQgPSAwOworICAgIHVuc2lnbmVkIGZ1
bmN0aW9uTGVuZ3RoID0gMDsKICAgICB1bnNpZ25lZCBzdGFydE9mZnNldCA9IDA7CiAgICAgdW5z
aWduZWQgZW5kT2Zmc2V0ID0gMDsKICAgICBpbnQgc3RhcnRMaW5lID0gMDsKQEAgLTUwLDUgKzUw
LDMgQEAgc3RydWN0IFBhcnNlckNsYXNzSW5mbyB7CiB9OwogCiB9Ci0KLSNlbmRpZgpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Tb3VyY2VQcm92aWRlckNhY2hlSXRl
bS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Tb3VyY2VQcm92aWRlckNhY2hlSXRl
bS5oCmluZGV4IDgxNTk0MzQuLjYwYjg3YWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9wYXJzZXIvU291cmNlUHJvdmlkZXJDYWNoZUl0ZW0uaAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcGFyc2VyL1NvdXJjZVByb3ZpZGVyQ2FjaGVJdGVtLmgKQEAgLTQxLDYgKzQxLDcg
QEAgc3RydWN0IFNvdXJjZVByb3ZpZGVyQ2FjaGVJdGVtQ3JlYXRpb25QYXJhbWV0ZXJzIHsKICAg
ICB1bnNpZ25lZCBsYXN0VG9rZW5MaW5lU3RhcnRPZmZzZXQ7CiAgICAgdW5zaWduZWQgZW5kRnVu
Y3Rpb25PZmZzZXQ7CiAgICAgdW5zaWduZWQgcGFyYW1ldGVyQ291bnQ7CisgICAgdW5zaWduZWQg
ZnVuY3Rpb25MZW5ndGg7CiAgICAgYm9vbCBuZWVkc0Z1bGxBY3RpdmF0aW9uOwogICAgIGJvb2wg
dXNlc0V2YWw7CiAgICAgYm9vbCBzdHJpY3RNb2RlOwpAQCAtODgsNiArODksNyBAQCBwdWJsaWM6
CiAgICAgdW5zaWduZWQgY29uc3RydWN0b3JLaW5kIDogMjsgLy8gQ29uc3RydWN0b3JLaW5kCiAg
ICAgdW5zaWduZWQgcGFyYW1ldGVyQ291bnQgOiAzMTsKICAgICB1bnNpZ25lZCBleHBlY3RlZFN1
cGVyQmluZGluZyA6IDE7IC8vIFN1cGVyQmluZGluZworICAgIHVuc2lnbmVkIGZ1bmN0aW9uTGVu
Z3RoOwogICAgIHVuc2lnbmVkIGxhc3RUb2tlbkxpbmVTdGFydE9mZnNldDsKICAgICB1bnNpZ25l
ZCB1c2VkVmFyaWFibGVzQ291bnQ7CiAgICAgSW5uZXJBcnJvd0Z1bmN0aW9uQ29kZUZlYXR1cmVz
IGlubmVyQXJyb3dGdW5jdGlvbkZlYXR1cmVzOwpAQCAtMTI4LDYgKzEzMCw3IEBAIGlubGluZSBT
b3VyY2VQcm92aWRlckNhY2hlSXRlbTo6U291cmNlUHJvdmlkZXJDYWNoZUl0ZW0oY29uc3QgU291
cmNlUHJvdmlkZXJDYWNoCiAgICAgLCBjb25zdHJ1Y3RvcktpbmQoc3RhdGljX2Nhc3Q8dW5zaWdu
ZWQ+KHBhcmFtZXRlcnMuY29uc3RydWN0b3JLaW5kKSkKICAgICAsIHBhcmFtZXRlckNvdW50KHBh
cmFtZXRlcnMucGFyYW1ldGVyQ291bnQpCiAgICAgLCBleHBlY3RlZFN1cGVyQmluZGluZyhzdGF0
aWNfY2FzdDx1bnNpZ25lZD4ocGFyYW1ldGVycy5leHBlY3RlZFN1cGVyQmluZGluZykpCisgICAg
LCBmdW5jdGlvbkxlbmd0aChwYXJhbWV0ZXJzLmZ1bmN0aW9uTGVuZ3RoKQogICAgICwgbGFzdFRv
a2VuTGluZVN0YXJ0T2Zmc2V0KHBhcmFtZXRlcnMubGFzdFRva2VuTGluZVN0YXJ0T2Zmc2V0KQog
ICAgICwgdXNlZFZhcmlhYmxlc0NvdW50KHBhcmFtZXRlcnMudXNlZFZhcmlhYmxlcy5zaXplKCkp
CiAgICAgLCBpbm5lckFycm93RnVuY3Rpb25GZWF0dXJlcyhwYXJhbWV0ZXJzLmlubmVyQXJyb3dG
dW5jdGlvbkZlYXR1cmVzKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNl
ci9TeW50YXhDaGVja2VyLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1N5bnRheENo
ZWNrZXIuaAppbmRleCAxYzBkMThlLi44MDRhMDQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcGFyc2VyL1N5bnRheENoZWNrZXIuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcGFyc2VyL1N5bnRheENoZWNrZXIuaApAQCAtMTg0LDcgKzE4NCw3IEBAIHB1YmxpYzoKICAg
ICBFeHByZXNzaW9uVHlwZSBjcmVhdGVZaWVsZChjb25zdCBKU1Rva2VuTG9jYXRpb24mLCBFeHBy
ZXNzaW9uVHlwZSwgYm9vbCwgaW50LCBpbnQsIGludCkgeyByZXR1cm4gWWllbGRFeHByOyB9CiAg
ICAgQ2xhc3NFeHByZXNzaW9uIGNyZWF0ZUNsYXNzRXhwcihjb25zdCBKU1Rva2VuTG9jYXRpb24m
LCBjb25zdCBQYXJzZXJDbGFzc0luZm88U3ludGF4Q2hlY2tlcj4mLCBWYXJpYWJsZUVudmlyb25t
ZW50JiwgRXhwcmVzc2lvblR5cGUsIEV4cHJlc3Npb25UeXBlLCBQcm9wZXJ0eUxpc3QsIFByb3Bl
cnR5TGlzdCkgeyByZXR1cm4gQ2xhc3NFeHByOyB9CiAgICAgRXhwcmVzc2lvblR5cGUgY3JlYXRl
RnVuY3Rpb25FeHByKGNvbnN0IEpTVG9rZW5Mb2NhdGlvbiYsIGNvbnN0IFBhcnNlckZ1bmN0aW9u
SW5mbzxTeW50YXhDaGVja2VyPiYpIHsgcmV0dXJuIEZ1bmN0aW9uRXhwcjsgfQotICAgIGludCBj
cmVhdGVGdW5jdGlvbk1ldGFkYXRhKGNvbnN0IEpTVG9rZW5Mb2NhdGlvbiYsIGNvbnN0IEpTVG9r
ZW5Mb2NhdGlvbiYsIGludCwgaW50LCBib29sLCBpbnQsIGludCwgaW50LCBDb25zdHJ1Y3Rvcktp
bmQsIFN1cGVyQmluZGluZywgdW5zaWduZWQsIFNvdXJjZVBhcnNlTW9kZSwgYm9vbCwgSW5uZXJB
cnJvd0Z1bmN0aW9uQ29kZUZlYXR1cmVzID0gTm9Jbm5lckFycm93RnVuY3Rpb25GZWF0dXJlcykg
eyByZXR1cm4gRnVuY3Rpb25Cb2R5UmVzdWx0OyB9CisgICAgaW50IGNyZWF0ZUZ1bmN0aW9uTWV0
YWRhdGEoY29uc3QgSlNUb2tlbkxvY2F0aW9uJiwgY29uc3QgSlNUb2tlbkxvY2F0aW9uJiwgaW50
LCBpbnQsIGJvb2wsIGludCwgaW50LCBpbnQsIENvbnN0cnVjdG9yS2luZCwgU3VwZXJCaW5kaW5n
LCB1bnNpZ25lZCwgaW50LCBTb3VyY2VQYXJzZU1vZGUsIGJvb2wsIElubmVyQXJyb3dGdW5jdGlv
bkNvZGVGZWF0dXJlcyA9IE5vSW5uZXJBcnJvd0Z1bmN0aW9uRmVhdHVyZXMpIHsgcmV0dXJuIEZ1
bmN0aW9uQm9keVJlc3VsdDsgfQogICAgIEV4cHJlc3Npb25UeXBlIGNyZWF0ZUFycm93RnVuY3Rp
b25FeHByKGNvbnN0IEpTVG9rZW5Mb2NhdGlvbiYsIGNvbnN0IFBhcnNlckZ1bmN0aW9uSW5mbzxT
eW50YXhDaGVja2VyPiYpIHsgcmV0dXJuIEZ1bmN0aW9uRXhwcjsgfQogICAgIEV4cHJlc3Npb25U
eXBlIGNyZWF0ZU1ldGhvZERlZmluaXRpb24oY29uc3QgSlNUb2tlbkxvY2F0aW9uJiwgY29uc3Qg
UGFyc2VyRnVuY3Rpb25JbmZvPFN5bnRheENoZWNrZXI+JikgeyByZXR1cm4gRnVuY3Rpb25FeHBy
OyB9CiAgICAgdm9pZCBzZXRGdW5jdGlvbk5hbWVTdGFydChpbnQsIGludCkgeyB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FeGVjdXRhYmxlLmggYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9FeGVjdXRhYmxlLmgKaW5kZXggN2M3ZmU4Ny4uYzFjZTVh
ZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhlY3V0YWJsZS5o
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V4ZWN1dGFibGUuaApAQCAtNjU3
LDcgKzY1Nyw4IEBAIHB1YmxpYzoKICAgICBjb25zdCBJZGVudGlmaWVyJiBuYW1lKCkgeyByZXR1
cm4gbV91bmxpbmtlZEV4ZWN1dGFibGUtPm5hbWUoKTsgfQogICAgIGNvbnN0IElkZW50aWZpZXIm
IGVjbWFOYW1lKCkgeyByZXR1cm4gbV91bmxpbmtlZEV4ZWN1dGFibGUtPmVjbWFOYW1lKCk7IH0K
ICAgICBjb25zdCBJZGVudGlmaWVyJiBpbmZlcnJlZE5hbWUoKSB7IHJldHVybiBtX3VubGlua2Vk
RXhlY3V0YWJsZS0+aW5mZXJyZWROYW1lKCk7IH0KLSAgICBzaXplX3QgcGFyYW1ldGVyQ291bnQo
KSBjb25zdCB7IHJldHVybiBtX3VubGlua2VkRXhlY3V0YWJsZS0+cGFyYW1ldGVyQ291bnQoKTsg
fSAvLyBFeGNsdWRpbmcgJ3RoaXMnIQorICAgIHVuc2lnbmVkIHBhcmFtZXRlckNvdW50KCkgY29u
c3QgeyByZXR1cm4gbV91bmxpbmtlZEV4ZWN1dGFibGUtPnBhcmFtZXRlckNvdW50KCk7IH0gLy8g
RXhjbHVkaW5nICd0aGlzJyEKKyAgICB1bnNpZ25lZCBmdW5jdGlvbkxlbmd0aCgpIGNvbnN0IHsg
cmV0dXJuIG1fdW5saW5rZWRFeGVjdXRhYmxlLT5mdW5jdGlvbkxlbmd0aCgpOyB9CiAgICAgU291
cmNlUGFyc2VNb2RlIHBhcnNlTW9kZSgpIGNvbnN0IHsgcmV0dXJuIG1fdW5saW5rZWRFeGVjdXRh
YmxlLT5wYXJzZU1vZGUoKTsgfQogICAgIEpTUGFyc2VyQ29tbWVudE1vZGUgY29tbWVudE1vZGUo
KSBjb25zdCB7IHJldHVybiBtX3VubGlua2VkRXhlY3V0YWJsZS0+Y29tbWVudE1vZGUoKTsgfQog
ICAgIGNvbnN0IFNvdXJjZUNvZGUmIGNsYXNzU291cmNlKCkgY29uc3QgeyByZXR1cm4gbV91bmxp
bmtlZEV4ZWN1dGFibGUtPmNsYXNzU291cmNlKCk7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTRnVuY3Rpb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNGdW5jdGlvbi5jcHAKaW5kZXggMDBkZThiNi4uMTMwZGJjMiAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5jcHAKQEAgLTExNCw3ICsxMTQs
NyBAQCBKU0Z1bmN0aW9uKiBKU0Z1bmN0aW9uOjpjcmVhdGVCdWlsdGluRnVuY3Rpb24oVk0mIHZt
LCBGdW5jdGlvbkV4ZWN1dGFibGUqIGV4ZWN1dAogewogICAgIEpTRnVuY3Rpb24qIGZ1bmN0aW9u
ID0gY3JlYXRlKHZtLCBleGVjdXRhYmxlLCBnbG9iYWxPYmplY3QpOwogICAgIGZ1bmN0aW9uLT5w
dXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPm5hbWUsIGpzU3RyaW5nKCZ2bSwgZXhlY3V0
YWJsZS0+bmFtZSgpLnN0cmluZygpKSwgUmVhZE9ubHkgfCBEb250RW51bSk7Ci0gICAgZnVuY3Rp
b24tPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+bGVuZ3RoLCBqc051bWJlcihleGVj
dXRhYmxlLT5wYXJhbWV0ZXJDb3VudCgpKSwgUmVhZE9ubHkgfCBEb250RW51bSk7CisgICAgZnVu
Y3Rpb24tPnB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+bGVuZ3RoLCBqc051bWJlcihl
eGVjdXRhYmxlLT5mdW5jdGlvbkxlbmd0aCgpKSwgUmVhZE9ubHkgfCBEb250RW51bSk7CiAgICAg
cmV0dXJuIGZ1bmN0aW9uOwogfQogCkBAIC0xMjIsNyArMTIyLDcgQEAgSlNGdW5jdGlvbiogSlNG
dW5jdGlvbjo6Y3JlYXRlQnVpbHRpbkZ1bmN0aW9uKFZNJiB2bSwgRnVuY3Rpb25FeGVjdXRhYmxl
KiBleGVjdXQKIHsKICAgICBKU0Z1bmN0aW9uKiBmdW5jdGlvbiA9IGNyZWF0ZSh2bSwgZXhlY3V0
YWJsZSwgZ2xvYmFsT2JqZWN0KTsKICAgICBmdW5jdGlvbi0+cHV0RGlyZWN0KHZtLCB2bS5wcm9w
ZXJ0eU5hbWVzLT5uYW1lLCBqc1N0cmluZygmdm0sIG5hbWUpLCBSZWFkT25seSB8IERvbnRFbnVt
KTsKLSAgICBmdW5jdGlvbi0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5sZW5ndGgs
IGpzTnVtYmVyKGV4ZWN1dGFibGUtPnBhcmFtZXRlckNvdW50KCkpLCBSZWFkT25seSB8IERvbnRF
bnVtKTsKKyAgICBmdW5jdGlvbi0+cHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5sZW5n
dGgsIGpzTnVtYmVyKGV4ZWN1dGFibGUtPmZ1bmN0aW9uTGVuZ3RoKCkpLCBSZWFkT25seSB8IERv
bnRFbnVtKTsKICAgICByZXR1cm4gZnVuY3Rpb247CiB9CiAKQEAgLTYyNyw3ICs2MjcsNyBAQCB2
b2lkIEpTRnVuY3Rpb246OnJlaWZ5TGVuZ3RoKFZNJiB2bSkKIAogICAgIEFTU0VSVCghaGFzUmVp
ZmllZExlbmd0aCgpKTsKICAgICBBU1NFUlQoIWlzSG9zdEZ1bmN0aW9uKCkpOwotICAgIEpTVmFs
dWUgaW5pdGlhbFZhbHVlID0ganNOdW1iZXIoanNFeGVjdXRhYmxlKCktPnBhcmFtZXRlckNvdW50
KCkpOworICAgIEpTVmFsdWUgaW5pdGlhbFZhbHVlID0ganNOdW1iZXIoanNFeGVjdXRhYmxlKCkt
PmZ1bmN0aW9uTGVuZ3RoKCkpOwogICAgIHVuc2lnbmVkIGluaXRpYWxBdHRyaWJ1dGVzID0gRG9u
dEVudW0gfCBSZWFkT25seTsKICAgICBjb25zdCBJZGVudGlmaWVyJiBpZGVudGlmaWVyID0gdm0u
cHJvcGVydHlOYW1lcy0+bGVuZ3RoOwogICAgIHB1dERpcmVjdCh2bSwgaWRlbnRpZmllciwgaW5p
dGlhbFZhbHVlLCBpbml0aWFsQXR0cmlidXRlcyk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>