<?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>139833</bug_id>
          
          <creation_ts>2014-12-19 13:29:16 -0800</creation_ts>
          <short_desc>[iOS] add optimized fullscreen API</short_desc>
          <delta_ts>2014-12-20 10:31:21 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Media</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Eric Carlson">eric.carlson</reporter>
          <assigned_to name="Eric Carlson">eric.carlson</assigned_to>
          <cc>commit-queue</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1057155</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2014-12-19 13:29:16 -0800</bug_when>
    <thetext>Add prefixed API for optimized fullscreen.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1057179</commentid>
    <comment_count>1</comment_count>
      <attachid>243578</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2014-12-19 14:48:34 -0800</bug_when>
    <thetext>Created attachment 243578
Proposed patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1057180</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-12-19 14:50:09 -0800</bug_when>
    <thetext>Attachment 243578 did not pass style-queue:


ERROR: Source/WebCore/ChangeLog:8:  You should remove the &apos;No new tests&apos; and either add and list tests, or explain why no new tests were possible.  [changelog/nonewtests] [5]
ERROR: Source/WebCore/dom/EventNames.h:298:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/WebCore/dom/EventNames.h:300:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 3 in 19 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1057184</commentid>
    <comment_count>3</comment_count>
      <attachid>243578</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2014-12-19 15:01:26 -0800</bug_when>
    <thetext>Comment on attachment 243578
Proposed patch.

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

&gt; Source/JavaScriptCore/Configurations/FeatureDefines.xcconfig:229
&gt; +ENABLE_VIDEO_PRESENTATION_MODE[sdk=iphone*] = ENABLE_VIDEO_PRESENTATION_MODE;

Please sort this alphabetically with the other ENABLE_ (here and other FeatureDefines.xcconfig files)

&gt; Source/WTF/wtf/Platform.h:1103
&gt; +#if PLATFORM(IOS) &amp;&amp; __IPHONE_OS_VERSION_MIN_REQUIRED &gt;= 90000
&gt; +#define ENABLE_VIDEO_PRESENTATION_MODE 1
&gt; +#endif

I don&apos;t think you need this at all, since the xcconfig files define this. Or is it needed for the IDL?

&gt; Source/WebCore/ChangeLog:8
&gt; +        No new tests (OOPS!).

OOPS

Can you add some iOS tests?

&gt; Source/WebCore/html/HTMLVideoElement.cpp:408
&gt; +    if (mode == VideoFullscreenModeStandard)
&gt; +        return presentationModeFullscreen();
&gt; +    if (mode &amp; VideoFullscreenModeOptimized)
&gt; +        return presentationModeOptimized();
&gt; +    if (mode == VideoFullscreenModeNone)
&gt; +        return presentationModeInline();

I would prefer a blank line after each return.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1057273</commentid>
    <comment_count>4</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2014-12-20 10:31:04 -0800</bug_when>
    <thetext>Submitted r177622: https://trac.webkit.org/r177622</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>243578</attachid>
            <date>2014-12-19 14:48:34 -0800</date>
            <delta_ts>2014-12-20 10:31:21 -0800</delta_ts>
            <desc>Proposed patch.</desc>
            <filename>patch_7.txt</filename>
            <type>text/plain</type>
            <size>51593</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTc3NTkyKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEyIEBA
CisyMDE0LTEyLTE5ICBFcmljIENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisg
ICAgICAgIFtpT1NdIGFkZCBvcHRpbWl6ZWQgZnVsbHNjcmVlbiBBUEkKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzOTgzMworCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogQ29uZmlndXJhdGlvbnMvRmVhdHVy
ZURlZmluZXMueGNjb25maWc6IEFkZCBFTkFCTEVfVklERU9fUFJFU0VOVEFUSU9OX01PREUuCisK
IDIwMTQtMTItMTkgIEpvc2VwaCBQZWNvcmFybyAgPHBlY29yYXJvQGFwcGxlLmNvbT4KIAogICAg
ICAgICBXZWIgSW5zcGVjdG9yOiBDUkFTSCBpbnNwZWN0b3ItcHJvdG9jb2wvZGVidWdnZXIvYnJl
YWtwb2ludC1hY3Rpb24tZGV0YWNoLmh0bWwKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9D
b25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcJ
KHJldmlzaW9uIDE3NzI3OSkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9Db25maWd1cmF0aW9u
cy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwkod29ya2luZyBjb3B5KQpAQCAtMjI2LDQgKzIyNiw2
IEBAIEVOQUJMRV9MTElOVF9DX0xPT1AgPSA7CiAKIEVOQUJMRV9TQVRVUkFURURfTEFZT1VUX0FS
SVRITUVUSUMgPSBFTkFCTEVfU0FUVVJBVEVEX0xBWU9VVF9BUklUSE1FVElDOwogCi1GRUFUVVJF
X0RFRklORVMgPSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0FDQ0VMRVJBVEVEXzJE
X0NBTlZBUykgJChFTkFCTEVfQUNDRUxFUkFURURfT1ZFUkZMT1dfU0NST0xMSU5HKSAkKEVOQUJM
RV9BVkZfQ0FQVElPTlMpICQoRU5BQkxFX0NBQ0hFX1BBUlRJVElPTklORykgJChFTkFCTEVfQ0FO
VkFTX1BBVEgpICQoRU5BQkxFX0NBTlZBU19QUk9YWSkgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJ
TkcpICQoRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HKSAkKEVOQUJMRV9DU1BfTkVYVCkgJChFTkFC
TEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFLKSAkKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcpICQo
RU5BQkxFX0NTU19ERVZJQ0VfQURBUFRBVElPTikgJChFTkFCTEVfQ1NTX0dSSURfTEFZT1VUKSAk
KEVOQUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVU
SU9OKSAkKEVOQUJMRV9DU1NfUkVHSU9OUykgJChFTkFCTEVfQ1NTX1NFTEVDVE9SU19MRVZFTDQp
ICQoRU5BQkxFX0NTU19TSEFQRVMpICQoRU5BQkxFX0NTUzNfVEVYVCkgJChFTkFCTEVfQ1NTM19U
RVhUX0xJTkVfQlJFQUspICQoRU5BQkxFX0NVUlNPUl9WSVNJQklMSVRZKSAkKEVOQUJMRV9DVVNU
T01fU0NIRU1FX0hBTkRMRVIpICQoRU5BQkxFX0RBU0hCT0FSRF9TVVBQT1JUKSAkKEVOQUJMRV9E
QVRBTElTVF9FTEVNRU5UKSAkKEVOQUJMRV9EQVRBX1RSQU5TRkVSX0lURU1TKSAkKEVOQUJMRV9E
RVRBSUxTX0VMRU1FTlQpICQoRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTikgJChFTkFCTEVfRE9N
NF9FVkVOVFNfQ09OU1RSVUNUT1IpICQoRU5BQkxFX0VOQ1JZUFRFRF9NRURJQSkgJChFTkFCTEVf
RU5DUllQVEVEX01FRElBX1YyKSAkKEVOQUJMRV9GSUxURVJTX0xFVkVMXzIpICQoRU5BQkxFX0ZP
TlRfTE9BRF9FVkVOVFMpICQoRU5BQkxFX0ZVTExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFE
KSAkKEVOQUJMRV9HQU1FUEFEX0RFUFJFQ0FURUQpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVO
QUJMRV9ISURERU5fUEFHRV9ET01fVElNRVJfVEhST1RUTElORykgJChFTkFCTEVfSUNPTkRBVEFC
QVNFKSAkKEVOQUJMRV9TRVJWSUNFX0NPTlRST0xTKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNF
KSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFX0lOX1dPUktFUlMpICQoRU5BQkxFX0lORElFX1VJ
KSAkKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SX1BP
UE9WRVIpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRF
VElNRV9JTkNPTVBMRVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpICQoRU5B
QkxFX0lOUFVUX1RZUEVfTU9OVEgpICQoRU5BQkxFX0lOUFVUX1RZUEVfVElNRSkgJChFTkFCTEVf
SU5QVVRfVFlQRV9XRUVLKSAkKEVOQUJMRV9JTlNQRUNUT1IpICQoRU5BQkxFX0lPU19BSVJQTEFZ
KSAkKEVOQUJMRV9JT1NfR0VTVFVSRV9FVkVOVFMpICQoRU5BQkxFX0lPU19URVhUX0FVVE9TSVpJ
TkcpICQoRU5BQkxFX0lPU19UT1VDSF9FVkVOVFMpICQoRU5BQkxFX0xFR0FDWV9DU1NfVkVORE9S
X1BSRUZJWEVTKSAkKEVOQUJMRV9MRUdBQ1lfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfTEVHQUNZ
X1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX1dFQl9BVURJTykgJChFTkFCTEVfTEVU
VEVSUFJFU1MpICQoRU5BQkxFX0xJTktfUFJFRkVUQ0gpICQoRU5BQkxFX01BVEhNTCkgJChFTkFC
TEVfTUVESUFfQ09OVFJPTFNfU0NSSVBUKSAkKEVOQUJMRV9NRURJQV9TT1VSQ0UpICQoRU5BQkxF
X01FRElBX1NUQVRJU1RJQ1MpICQoRU5BQkxFX01FVEVSX0VMRU1FTlQpICQoRU5BQkxFX01IVE1M
KSAkKEVOQUJMRV9NT1VTRV9DVVJTT1JfU0NBTEUpICQoRU5BQkxFX05BVklHQVRPUl9DT05URU5U
X1VUSUxTKSAkKEVOQUJMRV9OQVZJR0FUT1JfSFdDT05DVVJSRU5DWSkgJChFTkFCTEVfTk9USUZJ
Q0FUSU9OUykgJChFTkFCTEVfUERGS0lUX1BMVUdJTikgJChFTkFCTEVfUE9JTlRFUl9MT0NLKSAk
KEVOQUJMRV9QUk9NSVNFUykgJChFTkFCTEVfUFJPWElNSVRZX0VWRU5UUykgJChFTkFCTEVfUFVC
TElDX1NVRkZJWF9MSVNUKSAkKEVOQUJMRV9RVU9UQSkgJChFTkFCTEVfUkVRVUVTVF9BTklNQVRJ
T05fRlJBTUUpICQoRU5BQkxFX1JFUVVFU1RfQVVUT0NPTVBMRVRFKSAkKEVOQUJMRV9SRU1PVEVf
SU5TUEVDVE9SKSAkKEVOQUJMRV9SRVNPTFVUSU9OX01FRElBX1FVRVJZKSAkKEVOQUJMRV9SVUJC
RVJfQkFORElORykgJChFTkFCTEVfU0hBUkVEX1dPUktFUlMpICQoRU5BQkxFX0NTU19TQ1JPTExf
U05BUCkgJChFTkFCTEVfU1BFRUNIX1NZTlRIRVNJUykgJChFTkFCTEVfU1FMX0RBVEFCQVNFKSAk
KEVOQUJMRV9TVUJUTEVfQ1JZUFRPKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1RFTEVQ
SE9ORV9OVU1CRVJfREVURUNUSU9OKSAkKEVOQUJMRV9URU1QTEFURV9FTEVNRU5UKSAkKEVOQUJM
RV9URVhUX0FVVE9TSVpJTkcpICQoRU5BQkxFX1RPVUNIX0VWRU5UUykgJChFTkFCTEVfVE9VQ0hf
SUNPTl9MT0FESU5HKSAkKEVOQUJMRV9VU0VSU0VMRUNUX0FMTCkgJChFTkFCTEVfVklERU8pICQo
RU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9EQVRBQ1VFX1ZBTFVFKSAkKEVOQUJMRV9WSUVX
X01PREVfQ1NTX01FRElBKSAkKEVOQUJMRV9XRUJHTCkgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVO
QUJMRV9XRUJfUkVQTEFZKSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfUElDVFVSRV9T
SVpFUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV0VCVlRUX1JFR0lPTlMpICQoRU5B
QkxFX1hIUl9USU1FT1VUKSAkKEVOQUJMRV9YU0xUKSAkKEVOQUJMRV9GVExfSklUKSAkKEVOQUJM
RV9MTElOVF9DX0xPT1ApICQoRU5BQkxFX1NBVFVSQVRFRF9MQVlPVVRfQVJJVEhNRVRJQyk7CitF
TkFCTEVfVklERU9fUFJFU0VOVEFUSU9OX01PREVbc2RrPWlwaG9uZSpdID0gRU5BQkxFX1ZJREVP
X1BSRVNFTlRBVElPTl9NT0RFOworCitGRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9SRU5E
RVJJTkcpICQoRU5BQkxFX0FDQ0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFCTEVfQUNDRUxFUkFU
RURfT1ZFUkZMT1dfU0NST0xMSU5HKSAkKEVOQUJMRV9BVkZfQ0FQVElPTlMpICQoRU5BQkxFX0NB
Q0hFX1BBUlRJVElPTklORykgJChFTkFCTEVfQ0FOVkFTX1BBVEgpICQoRU5BQkxFX0NBTlZBU19Q
Uk9YWSkgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxFX0NPTlRFTlRfRklMVEVS
SU5HKSAkKEVOQUJMRV9DU1BfTkVYVCkgJChFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFL
KSAkKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcpICQoRU5BQkxFX0NTU19ERVZJQ0VfQURBUFRBVElP
TikgJChFTkFCTEVfQ1NTX0dSSURfTEFZT1VUKSAkKEVOQUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJ
T04pICQoRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVUSU9OKSAkKEVOQUJMRV9DU1NfUkVHSU9OUykg
JChFTkFCTEVfQ1NTX1NFTEVDVE9SU19MRVZFTDQpICQoRU5BQkxFX0NTU19TSEFQRVMpICQoRU5B
QkxFX0NTUzNfVEVYVCkgJChFTkFCTEVfQ1NTM19URVhUX0xJTkVfQlJFQUspICQoRU5BQkxFX0NV
UlNPUl9WSVNJQklMSVRZKSAkKEVOQUJMRV9DVVNUT01fU0NIRU1FX0hBTkRMRVIpICQoRU5BQkxF
X0RBU0hCT0FSRF9TVVBQT1JUKSAkKEVOQUJMRV9EQVRBTElTVF9FTEVNRU5UKSAkKEVOQUJMRV9E
QVRBX1RSQU5TRkVSX0lURU1TKSAkKEVOQUJMRV9ERVRBSUxTX0VMRU1FTlQpICQoRU5BQkxFX0RF
VklDRV9PUklFTlRBVElPTikgJChFTkFCTEVfRE9NNF9FVkVOVFNfQ09OU1RSVUNUT1IpICQoRU5B
QkxFX0VOQ1JZUFRFRF9NRURJQSkgJChFTkFCTEVfRU5DUllQVEVEX01FRElBX1YyKSAkKEVOQUJM
RV9GSUxURVJTX0xFVkVMXzIpICQoRU5BQkxFX0ZPTlRfTE9BRF9FVkVOVFMpICQoRU5BQkxFX0ZV
TExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HQU1FUEFEX0RFUFJFQ0FU
RUQpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9ISURERU5fUEFHRV9ET01fVElNRVJf
VEhST1RUTElORykgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9TRVJWSUNFX0NPTlRS
T0xTKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNF
X0lOX1dPUktFUlMpICQoRU5BQkxFX0lORElFX1VJKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9S
KSAkKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SX1BPUE9WRVIpICQoRU5BQkxFX0lOUFVUX1RZUEVf
REFURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRV9JTkNPTVBMRVRFKSAkKEVOQUJMRV9J
TlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpICQoRU5BQkxFX0lOUFVUX1RZUEVfTU9OVEgpICQoRU5B
QkxFX0lOUFVUX1RZUEVfVElNRSkgJChFTkFCTEVfSU5QVVRfVFlQRV9XRUVLKSAkKEVOQUJMRV9J
TlNQRUNUT1IpICQoRU5BQkxFX0lPU19BSVJQTEFZKSAkKEVOQUJMRV9JT1NfR0VTVFVSRV9FVkVO
VFMpICQoRU5BQkxFX0lPU19URVhUX0FVVE9TSVpJTkcpICQoRU5BQkxFX0lPU19UT1VDSF9FVkVO
VFMpICQoRU5BQkxFX0xFR0FDWV9DU1NfVkVORE9SX1BSRUZJWEVTKSAkKEVOQUJMRV9MRUdBQ1lf
Tk9USUZJQ0FUSU9OUykgJChFTkFCTEVfTEVHQUNZX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVf
TEVHQUNZX1dFQl9BVURJTykgJChFTkFCTEVfTEVUVEVSUFJFU1MpICQoRU5BQkxFX0xJTktfUFJF
RkVUQ0gpICQoRU5BQkxFX01BVEhNTCkgJChFTkFCTEVfTUVESUFfQ09OVFJPTFNfU0NSSVBUKSAk
KEVOQUJMRV9NRURJQV9TT1VSQ0UpICQoRU5BQkxFX01FRElBX1NUQVRJU1RJQ1MpICQoRU5BQkxF
X01FVEVSX0VMRU1FTlQpICQoRU5BQkxFX01IVE1MKSAkKEVOQUJMRV9NT1VTRV9DVVJTT1JfU0NB
TEUpICQoRU5BQkxFX05BVklHQVRPUl9DT05URU5UX1VUSUxTKSAkKEVOQUJMRV9OQVZJR0FUT1Jf
SFdDT05DVVJSRU5DWSkgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfUERGS0lUX1BM
VUdJTikgJChFTkFCTEVfUE9JTlRFUl9MT0NLKSAkKEVOQUJMRV9QUk9NSVNFUykgJChFTkFCTEVf
UFJPWElNSVRZX0VWRU5UUykgJChFTkFCTEVfUFVCTElDX1NVRkZJWF9MSVNUKSAkKEVOQUJMRV9R
VU9UQSkgJChFTkFCTEVfUkVRVUVTVF9BTklNQVRJT05fRlJBTUUpICQoRU5BQkxFX1JFUVVFU1Rf
QVVUT0NPTVBMRVRFKSAkKEVOQUJMRV9SRU1PVEVfSU5TUEVDVE9SKSAkKEVOQUJMRV9SRVNPTFVU
SU9OX01FRElBX1FVRVJZKSAkKEVOQUJMRV9SVUJCRVJfQkFORElORykgJChFTkFCTEVfU0hBUkVE
X1dPUktFUlMpICQoRU5BQkxFX0NTU19TQ1JPTExfU05BUCkgJChFTkFCTEVfU1BFRUNIX1NZTlRI
RVNJUykgJChFTkFCTEVfU1FMX0RBVEFCQVNFKSAkKEVOQUJMRV9TVUJUTEVfQ1JZUFRPKSAkKEVO
QUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1RFTEVQSE9ORV9OVU1CRVJfREVURUNUSU9OKSAkKEVO
QUJMRV9URU1QTEFURV9FTEVNRU5UKSAkKEVOQUJMRV9URVhUX0FVVE9TSVpJTkcpICQoRU5BQkxF
X1RPVUNIX0VWRU5UUykgJChFTkFCTEVfVE9VQ0hfSUNPTl9MT0FESU5HKSAkKEVOQUJMRV9VU0VS
U0VMRUNUX0FMTCkgJChFTkFCTEVfVklERU8pICQoRU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVOQUJM
RV9EQVRBQ1VFX1ZBTFVFKSAkKEVOQUJMRV9WSUVXX01PREVfQ1NTX01FRElBKSAkKEVOQUJMRV9X
RUJHTCkgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAkKEVOQUJMRV9X
RUJfU09DS0VUUykgJChFTkFCTEVfUElDVFVSRV9TSVpFUykgJChFTkFCTEVfV0VCX1RJTUlORykg
JChFTkFCTEVfV0VCVlRUX1JFR0lPTlMpICQoRU5BQkxFX1hIUl9USU1FT1VUKSAkKEVOQUJMRV9Y
U0xUKSAkKEVOQUJMRV9GVExfSklUKSAkKEVOQUJMRV9MTElOVF9DX0xPT1ApICQoRU5BQkxFX1NB
VFVSQVRFRF9MQVlPVVRfQVJJVEhNRVRJQykgJChFTkFCTEVfVklERU9fUFJFU0VOVEFUSU9OX01P
REUpOwpJbmRleDogU291cmNlL1dURi9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dU
Ri9DaGFuZ2VMb2cJKHJldmlzaW9uIDE3NzU5MikKKysrIFNvdXJjZS9XVEYvQ2hhbmdlTG9nCSh3
b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTIgQEAKKzIwMTQtMTItMTkgIEVyaWMgQ2FybHNvbiAg
PGVyaWMuY2FybHNvbkBhcHBsZS5jb20+CisKKyAgICAgICAgW2lPU10gYWRkIG9wdGltaXplZCBm
dWxsc2NyZWVuIEFQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTM5ODMzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiB3dGYvUGxhdGZvcm0uaDogRGVmaW5lIEVOQUJMRV9WSURFT19QUkVTRU5UQVRJT05f
TU9ERS4KKwogMjAxNC0xMi0xOCAgR3l1eW91bmcgS2ltICA8Z3l1eW91bmcua2ltQHNhbXN1bmcu
Y29tPgogCiAgICAgICAgIEZpeCBidWlsZCBicmVhayBvbiBFRkwgYW5kIEdUSyBzaW5jZSByMTc3
NTIzCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybS5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XVEYvd3RmL1BsYXRmb3JtLmgJKHJldmlzaW9uIDE3NzI3OSkKKysrIFNvdXJjZS9XVEYvd3Rm
L1BsYXRmb3JtLmgJKHdvcmtpbmcgY29weSkKQEAgLTEwOTgsNCArMTA5OCw4IEBACiAjZGVmaW5l
IFdURl9VU0VfTUVESUFUT09MQk9YIDEKICNlbmRpZgogCisjaWYgUExBVEZPUk0oSU9TKSAmJiBf
X0lQSE9ORV9PU19WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSA5MDAwMAorI2RlZmluZSBFTkFCTEVf
VklERU9fUFJFU0VOVEFUSU9OX01PREUgMQorI2VuZGlmCisKICNlbmRpZiAvKiBXVEZfUGxhdGZv
cm1faCAqLwpJbmRleDogU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTc3NTkyKQorKysgU291cmNlL1dlYkNv
cmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsNTkgQEAKKzIwMTQtMTItMTkg
IEVyaWMgQ2FybHNvbiAgPGVyaWMuY2FybHNvbkBhcHBsZS5jb20+CisKKyAgICAgICAgW2lPU10g
YWRkIG9wdGltaXplZCBmdWxsc2NyZWVuIEFQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM5ODMzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzIChPT1BTISkuCisKKyAgICAgICAgKiBD
b25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZzogQWRkIEVOQUJMRV9WSURFT19Q
UkVTRU5UQVRJT05fTU9ERS4KKworICAgICAgICAqIE1vZHVsZXMvbWVkaWFjb250cm9scy9NZWRp
YUNvbnRyb2xzSG9zdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xzSG9zdDo6
b3B0aW1pemVkRnVsbHNjcmVlblN1cHBvcnRlZCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3Jl
OjpNZWRpYUNvbnRyb2xzSG9zdDo6ZnVsbHNjcmVlbk1vZGUpOiBEZWxldGVkLgorICAgICAgICAq
IE1vZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5oOgorICAgICAgICAqIE1v
ZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5pZGw6CisKKyAgICAgICAgKiBN
b2R1bGVzL21lZGlhY29udHJvbHMvbWVkaWFDb250cm9sc2lPUy5qczoKKyAgICAgICAgKENvbnRy
b2xsZXJJT1MucHJvdG90eXBlLmFkZFZpZGVvTGlzdGVuZXJzKTogTGlzdGVuIGZvciAnd2Via2l0
cHJlc2VudGF0aW9ubW9kZWNoYW5nZWQnLgorICAgICAgICAoQ29udHJvbGxlcklPUy5wcm90b3R5
cGUucmVtb3ZlVmlkZW9MaXN0ZW5lcnMpOiBTdG9wIGxpc3RlbmluZyBmb3IgJ3dlYmtpdHByZXNl
bnRhdGlvbm1vZGVjaGFuZ2VkJy4KKyAgICAgICAgKENvbnRyb2xsZXJJT1MucHJvdG90eXBlLmNv
bmZpZ3VyZUlubGluZUNvbnRyb2xzKTogQ2FsbCB2aWRlbyBlbGVtZW50IGluc3RlYWQgb2YgdXNp
bmcgdGhlIG5vdyAKKyAgICAgICAgICAgIHJlbW92ZWQgaG9zdCBwcm9wZXJ0eS4KKyAgICAgICAg
KENvbnRyb2xsZXJJT1MucHJvdG90eXBlLnVwZGF0ZUNvbnRyb2xzKTogRGl0dG8uCisgICAgICAg
IChDb250cm9sbGVySU9TLnByb3RvdHlwZS5wcmVzZW50YXRpb25Nb2RlKTogTmV3LCByZXR1cm4g
d2Via2l0UHJlc2VudGF0aW9uTW9kZSB3aGVuIHBvc3NpYmxlLgorICAgICAgICAoQ29udHJvbGxl
cklPUy5wcm90b3R5cGUuaGFuZGxlRnVsbHNjcmVlbkJ1dHRvbkNsaWNrZWQpOiBVc2Ugd2Via2l0
U2V0UHJlc2VudGF0aW9uTW9kZSB3aGVuIHBvc3NpYmxlLgorICAgICAgICAoQ29udHJvbGxlcklP
Uy5wcm90b3R5cGUuaGFuZGxlT3B0aW1pemVkRnVsbHNjcmVlbkJ1dHRvbkNsaWNrZWQpOiBVc2Ug
dmlkZW8gZWxlbWVudCBpbnN0ZWFkIG9mIAorICAgICAgICAgICAgdXNpbmcgdGhlIG5vdyByZW1v
dmVkIGhvc3QgbWV0aG9kLgorICAgICAgICAoQ29udHJvbGxlcklPUy5wcm90b3R5cGUuaGFuZGxl
UHJlc2VudGF0aW9uTW9kZUNoYW5nZSk6IE5ldywgcmVhY3QgdG8gcHJlc2VudGF0aW9uIG1vZGUg
Y2hhbmdlcy4KKyAgICAgICAgKENvbnRyb2xsZXJJT1MucHJvdG90eXBlLmhhbmRsZUZ1bGxzY3Jl
ZW5DaGFuZ2UpOiBDYWxsIGhhbmRsZVByZXNlbnRhdGlvbk1vZGVDaGFuZ2UuCisKKyAgICAgICAg
KiBkb20vRXZlbnROYW1lcy5oOiBBZGQgd2Via2l0cHJlc2VudGF0aW9ubW9kZWNoYW5nZWQuCisK
KyAgICAgICAgKiBodG1sL0hUTUxBdHRyaWJ1dGVOYW1lcy5pbjogQWRkIG9ud2Via2l0cHJlc2Vu
dGF0aW9ubW9kZWNoYW5nZWQuCisKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6ZW50ZXJGdWxsc2NyZWVuKTog
RWFybHkgcmV0dXJuIHdoZW4gYXNrZWQgdG8gY2hhbmdlIHRvIHRoZSBjdXJyZW50IAorICAgICAg
ICAgICAgbW9kZS4gQ2FsbCBmdWxsc2NyZWVuTW9kZUNoYW5nZWQoKSBpbnN0ZWFkIG9mIHdoYWNr
aW5nIHRoZSBpbnN0YW5jZSB2YXJpYWJsZSBkaXJlY3RseS4KKyAgICAgICAgKFdlYkNvcmU6OkhU
TUxNZWRpYUVsZW1lbnQ6OmV4aXRGdWxsc2NyZWVuKTogRGl0dG8uCisgICAgICAgICogaHRtbC9I
VE1MTWVkaWFFbGVtZW50Lmg6CisgICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50Ojpm
dWxsc2NyZWVuTW9kZUNoYW5nZWQpOiBNYWtlIHZpcnR1YWwuCisKKyAgICAgICAgKiBodG1sL0hU
TUxWaWRlb0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudDo6
cGFyc2VBdHRyaWJ1dGUpOiBEZWFsIHdpdGggb253ZWJraXRwcmVzZW50YXRpb25tb2RlY2hhbmdl
LgorICAgICAgICAoV2ViQ29yZTo6cHJlc2VudGF0aW9uTW9kZUZ1bGxzY3JlZW4pOiBOZXcuCisg
ICAgICAgIChXZWJDb3JlOjpwcmVzZW50YXRpb25Nb2RlT3B0aW1pemVkKTogRGl0dG8uCisgICAg
ICAgIChXZWJDb3JlOjpwcmVzZW50YXRpb25Nb2RlSW5saW5lKTogRGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50Ojp3ZWJraXRTdXBwb3J0c1ByZXNlbnRhdGlvbk1vZGUp
OiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQ6OndlYmtpdFNldFBy
ZXNlbnRhdGlvbk1vZGUpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1l
bnQ6OndlYmtpdFByZXNlbnRhdGlvbk1vZGUpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkhU
TUxWaWRlb0VsZW1lbnQ6OmZ1bGxzY3JlZW5Nb2RlQ2hhbmdlZCk6IERpdHRvLgorICAgICAgICAq
IGh0bWwvSFRNTFZpZGVvRWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvSFRNTFZpZGVvRWxlbWVu
dC5pZGw6CisKKyAgICAgICAgKiBwbGF0Zm9ybS9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuSW50ZXJm
YWNlQVZLaXQubW06CisgICAgICAgIChXZWJWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdDo6
c2V0SXNPcHRpbWl6ZWQpOiBTaW1wbGlmeSB0aGUgbG9naWMgYSBiaXQuIAorCiAyMDE0LTEyLTE5
ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgW2lPU10gTG9nIGhv
dyBvZnRlbiBtZWRpYSBlbGVtZW50IHBsYXliYWNrIGhhcHBlbnMgdXNpbmcgRmVhdHVyZUNvdW50
ZXIKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhj
Y29uZmlnCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1
cmVEZWZpbmVzLnhjY29uZmlnCShyZXZpc2lvbiAxNzcyNzkpCisrKyBTb3VyY2UvV2ViQ29yZS9D
b25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwkod29ya2luZyBjb3B5KQpAQCAt
MjI2LDQgKzIyNiw2IEBAIEVOQUJMRV9MTElOVF9DX0xPT1AgPSA7CiAKIEVOQUJMRV9TQVRVUkFU
RURfTEFZT1VUX0FSSVRITUVUSUMgPSBFTkFCTEVfU0FUVVJBVEVEX0xBWU9VVF9BUklUSE1FVElD
OwogCi1GRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0FD
Q0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFCTEVfQUNDRUxFUkFURURfT1ZFUkZMT1dfU0NST0xM
SU5HKSAkKEVOQUJMRV9BVkZfQ0FQVElPTlMpICQoRU5BQkxFX0NBQ0hFX1BBUlRJVElPTklORykg
JChFTkFCTEVfQ0FOVkFTX1BBVEgpICQoRU5BQkxFX0NBTlZBU19QUk9YWSkgJChFTkFCTEVfQ0hB
Tk5FTF9NRVNTQUdJTkcpICQoRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HKSAkKEVOQUJMRV9DU1Bf
TkVYVCkgJChFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFLKSAkKEVOQUJMRV9DU1NfQ09N
UE9TSVRJTkcpICQoRU5BQkxFX0NTU19ERVZJQ0VfQURBUFRBVElPTikgJChFTkFCTEVfQ1NTX0dS
SURfTEFZT1VUKSAkKEVOQUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0NTU19J
TUFHRV9SRVNPTFVUSU9OKSAkKEVOQUJMRV9DU1NfUkVHSU9OUykgJChFTkFCTEVfQ1NTX1NFTEVD
VE9SU19MRVZFTDQpICQoRU5BQkxFX0NTU19TSEFQRVMpICQoRU5BQkxFX0NTUzNfVEVYVCkgJChF
TkFCTEVfQ1NTM19URVhUX0xJTkVfQlJFQUspICQoRU5BQkxFX0NVUlNPUl9WSVNJQklMSVRZKSAk
KEVOQUJMRV9DVVNUT01fU0NIRU1FX0hBTkRMRVIpICQoRU5BQkxFX0RBU0hCT0FSRF9TVVBQT1JU
KSAkKEVOQUJMRV9EQVRBTElTVF9FTEVNRU5UKSAkKEVOQUJMRV9EQVRBX1RSQU5TRkVSX0lURU1T
KSAkKEVOQUJMRV9ERVRBSUxTX0VMRU1FTlQpICQoRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTikg
JChFTkFCTEVfRE9NNF9FVkVOVFNfQ09OU1RSVUNUT1IpICQoRU5BQkxFX0VOQ1JZUFRFRF9NRURJ
QSkgJChFTkFCTEVfRU5DUllQVEVEX01FRElBX1YyKSAkKEVOQUJMRV9GSUxURVJTX0xFVkVMXzIp
ICQoRU5BQkxFX0ZPTlRfTE9BRF9FVkVOVFMpICQoRU5BQkxFX0ZVTExTQ1JFRU5fQVBJKSAkKEVO
QUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HQU1FUEFEX0RFUFJFQ0FURUQpICQoRU5BQkxFX0dFT0xP
Q0FUSU9OKSAkKEVOQUJMRV9ISURERU5fUEFHRV9ET01fVElNRVJfVEhST1RUTElORykgJChFTkFC
TEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9TRVJWSUNFX0NPTlRST0xTKSAkKEVOQUJMRV9JTkRF
WEVEX0RBVEFCQVNFKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFX0lOX1dPUktFUlMpICQoRU5B
QkxFX0lORElFX1VJKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SKSAkKEVOQUJMRV9JTlBVVF9U
WVBFX0NPTE9SX1BPUE9WRVIpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURSkgJChFTkFCTEVfSU5Q
VVRfVFlQRV9EQVRFVElNRV9JTkNPTVBMRVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1F
TE9DQUwpICQoRU5BQkxFX0lOUFVUX1RZUEVfTU9OVEgpICQoRU5BQkxFX0lOUFVUX1RZUEVfVElN
RSkgJChFTkFCTEVfSU5QVVRfVFlQRV9XRUVLKSAkKEVOQUJMRV9JTlNQRUNUT1IpICQoRU5BQkxF
X0lPU19BSVJQTEFZKSAkKEVOQUJMRV9JT1NfR0VTVFVSRV9FVkVOVFMpICQoRU5BQkxFX0lPU19U
RVhUX0FVVE9TSVpJTkcpICQoRU5BQkxFX0lPU19UT1VDSF9FVkVOVFMpICQoRU5BQkxFX0xFR0FD
WV9DU1NfVkVORE9SX1BSRUZJWEVTKSAkKEVOQUJMRV9MRUdBQ1lfTk9USUZJQ0FUSU9OUykgJChF
TkFCTEVfTEVHQUNZX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX1dFQl9BVURJTykg
JChFTkFCTEVfTEVUVEVSUFJFU1MpICQoRU5BQkxFX0xJTktfUFJFRkVUQ0gpICQoRU5BQkxFX01B
VEhNTCkgJChFTkFCTEVfTUVESUFfQ09OVFJPTFNfU0NSSVBUKSAkKEVOQUJMRV9NRURJQV9TT1VS
Q0UpICQoRU5BQkxFX01FRElBX1NUQVRJU1RJQ1MpICQoRU5BQkxFX01FVEVSX0VMRU1FTlQpICQo
RU5BQkxFX01IVE1MKSAkKEVOQUJMRV9NT1VTRV9DVVJTT1JfU0NBTEUpICQoRU5BQkxFX05BVklH
QVRPUl9DT05URU5UX1VUSUxTKSAkKEVOQUJMRV9OQVZJR0FUT1JfSFdDT05DVVJSRU5DWSkgJChF
TkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfUERGS0lUX1BMVUdJTikgJChFTkFCTEVfUE9J
TlRFUl9MT0NLKSAkKEVOQUJMRV9QUk9NSVNFUykgJChFTkFCTEVfUFJPWElNSVRZX0VWRU5UUykg
JChFTkFCTEVfUFVCTElDX1NVRkZJWF9MSVNUKSAkKEVOQUJMRV9RVU9UQSkgJChFTkFCTEVfUkVR
VUVTVF9BTklNQVRJT05fRlJBTUUpICQoRU5BQkxFX1JFUVVFU1RfQVVUT0NPTVBMRVRFKSAkKEVO
QUJMRV9SRU1PVEVfSU5TUEVDVE9SKSAkKEVOQUJMRV9SRVNPTFVUSU9OX01FRElBX1FVRVJZKSAk
KEVOQUJMRV9SVUJCRVJfQkFORElORykgJChFTkFCTEVfU0hBUkVEX1dPUktFUlMpICQoRU5BQkxF
X0NTU19TQ1JPTExfU05BUCkgJChFTkFCTEVfU1BFRUNIX1NZTlRIRVNJUykgJChFTkFCTEVfU1FM
X0RBVEFCQVNFKSAkKEVOQUJMRV9TVUJUTEVfQ1JZUFRPKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQo
RU5BQkxFX1RFTEVQSE9ORV9OVU1CRVJfREVURUNUSU9OKSAkKEVOQUJMRV9URU1QTEFURV9FTEVN
RU5UKSAkKEVOQUJMRV9URVhUX0FVVE9TSVpJTkcpICQoRU5BQkxFX1RPVUNIX0VWRU5UUykgJChF
TkFCTEVfVE9VQ0hfSUNPTl9MT0FESU5HKSAkKEVOQUJMRV9VU0VSU0VMRUNUX0FMTCkgJChFTkFC
TEVfVklERU8pICQoRU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9EQVRBQ1VFX1ZBTFVFKSAk
KEVOQUJMRV9WSUVXX01PREVfQ1NTX01FRElBKSAkKEVOQUJMRV9XRUJHTCkgJChFTkFCTEVfV0VC
X0FVRElPKSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFC
TEVfUElDVFVSRV9TSVpFUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV0VCVlRUX1JF
R0lPTlMpICQoRU5BQkxFX1hIUl9USU1FT1VUKSAkKEVOQUJMRV9YU0xUKSAkKEVOQUJMRV9GVExf
SklUKSAkKEVOQUJMRV9MTElOVF9DX0xPT1ApICQoRU5BQkxFX1NBVFVSQVRFRF9MQVlPVVRfQVJJ
VEhNRVRJQyk7CitFTkFCTEVfVklERU9fUFJFU0VOVEFUSU9OX01PREVbc2RrPWlwaG9uZSpdID0g
RU5BQkxFX1ZJREVPX1BSRVNFTlRBVElPTl9NT0RFOworCitGRUFUVVJFX0RFRklORVMgPSAkKEVO
QUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0FDQ0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFC
TEVfQUNDRUxFUkFURURfT1ZFUkZMT1dfU0NST0xMSU5HKSAkKEVOQUJMRV9BVkZfQ0FQVElPTlMp
ICQoRU5BQkxFX0NBQ0hFX1BBUlRJVElPTklORykgJChFTkFCTEVfQ0FOVkFTX1BBVEgpICQoRU5B
QkxFX0NBTlZBU19QUk9YWSkgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxFX0NP
TlRFTlRfRklMVEVSSU5HKSAkKEVOQUJMRV9DU1BfTkVYVCkgJChFTkFCTEVfQ1NTX0JPWF9ERUNP
UkFUSU9OX0JSRUFLKSAkKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcpICQoRU5BQkxFX0NTU19ERVZJ
Q0VfQURBUFRBVElPTikgJChFTkFCTEVfQ1NTX0dSSURfTEFZT1VUKSAkKEVOQUJMRV9DU1NfSU1B
R0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVUSU9OKSAkKEVOQUJMRV9D
U1NfUkVHSU9OUykgJChFTkFCTEVfQ1NTX1NFTEVDVE9SU19MRVZFTDQpICQoRU5BQkxFX0NTU19T
SEFQRVMpICQoRU5BQkxFX0NTUzNfVEVYVCkgJChFTkFCTEVfQ1NTM19URVhUX0xJTkVfQlJFQUsp
ICQoRU5BQkxFX0NVUlNPUl9WSVNJQklMSVRZKSAkKEVOQUJMRV9DVVNUT01fU0NIRU1FX0hBTkRM
RVIpICQoRU5BQkxFX0RBU0hCT0FSRF9TVVBQT1JUKSAkKEVOQUJMRV9EQVRBTElTVF9FTEVNRU5U
KSAkKEVOQUJMRV9EQVRBX1RSQU5TRkVSX0lURU1TKSAkKEVOQUJMRV9ERVRBSUxTX0VMRU1FTlQp
ICQoRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTikgJChFTkFCTEVfRE9NNF9FVkVOVFNfQ09OU1RS
VUNUT1IpICQoRU5BQkxFX0VOQ1JZUFRFRF9NRURJQSkgJChFTkFCTEVfRU5DUllQVEVEX01FRElB
X1YyKSAkKEVOQUJMRV9GSUxURVJTX0xFVkVMXzIpICQoRU5BQkxFX0ZPTlRfTE9BRF9FVkVOVFMp
ICQoRU5BQkxFX0ZVTExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HQU1F
UEFEX0RFUFJFQ0FURUQpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9ISURERU5fUEFH
RV9ET01fVElNRVJfVEhST1RUTElORykgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9T
RVJWSUNFX0NPTlRST0xTKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKSAkKEVOQUJMRV9JTkRF
WEVEX0RBVEFCQVNFX0lOX1dPUktFUlMpICQoRU5BQkxFX0lORElFX1VJKSAkKEVOQUJMRV9JTlBV
VF9UWVBFX0NPTE9SKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SX1BPUE9WRVIpICQoRU5BQkxF
X0lOUFVUX1RZUEVfREFURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRV9JTkNPTVBMRVRF
KSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpICQoRU5BQkxFX0lOUFVUX1RZUEVf
TU9OVEgpICQoRU5BQkxFX0lOUFVUX1RZUEVfVElNRSkgJChFTkFCTEVfSU5QVVRfVFlQRV9XRUVL
KSAkKEVOQUJMRV9JTlNQRUNUT1IpICQoRU5BQkxFX0lPU19BSVJQTEFZKSAkKEVOQUJMRV9JT1Nf
R0VTVFVSRV9FVkVOVFMpICQoRU5BQkxFX0lPU19URVhUX0FVVE9TSVpJTkcpICQoRU5BQkxFX0lP
U19UT1VDSF9FVkVOVFMpICQoRU5BQkxFX0xFR0FDWV9DU1NfVkVORE9SX1BSRUZJWEVTKSAkKEVO
QUJMRV9MRUdBQ1lfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfTEVHQUNZX1ZFTkRPUl9QUkVGSVhF
UykgJChFTkFCTEVfTEVHQUNZX1dFQl9BVURJTykgJChFTkFCTEVfTEVUVEVSUFJFU1MpICQoRU5B
QkxFX0xJTktfUFJFRkVUQ0gpICQoRU5BQkxFX01BVEhNTCkgJChFTkFCTEVfTUVESUFfQ09OVFJP
TFNfU0NSSVBUKSAkKEVOQUJMRV9NRURJQV9TT1VSQ0UpICQoRU5BQkxFX01FRElBX1NUQVRJU1RJ
Q1MpICQoRU5BQkxFX01FVEVSX0VMRU1FTlQpICQoRU5BQkxFX01IVE1MKSAkKEVOQUJMRV9NT1VT
RV9DVVJTT1JfU0NBTEUpICQoRU5BQkxFX05BVklHQVRPUl9DT05URU5UX1VUSUxTKSAkKEVOQUJM
RV9OQVZJR0FUT1JfSFdDT05DVVJSRU5DWSkgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFC
TEVfUERGS0lUX1BMVUdJTikgJChFTkFCTEVfUE9JTlRFUl9MT0NLKSAkKEVOQUJMRV9QUk9NSVNF
UykgJChFTkFCTEVfUFJPWElNSVRZX0VWRU5UUykgJChFTkFCTEVfUFVCTElDX1NVRkZJWF9MSVNU
KSAkKEVOQUJMRV9RVU9UQSkgJChFTkFCTEVfUkVRVUVTVF9BTklNQVRJT05fRlJBTUUpICQoRU5B
QkxFX1JFUVVFU1RfQVVUT0NPTVBMRVRFKSAkKEVOQUJMRV9SRU1PVEVfSU5TUEVDVE9SKSAkKEVO
QUJMRV9SRVNPTFVUSU9OX01FRElBX1FVRVJZKSAkKEVOQUJMRV9SVUJCRVJfQkFORElORykgJChF
TkFCTEVfU0hBUkVEX1dPUktFUlMpICQoRU5BQkxFX0NTU19TQ1JPTExfU05BUCkgJChFTkFCTEVf
U1BFRUNIX1NZTlRIRVNJUykgJChFTkFCTEVfU1FMX0RBVEFCQVNFKSAkKEVOQUJMRV9TVUJUTEVf
Q1JZUFRPKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1RFTEVQSE9ORV9OVU1CRVJfREVU
RUNUSU9OKSAkKEVOQUJMRV9URU1QTEFURV9FTEVNRU5UKSAkKEVOQUJMRV9URVhUX0FVVE9TSVpJ
TkcpICQoRU5BQkxFX1RPVUNIX0VWRU5UUykgJChFTkFCTEVfVE9VQ0hfSUNPTl9MT0FESU5HKSAk
KEVOQUJMRV9VU0VSU0VMRUNUX0FMTCkgJChFTkFCTEVfVklERU8pICQoRU5BQkxFX1ZJREVPX1RS
QUNLKSAkKEVOQUJMRV9EQVRBQ1VFX1ZBTFVFKSAkKEVOQUJMRV9WSUVXX01PREVfQ1NTX01FRElB
KSAkKEVOQUJMRV9XRUJHTCkgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfUkVQTEFZ
KSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfUElDVFVSRV9TSVpFUykgJChFTkFCTEVf
V0VCX1RJTUlORykgJChFTkFCTEVfV0VCVlRUX1JFR0lPTlMpICQoRU5BQkxFX1hIUl9USU1FT1VU
KSAkKEVOQUJMRV9YU0xUKSAkKEVOQUJMRV9GVExfSklUKSAkKEVOQUJMRV9MTElOVF9DX0xPT1Ap
ICQoRU5BQkxFX1NBVFVSQVRFRF9MQVlPVVRfQVJJVEhNRVRJQykgJChFTkFCTEVfVklERU9fUFJF
U0VOVEFUSU9OX01PREUpOwpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRy
b2xzL01lZGlhQ29udHJvbHNIb3N0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250cm9sc0hvc3QuY3BwCShyZXZpc2lvbiAxNzcy
NzkpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250cm9s
c0hvc3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xOTUsMTYgKzE5NSw2IEBAIHZvaWQgTWVkaWFD
b250cm9sc0hvc3Q6OmVudGVyRnVsbHNjcmVlbk8KICNlbmRpZgogfQogICAgIAotYm9vbCBNZWRp
YUNvbnRyb2xzSG9zdDo6b3B0aW1pemVkRnVsbHNjcmVlblN1cHBvcnRlZCgpCi17Ci0jaWYgUExB
VEZPUk0oSU9TKQotICAgIGlmICghd2tJc09wdGltaXplZEZ1bGxzY3JlZW5TdXBwb3J0ZWQoKSkK
LSAgICAgICAgcmV0dXJuIGZhbHNlOwotI2VuZGlmCi0KLSAgICByZXR1cm4gbV9tZWRpYUVsZW1l
bnQtPm1lZGlhU2Vzc2lvbigpLmFsbG93c0FsdGVybmF0ZUZ1bGxzY3JlZW4oKm1fbWVkaWFFbGVt
ZW50KTsKLX0KLQogdm9pZCBNZWRpYUNvbnRyb2xzSG9zdDo6dXBkYXRlQ2FwdGlvbkRpc3BsYXlT
aXplcygpCiB7CiAgICAgaWYgKG1fdGV4dFRyYWNrQ29udGFpbmVyKQpAQCAtMjg3LDI1ICsyNzcs
NiBAQCB2b2lkIE1lZGlhQ29udHJvbHNIb3N0OjpzZXRDb250cm9sc0RlcGVuCiAgICAgbV9tZWRp
YUVsZW1lbnQtPnNldE1lZGlhQ29udHJvbHNEZXBlbmRPblBhZ2VTY2FsZUZhY3Rvcih2YWx1ZSk7
CiB9CiAKLVN0cmluZyBNZWRpYUNvbnRyb2xzSG9zdDo6ZnVsbHNjcmVlbk1vZGUoKSBjb25zdAot
ewotICAgIERFUFJFQ0FURURfREVGSU5FX1NUQVRJQ19MT0NBTChTdHJpbmcsIG5vbmUsIChBU0NJ
SUxpdGVyYWwoIm5vbmUiKSkpOwotICAgIERFUFJFQ0FURURfREVGSU5FX1NUQVRJQ19MT0NBTChT
dHJpbmcsIHN0YW5kYXJkLCAoQVNDSUlMaXRlcmFsKCJzdGFuZGFyZCIpKSk7Ci0gICAgREVQUkVD
QVRFRF9ERUZJTkVfU1RBVElDX0xPQ0FMKFN0cmluZywgb3B0aW1pemVkLCAoQVNDSUlMaXRlcmFs
KCJvcHRpbWl6ZWQiKSkpOwotICAgIFN0cmluZyBtb2RlID0gbm9uZTsKLQotICAgIGlmIChtX21l
ZGlhRWxlbWVudC0+ZnVsbHNjcmVlbk1vZGUoKSA9PSBIVE1MTWVkaWFFbGVtZW50OjpWaWRlb0Z1
bGxzY3JlZW5Nb2RlTm9uZSkKLSAgICAgICAgbW9kZSA9IG5vbmU7Ci0gICAgZWxzZSBpZiAobV9t
ZWRpYUVsZW1lbnQtPmZ1bGxzY3JlZW5Nb2RlKCkgPT0gSFRNTE1lZGlhRWxlbWVudDo6VmlkZW9G
dWxsc2NyZWVuTW9kZVN0YW5kYXJkKQotICAgICAgICBtb2RlID0gc3RhbmRhcmQ7Ci0gICAgZWxz
ZSBpZiAobV9tZWRpYUVsZW1lbnQtPmZ1bGxzY3JlZW5Nb2RlKCkgJiBIVE1MTWVkaWFFbGVtZW50
OjpWaWRlb0Z1bGxzY3JlZW5Nb2RlT3B0aW1pemVkKQotICAgICAgICBtb2RlID0gb3B0aW1pemVk
OwotICAgIAotICAgIExPRyhNZWRpYSwgIk1lZGlhQ29udHJvbHNIb3N0OjpmdWxsc2NyZWVuTW9k
ZSAtIHJldHVybmluZyBcIiVzXCIiLCBtb2RlLnV0ZjgoKS5kYXRhKCkpOwotCi0gICAgcmV0dXJu
IG1vZGU7Ci19Ci0KIFN0cmluZyBNZWRpYUNvbnRyb2xzSG9zdDo6bWVkaWFVSUltYWdlRGF0YShj
b25zdCBTdHJpbmcmIHBhcnRJRCkgY29uc3QKIHsKICNpZiBQTEFURk9STShJT1MpCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250cm9sc0hvc3QuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFD
b250cm9sc0hvc3QuaAkocmV2aXNpb24gMTc3Mjc5KQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9tZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0LmgJKHdvcmtpbmcgY29weSkKQEAgLTcy
LDcgKzcyLDYgQEAgcHVibGljOgogICAgIHZvaWQgZXhpdGVkRnVsbHNjcmVlbigpOwogICAgIHZv
aWQgZW50ZXJGdWxsc2NyZWVuT3B0aW1pemVkKCk7CiAgICAgYm9vbCBvcHRpbWl6ZWRGdWxsc2Ny
ZWVuU3VwcG9ydGVkKCk7Ci0gICAgU3RyaW5nIGZ1bGxzY3JlZW5Nb2RlKCkgY29uc3Q7CiAgICAg
U3RyaW5nIG1lZGlhVUlJbWFnZURhdGEoY29uc3QgU3RyaW5nJikgY29uc3Q7CiAKICAgICBTdHJp
bmcgZXh0ZXJuYWxEZXZpY2VEaXNwbGF5TmFtZSgpIGNvbnN0OwpJbmRleDogU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0LmlkbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250cm9sc0hv
c3QuaWRsCShyZXZpc2lvbiAxNzcyNzkpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
Y29udHJvbHMvTWVkaWFDb250cm9sc0hvc3QuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0yOSwxMiAr
MjksNiBAQCBlbnVtIERldmljZVR5cGUgewogICAgICJ0dm91dCIKIH07CiAKLWVudW0gRnVsbHNj
cmVlbk1vZGUgewotICAgICJub25lIiwKLSAgICAic3RhbmRhcmQiLAotICAgICJvcHRpbWl6ZWQi
Ci19OwotCiBlbnVtIE1lZGlhVUlQYXJ0SUQgewogICAgICJvcHRpbWl6ZWQtZnVsbHNjcmVlbi1i
dXR0b24iLAogICAgICJvcHRpbWl6ZWQtZnVsbHNjcmVlbi1wbGFjZWhvbGRlciIKQEAgLTY3LDcg
KzYxLDUgQEAgZW51bSBNZWRpYVVJUGFydElEIHsKICAgICB2b2lkIGVudGVyZWRGdWxsc2NyZWVu
KCk7CiAgICAgdm9pZCBleGl0ZWRGdWxsc2NyZWVuKCk7CiAgICAgdm9pZCBlbnRlckZ1bGxzY3Jl
ZW5PcHRpbWl6ZWQoKTsKLSAgICByZWFkb25seSBhdHRyaWJ1dGUgYm9vbGVhbiBvcHRpbWl6ZWRG
dWxsc2NyZWVuU3VwcG9ydGVkOwotICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBGdWxsc2NyZWVuTW9k
ZSBmdWxsc2NyZWVuTW9kZTsKICAgICBET01TdHJpbmcgbWVkaWFVSUltYWdlRGF0YShNZWRpYVVJ
UGFydElEIHBhcnRJRCk7CiB9OwpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNv
bnRyb2xzL21lZGlhQ29udHJvbHNpT1MuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9tZWRpYWNvbnRyb2xzL21lZGlhQ29udHJvbHNpT1MuanMJKHJldmlzaW9uIDE3NzI3
OSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9tZWRpYUNvbnRyb2xz
aU9TLmpzCSh3b3JraW5nIGNvcHkpCkBAIC0zMyw2ICszMyw3IEBAIENvbnRyb2xsZXJJT1MucHJv
dG90eXBlID0gewogICAgICAgICB0aGlzLmxpc3RlbkZvcih0aGlzLnZpZGVvLCAnd2Via2l0YmVn
aW5mdWxsc2NyZWVuJywgdGhpcy5oYW5kbGVGdWxsc2NyZWVuQ2hhbmdlKTsKICAgICAgICAgdGhp
cy5saXN0ZW5Gb3IodGhpcy52aWRlbywgJ3dlYmtpdGVuZGZ1bGxzY3JlZW4nLCB0aGlzLmhhbmRs
ZUZ1bGxzY3JlZW5DaGFuZ2UpOwogICAgICAgICB0aGlzLmxpc3RlbkZvcih0aGlzLnZpZGVvLCAn
d2Via2l0Y3VycmVudHBsYXliYWNrdGFyZ2V0aXN3aXJlbGVzc2NoYW5nZWQnLCB0aGlzLmhhbmRs
ZVdpcmVsZXNzUGxheWJhY2tDaGFuZ2UpOworICAgICAgICB0aGlzLmxpc3RlbkZvcih0aGlzLnZp
ZGVvLCAnd2Via2l0cHJlc2VudGF0aW9ubW9kZWNoYW5nZWQnLCB0aGlzLmhhbmRsZVByZXNlbnRh
dGlvbk1vZGVDaGFuZ2UpOwogICAgIH0sCiAKICAgICByZW1vdmVWaWRlb0xpc3RlbmVyczogZnVu
Y3Rpb24oKSB7CkBAIC00MSw2ICs0Miw3IEBAIENvbnRyb2xsZXJJT1MucHJvdG90eXBlID0gewog
ICAgICAgICB0aGlzLnN0b3BMaXN0ZW5pbmdGb3IodGhpcy52aWRlbywgJ3dlYmtpdGJlZ2luZnVs
bHNjcmVlbicsIHRoaXMuaGFuZGxlRnVsbHNjcmVlbkNoYW5nZSk7CiAgICAgICAgIHRoaXMuc3Rv
cExpc3RlbmluZ0Zvcih0aGlzLnZpZGVvLCAnd2Via2l0ZW5kZnVsbHNjcmVlbicsIHRoaXMuaGFu
ZGxlRnVsbHNjcmVlbkNoYW5nZSk7CiAgICAgICAgIHRoaXMuc3RvcExpc3RlbmluZ0Zvcih0aGlz
LnZpZGVvLCAnd2Via2l0Y3VycmVudHBsYXliYWNrdGFyZ2V0aXN3aXJlbGVzc2NoYW5nZWQnLCB0
aGlzLmhhbmRsZVdpcmVsZXNzUGxheWJhY2tDaGFuZ2UpOworICAgICAgICB0aGlzLnN0b3BMaXN0
ZW5pbmdGb3IodGhpcy52aWRlbywgJ3dlYmtpdHByZXNlbnRhdGlvbm1vZGVjaGFuZ2VkJywgdGhp
cy5oYW5kbGVQcmVzZW50YXRpb25Nb2RlQ2hhbmdlKTsKIAogICAgICAgICB0aGlzLnNldFNob3Vs
ZExpc3RlbkZvclBsYXliYWNrVGFyZ2V0QXZhaWxhYmlsaXR5RXZlbnQoZmFsc2UpOwogICAgIH0s
CkBAIC0yMTQsNyArMjE2LDcgQEAgQ29udHJvbGxlcklPUy5wcm90b3R5cGUgPSB7CiAgICAgICAg
IH0KICAgICAgICAgaWYgKCF0aGlzLmlzQXVkaW8oKSkgewogICAgICAgICAgICAgdGhpcy5jb250
cm9scy5wYW5lbC5hcHBlbmRDaGlsZCh0aGlzLmNvbnRyb2xzLmZ1bGxzY3JlZW5CdXR0b24pOwot
ICAgICAgICAgICAgaWYgKHRoaXMuaG9zdC5vcHRpbWl6ZWRGdWxsc2NyZWVuU3VwcG9ydGVkKQor
ICAgICAgICAgICAgaWYgKCd3ZWJraXRTdXBwb3J0c1ByZXNlbnRhdGlvbk1vZGUnIGluIHRoaXMu
dmlkZW8gJiYgdGhpcy52aWRlby53ZWJraXRTdXBwb3J0c1ByZXNlbnRhdGlvbk1vZGUoJ29wdGlt
aXplZCcpKQogICAgICAgICAgICAgICAgIHRoaXMuY29udHJvbHMucGFuZWwuYXBwZW5kQ2hpbGQo
dGhpcy5jb250cm9scy5vcHRpbWl6ZWRGdWxsc2NyZWVuQnV0dG9uKTsKICAgICAgICAgfQogICAg
IH0sCkBAIC0yNDMsNyArMjQ1LDcgQEAgQ29udHJvbGxlcklPUy5wcm90b3R5cGUgPSB7CiAgICAg
dXBkYXRlQ29udHJvbHM6IGZ1bmN0aW9uKCkgewogICAgICAgICBpZiAodGhpcy5zaG91bGRIYXZl
U3RhcnRQbGF5YmFja0J1dHRvbigpKQogICAgICAgICAgICAgdGhpcy5zZXRDb250cm9sc1R5cGUo
Q29udHJvbGxlcklPUy5TdGFydFBsYXliYWNrQ29udHJvbHMpOwotICAgICAgICBlbHNlIGlmICh0
aGlzLmlzRnVsbFNjcmVlbigpICYmIHRoaXMuaG9zdC5mdWxsc2NyZWVuTW9kZSAhPT0gIm9wdGlt
aXplZCIpCisgICAgICAgIGVsc2UgaWYgKHRoaXMucHJlc2VudGF0aW9uTW9kZSgpID09PSAiZnVs
bHNjcmVlbiIpCiAgICAgICAgICAgICB0aGlzLnNldENvbnRyb2xzVHlwZShDb250cm9sbGVyLkZ1
bGxTY3JlZW5Db250cm9scyk7CiAgICAgICAgIGVsc2UKICAgICAgICAgICAgIHRoaXMuc2V0Q29u
dHJvbHNUeXBlKENvbnRyb2xsZXIuSW5saW5lQ29udHJvbHMpOwpAQCAtMzkxLDEyICszOTMsMzEg
QEAgQ29udHJvbGxlcklPUy5wcm90b3R5cGUgPSB7CiAgICAgICAgIHRoaXMudXBkYXRlU2hvdWxk
TGlzdGVuRm9yUGxheWJhY2tUYXJnZXRBdmFpbGFiaWxpdHlFdmVudCgpOwogICAgIH0sCiAKKyAg
ICBwcmVzZW50YXRpb25Nb2RlOiBmdW5jdGlvbigpIHsKKyAgICAgICAgaWYgKCd3ZWJraXRQcmVz
ZW50YXRpb25Nb2RlJyBpbiB0aGlzLnZpZGVvKQorICAgICAgICAgICAgcmV0dXJuIHRoaXMudmlk
ZW8ud2Via2l0UHJlc2VudGF0aW9uTW9kZTsKKworICAgICAgICBpZiAodGhpcy5pc0Z1bGxTY3Jl
ZW4oKSkKKyAgICAgICAgICAgIHJldHVybiAnZnVsbHNjcmVlbic7CisKKyAgICAgICAgcmV0dXJu
ICdpbmxpbmUnOworICAgIH0sCisKICAgICBpc0Z1bGxTY3JlZW46IGZ1bmN0aW9uKCkKICAgICB7
CiAgICAgICAgIHJldHVybiB0aGlzLnZpZGVvLndlYmtpdERpc3BsYXlpbmdGdWxsc2NyZWVuOwog
ICAgIH0sCiAKICAgICBoYW5kbGVGdWxsc2NyZWVuQnV0dG9uQ2xpY2tlZDogZnVuY3Rpb24oZXZl
bnQpIHsKKyAgICAgICAgaWYgKCd3ZWJraXRTZXRQcmVzZW50YXRpb25Nb2RlJyBpbiB0aGlzLnZp
ZGVvKSB7CisgICAgICAgICAgICBpZiAodGhpcy5wcmVzZW50YXRpb25Nb2RlKCkgPT09ICdmdWxs
c2NyZWVuJykKKyAgICAgICAgICAgICAgICB0aGlzLnZpZGVvLndlYmtpdFNldFByZXNlbnRhdGlv
bk1vZGUoJ2lubGluZScpOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHRoaXMu
dmlkZW8ud2Via2l0U2V0UHJlc2VudGF0aW9uTW9kZSgnZnVsbHNjcmVlbicpOworCisgICAgICAg
ICAgICByZXR1cm47CisgICAgICAgIH0KKwogICAgICAgICBpZiAodGhpcy5pc0Z1bGxTY3JlZW4o
KSkKICAgICAgICAgICAgIHRoaXMudmlkZW8ud2Via2l0RXhpdEZ1bGxzY3JlZW4oKTsKICAgICAg
ICAgZWxzZQpAQCAtNDIxLDEwICs0NDIsMTMgQEAgQ29udHJvbGxlcklPUy5wcm90b3R5cGUgPSB7
CiAgICAgfSwKIAogICAgIGhhbmRsZU9wdGltaXplZEZ1bGxzY3JlZW5CdXR0b25DbGlja2VkOiBm
dW5jdGlvbihldmVudCkgewotICAgICAgICBpZiAodGhpcy5pc0Z1bGxTY3JlZW4oKSkKLSAgICAg
ICAgICAgIHRoaXMudmlkZW8ud2Via2l0RXhpdEZ1bGxzY3JlZW4oKTsKKyAgICAgICAgaWYgKCEo
J3dlYmtpdFNldFByZXNlbnRhdGlvbk1vZGUnIGluIHRoaXMudmlkZW8pKQorICAgICAgICAgICAg
cmV0dXJuOworCisgICAgICAgIGlmICh0aGlzLnByZXNlbnRhdGlvbk1vZGUoKSA9PT0gJ29wdGlt
aXplZCcpCisgICAgICAgICAgICB0aGlzLnZpZGVvLndlYmtpdFNldFByZXNlbnRhdGlvbk1vZGUo
J2lubGluZScpOwogICAgICAgICBlbHNlCi0gICAgICAgICAgICB0aGlzLmhvc3QuZW50ZXJGdWxs
c2NyZWVuT3B0aW1pemVkKCk7CisgICAgICAgICAgICB0aGlzLnZpZGVvLndlYmtpdFNldFByZXNl
bnRhdGlvbk1vZGUoJ29wdGltaXplZCcpOwogICAgIH0sCiAgICAgICAgIAogICAgIGhhbmRsZU9w
dGltaXplZEZ1bGxzY3JlZW5Ub3VjaFN0YXJ0OiBmdW5jdGlvbigpIHsKQEAgLTU3MSwyMSArNTk1
LDMyIEBAIENvbnRyb2xsZXJJT1MucHJvdG90eXBlID0gewogICAgICAgICB9CiAgICAgfSwKIAot
ICAgIGhhbmRsZUZ1bGxzY3JlZW5DaGFuZ2U6IGZ1bmN0aW9uKGV2ZW50KQorICAgIGhhbmRsZVBy
ZXNlbnRhdGlvbk1vZGVDaGFuZ2U6IGZ1bmN0aW9uKGV2ZW50KQogICAgIHsKLSAgICAgICAgQ29u
dHJvbGxlci5wcm90b3R5cGUuaGFuZGxlRnVsbHNjcmVlbkNoYW5nZS5jYWxsKHRoaXMsIGV2ZW50
KTsKKyAgICAgICAgdmFyIHByZXNlbnRhdGlvbk1vZGUgPSB0aGlzLnByZXNlbnRhdGlvbk1vZGUo
KTsKIAotICAgICAgICBpZiAoIXRoaXMuaXNGdWxsU2NyZWVuKCkpIHsKLSAgICAgICAgICAgIHRo
aXMuY29udHJvbHMuaW5saW5lUGxheWJhY2tQbGFjZWhvbGRlci5jbGFzc0xpc3QuYWRkKHRoaXMu
Q2xhc3NOYW1lcy5oaWRkZW4pOwotICAgICAgICB9IGVsc2UgaWYgKHRoaXMuaG9zdC5mdWxsc2Ny
ZWVuTW9kZSA9PT0gIm9wdGltaXplZCIpIHsKLSAgICAgICAgICAgIHZhciBiYWNrZ3JvdW5kSW1h
Z2VTVkcgPSAidXJsKCciICsgdGhpcy5ob3N0Lm1lZGlhVUlJbWFnZURhdGEoIm9wdGltaXplZC1m
dWxsc2NyZWVuLXBsYWNlaG9sZGVyIikgKyAiJykiOwotICAgICAgICAgICAgdGhpcy5jb250cm9s
cy5pbmxpbmVQbGF5YmFja1BsYWNlaG9sZGVyLnN0eWxlLmJhY2tncm91bmRJbWFnZSA9IGJhY2tn
cm91bmRJbWFnZVNWRzsKLSAgICAgICAgICAgIHRoaXMuY29udHJvbHMuaW5saW5lUGxheWJhY2tQ
bGFjZWhvbGRlci5zZXRBdHRyaWJ1dGUoJ2FyaWEtbGFiZWwnLCAidmlkZW8gcGxheWJhY2sgcGxh
Y2Vob2xkZXIiKTsKLQotICAgICAgICAgICAgdGhpcy5jb250cm9scy5pbmxpbmVQbGF5YmFja1Bs
YWNlaG9sZGVyLmNsYXNzTGlzdC5yZW1vdmUodGhpcy5DbGFzc05hbWVzLmhpZGRlbik7CisgICAg
ICAgIHN3aXRjaCAocHJlc2VudGF0aW9uTW9kZSkgeworICAgICAgICAgICAgY2FzZSAnaW5saW5l
JzoKKyAgICAgICAgICAgICAgICB0aGlzLmNvbnRyb2xzLmlubGluZVBsYXliYWNrUGxhY2Vob2xk
ZXIuY2xhc3NMaXN0LmFkZCh0aGlzLkNsYXNzTmFtZXMuaGlkZGVuKTsKKyAgICAgICAgICAgICAg
ICBicmVhazsKKyAgICAgICAgICAgIGNhc2UgJ29wdGltaXplZCc6CisgICAgICAgICAgICAgICAg
dmFyIGJhY2tncm91bmRJbWFnZVNWRyA9ICJ1cmwoJyIgKyB0aGlzLmhvc3QubWVkaWFVSUltYWdl
RGF0YSgib3B0aW1pemVkLWZ1bGxzY3JlZW4tcGxhY2Vob2xkZXIiKSArICInKSI7CisgICAgICAg
ICAgICAgICAgdGhpcy5jb250cm9scy5pbmxpbmVQbGF5YmFja1BsYWNlaG9sZGVyLnN0eWxlLmJh
Y2tncm91bmRJbWFnZSA9IGJhY2tncm91bmRJbWFnZVNWRzsKKyAgICAgICAgICAgICAgICB0aGlz
LmNvbnRyb2xzLmlubGluZVBsYXliYWNrUGxhY2Vob2xkZXIuc2V0QXR0cmlidXRlKCdhcmlhLWxh
YmVsJywgInZpZGVvIHBsYXliYWNrIHBsYWNlaG9sZGVyIik7CisgICAgICAgICAgICAgICAgdGhp
cy5jb250cm9scy5pbmxpbmVQbGF5YmFja1BsYWNlaG9sZGVyLmNsYXNzTGlzdC5yZW1vdmUodGhp
cy5DbGFzc05hbWVzLmhpZGRlbik7CisgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0K
IAorICAgICAgICB0aGlzLnVwZGF0ZUNvbnRyb2xzKCk7CiAgICAgICAgIHRoaXMudXBkYXRlQ2Fw
dGlvbkNvbnRhaW5lcigpOworICAgICAgICBpZiAocHJlc2VudGF0aW9uTW9kZSAhPSAnZnVsbHNj
cmVlbicgJiYgdGhpcy52aWRlby5wYXVzZWQgJiYgdGhpcy5jb250cm9sc0FyZUhpZGRlbigpKQor
ICAgICAgICAgICAgdGhpcy5zaG93Q29udHJvbHMoKTsKKyAgICB9LAorCisgICAgaGFuZGxlRnVs
bHNjcmVlbkNoYW5nZTogZnVuY3Rpb24oZXZlbnQpCisgICAgeworICAgICAgICBDb250cm9sbGVy
LnByb3RvdHlwZS5oYW5kbGVGdWxsc2NyZWVuQ2hhbmdlLmNhbGwodGhpcywgZXZlbnQpOworICAg
ICAgICB0aGlzLmhhbmRsZVByZXNlbnRhdGlvbk1vZGVDaGFuZ2UoZXZlbnQpOwogICAgIH0sCiAK
IH07CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9kb20vRXZlbnROYW1lcy5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL2RvbS9FdmVudE5hbWVzLmgJKHJldmlzaW9uIDE3NzI3OSkKKysrIFNv
dXJjZS9XZWJDb3JlL2RvbS9FdmVudE5hbWVzLmgJKHdvcmtpbmcgY29weSkKQEAgLTI5NCw2ICsy
OTQsMTAgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIG1hY3JvKGF1dG9jb21wbGV0ZSkgXAog
ICAgIG1hY3JvKGF1dG9jb21wbGV0ZWVycm9yKSBcCiAgICAgLyogRW5kIG9mIEVOQUJMRShSRVFV
RVNUX0FVVE9DT01QTEVURSkgKi8gXAorICAgIFwKKyAgICAvKiBQTEFURk9STShJT1MpICovIFwK
KyAgICBtYWNybyh3ZWJraXRwcmVzZW50YXRpb25tb2RlY2hhbmdlZCkgXAorICAgIC8qIEVuZCBv
ZiBFTkFCTEUoSU9TX0FJUlBMQVkpICovIFwKIAogLy8gZW5kIG9mIERPTV9FVkVOVF9OQU1FU19G
T1JfRUFDSAogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxBdHRyaWJ1dGVOYW1lcy5p
bgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxBdHRyaWJ1dGVOYW1lcy5p
bgkocmV2aXNpb24gMTc3Mjc5KQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MQXR0cmlidXRl
TmFtZXMuaW4JKHdvcmtpbmcgY29weSkKQEAgLTM1Nyw2ICszNTcsNyBAQCBhdXRvY2FwaXRhbGl6
ZQogZGF0YS15b3V0dWJlLWlkCiBvbndlYmtpdGN1cnJlbnRwbGF5YmFja3RhcmdldGlzd2lyZWxl
c3NjaGFuZ2VkCiBvbndlYmtpdHBsYXliYWNrdGFyZ2V0YXZhaWxhYmlsaXR5Y2hhbmdlZAorb253
ZWJraXRwcmVzZW50YXRpb25tb2RlY2hhbmdlZAogeC13ZWJraXQtaW1hZ2VtZW51CiB3ZWJraXQt
cGxheXNpbmxpbmUKIHgtd2Via2l0LWFpcnBsYXkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTE1lZGlhRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MTWVkaWFFbGVtZW50LmNwcAkocmV2aXNpb24gMTc3Mjc5KQorKysgU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDkwNyw3ICs0OTA3
LDggQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjplbnRlckZ1bGxzY3JlZW4oVgogewogICAgIExP
RyhNZWRpYSwgIkhUTUxNZWRpYUVsZW1lbnQ6OmVudGVyRnVsbHNjcmVlbiglcCkiLCB0aGlzKTsK
ICAgICBBU1NFUlQobW9kZSAhPSBWaWRlb0Z1bGxzY3JlZW5Nb2RlTm9uZSk7Ci0gICAgaWYgKG1f
dmlkZW9GdWxsc2NyZWVuTW9kZSAhPSBWaWRlb0Z1bGxzY3JlZW5Nb2RlTm9uZSkKKworICAgIGlm
IChtX3ZpZGVvRnVsbHNjcmVlbk1vZGUgPT0gbW9kZSkKICAgICAgICAgcmV0dXJuOwogCiAjaWYg
RU5BQkxFKEZVTExTQ1JFRU5fQVBJKQpAQCAtNDkxNyw3ICs0OTE4LDcgQEAgdm9pZCBIVE1MTWVk
aWFFbGVtZW50OjplbnRlckZ1bGxzY3JlZW4oVgogICAgIH0KICNlbmRpZgogCi0gICAgbV92aWRl
b0Z1bGxzY3JlZW5Nb2RlID0gbW9kZTsKKyAgICBmdWxsc2NyZWVuTW9kZUNoYW5nZWQobW9kZSk7
CiAgICAgaWYgKGhhc01lZGlhQ29udHJvbHMoKSkKICAgICAgICAgbWVkaWFDb250cm9scygpLT5l
bnRlcmVkRnVsbHNjcmVlbigpOwogICAgIGlmIChkb2N1bWVudCgpLnBhZ2UoKSAmJiBpczxIVE1M
VmlkZW9FbGVtZW50PigqdGhpcykpIHsKQEAgLTQ5NDYsNyArNDk0Nyw3IEBAIHZvaWQgSFRNTE1l
ZGlhRWxlbWVudDo6ZXhpdEZ1bGxzY3JlZW4oKQogICAgIH0KICNlbmRpZgogICAgIEFTU0VSVCht
X3ZpZGVvRnVsbHNjcmVlbk1vZGUgIT0gVmlkZW9GdWxsc2NyZWVuTW9kZU5vbmUpOwotICAgIG1f
dmlkZW9GdWxsc2NyZWVuTW9kZSA9IFZpZGVvRnVsbHNjcmVlbk1vZGVOb25lOworICAgIGZ1bGxz
Y3JlZW5Nb2RlQ2hhbmdlZChWaWRlb0Z1bGxzY3JlZW5Nb2RlTm9uZSk7CiAgICAgaWYgKGhhc01l
ZGlhQ29udHJvbHMoKSkKICAgICAgICAgbWVkaWFDb250cm9scygpLT5leGl0ZWRGdWxsc2NyZWVu
KCk7CiAgICAgaWYgKGRvY3VtZW50KCkucGFnZSgpICYmIGlzPEhUTUxWaWRlb0VsZW1lbnQ+KCp0
aGlzKSkgewpJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgJKHJldmlz
aW9uIDE3NzI3OSkKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5oCSh3
b3JraW5nIGNvcHkpCkBAIC00MDEsNyArNDAxLDcgQEAgcHVibGljOgogICAgIHR5cGVkZWYgdWlu
dDMyX3QgVmlkZW9GdWxsc2NyZWVuTW9kZTsKIAogICAgIFZpZGVvRnVsbHNjcmVlbk1vZGUgZnVs
bHNjcmVlbk1vZGUoKSBjb25zdCB7IHJldHVybiBtX3ZpZGVvRnVsbHNjcmVlbk1vZGU7IH0KLSAg
ICB2b2lkIGZ1bGxzY3JlZW5Nb2RlQ2hhbmdlZChWaWRlb0Z1bGxzY3JlZW5Nb2RlIG1vZGUpIHsg
bV92aWRlb0Z1bGxzY3JlZW5Nb2RlID0gbW9kZTsgfQorICAgIHZpcnR1YWwgdm9pZCBmdWxsc2Ny
ZWVuTW9kZUNoYW5nZWQoVmlkZW9GdWxsc2NyZWVuTW9kZSBtb2RlKSB7IG1fdmlkZW9GdWxsc2Ny
ZWVuTW9kZSA9IG1vZGU7IH0KIAogICAgIHZvaWQgZW50ZXJGdWxsc2NyZWVuKFZpZGVvRnVsbHNj
cmVlbk1vZGUpOwogICAgIHZpcnR1YWwgdm9pZCBlbnRlckZ1bGxzY3JlZW4oKSBvdmVycmlkZTsK
QEAgLTQ5Niw2ICs0OTYsOCBAQCBwcm90ZWN0ZWQ6CiAgICAgdm9pZCBzZXRNZWRpYUNvbnRyb2xz
RGVwZW5kT25QYWdlU2NhbGVGYWN0b3IoYm9vbCk7CiAjZW5kaWYKIAorICAgIHZvaWQgc2NoZWR1
bGVFdmVudChjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50TmFtZSk7CisKIHByaXZhdGU6CiAgICAg
dm9pZCBjcmVhdGVNZWRpYVBsYXllcigpOwogCkBAIC02MjAsOCArNjIyLDcgQEAgcHJpdmF0ZToK
ICAgICB2b2lkIGFkZFBsYXllZFJhbmdlKGNvbnN0IE1lZGlhVGltZSYgc3RhcnQsIGNvbnN0IE1l
ZGlhVGltZSYgZW5kKTsKICAgICAKICAgICB2b2lkIHNjaGVkdWxlVGltZXVwZGF0ZUV2ZW50KGJv
b2wgcGVyaW9kaWNFdmVudCk7Ci0gICAgdm9pZCBzY2hlZHVsZUV2ZW50KGNvbnN0IEF0b21pY1N0
cmluZyYgZXZlbnROYW1lKTsKLSAgICAKKwogICAgIC8vIGxvYWRpbmcKICAgICB2b2lkIHNlbGVj
dE1lZGlhUmVzb3VyY2UoKTsKICAgICB2b2lkIGxvYWRSZXNvdXJjZShjb25zdCBVUkwmLCBDb250
ZW50VHlwZSYsIGNvbnN0IFN0cmluZyYga2V5U3lzdGVtKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTFZpZGVvRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MVmlkZW9FbGVtZW50LmNwcAkocmV2aXNpb24gMTc3Mjc5KQorKysgU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MVmlkZW9FbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzYsMTEg
KzM2LDEzIEBACiAjaW5jbHVkZSAiSFRNTEltYWdlTG9hZGVyLmgiCiAjaW5jbHVkZSAiSFRNTE5h
bWVzLmgiCiAjaW5jbHVkZSAiSFRNTFBhcnNlcklkaW9tcy5oIgorI2luY2x1ZGUgIkxvZ2dpbmcu
aCIKICNpbmNsdWRlICJQYWdlLmgiCiAjaW5jbHVkZSAiUmVuZGVySW1hZ2UuaCIKICNpbmNsdWRl
ICJSZW5kZXJWaWRlby5oIgogI2luY2x1ZGUgIlNjcmlwdENvbnRyb2xsZXIuaCIKICNpbmNsdWRl
ICJTZXR0aW5ncy5oIgorI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgogCiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKQEAgLTEyMyw2ICsxMjUsMTAgQEAgdm9pZCBIVE1MVmlkZW9FbGVtZW50
OjpwYXJzZUF0dHJpYnV0ZShjbwogICAgIGVsc2UgaWYgKG5hbWUgPT0gd2Via2l0d2lyZWxlc3N2
aWRlb3BsYXliYWNrZGlzYWJsZWRBdHRyKQogICAgICAgICBtZWRpYVNlc3Npb24oKS5zZXRXaXJl
bGVzc1ZpZGVvUGxheWJhY2tEaXNhYmxlZCgqdGhpcywgd2Via2l0V2lyZWxlc3NWaWRlb1BsYXli
YWNrRGlzYWJsZWQoKSk7CiAjZW5kaWYKKyNpZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01P
REUpCisgICAgZWxzZSBpZiAobmFtZSA9PSBvbndlYmtpdHByZXNlbnRhdGlvbm1vZGVjaGFuZ2Vk
QXR0cikKKyAgICAgICAgc2V0QXR0cmlidXRlRXZlbnRMaXN0ZW5lcihldmVudE5hbWVzKCkud2Vi
a2l0cHJlc2VudGF0aW9ubW9kZWNoYW5nZWRFdmVudCwgbmFtZSwgdmFsdWUpOworI2VuZGlmCiAg
ICAgZWxzZSB7CiAgICAgICAgIEhUTUxNZWRpYUVsZW1lbnQ6OnBhcnNlQXR0cmlidXRlKG5hbWUs
IHZhbHVlKTsgICAgCiAKQEAgLTMzOCw2ICszNDQsODUgQEAgVVJMIEhUTUxWaWRlb0VsZW1lbnQ6
OnBvc3RlckltYWdlVVJMKCkgYwogICAgIHJldHVybiBkb2N1bWVudCgpLmNvbXBsZXRlVVJMKHVy
bCk7CiB9CiAKKyNpZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCisKK3N0YXRpYyBj
b25zdCBBdG9taWNTdHJpbmcmIHByZXNlbnRhdGlvbk1vZGVGdWxsc2NyZWVuKCkKK3sKKyAgICBz
dGF0aWMgTmV2ZXJEZXN0cm95ZWQ8QXRvbWljU3RyaW5nPiBmdWxsc2NyZWVuKCJmdWxsc2NyZWVu
IiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCk7CisgICAgcmV0dXJuIGZ1bGxz
Y3JlZW47Cit9CisKK3N0YXRpYyBjb25zdCBBdG9taWNTdHJpbmcmIHByZXNlbnRhdGlvbk1vZGVP
cHRpbWl6ZWQoKQoreworICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxBdG9taWNTdHJpbmc+IG9w
dGltaXplZCgib3B0aW1pemVkIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCk7
CisgICAgcmV0dXJuIG9wdGltaXplZDsKK30KKworc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYg
cHJlc2VudGF0aW9uTW9kZUlubGluZSgpCit7CisgICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPEF0
b21pY1N0cmluZz4gaW5saW5lTW9kZSgiaW5saW5lIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RG
cm9tTGl0ZXJhbCk7CisgICAgcmV0dXJuIGlubGluZU1vZGU7Cit9CisKK2Jvb2wgSFRNTFZpZGVv
RWxlbWVudDo6d2Via2l0U3VwcG9ydHNQcmVzZW50YXRpb25Nb2RlKGNvbnN0IFN0cmluZyYgbW9k
ZSkgY29uc3QKK3sKKyAgICBpZiAobW9kZSA9PSBwcmVzZW50YXRpb25Nb2RlRnVsbHNjcmVlbigp
KQorICAgICAgICByZXR1cm4gbWVkaWFTZXNzaW9uKCkuZnVsbHNjcmVlblBlcm1pdHRlZCgqdGhp
cykgJiYgc3VwcG9ydHNGdWxsc2NyZWVuKCk7CisKKyAgICBpZiAobW9kZSA9PSBwcmVzZW50YXRp
b25Nb2RlT3B0aW1pemVkKCkpCisgICAgICAgIHJldHVybiB3a0lzT3B0aW1pemVkRnVsbHNjcmVl
blN1cHBvcnRlZCgpICYmIG1lZGlhU2Vzc2lvbigpLmFsbG93c0FsdGVybmF0ZUZ1bGxzY3JlZW4o
KnRoaXMpICYmIHN1cHBvcnRzRnVsbHNjcmVlbigpOworCisgICAgaWYgKG1vZGUgPT0gcHJlc2Vu
dGF0aW9uTW9kZUlubGluZSgpKQorICAgICAgICByZXR1cm4gIW1lZGlhU2Vzc2lvbigpLnJlcXVp
cmVzRnVsbHNjcmVlbkZvclZpZGVvUGxheWJhY2soKnRoaXMpOworCisgICAgcmV0dXJuIGZhbHNl
OworfQorCit2b2lkIEhUTUxWaWRlb0VsZW1lbnQ6OndlYmtpdFNldFByZXNlbnRhdGlvbk1vZGUo
Y29uc3QgU3RyaW5nJiBtb2RlKQoreworICAgIGlmIChtb2RlID09IHByZXNlbnRhdGlvbk1vZGVJ
bmxpbmUoKSAmJiBpc0Z1bGxzY3JlZW4oKSkgeworICAgICAgICBleGl0RnVsbHNjcmVlbigpOwor
ICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgaWYgKCFtZWRpYVNlc3Npb24oKS5mdWxsc2Ny
ZWVuUGVybWl0dGVkKCp0aGlzKSB8fCAhc3VwcG9ydHNGdWxsc2NyZWVuKCkpCisgICAgICAgIHJl
dHVybjsKKworICAgIExPRyhNZWRpYSwgIkhUTUxWaWRlb0VsZW1lbnQ6OndlYmtpdFNldFByZXNl
bnRhdGlvbk1vZGUoJXApIC0gc2V0dGluZyB0byBcIiVzXCIiLCB0aGlzLCBtb2RlLnV0ZjgoKS5k
YXRhKCkpOworCisgICAgaWYgKG1vZGUgPT0gcHJlc2VudGF0aW9uTW9kZUZ1bGxzY3JlZW4oKSkK
KyAgICAgICAgZW50ZXJGdWxsc2NyZWVuKFZpZGVvRnVsbHNjcmVlbk1vZGVTdGFuZGFyZCk7Cisg
ICAgZWxzZSBpZiAobW9kZSA9PSBwcmVzZW50YXRpb25Nb2RlT3B0aW1pemVkKCkpCisgICAgICAg
IGVudGVyRnVsbHNjcmVlbihWaWRlb0Z1bGxzY3JlZW5Nb2RlT3B0aW1pemVkKTsKK30KKworU3Ry
aW5nIEhUTUxWaWRlb0VsZW1lbnQ6OndlYmtpdFByZXNlbnRhdGlvbk1vZGUoKSBjb25zdAorewor
ICAgIEhUTUxNZWRpYUVsZW1lbnQ6OlZpZGVvRnVsbHNjcmVlbk1vZGUgbW9kZSA9IGZ1bGxzY3Jl
ZW5Nb2RlKCk7CisKKyAgICBpZiAobW9kZSA9PSBWaWRlb0Z1bGxzY3JlZW5Nb2RlU3RhbmRhcmQp
CisgICAgICAgIHJldHVybiBwcmVzZW50YXRpb25Nb2RlRnVsbHNjcmVlbigpOworICAgIGlmICht
b2RlICYgVmlkZW9GdWxsc2NyZWVuTW9kZU9wdGltaXplZCkKKyAgICAgICAgcmV0dXJuIHByZXNl
bnRhdGlvbk1vZGVPcHRpbWl6ZWQoKTsKKyAgICBpZiAobW9kZSA9PSBWaWRlb0Z1bGxzY3JlZW5N
b2RlTm9uZSkKKyAgICAgICAgcmV0dXJuIHByZXNlbnRhdGlvbk1vZGVJbmxpbmUoKTsKKworICAg
IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBwcmVzZW50YXRpb25Nb2RlSW5saW5l
KCk7Cit9CisKK3ZvaWQgSFRNTFZpZGVvRWxlbWVudDo6ZnVsbHNjcmVlbk1vZGVDaGFuZ2VkKFZp
ZGVvRnVsbHNjcmVlbk1vZGUgbW9kZSkKK3sKKyAgICBpZiAobW9kZSAhPSBmdWxsc2NyZWVuTW9k
ZSgpKSB7CisgICAgICAgIExPRyhNZWRpYSwgIkhUTUxWaWRlb0VsZW1lbnQ6OmZ1bGxzY3JlZW5N
b2RlQ2hhbmdlZCglcCkgLSBtb2RlIGNoYW5nZWQgZnJvbSAlaSB0byAlaSIsIHRoaXMsIGZ1bGxz
Y3JlZW5Nb2RlKCksIG1vZGUpOworICAgICAgICBzY2hlZHVsZUV2ZW50KGV2ZW50TmFtZXMoKS53
ZWJraXRwcmVzZW50YXRpb25tb2RlY2hhbmdlZEV2ZW50KTsKKyAgICB9CisKKyAgICBIVE1MTWVk
aWFFbGVtZW50OjpmdWxsc2NyZWVuTW9kZUNoYW5nZWQobW9kZSk7Cit9CisKKyNlbmRpZgorCiB9
CiAKICNlbmRpZgpJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVmlkZW9FbGVtZW50LmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVmlkZW9FbGVtZW50LmgJKHJl
dmlzaW9uIDE3NzI3OSkKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5o
CSh3b3JraW5nIGNvcHkpCkBAIC03OCw2ICs3OCwxNSBAQCBwdWJsaWM6CiAgICAgVVJMIHBvc3Rl
ckltYWdlVVJMKCkgY29uc3Q7CiAgICAgdmlydHVhbCBSZW5kZXJQdHI8UmVuZGVyRWxlbWVudD4g
Y3JlYXRlRWxlbWVudFJlbmRlcmVyKFJlZjxSZW5kZXJTdHlsZT4mJikgb3ZlcnJpZGU7CiAKKyNp
ZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCisgICAgYm9vbCB3ZWJraXRTdXBwb3J0
c1ByZXNlbnRhdGlvbk1vZGUoY29uc3QgU3RyaW5nJikgY29uc3Q7CisgICAgdm9pZCB3ZWJraXRT
ZXRQcmVzZW50YXRpb25Nb2RlKGNvbnN0IFN0cmluZyYpOworICAgIFN0cmluZyB3ZWJraXRQcmVz
ZW50YXRpb25Nb2RlKCkgY29uc3Q7CisgICAgdmlydHVhbCB2b2lkIGZ1bGxzY3JlZW5Nb2RlQ2hh
bmdlZChWaWRlb0Z1bGxzY3JlZW5Nb2RlKSBvdmVycmlkZTsKKworICAgIERFRklORV9BVFRSSUJV
VEVfRVZFTlRfTElTVEVORVIod2Via2l0cHJlc2VudGF0aW9ubW9kZWNoYW5nZWQpOworI2VuZGlm
CisKIHByaXZhdGU6CiAgICAgSFRNTFZpZGVvRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiwg
RG9jdW1lbnQmLCBib29sKTsKIApJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVmlkZW9F
bGVtZW50LmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxWaWRlb0Vs
ZW1lbnQuaWRsCShyZXZpc2lvbiAxNzcyNzkpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxW
aWRlb0VsZW1lbnQuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsyMywxNCBAQAogICogT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4gCiAgKi8KIAorI2lmIGRlZmluZWQoRU5BQkxFX1ZJREVPX1BSRVNFTlRBVElPTl9N
T0RFKSAmJiBFTkFCTEVfVklERU9fUFJFU0VOVEFUSU9OX01PREUKK2VudW0gVmlkZW9QcmVzZW50
YXRpb25Nb2RlIHsKKyAgICAiZnVsbHNjcmVlbiIsCisgICAgIm9wdGltaXplZCIsCisgICAgImlu
bGluZSIKK307CisjZW5kaWYKKwogWwogICAgIENvbmRpdGlvbmFsPVZJREVPLAogICAgIEpTR2Vu
ZXJhdGVUb05hdGl2ZU9iamVjdCwKQEAgLTUyLDQgKzYwLDEzIEBACiAgICAgLy8gVGhlIG51bWJl
ciBvZiBkZWNvZGVkIGZyYW1lcyB0aGF0IGhhdmUgYmVlbiBkcm9wcGVkIGJ5IHRoZSBwbGF5ZXIK
ICAgICAvLyBmb3IgcGVyZm9ybWFuY2UgcmVhc29ucyBkdXJpbmcgcGxheWJhY2suCiAgICAgW0Nv
bmRpdGlvbmFsPU1FRElBX1NUQVRJU1RJQ1NdIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBs
b25nIHdlYmtpdERyb3BwZWRGcmFtZUNvdW50OworCisjaWYgZGVmaW5lZChFTkFCTEVfVklERU9f
UFJFU0VOVEFUSU9OX01PREUpICYmIEVOQUJMRV9WSURFT19QUkVTRU5UQVRJT05fTU9ERQorICAg
IGJvb2xlYW4gd2Via2l0U3VwcG9ydHNQcmVzZW50YXRpb25Nb2RlKFZpZGVvUHJlc2VudGF0aW9u
TW9kZSBtb2RlKTsKKworICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBWaWRlb1ByZXNlbnRhdGlvbk1v
ZGUgd2Via2l0UHJlc2VudGF0aW9uTW9kZTsKKyAgICB2b2lkIHdlYmtpdFNldFByZXNlbnRhdGlv
bk1vZGUoVmlkZW9QcmVzZW50YXRpb25Nb2RlIG1vZGUpOworCisgICAgYXR0cmlidXRlIEV2ZW50
TGlzdGVuZXIgb253ZWJraXRwcmVzZW50YXRpb25tb2RlY2hhbmdlZDsKKyNlbmRpZgogfTsKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5JbnRlcmZh
Y2VBVktpdC5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2Vi
VmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0JKHJldmlzaW9uIDE3NzI3OSkKKysrIFNv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktp
dC5tbQkod29ya2luZyBjb3B5KQpAQCAtMTA5MywxOCArMTA5MywxOSBAQCB2b2lkIFdlYlZpZGVv
RnVsbHNjcmVlbkludGVyZmFjZUFWS2l0OjpyCiB2b2lkIFdlYlZpZGVvRnVsbHNjcmVlbkludGVy
ZmFjZUFWS2l0OjpzZXRJc09wdGltaXplZChib29sIGFjdGl2ZSkKIHsKICAgICBpZiAobV9tb2Rl
ICYgSFRNTE1lZGlhRWxlbWVudDo6VmlkZW9GdWxsc2NyZWVuTW9kZVN0YW5kYXJkKSB7Ci0gICAg
ICAgIGlmICghYWN0aXZlICYmIG1fbW9kZSAmIEhUTUxNZWRpYUVsZW1lbnQ6OlZpZGVvRnVsbHNj
cmVlbk1vZGVPcHRpbWl6ZWQpCisgICAgICAgIGlmICghYWN0aXZlKQogICAgICAgICAgICAgbV9t
b2RlICY9IH5IVE1MTWVkaWFFbGVtZW50OjpWaWRlb0Z1bGxzY3JlZW5Nb2RlT3B0aW1pemVkOwot
ICAgICAgICBlbHNlIGlmIChhY3RpdmUgJiYgfm1fbW9kZSAmIEhUTUxNZWRpYUVsZW1lbnQ6OlZp
ZGVvRnVsbHNjcmVlbk1vZGVPcHRpbWl6ZWQpCisgICAgICAgIGVsc2UKICAgICAgICAgICAgIG1f
bW9kZSB8PSBIVE1MTWVkaWFFbGVtZW50OjpWaWRlb0Z1bGxzY3JlZW5Nb2RlT3B0aW1pemVkOwog
ICAgIH0KLSAgICAKKwogICAgIGlmIChtX3ZpZGVvRnVsbHNjcmVlbk1vZGVsKQotICAgICAgICBt
X3ZpZGVvRnVsbHNjcmVlbk1vZGVsLT5mdWxsc2NyZWVuTW9kZUNoYW5nZWQobV9tb2RlKTsKKyAg
ICAgICAgbV92aWRlb0Z1bGxzY3JlZW5Nb2RlbC0+ZnVsbHNjcmVlbk1vZGVDaGFuZ2VkKG1fZXhp
dFJlcXVlc3RlZCA/IEhUTUxNZWRpYUVsZW1lbnQ6OlZpZGVvRnVsbHNjcmVlbk1vZGVOb25lIDog
bV9tb2RlKTsKKwogCiAgICAgaWYgKG1fbW9kZSA9PSBIVE1MTWVkaWFFbGVtZW50OjpWaWRlb0Z1
bGxzY3JlZW5Nb2RlT3B0aW1pemVkKQogICAgICAgICByZXR1cm47Ci0gICAgCisKICAgICBbbV93
aW5kb3cgc2V0SGlkZGVuOm1fbW9kZSAmIEhUTUxNZWRpYUVsZW1lbnQ6OlZpZGVvRnVsbHNjcmVl
bk1vZGVPcHRpbWl6ZWRdOwogICAgIAogICAgIGlmIChtX2Z1bGxzY3JlZW5DaGFuZ2VPYnNlcnZl
ciAmJiB+bV9tb2RlICYgSFRNTE1lZGlhRWxlbWVudDo6VmlkZW9GdWxsc2NyZWVuTW9kZU9wdGlt
aXplZCkKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViS2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDE3NzU5MikKKysrIFNvdXJjZS9XZWJLaXQy
L0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEyIEBACisyMDE0LTEyLTE5ICBF
cmljIENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFtpT1NdIGFk
ZCBvcHRpbWl6ZWQgZnVsbHNjcmVlbiBBUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTEzOTgzMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25m
aWc6IEFkZCBFTkFCTEVfVklERU9fUFJFU0VOVEFUSU9OX01PREUuCisKIDIwMTQtMTItMTkgIEFu
ZHJlYXMgS2xpbmcgIDxha2xpbmdAYXBwbGUuY29tPgogCiAgICAgICAgIFJlZi1pZnkgVGV4dEl0
ZXJhdG9yIEFQSS4KSW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVE
ZWZpbmVzLnhjY29uZmlnCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL0NvbmZpZ3VyYXRp
b25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCShyZXZpc2lvbiAxNzcyNzkpCisrKyBTb3VyY2Uv
V2ViS2l0Mi9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwkod29ya2luZyBj
b3B5KQpAQCAtMjI2LDQgKzIyNiw2IEBAIEVOQUJMRV9MTElOVF9DX0xPT1AgPSA7CiAKIEVOQUJM
RV9TQVRVUkFURURfTEFZT1VUX0FSSVRITUVUSUMgPSBFTkFCTEVfU0FUVVJBVEVEX0xBWU9VVF9B
UklUSE1FVElDOwogCi1GRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcpICQo
RU5BQkxFX0FDQ0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFCTEVfQUNDRUxFUkFURURfT1ZFUkZM
T1dfU0NST0xMSU5HKSAkKEVOQUJMRV9BVkZfQ0FQVElPTlMpICQoRU5BQkxFX0NBQ0hFX1BBUlRJ
VElPTklORykgJChFTkFCTEVfQ0FOVkFTX1BBVEgpICQoRU5BQkxFX0NBTlZBU19QUk9YWSkgJChF
TkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HKSAkKEVO
QUJMRV9DU1BfTkVYVCkgJChFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFLKSAkKEVOQUJM
RV9DU1NfQ09NUE9TSVRJTkcpICQoRU5BQkxFX0NTU19ERVZJQ0VfQURBUFRBVElPTikgJChFTkFC
TEVfQ1NTX0dSSURfTEFZT1VUKSAkKEVOQUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04pICQoRU5B
QkxFX0NTU19JTUFHRV9SRVNPTFVUSU9OKSAkKEVOQUJMRV9DU1NfUkVHSU9OUykgJChFTkFCTEVf
Q1NTX1NFTEVDVE9SU19MRVZFTDQpICQoRU5BQkxFX0NTU19TSEFQRVMpICQoRU5BQkxFX0NTUzNf
VEVYVCkgJChFTkFCTEVfQ1NTM19URVhUX0xJTkVfQlJFQUspICQoRU5BQkxFX0NVUlNPUl9WSVNJ
QklMSVRZKSAkKEVOQUJMRV9DVVNUT01fU0NIRU1FX0hBTkRMRVIpICQoRU5BQkxFX0RBU0hCT0FS
RF9TVVBQT1JUKSAkKEVOQUJMRV9EQVRBTElTVF9FTEVNRU5UKSAkKEVOQUJMRV9EQVRBX1RSQU5T
RkVSX0lURU1TKSAkKEVOQUJMRV9ERVRBSUxTX0VMRU1FTlQpICQoRU5BQkxFX0RFVklDRV9PUklF
TlRBVElPTikgJChFTkFCTEVfRE9NNF9FVkVOVFNfQ09OU1RSVUNUT1IpICQoRU5BQkxFX0VOQ1JZ
UFRFRF9NRURJQSkgJChFTkFCTEVfRU5DUllQVEVEX01FRElBX1YyKSAkKEVOQUJMRV9GSUxURVJT
X0xFVkVMXzIpICQoRU5BQkxFX0ZPTlRfTE9BRF9FVkVOVFMpICQoRU5BQkxFX0ZVTExTQ1JFRU5f
QVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HQU1FUEFEX0RFUFJFQ0FURUQpICQoRU5B
QkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9ISURERU5fUEFHRV9ET01fVElNRVJfVEhST1RUTElO
RykgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9TRVJWSUNFX0NPTlRST0xTKSAkKEVO
QUJMRV9JTkRFWEVEX0RBVEFCQVNFKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFX0lOX1dPUktF
UlMpICQoRU5BQkxFX0lORElFX1VJKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SKSAkKEVOQUJM
RV9JTlBVVF9UWVBFX0NPTE9SX1BPUE9WRVIpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURSkgJChF
TkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRV9JTkNPTVBMRVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBF
X0RBVEVUSU1FTE9DQUwpICQoRU5BQkxFX0lOUFVUX1RZUEVfTU9OVEgpICQoRU5BQkxFX0lOUFVU
X1RZUEVfVElNRSkgJChFTkFCTEVfSU5QVVRfVFlQRV9XRUVLKSAkKEVOQUJMRV9JTlNQRUNUT1Ip
ICQoRU5BQkxFX0lPU19BSVJQTEFZKSAkKEVOQUJMRV9JT1NfR0VTVFVSRV9FVkVOVFMpICQoRU5B
QkxFX0lPU19URVhUX0FVVE9TSVpJTkcpICQoRU5BQkxFX0lPU19UT1VDSF9FVkVOVFMpICQoRU5B
QkxFX0xFR0FDWV9DU1NfVkVORE9SX1BSRUZJWEVTKSAkKEVOQUJMRV9MRUdBQ1lfTk9USUZJQ0FU
SU9OUykgJChFTkFCTEVfTEVHQUNZX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX1dF
Ql9BVURJTykgJChFTkFCTEVfTEVUVEVSUFJFU1MpICQoRU5BQkxFX0xJTktfUFJFRkVUQ0gpICQo
RU5BQkxFX01BVEhNTCkgJChFTkFCTEVfTUVESUFfQ09OVFJPTFNfU0NSSVBUKSAkKEVOQUJMRV9N
RURJQV9TT1VSQ0UpICQoRU5BQkxFX01FRElBX1NUQVRJU1RJQ1MpICQoRU5BQkxFX01FVEVSX0VM
RU1FTlQpICQoRU5BQkxFX01IVE1MKSAkKEVOQUJMRV9NT1VTRV9DVVJTT1JfU0NBTEUpICQoRU5B
QkxFX05BVklHQVRPUl9DT05URU5UX1VUSUxTKSAkKEVOQUJMRV9OQVZJR0FUT1JfSFdDT05DVVJS
RU5DWSkgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfUERGS0lUX1BMVUdJTikgJChF
TkFCTEVfUE9JTlRFUl9MT0NLKSAkKEVOQUJMRV9QUk9NSVNFUykgJChFTkFCTEVfUFJPWElNSVRZ
X0VWRU5UUykgJChFTkFCTEVfUFVCTElDX1NVRkZJWF9MSVNUKSAkKEVOQUJMRV9RVU9UQSkgJChF
TkFCTEVfUkVRVUVTVF9BTklNQVRJT05fRlJBTUUpICQoRU5BQkxFX1JFUVVFU1RfQVVUT0NPTVBM
RVRFKSAkKEVOQUJMRV9SRU1PVEVfSU5TUEVDVE9SKSAkKEVOQUJMRV9SRVNPTFVUSU9OX01FRElB
X1FVRVJZKSAkKEVOQUJMRV9SVUJCRVJfQkFORElORykgJChFTkFCTEVfU0hBUkVEX1dPUktFUlMp
ICQoRU5BQkxFX0NTU19TQ1JPTExfU05BUCkgJChFTkFCTEVfU1BFRUNIX1NZTlRIRVNJUykgJChF
TkFCTEVfU1FMX0RBVEFCQVNFKSAkKEVOQUJMRV9TVUJUTEVfQ1JZUFRPKSAkKEVOQUJMRV9TVkdf
Rk9OVFMpICQoRU5BQkxFX1RFTEVQSE9ORV9OVU1CRVJfREVURUNUSU9OKSAkKEVOQUJMRV9URU1Q
TEFURV9FTEVNRU5UKSAkKEVOQUJMRV9URVhUX0FVVE9TSVpJTkcpICQoRU5BQkxFX1RPVUNIX0VW
RU5UUykgJChFTkFCTEVfVE9VQ0hfSUNPTl9MT0FESU5HKSAkKEVOQUJMRV9VU0VSU0VMRUNUX0FM
TCkgJChFTkFCTEVfVklERU8pICQoRU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9EQVRBQ1VF
X1ZBTFVFKSAkKEVOQUJMRV9WSUVXX01PREVfQ1NTX01FRElBKSAkKEVOQUJMRV9XRUJHTCkgJChF
TkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAkKEVOQUJMRV9XRUJfU09DS0VU
UykgJChFTkFCTEVfUElDVFVSRV9TSVpFUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVf
V0VCVlRUX1JFR0lPTlMpICQoRU5BQkxFX1hIUl9USU1FT1VUKSAkKEVOQUJMRV9YU0xUKSAkKEVO
QUJMRV9GVExfSklUKSAkKEVOQUJMRV9MTElOVF9DX0xPT1ApICQoRU5BQkxFX1NBVFVSQVRFRF9M
QVlPVVRfQVJJVEhNRVRJQyk7CitFTkFCTEVfVklERU9fUFJFU0VOVEFUSU9OX01PREVbc2RrPWlw
aG9uZSpdID0gRU5BQkxFX1ZJREVPX1BSRVNFTlRBVElPTl9NT0RFOworCitGRUFUVVJFX0RFRklO
RVMgPSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0FDQ0VMRVJBVEVEXzJEX0NBTlZB
UykgJChFTkFCTEVfQUNDRUxFUkFURURfT1ZFUkZMT1dfU0NST0xMSU5HKSAkKEVOQUJMRV9BVkZf
Q0FQVElPTlMpICQoRU5BQkxFX0NBQ0hFX1BBUlRJVElPTklORykgJChFTkFCTEVfQ0FOVkFTX1BB
VEgpICQoRU5BQkxFX0NBTlZBU19QUk9YWSkgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQo
RU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HKSAkKEVOQUJMRV9DU1BfTkVYVCkgJChFTkFCTEVfQ1NT
X0JPWF9ERUNPUkFUSU9OX0JSRUFLKSAkKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcpICQoRU5BQkxF
X0NTU19ERVZJQ0VfQURBUFRBVElPTikgJChFTkFCTEVfQ1NTX0dSSURfTEFZT1VUKSAkKEVOQUJM
RV9DU1NfSU1BR0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVUSU9OKSAk
KEVOQUJMRV9DU1NfUkVHSU9OUykgJChFTkFCTEVfQ1NTX1NFTEVDVE9SU19MRVZFTDQpICQoRU5B
QkxFX0NTU19TSEFQRVMpICQoRU5BQkxFX0NTUzNfVEVYVCkgJChFTkFCTEVfQ1NTM19URVhUX0xJ
TkVfQlJFQUspICQoRU5BQkxFX0NVUlNPUl9WSVNJQklMSVRZKSAkKEVOQUJMRV9DVVNUT01fU0NI
RU1FX0hBTkRMRVIpICQoRU5BQkxFX0RBU0hCT0FSRF9TVVBQT1JUKSAkKEVOQUJMRV9EQVRBTElT
VF9FTEVNRU5UKSAkKEVOQUJMRV9EQVRBX1RSQU5TRkVSX0lURU1TKSAkKEVOQUJMRV9ERVRBSUxT
X0VMRU1FTlQpICQoRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTikgJChFTkFCTEVfRE9NNF9FVkVO
VFNfQ09OU1RSVUNUT1IpICQoRU5BQkxFX0VOQ1JZUFRFRF9NRURJQSkgJChFTkFCTEVfRU5DUllQ
VEVEX01FRElBX1YyKSAkKEVOQUJMRV9GSUxURVJTX0xFVkVMXzIpICQoRU5BQkxFX0ZPTlRfTE9B
RF9FVkVOVFMpICQoRU5BQkxFX0ZVTExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVO
QUJMRV9HQU1FUEFEX0RFUFJFQ0FURUQpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9I
SURERU5fUEFHRV9ET01fVElNRVJfVEhST1RUTElORykgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAk
KEVOQUJMRV9TRVJWSUNFX0NPTlRST0xTKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKSAkKEVO
QUJMRV9JTkRFWEVEX0RBVEFCQVNFX0lOX1dPUktFUlMpICQoRU5BQkxFX0lORElFX1VJKSAkKEVO
QUJMRV9JTlBVVF9UWVBFX0NPTE9SKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SX1BPUE9WRVIp
ICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRV9J
TkNPTVBMRVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpICQoRU5BQkxFX0lO
UFVUX1RZUEVfTU9OVEgpICQoRU5BQkxFX0lOUFVUX1RZUEVfVElNRSkgJChFTkFCTEVfSU5QVVRf
VFlQRV9XRUVLKSAkKEVOQUJMRV9JTlNQRUNUT1IpICQoRU5BQkxFX0lPU19BSVJQTEFZKSAkKEVO
QUJMRV9JT1NfR0VTVFVSRV9FVkVOVFMpICQoRU5BQkxFX0lPU19URVhUX0FVVE9TSVpJTkcpICQo
RU5BQkxFX0lPU19UT1VDSF9FVkVOVFMpICQoRU5BQkxFX0xFR0FDWV9DU1NfVkVORE9SX1BSRUZJ
WEVTKSAkKEVOQUJMRV9MRUdBQ1lfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfTEVHQUNZX1ZFTkRP
Ul9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX1dFQl9BVURJTykgJChFTkFCTEVfTEVUVEVSUFJF
U1MpICQoRU5BQkxFX0xJTktfUFJFRkVUQ0gpICQoRU5BQkxFX01BVEhNTCkgJChFTkFCTEVfTUVE
SUFfQ09OVFJPTFNfU0NSSVBUKSAkKEVOQUJMRV9NRURJQV9TT1VSQ0UpICQoRU5BQkxFX01FRElB
X1NUQVRJU1RJQ1MpICQoRU5BQkxFX01FVEVSX0VMRU1FTlQpICQoRU5BQkxFX01IVE1MKSAkKEVO
QUJMRV9NT1VTRV9DVVJTT1JfU0NBTEUpICQoRU5BQkxFX05BVklHQVRPUl9DT05URU5UX1VUSUxT
KSAkKEVOQUJMRV9OQVZJR0FUT1JfSFdDT05DVVJSRU5DWSkgJChFTkFCTEVfTk9USUZJQ0FUSU9O
UykgJChFTkFCTEVfUERGS0lUX1BMVUdJTikgJChFTkFCTEVfUE9JTlRFUl9MT0NLKSAkKEVOQUJM
RV9QUk9NSVNFUykgJChFTkFCTEVfUFJPWElNSVRZX0VWRU5UUykgJChFTkFCTEVfUFVCTElDX1NV
RkZJWF9MSVNUKSAkKEVOQUJMRV9RVU9UQSkgJChFTkFCTEVfUkVRVUVTVF9BTklNQVRJT05fRlJB
TUUpICQoRU5BQkxFX1JFUVVFU1RfQVVUT0NPTVBMRVRFKSAkKEVOQUJMRV9SRU1PVEVfSU5TUEVD
VE9SKSAkKEVOQUJMRV9SRVNPTFVUSU9OX01FRElBX1FVRVJZKSAkKEVOQUJMRV9SVUJCRVJfQkFO
RElORykgJChFTkFCTEVfU0hBUkVEX1dPUktFUlMpICQoRU5BQkxFX0NTU19TQ1JPTExfU05BUCkg
JChFTkFCTEVfU1BFRUNIX1NZTlRIRVNJUykgJChFTkFCTEVfU1FMX0RBVEFCQVNFKSAkKEVOQUJM
RV9TVUJUTEVfQ1JZUFRPKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1RFTEVQSE9ORV9O
VU1CRVJfREVURUNUSU9OKSAkKEVOQUJMRV9URU1QTEFURV9FTEVNRU5UKSAkKEVOQUJMRV9URVhU
X0FVVE9TSVpJTkcpICQoRU5BQkxFX1RPVUNIX0VWRU5UUykgJChFTkFCTEVfVE9VQ0hfSUNPTl9M
T0FESU5HKSAkKEVOQUJMRV9VU0VSU0VMRUNUX0FMTCkgJChFTkFCTEVfVklERU8pICQoRU5BQkxF
X1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9EQVRBQ1VFX1ZBTFVFKSAkKEVOQUJMRV9WSUVXX01PREVf
Q1NTX01FRElBKSAkKEVOQUJMRV9XRUJHTCkgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9X
RUJfUkVQTEFZKSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfUElDVFVSRV9TSVpFUykg
JChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV0VCVlRUX1JFR0lPTlMpICQoRU5BQkxFX1hI
Ul9USU1FT1VUKSAkKEVOQUJMRV9YU0xUKSAkKEVOQUJMRV9GVExfSklUKSAkKEVOQUJMRV9MTElO
VF9DX0xPT1ApICQoRU5BQkxFX1NBVFVSQVRFRF9MQVlPVVRfQVJJVEhNRVRJQykgJChFTkFCTEVf
VklERU9fUFJFU0VOVEFUSU9OX01PREUpOwpJbmRleDogU291cmNlL1dlYktpdC9tYWMvQ2hhbmdl
TG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwkocmV2aXNpb24g
MTc3NTkyKQorKysgU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTIgQEAKKzIwMTQtMTItMTkgIEVyaWMgQ2FybHNvbiAgPGVyaWMuY2FybHNvbkBh
cHBsZS5jb20+CisKKyAgICAgICAgW2lPU10gYWRkIG9wdGltaXplZCBmdWxsc2NyZWVuIEFQSQor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM5ODMzCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBDb25maWd1
cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZzogIEFkZCBFTkFCTEVfVklERU9fUFJFU0VO
VEFUSU9OX01PREUuCisKIDIwMTQtMTItMTkgIEFuZHJlYXMgS2xpbmcgIDxha2xpbmdAYXBwbGUu
Y29tPgogCiAgICAgICAgIFJlZi1pZnkgVGV4dEl0ZXJhdG9yIEFQSS4KSW5kZXg6IFNvdXJjZS9X
ZWJLaXQvbWFjL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJLaXQvbWFjL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhj
Y29uZmlnCShyZXZpc2lvbiAxNzcyNzkpCisrKyBTb3VyY2UvV2ViS2l0L21hYy9Db25maWd1cmF0
aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwkod29ya2luZyBjb3B5KQpAQCAtMjI2LDQgKzIy
Niw2IEBAIEVOQUJMRV9MTElOVF9DX0xPT1AgPSA7CiAKIEVOQUJMRV9TQVRVUkFURURfTEFZT1VU
X0FSSVRITUVUSUMgPSBFTkFCTEVfU0FUVVJBVEVEX0xBWU9VVF9BUklUSE1FVElDOwogCi1GRUFU
VVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0FDQ0VMRVJBVEVE
XzJEX0NBTlZBUykgJChFTkFCTEVfQUNDRUxFUkFURURfT1ZFUkZMT1dfU0NST0xMSU5HKSAkKEVO
QUJMRV9BVkZfQ0FQVElPTlMpICQoRU5BQkxFX0NBQ0hFX1BBUlRJVElPTklORykgJChFTkFCTEVf
Q0FOVkFTX1BBVEgpICQoRU5BQkxFX0NBTlZBU19QUk9YWSkgJChFTkFCTEVfQ0hBTk5FTF9NRVNT
QUdJTkcpICQoRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HKSAkKEVOQUJMRV9DU1BfTkVYVCkgJChF
TkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFLKSAkKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcp
ICQoRU5BQkxFX0NTU19ERVZJQ0VfQURBUFRBVElPTikgJChFTkFCTEVfQ1NTX0dSSURfTEFZT1VU
KSAkKEVOQUJMRV9DU1NfSU1BR0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0NTU19JTUFHRV9SRVNP
TFVUSU9OKSAkKEVOQUJMRV9DU1NfUkVHSU9OUykgJChFTkFCTEVfQ1NTX1NFTEVDVE9SU19MRVZF
TDQpICQoRU5BQkxFX0NTU19TSEFQRVMpICQoRU5BQkxFX0NTUzNfVEVYVCkgJChFTkFCTEVfQ1NT
M19URVhUX0xJTkVfQlJFQUspICQoRU5BQkxFX0NVUlNPUl9WSVNJQklMSVRZKSAkKEVOQUJMRV9D
VVNUT01fU0NIRU1FX0hBTkRMRVIpICQoRU5BQkxFX0RBU0hCT0FSRF9TVVBQT1JUKSAkKEVOQUJM
RV9EQVRBTElTVF9FTEVNRU5UKSAkKEVOQUJMRV9EQVRBX1RSQU5TRkVSX0lURU1TKSAkKEVOQUJM
RV9ERVRBSUxTX0VMRU1FTlQpICQoRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTikgJChFTkFCTEVf
RE9NNF9FVkVOVFNfQ09OU1RSVUNUT1IpICQoRU5BQkxFX0VOQ1JZUFRFRF9NRURJQSkgJChFTkFC
TEVfRU5DUllQVEVEX01FRElBX1YyKSAkKEVOQUJMRV9GSUxURVJTX0xFVkVMXzIpICQoRU5BQkxF
X0ZPTlRfTE9BRF9FVkVOVFMpICQoRU5BQkxFX0ZVTExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1F
UEFEKSAkKEVOQUJMRV9HQU1FUEFEX0RFUFJFQ0FURUQpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAk
KEVOQUJMRV9ISURERU5fUEFHRV9ET01fVElNRVJfVEhST1RUTElORykgJChFTkFCTEVfSUNPTkRB
VEFCQVNFKSAkKEVOQUJMRV9TRVJWSUNFX0NPTlRST0xTKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFC
QVNFKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFX0lOX1dPUktFUlMpICQoRU5BQkxFX0lORElF
X1VJKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9S
X1BPUE9WRVIpICQoRU5BQkxFX0lOUFVUX1RZUEVfREFURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9E
QVRFVElNRV9JTkNPTVBMRVRFKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpICQo
RU5BQkxFX0lOUFVUX1RZUEVfTU9OVEgpICQoRU5BQkxFX0lOUFVUX1RZUEVfVElNRSkgJChFTkFC
TEVfSU5QVVRfVFlQRV9XRUVLKSAkKEVOQUJMRV9JTlNQRUNUT1IpICQoRU5BQkxFX0lPU19BSVJQ
TEFZKSAkKEVOQUJMRV9JT1NfR0VTVFVSRV9FVkVOVFMpICQoRU5BQkxFX0lPU19URVhUX0FVVE9T
SVpJTkcpICQoRU5BQkxFX0lPU19UT1VDSF9FVkVOVFMpICQoRU5BQkxFX0xFR0FDWV9DU1NfVkVO
RE9SX1BSRUZJWEVTKSAkKEVOQUJMRV9MRUdBQ1lfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfTEVH
QUNZX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFCTEVfTEVHQUNZX1dFQl9BVURJTykgJChFTkFCTEVf
TEVUVEVSUFJFU1MpICQoRU5BQkxFX0xJTktfUFJFRkVUQ0gpICQoRU5BQkxFX01BVEhNTCkgJChF
TkFCTEVfTUVESUFfQ09OVFJPTFNfU0NSSVBUKSAkKEVOQUJMRV9NRURJQV9TT1VSQ0UpICQoRU5B
QkxFX01FRElBX1NUQVRJU1RJQ1MpICQoRU5BQkxFX01FVEVSX0VMRU1FTlQpICQoRU5BQkxFX01I
VE1MKSAkKEVOQUJMRV9NT1VTRV9DVVJTT1JfU0NBTEUpICQoRU5BQkxFX05BVklHQVRPUl9DT05U
RU5UX1VUSUxTKSAkKEVOQUJMRV9OQVZJR0FUT1JfSFdDT05DVVJSRU5DWSkgJChFTkFCTEVfTk9U
SUZJQ0FUSU9OUykgJChFTkFCTEVfUERGS0lUX1BMVUdJTikgJChFTkFCTEVfUE9JTlRFUl9MT0NL
KSAkKEVOQUJMRV9QUk9NSVNFUykgJChFTkFCTEVfUFJPWElNSVRZX0VWRU5UUykgJChFTkFCTEVf
UFVCTElDX1NVRkZJWF9MSVNUKSAkKEVOQUJMRV9RVU9UQSkgJChFTkFCTEVfUkVRVUVTVF9BTklN
QVRJT05fRlJBTUUpICQoRU5BQkxFX1JFUVVFU1RfQVVUT0NPTVBMRVRFKSAkKEVOQUJMRV9SRU1P
VEVfSU5TUEVDVE9SKSAkKEVOQUJMRV9SRVNPTFVUSU9OX01FRElBX1FVRVJZKSAkKEVOQUJMRV9S
VUJCRVJfQkFORElORykgJChFTkFCTEVfU0hBUkVEX1dPUktFUlMpICQoRU5BQkxFX0NTU19TQ1JP
TExfU05BUCkgJChFTkFCTEVfU1BFRUNIX1NZTlRIRVNJUykgJChFTkFCTEVfU1FMX0RBVEFCQVNF
KSAkKEVOQUJMRV9TVUJUTEVfQ1JZUFRPKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1RF
TEVQSE9ORV9OVU1CRVJfREVURUNUSU9OKSAkKEVOQUJMRV9URU1QTEFURV9FTEVNRU5UKSAkKEVO
QUJMRV9URVhUX0FVVE9TSVpJTkcpICQoRU5BQkxFX1RPVUNIX0VWRU5UUykgJChFTkFCTEVfVE9V
Q0hfSUNPTl9MT0FESU5HKSAkKEVOQUJMRV9VU0VSU0VMRUNUX0FMTCkgJChFTkFCTEVfVklERU8p
ICQoRU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9EQVRBQ1VFX1ZBTFVFKSAkKEVOQUJMRV9W
SUVXX01PREVfQ1NTX01FRElBKSAkKEVOQUJMRV9XRUJHTCkgJChFTkFCTEVfV0VCX0FVRElPKSAk
KEVOQUJMRV9XRUJfUkVQTEFZKSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfUElDVFVS
RV9TSVpFUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV0VCVlRUX1JFR0lPTlMpICQo
RU5BQkxFX1hIUl9USU1FT1VUKSAkKEVOQUJMRV9YU0xUKSAkKEVOQUJMRV9GVExfSklUKSAkKEVO
QUJMRV9MTElOVF9DX0xPT1ApICQoRU5BQkxFX1NBVFVSQVRFRF9MQVlPVVRfQVJJVEhNRVRJQyk7
CitFTkFCTEVfVklERU9fUFJFU0VOVEFUSU9OX01PREVbc2RrPWlwaG9uZSpdID0gRU5BQkxFX1ZJ
REVPX1BSRVNFTlRBVElPTl9NT0RFOworCitGRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV8zRF9S
RU5ERVJJTkcpICQoRU5BQkxFX0FDQ0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFCTEVfQUNDRUxF
UkFURURfT1ZFUkZMT1dfU0NST0xMSU5HKSAkKEVOQUJMRV9BVkZfQ0FQVElPTlMpICQoRU5BQkxF
X0NBQ0hFX1BBUlRJVElPTklORykgJChFTkFCTEVfQ0FOVkFTX1BBVEgpICQoRU5BQkxFX0NBTlZB
U19QUk9YWSkgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxFX0NPTlRFTlRfRklM
VEVSSU5HKSAkKEVOQUJMRV9DU1BfTkVYVCkgJChFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JS
RUFLKSAkKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcpICQoRU5BQkxFX0NTU19ERVZJQ0VfQURBUFRB
VElPTikgJChFTkFCTEVfQ1NTX0dSSURfTEFZT1VUKSAkKEVOQUJMRV9DU1NfSU1BR0VfT1JJRU5U
QVRJT04pICQoRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVUSU9OKSAkKEVOQUJMRV9DU1NfUkVHSU9O
UykgJChFTkFCTEVfQ1NTX1NFTEVDVE9SU19MRVZFTDQpICQoRU5BQkxFX0NTU19TSEFQRVMpICQo
RU5BQkxFX0NTUzNfVEVYVCkgJChFTkFCTEVfQ1NTM19URVhUX0xJTkVfQlJFQUspICQoRU5BQkxF
X0NVUlNPUl9WSVNJQklMSVRZKSAkKEVOQUJMRV9DVVNUT01fU0NIRU1FX0hBTkRMRVIpICQoRU5B
QkxFX0RBU0hCT0FSRF9TVVBQT1JUKSAkKEVOQUJMRV9EQVRBTElTVF9FTEVNRU5UKSAkKEVOQUJM
RV9EQVRBX1RSQU5TRkVSX0lURU1TKSAkKEVOQUJMRV9ERVRBSUxTX0VMRU1FTlQpICQoRU5BQkxF
X0RFVklDRV9PUklFTlRBVElPTikgJChFTkFCTEVfRE9NNF9FVkVOVFNfQ09OU1RSVUNUT1IpICQo
RU5BQkxFX0VOQ1JZUFRFRF9NRURJQSkgJChFTkFCTEVfRU5DUllQVEVEX01FRElBX1YyKSAkKEVO
QUJMRV9GSUxURVJTX0xFVkVMXzIpICQoRU5BQkxFX0ZPTlRfTE9BRF9FVkVOVFMpICQoRU5BQkxF
X0ZVTExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9HQU1FUEFEKSAkKEVOQUJMRV9HQU1FUEFEX0RFUFJF
Q0FURUQpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9ISURERU5fUEFHRV9ET01fVElN
RVJfVEhST1RUTElORykgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9TRVJWSUNFX0NP
TlRST0xTKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFC
QVNFX0lOX1dPUktFUlMpICQoRU5BQkxFX0lORElFX1VJKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0NP
TE9SKSAkKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SX1BPUE9WRVIpICQoRU5BQkxFX0lOUFVUX1RZ
UEVfREFURSkgJChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRV9JTkNPTVBMRVRFKSAkKEVOQUJM
RV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpICQoRU5BQkxFX0lOUFVUX1RZUEVfTU9OVEgpICQo
RU5BQkxFX0lOUFVUX1RZUEVfVElNRSkgJChFTkFCTEVfSU5QVVRfVFlQRV9XRUVLKSAkKEVOQUJM
RV9JTlNQRUNUT1IpICQoRU5BQkxFX0lPU19BSVJQTEFZKSAkKEVOQUJMRV9JT1NfR0VTVFVSRV9F
VkVOVFMpICQoRU5BQkxFX0lPU19URVhUX0FVVE9TSVpJTkcpICQoRU5BQkxFX0lPU19UT1VDSF9F
VkVOVFMpICQoRU5BQkxFX0xFR0FDWV9DU1NfVkVORE9SX1BSRUZJWEVTKSAkKEVOQUJMRV9MRUdB
Q1lfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfTEVHQUNZX1ZFTkRPUl9QUkVGSVhFUykgJChFTkFC
TEVfTEVHQUNZX1dFQl9BVURJTykgJChFTkFCTEVfTEVUVEVSUFJFU1MpICQoRU5BQkxFX0xJTktf
UFJFRkVUQ0gpICQoRU5BQkxFX01BVEhNTCkgJChFTkFCTEVfTUVESUFfQ09OVFJPTFNfU0NSSVBU
KSAkKEVOQUJMRV9NRURJQV9TT1VSQ0UpICQoRU5BQkxFX01FRElBX1NUQVRJU1RJQ1MpICQoRU5B
QkxFX01FVEVSX0VMRU1FTlQpICQoRU5BQkxFX01IVE1MKSAkKEVOQUJMRV9NT1VTRV9DVVJTT1Jf
U0NBTEUpICQoRU5BQkxFX05BVklHQVRPUl9DT05URU5UX1VUSUxTKSAkKEVOQUJMRV9OQVZJR0FU
T1JfSFdDT05DVVJSRU5DWSkgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfUERGS0lU
X1BMVUdJTikgJChFTkFCTEVfUE9JTlRFUl9MT0NLKSAkKEVOQUJMRV9QUk9NSVNFUykgJChFTkFC
TEVfUFJPWElNSVRZX0VWRU5UUykgJChFTkFCTEVfUFVCTElDX1NVRkZJWF9MSVNUKSAkKEVOQUJM
RV9RVU9UQSkgJChFTkFCTEVfUkVRVUVTVF9BTklNQVRJT05fRlJBTUUpICQoRU5BQkxFX1JFUVVF
U1RfQVVUT0NPTVBMRVRFKSAkKEVOQUJMRV9SRU1PVEVfSU5TUEVDVE9SKSAkKEVOQUJMRV9SRVNP
TFVUSU9OX01FRElBX1FVRVJZKSAkKEVOQUJMRV9SVUJCRVJfQkFORElORykgJChFTkFCTEVfU0hB
UkVEX1dPUktFUlMpICQoRU5BQkxFX0NTU19TQ1JPTExfU05BUCkgJChFTkFCTEVfU1BFRUNIX1NZ
TlRIRVNJUykgJChFTkFCTEVfU1FMX0RBVEFCQVNFKSAkKEVOQUJMRV9TVUJUTEVfQ1JZUFRPKSAk
KEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1RFTEVQSE9ORV9OVU1CRVJfREVURUNUSU9OKSAk
KEVOQUJMRV9URU1QTEFURV9FTEVNRU5UKSAkKEVOQUJMRV9URVhUX0FVVE9TSVpJTkcpICQoRU5B
QkxFX1RPVUNIX0VWRU5UUykgJChFTkFCTEVfVE9VQ0hfSUNPTl9MT0FESU5HKSAkKEVOQUJMRV9V
U0VSU0VMRUNUX0FMTCkgJChFTkFCTEVfVklERU8pICQoRU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVO
QUJMRV9EQVRBQ1VFX1ZBTFVFKSAkKEVOQUJMRV9WSUVXX01PREVfQ1NTX01FRElBKSAkKEVOQUJM
RV9XRUJHTCkgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJfUkVQTEFZKSAkKEVOQUJM
RV9XRUJfU09DS0VUUykgJChFTkFCTEVfUElDVFVSRV9TSVpFUykgJChFTkFCTEVfV0VCX1RJTUlO
RykgJChFTkFCTEVfV0VCVlRUX1JFR0lPTlMpICQoRU5BQkxFX1hIUl9USU1FT1VUKSAkKEVOQUJM
RV9YU0xUKSAkKEVOQUJMRV9GVExfSklUKSAkKEVOQUJMRV9MTElOVF9DX0xPT1ApICQoRU5BQkxF
X1NBVFVSQVRFRF9MQVlPVVRfQVJJVEhNRVRJQykgJChFTkFCTEVfVklERU9fUFJFU0VOVEFUSU9O
X01PREUpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>