<?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>158576</bug_id>
          
          <creation_ts>2016-06-09 13:11:19 -0700</creation_ts>
          <short_desc>atob() / btoa() API should be exposed to workers</short_desc>
          <delta_ts>2016-06-09 20:18:33 -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, WebExposed</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>beidson</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>ggaren</cc>
    
    <cc>j</cc>
    
    <cc>rniwa</cc>
    
    <cc>sam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1200942</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-06-09 13:11:19 -0700</bug_when>
    <thetext>atob() / btoa() API should be exposed to workers:
https://html.spec.whatwg.org/multipage/webappapis.html#windoworworkerglobalscope</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1200947</commentid>
    <comment_count>1</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-06-09 13:18:37 -0700</bug_when>
    <thetext>Test:
http://w3c-test.org/workers/interfaces.worker</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201008</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2016-06-09 15:27:43 -0700</bug_when>
    <thetext>&lt;rdar://problem/26729340&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201011</commentid>
    <comment_count>3</comment_count>
      <attachid>280958</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-06-09 15:33:05 -0700</bug_when>
    <thetext>Created attachment 280958
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201022</commentid>
    <comment_count>4</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-06-09 15:44:09 -0700</bug_when>
    <thetext>*** Bug 55663 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201078</commentid>
    <comment_count>5</comment_count>
      <attachid>280958</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-06-09 18:40:35 -0700</bug_when>
    <thetext>Comment on attachment 280958
Patch

Clearing flags on attachment: 280958

Committed r201898: &lt;http://trac.webkit.org/changeset/201898&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201079</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-06-09 18:40:40 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201083</commentid>
    <comment_count>7</comment_count>
      <attachid>280958</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2016-06-09 18:55:32 -0700</bug_when>
    <thetext>Comment on attachment 280958
Patch

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

&gt; Source/WebCore/page/Base64Utilities.h:36
&gt; +    Base64Utilities() = default;
&gt; +

We should just delete these two lines of code. This is what a class gets if you don’t explicitly define a constructor. We should do this only if we want to make the default constructor private or protected.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201085</commentid>
    <comment_count>8</comment_count>
      <attachid>280958</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-06-09 18:56:49 -0700</bug_when>
    <thetext>Comment on attachment 280958
Patch

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

&gt;&gt; Source/WebCore/page/Base64Utilities.h:36
&gt;&gt; +
&gt; 
&gt; We should just delete these two lines of code. This is what a class gets if you don’t explicitly define a constructor. We should do this only if we want to make the default constructor private or protected.

My bad. I&apos;ll drop them in a follow up.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201090</commentid>
    <comment_count>9</comment_count>
      <attachid>280958</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2016-06-09 19:11:46 -0700</bug_when>
    <thetext>Comment on attachment 280958
Patch

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

&gt; Source/WebCore/page/Base64Utilities.h:38
&gt; +    String btoa(const String&amp; stringToEncode, ExceptionCode&amp;);
&gt; +    String atob(const String&amp; encodedString, ExceptionCode&amp;);

Another thing: These should both be static member functions. More efficient that way. Neither makes any use of &quot;this&quot;, directly or indirectly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201119</commentid>
    <comment_count>10</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-06-09 20:18:33 -0700</bug_when>
    <thetext>Committed r201903: &lt;http://trac.webkit.org/changeset/201903&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>280958</attachid>
            <date>2016-06-09 15:33:05 -0700</date>
            <delta_ts>2016-06-09 18:40:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-158576-20160609153434.patch</filename>
            <type>text/plain</type>
            <size>37538</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAxODc4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjIyNTIxNzdiM2M1Yjc2
OWI0NzliNGU4ZmUwYjg5Y2I3ZDFkZTAwOS4uNzE3ODMzNTRkNzg1ZWQ3MmU2NDU1YTQyMzU5ZDI3
NWE0ZDg2YTE5NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM5IEBACisyMDE2LTA2LTA5ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgYXRvYigpIC8gYnRvYSgpIEFQ
SSBzaG91bGQgYmUgZXhwb3NlZCB0byB3b3JrZXJzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTg1NzYKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzI2
NzI5MzQwPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEV4cG9zZSBhdG9iKCkgLyBidG9hKCkgQVBJIHRvIHdvcmtlcnMgYXMgcGVyOgorICAgICAgICBo
dHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS93ZWJhcHBhcGlzLmh0bWwjd2lu
ZG93b3J3b3JrZXJnbG9iYWxzY29wZQorCisgICAgICAgIFRoaXMgYWxpZ25zIG91ciBiZWhhdmlv
ciB3aXRoIEZpcmVmb3ggYW5kIENocm9tZSBhcyB3ZWxsLgorCisgICAgICAgIFRlc3Q6IGZhc3Qv
d29ya2Vycy9hdG9iLWJ0b2EuaHRtbAorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6CisgICAg
ICAgICogRGVyaXZlZFNvdXJjZXMuY3BwOgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6
CisgICAgICAgICogUGxhdGZvcm1NYWMuY21ha2U6CisgICAgICAgICogV2ViQ29yZS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIHBhZ2UvQmFzZTY0VXRpbGl0aWVzLmNwcDog
QWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpCYXNlNjRVdGlsaXRpZXM6OmJ0b2EpOgorICAgICAg
ICAoV2ViQ29yZTo6QmFzZTY0VXRpbGl0aWVzOjphdG9iKToKKyAgICAgICAgKiBwYWdlL0Jhc2U2
NFV0aWxpdGllcy5oOiBBZGRlZC4KKyAgICAgICAgKiBwYWdlL0RPTVdpbmRvdy5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpET01XaW5kb3c6OmZpbmQpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29y
ZTo6RE9NV2luZG93OjpvZmZzY3JlZW5CdWZmZXJpbmcpOiBEZWxldGVkLgorICAgICAgICAoV2Vi
Q29yZTo6RE9NV2luZG93OjpvdXRlckhlaWdodCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3Jl
OjpET01XaW5kb3c6Om91dGVyV2lkdGgpOiBEZWxldGVkLgorICAgICAgICAqIHBhZ2UvRE9NV2lu
ZG93Lmg6CisgICAgICAgICogcGFnZS9ET01XaW5kb3cuaWRsOgorICAgICAgICAqIHBhZ2UvV2lu
ZG93QmFzZTY0LmlkbDogUmVtb3ZlZC4KKyAgICAgICAgKiBwYWdlL1dpbmRvd09yV29ya2VyR2xv
YmFsU2NvcGUuaWRsOiBSZW5hbWVkIGZyb20gU291cmNlL1dlYkNvcmUvcGFnZS9XaW5kb3dUaW1l
cnMuaWRsLgorICAgICAgICAqIHdvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaDoKKyAgICAgICAg
KiB3b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmlkbDoKKwogMjAxNi0wNi0wOSAgQ29tbWl0IFF1
ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9s
bGluZyBvdXQgcjIwMTgxNS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMu
dHh0IGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5kZXggZWJjYmMxNGI5NjZiMGNh
MDAxNGVlOWY1M2VmZjhmYjU5ODAxNzRlMy4uNjcyYzRiMjY0YjIyZmU0YjE2Yjc5YzczMDFmMjY1
MTI3N2YwNGQ5ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysr
IGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTYxNiw5ICs2MTYsOCBAQCBzZXQo
V2ViQ29yZV9OT05fU1ZHX0lETF9GSUxFUwogICAgIHBhZ2UvVXNlck1lc3NhZ2VIYW5kbGVyc05h
bWVzcGFjZS5pZGwKICAgICBwYWdlL1dlYktpdE5hbWVzcGFjZS5pZGwKICAgICBwYWdlL1dlYktp
dFBvaW50LmlkbAotICAgIHBhZ2UvV2luZG93QmFzZTY0LmlkbAogICAgIHBhZ2UvV2luZG93RXZl
bnRIYW5kbGVycy5pZGwKLSAgICBwYWdlL1dpbmRvd1RpbWVycy5pZGwKKyAgICBwYWdlL1dpbmRv
d09yV29ya2VyR2xvYmFsU2NvcGUuaWRsCiAgICAgcGFnZS9Xb3JrZXJOYXZpZ2F0b3IuaWRsCiAK
ICAgICBwbHVnaW5zL0RPTU1pbWVUeXBlLmlkbApAQCAtMTk4OCw2ICsxOTg3LDcgQEAgc2V0KFdl
YkNvcmVfU09VUkNFUwogCiAgICAgcGFnZS9BdXRvc2Nyb2xsQ29udHJvbGxlci5jcHAKICAgICBw
YWdlL0JhclByb3AuY3BwCisgICAgcGFnZS9CYXNlNjRVdGlsaXRpZXMuY3BwCiAgICAgcGFnZS9D
YXB0aW9uVXNlclByZWZlcmVuY2VzLmNwcAogICAgIHBhZ2UvQ2hyb21lLmNwcAogICAgIHBhZ2Uv
Q29udGV4dE1lbnVDb250ZXh0LmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZl
ZFNvdXJjZXMuY3BwIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwCmluZGV4IGNi
NjNjMGQwNDlkYWFmZDkzYjE4NmUzODYyZmYwZmIyMjRjM2IyYjUuLjMyOWExZTZhZjQ1OWJhZjc3
OGJjNTk2ZDNkOGFlODEyMWZkODllODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2
ZWRTb3VyY2VzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKQEAg
LTY1Myw5ICs2NTMsOCBAQAogI2luY2x1ZGUgIkpTV2ViS2l0VHJhbnNpdGlvbkV2ZW50LmNwcCIK
ICNpbmNsdWRlICJKU1dlYlNvY2tldC5jcHAiCiAjaW5jbHVkZSAiSlNXaGVlbEV2ZW50LmNwcCIK
LSNpbmNsdWRlICJKU1dpbmRvd0Jhc2U2NC5jcHAiCiAjaW5jbHVkZSAiSlNXaW5kb3dFdmVudEhh
bmRsZXJzLmNwcCIKLSNpbmNsdWRlICJKU1dpbmRvd1RpbWVycy5jcHAiCisjaW5jbHVkZSAiSlNX
aW5kb3dPcldvcmtlckdsb2JhbFNjb3BlLmNwcCIKICNpbmNsdWRlICJKU1dvcmtlci5jcHAiCiAj
aW5jbHVkZSAiSlNXb3JrZXJHbG9iYWxTY29wZS5jcHAiCiAjaW5jbHVkZSAiSlNXb3JrZXJHbG9i
YWxTY29wZUZldGNoLmNwcCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3Vy
Y2VzLm1ha2UgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IDI4NzEy
NmNlNzg0ODhjNWZmM2YyNTFjMjhkZGUyNTM3MDJjYWQyZjEuLjNiNGE0MzNhMWI0YTdhMDcwOWI4
MTdiMDdlYTc2YTkxZjgyZjY3ZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRT
b3VyY2VzLm1ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQpAQCAt
NTI1LDEwICs1MjUsOSBAQCBOT05fU1ZHX0JJTkRJTkdfSURMUyA9IFwKICAgICAkKFdlYkNvcmUp
L3BhZ2UvV2ViS2l0TmFtZXNwYWNlLmlkbCBcCiAgICAgJChXZWJDb3JlKS9wYWdlL1VzZXJNZXNz
YWdlSGFuZGxlcnNOYW1lc3BhY2UuaWRsIFwKICAgICAkKFdlYkNvcmUpL3BhZ2UvVXNlck1lc3Nh
Z2VIYW5kbGVyLmlkbCBcCi0gICAgJChXZWJDb3JlKS9wYWdlL1dpbmRvd0Jhc2U2NC5pZGwgXAog
ICAgICQoV2ViQ29yZSkvcGFnZS9XaW5kb3dFdmVudEhhbmRsZXJzLmlkbCBcCi0gICAgJChXZWJD
b3JlKS9wYWdlL1dpbmRvd1RpbWVycy5pZGwgXAogICAgICQoV2ViQ29yZSkvcGFnZS9Xb3JrZXJO
YXZpZ2F0b3IuaWRsIFwKKyAgICAkKFdlYkNvcmUpL3BhZ2UvV2luZG93T3JXb3JrZXJHbG9iYWxT
Y29wZS5pZGwgXAogICAgICQoV2ViQ29yZSkvcGx1Z2lucy9ET01NaW1lVHlwZS5pZGwgXAogICAg
ICQoV2ViQ29yZSkvcGx1Z2lucy9ET01NaW1lVHlwZUFycmF5LmlkbCBcCiAgICAgJChXZWJDb3Jl
KS9wbHVnaW5zL0RPTVBsdWdpbi5pZGwgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUGxh
dGZvcm1NYWMuY21ha2UgYi9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybU1hYy5jbWFrZQppbmRleCA5
Y2NlN2NjMDliNTU4MWU1YTdlODVlNmJmZmI5MzlhMTdjZTNkY2VjLi4xNDYyMzY3NDk2OWY2Y2U0
NGU0MzlhY2JlMGZjMDBlOGI4ODI3YmE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QbGF0
Zm9ybU1hYy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybU1hYy5jbWFrZQpAQCAt
OTA0LDkgKzkwNCw4IEBAIHNldChPYmpDX0JJTkRJTkdTX05PX01NCiAgICAgTm9uRWxlbWVudFBh
cmVudE5vZGUKICAgICBQYXJlbnROb2RlCiAgICAgVVJMVXRpbHMKLSAgICBXaW5kb3dCYXNlNjQK
ICAgICBXaW5kb3dFdmVudEhhbmRsZXJzCi0gICAgV2luZG93VGltZXJzCisgICAgV2luZG93T3JX
b3JrZXJHbG9iYWxTY29wZQogICAgIFdvcmtlckdsb2JhbFNjb3BlSW5kZXhlZERhdGFiYXNlCiAg
ICAgV29ya2VyR2xvYmFsU2NvcGVOb3RpZmljYXRpb25zCiAgICAgWFBhdGhOU1Jlc29sdmVyCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5k
ZXggODc2MDA4MzIwZGVmNDY5MTJiMDM4NjI1ZTRlMmFhMWE0N2RhMDY5My4uYjQ5YTgzY2UzYzZk
OWNlZjY2ZDU4ZTJlZDUwMmEyZmI0MDM5NTNhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dl
YkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTY1OCw4ICsxNjU4LDggQEAKIAkJ
NDM5MDQ2RTcxMkRBMjVFODAwQUY4MEEyIC8qIFJlbmRlck1hdGhNTFNjcmlwdHMuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDM5MDQ2RDMxMkRBMjVF
ODAwQUY4MEEyIC8qIFJlbmRlck1hdGhNTFNjcmlwdHMuY3BwICovOyB9OwogCQk0MzkwNDZFODEy
REEyNUU4MDBBRjgwQTIgLyogUmVuZGVyTWF0aE1MU2NyaXB0cy5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDM5MDQ2RDQxMkRBMjVFODAwQUY4MEEyIC8q
IFJlbmRlck1hdGhNTFNjcmlwdHMuaCAqLzsgfTsKIAkJNDM5MDQ2RTkxMkRBMjVFODAwQUY4MEEy
IC8qIFJlbmRlck1hdGhNTFVuZGVyT3Zlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA0MzkwNDZENTEyREEyNUU4MDBBRjgwQTIgLyogUmVuZGVyTWF0
aE1MVW5kZXJPdmVyLmNwcCAqLzsgfTsKLQkJNDM5MDQ2RUExMkRBMjVFODAwQUY4MEEyIC8qIFJl
bmRlck1hdGhNTFVuZGVyT3Zlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNDM5MDQ2RDYxMkRBMjVFODAwQUY4MEEyIC8qIFJlbmRlck1hdGhNTFVuZGVy
T3Zlci5oICovOyB9OwogCQk0MzkwNDZFOTEyREEyNUU4MTJBRjgwQUMgLyogTWF0aE9wZXJhdG9y
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQzOTA0
NkQ1MTJEQTI1RTgxMkFGODBBQyAvKiBNYXRoT3BlcmF0b3IuY3BwICovOyB9OworCQk0MzkwNDZF
QTEyREEyNUU4MDBBRjgwQTIgLyogUmVuZGVyTWF0aE1MVW5kZXJPdmVyLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MzkwNDZENjEyREEyNUU4MDBBRjgw
QTIgLyogUmVuZGVyTWF0aE1MVW5kZXJPdmVyLmggKi87IH07CiAJCTQzOTA0NkVBMTJEQTI1RTgx
MkFGODBBQyAvKiBNYXRoT3BlcmF0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDQzOTA0NkQ2MTJEQTI1RTgxMkFGODBBQyAvKiBNYXRoT3BlcmF0b3Iu
aCAqLzsgfTsKIAkJNDM5MDQ2RUIxMkRBMjVFODAwQUY4MEE5IC8qIFJlbmRlck1hdGhNTFRva2Vu
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQzOTA0
NkQ3MTJEQTI1RTgwMEFGODBBOSAvKiBSZW5kZXJNYXRoTUxUb2tlbi5jcHAgKi87IH07CiAJCTQz
OTA0NkVDMTJEQTI1RTgwMEFGODBBOSAvKiBSZW5kZXJNYXRoTUxUb2tlbi5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDM5MDQ2RDgxMkRBMjVFODAwQUY4
MEE5IC8qIFJlbmRlck1hdGhNTFRva2VuLmggKi87IH07CkBAIC0xNzMzLDYgKzE3MzMsOCBAQAog
CQk0NThGRTQwQTE1ODlERjBCMDA1NjA5RTYgLyogUmVuZGVyU2VhcmNoRmllbGQuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ1OEZFNDA4MTU4OURGMEIw
MDU2MDlFNiAvKiBSZW5kZXJTZWFyY2hGaWVsZC5oICovOyB9OwogCQk0NUZFQTVDRjE1NkRERThD
MDA2NTQxMDEgLyogRGVjaW1hbC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA0NUZFQTVDRDE1NkRERThDMDA2NTQxMDEgLyogRGVjaW1hbC5jcHAgKi87
IH07CiAJCTQ1RkVBNUQwMTU2RERFOEMwMDY1NDEwMSAvKiBEZWNpbWFsLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NUZFQTVDRTE1NkRERThDMDA2NTQx
MDEgLyogRGVjaW1hbC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCTQ2MEJCNjE1MUQwQTFCRjAwMDIyMTgxMiAvKiBCYXNlNjRVdGlsaXRpZXMuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDYwQkI2MTMx
RDBBMUJFQzAwMjIxODEyIC8qIEJhc2U2NFV0aWxpdGllcy5jcHAgKi87IH07CisJCTQ2MEJCNjE2
MUQwQTFCRjAwMDIyMTgxMiAvKiBCYXNlNjRVdGlsaXRpZXMuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ2MEJCNjE0MUQwQTFCRUMwMDIyMTgxMiAvKiBC
YXNlNjRVdGlsaXRpZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OwogCQk0NjM0NTkyQzFBQzIyNzEwMDBFQ0I3MUMgLyogUG93ZXJPYnNlcnZlck1hYy5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NjM0NTky
QjFBQzIyNzEwMDBFQ0I3MUMgLyogUG93ZXJPYnNlcnZlck1hYy5jcHAgKi87IH07CiAJCTQ2M0VC
NjIyMUI4Nzg5RTAwMDk2RUQ1MSAvKiBUYWdDb2xsZWN0aW9uLmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ2M0VCNjIwMUI4Nzg5Q0IwMDk2RUQ1MSAv
KiBUYWdDb2xsZWN0aW9uLmNwcCAqLzsgfTsKIAkJNDYzRUI2MjMxQjg3ODlFMDAwOTZFRDUxIC8q
IFRhZ0NvbGxlY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDQ2M0VCNjIxMUI4Nzg5Q0IwMDk2RUQ1MSAvKiBUYWdDb2xsZWN0aW9uLmggKi87IH07
CkBAIC05MjA1LDggKzkyMDcsOCBAQAogCQk0MzkwNDZEMzEyREEyNUU4MDBBRjgwQTIgLyogUmVu
ZGVyTWF0aE1MU2NyaXB0cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBSZW5kZXJNYXRoTUxTY3JpcHRzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
NDM5MDQ2RDQxMkRBMjVFODAwQUY4MEEyIC8qIFJlbmRlck1hdGhNTFNjcmlwdHMuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyTWF0aE1MU2NyaXB0cy5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk0MzkwNDZENTEyREEyNUU4MDBBRjgwQTIgLyogUmVuZGVy
TWF0aE1MVW5kZXJPdmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFJlbmRlck1hdGhNTFVuZGVyT3Zlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0J
CTQzOTA0NkQ2MTJEQTI1RTgwMEFGODBBMiAvKiBSZW5kZXJNYXRoTUxVbmRlck92ZXIuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyTWF0aE1MVW5kZXJPdmVyLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQzOTA0NkQ1MTJEQTI1RTgxMkFGODBBQyAvKiBN
YXRoT3BlcmF0b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWF0
aE9wZXJhdG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDM5MDQ2RDYxMkRB
MjVFODAwQUY4MEEyIC8qIFJlbmRlck1hdGhNTFVuZGVyT3Zlci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBSZW5kZXJNYXRoTUxVbmRlck92ZXIuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJNDM5MDQ2RDYxMkRBMjVFODEyQUY4MEFDIC8qIE1hdGhPcGVyYXRvci5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNYXRoT3BlcmF0b3IuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDM5MDQ2RDcxMkRBMjVFODAwQUY4MEE5IC8qIFJlbmRl
ck1hdGhNTFRva2VuLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJl
bmRlck1hdGhNTFRva2VuLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDM5MDQ2
RDgxMkRBMjVFODAwQUY4MEE5IC8qIFJlbmRlck1hdGhNTFRva2VuLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlck1hdGhNTFRva2VuLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CkBAIC05Mjg1LDYgKzkyODcsOCBAQAogCQk0NThGRTQwODE1ODlERjBCMDA1NjA5
RTYgLyogUmVuZGVyU2VhcmNoRmllbGQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gUmVuZGVyU2VhcmNoRmllbGQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDVG
RUE1Q0QxNTZEREU4QzAwNjU0MTAxIC8qIERlY2ltYWwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gRGVjaW1hbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTQ1RkVBNUNFMTU2RERFOEMwMDY1NDEwMSAvKiBEZWNpbWFsLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IERlY2ltYWwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNDYwQkI2MTMxRDBBMUJFQzAwMjIxODEyIC8qIEJhc2U2NFV0aWxpdGllcy5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBCYXNlNjRVdGlsaXRpZXMuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0NjBCQjYxNDFEMEExQkVDMDAyMjE4MTIgLyogQmFz
ZTY0VXRpbGl0aWVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEJhc2U2NFV0
aWxpdGllcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0NjM0NTkyQjFBQzIyNzEw
MDBFQ0I3MUMgLyogUG93ZXJPYnNlcnZlck1hYy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBQb3dlck9ic2VydmVyTWFjLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJNDYzRUI2MjAxQjg3ODlDQjAwOTZFRDUxIC8qIFRhZ0NvbGxlY3Rpb24uY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVGFnQ29sbGVjdGlvbi5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ2M0VCNjIxMUI4Nzg5Q0IwMDk2RUQ1MSAvKiBU
YWdDb2xsZWN0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRhZ0NvbGxl
Y3Rpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE3OTgxLDYgKzE3OTg1LDgg
QEAKIAkJCQlCQzEyNEVFNDBDMjY0MUNEMDA5RTIzNDkgLyogQmFyUHJvcC5jcHAgKi8sCiAJCQkJ
QkMxMjRFRTUwQzI2NDFDRDAwOUUyMzQ5IC8qIEJhclByb3AuaCAqLywKIAkJCQlCQzEyNEVFNjBD
MjY0MUNEMDA5RTIzNDkgLyogQmFyUHJvcC5pZGwgKi8sCisJCQkJNDYwQkI2MTMxRDBBMUJFQzAw
MjIxODEyIC8qIEJhc2U2NFV0aWxpdGllcy5jcHAgKi8sCisJCQkJNDYwQkI2MTQxRDBBMUJFQzAw
MjIxODEyIC8qIEJhc2U2NFV0aWxpdGllcy5oICovLAogCQkJCTA3MkNBODYwMTZDQjREQzMwMDhB
RTEzMSAvKiBDYXB0aW9uVXNlclByZWZlcmVuY2VzLmNwcCAqLywKIAkJCQkwNzlEMDg2NzE2MkYy
MEU4MDBEQjg2NTggLyogQ2FwdGlvblVzZXJQcmVmZXJlbmNlcy5oICovLAogCQkJCTA3OUQwODZB
MTYyRjIxRjkwMERCODY1OCAvKiBDYXB0aW9uVXNlclByZWZlcmVuY2VzTWVkaWFBRi5jcHAgKi8s
CkBAIC0yNjI4MSw2ICsyNjI4Nyw3IEBACiAJCQkJQThFQTdEMkQwQTE5Mzg1NTAwQThFRjVGIC8q
IEhUTUxJbWFnZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4RUE3RDJCMEExOTM4NTUw
MEE4RUY1RiAvKiBIVE1MSW1hZ2VMb2FkZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4MTM2OUND
MDk3Mzc0RjYwMEQ3NDQ2MyAvKiBIVE1MSW5wdXRFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJ
CQk0NjBCQjYxNjFEMEExQkYwMDAyMjE4MTIgLyogQmFzZTY0VXRpbGl0aWVzLmggaW4gSGVhZGVy
cyAqLywKIAkJCQk5N0JDODQ5QjEyMzcwQTRCMDAwQzYxNjEgLyogSFRNTElucHV0U3RyZWFtLmgg
aW4gSGVhZGVycyAqLywKIAkJCQk5MzMwOURFNjA5OUU2NDkyMDA1NkU1ODEgLyogSFRNTEludGVy
Y2hhbmdlLmggaW4gSGVhZGVycyAqLywKIAkJCQlBODEzNjlFNDA5NzM3NEY2MDBENzQ0NjMgLyog
SFRNTEtleWdlbkVsZW1lbnQuaCBpbiBIZWFkZXJzICovLApAQCAtMjkwNzYsNiArMjkwODMsNyBA
QAogCQkJCUNFN0IyREI0MTU4NkFCQUQwMDk4QjNGQSAvKiBBbHRlcm5hdGl2ZVRleHRVSUNvbnRy
b2xsZXIubW0gaW4gU291cmNlcyAqLywKIAkJCQlGRDMxNjAzRDEyQjAyNjc2MDBDMUEzNTkgLyog
QW5hbHlzZXJOb2RlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxQTc5NUM4MTg4OEJDQjUwMDM4
MkY5MCAvKiBBTkdMRUluc3RhbmNlZEFycmF5cy5jcHAgaW4gU291cmNlcyAqLywKKwkJCQk0NjBC
QjYxNTFEMEExQkYwMDAyMjE4MTIgLyogQmFzZTY0VXRpbGl0aWVzLmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCTQ5MDcwN0U2MTIxOUMwNDMwMEQ5MEU1MSAvKiBBTkdMRVdlYktpdEJyaWRnZS5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQk0OUU5MTJBQTBFRkFDOTA2MDA5RDBDQUYgLyogQW5pbWF0aW9u
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxNkZFMTExMEU2RTFEQTcwMEJGNjA4OCAvKiBBbmlt
YXRpb25CYXNlLmNwcCBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGFnZS9CYXNlNjRVdGlsaXRpZXMuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9CYXNlNjRVdGls
aXRpZXMuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjg3ZjBjM2U4ZmYwY2NkOWZlZGQxM2IwNzA4ZDUzODM3ZDMz
MWE1ZmYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Jhc2U2NFV0aWxp
dGllcy5jcHAKQEAgLTAsMCArMSw2NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNiBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMn
JworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMK
KyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAq
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICog
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcu
aCIKKyNpbmNsdWRlICJCYXNlNjRVdGlsaXRpZXMuaCIKKworI2luY2x1ZGUgPHd0Zi90ZXh0L0Jh
c2U2NC5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK1N0cmluZyBCYXNlNjRVdGlsaXRpZXM6
OmJ0b2EoY29uc3QgU3RyaW5nJiBzdHJpbmdUb0VuY29kZSwgRXhjZXB0aW9uQ29kZSYgZWMpCit7
CisgICAgaWYgKHN0cmluZ1RvRW5jb2RlLmlzTnVsbCgpKQorICAgICAgICByZXR1cm4gU3RyaW5n
KCk7CisKKyAgICBpZiAoIXN0cmluZ1RvRW5jb2RlLmNvbnRhaW5zT25seUxhdGluMSgpKSB7Cisg
ICAgICAgIGVjID0gSU5WQUxJRF9DSEFSQUNURVJfRVJSOworICAgICAgICByZXR1cm4gU3RyaW5n
KCk7CisgICAgfQorCisgICAgcmV0dXJuIGJhc2U2NEVuY29kZShzdHJpbmdUb0VuY29kZS5sYXRp
bjEoKSk7Cit9CisKK1N0cmluZyBCYXNlNjRVdGlsaXRpZXM6OmF0b2IoY29uc3QgU3RyaW5nJiBl
bmNvZGVkU3RyaW5nLCBFeGNlcHRpb25Db2RlJiBlYykKK3sKKyAgICBpZiAoZW5jb2RlZFN0cmlu
Zy5pc051bGwoKSkKKyAgICAgICAgcmV0dXJuIFN0cmluZygpOworCisgICAgaWYgKCFlbmNvZGVk
U3RyaW5nLmNvbnRhaW5zT25seUxhdGluMSgpKSB7CisgICAgICAgIGVjID0gSU5WQUxJRF9DSEFS
QUNURVJfRVJSOworICAgICAgICByZXR1cm4gU3RyaW5nKCk7CisgICAgfQorCisgICAgVmVjdG9y
PGNoYXI+IG91dDsKKyAgICBpZiAoIWJhc2U2NERlY29kZShlbmNvZGVkU3RyaW5nLCBvdXQsIEJh
c2U2NFZhbGlkYXRlUGFkZGluZyB8IEJhc2U2NElnbm9yZVNwYWNlc0FuZE5ld0xpbmVzKSkgewor
ICAgICAgICBlYyA9IElOVkFMSURfQ0hBUkFDVEVSX0VSUjsKKyAgICAgICAgcmV0dXJuIFN0cmlu
ZygpOworICAgIH0KKworICAgIHJldHVybiBTdHJpbmcob3V0LmRhdGEoKSwgb3V0LnNpemUoKSk7
Cit9CisKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQmFzZTY0VXRpbGl0aWVz
LmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Jhc2U2NFV0aWxpdGllcy5oCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdi
YmE5YjViZmNmN2E5NzRiYmI1ZDFmNjkyN2Y5YTFmMjZjYTViMDMKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Jhc2U2NFV0aWxpdGllcy5oCkBAIC0wLDAgKzEsNDEgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5D
LiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
QVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgIkV4Y2VwdGlvbkNvZGUuaCIK
KyNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgewor
CitjbGFzcyBCYXNlNjRVdGlsaXRpZXMgeworcHVibGljOgorICAgIEJhc2U2NFV0aWxpdGllcygp
ID0gZGVmYXVsdDsKKworICAgIFN0cmluZyBidG9hKGNvbnN0IFN0cmluZyYgc3RyaW5nVG9FbmNv
ZGUsIEV4Y2VwdGlvbkNvZGUmKTsKKyAgICBTdHJpbmcgYXRvYihjb25zdCBTdHJpbmcmIGVuY29k
ZWRTdHJpbmcsIEV4Y2VwdGlvbkNvZGUmKTsKK307CisKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93
LmNwcAppbmRleCBmZjU3MDBjNmE5ODg4Yzc2MWE0ZjVlM2VlMjI0ZWVjYWEyYTM4OGRmLi4xMTli
ZDQ2YTBkNmZjM2QzNTMyYTk4MjRkNzQ1Y2FmNDIxYTdkOTViIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9ET01X
aW5kb3cuY3BwCkBAIC0xMDksNyArMTA5LDYgQEAKICNpbmNsdWRlIDx3dGYvTWF0aEV4dHJhcy5o
PgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgogI2luY2x1ZGUgPHd0Zi9SZWYuaD4K
LSNpbmNsdWRlIDx3dGYvdGV4dC9CYXNlNjQuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJp
bmcuaD4KIAogI2lmIEVOQUJMRShVU0VSX01FU1NBR0VfSEFORExFUlMpCkBAIC0xMTM3LDM4ICsx
MTM2LDYgQEAgU3RyaW5nIERPTVdpbmRvdzo6cHJvbXB0KGNvbnN0IFN0cmluZyYgbWVzc2FnZSwg
Y29uc3QgU3RyaW5nJiBkZWZhdWx0VmFsdWUpCiAgICAgcmV0dXJuIFN0cmluZygpOwogfQogCi1T
dHJpbmcgRE9NV2luZG93OjpidG9hKGNvbnN0IFN0cmluZyYgc3RyaW5nVG9FbmNvZGUsIEV4Y2Vw
dGlvbkNvZGUmIGVjKQotewotICAgIGlmIChzdHJpbmdUb0VuY29kZS5pc051bGwoKSkKLSAgICAg
ICAgcmV0dXJuIFN0cmluZygpOwotCi0gICAgaWYgKCFzdHJpbmdUb0VuY29kZS5jb250YWluc09u
bHlMYXRpbjEoKSkgewotICAgICAgICBlYyA9IElOVkFMSURfQ0hBUkFDVEVSX0VSUjsKLSAgICAg
ICAgcmV0dXJuIFN0cmluZygpOwotICAgIH0KLQotICAgIHJldHVybiBiYXNlNjRFbmNvZGUoc3Ry
aW5nVG9FbmNvZGUubGF0aW4xKCkpOwotfQotCi1TdHJpbmcgRE9NV2luZG93OjphdG9iKGNvbnN0
IFN0cmluZyYgZW5jb2RlZFN0cmluZywgRXhjZXB0aW9uQ29kZSYgZWMpCi17Ci0gICAgaWYgKGVu
Y29kZWRTdHJpbmcuaXNOdWxsKCkpCi0gICAgICAgIHJldHVybiBTdHJpbmcoKTsKLQotICAgIGlm
ICghZW5jb2RlZFN0cmluZy5jb250YWluc09ubHlMYXRpbjEoKSkgewotICAgICAgICBlYyA9IElO
VkFMSURfQ0hBUkFDVEVSX0VSUjsKLSAgICAgICAgcmV0dXJuIFN0cmluZygpOwotICAgIH0KLQot
ICAgIFZlY3RvcjxjaGFyPiBvdXQ7Ci0gICAgaWYgKCFiYXNlNjREZWNvZGUoZW5jb2RlZFN0cmlu
Zywgb3V0LCBCYXNlNjRWYWxpZGF0ZVBhZGRpbmcgfCBCYXNlNjRJZ25vcmVTcGFjZXNBbmROZXdM
aW5lcykpIHsKLSAgICAgICAgZWMgPSBJTlZBTElEX0NIQVJBQ1RFUl9FUlI7Ci0gICAgICAgIHJl
dHVybiBTdHJpbmcoKTsKLSAgICB9Ci0KLSAgICByZXR1cm4gU3RyaW5nKG91dC5kYXRhKCksIG91
dC5zaXplKCkpOwotfQotCiBib29sIERPTVdpbmRvdzo6ZmluZChjb25zdCBTdHJpbmcmIHN0cmlu
ZywgYm9vbCBjYXNlU2Vuc2l0aXZlLCBib29sIGJhY2t3YXJkcywgYm9vbCB3cmFwLCBib29sIC8q
d2hvbGVXb3JkKi8sIGJvb2wgLypzZWFyY2hJbkZyYW1lcyovLCBib29sIC8qc2hvd0RpYWxvZyov
KSBjb25zdAogewogICAgIGlmICghaXNDdXJyZW50bHlEaXNwbGF5ZWRJbkZyYW1lKCkpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5oIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9ET01XaW5kb3cuaAppbmRleCA5YjdiN2Y4MWM1YzlmMzY1NTJhODliM2MwY2EzZWEyNWE5
OTM3N2U4Li4zYzE0MmI5MDQ0ZDY1ODY3NTE3ODJmMjhlNjdiMTljOWRiZjMwOGM5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvRE9NV2luZG93LmgKQEAgLTI3LDYgKzI3LDcgQEAKICNpZm5kZWYgRE9NV2luZG93X2gK
ICNkZWZpbmUgRE9NV2luZG93X2gKIAorI2luY2x1ZGUgIkJhc2U2NFV0aWxpdGllcy5oIgogI2lu
Y2x1ZGUgIkNvbnRleHREZXN0cnVjdGlvbk9ic2VydmVyLmgiCiAjaW5jbHVkZSAiRXZlbnRUYXJn
ZXQuaCIKICNpbmNsdWRlICJGcmFtZURlc3RydWN0aW9uT2JzZXJ2ZXIuaCIKQEAgLTk3LDYgKzk4
LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICAsIHB1YmxpYyBFdmVudFRhcmdldFdp
dGhJbmxpbmVEYXRhCiAgICAgICAgICwgcHVibGljIENvbnRleHREZXN0cnVjdGlvbk9ic2VydmVy
CiAgICAgICAgICwgcHVibGljIEZyYW1lRGVzdHJ1Y3Rpb25PYnNlcnZlcgorICAgICAgICAsIHB1
YmxpYyBCYXNlNjRVdGlsaXRpZXMKICAgICAgICAgLCBwdWJsaWMgU3VwcGxlbWVudGFibGU8RE9N
V2luZG93PiB7CiAgICAgcHVibGljOgogICAgICAgICBzdGF0aWMgUmVmPERPTVdpbmRvdz4gY3Jl
YXRlKERvY3VtZW50KiBkb2N1bWVudCkgeyByZXR1cm4gYWRvcHRSZWYoKm5ldyBET01XaW5kb3co
ZG9jdW1lbnQpKTsgfQpAQCAtMTc1LDggKzE3Nyw2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAg
ICAgICAgdm9pZCBhbGVydChjb25zdCBTdHJpbmcmIG1lc3NhZ2UpOwogICAgICAgICBib29sIGNv
bmZpcm0oY29uc3QgU3RyaW5nJiBtZXNzYWdlKTsKICAgICAgICAgU3RyaW5nIHByb21wdChjb25z
dCBTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgZGVmYXVsdFZhbHVlKTsKLSAgICAgICAg
U3RyaW5nIGJ0b2EoY29uc3QgU3RyaW5nJiBzdHJpbmdUb0VuY29kZSwgRXhjZXB0aW9uQ29kZSYp
OwotICAgICAgICBTdHJpbmcgYXRvYihjb25zdCBTdHJpbmcmIGVuY29kZWRTdHJpbmcsIEV4Y2Vw
dGlvbkNvZGUmKTsKIAogICAgICAgICBib29sIGZpbmQoY29uc3QgU3RyaW5nJiwgYm9vbCBjYXNl
U2Vuc2l0aXZlLCBib29sIGJhY2t3YXJkcywgYm9vbCB3cmFwLCBib29sIHdob2xlV29yZCwgYm9v
bCBzZWFyY2hJbkZyYW1lcywgYm9vbCBzaG93RGlhbG9nKSBjb25zdDsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaWRsIGIvU291cmNlL1dlYkNvcmUvcGFnZS9E
T01XaW5kb3cuaWRsCmluZGV4IDI3YzQ4NDZlNzY0NjYzMGY3ZTEyMmVmOWZlYmE5ODU4YzE0N2Iy
NjUuLjZhMmNkYTNiZmM5ZmNmNDc0ZGY2MGIzM2I0MjZkOGNmYjNjOWFmY2IgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL0RPTVdpbmRvdy5pZGwKQEAgLTIzMSw2ICsyMzEsNSBAQCBkaWN0aW9uYXJ5IFNjcm9sbFRv
T3B0aW9ucyB7CiB9OwogCiBET01XaW5kb3cgaW1wbGVtZW50cyBHbG9iYWxFdmVudEhhbmRsZXJz
OwotRE9NV2luZG93IGltcGxlbWVudHMgV2luZG93QmFzZTY0OwogRE9NV2luZG93IGltcGxlbWVu
dHMgV2luZG93RXZlbnRIYW5kbGVyczsKLURPTVdpbmRvdyBpbXBsZW1lbnRzIFdpbmRvd1RpbWVy
czsKK0RPTVdpbmRvdyBpbXBsZW1lbnRzIFdpbmRvd09yV29ya2VyR2xvYmFsU2NvcGU7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1dpbmRvd0Jhc2U2NC5pZGwgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1dpbmRvd0Jhc2U2NC5pZGwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDM1YzQzMjA0M2YzOGE5ZTUwYzA1OTdlZDhhYzQ5NzM1ZjI3ZmNjYjEuLjAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9XaW5k
b3dCYXNlNjQuaWRsCisrKyAvZGV2L251bGwKQEAgLTEsMzMgKzAsMCBAQAotLyoKLSAqIENvcHly
aWdodCAoQykgMjAwNiwgMjAwNywgMjAwOCwgMjAwOSwgMjAxMyBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KLSAqIENvcHlyaWdodCAoQykgMjAxMyBTYW1zdW5nIEVsZWN0cm9uaWNzLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBh
cmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQ
UExFIElOQy4gT1IKLSAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAotICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
Ci0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZCi0gKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
LSAqLwotCi1bCi0gICAgTm9JbnRlcmZhY2VPYmplY3QsCi1dIGludGVyZmFjZSBXaW5kb3dCYXNl
NjQgewotICAgIFtSYWlzZXNFeGNlcHRpb25dIERPTVN0cmluZyBhdG9iKERPTVN0cmluZyBzdHJp
bmcpOwotICAgIFtSYWlzZXNFeGNlcHRpb25dIERPTVN0cmluZyBidG9hKERPTVN0cmluZyBzdHJp
bmcpOwotfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvV2luZG93T3JXb3JrZXJH
bG9iYWxTY29wZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1dpbmRvd09yV29ya2VyR2xvYmFs
U2NvcGUuaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmRiZWJiZTI3NzNiZGE4MTA5OTk0YTg1YWUyNjllMWRkMGQ0
NGY1ZTkKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1dpbmRvd09yV29y
a2VyR2xvYmFsU2NvcGUuaWRsCkBAIC0wLDAgKzEsNDEgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMp
IDIwMDYtMjAwOSwgMjAxMywgMTAxNiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
IENvcHlyaWdodCAoQykgMjAxMyBTYW1zdW5nIEVsZWN0cm9uaWNzLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUg
SU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAq
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
CisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCitbCisgICAg
Tm9JbnRlcmZhY2VPYmplY3QsCitdIGludGVyZmFjZSBXaW5kb3dPcldvcmtlckdsb2JhbFNjb3Bl
IHsKKyAgICAvLyBUaW1lcnMuCisgICAgW0N1c3RvbV0gbG9uZyBzZXRUaW1lb3V0KGFueSBoYW5k
bGVyLCBvcHRpb25hbCBsb25nIHRpbWVvdXQgPSAwKTsKKyAgICB2b2lkIGNsZWFyVGltZW91dChv
cHRpb25hbCBsb25nIGhhbmRsZSA9IDApOworICAgIFtDdXN0b21dIGxvbmcgc2V0SW50ZXJ2YWwo
YW55IGhhbmRsZXIsIG9wdGlvbmFsIGxvbmcgdGltZW91dCA9IDApOworICAgIHZvaWQgY2xlYXJJ
bnRlcnZhbChvcHRpb25hbCBsb25nIGhhbmRsZSA9IDApOworCisgICAgLy8gQmFzZTY0IHV0aWxp
dHkgbWV0aG9kcy4KKyAgICBbUmFpc2VzRXhjZXB0aW9uXSBET01TdHJpbmcgYXRvYihET01TdHJp
bmcgc3RyaW5nKTsKKyAgICBbUmFpc2VzRXhjZXB0aW9uXSBET01TdHJpbmcgYnRvYShET01TdHJp
bmcgc3RyaW5nKTsKK307CisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvV2luZG93
VGltZXJzLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvV2luZG93VGltZXJzLmlkbApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTdmNWI2MTVjNDM2ZDJjZTc3ODcxZDBhY2FjZjVlZDY0
NTE5YjEyMi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL1dpbmRvd1RpbWVycy5pZGwKKysrIC9kZXYvbnVsbApAQCAtMSwz
NiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDA2LCAyMDA3LCAyMDA4LCAyMDA5LCAy
MDEzIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIENvcHlyaWdodCAoQykgMjAx
MSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogQ29weXJpZ2h0IChDKSAyMDEz
IFNhbXN1bmcgRWxlY3Ryb25pY3MuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgot
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgot
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQg
QU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgotICogQ09OVFJJQlVUT1JTIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0gKiBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLVsKLSAgICBOb0ludGVyZmFjZU9iamVjdCwK
LV0gaW50ZXJmYWNlIFdpbmRvd1RpbWVycyB7Ci0gICAgW0N1c3RvbV0gbG9uZyBzZXRUaW1lb3V0
KGFueSBoYW5kbGVyLCBvcHRpb25hbCBsb25nIHRpbWVvdXQgPSAwKTsKLSAgICB2b2lkIGNsZWFy
VGltZW91dChvcHRpb25hbCBsb25nIGhhbmRsZSA9IDApOwotICAgIFtDdXN0b21dIGxvbmcgc2V0
SW50ZXJ2YWwoYW55IGhhbmRsZXIsIG9wdGlvbmFsIGxvbmcgdGltZW91dCA9IDApOwotICAgIHZv
aWQgY2xlYXJJbnRlcnZhbChvcHRpb25hbCBsb25nIGhhbmRsZSA9IDApOwotfTsKLQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5oIGIvU291cmNl
L1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5oCmluZGV4IDJmY2NkYWJiYWU4OGRl
NTEwYTlhYTU1NWRjNTllYmQzNTE0MDhjZWYuLjY3YzVjYTM5YjI0MTc0NjA0MTFjMGYzN2M5MDkw
ODgyODMwYjZkOGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xv
YmFsU2NvcGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3Bl
LmgKQEAgLTI2LDYgKzI2LDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJCYXNlNjRV
dGlsaXRpZXMuaCIKICNpbmNsdWRlICJFdmVudExpc3RlbmVyLmgiCiAjaW5jbHVkZSAiRXZlbnRU
YXJnZXQuaCIKICNpbmNsdWRlICJTY3JpcHRFeGVjdXRpb25Db250ZXh0LmgiCkBAIC01Nyw3ICs1
OCw3IEBAIG5hbWVzcGFjZSBJREJDbGllbnQgewogY2xhc3MgSURCQ29ubmVjdGlvblByb3h5Owog
fQogCi1jbGFzcyBXb3JrZXJHbG9iYWxTY29wZSA6IHB1YmxpYyBSZWZDb3VudGVkPFdvcmtlckds
b2JhbFNjb3BlPiwgcHVibGljIFN1cHBsZW1lbnRhYmxlPFdvcmtlckdsb2JhbFNjb3BlPiwgcHVi
bGljIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIHB1YmxpYyBFdmVudFRhcmdldFdpdGhJbmxpbmVE
YXRhIHsKK2NsYXNzIFdvcmtlckdsb2JhbFNjb3BlIDogcHVibGljIFJlZkNvdW50ZWQ8V29ya2Vy
R2xvYmFsU2NvcGU+LCBwdWJsaWMgU3VwcGxlbWVudGFibGU8V29ya2VyR2xvYmFsU2NvcGU+LCBw
dWJsaWMgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgcHVibGljIEV2ZW50VGFyZ2V0V2l0aElubGlu
ZURhdGEsIHB1YmxpYyBCYXNlNjRVdGlsaXRpZXMgewogcHVibGljOgogICAgIHZpcnR1YWwgfldv
cmtlckdsb2JhbFNjb3BlKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMv
V29ya2VyR2xvYmFsU2NvcGUuaWRsIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9i
YWxTY29wZS5pZGwKaW5kZXggNDNlYWY5ZTY5MTUyNGY0M2RkNWVhNjg4ZTE1MTJjMmZlOGFkOTM0
Yi4uMDU2Y2IzY2QzOTlmNmY2NmZhYzI1MTVmNTZkYjRlOTlhYmRjNGIzNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5pZGwKKysrIGIvU291cmNl
L1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5pZGwKQEAgLTY0LDQgKzY0LDQgQEAK
ICAgICBbQ29uZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTLCBFbmFibGVkQXRS
dW50aW1lPUluZGV4ZWREQldvcmtlcnNdIGF0dHJpYnV0ZSBJREJWZXJzaW9uQ2hhbmdlRXZlbnRD
b25zdHJ1Y3RvciBJREJWZXJzaW9uQ2hhbmdlRXZlbnQ7CiB9OwogCi1Xb3JrZXJHbG9iYWxTY29w
ZSBpbXBsZW1lbnRzIFdpbmRvd1RpbWVyczsKK1dvcmtlckdsb2JhbFNjb3BlIGltcGxlbWVudHMg
V2luZG93T3JXb3JrZXJHbG9iYWxTY29wZTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAwMTg4ZTM2ZTVhMTM0YTEzMTY0M2Qy
YmU4ZTNkOThjNWIyNGMwNzEzLi4yZDk1MjY4MDFmNmI1ZjM4NjI4MTRlODk2Mzg1NDNiZDNjMDA2
YzVjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDUgKzEsMTkgQEAKIDIwMTYtMDYtMDkgIENocmlzIER1bWV6ICA8Y2R1
bWV6QGFwcGxlLmNvbT4KIAorICAgICAgICBhdG9iKCkgLyBidG9hKCkgQVBJIHNob3VsZCBiZSBl
eHBvc2VkIHRvIHdvcmtlcnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE1ODU3NgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMjY3MjkzNDA+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIHRlc3QgZm9y
IGF0b2IoKSAvIGJ0b2EoKSBpbiB3b3JrZXJzLgorCisgICAgICAgICogZmFzdC93b3JrZXJzL2F0
b2ItYnRvYS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3Qvd29ya2Vycy9hdG9i
LWJ0b2EuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC93b3JrZXJzL3Jlc291cmNlcy93b3Jr
ZXItYXRvYi1idG9hLmpzOiBBZGRlZC4KKworMjAxNi0wNi0wOSAgQ2hyaXMgRHVtZXogIDxjZHVt
ZXpAYXBwbGUuY29tPgorCiAgICAgICAgIFdvcmtlckdsb2JhbFNjb3BlIGF0dHJpYnV0ZXMgLyBv
cGVyYXRpb25zIHNob3VsZCBiZSBvbiB0aGUgcHJvdG90eXBlCiAgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTg1NjgKICAgICAgICAgPHJkYXI6Ly9wcm9i
bGVtLzI2NzIwMDc5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC93b3JrZXJzL2F0b2It
YnRvYS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3dvcmtlcnMvYXRvYi1idG9hLWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45MjI0NzRkY2YyODJmZWNkYjkwZWYxZDJhMWU1MDE2YmFl
YzU1ZWIwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC93b3JrZXJzL2F0b2It
YnRvYS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3MyBAQAorW1dvcmtlcl0gdGVzdHMgdGhhdCBh
dG9iKCkgLyBidG9hKCkgd29yayBpbiB3b3JrZXJzLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBz
ZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVU
RSIuCisKKworU3RhcnRpbmcgd29ya2VyOiByZXNvdXJjZXMvd29ya2VyLWF0b2ItYnRvYS5qcwor
UEFTUyBbV29ya2VyXSBzZWxmLmF0b2IoIllRPT0iKSBpcyAiYSIKK1BBU1MgW1dvcmtlcl0gc2Vs
Zi5hdG9iKCJZV0k9IikgaXMgImFiIgorUEFTUyBbV29ya2VyXSBzZWxmLmF0b2IoIllXSmoiKSBp
cyAiYWJjIgorUEFTUyBbV29ya2VyXSBzZWxmLmF0b2IoIllXSmpaQT09IikgaXMgImFiY2QiCitQ
QVNTIFtXb3JrZXJdIHNlbGYuYXRvYigiWVdKalpHVT0iKSBpcyAiYWJjZGUiCitQQVNTIFtXb3Jr
ZXJdIHNlbGYuYXRvYigiWVdKalpHVm0iKSBpcyAiYWJjZGVmIgorUEFTUyBbV29ya2VyXSBzZWxm
LmJ0b2EoImEiKSBpcyAiWVE9PSIKK1BBU1MgW1dvcmtlcl0gc2VsZi5idG9hKCJhYiIpIGlzICJZ
V0k9IgorUEFTUyBbV29ya2VyXSBzZWxmLmJ0b2EoImFiYyIpIGlzICJZV0pqIgorUEFTUyBbV29y
a2VyXSBzZWxmLmJ0b2EoImFiY2QiKSBpcyAiWVdKalpBPT0iCitQQVNTIFtXb3JrZXJdIHNlbGYu
YnRvYSgiYWJjZGUiKSBpcyAiWVdKalpHVT0iCitQQVNTIFtXb3JrZXJdIHNlbGYuYnRvYSgiYWJj
ZGVmIikgaXMgIllXSmpaR1ZtIgorUEFTUyBbV29ya2VyXSB0eXBlb2Ygc2VsZi5idG9hIGlzICJm
dW5jdGlvbiIKK1BBU1MgW1dvcmtlcl0gc2VsZi5idG9hKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVF
cnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCitQQVNTIFtXb3JrZXJdIHNlbGYuYnRvYSgiIikg
aXMgIiIKK1BBU1MgW1dvcmtlcl0gc2VsZi5idG9hKG51bGwpIGlzICJiblZzYkE9PSIKK1BBU1Mg
W1dvcmtlcl0gc2VsZi5idG9hKHVuZGVmaW5lZCkgaXMgImRXNWtaV1pwYm1WayIKK1BBU1MgW1dv
cmtlcl0gc2VsZi5idG9hKHNlbGYpIGlzICJXMjlpYW1WamRDQkVaV1JwWTJGMFpXUlhiM0pyWlhK
SGJHOWlZV3hUWTI5d1pWMD0iCitQQVNTIFtXb3JrZXJdIHNlbGYuYnRvYSgiw6nDqSIpIGlzICI2
ZWs9IgorUEFTUyBbV29ya2VyXSBzZWxmLmJ0b2EoIlx1MDA4MFx1MDA4MSIpIGlzICJnSUU9Igor
UEFTUyBbV29ya2VyXSBzZWxmLmJ0b2EoItGC0LXRgdGCIikgdGhyZXcgZXhjZXB0aW9uIEVycm9y
OiBJbnZhbGlkQ2hhcmFjdGVyRXJyb3I6IERPTSBFeGNlcHRpb24gNS4KK1BBU1MgW1dvcmtlcl0g
c2VsZi5idG9hIGlzIDAKK1BBU1MgW1dvcmtlcl0gdHlwZW9mIHNlbGYuYnRvYSBpcyAibnVtYmVy
IgorUEFTUyBbV29ya2VyXSB0eXBlb2Ygc2VsZi5hdG9iIGlzICJmdW5jdGlvbiIKK1BBU1MgW1dv
cmtlcl0gc2VsZi5hdG9iKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBh
cmd1bWVudHMuCitQQVNTIFtXb3JrZXJdIHNlbGYuYXRvYigiIikgaXMgIiIKK1BBU1MgW1dvcmtl
cl0gc2VsZi5hdG9iKG51bGwpIGlzICLCnsOpZSIKK1BBU1MgW1dvcmtlcl0gc2VsZi5hdG9iKHVu
ZGVmaW5lZCkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBJbnZhbGlkQ2hhcmFjdGVyRXJyb3I6IERP
TSBFeGNlcHRpb24gNS4KK1BBU1MgW1dvcmtlcl0gc2VsZi5hdG9iKCIgWVE9PSIpIGlzICJhIgor
UEFTUyBbV29ya2VyXSBzZWxmLmF0b2IoIllRPT1cdTAwMGEiKSBpcyAiYSIKK1BBU1MgW1dvcmtl
cl0gc2VsZi5hdG9iKCJhYlx0Y2QiKSBpcyAiacK3HSIKK1BBU1MgW1dvcmtlcl0gc2VsZi5hdG9i
KCJhYlxuY2QiKSBpcyAiacK3HSIKK1BBU1MgW1dvcmtlcl0gc2VsZi5hdG9iKCJhYlxmY2QiKSBp
cyAiacK3HSIKK1BBU1MgW1dvcmtlcl0gc2VsZi5hdG9iKCJhYiBjZCIpIGlzICJpwrcdIgorUEFT
UyBbV29ya2VyXSBzZWxmLmF0b2IoImFiXHRcblxmXHIgY2QiKSBpcyAiacK3HSIKK1BBU1MgW1dv
cmtlcl0gc2VsZi5hdG9iKCIgXHRcblxmXHIgYWJcdFxuXGZcciBjZFx0XG5cZlxyICIpIGlzICJp
wrcdIgorUEFTUyBbV29ya2VyXSBzZWxmLmF0b2IoImFiXHRcblxmXHIgPVx0XG5cZlxyID1cdFxu
XGZcciAiKSBpcyAiaSIKK1BBU1MgW1dvcmtlcl0gc2VsZi5hdG9iKCIgICAgICAgICAgICAiKSBp
cyAiIgorUEFTUyBbV29ya2VyXSBzZWxmLmF0b2IoIiBhYmNkPT09IikgdGhyZXcgZXhjZXB0aW9u
IEVycm9yOiBJbnZhbGlkQ2hhcmFjdGVyRXJyb3I6IERPTSBFeGNlcHRpb24gNS4KK1BBU1MgW1dv
cmtlcl0gc2VsZi5hdG9iKCJhYmNkPT09ICIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogSW52YWxp
ZENoYXJhY3RlckVycm9yOiBET00gRXhjZXB0aW9uIDUuCitQQVNTIFtXb3JrZXJdIHNlbGYuYXRv
YigiYWJjZCA9PT0iKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IEludmFsaWRDaGFyYWN0ZXJFcnJv
cjogRE9NIEV4Y2VwdGlvbiA1LgorUEFTUyBbV29ya2VyXSBzZWxmLmF0b2IoIjZlaz0iKSBpcyAi
w6nDqSIKK1BBU1MgW1dvcmtlcl0gc2VsZi5hdG9iKCI2ZWsiKSBpcyAiw6nDqSIKK1BBU1MgW1dv
cmtlcl0gc2VsZi5hdG9iKCJnSUU9IikgaXMgIsKAwoEiCitQQVNTIFtXb3JrZXJdIHNlbGYuYXRv
Yigi0YLQtdGB0YIiKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IEludmFsaWRDaGFyYWN0ZXJFcnJv
cjogRE9NIEV4Y2VwdGlvbiA1LgorUEFTUyBbV29ya2VyXSBzZWxmLmF0b2IoInoiKSB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IEludmFsaWRDaGFyYWN0ZXJFcnJvcjogRE9NIEV4Y2VwdGlvbiA1Lgor
UEFTUyBbV29ya2VyXSBzZWxmLmF0b2IoInp6IikgaXMgIsOPIgorUEFTUyBbV29ya2VyXSBzZWxm
LmF0b2IoInp6eiIpIGlzICLDjzwiCitQQVNTIFtXb3JrZXJdIHNlbGYuYXRvYigienp6PSIpIGlz
ICLDjzwiCitQQVNTIFtXb3JrZXJdIHNlbGYuYXRvYigienp6PT0iKSB0aHJldyBleGNlcHRpb24g
RXJyb3I6IEludmFsaWRDaGFyYWN0ZXJFcnJvcjogRE9NIEV4Y2VwdGlvbiA1LgorUEFTUyBbV29y
a2VyXSBzZWxmLmF0b2IoInp6ej09PSIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogSW52YWxpZENo
YXJhY3RlckVycm9yOiBET00gRXhjZXB0aW9uIDUuCitQQVNTIFtXb3JrZXJdIHNlbGYuYXRvYigi
enp6PT09PSIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogSW52YWxpZENoYXJhY3RlckVycm9yOiBE
T00gRXhjZXB0aW9uIDUuCitQQVNTIFtXb3JrZXJdIHNlbGYuYXRvYigienp6PT09PT0iKSB0aHJl
dyBleGNlcHRpb24gRXJyb3I6IEludmFsaWRDaGFyYWN0ZXJFcnJvcjogRE9NIEV4Y2VwdGlvbiA1
LgorUEFTUyBbV29ya2VyXSBzZWxmLmF0b2IoInp6enoiKSBpcyAiw488w7MiCitQQVNTIFtXb3Jr
ZXJdIHNlbGYuYXRvYigienp6enoiKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IEludmFsaWRDaGFy
YWN0ZXJFcnJvcjogRE9NIEV4Y2VwdGlvbiA1LgorUEFTUyBbV29ya2VyXSBzZWxmLmF0b2IoIno9
enoiKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IEludmFsaWRDaGFyYWN0ZXJFcnJvcjogRE9NIEV4
Y2VwdGlvbiA1LgorUEFTUyBbV29ya2VyXSBzZWxmLmF0b2IoIj0iKSB0aHJldyBleGNlcHRpb24g
RXJyb3I6IEludmFsaWRDaGFyYWN0ZXJFcnJvcjogRE9NIEV4Y2VwdGlvbiA1LgorUEFTUyBbV29y
a2VyXSBzZWxmLmF0b2IoIj09IikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBJbnZhbGlkQ2hhcmFj
dGVyRXJyb3I6IERPTSBFeGNlcHRpb24gNS4KK1BBU1MgW1dvcmtlcl0gc2VsZi5hdG9iKCI9PT0i
KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IEludmFsaWRDaGFyYWN0ZXJFcnJvcjogRE9NIEV4Y2Vw
dGlvbiA1LgorUEFTUyBbV29ya2VyXSBzZWxmLmF0b2IoIj09PT0iKSB0aHJldyBleGNlcHRpb24g
RXJyb3I6IEludmFsaWRDaGFyYWN0ZXJFcnJvcjogRE9NIEV4Y2VwdGlvbiA1LgorUEFTUyBbV29y
a2VyXSBzZWxmLmF0b2IoIj09PT09IikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBJbnZhbGlkQ2hh
cmFjdGVyRXJyb3I6IERPTSBFeGNlcHRpb24gNS4KK1BBU1MgW1dvcmtlcl0gc2VsZi5hdG9iIGlz
IDAKK1BBU1MgW1dvcmtlcl0gdHlwZW9mIHNlbGYuYXRvYiBpcyAibnVtYmVyIgorUEFTUyBzdWNj
ZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3Qvd29ya2Vycy9hdG9iLWJ0b2EuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qv
d29ya2Vycy9hdG9iLWJ0b2EuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43MGMyMTAzZjE5MTUxMWMzMzJmN2M4
MjU2Y2JkYzRlYTczYmQ2NWY4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC93
b3JrZXJzL2F0b2ItYnRvYS5odG1sCkBAIC0wLDAgKzEsMTIgQEAKKzwhRE9DVFlQRSBodG1sPgor
PGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUu
anMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8c2NyaXB0Pgord29ya2VyID0gc3RhcnRX
b3JrZXIoJ3Jlc291cmNlcy93b3JrZXItYXRvYi1idG9hLmpzJyk7Cis8L3NjcmlwdD4KKzxzY3Jp
cHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9k
eT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvd29ya2Vycy9yZXNvdXJj
ZXMvd29ya2VyLWF0b2ItYnRvYS5qcyBiL0xheW91dFRlc3RzL2Zhc3Qvd29ya2Vycy9yZXNvdXJj
ZXMvd29ya2VyLWF0b2ItYnRvYS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42MzdkNWEyZmQzNDVjNTIyOWU2NDBi
YjA2ZGJiOGNkYzIwMjNlY2ZhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC93
b3JrZXJzL3Jlc291cmNlcy93b3JrZXItYXRvYi1idG9hLmpzCkBAIC0wLDAgKzEsNzcgQEAKK2lt
cG9ydFNjcmlwdHMoJy4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcycpOworCit2YXIg
Z2xvYmFsID0gdGhpczsKK2dsb2JhbC5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKworZGVzY3JpcHRp
b24oInRlc3RzIHRoYXQgYXRvYigpIC8gYnRvYSgpIHdvcmsgaW4gd29ya2Vycy4iKTsKKworc2hv
dWxkQmUoJ3NlbGYuYXRvYigiWVE9PSIpJywgJyJhIicpOworc2hvdWxkQmUoJ3NlbGYuYXRvYigi
WVdJPSIpJywgJyJhYiInKTsKK3Nob3VsZEJlKCdzZWxmLmF0b2IoIllXSmoiKScsICciYWJjIicp
Oworc2hvdWxkQmUoJ3NlbGYuYXRvYigiWVdKalpBPT0iKScsICciYWJjZCInKTsKK3Nob3VsZEJl
KCdzZWxmLmF0b2IoIllXSmpaR1U9IiknLCAnImFiY2RlIicpOworc2hvdWxkQmUoJ3NlbGYuYXRv
YigiWVdKalpHVm0iKScsICciYWJjZGVmIicpOworc2hvdWxkQmUoJ3NlbGYuYnRvYSgiYSIpJywg
JyJZUT09IicpOworc2hvdWxkQmUoJ3NlbGYuYnRvYSgiYWIiKScsICciWVdJPSInKTsKK3Nob3Vs
ZEJlKCdzZWxmLmJ0b2EoImFiYyIpJywgJyJZV0pqIicpOworc2hvdWxkQmUoJ3NlbGYuYnRvYSgi
YWJjZCIpJywgJyJZV0pqWkE9PSInKTsKK3Nob3VsZEJlKCdzZWxmLmJ0b2EoImFiY2RlIiknLCAn
IllXSmpaR1U9IicpOworc2hvdWxkQmUoJ3NlbGYuYnRvYSgiYWJjZGVmIiknLCAnIllXSmpaR1Zt
IicpOworCitzaG91bGRCZSgndHlwZW9mIHNlbGYuYnRvYScsICciZnVuY3Rpb24iJyk7CitzaG91
bGRUaHJvdygnc2VsZi5idG9hKCknLCAnIlR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMi
Jyk7CitzaG91bGRCZSgnc2VsZi5idG9hKCIiKScsICciIicpOworc2hvdWxkQmUoJ3NlbGYuYnRv
YShudWxsKScsICciYm5Wc2JBPT0iJyk7IC8vIEdldHMgY29udmVydGVkIHRvICJudWxsIiBzdHJp
bmcuCitzaG91bGRCZSgnc2VsZi5idG9hKHVuZGVmaW5lZCknLCAnImRXNWtaV1pwYm1WayInKTsK
K3Nob3VsZEJlKCdzZWxmLmJ0b2Eoc2VsZiknLCAnIlcyOWlhbVZqZENCRVpXUnBZMkYwWldSWGIz
SnJaWEpIYkc5aVlXeFRZMjl3WlYwPSInKTsgLy8gIltvYmplY3QgRGVkaWNhdGVkV29ya2VyR2xv
YmFsU2NvcGVdIgorc2hvdWxkQmUoJ3NlbGYuYnRvYSgiw6nDqSIpJywgJyI2ZWs9IicpOworc2hv
dWxkQmUoJ3NlbGYuYnRvYSgiXFx1MDA4MFxcdTAwODEiKScsICciZ0lFPSInKTsKK3Nob3VsZFRo
cm93KCdzZWxmLmJ0b2EoItGC0LXRgdGCIiknKTsKK3NlbGYuYnRvYSA9IDA7CitzaG91bGRCZSgn
c2VsZi5idG9hJywgJzAnKTsKK3Nob3VsZEJlKCd0eXBlb2Ygc2VsZi5idG9hJywgJyJudW1iZXIi
Jyk7CisKK3Nob3VsZEJlKCd0eXBlb2Ygc2VsZi5hdG9iJywgJyJmdW5jdGlvbiInKTsKK3Nob3Vs
ZFRocm93KCdzZWxmLmF0b2IoKScsICciVHlwZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cyIn
KTsKK3Nob3VsZEJlKCdzZWxmLmF0b2IoIiIpJywgJyIiJyk7CitzaG91bGRCZSgnc2VsZi5hdG9i
KG51bGwpJywgJyJceDlFw6llIicpOyAvLyBHZXRzIGNvbnZlcnRlZCB0byAibnVsbCIgc3RyaW5n
Lgorc2hvdWxkVGhyb3coJ3NlbGYuYXRvYih1bmRlZmluZWQpJyk7CitzaG91bGRCZSgnc2VsZi5h
dG9iKCIgWVE9PSIpJywgJyJhIicpOworc2hvdWxkQmUoJ3NlbGYuYXRvYigiWVE9PVxcdTAwMGEi
KScsICciYSInKTsKK3Nob3VsZEJlKCdzZWxmLmF0b2IoImFiXFx0Y2QiKScsICciacK3XHgxZCIn
KTsKK3Nob3VsZEJlKCdzZWxmLmF0b2IoImFiXFxuY2QiKScsICciacK3XHgxZCInKTsKK3Nob3Vs
ZEJlKCdzZWxmLmF0b2IoImFiXFxmY2QiKScsICciacK3XHgxZCInKTsKK3Nob3VsZEJlKCdzZWxm
LmF0b2IoImFiIGNkIiknLCAnImnCt1x4MWQiJyk7CitzaG91bGRCZSgnc2VsZi5hdG9iKCJhYlxc
dFxcblxcZlxcciBjZCIpJywgJyJpwrdceDFkIicpOworc2hvdWxkQmUoJ3NlbGYuYXRvYigiIFxc
dFxcblxcZlxcciBhYlxcdFxcblxcZlxcciBjZFxcdFxcblxcZlxcciAiKScsICciacK3XHgxZCIn
KTsKK3Nob3VsZEJlKCdzZWxmLmF0b2IoImFiXFx0XFxuXFxmXFxyID1cXHRcXG5cXGZcXHIgPVxc
dFxcblxcZlxcciAiKScsICciaSInKTsKK3Nob3VsZEJlKCdzZWxmLmF0b2IoIiAgICAgICAgICAg
ICIpJywgJyIiJyk7CitzaG91bGRUaHJvdygnc2VsZi5hdG9iKCIgYWJjZD09PSIpJyk7CitzaG91
bGRUaHJvdygnc2VsZi5hdG9iKCJhYmNkPT09ICIpJyk7CitzaG91bGRUaHJvdygnc2VsZi5hdG9i
KCJhYmNkID09PSIpJyk7CitzaG91bGRCZSgnc2VsZi5hdG9iKCI2ZWs9IiknLCAnIsOpw6kiJyk7
CitzaG91bGRCZSgnc2VsZi5hdG9iKCI2ZWsiKScsICciw6nDqSInKTsKK3Nob3VsZEJlKCdzZWxm
LmF0b2IoImdJRT0iKScsICciXHUwMDgwXHUwMDgxIicpOworc2hvdWxkVGhyb3coJ3NlbGYuYXRv
Yigi0YLQtdGB0YIiKScpOworc2hvdWxkVGhyb3coJ3NlbGYuYXRvYigieiIpJyk7CitzaG91bGRC
ZSgnc2VsZi5hdG9iKCJ6eiIpJywgJyLDjyInKTsKK3Nob3VsZEJlKCdzZWxmLmF0b2IoInp6eiIp
JywgJyLDj1x1MDAzQyInKTsKK3Nob3VsZEJlKCdzZWxmLmF0b2IoInp6ej0iKScsICciw49cdTAw
M0MiJyk7CitzaG91bGRUaHJvdygnc2VsZi5hdG9iKCJ6eno9PSIpJyk7IC8vIGV4Y2VzcyBwYWQg
Y2hhcmFjdGVycy4KK3Nob3VsZFRocm93KCdzZWxmLmF0b2IoInp6ej09PSIpJyk7IC8vIGV4Y2Vz
cyBwYWQgY2hhcmFjdGVycy4KK3Nob3VsZFRocm93KCdzZWxmLmF0b2IoInp6ej09PT0iKScpOyAv
LyBleGNlc3MgcGFkIGNoYXJhY3RlcnMuCitzaG91bGRUaHJvdygnc2VsZi5hdG9iKCJ6eno9PT09
PSIpJyk7IC8vIGV4Y2VzcyBwYWQgY2hhcmFjdGVycy4KK3Nob3VsZEJlKCdzZWxmLmF0b2IoInp6
enoiKScsICciw49cdTAwM0PDsyInKTsKK3Nob3VsZFRocm93KCdzZWxmLmF0b2IoInp6enp6Iikn
KTsKK3Nob3VsZFRocm93KCdzZWxmLmF0b2IoIno9enoiKScpOworc2hvdWxkVGhyb3coJ3NlbGYu
YXRvYigiPSIpJyk7CitzaG91bGRUaHJvdygnc2VsZi5hdG9iKCI9PSIpJyk7CitzaG91bGRUaHJv
dygnc2VsZi5hdG9iKCI9PT0iKScpOworc2hvdWxkVGhyb3coJ3NlbGYuYXRvYigiPT09PSIpJyk7
CitzaG91bGRUaHJvdygnc2VsZi5hdG9iKCI9PT09PSIpJyk7CitzZWxmLmF0b2IgPSAwOworc2hv
dWxkQmUoJ3NlbGYuYXRvYicsICcwJyk7CitzaG91bGRCZSgndHlwZW9mIHNlbGYuYXRvYicsICci
bnVtYmVyIicpOworCitmaW5pc2hKU1Rlc3QoKTsKKwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>