<?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>227571</bug_id>
          
          <creation_ts>2021-07-01 00:20:25 -0700</creation_ts>
          <short_desc>Fix StructuredClone for streams to handle BigInt64Array / BigUint64Array</short_desc>
          <delta_ts>2021-07-08 17:38:51 -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>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Timothy Gu">timothygu99</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>benjamin</cc>
    
    <cc>calvaris</cc>
    
    <cc>cdumez</cc>
    
    <cc>clopez</cc>
    
    <cc>darin</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>heycam</cc>
    
    <cc>joepeck</cc>
    
    <cc>sam</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1774019</commentid>
    <comment_count>0</comment_count>
    <who name="Timothy Gu">timothygu99</who>
    <bug_when>2021-07-01 00:20:25 -0700</bug_when>
    <thetext>See https://github.com/heycam/webidl/pull/936. A summary of changes are:

- BigInt64Array and BigUint64Array are introduced as keywords of the Web IDL language
- The ArrayBufferView and BufferSource aliases now include BigInt64Array and BigUint64Array as part of the union.

It looks like this may already have been partially implemented, since

    new Blob([new BigInt64Array([0n])]);

appears to work as expected.

Tests: https://github.com/web-platform-tests/wpt/pull/27920</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1775628</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-07-08 00:21:18 -0700</bug_when>
    <thetext>&lt;rdar://problem/80309572&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1775820</commentid>
    <comment_count>2</comment_count>
      <attachid>433168</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-07-08 15:14:01 -0700</bug_when>
    <thetext>Created attachment 433168
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1775865</commentid>
    <comment_count>3</comment_count>
      <attachid>433168</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-07-08 16:50:10 -0700</bug_when>
    <thetext>Comment on attachment 433168
Patch

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

&gt; Source/WebCore/ChangeLog:3
&gt; +        [WebIDL] Add BigInt64Array and BigUint64Array support to IDL bindings generator

The title is misleading, this seems to only be fixing a bug in the streams implementation?

This does not impact the bindings generator in any way. Streams is not using the IDL binding generator (unfortunately).

&gt; Source/WebCore/Modules/streams/ReadableStreamInternals.js:460
&gt; +                @readableStreamDefaultControllerEnqueue(teeState.branch2.@readableStreamController, shouldClone ? @structuredCloneForFetch(result.value) : result.value);

Why is this called structuredCloneForFetch? Did you mean structuredCloneForStream?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1775866</commentid>
    <comment_count>4</comment_count>
      <attachid>433168</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-07-08 16:58:53 -0700</bug_when>
    <thetext>Comment on attachment 433168
Patch

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

Thanks!

&gt;&gt; Source/WebCore/ChangeLog:3
&gt;&gt; +        [WebIDL] Add BigInt64Array and BigUint64Array support to IDL bindings generator
&gt; 
&gt; The title is misleading, this seems to only be fixing a bug in the streams implementation?
&gt; 
&gt; This does not impact the bindings generator in any way. Streams is not using the IDL binding generator (unfortunately).

Changed the title to reflect the patch.

&gt;&gt; Source/WebCore/Modules/streams/ReadableStreamInternals.js:460
&gt;&gt; +                @readableStreamDefaultControllerEnqueue(teeState.branch2.@readableStreamController, shouldClone ? @structuredCloneForFetch(result.value) : result.value);
&gt; 
&gt; Why is this called structuredCloneForFetch? Did you mean structuredCloneForStream?

I used Fetch since the test is included in wpt/fetch, but it is OK to change it to Stream. Changed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1775884</commentid>
    <comment_count>5</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-07-08 17:38:51 -0700</bug_when>
    <thetext>Committed r279769 (239539@main): &lt;https://commits.webkit.org/239539@main&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>433168</attachid>
            <date>2021-07-08 15:14:01 -0700</date>
            <delta_ts>2021-07-08 16:50:10 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227571-20210708151400.patch</filename>
            <type>text/plain</type>
            <size>26807</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc5NzA4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZmM1MWI3OWE4YWFhNjIz
ZGY4NTRmYzBkODg3MWFkN2ZjMDgyODA3Ny4uOTI5ZmU2ZmQ0MmY2MjVmZWU4ZDk2NjQwYmQyMWNm
MWE3MjJhZTkxOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDIxLTA3LTA4ICBZdXN1
a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CisKKyAgICAgICAgW1dlYklETF0gQWRkIEJp
Z0ludDY0QXJyYXkgYW5kIEJpZ1VpbnQ2NEFycmF5IHN1cHBvcnQgdG8gSURMIGJpbmRpbmdzIGdl
bmVyYXRvcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjI3NTcxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
V2hpbGUgd2UgYWxyZWFkeSBzdXBwb3J0IEJpZ0ludDY0QXJyYXkgLyBCaWdVaW50NjRBcnJheSBo
YW5kbGluZyBldmVuIGluIERPTSBjb2RlLAorICAgICAgICB3ZSBsYWNrIHN1cHBvcnQgb2YgdGhl
bSBvbmx5IGluIGZldGNoJ3Mgc3RydWN0dXJlZENsb25lIGNvZGUgKHdoaWNoIGlzIHNwZWNpYWxp
emVkIG9uZQorICAgICAgICB0byBtYWtlIGl0IGZhc3QgYnkgYnlwYXNzaW5nIHNlcmlhbGl6YXRp
b24gLyBkZXNlcmlhbGl6YXRpb24pLgorCisgICAgICAgIFRoaXMgcGF0Y2ggZml4ZXMgdGhlIGlz
c3VlIHRvIGNvbXBsZXRlIEJpZ0ludDY0QXJyYXkgLyBCaWdVaW50NjRBcnJheSBpbiBhbGwgRE9N
IGNvZGUuCisKKyAgICAgICAgKiBNb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW1JbnRlcm5h
bHMuanM6CisgICAgICAgIChyZWFkYWJsZVN0cmVhbVRlZVB1bGxGdW5jdGlvbik6CisgICAgICAg
IChkb1N0cnVjdHVyZWRDbG9uZSk6IERlbGV0ZWQuCisgICAgICAgICogYmluZGluZ3MvanMvSlNE
T01HbG9iYWxPYmplY3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SlNET01HbG9iYWxPYmplY3Q6
OmFkZEJ1aWx0aW5HbG9iYWxzKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9TdHJ1Y3R1cmVkQ2xv
bmUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKToKKyAg
ICAgICAgKiBiaW5kaW5ncy9qcy9TdHJ1Y3R1cmVkQ2xvbmUuaDoKKyAgICAgICAgKiBiaW5kaW5n
cy9qcy9XZWJDb3JlQnVpbHRpbk5hbWVzLmg6CisKIDIwMjEtMDctMDcgIENocmlzIER1bWV6ICA8
Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBPdXIgc3RydWN0dXJlZCBjbG9uaW5nIGltcGxl
bWVudGF0aW9uIGRvZXMgbm90IGVuY29kZSBhbGwgb2YgUmVnRXhwJ3MgZmxhZ3MKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbUludGVybmFs
cy5qcyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbUludGVy
bmFscy5qcwppbmRleCBiZGYxNmY5MTVmNjU0YzljOGY2YzBiNDk1NGM4OGQ2NjIxZGJjMjViLi40
NDY1OGNhYjA5YmYyNzFkYWFiZDM0MTU0ZWVmMDc3MzM3M2U5NTdhIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW1JbnRlcm5hbHMuanMKKysr
IGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtSW50ZXJuYWxz
LmpzCkBAIC00MzUsMjIgKzQzNSw2IEBAIGZ1bmN0aW9uIHJlYWRhYmxlU3RyZWFtVGVlKHN0cmVh
bSwgc2hvdWxkQ2xvbmUpCiAgICAgcmV0dXJuIFticmFuY2gxLCBicmFuY2gyXTsKIH0KIAotZnVu
Y3Rpb24gZG9TdHJ1Y3R1cmVkQ2xvbmUob2JqZWN0KQotewotICAgICJ1c2Ugc3RyaWN0IjsKLQot
ICAgIC8vIEZJWE1FOiBXZSBzaG91bGQgaW1wbGVtZW50IGh0dHA6Ly93M2MuZ2l0aHViLmlvL2h0
bWwvaW5mcmFzdHJ1Y3R1cmUuaHRtbCNyZWYtZm9yLXN0cnVjdHVyZWQtY2xvbmUtNAotICAgIC8v
IEltcGxlbWVudGF0aW9uIGlzIGN1cnJlbnRseSBsaW1pdGVkIHRvIEFycmF5QnVmZmVyL0FycmF5
QnVmZmVyVmlldyB0byBtZWV0IEZldGNoIEFQSSBuZWVkcy4KLQotICAgIGlmIChvYmplY3QgaW5z
dGFuY2VvZiBAQXJyYXlCdWZmZXIpCi0gICAgICAgIHJldHVybiBAc3RydWN0dXJlZENsb25lQXJy
YXlCdWZmZXIob2JqZWN0KTsKLQotICAgIGlmIChAQXJyYXlCdWZmZXIuQGlzVmlldyhvYmplY3Qp
KQotICAgICAgICByZXR1cm4gQHN0cnVjdHVyZWRDbG9uZUFycmF5QnVmZmVyVmlldyhvYmplY3Qp
OwotCi0gICAgQHRocm93VHlwZUVycm9yKCJzdHJ1Y3R1cmVkQ2xvbmUgbm90IGltcGxlbWVudGVk
IGZvcjogIiArIG9iamVjdCk7Ci19Ci0KIGZ1bmN0aW9uIHJlYWRhYmxlU3RyZWFtVGVlUHVsbEZ1
bmN0aW9uKHRlZVN0YXRlLCByZWFkZXIsIHNob3VsZENsb25lKQogewogICAgICJ1c2Ugc3RyaWN0
IjsKQEAgLTQ3Myw3ICs0NTcsNyBAQCBmdW5jdGlvbiByZWFkYWJsZVN0cmVhbVRlZVB1bGxGdW5j
dGlvbih0ZWVTdGF0ZSwgcmVhZGVyLCBzaG91bGRDbG9uZSkKICAgICAgICAgICAgIGlmICghdGVl
U3RhdGUuY2FuY2VsZWQxKQogICAgICAgICAgICAgICAgIEByZWFkYWJsZVN0cmVhbURlZmF1bHRD
b250cm9sbGVyRW5xdWV1ZSh0ZWVTdGF0ZS5icmFuY2gxLkByZWFkYWJsZVN0cmVhbUNvbnRyb2xs
ZXIsIHJlc3VsdC52YWx1ZSk7CiAgICAgICAgICAgICBpZiAoIXRlZVN0YXRlLmNhbmNlbGVkMikK
LSAgICAgICAgICAgICAgICBAcmVhZGFibGVTdHJlYW1EZWZhdWx0Q29udHJvbGxlckVucXVldWUo
dGVlU3RhdGUuYnJhbmNoMi5AcmVhZGFibGVTdHJlYW1Db250cm9sbGVyLCBzaG91bGRDbG9uZSA/
IEBkb1N0cnVjdHVyZWRDbG9uZShyZXN1bHQudmFsdWUpIDogcmVzdWx0LnZhbHVlKTsKKyAgICAg
ICAgICAgICAgICBAcmVhZGFibGVTdHJlYW1EZWZhdWx0Q29udHJvbGxlckVucXVldWUodGVlU3Rh
dGUuYnJhbmNoMi5AcmVhZGFibGVTdHJlYW1Db250cm9sbGVyLCBzaG91bGRDbG9uZSA/IEBzdHJ1
Y3R1cmVkQ2xvbmVGb3JGZXRjaChyZXN1bHQudmFsdWUpIDogcmVzdWx0LnZhbHVlKTsKICAgICAg
ICAgfSk7CiAgICAgfQogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNET01HbG9iYWxPYmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01H
bG9iYWxPYmplY3QuY3BwCmluZGV4IDQzZTU0MmY3NTQxNmJjMTU4MzMyMGY4ZDIyNGZiNDU3Nzhm
ZDY0NWEuLmU0ZGZhN2U0OWRjNjQ5Y2RjYjJiYzQ4OTRiZTk0YmMzMGVhNTFkNWYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUdsb2JhbE9iamVjdC5jcHAKQEAgLTE5
NSwxMCArMTk1LDggQEAgU1VQUFJFU1NfQVNBTiB2b2lkIEpTRE9NR2xvYmFsT2JqZWN0OjphZGRC
dWlsdGluR2xvYmFscyhWTSYgdm0pCiAgICAgICAgICAgICBKU0Z1bmN0aW9uOjpjcmVhdGUodm0s
IHRoaXMsIDIsIFN0cmluZygpLCB3aGVuU2lnbmFsQWJvcnRlZCksIFByb3BlcnR5QXR0cmlidXRl
OjpEb250RGVsZXRlIHwgUHJvcGVydHlBdHRyaWJ1dGU6OlJlYWRPbmx5KSwKICAgICAgICAgSlNE
T01HbG9iYWxPYmplY3Q6Okdsb2JhbFByb3BlcnR5SW5mbyhjbGllbnREYXRhLmJ1aWx0aW5OYW1l
cygpLmNsb25lQXJyYXlCdWZmZXJQcml2YXRlTmFtZSgpLAogICAgICAgICAgICAgSlNGdW5jdGlv
bjo6Y3JlYXRlKHZtLCB0aGlzLCAzLCBTdHJpbmcoKSwgY2xvbmVBcnJheUJ1ZmZlciksIFByb3Bl
cnR5QXR0cmlidXRlOjpEb250RGVsZXRlIHwgUHJvcGVydHlBdHRyaWJ1dGU6OlJlYWRPbmx5KSwK
LSAgICAgICAgSlNET01HbG9iYWxPYmplY3Q6Okdsb2JhbFByb3BlcnR5SW5mbyhjbGllbnREYXRh
LmJ1aWx0aW5OYW1lcygpLnN0cnVjdHVyZWRDbG9uZUFycmF5QnVmZmVyUHJpdmF0ZU5hbWUoKSwK
LSAgICAgICAgICAgIEpTRnVuY3Rpb246OmNyZWF0ZSh2bSwgdGhpcywgMSwgU3RyaW5nKCksIHN0
cnVjdHVyZWRDbG9uZUFycmF5QnVmZmVyKSwgUHJvcGVydHlBdHRyaWJ1dGU6OkRvbnREZWxldGUg
fCBQcm9wZXJ0eUF0dHJpYnV0ZTo6UmVhZE9ubHkpLAotICAgICAgICBKU0RPTUdsb2JhbE9iamVj
dDo6R2xvYmFsUHJvcGVydHlJbmZvKGNsaWVudERhdGEuYnVpbHRpbk5hbWVzKCkuc3RydWN0dXJl
ZENsb25lQXJyYXlCdWZmZXJWaWV3UHJpdmF0ZU5hbWUoKSwKLSAgICAgICAgICAgIEpTRnVuY3Rp
b246OmNyZWF0ZSh2bSwgdGhpcywgMSwgU3RyaW5nKCksIHN0cnVjdHVyZWRDbG9uZUFycmF5QnVm
ZmVyVmlldyksIFByb3BlcnR5QXR0cmlidXRlOjpEb250RGVsZXRlIHwgUHJvcGVydHlBdHRyaWJ1
dGU6OlJlYWRPbmx5KSwKKyAgICAgICAgSlNET01HbG9iYWxPYmplY3Q6Okdsb2JhbFByb3BlcnR5
SW5mbyhjbGllbnREYXRhLmJ1aWx0aW5OYW1lcygpLnN0cnVjdHVyZWRDbG9uZUZvckZldGNoUHJp
dmF0ZU5hbWUoKSwKKyAgICAgICAgICAgIEpTRnVuY3Rpb246OmNyZWF0ZSh2bSwgdGhpcywgMSwg
U3RyaW5nKCksIHN0cnVjdHVyZWRDbG9uZUZvckZldGNoKSwgUHJvcGVydHlBdHRyaWJ1dGU6OkRv
bnREZWxldGUgfCBQcm9wZXJ0eUF0dHJpYnV0ZTo6UmVhZE9ubHkpLAogICAgICAgICBKU0RPTUds
b2JhbE9iamVjdDo6R2xvYmFsUHJvcGVydHlJbmZvKHZtLnByb3BlcnR5TmFtZXMtPmJ1aWx0aW5O
YW1lcygpLkFycmF5QnVmZmVyUHJpdmF0ZU5hbWUoKSwgYXJyYXlCdWZmZXJDb25zdHJ1Y3Rvcigp
LCBQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udERlbGV0ZSB8IFByb3BlcnR5QXR0cmlidXRlOjpSZWFk
T25seSksCiAgICAgICAgIEpTRE9NR2xvYmFsT2JqZWN0OjpHbG9iYWxQcm9wZXJ0eUluZm8oY2xp
ZW50RGF0YS5idWlsdGluTmFtZXMoKS5zdHJlYW1DbG9zZWRQcml2YXRlTmFtZSgpLCBqc051bWJl
cigxKSwgUHJvcGVydHlBdHRyaWJ1dGU6OkRvbnREZWxldGUgfCBQcm9wZXJ0eUF0dHJpYnV0ZTo6
UmVhZE9ubHkpLAogICAgICAgICBKU0RPTUdsb2JhbE9iamVjdDo6R2xvYmFsUHJvcGVydHlJbmZv
KGNsaWVudERhdGEuYnVpbHRpbk5hbWVzKCkuc3RyZWFtQ2xvc2luZ1ByaXZhdGVOYW1lKCksIGpz
TnVtYmVyKDIpLCBQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udERlbGV0ZSB8IFByb3BlcnR5QXR0cmli
dXRlOjpSZWFkT25seSksCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9T
dHJ1Y3R1cmVkQ2xvbmUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU3RydWN0dXJl
ZENsb25lLmNwcAppbmRleCA5NDg1NTljZDM5N2MwYTEyMDlkNGUxNjljMzAwNWNjZTAyNDMwOWI2
Li4xMDNmYjFmNWNjN2U3OTdmZjU5NWMyOTkxOWM0YzJlYzVlNjA1ZWZiIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TdHJ1Y3R1cmVkQ2xvbmUuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1N0cnVjdHVyZWRDbG9uZS5jcHAKQEAgLTY3LDUzICs2Nyw0
NyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oY2xvbmVBcnJheUJ1ZmZlciwgKEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcgogICAgIHJldHVybiBjbG9uZUFycmF5QnVmZmVy
SW1wbChnbG9iYWxPYmplY3QsIGNhbGxGcmFtZSwgQ2xvbmVNb2RlOjpQYXJ0aWFsKTsKIH0KIAot
SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKHN0cnVjdHVyZWRDbG9uZUFycmF5QnVmZmVyLCAoSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpKQotewotICAg
IHJldHVybiBjbG9uZUFycmF5QnVmZmVySW1wbChnbG9iYWxPYmplY3QsIGNhbGxGcmFtZSwgQ2xv
bmVNb2RlOjpGdWxsKTsKLX0KLQotSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKHN0cnVjdHVyZWRD
bG9uZUFycmF5QnVmZmVyVmlldywgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxG
cmFtZSogY2FsbEZyYW1lKSkKK0pTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihzdHJ1Y3R1cmVkQ2xv
bmVGb3JGZXRjaCwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2Fs
bEZyYW1lKSkKIHsKICAgICBBU1NFUlQoY2FsbEZyYW1lKTsKICAgICBBU1NFUlQoY2FsbEZyYW1l
LT5hcmd1bWVudENvdW50KCkpOwogCi0gICAgSlNWYWx1ZSB2YWx1ZSA9IGNhbGxGcmFtZS0+dW5j
aGVja2VkQXJndW1lbnQoMCk7CiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwotICAg
IGF1dG8qIGJ1ZmZlclZpZXcgPSBqc0R5bmFtaWNDYXN0PEpTQXJyYXlCdWZmZXJWaWV3Kj4odm0s
IHZhbHVlKTsKLSAgICBBU1NFUlQoYnVmZmVyVmlldyk7CisgICAgYXV0byBzY29wZSA9IERFQ0xB
UkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAgYXV0byogYnVmZmVyID0gYnVmZmVyVmlldy0+dW5z
aGFyZWRCdWZmZXIoKTsKLSAgICBpZiAoIWJ1ZmZlcikgewotICAgICAgICBhdXRvIHNjb3BlID0g
REVDTEFSRV9USFJPV19TQ09QRSh2bSk7Ci0gICAgICAgIHRocm93RGF0YUNsb25lRXJyb3IoKmds
b2JhbE9iamVjdCwgc2NvcGUpOwotICAgICAgICByZXR1cm4geyB9OworICAgIEpTVmFsdWUgdmFs
dWUgPSBjYWxsRnJhbWUtPnVuY2hlY2tlZEFyZ3VtZW50KDApOworCisgICAgaWYgKHZhbHVlLmlu
aGVyaXRzPEpTQXJyYXlCdWZmZXI+KHZtKSkKKyAgICAgICAgUkVMRUFTRV9BTkRfUkVUVVJOKHNj
b3BlLCBjbG9uZUFycmF5QnVmZmVySW1wbChnbG9iYWxPYmplY3QsIGNhbGxGcmFtZSwgQ2xvbmVN
b2RlOjpGdWxsKSk7CisKKyAgICBpZiAodmFsdWUuaW5oZXJpdHM8SlNBcnJheUJ1ZmZlclZpZXc+
KHZtKSkgeworICAgICAgICBhdXRvKiBidWZmZXJWaWV3ID0ganNDYXN0PEpTQXJyYXlCdWZmZXJW
aWV3Kj4odmFsdWUpOworICAgICAgICBBU1NFUlQoYnVmZmVyVmlldyk7CisKKyAgICAgICAgYXV0
byogYnVmZmVyID0gYnVmZmVyVmlldy0+dW5zaGFyZWRCdWZmZXIoKTsKKyAgICAgICAgaWYgKCFi
dWZmZXIpIHsKKyAgICAgICAgICAgIHRocm93RGF0YUNsb25lRXJyb3IoKmdsb2JhbE9iamVjdCwg
c2NvcGUpOworICAgICAgICAgICAgcmV0dXJuIHsgfTsKKyAgICAgICAgfQorICAgICAgICBhdXRv
IGJ1ZmZlckNsb25lID0gQXJyYXlCdWZmZXI6OnRyeUNyZWF0ZShidWZmZXItPmRhdGEoKSwgYnVm
ZmVyLT5ieXRlTGVuZ3RoKCkpOworICAgICAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IGJ1ZmZl
clZpZXctPnN0cnVjdHVyZSh2bSk7CisKKyNkZWZpbmUgQ0xPTkVfVFlQRURfQVJSQVkobmFtZSkg
XAorICAgICAgICBkbyB7IFwKKyAgICAgICAgICAgIGlmIChidWZmZXJWaWV3LT5pbmhlcml0czxK
UyMjbmFtZSMjQXJyYXk+KHZtKSkgXAorICAgICAgICAgICAgICAgIFJFTEVBU0VfQU5EX1JFVFVS
TihzY29wZSwgSlNWYWx1ZTo6ZW5jb2RlKEpTIyNuYW1lIyNBcnJheTo6Y3JlYXRlKGdsb2JhbE9i
amVjdCwgc3RydWN0dXJlLCBXVEZNb3ZlKGJ1ZmZlckNsb25lKSwgYnVmZmVyVmlldy0+Ynl0ZU9m
ZnNldCgpLCBidWZmZXJWaWV3LT5sZW5ndGgoKSkpKTsgXAorICAgICAgICB9IHdoaWxlICgwKTsK
KworICAgICAgICBGT1JfRUFDSF9UWVBFRF9BUlJBWV9UWVBFX0VYQ0xVRElOR19EQVRBX1ZJRVco
Q0xPTkVfVFlQRURfQVJSQVkpCisKKyN1bmRlZiBDTE9ORV9UWVBFRF9BUlJBWQorCisgICAgICAg
IGlmIChqc0R5bmFtaWNDYXN0PEpTRGF0YVZpZXcqPih2bSwgdmFsdWUpKQorICAgICAgICAgICAg
UkVMRUFTRV9BTkRfUkVUVVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUoSlNEYXRhVmlldzo6Y3Jl
YXRlKGdsb2JhbE9iamVjdCwgc3RydWN0dXJlLCBXVEZNb3ZlKGJ1ZmZlckNsb25lKSwgYnVmZmVy
Vmlldy0+Ynl0ZU9mZnNldCgpLCBidWZmZXJWaWV3LT5sZW5ndGgoKSkpKTsKICAgICB9Ci0gICAg
YXV0byBidWZmZXJDbG9uZSA9IEFycmF5QnVmZmVyOjp0cnlDcmVhdGUoYnVmZmVyLT5kYXRhKCks
IGJ1ZmZlci0+Ynl0ZUxlbmd0aCgpKTsKLSAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IGJ1ZmZl
clZpZXctPnN0cnVjdHVyZSh2bSk7Ci0KLSAgICBpZiAoanNEeW5hbWljQ2FzdDxKU0ludDhBcnJh
eSo+KHZtLCB2YWx1ZSkpCi0gICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoSlNJbnQ4QXJy
YXk6OmNyZWF0ZShnbG9iYWxPYmplY3QsIHN0cnVjdHVyZSwgV1RGTW92ZShidWZmZXJDbG9uZSks
IGJ1ZmZlclZpZXctPmJ5dGVPZmZzZXQoKSwgYnVmZmVyVmlldy0+bGVuZ3RoKCkpKTsKLSAgICBp
ZiAoanNEeW5hbWljQ2FzdDxKU0ludDE2QXJyYXkqPih2bSwgdmFsdWUpKQotICAgICAgICByZXR1
cm4gSlNWYWx1ZTo6ZW5jb2RlKEpTSW50MTZBcnJheTo6Y3JlYXRlKGdsb2JhbE9iamVjdCwgc3Ry
dWN0dXJlLCBXVEZNb3ZlKGJ1ZmZlckNsb25lKSwgYnVmZmVyVmlldy0+Ynl0ZU9mZnNldCgpLCBi
dWZmZXJWaWV3LT5sZW5ndGgoKSkpOwotICAgIGlmIChqc0R5bmFtaWNDYXN0PEpTSW50MzJBcnJh
eSo+KHZtLCB2YWx1ZSkpCi0gICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoSlNJbnQzMkFy
cmF5OjpjcmVhdGUoZ2xvYmFsT2JqZWN0LCBzdHJ1Y3R1cmUsIFdURk1vdmUoYnVmZmVyQ2xvbmUp
LCBidWZmZXJWaWV3LT5ieXRlT2Zmc2V0KCksIGJ1ZmZlclZpZXctPmxlbmd0aCgpKSk7Ci0gICAg
aWYgKGpzRHluYW1pY0Nhc3Q8SlNVaW50OEFycmF5Kj4odm0sIHZhbHVlKSkKLSAgICAgICAgcmV0
dXJuIEpTVmFsdWU6OmVuY29kZShKU1VpbnQ4QXJyYXk6OmNyZWF0ZShnbG9iYWxPYmplY3QsIHN0
cnVjdHVyZSwgV1RGTW92ZShidWZmZXJDbG9uZSksIGJ1ZmZlclZpZXctPmJ5dGVPZmZzZXQoKSwg
YnVmZmVyVmlldy0+bGVuZ3RoKCkpKTsKLSAgICBpZiAoanNEeW5hbWljQ2FzdDxKU1VpbnQ4Q2xh
bXBlZEFycmF5Kj4odm0sIHZhbHVlKSkKLSAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShK
U1VpbnQ4Q2xhbXBlZEFycmF5OjpjcmVhdGUoZ2xvYmFsT2JqZWN0LCBzdHJ1Y3R1cmUsIFdURk1v
dmUoYnVmZmVyQ2xvbmUpLCBidWZmZXJWaWV3LT5ieXRlT2Zmc2V0KCksIGJ1ZmZlclZpZXctPmxl
bmd0aCgpKSk7Ci0gICAgaWYgKGpzRHluYW1pY0Nhc3Q8SlNVaW50MTZBcnJheSo+KHZtLCB2YWx1
ZSkpCi0gICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoSlNVaW50MTZBcnJheTo6Y3JlYXRl
KGdsb2JhbE9iamVjdCwgc3RydWN0dXJlLCBXVEZNb3ZlKGJ1ZmZlckNsb25lKSwgYnVmZmVyVmll
dy0+Ynl0ZU9mZnNldCgpLCBidWZmZXJWaWV3LT5sZW5ndGgoKSkpOwotICAgIGlmIChqc0R5bmFt
aWNDYXN0PEpTVWludDMyQXJyYXkqPih2bSwgdmFsdWUpKQotICAgICAgICByZXR1cm4gSlNWYWx1
ZTo6ZW5jb2RlKEpTVWludDMyQXJyYXk6OmNyZWF0ZShnbG9iYWxPYmplY3QsIHN0cnVjdHVyZSwg
V1RGTW92ZShidWZmZXJDbG9uZSksIGJ1ZmZlclZpZXctPmJ5dGVPZmZzZXQoKSwgYnVmZmVyVmll
dy0+bGVuZ3RoKCkpKTsKLSAgICBpZiAoanNEeW5hbWljQ2FzdDxKU0Zsb2F0MzJBcnJheSo+KHZt
LCB2YWx1ZSkpCi0gICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoSlNGbG9hdDMyQXJyYXk6
OmNyZWF0ZShnbG9iYWxPYmplY3QsIHN0cnVjdHVyZSwgV1RGTW92ZShidWZmZXJDbG9uZSksIGJ1
ZmZlclZpZXctPmJ5dGVPZmZzZXQoKSwgYnVmZmVyVmlldy0+bGVuZ3RoKCkpKTsKLSAgICBpZiAo
anNEeW5hbWljQ2FzdDxKU0Zsb2F0NjRBcnJheSo+KHZtLCB2YWx1ZSkpCi0gICAgICAgIHJldHVy
biBKU1ZhbHVlOjplbmNvZGUoSlNGbG9hdDY0QXJyYXk6OmNyZWF0ZShnbG9iYWxPYmplY3QsIHN0
cnVjdHVyZSwgV1RGTW92ZShidWZmZXJDbG9uZSksIGJ1ZmZlclZpZXctPmJ5dGVPZmZzZXQoKSwg
YnVmZmVyVmlldy0+bGVuZ3RoKCkpKTsKLSAgICBpZiAoanNEeW5hbWljQ2FzdDxKU0RhdGFWaWV3
Kj4odm0sIHZhbHVlKSkKLSAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShKU0RhdGFWaWV3
OjpjcmVhdGUoZ2xvYmFsT2JqZWN0LCBzdHJ1Y3R1cmUsIFdURk1vdmUoYnVmZmVyQ2xvbmUpLCBi
dWZmZXJWaWV3LT5ieXRlT2Zmc2V0KCksIGJ1ZmZlclZpZXctPmxlbmd0aCgpKSk7Ci0KLSAgICBB
U1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGpzVW5kZWZp
bmVkKCkpOworCisgICAgdGhyb3dUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgInN0cnVj
dHVyZWRDbG9uZSBub3QgaW1wbGVtZW50ZWQgZm9yIG5vbi1BcnJheUJ1ZmZlciAvIG5vbi1BcnJh
eUJ1ZmZlclZpZXciX3MpOworICAgIHJldHVybiB7IH07CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1N0cnVjdHVyZWRD
bG9uZS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU3RydWN0dXJlZENsb25lLmgKaW5k
ZXggNzY3MTFiMDE0Nzk1YjNiMmU1NDhkYmUyYzkyZDkyMDJkNjVhNmEwNi4uMGFiYTg1MDY4YmMw
NjM3NmUzNzlmMTA2NDYzOGFkNDFmMzNkYTk5YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvU3RydWN0dXJlZENsb25lLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvU3RydWN0dXJlZENsb25lLmgKQEAgLTM1LDcgKzM1LDYgQEAgdXNpbmcgRW5jb2RlZEpT
VmFsdWUgPSBpbnQ2NF90OwogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBKU0NfREVDTEFSRV9IT1NU
X0ZVTkNUSU9OKGNsb25lQXJyYXlCdWZmZXIpOwotSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihz
dHJ1Y3R1cmVkQ2xvbmVBcnJheUJ1ZmZlcik7Ci1KU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHN0
cnVjdHVyZWRDbG9uZUFycmF5QnVmZmVyVmlldyk7CitKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9O
KHN0cnVjdHVyZWRDbG9uZUZvckZldGNoKTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUJ1aWx0aW5OYW1lcy5o
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUJ1aWx0aW5OYW1lcy5oCmluZGV4
IDc3OTBlMjcxODlhMDUwZmY0YThjMzdlNDMxYjAxNjMyOTc1ZDI3YTQuLjNkOTMxZGMxYjMzMTgw
OGQwNjdlNzZkNTM4MmUyMTZhMDJjMjg0YTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL1dlYkNvcmVCdWlsdGluTmFtZXMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9XZWJDb3JlQnVpbHRpbk5hbWVzLmgKQEAgLTQ1Miw4ICs0NTIsNyBAQCBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAgICAgbWFjcm8oc3RyZWFtUmVhZGFibGUpIFwKICAgICBtYWNybyhzdHJl
YW1XYWl0aW5nKSBcCiAgICAgbWFjcm8oc3RyZWFtV3JpdGFibGUpIFwKLSAgICBtYWNybyhzdHJ1
Y3R1cmVkQ2xvbmVBcnJheUJ1ZmZlcikgXAotICAgIG1hY3JvKHN0cnVjdHVyZWRDbG9uZUFycmF5
QnVmZmVyVmlldykgXAorICAgIG1hY3JvKHN0cnVjdHVyZWRDbG9uZUZvckZldGNoKSBcCiAgICAg
bWFjcm8odGltZWxpbmUpIFwKICAgICBtYWNybyh0b3ApIFwKICAgICBtYWNybyh0ZXh0RGVjb2Rl
clN0cmVhbURlY29kZXIpIFwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9D
aGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IDkyMzEx
NzJhMDQ0ZTczZDAwZTQyZTExNzE5NDA2YmM3NzUwMjdlNDkuLmI3NmZhOTFhMjg3OTE2ZmFmOWE0
NWY0NGI5OGQ0MTUwOWRkYmEzNGIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDI1IEBACisyMDIxLTA3LTA4ICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5j
b20+CisKKyAgICAgICAgW1dlYklETF0gQWRkIEJpZ0ludDY0QXJyYXkgYW5kIEJpZ1VpbnQ2NEFy
cmF5IHN1cHBvcnQgdG8gSURMIGJpbmRpbmdzIGdlbmVyYXRvcgorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI3NTcxCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiByZXNvdXJjZXMvaW1wb3J0LWV4cGVjdGF0
aW9ucy5qc29uOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL2Jsb2IvQmxv
Yi1jb25zdHJ1Y3Rvci5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9GaWxlQVBJL2Jsb2IvQmxvYi1jb25zdHJ1Y3Rvci5hbnkuanM6CisgICAgICAgICh0ZXN0
X2Jsb2IpOgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL2Jsb2IvQmxvYi1j
b25zdHJ1Y3Rvci5hbnkud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvZW5jb2RpbmcvZW5jb2RlSW50by5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9lbmNvZGluZy9lbmNvZGVJbnRvLmFueS5qczoKKyAgICAgICAg
KHN0cmluZ19hcHBlYXJlZF9oZXJlLmZvckVhY2gudHlwZS5zdHJpbmdfYXBwZWFyZWRfaGVyZS5m
b3JFYWNoKToKKyAgICAgICAgKEZsb2F0NjRBcnJheS5mb3JFYWNoLnZpZXcuc3RyaW5nX2FwcGVh
cmVkX2hlcmUuZm9yRWFjaCk6IERlbGV0ZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L2VuY29kaW5nL2VuY29kZUludG8uYW55Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL3czYy1pbXBvcnQubG9nOgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvcmVzcG9uc2UvcmVzcG9uc2UtY2xvbmUuYW55LWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL3Jlc3Bv
bnNlL3Jlc3BvbnNlLWNsb25lLmFueS5qczoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
ZmV0Y2gvYXBpL3Jlc3BvbnNlL3Jlc3BvbnNlLWNsb25lLmFueS53b3JrZXItZXhwZWN0ZWQudHh0
OgorCiAyMDIxLTA3LTA3ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAg
ICAgT3VyIHN0cnVjdHVyZWQgY2xvbmluZyBpbXBsZW1lbnRhdGlvbiBkb2VzIG5vdCBlbmNvZGUg
YWxsIG9mIFJlZ0V4cCdzIGZsYWdzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2MvcmVzb3VyY2VzL2ltcG9ydC1leHBlY3RhdGlvbnMuanNvbiBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy9yZXNvdXJjZXMvaW1wb3J0LWV4cGVjdGF0aW9ucy5qc29uCmluZGV4IGRkZjE2Njc4
ZDljMWJmOTI5YThhMmYyMmExYzVkOWY5ZWI1NTY1NzguLmQwZDdlYTZiMTVhOTVkNDlhMmQ1NzIx
ZTRmYmEzNjQ4MzI1ODA3NzAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9y
ZXNvdXJjZXMvaW1wb3J0LWV4cGVjdGF0aW9ucy5qc29uCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy9yZXNvdXJjZXMvaW1wb3J0LWV4cGVjdGF0aW9ucy5qc29uCkBAIC0zNCw2ICszNCw3
IEBACiAgICAgIndlYi1wbGF0Zm9ybS10ZXN0cy9ET00tcGFyc2luZyI6ICJza2lwIiwgCiAgICAg
IndlYi1wbGF0Zm9ybS10ZXN0cy9ET01FdmVudHMiOiAic2tpcCIsIAogICAgICJ3ZWItcGxhdGZv
cm0tdGVzdHMvRmlsZUFQSSI6ICJpbXBvcnQiLCAKKyAgICAid2ViLXBsYXRmb3JtLXRlc3RzL0Zp
bGVBUEkvYmxvYiI6ICJpbXBvcnQiLCAKICAgICAid2ViLXBsYXRmb3JtLXRlc3RzL0luZGV4ZWRE
QiI6ICJpbXBvcnQiLCAKICAgICAid2ViLXBsYXRmb3JtLXRlc3RzL1dlYkNyeXB0b0FQSSI6ICJp
bXBvcnQiLCAKICAgICAid2ViLXBsYXRmb3JtLXRlc3RzL1dlYklETCI6ICJpbXBvcnQiLCAKQEAg
LTIwOCw2ICsyMDksNyBAQAogICAgICJ3ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMi
OiAiaW1wb3J0IiwgCiAgICAgIndlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvcmVkaXJlY3Qi
OiAiaW1wb3J0IiwgCiAgICAgIndlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvcmVzb3VyY2Vz
IjogImltcG9ydCIsIAorICAgICJ3ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL3Jlc3BvbnNl
IjogImltcG9ydCIsIAogICAgICJ3ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvb3JpZ2luIjogImlt
cG9ydCIsIAogICAgICJ3ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvcmFuZ2UiOiAiaW1wb3J0Iiwg
CiAgICAgIndlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9zdGFsZS13aGlsZS1yZXZhbGlkYXRlIjog
ImltcG9ydCIsIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9GaWxlQVBJL2Jsb2IvQmxvYi1jb25zdHJ1Y3Rvci5hbnktZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJL2Js
b2IvQmxvYi1jb25zdHJ1Y3Rvci5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDg2MDQzMmI3OGU5YTEz
Mzk2MjA3OThmZDVmYmQ2MTY3MjhjYTZkYTguLmUyNmRmN2QxZTlmMzk5ZjVjYzYzYzYxY2UxNmU4
Y2M1MWIxYTZkMjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvRmlsZUFQSS9ibG9iL0Jsb2ItY29uc3RydWN0b3IuYW55LWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVB
UEkvYmxvYi9CbG9iLWNvbnN0cnVjdG9yLmFueS1leHBlY3RlZC50eHQKQEAgLTIwLDYgKzIwLDcg
QEAgUEFTUyBUb1N0cmluZyBzaG91bGQgYmUgY2FsbGVkIG9uIGVsZW1lbnRzIG9mIHRoZSBibG9i
UGFydHMgYXJyYXkuCiBQQVNTIEFycmF5QnVmZmVyIGVsZW1lbnRzIG9mIHRoZSBibG9iUGFydHMg
YXJyYXkgc2hvdWxkIGJlIHN1cHBvcnRlZC4KIFBBU1MgUGFzc2luZyB0eXBlZCBhcnJheXMgYXMg
ZWxlbWVudHMgb2YgdGhlIGJsb2JQYXJ0cyBhcnJheSBzaG91bGQgd29yay4KIFBBU1MgUGFzc2lu
ZyBhIEZsb2F0NjRBcnJheSBhcyBlbGVtZW50IG9mIHRoZSBibG9iUGFydHMgYXJyYXkgc2hvdWxk
IHdvcmsuCitQQVNTIFBhc3NpbmcgQmlnSW50IHR5cGVkIGFycmF5cyBhcyBlbGVtZW50cyBvZiB0
aGUgYmxvYlBhcnRzIGFycmF5IHNob3VsZCB3b3JrLgogUEFTUyBQYXNzaW5nIGEgRnJvemVuQXJy
YXkgYXMgdGhlIGJsb2JQYXJ0cyBhcnJheSBzaG91bGQgd29yayAoRnJvemVuQXJyYXk8TWVzc2Fn
ZVBvcnQ+KS4KIFBBU1MgQXJyYXkgd2l0aCB0d28gYmxvYnMKIFBBU1MgQXJyYXkgd2l0aCB0d28g
YnVmZmVycwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9GaWxlQVBJL2Jsb2IvQmxvYi1jb25zdHJ1Y3Rvci5hbnkuanMgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvYmxvYi9CbG9iLWNvbnN0
cnVjdG9yLmFueS5qcwppbmRleCA2YzM0ZDdlMzRiOTNmOTFiNDhlMDFkYWU0MzAwMmEzNzk0ZjBk
ZDM3Li5kMTZmNzYwY2FlZWIyZDU0MTBiM2Y3NTFmODZmNWFkNWY4Y2NmNzZkIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvYmxv
Yi9CbG9iLWNvbnN0cnVjdG9yLmFueS5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvYmxvYi9CbG9iLWNvbnN0cnVjdG9yLmFueS5qcwpA
QCAtMzExLDcgKzMxMSwxNiBAQCBnZXQgbGVuZ3RoKCkgewogICBkZXNjOiAiUGFzc2luZyBhIEZs
b2F0NjRBcnJheSBhcyBlbGVtZW50IG9mIHRoZSBibG9iUGFydHMgYXJyYXkgc2hvdWxkIHdvcmsu
IgogfSk7CiAKLQordGVzdF9ibG9iKGZ1bmN0aW9uKCkgeworICByZXR1cm4gbmV3IEJsb2IoWwor
ICAgIG5ldyBCaWdJbnQ2NEFycmF5KFtCaWdJbnQoIjB4NTM1MzQxNTA1MzUzNDE1MCIpXSksCisg
ICAgbmV3IEJpZ1VpbnQ2NEFycmF5KFtCaWdJbnQoIjB4NTM1MzQxNTA1MzUzNDE1MCIpXSkKKyAg
XSk7Cit9LCB7CisgIGV4cGVjdGVkOiAiUEFTU1BBU1NQQVNTUEFTUyIsCisgIHR5cGU6ICIiLAor
ICBkZXNjOiAiUGFzc2luZyBCaWdJbnQgdHlwZWQgYXJyYXlzIGFzIGVsZW1lbnRzIG9mIHRoZSBi
bG9iUGFydHMgYXJyYXkgc2hvdWxkIHdvcmsuIgorfSk7CiAKIHZhciB0X3BvcnRzID0gYXN5bmNf
dGVzdCgiUGFzc2luZyBhIEZyb3plbkFycmF5IGFzIHRoZSBibG9iUGFydHMgYXJyYXkgc2hvdWxk
IHdvcmsgKEZyb3plbkFycmF5PE1lc3NhZ2VQb3J0PikuIik7CiB0X3BvcnRzLnN0ZXAoZnVuY3Rp
b24oKSB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL0ZpbGVBUEkvYmxvYi9CbG9iLWNvbnN0cnVjdG9yLmFueS53b3JrZXItZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9GaWxlQVBJ
L2Jsb2IvQmxvYi1jb25zdHJ1Y3Rvci5hbnkud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCA4NjA0
MzJiNzhlOWExMzM5NjIwNzk4ZmQ1ZmJkNjE2NzI4Y2E2ZGE4Li5lMjZkZjdkMWU5ZjM5OWY1Y2M2
M2M2MWNlMTZlOGNjNTFiMWE2ZDIyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL0ZpbGVBUEkvYmxvYi9CbG9iLWNvbnN0cnVjdG9yLmFueS53
b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvRmlsZUFQSS9ibG9iL0Jsb2ItY29uc3RydWN0b3IuYW55Lndvcmtlci1leHBl
Y3RlZC50eHQKQEAgLTIwLDYgKzIwLDcgQEAgUEFTUyBUb1N0cmluZyBzaG91bGQgYmUgY2FsbGVk
IG9uIGVsZW1lbnRzIG9mIHRoZSBibG9iUGFydHMgYXJyYXkuCiBQQVNTIEFycmF5QnVmZmVyIGVs
ZW1lbnRzIG9mIHRoZSBibG9iUGFydHMgYXJyYXkgc2hvdWxkIGJlIHN1cHBvcnRlZC4KIFBBU1Mg
UGFzc2luZyB0eXBlZCBhcnJheXMgYXMgZWxlbWVudHMgb2YgdGhlIGJsb2JQYXJ0cyBhcnJheSBz
aG91bGQgd29yay4KIFBBU1MgUGFzc2luZyBhIEZsb2F0NjRBcnJheSBhcyBlbGVtZW50IG9mIHRo
ZSBibG9iUGFydHMgYXJyYXkgc2hvdWxkIHdvcmsuCitQQVNTIFBhc3NpbmcgQmlnSW50IHR5cGVk
IGFycmF5cyBhcyBlbGVtZW50cyBvZiB0aGUgYmxvYlBhcnRzIGFycmF5IHNob3VsZCB3b3JrLgog
UEFTUyBQYXNzaW5nIGEgRnJvemVuQXJyYXkgYXMgdGhlIGJsb2JQYXJ0cyBhcnJheSBzaG91bGQg
d29yayAoRnJvemVuQXJyYXk8TWVzc2FnZVBvcnQ+KS4KIFBBU1MgQXJyYXkgd2l0aCB0d28gYmxv
YnMKIFBBU1MgQXJyYXkgd2l0aCB0d28gYnVmZmVycwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNvZGluZy9lbmNvZGVJbnRvLmFueS1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2VuY29kaW5nL2VuY29kZUludG8uYW55LWV4cGVjdGVkLnR4dAppbmRleCA3MDc4YjBlYTdhYjFl
NTk0ZDE1Y2IyOGU4M2FhYmE3ODEzNjI5NmFmLi5jYjZkOGE1MjZiNzhhOWZhZjk2NTFjMTQ5Mjcw
MTZlYzcyNzk2Yzc3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2VuY29kaW5nL2VuY29kZUludG8uYW55LWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2VuY29k
ZUludG8uYW55LWV4cGVjdGVkLnR4dApAQCAtOTcsNiArOTcsMTAgQEAgUEFTUyBJbnZhbGlkIGVu
Y29kZUludG8oKSBkZXN0aW5hdGlvbjogVWludDMyQXJyYXksIGJhY2tlZCBieTogQXJyYXlCdWZm
ZXIKIFBBU1MgSW52YWxpZCBlbmNvZGVJbnRvKCkgZGVzdGluYXRpb246IFVpbnQzMkFycmF5LCBi
YWNrZWQgYnk6IFNoYXJlZEFycmF5QnVmZmVyCiBQQVNTIEludmFsaWQgZW5jb2RlSW50bygpIGRl
c3RpbmF0aW9uOiBVaW50OENsYW1wZWRBcnJheSwgYmFja2VkIGJ5OiBBcnJheUJ1ZmZlcgogUEFT
UyBJbnZhbGlkIGVuY29kZUludG8oKSBkZXN0aW5hdGlvbjogVWludDhDbGFtcGVkQXJyYXksIGJh
Y2tlZCBieTogU2hhcmVkQXJyYXlCdWZmZXIKK1BBU1MgSW52YWxpZCBlbmNvZGVJbnRvKCkgZGVz
dGluYXRpb246IEJpZ0ludDY0QXJyYXksIGJhY2tlZCBieTogQXJyYXlCdWZmZXIKK1BBU1MgSW52
YWxpZCBlbmNvZGVJbnRvKCkgZGVzdGluYXRpb246IEJpZ0ludDY0QXJyYXksIGJhY2tlZCBieTog
U2hhcmVkQXJyYXlCdWZmZXIKK1BBU1MgSW52YWxpZCBlbmNvZGVJbnRvKCkgZGVzdGluYXRpb246
IEJpZ1VpbnQ2NEFycmF5LCBiYWNrZWQgYnk6IEFycmF5QnVmZmVyCitQQVNTIEludmFsaWQgZW5j
b2RlSW50bygpIGRlc3RpbmF0aW9uOiBCaWdVaW50NjRBcnJheSwgYmFja2VkIGJ5OiBTaGFyZWRB
cnJheUJ1ZmZlcgogUEFTUyBJbnZhbGlkIGVuY29kZUludG8oKSBkZXN0aW5hdGlvbjogRmxvYXQz
MkFycmF5LCBiYWNrZWQgYnk6IEFycmF5QnVmZmVyCiBQQVNTIEludmFsaWQgZW5jb2RlSW50bygp
IGRlc3RpbmF0aW9uOiBGbG9hdDMyQXJyYXksIGJhY2tlZCBieTogU2hhcmVkQXJyYXlCdWZmZXIK
IFBBU1MgSW52YWxpZCBlbmNvZGVJbnRvKCkgZGVzdGluYXRpb246IEZsb2F0NjRBcnJheSwgYmFj
a2VkIGJ5OiBBcnJheUJ1ZmZlcgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNvZGluZy9lbmNvZGVJbnRvLmFueS5qcyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jb2RpbmcvZW5jb2RlSW50by5h
bnkuanMKaW5kZXggZWNhMGUxYmNhMTU4YjA3OWRkYTJiOWE1NTYwZTcxNjE4MDlmZjc2Zi4uNjlk
NzA4OTAwNmVjMzhjZGUzZDI5MTFmZDY3ZjAzYzVjNWE3ZjY5YSAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNvZGluZy9lbmNvZGVJbnRv
LmFueS5qcworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2VuY29kaW5nL2VuY29kZUludG8uYW55LmpzCkBAIC0xMjAsMTkgKzEyMCwyMiBAQAogICB9KTsK
IH0pOwogCi1bRGF0YVZpZXcsCi0gSW50OEFycmF5LAotIEludDE2QXJyYXksCi0gSW50MzJBcnJh
eSwKLSBVaW50MTZBcnJheSwKLSBVaW50MzJBcnJheSwKLSBVaW50OENsYW1wZWRBcnJheSwKLSBG
bG9hdDMyQXJyYXksCi0gRmxvYXQ2NEFycmF5XS5mb3JFYWNoKHZpZXcgPT4geworWyJEYXRhVmll
dyIsCisgIkludDhBcnJheSIsCisgIkludDE2QXJyYXkiLAorICJJbnQzMkFycmF5IiwKKyAiVWlu
dDE2QXJyYXkiLAorICJVaW50MzJBcnJheSIsCisgIlVpbnQ4Q2xhbXBlZEFycmF5IiwKKyAiQmln
SW50NjRBcnJheSIsCisgIkJpZ1VpbnQ2NEFycmF5IiwKKyAiRmxvYXQzMkFycmF5IiwKKyAiRmxv
YXQ2NEFycmF5Il0uZm9yRWFjaCh0eXBlID0+IHsKICAgWyJBcnJheUJ1ZmZlciIsICJTaGFyZWRB
cnJheUJ1ZmZlciJdLmZvckVhY2goKGFycmF5QnVmZmVyT3JTaGFyZWRBcnJheUJ1ZmZlcikgPT4g
ewogICAgIHRlc3QoKCkgPT4gewotICAgICAgYXNzZXJ0X3Rocm93c19qcyhUeXBlRXJyb3IsICgp
ID0+IG5ldyBUZXh0RW5jb2RlcigpLmVuY29kZUludG8oIiIsIG5ldyB2aWV3KGNyZWF0ZUJ1ZmZl
cihhcnJheUJ1ZmZlck9yU2hhcmVkQXJyYXlCdWZmZXIsIDApKSkpOwotICAgIH0sICJJbnZhbGlk
IGVuY29kZUludG8oKSBkZXN0aW5hdGlvbjogIiArIHZpZXcubmFtZSArICIsIGJhY2tlZCBieTog
IiArIGFycmF5QnVmZmVyT3JTaGFyZWRBcnJheUJ1ZmZlcik7CisgICAgICBjb25zdCB2aWV3SW5z
dGFuY2UgPSBuZXcgc2VsZlt0eXBlXShjcmVhdGVCdWZmZXIoYXJyYXlCdWZmZXJPclNoYXJlZEFy
cmF5QnVmZmVyLCAwKSk7CisgICAgICBhc3NlcnRfdGhyb3dzX2pzKFR5cGVFcnJvciwgKCkgPT4g
bmV3IFRleHRFbmNvZGVyKCkuZW5jb2RlSW50bygiIiwgdmlld0luc3RhbmNlKSk7CisgICAgfSwg
IkludmFsaWQgZW5jb2RlSW50bygpIGRlc3RpbmF0aW9uOiAiICsgdHlwZSArICIsIGJhY2tlZCBi
eTogIiArIGFycmF5QnVmZmVyT3JTaGFyZWRBcnJheUJ1ZmZlcik7CiAgIH0pOwogfSk7CiAKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5j
b2RpbmcvZW5jb2RlSW50by5hbnkud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jb2RpbmcvZW5jb2RlSW50by5hbnkud29y
a2VyLWV4cGVjdGVkLnR4dAppbmRleCA3MDc4YjBlYTdhYjFlNTk0ZDE1Y2IyOGU4M2FhYmE3ODEz
NjI5NmFmLi5jYjZkOGE1MjZiNzhhOWZhZjk2NTFjMTQ5MjcwMTZlYzcyNzk2Yzc3IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5n
L2VuY29kZUludG8uYW55Lndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNvZGluZy9lbmNvZGVJbnRvLmFueS53b3Jr
ZXItZXhwZWN0ZWQudHh0CkBAIC05Nyw2ICs5NywxMCBAQCBQQVNTIEludmFsaWQgZW5jb2RlSW50
bygpIGRlc3RpbmF0aW9uOiBVaW50MzJBcnJheSwgYmFja2VkIGJ5OiBBcnJheUJ1ZmZlcgogUEFT
UyBJbnZhbGlkIGVuY29kZUludG8oKSBkZXN0aW5hdGlvbjogVWludDMyQXJyYXksIGJhY2tlZCBi
eTogU2hhcmVkQXJyYXlCdWZmZXIKIFBBU1MgSW52YWxpZCBlbmNvZGVJbnRvKCkgZGVzdGluYXRp
b246IFVpbnQ4Q2xhbXBlZEFycmF5LCBiYWNrZWQgYnk6IEFycmF5QnVmZmVyCiBQQVNTIEludmFs
aWQgZW5jb2RlSW50bygpIGRlc3RpbmF0aW9uOiBVaW50OENsYW1wZWRBcnJheSwgYmFja2VkIGJ5
OiBTaGFyZWRBcnJheUJ1ZmZlcgorUEFTUyBJbnZhbGlkIGVuY29kZUludG8oKSBkZXN0aW5hdGlv
bjogQmlnSW50NjRBcnJheSwgYmFja2VkIGJ5OiBBcnJheUJ1ZmZlcgorUEFTUyBJbnZhbGlkIGVu
Y29kZUludG8oKSBkZXN0aW5hdGlvbjogQmlnSW50NjRBcnJheSwgYmFja2VkIGJ5OiBTaGFyZWRB
cnJheUJ1ZmZlcgorUEFTUyBJbnZhbGlkIGVuY29kZUludG8oKSBkZXN0aW5hdGlvbjogQmlnVWlu
dDY0QXJyYXksIGJhY2tlZCBieTogQXJyYXlCdWZmZXIKK1BBU1MgSW52YWxpZCBlbmNvZGVJbnRv
KCkgZGVzdGluYXRpb246IEJpZ1VpbnQ2NEFycmF5LCBiYWNrZWQgYnk6IFNoYXJlZEFycmF5QnVm
ZmVyCiBQQVNTIEludmFsaWQgZW5jb2RlSW50bygpIGRlc3RpbmF0aW9uOiBGbG9hdDMyQXJyYXks
IGJhY2tlZCBieTogQXJyYXlCdWZmZXIKIFBBU1MgSW52YWxpZCBlbmNvZGVJbnRvKCkgZGVzdGlu
YXRpb246IEZsb2F0MzJBcnJheSwgYmFja2VkIGJ5OiBTaGFyZWRBcnJheUJ1ZmZlcgogUEFTUyBJ
bnZhbGlkIGVuY29kZUludG8oKSBkZXN0aW5hdGlvbjogRmxvYXQ2NEFycmF5LCBiYWNrZWQgYnk6
IEFycmF5QnVmZmVyCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2VuY29kaW5nL3czYy1pbXBvcnQubG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNvZGluZy93M2MtaW1wb3J0LmxvZwppbmRleCBl
YTlhYTY1NTY0Y2QwYTE3YThlNzdlZTY3ZWQ1NDM3YmY1YjkwZTcxLi45ZTI4ZmVhZTA2Yzk4Mjhk
ZjY3YjBmMTg2ZTFjYWY1ZjA0Yzg5YjM2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL3czYy1pbXBvcnQubG9nCisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jb2RpbmcvdzNjLWlt
cG9ydC5sb2cKQEAgLTIzLDYgKzIzLDcgQEAgTGlzdCBvZiBmaWxlczoKIC9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2JvbS1oYW5kbGluZy5odG1s
CiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9lbmNvZGluZy9i
b20taGFuZGxpbmcuaHRtbC5oZWFkZXJzCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9lbmNvZGluZy9lbmNvZGVJbnRvLmFueS5qcworL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jb2RpbmcvZW9mLXNoaWZ0X2ppcy1leHBl
Y3RlZC5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9l
bmNvZGluZy9lb2Ytc2hpZnRfamlzLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2VuY29kaW5nL2VvZi11dGYtOC1vbmUtZXhwZWN0ZWQuaHRtbAogL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZW5jb2RpbmcvZW9mLXV0
Zi04LW9uZS5odG1sCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9yZXNwb25zZS9yZXNwb25zZS1jbG9uZS5hbnktZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRj
aC9hcGkvcmVzcG9uc2UvcmVzcG9uc2UtY2xvbmUuYW55LWV4cGVjdGVkLnR4dAppbmRleCAyNmU4
OTQ1NjNkZjYyZjFiMmI2ZGFkYmMwYWFkZjI2YmM1MGNiYjM0Li45ODRhNTQ0YTYwNWRkYTI5NDll
ZTdlM2M4ZWFhYTg1Y2U3NjIxMDk2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9yZXNwb25zZS9yZXNwb25zZS1jbG9uZS5h
bnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZmV0Y2gvYXBpL3Jlc3BvbnNlL3Jlc3BvbnNlLWNsb25lLmFueS1leHBlY3RlZC50
eHQKQEAgLTE0LDYgKzE0LDggQEAgUEFTUyBDaGVjayByZXNwb25zZSBjbG9uZSB1c2Ugc3RydWN0
dXJlQ2xvbmUgZm9yIHRlZWQgUmVhZGFibGVTdHJlYW1zIChVaW50OEFycmEKIFBBU1MgQ2hlY2sg
cmVzcG9uc2UgY2xvbmUgdXNlIHN0cnVjdHVyZUNsb25lIGZvciB0ZWVkIFJlYWRhYmxlU3RyZWFt
cyAoVWludDhDbGFtcGVkQXJyYXljaHVuaykKIFBBU1MgQ2hlY2sgcmVzcG9uc2UgY2xvbmUgdXNl
IHN0cnVjdHVyZUNsb25lIGZvciB0ZWVkIFJlYWRhYmxlU3RyZWFtcyAoVWludDE2QXJyYXljaHVu
aykKIFBBU1MgQ2hlY2sgcmVzcG9uc2UgY2xvbmUgdXNlIHN0cnVjdHVyZUNsb25lIGZvciB0ZWVk
IFJlYWRhYmxlU3RyZWFtcyAoVWludDMyQXJyYXljaHVuaykKK1BBU1MgQ2hlY2sgcmVzcG9uc2Ug
Y2xvbmUgdXNlIHN0cnVjdHVyZUNsb25lIGZvciB0ZWVkIFJlYWRhYmxlU3RyZWFtcyAoQmlnSW50
NjRBcnJheWNodW5rKQorUEFTUyBDaGVjayByZXNwb25zZSBjbG9uZSB1c2Ugc3RydWN0dXJlQ2xv
bmUgZm9yIHRlZWQgUmVhZGFibGVTdHJlYW1zIChCaWdVaW50NjRBcnJheWNodW5rKQogUEFTUyBD
aGVjayByZXNwb25zZSBjbG9uZSB1c2Ugc3RydWN0dXJlQ2xvbmUgZm9yIHRlZWQgUmVhZGFibGVT
dHJlYW1zIChGbG9hdDMyQXJyYXljaHVuaykKIFBBU1MgQ2hlY2sgcmVzcG9uc2UgY2xvbmUgdXNl
IHN0cnVjdHVyZUNsb25lIGZvciB0ZWVkIFJlYWRhYmxlU3RyZWFtcyAoRmxvYXQ2NEFycmF5Y2h1
bmspCiBGQUlMIENoZWNrIHJlc3BvbnNlIGNsb25lIHVzZSBzdHJ1Y3R1cmVDbG9uZSBmb3IgdGVl
ZCBSZWFkYWJsZVN0cmVhbXMgKERhdGFWaWV3Y2h1bmspIGFzc2VydF9hcnJheV9lcXVhbHM6IENs
b25lZCBidWZmZXIgY2h1bmtzIGhhdmUgdGhlIHNhbWUgY29udGVudCB2YWx1ZSBpcyBvYmplY3Qg
IltvYmplY3QgRGF0YVZpZXddIiwgZXhwZWN0ZWQgYXJyYXkKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL3Jlc3BvbnNlL3Jl
c3BvbnNlLWNsb25lLmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZmV0Y2gvYXBpL3Jlc3BvbnNlL3Jlc3BvbnNlLWNsb25lLmFueS5qcwppbmRleCA3
Y2M4ZjIwNWZhNTVkMzVlNDMzYTFhYjhiYzA4ZjYyYWY4YmZiNjkzLi45ZjRmMzZlZDJkMWQ2M2Mw
NzgwYTg5MGI1OTU3ZTk4Y2Y5Zjg4MmEzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9yZXNwb25zZS9yZXNwb25zZS1jbG9u
ZS5hbnkuanMKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9mZXRjaC9hcGkvcmVzcG9uc2UvcmVzcG9uc2UtY2xvbmUuYW55LmpzCkBAIC0xMTksNiArMTE5
LDggQEAgZnVuY3Rpb24gdGVzdFJlYWRhYmxlU3RyZWFtQ2xvbmUoaW5pdGlhbEJ1ZmZlciwgYnVm
ZmVyVHlwZSkKIHRlc3RSZWFkYWJsZVN0cmVhbUNsb25lKG5ldyBVaW50OENsYW1wZWRBcnJheShh
cnJheUJ1ZmZlciksICJVaW50OENsYW1wZWRBcnJheSIpOwogdGVzdFJlYWRhYmxlU3RyZWFtQ2xv
bmUobmV3IFVpbnQxNkFycmF5KGFycmF5QnVmZmVyLCAyKSwgIlVpbnQxNkFycmF5Iik7CiB0ZXN0
UmVhZGFibGVTdHJlYW1DbG9uZShuZXcgVWludDMyQXJyYXkoYXJyYXlCdWZmZXIpLCAiVWludDMy
QXJyYXkiKTsKK3Rlc3RSZWFkYWJsZVN0cmVhbUNsb25lKHR5cGVvZiBCaWdJbnQ2NEFycmF5ID09
PSAiZnVuY3Rpb24iID8gbmV3IEJpZ0ludDY0QXJyYXkoYXJyYXlCdWZmZXIpIDogdW5kZWZpbmVk
LCAiQmlnSW50NjRBcnJheSIpOwordGVzdFJlYWRhYmxlU3RyZWFtQ2xvbmUodHlwZW9mIEJpZ1Vp
bnQ2NEFycmF5ID09PSAiZnVuY3Rpb24iID8gbmV3IEJpZ1VpbnQ2NEFycmF5KGFycmF5QnVmZmVy
KSA6IHVuZGVmaW5lZCwgIkJpZ1VpbnQ2NEFycmF5Iik7CiB0ZXN0UmVhZGFibGVTdHJlYW1DbG9u
ZShuZXcgRmxvYXQzMkFycmF5KGFycmF5QnVmZmVyKSwgIkZsb2F0MzJBcnJheSIpOwogdGVzdFJl
YWRhYmxlU3RyZWFtQ2xvbmUobmV3IEZsb2F0NjRBcnJheShhcnJheUJ1ZmZlciksICJGbG9hdDY0
QXJyYXkiKTsKIHRlc3RSZWFkYWJsZVN0cmVhbUNsb25lKG5ldyBEYXRhVmlldyhhcnJheUJ1ZmZl
ciwgMiwgOCksICJEYXRhVmlldyIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvcmVzcG9uc2UvcmVzcG9uc2UtY2xvbmUu
YW55Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9yZXNwb25zZS9yZXNwb25zZS1jbG9uZS5hbnkud29ya2Vy
LWV4cGVjdGVkLnR4dAppbmRleCAyNmU4OTQ1NjNkZjYyZjFiMmI2ZGFkYmMwYWFkZjI2YmM1MGNi
YjM0Li45ODRhNTQ0YTYwNWRkYTI5NDllZTdlM2M4ZWFhYTg1Y2U3NjIxMDk2IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9y
ZXNwb25zZS9yZXNwb25zZS1jbG9uZS5hbnkud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9yZXNwb25z
ZS9yZXNwb25zZS1jbG9uZS5hbnkud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMTQsNiArMTQsOCBA
QCBQQVNTIENoZWNrIHJlc3BvbnNlIGNsb25lIHVzZSBzdHJ1Y3R1cmVDbG9uZSBmb3IgdGVlZCBS
ZWFkYWJsZVN0cmVhbXMgKFVpbnQ4QXJyYQogUEFTUyBDaGVjayByZXNwb25zZSBjbG9uZSB1c2Ug
c3RydWN0dXJlQ2xvbmUgZm9yIHRlZWQgUmVhZGFibGVTdHJlYW1zIChVaW50OENsYW1wZWRBcnJh
eWNodW5rKQogUEFTUyBDaGVjayByZXNwb25zZSBjbG9uZSB1c2Ugc3RydWN0dXJlQ2xvbmUgZm9y
IHRlZWQgUmVhZGFibGVTdHJlYW1zIChVaW50MTZBcnJheWNodW5rKQogUEFTUyBDaGVjayByZXNw
b25zZSBjbG9uZSB1c2Ugc3RydWN0dXJlQ2xvbmUgZm9yIHRlZWQgUmVhZGFibGVTdHJlYW1zIChV
aW50MzJBcnJheWNodW5rKQorUEFTUyBDaGVjayByZXNwb25zZSBjbG9uZSB1c2Ugc3RydWN0dXJl
Q2xvbmUgZm9yIHRlZWQgUmVhZGFibGVTdHJlYW1zIChCaWdJbnQ2NEFycmF5Y2h1bmspCitQQVNT
IENoZWNrIHJlc3BvbnNlIGNsb25lIHVzZSBzdHJ1Y3R1cmVDbG9uZSBmb3IgdGVlZCBSZWFkYWJs
ZVN0cmVhbXMgKEJpZ1VpbnQ2NEFycmF5Y2h1bmspCiBQQVNTIENoZWNrIHJlc3BvbnNlIGNsb25l
IHVzZSBzdHJ1Y3R1cmVDbG9uZSBmb3IgdGVlZCBSZWFkYWJsZVN0cmVhbXMgKEZsb2F0MzJBcnJh
eWNodW5rKQogUEFTUyBDaGVjayByZXNwb25zZSBjbG9uZSB1c2Ugc3RydWN0dXJlQ2xvbmUgZm9y
IHRlZWQgUmVhZGFibGVTdHJlYW1zIChGbG9hdDY0QXJyYXljaHVuaykKIEZBSUwgQ2hlY2sgcmVz
cG9uc2UgY2xvbmUgdXNlIHN0cnVjdHVyZUNsb25lIGZvciB0ZWVkIFJlYWRhYmxlU3RyZWFtcyAo
RGF0YVZpZXdjaHVuaykgYXNzZXJ0X2FycmF5X2VxdWFsczogQ2xvbmVkIGJ1ZmZlciBjaHVua3Mg
aGF2ZSB0aGUgc2FtZSBjb250ZW50IHZhbHVlIGlzIG9iamVjdCAiW29iamVjdCBEYXRhVmlld10i
LCBleHBlY3RlZCBhcnJheQo=
</data>
<flag name="review"
          id="455321"
          type_id="1"
          status="+"
          setter="cdumez"
    />
    <flag name="commit-queue"
          id="455346"
          type_id="3"
          status="-"
          setter="cdumez"
    />
          </attachment>
      

    </bug>

</bugzilla>