<?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>67756</bug_id>
          
          <creation_ts>2011-09-07 20:20:12 -0700</creation_ts>
          <short_desc>Let TestWebKitAPI work for chromium</short_desc>
          <delta_ts>2011-09-15 07:17:05 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Xianzhu Wang">wangxianzhu</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>aroben</cc>
    
    <cc>darin</cc>
    
    <cc>dslomov</cc>
    
    <cc>levin</cc>
    
    <cc>sam</cc>
    
    <cc>shinyak</cc>
    
    <cc>tonyg</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>463854</commentid>
    <comment_count>0</comment_count>
    <who name="Xianzhu Wang">wangxianzhu</who>
    <bug_when>2011-09-07 20:20:12 -0700</bug_when>
    <thetext>TestWebKitAPI for now only works on mac and windows. I think it would be good to let it work for chromium port.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>463944</commentid>
    <comment_count>1</comment_count>
      <attachid>106707</attachid>
    <who name="Xianzhu Wang">wangxianzhu</who>
    <bug_when>2011-09-08 00:57:01 -0700</bug_when>
    <thetext>Created attachment 106707
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>464012</commentid>
    <comment_count>2</comment_count>
      <attachid>106707</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2011-09-08 06:13:42 -0700</bug_when>
    <thetext>Comment on attachment 106707
patch

I don&apos;t understand the TestWebKitAPI[Prefix].h changes. Why can&apos;t Chromium use a prefix header like Mac and Windows do?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>464487</commentid>
    <comment_count>3</comment_count>
      <attachid>106707</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2011-09-08 16:35:57 -0700</bug_when>
    <thetext>Comment on attachment 106707
patch

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

&gt; Source/WebKit/chromium/WebKit.gyp:2
&gt; -# Copyright (C) 2010 Google Inc. All rights reserved.
&gt; +# Copyright (C) 2011 Google Inc. All rights reserved.

We usually just add the new year when this is updated, so 2010, 2011.

&gt; Tools/Scripts/run-api-tests:69
&gt; +  --chromium            Run the Chromium port on Mac/Win/Linux

Why is this necessary?  Can&apos;t you just call isChromium()?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>464720</commentid>
    <comment_count>4</comment_count>
      <attachid>106707</attachid>
    <who name="Xianzhu Wang">wangxianzhu</who>
    <bug_when>2011-09-09 04:03:29 -0700</bug_when>
    <thetext>Comment on attachment 106707
patch

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

&gt;&gt; Source/WebKit/chromium/WebKit.gyp:2
&gt;&gt; +# Copyright (C) 2011 Google Inc. All rights reserved.
&gt; 
&gt; We usually just add the new year when this is updated, so 2010, 2011.

It&apos;s a common practice to use only the last year for Google copyrights, otherwise it should have been &quot;2009, 2010&quot;.

&gt;&gt; Tools/Scripts/run-api-tests:69
&gt;&gt; +  --chromium            Run the Chromium port on Mac/Win/Linux
&gt; 
&gt; Why is this necessary?  Can&apos;t you just call isChromium()?

isChromium() just looks for &apos;--chromium&apos; in the command line.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>464725</commentid>
    <comment_count>5</comment_count>
    <who name="Xianzhu Wang">wangxianzhu</who>
    <bug_when>2011-09-09 04:11:42 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 106707 [details])
&gt; I don&apos;t understand the TestWebKitAPI[Prefix].h changes. Why can&apos;t Chromium use a prefix header like Mac and Windows do?

I haven&apos;t found a way to achieve that. I have asked the question in https://lists.webkit.org/pipermail/webkit-dev/2011-September/017892.html.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>464749</commentid>
    <comment_count>6</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2011-09-09 05:38:43 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; (In reply to comment #2)
&gt; &gt; (From update of attachment 106707 [details] [details])
&gt; &gt; I don&apos;t understand the TestWebKitAPI[Prefix].h changes. Why can&apos;t Chromium use a prefix header like Mac and Windows do?
&gt; 
&gt; I haven&apos;t found a way to achieve that. I have asked the question in https://lists.webkit.org/pipermail/webkit-dev/2011-September/017892.html.

 % git grep Prefix -- &apos;*.gyp&apos;
Source/JavaScriptCore/gyp/JavaScriptCore.gyp:            &apos;GCC_PREFIX_HEADER&apos;: &apos;&lt;(project_dir)/JavaScriptCorePrefix.h&apos;,
Source/WebCore/WebCore.gyp/WebCore.gyp:          &apos;GCC_PREFIX_HEADER&apos;: &apos;../WebCorePrefix.h&apos;,
Source/WebCore/gyp/WebCore.gyp:            &apos;GCC_PREFIX_HEADER&apos;: &apos;&lt;(project_dir)/WebCorePrefix.h&apos;,
Source/WebCore/gyp/WebCore.gyp:            &apos;GCC_PREFIX_HEADER&apos;: &apos;&lt;(project_dir)/WebCorePrefix.h&apos;,

Can we do something similar for TestWebKitAPI?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>464752</commentid>
    <comment_count>7</comment_count>
    <who name="Xianzhu Wang">wangxianzhu</who>
    <bug_when>2011-09-09 05:45:41 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; (In reply to comment #5)
&gt; &gt; (In reply to comment #2)
&gt; &gt; &gt; (From update of attachment 106707 [details] [details] [details])
&gt; &gt; &gt; I don&apos;t understand the TestWebKitAPI[Prefix].h changes. Why can&apos;t Chromium use a prefix header like Mac and Windows do?
&gt; &gt; 
&gt; &gt; I haven&apos;t found a way to achieve that. I have asked the question in https://lists.webkit.org/pipermail/webkit-dev/2011-September/017892.html.
&gt; 
&gt;  % git grep Prefix -- &apos;*.gyp&apos;
&gt; Source/JavaScriptCore/gyp/JavaScriptCore.gyp:            &apos;GCC_PREFIX_HEADER&apos;: &apos;&lt;(project_dir)/JavaScriptCorePrefix.h&apos;,
&gt; Source/WebCore/WebCore.gyp/WebCore.gyp:          &apos;GCC_PREFIX_HEADER&apos;: &apos;../WebCorePrefix.h&apos;,
&gt; Source/WebCore/gyp/WebCore.gyp:            &apos;GCC_PREFIX_HEADER&apos;: &apos;&lt;(project_dir)/WebCorePrefix.h&apos;,
&gt; Source/WebCore/gyp/WebCore.gyp:            &apos;GCC_PREFIX_HEADER&apos;: &apos;&lt;(project_dir)/WebCorePrefix.h&apos;,
&gt; 
&gt; Can we do something similar for TestWebKitAPI?

Those are all in &apos;xcode_settings&apos;. I think we don&apos;t need to specially treat mac platform of Chromium as we have already included all necessary headers.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>464754</commentid>
    <comment_count>8</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2011-09-09 05:47:56 -0700</bug_when>
    <thetext>Perhaps it would be best to follow the &quot;config.h&quot; approach of other WebKit projects (WebCore, WebKit2, etc.).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>464784</commentid>
    <comment_count>9</comment_count>
    <who name="Xianzhu Wang">wangxianzhu</who>
    <bug_when>2011-09-09 07:39:09 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; Perhaps it would be best to follow the &quot;config.h&quot; approach of other WebKit projects (WebCore, WebKit2, etc.).

Is it OK to just rename TestWebKitAPI.h to config.h in my patch?

Or the following method?
1) rename TestWebKitAPIPrefix.h to config.h 
2) include config.h from each of the source files
3) disable original GCC_PREFIX_HEADER or ForceIncludeFiles

I prefer the former because the change is small and I don&apos;t need to verify my change on both Mac and Windows.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>464882</commentid>
    <comment_count>10</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2011-09-09 10:35:15 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; (In reply to comment #8)
&gt; &gt; Perhaps it would be best to follow the &quot;config.h&quot; approach of other WebKit projects (WebCore, WebKit2, etc.).
&gt; 
&gt; Is it OK to just rename TestWebKitAPI.h to config.h in my patch?
&gt; 
&gt; Or the following method?
&gt; 1) rename TestWebKitAPIPrefix.h to config.h 
&gt; 2) include config.h from each of the source files
&gt; 3) disable original GCC_PREFIX_HEADER or ForceIncludeFiles
&gt; 
&gt; I prefer the former because the change is small and I don&apos;t need to verify my change on both Mac and Windows.

Please do the latter.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>465230</commentid>
    <comment_count>11</comment_count>
      <attachid>106964</attachid>
    <who name="Xianzhu Wang">wangxianzhu</who>
    <bug_when>2011-09-09 22:42:52 -0700</bug_when>
    <thetext>Created attachment 106964
use config.h. Mac and Windows to be verified by bots.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>465231</commentid>
    <comment_count>12</comment_count>
      <attachid>106965</attachid>
    <who name="Xianzhu Wang">wangxianzhu</who>
    <bug_when>2011-09-09 22:45:10 -0700</bug_when>
    <thetext>Created attachment 106965
use config.h. Mac and Windows to be verified by bots.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466787</commentid>
    <comment_count>13</comment_count>
    <who name="Xianzhu Wang">wangxianzhu</who>
    <bug_when>2011-09-13 19:52:01 -0700</bug_when>
    <thetext>As there will be several changes to StringBuilder, I think it&apos;d better if we have this change landed first. Then we can incrementally add unit tests together with the changes to StringBuilder.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>467776</commentid>
    <comment_count>14</comment_count>
      <attachid>106965</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-09-15 07:07:50 -0700</bug_when>
    <thetext>Comment on attachment 106965
use config.h. Mac and Windows to be verified by bots.

Clearing flags on attachment: 106965

Committed r95188: &lt;http://trac.webkit.org/changeset/95188&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>467777</commentid>
    <comment_count>15</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-09-15 07:07:55 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>467780</commentid>
    <comment_count>16</comment_count>
    <who name="David Levin">levin</who>
    <bug_when>2011-09-15 07:14:36 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 106707 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=106707&amp;action=review
&gt; 
&gt; &gt;&gt; Source/WebKit/chromium/WebKit.gyp:2
&gt; &gt;&gt; +# Copyright (C) 2011 Google Inc. All rights reserved.
&gt; &gt; 
&gt; &gt; We usually just add the new year when this is updated, so 2010, 2011.
&gt; 
&gt; It&apos;s a common practice to use only the last year for Google copyrights, otherwise it should have been &quot;2009, 2010&quot;.

Just a note for the future, when in WebKit, please follow WebKit practices :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>467782</commentid>
    <comment_count>17</comment_count>
    <who name="David Levin">levin</who>
    <bug_when>2011-09-15 07:17:05 -0700</bug_when>
    <thetext>btw, it is cool that this runs for Chromium now!</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>106707</attachid>
            <date>2011-09-08 00:57:01 -0700</date>
            <delta_ts>2011-09-09 22:42:52 -0700</delta_ts>
            <desc>patch</desc>
            <filename>patch-67756</filename>
            <type>text/plain</type>
            <size>12463</size>
            <attacher name="Xianzhu Wang">wangxianzhu</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCShyZXZpc2lvbiA5NDc0NikKKysrIFNvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTIg
QEAKKzIwMTEtMDktMDggIFhpYW56aHUgV2FuZyAgPHdhbmd4aWFuemh1QGNocm9taXVtLm9yZz4K
KworICAgICAgICBMZXQgVGVzdFdlYktpdEFQSSB3b3JrIGZvciBjaHJvbWl1bQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Njc3NTYKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFdlYktpdC5neXA6CisKIDIw
MTEtMDktMDcgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KIAogICAgICAgICBGcmFt
ZUxvYWRlcjo6YWRkRXh0cmFGaWVsZHNUb1JlcXVlc3QgY2FuIGNyYXNoIHdoZW4gY2FsbGVkIGZy
b20gb3IgYWZ0ZXIgRnJhbWVMb2FkZXI6OmRldGFjaEZyb21QYXJlbnQKSW5kZXg6IFNvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vV2ViS2l0Lmd5cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L2No
cm9taXVtL1dlYktpdC5neXAJKHJldmlzaW9uIDk0NzQ2KQorKysgU291cmNlL1dlYktpdC9jaHJv
bWl1bS9XZWJLaXQuZ3lwCSh3b3JraW5nIGNvcHkpCkBAIC0xLDUgKzEsNSBAQAogIwotIyBDb3B5
cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyMgQ29weXJp
Z2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAjCiAjIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAogIyBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMgYXJlCkBAIC0zMiw2ICszMiw3IEBACiAgICAgJ2luY2x1ZGVzJzog
WwogICAgICAgICAnLi4vLi4vV2ViQ29yZS9XZWJDb3JlLmd5cGknLAogICAgICAgICAnLi4vLi4v
Li4vVG9vbHMvRHVtcFJlbmRlclRyZWUvRHVtcFJlbmRlclRyZWUuZ3lwaScsCisgICAgICAgICcu
Li8uLi8uLi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUEkuZ3lwaScsCiAgICAgICAg
ICdXZWJLaXQuZ3lwaScsCiAgICAgICAgICdmZWF0dXJlcy5neXBpJywKICAgICBdLApAQCAtMTIz
NSw2ICsxMjM2LDI3IEBACiAgICAgICAgICAgICAgICAgfV0sCiAgICAgICAgICAgICBdLAogICAg
ICAgICB9LAorICAgICAgICB7CisgICAgICAgICAgICAndGFyZ2V0X25hbWUnOiAnVGVzdFdlYktp
dEFQSScsCisgICAgICAgICAgICAndHlwZSc6ICdleGVjdXRhYmxlJywKKyAgICAgICAgICAgICdk
ZXBlbmRlbmNpZXMnOiBbCisgICAgICAgICAgICAgICAgJ3dlYmtpdCcsCisgICAgICAgICAgICAg
ICAgJy4uLy4uL1dlYkNvcmUvV2ViQ29yZS5neXAvV2ViQ29yZS5neXA6d2ViY29yZScsCisgICAg
ICAgICAgICAgICAgJzwoY2hyb21pdW1fc3JjX2RpcikvYmFzZS9iYXNlLmd5cDp0ZXN0X3N1cHBv
cnRfYmFzZScsCisgICAgICAgICAgICAgICAgJzwoY2hyb21pdW1fc3JjX2RpcikvdGVzdGluZy9n
dGVzdC5neXA6Z3Rlc3QnLAorICAgICAgICAgICAgICAgICc8KGNocm9taXVtX3NyY19kaXIpL3Rl
c3RpbmcvZ21vY2suZ3lwOmdtb2NrJywKKyAgICAgICAgICAgICAgICAnPChjaHJvbWl1bV9zcmNf
ZGlyKS93ZWJraXQvc3VwcG9ydC93ZWJraXRfc3VwcG9ydC5neXA6d2Via2l0X3N1cHBvcnQnLAor
ICAgICAgICAgICAgXSwKKyAgICAgICAgICAgICdpbmNsdWRlX2RpcnMnOiBbCisgICAgICAgICAg
ICAgICAgJy4uLy4uLy4uL1Rvb2xzL1Rlc3RXZWJLaXRBUEknLAorICAgICAgICAgICAgICAgICdw
dWJsaWMnLAorICAgICAgICAgICAgICAgICdzcmMnLAorICAgICAgICAgICAgXSwKKyAgICAgICAg
ICAgICdzb3VyY2VzJzogWworICAgICAgICAgICAgICAgICd0ZXN0cy9SdW5BbGxUZXN0cy5jcHAn
LAorICAgICAgICAgICAgICAgICc8QChUZXN0V2ViS2l0QVBJX2ZpbGVzKScsCisgICAgICAgICAg
ICBdLAorICAgICAgICB9LAogICAgIF0sICMgdGFyZ2V0cwogICAgICdjb25kaXRpb25zJzogWwog
ICAgICAgICBbJ09TPT0id2luIicsIHsKSW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJldmlzaW9uIDk0NzQ3KQorKysgVG9vbHMvQ2hhbmdlTG9n
CSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjUgQEAKKzIwMTEtMDktMDggIFhpYW56aHUgV2Fu
ZyAgPHdhbmd4aWFuemh1QGNocm9taXVtLm9yZz4KKworICAgICAgICBMZXQgVGVzdFdlYktpdEFQ
SSB3b3JrIGZvciBjaHJvbWl1bQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9Njc3NTYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIFNjcmlwdHMvYnVpbGQtYXBpLXRlc3RzOgorICAgICAgICAqIFNjcmlwdHMv
cnVuLWFwaS10ZXN0czoKKyAgICAgICAgKGlzU3VwcG9ydGVkUGxhdGZvcm0pOiBBZGRlZC4KKyAg
ICAgICAgKHJ1blRlc3QpOgorICAgICAgICAocG9wdWxhdGVUZXN0cyk6CisgICAgICAgICogU2Ny
aXB0cy93ZWJraXRkaXJzLnBtOgorICAgICAgICAoZGV0ZXJtaW5lQmFzZVByb2R1Y3REaXIpOgor
ICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS5neXBpOiBBZGRlZC4KKyAgICAg
ICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUEkuaDogQWRkZWQuCisgICAgICAgICogVGVz
dFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJUHJlZml4Lmg6CisgICAgICAgICogVGVzdFdlYktpdEFQ
SS9UZXN0cy9XVEYvQ2hlY2tlZEFyaXRobWV0aWNPcGVyYXRpb25zLmNwcDoKKyAgICAgICAgKiBU
ZXN0V2ViS2l0QVBJL1Rlc3RzL1dURi9TdHJpbmdPcGVyYXRvcnMuY3BwOgorICAgICAgICAqIFRl
c3RXZWJLaXRBUEkvVGVzdHMvV1RGL1ZlY3RvckJhc2ljLmNwcDoKKyAgICAgICAgKiBUZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dURi9WZWN0b3JSZXZlcnNlLmNwcDoKKwogMjAxMS0wOS0wNyAgTWF0dGhl
dyBEZWxhbmV5ICA8bWRlbGFuZXlAYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBzdGFuZGFsb25l
IHNjcmlwdCB0aGF0IGZpbHRlcnMgdGhlIG91dHB1dCBvZiBidWlsZC13ZWJraXQgdG8gYmUgbW9y
ZSBodW1hbi1yZWFkYWJsZQpJbmRleDogVG9vbHMvU2NyaXB0cy9idWlsZC1hcGktdGVzdHMKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy9idWlsZC1hcGktdGVzdHMJKHJldmlzaW9uIDk0NzQ2
KQorKysgVG9vbHMvU2NyaXB0cy9idWlsZC1hcGktdGVzdHMJKHdvcmtpbmcgY29weSkKQEAgLTY2
LDYgKzY2LDkgQEAgaWYgKGlzQXBwbGVNYWNXZWJLaXQoKSkgewogfSBlbHNpZiAoaXNBcHBsZVdp
bldlYktpdCgpKSB7CiAgICAgY2hkaXIgIlRvb2xzL1Rlc3RXZWJLaXRBUEkiIG9yIGRpZTsKICAg
ICAkcmVzdWx0ID0gYnVpbGRWaXN1YWxTdHVkaW9Qcm9qZWN0KCJ3aW4vVGVzdFdlYktpdEFQSS5z
bG4iLCAkY2xlYW4pOworfSBlbHNpZiAoaXNDaHJvbWl1bSgpKSB7CisgICAgIyBDaHJvbWl1bSBi
dWlsZCBldmVyeXRoaW5nIGluIG9uZSBzaG90LiBObyBuZWVkIHRvIGJ1aWxkIGFueXRoaW5nIGhl
cmUuCisgICAgJHJlc3VsdCA9IDA7CiB9IGVsc2UgewogICAgIGRpZSAiVGVzdFdlYktpdEFQSSBp
cyBub3Qgc3VwcG9ydGVkIG9uIHRoaXMgcGxhdGZvcm0uXG4iOwogfQpJbmRleDogVG9vbHMvU2Ny
aXB0cy9ydW4tYXBpLXRlc3RzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvcnVuLWFwaS10
ZXN0cwkocmV2aXNpb24gOTQ3NDYpCisrKyBUb29scy9TY3JpcHRzL3J1bi1hcGktdGVzdHMJKHdv
cmtpbmcgY29weSkKQEAgLTY2LDYgKzY2LDcgQEAgVXNhZ2U6ICRwcm9ncmFtTmFtZSBbb3B0aW9u
c10KICAgLXZ8LS12ZXJib3NlICAgICAgICAgIFZlcmJvc2Ugb3V0cHV0CiAgIC1kfC0tZHVtcC10
ZXN0cyAgICAgICBEdW1wIHRoZSBuYW1lcyBvZiB0ZXN0Y2FzZXMgd2l0aG91dCBydW5uaW5nIHRo
ZW0KICAgLS1bbm8tXWJ1aWxkICAgICAgICAgIEJ1aWxkIChvciBkbyBub3QgYnVpbGQpIHVuaXQg
dGVzdHMgcHJpb3IgdG8gcnVubmluZyAoZGVmYXVsdDogJGJ1aWxkRGVmYXVsdCkKKyAgLS1jaHJv
bWl1bSAgICAgICAgICAgIFJ1biB0aGUgQ2hyb21pdW0gcG9ydCBvbiBNYWMvV2luL0xpbnV4CiBF
T0YKIAogR2V0T3B0aW9ucygKQEAgLTk0LDYgKzk1LDExIEBAIGlmIChydW5BbGxUZXN0cygpKSB7
CiAgICAgZXhpdCAxOwogfQogCitzdWIgaXNTdXBwb3J0ZWRQbGF0Zm9ybSgpCit7CisgICAgcmV0
dXJuIGlzQXBwbGVNYWNXZWJLaXQoKSB8fCBpc0FwcGxlV2luV2ViS2l0KCkgfHwgaXNDaHJvbWl1
bSgpOworfQorCiBzdWIgZHVtcEFsbFRlc3RzKCkKIHsKICAgICBwcmludCAiRHVtcGluZyB0ZXN0
IGNhc2VzXG4iOwpAQCAtMTQ1LDcgKzE1MSw3IEBAIHN1YiBydW5UZXN0KCQkKQogICAgIG15ICRy
ZXN1bHQgPSAwOwogICAgIG15ICR0aW1lZE91dCA9IDA7CiAKLSAgICBkaWUgInJ1bi1hcGktdGVz
dHMgaXMgbm90IHN1cHBvcnRlZCBvbiB0aGlzIHBsYXRmb3JtLlxuIiB1bmxlc3MgaXNBcHBsZU1h
Y1dlYktpdCgpIHx8IGlzQXBwbGVXaW5XZWJLaXQoKTsKKyAgICBkaWUgInJ1bi1hcGktdGVzdHMg
aXMgbm90IHN1cHBvcnRlZCBvbiB0aGlzIHBsYXRmb3JtLlxuIiB1bmxlc3MgaXNTdXBwb3J0ZWRQ
bGF0Zm9ybSgpOwogCiAgICAgcHJlcGFyZUVudmlyb25tZW50Rm9yUnVubmluZ1Rlc3RUb29sKCk7
CiAKQEAgLTIwMiw3ICsyMDgsNyBAQCBzdWIgcG9wdWxhdGVUZXN0cygpCiAgICAgbXkgQHRlc3Rz
OwogICAgIG15ICR0aW1lZE91dDsKIAotICAgIGRpZSAicnVuLWFwaS10ZXN0cyBpcyBub3Qgc3Vw
cG9ydGVkIG9uIHRoaXMgcGxhdGZvcm0uXG4iIHVubGVzcyBpc0FwcGxlTWFjV2ViS2l0KCkgfHwg
aXNBcHBsZVdpbldlYktpdCgpOworICAgIGRpZSAicnVuLWFwaS10ZXN0cyBpcyBub3Qgc3VwcG9y
dGVkIG9uIHRoaXMgcGxhdGZvcm0uXG4iIHVubGVzcyBpc1N1cHBvcnRlZFBsYXRmb3JtKCk7CiAK
ICAgICBwcmVwYXJlRW52aXJvbm1lbnRGb3JSdW5uaW5nVGVzdFRvb2woKTsKIApJbmRleDogVG9v
bHMvU2NyaXB0cy93ZWJraXRkaXJzLnBtCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvd2Vi
a2l0ZGlycy5wbQkocmV2aXNpb24gOTQ3NDYpCisrKyBUb29scy9TY3JpcHRzL3dlYmtpdGRpcnMu
cG0JKHdvcmtpbmcgY29weSkKQEAgLTE1NSw2ICsxNTUsOCBAQCBzdWIgZGV0ZXJtaW5lQmFzZVBy
b2R1Y3REaXIKICAgICB9IGVsc2lmIChpc1N5bWJpYW4oKSkgewogICAgICAgICAjIFNoYWRvdyBi
dWlsZHMgYXJlIG5vdCBzdXBwb3J0ZWQgb24gU3ltYmlhbgogICAgICAgICAkYmFzZVByb2R1Y3RE
aXIgPSAkc291cmNlRGlyOworICAgIH0gZWxzaWYgKGlzQ2hyb21pdW0oKSkgeworICAgICAgICAk
YmFzZVByb2R1Y3REaXIgPSAiJHNvdXJjZURpci9vdXQiOwogICAgIH0KIAogICAgIGlmICghZGVm
aW5lZCgkYmFzZVByb2R1Y3REaXIpKSB7ICMgUG9ydC1zcGVzaWZpYyBjaGVja3MgZmFpbGVkLCB1
c2UgZGVmYXVsdApJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJLmd5cGkK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJLmd5cGkJKHJl
dmlzaW9uIDApCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUEkuZ3lwaQkocmV2
aXNpb24gMCkKQEAgLTAsMCArMSw0MCBAQAorIworIyBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyMKKyMgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisjIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBh
cmUKKyMgbWV0OgorIworIyAgICAgICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorIyAgICAgICAgICogUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorIyBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyCisjIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUKKyMgZGlzdHJpYnV0aW9uLgorIyAgICAgICAgICogTmVpdGhl
ciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworIyBjb250cmli
dXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQg
ZnJvbQorIyB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJt
aXNzaW9uLgorIworIyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQg
SE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisjICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisjIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorIyBB
IFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhF
IENPUFlSSUdIVAorIyBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyMgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorIyBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyMg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZCisjIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyMgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisjIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CisjCisKK3sKKyAgICAndmFyaWFibGVzJzogeworICAgICAgICAnVGVzdFdlYktpdEFQSV9maWxl
cyc6IFsKKyAgICAgICAgICAgICdUZXN0cy9XVEYvQ2hlY2tlZEFyaXRobWV0aWNPcGVyYXRpb25z
LmNwcCcsCisgICAgICAgICAgICAnVGVzdHMvV1RGL1N0cmluZ09wZXJhdG9ycy5jcHAnLAorICAg
ICAgICAgICAgJ1Rlc3RzL1dURi9WZWN0b3JCYXNpYy5jcHAnLAorICAgICAgICAgICAgJ1Rlc3Rz
L1dURi9WZWN0b3JSZXZlcnNlLmNwcCcsCisgICAgICAgIF0sCisgICAgfSwKK30KCkluZGV4OiBU
b29scy9UZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUEkuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9U
ZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUEkuaAkocmV2aXNpb24gMCkKKysrIFRvb2xzL1Rlc3RX
ZWJLaXRBUEkvVGVzdFdlYktpdEFQSS5oCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDMzIEBACisv
KgorICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMu
IEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUg
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBB
UFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNF
UVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFU
QSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgorICovCisKKyNpZm5kZWYgVGVzdFdlYktpdEFQSV9oCisjZGVmaW5lIFRlc3RXZWJLaXRB
UElfaAorCisjaWZuZGVmIFRlc3RXZWJLaXRBUElQcmVmaXhfaF9JTkpFQ1RFRAorI2luY2x1ZGUg
IlRlc3RXZWJLaXRBUElQcmVmaXguaCIKKyNlbmRpZgorCisjZW5kaWYgLy8gVGVzdFdlYktpdEFQ
SV9oCgpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJUHJlZml4LmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJUHJlZml4LmgJKHJl
dmlzaW9uIDk0NzQ2KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJUHJlZml4
LmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDYgKzI1LDggQEAKIAogI2luY2x1ZGUgPHd0Zi9QbGF0
Zm9ybS5oPgogCisjZGVmaW5lIFRlc3RXZWJLaXRBUElQcmVmaXhfaF9JTkpFQ1RFRAorCiAjaWYg
X19BUFBMRV9fCiAKICNpZmRlZiBfX09CSkNfXwpAQCAtNDEsOCArNDMsMTMgQEAKICNkZWZpbmUg
SlNfRVhQT1JUX1BSSVZBVEUKICNkZWZpbmUgV1RGX0VYUE9SVF9QUklWQVRFCiAKKyNkZWZpbmUg
SlNfRVhQT1JUREFUQQorCiAjaW5jbHVkZSA8c3RkaW50Lmg+CisKKyNpZiAhUExBVEZPUk0oQ0hS
T01JVU0pCiAjaW5jbHVkZSA8V2ViS2l0Mi9XZWJLaXQyLmg+CisjZW5kaWYKIAogI2lmZGVmIF9f
Y3BsdXNwbHVzCiAjaW5jbHVkZSA8Z3Rlc3QvZ3Rlc3QuaD4KSW5kZXg6IFRvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV1RGL0NoZWNrZWRBcml0aG1ldGljT3BlcmF0aW9ucy5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XVEYvQ2hlY2tlZEFyaXRobWV0aWNPcGVy
YXRpb25zLmNwcAkocmV2aXNpb24gOTQ3NDYpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3Rz
L1dURi9DaGVja2VkQXJpdGhtZXRpY09wZXJhdGlvbnMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0y
Myw3ICsyMyw5IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAot
I2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0NoZWNrZWRBcml0aG1ldGljLmg+CisjaW5jbHVkZSAi
VGVzdFdlYktpdEFQSVByZWZpeC5oIgorCisjaW5jbHVkZSA8d3RmL0NoZWNrZWRBcml0aG1ldGlj
Lmg+CiAKIG5hbWVzcGFjZSBUZXN0V2ViS2l0QVBJIHsKIApJbmRleDogVG9vbHMvVGVzdFdlYktp
dEFQSS9UZXN0cy9XVEYvU3RyaW5nT3BlcmF0b3JzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9U
ZXN0V2ViS2l0QVBJL1Rlc3RzL1dURi9TdHJpbmdPcGVyYXRvcnMuY3BwCShyZXZpc2lvbiA5NDc0
NikKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV1RGL1N0cmluZ09wZXJhdG9ycy5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTIzLDEyICsyMywxMyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgogICovCiAKLSNkZWZpbmUgSlNfRVhQT1JUREFUQQorI2luY2x1ZGUgIlRl
c3RXZWJLaXRBUEkuaCIKKwogI2RlZmluZSBXVEZfU1RSSU5HVFlQRUFEQVBURVJfQ09QSUVEX1dU
Rl9TVFJJTkcoKSAoKyt3dGZTdHJpbmdDb3B5Q291bnQpCiAKIHN0YXRpYyBpbnQgd3RmU3RyaW5n
Q29weUNvdW50OwogCi0jaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvV1RGU3RyaW5nLmg+CisjaW5j
bHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKIG5hbWVzcGFjZSBUZXN0V2ViS2l0QVBJIHsK
IApJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XVEYvVmVjdG9yQmFzaWMuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV1RGL1ZlY3RvckJhc2ljLmNw
cAkocmV2aXNpb24gOTQ3NDYpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dURi9WZWN0
b3JCYXNpYy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIzLDcgKzIzLDkgQEAKICAqIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUv
VmVjdG9yLmg+CisjaW5jbHVkZSAiVGVzdFdlYktpdEFQSVByZWZpeC5oIgorCisjaW5jbHVkZSA8
d3RmL1ZlY3Rvci5oPgogCiBuYW1lc3BhY2UgVGVzdFdlYktpdEFQSSB7CiAKSW5kZXg6IFRvb2xz
L1Rlc3RXZWJLaXRBUEkvVGVzdHMvV1RGL1ZlY3RvclJldmVyc2UuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV1RGL1ZlY3RvclJldmVyc2UuY3BwCShyZXZpc2lv
biA5NDc0NikKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV1RGL1ZlY3RvclJldmVyc2Uu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw3ICsyMyw5IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL1ZlY3Rvci5o
PgorI2luY2x1ZGUgIlRlc3RXZWJLaXRBUElQcmVmaXguaCIKKworI2luY2x1ZGUgPHd0Zi9WZWN0
b3IuaD4KIAogbmFtZXNwYWNlIFRlc3RXZWJLaXRBUEkgewogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>106964</attachid>
            <date>2011-09-09 22:42:52 -0700</date>
            <delta_ts>2011-09-09 22:45:10 -0700</delta_ts>
            <desc>use config.h. Mac and Windows to be verified by bots.</desc>
            <filename>patch-67756a</filename>
            <type>text/plain</type>
            <size>40594</size>
            <attacher name="Xianzhu Wang">wangxianzhu</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCShyZXZpc2lvbiA5NDg5OSkKKysrIFNvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTIg
QEAKKzIwMTEtMDktMDkgIFhpYW56aHUgV2FuZyAgPHdhbmd4aWFuemh1QGNocm9taXVtLm9yZz4K
KworICAgICAgICBMZXQgVGVzdFdlYktpdEFQSSB3b3JrIGZvciBjaHJvbWl1bQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Njc3NTYKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFdlYktpdC5neXA6CisKIDIw
MTEtMDktMDkgIEZhZHkgU2FtdWVsICA8ZnNhbXVlbEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAg
TW92ZSBwYWdlU2NhbGVGYWN0b3IgY29kZSBmcm9tIEZyYW1lLntofGNwcH0gdG8gUGFnZS57aHxj
cHB9CkluZGV4OiBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL1dlYktpdC5neXAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYktpdC9jaHJvbWl1bS9XZWJLaXQuZ3lwCShyZXZpc2lvbiA5NDg5OSkKKysr
IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vV2ViS2l0Lmd5cAkod29ya2luZyBjb3B5KQpAQCAtMSw1
ICsxLDUgQEAKICMKLSMgQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisjIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgogIwogIyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQpAQCAtMzIsNiArMzIsNyBA
QAogICAgICdpbmNsdWRlcyc6IFsKICAgICAgICAgJy4uLy4uL1dlYkNvcmUvV2ViQ29yZS5neXBp
JywKICAgICAgICAgJy4uLy4uLy4uL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL0R1bXBSZW5kZXJUcmVl
Lmd5cGknLAorICAgICAgICAnLi4vLi4vLi4vVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0
QVBJLmd5cGknLAogICAgICAgICAnV2ViS2l0Lmd5cGknLAogICAgICAgICAnZmVhdHVyZXMuZ3lw
aScsCiAgICAgXSwKQEAgLTEyNDcsNiArMTI0OCwyNyBAQAogICAgICAgICAgICAgICAgIH1dLAog
ICAgICAgICAgICAgXSwKICAgICAgICAgfSwKKyAgICAgICAgeworICAgICAgICAgICAgJ3Rhcmdl
dF9uYW1lJzogJ1Rlc3RXZWJLaXRBUEknLAorICAgICAgICAgICAgJ3R5cGUnOiAnZXhlY3V0YWJs
ZScsCisgICAgICAgICAgICAnZGVwZW5kZW5jaWVzJzogWworICAgICAgICAgICAgICAgICd3ZWJr
aXQnLAorICAgICAgICAgICAgICAgICcuLi8uLi9XZWJDb3JlL1dlYkNvcmUuZ3lwL1dlYkNvcmUu
Z3lwOndlYmNvcmUnLAorICAgICAgICAgICAgICAgICc8KGNocm9taXVtX3NyY19kaXIpL2Jhc2Uv
YmFzZS5neXA6dGVzdF9zdXBwb3J0X2Jhc2UnLAorICAgICAgICAgICAgICAgICc8KGNocm9taXVt
X3NyY19kaXIpL3Rlc3RpbmcvZ3Rlc3QuZ3lwOmd0ZXN0JywKKyAgICAgICAgICAgICAgICAnPChj
aHJvbWl1bV9zcmNfZGlyKS90ZXN0aW5nL2dtb2NrLmd5cDpnbW9jaycsCisgICAgICAgICAgICAg
ICAgJzwoY2hyb21pdW1fc3JjX2Rpcikvd2Via2l0L3N1cHBvcnQvd2Via2l0X3N1cHBvcnQuZ3lw
OndlYmtpdF9zdXBwb3J0JywKKyAgICAgICAgICAgIF0sCisgICAgICAgICAgICAnaW5jbHVkZV9k
aXJzKyc6IFsKKyAgICAgICAgICAgICAgICAnLi4vLi4vLi4vVG9vbHMvVGVzdFdlYktpdEFQSScs
CisgICAgICAgICAgICAgICAgJ3B1YmxpYycsCisgICAgICAgICAgICAgICAgJ3NyYycsCisgICAg
ICAgICAgICBdLAorICAgICAgICAgICAgJ3NvdXJjZXMnOiBbCisgICAgICAgICAgICAgICAgJ3Rl
c3RzL1J1bkFsbFRlc3RzLmNwcCcsCisgICAgICAgICAgICAgICAgJzxAKFRlc3RXZWJLaXRBUElf
ZmlsZXMpJywKKyAgICAgICAgICAgIF0sCisgICAgICAgIH0sCiAgICAgXSwgIyB0YXJnZXRzCiAg
ICAgJ2NvbmRpdGlvbnMnOiBbCiAgICAgICAgIFsnT1M9PSJ3aW4iJywgewpJbmRleDogVG9vbHMv
Q2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0NoYW5nZUxvZwkocmV2aXNpb24gOTQ4OTkp
CisrKyBUb29scy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwyNSBAQAorMjAx
MS0wOS0wOSAgWGlhbnpodSBXYW5nICA8d2FuZ3hpYW56aHVAY2hyb21pdW0ub3JnPgorCisgICAg
ICAgIExldCBUZXN0V2ViS2l0QVBJIHdvcmsgZm9yIGNocm9taXVtCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02Nzc1NgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2NyaXB0cy9idWlsZC1hcGktdGVzdHM6
CisgICAgICAgICogU2NyaXB0cy9ydW4tYXBpLXRlc3RzOgorICAgICAgICAoaXNTdXBwb3J0ZWRQ
bGF0Zm9ybSk6IEFkZGVkLgorICAgICAgICAocnVuVGVzdCk6CisgICAgICAgIChwb3B1bGF0ZVRl
c3RzKToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdGRpcnMucG06CisgICAgICAgIChkZXRlcm1p
bmVCYXNlUHJvZHVjdERpcik6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJ
Lmd5cGk6IEFkZGVkLgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS5oOiBB
ZGRlZC4KKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUElQcmVmaXguaDoKKyAg
ICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dURi9DaGVja2VkQXJpdGhtZXRpY09wZXJhdGlv
bnMuY3BwOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV1RGL1N0cmluZ09wZXJhdG9y
cy5jcHA6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XVEYvVmVjdG9yQmFzaWMuY3Bw
OgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV1RGL1ZlY3RvclJldmVyc2UuY3BwOgor
CiAyMDExLTA5LTA5ICBBbGV4ZXkgUHJvc2t1cnlha292ICA8YXBAYXBwbGUuY29tPgogCiAgICAg
ICAgIEFkZCBhIHNjcmlwdCB0byBjcmVhdGUgYSBtb25vbGl0aGljIHNjcmlwdC10ZXN0CkluZGV4
OiBUb29scy9TY3JpcHRzL2J1aWxkLWFwaS10ZXN0cwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3Jp
cHRzL2J1aWxkLWFwaS10ZXN0cwkocmV2aXNpb24gOTQ4OTkpCisrKyBUb29scy9TY3JpcHRzL2J1
aWxkLWFwaS10ZXN0cwkod29ya2luZyBjb3B5KQpAQCAtNjYsNiArNjYsOSBAQCBpZiAoaXNBcHBs
ZU1hY1dlYktpdCgpKSB7CiB9IGVsc2lmIChpc0FwcGxlV2luV2ViS2l0KCkpIHsKICAgICBjaGRp
ciAiVG9vbHMvVGVzdFdlYktpdEFQSSIgb3IgZGllOwogICAgICRyZXN1bHQgPSBidWlsZFZpc3Vh
bFN0dWRpb1Byb2plY3QoIndpbi9UZXN0V2ViS2l0QVBJLnNsbiIsICRjbGVhbik7Cit9IGVsc2lm
IChpc0Nocm9taXVtKCkpIHsKKyAgICAjIENocm9taXVtIGJ1aWxkIGV2ZXJ5dGhpbmcgaW4gb25l
IHNob3QuIE5vIG5lZWQgdG8gYnVpbGQgYW55dGhpbmcgaGVyZS4KKyAgICAkcmVzdWx0ID0gMDsK
IH0gZWxzZSB7CiAgICAgZGllICJUZXN0V2ViS2l0QVBJIGlzIG5vdCBzdXBwb3J0ZWQgb24gdGhp
cyBwbGF0Zm9ybS5cbiI7CiB9CkluZGV4OiBUb29scy9TY3JpcHRzL3J1bi1hcGktdGVzdHMKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy9ydW4tYXBpLXRlc3RzCShyZXZpc2lvbiA5NDg5OSkK
KysrIFRvb2xzL1NjcmlwdHMvcnVuLWFwaS10ZXN0cwkod29ya2luZyBjb3B5KQpAQCAtNjYsNiAr
NjYsNyBAQCBVc2FnZTogJHByb2dyYW1OYW1lIFtvcHRpb25zXQogICAtdnwtLXZlcmJvc2UgICAg
ICAgICAgVmVyYm9zZSBvdXRwdXQKICAgLWR8LS1kdW1wLXRlc3RzICAgICAgIER1bXAgdGhlIG5h
bWVzIG9mIHRlc3RjYXNlcyB3aXRob3V0IHJ1bm5pbmcgdGhlbQogICAtLVtuby1dYnVpbGQgICAg
ICAgICAgQnVpbGQgKG9yIGRvIG5vdCBidWlsZCkgdW5pdCB0ZXN0cyBwcmlvciB0byBydW5uaW5n
IChkZWZhdWx0OiAkYnVpbGREZWZhdWx0KQorICAtLWNocm9taXVtICAgICAgICAgICAgUnVuIHRo
ZSBDaHJvbWl1bSBwb3J0IG9uIE1hYy9XaW4vTGludXgKIEVPRgogCiBHZXRPcHRpb25zKApAQCAt
OTQsNiArOTUsMTEgQEAgaWYgKHJ1bkFsbFRlc3RzKCkpIHsKICAgICBleGl0IDE7CiB9CiAKK3N1
YiBpc1N1cHBvcnRlZFBsYXRmb3JtKCkKK3sKKyAgICByZXR1cm4gaXNBcHBsZU1hY1dlYktpdCgp
IHx8IGlzQXBwbGVXaW5XZWJLaXQoKSB8fCBpc0Nocm9taXVtKCk7Cit9CisKIHN1YiBkdW1wQWxs
VGVzdHMoKQogewogICAgIHByaW50ICJEdW1waW5nIHRlc3QgY2FzZXNcbiI7CkBAIC0xNDUsNyAr
MTUxLDcgQEAgc3ViIHJ1blRlc3QoJCQpCiAgICAgbXkgJHJlc3VsdCA9IDA7CiAgICAgbXkgJHRp
bWVkT3V0ID0gMDsKIAotICAgIGRpZSAicnVuLWFwaS10ZXN0cyBpcyBub3Qgc3VwcG9ydGVkIG9u
IHRoaXMgcGxhdGZvcm0uXG4iIHVubGVzcyBpc0FwcGxlTWFjV2ViS2l0KCkgfHwgaXNBcHBsZVdp
bldlYktpdCgpOworICAgIGRpZSAicnVuLWFwaS10ZXN0cyBpcyBub3Qgc3VwcG9ydGVkIG9uIHRo
aXMgcGxhdGZvcm0uXG4iIHVubGVzcyBpc1N1cHBvcnRlZFBsYXRmb3JtKCk7CiAKICAgICBwcmVw
YXJlRW52aXJvbm1lbnRGb3JSdW5uaW5nVGVzdFRvb2woKTsKIApAQCAtMjAyLDcgKzIwOCw3IEBA
IHN1YiBwb3B1bGF0ZVRlc3RzKCkKICAgICBteSBAdGVzdHM7CiAgICAgbXkgJHRpbWVkT3V0Owog
Ci0gICAgZGllICJydW4tYXBpLXRlc3RzIGlzIG5vdCBzdXBwb3J0ZWQgb24gdGhpcyBwbGF0Zm9y
bS5cbiIgdW5sZXNzIGlzQXBwbGVNYWNXZWJLaXQoKSB8fCBpc0FwcGxlV2luV2ViS2l0KCk7Cisg
ICAgZGllICJydW4tYXBpLXRlc3RzIGlzIG5vdCBzdXBwb3J0ZWQgb24gdGhpcyBwbGF0Zm9ybS5c
biIgdW5sZXNzIGlzU3VwcG9ydGVkUGxhdGZvcm0oKTsKIAogICAgIHByZXBhcmVFbnZpcm9ubWVu
dEZvclJ1bm5pbmdUZXN0VG9vbCgpOwogCkluZGV4OiBUb29scy9TY3JpcHRzL3dlYmtpdGRpcnMu
cG0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRkaXJzLnBtCShyZXZpc2lvbiA5
NDg5OSkKKysrIFRvb2xzL1NjcmlwdHMvd2Via2l0ZGlycy5wbQkod29ya2luZyBjb3B5KQpAQCAt
MTU1LDYgKzE1NSw4IEBAIHN1YiBkZXRlcm1pbmVCYXNlUHJvZHVjdERpcgogICAgIH0gZWxzaWYg
KGlzU3ltYmlhbigpKSB7CiAgICAgICAgICMgU2hhZG93IGJ1aWxkcyBhcmUgbm90IHN1cHBvcnRl
ZCBvbiBTeW1iaWFuCiAgICAgICAgICRiYXNlUHJvZHVjdERpciA9ICRzb3VyY2VEaXI7CisgICAg
fSBlbHNpZiAoaXNDaHJvbWl1bSgpKSB7CisgICAgICAgICRiYXNlUHJvZHVjdERpciA9ICIkc291
cmNlRGlyL291dCI7CiAgICAgfQogCiAgICAgaWYgKCFkZWZpbmVkKCRiYXNlUHJvZHVjdERpcikp
IHsgIyBQb3J0LXNwZXNpZmljIGNoZWNrcyBmYWlsZWQsIHVzZSBkZWZhdWx0CkluZGV4OiBUb29s
cy9UZXN0V2ViS2l0QVBJL0luamVjdGVkQnVuZGxlQ29udHJvbGxlci5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gVG9vbHMvVGVzdFdlYktpdEFQSS9JbmplY3RlZEJ1bmRsZUNvbnRyb2xsZXIuY3BwCShyZXZp
c2lvbiA5NDg5OSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvSW5qZWN0ZWRCdW5kbGVDb250cm9s
bGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjMsNiArMjMsNyBAQAogICogVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKKyNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRl
ICJJbmplY3RlZEJ1bmRsZUNvbnRyb2xsZXIuaCIKIAogI2luY2x1ZGUgIkluamVjdGVkQnVuZGxl
VGVzdC5oIgpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9JbmplY3RlZEJ1bmRsZU1haW4uY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvSW5qZWN0ZWRCdW5kbGVNYWluLmNw
cAkocmV2aXNpb24gOTQ4OTkpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL0luamVjdGVkQnVuZGxl
TWFpbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIzLDYgKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCisjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVk
ZSAiSW5qZWN0ZWRCdW5kbGVDb250cm9sbGVyLmgiCiAjaW5jbHVkZSA8V2ViS2l0Mi9XS0J1bmRs
ZUluaXRpYWxpemUuaD4KIApJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9KYXZhU2NyaXB0VGVz
dC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9KYXZhU2NyaXB0VGVzdC5j
cHAJKHJldmlzaW9uIDk0ODk5KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9KYXZhU2NyaXB0VGVz
dC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIzLDYgKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KICAqLwogCisjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAi
SmF2YVNjcmlwdFRlc3QuaCIKIAogI2luY2x1ZGUgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCkluZGV4
OiBUb29scy9UZXN0V2ViS2l0QVBJL1BsYXRmb3JtVXRpbGl0aWVzLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBUb29scy9UZXN0V2ViS2l0QVBJL1BsYXRmb3JtVXRpbGl0aWVzLmNwcAkocmV2aXNpb24gOTQ4
OTkpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1BsYXRmb3JtVXRpbGl0aWVzLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMjMsNiArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgogICovCiAKKyNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVV0aWxp
dGllcy5oIgogCiAjaW5jbHVkZSA8d3RmL093bkFycmF5UHRyLmg+CkluZGV4OiBUb29scy9UZXN0
V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUEkuZ3lwaQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RXZWJLaXRBUEkuZ3lwaQkocmV2aXNpb24gMCkKKysrIFRvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdFdlYktpdEFQSS5neXBpCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDQwIEBACisj
CisjIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
IworIyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorIyBtZXQ6CisjCisjICAgICAgICAgKiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorIyBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisjICAgICAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisjIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyMgaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorIyBkaXN0
cmlidXRpb24uCisjICAgICAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5v
ciB0aGUgbmFtZXMgb2YgaXRzCisjIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNl
IG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisjIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisjCisjIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyMg
IkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QKKyMgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisjIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisjIE9XTkVSIE9SIENPTlRS
SUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAor
IyBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UCisjIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorIyBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyMgVEhFT1JZIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAor
IyAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UKKyMgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyMKKworeworICAgICd2YXJpYWJsZXMnOiB7
CisgICAgICAgICdUZXN0V2ViS2l0QVBJX2ZpbGVzJzogWworICAgICAgICAgICAgJ1Rlc3RzL1dU
Ri9DaGVja2VkQXJpdGhtZXRpY09wZXJhdGlvbnMuY3BwJywKKyAgICAgICAgICAgICdUZXN0cy9X
VEYvU3RyaW5nT3BlcmF0b3JzLmNwcCcsCisgICAgICAgICAgICAnVGVzdHMvV1RGL1ZlY3RvckJh
c2ljLmNwcCcsCisgICAgICAgICAgICAnVGVzdHMvV1RGL1ZlY3RvclJldmVyc2UuY3BwJywKKyAg
ICAgICAgXSwKKyAgICB9LAorfQpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0
QVBJUHJlZml4LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0
QVBJUHJlZml4LmgJKHJldmlzaW9uIDk0ODk5KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0
V2ViS2l0QVBJUHJlZml4LmgJKHdvcmtpbmcgY29weSkKQEAgLTEsNTMgKzAsMCBAQAotLyoKLSAq
IENvcHlyaWdodCAoQykgMjAxMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgot
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJ
VFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJ
TkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
Ci0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgot
ICovCi0KLSNpbmNsdWRlIDx3dGYvUGxhdGZvcm0uaD4KLQotI2lmIF9fQVBQTEVfXwotCi0jaWZk
ZWYgX19PQkpDX18KLSNpbXBvcnQgPENvY29hL0NvY29hLmg+Ci0jZW5kaWYKLQotI2VsaWYgZGVm
aW5lZChXSU4zMikgfHwgZGVmaW5lZChfV0lOMzIpCi0KLSNkZWZpbmUgTk9NSU5NQVgKLQotI2Vu
ZGlmCi0KLS8qIEZJWE1FOiBEZWZpbmUgdGhlc2UgcHJvcGVybHkgb25jZSBVU0UoRVhQT1JUX01B
Q1JPUykgaXMgc2V0IGZvciBwb3J0cyB1c2luZyB0aGlzICovCi0jZGVmaW5lIEpTX0VYUE9SVF9Q
UklWQVRFCi0jZGVmaW5lIFdURl9FWFBPUlRfUFJJVkFURQotCi0jaW5jbHVkZSA8c3RkaW50Lmg+
Ci0jaW5jbHVkZSA8V2ViS2l0Mi9XZWJLaXQyLmg+Ci0KLSNpZmRlZiBfX2NwbHVzcGx1cwotI2lu
Y2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+Ci0jZW5kaWYKLQotI2lmIFBMQVRGT1JNKE1BQykgJiYgZGVm
aW5lZChfX09CSkNfXykKLSNpbXBvcnQgPFdlYktpdC9XZWJLaXQuaD4KLSNlbmRpZgpJbmRleDog
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0c0NvbnRyb2xsZXIuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHNDb250cm9sbGVyLmNwcAkocmV2aXNpb24gOTQ4OTkpCisr
KyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzQ29udHJvbGxlci5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTIzLDYgKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAq
LwogCisjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiVGVzdHNDb250cm9sbGVyLmgiCiAK
ICNpbmNsdWRlIDx3dGYvVGhyZWFkaW5nLmg+CkluZGV4OiBUb29scy9UZXN0V2ViS2l0QVBJL2Nv
bmZpZy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvY29uZmlnLmgJKHJldmlz
aW9uIDk0ODU5KQkoZnJvbSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUElQcmVmaXgu
aDo5NDg1OSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvY29uZmlnLmgJKHdvcmtpbmcgY29weSkK
QEAgLTAsMCArMSw1MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFy
ZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlIDx3dGYvUGxhdGZvcm0uaD4K
KworI2lmIF9fQVBQTEVfXworCisjaWZkZWYgX19PQkpDX18KKyNpbXBvcnQgPENvY29hL0NvY29h
Lmg+CisjZW5kaWYKKworI2VsaWYgZGVmaW5lZChXSU4zMikgfHwgZGVmaW5lZChfV0lOMzIpCisK
KyNkZWZpbmUgTk9NSU5NQVgKKworI2VuZGlmCisKKy8qIEZJWE1FOiBEZWZpbmUgdGhlc2UgcHJv
cGVybHkgb25jZSBVU0UoRVhQT1JUX01BQ1JPUykgaXMgc2V0IGZvciBwb3J0cyB1c2luZyB0aGlz
ICovCisjZGVmaW5lIEpTX0VYUE9SVF9QUklWQVRFCisjZGVmaW5lIFdURl9FWFBPUlRfUFJJVkFU
RQorCisjaW5jbHVkZSA8c3RkaW50Lmg+CisjaW5jbHVkZSA8V2ViS2l0Mi9XZWJLaXQyLmg+CisK
KyNpZmRlZiBfX2NwbHVzcGx1cworI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+CisjZW5kaWYKKwor
I2lmIFBMQVRGT1JNKE1BQykgJiYgZGVmaW5lZChfX09CSkNfXykKKyNpbXBvcnQgPFdlYktpdC9X
ZWJLaXQuaD4KKyNlbmRpZgpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9jb25maWcuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL2NvbmZpZy5oCShyZXZpc2lvbiA5NDg1OSkK
KysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvY29uZmlnLmgJKHdvcmtpbmcgY29weSkKQEAgLTQxLDgg
KzQxLDEzIEBACiAjZGVmaW5lIEpTX0VYUE9SVF9QUklWQVRFCiAjZGVmaW5lIFdURl9FWFBPUlRf
UFJJVkFURQogCisjZGVmaW5lIEpTX0VYUE9SVERBVEEKKwogI2luY2x1ZGUgPHN0ZGludC5oPgor
CisjaWYgIVBMQVRGT1JNKENIUk9NSVVNKQogI2luY2x1ZGUgPFdlYktpdDIvV2ViS2l0Mi5oPgor
I2VuZGlmCiAKICNpZmRlZiBfX2NwbHVzcGx1cwogI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+Cklu
ZGV4OiBUb29scy9UZXN0V2ViS2l0QVBJL0NvbmZpZ3VyYXRpb25zL0luamVjdGVkQnVuZGxlLnhj
Y29uZmlnCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvQ29uZmlndXJhdGlvbnMv
SW5qZWN0ZWRCdW5kbGUueGNjb25maWcJKHJldmlzaW9uIDk0ODk5KQorKysgVG9vbHMvVGVzdFdl
YktpdEFQSS9Db25maWd1cmF0aW9ucy9JbmplY3RlZEJ1bmRsZS54Y2NvbmZpZwkod29ya2luZyBj
b3B5KQpAQCAtMjIsNCArMjIsMyBAQAogLy8gT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAKIFBST0RVQ1RfTkFNRSA9
IEluamVjdGVkQnVuZGxlVGVzdFdlYktpdEFQSTsKLUdDQ19QUkVGSVhfSEVBREVSID0gVGVzdFdl
YktpdEFQSVByZWZpeC5oOwpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9Db25maWd1cmF0aW9u
cy9UZXN0V2ViS2l0QVBJLnhjY29uZmlnCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRB
UEkvQ29uZmlndXJhdGlvbnMvVGVzdFdlYktpdEFQSS54Y2NvbmZpZwkocmV2aXNpb24gOTQ4OTkp
CisrKyBUb29scy9UZXN0V2ViS2l0QVBJL0NvbmZpZ3VyYXRpb25zL1Rlc3RXZWJLaXRBUEkueGNj
b25maWcJKHdvcmtpbmcgY29weSkKQEAgLTIzLDQgKzIzLDMgQEAKIAogUFJPRFVDVF9OQU1FID0g
VGVzdFdlYktpdEFQSQogR0NDX0VOQUJMRV9PQkpDX0VYQ0VQVElPTlMgPSBZRVMKLUdDQ19QUkVG
SVhfSEVBREVSID0gVGVzdFdlYktpdEFQSVByZWZpeC5oCkluZGV4OiBUb29scy9UZXN0V2ViS2l0
QVBJL0NvbmZpZ3VyYXRpb25zL1Rlc3RXZWJLaXRBUElDb21tb24udnNwcm9wcwo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL0NvbmZpZ3VyYXRpb25zL1Rlc3RXZWJLaXRBUElDb21t
b24udnNwcm9wcwkocmV2aXNpb24gOTQ4OTkpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL0NvbmZp
Z3VyYXRpb25zL1Rlc3RXZWJLaXRBUElDb21tb24udnNwcm9wcwkod29ya2luZyBjb3B5KQpAQCAt
Nyw3ICs3LDYgQEAKIAk8VG9vbAogCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgogICAgICAgICAg
ICAgICAgIEFkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXM9IiZxdW90OyQoUHJvamVjdERpcikm
cXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKVwuLiZxdW90OzsmcXVvdDskKENvbmZpZ3VyYXRpb25C
dWlsZERpcilcaW5jbHVkZSZxdW90OzsmcXVvdDskKENvbmZpZ3VyYXRpb25CdWlsZERpcilcaW5j
bHVkZVxXZWJDb3JlXEZvcndhcmRpbmdIZWFkZXJzJnF1b3Q7OyZxdW90OyQoQ29uZmlndXJhdGlv
bkJ1aWxkRGlyKVxpbmNsdWRlXHByaXZhdGUmcXVvdDs7JnF1b3Q7JChXZWJLaXRMaWJyYXJpZXNE
aXIpXGluY2x1ZGUmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKVwuLlwuLlwuLlxTb3VyY2VcVGhp
cmRQYXJ0eVxndGVzdFxpbmNsdWRlJnF1b3Q7IgotCQlGb3JjZWRJbmNsdWRlRmlsZXM9IlRlc3RX
ZWJLaXRBUElQcmVmaXguaCIKIAkvPgogCTxUb29sCiAJCU5hbWU9IlZDTGlua2VyVG9vbCIKSW5k
ZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiA5NDg5OSkKKysrIFRvb2xzL1Rlc3RX
ZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCSh3b3JraW5n
IGNvcHkpCkBAIC0xNTUsNyArMTU1LDcgQEAKIAkJQkMxMzE4ODMxMTcxMTRBODAwQjY5NzI3IC8q
IFBsYXRmb3JtVXRpbGl0aWVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBs
YXRmb3JtVXRpbGl0aWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJDMTMxODg0
MTE3MTE0QjYwMEI2OTcyNyAvKiBQbGF0Zm9ybVV0aWxpdGllc01hYy5tbSAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFBsYXRmb3JtVXRpbGl0aWVzTWFjLm1tOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCQzEzMUE5QTExNzEzMTY5MDBCNjk3MjcgLyogbWFp
bi5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IG1haW4ubW07IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUJDMTMxQTlFMTE3MTMxN0MwMEI2OTcyNyAvKiBU
ZXN0V2ViS2l0QVBJUHJlZml4LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRl
c3RXZWJLaXRBUElQcmVmaXguaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkMxMzFB
OUUxMTcxMzE3QzAwQjY5NzI3IC8qIGNvbmZpZy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBjb25maWcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQkMxMzFBQTgx
MTcxMzFGQzAwQjY5NzI3IC8qIFRlc3RzQ29udHJvbGxlci5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZXhwbGljaXRGaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgZmlsZUVu
Y29kaW5nID0gNDsgcGF0aCA9IFRlc3RzQ29udHJvbGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUJDMjQ2RDhDMTMyRjExNUEwMEI1NkQ3QyAvKiBBYm91dEJsYW5rTG9hZC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBYm91dEJsYW5rTG9hZC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJDMjQ2RDk3MTMyRjFGRTEwMEI1NkQ3
QyAvKiBDYW5IYW5kbGVSZXF1ZXN0X0J1bmRsZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBDYW5IYW5kbGVSZXF1ZXN0X0J1bmRsZS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CkBAIC0yNjgsNyArMjY4LDcgQEAKIAkJCQlCQzU3NTk0NDEyNkU3MzNDMDA2
RjBGMTIgLyogSW5qZWN0ZWRCdW5kbGUgKi8sCiAJCQkJQzBBREJFN0ExMkZDQTREMDAwRDJDMTI5
IC8qIEphdmFTY3JpcHRUZXN0LmNwcCAqLywKIAkJCQlDMEFEQkU3QjEyRkNBNEQwMDBEMkMxMjkg
LyogSmF2YVNjcmlwdFRlc3QuaCAqLywKLQkJCQlCQzEzMUE5RTExNzEzMTdDMDBCNjk3MjcgLyog
VGVzdFdlYktpdEFQSVByZWZpeC5oICovLAorCQkJCUJDMTMxQTlFMTE3MTMxN0MwMEI2OTcyNyAv
KiBjb25maWcuaCAqLywKIAkJCQlCQzU3NUJCRjEyNkY1NzUyMDA2RjBGMTIgLyogUGxhdGZvcm1V
dGlsaXRpZXMuY3BwICovLAogCQkJCUJDMTMxODgzMTE3MTE0QTgwMEI2OTcyNyAvKiBQbGF0Zm9y
bVV0aWxpdGllcy5oICovLAogCQkJCUJDOTA5NTFCMTI1NTMzRDcwMDA4Mzc1NiAvKiBQbGF0Zm9y
bVdlYlZpZXcuaCAqLywKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV1RGL0NoZWNr
ZWRBcml0aG1ldGljT3BlcmF0aW9ucy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktp
dEFQSS9UZXN0cy9XVEYvQ2hlY2tlZEFyaXRobWV0aWNPcGVyYXRpb25zLmNwcAkocmV2aXNpb24g
OTQ4OTkpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dURi9DaGVja2VkQXJpdGhtZXRp
Y09wZXJhdGlvbnMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw3ICsyMyw4IEBACiAgKiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2luY2x1ZGUgPEphdmFTY3JpcHRD
b3JlL0NoZWNrZWRBcml0aG1ldGljLmg+CisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSA8
d3RmL0NoZWNrZWRBcml0aG1ldGljLmg+CiAKIG5hbWVzcGFjZSBUZXN0V2ViS2l0QVBJIHsKIApJ
bmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XVEYvU3RyaW5nT3BlcmF0b3JzLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dURi9TdHJpbmdPcGVyYXRv
cnMuY3BwCShyZXZpc2lvbiA5NDg5OSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV1RG
L1N0cmluZ09wZXJhdG9ycy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIzLDEyICsyMywxMyBAQAog
ICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNkZWZpbmUgSlNfRVhQ
T1JUREFUQQorI2luY2x1ZGUgImNvbmZpZy5oIgorCiAjZGVmaW5lIFdURl9TVFJJTkdUWVBFQURB
UFRFUl9DT1BJRURfV1RGX1NUUklORygpICgrK3d0ZlN0cmluZ0NvcHlDb3VudCkKIAogc3RhdGlj
IGludCB3dGZTdHJpbmdDb3B5Q291bnQ7CiAKLSNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9XVEZT
dHJpbmcuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFRl
c3RXZWJLaXRBUEkgewogCkluZGV4OiBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dURi9WZWN0
b3JCYXNpYy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XVEYv
VmVjdG9yQmFzaWMuY3BwCShyZXZpc2lvbiA5NDg5OSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkv
VGVzdHMvV1RGL1ZlY3RvckJhc2ljLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjMsNyArMjMsOCBA
QAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpbmNsdWRlIDxK
YXZhU2NyaXB0Q29yZS9WZWN0b3IuaD4KKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlIDx3
dGYvVmVjdG9yLmg+CiAKIG5hbWVzcGFjZSBUZXN0V2ViS2l0QVBJIHsKIApJbmRleDogVG9vbHMv
VGVzdFdlYktpdEFQSS9UZXN0cy9XVEYvVmVjdG9yUmV2ZXJzZS5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XVEYvVmVjdG9yUmV2ZXJzZS5jcHAJKHJldmlzaW9u
IDk0ODk5KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XVEYvVmVjdG9yUmV2ZXJzZS5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTIzLDcgKzIzLDggQEAKICAqIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KICAqLwogCi0jaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvVmVjdG9yLmg+
CisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgogCiBuYW1lc3Bh
Y2UgVGVzdFdlYktpdEFQSSB7CiAKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2Vi
S2l0Mi9BYm91dEJsYW5rTG9hZC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQ
SS9UZXN0cy9XZWJLaXQyL0Fib3V0QmxhbmtMb2FkLmNwcAkocmV2aXNpb24gOTQ4OTkpCisrKyBU
b29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvQWJvdXRCbGFua0xvYWQuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yMyw2ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCiAgKi8KIAorI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlBsYXRmb3JtVXRp
bGl0aWVzLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1XZWJWaWV3LmgiCiAKSW5kZXg6IFRvb2xzL1Rl
c3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9DYW5IYW5kbGVSZXF1ZXN0LmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvQ2FuSGFuZGxlUmVxdWVzdC5j
cHAJKHJldmlzaW9uIDk0ODk5KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQy
L0NhbkhhbmRsZVJlcXVlc3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsyMyw3IEBACiAg
KiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2luY2x1ZGUgImNvbmZp
Zy5oIgogI2luY2x1ZGUgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1X
ZWJWaWV3LmgiCiAjaW5jbHVkZSA8V2ViS2l0Mi9XS0NvbnRleHRQcml2YXRlLmg+CkluZGV4OiBU
b29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvQ2FuSGFuZGxlUmVxdWVzdF9CdW5kbGUu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9DYW5I
YW5kbGVSZXF1ZXN0X0J1bmRsZS5jcHAJKHJldmlzaW9uIDk0ODk5KQorKysgVG9vbHMvVGVzdFdl
YktpdEFQSS9UZXN0cy9XZWJLaXQyL0NhbkhhbmRsZVJlcXVlc3RfQnVuZGxlLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMjMsNiArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgogICovCiAKKyNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJbmplY3RlZEJ1bmRs
ZVRlc3QuaCIKIAogI2luY2x1ZGUgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCkluZGV4OiBUb29scy9U
ZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvQ29va2llTWFuYWdlci5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0Nvb2tpZU1hbmFnZXIuY3BwCShy
ZXZpc2lvbiA5NDg5OSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9Db29r
aWVNYW5hZ2VyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjMsNiArMjMsNyBAQAogICogVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKKyNpbmNsdWRlICJjb25maWcuaCIKICNp
bmNsdWRlICJQbGF0Zm9ybVV0aWxpdGllcy5oIgogI2luY2x1ZGUgIlBsYXRmb3JtV2ViVmlldy5o
IgogI2luY2x1ZGUgPFdlYktpdDIvV0tDb29raWVNYW5hZ2VyLmg+CkluZGV4OiBUb29scy9UZXN0
V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvRG9jdW1lbnRTdGFydFVzZXJTY3JpcHRBbGVydENyYXNo
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvRG9j
dW1lbnRTdGFydFVzZXJTY3JpcHRBbGVydENyYXNoLmNwcAkocmV2aXNpb24gOTQ4OTkpCisrKyBU
b29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvRG9jdW1lbnRTdGFydFVzZXJTY3JpcHRB
bGVydENyYXNoLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjMsNiArMjMsNyBAQAogICogVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKKyNpbmNsdWRlICJjb25maWcuaCIKICNp
bmNsdWRlICJQbGF0Zm9ybVV0aWxpdGllcy5oIgogI2luY2x1ZGUgIlBsYXRmb3JtV2ViVmlldy5o
IgogI2luY2x1ZGUgIlRlc3QuaCIKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2Vi
S2l0Mi9Eb2N1bWVudFN0YXJ0VXNlclNjcmlwdEFsZXJ0Q3Jhc2hfQnVuZGxlLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvRG9jdW1lbnRTdGFydFVz
ZXJTY3JpcHRBbGVydENyYXNoX0J1bmRsZS5jcHAJKHJldmlzaW9uIDk0ODk5KQorKysgVG9vbHMv
VGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0RvY3VtZW50U3RhcnRVc2VyU2NyaXB0QWxlcnRD
cmFzaF9CdW5kbGUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsyMyw3IEBACiAgKiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2luY2x1ZGUgImNvbmZpZy5oIgog
I2luY2x1ZGUgIkluamVjdGVkQnVuZGxlVGVzdC5oIgogI2luY2x1ZGUgPFdlYktpdDIvV0tCdW5k
bGVQYWdlR3JvdXAuaD4KICNpbmNsdWRlIDxXZWJLaXQyL1dLQnVuZGxlUHJpdmF0ZS5oPgpJbmRl
eDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0Rvd25sb2FkRGVjaWRlRGVzdGlu
YXRpb25DcmFzaC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXQyL0Rvd25sb2FkRGVjaWRlRGVzdGluYXRpb25DcmFzaC5jcHAJKHJldmlzaW9uIDk0ODk5
KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0Rvd25sb2FkRGVjaWRlRGVz
dGluYXRpb25DcmFzaC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIzLDYgKzIzLDcgQEAKICAqIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCisjaW5jbHVkZSAiY29uZmlnLmgi
CiAjaW5jbHVkZSAiUGxhdGZvcm1VdGlsaXRpZXMuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVdlYlZp
ZXcuaCIKICNpbmNsdWRlIDxXZWJLaXQyL1dLRG93bmxvYWQuaD4KSW5kZXg6IFRvb2xzL1Rlc3RX
ZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9FdmFsdWF0ZUphdmFTY3JpcHQuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9FdmFsdWF0ZUphdmFTY3JpcHQu
Y3BwCShyZXZpc2lvbiA5NDg5OSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0
Mi9FdmFsdWF0ZUphdmFTY3JpcHQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsyMyw3IEBA
CiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2luY2x1ZGUgImNv
bmZpZy5oIgogI2luY2x1ZGUgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCiAjaW5jbHVkZSAiUGxhdGZv
cm1XZWJWaWV3LmgiCiAjaW5jbHVkZSAiVGVzdC5oIgpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQ
SS9UZXN0cy9XZWJLaXQyL0ZhaWxlZExvYWQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RX
ZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9GYWlsZWRMb2FkLmNwcAkocmV2aXNpb24gOTQ4OTkpCisr
KyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvRmFpbGVkTG9hZC5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTIzLDYgKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KICAqLwogCisjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1VdGls
aXRpZXMuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVdlYlZpZXcuaCIKICNpbmNsdWRlICJUZXN0Lmgi
CkluZGV4OiBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvRmluZC5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0ZpbmQuY3BwCShyZXZp
c2lvbiA5NDg5OSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9GaW5kLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMjMsNiArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgogICovCiAKKyNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJQbGF0
Zm9ybVV0aWxpdGllcy5oIgogI2luY2x1ZGUgIlBsYXRmb3JtV2ViVmlldy5oIgogI2luY2x1ZGUg
PFdlYktpdDIvV0tSZXRhaW5QdHIuaD4KSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMv
V2ViS2l0Mi9Gb3JjZVJlcGFpbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRB
UEkvVGVzdHMvV2ViS2l0Mi9Gb3JjZVJlcGFpbnQuY3BwCShyZXZpc2lvbiA5NDg5OSkKKysrIFRv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9Gb3JjZVJlcGFpbnQuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0yMyw2ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCiAgKi8KIAorI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlBsYXRmb3JtVXRpbGl0
aWVzLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1XZWJWaWV3LmgiCiAjaW5jbHVkZSAiVGVzdC5oIgpJ
bmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0ZyYW1lTUlNRVR5cGVIVE1M
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvRnJh
bWVNSU1FVHlwZUhUTUwuY3BwCShyZXZpc2lvbiA5NDg5OSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRB
UEkvVGVzdHMvV2ViS2l0Mi9GcmFtZU1JTUVUeXBlSFRNTC5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTIzLDYgKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwog
CisjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1VdGlsaXRpZXMuaCIKICNp
bmNsdWRlICJQbGF0Zm9ybVdlYlZpZXcuaCIKICNpbmNsdWRlICJUZXN0LmgiCkluZGV4OiBUb29s
cy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvRnJhbWVNSU1FVHlwZVBORy5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0ZyYW1lTUlNRVR5cGVQ
TkcuY3BwCShyZXZpc2lvbiA5NDg5OSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2Vi
S2l0Mi9GcmFtZU1JTUVUeXBlUE5HLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjMsNiArMjMsNyBA
QAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKKyNpbmNsdWRlICJj
b25maWcuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVV0aWxpdGllcy5oIgogI2luY2x1ZGUgIlBsYXRm
b3JtV2ViVmlldy5oIgogI2luY2x1ZGUgPFdlYktpdDIvV0tSZXRhaW5QdHIuaD4KSW5kZXg6IFRv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9IaXRUZXN0UmVzdWx0Tm9kZUhhbmRsZS5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0hpdFRl
c3RSZXN1bHROb2RlSGFuZGxlLmNwcAkocmV2aXNpb24gOTQ4OTkpCisrKyBUb29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdDIvSGl0VGVzdFJlc3VsdE5vZGVIYW5kbGUuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0yMyw2ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCiAgKi8KIAorI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlBsYXRmb3JtVXRpbGl0
aWVzLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1XZWJWaWV3LmgiCiAjaW5jbHVkZSA8V2ViS2l0Mi9X
S1JldGFpblB0ci5oPgpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0hp
dFRlc3RSZXN1bHROb2RlSGFuZGxlX0J1bmRsZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVz
dFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0hpdFRlc3RSZXN1bHROb2RlSGFuZGxlX0J1bmRsZS5j
cHAJKHJldmlzaW9uIDk0ODk5KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQy
L0hpdFRlc3RSZXN1bHROb2RlSGFuZGxlX0J1bmRsZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIz
LDYgKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCisj
aW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSW5qZWN0ZWRCdW5kbGVUZXN0LmgiCiAjaW5j
bHVkZSAiSW5qZWN0ZWRCdW5kbGVDb250cm9sbGVyLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1VdGls
aXRpZXMuaCIKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9JbmplY3Rl
ZEJ1bmRsZUJhc2ljLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3Rz
L1dlYktpdDIvSW5qZWN0ZWRCdW5kbGVCYXNpYy5jcHAJKHJldmlzaW9uIDk0ODk5KQorKysgVG9v
bHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0luamVjdGVkQnVuZGxlQmFzaWMuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCiAgKi8KIAorI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlBsYXRmb3Jt
VXRpbGl0aWVzLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1XZWJWaWV3LmgiCiAjaW5jbHVkZSA8V2Vi
S2l0Mi9XS1JldGFpblB0ci5oPgpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJL
aXQyL0luamVjdGVkQnVuZGxlQmFzaWNfQnVuZGxlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9U
ZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvSW5qZWN0ZWRCdW5kbGVCYXNpY19CdW5kbGUuY3Bw
CShyZXZpc2lvbiA5NDg5OSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9J
bmplY3RlZEJ1bmRsZUJhc2ljX0J1bmRsZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIzLDYgKzIz
LDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCisjaW5jbHVk
ZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSW5qZWN0ZWRCdW5kbGVUZXN0LmgiCiAjaW5jbHVkZSA8
V2ViS2l0Mi9XS1JldGFpblB0ci5oPgogCkluZGV4OiBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3Rz
L1dlYktpdDIvTG9hZENhbmNlbGVkTm9TZXJ2ZXJSZWRpcmVjdENhbGxiYWNrLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvTG9hZENhbmNlbGVkTm9T
ZXJ2ZXJSZWRpcmVjdENhbGxiYWNrLmNwcAkocmV2aXNpb24gOTQ4OTkpCisrKyBUb29scy9UZXN0
V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvTG9hZENhbmNlbGVkTm9TZXJ2ZXJSZWRpcmVjdENhbGxi
YWNrLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjMsNiArMjMsNyBAQAogICogVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKKyNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRl
ICJKYXZhU2NyaXB0VGVzdC5oIgogI2luY2x1ZGUgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCiAjaW5j
bHVkZSAiUGxhdGZvcm1XZWJWaWV3LmgiCkluZGV4OiBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3Rz
L1dlYktpdDIvTG9hZENhbmNlbGVkTm9TZXJ2ZXJSZWRpcmVjdENhbGxiYWNrX0J1bmRsZS5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0xvYWRDYW5j
ZWxlZE5vU2VydmVyUmVkaXJlY3RDYWxsYmFja19CdW5kbGUuY3BwCShyZXZpc2lvbiA5NDg5OSkK
KysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9Mb2FkQ2FuY2VsZWROb1NlcnZl
clJlZGlyZWN0Q2FsbGJhY2tfQnVuZGxlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjMsNiArMjMs
NyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKKyNpbmNsdWRl
ICJjb25maWcuaCIKICNpbmNsdWRlICJJbmplY3RlZEJ1bmRsZVRlc3QuaCIKICNpbmNsdWRlICJQ
bGF0Zm9ybVV0aWxpdGllcy5oIgogI2luY2x1ZGUgIlRlc3QuaCIKSW5kZXg6IFRvb2xzL1Rlc3RX
ZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9Nb3VzZU1vdmVBZnRlckNyYXNoLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvTW91c2VNb3ZlQWZ0ZXJDcmFz
aC5jcHAJKHJldmlzaW9uIDk0ODk5KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJL
aXQyL01vdXNlTW92ZUFmdGVyQ3Jhc2guY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsyMyw3
IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2luY2x1ZGUg
ImNvbmZpZy5oIgogI2luY2x1ZGUgIkphdmFTY3JpcHRUZXN0LmgiCiAjaW5jbHVkZSAiUGxhdGZv
cm1VdGlsaXRpZXMuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVdlYlZpZXcuaCIKSW5kZXg6IFRvb2xz
L1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9Nb3VzZU1vdmVBZnRlckNyYXNoX0J1bmRsZS5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL01vdXNl
TW92ZUFmdGVyQ3Jhc2hfQnVuZGxlLmNwcAkocmV2aXNpb24gOTQ4OTkpCisrKyBUb29scy9UZXN0
V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvTW91c2VNb3ZlQWZ0ZXJDcmFzaF9CdW5kbGUuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCiAgKi8KIAorI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkluamVjdGVk
QnVuZGxlVGVzdC5oIgogCiAjaW5jbHVkZSAiUGxhdGZvcm1VdGlsaXRpZXMuaCIKSW5kZXg6IFRv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9QYWdlTG9hZEJhc2ljLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvUGFnZUxvYWRCYXNpYy5j
cHAJKHJldmlzaW9uIDk0ODk5KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQy
L1BhZ2VMb2FkQmFzaWMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsyMyw3IEBACiAgKiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2luY2x1ZGUgImNvbmZpZy5o
IgogI2luY2x1ZGUgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1XZWJW
aWV3LmgiCiAjaW5jbHVkZSAiVGVzdC5oIgpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0
cy9XZWJLaXQyL1BhZ2VMb2FkRGlkQ2hhbmdlTG9jYXRpb25XaXRoaW5QYWdlRm9yRnJhbWUuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9QYWdlTG9h
ZERpZENoYW5nZUxvY2F0aW9uV2l0aGluUGFnZUZvckZyYW1lLmNwcAkocmV2aXNpb24gOTQ4OTkp
CisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvUGFnZUxvYWREaWRDaGFuZ2VM
b2NhdGlvbldpdGhpblBhZ2VGb3JGcmFtZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIzLDYgKzIz
LDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCisjaW5jbHVk
ZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1VdGlsaXRpZXMuaCIKICNpbmNsdWRlICJQ
bGF0Zm9ybVdlYlZpZXcuaCIKICNpbmNsdWRlIDxXZWJLaXQyL1dLUmV0YWluUHRyLmg+CkluZGV4
OiBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvUHJldmVudEVtcHR5VXNlckFnZW50
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvUHJl
dmVudEVtcHR5VXNlckFnZW50LmNwcAkocmV2aXNpb24gOTQ4OTkpCisrKyBUb29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdDIvUHJldmVudEVtcHR5VXNlckFnZW50LmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMjMsNiArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgogICovCiAKKyNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVV0aWxpdGll
cy5oIgogI2luY2x1ZGUgIlBsYXRmb3JtV2ViVmlldy5oIgogI2luY2x1ZGUgIlRlc3QuaCIKSW5k
ZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9SZXNwb25zaXZlbmVzc1RpbWVy
RG9lc250RmlyZUVhcmx5LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rl
c3RzL1dlYktpdDIvUmVzcG9uc2l2ZW5lc3NUaW1lckRvZXNudEZpcmVFYXJseS5jcHAJKHJldmlz
aW9uIDk0ODk5KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL1Jlc3BvbnNp
dmVuZXNzVGltZXJEb2VzbnRGaXJlRWFybHkuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsy
Myw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2luY2x1
ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCiAjaW5jbHVkZSAi
UGxhdGZvcm1XZWJWaWV3LmgiCiAKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2Vi
S2l0Mi9SZXNwb25zaXZlbmVzc1RpbWVyRG9lc250RmlyZUVhcmx5X0J1bmRsZS5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL1Jlc3BvbnNpdmVuZXNz
VGltZXJEb2VzbnRGaXJlRWFybHlfQnVuZGxlLmNwcAkocmV2aXNpb24gOTQ4OTkpCisrKyBUb29s
cy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvUmVzcG9uc2l2ZW5lc3NUaW1lckRvZXNudEZp
cmVFYXJseV9CdW5kbGUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsyMyw3IEBACiAgKiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2luY2x1ZGUgImNvbmZpZy5o
IgogI2luY2x1ZGUgIkluamVjdGVkQnVuZGxlVGVzdC5oIgogCiAjaW5jbHVkZSAiUGxhdGZvcm1V
dGlsaXRpZXMuaCIKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9SZXN0
b3JlU2Vzc2lvblN0YXRlQ29udGFpbmluZ0Zvcm1EYXRhLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29s
cy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvUmVzdG9yZVNlc3Npb25TdGF0ZUNvbnRhaW5p
bmdGb3JtRGF0YS5jcHAJKHJldmlzaW9uIDk0ODk5KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJLaXQyL1Jlc3RvcmVTZXNzaW9uU3RhdGVDb250YWluaW5nRm9ybURhdGEuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCiAgKi8KIAorI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkphdmFTY3Jp
cHRUZXN0LmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1VdGlsaXRpZXMuaCIKICNpbmNsdWRlICJQbGF0
Zm9ybVdlYlZpZXcuaCIKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9T
cGFjZWJhclNjcm9sbGluZy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJLaXQyL1NwYWNlYmFyU2Nyb2xsaW5nLmNwcAkocmV2aXNpb24gOTQ4OTkpCisrKyBU
b29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvU3BhY2ViYXJTY3JvbGxpbmcuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCiAgKi8KIAorI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkphdmFTY3Jp
cHRUZXN0LmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1VdGlsaXRpZXMuaCIKICNpbmNsdWRlICJQbGF0
Zm9ybVdlYlZpZXcuaCIKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9X
S1ByZWZlcmVuY2VzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3Rz
L1dlYktpdDIvV0tQcmVmZXJlbmNlcy5jcHAJKHJldmlzaW9uIDk0ODk5KQorKysgVG9vbHMvVGVz
dFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL1dLUHJlZmVyZW5jZXMuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0yMyw2ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAg
Ki8KIAorI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlBsYXRmb3JtVXRpbGl0aWVzLmgi
CiAjaW5jbHVkZSA8V2ViS2l0Mi9XS1ByZWZlcmVuY2VzUHJpdmF0ZS5oPgogI2luY2x1ZGUgPFdl
YktpdDIvV0tSZXRhaW5QdHIuaD4KSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2Vi
S2l0Mi9XS1N0cmluZy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0
cy9XZWJLaXQyL1dLU3RyaW5nLmNwcAkocmV2aXNpb24gOTQ4OTkpCisrKyBUb29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdDIvV0tTdHJpbmcuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw2
ICsyMyw4IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2lu
Y2x1ZGUgImNvbmZpZy5oIgorCiBuYW1lc3BhY2UgVGVzdFdlYktpdEFQSSB7CiAKIFRFU1QoV2Vi
S2l0MiwgV0tTdHJpbmcpCkluZGV4OiBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIv
V0tTdHJpbmdKU1N0cmluZy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJLaXQyL1dLU3RyaW5nSlNTdHJpbmcuY3BwCShyZXZpc2lvbiA5NDg5OSkKKysrIFRv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9XS1N0cmluZ0pTU3RyaW5nLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjMsNiArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgogICovCiAKKyNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlIDxXZWJLaXQyL1dL
U3RyaW5nUHJpdmF0ZS5oPgogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0pTU3RyaW5nUmVmLmg+
CiAKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi93aW4vQWx0S2V5R2Vu
ZXJhdGVzV01TeXNDb21tYW5kLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJ
L1Rlc3RzL1dlYktpdDIvd2luL0FsdEtleUdlbmVyYXRlc1dNU3lzQ29tbWFuZC5jcHAJKHJldmlz
aW9uIDk0ODk5KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL3dpbi9BbHRL
ZXlHZW5lcmF0ZXNXTVN5c0NvbW1hbmQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsyMyw3
IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2luY2x1ZGUg
ImNvbmZpZy5oIgogI2luY2x1ZGUgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCiAjaW5jbHVkZSAiUGxh
dGZvcm1XZWJWaWV3LmgiCiAjaW5jbHVkZSAiV2luZG93TWVzc2FnZU9ic2VydmVyLmgiCkluZGV4
OiBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvd2luL0RvTm90Q29weUFOdWxsQ0ZV
UkxSZXNwb25zZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXQyL3dpbi9Eb05vdENvcHlBTnVsbENGVVJMUmVzcG9uc2UuY3BwCShyZXZpc2lvbiA5NDg5
OSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi93aW4vRG9Ob3RDb3B5QU51
bGxDRlVSTFJlc3BvbnNlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjMsNiArMjMsNyBAQAogICog
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKKyNpbmNsdWRlICJjb25maWcu
aCIKICNpbmNsdWRlIDxXZWJLaXQyL1dLUmV0YWluUHRyLmg+CiAjaW5jbHVkZSA8V2ViS2l0Mi9X
S1VSTFJlc3BvbnNlQ0YuaD4KICNpbmNsdWRlIDx3dGYvUmV0YWluUHRyLmg+CkluZGV4OiBUb29s
cy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvd2luL0hpZGVGaW5kSW5kaWNhdG9yLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvd2luL0hpZGVG
aW5kSW5kaWNhdG9yLmNwcAkocmV2aXNpb24gOTQ4OTkpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJ
L1Rlc3RzL1dlYktpdDIvd2luL0hpZGVGaW5kSW5kaWNhdG9yLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMjMsNiArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICov
CiAKKyNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVV0aWxpdGllcy5oIgog
I2luY2x1ZGUgIlBsYXRmb3JtV2ViVmlldy5oIgogI2luY2x1ZGUgIlRlc3QuaCIKSW5kZXg6IFRv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi93aW4vUmVzaXplVmlld1doaWxlSGlkZGVu
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvd2lu
L1Jlc2l6ZVZpZXdXaGlsZUhpZGRlbi5jcHAJKHJldmlzaW9uIDk0ODk5KQorKysgVG9vbHMvVGVz
dFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL3dpbi9SZXNpemVWaWV3V2hpbGVIaWRkZW4uY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCiAgKi8KIAorI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlBsYXRmb3Jt
VXRpbGl0aWVzLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1XZWJWaWV3LmgiCiAjaW5jbHVkZSA8V2Vi
S2l0Mi9XS1JldGFpblB0ci5oPgpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJL
aXQyL3dpbi9UcmFuc2xhdGVNZXNzYWdlR2VuZXJhdGVzV01DaGFyLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvd2luL1RyYW5zbGF0ZU1lc3NhZ2VH
ZW5lcmF0ZXNXTUNoYXIuY3BwCShyZXZpc2lvbiA5NDg5OSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRB
UEkvVGVzdHMvV2ViS2l0Mi93aW4vVHJhbnNsYXRlTWVzc2FnZUdlbmVyYXRlc1dNQ2hhci5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTIzLDYgKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KICAqLwogCisjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiUGxhdGZv
cm1VdGlsaXRpZXMuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVdlYlZpZXcuaCIKICNpbmNsdWRlICJX
aW5kb3dNZXNzYWdlT2JzZXJ2ZXIuaCIKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMv
V2ViS2l0Mi93aW4vV01DbG9zZUNhbGxzVUlDbGllbnRDbG9zZS5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL3dpbi9XTUNsb3NlQ2FsbHNVSUNsaWVu
dENsb3NlLmNwcAkocmV2aXNpb24gOTQ4OTkpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3Rz
L1dlYktpdDIvd2luL1dNQ2xvc2VDYWxsc1VJQ2xpZW50Q2xvc2UuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0yMyw2ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAg
Ki8KIAorI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlBsYXRmb3JtVXRpbGl0aWVzLmgi
CiAjaW5jbHVkZSAiUGxhdGZvcm1XZWJWaWV3LmgiCiAjaW5jbHVkZSA8V2ViS2l0Mi9XS1JldGFp
blB0ci5oPgpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL3dpbi9XTVBy
aW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIv
d2luL1dNUHJpbnQuY3BwCShyZXZpc2lvbiA5NDg5OSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkv
VGVzdHMvV2ViS2l0Mi93aW4vV01QcmludC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIzLDYgKzIz
LDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCisjaW5jbHVk
ZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1VdGlsaXRpZXMuaCIKICNpbmNsdWRlICJQ
bGF0Zm9ybVdlYlZpZXcuaCIKICNpbmNsdWRlIDxXZWJLaXQyL1dLUmV0YWluUHRyLmg+CkluZGV4
OiBUb29scy9UZXN0V2ViS2l0QVBJL3dpbi9JbmplY3RlZEJ1bmRsZUNvbnRyb2xsZXJXaW4uY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvd2luL0luamVjdGVkQnVuZGxlQ29u
dHJvbGxlcldpbi5jcHAJKHJldmlzaW9uIDk0ODk5KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS93
aW4vSW5qZWN0ZWRCdW5kbGVDb250cm9sbGVyV2luLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjMs
NiArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKKyNp
bmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJbmplY3RlZEJ1bmRsZUNvbnRyb2xsZXIuaCIK
IAogbmFtZXNwYWNlIFRlc3RXZWJLaXRBUEkgewpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS93
aW4vUGxhdGZvcm1VdGlsaXRpZXNXaW4uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJL
aXRBUEkvd2luL1BsYXRmb3JtVXRpbGl0aWVzV2luLmNwcAkocmV2aXNpb24gOTQ4OTkpCisrKyBU
b29scy9UZXN0V2ViS2l0QVBJL3dpbi9QbGF0Zm9ybVV0aWxpdGllc1dpbi5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTIzLDYgKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KICAqLwogCisjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1VdGlsaXRp
ZXMuaCIKIAogI2luY2x1ZGUgPFdlYktpdDIvV0tTdHJpbmdDRi5oPgpJbmRleDogVG9vbHMvVGVz
dFdlYktpdEFQSS93aW4vUGxhdGZvcm1XZWJWaWV3V2luLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29s
cy9UZXN0V2ViS2l0QVBJL3dpbi9QbGF0Zm9ybVdlYlZpZXdXaW4uY3BwCShyZXZpc2lvbiA5NDg5
OSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvd2luL1BsYXRmb3JtV2ViVmlld1dpbi5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTIzLDYgKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KICAqLwogCisjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1X
ZWJWaWV3LmgiCiAKICNpbmNsdWRlICJXaW5kb3dNZXNzYWdlT2JzZXJ2ZXIuaCIKSW5kZXg6IFRv
b2xzL1Rlc3RXZWJLaXRBUEkvd2luL1Rlc3RXZWJLaXRBUEkudmNwcm9qCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFRvb2xzL1Rlc3RXZWJLaXRBUEkvd2luL1Rlc3RXZWJLaXRBUEkudmNwcm9qCShyZXZpc2lvbiA5
NDg5OSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvd2luL1Rlc3RXZWJLaXRBUEkudmNwcm9qCSh3
b3JraW5nIGNvcHkpCkBAIC02NTAsNyArNjUwLDcgQEAKIAkJCT4KIAkJPC9GaWxlPgogCQk8Rmls
ZQotCQkJUmVsYXRpdmVQYXRoPSIuLlxUZXN0V2ViS2l0QVBJUHJlZml4LmgiCisJCQlSZWxhdGl2
ZVBhdGg9Ii4uXGNvbmZpZy5oIgogCQkJPgogCQk8L0ZpbGU+CiAJPC9GaWxlcz4KSW5kZXg6IFRv
b2xzL1Rlc3RXZWJLaXRBUEkvd2luL21haW4uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RX
ZWJLaXRBUEkvd2luL21haW4uY3BwCShyZXZpc2lvbiA5NDg5OSkKKysrIFRvb2xzL1Rlc3RXZWJL
aXRBUEkvd2luL21haW4uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsyMyw3IEBACiAgKiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2luY2x1ZGUgImNvbmZpZy5o
IgogI2luY2x1ZGUgIlRlc3RzQ29udHJvbGxlci5oIgogCiBpbnQgbWFpbihpbnQgYXJnYywgY2hh
cioqIGFyZ3YpCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>106965</attachid>
            <date>2011-09-09 22:45:10 -0700</date>
            <delta_ts>2011-09-15 07:07:50 -0700</delta_ts>
            <desc>use config.h. Mac and Windows to be verified by bots.</desc>
            <filename>patch-67756a</filename>
            <type>text/plain</type>
            <size>44002</size>
            <attacher name="Xianzhu Wang">wangxianzhu</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCShyZXZpc2lvbiA5NDg5OSkKKysrIFNvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTIg
QEAKKzIwMTEtMDktMDkgIFhpYW56aHUgV2FuZyAgPHdhbmd4aWFuemh1QGNocm9taXVtLm9yZz4K
KworICAgICAgICBMZXQgVGVzdFdlYktpdEFQSSB3b3JrIGZvciBjaHJvbWl1bQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Njc3NTYKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFdlYktpdC5neXA6CisKIDIw
MTEtMDktMDkgIEZhZHkgU2FtdWVsICA8ZnNhbXVlbEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAg
TW92ZSBwYWdlU2NhbGVGYWN0b3IgY29kZSBmcm9tIEZyYW1lLntofGNwcH0gdG8gUGFnZS57aHxj
cHB9CkluZGV4OiBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL1dlYktpdC5neXAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYktpdC9jaHJvbWl1bS9XZWJLaXQuZ3lwCShyZXZpc2lvbiA5NDg5OSkKKysr
IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vV2ViS2l0Lmd5cAkod29ya2luZyBjb3B5KQpAQCAtMSw1
ICsxLDUgQEAKICMKLSMgQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisjIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgogIwogIyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQpAQCAtMzIsNiArMzIsNyBA
QAogICAgICdpbmNsdWRlcyc6IFsKICAgICAgICAgJy4uLy4uL1dlYkNvcmUvV2ViQ29yZS5neXBp
JywKICAgICAgICAgJy4uLy4uLy4uL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL0R1bXBSZW5kZXJUcmVl
Lmd5cGknLAorICAgICAgICAnLi4vLi4vLi4vVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0
QVBJLmd5cGknLAogICAgICAgICAnV2ViS2l0Lmd5cGknLAogICAgICAgICAnZmVhdHVyZXMuZ3lw
aScsCiAgICAgXSwKQEAgLTEyNDcsNiArMTI0OCwyNyBAQAogICAgICAgICAgICAgICAgIH1dLAog
ICAgICAgICAgICAgXSwKICAgICAgICAgfSwKKyAgICAgICAgeworICAgICAgICAgICAgJ3Rhcmdl
dF9uYW1lJzogJ1Rlc3RXZWJLaXRBUEknLAorICAgICAgICAgICAgJ3R5cGUnOiAnZXhlY3V0YWJs
ZScsCisgICAgICAgICAgICAnZGVwZW5kZW5jaWVzJzogWworICAgICAgICAgICAgICAgICd3ZWJr
aXQnLAorICAgICAgICAgICAgICAgICcuLi8uLi9XZWJDb3JlL1dlYkNvcmUuZ3lwL1dlYkNvcmUu
Z3lwOndlYmNvcmUnLAorICAgICAgICAgICAgICAgICc8KGNocm9taXVtX3NyY19kaXIpL2Jhc2Uv
YmFzZS5neXA6dGVzdF9zdXBwb3J0X2Jhc2UnLAorICAgICAgICAgICAgICAgICc8KGNocm9taXVt
X3NyY19kaXIpL3Rlc3RpbmcvZ3Rlc3QuZ3lwOmd0ZXN0JywKKyAgICAgICAgICAgICAgICAnPChj
aHJvbWl1bV9zcmNfZGlyKS90ZXN0aW5nL2dtb2NrLmd5cDpnbW9jaycsCisgICAgICAgICAgICAg
ICAgJzwoY2hyb21pdW1fc3JjX2Rpcikvd2Via2l0L3N1cHBvcnQvd2Via2l0X3N1cHBvcnQuZ3lw
OndlYmtpdF9zdXBwb3J0JywKKyAgICAgICAgICAgIF0sCisgICAgICAgICAgICAnaW5jbHVkZV9k
aXJzKyc6IFsKKyAgICAgICAgICAgICAgICAnLi4vLi4vLi4vVG9vbHMvVGVzdFdlYktpdEFQSScs
CisgICAgICAgICAgICAgICAgJ3B1YmxpYycsCisgICAgICAgICAgICAgICAgJ3NyYycsCisgICAg
ICAgICAgICBdLAorICAgICAgICAgICAgJ3NvdXJjZXMnOiBbCisgICAgICAgICAgICAgICAgJ3Rl
c3RzL1J1bkFsbFRlc3RzLmNwcCcsCisgICAgICAgICAgICAgICAgJzxAKFRlc3RXZWJLaXRBUElf
ZmlsZXMpJywKKyAgICAgICAgICAgIF0sCisgICAgICAgIH0sCiAgICAgXSwgIyB0YXJnZXRzCiAg
ICAgJ2NvbmRpdGlvbnMnOiBbCiAgICAgICAgIFsnT1M9PSJ3aW4iJywgewpJbmRleDogVG9vbHMv
Q2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0NoYW5nZUxvZwkocmV2aXNpb24gOTQ4OTkp
CisrKyBUb29scy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSw3NyBAQAorMjAx
MS0wOS0wOSAgWGlhbnpodSBXYW5nICA8d2FuZ3hpYW56aHVAY2hyb21pdW0ub3JnPgorCisgICAg
ICAgIExldCBUZXN0V2ViS2l0QVBJIHdvcmsgZm9yIGNocm9taXVtCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02Nzc1NgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2NyaXB0cy9idWlsZC1hcGktdGVzdHM6
CisgICAgICAgICogU2NyaXB0cy9ydW4tYXBpLXRlc3RzOgorICAgICAgICAoaXNTdXBwb3J0ZWRQ
bGF0Zm9ybSk6CisgICAgICAgIChydW5UZXN0KToKKyAgICAgICAgKHBvcHVsYXRlVGVzdHMpOgor
ICAgICAgICAqIFNjcmlwdHMvd2Via2l0ZGlycy5wbToKKyAgICAgICAgKGRldGVybWluZUJhc2VQ
cm9kdWN0RGlyKToKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL0NvbmZpZ3VyYXRpb25zL0luamVj
dGVkQnVuZGxlLnhjY29uZmlnOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvQ29uZmlndXJhdGlv
bnMvVGVzdFdlYktpdEFQSS54Y2NvbmZpZzoKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL0NvbmZp
Z3VyYXRpb25zL1Rlc3RXZWJLaXRBUElDb21tb24udnNwcm9wczoKKyAgICAgICAgKiBUZXN0V2Vi
S2l0QVBJL0luamVjdGVkQnVuZGxlQ29udHJvbGxlci5jcHA6CisgICAgICAgICogVGVzdFdlYktp
dEFQSS9JbmplY3RlZEJ1bmRsZU1haW4uY3BwOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvSmF2
YVNjcmlwdFRlc3QuY3BwOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvUGxhdGZvcm1VdGlsaXRp
ZXMuY3BwOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS5neXBpOiBBZGRl
ZC4KKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUEkueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvajoKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUElQcmVmaXgu
aDogUmVtb3ZlZC4KKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dURi9DaGVja2VkQXJp
dGhtZXRpY09wZXJhdGlvbnMuY3BwOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV1RG
L1N0cmluZ09wZXJhdG9ycy5jcHA6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XVEYv
VmVjdG9yQmFzaWMuY3BwOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV1RGL1ZlY3Rv
clJldmVyc2UuY3BwOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9BYm91
dEJsYW5rTG9hZC5jcHA6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0Nh
bkhhbmRsZVJlcXVlc3QuY3BwOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0
Mi9DYW5IYW5kbGVSZXF1ZXN0X0J1bmRsZS5jcHA6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJLaXQyL0Nvb2tpZU1hbmFnZXIuY3BwOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkv
VGVzdHMvV2ViS2l0Mi9Eb2N1bWVudFN0YXJ0VXNlclNjcmlwdEFsZXJ0Q3Jhc2guY3BwOgorICAg
ICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9Eb2N1bWVudFN0YXJ0VXNlclNjcmlw
dEFsZXJ0Q3Jhc2hfQnVuZGxlLmNwcDoKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dl
YktpdDIvRG93bmxvYWREZWNpZGVEZXN0aW5hdGlvbkNyYXNoLmNwcDoKKyAgICAgICAgKiBUZXN0
V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvRXZhbHVhdGVKYXZhU2NyaXB0LmNwcDoKKyAgICAgICAg
KiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvRmFpbGVkTG9hZC5jcHA6CisgICAgICAgICog
VGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0ZpbmQuY3BwOgorICAgICAgICAqIFRlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0Mi9Gb3JjZVJlcGFpbnQuY3BwOgorICAgICAgICAqIFRlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0Mi9GcmFtZU1JTUVUeXBlSFRNTC5jcHA6CisgICAgICAgICogVGVz
dFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0ZyYW1lTUlNRVR5cGVQTkcuY3BwOgorICAgICAgICAq
IFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9IaXRUZXN0UmVzdWx0Tm9kZUhhbmRsZS5jcHA6
CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0hpdFRlc3RSZXN1bHROb2Rl
SGFuZGxlX0J1bmRsZS5jcHA6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQy
L0luamVjdGVkQnVuZGxlQmFzaWMuY3BwOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMv
V2ViS2l0Mi9JbmplY3RlZEJ1bmRsZUJhc2ljX0J1bmRsZS5jcHA6CisgICAgICAgICogVGVzdFdl
YktpdEFQSS9UZXN0cy9XZWJLaXQyL0xvYWRDYW5jZWxlZE5vU2VydmVyUmVkaXJlY3RDYWxsYmFj
ay5jcHA6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0xvYWRDYW5jZWxl
ZE5vU2VydmVyUmVkaXJlY3RDYWxsYmFja19CdW5kbGUuY3BwOgorICAgICAgICAqIFRlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0Mi9Nb3VzZU1vdmVBZnRlckNyYXNoLmNwcDoKKyAgICAgICAgKiBU
ZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvTW91c2VNb3ZlQWZ0ZXJDcmFzaF9CdW5kbGUuY3Bw
OgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9QYWdlTG9hZEJhc2ljLmNw
cDoKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvUGFnZUxvYWREaWRDaGFu
Z2VMb2NhdGlvbldpdGhpblBhZ2VGb3JGcmFtZS5jcHA6CisgICAgICAgICogVGVzdFdlYktpdEFQ
SS9UZXN0cy9XZWJLaXQyL1ByZXZlbnRFbXB0eVVzZXJBZ2VudC5jcHA6CisgICAgICAgICogVGVz
dFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL1Jlc3BvbnNpdmVuZXNzVGltZXJEb2VzbnRGaXJlRWFy
bHkuY3BwOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9SZXNwb25zaXZl
bmVzc1RpbWVyRG9lc250RmlyZUVhcmx5X0J1bmRsZS5jcHA6CisgICAgICAgICogVGVzdFdlYktp
dEFQSS9UZXN0cy9XZWJLaXQyL1Jlc3RvcmVTZXNzaW9uU3RhdGVDb250YWluaW5nRm9ybURhdGEu
Y3BwOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9TcGFjZWJhclNjcm9s
bGluZy5jcHA6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL1dLUHJlZmVy
ZW5jZXMuY3BwOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9XS1N0cmlu
Zy5jcHA6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL1dLU3RyaW5nSlNT
dHJpbmcuY3BwOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi93aW4vQWx0
S2V5R2VuZXJhdGVzV01TeXNDb21tYW5kLmNwcDoKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rl
c3RzL1dlYktpdDIvd2luL0RvTm90Q29weUFOdWxsQ0ZVUkxSZXNwb25zZS5jcHA6CisgICAgICAg
ICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL3dpbi9IaWRlRmluZEluZGljYXRvci5jcHA6
CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL3dpbi9SZXNpemVWaWV3V2hp
bGVIaWRkZW4uY3BwOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi93aW4v
VHJhbnNsYXRlTWVzc2FnZUdlbmVyYXRlc1dNQ2hhci5jcHA6CisgICAgICAgICogVGVzdFdlYktp
dEFQSS9UZXN0cy9XZWJLaXQyL3dpbi9XTUNsb3NlQ2FsbHNVSUNsaWVudENsb3NlLmNwcDoKKyAg
ICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvd2luL1dNUHJpbnQuY3BwOgorICAg
ICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHNDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKiBUZXN0
V2ViS2l0QVBJL2NvbmZpZy5oOiBDb3BpZWQgZnJvbSBUZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRB
UElQcmVmaXguaC4KKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL3dpbi9JbmplY3RlZEJ1bmRsZUNv
bnRyb2xsZXJXaW4uY3BwOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvd2luL1BsYXRmb3JtVXRp
bGl0aWVzV2luLmNwcDoKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL3dpbi9QbGF0Zm9ybVdlYlZp
ZXdXaW4uY3BwOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvd2luL1Rlc3RXZWJLaXRBUEkudmNw
cm9qOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvd2luL21haW4uY3BwOgorCiAyMDExLTA5LTA5
ICBBbGV4ZXkgUHJvc2t1cnlha292ICA8YXBAYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBhIHNj
cmlwdCB0byBjcmVhdGUgYSBtb25vbGl0aGljIHNjcmlwdC10ZXN0CkluZGV4OiBUb29scy9TY3Jp
cHRzL2J1aWxkLWFwaS10ZXN0cwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL2J1aWxkLWFw
aS10ZXN0cwkocmV2aXNpb24gOTQ4OTkpCisrKyBUb29scy9TY3JpcHRzL2J1aWxkLWFwaS10ZXN0
cwkod29ya2luZyBjb3B5KQpAQCAtNjYsNiArNjYsOSBAQCBpZiAoaXNBcHBsZU1hY1dlYktpdCgp
KSB7CiB9IGVsc2lmIChpc0FwcGxlV2luV2ViS2l0KCkpIHsKICAgICBjaGRpciAiVG9vbHMvVGVz
dFdlYktpdEFQSSIgb3IgZGllOwogICAgICRyZXN1bHQgPSBidWlsZFZpc3VhbFN0dWRpb1Byb2pl
Y3QoIndpbi9UZXN0V2ViS2l0QVBJLnNsbiIsICRjbGVhbik7Cit9IGVsc2lmIChpc0Nocm9taXVt
KCkpIHsKKyAgICAjIENocm9taXVtIGJ1aWxkIGV2ZXJ5dGhpbmcgaW4gb25lIHNob3QuIE5vIG5l
ZWQgdG8gYnVpbGQgYW55dGhpbmcgaGVyZS4KKyAgICAkcmVzdWx0ID0gMDsKIH0gZWxzZSB7CiAg
ICAgZGllICJUZXN0V2ViS2l0QVBJIGlzIG5vdCBzdXBwb3J0ZWQgb24gdGhpcyBwbGF0Zm9ybS5c
biI7CiB9CkluZGV4OiBUb29scy9TY3JpcHRzL3J1bi1hcGktdGVzdHMKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
VG9vbHMvU2NyaXB0cy9ydW4tYXBpLXRlc3RzCShyZXZpc2lvbiA5NDg5OSkKKysrIFRvb2xzL1Nj
cmlwdHMvcnVuLWFwaS10ZXN0cwkod29ya2luZyBjb3B5KQpAQCAtNjYsNiArNjYsNyBAQCBVc2Fn
ZTogJHByb2dyYW1OYW1lIFtvcHRpb25zXQogICAtdnwtLXZlcmJvc2UgICAgICAgICAgVmVyYm9z
ZSBvdXRwdXQKICAgLWR8LS1kdW1wLXRlc3RzICAgICAgIER1bXAgdGhlIG5hbWVzIG9mIHRlc3Rj
YXNlcyB3aXRob3V0IHJ1bm5pbmcgdGhlbQogICAtLVtuby1dYnVpbGQgICAgICAgICAgQnVpbGQg
KG9yIGRvIG5vdCBidWlsZCkgdW5pdCB0ZXN0cyBwcmlvciB0byBydW5uaW5nIChkZWZhdWx0OiAk
YnVpbGREZWZhdWx0KQorICAtLWNocm9taXVtICAgICAgICAgICAgUnVuIHRoZSBDaHJvbWl1bSBw
b3J0IG9uIE1hYy9XaW4vTGludXgKIEVPRgogCiBHZXRPcHRpb25zKApAQCAtOTQsNiArOTUsMTEg
QEAgaWYgKHJ1bkFsbFRlc3RzKCkpIHsKICAgICBleGl0IDE7CiB9CiAKK3N1YiBpc1N1cHBvcnRl
ZFBsYXRmb3JtKCkKK3sKKyAgICByZXR1cm4gaXNBcHBsZU1hY1dlYktpdCgpIHx8IGlzQXBwbGVX
aW5XZWJLaXQoKSB8fCBpc0Nocm9taXVtKCk7Cit9CisKIHN1YiBkdW1wQWxsVGVzdHMoKQogewog
ICAgIHByaW50ICJEdW1waW5nIHRlc3QgY2FzZXNcbiI7CkBAIC0xNDUsNyArMTUxLDcgQEAgc3Vi
IHJ1blRlc3QoJCQpCiAgICAgbXkgJHJlc3VsdCA9IDA7CiAgICAgbXkgJHRpbWVkT3V0ID0gMDsK
IAotICAgIGRpZSAicnVuLWFwaS10ZXN0cyBpcyBub3Qgc3VwcG9ydGVkIG9uIHRoaXMgcGxhdGZv
cm0uXG4iIHVubGVzcyBpc0FwcGxlTWFjV2ViS2l0KCkgfHwgaXNBcHBsZVdpbldlYktpdCgpOwor
ICAgIGRpZSAicnVuLWFwaS10ZXN0cyBpcyBub3Qgc3VwcG9ydGVkIG9uIHRoaXMgcGxhdGZvcm0u
XG4iIHVubGVzcyBpc1N1cHBvcnRlZFBsYXRmb3JtKCk7CiAKICAgICBwcmVwYXJlRW52aXJvbm1l
bnRGb3JSdW5uaW5nVGVzdFRvb2woKTsKIApAQCAtMjAyLDcgKzIwOCw3IEBAIHN1YiBwb3B1bGF0
ZVRlc3RzKCkKICAgICBteSBAdGVzdHM7CiAgICAgbXkgJHRpbWVkT3V0OwogCi0gICAgZGllICJy
dW4tYXBpLXRlc3RzIGlzIG5vdCBzdXBwb3J0ZWQgb24gdGhpcyBwbGF0Zm9ybS5cbiIgdW5sZXNz
IGlzQXBwbGVNYWNXZWJLaXQoKSB8fCBpc0FwcGxlV2luV2ViS2l0KCk7CisgICAgZGllICJydW4t
YXBpLXRlc3RzIGlzIG5vdCBzdXBwb3J0ZWQgb24gdGhpcyBwbGF0Zm9ybS5cbiIgdW5sZXNzIGlz
U3VwcG9ydGVkUGxhdGZvcm0oKTsKIAogICAgIHByZXBhcmVFbnZpcm9ubWVudEZvclJ1bm5pbmdU
ZXN0VG9vbCgpOwogCkluZGV4OiBUb29scy9TY3JpcHRzL3dlYmtpdGRpcnMucG0KPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRkaXJzLnBtCShyZXZpc2lvbiA5NDg5OSkKKysrIFRv
b2xzL1NjcmlwdHMvd2Via2l0ZGlycy5wbQkod29ya2luZyBjb3B5KQpAQCAtMTU1LDYgKzE1NSw4
IEBAIHN1YiBkZXRlcm1pbmVCYXNlUHJvZHVjdERpcgogICAgIH0gZWxzaWYgKGlzU3ltYmlhbigp
KSB7CiAgICAgICAgICMgU2hhZG93IGJ1aWxkcyBhcmUgbm90IHN1cHBvcnRlZCBvbiBTeW1iaWFu
CiAgICAgICAgICRiYXNlUHJvZHVjdERpciA9ICRzb3VyY2VEaXI7CisgICAgfSBlbHNpZiAoaXND
aHJvbWl1bSgpKSB7CisgICAgICAgICRiYXNlUHJvZHVjdERpciA9ICIkc291cmNlRGlyL291dCI7
CiAgICAgfQogCiAgICAgaWYgKCFkZWZpbmVkKCRiYXNlUHJvZHVjdERpcikpIHsgIyBQb3J0LXNw
ZXNpZmljIGNoZWNrcyBmYWlsZWQsIHVzZSBkZWZhdWx0CkluZGV4OiBUb29scy9UZXN0V2ViS2l0
QVBJL0luamVjdGVkQnVuZGxlQ29udHJvbGxlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVz
dFdlYktpdEFQSS9JbmplY3RlZEJ1bmRsZUNvbnRyb2xsZXIuY3BwCShyZXZpc2lvbiA5NDg5OSkK
KysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvSW5qZWN0ZWRCdW5kbGVDb250cm9sbGVyLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjMsNiArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgogICovCiAKKyNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJbmplY3RlZEJ1
bmRsZUNvbnRyb2xsZXIuaCIKIAogI2luY2x1ZGUgIkluamVjdGVkQnVuZGxlVGVzdC5oIgpJbmRl
eDogVG9vbHMvVGVzdFdlYktpdEFQSS9JbmplY3RlZEJ1bmRsZU1haW4uY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvSW5qZWN0ZWRCdW5kbGVNYWluLmNwcAkocmV2aXNpb24g
OTQ4OTkpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL0luamVjdGVkQnVuZGxlTWFpbi5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTIzLDYgKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KICAqLwogCisjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSW5qZWN0ZWRC
dW5kbGVDb250cm9sbGVyLmgiCiAjaW5jbHVkZSA8V2ViS2l0Mi9XS0J1bmRsZUluaXRpYWxpemUu
aD4KIApJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9KYXZhU2NyaXB0VGVzdC5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9KYXZhU2NyaXB0VGVzdC5jcHAJKHJldmlzaW9u
IDk0ODk5KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9KYXZhU2NyaXB0VGVzdC5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTIzLDYgKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KICAqLwogCisjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSmF2YVNjcmlwdFRl
c3QuaCIKIAogI2luY2x1ZGUgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCkluZGV4OiBUb29scy9UZXN0
V2ViS2l0QVBJL1BsYXRmb3JtVXRpbGl0aWVzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0
V2ViS2l0QVBJL1BsYXRmb3JtVXRpbGl0aWVzLmNwcAkocmV2aXNpb24gOTQ4OTkpCisrKyBUb29s
cy9UZXN0V2ViS2l0QVBJL1BsYXRmb3JtVXRpbGl0aWVzLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MjMsNiArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAK
KyNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVV0aWxpdGllcy5oIgogCiAj
aW5jbHVkZSA8d3RmL093bkFycmF5UHRyLmg+CkluZGV4OiBUb29scy9UZXN0V2ViS2l0QVBJL1Rl
c3RXZWJLaXRBUEkuZ3lwaQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RX
ZWJLaXRBUEkuZ3lwaQkocmV2aXNpb24gMCkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdl
YktpdEFQSS5neXBpCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDQwIEBACisjCisjIENvcHlyaWdo
dCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorIworIyBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zIGFyZQorIyBtZXQ6CisjCisjICAgICAgICAgKiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorIyBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisjICAgICAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlCisjIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyMgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorIyBkaXN0cmlidXRpb24uCisj
ICAgICAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMg
b2YgaXRzCisjIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUg
cHJvZHVjdHMgZGVyaXZlZCBmcm9tCisjIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBw
cmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisjCisjIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyMgIkFTIElTIiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyMg
TElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SCisjIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisjIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorIyBTUEVDSUFMLCBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisj
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLAorIyBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyMgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorIyAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UKKyMgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKyMKKworeworICAgICd2YXJpYWJsZXMnOiB7CisgICAgICAgICdU
ZXN0V2ViS2l0QVBJX2ZpbGVzJzogWworICAgICAgICAgICAgJ1Rlc3RzL1dURi9DaGVja2VkQXJp
dGhtZXRpY09wZXJhdGlvbnMuY3BwJywKKyAgICAgICAgICAgICdUZXN0cy9XVEYvU3RyaW5nT3Bl
cmF0b3JzLmNwcCcsCisgICAgICAgICAgICAnVGVzdHMvV1RGL1ZlY3RvckJhc2ljLmNwcCcsCisg
ICAgICAgICAgICAnVGVzdHMvV1RGL1ZlY3RvclJldmVyc2UuY3BwJywKKyAgICAgICAgXSwKKyAg
ICB9LAorfQpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJUHJlZml4LmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJUHJlZml4LmgJ
KHJldmlzaW9uIDk0ODk5KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJUHJl
Zml4LmgJKHdvcmtpbmcgY29weSkKQEAgLTEsNTMgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAo
QykgMjAxMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICog
Mi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVU
T1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBD
T05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNs
dWRlIDx3dGYvUGxhdGZvcm0uaD4KLQotI2lmIF9fQVBQTEVfXwotCi0jaWZkZWYgX19PQkpDX18K
LSNpbXBvcnQgPENvY29hL0NvY29hLmg+Ci0jZW5kaWYKLQotI2VsaWYgZGVmaW5lZChXSU4zMikg
fHwgZGVmaW5lZChfV0lOMzIpCi0KLSNkZWZpbmUgTk9NSU5NQVgKLQotI2VuZGlmCi0KLS8qIEZJ
WE1FOiBEZWZpbmUgdGhlc2UgcHJvcGVybHkgb25jZSBVU0UoRVhQT1JUX01BQ1JPUykgaXMgc2V0
IGZvciBwb3J0cyB1c2luZyB0aGlzICovCi0jZGVmaW5lIEpTX0VYUE9SVF9QUklWQVRFCi0jZGVm
aW5lIFdURl9FWFBPUlRfUFJJVkFURQotCi0jaW5jbHVkZSA8c3RkaW50Lmg+Ci0jaW5jbHVkZSA8
V2ViS2l0Mi9XZWJLaXQyLmg+Ci0KLSNpZmRlZiBfX2NwbHVzcGx1cwotI2luY2x1ZGUgPGd0ZXN0
L2d0ZXN0Lmg+Ci0jZW5kaWYKLQotI2lmIFBMQVRGT1JNKE1BQykgJiYgZGVmaW5lZChfX09CSkNf
XykKLSNpbXBvcnQgPFdlYktpdC9XZWJLaXQuaD4KLSNlbmRpZgpJbmRleDogVG9vbHMvVGVzdFdl
YktpdEFQSS9UZXN0c0NvbnRyb2xsZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHNDb250cm9sbGVyLmNwcAkocmV2aXNpb24gOTQ4OTkpCisrKyBUb29scy9UZXN0
V2ViS2l0QVBJL1Rlc3RzQ29udHJvbGxlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIzLDYgKzIz
LDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCisjaW5jbHVk
ZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiVGVzdHNDb250cm9sbGVyLmgiCiAKICNpbmNsdWRlIDx3
dGYvVGhyZWFkaW5nLmg+CkluZGV4OiBUb29scy9UZXN0V2ViS2l0QVBJL2NvbmZpZy5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvY29uZmlnLmgJKHJldmlzaW9uIDk0ODU5KQko
ZnJvbSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUElQcmVmaXguaDo5NDg1OSkKKysr
IFRvb2xzL1Rlc3RXZWJLaXRBUEkvY29uZmlnLmgJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw1
MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBM
RSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisg
KiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAq
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlIDx3dGYvUGxhdGZvcm0uaD4KKworI2lmIF9fQVBQ
TEVfXworCisjaWZkZWYgX19PQkpDX18KKyNpbXBvcnQgPENvY29hL0NvY29hLmg+CisjZW5kaWYK
KworI2VsaWYgZGVmaW5lZChXSU4zMikgfHwgZGVmaW5lZChfV0lOMzIpCisKKyNkZWZpbmUgTk9N
SU5NQVgKKworI2VuZGlmCisKKy8qIEZJWE1FOiBEZWZpbmUgdGhlc2UgcHJvcGVybHkgb25jZSBV
U0UoRVhQT1JUX01BQ1JPUykgaXMgc2V0IGZvciBwb3J0cyB1c2luZyB0aGlzICovCisjZGVmaW5l
IEpTX0VYUE9SVF9QUklWQVRFCisjZGVmaW5lIFdURl9FWFBPUlRfUFJJVkFURQorCisjaW5jbHVk
ZSA8c3RkaW50Lmg+CisjaW5jbHVkZSA8V2ViS2l0Mi9XZWJLaXQyLmg+CisKKyNpZmRlZiBfX2Nw
bHVzcGx1cworI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+CisjZW5kaWYKKworI2lmIFBMQVRGT1JN
KE1BQykgJiYgZGVmaW5lZChfX09CSkNfXykKKyNpbXBvcnQgPFdlYktpdC9XZWJLaXQuaD4KKyNl
bmRpZgpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9jb25maWcuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBU
b29scy9UZXN0V2ViS2l0QVBJL2NvbmZpZy5oCShyZXZpc2lvbiA5NDg1OSkKKysrIFRvb2xzL1Rl
c3RXZWJLaXRBUEkvY29uZmlnLmgJKHdvcmtpbmcgY29weSkKQEAgLTQxLDggKzQxLDEzIEBACiAj
ZGVmaW5lIEpTX0VYUE9SVF9QUklWQVRFCiAjZGVmaW5lIFdURl9FWFBPUlRfUFJJVkFURQogCisj
ZGVmaW5lIEpTX0VYUE9SVERBVEEKKwogI2luY2x1ZGUgPHN0ZGludC5oPgorCisjaWYgIVBMQVRG
T1JNKENIUk9NSVVNKQogI2luY2x1ZGUgPFdlYktpdDIvV2ViS2l0Mi5oPgorI2VuZGlmCiAKICNp
ZmRlZiBfX2NwbHVzcGx1cwogI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+CkluZGV4OiBUb29scy9U
ZXN0V2ViS2l0QVBJL0NvbmZpZ3VyYXRpb25zL0luamVjdGVkQnVuZGxlLnhjY29uZmlnCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvQ29uZmlndXJhdGlvbnMvSW5qZWN0ZWRCdW5k
bGUueGNjb25maWcJKHJldmlzaW9uIDk0ODk5KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9Db25m
aWd1cmF0aW9ucy9JbmplY3RlZEJ1bmRsZS54Y2NvbmZpZwkod29ya2luZyBjb3B5KQpAQCAtMjIs
NCArMjIsMyBAQAogLy8gT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAKIFBST0RVQ1RfTkFNRSA9IEluamVjdGVkQnVu
ZGxlVGVzdFdlYktpdEFQSTsKLUdDQ19QUkVGSVhfSEVBREVSID0gVGVzdFdlYktpdEFQSVByZWZp
eC5oOwpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9Db25maWd1cmF0aW9ucy9UZXN0V2ViS2l0
QVBJLnhjY29uZmlnCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvQ29uZmlndXJh
dGlvbnMvVGVzdFdlYktpdEFQSS54Y2NvbmZpZwkocmV2aXNpb24gOTQ4OTkpCisrKyBUb29scy9U
ZXN0V2ViS2l0QVBJL0NvbmZpZ3VyYXRpb25zL1Rlc3RXZWJLaXRBUEkueGNjb25maWcJKHdvcmtp
bmcgY29weSkKQEAgLTIzLDQgKzIzLDMgQEAKIAogUFJPRFVDVF9OQU1FID0gVGVzdFdlYktpdEFQ
SQogR0NDX0VOQUJMRV9PQkpDX0VYQ0VQVElPTlMgPSBZRVMKLUdDQ19QUkVGSVhfSEVBREVSID0g
VGVzdFdlYktpdEFQSVByZWZpeC5oCkluZGV4OiBUb29scy9UZXN0V2ViS2l0QVBJL0NvbmZpZ3Vy
YXRpb25zL1Rlc3RXZWJLaXRBUElDb21tb24udnNwcm9wcwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9U
ZXN0V2ViS2l0QVBJL0NvbmZpZ3VyYXRpb25zL1Rlc3RXZWJLaXRBUElDb21tb24udnNwcm9wcwko
cmV2aXNpb24gOTQ4OTkpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL0NvbmZpZ3VyYXRpb25zL1Rl
c3RXZWJLaXRBUElDb21tb24udnNwcm9wcwkod29ya2luZyBjb3B5KQpAQCAtNyw3ICs3LDYgQEAK
IAk8VG9vbAogCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgogICAgICAgICAgICAgICAgIEFkZGl0
aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXM9IiZxdW90OyQoUHJvamVjdERpcikmcXVvdDs7JnF1b3Q7
JChQcm9qZWN0RGlyKVwuLiZxdW90OzsmcXVvdDskKENvbmZpZ3VyYXRpb25CdWlsZERpcilcaW5j
bHVkZSZxdW90OzsmcXVvdDskKENvbmZpZ3VyYXRpb25CdWlsZERpcilcaW5jbHVkZVxXZWJDb3Jl
XEZvcndhcmRpbmdIZWFkZXJzJnF1b3Q7OyZxdW90OyQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxp
bmNsdWRlXHByaXZhdGUmcXVvdDs7JnF1b3Q7JChXZWJLaXRMaWJyYXJpZXNEaXIpXGluY2x1ZGUm
cXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKVwuLlwuLlwuLlxTb3VyY2VcVGhpcmRQYXJ0eVxndGVz
dFxpbmNsdWRlJnF1b3Q7IgotCQlGb3JjZWRJbmNsdWRlRmlsZXM9IlRlc3RXZWJLaXRBUElQcmVm
aXguaCIKIAkvPgogCTxUb29sCiAJCU5hbWU9IlZDTGlua2VyVG9vbCIKSW5kZXg6IFRvb2xzL1Rl
c3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCShyZXZpc2lvbiA5NDg5OSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVz
dFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCSh3b3JraW5nIGNvcHkpCkBAIC0x
NTUsNyArMTU1LDcgQEAKIAkJQkMxMzE4ODMxMTcxMTRBODAwQjY5NzI3IC8qIFBsYXRmb3JtVXRp
bGl0aWVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBsYXRmb3JtVXRpbGl0
aWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJDMTMxODg0MTE3MTE0QjYwMEI2
OTcyNyAvKiBQbGF0Zm9ybVV0aWxpdGllc01hYy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
Lm9iamNwcDsgcGF0aCA9IFBsYXRmb3JtVXRpbGl0aWVzTWFjLm1tOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQlCQzEzMUE5QTExNzEzMTY5MDBCNjk3MjcgLyogbWFpbi5tbSAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IG1haW4ubW07IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07Ci0JCUJDMTMxQTlFMTE3MTMxN0MwMEI2OTcyNyAvKiBUZXN0V2ViS2l0QVBJ
UHJlZml4LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRlc3RXZWJLaXRBUElQ
cmVmaXguaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkMxMzFBOUUxMTcxMzE3QzAw
QjY5NzI3IC8qIGNvbmZpZy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBjb25m
aWcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQkMxMzFBQTgxMTcxMzFGQzAwQjY5
NzI3IC8qIFRlc3RzQ29udHJvbGxlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZXhwbGljaXRGaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgZmlsZUVuY29kaW5nID0gNDsg
cGF0aCA9IFRlc3RzQ29udHJvbGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CUJDMjQ2RDhDMTMyRjExNUEwMEI1NkQ3QyAvKiBBYm91dEJsYW5rTG9hZC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBYm91dEJsYW5rTG9hZC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJDMjQ2RDk3MTMyRjFGRTEwMEI1NkQ3QyAvKiBDYW5IYW5k
bGVSZXF1ZXN0X0J1bmRsZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBDYW5IYW5kbGVSZXF1ZXN0X0J1bmRsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CkBAIC0yNjgsNyArMjY4LDcgQEAKIAkJCQlCQzU3NTk0NDEyNkU3MzNDMDA2RjBGMTIgLyogSW5q
ZWN0ZWRCdW5kbGUgKi8sCiAJCQkJQzBBREJFN0ExMkZDQTREMDAwRDJDMTI5IC8qIEphdmFTY3Jp
cHRUZXN0LmNwcCAqLywKIAkJCQlDMEFEQkU3QjEyRkNBNEQwMDBEMkMxMjkgLyogSmF2YVNjcmlw
dFRlc3QuaCAqLywKLQkJCQlCQzEzMUE5RTExNzEzMTdDMDBCNjk3MjcgLyogVGVzdFdlYktpdEFQ
SVByZWZpeC5oICovLAorCQkJCUJDMTMxQTlFMTE3MTMxN0MwMEI2OTcyNyAvKiBjb25maWcuaCAq
LywKIAkJCQlCQzU3NUJCRjEyNkY1NzUyMDA2RjBGMTIgLyogUGxhdGZvcm1VdGlsaXRpZXMuY3Bw
ICovLAogCQkJCUJDMTMxODgzMTE3MTE0QTgwMEI2OTcyNyAvKiBQbGF0Zm9ybVV0aWxpdGllcy5o
ICovLAogCQkJCUJDOTA5NTFCMTI1NTMzRDcwMDA4Mzc1NiAvKiBQbGF0Zm9ybVdlYlZpZXcuaCAq
LywKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV1RGL0NoZWNrZWRBcml0aG1ldGlj
T3BlcmF0aW9ucy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9X
VEYvQ2hlY2tlZEFyaXRobWV0aWNPcGVyYXRpb25zLmNwcAkocmV2aXNpb24gOTQ4OTkpCisrKyBU
b29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dURi9DaGVja2VkQXJpdGhtZXRpY09wZXJhdGlvbnMu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw3ICsyMyw4IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0NoZWNrZWRB
cml0aG1ldGljLmg+CisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSA8d3RmL0NoZWNrZWRB
cml0aG1ldGljLmg+CiAKIG5hbWVzcGFjZSBUZXN0V2ViS2l0QVBJIHsKIApJbmRleDogVG9vbHMv
VGVzdFdlYktpdEFQSS9UZXN0cy9XVEYvU3RyaW5nT3BlcmF0b3JzLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dURi9TdHJpbmdPcGVyYXRvcnMuY3BwCShyZXZp
c2lvbiA5NDg5OSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV1RGL1N0cmluZ09wZXJh
dG9ycy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIzLDEyICsyMywxMyBAQAogICogVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNkZWZpbmUgSlNfRVhQT1JUREFUQQorI2lu
Y2x1ZGUgImNvbmZpZy5oIgorCiAjZGVmaW5lIFdURl9TVFJJTkdUWVBFQURBUFRFUl9DT1BJRURf
V1RGX1NUUklORygpICgrK3d0ZlN0cmluZ0NvcHlDb3VudCkKIAogc3RhdGljIGludCB3dGZTdHJp
bmdDb3B5Q291bnQ7CiAKLSNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9XVEZTdHJpbmcuaD4KKyNp
bmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFRlc3RXZWJLaXRBUEkg
ewogCkluZGV4OiBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dURi9WZWN0b3JCYXNpYy5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XVEYvVmVjdG9yQmFzaWMu
Y3BwCShyZXZpc2lvbiA5NDg5OSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV1RGL1Zl
Y3RvckJhc2ljLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjMsNyArMjMsOCBAQAogICogVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpbmNsdWRlIDxKYXZhU2NyaXB0Q29y
ZS9WZWN0b3IuaD4KKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+
CiAKIG5hbWVzcGFjZSBUZXN0V2ViS2l0QVBJIHsKIApJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQ
SS9UZXN0cy9XVEYvVmVjdG9yUmV2ZXJzZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdl
YktpdEFQSS9UZXN0cy9XVEYvVmVjdG9yUmV2ZXJzZS5jcHAJKHJldmlzaW9uIDk0ODk5KQorKysg
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XVEYvVmVjdG9yUmV2ZXJzZS5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTIzLDcgKzIzLDggQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KICAqLwogCi0jaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvVmVjdG9yLmg+CisjaW5jbHVkZSAi
Y29uZmlnLmgiCisjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgogCiBuYW1lc3BhY2UgVGVzdFdlYktp
dEFQSSB7CiAKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9BYm91dEJs
YW5rTG9hZC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJL
aXQyL0Fib3V0QmxhbmtMb2FkLmNwcAkocmV2aXNpb24gOTQ4OTkpCisrKyBUb29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdDIvQWJvdXRCbGFua0xvYWQuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0yMyw2ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8K
IAorI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCiAj
aW5jbHVkZSAiUGxhdGZvcm1XZWJWaWV3LmgiCiAKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkv
VGVzdHMvV2ViS2l0Mi9DYW5IYW5kbGVSZXF1ZXN0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9U
ZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvQ2FuSGFuZGxlUmVxdWVzdC5jcHAJKHJldmlzaW9u
IDk0ODk5KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0NhbkhhbmRsZVJl
cXVlc3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1
ZGUgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1XZWJWaWV3LmgiCiAj
aW5jbHVkZSA8V2ViS2l0Mi9XS0NvbnRleHRQcml2YXRlLmg+CkluZGV4OiBUb29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdDIvQ2FuSGFuZGxlUmVxdWVzdF9CdW5kbGUuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9DYW5IYW5kbGVSZXF1ZXN0
X0J1bmRsZS5jcHAJKHJldmlzaW9uIDk0ODk5KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0
cy9XZWJLaXQyL0NhbkhhbmRsZVJlcXVlc3RfQnVuZGxlLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MjMsNiArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAK
KyNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJbmplY3RlZEJ1bmRsZVRlc3QuaCIKIAog
I2luY2x1ZGUgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCkluZGV4OiBUb29scy9UZXN0V2ViS2l0QVBJ
L1Rlc3RzL1dlYktpdDIvQ29va2llTWFuYWdlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVz
dFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0Nvb2tpZU1hbmFnZXIuY3BwCShyZXZpc2lvbiA5NDg5
OSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9Db29raWVNYW5hZ2VyLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMjMsNiArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgogICovCiAKKyNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJQbGF0
Zm9ybVV0aWxpdGllcy5oIgogI2luY2x1ZGUgIlBsYXRmb3JtV2ViVmlldy5oIgogI2luY2x1ZGUg
PFdlYktpdDIvV0tDb29raWVNYW5hZ2VyLmg+CkluZGV4OiBUb29scy9UZXN0V2ViS2l0QVBJL1Rl
c3RzL1dlYktpdDIvRG9jdW1lbnRTdGFydFVzZXJTY3JpcHRBbGVydENyYXNoLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvRG9jdW1lbnRTdGFydFVz
ZXJTY3JpcHRBbGVydENyYXNoLmNwcAkocmV2aXNpb24gOTQ4OTkpCisrKyBUb29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdDIvRG9jdW1lbnRTdGFydFVzZXJTY3JpcHRBbGVydENyYXNoLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMjMsNiArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgogICovCiAKKyNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJQbGF0
Zm9ybVV0aWxpdGllcy5oIgogI2luY2x1ZGUgIlBsYXRmb3JtV2ViVmlldy5oIgogI2luY2x1ZGUg
IlRlc3QuaCIKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9Eb2N1bWVu
dFN0YXJ0VXNlclNjcmlwdEFsZXJ0Q3Jhc2hfQnVuZGxlLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29s
cy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvRG9jdW1lbnRTdGFydFVzZXJTY3JpcHRBbGVy
dENyYXNoX0J1bmRsZS5jcHAJKHJldmlzaW9uIDk0ODk5KQorKysgVG9vbHMvVGVzdFdlYktpdEFQ
SS9UZXN0cy9XZWJLaXQyL0RvY3VtZW50U3RhcnRVc2VyU2NyaXB0QWxlcnRDcmFzaF9CdW5kbGUu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIklu
amVjdGVkQnVuZGxlVGVzdC5oIgogI2luY2x1ZGUgPFdlYktpdDIvV0tCdW5kbGVQYWdlR3JvdXAu
aD4KICNpbmNsdWRlIDxXZWJLaXQyL1dLQnVuZGxlUHJpdmF0ZS5oPgpJbmRleDogVG9vbHMvVGVz
dFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0Rvd25sb2FkRGVjaWRlRGVzdGluYXRpb25DcmFzaC5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0Rvd25s
b2FkRGVjaWRlRGVzdGluYXRpb25DcmFzaC5jcHAJKHJldmlzaW9uIDk0ODk5KQorKysgVG9vbHMv
VGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0Rvd25sb2FkRGVjaWRlRGVzdGluYXRpb25DcmFz
aC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIzLDYgKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KICAqLwogCisjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAi
UGxhdGZvcm1VdGlsaXRpZXMuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVdlYlZpZXcuaCIKICNpbmNs
dWRlIDxXZWJLaXQyL1dLRG93bmxvYWQuaD4KSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViS2l0Mi9FdmFsdWF0ZUphdmFTY3JpcHQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rl
c3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9FdmFsdWF0ZUphdmFTY3JpcHQuY3BwCShyZXZpc2lv
biA5NDg5OSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9FdmFsdWF0ZUph
dmFTY3JpcHQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsyMyw3IEBACiAgKiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2luY2x1ZGUgImNvbmZpZy5oIgogI2lu
Y2x1ZGUgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1XZWJWaWV3Lmgi
CiAjaW5jbHVkZSAiVGVzdC5oIgpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJL
aXQyL0ZhaWxlZExvYWQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViS2l0Mi9GYWlsZWRMb2FkLmNwcAkocmV2aXNpb24gOTQ4OTkpCisrKyBUb29scy9UZXN0
V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvRmFpbGVkTG9hZC5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTIzLDYgKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwog
CisjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1VdGlsaXRpZXMuaCIKICNp
bmNsdWRlICJQbGF0Zm9ybVdlYlZpZXcuaCIKICNpbmNsdWRlICJUZXN0LmgiCkluZGV4OiBUb29s
cy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvRmluZC5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9v
bHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0ZpbmQuY3BwCShyZXZpc2lvbiA5NDg5OSkK
KysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9GaW5kLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMjMsNiArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgogICovCiAKKyNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVV0aWxpdGll
cy5oIgogI2luY2x1ZGUgIlBsYXRmb3JtV2ViVmlldy5oIgogI2luY2x1ZGUgPFdlYktpdDIvV0tS
ZXRhaW5QdHIuaD4KSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9Gb3Jj
ZVJlcGFpbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2Vi
S2l0Mi9Gb3JjZVJlcGFpbnQuY3BwCShyZXZpc2lvbiA5NDg5OSkKKysrIFRvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0Mi9Gb3JjZVJlcGFpbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0y
Myw2ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAor
I2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCiAjaW5j
bHVkZSAiUGxhdGZvcm1XZWJWaWV3LmgiCiAjaW5jbHVkZSAiVGVzdC5oIgpJbmRleDogVG9vbHMv
VGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0ZyYW1lTUlNRVR5cGVIVE1MLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvRnJhbWVNSU1FVHlwZUhU
TUwuY3BwCShyZXZpc2lvbiA5NDg5OSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2Vi
S2l0Mi9GcmFtZU1JTUVUeXBlSFRNTC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIzLDYgKzIzLDcg
QEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCisjaW5jbHVkZSAi
Y29uZmlnLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1VdGlsaXRpZXMuaCIKICNpbmNsdWRlICJQbGF0
Zm9ybVdlYlZpZXcuaCIKICNpbmNsdWRlICJUZXN0LmgiCkluZGV4OiBUb29scy9UZXN0V2ViS2l0
QVBJL1Rlc3RzL1dlYktpdDIvRnJhbWVNSU1FVHlwZVBORy5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9v
bHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0ZyYW1lTUlNRVR5cGVQTkcuY3BwCShyZXZp
c2lvbiA5NDg5OSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9GcmFtZU1J
TUVUeXBlUE5HLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjMsNiArMjMsNyBAQAogICogVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKKyNpbmNsdWRlICJjb25maWcuaCIKICNp
bmNsdWRlICJQbGF0Zm9ybVV0aWxpdGllcy5oIgogI2luY2x1ZGUgIlBsYXRmb3JtV2ViVmlldy5o
IgogI2luY2x1ZGUgPFdlYktpdDIvV0tSZXRhaW5QdHIuaD4KSW5kZXg6IFRvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0Mi9IaXRUZXN0UmVzdWx0Tm9kZUhhbmRsZS5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0hpdFRlc3RSZXN1bHROb2Rl
SGFuZGxlLmNwcAkocmV2aXNpb24gOTQ4OTkpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3Rz
L1dlYktpdDIvSGl0VGVzdFJlc3VsdE5vZGVIYW5kbGUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0y
Myw2ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAor
I2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCiAjaW5j
bHVkZSAiUGxhdGZvcm1XZWJWaWV3LmgiCiAjaW5jbHVkZSA8V2ViS2l0Mi9XS1JldGFpblB0ci5o
PgpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0hpdFRlc3RSZXN1bHRO
b2RlSGFuZGxlX0J1bmRsZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJLaXQyL0hpdFRlc3RSZXN1bHROb2RlSGFuZGxlX0J1bmRsZS5jcHAJKHJldmlzaW9u
IDk0ODk5KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0hpdFRlc3RSZXN1
bHROb2RlSGFuZGxlX0J1bmRsZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIzLDYgKzIzLDcgQEAK
ICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCisjaW5jbHVkZSAiY29u
ZmlnLmgiCiAjaW5jbHVkZSAiSW5qZWN0ZWRCdW5kbGVUZXN0LmgiCiAjaW5jbHVkZSAiSW5qZWN0
ZWRCdW5kbGVDb250cm9sbGVyLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1VdGlsaXRpZXMuaCIKSW5k
ZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9JbmplY3RlZEJ1bmRsZUJhc2lj
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvSW5q
ZWN0ZWRCdW5kbGVCYXNpYy5jcHAJKHJldmlzaW9uIDk0ODk5KQorKysgVG9vbHMvVGVzdFdlYktp
dEFQSS9UZXN0cy9XZWJLaXQyL0luamVjdGVkQnVuZGxlQmFzaWMuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0yMyw2ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAg
Ki8KIAorI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlBsYXRmb3JtVXRpbGl0aWVzLmgi
CiAjaW5jbHVkZSAiUGxhdGZvcm1XZWJWaWV3LmgiCiAjaW5jbHVkZSA8V2ViS2l0Mi9XS1JldGFp
blB0ci5oPgpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0luamVjdGVk
QnVuZGxlQmFzaWNfQnVuZGxlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJ
L1Rlc3RzL1dlYktpdDIvSW5qZWN0ZWRCdW5kbGVCYXNpY19CdW5kbGUuY3BwCShyZXZpc2lvbiA5
NDg5OSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9JbmplY3RlZEJ1bmRs
ZUJhc2ljX0J1bmRsZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIzLDYgKzIzLDcgQEAKICAqIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCisjaW5jbHVkZSAiY29uZmlnLmgi
CiAjaW5jbHVkZSAiSW5qZWN0ZWRCdW5kbGVUZXN0LmgiCiAjaW5jbHVkZSA8V2ViS2l0Mi9XS1Jl
dGFpblB0ci5oPgogCkluZGV4OiBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvTG9h
ZENhbmNlbGVkTm9TZXJ2ZXJSZWRpcmVjdENhbGxiYWNrLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29s
cy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvTG9hZENhbmNlbGVkTm9TZXJ2ZXJSZWRpcmVj
dENhbGxiYWNrLmNwcAkocmV2aXNpb24gOTQ4OTkpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rl
c3RzL1dlYktpdDIvTG9hZENhbmNlbGVkTm9TZXJ2ZXJSZWRpcmVjdENhbGxiYWNrLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjMsNiArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgogICovCiAKKyNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJKYXZhU2NyaXB0
VGVzdC5oIgogI2luY2x1ZGUgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCiAjaW5jbHVkZSAiUGxhdGZv
cm1XZWJWaWV3LmgiCkluZGV4OiBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvTG9h
ZENhbmNlbGVkTm9TZXJ2ZXJSZWRpcmVjdENhbGxiYWNrX0J1bmRsZS5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0xvYWRDYW5jZWxlZE5vU2VydmVy
UmVkaXJlY3RDYWxsYmFja19CdW5kbGUuY3BwCShyZXZpc2lvbiA5NDg5OSkKKysrIFRvb2xzL1Rl
c3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9Mb2FkQ2FuY2VsZWROb1NlcnZlclJlZGlyZWN0Q2Fs
bGJhY2tfQnVuZGxlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjMsNiArMjMsNyBAQAogICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKKyNpbmNsdWRlICJjb25maWcuaCIK
ICNpbmNsdWRlICJJbmplY3RlZEJ1bmRsZVRlc3QuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVV0aWxp
dGllcy5oIgogI2luY2x1ZGUgIlRlc3QuaCIKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViS2l0Mi9Nb3VzZU1vdmVBZnRlckNyYXNoLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9U
ZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvTW91c2VNb3ZlQWZ0ZXJDcmFzaC5jcHAJKHJldmlz
aW9uIDk0ODk5KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL01vdXNlTW92
ZUFmdGVyQ3Jhc2guY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsyMyw3IEBACiAgKiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2luY2x1ZGUgImNvbmZpZy5oIgog
I2luY2x1ZGUgIkphdmFTY3JpcHRUZXN0LmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1VdGlsaXRpZXMu
aCIKICNpbmNsdWRlICJQbGF0Zm9ybVdlYlZpZXcuaCIKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRB
UEkvVGVzdHMvV2ViS2l0Mi9Nb3VzZU1vdmVBZnRlckNyYXNoX0J1bmRsZS5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL01vdXNlTW92ZUFmdGVyQ3Jh
c2hfQnVuZGxlLmNwcAkocmV2aXNpb24gOTQ4OTkpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rl
c3RzL1dlYktpdDIvTW91c2VNb3ZlQWZ0ZXJDcmFzaF9CdW5kbGUuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0yMyw2ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAg
Ki8KIAorI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkluamVjdGVkQnVuZGxlVGVzdC5o
IgogCiAjaW5jbHVkZSAiUGxhdGZvcm1VdGlsaXRpZXMuaCIKSW5kZXg6IFRvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0Mi9QYWdlTG9hZEJhc2ljLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29s
cy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvUGFnZUxvYWRCYXNpYy5jcHAJKHJldmlzaW9u
IDk0ODk5KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL1BhZ2VMb2FkQmFz
aWMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUg
IlBsYXRmb3JtVXRpbGl0aWVzLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1XZWJWaWV3LmgiCiAjaW5j
bHVkZSAiVGVzdC5oIgpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL1Bh
Z2VMb2FkRGlkQ2hhbmdlTG9jYXRpb25XaXRoaW5QYWdlRm9yRnJhbWUuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9QYWdlTG9hZERpZENoYW5nZUxv
Y2F0aW9uV2l0aGluUGFnZUZvckZyYW1lLmNwcAkocmV2aXNpb24gOTQ4OTkpCisrKyBUb29scy9U
ZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvUGFnZUxvYWREaWRDaGFuZ2VMb2NhdGlvbldpdGhp
blBhZ2VGb3JGcmFtZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIzLDYgKzIzLDcgQEAKICAqIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCisjaW5jbHVkZSAiY29uZmlnLmgi
CiAjaW5jbHVkZSAiUGxhdGZvcm1VdGlsaXRpZXMuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVdlYlZp
ZXcuaCIKICNpbmNsdWRlIDxXZWJLaXQyL1dLUmV0YWluUHRyLmg+CkluZGV4OiBUb29scy9UZXN0
V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvUHJldmVudEVtcHR5VXNlckFnZW50LmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvUHJldmVudEVtcHR5VXNl
ckFnZW50LmNwcAkocmV2aXNpb24gOTQ4OTkpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3Rz
L1dlYktpdDIvUHJldmVudEVtcHR5VXNlckFnZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjMs
NiArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKKyNp
bmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVV0aWxpdGllcy5oIgogI2luY2x1
ZGUgIlBsYXRmb3JtV2ViVmlldy5oIgogI2luY2x1ZGUgIlRlc3QuaCIKSW5kZXg6IFRvb2xzL1Rl
c3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9SZXNwb25zaXZlbmVzc1RpbWVyRG9lc250RmlyZUVh
cmx5LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIv
UmVzcG9uc2l2ZW5lc3NUaW1lckRvZXNudEZpcmVFYXJseS5jcHAJKHJldmlzaW9uIDk0ODk5KQor
KysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL1Jlc3BvbnNpdmVuZXNzVGltZXJE
b2VzbnRGaXJlRWFybHkuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsyMyw3IEBACiAgKiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2luY2x1ZGUgImNvbmZpZy5o
IgogI2luY2x1ZGUgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1XZWJW
aWV3LmgiCiAKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9SZXNwb25z
aXZlbmVzc1RpbWVyRG9lc250RmlyZUVhcmx5X0J1bmRsZS5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9v
bHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL1Jlc3BvbnNpdmVuZXNzVGltZXJEb2VzbnRG
aXJlRWFybHlfQnVuZGxlLmNwcAkocmV2aXNpb24gOTQ4OTkpCisrKyBUb29scy9UZXN0V2ViS2l0
QVBJL1Rlc3RzL1dlYktpdDIvUmVzcG9uc2l2ZW5lc3NUaW1lckRvZXNudEZpcmVFYXJseV9CdW5k
bGUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUg
IkluamVjdGVkQnVuZGxlVGVzdC5oIgogCiAjaW5jbHVkZSAiUGxhdGZvcm1VdGlsaXRpZXMuaCIK
SW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9SZXN0b3JlU2Vzc2lvblN0
YXRlQ29udGFpbmluZ0Zvcm1EYXRhLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0
QVBJL1Rlc3RzL1dlYktpdDIvUmVzdG9yZVNlc3Npb25TdGF0ZUNvbnRhaW5pbmdGb3JtRGF0YS5j
cHAJKHJldmlzaW9uIDk0ODk5KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQy
L1Jlc3RvcmVTZXNzaW9uU3RhdGVDb250YWluaW5nRm9ybURhdGEuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0yMyw2ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAg
Ki8KIAorI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkphdmFTY3JpcHRUZXN0LmgiCiAj
aW5jbHVkZSAiUGxhdGZvcm1VdGlsaXRpZXMuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVdlYlZpZXcu
aCIKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9TcGFjZWJhclNjcm9s
bGluZy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQy
L1NwYWNlYmFyU2Nyb2xsaW5nLmNwcAkocmV2aXNpb24gOTQ4OTkpCisrKyBUb29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdDIvU3BhY2ViYXJTY3JvbGxpbmcuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0yMyw2ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAg
Ki8KIAorI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkphdmFTY3JpcHRUZXN0LmgiCiAj
aW5jbHVkZSAiUGxhdGZvcm1VdGlsaXRpZXMuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVdlYlZpZXcu
aCIKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9XS1ByZWZlcmVuY2Vz
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvV0tQ
cmVmZXJlbmNlcy5jcHAJKHJldmlzaW9uIDk0ODk5KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJLaXQyL1dLUHJlZmVyZW5jZXMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsy
Myw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2luY2x1
ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCiAjaW5jbHVkZSA8
V2ViS2l0Mi9XS1ByZWZlcmVuY2VzUHJpdmF0ZS5oPgogI2luY2x1ZGUgPFdlYktpdDIvV0tSZXRh
aW5QdHIuaD4KSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9XS1N0cmlu
Zy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL1dL
U3RyaW5nLmNwcAkocmV2aXNpb24gOTQ4OTkpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3Rz
L1dlYktpdDIvV0tTdHJpbmcuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsyMyw4IEBACiAg
KiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2luY2x1ZGUgImNvbmZp
Zy5oIgorCiBuYW1lc3BhY2UgVGVzdFdlYktpdEFQSSB7CiAKIFRFU1QoV2ViS2l0MiwgV0tTdHJp
bmcpCkluZGV4OiBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvV0tTdHJpbmdKU1N0
cmluZy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQy
L1dLU3RyaW5nSlNTdHJpbmcuY3BwCShyZXZpc2lvbiA5NDg5OSkKKysrIFRvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0Mi9XS1N0cmluZ0pTU3RyaW5nLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMjMsNiArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICov
CiAKKyNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlIDxXZWJLaXQyL1dLU3RyaW5nUHJpdmF0
ZS5oPgogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0pTU3RyaW5nUmVmLmg+CiAKSW5kZXg6IFRv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi93aW4vQWx0S2V5R2VuZXJhdGVzV01TeXND
b21tYW5kLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktp
dDIvd2luL0FsdEtleUdlbmVyYXRlc1dNU3lzQ29tbWFuZC5jcHAJKHJldmlzaW9uIDk0ODk5KQor
KysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL3dpbi9BbHRLZXlHZW5lcmF0ZXNX
TVN5c0NvbW1hbmQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsyMyw3IEBACiAgKiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2luY2x1ZGUgImNvbmZpZy5oIgog
I2luY2x1ZGUgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1XZWJWaWV3
LmgiCiAjaW5jbHVkZSAiV2luZG93TWVzc2FnZU9ic2VydmVyLmgiCkluZGV4OiBUb29scy9UZXN0
V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvd2luL0RvTm90Q29weUFOdWxsQ0ZVUkxSZXNwb25zZS5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL3dpbi9E
b05vdENvcHlBTnVsbENGVVJMUmVzcG9uc2UuY3BwCShyZXZpc2lvbiA5NDg5OSkKKysrIFRvb2xz
L1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi93aW4vRG9Ob3RDb3B5QU51bGxDRlVSTFJlc3Bv
bnNlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjMsNiArMjMsNyBAQAogICogVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKKyNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRl
IDxXZWJLaXQyL1dLUmV0YWluUHRyLmg+CiAjaW5jbHVkZSA8V2ViS2l0Mi9XS1VSTFJlc3BvbnNl
Q0YuaD4KICNpbmNsdWRlIDx3dGYvUmV0YWluUHRyLmg+CkluZGV4OiBUb29scy9UZXN0V2ViS2l0
QVBJL1Rlc3RzL1dlYktpdDIvd2luL0hpZGVGaW5kSW5kaWNhdG9yLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvd2luL0hpZGVGaW5kSW5kaWNhdG9y
LmNwcAkocmV2aXNpb24gOTQ4OTkpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktp
dDIvd2luL0hpZGVGaW5kSW5kaWNhdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjMsNiArMjMs
NyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKKyNpbmNsdWRl
ICJjb25maWcuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVV0aWxpdGllcy5oIgogI2luY2x1ZGUgIlBs
YXRmb3JtV2ViVmlldy5oIgogI2luY2x1ZGUgIlRlc3QuaCIKSW5kZXg6IFRvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0Mi93aW4vUmVzaXplVmlld1doaWxlSGlkZGVuLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvd2luL1Jlc2l6ZVZpZXdX
aGlsZUhpZGRlbi5jcHAJKHJldmlzaW9uIDk0ODk5KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJLaXQyL3dpbi9SZXNpemVWaWV3V2hpbGVIaWRkZW4uY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0yMyw2ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAg
Ki8KIAorI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlBsYXRmb3JtVXRpbGl0aWVzLmgi
CiAjaW5jbHVkZSAiUGxhdGZvcm1XZWJWaWV3LmgiCiAjaW5jbHVkZSA8V2ViS2l0Mi9XS1JldGFp
blB0ci5oPgpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL3dpbi9UcmFu
c2xhdGVNZXNzYWdlR2VuZXJhdGVzV01DaGFyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0
V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvd2luL1RyYW5zbGF0ZU1lc3NhZ2VHZW5lcmF0ZXNXTUNo
YXIuY3BwCShyZXZpc2lvbiA5NDg5OSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2Vi
S2l0Mi93aW4vVHJhbnNsYXRlTWVzc2FnZUdlbmVyYXRlc1dNQ2hhci5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTIzLDYgKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
ICAqLwogCisjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1VdGlsaXRpZXMu
aCIKICNpbmNsdWRlICJQbGF0Zm9ybVdlYlZpZXcuaCIKICNpbmNsdWRlICJXaW5kb3dNZXNzYWdl
T2JzZXJ2ZXIuaCIKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi93aW4v
V01DbG9zZUNhbGxzVUlDbGllbnRDbG9zZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdl
YktpdEFQSS9UZXN0cy9XZWJLaXQyL3dpbi9XTUNsb3NlQ2FsbHNVSUNsaWVudENsb3NlLmNwcAko
cmV2aXNpb24gOTQ4OTkpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvd2lu
L1dNQ2xvc2VDYWxsc1VJQ2xpZW50Q2xvc2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsy
Myw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2luY2x1
ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCiAjaW5jbHVkZSAi
UGxhdGZvcm1XZWJWaWV3LmgiCiAjaW5jbHVkZSA8V2ViS2l0Mi9XS1JldGFpblB0ci5oPgpJbmRl
eDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL3dpbi9XTVByaW50LmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvd2luL1dNUHJpbnQu
Y3BwCShyZXZpc2lvbiA5NDg5OSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0
Mi93aW4vV01QcmludC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIzLDYgKzIzLDcgQEAKICAqIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCisjaW5jbHVkZSAiY29uZmlnLmgi
CiAjaW5jbHVkZSAiUGxhdGZvcm1VdGlsaXRpZXMuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVdlYlZp
ZXcuaCIKICNpbmNsdWRlIDxXZWJLaXQyL1dLUmV0YWluUHRyLmg+CkluZGV4OiBUb29scy9UZXN0
V2ViS2l0QVBJL3dpbi9JbmplY3RlZEJ1bmRsZUNvbnRyb2xsZXJXaW4uY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvd2luL0luamVjdGVkQnVuZGxlQ29udHJvbGxlcldpbi5j
cHAJKHJldmlzaW9uIDk0ODk5KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS93aW4vSW5qZWN0ZWRC
dW5kbGVDb250cm9sbGVyV2luLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjMsNiArMjMsNyBAQAog
ICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKKyNpbmNsdWRlICJjb25m
aWcuaCIKICNpbmNsdWRlICJJbmplY3RlZEJ1bmRsZUNvbnRyb2xsZXIuaCIKIAogbmFtZXNwYWNl
IFRlc3RXZWJLaXRBUEkgewpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS93aW4vUGxhdGZvcm1V
dGlsaXRpZXNXaW4uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvd2luL1Bs
YXRmb3JtVXRpbGl0aWVzV2luLmNwcAkocmV2aXNpb24gOTQ4OTkpCisrKyBUb29scy9UZXN0V2Vi
S2l0QVBJL3dpbi9QbGF0Zm9ybVV0aWxpdGllc1dpbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIz
LDYgKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCisj
aW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1VdGlsaXRpZXMuaCIKIAogI2lu
Y2x1ZGUgPFdlYktpdDIvV0tTdHJpbmdDRi5oPgpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS93
aW4vUGxhdGZvcm1XZWJWaWV3V2luLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0
QVBJL3dpbi9QbGF0Zm9ybVdlYlZpZXdXaW4uY3BwCShyZXZpc2lvbiA5NDg5OSkKKysrIFRvb2xz
L1Rlc3RXZWJLaXRBUEkvd2luL1BsYXRmb3JtV2ViVmlld1dpbi5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTIzLDYgKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAq
LwogCisjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1XZWJWaWV3LmgiCiAK
ICNpbmNsdWRlICJXaW5kb3dNZXNzYWdlT2JzZXJ2ZXIuaCIKSW5kZXg6IFRvb2xzL1Rlc3RXZWJL
aXRBUEkvd2luL1Rlc3RXZWJLaXRBUEkudmNwcm9qCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RX
ZWJLaXRBUEkvd2luL1Rlc3RXZWJLaXRBUEkudmNwcm9qCShyZXZpc2lvbiA5NDg5OSkKKysrIFRv
b2xzL1Rlc3RXZWJLaXRBUEkvd2luL1Rlc3RXZWJLaXRBUEkudmNwcm9qCSh3b3JraW5nIGNvcHkp
CkBAIC02NTAsNyArNjUwLDcgQEAKIAkJCT4KIAkJPC9GaWxlPgogCQk8RmlsZQotCQkJUmVsYXRp
dmVQYXRoPSIuLlxUZXN0V2ViS2l0QVBJUHJlZml4LmgiCisJCQlSZWxhdGl2ZVBhdGg9Ii4uXGNv
bmZpZy5oIgogCQkJPgogCQk8L0ZpbGU+CiAJPC9GaWxlcz4KSW5kZXg6IFRvb2xzL1Rlc3RXZWJL
aXRBUEkvd2luL21haW4uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvd2lu
L21haW4uY3BwCShyZXZpc2lvbiA5NDg5OSkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvd2luL21h
aW4uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUg
IlRlc3RzQ29udHJvbGxlci5oIgogCiBpbnQgbWFpbihpbnQgYXJnYywgY2hhcioqIGFyZ3YpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>