<?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>78214</bug_id>
          
          <creation_ts>2012-02-09 01:18:20 -0800</creation_ts>
          <short_desc>Rename DOMURL to URL in the bindings</short_desc>
          <delta_ts>2012-03-02 07:15:12 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>DOM</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>http://dvcs.w3.org/hg/url/raw-file/tip/Overview.html#interface-url</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>79384</dependson>
          <blocked>74385</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="Kaustubh Atrawalkar">kaustubh.ra</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>arv</cc>
    
    <cc>eric</cc>
    
    <cc>haraken</cc>
    
    <cc>kaustubh.ra</cc>
    
    <cc>levin</cc>
    
    <cc>ojan</cc>
    
    <cc>ossy</cc>
    
    <cc>rakuco</cc>
    
    <cc>vestbo</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>552950</commentid>
    <comment_count>0</comment_count>
    <who name="Kaustubh Atrawalkar">kaustubh.ra</who>
    <bug_when>2012-02-09 01:18:20 -0800</bug_when>
    <thetext>Need to rename DOMURL to URL as per specs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>552953</commentid>
    <comment_count>1</comment_count>
    <who name="Kaustubh Atrawalkar">kaustubh.ra</who>
    <bug_when>2012-02-09 01:19:44 -0800</bug_when>
    <thetext>This will fix the failing test cases in global-constructors.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>553091</commentid>
    <comment_count>2</comment_count>
      <attachid>126289</attachid>
    <who name="Kaustubh Atrawalkar">kaustubh.ra</who>
    <bug_when>2012-02-09 05:39:02 -0800</bug_when>
    <thetext>Created attachment 126289
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>553282</commentid>
    <comment_count>3</comment_count>
      <attachid>126289</attachid>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2012-02-09 10:26:57 -0800</bug_when>
    <thetext>Comment on attachment 126289
Patch

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

&gt; Source/WebCore/page/DOMWindow.idl:785
&gt; +        attribute [Conditional=BLOB] URLConstructor URL;

I think we should keep this as webkitURL for a little longer. We are not even close to implementing the whole thing so and there is no rush to rename this.

&gt; Source/WebCore/workers/WorkerContext.idl:104
&gt; +        attribute [Conditional=BLOB] URLConstructor URL;

Keep as webkitURL for now</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>553817</commentid>
    <comment_count>4</comment_count>
    <who name="Kaustubh Atrawalkar">kaustubh.ra</who>
    <bug_when>2012-02-09 21:55:09 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 126289 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=126289&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/page/DOMWindow.idl:785
&gt; &gt; +        attribute [Conditional=BLOB] URLConstructor URL;
&gt; 
&gt; I think we should keep this as webkitURL for a little longer. We are not even close to implementing the whole thing so and there is no rush to rename this.
&gt; 
I agree, but just to make it compatible with other browsers. Currently, I saw all sites use - &quot;window.webkitURL || window.URL&quot;
To avoid this I thought to remove prefix webkit and made it as per specs requirement. 
&gt; &gt; Source/WebCore/workers/WorkerContext.idl:104
&gt; &gt; +        attribute [Conditional=BLOB] URLConstructor URL;
&gt; 
&gt; Keep as webkitURL for now

Surely, guess we can make it later. Will upload it with webkitURL</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>553824</commentid>
    <comment_count>5</comment_count>
      <attachid>126450</attachid>
    <who name="Kaustubh Atrawalkar">kaustubh.ra</who>
    <bug_when>2012-02-09 22:02:07 -0800</bug_when>
    <thetext>Created attachment 126450
Updated Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>553855</commentid>
    <comment_count>6</comment_count>
      <attachid>126458</attachid>
    <who name="Kaustubh Atrawalkar">kaustubh.ra</who>
    <bug_when>2012-02-09 22:46:45 -0800</bug_when>
    <thetext>Created attachment 126458
Updated Patch

I had missed new changes in IDL files from Haraken. Fixed those.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>554170</commentid>
    <comment_count>7</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-02-10 10:25:34 -0800</bug_when>
    <thetext>Based on Arv&apos;s comments, lets do this later.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>554217</commentid>
    <comment_count>8</comment_count>
      <attachid>126458</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-02-10 10:57:47 -0800</bug_when>
    <thetext>Comment on attachment 126458
Updated Patch

Cleared review? from attachment 126458 so that this bug does not appear in http://webkit.org/pending-review.  If you would like this patch reviewed, please attach it to a new bug (or re-open this bug before marking it for review again).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>554549</commentid>
    <comment_count>9</comment_count>
    <who name="Kaustubh Atrawalkar">kaustubh.ra</who>
    <bug_when>2012-02-10 19:14:21 -0800</bug_when>
    <thetext>(In reply to comment #7)
&gt; Based on Arv&apos;s comments, lets do this later.

I think what Arv meant here was to keep java script binding side name as webkitURL and change the DOMURLConstructor to URLConstructor. So that when implementation is ready just changing the two lines in DOMWindow.idl &amp; WorkerContext.idl would migrate from JavaScript side later. I need to push big chunk of URL decomposition attributes. But for that it would be better if this DOMURL to URL change goes in. correct me if wrong. Thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>554554</commentid>
    <comment_count>10</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-02-10 19:45:02 -0800</bug_when>
    <thetext>We likely want to continue to call the implementation DOMURL so as to be distinct from URL, which is what we plan to rename KURL to.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>557551</commentid>
    <comment_count>11</comment_count>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2012-02-15 14:28:16 -0800</bug_when>
    <thetext>Sorry for letting this fall off my radar.

Keeping the C++ name DOMURL seems better but we should make sure that we only expose the name &quot;URL&quot; to the web page.

I think we should name the constructor webkitURL until we at least have all the methods implemented.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>558025</commentid>
    <comment_count>12</comment_count>
    <who name="Kaustubh Atrawalkar">kaustubh.ra</who>
    <bug_when>2012-02-16 02:45:52 -0800</bug_when>
    <thetext>Reopening as per Erik&apos;s comment. Should I provide the patch only to rename DOMURLConstructor to URLConstructor and migrate DOMURL to URL in WebIDL files?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>558227</commentid>
    <comment_count>13</comment_count>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2012-02-16 08:38:00 -0800</bug_when>
    <thetext>(In reply to comment #12)
&gt; Reopening as per Erik&apos;s comment. Should I provide the patch only to rename DOMURLConstructor to URLConstructor and migrate DOMURL to URL in WebIDL files?

Yes please.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>561405</commentid>
    <comment_count>14</comment_count>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2012-02-21 17:22:47 -0800</bug_when>
    <thetext>I&apos;m working on the renaming of the bindings in bug 78721. Once that is done it should be trivial to fix this bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>561637</commentid>
    <comment_count>15</comment_count>
    <who name="Kaustubh Atrawalkar">kaustubh.ra</who>
    <bug_when>2012-02-21 22:50:28 -0800</bug_when>
    <thetext>(In reply to comment #14)
&gt; I&apos;m working on the renaming of the bindings in bug 78721. Once that is done it should be trivial to fix this bug.

Great. That would really help to fix this. I was wondering since last week how to fix this without changing file names. Now I hope it will be easy after your patch :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>564031</commentid>
    <comment_count>16</comment_count>
      <attachid>128672</attachid>
    <who name="Kaustubh Atrawalkar">kaustubh.ra</who>
    <bug_when>2012-02-24 00:21:58 -0800</bug_when>
    <thetext>Created attachment 128672
Updated Patch

Updated patch for Renaming DOMURL to URL using InterfaceName. Can you review once?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>564377</commentid>
    <comment_count>17</comment_count>
      <attachid>128672</attachid>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2012-02-24 09:22:23 -0800</bug_when>
    <thetext>Comment on attachment 128672
Updated Patch

Can you see if some of the tests can be updated?

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

&gt; LayoutTests/platform/gtk/fast/dom/prototype-inheritance-2-expected.txt:234
&gt; +PASS Window from inner
&gt; +PASS WindowConstructor from inner.document.forms.testForm.0.ownerDocument.defaultView.constructor
&gt; +PASS WindowPrototype from inner.document.forms.testForm.0.ownerDocument.defaultView.__proto__

Please rebaseline

&gt; LayoutTests/platform/mac/fast/js/constructor-length-expected.txt:31
&gt; +FAIL URL.length should be 0. Threw exception ReferenceError: Can&apos;t find variable: URL

Please fix this

&gt; LayoutTests/platform/mac/fast/js/global-constructors-expected.txt:340
&gt; +FAIL webkitURL.toString() should be [object webkitURLConstructor]. Was [object URLConstructor].

Not much to do about this one until we strip the prefix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>565534</commentid>
    <comment_count>18</comment_count>
      <attachid>129003</attachid>
    <who name="Kaustubh Atrawalkar">kaustubh.ra</who>
    <bug_when>2012-02-27 03:07:02 -0800</bug_when>
    <thetext>Created attachment 129003
Updated Patch

Fixed test cases. Rebaslined. Eric/Adam can you review once?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>569363</commentid>
    <comment_count>19</comment_count>
      <attachid>129003</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-02 00:13:12 -0800</bug_when>
    <thetext>Comment on attachment 129003
Updated Patch

Rejecting attachment 129003 from commit-queue.

Failed to run &quot;[&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;-...&quot; exit_code: 2

Last 500 characters of output:
saving rejects to file LayoutTests/platform/mac/fast/js/constructor-length-expected.txt.rej
patching file LayoutTests/platform/mac/fast/js/global-constructors-expected.txt
patching file LayoutTests/platform/qt/fast/dom/prototype-inheritance-2-expected.txt
patching file LayoutTests/platform/qt/fast/js/global-constructors-expected.txt

Failed to run &quot;[u&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/svn-apply&apos;, u&apos;--force&apos;, u&apos;--reviewer&apos;, u&apos;Adam Barth&apos;]&quot; exit_code: 1 cwd: /mnt/git/webkit-commit-queue/

Full output: http://queues.webkit.org/results/11757822</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>569391</commentid>
    <comment_count>20</comment_count>
      <attachid>129841</attachid>
    <who name="Kaustubh Atrawalkar">kaustubh.ra</who>
    <bug_when>2012-03-02 00:54:34 -0800</bug_when>
    <thetext>Created attachment 129841
Rebaseline Patch

Patch need to be rebaselined. Updated.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>569416</commentid>
    <comment_count>21</comment_count>
      <attachid>129841</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-03-02 01:27:29 -0800</bug_when>
    <thetext>Comment on attachment 129841
Rebaseline Patch

The rebaselining looks OK. Based on abarth&apos;s previous r+, let me r+ it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>569632</commentid>
    <comment_count>22</comment_count>
      <attachid>129841</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-02 07:15:06 -0800</bug_when>
    <thetext>Comment on attachment 129841
Rebaseline Patch

Clearing flags on attachment: 129841

Committed r109574: &lt;http://trac.webkit.org/changeset/109574&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>569634</commentid>
    <comment_count>23</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-02 07:15:12 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>126289</attachid>
            <date>2012-02-09 05:39:02 -0800</date>
            <delta_ts>2012-02-09 22:02:07 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>78214.patch</filename>
            <type>text/plain</type>
            <size>70456</size>
            <attacher name="Kaustubh Atrawalkar">kaustubh.ra</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwNzIyMSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQ5IEBACisyMDEyLTAyLTA5ICBLYXVzdHVi
aCBBdHJhd2Fsa2FyICA8a2F1c3R1YmhAbW90b3JvbGEuY29tPgorCisgICAgICAgIFJlbmFtZSB3
ZWJraXRVUkwgdG8gVVJMIGFzIHBlciBzcGVjcy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTc4MjE0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgQXMgcGVyIHNwZWNzIGh0dHA6Ly93d3cudzMub3JnL1RSL2h0
bWw1L3VybHMuaHRtbCN1cmxzCisgICAgICAgIHdlYmtpdFVSTCB0byBiZSByZW5hbWVkIHRvIFVS
TC4KKworICAgICAgICBObyBuZXcgdGVzdHMuIFRlc3RzIGFyZSByZWJhc2VsaW5lZC4KKworICAg
ICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLmNwcDoKKyAg
ICAgICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLnBy
aToKKyAgICAgICAgKiBHTlVtYWtlZmlsZS5saXN0LmFtOgorICAgICAgICAqIFRhcmdldC5wcmk6
CisgICAgICAgICogV2ViQ29yZS5neXBpOgorICAgICAgICAqIFdlYkNvcmUudmNwcm9qL1dlYkNv
cmUudmNwcm9qOgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoK
KyAgICAgICAgKiBodG1sL0RPTVVSTC5jcHA6IFJlbW92ZWQuCisgICAgICAgICogaHRtbC9ET01V
UkwuaDogUmVtb3ZlZC4KKyAgICAgICAgKiBodG1sL0RPTVVSTC5pZGw6IFJlbW92ZWQuCisgICAg
ICAgICogaHRtbC9VUkwuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAo
V2ViQ29yZTo6VVJMOjpjcmVhdGVPYmplY3RVUkwpOgorICAgICAgICAoV2ViQ29yZTo6VVJMOjpy
ZXZva2VPYmplY3RVUkwpOgorICAgICAgICAqIGh0bWwvVVJMLmg6IEFkZGVkLgorICAgICAgICAo
V2ViQ29yZSk6CisgICAgICAgIChVUkwpOgorICAgICAgICAoV2ViQ29yZTo6VVJMOjpjcmVhdGUp
OgorICAgICAgICAqIGh0bWwvVVJMLmlkbDogQWRkZWQuCisgICAgICAgICogcGFnZS9ET01XaW5k
b3cuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RE9NV2luZG93Ojp+RE9NV2luZG93KToKKyAgICAg
ICAgKFdlYkNvcmU6OkRPTVdpbmRvdzo6Y2xlYXIpOgorICAgICAgICAqIHBhZ2UvRE9NV2luZG93
Lmg6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKERPTVdpbmRvdyk6CisgICAgICAgICog
cGFnZS9ET01XaW5kb3cuaWRsOgorICAgICAgICAqIHdvcmtlcnMvV29ya2VyQ29udGV4dC5jcHA6
CisgICAgICAgICogd29ya2Vycy9Xb3JrZXJDb250ZXh0Lmg6CisgICAgICAgIChXZWJDb3JlKToK
KyAgICAgICAgKFdvcmtlckNvbnRleHQpOgorICAgICAgICAqIHdvcmtlcnMvV29ya2VyQ29udGV4
dC5pZGw6CisKIDIwMTItMDItMDkgIEFsZXhhbmRlciBQYXZsb3YgIDxhcGF2bG92QGNocm9taXVt
Lm9yZz4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBVcGRhdGUgcHJvdG9jb2wgYW5kIFVJIHRv
IGZvbGxvdyBidWcgNzcyMDQgKEtpbGwgcGVyLUF0dHJpYnV0ZSBzdHlsZSBkZWNsYXJhdGlvbnMp
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAkocmV2aXNpb24gMTA3MjE1KQorKysgU291cmNlL1dl
YkNvcmUvQ01ha2VMaXN0cy50eHQJKHdvcmtpbmcgY29weSkKQEAgLTIwNCw3ICsyMDQsNyBAQCBT
RVQoV2ViQ29yZV9JRExfRklMRVMKICAgICBodG1sL0RPTUZvcm1EYXRhLmlkbAogICAgIGh0bWwv
RE9NU2V0dGFibGVUb2tlbkxpc3QuaWRsCiAgICAgaHRtbC9ET01Ub2tlbkxpc3QuaWRsCi0gICAg
aHRtbC9ET01VUkwuaWRsCisgICAgaHRtbC9VUkwuaWRsCiAgICAgaHRtbC9IVE1MQWxsQ29sbGVj
dGlvbi5pZGwKICAgICBodG1sL0hUTUxBbmNob3JFbGVtZW50LmlkbAogICAgIGh0bWwvSFRNTEFw
cGxldEVsZW1lbnQuaWRsCkBAIC03MTIsNyArNzEyLDcgQEAgU0VUKFdlYkNvcmVfU09VUkNFUwog
ICAgIGh0bWwvRE9NRm9ybURhdGEuY3BwCiAgICAgaHRtbC9ET01TZXR0YWJsZVRva2VuTGlzdC5j
cHAKICAgICBodG1sL0RPTVRva2VuTGlzdC5jcHAKLSAgICBodG1sL0RPTVVSTC5jcHAKKyAgICBo
dG1sL1VSTC5jcHAKICAgICBodG1sL0RhdGVJbnB1dFR5cGUuY3BwCiAgICAgaHRtbC9EYXRlVGlt
ZUlucHV0VHlwZS5jcHAKICAgICBodG1sL0RhdGVUaW1lTG9jYWxJbnB1dFR5cGUuY3BwCkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwCShyZXZpc2lvbiAxMDcyMTUpCisrKyBTb3VyY2Uv
V2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTk4LDcgKzk4LDcg
QEAKICNpbmNsdWRlICJKU0RPTVN0cmluZ0xpc3QuY3BwIgogI2luY2x1ZGUgIkpTRE9NU3RyaW5n
TWFwLmNwcCIKICNpbmNsdWRlICJKU0RPTVRva2VuTGlzdC5jcHAiCi0jaW5jbHVkZSAiSlNET01V
UkwuY3BwIgorI2luY2x1ZGUgIkpTVVJMLmNwcCIKICNpbmNsdWRlICJKU0RPTVdpbmRvdy5jcHAi
CiAjaW5jbHVkZSAiSlNFbGVtZW50LmNwcCIKICNpbmNsdWRlICJKU0VudGl0eS5jcHAiCkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UJKHJldmlzaW9uIDEwNzIxNSkKKysrIFNvdXJj
ZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UJKHdvcmtpbmcgY29weSkKQEAgLTE4Miw3ICsx
ODIsNyBAQCBCSU5ESU5HX0lETFMgPSBcCiAgICAgJChXZWJDb3JlKS9odG1sL0RPTUZvcm1EYXRh
LmlkbCBcCiAgICAgJChXZWJDb3JlKS9odG1sL0RPTVNldHRhYmxlVG9rZW5MaXN0LmlkbCBcCiAg
ICAgJChXZWJDb3JlKS9odG1sL0RPTVRva2VuTGlzdC5pZGwgXAotICAgICQoV2ViQ29yZSkvaHRt
bC9ET01VUkwuaWRsIFwKKyAgICAkKFdlYkNvcmUpL2h0bWwvVVJMLmlkbCBcCiAgICAgJChXZWJD
b3JlKS9odG1sL0hUTUxBbGxDb2xsZWN0aW9uLmlkbCBcCiAgICAgJChXZWJDb3JlKS9odG1sL0hU
TUxBbmNob3JFbGVtZW50LmlkbCBcCiAgICAgJChXZWJDb3JlKS9odG1sL0hUTUxBcHBsZXRFbGVt
ZW50LmlkbCBcCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5wcmkKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMucHJpCShyZXZpc2lvbiAxMDcy
MTUpCisrKyBTb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5wcmkJKHdvcmtpbmcgY29weSkK
QEAgLTI0NCw3ICsyNDQsNyBAQCBJRExfQklORElOR1MgKz0gXAogICAgICQkUFdEL2h0bWwvRE9N
Rm9ybURhdGEuaWRsIFwKICAgICAkJFBXRC9odG1sL0RPTVNldHRhYmxlVG9rZW5MaXN0LmlkbCBc
CiAgICAgJCRQV0QvaHRtbC9ET01Ub2tlbkxpc3QuaWRsIFwKLSAgICAkJFBXRC9odG1sL0RPTVVS
TC5pZGwgXAorICAgICQkUFdEL2h0bWwvVVJMLmlkbCBcCiAgICAgJCRQV0QvaHRtbC9IVE1MQWxs
Q29sbGVjdGlvbi5pZGwgXAogICAgICQkUFdEL2h0bWwvSFRNTEF1ZGlvRWxlbWVudC5pZGwgXAog
ICAgICQkUFdEL2h0bWwvSFRNTEFuY2hvckVsZW1lbnQuaWRsIFwKSW5kZXg6IFNvdXJjZS9XZWJD
b3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvR05V
bWFrZWZpbGUubGlzdC5hbQkocmV2aXNpb24gMTA3MjE1KQorKysgU291cmNlL1dlYkNvcmUvR05V
bWFrZWZpbGUubGlzdC5hbQkod29ya2luZyBjb3B5KQpAQCAtMTQ3LDggKzE0Nyw2IEBAIHdlYmNv
cmVfYnVpbHRfc291cmNlcyArPSBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0RPTVN0cmlu
Z01hcC5oIFwKIAlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRE9NVG9rZW5MaXN0LmNwcCBcCiAJ
RGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0RPTVRva2VuTGlzdC5oIFwKLQlEZXJpdmVkU291cmNl
cy9XZWJDb3JlL0pTRE9NVVJMLmNwcCBcCi0JRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0RPTVVS
TC5oIFwKIAlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRE9NV2luZG93LmNwcCBcCiAJRGVyaXZl
ZFNvdXJjZXMvV2ViQ29yZS9KU0RPTVdpbmRvdy5oIFwKIAlEZXJpdmVkU291cmNlcy9XZWJDb3Jl
L0pTRHluYW1pY3NDb21wcmVzc29yTm9kZS5oIFwKQEAgLTUyNSw2ICs1MjMsOCBAQCB3ZWJjb3Jl
X2J1aWx0X3NvdXJjZXMgKz0gXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNUcmVlV2Fsa2Vy
LmggXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNVSUV2ZW50LmNwcCBcCiAJRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS9KU1VJRXZlbnQuaCBcCisJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1VS
TC5jcHAgXAorCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNVUkwuaCBcCiAJRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS9KU1VpbnQxNkFycmF5LmNwcCBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9K
U1VpbnQxNkFycmF5LmggXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNVaW50MzJBcnJheS5j
cHAgXApAQCAtNzQ0LDcgKzc0NCw2IEBAIGRvbV9iaW5kaW5nX2lkbHMgKz0gXAogCSQoV2ViQ29y
ZSkvaHRtbC9ET01Gb3JtRGF0YS5pZGwgXAogCSQoV2ViQ29yZSkvaHRtbC9ET01TZXR0YWJsZVRv
a2VuTGlzdC5pZGwgXAogCSQoV2ViQ29yZSkvaHRtbC9ET01Ub2tlbkxpc3QuaWRsIFwKLQkkKFdl
YkNvcmUpL2h0bWwvRE9NVVJMLmlkbCBcCiAJJChXZWJDb3JlKS9odG1sL0hUTUxBbGxDb2xsZWN0
aW9uLmlkbCBcCiAJJChXZWJDb3JlKS9odG1sL0hUTUxBbmNob3JFbGVtZW50LmlkbCBcCiAJJChX
ZWJDb3JlKS9odG1sL0hUTUxBcHBsZXRFbGVtZW50LmlkbCBcCkBAIC04MjYsNiArODI1LDcgQEAg
ZG9tX2JpbmRpbmdfaWRscyArPSBcCiAJJChXZWJDb3JlKS9odG1sL1RleHRUcmFja0N1ZS5pZGwg
XAogCSQoV2ViQ29yZSkvaHRtbC9UZXh0VHJhY2tDdWVMaXN0LmlkbCBcCiAJJChXZWJDb3JlKS9o
dG1sL1RpbWVSYW5nZXMuaWRsIFwKKwkkKFdlYkNvcmUpL2h0bWwvVVJMLmlkbCBcCiAJJChXZWJD
b3JlKS9odG1sL1ZhbGlkaXR5U3RhdGUuaWRsIFwKIAkkKFdlYkNvcmUpL2h0bWwvVm9pZENhbGxi
YWNrLmlkbCBcCiAJJChXZWJDb3JlKS9odG1sL2NhbnZhcy9BcnJheUJ1ZmZlci5pZGwgXApAQCAt
MTk3MCw4ICsxOTcwLDYgQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9o
dG1sL0RhdGVUaW1lTG9jYWxJbnB1dFR5cGUuaCBcCiAJU291cmNlL1dlYkNvcmUvaHRtbC9ET01G
b3JtRGF0YS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL2h0bWwvRE9NRm9ybURhdGEuaCBcCi0JU291
cmNlL1dlYkNvcmUvaHRtbC9ET01VUkwuY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9odG1sL0RPTVVS
TC5oIFwKIAlTb3VyY2UvV2ViQ29yZS9odG1sL0VtYWlsSW5wdXRUeXBlLmNwcCBcCiAJU291cmNl
L1dlYkNvcmUvaHRtbC9FbWFpbElucHV0VHlwZS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9odG1sL0Zp
bGVJbnB1dFR5cGUuY3BwIFwKQEAgLTIzMDAsNiArMjI5OCw4IEBAIHdlYmNvcmVfc291cmNlcyAr
PSBcCiAJU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9XZWJWVFRUb2tlbi5oIFwKIAlTb3VyY2Uv
V2ViQ29yZS9odG1sL3RyYWNrL1dlYlZUVFRva2VuaXplci5oIFwKIAlTb3VyY2UvV2ViQ29yZS9o
dG1sL3RyYWNrL1dlYlZUVFRva2VuaXplci5jcHAgXAorCVNvdXJjZS9XZWJDb3JlL2h0bWwvVVJM
LmNwcCBcCisJU291cmNlL1dlYkNvcmUvaHRtbC9VUkwuaCBcCiAJU291cmNlL1dlYkNvcmUvaHRt
bC9VUkxJbnB1dFR5cGUuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9odG1sL1VSTElucHV0VHlwZS5o
IFwKIAlTb3VyY2UvV2ViQ29yZS9odG1sL1ZhbGlkYXRpb25NZXNzYWdlLmNwcCBcCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9UYXJnZXQucHJpCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL1Rh
cmdldC5wcmkJKHJldmlzaW9uIDEwNzIxNSkKKysrIFNvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkJ
KHdvcmtpbmcgY29weSkKQEAgLTY5NSw3ICs2OTUsNyBAQCBTT1VSQ0VTICs9IFwKICAgICBodG1s
L0RPTUZvcm1EYXRhLmNwcCBcCiAgICAgaHRtbC9ET01TZXR0YWJsZVRva2VuTGlzdC5jcHAgXAog
ICAgIGh0bWwvRE9NVG9rZW5MaXN0LmNwcCBcCi0gICAgaHRtbC9ET01VUkwuY3BwIFwKKyAgICBo
dG1sL1VSTC5jcHAgXAogICAgIGh0bWwvRGF0ZUlucHV0VHlwZS5jcHAgXAogICAgIGh0bWwvRGF0
ZVRpbWVJbnB1dFR5cGUuY3BwIFwKICAgICBodG1sL0RhdGVUaW1lTG9jYWxJbnB1dFR5cGUuY3Bw
IFwKQEAgLTE3NzksNyArMTc3OSw3IEBAIEhFQURFUlMgKz0gXAogICAgIGh0bWwvRE9NRm9ybURh
dGEuaCBcCiAgICAgaHRtbC9ET01TZXR0YWJsZVRva2VuTGlzdC5oIFwKICAgICBodG1sL0RPTVRv
a2VuTGlzdC5oIFwKLSAgICBodG1sL0RPTVVSTC5oIFwKKyAgICBodG1sL1VSTC5oIFwKICAgICBo
dG1sL0Zvcm1Bc3NvY2lhdGVkRWxlbWVudC5oIFwKICAgICBodG1sL0Zvcm1EYXRhTGlzdC5oIFwK
ICAgICBodG1sL0ZUUERpcmVjdG9yeURvY3VtZW50LmggXApJbmRleDogU291cmNlL1dlYkNvcmUv
V2ViQ29yZS5neXBpCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQko
cmV2aXNpb24gMTA3MjE1KQorKysgU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpCSh3b3JraW5n
IGNvcHkpCkBAIC04NTQsNyArODU0LDYgQEAKICAgICAgICAgICAgICdodG1sL0RPTUZvcm1EYXRh
LmlkbCcsCiAgICAgICAgICAgICAnaHRtbC9ET01TZXR0YWJsZVRva2VuTGlzdC5pZGwnLAogICAg
ICAgICAgICAgJ2h0bWwvRE9NVG9rZW5MaXN0LmlkbCcsCi0gICAgICAgICAgICAnaHRtbC9ET01V
UkwuaWRsJywKICAgICAgICAgICAgICdodG1sL0hUTUxBbGxDb2xsZWN0aW9uLmlkbCcsCiAgICAg
ICAgICAgICAnaHRtbC9IVE1MQW5jaG9yRWxlbWVudC5pZGwnLAogICAgICAgICAgICAgJ2h0bWwv
SFRNTEFwcGxldEVsZW1lbnQuaWRsJywKQEAgLTkzNiw2ICs5MzUsNyBAQAogICAgICAgICAgICAg
J2h0bWwvVGV4dFRyYWNrQ3VlLmlkbCcsCiAgICAgICAgICAgICAnaHRtbC9UZXh0VHJhY2tDdWVM
aXN0LmlkbCcsCiAgICAgICAgICAgICAnaHRtbC9UaW1lUmFuZ2VzLmlkbCcsCisgICAgICAgICAg
ICAnaHRtbC9VUkwuaWRsJywKICAgICAgICAgICAgICdodG1sL1ZhbGlkaXR5U3RhdGUuaWRsJywK
ICAgICAgICAgICAgICdodG1sL1ZvaWRDYWxsYmFjay5pZGwnLAogICAgICAgICAgICAgJ2h0bWwv
Y2FudmFzL0FycmF5QnVmZmVyLmlkbCcsCkBAIC01MTY4LDggKzUxNjgsNiBAQAogICAgICAgICAg
ICAgJ2h0bWwvRE9NU2V0dGFibGVUb2tlbkxpc3QuaCcsCiAgICAgICAgICAgICAnaHRtbC9ET01U
b2tlbkxpc3QuY3BwJywKICAgICAgICAgICAgICdodG1sL0RPTVRva2VuTGlzdC5oJywKLSAgICAg
ICAgICAgICdodG1sL0RPTVVSTC5jcHAnLAotICAgICAgICAgICAgJ2h0bWwvRE9NVVJMLmgnLAog
ICAgICAgICAgICAgJ2h0bWwvRGF0ZUlucHV0VHlwZS5jcHAnLAogICAgICAgICAgICAgJ2h0bWwv
RGF0ZUlucHV0VHlwZS5oJywKICAgICAgICAgICAgICdodG1sL0RhdGVUaW1lSW5wdXRUeXBlLmNw
cCcsCkBAIC01NDA1LDYgKzU0MDMsOCBAQAogICAgICAgICAgICAgJ2h0bWwvVGltZUlucHV0VHlw
ZS5oJywKICAgICAgICAgICAgICdodG1sL1RpbWVSYW5nZXMuY3BwJywKICAgICAgICAgICAgICdo
dG1sL1RpbWVSYW5nZXMuaCcsCisgICAgICAgICAgICAnaHRtbC9VUkwuY3BwJywKKyAgICAgICAg
ICAgICdodG1sL1VSTC5oJywKICAgICAgICAgICAgICdodG1sL1VSTElucHV0VHlwZS5jcHAnLAog
ICAgICAgICAgICAgJ2h0bWwvVVJMSW5wdXRUeXBlLmgnLAogICAgICAgICAgICAgJ2h0bWwvVmFs
aWRhdGlvbk1lc3NhZ2UuY3BwJywKQEAgLTcwNDMsOCArNzA0Myw2IEBACiAgICAgICAgICAgICAn
PChQUk9EVUNUX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0RPTVN0cmluZ01hcC5oJywK
ICAgICAgICAgICAgICc8KFBST0RVQ1RfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRE9N
VG9rZW5MaXN0LmNwcCcsCiAgICAgICAgICAgICAnPChQUk9EVUNUX0RJUikvRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS9KU0RPTVRva2VuTGlzdC5oJywKLSAgICAgICAgICAgICc8KFBST0RVQ1RfRElS
KS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRE9NVVJMLmNwcCcsCi0gICAgICAgICAgICAnPChQ
Uk9EVUNUX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0RPTVVSTC5oJywKICAgICAgICAg
ICAgICc8KFBST0RVQ1RfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRE9NV2luZG93LmNw
cCcsCiAgICAgICAgICAgICAnPChQUk9EVUNUX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9K
U0RhdGFWaWV3LmNwcCcsCiAgICAgICAgICAgICAnPChQUk9EVUNUX0RJUikvRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS9KU0RhdGFWaWV3LmgnLApAQCAtNzg0MCw2ICs3ODM4LDggQEAKICAgICAgICAg
ICAgICc8KFBST0RVQ1RfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTVHJlZVdhbGtlci5o
JywKICAgICAgICAgICAgICc8KFBST0RVQ1RfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pT
VUlFdmVudC5jcHAnLAogICAgICAgICAgICAgJzwoUFJPRFVDVF9ESVIpL0Rlcml2ZWRTb3VyY2Vz
L1dlYkNvcmUvSlNVSUV2ZW50LmgnLAorICAgICAgICAgICAgJzwoUFJPRFVDVF9ESVIpL0Rlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvSlNVUkwuY3BwJywKKyAgICAgICAgICAgICc8KFBST0RVQ1RfRElS
KS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTVVJMLmgnLAogICAgICAgICAgICAgJzwoUFJPRFVD
VF9ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNVaW50MTZBcnJheS5jcHAnLAogICAgICAg
ICAgICAgJzwoUFJPRFVDVF9ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNVaW50MTZBcnJh
eS5oJywKICAgICAgICAgICAgICc8KFBST0RVQ1RfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3Jl
L0pTVWludDMyQXJyYXkuY3BwJywKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9q
L1dlYkNvcmUudmNwcm9qCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNw
cm9qL1dlYkNvcmUudmNwcm9qCShyZXZpc2lvbiAxMDcyMTUpCisrKyBTb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagkod29ya2luZyBjb3B5KQpAQCAtNDA1OCw3ICs0
MDU4LDcgQEAKIAkJCQk+CiAJCQk8L0ZpbGU+CiAJCQk8RmlsZQotCQkJCVJlbGF0aXZlUGF0aD0i
JChDb25maWd1cmF0aW9uQnVpbGREaXIpXG9ialwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNl
c1xKU0RPTVVSTC5jcHAiCisJCQkJUmVsYXRpdmVQYXRoPSIkKENvbmZpZ3VyYXRpb25CdWlsZERp
cilcb2JqXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTVVJMLmNwcCIKIAkJCQk+CiAJ
CQkJPEZpbGVDb25maWd1cmF0aW9uCiAJCQkJCU5hbWU9IkRlYnVnfFdpbjMyIgpAQCAtNDExMCw3
ICs0MTEwLDcgQEAKIAkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgogCQkJPC9GaWxlPgogCQkJPEZp
bGUKLQkJCQlSZWxhdGl2ZVBhdGg9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmpcJChQcm9q
ZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNET01VUkwuaCIKKwkJCQlSZWxhdGl2ZVBhdGg9IiQo
Q29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmpcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNc
SlNVUkwuaCIKIAkJCQk+CiAJCQk8L0ZpbGU+CiAJCQk8RmlsZQpAQCAtNTU4NTAsMTEgKzU1ODUw
LDExIEBACiAJCQkJPgogCQkJPC9GaWxlPgogCQkJPEZpbGUKLQkJCQlSZWxhdGl2ZVBhdGg9Ii4u
XGh0bWxcRE9NVVJMLmNwcCIKKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcVVJMLmNwcCIKIAkJ
CQk+CiAJCQk8L0ZpbGU+CiAJCQk8RmlsZQotCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFxET01V
UkwuaCIKKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcVVJMLmgiCiAJCQkJPgogCQkJPC9GaWxl
PgogCQkJPEZpbGUKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvago9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oJKHJldmlzaW9uIDEwNzIxNSkKKysrIFNvdXJjZS9XZWJDb3JlL1dl
YkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5KQpAQCAtNzY4LDEw
ICs3NjgsMTAgQEAKIAkJMkUyRDk5RUExMEUyQkMzODAwNDk2MzM3IC8qIERPTUJsb2JJbnRlcm5h
bC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkUyRDk5
RTkxMEUyQkMzODAwNDk2MzM3IC8qIERPTUJsb2JJbnRlcm5hbC5oICovOyB9OwogCQkyRTJEOTlF
QjEwRTJCRDM5MDA0OTYzMzcgLyogRE9NQmxvYi5oIGluIENvcHkgR2VuZXJhdGVkIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkUyRDk5RTUxMEUyQkMxQzAwNDk2
MzM3IC8qIERPTUJsb2IuaCAqLzsgfTsKIAkJMkUyRDk5RUMxMEUyQkQzOTAwNDk2MzM3IC8qIERP
TUJsb2JJbnRlcm5hbC5oIGluIENvcHkgR2VuZXJhdGVkIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMkUyRDk5RTkxMEUyQkMzODAwNDk2MzM3IC8qIERPTUJsb2JJ
bnRlcm5hbC5oICovOyB9OwotCQkyRTM3REZEQTEyREJBRkI4MDBBNkIyMzMgLyogRE9NVVJMLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJFMzdERkQ3
MTJEQkFGQjgwMEE2QjIzMyAvKiBET01VUkwuY3BwICovOyB9OwotCQkyRTM3REZEQjEyREJBRkI4
MDBBNkIyMzMgLyogRE9NVVJMLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAyRTM3REZEODEyREJBRkI4MDBBNkIyMzMgLyogRE9NVVJMLmggKi87IH07Ci0J
CTJFMzdFMDA1MTJEQkM1QTQwMEE2QjIzMyAvKiBKU0RPTVVSTC5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRTM3RTAwMzEyREJDNUE0MDBBNkIyMzMg
LyogSlNET01VUkwuY3BwICovOyB9OwotCQkyRTM3RTAwNjEyREJDNUE0MDBBNkIyMzMgLyogSlNE
T01VUkwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJF
MzdFMDA0MTJEQkM1QTQwMEE2QjIzMyAvKiBKU0RPTVVSTC5oICovOyB9OworCQkyRTM3REZEQTEy
REJBRkI4MDBBNkIyMzMgLyogVVJMLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDJFMzdERkQ3MTJEQkFGQjgwMEE2QjIzMyAvKiBVUkwuY3BwICovOyB9
OworCQkyRTM3REZEQjEyREJBRkI4MDBBNkIyMzMgLyogVVJMLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRTM3REZEODEyREJBRkI4MDBBNkIyMzMgLyog
VVJMLmggKi87IH07CisJCTJFMzdFMDA1MTJEQkM1QTQwMEE2QjIzMyAvKiBKU1VSTC5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRTM3RTAwMzEyREJD
NUE0MDBBNkIyMzMgLyogSlNVUkwuY3BwICovOyB9OworCQkyRTM3RTAwNjEyREJDNUE0MDBBNkIy
MzMgLyogSlNVUkwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDJFMzdFMDA0MTJEQkM1QTQwMEE2QjIzMyAvKiBKU1VSTC5oICovOyB9OwogCQkyRTNCQkYw
NzExNjJEQTExMDBCOTQwOUEgLyogVVVJRC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAyRTNCQkYwNTExNjJEQTExMDBCOTQwOUEgLyogVVVJRC5jcHAg
Ki87IH07CiAJCTJFM0JCRjA4MTE2MkRBMTEwMEI5NDA5QSAvKiBVVUlELmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRTNCQkYwNjExNjJEQTExMDBCOTQw
OUEgLyogVVVJRC5oICovOyB9OwogCQkyRTNCQzBDQTExN0QzRTA4MDBCOTQwOUEgLyogSlNGaWxl
RXJyb3IuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MkUzQkMwQzgxMTdEM0UwODAwQjk0MDlBIC8qIEpTRmlsZUVycm9yLmNwcCAqLzsgfTsKQEAgLTc1
MjUsMTEgKzc1MjUsMTEgQEAKIAkJMkUyRDk5RTUxMEUyQkMxQzAwNDk2MzM3IC8qIERPTUJsb2Iu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NQmxvYi5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQkyRTJEOTlFNjEwRTJCQzFDMDA0OTYzMzcgLyogRE9NQmxvYi5t
bSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IERPTUJsb2IubW07IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTJFMkQ5OUU5MTBFMkJDMzgwMDQ5NjMzNyAvKiBE
T01CbG9iSW50ZXJuYWwuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NQmxv
YkludGVybmFsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTJFMzdERkQ3MTJEQkFG
QjgwMEE2QjIzMyAvKiBET01VUkwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gRE9NVVJMLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMkUzN0RGRDgx
MkRCQUZCODAwQTZCMjMzIC8qIERPTVVSTC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBET01VUkwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMkUzN0RGRDkxMkRC
QUZCODAwQTZCMjMzIC8qIERPTVVSTC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRE9NVVJM
LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMkUzN0UwMDMxMkRCQzVBNDAwQTZC
MjMzIC8qIEpTRE9NVVJMLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEpTRE9NVVJMLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMkUzN0UwMDQxMkRC
QzVBNDAwQTZCMjMzIC8qIEpTRE9NVVJMLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEpTRE9NVVJMLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJFMzdERkQ3MTJE
QkFGQjgwMEE2QjIzMyAvKiBVUkwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gVVJMLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkUzN0RGRDgxMkRC
QUZCODAwQTZCMjMzIC8qIFVSTC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBV
UkwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkUzN0RGRDkxMkRCQUZCODAwQTZC
MjMzIC8qIFVSTC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gVVJMLmlkbDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkUzN0UwMDMxMkRCQzVBNDAwQTZCMjMzIC8qIEpTVVJMLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTVVJMLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkUzN0UwMDQxMkRCQzVBNDAwQTZCMjMzIC8qIEpTVVJM
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTVVJMLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTJFM0JCRjA1MTE2MkRBMTEwMEI5NDA5QSAvKiBVVUlELmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFVVSUQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQkyRTNCQkYwNjExNjJEQTExMDBCOTQwOUEgLyogVVVJRC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBVVUlELmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTJFM0JDMEM4MTE3RDNFMDgwMEI5NDA5QSAvKiBKU0ZpbGVFcnJvci5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0ZpbGVFcnJvci5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xNjYzOCw5ICsxNjYzOCw5IEBACiAJCQkJNzZG
QzJCMDgxMjM3MERBMDAwNkE5OTFBIC8qIERPTVRva2VuTGlzdC5jcHAgKi8sCiAJCQkJNzZGQzJC
MDkxMjM3MERBMDAwNkE5OTFBIC8qIERPTVRva2VuTGlzdC5oICovLAogCQkJCTc2RkMyQjBBMTIz
NzBEQTAwMDZBOTkxQSAvKiBET01Ub2tlbkxpc3QuaWRsICovLAotCQkJCTJFMzdERkQ3MTJEQkFG
QjgwMEE2QjIzMyAvKiBET01VUkwuY3BwICovLAotCQkJCTJFMzdERkQ4MTJEQkFGQjgwMEE2QjIz
MyAvKiBET01VUkwuaCAqLywKLQkJCQkyRTM3REZEOTEyREJBRkI4MDBBNkIyMzMgLyogRE9NVVJM
LmlkbCAqLywKKwkJCQkyRTM3REZENzEyREJBRkI4MDBBNkIyMzMgLyogVVJMLmNwcCAqLywKKwkJ
CQkyRTM3REZEODEyREJBRkI4MDBBNkIyMzMgLyogVVJMLmggKi8sCisJCQkJMkUzN0RGRDkxMkRC
QUZCODAwQTZCMjMzIC8qIFVSTC5pZGwgKi8sCiAJCQkJRjU1QjNEODcxMjUxRjEyRDAwM0VGMjY5
IC8qIEVtYWlsSW5wdXRUeXBlLmNwcCAqLywKIAkJCQlGNTVCM0Q4ODEyNTFGMTJEMDAzRUYyNjkg
LyogRW1haWxJbnB1dFR5cGUuaCAqLywKIAkJCQlGNTVCM0Q4OTEyNTFGMTJEMDAzRUYyNjkgLyog
RmlsZUlucHV0VHlwZS5jcHAgKi8sCkBAIC0xNzI1Niw4ICsxNzI1Niw4IEBACiAJCQkJNEFDQkMw
QzkxMjcxM0QwQTAwOTRGOUIyIC8qIEpTRE9NU2V0dGFibGVUb2tlbkxpc3QuaCAqLywKIAkJCQk3
Njk0NTYzQTEyMTREOTdDMDAwN0NCQUUgLyogSlNET01Ub2tlbkxpc3QuY3BwICovLAogCQkJCTc2
OTQ1NjNCMTIxNEQ5N0MwMDA3Q0JBRSAvKiBKU0RPTVRva2VuTGlzdC5oICovLAotCQkJCTJFMzdF
MDAzMTJEQkM1QTQwMEE2QjIzMyAvKiBKU0RPTVVSTC5jcHAgKi8sCi0JCQkJMkUzN0UwMDQxMkRC
QzVBNDAwQTZCMjMzIC8qIEpTRE9NVVJMLmggKi8sCisJCQkJMkUzN0UwMDMxMkRCQzVBNDAwQTZC
MjMzIC8qIEpTVVJMLmNwcCAqLywKKwkJCQkyRTM3RTAwNDEyREJDNUE0MDBBNkIyMzMgLyogSlNV
UkwuaCAqLywKIAkJCQk0OUVFQ0VGNDEwNTA3MEM0MDAwOTlGQUIgLyogSlNGbG9hdDMyQXJyYXku
Y3BwICovLAogCQkJCTQ5RUVDRUY1MTA1MDcwQzQwMDA5OUZBQiAvKiBKU0Zsb2F0MzJBcnJheS5o
ICovLAogCQkJCTZFQkM1RUFEMTM4QjUwRjIwMEEwQ0Y4QSAvKiBKU0Zsb2F0NjRBcnJheS5jcHAg
Ki8sCkBAIC0yMTk5Nyw3ICsyMTk5Nyw3IEBACiAJCQkJODUwQjQxQzMwQUQ5RTdFNzAwQTZFRDRG
IC8qIERPTVRyZWVXYWxrZXJJbnRlcm5hbC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJODVDN0Y0OTEw
QUFGNzlEQzAwNDAxNEREIC8qIERPTVVJRXZlbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTg1OTg5
REQwMEFDQzhCQkQwMEEwQkM1MSAvKiBET01VSUV2ZW50SW50ZXJuYWwuaCBpbiBIZWFkZXJzICov
LAotCQkJCTJFMzdERkRCMTJEQkFGQjgwMEE2QjIzMyAvKiBET01VUkwuaCBpbiBIZWFkZXJzICov
LAorCQkJCTJFMzdERkRCMTJEQkFGQjgwMEE2QjIzMyAvKiBVUkwuaCBpbiBIZWFkZXJzICovLAog
CQkJCTE1Qzc3MEE2MTAwRDQxQ0QwMDVCQTI2NyAvKiBET01WYWxpZGl0eVN0YXRlLmggaW4gSGVh
ZGVycyAqLywKIAkJCQlCQzFBMzdDMDA5N0M3MTVGMDAxOUYzRDggLyogRE9NVmlld3MuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTMxOTQ2MTZBMTMwMjBCNjYwMDRCQjNGOCAvKiBET01XZWJLaXRBbmlt
YXRpb24uaCBpbiBIZWFkZXJzICovLApAQCAtMjI1OTgsNyArMjI1OTgsNyBAQAogCQkJCUM1MTM3
Q0YzMTFBNTgzNzgwMDRBREI5OSAvKiBKU0RPTVN0cmluZ0xpc3QuaCBpbiBIZWFkZXJzICovLAog
CQkJCUJDNjQ2NDk4MTFEODIzNDkwMDY0NTVCMCAvKiBKU0RPTVN0cmluZ01hcC5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJNzY5NDU2M0QxMjE0RDk3QzAwMDdDQkFFIC8qIEpTRE9NVG9rZW5MaXN0Lmgg
aW4gSGVhZGVycyAqLywKLQkJCQkyRTM3RTAwNjEyREJDNUE0MDBBNkIyMzMgLyogSlNET01VUkwu
aCBpbiBIZWFkZXJzICovLAorCQkJCTJFMzdFMDA2MTJEQkM1QTQwMEE2QjIzMyAvKiBKU1VSTC5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJQkM2OTMyNzQwRDdFMjkzOTAwQUU0NEQxIC8qIEpTRE9NV2lu
ZG93QmFzZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNjUyRkJCQkMwREUyN0NCNjAwMDFEMzg2IC8q
IEpTRE9NV2luZG93Q3VzdG9tLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQ0JGQjUzRDBEQ0QyOUNG
MDAxOUIzRTUgLyogSlNET01XaW5kb3dTaGVsbC5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNTEwNiw3
ICsyNTEwNiw3IEBACiAJCQkJNzZGQzJCMEIxMjM3MERBMDAwNkE5OTFBIC8qIERPTVRva2VuTGlz
dC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk4NTUyNkNEMzBBQjBCN0RBMDAwMzAyRUEgLyogRE9N
VHJlZVdhbGtlci5tbSBpbiBTb3VyY2VzICovLAogCQkJCTg1QzdGNDkyMEFBRjc5REMwMDQwMTRE
RCAvKiBET01VSUV2ZW50Lm1tIGluIFNvdXJjZXMgKi8sCi0JCQkJMkUzN0RGREExMkRCQUZCODAw
QTZCMjMzIC8qIERPTVVSTC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkyRTM3REZEQTEyREJBRkI4
MDBBNkIyMzMgLyogVVJMLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJDMUEzN0JGMDk3QzcxNUYw
MDE5RjNEOCAvKiBET01VdGlsaXR5Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMTVDNzcwQTUxMDBE
NDFDRDAwNUJBMjY3IC8qIERPTVZhbGlkaXR5U3RhdGUubW0gaW4gU291cmNlcyAqLywKIAkJCQkz
MTk0NjE2QjEzMDIwQjY2MDA0QkIzRjggLyogRE9NV2ViS2l0QW5pbWF0aW9uLm1tIGluIFNvdXJj
ZXMgKi8sCkBAIC0yNTY2Niw3ICsyNTY2Niw3IEBACiAJCQkJQkM2NDY0OUMxMUQ4MjM4QzAwNjQ1
NUIwIC8qIEpTRE9NU3RyaW5nTWFwQ3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTc2OTQ1
NjNDMTIxNEQ5N0MwMDA3Q0JBRSAvKiBKU0RPTVRva2VuTGlzdC5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQkxNEUwQkM1NjEzNjE0OEE4MDAyQUQxMkUgLyogSlNET01Ub2tlbkxpc3RDdXN0b20uY3Bw
IGluIFNvdXJjZXMgKi8sCi0JCQkJMkUzN0UwMDUxMkRCQzVBNDAwQTZCMjMzIC8qIEpTRE9NVVJM
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJFMzdFMDA1MTJEQkM1QTQwMEE2QjIzMyAvKiBKU1VS
TC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkxNDAzQkEwQzA5RUIxOEM3MDA3OTdDN0YgLyogSlNE
T01XaW5kb3cuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkM2OTMyNzMwRDdFMjkzOTAwQUU0NEQx
IC8qIEpTRE9NV2luZG93QmFzZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0Q5QzI2MjBDMTdB
QTY3MDA1QzkwQTIgLyogSlNET01XaW5kb3dDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9odG1sL0RPTVVSTC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvaHRtbC9ET01VUkwuY3BwCShyZXZpc2lvbiAxMDcyMTUpCisrKyBTb3VyY2UvV2ViQ29y
ZS9odG1sL0RPTVVSTC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEsMTEzICswLDAgQEAKLS8qCi0g
KiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAq
IENvcHlyaWdodCAoQykgMjAxMiBNb3Rvcm9sYSBNb2JpbGl0eSBJbmMuCi0gKgotICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgotICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBBTkQgSVRTIENP
TlRSSUJVVE9SUyAiQVMgSVMiIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRSBBUkUKLSAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIE9SIElUUyBD
T05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCi0gKiAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7Ci0gKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQKLSAqIE9OIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKLSAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUg
ImNvbmZpZy5oIgotCi0jaWYgRU5BQkxFKEJMT0IpCi0KLSNpbmNsdWRlICJET01VUkwuaCIKLQot
I2luY2x1ZGUgIkFjdGl2ZURPTU9iamVjdC5oIgotI2luY2x1ZGUgIkJsb2IuaCIKLSNpbmNsdWRl
ICJCbG9iVVJMLmgiCi0jaW5jbHVkZSAiS1VSTC5oIgotI2luY2x1ZGUgIlB1YmxpY1VSTE1hbmFn
ZXIuaCIKLSNpbmNsdWRlICJTY3JpcHRFeGVjdXRpb25Db250ZXh0LmgiCi0jaW5jbHVkZSAiU2Vj
dXJpdHlPcmlnaW4uaCIKLSNpbmNsdWRlICJUaHJlYWRhYmxlQmxvYlJlZ2lzdHJ5LmgiCi0jaW5j
bHVkZSA8d3RmL1Bhc3NPd25QdHIuaD4KLSNpbmNsdWRlIDx3dGYvTWFpblRocmVhZC5oPgotCi0j
aWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKLSNpbmNsdWRlICJNZWRpYVN0cmVhbS5oIgotI2luY2x1
ZGUgIk1lZGlhU3RyZWFtUmVnaXN0cnkuaCIKLSNlbmRpZgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7
Ci0KLSNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQotU3RyaW5nIERPTVVSTDo6Y3JlYXRlT2JqZWN0
VVJMKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIE1lZGlh
U3RyZWFtKiBzdHJlYW0pCi17Ci0gICAgaWYgKCFzY3JpcHRFeGVjdXRpb25Db250ZXh0IHx8ICFz
dHJlYW0pCi0gICAgICAgIHJldHVybiBTdHJpbmcoKTsKLQotICAgIEtVUkwgcHVibGljVVJMID0g
QmxvYlVSTDo6Y3JlYXRlUHVibGljVVJMKHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQtPnNlY3VyaXR5
T3JpZ2luKCkpOwotICAgIGlmIChwdWJsaWNVUkwuaXNFbXB0eSgpKQotICAgICAgICByZXR1cm4g
U3RyaW5nKCk7Ci0KLSAgICAvLyBTaW5jZSBXZWJXb3JrZXJzIGNhbm5vdCBvYnRhaW4gU3RyZWFt
IG9iamVjdHMsIHdlIHNob3VsZCBiZSBvbiB0aGUgbWFpbiB0aHJlYWQuCi0gICAgQVNTRVJUKGlz
TWFpblRocmVhZCgpKTsKLQotICAgIE1lZGlhU3RyZWFtUmVnaXN0cnk6OnJlZ2lzdHJ5KCkucmVn
aXN0ZXJNZWRpYVN0cmVhbVVSTChwdWJsaWNVUkwsIHN0cmVhbSk7Ci0gICAgc2NyaXB0RXhlY3V0
aW9uQ29udGV4dC0+cHVibGljVVJMTWFuYWdlcigpLnN0cmVhbVVSTHMoKS5hZGQocHVibGljVVJM
LnN0cmluZygpKTsKLQotICAgIHJldHVybiBwdWJsaWNVUkwuc3RyaW5nKCk7Ci19Ci0jZW5kaWYK
LQotU3RyaW5nIERPTVVSTDo6Y3JlYXRlT2JqZWN0VVJMKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQq
IHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIEJsb2IqIGJsb2IpCi17Ci0gICAgaWYgKCFzY3JpcHRF
eGVjdXRpb25Db250ZXh0IHx8ICFibG9iKQotICAgICAgICByZXR1cm4gU3RyaW5nKCk7Ci0KLSAg
ICBLVVJMIHB1YmxpY1VSTCA9IEJsb2JVUkw6OmNyZWF0ZVB1YmxpY1VSTChzY3JpcHRFeGVjdXRp
b25Db250ZXh0LT5zZWN1cml0eU9yaWdpbigpKTsKLSAgICBpZiAocHVibGljVVJMLmlzRW1wdHko
KSkKLSAgICAgICAgcmV0dXJuIFN0cmluZygpOwotCi0gICAgVGhyZWFkYWJsZUJsb2JSZWdpc3Ry
eTo6cmVnaXN0ZXJCbG9iVVJMKHB1YmxpY1VSTCwgYmxvYi0+dXJsKCkpOwotICAgIHNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQtPnB1YmxpY1VSTE1hbmFnZXIoKS5ibG9iVVJMcygpLmFkZChwdWJsaWNV
Ukwuc3RyaW5nKCkpOwotCi0gICAgcmV0dXJuIHB1YmxpY1VSTC5zdHJpbmcoKTsKLX0KLQotdm9p
ZCBET01VUkw6OnJldm9rZU9iamVjdFVSTChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRF
eGVjdXRpb25Db250ZXh0LCBjb25zdCBTdHJpbmcmIHVybFN0cmluZykKLXsKLSAgICBpZiAoIXNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQpCi0gICAgICAgIHJldHVybjsKLQotICAgIEtVUkwgdXJsKEtV
UkwoKSwgdXJsU3RyaW5nKTsKLQotICAgIEhhc2hTZXQ8U3RyaW5nPiYgYmxvYlVSTHMgPSBzY3Jp
cHRFeGVjdXRpb25Db250ZXh0LT5wdWJsaWNVUkxNYW5hZ2VyKCkuYmxvYlVSTHMoKTsKLSAgICBp
ZiAoYmxvYlVSTHMuY29udGFpbnModXJsLnN0cmluZygpKSkgewotICAgICAgICBUaHJlYWRhYmxl
QmxvYlJlZ2lzdHJ5Ojp1bnJlZ2lzdGVyQmxvYlVSTCh1cmwpOwotICAgICAgICBibG9iVVJMcy5y
ZW1vdmUodXJsLnN0cmluZygpKTsKLSAgICB9Ci0KLSNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQot
ICAgIEhhc2hTZXQ8U3RyaW5nPiYgc3RyZWFtVVJMcyA9IHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQt
PnB1YmxpY1VSTE1hbmFnZXIoKS5zdHJlYW1VUkxzKCk7Ci0gICAgaWYgKHN0cmVhbVVSTHMuY29u
dGFpbnModXJsLnN0cmluZygpKSkgewotICAgICAgICAvLyBGSVhNRTogbWFrZSBzdXJlIG9mIHRo
aXMgYXNzZXJ0aW9uIGJlbG93LiBSYWlzZSBhIHNwZWMgcXVlc3Rpb24gaWYgcmVxdWlyZWQuCi0g
ICAgICAgIC8vIFNpbmNlIFdlYldvcmtlcnMgY2Fubm90IG9idGFpbiBTdHJlYW0gb2JqZWN0cywg
d2Ugc2hvdWxkIGJlIG9uIHRoZSBtYWluIHRocmVhZC4KLSAgICAgICAgQVNTRVJUKGlzTWFpblRo
cmVhZCgpKTsKLSAgICAgICAgTWVkaWFTdHJlYW1SZWdpc3RyeTo6cmVnaXN0cnkoKS51bnJlZ2lz
dGVyTWVkaWFTdHJlYW1VUkwodXJsKTsKLSAgICAgICAgc3RyZWFtVVJMcy5yZW1vdmUodXJsLnN0
cmluZygpKTsKLSAgICB9Ci0jZW5kaWYKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0j
ZW5kaWYgLy8gRU5BQkxFKEJMT0IpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0RPTVVSTC5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvRE9NVVJMLmgJKHJldmlzaW9uIDEw
NzIxNSkKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvRE9NVVJMLmgJKHdvcmtpbmcgY29weSkKQEAg
LTEsNjAgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgotICogQ29weXJpZ2h0IChDKSAyMDEyIE1vdG9yb2xhIE1vYmlsaXR5
IEluYy4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0g
KiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCi0gKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIEFQUExFIEFORCBJVFMgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5EIEFOWQotICogRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQotICogRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMKLSAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKLSAqIExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORAotICogT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRgotICogVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KLSAqLwotCi0jaWZuZGVmIERPTVVSTF9oCi0jZGVmaW5lIERPTVVSTF9oCi0KLSNpbmNsdWRl
ICJLVVJMLmgiCi0jaW5jbHVkZSAiUGxhdGZvcm1TdHJpbmcuaCIKLSNpbmNsdWRlIDx3dGYvSGFz
aFNldC5oPgotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZkNv
dW50ZWQuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBCbG9iOwotY2xhc3MgTWVk
aWFTdHJlYW07Ci1jbGFzcyBTY3JpcHRFeGVjdXRpb25Db250ZXh0OwotCi1jbGFzcyBET01VUkwg
OiBwdWJsaWMgUmVmQ291bnRlZDxET01VUkw+IHsKLQotcHVibGljOgotICAgIHN0YXRpYyBQYXNz
UmVmUHRyPERPTVVSTD4gY3JlYXRlKCkgeyByZXR1cm4gYWRvcHRSZWYobmV3IERPTVVSTCk7IH0K
LQotI2lmIEVOQUJMRShCTE9CKQotICAgIHN0YXRpYyB2b2lkIGNvbnRleHREZXN0cm95ZWQoU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCopOwotCi0gICAgc3RhdGljIFN0cmluZyBjcmVhdGVPYmplY3RV
UkwoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIEJsb2IqKTsKLSAgICBzdGF0aWMgdm9pZCByZXZv
a2VPYmplY3RVUkwoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNvbnN0IFN0cmluZyYpOwotI2lm
IEVOQUJMRShNRURJQV9TVFJFQU0pCi0gICAgc3RhdGljIFN0cmluZyBjcmVhdGVPYmplY3RVUkwo
U2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIE1lZGlhU3RyZWFtKik7Ci0jZW5kaWYKLSNlbmRpZgot
fTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRE9NVVJMX2gKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL2h0bWwvRE9NVVJMLmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9odG1sL0RPTVVSTC5pZGwJKHJldmlzaW9uIDEwNzIxNSkKKysrIFNvdXJjZS9XZWJDb3Jl
L2h0bWwvRE9NVVJMLmlkbAkod29ya2luZyBjb3B5KQpAQCAtMSw0MSArMCwwIEBACi0vKgotICog
Q29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMTIgTW90b3JvbGEgTW9iaWxpdHkgSW5jLgotICoKLSAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KLSAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgQU5EIElUUyBDT05U
UklCVVRPUlMgIkFTIElTIiBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECi0gKiBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFCi0gKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBPUiBJVFMgQ09O
VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwotICogKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOwotICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5ECi0gKiBPTiBBTlkgVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GCi0gKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLW1vZHVsZSBodG1s
IHsKLSAgICBpbnRlcmZhY2UgWwotICAgICAgICBDb25kaXRpb25hbD1CTE9CLAotICAgICAgICBD
b25zdHJ1Y3RvciwKLSAgICAgICAgSlNHZW5lcmF0ZVRvTmF0aXZlT2JqZWN0LAotICAgICAgICBK
U0dlbmVyYXRlVG9KUywKLSAgICAgICAgSlNOb1N0YXRpY1RhYmxlcwotICAgIF0gRE9NVVJMIHsK
LSNpZiBkZWZpbmVkKEVOQUJMRV9NRURJQV9TVFJFQU0pICYmIEVOQUJMRV9NRURJQV9TVFJFQU0K
LSAgICAgICAgc3RhdGljIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0LENvbnZlcnRO
dWxsU3RyaW5nVG89VW5kZWZpbmVkXSBET01TdHJpbmcgY3JlYXRlT2JqZWN0VVJMKGluIE1lZGlh
U3RyZWFtIHN0cmVhbSk7Ci0jZW5kaWYKLSAgICAgICAgc3RhdGljIFtDYWxsV2l0aD1TY3JpcHRF
eGVjdXRpb25Db250ZXh0LENvbnZlcnROdWxsU3RyaW5nVG89VW5kZWZpbmVkXSBET01TdHJpbmcg
Y3JlYXRlT2JqZWN0VVJMKGluIEJsb2IgYmxvYik7Ci0gICAgICAgIHN0YXRpYyBbQ2FsbFdpdGg9
U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gdm9pZCByZXZva2VPYmplY3RVUkwoaW4gRE9NU3RyaW5n
IHVybCk7Ci0gICAgfTsKLX0KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvVVJMLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL1VSTC5jcHAJKHJldmlzaW9uIDApCisrKyBT
b3VyY2UvV2ViQ29yZS9odG1sL1VSTC5jcHAJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTEyIEBA
CisvKgorICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgTW90b3JvbGEgTW9iaWxpdHkgSW5jLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICoKKyAqIDEuICBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgQU5E
IElUUyBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisg
KiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBP
UiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdF
UworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5ECisgKiBPTiBB
TlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GCisgKiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNp
bmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJVUkwuaCIKKworI2lmIEVOQUJMRShCTE9CKQor
CisjaW5jbHVkZSAiQWN0aXZlRE9NT2JqZWN0LmgiCisjaW5jbHVkZSAiQmxvYi5oIgorI2luY2x1
ZGUgIkJsb2JVUkwuaCIKKyNpbmNsdWRlICJLVVJMLmgiCisjaW5jbHVkZSAiUHVibGljVVJMTWFu
YWdlci5oIgorI2luY2x1ZGUgIlNjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaCIKKyNpbmNsdWRlICJT
ZWN1cml0eU9yaWdpbi5oIgorI2luY2x1ZGUgIlRocmVhZGFibGVCbG9iUmVnaXN0cnkuaCIKKyNp
bmNsdWRlIDx3dGYvTWFpblRocmVhZC5oPgorI2luY2x1ZGUgPHd0Zi9QYXNzT3duUHRyLmg+CisK
KyNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorI2luY2x1ZGUgIk1lZGlhU3RyZWFtLmgiCisjaW5j
bHVkZSAiTWVkaWFTdHJlYW1SZWdpc3RyeS5oIgorI2VuZGlmCisKK25hbWVzcGFjZSBXZWJDb3Jl
IHsKKworI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCitTdHJpbmcgVVJMOjpjcmVhdGVPYmplY3RV
UkwoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgTWVkaWFT
dHJlYW0qIHN0cmVhbSkKK3sKKyAgICBpZiAoIXNjcmlwdEV4ZWN1dGlvbkNvbnRleHQgfHwgIXN0
cmVhbSkKKyAgICAgICAgcmV0dXJuIFN0cmluZygpOworCisgICAgS1VSTCBwdWJsaWNVUkwgPSBC
bG9iVVJMOjpjcmVhdGVQdWJsaWNVUkwoc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+c2VjdXJpdHlP
cmlnaW4oKSk7CisgICAgaWYgKHB1YmxpY1VSTC5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybiBT
dHJpbmcoKTsKKworICAgIC8vIFNpbmNlIFdlYldvcmtlcnMgY2Fubm90IG9idGFpbiBTdHJlYW0g
b2JqZWN0cywgd2Ugc2hvdWxkIGJlIG9uIHRoZSBtYWluIHRocmVhZC4KKyAgICBBU1NFUlQoaXNN
YWluVGhyZWFkKCkpOworCisgICAgTWVkaWFTdHJlYW1SZWdpc3RyeTo6cmVnaXN0cnkoKS5yZWdp
c3Rlck1lZGlhU3RyZWFtVVJMKHB1YmxpY1VSTCwgc3RyZWFtKTsKKyAgICBzY3JpcHRFeGVjdXRp
b25Db250ZXh0LT5wdWJsaWNVUkxNYW5hZ2VyKCkuc3RyZWFtVVJMcygpLmFkZChwdWJsaWNVUkwu
c3RyaW5nKCkpOworCisgICAgcmV0dXJuIHB1YmxpY1VSTC5zdHJpbmcoKTsKK30KKyNlbmRpZgor
CitTdHJpbmcgVVJMOjpjcmVhdGVPYmplY3RVUkwoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogc2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCwgQmxvYiogYmxvYikKK3sKKyAgICBpZiAoIXNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQgfHwgIWJsb2IpCisgICAgICAgIHJldHVybiBTdHJpbmcoKTsKKworICAgIEtV
UkwgcHVibGljVVJMID0gQmxvYlVSTDo6Y3JlYXRlUHVibGljVVJMKHNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQtPnNlY3VyaXR5T3JpZ2luKCkpOworICAgIGlmIChwdWJsaWNVUkwuaXNFbXB0eSgpKQor
ICAgICAgICByZXR1cm4gU3RyaW5nKCk7CisKKyAgICBUaHJlYWRhYmxlQmxvYlJlZ2lzdHJ5Ojpy
ZWdpc3RlckJsb2JVUkwocHVibGljVVJMLCBibG9iLT51cmwoKSk7CisgICAgc2NyaXB0RXhlY3V0
aW9uQ29udGV4dC0+cHVibGljVVJMTWFuYWdlcigpLmJsb2JVUkxzKCkuYWRkKHB1YmxpY1VSTC5z
dHJpbmcoKSk7CisKKyAgICByZXR1cm4gcHVibGljVVJMLnN0cmluZygpOworfQorCit2b2lkIFVS
TDo6cmV2b2tlT2JqZWN0VVJMKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQsIGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nKQoreworICAgIGlmICghc2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCkKKyAgICAgICAgcmV0dXJuOworCisgICAgS1VSTCB1cmwoS1VSTCgpLCB1
cmxTdHJpbmcpOworCisgICAgSGFzaFNldDxTdHJpbmc+JiBibG9iVVJMcyA9IHNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQtPnB1YmxpY1VSTE1hbmFnZXIoKS5ibG9iVVJMcygpOworICAgIGlmIChibG9i
VVJMcy5jb250YWlucyh1cmwuc3RyaW5nKCkpKSB7CisgICAgICAgIFRocmVhZGFibGVCbG9iUmVn
aXN0cnk6OnVucmVnaXN0ZXJCbG9iVVJMKHVybCk7CisgICAgICAgIGJsb2JVUkxzLnJlbW92ZSh1
cmwuc3RyaW5nKCkpOworICAgIH0KKworI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCisgICAgSGFz
aFNldDxTdHJpbmc+JiBzdHJlYW1VUkxzID0gc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+cHVibGlj
VVJMTWFuYWdlcigpLnN0cmVhbVVSTHMoKTsKKyAgICBpZiAoc3RyZWFtVVJMcy5jb250YWlucyh1
cmwuc3RyaW5nKCkpKSB7CisgICAgICAgIC8vIEZJWE1FOiBtYWtlIHN1cmUgb2YgdGhpcyBhc3Nl
cnRpb24gYmVsb3cuIFJhaXNlIGEgc3BlYyBxdWVzdGlvbiBpZiByZXF1aXJlZC4KKyAgICAgICAg
Ly8gU2luY2UgV2ViV29ya2VycyBjYW5ub3Qgb2J0YWluIFN0cmVhbSBvYmplY3RzLCB3ZSBzaG91
bGQgYmUgb24gdGhlIG1haW4gdGhyZWFkLgorICAgICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkp
OworICAgICAgICBNZWRpYVN0cmVhbVJlZ2lzdHJ5OjpyZWdpc3RyeSgpLnVucmVnaXN0ZXJNZWRp
YVN0cmVhbVVSTCh1cmwpOworICAgICAgICBzdHJlYW1VUkxzLnJlbW92ZSh1cmwuc3RyaW5nKCkp
OworICAgIH0KKyNlbmRpZgorfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAv
LyBFTkFCTEUoQkxPQikKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvVVJMLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9VUkwuaAkocmV2aXNpb24gMCkKKysrIFNvdXJjZS9X
ZWJDb3JlL2h0bWwvVVJMLmgJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNjAgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENv
cHlyaWdodCAoQykgMjAxMiBNb3Rvcm9sYSBNb2JpbGl0eSBJbmMuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBBTkQgSVRTIENPTlRS
SUJVVE9SUyAiQVMgSVMiIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIE9SIElUUyBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQKKyAqIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKKyAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBVUkxf
aAorI2RlZmluZSBVUkxfaAorCisjaW5jbHVkZSAiS1VSTC5oIgorI2luY2x1ZGUgIlBsYXRmb3Jt
U3RyaW5nLmgiCisjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KKyNpbmNsdWRlIDx3dGYvUGFzc1Jl
ZlB0ci5oPgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKK25hbWVzcGFjZSBXZWJDb3Jl
IHsKKworY2xhc3MgQmxvYjsKK2NsYXNzIE1lZGlhU3RyZWFtOworY2xhc3MgU2NyaXB0RXhlY3V0
aW9uQ29udGV4dDsKKworY2xhc3MgVVJMIDogcHVibGljIFJlZkNvdW50ZWQ8VVJMPiB7CisKK3B1
YmxpYzoKKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxVUkw+IGNyZWF0ZSgpIHsgcmV0dXJuIGFkb3B0
UmVmKG5ldyBVUkwpOyB9CisKKyNpZiBFTkFCTEUoQkxPQikKKyAgICBzdGF0aWMgdm9pZCBjb250
ZXh0RGVzdHJveWVkKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqKTsKKworICAgIHN0YXRpYyBTdHJp
bmcgY3JlYXRlT2JqZWN0VVJMKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBCbG9iKik7CisgICAg
c3RhdGljIHZvaWQgcmV2b2tlT2JqZWN0VVJMKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBjb25z
dCBTdHJpbmcmKTsKKyNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorICAgIHN0YXRpYyBTdHJpbmcg
Y3JlYXRlT2JqZWN0VVJMKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBNZWRpYVN0cmVhbSopOwor
I2VuZGlmCisjZW5kaWYKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8v
IFVSTF9oCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL1VSTC5pZGwKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvaHRtbC9VUkwuaWRsCShyZXZpc2lvbiAwKQorKysgU291cmNlL1dlYkNv
cmUvaHRtbC9VUkwuaWRsCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDQxIEBACisvKgorICogQ29w
eXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5
cmlnaHQgKEMpIDIwMTIgTW90b3JvbGEgTW9iaWxpdHkgSW5jLgorICoKKyAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAor
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgQU5EIElUUyBDT05UUklC
VVRPUlMgIkFTIElTIiBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0Ug
QVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBPUiBJVFMgQ09OVFJJ
QlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5ECisgKiBPTiBBTlkgVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFIE9GCisgKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKK21vZHVsZSBodG1sIHsK
KyAgICBpbnRlcmZhY2UgWworICAgICAgICBDb25kaXRpb25hbD1CTE9CLAorICAgICAgICBDb25z
dHJ1Y3RvciwKKyAgICAgICAgSlNHZW5lcmF0ZVRvTmF0aXZlT2JqZWN0LAorICAgICAgICBKU0dl
bmVyYXRlVG9KUywKKyAgICAgICAgSlNOb1N0YXRpY1RhYmxlcworICAgIF0gVVJMIHsKKyNpZiBk
ZWZpbmVkKEVOQUJMRV9NRURJQV9TVFJFQU0pICYmIEVOQUJMRV9NRURJQV9TVFJFQU0KKyAgICAg
ICAgc3RhdGljIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0LENvbnZlcnROdWxsU3Ry
aW5nVG89VW5kZWZpbmVkXSBET01TdHJpbmcgY3JlYXRlT2JqZWN0VVJMKGluIE1lZGlhU3RyZWFt
IHN0cmVhbSk7CisjZW5kaWYKKyAgICAgICAgc3RhdGljIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRp
b25Db250ZXh0LENvbnZlcnROdWxsU3RyaW5nVG89VW5kZWZpbmVkXSBET01TdHJpbmcgY3JlYXRl
T2JqZWN0VVJMKGluIEJsb2IgYmxvYik7CisgICAgICAgIHN0YXRpYyBbQ2FsbFdpdGg9U2NyaXB0
RXhlY3V0aW9uQ29udGV4dF0gdm9pZCByZXZva2VPYmplY3RVUkwoaW4gRE9NU3RyaW5nIHVybCk7
CisgICAgfTsKK30KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAJKHJldmlzaW9uIDEw
NzIxNSkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcAkod29ya2luZyBjb3B5
KQpAQCAtNDQsNyArNDQsNiBAQAogI2luY2x1ZGUgIkRPTVN0cmluZ0xpc3QuaCIKICNpbmNsdWRl
ICJET01UaW1lci5oIgogI2luY2x1ZGUgIkRPTVRva2VuTGlzdC5oIgotI2luY2x1ZGUgIkRPTVVS
TC5oIgogI2luY2x1ZGUgIkRhdGFiYXNlLmgiCiAjaW5jbHVkZSAiRGF0YWJhc2VDYWxsYmFjay5o
IgogI2luY2x1ZGUgIkRldmljZU1vdGlvbkNvbnRyb2xsZXIuaCIKQEAgLTQzNCw5ICs0MzMsNiBA
QCBET01XaW5kb3c6On5ET01XaW5kb3coKQogI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQog
ICAgIEFTU0VSVCghbV9pZGJGYWN0b3J5KTsKICNlbmRpZgotI2lmIEVOQUJMRShCTE9CKQotICAg
IEFTU0VSVCghbV9kb21VUkwpOwotI2VuZGlmCiAjaWYgRU5BQkxFKFFVT1RBKQogICAgIEFTU0VS
VCghbV9zdG9yYWdlSW5mbyk7CiAjZW5kaWYKQEAgLTUyNSw5ICs1MjEsNiBAQCB2b2lkIERPTVdp
bmRvdzo6Y2xlYXIoKQogI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIG1faWRiRmFj
dG9yeSA9IDA7CiAjZW5kaWYKLSNpZiBFTkFCTEUoQkxPQikKLSAgICBtX2RvbVVSTCA9IDA7Ci0j
ZW5kaWYKICNpZiBFTkFCTEUoUVVPVEEpCiAgICAgbV9zdG9yYWdlSW5mbyA9IDA7CiAjZW5kaWYK
SW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaAkocmV2aXNpb24gMTA3MjE1KQorKysgU291cmNl
L1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaAkod29ya2luZyBjb3B5KQpAQCAtNDAsNyArNDAsNyBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgY2xhc3MgQ3J5cHRvOwogICAgIGNsYXNzIERPTUFw
cGxpY2F0aW9uQ2FjaGU7CiAgICAgY2xhc3MgRE9NU2VsZWN0aW9uOwotICAgIGNsYXNzIERPTVVS
TDsKKyAgICBjbGFzcyBVUkw7CiAgICAgY2xhc3MgRE9NV2luZG93UHJvcGVydHk7CiAgICAgY2xh
c3MgRGF0YWJhc2U7CiAgICAgY2xhc3MgRGF0YWJhc2VDYWxsYmFjazsKQEAgLTQ3MywxMCArNDcz
LDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBtdXRhYmxlIFJlZlB0cjxQZXJmb3Jt
YW5jZT4gbV9wZXJmb3JtYW5jZTsKICNlbmRpZgogCi0jaWYgRU5BQkxFKEJMT0IpCi0gICAgICAg
IG11dGFibGUgUmVmUHRyPERPTVVSTD4gbV9kb21VUkw7Ci0jZW5kaWYKLQogI2lmIEVOQUJMRShR
VU9UQSkKICAgICAgICAgbXV0YWJsZSBSZWZQdHI8U3RvcmFnZUluZm8+IG1fc3RvcmFnZUluZm87
CiAjZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmlkbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5pZGwJKHJldmlzaW9uIDEwNzIx
NSkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmlkbAkod29ya2luZyBjb3B5KQpA
QCAtNzgyLDcgKzc4Miw3IEBAIG1vZHVsZSB3aW5kb3cgewogCiAgICAgICAgIGF0dHJpYnV0ZSBb
Q29uZGl0aW9uYWw9QkxPQl0gV2ViS2l0QmxvYkJ1aWxkZXJDb25zdHJ1Y3RvciBXZWJLaXRCbG9i
QnVpbGRlcjsKIAotICAgICAgICBhdHRyaWJ1dGUgW0NvbmRpdGlvbmFsPUJMT0JdIERPTVVSTENv
bnN0cnVjdG9yIHdlYmtpdFVSTDsKKyAgICAgICAgYXR0cmlidXRlIFtDb25kaXRpb25hbD1CTE9C
XSBVUkxDb25zdHJ1Y3RvciBVUkw7CiAKICNpZiBkZWZpbmVkKEVOQUJMRV9RVU9UQSkgJiYgRU5B
QkxFX1FVT1RBCiAgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBbVjhFbmFibGVkQXRSdW50aW1l
PVF1b3RhXSBTdG9yYWdlSW5mbyB3ZWJraXRTdG9yYWdlSW5mbzsKSW5kZXg6IFNvdXJjZS9XZWJD
b3JlL3dvcmtlcnMvV29ya2VyQ29udGV4dC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvd29ya2Vycy9Xb3JrZXJDb250ZXh0LmNwcAkocmV2aXNpb24gMTA3MjE1KQorKysgU291cmNl
L1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJDb250ZXh0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzks
NyArMzksNiBAQAogI2luY2x1ZGUgIkRhdGFiYXNlU3luYy5oIgogI2luY2x1ZGUgIkRhdGFiYXNl
VHJhY2tlci5oIgogI2luY2x1ZGUgIkRPTVRpbWVyLmgiCi0jaW5jbHVkZSAiRE9NVVJMLmgiCiAj
aW5jbHVkZSAiRE9NV2luZG93LmgiCiAjaW5jbHVkZSAiRXJyb3JFdmVudC5oIgogI2luY2x1ZGUg
IkV2ZW50LmgiCkluZGV4OiBTb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckNvbnRleHQuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckNvbnRleHQuaAkocmV2
aXNpb24gMTA3MjE1KQorKysgU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJDb250ZXh0LmgJ
KHdvcmtpbmcgY29weSkKQEAgLTQ4LDcgKzQ4LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiAg
ICAgY2xhc3MgQmxvYjsKICAgICBjbGFzcyBET01GaWxlU3lzdGVtU3luYzsKLSAgICBjbGFzcyBE
T01VUkw7CisgICAgY2xhc3MgVVJMOwogICAgIGNsYXNzIERhdGFiYXNlOwogICAgIGNsYXNzIERh
dGFiYXNlQ2FsbGJhY2s7CiAgICAgY2xhc3MgRGF0YWJhc2VTeW5jOwpAQCAtMjA3LDkgKzIwNyw2
IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICNpZiBFTkFCTEVfTk9USUZJQ0FUSU9OUwogICAgICAg
ICBtdXRhYmxlIFJlZlB0cjxOb3RpZmljYXRpb25DZW50ZXI+IG1fbm90aWZpY2F0aW9uczsKICNl
bmRpZgotI2lmIEVOQUJMRShCTE9CKQotICAgICAgICBtdXRhYmxlIFJlZlB0cjxET01VUkw+IG1f
ZG9tVVJMOwotI2VuZGlmCiAjaWYgRU5BQkxFKElOU1BFQ1RPUikKICAgICAgICAgT3duUHRyPFdv
cmtlckluc3BlY3RvckNvbnRyb2xsZXI+IG1fd29ya2VySW5zcGVjdG9yQ29udHJvbGxlcjsKICNl
bmRpZgpJbmRleDogU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJDb250ZXh0LmlkbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckNvbnRleHQuaWRsCShyZXZp
c2lvbiAxMDcyMTUpCisrKyBTb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckNvbnRleHQuaWRs
CSh3b3JraW5nIGNvcHkpCkBAIC0xMDEsNyArMTAxLDcgQEAgbW9kdWxlIHRocmVhZHMgewogICAg
ICAgICBhdHRyaWJ1dGUgRmlsZVJlYWRlclN5bmNDb25zdHJ1Y3RvciBGaWxlUmVhZGVyU3luYzsK
ICNlbmRpZgogCi0gICAgICAgIGF0dHJpYnV0ZSBbQ29uZGl0aW9uYWw9QkxPQl0gRE9NVVJMQ29u
c3RydWN0b3Igd2Via2l0VVJMOworICAgICAgICBhdHRyaWJ1dGUgW0NvbmRpdGlvbmFsPUJMT0Jd
IFVSTENvbnN0cnVjdG9yIFVSTDsKIAogI2lmIGRlZmluZWQoRU5BQkxFX0ZJTEVfU1lTVEVNKSAm
JiBFTkFCTEVfRklMRV9TWVNURU0KICAgICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgVEVNUE9S
QVJZID0gMDsKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwNzIyMSkKKysrIExheW91dFRlc3RzL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQ1IEBACisyMDEyLTAyLTA5ICBLYXVzdHVi
aCBBdHJhd2Fsa2FyICA8a2F1c3R1YmhAbW90b3JvbGEuY29tPgorCisgICAgICAgIFJlbmFtZSB3
ZWJraXRVUkwgdG8gVVJMIGFzIHBlciBzcGVjcy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTc4MjE0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgRm9sbG93aW5nIHRlc3RzIGFyZSByZWJhc2VsaW5lZC4KKwor
ICAgICAgICAqIGVkaXRpbmcvcGFzdGVib2FyZC9kYXRhLXRyYW5zZmVyLWl0ZW1zLWltYWdlLXBu
Zy5odG1sOgorICAgICAgICAqIGZhc3QvZG9tL0RPTVVSTC9jaGVjay1pbnN0YW5jZW9mLWRvbXVy
bC1mdW5jdGlvbnMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvZG9tL0RPTVVSTC9jaGVj
ay1pbnN0YW5jZW9mLWRvbXVybC1mdW5jdGlvbnMuaHRtbDoKKyAgICAgICAgKiBmYXN0L2RvbS9I
VE1MQW5jaG9yRWxlbWVudC9hbmNob3ItZG93bmxvYWQtdW5zZXQuaHRtbDoKKyAgICAgICAgKiBm
YXN0L2RvbS9IVE1MQW5jaG9yRWxlbWVudC9hbmNob3ItZG93bmxvYWQuaHRtbDoKKyAgICAgICAg
KiBmYXN0L2RvbS9IVE1MQW5jaG9yRWxlbWVudC9hbmNob3Itbm9kb3dubG9hZC1zZXQuaHRtbDoK
KyAgICAgICAgKiBmYXN0L2RvbS9IVE1MQW5jaG9yRWxlbWVudC9hbmNob3Itbm9kb3dubG9hZC5o
dG1sOgorICAgICAgICAqIGZhc3QvZG9tL1dpbmRvdy9zY3JpcHQtdGVzdHMvd2luZG93LXByb3Bl
cnR5LWRlc2NyaXB0b3JzLmpzOgorICAgICAgICAqIGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJv
cGVydGllcy5odG1sOgorICAgICAgICAqIGZhc3QvZG9tL2NvbnN0cnVjdGVkLW9iamVjdHMtcHJv
dG90eXBlcy1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9kb20vc2NyaXB0LXRlc3RzL3By
b3RvdHlwZS1pbmhlcml0YW5jZS0yLmpzOgorICAgICAgICAqIGZhc3QvZG9tL3NjcmlwdC10ZXN0
cy9wcm90b3R5cGUtaW5oZXJpdGFuY2UuanM6CisgICAgICAgICogZmFzdC9kb20vd2luZG93LWRv
bXVybC1jcmFzaC5odG1sOgorICAgICAgICAqIGZhc3QvZmlsZXMvYXBwbHktYmxvYi11cmwtdG8t
aW1nLmh0bWw6CisgICAgICAgICogZmFzdC9maWxlcy9hcHBseS1ibG9iLXVybC10by14aHIuaHRt
bDoKKyAgICAgICAgKiBmYXN0L2ZpbGVzL2NyZWF0ZS1ibG9iLXVybC1jcmFzaC5odG1sOgorICAg
ICAgICAqIGZhc3QvZmlsZXMvZG9tdXJsLXNjcmlwdC1leGVjdXRpb24tY29udGV4dC1jcmFzaC5o
dG1sOgorICAgICAgICAqIGZhc3QvZmlsZXMvcmV2b2tlLWJsb2ItdXJsLmh0bWw6CisgICAgICAg
ICogZmFzdC9maWxlcy91cmwtcmVxdWlyZWQtYXJndW1lbnRzLWV4cGVjdGVkLnR4dDoKKyAgICAg
ICAgKiBmYXN0L2ZpbGVzL3VybC1yZXF1aXJlZC1hcmd1bWVudHMuaHRtbDoKKyAgICAgICAgKiBm
YXN0L2ZpbGVzL3dvcmtlcnMvaW5saW5lLXdvcmtlci12aWEtYmxvYi11cmwuaHRtbDoKKyAgICAg
ICAgKiBmYXN0L2ZpbGVzL3dvcmtlcnMvcmVzb3VyY2VzL3dvcmtlci1hcHBseS1ibG9iLXVybC10
by14aHIuanM6CisgICAgICAgIChvbm1lc3NhZ2UpOgorICAgICAgICAqIGh0dHAvdGVzdHMvZmls
ZWFwaS9jcmVhdGUtYmxvYi11cmwtZnJvbS1kYXRhLXVybC5odG1sOgorICAgICAgICAqIHBsYXRm
b3JtL2Nocm9taXVtL2Zhc3QvZmlsZXMvdXJsLXJlcXVpcmVkLWFyZ3VtZW50cy1leHBlY3RlZC50
eHQ6CisgICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vbWVkaWEvdmlkZW8tY2FwdHVyZS1wcmV2
aWV3Lmh0bWw6CisgICAgICAgICogcGxhdGZvcm0vZWZsL2Zhc3QvZmlsZXMvdXJsLXJlcXVpcmVk
LWFyZ3VtZW50cy1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vZ3RrL2Zhc3QvZG9t
L2NvbnN0cnVjdGVkLW9iamVjdHMtcHJvdG90eXBlcy1leHBlY3RlZC50eHQ6CisgICAgICAgICog
cGxhdGZvcm0vZ3RrL2Zhc3QvanMvZ2xvYmFsLWNvbnN0cnVjdG9ycy1leHBlY3RlZC50eHQ6Cisg
ICAgICAgICogcGxhdGZvcm0vbWFjL2Zhc3QvanMvZ2xvYmFsLWNvbnN0cnVjdG9ycy1leHBlY3Rl
ZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vcXQvZmFzdC9kb20vY29uc3RydWN0ZWQtb2JqZWN0
cy1wcm90b3R5cGVzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS9xdC9mYXN0L2pz
L2dsb2JhbC1jb25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0OgorCiAyMDEyLTAyLTA5ICBBbGV4YW5k
ZXIgUGF2bG92ICA8YXBhdmxvdkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3BlY3Rv
cjogVXBkYXRlIHByb3RvY29sIGFuZCBVSSB0byBmb2xsb3cgYnVnIDc3MjA0IChLaWxsIHBlci1B
dHRyaWJ1dGUgc3R5bGUgZGVjbGFyYXRpb25zKQpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9w
YXN0ZWJvYXJkL2RhdGEtdHJhbnNmZXItaXRlbXMtaW1hZ2UtcG5nLmh0bWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJkL2RhdGEtdHJhbnNmZXItaXRlbXMtaW1h
Z2UtcG5nLmh0bWwJKHJldmlzaW9uIDEwNzIxNSkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvcGFz
dGVib2FyZC9kYXRhLXRyYW5zZmVyLWl0ZW1zLWltYWdlLXBuZy5odG1sCSh3b3JraW5nIGNvcHkp
CkBAIC05LDcgKzksNyBAQCBmdW5jdGlvbiBwYXN0ZShldmVudCkKICAgICBmb3IgKHZhciBpID0g
MDsgaSA8IGl0ZW1zLmxlbmd0aDsgKytpKSB7CiAgICAgICAgIGlmIChpdGVtc1tpXS5raW5kID09
ICdmaWxlJyAmJiBpdGVtc1tpXS50eXBlID09ICdpbWFnZS9wbmcnKSB7CiAgICAgICAgICAgICB2
YXIgYmxvYiA9IGl0ZW1zW2ldLmdldEFzRmlsZSgpOwotICAgICAgICAgICAgdmFyIHVybCA9IHdp
bmRvdy53ZWJraXRVUkwuY3JlYXRlT2JqZWN0VVJMKGJsb2IpOworICAgICAgICAgICAgdmFyIHVy
bCA9IHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKGJsb2IpOwogICAgICAgICAgICAgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoJ2Rlc3QnKS5zcmMgPSB1cmw7CiAgICAgICAgIH0KICAgICB9Cklu
ZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jb25zdHJ1Y3RlZC1vYmplY3RzLXByb3RvdHlwZXMt
ZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL2NvbnN0cnVj
dGVkLW9iamVjdHMtcHJvdG90eXBlcy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDEwNzIxNSkKKysr
IExheW91dFRlc3RzL2Zhc3QvZG9tL2NvbnN0cnVjdGVkLW9iamVjdHMtcHJvdG90eXBlcy1leHBl
Y3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTYzLDggKzYzLDggQEAgUEFTUyAobmV3IGlubmVy
LlhQYXRoRXZhbHVhdG9yKCkpLmlzSW5uZQogUEFTUyAobmV3IGlubmVyLlhQYXRoRXZhbHVhdG9y
KCkpLmNvbnN0cnVjdG9yLmlzSW5uZXIgaXMgdHJ1ZQogUEFTUyAobmV3IGlubmVyLlhTTFRQcm9j
ZXNzb3IoKSkuaXNJbm5lciBpcyB0cnVlCiBQQVNTIChuZXcgaW5uZXIuWFNMVFByb2Nlc3Nvcigp
KS5jb25zdHJ1Y3Rvci5pc0lubmVyIGlzIHRydWUKLVBBU1MgKG5ldyBpbm5lci53ZWJraXRVUkwo
KSkuaXNJbm5lciBpcyB0cnVlCi1QQVNTIChuZXcgaW5uZXIud2Via2l0VVJMKCkpLmNvbnN0cnVj
dG9yLmlzSW5uZXIgaXMgdHJ1ZQorUEFTUyAobmV3IGlubmVyLlVSTCgpKS5pc0lubmVyIGlzIHRy
dWUKK1BBU1MgKG5ldyBpbm5lci5VUkwoKSkuY29uc3RydWN0b3IuaXNJbm5lciBpcyB0cnVlCiBQ
QVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKSW5kZXg6IExh
eW91dFRlc3RzL2Zhc3QvZG9tL3dpbmRvdy1kb211cmwtY3Jhc2guaHRtbAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9mYXN0L2RvbS93aW5kb3ctZG9tdXJsLWNyYXNoLmh0bWwJKHJldmlzaW9u
IDEwNzIxNSkKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL3dpbmRvdy1kb211cmwtY3Jhc2guaHRt
bAkod29ya2luZyBjb3B5KQpAQCAtMjYsOSArMjYsOSBAQCBmdW5jdGlvbiBsb2FkKCkKICAgICAg
ICAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOw0KICAgICB9DQogICAgIHdp
biA9IHdpbmRvdy5vcGVuKCk7DQotICAgIGlmICh3aW4ud2Via2l0VVJMKQ0KKyAgICBpZiAod2lu
LlVSTCkNCiAgICAgew0KLSAgICAgICAgdXJsID0gd2luLndlYmtpdFVSTDsNCisgICAgICAgIHVy
bCA9IHdpbi5VUkw7DQogICAgICAgICB3aW4ubG9jYXRpb24gPSAibm90aGluZyI7DQogICAgICAg
ICBzZXRUaW1lb3V0KGNyYXNoLCAwKTsNCiAgICAgICAgIHJldHVybjsNCkluZGV4OiBMYXlvdXRU
ZXN0cy9mYXN0L2RvbS9ET01VUkwvY2hlY2staW5zdGFuY2VvZi1kb211cmwtZnVuY3Rpb25zLWV4
cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9ET01VUkwvY2hl
Y2staW5zdGFuY2VvZi1kb211cmwtZnVuY3Rpb25zLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMTA3
MjE1KQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vRE9NVVJML2NoZWNrLWluc3RhbmNlb2YtZG9t
dXJsLWZ1bmN0aW9ucy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsMTQgKzEsMTQg
QEAKLVRlc3QgaW5zdGFuY2VvZiBmdW5jdGlvbnMgYW5kIHByb3BlcnRpZXMgb2Ygd2Via2l0VVJM
LgorVGVzdCBpbnN0YW5jZW9mIGZ1bmN0aW9ucyBhbmQgcHJvcGVydGllcyBvZiBVUkwuCiAKIE9u
IHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxv
d2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KIAogCi1QQVNTICdjcmVhdGVPYmplY3RVUkwnIGluIHdl
YmtpdFVSTCBpcyB0cnVlCi1QQVNTICdyZXZva2VPYmplY3RVUkwnIGluIHdlYmtpdFVSTCBpcyB0
cnVlCitQQVNTICdjcmVhdGVPYmplY3RVUkwnIGluIFVSTCBpcyB0cnVlCitQQVNTICdyZXZva2VP
YmplY3RVUkwnIGluIFVSTCBpcyB0cnVlCiBQQVNTIHVybC5jcmVhdGVPYmplY3RVUkwgaXMgdW5k
ZWZpbmVkLgogUEFTUyB1cmwucmV2b2tlT2JqZWN0VVJMIGlzIHVuZGVmaW5lZC4KLVBBU1Mgd2lu
ZG93LndlYmtpdFVSTC5jcmVhdGVPYmplY3RVUkwgaXMgZGVmaW5lZC4KLVBBU1Mgd2luZG93Lndl
YmtpdFVSTC5yZXZva2VPYmplY3RVUkwgaXMgZGVmaW5lZC4KK1BBU1Mgd2luZG93LlVSTC5jcmVh
dGVPYmplY3RVUkwgaXMgZGVmaW5lZC4KK1BBU1Mgd2luZG93LlVSTC5yZXZva2VPYmplY3RVUkwg
aXMgZGVmaW5lZC4KIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01Q
TEVURQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vRE9NVVJML2NoZWNrLWluc3RhbmNlb2Yt
ZG9tdXJsLWZ1bmN0aW9ucy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9t
L0RPTVVSTC9jaGVjay1pbnN0YW5jZW9mLWRvbXVybC1mdW5jdGlvbnMuaHRtbAkocmV2aXNpb24g
MTA3MjE1KQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vRE9NVVJML2NoZWNrLWluc3RhbmNlb2Yt
ZG9tdXJsLWZ1bmN0aW9ucy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC01LDE4ICs1LDE4IEBACiA8
L2hlYWQ+CiA8Ym9keT4KIDxzY3JpcHQ+Ci1kZXNjcmlwdGlvbigiVGVzdCBpbnN0YW5jZW9mIGZ1
bmN0aW9ucyBhbmQgcHJvcGVydGllcyBvZiB3ZWJraXRVUkwuIik7CitkZXNjcmlwdGlvbigiVGVz
dCBpbnN0YW5jZW9mIGZ1bmN0aW9ucyBhbmQgcHJvcGVydGllcyBvZiBVUkwuIik7CiAKLXZhciB1
cmwgPSBuZXcgd2Via2l0VVJMOwordmFyIHVybCA9IG5ldyBVUkw7CiAKLXNob3VsZEJlVHJ1ZSgi
J2NyZWF0ZU9iamVjdFVSTCcgaW4gd2Via2l0VVJMIik7Ci1zaG91bGRCZVRydWUoIidyZXZva2VP
YmplY3RVUkwnIGluIHdlYmtpdFVSTCIpOworc2hvdWxkQmVUcnVlKCInY3JlYXRlT2JqZWN0VVJM
JyBpbiBVUkwiKTsKK3Nob3VsZEJlVHJ1ZSgiJ3Jldm9rZU9iamVjdFVSTCcgaW4gVVJMIik7CiAK
IHNob3VsZEJlVW5kZWZpbmVkKCJ1cmwuY3JlYXRlT2JqZWN0VVJMIik7CiBzaG91bGRCZVVuZGVm
aW5lZCgidXJsLnJldm9rZU9iamVjdFVSTCIpOwogCi1zaG91bGRCZURlZmluZWQoIndpbmRvdy53
ZWJraXRVUkwuY3JlYXRlT2JqZWN0VVJMIik7Ci1zaG91bGRCZURlZmluZWQoIndpbmRvdy53ZWJr
aXRVUkwucmV2b2tlT2JqZWN0VVJMIik7CitzaG91bGRCZURlZmluZWQoIndpbmRvdy5VUkwuY3Jl
YXRlT2JqZWN0VVJMIik7CitzaG91bGRCZURlZmluZWQoIndpbmRvdy5VUkwucmV2b2tlT2JqZWN0
VVJMIik7CiAKIAogPC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MQW5j
aG9yRWxlbWVudC9hbmNob3ItZG93bmxvYWQtdW5zZXQuaHRtbAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9mYXN0L2RvbS9IVE1MQW5jaG9yRWxlbWVudC9hbmNob3ItZG93bmxvYWQtdW5zZXQu
aHRtbAkocmV2aXNpb24gMTA3MjE1KQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEFuY2hv
ckVsZW1lbnQvYW5jaG9yLWRvd25sb2FkLXVuc2V0Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTI4
LDcgKzI4LDcgQEAgZnVuY3Rpb24gcnVuVGVzdCgpCiAgICAgYmIuYXBwZW5kKCI8IWRvY3R5cGUg
aHRtbD48aHRtbD48aGVhZD48dGl0bGU+VGl0bGU8L3RpdGxlPjxzY3JpcHQ+aWYgKHdpbmRvdy5s
YXlvdXRUZXN0Q29udHJvbGxlcikgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOyA8
LyIgKyAic2NyaXB0PjwvaGVhZD48Ym9keT5QQVNTPC9ib2R5PjxzY3JpcHQ+aWYgKHdpbmRvdy5s
YXlvdXRUZXN0Q29udHJvbGxlcikgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOzwv
c2NyIiArICJpcHQ+PC9odG1sPiIpOwogICAgIHZhciBibG9iID0gYmIuZ2V0QmxvYigidGV4dC9o
dG1sIiwgImlubGluZSIpOwogICAgIHZhciBsaW5rID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImJsb2ItdXJsIik7Ci0gICAgbGluay5ocmVmID0gd2luZG93LndlYmtpdFVSTC5jcmVhdGVPYmpl
Y3RVUkwoYmxvYik7CisgICAgbGluay5ocmVmID0gd2luZG93LlVSTC5jcmVhdGVPYmplY3RVUkwo
YmxvYik7CiAgICAgbGluay5yZW1vdmVBdHRyaWJ1dGUoJ2Rvd25sb2FkJyk7CiAgICAgY2xpY2so
bGluayk7CiB9CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MQW5jaG9yRWxlbWVudC9h
bmNob3ItZG93bmxvYWQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9I
VE1MQW5jaG9yRWxlbWVudC9hbmNob3ItZG93bmxvYWQuaHRtbAkocmV2aXNpb24gMTA3MjE1KQor
KysgTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEFuY2hvckVsZW1lbnQvYW5jaG9yLWRvd25sb2Fk
Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTI4LDcgKzI4LDcgQEAgZnVuY3Rpb24gcnVuVGVzdCgp
CiAgICAgYmIuYXBwZW5kKCI8IWRvY3R5cGUgaHRtbD48aHRtbD48aGVhZD48dGl0bGU+VGl0bGU8
L3RpdGxlPjxzY3JpcHQ+aWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgbGF5b3V0VGVz
dENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOyA8LyIgKyAic2NyaXB0PjwvaGVhZD48Ym9keT5QQVNT
PC9ib2R5PjxzY3JpcHQ+aWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgbGF5b3V0VGVz
dENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOzwvc2NyIiArICJpcHQ+PC9odG1sPiIpOwogICAgIHZh
ciBibG9iID0gYmIuZ2V0QmxvYigidGV4dC9odG1sIiwgImlubGluZSIpOwogICAgIHZhciBsaW5r
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJsb2ItdXJsIik7Ci0gICAgbGluay5ocmVmID0g
d2luZG93LndlYmtpdFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYik7CisgICAgbGluay5ocmVmID0g
d2luZG93LlVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYik7CiAgICAgY2xpY2sobGluayk7CiB9CiBy
dW5UZXN0KCk7CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MQW5jaG9yRWxlbWVudC9h
bmNob3Itbm9kb3dubG9hZC1zZXQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0
L2RvbS9IVE1MQW5jaG9yRWxlbWVudC9hbmNob3Itbm9kb3dubG9hZC1zZXQuaHRtbAkocmV2aXNp
b24gMTA3MjE1KQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEFuY2hvckVsZW1lbnQvYW5j
aG9yLW5vZG93bmxvYWQtc2V0Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTI4LDcgKzI4LDcgQEAg
ZnVuY3Rpb24gcnVuVGVzdCgpCiAgICAgYmIuYXBwZW5kKCI8IWRvY3R5cGUgaHRtbD48aHRtbD48
aGVhZD48dGl0bGU+VGl0bGU8L3RpdGxlPjxzY3JpcHQ+aWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29u
dHJvbGxlcikgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOyA8LyIgKyAic2NyaXB0
PjwvaGVhZD48Ym9keT5QQVNTPC9ib2R5PjxzY3JpcHQ+aWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29u
dHJvbGxlcikgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOzwvc2NyIiArICJpcHQ+
PC9odG1sPiIpOwogICAgIHZhciBibG9iID0gYmIuZ2V0QmxvYigidGV4dC9odG1sIiwgImlubGlu
ZSIpOwogICAgIHZhciBsaW5rID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJsb2ItdXJsIik7
Ci0gICAgbGluay5ocmVmID0gd2luZG93LndlYmtpdFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYik7
CisgICAgbGluay5ocmVmID0gd2luZG93LlVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYik7CiAgICAg
bGluay5zZXRBdHRyaWJ1dGUoJ2Rvd25sb2FkJyk7CiAgICAgY2xpY2sobGluayk7CiB9CkluZGV4
OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MQW5jaG9yRWxlbWVudC9hbmNob3Itbm9kb3dubG9h
ZC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxBbmNob3JFbGVt
ZW50L2FuY2hvci1ub2Rvd25sb2FkLmh0bWwJKHJldmlzaW9uIDEwNzIxNSkKKysrIExheW91dFRl
c3RzL2Zhc3QvZG9tL0hUTUxBbmNob3JFbGVtZW50L2FuY2hvci1ub2Rvd25sb2FkLmh0bWwJKHdv
cmtpbmcgY29weSkKQEAgLTI4LDcgKzI4LDcgQEAgZnVuY3Rpb24gcnVuVGVzdCgpCiAgICAgYmIu
YXBwZW5kKCI8IWRvY3R5cGUgaHRtbD48aHRtbD48aGVhZD48dGl0bGU+VGl0bGU8L3RpdGxlPjxz
Y3JpcHQ+aWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgbGF5b3V0VGVzdENvbnRyb2xs
ZXIuZHVtcEFzVGV4dCgpOyA8LyIgKyAic2NyaXB0PjwvaGVhZD48Ym9keT5QQVNTPC9ib2R5Pjxz
Y3JpcHQ+aWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgbGF5b3V0VGVzdENvbnRyb2xs
ZXIubm90aWZ5RG9uZSgpOzwvc2NyIiArICJpcHQ+PC9odG1sPiIpOwogICAgIHZhciBibG9iID0g
YmIuZ2V0QmxvYigidGV4dC9odG1sIiwgImlubGluZSIpOwogICAgIHZhciBsaW5rID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImJsb2ItdXJsIik7Ci0gICAgbGluay5ocmVmID0gd2luZG93Lndl
YmtpdFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYik7CisgICAgbGluay5ocmVmID0gd2luZG93LlVS
TC5jcmVhdGVPYmplY3RVUkwoYmxvYik7CiAgICAgY2xpY2sobGluayk7CiB9CiBydW5UZXN0KCk7
CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMuaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3Bl
cnRpZXMuaHRtbAkocmV2aXNpb24gMTA3MjE1KQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vV2lu
ZG93L3dpbmRvdy1wcm9wZXJ0aWVzLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTc4LDYgKzc4LDcg
QEAgdmFyIF9fc2tpcF9fID0gewogICAgICJ3aW5kb3cuSW50MTZBcnJheSIgOiAxLAogICAgICJ3
aW5kb3cuSW50MzJBcnJheSIgOiAxLAogICAgICJ3aW5kb3cuSW50OEFycmF5IiA6IDEsCisgICAg
IndpbmRvdy5VUkwiIDogMSwKICAgICAid2luZG93LlVpbnQxNkFycmF5IiA6IDEsCiAgICAgIndp
bmRvdy5VaW50MzJBcnJheSIgOiAxLAogICAgICJ3aW5kb3cuVWludDhBcnJheSIgOiAxLApAQCAt
OTcsNyArOTgsNiBAQCB2YXIgX19za2lwX18gPSB7CiAgICAgIndpbmRvdy5vbmRldmljZW9yaWVu
dGF0aW9uIiA6IDEsCiAgICAgIndpbmRvdy5wZXJmb3JtYW5jZSIgOiAxLAogICAgICJ3aW5kb3cu
d2Via2l0Tm90aWZpY2F0aW9ucyIgOiAxLAotICAgICJ3aW5kb3cud2Via2l0VVJMIiA6IDEsCiAK
ICAgICAvLyBEb24ndCBsb2cgdGhpcyBwcm9wZXJ0eSBiZWNhdXNlIHNob3dNb2RhbERpYWxvZyBp
cyBub3QgaW1wbGVtZW50ZWQgb24gYWxsIHBsYXRmb3JtcyBpbiBEdW1wUmVuZGVyVHJlZS4KICAg
ICAid2luZG93LnNob3dNb2RhbERpYWxvZyIgOiAxLApJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9k
b20vV2luZG93L3NjcmlwdC10ZXN0cy93aW5kb3ctcHJvcGVydHktZGVzY3JpcHRvcnMuanMKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3NjcmlwdC10ZXN0cy93aW5k
b3ctcHJvcGVydHktZGVzY3JpcHRvcnMuanMJKHJldmlzaW9uIDEwNzIxNSkKKysrIExheW91dFRl
c3RzL2Zhc3QvZG9tL1dpbmRvdy9zY3JpcHQtdGVzdHMvd2luZG93LXByb3BlcnR5LWRlc2NyaXB0
b3JzLmpzCSh3b3JraW5nIGNvcHkpCkBAIC01MCw3ICs1MCw3IEBAIHZhciBfX3NraXBfXyA9IHsK
ICAgICAiV2ViS2l0QmxvYkJ1aWxkZXIiIDogMSwKICAgICAib25kZXZpY2VvcmllbnRhdGlvbiIg
OiAxLAogICAgICJ3ZWJraXROb3RpZmljYXRpb25zIiA6IDEsCi0gICAgIndlYmtpdFVSTCIgOiAx
LAorICAgICJVUkwiIDogMSwKIAogICAgIC8vIERvbid0IGxvZyB0aGlzIHByb3BlcnR5IGJlY2F1
c2UgaXQgb25seSBhcHBlYXJzIGluIGRlYnVnIGJ1aWxkcy4KICAgICAianNjcHJpbnQiIDogMSwK
SW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL3NjcmlwdC10ZXN0cy9wcm90b3R5cGUtaW5oZXJp
dGFuY2UtMi5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9zY3JpcHQtdGVz
dHMvcHJvdG90eXBlLWluaGVyaXRhbmNlLTIuanMJKHJldmlzaW9uIDEwNzIxNSkKKysrIExheW91
dFRlc3RzL2Zhc3QvZG9tL3NjcmlwdC10ZXN0cy9wcm90b3R5cGUtaW5oZXJpdGFuY2UtMi5qcwko
d29ya2luZyBjb3B5KQpAQCAtMzIsNyArMzIsNyBAQCB2YXIgc2tpcHBlZFByb3BlcnRpZXMgPSBb
CiAgICAgLy8gU2tpcCB0aGVzZSB1bnRpbCB0aGV5IGFyZSBzdXBwb3J0ZWQgb24gbW9zdCBwbGF0
Zm9ybXMuCiAgICAgImdlb2xvY2F0aW9uIiwKICAgICAid2Via2l0Tm90aWZpY2F0aW9ucyIsCi0g
ICAgIndlYmtpdFVSTCIsCisgICAgIlVSTCIsCiBdOwogCiB2YXIgc2tpcHBlZFByb3BlcnRpZXNT
ZXQgPSB7fTsKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL3NjcmlwdC10ZXN0cy9wcm90b3R5
cGUtaW5oZXJpdGFuY2UuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vc2Ny
aXB0LXRlc3RzL3Byb3RvdHlwZS1pbmhlcml0YW5jZS5qcwkocmV2aXNpb24gMTA3MjE1KQorKysg
TGF5b3V0VGVzdHMvZmFzdC9kb20vc2NyaXB0LXRlc3RzL3Byb3RvdHlwZS1pbmhlcml0YW5jZS5q
cwkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQCB2YXIgc2tpcHBlZFByb3BlcnRpZXMg
PSBbCiAgICAgIkZpbGVFcnJvciIsICJGaWxlUmVhZGVyIiwgIldlYktpdEJsb2JCdWlsZGVyIiwg
IndlYmtpdFJlcXVlc3RGaWxlU3lzdGVtIiwKICAgICAiaW5kZXhlZERCIiwgIklEQktleVJhbmdl
IiwgIklEQkN1cnNvciIsICJJREJEYXRhYmFzZSIsICJJREJEYXRhYmFzZUVycm9yIiwgIklEQkRh
dGFiYXNlRXhjZXB0aW9uIiwgIklEQkVycm9yRXZlbnQiLCAiSURCRXZlbnQiLCAiSURCRmFjdG9y
eSIsICJJREJJbmRleCIsICJJREJPYmplY3RTdG9yZSIsICJJREJSZXF1ZXN0IiwgIklEQlN1Y2Nl
c3NFdmVudCIsICJJREJUcmFuc2FjdGlvbiIsCiAgICAgInNob3dNb2RhbERpYWxvZyIsCi0gICAg
IndlYmtpdFVSTCIsCisgICAgIlVSTCIsCiAgICAgIkRldmljZU9yaWVudGF0aW9uRXZlbnQiLAog
ICAgICJEZXZpY2VNb3Rpb25FdmVudCIsCiAgICAgIlRFTVBPUkFSWSIsICJQRVJTSVNURU5UIiwK
SW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZmlsZXMvYXBwbHktYmxvYi11cmwtdG8taW1nLmh0bWwK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9maWxlcy9hcHBseS1ibG9iLXVybC10by1p
bWcuaHRtbAkocmV2aXNpb24gMTA3MjE1KQorKysgTGF5b3V0VGVzdHMvZmFzdC9maWxlcy9hcHBs
eS1ibG9iLXVybC10by1pbWcuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTcsNyArMTcsNyBAQCBm
dW5jdGlvbiBvbklucHV0RmlsZUNoYW5nZSgpCiAgICAgdmFyIGltZyA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCdpbWdUb1JlcGxhY2UnKTsKICAgICBsb2coIk9sZCBpbWFnZTogIiArIGltZy53
aWR0aCArICIgeCAiICsgaW1nLmhlaWdodCk7CiAgICAgaW1nLm9ubG9hZCA9IG9uSW1nTG9hZDsK
LSAgICBpbWcuc3JjID0gd2luZG93LndlYmtpdFVSTC5jcmVhdGVPYmplY3RVUkwoZmlsZSk7Cisg
ICAgaW1nLnNyYyA9IHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKGZpbGUpOwogfQogCiBmdW5j
dGlvbiBvbkltZ0xvYWQoKQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9maWxlcy9hcHBseS1ibG9i
LXVybC10by14aHIuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2ZpbGVzL2Fw
cGx5LWJsb2ItdXJsLXRvLXhoci5odG1sCShyZXZpc2lvbiAxMDcyMTUpCisrKyBMYXlvdXRUZXN0
cy9mYXN0L2ZpbGVzL2FwcGx5LWJsb2ItdXJsLXRvLXhoci5odG1sCSh3b3JraW5nIGNvcHkpCkBA
IC0yNiw3ICsyNiw3IEBAIGZ1bmN0aW9uIHNlbmRYTUxIdHRwUmVxdWVzdChtZXRob2QsIHVybCkK
IGZ1bmN0aW9uIG9uSW5wdXRGaWxlQ2hhbmdlKCkKIHsKICAgICB2YXIgZmlsZSA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJmaWxlIikuZmlsZXNbMF07Ci0gICAgdmFyIGZpbGVVUkwgPSB3aW5k
b3cud2Via2l0VVJMLmNyZWF0ZU9iamVjdFVSTChmaWxlKTsKKyAgICB2YXIgZmlsZVVSTCA9IHdp
bmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKGZpbGUpOwogCiAgICAgbG9nKCJUZXN0IHRoYXQgWE1M
SHR0cFJlcXVlc3QgR0VUIHN1Y2NlZWRzLiIpOwogICAgIHNlbmRYTUxIdHRwUmVxdWVzdCgiR0VU
IiwgZmlsZVVSTCk7CkBAIC0zNSw3ICszNSw3IEBAIGZ1bmN0aW9uIG9uSW5wdXRGaWxlQ2hhbmdl
KCkKICAgICBzZW5kWE1MSHR0cFJlcXVlc3QoIlBPU1QiLCBmaWxlVVJMKTsKIAogICAgIGxvZygi
VGVzdCB0aGF0IFhNTEh0dHBSZXF1ZXN0IEdFVCBmYWlscyBhZnRlciB0aGUgYmxvYiBVUkwgaXMg
cmV2b2tlZC4iKTsKLSAgICB3aW5kb3cud2Via2l0VVJMLnJldm9rZU9iamVjdFVSTChmaWxlVVJM
KTsKKyAgICB3aW5kb3cuVVJMLnJldm9rZU9iamVjdFVSTChmaWxlVVJMKTsKICAgICBzZW5kWE1M
SHR0cFJlcXVlc3QoIkdFVCIsIGZpbGVVUkwpOwogCiAgICAgbG9nKCJET05FIik7CkluZGV4OiBM
YXlvdXRUZXN0cy9mYXN0L2ZpbGVzL2NyZWF0ZS1ibG9iLXVybC1jcmFzaC5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZmlsZXMvY3JlYXRlLWJsb2ItdXJsLWNyYXNoLmh0bWwJ
KHJldmlzaW9uIDEwNzIxNSkKKysrIExheW91dFRlc3RzL2Zhc3QvZmlsZXMvY3JlYXRlLWJsb2It
dXJsLWNyYXNoLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTExLDcgKzExLDcgQEAgZnVuY3Rpb24g
dGVzdCgpCiB7CiAgICAgbG9nKCJUZXN0IHRoYXQgY3JlYXRlT2JqZWN0VVJMIHdpdGggbm8gYXJn
dW1lbnQgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4iKTsKICAgICB0cnkgewotICAgICAgICB2
YXIgdXJsID0gd2Via2l0VVJMLmNyZWF0ZU9iamVjdFVSTCgpOworICAgICAgICB2YXIgdXJsID0g
VVJMLmNyZWF0ZU9iamVjdFVSTCgpOwogICAgICAgICBsb2coIkZBSUwiKTsKICAgICB9IGNhdGNo
KGVycikgewogICAgICAgICBsb2coIlBBU1M6ICIgKyBlcnIubWVzc2FnZSk7CkluZGV4OiBMYXlv
dXRUZXN0cy9mYXN0L2ZpbGVzL2RvbXVybC1zY3JpcHQtZXhlY3V0aW9uLWNvbnRleHQtY3Jhc2gu
aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2ZpbGVzL2RvbXVybC1zY3JpcHQt
ZXhlY3V0aW9uLWNvbnRleHQtY3Jhc2guaHRtbAkocmV2aXNpb24gMTA3MjE1KQorKysgTGF5b3V0
VGVzdHMvZmFzdC9maWxlcy9kb211cmwtc2NyaXB0LWV4ZWN1dGlvbi1jb250ZXh0LWNyYXNoLmh0
bWwJKHdvcmtpbmcgY29weSkKQEAgLTMsNyArMyw3IEBACiBmdW5jdGlvbiBjcmFzaCgpCiB7CiAg
ICAgdHJ5IHsKLSAgICAgICAgZS5hcHBseSh3LCBbJ3dlYmtpdFVSTCddKTsKKyAgICAgICAgZS5h
cHBseSh3LCBbJ1VSTCddKTsKICAgICB9IGNhdGNoIChleCkgeyB9CiAgICAgZG9jdW1lbnQuYm9k
eS5pbm5lckhUTUwgPSAiUEFTUzogbnVsbCBzZWN1cml0eSBjb250ZXh0IGZvciBET01VUkwgZGlk
IG5vdCBjcmFzaCI7CiAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKSW5kZXg6
IExheW91dFRlc3RzL2Zhc3QvZmlsZXMvcmV2b2tlLWJsb2ItdXJsLmh0bWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvZmFzdC9maWxlcy9yZXZva2UtYmxvYi11cmwuaHRtbAkocmV2aXNpb24g
MTA3MjE1KQorKysgTGF5b3V0VGVzdHMvZmFzdC9maWxlcy9yZXZva2UtYmxvYi11cmwuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtMTEsMjIgKzExLDIyIEBAIGZ1bmN0aW9uIHRlc3QoKQogewogICAg
IGxvZygiVGVzdCBjYWxsaW5nIHJldm9rZU9iamVjdFVSTCB3aXRoIG5vIGFyZ3VtZW50LiIpOwog
ICAgIHRyeSB7Ci0gICAgICAgIHZhciB1cmwgPSB3ZWJraXRVUkwucmV2b2tlT2JqZWN0VVJMKCk7
CisgICAgICAgIHZhciB1cmwgPSBVUkwucmV2b2tlT2JqZWN0VVJMKCk7CiAgICAgICAgIGxvZygi
RkFJTCIpOwogICAgIH0gY2F0Y2goZXJyKSB7CiAgICAgICAgIGxvZygiUEFTUzogIiArIGVyci5t
ZXNzYWdlKTsKICAgICB9CiAKICAgICBsb2coIlRlc3QgY2FsbGluZyByZXZva2VPYmplY3RVUkwg
d2l0aCBlbXB0eSBVUkwuIik7Ci0gICAgd2Via2l0VVJMLnJldm9rZU9iamVjdFVSTCgiIik7Cisg
ICAgVVJMLnJldm9rZU9iamVjdFVSTCgiIik7CiAgICAgbG9nKCJQQVNTIik7CiAKICAgICBsb2co
IlRlc3QgY2FsbGluZyByZXZva2VPYmplY3RVUkwgd2l0aCBpbnZhbGlkIFVSTC4iKTsKLSAgICB3
ZWJraXRVUkwucmV2b2tlT2JqZWN0VVJMKCJbZm9vIGJhcl0iKTsKKyAgICBVUkwucmV2b2tlT2Jq
ZWN0VVJMKCJbZm9vIGJhcl0iKTsKICAgICBsb2coIlBBU1MiKTsKIAogICAgIGxvZygiVGVzdCBj
YWxsaW5nIHJldm9rZU9iamVjdFVSTCB3aXRoIG5vbi1leGlzdGVudCBVUkwuIik7Ci0gICAgd2Vi
a2l0VVJMLnJldm9rZU9iamVjdFVSTCgiYmxvYjpub24tZXhpc3RlbnQiKTsKKyAgICBVUkwucmV2
b2tlT2JqZWN0VVJMKCJibG9iOm5vbi1leGlzdGVudCIpOwogICAgIGxvZygiUEFTUyIpOwogCiAg
ICAgbG9nKCJET05FIik7CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2ZpbGVzL3VybC1yZXF1aXJl
ZC1hcmd1bWVudHMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3Qv
ZmlsZXMvdXJsLXJlcXVpcmVkLWFyZ3VtZW50cy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDEwNzIx
NSkKKysrIExheW91dFRlc3RzL2Zhc3QvZmlsZXMvdXJsLXJlcXVpcmVkLWFyZ3VtZW50cy1leHBl
Y3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTIsOCArMiw4IEBAIFRlc3QgcmVxdWlyZWQgYXJn
dW1lbnRzIG9mIFVSTCBvYmplY3QuCiAKIE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmll
cyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KIAotUEFT
UyB3ZWJraXRVUkwuY3JlYXRlT2JqZWN0VVJMKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjog
Tm90IGVub3VnaCBhcmd1bWVudHMuCi1QQVNTIHdlYmtpdFVSTC5yZXZva2VPYmplY3RVUkwoKSB0
aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cy4KK1BBU1MgVVJM
LmNyZWF0ZU9iamVjdFVSTCgpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IE5vdCBlbm91Z2gg
YXJndW1lbnRzLgorUEFTUyBVUkwucmV2b2tlT2JqZWN0VVJMKCkgdGhyZXcgZXhjZXB0aW9uIFR5
cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBp
cyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZmlsZXMvdXJs
LXJlcXVpcmVkLWFyZ3VtZW50cy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3Qv
ZmlsZXMvdXJsLXJlcXVpcmVkLWFyZ3VtZW50cy5odG1sCShyZXZpc2lvbiAxMDcyMTUpCisrKyBM
YXlvdXRUZXN0cy9mYXN0L2ZpbGVzL3VybC1yZXF1aXJlZC1hcmd1bWVudHMuaHRtbAkod29ya2lu
ZyBjb3B5KQpAQCAtOSw4ICs5LDggQEAKIDxzY3JpcHQ+CiBkZXNjcmlwdGlvbigiVGVzdCByZXF1
aXJlZCBhcmd1bWVudHMgb2YgVVJMIG9iamVjdC4iKTsKIAotc2hvdWxkVGhyb3coIndlYmtpdFVS
TC5jcmVhdGVPYmplY3RVUkwoKSIpOwotc2hvdWxkVGhyb3coIndlYmtpdFVSTC5yZXZva2VPYmpl
Y3RVUkwoKSIpOworc2hvdWxkVGhyb3coIlVSTC5jcmVhdGVPYmplY3RVUkwoKSIpOworc2hvdWxk
VGhyb3coIlVSTC5yZXZva2VPYmplY3RVUkwoKSIpOwogCiA8L3NjcmlwdD4KICAgICA8c2NyaXB0
IHNyYz0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+CkluZGV4OiBM
YXlvdXRUZXN0cy9mYXN0L2ZpbGVzL3dvcmtlcnMvaW5saW5lLXdvcmtlci12aWEtYmxvYi11cmwu
aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2ZpbGVzL3dvcmtlcnMvaW5saW5l
LXdvcmtlci12aWEtYmxvYi11cmwuaHRtbAkocmV2aXNpb24gMTA3MjE1KQorKysgTGF5b3V0VGVz
dHMvZmFzdC9maWxlcy93b3JrZXJzL2lubGluZS13b3JrZXItdmlhLWJsb2ItdXJsLmh0bWwJKHdv
cmtpbmcgY29weSkKQEAgLTE2LDcgKzE2LDcgQEAgZnVuY3Rpb24gcnVuVGVzdCgpCiAgICAgICAg
ICIgICAgcG9zdE1lc3NhZ2UoJ0hlbGxvIGZyb20gd29ya2VyJyk7IiwKICAgICAgICAgIn07Igog
ICAgIF0uam9pbignXG4nKSk7Ci0gICAgdmFyIGJsb2JVUkwgPSB3ZWJraXRVUkwuY3JlYXRlT2Jq
ZWN0VVJMKGJsb2JCdWlsZGVyLmdldEJsb2IoKSk7CisgICAgdmFyIGJsb2JVUkwgPSBVUkwuY3Jl
YXRlT2JqZWN0VVJMKGJsb2JCdWlsZGVyLmdldEJsb2IoKSk7CiAgICAgdmFyIHdvcmtlciA9IG5l
dyBXb3JrZXIoYmxvYlVSTCk7CiAgICAgd29ya2VyLm9ubWVzc2FnZSA9IGZ1bmN0aW9uKGV2ZW50
KSB7CiAgICAgICAgIGxvZyhldmVudC5kYXRhKTsKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZmls
ZXMvd29ya2Vycy9yZXNvdXJjZXMvd29ya2VyLWFwcGx5LWJsb2ItdXJsLXRvLXhoci5qcwo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2ZpbGVzL3dvcmtlcnMvcmVzb3VyY2VzL3dvcmtl
ci1hcHBseS1ibG9iLXVybC10by14aHIuanMJKHJldmlzaW9uIDEwNzIxNSkKKysrIExheW91dFRl
c3RzL2Zhc3QvZmlsZXMvd29ya2Vycy9yZXNvdXJjZXMvd29ya2VyLWFwcGx5LWJsb2ItdXJsLXRv
LXhoci5qcwkod29ya2luZyBjb3B5KQpAQCAtMTksNyArMTksNyBAQCBmdW5jdGlvbiBzZW5kWE1M
SHR0cFJlcXVlc3QobWV0aG9kLCB1cmwpCiBvbm1lc3NhZ2UgPSBmdW5jdGlvbihldmVudCkKIHsK
ICAgICB2YXIgZmlsZSA9IGV2ZW50LmRhdGE7Ci0gICAgdmFyIGZpbGVVUkwgPSB3ZWJraXRVUkwu
Y3JlYXRlT2JqZWN0VVJMKGZpbGUpOworICAgIHZhciBmaWxlVVJMID0gVVJMLmNyZWF0ZU9iamVj
dFVSTChmaWxlKTsKIAogICAgIGxvZygiVGVzdCB0aGF0IFhNTEh0dHBSZXF1ZXN0IEdFVCBzdWNj
ZWVkcy4iKTsKICAgICBzZW5kWE1MSHR0cFJlcXVlc3QoIkdFVCIsIGZpbGVVUkwpOwpAQCAtMjks
NyArMjksNyBAQCBvbm1lc3NhZ2UgPSBmdW5jdGlvbihldmVudCkKICAgICBzZW5kWE1MSHR0cFJl
cXVlc3QoIlBPU1QiLCBmaWxlVVJMKTsKIAogICAgIGxvZygiVGVzdCB0aGF0IFhNTEh0dHBSZXF1
ZXN0IEdFVCBmYWlscyBhZnRlciB0aGUgYmxvYiBVUkwgaXMgcmV2b2tlZC4iKTsKLSAgICB3ZWJr
aXRVUkwucmV2b2tlT2JqZWN0VVJMKGZpbGVVUkwpOworICAgIFVSTC5yZXZva2VPYmplY3RVUkwo
ZmlsZVVSTCk7CiAgICAgc2VuZFhNTEh0dHBSZXF1ZXN0KCJHRVQiLCBmaWxlVVJMKTsKIAogICAg
IGxvZygiRE9ORSIpOwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9maWxlYXBpL2NyZWF0
ZS1ibG9iLXVybC1mcm9tLWRhdGEtdXJsLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9maWxlYXBpL2NyZWF0ZS1ibG9iLXVybC1mcm9tLWRhdGEtdXJsLmh0bWwJKHJl
dmlzaW9uIDEwNzIxNSkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvZmlsZWFwaS9jcmVhdGUt
YmxvYi11cmwtZnJvbS1kYXRhLXVybC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0yOCw2ICsyOCw2
IEBAIHZhciB0ID0gc2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXsKIDxib2R5PgogPHA+IFRlc3QgY2Fz
ZSBmb3IgY2hlY2tpbmcgYmxvYiBVUkwgbm90IGFsbG93ZWQgdG8gYmUgY3JlYXRlZCBmcm9tIHRo
ZSBjb2RlIHJ1bm5pbmcgZnJvbSBkYXRhIFVSSTwvcD4KIDxwcmUgaWQ9J2NvbnNvbGUnPjwvcHJl
PgotPGlmcmFtZSBzcmM9ImRhdGE6dGV4dC9odG1sLCUzQ3NjcmlwdCUzRXZhciUyMGIlMjAlM0Ql
MjBuZXclMjBXZWJLaXRCbG9iQnVpbGRlcigpJTNCYi5hcHBlbmQoJTIyRm9vJTIyKSUzQnZhciUy
MGJiJTIwJTNEJTIwYi5nZXRCbG9iKCd0ZXh0JTJGaHRtbCcpJTNCdG9wLmxvY2F0aW9uJTNEJ2h0
dHAlM0ElMkYlMkYxMjcuMC4wLjElM0E4MDAwJTJGZmlsZWFwaSUyRmNyZWF0ZS1ibG9iLXVybC1m
cm9tLWRhdGEtdXJsLmh0bWwlMjMnJTIwJTJCJTIwd2luZG93LndlYmtpdFVSTC5jcmVhdGVPYmpl
Y3RVUkwoYmIpJTNCJTNDJTJGc2NyaXB0JTNFIj48L2lmcmFtZT4KKzxpZnJhbWUgc3JjPSJkYXRh
OnRleHQvaHRtbCwlM0NzY3JpcHQlM0V2YXIlMjBiJTIwJTNEJTIwbmV3JTIwV2ViS2l0QmxvYkJ1
aWxkZXIoKSUzQmIuYXBwZW5kKCUyMkZvbyUyMiklM0J2YXIlMjBiYiUyMCUzRCUyMGIuZ2V0Qmxv
YigndGV4dCUyRmh0bWwnKSUzQnRvcC5sb2NhdGlvbiUzRCdodHRwJTNBJTJGJTJGMTI3LjAuMC4x
JTNBODAwMCUyRmZpbGVhcGklMkZjcmVhdGUtYmxvYi11cmwtZnJvbS1kYXRhLXVybC5odG1sJTIz
JyUyMCUyQiUyMHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKGJiKSUzQiUzQyUyRnNjcmlwdCUz
RSI+PC9pZnJhbWU+CiA8L2JvZHk+CiA8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9y
bS9jaHJvbWl1bS9mYXN0L2ZpbGVzL3VybC1yZXF1aXJlZC1hcmd1bWVudHMtZXhwZWN0ZWQudHh0
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL2Zhc3QvZmlsZXMv
dXJsLXJlcXVpcmVkLWFyZ3VtZW50cy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDEwNzIxNSkKKysr
IExheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL2Zhc3QvZmlsZXMvdXJsLXJlcXVpcmVkLWFy
Z3VtZW50cy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTIsOCArMiw4IEBAIFRlc3Qg
cmVxdWlyZWQgYXJndW1lbnRzIG9mIFVSTCBvYmplY3QuCiAKIE9uIHN1Y2Nlc3MsIHlvdSB3aWxs
IHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBM
RVRFIi4KIAotUEFTUyB3ZWJraXRVUkwuY3JlYXRlT2JqZWN0VVJMKCkgdGhyZXcgZXhjZXB0aW9u
IFR5cGVFcnJvcjogVHlwZSBlcnJvci4KLVBBU1Mgd2Via2l0VVJMLnJldm9rZU9iamVjdFVSTCgp
IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IE5vdCBlbm91Z2ggYXJndW1lbnRzLgorUEFTUyBV
UkwuY3JlYXRlT2JqZWN0VVJMKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJv
ci4KK1BBU1MgVVJMLnJldm9rZU9iamVjdFVSTCgpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6
IE5vdCBlbm91Z2ggYXJndW1lbnRzLgogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQog
CiBURVNUIENPTVBMRVRFCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9tZWRp
YS92aWRlby1jYXB0dXJlLXByZXZpZXcuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9w
bGF0Zm9ybS9jaHJvbWl1bS9tZWRpYS92aWRlby1jYXB0dXJlLXByZXZpZXcuaHRtbAkocmV2aXNp
b24gMTA3MjE1KQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vbWVkaWEvdmlkZW8t
Y2FwdHVyZS1wcmV2aWV3Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE4LDcgKzE4LDcgQEAgZnVu
Y3Rpb24gc3RhcnRQcmV2aWV3KCkKIGZ1bmN0aW9uIGdvdFN0cmVhbShzdHJlYW0pCiB7CiAgICAg
Y29uc29sZVdyaXRlKCJnb3QgYSBzdHJlYW0iKTsKLSAgICBwcmV2aWV3VVJMID0gd2Via2l0VVJM
LmNyZWF0ZU9iamVjdFVSTChzdHJlYW0pOworICAgIHByZXZpZXdVUkwgPSBVUkwuY3JlYXRlT2Jq
ZWN0VVJMKHN0cmVhbSk7CiAgICAgc3RhcnRQcmV2aWV3KCk7CiAgICAgY29uc29sZVdyaXRlKCJz
dGFydCBwcmV2aWV3Iik7CiAgICAgbG9jYWxTdHJlYW0gPSBzdHJlYW07CkluZGV4OiBMYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9lZmwvZmFzdC9maWxlcy91cmwtcmVxdWlyZWQtYXJndW1lbnRzLWV4cGVj
dGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvZmFzdC9maWxl
cy91cmwtcmVxdWlyZWQtYXJndW1lbnRzLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMTA3MjE1KQor
KysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZsL2Zhc3QvZmlsZXMvdXJsLXJlcXVpcmVkLWFyZ3Vt
ZW50cy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTIsOCArMiw4IEBAIFRlc3QgcmVx
dWlyZWQgYXJndW1lbnRzIG9mIFVSTCBvYmplY3QuCiAKIE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KIAotUEFTUyB3ZWJraXRVUkwuY3JlYXRlT2JqZWN0VVJMKCkgdGhyZXcgZXhjZXB0aW9uIFR5
cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCi1QQVNTIHdlYmtpdFVSTC5yZXZva2VPYmpl
Y3RVUkwoKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cy4K
K1BBU1MgVVJMLmNyZWF0ZU9iamVjdFVSTCgpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IE5v
dCBlbm91Z2ggYXJndW1lbnRzLgorUEFTUyBVUkwucmV2b2tlT2JqZWN0VVJMKCkgdGhyZXcgZXhj
ZXB0aW9uIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuCiBQQVNTIHN1Y2Nlc3NmdWxs
eVBhcnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKSW5kZXg6IExheW91dFRlc3RzL3BsYXRm
b3JtL2d0ay9mYXN0L2RvbS9jb25zdHJ1Y3RlZC1vYmplY3RzLXByb3RvdHlwZXMtZXhwZWN0ZWQu
dHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9mYXN0L2RvbS9jb25z
dHJ1Y3RlZC1vYmplY3RzLXByb3RvdHlwZXMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAxMDcyMTUp
CisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvZmFzdC9kb20vY29uc3RydWN0ZWQtb2JqZWN0
cy1wcm90b3R5cGVzLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtNDMsNiArNDMsOCBA
QCBQQVNTIChuZXcgaW5uZXIuU3RvcmFnZUV2ZW50KCkpLmlzSW5uZXIKIFBBU1MgKG5ldyBpbm5l
ci5TdG9yYWdlRXZlbnQoKSkuY29uc3RydWN0b3IuaXNJbm5lciBpcyB0cnVlCiBQQVNTIChuZXcg
aW5uZXIuVHJhY2tFdmVudCgpKS5pc0lubmVyIGlzIHRydWUKIFBBU1MgKG5ldyBpbm5lci5UcmFj
a0V2ZW50KCkpLmNvbnN0cnVjdG9yLmlzSW5uZXIgaXMgdHJ1ZQorUEFTUyAobmV3IGlubmVyLlVS
TCgpKS5pc0lubmVyIGlzIHRydWUKK1BBU1MgKG5ldyBpbm5lci5VUkwoKSkuY29uc3RydWN0b3Iu
aXNJbm5lciBpcyB0cnVlCiBQQVNTIChuZXcgaW5uZXIuV2ViR0xDb250ZXh0RXZlbnQoKSkuaXNJ
bm5lciBpcyB0cnVlCiBQQVNTIChuZXcgaW5uZXIuV2ViR0xDb250ZXh0RXZlbnQoKSkuY29uc3Ry
dWN0b3IuaXNJbm5lciBpcyB0cnVlCiBQQVNTIChuZXcgaW5uZXIuV2ViS2l0QW5pbWF0aW9uRXZl
bnQoKSkuaXNJbm5lciBpcyB0cnVlCkBAIC02Myw4ICs2NSw2IEBAIFBBU1MgKG5ldyBpbm5lci5Y
UGF0aEV2YWx1YXRvcigpKS5pc0lubmUKIFBBU1MgKG5ldyBpbm5lci5YUGF0aEV2YWx1YXRvcigp
KS5jb25zdHJ1Y3Rvci5pc0lubmVyIGlzIHRydWUKIFBBU1MgKG5ldyBpbm5lci5YU0xUUHJvY2Vz
c29yKCkpLmlzSW5uZXIgaXMgdHJ1ZQogUEFTUyAobmV3IGlubmVyLlhTTFRQcm9jZXNzb3IoKSku
Y29uc3RydWN0b3IuaXNJbm5lciBpcyB0cnVlCi1QQVNTIChuZXcgaW5uZXIud2Via2l0VVJMKCkp
LmlzSW5uZXIgaXMgdHJ1ZQotUEFTUyAobmV3IGlubmVyLndlYmtpdFVSTCgpKS5jb25zdHJ1Y3Rv
ci5pc0lubmVyIGlzIHRydWUKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVT
VCBDT01QTEVURQpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2Zhc3QvanMvZ2xvYmFs
LWNvbnN0cnVjdG9ycy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxh
dGZvcm0vZ3RrL2Zhc3QvanMvZ2xvYmFsLWNvbnN0cnVjdG9ycy1leHBlY3RlZC50eHQJKHJldmlz
aW9uIDEwNzIxNSkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9mYXN0L2pzL2dsb2JhbC1j
b25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0zMTAsNiArMzEwLDcg
QEAgUEFTUyBUZXh0VHJhY2tMaXN0LnRvU3RyaW5nKCkgaXMgJ1tvYmplYwogUEFTUyBUaW1lUmFu
Z2VzLnRvU3RyaW5nKCkgaXMgJ1tvYmplY3QgVGltZVJhbmdlc0NvbnN0cnVjdG9yXScKIFBBU1Mg
VHJhY2tFdmVudC50b1N0cmluZygpIGlzICdbb2JqZWN0IFRyYWNrRXZlbnRDb25zdHJ1Y3Rvcl0n
CiBQQVNTIFVJRXZlbnQudG9TdHJpbmcoKSBpcyAnW29iamVjdCBVSUV2ZW50Q29uc3RydWN0b3Jd
JworUEFTUyBVUkwudG9TdHJpbmcoKSBpcyAnW29iamVjdCBVUkxDb25zdHJ1Y3Rvcl0nCiBQQVNT
IFdlYkdMQ29udGV4dEV2ZW50LnRvU3RyaW5nKCkgaXMgJ1tvYmplY3QgV2ViR0xDb250ZXh0RXZl
bnRDb25zdHJ1Y3Rvcl0nCiBQQVNTIFdlYktpdEFuaW1hdGlvbkV2ZW50LnRvU3RyaW5nKCkgaXMg
J1tvYmplY3QgV2ViS2l0QW5pbWF0aW9uRXZlbnRDb25zdHJ1Y3Rvcl0nCiBQQVNTIFdlYktpdENT
U0tleWZyYW1lUnVsZS50b1N0cmluZygpIGlzICdbb2JqZWN0IFdlYktpdENTU0tleWZyYW1lUnVs
ZUNvbnN0cnVjdG9yXScKQEAgLTMzMyw3ICszMzQsNiBAQCBQQVNTIFhQYXRoRXhjZXB0aW9uLnRv
U3RyaW5nKCkgaXMgJ1tvYmplCiBQQVNTIFhQYXRoUmVzdWx0LnRvU3RyaW5nKCkgaXMgJ1tvYmpl
Y3QgWFBhdGhSZXN1bHRDb25zdHJ1Y3Rvcl0nCiBQQVNTIFhTTFRQcm9jZXNzb3IudG9TdHJpbmco
KSBpcyAnW29iamVjdCBYU0xUUHJvY2Vzc29yQ29uc3RydWN0b3JdJwogRkFJTCB3ZWJraXRQZWVy
Q29ubmVjdGlvbi50b1N0cmluZygpIHNob3VsZCBiZSBbb2JqZWN0IHdlYmtpdFBlZXJDb25uZWN0
aW9uQ29uc3RydWN0b3JdLiBXYXMgW29iamVjdCBQZWVyQ29ubmVjdGlvbkNvbnN0cnVjdG9yXS4K
LUZBSUwgd2Via2l0VVJMLnRvU3RyaW5nKCkgc2hvdWxkIGJlIFtvYmplY3Qgd2Via2l0VVJMQ29u
c3RydWN0b3JdLiBXYXMgW29iamVjdCBET01VUkxDb25zdHJ1Y3Rvcl0uCiBQQVNTIHN1Y2Nlc3Nm
dWxseVBhcnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKSW5kZXg6IExheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy9mYXN0L2pzL2dsb2JhbC1jb25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2pzL2dsb2JhbC1jb25zdHJ1
Y3RvcnMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAxMDcyMTUpCisrKyBMYXlvdXRUZXN0cy9wbGF0
Zm9ybS9tYWMvZmFzdC9qcy9nbG9iYWwtY29uc3RydWN0b3JzLWV4cGVjdGVkLnR4dAkod29ya2lu
ZyBjb3B5KQpAQCAtMzExLDYgKzMxMSw3IEBAIFBBU1MgVGV4dFRyYWNrTGlzdC50b1N0cmluZygp
IGlzICdbb2JqZWMKIFBBU1MgVGltZVJhbmdlcy50b1N0cmluZygpIGlzICdbb2JqZWN0IFRpbWVS
YW5nZXNDb25zdHJ1Y3Rvcl0nCiBQQVNTIFRyYWNrRXZlbnQudG9TdHJpbmcoKSBpcyAnW29iamVj
dCBUcmFja0V2ZW50Q29uc3RydWN0b3JdJwogUEFTUyBVSUV2ZW50LnRvU3RyaW5nKCkgaXMgJ1tv
YmplY3QgVUlFdmVudENvbnN0cnVjdG9yXScKK1BBU1MgVVJMLnRvU3RyaW5nKCkgaXMgJ1tvYmpl
Y3QgVVJMQ29uc3RydWN0b3JdJwogUEFTUyBXZWJHTENvbnRleHRFdmVudC50b1N0cmluZygpIGlz
ICdbb2JqZWN0IFdlYkdMQ29udGV4dEV2ZW50Q29uc3RydWN0b3JdJwogUEFTUyBXZWJLaXRBbmlt
YXRpb25FdmVudC50b1N0cmluZygpIGlzICdbb2JqZWN0IFdlYktpdEFuaW1hdGlvbkV2ZW50Q29u
c3RydWN0b3JdJwogUEFTUyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS50b1N0cmluZygpIGlzICdbb2Jq
ZWN0IFdlYktpdENTU0ZpbHRlclZhbHVlQ29uc3RydWN0b3JdJwpAQCAtMzM2LDcgKzMzNyw2IEBA
IFBBU1MgWFBhdGhSZXN1bHQudG9TdHJpbmcoKSBpcyAnW29iamVjdAogUEFTUyBYU0xUUHJvY2Vz
c29yLnRvU3RyaW5nKCkgaXMgJ1tvYmplY3QgWFNMVFByb2Nlc3NvckNvbnN0cnVjdG9yXScKIEZB
SUwgd2Via2l0QXVkaW9Db250ZXh0LnRvU3RyaW5nKCkgc2hvdWxkIGJlIFtvYmplY3Qgd2Via2l0
QXVkaW9Db250ZXh0Q29uc3RydWN0b3JdLiBXYXMgW29iamVjdCBBdWRpb0NvbnRleHRDb25zdHJ1
Y3Rvcl0uCiBGQUlMIHdlYmtpdEF1ZGlvUGFubmVyTm9kZS50b1N0cmluZygpIHNob3VsZCBiZSBb
b2JqZWN0IHdlYmtpdEF1ZGlvUGFubmVyTm9kZUNvbnN0cnVjdG9yXS4gV2FzIFtvYmplY3QgQXVk
aW9QYW5uZXJOb2RlQ29uc3RydWN0b3JdLgotRkFJTCB3ZWJraXRVUkwudG9TdHJpbmcoKSBzaG91
bGQgYmUgW29iamVjdCB3ZWJraXRVUkxDb25zdHJ1Y3Rvcl0uIFdhcyBbb2JqZWN0IERPTVVSTENv
bnN0cnVjdG9yXS4KIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01Q
TEVURQpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvZmFzdC9kb20vY29uc3RydWN0ZWQt
b2JqZWN0cy1wcm90b3R5cGVzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9wbGF0Zm9ybS9xdC9mYXN0L2RvbS9jb25zdHJ1Y3RlZC1vYmplY3RzLXByb3RvdHlwZXMtZXhw
ZWN0ZWQudHh0CShyZXZpc2lvbiAxMDcyMTUpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9m
YXN0L2RvbS9jb25zdHJ1Y3RlZC1vYmplY3RzLXByb3RvdHlwZXMtZXhwZWN0ZWQudHh0CSh3b3Jr
aW5nIGNvcHkpCkBAIC00MSw2ICs0MSw4IEBAIFBBU1MgKG5ldyBpbm5lci5Qcm9ncmVzc0V2ZW50
KCkpLmlzSW5uZXIKIFBBU1MgKG5ldyBpbm5lci5Qcm9ncmVzc0V2ZW50KCkpLmNvbnN0cnVjdG9y
LmlzSW5uZXIgaXMgdHJ1ZQogUEFTUyAobmV3IGlubmVyLlN0b3JhZ2VFdmVudCgpKS5pc0lubmVy
IGlzIHRydWUKIFBBU1MgKG5ldyBpbm5lci5TdG9yYWdlRXZlbnQoKSkuY29uc3RydWN0b3IuaXNJ
bm5lciBpcyB0cnVlCitQQVNTIChuZXcgaW5uZXIuVVJMKCkpLmlzSW5uZXIgaXMgdHJ1ZQorUEFT
UyAobmV3IGlubmVyLlVSTCgpKS5jb25zdHJ1Y3Rvci5pc0lubmVyIGlzIHRydWUKIFBBU1MgKG5l
dyBpbm5lci5XZWJHTENvbnRleHRFdmVudCgpKS5pc0lubmVyIGlzIHRydWUKIFBBU1MgKG5ldyBp
bm5lci5XZWJHTENvbnRleHRFdmVudCgpKS5jb25zdHJ1Y3Rvci5pc0lubmVyIGlzIHRydWUKIFBB
U1MgKG5ldyBpbm5lci5XZWJLaXRBbmltYXRpb25FdmVudCgpKS5pc0lubmVyIGlzIHRydWUKQEAg
LTYxLDggKzYzLDYgQEAgUEFTUyAobmV3IGlubmVyLlhQYXRoRXZhbHVhdG9yKCkpLmlzSW5uZQog
UEFTUyAobmV3IGlubmVyLlhQYXRoRXZhbHVhdG9yKCkpLmNvbnN0cnVjdG9yLmlzSW5uZXIgaXMg
dHJ1ZQogUEFTUyAobmV3IGlubmVyLlhTTFRQcm9jZXNzb3IoKSkuaXNJbm5lciBpcyB0cnVlCiBQ
QVNTIChuZXcgaW5uZXIuWFNMVFByb2Nlc3NvcigpKS5jb25zdHJ1Y3Rvci5pc0lubmVyIGlzIHRy
dWUKLVBBU1MgKG5ldyBpbm5lci53ZWJraXRVUkwoKSkuaXNJbm5lciBpcyB0cnVlCi1QQVNTIChu
ZXcgaW5uZXIud2Via2l0VVJMKCkpLmNvbnN0cnVjdG9yLmlzSW5uZXIgaXMgdHJ1ZQogUEFTUyBz
dWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBURVNUIENPTVBMRVRFCkluZGV4OiBMYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9xdC9mYXN0L2pzL2dsb2JhbC1jb25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL3F0L2Zhc3QvanMvZ2xvYmFsLWNv
bnN0cnVjdG9ycy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDEwNzIxNSkKKysrIExheW91dFRlc3Rz
L3BsYXRmb3JtL3F0L2Zhc3QvanMvZ2xvYmFsLWNvbnN0cnVjdG9ycy1leHBlY3RlZC50eHQJKHdv
cmtpbmcgY29weSkKQEAgLTI5Miw2ICsyOTIsNyBAQCBQQVNTIFRleHRNZXRyaWNzLnRvU3RyaW5n
KCkgaXMgJ1tvYmplY3QKIFBBU1MgVGltZVJhbmdlcy50b1N0cmluZygpIGlzICdbb2JqZWN0IFRp
bWVSYW5nZXNDb25zdHJ1Y3Rvcl0nCiBQQVNTIFRvdWNoRXZlbnQudG9TdHJpbmcoKSBpcyAnW29i
amVjdCBUb3VjaEV2ZW50Q29uc3RydWN0b3JdJwogUEFTUyBVSUV2ZW50LnRvU3RyaW5nKCkgaXMg
J1tvYmplY3QgVUlFdmVudENvbnN0cnVjdG9yXScKK1BBU1MgVVJMLnRvU3RyaW5nKCkgaXMgJ1tv
YmplY3QgVVJMQ29uc3RydWN0b3JdJwogUEFTUyBXZWJHTENvbnRleHRFdmVudC50b1N0cmluZygp
IGlzICdbb2JqZWN0IFdlYkdMQ29udGV4dEV2ZW50Q29uc3RydWN0b3JdJwogUEFTUyBXZWJLaXRB
bmltYXRpb25FdmVudC50b1N0cmluZygpIGlzICdbb2JqZWN0IFdlYktpdEFuaW1hdGlvbkV2ZW50
Q29uc3RydWN0b3JdJwogUEFTUyBXZWJLaXRDU1NGaWx0ZXJWYWx1ZS50b1N0cmluZygpIGlzICdb
b2JqZWN0IFdlYktpdENTU0ZpbHRlclZhbHVlQ29uc3RydWN0b3JdJwpAQCAtMzE1LDcgKzMxNiw2
IEBAIFBBU1MgWFBhdGhFdmFsdWF0b3IudG9TdHJpbmcoKSBpcyAnW29iamUKIFBBU1MgWFBhdGhF
eGNlcHRpb24udG9TdHJpbmcoKSBpcyAnW29iamVjdCBYUGF0aEV4Y2VwdGlvbkNvbnN0cnVjdG9y
XScKIFBBU1MgWFBhdGhSZXN1bHQudG9TdHJpbmcoKSBpcyAnW29iamVjdCBYUGF0aFJlc3VsdENv
bnN0cnVjdG9yXScKIFBBU1MgWFNMVFByb2Nlc3Nvci50b1N0cmluZygpIGlzICdbb2JqZWN0IFhT
TFRQcm9jZXNzb3JDb25zdHJ1Y3Rvcl0nCi1GQUlMIHdlYmtpdFVSTC50b1N0cmluZygpIHNob3Vs
ZCBiZSBbb2JqZWN0IHdlYmtpdFVSTENvbnN0cnVjdG9yXS4gV2FzIFtvYmplY3QgRE9NVVJMQ29u
c3RydWN0b3JdLgogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBURVNUIENPTVBM
RVRFCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>126450</attachid>
            <date>2012-02-09 22:02:07 -0800</date>
            <delta_ts>2012-02-09 22:42:40 -0800</delta_ts>
            <desc>Updated Patch</desc>
            <filename>78214.patch</filename>
            <type>text/plain</type>
            <size>41453</size>
            <attacher name="Kaustubh Atrawalkar">kaustubh.ra</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwNzM1NSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQ5IEBACisyMDEyLTAyLTA5ICBLYXVzdHVi
aCBBdHJhd2Fsa2FyICA8a2F1c3R1YmhAbW90b3JvbGEuY29tPgorCisgICAgICAgIFJlbmFtZSBE
T01VUkwgdG8gVVJMIGFzIHBlciBzcGVjcy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTc4MjE0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgQXMgcGVyIHNwZWNzIGh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw1
L3VybHMuaHRtbCN1cmxzCisgICAgICAgIERPTVVSTCB0byBiZSByZW5hbWVkIHRvIFVSTC4KKwor
ICAgICAgICBObyBuZXcgdGVzdHMuIFRlc3RzIGFyZSByZWJhc2VsaW5lZC4KKworICAgICAgICAq
IENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLmNwcDoKKyAgICAgICAg
KiBEZXJpdmVkU291cmNlcy5tYWtlOgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLnByaToKKyAg
ICAgICAgKiBHTlVtYWtlZmlsZS5saXN0LmFtOgorICAgICAgICAqIFRhcmdldC5wcmk6CisgICAg
ICAgICogV2ViQ29yZS5neXBpOgorICAgICAgICAqIFdlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNw
cm9qOgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAg
ICAgKiBodG1sL0RPTVVSTC5jcHA6IFJlbW92ZWQuCisgICAgICAgICogaHRtbC9ET01VUkwuaDog
UmVtb3ZlZC4KKyAgICAgICAgKiBodG1sL0RPTVVSTC5pZGw6IFJlbW92ZWQuCisgICAgICAgICog
aHRtbC9VUkwuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29y
ZTo6VVJMOjpjcmVhdGVPYmplY3RVUkwpOgorICAgICAgICAoV2ViQ29yZTo6VVJMOjpyZXZva2VP
YmplY3RVUkwpOgorICAgICAgICAqIGh0bWwvVVJMLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29y
ZSk6CisgICAgICAgIChVUkwpOgorICAgICAgICAoV2ViQ29yZTo6VVJMOjpjcmVhdGUpOgorICAg
ICAgICAqIGh0bWwvVVJMLmlkbDogQWRkZWQuCisgICAgICAgICogcGFnZS9ET01XaW5kb3cuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6RE9NV2luZG93Ojp+RE9NV2luZG93KToKKyAgICAgICAgKFdl
YkNvcmU6OkRPTVdpbmRvdzo6Y2xlYXIpOgorICAgICAgICAqIHBhZ2UvRE9NV2luZG93Lmg6Cisg
ICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKERPTVdpbmRvdyk6CisgICAgICAgICogcGFnZS9E
T01XaW5kb3cuaWRsOgorICAgICAgICAqIHdvcmtlcnMvV29ya2VyQ29udGV4dC5jcHA6CisgICAg
ICAgICogd29ya2Vycy9Xb3JrZXJDb250ZXh0Lmg6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAg
ICAgKFdvcmtlckNvbnRleHQpOgorICAgICAgICAqIHdvcmtlcnMvV29ya2VyQ29udGV4dC5pZGw6
CisKIDIwMTItMDItMDkgIFhpYW56aHUgV2FuZyAgPHdhbmd4aWFuemh1QGNocm9taXVtLm9yZz4K
IAogICAgICAgICBbQ2hyb21pdW1dIFRpbGVkTGF5ZXJDaHJvbWl1bTo6cHJvdGVjdFZpc2libGVU
aWxlVGV4dHVyZXMoKSBzaG91bGQgb25seSBwcm90ZWN0IHRoZSB2aXNpYmxlIHRleHR1cmVzCklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9DTWFrZUxpc3RzLnR4dAkocmV2aXNpb24gMTA3MzU1KQorKysgU291cmNlL1dlYkNv
cmUvQ01ha2VMaXN0cy50eHQJKHdvcmtpbmcgY29weSkKQEAgLTIwNCw3ICsyMDQsNyBAQCBTRVQo
V2ViQ29yZV9JRExfRklMRVMKICAgICBodG1sL0RPTUZvcm1EYXRhLmlkbAogICAgIGh0bWwvRE9N
U2V0dGFibGVUb2tlbkxpc3QuaWRsCiAgICAgaHRtbC9ET01Ub2tlbkxpc3QuaWRsCi0gICAgaHRt
bC9ET01VUkwuaWRsCisgICAgaHRtbC9VUkwuaWRsCiAgICAgaHRtbC9IVE1MQWxsQ29sbGVjdGlv
bi5pZGwKICAgICBodG1sL0hUTUxBbmNob3JFbGVtZW50LmlkbAogICAgIGh0bWwvSFRNTEFwcGxl
dEVsZW1lbnQuaWRsCkBAIC03MTIsNyArNzEyLDcgQEAgU0VUKFdlYkNvcmVfU09VUkNFUwogICAg
IGh0bWwvRE9NRm9ybURhdGEuY3BwCiAgICAgaHRtbC9ET01TZXR0YWJsZVRva2VuTGlzdC5jcHAK
ICAgICBodG1sL0RPTVRva2VuTGlzdC5jcHAKLSAgICBodG1sL0RPTVVSTC5jcHAKKyAgICBodG1s
L1VSTC5jcHAKICAgICBodG1sL0RhdGVJbnB1dFR5cGUuY3BwCiAgICAgaHRtbC9EYXRlVGltZUlu
cHV0VHlwZS5jcHAKICAgICBodG1sL0RhdGVUaW1lTG9jYWxJbnB1dFR5cGUuY3BwCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwCShyZXZpc2lvbiAxMDczNTUpCisrKyBTb3VyY2UvV2Vi
Q29yZS9EZXJpdmVkU291cmNlcy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTk4LDcgKzk4LDcgQEAK
ICNpbmNsdWRlICJKU0RPTVN0cmluZ0xpc3QuY3BwIgogI2luY2x1ZGUgIkpTRE9NU3RyaW5nTWFw
LmNwcCIKICNpbmNsdWRlICJKU0RPTVRva2VuTGlzdC5jcHAiCi0jaW5jbHVkZSAiSlNET01VUkwu
Y3BwIgorI2luY2x1ZGUgIkpTVVJMLmNwcCIKICNpbmNsdWRlICJKU0RPTVdpbmRvdy5jcHAiCiAj
aW5jbHVkZSAiSlNFbGVtZW50LmNwcCIKICNpbmNsdWRlICJKU0VudGl0eS5jcHAiCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UJKHJldmlzaW9uIDEwNzM1NSkKKysrIFNvdXJjZS9X
ZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UJKHdvcmtpbmcgY29weSkKQEAgLTE4Miw3ICsxODIs
NyBAQCBCSU5ESU5HX0lETFMgPSBcCiAgICAgJChXZWJDb3JlKS9odG1sL0RPTUZvcm1EYXRhLmlk
bCBcCiAgICAgJChXZWJDb3JlKS9odG1sL0RPTVNldHRhYmxlVG9rZW5MaXN0LmlkbCBcCiAgICAg
JChXZWJDb3JlKS9odG1sL0RPTVRva2VuTGlzdC5pZGwgXAotICAgICQoV2ViQ29yZSkvaHRtbC9E
T01VUkwuaWRsIFwKKyAgICAkKFdlYkNvcmUpL2h0bWwvVVJMLmlkbCBcCiAgICAgJChXZWJDb3Jl
KS9odG1sL0hUTUxBbGxDb2xsZWN0aW9uLmlkbCBcCiAgICAgJChXZWJDb3JlKS9odG1sL0hUTUxB
bmNob3JFbGVtZW50LmlkbCBcCiAgICAgJChXZWJDb3JlKS9odG1sL0hUTUxBcHBsZXRFbGVtZW50
LmlkbCBcCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5wcmkKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMucHJpCShyZXZpc2lvbiAxMDczNTUp
CisrKyBTb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5wcmkJKHdvcmtpbmcgY29weSkKQEAg
LTI0NCw3ICsyNDQsNyBAQCBJRExfQklORElOR1MgKz0gXAogICAgICQkUFdEL2h0bWwvRE9NRm9y
bURhdGEuaWRsIFwKICAgICAkJFBXRC9odG1sL0RPTVNldHRhYmxlVG9rZW5MaXN0LmlkbCBcCiAg
ICAgJCRQV0QvaHRtbC9ET01Ub2tlbkxpc3QuaWRsIFwKLSAgICAkJFBXRC9odG1sL0RPTVVSTC5p
ZGwgXAorICAgICQkUFdEL2h0bWwvVVJMLmlkbCBcCiAgICAgJCRQV0QvaHRtbC9IVE1MQWxsQ29s
bGVjdGlvbi5pZGwgXAogICAgICQkUFdEL2h0bWwvSFRNTEF1ZGlvRWxlbWVudC5pZGwgXAogICAg
ICQkUFdEL2h0bWwvSFRNTEFuY2hvckVsZW1lbnQuaWRsIFwKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L0dOVW1ha2VmaWxlLmxpc3QuYW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvR05VbWFr
ZWZpbGUubGlzdC5hbQkocmV2aXNpb24gMTA3MzU1KQorKysgU291cmNlL1dlYkNvcmUvR05VbWFr
ZWZpbGUubGlzdC5hbQkod29ya2luZyBjb3B5KQpAQCAtMTQ3LDggKzE0Nyw2IEBAIHdlYmNvcmVf
YnVpbHRfc291cmNlcyArPSBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0RPTVN0cmluZ01h
cC5oIFwKIAlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRE9NVG9rZW5MaXN0LmNwcCBcCiAJRGVy
aXZlZFNvdXJjZXMvV2ViQ29yZS9KU0RPTVRva2VuTGlzdC5oIFwKLQlEZXJpdmVkU291cmNlcy9X
ZWJDb3JlL0pTRE9NVVJMLmNwcCBcCi0JRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0RPTVVSTC5o
IFwKIAlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRE9NV2luZG93LmNwcCBcCiAJRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS9KU0RPTVdpbmRvdy5oIFwKIAlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pT
RHluYW1pY3NDb21wcmVzc29yTm9kZS5oIFwKQEAgLTUyNSw2ICs1MjMsOCBAQCB3ZWJjb3JlX2J1
aWx0X3NvdXJjZXMgKz0gXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNUcmVlV2Fsa2VyLmgg
XAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNVSUV2ZW50LmNwcCBcCiAJRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS9KU1VJRXZlbnQuaCBcCisJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1VSTC5j
cHAgXAorCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNVUkwuaCBcCiAJRGVyaXZlZFNvdXJjZXMv
V2ViQ29yZS9KU1VpbnQxNkFycmF5LmNwcCBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1Vp
bnQxNkFycmF5LmggXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNVaW50MzJBcnJheS5jcHAg
XApAQCAtNzQ0LDcgKzc0NCw2IEBAIGRvbV9iaW5kaW5nX2lkbHMgKz0gXAogCSQoV2ViQ29yZSkv
aHRtbC9ET01Gb3JtRGF0YS5pZGwgXAogCSQoV2ViQ29yZSkvaHRtbC9ET01TZXR0YWJsZVRva2Vu
TGlzdC5pZGwgXAogCSQoV2ViQ29yZSkvaHRtbC9ET01Ub2tlbkxpc3QuaWRsIFwKLQkkKFdlYkNv
cmUpL2h0bWwvRE9NVVJMLmlkbCBcCiAJJChXZWJDb3JlKS9odG1sL0hUTUxBbGxDb2xsZWN0aW9u
LmlkbCBcCiAJJChXZWJDb3JlKS9odG1sL0hUTUxBbmNob3JFbGVtZW50LmlkbCBcCiAJJChXZWJD
b3JlKS9odG1sL0hUTUxBcHBsZXRFbGVtZW50LmlkbCBcCkBAIC04MjYsNiArODI1LDcgQEAgZG9t
X2JpbmRpbmdfaWRscyArPSBcCiAJJChXZWJDb3JlKS9odG1sL1RleHRUcmFja0N1ZS5pZGwgXAog
CSQoV2ViQ29yZSkvaHRtbC9UZXh0VHJhY2tDdWVMaXN0LmlkbCBcCiAJJChXZWJDb3JlKS9odG1s
L1RpbWVSYW5nZXMuaWRsIFwKKwkkKFdlYkNvcmUpL2h0bWwvVVJMLmlkbCBcCiAJJChXZWJDb3Jl
KS9odG1sL1ZhbGlkaXR5U3RhdGUuaWRsIFwKIAkkKFdlYkNvcmUpL2h0bWwvVm9pZENhbGxiYWNr
LmlkbCBcCiAJJChXZWJDb3JlKS9odG1sL2NhbnZhcy9BcnJheUJ1ZmZlci5pZGwgXApAQCAtMTk3
MCw4ICsxOTcwLDYgQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9odG1s
L0RhdGVUaW1lTG9jYWxJbnB1dFR5cGUuaCBcCiAJU291cmNlL1dlYkNvcmUvaHRtbC9ET01Gb3Jt
RGF0YS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL2h0bWwvRE9NRm9ybURhdGEuaCBcCi0JU291cmNl
L1dlYkNvcmUvaHRtbC9ET01VUkwuY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9odG1sL0RPTVVSTC5o
IFwKIAlTb3VyY2UvV2ViQ29yZS9odG1sL0VtYWlsSW5wdXRUeXBlLmNwcCBcCiAJU291cmNlL1dl
YkNvcmUvaHRtbC9FbWFpbElucHV0VHlwZS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9odG1sL0ZpbGVJ
bnB1dFR5cGUuY3BwIFwKQEAgLTIzMDAsNiArMjI5OCw4IEBAIHdlYmNvcmVfc291cmNlcyArPSBc
CiAJU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9XZWJWVFRUb2tlbi5oIFwKIAlTb3VyY2UvV2Vi
Q29yZS9odG1sL3RyYWNrL1dlYlZUVFRva2VuaXplci5oIFwKIAlTb3VyY2UvV2ViQ29yZS9odG1s
L3RyYWNrL1dlYlZUVFRva2VuaXplci5jcHAgXAorCVNvdXJjZS9XZWJDb3JlL2h0bWwvVVJMLmNw
cCBcCisJU291cmNlL1dlYkNvcmUvaHRtbC9VUkwuaCBcCiAJU291cmNlL1dlYkNvcmUvaHRtbC9V
UkxJbnB1dFR5cGUuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9odG1sL1VSTElucHV0VHlwZS5oIFwK
IAlTb3VyY2UvV2ViQ29yZS9odG1sL1ZhbGlkYXRpb25NZXNzYWdlLmNwcCBcCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9UYXJnZXQucHJpCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL1Rhcmdl
dC5wcmkJKHJldmlzaW9uIDEwNzM1NSkKKysrIFNvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkJKHdv
cmtpbmcgY29weSkKQEAgLTY5Niw3ICs2OTYsNyBAQCBTT1VSQ0VTICs9IFwKICAgICBodG1sL0RP
TUZvcm1EYXRhLmNwcCBcCiAgICAgaHRtbC9ET01TZXR0YWJsZVRva2VuTGlzdC5jcHAgXAogICAg
IGh0bWwvRE9NVG9rZW5MaXN0LmNwcCBcCi0gICAgaHRtbC9ET01VUkwuY3BwIFwKKyAgICBodG1s
L1VSTC5jcHAgXAogICAgIGh0bWwvRGF0ZUlucHV0VHlwZS5jcHAgXAogICAgIGh0bWwvRGF0ZVRp
bWVJbnB1dFR5cGUuY3BwIFwKICAgICBodG1sL0RhdGVUaW1lTG9jYWxJbnB1dFR5cGUuY3BwIFwK
QEAgLTE3ODEsNyArMTc4MSw3IEBAIEhFQURFUlMgKz0gXAogICAgIGh0bWwvRE9NRm9ybURhdGEu
aCBcCiAgICAgaHRtbC9ET01TZXR0YWJsZVRva2VuTGlzdC5oIFwKICAgICBodG1sL0RPTVRva2Vu
TGlzdC5oIFwKLSAgICBodG1sL0RPTVVSTC5oIFwKKyAgICBodG1sL1VSTC5oIFwKICAgICBodG1s
L0Zvcm1Bc3NvY2lhdGVkRWxlbWVudC5oIFwKICAgICBodG1sL0Zvcm1EYXRhTGlzdC5oIFwKICAg
ICBodG1sL0ZUUERpcmVjdG9yeURvY3VtZW50LmggXApJbmRleDogU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS5neXBpCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQkocmV2
aXNpb24gMTA3MzU1KQorKysgU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpCSh3b3JraW5nIGNv
cHkpCkBAIC04NTQsNyArODU0LDYgQEAKICAgICAgICAgICAgICdodG1sL0RPTUZvcm1EYXRhLmlk
bCcsCiAgICAgICAgICAgICAnaHRtbC9ET01TZXR0YWJsZVRva2VuTGlzdC5pZGwnLAogICAgICAg
ICAgICAgJ2h0bWwvRE9NVG9rZW5MaXN0LmlkbCcsCi0gICAgICAgICAgICAnaHRtbC9ET01VUkwu
aWRsJywKICAgICAgICAgICAgICdodG1sL0hUTUxBbGxDb2xsZWN0aW9uLmlkbCcsCiAgICAgICAg
ICAgICAnaHRtbC9IVE1MQW5jaG9yRWxlbWVudC5pZGwnLAogICAgICAgICAgICAgJ2h0bWwvSFRN
TEFwcGxldEVsZW1lbnQuaWRsJywKQEAgLTkzNiw2ICs5MzUsNyBAQAogICAgICAgICAgICAgJ2h0
bWwvVGV4dFRyYWNrQ3VlLmlkbCcsCiAgICAgICAgICAgICAnaHRtbC9UZXh0VHJhY2tDdWVMaXN0
LmlkbCcsCiAgICAgICAgICAgICAnaHRtbC9UaW1lUmFuZ2VzLmlkbCcsCisgICAgICAgICAgICAn
aHRtbC9VUkwuaWRsJywKICAgICAgICAgICAgICdodG1sL1ZhbGlkaXR5U3RhdGUuaWRsJywKICAg
ICAgICAgICAgICdodG1sL1ZvaWRDYWxsYmFjay5pZGwnLAogICAgICAgICAgICAgJ2h0bWwvY2Fu
dmFzL0FycmF5QnVmZmVyLmlkbCcsCkBAIC01MTcxLDggKzUxNzEsNiBAQAogICAgICAgICAgICAg
J2h0bWwvRE9NU2V0dGFibGVUb2tlbkxpc3QuaCcsCiAgICAgICAgICAgICAnaHRtbC9ET01Ub2tl
bkxpc3QuY3BwJywKICAgICAgICAgICAgICdodG1sL0RPTVRva2VuTGlzdC5oJywKLSAgICAgICAg
ICAgICdodG1sL0RPTVVSTC5jcHAnLAotICAgICAgICAgICAgJ2h0bWwvRE9NVVJMLmgnLAogICAg
ICAgICAgICAgJ2h0bWwvRGF0ZUlucHV0VHlwZS5jcHAnLAogICAgICAgICAgICAgJ2h0bWwvRGF0
ZUlucHV0VHlwZS5oJywKICAgICAgICAgICAgICdodG1sL0RhdGVUaW1lSW5wdXRUeXBlLmNwcCcs
CkBAIC01NDA4LDYgKzU0MDYsOCBAQAogICAgICAgICAgICAgJ2h0bWwvVGltZUlucHV0VHlwZS5o
JywKICAgICAgICAgICAgICdodG1sL1RpbWVSYW5nZXMuY3BwJywKICAgICAgICAgICAgICdodG1s
L1RpbWVSYW5nZXMuaCcsCisgICAgICAgICAgICAnaHRtbC9VUkwuY3BwJywKKyAgICAgICAgICAg
ICdodG1sL1VSTC5oJywKICAgICAgICAgICAgICdodG1sL1VSTElucHV0VHlwZS5jcHAnLAogICAg
ICAgICAgICAgJ2h0bWwvVVJMSW5wdXRUeXBlLmgnLAogICAgICAgICAgICAgJ2h0bWwvVmFsaWRh
dGlvbk1lc3NhZ2UuY3BwJywKQEAgLTcwNDksOCArNzA0OSw2IEBACiAgICAgICAgICAgICAnPChQ
Uk9EVUNUX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0RPTVN0cmluZ01hcC5oJywKICAg
ICAgICAgICAgICc8KFBST0RVQ1RfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRE9NVG9r
ZW5MaXN0LmNwcCcsCiAgICAgICAgICAgICAnPChQUk9EVUNUX0RJUikvRGVyaXZlZFNvdXJjZXMv
V2ViQ29yZS9KU0RPTVRva2VuTGlzdC5oJywKLSAgICAgICAgICAgICc8KFBST0RVQ1RfRElSKS9E
ZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRE9NVVJMLmNwcCcsCi0gICAgICAgICAgICAnPChQUk9E
VUNUX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0RPTVVSTC5oJywKICAgICAgICAgICAg
ICc8KFBST0RVQ1RfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRE9NV2luZG93LmNwcCcs
CiAgICAgICAgICAgICAnPChQUk9EVUNUX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0Rh
dGFWaWV3LmNwcCcsCiAgICAgICAgICAgICAnPChQUk9EVUNUX0RJUikvRGVyaXZlZFNvdXJjZXMv
V2ViQ29yZS9KU0RhdGFWaWV3LmgnLApAQCAtNzg0Niw2ICs3ODQ0LDggQEAKICAgICAgICAgICAg
ICc8KFBST0RVQ1RfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTVHJlZVdhbGtlci5oJywK
ICAgICAgICAgICAgICc8KFBST0RVQ1RfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTVUlF
dmVudC5jcHAnLAogICAgICAgICAgICAgJzwoUFJPRFVDVF9ESVIpL0Rlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvSlNVSUV2ZW50LmgnLAorICAgICAgICAgICAgJzwoUFJPRFVDVF9ESVIpL0Rlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvSlNVUkwuY3BwJywKKyAgICAgICAgICAgICc8KFBST0RVQ1RfRElSKS9E
ZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTVVJMLmgnLAogICAgICAgICAgICAgJzwoUFJPRFVDVF9E
SVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNVaW50MTZBcnJheS5jcHAnLAogICAgICAgICAg
ICAgJzwoUFJPRFVDVF9ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNVaW50MTZBcnJheS5o
JywKICAgICAgICAgICAgICc8KFBST0RVQ1RfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pT
VWludDMyQXJyYXkuY3BwJywKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dl
YkNvcmUudmNwcm9qCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9q
L1dlYkNvcmUudmNwcm9qCShyZXZpc2lvbiAxMDczNTUpCisrKyBTb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagkod29ya2luZyBjb3B5KQpAQCAtNDA1OCw3ICs0MDU4
LDcgQEAKIAkJCQk+CiAJCQk8L0ZpbGU+CiAJCQk8RmlsZQotCQkJCVJlbGF0aXZlUGF0aD0iJChD
b25maWd1cmF0aW9uQnVpbGREaXIpXG9ialwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xK
U0RPTVVSTC5jcHAiCisJCQkJUmVsYXRpdmVQYXRoPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilc
b2JqXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTVVJMLmNwcCIKIAkJCQk+CiAJCQkJ
PEZpbGVDb25maWd1cmF0aW9uCiAJCQkJCU5hbWU9IkRlYnVnfFdpbjMyIgpAQCAtNDExMCw3ICs0
MTEwLDcgQEAKIAkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgogCQkJPC9GaWxlPgogCQkJPEZpbGUK
LQkJCQlSZWxhdGl2ZVBhdGg9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmpcJChQcm9qZWN0
TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNET01VUkwuaCIKKwkJCQlSZWxhdGl2ZVBhdGg9IiQoQ29u
ZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmpcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNV
UkwuaCIKIAkJCQk+CiAJCQk8L0ZpbGU+CiAJCQk8RmlsZQpAQCAtNTU4NTAsMTEgKzU1ODUwLDEx
IEBACiAJCQkJPgogCQkJPC9GaWxlPgogCQkJPEZpbGUKLQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0
bWxcRE9NVVJMLmNwcCIKKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcVVJMLmNwcCIKIAkJCQk+
CiAJCQk8L0ZpbGU+CiAJCQk8RmlsZQotCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFxET01VUkwu
aCIKKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcVVJMLmgiCiAJCQkJPgogCQkJPC9GaWxlPgog
CQkJPEZpbGUKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvago9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2oJKHJldmlzaW9uIDEwNzM1NSkKKysrIFNvdXJjZS9XZWJDb3JlL1dlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5KQpAQCAtNzY4LDEwICs3
NjgsMTAgQEAKIAkJMkUyRDk5RUExMEUyQkMzODAwNDk2MzM3IC8qIERPTUJsb2JJbnRlcm5hbC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkUyRDk5RTkx
MEUyQkMzODAwNDk2MzM3IC8qIERPTUJsb2JJbnRlcm5hbC5oICovOyB9OwogCQkyRTJEOTlFQjEw
RTJCRDM5MDA0OTYzMzcgLyogRE9NQmxvYi5oIGluIENvcHkgR2VuZXJhdGVkIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkUyRDk5RTUxMEUyQkMxQzAwNDk2MzM3
IC8qIERPTUJsb2IuaCAqLzsgfTsKIAkJMkUyRDk5RUMxMEUyQkQzOTAwNDk2MzM3IC8qIERPTUJs
b2JJbnRlcm5hbC5oIGluIENvcHkgR2VuZXJhdGVkIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMkUyRDk5RTkxMEUyQkMzODAwNDk2MzM3IC8qIERPTUJsb2JJbnRl
cm5hbC5oICovOyB9OwotCQkyRTM3REZEQTEyREJBRkI4MDBBNkIyMzMgLyogRE9NVVJMLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJFMzdERkQ3MTJE
QkFGQjgwMEE2QjIzMyAvKiBET01VUkwuY3BwICovOyB9OwotCQkyRTM3REZEQjEyREJBRkI4MDBB
NkIyMzMgLyogRE9NVVJMLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAyRTM3REZEODEyREJBRkI4MDBBNkIyMzMgLyogRE9NVVJMLmggKi87IH07Ci0JCTJF
MzdFMDA1MTJEQkM1QTQwMEE2QjIzMyAvKiBKU0RPTVVSTC5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRTM3RTAwMzEyREJDNUE0MDBBNkIyMzMgLyog
SlNET01VUkwuY3BwICovOyB9OwotCQkyRTM3RTAwNjEyREJDNUE0MDBBNkIyMzMgLyogSlNET01V
UkwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJFMzdF
MDA0MTJEQkM1QTQwMEE2QjIzMyAvKiBKU0RPTVVSTC5oICovOyB9OworCQkyRTM3REZEQTEyREJB
RkI4MDBBNkIyMzMgLyogVVJMLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDJFMzdERkQ3MTJEQkFGQjgwMEE2QjIzMyAvKiBVUkwuY3BwICovOyB9Owor
CQkyRTM3REZEQjEyREJBRkI4MDBBNkIyMzMgLyogVVJMLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRTM3REZEODEyREJBRkI4MDBBNkIyMzMgLyogVVJM
LmggKi87IH07CisJCTJFMzdFMDA1MTJEQkM1QTQwMEE2QjIzMyAvKiBKU1VSTC5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRTM3RTAwMzEyREJDNUE0
MDBBNkIyMzMgLyogSlNVUkwuY3BwICovOyB9OworCQkyRTM3RTAwNjEyREJDNUE0MDBBNkIyMzMg
LyogSlNVUkwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDJFMzdFMDA0MTJEQkM1QTQwMEE2QjIzMyAvKiBKU1VSTC5oICovOyB9OwogCQkyRTNCQkYwNzEx
NjJEQTExMDBCOTQwOUEgLyogVVVJRC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAyRTNCQkYwNTExNjJEQTExMDBCOTQwOUEgLyogVVVJRC5jcHAgKi87
IH07CiAJCTJFM0JCRjA4MTE2MkRBMTEwMEI5NDA5QSAvKiBVVUlELmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRTNCQkYwNjExNjJEQTExMDBCOTQwOUEg
LyogVVVJRC5oICovOyB9OwogCQkyRTNCQzBDQTExN0QzRTA4MDBCOTQwOUEgLyogSlNGaWxlRXJy
b3IuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkUz
QkMwQzgxMTdEM0UwODAwQjk0MDlBIC8qIEpTRmlsZUVycm9yLmNwcCAqLzsgfTsKQEAgLTc1Mjcs
MTEgKzc1MjcsMTEgQEAKIAkJMkUyRDk5RTUxMEUyQkMxQzAwNDk2MzM3IC8qIERPTUJsb2IuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NQmxvYi5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQkyRTJEOTlFNjEwRTJCQzFDMDA0OTYzMzcgLyogRE9NQmxvYi5tbSAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IERPTUJsb2IubW07IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTJFMkQ5OUU5MTBFMkJDMzgwMDQ5NjMzNyAvKiBET01C
bG9iSW50ZXJuYWwuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NQmxvYklu
dGVybmFsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTJFMzdERkQ3MTJEQkFGQjgw
MEE2QjIzMyAvKiBET01VUkwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gRE9NVVJMLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMkUzN0RGRDgxMkRC
QUZCODAwQTZCMjMzIC8qIERPTVVSTC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBET01VUkwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMkUzN0RGRDkxMkRCQUZC
ODAwQTZCMjMzIC8qIERPTVVSTC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRE9NVVJMLmlk
bDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMkUzN0UwMDMxMkRCQzVBNDAwQTZCMjMz
IC8qIEpTRE9NVVJMLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
RE9NVVJMLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMkUzN0UwMDQxMkRCQzVB
NDAwQTZCMjMzIC8qIEpTRE9NVVJMLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEpTRE9NVVJMLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJFMzdERkQ3MTJEQkFG
QjgwMEE2QjIzMyAvKiBVUkwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gVVJMLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkUzN0RGRDgxMkRCQUZC
ODAwQTZCMjMzIC8qIFVSTC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBVUkwu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkUzN0RGRDkxMkRCQUZCODAwQTZCMjMz
IC8qIFVSTC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gVVJMLmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMkUzN0UwMDMxMkRCQzVBNDAwQTZCMjMzIC8qIEpTVVJMLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTVVJMLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkUzN0UwMDQxMkRCQzVBNDAwQTZCMjMzIC8qIEpTVVJMLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTVVJMLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTJFM0JCRjA1MTE2MkRBMTEwMEI5NDA5QSAvKiBVVUlELmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFVVSUQuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQkyRTNCQkYwNjExNjJEQTExMDBCOTQwOUEgLyogVVVJRC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBVVUlELmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTJFM0JDMEM4MTE3RDNFMDgwMEI5NDA5QSAvKiBKU0ZpbGVFcnJvci5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0ZpbGVFcnJvci5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xNjY0NCw5ICsxNjY0NCw5IEBACiAJCQkJNzZGQzJC
MDgxMjM3MERBMDAwNkE5OTFBIC8qIERPTVRva2VuTGlzdC5jcHAgKi8sCiAJCQkJNzZGQzJCMDkx
MjM3MERBMDAwNkE5OTFBIC8qIERPTVRva2VuTGlzdC5oICovLAogCQkJCTc2RkMyQjBBMTIzNzBE
QTAwMDZBOTkxQSAvKiBET01Ub2tlbkxpc3QuaWRsICovLAotCQkJCTJFMzdERkQ3MTJEQkFGQjgw
MEE2QjIzMyAvKiBET01VUkwuY3BwICovLAotCQkJCTJFMzdERkQ4MTJEQkFGQjgwMEE2QjIzMyAv
KiBET01VUkwuaCAqLywKLQkJCQkyRTM3REZEOTEyREJBRkI4MDBBNkIyMzMgLyogRE9NVVJMLmlk
bCAqLywKKwkJCQkyRTM3REZENzEyREJBRkI4MDBBNkIyMzMgLyogVVJMLmNwcCAqLywKKwkJCQky
RTM3REZEODEyREJBRkI4MDBBNkIyMzMgLyogVVJMLmggKi8sCisJCQkJMkUzN0RGRDkxMkRCQUZC
ODAwQTZCMjMzIC8qIFVSTC5pZGwgKi8sCiAJCQkJRjU1QjNEODcxMjUxRjEyRDAwM0VGMjY5IC8q
IEVtYWlsSW5wdXRUeXBlLmNwcCAqLywKIAkJCQlGNTVCM0Q4ODEyNTFGMTJEMDAzRUYyNjkgLyog
RW1haWxJbnB1dFR5cGUuaCAqLywKIAkJCQlGNTVCM0Q4OTEyNTFGMTJEMDAzRUYyNjkgLyogRmls
ZUlucHV0VHlwZS5jcHAgKi8sCkBAIC0xNzI2Miw4ICsxNzI2Miw4IEBACiAJCQkJNEFDQkMwQzkx
MjcxM0QwQTAwOTRGOUIyIC8qIEpTRE9NU2V0dGFibGVUb2tlbkxpc3QuaCAqLywKIAkJCQk3Njk0
NTYzQTEyMTREOTdDMDAwN0NCQUUgLyogSlNET01Ub2tlbkxpc3QuY3BwICovLAogCQkJCTc2OTQ1
NjNCMTIxNEQ5N0MwMDA3Q0JBRSAvKiBKU0RPTVRva2VuTGlzdC5oICovLAotCQkJCTJFMzdFMDAz
MTJEQkM1QTQwMEE2QjIzMyAvKiBKU0RPTVVSTC5jcHAgKi8sCi0JCQkJMkUzN0UwMDQxMkRCQzVB
NDAwQTZCMjMzIC8qIEpTRE9NVVJMLmggKi8sCisJCQkJMkUzN0UwMDMxMkRCQzVBNDAwQTZCMjMz
IC8qIEpTVVJMLmNwcCAqLywKKwkJCQkyRTM3RTAwNDEyREJDNUE0MDBBNkIyMzMgLyogSlNVUkwu
aCAqLywKIAkJCQk0OUVFQ0VGNDEwNTA3MEM0MDAwOTlGQUIgLyogSlNGbG9hdDMyQXJyYXkuY3Bw
ICovLAogCQkJCTQ5RUVDRUY1MTA1MDcwQzQwMDA5OUZBQiAvKiBKU0Zsb2F0MzJBcnJheS5oICov
LAogCQkJCTZFQkM1RUFEMTM4QjUwRjIwMEEwQ0Y4QSAvKiBKU0Zsb2F0NjRBcnJheS5jcHAgKi8s
CkBAIC0yMjAwMyw3ICsyMjAwMyw3IEBACiAJCQkJODUwQjQxQzMwQUQ5RTdFNzAwQTZFRDRGIC8q
IERPTVRyZWVXYWxrZXJJbnRlcm5hbC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJODVDN0Y0OTEwQUFG
NzlEQzAwNDAxNEREIC8qIERPTVVJRXZlbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTg1OTg5REQw
MEFDQzhCQkQwMEEwQkM1MSAvKiBET01VSUV2ZW50SW50ZXJuYWwuaCBpbiBIZWFkZXJzICovLAot
CQkJCTJFMzdERkRCMTJEQkFGQjgwMEE2QjIzMyAvKiBET01VUkwuaCBpbiBIZWFkZXJzICovLAor
CQkJCTJFMzdERkRCMTJEQkFGQjgwMEE2QjIzMyAvKiBVUkwuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTE1Qzc3MEE2MTAwRDQxQ0QwMDVCQTI2NyAvKiBET01WYWxpZGl0eVN0YXRlLmggaW4gSGVhZGVy
cyAqLywKIAkJCQlCQzFBMzdDMDA5N0M3MTVGMDAxOUYzRDggLyogRE9NVmlld3MuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTMxOTQ2MTZBMTMwMjBCNjYwMDRCQjNGOCAvKiBET01XZWJLaXRBbmltYXRp
b24uaCBpbiBIZWFkZXJzICovLApAQCAtMjI2MDQsNyArMjI2MDQsNyBAQAogCQkJCUM1MTM3Q0Yz
MTFBNTgzNzgwMDRBREI5OSAvKiBKU0RPTVN0cmluZ0xpc3QuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUJDNjQ2NDk4MTFEODIzNDkwMDY0NTVCMCAvKiBKU0RPTVN0cmluZ01hcC5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJNzY5NDU2M0QxMjE0RDk3QzAwMDdDQkFFIC8qIEpTRE9NVG9rZW5MaXN0LmggaW4g
SGVhZGVycyAqLywKLQkJCQkyRTM3RTAwNjEyREJDNUE0MDBBNkIyMzMgLyogSlNET01VUkwuaCBp
biBIZWFkZXJzICovLAorCQkJCTJFMzdFMDA2MTJEQkM1QTQwMEE2QjIzMyAvKiBKU1VSTC5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJQkM2OTMyNzQwRDdFMjkzOTAwQUU0NEQxIC8qIEpTRE9NV2luZG93
QmFzZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNjUyRkJCQkMwREUyN0NCNjAwMDFEMzg2IC8qIEpT
RE9NV2luZG93Q3VzdG9tLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQ0JGQjUzRDBEQ0QyOUNGMDAx
OUIzRTUgLyogSlNET01XaW5kb3dTaGVsbC5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNTExMyw3ICsy
NTExMyw3IEBACiAJCQkJNzZGQzJCMEIxMjM3MERBMDAwNkE5OTFBIC8qIERPTVRva2VuTGlzdC5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQk4NTUyNkNEMzBBQjBCN0RBMDAwMzAyRUEgLyogRE9NVHJl
ZVdhbGtlci5tbSBpbiBTb3VyY2VzICovLAogCQkJCTg1QzdGNDkyMEFBRjc5REMwMDQwMTRERCAv
KiBET01VSUV2ZW50Lm1tIGluIFNvdXJjZXMgKi8sCi0JCQkJMkUzN0RGREExMkRCQUZCODAwQTZC
MjMzIC8qIERPTVVSTC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkyRTM3REZEQTEyREJBRkI4MDBB
NkIyMzMgLyogVVJMLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJDMUEzN0JGMDk3QzcxNUYwMDE5
RjNEOCAvKiBET01VdGlsaXR5Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMTVDNzcwQTUxMDBENDFD
RDAwNUJBMjY3IC8qIERPTVZhbGlkaXR5U3RhdGUubW0gaW4gU291cmNlcyAqLywKIAkJCQkzMTk0
NjE2QjEzMDIwQjY2MDA0QkIzRjggLyogRE9NV2ViS2l0QW5pbWF0aW9uLm1tIGluIFNvdXJjZXMg
Ki8sCkBAIC0yNTY3Myw3ICsyNTY3Myw3IEBACiAJCQkJQkM2NDY0OUMxMUQ4MjM4QzAwNjQ1NUIw
IC8qIEpTRE9NU3RyaW5nTWFwQ3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTc2OTQ1NjND
MTIxNEQ5N0MwMDA3Q0JBRSAvKiBKU0RPTVRva2VuTGlzdC5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQkxNEUwQkM1NjEzNjE0OEE4MDAyQUQxMkUgLyogSlNET01Ub2tlbkxpc3RDdXN0b20uY3BwIGlu
IFNvdXJjZXMgKi8sCi0JCQkJMkUzN0UwMDUxMkRCQzVBNDAwQTZCMjMzIC8qIEpTRE9NVVJMLmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCTJFMzdFMDA1MTJEQkM1QTQwMEE2QjIzMyAvKiBKU1VSTC5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQkxNDAzQkEwQzA5RUIxOEM3MDA3OTdDN0YgLyogSlNET01X
aW5kb3cuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkM2OTMyNzMwRDdFMjkzOTAwQUU0NEQxIC8q
IEpTRE9NV2luZG93QmFzZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0Q5QzI2MjBDMTdBQTY3
MDA1QzkwQTIgLyogSlNET01XaW5kb3dDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9odG1sL0RPTVVSTC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvaHRtbC9ET01VUkwuY3BwCShyZXZpc2lvbiAxMDczNTUpCisrKyBTb3VyY2UvV2ViQ29yZS9o
dG1sL0RPTVVSTC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEsMTEzICswLDAgQEAKLS8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIENv
cHlyaWdodCAoQykgMjAxMiBNb3Rvcm9sYSBNb2JpbGl0eSBJbmMuCi0gKgotICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgotICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
Ci0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBBTkQgSVRTIENPTlRS
SUJVVE9SUyAiQVMgSVMiIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUKLSAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIE9SIElUUyBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCi0gKiAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7Ci0gKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQKLSAqIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKLSAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNv
bmZpZy5oIgotCi0jaWYgRU5BQkxFKEJMT0IpCi0KLSNpbmNsdWRlICJET01VUkwuaCIKLQotI2lu
Y2x1ZGUgIkFjdGl2ZURPTU9iamVjdC5oIgotI2luY2x1ZGUgIkJsb2IuaCIKLSNpbmNsdWRlICJC
bG9iVVJMLmgiCi0jaW5jbHVkZSAiS1VSTC5oIgotI2luY2x1ZGUgIlB1YmxpY1VSTE1hbmFnZXIu
aCIKLSNpbmNsdWRlICJTY3JpcHRFeGVjdXRpb25Db250ZXh0LmgiCi0jaW5jbHVkZSAiU2VjdXJp
dHlPcmlnaW4uaCIKLSNpbmNsdWRlICJUaHJlYWRhYmxlQmxvYlJlZ2lzdHJ5LmgiCi0jaW5jbHVk
ZSA8d3RmL1Bhc3NPd25QdHIuaD4KLSNpbmNsdWRlIDx3dGYvTWFpblRocmVhZC5oPgotCi0jaWYg
RU5BQkxFKE1FRElBX1NUUkVBTSkKLSNpbmNsdWRlICJNZWRpYVN0cmVhbS5oIgotI2luY2x1ZGUg
Ik1lZGlhU3RyZWFtUmVnaXN0cnkuaCIKLSNlbmRpZgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0K
LSNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQotU3RyaW5nIERPTVVSTDo6Y3JlYXRlT2JqZWN0VVJM
KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIE1lZGlhU3Ry
ZWFtKiBzdHJlYW0pCi17Ci0gICAgaWYgKCFzY3JpcHRFeGVjdXRpb25Db250ZXh0IHx8ICFzdHJl
YW0pCi0gICAgICAgIHJldHVybiBTdHJpbmcoKTsKLQotICAgIEtVUkwgcHVibGljVVJMID0gQmxv
YlVSTDo6Y3JlYXRlUHVibGljVVJMKHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQtPnNlY3VyaXR5T3Jp
Z2luKCkpOwotICAgIGlmIChwdWJsaWNVUkwuaXNFbXB0eSgpKQotICAgICAgICByZXR1cm4gU3Ry
aW5nKCk7Ci0KLSAgICAvLyBTaW5jZSBXZWJXb3JrZXJzIGNhbm5vdCBvYnRhaW4gU3RyZWFtIG9i
amVjdHMsIHdlIHNob3VsZCBiZSBvbiB0aGUgbWFpbiB0aHJlYWQuCi0gICAgQVNTRVJUKGlzTWFp
blRocmVhZCgpKTsKLQotICAgIE1lZGlhU3RyZWFtUmVnaXN0cnk6OnJlZ2lzdHJ5KCkucmVnaXN0
ZXJNZWRpYVN0cmVhbVVSTChwdWJsaWNVUkwsIHN0cmVhbSk7Ci0gICAgc2NyaXB0RXhlY3V0aW9u
Q29udGV4dC0+cHVibGljVVJMTWFuYWdlcigpLnN0cmVhbVVSTHMoKS5hZGQocHVibGljVVJMLnN0
cmluZygpKTsKLQotICAgIHJldHVybiBwdWJsaWNVUkwuc3RyaW5nKCk7Ci19Ci0jZW5kaWYKLQot
U3RyaW5nIERPTVVSTDo6Y3JlYXRlT2JqZWN0VVJMKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQsIEJsb2IqIGJsb2IpCi17Ci0gICAgaWYgKCFzY3JpcHRFeGVj
dXRpb25Db250ZXh0IHx8ICFibG9iKQotICAgICAgICByZXR1cm4gU3RyaW5nKCk7Ci0KLSAgICBL
VVJMIHB1YmxpY1VSTCA9IEJsb2JVUkw6OmNyZWF0ZVB1YmxpY1VSTChzY3JpcHRFeGVjdXRpb25D
b250ZXh0LT5zZWN1cml0eU9yaWdpbigpKTsKLSAgICBpZiAocHVibGljVVJMLmlzRW1wdHkoKSkK
LSAgICAgICAgcmV0dXJuIFN0cmluZygpOwotCi0gICAgVGhyZWFkYWJsZUJsb2JSZWdpc3RyeTo6
cmVnaXN0ZXJCbG9iVVJMKHB1YmxpY1VSTCwgYmxvYi0+dXJsKCkpOwotICAgIHNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQtPnB1YmxpY1VSTE1hbmFnZXIoKS5ibG9iVVJMcygpLmFkZChwdWJsaWNVUkwu
c3RyaW5nKCkpOwotCi0gICAgcmV0dXJuIHB1YmxpY1VSTC5zdHJpbmcoKTsKLX0KLQotdm9pZCBE
T01VUkw6OnJldm9rZU9iamVjdFVSTChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRFeGVj
dXRpb25Db250ZXh0LCBjb25zdCBTdHJpbmcmIHVybFN0cmluZykKLXsKLSAgICBpZiAoIXNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQpCi0gICAgICAgIHJldHVybjsKLQotICAgIEtVUkwgdXJsKEtVUkwo
KSwgdXJsU3RyaW5nKTsKLQotICAgIEhhc2hTZXQ8U3RyaW5nPiYgYmxvYlVSTHMgPSBzY3JpcHRF
eGVjdXRpb25Db250ZXh0LT5wdWJsaWNVUkxNYW5hZ2VyKCkuYmxvYlVSTHMoKTsKLSAgICBpZiAo
YmxvYlVSTHMuY29udGFpbnModXJsLnN0cmluZygpKSkgewotICAgICAgICBUaHJlYWRhYmxlQmxv
YlJlZ2lzdHJ5Ojp1bnJlZ2lzdGVyQmxvYlVSTCh1cmwpOwotICAgICAgICBibG9iVVJMcy5yZW1v
dmUodXJsLnN0cmluZygpKTsKLSAgICB9Ci0KLSNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQotICAg
IEhhc2hTZXQ8U3RyaW5nPiYgc3RyZWFtVVJMcyA9IHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQtPnB1
YmxpY1VSTE1hbmFnZXIoKS5zdHJlYW1VUkxzKCk7Ci0gICAgaWYgKHN0cmVhbVVSTHMuY29udGFp
bnModXJsLnN0cmluZygpKSkgewotICAgICAgICAvLyBGSVhNRTogbWFrZSBzdXJlIG9mIHRoaXMg
YXNzZXJ0aW9uIGJlbG93LiBSYWlzZSBhIHNwZWMgcXVlc3Rpb24gaWYgcmVxdWlyZWQuCi0gICAg
ICAgIC8vIFNpbmNlIFdlYldvcmtlcnMgY2Fubm90IG9idGFpbiBTdHJlYW0gb2JqZWN0cywgd2Ug
c2hvdWxkIGJlIG9uIHRoZSBtYWluIHRocmVhZC4KLSAgICAgICAgQVNTRVJUKGlzTWFpblRocmVh
ZCgpKTsKLSAgICAgICAgTWVkaWFTdHJlYW1SZWdpc3RyeTo6cmVnaXN0cnkoKS51bnJlZ2lzdGVy
TWVkaWFTdHJlYW1VUkwodXJsKTsKLSAgICAgICAgc3RyZWFtVVJMcy5yZW1vdmUodXJsLnN0cmlu
ZygpKTsKLSAgICB9Ci0jZW5kaWYKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5k
aWYgLy8gRU5BQkxFKEJMT0IpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0RPTVVSTC5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvRE9NVVJMLmgJKHJldmlzaW9uIDEwNzM1
NSkKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvRE9NVVJMLmgJKHdvcmtpbmcgY29weSkKQEAgLTEs
NjAgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgotICogQ29weXJpZ2h0IChDKSAyMDEyIE1vdG9yb2xhIE1vYmlsaXR5IElu
Yy4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAx
LiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
Ci0gKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IEFQUExFIEFORCBJVFMgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5EIEFOWQotICogRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUg
SU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQotICogRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5U
SUFMIERBTUFHRVMKLSAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKLSAqIExPU1MgT0YgVVNFLCBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RAotICogT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRgotICogVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
LSAqLwotCi0jaWZuZGVmIERPTVVSTF9oCi0jZGVmaW5lIERPTVVSTF9oCi0KLSNpbmNsdWRlICJL
VVJMLmgiCi0jaW5jbHVkZSAiUGxhdGZvcm1TdHJpbmcuaCIKLSNpbmNsdWRlIDx3dGYvSGFzaFNl
dC5oPgotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50
ZWQuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBCbG9iOwotY2xhc3MgTWVkaWFT
dHJlYW07Ci1jbGFzcyBTY3JpcHRFeGVjdXRpb25Db250ZXh0OwotCi1jbGFzcyBET01VUkwgOiBw
dWJsaWMgUmVmQ291bnRlZDxET01VUkw+IHsKLQotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVm
UHRyPERPTVVSTD4gY3JlYXRlKCkgeyByZXR1cm4gYWRvcHRSZWYobmV3IERPTVVSTCk7IH0KLQot
I2lmIEVOQUJMRShCTE9CKQotICAgIHN0YXRpYyB2b2lkIGNvbnRleHREZXN0cm95ZWQoU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCopOwotCi0gICAgc3RhdGljIFN0cmluZyBjcmVhdGVPYmplY3RVUkwo
U2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIEJsb2IqKTsKLSAgICBzdGF0aWMgdm9pZCByZXZva2VP
YmplY3RVUkwoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNvbnN0IFN0cmluZyYpOwotI2lmIEVO
QUJMRShNRURJQV9TVFJFQU0pCi0gICAgc3RhdGljIFN0cmluZyBjcmVhdGVPYmplY3RVUkwoU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCosIE1lZGlhU3RyZWFtKik7Ci0jZW5kaWYKLSNlbmRpZgotfTsK
LQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRE9NVVJMX2gKSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL2h0bWwvRE9NVVJMLmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9odG1sL0RPTVVSTC5pZGwJKHJldmlzaW9uIDEwNzM1NSkKKysrIFNvdXJjZS9XZWJDb3JlL2h0
bWwvRE9NVVJMLmlkbAkod29ya2luZyBjb3B5KQpAQCAtMSw0MSArMCwwIEBACi0vKgotICogQ29w
eXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiBDb3B5
cmlnaHQgKEMpIDIwMTIgTW90b3JvbGEgTW9iaWxpdHkgSW5jLgotICoKLSAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAot
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
LSAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgot
ICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgQU5EIElUUyBDT05UUklC
VVRPUlMgIkFTIElTIiBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECi0gKiBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0Ug
QVJFCi0gKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBPUiBJVFMgQ09OVFJJ
QlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwotICogKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOwotICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5ECi0gKiBPTiBBTlkgVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFIE9GCi0gKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLW1vZHVsZSBodG1sIHsK
LSAgICBpbnRlcmZhY2UgWwotICAgICAgICBDb25kaXRpb25hbD1CTE9CLAotICAgICAgICBDb25z
dHJ1Y3RvciwKLSAgICAgICAgSlNHZW5lcmF0ZVRvTmF0aXZlT2JqZWN0LAotICAgICAgICBKU0dl
bmVyYXRlVG9KUywKLSAgICAgICAgSlNOb1N0YXRpY1RhYmxlcwotICAgIF0gRE9NVVJMIHsKLSNp
ZiBkZWZpbmVkKEVOQUJMRV9NRURJQV9TVFJFQU0pICYmIEVOQUJMRV9NRURJQV9TVFJFQU0KLSAg
ICAgICAgc3RhdGljIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0LFRyZWF0UmV0dXJu
ZWROdWxsU3RyaW5nQXM9VW5kZWZpbmVkXSBET01TdHJpbmcgY3JlYXRlT2JqZWN0VVJMKGluIE1l
ZGlhU3RyZWFtIHN0cmVhbSk7Ci0jZW5kaWYKLSAgICAgICAgc3RhdGljIFtDYWxsV2l0aD1TY3Jp
cHRFeGVjdXRpb25Db250ZXh0LFRyZWF0UmV0dXJuZWROdWxsU3RyaW5nQXM9VW5kZWZpbmVkXSBE
T01TdHJpbmcgY3JlYXRlT2JqZWN0VVJMKGluIEJsb2IgYmxvYik7Ci0gICAgICAgIHN0YXRpYyBb
Q2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gdm9pZCByZXZva2VPYmplY3RVUkwoaW4g
RE9NU3RyaW5nIHVybCk7Ci0gICAgfTsKLX0KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvVVJM
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL1VSTC5jcHAJKHJldmlzaW9u
IDApCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL1VSTC5jcHAJKHJldmlzaW9uIDApCkBAIC0wLDAg
KzEsMTEyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgTW90b3JvbGEgTW9iaWxpdHkgSW5j
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICoKKyAqIDEu
ICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
QVBQTEUgQU5EIElUUyBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQgQU5ZCisgKiBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
CisgKiBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GCisgKiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJVUkwuaCIKKworI2lmIEVOQUJM
RShCTE9CKQorCisjaW5jbHVkZSAiQWN0aXZlRE9NT2JqZWN0LmgiCisjaW5jbHVkZSAiQmxvYi5o
IgorI2luY2x1ZGUgIkJsb2JVUkwuaCIKKyNpbmNsdWRlICJLVVJMLmgiCisjaW5jbHVkZSAiUHVi
bGljVVJMTWFuYWdlci5oIgorI2luY2x1ZGUgIlNjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaCIKKyNp
bmNsdWRlICJTZWN1cml0eU9yaWdpbi5oIgorI2luY2x1ZGUgIlRocmVhZGFibGVCbG9iUmVnaXN0
cnkuaCIKKyNpbmNsdWRlIDx3dGYvTWFpblRocmVhZC5oPgorI2luY2x1ZGUgPHd0Zi9QYXNzT3du
UHRyLmg+CisKKyNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorI2luY2x1ZGUgIk1lZGlhU3RyZWFt
LmgiCisjaW5jbHVkZSAiTWVkaWFTdHJlYW1SZWdpc3RyeS5oIgorI2VuZGlmCisKK25hbWVzcGFj
ZSBXZWJDb3JlIHsKKworI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCitTdHJpbmcgVVJMOjpjcmVh
dGVPYmplY3RVUkwoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4
dCwgTWVkaWFTdHJlYW0qIHN0cmVhbSkKK3sKKyAgICBpZiAoIXNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQgfHwgIXN0cmVhbSkKKyAgICAgICAgcmV0dXJuIFN0cmluZygpOworCisgICAgS1VSTCBwdWJs
aWNVUkwgPSBCbG9iVVJMOjpjcmVhdGVQdWJsaWNVUkwoc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+
c2VjdXJpdHlPcmlnaW4oKSk7CisgICAgaWYgKHB1YmxpY1VSTC5pc0VtcHR5KCkpCisgICAgICAg
IHJldHVybiBTdHJpbmcoKTsKKworICAgIC8vIFNpbmNlIFdlYldvcmtlcnMgY2Fubm90IG9idGFp
biBTdHJlYW0gb2JqZWN0cywgd2Ugc2hvdWxkIGJlIG9uIHRoZSBtYWluIHRocmVhZC4KKyAgICBB
U1NFUlQoaXNNYWluVGhyZWFkKCkpOworCisgICAgTWVkaWFTdHJlYW1SZWdpc3RyeTo6cmVnaXN0
cnkoKS5yZWdpc3Rlck1lZGlhU3RyZWFtVVJMKHB1YmxpY1VSTCwgc3RyZWFtKTsKKyAgICBzY3Jp
cHRFeGVjdXRpb25Db250ZXh0LT5wdWJsaWNVUkxNYW5hZ2VyKCkuc3RyZWFtVVJMcygpLmFkZChw
dWJsaWNVUkwuc3RyaW5nKCkpOworCisgICAgcmV0dXJuIHB1YmxpY1VSTC5zdHJpbmcoKTsKK30K
KyNlbmRpZgorCitTdHJpbmcgVVJMOjpjcmVhdGVPYmplY3RVUkwoU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgQmxvYiogYmxvYikKK3sKKyAgICBpZiAoIXNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQgfHwgIWJsb2IpCisgICAgICAgIHJldHVybiBTdHJpbmcoKTsK
KworICAgIEtVUkwgcHVibGljVVJMID0gQmxvYlVSTDo6Y3JlYXRlUHVibGljVVJMKHNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQtPnNlY3VyaXR5T3JpZ2luKCkpOworICAgIGlmIChwdWJsaWNVUkwuaXNF
bXB0eSgpKQorICAgICAgICByZXR1cm4gU3RyaW5nKCk7CisKKyAgICBUaHJlYWRhYmxlQmxvYlJl
Z2lzdHJ5OjpyZWdpc3RlckJsb2JVUkwocHVibGljVVJMLCBibG9iLT51cmwoKSk7CisgICAgc2Ny
aXB0RXhlY3V0aW9uQ29udGV4dC0+cHVibGljVVJMTWFuYWdlcigpLmJsb2JVUkxzKCkuYWRkKHB1
YmxpY1VSTC5zdHJpbmcoKSk7CisKKyAgICByZXR1cm4gcHVibGljVVJMLnN0cmluZygpOworfQor
Cit2b2lkIFVSTDo6cmV2b2tlT2JqZWN0VVJMKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQsIGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nKQoreworICAgIGlmICgh
c2NyaXB0RXhlY3V0aW9uQ29udGV4dCkKKyAgICAgICAgcmV0dXJuOworCisgICAgS1VSTCB1cmwo
S1VSTCgpLCB1cmxTdHJpbmcpOworCisgICAgSGFzaFNldDxTdHJpbmc+JiBibG9iVVJMcyA9IHNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQtPnB1YmxpY1VSTE1hbmFnZXIoKS5ibG9iVVJMcygpOworICAg
IGlmIChibG9iVVJMcy5jb250YWlucyh1cmwuc3RyaW5nKCkpKSB7CisgICAgICAgIFRocmVhZGFi
bGVCbG9iUmVnaXN0cnk6OnVucmVnaXN0ZXJCbG9iVVJMKHVybCk7CisgICAgICAgIGJsb2JVUkxz
LnJlbW92ZSh1cmwuc3RyaW5nKCkpOworICAgIH0KKworI2lmIEVOQUJMRShNRURJQV9TVFJFQU0p
CisgICAgSGFzaFNldDxTdHJpbmc+JiBzdHJlYW1VUkxzID0gc2NyaXB0RXhlY3V0aW9uQ29udGV4
dC0+cHVibGljVVJMTWFuYWdlcigpLnN0cmVhbVVSTHMoKTsKKyAgICBpZiAoc3RyZWFtVVJMcy5j
b250YWlucyh1cmwuc3RyaW5nKCkpKSB7CisgICAgICAgIC8vIEZJWE1FOiBtYWtlIHN1cmUgb2Yg
dGhpcyBhc3NlcnRpb24gYmVsb3cuIFJhaXNlIGEgc3BlYyBxdWVzdGlvbiBpZiByZXF1aXJlZC4K
KyAgICAgICAgLy8gU2luY2UgV2ViV29ya2VycyBjYW5ub3Qgb2J0YWluIFN0cmVhbSBvYmplY3Rz
LCB3ZSBzaG91bGQgYmUgb24gdGhlIG1haW4gdGhyZWFkLgorICAgICAgICBBU1NFUlQoaXNNYWlu
VGhyZWFkKCkpOworICAgICAgICBNZWRpYVN0cmVhbVJlZ2lzdHJ5OjpyZWdpc3RyeSgpLnVucmVn
aXN0ZXJNZWRpYVN0cmVhbVVSTCh1cmwpOworICAgICAgICBzdHJlYW1VUkxzLnJlbW92ZSh1cmwu
c3RyaW5nKCkpOworICAgIH0KKyNlbmRpZgorfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisK
KyNlbmRpZiAvLyBFTkFCTEUoQkxPQikKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvVVJMLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9VUkwuaAkocmV2aXNpb24gMCkKKysr
IFNvdXJjZS9XZWJDb3JlL2h0bWwvVVJMLmgJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNjAgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqIENvcHlyaWdodCAoQykgMjAxMiBNb3Rvcm9sYSBNb2JpbGl0eSBJbmMuCisgKgorICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKgorICogMS4gIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBBTkQg
SVRTIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAq
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIE9S
IElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
CisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQKKyAqIE9OIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKKyAqIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lm
bmRlZiBVUkxfaAorI2RlZmluZSBVUkxfaAorCisjaW5jbHVkZSAiS1VSTC5oIgorI2luY2x1ZGUg
IlBsYXRmb3JtU3RyaW5nLmgiCisjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KKyNpbmNsdWRlIDx3
dGYvUGFzc1JlZlB0ci5oPgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKK25hbWVzcGFj
ZSBXZWJDb3JlIHsKKworY2xhc3MgQmxvYjsKK2NsYXNzIE1lZGlhU3RyZWFtOworY2xhc3MgU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dDsKKworY2xhc3MgVVJMIDogcHVibGljIFJlZkNvdW50ZWQ8VVJM
PiB7CisKK3B1YmxpYzoKKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxVUkw+IGNyZWF0ZSgpIHsgcmV0
dXJuIGFkb3B0UmVmKG5ldyBVUkwpOyB9CisKKyNpZiBFTkFCTEUoQkxPQikKKyAgICBzdGF0aWMg
dm9pZCBjb250ZXh0RGVzdHJveWVkKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqKTsKKworICAgIHN0
YXRpYyBTdHJpbmcgY3JlYXRlT2JqZWN0VVJMKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBCbG9i
Kik7CisgICAgc3RhdGljIHZvaWQgcmV2b2tlT2JqZWN0VVJMKFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQqLCBjb25zdCBTdHJpbmcmKTsKKyNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorICAgIHN0YXRp
YyBTdHJpbmcgY3JlYXRlT2JqZWN0VVJMKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBNZWRpYVN0
cmVhbSopOworI2VuZGlmCisjZW5kaWYKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKwor
I2VuZGlmIC8vIFVSTF9oCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL1VSTC5pZGwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9VUkwuaWRsCShyZXZpc2lvbiAwKQorKysgU291
cmNlL1dlYkNvcmUvaHRtbC9VUkwuaWRsCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDQxIEBACisv
KgorICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgTW90b3JvbGEgTW9iaWxpdHkgSW5jLgorICoKKyAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICoKKyAqIDEuICBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgQU5EIElU
UyBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
IFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBPUiBJ
VFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwor
ICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5ECisgKiBPTiBBTlkg
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GCisgKiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKK21vZHVs
ZSBodG1sIHsKKyAgICBpbnRlcmZhY2UgWworICAgICAgICBDb25kaXRpb25hbD1CTE9CLAorICAg
ICAgICBDb25zdHJ1Y3RvciwKKyAgICAgICAgSlNHZW5lcmF0ZVRvTmF0aXZlT2JqZWN0LAorICAg
ICAgICBKU0dlbmVyYXRlVG9KUywKKyAgICAgICAgSlNOb1N0YXRpY1RhYmxlcworICAgIF0gVVJM
IHsKKyNpZiBkZWZpbmVkKEVOQUJMRV9NRURJQV9TVFJFQU0pICYmIEVOQUJMRV9NRURJQV9TVFJF
QU0KKyAgICAgICAgc3RhdGljIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0LENvbnZl
cnROdWxsU3RyaW5nVG89VW5kZWZpbmVkXSBET01TdHJpbmcgY3JlYXRlT2JqZWN0VVJMKGluIE1l
ZGlhU3RyZWFtIHN0cmVhbSk7CisjZW5kaWYKKyAgICAgICAgc3RhdGljIFtDYWxsV2l0aD1TY3Jp
cHRFeGVjdXRpb25Db250ZXh0LENvbnZlcnROdWxsU3RyaW5nVG89VW5kZWZpbmVkXSBET01TdHJp
bmcgY3JlYXRlT2JqZWN0VVJMKGluIEJsb2IgYmxvYik7CisgICAgICAgIHN0YXRpYyBbQ2FsbFdp
dGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gdm9pZCByZXZva2VPYmplY3RVUkwoaW4gRE9NU3Ry
aW5nIHVybCk7CisgICAgfTsKK30KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAJKHJl
dmlzaW9uIDEwNzM1NSkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcAkod29y
a2luZyBjb3B5KQpAQCAtNDQsNyArNDQsNiBAQAogI2luY2x1ZGUgIkRPTVN0cmluZ0xpc3QuaCIK
ICNpbmNsdWRlICJET01UaW1lci5oIgogI2luY2x1ZGUgIkRPTVRva2VuTGlzdC5oIgotI2luY2x1
ZGUgIkRPTVVSTC5oIgogI2luY2x1ZGUgIkRhdGFiYXNlLmgiCiAjaW5jbHVkZSAiRGF0YWJhc2VD
YWxsYmFjay5oIgogI2luY2x1ZGUgIkRldmljZU1vdGlvbkNvbnRyb2xsZXIuaCIKQEAgLTQzNCw5
ICs0MzMsNiBAQCBET01XaW5kb3c6On5ET01XaW5kb3coKQogI2lmIEVOQUJMRShJTkRFWEVEX0RB
VEFCQVNFKQogICAgIEFTU0VSVCghbV9pZGJGYWN0b3J5KTsKICNlbmRpZgotI2lmIEVOQUJMRShC
TE9CKQotICAgIEFTU0VSVCghbV9kb21VUkwpOwotI2VuZGlmCiAjaWYgRU5BQkxFKFFVT1RBKQog
ICAgIEFTU0VSVCghbV9zdG9yYWdlSW5mbyk7CiAjZW5kaWYKQEAgLTUyNSw5ICs1MjEsNiBAQCB2
b2lkIERPTVdpbmRvdzo6Y2xlYXIoKQogI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAg
IG1faWRiRmFjdG9yeSA9IDA7CiAjZW5kaWYKLSNpZiBFTkFCTEUoQkxPQikKLSAgICBtX2RvbVVS
TCA9IDA7Ci0jZW5kaWYKICNpZiBFTkFCTEUoUVVPVEEpCiAgICAgbV9zdG9yYWdlSW5mbyA9IDA7
CiAjZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaAkocmV2aXNpb24gMTA3MzU1KQor
KysgU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaAkod29ya2luZyBjb3B5KQpAQCAtNDAs
NyArNDAsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgY2xhc3MgQ3J5cHRvOwogICAgIGNs
YXNzIERPTUFwcGxpY2F0aW9uQ2FjaGU7CiAgICAgY2xhc3MgRE9NU2VsZWN0aW9uOwotICAgIGNs
YXNzIERPTVVSTDsKKyAgICBjbGFzcyBVUkw7CiAgICAgY2xhc3MgRE9NV2luZG93UHJvcGVydHk7
CiAgICAgY2xhc3MgRGF0YWJhc2U7CiAgICAgY2xhc3MgRGF0YWJhc2VDYWxsYmFjazsKQEAgLTQ3
MywxMCArNDczLDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBtdXRhYmxlIFJlZlB0
cjxQZXJmb3JtYW5jZT4gbV9wZXJmb3JtYW5jZTsKICNlbmRpZgogCi0jaWYgRU5BQkxFKEJMT0Ip
Ci0gICAgICAgIG11dGFibGUgUmVmUHRyPERPTVVSTD4gbV9kb21VUkw7Ci0jZW5kaWYKLQogI2lm
IEVOQUJMRShRVU9UQSkKICAgICAgICAgbXV0YWJsZSBSZWZQdHI8U3RvcmFnZUluZm8+IG1fc3Rv
cmFnZUluZm87CiAjZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93Lmlk
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5pZGwJKHJldmlz
aW9uIDEwNzM1NSkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmlkbAkod29ya2lu
ZyBjb3B5KQpAQCAtNzgyLDcgKzc4Miw3IEBAIG1vZHVsZSB3aW5kb3cgewogCiAgICAgICAgIGF0
dHJpYnV0ZSBbQ29uZGl0aW9uYWw9QkxPQl0gV2ViS2l0QmxvYkJ1aWxkZXJDb25zdHJ1Y3RvciBX
ZWJLaXRCbG9iQnVpbGRlcjsKIAotICAgICAgICBhdHRyaWJ1dGUgW0NvbmRpdGlvbmFsPUJMT0Jd
IERPTVVSTENvbnN0cnVjdG9yIHdlYmtpdFVSTDsKKyAgICAgICAgYXR0cmlidXRlIFtDb25kaXRp
b25hbD1CTE9CXSBVUkxDb25zdHJ1Y3RvciB3ZWJraXRVUkw7CiAKICNpZiBkZWZpbmVkKEVOQUJM
RV9RVU9UQSkgJiYgRU5BQkxFX1FVT1RBCiAgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBbVjhF
bmFibGVkQXRSdW50aW1lPVF1b3RhXSBTdG9yYWdlSW5mbyB3ZWJraXRTdG9yYWdlSW5mbzsKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9SZW5kZXJUaGVtZUd0ay5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9SZW5kZXJUaGVtZUd0ay5oCShyZXZp
c2lvbiAxMDczNTUpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvUmVuZGVyVGhlbWVH
dGsuaAkod29ya2luZyBjb3B5KQpAQCAtODIsNyArODIsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVh
bCB2b2lkIHN5c3RlbUZvbnQoaW50IHByb3BJZCwgRm9udERlc2NyaXB0aW9uJikgY29uc3Q7CiAg
ICAgdmlydHVhbCBDb2xvciBzeXN0ZW1Db2xvcihpbnQgY3NzVmFsdWVJZCkgY29uc3Q7CiAKLSAg
ICB2aXJ0dWFsIGJvb2wgcG9wc01lbnVCeVNwYWNlT3JSZXR1cm4oKSBjb25zdCBPVkVSUklERSB7
IHJldHVybiB0cnVlOyB9CisgICAgdmlydHVhbCBib29sIHBvcHNNZW51QnlBcnJvd0tleXMoKSBj
b25zdCB7IHJldHVybiB0cnVlOyB9CiAKICNpZiBFTkFCTEUoVklERU8pCiAgICAgdmlydHVhbCBT
dHJpbmcgZXh0cmFNZWRpYUNvbnRyb2xzU3R5bGVTaGVldCgpOwpJbmRleDogU291cmNlL1dlYkNv
cmUvd29ya2Vycy9Xb3JrZXJDb250ZXh0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL1dvcmtlckNvbnRleHQuY3BwCShyZXZpc2lvbiAxMDczNTUpCisrKyBTb3VyY2Uv
V2ViQ29yZS93b3JrZXJzL1dvcmtlckNvbnRleHQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zOSw3
ICszOSw2IEBACiAjaW5jbHVkZSAiRGF0YWJhc2VTeW5jLmgiCiAjaW5jbHVkZSAiRGF0YWJhc2VU
cmFja2VyLmgiCiAjaW5jbHVkZSAiRE9NVGltZXIuaCIKLSNpbmNsdWRlICJET01VUkwuaCIKICNp
bmNsdWRlICJET01XaW5kb3cuaCIKICNpbmNsdWRlICJFcnJvckV2ZW50LmgiCiAjaW5jbHVkZSAi
RXZlbnQuaCIKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyQ29udGV4dC5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyQ29udGV4dC5oCShyZXZp
c2lvbiAxMDczNTUpCisrKyBTb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckNvbnRleHQuaAko
d29ya2luZyBjb3B5KQpAQCAtNDgsNyArNDgsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKICAg
ICBjbGFzcyBCbG9iOwogICAgIGNsYXNzIERPTUZpbGVTeXN0ZW1TeW5jOwotICAgIGNsYXNzIERP
TVVSTDsKKyAgICBjbGFzcyBVUkw7CiAgICAgY2xhc3MgRGF0YWJhc2U7CiAgICAgY2xhc3MgRGF0
YWJhc2VDYWxsYmFjazsKICAgICBjbGFzcyBEYXRhYmFzZVN5bmM7CkBAIC0yMDcsOSArMjA3LDYg
QEAgbmFtZXNwYWNlIFdlYkNvcmUgewogI2lmIEVOQUJMRV9OT1RJRklDQVRJT05TCiAgICAgICAg
IG11dGFibGUgUmVmUHRyPE5vdGlmaWNhdGlvbkNlbnRlcj4gbV9ub3RpZmljYXRpb25zOwogI2Vu
ZGlmCi0jaWYgRU5BQkxFKEJMT0IpCi0gICAgICAgIG11dGFibGUgUmVmUHRyPERPTVVSTD4gbV9k
b21VUkw7Ci0jZW5kaWYKICNpZiBFTkFCTEUoSU5TUEVDVE9SKQogICAgICAgICBPd25QdHI8V29y
a2VySW5zcGVjdG9yQ29udHJvbGxlcj4gbV93b3JrZXJJbnNwZWN0b3JDb250cm9sbGVyOwogI2Vu
ZGlmCkluZGV4OiBTb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckNvbnRleHQuaWRsCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyQ29udGV4dC5pZGwJKHJldmlz
aW9uIDEwNzM1NSkKKysrIFNvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyQ29udGV4dC5pZGwJ
KHdvcmtpbmcgY29weSkKQEAgLTEwMSw3ICsxMDEsNyBAQCBtb2R1bGUgdGhyZWFkcyB7CiAgICAg
ICAgIGF0dHJpYnV0ZSBGaWxlUmVhZGVyU3luY0NvbnN0cnVjdG9yIEZpbGVSZWFkZXJTeW5jOwog
I2VuZGlmCiAKLSAgICAgICAgYXR0cmlidXRlIFtDb25kaXRpb25hbD1CTE9CXSBET01VUkxDb25z
dHJ1Y3RvciB3ZWJraXRVUkw7CisgICAgICAgIGF0dHJpYnV0ZSBbQ29uZGl0aW9uYWw9QkxPQl0g
VVJMQ29uc3RydWN0b3Igd2Via2l0VVJMOwogCiAjaWYgZGVmaW5lZChFTkFCTEVfRklMRV9TWVNU
RU0pICYmIEVOQUJMRV9GSUxFX1NZU1RFTQogICAgICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBU
RU1QT1JBUlkgPSAwOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>126458</attachid>
            <date>2012-02-09 22:46:45 -0800</date>
            <delta_ts>2012-02-10 10:57:46 -0800</delta_ts>
            <desc>Updated Patch</desc>
            <filename>78214.patch</filename>
            <type>text/plain</type>
            <size>40854</size>
            <attacher name="Kaustubh Atrawalkar">kaustubh.ra</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwNzM1NSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQ5IEBACisyMDEyLTAyLTA5ICBLYXVzdHVi
aCBBdHJhd2Fsa2FyICA8a2F1c3R1YmhAbW90b3JvbGEuY29tPgorCisgICAgICAgIFJlbmFtZSBE
T01VUkwgdG8gVVJMIGFzIHBlciBzcGVjcy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTc4MjE0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgQXMgcGVyIHNwZWNzIGh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw1
L3VybHMuaHRtbCN1cmxzCisgICAgICAgIERPTVVSTCB0byBiZSByZW5hbWVkIHRvIFVSTC4KKwor
ICAgICAgICBObyBuZXcgdGVzdHMuIFRlc3RzIGFyZSByZWJhc2VsaW5lZC4KKworICAgICAgICAq
IENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLmNwcDoKKyAgICAgICAg
KiBEZXJpdmVkU291cmNlcy5tYWtlOgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLnByaToKKyAg
ICAgICAgKiBHTlVtYWtlZmlsZS5saXN0LmFtOgorICAgICAgICAqIFRhcmdldC5wcmk6CisgICAg
ICAgICogV2ViQ29yZS5neXBpOgorICAgICAgICAqIFdlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNw
cm9qOgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAg
ICAgKiBodG1sL0RPTVVSTC5jcHA6IFJlbW92ZWQuCisgICAgICAgICogaHRtbC9ET01VUkwuaDog
UmVtb3ZlZC4KKyAgICAgICAgKiBodG1sL0RPTVVSTC5pZGw6IFJlbW92ZWQuCisgICAgICAgICog
aHRtbC9VUkwuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29y
ZTo6VVJMOjpjcmVhdGVPYmplY3RVUkwpOgorICAgICAgICAoV2ViQ29yZTo6VVJMOjpyZXZva2VP
YmplY3RVUkwpOgorICAgICAgICAqIGh0bWwvVVJMLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29y
ZSk6CisgICAgICAgIChVUkwpOgorICAgICAgICAoV2ViQ29yZTo6VVJMOjpjcmVhdGUpOgorICAg
ICAgICAqIGh0bWwvVVJMLmlkbDogQWRkZWQuCisgICAgICAgICogcGFnZS9ET01XaW5kb3cuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6RE9NV2luZG93Ojp+RE9NV2luZG93KToKKyAgICAgICAgKFdl
YkNvcmU6OkRPTVdpbmRvdzo6Y2xlYXIpOgorICAgICAgICAqIHBhZ2UvRE9NV2luZG93Lmg6Cisg
ICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKERPTVdpbmRvdyk6CisgICAgICAgICogcGFnZS9E
T01XaW5kb3cuaWRsOgorICAgICAgICAqIHdvcmtlcnMvV29ya2VyQ29udGV4dC5jcHA6CisgICAg
ICAgICogd29ya2Vycy9Xb3JrZXJDb250ZXh0Lmg6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAg
ICAgKFdvcmtlckNvbnRleHQpOgorICAgICAgICAqIHdvcmtlcnMvV29ya2VyQ29udGV4dC5pZGw6
CisKIDIwMTItMDItMDkgIFhpYW56aHUgV2FuZyAgPHdhbmd4aWFuemh1QGNocm9taXVtLm9yZz4K
IAogICAgICAgICBbQ2hyb21pdW1dIFRpbGVkTGF5ZXJDaHJvbWl1bTo6cHJvdGVjdFZpc2libGVU
aWxlVGV4dHVyZXMoKSBzaG91bGQgb25seSBwcm90ZWN0IHRoZSB2aXNpYmxlIHRleHR1cmVzCklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9DTWFrZUxpc3RzLnR4dAkocmV2aXNpb24gMTA3MzU1KQorKysgU291cmNlL1dlYkNv
cmUvQ01ha2VMaXN0cy50eHQJKHdvcmtpbmcgY29weSkKQEAgLTIwNCw3ICsyMDQsNyBAQCBTRVQo
V2ViQ29yZV9JRExfRklMRVMKICAgICBodG1sL0RPTUZvcm1EYXRhLmlkbAogICAgIGh0bWwvRE9N
U2V0dGFibGVUb2tlbkxpc3QuaWRsCiAgICAgaHRtbC9ET01Ub2tlbkxpc3QuaWRsCi0gICAgaHRt
bC9ET01VUkwuaWRsCisgICAgaHRtbC9VUkwuaWRsCiAgICAgaHRtbC9IVE1MQWxsQ29sbGVjdGlv
bi5pZGwKICAgICBodG1sL0hUTUxBbmNob3JFbGVtZW50LmlkbAogICAgIGh0bWwvSFRNTEFwcGxl
dEVsZW1lbnQuaWRsCkBAIC03MTIsNyArNzEyLDcgQEAgU0VUKFdlYkNvcmVfU09VUkNFUwogICAg
IGh0bWwvRE9NRm9ybURhdGEuY3BwCiAgICAgaHRtbC9ET01TZXR0YWJsZVRva2VuTGlzdC5jcHAK
ICAgICBodG1sL0RPTVRva2VuTGlzdC5jcHAKLSAgICBodG1sL0RPTVVSTC5jcHAKKyAgICBodG1s
L1VSTC5jcHAKICAgICBodG1sL0RhdGVJbnB1dFR5cGUuY3BwCiAgICAgaHRtbC9EYXRlVGltZUlu
cHV0VHlwZS5jcHAKICAgICBodG1sL0RhdGVUaW1lTG9jYWxJbnB1dFR5cGUuY3BwCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwCShyZXZpc2lvbiAxMDczNTUpCisrKyBTb3VyY2UvV2Vi
Q29yZS9EZXJpdmVkU291cmNlcy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTk4LDcgKzk4LDcgQEAK
ICNpbmNsdWRlICJKU0RPTVN0cmluZ0xpc3QuY3BwIgogI2luY2x1ZGUgIkpTRE9NU3RyaW5nTWFw
LmNwcCIKICNpbmNsdWRlICJKU0RPTVRva2VuTGlzdC5jcHAiCi0jaW5jbHVkZSAiSlNET01VUkwu
Y3BwIgorI2luY2x1ZGUgIkpTVVJMLmNwcCIKICNpbmNsdWRlICJKU0RPTVdpbmRvdy5jcHAiCiAj
aW5jbHVkZSAiSlNFbGVtZW50LmNwcCIKICNpbmNsdWRlICJKU0VudGl0eS5jcHAiCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UJKHJldmlzaW9uIDEwNzM1NSkKKysrIFNvdXJjZS9X
ZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UJKHdvcmtpbmcgY29weSkKQEAgLTE4Miw3ICsxODIs
NyBAQCBCSU5ESU5HX0lETFMgPSBcCiAgICAgJChXZWJDb3JlKS9odG1sL0RPTUZvcm1EYXRhLmlk
bCBcCiAgICAgJChXZWJDb3JlKS9odG1sL0RPTVNldHRhYmxlVG9rZW5MaXN0LmlkbCBcCiAgICAg
JChXZWJDb3JlKS9odG1sL0RPTVRva2VuTGlzdC5pZGwgXAotICAgICQoV2ViQ29yZSkvaHRtbC9E
T01VUkwuaWRsIFwKKyAgICAkKFdlYkNvcmUpL2h0bWwvVVJMLmlkbCBcCiAgICAgJChXZWJDb3Jl
KS9odG1sL0hUTUxBbGxDb2xsZWN0aW9uLmlkbCBcCiAgICAgJChXZWJDb3JlKS9odG1sL0hUTUxB
bmNob3JFbGVtZW50LmlkbCBcCiAgICAgJChXZWJDb3JlKS9odG1sL0hUTUxBcHBsZXRFbGVtZW50
LmlkbCBcCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5wcmkKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMucHJpCShyZXZpc2lvbiAxMDczNTUp
CisrKyBTb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5wcmkJKHdvcmtpbmcgY29weSkKQEAg
LTI0NCw3ICsyNDQsNyBAQCBJRExfQklORElOR1MgKz0gXAogICAgICQkUFdEL2h0bWwvRE9NRm9y
bURhdGEuaWRsIFwKICAgICAkJFBXRC9odG1sL0RPTVNldHRhYmxlVG9rZW5MaXN0LmlkbCBcCiAg
ICAgJCRQV0QvaHRtbC9ET01Ub2tlbkxpc3QuaWRsIFwKLSAgICAkJFBXRC9odG1sL0RPTVVSTC5p
ZGwgXAorICAgICQkUFdEL2h0bWwvVVJMLmlkbCBcCiAgICAgJCRQV0QvaHRtbC9IVE1MQWxsQ29s
bGVjdGlvbi5pZGwgXAogICAgICQkUFdEL2h0bWwvSFRNTEF1ZGlvRWxlbWVudC5pZGwgXAogICAg
ICQkUFdEL2h0bWwvSFRNTEFuY2hvckVsZW1lbnQuaWRsIFwKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L0dOVW1ha2VmaWxlLmxpc3QuYW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvR05VbWFr
ZWZpbGUubGlzdC5hbQkocmV2aXNpb24gMTA3MzU1KQorKysgU291cmNlL1dlYkNvcmUvR05VbWFr
ZWZpbGUubGlzdC5hbQkod29ya2luZyBjb3B5KQpAQCAtMTQ3LDggKzE0Nyw2IEBAIHdlYmNvcmVf
YnVpbHRfc291cmNlcyArPSBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0RPTVN0cmluZ01h
cC5oIFwKIAlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRE9NVG9rZW5MaXN0LmNwcCBcCiAJRGVy
aXZlZFNvdXJjZXMvV2ViQ29yZS9KU0RPTVRva2VuTGlzdC5oIFwKLQlEZXJpdmVkU291cmNlcy9X
ZWJDb3JlL0pTRE9NVVJMLmNwcCBcCi0JRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0RPTVVSTC5o
IFwKIAlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRE9NV2luZG93LmNwcCBcCiAJRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS9KU0RPTVdpbmRvdy5oIFwKIAlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pT
RHluYW1pY3NDb21wcmVzc29yTm9kZS5oIFwKQEAgLTUyNSw2ICs1MjMsOCBAQCB3ZWJjb3JlX2J1
aWx0X3NvdXJjZXMgKz0gXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNUcmVlV2Fsa2VyLmgg
XAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNVSUV2ZW50LmNwcCBcCiAJRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS9KU1VJRXZlbnQuaCBcCisJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1VSTC5j
cHAgXAorCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNVUkwuaCBcCiAJRGVyaXZlZFNvdXJjZXMv
V2ViQ29yZS9KU1VpbnQxNkFycmF5LmNwcCBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU1Vp
bnQxNkFycmF5LmggXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNVaW50MzJBcnJheS5jcHAg
XApAQCAtNzQ0LDcgKzc0NCw2IEBAIGRvbV9iaW5kaW5nX2lkbHMgKz0gXAogCSQoV2ViQ29yZSkv
aHRtbC9ET01Gb3JtRGF0YS5pZGwgXAogCSQoV2ViQ29yZSkvaHRtbC9ET01TZXR0YWJsZVRva2Vu
TGlzdC5pZGwgXAogCSQoV2ViQ29yZSkvaHRtbC9ET01Ub2tlbkxpc3QuaWRsIFwKLQkkKFdlYkNv
cmUpL2h0bWwvRE9NVVJMLmlkbCBcCiAJJChXZWJDb3JlKS9odG1sL0hUTUxBbGxDb2xsZWN0aW9u
LmlkbCBcCiAJJChXZWJDb3JlKS9odG1sL0hUTUxBbmNob3JFbGVtZW50LmlkbCBcCiAJJChXZWJD
b3JlKS9odG1sL0hUTUxBcHBsZXRFbGVtZW50LmlkbCBcCkBAIC04MjYsNiArODI1LDcgQEAgZG9t
X2JpbmRpbmdfaWRscyArPSBcCiAJJChXZWJDb3JlKS9odG1sL1RleHRUcmFja0N1ZS5pZGwgXAog
CSQoV2ViQ29yZSkvaHRtbC9UZXh0VHJhY2tDdWVMaXN0LmlkbCBcCiAJJChXZWJDb3JlKS9odG1s
L1RpbWVSYW5nZXMuaWRsIFwKKwkkKFdlYkNvcmUpL2h0bWwvVVJMLmlkbCBcCiAJJChXZWJDb3Jl
KS9odG1sL1ZhbGlkaXR5U3RhdGUuaWRsIFwKIAkkKFdlYkNvcmUpL2h0bWwvVm9pZENhbGxiYWNr
LmlkbCBcCiAJJChXZWJDb3JlKS9odG1sL2NhbnZhcy9BcnJheUJ1ZmZlci5pZGwgXApAQCAtMTk3
MCw4ICsxOTcwLDYgQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9odG1s
L0RhdGVUaW1lTG9jYWxJbnB1dFR5cGUuaCBcCiAJU291cmNlL1dlYkNvcmUvaHRtbC9ET01Gb3Jt
RGF0YS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL2h0bWwvRE9NRm9ybURhdGEuaCBcCi0JU291cmNl
L1dlYkNvcmUvaHRtbC9ET01VUkwuY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9odG1sL0RPTVVSTC5o
IFwKIAlTb3VyY2UvV2ViQ29yZS9odG1sL0VtYWlsSW5wdXRUeXBlLmNwcCBcCiAJU291cmNlL1dl
YkNvcmUvaHRtbC9FbWFpbElucHV0VHlwZS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9odG1sL0ZpbGVJ
bnB1dFR5cGUuY3BwIFwKQEAgLTIzMDAsNiArMjI5OCw4IEBAIHdlYmNvcmVfc291cmNlcyArPSBc
CiAJU291cmNlL1dlYkNvcmUvaHRtbC90cmFjay9XZWJWVFRUb2tlbi5oIFwKIAlTb3VyY2UvV2Vi
Q29yZS9odG1sL3RyYWNrL1dlYlZUVFRva2VuaXplci5oIFwKIAlTb3VyY2UvV2ViQ29yZS9odG1s
L3RyYWNrL1dlYlZUVFRva2VuaXplci5jcHAgXAorCVNvdXJjZS9XZWJDb3JlL2h0bWwvVVJMLmNw
cCBcCisJU291cmNlL1dlYkNvcmUvaHRtbC9VUkwuaCBcCiAJU291cmNlL1dlYkNvcmUvaHRtbC9V
UkxJbnB1dFR5cGUuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9odG1sL1VSTElucHV0VHlwZS5oIFwK
IAlTb3VyY2UvV2ViQ29yZS9odG1sL1ZhbGlkYXRpb25NZXNzYWdlLmNwcCBcCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9UYXJnZXQucHJpCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL1Rhcmdl
dC5wcmkJKHJldmlzaW9uIDEwNzM1NSkKKysrIFNvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkJKHdv
cmtpbmcgY29weSkKQEAgLTY5Niw3ICs2OTYsNyBAQCBTT1VSQ0VTICs9IFwKICAgICBodG1sL0RP
TUZvcm1EYXRhLmNwcCBcCiAgICAgaHRtbC9ET01TZXR0YWJsZVRva2VuTGlzdC5jcHAgXAogICAg
IGh0bWwvRE9NVG9rZW5MaXN0LmNwcCBcCi0gICAgaHRtbC9ET01VUkwuY3BwIFwKKyAgICBodG1s
L1VSTC5jcHAgXAogICAgIGh0bWwvRGF0ZUlucHV0VHlwZS5jcHAgXAogICAgIGh0bWwvRGF0ZVRp
bWVJbnB1dFR5cGUuY3BwIFwKICAgICBodG1sL0RhdGVUaW1lTG9jYWxJbnB1dFR5cGUuY3BwIFwK
QEAgLTE3ODEsNyArMTc4MSw3IEBAIEhFQURFUlMgKz0gXAogICAgIGh0bWwvRE9NRm9ybURhdGEu
aCBcCiAgICAgaHRtbC9ET01TZXR0YWJsZVRva2VuTGlzdC5oIFwKICAgICBodG1sL0RPTVRva2Vu
TGlzdC5oIFwKLSAgICBodG1sL0RPTVVSTC5oIFwKKyAgICBodG1sL1VSTC5oIFwKICAgICBodG1s
L0Zvcm1Bc3NvY2lhdGVkRWxlbWVudC5oIFwKICAgICBodG1sL0Zvcm1EYXRhTGlzdC5oIFwKICAg
ICBodG1sL0ZUUERpcmVjdG9yeURvY3VtZW50LmggXApJbmRleDogU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS5neXBpCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQkocmV2
aXNpb24gMTA3MzU1KQorKysgU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpCSh3b3JraW5nIGNv
cHkpCkBAIC04NTQsNyArODU0LDYgQEAKICAgICAgICAgICAgICdodG1sL0RPTUZvcm1EYXRhLmlk
bCcsCiAgICAgICAgICAgICAnaHRtbC9ET01TZXR0YWJsZVRva2VuTGlzdC5pZGwnLAogICAgICAg
ICAgICAgJ2h0bWwvRE9NVG9rZW5MaXN0LmlkbCcsCi0gICAgICAgICAgICAnaHRtbC9ET01VUkwu
aWRsJywKICAgICAgICAgICAgICdodG1sL0hUTUxBbGxDb2xsZWN0aW9uLmlkbCcsCiAgICAgICAg
ICAgICAnaHRtbC9IVE1MQW5jaG9yRWxlbWVudC5pZGwnLAogICAgICAgICAgICAgJ2h0bWwvSFRN
TEFwcGxldEVsZW1lbnQuaWRsJywKQEAgLTkzNiw2ICs5MzUsNyBAQAogICAgICAgICAgICAgJ2h0
bWwvVGV4dFRyYWNrQ3VlLmlkbCcsCiAgICAgICAgICAgICAnaHRtbC9UZXh0VHJhY2tDdWVMaXN0
LmlkbCcsCiAgICAgICAgICAgICAnaHRtbC9UaW1lUmFuZ2VzLmlkbCcsCisgICAgICAgICAgICAn
aHRtbC9VUkwuaWRsJywKICAgICAgICAgICAgICdodG1sL1ZhbGlkaXR5U3RhdGUuaWRsJywKICAg
ICAgICAgICAgICdodG1sL1ZvaWRDYWxsYmFjay5pZGwnLAogICAgICAgICAgICAgJ2h0bWwvY2Fu
dmFzL0FycmF5QnVmZmVyLmlkbCcsCkBAIC01MTcxLDggKzUxNzEsNiBAQAogICAgICAgICAgICAg
J2h0bWwvRE9NU2V0dGFibGVUb2tlbkxpc3QuaCcsCiAgICAgICAgICAgICAnaHRtbC9ET01Ub2tl
bkxpc3QuY3BwJywKICAgICAgICAgICAgICdodG1sL0RPTVRva2VuTGlzdC5oJywKLSAgICAgICAg
ICAgICdodG1sL0RPTVVSTC5jcHAnLAotICAgICAgICAgICAgJ2h0bWwvRE9NVVJMLmgnLAogICAg
ICAgICAgICAgJ2h0bWwvRGF0ZUlucHV0VHlwZS5jcHAnLAogICAgICAgICAgICAgJ2h0bWwvRGF0
ZUlucHV0VHlwZS5oJywKICAgICAgICAgICAgICdodG1sL0RhdGVUaW1lSW5wdXRUeXBlLmNwcCcs
CkBAIC01NDA4LDYgKzU0MDYsOCBAQAogICAgICAgICAgICAgJ2h0bWwvVGltZUlucHV0VHlwZS5o
JywKICAgICAgICAgICAgICdodG1sL1RpbWVSYW5nZXMuY3BwJywKICAgICAgICAgICAgICdodG1s
L1RpbWVSYW5nZXMuaCcsCisgICAgICAgICAgICAnaHRtbC9VUkwuY3BwJywKKyAgICAgICAgICAg
ICdodG1sL1VSTC5oJywKICAgICAgICAgICAgICdodG1sL1VSTElucHV0VHlwZS5jcHAnLAogICAg
ICAgICAgICAgJ2h0bWwvVVJMSW5wdXRUeXBlLmgnLAogICAgICAgICAgICAgJ2h0bWwvVmFsaWRh
dGlvbk1lc3NhZ2UuY3BwJywKQEAgLTcwNDksOCArNzA0OSw2IEBACiAgICAgICAgICAgICAnPChQ
Uk9EVUNUX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0RPTVN0cmluZ01hcC5oJywKICAg
ICAgICAgICAgICc8KFBST0RVQ1RfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRE9NVG9r
ZW5MaXN0LmNwcCcsCiAgICAgICAgICAgICAnPChQUk9EVUNUX0RJUikvRGVyaXZlZFNvdXJjZXMv
V2ViQ29yZS9KU0RPTVRva2VuTGlzdC5oJywKLSAgICAgICAgICAgICc8KFBST0RVQ1RfRElSKS9E
ZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRE9NVVJMLmNwcCcsCi0gICAgICAgICAgICAnPChQUk9E
VUNUX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0RPTVVSTC5oJywKICAgICAgICAgICAg
ICc8KFBST0RVQ1RfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRE9NV2luZG93LmNwcCcs
CiAgICAgICAgICAgICAnPChQUk9EVUNUX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0Rh
dGFWaWV3LmNwcCcsCiAgICAgICAgICAgICAnPChQUk9EVUNUX0RJUikvRGVyaXZlZFNvdXJjZXMv
V2ViQ29yZS9KU0RhdGFWaWV3LmgnLApAQCAtNzg0Niw2ICs3ODQ0LDggQEAKICAgICAgICAgICAg
ICc8KFBST0RVQ1RfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTVHJlZVdhbGtlci5oJywK
ICAgICAgICAgICAgICc8KFBST0RVQ1RfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTVUlF
dmVudC5jcHAnLAogICAgICAgICAgICAgJzwoUFJPRFVDVF9ESVIpL0Rlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvSlNVSUV2ZW50LmgnLAorICAgICAgICAgICAgJzwoUFJPRFVDVF9ESVIpL0Rlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvSlNVUkwuY3BwJywKKyAgICAgICAgICAgICc8KFBST0RVQ1RfRElSKS9E
ZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTVVJMLmgnLAogICAgICAgICAgICAgJzwoUFJPRFVDVF9E
SVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNVaW50MTZBcnJheS5jcHAnLAogICAgICAgICAg
ICAgJzwoUFJPRFVDVF9ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNVaW50MTZBcnJheS5o
JywKICAgICAgICAgICAgICc8KFBST0RVQ1RfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pT
VWludDMyQXJyYXkuY3BwJywKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dl
YkNvcmUudmNwcm9qCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9q
L1dlYkNvcmUudmNwcm9qCShyZXZpc2lvbiAxMDczNTUpCisrKyBTb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagkod29ya2luZyBjb3B5KQpAQCAtNDA1OCw3ICs0MDU4
LDcgQEAKIAkJCQk+CiAJCQk8L0ZpbGU+CiAJCQk8RmlsZQotCQkJCVJlbGF0aXZlUGF0aD0iJChD
b25maWd1cmF0aW9uQnVpbGREaXIpXG9ialwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xK
U0RPTVVSTC5jcHAiCisJCQkJUmVsYXRpdmVQYXRoPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilc
b2JqXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTVVJMLmNwcCIKIAkJCQk+CiAJCQkJ
PEZpbGVDb25maWd1cmF0aW9uCiAJCQkJCU5hbWU9IkRlYnVnfFdpbjMyIgpAQCAtNDExMCw3ICs0
MTEwLDcgQEAKIAkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgogCQkJPC9GaWxlPgogCQkJPEZpbGUK
LQkJCQlSZWxhdGl2ZVBhdGg9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmpcJChQcm9qZWN0
TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNET01VUkwuaCIKKwkJCQlSZWxhdGl2ZVBhdGg9IiQoQ29u
ZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmpcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNV
UkwuaCIKIAkJCQk+CiAJCQk8L0ZpbGU+CiAJCQk8RmlsZQpAQCAtNTU4NTAsMTEgKzU1ODUwLDEx
IEBACiAJCQkJPgogCQkJPC9GaWxlPgogCQkJPEZpbGUKLQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0
bWxcRE9NVVJMLmNwcCIKKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcVVJMLmNwcCIKIAkJCQk+
CiAJCQk8L0ZpbGU+CiAJCQk8RmlsZQotCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFxET01VUkwu
aCIKKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcVVJMLmgiCiAJCQkJPgogCQkJPC9GaWxlPgog
CQkJPEZpbGUKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvago9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2oJKHJldmlzaW9uIDEwNzM1NSkKKysrIFNvdXJjZS9XZWJDb3JlL1dlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5KQpAQCAtNzY4LDEwICs3
NjgsMTAgQEAKIAkJMkUyRDk5RUExMEUyQkMzODAwNDk2MzM3IC8qIERPTUJsb2JJbnRlcm5hbC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkUyRDk5RTkx
MEUyQkMzODAwNDk2MzM3IC8qIERPTUJsb2JJbnRlcm5hbC5oICovOyB9OwogCQkyRTJEOTlFQjEw
RTJCRDM5MDA0OTYzMzcgLyogRE9NQmxvYi5oIGluIENvcHkgR2VuZXJhdGVkIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkUyRDk5RTUxMEUyQkMxQzAwNDk2MzM3
IC8qIERPTUJsb2IuaCAqLzsgfTsKIAkJMkUyRDk5RUMxMEUyQkQzOTAwNDk2MzM3IC8qIERPTUJs
b2JJbnRlcm5hbC5oIGluIENvcHkgR2VuZXJhdGVkIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMkUyRDk5RTkxMEUyQkMzODAwNDk2MzM3IC8qIERPTUJsb2JJbnRl
cm5hbC5oICovOyB9OwotCQkyRTM3REZEQTEyREJBRkI4MDBBNkIyMzMgLyogRE9NVVJMLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJFMzdERkQ3MTJE
QkFGQjgwMEE2QjIzMyAvKiBET01VUkwuY3BwICovOyB9OwotCQkyRTM3REZEQjEyREJBRkI4MDBB
NkIyMzMgLyogRE9NVVJMLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAyRTM3REZEODEyREJBRkI4MDBBNkIyMzMgLyogRE9NVVJMLmggKi87IH07Ci0JCTJF
MzdFMDA1MTJEQkM1QTQwMEE2QjIzMyAvKiBKU0RPTVVSTC5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRTM3RTAwMzEyREJDNUE0MDBBNkIyMzMgLyog
SlNET01VUkwuY3BwICovOyB9OwotCQkyRTM3RTAwNjEyREJDNUE0MDBBNkIyMzMgLyogSlNET01V
UkwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJFMzdF
MDA0MTJEQkM1QTQwMEE2QjIzMyAvKiBKU0RPTVVSTC5oICovOyB9OworCQkyRTM3REZEQTEyREJB
RkI4MDBBNkIyMzMgLyogVVJMLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDJFMzdERkQ3MTJEQkFGQjgwMEE2QjIzMyAvKiBVUkwuY3BwICovOyB9Owor
CQkyRTM3REZEQjEyREJBRkI4MDBBNkIyMzMgLyogVVJMLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRTM3REZEODEyREJBRkI4MDBBNkIyMzMgLyogVVJM
LmggKi87IH07CisJCTJFMzdFMDA1MTJEQkM1QTQwMEE2QjIzMyAvKiBKU1VSTC5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRTM3RTAwMzEyREJDNUE0
MDBBNkIyMzMgLyogSlNVUkwuY3BwICovOyB9OworCQkyRTM3RTAwNjEyREJDNUE0MDBBNkIyMzMg
LyogSlNVUkwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDJFMzdFMDA0MTJEQkM1QTQwMEE2QjIzMyAvKiBKU1VSTC5oICovOyB9OwogCQkyRTNCQkYwNzEx
NjJEQTExMDBCOTQwOUEgLyogVVVJRC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAyRTNCQkYwNTExNjJEQTExMDBCOTQwOUEgLyogVVVJRC5jcHAgKi87
IH07CiAJCTJFM0JCRjA4MTE2MkRBMTEwMEI5NDA5QSAvKiBVVUlELmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRTNCQkYwNjExNjJEQTExMDBCOTQwOUEg
LyogVVVJRC5oICovOyB9OwogCQkyRTNCQzBDQTExN0QzRTA4MDBCOTQwOUEgLyogSlNGaWxlRXJy
b3IuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkUz
QkMwQzgxMTdEM0UwODAwQjk0MDlBIC8qIEpTRmlsZUVycm9yLmNwcCAqLzsgfTsKQEAgLTc1Mjcs
MTEgKzc1MjcsMTEgQEAKIAkJMkUyRDk5RTUxMEUyQkMxQzAwNDk2MzM3IC8qIERPTUJsb2IuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NQmxvYi5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQkyRTJEOTlFNjEwRTJCQzFDMDA0OTYzMzcgLyogRE9NQmxvYi5tbSAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IERPTUJsb2IubW07IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTJFMkQ5OUU5MTBFMkJDMzgwMDQ5NjMzNyAvKiBET01C
bG9iSW50ZXJuYWwuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NQmxvYklu
dGVybmFsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTJFMzdERkQ3MTJEQkFGQjgw
MEE2QjIzMyAvKiBET01VUkwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gRE9NVVJMLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMkUzN0RGRDgxMkRC
QUZCODAwQTZCMjMzIC8qIERPTVVSTC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBET01VUkwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMkUzN0RGRDkxMkRCQUZC
ODAwQTZCMjMzIC8qIERPTVVSTC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRE9NVVJMLmlk
bDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMkUzN0UwMDMxMkRCQzVBNDAwQTZCMjMz
IC8qIEpTRE9NVVJMLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
RE9NVVJMLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMkUzN0UwMDQxMkRCQzVB
NDAwQTZCMjMzIC8qIEpTRE9NVVJMLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEpTRE9NVVJMLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJFMzdERkQ3MTJEQkFG
QjgwMEE2QjIzMyAvKiBVUkwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gVVJMLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkUzN0RGRDgxMkRCQUZC
ODAwQTZCMjMzIC8qIFVSTC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBVUkwu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkUzN0RGRDkxMkRCQUZCODAwQTZCMjMz
IC8qIFVSTC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gVVJMLmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMkUzN0UwMDMxMkRCQzVBNDAwQTZCMjMzIC8qIEpTVVJMLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTVVJMLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkUzN0UwMDQxMkRCQzVBNDAwQTZCMjMzIC8qIEpTVVJMLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTVVJMLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTJFM0JCRjA1MTE2MkRBMTEwMEI5NDA5QSAvKiBVVUlELmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFVVSUQuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQkyRTNCQkYwNjExNjJEQTExMDBCOTQwOUEgLyogVVVJRC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBVVUlELmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTJFM0JDMEM4MTE3RDNFMDgwMEI5NDA5QSAvKiBKU0ZpbGVFcnJvci5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0ZpbGVFcnJvci5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xNjY0NCw5ICsxNjY0NCw5IEBACiAJCQkJNzZGQzJC
MDgxMjM3MERBMDAwNkE5OTFBIC8qIERPTVRva2VuTGlzdC5jcHAgKi8sCiAJCQkJNzZGQzJCMDkx
MjM3MERBMDAwNkE5OTFBIC8qIERPTVRva2VuTGlzdC5oICovLAogCQkJCTc2RkMyQjBBMTIzNzBE
QTAwMDZBOTkxQSAvKiBET01Ub2tlbkxpc3QuaWRsICovLAotCQkJCTJFMzdERkQ3MTJEQkFGQjgw
MEE2QjIzMyAvKiBET01VUkwuY3BwICovLAotCQkJCTJFMzdERkQ4MTJEQkFGQjgwMEE2QjIzMyAv
KiBET01VUkwuaCAqLywKLQkJCQkyRTM3REZEOTEyREJBRkI4MDBBNkIyMzMgLyogRE9NVVJMLmlk
bCAqLywKKwkJCQkyRTM3REZENzEyREJBRkI4MDBBNkIyMzMgLyogVVJMLmNwcCAqLywKKwkJCQky
RTM3REZEODEyREJBRkI4MDBBNkIyMzMgLyogVVJMLmggKi8sCisJCQkJMkUzN0RGRDkxMkRCQUZC
ODAwQTZCMjMzIC8qIFVSTC5pZGwgKi8sCiAJCQkJRjU1QjNEODcxMjUxRjEyRDAwM0VGMjY5IC8q
IEVtYWlsSW5wdXRUeXBlLmNwcCAqLywKIAkJCQlGNTVCM0Q4ODEyNTFGMTJEMDAzRUYyNjkgLyog
RW1haWxJbnB1dFR5cGUuaCAqLywKIAkJCQlGNTVCM0Q4OTEyNTFGMTJEMDAzRUYyNjkgLyogRmls
ZUlucHV0VHlwZS5jcHAgKi8sCkBAIC0xNzI2Miw4ICsxNzI2Miw4IEBACiAJCQkJNEFDQkMwQzkx
MjcxM0QwQTAwOTRGOUIyIC8qIEpTRE9NU2V0dGFibGVUb2tlbkxpc3QuaCAqLywKIAkJCQk3Njk0
NTYzQTEyMTREOTdDMDAwN0NCQUUgLyogSlNET01Ub2tlbkxpc3QuY3BwICovLAogCQkJCTc2OTQ1
NjNCMTIxNEQ5N0MwMDA3Q0JBRSAvKiBKU0RPTVRva2VuTGlzdC5oICovLAotCQkJCTJFMzdFMDAz
MTJEQkM1QTQwMEE2QjIzMyAvKiBKU0RPTVVSTC5jcHAgKi8sCi0JCQkJMkUzN0UwMDQxMkRCQzVB
NDAwQTZCMjMzIC8qIEpTRE9NVVJMLmggKi8sCisJCQkJMkUzN0UwMDMxMkRCQzVBNDAwQTZCMjMz
IC8qIEpTVVJMLmNwcCAqLywKKwkJCQkyRTM3RTAwNDEyREJDNUE0MDBBNkIyMzMgLyogSlNVUkwu
aCAqLywKIAkJCQk0OUVFQ0VGNDEwNTA3MEM0MDAwOTlGQUIgLyogSlNGbG9hdDMyQXJyYXkuY3Bw
ICovLAogCQkJCTQ5RUVDRUY1MTA1MDcwQzQwMDA5OUZBQiAvKiBKU0Zsb2F0MzJBcnJheS5oICov
LAogCQkJCTZFQkM1RUFEMTM4QjUwRjIwMEEwQ0Y4QSAvKiBKU0Zsb2F0NjRBcnJheS5jcHAgKi8s
CkBAIC0yMjAwMyw3ICsyMjAwMyw3IEBACiAJCQkJODUwQjQxQzMwQUQ5RTdFNzAwQTZFRDRGIC8q
IERPTVRyZWVXYWxrZXJJbnRlcm5hbC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJODVDN0Y0OTEwQUFG
NzlEQzAwNDAxNEREIC8qIERPTVVJRXZlbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTg1OTg5REQw
MEFDQzhCQkQwMEEwQkM1MSAvKiBET01VSUV2ZW50SW50ZXJuYWwuaCBpbiBIZWFkZXJzICovLAot
CQkJCTJFMzdERkRCMTJEQkFGQjgwMEE2QjIzMyAvKiBET01VUkwuaCBpbiBIZWFkZXJzICovLAor
CQkJCTJFMzdERkRCMTJEQkFGQjgwMEE2QjIzMyAvKiBVUkwuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTE1Qzc3MEE2MTAwRDQxQ0QwMDVCQTI2NyAvKiBET01WYWxpZGl0eVN0YXRlLmggaW4gSGVhZGVy
cyAqLywKIAkJCQlCQzFBMzdDMDA5N0M3MTVGMDAxOUYzRDggLyogRE9NVmlld3MuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTMxOTQ2MTZBMTMwMjBCNjYwMDRCQjNGOCAvKiBET01XZWJLaXRBbmltYXRp
b24uaCBpbiBIZWFkZXJzICovLApAQCAtMjI2MDQsNyArMjI2MDQsNyBAQAogCQkJCUM1MTM3Q0Yz
MTFBNTgzNzgwMDRBREI5OSAvKiBKU0RPTVN0cmluZ0xpc3QuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUJDNjQ2NDk4MTFEODIzNDkwMDY0NTVCMCAvKiBKU0RPTVN0cmluZ01hcC5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJNzY5NDU2M0QxMjE0RDk3QzAwMDdDQkFFIC8qIEpTRE9NVG9rZW5MaXN0LmggaW4g
SGVhZGVycyAqLywKLQkJCQkyRTM3RTAwNjEyREJDNUE0MDBBNkIyMzMgLyogSlNET01VUkwuaCBp
biBIZWFkZXJzICovLAorCQkJCTJFMzdFMDA2MTJEQkM1QTQwMEE2QjIzMyAvKiBKU1VSTC5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJQkM2OTMyNzQwRDdFMjkzOTAwQUU0NEQxIC8qIEpTRE9NV2luZG93
QmFzZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNjUyRkJCQkMwREUyN0NCNjAwMDFEMzg2IC8qIEpT
RE9NV2luZG93Q3VzdG9tLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQ0JGQjUzRDBEQ0QyOUNGMDAx
OUIzRTUgLyogSlNET01XaW5kb3dTaGVsbC5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNTExMyw3ICsy
NTExMyw3IEBACiAJCQkJNzZGQzJCMEIxMjM3MERBMDAwNkE5OTFBIC8qIERPTVRva2VuTGlzdC5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQk4NTUyNkNEMzBBQjBCN0RBMDAwMzAyRUEgLyogRE9NVHJl
ZVdhbGtlci5tbSBpbiBTb3VyY2VzICovLAogCQkJCTg1QzdGNDkyMEFBRjc5REMwMDQwMTRERCAv
KiBET01VSUV2ZW50Lm1tIGluIFNvdXJjZXMgKi8sCi0JCQkJMkUzN0RGREExMkRCQUZCODAwQTZC
MjMzIC8qIERPTVVSTC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkyRTM3REZEQTEyREJBRkI4MDBB
NkIyMzMgLyogVVJMLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJDMUEzN0JGMDk3QzcxNUYwMDE5
RjNEOCAvKiBET01VdGlsaXR5Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMTVDNzcwQTUxMDBENDFD
RDAwNUJBMjY3IC8qIERPTVZhbGlkaXR5U3RhdGUubW0gaW4gU291cmNlcyAqLywKIAkJCQkzMTk0
NjE2QjEzMDIwQjY2MDA0QkIzRjggLyogRE9NV2ViS2l0QW5pbWF0aW9uLm1tIGluIFNvdXJjZXMg
Ki8sCkBAIC0yNTY3Myw3ICsyNTY3Myw3IEBACiAJCQkJQkM2NDY0OUMxMUQ4MjM4QzAwNjQ1NUIw
IC8qIEpTRE9NU3RyaW5nTWFwQ3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTc2OTQ1NjND
MTIxNEQ5N0MwMDA3Q0JBRSAvKiBKU0RPTVRva2VuTGlzdC5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQkxNEUwQkM1NjEzNjE0OEE4MDAyQUQxMkUgLyogSlNET01Ub2tlbkxpc3RDdXN0b20uY3BwIGlu
IFNvdXJjZXMgKi8sCi0JCQkJMkUzN0UwMDUxMkRCQzVBNDAwQTZCMjMzIC8qIEpTRE9NVVJMLmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCTJFMzdFMDA1MTJEQkM1QTQwMEE2QjIzMyAvKiBKU1VSTC5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQkxNDAzQkEwQzA5RUIxOEM3MDA3OTdDN0YgLyogSlNET01X
aW5kb3cuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkM2OTMyNzMwRDdFMjkzOTAwQUU0NEQxIC8q
IEpTRE9NV2luZG93QmFzZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0Q5QzI2MjBDMTdBQTY3
MDA1QzkwQTIgLyogSlNET01XaW5kb3dDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9odG1sL0RPTVVSTC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvaHRtbC9ET01VUkwuY3BwCShyZXZpc2lvbiAxMDczNTUpCisrKyBTb3VyY2UvV2ViQ29yZS9o
dG1sL0RPTVVSTC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEsMTEzICswLDAgQEAKLS8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIENv
cHlyaWdodCAoQykgMjAxMiBNb3Rvcm9sYSBNb2JpbGl0eSBJbmMuCi0gKgotICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgotICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
Ci0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBBTkQgSVRTIENPTlRS
SUJVVE9SUyAiQVMgSVMiIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUKLSAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIE9SIElUUyBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCi0gKiAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7Ci0gKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQKLSAqIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKLSAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNv
bmZpZy5oIgotCi0jaWYgRU5BQkxFKEJMT0IpCi0KLSNpbmNsdWRlICJET01VUkwuaCIKLQotI2lu
Y2x1ZGUgIkFjdGl2ZURPTU9iamVjdC5oIgotI2luY2x1ZGUgIkJsb2IuaCIKLSNpbmNsdWRlICJC
bG9iVVJMLmgiCi0jaW5jbHVkZSAiS1VSTC5oIgotI2luY2x1ZGUgIlB1YmxpY1VSTE1hbmFnZXIu
aCIKLSNpbmNsdWRlICJTY3JpcHRFeGVjdXRpb25Db250ZXh0LmgiCi0jaW5jbHVkZSAiU2VjdXJp
dHlPcmlnaW4uaCIKLSNpbmNsdWRlICJUaHJlYWRhYmxlQmxvYlJlZ2lzdHJ5LmgiCi0jaW5jbHVk
ZSA8d3RmL1Bhc3NPd25QdHIuaD4KLSNpbmNsdWRlIDx3dGYvTWFpblRocmVhZC5oPgotCi0jaWYg
RU5BQkxFKE1FRElBX1NUUkVBTSkKLSNpbmNsdWRlICJNZWRpYVN0cmVhbS5oIgotI2luY2x1ZGUg
Ik1lZGlhU3RyZWFtUmVnaXN0cnkuaCIKLSNlbmRpZgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0K
LSNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQotU3RyaW5nIERPTVVSTDo6Y3JlYXRlT2JqZWN0VVJM
KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIE1lZGlhU3Ry
ZWFtKiBzdHJlYW0pCi17Ci0gICAgaWYgKCFzY3JpcHRFeGVjdXRpb25Db250ZXh0IHx8ICFzdHJl
YW0pCi0gICAgICAgIHJldHVybiBTdHJpbmcoKTsKLQotICAgIEtVUkwgcHVibGljVVJMID0gQmxv
YlVSTDo6Y3JlYXRlUHVibGljVVJMKHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQtPnNlY3VyaXR5T3Jp
Z2luKCkpOwotICAgIGlmIChwdWJsaWNVUkwuaXNFbXB0eSgpKQotICAgICAgICByZXR1cm4gU3Ry
aW5nKCk7Ci0KLSAgICAvLyBTaW5jZSBXZWJXb3JrZXJzIGNhbm5vdCBvYnRhaW4gU3RyZWFtIG9i
amVjdHMsIHdlIHNob3VsZCBiZSBvbiB0aGUgbWFpbiB0aHJlYWQuCi0gICAgQVNTRVJUKGlzTWFp
blRocmVhZCgpKTsKLQotICAgIE1lZGlhU3RyZWFtUmVnaXN0cnk6OnJlZ2lzdHJ5KCkucmVnaXN0
ZXJNZWRpYVN0cmVhbVVSTChwdWJsaWNVUkwsIHN0cmVhbSk7Ci0gICAgc2NyaXB0RXhlY3V0aW9u
Q29udGV4dC0+cHVibGljVVJMTWFuYWdlcigpLnN0cmVhbVVSTHMoKS5hZGQocHVibGljVVJMLnN0
cmluZygpKTsKLQotICAgIHJldHVybiBwdWJsaWNVUkwuc3RyaW5nKCk7Ci19Ci0jZW5kaWYKLQot
U3RyaW5nIERPTVVSTDo6Y3JlYXRlT2JqZWN0VVJMKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQsIEJsb2IqIGJsb2IpCi17Ci0gICAgaWYgKCFzY3JpcHRFeGVj
dXRpb25Db250ZXh0IHx8ICFibG9iKQotICAgICAgICByZXR1cm4gU3RyaW5nKCk7Ci0KLSAgICBL
VVJMIHB1YmxpY1VSTCA9IEJsb2JVUkw6OmNyZWF0ZVB1YmxpY1VSTChzY3JpcHRFeGVjdXRpb25D
b250ZXh0LT5zZWN1cml0eU9yaWdpbigpKTsKLSAgICBpZiAocHVibGljVVJMLmlzRW1wdHkoKSkK
LSAgICAgICAgcmV0dXJuIFN0cmluZygpOwotCi0gICAgVGhyZWFkYWJsZUJsb2JSZWdpc3RyeTo6
cmVnaXN0ZXJCbG9iVVJMKHB1YmxpY1VSTCwgYmxvYi0+dXJsKCkpOwotICAgIHNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQtPnB1YmxpY1VSTE1hbmFnZXIoKS5ibG9iVVJMcygpLmFkZChwdWJsaWNVUkwu
c3RyaW5nKCkpOwotCi0gICAgcmV0dXJuIHB1YmxpY1VSTC5zdHJpbmcoKTsKLX0KLQotdm9pZCBE
T01VUkw6OnJldm9rZU9iamVjdFVSTChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRFeGVj
dXRpb25Db250ZXh0LCBjb25zdCBTdHJpbmcmIHVybFN0cmluZykKLXsKLSAgICBpZiAoIXNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQpCi0gICAgICAgIHJldHVybjsKLQotICAgIEtVUkwgdXJsKEtVUkwo
KSwgdXJsU3RyaW5nKTsKLQotICAgIEhhc2hTZXQ8U3RyaW5nPiYgYmxvYlVSTHMgPSBzY3JpcHRF
eGVjdXRpb25Db250ZXh0LT5wdWJsaWNVUkxNYW5hZ2VyKCkuYmxvYlVSTHMoKTsKLSAgICBpZiAo
YmxvYlVSTHMuY29udGFpbnModXJsLnN0cmluZygpKSkgewotICAgICAgICBUaHJlYWRhYmxlQmxv
YlJlZ2lzdHJ5Ojp1bnJlZ2lzdGVyQmxvYlVSTCh1cmwpOwotICAgICAgICBibG9iVVJMcy5yZW1v
dmUodXJsLnN0cmluZygpKTsKLSAgICB9Ci0KLSNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQotICAg
IEhhc2hTZXQ8U3RyaW5nPiYgc3RyZWFtVVJMcyA9IHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQtPnB1
YmxpY1VSTE1hbmFnZXIoKS5zdHJlYW1VUkxzKCk7Ci0gICAgaWYgKHN0cmVhbVVSTHMuY29udGFp
bnModXJsLnN0cmluZygpKSkgewotICAgICAgICAvLyBGSVhNRTogbWFrZSBzdXJlIG9mIHRoaXMg
YXNzZXJ0aW9uIGJlbG93LiBSYWlzZSBhIHNwZWMgcXVlc3Rpb24gaWYgcmVxdWlyZWQuCi0gICAg
ICAgIC8vIFNpbmNlIFdlYldvcmtlcnMgY2Fubm90IG9idGFpbiBTdHJlYW0gb2JqZWN0cywgd2Ug
c2hvdWxkIGJlIG9uIHRoZSBtYWluIHRocmVhZC4KLSAgICAgICAgQVNTRVJUKGlzTWFpblRocmVh
ZCgpKTsKLSAgICAgICAgTWVkaWFTdHJlYW1SZWdpc3RyeTo6cmVnaXN0cnkoKS51bnJlZ2lzdGVy
TWVkaWFTdHJlYW1VUkwodXJsKTsKLSAgICAgICAgc3RyZWFtVVJMcy5yZW1vdmUodXJsLnN0cmlu
ZygpKTsKLSAgICB9Ci0jZW5kaWYKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5k
aWYgLy8gRU5BQkxFKEJMT0IpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0RPTVVSTC5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvRE9NVVJMLmgJKHJldmlzaW9uIDEwNzM1
NSkKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvRE9NVVJMLmgJKHdvcmtpbmcgY29weSkKQEAgLTEs
NjAgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgotICogQ29weXJpZ2h0IChDKSAyMDEyIE1vdG9yb2xhIE1vYmlsaXR5IElu
Yy4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAx
LiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
Ci0gKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IEFQUExFIEFORCBJVFMgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5EIEFOWQotICogRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUg
SU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQotICogRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5U
SUFMIERBTUFHRVMKLSAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKLSAqIExPU1MgT0YgVVNFLCBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RAotICogT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRgotICogVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
LSAqLwotCi0jaWZuZGVmIERPTVVSTF9oCi0jZGVmaW5lIERPTVVSTF9oCi0KLSNpbmNsdWRlICJL
VVJMLmgiCi0jaW5jbHVkZSAiUGxhdGZvcm1TdHJpbmcuaCIKLSNpbmNsdWRlIDx3dGYvSGFzaFNl
dC5oPgotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50
ZWQuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBCbG9iOwotY2xhc3MgTWVkaWFT
dHJlYW07Ci1jbGFzcyBTY3JpcHRFeGVjdXRpb25Db250ZXh0OwotCi1jbGFzcyBET01VUkwgOiBw
dWJsaWMgUmVmQ291bnRlZDxET01VUkw+IHsKLQotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVm
UHRyPERPTVVSTD4gY3JlYXRlKCkgeyByZXR1cm4gYWRvcHRSZWYobmV3IERPTVVSTCk7IH0KLQot
I2lmIEVOQUJMRShCTE9CKQotICAgIHN0YXRpYyB2b2lkIGNvbnRleHREZXN0cm95ZWQoU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCopOwotCi0gICAgc3RhdGljIFN0cmluZyBjcmVhdGVPYmplY3RVUkwo
U2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIEJsb2IqKTsKLSAgICBzdGF0aWMgdm9pZCByZXZva2VP
YmplY3RVUkwoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNvbnN0IFN0cmluZyYpOwotI2lmIEVO
QUJMRShNRURJQV9TVFJFQU0pCi0gICAgc3RhdGljIFN0cmluZyBjcmVhdGVPYmplY3RVUkwoU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCosIE1lZGlhU3RyZWFtKik7Ci0jZW5kaWYKLSNlbmRpZgotfTsK
LQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRE9NVVJMX2gKSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL2h0bWwvRE9NVVJMLmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9odG1sL0RPTVVSTC5pZGwJKHJldmlzaW9uIDEwNzM1NSkKKysrIFNvdXJjZS9XZWJDb3JlL2h0
bWwvRE9NVVJMLmlkbAkod29ya2luZyBjb3B5KQpAQCAtMSw0MSArMCwwIEBACi0vKgotICogQ29w
eXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiBDb3B5
cmlnaHQgKEMpIDIwMTIgTW90b3JvbGEgTW9iaWxpdHkgSW5jLgotICoKLSAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAot
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
LSAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgot
ICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgQU5EIElUUyBDT05UUklC
VVRPUlMgIkFTIElTIiBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECi0gKiBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0Ug
QVJFCi0gKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBPUiBJVFMgQ09OVFJJ
QlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwotICogKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOwotICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5ECi0gKiBPTiBBTlkgVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFIE9GCi0gKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLW1vZHVsZSBodG1sIHsK
LSAgICBpbnRlcmZhY2UgWwotICAgICAgICBDb25kaXRpb25hbD1CTE9CLAotICAgICAgICBDb25z
dHJ1Y3RvciwKLSAgICAgICAgSlNHZW5lcmF0ZVRvTmF0aXZlT2JqZWN0LAotICAgICAgICBKU0dl
bmVyYXRlVG9KUywKLSAgICAgICAgSlNOb1N0YXRpY1RhYmxlcwotICAgIF0gRE9NVVJMIHsKLSNp
ZiBkZWZpbmVkKEVOQUJMRV9NRURJQV9TVFJFQU0pICYmIEVOQUJMRV9NRURJQV9TVFJFQU0KLSAg
ICAgICAgc3RhdGljIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0LFRyZWF0UmV0dXJu
ZWROdWxsU3RyaW5nQXM9VW5kZWZpbmVkXSBET01TdHJpbmcgY3JlYXRlT2JqZWN0VVJMKGluIE1l
ZGlhU3RyZWFtIHN0cmVhbSk7Ci0jZW5kaWYKLSAgICAgICAgc3RhdGljIFtDYWxsV2l0aD1TY3Jp
cHRFeGVjdXRpb25Db250ZXh0LFRyZWF0UmV0dXJuZWROdWxsU3RyaW5nQXM9VW5kZWZpbmVkXSBE
T01TdHJpbmcgY3JlYXRlT2JqZWN0VVJMKGluIEJsb2IgYmxvYik7Ci0gICAgICAgIHN0YXRpYyBb
Q2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gdm9pZCByZXZva2VPYmplY3RVUkwoaW4g
RE9NU3RyaW5nIHVybCk7Ci0gICAgfTsKLX0KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvVVJM
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL1VSTC5jcHAJKHJldmlzaW9u
IDApCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL1VSTC5jcHAJKHJldmlzaW9uIDApCkBAIC0wLDAg
KzEsMTEyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgTW90b3JvbGEgTW9iaWxpdHkgSW5j
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICoKKyAqIDEu
ICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
QVBQTEUgQU5EIElUUyBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQgQU5ZCisgKiBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
CisgKiBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GCisgKiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJVUkwuaCIKKworI2lmIEVOQUJM
RShCTE9CKQorCisjaW5jbHVkZSAiQWN0aXZlRE9NT2JqZWN0LmgiCisjaW5jbHVkZSAiQmxvYi5o
IgorI2luY2x1ZGUgIkJsb2JVUkwuaCIKKyNpbmNsdWRlICJLVVJMLmgiCisjaW5jbHVkZSAiUHVi
bGljVVJMTWFuYWdlci5oIgorI2luY2x1ZGUgIlNjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaCIKKyNp
bmNsdWRlICJTZWN1cml0eU9yaWdpbi5oIgorI2luY2x1ZGUgIlRocmVhZGFibGVCbG9iUmVnaXN0
cnkuaCIKKyNpbmNsdWRlIDx3dGYvTWFpblRocmVhZC5oPgorI2luY2x1ZGUgPHd0Zi9QYXNzT3du
UHRyLmg+CisKKyNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorI2luY2x1ZGUgIk1lZGlhU3RyZWFt
LmgiCisjaW5jbHVkZSAiTWVkaWFTdHJlYW1SZWdpc3RyeS5oIgorI2VuZGlmCisKK25hbWVzcGFj
ZSBXZWJDb3JlIHsKKworI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCitTdHJpbmcgVVJMOjpjcmVh
dGVPYmplY3RVUkwoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4
dCwgTWVkaWFTdHJlYW0qIHN0cmVhbSkKK3sKKyAgICBpZiAoIXNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQgfHwgIXN0cmVhbSkKKyAgICAgICAgcmV0dXJuIFN0cmluZygpOworCisgICAgS1VSTCBwdWJs
aWNVUkwgPSBCbG9iVVJMOjpjcmVhdGVQdWJsaWNVUkwoc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+
c2VjdXJpdHlPcmlnaW4oKSk7CisgICAgaWYgKHB1YmxpY1VSTC5pc0VtcHR5KCkpCisgICAgICAg
IHJldHVybiBTdHJpbmcoKTsKKworICAgIC8vIFNpbmNlIFdlYldvcmtlcnMgY2Fubm90IG9idGFp
biBTdHJlYW0gb2JqZWN0cywgd2Ugc2hvdWxkIGJlIG9uIHRoZSBtYWluIHRocmVhZC4KKyAgICBB
U1NFUlQoaXNNYWluVGhyZWFkKCkpOworCisgICAgTWVkaWFTdHJlYW1SZWdpc3RyeTo6cmVnaXN0
cnkoKS5yZWdpc3Rlck1lZGlhU3RyZWFtVVJMKHB1YmxpY1VSTCwgc3RyZWFtKTsKKyAgICBzY3Jp
cHRFeGVjdXRpb25Db250ZXh0LT5wdWJsaWNVUkxNYW5hZ2VyKCkuc3RyZWFtVVJMcygpLmFkZChw
dWJsaWNVUkwuc3RyaW5nKCkpOworCisgICAgcmV0dXJuIHB1YmxpY1VSTC5zdHJpbmcoKTsKK30K
KyNlbmRpZgorCitTdHJpbmcgVVJMOjpjcmVhdGVPYmplY3RVUkwoU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgQmxvYiogYmxvYikKK3sKKyAgICBpZiAoIXNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQgfHwgIWJsb2IpCisgICAgICAgIHJldHVybiBTdHJpbmcoKTsK
KworICAgIEtVUkwgcHVibGljVVJMID0gQmxvYlVSTDo6Y3JlYXRlUHVibGljVVJMKHNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQtPnNlY3VyaXR5T3JpZ2luKCkpOworICAgIGlmIChwdWJsaWNVUkwuaXNF
bXB0eSgpKQorICAgICAgICByZXR1cm4gU3RyaW5nKCk7CisKKyAgICBUaHJlYWRhYmxlQmxvYlJl
Z2lzdHJ5OjpyZWdpc3RlckJsb2JVUkwocHVibGljVVJMLCBibG9iLT51cmwoKSk7CisgICAgc2Ny
aXB0RXhlY3V0aW9uQ29udGV4dC0+cHVibGljVVJMTWFuYWdlcigpLmJsb2JVUkxzKCkuYWRkKHB1
YmxpY1VSTC5zdHJpbmcoKSk7CisKKyAgICByZXR1cm4gcHVibGljVVJMLnN0cmluZygpOworfQor
Cit2b2lkIFVSTDo6cmV2b2tlT2JqZWN0VVJMKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQsIGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nKQoreworICAgIGlmICgh
c2NyaXB0RXhlY3V0aW9uQ29udGV4dCkKKyAgICAgICAgcmV0dXJuOworCisgICAgS1VSTCB1cmwo
S1VSTCgpLCB1cmxTdHJpbmcpOworCisgICAgSGFzaFNldDxTdHJpbmc+JiBibG9iVVJMcyA9IHNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQtPnB1YmxpY1VSTE1hbmFnZXIoKS5ibG9iVVJMcygpOworICAg
IGlmIChibG9iVVJMcy5jb250YWlucyh1cmwuc3RyaW5nKCkpKSB7CisgICAgICAgIFRocmVhZGFi
bGVCbG9iUmVnaXN0cnk6OnVucmVnaXN0ZXJCbG9iVVJMKHVybCk7CisgICAgICAgIGJsb2JVUkxz
LnJlbW92ZSh1cmwuc3RyaW5nKCkpOworICAgIH0KKworI2lmIEVOQUJMRShNRURJQV9TVFJFQU0p
CisgICAgSGFzaFNldDxTdHJpbmc+JiBzdHJlYW1VUkxzID0gc2NyaXB0RXhlY3V0aW9uQ29udGV4
dC0+cHVibGljVVJMTWFuYWdlcigpLnN0cmVhbVVSTHMoKTsKKyAgICBpZiAoc3RyZWFtVVJMcy5j
b250YWlucyh1cmwuc3RyaW5nKCkpKSB7CisgICAgICAgIC8vIEZJWE1FOiBtYWtlIHN1cmUgb2Yg
dGhpcyBhc3NlcnRpb24gYmVsb3cuIFJhaXNlIGEgc3BlYyBxdWVzdGlvbiBpZiByZXF1aXJlZC4K
KyAgICAgICAgLy8gU2luY2UgV2ViV29ya2VycyBjYW5ub3Qgb2J0YWluIFN0cmVhbSBvYmplY3Rz
LCB3ZSBzaG91bGQgYmUgb24gdGhlIG1haW4gdGhyZWFkLgorICAgICAgICBBU1NFUlQoaXNNYWlu
VGhyZWFkKCkpOworICAgICAgICBNZWRpYVN0cmVhbVJlZ2lzdHJ5OjpyZWdpc3RyeSgpLnVucmVn
aXN0ZXJNZWRpYVN0cmVhbVVSTCh1cmwpOworICAgICAgICBzdHJlYW1VUkxzLnJlbW92ZSh1cmwu
c3RyaW5nKCkpOworICAgIH0KKyNlbmRpZgorfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisK
KyNlbmRpZiAvLyBFTkFCTEUoQkxPQikKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvVVJMLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9VUkwuaAkocmV2aXNpb24gMCkKKysr
IFNvdXJjZS9XZWJDb3JlL2h0bWwvVVJMLmgJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNjAgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqIENvcHlyaWdodCAoQykgMjAxMiBNb3Rvcm9sYSBNb2JpbGl0eSBJbmMuCisgKgorICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKgorICogMS4gIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBBTkQg
SVRTIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAq
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIE9S
IElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
CisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQKKyAqIE9OIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKKyAqIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lm
bmRlZiBVUkxfaAorI2RlZmluZSBVUkxfaAorCisjaW5jbHVkZSAiS1VSTC5oIgorI2luY2x1ZGUg
IlBsYXRmb3JtU3RyaW5nLmgiCisjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KKyNpbmNsdWRlIDx3
dGYvUGFzc1JlZlB0ci5oPgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKK25hbWVzcGFj
ZSBXZWJDb3JlIHsKKworY2xhc3MgQmxvYjsKK2NsYXNzIE1lZGlhU3RyZWFtOworY2xhc3MgU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dDsKKworY2xhc3MgVVJMIDogcHVibGljIFJlZkNvdW50ZWQ8VVJM
PiB7CisKK3B1YmxpYzoKKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxVUkw+IGNyZWF0ZSgpIHsgcmV0
dXJuIGFkb3B0UmVmKG5ldyBVUkwpOyB9CisKKyNpZiBFTkFCTEUoQkxPQikKKyAgICBzdGF0aWMg
dm9pZCBjb250ZXh0RGVzdHJveWVkKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqKTsKKworICAgIHN0
YXRpYyBTdHJpbmcgY3JlYXRlT2JqZWN0VVJMKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBCbG9i
Kik7CisgICAgc3RhdGljIHZvaWQgcmV2b2tlT2JqZWN0VVJMKFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQqLCBjb25zdCBTdHJpbmcmKTsKKyNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorICAgIHN0YXRp
YyBTdHJpbmcgY3JlYXRlT2JqZWN0VVJMKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBNZWRpYVN0
cmVhbSopOworI2VuZGlmCisjZW5kaWYKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKwor
I2VuZGlmIC8vIFVSTF9oCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL1VSTC5pZGwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9VUkwuaWRsCShyZXZpc2lvbiAwKQorKysgU291
cmNlL1dlYkNvcmUvaHRtbC9VUkwuaWRsCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDQxIEBACisv
KgorICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgTW90b3JvbGEgTW9iaWxpdHkgSW5jLgorICoKKyAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICoKKyAqIDEuICBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgQU5EIElU
UyBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
IFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBPUiBJ
VFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwor
ICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5ECisgKiBPTiBBTlkg
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GCisgKiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKK21vZHVs
ZSBodG1sIHsKKyAgICBpbnRlcmZhY2UgWworICAgICAgICBDb25kaXRpb25hbD1CTE9CLAorICAg
ICAgICBDb25zdHJ1Y3RvciwKKyAgICAgICAgSlNHZW5lcmF0ZVRvTmF0aXZlT2JqZWN0LAorICAg
ICAgICBKU0dlbmVyYXRlVG9KUywKKyAgICAgICAgSlNOb1N0YXRpY1RhYmxlcworICAgIF0gVVJM
IHsKKyNpZiBkZWZpbmVkKEVOQUJMRV9NRURJQV9TVFJFQU0pICYmIEVOQUJMRV9NRURJQV9TVFJF
QU0KKyAgICAgICAgc3RhdGljIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0LFRyZWF0
UmV0dXJuZWROdWxsU3RyaW5nQXM9VW5kZWZpbmVkXSBET01TdHJpbmcgY3JlYXRlT2JqZWN0VVJM
KGluIE1lZGlhU3RyZWFtIHN0cmVhbSk7CisjZW5kaWYKKyAgICAgICAgc3RhdGljIFtDYWxsV2l0
aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0LFRyZWF0UmV0dXJuZWROdWxsU3RyaW5nQXM9VW5kZWZp
bmVkXSBET01TdHJpbmcgY3JlYXRlT2JqZWN0VVJMKGluIEJsb2IgYmxvYik7CisgICAgICAgIHN0
YXRpYyBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gdm9pZCByZXZva2VPYmplY3RV
UkwoaW4gRE9NU3RyaW5nIHVybCk7CisgICAgfTsKK30KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3Bh
Z2UvRE9NV2luZG93LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdp
bmRvdy5jcHAJKHJldmlzaW9uIDEwNzM1NSkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2lu
ZG93LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDQsNyArNDQsNiBAQAogI2luY2x1ZGUgIkRPTVN0
cmluZ0xpc3QuaCIKICNpbmNsdWRlICJET01UaW1lci5oIgogI2luY2x1ZGUgIkRPTVRva2VuTGlz
dC5oIgotI2luY2x1ZGUgIkRPTVVSTC5oIgogI2luY2x1ZGUgIkRhdGFiYXNlLmgiCiAjaW5jbHVk
ZSAiRGF0YWJhc2VDYWxsYmFjay5oIgogI2luY2x1ZGUgIkRldmljZU1vdGlvbkNvbnRyb2xsZXIu
aCIKQEAgLTQzNCw5ICs0MzMsNiBAQCBET01XaW5kb3c6On5ET01XaW5kb3coKQogI2lmIEVOQUJM
RShJTkRFWEVEX0RBVEFCQVNFKQogICAgIEFTU0VSVCghbV9pZGJGYWN0b3J5KTsKICNlbmRpZgot
I2lmIEVOQUJMRShCTE9CKQotICAgIEFTU0VSVCghbV9kb21VUkwpOwotI2VuZGlmCiAjaWYgRU5B
QkxFKFFVT1RBKQogICAgIEFTU0VSVCghbV9zdG9yYWdlSW5mbyk7CiAjZW5kaWYKQEAgLTUyNSw5
ICs1MjEsNiBAQCB2b2lkIERPTVdpbmRvdzo6Y2xlYXIoKQogI2lmIEVOQUJMRShJTkRFWEVEX0RB
VEFCQVNFKQogICAgIG1faWRiRmFjdG9yeSA9IDA7CiAjZW5kaWYKLSNpZiBFTkFCTEUoQkxPQikK
LSAgICBtX2RvbVVSTCA9IDA7Ci0jZW5kaWYKICNpZiBFTkFCTEUoUVVPVEEpCiAgICAgbV9zdG9y
YWdlSW5mbyA9IDA7CiAjZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaAkocmV2aXNp
b24gMTA3MzU1KQorKysgU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaAkod29ya2luZyBj
b3B5KQpAQCAtNDAsNyArNDAsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgY2xhc3MgQ3J5
cHRvOwogICAgIGNsYXNzIERPTUFwcGxpY2F0aW9uQ2FjaGU7CiAgICAgY2xhc3MgRE9NU2VsZWN0
aW9uOwotICAgIGNsYXNzIERPTVVSTDsKKyAgICBjbGFzcyBVUkw7CiAgICAgY2xhc3MgRE9NV2lu
ZG93UHJvcGVydHk7CiAgICAgY2xhc3MgRGF0YWJhc2U7CiAgICAgY2xhc3MgRGF0YWJhc2VDYWxs
YmFjazsKQEAgLTQ3MywxMCArNDczLDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBt
dXRhYmxlIFJlZlB0cjxQZXJmb3JtYW5jZT4gbV9wZXJmb3JtYW5jZTsKICNlbmRpZgogCi0jaWYg
RU5BQkxFKEJMT0IpCi0gICAgICAgIG11dGFibGUgUmVmUHRyPERPTVVSTD4gbV9kb21VUkw7Ci0j
ZW5kaWYKLQogI2lmIEVOQUJMRShRVU9UQSkKICAgICAgICAgbXV0YWJsZSBSZWZQdHI8U3RvcmFn
ZUluZm8+IG1fc3RvcmFnZUluZm87CiAjZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2Uv
RE9NV2luZG93LmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRv
dy5pZGwJKHJldmlzaW9uIDEwNzM1NSkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93
LmlkbAkod29ya2luZyBjb3B5KQpAQCAtNzgyLDcgKzc4Miw3IEBAIG1vZHVsZSB3aW5kb3cgewog
CiAgICAgICAgIGF0dHJpYnV0ZSBbQ29uZGl0aW9uYWw9QkxPQl0gV2ViS2l0QmxvYkJ1aWxkZXJD
b25zdHJ1Y3RvciBXZWJLaXRCbG9iQnVpbGRlcjsKIAotICAgICAgICBhdHRyaWJ1dGUgW0NvbmRp
dGlvbmFsPUJMT0JdIERPTVVSTENvbnN0cnVjdG9yIHdlYmtpdFVSTDsKKyAgICAgICAgYXR0cmli
dXRlIFtDb25kaXRpb25hbD1CTE9CXSBVUkxDb25zdHJ1Y3RvciB3ZWJraXRVUkw7CiAKICNpZiBk
ZWZpbmVkKEVOQUJMRV9RVU9UQSkgJiYgRU5BQkxFX1FVT1RBCiAgICAgICAgIHJlYWRvbmx5IGF0
dHJpYnV0ZSBbVjhFbmFibGVkQXRSdW50aW1lPVF1b3RhXSBTdG9yYWdlSW5mbyB3ZWJraXRTdG9y
YWdlSW5mbzsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyQ29udGV4dC5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJDb250ZXh0LmNwcAko
cmV2aXNpb24gMTA3MzU1KQorKysgU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJDb250ZXh0
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzksNyArMzksNiBAQAogI2luY2x1ZGUgIkRhdGFiYXNl
U3luYy5oIgogI2luY2x1ZGUgIkRhdGFiYXNlVHJhY2tlci5oIgogI2luY2x1ZGUgIkRPTVRpbWVy
LmgiCi0jaW5jbHVkZSAiRE9NVVJMLmgiCiAjaW5jbHVkZSAiRE9NV2luZG93LmgiCiAjaW5jbHVk
ZSAiRXJyb3JFdmVudC5oIgogI2luY2x1ZGUgIkV2ZW50LmgiCkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL1dvcmtlckNvbnRleHQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS93
b3JrZXJzL1dvcmtlckNvbnRleHQuaAkocmV2aXNpb24gMTA3MzU1KQorKysgU291cmNlL1dlYkNv
cmUvd29ya2Vycy9Xb3JrZXJDb250ZXh0LmgJKHdvcmtpbmcgY29weSkKQEAgLTQ4LDcgKzQ4LDcg
QEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAgY2xhc3MgQmxvYjsKICAgICBjbGFzcyBET01G
aWxlU3lzdGVtU3luYzsKLSAgICBjbGFzcyBET01VUkw7CisgICAgY2xhc3MgVVJMOwogICAgIGNs
YXNzIERhdGFiYXNlOwogICAgIGNsYXNzIERhdGFiYXNlQ2FsbGJhY2s7CiAgICAgY2xhc3MgRGF0
YWJhc2VTeW5jOwpAQCAtMjA3LDkgKzIwNyw2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICNpZiBF
TkFCTEVfTk9USUZJQ0FUSU9OUwogICAgICAgICBtdXRhYmxlIFJlZlB0cjxOb3RpZmljYXRpb25D
ZW50ZXI+IG1fbm90aWZpY2F0aW9uczsKICNlbmRpZgotI2lmIEVOQUJMRShCTE9CKQotICAgICAg
ICBtdXRhYmxlIFJlZlB0cjxET01VUkw+IG1fZG9tVVJMOwotI2VuZGlmCiAjaWYgRU5BQkxFKElO
U1BFQ1RPUikKICAgICAgICAgT3duUHRyPFdvcmtlckluc3BlY3RvckNvbnRyb2xsZXI+IG1fd29y
a2VySW5zcGVjdG9yQ29udHJvbGxlcjsKICNlbmRpZgpJbmRleDogU291cmNlL1dlYkNvcmUvd29y
a2Vycy9Xb3JrZXJDb250ZXh0LmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS93b3Jr
ZXJzL1dvcmtlckNvbnRleHQuaWRsCShyZXZpc2lvbiAxMDczNTUpCisrKyBTb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL1dvcmtlckNvbnRleHQuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0xMDEsNyArMTAx
LDcgQEAgbW9kdWxlIHRocmVhZHMgewogICAgICAgICBhdHRyaWJ1dGUgRmlsZVJlYWRlclN5bmND
b25zdHJ1Y3RvciBGaWxlUmVhZGVyU3luYzsKICNlbmRpZgogCi0gICAgICAgIGF0dHJpYnV0ZSBb
Q29uZGl0aW9uYWw9QkxPQl0gRE9NVVJMQ29uc3RydWN0b3Igd2Via2l0VVJMOworICAgICAgICBh
dHRyaWJ1dGUgW0NvbmRpdGlvbmFsPUJMT0JdIFVSTENvbnN0cnVjdG9yIHdlYmtpdFVSTDsKIAog
I2lmIGRlZmluZWQoRU5BQkxFX0ZJTEVfU1lTVEVNKSAmJiBFTkFCTEVfRklMRV9TWVNURU0KICAg
ICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgVEVNUE9SQVJZID0gMDsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>128672</attachid>
            <date>2012-02-24 00:21:58 -0800</date>
            <delta_ts>2012-02-27 03:07:02 -0800</delta_ts>
            <desc>Updated Patch</desc>
            <filename>78214.patch</filename>
            <type>text/plain</type>
            <size>13566</size>
            <attacher name="Kaustubh Atrawalkar">kaustubh.ra</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwODc0MSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDEyLTAyLTI0ICBLYXVzdHVi
aCBBdHJhd2Fsa2FyICA8a2F1c3R1YmhAbW90b3JvbGEuY29tPgorCisgICAgICAgIFJlbmFtZSBE
T01VUkwgdG8gVVJMIGluIHRoZSBiaW5kaW5ncworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzgyMTQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHMuIEludGVyZmFjZSBuYW1lIGNoYW5nZS4K
KworICAgICAgICAqIGh0bWwvRE9NVVJMLmlkbDogQWRkZWQgSW50ZXJmYWNlTmFtZSBhdHRyaWJ1
dGUgdG8gRE9NVVJMLgorCiAyMDEyLTAyLTIzICBQYXZlbCBGZWxkbWFuICA8cGZlbGRtYW5AY2hy
b21pdW0ub3JnPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IGhpZGUgY29sb3IgcGlja2VyIHVw
b24gcGFuZWwgc3dpdGNoLgpJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9ET01VUkwuaWRsCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvRE9NVVJMLmlkbAkocmV2aXNpb24gMTA4
NzMzKQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9ET01VUkwuaWRsCSh3b3JraW5nIGNvcHkpCkBA
IC0zMCw3ICszMCw4IEBAIG1vZHVsZSBodG1sIHsKICAgICAgICAgQ29uc3RydWN0b3IsCiAgICAg
ICAgIEpTR2VuZXJhdGVUb05hdGl2ZU9iamVjdCwKICAgICAgICAgSlNHZW5lcmF0ZVRvSlNPYmpl
Y3QsCi0gICAgICAgIEpTTm9TdGF0aWNUYWJsZXMKKyAgICAgICAgSlNOb1N0YXRpY1RhYmxlcywK
KyAgICAgICAgSW50ZXJmYWNlTmFtZT1VUkwKICAgICBdIERPTVVSTCB7CiAjaWYgZGVmaW5lZChF
TkFCTEVfTUVESUFfU1RSRUFNKSAmJiBFTkFCTEVfTUVESUFfU1RSRUFNCiAgICAgICAgIHN0YXRp
YyBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dCxUcmVhdFJldHVybmVkTnVsbFN0cmlu
Z0FzPVVuZGVmaW5lZF0gRE9NU3RyaW5nIGNyZWF0ZU9iamVjdFVSTChpbiBNZWRpYVN0cmVhbSBz
dHJlYW0pOwpJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gMTA4NzQxKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjQgQEAKKzIwMTItMDItMjQgIEthdXN0dWJo
IEF0cmF3YWxrYXIgIDxrYXVzdHViaEBtb3Rvcm9sYS5jb20+CisKKyAgICAgICAgUmVuYW1lIERP
TVVSTCB0byBVUkwgaW4gdGhlIGJpbmRpbmdzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD03ODIxNAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
ICogZmFzdC9maWxlcy9kb211cmwtc2NyaXB0LWV4ZWN1dGlvbi1jb250ZXh0LWNyYXNoLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2ZpbGVzL2RvbXVybC1zY3JpcHQtZXhlY3V0aW9uLWNv
bnRleHQtY3Jhc2guaHRtbDoKKyAgICAgICAgKiBmYXN0L2pzL2NvbnN0cnVjdG9yLWxlbmd0aC5o
dG1sOgorICAgICAgICAqIHBsYXRmb3JtL2d0ay9mYXN0L2RvbS9wcm90b3R5cGUtaW5oZXJpdGFu
Y2UtMi1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vZ3RrL2Zhc3QvanMvY29uc3Ry
dWN0b3ItbGVuZ3RoLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvZmFzdC9q
cy9nbG9iYWwtY29uc3RydWN0b3JzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS9t
YWMvZmFzdC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNlLTItZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHBsYXRmb3JtL21hYy9mYXN0L2pzL2NvbnN0cnVjdG9yLWxlbmd0aC1leHBlY3RlZC50eHQ6
CisgICAgICAgICogcGxhdGZvcm0vbWFjL2Zhc3QvanMvZ2xvYmFsLWNvbnN0cnVjdG9ycy1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vcXQvZmFzdC9kb20vcHJvdG90eXBlLWluaGVy
aXRhbmNlLTItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBsYXRmb3JtL3F0L2Zhc3QvanMvZ2xv
YmFsLWNvbnN0cnVjdG9ycy1leHBlY3RlZC50eHQ6CisKIDIwMTItMDItMjQgIFl1em8gRnVqaXNo
aW1hICA8eXV6b0Bnb29nbGUuY29tPgogCiAgICAgICAgIFtjaHJvbWl1bV0gVW5yZXZpZXdlZCB0
ZXN0IGV4cGVjdGF0aW9uIGNoYW5nZS4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZmlsZXMvZG9t
dXJsLXNjcmlwdC1leGVjdXRpb24tY29udGV4dC1jcmFzaC1leHBlY3RlZC50eHQKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9maWxlcy9kb211cmwtc2NyaXB0LWV4ZWN1dGlvbi1jb250
ZXh0LWNyYXNoLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMTA4NzMzKQorKysgTGF5b3V0VGVzdHMv
ZmFzdC9maWxlcy9kb211cmwtc2NyaXB0LWV4ZWN1dGlvbi1jb250ZXh0LWNyYXNoLWV4cGVjdGVk
LnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSArMSBAQAotUEFTUzogbnVsbCBzZWN1cml0eSBjb250
ZXh0IGZvciBET01VUkwgZGlkIG5vdCBjcmFzaAorUEFTUzogbnVsbCBzZWN1cml0eSBjb250ZXh0
IGZvciBVUkwgZGlkIG5vdCBjcmFzaApJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9maWxlcy9kb211
cmwtc2NyaXB0LWV4ZWN1dGlvbi1jb250ZXh0LWNyYXNoLmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvZmFzdC9maWxlcy9kb211cmwtc2NyaXB0LWV4ZWN1dGlvbi1jb250ZXh0LWNyYXNo
Lmh0bWwJKHJldmlzaW9uIDEwODczMykKKysrIExheW91dFRlc3RzL2Zhc3QvZmlsZXMvZG9tdXJs
LXNjcmlwdC1leGVjdXRpb24tY29udGV4dC1jcmFzaC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC01
LDcgKzUsNyBAQCBmdW5jdGlvbiBjcmFzaCgpCiAgICAgdHJ5IHsKICAgICAgICAgZS5hcHBseSh3
LCBbJ3dlYmtpdFVSTCddKTsKICAgICB9IGNhdGNoIChleCkgeyB9Ci0gICAgZG9jdW1lbnQuYm9k
eS5pbm5lckhUTUwgPSAiUEFTUzogbnVsbCBzZWN1cml0eSBjb250ZXh0IGZvciBET01VUkwgZGlk
IG5vdCBjcmFzaCI7CisgICAgZG9jdW1lbnQuYm9keS5pbm5lckhUTUwgPSAiUEFTUzogbnVsbCBz
ZWN1cml0eSBjb250ZXh0IGZvciBVUkwgZGlkIG5vdCBjcmFzaCI7CiAgICAgaWYgKHdpbmRvdy5s
YXlvdXRUZXN0Q29udHJvbGxlcikKICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5
RG9uZSgpOwogfQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9qcy9jb25zdHJ1Y3Rvci1sZW5ndGgu
aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2pzL2NvbnN0cnVjdG9yLWxlbmd0
aC5odG1sCShyZXZpc2lvbiAxMDg3MzMpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2pzL2NvbnN0cnVj
dG9yLWxlbmd0aC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xMSw3ICsxMSw2IEBAIHNob3VsZEJl
KCdCZWZvcmVMb2FkRXZlbnQubGVuZ3RoJywgJzInKTsKIHNob3VsZEJlKCdDbG9zZUV2ZW50Lmxl
bmd0aCcsICcyJyk7CiBzaG91bGRCZSgnQ3VzdG9tRXZlbnQubGVuZ3RoJywgJzInKTsKIHNob3Vs
ZEJlKCdET01QYXJzZXIubGVuZ3RoJywgJzAnKTsKLXNob3VsZEJlKCdET01VUkwubGVuZ3RoJywg
JzAnKTsKIHNob3VsZEJlKCdFcnJvckV2ZW50Lmxlbmd0aCcsICcyJyk7CiBzaG91bGRCZSgnRXZl
bnQubGVuZ3RoJywgJzInKTsKIHNob3VsZEJlKCdFdmVudFNvdXJjZS5sZW5ndGgnLCAnMScpOwpA
QCAtMzMsNiArMzIsNyBAQCBzaG91bGRCZSgnU2hhcmVkV29ya2VyLmxlbmd0aCcsICcyJyk7CiBz
aG91bGRCZSgnU3RvcmFnZUV2ZW50Lmxlbmd0aCcsICcyJyk7CiBzaG91bGRCZSgnVGV4dFRyYWNr
Q3VlLmxlbmd0aCcsICc2Jyk7CiBzaG91bGRCZSgnVHJhY2tFdmVudC5sZW5ndGgnLCAnMicpOwor
c2hvdWxkQmUoJ1VSTC5sZW5ndGgnLCAnMCcpOwogc2hvdWxkQmUoJ1dlYkdMQ29udGV4dEV2ZW50
Lmxlbmd0aCcsICcyJyk7CiBzaG91bGRCZSgnV2ViS2l0QW5pbWF0aW9uRXZlbnQubGVuZ3RoJywg
JzInKTsKIHNob3VsZEJlKCdXZWJLaXRCbG9iQnVpbGRlci5sZW5ndGgnLCAnMCcpOwpJbmRleDog
TGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2Zhc3QvZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS0y
LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvZmFz
dC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNlLTItZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAxMDg3
MzMpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvZmFzdC9kb20vcHJvdG90eXBlLWluaGVy
aXRhbmNlLTItZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC04MSw5ICs4MSw2IEBAIFBB
U1MgRE9NU3RyaW5nTWFwUHJvdG90eXBlIGZyb20gaW5uZXIuZG8KIFBBU1MgRE9NVG9rZW5MaXN0
IGZyb20gaW5uZXIuZG9jdW1lbnQuZm9ybXMudGVzdEZvcm0uMC4wLmNsYXNzTGlzdAogUEFTUyBE
T01Ub2tlbkxpc3RDb25zdHJ1Y3RvciBmcm9tIGlubmVyLmRvY3VtZW50LmZvcm1zLnRlc3RGb3Jt
LjAuY2xhc3NMaXN0LmNvbnN0cnVjdG9yCiBQQVNTIERPTVRva2VuTGlzdFByb3RvdHlwZSBmcm9t
IGlubmVyLmRvY3VtZW50LmZvcm1zLnRlc3RGb3JtLjAuMC5jbGFzc0xpc3QuX19wcm90b19fCi1Q
QVNTIFdpbmRvdyBmcm9tIGlubmVyCi1QQVNTIFdpbmRvd0NvbnN0cnVjdG9yIGZyb20gaW5uZXIu
ZG9jdW1lbnQuZm9ybXMudGVzdEZvcm0uMC5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3LmNvbnN0
cnVjdG9yCi1QQVNTIFdpbmRvd1Byb3RvdHlwZSBmcm9tIGlubmVyLmRvY3VtZW50LmZvcm1zLnRl
c3RGb3JtLjAub3duZXJEb2N1bWVudC5kZWZhdWx0Vmlldy5fX3Byb3RvX18KIFBBU1MgRG9jdW1l
bnRQcm90b3R5cGUgZnJvbSBpbm5lci5kb2N1bWVudC5mb3Jtcy50ZXN0Rm9ybS4wLm93bmVyRG9j
dW1lbnQuX19wcm90b19fLl9fcHJvdG9fXwogUEFTUyBFbGVtZW50UHJvdG90eXBlIGZyb20gaW5u
ZXIuZG9jdW1lbnQuZm9ybXMudGVzdEZvcm0uMC5fX3Byb3RvX18uX19wcm90b19fLl9fcHJvdG9f
XwogUEFTUyBGdW5jdGlvbiBmcm9tIGlubmVyLmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQKQEAgLTIz
Miw2ICsyMjksOSBAQCBQQVNTIFdlYktpdENTU0tleWZyYW1lUnVsZVByb3RvdHlwZSBmcm9tCiBQ
QVNTIFdlYktpdENTU0tleWZyYW1lc1J1bGUgZnJvbSBpbm5lci5kb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgiZHVtbXlTdHlsZSIpLnNoZWV0LmNzc1J1bGVzLjYKIFBBU1MgV2ViS2l0Q1NTS2V5ZnJh
bWVzUnVsZUNvbnN0cnVjdG9yIGZyb20gaW5uZXIuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImR1
bW15U3R5bGUiKS5zaGVldC5jc3NSdWxlcy42LmNvbnN0cnVjdG9yCiBQQVNTIFdlYktpdENTU0tl
eWZyYW1lc1J1bGVQcm90b3R5cGUgZnJvbSBpbm5lci5kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
ZHVtbXlTdHlsZSIpLnNoZWV0LmNzc1J1bGVzLjYuX19wcm90b19fCitQQVNTIFdpbmRvdyBmcm9t
IGlubmVyCitQQVNTIFdpbmRvd0NvbnN0cnVjdG9yIGZyb20gaW5uZXIuZG9jdW1lbnQuZm9ybXMu
dGVzdEZvcm0uMC5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3LmNvbnN0cnVjdG9yCitQQVNTIFdp
bmRvd1Byb3RvdHlwZSBmcm9tIGlubmVyLmRvY3VtZW50LmZvcm1zLnRlc3RGb3JtLjAub3duZXJE
b2N1bWVudC5kZWZhdWx0Vmlldy5fX3Byb3RvX18KIE5ldmVyIGZvdW5kIEF1ZGlvCiBOZXZlciBm
b3VuZCBCbG9iCiBOZXZlciBmb3VuZCBDREFUQVNlY3Rpb24KQEAgLTI0Miw3ICsyNDIsNiBAQCBO
ZXZlciBmb3VuZCBDbGlwYm9hcmQKIE5ldmVyIGZvdW5kIERPTVBhcnNlcgogTmV2ZXIgZm91bmQg
RE9NU2V0dGFibGVUb2tlbkxpc3QKIE5ldmVyIGZvdW5kIERPTVN0cmluZ0xpc3QKLU5ldmVyIGZv
dW5kIERPTVVSTAogTmV2ZXIgZm91bmQgRG9jdW1lbnQKIE5ldmVyIGZvdW5kIERvY3VtZW50RnJh
Z21lbnQKIE5ldmVyIGZvdW5kIERvY3VtZW50VHlwZQpAQCAtNDUxLDYgKzQ1MCw3IEBAIE5ldmVy
IGZvdW5kIFRleHRNZXRyaWNzCiBOZXZlciBmb3VuZCBUZXh0VHJhY2tDdWUKIE5ldmVyIGZvdW5k
IFRleHRUcmFja0N1ZUxpc3QKIE5ldmVyIGZvdW5kIFRleHRUcmFja0xpc3QKK05ldmVyIGZvdW5k
IFVSTAogTmV2ZXIgZm91bmQgV2ViS2l0Q1NTTWF0cml4CiBOZXZlciBmb3VuZCBXZWJLaXRDU1NS
ZWdpb25SdWxlCiBOZXZlciBmb3VuZCBXZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZQpJbmRleDogTGF5
b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2Zhc3QvanMvY29uc3RydWN0b3ItbGVuZ3RoLWV4cGVjdGVk
LnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvZmFzdC9qcy9jb25z
dHJ1Y3Rvci1sZW5ndGgtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAxMDg3MzMpCisrKyBMYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9ndGsvZmFzdC9qcy9jb25zdHJ1Y3Rvci1sZW5ndGgtZXhwZWN0ZWQudHh0
CSh3b3JraW5nIGNvcHkpCkBAIC03LDcgKzcsNiBAQCBQQVNTIEJlZm9yZUxvYWRFdmVudC5sZW5n
dGggaXMgMgogUEFTUyBDbG9zZUV2ZW50Lmxlbmd0aCBpcyAyCiBQQVNTIEN1c3RvbUV2ZW50Lmxl
bmd0aCBpcyAyCiBQQVNTIERPTVBhcnNlci5sZW5ndGggaXMgMAotRkFJTCBET01VUkwubGVuZ3Ro
IHNob3VsZCBiZSAwLiBUaHJldyBleGNlcHRpb24gUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQg
dmFyaWFibGU6IERPTVVSTAogUEFTUyBFcnJvckV2ZW50Lmxlbmd0aCBpcyAyCiBQQVNTIEV2ZW50
Lmxlbmd0aCBpcyAyCiBQQVNTIEV2ZW50U291cmNlLmxlbmd0aCBpcyAxCkBAIC0yOSw2ICsyOCw3
IEBAIFBBU1MgU2hhcmVkV29ya2VyLmxlbmd0aCBpcyAyCiBQQVNTIFN0b3JhZ2VFdmVudC5sZW5n
dGggaXMgMgogUEFTUyBUZXh0VHJhY2tDdWUubGVuZ3RoIGlzIDYKIFBBU1MgVHJhY2tFdmVudC5s
ZW5ndGggaXMgMgorRkFJTCBVUkwubGVuZ3RoIHNob3VsZCBiZSAwLiBUaHJldyBleGNlcHRpb24g
UmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IFVSTAogUEFTUyBXZWJHTENvbnRl
eHRFdmVudC5sZW5ndGggaXMgMgogUEFTUyBXZWJLaXRBbmltYXRpb25FdmVudC5sZW5ndGggaXMg
MgogUEFTUyBXZWJLaXRCbG9iQnVpbGRlci5sZW5ndGggaXMgMApJbmRleDogTGF5b3V0VGVzdHMv
cGxhdGZvcm0vZ3RrL2Zhc3QvanMvZ2xvYmFsLWNvbnN0cnVjdG9ycy1leHBlY3RlZC50eHQKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2Zhc3QvanMvZ2xvYmFsLWNvbnN0
cnVjdG9ycy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDEwODczMykKKysrIExheW91dFRlc3RzL3Bs
YXRmb3JtL2d0ay9mYXN0L2pzL2dsb2JhbC1jb25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0CSh3b3Jr
aW5nIGNvcHkpCkBAIC0zMjIsNyArMzIyLDcgQEAgUEFTUyBXZWJLaXRQb2ludC50b1N0cmluZygp
IGlzICdbb2JqZWN0CiBQQVNTIFdlYktpdFRyYW5zaXRpb25FdmVudC50b1N0cmluZygpIGlzICdb
b2JqZWN0IFdlYktpdFRyYW5zaXRpb25FdmVudENvbnN0cnVjdG9yXScKIFBBU1MgV2ViU29ja2V0
LnRvU3RyaW5nKCkgaXMgJ1tvYmplY3QgV2ViU29ja2V0Q29uc3RydWN0b3JdJwogUEFTUyBXaGVl
bEV2ZW50LnRvU3RyaW5nKCkgaXMgJ1tvYmplY3QgV2hlZWxFdmVudENvbnN0cnVjdG9yXScKLUZB
SUwgV2luZG93LnRvU3RyaW5nKCkgc2hvdWxkIGJlIFtvYmplY3QgV2luZG93Q29uc3RydWN0b3Jd
LiBXYXMgW29iamVjdCBXaW5kb3dDb25zdHJ1Y3Rvcl0uCitQQVNTIFdpbmRvdy50b1N0cmluZygp
IGlzICdbb2JqZWN0IFdpbmRvd0NvbnN0cnVjdG9yXScKIFBBU1MgV29ya2VyLnRvU3RyaW5nKCkg
aXMgJ1tvYmplY3QgV29ya2VyQ29uc3RydWN0b3JdJwogUEFTUyBYTUxEb2N1bWVudC50b1N0cmlu
ZygpIGlzICdbb2JqZWN0IERvY3VtZW50Q29uc3RydWN0b3JdJwogUEFTUyBYTUxIdHRwUmVxdWVz
dC50b1N0cmluZygpIGlzICdbb2JqZWN0IFhNTEh0dHBSZXF1ZXN0Q29uc3RydWN0b3JdJwpAQCAt
MzM1LDcgKzMzNSw3IEBAIFBBU1MgWFBhdGhFeGNlcHRpb24udG9TdHJpbmcoKSBpcyAnW29iamUK
IFBBU1MgWFBhdGhSZXN1bHQudG9TdHJpbmcoKSBpcyAnW29iamVjdCBYUGF0aFJlc3VsdENvbnN0
cnVjdG9yXScKIFBBU1MgWFNMVFByb2Nlc3Nvci50b1N0cmluZygpIGlzICdbb2JqZWN0IFhTTFRQ
cm9jZXNzb3JDb25zdHJ1Y3Rvcl0nCiBGQUlMIHdlYmtpdFBlZXJDb25uZWN0aW9uLnRvU3RyaW5n
KCkgc2hvdWxkIGJlIFtvYmplY3Qgd2Via2l0UGVlckNvbm5lY3Rpb25Db25zdHJ1Y3Rvcl0uIFdh
cyBbb2JqZWN0IFBlZXJDb25uZWN0aW9uQ29uc3RydWN0b3JdLgotRkFJTCB3ZWJraXRVUkwudG9T
dHJpbmcoKSBzaG91bGQgYmUgW29iamVjdCB3ZWJraXRVUkxDb25zdHJ1Y3Rvcl0uIFdhcyBbb2Jq
ZWN0IERPTVVSTENvbnN0cnVjdG9yXS4KK0ZBSUwgd2Via2l0VVJMLnRvU3RyaW5nKCkgc2hvdWxk
IGJlIFtvYmplY3Qgd2Via2l0VVJMQ29uc3RydWN0b3JdLiBXYXMgW29iamVjdCBVUkxDb25zdHJ1
Y3Rvcl0uCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUK
SW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2RvbS9wcm90b3R5cGUtaW5oZXJp
dGFuY2UtMi1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0v
bWFjL2Zhc3QvZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS0yLWV4cGVjdGVkLnR4dAkocmV2aXNp
b24gMTA4NzMzKQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvZG9tL3Byb3RvdHlw
ZS1pbmhlcml0YW5jZS0yLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMjQ1LDcgKzI0
NSw2IEBAIE5ldmVyIGZvdW5kIENsaXBib2FyZAogTmV2ZXIgZm91bmQgRE9NUGFyc2VyCiBOZXZl
ciBmb3VuZCBET01TZXR0YWJsZVRva2VuTGlzdAogTmV2ZXIgZm91bmQgRE9NU3RyaW5nTGlzdAot
TmV2ZXIgZm91bmQgRE9NVVJMCiBOZXZlciBmb3VuZCBEb2N1bWVudAogTmV2ZXIgZm91bmQgRG9j
dW1lbnRGcmFnbWVudAogTmV2ZXIgZm91bmQgRG9jdW1lbnRUeXBlCkBAIC00NTQsNiArNDUzLDcg
QEAgTmV2ZXIgZm91bmQgVGV4dE1ldHJpY3MKIE5ldmVyIGZvdW5kIFRleHRUcmFja0N1ZQogTmV2
ZXIgZm91bmQgVGV4dFRyYWNrQ3VlTGlzdAogTmV2ZXIgZm91bmQgV2ViS2l0Q1NTRmlsdGVyVmFs
dWUKK05ldmVyIGZvdW5kIFVSTAogTmV2ZXIgZm91bmQgV2ViS2l0Q1NTTWF0cml4CiBOZXZlciBm
b3VuZCBXZWJLaXRDU1NSZWdpb25SdWxlCiBOZXZlciBmb3VuZCBXZWJLaXRDU1NUcmFuc2Zvcm1W
YWx1ZQpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvanMvY29uc3RydWN0b3It
bGVuZ3RoLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9t
YWMvZmFzdC9qcy9jb25zdHJ1Y3Rvci1sZW5ndGgtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAxMDg3
MzMpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9qcy9jb25zdHJ1Y3Rvci1sZW5n
dGgtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC03LDcgKzcsNiBAQCBQQVNTIEJlZm9y
ZUxvYWRFdmVudC5sZW5ndGggaXMgMgogUEFTUyBDbG9zZUV2ZW50Lmxlbmd0aCBpcyAyCiBQQVNT
IEN1c3RvbUV2ZW50Lmxlbmd0aCBpcyAyCiBQQVNTIERPTVBhcnNlci5sZW5ndGggaXMgMAotRkFJ
TCBET01VUkwubGVuZ3RoIHNob3VsZCBiZSAwLiBUaHJldyBleGNlcHRpb24gUmVmZXJlbmNlRXJy
b3I6IENhbid0IGZpbmQgdmFyaWFibGU6IERPTVVSTAogUEFTUyBFcnJvckV2ZW50Lmxlbmd0aCBp
cyAyCiBQQVNTIEV2ZW50Lmxlbmd0aCBpcyAyCiBQQVNTIEV2ZW50U291cmNlLmxlbmd0aCBpcyAx
CkBAIC0yOSw2ICsyOCw3IEBAIFBBU1MgU2hhcmVkV29ya2VyLmxlbmd0aCBpcyAyCiBQQVNTIFN0
b3JhZ2VFdmVudC5sZW5ndGggaXMgMgogUEFTUyBUZXh0VHJhY2tDdWUubGVuZ3RoIGlzIDYKIFBB
U1MgVHJhY2tFdmVudC5sZW5ndGggaXMgMgorRkFJTCBVUkwubGVuZ3RoIHNob3VsZCBiZSAwLiBU
aHJldyBleGNlcHRpb24gUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IFVSTAog
UEFTUyBXZWJHTENvbnRleHRFdmVudC5sZW5ndGggaXMgMgogUEFTUyBXZWJLaXRBbmltYXRpb25F
dmVudC5sZW5ndGggaXMgMgogUEFTUyBXZWJLaXRCbG9iQnVpbGRlci5sZW5ndGggaXMgMApJbmRl
eDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvanMvZ2xvYmFsLWNvbnN0cnVjdG9ycy1l
eHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3Qv
anMvZ2xvYmFsLWNvbnN0cnVjdG9ycy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDEwODczMykKKysr
IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2pzL2dsb2JhbC1jb25zdHJ1Y3RvcnMtZXhw
ZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0zMzcsNyArMzM3LDcgQEAgUEFTUyBYUGF0aFJl
c3VsdC50b1N0cmluZygpIGlzICdbb2JqZWN0CiBQQVNTIFhTTFRQcm9jZXNzb3IudG9TdHJpbmco
KSBpcyAnW29iamVjdCBYU0xUUHJvY2Vzc29yQ29uc3RydWN0b3JdJwogRkFJTCB3ZWJraXRBdWRp
b0NvbnRleHQudG9TdHJpbmcoKSBzaG91bGQgYmUgW29iamVjdCB3ZWJraXRBdWRpb0NvbnRleHRD
b25zdHJ1Y3Rvcl0uIFdhcyBbb2JqZWN0IEF1ZGlvQ29udGV4dENvbnN0cnVjdG9yXS4KIEZBSUwg
d2Via2l0QXVkaW9QYW5uZXJOb2RlLnRvU3RyaW5nKCkgc2hvdWxkIGJlIFtvYmplY3Qgd2Via2l0
QXVkaW9QYW5uZXJOb2RlQ29uc3RydWN0b3JdLiBXYXMgW29iamVjdCBBdWRpb1Bhbm5lck5vZGVD
b25zdHJ1Y3Rvcl0uCi1GQUlMIHdlYmtpdFVSTC50b1N0cmluZygpIHNob3VsZCBiZSBbb2JqZWN0
IHdlYmtpdFVSTENvbnN0cnVjdG9yXS4gV2FzIFtvYmplY3QgRE9NVVJMQ29uc3RydWN0b3JdLgor
RkFJTCB3ZWJraXRVUkwudG9TdHJpbmcoKSBzaG91bGQgYmUgW29iamVjdCB3ZWJraXRVUkxDb25z
dHJ1Y3Rvcl0uIFdhcyBbb2JqZWN0IFVSTENvbnN0cnVjdG9yXS4KIFBBU1Mgc3VjY2Vzc2Z1bGx5
UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZv
cm0vcXQvZmFzdC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNlLTItZXhwZWN0ZWQudHh0Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL3F0L2Zhc3QvZG9tL3Byb3RvdHlwZS1pbmhl
cml0YW5jZS0yLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMTA4NzMzKQorKysgTGF5b3V0VGVzdHMv
cGxhdGZvcm0vcXQvZmFzdC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNlLTItZXhwZWN0ZWQudHh0
CSh3b3JraW5nIGNvcHkpCkBAIC0yNDIsNyArMjQyLDYgQEAgTmV2ZXIgZm91bmQgQ2xpcGJvYXJk
CiBOZXZlciBmb3VuZCBET01QYXJzZXIKIE5ldmVyIGZvdW5kIERPTVNldHRhYmxlVG9rZW5MaXN0
CiBOZXZlciBmb3VuZCBET01TdHJpbmdMaXN0Ci1OZXZlciBmb3VuZCBET01VUkwKIE5ldmVyIGZv
dW5kIERvY3VtZW50CiBOZXZlciBmb3VuZCBEb2N1bWVudEZyYWdtZW50CiBOZXZlciBmb3VuZCBE
b2N1bWVudFR5cGUKQEAgLTQzNCw2ICs0MzMsNyBAQCBOZXZlciBmb3VuZCBTaGFyZWRXb3JrZXIK
IE5ldmVyIGZvdW5kIFN0eWxlU2hlZXQKIE5ldmVyIGZvdW5kIFRleHRNZXRyaWNzCiBOZXZlciBm
b3VuZCBXZWJLaXRDU1NGaWx0ZXJWYWx1ZQorTmV2ZXIgZm91bmQgVVJMCiBOZXZlciBmb3VuZCBX
ZWJLaXRDU1NNYXRyaXgKIE5ldmVyIGZvdW5kIFdlYktpdENTU1JlZ2lvblJ1bGUKIE5ldmVyIGZv
dW5kIFdlYktpdENTU1RyYW5zZm9ybVZhbHVlCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9x
dC9mYXN0L2pzL2dsb2JhbC1jb25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL3BsYXRmb3JtL3F0L2Zhc3QvanMvZ2xvYmFsLWNvbnN0cnVjdG9ycy1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDEwODczMykKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL3F0L2Zh
c3QvanMvZ2xvYmFsLWNvbnN0cnVjdG9ycy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAg
LTMxNiw3ICszMTYsNyBAQCBQQVNTIFhQYXRoRXZhbHVhdG9yLnRvU3RyaW5nKCkgaXMgJ1tvYmpl
CiBQQVNTIFhQYXRoRXhjZXB0aW9uLnRvU3RyaW5nKCkgaXMgJ1tvYmplY3QgWFBhdGhFeGNlcHRp
b25Db25zdHJ1Y3Rvcl0nCiBQQVNTIFhQYXRoUmVzdWx0LnRvU3RyaW5nKCkgaXMgJ1tvYmplY3Qg
WFBhdGhSZXN1bHRDb25zdHJ1Y3Rvcl0nCiBQQVNTIFhTTFRQcm9jZXNzb3IudG9TdHJpbmcoKSBp
cyAnW29iamVjdCBYU0xUUHJvY2Vzc29yQ29uc3RydWN0b3JdJwotRkFJTCB3ZWJraXRVUkwudG9T
dHJpbmcoKSBzaG91bGQgYmUgW29iamVjdCB3ZWJraXRVUkxDb25zdHJ1Y3Rvcl0uIFdhcyBbb2Jq
ZWN0IERPTVVSTENvbnN0cnVjdG9yXS4KK0ZBSUwgd2Via2l0VVJMLnRvU3RyaW5nKCkgc2hvdWxk
IGJlIFtvYmplY3Qgd2Via2l0VVJMQ29uc3RydWN0b3JdLiBXYXMgW29iamVjdCBVUkxDb25zdHJ1
Y3Rvcl0uCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>129003</attachid>
            <date>2012-02-27 03:07:02 -0800</date>
            <delta_ts>2012-03-02 00:54:34 -0800</delta_ts>
            <desc>Updated Patch</desc>
            <filename>78214.patch</filename>
            <type>text/plain</type>
            <size>11382</size>
            <attacher name="Kaustubh Atrawalkar">kaustubh.ra</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwODk3OCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDEyLTAyLTI3ICBLYXVzdHVi
aCBBdHJhd2Fsa2FyICA8a2F1c3R1YmhAbW90b3JvbGEuY29tPgorCisgICAgICAgIFJlbmFtZSBE
T01VUkwgdG8gVVJMIGluIHRoZSBiaW5kaW5ncworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzgyMTQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHMuIEludGVyZmFjZSBuYW1lIGNoYW5nZS4K
KworICAgICAgICAqIGh0bWwvRE9NVVJMLmlkbDogQWRkZWQgSW50ZXJmYWNlTmFtZSBhdHRyaWJ1
dGUgdG8gRE9NVVJMLgorCiAyMDEyLTAyLTI3ICBLZWlzaGkgSGF0dG9yaSAgPGtlaXNoaUB3ZWJr
aXQub3JnPgogCiAgICAgICAgIENvbG9yIGlucHV0IHR5cGUgc2hvdWxkIGJlIGNsaWNrYWJsZSB0
aHJvdWdoIGtleWJvYXJkCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0RPTVVSTC5pZGwKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9ET01VUkwuaWRsCShyZXZpc2lvbiAxMDg5
NzMpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0RPTVVSTC5pZGwJKHdvcmtpbmcgY29weSkKQEAg
LTMwLDcgKzMwLDggQEAgbW9kdWxlIGh0bWwgewogICAgICAgICBDb25zdHJ1Y3RvciwKICAgICAg
ICAgSlNHZW5lcmF0ZVRvTmF0aXZlT2JqZWN0LAogICAgICAgICBKU0dlbmVyYXRlVG9KU09iamVj
dCwKLSAgICAgICAgSlNOb1N0YXRpY1RhYmxlcworICAgICAgICBKU05vU3RhdGljVGFibGVzLAor
ICAgICAgICBJbnRlcmZhY2VOYW1lPVVSTAogICAgIF0gRE9NVVJMIHsKICNpZiBkZWZpbmVkKEVO
QUJMRV9NRURJQV9TVFJFQU0pICYmIEVOQUJMRV9NRURJQV9TVFJFQU0KICAgICAgICAgc3RhdGlj
IFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0LFRyZWF0UmV0dXJuZWROdWxsU3RyaW5n
QXM9VW5kZWZpbmVkXSBET01TdHJpbmcgY3JlYXRlT2JqZWN0VVJMKGluIE1lZGlhU3RyZWFtIHN0
cmVhbSk7CkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAxMDg5NzgpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VM
b2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwyMiBAQAorMjAxMi0wMi0yNyAgS2F1c3R1Ymgg
QXRyYXdhbGthciAgPGthdXN0dWJoQG1vdG9yb2xhLmNvbT4KKworICAgICAgICBSZW5hbWUgRE9N
VVJMIHRvIFVSTCBpbiB0aGUgYmluZGluZ3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTc4MjE0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgKiBmYXN0L2ZpbGVzL2RvbXVybC1zY3JpcHQtZXhlY3V0aW9uLWNv
bnRleHQtY3Jhc2gtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvZmlsZXMvZG9tdXJsLXNj
cmlwdC1leGVjdXRpb24tY29udGV4dC1jcmFzaC5odG1sOgorICAgICAgICAqIGZhc3QvanMvY29u
c3RydWN0b3ItbGVuZ3RoLmh0bWw6CisgICAgICAgICogcGxhdGZvcm0vZ3RrL2Zhc3QvZG9tL3By
b3RvdHlwZS1pbmhlcml0YW5jZS0yLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS9n
dGsvZmFzdC9qcy9jb25zdHJ1Y3Rvci1sZW5ndGgtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBs
YXRmb3JtL2d0ay9mYXN0L2pzL2dsb2JhbC1jb25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIHBsYXRmb3JtL21hYy9mYXN0L2RvbS9wcm90b3R5cGUtaW5oZXJpdGFuY2UtMi1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vbWFjL2Zhc3QvanMvY29uc3RydWN0b3ItbGVu
Z3RoLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvZmFzdC9qcy9nbG9iYWwt
Y29uc3RydWN0b3JzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS9xdC9mYXN0L2Rv
bS9wcm90b3R5cGUtaW5oZXJpdGFuY2UtMi1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZv
cm0vcXQvZmFzdC9qcy9nbG9iYWwtY29uc3RydWN0b3JzLWV4cGVjdGVkLnR4dDoKKwogMjAxMi0w
Mi0yNyAgS2VuaWNoaSBJc2hpYmFzaGkgIDxiYXNoaUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAg
W0Nocm9taXVtXSBVbnJldmlld2VkIHRlc3QgZXhwZWN0YXRpb25zIHVwZGF0ZS4KSW5kZXg6IExh
eW91dFRlc3RzL2Zhc3QvZmlsZXMvZG9tdXJsLXNjcmlwdC1leGVjdXRpb24tY29udGV4dC1jcmFz
aC1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9maWxlcy9kb211
cmwtc2NyaXB0LWV4ZWN1dGlvbi1jb250ZXh0LWNyYXNoLWV4cGVjdGVkLnR4dAkocmV2aXNpb24g
MTA4OTczKQorKysgTGF5b3V0VGVzdHMvZmFzdC9maWxlcy9kb211cmwtc2NyaXB0LWV4ZWN1dGlv
bi1jb250ZXh0LWNyYXNoLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSArMSBAQAot
UEFTUzogbnVsbCBzZWN1cml0eSBjb250ZXh0IGZvciBET01VUkwgZGlkIG5vdCBjcmFzaAorUEFT
UzogbnVsbCBzZWN1cml0eSBjb250ZXh0IGZvciBVUkwgZGlkIG5vdCBjcmFzaApJbmRleDogTGF5
b3V0VGVzdHMvZmFzdC9maWxlcy9kb211cmwtc2NyaXB0LWV4ZWN1dGlvbi1jb250ZXh0LWNyYXNo
Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9maWxlcy9kb211cmwtc2NyaXB0
LWV4ZWN1dGlvbi1jb250ZXh0LWNyYXNoLmh0bWwJKHJldmlzaW9uIDEwODk3MykKKysrIExheW91
dFRlc3RzL2Zhc3QvZmlsZXMvZG9tdXJsLXNjcmlwdC1leGVjdXRpb24tY29udGV4dC1jcmFzaC5o
dG1sCSh3b3JraW5nIGNvcHkpCkBAIC01LDcgKzUsNyBAQCBmdW5jdGlvbiBjcmFzaCgpCiAgICAg
dHJ5IHsKICAgICAgICAgZS5hcHBseSh3LCBbJ3dlYmtpdFVSTCddKTsKICAgICB9IGNhdGNoIChl
eCkgeyB9Ci0gICAgZG9jdW1lbnQuYm9keS5pbm5lckhUTUwgPSAiUEFTUzogbnVsbCBzZWN1cml0
eSBjb250ZXh0IGZvciBET01VUkwgZGlkIG5vdCBjcmFzaCI7CisgICAgZG9jdW1lbnQuYm9keS5p
bm5lckhUTUwgPSAiUEFTUzogbnVsbCBzZWN1cml0eSBjb250ZXh0IGZvciBVUkwgZGlkIG5vdCBj
cmFzaCI7CiAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKICAgICAgICAgbGF5
b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOwogfQpJbmRleDogTGF5b3V0VGVzdHMvZmFz
dC9qcy9jb25zdHJ1Y3Rvci1sZW5ndGguaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9m
YXN0L2pzL2NvbnN0cnVjdG9yLWxlbmd0aC5odG1sCShyZXZpc2lvbiAxMDg5NzMpCisrKyBMYXlv
dXRUZXN0cy9mYXN0L2pzL2NvbnN0cnVjdG9yLWxlbmd0aC5odG1sCSh3b3JraW5nIGNvcHkpCkBA
IC0xMSw3ICsxMSw2IEBAIHNob3VsZEJlKCdCZWZvcmVMb2FkRXZlbnQubGVuZ3RoJywgJzInKTsK
IHNob3VsZEJlKCdDbG9zZUV2ZW50Lmxlbmd0aCcsICcyJyk7CiBzaG91bGRCZSgnQ3VzdG9tRXZl
bnQubGVuZ3RoJywgJzInKTsKIHNob3VsZEJlKCdET01QYXJzZXIubGVuZ3RoJywgJzAnKTsKLXNo
b3VsZEJlKCdET01VUkwubGVuZ3RoJywgJzAnKTsKIHNob3VsZEJlKCdFcnJvckV2ZW50Lmxlbmd0
aCcsICcyJyk7CiBzaG91bGRCZSgnRXZlbnQubGVuZ3RoJywgJzInKTsKIHNob3VsZEJlKCdFdmVu
dFNvdXJjZS5sZW5ndGgnLCAnMScpOwpAQCAtMzksNiArMzgsNyBAQCBzaG91bGRCZSgnV2ViS2l0
QmxvYkJ1aWxkZXIubGVuZ3RoJywgJzAnCiBzaG91bGRCZSgnV2ViS2l0Q1NTTWF0cml4Lmxlbmd0
aCcsICcxJyk7CiBzaG91bGRCZSgnV2ViS2l0VHJhbnNpdGlvbkV2ZW50Lmxlbmd0aCcsICcyJyk7
CiBzaG91bGRCZSgnV29ya2VyLmxlbmd0aCcsICcxJyk7CitzaG91bGRCZSgnd2Via2l0VVJMLmxl
bmd0aCcsICcwJyk7CiBzaG91bGRCZSgnWE1MSHR0cFJlcXVlc3QubGVuZ3RoJywgJzAnKTsKIHNo
b3VsZEJlKCdYTUxTZXJpYWxpemVyLmxlbmd0aCcsICcwJyk7CiBzaG91bGRCZSgnWFBhdGhFdmFs
dWF0b3IubGVuZ3RoJywgJzAnKTsKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9mYXN0
L2RvbS9wcm90b3R5cGUtaW5oZXJpdGFuY2UtMi1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2Zhc3QvZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS0y
LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMTA4OTczKQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0v
Z3RrL2Zhc3QvZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS0yLWV4cGVjdGVkLnR4dAkod29ya2lu
ZyBjb3B5KQpAQCAtMjQyLDcgKzI0Miw2IEBAIE5ldmVyIGZvdW5kIENsaXBib2FyZAogTmV2ZXIg
Zm91bmQgRE9NUGFyc2VyCiBOZXZlciBmb3VuZCBET01TZXR0YWJsZVRva2VuTGlzdAogTmV2ZXIg
Zm91bmQgRE9NU3RyaW5nTGlzdAotTmV2ZXIgZm91bmQgRE9NVVJMCiBOZXZlciBmb3VuZCBEb2N1
bWVudAogTmV2ZXIgZm91bmQgRG9jdW1lbnRGcmFnbWVudAogTmV2ZXIgZm91bmQgRG9jdW1lbnRU
eXBlCkBAIC00NTEsNiArNDUwLDcgQEAgTmV2ZXIgZm91bmQgVGV4dE1ldHJpY3MKIE5ldmVyIGZv
dW5kIFRleHRUcmFja0N1ZQogTmV2ZXIgZm91bmQgVGV4dFRyYWNrQ3VlTGlzdAogTmV2ZXIgZm91
bmQgVGV4dFRyYWNrTGlzdAorTmV2ZXIgZm91bmQgVVJMCiBOZXZlciBmb3VuZCBXZWJLaXRDU1NN
YXRyaXgKIE5ldmVyIGZvdW5kIFdlYktpdENTU1JlZ2lvblJ1bGUKIE5ldmVyIGZvdW5kIFdlYktp
dENTU1RyYW5zZm9ybVZhbHVlCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvZmFzdC9q
cy9jb25zdHJ1Y3Rvci1sZW5ndGgtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL3BsYXRmb3JtL2d0ay9mYXN0L2pzL2NvbnN0cnVjdG9yLWxlbmd0aC1leHBlY3RlZC50eHQJ
KHJldmlzaW9uIDEwODk3NykKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9mYXN0L2pzL2Nv
bnN0cnVjdG9yLWxlbmd0aC1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTcsNyArNyw2
IEBAIFBBU1MgQmVmb3JlTG9hZEV2ZW50Lmxlbmd0aCBpcyAyCiBQQVNTIENsb3NlRXZlbnQubGVu
Z3RoIGlzIDIKIFBBU1MgQ3VzdG9tRXZlbnQubGVuZ3RoIGlzIDIKIFBBU1MgRE9NUGFyc2VyLmxl
bmd0aCBpcyAwCi1GQUlMIERPTVVSTC5sZW5ndGggc2hvdWxkIGJlIDAuIFRocmV3IGV4Y2VwdGlv
biBSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogRE9NVVJMCiBQQVNTIEVycm9y
RXZlbnQubGVuZ3RoIGlzIDIKIFBBU1MgRXZlbnQubGVuZ3RoIGlzIDIKIFBBU1MgRXZlbnRTb3Vy
Y2UubGVuZ3RoIGlzIDEKQEAgLTM1LDYgKzM0LDcgQEAgUEFTUyBXZWJLaXRCbG9iQnVpbGRlci5s
ZW5ndGggaXMgMAogUEFTUyBXZWJLaXRDU1NNYXRyaXgubGVuZ3RoIGlzIDEKIFBBU1MgV2ViS2l0
VHJhbnNpdGlvbkV2ZW50Lmxlbmd0aCBpcyAyCiBQQVNTIFdvcmtlci5sZW5ndGggaXMgMQorUEFT
UyB3ZWJraXRVUkwubGVuZ3RoIGlzIDAKIFBBU1MgWE1MSHR0cFJlcXVlc3QubGVuZ3RoIGlzIDAK
IFBBU1MgWE1MU2VyaWFsaXplci5sZW5ndGggaXMgMAogUEFTUyBYUGF0aEV2YWx1YXRvci5sZW5n
dGggaXMgMApJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2Zhc3QvanMvZ2xvYmFsLWNv
bnN0cnVjdG9ycy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZv
cm0vZ3RrL2Zhc3QvanMvZ2xvYmFsLWNvbnN0cnVjdG9ycy1leHBlY3RlZC50eHQJKHJldmlzaW9u
IDEwODk3MykKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9mYXN0L2pzL2dsb2JhbC1jb25z
dHJ1Y3RvcnMtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0zMzUsNyArMzM1LDcgQEAg
UEFTUyBYUGF0aEV4Y2VwdGlvbi50b1N0cmluZygpIGlzICdbb2JqZQogUEFTUyBYUGF0aFJlc3Vs
dC50b1N0cmluZygpIGlzICdbb2JqZWN0IFhQYXRoUmVzdWx0Q29uc3RydWN0b3JdJwogUEFTUyBY
U0xUUHJvY2Vzc29yLnRvU3RyaW5nKCkgaXMgJ1tvYmplY3QgWFNMVFByb2Nlc3NvckNvbnN0cnVj
dG9yXScKIEZBSUwgd2Via2l0UGVlckNvbm5lY3Rpb24udG9TdHJpbmcoKSBzaG91bGQgYmUgW29i
amVjdCB3ZWJraXRQZWVyQ29ubmVjdGlvbkNvbnN0cnVjdG9yXS4gV2FzIFtvYmplY3QgUGVlckNv
bm5lY3Rpb25Db25zdHJ1Y3Rvcl0uCi1GQUlMIHdlYmtpdFVSTC50b1N0cmluZygpIHNob3VsZCBi
ZSBbb2JqZWN0IHdlYmtpdFVSTENvbnN0cnVjdG9yXS4gV2FzIFtvYmplY3QgRE9NVVJMQ29uc3Ry
dWN0b3JdLgorRkFJTCB3ZWJraXRVUkwudG9TdHJpbmcoKSBzaG91bGQgYmUgW29iamVjdCB3ZWJr
aXRVUkxDb25zdHJ1Y3Rvcl0uIFdhcyBbb2JqZWN0IFVSTENvbnN0cnVjdG9yXS4KIFBBU1Mgc3Vj
Y2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpJbmRleDogTGF5b3V0VGVz
dHMvcGxhdGZvcm0vbWFjL2Zhc3QvZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS0yLWV4cGVjdGVk
LnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9kb20vcHJv
dG90eXBlLWluaGVyaXRhbmNlLTItZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAxMDg5NzMpCisrKyBM
YXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNlLTIt
ZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0yNDUsNyArMjQ1LDYgQEAgTmV2ZXIgZm91
bmQgQ2xpcGJvYXJkCiBOZXZlciBmb3VuZCBET01QYXJzZXIKIE5ldmVyIGZvdW5kIERPTVNldHRh
YmxlVG9rZW5MaXN0CiBOZXZlciBmb3VuZCBET01TdHJpbmdMaXN0Ci1OZXZlciBmb3VuZCBET01V
UkwKIE5ldmVyIGZvdW5kIERvY3VtZW50CiBOZXZlciBmb3VuZCBEb2N1bWVudEZyYWdtZW50CiBO
ZXZlciBmb3VuZCBEb2N1bWVudFR5cGUKQEAgLTQ1NCw2ICs0NTMsNyBAQCBOZXZlciBmb3VuZCBU
ZXh0TWV0cmljcwogTmV2ZXIgZm91bmQgVGV4dFRyYWNrQ3VlCiBOZXZlciBmb3VuZCBUZXh0VHJh
Y2tDdWVMaXN0CiBOZXZlciBmb3VuZCBXZWJLaXRDU1NGaWx0ZXJWYWx1ZQorTmV2ZXIgZm91bmQg
VVJMCiBOZXZlciBmb3VuZCBXZWJLaXRDU1NNYXRyaXgKIE5ldmVyIGZvdW5kIFdlYktpdENTU1Jl
Z2lvblJ1bGUKIE5ldmVyIGZvdW5kIFdlYktpdENTU1RyYW5zZm9ybVZhbHVlCkluZGV4OiBMYXlv
dXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9qcy9jb25zdHJ1Y3Rvci1sZW5ndGgtZXhwZWN0ZWQu
dHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2pzL2NvbnN0
cnVjdG9yLWxlbmd0aC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDEwODk3MykKKysrIExheW91dFRl
c3RzL3BsYXRmb3JtL21hYy9mYXN0L2pzL2NvbnN0cnVjdG9yLWxlbmd0aC1leHBlY3RlZC50eHQJ
KHdvcmtpbmcgY29weSkKQEAgLTcsNyArNyw2IEBAIFBBU1MgQmVmb3JlTG9hZEV2ZW50Lmxlbmd0
aCBpcyAyCiBQQVNTIENsb3NlRXZlbnQubGVuZ3RoIGlzIDIKIFBBU1MgQ3VzdG9tRXZlbnQubGVu
Z3RoIGlzIDIKIFBBU1MgRE9NUGFyc2VyLmxlbmd0aCBpcyAwCi1GQUlMIERPTVVSTC5sZW5ndGgg
c2hvdWxkIGJlIDAuIFRocmV3IGV4Y2VwdGlvbiBSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2
YXJpYWJsZTogRE9NVVJMCiBQQVNTIEVycm9yRXZlbnQubGVuZ3RoIGlzIDIKIFBBU1MgRXZlbnQu
bGVuZ3RoIGlzIDIKIFBBU1MgRXZlbnRTb3VyY2UubGVuZ3RoIGlzIDEKQEAgLTM1LDYgKzM0LDcg
QEAgUEFTUyBXZWJLaXRCbG9iQnVpbGRlci5sZW5ndGggaXMgMAogUEFTUyBXZWJLaXRDU1NNYXRy
aXgubGVuZ3RoIGlzIDEKIFBBU1MgV2ViS2l0VHJhbnNpdGlvbkV2ZW50Lmxlbmd0aCBpcyAyCiBQ
QVNTIFdvcmtlci5sZW5ndGggaXMgMQorUEFTUyB3ZWJraXRVUkwubGVuZ3RoIGlzIDAKIFBBU1Mg
WE1MSHR0cFJlcXVlc3QubGVuZ3RoIGlzIDAKIFBBU1MgWE1MU2VyaWFsaXplci5sZW5ndGggaXMg
MAogUEFTUyBYUGF0aEV2YWx1YXRvci5sZW5ndGggaXMgMApJbmRleDogTGF5b3V0VGVzdHMvcGxh
dGZvcm0vbWFjL2Zhc3QvanMvZ2xvYmFsLWNvbnN0cnVjdG9ycy1leHBlY3RlZC50eHQKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvanMvZ2xvYmFsLWNvbnN0cnVj
dG9ycy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDEwODk3MykKKysrIExheW91dFRlc3RzL3BsYXRm
b3JtL21hYy9mYXN0L2pzL2dsb2JhbC1jb25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0CSh3b3JraW5n
IGNvcHkpCkBAIC0zMzcsNyArMzM3LDcgQEAgUEFTUyBYUGF0aFJlc3VsdC50b1N0cmluZygpIGlz
ICdbb2JqZWN0CiBQQVNTIFhTTFRQcm9jZXNzb3IudG9TdHJpbmcoKSBpcyAnW29iamVjdCBYU0xU
UHJvY2Vzc29yQ29uc3RydWN0b3JdJwogRkFJTCB3ZWJraXRBdWRpb0NvbnRleHQudG9TdHJpbmco
KSBzaG91bGQgYmUgW29iamVjdCB3ZWJraXRBdWRpb0NvbnRleHRDb25zdHJ1Y3Rvcl0uIFdhcyBb
b2JqZWN0IEF1ZGlvQ29udGV4dENvbnN0cnVjdG9yXS4KIEZBSUwgd2Via2l0QXVkaW9QYW5uZXJO
b2RlLnRvU3RyaW5nKCkgc2hvdWxkIGJlIFtvYmplY3Qgd2Via2l0QXVkaW9QYW5uZXJOb2RlQ29u
c3RydWN0b3JdLiBXYXMgW29iamVjdCBBdWRpb1Bhbm5lck5vZGVDb25zdHJ1Y3Rvcl0uCi1GQUlM
IHdlYmtpdFVSTC50b1N0cmluZygpIHNob3VsZCBiZSBbb2JqZWN0IHdlYmtpdFVSTENvbnN0cnVj
dG9yXS4gV2FzIFtvYmplY3QgRE9NVVJMQ29uc3RydWN0b3JdLgorRkFJTCB3ZWJraXRVUkwudG9T
dHJpbmcoKSBzaG91bGQgYmUgW29iamVjdCB3ZWJraXRVUkxDb25zdHJ1Y3Rvcl0uIFdhcyBbb2Jq
ZWN0IFVSTENvbnN0cnVjdG9yXS4KIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAog
VEVTVCBDT01QTEVURQpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvZmFzdC9kb20vcHJv
dG90eXBlLWluaGVyaXRhbmNlLTItZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL3BsYXRmb3JtL3F0L2Zhc3QvZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS0yLWV4cGVjdGVk
LnR4dAkocmV2aXNpb24gMTA4OTczKQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvZmFzdC9k
b20vcHJvdG90eXBlLWluaGVyaXRhbmNlLTItZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBA
IC0yNDIsNyArMjQyLDYgQEAgTmV2ZXIgZm91bmQgQ2xpcGJvYXJkCiBOZXZlciBmb3VuZCBET01Q
YXJzZXIKIE5ldmVyIGZvdW5kIERPTVNldHRhYmxlVG9rZW5MaXN0CiBOZXZlciBmb3VuZCBET01T
dHJpbmdMaXN0Ci1OZXZlciBmb3VuZCBET01VUkwKIE5ldmVyIGZvdW5kIERvY3VtZW50CiBOZXZl
ciBmb3VuZCBEb2N1bWVudEZyYWdtZW50CiBOZXZlciBmb3VuZCBEb2N1bWVudFR5cGUKQEAgLTQz
NCw2ICs0MzMsNyBAQCBOZXZlciBmb3VuZCBTaGFyZWRXb3JrZXIKIE5ldmVyIGZvdW5kIFN0eWxl
U2hlZXQKIE5ldmVyIGZvdW5kIFRleHRNZXRyaWNzCiBOZXZlciBmb3VuZCBXZWJLaXRDU1NGaWx0
ZXJWYWx1ZQorTmV2ZXIgZm91bmQgVVJMCiBOZXZlciBmb3VuZCBXZWJLaXRDU1NNYXRyaXgKIE5l
dmVyIGZvdW5kIFdlYktpdENTU1JlZ2lvblJ1bGUKIE5ldmVyIGZvdW5kIFdlYktpdENTU1RyYW5z
Zm9ybVZhbHVlCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9mYXN0L2pzL2dsb2JhbC1j
b25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRm
b3JtL3F0L2Zhc3QvanMvZ2xvYmFsLWNvbnN0cnVjdG9ycy1leHBlY3RlZC50eHQJKHJldmlzaW9u
IDEwODk3MykKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL3F0L2Zhc3QvanMvZ2xvYmFsLWNvbnN0
cnVjdG9ycy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTMxNiw3ICszMTYsNyBAQCBQ
QVNTIFhQYXRoRXZhbHVhdG9yLnRvU3RyaW5nKCkgaXMgJ1tvYmplCiBQQVNTIFhQYXRoRXhjZXB0
aW9uLnRvU3RyaW5nKCkgaXMgJ1tvYmplY3QgWFBhdGhFeGNlcHRpb25Db25zdHJ1Y3Rvcl0nCiBQ
QVNTIFhQYXRoUmVzdWx0LnRvU3RyaW5nKCkgaXMgJ1tvYmplY3QgWFBhdGhSZXN1bHRDb25zdHJ1
Y3Rvcl0nCiBQQVNTIFhTTFRQcm9jZXNzb3IudG9TdHJpbmcoKSBpcyAnW29iamVjdCBYU0xUUHJv
Y2Vzc29yQ29uc3RydWN0b3JdJwotRkFJTCB3ZWJraXRVUkwudG9TdHJpbmcoKSBzaG91bGQgYmUg
W29iamVjdCB3ZWJraXRVUkxDb25zdHJ1Y3Rvcl0uIFdhcyBbb2JqZWN0IERPTVVSTENvbnN0cnVj
dG9yXS4KK0ZBSUwgd2Via2l0VVJMLnRvU3RyaW5nKCkgc2hvdWxkIGJlIFtvYmplY3Qgd2Via2l0
VVJMQ29uc3RydWN0b3JdLiBXYXMgW29iamVjdCBVUkxDb25zdHJ1Y3Rvcl0uCiBQQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUK
</data>
<flag name="review"
          id="131537"
          type_id="1"
          status="+"
          setter="abarth"
    />
    <flag name="commit-queue"
          id="131538"
          type_id="3"
          status="-"
          setter="webkit.review.bot"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>129841</attachid>
            <date>2012-03-02 00:54:34 -0800</date>
            <delta_ts>2012-03-02 07:15:05 -0800</delta_ts>
            <desc>Rebaseline Patch</desc>
            <filename>78214.patch</filename>
            <type>text/plain</type>
            <size>11470</size>
            <attacher name="Kaustubh Atrawalkar">kaustubh.ra</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwOTUyNCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDEyLTAzLTAyICBLYXVzdHVi
aCBBdHJhd2Fsa2FyICA8a2F1c3R1YmhAbW90b3JvbGEuY29tPgorCisgICAgICAgIFJlbmFtZSBE
T01VUkwgdG8gVVJMIGluIHRoZSBiaW5kaW5ncworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzgyMTQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHMuIEludGVyZmFjZSBuYW1lIGNoYW5nZS4K
KworICAgICAgICAqIGh0bWwvRE9NVVJMLmlkbDogQWRkZWQgSW50ZXJmYWNlTmFtZSBhdHRyaWJ1
dGUgdG8gRE9NVVJMLgorCiAyMDEyLTAzLTAyICBKb2huIEJhdW1hbiAgPGpiYXVtYW5AY2hyb21p
dW0ub3JnPgogCiAgICAgICAgIFtjaHJvbWl1bV0gU2VuZCBkaWRDb21taXRBbmREcmF3RnJhbWUg
YWZ0ZXIgc3dhcApJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9ET01VUkwuaWRsCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvRE9NVVJMLmlkbAkocmV2aXNpb24gMTA5NTI0KQor
KysgU291cmNlL1dlYkNvcmUvaHRtbC9ET01VUkwuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0zMCw3
ICszMCw4IEBAIG1vZHVsZSBodG1sIHsKICAgICAgICAgQ29uc3RydWN0b3IsCiAgICAgICAgIEpT
R2VuZXJhdGVUb05hdGl2ZU9iamVjdCwKICAgICAgICAgSlNHZW5lcmF0ZVRvSlNPYmplY3QsCi0g
ICAgICAgIEpTTm9TdGF0aWNUYWJsZXMKKyAgICAgICAgSlNOb1N0YXRpY1RhYmxlcywKKyAgICAg
ICAgSW50ZXJmYWNlTmFtZT1VUkwKICAgICBdIERPTVVSTCB7CiAjaWYgZGVmaW5lZChFTkFCTEVf
TUVESUFfU1RSRUFNKSAmJiBFTkFCTEVfTUVESUFfU1RSRUFNCiAgICAgICAgIFtDYWxsV2l0aD1T
Y3JpcHRFeGVjdXRpb25Db250ZXh0LFRyZWF0UmV0dXJuZWROdWxsU3RyaW5nQXM9VW5kZWZpbmVk
XSBzdGF0aWMgRE9NU3RyaW5nIGNyZWF0ZU9iamVjdFVSTChpbiBNZWRpYVN0cmVhbSBzdHJlYW0p
OwpJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L0NoYW5nZUxvZwkocmV2aXNpb24gMTA5NTI0KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3
b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjIgQEAKKzIwMTItMDMtMDIgIEthdXN0dWJoIEF0cmF3
YWxrYXIgIDxrYXVzdHViaEBtb3Rvcm9sYS5jb20+CisKKyAgICAgICAgUmVuYW1lIERPTVVSTCB0
byBVUkwgaW4gdGhlIGJpbmRpbmdzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD03ODIxNAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogZmFzdC9maWxlcy9kb211cmwtc2NyaXB0LWV4ZWN1dGlvbi1jb250ZXh0
LWNyYXNoLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2ZpbGVzL2RvbXVybC1zY3JpcHQt
ZXhlY3V0aW9uLWNvbnRleHQtY3Jhc2guaHRtbDoKKyAgICAgICAgKiBmYXN0L2pzL2NvbnN0cnVj
dG9yLWxlbmd0aC5odG1sOgorICAgICAgICAqIHBsYXRmb3JtL2d0ay9mYXN0L2RvbS9wcm90b3R5
cGUtaW5oZXJpdGFuY2UtMi1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vZ3RrL2Zh
c3QvanMvY29uc3RydWN0b3ItbGVuZ3RoLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9y
bS9ndGsvZmFzdC9qcy9nbG9iYWwtY29uc3RydWN0b3JzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiBwbGF0Zm9ybS9tYWMvZmFzdC9kb20vcHJvdG90eXBlLWluaGVyaXRhbmNlLTItZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHBsYXRmb3JtL21hYy9mYXN0L2pzL2NvbnN0cnVjdG9yLWxlbmd0aC1l
eHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vbWFjL2Zhc3QvanMvZ2xvYmFsLWNvbnN0
cnVjdG9ycy1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vcXQvZmFzdC9kb20vcHJv
dG90eXBlLWluaGVyaXRhbmNlLTItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBsYXRmb3JtL3F0
L2Zhc3QvanMvZ2xvYmFsLWNvbnN0cnVjdG9ycy1leHBlY3RlZC50eHQ6CisKIDIwMTItMDMtMDIg
IE1pa2UgTGF3dGhlciAgPG1pa2VsYXd0aGVyQGNocm9taXVtLm9yZz4KIAogICAgICAgICByZWZs
ZWN0aW9uIGNvbXB1dGVkIHN0eWxlIHRlc3QgZm9yIENTUzMgY2FsYwpJbmRleDogTGF5b3V0VGVz
dHMvZmFzdC9maWxlcy9kb211cmwtc2NyaXB0LWV4ZWN1dGlvbi1jb250ZXh0LWNyYXNoLWV4cGVj
dGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2ZpbGVzL2RvbXVybC1zY3Jp
cHQtZXhlY3V0aW9uLWNvbnRleHQtY3Jhc2gtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAxMDk1MjQp
CisrKyBMYXlvdXRUZXN0cy9mYXN0L2ZpbGVzL2RvbXVybC1zY3JpcHQtZXhlY3V0aW9uLWNvbnRl
eHQtY3Jhc2gtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xICsxIEBACi1QQVNTOiBu
dWxsIHNlY3VyaXR5IGNvbnRleHQgZm9yIERPTVVSTCBkaWQgbm90IGNyYXNoCitQQVNTOiBudWxs
IHNlY3VyaXR5IGNvbnRleHQgZm9yIFVSTCBkaWQgbm90IGNyYXNoCkluZGV4OiBMYXlvdXRUZXN0
cy9mYXN0L2ZpbGVzL2RvbXVybC1zY3JpcHQtZXhlY3V0aW9uLWNvbnRleHQtY3Jhc2guaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2ZpbGVzL2RvbXVybC1zY3JpcHQtZXhlY3V0
aW9uLWNvbnRleHQtY3Jhc2guaHRtbAkocmV2aXNpb24gMTA5NTI0KQorKysgTGF5b3V0VGVzdHMv
ZmFzdC9maWxlcy9kb211cmwtc2NyaXB0LWV4ZWN1dGlvbi1jb250ZXh0LWNyYXNoLmh0bWwJKHdv
cmtpbmcgY29weSkKQEAgLTUsNyArNSw3IEBAIGZ1bmN0aW9uIGNyYXNoKCkKICAgICB0cnkgewog
ICAgICAgICBlLmFwcGx5KHcsIFsnd2Via2l0VVJMJ10pOwogICAgIH0gY2F0Y2ggKGV4KSB7IH0K
LSAgICBkb2N1bWVudC5ib2R5LmlubmVySFRNTCA9ICJQQVNTOiBudWxsIHNlY3VyaXR5IGNvbnRl
eHQgZm9yIERPTVVSTCBkaWQgbm90IGNyYXNoIjsKKyAgICBkb2N1bWVudC5ib2R5LmlubmVySFRN
TCA9ICJQQVNTOiBudWxsIHNlY3VyaXR5IGNvbnRleHQgZm9yIFVSTCBkaWQgbm90IGNyYXNoIjsK
ICAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQogICAgICAgICBsYXlvdXRUZXN0
Q29udHJvbGxlci5ub3RpZnlEb25lKCk7CiB9CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2pzL2Nv
bnN0cnVjdG9yLWxlbmd0aC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvanMv
Y29uc3RydWN0b3ItbGVuZ3RoLmh0bWwJKHJldmlzaW9uIDEwOTUyNCkKKysrIExheW91dFRlc3Rz
L2Zhc3QvanMvY29uc3RydWN0b3ItbGVuZ3RoLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE0LDcg
KzE0LDYgQEAgc2hvdWxkQmUoJ0Nsb3NlRXZlbnQubGVuZ3RoJywgJzInKTsKIHNob3VsZEJlKCdD
dXN0b21FdmVudC5sZW5ndGgnLCAnMicpOwogc2hvdWxkQmUoJ0RPTUZvcm1EYXRhLmxlbmd0aCcs
ICcwJyk7CiBzaG91bGRCZSgnRE9NUGFyc2VyLmxlbmd0aCcsICcwJyk7Ci1zaG91bGRCZSgnRE9N
VVJMLmxlbmd0aCcsICcwJyk7CiBzaG91bGRCZSgnRGF0YVZpZXcubGVuZ3RoJywgJzMnKTsKIHNo
b3VsZEJlKCdFcnJvckV2ZW50Lmxlbmd0aCcsICcyJyk7CiBzaG91bGRCZSgnRXZlbnQubGVuZ3Ro
JywgJzInKTsKQEAgLTU1LDYgKzU0LDcgQEAgc2hvdWxkQmUoJ1dlYktpdFBvaW50Lmxlbmd0aCcs
ICcyJyk7CiBzaG91bGRCZSgnV2ViS2l0VHJhbnNpdGlvbkV2ZW50Lmxlbmd0aCcsICcyJyk7CiBz
aG91bGRCZSgnV2ViU29ja2V0Lmxlbmd0aCcsICcxJyk7CiBzaG91bGRCZSgnV29ya2VyLmxlbmd0
aCcsICcxJyk7CitzaG91bGRCZSgnd2Via2l0VVJMLmxlbmd0aCcsICcwJyk7CiBzaG91bGRCZSgn
WE1MSHR0cFJlcXVlc3QubGVuZ3RoJywgJzAnKTsKIHNob3VsZEJlKCdYTUxTZXJpYWxpemVyLmxl
bmd0aCcsICcwJyk7CiBzaG91bGRCZSgnWFBhdGhFdmFsdWF0b3IubGVuZ3RoJywgJzAnKTsKSW5k
ZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9mYXN0L2RvbS9wcm90b3R5cGUtaW5oZXJpdGFu
Y2UtMi1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3Rr
L2Zhc3QvZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS0yLWV4cGVjdGVkLnR4dAkocmV2aXNpb24g
MTA5NTI0KQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2Zhc3QvZG9tL3Byb3RvdHlwZS1p
bmhlcml0YW5jZS0yLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMjQyLDcgKzI0Miw2
IEBAIE5ldmVyIGZvdW5kIENsaXBib2FyZAogTmV2ZXIgZm91bmQgRE9NUGFyc2VyCiBOZXZlciBm
b3VuZCBET01TZXR0YWJsZVRva2VuTGlzdAogTmV2ZXIgZm91bmQgRE9NU3RyaW5nTGlzdAotTmV2
ZXIgZm91bmQgRE9NVVJMCiBOZXZlciBmb3VuZCBEb2N1bWVudAogTmV2ZXIgZm91bmQgRG9jdW1l
bnRGcmFnbWVudAogTmV2ZXIgZm91bmQgRG9jdW1lbnRUeXBlCkBAIC00NTIsNiArNDUxLDcgQEAg
TmV2ZXIgZm91bmQgVGV4dE1ldHJpY3MKIE5ldmVyIGZvdW5kIFRleHRUcmFja0N1ZQogTmV2ZXIg
Zm91bmQgVGV4dFRyYWNrQ3VlTGlzdAogTmV2ZXIgZm91bmQgVGV4dFRyYWNrTGlzdAorTmV2ZXIg
Zm91bmQgVVJMCiBOZXZlciBmb3VuZCBXZWJLaXRDU1NNYXRyaXgKIE5ldmVyIGZvdW5kIFdlYktp
dENTU1JlZ2lvblJ1bGUKIE5ldmVyIGZvdW5kIFdlYktpdENTU1RyYW5zZm9ybVZhbHVlCkluZGV4
OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvZmFzdC9qcy9jb25zdHJ1Y3Rvci1sZW5ndGgtZXhw
ZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9mYXN0L2pz
L2NvbnN0cnVjdG9yLWxlbmd0aC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDEwOTUyNCkKKysrIExh
eW91dFRlc3RzL3BsYXRmb3JtL2d0ay9mYXN0L2pzL2NvbnN0cnVjdG9yLWxlbmd0aC1leHBlY3Rl
ZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEwLDcgKzEwLDYgQEAgUEFTUyBDbG9zZUV2ZW50Lmxl
bmd0aCBpcyAyCiBQQVNTIEN1c3RvbUV2ZW50Lmxlbmd0aCBpcyAyCiBGQUlMIERPTUZvcm1EYXRh
Lmxlbmd0aCBzaG91bGQgYmUgMC4gVGhyZXcgZXhjZXB0aW9uIFJlZmVyZW5jZUVycm9yOiBDYW4n
dCBmaW5kIHZhcmlhYmxlOiBET01Gb3JtRGF0YQogUEFTUyBET01QYXJzZXIubGVuZ3RoIGlzIDAK
LUZBSUwgRE9NVVJMLmxlbmd0aCBzaG91bGQgYmUgMC4gVGhyZXcgZXhjZXB0aW9uIFJlZmVyZW5j
ZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBET01VUkwKIFBBU1MgRGF0YVZpZXcubGVuZ3Ro
IGlzIDMKIFBBU1MgRXJyb3JFdmVudC5sZW5ndGggaXMgMgogUEFTUyBFdmVudC5sZW5ndGggaXMg
MgpAQCAtNTEsNiArNTAsNyBAQCBQQVNTIFdlYktpdFBvaW50Lmxlbmd0aCBpcyAyCiBQQVNTIFdl
YktpdFRyYW5zaXRpb25FdmVudC5sZW5ndGggaXMgMgogUEFTUyBXZWJTb2NrZXQubGVuZ3RoIGlz
IDEKIFBBU1MgV29ya2VyLmxlbmd0aCBpcyAxCitQQVNTIHdlYmtpdFVSTC5sZW5ndGggaXMgMAog
UEFTUyBYTUxIdHRwUmVxdWVzdC5sZW5ndGggaXMgMAogUEFTUyBYTUxTZXJpYWxpemVyLmxlbmd0
aCBpcyAwCiBQQVNTIFhQYXRoRXZhbHVhdG9yLmxlbmd0aCBpcyAwCkluZGV4OiBMYXlvdXRUZXN0
cy9wbGF0Zm9ybS9ndGsvZmFzdC9qcy9nbG9iYWwtY29uc3RydWN0b3JzLWV4cGVjdGVkLnR4dAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvZmFzdC9qcy9nbG9iYWwtY29u
c3RydWN0b3JzLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMTA5NTI0KQorKysgTGF5b3V0VGVzdHMv
cGxhdGZvcm0vZ3RrL2Zhc3QvanMvZ2xvYmFsLWNvbnN0cnVjdG9ycy1leHBlY3RlZC50eHQJKHdv
cmtpbmcgY29weSkKQEAgLTMzNiw3ICszMzYsNyBAQCBQQVNTIFhQYXRoRXhjZXB0aW9uLnRvU3Ry
aW5nKCkgaXMgJ1tvYmplCiBQQVNTIFhQYXRoUmVzdWx0LnRvU3RyaW5nKCkgaXMgJ1tvYmplY3Qg
WFBhdGhSZXN1bHRDb25zdHJ1Y3Rvcl0nCiBQQVNTIFhTTFRQcm9jZXNzb3IudG9TdHJpbmcoKSBp
cyAnW29iamVjdCBYU0xUUHJvY2Vzc29yQ29uc3RydWN0b3JdJwogRkFJTCB3ZWJraXRQZWVyQ29u
bmVjdGlvbi50b1N0cmluZygpIHNob3VsZCBiZSBbb2JqZWN0IHdlYmtpdFBlZXJDb25uZWN0aW9u
Q29uc3RydWN0b3JdLiBXYXMgW29iamVjdCBQZWVyQ29ubmVjdGlvbkNvbnN0cnVjdG9yXS4KLUZB
SUwgd2Via2l0VVJMLnRvU3RyaW5nKCkgc2hvdWxkIGJlIFtvYmplY3Qgd2Via2l0VVJMQ29uc3Ry
dWN0b3JdLiBXYXMgW29iamVjdCBET01VUkxDb25zdHJ1Y3Rvcl0uCitGQUlMIHdlYmtpdFVSTC50
b1N0cmluZygpIHNob3VsZCBiZSBbb2JqZWN0IHdlYmtpdFVSTENvbnN0cnVjdG9yXS4gV2FzIFtv
YmplY3QgVVJMQ29uc3RydWN0b3JdLgogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQog
CiBURVNUIENPTVBMRVRFCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9kb20v
cHJvdG90eXBlLWluaGVyaXRhbmNlLTItZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2RvbS9wcm90b3R5cGUtaW5oZXJpdGFuY2UtMi1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDEwOTUyNCkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9m
YXN0L2RvbS9wcm90b3R5cGUtaW5oZXJpdGFuY2UtMi1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29w
eSkKQEAgLTI0NSw3ICsyNDUsNiBAQCBOZXZlciBmb3VuZCBDbGlwYm9hcmQKIE5ldmVyIGZvdW5k
IERPTVBhcnNlcgogTmV2ZXIgZm91bmQgRE9NU2V0dGFibGVUb2tlbkxpc3QKIE5ldmVyIGZvdW5k
IERPTVN0cmluZ0xpc3QKLU5ldmVyIGZvdW5kIERPTVVSTAogTmV2ZXIgZm91bmQgRG9jdW1lbnQK
IE5ldmVyIGZvdW5kIERvY3VtZW50RnJhZ21lbnQKIE5ldmVyIGZvdW5kIERvY3VtZW50VHlwZQpA
QCAtNDU0LDYgKzQ1Myw3IEBAIE5ldmVyIGZvdW5kIFRleHRNZXRyaWNzCiBOZXZlciBmb3VuZCBU
ZXh0VHJhY2tDdWUKIE5ldmVyIGZvdW5kIFRleHRUcmFja0N1ZUxpc3QKIE5ldmVyIGZvdW5kIFdl
YktpdENTU0ZpbHRlclZhbHVlCitOZXZlciBmb3VuZCBVUkwKIE5ldmVyIGZvdW5kIFdlYktpdENT
U01hdHJpeAogTmV2ZXIgZm91bmQgV2ViS2l0Q1NTUmVnaW9uUnVsZQogTmV2ZXIgZm91bmQgV2Vi
S2l0Q1NTVHJhbnNmb3JtVmFsdWUKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0
L2pzL2NvbnN0cnVjdG9yLWxlbmd0aC1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvanMvY29uc3RydWN0b3ItbGVuZ3RoLWV4cGVjdGVkLnR4
dAkocmV2aXNpb24gMTA5NTI0KQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvanMv
Y29uc3RydWN0b3ItbGVuZ3RoLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMTAsNyAr
MTAsNiBAQCBQQVNTIENsb3NlRXZlbnQubGVuZ3RoIGlzIDIKIFBBU1MgQ3VzdG9tRXZlbnQubGVu
Z3RoIGlzIDIKIEZBSUwgRE9NRm9ybURhdGEubGVuZ3RoIHNob3VsZCBiZSAwLiBUaHJldyBleGNl
cHRpb24gUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IERPTUZvcm1EYXRhCiBQ
QVNTIERPTVBhcnNlci5sZW5ndGggaXMgMAotRkFJTCBET01VUkwubGVuZ3RoIHNob3VsZCBiZSAw
LiBUaHJldyBleGNlcHRpb24gUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IERP
TVVSTAogUEFTUyBEYXRhVmlldy5sZW5ndGggaXMgMwogUEFTUyBFcnJvckV2ZW50Lmxlbmd0aCBp
cyAyCiBQQVNTIEV2ZW50Lmxlbmd0aCBpcyAyCkBAIC01MSw2ICs1MCw3IEBAIFBBU1MgV2ViS2l0
UG9pbnQubGVuZ3RoIGlzIDIKIFBBU1MgV2ViS2l0VHJhbnNpdGlvbkV2ZW50Lmxlbmd0aCBpcyAy
CiBQQVNTIFdlYlNvY2tldC5sZW5ndGggaXMgMQogUEFTUyBXb3JrZXIubGVuZ3RoIGlzIDEKK1BB
U1Mgd2Via2l0VVJMLmxlbmd0aCBpcyAwCiBQQVNTIFhNTEh0dHBSZXF1ZXN0Lmxlbmd0aCBpcyAw
CiBQQVNTIFhNTFNlcmlhbGl6ZXIubGVuZ3RoIGlzIDAKIFBBU1MgWFBhdGhFdmFsdWF0b3IubGVu
Z3RoIGlzIDAKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2pzL2dsb2JhbC1j
b25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRm
b3JtL21hYy9mYXN0L2pzL2dsb2JhbC1jb25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0CShyZXZpc2lv
biAxMDk1MjQpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9qcy9nbG9iYWwtY29u
c3RydWN0b3JzLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMzM3LDcgKzMzNyw3IEBA
IFBBU1MgWFBhdGhSZXN1bHQudG9TdHJpbmcoKSBpcyAnW29iamVjdAogUEFTUyBYU0xUUHJvY2Vz
c29yLnRvU3RyaW5nKCkgaXMgJ1tvYmplY3QgWFNMVFByb2Nlc3NvckNvbnN0cnVjdG9yXScKIEZB
SUwgd2Via2l0QXVkaW9Db250ZXh0LnRvU3RyaW5nKCkgc2hvdWxkIGJlIFtvYmplY3Qgd2Via2l0
QXVkaW9Db250ZXh0Q29uc3RydWN0b3JdLiBXYXMgW29iamVjdCBBdWRpb0NvbnRleHRDb25zdHJ1
Y3Rvcl0uCiBGQUlMIHdlYmtpdEF1ZGlvUGFubmVyTm9kZS50b1N0cmluZygpIHNob3VsZCBiZSBb
b2JqZWN0IHdlYmtpdEF1ZGlvUGFubmVyTm9kZUNvbnN0cnVjdG9yXS4gV2FzIFtvYmplY3QgQXVk
aW9QYW5uZXJOb2RlQ29uc3RydWN0b3JdLgotRkFJTCB3ZWJraXRVUkwudG9TdHJpbmcoKSBzaG91
bGQgYmUgW29iamVjdCB3ZWJraXRVUkxDb25zdHJ1Y3Rvcl0uIFdhcyBbb2JqZWN0IERPTVVSTENv
bnN0cnVjdG9yXS4KK0ZBSUwgd2Via2l0VVJMLnRvU3RyaW5nKCkgc2hvdWxkIGJlIFtvYmplY3Qg
d2Via2l0VVJMQ29uc3RydWN0b3JdLiBXYXMgW29iamVjdCBVUkxDb25zdHJ1Y3Rvcl0uCiBQQVNT
IHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKSW5kZXg6IExheW91
dFRlc3RzL3BsYXRmb3JtL3F0L2Zhc3QvZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS0yLWV4cGVj
dGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9mYXN0L2RvbS9w
cm90b3R5cGUtaW5oZXJpdGFuY2UtMi1leHBlY3RlZC50eHQJKHJldmlzaW9uIDEwOTUyNCkKKysr
IExheW91dFRlc3RzL3BsYXRmb3JtL3F0L2Zhc3QvZG9tL3Byb3RvdHlwZS1pbmhlcml0YW5jZS0y
LWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMjQyLDcgKzI0Miw2IEBAIE5ldmVyIGZv
dW5kIENsaXBib2FyZAogTmV2ZXIgZm91bmQgRE9NUGFyc2VyCiBOZXZlciBmb3VuZCBET01TZXR0
YWJsZVRva2VuTGlzdAogTmV2ZXIgZm91bmQgRE9NU3RyaW5nTGlzdAotTmV2ZXIgZm91bmQgRE9N
VVJMCiBOZXZlciBmb3VuZCBEb2N1bWVudAogTmV2ZXIgZm91bmQgRG9jdW1lbnRGcmFnbWVudAog
TmV2ZXIgZm91bmQgRG9jdW1lbnRUeXBlCkBAIC00MzQsNiArNDMzLDcgQEAgTmV2ZXIgZm91bmQg
U2hhcmVkV29ya2VyCiBOZXZlciBmb3VuZCBTdHlsZVNoZWV0CiBOZXZlciBmb3VuZCBUZXh0TWV0
cmljcwogTmV2ZXIgZm91bmQgV2ViS2l0Q1NTRmlsdGVyVmFsdWUKK05ldmVyIGZvdW5kIFVSTAog
TmV2ZXIgZm91bmQgV2ViS2l0Q1NTTWF0cml4CiBOZXZlciBmb3VuZCBXZWJLaXRDU1NSZWdpb25S
dWxlCiBOZXZlciBmb3VuZCBXZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZQpJbmRleDogTGF5b3V0VGVz
dHMvcGxhdGZvcm0vcXQvZmFzdC9qcy9nbG9iYWwtY29uc3RydWN0b3JzLWV4cGVjdGVkLnR4dAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9mYXN0L2pzL2dsb2JhbC1jb25z
dHJ1Y3RvcnMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAxMDk1MjQpCisrKyBMYXlvdXRUZXN0cy9w
bGF0Zm9ybS9xdC9mYXN0L2pzL2dsb2JhbC1jb25zdHJ1Y3RvcnMtZXhwZWN0ZWQudHh0CSh3b3Jr
aW5nIGNvcHkpCkBAIC0zMTYsNyArMzE2LDcgQEAgUEFTUyBYUGF0aEV2YWx1YXRvci50b1N0cmlu
ZygpIGlzICdbb2JqZQogUEFTUyBYUGF0aEV4Y2VwdGlvbi50b1N0cmluZygpIGlzICdbb2JqZWN0
IFhQYXRoRXhjZXB0aW9uQ29uc3RydWN0b3JdJwogUEFTUyBYUGF0aFJlc3VsdC50b1N0cmluZygp
IGlzICdbb2JqZWN0IFhQYXRoUmVzdWx0Q29uc3RydWN0b3JdJwogUEFTUyBYU0xUUHJvY2Vzc29y
LnRvU3RyaW5nKCkgaXMgJ1tvYmplY3QgWFNMVFByb2Nlc3NvckNvbnN0cnVjdG9yXScKLUZBSUwg
d2Via2l0VVJMLnRvU3RyaW5nKCkgc2hvdWxkIGJlIFtvYmplY3Qgd2Via2l0VVJMQ29uc3RydWN0
b3JdLiBXYXMgW29iamVjdCBET01VUkxDb25zdHJ1Y3Rvcl0uCitGQUlMIHdlYmtpdFVSTC50b1N0
cmluZygpIHNob3VsZCBiZSBbb2JqZWN0IHdlYmtpdFVSTENvbnN0cnVjdG9yXS4gV2FzIFtvYmpl
Y3QgVVJMQ29uc3RydWN0b3JdLgogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBU
RVNUIENPTVBMRVRFCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>