<?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>186436</bug_id>
          
          <creation_ts>2018-06-08 10:32:31 -0700</creation_ts>
          <short_desc>[Cocoa] Remove all uses of NSAutoreleasePool as part of preparation for ARC</short_desc>
          <delta_ts>2021-01-28 14:58:44 -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>WebKit Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>221107</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Darin Adler">darin</reporter>
          <assigned_to name="Darin Adler">darin</assigned_to>
          <cc>andersca</cc>
    
    <cc>beidson</cc>
    
    <cc>dbates</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>mitz</cc>
    
    <cc>realdawei</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1431293</commentid>
    <comment_count>0</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2018-06-08 10:32:31 -0700</bug_when>
    <thetext>[Cocoa] Remove all uses of NSAutoreleasePool as part of preparation for ARC</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1431303</commentid>
    <comment_count>1</comment_count>
      <attachid>342292</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2018-06-08 10:41:23 -0700</bug_when>
    <thetext>Created attachment 342292
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1431305</commentid>
    <comment_count>2</comment_count>
      <attachid>342292</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2018-06-08 10:46:23 -0700</bug_when>
    <thetext>Comment on attachment 342292
Patch

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

&gt; Source/WTF/wtf/AutodrainedPool.h:37
&gt; +// This class allows non-Objective-C C++ code to create an autorelease pool.
&gt; +// It should not be used in Objective-C++ code; instead @autoreleasepool should be used.
&gt; +// It can be used in cross-platform code; will compile down to nothing for non-Cocoa platforms.

Can you enforce this by using #error if __OBJC__ is defined?

&gt; Source/WTF/wtf/AutodrainedPoolMac.mm:37
&gt; +    : m_pool(NSPushAutoreleasePool(0))

{ } initialization?

&gt; Source/WebKitLegacy/mac/History/WebHistory.mm:601
&gt; +    // FIXME: If we can test and see good performance draining the autorelease pool every time through the loop,
&gt; +    // instead of once every 50 iterations, then we should switch to @autoreleasepool and get rid of the use of
&gt; +    // FoundationSPI.h in this source file.

I&apos;d go a step further and just use @autoreleasepool here - it should be fast enough and given that WebKit Legacy is deprecated I don&apos;t think it matters even if it&apos;s a little slower.

&gt; Source/WebKitLegacy/mac/WebView/WebView.mm:7908
&gt; +            // FIXME: If we can test and see good performance draining the autorelease pool every time
&gt; +            // through the loop, instead of once every 10 iterations, then we should switch to
&gt; +            // @autoreleasepool and get rid of the use of FoundationSPI.h in this source file.

Even more true here, since this is SPI that Safari no longer uses - not sure if anyone else does.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1431333</commentid>
    <comment_count>3</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2018-06-08 11:34:15 -0700</bug_when>
    <thetext>OK, I’ll fix the compilation errors and do what you suggested.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1431334</commentid>
    <comment_count>4</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2018-06-08 11:34:49 -0700</bug_when>
    <thetext>(In reply to Anders Carlsson from comment #2)
&gt; Can you enforce this by using #error if __OBJC__ is defined?

The trick is to do that while allowing AutodrainedPoolMac.mm to compile. But I will do it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1431454</commentid>
    <comment_count>5</comment_count>
      <attachid>342336</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2018-06-08 15:21:19 -0700</bug_when>
    <thetext>Created attachment 342336
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1431467</commentid>
    <comment_count>6</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2018-06-08 15:40:58 -0700</bug_when>
    <thetext>/Volumes/Data/EWS/WebKit/Tools/TestWebKitAPI/Tests/mac/StopLoadingFromDidFinishLoading.mm:51:21: error: use of undeclared identifier &apos;pool&apos;; did you mean &apos;powl&apos;?
    AutodrainedPool pool;
                    ^~~~
                    powl</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1431475</commentid>
    <comment_count>7</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2018-06-08 16:05:08 -0700</bug_when>
    <thetext>Got a better version coming. Found another file using autorelease pool.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1431476</commentid>
    <comment_count>8</comment_count>
      <attachid>342342</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2018-06-08 16:11:58 -0700</bug_when>
    <thetext>Created attachment 342342
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1431479</commentid>
    <comment_count>9</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2018-06-08 16:14:04 -0700</bug_when>
    <thetext>Attachment 342342 did not pass style-queue:


ERROR: Tools/TestWebKitAPI/Tests/mac/MenuTypesForMouseEvents.mm:47:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
ERROR: Tools/TestWebKitAPI/Tests/mac/MenuTypesForMouseEvents.mm:48:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Tools/TestWebKitAPI/Tests/mac/MenuTypesForMouseEvents.mm:49:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Tools/TestWebKitAPI/Tests/mac/MenuTypesForMouseEvents.mm:51:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Tools/TestWebKitAPI/Tests/mac/MenuTypesForMouseEvents.mm:52:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Tools/TestWebKitAPI/Tests/mac/MenuTypesForMouseEvents.mm:53:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/WTF/wtf/spi/cocoa/FoundationSPI.h:36:  objc_autoreleasePoolPush is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming/underscores] [4]
ERROR: Source/WTF/wtf/spi/cocoa/FoundationSPI.h:37:  objc_autoreleasePoolPop is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming/underscores] [4]
Total errors found: 8 in 26 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>1431535</commentid>
    <comment_count>10</comment_count>
      <attachid>342360</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2018-06-08 22:25:35 -0700</bug_when>
    <thetext>Created attachment 342360
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1431537</commentid>
    <comment_count>11</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2018-06-08 22:27:52 -0700</bug_when>
    <thetext>Attachment 342360 did not pass style-queue:


ERROR: Tools/TestWebKitAPI/Tests/mac/MenuTypesForMouseEvents.mm:47:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
ERROR: Tools/TestWebKitAPI/Tests/mac/MenuTypesForMouseEvents.mm:48:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Tools/TestWebKitAPI/Tests/mac/MenuTypesForMouseEvents.mm:49:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Tools/TestWebKitAPI/Tests/mac/MenuTypesForMouseEvents.mm:51:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Tools/TestWebKitAPI/Tests/mac/MenuTypesForMouseEvents.mm:52:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Tools/TestWebKitAPI/Tests/mac/MenuTypesForMouseEvents.mm:53:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/WTF/wtf/spi/cocoa/FoundationSPI.h:36:  objc_autoreleasePoolPush is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming/underscores] [4]
ERROR: Source/WTF/wtf/spi/cocoa/FoundationSPI.h:37:  objc_autoreleasePoolPop is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming/underscores] [4]
Total errors found: 8 in 26 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>1431562</commentid>
    <comment_count>12</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2018-06-09 09:27:24 -0700</bug_when>
    <thetext>Committed r232660: &lt;https://trac.webkit.org/changeset/232660&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1431563</commentid>
    <comment_count>13</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-06-09 09:28:21 -0700</bug_when>
    <thetext>&lt;rdar://problem/40969584&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1431945</commentid>
    <comment_count>14</comment_count>
    <who name="Dawei Fenton (:realdawei)">realdawei</who>
    <bug_when>2018-06-11 10:25:35 -0700</bug_when>
    <thetext>Looks like we are getting an API test failure after this patch

Sample output:
Test suite failed

Crashed

    TestWebKitAPI.WebKitLegacy.StopLoadingFromDidFinishLoading

https://build.webkit.org/builders/Apple%20High%20Sierra%20Release%20WK2%20(Tests)/builds/4986/steps/run-api-tests/logs/stdio


Excerpt from Crash log:
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   libobjc.A.dylib               	0x00007fff796bad3b objc_retain + 27
1   com.apple.WebKitLegacy        	0x000000010b0ea647 WebDocumentLoaderMac::setDataSource(WebDataSource*, WebView*) + 87 (WebDocumentLoaderMac.mm:62)
2   com.apple.WebKitLegacy        	0x000000010b100eb7 WebFrameLoaderClient::createDocumentLoader(WebCore::ResourceRequest const&amp;, WebCore::SubstituteData const&amp;) + 167 (WebFrameLoaderClient.mm:1353)
3   com.apple.WebCore             	0x000000010c3d99d7 WebCore::FrameLoader::load(WebCore::FrameLoadRequest&amp;&amp;) + 583 (FrameLoader.cpp:1454)
4   com.apple.WebKitLegacy        	0x000000010b0faf90 -[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:] + 1248
5   com.apple.WebKitLegacy        	0x000000010b0fb439 -[WebFrame _loadHTMLString:baseURL:unreachableURL:] + 89 (WebFrame.mm:2548)
6   TestWebKitAPI                 	0x00000001084093fb TestWebKitAPI::WebKitLegacy_StopLoadingFromDidFinishLoading_Test::TestBody() + 197 (StopLoadingFromDidFinishLoading.mm:54)
7   TestWebKitAPI                 	0x00000001084e3958 testing::Test::Run() + 92
8   TestWebKitAPI                 	0x00000001084e41b4 testing::internal::TestInfoImpl::Run() + 180
9   TestWebKitAPI                 	0x00000001084e459c testing::TestCase::Run() + 196
10  TestWebKitAPI                 	0x00000001084e7d76 testing::internal::UnitTestImpl::RunAllTests() + 614
11  TestWebKitAPI                 	0x0000000108411bee TestWebKitAPI::TestsController::run(int, char**) + 120 (TestsController.cpp:86)
12  TestWebKitAPI                 	0x00000001084c37fb main + 344 (mainMac.mm:52)
13  libdyld.dylib                 	0x00007fff7a2df015 start + 1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1431952</commentid>
    <comment_count>15</comment_count>
      <attachid>342443</attachid>
    <who name="Dawei Fenton (:realdawei)">realdawei</who>
    <bug_when>2018-06-11 10:42:22 -0700</bug_when>
    <thetext>Created attachment 342443
Sample Crash Log</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1431996</commentid>
    <comment_count>16</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2018-06-11 12:21:00 -0700</bug_when>
    <thetext>OK, fine to roll out if the test is failing. I can fix the problem and re-land later.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1431998</commentid>
    <comment_count>17</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2018-06-11 12:22:16 -0700</bug_when>
    <thetext>Oh, I see why it’s failing. The error is in the test, not WebCore and is really trivial to fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1431999</commentid>
    <comment_count>18</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2018-06-11 12:22:46 -0700</bug_when>
    <thetext>Feel free to roll out, or to just disable this one test. Either way I can easily quickly fix this once I get to a computer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1432000</commentid>
    <comment_count>19</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2018-06-11 12:24:38 -0700</bug_when>
    <thetext>Here’s the fix for StopLoadingFromDidFinishLoading.mm; resourceLoadDelegate is not retained so it needs to be this:

-     webView.get().resourceLoadDelegate = adoptNS([[StopLoadingFromDidFinishLoadingDelegate alloc] init]).get();
+     auto resourceLoadDelegate = adoptNS([[StopLoadingFromDidFinishLoadingDelegate alloc] init]);
+     webView.get().resourceLoadDelegate = resourceLoadDelegate.get();

The spacing isn’t right on the change, but that will fix it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1432011</commentid>
    <comment_count>20</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2018-06-11 12:56:07 -0700</bug_when>
    <thetext>(In reply to Darin Adler from comment #19)
&gt; Here’s the fix for StopLoadingFromDidFinishLoading.mm; resourceLoadDelegate
&gt; is not retained so it needs to be this:
&gt; 
&gt; -     webView.get().resourceLoadDelegate =
&gt; adoptNS([[StopLoadingFromDidFinishLoadingDelegate alloc] init]).get();
&gt; +     auto resourceLoadDelegate =
&gt; adoptNS([[StopLoadingFromDidFinishLoadingDelegate alloc] init]);
&gt; +     webView.get().resourceLoadDelegate = resourceLoadDelegate.get();
&gt; 
&gt; The spacing isn’t right on the change, but that will fix it.

Followup landed in https://trac.webkit.org/changeset/232727/webkit</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1432012</commentid>
    <comment_count>21</comment_count>
    <who name="Dawei Fenton (:realdawei)">realdawei</who>
    <bug_when>2018-06-11 13:00:15 -0700</bug_when>
    <thetext>(In reply to Brady Eidson from comment #20)
&gt; (In reply to Darin Adler from comment #19)
&gt; &gt; Here’s the fix for StopLoadingFromDidFinishLoading.mm; resourceLoadDelegate
&gt; &gt; is not retained so it needs to be this:
&gt; &gt; 
&gt; &gt; -     webView.get().resourceLoadDelegate =
&gt; &gt; adoptNS([[StopLoadingFromDidFinishLoadingDelegate alloc] init]).get();
&gt; &gt; +     auto resourceLoadDelegate =
&gt; &gt; adoptNS([[StopLoadingFromDidFinishLoadingDelegate alloc] init]);
&gt; &gt; +     webView.get().resourceLoadDelegate = resourceLoadDelegate.get();
&gt; &gt; 
&gt; &gt; The spacing isn’t right on the change, but that will fix it.
&gt; 
&gt; Followup landed in https://trac.webkit.org/changeset/232727/webkit

great thanks!</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>342292</attachid>
            <date>2018-06-08 10:41:23 -0700</date>
            <delta_ts>2018-06-08 15:21:18 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-186436-20180608104122.patch</filename>
            <type>text/plain</type>
            <size>32092</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjMyNjI2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDliYmQwNDljM2I1YmEwOGIyN2E2YzBk
YzcxMDVjMGVlMmIwMTc0NjMuLjFhYWI0ODJmZTNmMzBiMjg0Y2YyZDQ5ZjkxYWZmMDhmMjExYTJl
MTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMTgtMDYtMDggIERhcmluIEFkbGVyICA8ZGFyaW5A
YXBwbGUuY29tPgorCisgICAgICAgIFtDb2NvYV0gUmVtb3ZlIGFsbCB1c2VzIG9mIE5TQXV0b3Jl
bGVhc2VQb29sIGFzIHBhcnQgb2YgcHJlcGFyYXRpb24gZm9yIEFSQworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg2NDM2CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXVEYueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvajogQWRkZWQgRm91bmRhdGlvblNQSS5oCisKKyAgICAgICAgKiB3dGYvQXV0b2RyYWlu
ZWRQb29sLmg6IFN0cmVhbWxpbmVkIGhlYWRlciBhIGJpdCBhbmQgYWRkZWQgc29tZSBjb21tZW50
cy4KKyAgICAgICAgKiB3dGYvQXV0b2RyYWluZWRQb29sTWFjLm1tOgorICAgICAgICAoV1RGOjpB
dXRvZHJhaW5lZFBvb2w6OkF1dG9kcmFpbmVkUG9vbCk6IFVzZSBOU1B1c2gvUG9wQXV0b3JlbGVh
c2VQb29sIGluc3RlYWQgb2YKKyAgICAgICAgdGhlIE5TQXV0b3JlbGVhc2VQb29sIGNsYXNzLgor
ICAgICAgICAoV1RGOjpBdXRvZHJhaW5lZFBvb2w6On5BdXRvZHJhaW5lZFBvb2wpOiBEaXR0by4K
KworICAgICAgICAqIHd0Zi9QbGF0Zm9ybU1hYy5jbWFrZTogQWRkZWQgRm91bmRhdGlvblNQSS5o
LgorCisgICAgICAgICogd3RmL3NwaS9jb2NvYS9Gb3VuZGF0aW9uU1BJLmg6IE1vdmVkIGZyb20g
U291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvRm91bmRhdGlvblNQSS5oLgorCiAyMDE4
LTA2LTA3ICBZdXN1a2UgU3V6dWtpICA8dXRhdGFuZS50ZWFAZ21haWwuY29tPgogCiAgICAgICAg
IFtXVEZdIEFkZCBXb3JrZXJQb29sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzk3ZjE3NmExZWM1ZTFhZDgzYmFl
MWFkZmYzMGQ1ZGM1Y2FhNmI3Yy4uZDFmYjZlYjg5ZDcxMzk1MDE3MGMzYzhlZWI1OGNlZmNjODU3
Yjk5NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDE4LTA2LTA4ICBEYXJpbiBBZGxl
ciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBbQ29jb2FdIFJlbW92ZSBhbGwgdXNlcyBv
ZiBOU0F1dG9yZWxlYXNlUG9vbCBhcyBwYXJ0IG9mIHByZXBhcmF0aW9uIGZvciBBUkMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NjQzNgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogYnJpZGdlL29iamMv
b2JqY19jbGFzcy5tbTogVXNlIGltcG9ydCBpbnN0ZWFkIG9mIGluY2x1ZGUuCisKKyAgICAgICAg
KiBicmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLmg6IFJlcGxhY2VkIF9wb29sIG1lbWJlciB0byBo
b2xkIGFuIG9iamVjdCB3aXRoCisgICAgICAgIG1fYXV0b3JlbGVhc2VQb29sIG1lbWJlciB0byBo
b2xkIGEgdG9rZW4gZnJvbSBOU1B1c2hBdXRvcmVsZWFzZVBvb2wuIEFsc28KKyAgICAgICAgaW5p
dGlhbGl6ZSBhbGwgZGF0YSBtZW1iZXJzIGhlcmUgaW4gdGhlIGNsYXNzIGRlZmluaXRpb24uCisK
KyAgICAgICAgKiBicmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLm1tOgorICAgICAgICAoT2JqY0lu
c3RhbmNlOjpPYmpjSW5zdGFuY2UpOiBNb3ZlZCBtb3N0IGluaXRpYWxpemF0aW9uIHRvIGNsYXNz
IGRlZmluaXRpb24uCisgICAgICAgIChPYmpjSW5zdGFuY2U6OnZpcnR1YWxCZWdpbik6IFVzZSBO
U1B1c2hBdXRvcmVsZWFzZVBvb2wgaW5zdGVhZCBvZgorICAgICAgICBOU0F1dG9yZWxlYXNlUG9v
bCBjbGFzcy4KKyAgICAgICAgKE9iamNJbnN0YW5jZTo6dmlydHVhbEVuZCk6IFVzZSBOU1BvcEF1
dG9yZWxlYXNlUG9vbC4KKworICAgICAgICAqIGJyaWRnZS9vYmpjL29iamNfcnVudGltZS5tbTog
VXNlIGltcG9ydCBpbnN0ZWFkIG9mIGluY2x1ZGUuCisgICAgICAgICogYnJpZGdlL29iamMvb2Jq
Y191dGlsaXR5Lm1tOiBEaXR0by4KKworICAgICAgICAqIHBsYXRmb3JtL2lvcy93YWsvV2ViQ29y
ZVRocmVhZC5tbTogUmUtc29ydGVkIGluY2x1ZGVzLiBSZW1vdmVkIGRlY2xhcmF0aW9uIG9mCisg
ICAgICAgIGF1dG9yZWxlYXNlIHBvb2wgU1BJIGFuZCB1c2UgRm91bmRhdGlvblNQSS5oIGluc3Rl
YWQuCisKIDIwMTgtMDYtMDggIFphbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAg
ICAgICBbTEZDXSBBZGQgdmVydGljYWwgbWFyZ2luIGNvbXB1dGF0aW9uIGZvciBpbmxpbmUsIGJs
b2NrLWxldmVsLCBpbmxpbmUtYmxvY2sgYW5kIGZsb2F0aW5nIHJlcGxhY2VkIGVsZW1lbnRzCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUv
UEFML0NoYW5nZUxvZwppbmRleCAzMTZiOTIxZjE5OGVmNTM4ODdlOTk0ZGE2ZDA0ZmJkYmIxNmE5
ODM3Li5kZTgwZjkyYzEzMzIzNWU3ZTIxOWUyOWEwMTUyOGMwYWUwNzhjNDU5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxOC0wNi0wOCAgRGFyaW4gQWRsZXIgIDxkYXJp
bkBhcHBsZS5jb20+CisKKyAgICAgICAgW0NvY29hXSBSZW1vdmUgYWxsIHVzZXMgb2YgTlNBdXRv
cmVsZWFzZVBvb2wgYXMgcGFydCBvZiBwcmVwYXJhdGlvbiBmb3IgQVJDCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODY0MzYKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFBBTC54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qOiBSZW1vdmVkIEZvdW5kYXRpb25TUEkuaC4KKyAgICAgICAgKiBwYWwvUGxhdGZv
cm1NYWMuY21ha2U6IERpdHRvLgorICAgICAgICAqIHBhbC9zcGkvY29jb2EvRm91bmRhdGlvblNQ
SS5oOiBNb3ZlZCBpbnRvIFdURiBwcm9qZWN0LgorCiAyMDE4LTA2LTA3ICBDaHJpcyBEdW1leiAg
PGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIGJhc2UgY2xhc3MgdG8gZ2V0IFdlYWtQ
dHJGYWN0b3J5IG1lbWJlciBhbmQgYXZvaWQgc29tZSBib2lsZXJwbGF0ZSBjb2RlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9DaGFuZ2VMb2cKaW5kZXggZjRjNTk0OTRjYmYxYTNiNmVlZGE4Y2RhNWJkNzg3Yzk1
MzhmNDM3MC4uZjI5ZGVlNWUzNTlmMDNjOTU2Y2E4MjljZGE1NmZmZjIyZDBlOTdiZSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJL
aXRMZWdhY3kvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDE4LTA2LTA4ICBEYXJp
biBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBbQ29jb2FdIFJlbW92ZSBhbGwg
dXNlcyBvZiBOU0F1dG9yZWxlYXNlUG9vbCBhcyBwYXJ0IG9mIHByZXBhcmF0aW9uIGZvciBBUkMK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NjQzNgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogQ2FyYm9u
L0NhcmJvblV0aWxzLm06IFVwZGF0ZWQgaW5jbHVkZSBsb2NhdGlvbiBvZiBGb3VuZGF0aW9uU1BJ
LmguCisgICAgICAgIChXZWJJbml0Rm9yQ2FyYm9uKTogVXNlIE5TUHVzaC9Qb3BBdXRvcmVsZWFz
ZVBvb2wgaW5zdGVhZCBvZiBOU0F1dG9yZWxlYXNlUG9vbCBvYmplY3QuCisgICAgICAgIChQb29s
Q2xlYW5lcik6IERpdHRvLgorCisgICAgICAgICogSGlzdG9yeS9XZWJIaXN0b3J5Lm1tOgorICAg
ICAgICAoLVtXZWJIaXN0b3J5UHJpdmF0ZSBsb2FkSGlzdG9yeUd1dHNGcm9tVVJMOnNhdmVkSXRl
bXNDb3VudDpjb2xsZWN0RGlzY2FyZGVkSXRlbXNJbnRvOmVycm9yOl0pOgorICAgICAgICBVc2Ug
TlNQdXNoL1BvcEF1dG9yZWxlYXNlUG9vbCBpbnN0ZWFkIG9mIE5TQXV0b3JlbGVhc2VQb29sIG9i
amVjdC4gQWxzbyBhZGRlZCBjb21tZW50CisgICAgICAgIGFib3V0IHBvc3NpYmx5IHN3aXRjaGlu
ZyB0byBAYXV0b3JlbGVhc2Vwb29sIGFuZCBzd2l0Y2hlZCBmcm9tIE5TRW51bWVyYXRvciB0byBh
IG1vZGVybgorICAgICAgICBmb3IgbG9vcC4KKyAgICAgICAgKiBXZWJWaWV3L1dlYlZpZXcubW06
CisgICAgICAgICgtW1dlYlZpZXcgcmVjdHNGb3JUZXh0TWF0Y2hlc10pOiBEaXR0by4KKwogMjAx
OC0wNi0wNyAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBi
YXNlIGNsYXNzIHRvIGdldCBXZWFrUHRyRmFjdG9yeSBtZW1iZXIgYW5kIGF2b2lkIHNvbWUgYm9p
bGVycGxhdGUgY29kZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi9XVEYueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvaiBiL1NvdXJjZS9XVEYvV1RGLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5k
ZXggZmIyZWU3ZTFhMDg5NzM0NDEyNDg3NTgwZjhkZmJjMjA5NzNjYTcwYi4uNzY0Y2MzOTY4Mzlh
ZTFmYTdkZjM0ZTk4ZTA5Mjk0OGM0ODEyYjcyMSAxMDA2NDQKLS0tIGEvU291cmNlL1dURi9XVEYu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV1RGL1dURi54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCkBAIC00MDgsNiArNDA4LDcgQEAKIAkJOTM5MzRCRDIxOEExRThDMzAw
RDBENkExIC8qIFN0cmluZ1ZpZXdPYmpDLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2Jq
Y3BwOyBuYW1lID0gU3RyaW5nVmlld09iakMubW07IHBhdGggPSBtYWMvU3RyaW5nVmlld09iakMu
bW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzOTM0QkQ0MThBMUYxNjkwMEQwRDZB
MSAvKiBTdHJpbmdWaWV3Q0YuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1l
ID0gU3RyaW5nVmlld0NGLmNwcDsgcGF0aCA9IGNmL1N0cmluZ1ZpZXdDRi5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzQUM5MUE3MTg5NDJGQzQwMDI0NDkzOSAvKiBMQ2hhci5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMQ2hhci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk5M0QxOTFDRjIwQ0FFQ0U4MDBDNTFCOEUgLyogRm91bmRhdGlvblNQ
SS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBGb3VuZGF0aW9uU1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTkzRERFOTMxMUNEQzA1MkQwMEZEMzQ5MSAvKiBkeWxkU1BJLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IGR5bGRTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJOTNGMTk5M0QxOUQ3OTU4RDAwQzIzOTBCIC8qIFN0cmluZ1ZpZXcuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3RyaW5nVmlldy5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk3NENGQzhEMTZBNEYzMjcwMDZENTQwNCAvKiBXZWFrUHRy
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYWtQdHIuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTEyNjksNiArMTI3MCw3IEBACiAJCUNFNDY1MTZDMTlEQjFG
QjQwMDNFQ0EwNSAvKiBjb2NvYSAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRy
ZW4gPSAoCisJCQkJOTNEMTkxQ0YyMENBRUNFODAwQzUxQjhFIC8qIEZvdW5kYXRpb25TUEkuaCAq
LywKIAkJCQlDRTQ2NTE2RDE5REIxRkI0MDAzRUNBMDUgLyogTlNNYXBUYWJsZVNQSS5oICovLAog
CQkJCUE1MDk4QjAxMUMxNkE0RjkwMDA4Nzc5NyAvKiBTZWN1cml0eVNQSS5oICovLAogCQkJKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL0F1dG9kcmFpbmVkUG9vbC5oIGIvU291cmNlL1dU
Ri93dGYvQXV0b2RyYWluZWRQb29sLmgKaW5kZXggNmYwMmM1ZGY0ZGVlN2VkM2VmM2Y5Njk4YjQ1
OTA5OWI3NzJhOGM5NC4uNmMyMDE5MTMyYWI2MTZlOTViN2IzYzJjZWVmNmMwOWE5ZmI3MWUzYSAx
MDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvQXV0b2RyYWluZWRQb29sLmgKKysrIGIvU291cmNl
L1dURi93dGYvQXV0b2RyYWluZWRQb29sLmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJp
Z2h0IChDKSAyMDA3LCAyMDEzIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENv
cHlyaWdodCAoQykgMjAwNy0yMDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAq
CiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMjYsMzYgKzI2LDI5IEBACiAgKiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgogICovCiAKLSNpZm5kZWYgQXV0b2RyYWluZWRQb29sX2gKLSNkZWZpbmUgQXV0b2RyYWlu
ZWRQb29sX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+CiAK
LSNpZiBVU0UoRk9VTkRBVElPTikgJiYgIWRlZmluZWQoX19PQkpDX18pCi10eXBlZGVmIHN0cnVj
dCBvYmpjX29iamVjdCAqaWQ7Ci0jZW5kaWYKLQogbmFtZXNwYWNlIFdURiB7CiAKKy8vIFRoaXMg
Y2xhc3MgYWxsb3dzIG5vbi1PYmplY3RpdmUtQyBDKysgY29kZSB0byBjcmVhdGUgYW4gYXV0b3Jl
bGVhc2UgcG9vbC4KKy8vIEl0IHNob3VsZCBub3QgYmUgdXNlZCBpbiBPYmplY3RpdmUtQysrIGNv
ZGU7IGluc3RlYWQgQGF1dG9yZWxlYXNlcG9vbCBzaG91bGQgYmUgdXNlZC4KKy8vIEl0IGNhbiBi
ZSB1c2VkIGluIGNyb3NzLXBsYXRmb3JtIGNvZGU7IHdpbGwgY29tcGlsZSBkb3duIHRvIG5vdGhp
bmcgZm9yIG5vbi1Db2NvYSBwbGF0Zm9ybXMuCisKIGNsYXNzIEF1dG9kcmFpbmVkUG9vbCB7CiAg
ICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoQXV0b2RyYWluZWRQb29sKTsKLXB1YmxpYzoKKwogI2lm
IFVTRShGT1VOREFUSU9OKQorcHVibGljOgogICAgIFdURl9FWFBPUlRfUFJJVkFURSBBdXRvZHJh
aW5lZFBvb2woKTsKICAgICBXVEZfRVhQT1JUX1BSSVZBVEUgfkF1dG9kcmFpbmVkUG9vbCgpOwot
I2Vsc2UKLSAgICBleHBsaWNpdCBBdXRvZHJhaW5lZFBvb2woKSB7IH0KLSAgICB+QXV0b2RyYWlu
ZWRQb29sKCkgeyB9Ci0jZW5kaWYKLSAgICAKKwogcHJpdmF0ZToKLSNpZiBVU0UoRk9VTkRBVElP
TikKLSAgICBpZCBtX3Bvb2w7CisgICAgdm9pZCogbV9wb29sOwogI2VuZGlmCiB9OwogCiB9IC8v
IG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpBdXRvZHJhaW5lZFBvb2w7Ci0KLSNlbmRpZgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvQXV0b2RyYWluZWRQb29sTWFjLm1tIGIvU291cmNl
L1dURi93dGYvQXV0b2RyYWluZWRQb29sTWFjLm1tCmluZGV4IGYwYTc1ZDJlMmJmNjU2NzRiYzQz
NGZlOTNhNjNkYjk3ZGQ0YTFiZWUuLjAyYTE1MTkwY2MwYmU4ODRlMWE5OWU4Y2E2OTVhMzk5ZTgx
MGVkY2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL0F1dG9kcmFpbmVkUG9vbE1hYy5tbQor
KysgYi9Tb3VyY2UvV1RGL3d0Zi9BdXRvZHJhaW5lZFBvb2xNYWMubW0KQEAgLTEsNSArMSw1IEBA
CiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA3LCAyMDEzIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNy0yMDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMjksMTggKzI5
LDE4IEBACiAjaW1wb3J0ICJjb25maWcuaCIKICNpbXBvcnQgIkF1dG9kcmFpbmVkUG9vbC5oIgog
Ci0jaW1wb3J0IDxGb3VuZGF0aW9uL0ZvdW5kYXRpb24uaD4KKyNpbXBvcnQgPHd0Zi9zcGkvY29j
b2EvRm91bmRhdGlvblNQSS5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIAogQXV0b2RyYWluZWRQb29s
OjpBdXRvZHJhaW5lZFBvb2woKQotICAgIDogbV9wb29sKFtbTlNBdXRvcmVsZWFzZVBvb2wgYWxs
b2NdIGluaXRdKQorICAgIDogbV9wb29sKE5TUHVzaEF1dG9yZWxlYXNlUG9vbCgwKSkKIHsgCiB9
CiAKIEF1dG9kcmFpbmVkUG9vbDo6fkF1dG9kcmFpbmVkUG9vbCgpCiB7Ci0gICAgW21fcG9vbCBk
cmFpbl07CisgICAgTlNQb3BBdXRvcmVsZWFzZVBvb2wobV9wb29sKTsKIH0KIAogfSAvLyBuYW1l
c3BhY2UgV1RGCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybU1hYy5jbWFrZSBi
L1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtTWFjLmNtYWtlCmluZGV4IGEyNmUwNTAzZTVmMzVlOTk0
ZjJjMzliMzk5MWYzZDhjZTY0NGIzNTYuLjNlN2ExMWRkNzJlNjE0NDhjMjg2MDRhYWMzMDVmMjBi
YTFhNDNjZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtTWFjLmNtYWtlCisr
KyBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtTWFjLmNtYWtlCkBAIC0yMSw2ICsyMSw3IEBAIGxp
c3QoQVBQRU5EIFdURl9QVUJMSUNfSEVBREVSUwogICAgIHNwaS9jZi9DRkJ1bmRsZVNQSS5oCiAg
ICAgc3BpL2NmL0NGU3RyaW5nU1BJLmgKIAorICAgIHNwaS9jb2NvYS9Gb3VuZGF0aW9uU1BJLmgK
ICAgICBzcGkvY29jb2EvTlNNYXBUYWJsZVNQSS5oCiAgICAgc3BpL2NvY29hL1NlY3VyaXR5U1BJ
LmgKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvc3BpL2NvY29hL0ZvdW5kYXRpb25TUEku
aCBiL1NvdXJjZS9XVEYvd3RmL3NwaS9jb2NvYS9Gb3VuZGF0aW9uU1BJLmgKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
Njg0MTc1ZDEyYjllM2M3YmRmMjZkMmViYjUzMDM2OGVhNzdlZWUwZgotLS0gL2Rldi9udWxsCisr
KyBiL1NvdXJjZS9XVEYvd3RmL3NwaS9jb2NvYS9Gb3VuZGF0aW9uU1BJLmgKQEAgLTAsMCArMSw0
MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBM
RSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisg
KiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAq
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaWYgVVNFKEFQUExFX0lOVEVSTkFM
X1NESykKKworI2luY2x1ZGUgPEZvdW5kYXRpb24vTlNQcml2YXRlRGVjbHMuaD4KKworI2VuZGlm
CisKK3R5cGVkZWYgdm9pZCogTlNBdXRvcmVsZWFzZVBvb2xNYXJrOworCitXVEZfRVhURVJOX0Nf
QkVHSU4KKworTlNBdXRvcmVsZWFzZVBvb2xNYXJrIE5TUHVzaEF1dG9yZWxlYXNlUG9vbChOU1VJ
bnRlZ2VyIGNhcGFjaXR5KTsKK3ZvaWQgTlNQb3BBdXRvcmVsZWFzZVBvb2woTlNBdXRvcmVsZWFz
ZVBvb2xNYXJrKTsKKworV1RGX0VYVEVSTl9DX0VORApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvUEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvUEFM
L1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGU0M2UxYjg5ZTYzMGEyMTJhYjg2
M2YyMzFjZmFiOTdmMDlhODRiODkuLmM2ZjdjOWU0N2UxNDc2NzE0MmEyNWQyMWFjMGNmZGY2ZTcy
M2JiYjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2oKQEAgLTExMSw3ICsxMTEsNiBAQAogCQk1NzBBQjhGOTIwQUY2RTNEMDBCOEJFODcg
LyogTlNYUENDb25uZWN0aW9uU1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA1NzBBQjhGODIwQUY2RTNEMDBCOEJFODcgLyogTlNYUENDb25uZWN0aW9u
U1BJLmggKi87IH07CiAJCTU3RjEyNTE4MjA1Nzg3RDcwMDFBQjhBNiAvKiBEZXZpY2VJZGVudGl0
eVNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTdG
MTI1MTcyMDU3ODdDODAwMUFCOEE2IC8qIERldmljZUlkZW50aXR5U1BJLmggKi87IH07CiAJCTdB
MTY1NjQ0MUY5N0IyQjkwMEJBM0NFNCAvKiBOU0tleWVkQXJjaGl2ZXJTUEkuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBMTY1NjQzMUY5N0IyQjgwMEJB
M0NFNCAvKiBOU0tleWVkQXJjaGl2ZXJTUEkuaCAqLzsgfTsKLQkJQTEwMjY1ODcxRjU2NzQ2MTAw
QjRDODQ0IC8qIEZvdW5kYXRpb25TUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEExMDI2NTg2MUY1Njc0NjEwMEI0Qzg0NCAvKiBGb3VuZGF0aW9uU1BJ
LmggKi87IH07CiAJCUExMDI2NTg5MUY1Njc0N0EwMEI0Qzg0NCAvKiBISVRvb2xib3hTUEkuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExMDI2NTg4MUY1
Njc0N0EwMEI0Qzg0NCAvKiBISVRvb2xib3hTUEkuaCAqLzsgfTsKIAkJQTEwMjY1OEIxRjU2NzQ4
QzAwQjRDODQ0IC8qIFF1aWNrRHJhd1NQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQTEwMjY1OEExRjU2NzQ4QzAwQjRDODQ0IC8qIFF1aWNrRHJhd1NQ
SS5oICovOyB9OwogCQlBMTAyNjU4RTFGNTY3RTlEMDBCNEM4NDQgLyogSElTZXJ2aWNlc1NQSS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTEwMjY1OEQx
RjU2N0U5RDAwQjRDODQ0IC8qIEhJU2VydmljZXNTUEkuaCAqLzsgfTsKQEAgLTI1OSw3ICsyNTgs
NiBAQAogCQk1N0YxMjUxNzIwNTc4N0M4MDAxQUI4QTYgLyogRGV2aWNlSWRlbnRpdHlTUEkuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gRGV2aWNlSWRlbnRpdHlTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJN0ExNjU2NDMxRjk3QjJCODAwQkEzQ0U0IC8qIE5TS2V5ZWRBcmNoaXZlclNQSS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOU0tleWVkQXJjaGl2ZXJTUEkuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTNFNTkwOUMxRjkzQkYxRTAwNjdGOENGIC8q
IFVuZW5jb2RhYmxlSGFuZGxpbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVW5lbmNvZGFibGVIYW5kbGlu
Zy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlBMTAyNjU4NjFGNTY3NDYxMDBCNEM4
NDQgLyogRm91bmRhdGlvblNQSS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBG
b3VuZGF0aW9uU1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUExMDI2NTg4MUY1
Njc0N0EwMEI0Qzg0NCAvKiBISVRvb2xib3hTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSElUb29sYm94U1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUEx
MDI2NThBMUY1Njc0OEMwMEI0Qzg0NCAvKiBRdWlja0RyYXdTUEkuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gUXVpY2tEcmF3U1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCUExMDI2NThEMUY1NjdFOUQwMEI0Qzg0NCAvKiBISVNlcnZpY2VzU1BJLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEhJU2VydmljZXNTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAg
LTM2Miw3ICszNjAsNiBAQAogCQkJCTBDMkRBMTI0MUYzQkVCNDkwMERCQzMxNyAvKiBDb3JlVGV4
dFNQSS5oICovLAogCQkJCTBDMkRBMTI1MUYzQkVCNDkwMERCQzMxNyAvKiBEYXRhRGV0ZWN0b3Jz
Q29yZVNQSS5oICovLAogCQkJCTU3RjEyNTE3MjA1Nzg3QzgwMDFBQjhBNiAvKiBEZXZpY2VJZGVu
dGl0eVNQSS5oICovLAotCQkJCUExMDI2NTg2MUY1Njc0NjEwMEI0Qzg0NCAvKiBGb3VuZGF0aW9u
U1BJLmggKi8sCiAJCQkJMEMyREExMjYxRjNCRUI0OTAwREJDMzE3IC8qIElPUE1MaWJTUEkuaCAq
LywKIAkJCQkwQzJEQTEyNzFGM0JFQjQ5MDBEQkMzMTcgLyogSU9QU0xpYlNQSS5oICovLAogCQkJ
CTBDMkRBMTI4MUYzQkVCNDkwMERCQzMxNyAvKiBJT1JldHVyblNQSS5oICovLApAQCAtNjM2LDcg
KzYzMyw2IEBACiAJCQkJNTdGMTI1MTgyMDU3ODdENzAwMUFCOEE2IC8qIERldmljZUlkZW50aXR5
U1BJLmggaW4gSGVhZGVycyAqLywKIAkJCQkwQzJEOUU3MzFFRUY1QUY2MDBEQkMzMTcgLyogRXhw
b3J0TWFjcm9zLmggaW4gSGVhZGVycyAqLywKIAkJCQlGNDQyOTE2MDFGQTUyNjFFMDAyQ0M5M0Ug
LyogRmlsZVNpemVGb3JtYXR0ZXIuaCBpbiBIZWFkZXJzICovLAotCQkJCUExMDI2NTg3MUY1Njc0
NjEwMEI0Qzg0NCAvKiBGb3VuZGF0aW9uU1BJLmggaW4gSGVhZGVycyAqLywKIAkJCQkwQzVBRjkx
QjFGNDNBNEM3MDAyRUFDMDIgLyogR3JhcGhpY3NTZXJ2aWNlc1NQSS5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJQTEwMjY1OEUxRjU2N0U5RDAwQjRDODQ0IC8qIEhJU2VydmljZXNTUEkuaCBpbiBIZWFk
ZXJzICovLAogCQkJCUExMDI2NTg5MUY1Njc0N0EwMEI0Qzg0NCAvKiBISVRvb2xib3hTUEkuaCBp
biBIZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9QbGF0Zm9y
bU1hYy5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvUGxhdGZvcm1NYWMuY21ha2UKaW5k
ZXggN2UzODJkODhlMjQxZWVjNjkwYzVjNWU5MmRhMzk4MjQ0NjU3ODE5Mi4uYjJhY2ZiYjEzOTc5
YTEwMDczY2JkYjM0OTVjMDI4OWJmNWQyM2RkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
UEFML3BhbC9QbGF0Zm9ybU1hYy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL1Bs
YXRmb3JtTWFjLmNtYWtlCkBAIC0xNyw3ICsxNyw2IEBAIGxpc3QoQVBQRU5EIFBBTF9QVUJMSUNf
SEVBREVSUwogICAgIHNwaS9jb2NvYS9DRk5TVVJMQ29ubmVjdGlvblNQSS5oCiAgICAgc3BpL2Nv
Y29hL0NvcmVUZXh0U1BJLmgKICAgICBzcGkvY29jb2EvRGF0YURldGVjdG9yc0NvcmVTUEkuaAot
ICAgIHNwaS9jb2NvYS9Gb3VuZGF0aW9uU1BJLmgKICAgICBzcGkvY29jb2EvSU9QTUxpYlNQSS5o
CiAgICAgc3BpL2NvY29hL0lPUFNMaWJTUEkuaAogICAgIHNwaS9jb2NvYS9JT1JldHVyblNQSS5o
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9Gb3VuZGF0aW9u
U1BJLmggYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9Gb3VuZGF0aW9uU1BJLmgK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDY4NDE3NWQxMmI5ZTNjN2JkZjI2ZDJlYmI1
MzAzNjhlYTc3ZWVlMGYuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAK
LS0tIGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvRm91bmRhdGlvblNQSS5oCisr
KyAvZGV2L251bGwKQEAgLTEsNDEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNyBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMg
SVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRP
UlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MK
LSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgot
ICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNwcmFnbWEgb25jZQot
Ci0jaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKLQotI2luY2x1ZGUgPEZvdW5kYXRpb24vTlNQ
cml2YXRlRGVjbHMuaD4KLQotI2VuZGlmCi0KLXR5cGVkZWYgdm9pZCogTlNBdXRvcmVsZWFzZVBv
b2xNYXJrOwotCi1XVEZfRVhURVJOX0NfQkVHSU4KLQotTlNBdXRvcmVsZWFzZVBvb2xNYXJrIE5T
UHVzaEF1dG9yZWxlYXNlUG9vbChOU1VJbnRlZ2VyIGNhcGFjaXR5KTsKLXZvaWQgTlNQb3BBdXRv
cmVsZWFzZVBvb2woTlNBdXRvcmVsZWFzZVBvb2xNYXJrKTsKLQotV1RGX0VYVEVSTl9DX0VORApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19jbGFzcy5tbSBiL1Nv
dXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfY2xhc3MubW0KaW5kZXggY2E0YTZjMmRlYzVi
ODJiNDA2YWRmZWQxMTIwOTMxMGI2NjgzYTZkZi4uY2UxZWY2NTU3YTA3NjNhN2QzNDMwYTNiZjk4
NmExOTg3ZjhjYjM1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2Jq
Y19jbGFzcy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX2NsYXNzLm1t
CkBAIC0yMywxMiArMjMsMTIgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpbmNsdWRlICJj
b25maWcuaCIKLSNpbmNsdWRlICJvYmpjX2NsYXNzLmgiCisjaW1wb3J0ICJjb25maWcuaCIKKyNp
bXBvcnQgIm9iamNfY2xhc3MuaCIKIAotI2luY2x1ZGUgIm9iamNfaW5zdGFuY2UuaCIKLSNpbmNs
dWRlICJXZWJTY3JpcHRPYmplY3QuaCIKLSNpbmNsdWRlICJXZWJTY3JpcHRPYmplY3RQcm90b2Nv
bC5oIgorI2ltcG9ydCAiV2ViU2NyaXB0T2JqZWN0LmgiCisjaW1wb3J0ICJXZWJTY3JpcHRPYmpl
Y3RQcm90b2NvbC5oIgorI2ltcG9ydCAib2JqY19pbnN0YW5jZS5oIgogCiBuYW1lc3BhY2UgSlND
IHsKIG5hbWVzcGFjZSBCaW5kaW5ncyB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9icmlk
Z2Uvb2JqYy9vYmpjX2luc3RhbmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpj
X2luc3RhbmNlLmgKaW5kZXggOTkzYTZmNTcxZTYzYmZjZGVjYmI0Zjk0ZDNkMDVlODdkOGYyNGUz
Zi4uNWYyODVlOTFiOGRmNWQ1MTVlNTU2MGQ0NDk2NWRhNjQwNDE1NGViNCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19pbnN0YW5jZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfaW5zdGFuY2UuaApAQCAtMjMsMTEgKzIzLDggQEAKICAq
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgQklORElOR1NfT0JKQ19JTlNUQU5DRV9IXwot
I2RlZmluZSBCSU5ESU5HU19PQkpDX0lOU1RBTkNFX0hfCi0KLSNpbmNsdWRlICJvYmpjX2NsYXNz
LmgiCi0jaW5jbHVkZSAib2JqY191dGlsaXR5LmgiCisjaW1wb3J0ICJvYmpjX2NsYXNzLmgiCisj
aW1wb3J0ICJvYmpjX3V0aWxpdHkuaCIKIAogbmFtZXNwYWNlIEpTQyB7CiAKQEAgLTc1LDEzICs3
MiwxMSBAQCBwcml2YXRlOgogICAgIHZpcnR1YWwgUnVudGltZU9iamVjdCogbmV3UnVudGltZU9i
amVjdChFeGVjU3RhdGUqKTsKIAogICAgIFJldGFpblB0cjxPYmplY3RTdHJ1Y3RQdHI+IF9pbnN0
YW5jZTsKLSAgICBtdXRhYmxlIE9iamNDbGFzcyAqX2NsYXNzOwotICAgIE9iamVjdFN0cnVjdFB0
ciBfcG9vbDsKLSAgICBpbnQgX2JlZ2luQ291bnQ7CisgICAgbXV0YWJsZSBPYmpjQ2xhc3MqIF9j
bGFzcyB7IG51bGxwdHIgfTsKKyAgICB2b2lkKiBtX2F1dG9yZWxlYXNlUG9vbCB7IG51bGxwdHIg
fTsKKyAgICBpbnQgX2JlZ2luQ291bnQgeyAwIH07CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBCaW5k
aW5ncwogCiB9IC8vIG5hbWVzcGFjZSBKU0MKLQotI2VuZGlmIC8vIEJJTkRJTkdTX09CSkNfSU5T
VEFOQ0VfSF8KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfaW5z
dGFuY2UubW0gYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLm1tCmlu
ZGV4IDY4ZTU3MzEyZGFjMGE3YWE5NDM1ODNjODk4MThlOGU4YTM2ZjAzMTcuLmIxMjIxYzBlMTJj
ZDdhYzg2YzVhMGE0YzdjMTRjYjgwNTc5MTA2MjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JyaWRnZS9vYmpjL29iamNfaW5zdGFuY2UubW0KKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdl
L29iamMvb2JqY19pbnN0YW5jZS5tbQpAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQg
KEMpIDIwMDQsIDIwMDgtMjAwOSwgMjAxMywgMjAxNiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDQtMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTQwLDYgKzQwLDcg
QEAKICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+CiAjaW1wb3J0IDx3dGYvTmV2ZXJEZXN0cm95
ZWQuaD4KICNpbXBvcnQgPHd0Zi9UaHJlYWRTcGVjaWZpYy5oPgorI2ltcG9ydCA8d3RmL3NwaS9j
b2NvYS9Gb3VuZGF0aW9uU1BJLmg+CiAKICNpZmRlZiBOREVCVUcKICNkZWZpbmUgT0JKQ19MT0co
Zm9ybWF0QW5kQXJncy4uLikgKCh2b2lkKTApCkBAIC0xMDAsOSArMTAxLDYgQEAgdm9pZCBPYmpj
SW5zdGFuY2U6Om1vdmVHbG9iYWxFeGNlcHRpb25Ub0V4ZWNTdGF0ZShFeGVjU3RhdGUqIGV4ZWMp
CiBPYmpjSW5zdGFuY2U6Ok9iamNJbnN0YW5jZShpZCBpbnN0YW5jZSwgUmVmUHRyPFJvb3RPYmpl
Y3Q+JiYgcm9vdE9iamVjdCkgCiAgICAgOiBJbnN0YW5jZShXVEZNb3ZlKHJvb3RPYmplY3QpKQog
ICAgICwgX2luc3RhbmNlKGluc3RhbmNlKQotICAgICwgX2NsYXNzKDApCi0gICAgLCBfcG9vbCgw
KQotICAgICwgX2JlZ2luQ291bnQoMCkKIHsKIH0KIApAQCAtMTMzLDggKzEzMSw4IEBAIE9iamNJ
bnN0YW5jZTo6fk9iamNJbnN0YW5jZSgpCiAKIHZvaWQgT2JqY0luc3RhbmNlOjp2aXJ0dWFsQmVn
aW4oKQogewotICAgIGlmICghX3Bvb2wpCi0gICAgICAgIF9wb29sID0gW1tOU0F1dG9yZWxlYXNl
UG9vbCBhbGxvY10gaW5pdF07CisgICAgaWYgKCFtX2F1dG9yZWxlYXNlUG9vbCkKKyAgICAgICAg
bV9hdXRvcmVsZWFzZVBvb2wgPSBOU1B1c2hBdXRvcmVsZWFzZVBvb2woMCk7CiAgICAgX2JlZ2lu
Q291bnQrKzsKIH0KIApAQCAtMTQzLDggKzE0MSw5IEBAIHZvaWQgT2JqY0luc3RhbmNlOjp2aXJ0
dWFsRW5kKCkKICAgICBfYmVnaW5Db3VudC0tOwogICAgIEFTU0VSVChfYmVnaW5Db3VudCA+PSAw
KTsKICAgICBpZiAoIV9iZWdpbkNvdW50KSB7Ci0gICAgICAgIFtfcG9vbCBkcmFpbl07Ci0gICAg
ICAgIF9wb29sID0gMDsKKyAgICAgICAgQVNTRVJUKG1fYXV0b3JlbGVhc2VQb29sKTsKKyAgICAg
ICAgTlNQb3BBdXRvcmVsZWFzZVBvb2wobV9hdXRvcmVsZWFzZVBvb2wpOworICAgICAgICBtX2F1
dG9yZWxlYXNlUG9vbCA9IG51bGxwdHI7CiAgICAgfQogfQogCkBAIC01MDcsMTMgKzUwNiwxMSBA
QCBKU0M6OkpTVmFsdWUgT2JqY0luc3RhbmNlOjpzdHJpbmdWYWx1ZShFeGVjU3RhdGUqIGV4ZWMp
IGNvbnN0CiAKIEpTQzo6SlNWYWx1ZSBPYmpjSW5zdGFuY2U6Om51bWJlclZhbHVlKEV4ZWNTdGF0
ZSopIGNvbnN0CiB7Ci0gICAgLy8gRklYTUU6ICBJbXBsZW1lbnQgc29tZXRoaW5nIHNlbnNpYmxl
CiAgICAgcmV0dXJuIGpzTnVtYmVyKDApOwogfQogCiBKU0M6OkpTVmFsdWUgT2JqY0luc3RhbmNl
Ojpib29sZWFuVmFsdWUoKSBjb25zdAogewotICAgIC8vIEZJWE1FOiAgSW1wbGVtZW50IHNvbWV0
aGluZyBzZW5zaWJsZQogICAgIHJldHVybiBqc0Jvb2xlYW4oZmFsc2UpOwogfQogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX3J1bnRpbWUubW0gYi9Tb3VyY2Uv
V2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX3J1bnRpbWUubW0KaW5kZXggODdkMDM4N2E2OWE3NTM3
ZDJmOWVkNmJkNmM1MzIyYjQ3MjUwMWYxZS4uZTdiMWJkYmViYmY5NWQ2NGM4OGYyZjJiYzFjZjZh
MTUxMTJlMjQ1NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19y
dW50aW1lLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfcnVudGltZS5t
bQpAQCAtMjMsMjAgKzIzLDIwIEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaW5jbHVkZSAi
Y29uZmlnLmgiCi0jaW5jbHVkZSAib2JqY19ydW50aW1lLmgiCi0KLSNpbmNsdWRlICJKU0RPTUJp
bmRpbmcuaCIKLSNpbmNsdWRlICJPYmpDUnVudGltZU9iamVjdC5oIgotI2luY2x1ZGUgIldlYlNj
cmlwdE9iamVjdC5oIgotI2luY2x1ZGUgIldlYlNjcmlwdE9iamVjdFByb3RvY29sLmgiCi0jaW5j
bHVkZSAib2JqY19pbnN0YW5jZS5oIgotI2luY2x1ZGUgInJ1bnRpbWVfYXJyYXkuaCIKLSNpbmNs
dWRlICJydW50aW1lX29iamVjdC5oIgotI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0Vycm9yLmg+
Ci0jaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSlNHbG9iYWxPYmplY3QuaD4KLSNpbmNsdWRlIDxK
YXZhU2NyaXB0Q29yZS9KU0xvY2suaD4KLSNpbmNsdWRlIDx3dGYvUmV0YWluUHRyLmg+CisjaW1w
b3J0ICJjb25maWcuaCIKKyNpbXBvcnQgIm9iamNfcnVudGltZS5oIgorCisjaW1wb3J0ICJKU0RP
TUJpbmRpbmcuaCIKKyNpbXBvcnQgIk9iakNSdW50aW1lT2JqZWN0LmgiCisjaW1wb3J0ICJXZWJT
Y3JpcHRPYmplY3QuaCIKKyNpbXBvcnQgIldlYlNjcmlwdE9iamVjdFByb3RvY29sLmgiCisjaW1w
b3J0ICJvYmpjX2luc3RhbmNlLmgiCisjaW1wb3J0ICJydW50aW1lX2FycmF5LmgiCisjaW1wb3J0
ICJydW50aW1lX29iamVjdC5oIgorI2ltcG9ydCA8SmF2YVNjcmlwdENvcmUvRXJyb3IuaD4KKyNp
bXBvcnQgPEphdmFTY3JpcHRDb3JlL0pTR2xvYmFsT2JqZWN0Lmg+CisjaW1wb3J0IDxKYXZhU2Ny
aXB0Q29yZS9KU0xvY2suaD4KKyNpbXBvcnQgPHd0Zi9SZXRhaW5QdHIuaD4KIAogdXNpbmcgbmFt
ZXNwYWNlIFdlYkNvcmU7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpj
L29iamNfdXRpbGl0eS5tbSBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfdXRpbGl0
eS5tbQppbmRleCAxMmQwNTJkMjI0ODk0YzNjN2JiYzlhNjdmMjc1YmJlNjhkMzQ4Y2U2Li4xOTcw
NDNmZjUxZGFmNGNiMDk1NmM4ZTU4YTQ1MDhjOTZhODFkYzNjIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX3V0aWxpdHkubW0KKysrIGIvU291cmNlL1dlYkNvcmUv
YnJpZGdlL29iamMvb2JqY191dGlsaXR5Lm1tCkBAIC0yMywxNiArMjMsMTYgQEAKICAqIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuIAogICovCiAKLSNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJvYmpjX3V0aWxp
dHkuaCIKKyNpbXBvcnQgImNvbmZpZy5oIgorI2ltcG9ydCAib2JqY191dGlsaXR5LmgiCiAKLSNp
bmNsdWRlICJXZWJTY3JpcHRPYmplY3RQcm90b2NvbC5oIgotI2luY2x1ZGUgIm9iamNfaW5zdGFu
Y2UuaCIKLSNpbmNsdWRlICJydW50aW1lX2FycmF5LmgiCi0jaW5jbHVkZSAicnVudGltZV9vYmpl
Y3QuaCIKLSNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9KU0dsb2JhbE9iamVjdC5oPgotI2luY2x1
ZGUgPEphdmFTY3JpcHRDb3JlL0pTTG9jay5oPgotI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+
CisjaW1wb3J0ICJXZWJTY3JpcHRPYmplY3RQcm90b2NvbC5oIgorI2ltcG9ydCAib2JqY19pbnN0
YW5jZS5oIgorI2ltcG9ydCAicnVudGltZV9hcnJheS5oIgorI2ltcG9ydCAicnVudGltZV9vYmpl
Y3QuaCIKKyNpbXBvcnQgPEphdmFTY3JpcHRDb3JlL0pTR2xvYmFsT2JqZWN0Lmg+CisjaW1wb3J0
IDxKYXZhU2NyaXB0Q29yZS9KU0xvY2suaD4KKyNpbXBvcnQgPHd0Zi9Bc3NlcnRpb25zLmg+CiAK
ICNpZiAhZGVmaW5lZChfQ19MTkdfTE5HKQogI2RlZmluZSBfQ19MTkdfTE5HICdxJwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL3dhay9XZWJDb3JlVGhyZWFkLm1tIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL3dhay9XZWJDb3JlVGhyZWFkLm1tCmluZGV4IDRh
OTJiYzY4NTNiNjI2ZTg4ZmNmMjQ1ZTI0ZjliZDdhMjY3NzkxZmUuLjBhMmM2ZTVhNjdiNDJmYjgw
MzM3OTU2YTZjODBjZjUyODA3ZmQzYzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2lvcy93YWsvV2ViQ29yZVRocmVhZC5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9pb3Mvd2FrL1dlYkNvcmVUaHJlYWQubW0KQEAgLTM0LDI0ICszNCwyMyBAQAogI2ltcG9ydCAi
UnVudGltZUFwcGxpY2F0aW9uQ2hlY2tzLmgiCiAjaW1wb3J0ICJUaHJlYWRHbG9iYWxEYXRhLmgi
CiAjaW1wb3J0ICJXQUtXaW5kb3cuaCIKKyNpbXBvcnQgIldLVXRpbGl0aWVzLmgiCiAjaW1wb3J0
ICJXZWJDb3JlVGhyZWFkSW50ZXJuYWwuaCIKICNpbXBvcnQgIldlYkNvcmVUaHJlYWRNZXNzYWdl
LmgiCiAjaW1wb3J0ICJXZWJDb3JlVGhyZWFkUnVuLmgiCi0jaW1wb3J0ICJXS1V0aWxpdGllcy5o
IgotCisjaW1wb3J0IDxGb3VuZGF0aW9uL05TSW52b2NhdGlvbi5oPgogI2ltcG9ydCA8SmF2YVNj
cmlwdENvcmUvSW5pdGlhbGl6ZVRocmVhZGluZy5oPgogI2ltcG9ydCA8SmF2YVNjcmlwdENvcmUv
SlNMb2NrLmg+CisjaW1wb3J0IDxsaWJrZXJuL09TQXRvbWljLmg+CisjaW1wb3J0IDxvYmpjL3J1
bnRpbWUuaD4KICNpbXBvcnQgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW1wb3J0IDx3dGYvTWFpblRo
cmVhZC5oPgogI2ltcG9ydCA8d3RmL1JlY3Vyc2l2ZUxvY2tBZGFwdGVyLmg+CiAjaW1wb3J0IDx3
dGYvUnVuTG9vcC5oPgogI2ltcG9ydCA8d3RmL1RocmVhZGluZy5oPgorI2ltcG9ydCA8d3RmL3Nw
aS9jb2NvYS9Gb3VuZGF0aW9uU1BJLmg+CiAjaW1wb3J0IDx3dGYvdGV4dC9BdG9taWNTdHJpbmcu
aD4KIAotI2ltcG9ydCA8Rm91bmRhdGlvbi9OU0ludm9jYXRpb24uaD4KLSNpbXBvcnQgPGxpYmtl
cm4vT1NBdG9taWMuaD4KLSNpbXBvcnQgPG9iamMvcnVudGltZS5oPgotCiAjZGVmaW5lIExPR19N
RVNTQUdFUyAwCiAjZGVmaW5lIExPR19XRUJfTE9DSyAwCiAjZGVmaW5lIExPR19NQUlOX1RIUkVB
RF9MT0NLSU5HIDAKQEAgLTgyLDE2ICs4MSw2IEBAIC0gKHZvaWQpcmVsZWFzZU9uTWFpblRocmVh
ZCB7CiAKIEBlbmQKIAotdXNpbmcgTlNBdXRvcmVsZWFzZVBvb2xNYXJrID0gdm9pZCo7Ci0jaWZk
ZWYgX19jcGx1c3BsdXMKLWV4dGVybiAiQyIgewotI2VuZGlmCi1leHRlcm4gTlNBdXRvcmVsZWFz
ZVBvb2xNYXJrIE5TUHVzaEF1dG9yZWxlYXNlUG9vbCh1bnNpZ25lZCBpZ25vcmVkKTsKLWV4dGVy
biB2b2lkIE5TUG9wQXV0b3JlbGVhc2VQb29sKE5TQXV0b3JlbGVhc2VQb29sTWFyayB0b2tlbik7
Ci0jaWZkZWYgX19jcGx1c3BsdXMKLX0KLSNlbmRpZgotCiBzdGF0aWMgUmVjdXJzaXZlTG9jayB3
ZWJMb2NrOwogc3RhdGljIExvY2sgd2ViVGhyZWFkUmVsZWFzZUxvY2s7CiBzdGF0aWMgUmVjdXJz
aXZlTG9jayB3ZWJDb3JlUmVsZWFzZUxvY2s7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9DYXJib24vQ2FyYm9uVXRpbHMubSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0Nh
cmJvbi9DYXJib25VdGlscy5tCmluZGV4IGFmMTk3YzczNzk5MTFmOGJiZjA3YjIyNzk5ODQzNTkz
NGMyNTY4MzkuLmMxMmYwMzUzYzRkZGM0YmEwNzEzYWIwM2QzZjI0MjI2MGRmOWZmZjkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NhcmJvbi9DYXJib25VdGlscy5tCisrKyBi
L1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NhcmJvbi9DYXJib25VdGlscy5tCkBAIC0yOSwxMyAr
MjksMTMgQEAKICNpZm5kZWYgX19MUDY0X18KIAogI2luY2x1ZGUgIkNhcmJvblV0aWxzLmgiCi0j
aW1wb3J0IDxwYWwvc3BpL2NvY29hL0ZvdW5kYXRpb25TUEkuaD4KKyNpbXBvcnQgPHd0Zi9zcGkv
Y29jb2EvRm91bmRhdGlvblNQSS5oPgogCiBleHRlcm4gQ0dJbWFnZVJlZiBfTlNDcmVhdGVJbWFn
ZVJlZiggdW5zaWduZWQgY2hhciAqY29uc3QgYml0bWFwRGF0YVs1XSwgaW50IHBpeGVsc1dpZGUs
IGludCBwaXhlbHNIaWdoLCBpbnQgYml0c1BlclNhbXBsZSwgaW50IHNhbXBsZXNQZXJQaXhlbCwg
aW50IGJpdHNQZXJQaXhlbCwgaW50IGJ5dGVzUGVyUm93LCBCT09MIGlzUGxhbmFyLCBCT09MIGhh
c0FscGhhLCBOU1N0cmluZyAqY29sb3JTcGFjZU5hbWUsIENHQ29sb3JTcGFjZVJlZiBjdXN0b21D
b2xvclNwYWNlLCBpZCBzb3VyY2VPYmopOwogCiBzdGF0aWMgdm9pZAkJCQlQb29sQ2xlYW5lcigg
RXZlbnRMb29wVGltZXJSZWYgaW5UaW1lciwgRXZlbnRMb29wSWRsZVRpbWVyTWVzc2FnZSBpblN0
YXRlLCB2b2lkICppblVzZXJEYXRhICk7CiAKLXN0YXRpYyBOU0F1dG9yZWxlYXNlUG9vbCoJc1Bv
b2w7CitzdGF0aWMgTlNBdXRvcmVsZWFzZVBvb2xNYXJrIHNQb29sOwogc3RhdGljIHVuc2lnbmVk
IG51bVBvb2xzOwogc3RhdGljIEV2ZW50TG9vcFJlZiBwb29sTG9vcDsKIApAQCAtNjMsNyArNjMs
NyBAQCBzdGF0aWMgdW5zaWduZWQgZ2V0TlNBdXRvcmVsZWFzZVBvb2xDb3VudCh2b2lkKQogICAg
ICAgICBHZXRDdXJyZW50UHJvY2VzcyggJnByb2Nlc3MgKTsgCiAgICAgICAgIE5TQXBwbGljYXRp
b25Mb2FkKCk7CiAgICAgICAgICAgICAgICAgCi0gICAgICAgIHNQb29sID0gW1tOU0F1dG9yZWxl
YXNlUG9vbCBhbGxvY1dpdGhab25lOk5VTExdIGluaXRdOworICAgICAgICBzUG9vbCA9IE5TUHVz
aEF1dG9yZWxlYXNlUG9vbCgwKTsKICAgICAgICAgbnVtUG9vbHMgPSBnZXROU0F1dG9yZWxlYXNl
UG9vbENvdW50KCk7CiAgICAgICAgIAogICAgICAgICBwb29sTG9vcCA9IEdldEN1cnJlbnRFdmVu
dExvb3AgKCk7CkBAIC05NSw5ICs5NSw4IEBAIHN0YXRpYyB1bnNpZ25lZCBnZXROU0F1dG9yZWxl
YXNlUG9vbENvdW50KHZvaWQpCiAgICAgICAgIGlmICggQ0ZFcXVhbCggbW9kZSwga0NGUnVuTG9v
cERlZmF1bHRNb2RlICkgJiYgdGhpc0xvb3AgPT0gcG9vbExvb3ApIHsKICAgICAgICAgICAgIHVu
c2lnbmVkIGN1cnJlbnROdW1Qb29scyA9IGdldE5TQXV0b3JlbGVhc2VQb29sQ291bnQoKS0xOyAg
ICAgICAgICAgIAogICAgICAgICAgICAgaWYgKGN1cnJlbnROdW1Qb29scyA9PSBudW1Qb29scyl7
Ci0gICAgICAgICAgICAgICAgW3NQb29sIGRyYWluXTsKLSAgICAgICAgICAgICAgICAKLSAgICAg
ICAgICAgICAgICBzUG9vbCA9IFtbTlNBdXRvcmVsZWFzZVBvb2wgYWxsb2NXaXRoWm9uZTpOVUxM
XSBpbml0XTsKKyAgICAgICAgICAgICAgICBOU1BvcEF1dG9yZWxlYXNlUG9vbChzUG9vbCk7Cisg
ICAgICAgICAgICAgICAgc1Bvb2wgPSBOU1B1c2hBdXRvcmVsZWFzZVBvb2woMCk7CiAgICAgICAg
ICAgICAgICAgbnVtUG9vbHMgPSBnZXROU0F1dG9yZWxlYXNlUG9vbENvdW50KCk7CiAgICAgICAg
ICAgICB9CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0hp
c3RvcnkvV2ViSGlzdG9yeS5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0hpc3RvcnkvV2Vi
SGlzdG9yeS5tbQppbmRleCA5Y2Y4YThlOTA3ZWM5MmI4MzY5ZDNmMWExYTJjYmE1YmQxOWIxMmEx
Li43ZjcxOWZjNWUwNmM1NDkzOTk3MzlkYTc4ZDM2NDk0NWIxNWU3ZTU2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0TGVnYWN5L21hYy9IaXN0b3J5L1dlYkhpc3RvcnkubW0KKysrIGIvU291cmNl
L1dlYktpdExlZ2FjeS9tYWMvSGlzdG9yeS9XZWJIaXN0b3J5Lm1tCkBAIC0xLDUgKzEsNSBAQAog
LyoKLSAqIENvcHlyaWdodCAoQykgMjAwNSwgMjAwOCwgMjAwOSBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDUtMjAxOCBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTM3LDYg
KzM3LDcgQEAKICNpbXBvcnQgPFdlYkNvcmUvSGlzdG9yeUl0ZW0uaD4KICNpbXBvcnQgPFdlYkNv
cmUvUGFnZUdyb3VwLmg+CiAjaW1wb3J0IDxwYWwvc3BpL2NvY29hL05TQ2FsZW5kYXJEYXRlU1BJ
Lmg+CisjaW1wb3J0IDx3dGYvc3BpL2NvY29hL0ZvdW5kYXRpb25TUEkuaD4KIAogI2lmIFBMQVRG
T1JNKElPUykKICNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZVRocmVhZE1lc3NhZ2UuaD4KQEAgLTU5
MSwxNCArNTkyLDE1IEBAIC0gKEJPT0wpbG9hZEhpc3RvcnlHdXRzRnJvbVVSTDooTlNVUkwgKilV
Ukwgc2F2ZWRJdGVtc0NvdW50OihpbnQgKiludW1iZXJPZkl0ZW1zCiAKICAgICBpbnQgaXRlbUNv
dW50TGltaXQgPSBbc2VsZiBoaXN0b3J5SXRlbUxpbWl0XTsKICAgICBOU1RpbWVJbnRlcnZhbCBh
Z2VMaW1pdERhdGUgPSBbW3NlbGYgYWdlTGltaXREYXRlXSB0aW1lSW50ZXJ2YWxTaW5jZVJlZmVy
ZW5jZURhdGVdOwotICAgIE5TRW51bWVyYXRvciAqZW51bWVyYXRvciA9IFthcnJheSBvYmplY3RF
bnVtZXJhdG9yXTsKICAgICBCT09MIGFnZUxpbWl0UGFzc2VkID0gTk87CiAgICAgQk9PTCBpdGVt
TGltaXRQYXNzZWQgPSBOTzsKICAgICBBU1NFUlQoKm51bWJlck9mSXRlbXNMb2FkZWQgPT0gMCk7
CiAKLSAgICBOU0F1dG9yZWxlYXNlUG9vbCAqcG9vbCA9IFtbTlNBdXRvcmVsZWFzZVBvb2wgYWxs
b2NdIGluaXRdOwotICAgIE5TRGljdGlvbmFyeSAqaXRlbUFzRGljdGlvbmFyeTsKLSAgICB3aGls
ZSAoKGl0ZW1Bc0RpY3Rpb25hcnkgPSBbZW51bWVyYXRvciBuZXh0T2JqZWN0XSkgIT0gbmlsKSB7
CisgICAgLy8gRklYTUU6IElmIHdlIGNhbiB0ZXN0IGFuZCBzZWUgZ29vZCBwZXJmb3JtYW5jZSBk
cmFpbmluZyB0aGUgYXV0b3JlbGVhc2UgcG9vbCBldmVyeSB0aW1lIHRocm91Z2ggdGhlIGxvb3As
CisgICAgLy8gaW5zdGVhZCBvZiBvbmNlIGV2ZXJ5IDUwIGl0ZXJhdGlvbnMsIHRoZW4gd2Ugc2hv
dWxkIHN3aXRjaCB0byBAYXV0b3JlbGVhc2Vwb29sIGFuZCBnZXQgcmlkIG9mIHRoZSB1c2Ugb2YK
KyAgICAvLyBGb3VuZGF0aW9uU1BJLmggaW4gdGhpcyBzb3VyY2UgZmlsZS4KKyAgICBhdXRvIHBv
b2wgPSBOU1B1c2hBdXRvcmVsZWFzZVBvb2woMCk7CisgICAgZm9yIChOU0RpY3Rpb25hcnkgKml0
ZW1Bc0RpY3Rpb25hcnkgaW4gYXJyYXkpIHsKICAgICAgICAgV2ViSGlzdG9yeUl0ZW0gKml0ZW0g
PSBbW1dlYkhpc3RvcnlJdGVtIGFsbG9jXSBpbml0RnJvbURpY3Rpb25hcnlSZXByZXNlbnRhdGlv
bjppdGVtQXNEaWN0aW9uYXJ5XTsKIAogICAgICAgICAvLyBpdGVtIHdpdGhvdXQgVVJMIGlzIHVz
ZWxlc3M7IGRhdGEgb24gZGlzayBtdXN0IGhhdmUgYmVlbiBiYWQ7IGlnbm9yZQpAQCAtNjE4LDE0
ICs2MjAsMTUgQEAgLSAoQk9PTClsb2FkSGlzdG9yeUd1dHNGcm9tVVJMOihOU1VSTCAqKVVSTCBz
YXZlZEl0ZW1zQ291bnQ6KGludCAqKW51bWJlck9mSXRlbXMKIAogICAgICAgICAgICAgICAgIC8v
IERyYWluaW5nIHRoZSBhdXRvcmVsZWFzZSBwb29sIGV2ZXJ5IDUwIGl0ZXJhdGlvbnMgd2FzIGZv
dW5kIGJ5IGV4cGVyaW1lbnRhdGlvbiB0byBiZSBvcHRpbWFsCiAgICAgICAgICAgICAgICAgaWYg
KCpudW1iZXJPZkl0ZW1zTG9hZGVkICUgNTAgPT0gMCkgewotICAgICAgICAgICAgICAgICAgICBb
cG9vbCBkcmFpbl07Ci0gICAgICAgICAgICAgICAgICAgIHBvb2wgPSBbW05TQXV0b3JlbGVhc2VQ
b29sIGFsbG9jXSBpbml0XTsKKyAgICAgICAgICAgICAgICAgICAgTlNQb3BBdXRvcmVsZWFzZVBv
b2wocG9vbCk7CisgICAgICAgICAgICAgICAgICAgIHBvb2wgPSBOU1B1c2hBdXRvcmVsZWFzZVBv
b2woMCk7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQogICAgICAgICB9CisKICAg
ICAgICAgW2l0ZW0gcmVsZWFzZV07CiAgICAgfQotICAgIFtwb29sIGRyYWluXTsKKyAgICBOU1Bv
cEF1dG9yZWxlYXNlUG9vbChwb29sKTsKIAogICAgIHJldHVybiBZRVM7CiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXcubW0gYi9Tb3VyY2UvV2Vi
S2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KaW5kZXggMGUyZjdjMjdjMTE4YjFmMzI0
OGVhNmYwMDE3MzRjOWRjYjhlNjEyZi4uZDhiNTQzYzY0MWU3MmI3OTRjZWUwM2I3ZWI4MTc1M2Ni
OGZlODAzYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJW
aWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQpA
QCAtNzkwMywyOCArNzkwMywzMCBAQCAtIChOU0FycmF5ICopcmVjdHNGb3JUZXh0TWF0Y2hlcwog
ICAgICAgICBpZiAoW3ZpZXcgY29uZm9ybXNUb1Byb3RvY29sOkBwcm90b2NvbChXZWJNdWx0aXBs
ZVRleHRNYXRjaGVzKV0pIHsKICAgICAgICAgICAgIE5TVmlldyA8V2ViTXVsdGlwbGVUZXh0TWF0
Y2hlcz4gKmRvY3VtZW50VmlldyA9IChOU1ZpZXcgPFdlYk11bHRpcGxlVGV4dE1hdGNoZXM+ICop
dmlldzsKICAgICAgICAgICAgIE5TUmVjdCBkb2N1bWVudFZpZXdWaXNpYmxlUmVjdCA9IFtkb2N1
bWVudFZpZXcgdmlzaWJsZVJlY3RdOwotICAgICAgICAgICAgTlNBcnJheSAqb3JpZ2luYWxSZWN0
cyA9IFtkb2N1bWVudFZpZXcgcmVjdHNGb3JUZXh0TWF0Y2hlc107Ci0gICAgICAgICAgICB1bnNp
Z25lZCByZWN0Q291bnQgPSBbb3JpZ2luYWxSZWN0cyBjb3VudF07Ci0gICAgICAgICAgICB1bnNp
Z25lZCByZWN0SW5kZXg7Ci0gICAgICAgICAgICBOU0F1dG9yZWxlYXNlUG9vbCAqcG9vbCA9IFtb
TlNBdXRvcmVsZWFzZVBvb2wgYWxsb2NdIGluaXRdOwotICAgICAgICAgICAgZm9yIChyZWN0SW5k
ZXggPSAwOyByZWN0SW5kZXggPCByZWN0Q291bnQ7ICsrcmVjdEluZGV4KSB7Ci0gICAgICAgICAg
ICAgICAgTlNSZWN0IHIgPSBbW29yaWdpbmFsUmVjdHMgb2JqZWN0QXRJbmRleDpyZWN0SW5kZXhd
IHJlY3RWYWx1ZV07CisgICAgICAgICAgICAvLyBGSVhNRTogSWYgd2UgY2FuIHRlc3QgYW5kIHNl
ZSBnb29kIHBlcmZvcm1hbmNlIGRyYWluaW5nIHRoZSBhdXRvcmVsZWFzZSBwb29sIGV2ZXJ5IHRp
bWUKKyAgICAgICAgICAgIC8vIHRocm91Z2ggdGhlIGxvb3AsIGluc3RlYWQgb2Ygb25jZSBldmVy
eSAxMCBpdGVyYXRpb25zLCB0aGVuIHdlIHNob3VsZCBzd2l0Y2ggdG8KKyAgICAgICAgICAgIC8v
IEBhdXRvcmVsZWFzZXBvb2wgYW5kIGdldCByaWQgb2YgdGhlIHVzZSBvZiBGb3VuZGF0aW9uU1BJ
LmggaW4gdGhpcyBzb3VyY2UgZmlsZS4KKyAgICAgICAgICAgIHVuc2lnbmVkIGl0ZXJhdGlvbkNv
dW50ID0gMDsKKyAgICAgICAgICAgIGF1dG8gcG9vbCA9IE5TUHVzaEF1dG9yZWxlYXNlUG9vbCgw
KTsKKyAgICAgICAgICAgIGZvciAoTlNWYWx1ZSAqcmVjdCBpbiBbZG9jdW1lbnRWaWV3IHJlY3Rz
Rm9yVGV4dE1hdGNoZXNdKSB7CisgICAgICAgICAgICAgICAgTlNSZWN0IHIgPSBbcmVjdCByZWN0
VmFsdWVdOwogICAgICAgICAgICAgICAgIC8vIENsaXAgcmVjdCB0byBkb2N1bWVudCB2aWV3J3Mg
dmlzaWJsZSByZWN0IHNvIHJlY3QgaXMgY29uZmluZWQgdG8gc3ViZnJhbWUKICAgICAgICAgICAg
ICAgICByID0gTlNJbnRlcnNlY3Rpb25SZWN0KHIsIGRvY3VtZW50Vmlld1Zpc2libGVSZWN0KTsK
ICAgICAgICAgICAgICAgICBpZiAoTlNJc0VtcHR5UmVjdChyKSkKICAgICAgICAgICAgICAgICAg
ICAgY29udGludWU7Ci0gICAgICAgICAgICAgICAgCisKICAgICAgICAgICAgICAgICAvLyBDb252
ZXJ0IHJlY3QgdG8gb3VyIGNvb3JkaW5hdGUgc3lzdGVtCiAgICAgICAgICAgICAgICAgciA9IFtk
b2N1bWVudFZpZXcgY29udmVydFJlY3Q6ciB0b1ZpZXc6c2VsZl07CiAgICAgICAgICAgICAgICAg
W3Jlc3VsdCBhZGRPYmplY3Q6W05TVmFsdWUgdmFsdWVXaXRoUmVjdDpyXV07Ci0gICAgICAgICAg
ICAgICAgaWYgKHJlY3RJbmRleCAlIDEwID09IDApIHsKLSAgICAgICAgICAgICAgICAgICAgW3Bv
b2wgZHJhaW5dOwotICAgICAgICAgICAgICAgICAgICBwb29sID0gW1tOU0F1dG9yZWxlYXNlUG9v
bCBhbGxvY10gaW5pdF07CisgICAgICAgICAgICAgICAgaWYgKCsraXRlcmF0aW9uQ291bnQgPT0g
MTApIHsKKyAgICAgICAgICAgICAgICAgICAgTlNQb3BBdXRvcmVsZWFzZVBvb2wocG9vbCk7Cisg
ICAgICAgICAgICAgICAgICAgIHBvb2wgPSBOU1B1c2hBdXRvcmVsZWFzZVBvb2woMCk7CisgICAg
ICAgICAgICAgICAgICAgIGl0ZXJhdGlvbkNvdW50ID0gMDsKICAgICAgICAgICAgICAgICB9CiAg
ICAgICAgICAgICB9Ci0gICAgICAgICAgICBbcG9vbCBkcmFpbl07CisgICAgICAgICAgICBOU1Bv
cEF1dG9yZWxlYXNlUG9vbChwb29sKTsKICAgICAgICAgfQotICAgICAgICAKKwogICAgICAgICBm
cmFtZSA9IGluY3JlbWVudEZyYW1lKGZyYW1lKTsKICAgICB9IHdoaWxlIChmcmFtZSk7CiAgICAg
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>342336</attachid>
            <date>2018-06-08 15:21:19 -0700</date>
            <delta_ts>2018-06-08 16:11:57 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-186436-20180608152118.patch</filename>
            <type>text/plain</type>
            <size>46089</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjMyNjQyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDQzODEyOTA2MmUxNzllZjljM2JkZGZm
MjMwY2U0ZjViNWZiNTg2MmYuLmYxMzA0YjQ0Njc4ZmExN2FjNGZlMjlkODlhZDQwZDBiYTIzYjUy
ZTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMTgtMDYtMDggIERhcmluIEFkbGVyICA8ZGFyaW5A
YXBwbGUuY29tPgorCisgICAgICAgIFtDb2NvYV0gUmVtb3ZlIGFsbCB1c2VzIG9mIE5TQXV0b3Jl
bGVhc2VQb29sIGFzIHBhcnQgb2YgcHJlcGFyYXRpb24gZm9yIEFSQworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg2NDM2CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgQW5kZXJzIENhcmxzc29uLgorCisgICAgICAgICogV1RGLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2o6IEFkZGVkIEZvdW5kYXRpb25TUEkuaC4KKworICAgICAgICAqIHd0Zi9BdXRvZHJh
aW5lZFBvb2wuaDogU3RyZWFtbGluZWQgaGVhZGVyIGEgYml0LCBhZGRlZCBzb21lIGNvbW1lbnRz
LgorICAgICAgICAqIHd0Zi9BdXRvZHJhaW5lZFBvb2xNYWMubW06CisgICAgICAgIChXVEY6OkF1
dG9kcmFpbmVkUG9vbDo6QXV0b2RyYWluZWRQb29sKTogVXNlIE5TUHVzaC9Qb3BBdXRvcmVsZWFz
ZVBvb2wgaW5zdGVhZCBvZgorICAgICAgICB0aGUgTlNBdXRvcmVsZWFzZVBvb2wgY2xhc3MuCisg
ICAgICAgIChXVEY6OkF1dG9kcmFpbmVkUG9vbDo6fkF1dG9kcmFpbmVkUG9vbCk6IERpdHRvLgor
CisgICAgICAgICAqIHd0Zi9QbGF0Zm9ybU1hYy5jbWFrZTogQWRkZWQgRm91bmRhdGlvblNQSS5o
LgorCisgICAgICAgICAqIHd0Zi9zcGkvY29jb2EvRm91bmRhdGlvblNQSS5oOiBNb3ZlZCBmcm9t
IFNvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0ZvdW5kYXRpb25TUEkuaC4KKwogMjAx
OC0wNi0wOCAgQnJpYW4gQnVyZyAgPGJidXJnQGFwcGxlLmNvbT4KIAogICAgICAgICBbQ29jb2Fd
IFdlYiBBdXRvbWF0aW9uOiBpbmNsdWRlIGJyb3dzZXIgbmFtZSBhbmQgdmVyc2lvbiBpbiBsaXN0
aW5nIGZvciBhdXRvbWF0aW9uIHRhcmdldHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA3YWQyMTJlN2RiMmIwNWJh
YjcxNzZjOTc3ZTgyZGMwZTgwOWNiZWFjLi5kM2M1YjhmMmJjNDZhMzQ5MGY2NWY5YTI5MjUxZWNh
NjRiNmY1MjA2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzQgQEAKKzIwMTgtMDYtMDggIERhcmlu
IEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgorCisgICAgICAgIFtDb2NvYV0gUmVtb3ZlIGFsbCB1
c2VzIG9mIE5TQXV0b3JlbGVhc2VQb29sIGFzIHBhcnQgb2YgcHJlcGFyYXRpb24gZm9yIEFSQwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg2NDM2CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgQW5kZXJzIENhcmxzc29uLgorCisgICAgICAgICogYnJpZGdl
L29iamMvb2JqY19jbGFzcy5tbTogVXNlIGltcG9ydCBpbnN0ZWFkIG9mIGluY2x1ZGUuCisKKyAg
ICAgICAgKiBicmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLmg6IFJlcGxhY2VkIF9wb29sIG1lbWJl
ciB0byBob2xkIGFuIG9iamVjdCB3aXRoCisgICAgICAgIG1fYXV0b3JlbGVhc2VQb29sIG1lbWJl
ciB0byBob2xkIGEgdG9rZW4gZnJvbSBOU1B1c2hBdXRvcmVsZWFzZVBvb2wuIEFsc28KKyAgICAg
ICAgaW5pdGlhbGl6ZSBhbGwgZGF0YSBtZW1iZXJzIGhlcmUgaW4gdGhlIGNsYXNzIGRlZmluaXRp
b24uCisKKyAgICAgICAgKiBicmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLm1tOgorICAgICAgICAo
T2JqY0luc3RhbmNlOjpPYmpjSW5zdGFuY2UpOiBNb3ZlZCBtb3N0IGluaXRpYWxpemF0aW9uIHRv
IGNsYXNzIGRlZmluaXRpb24uCisgICAgICAgIChPYmpjSW5zdGFuY2U6OnZpcnR1YWxCZWdpbik6
IFVzZSBOU1B1c2hBdXRvcmVsZWFzZVBvb2wgaW5zdGVhZCBvZgorICAgICAgICBOU0F1dG9yZWxl
YXNlUG9vbCBjbGFzcy4KKyAgICAgICAgKE9iamNJbnN0YW5jZTo6dmlydHVhbEVuZCk6IFVzZSBO
U1BvcEF1dG9yZWxlYXNlUG9vbC4KKworICAgICAgICAqIGJyaWRnZS9vYmpjL29iamNfcnVudGlt
ZS5tbTogVXNlIGltcG9ydCBpbnN0ZWFkIG9mIGluY2x1ZGUuCisgICAgICAgICogYnJpZGdlL29i
amMvb2JqY191dGlsaXR5Lm1tOiBEaXR0by4KKworICAgICAgICAqIHBsYXRmb3JtL2F1ZGlvL21h
Yy9BdWRpb0J1c01hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OkF1ZGlvQnVzOjpsb2FkUGxhdGZv
cm1SZXNvdXJjZSk6IFVzZSBAYXV0b3JlbGVhc2Vwb29sLgorCisgICAgICAgICogcGxhdGZvcm0v
aW9zL3dhay9XZWJDb3JlVGhyZWFkLm1tOiBSZS1zb3J0ZWQgaW5jbHVkZXMuIFJlbW92ZWQgZGVj
bGFyYXRpb24gb2YKKyAgICAgICAgYXV0b3JlbGVhc2UgcG9vbCBTUEkgYW5kIHVzZSBGb3VuZGF0
aW9uU1BJLmggaW5zdGVhZC4KKworICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvY29jb2EvUmVz
b3VyY2VSZXNwb25zZUNvY29hLm1tOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25z
ZTo6cGxhdGZvcm1MYXp5SW5pdCk6IFVzZSBAYXV0b3JlbGVhc2Vwb29sLgorCiAyMDE4LTA2LTA4
ICBBZGl0eWEgS2VlcnRoaSAgPGFrZWVydGhpQGFwcGxlLmNvbT4KIAogICAgICAgICBbRGF0YWxp
c3RdIEFsbG93IFRleHRGaWVsZElucHV0VHlwZSB0byBzaG93IGFuZCBoaWRlIHN1Z2dlc3Rpb25z
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNv
cmUvUEFML0NoYW5nZUxvZwppbmRleCBhNzk2NTJhOTIyMzcwYTdkOTMyYTcyNDA5NmQzNzc5Njll
YTYyYjczLi5kMjFmMjkyMjdhNTgzMzkyZGIwZjEwZDhhZDI1NTBhMjczZmZhYzk5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BB
TC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxOC0wNi0wOCAgRGFyaW4gQWRsZXIgIDxk
YXJpbkBhcHBsZS5jb20+CisKKyAgICAgICAgW0NvY29hXSBSZW1vdmUgYWxsIHVzZXMgb2YgTlNB
dXRvcmVsZWFzZVBvb2wgYXMgcGFydCBvZiBwcmVwYXJhdGlvbiBmb3IgQVJDCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODY0MzYKKworICAgICAgICBS
ZXZpZXdlZCBieSBBbmRlcnMgQ2FybHNzb24uCisKKyAgICAgICAgKiBQQUwueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvajogUmVtb3ZlZCBGb3VuZGF0aW9uU1BJLmguCisgICAgICAgICogcGFsL1Bs
YXRmb3JtTWFjLmNtYWtlOiBEaXR0by4KKyAgICAgICAgKiBwYWwvc3BpL2NvY29hL0ZvdW5kYXRp
b25TUEkuaDogTW92ZWQgaW50byBXVEYgcHJvamVjdC4KKwogMjAxOC0wNi0wOCAgSm9uYXRoYW4g
QmVkYXJkICA8amJlZGFyZEBhcHBsZS5jb20+CiAKICAgICAgICAgW01vamF2ZV0gRW5hYmxlIGJ1
aWxkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cgYi9Tb3Vy
Y2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKaW5kZXggMmIzYWU1MGRhMzU5YjE4YzVjZWI3
ZjBhNDYzYWVkOThjNDdhMDMzMC4uZjQ5Y2FiNjQwOTgxNTQ1YzY2MDc5N2Y0MmIwODkwYjZiNzNh
NDE1NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDE4
LTA2LTA4ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBbQ29jb2Fd
IFJlbW92ZSBhbGwgdXNlcyBvZiBOU0F1dG9yZWxlYXNlUG9vbCBhcyBwYXJ0IG9mIHByZXBhcmF0
aW9uIGZvciBBUkMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE4NjQzNgorCisgICAgICAgIFJldmlld2VkIGJ5IEFuZGVycyBDYXJsc3Nvbi4KKworICAg
ICAgICAqIENhcmJvbi9DYXJib25VdGlscy5tOiBVcGRhdGVkIGluY2x1ZGUgbG9jYXRpb24gb2Yg
Rm91bmRhdGlvblNQSS5oLgorICAgICAgICAoV2ViSW5pdEZvckNhcmJvbik6IFVzZSBOU1B1c2gv
UG9wQXV0b3JlbGVhc2VQb29sIGluc3RlYWQgb2YgTlNBdXRvcmVsZWFzZVBvb2wgb2JqZWN0Lgor
ICAgICAgICAoUG9vbENsZWFuZXIpOiBEaXR0by4KKworICAgICAgICAqIEhpc3RvcnkvV2ViSGlz
dG9yeS5tbToKKyAgICAgICAgKC1bV2ViSGlzdG9yeVByaXZhdGUgbG9hZEhpc3RvcnlHdXRzRnJv
bVVSTDpzYXZlZEl0ZW1zQ291bnQ6Y29sbGVjdERpc2NhcmRlZEl0ZW1zSW50bzplcnJvcjpdKToK
KyAgICAgICAgVXNlIEBhdXRvcmVsZWFzZXBvb2wgaW5zdGVhZCBvZiBOU0F1dG9yZWxlYXNlUG9v
bCBvYmplY3QuIE5vIG5lZWQgdG8gZG8gdGhlICJkcmFpbiBwb29sIG9ubHkKKyAgICAgICAgZXZl
cnkgNTAgdGltZXMiOyB0aGUgLVtXZWJIaXN0b3J5IGxvYWRGcm9tVVJMXSBmYW1pbHkgb2YgbWV0
aG9kcyB3ZXJlIG9uY2UgdXNlZCBieSBTYWZhcmksIGFuZAorICAgICAgICBub3cgaGFyZGx5IHVz
ZWQgaWYgYXQgYWxsLgorICAgICAgICAqIFdlYlZpZXcvV2ViVmlldy5tbToKKyAgICAgICAgKC1b
V2ViVmlldyByZWN0c0ZvclRleHRNYXRjaGVzXSk6IERpdHRvLgorCiAyMDE4LTA2LTA4ICBBZGl0
eWEgS2VlcnRoaSAgPGFrZWVydGhpQGFwcGxlLmNvbT4KIAogICAgICAgICBbRGF0YWxpc3RdIEFs
bG93IFRleHRGaWVsZElucHV0VHlwZSB0byBzaG93IGFuZCBoaWRlIHN1Z2dlc3Rpb25zCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV1RGL1dURi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNl
L1dURi9XVEYueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCBmYjJlZTdlMWEwODk3MzQ0
MTI0ODc1ODBmOGRmYmMyMDk3M2NhNzBiLi4yN2IyMTk2ZjM5MjgxZTk2NTczOGJjNTkzYTgwNTE5
MTc3NDAxMDBlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL1dURi54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCisrKyBiL1NvdXJjZS9XVEYvV1RGLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAg
LTUzLDcgKzUzLDcgQEAKIAkJMTQ2OTQxOTMxNkVBQUY2RDAwMjRFMTQ2IC8qIFJ1bkxvb3BUaW1l
ckNGLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE0
Njk0MTkxMTZFQUFGNkQwMDI0RTE0NiAvKiBSdW5Mb29wVGltZXJDRi5jcHAgKi87IH07CiAJCTE0
Njk0MTk3MTZFQUFGRjgwMDI0RTE0NiAvKiBTY2hlZHVsZVBhaXJNYWMubW0gaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxNDY5NDE5NTE2RUFBRkY4MDAyNEUx
NDYgLyogU2NoZWR1bGVQYWlyTWFjLm1tICovOyB9OwogCQkxNDY5NDE5OTE2RUFCMDQxMDAyNEUx
NDYgLyogU2NoZWR1bGVQYWlyQ0YuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMTQ2OTQxOTgxNkVBQjA0MTAwMjRFMTQ2IC8qIFNjaGVkdWxlUGFpckNG
LmNwcCAqLzsgfTsKLQkJMTQ2OTQxOUQxNkVBQjEwQTAwMjRFMTQ2IC8qIEF1dG9kcmFpbmVkUG9v
bE1hYy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE0
Njk0MTlCMTZFQUIxMEEwMDI0RTE0NiAvKiBBdXRvZHJhaW5lZFBvb2xNYWMubW0gKi87IH07CisJ
CTE0Njk0MTlEMTZFQUIxMEEwMDI0RTE0NiAvKiBBdXRvZHJhaW5lZFBvb2wubW0gaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxNDY5NDE5QjE2RUFCMTBBMDAy
NEUxNDYgLyogQXV0b2RyYWluZWRQb29sLm1tICovOyB9OwogCQkxQTFEOEI5RTE3MzE4Nzk4MDAx
NDFEQTQgLyogRnVuY3Rpb25EaXNwYXRjaGVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBMUQ4QjlEMTczMTg3OTgwMDE0MURBNCAvKiBGdW5jdGlv
bkRpc3BhdGNoZXIuY3BwICovOyB9OwogCQkxQUNBREQ4NDE4ODQ0ODAxMDBEOEI3MUQgLyogRGVw
cmVjYXRlZFN5bWJvbHNVc2VkQnlTYWZhcmkubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAxQUNBREQ4MjE4ODQ0ODAxMDBEOEI3MUQgLyogRGVwcmVjYXRl
ZFN5bWJvbHNVc2VkQnlTYWZhcmkubW0gKi87IH07CiAJCTFDMTgxQzdGMUQzMDc4REEwMEY1RkEx
NiAvKiBUZXh0QnJlYWtJdGVyYXRvci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAxQzE4MUM3RDFEMzA3OERBMDBGNUZBMTYgLyogVGV4dEJyZWFrSXRl
cmF0b3IuY3BwICovOyB9OwpAQCAtMjg0LDcgKzI4NCw3IEBACiAJCTE0Njk0MTk1MTZFQUFGRjgw
MDI0RTE0NiAvKiBTY2hlZHVsZVBhaXJNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5v
YmpjcHA7IHBhdGggPSBTY2hlZHVsZVBhaXJNYWMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTE0Njk0MTk4MTZFQUIwNDEwMDI0RTE0NiAvKiBTY2hlZHVsZVBhaXJDRi5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTY2hlZHVsZVBhaXJDRi5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTE0Njk0MTlBMTZFQUIxMEEwMDI0RTE0NiAvKiBB
dXRvZHJhaW5lZFBvb2wuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXV0b2Ry
YWluZWRQb29sLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTE0Njk0MTlCMTZFQUIx
MEEwMDI0RTE0NiAvKiBBdXRvZHJhaW5lZFBvb2xNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5vYmpjcHA7IHBhdGggPSBBdXRvZHJhaW5lZFBvb2xNYWMubW07IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTE0Njk0MTlCMTZFQUIxMEEwMDI0RTE0NiAvKiBBdXRvZHJhaW5lZFBv
b2wubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBBdXRvZHJhaW5l
ZFBvb2wubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTE0OUVGMTYyMTZCQkZFMEQw
MDBBNDMzMSAvKiBUcmlTdGF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBU
cmlTdGF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxNEM4Mjc5NzE4RkRENzM0
MDBFMTgwMEMgLyogbWJtYWxsb2MueGNjb25maWcgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0LnhjY29uZmlnOyBw
YXRoID0gbWJtYWxsb2MueGNjb25maWc7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTE0
RTc4NUU3MURGQjMzMDEwMDIwOUJEMSAvKiBPcmRpbmFsTnVtYmVyLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IE9yZGluYWxOdW1iZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKQEAgLTQwOCw2ICs0MDgsNyBAQAogCQk5MzkzNEJEMjE4QTFFOEMzMDBEMEQ2QTEgLyog
U3RyaW5nVmlld09iakMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IG5hbWUg
PSBTdHJpbmdWaWV3T2JqQy5tbTsgcGF0aCA9IG1hYy9TdHJpbmdWaWV3T2JqQy5tbTsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTM5MzRCRDQxOEExRjE2OTAwRDBENkExIC8qIFN0cmlu
Z1ZpZXdDRi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBTdHJpbmdW
aWV3Q0YuY3BwOyBwYXRoID0gY2YvU3RyaW5nVmlld0NGLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJOTNBQzkxQTcxODk0MkZDNDAwMjQ0OTM5IC8qIExDaGFyLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExDaGFyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTkzRDE5MUNGMjBDQUVDRTgwMEM1MUI4RSAvKiBGb3VuZGF0aW9uU1BJLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEZvdW5kYXRpb25TUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
OTNEREU5MzExQ0RDMDUyRDAwRkQzNDkxIC8qIGR5bGRTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gZHlsZFNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5
M0YxOTkzRDE5RDc5NThEMDBDMjM5MEIgLyogU3RyaW5nVmlldy5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTdHJpbmdWaWV3LmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJOTc0Q0ZDOEQxNkE0RjMyNzAwNkQ1NDA0IC8qIFdlYWtQdHIuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2Vha1B0ci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwpAQCAtODA3LDcgKzgwOCw2IEBACiAJCQkJQThBNDcyNUMxNTFBODI1QTAwNDEyM0ZG
IC8qIEFzc2VydGlvbnMuaCAqLywKIAkJCQlBOEE0NzI1RDE1MUE4MjVBMDA0MTIzRkYgLyogQXRv
bWljcy5oICovLAogCQkJCTE0Njk0MTlBMTZFQUIxMEEwMDI0RTE0NiAvKiBBdXRvZHJhaW5lZFBv
b2wuaCAqLywKLQkJCQkxNDY5NDE5QjE2RUFCMTBBMDAyNEUxNDYgLyogQXV0b2RyYWluZWRQb29s
TWFjLm1tICovLAogCQkJCTBGNDNEOEVGMURCNUFEREMwMDEwOEZCNiAvKiBBdXRvbWF0aWNUaHJl
YWQuY3BwICovLAogCQkJCTBGNDNEOEYwMURCNUFEREMwMDEwOEZCNiAvKiBBdXRvbWF0aWNUaHJl
YWQuaCAqLywKIAkJCQlEQ0VFMjIwNDFDRUI5ODY5MDAwQzIzOTYgLyogQmFja3dhcmRzR3JhcGgu
aCAqLywKQEAgLTEyNjksNiArMTI2OSw3IEBACiAJCUNFNDY1MTZDMTlEQjFGQjQwMDNFQ0EwNSAv
KiBjb2NvYSAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCisJCQkJ
OTNEMTkxQ0YyMENBRUNFODAwQzUxQjhFIC8qIEZvdW5kYXRpb25TUEkuaCAqLywKIAkJCQlDRTQ2
NTE2RDE5REIxRkI0MDAzRUNBMDUgLyogTlNNYXBUYWJsZVNQSS5oICovLAogCQkJCUE1MDk4QjAx
MUMxNkE0RjkwMDA4Nzc5NyAvKiBTZWN1cml0eVNQSS5oICovLAogCQkJKTsKQEAgLTEzMjIsNiAr
MTMyMyw3IEBACiAJCUU0QTBBRDNCMUE5NjI1MTkwMDUzNkRGNiAvKiBjb2NvYSAqLyA9IHsKIAkJ
CWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCisJCQkJMTQ2OTQxOUIxNkVBQjEwQTAw
MjRFMTQ2IC8qIEF1dG9kcmFpbmVkUG9vbC5tbSAqLywKIAkJCQlFMzhDNDEyNDFFQjRFMDRDMDA0
Mjk1N0QgLyogQ1BVVGltZUNvY29hLm1tICovLAogCQkJCTE0M0RERTk1MjBDOEJDMzcwMDdGNzZG
QSAvKiBFbnRpdGxlbWVudHMuY3BwICovLAogCQkJCTE0M0RERTk3MjBDOEJFOTkwMDdGNzZGQSAv
KiBFbnRpdGxlbWVudHMuaCAqLywKQEAgLTE0NDUsNyArMTQ0Nyw3IEBACiAJCQkJNzBFQ0E2MEQx
QjAyNDI2ODAwNDQ5NzM5IC8qIEF0b21pY1N0cmluZ0ltcGwuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJQTVCQTE1RkExODI0MzVBNjAwQTgyRTY5IC8qIEF0b21pY1N0cmluZ0ltcGxDRi5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQk5QkM3MEYwNTE3NkMzNzlEMDAxMDFERUMgLyogQXRvbWljU3RyaW5n
VGFibGUuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJMTQ2OTQxOUQxNkVBQjEwQTAwMjRFMTQ2IC8q
IEF1dG9kcmFpbmVkUG9vbE1hYy5tbSBpbiBTb3VyY2VzICovLAorCQkJCTE0Njk0MTlEMTZFQUIx
MEEwMDI0RTE0NiAvKiBBdXRvZHJhaW5lZFBvb2wubW0gaW4gU291cmNlcyAqLywKIAkJCQkwRjQz
RDhGMTFEQjVBRERDMDAxMDhGQjYgLyogQXV0b21hdGljVGhyZWFkLmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCTgxMzQwMTM4MTVCMDkyRkQwMDFGRjBCOCAvKiBCYXNlNjQuY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJQThBNDczQTgxNTFBODI1QjAwNDEyM0ZGIC8qIGJpZ251bS1kdG9hLmNjIGluIFNv
dXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9BdXRvZHJhaW5lZFBvb2wuaCBi
L1NvdXJjZS9XVEYvd3RmL0F1dG9kcmFpbmVkUG9vbC5oCmluZGV4IDZmMDJjNWRmNGRlZTdlZDNl
ZjNmOTY5OGI0NTkwOTliNzcyYThjOTQuLjRjYmFjNjQ4N2E2YmI1NDljOTZmMjQxMTM2NDg4YjY1
NDVlYzcxMzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL0F1dG9kcmFpbmVkUG9vbC5oCisr
KyBiL1NvdXJjZS9XVEYvd3RmL0F1dG9kcmFpbmVkUG9vbC5oCkBAIC0xLDUgKzEsNSBAQAogLyoK
LSAqIENvcHlyaWdodCAoQykgMjAwNywgMjAxMyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDctMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTI2LDMxICsyNiwzMiBA
QAogICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIEF1dG9kcmFpbmVkUG9vbF9oCi0jZGVmaW5l
IEF1dG9kcmFpbmVkUG9vbF9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9Ob25jb3B5
YWJsZS5oPgogCi0jaWYgVVNFKEZPVU5EQVRJT04pICYmICFkZWZpbmVkKF9fT0JKQ19fKQotdHlw
ZWRlZiBzdHJ1Y3Qgb2JqY19vYmplY3QgKmlkOwotI2VuZGlmCisjaWYgZGVmaW5lZChXVEZfQ09N
UElMSU5HX0FVVE9EUkFJTkVEX1BPT0xfSU1QTEVNRU5UQVRJT04pIHx8ICFkZWZpbmVkKF9fT0JK
Q19fKQogCiBuYW1lc3BhY2UgV1RGIHsKIAorLy8gVGhpcyBjbGFzcyBhbGxvd3Mgbm9uLU9iamVj
dGl2ZS1DIEMrKyBjb2RlIHRvIGNyZWF0ZSBhbiBhdXRvcmVsZWFzZSBwb29sLgorLy8gSXQgY2Fu
bm90IGJlIHVzZWQgaW4gT2JqZWN0aXZlLUMrKyBjb2RlLCB3b24ndCBiZSBjb21waWxlZDsgaW5z
dGVhZCBAYXV0b3JlbGVhc2Vwb29sIHNob3VsZCBiZSB1c2VkLgorLy8gSXQgY2FuIGJlIHVzZWQg
aW4gY3Jvc3MtcGxhdGZvcm0gY29kZTsgd2lsbCBjb21waWxlIGRvd24gdG8gbm90aGluZyBmb3Ig
bm9uLUNvY29hIHBsYXRmb3Jtcy4KKwogY2xhc3MgQXV0b2RyYWluZWRQb29sIHsKICAgICBXVEZf
TUFLRV9OT05DT1BZQUJMRShBdXRvZHJhaW5lZFBvb2wpOworCiBwdWJsaWM6CiAjaWYgVVNFKEZP
VU5EQVRJT04pCiAgICAgV1RGX0VYUE9SVF9QUklWQVRFIEF1dG9kcmFpbmVkUG9vbCgpOwogICAg
IFdURl9FWFBPUlRfUFJJVkFURSB+QXV0b2RyYWluZWRQb29sKCk7CiAjZWxzZQotICAgIGV4cGxp
Y2l0IEF1dG9kcmFpbmVkUG9vbCgpIHsgfQotICAgIH5BdXRvZHJhaW5lZFBvb2woKSB7IH0KKyAg
ICBBdXRvZHJhaW5lZFBvb2woKSA9IGRlZmF1bHQ7CiAjZW5kaWYKLSAgICAKLXByaXZhdGU6CisK
ICNpZiBVU0UoRk9VTkRBVElPTikKLSAgICBpZCBtX3Bvb2w7Citwcml2YXRlOgorICAgIHZvaWQq
IG1fYXV0b3JlbGVhc2VQb29sOwogI2VuZGlmCiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RG
L3d0Zi9BdXRvZHJhaW5lZFBvb2xNYWMubW0gYi9Tb3VyY2UvV1RGL3d0Zi9BdXRvZHJhaW5lZFBv
b2xNYWMubW0KZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGYwYTc1ZDJlMmJmNjU2NzRi
YzQzNGZlOTNhNjNkYjk3ZGQ0YTFiZWUuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAKLS0tIGEvU291cmNlL1dURi93dGYvQXV0b2RyYWluZWRQb29sTWFjLm1tCisrKyAv
ZGV2L251bGwKQEAgLTEsNDYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNywgMjAx
MyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLiAKLSAq
IDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLiAKLSAq
IDMuICBOZWl0aGVyIHRoZSBuYW1lIG9mIEFwcGxlIEluYy4gKCJBcHBsZSIpIG5vciB0aGUgbmFt
ZXMgb2YKLSAqICAgICBpdHMgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3Ig
cHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkCi0gKiAgICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhv
dXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLiAKLSAqCi0gKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIEFQUExFIEFORCBJVFMgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5E
IEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUg
Rk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKLSAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKLSAq
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORAotICogT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRgotICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW1wb3J0ICJjb25maWcuaCIKLSNpbXBvcnQgIkF1
dG9kcmFpbmVkUG9vbC5oIgotCi0jaW1wb3J0IDxGb3VuZGF0aW9uL0ZvdW5kYXRpb24uaD4KLQot
bmFtZXNwYWNlIFdURiB7Ci0KLUF1dG9kcmFpbmVkUG9vbDo6QXV0b2RyYWluZWRQb29sKCkKLSAg
ICA6IG1fcG9vbChbW05TQXV0b3JlbGVhc2VQb29sIGFsbG9jXSBpbml0XSkKLXsgCi19Ci0KLUF1
dG9kcmFpbmVkUG9vbDo6fkF1dG9kcmFpbmVkUG9vbCgpCi17Ci0gICAgW21fcG9vbCBkcmFpbl07
Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdURgpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvUGxh
dGZvcm1NYWMuY21ha2UgYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybU1hYy5jbWFrZQppbmRleCBh
MjZlMDUwM2U1ZjM1ZTk5NGYyYzM5YjM5OTFmM2Q4Y2U2NDRiMzU2Li40ZDgzN2E0NDcxNTU1NDMx
ZTIyYTc5NGU5ZWFkMzIxMzAyZDcyMjFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9QbGF0
Zm9ybU1hYy5jbWFrZQorKysgYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybU1hYy5jbWFrZQpAQCAt
MjEsNiArMjEsNyBAQCBsaXN0KEFQUEVORCBXVEZfUFVCTElDX0hFQURFUlMKICAgICBzcGkvY2Yv
Q0ZCdW5kbGVTUEkuaAogICAgIHNwaS9jZi9DRlN0cmluZ1NQSS5oCiAKKyAgICBzcGkvY29jb2Ev
Rm91bmRhdGlvblNQSS5oCiAgICAgc3BpL2NvY29hL05TTWFwVGFibGVTUEkuaAogICAgIHNwaS9j
b2NvYS9TZWN1cml0eVNQSS5oCiAKQEAgLTMyLDcgKzMzLDYgQEAgbGlzdChBUFBFTkQgV1RGX1BV
QkxJQ19IRUFERVJTCiApCiAKIGxpc3QoQVBQRU5EIFdURl9TT1VSQ0VTCi0gICAgQXV0b2RyYWlu
ZWRQb29sTWFjLm1tCiAgICAgQmxvY2tPYmpDRXhjZXB0aW9ucy5tbQogICAgIFJ1bkxvb3BUaW1l
ckNGLmNwcAogICAgIFNjaGVkdWxlUGFpckNGLmNwcApAQCAtNDEsOCArNDEsNyBAQCBsaXN0KEFQ
UEVORCBXVEZfU09VUkNFUwogICAgIGNmL0xhbmd1YWdlQ0YuY3BwCiAgICAgY2YvUnVuTG9vcENG
LmNwcAogCi0gICAgdGV4dC9tYWMvVGV4dEJyZWFrSXRlcmF0b3JJbnRlcm5hbElDVU1hYy5tbQot
CisgICAgY29jb2EvQXV0b2RyYWluZWRQb29sLm1tCiAgICAgY29jb2EvQ1BVVGltZUNvY29hLm1t
CiAgICAgY29jb2EvRW50aXRsZW1lbnRzLmNwcAogICAgIGNvY29hL01hY2hTZW5kUmlnaHQuY3Bw
CkBAIC02MSw2ICs2MCw3IEBAIGxpc3QoQVBQRU5EIFdURl9TT1VSQ0VTCiAgICAgdGV4dC9tYWMv
U3RyaW5nSW1wbE1hYy5tbQogICAgIHRleHQvbWFjL1N0cmluZ01hYy5tbQogICAgIHRleHQvbWFj
L1N0cmluZ1ZpZXdPYmpDLm1tCisgICAgdGV4dC9tYWMvVGV4dEJyZWFrSXRlcmF0b3JJbnRlcm5h
bElDVU1hYy5tbQogKQogCiBsaXN0KEFQUEVORCBXVEZfUFJJVkFURV9JTkNMVURFX0RJUkVDVE9S
SUVTCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9jb2NvYS9BdXRvZHJhaW5lZFBvb2wubW0g
Yi9Tb3VyY2UvV1RGL3d0Zi9jb2NvYS9BdXRvZHJhaW5lZFBvb2wubW0KbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZWQ0
Y2Y0MmQyNDI3YTVhNmFkYTlhYTI5ZjFhMjk0N2U4MDI3YzZiMAotLS0gL2Rldi9udWxsCisrKyBi
L1NvdXJjZS9XVEYvd3RmL2NvY29hL0F1dG9kcmFpbmVkUG9vbC5tbQpAQCAtMCwwICsxLDUwIEBA
CisvKgorICogQ29weXJpZ2h0IChDKSAyMDA3LTIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICoK
KyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4gCisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4gCisgKiAzLiAgTmVpdGhlciB0aGUgbmFtZSBvZiBB
cHBsZSBJbmMuICgiQXBwbGUiKSBub3IgdGhlIG5hbWVzIG9mCisgKiAgICAgaXRzIGNvbnRyaWJ1
dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAor
ICogICAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4g
cGVybWlzc2lvbi4gCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBB
TkQgSVRTIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQK
KyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExF
IE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1B
R0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQKKyAqIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKKyAqIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKwor
I2RlZmluZSBXVEZfQ09NUElMSU5HX0FVVE9EUkFJTkVEX1BPT0xfSU1QTEVNRU5UQVRJT04KKwor
I2ltcG9ydCAiY29uZmlnLmgiCisjaW1wb3J0ICJBdXRvZHJhaW5lZFBvb2wuaCIKKworI3VuZGVm
IFdURl9DT01QSUxJTkdfQVVUT0RSQUlORURfUE9PTF9JTVBMRU1FTlRBVElPTgorCisjaW1wb3J0
IDx3dGYvc3BpL2NvY29hL0ZvdW5kYXRpb25TUEkuaD4KKworbmFtZXNwYWNlIFdURiB7CisKK0F1
dG9kcmFpbmVkUG9vbDo6QXV0b2RyYWluZWRQb29sKCkKKyAgICA6IG1fYXV0b3JlbGVhc2VQb29s
IHsgTlNQdXNoQXV0b3JlbGVhc2VQb29sKDApIH0KK3sgCit9CisKK0F1dG9kcmFpbmVkUG9vbDo6
fkF1dG9kcmFpbmVkUG9vbCgpCit7CisgICAgTlNQb3BBdXRvcmVsZWFzZVBvb2wobV9hdXRvcmVs
ZWFzZVBvb2wpOworfQorCit9IC8vIG5hbWVzcGFjZSBXVEYKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
VEYvd3RmL3NwaS9jb2NvYS9Gb3VuZGF0aW9uU1BJLmggYi9Tb3VyY2UvV1RGL3d0Zi9zcGkvY29j
b2EvRm91bmRhdGlvblNQSS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY4NDE3NWQxMmI5ZTNjN2JkZjI2ZDJlYmI1
MzAzNjhlYTc3ZWVlMGYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9zcGkvY29j
b2EvRm91bmRhdGlvblNQSS5oCkBAIC0wLDAgKzEsNDEgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMp
IDIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAor
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIu
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9S
UyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09O
VFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21h
IG9uY2UKKworI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCisKKyNpbmNsdWRlIDxGb3VuZGF0
aW9uL05TUHJpdmF0ZURlY2xzLmg+CisKKyNlbmRpZgorCit0eXBlZGVmIHZvaWQqIE5TQXV0b3Jl
bGVhc2VQb29sTWFyazsKKworV1RGX0VYVEVSTl9DX0JFR0lOCisKK05TQXV0b3JlbGVhc2VQb29s
TWFyayBOU1B1c2hBdXRvcmVsZWFzZVBvb2woTlNVSW50ZWdlciBjYXBhY2l0eSk7Cit2b2lkIE5T
UG9wQXV0b3JlbGVhc2VQb29sKE5TQXV0b3JlbGVhc2VQb29sTWFyayk7CisKK1dURl9FWFRFUk5f
Q19FTkQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagppbmRleCA1OWU3NDdhZmVkZjE2OWM0OTYxMTA1OTk3ZjQzNWJkYWRlZTU5ZDY1Li44ZGU1
ZWM3MmVlYTMxZDRkNGU4YzVhYjgxOTFjZTJjMjg3MGMyZTg2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dl
YkNvcmUvUEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0xMTIsNyArMTEyLDYg
QEAKIAkJNTdGMTI1MTgyMDU3ODdENzAwMUFCOEE2IC8qIERldmljZUlkZW50aXR5U1BJLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1N0YxMjUxNzIwNTc4
N0M4MDAxQUI4QTYgLyogRGV2aWNlSWRlbnRpdHlTUEkuaCAqLzsgfTsKIAkJN0ExNjU2NDQxRjk3
QjJCOTAwQkEzQ0U0IC8qIE5TS2V5ZWRBcmNoaXZlclNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0ExNjU2NDMxRjk3QjJCODAwQkEzQ0U0IC8qIE5T
S2V5ZWRBcmNoaXZlclNQSS5oICovOyB9OwogCQk3QTNBNkE4MDIwQ0FEQjQ3MDAzMTdBQUUgLyog
TlNJbWFnZVNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gN0EzQTZBN0YyMENBREI0NjAwMzE3QUFFIC8qIE5TSW1hZ2VTUEkuaCAqLzsgfTsKLQkJQTEw
MjY1ODcxRjU2NzQ2MTAwQjRDODQ0IC8qIEZvdW5kYXRpb25TUEkuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExMDI2NTg2MUY1Njc0NjEwMEI0Qzg0NCAv
KiBGb3VuZGF0aW9uU1BJLmggKi87IH07CiAJCUExMDI2NTg5MUY1Njc0N0EwMEI0Qzg0NCAvKiBI
SVRvb2xib3hTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEExMDI2NTg4MUY1Njc0N0EwMEI0Qzg0NCAvKiBISVRvb2xib3hTUEkuaCAqLzsgfTsKIAkJ
QTEwMjY1OEIxRjU2NzQ4QzAwQjRDODQ0IC8qIFF1aWNrRHJhd1NQSS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTEwMjY1OEExRjU2NzQ4QzAwQjRDODQ0
IC8qIFF1aWNrRHJhd1NQSS5oICovOyB9OwogCQlBMTAyNjU4RTFGNTY3RTlEMDBCNEM4NDQgLyog
SElTZXJ2aWNlc1NQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQTEwMjY1OEQxRjU2N0U5RDAwQjRDODQ0IC8qIEhJU2VydmljZXNTUEkuaCAqLzsgfTsK
QEAgLTI2MSw3ICsyNjAsNiBAQAogCQk3QTE2NTY0MzFGOTdCMkI4MDBCQTNDRTQgLyogTlNLZXll
ZEFyY2hpdmVyU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5TS2V5ZWRB
cmNoaXZlclNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3QTNBNkE3RjIwQ0FE
QjQ2MDAzMTdBQUUgLyogTlNJbWFnZVNQSS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBOU0ltYWdlU1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzRTU5MDlD
MUY5M0JGMUUwMDY3RjhDRiAvKiBVbmVuY29kYWJsZUhhbmRsaW5nLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFVuZW5jb2RhYmxlSGFuZGxpbmcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQTEw
MjY1ODYxRjU2NzQ2MTAwQjRDODQ0IC8qIEZvdW5kYXRpb25TUEkuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gRm91bmRhdGlvblNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQlBMTAyNjU4ODFGNTY3NDdBMDBCNEM4NDQgLyogSElUb29sYm94U1BJLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhJVG9vbGJveFNQSS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQlBMTAyNjU4QTFGNTY3NDhDMDBCNEM4NDQgLyogUXVpY2tEcmF3U1BJ
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFF1aWNrRHJhd1NQSS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBMTAyNjU4RDFGNTY3RTlEMDBCNEM4NDQgLyogSElT
ZXJ2aWNlc1NQSS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBISVNlcnZpY2VzU1BJLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CkBAIC0zNjQsNyArMzYyLDYgQEAKIAkJCQkwQzJEQTEyNDFGM0JFQjQ5
MDBEQkMzMTcgLyogQ29yZVRleHRTUEkuaCAqLywKIAkJCQkwQzJEQTEyNTFGM0JFQjQ5MDBEQkMz
MTcgLyogRGF0YURldGVjdG9yc0NvcmVTUEkuaCAqLywKIAkJCQk1N0YxMjUxNzIwNTc4N0M4MDAx
QUI4QTYgLyogRGV2aWNlSWRlbnRpdHlTUEkuaCAqLywKLQkJCQlBMTAyNjU4NjFGNTY3NDYxMDBC
NEM4NDQgLyogRm91bmRhdGlvblNQSS5oICovLAogCQkJCTBDMkRBMTI2MUYzQkVCNDkwMERCQzMx
NyAvKiBJT1BNTGliU1BJLmggKi8sCiAJCQkJMEMyREExMjcxRjNCRUI0OTAwREJDMzE3IC8qIElP
UFNMaWJTUEkuaCAqLywKIAkJCQkwQzJEQTEyODFGM0JFQjQ5MDBEQkMzMTcgLyogSU9SZXR1cm5T
UEkuaCAqLywKQEAgLTYzOSw3ICs2MzYsNiBAQAogCQkJCTU3RjEyNTE4MjA1Nzg3RDcwMDFBQjhB
NiAvKiBEZXZpY2VJZGVudGl0eVNQSS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEMyRDlFNzMxRUVG
NUFGNjAwREJDMzE3IC8qIEV4cG9ydE1hY3Jvcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRjQ0Mjkx
NjAxRkE1MjYxRTAwMkNDOTNFIC8qIEZpbGVTaXplRm9ybWF0dGVyLmggaW4gSGVhZGVycyAqLywK
LQkJCQlBMTAyNjU4NzFGNTY3NDYxMDBCNEM4NDQgLyogRm91bmRhdGlvblNQSS5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJMEM1QUY5MUIxRjQzQTRDNzAwMkVBQzAyIC8qIEdyYXBoaWNzU2VydmljZXNT
UEkuaCBpbiBIZWFkZXJzICovLAogCQkJCUExMDI2NThFMUY1NjdFOUQwMEI0Qzg0NCAvKiBISVNl
cnZpY2VzU1BJLmggaW4gSGVhZGVycyAqLywKIAkJCQlBMTAyNjU4OTFGNTY3NDdBMDBCNEM4NDQg
LyogSElUb29sYm94U1BJLmggaW4gSGVhZGVycyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL1BBTC9wYWwvUGxhdGZvcm1NYWMuY21ha2UgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL1Bs
YXRmb3JtTWFjLmNtYWtlCmluZGV4IDdlMzgyZDg4ZTI0MWVlYzY5MGM1YzVlOTJkYTM5ODI0NDY1
NzgxOTIuLmIyYWNmYmIxMzk3OWExMDA3M2NiZGIzNDk1YzAyODliZjVkMjNkZDAgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvUGxhdGZvcm1NYWMuY21ha2UKKysrIGIvU291cmNl
L1dlYkNvcmUvUEFML3BhbC9QbGF0Zm9ybU1hYy5jbWFrZQpAQCAtMTcsNyArMTcsNiBAQCBsaXN0
KEFQUEVORCBQQUxfUFVCTElDX0hFQURFUlMKICAgICBzcGkvY29jb2EvQ0ZOU1VSTENvbm5lY3Rp
b25TUEkuaAogICAgIHNwaS9jb2NvYS9Db3JlVGV4dFNQSS5oCiAgICAgc3BpL2NvY29hL0RhdGFE
ZXRlY3RvcnNDb3JlU1BJLmgKLSAgICBzcGkvY29jb2EvRm91bmRhdGlvblNQSS5oCiAgICAgc3Bp
L2NvY29hL0lPUE1MaWJTUEkuaAogICAgIHNwaS9jb2NvYS9JT1BTTGliU1BJLmgKICAgICBzcGkv
Y29jb2EvSU9SZXR1cm5TUEkuaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9z
cGkvY29jb2EvRm91bmRhdGlvblNQSS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29j
b2EvRm91bmRhdGlvblNQSS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2ODQxNzVk
MTJiOWUzYzdiZGYyNmQyZWJiNTMwMzY4ZWE3N2VlZTBmLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29h
L0ZvdW5kYXRpb25TUEkuaAorKysgL2Rldi9udWxsCkBAIC0xLDQxICswLDAgQEAKLS8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRT
IENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5D
LiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgot
ICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkK
LSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAq
LwotCi0jcHJhZ21hIG9uY2UKLQotI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCi0KLSNpbmNs
dWRlIDxGb3VuZGF0aW9uL05TUHJpdmF0ZURlY2xzLmg+Ci0KLSNlbmRpZgotCi10eXBlZGVmIHZv
aWQqIE5TQXV0b3JlbGVhc2VQb29sTWFyazsKLQotV1RGX0VYVEVSTl9DX0JFR0lOCi0KLU5TQXV0
b3JlbGVhc2VQb29sTWFyayBOU1B1c2hBdXRvcmVsZWFzZVBvb2woTlNVSW50ZWdlciBjYXBhY2l0
eSk7Ci12b2lkIE5TUG9wQXV0b3JlbGVhc2VQb29sKE5TQXV0b3JlbGVhc2VQb29sTWFyayk7Ci0K
LVdURl9FWFRFUk5fQ19FTkQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpj
L29iamNfY2xhc3MubW0gYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX2NsYXNzLm1t
CmluZGV4IGNhNGE2YzJkZWM1YjgyYjQwNmFkZmVkMTEyMDkzMTBiNjY4M2E2ZGYuLmNlMWVmNjU1
N2EwNzYzYTdkMzQzMGEzYmY5ODZhMTk4N2Y4Y2IzNTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JyaWRnZS9vYmpjL29iamNfY2xhc3MubW0KKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdl
L29iamMvb2JqY19jbGFzcy5tbQpAQCAtMjMsMTIgKzIzLDEyIEBACiAgKiBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAK
ICAqLwogCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAib2JqY19jbGFzcy5oIgorI2lt
cG9ydCAiY29uZmlnLmgiCisjaW1wb3J0ICJvYmpjX2NsYXNzLmgiCiAKLSNpbmNsdWRlICJvYmpj
X2luc3RhbmNlLmgiCi0jaW5jbHVkZSAiV2ViU2NyaXB0T2JqZWN0LmgiCi0jaW5jbHVkZSAiV2Vi
U2NyaXB0T2JqZWN0UHJvdG9jb2wuaCIKKyNpbXBvcnQgIldlYlNjcmlwdE9iamVjdC5oIgorI2lt
cG9ydCAiV2ViU2NyaXB0T2JqZWN0UHJvdG9jb2wuaCIKKyNpbXBvcnQgIm9iamNfaW5zdGFuY2Uu
aCIKIAogbmFtZXNwYWNlIEpTQyB7CiBuYW1lc3BhY2UgQmluZGluZ3MgewpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19pbnN0YW5jZS5oIGIvU291cmNlL1dlYkNv
cmUvYnJpZGdlL29iamMvb2JqY19pbnN0YW5jZS5oCmluZGV4IDk5M2E2ZjU3MWU2M2JmY2RlY2Ji
NGY5NGQzZDA1ZTg3ZDhmMjRlM2YuLjVmMjg1ZTkxYjhkZjVkNTE1ZTU1NjBkNDQ5NjVkYTY0MDQx
NTRlYjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfaW5zdGFu
Y2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLmgKQEAg
LTIzLDExICsyMyw4IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIEJJTkRJTkdT
X09CSkNfSU5TVEFOQ0VfSF8KLSNkZWZpbmUgQklORElOR1NfT0JKQ19JTlNUQU5DRV9IXwotCi0j
aW5jbHVkZSAib2JqY19jbGFzcy5oIgotI2luY2x1ZGUgIm9iamNfdXRpbGl0eS5oIgorI2ltcG9y
dCAib2JqY19jbGFzcy5oIgorI2ltcG9ydCAib2JqY191dGlsaXR5LmgiCiAKIG5hbWVzcGFjZSBK
U0MgewogCkBAIC03NSwxMyArNzIsMTEgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIFJ1bnRpbWVP
YmplY3QqIG5ld1J1bnRpbWVPYmplY3QoRXhlY1N0YXRlKik7CiAKICAgICBSZXRhaW5QdHI8T2Jq
ZWN0U3RydWN0UHRyPiBfaW5zdGFuY2U7Ci0gICAgbXV0YWJsZSBPYmpjQ2xhc3MgKl9jbGFzczsK
LSAgICBPYmplY3RTdHJ1Y3RQdHIgX3Bvb2w7Ci0gICAgaW50IF9iZWdpbkNvdW50OworICAgIG11
dGFibGUgT2JqY0NsYXNzKiBfY2xhc3MgeyBudWxscHRyIH07CisgICAgdm9pZCogbV9hdXRvcmVs
ZWFzZVBvb2wgeyBudWxscHRyIH07CisgICAgaW50IF9iZWdpbkNvdW50IHsgMCB9OwogfTsKIAog
fSAvLyBuYW1lc3BhY2UgQmluZGluZ3MKIAogfSAvLyBuYW1lc3BhY2UgSlNDCi0KLSNlbmRpZiAv
LyBCSU5ESU5HU19PQkpDX0lOU1RBTkNFX0hfCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
cmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLm1tIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMv
b2JqY19pbnN0YW5jZS5tbQppbmRleCA2OGU1NzMxMmRhYzBhN2FhOTQzNTgzYzg5ODE4ZThlOGEz
NmYwMzE3Li5iMTIyMWMwZTEyY2Q3YWM4NmM1YTBhNGM3YzE0Y2I4MDU3OTEwNjI4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLm1tCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfaW5zdGFuY2UubW0KQEAgLTEsNSArMSw1IEBA
CiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA0LCAyMDA4LTIwMDksIDIwMTMsIDIwMTYgQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA0LTIwMTggQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCkBAIC00MCw2ICs0MCw3IEBACiAjaW1wb3J0IDx3dGYvTWFpblRocmVhZC5oPgogI2ltcG9y
dCA8d3RmL05ldmVyRGVzdHJveWVkLmg+CiAjaW1wb3J0IDx3dGYvVGhyZWFkU3BlY2lmaWMuaD4K
KyNpbXBvcnQgPHd0Zi9zcGkvY29jb2EvRm91bmRhdGlvblNQSS5oPgogCiAjaWZkZWYgTkRFQlVH
CiAjZGVmaW5lIE9CSkNfTE9HKGZvcm1hdEFuZEFyZ3MuLi4pICgodm9pZCkwKQpAQCAtMTAwLDkg
KzEwMSw2IEBAIHZvaWQgT2JqY0luc3RhbmNlOjptb3ZlR2xvYmFsRXhjZXB0aW9uVG9FeGVjU3Rh
dGUoRXhlY1N0YXRlKiBleGVjKQogT2JqY0luc3RhbmNlOjpPYmpjSW5zdGFuY2UoaWQgaW5zdGFu
Y2UsIFJlZlB0cjxSb290T2JqZWN0PiYmIHJvb3RPYmplY3QpIAogICAgIDogSW5zdGFuY2UoV1RG
TW92ZShyb290T2JqZWN0KSkKICAgICAsIF9pbnN0YW5jZShpbnN0YW5jZSkKLSAgICAsIF9jbGFz
cygwKQotICAgICwgX3Bvb2woMCkKLSAgICAsIF9iZWdpbkNvdW50KDApCiB7CiB9CiAKQEAgLTEz
Myw4ICsxMzEsOCBAQCBPYmpjSW5zdGFuY2U6On5PYmpjSW5zdGFuY2UoKQogCiB2b2lkIE9iamNJ
bnN0YW5jZTo6dmlydHVhbEJlZ2luKCkKIHsKLSAgICBpZiAoIV9wb29sKQotICAgICAgICBfcG9v
bCA9IFtbTlNBdXRvcmVsZWFzZVBvb2wgYWxsb2NdIGluaXRdOworICAgIGlmICghbV9hdXRvcmVs
ZWFzZVBvb2wpCisgICAgICAgIG1fYXV0b3JlbGVhc2VQb29sID0gTlNQdXNoQXV0b3JlbGVhc2VQ
b29sKDApOwogICAgIF9iZWdpbkNvdW50Kys7CiB9CiAKQEAgLTE0Myw4ICsxNDEsOSBAQCB2b2lk
IE9iamNJbnN0YW5jZTo6dmlydHVhbEVuZCgpCiAgICAgX2JlZ2luQ291bnQtLTsKICAgICBBU1NF
UlQoX2JlZ2luQ291bnQgPj0gMCk7CiAgICAgaWYgKCFfYmVnaW5Db3VudCkgewotICAgICAgICBb
X3Bvb2wgZHJhaW5dOwotICAgICAgICBfcG9vbCA9IDA7CisgICAgICAgIEFTU0VSVChtX2F1dG9y
ZWxlYXNlUG9vbCk7CisgICAgICAgIE5TUG9wQXV0b3JlbGVhc2VQb29sKG1fYXV0b3JlbGVhc2VQ
b29sKTsKKyAgICAgICAgbV9hdXRvcmVsZWFzZVBvb2wgPSBudWxscHRyOwogICAgIH0KIH0KIApA
QCAtNTA3LDEzICs1MDYsMTEgQEAgSlNDOjpKU1ZhbHVlIE9iamNJbnN0YW5jZTo6c3RyaW5nVmFs
dWUoRXhlY1N0YXRlKiBleGVjKSBjb25zdAogCiBKU0M6OkpTVmFsdWUgT2JqY0luc3RhbmNlOjpu
dW1iZXJWYWx1ZShFeGVjU3RhdGUqKSBjb25zdAogewotICAgIC8vIEZJWE1FOiAgSW1wbGVtZW50
IHNvbWV0aGluZyBzZW5zaWJsZQogICAgIHJldHVybiBqc051bWJlcigwKTsKIH0KIAogSlNDOjpK
U1ZhbHVlIE9iamNJbnN0YW5jZTo6Ym9vbGVhblZhbHVlKCkgY29uc3QKIHsKLSAgICAvLyBGSVhN
RTogIEltcGxlbWVudCBzb21ldGhpbmcgc2Vuc2libGUKICAgICByZXR1cm4ganNCb29sZWFuKGZh
bHNlKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19y
dW50aW1lLm1tIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19ydW50aW1lLm1tCmlu
ZGV4IDg3ZDAzODdhNjlhNzUzN2QyZjllZDZiZDZjNTMyMmI0NzI1MDFmMWUuLmU3YjFiZGJlYmJm
OTVkNjRjODhmMmYyYmMxY2Y2YTE1MTEyZTI0NTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JyaWRnZS9vYmpjL29iamNfcnVudGltZS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uv
b2JqYy9vYmpjX3J1bnRpbWUubW0KQEAgLTIzLDIwICsyMywyMCBAQAogICogT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4g
CiAgKi8KIAotI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIm9iamNfcnVudGltZS5oIgot
Ci0jaW5jbHVkZSAiSlNET01CaW5kaW5nLmgiCi0jaW5jbHVkZSAiT2JqQ1J1bnRpbWVPYmplY3Qu
aCIKLSNpbmNsdWRlICJXZWJTY3JpcHRPYmplY3QuaCIKLSNpbmNsdWRlICJXZWJTY3JpcHRPYmpl
Y3RQcm90b2NvbC5oIgotI2luY2x1ZGUgIm9iamNfaW5zdGFuY2UuaCIKLSNpbmNsdWRlICJydW50
aW1lX2FycmF5LmgiCi0jaW5jbHVkZSAicnVudGltZV9vYmplY3QuaCIKLSNpbmNsdWRlIDxKYXZh
U2NyaXB0Q29yZS9FcnJvci5oPgotI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0pTR2xvYmFsT2Jq
ZWN0Lmg+Ci0jaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSlNMb2NrLmg+Ci0jaW5jbHVkZSA8d3Rm
L1JldGFpblB0ci5oPgorI2ltcG9ydCAiY29uZmlnLmgiCisjaW1wb3J0ICJvYmpjX3J1bnRpbWUu
aCIKKworI2ltcG9ydCAiSlNET01CaW5kaW5nLmgiCisjaW1wb3J0ICJPYmpDUnVudGltZU9iamVj
dC5oIgorI2ltcG9ydCAiV2ViU2NyaXB0T2JqZWN0LmgiCisjaW1wb3J0ICJXZWJTY3JpcHRPYmpl
Y3RQcm90b2NvbC5oIgorI2ltcG9ydCAib2JqY19pbnN0YW5jZS5oIgorI2ltcG9ydCAicnVudGlt
ZV9hcnJheS5oIgorI2ltcG9ydCAicnVudGltZV9vYmplY3QuaCIKKyNpbXBvcnQgPEphdmFTY3Jp
cHRDb3JlL0Vycm9yLmg+CisjaW1wb3J0IDxKYXZhU2NyaXB0Q29yZS9KU0dsb2JhbE9iamVjdC5o
PgorI2ltcG9ydCA8SmF2YVNjcmlwdENvcmUvSlNMb2NrLmg+CisjaW1wb3J0IDx3dGYvUmV0YWlu
UHRyLmg+CiAKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX3V0aWxpdHkubW0gYi9Tb3VyY2UvV2ViQ29yZS9icmlk
Z2Uvb2JqYy9vYmpjX3V0aWxpdHkubW0KaW5kZXggMTJkMDUyZDIyNDg5NGMzYzdiYmM5YTY3ZjI3
NWJiZTY4ZDM0OGNlNi4uMTk3MDQzZmY1MWRhZjRjYjA5NTZjOGU1OGE0NTA4Yzk2YTgxZGMzYyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY191dGlsaXR5Lm1tCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfdXRpbGl0eS5tbQpAQCAtMjMsMTYg
KzIzLDE2IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0j
aW5jbHVkZSAib2JqY191dGlsaXR5LmgiCisjaW1wb3J0ICJjb25maWcuaCIKKyNpbXBvcnQgIm9i
amNfdXRpbGl0eS5oIgogCi0jaW5jbHVkZSAiV2ViU2NyaXB0T2JqZWN0UHJvdG9jb2wuaCIKLSNp
bmNsdWRlICJvYmpjX2luc3RhbmNlLmgiCi0jaW5jbHVkZSAicnVudGltZV9hcnJheS5oIgotI2lu
Y2x1ZGUgInJ1bnRpbWVfb2JqZWN0LmgiCi0jaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSlNHbG9i
YWxPYmplY3QuaD4KLSNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9KU0xvY2suaD4KLSNpbmNsdWRl
IDx3dGYvQXNzZXJ0aW9ucy5oPgorI2ltcG9ydCAiV2ViU2NyaXB0T2JqZWN0UHJvdG9jb2wuaCIK
KyNpbXBvcnQgIm9iamNfaW5zdGFuY2UuaCIKKyNpbXBvcnQgInJ1bnRpbWVfYXJyYXkuaCIKKyNp
bXBvcnQgInJ1bnRpbWVfb2JqZWN0LmgiCisjaW1wb3J0IDxKYXZhU2NyaXB0Q29yZS9KU0dsb2Jh
bE9iamVjdC5oPgorI2ltcG9ydCA8SmF2YVNjcmlwdENvcmUvSlNMb2NrLmg+CisjaW1wb3J0IDx3
dGYvQXNzZXJ0aW9ucy5oPgogCiAjaWYgIWRlZmluZWQoX0NfTE5HX0xORykKICNkZWZpbmUgX0Nf
TE5HX0xORyAncScKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL21h
Yy9BdWRpb0J1c01hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL21hYy9BdWRp
b0J1c01hYy5tbQppbmRleCA3MDNhNjdiN2IzODQyYzE2Mjk3Zjg5M2U5NDZhOGJjMjI0YzVkNGE2
Li5mYzU1MTM0YzgyM2JjZjU3YTQ2YzdkY2UyYzBjNjgzYTk0NTQ1YjU3IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9tYWMvQXVkaW9CdXNNYWMubW0KKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vbWFjL0F1ZGlvQnVzTWFjLm1tCkBAIC0yOSw5ICsy
OSw2IEBACiAjaW1wb3J0ICJBdWRpb0J1cy5oIgogCiAjaW1wb3J0ICJBdWRpb0ZpbGVSZWFkZXIu
aCIKLSNpbXBvcnQgPHd0Zi9BdXRvZHJhaW5lZFBvb2wuaD4KLSNpbXBvcnQgPHd0Zi9SZWZQdHIu
aD4KLSNpbXBvcnQgPEZvdW5kYXRpb24vRm91bmRhdGlvbi5oPgogCiBAaW50ZXJmYWNlIFdlYkNv
cmVBdWRpb0J1bmRsZUNsYXNzIDogTlNPYmplY3QKIEBlbmQKQEAgLTQzLDE2ICs0MCwxMiBAQCBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKIFJlZlB0cjxBdWRpb0J1cz4gQXVkaW9CdXM6OmxvYWRQbGF0
Zm9ybVJlc291cmNlKGNvbnN0IGNoYXIqIG5hbWUsIGZsb2F0IHNhbXBsZVJhdGUpCiB7Ci0gICAg
Ly8gVGhpcyBtZXRob2QgY2FuIGJlIGNhbGxlZCBmcm9tIG90aGVyIHRoYW4gdGhlIG1haW4gdGhy
ZWFkLCBzbyB3ZSBuZWVkIGFuIGF1dG8tcmVsZWFzZSBwb29sLgotICAgIEF1dG9kcmFpbmVkUG9v
bCBwb29sOwotICAgIAotICAgIE5TQnVuZGxlICpidW5kbGUgPSBbTlNCdW5kbGUgYnVuZGxlRm9y
Q2xhc3M6W1dlYkNvcmVBdWRpb0J1bmRsZUNsYXNzIGNsYXNzXV07Ci0gICAgTlNVUkwgKmF1ZGlv
RmlsZVVSTCA9IFtidW5kbGUgVVJMRm9yUmVzb3VyY2U6W05TU3RyaW5nIHN0cmluZ1dpdGhVVEY4
U3RyaW5nOm5hbWVdIHdpdGhFeHRlbnNpb246QCJ3YXYiIHN1YmRpcmVjdG9yeTpAImF1ZGlvIl07
Ci0gICAgTlNEYXRhUmVhZGluZ09wdGlvbnMgb3B0aW9ucyA9IE5TRGF0YVJlYWRpbmdNYXBwZWRJ
ZlNhZmU7Ci0gICAgTlNEYXRhICphdWRpb0RhdGEgPSBbTlNEYXRhIGRhdGFXaXRoQ29udGVudHNP
ZlVSTDphdWRpb0ZpbGVVUkwgb3B0aW9uczpvcHRpb25zIGVycm9yOm5pbF07Ci0KLSAgICBpZiAo
YXVkaW9EYXRhKQotICAgICAgICByZXR1cm4gY3JlYXRlQnVzRnJvbUluTWVtb3J5QXVkaW9GaWxl
KFthdWRpb0RhdGEgYnl0ZXNdLCBbYXVkaW9EYXRhIGxlbmd0aF0sIGZhbHNlLCBzYW1wbGVSYXRl
KTsKKyAgICBAYXV0b3JlbGVhc2Vwb29sIHsKKyAgICAgICAgTlNCdW5kbGUgKmJ1bmRsZSA9IFtO
U0J1bmRsZSBidW5kbGVGb3JDbGFzczpbV2ViQ29yZUF1ZGlvQnVuZGxlQ2xhc3MgY2xhc3NdXTsK
KyAgICAgICAgTlNVUkwgKmF1ZGlvRmlsZVVSTCA9IFtidW5kbGUgVVJMRm9yUmVzb3VyY2U6W05T
U3RyaW5nIHN0cmluZ1dpdGhVVEY4U3RyaW5nOm5hbWVdIHdpdGhFeHRlbnNpb246QCJ3YXYiIHN1
YmRpcmVjdG9yeTpAImF1ZGlvIl07CisgICAgICAgIGlmIChOU0RhdGEgKmF1ZGlvRGF0YSA9IFtO
U0RhdGEgZGF0YVdpdGhDb250ZW50c09mVVJMOmF1ZGlvRmlsZVVSTCBvcHRpb25zOk5TRGF0YVJl
YWRpbmdNYXBwZWRJZlNhZmUgZXJyb3I6bmlsXSkKKyAgICAgICAgICAgIHJldHVybiBjcmVhdGVC
dXNGcm9tSW5NZW1vcnlBdWRpb0ZpbGUoW2F1ZGlvRGF0YSBieXRlc10sIFthdWRpb0RhdGEgbGVu
Z3RoXSwgZmFsc2UsIHNhbXBsZVJhdGUpOworICAgIH0KIAogICAgIEFTU0VSVF9OT1RfUkVBQ0hF
RCgpOwogICAgIHJldHVybiBudWxscHRyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vaW9zL3dhay9XZWJDb3JlVGhyZWFkLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
aW9zL3dhay9XZWJDb3JlVGhyZWFkLm1tCmluZGV4IDRhOTJiYzY4NTNiNjI2ZTg4ZmNmMjQ1ZTI0
ZjliZDdhMjY3NzkxZmUuLjBhMmM2ZTVhNjdiNDJmYjgwMzM3OTU2YTZjODBjZjUyODA3ZmQzYzEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy93YWsvV2ViQ29yZVRocmVh
ZC5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3Mvd2FrL1dlYkNvcmVUaHJlYWQu
bW0KQEAgLTM0LDI0ICszNCwyMyBAQAogI2ltcG9ydCAiUnVudGltZUFwcGxpY2F0aW9uQ2hlY2tz
LmgiCiAjaW1wb3J0ICJUaHJlYWRHbG9iYWxEYXRhLmgiCiAjaW1wb3J0ICJXQUtXaW5kb3cuaCIK
KyNpbXBvcnQgIldLVXRpbGl0aWVzLmgiCiAjaW1wb3J0ICJXZWJDb3JlVGhyZWFkSW50ZXJuYWwu
aCIKICNpbXBvcnQgIldlYkNvcmVUaHJlYWRNZXNzYWdlLmgiCiAjaW1wb3J0ICJXZWJDb3JlVGhy
ZWFkUnVuLmgiCi0jaW1wb3J0ICJXS1V0aWxpdGllcy5oIgotCisjaW1wb3J0IDxGb3VuZGF0aW9u
L05TSW52b2NhdGlvbi5oPgogI2ltcG9ydCA8SmF2YVNjcmlwdENvcmUvSW5pdGlhbGl6ZVRocmVh
ZGluZy5oPgogI2ltcG9ydCA8SmF2YVNjcmlwdENvcmUvSlNMb2NrLmg+CisjaW1wb3J0IDxsaWJr
ZXJuL09TQXRvbWljLmg+CisjaW1wb3J0IDxvYmpjL3J1bnRpbWUuaD4KICNpbXBvcnQgPHd0Zi9B
c3NlcnRpb25zLmg+CiAjaW1wb3J0IDx3dGYvTWFpblRocmVhZC5oPgogI2ltcG9ydCA8d3RmL1Jl
Y3Vyc2l2ZUxvY2tBZGFwdGVyLmg+CiAjaW1wb3J0IDx3dGYvUnVuTG9vcC5oPgogI2ltcG9ydCA8
d3RmL1RocmVhZGluZy5oPgorI2ltcG9ydCA8d3RmL3NwaS9jb2NvYS9Gb3VuZGF0aW9uU1BJLmg+
CiAjaW1wb3J0IDx3dGYvdGV4dC9BdG9taWNTdHJpbmcuaD4KIAotI2ltcG9ydCA8Rm91bmRhdGlv
bi9OU0ludm9jYXRpb24uaD4KLSNpbXBvcnQgPGxpYmtlcm4vT1NBdG9taWMuaD4KLSNpbXBvcnQg
PG9iamMvcnVudGltZS5oPgotCiAjZGVmaW5lIExPR19NRVNTQUdFUyAwCiAjZGVmaW5lIExPR19X
RUJfTE9DSyAwCiAjZGVmaW5lIExPR19NQUlOX1RIUkVBRF9MT0NLSU5HIDAKQEAgLTgyLDE2ICs4
MSw2IEBAIC0gKHZvaWQpcmVsZWFzZU9uTWFpblRocmVhZCB7CiAKIEBlbmQKIAotdXNpbmcgTlNB
dXRvcmVsZWFzZVBvb2xNYXJrID0gdm9pZCo7Ci0jaWZkZWYgX19jcGx1c3BsdXMKLWV4dGVybiAi
QyIgewotI2VuZGlmCi1leHRlcm4gTlNBdXRvcmVsZWFzZVBvb2xNYXJrIE5TUHVzaEF1dG9yZWxl
YXNlUG9vbCh1bnNpZ25lZCBpZ25vcmVkKTsKLWV4dGVybiB2b2lkIE5TUG9wQXV0b3JlbGVhc2VQ
b29sKE5TQXV0b3JlbGVhc2VQb29sTWFyayB0b2tlbik7Ci0jaWZkZWYgX19jcGx1c3BsdXMKLX0K
LSNlbmRpZgotCiBzdGF0aWMgUmVjdXJzaXZlTG9jayB3ZWJMb2NrOwogc3RhdGljIExvY2sgd2Vi
VGhyZWFkUmVsZWFzZUxvY2s7CiBzdGF0aWMgUmVjdXJzaXZlTG9jayB3ZWJDb3JlUmVsZWFzZUxv
Y2s7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NvY29hL1Jl
c291cmNlUmVzcG9uc2VDb2NvYS5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsv
Y29jb2EvUmVzb3VyY2VSZXNwb25zZUNvY29hLm1tCmluZGV4IDNkOGYzOTZkODA3YzkyYTEyNTY1
YzliYWNkZTE1YmU3MjJhNmY5MWMuLjJiYzU0MWU0MTM2ZDUzYjg5OTAyMTQ0YzJhZjNjYzM2Njll
YmMzMmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY29jb2Ev
UmVzb3VyY2VSZXNwb25zZUNvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvY29jb2EvUmVzb3VyY2VSZXNwb25zZUNvY29hLm1tCkBAIC0xNzUsMjYgKzE3NSwyOCBA
QCB2b2lkIFJlc291cmNlUmVzcG9uc2U6OnBsYXRmb3JtTGF6eUluaXQoSW5pdExldmVsIGluaXRM
ZXZlbCkKICAgICBpZiAobV9pc051bGwgfHwgIW1fbnNSZXNwb25zZSkKICAgICAgICAgcmV0dXJu
OwogICAgIAotICAgIEF1dG9kcmFpbmVkUG9vbCBwb29sOworICAgIEBhdXRvcmVsZWFzZXBvb2wg
ewogCi0gICAgTlNIVFRQVVJMUmVzcG9uc2UgKmh0dHBSZXNwb25zZSA9IFttX25zUmVzcG9uc2Uu
Z2V0KCkgaXNLaW5kT2ZDbGFzczpbTlNIVFRQVVJMUmVzcG9uc2UgY2xhc3NdXSA/IChOU0hUVFBV
UkxSZXNwb25zZSAqKW1fbnNSZXNwb25zZS5nZXQoKSA6IG51bGxwdHI7CisgICAgICAgIE5TSFRU
UFVSTFJlc3BvbnNlICpodHRwUmVzcG9uc2UgPSBbbV9uc1Jlc3BvbnNlLmdldCgpIGlzS2luZE9m
Q2xhc3M6W05TSFRUUFVSTFJlc3BvbnNlIGNsYXNzXV0gPyAoTlNIVFRQVVJMUmVzcG9uc2UgKilt
X25zUmVzcG9uc2UuZ2V0KCkgOiBudWxscHRyOworCisgICAgICAgIGlmIChtX2luaXRMZXZlbCA8
IENvbW1vbkZpZWxkc09ubHkpIHsKKyAgICAgICAgICAgIG1fdXJsID0gW21fbnNSZXNwb25zZS5n
ZXQoKSBVUkxdOworICAgICAgICAgICAgbV9taW1lVHlwZSA9IFttX25zUmVzcG9uc2UuZ2V0KCkg
TUlNRVR5cGVdOworICAgICAgICAgICAgbV9leHBlY3RlZENvbnRlbnRMZW5ndGggPSBbbV9uc1Jl
c3BvbnNlLmdldCgpIGV4cGVjdGVkQ29udGVudExlbmd0aF07CisgICAgICAgICAgICAvLyBTdHJp
cHBpbmcgZG91YmxlIHF1b3RlcyBhcyBhIHdvcmthcm91bmQgZm9yIDxyZGFyOi8vcHJvYmxlbS84
NzU3MDg4PiwgY2FuIGJlIHJlbW92ZWQgb25jZSB0aGF0IGlzIGZpeGVkLgorICAgICAgICAgICAg
bV90ZXh0RW5jb2RpbmdOYW1lID0gc3RyaXBMZWFkaW5nQW5kVHJhaWxpbmdEb3VibGVRdW90ZShb
bV9uc1Jlc3BvbnNlLmdldCgpIHRleHRFbmNvZGluZ05hbWVdKTsKKyAgICAgICAgICAgIG1faHR0
cFN0YXR1c0NvZGUgPSBodHRwUmVzcG9uc2UgPyBbaHR0cFJlc3BvbnNlIHN0YXR1c0NvZGVdIDog
MDsKKyAgICAgICAgfQorICAgICAgICBpZiAoaHR0cFJlc3BvbnNlKSB7CisgICAgICAgICAgICBp
ZiAoaW5pdExldmVsID09IEFsbEZpZWxkcykgeworICAgICAgICAgICAgICAgIGF1dG8gbWVzc2Fn
ZVJlZiA9IENGVVJMUmVzcG9uc2VHZXRIVFRQUmVzcG9uc2UoW2h0dHBSZXNwb25zZSBfQ0ZVUkxS
ZXNwb25zZV0pOworICAgICAgICAgICAgICAgIG1faHR0cFN0YXR1c1RleHQgPSBleHRyYWN0SFRU
UFN0YXR1c1RleHQobWVzc2FnZVJlZik7CisgICAgICAgICAgICAgICAgbV9odHRwVmVyc2lvbiA9
IFN0cmluZyhhZG9wdENGKENGSFRUUE1lc3NhZ2VDb3B5VmVyc2lvbihtZXNzYWdlUmVmKSkuZ2V0
KCkpLmNvbnZlcnRUb0FTQ0lJVXBwZXJjYXNlKCk7CisgICAgICAgICAgICAgICAgaW5pdGlhbGl6
ZUhUVFBIZWFkZXJzKE9ubHlDb21tb25IZWFkZXJzOjpObywgaHR0cFJlc3BvbnNlLCBtX2h0dHBI
ZWFkZXJGaWVsZHMpOworICAgICAgICAgICAgfSBlbHNlCisgICAgICAgICAgICAgICAgaW5pdGlh
bGl6ZUhUVFBIZWFkZXJzKE9ubHlDb21tb25IZWFkZXJzOjpZZXMsIGh0dHBSZXNwb25zZSwgbV9o
dHRwSGVhZGVyRmllbGRzKTsKKyAgICAgICAgfQogCi0gICAgaWYgKG1faW5pdExldmVsIDwgQ29t
bW9uRmllbGRzT25seSkgewotICAgICAgICBtX3VybCA9IFttX25zUmVzcG9uc2UuZ2V0KCkgVVJM
XTsKLSAgICAgICAgbV9taW1lVHlwZSA9IFttX25zUmVzcG9uc2UuZ2V0KCkgTUlNRVR5cGVdOwot
ICAgICAgICBtX2V4cGVjdGVkQ29udGVudExlbmd0aCA9IFttX25zUmVzcG9uc2UuZ2V0KCkgZXhw
ZWN0ZWRDb250ZW50TGVuZ3RoXTsKLSAgICAgICAgLy8gU3RyaXBwaW5nIGRvdWJsZSBxdW90ZXMg
YXMgYSB3b3JrYXJvdW5kIGZvciA8cmRhcjovL3Byb2JsZW0vODc1NzA4OD4sIGNhbiBiZSByZW1v
dmVkIG9uY2UgdGhhdCBpcyBmaXhlZC4KLSAgICAgICAgbV90ZXh0RW5jb2RpbmdOYW1lID0gc3Ry
aXBMZWFkaW5nQW5kVHJhaWxpbmdEb3VibGVRdW90ZShbbV9uc1Jlc3BvbnNlLmdldCgpIHRleHRF
bmNvZGluZ05hbWVdKTsKLSAgICAgICAgbV9odHRwU3RhdHVzQ29kZSA9IGh0dHBSZXNwb25zZSA/
IFtodHRwUmVzcG9uc2Ugc3RhdHVzQ29kZV0gOiAwOwotICAgIH0KLSAgICBpZiAoaHR0cFJlc3Bv
bnNlKSB7Ci0gICAgICAgIGlmIChpbml0TGV2ZWwgPT0gQWxsRmllbGRzKSB7Ci0gICAgICAgICAg
ICBhdXRvIG1lc3NhZ2VSZWYgPSBDRlVSTFJlc3BvbnNlR2V0SFRUUFJlc3BvbnNlKFtodHRwUmVz
cG9uc2UgX0NGVVJMUmVzcG9uc2VdKTsKLSAgICAgICAgICAgIG1faHR0cFN0YXR1c1RleHQgPSBl
eHRyYWN0SFRUUFN0YXR1c1RleHQobWVzc2FnZVJlZik7Ci0gICAgICAgICAgICBtX2h0dHBWZXJz
aW9uID0gU3RyaW5nKGFkb3B0Q0YoQ0ZIVFRQTWVzc2FnZUNvcHlWZXJzaW9uKG1lc3NhZ2VSZWYp
KS5nZXQoKSkuY29udmVydFRvQVNDSUlVcHBlcmNhc2UoKTsKLSAgICAgICAgICAgIGluaXRpYWxp
emVIVFRQSGVhZGVycyhPbmx5Q29tbW9uSGVhZGVyczo6Tm8sIGh0dHBSZXNwb25zZSwgbV9odHRw
SGVhZGVyRmllbGRzKTsKLSAgICAgICAgfSBlbHNlCi0gICAgICAgICAgICBpbml0aWFsaXplSFRU
UEhlYWRlcnMoT25seUNvbW1vbkhlYWRlcnM6OlllcywgaHR0cFJlc3BvbnNlLCBtX2h0dHBIZWFk
ZXJGaWVsZHMpOwogICAgIH0KIAogICAgIG1faW5pdExldmVsID0gaW5pdExldmVsOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2FyYm9uL0NhcmJvblV0aWxzLm0gYi9Tb3Vy
Y2UvV2ViS2l0TGVnYWN5L21hYy9DYXJib24vQ2FyYm9uVXRpbHMubQppbmRleCBhZjE5N2M3Mzc5
OTExZjhiYmYwN2IyMjc5OTg0MzU5MzRjMjU2ODM5Li5jMTJmMDM1M2M0ZGRjNGJhMDcxM2FiMDNk
M2YyNDIyNjBkZjlmZmY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DYXJi
b24vQ2FyYm9uVXRpbHMubQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DYXJib24vQ2Fy
Ym9uVXRpbHMubQpAQCAtMjksMTMgKzI5LDEzIEBACiAjaWZuZGVmIF9fTFA2NF9fCiAKICNpbmNs
dWRlICJDYXJib25VdGlscy5oIgotI2ltcG9ydCA8cGFsL3NwaS9jb2NvYS9Gb3VuZGF0aW9uU1BJ
Lmg+CisjaW1wb3J0IDx3dGYvc3BpL2NvY29hL0ZvdW5kYXRpb25TUEkuaD4KIAogZXh0ZXJuIENH
SW1hZ2VSZWYgX05TQ3JlYXRlSW1hZ2VSZWYoIHVuc2lnbmVkIGNoYXIgKmNvbnN0IGJpdG1hcERh
dGFbNV0sIGludCBwaXhlbHNXaWRlLCBpbnQgcGl4ZWxzSGlnaCwgaW50IGJpdHNQZXJTYW1wbGUs
IGludCBzYW1wbGVzUGVyUGl4ZWwsIGludCBiaXRzUGVyUGl4ZWwsIGludCBieXRlc1BlclJvdywg
Qk9PTCBpc1BsYW5hciwgQk9PTCBoYXNBbHBoYSwgTlNTdHJpbmcgKmNvbG9yU3BhY2VOYW1lLCBD
R0NvbG9yU3BhY2VSZWYgY3VzdG9tQ29sb3JTcGFjZSwgaWQgc291cmNlT2JqKTsKIAogc3RhdGlj
IHZvaWQJCQkJUG9vbENsZWFuZXIoIEV2ZW50TG9vcFRpbWVyUmVmIGluVGltZXIsIEV2ZW50TG9v
cElkbGVUaW1lck1lc3NhZ2UgaW5TdGF0ZSwgdm9pZCAqaW5Vc2VyRGF0YSApOwogCi1zdGF0aWMg
TlNBdXRvcmVsZWFzZVBvb2wqCXNQb29sOworc3RhdGljIE5TQXV0b3JlbGVhc2VQb29sTWFyayBz
UG9vbDsKIHN0YXRpYyB1bnNpZ25lZCBudW1Qb29sczsKIHN0YXRpYyBFdmVudExvb3BSZWYgcG9v
bExvb3A7CiAKQEAgLTYzLDcgKzYzLDcgQEAgc3RhdGljIHVuc2lnbmVkIGdldE5TQXV0b3JlbGVh
c2VQb29sQ291bnQodm9pZCkKICAgICAgICAgR2V0Q3VycmVudFByb2Nlc3MoICZwcm9jZXNzICk7
IAogICAgICAgICBOU0FwcGxpY2F0aW9uTG9hZCgpOwogICAgICAgICAgICAgICAgIAotICAgICAg
ICBzUG9vbCA9IFtbTlNBdXRvcmVsZWFzZVBvb2wgYWxsb2NXaXRoWm9uZTpOVUxMXSBpbml0XTsK
KyAgICAgICAgc1Bvb2wgPSBOU1B1c2hBdXRvcmVsZWFzZVBvb2woMCk7CiAgICAgICAgIG51bVBv
b2xzID0gZ2V0TlNBdXRvcmVsZWFzZVBvb2xDb3VudCgpOwogICAgICAgICAKICAgICAgICAgcG9v
bExvb3AgPSBHZXRDdXJyZW50RXZlbnRMb29wICgpOwpAQCAtOTUsOSArOTUsOCBAQCBzdGF0aWMg
dW5zaWduZWQgZ2V0TlNBdXRvcmVsZWFzZVBvb2xDb3VudCh2b2lkKQogICAgICAgICBpZiAoIENG
RXF1YWwoIG1vZGUsIGtDRlJ1bkxvb3BEZWZhdWx0TW9kZSApICYmIHRoaXNMb29wID09IHBvb2xM
b29wKSB7CiAgICAgICAgICAgICB1bnNpZ25lZCBjdXJyZW50TnVtUG9vbHMgPSBnZXROU0F1dG9y
ZWxlYXNlUG9vbENvdW50KCktMTsgICAgICAgICAgICAKICAgICAgICAgICAgIGlmIChjdXJyZW50
TnVtUG9vbHMgPT0gbnVtUG9vbHMpewotICAgICAgICAgICAgICAgIFtzUG9vbCBkcmFpbl07Ci0g
ICAgICAgICAgICAgICAgCi0gICAgICAgICAgICAgICAgc1Bvb2wgPSBbW05TQXV0b3JlbGVhc2VQ
b29sIGFsbG9jV2l0aFpvbmU6TlVMTF0gaW5pdF07CisgICAgICAgICAgICAgICAgTlNQb3BBdXRv
cmVsZWFzZVBvb2woc1Bvb2wpOworICAgICAgICAgICAgICAgIHNQb29sID0gTlNQdXNoQXV0b3Jl
bGVhc2VQb29sKDApOwogICAgICAgICAgICAgICAgIG51bVBvb2xzID0gZ2V0TlNBdXRvcmVsZWFz
ZVBvb2xDb3VudCgpOwogICAgICAgICAgICAgfQogICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0TGVnYWN5L21hYy9IaXN0b3J5L1dlYkhpc3RvcnkubW0gYi9Tb3VyY2UvV2ViS2l0
TGVnYWN5L21hYy9IaXN0b3J5L1dlYkhpc3RvcnkubW0KaW5kZXggOWNmOGE4ZTkwN2VjOTJiODM2
OWQzZjFhMWEyY2JhNWJkMTliMTJhMS4uMTM4MzJlMWE1MjdmZWIwNjk5YmYwNTgwY2E4YTdmOTlk
YTUyYWViOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvSGlzdG9yeS9XZWJI
aXN0b3J5Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0hpc3RvcnkvV2ViSGlzdG9y
eS5tbQpAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDUsIDIwMDgsIDIw
MDkgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA1
LTIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAog
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCkBAIC01OTEsNDEgKzU5MSwzNCBAQCAtIChCT09MKWxvYWRIaXN0b3J5R3V0
c0Zyb21VUkw6KE5TVVJMICopVVJMIHNhdmVkSXRlbXNDb3VudDooaW50ICopbnVtYmVyT2ZJdGVt
cwogCiAgICAgaW50IGl0ZW1Db3VudExpbWl0ID0gW3NlbGYgaGlzdG9yeUl0ZW1MaW1pdF07CiAg
ICAgTlNUaW1lSW50ZXJ2YWwgYWdlTGltaXREYXRlID0gW1tzZWxmIGFnZUxpbWl0RGF0ZV0gdGlt
ZUludGVydmFsU2luY2VSZWZlcmVuY2VEYXRlXTsKLSAgICBOU0VudW1lcmF0b3IgKmVudW1lcmF0
b3IgPSBbYXJyYXkgb2JqZWN0RW51bWVyYXRvcl07CiAgICAgQk9PTCBhZ2VMaW1pdFBhc3NlZCA9
IE5POwogICAgIEJPT0wgaXRlbUxpbWl0UGFzc2VkID0gTk87CiAgICAgQVNTRVJUKCpudW1iZXJP
Zkl0ZW1zTG9hZGVkID09IDApOwogCi0gICAgTlNBdXRvcmVsZWFzZVBvb2wgKnBvb2wgPSBbW05T
QXV0b3JlbGVhc2VQb29sIGFsbG9jXSBpbml0XTsKLSAgICBOU0RpY3Rpb25hcnkgKml0ZW1Bc0Rp
Y3Rpb25hcnk7Ci0gICAgd2hpbGUgKChpdGVtQXNEaWN0aW9uYXJ5ID0gW2VudW1lcmF0b3IgbmV4
dE9iamVjdF0pICE9IG5pbCkgewotICAgICAgICBXZWJIaXN0b3J5SXRlbSAqaXRlbSA9IFtbV2Vi
SGlzdG9yeUl0ZW0gYWxsb2NdIGluaXRGcm9tRGljdGlvbmFyeVJlcHJlc2VudGF0aW9uOml0ZW1B
c0RpY3Rpb25hcnldOwotCi0gICAgICAgIC8vIGl0ZW0gd2l0aG91dCBVUkwgaXMgdXNlbGVzczsg
ZGF0YSBvbiBkaXNrIG11c3QgaGF2ZSBiZWVuIGJhZDsgaWdub3JlCi0gICAgICAgIGlmIChbaXRl
bSBVUkxTdHJpbmddKSB7Ci0gICAgICAgICAgICAvLyBUZXN0IGFnYWluc3QgZGF0ZSBsaW1pdC4g
U2luY2UgdGhlIGl0ZW1zIGFyZSBvcmRlcmVkIG5ld2VzdCB0byBvbGRlc3QsIHdlIGNhbiBzdG9w
IGNvbXBhcmluZwotICAgICAgICAgICAgLy8gb25jZSB3ZSd2ZSBmb3VuZCB0aGUgZmlyc3QgaXRl
bSB0aGF0J3MgdG9vIG9sZC4KLSAgICAgICAgICAgIGlmICghYWdlTGltaXRQYXNzZWQgJiYgW2l0
ZW0gbGFzdFZpc2l0ZWRUaW1lSW50ZXJ2YWxdIDw9IGFnZUxpbWl0RGF0ZSkKLSAgICAgICAgICAg
ICAgICBhZ2VMaW1pdFBhc3NlZCA9IFlFUzsKLQotICAgICAgICAgICAgaWYgKGFnZUxpbWl0UGFz
c2VkIHx8IGl0ZW1MaW1pdFBhc3NlZCkKLSAgICAgICAgICAgICAgICBbZGlzY2FyZGVkSXRlbXMg
YWRkT2JqZWN0Oml0ZW1dOwotICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAgICAgaWYg
KFtzZWxmIGFkZEl0ZW06aXRlbSBkaXNjYXJkRHVwbGljYXRlOllFU10pCi0gICAgICAgICAgICAg
ICAgICAgICsrKCpudW1iZXJPZkl0ZW1zTG9hZGVkKTsKLSAgICAgICAgICAgICAgICBpZiAoKm51
bWJlck9mSXRlbXNMb2FkZWQgPT0gaXRlbUNvdW50TGltaXQpCi0gICAgICAgICAgICAgICAgICAg
IGl0ZW1MaW1pdFBhc3NlZCA9IFlFUzsKLQotICAgICAgICAgICAgICAgIC8vIERyYWluaW5nIHRo
ZSBhdXRvcmVsZWFzZSBwb29sIGV2ZXJ5IDUwIGl0ZXJhdGlvbnMgd2FzIGZvdW5kIGJ5IGV4cGVy
aW1lbnRhdGlvbiB0byBiZSBvcHRpbWFsCi0gICAgICAgICAgICAgICAgaWYgKCpudW1iZXJPZkl0
ZW1zTG9hZGVkICUgNTAgPT0gMCkgewotICAgICAgICAgICAgICAgICAgICBbcG9vbCBkcmFpbl07
Ci0gICAgICAgICAgICAgICAgICAgIHBvb2wgPSBbW05TQXV0b3JlbGVhc2VQb29sIGFsbG9jXSBp
bml0XTsKKyAgICBmb3IgKE5TRGljdGlvbmFyeSAqaXRlbUFzRGljdGlvbmFyeSBpbiBhcnJheSkg
eworICAgICAgICBAYXV0b3JlbGVhc2Vwb29sIHsKKyAgICAgICAgICAgIFdlYkhpc3RvcnlJdGVt
ICppdGVtID0gW1tXZWJIaXN0b3J5SXRlbSBhbGxvY10gaW5pdEZyb21EaWN0aW9uYXJ5UmVwcmVz
ZW50YXRpb246aXRlbUFzRGljdGlvbmFyeV07CisKKyAgICAgICAgICAgIC8vIGl0ZW0gd2l0aG91
dCBVUkwgaXMgdXNlbGVzczsgZGF0YSBvbiBkaXNrIG11c3QgaGF2ZSBiZWVuIGJhZDsgaWdub3Jl
CisgICAgICAgICAgICBpZiAoW2l0ZW0gVVJMU3RyaW5nXSkgeworICAgICAgICAgICAgICAgIC8v
IFRlc3QgYWdhaW5zdCBkYXRlIGxpbWl0LiBTaW5jZSB0aGUgaXRlbXMgYXJlIG9yZGVyZWQgbmV3
ZXN0IHRvIG9sZGVzdCwgd2UgY2FuIHN0b3AgY29tcGFyaW5nCisgICAgICAgICAgICAgICAgLy8g
b25jZSB3ZSd2ZSBmb3VuZCB0aGUgZmlyc3QgaXRlbSB0aGF0J3MgdG9vIG9sZC4KKyAgICAgICAg
ICAgICAgICBpZiAoIWFnZUxpbWl0UGFzc2VkICYmIFtpdGVtIGxhc3RWaXNpdGVkVGltZUludGVy
dmFsXSA8PSBhZ2VMaW1pdERhdGUpCisgICAgICAgICAgICAgICAgICAgIGFnZUxpbWl0UGFzc2Vk
ID0gWUVTOworCisgICAgICAgICAgICAgICAgaWYgKGFnZUxpbWl0UGFzc2VkIHx8IGl0ZW1MaW1p
dFBhc3NlZCkKKyAgICAgICAgICAgICAgICAgICAgW2Rpc2NhcmRlZEl0ZW1zIGFkZE9iamVjdDpp
dGVtXTsKKyAgICAgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgaWYgKFtz
ZWxmIGFkZEl0ZW06aXRlbSBkaXNjYXJkRHVwbGljYXRlOllFU10pCisgICAgICAgICAgICAgICAg
ICAgICAgICArKygqbnVtYmVyT2ZJdGVtc0xvYWRlZCk7CisgICAgICAgICAgICAgICAgICAgIGlm
ICgqbnVtYmVyT2ZJdGVtc0xvYWRlZCA9PSBpdGVtQ291bnRMaW1pdCkKKyAgICAgICAgICAgICAg
ICAgICAgICAgIGl0ZW1MaW1pdFBhc3NlZCA9IFlFUzsKICAgICAgICAgICAgICAgICB9CiAgICAg
ICAgICAgICB9CisKKyAgICAgICAgICAgIFtpdGVtIHJlbGVhc2VdOwogICAgICAgICB9Ci0gICAg
ICAgIFtpdGVtIHJlbGVhc2VdOwogICAgIH0KLSAgICBbcG9vbCBkcmFpbl07CiAKICAgICByZXR1
cm4gWUVTOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9X
ZWJWaWV3Lm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCmlu
ZGV4IDBlMmY3YzI3YzExOGIxZjMyNDhlYTZmMDAxNzM0YzlkY2I4ZTYxMmYuLjQwNzdlOTFhYjEy
ZDdmYjA3Yjc0MGNkMDU5MWUyOWI2ZmRhODFhZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21h
Yy9XZWJWaWV3L1dlYlZpZXcubW0KQEAgLTc5MDMsMjggKzc5MDMsMjEgQEAgLSAoTlNBcnJheSAq
KXJlY3RzRm9yVGV4dE1hdGNoZXMKICAgICAgICAgaWYgKFt2aWV3IGNvbmZvcm1zVG9Qcm90b2Nv
bDpAcHJvdG9jb2woV2ViTXVsdGlwbGVUZXh0TWF0Y2hlcyldKSB7CiAgICAgICAgICAgICBOU1Zp
ZXcgPFdlYk11bHRpcGxlVGV4dE1hdGNoZXM+ICpkb2N1bWVudFZpZXcgPSAoTlNWaWV3IDxXZWJN
dWx0aXBsZVRleHRNYXRjaGVzPiAqKXZpZXc7CiAgICAgICAgICAgICBOU1JlY3QgZG9jdW1lbnRW
aWV3VmlzaWJsZVJlY3QgPSBbZG9jdW1lbnRWaWV3IHZpc2libGVSZWN0XTsKLSAgICAgICAgICAg
IE5TQXJyYXkgKm9yaWdpbmFsUmVjdHMgPSBbZG9jdW1lbnRWaWV3IHJlY3RzRm9yVGV4dE1hdGNo
ZXNdOwotICAgICAgICAgICAgdW5zaWduZWQgcmVjdENvdW50ID0gW29yaWdpbmFsUmVjdHMgY291
bnRdOwotICAgICAgICAgICAgdW5zaWduZWQgcmVjdEluZGV4OwotICAgICAgICAgICAgTlNBdXRv
cmVsZWFzZVBvb2wgKnBvb2wgPSBbW05TQXV0b3JlbGVhc2VQb29sIGFsbG9jXSBpbml0XTsKLSAg
ICAgICAgICAgIGZvciAocmVjdEluZGV4ID0gMDsgcmVjdEluZGV4IDwgcmVjdENvdW50OyArK3Jl
Y3RJbmRleCkgewotICAgICAgICAgICAgICAgIE5TUmVjdCByID0gW1tvcmlnaW5hbFJlY3RzIG9i
amVjdEF0SW5kZXg6cmVjdEluZGV4XSByZWN0VmFsdWVdOworICAgICAgICAgICAgZm9yIChOU1Zh
bHVlICpyZWN0IGluIFtkb2N1bWVudFZpZXcgcmVjdHNGb3JUZXh0TWF0Y2hlc10pIHsKKyAgICAg
ICAgICAgICAgICBOU1JlY3QgciA9IFtyZWN0IHJlY3RWYWx1ZV07CiAgICAgICAgICAgICAgICAg
Ly8gQ2xpcCByZWN0IHRvIGRvY3VtZW50IHZpZXcncyB2aXNpYmxlIHJlY3Qgc28gcmVjdCBpcyBj
b25maW5lZCB0byBzdWJmcmFtZQogICAgICAgICAgICAgICAgIHIgPSBOU0ludGVyc2VjdGlvblJl
Y3QociwgZG9jdW1lbnRWaWV3VmlzaWJsZVJlY3QpOwogICAgICAgICAgICAgICAgIGlmIChOU0lz
RW1wdHlSZWN0KHIpKQogICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICAg
ICAgICAKLSAgICAgICAgICAgICAgICAvLyBDb252ZXJ0IHJlY3QgdG8gb3VyIGNvb3JkaW5hdGUg
c3lzdGVtCi0gICAgICAgICAgICAgICAgciA9IFtkb2N1bWVudFZpZXcgY29udmVydFJlY3Q6ciB0
b1ZpZXc6c2VsZl07Ci0gICAgICAgICAgICAgICAgW3Jlc3VsdCBhZGRPYmplY3Q6W05TVmFsdWUg
dmFsdWVXaXRoUmVjdDpyXV07Ci0gICAgICAgICAgICAgICAgaWYgKHJlY3RJbmRleCAlIDEwID09
IDApIHsKLSAgICAgICAgICAgICAgICAgICAgW3Bvb2wgZHJhaW5dOwotICAgICAgICAgICAgICAg
ICAgICBwb29sID0gW1tOU0F1dG9yZWxlYXNlUG9vbCBhbGxvY10gaW5pdF07CisKKyAgICAgICAg
ICAgICAgICBAYXV0b3JlbGVhc2Vwb29sIHsKKyAgICAgICAgICAgICAgICAgICAgLy8gQ29udmVy
dCByZWN0IHRvIG91ciBjb29yZGluYXRlIHN5c3RlbQorICAgICAgICAgICAgICAgICAgICByID0g
W2RvY3VtZW50VmlldyBjb252ZXJ0UmVjdDpyIHRvVmlldzpzZWxmXTsKKyAgICAgICAgICAgICAg
ICAgICAgW3Jlc3VsdCBhZGRPYmplY3Q6W05TVmFsdWUgdmFsdWVXaXRoUmVjdDpyXV07CiAgICAg
ICAgICAgICAgICAgfQogICAgICAgICAgICAgfQotICAgICAgICAgICAgW3Bvb2wgZHJhaW5dOwog
ICAgICAgICB9Ci0gICAgICAgIAorCiAgICAgICAgIGZyYW1lID0gaW5jcmVtZW50RnJhbWUoZnJh
bWUpOwogICAgIH0gd2hpbGUgKGZyYW1lKTsKICAgICAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>342342</attachid>
            <date>2018-06-08 16:11:58 -0700</date>
            <delta_ts>2018-06-08 22:25:34 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-186436-20180608161157.patch</filename>
            <type>text/plain</type>
            <size>57494</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjMyNjQ0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBh
ZGFiNGEyOTlhZmY3MzdjYmMwM2VjZDQzYTVhMDEwNjk4MGYyMGI2Li42OTE0MDc4NDI5NzM5MWE4
MTdhZDYxZTM1MjAzODU4Y2QyNWZmYmU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMyBAQAorMjAxOC0wNi0wOCAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisK
KyAgICAgICAgW0NvY29hXSBSZW1vdmUgYWxsIHVzZXMgb2YgTlNBdXRvcmVsZWFzZVBvb2wgYXMg
cGFydCBvZiBwcmVwYXJhdGlvbiBmb3IgQVJDCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xODY0MzYKKworICAgICAgICBSZXZpZXdlZCBieSBBbmRlcnMg
Q2FybHNzb24uCisKKyAgICAgICAgKiBoZWFwL0hlYXAuY3BwOiBJbmNsdWRlIEZvdW5kYXRpb25T
UEkuaCByYXRoZXIgdGhhbiBkaXJlY3RseSBpbmNsdWRpbmcKKyAgICAgICAgb2JqYy1pbnRlcm5h
bC5oIGFuZCBleHBsaWNpdGx5IGRlY2xhcmluZyB0aGUgYWx0ZXJuYXRpdmUuCisKIDIwMTgtMDYt
MDggIEJyaWFuIEJ1cmcgIDxiYnVyZ0BhcHBsZS5jb20+CiAKICAgICAgICAgW0NvY29hXSBXZWIg
QXV0b21hdGlvbjogaW5jbHVkZSBicm93c2VyIG5hbWUgYW5kIHZlcnNpb24gaW4gbGlzdGluZyBm
b3IgYXV0b21hdGlvbiB0YXJnZXRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5nZUxvZyBi
L1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDQzODEyOTA2MmUxNzllZjljM2JkZGZmMjMwY2U0
ZjViNWZiNTg2MmYuLjk2OWNiNDljZGFiNmMzNzJhMTZlOTU0NTdlMDMzMTIwZDFlODFjNmEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMjUgQEAKKzIwMTgtMDYtMDggIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUu
Y29tPgorCisgICAgICAgIFtDb2NvYV0gUmVtb3ZlIGFsbCB1c2VzIG9mIE5TQXV0b3JlbGVhc2VQ
b29sIGFzIHBhcnQgb2YgcHJlcGFyYXRpb24gZm9yIEFSQworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg2NDM2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
QW5kZXJzIENhcmxzc29uLgorCisgICAgICAgICogV1RGLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2o6IEFkZGVkIEZvdW5kYXRpb25TUEkuaC4KKworICAgICAgICAqIHd0Zi9BdXRvZHJhaW5lZFBv
b2wuaDogU3RyZWFtbGluZWQgaGVhZGVyIGEgYml0LCBhZGRlZCBzb21lIGNvbW1lbnRzLgorCisg
ICAgICAgICogd3RmL1BsYXRmb3JtTWFjLmNtYWtlOiBBZGRlZCBGb3VuZGF0aW9uU1BJLmguCisK
KyAgICAgICAgKiB3dGYvY29jb2EvQXV0b2RyYWluZWRQb29sLmNwcDogTW92ZWQgaGVyZSBmcm9t
IEF1dG9kcmFpbmVkUG9vbE1hYy5tbS4KKyAgICAgICAgKFdURjo6QXV0b2RyYWluZWRQb29sOjpB
dXRvZHJhaW5lZFBvb2wpOiBVc2Ugb2JqY19hdXRvcmVsZWFzZVBvb2xQdXNoL1BvcCBpbnN0ZWFk
IG9mCisgICAgICAgIHRoZSBOU0F1dG9yZWxlYXNlUG9vbCBjbGFzcy4KKyAgICAgICAgKFdURjo6
QXV0b2RyYWluZWRQb29sOjp+QXV0b2RyYWluZWRQb29sKTogRGl0dG8uCisKKyAgICAgICAgICog
d3RmL3NwaS9jb2NvYS9Gb3VuZGF0aW9uU1BJLmg6IE1vdmVkIGZyb20gU291cmNlL1dlYkNvcmUv
UEFML3BhbC9zcGkvY29jb2EvRm91bmRhdGlvblNQSS5oLgorICAgICAgICAgQ2hhbmdlZCBib3Ro
IGluY2x1ZGUgYW5kIGRlY2xhcmF0aW9ucyBzbyBpdCdzIHRoZSBvYmpjX2F1dG9yZWxlYXNlUG9v
bFB1c2gvUG9wIGluc3RlYWQKKyAgICAgICAgIG9mIHRoZSBoaWdoZXIgbGV2ZWwgTlMgZnVuY3Rp
b25zdCB0aGF0IGNhbGwgdGhlbS4KKwogMjAxOC0wNi0wOCAgQnJpYW4gQnVyZyAgPGJidXJnQGFw
cGxlLmNvbT4KIAogICAgICAgICBbQ29jb2FdIFdlYiBBdXRvbWF0aW9uOiBpbmNsdWRlIGJyb3dz
ZXIgbmFtZSBhbmQgdmVyc2lvbiBpbiBsaXN0aW5nIGZvciBhdXRvbWF0aW9uIHRhcmdldHMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwppbmRleCAwMWU3OWFiMzllNzIyYWJhMDIxMTI5OWFkNTI1YzdlYjQ0MGMyNTA5Li4yZGE1
ZDkyM2U5MmI0NDU5NTA4MjRkMWFlZWMxZWI2NmJhMzQ5MTc3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMzQgQEAKKzIwMTgtMDYtMDggIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgorCisg
ICAgICAgIFtDb2NvYV0gUmVtb3ZlIGFsbCB1c2VzIG9mIE5TQXV0b3JlbGVhc2VQb29sIGFzIHBh
cnQgb2YgcHJlcGFyYXRpb24gZm9yIEFSQworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTg2NDM2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQW5kZXJzIENh
cmxzc29uLgorCisgICAgICAgICogYnJpZGdlL29iamMvb2JqY19jbGFzcy5tbTogVXNlIGltcG9y
dCBpbnN0ZWFkIG9mIGluY2x1ZGUuCisKKyAgICAgICAgKiBicmlkZ2Uvb2JqYy9vYmpjX2luc3Rh
bmNlLmg6IFJlcGxhY2VkIF9wb29sIG1lbWJlciB0byBob2xkIGFuIG9iamVjdCB3aXRoCisgICAg
ICAgIG1fYXV0b3JlbGVhc2VQb29sIG1lbWJlciB0byBob2xkIGEgdG9rZW4gZnJvbSBvYmpjX2F1
dG9yZWxlYXNlUG9vbFB1c2guIEFsc28KKyAgICAgICAgaW5pdGlhbGl6ZSBhbGwgZGF0YSBtZW1i
ZXJzIGhlcmUgaW4gdGhlIGNsYXNzIGRlZmluaXRpb24uCisKKyAgICAgICAgKiBicmlkZ2Uvb2Jq
Yy9vYmpjX2luc3RhbmNlLm1tOgorICAgICAgICAoT2JqY0luc3RhbmNlOjpPYmpjSW5zdGFuY2Up
OiBNb3ZlZCBtb3N0IGluaXRpYWxpemF0aW9uIHRvIGNsYXNzIGRlZmluaXRpb24uCisgICAgICAg
IChPYmpjSW5zdGFuY2U6OnZpcnR1YWxCZWdpbik6IFVzZSBvYmpjX2F1dG9yZWxlYXNlUG9vbFB1
c2ggaW5zdGVhZCBvZgorICAgICAgICBOU0F1dG9yZWxlYXNlUG9vbCBjbGFzcy4KKyAgICAgICAg
KE9iamNJbnN0YW5jZTo6dmlydHVhbEVuZCk6IFVzZSBvYmpjX2F1dG9yZWxlYXNlUG9vbFBvcC4K
KworICAgICAgICAqIGJyaWRnZS9vYmpjL29iamNfcnVudGltZS5tbTogVXNlIGltcG9ydCBpbnN0
ZWFkIG9mIGluY2x1ZGUuCisgICAgICAgICogYnJpZGdlL29iamMvb2JqY191dGlsaXR5Lm1tOiBE
aXR0by4KKworICAgICAgICAqIHBsYXRmb3JtL2F1ZGlvL21hYy9BdWRpb0J1c01hYy5tbToKKyAg
ICAgICAgKFdlYkNvcmU6OkF1ZGlvQnVzOjpsb2FkUGxhdGZvcm1SZXNvdXJjZSk6IFVzZSBAYXV0
b3JlbGVhc2Vwb29sLgorCisgICAgICAgICogcGxhdGZvcm0vaW9zL3dhay9XZWJDb3JlVGhyZWFk
Lm1tOiBSZS1zb3J0ZWQgaW5jbHVkZXMuIFJlbW92ZWQgZGVjbGFyYXRpb24gb2YKKyAgICAgICAg
YXV0b3JlbGVhc2UgcG9vbCBTUEkgYW5kIHVzZSBGb3VuZGF0aW9uU1BJLmggaW5zdGVhZC4KKwor
ICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvY29jb2EvUmVzb3VyY2VSZXNwb25zZUNvY29hLm1t
OgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZTo6cGxhdGZvcm1MYXp5SW5pdCk6
IFVzZSBAYXV0b3JlbGVhc2Vwb29sLgorCiAyMDE4LTA2LTA4ICBEYXJpbiBBZGxlciAgPGRhcmlu
QGFwcGxlLmNvbT4KIAogICAgICAgICBbQ29jb2FdIE1ha2UgbW9yZSBvZiBvdXIgc29mdCBsaW5r
aW5nIEFSQy1jb21wYXRpYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdl
TG9nIGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwppbmRleCBmYmQ3NDRiMDA2ZjY2MDE5
ZmI0NDM0YWM2NGU4OTQyMDdiNzJmMmQ1Li45MzVjNjgxMTBlMjJiMmVhNDEzYmNmODU1YjIxYTM5
ZDEyZmJjM2FlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxOC0wNi0w
OCAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisKKyAgICAgICAgW0NvY29hXSBSZW1v
dmUgYWxsIHVzZXMgb2YgTlNBdXRvcmVsZWFzZVBvb2wgYXMgcGFydCBvZiBwcmVwYXJhdGlvbiBm
b3IgQVJDCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
ODY0MzYKKworICAgICAgICBSZXZpZXdlZCBieSBBbmRlcnMgQ2FybHNzb24uCisKKyAgICAgICAg
KiBQQUwueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogUmVtb3ZlZCBGb3VuZGF0aW9uU1BJLmgu
CisgICAgICAgICogcGFsL1BsYXRmb3JtTWFjLmNtYWtlOiBEaXR0by4KKyAgICAgICAgKiBwYWwv
c3BpL2NvY29hL0ZvdW5kYXRpb25TUEkuaDogTW92ZWQgaW50byBXVEYgcHJvamVjdC4KKwogMjAx
OC0wNi0wOCAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CiAKICAgICAgICAgW0NvY29h
XSBNYWtlIG1vcmUgb2Ygb3VyIHNvZnQgbGlua2luZyBBUkMtY29tcGF0aWJsZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdExlZ2Fj
eS9tYWMvQ2hhbmdlTG9nCmluZGV4IDJiM2FlNTBkYTM1OWIxOGM1Y2ViN2YwYTQ2M2FlZDk4YzQ3
YTAzMzAuLjBiODhkOTIwZTA1NTFhZmU5OTYxNjNiOWRjODUwOTkxZDEwOWQ1MzkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0
TGVnYWN5L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMyBAQAorMjAxOC0wNi0wOCAgRGFyaW4g
QWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisKKyAgICAgICAgW0NvY29hXSBSZW1vdmUgYWxsIHVz
ZXMgb2YgTlNBdXRvcmVsZWFzZVBvb2wgYXMgcGFydCBvZiBwcmVwYXJhdGlvbiBmb3IgQVJDCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODY0MzYKKwor
ICAgICAgICBSZXZpZXdlZCBieSBBbmRlcnMgQ2FybHNzb24uCisKKyAgICAgICAgKiBDYXJib24v
Q2FyYm9uVXRpbHMubTogVXBkYXRlZCBpbmNsdWRlIGxvY2F0aW9uIG9mIEZvdW5kYXRpb25TUEku
aC4KKyAgICAgICAgKGdldE5TQXV0b3JlbGVhc2VQb29sQ291bnQpOiBVc2Ugb2JqY19hdXRvcmVs
ZWFzZVBvb2xQdXNoL1BvcC4KKyAgICAgICAgKFdlYkluaXRGb3JDYXJib24pOiBVc2Ugb2JqY19h
dXRvcmVsZWFzZVBvb2xQdXNoL1BvcCBpbnN0ZWFkIG9mIE5TQXV0b3JlbGVhc2VQb29sIG9iamVj
dC4KKyAgICAgICAgKFBvb2xDbGVhbmVyKTogRGl0dG8uCisKKyAgICAgICAgKiBIaXN0b3J5L1dl
Ykhpc3RvcnkubW06CisgICAgICAgICgtW1dlYkhpc3RvcnlQcml2YXRlIGxvYWRIaXN0b3J5R3V0
c0Zyb21VUkw6c2F2ZWRJdGVtc0NvdW50OmNvbGxlY3REaXNjYXJkZWRJdGVtc0ludG86ZXJyb3I6
XSk6CisgICAgICAgIFVzZSBAYXV0b3JlbGVhc2Vwb29sIGluc3RlYWQgb2YgTlNBdXRvcmVsZWFz
ZVBvb2wgb2JqZWN0LiBObyBuZWVkIHRvIGRvIHRoZSAiZHJhaW4gcG9vbCBvbmx5CisgICAgICAg
IGV2ZXJ5IDUwIHRpbWVzIjsgdGhlIC1bV2ViSGlzdG9yeSBsb2FkRnJvbVVSTF0gZmFtaWx5IG9m
IG1ldGhvZHMgd2VyZSBvbmNlIHVzZWQgYnkgU2FmYXJpLCBhbmQKKyAgICAgICAgbm93IGhhcmRs
eSB1c2VkIGlmIGF0IGFsbC4KKyAgICAgICAgKiBXZWJWaWV3L1dlYlZpZXcubW06CisgICAgICAg
ICgtW1dlYlZpZXcgcmVjdHNGb3JUZXh0TWF0Y2hlc10pOiBEaXR0by4KKwogMjAxOC0wNi0wOCAg
QWRpdHlhIEtlZXJ0aGkgIDxha2VlcnRoaUBhcHBsZS5jb20+CiAKICAgICAgICAgW0RhdGFsaXN0
XSBBbGxvdyBUZXh0RmllbGRJbnB1dFR5cGUgdG8gc2hvdyBhbmQgaGlkZSBzdWdnZXN0aW9ucwpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcC5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwLmNwcAppbmRleCA5YzY2YmJjMDUzZTczYmQ2NmY0NTIx
NTc0NzRmYzAzNjU5YmE5YThmLi42M2Q4MDAxZDM4OGE0ZTFkYjVlNzVmNGEyNDI4NzI1YjdmOWM1
NDg2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwLmNwcApAQCAtNjIsMTAgKzYyLDEwIEBA
CiAjaW5jbHVkZSAiU2FtcGxpbmdQcm9maWxlci5oIgogI2luY2x1ZGUgIlNoYWRvd0NoaWNrZW4u
aCIKICNpbmNsdWRlICJTcGFjZVRpbWVNdXRhdG9yU2NoZWR1bGVyLmgiCi0jaW5jbHVkZSAiU3Vi
c3BhY2VJbmxpbmVzLmgiCi0jaW5jbHVkZSAiU3VwZXJTYW1wbGVyLmgiCiAjaW5jbHVkZSAiU3Rv
Y2hhc3RpY1NwYWNlVGltZU11dGF0b3JTY2hlZHVsZXIuaCIKICNpbmNsdWRlICJTdG9wSWZOZWNl
c3NhcnlUaW1lci5oIgorI2luY2x1ZGUgIlN1YnNwYWNlSW5saW5lcy5oIgorI2luY2x1ZGUgIlN1
cGVyU2FtcGxlci5oIgogI2luY2x1ZGUgIlN3ZWVwaW5nU2NvcGUuaCIKICNpbmNsdWRlICJTeW5j
aHJvbm91c1N0b3BUaGVXb3JsZE11dGF0b3JTY2hlZHVsZXIuaCIKICNpbmNsdWRlICJUeXBlUHJv
ZmlsZXIuaCIKQEAgLTc3LDkgKzc3LDYgQEAKICNpbmNsdWRlICJXZWFrTWFwSW1wbElubGluZXMu
aCIKICNpbmNsdWRlICJXZWFrU2V0SW5saW5lcy5oIgogI2luY2x1ZGUgPGFsZ29yaXRobT4KLSNp
ZiBQTEFURk9STShJT1MpCi0jaW5jbHVkZSA8Ym1hbGxvYy9ibWFsbG9jLmg+Ci0jZW5kaWYKICNp
bmNsdWRlIDx3dGYvTGlzdER1bXAuaD4KICNpbmNsdWRlIDx3dGYvTWFpblRocmVhZC5oPgogI2lu
Y2x1ZGUgPHd0Zi9QYXJhbGxlbFZlY3Rvckl0ZXJhdG9yLmg+CkBAIC04OCwxNCArODUsMTMgQEAK
ICNpbmNsdWRlIDx3dGYvU2ltcGxlU3RhdHMuaD4KICNpbmNsdWRlIDx3dGYvVGhyZWFkaW5nLmg+
CiAKKyNpZiBQTEFURk9STShJT1MpCisjaW5jbHVkZSA8Ym1hbGxvYy9ibWFsbG9jLmg+CisjZW5k
aWYKKwogI2lmIFVTRShGT1VOREFUSU9OKQotI2lmIF9faGFzX2luY2x1ZGUoPG9iamMvb2JqYy1p
bnRlcm5hbC5oPikKLSNpbmNsdWRlIDxvYmpjL29iamMtaW50ZXJuYWwuaD4KLSNlbHNlCi1leHRl
cm4gIkMiIHZvaWQqIG9iamNfYXV0b3JlbGVhc2VQb29sUHVzaCh2b2lkKTsKLWV4dGVybiAiQyIg
dm9pZCBvYmpjX2F1dG9yZWxlYXNlUG9vbFBvcCh2b2lkICpjb250ZXh0KTsKKyNpbmNsdWRlIDx3
dGYvc3BpL2NvY29hL0ZvdW5kYXRpb25TUEkuaD4KICNlbmRpZgotI2VuZGlmIC8vIFVTRShGT1VO
REFUSU9OKQogCiAjaWYgVVNFKEdMSUIpCiAjaW5jbHVkZSAiSlNDR0xpYldyYXBwZXJPYmplY3Qu
aCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvV1RGLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2og
Yi9Tb3VyY2UvV1RGL1dURi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGZiMmVlN2Ux
YTA4OTczNDQxMjQ4NzU4MGY4ZGZiYzIwOTczY2E3MGIuLmVmMWIzM2I3ZmUwNzgyZjFkODc0MDU5
OTNmNmY0MTA2YjEwNjZlMjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvV1RGLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dURi9XVEYueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagpAQCAtNTMsNyArNTMsNyBAQAogCQkxNDY5NDE5MzE2RUFBRjZEMDAyNEUxNDYgLyogUnVu
TG9vcFRpbWVyQ0YuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMTQ2OTQxOTExNkVBQUY2RDAwMjRFMTQ2IC8qIFJ1bkxvb3BUaW1lckNGLmNwcCAqLzsg
fTsKIAkJMTQ2OTQxOTcxNkVBQUZGODAwMjRFMTQ2IC8qIFNjaGVkdWxlUGFpck1hYy5tbSBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE0Njk0MTk1MTZFQUFG
RjgwMDI0RTE0NiAvKiBTY2hlZHVsZVBhaXJNYWMubW0gKi87IH07CiAJCTE0Njk0MTk5MTZFQUIw
NDEwMDI0RTE0NiAvKiBTY2hlZHVsZVBhaXJDRi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxNDY5NDE5ODE2RUFCMDQxMDAyNEUxNDYgLyogU2NoZWR1
bGVQYWlyQ0YuY3BwICovOyB9OwotCQkxNDY5NDE5RDE2RUFCMTBBMDAyNEUxNDYgLyogQXV0b2Ry
YWluZWRQb29sTWFjLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMTQ2OTQxOUIxNkVBQjEwQTAwMjRFMTQ2IC8qIEF1dG9kcmFpbmVkUG9vbE1hYy5tbSAq
LzsgfTsKKwkJMTQ2OTQxOUQxNkVBQjEwQTAwMjRFMTQ2IC8qIEF1dG9kcmFpbmVkUG9vbC5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxNDY5NDE5QjE2
RUFCMTBBMDAyNEUxNDYgLyogQXV0b2RyYWluZWRQb29sLmNwcCAqLzsgfTsKIAkJMUExRDhCOUUx
NzMxODc5ODAwMTQxREE0IC8qIEZ1bmN0aW9uRGlzcGF0Y2hlci5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTFEOEI5RDE3MzE4Nzk4MDAxNDFEQTQg
LyogRnVuY3Rpb25EaXNwYXRjaGVyLmNwcCAqLzsgfTsKIAkJMUFDQUREODQxODg0NDgwMTAwRDhC
NzFEIC8qIERlcHJlY2F0ZWRTeW1ib2xzVXNlZEJ5U2FmYXJpLm1tIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFDQUREODIxODg0NDgwMTAwRDhCNzFEIC8q
IERlcHJlY2F0ZWRTeW1ib2xzVXNlZEJ5U2FmYXJpLm1tICovOyB9OwogCQkxQzE4MUM3RjFEMzA3
OERBMDBGNUZBMTYgLyogVGV4dEJyZWFrSXRlcmF0b3IuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUMxODFDN0QxRDMwNzhEQTAwRjVGQTE2IC8qIFRl
eHRCcmVha0l0ZXJhdG9yLmNwcCAqLzsgfTsKQEAgLTI4NCw3ICsyODQsNyBAQAogCQkxNDY5NDE5
NTE2RUFBRkY4MDAyNEUxNDYgLyogU2NoZWR1bGVQYWlyTWFjLm1tICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAub2JqY3BwOyBwYXRoID0gU2NoZWR1bGVQYWlyTWFjLm1tOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQkxNDY5NDE5ODE2RUFCMDQxMDAyNEUxNDYgLyogU2NoZWR1bGVQYWly
Q0YuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2NoZWR1bGVQYWly
Q0YuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxNDY5NDE5QTE2RUFCMTBBMDAy
NEUxNDYgLyogQXV0b2RyYWluZWRQb29sLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEF1dG9kcmFpbmVkUG9vbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkxNDY5
NDE5QjE2RUFCMTBBMDAyNEUxNDYgLyogQXV0b2RyYWluZWRQb29sTWFjLm1tICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gQXV0b2RyYWluZWRQb29sTWFjLm1tOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxNDY5NDE5QjE2RUFCMTBBMDAyNEUxNDYgLyogQXV0
b2RyYWluZWRQb29sLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEF1
dG9kcmFpbmVkUG9vbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTE0OUVGMTYy
MTZCQkZFMEQwMDBBNDMzMSAvKiBUcmlTdGF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBUcmlTdGF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxNEM4Mjc5
NzE4RkRENzM0MDBFMTgwMEMgLyogbWJtYWxsb2MueGNjb25maWcgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0Lnhj
Y29uZmlnOyBwYXRoID0gbWJtYWxsb2MueGNjb25maWc7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTE0RTc4NUU3MURGQjMzMDEwMDIwOUJEMSAvKiBPcmRpbmFsTnVtYmVyLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE9yZGluYWxOdW1iZXIuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKQEAgLTQwOCw2ICs0MDgsNyBAQAogCQk5MzkzNEJEMjE4QTFFOEMzMDBE
MEQ2QTEgLyogU3RyaW5nVmlld09iakMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpj
cHA7IG5hbWUgPSBTdHJpbmdWaWV3T2JqQy5tbTsgcGF0aCA9IG1hYy9TdHJpbmdWaWV3T2JqQy5t
bTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTM5MzRCRDQxOEExRjE2OTAwRDBENkEx
IC8qIFN0cmluZ1ZpZXdDRi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUg
PSBTdHJpbmdWaWV3Q0YuY3BwOyBwYXRoID0gY2YvU3RyaW5nVmlld0NGLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTNBQzkxQTcxODk0MkZDNDAwMjQ0OTM5IC8qIExDaGFyLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExDaGFyLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTkzRDE5MUNGMjBDQUVDRTgwMEM1MUI4RSAvKiBGb3VuZGF0aW9uU1BJ
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEZvdW5kYXRpb25TUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJOTNEREU5MzExQ0RDMDUyRDAwRkQzNDkxIC8qIGR5bGRTUEkuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gZHlsZFNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk5M0YxOTkzRDE5RDc5NThEMDBDMjM5MEIgLyogU3RyaW5nVmlldy5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTdHJpbmdWaWV3LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTc0Q0ZDOEQxNkE0RjMyNzAwNkQ1NDA0IC8qIFdlYWtQdHIu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2Vha1B0ci5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwpAQCAtODA3LDcgKzgwOCw2IEBACiAJCQkJQThBNDcyNUMxNTFBODI1
QTAwNDEyM0ZGIC8qIEFzc2VydGlvbnMuaCAqLywKIAkJCQlBOEE0NzI1RDE1MUE4MjVBMDA0MTIz
RkYgLyogQXRvbWljcy5oICovLAogCQkJCTE0Njk0MTlBMTZFQUIxMEEwMDI0RTE0NiAvKiBBdXRv
ZHJhaW5lZFBvb2wuaCAqLywKLQkJCQkxNDY5NDE5QjE2RUFCMTBBMDAyNEUxNDYgLyogQXV0b2Ry
YWluZWRQb29sTWFjLm1tICovLAogCQkJCTBGNDNEOEVGMURCNUFEREMwMDEwOEZCNiAvKiBBdXRv
bWF0aWNUaHJlYWQuY3BwICovLAogCQkJCTBGNDNEOEYwMURCNUFEREMwMDEwOEZCNiAvKiBBdXRv
bWF0aWNUaHJlYWQuaCAqLywKIAkJCQlEQ0VFMjIwNDFDRUI5ODY5MDAwQzIzOTYgLyogQmFja3dh
cmRzR3JhcGguaCAqLywKQEAgLTEyNjksNiArMTI2OSw3IEBACiAJCUNFNDY1MTZDMTlEQjFGQjQw
MDNFQ0EwNSAvKiBjb2NvYSAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4g
PSAoCisJCQkJOTNEMTkxQ0YyMENBRUNFODAwQzUxQjhFIC8qIEZvdW5kYXRpb25TUEkuaCAqLywK
IAkJCQlDRTQ2NTE2RDE5REIxRkI0MDAzRUNBMDUgLyogTlNNYXBUYWJsZVNQSS5oICovLAogCQkJ
CUE1MDk4QjAxMUMxNkE0RjkwMDA4Nzc5NyAvKiBTZWN1cml0eVNQSS5oICovLAogCQkJKTsKQEAg
LTEzMjIsNiArMTMyMyw3IEBACiAJCUU0QTBBRDNCMUE5NjI1MTkwMDUzNkRGNiAvKiBjb2NvYSAq
LyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCisJCQkJMTQ2OTQxOUIx
NkVBQjEwQTAwMjRFMTQ2IC8qIEF1dG9kcmFpbmVkUG9vbC5jcHAgKi8sCiAJCQkJRTM4QzQxMjQx
RUI0RTA0QzAwNDI5NTdEIC8qIENQVVRpbWVDb2NvYS5tbSAqLywKIAkJCQkxNDNEREU5NTIwQzhC
QzM3MDA3Rjc2RkEgLyogRW50aXRsZW1lbnRzLmNwcCAqLywKIAkJCQkxNDNEREU5NzIwQzhCRTk5
MDA3Rjc2RkEgLyogRW50aXRsZW1lbnRzLmggKi8sCkBAIC0xNDQ1LDcgKzE0NDcsNyBAQAogCQkJ
CTcwRUNBNjBEMUIwMjQyNjgwMDQ0OTczOSAvKiBBdG9taWNTdHJpbmdJbXBsLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUE1QkExNUZBMTgyNDM1QTYwMEE4MkU2OSAvKiBBdG9taWNTdHJpbmdJbXBs
Q0YuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOUJDNzBGMDUxNzZDMzc5RDAwMTAxREVDIC8qIEF0
b21pY1N0cmluZ1RhYmxlLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCTE0Njk0MTlEMTZFQUIxMEEw
MDI0RTE0NiAvKiBBdXRvZHJhaW5lZFBvb2xNYWMubW0gaW4gU291cmNlcyAqLywKKwkJCQkxNDY5
NDE5RDE2RUFCMTBBMDAyNEUxNDYgLyogQXV0b2RyYWluZWRQb29sLmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCTBGNDNEOEYxMURCNUFEREMwMDEwOEZCNiAvKiBBdXRvbWF0aWNUaHJlYWQuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJODEzNDAxMzgxNUIwOTJGRDAwMUZGMEI4IC8qIEJhc2U2NC5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQlBOEE0NzNBODE1MUE4MjVCMDA0MTIzRkYgLyogYmlnbnVtLWR0
b2EuY2MgaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL0F1dG9kcmFp
bmVkUG9vbC5oIGIvU291cmNlL1dURi93dGYvQXV0b2RyYWluZWRQb29sLmgKaW5kZXggNmYwMmM1
ZGY0ZGVlN2VkM2VmM2Y5Njk4YjQ1OTA5OWI3NzJhOGM5NC4uM2MyYTI0NTk5ZTgwOGYzYjVlYWRi
OTM5NDVjMjU4N2FlMmU2NTZkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvQXV0b2RyYWlu
ZWRQb29sLmgKKysrIGIvU291cmNlL1dURi93dGYvQXV0b2RyYWluZWRQb29sLmgKQEAgLTEsNSAr
MSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA3LCAyMDEzIEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNy0yMDE4IEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMjYs
MzYgKzI2LDM3IEBACiAgKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgQXV0b2RyYWluZWRQb29s
X2gKLSNkZWZpbmUgQXV0b2RyYWluZWRQb29sX2gKKyNwcmFnbWEgb25jZQogCi0jaW5jbHVkZSA8
d3RmL05vbmNvcHlhYmxlLmg+Ci0KLSNpZiBVU0UoRk9VTkRBVElPTikgJiYgIWRlZmluZWQoX19P
QkpDX18pCi10eXBlZGVmIHN0cnVjdCBvYmpjX29iamVjdCAqaWQ7CisjaWZkZWYgX19PQkpDX18K
KyNlcnJvciBQbGVhc2UgdXNlIEBhdXRvcmVsZWFzZXBvb2wgaW5zdGVhZCBvZiBBdXRvZHJhaW5l
ZFBvb2wuCiAjZW5kaWYKIAorI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgorCiBuYW1lc3Bh
Y2UgV1RGIHsKIAorLy8gVGhpcyBjbGFzcyBhbGxvd3Mgbm9uLU9iamVjdGl2ZS1DIEMrKyBjb2Rl
IHRvIGNyZWF0ZSBhbiBhdXRvcmVsZWFzZSBwb29sLgorLy8gSXQgY2Fubm90IGJlIHVzZWQgaW4g
T2JqZWN0aXZlLUMrKyBjb2RlLCB3b24ndCBiZSBjb21waWxlZDsgaW5zdGVhZCBAYXV0b3JlbGVh
c2Vwb29sIHNob3VsZCBiZSB1c2VkLgorLy8gSXQgY2FuIGJlIHVzZWQgaW4gY3Jvc3MtcGxhdGZv
cm0gY29kZTsgd2lsbCBjb21waWxlIGRvd24gdG8gbm90aGluZyBmb3Igbm9uLUNvY29hIHBsYXRm
b3Jtcy4KKwogY2xhc3MgQXV0b2RyYWluZWRQb29sIHsKICAgICBXVEZfTUFLRV9OT05DT1BZQUJM
RShBdXRvZHJhaW5lZFBvb2wpOworCiBwdWJsaWM6CiAjaWYgVVNFKEZPVU5EQVRJT04pCiAgICAg
V1RGX0VYUE9SVF9QUklWQVRFIEF1dG9kcmFpbmVkUG9vbCgpOwogICAgIFdURl9FWFBPUlRfUFJJ
VkFURSB+QXV0b2RyYWluZWRQb29sKCk7CiAjZWxzZQotICAgIGV4cGxpY2l0IEF1dG9kcmFpbmVk
UG9vbCgpIHsgfQotICAgIH5BdXRvZHJhaW5lZFBvb2woKSB7IH0KKyAgICBBdXRvZHJhaW5lZFBv
b2woKSA9IGRlZmF1bHQ7CiAjZW5kaWYKLSAgICAKLXByaXZhdGU6CisKICNpZiBVU0UoRk9VTkRB
VElPTikKLSAgICBpZCBtX3Bvb2w7Citwcml2YXRlOgorICAgIHZvaWQqIG1fYXV0b3JlbGVhc2VQ
b29sOwogI2VuZGlmCiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpBdXRv
ZHJhaW5lZFBvb2w7Ci0KLSNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvQXV0b2Ry
YWluZWRQb29sTWFjLm1tIGIvU291cmNlL1dURi93dGYvQXV0b2RyYWluZWRQb29sTWFjLm1tCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmMGE3NWQyZTJiZjY1Njc0YmM0MzRmZTkzYTYz
ZGI5N2RkNGExYmVlLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0t
LSBhL1NvdXJjZS9XVEYvd3RmL0F1dG9kcmFpbmVkUG9vbE1hYy5tbQorKysgL2Rldi9udWxsCkBA
IC0xLDQ2ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDcsIDIwMTMgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0g
KiBhcmUgbWV0OgotICoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4gCi0gKiAyLiAgUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4gCi0gKiAzLiAgTmVpdGhl
ciB0aGUgbmFtZSBvZiBBcHBsZSBJbmMuICgiQXBwbGUiKSBub3IgdGhlIG5hbWVzIG9mCi0gKiAg
ICAgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJv
ZHVjdHMgZGVyaXZlZAotICogICAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmlj
IHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4gCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBBUFBMRSBBTkQgSVRTIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORCBBTlkKLSAqIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAqIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIEFQUExFIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKLSAq
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTCBEQU1BR0VTCi0gKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Ci0gKiBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQKLSAqIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKLSAqIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCi0gKi8KLQotI2ltcG9ydCAiY29uZmlnLmgiCi0jaW1wb3J0ICJBdXRvZHJhaW5lZFBv
b2wuaCIKLQotI2ltcG9ydCA8Rm91bmRhdGlvbi9Gb3VuZGF0aW9uLmg+Ci0KLW5hbWVzcGFjZSBX
VEYgewotCi1BdXRvZHJhaW5lZFBvb2w6OkF1dG9kcmFpbmVkUG9vbCgpCi0gICAgOiBtX3Bvb2wo
W1tOU0F1dG9yZWxlYXNlUG9vbCBhbGxvY10gaW5pdF0pCi17IAotfQotCi1BdXRvZHJhaW5lZFBv
b2w6On5BdXRvZHJhaW5lZFBvb2woKQotewotICAgIFttX3Bvb2wgZHJhaW5dOwotfQotCi19IC8v
IG5hbWVzcGFjZSBXVEYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtTWFjLmNt
YWtlIGIvU291cmNlL1dURi93dGYvUGxhdGZvcm1NYWMuY21ha2UKaW5kZXggYTI2ZTA1MDNlNWYz
NWU5OTRmMmMzOWIzOTkxZjNkOGNlNjQ0YjM1Ni4uNGQ4MzdhNDQ3MTU1NTQzMWUyMmE3OTRlOWVh
ZDMyMTMwMmQ3MjIxZiAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvUGxhdGZvcm1NYWMuY21h
a2UKKysrIGIvU291cmNlL1dURi93dGYvUGxhdGZvcm1NYWMuY21ha2UKQEAgLTIxLDYgKzIxLDcg
QEAgbGlzdChBUFBFTkQgV1RGX1BVQkxJQ19IRUFERVJTCiAgICAgc3BpL2NmL0NGQnVuZGxlU1BJ
LmgKICAgICBzcGkvY2YvQ0ZTdHJpbmdTUEkuaAogCisgICAgc3BpL2NvY29hL0ZvdW5kYXRpb25T
UEkuaAogICAgIHNwaS9jb2NvYS9OU01hcFRhYmxlU1BJLmgKICAgICBzcGkvY29jb2EvU2VjdXJp
dHlTUEkuaAogCkBAIC0zMiw3ICszMyw2IEBAIGxpc3QoQVBQRU5EIFdURl9QVUJMSUNfSEVBREVS
UwogKQogCiBsaXN0KEFQUEVORCBXVEZfU09VUkNFUwotICAgIEF1dG9kcmFpbmVkUG9vbE1hYy5t
bQogICAgIEJsb2NrT2JqQ0V4Y2VwdGlvbnMubW0KICAgICBSdW5Mb29wVGltZXJDRi5jcHAKICAg
ICBTY2hlZHVsZVBhaXJDRi5jcHAKQEAgLTQxLDggKzQxLDcgQEAgbGlzdChBUFBFTkQgV1RGX1NP
VVJDRVMKICAgICBjZi9MYW5ndWFnZUNGLmNwcAogICAgIGNmL1J1bkxvb3BDRi5jcHAKIAotICAg
IHRleHQvbWFjL1RleHRCcmVha0l0ZXJhdG9ySW50ZXJuYWxJQ1VNYWMubW0KLQorICAgIGNvY29h
L0F1dG9kcmFpbmVkUG9vbC5tbQogICAgIGNvY29hL0NQVVRpbWVDb2NvYS5tbQogICAgIGNvY29h
L0VudGl0bGVtZW50cy5jcHAKICAgICBjb2NvYS9NYWNoU2VuZFJpZ2h0LmNwcApAQCAtNjEsNiAr
NjAsNyBAQCBsaXN0KEFQUEVORCBXVEZfU09VUkNFUwogICAgIHRleHQvbWFjL1N0cmluZ0ltcGxN
YWMubW0KICAgICB0ZXh0L21hYy9TdHJpbmdNYWMubW0KICAgICB0ZXh0L21hYy9TdHJpbmdWaWV3
T2JqQy5tbQorICAgIHRleHQvbWFjL1RleHRCcmVha0l0ZXJhdG9ySW50ZXJuYWxJQ1VNYWMubW0K
ICkKIAogbGlzdChBUFBFTkQgV1RGX1BSSVZBVEVfSU5DTFVERV9ESVJFQ1RPUklFUwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dURi93dGYvY29jb2EvQXV0b2RyYWluZWRQb29sLmNwcCBiL1NvdXJjZS9X
VEYvd3RmL2NvY29hL0F1dG9kcmFpbmVkUG9vbC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOWQ3OTk2ZDYwNDUx
NjI3YThmOTBiMDI1ZmQ2NjI4NzFjMDQ4YjFlZAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9X
VEYvd3RmL2NvY29hL0F1dG9kcmFpbmVkUG9vbC5jcHAKQEAgLTAsMCArMSw1MCBAQAorLyoKKyAq
IENvcHlyaWdodCAoQykgMjAwNy0yMDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqCisgKiAxLiAg
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuIAorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQor
ICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uIAorICogMy4gIE5laXRoZXIgdGhlIG5hbWUgb2YgQXBwbGUgSW5j
LiAoIkFwcGxlIikgbm9yIHRoZSBuYW1lcyBvZgorICogICAgIGl0cyBjb250cmlidXRvcnMgbWF5
IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKKyAqICAgICBm
cm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Np
b24uIAorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgQU5EIElUUyBD
T05UUklCVVRPUlMgIkFTIElTIiBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBPUiBJVFMg
Q09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICog
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5ECisgKiBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GCisgKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNkZWZpbmUg
V1RGX0NPTVBJTElOR19BVVRPRFJBSU5FRF9QT09MX0lNUExFTUVOVEFUSU9OCisKKyNpbXBvcnQg
ImNvbmZpZy5oIgorI2ltcG9ydCAiQXV0b2RyYWluZWRQb29sLmgiCisKKyN1bmRlZiBXVEZfQ09N
UElMSU5HX0FVVE9EUkFJTkVEX1BPT0xfSU1QTEVNRU5UQVRJT04KKworI2ltcG9ydCA8d3RmL3Nw
aS9jb2NvYS9Gb3VuZGF0aW9uU1BJLmg+CisKK25hbWVzcGFjZSBXVEYgeworCitBdXRvZHJhaW5l
ZFBvb2w6OkF1dG9kcmFpbmVkUG9vbCgpCisgICAgOiBtX2F1dG9yZWxlYXNlUG9vbCB7IG9iamNf
YXV0b3JlbGVhc2VQb29sUHVzaCgpIH0KK3sgCit9CisKK0F1dG9kcmFpbmVkUG9vbDo6fkF1dG9k
cmFpbmVkUG9vbCgpCit7CisgICAgb2JqY19hdXRvcmVsZWFzZVBvb2xQb3AobV9hdXRvcmVsZWFz
ZVBvb2wpOworfQorCit9IC8vIG5hbWVzcGFjZSBXVEYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYv
d3RmL3NwaS9jb2NvYS9Gb3VuZGF0aW9uU1BJLmggYi9Tb3VyY2UvV1RGL3d0Zi9zcGkvY29jb2Ev
Rm91bmRhdGlvblNQSS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjU3NmFlMGY4ZmQ1YmM4MWM0YjliMWU2NjBlYjkx
ZWJhMjhiNGI0NDEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9zcGkvY29jb2Ev
Rm91bmRhdGlvblNQSS5oCkBAIC0wLDAgKzEsNDEgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBg
YEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJ
QlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9u
Y2UKKworI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCisKKyNpbmNsdWRlIDxvYmpjL29iamMt
aW50ZXJuYWwuaD4KKworI2Vsc2UKKworV1RGX0VYVEVSTl9DX0JFR0lOCisKK3ZvaWQqIG9iamNf
YXV0b3JlbGVhc2VQb29sUHVzaCh2b2lkKTsKK3ZvaWQgb2JqY19hdXRvcmVsZWFzZVBvb2xQb3Ao
dm9pZCAqY29udGV4dCk7CisKK1dURl9FWFRFUk5fQ19FTkQKKworI2VuZGlmCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNTllNzQ3
YWZlZGYxNjljNDk2MTEwNTk5N2Y0MzViZGFkZWU1OWQ2NS4uOGRlNWVjNzJlZWEzMWQ0ZDRlOGM1
YWI4MTkxY2UyYzI4NzBjMmU4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML1BBTC54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTEyLDcgKzExMiw2IEBACiAJCTU3RjEyNTE4MjA1
Nzg3RDcwMDFBQjhBNiAvKiBEZXZpY2VJZGVudGl0eVNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTdGMTI1MTcyMDU3ODdDODAwMUFCOEE2IC8qIERl
dmljZUlkZW50aXR5U1BJLmggKi87IH07CiAJCTdBMTY1NjQ0MUY5N0IyQjkwMEJBM0NFNCAvKiBO
U0tleWVkQXJjaGl2ZXJTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDdBMTY1NjQzMUY5N0IyQjgwMEJBM0NFNCAvKiBOU0tleWVkQXJjaGl2ZXJTUEku
aCAqLzsgfTsKIAkJN0EzQTZBODAyMENBREI0NzAwMzE3QUFFIC8qIE5TSW1hZ2VTUEkuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBM0E2QTdGMjBDQURC
NDYwMDMxN0FBRSAvKiBOU0ltYWdlU1BJLmggKi87IH07Ci0JCUExMDI2NTg3MUY1Njc0NjEwMEI0
Qzg0NCAvKiBGb3VuZGF0aW9uU1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBBMTAyNjU4NjFGNTY3NDYxMDBCNEM4NDQgLyogRm91bmRhdGlvblNQSS5o
ICovOyB9OwogCQlBMTAyNjU4OTFGNTY3NDdBMDBCNEM4NDQgLyogSElUb29sYm94U1BJLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMTAyNjU4ODFGNTY3
NDdBMDBCNEM4NDQgLyogSElUb29sYm94U1BJLmggKi87IH07CiAJCUExMDI2NThCMUY1Njc0OEMw
MEI0Qzg0NCAvKiBRdWlja0RyYXdTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEExMDI2NThBMUY1Njc0OEMwMEI0Qzg0NCAvKiBRdWlja0RyYXdTUEku
aCAqLzsgfTsKIAkJQTEwMjY1OEUxRjU2N0U5RDAwQjRDODQ0IC8qIEhJU2VydmljZXNTUEkuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExMDI2NThEMUY1
NjdFOUQwMEI0Qzg0NCAvKiBISVNlcnZpY2VzU1BJLmggKi87IH07CkBAIC0yNjEsNyArMjYwLDYg
QEAKIAkJN0ExNjU2NDMxRjk3QjJCODAwQkEzQ0U0IC8qIE5TS2V5ZWRBcmNoaXZlclNQSS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOU0tleWVkQXJjaGl2ZXJTUEkuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJN0EzQTZBN0YyMENBREI0NjAwMzE3QUFFIC8qIE5T
SW1hZ2VTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTlNJbWFnZVNQSS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5M0U1OTA5QzFGOTNCRjFFMDA2N0Y4Q0Yg
LyogVW5lbmNvZGFibGVIYW5kbGluZy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBVbmVuY29kYWJsZUhhbmRs
aW5nLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUExMDI2NTg2MUY1Njc0NjEwMEI0
Qzg0NCAvKiBGb3VuZGF0aW9uU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEZvdW5kYXRpb25TUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTEwMjY1ODgx
RjU2NzQ3QTAwQjRDODQ0IC8qIEhJVG9vbGJveFNQSS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBISVRvb2xib3hTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
QTEwMjY1OEExRjU2NzQ4QzAwQjRDODQ0IC8qIFF1aWNrRHJhd1NQSS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBRdWlja0RyYXdTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJQTEwMjY1OEQxRjU2N0U5RDAwQjRDODQ0IC8qIEhJU2VydmljZXNTUEkuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSElTZXJ2aWNlc1NQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpA
QCAtMzY0LDcgKzM2Miw2IEBACiAJCQkJMEMyREExMjQxRjNCRUI0OTAwREJDMzE3IC8qIENvcmVU
ZXh0U1BJLmggKi8sCiAJCQkJMEMyREExMjUxRjNCRUI0OTAwREJDMzE3IC8qIERhdGFEZXRlY3Rv
cnNDb3JlU1BJLmggKi8sCiAJCQkJNTdGMTI1MTcyMDU3ODdDODAwMUFCOEE2IC8qIERldmljZUlk
ZW50aXR5U1BJLmggKi8sCi0JCQkJQTEwMjY1ODYxRjU2NzQ2MTAwQjRDODQ0IC8qIEZvdW5kYXRp
b25TUEkuaCAqLywKIAkJCQkwQzJEQTEyNjFGM0JFQjQ5MDBEQkMzMTcgLyogSU9QTUxpYlNQSS5o
ICovLAogCQkJCTBDMkRBMTI3MUYzQkVCNDkwMERCQzMxNyAvKiBJT1BTTGliU1BJLmggKi8sCiAJ
CQkJMEMyREExMjgxRjNCRUI0OTAwREJDMzE3IC8qIElPUmV0dXJuU1BJLmggKi8sCkBAIC02Mzks
NyArNjM2LDYgQEAKIAkJCQk1N0YxMjUxODIwNTc4N0Q3MDAxQUI4QTYgLyogRGV2aWNlSWRlbnRp
dHlTUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCTBDMkQ5RTczMUVFRjVBRjYwMERCQzMxNyAvKiBF
eHBvcnRNYWNyb3MuaCBpbiBIZWFkZXJzICovLAogCQkJCUY0NDI5MTYwMUZBNTI2MUUwMDJDQzkz
RSAvKiBGaWxlU2l6ZUZvcm1hdHRlci5oIGluIEhlYWRlcnMgKi8sCi0JCQkJQTEwMjY1ODcxRjU2
NzQ2MTAwQjRDODQ0IC8qIEZvdW5kYXRpb25TUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCTBDNUFG
OTFCMUY0M0E0QzcwMDJFQUMwMiAvKiBHcmFwaGljc1NlcnZpY2VzU1BJLmggaW4gSGVhZGVycyAq
LywKIAkJCQlBMTAyNjU4RTFGNTY3RTlEMDBCNEM4NDQgLyogSElTZXJ2aWNlc1NQSS5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJQTEwMjY1ODkxRjU2NzQ3QTAwQjRDODQ0IC8qIEhJVG9vbGJveFNQSS5o
IGluIEhlYWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL1BsYXRm
b3JtTWFjLmNtYWtlIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9QbGF0Zm9ybU1hYy5jbWFrZQpp
bmRleCA3ZTM4MmQ4OGUyNDFlZWM2OTBjNWM1ZTkyZGEzOTgyNDQ2NTc4MTkyLi5iMmFjZmJiMTM5
NzlhMTAwNzNjYmRiMzQ5NWMwMjg5YmY1ZDIzZGQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9QQUwvcGFsL1BsYXRmb3JtTWFjLmNtYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwv
UGxhdGZvcm1NYWMuY21ha2UKQEAgLTE3LDcgKzE3LDYgQEAgbGlzdChBUFBFTkQgUEFMX1BVQkxJ
Q19IRUFERVJTCiAgICAgc3BpL2NvY29hL0NGTlNVUkxDb25uZWN0aW9uU1BJLmgKICAgICBzcGkv
Y29jb2EvQ29yZVRleHRTUEkuaAogICAgIHNwaS9jb2NvYS9EYXRhRGV0ZWN0b3JzQ29yZVNQSS5o
Ci0gICAgc3BpL2NvY29hL0ZvdW5kYXRpb25TUEkuaAogICAgIHNwaS9jb2NvYS9JT1BNTGliU1BJ
LmgKICAgICBzcGkvY29jb2EvSU9QU0xpYlNQSS5oCiAgICAgc3BpL2NvY29hL0lPUmV0dXJuU1BJ
LmgKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0ZvdW5kYXRp
b25TUEkuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0ZvdW5kYXRpb25TUEku
aApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjg0MTc1ZDEyYjllM2M3YmRmMjZkMmVi
YjUzMDM2OGVhNzdlZWUwZi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9Gb3VuZGF0aW9uU1BJLmgK
KysrIC9kZXYvbnVsbApAQCAtMSw0MSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE3
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBB
UyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJV
VE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0gKiBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
Ci0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI3ByYWdtYSBvbmNl
Ci0KLSNpZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQotCi0jaW5jbHVkZSA8Rm91bmRhdGlvbi9O
U1ByaXZhdGVEZWNscy5oPgotCi0jZW5kaWYKLQotdHlwZWRlZiB2b2lkKiBOU0F1dG9yZWxlYXNl
UG9vbE1hcms7Ci0KLVdURl9FWFRFUk5fQ19CRUdJTgotCi1OU0F1dG9yZWxlYXNlUG9vbE1hcmsg
TlNQdXNoQXV0b3JlbGVhc2VQb29sKE5TVUludGVnZXIgY2FwYWNpdHkpOwotdm9pZCBOU1BvcEF1
dG9yZWxlYXNlUG9vbChOU0F1dG9yZWxlYXNlUG9vbE1hcmspOwotCi1XVEZfRVhURVJOX0NfRU5E
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX2NsYXNzLm1tIGIv
U291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19jbGFzcy5tbQppbmRleCBjYTRhNmMyZGVj
NWI4MmI0MDZhZGZlZDExMjA5MzEwYjY2ODNhNmRmLi5jZTFlZjY1NTdhMDc2M2E3ZDM0MzBhM2Jm
OTg2YTE5ODdmOGNiMzU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9v
YmpjX2NsYXNzLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfY2xhc3Mu
bW0KQEAgLTIzLDEyICsyMywxMiBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2luY2x1ZGUg
ImNvbmZpZy5oIgotI2luY2x1ZGUgIm9iamNfY2xhc3MuaCIKKyNpbXBvcnQgImNvbmZpZy5oIgor
I2ltcG9ydCAib2JqY19jbGFzcy5oIgogCi0jaW5jbHVkZSAib2JqY19pbnN0YW5jZS5oIgotI2lu
Y2x1ZGUgIldlYlNjcmlwdE9iamVjdC5oIgotI2luY2x1ZGUgIldlYlNjcmlwdE9iamVjdFByb3Rv
Y29sLmgiCisjaW1wb3J0ICJXZWJTY3JpcHRPYmplY3QuaCIKKyNpbXBvcnQgIldlYlNjcmlwdE9i
amVjdFByb3RvY29sLmgiCisjaW1wb3J0ICJvYmpjX2luc3RhbmNlLmgiCiAKIG5hbWVzcGFjZSBK
U0MgewogbmFtZXNwYWNlIEJpbmRpbmdzIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jy
aWRnZS9vYmpjL29iamNfaW5zdGFuY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29i
amNfaW5zdGFuY2UuaAppbmRleCA5OTNhNmY1NzFlNjNiZmNkZWNiYjRmOTRkM2QwNWU4N2Q4ZjI0
ZTNmLi41ZjI4NWU5MWI4ZGY1ZDUxNWU1NTYwZDQ0OTY1ZGE2NDA0MTU0ZWI0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19pbnN0YW5jZS5oCkBAIC0yMywxMSArMjMsOCBAQAog
ICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBCSU5ESU5HU19PQkpDX0lOU1RBTkNFX0hf
Ci0jZGVmaW5lIEJJTkRJTkdTX09CSkNfSU5TVEFOQ0VfSF8KLQotI2luY2x1ZGUgIm9iamNfY2xh
c3MuaCIKLSNpbmNsdWRlICJvYmpjX3V0aWxpdHkuaCIKKyNpbXBvcnQgIm9iamNfY2xhc3MuaCIK
KyNpbXBvcnQgIm9iamNfdXRpbGl0eS5oIgogCiBuYW1lc3BhY2UgSlNDIHsKIApAQCAtNzUsMTMg
KzcyLDExIEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCBSdW50aW1lT2JqZWN0KiBuZXdSdW50aW1l
T2JqZWN0KEV4ZWNTdGF0ZSopOwogCiAgICAgUmV0YWluUHRyPE9iamVjdFN0cnVjdFB0cj4gX2lu
c3RhbmNlOwotICAgIG11dGFibGUgT2JqY0NsYXNzICpfY2xhc3M7Ci0gICAgT2JqZWN0U3RydWN0
UHRyIF9wb29sOwotICAgIGludCBfYmVnaW5Db3VudDsKKyAgICBtdXRhYmxlIE9iamNDbGFzcyog
X2NsYXNzIHsgbnVsbHB0ciB9OworICAgIHZvaWQqIG1fYXV0b3JlbGVhc2VQb29sIHsgbnVsbHB0
ciB9OworICAgIGludCBfYmVnaW5Db3VudCB7IDAgfTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIEJp
bmRpbmdzCiAKIH0gLy8gbmFtZXNwYWNlIEpTQwotCi0jZW5kaWYgLy8gQklORElOR1NfT0JKQ19J
TlNUQU5DRV9IXwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19p
bnN0YW5jZS5tbSBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfaW5zdGFuY2UubW0K
aW5kZXggNjhlNTczMTJkYWMwYTdhYTk0MzU4M2M4OTgxOGU4ZThhMzZmMDMxNy4uMGExMTI0NzIy
YmY2MjEzYjIyMGYxY2E2YjQwZGM2ZTA1Yzg5YmZiYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYnJpZGdlL29iamMvb2JqY19pbnN0YW5jZS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlk
Z2Uvb2JqYy9vYmpjX2luc3RhbmNlLm1tCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdo
dCAoQykgMjAwNCwgMjAwOC0yMDA5LCAyMDEzLCAyMDE2IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNC0yMDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtNDAsNiArNDAs
NyBAQAogI2ltcG9ydCA8d3RmL01haW5UaHJlYWQuaD4KICNpbXBvcnQgPHd0Zi9OZXZlckRlc3Ry
b3llZC5oPgogI2ltcG9ydCA8d3RmL1RocmVhZFNwZWNpZmljLmg+CisjaW1wb3J0IDx3dGYvc3Bp
L2NvY29hL0ZvdW5kYXRpb25TUEkuaD4KIAogI2lmZGVmIE5ERUJVRwogI2RlZmluZSBPQkpDX0xP
Ryhmb3JtYXRBbmRBcmdzLi4uKSAoKHZvaWQpMCkKQEAgLTEwMCw5ICsxMDEsNiBAQCB2b2lkIE9i
amNJbnN0YW5jZTo6bW92ZUdsb2JhbEV4Y2VwdGlvblRvRXhlY1N0YXRlKEV4ZWNTdGF0ZSogZXhl
YykKIE9iamNJbnN0YW5jZTo6T2JqY0luc3RhbmNlKGlkIGluc3RhbmNlLCBSZWZQdHI8Um9vdE9i
amVjdD4mJiByb290T2JqZWN0KSAKICAgICA6IEluc3RhbmNlKFdURk1vdmUocm9vdE9iamVjdCkp
CiAgICAgLCBfaW5zdGFuY2UoaW5zdGFuY2UpCi0gICAgLCBfY2xhc3MoMCkKLSAgICAsIF9wb29s
KDApCi0gICAgLCBfYmVnaW5Db3VudCgwKQogewogfQogCkBAIC0xMzMsOCArMTMxLDggQEAgT2Jq
Y0luc3RhbmNlOjp+T2JqY0luc3RhbmNlKCkKIAogdm9pZCBPYmpjSW5zdGFuY2U6OnZpcnR1YWxC
ZWdpbigpCiB7Ci0gICAgaWYgKCFfcG9vbCkKLSAgICAgICAgX3Bvb2wgPSBbW05TQXV0b3JlbGVh
c2VQb29sIGFsbG9jXSBpbml0XTsKKyAgICBpZiAoIW1fYXV0b3JlbGVhc2VQb29sKQorICAgICAg
ICBtX2F1dG9yZWxlYXNlUG9vbCA9IG9iamNfYXV0b3JlbGVhc2VQb29sUHVzaCgpOwogICAgIF9i
ZWdpbkNvdW50Kys7CiB9CiAKQEAgLTE0Myw4ICsxNDEsOSBAQCB2b2lkIE9iamNJbnN0YW5jZTo6
dmlydHVhbEVuZCgpCiAgICAgX2JlZ2luQ291bnQtLTsKICAgICBBU1NFUlQoX2JlZ2luQ291bnQg
Pj0gMCk7CiAgICAgaWYgKCFfYmVnaW5Db3VudCkgewotICAgICAgICBbX3Bvb2wgZHJhaW5dOwot
ICAgICAgICBfcG9vbCA9IDA7CisgICAgICAgIEFTU0VSVChtX2F1dG9yZWxlYXNlUG9vbCk7Cisg
ICAgICAgIG9iamNfYXV0b3JlbGVhc2VQb29sUG9wKG1fYXV0b3JlbGVhc2VQb29sKTsKKyAgICAg
ICAgbV9hdXRvcmVsZWFzZVBvb2wgPSBudWxscHRyOwogICAgIH0KIH0KIApAQCAtNTA3LDEzICs1
MDYsMTEgQEAgSlNDOjpKU1ZhbHVlIE9iamNJbnN0YW5jZTo6c3RyaW5nVmFsdWUoRXhlY1N0YXRl
KiBleGVjKSBjb25zdAogCiBKU0M6OkpTVmFsdWUgT2JqY0luc3RhbmNlOjpudW1iZXJWYWx1ZShF
eGVjU3RhdGUqKSBjb25zdAogewotICAgIC8vIEZJWE1FOiAgSW1wbGVtZW50IHNvbWV0aGluZyBz
ZW5zaWJsZQogICAgIHJldHVybiBqc051bWJlcigwKTsKIH0KIAogSlNDOjpKU1ZhbHVlIE9iamNJ
bnN0YW5jZTo6Ym9vbGVhblZhbHVlKCkgY29uc3QKIHsKLSAgICAvLyBGSVhNRTogIEltcGxlbWVu
dCBzb21ldGhpbmcgc2Vuc2libGUKICAgICByZXR1cm4ganNCb29sZWFuKGZhbHNlKTsKIH0KIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19ydW50aW1lLm1tIGIv
U291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19ydW50aW1lLm1tCmluZGV4IDg3ZDAzODdh
NjlhNzUzN2QyZjllZDZiZDZjNTMyMmI0NzI1MDFmMWUuLmU3YjFiZGJlYmJmOTVkNjRjODhmMmYy
YmMxY2Y2YTE1MTEyZTI0NTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpj
L29iamNfcnVudGltZS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX3J1
bnRpbWUubW0KQEAgLTIzLDIwICsyMywyMCBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lu
Y2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIm9iamNfcnVudGltZS5oIgotCi0jaW5jbHVkZSAi
SlNET01CaW5kaW5nLmgiCi0jaW5jbHVkZSAiT2JqQ1J1bnRpbWVPYmplY3QuaCIKLSNpbmNsdWRl
ICJXZWJTY3JpcHRPYmplY3QuaCIKLSNpbmNsdWRlICJXZWJTY3JpcHRPYmplY3RQcm90b2NvbC5o
IgotI2luY2x1ZGUgIm9iamNfaW5zdGFuY2UuaCIKLSNpbmNsdWRlICJydW50aW1lX2FycmF5Lmgi
Ci0jaW5jbHVkZSAicnVudGltZV9vYmplY3QuaCIKLSNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9F
cnJvci5oPgotI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0pTR2xvYmFsT2JqZWN0Lmg+Ci0jaW5j
bHVkZSA8SmF2YVNjcmlwdENvcmUvSlNMb2NrLmg+Ci0jaW5jbHVkZSA8d3RmL1JldGFpblB0ci5o
PgorI2ltcG9ydCAiY29uZmlnLmgiCisjaW1wb3J0ICJvYmpjX3J1bnRpbWUuaCIKKworI2ltcG9y
dCAiSlNET01CaW5kaW5nLmgiCisjaW1wb3J0ICJPYmpDUnVudGltZU9iamVjdC5oIgorI2ltcG9y
dCAiV2ViU2NyaXB0T2JqZWN0LmgiCisjaW1wb3J0ICJXZWJTY3JpcHRPYmplY3RQcm90b2NvbC5o
IgorI2ltcG9ydCAib2JqY19pbnN0YW5jZS5oIgorI2ltcG9ydCAicnVudGltZV9hcnJheS5oIgor
I2ltcG9ydCAicnVudGltZV9vYmplY3QuaCIKKyNpbXBvcnQgPEphdmFTY3JpcHRDb3JlL0Vycm9y
Lmg+CisjaW1wb3J0IDxKYXZhU2NyaXB0Q29yZS9KU0dsb2JhbE9iamVjdC5oPgorI2ltcG9ydCA8
SmF2YVNjcmlwdENvcmUvSlNMb2NrLmg+CisjaW1wb3J0IDx3dGYvUmV0YWluUHRyLmg+CiAKIHVz
aW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9icmlk
Z2Uvb2JqYy9vYmpjX3V0aWxpdHkubW0gYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpj
X3V0aWxpdHkubW0KaW5kZXggMTJkMDUyZDIyNDg5NGMzYzdiYmM5YTY3ZjI3NWJiZTY4ZDM0OGNl
Ni4uMTk3MDQzZmY1MWRhZjRjYjA5NTZjOGU1OGE0NTA4Yzk2YTgxZGMzYyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY191dGlsaXR5Lm1tCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfdXRpbGl0eS5tbQpAQCAtMjMsMTYgKzIzLDE2IEBACiAg
KiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAib2Jq
Y191dGlsaXR5LmgiCisjaW1wb3J0ICJjb25maWcuaCIKKyNpbXBvcnQgIm9iamNfdXRpbGl0eS5o
IgogCi0jaW5jbHVkZSAiV2ViU2NyaXB0T2JqZWN0UHJvdG9jb2wuaCIKLSNpbmNsdWRlICJvYmpj
X2luc3RhbmNlLmgiCi0jaW5jbHVkZSAicnVudGltZV9hcnJheS5oIgotI2luY2x1ZGUgInJ1bnRp
bWVfb2JqZWN0LmgiCi0jaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSlNHbG9iYWxPYmplY3QuaD4K
LSNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9KU0xvY2suaD4KLSNpbmNsdWRlIDx3dGYvQXNzZXJ0
aW9ucy5oPgorI2ltcG9ydCAiV2ViU2NyaXB0T2JqZWN0UHJvdG9jb2wuaCIKKyNpbXBvcnQgIm9i
amNfaW5zdGFuY2UuaCIKKyNpbXBvcnQgInJ1bnRpbWVfYXJyYXkuaCIKKyNpbXBvcnQgInJ1bnRp
bWVfb2JqZWN0LmgiCisjaW1wb3J0IDxKYXZhU2NyaXB0Q29yZS9KU0dsb2JhbE9iamVjdC5oPgor
I2ltcG9ydCA8SmF2YVNjcmlwdENvcmUvSlNMb2NrLmg+CisjaW1wb3J0IDx3dGYvQXNzZXJ0aW9u
cy5oPgogCiAjaWYgIWRlZmluZWQoX0NfTE5HX0xORykKICNkZWZpbmUgX0NfTE5HX0xORyAncScK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL21hYy9BdWRpb0J1c01h
Yy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL21hYy9BdWRpb0J1c01hYy5tbQpp
bmRleCA3MDNhNjdiN2IzODQyYzE2Mjk3Zjg5M2U5NDZhOGJjMjI0YzVkNGE2Li5mYzU1MTM0Yzgy
M2JjZjU3YTQ2YzdkY2UyYzBjNjgzYTk0NTQ1YjU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9hdWRpby9tYWMvQXVkaW9CdXNNYWMubW0KKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vYXVkaW8vbWFjL0F1ZGlvQnVzTWFjLm1tCkBAIC0yOSw5ICsyOSw2IEBACiAjaW1w
b3J0ICJBdWRpb0J1cy5oIgogCiAjaW1wb3J0ICJBdWRpb0ZpbGVSZWFkZXIuaCIKLSNpbXBvcnQg
PHd0Zi9BdXRvZHJhaW5lZFBvb2wuaD4KLSNpbXBvcnQgPHd0Zi9SZWZQdHIuaD4KLSNpbXBvcnQg
PEZvdW5kYXRpb24vRm91bmRhdGlvbi5oPgogCiBAaW50ZXJmYWNlIFdlYkNvcmVBdWRpb0J1bmRs
ZUNsYXNzIDogTlNPYmplY3QKIEBlbmQKQEAgLTQzLDE2ICs0MCwxMiBAQCBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAKIFJlZlB0cjxBdWRpb0J1cz4gQXVkaW9CdXM6OmxvYWRQbGF0Zm9ybVJlc291cmNl
KGNvbnN0IGNoYXIqIG5hbWUsIGZsb2F0IHNhbXBsZVJhdGUpCiB7Ci0gICAgLy8gVGhpcyBtZXRo
b2QgY2FuIGJlIGNhbGxlZCBmcm9tIG90aGVyIHRoYW4gdGhlIG1haW4gdGhyZWFkLCBzbyB3ZSBu
ZWVkIGFuIGF1dG8tcmVsZWFzZSBwb29sLgotICAgIEF1dG9kcmFpbmVkUG9vbCBwb29sOwotICAg
IAotICAgIE5TQnVuZGxlICpidW5kbGUgPSBbTlNCdW5kbGUgYnVuZGxlRm9yQ2xhc3M6W1dlYkNv
cmVBdWRpb0J1bmRsZUNsYXNzIGNsYXNzXV07Ci0gICAgTlNVUkwgKmF1ZGlvRmlsZVVSTCA9IFti
dW5kbGUgVVJMRm9yUmVzb3VyY2U6W05TU3RyaW5nIHN0cmluZ1dpdGhVVEY4U3RyaW5nOm5hbWVd
IHdpdGhFeHRlbnNpb246QCJ3YXYiIHN1YmRpcmVjdG9yeTpAImF1ZGlvIl07Ci0gICAgTlNEYXRh
UmVhZGluZ09wdGlvbnMgb3B0aW9ucyA9IE5TRGF0YVJlYWRpbmdNYXBwZWRJZlNhZmU7Ci0gICAg
TlNEYXRhICphdWRpb0RhdGEgPSBbTlNEYXRhIGRhdGFXaXRoQ29udGVudHNPZlVSTDphdWRpb0Zp
bGVVUkwgb3B0aW9uczpvcHRpb25zIGVycm9yOm5pbF07Ci0KLSAgICBpZiAoYXVkaW9EYXRhKQot
ICAgICAgICByZXR1cm4gY3JlYXRlQnVzRnJvbUluTWVtb3J5QXVkaW9GaWxlKFthdWRpb0RhdGEg
Ynl0ZXNdLCBbYXVkaW9EYXRhIGxlbmd0aF0sIGZhbHNlLCBzYW1wbGVSYXRlKTsKKyAgICBAYXV0
b3JlbGVhc2Vwb29sIHsKKyAgICAgICAgTlNCdW5kbGUgKmJ1bmRsZSA9IFtOU0J1bmRsZSBidW5k
bGVGb3JDbGFzczpbV2ViQ29yZUF1ZGlvQnVuZGxlQ2xhc3MgY2xhc3NdXTsKKyAgICAgICAgTlNV
UkwgKmF1ZGlvRmlsZVVSTCA9IFtidW5kbGUgVVJMRm9yUmVzb3VyY2U6W05TU3RyaW5nIHN0cmlu
Z1dpdGhVVEY4U3RyaW5nOm5hbWVdIHdpdGhFeHRlbnNpb246QCJ3YXYiIHN1YmRpcmVjdG9yeTpA
ImF1ZGlvIl07CisgICAgICAgIGlmIChOU0RhdGEgKmF1ZGlvRGF0YSA9IFtOU0RhdGEgZGF0YVdp
dGhDb250ZW50c09mVVJMOmF1ZGlvRmlsZVVSTCBvcHRpb25zOk5TRGF0YVJlYWRpbmdNYXBwZWRJ
ZlNhZmUgZXJyb3I6bmlsXSkKKyAgICAgICAgICAgIHJldHVybiBjcmVhdGVCdXNGcm9tSW5NZW1v
cnlBdWRpb0ZpbGUoW2F1ZGlvRGF0YSBieXRlc10sIFthdWRpb0RhdGEgbGVuZ3RoXSwgZmFsc2Us
IHNhbXBsZVJhdGUpOworICAgIH0KIAogICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgIHJl
dHVybiBudWxscHRyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL3dh
ay9XZWJDb3JlVGhyZWFkLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL3dhay9XZWJD
b3JlVGhyZWFkLm1tCmluZGV4IDRhOTJiYzY4NTNiNjI2ZTg4ZmNmMjQ1ZTI0ZjliZDdhMjY3Nzkx
ZmUuLjQzYmIzMmE5MzBhMjE0NTkyMWYwNWMyYzdmYzIyMDJmODE5MzQzNDggMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy93YWsvV2ViQ29yZVRocmVhZC5tbQorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3Mvd2FrL1dlYkNvcmVUaHJlYWQubW0KQEAgLTEsNSAr
MSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA2LCAyMDA3LCAyMDA4IEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNi0yMDE4IEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpA
QCAtMzQsMjQgKzM0LDIzIEBACiAjaW1wb3J0ICJSdW50aW1lQXBwbGljYXRpb25DaGVja3MuaCIK
ICNpbXBvcnQgIlRocmVhZEdsb2JhbERhdGEuaCIKICNpbXBvcnQgIldBS1dpbmRvdy5oIgorI2lt
cG9ydCAiV0tVdGlsaXRpZXMuaCIKICNpbXBvcnQgIldlYkNvcmVUaHJlYWRJbnRlcm5hbC5oIgog
I2ltcG9ydCAiV2ViQ29yZVRocmVhZE1lc3NhZ2UuaCIKICNpbXBvcnQgIldlYkNvcmVUaHJlYWRS
dW4uaCIKLSNpbXBvcnQgIldLVXRpbGl0aWVzLmgiCi0KKyNpbXBvcnQgPEZvdW5kYXRpb24vTlNJ
bnZvY2F0aW9uLmg+CiAjaW1wb3J0IDxKYXZhU2NyaXB0Q29yZS9Jbml0aWFsaXplVGhyZWFkaW5n
Lmg+CiAjaW1wb3J0IDxKYXZhU2NyaXB0Q29yZS9KU0xvY2suaD4KKyNpbXBvcnQgPGxpYmtlcm4v
T1NBdG9taWMuaD4KKyNpbXBvcnQgPG9iamMvcnVudGltZS5oPgogI2ltcG9ydCA8d3RmL0Fzc2Vy
dGlvbnMuaD4KICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+CiAjaW1wb3J0IDx3dGYvUmVjdXJz
aXZlTG9ja0FkYXB0ZXIuaD4KICNpbXBvcnQgPHd0Zi9SdW5Mb29wLmg+CiAjaW1wb3J0IDx3dGYv
VGhyZWFkaW5nLmg+CisjaW1wb3J0IDx3dGYvc3BpL2NvY29hL0ZvdW5kYXRpb25TUEkuaD4KICNp
bXBvcnQgPHd0Zi90ZXh0L0F0b21pY1N0cmluZy5oPgogCi0jaW1wb3J0IDxGb3VuZGF0aW9uL05T
SW52b2NhdGlvbi5oPgotI2ltcG9ydCA8bGlia2Vybi9PU0F0b21pYy5oPgotI2ltcG9ydCA8b2Jq
Yy9ydW50aW1lLmg+Ci0KICNkZWZpbmUgTE9HX01FU1NBR0VTIDAKICNkZWZpbmUgTE9HX1dFQl9M
T0NLIDAKICNkZWZpbmUgTE9HX01BSU5fVEhSRUFEX0xPQ0tJTkcgMApAQCAtODIsMjEgKzgxLDEx
IEBAIC0gKHZvaWQpcmVsZWFzZU9uTWFpblRocmVhZCB7CiAKIEBlbmQKIAotdXNpbmcgTlNBdXRv
cmVsZWFzZVBvb2xNYXJrID0gdm9pZCo7Ci0jaWZkZWYgX19jcGx1c3BsdXMKLWV4dGVybiAiQyIg
ewotI2VuZGlmCi1leHRlcm4gTlNBdXRvcmVsZWFzZVBvb2xNYXJrIE5TUHVzaEF1dG9yZWxlYXNl
UG9vbCh1bnNpZ25lZCBpZ25vcmVkKTsKLWV4dGVybiB2b2lkIE5TUG9wQXV0b3JlbGVhc2VQb29s
KE5TQXV0b3JlbGVhc2VQb29sTWFyayB0b2tlbik7Ci0jaWZkZWYgX19jcGx1c3BsdXMKLX0KLSNl
bmRpZgotCiBzdGF0aWMgUmVjdXJzaXZlTG9jayB3ZWJMb2NrOwogc3RhdGljIExvY2sgd2ViVGhy
ZWFkUmVsZWFzZUxvY2s7CiBzdGF0aWMgUmVjdXJzaXZlTG9jayB3ZWJDb3JlUmVsZWFzZUxvY2s7
CiAKLXN0YXRpYyBOU0F1dG9yZWxlYXNlUG9vbE1hcmsgYXV0b3JlbGVhc2VQb29sTWFyazsKK3N0
YXRpYyB2b2lkKiBhdXRvcmVsZWFzZVBvb2xNYXJrOwogc3RhdGljIENGUnVuTG9vcFJlZiB3ZWJU
aHJlYWRSdW5Mb29wOwogc3RhdGljIE5TUnVuTG9vcCogd2ViVGhyZWFkTlNSdW5Mb29wOwogc3Rh
dGljIHB0aHJlYWRfdCB3ZWJUaHJlYWQ7CkBAIC0xMDQsNyArOTMsNyBAQCBzdGF0aWMgQk9PTCBp
c1dlYlRocmVhZExvY2tlZDsKIHN0YXRpYyBCT09MIHdlYlRocmVhZFN0YXJ0ZWQ7CiBzdGF0aWMg
dW5zaWduZWQgd2ViVGhyZWFkTG9ja0NvdW50OwogCi1zdGF0aWMgTlNBdXRvcmVsZWFzZVBvb2xN
YXJrIHNhdmVkQXV0b3JlbGVhc2VQb29sTWFyazsKK3N0YXRpYyB2b2lkKiBzYXZlZEF1dG9yZWxl
YXNlUG9vbE1hcms7CiBzdGF0aWMgQk9PTCBpc05lc3RlZFdlYlRocmVhZFJ1bkxvb3A7CiB0eXBl
ZGVmIGVudW0gewogICAgIFB1c2hPclBvcEF1dG9yZWxlYXNlUG9vbCwKQEAgLTQ2NSw3ICs0NTQs
NyBAQCBzdGF0aWMgdm9pZCBXZWJSdW5Mb29wTG9ja0ludGVybmFsKEF1dG9yZWxlYXNlUG9vbE9w
ZXJhdGlvbiBwb29sT3BlcmF0aW9uKQogewogICAgIF9XZWJUaHJlYWRMb2NrKCk7CiAgICAgaWYg
KHBvb2xPcGVyYXRpb24gPT0gUHVzaE9yUG9wQXV0b3JlbGVhc2VQb29sKQotICAgICAgICBhdXRv
cmVsZWFzZVBvb2xNYXJrID0gTlNQdXNoQXV0b3JlbGVhc2VQb29sKDApOworICAgICAgICBhdXRv
cmVsZWFzZVBvb2xNYXJrID0gb2JqY19hdXRvcmVsZWFzZVBvb2xQdXNoKCk7CiAgICAgaXNXZWJU
aHJlYWRMb2NrZWQgPSBZRVM7CiB9CiAKQEAgLTQ3OSw3ICs0NjgsNyBAQCBzdGF0aWMgdm9pZCBX
ZWJSdW5Mb29wVW5sb2NrSW50ZXJuYWwoQXV0b3JlbGVhc2VQb29sT3BlcmF0aW9uIHBvb2xPcGVy
YXRpb24pCiAgICAgfQogCiAgICAgaWYgKHBvb2xPcGVyYXRpb24gPT0gUHVzaE9yUG9wQXV0b3Jl
bGVhc2VQb29sKQotICAgICAgICBOU1BvcEF1dG9yZWxlYXNlUG9vbChhdXRvcmVsZWFzZVBvb2xN
YXJrKTsKKyAgICAgICAgb2JqY19hdXRvcmVsZWFzZVBvb2xQb3AoYXV0b3JlbGVhc2VQb29sTWFy
ayk7CiAKICAgICBfV2ViVGhyZWFkVW5sb2NrKCk7CiAgICAgaXNXZWJUaHJlYWRMb2NrZWQgPSBO
TzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY29jb2EvUmVz
b3VyY2VSZXNwb25zZUNvY29hLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9j
b2NvYS9SZXNvdXJjZVJlc3BvbnNlQ29jb2EubW0KaW5kZXggM2Q4ZjM5NmQ4MDdjOTJhMTI1NjVj
OWJhY2RlMTViZTcyMmE2ZjkxYy4uMzAxZGExZWRkN2U2NWVjZDE0NTM4NmZlNjZmMGNmOTk0NjJj
MzliNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jb2NvYS9S
ZXNvdXJjZVJlc3BvbnNlQ29jb2EubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0
d29yay9jb2NvYS9SZXNvdXJjZVJlc3BvbnNlQ29jb2EubW0KQEAgLTMzLDcgKzMzLDYgQEAKICNp
bXBvcnQgPEZvdW5kYXRpb24vRm91bmRhdGlvbi5oPgogI2ltcG9ydCA8bGltaXRzPgogI2ltcG9y
dCA8cGFsL3NwaS9jZi9DRk5ldHdvcmtTUEkuaD4KLSNpbXBvcnQgPHd0Zi9BdXRvZHJhaW5lZFBv
b2wuaD4KICNpbXBvcnQgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgogI2ltcG9ydCA8d3RmL1N0ZExp
YkV4dHJhcy5oPgogI2ltcG9ydCA8d3RmL2NmL1R5cGVDYXN0c0NGLmg+CkBAIC0xNzUsMjYgKzE3
NCwyOCBAQCB2b2lkIFJlc291cmNlUmVzcG9uc2U6OnBsYXRmb3JtTGF6eUluaXQoSW5pdExldmVs
IGluaXRMZXZlbCkKICAgICBpZiAobV9pc051bGwgfHwgIW1fbnNSZXNwb25zZSkKICAgICAgICAg
cmV0dXJuOwogICAgIAotICAgIEF1dG9kcmFpbmVkUG9vbCBwb29sOworICAgIEBhdXRvcmVsZWFz
ZXBvb2wgewogCi0gICAgTlNIVFRQVVJMUmVzcG9uc2UgKmh0dHBSZXNwb25zZSA9IFttX25zUmVz
cG9uc2UuZ2V0KCkgaXNLaW5kT2ZDbGFzczpbTlNIVFRQVVJMUmVzcG9uc2UgY2xhc3NdXSA/IChO
U0hUVFBVUkxSZXNwb25zZSAqKW1fbnNSZXNwb25zZS5nZXQoKSA6IG51bGxwdHI7CisgICAgICAg
IE5TSFRUUFVSTFJlc3BvbnNlICpodHRwUmVzcG9uc2UgPSBbbV9uc1Jlc3BvbnNlLmdldCgpIGlz
S2luZE9mQ2xhc3M6W05TSFRUUFVSTFJlc3BvbnNlIGNsYXNzXV0gPyAoTlNIVFRQVVJMUmVzcG9u
c2UgKiltX25zUmVzcG9uc2UuZ2V0KCkgOiBudWxscHRyOworCisgICAgICAgIGlmIChtX2luaXRM
ZXZlbCA8IENvbW1vbkZpZWxkc09ubHkpIHsKKyAgICAgICAgICAgIG1fdXJsID0gW21fbnNSZXNw
b25zZS5nZXQoKSBVUkxdOworICAgICAgICAgICAgbV9taW1lVHlwZSA9IFttX25zUmVzcG9uc2Uu
Z2V0KCkgTUlNRVR5cGVdOworICAgICAgICAgICAgbV9leHBlY3RlZENvbnRlbnRMZW5ndGggPSBb
bV9uc1Jlc3BvbnNlLmdldCgpIGV4cGVjdGVkQ29udGVudExlbmd0aF07CisgICAgICAgICAgICAv
LyBTdHJpcHBpbmcgZG91YmxlIHF1b3RlcyBhcyBhIHdvcmthcm91bmQgZm9yIDxyZGFyOi8vcHJv
YmxlbS84NzU3MDg4PiwgY2FuIGJlIHJlbW92ZWQgb25jZSB0aGF0IGlzIGZpeGVkLgorICAgICAg
ICAgICAgbV90ZXh0RW5jb2RpbmdOYW1lID0gc3RyaXBMZWFkaW5nQW5kVHJhaWxpbmdEb3VibGVR
dW90ZShbbV9uc1Jlc3BvbnNlLmdldCgpIHRleHRFbmNvZGluZ05hbWVdKTsKKyAgICAgICAgICAg
IG1faHR0cFN0YXR1c0NvZGUgPSBodHRwUmVzcG9uc2UgPyBbaHR0cFJlc3BvbnNlIHN0YXR1c0Nv
ZGVdIDogMDsKKyAgICAgICAgfQorICAgICAgICBpZiAoaHR0cFJlc3BvbnNlKSB7CisgICAgICAg
ICAgICBpZiAoaW5pdExldmVsID09IEFsbEZpZWxkcykgeworICAgICAgICAgICAgICAgIGF1dG8g
bWVzc2FnZVJlZiA9IENGVVJMUmVzcG9uc2VHZXRIVFRQUmVzcG9uc2UoW2h0dHBSZXNwb25zZSBf
Q0ZVUkxSZXNwb25zZV0pOworICAgICAgICAgICAgICAgIG1faHR0cFN0YXR1c1RleHQgPSBleHRy
YWN0SFRUUFN0YXR1c1RleHQobWVzc2FnZVJlZik7CisgICAgICAgICAgICAgICAgbV9odHRwVmVy
c2lvbiA9IFN0cmluZyhhZG9wdENGKENGSFRUUE1lc3NhZ2VDb3B5VmVyc2lvbihtZXNzYWdlUmVm
KSkuZ2V0KCkpLmNvbnZlcnRUb0FTQ0lJVXBwZXJjYXNlKCk7CisgICAgICAgICAgICAgICAgaW5p
dGlhbGl6ZUhUVFBIZWFkZXJzKE9ubHlDb21tb25IZWFkZXJzOjpObywgaHR0cFJlc3BvbnNlLCBt
X2h0dHBIZWFkZXJGaWVsZHMpOworICAgICAgICAgICAgfSBlbHNlCisgICAgICAgICAgICAgICAg
aW5pdGlhbGl6ZUhUVFBIZWFkZXJzKE9ubHlDb21tb25IZWFkZXJzOjpZZXMsIGh0dHBSZXNwb25z
ZSwgbV9odHRwSGVhZGVyRmllbGRzKTsKKyAgICAgICAgfQogCi0gICAgaWYgKG1faW5pdExldmVs
IDwgQ29tbW9uRmllbGRzT25seSkgewotICAgICAgICBtX3VybCA9IFttX25zUmVzcG9uc2UuZ2V0
KCkgVVJMXTsKLSAgICAgICAgbV9taW1lVHlwZSA9IFttX25zUmVzcG9uc2UuZ2V0KCkgTUlNRVR5
cGVdOwotICAgICAgICBtX2V4cGVjdGVkQ29udGVudExlbmd0aCA9IFttX25zUmVzcG9uc2UuZ2V0
KCkgZXhwZWN0ZWRDb250ZW50TGVuZ3RoXTsKLSAgICAgICAgLy8gU3RyaXBwaW5nIGRvdWJsZSBx
dW90ZXMgYXMgYSB3b3JrYXJvdW5kIGZvciA8cmRhcjovL3Byb2JsZW0vODc1NzA4OD4sIGNhbiBi
ZSByZW1vdmVkIG9uY2UgdGhhdCBpcyBmaXhlZC4KLSAgICAgICAgbV90ZXh0RW5jb2RpbmdOYW1l
ID0gc3RyaXBMZWFkaW5nQW5kVHJhaWxpbmdEb3VibGVRdW90ZShbbV9uc1Jlc3BvbnNlLmdldCgp
IHRleHRFbmNvZGluZ05hbWVdKTsKLSAgICAgICAgbV9odHRwU3RhdHVzQ29kZSA9IGh0dHBSZXNw
b25zZSA/IFtodHRwUmVzcG9uc2Ugc3RhdHVzQ29kZV0gOiAwOwotICAgIH0KLSAgICBpZiAoaHR0
cFJlc3BvbnNlKSB7Ci0gICAgICAgIGlmIChpbml0TGV2ZWwgPT0gQWxsRmllbGRzKSB7Ci0gICAg
ICAgICAgICBhdXRvIG1lc3NhZ2VSZWYgPSBDRlVSTFJlc3BvbnNlR2V0SFRUUFJlc3BvbnNlKFto
dHRwUmVzcG9uc2UgX0NGVVJMUmVzcG9uc2VdKTsKLSAgICAgICAgICAgIG1faHR0cFN0YXR1c1Rl
eHQgPSBleHRyYWN0SFRUUFN0YXR1c1RleHQobWVzc2FnZVJlZik7Ci0gICAgICAgICAgICBtX2h0
dHBWZXJzaW9uID0gU3RyaW5nKGFkb3B0Q0YoQ0ZIVFRQTWVzc2FnZUNvcHlWZXJzaW9uKG1lc3Nh
Z2VSZWYpKS5nZXQoKSkuY29udmVydFRvQVNDSUlVcHBlcmNhc2UoKTsKLSAgICAgICAgICAgIGlu
aXRpYWxpemVIVFRQSGVhZGVycyhPbmx5Q29tbW9uSGVhZGVyczo6Tm8sIGh0dHBSZXNwb25zZSwg
bV9odHRwSGVhZGVyRmllbGRzKTsKLSAgICAgICAgfSBlbHNlCi0gICAgICAgICAgICBpbml0aWFs
aXplSFRUUEhlYWRlcnMoT25seUNvbW1vbkhlYWRlcnM6OlllcywgaHR0cFJlc3BvbnNlLCBtX2h0
dHBIZWFkZXJGaWVsZHMpOwogICAgIH0KIAogICAgIG1faW5pdExldmVsID0gaW5pdExldmVsOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2FyYm9uL0NhcmJvblV0aWxzLm0g
Yi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DYXJib24vQ2FyYm9uVXRpbHMubQppbmRleCBhZjE5
N2M3Mzc5OTExZjhiYmYwN2IyMjc5OTg0MzU5MzRjMjU2ODM5Li5mZjE0YjNjMGZmMDc4ODFkMGJh
NGNlNDZmYWUwMjE3M2I4YWMzYzAzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21h
Yy9DYXJib24vQ2FyYm9uVXRpbHMubQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DYXJi
b24vQ2FyYm9uVXRpbHMubQpAQCAtMjksMTMgKzI5LDEzIEBACiAjaWZuZGVmIF9fTFA2NF9fCiAK
ICNpbmNsdWRlICJDYXJib25VdGlscy5oIgotI2ltcG9ydCA8cGFsL3NwaS9jb2NvYS9Gb3VuZGF0
aW9uU1BJLmg+CisjaW1wb3J0IDx3dGYvc3BpL2NvY29hL0ZvdW5kYXRpb25TUEkuaD4KIAogZXh0
ZXJuIENHSW1hZ2VSZWYgX05TQ3JlYXRlSW1hZ2VSZWYoIHVuc2lnbmVkIGNoYXIgKmNvbnN0IGJp
dG1hcERhdGFbNV0sIGludCBwaXhlbHNXaWRlLCBpbnQgcGl4ZWxzSGlnaCwgaW50IGJpdHNQZXJT
YW1wbGUsIGludCBzYW1wbGVzUGVyUGl4ZWwsIGludCBiaXRzUGVyUGl4ZWwsIGludCBieXRlc1Bl
clJvdywgQk9PTCBpc1BsYW5hciwgQk9PTCBoYXNBbHBoYSwgTlNTdHJpbmcgKmNvbG9yU3BhY2VO
YW1lLCBDR0NvbG9yU3BhY2VSZWYgY3VzdG9tQ29sb3JTcGFjZSwgaWQgc291cmNlT2JqKTsKIAog
c3RhdGljIHZvaWQJCQkJUG9vbENsZWFuZXIoIEV2ZW50TG9vcFRpbWVyUmVmIGluVGltZXIsIEV2
ZW50TG9vcElkbGVUaW1lck1lc3NhZ2UgaW5TdGF0ZSwgdm9pZCAqaW5Vc2VyRGF0YSApOwogCi1z
dGF0aWMgTlNBdXRvcmVsZWFzZVBvb2wqCXNQb29sOworc3RhdGljIHZvaWQqIHNQb29sOwogc3Rh
dGljIHVuc2lnbmVkIG51bVBvb2xzOwogc3RhdGljIEV2ZW50TG9vcFJlZiBwb29sTG9vcDsKIApA
QCAtNDMsOSArNDMsOSBAQAogCiBzdGF0aWMgdW5zaWduZWQgZ2V0TlNBdXRvcmVsZWFzZVBvb2xD
b3VudCh2b2lkKQogewotICAgIHZvaWQqIHYgPSBOU1B1c2hBdXRvcmVsZWFzZVBvb2woMCk7Cisg
ICAgdm9pZCogdiA9IG9iamNfYXV0b3JlbGVhc2VQb29sUHVzaCgpOwogICAgIHVpbnRwdHJfdCBu
dW1Qb29scyA9ICh1aW50cHRyX3QpdjsKLSAgICBOU1BvcEF1dG9yZWxlYXNlUG9vbCh2KTsKKyAg
ICBvYmpjX2F1dG9yZWxlYXNlUG9vbFBvcCh2KTsKICAgICByZXR1cm4gbnVtUG9vbHM7CiB9CiAK
QEAgLTYzLDcgKzYzLDcgQEAgc3RhdGljIHVuc2lnbmVkIGdldE5TQXV0b3JlbGVhc2VQb29sQ291
bnQodm9pZCkKICAgICAgICAgR2V0Q3VycmVudFByb2Nlc3MoICZwcm9jZXNzICk7IAogICAgICAg
ICBOU0FwcGxpY2F0aW9uTG9hZCgpOwogICAgICAgICAgICAgICAgIAotICAgICAgICBzUG9vbCA9
IFtbTlNBdXRvcmVsZWFzZVBvb2wgYWxsb2NXaXRoWm9uZTpOVUxMXSBpbml0XTsKKyAgICAgICAg
c1Bvb2wgPSBvYmpjX2F1dG9yZWxlYXNlUG9vbFB1c2goKTsKICAgICAgICAgbnVtUG9vbHMgPSBn
ZXROU0F1dG9yZWxlYXNlUG9vbENvdW50KCk7CiAgICAgICAgIAogICAgICAgICBwb29sTG9vcCA9
IEdldEN1cnJlbnRFdmVudExvb3AgKCk7CkBAIC05NSw5ICs5NSw4IEBAIHN0YXRpYyB1bnNpZ25l
ZCBnZXROU0F1dG9yZWxlYXNlUG9vbENvdW50KHZvaWQpCiAgICAgICAgIGlmICggQ0ZFcXVhbCgg
bW9kZSwga0NGUnVuTG9vcERlZmF1bHRNb2RlICkgJiYgdGhpc0xvb3AgPT0gcG9vbExvb3ApIHsK
ICAgICAgICAgICAgIHVuc2lnbmVkIGN1cnJlbnROdW1Qb29scyA9IGdldE5TQXV0b3JlbGVhc2VQ
b29sQ291bnQoKS0xOyAgICAgICAgICAgIAogICAgICAgICAgICAgaWYgKGN1cnJlbnROdW1Qb29s
cyA9PSBudW1Qb29scyl7Ci0gICAgICAgICAgICAgICAgW3NQb29sIGRyYWluXTsKLSAgICAgICAg
ICAgICAgICAKLSAgICAgICAgICAgICAgICBzUG9vbCA9IFtbTlNBdXRvcmVsZWFzZVBvb2wgYWxs
b2NXaXRoWm9uZTpOVUxMXSBpbml0XTsKKyAgICAgICAgICAgICAgICBvYmpjX2F1dG9yZWxlYXNl
UG9vbFBvcChzUG9vbCk7CisgICAgICAgICAgICAgICAgc1Bvb2wgPSBvYmpjX2F1dG9yZWxlYXNl
UG9vbFB1c2goKTsKICAgICAgICAgICAgICAgICBudW1Qb29scyA9IGdldE5TQXV0b3JlbGVhc2VQ
b29sQ291bnQoKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdExlZ2FjeS9tYWMvSGlzdG9yeS9XZWJIaXN0b3J5Lm1tIGIvU291cmNlL1dlYktpdExl
Z2FjeS9tYWMvSGlzdG9yeS9XZWJIaXN0b3J5Lm1tCmluZGV4IDljZjhhOGU5MDdlYzkyYjgzNjlk
M2YxYTFhMmNiYTViZDE5YjEyYTEuLjEzODMyZTFhNTI3ZmViMDY5OWJmMDU4MGNhOGE3Zjk5ZGE1
MmFlYjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0hpc3RvcnkvV2ViSGlz
dG9yeS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9IaXN0b3J5L1dlYkhpc3Rvcnku
bW0KQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA1LCAyMDA4LCAyMDA5
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNS0y
MDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwpAQCAtNTkxLDQxICs1OTEsMzQgQEAgLSAoQk9PTClsb2FkSGlzdG9yeUd1dHNG
cm9tVVJMOihOU1VSTCAqKVVSTCBzYXZlZEl0ZW1zQ291bnQ6KGludCAqKW51bWJlck9mSXRlbXMK
IAogICAgIGludCBpdGVtQ291bnRMaW1pdCA9IFtzZWxmIGhpc3RvcnlJdGVtTGltaXRdOwogICAg
IE5TVGltZUludGVydmFsIGFnZUxpbWl0RGF0ZSA9IFtbc2VsZiBhZ2VMaW1pdERhdGVdIHRpbWVJ
bnRlcnZhbFNpbmNlUmVmZXJlbmNlRGF0ZV07Ci0gICAgTlNFbnVtZXJhdG9yICplbnVtZXJhdG9y
ID0gW2FycmF5IG9iamVjdEVudW1lcmF0b3JdOwogICAgIEJPT0wgYWdlTGltaXRQYXNzZWQgPSBO
TzsKICAgICBCT09MIGl0ZW1MaW1pdFBhc3NlZCA9IE5POwogICAgIEFTU0VSVCgqbnVtYmVyT2ZJ
dGVtc0xvYWRlZCA9PSAwKTsKIAotICAgIE5TQXV0b3JlbGVhc2VQb29sICpwb29sID0gW1tOU0F1
dG9yZWxlYXNlUG9vbCBhbGxvY10gaW5pdF07Ci0gICAgTlNEaWN0aW9uYXJ5ICppdGVtQXNEaWN0
aW9uYXJ5OwotICAgIHdoaWxlICgoaXRlbUFzRGljdGlvbmFyeSA9IFtlbnVtZXJhdG9yIG5leHRP
YmplY3RdKSAhPSBuaWwpIHsKLSAgICAgICAgV2ViSGlzdG9yeUl0ZW0gKml0ZW0gPSBbW1dlYkhp
c3RvcnlJdGVtIGFsbG9jXSBpbml0RnJvbURpY3Rpb25hcnlSZXByZXNlbnRhdGlvbjppdGVtQXNE
aWN0aW9uYXJ5XTsKLQotICAgICAgICAvLyBpdGVtIHdpdGhvdXQgVVJMIGlzIHVzZWxlc3M7IGRh
dGEgb24gZGlzayBtdXN0IGhhdmUgYmVlbiBiYWQ7IGlnbm9yZQotICAgICAgICBpZiAoW2l0ZW0g
VVJMU3RyaW5nXSkgewotICAgICAgICAgICAgLy8gVGVzdCBhZ2FpbnN0IGRhdGUgbGltaXQuIFNp
bmNlIHRoZSBpdGVtcyBhcmUgb3JkZXJlZCBuZXdlc3QgdG8gb2xkZXN0LCB3ZSBjYW4gc3RvcCBj
b21wYXJpbmcKLSAgICAgICAgICAgIC8vIG9uY2Ugd2UndmUgZm91bmQgdGhlIGZpcnN0IGl0ZW0g
dGhhdCdzIHRvbyBvbGQuCi0gICAgICAgICAgICBpZiAoIWFnZUxpbWl0UGFzc2VkICYmIFtpdGVt
IGxhc3RWaXNpdGVkVGltZUludGVydmFsXSA8PSBhZ2VMaW1pdERhdGUpCi0gICAgICAgICAgICAg
ICAgYWdlTGltaXRQYXNzZWQgPSBZRVM7Ci0KLSAgICAgICAgICAgIGlmIChhZ2VMaW1pdFBhc3Nl
ZCB8fCBpdGVtTGltaXRQYXNzZWQpCi0gICAgICAgICAgICAgICAgW2Rpc2NhcmRlZEl0ZW1zIGFk
ZE9iamVjdDppdGVtXTsKLSAgICAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgICAgIGlmIChb
c2VsZiBhZGRJdGVtOml0ZW0gZGlzY2FyZER1cGxpY2F0ZTpZRVNdKQotICAgICAgICAgICAgICAg
ICAgICArKygqbnVtYmVyT2ZJdGVtc0xvYWRlZCk7Ci0gICAgICAgICAgICAgICAgaWYgKCpudW1i
ZXJPZkl0ZW1zTG9hZGVkID09IGl0ZW1Db3VudExpbWl0KQotICAgICAgICAgICAgICAgICAgICBp
dGVtTGltaXRQYXNzZWQgPSBZRVM7Ci0KLSAgICAgICAgICAgICAgICAvLyBEcmFpbmluZyB0aGUg
YXV0b3JlbGVhc2UgcG9vbCBldmVyeSA1MCBpdGVyYXRpb25zIHdhcyBmb3VuZCBieSBleHBlcmlt
ZW50YXRpb24gdG8gYmUgb3B0aW1hbAotICAgICAgICAgICAgICAgIGlmICgqbnVtYmVyT2ZJdGVt
c0xvYWRlZCAlIDUwID09IDApIHsKLSAgICAgICAgICAgICAgICAgICAgW3Bvb2wgZHJhaW5dOwot
ICAgICAgICAgICAgICAgICAgICBwb29sID0gW1tOU0F1dG9yZWxlYXNlUG9vbCBhbGxvY10gaW5p
dF07CisgICAgZm9yIChOU0RpY3Rpb25hcnkgKml0ZW1Bc0RpY3Rpb25hcnkgaW4gYXJyYXkpIHsK
KyAgICAgICAgQGF1dG9yZWxlYXNlcG9vbCB7CisgICAgICAgICAgICBXZWJIaXN0b3J5SXRlbSAq
aXRlbSA9IFtbV2ViSGlzdG9yeUl0ZW0gYWxsb2NdIGluaXRGcm9tRGljdGlvbmFyeVJlcHJlc2Vu
dGF0aW9uOml0ZW1Bc0RpY3Rpb25hcnldOworCisgICAgICAgICAgICAvLyBpdGVtIHdpdGhvdXQg
VVJMIGlzIHVzZWxlc3M7IGRhdGEgb24gZGlzayBtdXN0IGhhdmUgYmVlbiBiYWQ7IGlnbm9yZQor
ICAgICAgICAgICAgaWYgKFtpdGVtIFVSTFN0cmluZ10pIHsKKyAgICAgICAgICAgICAgICAvLyBU
ZXN0IGFnYWluc3QgZGF0ZSBsaW1pdC4gU2luY2UgdGhlIGl0ZW1zIGFyZSBvcmRlcmVkIG5ld2Vz
dCB0byBvbGRlc3QsIHdlIGNhbiBzdG9wIGNvbXBhcmluZworICAgICAgICAgICAgICAgIC8vIG9u
Y2Ugd2UndmUgZm91bmQgdGhlIGZpcnN0IGl0ZW0gdGhhdCdzIHRvbyBvbGQuCisgICAgICAgICAg
ICAgICAgaWYgKCFhZ2VMaW1pdFBhc3NlZCAmJiBbaXRlbSBsYXN0VmlzaXRlZFRpbWVJbnRlcnZh
bF0gPD0gYWdlTGltaXREYXRlKQorICAgICAgICAgICAgICAgICAgICBhZ2VMaW1pdFBhc3NlZCA9
IFlFUzsKKworICAgICAgICAgICAgICAgIGlmIChhZ2VMaW1pdFBhc3NlZCB8fCBpdGVtTGltaXRQ
YXNzZWQpCisgICAgICAgICAgICAgICAgICAgIFtkaXNjYXJkZWRJdGVtcyBhZGRPYmplY3Q6aXRl
bV07CisgICAgICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAgICAgICAgIGlmIChbc2Vs
ZiBhZGRJdGVtOml0ZW0gZGlzY2FyZER1cGxpY2F0ZTpZRVNdKQorICAgICAgICAgICAgICAgICAg
ICAgICAgKysoKm51bWJlck9mSXRlbXNMb2FkZWQpOworICAgICAgICAgICAgICAgICAgICBpZiAo
Km51bWJlck9mSXRlbXNMb2FkZWQgPT0gaXRlbUNvdW50TGltaXQpCisgICAgICAgICAgICAgICAg
ICAgICAgICBpdGVtTGltaXRQYXNzZWQgPSBZRVM7CiAgICAgICAgICAgICAgICAgfQogICAgICAg
ICAgICAgfQorCisgICAgICAgICAgICBbaXRlbSByZWxlYXNlXTsKICAgICAgICAgfQotICAgICAg
ICBbaXRlbSByZWxlYXNlXTsKICAgICB9Ci0gICAgW3Bvb2wgZHJhaW5dOwogCiAgICAgcmV0dXJu
IFlFUzsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2Vi
Vmlldy5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQppbmRl
eCAwZTJmN2MyN2MxMThiMWYzMjQ4ZWE2ZjAwMTczNGM5ZGNiOGU2MTJmLi40MDc3ZTkxYWIxMmQ3
ZmIwN2I3NDBjZDA1OTFlMjliNmZkYTgxYWQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMv
V2ViVmlldy9XZWJWaWV3Lm1tCkBAIC03OTAzLDI4ICs3OTAzLDIxIEBAIC0gKE5TQXJyYXkgKily
ZWN0c0ZvclRleHRNYXRjaGVzCiAgICAgICAgIGlmIChbdmlldyBjb25mb3Jtc1RvUHJvdG9jb2w6
QHByb3RvY29sKFdlYk11bHRpcGxlVGV4dE1hdGNoZXMpXSkgewogICAgICAgICAgICAgTlNWaWV3
IDxXZWJNdWx0aXBsZVRleHRNYXRjaGVzPiAqZG9jdW1lbnRWaWV3ID0gKE5TVmlldyA8V2ViTXVs
dGlwbGVUZXh0TWF0Y2hlcz4gKil2aWV3OwogICAgICAgICAgICAgTlNSZWN0IGRvY3VtZW50Vmll
d1Zpc2libGVSZWN0ID0gW2RvY3VtZW50VmlldyB2aXNpYmxlUmVjdF07Ci0gICAgICAgICAgICBO
U0FycmF5ICpvcmlnaW5hbFJlY3RzID0gW2RvY3VtZW50VmlldyByZWN0c0ZvclRleHRNYXRjaGVz
XTsKLSAgICAgICAgICAgIHVuc2lnbmVkIHJlY3RDb3VudCA9IFtvcmlnaW5hbFJlY3RzIGNvdW50
XTsKLSAgICAgICAgICAgIHVuc2lnbmVkIHJlY3RJbmRleDsKLSAgICAgICAgICAgIE5TQXV0b3Jl
bGVhc2VQb29sICpwb29sID0gW1tOU0F1dG9yZWxlYXNlUG9vbCBhbGxvY10gaW5pdF07Ci0gICAg
ICAgICAgICBmb3IgKHJlY3RJbmRleCA9IDA7IHJlY3RJbmRleCA8IHJlY3RDb3VudDsgKytyZWN0
SW5kZXgpIHsKLSAgICAgICAgICAgICAgICBOU1JlY3QgciA9IFtbb3JpZ2luYWxSZWN0cyBvYmpl
Y3RBdEluZGV4OnJlY3RJbmRleF0gcmVjdFZhbHVlXTsKKyAgICAgICAgICAgIGZvciAoTlNWYWx1
ZSAqcmVjdCBpbiBbZG9jdW1lbnRWaWV3IHJlY3RzRm9yVGV4dE1hdGNoZXNdKSB7CisgICAgICAg
ICAgICAgICAgTlNSZWN0IHIgPSBbcmVjdCByZWN0VmFsdWVdOwogICAgICAgICAgICAgICAgIC8v
IENsaXAgcmVjdCB0byBkb2N1bWVudCB2aWV3J3MgdmlzaWJsZSByZWN0IHNvIHJlY3QgaXMgY29u
ZmluZWQgdG8gc3ViZnJhbWUKICAgICAgICAgICAgICAgICByID0gTlNJbnRlcnNlY3Rpb25SZWN0
KHIsIGRvY3VtZW50Vmlld1Zpc2libGVSZWN0KTsKICAgICAgICAgICAgICAgICBpZiAoTlNJc0Vt
cHR5UmVjdChyKSkKICAgICAgICAgICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgICAgICAg
ICAgCi0gICAgICAgICAgICAgICAgLy8gQ29udmVydCByZWN0IHRvIG91ciBjb29yZGluYXRlIHN5
c3RlbQotICAgICAgICAgICAgICAgIHIgPSBbZG9jdW1lbnRWaWV3IGNvbnZlcnRSZWN0OnIgdG9W
aWV3OnNlbGZdOwotICAgICAgICAgICAgICAgIFtyZXN1bHQgYWRkT2JqZWN0OltOU1ZhbHVlIHZh
bHVlV2l0aFJlY3Q6cl1dOwotICAgICAgICAgICAgICAgIGlmIChyZWN0SW5kZXggJSAxMCA9PSAw
KSB7Ci0gICAgICAgICAgICAgICAgICAgIFtwb29sIGRyYWluXTsKLSAgICAgICAgICAgICAgICAg
ICAgcG9vbCA9IFtbTlNBdXRvcmVsZWFzZVBvb2wgYWxsb2NdIGluaXRdOworCisgICAgICAgICAg
ICAgICAgQGF1dG9yZWxlYXNlcG9vbCB7CisgICAgICAgICAgICAgICAgICAgIC8vIENvbnZlcnQg
cmVjdCB0byBvdXIgY29vcmRpbmF0ZSBzeXN0ZW0KKyAgICAgICAgICAgICAgICAgICAgciA9IFtk
b2N1bWVudFZpZXcgY29udmVydFJlY3Q6ciB0b1ZpZXc6c2VsZl07CisgICAgICAgICAgICAgICAg
ICAgIFtyZXN1bHQgYWRkT2JqZWN0OltOU1ZhbHVlIHZhbHVlV2l0aFJlY3Q6cl1dOwogICAgICAg
ICAgICAgICAgIH0KICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIFtwb29sIGRyYWluXTsKICAg
ICAgICAgfQotICAgICAgICAKKwogICAgICAgICBmcmFtZSA9IGluY3JlbWVudEZyYW1lKGZyYW1l
KTsKICAgICB9IHdoaWxlIChmcmFtZSk7CiAgICAgCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VM
b2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMTRiODA2ZWM5ZjNkMzUzN2NjYzNkM2U0MTA1Y2Q1
Njg4NzhmZDg0Ni4uNTYyNDEzNmVjNzA3NTdmNjhmZGQ4NTMwNTc0MTYwZWI1ZTg4N2Y0ZSAxMDA2
NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDE4IEBACisyMDE4LTA2LTA4ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAg
ICAgICBbQ29jb2FdIFJlbW92ZSBhbGwgdXNlcyBvZiBOU0F1dG9yZWxlYXNlUG9vbCBhcyBwYXJ0
IG9mIHByZXBhcmF0aW9uIGZvciBBUkMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE4NjQzNgorCisgICAgICAgIFJldmlld2VkIGJ5IEFuZGVycyBDYXJs
c3Nvbi4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0T2JqQy9DdXN0b21Q
cm90b2NvbHNUZXN0Lm1tOgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6V2ViS2l0MkN1c3RvbVBy
b3RvY29sc1Rlc3RfUHJvY2Vzc1Bvb2xEZXN0cm95ZWREdXJpbmdMb2FkaW5nKToKKyAgICAgICAg
VXNlIEBhdXRvcmVsZWFzZXBvb2wuCisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9tYWMv
TWVudVR5cGVzRm9yTW91c2VFdmVudHMubW06CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjpidWls
ZEFuZFBlcmZvcm1UZXN0KTogRGl0dG8uCisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9t
YWMvU3RvcExvYWRpbmdGcm9tRGlkRmluaXNoTG9hZGluZy5tbToKKyAgICAgICAgKFRlc3RXZWJL
aXRBUEk6OldlYktpdExlZ2FjeV9TdG9wTG9hZGluZ0Zyb21EaWRGaW5pc2hMb2FkaW5nKTogRGl0
dG8uCisKIDIwMTgtMDYtMDggIEFsaWNpYSBCb3lhIEdhcmPDrWEgIDxhYm95YUBpZ2FsaWEuY29t
PgogCiAgICAgICAgIFtHVEtdIFVwZGF0ZSB0byBsaWJ2YS0yLjEuMCBpbiBqaGJ1aWxkCmRpZmYg
LS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdE9iakMvQ3VzdG9tUHJvdG9j
b2xzVGVzdC5tbSBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0T2JqQy9DdXN0b21Q
cm90b2NvbHNUZXN0Lm1tCmluZGV4IGE2ZWUxNjZlZmMwMTZmNzU4MGIxZjg5ZGU1MmE5NTJiODgz
ZjEyYTUuLjU4OWMzZDA0ZWRhYmRmODU1YTBlODIzODUzOTcwMDg5ODYyYmRmMDcgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0T2JqQy9DdXN0b21Qcm90b2NvbHNU
ZXN0Lm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0T2JqQy9DdXN0b21Q
cm90b2NvbHNUZXN0Lm1tCkBAIC0zNCw3ICszNCw2IEBACiAjaW1wb3J0ICJUZXN0UHJvdG9jb2wu
aCIKICNpbXBvcnQgPFdlYktpdC9XS0NvbnRleHRQcml2YXRlLmg+CiAjaW1wb3J0IDxXZWJLaXQv
V0tQcm9jZXNzR3JvdXBQcml2YXRlLmg+Ci0jaW1wb3J0IDx3dGYvQXV0b2RyYWluZWRQb29sLmg+
CiAjaW1wb3J0IDx3dGYvUmV0YWluUHRyLmg+CiAKICNpZiBXS19BUElfRU5BQkxFRCAmJiBQTEFU
Rk9STShNQUMpCkBAIC0xNzEsOCArMTcwLDcgQEAgVEVTVChXZWJLaXQyQ3VzdG9tUHJvdG9jb2xz
VGVzdCwgUHJvY2Vzc1Bvb2xEZXN0cm95ZWREdXJpbmdMb2FkaW5nKQogewogICAgIFtQcm9jZXNz
UG9vbERlc3Ryb3llZER1cmluZ0xvYWRpbmdQcm90b2NvbCByZWdpc3RlcldpdGhTY2hlbWU6QCJj
dXN0b20iXTsKIAotICAgIHsKLSAgICAgICAgQXV0b2RyYWluZWRQb29sIHBvb2w7CisgICAgQGF1
dG9yZWxlYXNlcG9vbCB7CiAgICAgICAgIGF1dG8gYnJvd3NpbmdDb250ZXh0R3JvdXAgPSBhZG9w
dE5TKFtbV0tCcm93c2luZ0NvbnRleHRHcm91cCBhbGxvY10gaW5pdFdpdGhJZGVudGlmaWVyOkAi
VGVzdElkZW50aWZpZXIiXSk7CiAgICAgICAgIGF1dG8gcHJvY2Vzc0dyb3VwID0gYWRvcHROUyhb
W1dLUHJvY2Vzc0dyb3VwIGFsbG9jXSBpbml0XSk7CiAgICAgICAgIGF1dG8gd2tWaWV3ID0gYWRv
cHROUyhbW1dLVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDgwMCwg
NjAwKSBwcm9jZXNzR3JvdXA6cHJvY2Vzc0dyb3VwLmdldCgpIGJyb3dzaW5nQ29udGV4dEdyb3Vw
OmJyb3dzaW5nQ29udGV4dEdyb3VwLmdldCgpXSk7CmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL21hYy9NZW51VHlwZXNGb3JNb3VzZUV2ZW50cy5tbSBiL1Rvb2xzL1Rlc3RX
ZWJLaXRBUEkvVGVzdHMvbWFjL01lbnVUeXBlc0Zvck1vdXNlRXZlbnRzLm1tCmluZGV4IDcwMDI1
NGU0ZGFmY2I3MmZjYjY2NDQwOTliYTVlYTdmMzg0M2VlZDAuLmM5MWIwOWY3MmI5NDcxZDY1ODQy
NWEzMDdjMGUzNWYwZWRlZTUzYTggMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVz
dHMvbWFjL01lbnVUeXBlc0Zvck1vdXNlRXZlbnRzLm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRB
UEkvVGVzdHMvbWFjL01lbnVUeXBlc0Zvck1vdXNlRXZlbnRzLm1tCkBAIC0yOSw3ICsyOSw2IEBA
CiAjaW1wb3J0IDxDYXJib24vQ2FyYm9uLmg+IC8vIEZvciBHZXRDdXJyZW50RXZlbnRUaW1lCiAj
aW1wb3J0IDxXZWJDb3JlL1BsYXRmb3JtRXZlbnRGYWN0b3J5TWFjLmg+CiAjaW1wb3J0IDxwYWwv
c3BpL21hYy9OU01lbnVTUEkuaD4KLSNpbXBvcnQgPHd0Zi9BdXRvZHJhaW5lZFBvb2wuaD4KICNp
bXBvcnQgPHd0Zi9SZXRhaW5QdHIuaD4KICNpbXBvcnQgPHd0Zi9tYWMvQXBwS2l0Q29tcGF0aWJp
bGl0eURlY2xhcmF0aW9ucy5oPgogCkBAIC00MiwyNSArNDEsMjYgQEAgc3RhdGljIGJvb2wgY2Fu
Q2FsbE1lbnVUeXBlRm9yRXZlbnQoKQogCiBzdGF0aWMgdm9pZCBidWlsZEFuZFBlcmZvcm1UZXN0
KE5TRXZlbnRUeXBlIGJ1dHRvbkV2ZW50LCBOU0V2ZW50TW9kaWZpZXJGbGFncyBtb2RpZmllckZs
YWdzLCBXZWJDb3JlOjpNb3VzZUJ1dHRvbiBleHBlY3RlZEJ1dHRvbiwgTlNNZW51VHlwZSBleHBl
Y3RlZE1lbnUpCiB7Ci0gICAgQXV0b2RyYWluZWRQb29sIHBvb2w7Ci0gICAgUmV0YWluUHRyPFdl
YlZpZXc+IHdlYlZpZXcgPSBhZG9wdE5TKFtbV2ViVmlldyBhbGxvY10gaW5pdF0pOwotICAgIE5T
RXZlbnQgKmV2ZW50ID0gW05TRXZlbnQgbW91c2VFdmVudFdpdGhUeXBlOmJ1dHRvbkV2ZW50Ci0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9jYXRpb246TlNNYWtlUG9p
bnQoMTAwLCAxMDApCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vZGlmaWVy
RmxhZ3M6bW9kaWZpZXJGbGFncwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgdGltZXN0YW1wOkdldEN1cnJlbnRFdmVudFRpbWUoKQotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgd2luZG93TnVtYmVyOltbd2ViVmlldyB3aW5kb3ddIHdpbmRvd051bWJl
cl0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dDpbTlNH
cmFwaGljc0NvbnRleHQgY3VycmVudENvbnRleHRdCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgZXZlbnROdW1iZXI6MAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjbGlja0NvdW50OjAKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBwcmVzc3VyZTowXTsKLSAgICAKLSAgICBhdXRvIHBtZSA9IFdlYkNvcmU6OlBsYXRmb3Jt
RXZlbnRGYWN0b3J5OjpjcmVhdGVQbGF0Zm9ybU1vdXNlRXZlbnQoZXZlbnQsIG5pbCwgd2ViVmll
dy5nZXQoKSk7Ci0gICAgCi0gICAgRVhQRUNUX0VRKGV4cGVjdGVkQnV0dG9uLCBwbWUuYnV0dG9u
KCkpOwotICAgIEVYUEVDVF9UUlVFKCFtb2RpZmllckZsYWdzIHx8IHBtZS5tb2RpZmllckZsYWdz
KCkgJiBtb2RpZmllckZsYWdzKTsKLSAgICBFWFBFQ1RfRVEoZXhwZWN0ZWRNZW51LCBwbWUubWVu
dVR5cGVGb3JFdmVudCgpKTsKLSAgICBpZiAoY2FuQ2FsbE1lbnVUeXBlRm9yRXZlbnQoKSkKLSAg
ICAgICAgRVhQRUNUX0VRKGV4cGVjdGVkTWVudSwgW05TTWVudSBtZW51VHlwZUZvckV2ZW50OmV2
ZW50XSk7CisgICAgQGF1dG9yZWxlYXNlcG9vbCB7CisgICAgICAgIGF1dG8gd2ViVmlldyA9IGFk
b3B0TlMoW1tXZWJWaWV3IGFsbG9jXSBpbml0XSk7CisgICAgICAgIE5TRXZlbnQgKmV2ZW50ID0g
W05TRXZlbnQgbW91c2VFdmVudFdpdGhUeXBlOmJ1dHRvbkV2ZW50CisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2F0aW9uOk5TTWFrZVBvaW50KDEwMCwgMTAw
KQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kaWZpZXJGbGFnczpt
b2RpZmllckZsYWdzCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
dGltZXN0YW1wOkdldEN1cnJlbnRFdmVudFRpbWUoKQorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHdpbmRvd051bWJlcjpbW3dlYlZpZXcgd2luZG93XSB3aW5kb3dOdW1i
ZXJdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZXh0
OltOU0dyYXBoaWNzQ29udGV4dCBjdXJyZW50Q29udGV4dF0KKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgZXZlbnROdW1iZXI6MAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgY2xpY2tDb3VudDowCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHByZXNzdXJlOjBdOworCisgICAgICAgIGF1dG8gcG1lID0g
V2ViQ29yZTo6UGxhdGZvcm1FdmVudEZhY3Rvcnk6OmNyZWF0ZVBsYXRmb3JtTW91c2VFdmVudChl
dmVudCwgbmlsLCB3ZWJWaWV3LmdldCgpKTsKKworICAgICAgICBFWFBFQ1RfRVEoZXhwZWN0ZWRC
dXR0b24sIHBtZS5idXR0b24oKSk7CisgICAgICAgIEVYUEVDVF9UUlVFKCFtb2RpZmllckZsYWdz
IHx8IHBtZS5tb2RpZmllckZsYWdzKCkgJiBtb2RpZmllckZsYWdzKTsKKyAgICAgICAgRVhQRUNU
X0VRKGV4cGVjdGVkTWVudSwgcG1lLm1lbnVUeXBlRm9yRXZlbnQoKSk7CisgICAgICAgIGlmIChj
YW5DYWxsTWVudVR5cGVGb3JFdmVudCgpKQorICAgICAgICAgICAgRVhQRUNUX0VRKGV4cGVjdGVk
TWVudSwgW05TTWVudSBtZW51VHlwZUZvckV2ZW50OmV2ZW50XSk7CisgICAgfQogfQogCiBURVNU
KFdlYktpdExlZ2FjeSwgTWVudUFuZEJ1dHRvbkZvck5vcm1hbExlZnRDbGljaykKZGlmZiAtLWdp
dCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvbWFjL1N0b3BMb2FkaW5nRnJvbURpZEZpbmlz
aExvYWRpbmcubW0gYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL21hYy9TdG9wTG9hZGluZ0Zy
b21EaWRGaW5pc2hMb2FkaW5nLm1tCmluZGV4IDA4ZGM2NjBlY2E2Mjg3MmJmZDc0MTJmYWFmZjRi
YzA3MjJlMmE4YzQuLmMwZTIzY2FjMTY4MWFmYmI3ZDFhNmE3NTYzZWZlNGEyYTAyMzZlZDcgMTAw
NjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvbWFjL1N0b3BMb2FkaW5nRnJvbURp
ZEZpbmlzaExvYWRpbmcubW0KKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9tYWMvU3Rv
cExvYWRpbmdGcm9tRGlkRmluaXNoTG9hZGluZy5tbQpAQCAtMjQsMTIgKzI0LDExIEBACiAgKi8K
IAogI2ltcG9ydCAiY29uZmlnLmgiCisKICNpbXBvcnQgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCi0j
aW1wb3J0IDx3dGYvQXV0b2RyYWluZWRQb29sLmg+CiAjaW1wb3J0IDx3dGYvUmV0YWluUHRyLmg+
CiAKLUBpbnRlcmZhY2UgU3RvcExvYWRpbmdGcm9tRGlkRmluaXNoTG9hZGluZ0RlbGVnYXRlIDog
TlNPYmplY3QgPFdlYlJlc291cmNlTG9hZERlbGVnYXRlPiB7Ci19CitAaW50ZXJmYWNlIFN0b3BM
b2FkaW5nRnJvbURpZEZpbmlzaExvYWRpbmdEZWxlZ2F0ZSA6IE5TT2JqZWN0IDxXZWJSZXNvdXJj
ZUxvYWREZWxlZ2F0ZT4KIEBlbmQKIAogc3RhdGljIGJvb2wgZmluaXNoZWQgPSBmYWxzZTsKQEAg
LTQ4LDEyICs0NywxMiBAQCBuYW1lc3BhY2UgVGVzdFdlYktpdEFQSSB7CiAKIFRFU1QoV2ViS2l0
TGVnYWN5LCBTdG9wTG9hZGluZ0Zyb21EaWRGaW5pc2hMb2FkaW5nKQogewotICAgIEF1dG9kcmFp
bmVkUG9vbCBwb29sOwotICAgIFJldGFpblB0cjxXZWJWaWV3PiB3ZWJWaWV3ID0gYWRvcHROUyhb
W1dlYlZpZXcgYWxsb2NdIGluaXRdKTsKLSAgICBSZXRhaW5QdHI8U3RvcExvYWRpbmdGcm9tRGlk
RmluaXNoTG9hZGluZ0RlbGVnYXRlPiBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tTdG9wTG9hZGluZ0Zy
b21EaWRGaW5pc2hMb2FkaW5nRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKLSAgICB3ZWJWaWV3Lmdl
dCgpLnJlc291cmNlTG9hZERlbGVnYXRlID0gZGVsZWdhdGUuZ2V0KCk7Ci0gICAgW3dlYlZpZXcu
Z2V0KCkubWFpbkZyYW1lIGxvYWRIVE1MU3RyaW5nOkAiSGVsbG8sIFdvcmxkISIgYmFzZVVSTDpb
TlNVUkwgVVJMV2l0aFN0cmluZzpAIiJdXTsKLSAgICBVdGlsOjpydW4oJmZpbmlzaGVkKTsKKyAg
ICBAYXV0b3JlbGVhc2Vwb29sIHsKKyAgICAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1dl
YlZpZXcgYWxsb2NdIGluaXRdKTsKKyAgICAgICAgd2ViVmlldy5nZXQoKS5yZXNvdXJjZUxvYWRE
ZWxlZ2F0ZSA9IGFkb3B0TlMoW1tTdG9wTG9hZGluZ0Zyb21EaWRGaW5pc2hMb2FkaW5nRGVsZWdh
dGUgYWxsb2NdIGluaXRdKS5nZXQoKTsKKyAgICAgICAgW3dlYlZpZXcuZ2V0KCkubWFpbkZyYW1l
IGxvYWRIVE1MU3RyaW5nOkAiSGVsbG8sIFdvcmxkISIgYmFzZVVSTDpbTlNVUkwgVVJMV2l0aFN0
cmluZzpAIiJdXTsKKyAgICAgICAgVXRpbDo6cnVuKCZmaW5pc2hlZCk7CisgICAgfQogICAgIC8v
IE5vIGNyYXNoIG1lYW5zIHRoZSB0ZXN0IHBhc3NlZC4KIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>342360</attachid>
            <date>2018-06-08 22:25:35 -0700</date>
            <delta_ts>2018-06-08 22:25:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-186436-20180608222535.patch</filename>
            <type>text/plain</type>
            <size>57439</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjMyNjQ3CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBh
ZGFiNGEyOTlhZmY3MzdjYmMwM2VjZDQzYTVhMDEwNjk4MGYyMGI2Li42OTE0MDc4NDI5NzM5MWE4
MTdhZDYxZTM1MjAzODU4Y2QyNWZmYmU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMyBAQAorMjAxOC0wNi0wOCAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisK
KyAgICAgICAgW0NvY29hXSBSZW1vdmUgYWxsIHVzZXMgb2YgTlNBdXRvcmVsZWFzZVBvb2wgYXMg
cGFydCBvZiBwcmVwYXJhdGlvbiBmb3IgQVJDCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xODY0MzYKKworICAgICAgICBSZXZpZXdlZCBieSBBbmRlcnMg
Q2FybHNzb24uCisKKyAgICAgICAgKiBoZWFwL0hlYXAuY3BwOiBJbmNsdWRlIEZvdW5kYXRpb25T
UEkuaCByYXRoZXIgdGhhbiBkaXJlY3RseSBpbmNsdWRpbmcKKyAgICAgICAgb2JqYy1pbnRlcm5h
bC5oIGFuZCBleHBsaWNpdGx5IGRlY2xhcmluZyB0aGUgYWx0ZXJuYXRpdmUuCisKIDIwMTgtMDYt
MDggIEJyaWFuIEJ1cmcgIDxiYnVyZ0BhcHBsZS5jb20+CiAKICAgICAgICAgW0NvY29hXSBXZWIg
QXV0b21hdGlvbjogaW5jbHVkZSBicm93c2VyIG5hbWUgYW5kIHZlcnNpb24gaW4gbGlzdGluZyBm
b3IgYXV0b21hdGlvbiB0YXJnZXRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5nZUxvZyBi
L1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDQzODEyOTA2MmUxNzllZjljM2JkZGZmMjMwY2U0
ZjViNWZiNTg2MmYuLjk2OWNiNDljZGFiNmMzNzJhMTZlOTU0NTdlMDMzMTIwZDFlODFjNmEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMjUgQEAKKzIwMTgtMDYtMDggIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUu
Y29tPgorCisgICAgICAgIFtDb2NvYV0gUmVtb3ZlIGFsbCB1c2VzIG9mIE5TQXV0b3JlbGVhc2VQ
b29sIGFzIHBhcnQgb2YgcHJlcGFyYXRpb24gZm9yIEFSQworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg2NDM2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
QW5kZXJzIENhcmxzc29uLgorCisgICAgICAgICogV1RGLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2o6IEFkZGVkIEZvdW5kYXRpb25TUEkuaC4KKworICAgICAgICAqIHd0Zi9BdXRvZHJhaW5lZFBv
b2wuaDogU3RyZWFtbGluZWQgaGVhZGVyIGEgYml0LCBhZGRlZCBzb21lIGNvbW1lbnRzLgorCisg
ICAgICAgICogd3RmL1BsYXRmb3JtTWFjLmNtYWtlOiBBZGRlZCBGb3VuZGF0aW9uU1BJLmguCisK
KyAgICAgICAgKiB3dGYvY29jb2EvQXV0b2RyYWluZWRQb29sLmNwcDogTW92ZWQgaGVyZSBmcm9t
IEF1dG9kcmFpbmVkUG9vbE1hYy5tbS4KKyAgICAgICAgKFdURjo6QXV0b2RyYWluZWRQb29sOjpB
dXRvZHJhaW5lZFBvb2wpOiBVc2Ugb2JqY19hdXRvcmVsZWFzZVBvb2xQdXNoL1BvcCBpbnN0ZWFk
IG9mCisgICAgICAgIHRoZSBOU0F1dG9yZWxlYXNlUG9vbCBjbGFzcy4KKyAgICAgICAgKFdURjo6
QXV0b2RyYWluZWRQb29sOjp+QXV0b2RyYWluZWRQb29sKTogRGl0dG8uCisKKyAgICAgICAgICog
d3RmL3NwaS9jb2NvYS9Gb3VuZGF0aW9uU1BJLmg6IE1vdmVkIGZyb20gU291cmNlL1dlYkNvcmUv
UEFML3BhbC9zcGkvY29jb2EvRm91bmRhdGlvblNQSS5oLgorICAgICAgICAgQ2hhbmdlZCBib3Ro
IGluY2x1ZGUgYW5kIGRlY2xhcmF0aW9ucyBzbyBpdCdzIHRoZSBvYmpjX2F1dG9yZWxlYXNlUG9v
bFB1c2gvUG9wIGluc3RlYWQKKyAgICAgICAgIG9mIHRoZSBoaWdoZXIgbGV2ZWwgTlMgZnVuY3Rp
b25zdCB0aGF0IGNhbGwgdGhlbS4KKwogMjAxOC0wNi0wOCAgQnJpYW4gQnVyZyAgPGJidXJnQGFw
cGxlLmNvbT4KIAogICAgICAgICBbQ29jb2FdIFdlYiBBdXRvbWF0aW9uOiBpbmNsdWRlIGJyb3dz
ZXIgbmFtZSBhbmQgdmVyc2lvbiBpbiBsaXN0aW5nIGZvciBhdXRvbWF0aW9uIHRhcmdldHMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwppbmRleCBmZWE3NGRiOGRkOTJiYzVlMzljZDE2YzRjNWJjYTY2MGQ4OGY4Y2NmLi44N2I5
OGUxZjU3YWI4ZGQxMmVjOWEwYzYyZGQwZjY5MjA4YTUwZjNiIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMzQgQEAKKzIwMTgtMDYtMDggIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgorCisg
ICAgICAgIFtDb2NvYV0gUmVtb3ZlIGFsbCB1c2VzIG9mIE5TQXV0b3JlbGVhc2VQb29sIGFzIHBh
cnQgb2YgcHJlcGFyYXRpb24gZm9yIEFSQworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTg2NDM2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQW5kZXJzIENh
cmxzc29uLgorCisgICAgICAgICogYnJpZGdlL29iamMvb2JqY19jbGFzcy5tbTogVXNlIGltcG9y
dCBpbnN0ZWFkIG9mIGluY2x1ZGUuCisKKyAgICAgICAgKiBicmlkZ2Uvb2JqYy9vYmpjX2luc3Rh
bmNlLmg6IFJlcGxhY2VkIF9wb29sIG1lbWJlciB0byBob2xkIGFuIG9iamVjdCB3aXRoCisgICAg
ICAgIG1fYXV0b3JlbGVhc2VQb29sIG1lbWJlciB0byBob2xkIGEgdG9rZW4gZnJvbSBvYmpjX2F1
dG9yZWxlYXNlUG9vbFB1c2guIEFsc28KKyAgICAgICAgaW5pdGlhbGl6ZSBhbGwgZGF0YSBtZW1i
ZXJzIGhlcmUgaW4gdGhlIGNsYXNzIGRlZmluaXRpb24uCisKKyAgICAgICAgKiBicmlkZ2Uvb2Jq
Yy9vYmpjX2luc3RhbmNlLm1tOgorICAgICAgICAoT2JqY0luc3RhbmNlOjpPYmpjSW5zdGFuY2Up
OiBNb3ZlZCBtb3N0IGluaXRpYWxpemF0aW9uIHRvIGNsYXNzIGRlZmluaXRpb24uCisgICAgICAg
IChPYmpjSW5zdGFuY2U6OnZpcnR1YWxCZWdpbik6IFVzZSBvYmpjX2F1dG9yZWxlYXNlUG9vbFB1
c2ggaW5zdGVhZCBvZgorICAgICAgICBOU0F1dG9yZWxlYXNlUG9vbCBjbGFzcy4KKyAgICAgICAg
KE9iamNJbnN0YW5jZTo6dmlydHVhbEVuZCk6IFVzZSBvYmpjX2F1dG9yZWxlYXNlUG9vbFBvcC4K
KworICAgICAgICAqIGJyaWRnZS9vYmpjL29iamNfcnVudGltZS5tbTogVXNlIGltcG9ydCBpbnN0
ZWFkIG9mIGluY2x1ZGUuCisgICAgICAgICogYnJpZGdlL29iamMvb2JqY191dGlsaXR5Lm1tOiBE
aXR0by4KKworICAgICAgICAqIHBsYXRmb3JtL2F1ZGlvL21hYy9BdWRpb0J1c01hYy5tbToKKyAg
ICAgICAgKFdlYkNvcmU6OkF1ZGlvQnVzOjpsb2FkUGxhdGZvcm1SZXNvdXJjZSk6IFVzZSBAYXV0
b3JlbGVhc2Vwb29sLgorCisgICAgICAgICogcGxhdGZvcm0vaW9zL3dhay9XZWJDb3JlVGhyZWFk
Lm1tOiBSZS1zb3J0ZWQgaW5jbHVkZXMuIFJlbW92ZWQgZGVjbGFyYXRpb24gb2YKKyAgICAgICAg
YXV0b3JlbGVhc2UgcG9vbCBTUEkgYW5kIHVzZSBGb3VuZGF0aW9uU1BJLmggaW5zdGVhZC4KKwor
ICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvY29jb2EvUmVzb3VyY2VSZXNwb25zZUNvY29hLm1t
OgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZTo6cGxhdGZvcm1MYXp5SW5pdCk6
IFVzZSBAYXV0b3JlbGVhc2Vwb29sLgorCiAyMDE4LTA2LTA4ICBEYXJpbiBBZGxlciAgPGRhcmlu
QGFwcGxlLmNvbT4KIAogICAgICAgICBGaXggaU9TIGJ1aWxkLgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvUEFML0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKaW5k
ZXggZmJkNzQ0YjAwNmY2NjAxOWZiNDQzNGFjNjRlODk0MjA3YjcyZjJkNS4uOTM1YzY4MTEwZTIy
YjJlYTQxM2JjZjg1NWIyMWEzOWQxMmZiYzNhZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
UEFML0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTQgQEAKKzIwMTgtMDYtMDggIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgorCisg
ICAgICAgIFtDb2NvYV0gUmVtb3ZlIGFsbCB1c2VzIG9mIE5TQXV0b3JlbGVhc2VQb29sIGFzIHBh
cnQgb2YgcHJlcGFyYXRpb24gZm9yIEFSQworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTg2NDM2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQW5kZXJzIENh
cmxzc29uLgorCisgICAgICAgICogUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IFJlbW92
ZWQgRm91bmRhdGlvblNQSS5oLgorICAgICAgICAqIHBhbC9QbGF0Zm9ybU1hYy5jbWFrZTogRGl0
dG8uCisgICAgICAgICogcGFsL3NwaS9jb2NvYS9Gb3VuZGF0aW9uU1BJLmg6IE1vdmVkIGludG8g
V1RGIHByb2plY3QuCisKIDIwMTgtMDYtMDggIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29t
PgogCiAgICAgICAgIFtDb2NvYV0gTWFrZSBtb3JlIG9mIG91ciBzb2Z0IGxpbmtpbmcgQVJDLWNv
bXBhdGlibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZyBi
L1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwppbmRleCAyYjNhZTUwZGEzNTliMThj
NWNlYjdmMGE0NjNhZWQ5OGM0N2EwMzMwLi4wYjg4ZDkyMGUwNTUxYWZlOTk2MTYzYjlkYzg1MDk5
MWQxMDlkNTM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cK
KysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAK
KzIwMTgtMDYtMDggIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgorCisgICAgICAgIFtD
b2NvYV0gUmVtb3ZlIGFsbCB1c2VzIG9mIE5TQXV0b3JlbGVhc2VQb29sIGFzIHBhcnQgb2YgcHJl
cGFyYXRpb24gZm9yIEFSQworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTg2NDM2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQW5kZXJzIENhcmxzc29uLgor
CisgICAgICAgICogQ2FyYm9uL0NhcmJvblV0aWxzLm06IFVwZGF0ZWQgaW5jbHVkZSBsb2NhdGlv
biBvZiBGb3VuZGF0aW9uU1BJLmguCisgICAgICAgIChnZXROU0F1dG9yZWxlYXNlUG9vbENvdW50
KTogVXNlIG9iamNfYXV0b3JlbGVhc2VQb29sUHVzaC9Qb3AuCisgICAgICAgIChXZWJJbml0Rm9y
Q2FyYm9uKTogVXNlIG9iamNfYXV0b3JlbGVhc2VQb29sUHVzaC9Qb3AgaW5zdGVhZCBvZiBOU0F1
dG9yZWxlYXNlUG9vbCBvYmplY3QuCisgICAgICAgIChQb29sQ2xlYW5lcik6IERpdHRvLgorCisg
ICAgICAgICogSGlzdG9yeS9XZWJIaXN0b3J5Lm1tOgorICAgICAgICAoLVtXZWJIaXN0b3J5UHJp
dmF0ZSBsb2FkSGlzdG9yeUd1dHNGcm9tVVJMOnNhdmVkSXRlbXNDb3VudDpjb2xsZWN0RGlzY2Fy
ZGVkSXRlbXNJbnRvOmVycm9yOl0pOgorICAgICAgICBVc2UgQGF1dG9yZWxlYXNlcG9vbCBpbnN0
ZWFkIG9mIE5TQXV0b3JlbGVhc2VQb29sIG9iamVjdC4gTm8gbmVlZCB0byBkbyB0aGUgImRyYWlu
IHBvb2wgb25seQorICAgICAgICBldmVyeSA1MCB0aW1lcyI7IHRoZSAtW1dlYkhpc3RvcnkgbG9h
ZEZyb21VUkxdIGZhbWlseSBvZiBtZXRob2RzIHdlcmUgb25jZSB1c2VkIGJ5IFNhZmFyaSwgYW5k
CisgICAgICAgIG5vdyBoYXJkbHkgdXNlZCBpZiBhdCBhbGwuCisgICAgICAgICogV2ViVmlldy9X
ZWJWaWV3Lm1tOgorICAgICAgICAoLVtXZWJWaWV3IHJlY3RzRm9yVGV4dE1hdGNoZXNdKTogRGl0
dG8uCisKIDIwMTgtMDYtMDggIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlAYXBwbGUuY29tPgog
CiAgICAgICAgIFtEYXRhbGlzdF0gQWxsb3cgVGV4dEZpZWxkSW5wdXRUeXBlIHRvIHNob3cgYW5k
IGhpZGUgc3VnZ2VzdGlvbnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFw
L0hlYXAuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcC5jcHAKaW5kZXggOWM2
NmJiYzA1M2U3M2JkNjZmNDUyMTU3NDc0ZmMwMzY1OWJhOWE4Zi4uNjNkODAwMWQzODhhNGUxZGI1
ZTc1ZjRhMjQyODcyNWI3ZjljNTQ4NiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2hlYXAvSGVhcC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcC5jcHAK
QEAgLTYyLDEwICs2MiwxMCBAQAogI2luY2x1ZGUgIlNhbXBsaW5nUHJvZmlsZXIuaCIKICNpbmNs
dWRlICJTaGFkb3dDaGlja2VuLmgiCiAjaW5jbHVkZSAiU3BhY2VUaW1lTXV0YXRvclNjaGVkdWxl
ci5oIgotI2luY2x1ZGUgIlN1YnNwYWNlSW5saW5lcy5oIgotI2luY2x1ZGUgIlN1cGVyU2FtcGxl
ci5oIgogI2luY2x1ZGUgIlN0b2NoYXN0aWNTcGFjZVRpbWVNdXRhdG9yU2NoZWR1bGVyLmgiCiAj
aW5jbHVkZSAiU3RvcElmTmVjZXNzYXJ5VGltZXIuaCIKKyNpbmNsdWRlICJTdWJzcGFjZUlubGlu
ZXMuaCIKKyNpbmNsdWRlICJTdXBlclNhbXBsZXIuaCIKICNpbmNsdWRlICJTd2VlcGluZ1Njb3Bl
LmgiCiAjaW5jbHVkZSAiU3luY2hyb25vdXNTdG9wVGhlV29ybGRNdXRhdG9yU2NoZWR1bGVyLmgi
CiAjaW5jbHVkZSAiVHlwZVByb2ZpbGVyLmgiCkBAIC03Nyw5ICs3Nyw2IEBACiAjaW5jbHVkZSAi
V2Vha01hcEltcGxJbmxpbmVzLmgiCiAjaW5jbHVkZSAiV2Vha1NldElubGluZXMuaCIKICNpbmNs
dWRlIDxhbGdvcml0aG0+Ci0jaWYgUExBVEZPUk0oSU9TKQotI2luY2x1ZGUgPGJtYWxsb2MvYm1h
bGxvYy5oPgotI2VuZGlmCiAjaW5jbHVkZSA8d3RmL0xpc3REdW1wLmg+CiAjaW5jbHVkZSA8d3Rm
L01haW5UaHJlYWQuaD4KICNpbmNsdWRlIDx3dGYvUGFyYWxsZWxWZWN0b3JJdGVyYXRvci5oPgpA
QCAtODgsMTQgKzg1LDEzIEBACiAjaW5jbHVkZSA8d3RmL1NpbXBsZVN0YXRzLmg+CiAjaW5jbHVk
ZSA8d3RmL1RocmVhZGluZy5oPgogCisjaWYgUExBVEZPUk0oSU9TKQorI2luY2x1ZGUgPGJtYWxs
b2MvYm1hbGxvYy5oPgorI2VuZGlmCisKICNpZiBVU0UoRk9VTkRBVElPTikKLSNpZiBfX2hhc19p
bmNsdWRlKDxvYmpjL29iamMtaW50ZXJuYWwuaD4pCi0jaW5jbHVkZSA8b2JqYy9vYmpjLWludGVy
bmFsLmg+Ci0jZWxzZQotZXh0ZXJuICJDIiB2b2lkKiBvYmpjX2F1dG9yZWxlYXNlUG9vbFB1c2go
dm9pZCk7Ci1leHRlcm4gIkMiIHZvaWQgb2JqY19hdXRvcmVsZWFzZVBvb2xQb3Aodm9pZCAqY29u
dGV4dCk7CisjaW5jbHVkZSA8d3RmL3NwaS9jb2NvYS9Gb3VuZGF0aW9uU1BJLmg+CiAjZW5kaWYK
LSNlbmRpZiAvLyBVU0UoRk9VTkRBVElPTikKIAogI2lmIFVTRShHTElCKQogI2luY2x1ZGUgIkpT
Q0dMaWJXcmFwcGVyT2JqZWN0LmgiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL1dURi54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dURi9XVEYueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagppbmRleCBmYjJlZTdlMWEwODk3MzQ0MTI0ODc1ODBmOGRmYmMyMDk3M2NhNzBiLi5lZjFi
MzNiN2ZlMDc4MmYxZDg3NDA1OTkzZjZmNDEwNmIxMDY2ZTIwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V1RGL1dURi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XVEYvV1RGLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTUzLDcgKzUzLDcgQEAKIAkJMTQ2OTQxOTMxNkVB
QUY2RDAwMjRFMTQ2IC8qIFJ1bkxvb3BUaW1lckNGLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE0Njk0MTkxMTZFQUFGNkQwMDI0RTE0NiAvKiBSdW5M
b29wVGltZXJDRi5jcHAgKi87IH07CiAJCTE0Njk0MTk3MTZFQUFGRjgwMDI0RTE0NiAvKiBTY2hl
ZHVsZVBhaXJNYWMubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSAxNDY5NDE5NTE2RUFBRkY4MDAyNEUxNDYgLyogU2NoZWR1bGVQYWlyTWFjLm1tICovOyB9
OwogCQkxNDY5NDE5OTE2RUFCMDQxMDAyNEUxNDYgLyogU2NoZWR1bGVQYWlyQ0YuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTQ2OTQxOTgxNkVBQjA0
MTAwMjRFMTQ2IC8qIFNjaGVkdWxlUGFpckNGLmNwcCAqLzsgfTsKLQkJMTQ2OTQxOUQxNkVBQjEw
QTAwMjRFMTQ2IC8qIEF1dG9kcmFpbmVkUG9vbE1hYy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE0Njk0MTlCMTZFQUIxMEEwMDI0RTE0NiAvKiBBdXRv
ZHJhaW5lZFBvb2xNYWMubW0gKi87IH07CisJCTE0Njk0MTlEMTZFQUIxMEEwMDI0RTE0NiAvKiBB
dXRvZHJhaW5lZFBvb2wuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMTQ2OTQxOUIxNkVBQjEwQTAwMjRFMTQ2IC8qIEF1dG9kcmFpbmVkUG9vbC5jcHAg
Ki87IH07CiAJCTFBMUQ4QjlFMTczMTg3OTgwMDE0MURBNCAvKiBGdW5jdGlvbkRpc3BhdGNoZXIu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUExRDhC
OUQxNzMxODc5ODAwMTQxREE0IC8qIEZ1bmN0aW9uRGlzcGF0Y2hlci5jcHAgKi87IH07CiAJCTFB
Q0FERDg0MTg4NDQ4MDEwMEQ4QjcxRCAvKiBEZXByZWNhdGVkU3ltYm9sc1VzZWRCeVNhZmFyaS5t
bSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBQ0FERDgy
MTg4NDQ4MDEwMEQ4QjcxRCAvKiBEZXByZWNhdGVkU3ltYm9sc1VzZWRCeVNhZmFyaS5tbSAqLzsg
fTsKIAkJMUMxODFDN0YxRDMwNzhEQTAwRjVGQTE2IC8qIFRleHRCcmVha0l0ZXJhdG9yLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDMTgxQzdEMUQz
MDc4REEwMEY1RkExNiAvKiBUZXh0QnJlYWtJdGVyYXRvci5jcHAgKi87IH07CkBAIC0yODQsNyAr
Mjg0LDcgQEAKIAkJMTQ2OTQxOTUxNkVBQUZGODAwMjRFMTQ2IC8qIFNjaGVkdWxlUGFpck1hYy5t
bSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFNjaGVkdWxlUGFpck1h
Yy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMTQ2OTQxOTgxNkVBQjA0MTAwMjRF
MTQ2IC8qIFNjaGVkdWxlUGFpckNGLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFNjaGVkdWxlUGFpckNGLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
MTQ2OTQxOUExNkVBQjEwQTAwMjRFMTQ2IC8qIEF1dG9kcmFpbmVkUG9vbC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBBdXRvZHJhaW5lZFBvb2wuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKLQkJMTQ2OTQxOUIxNkVBQjEwQTAwMjRFMTQ2IC8qIEF1dG9kcmFpbmVkUG9v
bE1hYy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEF1dG9kcmFp
bmVkUG9vbE1hYy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTQ2OTQxOUIxNkVB
QjEwQTAwMjRFMTQ2IC8qIEF1dG9kcmFpbmVkUG9vbC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBBdXRvZHJhaW5lZFBvb2wuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQkxNDlFRjE2MjE2QkJGRTBEMDAwQTQzMzEgLyogVHJpU3RhdGUuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVHJpU3RhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJMTRDODI3OTcxOEZERDczNDAwRTE4MDBDIC8qIG1ibWFsbG9jLnhjY29uZmln
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dC54Y2NvbmZpZzsgcGF0aCA9IG1ibWFsbG9jLnhjY29uZmlnOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxNEU3ODVFNzFERkIzMzAxMDAyMDlCRDEgLyogT3Jk
aW5hbE51bWJlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBPcmRpbmFsTnVt
YmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC00MDgsNiArNDA4LDcgQEAKIAkJ
OTM5MzRCRDIxOEExRThDMzAwRDBENkExIC8qIFN0cmluZ1ZpZXdPYmpDLm1tICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1lID0gU3RyaW5nVmlld09iakMubW07IHBhdGggPSBt
YWMvU3RyaW5nVmlld09iakMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzOTM0
QkQ0MThBMUYxNjkwMEQwRDZBMSAvKiBTdHJpbmdWaWV3Q0YuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBuYW1lID0gU3RyaW5nVmlld0NGLmNwcDsgcGF0aCA9IGNmL1N0cmluZ1Zp
ZXdDRi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzQUM5MUE3MTg5NDJGQzQw
MDI0NDkzOSAvKiBMQ2hhci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMQ2hh
ci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5M0QxOTFDRjIwQ0FFQ0U4MDBDNTFC
OEUgLyogRm91bmRhdGlvblNQSS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGb3VuZGF0aW9uU1BJLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzRERFOTMxMUNEQzA1MkQwMEZEMzQ5MSAvKiBk
eWxkU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IGR5bGRTUEkuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTNGMTk5M0QxOUQ3OTU4RDAwQzIzOTBCIC8qIFN0
cmluZ1ZpZXcuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3RyaW5n
Vmlldy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk3NENGQzhEMTZBNEYzMjcw
MDZENTQwNCAvKiBXZWFrUHRyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdl
YWtQdHIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTgwNyw3ICs4MDgsNiBAQAog
CQkJCUE4QTQ3MjVDMTUxQTgyNUEwMDQxMjNGRiAvKiBBc3NlcnRpb25zLmggKi8sCiAJCQkJQThB
NDcyNUQxNTFBODI1QTAwNDEyM0ZGIC8qIEF0b21pY3MuaCAqLywKIAkJCQkxNDY5NDE5QTE2RUFC
MTBBMDAyNEUxNDYgLyogQXV0b2RyYWluZWRQb29sLmggKi8sCi0JCQkJMTQ2OTQxOUIxNkVBQjEw
QTAwMjRFMTQ2IC8qIEF1dG9kcmFpbmVkUG9vbE1hYy5tbSAqLywKIAkJCQkwRjQzRDhFRjFEQjVB
RERDMDAxMDhGQjYgLyogQXV0b21hdGljVGhyZWFkLmNwcCAqLywKIAkJCQkwRjQzRDhGMDFEQjVB
RERDMDAxMDhGQjYgLyogQXV0b21hdGljVGhyZWFkLmggKi8sCiAJCQkJRENFRTIyMDQxQ0VCOTg2
OTAwMEMyMzk2IC8qIEJhY2t3YXJkc0dyYXBoLmggKi8sCkBAIC0xMjY5LDYgKzEyNjksNyBAQAog
CQlDRTQ2NTE2QzE5REIxRkI0MDAzRUNBMDUgLyogY29jb2EgKi8gPSB7CiAJCQlpc2EgPSBQQlhH
cm91cDsKIAkJCWNoaWxkcmVuID0gKAorCQkJCTkzRDE5MUNGMjBDQUVDRTgwMEM1MUI4RSAvKiBG
b3VuZGF0aW9uU1BJLmggKi8sCiAJCQkJQ0U0NjUxNkQxOURCMUZCNDAwM0VDQTA1IC8qIE5TTWFw
VGFibGVTUEkuaCAqLywKIAkJCQlBNTA5OEIwMTFDMTZBNEY5MDAwODc3OTcgLyogU2VjdXJpdHlT
UEkuaCAqLywKIAkJCSk7CkBAIC0xMzIyLDYgKzEzMjMsNyBAQAogCQlFNEEwQUQzQjFBOTYyNTE5
MDA1MzZERjYgLyogY29jb2EgKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxkcmVu
ID0gKAorCQkJCTE0Njk0MTlCMTZFQUIxMEEwMDI0RTE0NiAvKiBBdXRvZHJhaW5lZFBvb2wuY3Bw
ICovLAogCQkJCUUzOEM0MTI0MUVCNEUwNEMwMDQyOTU3RCAvKiBDUFVUaW1lQ29jb2EubW0gKi8s
CiAJCQkJMTQzRERFOTUyMEM4QkMzNzAwN0Y3NkZBIC8qIEVudGl0bGVtZW50cy5jcHAgKi8sCiAJ
CQkJMTQzRERFOTcyMEM4QkU5OTAwN0Y3NkZBIC8qIEVudGl0bGVtZW50cy5oICovLApAQCAtMTQ0
NSw3ICsxNDQ3LDcgQEAKIAkJCQk3MEVDQTYwRDFCMDI0MjY4MDA0NDk3MzkgLyogQXRvbWljU3Ry
aW5nSW1wbC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBNUJBMTVGQTE4MjQzNUE2MDBBODJFNjkg
LyogQXRvbWljU3RyaW5nSW1wbENGLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTlCQzcwRjA1MTc2
QzM3OUQwMDEwMURFQyAvKiBBdG9taWNTdHJpbmdUYWJsZS5jcHAgaW4gU291cmNlcyAqLywKLQkJ
CQkxNDY5NDE5RDE2RUFCMTBBMDAyNEUxNDYgLyogQXV0b2RyYWluZWRQb29sTWFjLm1tIGluIFNv
dXJjZXMgKi8sCisJCQkJMTQ2OTQxOUQxNkVBQjEwQTAwMjRFMTQ2IC8qIEF1dG9kcmFpbmVkUG9v
bC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkwRjQzRDhGMTFEQjVBRERDMDAxMDhGQjYgLyogQXV0
b21hdGljVGhyZWFkLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTgxMzQwMTM4MTVCMDkyRkQwMDFG
RjBCOCAvKiBCYXNlNjQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQThBNDczQTgxNTFBODI1QjAw
NDEyM0ZGIC8qIGJpZ251bS1kdG9hLmNjIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV1RGL3d0Zi9BdXRvZHJhaW5lZFBvb2wuaCBiL1NvdXJjZS9XVEYvd3RmL0F1dG9kcmFpbmVk
UG9vbC5oCmluZGV4IDZmMDJjNWRmNGRlZTdlZDNlZjNmOTY5OGI0NTkwOTliNzcyYThjOTQuLmI2
NjdmOGU0MzI1OGRjMzQ1ZDJlNmQ2ZDQwOTg2ODgxZmVmOWQ5MTIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XVEYvd3RmL0F1dG9kcmFpbmVkUG9vbC5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL0F1dG9kcmFp
bmVkUG9vbC5oCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNywgMjAx
MyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDct
MjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKQEAgLTI2LDM2ICsyNiwzOCBAQAogICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZu
ZGVmIEF1dG9kcmFpbmVkUG9vbF9oCi0jZGVmaW5lIEF1dG9kcmFpbmVkUG9vbF9oCisjcHJhZ21h
IG9uY2UKIAotI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgotCi0jaWYgVVNFKEZPVU5EQVRJ
T04pICYmICFkZWZpbmVkKF9fT0JKQ19fKQotdHlwZWRlZiBzdHJ1Y3Qgb2JqY19vYmplY3QgKmlk
OworI2lmZGVmIF9fT0JKQ19fCisjZXJyb3IgUGxlYXNlIHVzZSBAYXV0b3JlbGVhc2Vwb29sIGlu
c3RlYWQgb2YgQXV0b2RyYWluZWRQb29sLgogI2VuZGlmCiAKKyNpbmNsdWRlIDx3dGYvTm9uY29w
eWFibGUuaD4KKwogbmFtZXNwYWNlIFdURiB7CiAKKy8vIFRoaXMgY2xhc3MgYWxsb3dzIG5vbi1P
YmplY3RpdmUtQyBDKysgY29kZSB0byBjcmVhdGUgYW4gYXV0b3JlbGVhc2UgcG9vbC4KKy8vIEl0
IGNhbm5vdCBiZSB1c2VkIGluIE9iamVjdGl2ZS1DKysgY29kZSwgd29uJ3QgYmUgY29tcGlsZWQ7
IGluc3RlYWQgQGF1dG9yZWxlYXNlcG9vbCBzaG91bGQgYmUgdXNlZC4KKy8vIEl0IGNhbiBiZSB1
c2VkIGluIGNyb3NzLXBsYXRmb3JtIGNvZGU7IHdpbGwgY29tcGlsZSBkb3duIHRvIG5vdGhpbmcg
Zm9yIG5vbi1Db2NvYSBwbGF0Zm9ybXMuCisKIGNsYXNzIEF1dG9kcmFpbmVkUG9vbCB7CiAgICAg
V1RGX01BS0VfTk9OQ09QWUFCTEUoQXV0b2RyYWluZWRQb29sKTsKKwogcHVibGljOgogI2lmIFVT
RShGT1VOREFUSU9OKQogICAgIFdURl9FWFBPUlRfUFJJVkFURSBBdXRvZHJhaW5lZFBvb2woKTsK
ICAgICBXVEZfRVhQT1JUX1BSSVZBVEUgfkF1dG9kcmFpbmVkUG9vbCgpOwogI2Vsc2UKLSAgICBl
eHBsaWNpdCBBdXRvZHJhaW5lZFBvb2woKSB7IH0KKyAgICBBdXRvZHJhaW5lZFBvb2woKSB7IH0K
ICAgICB+QXV0b2RyYWluZWRQb29sKCkgeyB9CiAjZW5kaWYKLSAgICAKKwogcHJpdmF0ZToKICNp
ZiBVU0UoRk9VTkRBVElPTikKLSAgICBpZCBtX3Bvb2w7CisgICAgdm9pZCogbV9hdXRvcmVsZWFz
ZVBvb2w7CiAjZW5kaWYKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OkF1
dG9kcmFpbmVkUG9vbDsKLQotI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9BdXRv
ZHJhaW5lZFBvb2xNYWMubW0gYi9Tb3VyY2UvV1RGL3d0Zi9BdXRvZHJhaW5lZFBvb2xNYWMubW0K
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGYwYTc1ZDJlMmJmNjU2NzRiYzQzNGZlOTNh
NjNkYjk3ZGQ0YTFiZWUuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAK
LS0tIGEvU291cmNlL1dURi93dGYvQXV0b2RyYWluZWRQb29sTWFjLm1tCisrKyAvZGV2L251bGwK
QEAgLTEsNDYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAwNywgMjAxMyBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
LSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLiAKLSAqIDIuICBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLiAKLSAqIDMuICBOZWl0
aGVyIHRoZSBuYW1lIG9mIEFwcGxlIEluYy4gKCJBcHBsZSIpIG5vciB0aGUgbmFtZXMgb2YKLSAq
ICAgICBpdHMgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBw
cm9kdWN0cyBkZXJpdmVkCi0gKiAgICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lm
aWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLiAKLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIEFQUExFIEFORCBJVFMgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5EIEFOWQotICog
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgQVBQTEUgT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQot
ICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMKLSAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKLSAqIExPU1MgT0Yg
VVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORAotICogT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRgotICog
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KLSAqLwotCi0jaW1wb3J0ICJjb25maWcuaCIKLSNpbXBvcnQgIkF1dG9kcmFpbmVk
UG9vbC5oIgotCi0jaW1wb3J0IDxGb3VuZGF0aW9uL0ZvdW5kYXRpb24uaD4KLQotbmFtZXNwYWNl
IFdURiB7Ci0KLUF1dG9kcmFpbmVkUG9vbDo6QXV0b2RyYWluZWRQb29sKCkKLSAgICA6IG1fcG9v
bChbW05TQXV0b3JlbGVhc2VQb29sIGFsbG9jXSBpbml0XSkKLXsgCi19Ci0KLUF1dG9kcmFpbmVk
UG9vbDo6fkF1dG9kcmFpbmVkUG9vbCgpCi17Ci0gICAgW21fcG9vbCBkcmFpbl07Ci19Ci0KLX0g
Ly8gbmFtZXNwYWNlIFdURgpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvUGxhdGZvcm1NYWMu
Y21ha2UgYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybU1hYy5jbWFrZQppbmRleCBhMjZlMDUwM2U1
ZjM1ZTk5NGYyYzM5YjM5OTFmM2Q4Y2U2NDRiMzU2Li40ZDgzN2E0NDcxNTU1NDMxZTIyYTc5NGU5
ZWFkMzIxMzAyZDcyMjFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybU1hYy5j
bWFrZQorKysgYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybU1hYy5jbWFrZQpAQCAtMjEsNiArMjEs
NyBAQCBsaXN0KEFQUEVORCBXVEZfUFVCTElDX0hFQURFUlMKICAgICBzcGkvY2YvQ0ZCdW5kbGVT
UEkuaAogICAgIHNwaS9jZi9DRlN0cmluZ1NQSS5oCiAKKyAgICBzcGkvY29jb2EvRm91bmRhdGlv
blNQSS5oCiAgICAgc3BpL2NvY29hL05TTWFwVGFibGVTUEkuaAogICAgIHNwaS9jb2NvYS9TZWN1
cml0eVNQSS5oCiAKQEAgLTMyLDcgKzMzLDYgQEAgbGlzdChBUFBFTkQgV1RGX1BVQkxJQ19IRUFE
RVJTCiApCiAKIGxpc3QoQVBQRU5EIFdURl9TT1VSQ0VTCi0gICAgQXV0b2RyYWluZWRQb29sTWFj
Lm1tCiAgICAgQmxvY2tPYmpDRXhjZXB0aW9ucy5tbQogICAgIFJ1bkxvb3BUaW1lckNGLmNwcAog
ICAgIFNjaGVkdWxlUGFpckNGLmNwcApAQCAtNDEsOCArNDEsNyBAQCBsaXN0KEFQUEVORCBXVEZf
U09VUkNFUwogICAgIGNmL0xhbmd1YWdlQ0YuY3BwCiAgICAgY2YvUnVuTG9vcENGLmNwcAogCi0g
ICAgdGV4dC9tYWMvVGV4dEJyZWFrSXRlcmF0b3JJbnRlcm5hbElDVU1hYy5tbQotCisgICAgY29j
b2EvQXV0b2RyYWluZWRQb29sLm1tCiAgICAgY29jb2EvQ1BVVGltZUNvY29hLm1tCiAgICAgY29j
b2EvRW50aXRsZW1lbnRzLmNwcAogICAgIGNvY29hL01hY2hTZW5kUmlnaHQuY3BwCkBAIC02MSw2
ICs2MCw3IEBAIGxpc3QoQVBQRU5EIFdURl9TT1VSQ0VTCiAgICAgdGV4dC9tYWMvU3RyaW5nSW1w
bE1hYy5tbQogICAgIHRleHQvbWFjL1N0cmluZ01hYy5tbQogICAgIHRleHQvbWFjL1N0cmluZ1Zp
ZXdPYmpDLm1tCisgICAgdGV4dC9tYWMvVGV4dEJyZWFrSXRlcmF0b3JJbnRlcm5hbElDVU1hYy5t
bQogKQogCiBsaXN0KEFQUEVORCBXVEZfUFJJVkFURV9JTkNMVURFX0RJUkVDVE9SSUVTCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9jb2NvYS9BdXRvZHJhaW5lZFBvb2wuY3BwIGIvU291cmNl
L1dURi93dGYvY29jb2EvQXV0b2RyYWluZWRQb29sLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45ZDc5OTZkNjA0
NTE2MjdhOGY5MGIwMjVmZDY2Mjg3MWMwNDhiMWVkCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dURi93dGYvY29jb2EvQXV0b2RyYWluZWRQb29sLmNwcApAQCAtMCwwICsxLDUwIEBACisvKgor
ICogQ29weXJpZ2h0IChDKSAyMDA3LTIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICoKKyAqIDEu
ICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4gCisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
CisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4gCisgKiAzLiAgTmVpdGhlciB0aGUgbmFtZSBvZiBBcHBsZSBJ
bmMuICgiQXBwbGUiKSBub3IgdGhlIG5hbWVzIG9mCisgKiAgICAgaXRzIGNvbnRyaWJ1dG9ycyBt
YXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAorICogICAg
IGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlz
c2lvbi4gCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBBTkQgSVRT
IENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIg
UFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIE9SIElU
UyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisg
KiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQKKyAqIE9OIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKKyAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2RlZmlu
ZSBXVEZfQ09NUElMSU5HX0FVVE9EUkFJTkVEX1BPT0xfSU1QTEVNRU5UQVRJT04KKworI2ltcG9y
dCAiY29uZmlnLmgiCisjaW1wb3J0ICJBdXRvZHJhaW5lZFBvb2wuaCIKKworI3VuZGVmIFdURl9D
T01QSUxJTkdfQVVUT0RSQUlORURfUE9PTF9JTVBMRU1FTlRBVElPTgorCisjaW1wb3J0IDx3dGYv
c3BpL2NvY29hL0ZvdW5kYXRpb25TUEkuaD4KKworbmFtZXNwYWNlIFdURiB7CisKK0F1dG9kcmFp
bmVkUG9vbDo6QXV0b2RyYWluZWRQb29sKCkKKyAgICA6IG1fYXV0b3JlbGVhc2VQb29sIHsgb2Jq
Y19hdXRvcmVsZWFzZVBvb2xQdXNoKCkgfQoreyAKK30KKworQXV0b2RyYWluZWRQb29sOjp+QXV0
b2RyYWluZWRQb29sKCkKK3sKKyAgICBvYmpjX2F1dG9yZWxlYXNlUG9vbFBvcChtX2F1dG9yZWxl
YXNlUG9vbCk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdURgpkaWZmIC0tZ2l0IGEvU291cmNlL1dU
Ri93dGYvc3BpL2NvY29hL0ZvdW5kYXRpb25TUEkuaCBiL1NvdXJjZS9XVEYvd3RmL3NwaS9jb2Nv
YS9Gb3VuZGF0aW9uU1BJLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTc2YWUwZjhmZDViYzgxYzRiOWIxZTY2MGVi
OTFlYmEyOGI0YjQ0MQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XVEYvd3RmL3NwaS9jb2Nv
YS9Gb3VuZGF0aW9uU1BJLmgKQEAgLTAsMCArMSw0MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEg
b25jZQorCisjaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKKworI2luY2x1ZGUgPG9iamMvb2Jq
Yy1pbnRlcm5hbC5oPgorCisjZWxzZQorCitXVEZfRVhURVJOX0NfQkVHSU4KKwordm9pZCogb2Jq
Y19hdXRvcmVsZWFzZVBvb2xQdXNoKHZvaWQpOwordm9pZCBvYmpjX2F1dG9yZWxlYXNlUG9vbFBv
cCh2b2lkICpjb250ZXh0KTsKKworV1RGX0VYVEVSTl9DX0VORAorCisjZW5kaWYKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1Nv
dXJjZS9XZWJDb3JlL1BBTC9QQUwueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCA1OWU3
NDdhZmVkZjE2OWM0OTYxMTA1OTk3ZjQzNWJkYWRlZTU5ZDY1Li44ZGU1ZWM3MmVlYTMxZDRkNGU4
YzVhYjgxOTFjZTJjMjg3MGMyZTg2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvUEFM
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML1BBTC54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0xMTIsNyArMTEyLDYgQEAKIAkJNTdGMTI1MTgy
MDU3ODdENzAwMUFCOEE2IC8qIERldmljZUlkZW50aXR5U1BJLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1N0YxMjUxNzIwNTc4N0M4MDAxQUI4QTYgLyog
RGV2aWNlSWRlbnRpdHlTUEkuaCAqLzsgfTsKIAkJN0ExNjU2NDQxRjk3QjJCOTAwQkEzQ0U0IC8q
IE5TS2V5ZWRBcmNoaXZlclNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gN0ExNjU2NDMxRjk3QjJCODAwQkEzQ0U0IC8qIE5TS2V5ZWRBcmNoaXZlclNQ
SS5oICovOyB9OwogCQk3QTNBNkE4MDIwQ0FEQjQ3MDAzMTdBQUUgLyogTlNJbWFnZVNQSS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0EzQTZBN0YyMENB
REI0NjAwMzE3QUFFIC8qIE5TSW1hZ2VTUEkuaCAqLzsgfTsKLQkJQTEwMjY1ODcxRjU2NzQ2MTAw
QjRDODQ0IC8qIEZvdW5kYXRpb25TUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEExMDI2NTg2MUY1Njc0NjEwMEI0Qzg0NCAvKiBGb3VuZGF0aW9uU1BJ
LmggKi87IH07CiAJCUExMDI2NTg5MUY1Njc0N0EwMEI0Qzg0NCAvKiBISVRvb2xib3hTUEkuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExMDI2NTg4MUY1
Njc0N0EwMEI0Qzg0NCAvKiBISVRvb2xib3hTUEkuaCAqLzsgfTsKIAkJQTEwMjY1OEIxRjU2NzQ4
QzAwQjRDODQ0IC8qIFF1aWNrRHJhd1NQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQTEwMjY1OEExRjU2NzQ4QzAwQjRDODQ0IC8qIFF1aWNrRHJhd1NQ
SS5oICovOyB9OwogCQlBMTAyNjU4RTFGNTY3RTlEMDBCNEM4NDQgLyogSElTZXJ2aWNlc1NQSS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTEwMjY1OEQx
RjU2N0U5RDAwQjRDODQ0IC8qIEhJU2VydmljZXNTUEkuaCAqLzsgfTsKQEAgLTI2MSw3ICsyNjAs
NiBAQAogCQk3QTE2NTY0MzFGOTdCMkI4MDBCQTNDRTQgLyogTlNLZXllZEFyY2hpdmVyU1BJLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5TS2V5ZWRBcmNoaXZlclNQSS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3QTNBNkE3RjIwQ0FEQjQ2MDAzMTdBQUUgLyog
TlNJbWFnZVNQSS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOU0ltYWdlU1BJ
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzRTU5MDlDMUY5M0JGMUUwMDY3RjhD
RiAvKiBVbmVuY29kYWJsZUhhbmRsaW5nLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFVuZW5jb2RhYmxlSGFu
ZGxpbmcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQTEwMjY1ODYxRjU2NzQ2MTAw
QjRDODQ0IC8qIEZvdW5kYXRpb25TUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gRm91bmRhdGlvblNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBMTAyNjU4
ODFGNTY3NDdBMDBCNEM4NDQgLyogSElUb29sYm94U1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEhJVG9vbGJveFNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQlBMTAyNjU4QTFGNTY3NDhDMDBCNEM4NDQgLyogUXVpY2tEcmF3U1BJLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFF1aWNrRHJhd1NQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQlBMTAyNjU4RDFGNTY3RTlEMDBCNEM4NDQgLyogSElTZXJ2aWNlc1NQSS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBISVNlcnZpY2VzU1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CkBAIC0zNjQsNyArMzYyLDYgQEAKIAkJCQkwQzJEQTEyNDFGM0JFQjQ5MDBEQkMzMTcgLyogQ29y
ZVRleHRTUEkuaCAqLywKIAkJCQkwQzJEQTEyNTFGM0JFQjQ5MDBEQkMzMTcgLyogRGF0YURldGVj
dG9yc0NvcmVTUEkuaCAqLywKIAkJCQk1N0YxMjUxNzIwNTc4N0M4MDAxQUI4QTYgLyogRGV2aWNl
SWRlbnRpdHlTUEkuaCAqLywKLQkJCQlBMTAyNjU4NjFGNTY3NDYxMDBCNEM4NDQgLyogRm91bmRh
dGlvblNQSS5oICovLAogCQkJCTBDMkRBMTI2MUYzQkVCNDkwMERCQzMxNyAvKiBJT1BNTGliU1BJ
LmggKi8sCiAJCQkJMEMyREExMjcxRjNCRUI0OTAwREJDMzE3IC8qIElPUFNMaWJTUEkuaCAqLywK
IAkJCQkwQzJEQTEyODFGM0JFQjQ5MDBEQkMzMTcgLyogSU9SZXR1cm5TUEkuaCAqLywKQEAgLTYz
OSw3ICs2MzYsNiBAQAogCQkJCTU3RjEyNTE4MjA1Nzg3RDcwMDFBQjhBNiAvKiBEZXZpY2VJZGVu
dGl0eVNQSS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEMyRDlFNzMxRUVGNUFGNjAwREJDMzE3IC8q
IEV4cG9ydE1hY3Jvcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRjQ0MjkxNjAxRkE1MjYxRTAwMkND
OTNFIC8qIEZpbGVTaXplRm9ybWF0dGVyLmggaW4gSGVhZGVycyAqLywKLQkJCQlBMTAyNjU4NzFG
NTY3NDYxMDBCNEM4NDQgLyogRm91bmRhdGlvblNQSS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEM1
QUY5MUIxRjQzQTRDNzAwMkVBQzAyIC8qIEdyYXBoaWNzU2VydmljZXNTUEkuaCBpbiBIZWFkZXJz
ICovLAogCQkJCUExMDI2NThFMUY1NjdFOUQwMEI0Qzg0NCAvKiBISVNlcnZpY2VzU1BJLmggaW4g
SGVhZGVycyAqLywKIAkJCQlBMTAyNjU4OTFGNTY3NDdBMDBCNEM4NDQgLyogSElUb29sYm94U1BJ
LmggaW4gSGVhZGVycyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvUGxh
dGZvcm1NYWMuY21ha2UgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL1BsYXRmb3JtTWFjLmNtYWtl
CmluZGV4IDdlMzgyZDg4ZTI0MWVlYzY5MGM1YzVlOTJkYTM5ODI0NDY1NzgxOTIuLmIyYWNmYmIx
Mzk3OWExMDA3M2NiZGIzNDk1YzAyODliZjVkMjNkZDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL1BBTC9wYWwvUGxhdGZvcm1NYWMuY21ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3Bh
bC9QbGF0Zm9ybU1hYy5jbWFrZQpAQCAtMTcsNyArMTcsNiBAQCBsaXN0KEFQUEVORCBQQUxfUFVC
TElDX0hFQURFUlMKICAgICBzcGkvY29jb2EvQ0ZOU1VSTENvbm5lY3Rpb25TUEkuaAogICAgIHNw
aS9jb2NvYS9Db3JlVGV4dFNQSS5oCiAgICAgc3BpL2NvY29hL0RhdGFEZXRlY3RvcnNDb3JlU1BJ
LmgKLSAgICBzcGkvY29jb2EvRm91bmRhdGlvblNQSS5oCiAgICAgc3BpL2NvY29hL0lPUE1MaWJT
UEkuaAogICAgIHNwaS9jb2NvYS9JT1BTTGliU1BJLmgKICAgICBzcGkvY29jb2EvSU9SZXR1cm5T
UEkuaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvRm91bmRh
dGlvblNQSS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvRm91bmRhdGlvblNQ
SS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2ODQxNzVkMTJiOWUzYzdiZGYyNmQy
ZWJiNTMwMzY4ZWE3N2VlZTBmLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0ZvdW5kYXRpb25TUEku
aAorKysgL2Rldi9udWxsCkBAIC0xLDQxICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBg
YEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJ
QlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jcHJhZ21hIG9u
Y2UKLQotI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCi0KLSNpbmNsdWRlIDxGb3VuZGF0aW9u
L05TUHJpdmF0ZURlY2xzLmg+Ci0KLSNlbmRpZgotCi10eXBlZGVmIHZvaWQqIE5TQXV0b3JlbGVh
c2VQb29sTWFyazsKLQotV1RGX0VYVEVSTl9DX0JFR0lOCi0KLU5TQXV0b3JlbGVhc2VQb29sTWFy
ayBOU1B1c2hBdXRvcmVsZWFzZVBvb2woTlNVSW50ZWdlciBjYXBhY2l0eSk7Ci12b2lkIE5TUG9w
QXV0b3JlbGVhc2VQb29sKE5TQXV0b3JlbGVhc2VQb29sTWFyayk7Ci0KLVdURl9FWFRFUk5fQ19F
TkQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfY2xhc3MubW0g
Yi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX2NsYXNzLm1tCmluZGV4IGNhNGE2YzJk
ZWM1YjgyYjQwNmFkZmVkMTEyMDkzMTBiNjY4M2E2ZGYuLmNlMWVmNjU1N2EwNzYzYTdkMzQzMGEz
YmY5ODZhMTk4N2Y4Y2IzNTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpj
L29iamNfY2xhc3MubW0KKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19jbGFz
cy5tbQpAQCAtMjMsMTIgKzIzLDEyIEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaW5jbHVk
ZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAib2JqY19jbGFzcy5oIgorI2ltcG9ydCAiY29uZmlnLmgi
CisjaW1wb3J0ICJvYmpjX2NsYXNzLmgiCiAKLSNpbmNsdWRlICJvYmpjX2luc3RhbmNlLmgiCi0j
aW5jbHVkZSAiV2ViU2NyaXB0T2JqZWN0LmgiCi0jaW5jbHVkZSAiV2ViU2NyaXB0T2JqZWN0UHJv
dG9jb2wuaCIKKyNpbXBvcnQgIldlYlNjcmlwdE9iamVjdC5oIgorI2ltcG9ydCAiV2ViU2NyaXB0
T2JqZWN0UHJvdG9jb2wuaCIKKyNpbXBvcnQgIm9iamNfaW5zdGFuY2UuaCIKIAogbmFtZXNwYWNl
IEpTQyB7CiBuYW1lc3BhY2UgQmluZGluZ3MgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YnJpZGdlL29iamMvb2JqY19pbnN0YW5jZS5oIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMv
b2JqY19pbnN0YW5jZS5oCmluZGV4IDk5M2E2ZjU3MWU2M2JmY2RlY2JiNGY5NGQzZDA1ZTg3ZDhm
MjRlM2YuLjVmMjg1ZTkxYjhkZjVkNTE1ZTU1NjBkNDQ5NjVkYTY0MDQxNTRlYjQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfaW5zdGFuY2UuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLmgKQEAgLTIzLDExICsyMyw4IEBA
CiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIEJJTkRJTkdTX09CSkNfSU5TVEFOQ0Vf
SF8KLSNkZWZpbmUgQklORElOR1NfT0JKQ19JTlNUQU5DRV9IXwotCi0jaW5jbHVkZSAib2JqY19j
bGFzcy5oIgotI2luY2x1ZGUgIm9iamNfdXRpbGl0eS5oIgorI2ltcG9ydCAib2JqY19jbGFzcy5o
IgorI2ltcG9ydCAib2JqY191dGlsaXR5LmgiCiAKIG5hbWVzcGFjZSBKU0MgewogCkBAIC03NSwx
MyArNzIsMTEgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIFJ1bnRpbWVPYmplY3QqIG5ld1J1bnRp
bWVPYmplY3QoRXhlY1N0YXRlKik7CiAKICAgICBSZXRhaW5QdHI8T2JqZWN0U3RydWN0UHRyPiBf
aW5zdGFuY2U7Ci0gICAgbXV0YWJsZSBPYmpjQ2xhc3MgKl9jbGFzczsKLSAgICBPYmplY3RTdHJ1
Y3RQdHIgX3Bvb2w7Ci0gICAgaW50IF9iZWdpbkNvdW50OworICAgIG11dGFibGUgT2JqY0NsYXNz
KiBfY2xhc3MgeyBudWxscHRyIH07CisgICAgdm9pZCogbV9hdXRvcmVsZWFzZVBvb2wgeyBudWxs
cHRyIH07CisgICAgaW50IF9iZWdpbkNvdW50IHsgMCB9OwogfTsKIAogfSAvLyBuYW1lc3BhY2Ug
QmluZGluZ3MKIAogfSAvLyBuYW1lc3BhY2UgSlNDCi0KLSNlbmRpZiAvLyBCSU5ESU5HU19PQkpD
X0lOU1RBTkNFX0hfCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpj
X2luc3RhbmNlLm1tIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19pbnN0YW5jZS5t
bQppbmRleCA2OGU1NzMxMmRhYzBhN2FhOTQzNTgzYzg5ODE4ZThlOGEzNmYwMzE3Li4wYTExMjQ3
MjJiZjYyMTNiMjIwZjFjYTZiNDBkYzZlMDVjODliZmJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9icmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jy
aWRnZS9vYmpjL29iamNfaW5zdGFuY2UubW0KQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJp
Z2h0IChDKSAyMDA0LCAyMDA4LTIwMDksIDIwMTMsIDIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA0LTIwMTggQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC00MCw2ICs0
MCw3IEBACiAjaW1wb3J0IDx3dGYvTWFpblRocmVhZC5oPgogI2ltcG9ydCA8d3RmL05ldmVyRGVz
dHJveWVkLmg+CiAjaW1wb3J0IDx3dGYvVGhyZWFkU3BlY2lmaWMuaD4KKyNpbXBvcnQgPHd0Zi9z
cGkvY29jb2EvRm91bmRhdGlvblNQSS5oPgogCiAjaWZkZWYgTkRFQlVHCiAjZGVmaW5lIE9CSkNf
TE9HKGZvcm1hdEFuZEFyZ3MuLi4pICgodm9pZCkwKQpAQCAtMTAwLDkgKzEwMSw2IEBAIHZvaWQg
T2JqY0luc3RhbmNlOjptb3ZlR2xvYmFsRXhjZXB0aW9uVG9FeGVjU3RhdGUoRXhlY1N0YXRlKiBl
eGVjKQogT2JqY0luc3RhbmNlOjpPYmpjSW5zdGFuY2UoaWQgaW5zdGFuY2UsIFJlZlB0cjxSb290
T2JqZWN0PiYmIHJvb3RPYmplY3QpIAogICAgIDogSW5zdGFuY2UoV1RGTW92ZShyb290T2JqZWN0
KSkKICAgICAsIF9pbnN0YW5jZShpbnN0YW5jZSkKLSAgICAsIF9jbGFzcygwKQotICAgICwgX3Bv
b2woMCkKLSAgICAsIF9iZWdpbkNvdW50KDApCiB7CiB9CiAKQEAgLTEzMyw4ICsxMzEsOCBAQCBP
YmpjSW5zdGFuY2U6On5PYmpjSW5zdGFuY2UoKQogCiB2b2lkIE9iamNJbnN0YW5jZTo6dmlydHVh
bEJlZ2luKCkKIHsKLSAgICBpZiAoIV9wb29sKQotICAgICAgICBfcG9vbCA9IFtbTlNBdXRvcmVs
ZWFzZVBvb2wgYWxsb2NdIGluaXRdOworICAgIGlmICghbV9hdXRvcmVsZWFzZVBvb2wpCisgICAg
ICAgIG1fYXV0b3JlbGVhc2VQb29sID0gb2JqY19hdXRvcmVsZWFzZVBvb2xQdXNoKCk7CiAgICAg
X2JlZ2luQ291bnQrKzsKIH0KIApAQCAtMTQzLDggKzE0MSw5IEBAIHZvaWQgT2JqY0luc3RhbmNl
Ojp2aXJ0dWFsRW5kKCkKICAgICBfYmVnaW5Db3VudC0tOwogICAgIEFTU0VSVChfYmVnaW5Db3Vu
dCA+PSAwKTsKICAgICBpZiAoIV9iZWdpbkNvdW50KSB7Ci0gICAgICAgIFtfcG9vbCBkcmFpbl07
Ci0gICAgICAgIF9wb29sID0gMDsKKyAgICAgICAgQVNTRVJUKG1fYXV0b3JlbGVhc2VQb29sKTsK
KyAgICAgICAgb2JqY19hdXRvcmVsZWFzZVBvb2xQb3AobV9hdXRvcmVsZWFzZVBvb2wpOworICAg
ICAgICBtX2F1dG9yZWxlYXNlUG9vbCA9IG51bGxwdHI7CiAgICAgfQogfQogCkBAIC01MDcsMTMg
KzUwNiwxMSBAQCBKU0M6OkpTVmFsdWUgT2JqY0luc3RhbmNlOjpzdHJpbmdWYWx1ZShFeGVjU3Rh
dGUqIGV4ZWMpIGNvbnN0CiAKIEpTQzo6SlNWYWx1ZSBPYmpjSW5zdGFuY2U6Om51bWJlclZhbHVl
KEV4ZWNTdGF0ZSopIGNvbnN0CiB7Ci0gICAgLy8gRklYTUU6ICBJbXBsZW1lbnQgc29tZXRoaW5n
IHNlbnNpYmxlCiAgICAgcmV0dXJuIGpzTnVtYmVyKDApOwogfQogCiBKU0M6OkpTVmFsdWUgT2Jq
Y0luc3RhbmNlOjpib29sZWFuVmFsdWUoKSBjb25zdAogewotICAgIC8vIEZJWE1FOiAgSW1wbGVt
ZW50IHNvbWV0aGluZyBzZW5zaWJsZQogICAgIHJldHVybiBqc0Jvb2xlYW4oZmFsc2UpOwogfQog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX3J1bnRpbWUubW0g
Yi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX3J1bnRpbWUubW0KaW5kZXggODdkMDM4
N2E2OWE3NTM3ZDJmOWVkNmJkNmM1MzIyYjQ3MjUwMWYxZS4uZTdiMWJkYmViYmY5NWQ2NGM4OGYy
ZjJiYzFjZjZhMTUxMTJlMjQ1NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29i
amMvb2JqY19ydW50aW1lLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNf
cnVudGltZS5tbQpAQCAtMjMsMjAgKzIzLDIwIEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0j
aW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAib2JqY19ydW50aW1lLmgiCi0KLSNpbmNsdWRl
ICJKU0RPTUJpbmRpbmcuaCIKLSNpbmNsdWRlICJPYmpDUnVudGltZU9iamVjdC5oIgotI2luY2x1
ZGUgIldlYlNjcmlwdE9iamVjdC5oIgotI2luY2x1ZGUgIldlYlNjcmlwdE9iamVjdFByb3RvY29s
LmgiCi0jaW5jbHVkZSAib2JqY19pbnN0YW5jZS5oIgotI2luY2x1ZGUgInJ1bnRpbWVfYXJyYXku
aCIKLSNpbmNsdWRlICJydW50aW1lX29iamVjdC5oIgotI2luY2x1ZGUgPEphdmFTY3JpcHRDb3Jl
L0Vycm9yLmg+Ci0jaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSlNHbG9iYWxPYmplY3QuaD4KLSNp
bmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9KU0xvY2suaD4KLSNpbmNsdWRlIDx3dGYvUmV0YWluUHRy
Lmg+CisjaW1wb3J0ICJjb25maWcuaCIKKyNpbXBvcnQgIm9iamNfcnVudGltZS5oIgorCisjaW1w
b3J0ICJKU0RPTUJpbmRpbmcuaCIKKyNpbXBvcnQgIk9iakNSdW50aW1lT2JqZWN0LmgiCisjaW1w
b3J0ICJXZWJTY3JpcHRPYmplY3QuaCIKKyNpbXBvcnQgIldlYlNjcmlwdE9iamVjdFByb3RvY29s
LmgiCisjaW1wb3J0ICJvYmpjX2luc3RhbmNlLmgiCisjaW1wb3J0ICJydW50aW1lX2FycmF5Lmgi
CisjaW1wb3J0ICJydW50aW1lX29iamVjdC5oIgorI2ltcG9ydCA8SmF2YVNjcmlwdENvcmUvRXJy
b3IuaD4KKyNpbXBvcnQgPEphdmFTY3JpcHRDb3JlL0pTR2xvYmFsT2JqZWN0Lmg+CisjaW1wb3J0
IDxKYXZhU2NyaXB0Q29yZS9KU0xvY2suaD4KKyNpbXBvcnQgPHd0Zi9SZXRhaW5QdHIuaD4KIAog
dXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jy
aWRnZS9vYmpjL29iamNfdXRpbGl0eS5tbSBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29i
amNfdXRpbGl0eS5tbQppbmRleCAxMmQwNTJkMjI0ODk0YzNjN2JiYzlhNjdmMjc1YmJlNjhkMzQ4
Y2U2Li4xOTcwNDNmZjUxZGFmNGNiMDk1NmM4ZTU4YTQ1MDhjOTZhODFkYzNjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX3V0aWxpdHkubW0KKysrIGIvU291cmNl
L1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY191dGlsaXR5Lm1tCkBAIC0yMywxNiArMjMsMTYgQEAK
ICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJv
YmpjX3V0aWxpdHkuaCIKKyNpbXBvcnQgImNvbmZpZy5oIgorI2ltcG9ydCAib2JqY191dGlsaXR5
LmgiCiAKLSNpbmNsdWRlICJXZWJTY3JpcHRPYmplY3RQcm90b2NvbC5oIgotI2luY2x1ZGUgIm9i
amNfaW5zdGFuY2UuaCIKLSNpbmNsdWRlICJydW50aW1lX2FycmF5LmgiCi0jaW5jbHVkZSAicnVu
dGltZV9vYmplY3QuaCIKLSNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9KU0dsb2JhbE9iamVjdC5o
PgotI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0pTTG9jay5oPgotI2luY2x1ZGUgPHd0Zi9Bc3Nl
cnRpb25zLmg+CisjaW1wb3J0ICJXZWJTY3JpcHRPYmplY3RQcm90b2NvbC5oIgorI2ltcG9ydCAi
b2JqY19pbnN0YW5jZS5oIgorI2ltcG9ydCAicnVudGltZV9hcnJheS5oIgorI2ltcG9ydCAicnVu
dGltZV9vYmplY3QuaCIKKyNpbXBvcnQgPEphdmFTY3JpcHRDb3JlL0pTR2xvYmFsT2JqZWN0Lmg+
CisjaW1wb3J0IDxKYXZhU2NyaXB0Q29yZS9KU0xvY2suaD4KKyNpbXBvcnQgPHd0Zi9Bc3NlcnRp
b25zLmg+CiAKICNpZiAhZGVmaW5lZChfQ19MTkdfTE5HKQogI2RlZmluZSBfQ19MTkdfTE5HICdx
JwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vbWFjL0F1ZGlvQnVz
TWFjLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vbWFjL0F1ZGlvQnVzTWFjLm1t
CmluZGV4IDcwM2E2N2I3YjM4NDJjMTYyOTdmODkzZTk0NmE4YmMyMjRjNWQ0YTYuLmZjNTUxMzRj
ODIzYmNmNTdhNDZjN2RjZTJjMGM2ODNhOTQ1NDViNTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2F1ZGlvL21hYy9BdWRpb0J1c01hYy5tbQorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9hdWRpby9tYWMvQXVkaW9CdXNNYWMubW0KQEAgLTI5LDkgKzI5LDYgQEAKICNp
bXBvcnQgIkF1ZGlvQnVzLmgiCiAKICNpbXBvcnQgIkF1ZGlvRmlsZVJlYWRlci5oIgotI2ltcG9y
dCA8d3RmL0F1dG9kcmFpbmVkUG9vbC5oPgotI2ltcG9ydCA8d3RmL1JlZlB0ci5oPgotI2ltcG9y
dCA8Rm91bmRhdGlvbi9Gb3VuZGF0aW9uLmg+CiAKIEBpbnRlcmZhY2UgV2ViQ29yZUF1ZGlvQnVu
ZGxlQ2xhc3MgOiBOU09iamVjdAogQGVuZApAQCAtNDMsMTYgKzQwLDEyIEBAIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAogUmVmUHRyPEF1ZGlvQnVzPiBBdWRpb0J1czo6bG9hZFBsYXRmb3JtUmVzb3Vy
Y2UoY29uc3QgY2hhciogbmFtZSwgZmxvYXQgc2FtcGxlUmF0ZSkKIHsKLSAgICAvLyBUaGlzIG1l
dGhvZCBjYW4gYmUgY2FsbGVkIGZyb20gb3RoZXIgdGhhbiB0aGUgbWFpbiB0aHJlYWQsIHNvIHdl
IG5lZWQgYW4gYXV0by1yZWxlYXNlIHBvb2wuCi0gICAgQXV0b2RyYWluZWRQb29sIHBvb2w7Ci0g
ICAgCi0gICAgTlNCdW5kbGUgKmJ1bmRsZSA9IFtOU0J1bmRsZSBidW5kbGVGb3JDbGFzczpbV2Vi
Q29yZUF1ZGlvQnVuZGxlQ2xhc3MgY2xhc3NdXTsKLSAgICBOU1VSTCAqYXVkaW9GaWxlVVJMID0g
W2J1bmRsZSBVUkxGb3JSZXNvdXJjZTpbTlNTdHJpbmcgc3RyaW5nV2l0aFVURjhTdHJpbmc6bmFt
ZV0gd2l0aEV4dGVuc2lvbjpAIndhdiIgc3ViZGlyZWN0b3J5OkAiYXVkaW8iXTsKLSAgICBOU0Rh
dGFSZWFkaW5nT3B0aW9ucyBvcHRpb25zID0gTlNEYXRhUmVhZGluZ01hcHBlZElmU2FmZTsKLSAg
ICBOU0RhdGEgKmF1ZGlvRGF0YSA9IFtOU0RhdGEgZGF0YVdpdGhDb250ZW50c09mVVJMOmF1ZGlv
RmlsZVVSTCBvcHRpb25zOm9wdGlvbnMgZXJyb3I6bmlsXTsKLQotICAgIGlmIChhdWRpb0RhdGEp
Ci0gICAgICAgIHJldHVybiBjcmVhdGVCdXNGcm9tSW5NZW1vcnlBdWRpb0ZpbGUoW2F1ZGlvRGF0
YSBieXRlc10sIFthdWRpb0RhdGEgbGVuZ3RoXSwgZmFsc2UsIHNhbXBsZVJhdGUpOworICAgIEBh
dXRvcmVsZWFzZXBvb2wgeworICAgICAgICBOU0J1bmRsZSAqYnVuZGxlID0gW05TQnVuZGxlIGJ1
bmRsZUZvckNsYXNzOltXZWJDb3JlQXVkaW9CdW5kbGVDbGFzcyBjbGFzc11dOworICAgICAgICBO
U1VSTCAqYXVkaW9GaWxlVVJMID0gW2J1bmRsZSBVUkxGb3JSZXNvdXJjZTpbTlNTdHJpbmcgc3Ry
aW5nV2l0aFVURjhTdHJpbmc6bmFtZV0gd2l0aEV4dGVuc2lvbjpAIndhdiIgc3ViZGlyZWN0b3J5
OkAiYXVkaW8iXTsKKyAgICAgICAgaWYgKE5TRGF0YSAqYXVkaW9EYXRhID0gW05TRGF0YSBkYXRh
V2l0aENvbnRlbnRzT2ZVUkw6YXVkaW9GaWxlVVJMIG9wdGlvbnM6TlNEYXRhUmVhZGluZ01hcHBl
ZElmU2FmZSBlcnJvcjpuaWxdKQorICAgICAgICAgICAgcmV0dXJuIGNyZWF0ZUJ1c0Zyb21Jbk1l
bW9yeUF1ZGlvRmlsZShbYXVkaW9EYXRhIGJ5dGVzXSwgW2F1ZGlvRGF0YSBsZW5ndGhdLCBmYWxz
ZSwgc2FtcGxlUmF0ZSk7CisgICAgfQogCiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAg
cmV0dXJuIG51bGxwdHI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3Mv
d2FrL1dlYkNvcmVUaHJlYWQubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3Mvd2FrL1dl
YkNvcmVUaHJlYWQubW0KaW5kZXggNGE5MmJjNjg1M2I2MjZlODhmY2YyNDVlMjRmOWJkN2EyNjc3
OTFmZS4uNDNiYjMyYTkzMGEyMTQ1OTIxZjA1YzJjN2ZjMjIwMmY4MTkzNDM0OCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL3dhay9XZWJDb3JlVGhyZWFkLm1tCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy93YWsvV2ViQ29yZVRocmVhZC5tbQpAQCAtMSw1
ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYsIDIwMDcsIDIwMDggQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTggQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
CkBAIC0zNCwyNCArMzQsMjMgQEAKICNpbXBvcnQgIlJ1bnRpbWVBcHBsaWNhdGlvbkNoZWNrcy5o
IgogI2ltcG9ydCAiVGhyZWFkR2xvYmFsRGF0YS5oIgogI2ltcG9ydCAiV0FLV2luZG93LmgiCisj
aW1wb3J0ICJXS1V0aWxpdGllcy5oIgogI2ltcG9ydCAiV2ViQ29yZVRocmVhZEludGVybmFsLmgi
CiAjaW1wb3J0ICJXZWJDb3JlVGhyZWFkTWVzc2FnZS5oIgogI2ltcG9ydCAiV2ViQ29yZVRocmVh
ZFJ1bi5oIgotI2ltcG9ydCAiV0tVdGlsaXRpZXMuaCIKLQorI2ltcG9ydCA8Rm91bmRhdGlvbi9O
U0ludm9jYXRpb24uaD4KICNpbXBvcnQgPEphdmFTY3JpcHRDb3JlL0luaXRpYWxpemVUaHJlYWRp
bmcuaD4KICNpbXBvcnQgPEphdmFTY3JpcHRDb3JlL0pTTG9jay5oPgorI2ltcG9ydCA8bGlia2Vy
bi9PU0F0b21pYy5oPgorI2ltcG9ydCA8b2JqYy9ydW50aW1lLmg+CiAjaW1wb3J0IDx3dGYvQXNz
ZXJ0aW9ucy5oPgogI2ltcG9ydCA8d3RmL01haW5UaHJlYWQuaD4KICNpbXBvcnQgPHd0Zi9SZWN1
cnNpdmVMb2NrQWRhcHRlci5oPgogI2ltcG9ydCA8d3RmL1J1bkxvb3AuaD4KICNpbXBvcnQgPHd0
Zi9UaHJlYWRpbmcuaD4KKyNpbXBvcnQgPHd0Zi9zcGkvY29jb2EvRm91bmRhdGlvblNQSS5oPgog
I2ltcG9ydCA8d3RmL3RleHQvQXRvbWljU3RyaW5nLmg+CiAKLSNpbXBvcnQgPEZvdW5kYXRpb24v
TlNJbnZvY2F0aW9uLmg+Ci0jaW1wb3J0IDxsaWJrZXJuL09TQXRvbWljLmg+Ci0jaW1wb3J0IDxv
YmpjL3J1bnRpbWUuaD4KLQogI2RlZmluZSBMT0dfTUVTU0FHRVMgMAogI2RlZmluZSBMT0dfV0VC
X0xPQ0sgMAogI2RlZmluZSBMT0dfTUFJTl9USFJFQURfTE9DS0lORyAwCkBAIC04MiwyMSArODEs
MTEgQEAgLSAodm9pZClyZWxlYXNlT25NYWluVGhyZWFkIHsKIAogQGVuZAogCi11c2luZyBOU0F1
dG9yZWxlYXNlUG9vbE1hcmsgPSB2b2lkKjsKLSNpZmRlZiBfX2NwbHVzcGx1cwotZXh0ZXJuICJD
IiB7Ci0jZW5kaWYKLWV4dGVybiBOU0F1dG9yZWxlYXNlUG9vbE1hcmsgTlNQdXNoQXV0b3JlbGVh
c2VQb29sKHVuc2lnbmVkIGlnbm9yZWQpOwotZXh0ZXJuIHZvaWQgTlNQb3BBdXRvcmVsZWFzZVBv
b2woTlNBdXRvcmVsZWFzZVBvb2xNYXJrIHRva2VuKTsKLSNpZmRlZiBfX2NwbHVzcGx1cwotfQot
I2VuZGlmCi0KIHN0YXRpYyBSZWN1cnNpdmVMb2NrIHdlYkxvY2s7CiBzdGF0aWMgTG9jayB3ZWJU
aHJlYWRSZWxlYXNlTG9jazsKIHN0YXRpYyBSZWN1cnNpdmVMb2NrIHdlYkNvcmVSZWxlYXNlTG9j
azsKIAotc3RhdGljIE5TQXV0b3JlbGVhc2VQb29sTWFyayBhdXRvcmVsZWFzZVBvb2xNYXJrOwor
c3RhdGljIHZvaWQqIGF1dG9yZWxlYXNlUG9vbE1hcms7CiBzdGF0aWMgQ0ZSdW5Mb29wUmVmIHdl
YlRocmVhZFJ1bkxvb3A7CiBzdGF0aWMgTlNSdW5Mb29wKiB3ZWJUaHJlYWROU1J1bkxvb3A7CiBz
dGF0aWMgcHRocmVhZF90IHdlYlRocmVhZDsKQEAgLTEwNCw3ICs5Myw3IEBAIHN0YXRpYyBCT09M
IGlzV2ViVGhyZWFkTG9ja2VkOwogc3RhdGljIEJPT0wgd2ViVGhyZWFkU3RhcnRlZDsKIHN0YXRp
YyB1bnNpZ25lZCB3ZWJUaHJlYWRMb2NrQ291bnQ7CiAKLXN0YXRpYyBOU0F1dG9yZWxlYXNlUG9v
bE1hcmsgc2F2ZWRBdXRvcmVsZWFzZVBvb2xNYXJrOworc3RhdGljIHZvaWQqIHNhdmVkQXV0b3Jl
bGVhc2VQb29sTWFyazsKIHN0YXRpYyBCT09MIGlzTmVzdGVkV2ViVGhyZWFkUnVuTG9vcDsKIHR5
cGVkZWYgZW51bSB7CiAgICAgUHVzaE9yUG9wQXV0b3JlbGVhc2VQb29sLApAQCAtNDY1LDcgKzQ1
NCw3IEBAIHN0YXRpYyB2b2lkIFdlYlJ1bkxvb3BMb2NrSW50ZXJuYWwoQXV0b3JlbGVhc2VQb29s
T3BlcmF0aW9uIHBvb2xPcGVyYXRpb24pCiB7CiAgICAgX1dlYlRocmVhZExvY2soKTsKICAgICBp
ZiAocG9vbE9wZXJhdGlvbiA9PSBQdXNoT3JQb3BBdXRvcmVsZWFzZVBvb2wpCi0gICAgICAgIGF1
dG9yZWxlYXNlUG9vbE1hcmsgPSBOU1B1c2hBdXRvcmVsZWFzZVBvb2woMCk7CisgICAgICAgIGF1
dG9yZWxlYXNlUG9vbE1hcmsgPSBvYmpjX2F1dG9yZWxlYXNlUG9vbFB1c2goKTsKICAgICBpc1dl
YlRocmVhZExvY2tlZCA9IFlFUzsKIH0KIApAQCAtNDc5LDcgKzQ2OCw3IEBAIHN0YXRpYyB2b2lk
IFdlYlJ1bkxvb3BVbmxvY2tJbnRlcm5hbChBdXRvcmVsZWFzZVBvb2xPcGVyYXRpb24gcG9vbE9w
ZXJhdGlvbikKICAgICB9CiAKICAgICBpZiAocG9vbE9wZXJhdGlvbiA9PSBQdXNoT3JQb3BBdXRv
cmVsZWFzZVBvb2wpCi0gICAgICAgIE5TUG9wQXV0b3JlbGVhc2VQb29sKGF1dG9yZWxlYXNlUG9v
bE1hcmspOworICAgICAgICBvYmpjX2F1dG9yZWxlYXNlUG9vbFBvcChhdXRvcmVsZWFzZVBvb2xN
YXJrKTsKIAogICAgIF9XZWJUaHJlYWRVbmxvY2soKTsKICAgICBpc1dlYlRocmVhZExvY2tlZCA9
IE5POwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jb2NvYS9S
ZXNvdXJjZVJlc3BvbnNlQ29jb2EubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3Jr
L2NvY29hL1Jlc291cmNlUmVzcG9uc2VDb2NvYS5tbQppbmRleCAzZDhmMzk2ZDgwN2M5MmExMjU2
NWM5YmFjZGUxNWJlNzIyYTZmOTFjLi4zMDFkYTFlZGQ3ZTY1ZWNkMTQ1Mzg2ZmU2NmYwY2Y5OTQ2
MmMzOWI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NvY29h
L1Jlc291cmNlUmVzcG9uc2VDb2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9u
ZXR3b3JrL2NvY29hL1Jlc291cmNlUmVzcG9uc2VDb2NvYS5tbQpAQCAtMzMsNyArMzMsNiBAQAog
I2ltcG9ydCA8Rm91bmRhdGlvbi9Gb3VuZGF0aW9uLmg+CiAjaW1wb3J0IDxsaW1pdHM+CiAjaW1w
b3J0IDxwYWwvc3BpL2NmL0NGTmV0d29ya1NQSS5oPgotI2ltcG9ydCA8d3RmL0F1dG9kcmFpbmVk
UG9vbC5oPgogI2ltcG9ydCA8d3RmL05ldmVyRGVzdHJveWVkLmg+CiAjaW1wb3J0IDx3dGYvU3Rk
TGliRXh0cmFzLmg+CiAjaW1wb3J0IDx3dGYvY2YvVHlwZUNhc3RzQ0YuaD4KQEAgLTE3NSwyNiAr
MTc0LDI4IEBAIHZvaWQgUmVzb3VyY2VSZXNwb25zZTo6cGxhdGZvcm1MYXp5SW5pdChJbml0TGV2
ZWwgaW5pdExldmVsKQogICAgIGlmIChtX2lzTnVsbCB8fCAhbV9uc1Jlc3BvbnNlKQogICAgICAg
ICByZXR1cm47CiAgICAgCi0gICAgQXV0b2RyYWluZWRQb29sIHBvb2w7CisgICAgQGF1dG9yZWxl
YXNlcG9vbCB7CiAKLSAgICBOU0hUVFBVUkxSZXNwb25zZSAqaHR0cFJlc3BvbnNlID0gW21fbnNS
ZXNwb25zZS5nZXQoKSBpc0tpbmRPZkNsYXNzOltOU0hUVFBVUkxSZXNwb25zZSBjbGFzc11dID8g
KE5TSFRUUFVSTFJlc3BvbnNlICopbV9uc1Jlc3BvbnNlLmdldCgpIDogbnVsbHB0cjsKKyAgICAg
ICAgTlNIVFRQVVJMUmVzcG9uc2UgKmh0dHBSZXNwb25zZSA9IFttX25zUmVzcG9uc2UuZ2V0KCkg
aXNLaW5kT2ZDbGFzczpbTlNIVFRQVVJMUmVzcG9uc2UgY2xhc3NdXSA/IChOU0hUVFBVUkxSZXNw
b25zZSAqKW1fbnNSZXNwb25zZS5nZXQoKSA6IG51bGxwdHI7CisKKyAgICAgICAgaWYgKG1faW5p
dExldmVsIDwgQ29tbW9uRmllbGRzT25seSkgeworICAgICAgICAgICAgbV91cmwgPSBbbV9uc1Jl
c3BvbnNlLmdldCgpIFVSTF07CisgICAgICAgICAgICBtX21pbWVUeXBlID0gW21fbnNSZXNwb25z
ZS5nZXQoKSBNSU1FVHlwZV07CisgICAgICAgICAgICBtX2V4cGVjdGVkQ29udGVudExlbmd0aCA9
IFttX25zUmVzcG9uc2UuZ2V0KCkgZXhwZWN0ZWRDb250ZW50TGVuZ3RoXTsKKyAgICAgICAgICAg
IC8vIFN0cmlwcGluZyBkb3VibGUgcXVvdGVzIGFzIGEgd29ya2Fyb3VuZCBmb3IgPHJkYXI6Ly9w
cm9ibGVtLzg3NTcwODg+LCBjYW4gYmUgcmVtb3ZlZCBvbmNlIHRoYXQgaXMgZml4ZWQuCisgICAg
ICAgICAgICBtX3RleHRFbmNvZGluZ05hbWUgPSBzdHJpcExlYWRpbmdBbmRUcmFpbGluZ0RvdWJs
ZVF1b3RlKFttX25zUmVzcG9uc2UuZ2V0KCkgdGV4dEVuY29kaW5nTmFtZV0pOworICAgICAgICAg
ICAgbV9odHRwU3RhdHVzQ29kZSA9IGh0dHBSZXNwb25zZSA/IFtodHRwUmVzcG9uc2Ugc3RhdHVz
Q29kZV0gOiAwOworICAgICAgICB9CisgICAgICAgIGlmIChodHRwUmVzcG9uc2UpIHsKKyAgICAg
ICAgICAgIGlmIChpbml0TGV2ZWwgPT0gQWxsRmllbGRzKSB7CisgICAgICAgICAgICAgICAgYXV0
byBtZXNzYWdlUmVmID0gQ0ZVUkxSZXNwb25zZUdldEhUVFBSZXNwb25zZShbaHR0cFJlc3BvbnNl
IF9DRlVSTFJlc3BvbnNlXSk7CisgICAgICAgICAgICAgICAgbV9odHRwU3RhdHVzVGV4dCA9IGV4
dHJhY3RIVFRQU3RhdHVzVGV4dChtZXNzYWdlUmVmKTsKKyAgICAgICAgICAgICAgICBtX2h0dHBW
ZXJzaW9uID0gU3RyaW5nKGFkb3B0Q0YoQ0ZIVFRQTWVzc2FnZUNvcHlWZXJzaW9uKG1lc3NhZ2VS
ZWYpKS5nZXQoKSkuY29udmVydFRvQVNDSUlVcHBlcmNhc2UoKTsKKyAgICAgICAgICAgICAgICBp
bml0aWFsaXplSFRUUEhlYWRlcnMoT25seUNvbW1vbkhlYWRlcnM6Ok5vLCBodHRwUmVzcG9uc2Us
IG1faHR0cEhlYWRlckZpZWxkcyk7CisgICAgICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgICAg
ICBpbml0aWFsaXplSFRUUEhlYWRlcnMoT25seUNvbW1vbkhlYWRlcnM6OlllcywgaHR0cFJlc3Bv
bnNlLCBtX2h0dHBIZWFkZXJGaWVsZHMpOworICAgICAgICB9CiAKLSAgICBpZiAobV9pbml0TGV2
ZWwgPCBDb21tb25GaWVsZHNPbmx5KSB7Ci0gICAgICAgIG1fdXJsID0gW21fbnNSZXNwb25zZS5n
ZXQoKSBVUkxdOwotICAgICAgICBtX21pbWVUeXBlID0gW21fbnNSZXNwb25zZS5nZXQoKSBNSU1F
VHlwZV07Ci0gICAgICAgIG1fZXhwZWN0ZWRDb250ZW50TGVuZ3RoID0gW21fbnNSZXNwb25zZS5n
ZXQoKSBleHBlY3RlZENvbnRlbnRMZW5ndGhdOwotICAgICAgICAvLyBTdHJpcHBpbmcgZG91Ymxl
IHF1b3RlcyBhcyBhIHdvcmthcm91bmQgZm9yIDxyZGFyOi8vcHJvYmxlbS84NzU3MDg4PiwgY2Fu
IGJlIHJlbW92ZWQgb25jZSB0aGF0IGlzIGZpeGVkLgotICAgICAgICBtX3RleHRFbmNvZGluZ05h
bWUgPSBzdHJpcExlYWRpbmdBbmRUcmFpbGluZ0RvdWJsZVF1b3RlKFttX25zUmVzcG9uc2UuZ2V0
KCkgdGV4dEVuY29kaW5nTmFtZV0pOwotICAgICAgICBtX2h0dHBTdGF0dXNDb2RlID0gaHR0cFJl
c3BvbnNlID8gW2h0dHBSZXNwb25zZSBzdGF0dXNDb2RlXSA6IDA7Ci0gICAgfQotICAgIGlmICho
dHRwUmVzcG9uc2UpIHsKLSAgICAgICAgaWYgKGluaXRMZXZlbCA9PSBBbGxGaWVsZHMpIHsKLSAg
ICAgICAgICAgIGF1dG8gbWVzc2FnZVJlZiA9IENGVVJMUmVzcG9uc2VHZXRIVFRQUmVzcG9uc2Uo
W2h0dHBSZXNwb25zZSBfQ0ZVUkxSZXNwb25zZV0pOwotICAgICAgICAgICAgbV9odHRwU3RhdHVz
VGV4dCA9IGV4dHJhY3RIVFRQU3RhdHVzVGV4dChtZXNzYWdlUmVmKTsKLSAgICAgICAgICAgIG1f
aHR0cFZlcnNpb24gPSBTdHJpbmcoYWRvcHRDRihDRkhUVFBNZXNzYWdlQ29weVZlcnNpb24obWVz
c2FnZVJlZikpLmdldCgpKS5jb252ZXJ0VG9BU0NJSVVwcGVyY2FzZSgpOwotICAgICAgICAgICAg
aW5pdGlhbGl6ZUhUVFBIZWFkZXJzKE9ubHlDb21tb25IZWFkZXJzOjpObywgaHR0cFJlc3BvbnNl
LCBtX2h0dHBIZWFkZXJGaWVsZHMpOwotICAgICAgICB9IGVsc2UKLSAgICAgICAgICAgIGluaXRp
YWxpemVIVFRQSGVhZGVycyhPbmx5Q29tbW9uSGVhZGVyczo6WWVzLCBodHRwUmVzcG9uc2UsIG1f
aHR0cEhlYWRlckZpZWxkcyk7CiAgICAgfQogCiAgICAgbV9pbml0TGV2ZWwgPSBpbml0TGV2ZWw7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DYXJib24vQ2FyYm9uVXRpbHMu
bSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NhcmJvbi9DYXJib25VdGlscy5tCmluZGV4IGFm
MTk3YzczNzk5MTFmOGJiZjA3YjIyNzk5ODQzNTkzNGMyNTY4MzkuLmZmMTRiM2MwZmYwNzg4MWQw
YmE0Y2U0NmZhZTAyMTczYjhhYzNjMDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL0NhcmJvbi9DYXJib25VdGlscy5tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0Nh
cmJvbi9DYXJib25VdGlscy5tCkBAIC0yOSwxMyArMjksMTMgQEAKICNpZm5kZWYgX19MUDY0X18K
IAogI2luY2x1ZGUgIkNhcmJvblV0aWxzLmgiCi0jaW1wb3J0IDxwYWwvc3BpL2NvY29hL0ZvdW5k
YXRpb25TUEkuaD4KKyNpbXBvcnQgPHd0Zi9zcGkvY29jb2EvRm91bmRhdGlvblNQSS5oPgogCiBl
eHRlcm4gQ0dJbWFnZVJlZiBfTlNDcmVhdGVJbWFnZVJlZiggdW5zaWduZWQgY2hhciAqY29uc3Qg
Yml0bWFwRGF0YVs1XSwgaW50IHBpeGVsc1dpZGUsIGludCBwaXhlbHNIaWdoLCBpbnQgYml0c1Bl
clNhbXBsZSwgaW50IHNhbXBsZXNQZXJQaXhlbCwgaW50IGJpdHNQZXJQaXhlbCwgaW50IGJ5dGVz
UGVyUm93LCBCT09MIGlzUGxhbmFyLCBCT09MIGhhc0FscGhhLCBOU1N0cmluZyAqY29sb3JTcGFj
ZU5hbWUsIENHQ29sb3JTcGFjZVJlZiBjdXN0b21Db2xvclNwYWNlLCBpZCBzb3VyY2VPYmopOwog
CiBzdGF0aWMgdm9pZAkJCQlQb29sQ2xlYW5lciggRXZlbnRMb29wVGltZXJSZWYgaW5UaW1lciwg
RXZlbnRMb29wSWRsZVRpbWVyTWVzc2FnZSBpblN0YXRlLCB2b2lkICppblVzZXJEYXRhICk7CiAK
LXN0YXRpYyBOU0F1dG9yZWxlYXNlUG9vbCoJc1Bvb2w7CitzdGF0aWMgdm9pZCogc1Bvb2w7CiBz
dGF0aWMgdW5zaWduZWQgbnVtUG9vbHM7CiBzdGF0aWMgRXZlbnRMb29wUmVmIHBvb2xMb29wOwog
CkBAIC00Myw5ICs0Myw5IEBACiAKIHN0YXRpYyB1bnNpZ25lZCBnZXROU0F1dG9yZWxlYXNlUG9v
bENvdW50KHZvaWQpCiB7Ci0gICAgdm9pZCogdiA9IE5TUHVzaEF1dG9yZWxlYXNlUG9vbCgwKTsK
KyAgICB2b2lkKiB2ID0gb2JqY19hdXRvcmVsZWFzZVBvb2xQdXNoKCk7CiAgICAgdWludHB0cl90
IG51bVBvb2xzID0gKHVpbnRwdHJfdCl2OwotICAgIE5TUG9wQXV0b3JlbGVhc2VQb29sKHYpOwor
ICAgIG9iamNfYXV0b3JlbGVhc2VQb29sUG9wKHYpOwogICAgIHJldHVybiBudW1Qb29sczsKIH0K
IApAQCAtNjMsNyArNjMsNyBAQCBzdGF0aWMgdW5zaWduZWQgZ2V0TlNBdXRvcmVsZWFzZVBvb2xD
b3VudCh2b2lkKQogICAgICAgICBHZXRDdXJyZW50UHJvY2VzcyggJnByb2Nlc3MgKTsgCiAgICAg
ICAgIE5TQXBwbGljYXRpb25Mb2FkKCk7CiAgICAgICAgICAgICAgICAgCi0gICAgICAgIHNQb29s
ID0gW1tOU0F1dG9yZWxlYXNlUG9vbCBhbGxvY1dpdGhab25lOk5VTExdIGluaXRdOworICAgICAg
ICBzUG9vbCA9IG9iamNfYXV0b3JlbGVhc2VQb29sUHVzaCgpOwogICAgICAgICBudW1Qb29scyA9
IGdldE5TQXV0b3JlbGVhc2VQb29sQ291bnQoKTsKICAgICAgICAgCiAgICAgICAgIHBvb2xMb29w
ID0gR2V0Q3VycmVudEV2ZW50TG9vcCAoKTsKQEAgLTk1LDkgKzk1LDggQEAgc3RhdGljIHVuc2ln
bmVkIGdldE5TQXV0b3JlbGVhc2VQb29sQ291bnQodm9pZCkKICAgICAgICAgaWYgKCBDRkVxdWFs
KCBtb2RlLCBrQ0ZSdW5Mb29wRGVmYXVsdE1vZGUgKSAmJiB0aGlzTG9vcCA9PSBwb29sTG9vcCkg
ewogICAgICAgICAgICAgdW5zaWduZWQgY3VycmVudE51bVBvb2xzID0gZ2V0TlNBdXRvcmVsZWFz
ZVBvb2xDb3VudCgpLTE7ICAgICAgICAgICAgCiAgICAgICAgICAgICBpZiAoY3VycmVudE51bVBv
b2xzID09IG51bVBvb2xzKXsKLSAgICAgICAgICAgICAgICBbc1Bvb2wgZHJhaW5dOwotICAgICAg
ICAgICAgICAgIAotICAgICAgICAgICAgICAgIHNQb29sID0gW1tOU0F1dG9yZWxlYXNlUG9vbCBh
bGxvY1dpdGhab25lOk5VTExdIGluaXRdOworICAgICAgICAgICAgICAgIG9iamNfYXV0b3JlbGVh
c2VQb29sUG9wKHNQb29sKTsKKyAgICAgICAgICAgICAgICBzUG9vbCA9IG9iamNfYXV0b3JlbGVh
c2VQb29sUHVzaCgpOwogICAgICAgICAgICAgICAgIG51bVBvb2xzID0gZ2V0TlNBdXRvcmVsZWFz
ZVBvb2xDb3VudCgpOwogICAgICAgICAgICAgfQogICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0TGVnYWN5L21hYy9IaXN0b3J5L1dlYkhpc3RvcnkubW0gYi9Tb3VyY2UvV2ViS2l0
TGVnYWN5L21hYy9IaXN0b3J5L1dlYkhpc3RvcnkubW0KaW5kZXggOWNmOGE4ZTkwN2VjOTJiODM2
OWQzZjFhMWEyY2JhNWJkMTliMTJhMS4uMTM4MzJlMWE1MjdmZWIwNjk5YmYwNTgwY2E4YTdmOTlk
YTUyYWViOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvSGlzdG9yeS9XZWJI
aXN0b3J5Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0hpc3RvcnkvV2ViSGlzdG9y
eS5tbQpAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDUsIDIwMDgsIDIw
MDkgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA1
LTIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAog
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCkBAIC01OTEsNDEgKzU5MSwzNCBAQCAtIChCT09MKWxvYWRIaXN0b3J5R3V0
c0Zyb21VUkw6KE5TVVJMICopVVJMIHNhdmVkSXRlbXNDb3VudDooaW50ICopbnVtYmVyT2ZJdGVt
cwogCiAgICAgaW50IGl0ZW1Db3VudExpbWl0ID0gW3NlbGYgaGlzdG9yeUl0ZW1MaW1pdF07CiAg
ICAgTlNUaW1lSW50ZXJ2YWwgYWdlTGltaXREYXRlID0gW1tzZWxmIGFnZUxpbWl0RGF0ZV0gdGlt
ZUludGVydmFsU2luY2VSZWZlcmVuY2VEYXRlXTsKLSAgICBOU0VudW1lcmF0b3IgKmVudW1lcmF0
b3IgPSBbYXJyYXkgb2JqZWN0RW51bWVyYXRvcl07CiAgICAgQk9PTCBhZ2VMaW1pdFBhc3NlZCA9
IE5POwogICAgIEJPT0wgaXRlbUxpbWl0UGFzc2VkID0gTk87CiAgICAgQVNTRVJUKCpudW1iZXJP
Zkl0ZW1zTG9hZGVkID09IDApOwogCi0gICAgTlNBdXRvcmVsZWFzZVBvb2wgKnBvb2wgPSBbW05T
QXV0b3JlbGVhc2VQb29sIGFsbG9jXSBpbml0XTsKLSAgICBOU0RpY3Rpb25hcnkgKml0ZW1Bc0Rp
Y3Rpb25hcnk7Ci0gICAgd2hpbGUgKChpdGVtQXNEaWN0aW9uYXJ5ID0gW2VudW1lcmF0b3IgbmV4
dE9iamVjdF0pICE9IG5pbCkgewotICAgICAgICBXZWJIaXN0b3J5SXRlbSAqaXRlbSA9IFtbV2Vi
SGlzdG9yeUl0ZW0gYWxsb2NdIGluaXRGcm9tRGljdGlvbmFyeVJlcHJlc2VudGF0aW9uOml0ZW1B
c0RpY3Rpb25hcnldOwotCi0gICAgICAgIC8vIGl0ZW0gd2l0aG91dCBVUkwgaXMgdXNlbGVzczsg
ZGF0YSBvbiBkaXNrIG11c3QgaGF2ZSBiZWVuIGJhZDsgaWdub3JlCi0gICAgICAgIGlmIChbaXRl
bSBVUkxTdHJpbmddKSB7Ci0gICAgICAgICAgICAvLyBUZXN0IGFnYWluc3QgZGF0ZSBsaW1pdC4g
U2luY2UgdGhlIGl0ZW1zIGFyZSBvcmRlcmVkIG5ld2VzdCB0byBvbGRlc3QsIHdlIGNhbiBzdG9w
IGNvbXBhcmluZwotICAgICAgICAgICAgLy8gb25jZSB3ZSd2ZSBmb3VuZCB0aGUgZmlyc3QgaXRl
bSB0aGF0J3MgdG9vIG9sZC4KLSAgICAgICAgICAgIGlmICghYWdlTGltaXRQYXNzZWQgJiYgW2l0
ZW0gbGFzdFZpc2l0ZWRUaW1lSW50ZXJ2YWxdIDw9IGFnZUxpbWl0RGF0ZSkKLSAgICAgICAgICAg
ICAgICBhZ2VMaW1pdFBhc3NlZCA9IFlFUzsKLQotICAgICAgICAgICAgaWYgKGFnZUxpbWl0UGFz
c2VkIHx8IGl0ZW1MaW1pdFBhc3NlZCkKLSAgICAgICAgICAgICAgICBbZGlzY2FyZGVkSXRlbXMg
YWRkT2JqZWN0Oml0ZW1dOwotICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAgICAgaWYg
KFtzZWxmIGFkZEl0ZW06aXRlbSBkaXNjYXJkRHVwbGljYXRlOllFU10pCi0gICAgICAgICAgICAg
ICAgICAgICsrKCpudW1iZXJPZkl0ZW1zTG9hZGVkKTsKLSAgICAgICAgICAgICAgICBpZiAoKm51
bWJlck9mSXRlbXNMb2FkZWQgPT0gaXRlbUNvdW50TGltaXQpCi0gICAgICAgICAgICAgICAgICAg
IGl0ZW1MaW1pdFBhc3NlZCA9IFlFUzsKLQotICAgICAgICAgICAgICAgIC8vIERyYWluaW5nIHRo
ZSBhdXRvcmVsZWFzZSBwb29sIGV2ZXJ5IDUwIGl0ZXJhdGlvbnMgd2FzIGZvdW5kIGJ5IGV4cGVy
aW1lbnRhdGlvbiB0byBiZSBvcHRpbWFsCi0gICAgICAgICAgICAgICAgaWYgKCpudW1iZXJPZkl0
ZW1zTG9hZGVkICUgNTAgPT0gMCkgewotICAgICAgICAgICAgICAgICAgICBbcG9vbCBkcmFpbl07
Ci0gICAgICAgICAgICAgICAgICAgIHBvb2wgPSBbW05TQXV0b3JlbGVhc2VQb29sIGFsbG9jXSBp
bml0XTsKKyAgICBmb3IgKE5TRGljdGlvbmFyeSAqaXRlbUFzRGljdGlvbmFyeSBpbiBhcnJheSkg
eworICAgICAgICBAYXV0b3JlbGVhc2Vwb29sIHsKKyAgICAgICAgICAgIFdlYkhpc3RvcnlJdGVt
ICppdGVtID0gW1tXZWJIaXN0b3J5SXRlbSBhbGxvY10gaW5pdEZyb21EaWN0aW9uYXJ5UmVwcmVz
ZW50YXRpb246aXRlbUFzRGljdGlvbmFyeV07CisKKyAgICAgICAgICAgIC8vIGl0ZW0gd2l0aG91
dCBVUkwgaXMgdXNlbGVzczsgZGF0YSBvbiBkaXNrIG11c3QgaGF2ZSBiZWVuIGJhZDsgaWdub3Jl
CisgICAgICAgICAgICBpZiAoW2l0ZW0gVVJMU3RyaW5nXSkgeworICAgICAgICAgICAgICAgIC8v
IFRlc3QgYWdhaW5zdCBkYXRlIGxpbWl0LiBTaW5jZSB0aGUgaXRlbXMgYXJlIG9yZGVyZWQgbmV3
ZXN0IHRvIG9sZGVzdCwgd2UgY2FuIHN0b3AgY29tcGFyaW5nCisgICAgICAgICAgICAgICAgLy8g
b25jZSB3ZSd2ZSBmb3VuZCB0aGUgZmlyc3QgaXRlbSB0aGF0J3MgdG9vIG9sZC4KKyAgICAgICAg
ICAgICAgICBpZiAoIWFnZUxpbWl0UGFzc2VkICYmIFtpdGVtIGxhc3RWaXNpdGVkVGltZUludGVy
dmFsXSA8PSBhZ2VMaW1pdERhdGUpCisgICAgICAgICAgICAgICAgICAgIGFnZUxpbWl0UGFzc2Vk
ID0gWUVTOworCisgICAgICAgICAgICAgICAgaWYgKGFnZUxpbWl0UGFzc2VkIHx8IGl0ZW1MaW1p
dFBhc3NlZCkKKyAgICAgICAgICAgICAgICAgICAgW2Rpc2NhcmRlZEl0ZW1zIGFkZE9iamVjdDpp
dGVtXTsKKyAgICAgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgaWYgKFtz
ZWxmIGFkZEl0ZW06aXRlbSBkaXNjYXJkRHVwbGljYXRlOllFU10pCisgICAgICAgICAgICAgICAg
ICAgICAgICArKygqbnVtYmVyT2ZJdGVtc0xvYWRlZCk7CisgICAgICAgICAgICAgICAgICAgIGlm
ICgqbnVtYmVyT2ZJdGVtc0xvYWRlZCA9PSBpdGVtQ291bnRMaW1pdCkKKyAgICAgICAgICAgICAg
ICAgICAgICAgIGl0ZW1MaW1pdFBhc3NlZCA9IFlFUzsKICAgICAgICAgICAgICAgICB9CiAgICAg
ICAgICAgICB9CisKKyAgICAgICAgICAgIFtpdGVtIHJlbGVhc2VdOwogICAgICAgICB9Ci0gICAg
ICAgIFtpdGVtIHJlbGVhc2VdOwogICAgIH0KLSAgICBbcG9vbCBkcmFpbl07CiAKICAgICByZXR1
cm4gWUVTOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9X
ZWJWaWV3Lm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCmlu
ZGV4IDBlMmY3YzI3YzExOGIxZjMyNDhlYTZmMDAxNzM0YzlkY2I4ZTYxMmYuLjQwNzdlOTFhYjEy
ZDdmYjA3Yjc0MGNkMDU5MWUyOWI2ZmRhODFhZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21h
Yy9XZWJWaWV3L1dlYlZpZXcubW0KQEAgLTc5MDMsMjggKzc5MDMsMjEgQEAgLSAoTlNBcnJheSAq
KXJlY3RzRm9yVGV4dE1hdGNoZXMKICAgICAgICAgaWYgKFt2aWV3IGNvbmZvcm1zVG9Qcm90b2Nv
bDpAcHJvdG9jb2woV2ViTXVsdGlwbGVUZXh0TWF0Y2hlcyldKSB7CiAgICAgICAgICAgICBOU1Zp
ZXcgPFdlYk11bHRpcGxlVGV4dE1hdGNoZXM+ICpkb2N1bWVudFZpZXcgPSAoTlNWaWV3IDxXZWJN
dWx0aXBsZVRleHRNYXRjaGVzPiAqKXZpZXc7CiAgICAgICAgICAgICBOU1JlY3QgZG9jdW1lbnRW
aWV3VmlzaWJsZVJlY3QgPSBbZG9jdW1lbnRWaWV3IHZpc2libGVSZWN0XTsKLSAgICAgICAgICAg
IE5TQXJyYXkgKm9yaWdpbmFsUmVjdHMgPSBbZG9jdW1lbnRWaWV3IHJlY3RzRm9yVGV4dE1hdGNo
ZXNdOwotICAgICAgICAgICAgdW5zaWduZWQgcmVjdENvdW50ID0gW29yaWdpbmFsUmVjdHMgY291
bnRdOwotICAgICAgICAgICAgdW5zaWduZWQgcmVjdEluZGV4OwotICAgICAgICAgICAgTlNBdXRv
cmVsZWFzZVBvb2wgKnBvb2wgPSBbW05TQXV0b3JlbGVhc2VQb29sIGFsbG9jXSBpbml0XTsKLSAg
ICAgICAgICAgIGZvciAocmVjdEluZGV4ID0gMDsgcmVjdEluZGV4IDwgcmVjdENvdW50OyArK3Jl
Y3RJbmRleCkgewotICAgICAgICAgICAgICAgIE5TUmVjdCByID0gW1tvcmlnaW5hbFJlY3RzIG9i
amVjdEF0SW5kZXg6cmVjdEluZGV4XSByZWN0VmFsdWVdOworICAgICAgICAgICAgZm9yIChOU1Zh
bHVlICpyZWN0IGluIFtkb2N1bWVudFZpZXcgcmVjdHNGb3JUZXh0TWF0Y2hlc10pIHsKKyAgICAg
ICAgICAgICAgICBOU1JlY3QgciA9IFtyZWN0IHJlY3RWYWx1ZV07CiAgICAgICAgICAgICAgICAg
Ly8gQ2xpcCByZWN0IHRvIGRvY3VtZW50IHZpZXcncyB2aXNpYmxlIHJlY3Qgc28gcmVjdCBpcyBj
b25maW5lZCB0byBzdWJmcmFtZQogICAgICAgICAgICAgICAgIHIgPSBOU0ludGVyc2VjdGlvblJl
Y3QociwgZG9jdW1lbnRWaWV3VmlzaWJsZVJlY3QpOwogICAgICAgICAgICAgICAgIGlmIChOU0lz
RW1wdHlSZWN0KHIpKQogICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICAg
ICAgICAKLSAgICAgICAgICAgICAgICAvLyBDb252ZXJ0IHJlY3QgdG8gb3VyIGNvb3JkaW5hdGUg
c3lzdGVtCi0gICAgICAgICAgICAgICAgciA9IFtkb2N1bWVudFZpZXcgY29udmVydFJlY3Q6ciB0
b1ZpZXc6c2VsZl07Ci0gICAgICAgICAgICAgICAgW3Jlc3VsdCBhZGRPYmplY3Q6W05TVmFsdWUg
dmFsdWVXaXRoUmVjdDpyXV07Ci0gICAgICAgICAgICAgICAgaWYgKHJlY3RJbmRleCAlIDEwID09
IDApIHsKLSAgICAgICAgICAgICAgICAgICAgW3Bvb2wgZHJhaW5dOwotICAgICAgICAgICAgICAg
ICAgICBwb29sID0gW1tOU0F1dG9yZWxlYXNlUG9vbCBhbGxvY10gaW5pdF07CisKKyAgICAgICAg
ICAgICAgICBAYXV0b3JlbGVhc2Vwb29sIHsKKyAgICAgICAgICAgICAgICAgICAgLy8gQ29udmVy
dCByZWN0IHRvIG91ciBjb29yZGluYXRlIHN5c3RlbQorICAgICAgICAgICAgICAgICAgICByID0g
W2RvY3VtZW50VmlldyBjb252ZXJ0UmVjdDpyIHRvVmlldzpzZWxmXTsKKyAgICAgICAgICAgICAg
ICAgICAgW3Jlc3VsdCBhZGRPYmplY3Q6W05TVmFsdWUgdmFsdWVXaXRoUmVjdDpyXV07CiAgICAg
ICAgICAgICAgICAgfQogICAgICAgICAgICAgfQotICAgICAgICAgICAgW3Bvb2wgZHJhaW5dOwog
ICAgICAgICB9Ci0gICAgICAgIAorCiAgICAgICAgIGZyYW1lID0gaW5jcmVtZW50RnJhbWUoZnJh
bWUpOwogICAgIH0gd2hpbGUgKGZyYW1lKTsKICAgICAKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5n
ZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCAxNGI4MDZlYzlmM2QzNTM3Y2NjM2QzZTQxMDVj
ZDU2ODg3OGZkODQ2Li41NjI0MTM2ZWM3MDc1N2Y2OGZkZDg1MzA1NzQxNjBlYjVlODg3ZjRlIDEw
MDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTggQEAKKzIwMTgtMDYtMDggIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgorCisg
ICAgICAgIFtDb2NvYV0gUmVtb3ZlIGFsbCB1c2VzIG9mIE5TQXV0b3JlbGVhc2VQb29sIGFzIHBh
cnQgb2YgcHJlcGFyYXRpb24gZm9yIEFSQworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTg2NDM2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQW5kZXJzIENh
cmxzc29uLgorCisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRPYmpDL0N1c3Rv
bVByb3RvY29sc1Rlc3QubW06CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjpXZWJLaXQyQ3VzdG9t
UHJvdG9jb2xzVGVzdF9Qcm9jZXNzUG9vbERlc3Ryb3llZER1cmluZ0xvYWRpbmcpOgorICAgICAg
ICBVc2UgQGF1dG9yZWxlYXNlcG9vbC4KKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL21h
Yy9NZW51VHlwZXNGb3JNb3VzZUV2ZW50cy5tbToKKyAgICAgICAgKFRlc3RXZWJLaXRBUEk6OmJ1
aWxkQW5kUGVyZm9ybVRlc3QpOiBEaXR0by4KKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3Rz
L21hYy9TdG9wTG9hZGluZ0Zyb21EaWRGaW5pc2hMb2FkaW5nLm1tOgorICAgICAgICAoVGVzdFdl
YktpdEFQSTo6V2ViS2l0TGVnYWN5X1N0b3BMb2FkaW5nRnJvbURpZEZpbmlzaExvYWRpbmcpOiBE
aXR0by4KKwogMjAxOC0wNi0wOCAgQWxpY2lhIEJveWEgR2FyY8OtYSAgPGFib3lhQGlnYWxpYS5j
b20+CiAKICAgICAgICAgW0dUS10gVXBkYXRlIHRvIGxpYnZhLTIuMS4wIGluIGpoYnVpbGQKZGlm
ZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0T2JqQy9DdXN0b21Qcm90
b2NvbHNUZXN0Lm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRPYmpDL0N1c3Rv
bVByb3RvY29sc1Rlc3QubW0KaW5kZXggYTZlZTE2NmVmYzAxNmY3NTgwYjFmODlkZTUyYTk1MmI4
ODNmMTJhNS4uNTg5YzNkMDRlZGFiZGY4NTVhMGU4MjM4NTM5NzAwODk4NjJiZGYwNyAxMDA2NDQK
LS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRPYmpDL0N1c3RvbVByb3RvY29s
c1Rlc3QubW0KKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRPYmpDL0N1c3Rv
bVByb3RvY29sc1Rlc3QubW0KQEAgLTM0LDcgKzM0LDYgQEAKICNpbXBvcnQgIlRlc3RQcm90b2Nv
bC5oIgogI2ltcG9ydCA8V2ViS2l0L1dLQ29udGV4dFByaXZhdGUuaD4KICNpbXBvcnQgPFdlYktp
dC9XS1Byb2Nlc3NHcm91cFByaXZhdGUuaD4KLSNpbXBvcnQgPHd0Zi9BdXRvZHJhaW5lZFBvb2wu
aD4KICNpbXBvcnQgPHd0Zi9SZXRhaW5QdHIuaD4KIAogI2lmIFdLX0FQSV9FTkFCTEVEICYmIFBM
QVRGT1JNKE1BQykKQEAgLTE3MSw4ICsxNzAsNyBAQCBURVNUKFdlYktpdDJDdXN0b21Qcm90b2Nv
bHNUZXN0LCBQcm9jZXNzUG9vbERlc3Ryb3llZER1cmluZ0xvYWRpbmcpCiB7CiAgICAgW1Byb2Nl
c3NQb29sRGVzdHJveWVkRHVyaW5nTG9hZGluZ1Byb3RvY29sIHJlZ2lzdGVyV2l0aFNjaGVtZTpA
ImN1c3RvbSJdOwogCi0gICAgewotICAgICAgICBBdXRvZHJhaW5lZFBvb2wgcG9vbDsKKyAgICBA
YXV0b3JlbGVhc2Vwb29sIHsKICAgICAgICAgYXV0byBicm93c2luZ0NvbnRleHRHcm91cCA9IGFk
b3B0TlMoW1tXS0Jyb3dzaW5nQ29udGV4dEdyb3VwIGFsbG9jXSBpbml0V2l0aElkZW50aWZpZXI6
QCJUZXN0SWRlbnRpZmllciJdKTsKICAgICAgICAgYXV0byBwcm9jZXNzR3JvdXAgPSBhZG9wdE5T
KFtbV0tQcm9jZXNzR3JvdXAgYWxsb2NdIGluaXRdKTsKICAgICAgICAgYXV0byB3a1ZpZXcgPSBh
ZG9wdE5TKFtbV0tWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgODAw
LCA2MDApIHByb2Nlc3NHcm91cDpwcm9jZXNzR3JvdXAuZ2V0KCkgYnJvd3NpbmdDb250ZXh0R3Jv
dXA6YnJvd3NpbmdDb250ZXh0R3JvdXAuZ2V0KCldKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RX
ZWJLaXRBUEkvVGVzdHMvbWFjL01lbnVUeXBlc0Zvck1vdXNlRXZlbnRzLm1tIGIvVG9vbHMvVGVz
dFdlYktpdEFQSS9UZXN0cy9tYWMvTWVudVR5cGVzRm9yTW91c2VFdmVudHMubW0KaW5kZXggNzAw
MjU0ZTRkYWZjYjcyZmNiNjY0NDA5OWJhNWVhN2YzODQzZWVkMC4uYzkxYjA5ZjcyYjk0NzFkNjU4
NDI1YTMwN2MwZTM1ZjBlZGVlNTNhOCAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0cy9tYWMvTWVudVR5cGVzRm9yTW91c2VFdmVudHMubW0KKysrIGIvVG9vbHMvVGVzdFdlYktp
dEFQSS9UZXN0cy9tYWMvTWVudVR5cGVzRm9yTW91c2VFdmVudHMubW0KQEAgLTI5LDcgKzI5LDYg
QEAKICNpbXBvcnQgPENhcmJvbi9DYXJib24uaD4gLy8gRm9yIEdldEN1cnJlbnRFdmVudFRpbWUK
ICNpbXBvcnQgPFdlYkNvcmUvUGxhdGZvcm1FdmVudEZhY3RvcnlNYWMuaD4KICNpbXBvcnQgPHBh
bC9zcGkvbWFjL05TTWVudVNQSS5oPgotI2ltcG9ydCA8d3RmL0F1dG9kcmFpbmVkUG9vbC5oPgog
I2ltcG9ydCA8d3RmL1JldGFpblB0ci5oPgogI2ltcG9ydCA8d3RmL21hYy9BcHBLaXRDb21wYXRp
YmlsaXR5RGVjbGFyYXRpb25zLmg+CiAKQEAgLTQyLDI1ICs0MSwyNiBAQCBzdGF0aWMgYm9vbCBj
YW5DYWxsTWVudVR5cGVGb3JFdmVudCgpCiAKIHN0YXRpYyB2b2lkIGJ1aWxkQW5kUGVyZm9ybVRl
c3QoTlNFdmVudFR5cGUgYnV0dG9uRXZlbnQsIE5TRXZlbnRNb2RpZmllckZsYWdzIG1vZGlmaWVy
RmxhZ3MsIFdlYkNvcmU6Ok1vdXNlQnV0dG9uIGV4cGVjdGVkQnV0dG9uLCBOU01lbnVUeXBlIGV4
cGVjdGVkTWVudSkKIHsKLSAgICBBdXRvZHJhaW5lZFBvb2wgcG9vbDsKLSAgICBSZXRhaW5QdHI8
V2ViVmlldz4gd2ViVmlldyA9IGFkb3B0TlMoW1tXZWJWaWV3IGFsbG9jXSBpbml0XSk7Ci0gICAg
TlNFdmVudCAqZXZlbnQgPSBbTlNFdmVudCBtb3VzZUV2ZW50V2l0aFR5cGU6YnV0dG9uRXZlbnQK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2NhdGlvbjpOU01ha2VQ
b2ludCgxMDAsIDEwMCkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kaWZp
ZXJGbGFnczptb2RpZmllckZsYWdzCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB0aW1lc3RhbXA6R2V0Q3VycmVudEV2ZW50VGltZSgpCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB3aW5kb3dOdW1iZXI6W1t3ZWJWaWV3IHdpbmRvd10gd2luZG93TnVt
YmVyXQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZXh0OltO
U0dyYXBoaWNzQ29udGV4dCBjdXJyZW50Q29udGV4dF0KLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBldmVudE51bWJlcjowCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGNsaWNrQ291bnQ6MAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHByZXNzdXJlOjBdOwotICAgIAotICAgIGF1dG8gcG1lID0gV2ViQ29yZTo6UGxhdGZv
cm1FdmVudEZhY3Rvcnk6OmNyZWF0ZVBsYXRmb3JtTW91c2VFdmVudChldmVudCwgbmlsLCB3ZWJW
aWV3LmdldCgpKTsKLSAgICAKLSAgICBFWFBFQ1RfRVEoZXhwZWN0ZWRCdXR0b24sIHBtZS5idXR0
b24oKSk7Ci0gICAgRVhQRUNUX1RSVUUoIW1vZGlmaWVyRmxhZ3MgfHwgcG1lLm1vZGlmaWVyRmxh
Z3MoKSAmIG1vZGlmaWVyRmxhZ3MpOwotICAgIEVYUEVDVF9FUShleHBlY3RlZE1lbnUsIHBtZS5t
ZW51VHlwZUZvckV2ZW50KCkpOwotICAgIGlmIChjYW5DYWxsTWVudVR5cGVGb3JFdmVudCgpKQot
ICAgICAgICBFWFBFQ1RfRVEoZXhwZWN0ZWRNZW51LCBbTlNNZW51IG1lbnVUeXBlRm9yRXZlbnQ6
ZXZlbnRdKTsKKyAgICBAYXV0b3JlbGVhc2Vwb29sIHsKKyAgICAgICAgYXV0byB3ZWJWaWV3ID0g
YWRvcHROUyhbW1dlYlZpZXcgYWxsb2NdIGluaXRdKTsKKyAgICAgICAgTlNFdmVudCAqZXZlbnQg
PSBbTlNFdmVudCBtb3VzZUV2ZW50V2l0aFR5cGU6YnV0dG9uRXZlbnQKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9jYXRpb246TlNNYWtlUG9pbnQoMTAwLCAx
MDApCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb2RpZmllckZsYWdz
Om1vZGlmaWVyRmxhZ3MKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB0aW1lc3RhbXA6R2V0Q3VycmVudEV2ZW50VGltZSgpCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgd2luZG93TnVtYmVyOltbd2ViVmlldyB3aW5kb3ddIHdpbmRvd051
bWJlcl0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRl
eHQ6W05TR3JhcGhpY3NDb250ZXh0IGN1cnJlbnRDb250ZXh0XQorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBldmVudE51bWJlcjowCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBjbGlja0NvdW50OjAKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgcHJlc3N1cmU6MF07CisKKyAgICAgICAgYXV0byBwbWUg
PSBXZWJDb3JlOjpQbGF0Zm9ybUV2ZW50RmFjdG9yeTo6Y3JlYXRlUGxhdGZvcm1Nb3VzZUV2ZW50
KGV2ZW50LCBuaWwsIHdlYlZpZXcuZ2V0KCkpOworCisgICAgICAgIEVYUEVDVF9FUShleHBlY3Rl
ZEJ1dHRvbiwgcG1lLmJ1dHRvbigpKTsKKyAgICAgICAgRVhQRUNUX1RSVUUoIW1vZGlmaWVyRmxh
Z3MgfHwgcG1lLm1vZGlmaWVyRmxhZ3MoKSAmIG1vZGlmaWVyRmxhZ3MpOworICAgICAgICBFWFBF
Q1RfRVEoZXhwZWN0ZWRNZW51LCBwbWUubWVudVR5cGVGb3JFdmVudCgpKTsKKyAgICAgICAgaWYg
KGNhbkNhbGxNZW51VHlwZUZvckV2ZW50KCkpCisgICAgICAgICAgICBFWFBFQ1RfRVEoZXhwZWN0
ZWRNZW51LCBbTlNNZW51IG1lbnVUeXBlRm9yRXZlbnQ6ZXZlbnRdKTsKKyAgICB9CiB9CiAKIFRF
U1QoV2ViS2l0TGVnYWN5LCBNZW51QW5kQnV0dG9uRm9yTm9ybWFsTGVmdENsaWNrKQpkaWZmIC0t
Z2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9tYWMvU3RvcExvYWRpbmdGcm9tRGlkRmlu
aXNoTG9hZGluZy5tbSBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvbWFjL1N0b3BMb2FkaW5n
RnJvbURpZEZpbmlzaExvYWRpbmcubW0KaW5kZXggMDhkYzY2MGVjYTYyODcyYmZkNzQxMmZhYWZm
NGJjMDcyMmUyYThjNC4uYzBlMjNjYWMxNjgxYWZiYjdkMWE2YTc1NjNlZmU0YTJhMDIzNmVkNyAx
MDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9tYWMvU3RvcExvYWRpbmdGcm9t
RGlkRmluaXNoTG9hZGluZy5tbQorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL21hYy9T
dG9wTG9hZGluZ0Zyb21EaWRGaW5pc2hMb2FkaW5nLm1tCkBAIC0yNCwxMiArMjQsMTEgQEAKICAq
LwogCiAjaW1wb3J0ICJjb25maWcuaCIKKwogI2ltcG9ydCAiUGxhdGZvcm1VdGlsaXRpZXMuaCIK
LSNpbXBvcnQgPHd0Zi9BdXRvZHJhaW5lZFBvb2wuaD4KICNpbXBvcnQgPHd0Zi9SZXRhaW5QdHIu
aD4KIAotQGludGVyZmFjZSBTdG9wTG9hZGluZ0Zyb21EaWRGaW5pc2hMb2FkaW5nRGVsZWdhdGUg
OiBOU09iamVjdCA8V2ViUmVzb3VyY2VMb2FkRGVsZWdhdGU+IHsKLX0KK0BpbnRlcmZhY2UgU3Rv
cExvYWRpbmdGcm9tRGlkRmluaXNoTG9hZGluZ0RlbGVnYXRlIDogTlNPYmplY3QgPFdlYlJlc291
cmNlTG9hZERlbGVnYXRlPgogQGVuZAogCiBzdGF0aWMgYm9vbCBmaW5pc2hlZCA9IGZhbHNlOwpA
QCAtNDgsMTIgKzQ3LDEyIEBAIG5hbWVzcGFjZSBUZXN0V2ViS2l0QVBJIHsKIAogVEVTVChXZWJL
aXRMZWdhY3ksIFN0b3BMb2FkaW5nRnJvbURpZEZpbmlzaExvYWRpbmcpCiB7Ci0gICAgQXV0b2Ry
YWluZWRQb29sIHBvb2w7Ci0gICAgUmV0YWluUHRyPFdlYlZpZXc+IHdlYlZpZXcgPSBhZG9wdE5T
KFtbV2ViVmlldyBhbGxvY10gaW5pdF0pOwotICAgIFJldGFpblB0cjxTdG9wTG9hZGluZ0Zyb21E
aWRGaW5pc2hMb2FkaW5nRGVsZWdhdGU+IGRlbGVnYXRlID0gYWRvcHROUyhbW1N0b3BMb2FkaW5n
RnJvbURpZEZpbmlzaExvYWRpbmdEZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOwotICAgIHdlYlZpZXcu
Z2V0KCkucmVzb3VyY2VMb2FkRGVsZWdhdGUgPSBkZWxlZ2F0ZS5nZXQoKTsKLSAgICBbd2ViVmll
dy5nZXQoKS5tYWluRnJhbWUgbG9hZEhUTUxTdHJpbmc6QCJIZWxsbywgV29ybGQhIiBiYXNlVVJM
OltOU1VSTCBVUkxXaXRoU3RyaW5nOkAiIl1dOwotICAgIFV0aWw6OnJ1bigmZmluaXNoZWQpOwor
ICAgIEBhdXRvcmVsZWFzZXBvb2wgeworICAgICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtb
V2ViVmlldyBhbGxvY10gaW5pdF0pOworICAgICAgICB3ZWJWaWV3LmdldCgpLnJlc291cmNlTG9h
ZERlbGVnYXRlID0gYWRvcHROUyhbW1N0b3BMb2FkaW5nRnJvbURpZEZpbmlzaExvYWRpbmdEZWxl
Z2F0ZSBhbGxvY10gaW5pdF0pLmdldCgpOworICAgICAgICBbd2ViVmlldy5nZXQoKS5tYWluRnJh
bWUgbG9hZEhUTUxTdHJpbmc6QCJIZWxsbywgV29ybGQhIiBiYXNlVVJMOltOU1VSTCBVUkxXaXRo
U3RyaW5nOkAiIl1dOworICAgICAgICBVdGlsOjpydW4oJmZpbmlzaGVkKTsKKyAgICB9CiAgICAg
Ly8gTm8gY3Jhc2ggbWVhbnMgdGhlIHRlc3QgcGFzc2VkLgogfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>342443</attachid>
            <date>2018-06-11 10:42:22 -0700</date>
            <delta_ts>2018-06-11 10:42:22 -0700</delta_ts>
            <desc>Sample Crash Log</desc>
            <filename>TestWebkitAPI_2018-06-09-103042_bot216.crash</filename>
            <type>text/plain</type>
            <size>55463</size>
            <attacher name="Dawei Fenton (:realdawei)">realdawei</attacher>
            
              <data encoding="base64">UHJvY2VzczogICAgICAgICAgICAgICBUZXN0V2ViS2l0QVBJIFs5NjU0NF0KUGF0aDogICAgICAg
ICAgICAgICAgICAvVm9sdW1lcy9WT0xVTUUvKi9UZXN0V2ViS2l0QVBJCklkZW50aWZpZXI6ICAg
ICAgICAgICAgVGVzdFdlYktpdEFQSQpWZXJzaW9uOiAgICAgICAgICAgICAgIDAKQ29kZSBUeXBl
OiAgICAgICAgICAgICBYODYtNjQgKE5hdGl2ZSkKUGFyZW50IFByb2Nlc3M6ICAgICAgICBQeXRo
b24gWzk0NTk3XQpSZXNwb25zaWJsZTogICAgICAgICAgIFRlc3RXZWJLaXRBUEkgWzk2NTQ0XQpV
c2VyIElEOiAgICAgICAgICAgICAgIDUwMQoKRGF0ZS9UaW1lOiAgICAgICAgICAgICAyMDE4LTA2
LTA5IDEwOjMwOjM1LjgyNiAtMDcwMApPUyBWZXJzaW9uOiAgICAgICAgICAgIE1hYyBPUyBYIDEw
LjEzLjQgKDE3RTE5OSkKUmVwb3J0IFZlcnNpb246ICAgICAgICAxMgpBbm9ueW1vdXMgVVVJRDog
ICAgICAgIDNEODA2RTQ0LTBENzgtNjY3RS0zOTc4LURENjM4MTVCQkFFMAoKClRpbWUgQXdha2Ug
U2luY2UgQm9vdDogNTYwMDAwMCBzZWNvbmRzCgpTeXN0ZW0gSW50ZWdyaXR5IFByb3RlY3Rpb246
IGVuYWJsZWQKCkNyYXNoZWQgVGhyZWFkOiAgICAgICAgMCAgRGlzcGF0Y2ggcXVldWU6IGNvbS5h
cHBsZS5tYWluLXRocmVhZAoKRXhjZXB0aW9uIFR5cGU6ICAgICAgICBFWENfQkFEX0FDQ0VTUyAo
U0lHU0VHVikKRXhjZXB0aW9uIENvZGVzOiAgICAgICBLRVJOX0lOVkFMSURfQUREUkVTUyBhdCAw
eDAwMDAyYzZmNmM2YzY1NjgKRXhjZXB0aW9uIE5vdGU6ICAgICAgICBFWENfQ09SUFNFX05PVElG
WQoKVGVybWluYXRpb24gU2lnbmFsOiAgICBTZWdtZW50YXRpb24gZmF1bHQ6IDExClRlcm1pbmF0
aW9uIFJlYXNvbjogICAgTmFtZXNwYWNlIFNJR05BTCwgQ29kZSAweGIKVGVybWluYXRpbmcgUHJv
Y2VzczogICBleGMgaGFuZGxlciBbMF0KClZNIFJlZ2lvbnMgTmVhciAweDJjNmY2YzZjNjU2ODoK
ICAgIEpTIEpJVCBnZW5lcmF0ZWQgY29kZSAgMDAwMDA3NTdmMTcxMzAwMC0wMDAwMDc1N2YxNzE0
MDAwIFsgICAgNEtdIC0tLS9yd3ggU009TlVMICAKLS0+IAogICAgU1RBQ0sgR1VBUkQgICAgICAg
ICAgICAwMDAwNzAwMDA3ZTRlMDAwLTAwMDA3MDAwMDdlNGYwMDAgWyAgICA0S10gLS0tL3J3eCBT
TT1OVUwgIHN0YWNrIGd1YXJkIGZvciB0aHJlYWQgMQoKVGhyZWFkIDAgQ3Jhc2hlZDo6IERpc3Bh
dGNoIHF1ZXVlOiBjb20uYXBwbGUubWFpbi10aHJlYWQKMCAgIGxpYm9iamMuQS5keWxpYiAgICAg
ICAgICAgICAgIAkweDAwMDA3ZmZmNzk2YmFkM2Igb2JqY19yZXRhaW4gKyAyNwoxICAgY29tLmFw
cGxlLldlYktpdExlZ2FjeSAgICAgICAgCTB4MDAwMDAwMDEwYjBlYTY0NyBXZWJEb2N1bWVudExv
YWRlck1hYzo6c2V0RGF0YVNvdXJjZShXZWJEYXRhU291cmNlKiwgV2ViVmlldyopICsgODcgKFdl
YkRvY3VtZW50TG9hZGVyTWFjLm1tOjYyKQoyICAgY29tLmFwcGxlLldlYktpdExlZ2FjeSAgICAg
ICAgCTB4MDAwMDAwMDEwYjEwMGViNyBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRlRG9jdW1l
bnRMb2FkZXIoV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IGNvbnN0JiwgV2ViQ29yZTo6U3Vic3Rp
dHV0ZURhdGEgY29uc3QmKSArIDE2NyAoV2ViRnJhbWVMb2FkZXJDbGllbnQubW06MTM1MykKMyAg
IGNvbS5hcHBsZS5XZWJDb3JlICAgICAgICAgICAgIAkweDAwMDAwMDAxMGMzZDk5ZDcgV2ViQ29y
ZTo6RnJhbWVMb2FkZXI6OmxvYWQoV2ViQ29yZTo6RnJhbWVMb2FkUmVxdWVzdCYmKSArIDU4MyAo
RnJhbWVMb2FkZXIuY3BwOjE0NTQpCjQgICBjb20uYXBwbGUuV2ViS2l0TGVnYWN5ICAgICAgICAJ
MHgwMDAwMDAwMTBiMGZhZjkwIC1bV2ViRnJhbWUgX2xvYWREYXRhOk1JTUVUeXBlOnRleHRFbmNv
ZGluZ05hbWU6YmFzZVVSTDp1bnJlYWNoYWJsZVVSTDpdICsgMTI0OAo1ICAgY29tLmFwcGxlLldl
YktpdExlZ2FjeSAgICAgICAgCTB4MDAwMDAwMDEwYjBmYjQzOSAtW1dlYkZyYW1lIF9sb2FkSFRN
TFN0cmluZzpiYXNlVVJMOnVucmVhY2hhYmxlVVJMOl0gKyA4OSAoV2ViRnJhbWUubW06MjU0OCkK
NiAgIFRlc3RXZWJLaXRBUEkgICAgICAgICAgICAgICAgIAkweDAwMDAwMDAxMDg0MDkzZmIgVGVz
dFdlYktpdEFQSTo6V2ViS2l0TGVnYWN5X1N0b3BMb2FkaW5nRnJvbURpZEZpbmlzaExvYWRpbmdf
VGVzdDo6VGVzdEJvZHkoKSArIDE5NyAoU3RvcExvYWRpbmdGcm9tRGlkRmluaXNoTG9hZGluZy5t
bTo1NCkKNyAgIFRlc3RXZWJLaXRBUEkgICAgICAgICAgICAgICAgIAkweDAwMDAwMDAxMDg0ZTM5
NTggdGVzdGluZzo6VGVzdDo6UnVuKCkgKyA5Mgo4ICAgVGVzdFdlYktpdEFQSSAgICAgICAgICAg
ICAgICAgCTB4MDAwMDAwMDEwODRlNDFiNCB0ZXN0aW5nOjppbnRlcm5hbDo6VGVzdEluZm9JbXBs
OjpSdW4oKSArIDE4MAo5ICAgVGVzdFdlYktpdEFQSSAgICAgICAgICAgICAgICAgCTB4MDAwMDAw
MDEwODRlNDU5YyB0ZXN0aW5nOjpUZXN0Q2FzZTo6UnVuKCkgKyAxOTYKMTAgIFRlc3RXZWJLaXRB
UEkgICAgICAgICAgICAgICAgIAkweDAwMDAwMDAxMDg0ZTdkNzYgdGVzdGluZzo6aW50ZXJuYWw6
OlVuaXRUZXN0SW1wbDo6UnVuQWxsVGVzdHMoKSArIDYxNAoxMSAgVGVzdFdlYktpdEFQSSAgICAg
ICAgICAgICAgICAgCTB4MDAwMDAwMDEwODQxMWJlZSBUZXN0V2ViS2l0QVBJOjpUZXN0c0NvbnRy
b2xsZXI6OnJ1bihpbnQsIGNoYXIqKikgKyAxMjAgKFRlc3RzQ29udHJvbGxlci5jcHA6ODYpCjEy
ICBUZXN0V2ViS2l0QVBJICAgICAgICAgICAgICAgICAJMHgwMDAwMDAwMTA4NGMzN2ZiIG1haW4g
KyAzNDQgKG1haW5NYWMubW06NTIpCjEzICBsaWJkeWxkLmR5bGliICAgICAgICAgICAgICAgICAJ
MHgwMDAwN2ZmZjdhMmRmMDE1IHN0YXJ0ICsgMQoKVGhyZWFkIDE6CjAgICBsaWJzeXN0ZW1fa2Vy
bmVsLmR5bGliICAgICAgICAJMHgwMDAwN2ZmZjdhNDMwMjkyIF9fd29ya3Ffa2VybnJldHVybiAr
IDEwCjEgICBsaWJzeXN0ZW1fcHRocmVhZC5keWxpYiAgICAgICAJMHgwMDAwN2ZmZjdhNWY3MDA5
IF9wdGhyZWFkX3dxdGhyZWFkICsgMTAzNQoyICAgbGlic3lzdGVtX3B0aHJlYWQuZHlsaWIgICAg
ICAgCTB4MDAwMDdmZmY3YTVmNmJlOSBzdGFydF93cXRocmVhZCArIDEzCgpUaHJlYWQgMjoKMCAg
IGxpYnN5c3RlbV9wdGhyZWFkLmR5bGliICAgICAgIAkweDAwMDA3ZmZmN2E1ZjZiZGMgc3RhcnRf
d3F0aHJlYWQgKyAwCgpUaHJlYWQgMzo6IEphdmFTY3JpcHRDb3JlIGJtYWxsb2Mgc2NhdmVuZ2Vy
CjAgICBsaWJzeXN0ZW1fa2VybmVsLmR5bGliICAgICAgICAJMHgwMDAwN2ZmZjdhNDJmYTFlIF9f
cHN5bmNoX2N2d2FpdCArIDEwCjEgICBsaWJzeXN0ZW1fcHRocmVhZC5keWxpYiAgICAgICAJMHgw
MDAwN2ZmZjdhNWY4NTg5IF9wdGhyZWFkX2NvbmRfd2FpdCArIDczMgoyICAgbGliYysrLjEuZHls
aWIgICAgICAgICAgICAgICAgCTB4MDAwMDdmZmY3ODI0MGQ0MyBzdGQ6Ol9fMTo6Y29uZGl0aW9u
X3ZhcmlhYmxlOjpfX2RvX3RpbWVkX3dhaXQoc3RkOjpfXzE6OnVuaXF1ZV9sb2NrPHN0ZDo6X18x
OjptdXRleD4mLCBzdGQ6Ol9fMTo6Y2hyb25vOjp0aW1lX3BvaW50PHN0ZDo6X18xOjpjaHJvbm86
OnN5c3RlbV9jbG9jaywgc3RkOjpfXzE6OmNocm9ubzo6ZHVyYXRpb248bG9uZyBsb25nLCBzdGQ6
Ol9fMTo6cmF0aW88MWwsIDEwMDAwMDAwMDBsPiA+ID4pICsgOTMKMyAgIGNvbS5hcHBsZS5KYXZh
U2NyaXB0Q29yZSAgICAgIAkweDAwMDAwMDAxMDhhOGFhODUgc3RkOjpfXzE6OmN2X3N0YXR1cyBz
dGQ6Ol9fMTo6Y29uZGl0aW9uX3ZhcmlhYmxlOjp3YWl0X3VudGlsPHN0ZDo6X18xOjpjaHJvbm86
OnN0ZWFkeV9jbG9jaywgc3RkOjpfXzE6OmNocm9ubzo6ZHVyYXRpb248bG9uZyBsb25nLCBzdGQ6
Ol9fMTo6cmF0aW88MWwsIDEwMDAwMDAwMDBsPiA+ID4oc3RkOjpfXzE6OnVuaXF1ZV9sb2NrPHN0
ZDo6X18xOjptdXRleD4mLCBzdGQ6Ol9fMTo6Y2hyb25vOjp0aW1lX3BvaW50PHN0ZDo6X18xOjpj
aHJvbm86OnN0ZWFkeV9jbG9jaywgc3RkOjpfXzE6OmNocm9ubzo6ZHVyYXRpb248bG9uZyBsb25n
LCBzdGQ6Ol9fMTo6cmF0aW88MWwsIDEwMDAwMDAwMDBsPiA+ID4gY29uc3QmKSArIDExNyAoX19t
dXRleF9iYXNlOjM4NCkKNCAgIGNvbS5hcHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAw
MDAxMDhhOGE5NGYgc3RkOjpfXzE6OmN2X3N0YXR1cyBzdGQ6Ol9fMTo6Y29uZGl0aW9uX3Zhcmlh
YmxlX2FueTo6d2FpdF91bnRpbDxzdGQ6Ol9fMTo6dW5pcXVlX2xvY2s8Ym1hbGxvYzo6TXV0ZXg+
LCBzdGQ6Ol9fMTo6Y2hyb25vOjpzdGVhZHlfY2xvY2ssIHN0ZDo6X18xOjpjaHJvbm86OmR1cmF0
aW9uPGxvbmcgbG9uZywgc3RkOjpfXzE6OnJhdGlvPDFsLCAxMDAwMDAwMDAwbD4gPiA+KHN0ZDo6
X18xOjp1bmlxdWVfbG9jazxibWFsbG9jOjpNdXRleD4mLCBzdGQ6Ol9fMTo6Y2hyb25vOjp0aW1l
X3BvaW50PHN0ZDo6X18xOjpjaHJvbm86OnN0ZWFkeV9jbG9jaywgc3RkOjpfXzE6OmNocm9ubzo6
ZHVyYXRpb248bG9uZyBsb25nLCBzdGQ6Ol9fMTo6cmF0aW88MWwsIDEwMDAwMDAwMDBsPiA+ID4g
Y29uc3QmKSArIDk1IChjb25kaXRpb25fdmFyaWFibGU6MjI2KQo1ICAgY29tLmFwcGxlLkphdmFT
Y3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDEwOGE4OTk2ZSBibWFsbG9jOjpTY2F2ZW5nZXI6OnRo
cmVhZFJ1bkxvb3AoKSArIDc5OCAoU2NhdmVuZ2VyLmNwcDozODUpCjYgICBjb20uYXBwbGUuSmF2
YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAwMTA4YTg4ZjA5IGJtYWxsb2M6OlNjYXZlbmdlcjo6
dGhyZWFkRW50cnlQb2ludChibWFsbG9jOjpTY2F2ZW5nZXIqKSArIDkKNyAgIGNvbS5hcHBsZS5K
YXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAwMDAxMDhhOGE3NTcgdm9pZCogc3RkOjpfXzE6Ol9f
dGhyZWFkX3Byb3h5PHN0ZDo6X18xOjp0dXBsZTxzdGQ6Ol9fMTo6dW5pcXVlX3B0cjxzdGQ6Ol9f
MTo6X190aHJlYWRfc3RydWN0LCBzdGQ6Ol9fMTo6ZGVmYXVsdF9kZWxldGU8c3RkOjpfXzE6Ol9f
dGhyZWFkX3N0cnVjdD4gPiwgdm9pZCAoKikoYm1hbGxvYzo6U2NhdmVuZ2VyKiksIGJtYWxsb2M6
OlNjYXZlbmdlcio+ID4odm9pZCopICsgMzkKOCAgIGxpYnN5c3RlbV9wdGhyZWFkLmR5bGliICAg
ICAgIAkweDAwMDA3ZmZmN2E1Zjc2NjEgX3B0aHJlYWRfYm9keSArIDM0MAo5ICAgbGlic3lzdGVt
X3B0aHJlYWQuZHlsaWIgICAgICAgCTB4MDAwMDdmZmY3YTVmNzUwZCBfcHRocmVhZF9zdGFydCAr
IDM3NwoxMCAgbGlic3lzdGVtX3B0aHJlYWQuZHlsaWIgICAgICAgCTB4MDAwMDdmZmY3YTVmNmJm
OSB0aHJlYWRfc3RhcnQgKyAxMwoKVGhyZWFkIDQ6CjAgICBsaWJzeXN0ZW1fcHRocmVhZC5keWxp
YiAgICAgICAJMHgwMDAwN2ZmZjdhNWY2YmRjIHN0YXJ0X3dxdGhyZWFkICsgMAoxICAgPz8/ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgCTB4MDAwMDcwMDAwODA1N2JjMCAwICsgMTIzMTQ1NDM2
ODg4MDAwCgpUaHJlYWQgMCBjcmFzaGVkIHdpdGggWDg2IFRocmVhZCBTdGF0ZSAoNjQtYml0KToK
ICByYXg6IDB4NTcyMDJjNmY2YzZjNjU0OCAgcmJ4OiAweDAwMDA3ZmZjN2M1MjMyMjAgIHJjeDog
MHgwMDAwMmM2ZjZjNmM2NTQ4ICByZHg6IDB4MDAwMDdmZmZhYmVjMDhhMAogIHJkaTogMHgwMDAw
N2ZmYzdjNTIzMjIwICByc2k6IDB4MDAwMDdmZmY2MGE2YzY3NyAgcmJwOiAweDAwMDA3ZmZlZTc5
YjZiYTAgIHJzcDogMHgwMDAwN2ZmZWU3OWI2Yjc4CiAgIHI4OiAweDAwMDAwMDAwYzdjNTI1Mzgg
ICByOTogMHgwMDAwMDAwMDAwMDAwMDAxICByMTA6IDB4MDAyNmRjMDEwMDI2NDYwMCAgcjExOiAw
eDAwMDAwMDAxMGIxN2UxNTAKICByMTI6IDB4MDAwMDdmZmM3YzUyMjg0MCAgcjEzOiAweDAwMDAw
MDAxMTA0N2IwMDAgIHIxNDogMHgwMDAwN2ZmYzdjNzBhMTUwICByMTU6IDB4MDAwMDAwMDExMDQ3
YjAwMAogIHJpcDogMHgwMDAwN2ZmZjc5NmJhZDNiICByZmw6IDB4MDAwMDAwMDAwMDAxMDIwNiAg
Y3IyOiAweDAwMDAyYzZmNmM2YzY1NjgKICAKTG9naWNhbCBDUFU6ICAgICAyCkVycm9yIENvZGU6
ICAgICAgMHgwMDAwMDAwNApUcmFwIE51bWJlcjogICAgIDE0CgoKQmluYXJ5IEltYWdlczoKICAg
ICAgIDB4MTA4MjQ4MDAwIC0gICAgICAgIDB4MTA4NWJjZmY3ICtUZXN0V2ViS2l0QVBJICgwKSA8
MEY0ODg3QjUtQkI2My0zNDFGLUJFQTQtODJBQkFBNDQ3NkYwPiAvVm9sdW1lcy9WT0xVTUUvKi9U
ZXN0V2ViS2l0QVBJCiAgICAgICAweDEwOGEyNjAwMCAtICAgICAgICAweDEwOTc0NGZmZiAgY29t
LmFwcGxlLkphdmFTY3JpcHRDb3JlICg2MDYrIC0gNjA2LjEuMjErKSA8NEQxNDIwQTEtNTgwQy0z
QjNELUFEMUEtQkE2OUUxNDA4NTQ5PiAvVm9sdW1lcy9WT0xVTUUvKi9KYXZhU2NyaXB0Q29yZS5m
cmFtZXdvcmsvVmVyc2lvbnMvQS9KYXZhU2NyaXB0Q29yZQogICAgICAgMHgxMDllM2EwMDAgLSAg
ICAgICAgMHgxMGEzMWJmZjMgIGNvbS5hcHBsZS5XZWJLaXQgKDYwNisgLSA2MDYuMS4yMSspIDxE
RTJERjhBNC0zQzk1LTNDNTktQjc2Ri02OEVFRTZCODI3MjE+IC9Wb2x1bWVzL1ZPTFVNRS8qL1dl
YktpdC5mcmFtZXdvcmsvVmVyc2lvbnMvQS9XZWJLaXQKICAgICAgIDB4MTBhZGFjMDAwIC0gICAg
ICAgIDB4MTBhZTQ1ZmZmICtsaWJXZWJDb3JlVGVzdFN1cHBvcnQuZHlsaWIgKDApIDwwQUI3ODgw
OC1FOEM1LTMzQTctQTJGRC0xMTgwMjdCRDg5NjY+IC9Wb2x1bWVzL1ZPTFVNRS8qL2xpYldlYkNv
cmVUZXN0U3VwcG9ydC5keWxpYgogICAgICAgMHgxMGFmYTkwMDAgLSAgICAgICAgMHgxMGFmZjM5
ZGYgIGR5bGQgKDU1MS4zKSA8QUZBQjRFRkEtNzAyMC0zNEIxLUJCRUYtMEYyNkM2RDNDQTM2PiAv
dXNyL2xpYi9keWxkCiAgICAgICAweDEwYjA0NzAwMCAtICAgICAgICAweDEwYjIzYWZmYiAgY29t
LmFwcGxlLldlYktpdExlZ2FjeSAoNjA2KyAtIDYwNi4xLjIxKykgPEQ3Nzg2QzQ2LTc5NUItM0Uw
Qy04RkJCLTBFNEZGOTA2QTc0OT4gL1ZvbHVtZXMvVk9MVU1FLyovV2ViS2l0TGVnYWN5LmZyYW1l
d29yay9WZXJzaW9ucy9BL1dlYktpdExlZ2FjeQogICAgICAgMHgxMGI0YWQwMDAgLSAgICAgICAg
MHgxMGNjZmNmZmYgIGNvbS5hcHBsZS5XZWJDb3JlICg2MDYrIC0gNjA2LjEuMjErKSA8NUJFQTE3
QTktMjJDMS0zNTAxLThFRkQtOUJFMDg4MjE0Q0MyPiAvVm9sdW1lcy9WT0xVTUUvKi9XZWJDb3Jl
LmZyYW1ld29yay9WZXJzaW9ucy9BL1dlYkNvcmUKICAgICAgIDB4MTBlYTIxMDAwIC0gICAgICAg
IDB4MTBlZmE5ZmY3ICtsaWJ3ZWJydGMuZHlsaWIgKDApIDwzRDM5M0NBQi04ODJFLTM0NzYtQjc2
MS1GMDJDNjI4NkI5RTA+IC9Wb2x1bWVzL1ZPTFVNRS8qL2xpYndlYnJ0Yy5keWxpYgogICAgMHg3
ZmZmNGRkZmUwMDAgLSAgICAgMHg3ZmZmNGRmZGRmZmYgIGNvbS5hcHBsZS5hdmZvdW5kYXRpb24g
KDIuMCAtIDE1MzUuNDIpIDxBNEU3NDUyMS0zQzAyLTMyOUEtQkNCNy1DMkM0MzA4REVDRDQ+IC9T
eXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0FWRm91bmRhdGlvbi5mcmFtZXdvcmsvVmVyc2lvbnMv
QS9BVkZvdW5kYXRpb24KICAgIDB4N2ZmZjRkZmRlMDAwIC0gICAgIDB4N2ZmZjRlMDk3ZmZmICBj
b20uYXBwbGUuYXVkaW8uQVZGQXVkaW8gKDEuMCAtID8/PykgPEVDRTYzQkEzLTQzNDQtMzUyMi05
MDRCLTcxRjg5Njc3QUM3RD4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQVZGb3VuZGF0aW9u
LmZyYW1ld29yay9WZXJzaW9ucy9BL0ZyYW1ld29ya3MvQVZGQXVkaW8uZnJhbWV3b3JrL1ZlcnNp
b25zL0EvQVZGQXVkaW8KICAgIDB4N2ZmZjRlMTlkMDAwIC0gICAgIDB4N2ZmZjRlMTlkZmZmICBj
b20uYXBwbGUuQWNjZWxlcmF0ZSAoMS4xMSAtIEFjY2VsZXJhdGUgMS4xMSkgPDJFRjAwRUZFLTA2
RTgtMzA4Mi04NUMzLTI5ODhCNDIyQTE5RD4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQWNj
ZWxlcmF0ZS5mcmFtZXdvcmsvVmVyc2lvbnMvQS9BY2NlbGVyYXRlCiAgICAweDdmZmY0ZTE5ZTAw
MCAtICAgICAweDdmZmY0ZTFiNWZmNyAgbGliQ0dJbnRlcmZhY2VzLmR5bGliICg0MTcuMikgPEUz
NzMyNzIwLTBCMkMtM0ZBNi05RDA1LTVDNzE5OTAxMDJDRT4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1l
d29ya3MvQWNjZWxlcmF0ZS5mcmFtZXdvcmsvVmVyc2lvbnMvQS9GcmFtZXdvcmtzL3ZJbWFnZS5m
cmFtZXdvcmsvVmVyc2lvbnMvQS9MaWJyYXJpZXMvbGliQ0dJbnRlcmZhY2VzLmR5bGliCiAgICAw
eDdmZmY0ZTFiNjAwMCAtICAgICAweDdmZmY0ZTkwNGZmYiAgY29tLmFwcGxlLnZJbWFnZSAoOC4x
IC0gPz8/KSA8NTZDMjc1QzEtNDU5Ri0zN0NELUJGMjktMkU2RDgxQzI5RTUzPiAvU3lzdGVtL0xp
YnJhcnkvRnJhbWV3b3Jrcy9BY2NlbGVyYXRlLmZyYW1ld29yay9WZXJzaW9ucy9BL0ZyYW1ld29y
a3MvdkltYWdlLmZyYW1ld29yay9WZXJzaW9ucy9BL3ZJbWFnZQogICAgMHg3ZmZmNGU5MDUwMDAg
LSAgICAgMHg3ZmZmNGVhYTVmZjMgIGxpYkJMQVMuZHlsaWIgKDEyMTEuNTAuMikgPDkzMjU5MjIy
LTJEOTQtMzMzRC1BMUVCLTA5QzZGQzRBNjRCND4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3Mv
QWNjZWxlcmF0ZS5mcmFtZXdvcmsvVmVyc2lvbnMvQS9GcmFtZXdvcmtzL3ZlY0xpYi5mcmFtZXdv
cmsvVmVyc2lvbnMvQS9saWJCTEFTLmR5bGliCiAgICAweDdmZmY0ZWFhNjAwMCAtICAgICAweDdm
ZmY0ZWFlMGZlZiAgbGliQk5OUy5keWxpYiAoMzguMSkgPDBBQUUwMTA5LTcxRDUtM0IyNi04NDAx
LTNFNjJEREY5NzYyND4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQWNjZWxlcmF0ZS5mcmFt
ZXdvcmsvVmVyc2lvbnMvQS9GcmFtZXdvcmtzL3ZlY0xpYi5mcmFtZXdvcmsvVmVyc2lvbnMvQS9s
aWJCTk5TLmR5bGliCiAgICAweDdmZmY0ZWFlMTAwMCAtICAgICAweDdmZmY0ZWViYWZmNyAgbGli
TEFQQUNLLmR5bGliICgxMjExLjUwLjIpIDw3MDc4MUQwQi1BRUFELTMzRUItOTkwMC0xMERDMzBG
MzdENjE+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0FjY2VsZXJhdGUuZnJhbWV3b3JrL1Zl
cnNpb25zL0EvRnJhbWV3b3Jrcy92ZWNMaWIuZnJhbWV3b3JrL1ZlcnNpb25zL0EvbGliTEFQQUNL
LmR5bGliCiAgICAweDdmZmY0ZWViYjAwMCAtICAgICAweDdmZmY0ZWVkMWZmNyAgbGliTGluZWFy
QWxnZWJyYS5keWxpYiAoMTIxMS41MC4yKSA8RkI1QTM1RUEtRDYzNi0zRDY5LUFCNTMtQjY3RTFF
QjgxMzRDPiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9BY2NlbGVyYXRlLmZyYW1ld29yay9W
ZXJzaW9ucy9BL0ZyYW1ld29ya3MvdmVjTGliLmZyYW1ld29yay9WZXJzaW9ucy9BL2xpYkxpbmVh
ckFsZ2VicmEuZHlsaWIKICAgIDB4N2ZmZjRlZWQyMDAwIC0gICAgIDB4N2ZmZjRlZWQ3ZmYzICBs
aWJRdWFkcmF0dXJlLmR5bGliICgzKSA8M0Q2QkY2NkEtNTVCMi0zNjkyLUJBQzctREVCMEM2NzZF
RDI5PiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9BY2NlbGVyYXRlLmZyYW1ld29yay9WZXJz
aW9ucy9BL0ZyYW1ld29ya3MvdmVjTGliLmZyYW1ld29yay9WZXJzaW9ucy9BL2xpYlF1YWRyYXR1
cmUuZHlsaWIKICAgIDB4N2ZmZjRlZWQ4MDAwIC0gICAgIDB4N2ZmZjRlZjU4ZmZmICBsaWJTcGFy
c2UuZHlsaWIgKDc5LjUwLjIpIDwwREMyNUNERC1GOEMxLTNENkUtQjQ3Mi04QjA2MDcwODQyNEY+
IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0FjY2VsZXJhdGUuZnJhbWV3b3JrL1ZlcnNpb25z
L0EvRnJhbWV3b3Jrcy92ZWNMaWIuZnJhbWV3b3JrL1ZlcnNpb25zL0EvbGliU3BhcnNlLmR5bGli
CiAgICAweDdmZmY0ZWY1OTAwMCAtICAgICAweDdmZmY0ZWY2YmZmNyAgbGliU3BhcnNlQkxBUy5k
eWxpYiAoMTIxMS41MC4yKSA8OTk0QTdEN0UtRkEzQi0zOTQzLUE1OUMtODE1MEI5QUY4NkJFPiAv
U3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9BY2NlbGVyYXRlLmZyYW1ld29yay9WZXJzaW9ucy9B
L0ZyYW1ld29ya3MvdmVjTGliLmZyYW1ld29yay9WZXJzaW9ucy9BL2xpYlNwYXJzZUJMQVMuZHls
aWIKICAgIDB4N2ZmZjRlZjZjMDAwIC0gICAgIDB4N2ZmZjRmMGRmZmU3ICBsaWJ2RFNQLmR5bGli
ICg2MjIuNTAuNSkgPDRCRjMxMEY0LTMxQTMtM0RBNS04MEU0LTdGODAxNEFEMzgwQj4gL1N5c3Rl
bS9MaWJyYXJ5L0ZyYW1ld29ya3MvQWNjZWxlcmF0ZS5mcmFtZXdvcmsvVmVyc2lvbnMvQS9GcmFt
ZXdvcmtzL3ZlY0xpYi5mcmFtZXdvcmsvVmVyc2lvbnMvQS9saWJ2RFNQLmR5bGliCiAgICAweDdm
ZmY0ZjBlMDAwMCAtICAgICAweDdmZmY0ZjE5NmZlZiAgbGlidk1pc2MuZHlsaWIgKDYyMi41MC41
KSA8ODgxNDNBODgtNEZERS0zNUExLTg1RkUtNTRGRjBDMkE5RTQzPiAvU3lzdGVtL0xpYnJhcnkv
RnJhbWV3b3Jrcy9BY2NlbGVyYXRlLmZyYW1ld29yay9WZXJzaW9ucy9BL0ZyYW1ld29ya3MvdmVj
TGliLmZyYW1ld29yay9WZXJzaW9ucy9BL2xpYnZNaXNjLmR5bGliCiAgICAweDdmZmY0ZjE5NzAw
MCAtICAgICAweDdmZmY0ZjE5N2ZmZiAgY29tLmFwcGxlLkFjY2VsZXJhdGUudmVjTGliICgzLjEx
IC0gdmVjTGliIDMuMTEpIDw4ODBERUY0MC0zODlBLTNGNTYtQUNBMS1CNjJBNUJDNTdFNTk+IC9T
eXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0FjY2VsZXJhdGUuZnJhbWV3b3JrL1ZlcnNpb25zL0Ev
RnJhbWV3b3Jrcy92ZWNMaWIuZnJhbWV3b3JrL1ZlcnNpb25zL0EvdmVjTGliCiAgICAweDdmZmY0
ZjQ4YTAwMCAtICAgICAweDdmZmY1MDJlOGZmZiAgY29tLmFwcGxlLkFwcEtpdCAoNi45IC0gMTU2
MS40MC4xMTIpIDxDODM5QjBDMS1GN0VFLTMwNTYtOTg1Qy02M0NGMUEwMzBFQzQ+IC9TeXN0ZW0v
TGlicmFyeS9GcmFtZXdvcmtzL0FwcEtpdC5mcmFtZXdvcmsvVmVyc2lvbnMvQy9BcHBLaXQKICAg
IDB4N2ZmZjUwMzNhMDAwIC0gICAgIDB4N2ZmZjUwMzNhZmZmICBjb20uYXBwbGUuQXBwbGljYXRp
b25TZXJ2aWNlcyAoNDggLSA1MCkgPDhEQTQ3RDM4LUIwN0ItM0FFMi1CMzQzLTQ1Nzk4NjQ0MzBD
Nj4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQXBwbGljYXRpb25TZXJ2aWNlcy5mcmFtZXdv
cmsvVmVyc2lvbnMvQS9BcHBsaWNhdGlvblNlcnZpY2VzCiAgICAweDdmZmY1MDMzYjAwMCAtICAg
ICAweDdmZmY1MDNhMWZmZiAgY29tLmFwcGxlLkFwcGxpY2F0aW9uU2VydmljZXMuQVRTICgzNzcg
LSA0NDUuMykgPDAwMEM0RTlGLUUwRDktMzcxRC1CMzA0LTgzQkEzNzQ2MDcyND4gL1N5c3RlbS9M
aWJyYXJ5L0ZyYW1ld29ya3MvQXBwbGljYXRpb25TZXJ2aWNlcy5mcmFtZXdvcmsvVmVyc2lvbnMv
QS9GcmFtZXdvcmtzL0FUUy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9BVFMKICAgIDB4N2ZmZjUwNDNh
MDAwIC0gICAgIDB4N2ZmZjUwNTVjZmZmICBsaWJGb250UGFyc2VyLmR5bGliICgyMjIuMS40KSA8
RkY2OEZBRjYtNzBCQi0zRTM5LUEyNjMtRTE3QjZGNUUwMEQwPiAvU3lzdGVtL0xpYnJhcnkvRnJh
bWV3b3Jrcy9BcHBsaWNhdGlvblNlcnZpY2VzLmZyYW1ld29yay9WZXJzaW9ucy9BL0ZyYW1ld29y
a3MvQVRTLmZyYW1ld29yay9WZXJzaW9ucy9BL1Jlc291cmNlcy9saWJGb250UGFyc2VyLmR5bGli
CiAgICAweDdmZmY1MDU1ZDAwMCAtICAgICAweDdmZmY1MDVhN2ZmNyAgbGliRm9udFJlZ2lzdHJ5
LmR5bGliICgyMjEuMykgPEM4NEY3MTEyLTQ3NjQtM0Y0Qi05RkJBLTRBMDIyQ0Y2MzQ2Qj4gL1N5
c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQXBwbGljYXRpb25TZXJ2aWNlcy5mcmFtZXdvcmsvVmVy
c2lvbnMvQS9GcmFtZXdvcmtzL0FUUy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9SZXNvdXJjZXMvbGli
Rm9udFJlZ2lzdHJ5LmR5bGliCiAgICAweDdmZmY1MDZlOTAwMCAtICAgICAweDdmZmY1MDZlZGZm
MyAgY29tLmFwcGxlLkNvbG9yU3luY0xlZ2FjeSAoNC4xMy4wIC0gMSkgPEE1RkIyNjk0LTE1NTkt
MzRBOC1BM0QzLTIwMjlGNjhBNjNDQT4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQXBwbGlj
YXRpb25TZXJ2aWNlcy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9GcmFtZXdvcmtzL0NvbG9yU3luY0xl
Z2FjeS5mcmFtZXdvcmsvVmVyc2lvbnMvQS9Db2xvclN5bmNMZWdhY3kKICAgIDB4N2ZmZjUwNzhk
MDAwIC0gICAgIDB4N2ZmZjUwN2RmZmZiICBjb20uYXBwbGUuSElTZXJ2aWNlcyAoMS4yMiAtIDYy
NCkgPDgyOEUxODlBLTYyRjktMzk2MS04QTg5LTIyRjUwODg3MENDNT4gL1N5c3RlbS9MaWJyYXJ5
L0ZyYW1ld29ya3MvQXBwbGljYXRpb25TZXJ2aWNlcy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9GcmFt
ZXdvcmtzL0hJU2VydmljZXMuZnJhbWV3b3JrL1ZlcnNpb25zL0EvSElTZXJ2aWNlcwogICAgMHg3
ZmZmNTA3ZTAwMDAgLSAgICAgMHg3ZmZmNTA3ZWVmZmYgIGNvbS5hcHBsZS5MYW5nQW5hbHlzaXMg
KDEuNy4wIC0gMS43LjApIDxCNjVGRjdFNi1FOUI1LTM0RDgtOENBNy02M0Q0MTVBOEE5QTY+IC9T
eXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0FwcGxpY2F0aW9uU2VydmljZXMuZnJhbWV3b3JrL1Zl
cnNpb25zL0EvRnJhbWV3b3Jrcy9MYW5nQW5hbHlzaXMuZnJhbWV3b3JrL1ZlcnNpb25zL0EvTGFu
Z0FuYWx5c2lzCiAgICAweDdmZmY1MDdlZjAwMCAtICAgICAweDdmZmY1MDgzYmZmZiAgY29tLmFw
cGxlLnByaW50LmZyYW1ld29yay5QcmludENvcmUgKDEzLjQgLSA1MDMuMikgPEI5MEM2N0MxLTAy
OTItM0NFQy04ODVELUYxODgyQ0QxMDRCRT4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQXBw
bGljYXRpb25TZXJ2aWNlcy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9GcmFtZXdvcmtzL1ByaW50Q29y
ZS5mcmFtZXdvcmsvVmVyc2lvbnMvQS9QcmludENvcmUKICAgIDB4N2ZmZjUwODNjMDAwIC0gICAg
IDB4N2ZmZjUwODc2ZmZmICBjb20uYXBwbGUuUUQgKDMuMTIgLSA0MDQuMikgPDM4QjIwQUZGLTlE
NTQtM0I1Mi1BNkRDLUMwRDcxMzgwQUE1Rj4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQXBw
bGljYXRpb25TZXJ2aWNlcy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9GcmFtZXdvcmtzL1FELmZyYW1l
d29yay9WZXJzaW9ucy9BL1FECiAgICAweDdmZmY1MDg3NzAwMCAtICAgICAweDdmZmY1MDg4M2Zm
ZiAgY29tLmFwcGxlLnNwZWVjaC5zeW50aGVzaXMuZnJhbWV3b3JrICg3LjUuMSAtIDcuNS4xKSA8
ODRBRERGMzgtMzZGMS0zRDNCLUIyOEQtODg2NUZBMTBGQ0Q3PiAvU3lzdGVtL0xpYnJhcnkvRnJh
bWV3b3Jrcy9BcHBsaWNhdGlvblNlcnZpY2VzLmZyYW1ld29yay9WZXJzaW9ucy9BL0ZyYW1ld29y
a3MvU3BlZWNoU3ludGhlc2lzLmZyYW1ld29yay9WZXJzaW9ucy9BL1NwZWVjaFN5bnRoZXNpcwog
ICAgMHg3ZmZmNTA4ODQwMDAgLSAgICAgMHg3ZmZmNTBiMTFmZjcgIGNvbS5hcHBsZS5hdWRpby50
b29sYm94LkF1ZGlvVG9vbGJveCAoMS4xNCAtIDEuMTQpIDw4N0Q4MTcxNC1GMTY3LTM5RjUtQjVF
Ny1BN0E0MzJFREFCNUI+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0F1ZGlvVG9vbGJveC5m
cmFtZXdvcmsvVmVyc2lvbnMvQS9BdWRpb1Rvb2xib3gKICAgIDB4N2ZmZjUwYjEzMDAwIC0gICAg
IDB4N2ZmZjUwYjEzZmZmICBjb20uYXBwbGUuYXVkaW8udW5pdHMuQXVkaW9Vbml0ICgxLjE0IC0g
MS4xNCkgPDUxM0M5QTRCLTRGNkQtM0EyMS05MjFGLTJDQTEwMUI5NzgzMD4gL1N5c3RlbS9MaWJy
YXJ5L0ZyYW1ld29ya3MvQXVkaW9Vbml0LmZyYW1ld29yay9WZXJzaW9ucy9BL0F1ZGlvVW5pdAog
ICAgMHg3ZmZmNTBlMzUwMDAgLSAgICAgMHg3ZmZmNTExY2ZmZjcgIGNvbS5hcHBsZS5DRk5ldHdv
cmsgKDg5Ny4xNSAtIDg5Ny4xNSkgPDBDMDNBRjM5LTM1MjctM0UwRC04NDEzLThFMUIyQTk2MkYw
RD4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQ0ZOZXR3b3JrLmZyYW1ld29yay9WZXJzaW9u
cy9BL0NGTmV0d29yawogICAgMHg3ZmZmNTExZTQwMDAgLSAgICAgMHg3ZmZmNTExZTRmZmYgIGNv
bS5hcHBsZS5DYXJib24gKDE1OCAtIDE1OCkgPEY4QjM3MEQ5LTIxMDMtMzI3Ni04MjFELUFDQzc1
NjE2N0Y4Nj4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQ2FyYm9uLmZyYW1ld29yay9WZXJz
aW9ucy9BL0NhcmJvbgogICAgMHg3ZmZmNTExZTUwMDAgLSAgICAgMHg3ZmZmNTExZThmZmIgIGNv
bS5hcHBsZS5Db21tb25QYW5lbHMgKDEuMi42IC0gOTgpIDwyMzkxNzYxQy01Q0FBLTNGNjgtODZC
Ny01MEIzNzkyN0IxMDQ+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0NhcmJvbi5mcmFtZXdv
cmsvVmVyc2lvbnMvQS9GcmFtZXdvcmtzL0NvbW1vblBhbmVscy5mcmFtZXdvcmsvVmVyc2lvbnMv
QS9Db21tb25QYW5lbHMKICAgIDB4N2ZmZjUxMWU5MDAwIC0gICAgIDB4N2ZmZjUxNGVlZmZmICBj
b20uYXBwbGUuSElUb29sYm94ICgyLjEuMSAtIDkxMS4xMCkgPEJGN0Y5QzBFLUM3MzItM0ZCMi05
QkJDLTM2Mjg4OEJEQTU3Qj4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQ2FyYm9uLmZyYW1l
d29yay9WZXJzaW9ucy9BL0ZyYW1ld29ya3MvSElUb29sYm94LmZyYW1ld29yay9WZXJzaW9ucy9B
L0hJVG9vbGJveAogICAgMHg3ZmZmNTE0ZWYwMDAgLSAgICAgMHg3ZmZmNTE0ZjJmZmIgIGNvbS5h
cHBsZS5oZWxwICgxLjMuOCAtIDY2KSA8REVCQURGQTgtQzE4OS0zMTk1LUIwRDYtQTFGMkRFOTU4
ODJBPiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9DYXJib24uZnJhbWV3b3JrL1ZlcnNpb25z
L0EvRnJhbWV3b3Jrcy9IZWxwLmZyYW1ld29yay9WZXJzaW9ucy9BL0hlbHAKICAgIDB4N2ZmZjUx
NGYzMDAwIC0gICAgIDB4N2ZmZjUxNGY4ZmZmICBjb20uYXBwbGUuSW1hZ2VDYXB0dXJlICg5LjAg
LSA5LjApIDwyM0I0OTE2Ri0zQjQzLTNERkYtQjk1Ni1GQzM5MEVFQ0EyODQ+IC9TeXN0ZW0vTGli
cmFyeS9GcmFtZXdvcmtzL0NhcmJvbi5mcmFtZXdvcmsvVmVyc2lvbnMvQS9GcmFtZXdvcmtzL0lt
YWdlQ2FwdHVyZS5mcmFtZXdvcmsvVmVyc2lvbnMvQS9JbWFnZUNhcHR1cmUKICAgIDB4N2ZmZjUx
NGY5MDAwIC0gICAgIDB4N2ZmZjUxNThlZmZiICBjb20uYXBwbGUuaW5rLmZyYW1ld29yayAoMTAu
OSAtIDIyMSkgPDUyMDZDOEIwLTIyREEtMzZDOS05OThFLTg0NkVEQjYyNkQ1Qj4gL1N5c3RlbS9M
aWJyYXJ5L0ZyYW1ld29ya3MvQ2FyYm9uLmZyYW1ld29yay9WZXJzaW9ucy9BL0ZyYW1ld29ya3Mv
SW5rLmZyYW1ld29yay9WZXJzaW9ucy9BL0luawogICAgMHg3ZmZmNTE1OGYwMDAgLSAgICAgMHg3
ZmZmNTE1YTlmZjcgIGNvbS5hcHBsZS5vcGVuc2NyaXB0aW5nICgxLjcgLSAxNzQpIDwxQjJBMUY5
RS01NTM0LTNENjEtODNDQS05MTk5QjM5RTg3MDg+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtz
L0NhcmJvbi5mcmFtZXdvcmsvVmVyc2lvbnMvQS9GcmFtZXdvcmtzL09wZW5TY3JpcHRpbmcuZnJh
bWV3b3JrL1ZlcnNpb25zL0EvT3BlblNjcmlwdGluZwogICAgMHg3ZmZmNTE1Y2EwMDAgLSAgICAg
MHg3ZmZmNTE1Y2JmZmYgIGNvbS5hcHBsZS5wcmludC5mcmFtZXdvcmsuUHJpbnQgKDEyIC0gMjY3
KSA8MzY4MkFCRkItMjU2MS0zNDE5LTg0N0QtMDJDMjQ3RjQ4MDBEPiAvU3lzdGVtL0xpYnJhcnkv
RnJhbWV3b3Jrcy9DYXJib24uZnJhbWV3b3JrL1ZlcnNpb25zL0EvRnJhbWV3b3Jrcy9QcmludC5m
cmFtZXdvcmsvVmVyc2lvbnMvQS9QcmludAogICAgMHg3ZmZmNTE1Y2MwMDAgLSAgICAgMHg3ZmZm
NTE1Y2VmZjcgIGNvbS5hcHBsZS5zZWN1cml0eWhpICg5LjAgLSA1NTAwNikgPEMxNDA2QjhELTdE
MDUtMzk1OS04MDhGLTlDODIxODlDRjU3Rj4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQ2Fy
Ym9uLmZyYW1ld29yay9WZXJzaW9ucy9BL0ZyYW1ld29ya3MvU2VjdXJpdHlISS5mcmFtZXdvcmsv
VmVyc2lvbnMvQS9TZWN1cml0eUhJCiAgICAweDdmZmY1MTVjZjAwMCAtICAgICAweDdmZmY1MTVk
NWZmZiAgY29tLmFwcGxlLnNwZWVjaC5yZWNvZ25pdGlvbi5mcmFtZXdvcmsgKDYuMC4zIC0gNi4w
LjMpIDwyRUQ4NjQzRC1CMEMzLTNGMTctODJBMi1CQkYxM0U2Q0JBQkM+IC9TeXN0ZW0vTGlicmFy
eS9GcmFtZXdvcmtzL0NhcmJvbi5mcmFtZXdvcmsvVmVyc2lvbnMvQS9GcmFtZXdvcmtzL1NwZWVj
aFJlY29nbml0aW9uLmZyYW1ld29yay9WZXJzaW9ucy9BL1NwZWVjaFJlY29nbml0aW9uCiAgICAw
eDdmZmY1MTZmNjAwMCAtICAgICAweDdmZmY1MTZmNmZmZiAgY29tLmFwcGxlLkNvY29hICg2LjEx
IC0gMjIpIDw0Q0Y4RTMxQy1CNUM3LTM2N0ItQjczRC0xQThBQzhFNDFCN0Y+IC9TeXN0ZW0vTGli
cmFyeS9GcmFtZXdvcmtzL0NvY29hLmZyYW1ld29yay9WZXJzaW9ucy9BL0NvY29hCiAgICAweDdm
ZmY1MTcwNDAwMCAtICAgICAweDdmZmY1MTdiZGZmZiAgY29tLmFwcGxlLkNvbG9yU3luYyAoNC4x
My4wIC0gMzMyNSkgPEQyODNDMjg1LTQ0N0QtMzI1OC1BN0U0LTU5NTMyMTIzQjhGRj4gL1N5c3Rl
bS9MaWJyYXJ5L0ZyYW1ld29ya3MvQ29sb3JTeW5jLmZyYW1ld29yay9WZXJzaW9ucy9BL0NvbG9y
U3luYwogICAgMHg3ZmZmNTE5NGEwMDAgLSAgICAgMHg3ZmZmNTE5ZGRmZjcgIGNvbS5hcHBsZS5h
dWRpby5Db3JlQXVkaW8gKDQuMy4wIC0gNC4zLjApIDw2RTNGOTU4RC03OUJCLTM2NTgtOTlBRC01
OUYxNkJGNzU2RjE+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0NvcmVBdWRpby5mcmFtZXdv
cmsvVmVyc2lvbnMvQS9Db3JlQXVkaW8KICAgIDB4N2ZmZjUxYTQ0MDAwIC0gICAgIDB4N2ZmZjUx
YTZkZmZiICBjb20uYXBwbGUuQ29yZUJsdWV0b290aCAoMS4wIC0gMSkgPEUxMzM1MDc0LTlEMDct
MzcwRS04NDQwLTYxQzQ4NzRCQUM1Nj4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQ29yZUJs
dWV0b290aC5mcmFtZXdvcmsvVmVyc2lvbnMvQS9Db3JlQmx1ZXRvb3RoCiAgICAweDdmZmY1MWE2
ZTAwMCAtICAgICAweDdmZmY1MWRkMmZmMyAgY29tLmFwcGxlLkNvcmVEYXRhICgxMjAgLSA4NTEp
IDw4RDYwNTQ2Ni04Njc2LTNENDUtOUE0Qi04OTgwOTcxNTUxQzM+IC9TeXN0ZW0vTGlicmFyeS9G
cmFtZXdvcmtzL0NvcmVEYXRhLmZyYW1ld29yay9WZXJzaW9ucy9BL0NvcmVEYXRhCiAgICAweDdm
ZmY1MWRkMzAwMCAtICAgICAweDdmZmY1MWViOGZmNyAgY29tLmFwcGxlLkNvcmVEaXNwbGF5ICgx
LjAgLSA5Ny4xNikgPEZDRkIyQThDLTdBNUUtMzE0Qi1BQTEyLTA0RDMzNjU2QTBFNj4gL1N5c3Rl
bS9MaWJyYXJ5L0ZyYW1ld29ya3MvQ29yZURpc3BsYXkuZnJhbWV3b3JrL1ZlcnNpb25zL0EvQ29y
ZURpc3BsYXkKICAgIDB4N2ZmZjUxZWI5MDAwIC0gICAgIDB4N2ZmZjUyMzUzZmY3ICBjb20uYXBw
bGUuQ29yZUZvdW5kYXRpb24gKDYuOSAtIDE0NTIuMjMpIDwzNThDNTQ3RC1FMjI3LTMyMjgtODIx
OC02MjMyN0Y0NjA1Qzg+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0NvcmVGb3VuZGF0aW9u
LmZyYW1ld29yay9WZXJzaW9ucy9BL0NvcmVGb3VuZGF0aW9uCiAgICAweDdmZmY1MjM1NTAwMCAt
ICAgICAweDdmZmY1Mjk4M2ZmNyAgY29tLmFwcGxlLkNvcmVHcmFwaGljcyAoMi4wIC0gMTE2MS4x
MCkgPDNCODA4REU0LUQzNzMtM0UxOS1BM0ZELTk5QjRFQjIxQUQwMT4gL1N5c3RlbS9MaWJyYXJ5
L0ZyYW1ld29ya3MvQ29yZUdyYXBoaWNzLmZyYW1ld29yay9WZXJzaW9ucy9BL0NvcmVHcmFwaGlj
cwogICAgMHg3ZmZmNTI5ODUwMDAgLSAgICAgMHg3ZmZmNTJjNzRmZmYgIGNvbS5hcHBsZS5Db3Jl
SW1hZ2UgKDEzLjAuMCAtIDU3OS40LjExKSA8NzAyRjgwMzUtMjZGRS0zQzc4LTg1ODctNEM5NTYz
RTAzQ0M0PiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9Db3JlSW1hZ2UuZnJhbWV3b3JrL1Zl
cnNpb25zL0EvQ29yZUltYWdlCiAgICAweDdmZmY1MmM3NTAwMCAtICAgICAweDdmZmY1MmNlMGZm
NyAgY29tLmFwcGxlLmNvcmVsb2NhdGlvbiAoMjI0NS4wLjQxKSA8OTgyOTY4NTgtMzRGMS0zRjgy
LTkzRjAtNTlFMjE1MEE4OUYxPiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9Db3JlTG9jYXRp
b24uZnJhbWV3b3JrL1ZlcnNpb25zL0EvQ29yZUxvY2F0aW9uCiAgICAweDdmZmY1MmYwMzAwMCAt
ICAgICAweDdmZmY1MmZlY2ZmNyAgY29tLmFwcGxlLkNvcmVNZWRpYSAoMS4wIC0gMjI3NS42MS4x
KSA8QzQ0MDE4OEQtQkMxMy0zRTFDLUEzMjItNUYxRkY3MEJEQjM0PiAvU3lzdGVtL0xpYnJhcnkv
RnJhbWV3b3Jrcy9Db3JlTWVkaWEuZnJhbWV3b3JrL1ZlcnNpb25zL0EvQ29yZU1lZGlhCiAgICAw
eDdmZmY1MmZlZDAwMCAtICAgICAweDdmZmY1MzAzYmZmZiAgY29tLmFwcGxlLkNvcmVNZWRpYUlP
ICg4MTIuMCAtIDQ5OTQpIDw1QTNCOTQ4Mi0yMUFDLTM4QTMtQjAxNC02NzAxMkYzQzM5Qzc+IC9T
eXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0NvcmVNZWRpYUlPLmZyYW1ld29yay9WZXJzaW9ucy9B
L0NvcmVNZWRpYUlPCiAgICAweDdmZmY1MzAzYzAwMCAtICAgICAweDdmZmY1MzAzY2ZmZiAgY29t
LmFwcGxlLkNvcmVTZXJ2aWNlcyAoODIyLjMxIC0gODIyLjMxKSA8NjE1OTE5QTItQUUxMS0zRjI3
LTlBMzctRkIwQ0ZGOEQzNkI2PiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9Db3JlU2Vydmlj
ZXMuZnJhbWV3b3JrL1ZlcnNpb25zL0EvQ29yZVNlcnZpY2VzCiAgICAweDdmZmY1MzAzZDAwMCAt
ICAgICAweDdmZmY1MzBiMWZmYiAgY29tLmFwcGxlLkFFICg3MzUuMSAtIDczNS4xKSA8MDhFQkEx
ODQtMjBGNy0zNzI1LUFFQTYtQzMxNDQ0ODE2MUM2PiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jr
cy9Db3JlU2VydmljZXMuZnJhbWV3b3JrL1ZlcnNpb25zL0EvRnJhbWV3b3Jrcy9BRS5mcmFtZXdv
cmsvVmVyc2lvbnMvQS9BRQogICAgMHg3ZmZmNTMwYjIwMDAgLSAgICAgMHg3ZmZmNTMzODlmZmYg
IGNvbS5hcHBsZS5Db3JlU2VydmljZXMuQ2FyYm9uQ29yZSAoMTE3OC40IC0gMTE3OC40KSA8MEQ1
RTE5QkYtMThDQi0zRkE0LThBNUYtRjZDNzg3QzVFRTA4PiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3
b3Jrcy9Db3JlU2VydmljZXMuZnJhbWV3b3JrL1ZlcnNpb25zL0EvRnJhbWV3b3Jrcy9DYXJib25D
b3JlLmZyYW1ld29yay9WZXJzaW9ucy9BL0NhcmJvbkNvcmUKICAgIDB4N2ZmZjUzMzhhMDAwIC0g
ICAgIDB4N2ZmZjUzM2JlZmZmICBjb20uYXBwbGUuRGljdGlvbmFyeVNlcnZpY2VzICgxLjIgLSAy
ODQuMikgPDY1MDVCMDc1LTQxQzMtM0M2Mi1BNEMzLTg1Q0UzRjY4MjVDRD4gL1N5c3RlbS9MaWJy
YXJ5L0ZyYW1ld29ya3MvQ29yZVNlcnZpY2VzLmZyYW1ld29yay9WZXJzaW9ucy9BL0ZyYW1ld29y
a3MvRGljdGlvbmFyeVNlcnZpY2VzLmZyYW1ld29yay9WZXJzaW9ucy9BL0RpY3Rpb25hcnlTZXJ2
aWNlcwogICAgMHg3ZmZmNTMzYmYwMDAgLSAgICAgMHg3ZmZmNTMzYzdmZmIgIGNvbS5hcHBsZS5D
b3JlU2VydmljZXMuRlNFdmVudHMgKDEyMzkuNTAuMSAtIDEyMzkuNTAuMSkgPDM2MzdDRUM3LURG
MEUtMzIwRS05NjM0LTQ0QTQ0MjkyNUM2NT4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQ29y
ZVNlcnZpY2VzLmZyYW1ld29yay9WZXJzaW9ucy9BL0ZyYW1ld29ya3MvRlNFdmVudHMuZnJhbWV3
b3JrL1ZlcnNpb25zL0EvRlNFdmVudHMKICAgIDB4N2ZmZjUzM2M4MDAwIC0gICAgIDB4N2ZmZjUz
NTg1ZmY3ICBjb20uYXBwbGUuTGF1bmNoU2VydmljZXMgKDgyMi4zMSAtIDgyMi4zMSkgPEJERkFC
MEZGLUMyQzYtMzc1Qi05RTg0LUU0M0UyNjdFMkY4Mj4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29y
a3MvQ29yZVNlcnZpY2VzLmZyYW1ld29yay9WZXJzaW9ucy9BL0ZyYW1ld29ya3MvTGF1bmNoU2Vy
dmljZXMuZnJhbWV3b3JrL1ZlcnNpb25zL0EvTGF1bmNoU2VydmljZXMKICAgIDB4N2ZmZjUzNTg2
MDAwIC0gICAgIDB4N2ZmZjUzNjM2ZmY3ICBjb20uYXBwbGUuTWV0YWRhdGEgKDEwLjcuMCAtIDEx
OTEuNC4xMykgPEI1QzIyRTcwLUMyNjUtM0M5Ri04NjVGLUIxMzg5OTRBNDE4RD4gL1N5c3RlbS9M
aWJyYXJ5L0ZyYW1ld29ya3MvQ29yZVNlcnZpY2VzLmZyYW1ld29yay9WZXJzaW9ucy9BL0ZyYW1l
d29ya3MvTWV0YWRhdGEuZnJhbWV3b3JrL1ZlcnNpb25zL0EvTWV0YWRhdGEKICAgIDB4N2ZmZjUz
NjM3MDAwIC0gICAgIDB4N2ZmZjUzNjk3ZmZmICBjb20uYXBwbGUuQ29yZVNlcnZpY2VzLk9TU2Vy
dmljZXMgKDgyMi4zMSAtIDgyMi4zMSkgPDY5MEUzQzkzLTg3OTktMzlGRi04NjYzLTE5MEE0OUIw
MDJFMz4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQ29yZVNlcnZpY2VzLmZyYW1ld29yay9W
ZXJzaW9ucy9BL0ZyYW1ld29ya3MvT1NTZXJ2aWNlcy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9PU1Nl
cnZpY2VzCiAgICAweDdmZmY1MzY5ODAwMCAtICAgICAweDdmZmY1MzcwNmZmZiAgY29tLmFwcGxl
LlNlYXJjaEtpdCAoMS40LjAgLSAxLjQuMCkgPDM2NjI1NDVBLUIxQ0YtMzA3OS1CRENELUM4Mzg1
NUNFRkVFRT4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQ29yZVNlcnZpY2VzLmZyYW1ld29y
ay9WZXJzaW9ucy9BL0ZyYW1ld29ya3MvU2VhcmNoS2l0LmZyYW1ld29yay9WZXJzaW9ucy9BL1Nl
YXJjaEtpdAogICAgMHg3ZmZmNTM3MDcwMDAgLSAgICAgMHg3ZmZmNTM3MmJmZmIgIGNvbS5hcHBs
ZS5jb3Jlc2VydmljZXMuU2hhcmVkRmlsZUxpc3QgKDcxLjIxIC0gNzEuMjEpIDw3REI3OUQ3OC05
OTI1LTMzRjgtOTZCQS0zNUFCN0FFQjMyNkE+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0Nv
cmVTZXJ2aWNlcy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9GcmFtZXdvcmtzL1NoYXJlZEZpbGVMaXN0
LmZyYW1ld29yay9WZXJzaW9ucy9BL1NoYXJlZEZpbGVMaXN0CiAgICAweDdmZmY1MzljYzAwMCAt
ICAgICAweDdmZmY1M2IxY2ZmZiAgY29tLmFwcGxlLkNvcmVUZXh0ICgzNTIuMCAtIDU3OC4xOCkg
PEI4NDU0MTE1LTJBNEItMzU4NS1BN0ExLUI0N0E2MzhGMkVFQj4gL1N5c3RlbS9MaWJyYXJ5L0Zy
YW1ld29ya3MvQ29yZVRleHQuZnJhbWV3b3JrL1ZlcnNpb25zL0EvQ29yZVRleHQKICAgIDB4N2Zm
ZjUzYjFkMDAwIC0gICAgIDB4N2ZmZjUzYjU3ZmZmICBjb20uYXBwbGUuQ29yZVZpZGVvICgxLjgg
LSAwLjApIDw4NkNDQzAzNi01MUJCLTNERDEtOTYwMS1EOTM3OThCQ0NEMEY+IC9TeXN0ZW0vTGli
cmFyeS9GcmFtZXdvcmtzL0NvcmVWaWRlby5mcmFtZXdvcmsvVmVyc2lvbnMvQS9Db3JlVmlkZW8K
ICAgIDB4N2ZmZjUzYjU4MDAwIC0gICAgIDB4N2ZmZjUzYmUzZmYzICBjb20uYXBwbGUuZnJhbWV3
b3JrLkNvcmVXTEFOICgxMy4wIC0gMTM1MC4xKSA8RTg2MkNDMDItNjlEMi0zNTAzLTg4N0ItQjZF
ODIyMzA4MUU3PiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9Db3JlV0xBTi5mcmFtZXdvcmsv
VmVyc2lvbnMvQS9Db3JlV0xBTgogICAgMHg3ZmZmNTNlNWUwMDAgLSAgICAgMHg3ZmZmNTNlNjNm
ZmYgIGNvbS5hcHBsZS5EaXNrQXJiaXRyYXRpb24gKDIuNyAtIDIuNykgPEE2NDUwMjI3LUREMjMt
MzEwMC1BREJGLURCMUMyMUU5NzlGNz4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvRGlza0Fy
Yml0cmF0aW9uLmZyYW1ld29yay9WZXJzaW9ucy9BL0Rpc2tBcmJpdHJhdGlvbgogICAgMHg3ZmZm
NTQwMjQwMDAgLSAgICAgMHg3ZmZmNTQzZWFmZmYgIGNvbS5hcHBsZS5Gb3VuZGF0aW9uICg2Ljkg
LSAxNDUyLjIzKSA8RTY0NTQwQUQtMTc1NS0zQzE2LTg1MzctNTUyQTAwRTkyNTQxPiAvU3lzdGVt
L0xpYnJhcnkvRnJhbWV3b3Jrcy9Gb3VuZGF0aW9uLmZyYW1ld29yay9WZXJzaW9ucy9DL0ZvdW5k
YXRpb24KICAgIDB4N2ZmZjU0NDVhMDAwIC0gICAgIDB4N2ZmZjU0NDhhZmZmICBjb20uYXBwbGUu
R1NTICg0LjAgLSAyLjApIDw0MTA4NzI3OC03NEFFLTNGQTUtOEMwRS05Qzc4RUI2OTYyOTk+IC9T
eXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0dTUy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9HU1MKICAg
IDB4N2ZmZjU0NTljMDAwIC0gICAgIDB4N2ZmZjU0NmEwZmZiICBjb20uYXBwbGUuQmx1ZXRvb3Ro
ICg2LjAuNSAtIDYuMC41ZjMpIDw4NUYxQjVBNi0wM0M1LTNENUEtOTBCOC01RkM4NjM0OUUzMzA+
IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0lPQmx1ZXRvb3RoLmZyYW1ld29yay9WZXJzaW9u
cy9BL0lPQmx1ZXRvb3RoCiAgICAweDdmZmY1NDcwMDAwMCAtICAgICAweDdmZmY1NDc5YmZmNyAg
Y29tLmFwcGxlLmZyYW1ld29yay5JT0tpdCAoMi4wLjIgLSAxNDQ1LjUwLjI2KSA8QTYzQ0FDOEQt
QkY1Ny0zNEZELTlBODgtMkY3NDU0NkYyMDAwPiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9J
T0tpdC5mcmFtZXdvcmsvVmVyc2lvbnMvQS9JT0tpdAogICAgMHg3ZmZmNTQ3OWQwMDAgLSAgICAg
MHg3ZmZmNTQ3YTRmZmIgIGNvbS5hcHBsZS5JT1N1cmZhY2UgKDIxMS4xMiAtIDIxMS4xMikgPDM5
MkNBN0RFLUIzNjUtMzY0RS1BRjRBLTMzRUMyQ0M0OEU2Rj4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1l
d29ya3MvSU9TdXJmYWNlLmZyYW1ld29yay9WZXJzaW9ucy9BL0lPU3VyZmFjZQogICAgMHg3ZmZm
NTQ3ZmIwMDAgLSAgICAgMHg3ZmZmNTQ5NzhmZmYgIGNvbS5hcHBsZS5JbWFnZUlPLmZyYW1ld29y
ayAoMy4zLjAgLSAxNzM5LjEpIDw0RDJGNENBMi0zOTg3LTNBMTUtOTE0OS05NTJFNDYxQzZEMTE+
IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0ltYWdlSU8uZnJhbWV3b3JrL1ZlcnNpb25zL0Ev
SW1hZ2VJTwogICAgMHg3ZmZmNTQ5NzkwMDAgLSAgICAgMHg3ZmZmNTQ5N2RmZmIgIGxpYkdJRi5k
eWxpYiAoMTczOS4xKSA8NkM2RjI5NEItMjJBRC0zRkZFLUI0NUUtM0IwOEQzMEYyRkQzPiAvU3lz
dGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9JbWFnZUlPLmZyYW1ld29yay9WZXJzaW9ucy9BL1Jlc291
cmNlcy9saWJHSUYuZHlsaWIKICAgIDB4N2ZmZjU0OTdlMDAwIC0gICAgIDB4N2ZmZjU0YTY1ZmZm
ICBsaWJKUDIuZHlsaWIgKDE3MzkuMSkgPDdFNTg0OTA3LUM4NTYtMzIwNS1CMUQyLUUyRTVCMUQ5
M0JCRT4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvSW1hZ2VJTy5mcmFtZXdvcmsvVmVyc2lv
bnMvQS9SZXNvdXJjZXMvbGliSlAyLmR5bGliCiAgICAweDdmZmY1NGE2NjAwMCAtICAgICAweDdm
ZmY1NGE4OWZmZiAgbGliSlBFRy5keWxpYiAoMTczOS4xKSA8NUREMzhCMTAtNEZEQS0zQkY4LUFE
NkQtQ0YwOEFFMjgwOEQwPiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9JbWFnZUlPLmZyYW1l
d29yay9WZXJzaW9ucy9BL1Jlc291cmNlcy9saWJKUEVHLmR5bGliCiAgICAweDdmZmY1NGQ2NjAw
MCAtICAgICAweDdmZmY1NGQ4Y2ZmMyAgbGliUG5nLmR5bGliICgxNzM5LjEpIDw2RDc5OTRFMi1C
ODQ3LTMzM0EtOUYwMy1DODBFMTFBQzlCQjA+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0lt
YWdlSU8uZnJhbWV3b3JrL1ZlcnNpb25zL0EvUmVzb3VyY2VzL2xpYlBuZy5keWxpYgogICAgMHg3
ZmZmNTRkOGQwMDAgLSAgICAgMHg3ZmZmNTRkOGZmZjMgIGxpYlJhZGlhbmNlLmR5bGliICgxNzM5
LjEpIDwzMzIwNTE2Qy1BNzRBLTMyM0MtOUJFOS1DMDFEMkU2QTIzRUI+IC9TeXN0ZW0vTGlicmFy
eS9GcmFtZXdvcmtzL0ltYWdlSU8uZnJhbWV3b3JrL1ZlcnNpb25zL0EvUmVzb3VyY2VzL2xpYlJh
ZGlhbmNlLmR5bGliCiAgICAweDdmZmY1NGQ5MDAwMCAtICAgICAweDdmZmY1NGRkZGZmMyAgbGli
VElGRi5keWxpYiAoMTczOS4xKSA8RjA4QjI5N0UtNjM2Ni0zREI2LUEzQjQtMkIxNThENzk2RUM5
PiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9JbWFnZUlPLmZyYW1ld29yay9WZXJzaW9ucy9B
L1Jlc291cmNlcy9saWJUSUZGLmR5bGliCiAgICAweDdmZmY1NWM3OTAwMCAtICAgICAweDdmZmY1
NWM5MmZmNyAgY29tLmFwcGxlLktlcmJlcm9zICgzLjAgLSAxKSA8Rjg2RENDREYtOTNDMS0zOEIz
LTgyQzItNDc3QzEyRThFRTZEPiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9LZXJiZXJvcy5m
cmFtZXdvcmsvVmVyc2lvbnMvQS9LZXJiZXJvcwogICAgMHg3ZmZmNTVkMTIwMDAgLSAgICAgMHg3
ZmZmNTVkMmZmZmIgIGNvbS5hcHBsZS5Db3JlQXV0aGVudGljYXRpb24uU2hhcmVkVXRpbHMgKDEu
MCAtIDQyNS41MC42OCkgPEY2Qzc5Q0RGLURCQkUtMzBGNy04MkMwLUYwNzRBQ0NCQkI0Nz4gL1N5
c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvTG9jYWxBdXRoZW50aWNhdGlvbi5mcmFtZXdvcmsvU3Vw
cG9ydC9TaGFyZWRVdGlscy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9TaGFyZWRVdGlscwogICAgMHg3
ZmZmNTVkMzAwMDAgLSAgICAgMHg3ZmZmNTVkNDZmZjcgIGNvbS5hcHBsZS5Mb2NhbEF1dGhlbnRp
Y2F0aW9uICgxLjAgLSA0MjUuNTAuNjgpIDxDQUNFRUMyMy03MTczLTMxNzgtOEJFNi1ERTREQTZF
QjRFOTg+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0xvY2FsQXV0aGVudGljYXRpb24uZnJh
bWV3b3JrL1ZlcnNpb25zL0EvTG9jYWxBdXRoZW50aWNhdGlvbgogICAgMHg3ZmZmNTVmNTAwMDAg
LSAgICAgMHg3ZmZmNTVmNTdmZmYgIGNvbS5hcHBsZS5NZWRpYUFjY2Vzc2liaWxpdHkgKDEuMCAt
IDExNCkgPDlGNzJBQUNELUJBRUItMzY0Ni1CRDBGLTEyQzQ3NTkxQzIwRD4gL1N5c3RlbS9MaWJy
YXJ5L0ZyYW1ld29ya3MvTWVkaWFBY2Nlc3NpYmlsaXR5LmZyYW1ld29yay9WZXJzaW9ucy9BL01l
ZGlhQWNjZXNzaWJpbGl0eQogICAgMHg3ZmZmNTYwMDMwMDAgLSAgICAgMHg3ZmZmNTY2NmFmZjcg
IGNvbS5hcHBsZS5NZWRpYVRvb2xib3ggKDEuMCAtIDIyNzUuNjEuMSkgPEU5MkI4NDg3LUFFMUMt
M0VBOS1BODBCLTk5QjQzQUQ3NUZDMD4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvTWVkaWFU
b29sYm94LmZyYW1ld29yay9WZXJzaW9ucy9BL01lZGlhVG9vbGJveAogICAgMHg3ZmZmNTY2NmMw
MDAgLSAgICAgMHg3ZmZmNTY2ZWRmZjcgIGNvbS5hcHBsZS5NZXRhbCAoMTI1LjI1IC0gMTI1LjI1
KSA8QjJFQ0EwNTAtNEMxMy0zRUFELUExQzgtQUMyMUVGRjEyMkYxPiAvU3lzdGVtL0xpYnJhcnkv
RnJhbWV3b3Jrcy9NZXRhbC5mcmFtZXdvcmsvVmVyc2lvbnMvQS9NZXRhbAogICAgMHg3ZmZmNTY3
MGEwMDAgLSAgICAgMHg3ZmZmNTY3MjVmZmYgIGNvbS5hcHBsZS5NZXRhbFBlcmZvcm1hbmNlU2hh
ZGVycy5NUFNDb3JlICgxLjAgLSAxKSA8MEI0NDU1RkUtNUM5Ny0zNDVDLUI0MTYtMzI1RUM2RDg4
QTJBPiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9NZXRhbFBlcmZvcm1hbmNlU2hhZGVycy5m
cmFtZXdvcmsvRnJhbWV3b3Jrcy9NUFNDb3JlLmZyYW1ld29yay9WZXJzaW9ucy9BL01QU0NvcmUK
ICAgIDB4N2ZmZjU2NzI2MDAwIC0gICAgIDB4N2ZmZjU2Nzk1ZmVmICBjb20uYXBwbGUuTWV0YWxQ
ZXJmb3JtYW5jZVNoYWRlcnMuTVBTSW1hZ2UgKDEuMCAtIDEpIDw4N0YxNDE5OS1DNDQ1LTM0QzIt
OTBGOC01N0MyOTIxMjQ4M0U+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL01ldGFsUGVyZm9y
bWFuY2VTaGFkZXJzLmZyYW1ld29yay9GcmFtZXdvcmtzL01QU0ltYWdlLmZyYW1ld29yay9WZXJz
aW9ucy9BL01QU0ltYWdlCiAgICAweDdmZmY1Njc5NjAwMCAtICAgICAweDdmZmY1NjdiYWZmZiAg
Y29tLmFwcGxlLk1ldGFsUGVyZm9ybWFuY2VTaGFkZXJzLk1QU01hdHJpeCAoMS4wIC0gMSkgPEJE
NTBGRDlDLUNFOTItMzRBRi04NjYzLTk2OEJGODkyMDJBMD4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1l
d29ya3MvTWV0YWxQZXJmb3JtYW5jZVNoYWRlcnMuZnJhbWV3b3JrL0ZyYW1ld29ya3MvTVBTTWF0
cml4LmZyYW1ld29yay9WZXJzaW9ucy9BL01QU01hdHJpeAogICAgMHg3ZmZmNTY3YmIwMDAgLSAg
ICAgMHg3ZmZmNTY4YTJmZjcgIGNvbS5hcHBsZS5NZXRhbFBlcmZvcm1hbmNlU2hhZGVycy5NUFNO
ZXVyYWxOZXR3b3JrICgxLjAgLSAxKSA8RkJERENBRTYtRUM2RS0zNjFGLUI5MjQtQjNFQkRFQUMy
RDJGPiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9NZXRhbFBlcmZvcm1hbmNlU2hhZGVycy5m
cmFtZXdvcmsvRnJhbWV3b3Jrcy9NUFNOZXVyYWxOZXR3b3JrLmZyYW1ld29yay9WZXJzaW9ucy9B
L01QU05ldXJhbE5ldHdvcmsKICAgIDB4N2ZmZjU2OGEzMDAwIC0gICAgIDB4N2ZmZjU2OGEzZmY3
ICBjb20uYXBwbGUuTWV0YWxQZXJmb3JtYW5jZVNoYWRlcnMuTWV0YWxQZXJmb3JtYW5jZVNoYWRl
cnMgKDEuMCAtIDEpIDwyMEVDQjUyQi1CNUMyLTM5RUEtODhFMy1ERkVDMEMzQ0M5RkY+IC9TeXN0
ZW0vTGlicmFyeS9GcmFtZXdvcmtzL01ldGFsUGVyZm9ybWFuY2VTaGFkZXJzLmZyYW1ld29yay9W
ZXJzaW9ucy9BL01ldGFsUGVyZm9ybWFuY2VTaGFkZXJzCiAgICAweDdmZmY1NzhhMjAwMCAtICAg
ICAweDdmZmY1NzhhZWZmYiAgY29tLmFwcGxlLk5ldEZTICg2LjAgLSA0LjApIDw0NzFERDk2Ri1G
QTJFLTNGRTktOTc0Ni0yNTE5QTY3ODBEMUE+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL05l
dEZTLmZyYW1ld29yay9WZXJzaW9ucy9BL05ldEZTCiAgICAweDdmZmY1YTZhMDAwMCAtICAgICAw
eDdmZmY1YTZlZWZmZiAgY29tLmFwcGxlLm9wZW5jbCAoMi44LjE1IC0gMi44LjE1KSA8ODNFRDM5
RDAtMUQzOS0zNTkzLUJBMjUtNzBBOEE5MTFERTcxPiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jr
cy9PcGVuQ0wuZnJhbWV3b3JrL1ZlcnNpb25zL0EvT3BlbkNMCiAgICAweDdmZmY1YTZlZjAwMCAt
ICAgICAweDdmZmY1YTcwYmZmYiAgY29tLmFwcGxlLkNGT3BlbkRpcmVjdG9yeSAoMTAuMTMgLSAy
MDcuNTAuMSkgPEMyNzE1QTdBLTJFNUMtM0EyMS1BREI0LTcyNkY3MDdBMTI5ND4gL1N5c3RlbS9M
aWJyYXJ5L0ZyYW1ld29ya3MvT3BlbkRpcmVjdG9yeS5mcmFtZXdvcmsvVmVyc2lvbnMvQS9GcmFt
ZXdvcmtzL0NGT3BlbkRpcmVjdG9yeS5mcmFtZXdvcmsvVmVyc2lvbnMvQS9DRk9wZW5EaXJlY3Rv
cnkKICAgIDB4N2ZmZjVhNzBjMDAwIC0gICAgIDB4N2ZmZjVhNzE3ZmZmICBjb20uYXBwbGUuT3Bl
bkRpcmVjdG9yeSAoMTAuMTMgLSAyMDcuNTAuMSkgPDIyMEZCNkYyLTQ4OTItM0E2Ni04ODM4LUMx
MzRDRjY1N0QzQT4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvT3BlbkRpcmVjdG9yeS5mcmFt
ZXdvcmsvVmVyc2lvbnMvQS9PcGVuRGlyZWN0b3J5CiAgICAweDdmZmY1Yjg5NjAwMCAtICAgICAw
eDdmZmY1Yjg5OGZmZiAgbGliQ1ZNU1BsdWdpblN1cHBvcnQuZHlsaWIgKDE2LjUuMTApIDxCRjVE
MDY1QS1BMzhCLTM0NDYtOTQxOC03OTlGNTk4MDcyRUY+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdv
cmtzL09wZW5HTC5mcmFtZXdvcmsvVmVyc2lvbnMvQS9MaWJyYXJpZXMvbGliQ1ZNU1BsdWdpblN1
cHBvcnQuZHlsaWIKICAgIDB4N2ZmZjViODk5MDAwIC0gICAgIDB4N2ZmZjViODllZmZiICBsaWJD
b3JlRlNDYWNoZS5keWxpYiAoMTYyLjYuMSkgPDg3OUIyNzM4LTJFOEEtMzU5Ni1BRkY4LTlDM0ZC
MUI2ODI4Qj4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvT3BlbkdMLmZyYW1ld29yay9WZXJz
aW9ucy9BL0xpYnJhcmllcy9saWJDb3JlRlNDYWNoZS5keWxpYgogICAgMHg3ZmZmNWI4OWYwMDAg
LSAgICAgMHg3ZmZmNWI4YTNmZmYgIGxpYkNvcmVWTUNsaWVudC5keWxpYiAoMTYyLjYuMSkgPDY0
RUQwQTg0LTIyNUYtMzlCQy1CRTBELUM4OTZBQ0Y1QjUwQT4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1l
d29ya3MvT3BlbkdMLmZyYW1ld29yay9WZXJzaW9ucy9BL0xpYnJhcmllcy9saWJDb3JlVk1DbGll
bnQuZHlsaWIKICAgIDB4N2ZmZjViOGE0MDAwIC0gICAgIDB4N2ZmZjViOGFkZmY3ICBsaWJHRlhT
aGFyZWQuZHlsaWIgKDE2LjUuMTApIDw2MDI0QjFGRS1BQ0Q3LTMzMTQtQjM5MC04NTk3MkNCOUI3
Nzg+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL09wZW5HTC5mcmFtZXdvcmsvVmVyc2lvbnMv
QS9MaWJyYXJpZXMvbGliR0ZYU2hhcmVkLmR5bGliCiAgICAweDdmZmY1YjhhZTAwMCAtICAgICAw
eDdmZmY1YjhiOWZmZiAgbGliR0wuZHlsaWIgKDE2LjUuMTApIDxBQjhCNkM3My04NDk2LTM3ODQt
ODNGNi0yNzczN0VEMDNCMDk+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL09wZW5HTC5mcmFt
ZXdvcmsvVmVyc2lvbnMvQS9MaWJyYXJpZXMvbGliR0wuZHlsaWIKICAgIDB4N2ZmZjViOGJhMDAw
IC0gICAgIDB4N2ZmZjViOGY1ZmU3ICBsaWJHTEltYWdlLmR5bGliICgxNi41LjEwKSA8NUI0MUQw
NzQtMzEzMi0zNTg3LTkxQjYtRTQ0MUJBOEM5RjEzPiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jr
cy9PcGVuR0wuZnJhbWV3b3JrL1ZlcnNpb25zL0EvTGlicmFyaWVzL2xpYkdMSW1hZ2UuZHlsaWIK
ICAgIDB4N2ZmZjViYTYzMDAwIC0gICAgIDB4N2ZmZjViYWExZmZiICBsaWJHTFUuZHlsaWIgKDE2
LjUuMTApIDxGNjg0NDkxMi0xQjg2LTM0REYtOUZCNS1BNDI4Q0M3QjVCMTg+IC9TeXN0ZW0vTGli
cmFyeS9GcmFtZXdvcmtzL09wZW5HTC5mcmFtZXdvcmsvVmVyc2lvbnMvQS9MaWJyYXJpZXMvbGli
R0xVLmR5bGliCiAgICAweDdmZmY1YzQxOTAwMCAtICAgICAweDdmZmY1YzQyOGZmZiAgY29tLmFw
cGxlLm9wZW5nbCAoMTYuNS4xMCAtIDE2LjUuMTApIDxCQzRFRUZFMy1BMDlCLTM5OTgtQjcyMy0x
NDE1Qjk5NUIwRUU+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL09wZW5HTC5mcmFtZXdvcmsv
VmVyc2lvbnMvQS9PcGVuR0wKICAgIDB4N2ZmZjVkMjc3MDAwIC0gICAgIDB4N2ZmZjVkNGMyZmY3
ICBjb20uYXBwbGUuUXVhcnR6Q29yZSAoMS4xMSAtIDU4NC40MCkgPEFCQzdGOEZBLTVGNUEtMzFG
NC04NjhCLUZEQzQxNzVCQUZBQz4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvUXVhcnR6Q29y
ZS5mcmFtZXdvcmsvVmVyc2lvbnMvQS9RdWFydHpDb3JlCiAgICAweDdmZmY1ZGNmNjAwMCAtICAg
ICAweDdmZmY1ZTAxZWZmZiAgY29tLmFwcGxlLnNlY3VyaXR5ICg3LjAgLSA1ODI4Ni41MS42KSA8
NzIxMkQyNTctNTMyNC0zREJBLThDMjYtNTA0RDZCOEY2MzJBPiAvU3lzdGVtL0xpYnJhcnkvRnJh
bWV3b3Jrcy9TZWN1cml0eS5mcmFtZXdvcmsvVmVyc2lvbnMvQS9TZWN1cml0eQogICAgMHg3ZmZm
NWUwMWYwMDAgLSAgICAgMHg3ZmZmNWUwYWJmZjcgIGNvbS5hcHBsZS5zZWN1cml0eWZvdW5kYXRp
b24gKDYuMCAtIDU1MTg1LjUwLjUpIDwwODdENjAxRS03ODEzLTNGOUUtOTdFRS1CQzcwODFGNTIw
QkQ+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL1NlY3VyaXR5Rm91bmRhdGlvbi5mcmFtZXdv
cmsvVmVyc2lvbnMvQS9TZWN1cml0eUZvdW5kYXRpb24KICAgIDB4N2ZmZjVlMGFjMDAwIC0gICAg
IDB4N2ZmZjVlMGRjZmZmICBjb20uYXBwbGUuc2VjdXJpdHlpbnRlcmZhY2UgKDEwLjAgLSA1NTEw
OS41MC42KSA8MzQzRkZBOTEtODlDRi0zQTNGLTgzM0EtRDY1QTI2NDdDQ0YxPiAvU3lzdGVtL0xp
YnJhcnkvRnJhbWV3b3Jrcy9TZWN1cml0eUludGVyZmFjZS5mcmFtZXdvcmsvVmVyc2lvbnMvQS9T
ZWN1cml0eUludGVyZmFjZQogICAgMHg3ZmZmNWUwZGQwMDAgLSAgICAgMHg3ZmZmNWUwZTFmZmIg
IGNvbS5hcHBsZS54cGMuU2VydmljZU1hbmFnZW1lbnQgKDEuMCAtIDEpIDw1QkZEQjNFRC03M0E3
LTMwMzUtQTVCQy1BREE2RTRGNzRCRkQ+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL1NlcnZp
Y2VNYW5hZ2VtZW50LmZyYW1ld29yay9WZXJzaW9ucy9BL1NlcnZpY2VNYW5hZ2VtZW50CiAgICAw
eDdmZmY1ZTQ4NjAwMCAtICAgICAweDdmZmY1ZTRmNmZmMyAgY29tLmFwcGxlLlN5c3RlbUNvbmZp
Z3VyYXRpb24gKDEuMTcgLSAxLjE3KSA8ODUzMkI4RTktN0UzMC0zNUEzLUJDNEEtRERFOEUwNjE0
RkRBPiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9TeXN0ZW1Db25maWd1cmF0aW9uLmZyYW1l
d29yay9WZXJzaW9ucy9BL1N5c3RlbUNvbmZpZ3VyYXRpb24KICAgIDB4N2ZmZjVlNmFiMDAwIC0g
ICAgIDB4N2ZmZjVlYTI2ZmZmICBjb20uYXBwbGUuVmlkZW9Ub29sYm94ICgxLjAgLSAyMjc1LjYx
LjEpIDxCOEU2MEYyMC1ERUI3LTM4Q0EtQjI5NC1GRDFEQjNGMjMzRUM+IC9TeXN0ZW0vTGlicmFy
eS9GcmFtZXdvcmtzL1ZpZGVvVG9vbGJveC5mcmFtZXdvcmsvVmVyc2lvbnMvQS9WaWRlb1Rvb2xi
b3gKICAgIDB4N2ZmZjYxM2U3MDAwIC0gICAgIDB4N2ZmZjYxNDdhZmY3ICBjb20uYXBwbGUuQVBG
UyAoMS4wIC0gMSkgPEQxQ0U1MkUwLTQ1QzAtMzBDNC1CNDQwLUUyQ0YyRjc0Q0VFNT4gL1N5c3Rl
bS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL0FQRlMuZnJhbWV3b3JrL1ZlcnNpb25zL0EvQVBG
UwogICAgMHg3ZmZmNjIwOTUwMDAgLSAgICAgMHg3ZmZmNjIwYmRmZmYgIGNvbS5hcHBsZS5mcmFt
ZXdvcmsuQXBwbGU4MDIxMSAoMTMuMCAtIDEzNjEuNykgPDE2NjI3ODc2LThDRjUtMzUwMi1BMUQ2
LTM1RkNCREQ1RTc5QT4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL0FwcGxlODAy
MTEuZnJhbWV3b3JrL1ZlcnNpb25zL0EvQXBwbGU4MDIxMQogICAgMHg3ZmZmNjIwYmYwMDAgLSAg
ICAgMHg3ZmZmNjIwY2VmZWYgIGNvbS5hcHBsZS5BcHBsZUZTQ29tcHJlc3Npb24gKDk2LjMwLjIg
LSAxLjApIDxBQkZGMjI0Qi0yMkQ2LTM1RjYtQTA3Mi05NTQ4RkQzODhFQjc+IC9TeXN0ZW0vTGli
cmFyeS9Qcml2YXRlRnJhbWV3b3Jrcy9BcHBsZUZTQ29tcHJlc3Npb24uZnJhbWV3b3JrL1ZlcnNp
b25zL0EvQXBwbGVGU0NvbXByZXNzaW9uCiAgICAweDdmZmY2MjIxMDAwMCAtICAgICAweDdmZmY2
MjI1OGZmMyAgY29tLmFwcGxlLkFwcGxlSlBFRyAoMS4wIC0gMSkgPDhERDQxMENCLTc2QTEtM0Yy
Mi05QTlGLTA0OTFGQTBDRUI0QT4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL0Fw
cGxlSlBFRy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9BcHBsZUpQRUcKICAgIDB4N2ZmZjYyMjkzMDAw
IC0gICAgIDB4N2ZmZjYyMmJiZmZmICBjb20uYXBwbGUuYXBwbGVzYXVjZSAoMS4wIC0gPz8/KSA8
Q0NBOEIwOTQtMUJDRS0zQUUzLUEwQTctRDU0NEM4MThERTM2PiAvU3lzdGVtL0xpYnJhcnkvUHJp
dmF0ZUZyYW1ld29ya3MvQXBwbGVTYXVjZS5mcmFtZXdvcmsvVmVyc2lvbnMvQS9BcHBsZVNhdWNl
CiAgICAweDdmZmY2MjM4ODAwMCAtICAgICAweDdmZmY2MjNkOGZmNyAgY29tLmFwcGxlLkFwcGxl
VkFGcmFtZXdvcmsgKDUuMC40MSAtIDUuMC40MSkgPDgxNjlBQkM0LTU2RjAtMzAxRS1COTEzLUE3
NjJGN0U0MERCRj4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL0FwcGxlVkEuZnJh
bWV3b3JrL1ZlcnNpb25zL0EvQXBwbGVWQQogICAgMHg3ZmZmNjJhZGIwMDAgLSAgICAgMHg3ZmZm
NjJhZTJmZjcgIGNvbS5hcHBsZS5jb3Jlc2VydmljZXMuQmFja2dyb3VuZFRhc2tNYW5hZ2VtZW50
ICgxLjAgLSA1Ny4xKSA8NTFBNDFDQTMtREIxRC0zMzgwLTk5M0UtOTlDNTRBRUU1MThFPiAvU3lz
dGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvQmFja2dyb3VuZFRhc2tNYW5hZ2VtZW50LmZy
YW1ld29yay9WZXJzaW9ucy9BL0JhY2tncm91bmRUYXNrTWFuYWdlbWVudAogICAgMHg3ZmZmNjJh
ZTMwMDAgLSAgICAgMHg3ZmZmNjJiNmFmZjcgIGNvbS5hcHBsZS5iYWNrdXAuZnJhbWV3b3JrICgx
LjkuNSAtIDEuOS41KSA8QkMwMjBCREQtN0M5My0zN0U1LUE3NjItNEZEQ0JEMjA1NkE4PiAvU3lz
dGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvQmFja3VwLmZyYW1ld29yay9WZXJzaW9ucy9B
L0JhY2t1cAogICAgMHg3ZmZmNjQ1MjAwMDAgLSAgICAgMHg3ZmZmNjQ1MjlmZjMgIGNvbS5hcHBs
ZS5Db21tb25BdXRoICg0LjAgLSAyLjApIDw0RDIzN0IyNS0yN0U1LTM1NzctOTQ4Qi0wNzM2NTlG
NkQzQzA+IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJhbWV3b3Jrcy9Db21tb25BdXRoLmZyYW1l
d29yay9WZXJzaW9ucy9BL0NvbW1vbkF1dGgKICAgIDB4N2ZmZjY0ODY1MDAwIC0gICAgIDB4N2Zm
ZjY0YzZkZmZmICBjb20uYXBwbGUuQ29yZUFVQyAoMjU5LjAuMCAtIDI1OS4wLjApIDwxRTBGQjJD
Ny0xMDlFLTM5MjQtOEU3Ri04QzZBQ0Q3OEFGMjY+IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJh
bWV3b3Jrcy9Db3JlQVVDLmZyYW1ld29yay9WZXJzaW9ucy9BL0NvcmVBVUMKICAgIDB4N2ZmZjY0
YzZlMDAwIC0gICAgIDB4N2ZmZjY0YzllZmY3ICBjb20uYXBwbGUuQ29yZUFWQ0hEICg1LjkuMCAt
IDU5MDAuNC4xKSA8RTlGRjk1NzQtMTIyQS0zOTY2LUFBMkItNTQ2RTUxMkFDRDA2PiAvU3lzdGVt
L0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvQ29yZUFWQ0hELmZyYW1ld29yay9WZXJzaW9ucy9B
L0NvcmVBVkNIRAogICAgMHg3ZmZmNjRjYjUwMDAgLSAgICAgMHg3ZmZmNjRjZTJmZmYgIGNvbS5h
cHBsZS5Db3JlQW5hbHl0aWNzLkNvcmVBbmFseXRpY3MgKDEuMCAtIDEpIDxBNTA4Qzc0Qy0xMTRE
LTMxNTYtQUM4Ny04RjEyQTJDMDIzQzk+IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJhbWV3b3Jr
cy9Db3JlQW5hbHl0aWNzLmZyYW1ld29yay9WZXJzaW9ucy9BL0NvcmVBbmFseXRpY3MKICAgIDB4
N2ZmZjY1MDJjMDAwIC0gICAgIDB4N2ZmZjY1MDNjZmY3ICBjb20uYXBwbGUuQ29yZUVtb2ppICgx
LjAgLSA2OS4zKSA8QTQzNTdGNUMtMEMzOC0zQTYxLUI0NTYtRDczMjFFQjJDRUU1PiAvU3lzdGVt
L0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvQ29yZUVtb2ppLmZyYW1ld29yay9WZXJzaW9ucy9B
L0NvcmVFbW9qaQogICAgMHg3ZmZmNjVjM2MwMDAgLSAgICAgMHg3ZmZmNjVjNDFmZjcgIGNvbS5h
cHBsZS5Db3JlT3B0aW1pemF0aW9uICgxLjAgLSAxKSA8Nzg1QjYyMkItOEY3RC0zQjRELTgzQUYt
RUI5OENCNzlGRkY2PiAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvQ29yZU9wdGlt
aXphdGlvbi5mcmFtZXdvcmsvVmVyc2lvbnMvQS9Db3JlT3B0aW1pemF0aW9uCiAgICAweDdmZmY2
NWQ5MDAwMCAtICAgICAweDdmZmY2NWRlY2ZmZiAgY29tLmFwcGxlLkNvcmVQcmVkaWN0aW9uICgx
LjAgLSAxKSA8QTI2NDI1REYtRTIyMi0zMzNCLThDQUUtNjE0MUE1OEIxNzJDPiAvU3lzdGVtL0xp
YnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvQ29yZVByZWRpY3Rpb24uZnJhbWV3b3JrL1ZlcnNpb25z
L0EvQ29yZVByZWRpY3Rpb24KICAgIDB4N2ZmZjY1ZjFhMDAwIC0gICAgIDB4N2ZmZjY1ZjRiZmYz
ICBjb20uYXBwbGUuQ29yZVNlcnZpY2VzSW50ZXJuYWwgKDMwOS4xIC0gMzA5LjEpIDxFQjA5Q0FG
Qy1BRTlCLTMyNTctQkU0NS01NDcxRDlGNjRBQUQ+IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJh
bWV3b3Jrcy9Db3JlU2VydmljZXNJbnRlcm5hbC5mcmFtZXdvcmsvVmVyc2lvbnMvQS9Db3JlU2Vy
dmljZXNJbnRlcm5hbAogICAgMHg3ZmZmNjYyODcwMDAgLSAgICAgMHg3ZmZmNjYzMThmZmYgIGNv
bS5hcHBsZS5Db3JlU3ltYm9saWNhdGlvbiAoOS4zIC0gNjQwMjYpIDxCQUYzQ0U2RS04MTQwLTMx
NTktQkYxQi1COTUzODE2NDU5QTA+IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJhbWV3b3Jrcy9D
b3JlU3ltYm9saWNhdGlvbi5mcmFtZXdvcmsvVmVyc2lvbnMvQS9Db3JlU3ltYm9saWNhdGlvbgog
ICAgMHg3ZmZmNjYzOWIwMDAgLSAgICAgMHg3ZmZmNjY0Y2ZmZmYgIGNvbS5hcHBsZS5jb3JldWkg
KDIuMSAtIDQ5NC4xKSA8MTk2MjRDQUEtNzRERS0zREQzLTk1ODUtRTY0QkU4NjZFQkZGPiAvU3lz
dGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvQ29yZVVJLmZyYW1ld29yay9WZXJzaW9ucy9B
L0NvcmVVSQogICAgMHg3ZmZmNjY0ZDAwMDAgLSAgICAgMHg3ZmZmNjY2MDBmZjcgIGNvbS5hcHBs
ZS5Db3JlVXRpbHMgKDUuNSAtIDU1MC40NCkgPERGQzM2NEMzLTA4MTItMzFCNS05Qzc5LUM4MUMy
REZEREI4Qj4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL0NvcmVVdGlscy5mcmFt
ZXdvcmsvVmVyc2lvbnMvQS9Db3JlVXRpbHMKICAgIDB4N2ZmZjY2NjU1MDAwIC0gICAgIDB4N2Zm
ZjY2NmI5ZmZmICBjb20uYXBwbGUuZnJhbWV3b3JrLkNvcmVXaUZpICgxMy4wIC0gMTM1MC4xKSA8
NkVDNURFQjMtNkUyRi0zREMyLUJFNTktMUZEMDUxNzVGQjBDPiAvU3lzdGVtL0xpYnJhcnkvUHJp
dmF0ZUZyYW1ld29ya3MvQ29yZVdpRmkuZnJhbWV3b3JrL1ZlcnNpb25zL0EvQ29yZVdpRmkKICAg
IDB4N2ZmZjY2NmJhMDAwIC0gICAgIDB4N2ZmZjY2NmNhZmY3ICBjb20uYXBwbGUuQ3Jhc2hSZXBv
cnRlclN1cHBvcnQgKDEwLjEzIC0gMSkgPDREMERGNzQxLThCRkEtM0JDRi05NzFELTZFRjg0OTAx
OTUzND4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL0NyYXNoUmVwb3J0ZXJTdXBw
b3J0LmZyYW1ld29yay9WZXJzaW9ucy9BL0NyYXNoUmVwb3J0ZXJTdXBwb3J0CiAgICAweDdmZmY2
Njc0ODAwMCAtICAgICAweDdmZmY2Njc1N2ZmNyAgY29tLmFwcGxlLmZyYW1ld29yay5ERlJGb3Vu
ZGF0aW9uICgxLjAgLSAxOTEuNykgPDNCOEVENkY3LTVERkYtMzRDMy1CQTkwLUREQjg1Njc5Njg0
Qz4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL0RGUkZvdW5kYXRpb24uZnJhbWV3
b3JrL1ZlcnNpb25zL0EvREZSRm91bmRhdGlvbgogICAgMHg3ZmZmNjY3NWEwMDAgLSAgICAgMHg3
ZmZmNjY3NWVmZmIgIGNvbS5hcHBsZS5EU0V4dGVybmFsRGlzcGxheSAoMy4xIC0gMzgwKSA8OEQw
M0QzNDYtODg3QS0zQ0U3LTk0ODMtNEFENzgwNEQxRkJCPiAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0
ZUZyYW1ld29ya3MvRFNFeHRlcm5hbERpc3BsYXkuZnJhbWV3b3JrL1ZlcnNpb25zL0EvRFNFeHRl
cm5hbERpc3BsYXkKICAgIDB4N2ZmZjY2N2UwMDAwIC0gICAgIDB4N2ZmZjY2ODU2ZmZmICBjb20u
YXBwbGUuZGF0YWRldGVjdG9yc2NvcmUgKDcuMCAtIDU5MC4zKSA8ODNFODVBNjItNDRBOC0zM0Y4
LUFENzktQUM0QzgwNzE4NEM0PiAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvRGF0
YURldGVjdG9yc0NvcmUuZnJhbWV3b3JrL1ZlcnNpb25zL0EvRGF0YURldGVjdG9yc0NvcmUKICAg
IDB4N2ZmZjY2OGE0MDAwIC0gICAgIDB4N2ZmZjY2OGU0ZmY3ICBjb20uYXBwbGUuRGVidWdTeW1i
b2xzICgxODEuMCAtIDE4MS4wKSA8Mjk5QTAyMzgtRUQ3OC0zNjc2LUIxMzEtMjc0RDk3MjgyNEFB
PiAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvRGVidWdTeW1ib2xzLmZyYW1ld29y
ay9WZXJzaW9ucy9BL0RlYnVnU3ltYm9scwogICAgMHg3ZmZmNjY4ZTUwMDAgLSAgICAgMHg3ZmZm
NjZhMTRmZmYgIGNvbS5hcHBsZS5kZXNrdG9wc2VydmljZXMgKDEuMTIuNCAtIDEuMTIuNCkgPDQ3
QzNGQkYzLTVFNzUtMzgyMS1CMDAzLTJBNERDMzY1N0Q4RD4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZh
dGVGcmFtZXdvcmtzL0Rlc2t0b3BTZXJ2aWNlc1ByaXYuZnJhbWV3b3JrL1ZlcnNpb25zL0EvRGVz
a3RvcFNlcnZpY2VzUHJpdgogICAgMHg3ZmZmNjc4MmIwMDAgLSAgICAgMHg3ZmZmNjdjNTlmZmYg
IGNvbS5hcHBsZS52aXNpb24uRmFjZUNvcmUgKDMuMy4yIC0gMy4zLjIpIDxCNTc0RkUzMy00QTQx
LTM2MTEtOTczOC0zODhFQkFGMDNFMzc+IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJhbWV3b3Jr
cy9GYWNlQ29yZS5mcmFtZXdvcmsvVmVyc2lvbnMvQS9GYWNlQ29yZQogICAgMHg3ZmZmNmFmMjEw
MDAgLSAgICAgMHg3ZmZmNmFmMjZmZjcgIGNvbS5hcHBsZS5HUFVXcmFuZ2xlciAoMy4xOC40OCAt
IDMuMTguNDgpIDxEMkJBNENGQS1FRDBBLTNGRUMtQjVGRi0yRDZDMDU1NzMzNEU+IC9TeXN0ZW0v
TGlicmFyeS9Qcml2YXRlRnJhbWV3b3Jrcy9HUFVXcmFuZ2xlci5mcmFtZXdvcmsvVmVyc2lvbnMv
QS9HUFVXcmFuZ2xlcgogICAgMHg3ZmZmNmIzMTcwMDAgLSAgICAgMHg3ZmZmNmJjNTlmZjcgIGNv
bS5hcHBsZS5HZW9TZXJ2aWNlcyAoMS4wIC0gMTM2My4yNC44LjE1LjU4KSA8QkFCNkYzMDAtQTdD
MC0zQ0U4LUExNUQtREFFMDc4NkFCNDU4PiAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29y
a3MvR2VvU2VydmljZXMuZnJhbWV3b3JrL1ZlcnNpb25zL0EvR2VvU2VydmljZXMKICAgIDB4N2Zm
ZjZiYzljMDAwIC0gICAgIDB4N2ZmZjZiY2FiZmZmICBjb20uYXBwbGUuR3JhcGhWaXN1YWxpemVy
ICgxLjAgLSA1KSA8Qjk5M0I4QTItNTcwMC0zREZDLTlFQjctNENDRUU4Rjk1OUYxPiAvU3lzdGVt
L0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvR3JhcGhWaXN1YWxpemVyLmZyYW1ld29yay9WZXJz
aW9ucy9BL0dyYXBoVmlzdWFsaXplcgogICAgMHg3ZmZmNmJkMmUwMDAgLSAgICAgMHg3ZmZmNmJk
YTJmZmYgIGNvbS5hcHBsZS5IZWltZGFsICg0LjAgLSAyLjApIDwxODYwN0Q3NS1EQjc4LTNDQzct
OTQ3RS1BQzc2OTE5NTE2NEM+IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJhbWV3b3Jrcy9IZWlt
ZGFsLmZyYW1ld29yay9WZXJzaW9ucy9BL0hlaW1kYWwKICAgIDB4N2ZmZjZjNjllMDAwIC0gICAg
IDB4N2ZmZjZjNmE1ZmY3ICBjb20uYXBwbGUuSU9BY2NlbGVyYXRvciAoMzc4LjE4LjEgLSAzNzgu
MTguMSkgPEU0N0RERTY2LTFCMkItMzEwRi1BMDYwLTYzOENBNUQ4NkY5Qz4gL1N5c3RlbS9MaWJy
YXJ5L1ByaXZhdGVGcmFtZXdvcmtzL0lPQWNjZWxlcmF0b3IuZnJhbWV3b3JrL1ZlcnNpb25zL0Ev
SU9BY2NlbGVyYXRvcgogICAgMHg3ZmZmNmM2YTkwMDAgLSAgICAgMHg3ZmZmNmM2YzFmZmYgIGNv
bS5hcHBsZS5JT1ByZXNlbnRtZW50ICgxLjAgLSAzNS4xKSA8MjE0QUQ1ODItNDY2Ri0zODQ0LUEw
QTQtREUwNzQyQThCODk5PiAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvSU9QcmVz
ZW50bWVudC5mcmFtZXdvcmsvVmVyc2lvbnMvQS9JT1ByZXNlbnRtZW50CiAgICAweDdmZmY2Y2E4
YzAwMCAtICAgICAweDdmZmY2Y2FiMmZmYiAgY29tLmFwcGxlLkljb25TZXJ2aWNlcyAoOTcuNiAt
IDk3LjYpIDxBNTZEODI2RC0yMEQyLTM0QkUtQUFDQy1BODBDRkNCNEU5MTU+IC9TeXN0ZW0vTGli
cmFyeS9Qcml2YXRlRnJhbWV3b3Jrcy9JY29uU2VydmljZXMuZnJhbWV3b3JrL1ZlcnNpb25zL0Ev
SWNvblNlcnZpY2VzCiAgICAweDdmZmY2Y2JiZTAwMCAtICAgICAweDdmZmY2Y2JjMWZmMyAgY29t
LmFwcGxlLkludGVybmF0aW9uYWxTdXBwb3J0ICgxLjAgLSAxKSA8NUFCMzgyRkQtQkY4MS0zNkEx
LTk1NjUtNjFGMUZEMzk4RUNBPiAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvSW50
ZXJuYXRpb25hbFN1cHBvcnQuZnJhbWV3b3JrL1ZlcnNpb25zL0EvSW50ZXJuYXRpb25hbFN1cHBv
cnQKICAgIDB4N2ZmZjZjYzJmMDAwIC0gICAgIDB4N2ZmZjZjYzNmZmZiICBjb20uYXBwbGUuSW50
bFByZWZlcmVuY2VzICgyLjAgLSAyMjcuNS4yKSA8NDM2QkJFOUItNTk1Qi0zN0VCLThCNTQtQjMz
MkI2QUUzRTU3PiAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvSW50bFByZWZlcmVu
Y2VzLmZyYW1ld29yay9WZXJzaW9ucy9BL0ludGxQcmVmZXJlbmNlcwogICAgMHg3ZmZmNmNkNGEw
MDAgLSAgICAgMHg3ZmZmNmNlM2ZmZjcgIGNvbS5hcHBsZS5MYW5ndWFnZU1vZGVsaW5nICgxLjAg
LSAxNTkuNS4zKSA8N0YwQUMyMDAtRTNERC0zOUZCLThBOTUtMDBERDcwQjY2QTlGPiAvU3lzdGVt
L0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvTGFuZ3VhZ2VNb2RlbGluZy5mcmFtZXdvcmsvVmVy
c2lvbnMvQS9MYW5ndWFnZU1vZGVsaW5nCiAgICAweDdmZmY2Y2U0MDAwMCAtICAgICAweDdmZmY2
Y2U4MmZmZiAgY29tLmFwcGxlLkxleGljb24tZnJhbWV3b3JrICgxLjAgLSAzMy41KSA8REM5NENG
OUUtMUVCNC0zQzBFLUIyOTgtQ0ExMTkwODg1Mjc2PiAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZy
YW1ld29ya3MvTGV4aWNvbi5mcmFtZXdvcmsvVmVyc2lvbnMvQS9MZXhpY29uCiAgICAweDdmZmY2
Y2U4NjAwMCAtICAgICAweDdmZmY2Y2U4ZGZmNyAgY29tLmFwcGxlLkxpbmd1aXN0aWNEYXRhICgx
LjAgLSAyMzguMykgPDQ5QTU0NjQ5LTEwMjEtM0RCRC05OUI4LTFCMkVERkZBNTM3OD4gL1N5c3Rl
bS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL0xpbmd1aXN0aWNEYXRhLmZyYW1ld29yay9WZXJz
aW9ucy9BL0xpbmd1aXN0aWNEYXRhCiAgICAweDdmZmY2ZDY4YzAwMCAtICAgICAweDdmZmY2ZDY4
ZmZmZiAgY29tLmFwcGxlLk1hbmdyb3ZlICgxLjAgLSAxKSA8MjdENkRGNzYtQjVGOC0zNDQzLTg4
MjYtRDI1QjI4NDMzMUJGPiAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvTWFuZ3Jv
dmUuZnJhbWV3b3JrL1ZlcnNpb25zL0EvTWFuZ3JvdmUKICAgIDB4N2ZmZjZkYjZjMDAwIC0gICAg
IDB4N2ZmZjZkYmQ1ZmY3ICBjb20uYXBwbGUuZ3B1c3cuTWV0YWxUb29scyAoMS4wIC0gMSkgPEI1
RjY2Q0Y0LUJFNzUtM0EwQi1BNkEwLTJGMjJDN0MyNTlEOT4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZh
dGVGcmFtZXdvcmtzL01ldGFsVG9vbHMuZnJhbWV3b3JrL1ZlcnNpb25zL0EvTWV0YWxUb29scwog
ICAgMHg3ZmZmNmRkZjIwMDAgLSAgICAgMHg3ZmZmNmRlMWNmZmIgIGNvbS5hcHBsZS5NdWx0aXRv
dWNoU3VwcG9ydC5mcmFtZXdvcmsgKDE0MDQuNCAtIDE0MDQuNCkgPDQ1Mzc0QTJBLUMwQkMtM0E3
MC04MTgzLTM3Mjk1MjA1Q0RGQT4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL011
bHRpdG91Y2hTdXBwb3J0LmZyYW1ld29yay9WZXJzaW9ucy9BL011bHRpdG91Y2hTdXBwb3J0CiAg
ICAweDdmZmY2ZTA4MzAwMCAtICAgICAweDdmZmY2ZTA4ZWZmZiAgY29tLmFwcGxlLk5ldEF1dGgg
KDYuMiAtIDYuMikgPEIzNzk1RjYzLUMxNEEtMzNFMS05RUU2LTAyQTJFNzY2MTMyMT4gL1N5c3Rl
bS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL05ldEF1dGguZnJhbWV3b3JrL1ZlcnNpb25zL0Ev
TmV0QXV0aAogICAgMHg3ZmZmNmY5MjAwMDAgLSAgICAgMHg3ZmZmNmY5MzBmZmIgIGNvbS5hcHBs
ZS5QZXJmb3JtYW5jZUFuYWx5c2lzICgxLjE5NCAtIDE5NCkgPEQwMjExQUQxLTcyQjMtMzQ5My05
MkM5LUI0RjQwRUQ1ODFENT4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL1BlcmZv
cm1hbmNlQW5hbHlzaXMuZnJhbWV3b3JrL1ZlcnNpb25zL0EvUGVyZm9ybWFuY2VBbmFseXNpcwog
ICAgMHg3ZmZmNzE2ZWUwMDAgLSAgICAgMHg3ZmZmNzE3MGNmZmYgIGNvbS5hcHBsZS5Qcm90b2Nv
bEJ1ZmZlciAoMSAtIDI2MCkgPDQwNzA0NzQwLTRBNTMtMzAxMC1BNDlCLTA4RDFENjlEMUQ1RT4g
L1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL1Byb3RvY29sQnVmZmVyLmZyYW1ld29y
ay9WZXJzaW9ucy9BL1Byb3RvY29sQnVmZmVyCiAgICAweDdmZmY3MThkOTAwMCAtICAgICAweDdm
ZmY3MThlNWZmZiAgY29tLmFwcGxlLnhwYy5SZW1vdGVTZXJ2aWNlRGlzY292ZXJ5ICgxLjAgLSAx
MjA1LjUwLjc2KSA8QzczNTAzOEEtQkM3RS0zREUzLUIzNTAtNjQ0OTQwNEZDMjU5PiAvU3lzdGVt
L0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvUmVtb3RlU2VydmljZURpc2NvdmVyeS5mcmFtZXdv
cmsvVmVyc2lvbnMvQS9SZW1vdGVTZXJ2aWNlRGlzY292ZXJ5CiAgICAweDdmZmY3MThlNjAwMCAt
ICAgICAweDdmZmY3MTkwOWZmYiAgY29tLmFwcGxlLlJlbW90ZVZpZXdTZXJ2aWNlcyAoMi4wIC0g
MTI1KSA8NTkyMzIzRDEtQ0I0NC0zNUYxLTk5MjEtNEMyQUI4RDkyMEEwPiAvU3lzdGVtL0xpYnJh
cnkvUHJpdmF0ZUZyYW1ld29ya3MvUmVtb3RlVmlld1NlcnZpY2VzLmZyYW1ld29yay9WZXJzaW9u
cy9BL1JlbW90ZVZpZXdTZXJ2aWNlcwogICAgMHg3ZmZmNzE5MGEwMDAgLSAgICAgMHg3ZmZmNzE5
MWVmZjcgIGNvbS5hcHBsZS54cGMuUmVtb3RlWFBDICgxLjAgLSAxMjA1LjUwLjc2KSA8NkU2N0E2
NTYtNTQyQS0zNEJELUI1OTgtNTZCOEQ1QTcwODE0PiAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZy
YW1ld29ya3MvUmVtb3RlWFBDLmZyYW1ld29yay9WZXJzaW9ucy9BL1JlbW90ZVhQQwogICAgMHg3
ZmZmNzI2ZTgwMDAgLSAgICAgMHg3ZmZmNzI3MzJmZjcgIGNvbS5hcHBsZS5TYWZhcmkuU2FmZUJy
b3dzaW5nICgxMzYwNSAtIDEzNjA1LjEuMzMuMS4yKSA8Njg3QzQ5ODYtNjg4OC0zMTBBLTlGMTkt
MzY2M0YxQzdENjZDPiAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvU2FmYXJpU2Fm
ZUJyb3dzaW5nLmZyYW1ld29yay9WZXJzaW9ucy9BL1NhZmFyaVNhZmVCcm93c2luZwogICAgMHg3
ZmZmNzMyMjYwMDAgLSAgICAgMHg3ZmZmNzMzMzhmZmYgIGNvbS5hcHBsZS5TaGFyaW5nICgxMDE5
LjQ2IC0gMTAxOS40NikgPDEyNjZDNDFFLTNDQTktM0VGQy04NDEzLUEzN0Q1MkVBOUZCMj4gL1N5
c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL1NoYXJpbmcuZnJhbWV3b3JrL1ZlcnNpb25z
L0EvU2hhcmluZwogICAgMHg3ZmZmNzMzNjMwMDAgLSAgICAgMHg3ZmZmNzMzNjRmZjcgIGNvbS5h
cHBsZS5wZXJmb3JtYW5jZS5TaWducG9zdE5vdGlmaWNhdGlvbiAoMS4yLjQgLSAyLjQpIDw5OTU3
QjJDMC00RDQ4LTMzMzctOEE0RC01RTQ1N0NDN0I1NDI+IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRl
RnJhbWV3b3Jrcy9TaWducG9zdE5vdGlmaWNhdGlvbi5mcmFtZXdvcmsvVmVyc2lvbnMvQS9TaWdu
cG9zdE5vdGlmaWNhdGlvbgogICAgMHg3ZmZmNzQwYWMwMDAgLSAgICAgMHg3ZmZmNzQzNDhmZmYg
IGNvbS5hcHBsZS5Ta3lMaWdodCAoMS42MDAuMCAtIDMxMi41MCkgPDBDRjRDNjA4LTg3NDgtMzJC
Ri05NTg2LUExNjAxOTQ1RjgyQz4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL1Nr
eUxpZ2h0LmZyYW1ld29yay9WZXJzaW9ucy9BL1NreUxpZ2h0CiAgICAweDdmZmY3NGIwZTAwMCAt
ICAgICAweDdmZmY3NGIxYmZmNyAgY29tLmFwcGxlLlNwZWVjaFJlY29nbml0aW9uQ29yZSAoNC4w
LjEzIC0gNC4wLjEzKSA8OEI1NDE4QTQtQ0RDNS0zMjAwLUFFRjAtRjEwOUUwREY5MDE5PiAvU3lz
dGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvU3BlZWNoUmVjb2duaXRpb25Db3JlLmZyYW1l
d29yay9WZXJzaW9ucy9BL1NwZWVjaFJlY29nbml0aW9uQ29yZQogICAgMHg3ZmZmNzU2YmYwMDAg
LSAgICAgMHg3ZmZmNzU3NDhmYzcgIGNvbS5hcHBsZS5TeW1ib2xpY2F0aW9uICg5LjMgLSA2NDAz
MykgPEZBQTE3MjUyLTYzNzgtMzRBNC1CQkJCLTIyREY1NEVDMTYyNj4gL1N5c3RlbS9MaWJyYXJ5
L1ByaXZhdGVGcmFtZXdvcmtzL1N5bWJvbGljYXRpb24uZnJhbWV3b3JrL1ZlcnNpb25zL0EvU3lt
Ym9saWNhdGlvbgogICAgMHg3ZmZmNzVjYjgwMDAgLSAgICAgMHg3ZmZmNzVjYzBmZjcgIGNvbS5h
cHBsZS5UQ0MgKDEuMCAtIDEpIDxFMUVCNzI3Mi1GRTZGLTM5QUItODNDQS1CMkI1RjJBODhEOUI+
IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJhbWV3b3Jrcy9UQ0MuZnJhbWV3b3JrL1ZlcnNpb25z
L0EvVENDCiAgICAweDdmZmY3NWVjZDAwMCAtICAgICAweDdmZmY3NWY4YWZmNyAgY29tLmFwcGxl
LlRleHR1cmVJTyAoMy43IC0gMy43KSA8RjhCQUM5NTQtNDA1RC0zQ0MzLUFCN0ItMDQ4Qzg2NkVG
OTgwPiAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvVGV4dHVyZUlPLmZyYW1ld29y
ay9WZXJzaW9ucy9BL1RleHR1cmVJTwogICAgMHg3ZmZmNzYwMzcwMDAgLSAgICAgMHg3ZmZmNzYx
ZTZmZmYgIGNvbS5hcHBsZS5VSUZvdW5kYXRpb24gKDEuMCAtIDU0Ny4zKSA8QUNDMTJERjUtRTUy
OC0zM0YzLUEzNTgtNEUxQkVBNjgyMzlDPiAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29y
a3MvVUlGb3VuZGF0aW9uLmZyYW1ld29yay9WZXJzaW9ucy9BL1VJRm91bmRhdGlvbgogICAgMHg3
ZmZmNzcyZjIwMDAgLSAgICAgMHg3ZmZmNzc1MWRmZmIgIGxpYkFXRFN1cHBvcnRGcmFtZXdvcmsu
ZHlsaWIgKDc5MykgPEQxNDNCQkVBLTI3NkMtM0MzMy05ODAxLUM2QjY2ODI0RThFQz4gL1N5c3Rl
bS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL1dpcmVsZXNzRGlhZ25vc3RpY3MuZnJhbWV3b3Jr
L1ZlcnNpb25zL0EvTGlicmFyaWVzL2xpYkFXRFN1cHBvcnRGcmFtZXdvcmsuZHlsaWIKICAgIDB4
N2ZmZjc3NTFlMDAwIC0gICAgIDB4N2ZmZjc3NTJmZmY3ICBsaWJwcm90b2J1Zi1saXRlLmR5bGli
ICg3OTMpIDwwQ0JBOTJGNS1EQUM3LTM4NTgtQjNFNS00REY3OTJDM0VBQkI+IC9TeXN0ZW0vTGli
cmFyeS9Qcml2YXRlRnJhbWV3b3Jrcy9XaXJlbGVzc0RpYWdub3N0aWNzLmZyYW1ld29yay9WZXJz
aW9ucy9BL0xpYnJhcmllcy9saWJwcm90b2J1Zi1saXRlLmR5bGliCiAgICAweDdmZmY3NzUzMDAw
MCAtICAgICAweDdmZmY3NzU5MmZmZiAgbGlicHJvdG9idWYuZHlsaWIgKDc5MykgPENFNEI4REJD
LTE3RkQtM0U1Ny1CMUJFLUQwOTdERjYzNDUxMz4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFt
ZXdvcmtzL1dpcmVsZXNzRGlhZ25vc3RpY3MuZnJhbWV3b3JrL1ZlcnNpb25zL0EvTGlicmFyaWVz
L2xpYnByb3RvYnVmLmR5bGliCiAgICAweDdmZmY3NzU5MzAwMCAtICAgICAweDdmZmY3NzVkNmZm
NyAgY29tLmFwcGxlLmF3ZCAoMS4wIC0gOTMwKSA8MUQxOTlBNzYtRThDQi0zOEJCLUIwMEMtMkFB
RUExQjlFNzEyPiAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvV2lyZWxlc3NEaWFn
bm9zdGljcy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9XaXJlbGVzc0RpYWdub3N0aWNzCiAgICAweDdm
ZmY3NzhlMDAwMCAtICAgICAweDdmZmY3NzhlMmZmYiAgY29tLmFwcGxlLmxvZ2luc3VwcG9ydCAo
MS4wIC0gMSkgPEQxMjMyQzFCLTgwRUEtM0RGOC05NDY2LTAxMzY5NUQwODQ2RT4gL1N5c3RlbS9M
aWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL2xvZ2luLmZyYW1ld29yay9WZXJzaW9ucy9BL0ZyYW1l
d29ya3MvbG9naW5zdXBwb3J0LmZyYW1ld29yay9WZXJzaW9ucy9BL2xvZ2luc3VwcG9ydAogICAg
MHg3ZmZmNzdhNDkwMDAgLSAgICAgMHg3ZmZmNzdhN2NmZjcgIGxpYmNsb3N1cmVkLmR5bGliICg1
NTEuMykgPERDM0RBNjc4LTlDNDAtMzM5Qy1BOUM2LTMyQUI3NEZDQzY4Mj4gL3Vzci9saWIvY2xv
c3VyZS9saWJjbG9zdXJlZC5keWxpYgogICAgMHg3ZmZmNzdiMzYwMDAgLSAgICAgMHg3ZmZmNzdi
NmZmZjcgIGxpYkNSRlN1aXRlLmR5bGliICg0MSkgPEZFNUVEQjY4LTI1OTMtM0MyRS1CQkFGLTFD
NTJEMjA2RjI5Nj4gL3Vzci9saWIvbGliQ1JGU3VpdGUuZHlsaWIKICAgIDB4N2ZmZjc3YjcwMDAw
IC0gICAgIDB4N2ZmZjc3YjdiZmZmICBsaWJDaGluZXNlVG9rZW5pemVyLmR5bGliICgyOCkgPDUz
NjMzQzlCLUEzQTgtMzZGNy1BNTNDLTQzMkQ4MDJGNEJCOD4gL3Vzci9saWIvbGliQ2hpbmVzZVRv
a2VuaXplci5keWxpYgogICAgMHg3ZmZmNzdjMGQwMDAgLSAgICAgMHg3ZmZmNzdjMGVmZjMgIGxp
YkRpYWdub3N0aWNNZXNzYWdlc0NsaWVudC5keWxpYiAoMTA0KSA8OTcxMkU5ODAtNzZFRS0zQTg5
LUFFQTYtREY0QkFGNUMwNTc0PiAvdXNyL2xpYi9saWJEaWFnbm9zdGljTWVzc2FnZXNDbGllbnQu
ZHlsaWIKICAgIDB4N2ZmZjc3YzQ1MDAwIC0gICAgIDB4N2ZmZjc3ZTBmZmYzICBsaWJGb3NsX2R5
bmFtaWMuZHlsaWIgKDE3LjgpIDxDNThFRDc3QS00OTg2LTMxQzItOTk0Qy0zNERERkI4MTA2RjA+
IC91c3IvbGliL2xpYkZvc2xfZHluYW1pYy5keWxpYgogICAgMHg3ZmZmNzdlNDcwMDAgLSAgICAg
MHg3ZmZmNzdlNDdmZmYgIGxpYk9wZW5TY3JpcHRpbmdVdGlsLmR5bGliICgxNzQpIDw2MTBGMDI0
Mi03Q0U1LTNDODYtOTUxQi1CNjQ2NTYyNjk0QUY+IC91c3IvbGliL2xpYk9wZW5TY3JpcHRpbmdV
dGlsLmR5bGliCiAgICAweDdmZmY3N2Y3ZTAwMCAtICAgICAweDdmZmY3N2Y4MmZmYiAgbGliU2Ny
ZWVuUmVhZGVyLmR5bGliICg1NjIuMTguNCkgPEUyMzk5MjNELTU0QzktM0JCRi04NTJGLTg3QzA5
REVGNDA5MT4gL3Vzci9saWIvbGliU2NyZWVuUmVhZGVyLmR5bGliCiAgICAweDdmZmY3N2Y4MzAw
MCAtICAgICAweDdmZmY3N2Y4NGZmYiAgbGliU3lzdGVtLkIuZHlsaWIgKDEyNTIuNTAuNCkgPEM3
ODEwRUE3LUE2MUYtMzgxNy04RTU0LUUyRUM0RTI2Rjk0Nj4gL3Vzci9saWIvbGliU3lzdGVtLkIu
ZHlsaWIKICAgIDB4N2ZmZjc3Zjg1MDAwIC0gICAgIDB4N2ZmZjc4MDAyZmZmICBsaWJUZWxlcGhv
bnlVdGlsRHluYW1pYy5keWxpYiAoMzMxMikgPDE1MzRBODg3LUYxMUQtM0IwOS05NUNDLUFGNDU2
MzRGREY0Nj4gL3Vzci9saWIvbGliVGVsZXBob255VXRpbER5bmFtaWMuZHlsaWIKICAgIDB4N2Zm
Zjc4MDE3MDAwIC0gICAgIDB4N2ZmZjc4MDE3ZmZmICBsaWJhcHBsZV9jcnlwdG8uZHlsaWIgKDEw
OS41MC4xNCkgPDQ4QkEyRTc2LUJGMkYtMzUyMi1BNTRFLUQ3RkI3RUFGN0E1Nz4gL3Vzci9saWIv
bGliYXBwbGVfY3J5cHRvLmR5bGliCiAgICAweDdmZmY3ODAxODAwMCAtICAgICAweDdmZmY3ODAy
ZWZmNyAgbGliYXBwbGVfbmdodHRwMi5keWxpYiAoMS4yNCkgPDAxNDAyQkM0LTQ4MjItMzY3Ni05
QzgwLTUwRDgzRjgxNjQyND4gL3Vzci9saWIvbGliYXBwbGVfbmdodHRwMi5keWxpYgogICAgMHg3
ZmZmNzgwMmYwMDAgLSAgICAgMHg3ZmZmNzgwNTlmZjMgIGxpYmFyY2hpdmUuMi5keWxpYiAoNTQp
IDw4RkMyOEREOC1FMzE1LTNDM0UtOTVGRS1EMUQyQ0JFNDk4ODg+IC91c3IvbGliL2xpYmFyY2hp
dmUuMi5keWxpYgogICAgMHg3ZmZmNzgwNWEwMDAgLSAgICAgMHg3ZmZmNzgxNWRmZTcgIGxpYmF0
ZS5keWxpYiAoMS4xMy4xKSA8REFCRUExQjEtODA2Qy0zNEM5LThBRkYtREVCNkFCMjgyOUUzPiAv
dXNyL2xpYi9saWJhdGUuZHlsaWIKICAgIDB4N2ZmZjc4MTYxMDAwIC0gICAgIDB4N2ZmZjc4MTYx
ZmYzICBsaWJhdXRvLmR5bGliICgxODcpIDxBMDVDNzkwMC1GOEM3LTNFNzUtOEQzRi05MDlCNDBD
MTk3MTc+IC91c3IvbGliL2xpYmF1dG8uZHlsaWIKICAgIDB4N2ZmZjc4MTYyMDAwIC0gICAgIDB4
N2ZmZjc4MjFhZmYzICBsaWJib3Jpbmdzc2wuZHlsaWIgKDEwOS41MC4xNCkgPEU2ODEzRjg3LUI1
RTQtM0Y3Ri1BNzI1LUU2QTdGMkJEMDJFQz4gL3Vzci9saWIvbGliYm9yaW5nc3NsLmR5bGliCiAg
ICAweDdmZmY3ODIxYjAwMCAtICAgICAweDdmZmY3ODIyYmZmMyAgbGliYnNtLjAuZHlsaWIgKDM5
KSA8NkJDOTZBNzItQUZCRS0zNEZELTkxQjEtNzQ4QTUzMEQ4QUU2PiAvdXNyL2xpYi9saWJic20u
MC5keWxpYgogICAgMHg3ZmZmNzgyMmMwMDAgLSAgICAgMHg3ZmZmNzgyMzlmZmIgIGxpYmJ6Mi4x
LjAuZHlsaWIgKDM4KSA8MEE1MDg2QkItNDcyNC0zQzE0LTk3OUQtNUFENEYyNkI1QjQ1PiAvdXNy
L2xpYi9saWJiejIuMS4wLmR5bGliCiAgICAweDdmZmY3ODIzYTAwMCAtICAgICAweDdmZmY3ODI5
MGZmZiAgbGliYysrLjEuZHlsaWIgKDQwMC45KSA8N0QzREFDQ0MtMzgwNC0zOTNDLUFCQzEtMUE1
ODBGRDAwQ0I2PiAvdXNyL2xpYi9saWJjKysuMS5keWxpYgogICAgMHg3ZmZmNzgyOTEwMDAgLSAg
ICAgMHg3ZmZmNzgyYjVmZjcgIGxpYmMrK2FiaS5keWxpYiAoNDAwLjguMikgPEVGNUUzN0Q3LTEx
RDktMzUzMC1CRTQ1LUI5ODY2MTJEMTNFMj4gL3Vzci9saWIvbGliYysrYWJpLmR5bGliCiAgICAw
eDdmZmY3ODJiNzAwMCAtICAgICAweDdmZmY3ODJjN2ZmZiAgbGliY21waC5keWxpYiAoNikgPEE1
NTA5RUU4LTdFMDAtMzIyNC04ODE0LTAxNUIwNzdBM0NGNT4gL3Vzci9saWIvbGliY21waC5keWxp
YgogICAgMHg3ZmZmNzgyYzgwMDAgLSAgICAgMHg3ZmZmNzgyZGVmZmIgIGxpYmNvbXByZXNzaW9u
LmR5bGliICg0Ny41MC4xKSA8MTJEQjkxRTQtRTRFRS0zQUU5LUEwMDAtQkNBQ0U3NzQ5REI2PiAv
dXNyL2xpYi9saWJjb21wcmVzc2lvbi5keWxpYgogICAgMHg3ZmZmNzg1ODkwMDAgLSAgICAgMHg3
ZmZmNzg1YTFmZjcgIGxpYmNvcmV0bHMuZHlsaWIgKDE1NS41MC4xKSA8RDM1MDA1MkUtREM0RC0z
MTg1LUFEQkEtQkE0OEVEQ0VFOTU1PiAvdXNyL2xpYi9saWJjb3JldGxzLmR5bGliCiAgICAweDdm
ZmY3ODVhMjAwMCAtICAgICAweDdmZmY3ODVhM2ZmMyAgbGliY29yZXRsc19jZmhlbHBlcnMuZHls
aWIgKDE1NS41MC4xKSA8QjI5N0Y1RDgtRjJGRS0zNTY2LUE3NTItRTlEOTk4QjlDMDM5PiAvdXNy
L2xpYi9saWJjb3JldGxzX2NmaGVscGVycy5keWxpYgogICAgMHg3ZmZmNzhhNzQwMDAgLSAgICAg
MHg3ZmZmNzhhY2FmZjMgIGxpYmN1cHMuMi5keWxpYiAoNDYyLjIpIDw2NDg2NENCRS0wM0EzLTM0
QzctOURCQi1DOTM2MDFGMTgzRkQ+IC91c3IvbGliL2xpYmN1cHMuMi5keWxpYgogICAgMHg3ZmZm
NzhjMGEwMDAgLSAgICAgMHg3ZmZmNzhjMGFmZmYgIGxpYmVuZXJneXRyYWNlLmR5bGliICgxNikg
PEE5MkFCOEI4LUI5ODYtM0NFNi05ODBELUQ1NTA5MEZFRjM4Nz4gL3Vzci9saWIvbGliZW5lcmd5
dHJhY2UuZHlsaWIKICAgIDB4N2ZmZjc4YzQxMDAwIC0gICAgIDB4N2ZmZjc4YzQ2ZmYzICBsaWJo
ZWltZGFsLWFzbjEuZHlsaWIgKDUyMC41MC42KSA8RTM1ODQ0NUEtQjg0RS0zMUI1LUJDQ0QtN0Ux
Mzk3NTE5RDk2PiAvdXNyL2xpYi9saWJoZWltZGFsLWFzbjEuZHlsaWIKICAgIDB4N2ZmZjc4Yzcy
MDAwIC0gICAgIDB4N2ZmZjc4ZDYzZmY3ICBsaWJpY29udi4yLmR5bGliICg1MS41MC4xKSA8MkZF
Qzk3MDctM0ZBRi0zODI4LUE1MEQtODYwNTA4NkQwNjBGPiAvdXNyL2xpYi9saWJpY29udi4yLmR5
bGliCiAgICAweDdmZmY3OGQ2NDAwMCAtICAgICAweDdmZmY3OGY4YmZmYiAgbGliaWN1Y29yZS5B
LmR5bGliICg1OTE3My4wLjEpIDxDRUNBRDVFNS0zRUZELTNBQUMtQUQ5Qi1FMzU1QjJERDVFOUM+
IC91c3IvbGliL2xpYmljdWNvcmUuQS5keWxpYgogICAgMHg3ZmZmNzhmZDgwMDAgLSAgICAgMHg3
ZmZmNzhmZDlmZmYgIGxpYmxhbmdpZC5keWxpYiAoMTI4KSA8MzlDMzkzOTMtMEQwNS0zMDFELTkz
QjItRjIyNEZDNDk0OUFBPiAvdXNyL2xpYi9saWJsYW5naWQuZHlsaWIKICAgIDB4N2ZmZjc4ZmRh
MDAwIC0gICAgIDB4N2ZmZjc4ZmYzZmZiICBsaWJsem1hLjUuZHlsaWIgKDEwKSA8M0Q0MTlBNTAt
OTYxRi0zN0QyLThBMDEtM0RDN0FCN0I4RDE4PiAvdXNyL2xpYi9saWJsem1hLjUuZHlsaWIKICAg
IDB4N2ZmZjc4ZmY0MDAwIC0gICAgIDB4N2ZmZjc5MDBhZmY3ICBsaWJtYXJpc2EuZHlsaWIgKDkp
IDxENkQyRDU1RC0xRDJFLTM0NDItQjE1Mi1CMTg4MDNDMEFCQjQ+IC91c3IvbGliL2xpYm1hcmlz
YS5keWxpYgogICAgMHg3ZmZmNzkwYmIwMDAgLSAgICAgMHg3ZmZmNzkyZTNmZjcgIGxpYm1lY2Fi
cmEuZHlsaWIgKDc3OS43LjYpIDxGNDYyRjE3MC1FODcyLTNEMDktQjIxOS05NzNENUU5OUMwOUY+
IC91c3IvbGliL2xpYm1lY2FicmEuZHlsaWIKICAgIDB4N2ZmZjc5NGJiMDAwIC0gICAgIDB4N2Zm
Zjc5NjM1ZmZmICBsaWJuZXR3b3JrLmR5bGliICgxMjI5LjUxLjIpIDxENjRGRTJBMS1DQkZELTM4
MTctQTcwMS05QTBEREJENzBEQ0Y+IC91c3IvbGliL2xpYm5ldHdvcmsuZHlsaWIKICAgIDB4N2Zm
Zjc5NmI0MDAwIC0gICAgIDB4N2ZmZjc5YWE1M2I3ICBsaWJvYmpjLkEuZHlsaWIgKDcyMykgPEJF
RUE1MUUyLTFDNEQtMzY3Mi04N0Y2LUYyNjdCNEFDNjIyMT4gL3Vzci9saWIvbGlib2JqYy5BLmR5
bGliCiAgICAweDdmZmY3OWFiODAwMCAtICAgICAweDdmZmY3OWFiY2ZmZiAgbGlicGFtLjIuZHls
aWIgKDIyKSA8N0I0RDJDRTItMTQzOC0zODdBLTk4MDItNUNFRUZCRjI2Rjg2PiAvdXNyL2xpYi9s
aWJwYW0uMi5keWxpYgogICAgMHg3ZmZmNzlhYmYwMDAgLSAgICAgMHg3ZmZmNzlhZjNmZmYgIGxp
YnBjYXAuQS5keWxpYiAoNzkuMjAuMSkgPEZBMTM5MThCLUEyNDctMzE4MS1CMjU2LTlCODUyQzdC
QTMxNj4gL3Vzci9saWIvbGlicGNhcC5BLmR5bGliCiAgICAweDdmZmY3OWI3MjAwMCAtICAgICAw
eDdmZmY3OWI4ZWZmYiAgbGlicmVzb2x2LjkuZHlsaWIgKDY1KSA8RThGMzQxNUItNDQ3Mi0zMjAy
LTg5MDEtNDFGRDg3OTgxREIyPiAvdXNyL2xpYi9saWJyZXNvbHYuOS5keWxpYgogICAgMHg3ZmZm
NzliZGQwMDAgLSAgICAgMHg3ZmZmNzliZGVmZjMgIGxpYnNwaW5kdW1wLmR5bGliICgyNTIpIDxE
OEUyNzA1Ny1FM0NDLTNEN0YtQTAxMC00QTg3ODMwRjZBODM+IC91c3IvbGliL2xpYnNwaW5kdW1w
LmR5bGliCiAgICAweDdmZmY3OWJkZjAwMCAtICAgICAweDdmZmY3OWQ2Y2ZmNyAgbGlic3FsaXRl
My5keWxpYiAoMjc0LjguMSkgPEI3MEEyOTA4LUUwRjctMzY0RS05NTJBLTFEMkQxOTc4N0I4OT4g
L3Vzci9saWIvbGlic3FsaXRlMy5keWxpYgogICAgMHg3ZmZmNzlmNDAwMDAgLSAgICAgMHg3ZmZm
NzlmYTBmZjMgIGxpYnVzcnRjcC5keWxpYiAoMTIyOS41MS4yKSA8M0Q4ODA2RDktNEJBOS0zNUVF
LUJDNDQtRjU4QkMyQTA5NjJEPiAvdXNyL2xpYi9saWJ1c3J0Y3AuZHlsaWIKICAgIDB4N2ZmZjc5
ZmExMDAwIC0gICAgIDB4N2ZmZjc5ZmE0ZmZiICBsaWJ1dGlsLmR5bGliICg1MS4yMC4xKSA8MjE2
RDE4RTUtMEJBRi0zRUFGLUEzOEUtRjZBQzM3Q0JBQkQ5PiAvdXNyL2xpYi9saWJ1dGlsLmR5bGli
CiAgICAweDdmZmY3OWZhNTAwMCAtICAgICAweDdmZmY3OWZiMmZmZiAgbGlieGFyLjEuZHlsaWIg
KDQwMCkgPDAzMTYxMjhELTNCNDctMzA1Mi05OTVELTk3QjRGRTU0OTFEQz4gL3Vzci9saWIvbGli
eGFyLjEuZHlsaWIKICAgIDB4N2ZmZjc5ZmI2MDAwIC0gICAgIDB4N2ZmZjdhMDlkZmZmICBsaWJ4
bWwyLjIuZHlsaWIgKDMxLjEwKSA8NTAzNzIxREItMEQ4RC0zNzlFLUI3NDMtMThDRTU5MzA0MTU1
PiAvdXNyL2xpYi9saWJ4bWwyLjIuZHlsaWIKICAgIDB4N2ZmZjdhMDllMDAwIC0gICAgIDB4N2Zm
ZjdhMGM2ZmZmICBsaWJ4c2x0LjEuZHlsaWIgKDE1LjEyKSA8NEE1RTAxMUQtOEIyOS0zMTM1LUE1
MkItOUE5MDcwQUJENzUyPiAvdXNyL2xpYi9saWJ4c2x0LjEuZHlsaWIKICAgIDB4N2ZmZjdhMGM3
MDAwIC0gICAgIDB4N2ZmZjdhMGQ5ZmZiICBsaWJ6LjEuZHlsaWIgKDcwKSA8NDhDNjdDRkMtOTQw
RC0zODU3LThEQUQtODU3Nzc0NjA1MzUyPiAvdXNyL2xpYi9saWJ6LjEuZHlsaWIKICAgIDB4N2Zm
ZjdhMTc1MDAwIC0gICAgIDB4N2ZmZjdhMTc5ZmY3ICBsaWJjYWNoZS5keWxpYiAoODApIDwwOTI0
NzlDQi0xMDA4LTNBODMtQkVDRi1FMTE1RjI0RDEzQzE+IC91c3IvbGliL3N5c3RlbS9saWJjYWNo
ZS5keWxpYgogICAgMHg3ZmZmN2ExN2EwMDAgLSAgICAgMHg3ZmZmN2ExODRmZjMgIGxpYmNvbW1v
bkNyeXB0by5keWxpYiAoNjAxMTguNTAuMSkgPDAyOUY1OTg1LTlCNkUtM0RDQi05Qjk2LUZEMDA3
Njc4QzZBNz4gL3Vzci9saWIvc3lzdGVtL2xpYmNvbW1vbkNyeXB0by5keWxpYgogICAgMHg3ZmZm
N2ExODUwMDAgLSAgICAgMHg3ZmZmN2ExOGNmZmYgIGxpYmNvbXBpbGVyX3J0LmR5bGliICg2Mikg
PDk2OEI4RTNGLTM2ODEtMzIzMC05RDc4LUJCODczMjAyNEY2RT4gL3Vzci9saWIvc3lzdGVtL2xp
YmNvbXBpbGVyX3J0LmR5bGliCiAgICAweDdmZmY3YTE4ZDAwMCAtICAgICAweDdmZmY3YTE5NmZm
YiAgbGliY29weWZpbGUuZHlsaWIgKDE0Ni41MC41KSA8Mzg4NTA4M0QtNTBEOC0zRUVDLUI0ODEt
QjJFNjA1MTgwRDdGPiAvdXNyL2xpYi9zeXN0ZW0vbGliY29weWZpbGUuZHlsaWIKICAgIDB4N2Zm
ZjdhMTk3MDAwIC0gICAgIDB4N2ZmZjdhMjFjZmZmICBsaWJjb3JlY3J5cHRvLmR5bGliICg1NjIu
NTAuMTcpIDw2NzAwNzI3OS0yNEUxLTNGMzAtODAyRC1BNTVDRDVDMjc5NDY+IC91c3IvbGliL3N5
c3RlbS9saWJjb3JlY3J5cHRvLmR5bGliCiAgICAweDdmZmY3YTJhNDAwMCAtICAgICAweDdmZmY3
YTJkZGZmNyAgbGliZGlzcGF0Y2guZHlsaWIgKDkxMy41MC4xMikgPDg0OEVFRTU3LTQyMzUtM0E2
MS05QTUyLUMwMDk3REQyQUI1RT4gL3Vzci9saWIvc3lzdGVtL2xpYmRpc3BhdGNoLmR5bGliCiAg
ICAweDdmZmY3YTJkZTAwMCAtICAgICAweDdmZmY3YTJmYmZmNyAgbGliZHlsZC5keWxpYiAoNTUx
LjMpIDxDRjU5QTVBNS0yODhCLTMwRTYtQkQ0Mi05MDU2QjRFNDEzOUE+IC91c3IvbGliL3N5c3Rl
bS9saWJkeWxkLmR5bGliCiAgICAweDdmZmY3YTJmYzAwMCAtICAgICAweDdmZmY3YTJmY2ZmYiAg
bGlia2V5bWdyLmR5bGliICgyOCkgPEUzNEUyODNFLTkwRkEtM0M1OS1CNDhFLTEyNzdDREI5Q0RD
RT4gL3Vzci9saWIvc3lzdGVtL2xpYmtleW1nci5keWxpYgogICAgMHg3ZmZmN2EyZmQwMDAgLSAg
ICAgMHg3ZmZmN2EzMDlmZjMgIGxpYmt4bGQuZHlsaWIgKDQ1NzAuNTEuMSkgPEMyQjkyN0YzLUU5
RDktM0FDRi1BMzU4LUE1MUE2MTc0OUZCND4gL3Vzci9saWIvc3lzdGVtL2xpYmt4bGQuZHlsaWIK
ICAgIDB4N2ZmZjdhMzBhMDAwIC0gICAgIDB4N2ZmZjdhMzBhZmY3ICBsaWJsYXVuY2guZHlsaWIg
KDEyMDUuNTAuNzYpIDw0RDUyQkI2NC1DNTY4LTNBMzYtODkzNS0yNDgwNDI3RUUyQTI+IC91c3Iv
bGliL3N5c3RlbS9saWJsYXVuY2guZHlsaWIKICAgIDB4N2ZmZjdhMzBiMDAwIC0gICAgIDB4N2Zm
ZjdhMzBmZmZiICBsaWJtYWNoby5keWxpYiAoOTA2KSA8MTkwMkE2MTEtMDgxQS0zNDUyLUIxMUUt
RUJEMUIxNjZFODMxPiAvdXNyL2xpYi9zeXN0ZW0vbGlibWFjaG8uZHlsaWIKICAgIDB4N2ZmZjdh
MzEwMDAwIC0gICAgIDB4N2ZmZjdhMzEyZmYzICBsaWJxdWFyYW50aW5lLmR5bGliICg4NikgPDI2
QzBCQTIyLThGOTMtM0EwNy05QTRFLUM4RDUzRDJDRTQyRT4gL3Vzci9saWIvc3lzdGVtL2xpYnF1
YXJhbnRpbmUuZHlsaWIKICAgIDB4N2ZmZjdhMzEzMDAwIC0gICAgIDB4N2ZmZjdhMzE0ZmYzICBs
aWJyZW1vdmVmaWxlLmR5bGliICg0NSkgPDcxMUUxOEIyLTVCQkUtMzIxMS1BOTE2LTU2NzQwQzI3
RDE3QT4gL3Vzci9saWIvc3lzdGVtL2xpYnJlbW92ZWZpbGUuZHlsaWIKICAgIDB4N2ZmZjdhMzE1
MDAwIC0gICAgIDB4N2ZmZjdhMzJjZmZmICBsaWJzeXN0ZW1fYXNsLmR5bGliICgzNTYuNTAuMSkg
PDNCMjRGMkQxLUI1NzgtMzU5RC1BREIyLTBFRDE5QTM2NEMzOD4gL3Vzci9saWIvc3lzdGVtL2xp
YnN5c3RlbV9hc2wuZHlsaWIKICAgIDB4N2ZmZjdhMzJkMDAwIC0gICAgIDB4N2ZmZjdhMzJkZmZm
ICBsaWJzeXN0ZW1fYmxvY2tzLmR5bGliICg2NykgPDE3MzAzRkRGLTBEMkQtMzk2My1CMDVFLUI0
REY2MzA1MkQ0Nz4gL3Vzci9saWIvc3lzdGVtL2xpYnN5c3RlbV9ibG9ja3MuZHlsaWIKICAgIDB4
N2ZmZjdhMzJlMDAwIC0gICAgIDB4N2ZmZjdhM2I3ZmY3ICBsaWJzeXN0ZW1fYy5keWxpYiAoMTI0
NC41MC45KSA8MTE4N0JGRTgtNDU3Ni0zMjQ3LTgxNzctNDgxNTU0RTFGOUU3PiAvdXNyL2xpYi9z
eXN0ZW0vbGlic3lzdGVtX2MuZHlsaWIKICAgIDB4N2ZmZjdhM2I4MDAwIC0gICAgIDB4N2ZmZjdh
M2JiZmZiICBsaWJzeXN0ZW1fY29uZmlndXJhdGlvbi5keWxpYiAoOTYzLjUwLjgpIDxERjZCNTI4
Ny0yMDNFLTMwQ0ItOTk0Ny03OERGNDQ2QzcyQjg+IC91c3IvbGliL3N5c3RlbS9saWJzeXN0ZW1f
Y29uZmlndXJhdGlvbi5keWxpYgogICAgMHg3ZmZmN2EzYmMwMDAgLSAgICAgMHg3ZmZmN2EzYmZm
ZmIgIGxpYnN5c3RlbV9jb3Jlc2VydmljZXMuZHlsaWIgKDUxKSA8NDg2MDAwRDMtRDhDQi0zQkU3
LThFRTUtOEJGMzgwREU2REY3PiAvdXNyL2xpYi9zeXN0ZW0vbGlic3lzdGVtX2NvcmVzZXJ2aWNl
cy5keWxpYgogICAgMHg3ZmZmN2EzYzAwMDAgLSAgICAgMHg3ZmZmN2EzYzFmZmYgIGxpYnN5c3Rl
bV9kYXJ3aW4uZHlsaWIgKDEyNDQuNTAuOSkgPDA5QzIxQTRBLTlFRTAtMzg4Qi1BOUQ5LURGRjhG
Njc1ODc5MT4gL3Vzci9saWIvc3lzdGVtL2xpYnN5c3RlbV9kYXJ3aW4uZHlsaWIKICAgIDB4N2Zm
ZjdhM2MyMDAwIC0gICAgIDB4N2ZmZjdhM2M4ZmY3ICBsaWJzeXN0ZW1fZG5zc2QuZHlsaWIgKDg3
OC41MC4xNykgPDkwMzNCOTA5LUJDRjctMzdFQi1BMDQwLUFERTgwODE2MTFENj4gL3Vzci9saWIv
c3lzdGVtL2xpYnN5c3RlbV9kbnNzZC5keWxpYgogICAgMHg3ZmZmN2EzYzkwMDAgLSAgICAgMHg3
ZmZmN2E0MTJmZjcgIGxpYnN5c3RlbV9pbmZvLmR5bGliICg1MTcuMzAuMSkgPEFCNjM0QTk4LUI4
QUEtMzgwNC04NDM2LTM4MjYxRkM4RUM0RD4gL3Vzci9saWIvc3lzdGVtL2xpYnN5c3RlbV9pbmZv
LmR5bGliCiAgICAweDdmZmY3YTQxMzAwMCAtICAgICAweDdmZmY3YTQzOWZmNyAgbGlic3lzdGVt
X2tlcm5lbC5keWxpYiAoNDU3MC41MS4xKSA8NUNBQUIwOTItMDJDQy0zQTM3LTlENUYtQzRBRDEw
ODNBQjk2PiAvdXNyL2xpYi9zeXN0ZW0vbGlic3lzdGVtX2tlcm5lbC5keWxpYgogICAgMHg3ZmZm
N2E0M2EwMDAgLSAgICAgMHg3ZmZmN2E0ODVmY2IgIGxpYnN5c3RlbV9tLmR5bGliICgzMTQ3LjUw
LjEpIDxGQzJFNThCQS1FNkQ1LTNEMkEtODlDQS02N0YyMTIyOTQxMzY+IC91c3IvbGliL3N5c3Rl
bS9saWJzeXN0ZW1fbS5keWxpYgogICAgMHg3ZmZmN2E0ODYwMDAgLSAgICAgMHg3ZmZmN2E0YTVm
ZmYgIGxpYnN5c3RlbV9tYWxsb2MuZHlsaWIgKDE0MC41MC42KSA8N0ZENDM3MzUtOURERC0zMDBF
LThDNEEtRjkwOUE3NEJERjQ5PiAvdXNyL2xpYi9zeXN0ZW0vbGlic3lzdGVtX21hbGxvYy5keWxp
YgogICAgMHg3ZmZmN2E0YTYwMDAgLSAgICAgMHg3ZmZmN2E1ZDZmZjMgIGxpYnN5c3RlbV9uZXR3
b3JrLmR5bGliICgxMjI5LjUxLjIpIDxGNjVFRDA5NS04QUJBLTMzNTUtOTNGOC1COUQwNTA1OTMy
RjQ+IC91c3IvbGliL3N5c3RlbS9saWJzeXN0ZW1fbmV0d29yay5keWxpYgogICAgMHg3ZmZmN2E1
ZDcwMDAgLSAgICAgMHg3ZmZmN2E1ZTFmZmIgIGxpYnN5c3RlbV9uZXR3b3JrZXh0ZW5zaW9uLmR5
bGliICg3NjcuNTAuMjUpIDw3NThGMTQxNC03OTZELTM0MjItODNDOS05MkQyOTE1QTA2Q0U+IC91
c3IvbGliL3N5c3RlbS9saWJzeXN0ZW1fbmV0d29ya2V4dGVuc2lvbi5keWxpYgogICAgMHg3ZmZm
N2E1ZTIwMDAgLSAgICAgMHg3ZmZmN2E1ZWJmZjMgIGxpYnN5c3RlbV9ub3RpZnkuZHlsaWIgKDE3
MikgPDA4MDEyRUMwLTJDRDItMzRCRS1CRjkzLUU3RjU2NDkxMjk5QT4gL3Vzci9saWIvc3lzdGVt
L2xpYnN5c3RlbV9ub3RpZnkuZHlsaWIKICAgIDB4N2ZmZjdhNWVjMDAwIC0gICAgIDB4N2ZmZjdh
NWYzZmY3ICBsaWJzeXN0ZW1fcGxhdGZvcm0uZHlsaWIgKDE2MS41MC4xKSA8NjM1NUVFMkQtNTQ1
Ni0zQ0E4LUEyMjctQjk2RThGMUUyQUY4PiAvdXNyL2xpYi9zeXN0ZW0vbGlic3lzdGVtX3BsYXRm
b3JtLmR5bGliCiAgICAweDdmZmY3YTVmNDAwMCAtICAgICAweDdmZmY3YTVmZmZmZiAgbGlic3lz
dGVtX3B0aHJlYWQuZHlsaWIgKDMwMS41MC4xKSA8MEU1MUNDQkEtOTFGMi0zNEUxLUJGMkEtRkVF
RkQzRDMyMUU0PiAvdXNyL2xpYi9zeXN0ZW0vbGlic3lzdGVtX3B0aHJlYWQuZHlsaWIKICAgIDB4
N2ZmZjdhNjAwMDAwIC0gICAgIDB4N2ZmZjdhNjAzZmZmICBsaWJzeXN0ZW1fc2FuZGJveC5keWxp
YiAoNzY1LjUwLjUxKSA8QjQ4RDI1NkUtRDdEQi0zRDRGLUJDOTUtMzQ1NTcxNzBDN0FBPiAvdXNy
L2xpYi9zeXN0ZW0vbGlic3lzdGVtX3NhbmRib3guZHlsaWIKICAgIDB4N2ZmZjdhNjA0MDAwIC0g
ICAgIDB4N2ZmZjdhNjA1ZmYzICBsaWJzeXN0ZW1fc2VjaW5pdC5keWxpYiAoMzApIDxERThEMTRF
OC1BMjc2LTNGRjgtQUUxMy03N0Y3MDQwRjMzQzE+IC91c3IvbGliL3N5c3RlbS9saWJzeXN0ZW1f
c2VjaW5pdC5keWxpYgogICAgMHg3ZmZmN2E2MDYwMDAgLSAgICAgMHg3ZmZmN2E2MGRmZjcgIGxp
YnN5c3RlbV9zeW1wdG9tcy5keWxpYiAoODIwLjUwLjM3KSA8RUQ3MzUwRTAtQjY4Qi0zNzRBLTlB
QjctREMxRjE5NUE4MzI3PiAvdXNyL2xpYi9zeXN0ZW0vbGlic3lzdGVtX3N5bXB0b21zLmR5bGli
CiAgICAweDdmZmY3YTYwZTAwMCAtICAgICAweDdmZmY3YTYyMWZmZiAgbGlic3lzdGVtX3RyYWNl
LmR5bGliICg4MjkuNTAuMTcpIDw2NTY4RDY4Qi0xRDRDLTM4RUUtOTBBOS01NDgyMUQ2NDAzQzA+
IC91c3IvbGliL3N5c3RlbS9saWJzeXN0ZW1fdHJhY2UuZHlsaWIKICAgIDB4N2ZmZjdhNjIzMDAw
IC0gICAgIDB4N2ZmZjdhNjI4ZmY3ICBsaWJ1bndpbmQuZHlsaWIgKDM1LjMpIDxCRUYzRkI0OS01
NjA0LTNCNUYtODJCNS0zMzJCODAwMjNBQzM+IC91c3IvbGliL3N5c3RlbS9saWJ1bndpbmQuZHls
aWIKICAgIDB4N2ZmZjdhNjI5MDAwIC0gICAgIDB4N2ZmZjdhNjU2ZmZmICBsaWJ4cGMuZHlsaWIg
KDEyMDUuNTAuNzYpIDwyNURCMjQ0RS0yMTdELTNDRTAtQThGMi0wQzQyNTU3ODNCNDI+IC91c3Iv
bGliL3N5c3RlbS9saWJ4cGMuZHlsaWIKCkV4dGVybmFsIE1vZGlmaWNhdGlvbiBTdW1tYXJ5Ogog
IENhbGxzIG1hZGUgYnkgb3RoZXIgcHJvY2Vzc2VzIHRhcmdldGluZyB0aGlzIHByb2Nlc3M6CiAg
ICB0YXNrX2Zvcl9waWQ6IDAKICAgIHRocmVhZF9jcmVhdGU6IDAKICAgIHRocmVhZF9zZXRfc3Rh
dGU6IDAKICBDYWxscyBtYWRlIGJ5IHRoaXMgcHJvY2VzczoKICAgIHRhc2tfZm9yX3BpZDogMAog
ICAgdGhyZWFkX2NyZWF0ZTogMAogICAgdGhyZWFkX3NldF9zdGF0ZTogMAogIENhbGxzIG1hZGUg
YnkgYWxsIHByb2Nlc3NlcyBvbiB0aGlzIG1hY2hpbmU6CiAgICB0YXNrX2Zvcl9waWQ6IDE3NzI0
NTk1CiAgICB0aHJlYWRfY3JlYXRlOiAwCiAgICB0aHJlYWRfc2V0X3N0YXRlOiAyNAoKVk0gUmVn
aW9uIFN1bW1hcnk6ClJlYWRPbmx5IHBvcnRpb24gb2YgTGlicmFyaWVzOiBUb3RhbD00NzAuME0g
cmVzaWRlbnQ9MEsoMCUpIHN3YXBwZWRfb3V0X29yX3VuYWxsb2NhdGVkPTQ3MC4wTSgxMDAlKQpX
cml0YWJsZSByZWdpb25zOiBUb3RhbD0xLjFHIHdyaXR0ZW49MEsoMCUpIHJlc2lkZW50PTBLKDAl
KSBzd2FwcGVkX291dD0wSygwJSkgdW5hbGxvY2F0ZWQ9MS4xRygxMDAlKQogCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgVklSVFVBTCAgIFJFR0lPTiAKUkVHSU9OIFRZUEUgICAgICAg
ICAgICAgICAgICAgICAgICBTSVpFICAgIENPVU5UIChub24tY29hbGVzY2VkKSAKPT09PT09PT09
PT0gICAgICAgICAgICAgICAgICAgICA9PT09PT09ICA9PT09PT09IApBY3Rpdml0eSBUcmFjaW5n
ICAgICAgICAgICAgICAgICAgIDI1NksgICAgICAgIDIgCkNvcmVTZXJ2aWNlcyAgICAgICAgICAg
ICAgICAgICAgICAgMjI0SyAgICAgICAgMiAKQ29yZVVJIGltYWdlIGZpbGUgICAgICAgICAgICAg
ICAgICAxMTZLICAgICAgICAyIApEaXNwYXRjaCBjb250aW51YXRpb25zICAgICAgICAgICAgMTYu
ME0gICAgICAgIDIgCkpTIEpJVCBnZW5lcmF0ZWQgY29kZSAgICAgICAgICAgICAgMS4wRyAgICAg
ICAgNCAKS2VybmVsIEFsbG9jIE9uY2UgICAgICAgICAgICAgICAgICAgIDhLICAgICAgICAyIApN
QUxMT0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgMzguMU0gICAgICAgMTMgCk1BTExPQyBn
dWFyZCBwYWdlICAgICAgICAgICAgICAgICAgIDMySyAgICAgICAgNyAKU1FMaXRlIHBhZ2UgY2Fj
aGUgICAgICAgICAgICAgICAgICAgNjRLICAgICAgICAyIApTVEFDSyBHVUFSRCAgICAgICAgICAg
ICAgICAgICAgICAgNTYuME0gICAgICAgIDYgClN0YWNrICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAxMC4wTSAgICAgICAgNiAKVk1fQUxMT0NBVEUgICAgICAgICAgICAgICAgICAgICAgICAg
MzZLICAgICAgICAzIApXZWJLaXQgTWFsbG9jICAgICAgICAgICAgICAgICAgICAgMTQuMU0gICAg
ICAgIDkgCl9fREFUQSAgICAgICAgICAgICAgICAgICAgICAgICAgICAyOS43TSAgICAgIDI1NyAK
X19GT05UX0RBVEEgICAgICAgICAgICAgICAgICAgICAgICAgIDRLICAgICAgICAyIApfX0xJTktF
RElUICAgICAgICAgICAgICAgICAgICAgICAyNDcuME0gICAgICAgMTAgCl9fVEVYVCAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDIyMy4wTSAgICAgIDI1OCAKX19VTklDT0RFICAgICAgICAgICAg
ICAgICAgICAgICAgICA1NjBLICAgICAgICAyIAptYXBwZWQgZmlsZSAgICAgICAgICAgICAgICAg
ICAgICAgMzMuNE0gICAgICAgIDcgCnNoYXJlZCBtZW1vcnkgICAgICAgICAgICAgICAgICAgICAg
NjI0SyAgICAgICAxMCAKPT09PT09PT09PT0gICAgICAgICAgICAgICAgICAgICA9PT09PT09ICA9
PT09PT09IApUT1RBTCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEuN0cgICAgICA1ODYg
Cgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>