<?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>60174</bug_id>
          
          <creation_ts>2011-05-04 09:04:26 -0700</creation_ts>
          <short_desc>Fix getUserMedia callback bindings for JSC</short_desc>
          <delta_ts>2011-05-31 06:46:33 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>60394</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="Adam Bergkvist">adam.bergkvist</reporter>
          <assigned_to name="Tommy Widenflycht">tommyw</assigned_to>
          <cc>ap</cc>
    
    <cc>buildbot</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>dglazkov</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>gustavo.noronha</cc>
    
    <cc>gustavo</cc>
    
    <cc>leandrogracia</cc>
    
    <cc>tonyg</cc>
    
    <cc>webkit-ews</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>397951</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Bergkvist">adam.bergkvist</who>
    <bug_when>2011-05-04 09:04:26 -0700</bug_when>
    <thetext>The existing JSC bindings does not work.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>397960</commentid>
    <comment_count>1</comment_count>
      <attachid>92255</attachid>
    <who name="Adam Bergkvist">adam.bergkvist</who>
    <bug_when>2011-05-04 09:19:15 -0700</bug_when>
    <thetext>Created attachment 92255
Proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>397964</commentid>
    <comment_count>2</comment_count>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2011-05-04 09:29:05 -0700</bug_when>
    <thetext>Attachment 92255 did not build on qt:
Build output: http://queues.webkit.org/results/8557559</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>397991</commentid>
    <comment_count>3</comment_count>
    <who name="Build Bot">buildbot</who>
    <bug_when>2011-05-04 09:46:53 -0700</bug_when>
    <thetext>Attachment 92255 did not build on win:
Build output: http://queues.webkit.org/results/8554559</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>398181</commentid>
    <comment_count>4</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-05-04 12:31:27 -0700</bug_when>
    <thetext>&gt; The existing JSC bindings does not work.
+        No new functionality to be tested.

These sentences seem to be contradictory.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>398232</commentid>
    <comment_count>5</comment_count>
    <who name="Collabora GTK+ EWS bot">gustavo.noronha</who>
    <bug_when>2011-05-04 13:58:34 -0700</bug_when>
    <thetext>Attachment 92255 did not build on gtk:
Build output: http://queues.webkit.org/results/8557645</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>398522</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-05-04 21:07:45 -0700</bug_when>
    <thetext>Attachment 92255 did not pass chromium-ews:
Output: http://queues.webkit.org/results/8571290</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>399696</commentid>
    <comment_count>7</comment_count>
    <who name="Adam Bergkvist">adam.bergkvist</who>
    <bug_when>2011-05-06 12:07:21 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; &gt; The existing JSC bindings does not work.
&gt; +        No new functionality to be tested.
&gt; 
&gt; These sentences seem to be contradictory.

You&apos;re right. What I meant to say was that the functionality is already covered by existing tests. Although the tests pass, I had to tweak one of them since the expected results differed between JSC and V8 (see http://webkit.org/b/60391).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>399702</commentid>
    <comment_count>8</comment_count>
      <attachid>92619</attachid>
    <who name="Adam Bergkvist">adam.bergkvist</who>
    <bug_when>2011-05-06 12:09:24 -0700</bug_when>
    <thetext>Created attachment 92619
Updated patch

The problem can be solved while still using generated bindings. However, the currently generated bindings fail due to a callback argument not being translated correctly resulting in the handleEvent() function not being overridden as it should (argument mismatch between int and int*). To avoid updating the JSC bindings generator, the fix was to change the failing &quot;dummy&quot; argument type to DOMString since primitive number types are not supported as callback arguments. Also, in the webkitGetUserMedia() custom binding the argument count is checked before trying to convert the first argument (fixes a failure in the argument-types test).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>401261</commentid>
    <comment_count>9</comment_count>
      <attachid>92619</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-05-10 09:30:26 -0700</bug_when>
    <thetext>Comment on attachment 92619
Updated patch

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

&gt; Source/WebCore/bindings/js/JSNavigatorCustom.cpp:43
&gt; +    if (exec-&gt;argumentCount() &lt; 2) {
&gt; +        setDOMException(exec, TYPE_MISMATCH_ERR);
&gt; +        return jsUndefined();
&gt; +    }

The desired behavior here, then, is that undefined turns into &quot;undefined&quot; for options, but that a missing argument yields TYPE_MISMATCH_ERR?

Similarly, I’m surprised that undefined for successCallback has different behavior than a missing argument, given that the missing argument behavior is TYPE_MISMATCH_ERR.

I’m a little surprised by these. Are they really covered by existing tests? I don’t see tests that are passing undefined.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>401927</commentid>
    <comment_count>10</comment_count>
      <attachid>93112</attachid>
    <who name="Adam Bergkvist">adam.bergkvist</who>
    <bug_when>2011-05-11 05:51:34 -0700</bug_when>
    <thetext>Created attachment 93112
Updated patch

I agree. I made the mistake of trying to get an existing test to pass instead of checking the specification for the correct behavior. According to the specification there should never be any type mismatch errors and getUserMedia should fail silently if successCallback is null. If options end up being &quot;undefined&quot; a NOT_SUPPORTED_ERR exception will be thrown at a later stage. I have created a separate bug to fix this (see http://webkit.org/b/60622).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>402029</commentid>
    <comment_count>11</comment_count>
      <attachid>93112</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-05-11 09:21:43 -0700</bug_when>
    <thetext>Comment on attachment 93112
Updated patch

This change seems OK. I don’t fully understand the context, but clearly it will do no harm.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>410500</commentid>
    <comment_count>12</comment_count>
    <who name="Leandro Graciá Gil">leandrogracia</who>
    <bug_when>2011-05-26 09:13:02 -0700</bug_when>
    <thetext>I think this has been caused by my arbitrary decision of using int as the dummy type. My apologies if it caused problems in JSC. I&apos;ll keep it in mind in case I see myself in a similar situation in the future.

In any case, this code you&apos;re trying to patch doesn&apos;t have dummies anymore since the bug 56666 introducing the GeneratedStream class has been finally landed. This makes the patch unnecessary at this point.

Layout tests for getUserMedia should be working now with the expected results in both JSC and V8. In case they don&apos;t, please don&apos;t hesitate to contact me or tommyw@google.com.

Thanks for contributing to this!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>410508</commentid>
    <comment_count>13</comment_count>
    <who name="Tony Gentilcore">tonyg</who>
    <bug_when>2011-05-26 09:18:00 -0700</bug_when>
    <thetext>r-/cq- as this won&apos;t merge and isn&apos;t necessary after http://trac.webkit.org/changeset/87150.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>412231</commentid>
    <comment_count>14</comment_count>
    <who name="Adam Bergkvist">adam.bergkvist</who>
    <bug_when>2011-05-30 07:58:33 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; I think this has been caused by my arbitrary decision of using int as the dummy type. My apologies if it caused problems in JSC. I&apos;ll keep it in mind in case I see myself in a similar situation in the future.
&gt;

The JSC bindings generator didn&apos;t work too well with the int. I think it should be avoided since it&apos;s not a primitive type in WebIDL, although I&apos;ve seen it used in other places in WebKit as well.

&gt; In any case, this code you&apos;re trying to patch doesn&apos;t have dummies anymore since the bug 56666 introducing the GeneratedStream class has been finally landed. This makes the patch unnecessary at this point.

It was obviously temporary code but the fix turned out to be so tiny so I thought it would be nice to be able to run the tests (on the GTK port) asap. 

&gt; Layout tests for getUserMedia should be working now with the expected results in both JSC and V8. In case they don&apos;t, please don&apos;t hesitate to contact me or tommyw@google.com.

I still get the same mismatching diff against the expected results (see http://webkit.org/b/60391).

I&apos;ve noticed another difference between the V8 and JSC bindings regarding how the exception code is handled. It is not initialized (to 0) at creation in the JSC bindings, but I&apos;ve seen that you&apos;ve added an ec = 0; further down in the controller code to handle the consequences.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>412563</commentid>
    <comment_count>15</comment_count>
    <who name="Tommy Widenflycht">tommyw</who>
    <bug_when>2011-05-31 05:37:56 -0700</bug_when>
    <thetext>&gt; I&apos;ve noticed another difference between the V8 and JSC bindings regarding how the exception code is handled. It is not initialized (to 0) at creation in the JSC bindings, but I&apos;ve seen that you&apos;ve added an ec = 0; further down in the controller code to handle the consequences.

I&apos;ll take care of the initialization problem, thanks for pointing it out!
Please advise if you want me to create a new bug for it instead of reusing this one.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>412571</commentid>
    <comment_count>16</comment_count>
      <attachid>95423</attachid>
    <who name="Tommy Widenflycht">tommyw</who>
    <bug_when>2011-05-31 06:04:35 -0700</bug_when>
    <thetext>Created attachment 95423
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>412587</commentid>
    <comment_count>17</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-05-31 06:44:54 -0700</bug_when>
    <thetext>The commit-queue encountered the following flaky tests while processing attachment 95423:

http/tests/websocket/tests/error-detect.html bug 54012 (author: abarth@webkit.org)
http/tests/websocket/tests/handshake-fail-by-no-upgrade-header.html bug 61784 (author: ap@webkit.org)
The commit-queue is continuing to process your patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>412589</commentid>
    <comment_count>18</comment_count>
      <attachid>95423</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-05-31 06:46:26 -0700</bug_when>
    <thetext>Comment on attachment 95423
Patch

Clearing flags on attachment: 95423

Committed r87725: &lt;http://trac.webkit.org/changeset/87725&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>412590</commentid>
    <comment_count>19</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-05-31 06:46:33 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>92255</attachid>
            <date>2011-05-04 09:19:15 -0700</date>
            <delta_ts>2011-05-06 12:09:24 -0700</delta_ts>
            <desc>Proposed patch</desc>
            <filename>getUserMedia_jsc.patch</filename>
            <type>text/plain</type>
            <size>44891</size>
            <attacher name="Adam Bergkvist">adam.bergkvist</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNv
cmUvQ01ha2VMaXN0cy50eHQKaW5kZXggMGI5NjA4My4uNjEzNjY0NSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0
cy50eHQKQEAgLTMyNyw4ICszMjcsNiBAQCBTRVQoV2ViQ29yZV9JRExfRklMRVMKICAgICBwYWdl
L0xvY2F0aW9uLmlkbAogICAgIHBhZ2UvTWVtb3J5SW5mby5pZGwKICAgICBwYWdlL05hdmlnYXRv
ci5pZGwKLSAgICBwYWdlL05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaWRsCi0gICAg
cGFnZS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaWRsCiAgICAgcGFnZS9QZXJm
b3JtYW5jZS5pZGwKICAgICBwYWdlL1BlcmZvcm1hbmNlTmF2aWdhdGlvbi5pZGwKICAgICBwYWdl
L1BlcmZvcm1hbmNlVGltaW5nLmlkbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGEzN2IzYWUuLjA2MDNhNWIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cKQEAgLTEsMyArMSw0MyBAQAorMjAxMS0wNS0wNCAgQWRhbSBCZXJna3Zpc3QgIDxh
ZGFtLmJlcmdrdmlzdEBlcmljc3Nvbi5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgRml4IGdldFVzZXJNZWRpYSBjYWxsYmFjayBiaW5kaW5ncyBm
b3IgSlNDCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02
MDE3NAorCisgICAgICAgIEFkZGVkIGN1c3RvbSBiaW5kaW5ncyBmb3IgdGhlIHVzZXIgbWVkaWEg
Y2FsbGJhY2sgZnVuY3Rpb25zIGFuZCByZW1vdmVkCisgICAgICAgIHVudXNlZCAuaWRsIGZpbGVz
LgorCisgICAgICAgIE5vIG5ldyBmdW5jdGlvbmFsaXR5IHRvIGJlIHRlc3RlZC4KKworICAgICAg
ICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIENvZGVHZW5lcmF0b3JzLnByaToKKyAgICAg
ICAgKiBEZXJpdmVkU291cmNlcy5jcHA6CisgICAgICAgICogR05VbWFrZWZpbGUubGlzdC5hbToK
KyAgICAgICAgKiBXZWJDb3JlLmd5cGk6CisgICAgICAgICogV2ViQ29yZS5wcm86CisgICAgICAg
ICogV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2o6CisgICAgICAgICogV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTQmluZGluZ3NB
bGxJbk9uZS5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvSlNDdXN0b21OYXZpZ2F0b3JVc2Vy
TWVkaWFFcnJvckNhbGxiYWNrLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpKU0N1c3Rv
bU5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2s6OkpTQ3VzdG9tTmF2aWdhdG9yVXNlck1l
ZGlhRXJyb3JDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpKU0N1c3RvbU5hdmlnYXRvclVz
ZXJNZWRpYUVycm9yQ2FsbGJhY2s6OmhhbmRsZUV2ZW50KToKKyAgICAgICAgKiBiaW5kaW5ncy9q
cy9KU0N1c3RvbU5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaDogQWRkZWQuCisgICAg
ICAgIChXZWJDb3JlOjpKU0N1c3RvbU5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2s6OmNy
ZWF0ZSk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNDdXN0b21OYXZpZ2F0b3JVc2VyTWVkaWFT
dWNjZXNzQ2FsbGJhY2suY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkpTQ3VzdG9tTmF2
aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrOjpKU0N1c3RvbU5hdmlnYXRvclVzZXJNZWRp
YVN1Y2Nlc3NDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpKU0N1c3RvbU5hdmlnYXRvclVz
ZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjazo6aGFuZGxlRXZlbnQpOgorICAgICAgICAqIGJpbmRpbmdz
L2pzL0pTQ3VzdG9tTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmg6IEFkZGVkLgor
ICAgICAgICAoV2ViQ29yZTo6SlNDdXN0b21OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJh
Y2s6OmNyZWF0ZSk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNOYXZpZ2F0b3JDdXN0b20uY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6SlNOYXZpZ2F0b3I6OndlYmtpdEdldFVzZXJNZWRpYSk6Cisg
ICAgICAgICogcGFnZS9OYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmg6CisgICAgICAg
IChXZWJDb3JlOjpOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrOjpOYXZpZ2F0b3JVc2Vy
TWVkaWFFcnJvckNhbGxiYWNrKToKKyAgICAgICAgKiBwYWdlL05hdmlnYXRvclVzZXJNZWRpYUVy
cm9yQ2FsbGJhY2suaWRsOiBSZW1vdmVkLgorICAgICAgICAqIHBhZ2UvTmF2aWdhdG9yVXNlck1l
ZGlhU3VjY2Vzc0NhbGxiYWNrLmg6CisgICAgICAgIChXZWJDb3JlOjpOYXZpZ2F0b3JVc2VyTWVk
aWFTdWNjZXNzQ2FsbGJhY2s6Ok5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjayk6Cisg
ICAgICAgICogcGFnZS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaWRsOiBSZW1v
dmVkLgorCiAyMDExLTA1LTA0ICBBbmRyZXkgS29zeWFrb3YgIDxjYXNlcUBjaHJvbWl1bS5vcmc+
CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgWXVyeSBTZW1pa2hhdHNreS4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL0NvZGVHZW5lcmF0b3JzLnByaSBiL1NvdXJjZS9XZWJDb3JlL0NvZGVHZW5l
cmF0b3JzLnByaQppbmRleCBjYzI5NjYwLi45YzVlNTVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9Db2RlR2VuZXJhdG9ycy5wcmkKKysrIGIvU291cmNlL1dlYkNvcmUvQ29kZUdlbmVyYXRv
cnMucHJpCkBAIC0zMjQsOCArMzI0LDYgQEAgSURMX0JJTkRJTkdTICs9IFwKICAgICBwYWdlL01l
bW9yeUluZm8uaWRsIFwKICAgICBwYWdlL05hdmlnYXRvci5pZGwgXAogICAgIHBhZ2UvTmF2aWdh
dG9yVXNlck1lZGlhRXJyb3IuaWRsIFwKLSAgICBwYWdlL05hdmlnYXRvclVzZXJNZWRpYUVycm9y
Q2FsbGJhY2suaWRsIFwKLSAgICBwYWdlL05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFj
ay5pZGwgXAogICAgIHBhZ2UvUGVyZm9ybWFuY2UuaWRsIFwKICAgICBwYWdlL1BlcmZvcm1hbmNl
TmF2aWdhdGlvbi5pZGwgXAogICAgIHBhZ2UvUGVyZm9ybWFuY2VUaW1pbmcuaWRsIFwKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L0Rlcml2ZWRTb3VyY2VzLmNwcAppbmRleCBjODdjNGQ1Li41OTE4NmU3IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvRGVy
aXZlZFNvdXJjZXMuY3BwCkBAIC0yMzksOCArMjM5LDYgQEAKICNpbmNsdWRlICJKU05hbWVkTm9k
ZU1hcC5jcHAiCiAjaW5jbHVkZSAiSlNOYXZpZ2F0b3IuY3BwIgogI2luY2x1ZGUgIkpTTmF2aWdh
dG9yVXNlck1lZGlhRXJyb3IuY3BwIgotI2luY2x1ZGUgIkpTTmF2aWdhdG9yVXNlck1lZGlhRXJy
b3JDYWxsYmFjay5jcHAiCi0jaW5jbHVkZSAiSlNOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2Fs
bGJhY2suY3BwIgogI2luY2x1ZGUgIkpTTm9kZS5jcHAiCiAjaW5jbHVkZSAiSlNOb2RlRmlsdGVy
LmNwcCIKICNpbmNsdWRlICJKU05vZGVJdGVyYXRvci5jcHAiCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtIGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUu
bGlzdC5hbQppbmRleCAzY2VmOTFjLi5lZWQyNmQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9HTlVtYWtlZmlsZS5saXN0LmFtCisrKyBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxp
c3QuYW0KQEAgLTM2OSwxMCArMzY5LDYgQEAgd2ViY29yZV9idWlsdF9zb3VyY2VzICs9IFwKIAlE
ZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTTmF2aWdhdG9yLmggXAogCURlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5jcHAgXAogCURlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oIFwKLQlEZXJpdmVkU291cmNlcy9XZWJD
b3JlL0pTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5jcHAgXAotCURlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmggXAotCURlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvSlNOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suY3Bw
IFwKLQlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0Nh
bGxiYWNrLmggXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNOb2RlLmNwcCBcCiAJRGVyaXZl
ZFNvdXJjZXMvV2ViQ29yZS9KU05vZGVGaWx0ZXIuY3BwIFwKIAlEZXJpdmVkU291cmNlcy9XZWJD
b3JlL0pTTm9kZUZpbHRlci5oIFwKQEAgLTY1Miw2ICs2NDgsMTAgQEAgd2ViY29yZV9zb3VyY2Vz
ICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NsaXBib2FyZEN1c3RvbS5jcHAg
XAogCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ29uc29sZUN1c3RvbS5jcHAgXAogCVNv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ29vcmRpbmF0ZXNDdXN0b20uY3BwIFwKKwlTb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3RvbU5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2Fs
bGJhY2suY3BwIFwKKwlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3RvbU5hdmlnYXRv
clVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCBcCisJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNDdXN0b21OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suY3BwIFwKKwlTb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3RvbU5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxs
YmFjay5oIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3RvbVBvc2l0aW9uQ2Fs
bGJhY2suY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3RvbVBvc2l0aW9u
Q2FsbGJhY2suaCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNDdXN0b21Qb3NpdGlv
bkVycm9yQ2FsbGJhY2suY3BwIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
Z3lwaSBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQppbmRleCBhMzJmZmQzLi5kMDYxMzRj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkKKysrIGIvU291cmNlL1dl
YkNvcmUvV2ViQ29yZS5neXBpCkBAIC0xMzM0LDggKzEzMzQsNiBAQAogICAgICAgICAgICAgJ3Bh
Z2UvTWVtb3J5SW5mby5pZGwnLAogICAgICAgICAgICAgJ3BhZ2UvTmF2aWdhdG9yLmlkbCcsCiAg
ICAgICAgICAgICAncGFnZS9OYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5pZGwnLAotICAgICAgICAg
ICAgJ3BhZ2UvTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGwnLAotICAgICAgICAg
ICAgJ3BhZ2UvTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmlkbCcsCiAgICAgICAg
ICAgICAncGFnZS9QZXJmb3JtYW5jZS5pZGwnLAogICAgICAgICAgICAgJ3BhZ2UvUGVyZm9ybWFu
Y2VOYXZpZ2F0aW9uLmlkbCcsCiAgICAgICAgICAgICAncGFnZS9QZXJmb3JtYW5jZVRpbWluZy5p
ZGwnLApAQCAtMTcyNCw2ICsxNzIyLDEwIEBACiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlND
b25zb2xlQ3VzdG9tLmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNDb252b2x2ZXJO
b2RlQ3VzdG9tLmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNDb29yZGluYXRlc0N1
c3RvbS5jcHAnLAorICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTQ3VzdG9tTmF2aWdhdG9yVXNl
ck1lZGlhRXJyb3JDYWxsYmFjay5jcHAnLAorICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTQ3Vz
dG9tTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oJywKKyAgICAgICAgICAgICdiaW5k
aW5ncy9qcy9KU0N1c3RvbU5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5jcHAnLAor
ICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTQ3VzdG9tTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vz
c0NhbGxiYWNrLmgnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTQ3VzdG9tUG9zaXRpb25D
YWxsYmFjay5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTQ3VzdG9tUG9zaXRpb25D
YWxsYmFjay5oJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0N1c3RvbVBvc2l0aW9uRXJy
b3JDYWxsYmFjay5jcHAnLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5wcm8g
Yi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnBybwppbmRleCA5OTQzZjNiLi4wM2FhNWVkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnBybworKysgYi9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnBybwpAQCAtMjQ4LDYgKzI0OCw4IEBAIHY4IHsKICAgICAgICAgYmluZGluZ3MvanMv
SlNDbGlwYm9hcmRDdXN0b20uY3BwIFwKICAgICAgICAgYmluZGluZ3MvanMvSlNDb25zb2xlQ3Vz
dG9tLmNwcCBcCiAgICAgICAgIGJpbmRpbmdzL2pzL0pTQ29vcmRpbmF0ZXNDdXN0b20uY3BwIFwK
KyAgICAgICAgYmluZGluZ3MvanMvSlNDdXN0b21OYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxi
YWNrLmNwcCBcCisgICAgICAgIGJpbmRpbmdzL2pzL0pTQ3VzdG9tTmF2aWdhdG9yVXNlck1lZGlh
U3VjY2Vzc0NhbGxiYWNrLmNwcCBcCiAgICAgICAgIGJpbmRpbmdzL2pzL0pTQ3VzdG9tUG9zaXRp
b25DYWxsYmFjay5jcHAgXAogICAgICAgICBiaW5kaW5ncy9qcy9KU0N1c3RvbVBvc2l0aW9uRXJy
b3JDYWxsYmFjay5jcHAgXAogICAgICAgICBiaW5kaW5ncy9qcy9KU0N1c3RvbVZvaWRDYWxsYmFj
ay5jcHAgXApAQCAtMTI4MSw2ICsxMjgzLDggQEAgdjggewogICAgICAgICBiaW5kaW5ncy9qcy9K
U0F1ZGlvQ29uc3RydWN0b3IuaCBcCiAgICAgICAgIGJpbmRpbmdzL2pzL0pTQ1NTU3R5bGVEZWNs
YXJhdGlvbkN1c3RvbS5oIFwKICAgICAgICAgYmluZGluZ3MvanMvSlNDYWxsYmFja0RhdGEuaCBc
CisgICAgICAgIGJpbmRpbmdzL2pzL0pTQ3VzdG9tTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxs
YmFjay5oIFwKKyAgICAgICAgYmluZGluZ3MvanMvSlNDdXN0b21OYXZpZ2F0b3JVc2VyTWVkaWFT
dWNjZXNzQ2FsbGJhY2suaCBcCiAgICAgICAgIGJpbmRpbmdzL2pzL0pTQ3VzdG9tUG9zaXRpb25D
YWxsYmFjay5oIFwKICAgICAgICAgYmluZGluZ3MvanMvSlNDdXN0b21Qb3NpdGlvbkVycm9yQ2Fs
bGJhY2suaCBcCiAgICAgICAgIGJpbmRpbmdzL2pzL0pTQ3VzdG9tVm9pZENhbGxiYWNrLmggXApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2og
Yi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagppbmRleCAxOGE3
MzM5Li5jMzMyMDY3IDEwMDc1NQotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9X
ZWJDb3JlLnZjcHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3Jl
LnZjcHJvagpAQCAtMTE0ODYsMTE4ICsxMTQ4Niw2IEBACiAJCQkJPgogCQkJPC9GaWxlPgogCQkJ
PEZpbGUKLQkJCQlSZWxhdGl2ZVBhdGg9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmpcJChQ
cm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxi
YWNrLmNwcCIKLQkJCQk+Ci0JCQkJPEZpbGVDb25maWd1cmF0aW9uCi0JCQkJCU5hbWU9IkRlYnVn
fFdpbjMyIgotCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKLQkJCQkJPgotCQkJCQk8VG9v
bAotCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJCQkJLz4KLQkJCQk8L0ZpbGVDb25m
aWd1cmF0aW9uPgotCQkJCTxGaWxlQ29uZmlndXJhdGlvbgotCQkJCQlOYW1lPSJSZWxlYXNlfFdp
bjMyIgotCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKLQkJCQkJPgotCQkJCQk8VG9vbAot
CQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJCQkJLz4KLQkJCQk8L0ZpbGVDb25maWd1
cmF0aW9uPgotCQkJCTxGaWxlQ29uZmlndXJhdGlvbgotCQkJCQlOYW1lPSJEZWJ1Z19DYWlyb19D
RkxpdGV8V2luMzIiCi0JCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgotCQkJCQk+Ci0JCQkJ
CTxUb29sCi0JCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgotCQkJCQkvPgotCQkJCTwvRmls
ZUNvbmZpZ3VyYXRpb24+Ci0JCQkJPEZpbGVDb25maWd1cmF0aW9uCi0JCQkJCU5hbWU9IlJlbGVh
c2VfQ2Fpcm9fQ0ZMaXRlfFdpbjMyIgotCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKLQkJ
CQkJPgotCQkJCQk8VG9vbAotCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJCQkJLz4K
LQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJCTxGaWxlQ29uZmlndXJhdGlvbgotCQkJCQlO
YW1lPSJEZWJ1Z19BbGx8V2luMzIiCi0JCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgotCQkJ
CQk+Ci0JCQkJCTxUb29sCi0JCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgotCQkJCQkvPgot
CQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+Ci0JCQkJPEZpbGVDb25maWd1cmF0aW9uCi0JCQkJCU5h
bWU9IlByb2R1Y3Rpb258V2luMzIiCi0JCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgotCQkJ
CQk+Ci0JCQkJCTxUb29sCi0JCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgotCQkJCQkvPgot
CQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+Ci0JCQk8L0ZpbGU+Ci0JCQk8RmlsZQotCQkJCVJlbGF0
aXZlUGF0aD0iJChDb25maWd1cmF0aW9uQnVpbGREaXIpXG9ialwkKFByb2plY3ROYW1lKVxEZXJp
dmVkU291cmNlc1xKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCIKLQkJCQk+Ci0J
CQk8L0ZpbGU+Ci0JCQk8RmlsZQotCQkJCVJlbGF0aXZlUGF0aD0iJChDb25maWd1cmF0aW9uQnVp
bGREaXIpXG9ialwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU05hdmlnYXRvclVzZXJN
ZWRpYVN1Y2Nlc3NDYWxsYmFjay5jcHAiCi0JCQkJPgotCQkJCTxGaWxlQ29uZmlndXJhdGlvbgot
CQkJCQlOYW1lPSJEZWJ1Z3xXaW4zMiIKLQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0J
CQkJCT4KLQkJCQkJPFRvb2wKLQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCS8+
Ci0JCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KLQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJ
TmFtZT0iUmVsZWFzZXxXaW4zMiIKLQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJ
CT4KLQkJCQkJPFRvb2wKLQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCS8+Ci0J
CQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KLQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJTmFt
ZT0iRGVidWdfQ2Fpcm9fQ0ZMaXRlfFdpbjMyIgotCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1
ZSIKLQkJCQkJPgotCQkJCQk8VG9vbAotCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJ
CQkJLz4KLQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJCTxGaWxlQ29uZmlndXJhdGlvbgot
CQkJCQlOYW1lPSJSZWxlYXNlX0NhaXJvX0NGTGl0ZXxXaW4zMiIKLQkJCQkJRXhjbHVkZWRGcm9t
QnVpbGQ9InRydWUiCi0JCQkJCT4KLQkJCQkJPFRvb2wKLQkJCQkJCU5hbWU9IlZDQ0xDb21waWxl
clRvb2wiCi0JCQkJCS8+Ci0JCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KLQkJCQk8RmlsZUNvbmZp
Z3VyYXRpb24KLQkJCQkJTmFtZT0iRGVidWdfQWxsfFdpbjMyIgotCQkJCQlFeGNsdWRlZEZyb21C
dWlsZD0idHJ1ZSIKLQkJCQkJPgotCQkJCQk8VG9vbAotCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVy
VG9vbCIKLQkJCQkJLz4KLQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJCTxGaWxlQ29uZmln
dXJhdGlvbgotCQkJCQlOYW1lPSJQcm9kdWN0aW9ufFdpbjMyIgotCQkJCQlFeGNsdWRlZEZyb21C
dWlsZD0idHJ1ZSIKLQkJCQkJPgotCQkJCQk8VG9vbAotCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVy
VG9vbCIKLQkJCQkJLz4KLQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJPC9GaWxlPgotCQkJ
PEZpbGUKLQkJCQlSZWxhdGl2ZVBhdGg9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmpcJChQ
cm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2Fs
bGJhY2suaCIKLQkJCQk+Ci0JCQk8L0ZpbGU+Ci0JCQk8RmlsZQogCQkJCVJlbGF0aXZlUGF0aD0i
JChDb25maWd1cmF0aW9uQnVpbGREaXIpXG9ialwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNl
c1xKU05vZGUuY3BwIgogCQkJCT4KIAkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KQEAgLTU3NTk3LDYg
KzU3NDg1LDExOCBAQAogCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgogCQkJCTwvRmlsZT4KIAkJ
CQk8RmlsZQorCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXEpTQ3VzdG9tTmF2aWdh
dG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5jcHAiCisJCQkJCT4KKwkJCQkJPEZpbGVDb25maWd1
cmF0aW9uCisJCQkJCQlOYW1lPSJEZWJ1Z3xXaW4zMiIKKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxk
PSJ0cnVlIgorCQkJCQkJPgorCQkJCQkJPFRvb2wKKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJU
b29sIgorCQkJCQkJLz4KKwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KKwkJCQkJPEZpbGVDb25m
aWd1cmF0aW9uCisJCQkJCQlOYW1lPSJSZWxlYXNlfFdpbjMyIgorCQkJCQkJRXhjbHVkZWRGcm9t
QnVpbGQ9InRydWUiCisJCQkJCQk+CisJCQkJCQk8VG9vbAorCQkJCQkJCU5hbWU9IlZDQ0xDb21w
aWxlclRvb2wiCisJCQkJCQkvPgorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgorCQkJCQk8Rmls
ZUNvbmZpZ3VyYXRpb24KKwkJCQkJCU5hbWU9IkRlYnVnX0NhaXJvX0NGTGl0ZXxXaW4zMiIKKwkJ
CQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgorCQkJCQkJPgorCQkJCQkJPFRvb2wKKwkJCQkJ
CQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgorCQkJCQkJLz4KKwkJCQkJPC9GaWxlQ29uZmlndXJh
dGlvbj4KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uCisJCQkJCQlOYW1lPSJSZWxlYXNlX0NhaXJv
X0NGTGl0ZXxXaW4zMiIKKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgorCQkJCQkJPgor
CQkJCQkJPFRvb2wKKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgorCQkJCQkJLz4KKwkJ
CQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uCisJCQkJCQlO
YW1lPSJEZWJ1Z19BbGx8V2luMzIiCisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKKwkJ
CQkJCT4KKwkJCQkJCTxUb29sCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKKwkJCQkJ
CS8+CisJCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+CisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbgor
CQkJCQkJTmFtZT0iUHJvZHVjdGlvbnxXaW4zMiIKKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0
cnVlIgorCQkJCQkJPgorCQkJCQkJPFRvb2wKKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29s
IgorCQkJCQkJLz4KKwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KKwkJCQk8L0ZpbGU+CisJCQkJ
PEZpbGUKKwkJCQkJUmVsYXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xqc1xKU0N1c3RvbU5hdmlnYXRv
clVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCIKKwkJCQkJPgorCQkJCTwvRmlsZT4KKwkJCQk8Rmls
ZQorCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXEpTQ3VzdG9tTmF2aWdhdG9yVXNl
ck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmNwcCIKKwkJCQkJPgorCQkJCQk8RmlsZUNvbmZpZ3VyYXRp
b24KKwkJCQkJCU5hbWU9IkRlYnVnfFdpbjMyIgorCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRy
dWUiCisJCQkJCQk+CisJCQkJCQk8VG9vbAorCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wi
CisJCQkJCQkvPgorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgorCQkJCQk8RmlsZUNvbmZpZ3Vy
YXRpb24KKwkJCQkJCU5hbWU9IlJlbGVhc2V8V2luMzIiCisJCQkJCQlFeGNsdWRlZEZyb21CdWls
ZD0idHJ1ZSIKKwkJCQkJCT4KKwkJCQkJCTxUb29sCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVy
VG9vbCIKKwkJCQkJCS8+CisJCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+CisJCQkJCTxGaWxlQ29u
ZmlndXJhdGlvbgorCQkJCQkJTmFtZT0iRGVidWdfQ2Fpcm9fQ0ZMaXRlfFdpbjMyIgorCQkJCQkJ
RXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCisJCQkJCQk+CisJCQkJCQk8VG9vbAorCQkJCQkJCU5h
bWU9IlZDQ0xDb21waWxlclRvb2wiCisJCQkJCQkvPgorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9u
PgorCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KKwkJCQkJCU5hbWU9IlJlbGVhc2VfQ2Fpcm9fQ0ZM
aXRlfFdpbjMyIgorCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCisJCQkJCQk+CisJCQkJ
CQk8VG9vbAorCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCisJCQkJCQkvPgorCQkJCQk8
L0ZpbGVDb25maWd1cmF0aW9uPgorCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KKwkJCQkJCU5hbWU9
IkRlYnVnX0FsbHxXaW4zMiIKKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgorCQkJCQkJ
PgorCQkJCQkJPFRvb2wKKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgorCQkJCQkJLz4K
KwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uCisJCQkJ
CQlOYW1lPSJQcm9kdWN0aW9ufFdpbjMyIgorCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUi
CisJCQkJCQk+CisJCQkJCQk8VG9vbAorCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCisJ
CQkJCQkvPgorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgorCQkJCTwvRmlsZT4KKwkJCQk8Rmls
ZQorCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXEpTQ3VzdG9tTmF2aWdhdG9yVXNl
ck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmgiCisJCQkJCT4KKwkJCQk8L0ZpbGU+CisJCQkJPEZpbGUK
IAkJCQkJUmVsYXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xqc1xKU0N1c3RvbVBvc2l0aW9uQ2FsbGJh
Y2suY3BwIgogCQkJCQk+CiAJCQkJCTxGaWxlQ29uZmlndXJhdGlvbgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dl
YkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDAzNTEzNjkuLjZl
ODMxYjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2oKQEAgLTQwODUsMTIgKzQwODUsMTIgQEAKIAkJQjFFNTQ1OTkxMzQ2MjlDMTAwOTJB
NTQ1IC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMUU1NDU4RDEzNDYyOUMxMDA5MkE1NDUgLyogTmF2aWdh
dG9yVXNlck1lZGlhRXJyb3IuaCAqLzsgfTsKIAkJQjFFNTQ1OUIxMzQ2MjlDMTAwOTJBNTQ1IC8q
IE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIxRTU0NThGMTM0NjI5QzEwMDkyQTU0NSAvKiBOYXZp
Z2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmggKi87IH07CiAJCUIxRTU0NTlEMTM0NjI5QzEw
MDkyQTU0NSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIxRTU0NTkxMTM0NjI5QzEwMDky
QTU0NSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaCAqLzsgfTsKKwkJQjFF
NTQ1QkYxMzQ2MkIwQjAwOTJBNTQ1IC8qIEpTQ3VzdG9tTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JD
YWxsYmFjay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBCMUU1NDVCMTEzNDYyQjBCMDA5MkE1NDUgLyogSlNDdXN0b21OYXZpZ2F0b3JVc2VyTWVkaWFF
cnJvckNhbGxiYWNrLmNwcCAqLzsgfTsKKwkJQjFFNTQ1QzAxMzQ2MkIwQjAwOTJBNTQ1IC8qIEpT
Q3VzdG9tTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjFFNTQ1QjIxMzQ2MkIwQjAwOTJBNTQ1IC8q
IEpTQ3VzdG9tTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oICovOyB9OworCQlCMUU1
NDVDRjEzNDYyQjBCMDA5MkE1NDUgLyogSlNDdXN0b21OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNz
Q2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQjFFNTQ1QzExMzQ2MkIwQjAwOTJBNTQ1IC8qIEpTQ3VzdG9tTmF2aWdhdG9yVXNlck1lZGlh
U3VjY2Vzc0NhbGxiYWNrLmNwcCAqLzsgfTsKKwkJQjFFNTQ1RDAxMzQ2MkIwQjAwOTJBNTQ1IC8q
IEpTQ3VzdG9tTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMUU1NDVDMjEzNDYyQjBCMDA5MkE1
NDUgLyogSlNDdXN0b21OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaCAqLzsgfTsK
IAkJQjFFNTQ1REYxMzQ2MkIwQjAwOTJBNTQ1IC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3Iu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjFFNTQ1
RDExMzQ2MkIwQjAwOTJBNTQ1IC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuY3BwICovOyB9
OwogCQlCMUU1NDVFMDEzNDYyQjBCMDA5MkE1NDUgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJv
ci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjFFNTQ1
RDIxMzQ2MkIwQjAwOTJBNTQ1IC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuaCAqLzsgfTsK
LQkJQjFFNTQ1RTExMzQ2MkIwQjAwOTJBNTQ1IC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JD
YWxsYmFjay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBCMUU1NDVEMzEzNDYyQjBCMDA5MkE1NDUgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNh
bGxiYWNrLmNwcCAqLzsgfTsKLQkJQjFFNTQ1RTIxMzQ2MkIwQjAwOTJBNTQ1IC8qIEpTTmF2aWdh
dG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQjFFNTQ1RDQxMzQ2MkIwQjAwOTJBNTQ1IC8qIEpTTmF2aWdhdG9y
VXNlck1lZGlhRXJyb3JDYWxsYmFjay5oICovOyB9OwotCQlCMUU1NDVFMzEzNDYyQjBCMDA5MkE1
NDUgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjFFNTQ1RDUxMzQ2MkIwQjAwOTJB
NTQ1IC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmNwcCAqLzsgfTsKLQkJ
QjFFNTQ1RTQxMzQ2MkIwQjAwOTJBNTQ1IC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0Nh
bGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBC
MUU1NDVENjEzNDYyQjBCMDA5MkE1NDUgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2Fs
bGJhY2suaCAqLzsgfTsKIAkJQjIwMTExMDcwQUI3NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1l
bnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIw
MTExMDUwQUI3NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1lbnQuY3BwICovOyB9OwogCQlCMjAx
MTEwODBBQjc3NDA1MDBEQjBFNjggLyogSlNTVkdBRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIwMTExMDYwQUI3NzQwNTAwREIwRTY4IC8q
IEpTU1ZHQUVsZW1lbnQuaCAqLzsgfTsKIAkJQjIyMjc5NjIwRDAwQkYyMjAwNzFCNzgyIC8qIENv
bG9yRGlzdGFuY2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQjIyMjc3Q0IwRDAwQkYxRjAwNzFCNzgyIC8qIENvbG9yRGlzdGFuY2UuY3BwICovOyB9
OwpAQCAtMTAzMjcsMTUgKzEwMzI3LDEzIEBACiAJCUIxRTU0NThEMTM0NjI5QzEwMDkyQTU0NSAv
KiBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQlCMUU1NDU4RTEzNDYyOUMxMDA5MkE1NDUgLyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3Iu
aWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE5hdmlnYXRvclVzZXJNZWRpYUVycm9yLmlkbDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjFFNTQ1OEYxMzQ2MjlDMTAwOTJBNTQ1IC8q
IE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwotCQlCMUU1NDU5MDEzNDYyOUMxMDA5MkE1NDUgLyogTmF2aWdhdG9y
VXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTmF2aWdh
dG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCUIxRTU0NTkxMTM0NjI5QzEwMDkyQTU0NSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNz
Q2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmF2aWdhdG9yVXNl
ck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUIx
RTU0NTkyMTM0NjI5QzEwMDkyQTU0NSAvKiBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJh
Y2suaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3ND
YWxsYmFjay5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIxRTU0NUIxMTM0NjJC
MEIwMDkyQTU0NSAvKiBKU0N1c3RvbU5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNDdXN0b21OYXZpZ2F0b3JV
c2VyTWVkaWFFcnJvckNhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QjFFNTQ1QjIxMzQ2MkIwQjAwOTJBNTQ1IC8qIEpTQ3VzdG9tTmF2aWdhdG9yVXNlck1lZGlhRXJy
b3JDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0N1c3RvbU5h
dmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQjFFNTQ1QzExMzQ2MkIwQjAwOTJBNTQ1IC8qIEpTQ3VzdG9tTmF2aWdhdG9yVXNlck1l
ZGlhU3VjY2Vzc0NhbGxiYWNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTQ3VzdG9tTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjFFNTQ1QzIxMzQ2MkIwQjAwOTJBNTQ1IC8qIEpTQ3Vz
dG9tTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTQ3VzdG9tTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNr
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIxRTU0NUQxMTM0NjJCMEIwMDkyQTU0
NSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQlCMUU1NDVEMjEzNDYyQjBCMDA5MkE1NDUgLyogSlNOYXZpZ2F0
b3JVc2VyTWVkaWFFcnJvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU05h
dmlnYXRvclVzZXJNZWRpYUVycm9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUIx
RTU0NUQzMTM0NjJCMEIwMDkyQTU0NSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJh
Y2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNOYXZpZ2F0b3JV
c2VyTWVkaWFFcnJvckNhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJ
QjFFNTQ1RDQxMzQ2MkIwQjAwOTJBNTQ1IC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxs
YmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU05hdmlnYXRvclVzZXJN
ZWRpYUVycm9yQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQjFFNTQ1
RDUxMzQ2MkIwQjAwOTJBNTQ1IC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNr
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTmF2aWdhdG9yVXNl
ck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJ
QjFFNTQ1RDYxMzQ2MkIwQjAwOTJBNTQ1IC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0Nh
bGxiYWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTTmF2aWdhdG9yVXNl
ck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIy
MDExMTA1MEFCNzc0MDUwMERCMEU2OCAvKiBKU1NWR0FFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR0FFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJQjIwMTExMDYwQUI3NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1l
bnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHQUVsZW1lbnQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjIyMjc3Q0IwRDAwQkYxRjAwNzFCNzgyIC8q
IENvbG9yRGlzdGFuY2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IENvbG9yRGlzdGFuY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTQxNDks
OSArMTQxNDcsNyBAQAogCQkJCUIxRTU0NThEMTM0NjI5QzEwMDkyQTU0NSAvKiBOYXZpZ2F0b3JV
c2VyTWVkaWFFcnJvci5oICovLAogCQkJCUIxRTU0NThFMTM0NjI5QzEwMDkyQTU0NSAvKiBOYXZp
Z2F0b3JVc2VyTWVkaWFFcnJvci5pZGwgKi8sCiAJCQkJQjFFNTQ1OEYxMzQ2MjlDMTAwOTJBNTQ1
IC8qIE5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCAqLywKLQkJCQlCMUU1NDU5MDEz
NDYyOUMxMDA5MkE1NDUgLyogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5pZGwgKi8s
CiAJCQkJQjFFNTQ1OTExMzQ2MjlDMTAwOTJBNTQ1IC8qIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nl
c3NDYWxsYmFjay5oICovLAotCQkJCUIxRTU0NTkyMTM0NjI5QzEwMDkyQTU0NSAvKiBOYXZpZ2F0
b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaWRsICovLAogCQkJCTAwMTQ2Mjg4MTAzQ0QxREUw
MDBCMjBEQiAvKiBPcmlnaW5BY2Nlc3NFbnRyeS5jcHAgKi8sCiAJCQkJMDAxNDYyODkxMDNDRDFE
RTAwMEIyMERCIC8qIE9yaWdpbkFjY2Vzc0VudHJ5LmggKi8sCiAJCQkJNjVGRUE4NjgwOTgzM0FE
RTAwQkVENEFCIC8qIFBhZ2UuY3BwICovLApAQCAtMTgyMzEsMTAgKzE4MjI3LDYgQEAKIAkJCQlB
OUQyNDdGNjBENzU3RTMzMDBGREY5NTkgLyogSlNOYXZpZ2F0b3IuaCAqLywKIAkJCQlCMUU1NDVE
MTEzNDYyQjBCMDA5MkE1NDUgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5jcHAgKi8sCiAJ
CQkJQjFFNTQ1RDIxMzQ2MkIwQjAwOTJBNTQ1IC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3Iu
aCAqLywKLQkJCQlCMUU1NDVEMzEzNDYyQjBCMDA5MkE1NDUgLyogSlNOYXZpZ2F0b3JVc2VyTWVk
aWFFcnJvckNhbGxiYWNrLmNwcCAqLywKLQkJCQlCMUU1NDVENDEzNDYyQjBCMDA5MkE1NDUgLyog
SlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmggKi8sCi0JCQkJQjFFNTQ1RDUxMzQ2
MkIwQjAwOTJBNTQ1IC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmNwcCAq
LywKLQkJCQlCMUU1NDVENjEzNDYyQjBCMDA5MkE1NDUgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFT
dWNjZXNzQ2FsbGJhY2suaCAqLywKIAkJCQk4QTlBNTg3MjExRTg0QzgxMDA4QUNGRDEgLyogSlNQ
ZXJmb3JtYW5jZS5jcHAgKi8sCiAJCQkJOEE5QTU4NzMxMUU4NEM4MTAwOEFDRkQxIC8qIEpTUGVy
Zm9ybWFuY2UuaCAqLywKIAkJCQk4QTlBNTg2RTExRTg0QzM1MDA4QUNGRDEgLyogSlNQZXJmb3Jt
YW5jZU5hdmlnYXRpb24uY3BwICovLApAQCAtMTgzNjQsNiArMTgzNTYsMTAgQEAKIAkJCQlCMUQ1
RUNCNDEzNEI1OERBMDA4N0M3OEYgLyogQ2FsbGJhY2tGdW5jdGlvbi5oICovLAogCQkJCTE0NDlF
Mjg2MTA3RDREQjQwMEI1NzkzRiAvKiBKU0NhbGxiYWNrRGF0YS5jcHAgKi8sCiAJCQkJMTQ0OUUy
NEExMDdENEE4NDAwQjU3OTNGIC8qIEpTQ2FsbGJhY2tEYXRhLmggKi8sCisJCQkJQjFFNTQ1QjEx
MzQ2MkIwQjAwOTJBNTQ1IC8qIEpTQ3VzdG9tTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFj
ay5jcHAgKi8sCisJCQkJQjFFNTQ1QjIxMzQ2MkIwQjAwOTJBNTQ1IC8qIEpTQ3VzdG9tTmF2aWdh
dG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oICovLAorCQkJCUIxRTU0NUMxMTM0NjJCMEIwMDky
QTU0NSAvKiBKU0N1c3RvbU5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5jcHAgKi8s
CisJCQkJQjFFNTQ1QzIxMzQ2MkIwQjAwOTJBNTQ1IC8qIEpTQ3VzdG9tTmF2aWdhdG9yVXNlck1l
ZGlhU3VjY2Vzc0NhbGxiYWNrLmggKi8sCiAJCQkJRkU4MEQ3QTIwRTlDMUVEMjAwMEQ2Rjc1IC8q
IEpTQ3VzdG9tUG9zaXRpb25DYWxsYmFjay5jcHAgKi8sCiAJCQkJRkU4MEQ3QTMwRTlDMUVEMjAw
MEQ2Rjc1IC8qIEpTQ3VzdG9tUG9zaXRpb25DYWxsYmFjay5oICovLAogCQkJCUZFODBEN0E0MEU5
QzFFRDIwMDBENkY3NSAvKiBKU0N1c3RvbVBvc2l0aW9uRXJyb3JDYWxsYmFjay5jcHAgKi8sCkBA
IC0yMTI1OSw2ICsyMTI1NSw4IEBACiAJCQkJMTRDRjc4QTYwOUY1OENEODAwRUIzNjY1IC8qIEpT
Q1NTVmFsdWUuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4RDA1RkFDMEEyM0IzMEYwMDVFNzIwMyAv
KiBKU0NTU1ZhbHVlTGlzdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRTQ3NzhCODAxMTVBNTgxQTAw
QjVEMzcyIC8qIEpTQ3VzdG9tRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIxRTU0NUMwMTM0
NjJCMEIwMDkyQTU0NSAvKiBKU0N1c3RvbU5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2su
aCBpbiBIZWFkZXJzICovLAorCQkJCUIxRTU0NUQwMTM0NjJCMEIwMDkyQTU0NSAvKiBKU0N1c3Rv
bU5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
RkU4MEQ3QTgwRTlDMUVEMjAwMEQ2Rjc1IC8qIEpTQ3VzdG9tUG9zaXRpb25DYWxsYmFjay5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJRkU4MEQ3QUEwRTlDMUVEMjAwMEQ2Rjc1IC8qIEpTQ3VzdG9tUG9z
aXRpb25FcnJvckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKIAkJCQkxQTM0MTdDOTBDRUNGRjI1
MDA0OUNCREUgLyogSlNDdXN0b21Wb2lkQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLApAQCAtMjE0
NTQsOCArMjE0NTIsNiBAQAogCQkJCUJDRDlDMkMxMEMxN0I2OUUwMDVDOTBBMiAvKiBKU05hbWVk
Tm9kZU1hcC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTlEMjQ3RjgwRDc1N0UzNDAwRkRGOTU5IC8q
IEpTTmF2aWdhdG9yLmggaW4gSGVhZGVycyAqLywKIAkJCQlCMUU1NDVFMDEzNDYyQjBCMDA5MkE1
NDUgLyogSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvci5oIGluIEhlYWRlcnMgKi8sCi0JCQkJQjFF
NTQ1RTIxMzQ2MkIwQjAwOTJBNTQ1IC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFj
ay5oIGluIEhlYWRlcnMgKi8sCi0JCQkJQjFFNTQ1RTQxMzQ2MkIwQjAwOTJBNTQ1IC8qIEpTTmF2
aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzk0
MzlDMzExNkNGNDk0MDA0OEM3NTAgLyogSlNOb2RlQ3VzdG9tLmggaW4gSGVhZGVycyAqLywKIAkJ
CQkxNDExNUI3MzA5Rjg0Q0Q2MDBDQTRGQzEgLyogSlNOb2RlRmlsdGVyLmggaW4gSGVhZGVycyAq
LywKIAkJCQlCQ0I3NzM2MjBDMTc4NTNEMDAxMzJCQTQgLyogSlNOb2RlRmlsdGVyQ29uZGl0aW9u
LmggaW4gSGVhZGVycyAqLywKQEAgLTI0MDU4LDYgKzI0MDU0LDggQEAKIAkJCQlCQzIwRkI3RjBD
MEU4RTZDMDBEMTQ0N0YgLyogSlNDU1NWYWx1ZUN1c3RvbS5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQlBOEQwNUZBQjBBMjNCMzBGMDA1RTcyMDMgLyogSlNDU1NWYWx1ZUxpc3QuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJRTQ3NzhCN0YxMTVBNTgxQTAwQjVEMzcyIC8qIEpTQ3VzdG9tRXZlbnQuY3Bw
IGluIFNvdXJjZXMgKi8sCisJCQkJQjFFNTQ1QkYxMzQ2MkIwQjAwOTJBNTQ1IC8qIEpTQ3VzdG9t
TmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlC
MUU1NDVDRjEzNDYyQjBCMDA5MkE1NDUgLyogSlNDdXN0b21OYXZpZ2F0b3JVc2VyTWVkaWFTdWNj
ZXNzQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRkU4MEQ3QTcwRTlDMUVEMjAwMEQ2
Rjc1IC8qIEpTQ3VzdG9tUG9zaXRpb25DYWxsYmFjay5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlG
RTgwRDdBOTBFOUMxRUQyMDAwRDZGNzUgLyogSlNDdXN0b21Qb3NpdGlvbkVycm9yQ2FsbGJhY2su
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTFFQzkyNjUwQ0U5MERENDAwRjkwMzA4IC8qIEpTQ3Vz
dG9tU1FMU3RhdGVtZW50RXJyb3JDYWxsYmFjay5jcHAgaW4gU291cmNlcyAqLywKQEAgLTI0MzEx
LDggKzI0MzA5LDYgQEAKIAkJCQlBOUQyNDdGNzBENzU3RTM0MDBGREY5NTkgLyogSlNOYXZpZ2F0
b3IuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTlDNkU2NDkwRDc0NjVEODAwNjQ0MkU5IC8qIEpT
TmF2aWdhdG9yQ3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUIxRTU0NURGMTM0NjJCMEIw
MDkyQTU0NSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yLmNwcCBpbiBTb3VyY2VzICovLAot
CQkJCUIxRTU0NUUxMTM0NjJCMEIwMDkyQTU0NSAvKiBKU05hdmlnYXRvclVzZXJNZWRpYUVycm9y
Q2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJQjFFNTQ1RTMxMzQ2MkIwQjAwOTJBNTQ1
IC8qIEpTTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCTE0REMwRDM3MDlGRUQwNzMwMDdCMDIzNSAvKiBKU05vZGUuY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJQkNEOUMyNjQwQzE3QUE2NzAwNUM5MEEyIC8qIEpTTm9kZUN1c3RvbS5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQkxNDExNUI3MjA5Rjg0Q0Q2MDBDQTRGQzEgLyogSlNOb2RlRmlsdGVy
LmNwcCBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNCaW5kaW5nc0FsbEluT25lLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
QmluZGluZ3NBbGxJbk9uZS5jcHAKaW5kZXggMGYxZGUzNi4uZDRhYjk2ZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNCaW5kaW5nc0FsbEluT25lLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0JpbmRpbmdzQWxsSW5PbmUuY3BwCkBAIC00OCw2
ICs0OCw4IEBACiAjaW5jbHVkZSAiSlNDbGlwYm9hcmRDdXN0b20uY3BwIgogI2luY2x1ZGUgIkpT
Q29uc29sZUN1c3RvbS5jcHAiCiAjaW5jbHVkZSAiSlNDb29yZGluYXRlc0N1c3RvbS5jcHAiCisj
aW5jbHVkZSAiSlNDdXN0b21OYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmNwcCIKKyNp
bmNsdWRlICJKU0N1c3RvbU5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5jcHAiCiAj
aW5jbHVkZSAiSlNDdXN0b21Qb3NpdGlvbkNhbGxiYWNrLmNwcCIKICNpbmNsdWRlICJKU0N1c3Rv
bVBvc2l0aW9uRXJyb3JDYWxsYmFjay5jcHAiCiAjaW5jbHVkZSAiSlNDdXN0b21TUUxTdGF0ZW1l
bnRFcnJvckNhbGxiYWNrLmNwcCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTQ3VzdG9tTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3RvbU5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJh
Y2suY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ5ODhlZmMKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3RvbU5hdmlnYXRv
clVzZXJNZWRpYUVycm9yQ2FsbGJhY2suY3BwCkBAIC0wLDAgKzEsNzEgQEAKKy8qCisgKiBDb3B5
cmlnaHQgKEMpIDIwMTEgRXJpY3Nzb24gQUIuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKgorICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqICAgIGluIHRoZSBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqICAgIGRp
c3RyaWJ1dGlvbi4KKyAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgRXJpY3Nzb24gbm9yIHRoZSBu
YW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9y
IHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMKKyAqICAgIHNvZnR3YXJlIHdpdGhv
dXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMK
KyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBP
UiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1
ZGUgImNvbmZpZy5oIgorCisjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKKworI2luY2x1ZGUgIkpT
Q3VzdG9tTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oIgorCisjaW5jbHVkZSAiRnJh
bWUuaCIKKyNpbmNsdWRlICJKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yLmgiCisjaW5jbHVkZSAi
U2NyaXB0Q29udHJvbGxlci5oIgorI2luY2x1ZGUgPHJ1bnRpbWUvSlNMb2NrLmg+CisKK25hbWVz
cGFjZSBXZWJDb3JlIHsKKwordXNpbmcgbmFtZXNwYWNlIEpTQzsKKworSlNDdXN0b21OYXZpZ2F0
b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrOjpKU0N1c3RvbU5hdmlnYXRvclVzZXJNZWRpYUVycm9y
Q2FsbGJhY2soSlNPYmplY3QqIGNhbGxiYWNrLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2Jq
ZWN0KQorICAgIDogTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjayhnbG9iYWxPYmplY3Qt
PnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSkKKyAgICAsIG1fZGF0YShjYWxsYmFjaywgZ2xvYmFs
T2JqZWN0KQoreworfQorCitib29sIEpTQ3VzdG9tTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxs
YmFjazo6aGFuZGxlRXZlbnQoTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IqIGVycm9yKQoreworICAg
IC8vIEFjdGl2ZURPTU9iamVjdCB3aWxsIG51bGwgb3VyIHBvaW50ZXIgdG8gdGhlIFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQgd2hlbiBpdCBnb2VzIGF3YXkuCisgICAgaWYgKCFzY3JpcHRFeGVjdXRp
b25Db250ZXh0KCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIFJlZlB0cjxKU0N1c3Rv
bU5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2s+IHByb3RlY3QodGhpcyk7CisgICAgSlND
OjpKU0xvY2sgbG9jayhTaWxlbmNlQXNzZXJ0aW9uc09ubHkpOworCisgICAgRXhlY1N0YXRlKiBl
eGVjID0gbV9kYXRhLmdsb2JhbE9iamVjdCgpLT5nbG9iYWxFeGVjKCk7CisgICAgTWFya2VkQXJn
dW1lbnRCdWZmZXIgYXJnczsKKyAgICBhcmdzLmFwcGVuZCh0b0pTKGV4ZWMsIG1fZGF0YS5nbG9i
YWxPYmplY3QoKSwgZXJyb3IpKTsKKworICAgIG1fZGF0YS5pbnZva2VDYWxsYmFjayhhcmdzKTsK
KyAgICByZXR1cm4gdHJ1ZTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYg
Ly8gRU5BQkxFKE1FRElBX1NUUkVBTSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTQ3VzdG9tTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNDdXN0b21OYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxi
YWNrLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWM1ZmQzNAotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ3VzdG9tTmF2aWdhdG9y
VXNlck1lZGlhRXJyb3JDYWxsYmFjay5oCkBAIC0wLDAgKzEsNTYgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMTEgRXJpY3Nzb24gQUIuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKgorICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqICAgIGluIHRoZSBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqICAgIGRpc3Ry
aWJ1dGlvbi4KKyAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgRXJpY3Nzb24gbm9yIHRoZSBuYW1l
cyBvZiBpdHMgY29udHJpYnV0b3JzCisgKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHBy
b21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMKKyAqICAgIHNvZnR3YXJlIHdpdGhvdXQg
c3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAq
ICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBD
T05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBK
U0N1c3RvbU5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2tfaAorI2RlZmluZSBKU0N1c3Rv
bU5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2tfaAorCisjaW5jbHVkZSAiSlNDYWxsYmFj
a0RhdGEuaCIKKyNpbmNsdWRlICJOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmgiCisj
aW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBK
U0N1c3RvbU5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2sgOiBwdWJsaWMgTmF2aWdhdG9y
VXNlck1lZGlhRXJyb3JDYWxsYmFjayB7CitwdWJsaWM6CisgICAgc3RhdGljIFBhc3NSZWZQdHI8
SlNDdXN0b21OYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrPiBjcmVhdGUoSlNDOjpKU09i
amVjdCogY2FsbGJhY2ssIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCisgICAgewor
ICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IEpTQ3VzdG9tTmF2aWdhdG9yVXNlck1lZGlhRXJy
b3JDYWxsYmFjayhjYWxsYmFjaywgZ2xvYmFsT2JqZWN0KSk7CisgICAgfQorCitwcml2YXRlOgor
ICAgIEpTQ3VzdG9tTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjayhKU0M6OkpTT2JqZWN0
KiBjYWxsYmFjaywgSlNET01HbG9iYWxPYmplY3QqKTsKKyAgICB2aXJ0dWFsIGJvb2wgaGFuZGxl
RXZlbnQoTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IqKTsKKworICAgIEpTQ2FsbGJhY2tEYXRhIG1f
ZGF0YTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEpTQ3VzdG9t
TmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFja19oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0N1c3RvbU5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFj
ay5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0N1c3RvbU5hdmlnYXRvclVzZXJN
ZWRpYVN1Y2Nlc3NDYWxsYmFjay5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MC4uN2RkZjcxYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTQ3VzdG9tTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmNwcApAQCAtMCwwICsx
LDcwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDExIEVyaWNzc29uIEFCLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0Ogor
ICoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisg
KiAgICBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlCisgKiAgICBkaXN0cmlidXRpb24uCisgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9m
IEVyaWNzc29uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICogICAgbWF5IGJl
IHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzCisg
KiAgICBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4K
KyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVS
UyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBB
UlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENP
UFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAq
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKworI2lmIEVOQUJMRShNRURJQV9TVFJF
QU0pCisKKyNpbmNsdWRlICJKU0N1c3RvbU5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFj
ay5oIgorCisjaW5jbHVkZSAiRnJhbWUuaCIKKyNpbmNsdWRlICJTY3JpcHRDb250cm9sbGVyLmgi
CisjaW5jbHVkZSA8cnVudGltZS9KU0xvY2suaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCit1
c2luZyBuYW1lc3BhY2UgSlNDOworCitKU0N1c3RvbU5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3ND
YWxsYmFjazo6SlNDdXN0b21OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2soSlNPYmpl
Y3QqIGNhbGxiYWNrLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQorICAgIDogTmF2
aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrKGdsb2JhbE9iamVjdC0+c2NyaXB0RXhlY3V0
aW9uQ29udGV4dCgpKQorICAgICwgbV9kYXRhKGNhbGxiYWNrLCBnbG9iYWxPYmplY3QpCit7Cit9
CisKK2Jvb2wgSlNDdXN0b21OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2s6OmhhbmRs
ZUV2ZW50KGludCBkdW1teSkKK3sKKyAgICAvLyBBY3RpdmVET01PYmplY3Qgd2lsbCBudWxsIG91
ciBwb2ludGVyIHRvIHRoZSBTY3JpcHRFeGVjdXRpb25Db250ZXh0IHdoZW4gaXQgZ29lcyBhd2F5
LgorICAgIGlmICghc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKQorICAgICAgICByZXR1cm4gZmFs
c2U7CisKKyAgICBSZWZQdHI8SlNDdXN0b21OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJh
Y2s+IHByb3RlY3QodGhpcyk7CisgICAgSlNDOjpKU0xvY2sgbG9jayhTaWxlbmNlQXNzZXJ0aW9u
c09ubHkpOworCisgICAgTWFya2VkQXJndW1lbnRCdWZmZXIgYXJnczsKKyAgICAvLyBGSVhNRTog
QXBwZW5kIFN0cmVhbSB0byBhcmd1bWVudCBidWZmZXIgd2hlbiBpdCBiZWNvbWVzIGF2YWlsYWJs
ZS4KKyAgICBhcmdzLmFwcGVuZChqc051bWJlcihkdW1teSkpOworCisgICAgbV9kYXRhLmludm9r
ZUNhbGxiYWNrKGFyZ3MpOworICAgIHJldHVybiB0cnVlOworfQorCit9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoTUVESUFfU1RSRUFNKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNDdXN0b21OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNz
Q2FsbGJhY2suaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ3VzdG9tTmF2aWdhdG9y
VXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMC4uNDhmYzFiYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTQ3VzdG9tTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmgKQEAgLTAsMCAr
MSw1NiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBFcmljc3NvbiBBQi4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoK
KyAqCisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgor
ICogICAgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZQorICogICAgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0aGUgbmFtZSBv
ZiBFcmljc3NvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAqICAgIG1heSBi
ZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcwor
ICogICAgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERF
UlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQ
QVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBD
T1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisg
KiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KKyAqLworCisjaWZuZGVmIEpTQ3VzdG9tTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0Nh
bGxiYWNrX2gKKyNkZWZpbmUgSlNDdXN0b21OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJh
Y2tfaAorCisjaW5jbHVkZSAiSlNDYWxsYmFja0RhdGEuaCIKKyNpbmNsdWRlICJOYXZpZ2F0b3JV
c2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaCIKKyNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgorCitu
YW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIEpTQ3VzdG9tTmF2aWdhdG9yVXNlck1lZGlhU3Vj
Y2Vzc0NhbGxiYWNrIDogcHVibGljIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjayB7
CitwdWJsaWM6CisgICAgc3RhdGljIFBhc3NSZWZQdHI8SlNDdXN0b21OYXZpZ2F0b3JVc2VyTWVk
aWFTdWNjZXNzQ2FsbGJhY2s+IGNyZWF0ZShKU0M6OkpTT2JqZWN0KiBjYWxsYmFjaywgSlNET01H
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKKyAgICB7CisgICAgICAgIHJldHVybiBhZG9wdFJl
ZihuZXcgSlNDdXN0b21OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2soY2FsbGJhY2ss
IGdsb2JhbE9iamVjdCkpOworICAgIH0KKworcHJpdmF0ZToKKyAgICBKU0N1c3RvbU5hdmlnYXRv
clVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjayhKU0M6OkpTT2JqZWN0KiBjYWxsYmFjaywgSlNET01H
bG9iYWxPYmplY3QqKTsKKyAgICB2aXJ0dWFsIGJvb2wgaGFuZGxlRXZlbnQoaW50IGR1bW15KTsK
KworICAgIEpTQ2FsbGJhY2tEYXRhIG1fZGF0YTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKKworI2VuZGlmIC8vIEpTQ3VzdG9tTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNr
X2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTTmF2aWdhdG9yQ3Vz
dG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTTmF2aWdhdG9yQ3VzdG9tLmNw
cAppbmRleCA1NGJiYzE0Li5hYTlhYWI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU05hdmlnYXRvckN1c3RvbS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvSlNOYXZpZ2F0b3JDdXN0b20uY3BwCkBAIC0yNCw4ICsyNCw4IEBACiAjaW5jbHVkZSAi
SlNOYXZpZ2F0b3IuaCIKIAogI2luY2x1ZGUgIkNhbGxiYWNrRnVuY3Rpb24uaCIKLSNpbmNsdWRl
ICJKU05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2suaCIKLSNpbmNsdWRlICJKU05hdmln
YXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oIgorI2luY2x1ZGUgIkpTQ3VzdG9tTmF2aWdh
dG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjay5oIgorI2luY2x1ZGUgIkpTQ3VzdG9tTmF2aWdhdG9y
VXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmgiCiAjaW5jbHVkZSAiTmF2aWdhdG9yLmgiCiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKQEAgLTQxLDExICs0MSwxMSBAQCBKU1ZhbHVlIEpTTmF2aWdhdG9y
Ojp3ZWJraXRHZXRVc2VyTWVkaWEoRXhlY1N0YXRlKiBleGVjKQogICAgIGlmIChleGVjLT5oYWRF
eGNlcHRpb24oKSkKICAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CiAKLSAgICBSZWZQdHI8
TmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2sgPSBjcmVh
dGVGdW5jdGlvbk9ubHlDYWxsYmFjazxKU05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFj
az4oZXhlYywgc3RhdGljX2Nhc3Q8SlNET01HbG9iYWxPYmplY3QqPihleGVjLT5sZXhpY2FsR2xv
YmFsT2JqZWN0KCkpLCBleGVjLT5hcmd1bWVudCgxKSk7CisgICAgUmVmUHRyPE5hdmlnYXRvclVz
ZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrID0gY3JlYXRlRnVuY3Rpb25P
bmx5Q2FsbGJhY2s8SlNDdXN0b21OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2s+KGV4
ZWMsIHN0YXRpY19jYXN0PEpTRE9NR2xvYmFsT2JqZWN0Kj4oZXhlYy0+bGV4aWNhbEdsb2JhbE9i
amVjdCgpKSwgZXhlYy0+YXJndW1lbnQoMSkpOwogICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24o
KSkKICAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CiAKLSAgICBSZWZQdHI8TmF2aWdhdG9y
VXNlck1lZGlhRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFjayA9IGNyZWF0ZUZ1bmN0aW9uT25s
eUNhbGxiYWNrPEpTTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjaz4oZXhlYywgc3RhdGlj
X2Nhc3Q8SlNET01HbG9iYWxPYmplY3QqPihleGVjLT5sZXhpY2FsR2xvYmFsT2JqZWN0KCkpLCBl
eGVjLT5hcmd1bWVudCgyKSwgQ2FsbGJhY2tBbGxvd1VuZGVmaW5lZCk7CisgICAgUmVmUHRyPE5h
dmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2sgPSBjcmVhdGVGdW5j
dGlvbk9ubHlDYWxsYmFjazxKU0N1c3RvbU5hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2s+
KGV4ZWMsIHN0YXRpY19jYXN0PEpTRE9NR2xvYmFsT2JqZWN0Kj4oZXhlYy0+bGV4aWNhbEdsb2Jh
bE9iamVjdCgpKSwgZXhlYy0+YXJndW1lbnQoMiksIENhbGxiYWNrQWxsb3dVbmRlZmluZWQpOwog
ICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKICAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVk
KCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2aWdhdG9yVXNlck1lZGlh
RXJyb3JDYWxsYmFjay5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3JVc2VyTWVkaWFF
cnJvckNhbGxiYWNrLmgKaW5kZXggMTlmYjlmNi4uMjU3ZTBjYyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmgKQEAgLTI3
LDE1ICsyNywyMCBAQAogCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKIAorI2luY2x1ZGUgIkFj
dGl2ZURPTU9iamVjdC5oIgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIAogY2xhc3MgTmF2aWdhdG9yVXNlck1lZGlhRXJyb3I7CiAKLWNsYXNzIE5h
dmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJhY2sgOiBwdWJsaWMgUmVmQ291bnRlZDxOYXZpZ2F0
b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrPiB7CitjbGFzcyBOYXZpZ2F0b3JVc2VyTWVkaWFFcnJv
ckNhbGxiYWNrIDogcHVibGljIFJlZkNvdW50ZWQ8TmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxs
YmFjaz4sIHB1YmxpYyBBY3RpdmVET01PYmplY3QgewogcHVibGljOgorICAgIE5hdmlnYXRvclVz
ZXJNZWRpYUVycm9yQ2FsbGJhY2soU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCkKKyAg
ICAgICAgOiBBY3RpdmVET01PYmplY3QoY29udGV4dCwgdGhpcykKKyAgICB7IH0KICAgICB2aXJ0
dWFsIH5OYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrKCkgeyB9CisKICAgICB2aXJ0dWFs
IGJvb2wgaGFuZGxlRXZlbnQoTmF2aWdhdG9yVXNlck1lZGlhRXJyb3IqKSA9IDA7CiB9OwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2Fs
bGJhY2suaWRsIGIvU291cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNh
bGxiYWNrLmlkbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjY3NDhjZC4uMDAwMDAw
MAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvclVzZXJNZWRpYUVycm9yQ2FsbGJh
Y2suaWRsCisrKyAvZGV2L251bGwKQEAgLTEsMzMgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAo
QykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgot
ICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0g
KgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECi0gKiBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UgQVJFCi0gKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
IElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
Ci0gKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Ci0gKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KLSAqIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUwotICogU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotbW9k
dWxlIHdpbmRvdyB7Ci0gICAgaW50ZXJmYWNlIFsKLSAgICAgICAgQ29uZGl0aW9uYWw9TUVESUFf
U1RSRUFNLAotICAgICAgICBDYWxsYmFjaz1GdW5jdGlvbk9ubHkKLSAgICBdIE5hdmlnYXRvclVz
ZXJNZWRpYUVycm9yQ2FsbGJhY2sgewotICAgICAgICBib29sZWFuIGhhbmRsZUV2ZW50KGluIE5h
dmlnYXRvclVzZXJNZWRpYUVycm9yIGVycm9yKTsKLSAgICB9OwotCi19CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaApp
bmRleCA3NzA2OTNkLi43ODFlOGMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL05h
dmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmgKQEAgLTI3LDEzICsyNywxOCBA
QAogCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKIAorI2luY2x1ZGUgIkFjdGl2ZURPTU9iamVj
dC5oIgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAotY2xhc3MgTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrIDogcHVibGljIFJlZkNv
dW50ZWQ8TmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrPiB7CitjbGFzcyBOYXZpZ2F0
b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2sgOiBwdWJsaWMgUmVmQ291bnRlZDxOYXZpZ2F0b3JV
c2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2s+LCBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0IHsKIHB1Ymxp
YzoKKyAgICBOYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2soU2NyaXB0RXhlY3V0aW9u
Q29udGV4dCogY29udGV4dCkKKyAgICAgICAgOiBBY3RpdmVET01PYmplY3QoY29udGV4dCwgdGhp
cykKKyAgICB7IH0KICAgICB2aXJ0dWFsIH5OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJh
Y2soKSB7IH0KKwogICAgIC8vIEZJWE1FOiBzZXQgY29ycmVjdCB0eXBlIHdoZW4gdGhlIEdlbmVy
YXRlZFN0cmVhbSBjbGFzcyBpcyBhdmFpbGFibGUuCiAgICAgLy8gdmlydHVhbCBib29sIGhhbmRs
ZUV2ZW50KEdlbmVyYXRlZFN0cmVhbSopID0gMDsKICAgICB2aXJ0dWFsIGJvb2wgaGFuZGxlRXZl
bnQoaW50IGR1bW15KSA9IDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL05hdmln
YXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL05h
dmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5pZGwKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IGUxMjU0MGMuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9OYXZp
Z2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaWRsCisrKyAvZGV2L251bGwKQEAgLTEsMzUg
KzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0Ogot
ICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQotICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCi0g
KiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFRIRSBJTVBMSUVECi0gKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCi0gKiBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZP
UiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCi0gKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Ci0gKiBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04KLSAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0Ug
T0YgVEhJUwotICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotbW9kdWxlIHdpbmRvdyB7Ci0gICAgaW50ZXJmYWNlIFsK
LSAgICAgICAgQ29uZGl0aW9uYWw9TUVESUFfU1RSRUFNLAotICAgICAgICBDYWxsYmFjaz1GdW5j
dGlvbk9ubHkKLSAgICBdIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjayB7Ci0gICAg
ICAgIC8vIEZJWE1FOiBpbXBsZW1lbnQgdGhlIGNvcnJlY3QgdHlwZSB3aGVuIHRoZSBHZW5lcmF0
ZWRTdHJlYW0gY2xhc3MgaXMgYXZhaWxhYmxlLgotICAgICAgICAvLyBib29sZWFuIGhhbmRsZUV2
ZW50KGluIEdlbmVyYXRlZFN0cmVhbSBzdHJlYW0pOwotICAgICAgICBib29sZWFuIGhhbmRsZUV2
ZW50KGluIGludCBkdW1teSk7Ci0gICAgfTsKLQotfQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>92619</attachid>
            <date>2011-05-06 12:09:24 -0700</date>
            <delta_ts>2011-05-11 05:51:34 -0700</delta_ts>
            <desc>Updated patch</desc>
            <filename>getUserMedia_jsc_2.patch</filename>
            <type>text/plain</type>
            <size>3021</size>
            <attacher name="Adam Bergkvist">adam.bergkvist</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA0NjcwY2ViLi5kNTM2MTk3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAg
QEAKKzIwMTEtMDUtMDYgIEFkYW0gQmVyZ2t2aXN0ICA8YWRhbS5iZXJna3Zpc3RAZXJpY3Nzb24u
Y29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEZp
eCBnZXRVc2VyTWVkaWEgY2FsbGJhY2sgYmluZGluZ3MgZm9yIEpTQworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjAxNzQKKworICAgICAgICBDaGFuZ2Vk
IGR1bW15IGFyZ3VtZW50IHR5cGUgdG8gbWFrZSB0aGUgYnJva2VuIGdlbmVyYXRlZCBKU0MgYmlu
ZGluZ3Mgd29yaworICAgICAgICBhbmQgYWRkZWQgZWFybHkgYXJndW1lbnQgY291bnQgY2hlY2sg
aW4gd2Via2l0R2V0VXNlck1lZGlhKCkuCisKKyAgICAgICAgRnVuY3Rpb25hbGl0eSBjb3ZlcmVk
IGJ5IGV4aXN0aW5nIHRlc3RzLgorCisgICAgICAgICogYmluZGluZ3MvanMvSlNOYXZpZ2F0b3JD
dXN0b20uY3BwOgorICAgICAgICAoV2ViQ29yZTo6SlNOYXZpZ2F0b3I6OndlYmtpdEdldFVzZXJN
ZWRpYSk6CisgICAgICAgICogcGFnZS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2su
aDoKKyAgICAgICAgKiBwYWdlL05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5pZGw6
CisKIDIwMTEtMDUtMDYgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CiAK
ICAgICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0pTTmF2aWdhdG9yQ3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTTmF2aWdhdG9yQ3VzdG9tLmNwcAppbmRleCA1NGJiYzE0Li5hZGJmNTIwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU05hdmlnYXRvckN1c3RvbS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNOYXZpZ2F0b3JDdXN0b20uY3Bw
CkBAIC0yNCw2ICsyNCw3IEBACiAjaW5jbHVkZSAiSlNOYXZpZ2F0b3IuaCIKIAogI2luY2x1ZGUg
IkNhbGxiYWNrRnVuY3Rpb24uaCIKKyNpbmNsdWRlICJFeGNlcHRpb25Db2RlLmgiCiAjaW5jbHVk
ZSAiSlNOYXZpZ2F0b3JVc2VyTWVkaWFFcnJvckNhbGxiYWNrLmgiCiAjaW5jbHVkZSAiSlNOYXZp
Z2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaCIKICNpbmNsdWRlICJOYXZpZ2F0b3IuaCIK
QEAgLTM2LDYgKzM3LDEwIEBAIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiBKU1ZhbHVlIEpTTmF2aWdh
dG9yOjp3ZWJraXRHZXRVc2VyTWVkaWEoRXhlY1N0YXRlKiBleGVjKQogewogICAgIC8vIEFyZ3Vt
ZW50czogT3B0aW9ucywgc3VjY2Vzc0NhbGxiYWNrLCAob3B0aW9uYWwpZXJyb3JDYWxsYmFjawor
ICAgIGlmIChleGVjLT5hcmd1bWVudENvdW50KCkgPCAyKSB7CisgICAgICAgIHNldERPTUV4Y2Vw
dGlvbihleGVjLCBUWVBFX01JU01BVENIX0VSUik7CisgICAgICAgIHJldHVybiBqc1VuZGVmaW5l
ZCgpOworICAgIH0KIAogICAgIFN0cmluZyBvcHRpb25zID0gdXN0cmluZ1RvU3RyaW5nKGV4ZWMt
PmFyZ3VtZW50KDApLnRvU3RyaW5nKGV4ZWMpKTsKICAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9u
KCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvclVzZXJNZWRpYVN1
Y2Nlc3NDYWxsYmFjay5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3JVc2VyTWVkaWFT
dWNjZXNzQ2FsbGJhY2suaAppbmRleCA3NzA2OTNkLi42NmQ0MDgyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmgK
QEAgLTM2LDcgKzM2LDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgfk5hdmlnYXRvclVzZXJNZWRp
YVN1Y2Nlc3NDYWxsYmFjaygpIHsgfQogICAgIC8vIEZJWE1FOiBzZXQgY29ycmVjdCB0eXBlIHdo
ZW4gdGhlIEdlbmVyYXRlZFN0cmVhbSBjbGFzcyBpcyBhdmFpbGFibGUuCiAgICAgLy8gdmlydHVh
bCBib29sIGhhbmRsZUV2ZW50KEdlbmVyYXRlZFN0cmVhbSopID0gMDsKLSAgICB2aXJ0dWFsIGJv
b2wgaGFuZGxlRXZlbnQoaW50IGR1bW15KSA9IDA7CisgICAgdmlydHVhbCBib29sIGhhbmRsZUV2
ZW50KGNvbnN0IFN0cmluZyYgZHVtbXkpID0gMDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2aWdhdG9yVXNlck1lZGlhU3Vj
Y2Vzc0NhbGxiYWNrLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2aWdhdG9yVXNlck1lZGlh
U3VjY2Vzc0NhbGxiYWNrLmlkbAppbmRleCBlMTI1NDBjLi42MTk5NzY2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5pZGwK
KysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJh
Y2suaWRsCkBAIC0yOSw3ICsyOSw3IEBAIG1vZHVsZSB3aW5kb3cgewogICAgIF0gTmF2aWdhdG9y
VXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrIHsKICAgICAgICAgLy8gRklYTUU6IGltcGxlbWVudCB0
aGUgY29ycmVjdCB0eXBlIHdoZW4gdGhlIEdlbmVyYXRlZFN0cmVhbSBjbGFzcyBpcyBhdmFpbGFi
bGUuCiAgICAgICAgIC8vIGJvb2xlYW4gaGFuZGxlRXZlbnQoaW4gR2VuZXJhdGVkU3RyZWFtIHN0
cmVhbSk7Ci0gICAgICAgIGJvb2xlYW4gaGFuZGxlRXZlbnQoaW4gaW50IGR1bW15KTsKKyAgICAg
ICAgYm9vbGVhbiBoYW5kbGVFdmVudChpbiBET01TdHJpbmcgZHVtbXkpOwogICAgIH07CiAKIH0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>93112</attachid>
            <date>2011-05-11 05:51:34 -0700</date>
            <delta_ts>2011-05-30 08:00:20 -0700</delta_ts>
            <desc>Updated patch</desc>
            <filename>getUserMedia_jsc_3.patch</filename>
            <type>text/plain</type>
            <size>1965</size>
            <attacher name="Adam Bergkvist">adam.bergkvist</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA3ZjcxNzBlLi4zOTdiYmM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcg
QEAKKzIwMTEtMDUtMTEgIEFkYW0gQmVyZ2t2aXN0ICA8YWRhbS5iZXJna3Zpc3RAZXJpY3Nzb24u
Y29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEZp
eCBnZXRVc2VyTWVkaWEgY2FsbGJhY2sgYmluZGluZ3MgZm9yIEpTQworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjAxNzQKKworICAgICAgICBDaGFuZ2Vk
IGR1bW15IGFyZ3VtZW50IHR5cGUgdG8gbWFrZSB0aGUgYnJva2VuIGdlbmVyYXRlZCBKU0MgYmlu
ZGluZ3Mgd29yay4KKworICAgICAgICBGdW5jdGlvbmFsaXR5IGNvdmVyZWQgYnkgZXhpc3Rpbmcg
dGVzdHMuCisKKyAgICAgICAgKiBwYWdlL05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFj
ay5oOgorICAgICAgICAqIHBhZ2UvTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmlk
bDoKKwogMjAxMS0wNS0xMSAgRW1pbCBBIEVrbHVuZCAgPGVhZUBjaHJvbWl1bS5vcmc+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL05hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5oIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9OYXZpZ2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaAppbmRleCA3NzA2OTNk
Li42NmQ0MDgyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvclVzZXJN
ZWRpYVN1Y2Nlc3NDYWxsYmFjay5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2aWdhdG9y
VXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmgKQEAgLTM2LDcgKzM2LDcgQEAgcHVibGljOgogICAg
IHZpcnR1YWwgfk5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjaygpIHsgfQogICAgIC8v
IEZJWE1FOiBzZXQgY29ycmVjdCB0eXBlIHdoZW4gdGhlIEdlbmVyYXRlZFN0cmVhbSBjbGFzcyBp
cyBhdmFpbGFibGUuCiAgICAgLy8gdmlydHVhbCBib29sIGhhbmRsZUV2ZW50KEdlbmVyYXRlZFN0
cmVhbSopID0gMDsKLSAgICB2aXJ0dWFsIGJvb2wgaGFuZGxlRXZlbnQoaW50IGR1bW15KSA9IDA7
CisgICAgdmlydHVhbCBib29sIGhhbmRsZUV2ZW50KGNvbnN0IFN0cmluZyYgZHVtbXkpID0gMDsK
IH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmlkbCBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrLmlkbAppbmRleCBlMTI1
NDBjLi42MTk5NzY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvclVz
ZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjay5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9OYXZp
Z2F0b3JVc2VyTWVkaWFTdWNjZXNzQ2FsbGJhY2suaWRsCkBAIC0yOSw3ICsyOSw3IEBAIG1vZHVs
ZSB3aW5kb3cgewogICAgIF0gTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNrIHsKICAg
ICAgICAgLy8gRklYTUU6IGltcGxlbWVudCB0aGUgY29ycmVjdCB0eXBlIHdoZW4gdGhlIEdlbmVy
YXRlZFN0cmVhbSBjbGFzcyBpcyBhdmFpbGFibGUuCiAgICAgICAgIC8vIGJvb2xlYW4gaGFuZGxl
RXZlbnQoaW4gR2VuZXJhdGVkU3RyZWFtIHN0cmVhbSk7Ci0gICAgICAgIGJvb2xlYW4gaGFuZGxl
RXZlbnQoaW4gaW50IGR1bW15KTsKKyAgICAgICAgYm9vbGVhbiBoYW5kbGVFdmVudChpbiBET01T
dHJpbmcgZHVtbXkpOwogICAgIH07CiAKIH0K
</data>
<flag name="review"
          id="86218"
          type_id="1"
          status="-"
          setter="tonyg"
    />
    <flag name="commit-queue"
          id="86824"
          type_id="3"
          status="-"
          setter="tonyg"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>95423</attachid>
            <date>2011-05-31 06:04:35 -0700</date>
            <delta_ts>2011-05-31 06:46:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-60174-20110531150433.patch</filename>
            <type>text/plain</type>
            <size>1420</size>
            <attacher name="Tommy Widenflycht">tommyw</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODc3MjEKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA3YjMxMmEwMGM3NDM0NWNl
YzExZGViYjZkZmE2OTcyYTc0ZTZlMzA0Li43MzhjYzg2YWE1ZjNhMzQ2YWEwOWVhMDZmM2UyOTlj
NWNiOGIwMjMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTEtMDUtMzEgIFRvbW15
IFdpZGVuZmx5Y2h0ICA8dG9tbXl3QGdvb2dsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRml4IGdldFVzZXJNZWRpYSBjYWxsYmFjayBiaW5k
aW5ncyBmb3IgSlNDLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NjAxNzQKKworICAgICAgICBUaGlzIHBhdGNoIGluaXRpYWxpemVzIHRoZSBleGNlcHRp
b24gY29kZSB2YXJpYWJsZSB0byAwLgorCisgICAgICAgIFRlc3Q6IGZhc3QvZG9tL01lZGlhU3Ry
ZWFtL2FyZ3VtZW50LXR5cGVzLmh0bWwKKworICAgICAgICAqIGJpbmRpbmdzL2pzL0pTTmF2aWdh
dG9yQ3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkpTTmF2aWdhdG9yOjp3ZWJraXRHZXRV
c2VyTWVkaWEpOgorCiAyMDExLTA1LTMxICBPbGl2ZXIgVmFyZ2EgIDxWYXJnYS5PbGl2ZXJAc3R1
ZC51LXN6ZWdlZC5odT4KIAogICAgICAgICBSZXZpZXdlZCBieSBOaWtvbGFzIFppbW1lcm1hbm4u
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU05hdmlnYXRvckN1c3Rv
bS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU05hdmlnYXRvckN1c3RvbS5jcHAK
aW5kZXggYjlkM2Y2NTUyZGJmZDM1YjEwZjg1ZTc5ZjQyZWVjYjJjMTUyMjE0Zi4uMTA3ZGFlYjJm
Y2NhZTQzYzRkOWIxZjUwYTJhM2ExOGI1MmYyMTgzMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNOYXZpZ2F0b3JDdXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTTmF2aWdhdG9yQ3VzdG9tLmNwcApAQCAtNTAsNyArNTAsNyBAQCBKU1Zh
bHVlIEpTTmF2aWdhdG9yOjp3ZWJraXRHZXRVc2VyTWVkaWEoRXhlY1N0YXRlKiBleGVjKQogICAg
IGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKICAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7
CiAKLSAgICBFeGNlcHRpb25Db2RlIGVjOworICAgIEV4Y2VwdGlvbkNvZGUgZWMgPSAwOwogICAg
IG1faW1wbC0+d2Via2l0R2V0VXNlck1lZGlhKG9wdGlvbnMsIHN1Y2Nlc3NDYWxsYmFjay5yZWxl
YXNlKCksIGVycm9yQ2FsbGJhY2sucmVsZWFzZSgpLCBlYyk7CiAKICAgICBpZiAoZWMpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>