<?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>160375</bug_id>
          
          <creation_ts>2016-07-29 20:28:45 -0700</creation_ts>
          <short_desc>[WebIDL] Enable strict type checking for nullable attribute setters of wrapper types</short_desc>
          <delta_ts>2016-07-30 17:24: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>Bindings</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=160374</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>WebExposed</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>160382</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>ggaren</cc>
    
    <cc>rniwa</cc>
    
    <cc>sam</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1215812</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-07-29 20:28:45 -0700</bug_when>
    <thetext>Enable strict type checking for nullable attribute setters of wrapper types:
- http://heycam.github.io/webidl/#es-nullable-type
- http://heycam.github.io/webidl/#es-interface

For such attributes, if the JS tries to assign a value that is not null / undefined and does not have the expected wrapper type, then we now throw a TypeError instead of silently converting the value to null.

This behavior is consistent with Chrome and Firefox. It also helps identify bugs in JavaScript code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1215862</commentid>
    <comment_count>1</comment_count>
      <attachid>284944</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-07-30 10:12:36 -0700</bug_when>
    <thetext>Created attachment 284944
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1215904</commentid>
    <comment_count>2</comment_count>
      <attachid>284944</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2016-07-30 17:00:21 -0700</bug_when>
    <thetext>Comment on attachment 284944
Patch

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

Seems unnecessary to both make this change and remove all the uses of StrictTypeChecking in the same patch. Would have been slightly nicer to keep this one smaller by separating the IDL changes, I think.

&gt; Source/WebCore/bindings/scripts/CodeGeneratorJS.pm:-2914
&gt; +                my $putForwards = $attribute-&gt;signature-&gt;extendedAttributes-&gt;{&quot;PutForwards&quot;};
&gt;                  if (!$attribute-&gt;isStatic) {
&gt; -                    my $putForwards = $attribute-&gt;signature-&gt;extendedAttributes-&gt;{&quot;PutForwards&quot;};

I don’t understand the reason for this change. Please don’t do it unless there is a reason.

&gt; Source/WebCore/bindings/scripts/CodeGeneratorJS.pm:2928
&gt; +                        $type = $attribute-&gt;signature-&gt;type;

I don’t understand why this change is needed. Is there a test that shows the bug that was caused by the lack of this line of code?

&gt; Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp:2937
&gt; +    TestObj* nativeValue = nullptr;
&gt; +    if (!value.isUndefinedOrNull()) {
&gt; +        nativeValue = JSTestObj::toWrapped(value);
&gt; +        if (UNLIKELY(!nativeValue)) {

This ends up checking for the type twice in the normal non-null code path, once inline here, and then a second time in the toWrapped function. If we think that non-null values are more common than null ones we could consider the version I suggested in the patch with DOMWindow where we do the check only after calling toWrapped to avoid throwing the error. It would also eliminate the need for the store of nullptr.

Generally of course, we want the code for bindings to be both small and fast, with good decisions about what’s inlined and what is not. Would be nice if the type checking didn’t have to be before here *and* in the toWrapped function.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1215906</commentid>
    <comment_count>3</comment_count>
      <attachid>284944</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-07-30 17:13:27 -0700</bug_when>
    <thetext>Comment on attachment 284944
Patch

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

&gt;&gt; Source/WebCore/bindings/scripts/CodeGeneratorJS.pm:2928
&gt;&gt; +                        $type = $attribute-&gt;signature-&gt;type;
&gt; 
&gt; I don’t understand why this change is needed. Is there a test that shows the bug that was caused by the lack of this line of code?

Yes, this change is needed. In the case of PutForward, we setter forwards to another attribute. Therefore, we were updating the attribute above. However, we failed to update the $type to reflect the type of the new attribute. This was causing trouble because of the $codeGenerator-&gt;IsWrapperType($type) below that we use for strict type checking. The issue shows for the following attribute for example on Document.idl:
[PutForwards=href, Unforgeable] readonly attribute Location? location;

The setter actually sets Location.href, which is a String. However, $codeGenerator-&gt;IsWrapperType($type) was returning true below because $type was &quot;Location&quot; instead of &quot;String&quot;. Therefore, we were trying to generate strict wrapper type checking code for an String attribute setter.

&gt;&gt; Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp:2937
&gt;&gt; +        if (UNLIKELY(!nativeValue)) {
&gt; 
&gt; This ends up checking for the type twice in the normal non-null code path, once inline here, and then a second time in the toWrapped function. If we think that non-null values are more common than null ones we could consider the version I suggested in the patch with DOMWindow where we do the check only after calling toWrapped to avoid throwing the error. It would also eliminate the need for the store of nullptr.
&gt; 
&gt; Generally of course, we want the code for bindings to be both small and fast, with good decisions about what’s inlined and what is not. Would be nice if the type checking didn’t have to be before here *and* in the toWrapped function.

For nullable parameters / attributes, I don&apos;t think we can assume null is more or less likely than a valid wrapper type (I agreed with you that null is less likely in the dictionary member case though). Now I agree this should be cleaned up a bit. I need to think about this more but I think we may want toWrapped() to:
1. Take a &quot;IsNullable&quot; flag parameter.
2. Take care of throwing a TypeError when needed.

I did not want to refactor however until I:
1. Enabled strict type checking everywhere (I am going incrementally)
2. Given more thought about what the best solution would be.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1215907</commentid>
    <comment_count>4</comment_count>
      <attachid>284944</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-07-30 17:15:01 -0700</bug_when>
    <thetext>Comment on attachment 284944
Patch

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

&gt;&gt; Source/WebCore/bindings/scripts/CodeGeneratorJS.pm:-2914
&gt;&gt; -                    my $putForwards = $attribute-&gt;signature-&gt;extendedAttributes-&gt;{&quot;PutForwards&quot;};
&gt; 
&gt; I don’t understand the reason for this change. Please don’t do it unless there is a reason.

Oh, this one is not needed. This is a reminiscence of an earlier iteration of my patch. I&apos;ll fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1215908</commentid>
    <comment_count>5</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-07-30 17:17:23 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; Comment on attachment 284944 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=284944&amp;action=review
&gt; 
&gt; Seems unnecessary to both make this change and remove all the uses of
&gt; StrictTypeChecking in the same patch. Would have been slightly nicer to keep
&gt; this one smaller by separating the IDL changes, I think.

Ok, I&apos;ll keep this in mind for my next refactoring. I seemed a little bit odd to keep [StrictTypeChecking] on attributes given that it was a no-op with my patch and that strict type checking is the default behavior.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1215909</commentid>
    <comment_count>6</comment_count>
      <attachid>284958</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-07-30 17:18:22 -0700</bug_when>
    <thetext>Created attachment 284958
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1215910</commentid>
    <comment_count>7</comment_count>
      <attachid>284958</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-07-30 17:24:39 -0700</bug_when>
    <thetext>Comment on attachment 284958
Patch

Clearing flags on attachment: 284958

Committed r203949: &lt;http://trac.webkit.org/changeset/203949&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1215911</commentid>
    <comment_count>8</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-07-30 17:24:45 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>284944</attachid>
            <date>2016-07-30 10:12:36 -0700</date>
            <delta_ts>2016-07-30 17:18:18 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-160375-20160730101119.patch</filename>
            <type>text/plain</type>
            <size>39654</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAzOTQyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzA4N2EzYTA5MGJjMWQx
ZmIxYzhjMmI0MDAwYjU0MTMyODM2NDVmZC4uZjEwMzA1YjhjNzJjMWRlZDBjNWJlMmM3YjQ0ZTMz
MTM0NDk5ZjU2YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDY1IEBACiAyMDE2LTA3LTMwICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKKyAgICAgICAgW1dlYklETF0gRW5hYmxlIHN0
cmljdCB0eXBlIGNoZWNraW5nIGZvciBudWxsYWJsZSBhdHRyaWJ1dGUgc2V0dGVycyBvZiB3cmFw
cGVyIHR5cGVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xNjAzNzUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBFbmFibGUgc3RyaWN0IHR5cGUgY2hlY2tpbmcgZm9yIG51bGxhYmxlIGF0dHJpYnV0ZSBzZXR0
ZXJzIG9mIHdyYXBwZXIgdHlwZXM6CisgICAgICAgIC0gaHR0cDovL2hleWNhbS5naXRodWIuaW8v
d2ViaWRsLyNlcy1udWxsYWJsZS10eXBlCisgICAgICAgIC0gaHR0cDovL2hleWNhbS5naXRodWIu
aW8vd2ViaWRsLyNlcy1pbnRlcmZhY2UKKworICAgICAgICBGb3Igc3VjaCBhdHRyaWJ1dGVzLCBp
ZiB0aGUgSlMgdHJpZXMgdG8gYXNzaWduIGEgdmFsdWUgdGhhdCBpcyBub3QgbnVsbCAvCisgICAg
ICAgIHVuZGVmaW5lZCBhbmQgZG9lcyBub3QgaGF2ZSB0aGUgZXhwZWN0ZWQgd3JhcHBlciB0eXBl
LCB0aGVuIHdlIG5vdyB0aHJvdyBhCisgICAgICAgIFR5cGVFcnJvciBpbnN0ZWFkIG9mIHNpbGVu
dGx5IGNvbnZlcnRpbmcgdGhlIHZhbHVlIHRvIG51bGwuCisKKyAgICAgICAgVGhpcyBiZWhhdmlv
ciBpcyBjb25zaXN0ZW50IHdpdGggQ2hyb21lIGFuZCBGaXJlZm94LiBJdCBhbHNvIGhlbHBzIGlk
ZW50aWZ5CisgICAgICAgIGJ1Z3MgaW4gSmF2YVNjcmlwdCBjb2RlLgorCisgICAgICAgIE5vIG5l
dyB0ZXN0cywgdXBkYXRlZCBleGlzdGluZyB0ZXN0cy4KKworICAgICAgICAqIE1vZHVsZXMvd2Vi
YXVkaW8vQXVkaW9CdWZmZXJTb3VyY2VOb2RlLmlkbDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3Jp
cHRzL0NvZGVHZW5lcmF0b3JKUy5wbToKKyAgICAgICAgKEdlbmVyYXRlSW1wbGVtZW50YXRpb24p
OgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPYmouY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6c2V0SlNUZXN0T2JqVGVzdE51bGxhYmxlT2JqQXR0cik6CisgICAgICAg
IChXZWJDb3JlOjpzZXRKU1Rlc3RPYmpNdXRhYmxlUG9pbnQpOgorICAgICAgICAoV2ViQ29yZTo6
c2V0SlNUZXN0T2JqSW1tdXRhYmxlUG9pbnQpOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMv
dGVzdC9UZXN0T2JqLmlkbDoKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuaWRsOgorICAgICAgICAq
IGh0bWwvSFRNTFRhYmxlRWxlbWVudC5pZGw6CisgICAgICAgICogc3ZnL1NWR0FuZ2xlLmlkbDoK
KyAgICAgICAgKiBzdmcvU1ZHQW5pbWF0ZWRCb29sZWFuLmlkbDoKKyAgICAgICAgKiBzdmcvU1ZH
QW5pbWF0ZWRFbnVtZXJhdGlvbi5pZGw6CisgICAgICAgICogc3ZnL1NWR0FuaW1hdGVkSW50ZWdl
ci5pZGw6CisgICAgICAgICogc3ZnL1NWR0FuaW1hdGVkTnVtYmVyLmlkbDoKKyAgICAgICAgKiBz
dmcvU1ZHTGVuZ3RoLmlkbDoKKyAgICAgICAgKiBzdmcvU1ZHTWF0cml4LmlkbDoKKyAgICAgICAg
KiBzdmcvU1ZHTnVtYmVyLmlkbDoKKyAgICAgICAgKiBzdmcvU1ZHUGF0aFNlZ0FyY0Ficy5pZGw6
CisgICAgICAgICogc3ZnL1NWR1BhdGhTZWdBcmNSZWwuaWRsOgorICAgICAgICAqIHN2Zy9TVkdQ
YXRoU2VnQ3VydmV0b0N1YmljQWJzLmlkbDoKKyAgICAgICAgKiBzdmcvU1ZHUGF0aFNlZ0N1cnZl
dG9DdWJpY1JlbC5pZGw6CisgICAgICAgICogc3ZnL1NWR1BhdGhTZWdDdXJ2ZXRvQ3ViaWNTbW9v
dGhBYnMuaWRsOgorICAgICAgICAqIHN2Zy9TVkdQYXRoU2VnQ3VydmV0b0N1YmljU21vb3RoUmVs
LmlkbDoKKyAgICAgICAgKiBzdmcvU1ZHUGF0aFNlZ0N1cnZldG9RdWFkcmF0aWNBYnMuaWRsOgor
ICAgICAgICAqIHN2Zy9TVkdQYXRoU2VnQ3VydmV0b1F1YWRyYXRpY1JlbC5pZGw6CisgICAgICAg
ICogc3ZnL1NWR1BhdGhTZWdDdXJ2ZXRvUXVhZHJhdGljU21vb3RoQWJzLmlkbDoKKyAgICAgICAg
KiBzdmcvU1ZHUGF0aFNlZ0N1cnZldG9RdWFkcmF0aWNTbW9vdGhSZWwuaWRsOgorICAgICAgICAq
IHN2Zy9TVkdQYXRoU2VnTGluZXRvQWJzLmlkbDoKKyAgICAgICAgKiBzdmcvU1ZHUGF0aFNlZ0xp
bmV0b0hvcml6b250YWxBYnMuaWRsOgorICAgICAgICAqIHN2Zy9TVkdQYXRoU2VnTGluZXRvSG9y
aXpvbnRhbFJlbC5pZGw6CisgICAgICAgICogc3ZnL1NWR1BhdGhTZWdMaW5ldG9SZWwuaWRsOgor
ICAgICAgICAqIHN2Zy9TVkdQYXRoU2VnTGluZXRvVmVydGljYWxBYnMuaWRsOgorICAgICAgICAq
IHN2Zy9TVkdQYXRoU2VnTGluZXRvVmVydGljYWxSZWwuaWRsOgorICAgICAgICAqIHN2Zy9TVkdQ
YXRoU2VnTW92ZXRvQWJzLmlkbDoKKyAgICAgICAgKiBzdmcvU1ZHUGF0aFNlZ01vdmV0b1JlbC5p
ZGw6CisgICAgICAgICogc3ZnL1NWR1BvaW50LmlkbDoKKyAgICAgICAgKiBzdmcvU1ZHUHJlc2Vy
dmVBc3BlY3RSYXRpby5pZGw6CisgICAgICAgICogc3ZnL1NWR1JlY3QuaWRsOgorCisyMDE2LTA3
LTMwICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKICAgICAgICAgW1dlYklETF0g
RW5hYmxlIHN0cmljdCB0eXBlIGNoZWNraW5nIGZvciBvcGVyYXRpb25zJyBudWxsYWJsZSBwYXJh
bWV0ZXJzIG9mIHdyYXBwZXIgdHlwZXMKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE2MDM3NAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL3dlYmF1ZGlvL0F1ZGlvQnVmZmVyU291cmNlTm9kZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3dlYmF1ZGlvL0F1ZGlvQnVmZmVyU291cmNlTm9kZS5pZGwKaW5kZXggN2E1NzhkOGQ2
YjQ2NzNlZWM5MzI5MzUzN2E3NWM3Y2NmYWIyYWI5Yy4uYjk2YzMyMmU2MjhmZDE2MWQ3ZmY4NDBi
ZjFkODQ0ZGJjMTEyMzdkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJh
dWRpby9BdWRpb0J1ZmZlclNvdXJjZU5vZGUuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvd2ViYXVkaW8vQXVkaW9CdWZmZXJTb3VyY2VOb2RlLmlkbApAQCAtMjcsNyArMjcsNyBAQAog
ICAgIENvbmRpdGlvbmFsPVdFQl9BVURJTywKICAgICBKU0dlbmVyYXRlVG9KU09iamVjdCwKIF0g
aW50ZXJmYWNlIEF1ZGlvQnVmZmVyU291cmNlTm9kZSA6IEF1ZGlvTm9kZSB7Ci0gICAgW1N0cmlj
dFR5cGVDaGVja2luZ10gYXR0cmlidXRlIEF1ZGlvQnVmZmVyPyBidWZmZXI7CisgICAgYXR0cmli
dXRlIEF1ZGlvQnVmZmVyPyBidWZmZXI7CiAKICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBVTlND
SEVEVUxFRF9TVEFURSA9IDA7CiAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgU0NIRURVTEVEX1NU
QVRFID0gMTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29k
ZUdlbmVyYXRvckpTLnBtIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2Vu
ZXJhdG9ySlMucG0KaW5kZXggNDJjMmRhOGNjM2NlMDhkMThkOWZjNzViYjg2YzUxNTA1MGM1ZTE1
OC4uYmExMmNjNGE5MGNlYzQ0ODk2MWI3ODdiOWMzNGJjNGYyNWNhZTRmNCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KQEAgLTI5
MTAsOCArMjkxMCw4IEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAgICAgICAgICAgICAg
ICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIHJldHVybiBjYXN0ZWRUaGlzLT5wdXREaXJl
Y3Qoc3RhdGUtPnZtKCksIElkZW50aWZpZXI6OmZyb21TdHJpbmcoc3RhdGUsIFwiJG5hbWVcIiks
IHZhbHVlKTtcbiIpOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0gZWxzZSB7Cisg
ICAgICAgICAgICAgICAgbXkgJHB1dEZvcndhcmRzID0gJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5l
eHRlbmRlZEF0dHJpYnV0ZXMtPnsiUHV0Rm9yd2FyZHMifTsKICAgICAgICAgICAgICAgICBpZiAo
ISRhdHRyaWJ1dGUtPmlzU3RhdGljKSB7Ci0gICAgICAgICAgICAgICAgICAgIG15ICRwdXRGb3J3
YXJkcyA9ICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IlB1dEZv
cndhcmRzIn07CiAgICAgICAgICAgICAgICAgICAgIGlmICgkcHV0Rm9yd2FyZHMpIHsKICAgICAg
ICAgICAgICAgICAgICAgICAgIG15ICRpbXBsR2V0dGVyRnVuY3Rpb25OYW1lID0gJGNvZGVHZW5l
cmF0b3ItPldLX2xjZmlyc3QoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0
ZXMtPnsiSW1wbGVtZW50ZWRBcyJ9IHx8ICRuYW1lKTsKICAgICAgICAgICAgICAgICAgICAgICAg
IGlmICgkYXR0cmlidXRlLT5zaWduYXR1cmUtPmlzTnVsbGFibGUpIHsKQEAgLTI5MjUsNiArMjky
NSw3IEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgYXV0byYgaW1wbCA9IGZvcndhcmRlZEltcGwu
Z2V0KCk7XG4iKTsKICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAg
ICAgICAgICRhdHRyaWJ1dGUgPSAkY29kZUdlbmVyYXRvci0+R2V0QXR0cmlidXRlRnJvbUludGVy
ZmFjZSgkaW50ZXJmYWNlLCAkdHlwZSwgJHB1dEZvcndhcmRzKTsKKyAgICAgICAgICAgICAgICAg
ICAgICAgICR0eXBlID0gJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT50eXBlOwogICAgICAgICAgICAg
ICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRl
bnQsICIgICAgYXV0byYgaW1wbCA9IGNhc3RlZFRoaXMtPndyYXBwZWQoKTtcbiIpOwogICAgICAg
ICAgICAgICAgICAgICB9CkBAIC0yOTM3LDIwICsyOTM4LDE1IEBAIHN1YiBHZW5lcmF0ZUltcGxl
bWVudGF0aW9uCiAKICAgICAgICAgICAgICAgICBteSAkc2hvdWxkUGFzc0J5UmVmZXJlbmNlID0g
U2hvdWxkUGFzc1dyYXBwZXJCeVJlZmVyZW5jZSgkYXR0cmlidXRlLT5zaWduYXR1cmUsICRpbnRl
cmZhY2UpOwogCi0gICAgICAgICAgICAgICAgIyBJZiB0aGUgIlN0cmljdFR5cGVDaGVja2luZyIg
ZXh0ZW5kZWQgYXR0cmlidXRlIGlzIHByZXNlbnQsIGFuZCB0aGUgYXR0cmlidXRlJ3MgdHlwZSBp
cyBhbgotICAgICAgICAgICAgICAgICMgaW50ZXJmYWNlIHR5cGUsIHRoZW4gaWYgdGhlIGluY29t
aW5nIHZhbHVlIGRvZXMgbm90IGltcGxlbWVudCB0aGF0IGludGVyZmFjZSwgYSBUeXBlRXJyb3IK
LSAgICAgICAgICAgICAgICAjIGlzIHRocm93biByYXRoZXIgdGhhbiBzaWxlbnRseSBwYXNzaW5n
IE5VTEwgdG8gdGhlIEMrKyBjb2RlLgotICAgICAgICAgICAgICAgICMgUGVyIHRoZSBXZWIgSURM
IGFuZCBFQ01BU2NyaXB0IHNwZWNpZmljYXRpb25zLCBpbmNvbWluZyB2YWx1ZXMgY2FuIGFsd2F5
cyBiZSBjb252ZXJ0ZWQgdG8KLSAgICAgICAgICAgICAgICAjIGJvdGggc3RyaW5ncyBhbmQgbnVt
YmVycywgc28gZG8gbm90IHRocm93IFR5cGVFcnJvciBpZiB0aGUgYXR0cmlidXRlIGlzIG9mIHRo
ZXNlIHR5cGVzLgogICAgICAgICAgICAgICAgIG15ICgkbmF0aXZlVmFsdWUsICRtYXlUaHJvd0V4
Y2VwdGlvbikgPSBKU1ZhbHVlVG9OYXRpdmUoJGludGVyZmFjZSwgJGF0dHJpYnV0ZS0+c2lnbmF0
dXJlLCAidmFsdWUiLCAkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+
eyJDb25kaXRpb25hbCJ9KTsKLSAgICAgICAgICAgICAgICBpZiAoJGF0dHJpYnV0ZS0+c2lnbmF0
dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiU3RyaWN0VHlwZUNoZWNraW5nIn0gJiYgISRzaG91
bGRQYXNzQnlSZWZlcmVuY2UgJiYgJGNvZGVHZW5lcmF0b3ItPklzV3JhcHBlclR5cGUoJHR5cGUp
KSB7CisgICAgICAgICAgICAgICAgaWYgKCEkc2hvdWxkUGFzc0J5UmVmZXJlbmNlICYmICRjb2Rl
R2VuZXJhdG9yLT5Jc1dyYXBwZXJUeXBlKCR0eXBlKSkgewogICAgICAgICAgICAgICAgICAgICAk
aW1wbEluY2x1ZGVzeyI8cnVudGltZS9FcnJvci5oPiJ9ID0gMTsKICAgICAgICAgICAgICAgICAg
ICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgIiAuIEdldE5hdGl2ZVR5cGVGcm9tU2lnbmF0dXJl
KCRpbnRlcmZhY2UsICRhdHRyaWJ1dGUtPnNpZ25hdHVyZSkgLiAiIG5hdGl2ZVZhbHVlID0gbnVs
bHB0cjtcbiIpOwogICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICBp
ZiAoIXZhbHVlLmlzVW5kZWZpbmVkT3JOdWxsKCkpIHtcbiIpOwogICAgICAgICAgICAgICAgICAg
ICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAgICAgbmF0aXZlVmFsdWUgPSAkbmF0aXZlVmFsdWU7
XG4iKTsKICAgICAgICAgICAgICAgICAgICAgaWYgKCRtYXlUaHJvd0V4Y2VwdGlvbikgewotICAg
ICAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgaWYgKFVOTElLRUxZ
KHN0YXRlLT5oYWRFeGNlcHRpb24oKSkpXG4iKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHB1
c2goQGltcGxDb250ZW50LCAiICAgICAgICByZXR1cm4gZmFsc2U7XG4iKTsKKyAgICAgICAgICAg
ICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgICAgICBpZiAoVU5MSUtFTFkoc3Rh
dGUtPmhhZEV4Y2VwdGlvbigpKSlcbiIpOworICAgICAgICAgICAgICAgICAgICAgICAgcHVzaChA
aW1wbENvbnRlbnQsICIgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4iKTsKICAgICAgICAgICAg
ICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAg
ICAgaWYgKFVOTElLRUxZKCFuYXRpdmVWYWx1ZSkpIHtcbiIpOwogICAgICAgICAgICAgICAgICAg
ICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAgICAgICAgIHRocm93QXR0cmlidXRlVHlwZUVycm9y
KCpzdGF0ZSwgXCIkdmlzaWJsZUludGVyZmFjZU5hbWVcIiwgXCIkbmFtZVwiLCBcIiR0eXBlXCIp
O1xuIik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0T2JqLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RPYmouY3BwCmluZGV4IDg5MWVmZDhjMmZjNzg1NTE4NTVjMmRkYWYzMmY2NTBlZTlm
YTczOTQuLmU3OTkwNjJiMDhjNzgxNjJiZDQxZjBjNDU3NTdhNDI4OWExN2E4OGMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPYmouY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPYmou
Y3BwCkBAIC0yOTMxLDcgKzI5MzEsMTQgQEAgYm9vbCBzZXRKU1Rlc3RPYmpUZXN0TnVsbGFibGVP
YmpBdHRyKEV4ZWNTdGF0ZSogc3RhdGUsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwKICAgICAg
ICAgcmV0dXJuIHRocm93U2V0dGVyVHlwZUVycm9yKCpzdGF0ZSwgIlRlc3RPYmplY3QiLCAidGVz
dE51bGxhYmxlT2JqQXR0ciIpOwogICAgIH0KICAgICBhdXRvJiBpbXBsID0gY2FzdGVkVGhpcy0+
d3JhcHBlZCgpOwotICAgIGF1dG8gbmF0aXZlVmFsdWUgPSBKU1Rlc3RPYmo6OnRvV3JhcHBlZCh2
YWx1ZSk7CisgICAgVGVzdE9iaiogbmF0aXZlVmFsdWUgPSBudWxscHRyOworICAgIGlmICghdmFs
dWUuaXNVbmRlZmluZWRPck51bGwoKSkgeworICAgICAgICBuYXRpdmVWYWx1ZSA9IEpTVGVzdE9i
ajo6dG9XcmFwcGVkKHZhbHVlKTsKKyAgICAgICAgaWYgKFVOTElLRUxZKCFuYXRpdmVWYWx1ZSkp
IHsKKyAgICAgICAgICAgIHRocm93QXR0cmlidXRlVHlwZUVycm9yKCpzdGF0ZSwgIlRlc3RPYmpl
Y3QiLCAidGVzdE51bGxhYmxlT2JqQXR0ciIsICJUZXN0T2JqIik7CisgICAgICAgICAgICByZXR1
cm4gZmFsc2U7CisgICAgICAgIH0KKyAgICB9CiAgICAgaW1wbC5zZXRUZXN0TnVsbGFibGVPYmpB
dHRyKFdURk1vdmUobmF0aXZlVmFsdWUpKTsKICAgICByZXR1cm4gdHJ1ZTsKIH0KQEAgLTM2Nzks
NyArMzY4NiwxNCBAQCBib29sIHNldEpTVGVzdE9iak11dGFibGVQb2ludChFeGVjU3RhdGUqIHN0
YXRlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIEVuY29kZQogICAgICAgICByZXR1cm4gdGhy
b3dTZXR0ZXJUeXBlRXJyb3IoKnN0YXRlLCAiVGVzdE9iamVjdCIsICJtdXRhYmxlUG9pbnQiKTsK
ICAgICB9CiAgICAgYXV0byYgaW1wbCA9IGNhc3RlZFRoaXMtPndyYXBwZWQoKTsKLSAgICBhdXRv
IG5hdGl2ZVZhbHVlID0gSlNTVkdQb2ludDo6dG9XcmFwcGVkKHZhbHVlKTsKKyAgICBTVkdQcm9w
ZXJ0eVRlYXJPZmY8U1ZHUG9pbnQ+KiBuYXRpdmVWYWx1ZSA9IG51bGxwdHI7CisgICAgaWYgKCF2
YWx1ZS5pc1VuZGVmaW5lZE9yTnVsbCgpKSB7CisgICAgICAgIG5hdGl2ZVZhbHVlID0gSlNTVkdQ
b2ludDo6dG9XcmFwcGVkKHZhbHVlKTsKKyAgICAgICAgaWYgKFVOTElLRUxZKCFuYXRpdmVWYWx1
ZSkpIHsKKyAgICAgICAgICAgIHRocm93QXR0cmlidXRlVHlwZUVycm9yKCpzdGF0ZSwgIlRlc3RP
YmplY3QiLCAibXV0YWJsZVBvaW50IiwgIlNWR1BvaW50Iik7CisgICAgICAgICAgICByZXR1cm4g
ZmFsc2U7CisgICAgICAgIH0KKyAgICB9CiAgICAgaW1wbC5zZXRNdXRhYmxlUG9pbnQoV1RGTW92
ZShuYXRpdmVWYWx1ZSkpOwogICAgIHJldHVybiB0cnVlOwogfQpAQCAtMzY5NCw3ICszNzA4LDE0
IEBAIGJvb2wgc2V0SlNUZXN0T2JqSW1tdXRhYmxlUG9pbnQoRXhlY1N0YXRlKiBzdGF0ZSwgRW5j
b2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBFbmNvCiAgICAgICAgIHJldHVybiB0aHJvd1NldHRlclR5
cGVFcnJvcigqc3RhdGUsICJUZXN0T2JqZWN0IiwgImltbXV0YWJsZVBvaW50Iik7CiAgICAgfQog
ICAgIGF1dG8mIGltcGwgPSBjYXN0ZWRUaGlzLT53cmFwcGVkKCk7Ci0gICAgYXV0byBuYXRpdmVW
YWx1ZSA9IEpTU1ZHUG9pbnQ6OnRvV3JhcHBlZCh2YWx1ZSk7CisgICAgU1ZHUHJvcGVydHlUZWFy
T2ZmPFNWR1BvaW50PiogbmF0aXZlVmFsdWUgPSBudWxscHRyOworICAgIGlmICghdmFsdWUuaXNV
bmRlZmluZWRPck51bGwoKSkgeworICAgICAgICBuYXRpdmVWYWx1ZSA9IEpTU1ZHUG9pbnQ6OnRv
V3JhcHBlZCh2YWx1ZSk7CisgICAgICAgIGlmIChVTkxJS0VMWSghbmF0aXZlVmFsdWUpKSB7Cisg
ICAgICAgICAgICB0aHJvd0F0dHJpYnV0ZVR5cGVFcnJvcigqc3RhdGUsICJUZXN0T2JqZWN0Iiwg
ImltbXV0YWJsZVBvaW50IiwgIlNWR1BvaW50Iik7CisgICAgICAgICAgICByZXR1cm4gZmFsc2U7
CisgICAgICAgIH0KKyAgICB9CiAgICAgaW1wbC5zZXRJbW11dGFibGVQb2ludChXVEZNb3ZlKG5h
dGl2ZVZhbHVlKSk7CiAgICAgcmV0dXJuIHRydWU7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE9iai5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE9iai5pZGwKaW5kZXggNDM4ODMyY2MyODhlMzJjYzRh
MjYwOWRjODkwZmZiOTVkYzEzZmQ0Mi4uNDE0N2ExYTVhZjE2NjA1MmJlYjRlZGFmZDQ2NDEzMGRk
NThmMDJmNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L1Rlc3RPYmouaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9U
ZXN0T2JqLmlkbApAQCAtMTM2LDkgKzEzNiw2IEBAIGVudW0gVGVzdENvbmZpZGVuY2UgeyAiaGln
aCIsICJraW5kYS1sb3ciIH07CiAgICAgW0dldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRl
IERPTVN0cmluZyBzdHJpbmdBdHRyV2l0aEdldHRlckV4Y2VwdGlvbjsKICAgICBbU2V0dGVyUmFp
c2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHN0cmluZ0F0dHJXaXRoU2V0dGVyRXhj
ZXB0aW9uOwogCi0gICAgLy8gU3RyaWN0IHR5cGUgY2hlY2tpbmcuCi0gICAgW1N0cmljdFR5cGVD
aGVja2luZ10gYXR0cmlidXRlIFRlc3RPYmo/IHN0cmljdFR5cGVDaGVja2luZ0F0dHJpYnV0ZTsK
LQogICAgIC8vICdDdXN0b20nIGV4dGVuZGVkIGF0dHJpYnV0ZQogICAgIFtDdXN0b21dIGF0dHJp
YnV0ZSBsb25nICAgICAgICAgICAgY3VzdG9tQXR0cjsKICAgICBbQ3VzdG9tXSB2b2lkIGN1c3Rv
bU1ldGhvZCgpOwpAQCAtMzEyLDcgKzMwOSw2IEBAIGVudW0gVGVzdENvbmZpZGVuY2UgeyAiaGln
aCIsICJraW5kYS1sb3ciIH07CiAgICAgW0ltcGxlbWVudGVkQXM9YmFuYW5hXSB2b2lkIG9yYW5n
ZSgpOwogICAgIFtJbXBsZW1lbnRlZEFzPWJsdWViZXJyeV0gYXR0cmlidXRlIGxvbmcgc3RyYXdi
ZXJyeTsKIAotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQg
ZmxvYXQgc3RyaWN0RmxvYXQ7CiAgICAgW1N0cmljdFR5cGVDaGVja2luZywgUmFpc2VzRXhjZXB0
aW9uXSBib29sZWFuIHN0cmljdEZ1bmN0aW9uKERPTVN0cmluZyBzdHIsIHVucmVzdHJpY3RlZCBm
bG9hdCBhLCBsb25nIGIpOwogCiAgICAgW1N0cmljdFR5cGVDaGVja2luZywgUmFpc2VzRXhjZXB0
aW9uXSBib29sZWFuIHN0cmljdEZ1bmN0aW9uV2l0aFNlcXVlbmNlKFRlc3RPYmo/IG9iakFyZywg
c2VxdWVuY2U8dW5zaWduZWQgbG9uZz4gYSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9k
b20vRG9jdW1lbnQuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmlkbAppbmRleCA1
NGFkZjFkYmFiNDU5Y2Y1YzE3YjE2YjMxMjdhYzNjYmE1ZGVhNzE2Li42YjVmMTJjMTJlMWEyYzU5
OGEwNWFlODVlZmJlOGQyY2Y4Zjc4NzgyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20v
RG9jdW1lbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5pZGwKQEAgLTE3
MCw3ICsxNzAsNyBAQAogCiAgICAgW0dldHRlclJhaXNlc0V4Y2VwdGlvbiwgU2V0dGVyUmFpc2Vz
RXhjZXB0aW9uXSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGNvb2tpZTsKIAotICAgIFtTZXR0ZXJSYWlz
ZXNFeGNlcHRpb24sIEltcGxlbWVudGVkQXM9Ym9keU9yRnJhbWVzZXQsIFN0cmljdFR5cGVDaGVj
a2luZ10gYXR0cmlidXRlIEhUTUxFbGVtZW50PyBib2R5OworICAgIFtTZXR0ZXJSYWlzZXNFeGNl
cHRpb24sIEltcGxlbWVudGVkQXM9Ym9keU9yRnJhbWVzZXRdIGF0dHJpYnV0ZSBIVE1MRWxlbWVu
dD8gYm9keTsKIAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBIVE1MSGVhZEVsZW1lbnQ/IGhlYWQ7
CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIEhUTUxDb2xsZWN0aW9uIGltYWdlczsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRhYmxlRWxlbWVudC5pZGwgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxUYWJsZUVsZW1lbnQuaWRsCmluZGV4IDhhMmQzYWYyZmZiODhjZmUzZGU4
MjAxMmNjNDhiNDhjZjM3ZWZkMWEuLmU3NTMzM2NhMzE0NjE3Yzk5NmM1MWNkYzQ4YmZjZTM4OThl
NzhlMWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRhYmxlRWxlbWVudC5p
ZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGFibGVFbGVtZW50LmlkbApAQCAtMTks
OSArMTksOSBAQAogICovCiAKIGludGVyZmFjZSBIVE1MVGFibGVFbGVtZW50IDogSFRNTEVsZW1l
bnQgewotICAgIFtTZXR0ZXJSYWlzZXNFeGNlcHRpb24sIFN0cmljdFR5cGVDaGVja2luZ10gYXR0
cmlidXRlIEhUTUxUYWJsZUNhcHRpb25FbGVtZW50PyBjYXB0aW9uOwotICAgIFtTZXR0ZXJSYWlz
ZXNFeGNlcHRpb24sIFN0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIEhUTUxUYWJsZVNlY3Rp
b25FbGVtZW50PyB0SGVhZDsKLSAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9uLCBTdHJpY3RUeXBl
Q2hlY2tpbmddIGF0dHJpYnV0ZSBIVE1MVGFibGVTZWN0aW9uRWxlbWVudD8gdEZvb3Q7CisgICAg
W1NldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIEhUTUxUYWJsZUNhcHRpb25FbGVtZW50
PyBjYXB0aW9uOworICAgIFtTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSBIVE1MVGFi
bGVTZWN0aW9uRWxlbWVudD8gdEhlYWQ7CisgICAgW1NldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0
cmlidXRlIEhUTUxUYWJsZVNlY3Rpb25FbGVtZW50PyB0Rm9vdDsKIAogICAgIHJlYWRvbmx5IGF0
dHJpYnV0ZSBIVE1MQ29sbGVjdGlvbiByb3dzOwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBIVE1M
Q29sbGVjdGlvbiB0Qm9kaWVzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0Fu
Z2xlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmdsZS5pZGwKaW5kZXggMjBmZGQzNDhm
OTE2N2NmNzJmMGY2YjNkMjMyNTE4MmE4OTJiYTRiYS4uODljZGJiZGY2MzEwZDg3NmRjNjc5NDgw
Y2NjOGM0ZjI2NDE0Y2FhMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0FuZ2xl
LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5nbGUuaWRsCkBAIC0yOSw4ICsyOSw4
IEBAIGludGVyZmFjZSBTVkdBbmdsZSB7CiAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgU1ZHX0FO
R0xFVFlQRV9HUkFEID0gNDsKIAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBzaG9y
dCB1bml0VHlwZTsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmlj
dGVkIGZsb2F0IHZhbHVlOwotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJl
c3RyaWN0ZWQgZmxvYXQgdmFsdWVJblNwZWNpZmllZFVuaXRzOworICAgIGF0dHJpYnV0ZSB1bnJl
c3RyaWN0ZWQgZmxvYXQgdmFsdWU7CisgICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB2
YWx1ZUluU3BlY2lmaWVkVW5pdHM7CiAKICAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRy
aWJ1dGUgRE9NU3RyaW5nIHZhbHVlQXNTdHJpbmc7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3N2Zy9TVkdBbmltYXRlZEJvb2xlYW4uaWRsIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0Fu
aW1hdGVkQm9vbGVhbi5pZGwKaW5kZXggNjE3MmNjY2U0YzdhMTZmZTE4N2NkYTJmYmQ4YmI3OTQz
YjI4OWJiZi4uYjA3MjM3MTI5MGVjMjJhNzkzNGQ3YTc4MTQyZDVhN2VlMjIzMGYxZCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGVkQm9vbGVhbi5pZGwKKysrIGIvU291
cmNlL1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGVkQm9vbGVhbi5pZGwKQEAgLTI2LDcgKzI2LDcgQEAK
IFsKICAgICBTa2lwVlRhYmxlVmFsaWRhdGlvbgogXSBpbnRlcmZhY2UgU1ZHQW5pbWF0ZWRCb29s
ZWFuIHsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nLCBTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0
dHJpYnV0ZSBib29sZWFuIGJhc2VWYWw7CisgICAgW1NldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0
cmlidXRlIGJvb2xlYW4gYmFzZVZhbDsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgYm9vbGVhbiBh
bmltVmFsOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGVk
RW51bWVyYXRpb24uaWRsIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGVkRW51bWVyYXRp
b24uaWRsCmluZGV4IDZiMjBkNDNhOWUwOWY2YWIyNzQwN2MyZTljZGM4MmY5Y2VkMDkxYWYuLmQw
MzYxZWQ5NWIzMGE2MDg2OWUxZTUwZThmMjgyYjEyOGQzZDMyMzcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRlZEVudW1lcmF0aW9uLmlkbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9zdmcvU1ZHQW5pbWF0ZWRFbnVtZXJhdGlvbi5pZGwKQEAgLTI2LDcgKzI2LDcgQEAKIFsK
ICAgICBTa2lwVlRhYmxlVmFsaWRhdGlvbgogXSBpbnRlcmZhY2UgU1ZHQW5pbWF0ZWRFbnVtZXJh
dGlvbiB7Ci0gICAgW1N0cmljdFR5cGVDaGVja2luZywgU2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBh
dHRyaWJ1dGUgdW5zaWduZWQgc2hvcnQgYmFzZVZhbDsKKyAgICBbU2V0dGVyUmFpc2VzRXhjZXB0
aW9uXSBhdHRyaWJ1dGUgdW5zaWduZWQgc2hvcnQgYmFzZVZhbDsKICAgICByZWFkb25seSBhdHRy
aWJ1dGUgdW5zaWduZWQgc2hvcnQgYW5pbVZhbDsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3N2Zy9TVkdBbmltYXRlZEludGVnZXIuaWRsIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NW
R0FuaW1hdGVkSW50ZWdlci5pZGwKaW5kZXggM2U1NWNiZjVlNjY1N2ZhYjE0MzgyNWM0Y2Y4YzRh
M2Y0NzM1YzlmNy4uMjg1ZTE2NGFiYmZjNGI4ZjcwNTM5ZjhlODNjNjZjY2YyNmEyZDFjOSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGVkSW50ZWdlci5pZGwKKysrIGIv
U291cmNlL1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGVkSW50ZWdlci5pZGwKQEAgLTI2LDcgKzI2LDcg
QEAKIFsKICAgICBTa2lwVlRhYmxlVmFsaWRhdGlvbgogXSBpbnRlcmZhY2UgU1ZHQW5pbWF0ZWRJ
bnRlZ2VyIHsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nLCBTZXR0ZXJSYWlzZXNFeGNlcHRpb25d
IGF0dHJpYnV0ZSBsb25nIGJhc2VWYWw7CisgICAgW1NldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0
cmlidXRlIGxvbmcgYmFzZVZhbDsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgbG9uZyBhbmltVmFs
OwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGVkTnVtYmVy
LmlkbCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRlZE51bWJlci5pZGwKaW5kZXggNmQ0
Y2M2YmQ4MzRkNmVmZGJlM2I1OWY3YTQ1MDhiYWE4MDNmZDQ3Ni4uMmUxMGYwMmIyNWRiMTE5ZDQ0
ZjkzNjUxODNhNmIzYzRhOThkZjVhMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NW
R0FuaW1hdGVkTnVtYmVyLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5pbWF0ZWRO
dW1iZXIuaWRsCkBAIC0yNyw3ICsyNyw3IEBACiBbCiAgICAgU2tpcFZUYWJsZVZhbGlkYXRpb24K
IF0gaW50ZXJmYWNlIFNWR0FuaW1hdGVkTnVtYmVyIHsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5n
LCBTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgYmFz
ZVZhbDsKKyAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVk
IGZsb2F0IGJhc2VWYWw7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9h
dCBhbmltVmFsOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0xlbmd0
aC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHTGVuZ3RoLmlkbAppbmRleCA5MTQ5YjMyMzll
NWRhMWFlNmZmZmQ0NWM1ZWJjYTg5ZjdhNjk2YmI4Li40NTVkNTgwMmZjNzQyYTRiODIwOWU2YmNl
NjI4NGE4N2U4ODg5OTJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHTGVuZ3Ro
LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHTGVuZ3RoLmlkbApAQCAtMzUsMTEgKzM1
LDExIEBAIGludGVyZmFjZSBTVkdMZW5ndGggewogICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IFNW
R19MRU5HVEhUWVBFX1BDICAgICAgICAgPSAxMDsKIAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1
bnNpZ25lZCBzaG9ydCB1bml0VHlwZTsKLSAgICBbR2V0dGVyUmFpc2VzRXhjZXB0aW9uLCBTZXR0
ZXJSYWlzZXNFeGNlcHRpb24sIEN1c3RvbSwgU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUg
dW5yZXN0cmljdGVkIGZsb2F0IHZhbHVlOworICAgIFtHZXR0ZXJSYWlzZXNFeGNlcHRpb24sIFNl
dHRlclJhaXNlc0V4Y2VwdGlvbiwgQ3VzdG9tXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0
IHZhbHVlOwogCi0gICAgW1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3Rl
ZCBmbG9hdCB2YWx1ZUluU3BlY2lmaWVkVW5pdHM7CisgICAgYXR0cmlidXRlIHVucmVzdHJpY3Rl
ZCBmbG9hdCB2YWx1ZUluU3BlY2lmaWVkVW5pdHM7CiAKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5n
LCBTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSBET01TdHJpbmcgdmFsdWVBc1N0cmlu
ZzsKKyAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHZhbHVl
QXNTdHJpbmc7CiAKICAgICBbU3RyaWN0VHlwZUNoZWNraW5nLCBSYWlzZXNFeGNlcHRpb25dIHZv
aWQgbmV3VmFsdWVTcGVjaWZpZWRVbml0cyh1bnNpZ25lZCBzaG9ydCB1bml0VHlwZSwgCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVucmVzdHJp
Y3RlZCBmbG9hdCB2YWx1ZUluU3BlY2lmaWVkVW5pdHMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvc3ZnL1NWR01hdHJpeC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHTWF0cml4Lmlk
bAppbmRleCBkOWQwOWZhOWYwY2ZiNTM0N2JlYzNiNzBhZDNhZWViOGM4NzkxM2ZkLi4yMzUzYjUz
ZjExYzNhMzdlZTJlNjUxNjlkYTcwNjI4YWFkZjgwZmZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9zdmcvU1ZHTWF0cml4LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHTWF0cml4
LmlkbApAQCAtMjMsMTIgKzIzLDEyIEBACiBpbnRlcmZhY2UgU1ZHTWF0cml4IHsKICAgICAvLyBG
SVhNRTogdGhlc2UgYXR0cmlidXRlcyBzaG91bGQgYWxsIGJlIGZsb2F0cyBidXQgc2luY2Ugd2Ug
aW1wbGVtZW50CiAgICAgLy8gQWZmaW5lVHJhbnNmb3JtIHdpdGggZG91YmxlcyBzZXR0aW5nIHRo
ZXNlIGFzIGRvdWJsZXMgbWFrZXMgbW9yZSBzZW5zZS4KLSAgICBbU3RyaWN0VHlwZUNoZWNraW5n
XSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGRvdWJsZSBhOwotICAgIFtTdHJpY3RUeXBlQ2hlY2tp
bmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZG91YmxlIGI7Ci0gICAgW1N0cmljdFR5cGVDaGVj
a2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBkb3VibGUgYzsKLSAgICBbU3RyaWN0VHlwZUNo
ZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGRvdWJsZSBkOwotICAgIFtTdHJpY3RUeXBl
Q2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZG91YmxlIGU7Ci0gICAgW1N0cmljdFR5
cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBkb3VibGUgZjsKKyAgICBhdHRyaWJ1
dGUgdW5yZXN0cmljdGVkIGRvdWJsZSBhOworICAgIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZG91
YmxlIGI7CisgICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBkb3VibGUgYzsKKyAgICBhdHRyaWJ1
dGUgdW5yZXN0cmljdGVkIGRvdWJsZSBkOworICAgIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZG91
YmxlIGU7CisgICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBkb3VibGUgZjsKIAogICAgIFtTdHJp
Y3RUeXBlQ2hlY2tpbmddIFNWR01hdHJpeCBtdWx0aXBseShTVkdNYXRyaXggc2Vjb25kTWF0cml4
KTsKICAgICBbUmFpc2VzRXhjZXB0aW9uXSBTVkdNYXRyaXggaW52ZXJzZSgpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR051bWJlci5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9zdmcv
U1ZHTnVtYmVyLmlkbAppbmRleCA2MThiZWZiOTliYzQyZTY3MzQ0NTY0NjRhMzMwZDc1ZDJlZDUw
M2I4Li5mNjA5MDM3MmQ5ZDdkMmNjNGI3ODJmMzcwOGJjMDZmMTkwNDc0NjA4IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHTnVtYmVyLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9z
dmcvU1ZHTnVtYmVyLmlkbApAQCAtMjEsNiArMjEsNiBAQAogICovCiAKIGludGVyZmFjZSBTVkdO
dW1iZXIgewotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQg
ZmxvYXQgdmFsdWU7CisgICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB2YWx1ZTsKIH07
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnQXJjQWJzLmlkbCBi
L1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnQXJjQWJzLmlkbAppbmRleCBkMmI5MDk4ZTZj
ZmNmZDFhMjViNmE1MDU0OWJjYzJmZWU3ZjBlNDFhLi43ODQ2NzhkNjcxNTBlMWE0ZWJmYTg0ZjZm
OWNiMWFiMjUwMjM4ZWJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNl
Z0FyY0Ficy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BhdGhTZWdBcmNBYnMuaWRs
CkBAIC0yNSwxMiArMjUsMTIgQEAKICAqLwogCiBpbnRlcmZhY2UgU1ZHUGF0aFNlZ0FyY0FicyA6
IFNWR1BhdGhTZWcgewotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3Ry
aWN0ZWQgZmxvYXQgeDsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0
cmljdGVkIGZsb2F0IHk7Ci0gICAgW1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVz
dHJpY3RlZCBmbG9hdCByMTsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5y
ZXN0cmljdGVkIGZsb2F0IHIyOwotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1
bnJlc3RyaWN0ZWQgZmxvYXQgYW5nbGU7Ci0gICAgW1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmli
dXRlIGJvb2xlYW4gbGFyZ2VBcmNGbGFnOwotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJp
YnV0ZSBib29sZWFuIHN3ZWVwRmxhZzsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0
IHg7CisgICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB5OworICAgIGF0dHJpYnV0ZSB1
bnJlc3RyaWN0ZWQgZmxvYXQgcjE7CisgICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCBy
MjsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IGFuZ2xlOworICAgIGF0dHJpYnV0
ZSBib29sZWFuIGxhcmdlQXJjRmxhZzsKKyAgICBhdHRyaWJ1dGUgYm9vbGVhbiBzd2VlcEZsYWc7
CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0FyY1JlbC5p
ZGwgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0FyY1JlbC5pZGwKaW5kZXggMWFlZThi
ODAyMjM4ODMzYzA1ZTQ5NGJlNmQ0YmQ3OGUyYzYwNGI3NC4uODZmZDNiMmU4MWQ4ZTZjN2MxNGNm
NDFiZWNkNzJjYjAxMDY4YWY4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1Bh
dGhTZWdBcmNSZWwuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnQXJjUmVs
LmlkbApAQCAtMjUsMTIgKzI1LDEyIEBACiAgKi8KIAogaW50ZXJmYWNlIFNWR1BhdGhTZWdBcmNS
ZWwgOiBTVkdQYXRoU2VnIHsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5y
ZXN0cmljdGVkIGZsb2F0IHg7Ci0gICAgW1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVu
cmVzdHJpY3RlZCBmbG9hdCB5OwotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1
bnJlc3RyaWN0ZWQgZmxvYXQgcjE7Ci0gICAgW1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRl
IHVucmVzdHJpY3RlZCBmbG9hdCByMjsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1
dGUgdW5yZXN0cmljdGVkIGZsb2F0IGFuZ2xlOwotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0
dHJpYnV0ZSBib29sZWFuIGxhcmdlQXJjRmxhZzsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBh
dHRyaWJ1dGUgYm9vbGVhbiBzd2VlcEZsYWc7CisgICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBm
bG9hdCB4OworICAgIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeTsKKyAgICBhdHRyaWJ1
dGUgdW5yZXN0cmljdGVkIGZsb2F0IHIxOworICAgIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxv
YXQgcjI7CisgICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCBhbmdsZTsKKyAgICBhdHRy
aWJ1dGUgYm9vbGVhbiBsYXJnZUFyY0ZsYWc7CisgICAgYXR0cmlidXRlIGJvb2xlYW4gc3dlZXBG
bGFnOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BhdGhTZWdDdXJ2
ZXRvQ3ViaWNBYnMuaWRsIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BhdGhTZWdDdXJ2ZXRvQ3Vi
aWNBYnMuaWRsCmluZGV4IGYzNGJhZDBlM2IzNzk2OTNmNmNlYzU1Y2U2MzUxYWQxNzUzMzhjNWYu
LjI2ZGJlYTUyOGQzYzk4OGNmNTg4MGMzZGJmYzczOWY4N2E4NzBhODQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnQ3VydmV0b0N1YmljQWJzLmlkbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0N1cnZldG9DdWJpY0Ficy5pZGwKQEAgLTI1LDExICsy
NSwxMSBAQAogICovIAogCiBpbnRlcmZhY2UgU1ZHUGF0aFNlZ0N1cnZldG9DdWJpY0FicyA6IFNW
R1BhdGhTZWcgewotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0
ZWQgZmxvYXQgeDsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmlj
dGVkIGZsb2F0IHk7Ci0gICAgW1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJp
Y3RlZCBmbG9hdCB4MTsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0
cmljdGVkIGZsb2F0IHkxOwotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJl
c3RyaWN0ZWQgZmxvYXQgeDI7Ci0gICAgW1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVu
cmVzdHJpY3RlZCBmbG9hdCB5MjsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHg7
CisgICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB5OworICAgIGF0dHJpYnV0ZSB1bnJl
c3RyaWN0ZWQgZmxvYXQgeDE7CisgICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB5MTsK
KyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHgyOworICAgIGF0dHJpYnV0ZSB1bnJl
c3RyaWN0ZWQgZmxvYXQgeTI7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcv
U1ZHUGF0aFNlZ0N1cnZldG9DdWJpY1JlbC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0
aFNlZ0N1cnZldG9DdWJpY1JlbC5pZGwKaW5kZXggN2EwYzIzOTY5MjY1YTVlMzY4Yzg5ZWVkNTZl
MzQ1MjFkOWVmYWNlNS4uN2ViMDQxNGJmYzU2ODUzMzcyMTI2YjlmNzU3MWY2MjU3MzBjNTliNCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BhdGhTZWdDdXJ2ZXRvQ3ViaWNSZWwu
aWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnQ3VydmV0b0N1YmljUmVsLmlk
bApAQCAtMjUsMTEgKzI1LDExIEBACiAgKi8gCiAKIGludGVyZmFjZSBTVkdQYXRoU2VnQ3VydmV0
b0N1YmljUmVsIDogU1ZHUGF0aFNlZyB7Ci0gICAgW1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmli
dXRlIHVucmVzdHJpY3RlZCBmbG9hdCB4OwotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJp
YnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeTsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRy
aWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHgxOwotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0
dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeTE7Ci0gICAgW1N0cmljdFR5cGVDaGVja2luZ10g
YXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB4MjsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5n
XSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHkyOworICAgIGF0dHJpYnV0ZSB1bnJlc3Ry
aWN0ZWQgZmxvYXQgeDsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHk7CisgICAg
YXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB4MTsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmlj
dGVkIGZsb2F0IHkxOworICAgIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeDI7CisgICAg
YXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB5MjsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnQ3VydmV0b0N1YmljU21vb3RoQWJzLmlkbCBiL1NvdXJj
ZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnQ3VydmV0b0N1YmljU21vb3RoQWJzLmlkbAppbmRleCAx
ZjU4YmJlOGM2M2Q4OGI3OTg4MDgyZTIxZTk2YTkwZDEwNmYwN2EyLi5mNTYyMmVlNDZhZmEyZmYx
OTFjYTliYzExNDM1MWEwODZiY2Q2Mzg1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcv
U1ZHUGF0aFNlZ0N1cnZldG9DdWJpY1Ntb290aEFicy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
c3ZnL1NWR1BhdGhTZWdDdXJ2ZXRvQ3ViaWNTbW9vdGhBYnMuaWRsCkBAIC0yNSw5ICsyNSw5IEBA
CiAgKi8gCiAKIGludGVyZmFjZSBTVkdQYXRoU2VnQ3VydmV0b0N1YmljU21vb3RoQWJzIDogU1ZH
UGF0aFNlZyB7Ci0gICAgW1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3Rl
ZCBmbG9hdCB4OwotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0
ZWQgZmxvYXQgeTsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmlj
dGVkIGZsb2F0IHgyOwotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3Ry
aWN0ZWQgZmxvYXQgeTI7CisgICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB4OworICAg
IGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeTsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmlj
dGVkIGZsb2F0IHgyOworICAgIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeTI7CiB9Owog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0N1cnZldG9DdWJpY1Nt
b290aFJlbC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0N1cnZldG9DdWJpY1Nt
b290aFJlbC5pZGwKaW5kZXggYzhjZjZkNDgzOGFjZmY2ZDI0MjFiMDliNzExYmNmZmZmMDA0OGZk
My4uOWZlYTY5NjVmZmVlNmE1NGYzNzVkYTgxZmE1NjUzOWI5NjdhYjhiNCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvc3ZnL1NWR1BhdGhTZWdDdXJ2ZXRvQ3ViaWNTbW9vdGhSZWwuaWRsCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnQ3VydmV0b0N1YmljU21vb3RoUmVsLmlk
bApAQCAtMjUsOSArMjUsOSBAQAogICovIAogCiBpbnRlcmZhY2UgU1ZHUGF0aFNlZ0N1cnZldG9D
dWJpY1Ntb290aFJlbCA6IFNWR1BhdGhTZWcgewotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0
dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeDsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBh
dHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHk7Ci0gICAgW1N0cmljdFR5cGVDaGVja2luZ10g
YXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB4MjsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5n
XSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHkyOworICAgIGF0dHJpYnV0ZSB1bnJlc3Ry
aWN0ZWQgZmxvYXQgeDsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHk7CisgICAg
YXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB4MjsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmlj
dGVkIGZsb2F0IHkyOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1Bh
dGhTZWdDdXJ2ZXRvUXVhZHJhdGljQWJzLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRo
U2VnQ3VydmV0b1F1YWRyYXRpY0Ficy5pZGwKaW5kZXggNWJkNjE3YjUzMzg1YzJjYjhkZTUwZGJl
NmQwZmQ0ODAzNGZjYzUwYS4uNzI4NzYzMzBhMWZkNWRjOThlNTU5Mjg4ZDIzOTM4ZDVmY2M3NTI1
MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BhdGhTZWdDdXJ2ZXRvUXVhZHJh
dGljQWJzLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0N1cnZldG9RdWFk
cmF0aWNBYnMuaWRsCkBAIC0yNSw5ICsyNSw5IEBACiAgKi8KIAogaW50ZXJmYWNlIFNWR1BhdGhT
ZWdDdXJ2ZXRvUXVhZHJhdGljQWJzIDogU1ZHUGF0aFNlZyB7Ci0gICAgW1N0cmljdFR5cGVDaGVj
a2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB4OwotICAgIFtTdHJpY3RUeXBlQ2hl
Y2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeTsKLSAgICBbU3RyaWN0VHlwZUNo
ZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHgxOwotICAgIFtTdHJpY3RUeXBl
Q2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeTE7CisgICAgYXR0cmlidXRl
IHVucmVzdHJpY3RlZCBmbG9hdCB4OworICAgIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQg
eTsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHgxOworICAgIGF0dHJpYnV0ZSB1
bnJlc3RyaWN0ZWQgZmxvYXQgeTE7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9z
dmcvU1ZHUGF0aFNlZ0N1cnZldG9RdWFkcmF0aWNSZWwuaWRsIGIvU291cmNlL1dlYkNvcmUvc3Zn
L1NWR1BhdGhTZWdDdXJ2ZXRvUXVhZHJhdGljUmVsLmlkbAppbmRleCA3NTY5NTg1OGU3NzliZThh
M2UxNzQ4YjRjMDgxMzBhN2I4MWU2ODBhLi42N2RkNTQxZmUwZDQ2MzcwNGRjY2RkYjlkMzAxMWY1
YWUyN2E2MDYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0N1cnZl
dG9RdWFkcmF0aWNSZWwuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnQ3Vy
dmV0b1F1YWRyYXRpY1JlbC5pZGwKQEAgLTI1LDkgKzI1LDkgQEAKICAqLwogCiBpbnRlcmZhY2Ug
U1ZHUGF0aFNlZ0N1cnZldG9RdWFkcmF0aWNSZWwgOiBTVkdQYXRoU2VnIHsKLSAgICBbU3RyaWN0
VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHg7Ci0gICAgW1N0cmlj
dFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB5OwotICAgIFtTdHJp
Y3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeDE7Ci0gICAgW1N0
cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB5MTsKKyAgICBh
dHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHg7CisgICAgYXR0cmlidXRlIHVucmVzdHJpY3Rl
ZCBmbG9hdCB5OworICAgIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeDE7CisgICAgYXR0
cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB5MTsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3N2Zy9TVkdQYXRoU2VnQ3VydmV0b1F1YWRyYXRpY1Ntb290aEFicy5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0N1cnZldG9RdWFkcmF0aWNTbW9vdGhBYnMuaWRsCmlu
ZGV4IGFhYzVmZjZlY2RmMWJhZWM1ZjI5NjM2MDZkOTgwMTJhNTEwOTcyMDYuLjE0OWVkZDk2ZjZj
ZmRiOTRlNGY2NGRhZWFhMzcyZGNjOGFhYTA1NDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3N2Zy9TVkdQYXRoU2VnQ3VydmV0b1F1YWRyYXRpY1Ntb290aEFicy5pZGwKKysrIGIvU291cmNl
L1dlYkNvcmUvc3ZnL1NWR1BhdGhTZWdDdXJ2ZXRvUXVhZHJhdGljU21vb3RoQWJzLmlkbApAQCAt
MjUsNyArMjUsNyBAQAogICovCiAKIGludGVyZmFjZSBTVkdQYXRoU2VnQ3VydmV0b1F1YWRyYXRp
Y1Ntb290aEFicyA6IFNWR1BhdGhTZWcgewotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJp
YnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeDsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRy
aWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHk7CisgICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBm
bG9hdCB4OworICAgIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeTsKIH07CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnQ3VydmV0b1F1YWRyYXRpY1Ntb290
aFJlbC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0N1cnZldG9RdWFkcmF0aWNT
bW9vdGhSZWwuaWRsCmluZGV4IDBhZDMyYWE3OGIzOWU1N2RhNTNiODUyMzUyYzA5ZjNjZmYxNGIw
ZjIuLjg1N2VlMzA3YzU1MmVlNDEyNzZmMjc5ZmRlZmY5NWVlM2MxMGFlZmQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnQ3VydmV0b1F1YWRyYXRpY1Ntb290aFJlbC5p
ZGwKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BhdGhTZWdDdXJ2ZXRvUXVhZHJhdGljU21v
b3RoUmVsLmlkbApAQCAtMjUsNyArMjUsNyBAQAogICovCiAKIGludGVyZmFjZSBTVkdQYXRoU2Vn
Q3VydmV0b1F1YWRyYXRpY1Ntb290aFJlbCA6IFNWR1BhdGhTZWcgewotICAgIFtTdHJpY3RUeXBl
Q2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeDsKLSAgICBbU3RyaWN0VHlw
ZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHk7CisgICAgYXR0cmlidXRl
IHVucmVzdHJpY3RlZCBmbG9hdCB4OworICAgIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQg
eTsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnTGluZXRv
QWJzLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnTGluZXRvQWJzLmlkbAppbmRl
eCA2MGEzMDFjZDlmYzc5MGU1ZDczOTI3ZWI5OWU3YWU3NjliMzgxYjhkLi4xMTJhNWRmNGRlNGRm
M2NiMjc0MGY4Zjk3ZTg2ZmY3N2VlZGUzMTI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9z
dmcvU1ZHUGF0aFNlZ0xpbmV0b0Ficy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1Bh
dGhTZWdMaW5ldG9BYnMuaWRsCkBAIC0yNSw3ICsyNSw3IEBACiAgKi8KIAogaW50ZXJmYWNlIFNW
R1BhdGhTZWdMaW5ldG9BYnMgOiBTVkdQYXRoU2VnIHsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5n
XSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHg7Ci0gICAgW1N0cmljdFR5cGVDaGVja2lu
Z10gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB5OworICAgIGF0dHJpYnV0ZSB1bnJlc3Ry
aWN0ZWQgZmxvYXQgeDsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHk7CiB9Owog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0xpbmV0b0hvcml6b250
YWxBYnMuaWRsIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BhdGhTZWdMaW5ldG9Ib3Jpem9udGFs
QWJzLmlkbAppbmRleCBmZjI5NTI5MDdjYjliNmFkNTE4ZmQ4NGUwN2EyYTAwNWZhMGJmNjgzLi4w
ZDA5MzgwZDA3YmUzNWQwZmFjMThlYmMxYzNkMDNlZTg5ZmIwMzU0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0xpbmV0b0hvcml6b250YWxBYnMuaWRsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnTGluZXRvSG9yaXpvbnRhbEFicy5pZGwKQEAgLTI1
LDYgKzI1LDYgQEAKICAqLwogCiBpbnRlcmZhY2UgU1ZHUGF0aFNlZ0xpbmV0b0hvcml6b250YWxB
YnMgOiBTVkdQYXRoU2VnIHsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5y
ZXN0cmljdGVkIGZsb2F0IHg7CisgICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB4Owog
fTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BhdGhTZWdMaW5ldG9Ib3Jp
em9udGFsUmVsLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnTGluZXRvSG9yaXpv
bnRhbFJlbC5pZGwKaW5kZXggOTcxOTFiN2MyMDQxYzRhY2Y5OTY2MzhiMjFkODkyNDM3ZjA0ZDhi
Ny4uNTA2MDk1NWU5ODBiMDY2NzFkYmM1ODY3ZTJmNDkzOTFjZjY5ZmQ4NSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvc3ZnL1NWR1BhdGhTZWdMaW5ldG9Ib3Jpem9udGFsUmVsLmlkbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0xpbmV0b0hvcml6b250YWxSZWwuaWRsCkBA
IC0yNSw2ICsyNSw2IEBACiAgKi8KIAogaW50ZXJmYWNlIFNWR1BhdGhTZWdMaW5ldG9Ib3Jpem9u
dGFsUmVsIDogU1ZHUGF0aFNlZyB7Ci0gICAgW1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRl
IHVucmVzdHJpY3RlZCBmbG9hdCB4OworICAgIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQg
eDsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnTGluZXRv
UmVsLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnTGluZXRvUmVsLmlkbAppbmRl
eCA1M2JmNmUxNTkxZGU3Mjg0NmQ1NjU5ODM3N2UyY2ExYmY0YmU4NjVmLi4wOGFhMmQwYzFjMjlm
Zjc4YTM5OWNhNjgxZDgzMTdlYzdhOWQyMDBhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9z
dmcvU1ZHUGF0aFNlZ0xpbmV0b1JlbC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1Bh
dGhTZWdMaW5ldG9SZWwuaWRsCkBAIC0yNSw3ICsyNSw3IEBACiAgKi8KIAogaW50ZXJmYWNlIFNW
R1BhdGhTZWdMaW5ldG9SZWwgOiBTVkdQYXRoU2VnIHsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5n
XSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHg7Ci0gICAgW1N0cmljdFR5cGVDaGVja2lu
Z10gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB5OworICAgIGF0dHJpYnV0ZSB1bnJlc3Ry
aWN0ZWQgZmxvYXQgeDsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHk7CiB9Owog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0xpbmV0b1ZlcnRpY2Fs
QWJzLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnTGluZXRvVmVydGljYWxBYnMu
aWRsCmluZGV4IDhkYzQzNWRhZjgwY2QzOGRhNzRiZTE0MzgxM2JkODc1YzM5MzQ5MDguLjRkMmY4
MDRiYzFkYzg5NDQxYjFlODhkN2QwMWE3YWQ1N2E2ZTI5YWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3N2Zy9TVkdQYXRoU2VnTGluZXRvVmVydGljYWxBYnMuaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3N2Zy9TVkdQYXRoU2VnTGluZXRvVmVydGljYWxBYnMuaWRsCkBAIC0yNSw2ICsyNSw2
IEBACiAgKi8KIAogaW50ZXJmYWNlIFNWR1BhdGhTZWdMaW5ldG9WZXJ0aWNhbEFicyA6IFNWR1Bh
dGhTZWcgewotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQg
ZmxvYXQgeTsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHk7CiB9OwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0xpbmV0b1ZlcnRpY2FsUmVsLmlk
bCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnTGluZXRvVmVydGljYWxSZWwuaWRsCmlu
ZGV4IGE2YWM4NWNiZjU4OTRjMTU0ZWE4YmY4MTM2OTJhZDk3MWJlOGQxOWYuLjcyMDY0OTE0ZDMz
NmY3YmEyM2RiOWVmMDEzZDg1YWRjYWYzMThlYzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3N2Zy9TVkdQYXRoU2VnTGluZXRvVmVydGljYWxSZWwuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3N2Zy9TVkdQYXRoU2VnTGluZXRvVmVydGljYWxSZWwuaWRsCkBAIC0yNSw2ICsyNSw2IEBACiAg
Ki8KIAogaW50ZXJmYWNlIFNWR1BhdGhTZWdMaW5ldG9WZXJ0aWNhbFJlbCA6IFNWR1BhdGhTZWcg
ewotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQg
eTsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHk7CiB9OwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ01vdmV0b0Ficy5pZGwgYi9Tb3VyY2UvV2Vi
Q29yZS9zdmcvU1ZHUGF0aFNlZ01vdmV0b0Ficy5pZGwKaW5kZXggMWZlNzVmYmM0MDM2MWNmNDgx
NTVhMjBhMDMxZmQ4YjVkM2QxZWZiMi4uMDkxZGFkYjE3N2MyNWNlNmIyYzY1YmEyYzIxMGIwZmMw
MjZhYWNkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BhdGhTZWdNb3ZldG9B
YnMuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnTW92ZXRvQWJzLmlkbApA
QCAtMjUsNyArMjUsNyBAQAogICovCiAKIGludGVyZmFjZSBTVkdQYXRoU2VnTW92ZXRvQWJzIDog
U1ZHUGF0aFNlZyB7Ci0gICAgW1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJp
Y3RlZCBmbG9hdCB4OwotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3Ry
aWN0ZWQgZmxvYXQgeTsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHg7CisgICAg
YXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB5OwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvc3ZnL1NWR1BhdGhTZWdNb3ZldG9SZWwuaWRsIGIvU291cmNlL1dlYkNvcmUvc3Zn
L1NWR1BhdGhTZWdNb3ZldG9SZWwuaWRsCmluZGV4IDk4YjA2MDk3ZTExMWE1ODM1MmRhMzVhODE0
YzUyY2IxNGM1MWYzN2UuLjIxNzkxMmRkZTRiMzRmMDJmZjZiZDllY2UxMDYzOTZjMWM1MmQzYjEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnTW92ZXRvUmVsLmlkbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ01vdmV0b1JlbC5pZGwKQEAgLTI1LDcg
KzI1LDcgQEAKICAqLwogCiBpbnRlcmZhY2UgU1ZHUGF0aFNlZ01vdmV0b1JlbCA6IFNWR1BhdGhT
ZWcgewotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxv
YXQgeDsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZs
b2F0IHk7CisgICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB4OworICAgIGF0dHJpYnV0
ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeTsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3N2Zy9TVkdQb2ludC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUG9pbnQuaWRsCmluZGV4
IDRjM2Q0NDhhZDI5ODM2YTMwZDhjNzEyYzFiYmQxOWI4ZTMxODZlODUuLjg0ZDg5ODAzMThjOTY3
NzM0MTBmNTEzYzIwMTk5MjI3OTgxMTU4MzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2
Zy9TVkdQb2ludC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BvaW50LmlkbApAQCAt
MjEsOCArMjEsOCBAQAogICovCiAKIGludGVyZmFjZSBTVkdQb2ludCB7Ci0gICAgW1N0cmljdFR5
cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB4OwotICAgIFtTdHJpY3RU
eXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeTsKKyAgICBhdHRyaWJ1
dGUgdW5yZXN0cmljdGVkIGZsb2F0IHg7CisgICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9h
dCB5OwogCiAgICAgW1N0cmljdFR5cGVDaGVja2luZ10gU1ZHUG9pbnQgbWF0cml4VHJhbnNmb3Jt
KFNWR01hdHJpeCBtYXRyaXgpOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9T
VkdQcmVzZXJ2ZUFzcGVjdFJhdGlvLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQcmVzZXJ2
ZUFzcGVjdFJhdGlvLmlkbAppbmRleCBlYzJjNzk2MzhkZDQyZDgzMTliMGY3MzRkYjg1NjdmMzBh
Zjk0NDc1Li5kNDc3YjgwZGI5OGNhODcyNGVjNGExNWFhNWMwMjQ1ZjgxNWE1YmY5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUHJlc2VydmVBc3BlY3RSYXRpby5pZGwKKysrIGIv
U291cmNlL1dlYkNvcmUvc3ZnL1NWR1ByZXNlcnZlQXNwZWN0UmF0aW8uaWRsCkBAIC00Miw4ICs0
Miw4IEBAIGludGVyZmFjZSBTVkdQcmVzZXJ2ZUFzcGVjdFJhdGlvIHsKICAgICBjb25zdCB1bnNp
Z25lZCBzaG9ydCBTVkdfTUVFVE9SU0xJQ0VfTUVFVCA9IDE7CiAgICAgY29uc3QgdW5zaWduZWQg
c2hvcnQgU1ZHX01FRVRPUlNMSUNFX1NMSUNFID0gMjsKIAotICAgIFtTdHJpY3RUeXBlQ2hlY2tp
bmcsIFNldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIHVuc2lnbmVkIHNob3J0IGFsaWdu
OworICAgIFtTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSB1bnNpZ25lZCBzaG9ydCBh
bGlnbjsKIAotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmcsIFNldHRlclJhaXNlc0V4Y2VwdGlvbl0g
YXR0cmlidXRlIHVuc2lnbmVkIHNob3J0IG1lZXRPclNsaWNlOworICAgIFtTZXR0ZXJSYWlzZXNF
eGNlcHRpb25dIGF0dHJpYnV0ZSB1bnNpZ25lZCBzaG9ydCBtZWV0T3JTbGljZTsKIH07CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdSZWN0LmlkbCBiL1NvdXJjZS9XZWJDb3Jl
L3N2Zy9TVkdSZWN0LmlkbAppbmRleCAyYTM1NjFlNTRkZmU5ZDI4YTkwODJmN2U4NWNiNTkyNTI4
MWM2ZTI0Li43MjllMTYzZTMyZmM4Yzc4NGQ5ODFmZDgzNGE2OWViODIwYWNjZjZiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUmVjdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
c3ZnL1NWR1JlY3QuaWRsCkBAIC0yMSw5ICsyMSw5IEBACiAgKi8KIAogaW50ZXJmYWNlIFNWR1Jl
Y3QgewotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxv
YXQgeDsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZs
b2F0IHk7Ci0gICAgW1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBm
bG9hdCB3aWR0aDsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmlj
dGVkIGZsb2F0IGhlaWdodDsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHg7Cisg
ICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB5OworICAgIGF0dHJpYnV0ZSB1bnJlc3Ry
aWN0ZWQgZmxvYXQgd2lkdGg7CisgICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCBoZWln
aHQ7CiB9OwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKaW5kZXggMDBiYzBhODlkZjI5NWQxYTJjOThkYzUyMTFkMTQyMjEzOTVhOTBm
ZS4uYTI0MDNlZDBjNTk1MDViYzU5ZjczY2ZkNzg0YTJlNDFkZDZiY2I3YSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSw1
ICsxLDE5IEBACiAyMDE2LTA3LTMwICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAK
KyAgICAgICAgW1dlYklETF0gRW5hYmxlIHN0cmljdCB0eXBlIGNoZWNraW5nIGZvciBudWxsYWJs
ZSBhdHRyaWJ1dGUgc2V0dGVycyBvZiB3cmFwcGVyIHR5cGVzCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjAzNzUKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZWJhc2VsaW5lIC8gdXBkYXRlIGV4aXN0aW5n
IHRlc3RzIHRvIHJlZmxlY3QgYmVoYXZpb3IgY2hhbmdlLgorCisgICAgICAgICogZmFzdC9zcGVl
Y2hzeW50aGVzaXMvc3BlZWNoLXN5bnRoZXNpcy1jcmFzaC1vbi1iYWQtdXR0ZXJhbmNlLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L3NwZWVjaHN5bnRoZXNpcy9zcGVlY2gtc3ludGhlc2lz
LWNyYXNoLW9uLWJhZC11dHRlcmFuY2UuaHRtbDoKKyAgICAgICAgKiB3ZWJhdWRpby9jb252b2x2
ZXItc2V0QnVmZmVyLW51bGwtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYmF1ZGlvL2NvbnZv
bHZlci1zZXRCdWZmZXItbnVsbC5odG1sOgorCisyMDE2LTA3LTMwICBDaHJpcyBEdW1leiAgPGNk
dW1lekBhcHBsZS5jb20+CisKICAgICAgICAgW1dlYklETF0gRW5hYmxlIHN0cmljdCB0eXBlIGNo
ZWNraW5nIGZvciBvcGVyYXRpb25zJyBudWxsYWJsZSBwYXJhbWV0ZXJzIG9mIHdyYXBwZXIgdHlw
ZXMKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2MDM3
NAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2ZpbGUvaW5wdXQtZmlsZS13
cml0ZS1maWxlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2ZpbGUvaW5w
dXQtZmlsZS13cml0ZS1maWxlcy1leHBlY3RlZC50eHQKaW5kZXggNTZiZmYwNTQ2MDNkYjc3Yjg1
OGQ5ZTA5MDZiMjc0NGY2MmJjMzc5Yy4uZTc3OTBmMzQzNjI1Njk0NWI4ZTUwNmE5NDFiZmE4ODQ5
NmI0MDM3YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9maWxlL2lucHV0LWZp
bGUtd3JpdGUtZmlsZXMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMv
ZmlsZS9pbnB1dC1maWxlLXdyaXRlLWZpbGVzLWV4cGVjdGVkLnR4dApAQCAtMyw2ICszLDcgQEAg
VGhpcyB0ZXN0cyB0aGUgZmlsZXMgYXR0cmlidXRlIGluIGZpbGUgaW5wdXQgZm9ybXMKIE9uIHN1
Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2Vk
IGJ5ICJURVNUIENPTVBMRVRFIi4KIAogCitQQVNTIGZpbGUxLmZpbGVzID0gImZvbyIgdGhyZXcg
ZXhjZXB0aW9uIFR5cGVFcnJvcjogVGhlIEhUTUxJbnB1dEVsZW1lbnQuZmlsZXMgYXR0cmlidXRl
IG11c3QgYmUgYW4gaW5zdGFuY2Ugb2YgRmlsZUxpc3QuCiBQQVNTIGZpbGUxLmZpbGVzLmxlbmd0
aCBpcyAxCiBQQVNTIGZpbGUxLmZpbGVzLml0ZW0oMCkubmFtZSBpcyAiZm9vLnR4dCIKIFBBU1Mg
ZmlsZTEuZmlsZXMubGVuZ3RoIGlzIDEKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZm9y
bXMvZmlsZS9pbnB1dC1maWxlLXdyaXRlLWZpbGVzLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Zv
cm1zL2ZpbGUvaW5wdXQtZmlsZS13cml0ZS1maWxlcy5odG1sCmluZGV4IGUzODExOWZiNjU5Mjlm
NjFiMDYzYTczY2Q3ZmZlZWRhNjY0ZjNkYzUuLjU0YTc4YmU5MTAzMmNmY2FiOTg1Mzc1OGFkNmFj
MjA1OTk2NmZjMzIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvZmlsZS9pbnB1
dC1maWxlLXdyaXRlLWZpbGVzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9maWxl
L2lucHV0LWZpbGUtd3JpdGUtZmlsZXMuaHRtbApAQCAtMTUsNyArMTUsNyBAQCBpZiAod2luZG93
LnRlc3RSdW5uZXIpIHsKICAgICBkcmFnRmlsZXNPbnRvSW5wdXQoZmlsZTEsIFsiZm9vLnR4dCJd
KTsKICAgICBkcmFnRmlsZXNPbnRvSW5wdXQoZmlsZTIsIFsiYmFyLnR4dCJdKTsKIAotICAgIGZp
bGUxLmZpbGVzID0gImZvbyI7CisgICAgc2hvdWxkVGhyb3coJ2ZpbGUxLmZpbGVzID0gImZvbyIn
KTsKICAgICBzaG91bGRCZSgiZmlsZTEuZmlsZXMubGVuZ3RoIiwgIjEiKTsKICAgICBzaG91bGRC
ZUVxdWFsVG9TdHJpbmcoImZpbGUxLmZpbGVzLml0ZW0oMCkubmFtZSIsICJmb28udHh0Iik7CiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvc3BlZWNoc3ludGhlc2lzL3NwZWVjaC1zeW50
aGVzaXMtY3Jhc2gtb24tYmFkLXV0dGVyYW5jZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9m
YXN0L3NwZWVjaHN5bnRoZXNpcy9zcGVlY2gtc3ludGhlc2lzLWNyYXNoLW9uLWJhZC11dHRlcmFu
Y2UtZXhwZWN0ZWQudHh0CmluZGV4IGRiYTc4OWE1MTk4ODE3MmJkMTEzOTI2MGRjYzllMmQwNjc5
YTc3MWMuLjU2ZjMzMDljN2QwOTgwODdjN2Y5ZTI0MThiODE5NTdmMzVmYWU4OTQgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2Zhc3Qvc3BlZWNoc3ludGhlc2lzL3NwZWVjaC1zeW50aGVzaXMtY3Jh
c2gtb24tYmFkLXV0dGVyYW5jZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9z
cGVlY2hzeW50aGVzaXMvc3BlZWNoLXN5bnRoZXNpcy1jcmFzaC1vbi1iYWQtdXR0ZXJhbmNlLWV4
cGVjdGVkLnR4dApAQCAtNCw2ICs0LDcgQEAgT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2Vy
aWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUKIAogCiBQ
QVNTIHNwZWVjaFN5bnRoZXNpcy5zcGVhaygnSGVsbG8gV29ybGQnKSB0aHJldyBleGNlcHRpb24g
VHlwZUVycm9yOiBBcmd1bWVudCAxICgndXR0ZXJhbmNlJykgdG8gU3BlZWNoU3ludGhlc2lzLnNw
ZWFrIG11c3QgYmUgYW4gaW5zdGFuY2Ugb2YgU3BlZWNoU3ludGhlc2lzVXR0ZXJhbmNlLgorUEFT
UyB4LnZvaWNlID0gImFzZGYiIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFRoZSBTcGVlY2hT
eW50aGVzaXNVdHRlcmFuY2Uudm9pY2UgYXR0cmlidXRlIG11c3QgYmUgYW4gaW5zdGFuY2Ugb2Yg
U3BlZWNoU3ludGhlc2lzVm9pY2UuCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAK
IFRFU1QgQ09NUExFVEUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvc3BlZWNoc3ludGhl
c2lzL3NwZWVjaC1zeW50aGVzaXMtY3Jhc2gtb24tYmFkLXV0dGVyYW5jZS5odG1sIGIvTGF5b3V0
VGVzdHMvZmFzdC9zcGVlY2hzeW50aGVzaXMvc3BlZWNoLXN5bnRoZXNpcy1jcmFzaC1vbi1iYWQt
dXR0ZXJhbmNlLmh0bWwKaW5kZXggOWQ1NDA5NGQ5NTQ4OTZlZTUyY2EwMmQwMGM0Y2JiZmUyZmIw
YTc3My4uMmI0ZGQyMDY1ZTRmMjVkNDZhZjdlODljY2M1MWZmMjA0M2QzMzY1MiAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvZmFzdC9zcGVlY2hzeW50aGVzaXMvc3BlZWNoLXN5bnRoZXNpcy1jcmFz
aC1vbi1iYWQtdXR0ZXJhbmNlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9zcGVlY2hzeW50
aGVzaXMvc3BlZWNoLXN5bnRoZXNpcy1jcmFzaC1vbi1iYWQtdXR0ZXJhbmNlLmh0bWwKQEAgLTE2
LDcgKzE2LDcgQEAKIAogICAgICAvLyBEb24ndCBjcmFzaC4gQW4gdXR0ZXJhbmNlIHZvaWNlIGlz
IHN1cHBvc2VkIHRvIHRha2UgYSB2b2ljZSBvYmplY3QsIG5vdCBhIHN0cmluZy4KICAgICAgdmFy
IHggPSBuZXcgU3BlZWNoU3ludGhlc2lzVXR0ZXJhbmNlKCdIZWxsbyBXb3JsZCcpOwotICAgICB4
LnZvaWNlID0gImFzZGYiOworICAgICBzaG91bGRUaHJvdygneC52b2ljZSA9ICJhc2RmIicpOwog
CiAgICAgIC8vIERvbid0IGNyYXNoLiBBbiB1dHRlcmFuY2UgaXMgc3VwcG9zZWQgdG8gdGFrZSBh
IHN0cmluZywgbm90IGEgbnVtYmVyLgogICAgICB4ID0gbmV3IFNwZWVjaFN5bnRoZXNpc1V0dGVy
YW5jZSgyMjMpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViYXVkaW8vY29udm9sdmVyLXNl
dEJ1ZmZlci1udWxsLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL2NvbnZvbHZl
ci1zZXRCdWZmZXItbnVsbC1leHBlY3RlZC50eHQKaW5kZXggNjJjOGQ3YmM3NDZiMTBjMTNhYmI4
MjU0NTA0NTI1ZDM3OTgwOGFiZC4uZGEwMzkxMjg3ODljZTE0MGE3MDEyYzI2OGIzMDFiZTU0MDVm
NGY0YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViYXVkaW8vY29udm9sdmVyLXNldEJ1ZmZl
ci1udWxsLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9jb252b2x2ZXIt
c2V0QnVmZmVyLW51bGwtZXhwZWN0ZWQudHh0CkBAIC0xLDggKzEsMTIgQEAKLVRlc3RzIHRoYXQg
Q29udm9sdmVyTm9kZSBpbXB1bHNlIHJlc3BvbnNlIGJ1ZmZlciBjYW4gYmUgc2V0IHRvIDAuCitU
ZXN0cyB0aGF0IENvbnZvbHZlck5vZGUgaW1wdWxzZSByZXNwb25zZSBidWZmZXIgY2FuIGJlIHNl
dCB0byBudWxsLgogCiBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1Mi
IG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCiAKLVBBU1MgQ29udm9sdmVy
Tm9kZSBpbXB1bHNlIHJlc3BvbnNlIGJ1ZmZlciB3YXMgc2V0IHRvIDAuCisKK1BBU1MgY29udi5i
dWZmZXIgPSBudWxsIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBjb252LmJ1ZmZlciBp
cyBudWxsCitQQVNTIGNvbnYuYnVmZmVyID0gZG9jdW1lbnQgdGhyZXcgZXhjZXB0aW9uIFR5cGVF
cnJvcjogVGhlIENvbnZvbHZlck5vZGUuYnVmZmVyIGF0dHJpYnV0ZSBtdXN0IGJlIGFuIGluc3Rh
bmNlIG9mIEF1ZGlvQnVmZmVyLgorUEFTUyBjb252LmJ1ZmZlciBpcyBudWxsCiBQQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3dlYmF1ZGlvL2NvbnZvbHZlci1zZXRCdWZmZXItbnVsbC5odG1sIGIvTGF5b3V0VGVz
dHMvd2ViYXVkaW8vY29udm9sdmVyLXNldEJ1ZmZlci1udWxsLmh0bWwKaW5kZXggNzE0Zjc0YWFh
YWM3N2QyNmVjMzczNDI3YzM2Mzc1ZjQ0YjliMGFiMC4uYjYxZDY5ZjQwODkzMGM4YjcyNDI2MTA1
Yjc4NGU4NTJiNGM4ZGI1NSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViYXVkaW8vY29udm9s
dmVyLXNldEJ1ZmZlci1udWxsLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vY29udm9s
dmVyLXNldEJ1ZmZlci1udWxsLmh0bWwKQEAgLTEsMzkgKzEsMjIgQEAKLTwhRE9DVFlQRSBIVE1M
IFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iPgorPCFET0NU
WVBFIGh0bWw+CiA8aHRtbD4KIDxoZWFkPgogPHNjcmlwdCBzcmM9InJlc291cmNlcy9hdWRpby10
ZXN0aW5nLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvanMtdGVzdC1w
cmUuanMiPjwvc2NyaXB0PgogPC9oZWFkPgotCiA8Ym9keT4KLTxkaXYgaWQ9ImRlc2NyaXB0aW9u
Ij48L2Rpdj4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotCiA8c2NyaXB0PgotZGVzY3JpcHRp
b24oIlRlc3RzIHRoYXQgQ29udm9sdmVyTm9kZSBpbXB1bHNlIHJlc3BvbnNlIGJ1ZmZlciBjYW4g
YmUgc2V0IHRvIDAuIik7Ci0KLWZ1bmN0aW9uIHJ1blRlc3QoKQotewotICAgIGlmICh3aW5kb3cu
dGVzdFJ1bm5lcikgewotICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKLSAgICAgICAg
dGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgfQorZGVzY3JpcHRpb24oIlRlc3RzIHRo
YXQgQ29udm9sdmVyTm9kZSBpbXB1bHNlIHJlc3BvbnNlIGJ1ZmZlciBjYW4gYmUgc2V0IHRvIG51
bGwuIik7CiAKLSAgICB3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7Cit2YXIgY29udGV4dCA9
IG5ldyB3ZWJraXRBdWRpb0NvbnRleHQoKTsKK3ZhciBjb252ID0gY29udGV4dC5jcmVhdGVDb252
b2x2ZXIoKTsKIAotICAgIHZhciBjb250ZXh0ID0gbmV3IHdlYmtpdEF1ZGlvQ29udGV4dCgpOwot
ICAgIHZhciBjb252ID0gY29udGV4dC5jcmVhdGVDb252b2x2ZXIoKTsKK3Nob3VsZE5vdFRocm93
KCJjb252LmJ1ZmZlciA9IG51bGwiKTsKK3Nob3VsZEJlKCJjb252LmJ1ZmZlciIsICJudWxsIik7
CiAKLSAgICBjb252LmJ1ZmZlciA9IDA7Ci0gICAgdGVzdFBhc3NlZCgiQ29udm9sdmVyTm9kZSBp
bXB1bHNlIHJlc3BvbnNlIGJ1ZmZlciB3YXMgc2V0IHRvIDAuIik7Ci0KLSAgICBmaW5pc2hKU1Rl
c3QoKTsKLX0KLQotcnVuVGVzdCgpOwotc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKK3Nob3Vs
ZFRocm93KCJjb252LmJ1ZmZlciA9IGRvY3VtZW50Iik7CitzaG91bGRCZSgiY29udi5idWZmZXIi
LCAibnVsbCIpOwogPC9zY3JpcHQ+Ci0KIDxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvanMtdGVz
dC1wb3N0LmpzIj48L3NjcmlwdD4KIDwvYm9keT4KIDwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>284958</attachid>
            <date>2016-07-30 17:18:22 -0700</date>
            <delta_ts>2016-07-30 17:24:39 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-160375-20160730171706.patch</filename>
            <type>text/plain</type>
            <size>38748</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAzOTQ3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODhmYWZiYzQwMDcwYzA5
MGZkMjc2N2E5N2E1ZDZmYTEwNTFiYzBlNS4uYjMyYzlmMTYwM2QwMzgzMzExYmRkMjBkYmY4ODAz
ZThkYzM3MThlNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDYzIEBACisyMDE2LTA3LTMwICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgW1dlYklETF0gRW5hYmxlIHN0
cmljdCB0eXBlIGNoZWNraW5nIGZvciBudWxsYWJsZSBhdHRyaWJ1dGUgc2V0dGVycyBvZiB3cmFw
cGVyIHR5cGVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xNjAzNzUKKworICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKworICAgICAgICBF
bmFibGUgc3RyaWN0IHR5cGUgY2hlY2tpbmcgZm9yIG51bGxhYmxlIGF0dHJpYnV0ZSBzZXR0ZXJz
IG9mIHdyYXBwZXIgdHlwZXM6CisgICAgICAgIC0gaHR0cDovL2hleWNhbS5naXRodWIuaW8vd2Vi
aWRsLyNlcy1udWxsYWJsZS10eXBlCisgICAgICAgIC0gaHR0cDovL2hleWNhbS5naXRodWIuaW8v
d2ViaWRsLyNlcy1pbnRlcmZhY2UKKworICAgICAgICBGb3Igc3VjaCBhdHRyaWJ1dGVzLCBpZiB0
aGUgSlMgdHJpZXMgdG8gYXNzaWduIGEgdmFsdWUgdGhhdCBpcyBub3QgbnVsbCAvCisgICAgICAg
IHVuZGVmaW5lZCBhbmQgZG9lcyBub3QgaGF2ZSB0aGUgZXhwZWN0ZWQgd3JhcHBlciB0eXBlLCB0
aGVuIHdlIG5vdyB0aHJvdyBhCisgICAgICAgIFR5cGVFcnJvciBpbnN0ZWFkIG9mIHNpbGVudGx5
IGNvbnZlcnRpbmcgdGhlIHZhbHVlIHRvIG51bGwuCisKKyAgICAgICAgVGhpcyBiZWhhdmlvciBp
cyBjb25zaXN0ZW50IHdpdGggQ2hyb21lIGFuZCBGaXJlZm94LiBJdCBhbHNvIGhlbHBzIGlkZW50
aWZ5CisgICAgICAgIGJ1Z3MgaW4gSmF2YVNjcmlwdCBjb2RlLgorCisgICAgICAgIE5vIG5ldyB0
ZXN0cywgdXBkYXRlZCBleGlzdGluZyB0ZXN0cy4KKworICAgICAgICAqIE1vZHVsZXMvd2ViYXVk
aW8vQXVkaW9CdWZmZXJTb3VyY2VOb2RlLmlkbDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRz
L0NvZGVHZW5lcmF0b3JKUy5wbToKKyAgICAgICAgKEdlbmVyYXRlSW1wbGVtZW50YXRpb24pOgor
ICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPYmouY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6c2V0SlNUZXN0T2JqVGVzdE51bGxhYmxlT2JqQXR0cik6CisgICAgICAgIChX
ZWJDb3JlOjpzZXRKU1Rlc3RPYmpNdXRhYmxlUG9pbnQpOgorICAgICAgICAoV2ViQ29yZTo6c2V0
SlNUZXN0T2JqSW1tdXRhYmxlUG9pbnQpOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVz
dC9UZXN0T2JqLmlkbDoKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuaWRsOgorICAgICAgICAqIGh0
bWwvSFRNTFRhYmxlRWxlbWVudC5pZGw6CisgICAgICAgICogc3ZnL1NWR0FuZ2xlLmlkbDoKKyAg
ICAgICAgKiBzdmcvU1ZHQW5pbWF0ZWRCb29sZWFuLmlkbDoKKyAgICAgICAgKiBzdmcvU1ZHQW5p
bWF0ZWRFbnVtZXJhdGlvbi5pZGw6CisgICAgICAgICogc3ZnL1NWR0FuaW1hdGVkSW50ZWdlci5p
ZGw6CisgICAgICAgICogc3ZnL1NWR0FuaW1hdGVkTnVtYmVyLmlkbDoKKyAgICAgICAgKiBzdmcv
U1ZHTGVuZ3RoLmlkbDoKKyAgICAgICAgKiBzdmcvU1ZHTWF0cml4LmlkbDoKKyAgICAgICAgKiBz
dmcvU1ZHTnVtYmVyLmlkbDoKKyAgICAgICAgKiBzdmcvU1ZHUGF0aFNlZ0FyY0Ficy5pZGw6Cisg
ICAgICAgICogc3ZnL1NWR1BhdGhTZWdBcmNSZWwuaWRsOgorICAgICAgICAqIHN2Zy9TVkdQYXRo
U2VnQ3VydmV0b0N1YmljQWJzLmlkbDoKKyAgICAgICAgKiBzdmcvU1ZHUGF0aFNlZ0N1cnZldG9D
dWJpY1JlbC5pZGw6CisgICAgICAgICogc3ZnL1NWR1BhdGhTZWdDdXJ2ZXRvQ3ViaWNTbW9vdGhB
YnMuaWRsOgorICAgICAgICAqIHN2Zy9TVkdQYXRoU2VnQ3VydmV0b0N1YmljU21vb3RoUmVsLmlk
bDoKKyAgICAgICAgKiBzdmcvU1ZHUGF0aFNlZ0N1cnZldG9RdWFkcmF0aWNBYnMuaWRsOgorICAg
ICAgICAqIHN2Zy9TVkdQYXRoU2VnQ3VydmV0b1F1YWRyYXRpY1JlbC5pZGw6CisgICAgICAgICog
c3ZnL1NWR1BhdGhTZWdDdXJ2ZXRvUXVhZHJhdGljU21vb3RoQWJzLmlkbDoKKyAgICAgICAgKiBz
dmcvU1ZHUGF0aFNlZ0N1cnZldG9RdWFkcmF0aWNTbW9vdGhSZWwuaWRsOgorICAgICAgICAqIHN2
Zy9TVkdQYXRoU2VnTGluZXRvQWJzLmlkbDoKKyAgICAgICAgKiBzdmcvU1ZHUGF0aFNlZ0xpbmV0
b0hvcml6b250YWxBYnMuaWRsOgorICAgICAgICAqIHN2Zy9TVkdQYXRoU2VnTGluZXRvSG9yaXpv
bnRhbFJlbC5pZGw6CisgICAgICAgICogc3ZnL1NWR1BhdGhTZWdMaW5ldG9SZWwuaWRsOgorICAg
ICAgICAqIHN2Zy9TVkdQYXRoU2VnTGluZXRvVmVydGljYWxBYnMuaWRsOgorICAgICAgICAqIHN2
Zy9TVkdQYXRoU2VnTGluZXRvVmVydGljYWxSZWwuaWRsOgorICAgICAgICAqIHN2Zy9TVkdQYXRo
U2VnTW92ZXRvQWJzLmlkbDoKKyAgICAgICAgKiBzdmcvU1ZHUGF0aFNlZ01vdmV0b1JlbC5pZGw6
CisgICAgICAgICogc3ZnL1NWR1BvaW50LmlkbDoKKyAgICAgICAgKiBzdmcvU1ZHUHJlc2VydmVB
c3BlY3RSYXRpby5pZGw6CisgICAgICAgICogc3ZnL1NWR1JlY3QuaWRsOgorCiAyMDE2LTA3LTMw
ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBTeW5jaHJvbm91
cyBwcmVmbGlnaHQgc2hvdWxkIGNoZWNrIGZvciBzdWNjZXNzZnVsIHJlc3BvbnNlcwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRpb0J1ZmZlclNvdXJjZU5v
ZGUuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRpb0J1ZmZlclNvdXJj
ZU5vZGUuaWRsCmluZGV4IDdhNTc4ZDhkNmI0NjczZWVjOTMyOTM1MzdhNzVjN2NjZmFiMmFiOWMu
LmI5NmMzMjJlNjI4ZmQxNjFkN2ZmODQwYmYxZDg0NGRiYzExMjM3ZDEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9CdWZmZXJTb3VyY2VOb2RlLmlkbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvQnVmZmVyU291cmNlTm9k
ZS5pZGwKQEAgLTI3LDcgKzI3LDcgQEAKICAgICBDb25kaXRpb25hbD1XRUJfQVVESU8sCiAgICAg
SlNHZW5lcmF0ZVRvSlNPYmplY3QsCiBdIGludGVyZmFjZSBBdWRpb0J1ZmZlclNvdXJjZU5vZGUg
OiBBdWRpb05vZGUgewotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSBBdWRpb0J1
ZmZlcj8gYnVmZmVyOworICAgIGF0dHJpYnV0ZSBBdWRpb0J1ZmZlcj8gYnVmZmVyOwogCiAgICAg
Y29uc3QgdW5zaWduZWQgc2hvcnQgVU5TQ0hFRFVMRURfU1RBVEUgPSAwOwogICAgIGNvbnN0IHVu
c2lnbmVkIHNob3J0IFNDSEVEVUxFRF9TVEFURSA9IDE7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbSBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCmluZGV4IDQyYzJkYThjYzNjZTA4
ZDE4ZDlmYzc1YmI4NmM1MTUwNTBjNWUxNTguLmEwYTVmN2YwOGEwZWRkZTc2NWY0YTM3YzRjMjY5
Mjk0ODUzYTQyY2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
Q29kZUdlbmVyYXRvckpTLnBtCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
Q29kZUdlbmVyYXRvckpTLnBtCkBAIC0yOTI1LDYgKzI5MjUsNyBAQCBzdWIgR2VuZXJhdGVJbXBs
ZW1lbnRhdGlvbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50
LCAiICAgIGF1dG8mIGltcGwgPSBmb3J3YXJkZWRJbXBsLmdldCgpO1xuIik7CiAgICAgICAgICAg
ICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAkYXR0cmlidXRlID0gJGNv
ZGVHZW5lcmF0b3ItPkdldEF0dHJpYnV0ZUZyb21JbnRlcmZhY2UoJGludGVyZmFjZSwgJHR5cGUs
ICRwdXRGb3J3YXJkcyk7CisgICAgICAgICAgICAgICAgICAgICAgICAkdHlwZSA9ICRhdHRyaWJ1
dGUtPnNpZ25hdHVyZS0+dHlwZTsKICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAg
ICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGF1dG8mIGltcGwgPSBj
YXN0ZWRUaGlzLT53cmFwcGVkKCk7XG4iKTsKICAgICAgICAgICAgICAgICAgICAgfQpAQCAtMjkz
NywyMCArMjkzOCwxNSBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgogCiAgICAgICAgICAg
ICAgICAgbXkgJHNob3VsZFBhc3NCeVJlZmVyZW5jZSA9IFNob3VsZFBhc3NXcmFwcGVyQnlSZWZl
cmVuY2UoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLCAkaW50ZXJmYWNlKTsKIAotICAgICAgICAgICAg
ICAgICMgSWYgdGhlICJTdHJpY3RUeXBlQ2hlY2tpbmciIGV4dGVuZGVkIGF0dHJpYnV0ZSBpcyBw
cmVzZW50LCBhbmQgdGhlIGF0dHJpYnV0ZSdzIHR5cGUgaXMgYW4KLSAgICAgICAgICAgICAgICAj
IGludGVyZmFjZSB0eXBlLCB0aGVuIGlmIHRoZSBpbmNvbWluZyB2YWx1ZSBkb2VzIG5vdCBpbXBs
ZW1lbnQgdGhhdCBpbnRlcmZhY2UsIGEgVHlwZUVycm9yCi0gICAgICAgICAgICAgICAgIyBpcyB0
aHJvd24gcmF0aGVyIHRoYW4gc2lsZW50bHkgcGFzc2luZyBOVUxMIHRvIHRoZSBDKysgY29kZS4K
LSAgICAgICAgICAgICAgICAjIFBlciB0aGUgV2ViIElETCBhbmQgRUNNQVNjcmlwdCBzcGVjaWZp
Y2F0aW9ucywgaW5jb21pbmcgdmFsdWVzIGNhbiBhbHdheXMgYmUgY29udmVydGVkIHRvCi0gICAg
ICAgICAgICAgICAgIyBib3RoIHN0cmluZ3MgYW5kIG51bWJlcnMsIHNvIGRvIG5vdCB0aHJvdyBU
eXBlRXJyb3IgaWYgdGhlIGF0dHJpYnV0ZSBpcyBvZiB0aGVzZSB0eXBlcy4KICAgICAgICAgICAg
ICAgICBteSAoJG5hdGl2ZVZhbHVlLCAkbWF5VGhyb3dFeGNlcHRpb24pID0gSlNWYWx1ZVRvTmF0
aXZlKCRpbnRlcmZhY2UsICRhdHRyaWJ1dGUtPnNpZ25hdHVyZSwgInZhbHVlIiwgJGF0dHJpYnV0
ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ29uZGl0aW9uYWwifSk7Ci0gICAg
ICAgICAgICAgICAgaWYgKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVz
LT57IlN0cmljdFR5cGVDaGVja2luZyJ9ICYmICEkc2hvdWxkUGFzc0J5UmVmZXJlbmNlICYmICRj
b2RlR2VuZXJhdG9yLT5Jc1dyYXBwZXJUeXBlKCR0eXBlKSkgeworICAgICAgICAgICAgICAgIGlm
ICghJHNob3VsZFBhc3NCeVJlZmVyZW5jZSAmJiAkY29kZUdlbmVyYXRvci0+SXNXcmFwcGVyVHlw
ZSgkdHlwZSkpIHsKICAgICAgICAgICAgICAgICAgICAgJGltcGxJbmNsdWRlc3siPHJ1bnRpbWUv
RXJyb3IuaD4ifSA9IDE7CiAgICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAi
ICAgICIgLiBHZXROYXRpdmVUeXBlRnJvbVNpZ25hdHVyZSgkaW50ZXJmYWNlLCAkYXR0cmlidXRl
LT5zaWduYXR1cmUpIC4gIiBuYXRpdmVWYWx1ZSA9IG51bGxwdHI7XG4iKTsKICAgICAgICAgICAg
ICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgaWYgKCF2YWx1ZS5pc1VuZGVmaW5lZE9y
TnVsbCgpKSB7XG4iKTsKICAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIg
ICAgICAgIG5hdGl2ZVZhbHVlID0gJG5hdGl2ZVZhbHVlO1xuIik7CiAgICAgICAgICAgICAgICAg
ICAgIGlmICgkbWF5VGhyb3dFeGNlcHRpb24pIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIHB1
c2goQGltcGxDb250ZW50LCAiICAgIGlmIChVTkxJS0VMWShzdGF0ZS0+aGFkRXhjZXB0aW9uKCkp
KVxuIik7Ci0gICAgICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAg
ICAgcmV0dXJuIGZhbHNlO1xuIik7CisgICAgICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBs
Q29udGVudCwgIiAgICAgICAgaWYgKFVOTElLRUxZKHN0YXRlLT5oYWRFeGNlcHRpb24oKSkpXG4i
KTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgICAgICAg
ICAgcmV0dXJuIGZhbHNlO1xuIik7CiAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAg
ICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgICAgIGlmIChVTkxJS0VMWSghbmF0aXZl
VmFsdWUpKSB7XG4iKTsKICAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIg
ICAgICAgICAgICB0aHJvd0F0dHJpYnV0ZVR5cGVFcnJvcigqc3RhdGUsIFwiJHZpc2libGVJbnRl
cmZhY2VOYW1lXCIsIFwiJG5hbWVcIiwgXCIkdHlwZVwiKTtcbiIpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE9iai5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2JqLmNwcAppbmRleCA4
OTFlZmQ4YzJmYzc4NTUxODU1YzJkZGFmMzJmNjUwZWU5ZmE3Mzk0Li5lNzk5MDYyYjA4Yzc4MTYy
YmQ0MWYwYzQ1NzU3YTQyODlhMTdhODhjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2JqLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2JqLmNwcApAQCAtMjkzMSw3ICsyOTMxLDE0
IEBAIGJvb2wgc2V0SlNUZXN0T2JqVGVzdE51bGxhYmxlT2JqQXR0cihFeGVjU3RhdGUqIHN0YXRl
LCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsCiAgICAgICAgIHJldHVybiB0aHJvd1NldHRlclR5
cGVFcnJvcigqc3RhdGUsICJUZXN0T2JqZWN0IiwgInRlc3ROdWxsYWJsZU9iakF0dHIiKTsKICAg
ICB9CiAgICAgYXV0byYgaW1wbCA9IGNhc3RlZFRoaXMtPndyYXBwZWQoKTsKLSAgICBhdXRvIG5h
dGl2ZVZhbHVlID0gSlNUZXN0T2JqOjp0b1dyYXBwZWQodmFsdWUpOworICAgIFRlc3RPYmoqIG5h
dGl2ZVZhbHVlID0gbnVsbHB0cjsKKyAgICBpZiAoIXZhbHVlLmlzVW5kZWZpbmVkT3JOdWxsKCkp
IHsKKyAgICAgICAgbmF0aXZlVmFsdWUgPSBKU1Rlc3RPYmo6OnRvV3JhcHBlZCh2YWx1ZSk7Cisg
ICAgICAgIGlmIChVTkxJS0VMWSghbmF0aXZlVmFsdWUpKSB7CisgICAgICAgICAgICB0aHJvd0F0
dHJpYnV0ZVR5cGVFcnJvcigqc3RhdGUsICJUZXN0T2JqZWN0IiwgInRlc3ROdWxsYWJsZU9iakF0
dHIiLCAiVGVzdE9iaiIpOworICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICB9Cisg
ICAgfQogICAgIGltcGwuc2V0VGVzdE51bGxhYmxlT2JqQXR0cihXVEZNb3ZlKG5hdGl2ZVZhbHVl
KSk7CiAgICAgcmV0dXJuIHRydWU7CiB9CkBAIC0zNjc5LDcgKzM2ODYsMTQgQEAgYm9vbCBzZXRK
U1Rlc3RPYmpNdXRhYmxlUG9pbnQoRXhlY1N0YXRlKiBzdGF0ZSwgRW5jb2RlZEpTVmFsdWUgdGhp
c1ZhbHVlLCBFbmNvZGUKICAgICAgICAgcmV0dXJuIHRocm93U2V0dGVyVHlwZUVycm9yKCpzdGF0
ZSwgIlRlc3RPYmplY3QiLCAibXV0YWJsZVBvaW50Iik7CiAgICAgfQogICAgIGF1dG8mIGltcGwg
PSBjYXN0ZWRUaGlzLT53cmFwcGVkKCk7Ci0gICAgYXV0byBuYXRpdmVWYWx1ZSA9IEpTU1ZHUG9p
bnQ6OnRvV3JhcHBlZCh2YWx1ZSk7CisgICAgU1ZHUHJvcGVydHlUZWFyT2ZmPFNWR1BvaW50Piog
bmF0aXZlVmFsdWUgPSBudWxscHRyOworICAgIGlmICghdmFsdWUuaXNVbmRlZmluZWRPck51bGwo
KSkgeworICAgICAgICBuYXRpdmVWYWx1ZSA9IEpTU1ZHUG9pbnQ6OnRvV3JhcHBlZCh2YWx1ZSk7
CisgICAgICAgIGlmIChVTkxJS0VMWSghbmF0aXZlVmFsdWUpKSB7CisgICAgICAgICAgICB0aHJv
d0F0dHJpYnV0ZVR5cGVFcnJvcigqc3RhdGUsICJUZXN0T2JqZWN0IiwgIm11dGFibGVQb2ludCIs
ICJTVkdQb2ludCIpOworICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICB9CisgICAg
fQogICAgIGltcGwuc2V0TXV0YWJsZVBvaW50KFdURk1vdmUobmF0aXZlVmFsdWUpKTsKICAgICBy
ZXR1cm4gdHJ1ZTsKIH0KQEAgLTM2OTQsNyArMzcwOCwxNCBAQCBib29sIHNldEpTVGVzdE9iaklt
bXV0YWJsZVBvaW50KEV4ZWNTdGF0ZSogc3RhdGUsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwg
RW5jbwogICAgICAgICByZXR1cm4gdGhyb3dTZXR0ZXJUeXBlRXJyb3IoKnN0YXRlLCAiVGVzdE9i
amVjdCIsICJpbW11dGFibGVQb2ludCIpOwogICAgIH0KICAgICBhdXRvJiBpbXBsID0gY2FzdGVk
VGhpcy0+d3JhcHBlZCgpOwotICAgIGF1dG8gbmF0aXZlVmFsdWUgPSBKU1NWR1BvaW50Ojp0b1dy
YXBwZWQodmFsdWUpOworICAgIFNWR1Byb3BlcnR5VGVhck9mZjxTVkdQb2ludD4qIG5hdGl2ZVZh
bHVlID0gbnVsbHB0cjsKKyAgICBpZiAoIXZhbHVlLmlzVW5kZWZpbmVkT3JOdWxsKCkpIHsKKyAg
ICAgICAgbmF0aXZlVmFsdWUgPSBKU1NWR1BvaW50Ojp0b1dyYXBwZWQodmFsdWUpOworICAgICAg
ICBpZiAoVU5MSUtFTFkoIW5hdGl2ZVZhbHVlKSkgeworICAgICAgICAgICAgdGhyb3dBdHRyaWJ1
dGVUeXBlRXJyb3IoKnN0YXRlLCAiVGVzdE9iamVjdCIsICJpbW11dGFibGVQb2ludCIsICJTVkdQ
b2ludCIpOworICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICB9CisgICAgfQogICAg
IGltcGwuc2V0SW1tdXRhYmxlUG9pbnQoV1RGTW92ZShuYXRpdmVWYWx1ZSkpOwogICAgIHJldHVy
biB0cnVlOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L1Rlc3RPYmouaWRsIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rl
c3RPYmouaWRsCmluZGV4IDQzODgzMmNjMjg4ZTMyY2M0YTI2MDlkYzg5MGZmYjk1ZGMxM2ZkNDIu
LjQxNDdhMWE1YWYxNjYwNTJiZWI0ZWRhZmQ0NjQxMzBkZDU4ZjAyZjQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0T2JqLmlkbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE9iai5pZGwKQEAgLTEzNiw5ICsx
MzYsNiBAQCBlbnVtIFRlc3RDb25maWRlbmNlIHsgImhpZ2giLCAia2luZGEtbG93IiB9OwogICAg
IFtHZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSBET01TdHJpbmcgc3RyaW5nQXR0cldp
dGhHZXR0ZXJFeGNlcHRpb247CiAgICAgW1NldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRl
IERPTVN0cmluZyBzdHJpbmdBdHRyV2l0aFNldHRlckV4Y2VwdGlvbjsKIAotICAgIC8vIFN0cmlj
dCB0eXBlIGNoZWNraW5nLgotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSBUZXN0
T2JqPyBzdHJpY3RUeXBlQ2hlY2tpbmdBdHRyaWJ1dGU7Ci0KICAgICAvLyAnQ3VzdG9tJyBleHRl
bmRlZCBhdHRyaWJ1dGUKICAgICBbQ3VzdG9tXSBhdHRyaWJ1dGUgbG9uZyAgICAgICAgICAgIGN1
c3RvbUF0dHI7CiAgICAgW0N1c3RvbV0gdm9pZCBjdXN0b21NZXRob2QoKTsKQEAgLTMxMiw3ICsz
MDksNiBAQCBlbnVtIFRlc3RDb25maWRlbmNlIHsgImhpZ2giLCAia2luZGEtbG93IiB9OwogICAg
IFtJbXBsZW1lbnRlZEFzPWJhbmFuYV0gdm9pZCBvcmFuZ2UoKTsKICAgICBbSW1wbGVtZW50ZWRB
cz1ibHVlYmVycnldIGF0dHJpYnV0ZSBsb25nIHN0cmF3YmVycnk7CiAKLSAgICBbU3RyaWN0VHlw
ZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHN0cmljdEZsb2F0OwogICAg
IFtTdHJpY3RUeXBlQ2hlY2tpbmcsIFJhaXNlc0V4Y2VwdGlvbl0gYm9vbGVhbiBzdHJpY3RGdW5j
dGlvbihET01TdHJpbmcgc3RyLCB1bnJlc3RyaWN0ZWQgZmxvYXQgYSwgbG9uZyBiKTsKIAogICAg
IFtTdHJpY3RUeXBlQ2hlY2tpbmcsIFJhaXNlc0V4Y2VwdGlvbl0gYm9vbGVhbiBzdHJpY3RGdW5j
dGlvbldpdGhTZXF1ZW5jZShUZXN0T2JqPyBvYmpBcmcsIHNlcXVlbmNlPHVuc2lnbmVkIGxvbmc+
IGEpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmlkbCBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5pZGwKaW5kZXggNTRhZGYxZGJhYjQ1OWNmNWMxN2IxNmIz
MTI3YWMzY2JhNWRlYTcxNi4uNmI1ZjEyYzEyZTFhMmM1OThhMDVhZTg1ZWZiZThkMmNmOGY3ODc4
MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmlkbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaWRsCkBAIC0xNzAsNyArMTcwLDcgQEAKIAogICAgIFtH
ZXR0ZXJSYWlzZXNFeGNlcHRpb24sIFNldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIERP
TVN0cmluZyBjb29raWU7CiAKLSAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9uLCBJbXBsZW1lbnRl
ZEFzPWJvZHlPckZyYW1lc2V0LCBTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSBIVE1MRWxl
bWVudD8gYm9keTsKKyAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9uLCBJbXBsZW1lbnRlZEFzPWJv
ZHlPckZyYW1lc2V0XSBhdHRyaWJ1dGUgSFRNTEVsZW1lbnQ/IGJvZHk7CiAKICAgICByZWFkb25s
eSBhdHRyaWJ1dGUgSFRNTEhlYWRFbGVtZW50PyBoZWFkOwogICAgIHJlYWRvbmx5IGF0dHJpYnV0
ZSBIVE1MQ29sbGVjdGlvbiBpbWFnZXM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxUYWJsZUVsZW1lbnQuaWRsIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGFibGVFbGVt
ZW50LmlkbAppbmRleCA4YTJkM2FmMmZmYjg4Y2ZlM2RlODIwMTJjYzQ4YjQ4Y2YzN2VmZDFhLi5l
NzUzMzNjYTMxNDYxN2M5OTZjNTFjZGM0OGJmY2UzODk4ZTc4ZTFkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxUYWJsZUVsZW1lbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTFRhYmxlRWxlbWVudC5pZGwKQEAgLTE5LDkgKzE5LDkgQEAKICAqLwogCiBpbnRl
cmZhY2UgSFRNTFRhYmxlRWxlbWVudCA6IEhUTUxFbGVtZW50IHsKLSAgICBbU2V0dGVyUmFpc2Vz
RXhjZXB0aW9uLCBTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSBIVE1MVGFibGVDYXB0aW9u
RWxlbWVudD8gY2FwdGlvbjsKLSAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9uLCBTdHJpY3RUeXBl
Q2hlY2tpbmddIGF0dHJpYnV0ZSBIVE1MVGFibGVTZWN0aW9uRWxlbWVudD8gdEhlYWQ7Ci0gICAg
W1NldHRlclJhaXNlc0V4Y2VwdGlvbiwgU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgSFRN
TFRhYmxlU2VjdGlvbkVsZW1lbnQ/IHRGb290OworICAgIFtTZXR0ZXJSYWlzZXNFeGNlcHRpb25d
IGF0dHJpYnV0ZSBIVE1MVGFibGVDYXB0aW9uRWxlbWVudD8gY2FwdGlvbjsKKyAgICBbU2V0dGVy
UmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgSFRNTFRhYmxlU2VjdGlvbkVsZW1lbnQ/IHRIZWFk
OworICAgIFtTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSBIVE1MVGFibGVTZWN0aW9u
RWxlbWVudD8gdEZvb3Q7CiAKICAgICByZWFkb25seSBhdHRyaWJ1dGUgSFRNTENvbGxlY3Rpb24g
cm93czsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgSFRNTENvbGxlY3Rpb24gdEJvZGllczsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmdsZS5pZGwgYi9Tb3VyY2UvV2ViQ29y
ZS9zdmcvU1ZHQW5nbGUuaWRsCmluZGV4IDIwZmRkMzQ4ZjkxNjdjZjcyZjBmNmIzZDIzMjUxODJh
ODkyYmE0YmEuLjg5Y2RiYmRmNjMxMGQ4NzZkYzY3OTQ4MGNjYzhjNGYyNjQxNGNhYTMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmdsZS5pZGwKKysrIGIvU291cmNlL1dlYkNv
cmUvc3ZnL1NWR0FuZ2xlLmlkbApAQCAtMjksOCArMjksOCBAQCBpbnRlcmZhY2UgU1ZHQW5nbGUg
ewogICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IFNWR19BTkdMRVRZUEVfR1JBRCA9IDQ7CiAKICAg
ICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgc2hvcnQgdW5pdFR5cGU7Ci0gICAgW1N0cmlj
dFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB2YWx1ZTsKLSAgICBb
U3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHZhbHVlSW5T
cGVjaWZpZWRVbml0czsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHZhbHVlOwor
ICAgIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgdmFsdWVJblNwZWNpZmllZFVuaXRzOwog
CiAgICAgW1NldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0cmluZyB2YWx1ZUFz
U3RyaW5nOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5pbWF0ZWRCb29s
ZWFuLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRlZEJvb2xlYW4uaWRsCmluZGV4
IDYxNzJjY2NlNGM3YTE2ZmUxODdjZGEyZmJkOGJiNzk0M2IyODliYmYuLmIwNzIzNzEyOTBlYzIy
YTc5MzRkN2E3ODE0MmQ1YTdlZTIyMzBmMWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2
Zy9TVkdBbmltYXRlZEJvb2xlYW4uaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmlt
YXRlZEJvb2xlYW4uaWRsCkBAIC0yNiw3ICsyNiw3IEBACiBbCiAgICAgU2tpcFZUYWJsZVZhbGlk
YXRpb24KIF0gaW50ZXJmYWNlIFNWR0FuaW1hdGVkQm9vbGVhbiB7Ci0gICAgW1N0cmljdFR5cGVD
aGVja2luZywgU2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgYm9vbGVhbiBiYXNlVmFs
OworICAgIFtTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSBib29sZWFuIGJhc2VWYWw7
CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIGJvb2xlYW4gYW5pbVZhbDsKIH07CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRlZEVudW1lcmF0aW9uLmlkbCBiL1NvdXJj
ZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRlZEVudW1lcmF0aW9uLmlkbAppbmRleCA2YjIwZDQzYTll
MDlmNmFiMjc0MDdjMmU5Y2RjODJmOWNlZDA5MWFmLi5kMDM2MWVkOTViMzBhNjA4NjllMWU1MGU4
ZjI4MmIxMjhkM2QzMjM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5pbWF0
ZWRFbnVtZXJhdGlvbi5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGVkRW51
bWVyYXRpb24uaWRsCkBAIC0yNiw3ICsyNiw3IEBACiBbCiAgICAgU2tpcFZUYWJsZVZhbGlkYXRp
b24KIF0gaW50ZXJmYWNlIFNWR0FuaW1hdGVkRW51bWVyYXRpb24gewotICAgIFtTdHJpY3RUeXBl
Q2hlY2tpbmcsIFNldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIHVuc2lnbmVkIHNob3J0
IGJhc2VWYWw7CisgICAgW1NldHRlclJhaXNlc0V4Y2VwdGlvbl0gYXR0cmlidXRlIHVuc2lnbmVk
IHNob3J0IGJhc2VWYWw7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIHNob3J0IGFu
aW1WYWw7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5pbWF0ZWRJ
bnRlZ2VyLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRlZEludGVnZXIuaWRsCmlu
ZGV4IDNlNTVjYmY1ZTY2NTdmYWIxNDM4MjVjNGNmOGM0YTNmNDczNWM5ZjcuLjI4NWUxNjRhYmJm
YzRiOGY3MDUzOWY4ZTgzYzY2Y2NmMjZhMmQxYzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3N2Zy9TVkdBbmltYXRlZEludGVnZXIuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdB
bmltYXRlZEludGVnZXIuaWRsCkBAIC0yNiw3ICsyNiw3IEBACiBbCiAgICAgU2tpcFZUYWJsZVZh
bGlkYXRpb24KIF0gaW50ZXJmYWNlIFNWR0FuaW1hdGVkSW50ZWdlciB7Ci0gICAgW1N0cmljdFR5
cGVDaGVja2luZywgU2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgbG9uZyBiYXNlVmFs
OworICAgIFtTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSBsb25nIGJhc2VWYWw7CiAg
ICAgcmVhZG9ubHkgYXR0cmlidXRlIGxvbmcgYW5pbVZhbDsKIH07CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRlZE51bWJlci5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9z
dmcvU1ZHQW5pbWF0ZWROdW1iZXIuaWRsCmluZGV4IDZkNGNjNmJkODM0ZDZlZmRiZTNiNTlmN2E0
NTA4YmFhODAzZmQ0NzYuLjJlMTBmMDJiMjVkYjExOWQ0NGY5MzY1MTgzYTZiM2M0YTk4ZGY1YTAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRlZE51bWJlci5pZGwKKysr
IGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGVkTnVtYmVyLmlkbApAQCAtMjcsNyArMjcs
NyBAQAogWwogICAgIFNraXBWVGFibGVWYWxpZGF0aW9uCiBdIGludGVyZmFjZSBTVkdBbmltYXRl
ZE51bWJlciB7Ci0gICAgW1N0cmljdFR5cGVDaGVja2luZywgU2V0dGVyUmFpc2VzRXhjZXB0aW9u
XSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IGJhc2VWYWw7CisgICAgW1NldHRlclJhaXNl
c0V4Y2VwdGlvbl0gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCBiYXNlVmFsOwogICAgIHJl
YWRvbmx5IGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgYW5pbVZhbDsKIH07CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdMZW5ndGguaWRsIGIvU291cmNlL1dlYkNvcmUv
c3ZnL1NWR0xlbmd0aC5pZGwKaW5kZXggOTE0OWIzMjM5ZTVkYTFhZTZmZmZkNDVjNWViY2E4OWY3
YTY5NmJiOC4uNDU1ZDU4MDJmYzc0MmE0YjgyMDllNmJjZTYyODRhODdlODg4OTkyYiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0xlbmd0aC5pZGwKKysrIGIvU291cmNlL1dlYkNv
cmUvc3ZnL1NWR0xlbmd0aC5pZGwKQEAgLTM1LDExICszNSwxMSBAQCBpbnRlcmZhY2UgU1ZHTGVu
Z3RoIHsKICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBTVkdfTEVOR1RIVFlQRV9QQyAgICAgICAg
ID0gMTA7CiAKICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgc2hvcnQgdW5pdFR5cGU7
Ci0gICAgW0dldHRlclJhaXNlc0V4Y2VwdGlvbiwgU2V0dGVyUmFpc2VzRXhjZXB0aW9uLCBDdXN0
b20sIFN0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB2YWx1
ZTsKKyAgICBbR2V0dGVyUmFpc2VzRXhjZXB0aW9uLCBTZXR0ZXJSYWlzZXNFeGNlcHRpb24sIEN1
c3RvbV0gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB2YWx1ZTsKIAotICAgIFtTdHJpY3RU
eXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgdmFsdWVJblNwZWNpZmll
ZFVuaXRzOworICAgIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgdmFsdWVJblNwZWNpZmll
ZFVuaXRzOwogCi0gICAgW1N0cmljdFR5cGVDaGVja2luZywgU2V0dGVyUmFpc2VzRXhjZXB0aW9u
XSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHZhbHVlQXNTdHJpbmc7CisgICAgW1NldHRlclJhaXNlc0V4
Y2VwdGlvbl0gYXR0cmlidXRlIERPTVN0cmluZyB2YWx1ZUFzU3RyaW5nOwogCiAgICAgW1N0cmlj
dFR5cGVDaGVja2luZywgUmFpc2VzRXhjZXB0aW9uXSB2b2lkIG5ld1ZhbHVlU3BlY2lmaWVkVW5p
dHModW5zaWduZWQgc2hvcnQgdW5pdFR5cGUsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB1bnJlc3RyaWN0ZWQgZmxvYXQgdmFsdWVJblNwZWNp
ZmllZFVuaXRzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdNYXRyaXguaWRs
IGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR01hdHJpeC5pZGwKaW5kZXggZDlkMDlmYTlmMGNmYjUz
NDdiZWMzYjcwYWQzYWVlYjhjODc5MTNmZC4uMjM1M2I1M2YxMWMzYTM3ZWUyZTY1MTY5ZGE3MDYy
OGFhZGY4MGZmZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR01hdHJpeC5pZGwK
KysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR01hdHJpeC5pZGwKQEAgLTIzLDEyICsyMywxMiBA
QAogaW50ZXJmYWNlIFNWR01hdHJpeCB7CiAgICAgLy8gRklYTUU6IHRoZXNlIGF0dHJpYnV0ZXMg
c2hvdWxkIGFsbCBiZSBmbG9hdHMgYnV0IHNpbmNlIHdlIGltcGxlbWVudAogICAgIC8vIEFmZmlu
ZVRyYW5zZm9ybSB3aXRoIGRvdWJsZXMgc2V0dGluZyB0aGVzZSBhcyBkb3VibGVzIG1ha2VzIG1v
cmUgc2Vuc2UuCi0gICAgW1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3Rl
ZCBkb3VibGUgYTsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmlj
dGVkIGRvdWJsZSBiOwotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3Ry
aWN0ZWQgZG91YmxlIGM7Ci0gICAgW1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVz
dHJpY3RlZCBkb3VibGUgZDsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5y
ZXN0cmljdGVkIGRvdWJsZSBlOwotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1
bnJlc3RyaWN0ZWQgZG91YmxlIGY7CisgICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBkb3VibGUg
YTsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGRvdWJsZSBiOworICAgIGF0dHJpYnV0ZSB1
bnJlc3RyaWN0ZWQgZG91YmxlIGM7CisgICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBkb3VibGUg
ZDsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGRvdWJsZSBlOworICAgIGF0dHJpYnV0ZSB1
bnJlc3RyaWN0ZWQgZG91YmxlIGY7CiAKICAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBTVkdNYXRy
aXggbXVsdGlwbHkoU1ZHTWF0cml4IHNlY29uZE1hdHJpeCk7CiAgICAgW1JhaXNlc0V4Y2VwdGlv
bl0gU1ZHTWF0cml4IGludmVyc2UoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9T
VkdOdW1iZXIuaWRsIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR051bWJlci5pZGwKaW5kZXggNjE4
YmVmYjk5YmM0MmU2NzM0NDU2NDY0YTMzMGQ3NWQyZWQ1MDNiOC4uZjYwOTAzNzJkOWQ3ZDJjYzRi
NzgyZjM3MDhiYzA2ZjE5MDQ3NDYwOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NW
R051bWJlci5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR051bWJlci5pZGwKQEAgLTIx
LDYgKzIxLDYgQEAKICAqLwogCiBpbnRlcmZhY2UgU1ZHTnVtYmVyIHsKLSAgICBbU3RyaWN0VHlw
ZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHZhbHVlOworICAgIGF0dHJp
YnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgdmFsdWU7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0FyY0Ficy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZH
UGF0aFNlZ0FyY0Ficy5pZGwKaW5kZXggZDJiOTA5OGU2Y2ZjZmQxYTI1YjZhNTA1NDliY2MyZmVl
N2YwZTQxYS4uNzg0Njc4ZDY3MTUwZTFhNGViZmE4NGY2ZjljYjFhYjI1MDIzOGViYiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BhdGhTZWdBcmNBYnMuaWRsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnQXJjQWJzLmlkbApAQCAtMjUsMTIgKzI1LDEyIEBACiAg
Ki8KIAogaW50ZXJmYWNlIFNWR1BhdGhTZWdBcmNBYnMgOiBTVkdQYXRoU2VnIHsKLSAgICBbU3Ry
aWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHg7Ci0gICAgW1N0
cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB5OwotICAgIFtT
dHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgcjE7Ci0gICAg
W1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCByMjsKLSAg
ICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IGFuZ2xl
OwotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSBib29sZWFuIGxhcmdlQXJjRmxh
ZzsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgYm9vbGVhbiBzd2VlcEZsYWc7
CisgICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB4OworICAgIGF0dHJpYnV0ZSB1bnJl
c3RyaWN0ZWQgZmxvYXQgeTsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHIxOwor
ICAgIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgcjI7CisgICAgYXR0cmlidXRlIHVucmVz
dHJpY3RlZCBmbG9hdCBhbmdsZTsKKyAgICBhdHRyaWJ1dGUgYm9vbGVhbiBsYXJnZUFyY0ZsYWc7
CisgICAgYXR0cmlidXRlIGJvb2xlYW4gc3dlZXBGbGFnOwogfTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvc3ZnL1NWR1BhdGhTZWdBcmNSZWwuaWRsIGIvU291cmNlL1dlYkNvcmUvc3Zn
L1NWR1BhdGhTZWdBcmNSZWwuaWRsCmluZGV4IDFhZWU4YjgwMjIzODgzM2MwNWU0OTRiZTZkNGJk
NzhlMmM2MDRiNzQuLjg2ZmQzYjJlODFkOGU2YzdjMTRjZjQxYmVjZDcyY2IwMTA2OGFmODQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnQXJjUmVsLmlkbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0FyY1JlbC5pZGwKQEAgLTI1LDEyICsyNSwxMiBA
QAogICovCiAKIGludGVyZmFjZSBTVkdQYXRoU2VnQXJjUmVsIDogU1ZHUGF0aFNlZyB7Ci0gICAg
W1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB4OwotICAg
IFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeTsKLSAg
ICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHIxOwot
ICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgcjI7
Ci0gICAgW1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCBh
bmdsZTsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgYm9vbGVhbiBsYXJnZUFy
Y0ZsYWc7Ci0gICAgW1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIGJvb2xlYW4gc3dlZXBG
bGFnOworICAgIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeDsKKyAgICBhdHRyaWJ1dGUg
dW5yZXN0cmljdGVkIGZsb2F0IHk7CisgICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCBy
MTsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHIyOworICAgIGF0dHJpYnV0ZSB1
bnJlc3RyaWN0ZWQgZmxvYXQgYW5nbGU7CisgICAgYXR0cmlidXRlIGJvb2xlYW4gbGFyZ2VBcmNG
bGFnOworICAgIGF0dHJpYnV0ZSBib29sZWFuIHN3ZWVwRmxhZzsKIH07CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnQ3VydmV0b0N1YmljQWJzLmlkbCBiL1NvdXJj
ZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnQ3VydmV0b0N1YmljQWJzLmlkbAppbmRleCBmMzRiYWQw
ZTNiMzc5NjkzZjZjZWM1NWNlNjM1MWFkMTc1MzM4YzVmLi4yNmRiZWE1MjhkM2M5ODhjZjU4ODBj
M2RiZmM3MzlmODdhODcwYTg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0
aFNlZ0N1cnZldG9DdWJpY0Ficy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BhdGhT
ZWdDdXJ2ZXRvQ3ViaWNBYnMuaWRsCkBAIC0yNSwxMSArMjUsMTEgQEAKICAqLyAKIAogaW50ZXJm
YWNlIFNWR1BhdGhTZWdDdXJ2ZXRvQ3ViaWNBYnMgOiBTVkdQYXRoU2VnIHsKLSAgICBbU3RyaWN0
VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHg7Ci0gICAgW1N0cmlj
dFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB5OwotICAgIFtTdHJp
Y3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeDE7Ci0gICAgW1N0
cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB5MTsKLSAgICBb
U3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHgyOwotICAg
IFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeTI7Cisg
ICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB4OworICAgIGF0dHJpYnV0ZSB1bnJlc3Ry
aWN0ZWQgZmxvYXQgeTsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHgxOworICAg
IGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeTE7CisgICAgYXR0cmlidXRlIHVucmVzdHJp
Y3RlZCBmbG9hdCB4MjsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHkyOwogfTsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BhdGhTZWdDdXJ2ZXRvQ3ViaWNS
ZWwuaWRsIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BhdGhTZWdDdXJ2ZXRvQ3ViaWNSZWwuaWRs
CmluZGV4IDdhMGMyMzk2OTI2NWE1ZTM2OGM4OWVlZDU2ZTM0NTIxZDllZmFjZTUuLjdlYjA0MTRi
ZmM1Njg1MzM3MjEyNmI5Zjc1NzFmNjI1NzMwYzU5YjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3N2Zy9TVkdQYXRoU2VnQ3VydmV0b0N1YmljUmVsLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9zdmcvU1ZHUGF0aFNlZ0N1cnZldG9DdWJpY1JlbC5pZGwKQEAgLTI1LDExICsyNSwxMSBAQAog
ICovIAogCiBpbnRlcmZhY2UgU1ZHUGF0aFNlZ0N1cnZldG9DdWJpY1JlbCA6IFNWR1BhdGhTZWcg
ewotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQg
eDsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0
IHk7Ci0gICAgW1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9h
dCB4MTsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZs
b2F0IHkxOwotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQg
ZmxvYXQgeDI7Ci0gICAgW1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3Rl
ZCBmbG9hdCB5MjsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHg7CisgICAgYXR0
cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB5OworICAgIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQg
ZmxvYXQgeDE7CisgICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB5MTsKKyAgICBhdHRy
aWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHgyOworICAgIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQg
ZmxvYXQgeTI7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNl
Z0N1cnZldG9DdWJpY1Ntb290aEFicy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNl
Z0N1cnZldG9DdWJpY1Ntb290aEFicy5pZGwKaW5kZXggMWY1OGJiZThjNjNkODhiNzk4ODA4MmUy
MWU5NmE5MGQxMDZmMDdhMi4uZjU2MjJlZTQ2YWZhMmZmMTkxY2E5YmMxMTQzNTFhMDg2YmNkNjM4
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BhdGhTZWdDdXJ2ZXRvQ3ViaWNT
bW9vdGhBYnMuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnQ3VydmV0b0N1
YmljU21vb3RoQWJzLmlkbApAQCAtMjUsOSArMjUsOSBAQAogICovIAogCiBpbnRlcmZhY2UgU1ZH
UGF0aFNlZ0N1cnZldG9DdWJpY1Ntb290aEFicyA6IFNWR1BhdGhTZWcgewotICAgIFtTdHJpY3RU
eXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeDsKLSAgICBbU3RyaWN0
VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHk7Ci0gICAgW1N0cmlj
dFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB4MjsKLSAgICBbU3Ry
aWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHkyOworICAgIGF0
dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeDsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVk
IGZsb2F0IHk7CisgICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB4MjsKKyAgICBhdHRy
aWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHkyOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvc3ZnL1NWR1BhdGhTZWdDdXJ2ZXRvQ3ViaWNTbW9vdGhSZWwuaWRsIGIvU291cmNlL1dl
YkNvcmUvc3ZnL1NWR1BhdGhTZWdDdXJ2ZXRvQ3ViaWNTbW9vdGhSZWwuaWRsCmluZGV4IGM4Y2Y2
ZDQ4MzhhY2ZmNmQyNDIxYjA5YjcxMWJjZmZmZjAwNDhmZDMuLjlmZWE2OTY1ZmZlZTZhNTRmMzc1
ZGE4MWZhNTY1MzliOTY3YWI4YjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQ
YXRoU2VnQ3VydmV0b0N1YmljU21vb3RoUmVsLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcv
U1ZHUGF0aFNlZ0N1cnZldG9DdWJpY1Ntb290aFJlbC5pZGwKQEAgLTI1LDkgKzI1LDkgQEAKICAq
LyAKIAogaW50ZXJmYWNlIFNWR1BhdGhTZWdDdXJ2ZXRvQ3ViaWNTbW9vdGhSZWwgOiBTVkdQYXRo
U2VnIHsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZs
b2F0IHg7Ci0gICAgW1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBm
bG9hdCB5OwotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQg
ZmxvYXQgeDI7Ci0gICAgW1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3Rl
ZCBmbG9hdCB5MjsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHg7CisgICAgYXR0
cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB5OworICAgIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQg
ZmxvYXQgeDI7CisgICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB5MjsKIH07CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnQ3VydmV0b1F1YWRyYXRpY0Fi
cy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0N1cnZldG9RdWFkcmF0aWNBYnMu
aWRsCmluZGV4IDViZDYxN2I1MzM4NWMyY2I4ZGU1MGRiZTZkMGZkNDgwMzRmY2M1MGEuLjcyODc2
MzMwYTFmZDVkYzk4ZTU1OTI4OGQyMzkzOGQ1ZmNjNzUyNTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3N2Zy9TVkdQYXRoU2VnQ3VydmV0b1F1YWRyYXRpY0Ficy5pZGwKKysrIGIvU291cmNl
L1dlYkNvcmUvc3ZnL1NWR1BhdGhTZWdDdXJ2ZXRvUXVhZHJhdGljQWJzLmlkbApAQCAtMjUsOSAr
MjUsOSBAQAogICovCiAKIGludGVyZmFjZSBTVkdQYXRoU2VnQ3VydmV0b1F1YWRyYXRpY0FicyA6
IFNWR1BhdGhTZWcgewotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3Ry
aWN0ZWQgZmxvYXQgeDsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0
cmljdGVkIGZsb2F0IHk7Ci0gICAgW1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVz
dHJpY3RlZCBmbG9hdCB4MTsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5y
ZXN0cmljdGVkIGZsb2F0IHkxOworICAgIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeDsK
KyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHk7CisgICAgYXR0cmlidXRlIHVucmVz
dHJpY3RlZCBmbG9hdCB4MTsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHkxOwog
fTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BhdGhTZWdDdXJ2ZXRvUXVh
ZHJhdGljUmVsLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnQ3VydmV0b1F1YWRy
YXRpY1JlbC5pZGwKaW5kZXggNzU2OTU4NThlNzc5YmU4YTNlMTc0OGI0YzA4MTMwYTdiODFlNjgw
YS4uNjdkZDU0MWZlMGQ0NjM3MDRkY2NkZGI5ZDMwMTFmNWFlMjdhNjA2MyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvc3ZnL1NWR1BhdGhTZWdDdXJ2ZXRvUXVhZHJhdGljUmVsLmlkbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0N1cnZldG9RdWFkcmF0aWNSZWwuaWRsCkBA
IC0yNSw5ICsyNSw5IEBACiAgKi8KIAogaW50ZXJmYWNlIFNWR1BhdGhTZWdDdXJ2ZXRvUXVhZHJh
dGljUmVsIDogU1ZHUGF0aFNlZyB7Ci0gICAgW1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRl
IHVucmVzdHJpY3RlZCBmbG9hdCB4OwotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0
ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeTsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1
dGUgdW5yZXN0cmljdGVkIGZsb2F0IHgxOwotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJp
YnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeTE7CisgICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBm
bG9hdCB4OworICAgIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeTsKKyAgICBhdHRyaWJ1
dGUgdW5yZXN0cmljdGVkIGZsb2F0IHgxOworICAgIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxv
YXQgeTE7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0N1
cnZldG9RdWFkcmF0aWNTbW9vdGhBYnMuaWRsIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BhdGhT
ZWdDdXJ2ZXRvUXVhZHJhdGljU21vb3RoQWJzLmlkbAppbmRleCBhYWM1ZmY2ZWNkZjFiYWVjNWYy
OTYzNjA2ZDk4MDEyYTUxMDk3MjA2Li4xNDllZGQ5NmY2Y2ZkYjk0ZTRmNjRkYWVhYTM3MmRjYzhh
YWEwNTQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0N1cnZldG9R
dWFkcmF0aWNTbW9vdGhBYnMuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2Vn
Q3VydmV0b1F1YWRyYXRpY1Ntb290aEFicy5pZGwKQEAgLTI1LDcgKzI1LDcgQEAKICAqLwogCiBp
bnRlcmZhY2UgU1ZHUGF0aFNlZ0N1cnZldG9RdWFkcmF0aWNTbW9vdGhBYnMgOiBTVkdQYXRoU2Vn
IHsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0
IHg7Ci0gICAgW1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9h
dCB5OworICAgIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeDsKKyAgICBhdHRyaWJ1dGUg
dW5yZXN0cmljdGVkIGZsb2F0IHk7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9z
dmcvU1ZHUGF0aFNlZ0N1cnZldG9RdWFkcmF0aWNTbW9vdGhSZWwuaWRsIGIvU291cmNlL1dlYkNv
cmUvc3ZnL1NWR1BhdGhTZWdDdXJ2ZXRvUXVhZHJhdGljU21vb3RoUmVsLmlkbAppbmRleCAwYWQz
MmFhNzhiMzllNTdkYTUzYjg1MjM1MmMwOWYzY2ZmMTRiMGYyLi44NTdlZTMwN2M1NTJlZTQxMjc2
ZjI3OWZkZWZmOTVlZTNjMTBhZWZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZH
UGF0aFNlZ0N1cnZldG9RdWFkcmF0aWNTbW9vdGhSZWwuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3N2Zy9TVkdQYXRoU2VnQ3VydmV0b1F1YWRyYXRpY1Ntb290aFJlbC5pZGwKQEAgLTI1LDcgKzI1
LDcgQEAKICAqLwogCiBpbnRlcmZhY2UgU1ZHUGF0aFNlZ0N1cnZldG9RdWFkcmF0aWNTbW9vdGhS
ZWwgOiBTVkdQYXRoU2VnIHsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5y
ZXN0cmljdGVkIGZsb2F0IHg7Ci0gICAgW1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVu
cmVzdHJpY3RlZCBmbG9hdCB5OworICAgIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeDsK
KyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHk7CiB9OwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0xpbmV0b0Ficy5pZGwgYi9Tb3VyY2UvV2ViQ29y
ZS9zdmcvU1ZHUGF0aFNlZ0xpbmV0b0Ficy5pZGwKaW5kZXggNjBhMzAxY2Q5ZmM3OTBlNWQ3Mzky
N2ViOTllN2FlNzY5YjM4MWI4ZC4uMTEyYTVkZjRkZTRkZjNjYjI3NDBmOGY5N2U4NmZmNzdlZWRl
MzEyNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BhdGhTZWdMaW5ldG9BYnMu
aWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnTGluZXRvQWJzLmlkbApAQCAt
MjUsNyArMjUsNyBAQAogICovCiAKIGludGVyZmFjZSBTVkdQYXRoU2VnTGluZXRvQWJzIDogU1ZH
UGF0aFNlZyB7Ci0gICAgW1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3Rl
ZCBmbG9hdCB4OwotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0
ZWQgZmxvYXQgeTsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHg7CisgICAgYXR0
cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB5OwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvc3ZnL1NWR1BhdGhTZWdMaW5ldG9Ib3Jpem9udGFsQWJzLmlkbCBiL1NvdXJjZS9XZWJD
b3JlL3N2Zy9TVkdQYXRoU2VnTGluZXRvSG9yaXpvbnRhbEFicy5pZGwKaW5kZXggZmYyOTUyOTA3
Y2I5YjZhZDUxOGZkODRlMDdhMmEwMDVmYTBiZjY4My4uMGQwOTM4MGQwN2JlMzVkMGZhYzE4ZWJj
MWMzZDAzZWU4OWZiMDM1NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BhdGhT
ZWdMaW5ldG9Ib3Jpem9udGFsQWJzLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0
aFNlZ0xpbmV0b0hvcml6b250YWxBYnMuaWRsCkBAIC0yNSw2ICsyNSw2IEBACiAgKi8KIAogaW50
ZXJmYWNlIFNWR1BhdGhTZWdMaW5ldG9Ib3Jpem9udGFsQWJzIDogU1ZHUGF0aFNlZyB7Ci0gICAg
W1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB4OworICAg
IGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeDsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnTGluZXRvSG9yaXpvbnRhbFJlbC5pZGwgYi9Tb3VyY2Uv
V2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0xpbmV0b0hvcml6b250YWxSZWwuaWRsCmluZGV4IDk3MTkx
YjdjMjA0MWM0YWNmOTk2NjM4YjIxZDg5MjQzN2YwNGQ4YjcuLjUwNjA5NTVlOTgwYjA2NjcxZGJj
NTg2N2UyZjQ5MzkxY2Y2OWZkODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQ
YXRoU2VnTGluZXRvSG9yaXpvbnRhbFJlbC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NW
R1BhdGhTZWdMaW5ldG9Ib3Jpem9udGFsUmVsLmlkbApAQCAtMjUsNiArMjUsNiBAQAogICovCiAK
IGludGVyZmFjZSBTVkdQYXRoU2VnTGluZXRvSG9yaXpvbnRhbFJlbCA6IFNWR1BhdGhTZWcgewot
ICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeDsK
KyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHg7CiB9OwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0xpbmV0b1JlbC5pZGwgYi9Tb3VyY2UvV2ViQ29y
ZS9zdmcvU1ZHUGF0aFNlZ0xpbmV0b1JlbC5pZGwKaW5kZXggNTNiZjZlMTU5MWRlNzI4NDZkNTY1
OTgzNzdlMmNhMWJmNGJlODY1Zi4uMDhhYTJkMGMxYzI5ZmY3OGEzOTljYTY4MWQ4MzE3ZWM3YTlk
MjAwYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BhdGhTZWdMaW5ldG9SZWwu
aWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnTGluZXRvUmVsLmlkbApAQCAt
MjUsNyArMjUsNyBAQAogICovCiAKIGludGVyZmFjZSBTVkdQYXRoU2VnTGluZXRvUmVsIDogU1ZH
UGF0aFNlZyB7Ci0gICAgW1N0cmljdFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3Rl
ZCBmbG9hdCB4OwotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0
ZWQgZmxvYXQgeTsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHg7CisgICAgYXR0
cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB5OwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvc3ZnL1NWR1BhdGhTZWdMaW5ldG9WZXJ0aWNhbEFicy5pZGwgYi9Tb3VyY2UvV2ViQ29y
ZS9zdmcvU1ZHUGF0aFNlZ0xpbmV0b1ZlcnRpY2FsQWJzLmlkbAppbmRleCA4ZGM0MzVkYWY4MGNk
MzhkYTc0YmUxNDM4MTNiZDg3NWMzOTM0OTA4Li40ZDJmODA0YmMxZGM4OTQ0MWIxZTg4ZDdkMDFh
N2FkNTdhNmUyOWFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0xp
bmV0b1ZlcnRpY2FsQWJzLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0xp
bmV0b1ZlcnRpY2FsQWJzLmlkbApAQCAtMjUsNiArMjUsNiBAQAogICovCiAKIGludGVyZmFjZSBT
VkdQYXRoU2VnTGluZXRvVmVydGljYWxBYnMgOiBTVkdQYXRoU2VnIHsKLSAgICBbU3RyaWN0VHlw
ZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHk7CisgICAgYXR0cmlidXRl
IHVucmVzdHJpY3RlZCBmbG9hdCB5OwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
c3ZnL1NWR1BhdGhTZWdMaW5ldG9WZXJ0aWNhbFJlbC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9zdmcv
U1ZHUGF0aFNlZ0xpbmV0b1ZlcnRpY2FsUmVsLmlkbAppbmRleCBhNmFjODVjYmY1ODk0YzE1NGVh
OGJmODEzNjkyYWQ5NzFiZThkMTlmLi43MjA2NDkxNGQzMzZmN2JhMjNkYjllZjAxM2Q4NWFkY2Fm
MzE4ZWMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0xpbmV0b1Zl
cnRpY2FsUmVsLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aFNlZ0xpbmV0b1Zl
cnRpY2FsUmVsLmlkbApAQCAtMjUsNiArMjUsNiBAQAogICovCiAKIGludGVyZmFjZSBTVkdQYXRo
U2VnTGluZXRvVmVydGljYWxSZWwgOiBTVkdQYXRoU2VnIHsKLSAgICBbU3RyaWN0VHlwZUNoZWNr
aW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHk7CisgICAgYXR0cmlidXRlIHVucmVz
dHJpY3RlZCBmbG9hdCB5OwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NW
R1BhdGhTZWdNb3ZldG9BYnMuaWRsIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BhdGhTZWdNb3Zl
dG9BYnMuaWRsCmluZGV4IDFmZTc1ZmJjNDAzNjFjZjQ4MTU1YTIwYTAzMWZkOGI1ZDNkMWVmYjIu
LjA5MWRhZGIxNzdjMjVjZTZiMmM2NWJhMmMyMTBiMGZjMDI2YWFjZDEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnTW92ZXRvQWJzLmlkbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9zdmcvU1ZHUGF0aFNlZ01vdmV0b0Ficy5pZGwKQEAgLTI1LDcgKzI1LDcgQEAKICAqLwog
CiBpbnRlcmZhY2UgU1ZHUGF0aFNlZ01vdmV0b0FicyA6IFNWR1BhdGhTZWcgewotICAgIFtTdHJp
Y3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeDsKLSAgICBbU3Ry
aWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHk7CisgICAgYXR0
cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB4OworICAgIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQg
ZmxvYXQgeTsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2Vn
TW92ZXRvUmVsLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoU2VnTW92ZXRvUmVsLmlk
bAppbmRleCA5OGIwNjA5N2UxMTFhNTgzNTJkYTM1YTgxNGM1MmNiMTRjNTFmMzdlLi4yMTc5MTJk
ZGU0YjM0ZjAyZmY2YmQ5ZWNlMTA2Mzk2YzFjNTJkM2IxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9zdmcvU1ZHUGF0aFNlZ01vdmV0b1JlbC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvc3Zn
L1NWR1BhdGhTZWdNb3ZldG9SZWwuaWRsCkBAIC0yNSw3ICsyNSw3IEBACiAgKi8KIAogaW50ZXJm
YWNlIFNWR1BhdGhTZWdNb3ZldG9SZWwgOiBTVkdQYXRoU2VnIHsKLSAgICBbU3RyaWN0VHlwZUNo
ZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHg7Ci0gICAgW1N0cmljdFR5cGVD
aGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB5OworICAgIGF0dHJpYnV0ZSB1
bnJlc3RyaWN0ZWQgZmxvYXQgeDsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHk7
CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUG9pbnQuaWRsIGIvU291
cmNlL1dlYkNvcmUvc3ZnL1NWR1BvaW50LmlkbAppbmRleCA0YzNkNDQ4YWQyOTgzNmEzMGQ4Yzcx
MmMxYmJkMTliOGUzMTg2ZTg1Li44NGQ4OTgwMzE4Yzk2NzczNDEwZjUxM2MyMDE5OTIyNzk4MTE1
ODM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUG9pbnQuaWRsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3N2Zy9TVkdQb2ludC5pZGwKQEAgLTIxLDggKzIxLDggQEAKICAqLwogCiBp
bnRlcmZhY2UgU1ZHUG9pbnQgewotICAgIFtTdHJpY3RUeXBlQ2hlY2tpbmddIGF0dHJpYnV0ZSB1
bnJlc3RyaWN0ZWQgZmxvYXQgeDsKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nXSBhdHRyaWJ1dGUg
dW5yZXN0cmljdGVkIGZsb2F0IHk7CisgICAgYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB4
OworICAgIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgeTsKIAogICAgIFtTdHJpY3RUeXBl
Q2hlY2tpbmddIFNWR1BvaW50IG1hdHJpeFRyYW5zZm9ybShTVkdNYXRyaXggbWF0cml4KTsKIH07
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUHJlc2VydmVBc3BlY3RSYXRpby5p
ZGwgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUHJlc2VydmVBc3BlY3RSYXRpby5pZGwKaW5kZXgg
ZWMyYzc5NjM4ZGQ0MmQ4MzE5YjBmNzM0ZGI4NTY3ZjMwYWY5NDQ3NS4uZDQ3N2I4MGRiOThjYTg3
MjRlYzRhMTVhYTVjMDI0NWY4MTVhNWJmOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3Zn
L1NWR1ByZXNlcnZlQXNwZWN0UmF0aW8uaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQ
cmVzZXJ2ZUFzcGVjdFJhdGlvLmlkbApAQCAtNDIsOCArNDIsOCBAQCBpbnRlcmZhY2UgU1ZHUHJl
c2VydmVBc3BlY3RSYXRpbyB7CiAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgU1ZHX01FRVRPUlNM
SUNFX01FRVQgPSAxOwogICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IFNWR19NRUVUT1JTTElDRV9T
TElDRSA9IDI7CiAKLSAgICBbU3RyaWN0VHlwZUNoZWNraW5nLCBTZXR0ZXJSYWlzZXNFeGNlcHRp
b25dIGF0dHJpYnV0ZSB1bnNpZ25lZCBzaG9ydCBhbGlnbjsKKyAgICBbU2V0dGVyUmFpc2VzRXhj
ZXB0aW9uXSBhdHRyaWJ1dGUgdW5zaWduZWQgc2hvcnQgYWxpZ247CiAKLSAgICBbU3RyaWN0VHlw
ZUNoZWNraW5nLCBTZXR0ZXJSYWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSB1bnNpZ25lZCBzaG9y
dCBtZWV0T3JTbGljZTsKKyAgICBbU2V0dGVyUmFpc2VzRXhjZXB0aW9uXSBhdHRyaWJ1dGUgdW5z
aWduZWQgc2hvcnQgbWVldE9yU2xpY2U7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9zdmcvU1ZHUmVjdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUmVjdC5pZGwKaW5kZXgg
MmEzNTYxZTU0ZGZlOWQyOGE5MDgyZjdlODVjYjU5MjUyODFjNmUyNC4uNzI5ZTE2M2UzMmZjOGM3
ODRkOTgxZmQ4MzRhNjllYjgyMGFjY2Y2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3Zn
L1NWR1JlY3QuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdSZWN0LmlkbApAQCAtMjEs
OSArMjEsOSBAQAogICovCiAKIGludGVyZmFjZSBTVkdSZWN0IHsKLSAgICBbU3RyaWN0VHlwZUNo
ZWNraW5nXSBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHg7Ci0gICAgW1N0cmljdFR5cGVD
aGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB5OwotICAgIFtTdHJpY3RUeXBl
Q2hlY2tpbmddIGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgd2lkdGg7Ci0gICAgW1N0cmlj
dFR5cGVDaGVja2luZ10gYXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCBoZWlnaHQ7CisgICAg
YXR0cmlidXRlIHVucmVzdHJpY3RlZCBmbG9hdCB4OworICAgIGF0dHJpYnV0ZSB1bnJlc3RyaWN0
ZWQgZmxvYXQgeTsKKyAgICBhdHRyaWJ1dGUgdW5yZXN0cmljdGVkIGZsb2F0IHdpZHRoOworICAg
IGF0dHJpYnV0ZSB1bnJlc3RyaWN0ZWQgZmxvYXQgaGVpZ2h0OwogfTsKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDI2NDNk
MTQwYzc3OGE4M2UyYzQxYzVkYzBkODBkYTRiNDZiZDMwNjEuLmMxNmQ1NWQyYzM1ZTU3MTY4MGYz
M2VkNDlhNzUxOTdlN2UyZWVjN2UgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZwor
KysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAxNi0wNy0zMCAg
Q2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgorCisgICAgICAgIFtXZWJJRExdIEVuYWJs
ZSBzdHJpY3QgdHlwZSBjaGVja2luZyBmb3IgbnVsbGFibGUgYXR0cmlidXRlIHNldHRlcnMgb2Yg
d3JhcHBlciB0eXBlcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTYwMzc1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisKKyAgICAg
ICAgUmViYXNlbGluZSAvIHVwZGF0ZSBleGlzdGluZyB0ZXN0cyB0byByZWZsZWN0IGJlaGF2aW9y
IGNoYW5nZS4KKworICAgICAgICAqIGZhc3Qvc3BlZWNoc3ludGhlc2lzL3NwZWVjaC1zeW50aGVz
aXMtY3Jhc2gtb24tYmFkLXV0dGVyYW5jZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9z
cGVlY2hzeW50aGVzaXMvc3BlZWNoLXN5bnRoZXNpcy1jcmFzaC1vbi1iYWQtdXR0ZXJhbmNlLmh0
bWw6CisgICAgICAgICogd2ViYXVkaW8vY29udm9sdmVyLXNldEJ1ZmZlci1udWxsLWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWJhdWRpby9jb252b2x2ZXItc2V0QnVmZmVyLW51bGwuaHRtbDoK
KwogMjAxNi0wNy0zMCAgQWxleGV5IFByb3NrdXJ5YWtvdiAgPGFwQGFwcGxlLmNvbT4KIAogICAg
ICAgICBtYWNPUyBTaWVycmEgdGVzdCByZXN1bHQgZ2FyZGVuaW5nIGZvciBtZWRpYS92aWRlby1s
b29wLmh0bWwuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2ZpbGUvaW5wdXQt
ZmlsZS13cml0ZS1maWxlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2Zp
bGUvaW5wdXQtZmlsZS13cml0ZS1maWxlcy1leHBlY3RlZC50eHQKaW5kZXggNTZiZmYwNTQ2MDNk
Yjc3Yjg1OGQ5ZTA5MDZiMjc0NGY2MmJjMzc5Yy4uZTc3OTBmMzQzNjI1Njk0NWI4ZTUwNmE5NDFi
ZmE4ODQ5NmI0MDM3YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9maWxlL2lu
cHV0LWZpbGUtd3JpdGUtZmlsZXMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3Qv
Zm9ybXMvZmlsZS9pbnB1dC1maWxlLXdyaXRlLWZpbGVzLWV4cGVjdGVkLnR4dApAQCAtMyw2ICsz
LDcgQEAgVGhpcyB0ZXN0cyB0aGUgZmlsZXMgYXR0cmlidXRlIGluIGZpbGUgaW5wdXQgZm9ybXMK
IE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZv
bGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KIAogCitQQVNTIGZpbGUxLmZpbGVzID0gImZvbyIg
dGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVGhlIEhUTUxJbnB1dEVsZW1lbnQuZmlsZXMgYXR0
cmlidXRlIG11c3QgYmUgYW4gaW5zdGFuY2Ugb2YgRmlsZUxpc3QuCiBQQVNTIGZpbGUxLmZpbGVz
Lmxlbmd0aCBpcyAxCiBQQVNTIGZpbGUxLmZpbGVzLml0ZW0oMCkubmFtZSBpcyAiZm9vLnR4dCIK
IFBBU1MgZmlsZTEuZmlsZXMubGVuZ3RoIGlzIDEKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvZm9ybXMvZmlsZS9pbnB1dC1maWxlLXdyaXRlLWZpbGVzLmh0bWwgYi9MYXlvdXRUZXN0cy9m
YXN0L2Zvcm1zL2ZpbGUvaW5wdXQtZmlsZS13cml0ZS1maWxlcy5odG1sCmluZGV4IGUzODExOWZi
NjU5MjlmNjFiMDYzYTczY2Q3ZmZlZWRhNjY0ZjNkYzUuLjU0YTc4YmU5MTAzMmNmY2FiOTg1Mzc1
OGFkNmFjMjA1OTk2NmZjMzIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvZmls
ZS9pbnB1dC1maWxlLXdyaXRlLWZpbGVzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jt
cy9maWxlL2lucHV0LWZpbGUtd3JpdGUtZmlsZXMuaHRtbApAQCAtMTUsNyArMTUsNyBAQCBpZiAo
d2luZG93LnRlc3RSdW5uZXIpIHsKICAgICBkcmFnRmlsZXNPbnRvSW5wdXQoZmlsZTEsIFsiZm9v
LnR4dCJdKTsKICAgICBkcmFnRmlsZXNPbnRvSW5wdXQoZmlsZTIsIFsiYmFyLnR4dCJdKTsKIAot
ICAgIGZpbGUxLmZpbGVzID0gImZvbyI7CisgICAgc2hvdWxkVGhyb3coJ2ZpbGUxLmZpbGVzID0g
ImZvbyInKTsKICAgICBzaG91bGRCZSgiZmlsZTEuZmlsZXMubGVuZ3RoIiwgIjEiKTsKICAgICBz
aG91bGRCZUVxdWFsVG9TdHJpbmcoImZpbGUxLmZpbGVzLml0ZW0oMCkubmFtZSIsICJmb28udHh0
Iik7CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvc3BlZWNoc3ludGhlc2lzL3NwZWVj
aC1zeW50aGVzaXMtY3Jhc2gtb24tYmFkLXV0dGVyYW5jZS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9mYXN0L3NwZWVjaHN5bnRoZXNpcy9zcGVlY2gtc3ludGhlc2lzLWNyYXNoLW9uLWJhZC11
dHRlcmFuY2UtZXhwZWN0ZWQudHh0CmluZGV4IGRiYTc4OWE1MTk4ODE3MmJkMTEzOTI2MGRjYzll
MmQwNjc5YTc3MWMuLjU2ZjMzMDljN2QwOTgwODdjN2Y5ZTI0MThiODE5NTdmMzVmYWU4OTQgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3Qvc3BlZWNoc3ludGhlc2lzL3NwZWVjaC1zeW50aGVz
aXMtY3Jhc2gtb24tYmFkLXV0dGVyYW5jZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9zcGVlY2hzeW50aGVzaXMvc3BlZWNoLXN5bnRoZXNpcy1jcmFzaC1vbi1iYWQtdXR0ZXJh
bmNlLWV4cGVjdGVkLnR4dApAQCAtNCw2ICs0LDcgQEAgT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUK
IAogCiBQQVNTIHNwZWVjaFN5bnRoZXNpcy5zcGVhaygnSGVsbG8gV29ybGQnKSB0aHJldyBleGNl
cHRpb24gVHlwZUVycm9yOiBBcmd1bWVudCAxICgndXR0ZXJhbmNlJykgdG8gU3BlZWNoU3ludGhl
c2lzLnNwZWFrIG11c3QgYmUgYW4gaW5zdGFuY2Ugb2YgU3BlZWNoU3ludGhlc2lzVXR0ZXJhbmNl
LgorUEFTUyB4LnZvaWNlID0gImFzZGYiIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFRoZSBT
cGVlY2hTeW50aGVzaXNVdHRlcmFuY2Uudm9pY2UgYXR0cmlidXRlIG11c3QgYmUgYW4gaW5zdGFu
Y2Ugb2YgU3BlZWNoU3ludGhlc2lzVm9pY2UuCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0
cnVlCiAKIFRFU1QgQ09NUExFVEUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvc3BlZWNo
c3ludGhlc2lzL3NwZWVjaC1zeW50aGVzaXMtY3Jhc2gtb24tYmFkLXV0dGVyYW5jZS5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9zcGVlY2hzeW50aGVzaXMvc3BlZWNoLXN5bnRoZXNpcy1jcmFzaC1v
bi1iYWQtdXR0ZXJhbmNlLmh0bWwKaW5kZXggOWQ1NDA5NGQ5NTQ4OTZlZTUyY2EwMmQwMGM0Y2Ji
ZmUyZmIwYTc3My4uMmI0ZGQyMDY1ZTRmMjVkNDZhZjdlODljY2M1MWZmMjA0M2QzMzY1MiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9zcGVlY2hzeW50aGVzaXMvc3BlZWNoLXN5bnRoZXNp
cy1jcmFzaC1vbi1iYWQtdXR0ZXJhbmNlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9zcGVl
Y2hzeW50aGVzaXMvc3BlZWNoLXN5bnRoZXNpcy1jcmFzaC1vbi1iYWQtdXR0ZXJhbmNlLmh0bWwK
QEAgLTE2LDcgKzE2LDcgQEAKIAogICAgICAvLyBEb24ndCBjcmFzaC4gQW4gdXR0ZXJhbmNlIHZv
aWNlIGlzIHN1cHBvc2VkIHRvIHRha2UgYSB2b2ljZSBvYmplY3QsIG5vdCBhIHN0cmluZy4KICAg
ICAgdmFyIHggPSBuZXcgU3BlZWNoU3ludGhlc2lzVXR0ZXJhbmNlKCdIZWxsbyBXb3JsZCcpOwot
ICAgICB4LnZvaWNlID0gImFzZGYiOworICAgICBzaG91bGRUaHJvdygneC52b2ljZSA9ICJhc2Rm
IicpOwogCiAgICAgIC8vIERvbid0IGNyYXNoLiBBbiB1dHRlcmFuY2UgaXMgc3VwcG9zZWQgdG8g
dGFrZSBhIHN0cmluZywgbm90IGEgbnVtYmVyLgogICAgICB4ID0gbmV3IFNwZWVjaFN5bnRoZXNp
c1V0dGVyYW5jZSgyMjMpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViYXVkaW8vY29udm9s
dmVyLXNldEJ1ZmZlci1udWxsLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL2Nv
bnZvbHZlci1zZXRCdWZmZXItbnVsbC1leHBlY3RlZC50eHQKaW5kZXggNjJjOGQ3YmM3NDZiMTBj
MTNhYmI4MjU0NTA0NTI1ZDM3OTgwOGFiZC4uZGEwMzkxMjg3ODljZTE0MGE3MDEyYzI2OGIzMDFi
ZTU0MDVmNGY0YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViYXVkaW8vY29udm9sdmVyLXNl
dEJ1ZmZlci1udWxsLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9jb252
b2x2ZXItc2V0QnVmZmVyLW51bGwtZXhwZWN0ZWQudHh0CkBAIC0xLDggKzEsMTIgQEAKLVRlc3Rz
IHRoYXQgQ29udm9sdmVyTm9kZSBpbXB1bHNlIHJlc3BvbnNlIGJ1ZmZlciBjYW4gYmUgc2V0IHRv
IDAuCitUZXN0cyB0aGF0IENvbnZvbHZlck5vZGUgaW1wdWxzZSByZXNwb25zZSBidWZmZXIgY2Fu
IGJlIHNldCB0byBudWxsLgogCiBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2Yg
IlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCiAKLVBBU1MgQ29u
dm9sdmVyTm9kZSBpbXB1bHNlIHJlc3BvbnNlIGJ1ZmZlciB3YXMgc2V0IHRvIDAuCisKK1BBU1Mg
Y29udi5idWZmZXIgPSBudWxsIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBjb252LmJ1
ZmZlciBpcyBudWxsCitQQVNTIGNvbnYuYnVmZmVyID0gZG9jdW1lbnQgdGhyZXcgZXhjZXB0aW9u
IFR5cGVFcnJvcjogVGhlIENvbnZvbHZlck5vZGUuYnVmZmVyIGF0dHJpYnV0ZSBtdXN0IGJlIGFu
IGluc3RhbmNlIG9mIEF1ZGlvQnVmZmVyLgorUEFTUyBjb252LmJ1ZmZlciBpcyBudWxsCiBQQVNT
IHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3dlYmF1ZGlvL2NvbnZvbHZlci1zZXRCdWZmZXItbnVsbC5odG1sIGIvTGF5
b3V0VGVzdHMvd2ViYXVkaW8vY29udm9sdmVyLXNldEJ1ZmZlci1udWxsLmh0bWwKaW5kZXggNzE0
Zjc0YWFhYWM3N2QyNmVjMzczNDI3YzM2Mzc1ZjQ0YjliMGFiMC4uYjYxZDY5ZjQwODkzMGM4Yjcy
NDI2MTA1Yjc4NGU4NTJiNGM4ZGI1NSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViYXVkaW8v
Y29udm9sdmVyLXNldEJ1ZmZlci1udWxsLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8v
Y29udm9sdmVyLXNldEJ1ZmZlci1udWxsLmh0bWwKQEAgLTEsMzkgKzEsMjIgQEAKLTwhRE9DVFlQ
RSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iPgor
PCFET0NUWVBFIGh0bWw+CiA8aHRtbD4KIDxoZWFkPgogPHNjcmlwdCBzcmM9InJlc291cmNlcy9h
dWRpby10ZXN0aW5nLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvanMt
dGVzdC1wcmUuanMiPjwvc2NyaXB0PgogPC9oZWFkPgotCiA8Ym9keT4KLTxkaXYgaWQ9ImRlc2Ny
aXB0aW9uIj48L2Rpdj4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotCiA8c2NyaXB0PgotZGVz
Y3JpcHRpb24oIlRlc3RzIHRoYXQgQ29udm9sdmVyTm9kZSBpbXB1bHNlIHJlc3BvbnNlIGJ1ZmZl
ciBjYW4gYmUgc2V0IHRvIDAuIik7Ci0KLWZ1bmN0aW9uIHJ1blRlc3QoKQotewotICAgIGlmICh3
aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKLSAg
ICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgfQorZGVzY3JpcHRpb24oIlRl
c3RzIHRoYXQgQ29udm9sdmVyTm9kZSBpbXB1bHNlIHJlc3BvbnNlIGJ1ZmZlciBjYW4gYmUgc2V0
IHRvIG51bGwuIik7CiAKLSAgICB3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7Cit2YXIgY29u
dGV4dCA9IG5ldyB3ZWJraXRBdWRpb0NvbnRleHQoKTsKK3ZhciBjb252ID0gY29udGV4dC5jcmVh
dGVDb252b2x2ZXIoKTsKIAotICAgIHZhciBjb250ZXh0ID0gbmV3IHdlYmtpdEF1ZGlvQ29udGV4
dCgpOwotICAgIHZhciBjb252ID0gY29udGV4dC5jcmVhdGVDb252b2x2ZXIoKTsKK3Nob3VsZE5v
dFRocm93KCJjb252LmJ1ZmZlciA9IG51bGwiKTsKK3Nob3VsZEJlKCJjb252LmJ1ZmZlciIsICJu
dWxsIik7CiAKLSAgICBjb252LmJ1ZmZlciA9IDA7Ci0gICAgdGVzdFBhc3NlZCgiQ29udm9sdmVy
Tm9kZSBpbXB1bHNlIHJlc3BvbnNlIGJ1ZmZlciB3YXMgc2V0IHRvIDAuIik7Ci0KLSAgICBmaW5p
c2hKU1Rlc3QoKTsKLX0KLQotcnVuVGVzdCgpOwotc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsK
K3Nob3VsZFRocm93KCJjb252LmJ1ZmZlciA9IGRvY3VtZW50Iik7CitzaG91bGRCZSgiY29udi5i
dWZmZXIiLCAibnVsbCIpOwogPC9zY3JpcHQ+Ci0KIDxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMv
anMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KIDwvYm9keT4KIDwvaHRtbD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>