<?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>89542</bug_id>
          
          <creation_ts>2012-06-19 18:59:16 -0700</creation_ts>
          <short_desc>Add runtime flag to enable/disable CSS variables (in addition to existing compile-time flag).</short_desc>
          <delta_ts>2012-06-26 20:14:42 -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>CSS</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>90040</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Luke Macpherson">macpherson</reporter>
          <assigned_to name="Luke Macpherson">macpherson</assigned_to>
          <cc>abarth</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>dglazkov</cc>
    
    <cc>fishd</cc>
    
    <cc>hclam</cc>
    
    <cc>jamesr</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>tkent+wkapi</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>653087</commentid>
    <comment_count>0</comment_count>
    <who name="Luke Macpherson">macpherson</who>
    <bug_when>2012-06-19 18:59:16 -0700</bug_when>
    <thetext>Add runtime flag to enable/disable CSS variables (in addition to existing compile-time flag).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>653088</commentid>
    <comment_count>1</comment_count>
      <attachid>148483</attachid>
    <who name="Luke Macpherson">macpherson</who>
    <bug_when>2012-06-19 19:00:06 -0700</bug_when>
    <thetext>Created attachment 148483
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>653090</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-19 19:01:36 -0700</bug_when>
    <thetext>Please wait for approval from abarth@webkit.org, dglazkov@chromium.org, fishd@chromium.org, jamesr@chromium.org or tkent@chromium.org before submitting, as this patch contains changes to the Chromium public API. See also https://trac.webkit.org/wiki/ChromiumWebKitAPI.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>653091</commentid>
    <comment_count>3</comment_count>
    <who name="Luke Macpherson">macpherson</who>
    <bug_when>2012-06-19 19:01:48 -0700</bug_when>
    <thetext>Hi Dimitri, could you please take a look and let me know if this is heading in direction you wanted?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>653110</commentid>
    <comment_count>4</comment_count>
      <attachid>148483</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2012-06-19 19:29:04 -0700</bug_when>
    <thetext>Comment on attachment 148483
Patch

yes, I think this looks right.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>653166</commentid>
    <comment_count>5</comment_count>
      <attachid>148483</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-19 21:22:11 -0700</bug_when>
    <thetext>Comment on attachment 148483
Patch

Attachment 148483 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/13001076</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>653205</commentid>
    <comment_count>6</comment_count>
      <attachid>148483</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-19 22:31:10 -0700</bug_when>
    <thetext>Comment on attachment 148483
Patch

Attachment 148483 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/13009081</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>653243</commentid>
    <comment_count>7</comment_count>
      <attachid>148483</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-19 23:34:25 -0700</bug_when>
    <thetext>Comment on attachment 148483
Patch

Attachment 148483 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/13003115</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>654023</commentid>
    <comment_count>8</comment_count>
    <who name="Luke Macpherson">macpherson</who>
    <bug_when>2012-06-20 17:08:19 -0700</bug_when>
    <thetext>I&apos;m going to expose the runtime flag to JS for testing and modify the tests to turn it on at runtime. Expect another patch with those changes soon.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>654243</commentid>
    <comment_count>9</comment_count>
      <attachid>148729</attachid>
    <who name="Luke Macpherson">macpherson</who>
    <bug_when>2012-06-20 22:17:18 -0700</bug_when>
    <thetext>Created attachment 148729
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>654284</commentid>
    <comment_count>10</comment_count>
      <attachid>148729</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-20 23:41:06 -0700</bug_when>
    <thetext>Comment on attachment 148729
Patch

Attachment 148729 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/13036019</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>655111</commentid>
    <comment_count>11</comment_count>
      <attachid>148933</attachid>
    <who name="Luke Macpherson">macpherson</who>
    <bug_when>2012-06-21 18:20:15 -0700</bug_when>
    <thetext>Created attachment 148933
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>655202</commentid>
    <comment_count>12</comment_count>
      <attachid>148951</attachid>
    <who name="Luke Macpherson">macpherson</who>
    <bug_when>2012-06-21 20:32:04 -0700</bug_when>
    <thetext>Created attachment 148951
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>655506</commentid>
    <comment_count>13</comment_count>
      <attachid>148951</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2012-06-22 09:29:30 -0700</bug_when>
    <thetext>Comment on attachment 148951
Patch

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

Looks good. Please take care of the comments before landing.

&gt; Source/WebCore/ChangeLog:8
&gt; +        No new tests.

Actually, you _are_ making changes to tests, so perhaps a more accurate way to say it would be &quot;Tests adapted to use this functionality.&quot;

&gt; Source/WebCore/ChangeLog:16
&gt; +        (WebCore::CSSParser::detectDashToken):
&gt; +        (WebCore::CSSParser::lex):

I don&apos;t see where you&apos;re making changes to these two functions in the patch.

&gt; Source/WebCore/css/CSSParser.cpp:1027
&gt; +bool CSSParser::parseValue(StylePropertySet* declaration, CSSPropertyID propertyID, const String&amp; string, bool important, Document* document)

I am not sure what this function is doing here in this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>656263</commentid>
    <comment_count>14</comment_count>
    <who name="Luke Macpherson">macpherson</who>
    <bug_when>2012-06-24 16:59:13 -0700</bug_when>
    <thetext>(In reply to comment #13)
&gt; (From update of attachment 148951 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=148951&amp;action=review
&gt; 
&gt; Looks good. Please take care of the comments before landing.
&gt;
&gt; &gt; Source/WebCore/ChangeLog:8
&gt; &gt; +        No new tests.
&gt; 
&gt; Actually, you _are_ making changes to tests, so perhaps a more accurate way to say it would be &quot;Tests adapted to use this functionality.&quot;

Changelog updated.

&gt; &gt; Source/WebCore/ChangeLog:16
&gt; &gt; +        (WebCore::CSSParser::detectDashToken):
&gt; &gt; +        (WebCore::CSSParser::lex):
&gt; 
&gt; I don&apos;t see where you&apos;re making changes to these two functions in the patch.

Line 8552 (in detectDashToken) now checks the runtime flag.
Line 8894 (in lex) now checks the runtime flag.
 
&gt; &gt; Source/WebCore/css/CSSParser.cpp:1027
&gt; &gt; +bool CSSParser::parseValue(StylePropertySet* declaration, CSSPropertyID propertyID, const String&amp; string, bool important, Document* document)
&gt; 
&gt; I am not sure what this function is doing here in this patch.

This is a static function that needs to construct a parser context. Because the enable css variables runtime flag is set at the document settings level we need to pass it in here in order to construct a parser context with the right set of flags enabled. That the existing static function doesn&apos;t do this could be considered a bug because it means that other flags like enable css regions could also be ignored.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>656266</commentid>
    <comment_count>15</comment_count>
      <attachid>149208</attachid>
    <who name="Luke Macpherson">macpherson</who>
    <bug_when>2012-06-24 17:00:57 -0700</bug_when>
    <thetext>Created attachment 149208
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>656324</commentid>
    <comment_count>16</comment_count>
      <attachid>149208</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-24 19:04:04 -0700</bug_when>
    <thetext>Comment on attachment 149208
Patch for landing

Clearing flags on attachment: 149208

Committed r121129: &lt;http://trac.webkit.org/changeset/121129&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>656325</commentid>
    <comment_count>17</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-24 19:04:10 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>656916</commentid>
    <comment_count>18</comment_count>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2012-06-25 15:19:27 -0700</bug_when>
    <thetext>Reverted r121129 for reason:

Chromium ASan failure: crbug.com/134402

Committed r121187: &lt;http://trac.webkit.org/changeset/121187&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>657048</commentid>
    <comment_count>19</comment_count>
      <attachid>149403</attachid>
    <who name="Luke Macpherson">macpherson</who>
    <bug_when>2012-06-25 17:19:12 -0700</bug_when>
    <thetext>Created attachment 149403
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>657054</commentid>
    <comment_count>20</comment_count>
    <who name="Luke Macpherson">macpherson</who>
    <bug_when>2012-06-25 17:26:46 -0700</bug_when>
    <thetext>Second patch for landing is identical except that it doesn&apos;t flip the compile-time enable flag on for chrome yet. That can happen in another patch when we&apos;re ready for it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>657290</commentid>
    <comment_count>21</comment_count>
      <attachid>149403</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-25 22:24:13 -0700</bug_when>
    <thetext>Comment on attachment 149403
Patch for landing

Clearing flags on attachment: 149403

Committed r121229: &lt;http://trac.webkit.org/changeset/121229&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>657291</commentid>
    <comment_count>22</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-25 22:24:20 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>658201</commentid>
    <comment_count>23</comment_count>
      <attachid>149403</attachid>
    <who name="Luke Macpherson">macpherson</who>
    <bug_when>2012-06-26 18:19:49 -0700</bug_when>
    <thetext>Comment on attachment 149403
Patch for landing

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

&gt; Source/WebCore/page/Settings.h:336
&gt; +        bool cssVariablesEnabled() const { return true; }

Oh dear, this shouldn&apos;t always return true. I&apos;ll upload a patch to fix promptly.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>148483</attachid>
            <date>2012-06-19 19:00:06 -0700</date>
            <delta_ts>2012-06-20 22:17:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-89542-20120620120004.patch</filename>
            <type>text/plain</type>
            <size>10600</size>
            <attacher name="Luke Macpherson">macpherson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIwNzc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWVkZGE2NDcyMjFkNDRl
YzlhOGJhNDdiZjEzZjM4MWQ4ODE0OTkzOS4uNGM3MzMwYzQxNGFiMzQzMzEyNDU4NmQyMGZhNWFh
YmIzYWE0ZDI1MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDEyLTA2LTE5ICBMdWtl
IE1hY3BoZXJzb24gIDxtYWNwaGVyc29uQGNocm9taXVtLm9yZz4KKworICAgICAgICBBZGQgcnVu
dGltZSBmbGFnIHRvIGVuYWJsZS9kaXNhYmxlIENTUyB2YXJpYWJsZXMgKGluIGFkZGl0aW9uIHRv
IGV4aXN0aW5nIGNvbXBpbGUtdGltZSBmbGFnKS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTg5NTQyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLgorCisgICAgICAgICogY3NzL0NTU1Bh
cnNlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NQYXJzZXJDb250ZXh0OjpDU1NQYXJzZXJD
b250ZXh0KToKKyAgICAgICAgKFdlYkNvcmU6Om9wZXJhdG9yPT0pOgorICAgICAgICAoV2ViQ29y
ZTo6Q1NTUGFyc2VyOjpjc3NWYXJpYWJsZXNFbmFibGVkKToKKyAgICAgICAgKFdlYkNvcmUpOgor
ICAgICAgICAoV2ViQ29yZTo6Q1NTUGFyc2VyOjpkZXRlY3REYXNoVG9rZW4pOgorICAgICAgICAo
V2ViQ29yZTo6Q1NTUGFyc2VyOjpsZXgpOgorICAgICAgICAqIGNzcy9DU1NQYXJzZXIuaDoKKyAg
ICAgICAgKENTU1BhcnNlcik6CisgICAgICAgICogY3NzL0NTU1BhcnNlck1vZGUuaDoKKyAgICAg
ICAgKENTU1BhcnNlckNvbnRleHQpOgorICAgICAgICAqIHBhZ2UvU2V0dGluZ3MuaDoKKyAgICAg
ICAgKFNldHRpbmdzKToKKyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdzOjpzZXRDU1NWYXJpYWJs
ZXNFbmFibGVkKToKKyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdzOjpjc3NWYXJpYWJsZXNFbmFi
bGVkKToKKwogMjAxMi0wNi0xOSAgWmVldiBMaWViZXIgIDx6bGllYmVyQGNocm9taXVtLm9yZz4K
IAogICAgICAgICBbQ2hyb21pdW1dIFJlbW92ZSByZWR1bmRhbnQgI2luY2x1ZGVzIGluIGNvbXBv
c2l0b3IKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nIGIvU291
cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXggNWQyYzQ4NTNiMzJlNThiNTQ5ZjAz
NzJjZTg5OGY5NzZkYzQ5MGJlMS4uZTNmNTcyNzQ5MzZlYWY4YjBhNGFjY2RkYzdiMjYyOTQxNDIw
Y2YyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAxMi0w
Ni0xOSAgTHVrZSBNYWNwaGVyc29uICA8bWFjcGhlcnNvbkBjaHJvbWl1bS5vcmc+CisKKyAgICAg
ICAgQWRkIHJ1bnRpbWUgZmxhZyB0byBlbmFibGUvZGlzYWJsZSBDU1MgdmFyaWFibGVzIChpbiBh
ZGRpdGlvbiB0byBleGlzdGluZyBjb21waWxlLXRpbWUgZmxhZykuCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04OTU0MgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZmVhdHVyZXMuZ3lwaToKKyAgICAgICAg
KiBwdWJsaWMvV2ViU2V0dGluZ3MuaDoKKyAgICAgICAgKiBzcmMvV2ViU2V0dGluZ3NJbXBsLmNw
cDoKKyAgICAgICAgKFdlYktpdDo6V2ViU2V0dGluZ3NJbXBsOjpzZXRFeHBlcmltZW50YWxWYXJp
YWJsZXNFbmFibGVkKToKKyAgICAgICAgKFdlYktpdCk6CisgICAgICAgICogc3JjL1dlYlNldHRp
bmdzSW1wbC5oOgorICAgICAgICAoV2ViU2V0dGluZ3NJbXBsKToKKwogMjAxMi0wNi0xOSAgWmVl
diBMaWViZXIgIDx6bGllYmVyQGNocm9taXVtLm9yZz4KIAogICAgICAgICBbQ2hyb21pdW1dIFJl
bW92ZSByZWR1bmRhbnQgI2luY2x1ZGVzIGluIGNvbXBvc2l0b3IKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNl
ci5jcHAKaW5kZXggMzlmYjYzMGVkNGFmODliYTcyYjI2YmY3Y2EwNmE0NTZmMDhlZWFlMS4uMDc3
YzIxZTc3MGE0OTk5NGFkZTQ0ZmE4YTkyYjRhMTI4NmQxMDhjZiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Bh
cnNlci5jcHAKQEAgLTE5NCw2ICsxOTQsOSBAQCBDU1NQYXJzZXJDb250ZXh0OjpDU1NQYXJzZXJD
b250ZXh0KENTU1BhcnNlck1vZGUgbW9kZSwgY29uc3QgS1VSTCYgYmFzZVVSTCkKICAgICAsIGlz
Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZChmYWxzZSkKICAgICAsIGlzQ1NTUmVnaW9uc0VuYWJsZWQo
ZmFsc2UpCiAgICAgLCBpc0NTU0dyaWRMYXlvdXRFbmFibGVkKGZhbHNlKQorI2lmIEVOQUJMRShD
U1NfVkFSSUFCTEVTKQorICAgICwgaXNDU1NWYXJpYWJsZXNFbmFibGVkKGZhbHNlKQorI2VuZGlm
CiAgICAgLCBuZWVkc1NpdGVTcGVjaWZpY1F1aXJrcyhmYWxzZSkKICAgICAsIGVuZm9yY2VzQ1NT
TUlNRVR5cGVJbk5vUXVpcmtzTW9kZSh0cnVlKQogewpAQCAtMjA3LDYgKzIxMCw5IEBAIENTU1Bh
cnNlckNvbnRleHQ6OkNTU1BhcnNlckNvbnRleHQoRG9jdW1lbnQqIGRvY3VtZW50LCBjb25zdCBL
VVJMJiBiYXNlVVJMLCBjb25zCiAgICAgLCBpc0NTU0N1c3RvbUZpbHRlckVuYWJsZWQoZG9jdW1l
bnQtPnNldHRpbmdzKCkgPyBkb2N1bWVudC0+c2V0dGluZ3MoKS0+aXNDU1NDdXN0b21GaWx0ZXJF
bmFibGVkKCkgOiBmYWxzZSkKICAgICAsIGlzQ1NTUmVnaW9uc0VuYWJsZWQoZG9jdW1lbnQtPmNz
c1JlZ2lvbnNFbmFibGVkKCkpCiAgICAgLCBpc0NTU0dyaWRMYXlvdXRFbmFibGVkKGRvY3VtZW50
LT5jc3NHcmlkTGF5b3V0RW5hYmxlZCgpKQorI2lmIEVOQUJMRShDU1NfVkFSSUFCTEVTKQorICAg
ICwgaXNDU1NWYXJpYWJsZXNFbmFibGVkKGRvY3VtZW50LT5zZXR0aW5ncygpID8gZG9jdW1lbnQt
PnNldHRpbmdzKCktPmNzc1ZhcmlhYmxlc0VuYWJsZWQoKSA6IGZhbHNlKQorI2VuZGlmCiAgICAg
LCBuZWVkc1NpdGVTcGVjaWZpY1F1aXJrcyhkb2N1bWVudC0+c2V0dGluZ3MoKSA/IGRvY3VtZW50
LT5zZXR0aW5ncygpLT5uZWVkc1NpdGVTcGVjaWZpY1F1aXJrcygpIDogZmFsc2UpCiAgICAgLCBl
bmZvcmNlc0NTU01JTUVUeXBlSW5Ob1F1aXJrc01vZGUoIWRvY3VtZW50LT5zZXR0aW5ncygpIHx8
IGRvY3VtZW50LT5zZXR0aW5ncygpLT5lbmZvcmNlQ1NTTUlNRVR5cGVJbk5vUXVpcmtzTW9kZSgp
KQogewpAQCAtMjIxLDYgKzIyNyw5IEBAIGJvb2wgb3BlcmF0b3I9PShjb25zdCBDU1NQYXJzZXJD
b250ZXh0JiBhLCBjb25zdCBDU1NQYXJzZXJDb250ZXh0JiBiKQogICAgICAgICAmJiBhLmlzQ1NT
Q3VzdG9tRmlsdGVyRW5hYmxlZCA9PSBiLmlzQ1NTQ3VzdG9tRmlsdGVyRW5hYmxlZAogICAgICAg
ICAmJiBhLmlzQ1NTUmVnaW9uc0VuYWJsZWQgPT0gYi5pc0NTU1JlZ2lvbnNFbmFibGVkCiAgICAg
ICAgICYmIGEuaXNDU1NHcmlkTGF5b3V0RW5hYmxlZCA9PSBiLmlzQ1NTR3JpZExheW91dEVuYWJs
ZWQKKyNpZiBFTkFCTEUoQ1NTX1ZBUklBQkxFUykKKyAgICAgICAgJiYgYS5pc0NTU1ZhcmlhYmxl
c0VuYWJsZWQgPT0gYi5pc0NTU1ZhcmlhYmxlc0VuYWJsZWQKKyNlbmRpZgogICAgICAgICAmJiBh
Lm5lZWRzU2l0ZVNwZWNpZmljUXVpcmtzID09IGIubmVlZHNTaXRlU3BlY2lmaWNRdWlya3MKICAg
ICAgICAgJiYgYS5lbmZvcmNlc0NTU01JTUVUeXBlSW5Ob1F1aXJrc01vZGUgPT0gYi5lbmZvcmNl
c0NTU01JTUVUeXBlSW5Ob1F1aXJrc01vZGU7CiB9CkBAIC0yODc3LDYgKzI4ODYsMTEgQEAgYm9v
bCBDU1NQYXJzZXI6OnBhcnNlRmlsbFNob3J0aGFuZChDU1NQcm9wZXJ0eUlEIHByb3BJZCwgY29u
c3QgQ1NTUHJvcGVydHlJRCogcHIKIH0KIAogI2lmIEVOQUJMRShDU1NfVkFSSUFCTEVTKQorYm9v
bCBDU1NQYXJzZXI6OmNzc1ZhcmlhYmxlc0VuYWJsZWQoKSBjb25zdAoreworICAgIHJldHVybiBt
X2NvbnRleHQuaXNDU1NWYXJpYWJsZXNFbmFibGVkOworfQorCiB2b2lkIENTU1BhcnNlcjo6c3Rv
cmVWYXJpYWJsZURlY2xhcmF0aW9uKGNvbnN0IENTU1BhcnNlclN0cmluZyYgbmFtZSwgUGFzc093
blB0cjxDU1NQYXJzZXJWYWx1ZUxpc3Q+IHZhbHVlLCBib29sIGltcG9ydGFudCkKIHsKICAgICBT
dHJpbmdCdWlsZGVyIGJ1aWxkZXI7CkBAIC04NTAwLDcgKzg1MTQsNyBAQCBpbmxpbmUgdm9pZCBD
U1NQYXJzZXI6OmRldGVjdERhc2hUb2tlbihpbnQgbGVuZ3RoKQogICAgICAgICBlbHNlIGlmIChp
c0FTQ0lJQWxwaGFDYXNlbGVzc0VxdWFsKG5hbWVbMTBdLCAneCcpICYmIGlzRXF1YWxUb0NTU0lk
ZW50aWZpZXIobmFtZSArIDEsICJ3ZWJraXQtbWEiKSkKICAgICAgICAgICAgIG1fdG9rZW4gPSBN
QVhGVU5DVElPTjsKICNpZiBFTkFCTEUoQ1NTX1ZBUklBQkxFUykKLSAgICAgICAgZWxzZSBpZiAo
aXNBU0NJSUFscGhhQ2FzZWxlc3NFcXVhbChuYW1lWzEwXSwgJ3InKSAmJiBpc0VxdWFsVG9DU1NJ
ZGVudGlmaWVyKG5hbWUgKyAxLCAid2Via2l0LXZhIikpCisgICAgICAgIGVsc2UgaWYgKGNzc1Zh
cmlhYmxlc0VuYWJsZWQoKSAmJiBpc0FTQ0lJQWxwaGFDYXNlbGVzc0VxdWFsKG5hbWVbMTBdLCAn
cicpICYmIGlzRXF1YWxUb0NTU0lkZW50aWZpZXIobmFtZSArIDEsICJ3ZWJraXQtdmEiKSkKICAg
ICAgICAgICAgIG1fdG9rZW4gPSBWQVJGVU5DVElPTjsKICNlbmRpZgogICAgIH0gZWxzZSBpZiAo
bGVuZ3RoID09IDEyICYmIGlzRXF1YWxUb0NTU0lkZW50aWZpZXIobmFtZSArIDEsICJ3ZWJraXQt
Y2FsYyIpKQpAQCAtODg0Miw3ICs4ODU2LDcgQEAgcmVzdGFydEFmdGVyQ29tbWVudDoKIAogICAg
IGNhc2UgQ2hhcmFjdGVyRGFzaDoKICNpZiBFTkFCTEUoQ1NTX1ZBUklBQkxFUykKLSAgICAgICAg
aWYgKG1fY3VycmVudENoYXJhY3RlclsxMF0gPT0gJy0nICYmIGlzRXF1YWxUb0NTU0lkZW50aWZp
ZXIobV9jdXJyZW50Q2hhcmFjdGVyLCAid2Via2l0LXZhciIpICYmIGlzSWRlbnRpZmllclN0YXJ0
QWZ0ZXJEYXNoKG1fY3VycmVudENoYXJhY3RlciArIDExKSkgeworICAgICAgICBpZiAoY3NzVmFy
aWFibGVzRW5hYmxlZCgpICYmIG1fY3VycmVudENoYXJhY3RlclsxMF0gPT0gJy0nICYmIGlzRXF1
YWxUb0NTU0lkZW50aWZpZXIobV9jdXJyZW50Q2hhcmFjdGVyLCAid2Via2l0LXZhciIpICYmIGlz
SWRlbnRpZmllclN0YXJ0QWZ0ZXJEYXNoKG1fY3VycmVudENoYXJhY3RlciArIDExKSkgewogICAg
ICAgICAgICAgLy8gaGFuZGxlIHZhcmlhYmxlIGRlY2xhcmF0aW9ucwogICAgICAgICAgICAgbV9j
dXJyZW50Q2hhcmFjdGVyICs9IDExOwogICAgICAgICAgICAgcGFyc2VJZGVudGlmaWVyKHJlc3Vs
dCwgaGFzRXNjYXBlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIu
aCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuaAppbmRleCBiMDM3ZjAzYTQzYWE1ZTA1
YjBiNWE0MjE5Zjc3MjA1ZTViZDY3NTAzLi4zYWUxNDUwYzQ4MmRhMGMzMGUxOTI3NTU5MTZjMzg3
NGM1MDZiNTMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5oCkBAIC05Miw2ICs5Miw3IEBAIHB1Ymxp
YzoKICAgICBib29sIHBhcnNlUXVvdGVzKENTU1Byb3BlcnR5SUQsIGJvb2wgaW1wb3J0YW50KTsK
IAogI2lmIEVOQUJMRShDU1NfVkFSSUFCTEVTKQorICAgIGJvb2wgY3NzVmFyaWFibGVzRW5hYmxl
ZCgpIGNvbnN0OwogICAgIHZvaWQgc3RvcmVWYXJpYWJsZURlY2xhcmF0aW9uKGNvbnN0IENTU1Bh
cnNlclN0cmluZyYsIFBhc3NPd25QdHI8Q1NTUGFyc2VyVmFsdWVMaXN0PiwgYm9vbCBpbXBvcnRh
bnQpOwogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXJN
b2RlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyTW9kZS5oCmluZGV4IGQ5MjAwYjcy
YzcyNjY2YTk5MjVmOTc0MTc4ZjkxZWE5ZDVlNTdkZGMuLjUyMjhlOTgxMmQ5ZjIyYTllOGNiMTVh
MDc2MDMzOWVkZjEwNzZlMzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJz
ZXJNb2RlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlck1vZGUuaApAQCAtNjUs
NiArNjUsOSBAQCBzdHJ1Y3QgQ1NTUGFyc2VyQ29udGV4dCB7CiAgICAgYm9vbCBpc0NTU0N1c3Rv
bUZpbHRlckVuYWJsZWQ7CiAgICAgYm9vbCBpc0NTU1JlZ2lvbnNFbmFibGVkOwogICAgIGJvb2wg
aXNDU1NHcmlkTGF5b3V0RW5hYmxlZDsKKyNpZiBFTkFCTEUoQ1NTX1ZBUklBQkxFUykKKyAgICBi
b29sIGlzQ1NTVmFyaWFibGVzRW5hYmxlZDsKKyNlbmRpZgogICAgIGJvb2wgbmVlZHNTaXRlU3Bl
Y2lmaWNRdWlya3M7CiAgICAgYm9vbCBlbmZvcmNlc0NTU01JTUVUeXBlSW5Ob1F1aXJrc01vZGU7
CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5oIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5oCmluZGV4IGEwMTdkOGZlMjAyMjAzZWNmN2I4NTU0M2Yz
OTkxMDJkODRhYmJjN2UuLjZlM2I2MGZmMTA0YjQ0ODc2MWMyZDVlMTVmNDA5NDA5NTQ5ZjBkYTcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL1NldHRpbmdzLmgKQEAgLTMzMSw2ICszMzEsMTQgQEAgbmFtZXNwYWNlIFdl
YkNvcmUgewogICAgICAgICBib29sIGNzc1JlZ2lvbnNFbmFibGVkKCkgY29uc3QgeyByZXR1cm4g
ZmFsc2U7IH0KICNlbmRpZgogCisjaWYgRU5BQkxFKENTU19WQVJJQUJMRVMpCisgICAgICAgIHZv
aWQgc2V0Q1NTVmFyaWFibGVzRW5hYmxlZChib29sIGVuYWJsZWQpIHsgbV9jc3NWYXJpYWJsZXNF
bmFibGVkID0gZW5hYmxlZDsgfQorICAgICAgICBib29sIGNzc1ZhcmlhYmxlc0VuYWJsZWQoKSBj
b25zdCB7IHJldHVybiBtX2Nzc1ZhcmlhYmxlc0VuYWJsZWQ7IH0KKyNlbHNlCisgICAgICAgIHZv
aWQgc2V0Q1NTVmFyaWFibGVzRW5hYmxlZChib29sKSB7IH0KKyAgICAgICAgYm9vbCBjc3NWYXJp
YWJsZXNFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KKyNlbmRpZgorCiAgICAgICAg
IHZvaWQgc2V0UmVnaW9uQmFzZWRDb2x1bW5zRW5hYmxlZChib29sIGVuYWJsZWQpIHsgbV9yZWdp
b25CYXNlZENvbHVtbnNFbmFibGVkID0gZW5hYmxlZDsgfQogICAgICAgICBib29sIHJlZ2lvbkJh
c2VkQ29sdW1uc0VuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX3JlZ2lvbkJhc2VkQ29sdW1uc0Vu
YWJsZWQ7IH0KIApAQCAtNjc0LDYgKzY4Miw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICNpZiBF
TkFCTEUoQ1NTX1JFR0lPTlMpCiAgICAgICAgIGJvb2wgbV9jc3NSZWdpb25zRW5hYmxlZCA6IDE7
CiAjZW5kaWYKKyNpZiBFTkFCTEUoQ1NTX1ZBUklBQkxFUykKKyAgICAgICAgYm9vbCBtX2Nzc1Zh
cmlhYmxlc0VuYWJsZWQgOiAxOworI2VuZGlmCiAgICAgICAgIGJvb2wgbV9yZWdpb25CYXNlZENv
bHVtbnNFbmFibGVkIDogMTsKICAgICAgICAgYm9vbCBtX2Nzc0dyaWRMYXlvdXRFbmFibGVkIDog
MTsKICAgICAgICAgYm9vbCBtX2Rvd25sb2FkYWJsZUJpbmFyeUZvbnRzRW5hYmxlZCA6IDE7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL2ZlYXR1cmVzLmd5cGkgYi9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL2ZlYXR1cmVzLmd5cGkKaW5kZXggYTQyOTBhOGIzYzU3N2NjZWMyZmE4
OWM4MzY2NjQzMWM2YmNlNmY5MS4uY2RkYmZhN2NkNmRhMmJiMGMzY2ZlMzQ5MDg4ZTZjZDIxNWY2
ZWM5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9mZWF0dXJlcy5neXBpCisr
KyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vZmVhdHVyZXMuZ3lwaQpAQCAtNDYsNyArNDYsNyBA
QAogICAgICAgJ0VOQUJMRV9DU1NfSU1BR0VfUkVTT0xVVElPTj0wJywKICAgICAgICdFTkFCTEVf
Q1NTX1JFR0lPTlM9MScsCiAgICAgICAnRU5BQkxFX0NTU19TSEFERVJTPTEnLAotICAgICAgJ0VO
QUJMRV9DU1NfVkFSSUFCTEVTPTAnLAorICAgICAgJ0VOQUJMRV9DU1NfVkFSSUFCTEVTPTEnLAog
ICAgICAgJ0VOQUJMRV9DVVNUT01fU0NIRU1FX0hBTkRMRVI9MCcsCiAgICAgICAnRU5BQkxFX0RB
VEFMSVNUPTEnLAogICAgICAgJ0VOQUJMRV9EQVNIQk9BUkRfU1VQUE9SVD0wJywKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYlNldHRpbmdzLmggYi9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJTZXR0aW5ncy5oCmluZGV4IDA1MjhkOGVmNGVhYmM2
ZmY4ZDdlMjcwODE0MjBhZmEwNmRjOTIwNWEuLmQzZWQ3Mzk0NjBhOWVlMjRkNzc4YjU2ZDQ5NjRj
Y2FkZWZhNTkxODAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dl
YlNldHRpbmdzLmgKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViU2V0dGlu
Z3MuaApAQCAtMTA1LDYgKzEwNSw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgc2V0RXhw
ZXJpbWVudGFsQ1NTUmVnaW9uc0VuYWJsZWQoYm9vbCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBz
ZXRFeHBlcmltZW50YWxDU1NHcmlkTGF5b3V0RW5hYmxlZChib29sKSA9IDA7CiAgICAgdmlydHVh
bCB2b2lkIHNldEV4cGVyaW1lbnRhbENTU0N1c3RvbUZpbHRlckVuYWJsZWQoYm9vbCkgPSAwOwor
ICAgIHZpcnR1YWwgdm9pZCBzZXRFeHBlcmltZW50YWxDU1NWYXJpYWJsZXNFbmFibGVkKGJvb2wp
ID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0T3BlbkdMTXVsdGlzYW1wbGluZ0VuYWJsZWQoYm9v
bCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBzZXRQcml2aWxlZ2VkV2ViR0xFeHRlbnNpb25zRW5h
YmxlZChib29sKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHNldFdlYkdMRXJyb3JzVG9Db25zb2xl
RW5hYmxlZChib29sKSA9IDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9XZWJTZXR0aW5nc0ltcGwuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0
dGluZ3NJbXBsLmNwcAppbmRleCA1Zjg3NzZiNThhMzU4ODVhOWFhNTIyZTU2OTUzYzRiMGRkYmJh
MTZjLi43NzNhMjA3NzdkNWYwYzYxY2Q3ZWZhN2U5NDYxYTM0OGJlN2E2MzllIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNldHRpbmdzSW1wbC5jcHAKQEAgLTMzOCw2ICsz
MzgsMTEgQEAgdm9pZCBXZWJTZXR0aW5nc0ltcGw6OnNldEV4cGVyaW1lbnRhbENTU0N1c3RvbUZp
bHRlckVuYWJsZWQoYm9vbCBlbmFibGVkKQogICAgIG1fc2V0dGluZ3MtPnNldENTU0N1c3RvbUZp
bHRlckVuYWJsZWQoZW5hYmxlZCk7CiB9CiAKK3ZvaWQgV2ViU2V0dGluZ3NJbXBsOjpzZXRFeHBl
cmltZW50YWxWYXJpYWJsZXNFbmFibGVkKGJvb2wgZW5hYmxlZCkKK3sKKyAgICBtX3NldHRpbmdz
LT5zZXRDU1NWYXJpYWJsZXNFbmFibGVkKGVuYWJsZWQpOworfQorCiB2b2lkIFdlYlNldHRpbmdz
SW1wbDo6c2V0T3BlbkdMTXVsdGlzYW1wbGluZ0VuYWJsZWQoYm9vbCBlbmFibGVkKQogewogICAg
IG1fc2V0dGluZ3MtPnNldE9wZW5HTE11bHRpc2FtcGxpbmdFbmFibGVkKGVuYWJsZWQpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmggYi9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuaAppbmRleCAyYjU4YzA0
NDNiOWYxMDc3Y2EyNDg3YjcwMjY3ZDA1NDFjNWRkYjg4Li42MmZmNzA0NTc3ZDkzZDczNTMzMDBl
NWViMjQxM2U4ZGU3MmY4N2EwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9XZWJTZXR0aW5nc0ltcGwuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJT
ZXR0aW5nc0ltcGwuaApAQCAtOTcsNiArOTcsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lk
IHNldEV4cGVyaW1lbnRhbENTU1JlZ2lvbnNFbmFibGVkKGJvb2wpOwogICAgIHZpcnR1YWwgdm9p
ZCBzZXRFeHBlcmltZW50YWxDU1NHcmlkTGF5b3V0RW5hYmxlZChib29sKTsKICAgICB2aXJ0dWFs
IHZvaWQgc2V0RXhwZXJpbWVudGFsQ1NTQ3VzdG9tRmlsdGVyRW5hYmxlZChib29sKTsKKyAgICB2
aXJ0dWFsIHZvaWQgc2V0RXhwZXJpbWVudGFsQ1NTVmFyaWFibGVzRW5hYmxlZChib29sKTsKICAg
ICB2aXJ0dWFsIHZvaWQgc2V0T3BlbkdMTXVsdGlzYW1wbGluZ0VuYWJsZWQoYm9vbCk7CiAgICAg
dmlydHVhbCB2b2lkIHNldFByaXZpbGVnZWRXZWJHTEV4dGVuc2lvbnNFbmFibGVkKGJvb2wpOwog
ICAgIHZpcnR1YWwgdm9pZCBzZXRXZWJHTEVycm9yc1RvQ29uc29sZUVuYWJsZWQoYm9vbCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>148729</attachid>
            <date>2012-06-20 22:17:18 -0700</date>
            <delta_ts>2012-06-21 18:20:06 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-89542-20120621151716.patch</filename>
            <type>text/plain</type>
            <size>25225</size>
            <attacher name="Luke Macpherson">macpherson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIwODg2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDFiZDBkOWVjMDQ5YWNi
OWI4OTNiZThhNDBkZTU3OGZiNDY5Mzc2Yy4uMzkwOWI2M2EwNmE3NGM5NDYxMzY3Yzg1ZDZkM2Rm
MGExMzc2ZGY3NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDEyLTA2LTE5ICBMdWtl
IE1hY3BoZXJzb24gIDxtYWNwaGVyc29uQGNocm9taXVtLm9yZz4KKworICAgICAgICBBZGQgcnVu
dGltZSBmbGFnIHRvIGVuYWJsZS9kaXNhYmxlIENTUyB2YXJpYWJsZXMgKGluIGFkZGl0aW9uIHRv
IGV4aXN0aW5nIGNvbXBpbGUtdGltZSBmbGFnKS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTg5NTQyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLgorCisgICAgICAgICogY3NzL0NTU1Bh
cnNlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NQYXJzZXJDb250ZXh0OjpDU1NQYXJzZXJD
b250ZXh0KToKKyAgICAgICAgKFdlYkNvcmU6Om9wZXJhdG9yPT0pOgorICAgICAgICAoV2ViQ29y
ZTo6Q1NTUGFyc2VyOjpjc3NWYXJpYWJsZXNFbmFibGVkKToKKyAgICAgICAgKFdlYkNvcmUpOgor
ICAgICAgICAoV2ViQ29yZTo6Q1NTUGFyc2VyOjpkZXRlY3REYXNoVG9rZW4pOgorICAgICAgICAo
V2ViQ29yZTo6Q1NTUGFyc2VyOjpsZXgpOgorICAgICAgICAqIGNzcy9DU1NQYXJzZXIuaDoKKyAg
ICAgICAgKENTU1BhcnNlcik6CisgICAgICAgICogY3NzL0NTU1BhcnNlck1vZGUuaDoKKyAgICAg
ICAgKENTU1BhcnNlckNvbnRleHQpOgorICAgICAgICAqIHBhZ2UvU2V0dGluZ3MuaDoKKyAgICAg
ICAgKFNldHRpbmdzKToKKyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdzOjpzZXRDU1NWYXJpYWJs
ZXNFbmFibGVkKToKKyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdzOjpjc3NWYXJpYWJsZXNFbmFi
bGVkKToKKwogMjAxMi0wNi0yMCAgR2FycmV0IEtlbGx5ICA8Z2RrQGNocm9taXVtLm9yZz4KIAog
ICAgICAgICBNb3ZpbmcgY29va2llRW5hYmxlZC9zZXRDb29raWVFbmFibGVkIGZyb20gUGFnZSB0
byBTZXR0aW5ncy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9n
IGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXggY2E4YjJjMjhhNGY0ZjZm
OTY1MmNkYjQzODc1OTdiMGRiYmE4YjkxZi4uOTk2NDJhNjYxNTA2ZGM2MzUyOGQ1Yjc1NWIzNWNj
ZGY5NzQ1Mzc3MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cK
KysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAor
MjAxMi0wNi0xOSAgTHVrZSBNYWNwaGVyc29uICA8bWFjcGhlcnNvbkBjaHJvbWl1bS5vcmc+CisK
KyAgICAgICAgQWRkIHJ1bnRpbWUgZmxhZyB0byBlbmFibGUvZGlzYWJsZSBDU1MgdmFyaWFibGVz
IChpbiBhZGRpdGlvbiB0byBleGlzdGluZyBjb21waWxlLXRpbWUgZmxhZykuCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04OTU0MgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZmVhdHVyZXMuZ3lwaToKKyAg
ICAgICAgKiBwdWJsaWMvV2ViU2V0dGluZ3MuaDoKKyAgICAgICAgKiBzcmMvV2ViU2V0dGluZ3NJ
bXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViU2V0dGluZ3NJbXBsOjpzZXRFeHBlcmltZW50
YWxWYXJpYWJsZXNFbmFibGVkKToKKyAgICAgICAgKFdlYktpdCk6CisgICAgICAgICogc3JjL1dl
YlNldHRpbmdzSW1wbC5oOgorICAgICAgICAoV2ViU2V0dGluZ3NJbXBsKToKKwogMjAxMi0wNi0y
MCAgR2FycmV0IEtlbGx5ICA8Z2RrQGNocm9taXVtLm9yZz4KIAogICAgICAgICBNb3ZpbmcgY29v
a2llRW5hYmxlZC9zZXRDb29raWVFbmFibGVkIGZyb20gUGFnZSB0byBTZXR0aW5ncywgYW5kCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NQYXJzZXIuY3BwCmluZGV4IDYzNzgzNTk2YjMyN2MzN2Q3NGM5MjY0NzJmYTY0
NDg0YTFlMTU0MjIuLmZkYzE0NDZjNzQ1ZGM5YTBkMzVmYmY2NmUyNmE0NzQ0ZWM4YjJlYTIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3BwCkBAIC0xOTQsNiArMTk0LDkgQEAgQ1NTUGFyc2VyQ29u
dGV4dDo6Q1NTUGFyc2VyQ29udGV4dChDU1NQYXJzZXJNb2RlIG1vZGUsIGNvbnN0IEtVUkwmIGJh
c2VVUkwpCiAgICAgLCBpc0NTU0N1c3RvbUZpbHRlckVuYWJsZWQoZmFsc2UpCiAgICAgLCBpc0NT
U1JlZ2lvbnNFbmFibGVkKGZhbHNlKQogICAgICwgaXNDU1NHcmlkTGF5b3V0RW5hYmxlZChmYWxz
ZSkKKyNpZiBFTkFCTEUoQ1NTX1ZBUklBQkxFUykKKyAgICAsIGlzQ1NTVmFyaWFibGVzRW5hYmxl
ZChmYWxzZSkKKyNlbmRpZgogICAgICwgbmVlZHNTaXRlU3BlY2lmaWNRdWlya3MoZmFsc2UpCiAg
ICAgLCBlbmZvcmNlc0NTU01JTUVUeXBlSW5Ob1F1aXJrc01vZGUodHJ1ZSkKIHsKQEAgLTIwNyw2
ICsyMTAsOSBAQCBDU1NQYXJzZXJDb250ZXh0OjpDU1NQYXJzZXJDb250ZXh0KERvY3VtZW50KiBk
b2N1bWVudCwgY29uc3QgS1VSTCYgYmFzZVVSTCwgY29ucwogICAgICwgaXNDU1NDdXN0b21GaWx0
ZXJFbmFibGVkKGRvY3VtZW50LT5zZXR0aW5ncygpID8gZG9jdW1lbnQtPnNldHRpbmdzKCktPmlz
Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCgpIDogZmFsc2UpCiAgICAgLCBpc0NTU1JlZ2lvbnNFbmFi
bGVkKGRvY3VtZW50LT5jc3NSZWdpb25zRW5hYmxlZCgpKQogICAgICwgaXNDU1NHcmlkTGF5b3V0
RW5hYmxlZChkb2N1bWVudC0+Y3NzR3JpZExheW91dEVuYWJsZWQoKSkKKyNpZiBFTkFCTEUoQ1NT
X1ZBUklBQkxFUykKKyAgICAsIGlzQ1NTVmFyaWFibGVzRW5hYmxlZChkb2N1bWVudC0+c2V0dGlu
Z3MoKSA/IGRvY3VtZW50LT5zZXR0aW5ncygpLT5jc3NWYXJpYWJsZXNFbmFibGVkKCkgOiBmYWxz
ZSkKKyNlbmRpZgogICAgICwgbmVlZHNTaXRlU3BlY2lmaWNRdWlya3MoZG9jdW1lbnQtPnNldHRp
bmdzKCkgPyBkb2N1bWVudC0+c2V0dGluZ3MoKS0+bmVlZHNTaXRlU3BlY2lmaWNRdWlya3MoKSA6
IGZhbHNlKQogICAgICwgZW5mb3JjZXNDU1NNSU1FVHlwZUluTm9RdWlya3NNb2RlKCFkb2N1bWVu
dC0+c2V0dGluZ3MoKSB8fCBkb2N1bWVudC0+c2V0dGluZ3MoKS0+ZW5mb3JjZUNTU01JTUVUeXBl
SW5Ob1F1aXJrc01vZGUoKSkKIHsKQEAgLTIyMSw2ICsyMjcsOSBAQCBib29sIG9wZXJhdG9yPT0o
Y29uc3QgQ1NTUGFyc2VyQ29udGV4dCYgYSwgY29uc3QgQ1NTUGFyc2VyQ29udGV4dCYgYikKICAg
ICAgICAgJiYgYS5pc0NTU0N1c3RvbUZpbHRlckVuYWJsZWQgPT0gYi5pc0NTU0N1c3RvbUZpbHRl
ckVuYWJsZWQKICAgICAgICAgJiYgYS5pc0NTU1JlZ2lvbnNFbmFibGVkID09IGIuaXNDU1NSZWdp
b25zRW5hYmxlZAogICAgICAgICAmJiBhLmlzQ1NTR3JpZExheW91dEVuYWJsZWQgPT0gYi5pc0NT
U0dyaWRMYXlvdXRFbmFibGVkCisjaWYgRU5BQkxFKENTU19WQVJJQUJMRVMpCisgICAgICAgICYm
IGEuaXNDU1NWYXJpYWJsZXNFbmFibGVkID09IGIuaXNDU1NWYXJpYWJsZXNFbmFibGVkCisjZW5k
aWYKICAgICAgICAgJiYgYS5uZWVkc1NpdGVTcGVjaWZpY1F1aXJrcyA9PSBiLm5lZWRzU2l0ZVNw
ZWNpZmljUXVpcmtzCiAgICAgICAgICYmIGEuZW5mb3JjZXNDU1NNSU1FVHlwZUluTm9RdWlya3NN
b2RlID09IGIuZW5mb3JjZXNDU1NNSU1FVHlwZUluTm9RdWlya3NNb2RlOwogfQpAQCAtMTAxNCw3
ICsxMDIzLDExIEBAIFBhc3NSZWZQdHI8Q1NTVmFsdWVMaXN0PiBDU1NQYXJzZXI6OnBhcnNlRm9u
dEZhY2VWYWx1ZShjb25zdCBBdG9taWNTdHJpbmcmIHN0cmluCiAgICAgcmV0dXJuIHN0YXRpY19w
b2ludGVyX2Nhc3Q8Q1NTVmFsdWVMaXN0PihkdW1teVN0eWxlLT5nZXRQcm9wZXJ0eUNTU1ZhbHVl
KENTU1Byb3BlcnR5Rm9udEZhbWlseSkpOwogfQogCisjaWYgRU5BQkxFKENTU19WQVJJQUJMRVMp
Citib29sIENTU1BhcnNlcjo6cGFyc2VWYWx1ZShTdHlsZVByb3BlcnR5U2V0KiBkZWNsYXJhdGlv
biwgQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlELCBjb25zdCBTdHJpbmcmIHN0cmluZywgYm9vbCBp
bXBvcnRhbnQsIENTU1BhcnNlck1vZGUgY3NzUGFyc2VyTW9kZSwgU3R5bGVTaGVldENvbnRlbnRz
KiBjb250ZXh0U3R5bGVTaGVldCwgYm9vbCBlbmFibGVDU1NWYXJpYWJsZXMpCisjZWxzZQogYm9v
bCBDU1NQYXJzZXI6OnBhcnNlVmFsdWUoU3R5bGVQcm9wZXJ0eVNldCogZGVjbGFyYXRpb24sIENT
U1Byb3BlcnR5SUQgcHJvcGVydHlJRCwgY29uc3QgU3RyaW5nJiBzdHJpbmcsIGJvb2wgaW1wb3J0
YW50LCBDU1NQYXJzZXJNb2RlIGNzc1BhcnNlck1vZGUsIFN0eWxlU2hlZXRDb250ZW50cyogY29u
dGV4dFN0eWxlU2hlZXQpCisjZW5kaWYKIHsKICAgICBBU1NFUlQoIXN0cmluZy5pc0VtcHR5KCkp
OwogICAgIGlmIChwYXJzZVNpbXBsZUxlbmd0aFZhbHVlKGRlY2xhcmF0aW9uLCBwcm9wZXJ0eUlE
LCBzdHJpbmcsIGltcG9ydGFudCwgY3NzUGFyc2VyTW9kZSkpCkBAIC0xMDI5LDYgKzEwNDIsOSBA
QCBib29sIENTU1BhcnNlcjo6cGFyc2VWYWx1ZShTdHlsZVByb3BlcnR5U2V0KiBkZWNsYXJhdGlv
biwgQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eQogICAgICAgICBjb250ZXh0ID0gY29udGV4dFN0eWxl
U2hlZXQtPnBhcnNlckNvbnRleHQoKTsKICAgICAgICAgY29udGV4dC5tb2RlID0gY3NzUGFyc2Vy
TW9kZTsKICAgICB9CisjaWYgRU5BQkxFKENTU19WQVJJQUJMRVMpCisgICAgY29udGV4dC5pc0NT
U1ZhcmlhYmxlc0VuYWJsZWQgPSBlbmFibGVDU1NWYXJpYWJsZXM7CisjZW5kaWYKICAgICBDU1NQ
YXJzZXIgcGFyc2VyKGNvbnRleHQpOwogICAgIHJldHVybiBwYXJzZXIucGFyc2VWYWx1ZShkZWNs
YXJhdGlvbiwgcHJvcGVydHlJRCwgc3RyaW5nLCBpbXBvcnRhbnQsIGNvbnRleHRTdHlsZVNoZWV0
KTsKIH0KQEAgLTI4OTMsNiArMjkwOSwxMSBAQCBib29sIENTU1BhcnNlcjo6cGFyc2VGaWxsU2hv
cnRoYW5kKENTU1Byb3BlcnR5SUQgcHJvcElkLCBjb25zdCBDU1NQcm9wZXJ0eUlEKiBwcgogfQog
CiAjaWYgRU5BQkxFKENTU19WQVJJQUJMRVMpCitib29sIENTU1BhcnNlcjo6Y3NzVmFyaWFibGVz
RW5hYmxlZCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fY29udGV4dC5pc0NTU1ZhcmlhYmxlc0Vu
YWJsZWQ7Cit9CisKIHZvaWQgQ1NTUGFyc2VyOjpzdG9yZVZhcmlhYmxlRGVjbGFyYXRpb24oY29u
c3QgQ1NTUGFyc2VyU3RyaW5nJiBuYW1lLCBQYXNzT3duUHRyPENTU1BhcnNlclZhbHVlTGlzdD4g
dmFsdWUsIGJvb2wgaW1wb3J0YW50KQogewogICAgIFN0cmluZ0J1aWxkZXIgYnVpbGRlcjsKQEAg
LTg1MTYsNyArODUzNyw3IEBAIGlubGluZSB2b2lkIENTU1BhcnNlcjo6ZGV0ZWN0RGFzaFRva2Vu
KGludCBsZW5ndGgpCiAgICAgICAgIGVsc2UgaWYgKGlzQVNDSUlBbHBoYUNhc2VsZXNzRXF1YWwo
bmFtZVsxMF0sICd4JykgJiYgaXNFcXVhbFRvQ1NTSWRlbnRpZmllcihuYW1lICsgMSwgIndlYmtp
dC1tYSIpKQogICAgICAgICAgICAgbV90b2tlbiA9IE1BWEZVTkNUSU9OOwogI2lmIEVOQUJMRShD
U1NfVkFSSUFCTEVTKQotICAgICAgICBlbHNlIGlmIChpc0FTQ0lJQWxwaGFDYXNlbGVzc0VxdWFs
KG5hbWVbMTBdLCAncicpICYmIGlzRXF1YWxUb0NTU0lkZW50aWZpZXIobmFtZSArIDEsICJ3ZWJr
aXQtdmEiKSkKKyAgICAgICAgZWxzZSBpZiAoY3NzVmFyaWFibGVzRW5hYmxlZCgpICYmIGlzQVND
SUlBbHBoYUNhc2VsZXNzRXF1YWwobmFtZVsxMF0sICdyJykgJiYgaXNFcXVhbFRvQ1NTSWRlbnRp
ZmllcihuYW1lICsgMSwgIndlYmtpdC12YSIpKQogICAgICAgICAgICAgbV90b2tlbiA9IFZBUkZV
TkNUSU9OOwogI2VuZGlmCiAgICAgfSBlbHNlIGlmIChsZW5ndGggPT0gMTIgJiYgaXNFcXVhbFRv
Q1NTSWRlbnRpZmllcihuYW1lICsgMSwgIndlYmtpdC1jYWxjIikpCkBAIC04ODU4LDcgKzg4Nzks
NyBAQCByZXN0YXJ0QWZ0ZXJDb21tZW50OgogCiAgICAgY2FzZSBDaGFyYWN0ZXJEYXNoOgogI2lm
IEVOQUJMRShDU1NfVkFSSUFCTEVTKQotICAgICAgICBpZiAobV9jdXJyZW50Q2hhcmFjdGVyWzEw
XSA9PSAnLScgJiYgaXNFcXVhbFRvQ1NTSWRlbnRpZmllcihtX2N1cnJlbnRDaGFyYWN0ZXIsICJ3
ZWJraXQtdmFyIikgJiYgaXNJZGVudGlmaWVyU3RhcnRBZnRlckRhc2gobV9jdXJyZW50Q2hhcmFj
dGVyICsgMTEpKSB7CisgICAgICAgIGlmIChjc3NWYXJpYWJsZXNFbmFibGVkKCkgJiYgbV9jdXJy
ZW50Q2hhcmFjdGVyWzEwXSA9PSAnLScgJiYgaXNFcXVhbFRvQ1NTSWRlbnRpZmllcihtX2N1cnJl
bnRDaGFyYWN0ZXIsICJ3ZWJraXQtdmFyIikgJiYgaXNJZGVudGlmaWVyU3RhcnRBZnRlckRhc2go
bV9jdXJyZW50Q2hhcmFjdGVyICsgMTEpKSB7CiAgICAgICAgICAgICAvLyBoYW5kbGUgdmFyaWFi
bGUgZGVjbGFyYXRpb25zCiAgICAgICAgICAgICBtX2N1cnJlbnRDaGFyYWN0ZXIgKz0gMTE7CiAg
ICAgICAgICAgICBwYXJzZUlkZW50aWZpZXIocmVzdWx0LCBoYXNFc2NhcGUpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NT
U1BhcnNlci5oCmluZGV4IGIwMzdmMDNhNDNhYTVlMDViMGI1YTQyMTlmNzcyMDVlNWJkNjc1MDMu
LjI5YjFhMTI3ODQ2NWM0OWI2MGU3OTg3ZGJhNDMwODg3ZjEyZjMwMDIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
UGFyc2VyLmgKQEAgLTczLDcgKzczLDExIEBAIHB1YmxpYzoKICAgICB2b2lkIHBhcnNlU2hlZXQo
U3R5bGVTaGVldENvbnRlbnRzKiwgY29uc3QgU3RyaW5nJiwgaW50IHN0YXJ0TGluZU51bWJlciA9
IDAsIFJ1bGVTb3VyY2VEYXRhTGlzdCogPSAwKTsKICAgICBQYXNzUmVmUHRyPFN0eWxlUnVsZUJh
c2U+IHBhcnNlUnVsZShTdHlsZVNoZWV0Q29udGVudHMqLCBjb25zdCBTdHJpbmcmKTsKICAgICBQ
YXNzUmVmUHRyPFN0eWxlS2V5ZnJhbWU+IHBhcnNlS2V5ZnJhbWVSdWxlKFN0eWxlU2hlZXRDb250
ZW50cyosIGNvbnN0IFN0cmluZyYpOworI2lmIEVOQUJMRShDU1NfVkFSSUFCTEVTKQorICAgIHN0
YXRpYyBib29sIHBhcnNlVmFsdWUoU3R5bGVQcm9wZXJ0eVNldCosIENTU1Byb3BlcnR5SUQsIGNv
bnN0IFN0cmluZyYsIGJvb2wgaW1wb3J0YW50LCBDU1NQYXJzZXJNb2RlLCBTdHlsZVNoZWV0Q29u
dGVudHMqLCBib29sIGVuYWJsZUNTU1ZhcmlhYmxlcyA9IGZhbHNlKTsKKyNlbHNlCiAgICAgc3Rh
dGljIGJvb2wgcGFyc2VWYWx1ZShTdHlsZVByb3BlcnR5U2V0KiwgQ1NTUHJvcGVydHlJRCwgY29u
c3QgU3RyaW5nJiwgYm9vbCBpbXBvcnRhbnQsIENTU1BhcnNlck1vZGUsIFN0eWxlU2hlZXRDb250
ZW50cyopOworI2VuZGlmCiAgICAgc3RhdGljIGJvb2wgcGFyc2VDb2xvcihSR0JBMzImIGNvbG9y
LCBjb25zdCBTdHJpbmcmLCBib29sIHN0cmljdCA9IGZhbHNlKTsKICAgICBzdGF0aWMgYm9vbCBw
YXJzZVN5c3RlbUNvbG9yKFJHQkEzMiYgY29sb3IsIGNvbnN0IFN0cmluZyYsIERvY3VtZW50Kik7
CiAgICAgc3RhdGljIFBhc3NSZWZQdHI8Q1NTVmFsdWVMaXN0PiBwYXJzZUZvbnRGYWNlVmFsdWUo
Y29uc3QgQXRvbWljU3RyaW5nJik7CkBAIC05Miw2ICs5Niw3IEBAIHB1YmxpYzoKICAgICBib29s
IHBhcnNlUXVvdGVzKENTU1Byb3BlcnR5SUQsIGJvb2wgaW1wb3J0YW50KTsKIAogI2lmIEVOQUJM
RShDU1NfVkFSSUFCTEVTKQorICAgIGJvb2wgY3NzVmFyaWFibGVzRW5hYmxlZCgpIGNvbnN0Owog
ICAgIHZvaWQgc3RvcmVWYXJpYWJsZURlY2xhcmF0aW9uKGNvbnN0IENTU1BhcnNlclN0cmluZyYs
IFBhc3NPd25QdHI8Q1NTUGFyc2VyVmFsdWVMaXN0PiwgYm9vbCBpbXBvcnRhbnQpOwogI2VuZGlm
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXJNb2RlLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyTW9kZS5oCmluZGV4IGQ5MjAwYjcyYzcyNjY2YTk5MjVm
OTc0MTc4ZjkxZWE5ZDVlNTdkZGMuLjUyMjhlOTgxMmQ5ZjIyYTllOGNiMTVhMDc2MDMzOWVkZjEw
NzZlMzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXJNb2RlLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlck1vZGUuaApAQCAtNjUsNiArNjUsOSBAQCBz
dHJ1Y3QgQ1NTUGFyc2VyQ29udGV4dCB7CiAgICAgYm9vbCBpc0NTU0N1c3RvbUZpbHRlckVuYWJs
ZWQ7CiAgICAgYm9vbCBpc0NTU1JlZ2lvbnNFbmFibGVkOwogICAgIGJvb2wgaXNDU1NHcmlkTGF5
b3V0RW5hYmxlZDsKKyNpZiBFTkFCTEUoQ1NTX1ZBUklBQkxFUykKKyAgICBib29sIGlzQ1NTVmFy
aWFibGVzRW5hYmxlZDsKKyNlbmRpZgogICAgIGJvb2wgbmVlZHNTaXRlU3BlY2lmaWNRdWlya3M7
CiAgICAgYm9vbCBlbmZvcmNlc0NTU01JTUVUeXBlSW5Ob1F1aXJrc01vZGU7CiB9OwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwCmluZGV4IDAzZGMzMTA2Yzg1M2MwZTQ3MjM0NDMwZTg0
ZTJlN2FkMTViMzZlNGUuLmNlYWQwZjVjYTZiN2I2ZWU2MDBmMTM5MGNmNDEzNWRhYjM4ZjgxMTYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAKQEAgLTMzMjIsNyArMzMyMiw3IEBA
IHZvaWQgU3R5bGVSZXNvbHZlcjo6cmVzb2x2ZVZhcmlhYmxlcyhDU1NQcm9wZXJ0eUlEIGlkLCBD
U1NWYWx1ZSogdmFsdWUsIFZlY3RvcjxzCiAKICAgICAvLyBGSVhNRTogSXQgd291bGQgYmUgZmFz
dGVyIG5vdCB0byByZS1wYXJzZSBmcm9tIHN0cmluZ3MsIGJ1dCBmb3Igbm93IENTUyBwcm9wZXJ0
eSB2YWxpZGF0aW9uIGxpdmVzIGluc2lkZSB0aGUgcGFyc2VyIHNvIHdlIGRvIGl0IHRoZXJlLgog
ICAgIFJlZlB0cjxTdHlsZVByb3BlcnR5U2V0PiByZXN1bHRTZXQgPSBTdHlsZVByb3BlcnR5U2V0
OjpjcmVhdGUoKTsKLSAgICBpZiAoIUNTU1BhcnNlcjo6cGFyc2VWYWx1ZShyZXN1bHRTZXQuZ2V0
KCksIGlkLCBleHByZXNzaW9uLnNlY29uZCwgZmFsc2UsIENTU1N0cmljdE1vZGUsIDApKQorICAg
IGlmICghQ1NTUGFyc2VyOjpwYXJzZVZhbHVlKHJlc3VsdFNldC5nZXQoKSwgaWQsIGV4cHJlc3Np
b24uc2Vjb25kLCBmYWxzZSwgQ1NTU3RyaWN0TW9kZSwgMCwgdHJ1ZSkpCiAgICAgICAgIHJldHVy
bjsgLy8gZXhwcmVzc2lvbiBmYWlsZWQgdG8gcGFyc2UuCiAKICAgICBmb3IgKHVuc2lnbmVkIGkg
PSAwOyBpIDwgcmVzdWx0U2V0LT5wcm9wZXJ0eUNvdW50KCk7IGkrKykgewpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0
aW5ncy5oCmluZGV4IGQ4NDZmYTA3YWMxMGU4OWEyMjY3NzA3YmY5MDg4YmZhM2EyZjU5ZmQuLjNk
YzQ1YmM0MzBhZTIyZGIwMzBjOTYyZjhjODMyNDhjNDRjMmQyYTYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRp
bmdzLmgKQEAgLTMzMSw2ICszMzEsMTQgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBi
b29sIGNzc1JlZ2lvbnNFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KICNlbmRpZgog
CisjaWYgRU5BQkxFKENTU19WQVJJQUJMRVMpCisgICAgICAgIHZvaWQgc2V0Q1NTVmFyaWFibGVz
RW5hYmxlZChib29sIGVuYWJsZWQpIHsgbV9jc3NWYXJpYWJsZXNFbmFibGVkID0gZW5hYmxlZDsg
fQorICAgICAgICBib29sIGNzc1ZhcmlhYmxlc0VuYWJsZWQoKSBjb25zdCB7IHJldHVybiB0cnVl
OyB9CisjZWxzZQorICAgICAgICB2b2lkIHNldENTU1ZhcmlhYmxlc0VuYWJsZWQoYm9vbCkgeyB9
CisgICAgICAgIGJvb2wgY3NzVmFyaWFibGVzRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIGZhbHNl
OyB9CisjZW5kaWYKKwogICAgICAgICB2b2lkIHNldFJlZ2lvbkJhc2VkQ29sdW1uc0VuYWJsZWQo
Ym9vbCBlbmFibGVkKSB7IG1fcmVnaW9uQmFzZWRDb2x1bW5zRW5hYmxlZCA9IGVuYWJsZWQ7IH0K
ICAgICAgICAgYm9vbCByZWdpb25CYXNlZENvbHVtbnNFbmFibGVkKCkgY29uc3QgeyByZXR1cm4g
bV9yZWdpb25CYXNlZENvbHVtbnNFbmFibGVkOyB9CiAKQEAgLTY3Nyw2ICs2ODUsOSBAQCBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAjaWYgRU5BQkxFKENTU19SRUdJT05TKQogICAgICAgICBib29sIG1f
Y3NzUmVnaW9uc0VuYWJsZWQgOiAxOwogI2VuZGlmCisjaWYgRU5BQkxFKENTU19WQVJJQUJMRVMp
CisgICAgICAgIGJvb2wgbV9jc3NWYXJpYWJsZXNFbmFibGVkIDogMTsKKyNlbmRpZgogICAgICAg
ICBib29sIG1fcmVnaW9uQmFzZWRDb2x1bW5zRW5hYmxlZCA6IDE7CiAgICAgICAgIGJvb2wgbV9j
c3NHcmlkTGF5b3V0RW5hYmxlZCA6IDE7CiAgICAgICAgIGJvb2wgbV9kb3dubG9hZGFibGVCaW5h
cnlGb250c0VuYWJsZWQgOiAxOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9J
bnRlcm5hbFNldHRpbmdzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0
aW5ncy5jcHAKaW5kZXggNzFkMDAxMzAxMDY5MmNmN2NhYjE2NTVjZTFkNTUxOWEwNzZiZTU3Mi4u
YmY0MzkyMzA1OGUzYjU2YTIzZmFkMjE2YjA4ZjA2NmIzMzFjMWIyNCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuY3BwCkBAIC0zNDgsNiArMzQ4LDE4IEBAIHZv
aWQgSW50ZXJuYWxTZXR0aW5nczo6c2V0Q1NTRXhjbHVzaW9uc0VuYWJsZWQoYm9vbCBlbmFibGVk
LCBFeGNlcHRpb25Db2RlJiBlYykKICAgICBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzZXRDU1NF
eGNsdXNpb25zRW5hYmxlZChlbmFibGVkKTsKIH0KIAordm9pZCBJbnRlcm5hbFNldHRpbmdzOjpz
ZXRDU1NWYXJpYWJsZXNFbmFibGVkKGJvb2wgZW5hYmxlZCwgRXhjZXB0aW9uQ29kZSYgZWMpCit7
CisgICAgSW50ZXJuYWxTZXR0aW5nc0d1YXJkRm9yU2V0dGluZ3MoKTsKKyAgICBzZXR0aW5ncygp
LT5zZXRDU1NWYXJpYWJsZXNFbmFibGVkKGVuYWJsZWQpOworfQorCitib29sIEludGVybmFsU2V0
dGluZ3M6OmNzc1ZhcmlhYmxlc0VuYWJsZWQoRXhjZXB0aW9uQ29kZSYgZWMpCit7CisgICAgSW50
ZXJuYWxTZXR0aW5nc0d1YXJkRm9yU2V0dGluZ3NSZXR1cm4oZmFsc2UpOworICAgIHJldHVybiBz
ZXR0aW5ncygpLT5jc3NWYXJpYWJsZXNFbmFibGVkKCk7Cit9CisKIHZvaWQgSW50ZXJuYWxTZXR0
aW5nczo6c2V0TWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUoYm9vbCBlbmFibGVkLCBF
eGNlcHRpb25Db2RlJiBlYykKIHsKICAgICBJbnRlcm5hbFNldHRpbmdzR3VhcmRGb3JTZXR0aW5n
cygpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdz
LmggYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaAppbmRleCBhODdm
OTZmNzhhMTAyOTU2ODA3ZjU2YmFlMTUwY2JlYThmZGQxNmM0Li4xMjdkYTQyOGYwNjc1ZDE4MjQ3
OTViYWU5OGQ1MmQ2MGRhMDJiYjM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5n
L0ludGVybmFsU2V0dGluZ3MuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFs
U2V0dGluZ3MuaApAQCAtNzUsNiArNzUsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRFbmFibGVT
Y3JvbGxBbmltYXRvcihib29sIGVuYWJsZWQsIEV4Y2VwdGlvbkNvZGUmKTsKICAgICBib29sIHNj
cm9sbEFuaW1hdG9yRW5hYmxlZChFeGNlcHRpb25Db2RlJik7CiAgICAgdm9pZCBzZXRDU1NFeGNs
dXNpb25zRW5hYmxlZChib29sIGVuYWJsZWQsIEV4Y2VwdGlvbkNvZGUmKTsKKyAgICB2b2lkIHNl
dENTU1ZhcmlhYmxlc0VuYWJsZWQoYm9vbCBlbmFibGVkLCBFeGNlcHRpb25Db2RlJik7CisgICAg
Ym9vbCBjc3NWYXJpYWJsZXNFbmFibGVkKEV4Y2VwdGlvbkNvZGUmKTsKICAgICB2b2lkIHNldE1l
ZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKGJvb2wsIEV4Y2VwdGlvbkNvZGUmKTsKICAg
ICB2b2lkIHNldEVkaXRpbmdCZWhhdmlvcihjb25zdCBTdHJpbmcmLCBFeGNlcHRpb25Db2RlJik7
CiAgICAgdm9pZCBzZXRGaXhlZFBvc2l0aW9uQ3JlYXRlc1N0YWNraW5nQ29udGV4dChib29sLCBF
eGNlcHRpb25Db2RlJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVy
bmFsU2V0dGluZ3MuaWRsIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdz
LmlkbAppbmRleCAwYWY1MzhhNTNhY2RlMzE5ZDk1MThhMTI0OTJkZDFjMDI4NGI0MGYxLi4xOTY1
ZjA1ZTdiNjgzNGZmNWM1ZDM4Y2I4OTAxOGRiY2U2OGJjNGY2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5pZGwKQEAgLTU0LDYgKzU0LDggQEAgbW9kdWxlIHdp
bmRvdyB7CiAgICAgICAgIHZvaWQgc2V0RW5hYmxlU2Nyb2xsQW5pbWF0b3IoaW4gYm9vbGVhbiBl
bmFibGVkKSByYWlzZXMoRE9NRXhjZXB0aW9uKTsKICAgICAgICAgYm9vbGVhbiBzY3JvbGxBbmlt
YXRvckVuYWJsZWQoKSByYWlzZXMoRE9NRXhjZXB0aW9uKTsKICAgICAgICAgdm9pZCBzZXRDU1NF
eGNsdXNpb25zRW5hYmxlZChpbiBib29sZWFuIGVuYWJsZWQpIHJhaXNlcyhET01FeGNlcHRpb24p
OworICAgICAgICB2b2lkIHNldENTU1ZhcmlhYmxlc0VuYWJsZWQoaW4gYm9vbGVhbiBlbmFibGVk
KSByYWlzZXMoRE9NRXhjZXB0aW9uKTsKKyAgICAgICAgYm9vbGVhbiBjc3NWYXJpYWJsZXNFbmFi
bGVkKCkgcmFpc2VzKERPTUV4Y2VwdGlvbik7CiAgICAgICAgIHZvaWQgc2V0TWVkaWFQbGF5YmFj
a1JlcXVpcmVzVXNlckdlc3R1cmUoaW4gYm9vbGVhbiBlbmFibGVkKSByYWlzZXMoRE9NRXhjZXB0
aW9uKTsKICAgICAgICAgdm9pZCBzZXRFZGl0aW5nQmVoYXZpb3IoaW4gRE9NU3RyaW5nIGJlaGF2
aW9yKSByYWlzZXMoRE9NRXhjZXB0aW9uKTsKICAgICAgICAgdm9pZCBzZXRGaXhlZFBvc2l0aW9u
Q3JlYXRlc1N0YWNraW5nQ29udGV4dChpbiBib29sZWFuIGNyZWF0ZXMpIHJhaXNlcyhET01FeGNl
cHRpb24pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9mZWF0dXJlcy5neXBp
IGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9mZWF0dXJlcy5neXBpCmluZGV4IGE0MjkwYThiM2M1
NzdjY2VjMmZhODljODM2NjY0MzFjNmJjZTZmOTEuLmNkZGJmYTdjZDZkYTJiYjBjM2NmZTM0OTA4
OGU2Y2QyMTVmNmVjOWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vZmVhdHVy
ZXMuZ3lwaQorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL2ZlYXR1cmVzLmd5cGkKQEAgLTQ2
LDcgKzQ2LDcgQEAKICAgICAgICdFTkFCTEVfQ1NTX0lNQUdFX1JFU09MVVRJT049MCcsCiAgICAg
ICAnRU5BQkxFX0NTU19SRUdJT05TPTEnLAogICAgICAgJ0VOQUJMRV9DU1NfU0hBREVSUz0xJywK
LSAgICAgICdFTkFCTEVfQ1NTX1ZBUklBQkxFUz0wJywKKyAgICAgICdFTkFCTEVfQ1NTX1ZBUklB
QkxFUz0xJywKICAgICAgICdFTkFCTEVfQ1VTVE9NX1NDSEVNRV9IQU5ETEVSPTAnLAogICAgICAg
J0VOQUJMRV9EQVRBTElTVD0xJywKICAgICAgICdFTkFCTEVfREFTSEJPQVJEX1NVUFBPUlQ9MCcs
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJTZXR0aW5ncy5o
IGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViU2V0dGluZ3MuaAppbmRleCBiYWI1
YzM4ZGMwOGM2MjUwOTlmMTUxMTkwNDM2YWUxZDhjOTAxNmRhLi41ZWM1YzUwZGFkMjg4ZTMxYTJj
YTA2MTZkNmRhYTEwMTNjYjNmNmI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVt
L3B1YmxpYy9XZWJTZXR0aW5ncy5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGlj
L1dlYlNldHRpbmdzLmgKQEAgLTEwNSw2ICsxMDUsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2
b2lkIHNldEV4cGVyaW1lbnRhbENTU1JlZ2lvbnNFbmFibGVkKGJvb2wpID0gMDsKICAgICB2aXJ0
dWFsIHZvaWQgc2V0RXhwZXJpbWVudGFsQ1NTR3JpZExheW91dEVuYWJsZWQoYm9vbCkgPSAwOwog
ICAgIHZpcnR1YWwgdm9pZCBzZXRFeHBlcmltZW50YWxDU1NDdXN0b21GaWx0ZXJFbmFibGVkKGJv
b2wpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgc2V0RXhwZXJpbWVudGFsQ1NTVmFyaWFibGVzRW5h
YmxlZChib29sKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHNldE9wZW5HTE11bHRpc2FtcGxpbmdF
bmFibGVkKGJvb2wpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0UHJpdmlsZWdlZFdlYkdMRXh0
ZW5zaW9uc0VuYWJsZWQoYm9vbCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBzZXRXZWJHTEVycm9y
c1RvQ29uc29sZUVuYWJsZWQoYm9vbCkgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
c3JjL1dlYlNldHRpbmdzSW1wbC5jcHAKaW5kZXggNDNjNDMzYzMwNjQyNDlhMTViZTIyMmZjZTk3
NGUzNTdlMTMzNTM4My4uMmFjZGU4Mzk2Yjk4ZTA4MTBjYTkzOTQ1N2NlNWEwM2JjNDY2ZTI2NyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuY3BwCkBA
IC0zMzgsNiArMzM4LDExIEBAIHZvaWQgV2ViU2V0dGluZ3NJbXBsOjpzZXRFeHBlcmltZW50YWxD
U1NDdXN0b21GaWx0ZXJFbmFibGVkKGJvb2wgZW5hYmxlZCkKICAgICBtX3NldHRpbmdzLT5zZXRD
U1NDdXN0b21GaWx0ZXJFbmFibGVkKGVuYWJsZWQpOwogfQogCit2b2lkIFdlYlNldHRpbmdzSW1w
bDo6c2V0RXhwZXJpbWVudGFsVmFyaWFibGVzRW5hYmxlZChib29sIGVuYWJsZWQpCit7CisgICAg
bV9zZXR0aW5ncy0+c2V0Q1NTVmFyaWFibGVzRW5hYmxlZChlbmFibGVkKTsKK30KKwogdm9pZCBX
ZWJTZXR0aW5nc0ltcGw6OnNldE9wZW5HTE11bHRpc2FtcGxpbmdFbmFibGVkKGJvb2wgZW5hYmxl
ZCkKIHsKICAgICBtX3NldHRpbmdzLT5zZXRPcGVuR0xNdWx0aXNhbXBsaW5nRW5hYmxlZChlbmFi
bGVkKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNldHRpbmdz
SW1wbC5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmgKaW5k
ZXggOWE2NWMyYWM2YWQ5YjM3ZTkxNTc3YWYxMjUxY2QxNDc5ODNhMzMzMC4uZGRkODkxMTRmNjI5
ODI3N2YxYTYxZWRjMjhlYzgxMzI2YzQ2NGE4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmgKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmgKQEAgLTk3LDYgKzk3LDcgQEAgcHVibGljOgogICAgIHZp
cnR1YWwgdm9pZCBzZXRFeHBlcmltZW50YWxDU1NSZWdpb25zRW5hYmxlZChib29sKTsKICAgICB2
aXJ0dWFsIHZvaWQgc2V0RXhwZXJpbWVudGFsQ1NTR3JpZExheW91dEVuYWJsZWQoYm9vbCk7CiAg
ICAgdmlydHVhbCB2b2lkIHNldEV4cGVyaW1lbnRhbENTU0N1c3RvbUZpbHRlckVuYWJsZWQoYm9v
bCk7CisgICAgdmlydHVhbCB2b2lkIHNldEV4cGVyaW1lbnRhbENTU1ZhcmlhYmxlc0VuYWJsZWQo
Ym9vbCk7CiAgICAgdmlydHVhbCB2b2lkIHNldE9wZW5HTE11bHRpc2FtcGxpbmdFbmFibGVkKGJv
b2wpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRQcml2aWxlZ2VkV2ViR0xFeHRlbnNpb25zRW5hYmxl
ZChib29sKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0V2ViR0xFcnJvcnNUb0NvbnNvbGVFbmFibGVk
KGJvb2wpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2JvcmRl
ci13aWR0aC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2JvcmRlci13aWR0
aC5odG1sCmluZGV4IDIzNWMxMjcyMGNmOGY5MGM0MmFmNTM0ODYyN2RiYjU1ZTVjMWJkYmEuLmZm
MzEzMDBlMmM1NzY2ZmQxZjM0OTU0ZDkzODE0NGMyYTIyYzU2ZTIgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9ib3JkZXItd2lkdGguaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvYm9yZGVyLXdpZHRoLmh0bWwKQEAgLTEsMyArMSw2IEBA
Cis8c2NyaXB0PgoraW50ZXJuYWxzLnNldHRpbmdzLnNldENTU1ZhcmlhYmxlc0VuYWJsZWQodHJ1
ZSk7Cis8L3NjcmlwdD4KIDxzdHlsZT4KIGRpdiB7CiAgIGJvcmRlci1jb2xvcjogZ3JlZW47CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvYnVpbGQtc3VwcG9ydHMt
dmFyaWFibGVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9i
dWlsZC1zdXBwb3J0cy12YXJpYWJsZXMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmYwMzNhNTAx
MGRhNGEyMjVhMWJhNzBlZWRkOTMzMzk3YWU1YmViZmMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvYnVpbGQtc3VwcG9ydHMtdmFyaWFibGVzLWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxIEBACitZRVMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
Y3NzL3ZhcmlhYmxlcy9idWlsZC1zdXBwb3J0cy12YXJpYWJsZXMuaHRtbCBiL0xheW91dFRlc3Rz
L2Zhc3QvY3NzL3ZhcmlhYmxlcy9idWlsZC1zdXBwb3J0cy12YXJpYWJsZXMuaHRtbApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi40OTAwY2I1NmNhYWY1ZjQ2NDFiZDFiMGRiZDg3ZmUxMWNhNDE0MTMwCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2J1aWxkLXN1cHBvcnRzLXZh
cmlhYmxlcy5odG1sCkBAIC0wLDAgKzEsOSBAQAorPGJvZHk+Tk88L2JvZHk+Cis8c2NyaXB0Pgor
aWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCitp
bnRlcm5hbHMuc2V0dGluZ3Muc2V0Q1NTVmFyaWFibGVzRW5hYmxlZCh0cnVlKTsKK2lmIChpbnRl
cm5hbHMuc2V0dGluZ3MuY3NzVmFyaWFibGVzRW5hYmxlZCgpKQorICAgIGRvY3VtZW50LmJvZHku
aW5uZXJIVE1MID0gIllFUyI7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvY3NzL3ZhcmlhYmxlcy9jb2xvcnMtdGVzdC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3Mv
dmFyaWFibGVzL2NvbG9ycy10ZXN0Lmh0bWwKaW5kZXggYWVkZTM5ZDQ2NWU4ZmUxMTkxNzdjYWJh
Y2I0NTQ0NWI5ZjVjYTBhYy4uYWFmZGIyNzZmYjlhYmVhODQ5MjYwZGRiOWVlN2JiNWE4MTVjNTZk
NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2NvbG9ycy10ZXN0
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2NvbG9ycy10ZXN0Lmh0
bWwKQEAgLTEsMyArMSw2IEBACis8c2NyaXB0PgoraW50ZXJuYWxzLnNldHRpbmdzLnNldENTU1Zh
cmlhYmxlc0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KIDxzdHlsZT4KIGJvZHkgewogICAgIC13
ZWJraXQtdmFyLWZvcmVncm91bmQ6IGdyZWVuOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9jc3MvdmFyaWFibGVzL2NvbXBsZXgtY3ljbGUuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3Nz
L3ZhcmlhYmxlcy9jb21wbGV4LWN5Y2xlLmh0bWwKaW5kZXggMDFhNzY5OTBlNDhkYjcyMjA1NDQ5
ZjQyNDQ2Yzg0OWIzOGY3YjAyZC4uMzU5YzhiZjRkZjQ5M2E3MzgzYTY0MGJlNmZkM2EzZjJhMThl
NTU4NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2NvbXBsZXgt
Y3ljbGUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvY29tcGxleC1j
eWNsZS5odG1sCkBAIC0xLDMgKzEsNiBAQAorPHNjcmlwdD4KK2ludGVybmFscy5zZXR0aW5ncy5z
ZXRDU1NWYXJpYWJsZXNFbmFibGVkKHRydWUpOworPC9zY3JpcHQ+CiA8c3R5bGU+CiBib2R5IHsK
ICAgICAtd2Via2l0LXZhci1hOiAtd2Via2l0LXZhcihmKTsKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9jb21wdXRlZC1zdHlsZS5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9jc3MvdmFyaWFibGVzL2NvbXB1dGVkLXN0eWxlLmh0bWwKaW5kZXggMDdiNDgxZTQ5MzQz
NzI0MWUyZTAwMGQzOTdiMTcxYTc0NGNkMDliNi4uYzRkNjQyZmMwZmM1YTliZDRlNjk0ZjEwZjY4
NjFhMzg5MjVlN2ZmMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVz
L2NvbXB1dGVkLXN0eWxlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVz
L2NvbXB1dGVkLXN0eWxlLmh0bWwKQEAgLTEsMyArMSw2IEBACis8c2NyaXB0PgoraW50ZXJuYWxz
LnNldHRpbmdzLnNldENTU1ZhcmlhYmxlc0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KIDxzdHls
ZT4KIGJvZHkgewogICAgIC13ZWJraXQtdmFyLWE6IGJvbGQ7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvaW5oZXJpdGVkLXZhbHVlcy5odG1sIGIvTGF5b3V0VGVz
dHMvZmFzdC9jc3MvdmFyaWFibGVzL2luaGVyaXRlZC12YWx1ZXMuaHRtbAppbmRleCA1OWJmYWNh
MmNlNDg4NDQwOWFmMWZjMzBiOGEzNWM0NGIwYWI5NDU2Li5hMmUzZjA5Y2IwMTNhZjQ1NGRjNmUw
ZWQ2YWU1ZDA1ZTYwYjYwNDVjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJp
YWJsZXMvaW5oZXJpdGVkLXZhbHVlcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3Zh
cmlhYmxlcy9pbmhlcml0ZWQtdmFsdWVzLmh0bWwKQEAgLTEsMyArMSw2IEBACis8c2NyaXB0Pgor
aW50ZXJuYWxzLnNldHRpbmdzLnNldENTU1ZhcmlhYmxlc0VuYWJsZWQodHJ1ZSk7Cis8L3Njcmlw
dD4KIDxzdHlsZT4KIGJvZHkgewogICAgIC13ZWJraXQtdmFyLWZvcmVncm91bmQ6IGdyZWVuOwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2lubGluZS1zdHlsZXMu
aHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9pbmxpbmUtc3R5bGVzLmh0bWwK
aW5kZXggOWExYmU2YmY5YmM4OTk3ODg1N2UxZTk1MjAxN2I2ZmFkOGFmNTQ3YS4uMWRjMjNiZDVl
M2Q5YzI2ZDBmZDJmMWFmYjQ2ZDhhNzQzZGIxMTUwMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
ZmFzdC9jc3MvdmFyaWFibGVzL2lubGluZS1zdHlsZXMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9m
YXN0L2Nzcy92YXJpYWJsZXMvaW5saW5lLXN0eWxlcy5odG1sCkBAIC0xLDMgKzEsNiBAQAorPHNj
cmlwdD4KK2ludGVybmFscy5zZXR0aW5ncy5zZXRDU1NWYXJpYWJsZXNFbmFibGVkKHRydWUpOwor
PC9zY3JpcHQ+CiA8Ym9keSBzdHlsZT0iLXdlYmtpdC12YXItYTogZ3JlZW47Ij4KIDxkaXYgc3R5
bGU9ImNvbG9yOiAtd2Via2l0LXZhcihhKTsiPgogVGhpcyB0ZXh0IHNob3VsZCBiZSBncmVlbiBv
biBhIHdoaXRlIGJhY2tncm91bmQuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92
YXJpYWJsZXMvaW52YWxpZC1zaG9ydGhhbmQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3Zh
cmlhYmxlcy9pbnZhbGlkLXNob3J0aGFuZC5odG1sCmluZGV4IGM5OGU0ZDM5NGM0N2NiMDkxOWM1
NjVmZjk4NWVkYjJmM2Y1ZGJmNmIuLjU3ZmY3ZWVlZWU0YWEyY2VkNDY2NDU1NWE3OTA5ODNkYmMx
ZjBhMmUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9pbnZhbGlk
LXNob3J0aGFuZC5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9pbnZh
bGlkLXNob3J0aGFuZC5odG1sCkBAIC0xLDMgKzEsNiBAQAorPHNjcmlwdD4KK2ludGVybmFscy5z
ZXR0aW5ncy5zZXRDU1NWYXJpYWJsZXNFbmFibGVkKHRydWUpOworPC9zY3JpcHQ+CiA8c3R5bGU+
CiBkaXYgewogICAgIC13ZWJraXQtdmFyLWE6IDEwcHggc29saWQgZ3JlZW47CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvaW52YWxpZC12YXJpYWJsZS12YWx1ZS5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2ludmFsaWQtdmFyaWFibGUtdmFs
dWUuaHRtbAppbmRleCA0Y2QwNzU3OTU3MjlmM2IxNGZlMTY2NWM0YTFkZGRmOWJlY2ViNmVjLi5k
ZTE4ZDc5NmQ2MTgxMzA0NDdkOWM0NzkzYjMyMTEzYzUxMjc3MWE5IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvaW52YWxpZC12YXJpYWJsZS12YWx1ZS5odG1sCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9pbnZhbGlkLXZhcmlhYmxlLXZhbHVl
Lmh0bWwKQEAgLTEsMyArMSw2IEBACis8c2NyaXB0PgoraW50ZXJuYWxzLnNldHRpbmdzLnNldENT
U1ZhcmlhYmxlc0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KIDxzdHlsZT4KIGRpdiB7CiAgICAg
LXdlYmtpdC12YXItYTogZ3JlZW47CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92
YXJpYWJsZXMvbXVsdGktbGV2ZWwtY3ljbGUuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3Zh
cmlhYmxlcy9tdWx0aS1sZXZlbC1jeWNsZS5odG1sCmluZGV4IDZjODY0YTBkOTgyZmY1MzdmYTU4
Njk4Zjc0YTlkNjQxYzMxM2E2NzUuLjM3NzJiMTQ3NjQyOTcwNzNjNDZkMjMxZmY2NjhiNjAzZTM2
NDhhMTggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9tdWx0aS1s
ZXZlbC1jeWNsZS5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9tdWx0
aS1sZXZlbC1jeWNsZS5odG1sCkBAIC0xLDMgKzEsNiBAQAorPHNjcmlwdD4KK2ludGVybmFscy5z
ZXR0aW5ncy5zZXRDU1NWYXJpYWJsZXNFbmFibGVkKHRydWUpOworPC9zY3JpcHQ+CiA8c3R5bGU+
CiAuYSB7CiAgICAgLXdlYmtpdC12YXItYTogLXdlYmtpdC12YXIoYik7CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvcmVkZWZpbml0aW9uLmh0bWwgYi9MYXlvdXRU
ZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvcmVkZWZpbml0aW9uLmh0bWwKaW5kZXggZTQzOGY1YTVh
MjViMTgxOGY2OGU3OTdiNTMyZGIwNzgxYjZhYmRiZS4uYTAyMThiMWMxNTZkNjc0ZjdiZTdhN2Q1
MTZjOGEzMjQ0ZTA0OTc2MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFi
bGVzL3JlZGVmaW5pdGlvbi5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxl
cy9yZWRlZmluaXRpb24uaHRtbApAQCAtMSwzICsxLDYgQEAKKzxzY3JpcHQ+CitpbnRlcm5hbHMu
c2V0dGluZ3Muc2V0Q1NTVmFyaWFibGVzRW5hYmxlZCh0cnVlKTsKKzwvc2NyaXB0PgogPHN0eWxl
PgogYm9keSB7CiAgICAgLXdlYmtpdC12YXItYTogcmVkOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9jc3MvdmFyaWFibGVzL3Nob3J0aGFuZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9j
c3MvdmFyaWFibGVzL3Nob3J0aGFuZC5odG1sCmluZGV4IDVkMjk5MmU5ZGY2Njg2NDAyZjUzMGMz
MDY1YmI0ODUxNTJjYWVmMjIuLjU4YWJmYjA1NjcxMWE2M2M3OGY2MDRiZDcxOWUyZjJlMWMxZWUz
ZjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9zaG9ydGhhbmQu
aHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvc2hvcnRoYW5kLmh0bWwK
QEAgLTEsMyArMSw2IEBACis8c2NyaXB0PgoraW50ZXJuYWxzLnNldHRpbmdzLnNldENTU1Zhcmlh
Ymxlc0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KIDxzdHlsZT4KIGRpdiB7CiAgICAgLXdlYmtp
dC12YXItbXlib3JkZXI6IDEwcHggc29saWQgZ3JlZW47CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L2Nzcy92YXJpYWJsZXMvc2ltcGxlLWN5Y2xlLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0
L2Nzcy92YXJpYWJsZXMvc2ltcGxlLWN5Y2xlLmh0bWwKaW5kZXggNGQxZTYzZjQ0MzEzYmVhMTY3
OTI3MzE0MDFhY2U3NTE5Y2Y1YmJhYS4uNmE4ZjNmY2ZjNzczYzFiNGJiZDFlNmUwYmMwZjJmZmY2
MmIxMGVkNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL3NpbXBs
ZS1jeWNsZS5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9zaW1wbGUt
Y3ljbGUuaHRtbApAQCAtMSwzICsxLDYgQEAKKzxzY3JpcHQ+CitpbnRlcm5hbHMuc2V0dGluZ3Mu
c2V0Q1NTVmFyaWFibGVzRW5hYmxlZCh0cnVlKTsKKzwvc2NyaXB0PgogPHN0eWxlPgogYm9keSB7
CiAgICAgLXdlYmtpdC12YXItYTogLXdlYmtpdC12YXIoYSk7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvdHJhbnNmb3JtLXRlc3QuaHRtbCBiL0xheW91dFRlc3Rz
L2Zhc3QvY3NzL3ZhcmlhYmxlcy90cmFuc2Zvcm0tdGVzdC5odG1sCmluZGV4IGNjNjNjZTRlODFl
NWI5MDFlNTEwNzcwM2NmYWVmZDQ5ZmZlNzk2ODQuLjMxMGVkM2Q1OWVlYTRkNzlmMGE2YWMyYWIz
ODVjMTkzNWExZTJkNzIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxl
cy90cmFuc2Zvcm0tdGVzdC5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxl
cy90cmFuc2Zvcm0tdGVzdC5odG1sCkBAIC0xLDMgKzEsNiBAQAorPHNjcmlwdD4KK2ludGVybmFs
cy5zZXR0aW5ncy5zZXRDU1NWYXJpYWJsZXNFbmFibGVkKHRydWUpOworPC9zY3JpcHQ+CiA8c3R5
bGU+CiBkaXYgewogICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy91bmRlZmluZWQuaHRtbCBiL0xheW91dFRlc3RzL2Zh
c3QvY3NzL3ZhcmlhYmxlcy91bmRlZmluZWQuaHRtbAppbmRleCA3NzQzMTA0ZTRhZTViNGY3ZjYx
NTQ5NDcyYWI5NWY1MGEzNzU5ZGQ5Li4wZGI5ZTczY2FmMjZmYTAyMjc4NTBmZTkyYzVlZDg4ZDIz
M2JlOThiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvdW5kZWZp
bmVkLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL3VuZGVmaW5lZC5o
dG1sCkBAIC0xLDMgKzEsNiBAQAorPHNjcmlwdD4KK2ludGVybmFscy5zZXR0aW5ncy5zZXRDU1NW
YXJpYWJsZXNFbmFibGVkKHRydWUpOworPC9zY3JpcHQ+CiA8c3R5bGU+CiBib2R5IHsKICAgICBi
b3JkZXI6IC13ZWJraXQtdmFyKG15Ym9yZGVyKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvY3NzL3ZhcmlhYmxlcy91c2UtYmVmb3JlLWRlZmluZWQuaHRtbCBiL0xheW91dFRlc3RzL2Zh
c3QvY3NzL3ZhcmlhYmxlcy91c2UtYmVmb3JlLWRlZmluZWQuaHRtbAppbmRleCBiYmE0MWJlOGVh
MjFlNWMwZTUxNTY0NzY5MmU1Yzc5ODVjZmY4ZWEwLi4zYjI2ODljZjQ4N2U0OGFiMGRkZGQwNjJk
YTBlNTliZTZiNjAwNmIwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJs
ZXMvdXNlLWJlZm9yZS1kZWZpbmVkLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFy
aWFibGVzL3VzZS1iZWZvcmUtZGVmaW5lZC5odG1sCkBAIC0xLDMgKzEsNiBAQAorPHNjcmlwdD4K
K2ludGVybmFscy5zZXR0aW5ncy5zZXRDU1NWYXJpYWJsZXNFbmFibGVkKHRydWUpOworPC9zY3Jp
cHQ+CiA8c3R5bGU+CiBkaXYgewogICAgIGNvbG9yOiAtd2Via2l0LXZhcihhKTsKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy92YXItaW5zaWRlLXNob3J0aGFuZC5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL3Zhci1pbnNpZGUtc2hvcnRoYW5k
Lmh0bWwKaW5kZXggMDY5YTU4ZjM1YjQzOTY3M2Q2YTJjOTIyYWU1MDI4ZTg3OTFiYTY5OS4uYzJh
NzkwYjY5MDRkZTViZDgwM2FjM2Q3ODRjM2ZlMjZjYjE1MjVkNyAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL3Zhci1pbnNpZGUtc2hvcnRoYW5kLmh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL3Zhci1pbnNpZGUtc2hvcnRoYW5kLmh0bWwK
QEAgLTEsMyArMSw2IEBACis8c2NyaXB0PgoraW50ZXJuYWxzLnNldHRpbmdzLnNldENTU1Zhcmlh
Ymxlc0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KIDxzdHlsZT4KIGJvZHkgewogICAgIC13ZWJr
aXQtdmFyLU15Qm9yZGVyQ29sb3I6IGdyZWVuOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9jc3MvdmFyaWFibGVzL3ZhcmlhYmxlLWNoYWluLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nz
cy92YXJpYWJsZXMvdmFyaWFibGUtY2hhaW4uaHRtbAppbmRleCBhMTVkNWJjZTRlODgyMjQ4ZjRh
MTA5YzllYTVlOTE0M2I2YmU0NGE2Li5jNDMyNjA1NmVkN2M0NjZjOTA2NGM5NmRjMWU3MzdiYTFh
MGQ0YmRlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvdmFyaWFi
bGUtY2hhaW4uaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvdmFyaWFi
bGUtY2hhaW4uaHRtbApAQCAtMSwzICsxLDYgQEAKKzxzY3JpcHQ+CitpbnRlcm5hbHMuc2V0dGlu
Z3Muc2V0Q1NTVmFyaWFibGVzRW5hYmxlZCh0cnVlKTsKKzwvc2NyaXB0PgogPHN0eWxlPgogYm9k
eSB7CiAgICAgLXdlYmtpdC12YXItYzogZ3JlZW47Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>148933</attachid>
            <date>2012-06-21 18:20:15 -0700</date>
            <delta_ts>2012-06-21 20:31:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-89542-20120622112013.patch</filename>
            <type>text/plain</type>
            <size>25232</size>
            <attacher name="Luke Macpherson">macpherson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIwOTgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzA1ZjI1ZTkyYTFmN2Q0
ZDM4NzUzZjRhYTYwNjdhMDE1ODM0YTU2My4uYjMyNWJkYWY2NDM1YmU3YmQxMDBiMjc2N2YwYzhj
M2UyOGRlYTRhZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDEyLTA2LTE5ICBMdWtl
IE1hY3BoZXJzb24gIDxtYWNwaGVyc29uQGNocm9taXVtLm9yZz4KKworICAgICAgICBBZGQgcnVu
dGltZSBmbGFnIHRvIGVuYWJsZS9kaXNhYmxlIENTUyB2YXJpYWJsZXMgKGluIGFkZGl0aW9uIHRv
IGV4aXN0aW5nIGNvbXBpbGUtdGltZSBmbGFnKS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTg5NTQyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLgorCisgICAgICAgICogY3NzL0NTU1Bh
cnNlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NQYXJzZXJDb250ZXh0OjpDU1NQYXJzZXJD
b250ZXh0KToKKyAgICAgICAgKFdlYkNvcmU6Om9wZXJhdG9yPT0pOgorICAgICAgICAoV2ViQ29y
ZTo6Q1NTUGFyc2VyOjpjc3NWYXJpYWJsZXNFbmFibGVkKToKKyAgICAgICAgKFdlYkNvcmUpOgor
ICAgICAgICAoV2ViQ29yZTo6Q1NTUGFyc2VyOjpkZXRlY3REYXNoVG9rZW4pOgorICAgICAgICAo
V2ViQ29yZTo6Q1NTUGFyc2VyOjpsZXgpOgorICAgICAgICAqIGNzcy9DU1NQYXJzZXIuaDoKKyAg
ICAgICAgKENTU1BhcnNlcik6CisgICAgICAgICogY3NzL0NTU1BhcnNlck1vZGUuaDoKKyAgICAg
ICAgKENTU1BhcnNlckNvbnRleHQpOgorICAgICAgICAqIHBhZ2UvU2V0dGluZ3MuaDoKKyAgICAg
ICAgKFNldHRpbmdzKToKKyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdzOjpzZXRDU1NWYXJpYWJs
ZXNFbmFibGVkKToKKyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdzOjpjc3NWYXJpYWJsZXNFbmFi
bGVkKToKKwogMjAxMi0wNi0yMSAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9yZz4KIAog
ICAgICAgICBDbGFuZyBidWlsZCBmaXguCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IGUz
YjE1ZTkzYjViMmNhNDUyMjE5MDJhM2Y3MjcwOTVmYzgzOGFiZDkuLjNkNGMwMDI3ZTAyODk2ZDgy
MjE3NTM3NGMyOGQ0OGE3YTg1NDMwZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTggQEAKKzIwMTItMDYtMTkgIEx1a2UgTWFjcGhlcnNvbiAgPG1hY3BoZXJzb25AY2hy
b21pdW0ub3JnPgorCisgICAgICAgIEFkZCBydW50aW1lIGZsYWcgdG8gZW5hYmxlL2Rpc2FibGUg
Q1NTIHZhcmlhYmxlcyAoaW4gYWRkaXRpb24gdG8gZXhpc3RpbmcgY29tcGlsZS10aW1lIGZsYWcp
LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODk1NDIK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGZlYXR1
cmVzLmd5cGk6CisgICAgICAgICogcHVibGljL1dlYlNldHRpbmdzLmg6CisgICAgICAgICogc3Jj
L1dlYlNldHRpbmdzSW1wbC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlNldHRpbmdzSW1wbDo6
c2V0RXhwZXJpbWVudGFsQ1NTVmFyaWFibGVzRW5hYmxlZCk6CisgICAgICAgIChXZWJLaXQpOgor
ICAgICAgICAqIHNyYy9XZWJTZXR0aW5nc0ltcGwuaDoKKyAgICAgICAgKFdlYlNldHRpbmdzSW1w
bCk6CisKIDIwMTItMDYtMTkgIEphbWVzIFJvYmluc29uICA8amFtZXNyQGNocm9taXVtLm9yZz4K
IAogICAgICAgICBbY2hyb21pdW1dIExheWVyUmVuZGVyZXJDaHJvbWl1bSBpcyBub3QgZ2V0dGlu
ZyB2aXNpYmlsaXR5IG1lc3NhZ2VzIGluIHNpbmdsZSB0aHJlYWRlZCBjb21wb3NpdGluZyBtb2Rl
LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcAppbmRleCA2Mzc4MzU5NmIzMjdjMzdkNzRjOTI2NDcy
ZmE2NDQ4NGExZTE1NDIyLi5mZGMxNDQ2Yzc0NWRjOWEwZDM1ZmJmNjZlMjZhNDc0NGVjOGIyZWEy
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcApAQCAtMTk0LDYgKzE5NCw5IEBAIENTU1BhcnNl
ckNvbnRleHQ6OkNTU1BhcnNlckNvbnRleHQoQ1NTUGFyc2VyTW9kZSBtb2RlLCBjb25zdCBLVVJM
JiBiYXNlVVJMKQogICAgICwgaXNDU1NDdXN0b21GaWx0ZXJFbmFibGVkKGZhbHNlKQogICAgICwg
aXNDU1NSZWdpb25zRW5hYmxlZChmYWxzZSkKICAgICAsIGlzQ1NTR3JpZExheW91dEVuYWJsZWQo
ZmFsc2UpCisjaWYgRU5BQkxFKENTU19WQVJJQUJMRVMpCisgICAgLCBpc0NTU1ZhcmlhYmxlc0Vu
YWJsZWQoZmFsc2UpCisjZW5kaWYKICAgICAsIG5lZWRzU2l0ZVNwZWNpZmljUXVpcmtzKGZhbHNl
KQogICAgICwgZW5mb3JjZXNDU1NNSU1FVHlwZUluTm9RdWlya3NNb2RlKHRydWUpCiB7CkBAIC0y
MDcsNiArMjEwLDkgQEAgQ1NTUGFyc2VyQ29udGV4dDo6Q1NTUGFyc2VyQ29udGV4dChEb2N1bWVu
dCogZG9jdW1lbnQsIGNvbnN0IEtVUkwmIGJhc2VVUkwsIGNvbnMKICAgICAsIGlzQ1NTQ3VzdG9t
RmlsdGVyRW5hYmxlZChkb2N1bWVudC0+c2V0dGluZ3MoKSA/IGRvY3VtZW50LT5zZXR0aW5ncygp
LT5pc0NTU0N1c3RvbUZpbHRlckVuYWJsZWQoKSA6IGZhbHNlKQogICAgICwgaXNDU1NSZWdpb25z
RW5hYmxlZChkb2N1bWVudC0+Y3NzUmVnaW9uc0VuYWJsZWQoKSkKICAgICAsIGlzQ1NTR3JpZExh
eW91dEVuYWJsZWQoZG9jdW1lbnQtPmNzc0dyaWRMYXlvdXRFbmFibGVkKCkpCisjaWYgRU5BQkxF
KENTU19WQVJJQUJMRVMpCisgICAgLCBpc0NTU1ZhcmlhYmxlc0VuYWJsZWQoZG9jdW1lbnQtPnNl
dHRpbmdzKCkgPyBkb2N1bWVudC0+c2V0dGluZ3MoKS0+Y3NzVmFyaWFibGVzRW5hYmxlZCgpIDog
ZmFsc2UpCisjZW5kaWYKICAgICAsIG5lZWRzU2l0ZVNwZWNpZmljUXVpcmtzKGRvY3VtZW50LT5z
ZXR0aW5ncygpID8gZG9jdW1lbnQtPnNldHRpbmdzKCktPm5lZWRzU2l0ZVNwZWNpZmljUXVpcmtz
KCkgOiBmYWxzZSkKICAgICAsIGVuZm9yY2VzQ1NTTUlNRVR5cGVJbk5vUXVpcmtzTW9kZSghZG9j
dW1lbnQtPnNldHRpbmdzKCkgfHwgZG9jdW1lbnQtPnNldHRpbmdzKCktPmVuZm9yY2VDU1NNSU1F
VHlwZUluTm9RdWlya3NNb2RlKCkpCiB7CkBAIC0yMjEsNiArMjI3LDkgQEAgYm9vbCBvcGVyYXRv
cj09KGNvbnN0IENTU1BhcnNlckNvbnRleHQmIGEsIGNvbnN0IENTU1BhcnNlckNvbnRleHQmIGIp
CiAgICAgICAgICYmIGEuaXNDU1NDdXN0b21GaWx0ZXJFbmFibGVkID09IGIuaXNDU1NDdXN0b21G
aWx0ZXJFbmFibGVkCiAgICAgICAgICYmIGEuaXNDU1NSZWdpb25zRW5hYmxlZCA9PSBiLmlzQ1NT
UmVnaW9uc0VuYWJsZWQKICAgICAgICAgJiYgYS5pc0NTU0dyaWRMYXlvdXRFbmFibGVkID09IGIu
aXNDU1NHcmlkTGF5b3V0RW5hYmxlZAorI2lmIEVOQUJMRShDU1NfVkFSSUFCTEVTKQorICAgICAg
ICAmJiBhLmlzQ1NTVmFyaWFibGVzRW5hYmxlZCA9PSBiLmlzQ1NTVmFyaWFibGVzRW5hYmxlZAor
I2VuZGlmCiAgICAgICAgICYmIGEubmVlZHNTaXRlU3BlY2lmaWNRdWlya3MgPT0gYi5uZWVkc1Np
dGVTcGVjaWZpY1F1aXJrcwogICAgICAgICAmJiBhLmVuZm9yY2VzQ1NTTUlNRVR5cGVJbk5vUXVp
cmtzTW9kZSA9PSBiLmVuZm9yY2VzQ1NTTUlNRVR5cGVJbk5vUXVpcmtzTW9kZTsKIH0KQEAgLTEw
MTQsNyArMTAyMywxMSBAQCBQYXNzUmVmUHRyPENTU1ZhbHVlTGlzdD4gQ1NTUGFyc2VyOjpwYXJz
ZUZvbnRGYWNlVmFsdWUoY29uc3QgQXRvbWljU3RyaW5nJiBzdHJpbgogICAgIHJldHVybiBzdGF0
aWNfcG9pbnRlcl9jYXN0PENTU1ZhbHVlTGlzdD4oZHVtbXlTdHlsZS0+Z2V0UHJvcGVydHlDU1NW
YWx1ZShDU1NQcm9wZXJ0eUZvbnRGYW1pbHkpKTsKIH0KIAorI2lmIEVOQUJMRShDU1NfVkFSSUFC
TEVTKQorYm9vbCBDU1NQYXJzZXI6OnBhcnNlVmFsdWUoU3R5bGVQcm9wZXJ0eVNldCogZGVjbGFy
YXRpb24sIENTU1Byb3BlcnR5SUQgcHJvcGVydHlJRCwgY29uc3QgU3RyaW5nJiBzdHJpbmcsIGJv
b2wgaW1wb3J0YW50LCBDU1NQYXJzZXJNb2RlIGNzc1BhcnNlck1vZGUsIFN0eWxlU2hlZXRDb250
ZW50cyogY29udGV4dFN0eWxlU2hlZXQsIGJvb2wgZW5hYmxlQ1NTVmFyaWFibGVzKQorI2Vsc2UK
IGJvb2wgQ1NTUGFyc2VyOjpwYXJzZVZhbHVlKFN0eWxlUHJvcGVydHlTZXQqIGRlY2xhcmF0aW9u
LCBDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQsIGNvbnN0IFN0cmluZyYgc3RyaW5nLCBib29sIGlt
cG9ydGFudCwgQ1NTUGFyc2VyTW9kZSBjc3NQYXJzZXJNb2RlLCBTdHlsZVNoZWV0Q29udGVudHMq
IGNvbnRleHRTdHlsZVNoZWV0KQorI2VuZGlmCiB7CiAgICAgQVNTRVJUKCFzdHJpbmcuaXNFbXB0
eSgpKTsKICAgICBpZiAocGFyc2VTaW1wbGVMZW5ndGhWYWx1ZShkZWNsYXJhdGlvbiwgcHJvcGVy
dHlJRCwgc3RyaW5nLCBpbXBvcnRhbnQsIGNzc1BhcnNlck1vZGUpKQpAQCAtMTAyOSw2ICsxMDQy
LDkgQEAgYm9vbCBDU1NQYXJzZXI6OnBhcnNlVmFsdWUoU3R5bGVQcm9wZXJ0eVNldCogZGVjbGFy
YXRpb24sIENTU1Byb3BlcnR5SUQgcHJvcGVydHkKICAgICAgICAgY29udGV4dCA9IGNvbnRleHRT
dHlsZVNoZWV0LT5wYXJzZXJDb250ZXh0KCk7CiAgICAgICAgIGNvbnRleHQubW9kZSA9IGNzc1Bh
cnNlck1vZGU7CiAgICAgfQorI2lmIEVOQUJMRShDU1NfVkFSSUFCTEVTKQorICAgIGNvbnRleHQu
aXNDU1NWYXJpYWJsZXNFbmFibGVkID0gZW5hYmxlQ1NTVmFyaWFibGVzOworI2VuZGlmCiAgICAg
Q1NTUGFyc2VyIHBhcnNlcihjb250ZXh0KTsKICAgICByZXR1cm4gcGFyc2VyLnBhcnNlVmFsdWUo
ZGVjbGFyYXRpb24sIHByb3BlcnR5SUQsIHN0cmluZywgaW1wb3J0YW50LCBjb250ZXh0U3R5bGVT
aGVldCk7CiB9CkBAIC0yODkzLDYgKzI5MDksMTEgQEAgYm9vbCBDU1NQYXJzZXI6OnBhcnNlRmls
bFNob3J0aGFuZChDU1NQcm9wZXJ0eUlEIHByb3BJZCwgY29uc3QgQ1NTUHJvcGVydHlJRCogcHIK
IH0KIAogI2lmIEVOQUJMRShDU1NfVkFSSUFCTEVTKQorYm9vbCBDU1NQYXJzZXI6OmNzc1Zhcmlh
Ymxlc0VuYWJsZWQoKSBjb25zdAoreworICAgIHJldHVybiBtX2NvbnRleHQuaXNDU1NWYXJpYWJs
ZXNFbmFibGVkOworfQorCiB2b2lkIENTU1BhcnNlcjo6c3RvcmVWYXJpYWJsZURlY2xhcmF0aW9u
KGNvbnN0IENTU1BhcnNlclN0cmluZyYgbmFtZSwgUGFzc093blB0cjxDU1NQYXJzZXJWYWx1ZUxp
c3Q+IHZhbHVlLCBib29sIGltcG9ydGFudCkKIHsKICAgICBTdHJpbmdCdWlsZGVyIGJ1aWxkZXI7
CkBAIC04NTE2LDcgKzg1MzcsNyBAQCBpbmxpbmUgdm9pZCBDU1NQYXJzZXI6OmRldGVjdERhc2hU
b2tlbihpbnQgbGVuZ3RoKQogICAgICAgICBlbHNlIGlmIChpc0FTQ0lJQWxwaGFDYXNlbGVzc0Vx
dWFsKG5hbWVbMTBdLCAneCcpICYmIGlzRXF1YWxUb0NTU0lkZW50aWZpZXIobmFtZSArIDEsICJ3
ZWJraXQtbWEiKSkKICAgICAgICAgICAgIG1fdG9rZW4gPSBNQVhGVU5DVElPTjsKICNpZiBFTkFC
TEUoQ1NTX1ZBUklBQkxFUykKLSAgICAgICAgZWxzZSBpZiAoaXNBU0NJSUFscGhhQ2FzZWxlc3NF
cXVhbChuYW1lWzEwXSwgJ3InKSAmJiBpc0VxdWFsVG9DU1NJZGVudGlmaWVyKG5hbWUgKyAxLCAi
d2Via2l0LXZhIikpCisgICAgICAgIGVsc2UgaWYgKGNzc1ZhcmlhYmxlc0VuYWJsZWQoKSAmJiBp
c0FTQ0lJQWxwaGFDYXNlbGVzc0VxdWFsKG5hbWVbMTBdLCAncicpICYmIGlzRXF1YWxUb0NTU0lk
ZW50aWZpZXIobmFtZSArIDEsICJ3ZWJraXQtdmEiKSkKICAgICAgICAgICAgIG1fdG9rZW4gPSBW
QVJGVU5DVElPTjsKICNlbmRpZgogICAgIH0gZWxzZSBpZiAobGVuZ3RoID09IDEyICYmIGlzRXF1
YWxUb0NTU0lkZW50aWZpZXIobmFtZSArIDEsICJ3ZWJraXQtY2FsYyIpKQpAQCAtODg1OCw3ICs4
ODc5LDcgQEAgcmVzdGFydEFmdGVyQ29tbWVudDoKIAogICAgIGNhc2UgQ2hhcmFjdGVyRGFzaDoK
ICNpZiBFTkFCTEUoQ1NTX1ZBUklBQkxFUykKLSAgICAgICAgaWYgKG1fY3VycmVudENoYXJhY3Rl
clsxMF0gPT0gJy0nICYmIGlzRXF1YWxUb0NTU0lkZW50aWZpZXIobV9jdXJyZW50Q2hhcmFjdGVy
LCAid2Via2l0LXZhciIpICYmIGlzSWRlbnRpZmllclN0YXJ0QWZ0ZXJEYXNoKG1fY3VycmVudENo
YXJhY3RlciArIDExKSkgeworICAgICAgICBpZiAoY3NzVmFyaWFibGVzRW5hYmxlZCgpICYmIG1f
Y3VycmVudENoYXJhY3RlclsxMF0gPT0gJy0nICYmIGlzRXF1YWxUb0NTU0lkZW50aWZpZXIobV9j
dXJyZW50Q2hhcmFjdGVyLCAid2Via2l0LXZhciIpICYmIGlzSWRlbnRpZmllclN0YXJ0QWZ0ZXJE
YXNoKG1fY3VycmVudENoYXJhY3RlciArIDExKSkgewogICAgICAgICAgICAgLy8gaGFuZGxlIHZh
cmlhYmxlIGRlY2xhcmF0aW9ucwogICAgICAgICAgICAgbV9jdXJyZW50Q2hhcmFjdGVyICs9IDEx
OwogICAgICAgICAgICAgcGFyc2VJZGVudGlmaWVyKHJlc3VsdCwgaGFzRXNjYXBlKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NQYXJzZXIuaAppbmRleCBiMDM3ZjAzYTQzYWE1ZTA1YjBiNWE0MjE5Zjc3MjA1ZTViZDY3
NTAzLi4yOWIxYTEyNzg0NjVjNDliNjBlNzk4N2RiYTQzMDg4N2YxMmYzMDAyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1BhcnNlci5oCkBAIC03Myw3ICs3MywxMSBAQCBwdWJsaWM6CiAgICAgdm9pZCBwYXJzZVNo
ZWV0KFN0eWxlU2hlZXRDb250ZW50cyosIGNvbnN0IFN0cmluZyYsIGludCBzdGFydExpbmVOdW1i
ZXIgPSAwLCBSdWxlU291cmNlRGF0YUxpc3QqID0gMCk7CiAgICAgUGFzc1JlZlB0cjxTdHlsZVJ1
bGVCYXNlPiBwYXJzZVJ1bGUoU3R5bGVTaGVldENvbnRlbnRzKiwgY29uc3QgU3RyaW5nJik7CiAg
ICAgUGFzc1JlZlB0cjxTdHlsZUtleWZyYW1lPiBwYXJzZUtleWZyYW1lUnVsZShTdHlsZVNoZWV0
Q29udGVudHMqLCBjb25zdCBTdHJpbmcmKTsKKyNpZiBFTkFCTEUoQ1NTX1ZBUklBQkxFUykKKyAg
ICBzdGF0aWMgYm9vbCBwYXJzZVZhbHVlKFN0eWxlUHJvcGVydHlTZXQqLCBDU1NQcm9wZXJ0eUlE
LCBjb25zdCBTdHJpbmcmLCBib29sIGltcG9ydGFudCwgQ1NTUGFyc2VyTW9kZSwgU3R5bGVTaGVl
dENvbnRlbnRzKiwgYm9vbCBlbmFibGVDU1NWYXJpYWJsZXMgPSBmYWxzZSk7CisjZWxzZQogICAg
IHN0YXRpYyBib29sIHBhcnNlVmFsdWUoU3R5bGVQcm9wZXJ0eVNldCosIENTU1Byb3BlcnR5SUQs
IGNvbnN0IFN0cmluZyYsIGJvb2wgaW1wb3J0YW50LCBDU1NQYXJzZXJNb2RlLCBTdHlsZVNoZWV0
Q29udGVudHMqKTsKKyNlbmRpZgogICAgIHN0YXRpYyBib29sIHBhcnNlQ29sb3IoUkdCQTMyJiBj
b2xvciwgY29uc3QgU3RyaW5nJiwgYm9vbCBzdHJpY3QgPSBmYWxzZSk7CiAgICAgc3RhdGljIGJv
b2wgcGFyc2VTeXN0ZW1Db2xvcihSR0JBMzImIGNvbG9yLCBjb25zdCBTdHJpbmcmLCBEb2N1bWVu
dCopOwogICAgIHN0YXRpYyBQYXNzUmVmUHRyPENTU1ZhbHVlTGlzdD4gcGFyc2VGb250RmFjZVZh
bHVlKGNvbnN0IEF0b21pY1N0cmluZyYpOwpAQCAtOTIsNiArOTYsNyBAQCBwdWJsaWM6CiAgICAg
Ym9vbCBwYXJzZVF1b3RlcyhDU1NQcm9wZXJ0eUlELCBib29sIGltcG9ydGFudCk7CiAKICNpZiBF
TkFCTEUoQ1NTX1ZBUklBQkxFUykKKyAgICBib29sIGNzc1ZhcmlhYmxlc0VuYWJsZWQoKSBjb25z
dDsKICAgICB2b2lkIHN0b3JlVmFyaWFibGVEZWNsYXJhdGlvbihjb25zdCBDU1NQYXJzZXJTdHJp
bmcmLCBQYXNzT3duUHRyPENTU1BhcnNlclZhbHVlTGlzdD4sIGJvb2wgaW1wb3J0YW50KTsKICNl
bmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyTW9kZS5oIGIv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlck1vZGUuaAppbmRleCBkOTIwMGI3MmM3MjY2NmE5
OTI1Zjk3NDE3OGY5MWVhOWQ1ZTU3ZGRjLi41MjI4ZTk4MTJkOWYyMmE5ZThjYjE1YTA3NjAzMzll
ZGYxMDc2ZTM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyTW9kZS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXJNb2RlLmgKQEAgLTY1LDYgKzY1LDkg
QEAgc3RydWN0IENTU1BhcnNlckNvbnRleHQgewogICAgIGJvb2wgaXNDU1NDdXN0b21GaWx0ZXJF
bmFibGVkOwogICAgIGJvb2wgaXNDU1NSZWdpb25zRW5hYmxlZDsKICAgICBib29sIGlzQ1NTR3Jp
ZExheW91dEVuYWJsZWQ7CisjaWYgRU5BQkxFKENTU19WQVJJQUJMRVMpCisgICAgYm9vbCBpc0NT
U1ZhcmlhYmxlc0VuYWJsZWQ7CisjZW5kaWYKICAgICBib29sIG5lZWRzU2l0ZVNwZWNpZmljUXVp
cmtzOwogICAgIGJvb2wgZW5mb3JjZXNDU1NNSU1FVHlwZUluTm9RdWlya3NNb2RlOwogfTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcAppbmRleCBhMTU0YTg1ODgzOWQzMWQyM2FlYjVj
YmMyZDBlZmNlMmFkYWM1NmZjLi5lZmIyMGQ1OWJjNTE5OTQ0YTdmMjhjYTM1ZjczMjBlNWIzZTU1
OTQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwCkBAIC0zMzIzLDcgKzMzMjMs
NyBAQCB2b2lkIFN0eWxlUmVzb2x2ZXI6OnJlc29sdmVWYXJpYWJsZXMoQ1NTUHJvcGVydHlJRCBp
ZCwgQ1NTVmFsdWUqIHZhbHVlLCBWZWN0b3I8cwogCiAgICAgLy8gRklYTUU6IEl0IHdvdWxkIGJl
IGZhc3RlciBub3QgdG8gcmUtcGFyc2UgZnJvbSBzdHJpbmdzLCBidXQgZm9yIG5vdyBDU1MgcHJv
cGVydHkgdmFsaWRhdGlvbiBsaXZlcyBpbnNpZGUgdGhlIHBhcnNlciBzbyB3ZSBkbyBpdCB0aGVy
ZS4KICAgICBSZWZQdHI8U3R5bGVQcm9wZXJ0eVNldD4gcmVzdWx0U2V0ID0gU3R5bGVQcm9wZXJ0
eVNldDo6Y3JlYXRlKCk7Ci0gICAgaWYgKCFDU1NQYXJzZXI6OnBhcnNlVmFsdWUocmVzdWx0U2V0
LmdldCgpLCBpZCwgZXhwcmVzc2lvbi5zZWNvbmQsIGZhbHNlLCBDU1NTdHJpY3RNb2RlLCAwKSkK
KyAgICBpZiAoIUNTU1BhcnNlcjo6cGFyc2VWYWx1ZShyZXN1bHRTZXQuZ2V0KCksIGlkLCBleHBy
ZXNzaW9uLnNlY29uZCwgZmFsc2UsIENTU1N0cmljdE1vZGUsIDAsIHRydWUpKQogICAgICAgICBy
ZXR1cm47IC8vIGV4cHJlc3Npb24gZmFpbGVkIHRvIHBhcnNlLgogCiAgICAgZm9yICh1bnNpZ25l
ZCBpID0gMDsgaSA8IHJlc3VsdFNldC0+cHJvcGVydHlDb3VudCgpOyBpKyspIHsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
U2V0dGluZ3MuaAppbmRleCBkODQ2ZmEwN2FjMTBlODlhMjI2NzcwN2JmOTA4OGJmYTNhMmY1OWZk
Li4zZGM0NWJjNDMwYWUyMmRiMDMwYzk2MmY4YzgzMjQ4YzQ0YzJkMmE2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9T
ZXR0aW5ncy5oCkBAIC0zMzEsNiArMzMxLDE0IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAg
ICAgYm9vbCBjc3NSZWdpb25zRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAjZW5k
aWYKIAorI2lmIEVOQUJMRShDU1NfVkFSSUFCTEVTKQorICAgICAgICB2b2lkIHNldENTU1Zhcmlh
Ymxlc0VuYWJsZWQoYm9vbCBlbmFibGVkKSB7IG1fY3NzVmFyaWFibGVzRW5hYmxlZCA9IGVuYWJs
ZWQ7IH0KKyAgICAgICAgYm9vbCBjc3NWYXJpYWJsZXNFbmFibGVkKCkgY29uc3QgeyByZXR1cm4g
dHJ1ZTsgfQorI2Vsc2UKKyAgICAgICAgdm9pZCBzZXRDU1NWYXJpYWJsZXNFbmFibGVkKGJvb2wp
IHsgfQorICAgICAgICBib29sIGNzc1ZhcmlhYmxlc0VuYWJsZWQoKSBjb25zdCB7IHJldHVybiBm
YWxzZTsgfQorI2VuZGlmCisKICAgICAgICAgdm9pZCBzZXRSZWdpb25CYXNlZENvbHVtbnNFbmFi
bGVkKGJvb2wgZW5hYmxlZCkgeyBtX3JlZ2lvbkJhc2VkQ29sdW1uc0VuYWJsZWQgPSBlbmFibGVk
OyB9CiAgICAgICAgIGJvb2wgcmVnaW9uQmFzZWRDb2x1bW5zRW5hYmxlZCgpIGNvbnN0IHsgcmV0
dXJuIG1fcmVnaW9uQmFzZWRDb2x1bW5zRW5hYmxlZDsgfQogCkBAIC02NzcsNiArNjg1LDkgQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogI2lmIEVOQUJMRShDU1NfUkVHSU9OUykKICAgICAgICAgYm9v
bCBtX2Nzc1JlZ2lvbnNFbmFibGVkIDogMTsKICNlbmRpZgorI2lmIEVOQUJMRShDU1NfVkFSSUFC
TEVTKQorICAgICAgICBib29sIG1fY3NzVmFyaWFibGVzRW5hYmxlZCA6IDE7CisjZW5kaWYKICAg
ICAgICAgYm9vbCBtX3JlZ2lvbkJhc2VkQ29sdW1uc0VuYWJsZWQgOiAxOwogICAgICAgICBib29s
IG1fY3NzR3JpZExheW91dEVuYWJsZWQgOiAxOwogICAgICAgICBib29sIG1fZG93bmxvYWRhYmxl
QmluYXJ5Rm9udHNFbmFibGVkIDogMTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxTZXR0aW5ncy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFs
U2V0dGluZ3MuY3BwCmluZGV4IDcxZDAwMTMwMTA2OTJjZjdjYWIxNjU1Y2UxZDU1MTlhMDc2YmU1
NzIuLmJmNDM5MjMwNThlM2I1NmEyM2ZhZDIxNmIwOGYwNjZiMzMxYzFiMjQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmNwcApAQCAtMzQ4LDYgKzM0OCwxOCBA
QCB2b2lkIEludGVybmFsU2V0dGluZ3M6OnNldENTU0V4Y2x1c2lvbnNFbmFibGVkKGJvb2wgZW5h
YmxlZCwgRXhjZXB0aW9uQ29kZSYgZWMpCiAgICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2V0
Q1NTRXhjbHVzaW9uc0VuYWJsZWQoZW5hYmxlZCk7CiB9CiAKK3ZvaWQgSW50ZXJuYWxTZXR0aW5n
czo6c2V0Q1NTVmFyaWFibGVzRW5hYmxlZChib29sIGVuYWJsZWQsIEV4Y2VwdGlvbkNvZGUmIGVj
KQoreworICAgIEludGVybmFsU2V0dGluZ3NHdWFyZEZvclNldHRpbmdzKCk7CisgICAgc2V0dGlu
Z3MoKS0+c2V0Q1NTVmFyaWFibGVzRW5hYmxlZChlbmFibGVkKTsKK30KKworYm9vbCBJbnRlcm5h
bFNldHRpbmdzOjpjc3NWYXJpYWJsZXNFbmFibGVkKEV4Y2VwdGlvbkNvZGUmIGVjKQoreworICAg
IEludGVybmFsU2V0dGluZ3NHdWFyZEZvclNldHRpbmdzUmV0dXJuKGZhbHNlKTsKKyAgICByZXR1
cm4gc2V0dGluZ3MoKS0+Y3NzVmFyaWFibGVzRW5hYmxlZCgpOworfQorCiB2b2lkIEludGVybmFs
U2V0dGluZ3M6OnNldE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKGJvb2wgZW5hYmxl
ZCwgRXhjZXB0aW9uQ29kZSYgZWMpCiB7CiAgICAgSW50ZXJuYWxTZXR0aW5nc0d1YXJkRm9yU2V0
dGluZ3MoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0
aW5ncy5oIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmgKaW5kZXgg
YTg3Zjk2Zjc4YTEwMjk1NjgwN2Y1NmJhZTE1MGNiZWE4ZmRkMTZjNC4uMTI3ZGE0MjhmMDY3NWQx
ODI0Nzk1YmFlOThkNTJkNjBkYTAyYmIzOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVz
dGluZy9JbnRlcm5hbFNldHRpbmdzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRl
cm5hbFNldHRpbmdzLmgKQEAgLTc1LDYgKzc1LDggQEAgcHVibGljOgogICAgIHZvaWQgc2V0RW5h
YmxlU2Nyb2xsQW5pbWF0b3IoYm9vbCBlbmFibGVkLCBFeGNlcHRpb25Db2RlJik7CiAgICAgYm9v
bCBzY3JvbGxBbmltYXRvckVuYWJsZWQoRXhjZXB0aW9uQ29kZSYpOwogICAgIHZvaWQgc2V0Q1NT
RXhjbHVzaW9uc0VuYWJsZWQoYm9vbCBlbmFibGVkLCBFeGNlcHRpb25Db2RlJik7CisgICAgdm9p
ZCBzZXRDU1NWYXJpYWJsZXNFbmFibGVkKGJvb2wgZW5hYmxlZCwgRXhjZXB0aW9uQ29kZSYpOwor
ICAgIGJvb2wgY3NzVmFyaWFibGVzRW5hYmxlZChFeGNlcHRpb25Db2RlJik7CiAgICAgdm9pZCBz
ZXRNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZShib29sLCBFeGNlcHRpb25Db2RlJik7
CiAgICAgdm9pZCBzZXRFZGl0aW5nQmVoYXZpb3IoY29uc3QgU3RyaW5nJiwgRXhjZXB0aW9uQ29k
ZSYpOwogICAgIHZvaWQgc2V0Rml4ZWRQb3NpdGlvbkNyZWF0ZXNTdGFja2luZ0NvbnRleHQoYm9v
bCwgRXhjZXB0aW9uQ29kZSYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9J
bnRlcm5hbFNldHRpbmdzLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0
aW5ncy5pZGwKaW5kZXggMGFmNTM4YTUzYWNkZTMxOWQ5NTE4YTEyNDkyZGQxYzAyODRiNDBmMS4u
MTk2NWYwNWU3YjY4MzRmZjVjNWQzOGNiODkwMThkYmNlNjhiYzRmNiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmlkbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaWRsCkBAIC01NCw2ICs1NCw4IEBAIG1vZHVs
ZSB3aW5kb3cgewogICAgICAgICB2b2lkIHNldEVuYWJsZVNjcm9sbEFuaW1hdG9yKGluIGJvb2xl
YW4gZW5hYmxlZCkgcmFpc2VzKERPTUV4Y2VwdGlvbik7CiAgICAgICAgIGJvb2xlYW4gc2Nyb2xs
QW5pbWF0b3JFbmFibGVkKCkgcmFpc2VzKERPTUV4Y2VwdGlvbik7CiAgICAgICAgIHZvaWQgc2V0
Q1NTRXhjbHVzaW9uc0VuYWJsZWQoaW4gYm9vbGVhbiBlbmFibGVkKSByYWlzZXMoRE9NRXhjZXB0
aW9uKTsKKyAgICAgICAgdm9pZCBzZXRDU1NWYXJpYWJsZXNFbmFibGVkKGluIGJvb2xlYW4gZW5h
YmxlZCkgcmFpc2VzKERPTUV4Y2VwdGlvbik7CisgICAgICAgIGJvb2xlYW4gY3NzVmFyaWFibGVz
RW5hYmxlZCgpIHJhaXNlcyhET01FeGNlcHRpb24pOwogICAgICAgICB2b2lkIHNldE1lZGlhUGxh
eWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKGluIGJvb2xlYW4gZW5hYmxlZCkgcmFpc2VzKERPTUV4
Y2VwdGlvbik7CiAgICAgICAgIHZvaWQgc2V0RWRpdGluZ0JlaGF2aW9yKGluIERPTVN0cmluZyBi
ZWhhdmlvcikgcmFpc2VzKERPTUV4Y2VwdGlvbik7CiAgICAgICAgIHZvaWQgc2V0Rml4ZWRQb3Np
dGlvbkNyZWF0ZXNTdGFja2luZ0NvbnRleHQoaW4gYm9vbGVhbiBjcmVhdGVzKSByYWlzZXMoRE9N
RXhjZXB0aW9uKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vZmVhdHVyZXMu
Z3lwaSBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vZmVhdHVyZXMuZ3lwaQppbmRleCBiZjEyZWUx
N2FhMmE0Y2VmMTEyN2JmZjQ0OWQ2MmNmY2IxMGY2Y2ExLi4yYWU3OWJhOTJhYWFiOGYyYTJhNjBl
ZGM3N2E2NGY1YjA3MmZiMDJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL2Zl
YXR1cmVzLmd5cGkKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9mZWF0dXJlcy5neXBpCkBA
IC00Niw3ICs0Niw3IEBACiAgICAgICAnRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVUSU9OPTAnLAog
ICAgICAgJ0VOQUJMRV9DU1NfUkVHSU9OUz0xJywKICAgICAgICdFTkFCTEVfQ1NTX1NIQURFUlM9
MScsCi0gICAgICAnRU5BQkxFX0NTU19WQVJJQUJMRVM9MCcsCisgICAgICAnRU5BQkxFX0NTU19W
QVJJQUJMRVM9MScsCiAgICAgICAnRU5BQkxFX0NVU1RPTV9TQ0hFTUVfSEFORExFUj0wJywKICAg
ICAgICdFTkFCTEVfREFUQUxJU1Q9MScsCiAgICAgICAnRU5BQkxFX0RBU0hCT0FSRF9TVVBQT1JU
PTAnLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViU2V0dGlu
Z3MuaCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYlNldHRpbmdzLmgKaW5kZXgg
YmFiNWMzOGRjMDhjNjI1MDk5ZjE1MTE5MDQzNmFlMWQ4YzkwMTZkYS4uNWVjNWM1MGRhZDI4OGUz
MWEyY2EwNjE2ZDZkYWExMDEzY2IzZjZiNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9wdWJsaWMvV2ViU2V0dGluZ3MuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1
YmxpYy9XZWJTZXR0aW5ncy5oCkBAIC0xMDUsNiArMTA1LDcgQEAgcHVibGljOgogICAgIHZpcnR1
YWwgdm9pZCBzZXRFeHBlcmltZW50YWxDU1NSZWdpb25zRW5hYmxlZChib29sKSA9IDA7CiAgICAg
dmlydHVhbCB2b2lkIHNldEV4cGVyaW1lbnRhbENTU0dyaWRMYXlvdXRFbmFibGVkKGJvb2wpID0g
MDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0RXhwZXJpbWVudGFsQ1NTQ3VzdG9tRmlsdGVyRW5hYmxl
ZChib29sKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIHNldEV4cGVyaW1lbnRhbENTU1ZhcmlhYmxl
c0VuYWJsZWQoYm9vbCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBzZXRPcGVuR0xNdWx0aXNhbXBs
aW5nRW5hYmxlZChib29sKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHNldFByaXZpbGVnZWRXZWJH
TEV4dGVuc2lvbnNFbmFibGVkKGJvb2wpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0V2ViR0xF
cnJvcnNUb0NvbnNvbGVFbmFibGVkKGJvb2wpID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vc3JjL1dlYlNldHRpbmdzSW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuY3BwCmluZGV4IDQzYzQzM2MzMDY0MjQ5YTE1YmUyMjJm
Y2U5NzRlMzU3ZTEzMzUzODMuLmU0ZDNhZDgzNTcwYjViNWJkNTkxODVjZmM5M2Y4YmMyNjc5NGU5
NWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNldHRpbmdzSW1w
bC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmNw
cApAQCAtMzM4LDYgKzMzOCwxMSBAQCB2b2lkIFdlYlNldHRpbmdzSW1wbDo6c2V0RXhwZXJpbWVu
dGFsQ1NTQ3VzdG9tRmlsdGVyRW5hYmxlZChib29sIGVuYWJsZWQpCiAgICAgbV9zZXR0aW5ncy0+
c2V0Q1NTQ3VzdG9tRmlsdGVyRW5hYmxlZChlbmFibGVkKTsKIH0KIAordm9pZCBXZWJTZXR0aW5n
c0ltcGw6OnNldEV4cGVyaW1lbnRhbENTU1ZhcmlhYmxlc0VuYWJsZWQoYm9vbCBlbmFibGVkKQor
eworICAgIG1fc2V0dGluZ3MtPnNldENTU1ZhcmlhYmxlc0VuYWJsZWQoZW5hYmxlZCk7Cit9CisK
IHZvaWQgV2ViU2V0dGluZ3NJbXBsOjpzZXRPcGVuR0xNdWx0aXNhbXBsaW5nRW5hYmxlZChib29s
IGVuYWJsZWQpCiB7CiAgICAgbV9zZXR0aW5ncy0+c2V0T3BlbkdMTXVsdGlzYW1wbGluZ0VuYWJs
ZWQoZW5hYmxlZCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJT
ZXR0aW5nc0ltcGwuaCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNldHRpbmdzSW1w
bC5oCmluZGV4IDlhNjVjMmFjNmFkOWIzN2U5MTU3N2FmMTI1MWNkMTQ3OTgzYTMzMzAuLmRkZDg5
MTE0ZjYyOTgyNzdmMWE2MWVkYzI4ZWM4MTMyNmM0NjRhOGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNldHRpbmdzSW1wbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vc3JjL1dlYlNldHRpbmdzSW1wbC5oCkBAIC05Nyw2ICs5Nyw3IEBAIHB1YmxpYzoK
ICAgICB2aXJ0dWFsIHZvaWQgc2V0RXhwZXJpbWVudGFsQ1NTUmVnaW9uc0VuYWJsZWQoYm9vbCk7
CiAgICAgdmlydHVhbCB2b2lkIHNldEV4cGVyaW1lbnRhbENTU0dyaWRMYXlvdXRFbmFibGVkKGJv
b2wpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRFeHBlcmltZW50YWxDU1NDdXN0b21GaWx0ZXJFbmFi
bGVkKGJvb2wpOworICAgIHZpcnR1YWwgdm9pZCBzZXRFeHBlcmltZW50YWxDU1NWYXJpYWJsZXNF
bmFibGVkKGJvb2wpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRPcGVuR0xNdWx0aXNhbXBsaW5nRW5h
YmxlZChib29sKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0UHJpdmlsZWdlZFdlYkdMRXh0ZW5zaW9u
c0VuYWJsZWQoYm9vbCk7CiAgICAgdmlydHVhbCB2b2lkIHNldFdlYkdMRXJyb3JzVG9Db25zb2xl
RW5hYmxlZChib29sKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxl
cy9ib3JkZXItd2lkdGguaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9ib3Jk
ZXItd2lkdGguaHRtbAppbmRleCAyMzVjMTI3MjBjZjhmOTBjNDJhZjUzNDg2MjdkYmI1NWU1YzFi
ZGJhLi5mZjMxMzAwZTJjNTc2NmZkMWYzNDk1NGQ5MzgxNDRjMmEyMmM1NmUyIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvYm9yZGVyLXdpZHRoLmh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2JvcmRlci13aWR0aC5odG1sCkBAIC0xLDMg
KzEsNiBAQAorPHNjcmlwdD4KK2ludGVybmFscy5zZXR0aW5ncy5zZXRDU1NWYXJpYWJsZXNFbmFi
bGVkKHRydWUpOworPC9zY3JpcHQ+CiA8c3R5bGU+CiBkaXYgewogICBib3JkZXItY29sb3I6IGdy
ZWVuOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2J1aWxkLXN1
cHBvcnRzLXZhcmlhYmxlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJp
YWJsZXMvYnVpbGQtc3VwcG9ydHMtdmFyaWFibGVzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5m
MDMzYTUwMTBkYTRhMjI1YTFiYTcwZWVkZDkzMzM5N2FlNWJlYmZjCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2J1aWxkLXN1cHBvcnRzLXZhcmlhYmxl
cy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorWUVTCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L2Nzcy92YXJpYWJsZXMvYnVpbGQtc3VwcG9ydHMtdmFyaWFibGVzLmh0bWwgYi9MYXlv
dXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvYnVpbGQtc3VwcG9ydHMtdmFyaWFibGVzLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNDkwMGNiNTZjYWFmNWY0NjQxYmQxYjBkYmQ4N2ZlMTFjYTQxNDEzMAotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9idWlsZC1zdXBw
b3J0cy12YXJpYWJsZXMuaHRtbApAQCAtMCwwICsxLDkgQEAKKzxib2R5Pk5PPC9ib2R5PgorPHNj
cmlwdD4KK2lmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQo
KTsKKworaW50ZXJuYWxzLnNldHRpbmdzLnNldENTU1ZhcmlhYmxlc0VuYWJsZWQodHJ1ZSk7Citp
ZiAoaW50ZXJuYWxzLnNldHRpbmdzLmNzc1ZhcmlhYmxlc0VuYWJsZWQoKSkKKyAgICBkb2N1bWVu
dC5ib2R5LmlubmVySFRNTCA9ICJZRVMiOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvY29sb3JzLXRlc3QuaHRtbCBiL0xheW91dFRlc3RzL2Zh
c3QvY3NzL3ZhcmlhYmxlcy9jb2xvcnMtdGVzdC5odG1sCmluZGV4IGFlZGUzOWQ0NjVlOGZlMTE5
MTc3Y2FiYWNiNDU0NDViOWY1Y2EwYWMuLmFhZmRiMjc2ZmI5YWJlYTg0OTI2MGRkYjllZTdiYjVh
ODE1YzU2ZDYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9jb2xv
cnMtdGVzdC5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9jb2xvcnMt
dGVzdC5odG1sCkBAIC0xLDMgKzEsNiBAQAorPHNjcmlwdD4KK2ludGVybmFscy5zZXR0aW5ncy5z
ZXRDU1NWYXJpYWJsZXNFbmFibGVkKHRydWUpOworPC9zY3JpcHQ+CiA8c3R5bGU+CiBib2R5IHsK
ICAgICAtd2Via2l0LXZhci1mb3JlZ3JvdW5kOiBncmVlbjsKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9jb21wbGV4LWN5Y2xlLmh0bWwgYi9MYXlvdXRUZXN0cy9m
YXN0L2Nzcy92YXJpYWJsZXMvY29tcGxleC1jeWNsZS5odG1sCmluZGV4IDAxYTc2OTkwZTQ4ZGI3
MjIwNTQ0OWY0MjQ0NmM4NDliMzhmN2IwMmQuLjM1OWM4YmY0ZGY0OTNhNzM4M2E2NDBiZTZmZDNh
M2YyYTE4ZTU1ODYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9j
b21wbGV4LWN5Y2xlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2Nv
bXBsZXgtY3ljbGUuaHRtbApAQCAtMSwzICsxLDYgQEAKKzxzY3JpcHQ+CitpbnRlcm5hbHMuc2V0
dGluZ3Muc2V0Q1NTVmFyaWFibGVzRW5hYmxlZCh0cnVlKTsKKzwvc2NyaXB0PgogPHN0eWxlPgog
Ym9keSB7CiAgICAgLXdlYmtpdC12YXItYTogLXdlYmtpdC12YXIoZik7CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvY29tcHV0ZWQtc3R5bGUuaHRtbCBiL0xheW91
dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9jb21wdXRlZC1zdHlsZS5odG1sCmluZGV4IDA3YjQ4
MWU0OTM0MzcyNDFlMmUwMDBkMzk3YjE3MWE3NDRjZDA5YjYuLmM0ZDY0MmZjMGZjNWE5YmQ0ZTY5
NGYxMGY2ODYxYTM4OTI1ZTdmZjMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3Zh
cmlhYmxlcy9jb21wdXRlZC1zdHlsZS5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3Zh
cmlhYmxlcy9jb21wdXRlZC1zdHlsZS5odG1sCkBAIC0xLDMgKzEsNiBAQAorPHNjcmlwdD4KK2lu
dGVybmFscy5zZXR0aW5ncy5zZXRDU1NWYXJpYWJsZXNFbmFibGVkKHRydWUpOworPC9zY3JpcHQ+
CiA8c3R5bGU+CiBib2R5IHsKICAgICAtd2Via2l0LXZhci1hOiBib2xkOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2luaGVyaXRlZC12YWx1ZXMuaHRtbCBiL0xh
eW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9pbmhlcml0ZWQtdmFsdWVzLmh0bWwKaW5kZXgg
NTliZmFjYTJjZTQ4ODQ0MDlhZjFmYzMwYjhhMzVjNDRiMGFiOTQ1Ni4uYTJlM2YwOWNiMDEzYWY0
NTRkYzZlMGVkNmFlNWQwNWU2MGI2MDQ1YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9j
c3MvdmFyaWFibGVzL2luaGVyaXRlZC12YWx1ZXMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L2Nzcy92YXJpYWJsZXMvaW5oZXJpdGVkLXZhbHVlcy5odG1sCkBAIC0xLDMgKzEsNiBAQAorPHNj
cmlwdD4KK2ludGVybmFscy5zZXR0aW5ncy5zZXRDU1NWYXJpYWJsZXNFbmFibGVkKHRydWUpOwor
PC9zY3JpcHQ+CiA8c3R5bGU+CiBib2R5IHsKICAgICAtd2Via2l0LXZhci1mb3JlZ3JvdW5kOiBn
cmVlbjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9pbmxpbmUt
c3R5bGVzLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvaW5saW5lLXN0eWxl
cy5odG1sCmluZGV4IDlhMWJlNmJmOWJjODk5Nzg4NTdlMWU5NTIwMTdiNmZhZDhhZjU0N2EuLjFk
YzIzYmQ1ZTNkOWMyNmQwZmQyZjFhZmI0NmQ4YTc0M2RiMTE1MDAgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9pbmxpbmUtc3R5bGVzLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2lubGluZS1zdHlsZXMuaHRtbApAQCAtMSwzICsxLDYg
QEAKKzxzY3JpcHQ+CitpbnRlcm5hbHMuc2V0dGluZ3Muc2V0Q1NTVmFyaWFibGVzRW5hYmxlZCh0
cnVlKTsKKzwvc2NyaXB0PgogPGJvZHkgc3R5bGU9Ii13ZWJraXQtdmFyLWE6IGdyZWVuOyI+CiA8
ZGl2IHN0eWxlPSJjb2xvcjogLXdlYmtpdC12YXIoYSk7Ij4KIFRoaXMgdGV4dCBzaG91bGQgYmUg
Z3JlZW4gb24gYSB3aGl0ZSBiYWNrZ3JvdW5kLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9jc3MvdmFyaWFibGVzL2ludmFsaWQtc2hvcnRoYW5kLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0
L2Nzcy92YXJpYWJsZXMvaW52YWxpZC1zaG9ydGhhbmQuaHRtbAppbmRleCBjOThlNGQzOTRjNDdj
YjA5MTljNTY1ZmY5ODVlZGIyZjNmNWRiZjZiLi41N2ZmN2VlZWVlNGFhMmNlZDQ2NjQ1NTVhNzkw
OTgzZGJjMWYwYTJlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMv
aW52YWxpZC1zaG9ydGhhbmQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJs
ZXMvaW52YWxpZC1zaG9ydGhhbmQuaHRtbApAQCAtMSwzICsxLDYgQEAKKzxzY3JpcHQ+CitpbnRl
cm5hbHMuc2V0dGluZ3Muc2V0Q1NTVmFyaWFibGVzRW5hYmxlZCh0cnVlKTsKKzwvc2NyaXB0Pgog
PHN0eWxlPgogZGl2IHsKICAgICAtd2Via2l0LXZhci1hOiAxMHB4IHNvbGlkIGdyZWVuOwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2ludmFsaWQtdmFyaWFibGUt
dmFsdWUuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9pbnZhbGlkLXZhcmlh
YmxlLXZhbHVlLmh0bWwKaW5kZXggNGNkMDc1Nzk1NzI5ZjNiMTRmZTE2NjVjNGExZGRkZjliZWNl
YjZlYy4uZGUxOGQ3OTZkNjE4MTMwNDQ3ZDljNDc5M2IzMjExM2M1MTI3NzFhOSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2ludmFsaWQtdmFyaWFibGUtdmFsdWUu
aHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvaW52YWxpZC12YXJpYWJs
ZS12YWx1ZS5odG1sCkBAIC0xLDMgKzEsNiBAQAorPHNjcmlwdD4KK2ludGVybmFscy5zZXR0aW5n
cy5zZXRDU1NWYXJpYWJsZXNFbmFibGVkKHRydWUpOworPC9zY3JpcHQ+CiA8c3R5bGU+CiBkaXYg
ewogICAgIC13ZWJraXQtdmFyLWE6IGdyZWVuOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9jc3MvdmFyaWFibGVzL211bHRpLWxldmVsLWN5Y2xlLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0
L2Nzcy92YXJpYWJsZXMvbXVsdGktbGV2ZWwtY3ljbGUuaHRtbAppbmRleCA2Yzg2NGEwZDk4MmZm
NTM3ZmE1ODY5OGY3NGE5ZDY0MWMzMTNhNjc1Li4zNzcyYjE0NzY0Mjk3MDczYzQ2ZDIzMWZmNjY4
YjYwM2UzNjQ4YTE4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMv
bXVsdGktbGV2ZWwtY3ljbGUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJs
ZXMvbXVsdGktbGV2ZWwtY3ljbGUuaHRtbApAQCAtMSwzICsxLDYgQEAKKzxzY3JpcHQ+CitpbnRl
cm5hbHMuc2V0dGluZ3Muc2V0Q1NTVmFyaWFibGVzRW5hYmxlZCh0cnVlKTsKKzwvc2NyaXB0Pgog
PHN0eWxlPgogLmEgewogICAgIC13ZWJraXQtdmFyLWE6IC13ZWJraXQtdmFyKGIpOwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL3JlZGVmaW5pdGlvbi5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL3JlZGVmaW5pdGlvbi5odG1sCmluZGV4IGU0
MzhmNWE1YTI1YjE4MThmNjhlNzk3YjUzMmRiMDc4MWI2YWJkYmUuLmEwMjE4YjFjMTU2ZDY3NGY3
YmU3YTdkNTE2YzhhMzI0NGUwNDk3NjEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3Nz
L3ZhcmlhYmxlcy9yZWRlZmluaXRpb24uaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92
YXJpYWJsZXMvcmVkZWZpbml0aW9uLmh0bWwKQEAgLTEsMyArMSw2IEBACis8c2NyaXB0PgoraW50
ZXJuYWxzLnNldHRpbmdzLnNldENTU1ZhcmlhYmxlc0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4K
IDxzdHlsZT4KIGJvZHkgewogICAgIC13ZWJraXQtdmFyLWE6IHJlZDsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9zaG9ydGhhbmQuaHRtbCBiL0xheW91dFRlc3Rz
L2Zhc3QvY3NzL3ZhcmlhYmxlcy9zaG9ydGhhbmQuaHRtbAppbmRleCA1ZDI5OTJlOWRmNjY4NjQw
MmY1MzBjMzA2NWJiNDg1MTUyY2FlZjIyLi41OGFiZmIwNTY3MTFhNjNjNzhmNjA0YmQ3MTllMmYy
ZTFjMWVlM2YyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvc2hv
cnRoYW5kLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL3Nob3J0aGFu
ZC5odG1sCkBAIC0xLDMgKzEsNiBAQAorPHNjcmlwdD4KK2ludGVybmFscy5zZXR0aW5ncy5zZXRD
U1NWYXJpYWJsZXNFbmFibGVkKHRydWUpOworPC9zY3JpcHQ+CiA8c3R5bGU+CiBkaXYgewogICAg
IC13ZWJraXQtdmFyLW15Ym9yZGVyOiAxMHB4IHNvbGlkIGdyZWVuOwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL3NpbXBsZS1jeWNsZS5odG1sIGIvTGF5b3V0VGVz
dHMvZmFzdC9jc3MvdmFyaWFibGVzL3NpbXBsZS1jeWNsZS5odG1sCmluZGV4IDRkMWU2M2Y0NDMx
M2JlYTE2NzkyNzMxNDAxYWNlNzUxOWNmNWJiYWEuLjZhOGYzZmNmYzc3M2MxYjRiYmQxZTZlMGJj
MGYyZmZmNjJiMTBlZDUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxl
cy9zaW1wbGUtY3ljbGUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMv
c2ltcGxlLWN5Y2xlLmh0bWwKQEAgLTEsMyArMSw2IEBACis8c2NyaXB0PgoraW50ZXJuYWxzLnNl
dHRpbmdzLnNldENTU1ZhcmlhYmxlc0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KIDxzdHlsZT4K
IGJvZHkgewogICAgIC13ZWJraXQtdmFyLWE6IC13ZWJraXQtdmFyKGEpOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL3RyYW5zZm9ybS10ZXN0Lmh0bWwgYi9MYXlv
dXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvdHJhbnNmb3JtLXRlc3QuaHRtbAppbmRleCBjYzYz
Y2U0ZTgxZTViOTAxZTUxMDc3MDNjZmFlZmQ0OWZmZTc5Njg0Li4zMTBlZDNkNTllZWE0ZDc5ZjBh
NmFjMmFiMzg1YzE5MzVhMWUyZDcyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92
YXJpYWJsZXMvdHJhbnNmb3JtLXRlc3QuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92
YXJpYWJsZXMvdHJhbnNmb3JtLXRlc3QuaHRtbApAQCAtMSwzICsxLDYgQEAKKzxzY3JpcHQ+Citp
bnRlcm5hbHMuc2V0dGluZ3Muc2V0Q1NTVmFyaWFibGVzRW5hYmxlZCh0cnVlKTsKKzwvc2NyaXB0
PgogPHN0eWxlPgogZGl2IHsKICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvdW5kZWZpbmVkLmh0bWwgYi9MYXlvdXRU
ZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvdW5kZWZpbmVkLmh0bWwKaW5kZXggNzc0MzEwNGU0YWU1
YjRmN2Y2MTU0OTQ3MmFiOTVmNTBhMzc1OWRkOS4uMGRiOWU3M2NhZjI2ZmEwMjI3ODUwZmU5MmM1
ZWQ4OGQyMzNiZTk4YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVz
L3VuZGVmaW5lZC5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy91bmRl
ZmluZWQuaHRtbApAQCAtMSwzICsxLDYgQEAKKzxzY3JpcHQ+CitpbnRlcm5hbHMuc2V0dGluZ3Mu
c2V0Q1NTVmFyaWFibGVzRW5hYmxlZCh0cnVlKTsKKzwvc2NyaXB0PgogPHN0eWxlPgogYm9keSB7
CiAgICAgYm9yZGVyOiAtd2Via2l0LXZhcihteWJvcmRlcik7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvdXNlLWJlZm9yZS1kZWZpbmVkLmh0bWwgYi9MYXlvdXRU
ZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvdXNlLWJlZm9yZS1kZWZpbmVkLmh0bWwKaW5kZXggYmJh
NDFiZThlYTIxZTVjMGU1MTU2NDc2OTJlNWM3OTg1Y2ZmOGVhMC4uM2IyNjg5Y2Y0ODdlNDhhYjBk
ZGRkMDYyZGEwZTU5YmU2YjYwMDZiMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3Mv
dmFyaWFibGVzL3VzZS1iZWZvcmUtZGVmaW5lZC5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qv
Y3NzL3ZhcmlhYmxlcy91c2UtYmVmb3JlLWRlZmluZWQuaHRtbApAQCAtMSwzICsxLDYgQEAKKzxz
Y3JpcHQ+CitpbnRlcm5hbHMuc2V0dGluZ3Muc2V0Q1NTVmFyaWFibGVzRW5hYmxlZCh0cnVlKTsK
Kzwvc2NyaXB0PgogPHN0eWxlPgogZGl2IHsKICAgICBjb2xvcjogLXdlYmtpdC12YXIoYSk7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvdmFyLWluc2lkZS1zaG9y
dGhhbmQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy92YXItaW5zaWRlLXNo
b3J0aGFuZC5odG1sCmluZGV4IDA2OWE1OGYzNWI0Mzk2NzNkNmEyYzkyMmFlNTAyOGU4NzkxYmE2
OTkuLmMyYTc5MGI2OTA0ZGU1YmQ4MDNhYzNkNzg0YzNmZTI2Y2IxNTI1ZDcgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy92YXItaW5zaWRlLXNob3J0aGFuZC5odG1s
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy92YXItaW5zaWRlLXNob3J0aGFu
ZC5odG1sCkBAIC0xLDMgKzEsNiBAQAorPHNjcmlwdD4KK2ludGVybmFscy5zZXR0aW5ncy5zZXRD
U1NWYXJpYWJsZXNFbmFibGVkKHRydWUpOworPC9zY3JpcHQ+CiA8c3R5bGU+CiBib2R5IHsKICAg
ICAtd2Via2l0LXZhci1NeUJvcmRlckNvbG9yOiBncmVlbjsKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy92YXJpYWJsZS1jaGFpbi5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9jc3MvdmFyaWFibGVzL3ZhcmlhYmxlLWNoYWluLmh0bWwKaW5kZXggYTE1ZDViY2U0ZTg4
MjI0OGY0YTEwOWM5ZWE1ZTkxNDNiNmJlNDRhNi4uYzQzMjYwNTZlZDdjNDY2YzkwNjRjOTZkYzFl
NzM3YmExYTBkNGJkZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVz
L3ZhcmlhYmxlLWNoYWluLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVz
L3ZhcmlhYmxlLWNoYWluLmh0bWwKQEAgLTEsMyArMSw2IEBACis8c2NyaXB0PgoraW50ZXJuYWxz
LnNldHRpbmdzLnNldENTU1ZhcmlhYmxlc0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KIDxzdHls
ZT4KIGJvZHkgewogICAgIC13ZWJraXQtdmFyLWM6IGdyZWVuOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>148951</attachid>
            <date>2012-06-21 20:32:04 -0700</date>
            <delta_ts>2012-06-24 17:00:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-89542-20120622133202.patch</filename>
            <type>text/plain</type>
            <size>24413</size>
            <attacher name="Luke Macpherson">macpherson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIwOTgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzA1ZjI1ZTkyYTFmN2Q0
ZDM4NzUzZjRhYTYwNjdhMDE1ODM0YTU2My4uYjMyNWJkYWY2NDM1YmU3YmQxMDBiMjc2N2YwYzhj
M2UyOGRlYTRhZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDEyLTA2LTE5ICBMdWtl
IE1hY3BoZXJzb24gIDxtYWNwaGVyc29uQGNocm9taXVtLm9yZz4KKworICAgICAgICBBZGQgcnVu
dGltZSBmbGFnIHRvIGVuYWJsZS9kaXNhYmxlIENTUyB2YXJpYWJsZXMgKGluIGFkZGl0aW9uIHRv
IGV4aXN0aW5nIGNvbXBpbGUtdGltZSBmbGFnKS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTg5NTQyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLgorCisgICAgICAgICogY3NzL0NTU1Bh
cnNlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NQYXJzZXJDb250ZXh0OjpDU1NQYXJzZXJD
b250ZXh0KToKKyAgICAgICAgKFdlYkNvcmU6Om9wZXJhdG9yPT0pOgorICAgICAgICAoV2ViQ29y
ZTo6Q1NTUGFyc2VyOjpjc3NWYXJpYWJsZXNFbmFibGVkKToKKyAgICAgICAgKFdlYkNvcmUpOgor
ICAgICAgICAoV2ViQ29yZTo6Q1NTUGFyc2VyOjpkZXRlY3REYXNoVG9rZW4pOgorICAgICAgICAo
V2ViQ29yZTo6Q1NTUGFyc2VyOjpsZXgpOgorICAgICAgICAqIGNzcy9DU1NQYXJzZXIuaDoKKyAg
ICAgICAgKENTU1BhcnNlcik6CisgICAgICAgICogY3NzL0NTU1BhcnNlck1vZGUuaDoKKyAgICAg
ICAgKENTU1BhcnNlckNvbnRleHQpOgorICAgICAgICAqIHBhZ2UvU2V0dGluZ3MuaDoKKyAgICAg
ICAgKFNldHRpbmdzKToKKyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdzOjpzZXRDU1NWYXJpYWJs
ZXNFbmFibGVkKToKKyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdzOjpjc3NWYXJpYWJsZXNFbmFi
bGVkKToKKwogMjAxMi0wNi0yMSAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9yZz4KIAog
ICAgICAgICBDbGFuZyBidWlsZCBmaXguCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IGUz
YjE1ZTkzYjViMmNhNDUyMjE5MDJhM2Y3MjcwOTVmYzgzOGFiZDkuLjNkNGMwMDI3ZTAyODk2ZDgy
MjE3NTM3NGMyOGQ0OGE3YTg1NDMwZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTggQEAKKzIwMTItMDYtMTkgIEx1a2UgTWFjcGhlcnNvbiAgPG1hY3BoZXJzb25AY2hy
b21pdW0ub3JnPgorCisgICAgICAgIEFkZCBydW50aW1lIGZsYWcgdG8gZW5hYmxlL2Rpc2FibGUg
Q1NTIHZhcmlhYmxlcyAoaW4gYWRkaXRpb24gdG8gZXhpc3RpbmcgY29tcGlsZS10aW1lIGZsYWcp
LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODk1NDIK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGZlYXR1
cmVzLmd5cGk6CisgICAgICAgICogcHVibGljL1dlYlNldHRpbmdzLmg6CisgICAgICAgICogc3Jj
L1dlYlNldHRpbmdzSW1wbC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlNldHRpbmdzSW1wbDo6
c2V0RXhwZXJpbWVudGFsQ1NTVmFyaWFibGVzRW5hYmxlZCk6CisgICAgICAgIChXZWJLaXQpOgor
ICAgICAgICAqIHNyYy9XZWJTZXR0aW5nc0ltcGwuaDoKKyAgICAgICAgKFdlYlNldHRpbmdzSW1w
bCk6CisKIDIwMTItMDYtMTkgIEphbWVzIFJvYmluc29uICA8amFtZXNyQGNocm9taXVtLm9yZz4K
IAogICAgICAgICBbY2hyb21pdW1dIExheWVyUmVuZGVyZXJDaHJvbWl1bSBpcyBub3QgZ2V0dGlu
ZyB2aXNpYmlsaXR5IG1lc3NhZ2VzIGluIHNpbmdsZSB0aHJlYWRlZCBjb21wb3NpdGluZyBtb2Rl
LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcAppbmRleCA2Mzc4MzU5NmIzMjdjMzdkNzRjOTI2NDcy
ZmE2NDQ4NGExZTE1NDIyLi5hY2RkODlkNThjNTA2YWFjOGYyOTFjOTc2NWJjOTc3NjM5YzBmMGYy
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcApAQCAtMTk0LDYgKzE5NCw5IEBAIENTU1BhcnNl
ckNvbnRleHQ6OkNTU1BhcnNlckNvbnRleHQoQ1NTUGFyc2VyTW9kZSBtb2RlLCBjb25zdCBLVVJM
JiBiYXNlVVJMKQogICAgICwgaXNDU1NDdXN0b21GaWx0ZXJFbmFibGVkKGZhbHNlKQogICAgICwg
aXNDU1NSZWdpb25zRW5hYmxlZChmYWxzZSkKICAgICAsIGlzQ1NTR3JpZExheW91dEVuYWJsZWQo
ZmFsc2UpCisjaWYgRU5BQkxFKENTU19WQVJJQUJMRVMpCisgICAgLCBpc0NTU1ZhcmlhYmxlc0Vu
YWJsZWQoZmFsc2UpCisjZW5kaWYKICAgICAsIG5lZWRzU2l0ZVNwZWNpZmljUXVpcmtzKGZhbHNl
KQogICAgICwgZW5mb3JjZXNDU1NNSU1FVHlwZUluTm9RdWlya3NNb2RlKHRydWUpCiB7CkBAIC0y
MDcsNiArMjEwLDkgQEAgQ1NTUGFyc2VyQ29udGV4dDo6Q1NTUGFyc2VyQ29udGV4dChEb2N1bWVu
dCogZG9jdW1lbnQsIGNvbnN0IEtVUkwmIGJhc2VVUkwsIGNvbnMKICAgICAsIGlzQ1NTQ3VzdG9t
RmlsdGVyRW5hYmxlZChkb2N1bWVudC0+c2V0dGluZ3MoKSA/IGRvY3VtZW50LT5zZXR0aW5ncygp
LT5pc0NTU0N1c3RvbUZpbHRlckVuYWJsZWQoKSA6IGZhbHNlKQogICAgICwgaXNDU1NSZWdpb25z
RW5hYmxlZChkb2N1bWVudC0+Y3NzUmVnaW9uc0VuYWJsZWQoKSkKICAgICAsIGlzQ1NTR3JpZExh
eW91dEVuYWJsZWQoZG9jdW1lbnQtPmNzc0dyaWRMYXlvdXRFbmFibGVkKCkpCisjaWYgRU5BQkxF
KENTU19WQVJJQUJMRVMpCisgICAgLCBpc0NTU1ZhcmlhYmxlc0VuYWJsZWQoZG9jdW1lbnQtPnNl
dHRpbmdzKCkgPyBkb2N1bWVudC0+c2V0dGluZ3MoKS0+Y3NzVmFyaWFibGVzRW5hYmxlZCgpIDog
ZmFsc2UpCisjZW5kaWYKICAgICAsIG5lZWRzU2l0ZVNwZWNpZmljUXVpcmtzKGRvY3VtZW50LT5z
ZXR0aW5ncygpID8gZG9jdW1lbnQtPnNldHRpbmdzKCktPm5lZWRzU2l0ZVNwZWNpZmljUXVpcmtz
KCkgOiBmYWxzZSkKICAgICAsIGVuZm9yY2VzQ1NTTUlNRVR5cGVJbk5vUXVpcmtzTW9kZSghZG9j
dW1lbnQtPnNldHRpbmdzKCkgfHwgZG9jdW1lbnQtPnNldHRpbmdzKCktPmVuZm9yY2VDU1NNSU1F
VHlwZUluTm9RdWlya3NNb2RlKCkpCiB7CkBAIC0yMjEsNiArMjI3LDkgQEAgYm9vbCBvcGVyYXRv
cj09KGNvbnN0IENTU1BhcnNlckNvbnRleHQmIGEsIGNvbnN0IENTU1BhcnNlckNvbnRleHQmIGIp
CiAgICAgICAgICYmIGEuaXNDU1NDdXN0b21GaWx0ZXJFbmFibGVkID09IGIuaXNDU1NDdXN0b21G
aWx0ZXJFbmFibGVkCiAgICAgICAgICYmIGEuaXNDU1NSZWdpb25zRW5hYmxlZCA9PSBiLmlzQ1NT
UmVnaW9uc0VuYWJsZWQKICAgICAgICAgJiYgYS5pc0NTU0dyaWRMYXlvdXRFbmFibGVkID09IGIu
aXNDU1NHcmlkTGF5b3V0RW5hYmxlZAorI2lmIEVOQUJMRShDU1NfVkFSSUFCTEVTKQorICAgICAg
ICAmJiBhLmlzQ1NTVmFyaWFibGVzRW5hYmxlZCA9PSBiLmlzQ1NTVmFyaWFibGVzRW5hYmxlZAor
I2VuZGlmCiAgICAgICAgICYmIGEubmVlZHNTaXRlU3BlY2lmaWNRdWlya3MgPT0gYi5uZWVkc1Np
dGVTcGVjaWZpY1F1aXJrcwogICAgICAgICAmJiBhLmVuZm9yY2VzQ1NTTUlNRVR5cGVJbk5vUXVp
cmtzTW9kZSA9PSBiLmVuZm9yY2VzQ1NTTUlNRVR5cGVJbk5vUXVpcmtzTW9kZTsKIH0KQEAgLTEw
MTQsNiArMTAyMywyNSBAQCBQYXNzUmVmUHRyPENTU1ZhbHVlTGlzdD4gQ1NTUGFyc2VyOjpwYXJz
ZUZvbnRGYWNlVmFsdWUoY29uc3QgQXRvbWljU3RyaW5nJiBzdHJpbgogICAgIHJldHVybiBzdGF0
aWNfcG9pbnRlcl9jYXN0PENTU1ZhbHVlTGlzdD4oZHVtbXlTdHlsZS0+Z2V0UHJvcGVydHlDU1NW
YWx1ZShDU1NQcm9wZXJ0eUZvbnRGYW1pbHkpKTsKIH0KIAorI2lmIEVOQUJMRShDU1NfVkFSSUFC
TEVTKQorYm9vbCBDU1NQYXJzZXI6OnBhcnNlVmFsdWUoU3R5bGVQcm9wZXJ0eVNldCogZGVjbGFy
YXRpb24sIENTU1Byb3BlcnR5SUQgcHJvcGVydHlJRCwgY29uc3QgU3RyaW5nJiBzdHJpbmcsIGJv
b2wgaW1wb3J0YW50LCBEb2N1bWVudCogZG9jdW1lbnQpCit7CisgICAgQVNTRVJUKCFzdHJpbmcu
aXNFbXB0eSgpKTsKKworICAgIENTU1BhcnNlckNvbnRleHQgY29udGV4dChkb2N1bWVudCk7CisK
KyAgICBpZiAocGFyc2VTaW1wbGVMZW5ndGhWYWx1ZShkZWNsYXJhdGlvbiwgcHJvcGVydHlJRCwg
c3RyaW5nLCBpbXBvcnRhbnQsIGNvbnRleHQubW9kZSkpCisgICAgICAgIHJldHVybiB0cnVlOwor
ICAgIGlmIChwYXJzZUNvbG9yVmFsdWUoZGVjbGFyYXRpb24sIHByb3BlcnR5SUQsIHN0cmluZywg
aW1wb3J0YW50LCBjb250ZXh0Lm1vZGUpKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICBpZiAo
cGFyc2VLZXl3b3JkVmFsdWUoZGVjbGFyYXRpb24sIHByb3BlcnR5SUQsIHN0cmluZywgaW1wb3J0
YW50LCBjb250ZXh0KSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICBDU1NQYXJzZXIgcGFy
c2VyKGNvbnRleHQpOworICAgIHJldHVybiBwYXJzZXIucGFyc2VWYWx1ZShkZWNsYXJhdGlvbiwg
cHJvcGVydHlJRCwgc3RyaW5nLCBpbXBvcnRhbnQsIHN0YXRpY19jYXN0PFN0eWxlU2hlZXRDb250
ZW50cyo+KDApKTsKK30KKyNlbmRpZgorCiBib29sIENTU1BhcnNlcjo6cGFyc2VWYWx1ZShTdHls
ZVByb3BlcnR5U2V0KiBkZWNsYXJhdGlvbiwgQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlELCBjb25z
dCBTdHJpbmcmIHN0cmluZywgYm9vbCBpbXBvcnRhbnQsIENTU1BhcnNlck1vZGUgY3NzUGFyc2Vy
TW9kZSwgU3R5bGVTaGVldENvbnRlbnRzKiBjb250ZXh0U3R5bGVTaGVldCkKIHsKICAgICBBU1NF
UlQoIXN0cmluZy5pc0VtcHR5KCkpOwpAQCAtMjg5Myw2ICsyOTIxLDExIEBAIGJvb2wgQ1NTUGFy
c2VyOjpwYXJzZUZpbGxTaG9ydGhhbmQoQ1NTUHJvcGVydHlJRCBwcm9wSWQsIGNvbnN0IENTU1By
b3BlcnR5SUQqIHByCiB9CiAKICNpZiBFTkFCTEUoQ1NTX1ZBUklBQkxFUykKK2Jvb2wgQ1NTUGFy
c2VyOjpjc3NWYXJpYWJsZXNFbmFibGVkKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9jb250ZXh0
LmlzQ1NTVmFyaWFibGVzRW5hYmxlZDsKK30KKwogdm9pZCBDU1NQYXJzZXI6OnN0b3JlVmFyaWFi
bGVEZWNsYXJhdGlvbihjb25zdCBDU1NQYXJzZXJTdHJpbmcmIG5hbWUsIFBhc3NPd25QdHI8Q1NT
UGFyc2VyVmFsdWVMaXN0PiB2YWx1ZSwgYm9vbCBpbXBvcnRhbnQpCiB7CiAgICAgU3RyaW5nQnVp
bGRlciBidWlsZGVyOwpAQCAtODUxNiw3ICs4NTQ5LDcgQEAgaW5saW5lIHZvaWQgQ1NTUGFyc2Vy
OjpkZXRlY3REYXNoVG9rZW4oaW50IGxlbmd0aCkKICAgICAgICAgZWxzZSBpZiAoaXNBU0NJSUFs
cGhhQ2FzZWxlc3NFcXVhbChuYW1lWzEwXSwgJ3gnKSAmJiBpc0VxdWFsVG9DU1NJZGVudGlmaWVy
KG5hbWUgKyAxLCAid2Via2l0LW1hIikpCiAgICAgICAgICAgICBtX3Rva2VuID0gTUFYRlVOQ1RJ
T047CiAjaWYgRU5BQkxFKENTU19WQVJJQUJMRVMpCi0gICAgICAgIGVsc2UgaWYgKGlzQVNDSUlB
bHBoYUNhc2VsZXNzRXF1YWwobmFtZVsxMF0sICdyJykgJiYgaXNFcXVhbFRvQ1NTSWRlbnRpZmll
cihuYW1lICsgMSwgIndlYmtpdC12YSIpKQorICAgICAgICBlbHNlIGlmIChjc3NWYXJpYWJsZXNF
bmFibGVkKCkgJiYgaXNBU0NJSUFscGhhQ2FzZWxlc3NFcXVhbChuYW1lWzEwXSwgJ3InKSAmJiBp
c0VxdWFsVG9DU1NJZGVudGlmaWVyKG5hbWUgKyAxLCAid2Via2l0LXZhIikpCiAgICAgICAgICAg
ICBtX3Rva2VuID0gVkFSRlVOQ1RJT047CiAjZW5kaWYKICAgICB9IGVsc2UgaWYgKGxlbmd0aCA9
PSAxMiAmJiBpc0VxdWFsVG9DU1NJZGVudGlmaWVyKG5hbWUgKyAxLCAid2Via2l0LWNhbGMiKSkK
QEAgLTg4NTgsNyArODg5MSw3IEBAIHJlc3RhcnRBZnRlckNvbW1lbnQ6CiAKICAgICBjYXNlIENo
YXJhY3RlckRhc2g6CiAjaWYgRU5BQkxFKENTU19WQVJJQUJMRVMpCi0gICAgICAgIGlmIChtX2N1
cnJlbnRDaGFyYWN0ZXJbMTBdID09ICctJyAmJiBpc0VxdWFsVG9DU1NJZGVudGlmaWVyKG1fY3Vy
cmVudENoYXJhY3RlciwgIndlYmtpdC12YXIiKSAmJiBpc0lkZW50aWZpZXJTdGFydEFmdGVyRGFz
aChtX2N1cnJlbnRDaGFyYWN0ZXIgKyAxMSkpIHsKKyAgICAgICAgaWYgKGNzc1ZhcmlhYmxlc0Vu
YWJsZWQoKSAmJiBtX2N1cnJlbnRDaGFyYWN0ZXJbMTBdID09ICctJyAmJiBpc0VxdWFsVG9DU1NJ
ZGVudGlmaWVyKG1fY3VycmVudENoYXJhY3RlciwgIndlYmtpdC12YXIiKSAmJiBpc0lkZW50aWZp
ZXJTdGFydEFmdGVyRGFzaChtX2N1cnJlbnRDaGFyYWN0ZXIgKyAxMSkpIHsKICAgICAgICAgICAg
IC8vIGhhbmRsZSB2YXJpYWJsZSBkZWNsYXJhdGlvbnMKICAgICAgICAgICAgIG1fY3VycmVudENo
YXJhY3RlciArPSAxMTsKICAgICAgICAgICAgIHBhcnNlSWRlbnRpZmllcihyZXN1bHQsIGhhc0Vz
Y2FwZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmgKaW5kZXggYjAzN2YwM2E0M2FhNWUwNWIwYjVhNDIx
OWY3NzIwNWU1YmQ2NzUwMy4uNjI1ZTFlMDgxYzg3ZTIzMzZhNDI4OWRjMDhmMTI3YzY1MDExMDU0
YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuaApAQCAtOTIsNiArOTIsOCBAQCBwdWJsaWM6CiAgICAg
Ym9vbCBwYXJzZVF1b3RlcyhDU1NQcm9wZXJ0eUlELCBib29sIGltcG9ydGFudCk7CiAKICNpZiBF
TkFCTEUoQ1NTX1ZBUklBQkxFUykKKyAgICBzdGF0aWMgYm9vbCBwYXJzZVZhbHVlKFN0eWxlUHJv
cGVydHlTZXQqLCBDU1NQcm9wZXJ0eUlELCBjb25zdCBTdHJpbmcmLCBib29sIGltcG9ydGFudCwg
RG9jdW1lbnQqKTsKKyAgICBib29sIGNzc1ZhcmlhYmxlc0VuYWJsZWQoKSBjb25zdDsKICAgICB2
b2lkIHN0b3JlVmFyaWFibGVEZWNsYXJhdGlvbihjb25zdCBDU1NQYXJzZXJTdHJpbmcmLCBQYXNz
T3duUHRyPENTU1BhcnNlclZhbHVlTGlzdD4sIGJvb2wgaW1wb3J0YW50KTsKICNlbmRpZgogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyTW9kZS5oIGIvU291cmNlL1dl
YkNvcmUvY3NzL0NTU1BhcnNlck1vZGUuaAppbmRleCBkOTIwMGI3MmM3MjY2NmE5OTI1Zjk3NDE3
OGY5MWVhOWQ1ZTU3ZGRjLi41MjI4ZTk4MTJkOWYyMmE5ZThjYjE1YTA3NjAzMzllZGYxMDc2ZTM0
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyTW9kZS5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXJNb2RlLmgKQEAgLTY1LDYgKzY1LDkgQEAgc3RydWN0
IENTU1BhcnNlckNvbnRleHQgewogICAgIGJvb2wgaXNDU1NDdXN0b21GaWx0ZXJFbmFibGVkOwog
ICAgIGJvb2wgaXNDU1NSZWdpb25zRW5hYmxlZDsKICAgICBib29sIGlzQ1NTR3JpZExheW91dEVu
YWJsZWQ7CisjaWYgRU5BQkxFKENTU19WQVJJQUJMRVMpCisgICAgYm9vbCBpc0NTU1ZhcmlhYmxl
c0VuYWJsZWQ7CisjZW5kaWYKICAgICBib29sIG5lZWRzU2l0ZVNwZWNpZmljUXVpcmtzOwogICAg
IGJvb2wgZW5mb3JjZXNDU1NNSU1FVHlwZUluTm9RdWlya3NNb2RlOwogfTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9TdHlsZVJlc29sdmVyLmNwcAppbmRleCBhMTU0YTg1ODgzOWQzMWQyM2FlYjVjYmMyZDBlZmNl
MmFkYWM1NmZjLi5hYzY2YTU2OGQzYWU4NWY5OGNjYTE1NDQ0YTFmZjg1ZDFiNjI0ZWJiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwCkBAIC0zMzIzLDcgKzMzMjMsNyBAQCB2b2lk
IFN0eWxlUmVzb2x2ZXI6OnJlc29sdmVWYXJpYWJsZXMoQ1NTUHJvcGVydHlJRCBpZCwgQ1NTVmFs
dWUqIHZhbHVlLCBWZWN0b3I8cwogCiAgICAgLy8gRklYTUU6IEl0IHdvdWxkIGJlIGZhc3RlciBu
b3QgdG8gcmUtcGFyc2UgZnJvbSBzdHJpbmdzLCBidXQgZm9yIG5vdyBDU1MgcHJvcGVydHkgdmFs
aWRhdGlvbiBsaXZlcyBpbnNpZGUgdGhlIHBhcnNlciBzbyB3ZSBkbyBpdCB0aGVyZS4KICAgICBS
ZWZQdHI8U3R5bGVQcm9wZXJ0eVNldD4gcmVzdWx0U2V0ID0gU3R5bGVQcm9wZXJ0eVNldDo6Y3Jl
YXRlKCk7Ci0gICAgaWYgKCFDU1NQYXJzZXI6OnBhcnNlVmFsdWUocmVzdWx0U2V0LmdldCgpLCBp
ZCwgZXhwcmVzc2lvbi5zZWNvbmQsIGZhbHNlLCBDU1NTdHJpY3RNb2RlLCAwKSkKKyAgICBpZiAo
IUNTU1BhcnNlcjo6cGFyc2VWYWx1ZShyZXN1bHRTZXQuZ2V0KCksIGlkLCBleHByZXNzaW9uLnNl
Y29uZCwgZmFsc2UsIGRvY3VtZW50KCkpKQogICAgICAgICByZXR1cm47IC8vIGV4cHJlc3Npb24g
ZmFpbGVkIHRvIHBhcnNlLgogCiAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IHJlc3VsdFNl
dC0+cHJvcGVydHlDb3VudCgpOyBpKyspIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvU2V0dGluZ3MuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaAppbmRleCBkODQ2
ZmEwN2FjMTBlODlhMjI2NzcwN2JmOTA4OGJmYTNhMmY1OWZkLi4zZGM0NWJjNDMwYWUyMmRiMDMw
Yzk2MmY4YzgzMjQ4YzQ0YzJkMmE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Nl
dHRpbmdzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5oCkBAIC0zMzEsNiAr
MzMxLDE0IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgYm9vbCBjc3NSZWdpb25zRW5h
YmxlZCgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAjZW5kaWYKIAorI2lmIEVOQUJMRShDU1Nf
VkFSSUFCTEVTKQorICAgICAgICB2b2lkIHNldENTU1ZhcmlhYmxlc0VuYWJsZWQoYm9vbCBlbmFi
bGVkKSB7IG1fY3NzVmFyaWFibGVzRW5hYmxlZCA9IGVuYWJsZWQ7IH0KKyAgICAgICAgYm9vbCBj
c3NWYXJpYWJsZXNFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQorI2Vsc2UKKyAgICAg
ICAgdm9pZCBzZXRDU1NWYXJpYWJsZXNFbmFibGVkKGJvb2wpIHsgfQorICAgICAgICBib29sIGNz
c1ZhcmlhYmxlc0VuYWJsZWQoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQorI2VuZGlmCisKICAg
ICAgICAgdm9pZCBzZXRSZWdpb25CYXNlZENvbHVtbnNFbmFibGVkKGJvb2wgZW5hYmxlZCkgeyBt
X3JlZ2lvbkJhc2VkQ29sdW1uc0VuYWJsZWQgPSBlbmFibGVkOyB9CiAgICAgICAgIGJvb2wgcmVn
aW9uQmFzZWRDb2x1bW5zRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1fcmVnaW9uQmFzZWRDb2x1
bW5zRW5hYmxlZDsgfQogCkBAIC02NzcsNiArNjg1LDkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
I2lmIEVOQUJMRShDU1NfUkVHSU9OUykKICAgICAgICAgYm9vbCBtX2Nzc1JlZ2lvbnNFbmFibGVk
IDogMTsKICNlbmRpZgorI2lmIEVOQUJMRShDU1NfVkFSSUFCTEVTKQorICAgICAgICBib29sIG1f
Y3NzVmFyaWFibGVzRW5hYmxlZCA6IDE7CisjZW5kaWYKICAgICAgICAgYm9vbCBtX3JlZ2lvbkJh
c2VkQ29sdW1uc0VuYWJsZWQgOiAxOwogICAgICAgICBib29sIG1fY3NzR3JpZExheW91dEVuYWJs
ZWQgOiAxOwogICAgICAgICBib29sIG1fZG93bmxvYWRhYmxlQmluYXJ5Rm9udHNFbmFibGVkIDog
MTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuY3BwCmluZGV4IDcx
ZDAwMTMwMTA2OTJjZjdjYWIxNjU1Y2UxZDU1MTlhMDc2YmU1NzIuLmJmNDM5MjMwNThlM2I1NmEy
M2ZhZDIxNmIwOGYwNjZiMzMxYzFiMjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxTZXR0aW5ncy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRl
cm5hbFNldHRpbmdzLmNwcApAQCAtMzQ4LDYgKzM0OCwxOCBAQCB2b2lkIEludGVybmFsU2V0dGlu
Z3M6OnNldENTU0V4Y2x1c2lvbnNFbmFibGVkKGJvb2wgZW5hYmxlZCwgRXhjZXB0aW9uQ29kZSYg
ZWMpCiAgICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2V0Q1NTRXhjbHVzaW9uc0VuYWJsZWQo
ZW5hYmxlZCk7CiB9CiAKK3ZvaWQgSW50ZXJuYWxTZXR0aW5nczo6c2V0Q1NTVmFyaWFibGVzRW5h
YmxlZChib29sIGVuYWJsZWQsIEV4Y2VwdGlvbkNvZGUmIGVjKQoreworICAgIEludGVybmFsU2V0
dGluZ3NHdWFyZEZvclNldHRpbmdzKCk7CisgICAgc2V0dGluZ3MoKS0+c2V0Q1NTVmFyaWFibGVz
RW5hYmxlZChlbmFibGVkKTsKK30KKworYm9vbCBJbnRlcm5hbFNldHRpbmdzOjpjc3NWYXJpYWJs
ZXNFbmFibGVkKEV4Y2VwdGlvbkNvZGUmIGVjKQoreworICAgIEludGVybmFsU2V0dGluZ3NHdWFy
ZEZvclNldHRpbmdzUmV0dXJuKGZhbHNlKTsKKyAgICByZXR1cm4gc2V0dGluZ3MoKS0+Y3NzVmFy
aWFibGVzRW5hYmxlZCgpOworfQorCiB2b2lkIEludGVybmFsU2V0dGluZ3M6OnNldE1lZGlhUGxh
eWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKGJvb2wgZW5hYmxlZCwgRXhjZXB0aW9uQ29kZSYgZWMp
CiB7CiAgICAgSW50ZXJuYWxTZXR0aW5nc0d1YXJkRm9yU2V0dGluZ3MoKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5oIGIvU291cmNlL1dlYkNv
cmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmgKaW5kZXggYTg3Zjk2Zjc4YTEwMjk1NjgwN2Y1
NmJhZTE1MGNiZWE4ZmRkMTZjNC4uMTI3ZGE0MjhmMDY3NWQxODI0Nzk1YmFlOThkNTJkNjBkYTAy
YmIzOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdz
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmgKQEAgLTc1
LDYgKzc1LDggQEAgcHVibGljOgogICAgIHZvaWQgc2V0RW5hYmxlU2Nyb2xsQW5pbWF0b3IoYm9v
bCBlbmFibGVkLCBFeGNlcHRpb25Db2RlJik7CiAgICAgYm9vbCBzY3JvbGxBbmltYXRvckVuYWJs
ZWQoRXhjZXB0aW9uQ29kZSYpOwogICAgIHZvaWQgc2V0Q1NTRXhjbHVzaW9uc0VuYWJsZWQoYm9v
bCBlbmFibGVkLCBFeGNlcHRpb25Db2RlJik7CisgICAgdm9pZCBzZXRDU1NWYXJpYWJsZXNFbmFi
bGVkKGJvb2wgZW5hYmxlZCwgRXhjZXB0aW9uQ29kZSYpOworICAgIGJvb2wgY3NzVmFyaWFibGVz
RW5hYmxlZChFeGNlcHRpb25Db2RlJik7CiAgICAgdm9pZCBzZXRNZWRpYVBsYXliYWNrUmVxdWly
ZXNVc2VyR2VzdHVyZShib29sLCBFeGNlcHRpb25Db2RlJik7CiAgICAgdm9pZCBzZXRFZGl0aW5n
QmVoYXZpb3IoY29uc3QgU3RyaW5nJiwgRXhjZXB0aW9uQ29kZSYpOwogICAgIHZvaWQgc2V0Rml4
ZWRQb3NpdGlvbkNyZWF0ZXNTdGFja2luZ0NvbnRleHQoYm9vbCwgRXhjZXB0aW9uQ29kZSYpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmlkbCBi
L1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5pZGwKaW5kZXggMGFmNTM4
YTUzYWNkZTMxOWQ5NTE4YTEyNDkyZGQxYzAyODRiNDBmMS4uMTk2NWYwNWU3YjY4MzRmZjVjNWQz
OGNiODkwMThkYmNlNjhiYzRmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9J
bnRlcm5hbFNldHRpbmdzLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFs
U2V0dGluZ3MuaWRsCkBAIC01NCw2ICs1NCw4IEBAIG1vZHVsZSB3aW5kb3cgewogICAgICAgICB2
b2lkIHNldEVuYWJsZVNjcm9sbEFuaW1hdG9yKGluIGJvb2xlYW4gZW5hYmxlZCkgcmFpc2VzKERP
TUV4Y2VwdGlvbik7CiAgICAgICAgIGJvb2xlYW4gc2Nyb2xsQW5pbWF0b3JFbmFibGVkKCkgcmFp
c2VzKERPTUV4Y2VwdGlvbik7CiAgICAgICAgIHZvaWQgc2V0Q1NTRXhjbHVzaW9uc0VuYWJsZWQo
aW4gYm9vbGVhbiBlbmFibGVkKSByYWlzZXMoRE9NRXhjZXB0aW9uKTsKKyAgICAgICAgdm9pZCBz
ZXRDU1NWYXJpYWJsZXNFbmFibGVkKGluIGJvb2xlYW4gZW5hYmxlZCkgcmFpc2VzKERPTUV4Y2Vw
dGlvbik7CisgICAgICAgIGJvb2xlYW4gY3NzVmFyaWFibGVzRW5hYmxlZCgpIHJhaXNlcyhET01F
eGNlcHRpb24pOwogICAgICAgICB2b2lkIHNldE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0
dXJlKGluIGJvb2xlYW4gZW5hYmxlZCkgcmFpc2VzKERPTUV4Y2VwdGlvbik7CiAgICAgICAgIHZv
aWQgc2V0RWRpdGluZ0JlaGF2aW9yKGluIERPTVN0cmluZyBiZWhhdmlvcikgcmFpc2VzKERPTUV4
Y2VwdGlvbik7CiAgICAgICAgIHZvaWQgc2V0Rml4ZWRQb3NpdGlvbkNyZWF0ZXNTdGFja2luZ0Nv
bnRleHQoaW4gYm9vbGVhbiBjcmVhdGVzKSByYWlzZXMoRE9NRXhjZXB0aW9uKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vZmVhdHVyZXMuZ3lwaSBiL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vZmVhdHVyZXMuZ3lwaQppbmRleCBiZjEyZWUxN2FhMmE0Y2VmMTEyN2JmZjQ0OWQ2
MmNmY2IxMGY2Y2ExLi4yYWU3OWJhOTJhYWFiOGYyYTJhNjBlZGM3N2E2NGY1YjA3MmZiMDJhIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL2ZlYXR1cmVzLmd5cGkKKysrIGIvU291
cmNlL1dlYktpdC9jaHJvbWl1bS9mZWF0dXJlcy5neXBpCkBAIC00Niw3ICs0Niw3IEBACiAgICAg
ICAnRU5BQkxFX0NTU19JTUFHRV9SRVNPTFVUSU9OPTAnLAogICAgICAgJ0VOQUJMRV9DU1NfUkVH
SU9OUz0xJywKICAgICAgICdFTkFCTEVfQ1NTX1NIQURFUlM9MScsCi0gICAgICAnRU5BQkxFX0NT
U19WQVJJQUJMRVM9MCcsCisgICAgICAnRU5BQkxFX0NTU19WQVJJQUJMRVM9MScsCiAgICAgICAn
RU5BQkxFX0NVU1RPTV9TQ0hFTUVfSEFORExFUj0wJywKICAgICAgICdFTkFCTEVfREFUQUxJU1Q9
MScsCiAgICAgICAnRU5BQkxFX0RBU0hCT0FSRF9TVVBQT1JUPTAnLApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViU2V0dGluZ3MuaCBiL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vcHVibGljL1dlYlNldHRpbmdzLmgKaW5kZXggYmFiNWMzOGRjMDhjNjI1MDk5ZjE1
MTE5MDQzNmFlMWQ4YzkwMTZkYS4uNWVjNWM1MGRhZDI4OGUzMWEyY2EwNjE2ZDZkYWExMDEzY2Iz
ZjZiNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViU2V0dGlu
Z3MuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJTZXR0aW5ncy5oCkBA
IC0xMDUsNiArMTA1LDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBzZXRFeHBlcmltZW50
YWxDU1NSZWdpb25zRW5hYmxlZChib29sKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHNldEV4cGVy
aW1lbnRhbENTU0dyaWRMYXlvdXRFbmFibGVkKGJvb2wpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQg
c2V0RXhwZXJpbWVudGFsQ1NTQ3VzdG9tRmlsdGVyRW5hYmxlZChib29sKSA9IDA7CisgICAgdmly
dHVhbCB2b2lkIHNldEV4cGVyaW1lbnRhbENTU1ZhcmlhYmxlc0VuYWJsZWQoYm9vbCkgPSAwOwog
ICAgIHZpcnR1YWwgdm9pZCBzZXRPcGVuR0xNdWx0aXNhbXBsaW5nRW5hYmxlZChib29sKSA9IDA7
CiAgICAgdmlydHVhbCB2b2lkIHNldFByaXZpbGVnZWRXZWJHTEV4dGVuc2lvbnNFbmFibGVkKGJv
b2wpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0V2ViR0xFcnJvcnNUb0NvbnNvbGVFbmFibGVk
KGJvb2wpID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNl
dHRpbmdzSW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5nc0lt
cGwuY3BwCmluZGV4IDQzYzQzM2MzMDY0MjQ5YTE1YmUyMjJmY2U5NzRlMzU3ZTEzMzUzODMuLmU0
ZDNhZDgzNTcwYjViNWJkNTkxODVjZmM5M2Y4YmMyNjc5NGU5NWUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNldHRpbmdzSW1wbC5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmNwcApAQCAtMzM4LDYgKzMzOCwxMSBA
QCB2b2lkIFdlYlNldHRpbmdzSW1wbDo6c2V0RXhwZXJpbWVudGFsQ1NTQ3VzdG9tRmlsdGVyRW5h
YmxlZChib29sIGVuYWJsZWQpCiAgICAgbV9zZXR0aW5ncy0+c2V0Q1NTQ3VzdG9tRmlsdGVyRW5h
YmxlZChlbmFibGVkKTsKIH0KIAordm9pZCBXZWJTZXR0aW5nc0ltcGw6OnNldEV4cGVyaW1lbnRh
bENTU1ZhcmlhYmxlc0VuYWJsZWQoYm9vbCBlbmFibGVkKQoreworICAgIG1fc2V0dGluZ3MtPnNl
dENTU1ZhcmlhYmxlc0VuYWJsZWQoZW5hYmxlZCk7Cit9CisKIHZvaWQgV2ViU2V0dGluZ3NJbXBs
OjpzZXRPcGVuR0xNdWx0aXNhbXBsaW5nRW5hYmxlZChib29sIGVuYWJsZWQpCiB7CiAgICAgbV9z
ZXR0aW5ncy0+c2V0T3BlbkdMTXVsdGlzYW1wbGluZ0VuYWJsZWQoZW5hYmxlZCk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuaCBiL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNldHRpbmdzSW1wbC5oCmluZGV4IDlhNjVjMmFjNmFk
OWIzN2U5MTU3N2FmMTI1MWNkMTQ3OTgzYTMzMzAuLmRkZDg5MTE0ZjYyOTgyNzdmMWE2MWVkYzI4
ZWM4MTMyNmM0NjRhOGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dl
YlNldHRpbmdzSW1wbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNldHRp
bmdzSW1wbC5oCkBAIC05Nyw2ICs5Nyw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgc2V0
RXhwZXJpbWVudGFsQ1NTUmVnaW9uc0VuYWJsZWQoYm9vbCk7CiAgICAgdmlydHVhbCB2b2lkIHNl
dEV4cGVyaW1lbnRhbENTU0dyaWRMYXlvdXRFbmFibGVkKGJvb2wpOwogICAgIHZpcnR1YWwgdm9p
ZCBzZXRFeHBlcmltZW50YWxDU1NDdXN0b21GaWx0ZXJFbmFibGVkKGJvb2wpOworICAgIHZpcnR1
YWwgdm9pZCBzZXRFeHBlcmltZW50YWxDU1NWYXJpYWJsZXNFbmFibGVkKGJvb2wpOwogICAgIHZp
cnR1YWwgdm9pZCBzZXRPcGVuR0xNdWx0aXNhbXBsaW5nRW5hYmxlZChib29sKTsKICAgICB2aXJ0
dWFsIHZvaWQgc2V0UHJpdmlsZWdlZFdlYkdMRXh0ZW5zaW9uc0VuYWJsZWQoYm9vbCk7CiAgICAg
dmlydHVhbCB2b2lkIHNldFdlYkdMRXJyb3JzVG9Db25zb2xlRW5hYmxlZChib29sKTsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9ib3JkZXItd2lkdGguaHRtbCBi
L0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9ib3JkZXItd2lkdGguaHRtbAppbmRleCAy
MzVjMTI3MjBjZjhmOTBjNDJhZjUzNDg2MjdkYmI1NWU1YzFiZGJhLi5mZjMxMzAwZTJjNTc2NmZk
MWYzNDk1NGQ5MzgxNDRjMmEyMmM1NmUyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nz
cy92YXJpYWJsZXMvYm9yZGVyLXdpZHRoLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3Mv
dmFyaWFibGVzL2JvcmRlci13aWR0aC5odG1sCkBAIC0xLDMgKzEsNiBAQAorPHNjcmlwdD4KK2lu
dGVybmFscy5zZXR0aW5ncy5zZXRDU1NWYXJpYWJsZXNFbmFibGVkKHRydWUpOworPC9zY3JpcHQ+
CiA8c3R5bGU+CiBkaXYgewogICBib3JkZXItY29sb3I6IGdyZWVuOwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2J1aWxkLXN1cHBvcnRzLXZhcmlhYmxlcy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvYnVpbGQtc3VwcG9ydHMt
dmFyaWFibGVzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mMDMzYTUwMTBkYTRhMjI1YTFiYTcw
ZWVkZDkzMzM5N2FlNWJlYmZjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9j
c3MvdmFyaWFibGVzL2J1aWxkLXN1cHBvcnRzLXZhcmlhYmxlcy1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSBAQAorWUVTCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMv
YnVpbGQtc3VwcG9ydHMtdmFyaWFibGVzLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJp
YWJsZXMvYnVpbGQtc3VwcG9ydHMtdmFyaWFibGVzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDkwMGNiNTZj
YWFmNWY0NjQxYmQxYjBkYmQ4N2ZlMTFjYTQxNDEzMAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9idWlsZC1zdXBwb3J0cy12YXJpYWJsZXMuaHRtbApA
QCAtMCwwICsxLDkgQEAKKzxib2R5Pk5PPC9ib2R5PgorPHNjcmlwdD4KK2lmICh3aW5kb3cudGVz
dFJ1bm5lcikKKyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworaW50ZXJuYWxzLnNldHRp
bmdzLnNldENTU1ZhcmlhYmxlc0VuYWJsZWQodHJ1ZSk7CitpZiAoaW50ZXJuYWxzLnNldHRpbmdz
LmNzc1ZhcmlhYmxlc0VuYWJsZWQoKSkKKyAgICBkb2N1bWVudC5ib2R5LmlubmVySFRNTCA9ICJZ
RVMiOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJs
ZXMvY29sb3JzLXRlc3QuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9jb2xv
cnMtdGVzdC5odG1sCmluZGV4IGFlZGUzOWQ0NjVlOGZlMTE5MTc3Y2FiYWNiNDU0NDViOWY1Y2Ew
YWMuLmFhZmRiMjc2ZmI5YWJlYTg0OTI2MGRkYjllZTdiYjVhODE1YzU2ZDYgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9jb2xvcnMtdGVzdC5odG1sCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9jb2xvcnMtdGVzdC5odG1sCkBAIC0xLDMgKzEs
NiBAQAorPHNjcmlwdD4KK2ludGVybmFscy5zZXR0aW5ncy5zZXRDU1NWYXJpYWJsZXNFbmFibGVk
KHRydWUpOworPC9zY3JpcHQ+CiA8c3R5bGU+CiBib2R5IHsKICAgICAtd2Via2l0LXZhci1mb3Jl
Z3JvdW5kOiBncmVlbjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxl
cy9jb21wbGV4LWN5Y2xlLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvY29t
cGxleC1jeWNsZS5odG1sCmluZGV4IDAxYTc2OTkwZTQ4ZGI3MjIwNTQ0OWY0MjQ0NmM4NDliMzhm
N2IwMmQuLjM1OWM4YmY0ZGY0OTNhNzM4M2E2NDBiZTZmZDNhM2YyYTE4ZTU1ODYgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9jb21wbGV4LWN5Y2xlLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2NvbXBsZXgtY3ljbGUuaHRtbApAQCAt
MSwzICsxLDYgQEAKKzxzY3JpcHQ+CitpbnRlcm5hbHMuc2V0dGluZ3Muc2V0Q1NTVmFyaWFibGVz
RW5hYmxlZCh0cnVlKTsKKzwvc2NyaXB0PgogPHN0eWxlPgogYm9keSB7CiAgICAgLXdlYmtpdC12
YXItYTogLXdlYmtpdC12YXIoZik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92
YXJpYWJsZXMvY29tcHV0ZWQtc3R5bGUuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3Zhcmlh
Ymxlcy9jb21wdXRlZC1zdHlsZS5odG1sCmluZGV4IDA3YjQ4MWU0OTM0MzcyNDFlMmUwMDBkMzk3
YjE3MWE3NDRjZDA5YjYuLmM0ZDY0MmZjMGZjNWE5YmQ0ZTY5NGYxMGY2ODYxYTM4OTI1ZTdmZjMg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9jb21wdXRlZC1zdHls
ZS5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9jb21wdXRlZC1zdHls
ZS5odG1sCkBAIC0xLDMgKzEsNiBAQAorPHNjcmlwdD4KK2ludGVybmFscy5zZXR0aW5ncy5zZXRD
U1NWYXJpYWJsZXNFbmFibGVkKHRydWUpOworPC9zY3JpcHQ+CiA8c3R5bGU+CiBib2R5IHsKICAg
ICAtd2Via2l0LXZhci1hOiBib2xkOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3Mv
dmFyaWFibGVzL2luaGVyaXRlZC12YWx1ZXMuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3Zh
cmlhYmxlcy9pbmhlcml0ZWQtdmFsdWVzLmh0bWwKaW5kZXggNTliZmFjYTJjZTQ4ODQ0MDlhZjFm
YzMwYjhhMzVjNDRiMGFiOTQ1Ni4uYTJlM2YwOWNiMDEzYWY0NTRkYzZlMGVkNmFlNWQwNWU2MGI2
MDQ1YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2luaGVyaXRl
ZC12YWx1ZXMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvaW5oZXJp
dGVkLXZhbHVlcy5odG1sCkBAIC0xLDMgKzEsNiBAQAorPHNjcmlwdD4KK2ludGVybmFscy5zZXR0
aW5ncy5zZXRDU1NWYXJpYWJsZXNFbmFibGVkKHRydWUpOworPC9zY3JpcHQ+CiA8c3R5bGU+CiBi
b2R5IHsKICAgICAtd2Via2l0LXZhci1mb3JlZ3JvdW5kOiBncmVlbjsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9pbmxpbmUtc3R5bGVzLmh0bWwgYi9MYXlvdXRU
ZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvaW5saW5lLXN0eWxlcy5odG1sCmluZGV4IDlhMWJlNmJm
OWJjODk5Nzg4NTdlMWU5NTIwMTdiNmZhZDhhZjU0N2EuLjFkYzIzYmQ1ZTNkOWMyNmQwZmQyZjFh
ZmI0NmQ4YTc0M2RiMTE1MDAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3Zhcmlh
Ymxlcy9pbmxpbmUtc3R5bGVzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFi
bGVzL2lubGluZS1zdHlsZXMuaHRtbApAQCAtMSwzICsxLDYgQEAKKzxzY3JpcHQ+CitpbnRlcm5h
bHMuc2V0dGluZ3Muc2V0Q1NTVmFyaWFibGVzRW5hYmxlZCh0cnVlKTsKKzwvc2NyaXB0PgogPGJv
ZHkgc3R5bGU9Ii13ZWJraXQtdmFyLWE6IGdyZWVuOyI+CiA8ZGl2IHN0eWxlPSJjb2xvcjogLXdl
YmtpdC12YXIoYSk7Ij4KIFRoaXMgdGV4dCBzaG91bGQgYmUgZ3JlZW4gb24gYSB3aGl0ZSBiYWNr
Z3JvdW5kLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2ludmFs
aWQtc2hvcnRoYW5kLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvaW52YWxp
ZC1zaG9ydGhhbmQuaHRtbAppbmRleCBjOThlNGQzOTRjNDdjYjA5MTljNTY1ZmY5ODVlZGIyZjNm
NWRiZjZiLi41N2ZmN2VlZWVlNGFhMmNlZDQ2NjQ1NTVhNzkwOTgzZGJjMWYwYTJlIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvaW52YWxpZC1zaG9ydGhhbmQuaHRt
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvaW52YWxpZC1zaG9ydGhhbmQu
aHRtbApAQCAtMSwzICsxLDYgQEAKKzxzY3JpcHQ+CitpbnRlcm5hbHMuc2V0dGluZ3Muc2V0Q1NT
VmFyaWFibGVzRW5hYmxlZCh0cnVlKTsKKzwvc2NyaXB0PgogPHN0eWxlPgogZGl2IHsKICAgICAt
d2Via2l0LXZhci1hOiAxMHB4IHNvbGlkIGdyZWVuOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9jc3MvdmFyaWFibGVzL2ludmFsaWQtdmFyaWFibGUtdmFsdWUuaHRtbCBiL0xheW91dFRl
c3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9pbnZhbGlkLXZhcmlhYmxlLXZhbHVlLmh0bWwKaW5kZXgg
NGNkMDc1Nzk1NzI5ZjNiMTRmZTE2NjVjNGExZGRkZjliZWNlYjZlYy4uZGUxOGQ3OTZkNjE4MTMw
NDQ3ZDljNDc5M2IzMjExM2M1MTI3NzFhOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9j
c3MvdmFyaWFibGVzL2ludmFsaWQtdmFyaWFibGUtdmFsdWUuaHRtbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L2Nzcy92YXJpYWJsZXMvaW52YWxpZC12YXJpYWJsZS12YWx1ZS5odG1sCkBAIC0xLDMg
KzEsNiBAQAorPHNjcmlwdD4KK2ludGVybmFscy5zZXR0aW5ncy5zZXRDU1NWYXJpYWJsZXNFbmFi
bGVkKHRydWUpOworPC9zY3JpcHQ+CiA8c3R5bGU+CiBkaXYgewogICAgIC13ZWJraXQtdmFyLWE6
IGdyZWVuOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL211bHRp
LWxldmVsLWN5Y2xlLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvbXVsdGkt
bGV2ZWwtY3ljbGUuaHRtbAppbmRleCA2Yzg2NGEwZDk4MmZmNTM3ZmE1ODY5OGY3NGE5ZDY0MWMz
MTNhNjc1Li4zNzcyYjE0NzY0Mjk3MDczYzQ2ZDIzMWZmNjY4YjYwM2UzNjQ4YTE4IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvbXVsdGktbGV2ZWwtY3ljbGUuaHRt
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvbXVsdGktbGV2ZWwtY3ljbGUu
aHRtbApAQCAtMSwzICsxLDYgQEAKKzxzY3JpcHQ+CitpbnRlcm5hbHMuc2V0dGluZ3Muc2V0Q1NT
VmFyaWFibGVzRW5hYmxlZCh0cnVlKTsKKzwvc2NyaXB0PgogPHN0eWxlPgogLmEgewogICAgIC13
ZWJraXQtdmFyLWE6IC13ZWJraXQtdmFyKGIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9jc3MvdmFyaWFibGVzL3JlZGVmaW5pdGlvbi5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3Mv
dmFyaWFibGVzL3JlZGVmaW5pdGlvbi5odG1sCmluZGV4IGU0MzhmNWE1YTI1YjE4MThmNjhlNzk3
YjUzMmRiMDc4MWI2YWJkYmUuLmEwMjE4YjFjMTU2ZDY3NGY3YmU3YTdkNTE2YzhhMzI0NGUwNDk3
NjEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9yZWRlZmluaXRp
b24uaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvcmVkZWZpbml0aW9u
Lmh0bWwKQEAgLTEsMyArMSw2IEBACis8c2NyaXB0PgoraW50ZXJuYWxzLnNldHRpbmdzLnNldENT
U1ZhcmlhYmxlc0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KIDxzdHlsZT4KIGJvZHkgewogICAg
IC13ZWJraXQtdmFyLWE6IHJlZDsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3Zh
cmlhYmxlcy9zaG9ydGhhbmQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9z
aG9ydGhhbmQuaHRtbAppbmRleCA1ZDI5OTJlOWRmNjY4NjQwMmY1MzBjMzA2NWJiNDg1MTUyY2Fl
ZjIyLi41OGFiZmIwNTY3MTFhNjNjNzhmNjA0YmQ3MTllMmYyZTFjMWVlM2YyIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvc2hvcnRoYW5kLmh0bWwKKysrIGIvTGF5
b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL3Nob3J0aGFuZC5odG1sCkBAIC0xLDMgKzEsNiBA
QAorPHNjcmlwdD4KK2ludGVybmFscy5zZXR0aW5ncy5zZXRDU1NWYXJpYWJsZXNFbmFibGVkKHRy
dWUpOworPC9zY3JpcHQ+CiA8c3R5bGU+CiBkaXYgewogICAgIC13ZWJraXQtdmFyLW15Ym9yZGVy
OiAxMHB4IHNvbGlkIGdyZWVuOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFy
aWFibGVzL3NpbXBsZS1jeWNsZS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVz
L3NpbXBsZS1jeWNsZS5odG1sCmluZGV4IDRkMWU2M2Y0NDMxM2JlYTE2NzkyNzMxNDAxYWNlNzUx
OWNmNWJiYWEuLjZhOGYzZmNmYzc3M2MxYjRiYmQxZTZlMGJjMGYyZmZmNjJiMTBlZDUgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9zaW1wbGUtY3ljbGUuaHRtbAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvc2ltcGxlLWN5Y2xlLmh0bWwKQEAg
LTEsMyArMSw2IEBACis8c2NyaXB0PgoraW50ZXJuYWxzLnNldHRpbmdzLnNldENTU1ZhcmlhYmxl
c0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KIDxzdHlsZT4KIGJvZHkgewogICAgIC13ZWJraXQt
dmFyLWE6IC13ZWJraXQtdmFyKGEpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3Mv
dmFyaWFibGVzL3RyYW5zZm9ybS10ZXN0Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJp
YWJsZXMvdHJhbnNmb3JtLXRlc3QuaHRtbAppbmRleCBjYzYzY2U0ZTgxZTViOTAxZTUxMDc3MDNj
ZmFlZmQ0OWZmZTc5Njg0Li4zMTBlZDNkNTllZWE0ZDc5ZjBhNmFjMmFiMzg1YzE5MzVhMWUyZDcy
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvdHJhbnNmb3JtLXRl
c3QuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvdHJhbnNmb3JtLXRl
c3QuaHRtbApAQCAtMSwzICsxLDYgQEAKKzxzY3JpcHQ+CitpbnRlcm5hbHMuc2V0dGluZ3Muc2V0
Q1NTVmFyaWFibGVzRW5hYmxlZCh0cnVlKTsKKzwvc2NyaXB0PgogPHN0eWxlPgogZGl2IHsKICAg
ICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nz
cy92YXJpYWJsZXMvdW5kZWZpbmVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJs
ZXMvdW5kZWZpbmVkLmh0bWwKaW5kZXggNzc0MzEwNGU0YWU1YjRmN2Y2MTU0OTQ3MmFiOTVmNTBh
Mzc1OWRkOS4uMGRiOWU3M2NhZjI2ZmEwMjI3ODUwZmU5MmM1ZWQ4OGQyMzNiZTk4YiAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL3VuZGVmaW5lZC5odG1sCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy91bmRlZmluZWQuaHRtbApAQCAtMSwzICsx
LDYgQEAKKzxzY3JpcHQ+CitpbnRlcm5hbHMuc2V0dGluZ3Muc2V0Q1NTVmFyaWFibGVzRW5hYmxl
ZCh0cnVlKTsKKzwvc2NyaXB0PgogPHN0eWxlPgogYm9keSB7CiAgICAgYm9yZGVyOiAtd2Via2l0
LXZhcihteWJvcmRlcik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJs
ZXMvdXNlLWJlZm9yZS1kZWZpbmVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJs
ZXMvdXNlLWJlZm9yZS1kZWZpbmVkLmh0bWwKaW5kZXggYmJhNDFiZThlYTIxZTVjMGU1MTU2NDc2
OTJlNWM3OTg1Y2ZmOGVhMC4uM2IyNjg5Y2Y0ODdlNDhhYjBkZGRkMDYyZGEwZTU5YmU2YjYwMDZi
MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL3VzZS1iZWZvcmUt
ZGVmaW5lZC5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy91c2UtYmVm
b3JlLWRlZmluZWQuaHRtbApAQCAtMSwzICsxLDYgQEAKKzxzY3JpcHQ+CitpbnRlcm5hbHMuc2V0
dGluZ3Muc2V0Q1NTVmFyaWFibGVzRW5hYmxlZCh0cnVlKTsKKzwvc2NyaXB0PgogPHN0eWxlPgog
ZGl2IHsKICAgICBjb2xvcjogLXdlYmtpdC12YXIoYSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L2Nzcy92YXJpYWJsZXMvdmFyLWluc2lkZS1zaG9ydGhhbmQuaHRtbCBiL0xheW91dFRl
c3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy92YXItaW5zaWRlLXNob3J0aGFuZC5odG1sCmluZGV4IDA2
OWE1OGYzNWI0Mzk2NzNkNmEyYzkyMmFlNTAyOGU4NzkxYmE2OTkuLmMyYTc5MGI2OTA0ZGU1YmQ4
MDNhYzNkNzg0YzNmZTI2Y2IxNTI1ZDcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3Nz
L3ZhcmlhYmxlcy92YXItaW5zaWRlLXNob3J0aGFuZC5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvY3NzL3ZhcmlhYmxlcy92YXItaW5zaWRlLXNob3J0aGFuZC5odG1sCkBAIC0xLDMgKzEsNiBA
QAorPHNjcmlwdD4KK2ludGVybmFscy5zZXR0aW5ncy5zZXRDU1NWYXJpYWJsZXNFbmFibGVkKHRy
dWUpOworPC9zY3JpcHQ+CiA8c3R5bGU+CiBib2R5IHsKICAgICAtd2Via2l0LXZhci1NeUJvcmRl
ckNvbG9yOiBncmVlbjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxl
cy92YXJpYWJsZS1jaGFpbi5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL3Zh
cmlhYmxlLWNoYWluLmh0bWwKaW5kZXggYTE1ZDViY2U0ZTg4MjI0OGY0YTEwOWM5ZWE1ZTkxNDNi
NmJlNDRhNi4uYzQzMjYwNTZlZDdjNDY2YzkwNjRjOTZkYzFlNzM3YmExYTBkNGJkZSAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL3ZhcmlhYmxlLWNoYWluLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL3ZhcmlhYmxlLWNoYWluLmh0bWwK
QEAgLTEsMyArMSw2IEBACis8c2NyaXB0PgoraW50ZXJuYWxzLnNldHRpbmdzLnNldENTU1Zhcmlh
Ymxlc0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KIDxzdHlsZT4KIGJvZHkgewogICAgIC13ZWJr
aXQtdmFyLWM6IGdyZWVuOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>149208</attachid>
            <date>2012-06-24 17:00:57 -0700</date>
            <delta_ts>2012-06-25 17:18:46 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-89542-20120625100055.patch</filename>
            <type>text/plain</type>
            <size>24604</size>
            <attacher name="Luke Macpherson">macpherson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIxMTIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTdiNDMzZDhlODIzMmM4
ZmYzZTVjMGVjMTkxOGQyNzNjODRmZjM1My4uYTQwN2M2NDViNzlkOWVjMDVkZDBlM2NiYjY5YjU5
ZjcwNTlhNWRmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDEyLTA2LTE5ICBMdWtl
IE1hY3BoZXJzb24gIDxtYWNwaGVyc29uQGNocm9taXVtLm9yZz4KKworICAgICAgICBBZGQgcnVu
dGltZSBmbGFnIHRvIGVuYWJsZS9kaXNhYmxlIENTUyB2YXJpYWJsZXMgKGluIGFkZGl0aW9uIHRv
IGV4aXN0aW5nIGNvbXBpbGUtdGltZSBmbGFnKS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTg5NTQyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGltaXRy
aSBHbGF6a292LgorCisgICAgICAgIEFkZGVkIGZhc3QvY3NzL3ZhcmlhYmxlcy9idWlsZC1zdXBw
b3J0cy12YXJpYWJsZXMuaHRtbCB0byB0ZXN0IHJ1bnRpbWUgZmxhZyBpbiB0ZXN0IGVudmlyb25t
ZW50LgorICAgICAgICBVcGRhdGVkIGFsbCBvdGhlciBjc3MgdmFyaWFibGVzIHRlc3RzIHRvIGVu
YWJsZSB0aGUgcnVudGltZSBmbGFnIGZyb20gSlMuCisKKyAgICAgICAgKiBjc3MvQ1NTUGFyc2Vy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1BhcnNlckNvbnRleHQ6OkNTU1BhcnNlckNvbnRl
eHQpOgorICAgICAgICAoV2ViQ29yZTo6b3BlcmF0b3I9PSk6CisgICAgICAgIChXZWJDb3JlOjpD
U1NQYXJzZXI6OmNzc1ZhcmlhYmxlc0VuYWJsZWQpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAg
ICAgIChXZWJDb3JlOjpDU1NQYXJzZXI6OmRldGVjdERhc2hUb2tlbik6CisgICAgICAgIChXZWJD
b3JlOjpDU1NQYXJzZXI6OmxleCk6CisgICAgICAgICogY3NzL0NTU1BhcnNlci5oOgorICAgICAg
ICAoQ1NTUGFyc2VyKToKKyAgICAgICAgKiBjc3MvQ1NTUGFyc2VyTW9kZS5oOgorICAgICAgICAo
Q1NTUGFyc2VyQ29udGV4dCk6CisgICAgICAgICogcGFnZS9TZXR0aW5ncy5oOgorICAgICAgICAo
U2V0dGluZ3MpOgorICAgICAgICAoV2ViQ29yZTo6U2V0dGluZ3M6OnNldENTU1ZhcmlhYmxlc0Vu
YWJsZWQpOgorICAgICAgICAoV2ViQ29yZTo6U2V0dGluZ3M6OmNzc1ZhcmlhYmxlc0VuYWJsZWQp
OgorCiAyMDEyLTA2LTI0ICBPbGkgTGFuICA8b2xpbGFuQGNocm9taXVtLm9yZz4KIAogICAgICAg
ICBBZnRlciBFZGl0b3I6OnNldENvbXBvc2l0aW9uIGlzIGNhbGxlZCwgaW5wdXQgc2hvdWxkIHNj
cm9sbCB0byB0aGUgZW5kIG9mIHRoZSBjb21wb3NpdGlvbi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VM
b2cKaW5kZXggOGE2ZjEzNGVhMDI5ZDhjNGFkZjcyM2IzYjI3MDQwOGZlNTdiYjNiYS4uM2ZkYTM4
Zjc3N2Q1NGY4Y2UxMzA2M2M5YTZiOWI2NDJhNDNkNDEyOSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAxMi0wNi0xOSAgTHVrZSBNYWNwaGVyc29uICA8bWFj
cGhlcnNvbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgQWRkIHJ1bnRpbWUgZmxhZyB0byBlbmFi
bGUvZGlzYWJsZSBDU1MgdmFyaWFibGVzIChpbiBhZGRpdGlvbiB0byBleGlzdGluZyBjb21waWxl
LXRpbWUgZmxhZykuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD04OTU0MgorCisgICAgICAgIFJldmlld2VkIGJ5IERpbWl0cmkgR2xhemtvdi4KKworICAg
ICAgICAqIGZlYXR1cmVzLmd5cGk6CisgICAgICAgICogcHVibGljL1dlYlNldHRpbmdzLmg6Cisg
ICAgICAgICogc3JjL1dlYlNldHRpbmdzSW1wbC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlNl
dHRpbmdzSW1wbDo6c2V0RXhwZXJpbWVudGFsQ1NTVmFyaWFibGVzRW5hYmxlZCk6CisgICAgICAg
IChXZWJLaXQpOgorICAgICAgICAqIHNyYy9XZWJTZXR0aW5nc0ltcGwuaDoKKyAgICAgICAgKFdl
YlNldHRpbmdzSW1wbCk6CisKIDIwMTItMDYtMjMgIEt3YW5nIFl1bCBTZW8gIDxza3l1bEBjb21w
YW55MTAwLm5ldD4KIAogICAgICAgICBbY2hyb21pdW1dIFJldHVybiBoYXMgdmFsdWUsIGluIGZ1
bmN0aW9uIHJldHVybmluZyB2b2lkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
UGFyc2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3BwCmluZGV4IDYzNzgz
NTk2YjMyN2MzN2Q3NGM5MjY0NzJmYTY0NDg0YTFlMTU0MjIuLmFjZGQ4OWQ1OGM1MDZhYWM4ZjI5
MWM5NzY1YmM5Nzc2MzljMGYwZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQ
YXJzZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3BwCkBAIC0xOTQs
NiArMTk0LDkgQEAgQ1NTUGFyc2VyQ29udGV4dDo6Q1NTUGFyc2VyQ29udGV4dChDU1NQYXJzZXJN
b2RlIG1vZGUsIGNvbnN0IEtVUkwmIGJhc2VVUkwpCiAgICAgLCBpc0NTU0N1c3RvbUZpbHRlckVu
YWJsZWQoZmFsc2UpCiAgICAgLCBpc0NTU1JlZ2lvbnNFbmFibGVkKGZhbHNlKQogICAgICwgaXND
U1NHcmlkTGF5b3V0RW5hYmxlZChmYWxzZSkKKyNpZiBFTkFCTEUoQ1NTX1ZBUklBQkxFUykKKyAg
ICAsIGlzQ1NTVmFyaWFibGVzRW5hYmxlZChmYWxzZSkKKyNlbmRpZgogICAgICwgbmVlZHNTaXRl
U3BlY2lmaWNRdWlya3MoZmFsc2UpCiAgICAgLCBlbmZvcmNlc0NTU01JTUVUeXBlSW5Ob1F1aXJr
c01vZGUodHJ1ZSkKIHsKQEAgLTIwNyw2ICsyMTAsOSBAQCBDU1NQYXJzZXJDb250ZXh0OjpDU1NQ
YXJzZXJDb250ZXh0KERvY3VtZW50KiBkb2N1bWVudCwgY29uc3QgS1VSTCYgYmFzZVVSTCwgY29u
cwogICAgICwgaXNDU1NDdXN0b21GaWx0ZXJFbmFibGVkKGRvY3VtZW50LT5zZXR0aW5ncygpID8g
ZG9jdW1lbnQtPnNldHRpbmdzKCktPmlzQ1NTQ3VzdG9tRmlsdGVyRW5hYmxlZCgpIDogZmFsc2Up
CiAgICAgLCBpc0NTU1JlZ2lvbnNFbmFibGVkKGRvY3VtZW50LT5jc3NSZWdpb25zRW5hYmxlZCgp
KQogICAgICwgaXNDU1NHcmlkTGF5b3V0RW5hYmxlZChkb2N1bWVudC0+Y3NzR3JpZExheW91dEVu
YWJsZWQoKSkKKyNpZiBFTkFCTEUoQ1NTX1ZBUklBQkxFUykKKyAgICAsIGlzQ1NTVmFyaWFibGVz
RW5hYmxlZChkb2N1bWVudC0+c2V0dGluZ3MoKSA/IGRvY3VtZW50LT5zZXR0aW5ncygpLT5jc3NW
YXJpYWJsZXNFbmFibGVkKCkgOiBmYWxzZSkKKyNlbmRpZgogICAgICwgbmVlZHNTaXRlU3BlY2lm
aWNRdWlya3MoZG9jdW1lbnQtPnNldHRpbmdzKCkgPyBkb2N1bWVudC0+c2V0dGluZ3MoKS0+bmVl
ZHNTaXRlU3BlY2lmaWNRdWlya3MoKSA6IGZhbHNlKQogICAgICwgZW5mb3JjZXNDU1NNSU1FVHlw
ZUluTm9RdWlya3NNb2RlKCFkb2N1bWVudC0+c2V0dGluZ3MoKSB8fCBkb2N1bWVudC0+c2V0dGlu
Z3MoKS0+ZW5mb3JjZUNTU01JTUVUeXBlSW5Ob1F1aXJrc01vZGUoKSkKIHsKQEAgLTIyMSw2ICsy
MjcsOSBAQCBib29sIG9wZXJhdG9yPT0oY29uc3QgQ1NTUGFyc2VyQ29udGV4dCYgYSwgY29uc3Qg
Q1NTUGFyc2VyQ29udGV4dCYgYikKICAgICAgICAgJiYgYS5pc0NTU0N1c3RvbUZpbHRlckVuYWJs
ZWQgPT0gYi5pc0NTU0N1c3RvbUZpbHRlckVuYWJsZWQKICAgICAgICAgJiYgYS5pc0NTU1JlZ2lv
bnNFbmFibGVkID09IGIuaXNDU1NSZWdpb25zRW5hYmxlZAogICAgICAgICAmJiBhLmlzQ1NTR3Jp
ZExheW91dEVuYWJsZWQgPT0gYi5pc0NTU0dyaWRMYXlvdXRFbmFibGVkCisjaWYgRU5BQkxFKENT
U19WQVJJQUJMRVMpCisgICAgICAgICYmIGEuaXNDU1NWYXJpYWJsZXNFbmFibGVkID09IGIuaXND
U1NWYXJpYWJsZXNFbmFibGVkCisjZW5kaWYKICAgICAgICAgJiYgYS5uZWVkc1NpdGVTcGVjaWZp
Y1F1aXJrcyA9PSBiLm5lZWRzU2l0ZVNwZWNpZmljUXVpcmtzCiAgICAgICAgICYmIGEuZW5mb3Jj
ZXNDU1NNSU1FVHlwZUluTm9RdWlya3NNb2RlID09IGIuZW5mb3JjZXNDU1NNSU1FVHlwZUluTm9R
dWlya3NNb2RlOwogfQpAQCAtMTAxNCw2ICsxMDIzLDI1IEBAIFBhc3NSZWZQdHI8Q1NTVmFsdWVM
aXN0PiBDU1NQYXJzZXI6OnBhcnNlRm9udEZhY2VWYWx1ZShjb25zdCBBdG9taWNTdHJpbmcmIHN0
cmluCiAgICAgcmV0dXJuIHN0YXRpY19wb2ludGVyX2Nhc3Q8Q1NTVmFsdWVMaXN0PihkdW1teVN0
eWxlLT5nZXRQcm9wZXJ0eUNTU1ZhbHVlKENTU1Byb3BlcnR5Rm9udEZhbWlseSkpOwogfQogCisj
aWYgRU5BQkxFKENTU19WQVJJQUJMRVMpCitib29sIENTU1BhcnNlcjo6cGFyc2VWYWx1ZShTdHls
ZVByb3BlcnR5U2V0KiBkZWNsYXJhdGlvbiwgQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlELCBjb25z
dCBTdHJpbmcmIHN0cmluZywgYm9vbCBpbXBvcnRhbnQsIERvY3VtZW50KiBkb2N1bWVudCkKK3sK
KyAgICBBU1NFUlQoIXN0cmluZy5pc0VtcHR5KCkpOworCisgICAgQ1NTUGFyc2VyQ29udGV4dCBj
b250ZXh0KGRvY3VtZW50KTsKKworICAgIGlmIChwYXJzZVNpbXBsZUxlbmd0aFZhbHVlKGRlY2xh
cmF0aW9uLCBwcm9wZXJ0eUlELCBzdHJpbmcsIGltcG9ydGFudCwgY29udGV4dC5tb2RlKSkKKyAg
ICAgICAgcmV0dXJuIHRydWU7CisgICAgaWYgKHBhcnNlQ29sb3JWYWx1ZShkZWNsYXJhdGlvbiwg
cHJvcGVydHlJRCwgc3RyaW5nLCBpbXBvcnRhbnQsIGNvbnRleHQubW9kZSkpCisgICAgICAgIHJl
dHVybiB0cnVlOworICAgIGlmIChwYXJzZUtleXdvcmRWYWx1ZShkZWNsYXJhdGlvbiwgcHJvcGVy
dHlJRCwgc3RyaW5nLCBpbXBvcnRhbnQsIGNvbnRleHQpKQorICAgICAgICByZXR1cm4gdHJ1ZTsK
KworICAgIENTU1BhcnNlciBwYXJzZXIoY29udGV4dCk7CisgICAgcmV0dXJuIHBhcnNlci5wYXJz
ZVZhbHVlKGRlY2xhcmF0aW9uLCBwcm9wZXJ0eUlELCBzdHJpbmcsIGltcG9ydGFudCwgc3RhdGlj
X2Nhc3Q8U3R5bGVTaGVldENvbnRlbnRzKj4oMCkpOworfQorI2VuZGlmCisKIGJvb2wgQ1NTUGFy
c2VyOjpwYXJzZVZhbHVlKFN0eWxlUHJvcGVydHlTZXQqIGRlY2xhcmF0aW9uLCBDU1NQcm9wZXJ0
eUlEIHByb3BlcnR5SUQsIGNvbnN0IFN0cmluZyYgc3RyaW5nLCBib29sIGltcG9ydGFudCwgQ1NT
UGFyc2VyTW9kZSBjc3NQYXJzZXJNb2RlLCBTdHlsZVNoZWV0Q29udGVudHMqIGNvbnRleHRTdHls
ZVNoZWV0KQogewogICAgIEFTU0VSVCghc3RyaW5nLmlzRW1wdHkoKSk7CkBAIC0yODkzLDYgKzI5
MjEsMTEgQEAgYm9vbCBDU1NQYXJzZXI6OnBhcnNlRmlsbFNob3J0aGFuZChDU1NQcm9wZXJ0eUlE
IHByb3BJZCwgY29uc3QgQ1NTUHJvcGVydHlJRCogcHIKIH0KIAogI2lmIEVOQUJMRShDU1NfVkFS
SUFCTEVTKQorYm9vbCBDU1NQYXJzZXI6OmNzc1ZhcmlhYmxlc0VuYWJsZWQoKSBjb25zdAorewor
ICAgIHJldHVybiBtX2NvbnRleHQuaXNDU1NWYXJpYWJsZXNFbmFibGVkOworfQorCiB2b2lkIENT
U1BhcnNlcjo6c3RvcmVWYXJpYWJsZURlY2xhcmF0aW9uKGNvbnN0IENTU1BhcnNlclN0cmluZyYg
bmFtZSwgUGFzc093blB0cjxDU1NQYXJzZXJWYWx1ZUxpc3Q+IHZhbHVlLCBib29sIGltcG9ydGFu
dCkKIHsKICAgICBTdHJpbmdCdWlsZGVyIGJ1aWxkZXI7CkBAIC04NTE2LDcgKzg1NDksNyBAQCBp
bmxpbmUgdm9pZCBDU1NQYXJzZXI6OmRldGVjdERhc2hUb2tlbihpbnQgbGVuZ3RoKQogICAgICAg
ICBlbHNlIGlmIChpc0FTQ0lJQWxwaGFDYXNlbGVzc0VxdWFsKG5hbWVbMTBdLCAneCcpICYmIGlz
RXF1YWxUb0NTU0lkZW50aWZpZXIobmFtZSArIDEsICJ3ZWJraXQtbWEiKSkKICAgICAgICAgICAg
IG1fdG9rZW4gPSBNQVhGVU5DVElPTjsKICNpZiBFTkFCTEUoQ1NTX1ZBUklBQkxFUykKLSAgICAg
ICAgZWxzZSBpZiAoaXNBU0NJSUFscGhhQ2FzZWxlc3NFcXVhbChuYW1lWzEwXSwgJ3InKSAmJiBp
c0VxdWFsVG9DU1NJZGVudGlmaWVyKG5hbWUgKyAxLCAid2Via2l0LXZhIikpCisgICAgICAgIGVs
c2UgaWYgKGNzc1ZhcmlhYmxlc0VuYWJsZWQoKSAmJiBpc0FTQ0lJQWxwaGFDYXNlbGVzc0VxdWFs
KG5hbWVbMTBdLCAncicpICYmIGlzRXF1YWxUb0NTU0lkZW50aWZpZXIobmFtZSArIDEsICJ3ZWJr
aXQtdmEiKSkKICAgICAgICAgICAgIG1fdG9rZW4gPSBWQVJGVU5DVElPTjsKICNlbmRpZgogICAg
IH0gZWxzZSBpZiAobGVuZ3RoID09IDEyICYmIGlzRXF1YWxUb0NTU0lkZW50aWZpZXIobmFtZSAr
IDEsICJ3ZWJraXQtY2FsYyIpKQpAQCAtODg1OCw3ICs4ODkxLDcgQEAgcmVzdGFydEFmdGVyQ29t
bWVudDoKIAogICAgIGNhc2UgQ2hhcmFjdGVyRGFzaDoKICNpZiBFTkFCTEUoQ1NTX1ZBUklBQkxF
UykKLSAgICAgICAgaWYgKG1fY3VycmVudENoYXJhY3RlclsxMF0gPT0gJy0nICYmIGlzRXF1YWxU
b0NTU0lkZW50aWZpZXIobV9jdXJyZW50Q2hhcmFjdGVyLCAid2Via2l0LXZhciIpICYmIGlzSWRl
bnRpZmllclN0YXJ0QWZ0ZXJEYXNoKG1fY3VycmVudENoYXJhY3RlciArIDExKSkgeworICAgICAg
ICBpZiAoY3NzVmFyaWFibGVzRW5hYmxlZCgpICYmIG1fY3VycmVudENoYXJhY3RlclsxMF0gPT0g
Jy0nICYmIGlzRXF1YWxUb0NTU0lkZW50aWZpZXIobV9jdXJyZW50Q2hhcmFjdGVyLCAid2Via2l0
LXZhciIpICYmIGlzSWRlbnRpZmllclN0YXJ0QWZ0ZXJEYXNoKG1fY3VycmVudENoYXJhY3RlciAr
IDExKSkgewogICAgICAgICAgICAgLy8gaGFuZGxlIHZhcmlhYmxlIGRlY2xhcmF0aW9ucwogICAg
ICAgICAgICAgbV9jdXJyZW50Q2hhcmFjdGVyICs9IDExOwogICAgICAgICAgICAgcGFyc2VJZGVu
dGlmaWVyKHJlc3VsdCwgaGFzRXNjYXBlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NQYXJzZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuaAppbmRleCBiMDM3
ZjAzYTQzYWE1ZTA1YjBiNWE0MjE5Zjc3MjA1ZTViZDY3NTAzLi42MjVlMWUwODFjODdlMjMzNmE0
Mjg5ZGMwOGYxMjdjNjUwMTEwNTRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
UGFyc2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5oCkBAIC05Miw2ICs5
Miw4IEBAIHB1YmxpYzoKICAgICBib29sIHBhcnNlUXVvdGVzKENTU1Byb3BlcnR5SUQsIGJvb2wg
aW1wb3J0YW50KTsKIAogI2lmIEVOQUJMRShDU1NfVkFSSUFCTEVTKQorICAgIHN0YXRpYyBib29s
IHBhcnNlVmFsdWUoU3R5bGVQcm9wZXJ0eVNldCosIENTU1Byb3BlcnR5SUQsIGNvbnN0IFN0cmlu
ZyYsIGJvb2wgaW1wb3J0YW50LCBEb2N1bWVudCopOworICAgIGJvb2wgY3NzVmFyaWFibGVzRW5h
YmxlZCgpIGNvbnN0OwogICAgIHZvaWQgc3RvcmVWYXJpYWJsZURlY2xhcmF0aW9uKGNvbnN0IENT
U1BhcnNlclN0cmluZyYsIFBhc3NPd25QdHI8Q1NTUGFyc2VyVmFsdWVMaXN0PiwgYm9vbCBpbXBv
cnRhbnQpOwogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJz
ZXJNb2RlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyTW9kZS5oCmluZGV4IGQ5MjAw
YjcyYzcyNjY2YTk5MjVmOTc0MTc4ZjkxZWE5ZDVlNTdkZGMuLjUyMjhlOTgxMmQ5ZjIyYTllOGNi
MTVhMDc2MDMzOWVkZjEwNzZlMzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQ
YXJzZXJNb2RlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlck1vZGUuaApAQCAt
NjUsNiArNjUsOSBAQCBzdHJ1Y3QgQ1NTUGFyc2VyQ29udGV4dCB7CiAgICAgYm9vbCBpc0NTU0N1
c3RvbUZpbHRlckVuYWJsZWQ7CiAgICAgYm9vbCBpc0NTU1JlZ2lvbnNFbmFibGVkOwogICAgIGJv
b2wgaXNDU1NHcmlkTGF5b3V0RW5hYmxlZDsKKyNpZiBFTkFCTEUoQ1NTX1ZBUklBQkxFUykKKyAg
ICBib29sIGlzQ1NTVmFyaWFibGVzRW5hYmxlZDsKKyNlbmRpZgogICAgIGJvb2wgbmVlZHNTaXRl
U3BlY2lmaWNRdWlya3M7CiAgICAgYm9vbCBlbmZvcmNlc0NTU01JTUVUeXBlSW5Ob1F1aXJrc01v
ZGU7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3Bw
IGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwCmluZGV4IGExNTRhODU4ODM5
ZDMxZDIzYWViNWNiYzJkMGVmY2UyYWRhYzU2ZmMuLmFjNjZhNTY4ZDNhZTg1Zjk4Y2NhMTU0NDRh
MWZmODVkMWI2MjRlYmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29s
dmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAKQEAgLTMz
MjMsNyArMzMyMyw3IEBAIHZvaWQgU3R5bGVSZXNvbHZlcjo6cmVzb2x2ZVZhcmlhYmxlcyhDU1NQ
cm9wZXJ0eUlEIGlkLCBDU1NWYWx1ZSogdmFsdWUsIFZlY3RvcjxzCiAKICAgICAvLyBGSVhNRTog
SXQgd291bGQgYmUgZmFzdGVyIG5vdCB0byByZS1wYXJzZSBmcm9tIHN0cmluZ3MsIGJ1dCBmb3Ig
bm93IENTUyBwcm9wZXJ0eSB2YWxpZGF0aW9uIGxpdmVzIGluc2lkZSB0aGUgcGFyc2VyIHNvIHdl
IGRvIGl0IHRoZXJlLgogICAgIFJlZlB0cjxTdHlsZVByb3BlcnR5U2V0PiByZXN1bHRTZXQgPSBT
dHlsZVByb3BlcnR5U2V0OjpjcmVhdGUoKTsKLSAgICBpZiAoIUNTU1BhcnNlcjo6cGFyc2VWYWx1
ZShyZXN1bHRTZXQuZ2V0KCksIGlkLCBleHByZXNzaW9uLnNlY29uZCwgZmFsc2UsIENTU1N0cmlj
dE1vZGUsIDApKQorICAgIGlmICghQ1NTUGFyc2VyOjpwYXJzZVZhbHVlKHJlc3VsdFNldC5nZXQo
KSwgaWQsIGV4cHJlc3Npb24uc2Vjb25kLCBmYWxzZSwgZG9jdW1lbnQoKSkpCiAgICAgICAgIHJl
dHVybjsgLy8gZXhwcmVzc2lvbiBmYWlsZWQgdG8gcGFyc2UuCiAKICAgICBmb3IgKHVuc2lnbmVk
IGkgPSAwOyBpIDwgcmVzdWx0U2V0LT5wcm9wZXJ0eUNvdW50KCk7IGkrKykgewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9T
ZXR0aW5ncy5oCmluZGV4IGQ4NDZmYTA3YWMxMGU4OWEyMjY3NzA3YmY5MDg4YmZhM2EyZjU5ZmQu
LjNkYzQ1YmM0MzBhZTIyZGIwMzBjOTYyZjhjODMyNDhjNDRjMmQyYTYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Nl
dHRpbmdzLmgKQEAgLTMzMSw2ICszMzEsMTQgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAg
ICBib29sIGNzc1JlZ2lvbnNFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KICNlbmRp
ZgogCisjaWYgRU5BQkxFKENTU19WQVJJQUJMRVMpCisgICAgICAgIHZvaWQgc2V0Q1NTVmFyaWFi
bGVzRW5hYmxlZChib29sIGVuYWJsZWQpIHsgbV9jc3NWYXJpYWJsZXNFbmFibGVkID0gZW5hYmxl
ZDsgfQorICAgICAgICBib29sIGNzc1ZhcmlhYmxlc0VuYWJsZWQoKSBjb25zdCB7IHJldHVybiB0
cnVlOyB9CisjZWxzZQorICAgICAgICB2b2lkIHNldENTU1ZhcmlhYmxlc0VuYWJsZWQoYm9vbCkg
eyB9CisgICAgICAgIGJvb2wgY3NzVmFyaWFibGVzRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIGZh
bHNlOyB9CisjZW5kaWYKKwogICAgICAgICB2b2lkIHNldFJlZ2lvbkJhc2VkQ29sdW1uc0VuYWJs
ZWQoYm9vbCBlbmFibGVkKSB7IG1fcmVnaW9uQmFzZWRDb2x1bW5zRW5hYmxlZCA9IGVuYWJsZWQ7
IH0KICAgICAgICAgYm9vbCByZWdpb25CYXNlZENvbHVtbnNFbmFibGVkKCkgY29uc3QgeyByZXR1
cm4gbV9yZWdpb25CYXNlZENvbHVtbnNFbmFibGVkOyB9CiAKQEAgLTY3Nyw2ICs2ODUsOSBAQCBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAjaWYgRU5BQkxFKENTU19SRUdJT05TKQogICAgICAgICBib29s
IG1fY3NzUmVnaW9uc0VuYWJsZWQgOiAxOwogI2VuZGlmCisjaWYgRU5BQkxFKENTU19WQVJJQUJM
RVMpCisgICAgICAgIGJvb2wgbV9jc3NWYXJpYWJsZXNFbmFibGVkIDogMTsKKyNlbmRpZgogICAg
ICAgICBib29sIG1fcmVnaW9uQmFzZWRDb2x1bW5zRW5hYmxlZCA6IDE7CiAgICAgICAgIGJvb2wg
bV9jc3NHcmlkTGF5b3V0RW5hYmxlZCA6IDE7CiAgICAgICAgIGJvb2wgbV9kb3dubG9hZGFibGVC
aW5hcnlGb250c0VuYWJsZWQgOiAxOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGlu
Zy9JbnRlcm5hbFNldHRpbmdzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxT
ZXR0aW5ncy5jcHAKaW5kZXggNzFkMDAxMzAxMDY5MmNmN2NhYjE2NTVjZTFkNTUxOWEwNzZiZTU3
Mi4uYmY0MzkyMzA1OGUzYjU2YTIzZmFkMjE2YjA4ZjA2NmIzMzFjMWIyNCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuY3BwCkBAIC0zNDgsNiArMzQ4LDE4IEBA
IHZvaWQgSW50ZXJuYWxTZXR0aW5nczo6c2V0Q1NTRXhjbHVzaW9uc0VuYWJsZWQoYm9vbCBlbmFi
bGVkLCBFeGNlcHRpb25Db2RlJiBlYykKICAgICBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzZXRD
U1NFeGNsdXNpb25zRW5hYmxlZChlbmFibGVkKTsKIH0KIAordm9pZCBJbnRlcm5hbFNldHRpbmdz
OjpzZXRDU1NWYXJpYWJsZXNFbmFibGVkKGJvb2wgZW5hYmxlZCwgRXhjZXB0aW9uQ29kZSYgZWMp
Cit7CisgICAgSW50ZXJuYWxTZXR0aW5nc0d1YXJkRm9yU2V0dGluZ3MoKTsKKyAgICBzZXR0aW5n
cygpLT5zZXRDU1NWYXJpYWJsZXNFbmFibGVkKGVuYWJsZWQpOworfQorCitib29sIEludGVybmFs
U2V0dGluZ3M6OmNzc1ZhcmlhYmxlc0VuYWJsZWQoRXhjZXB0aW9uQ29kZSYgZWMpCit7CisgICAg
SW50ZXJuYWxTZXR0aW5nc0d1YXJkRm9yU2V0dGluZ3NSZXR1cm4oZmFsc2UpOworICAgIHJldHVy
biBzZXR0aW5ncygpLT5jc3NWYXJpYWJsZXNFbmFibGVkKCk7Cit9CisKIHZvaWQgSW50ZXJuYWxT
ZXR0aW5nczo6c2V0TWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUoYm9vbCBlbmFibGVk
LCBFeGNlcHRpb25Db2RlJiBlYykKIHsKICAgICBJbnRlcm5hbFNldHRpbmdzR3VhcmRGb3JTZXR0
aW5ncygpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRp
bmdzLmggYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaAppbmRleCBh
ODdmOTZmNzhhMTAyOTU2ODA3ZjU2YmFlMTUwY2JlYThmZGQxNmM0Li4xMjdkYTQyOGYwNjc1ZDE4
MjQ3OTViYWU5OGQ1MmQ2MGRhMDJiYjM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL0ludGVybmFsU2V0dGluZ3MuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVy
bmFsU2V0dGluZ3MuaApAQCAtNzUsNiArNzUsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRFbmFi
bGVTY3JvbGxBbmltYXRvcihib29sIGVuYWJsZWQsIEV4Y2VwdGlvbkNvZGUmKTsKICAgICBib29s
IHNjcm9sbEFuaW1hdG9yRW5hYmxlZChFeGNlcHRpb25Db2RlJik7CiAgICAgdm9pZCBzZXRDU1NF
eGNsdXNpb25zRW5hYmxlZChib29sIGVuYWJsZWQsIEV4Y2VwdGlvbkNvZGUmKTsKKyAgICB2b2lk
IHNldENTU1ZhcmlhYmxlc0VuYWJsZWQoYm9vbCBlbmFibGVkLCBFeGNlcHRpb25Db2RlJik7Cisg
ICAgYm9vbCBjc3NWYXJpYWJsZXNFbmFibGVkKEV4Y2VwdGlvbkNvZGUmKTsKICAgICB2b2lkIHNl
dE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKGJvb2wsIEV4Y2VwdGlvbkNvZGUmKTsK
ICAgICB2b2lkIHNldEVkaXRpbmdCZWhhdmlvcihjb25zdCBTdHJpbmcmLCBFeGNlcHRpb25Db2Rl
Jik7CiAgICAgdm9pZCBzZXRGaXhlZFBvc2l0aW9uQ3JlYXRlc1N0YWNraW5nQ29udGV4dChib29s
LCBFeGNlcHRpb25Db2RlJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0lu
dGVybmFsU2V0dGluZ3MuaWRsIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRp
bmdzLmlkbAppbmRleCAwYWY1MzhhNTNhY2RlMzE5ZDk1MThhMTI0OTJkZDFjMDI4NGI0MGYxLi4x
OTY1ZjA1ZTdiNjgzNGZmNWM1ZDM4Y2I4OTAxOGRiY2U2OGJjNGY2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaWRsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5pZGwKQEAgLTU0LDYgKzU0LDggQEAgbW9kdWxl
IHdpbmRvdyB7CiAgICAgICAgIHZvaWQgc2V0RW5hYmxlU2Nyb2xsQW5pbWF0b3IoaW4gYm9vbGVh
biBlbmFibGVkKSByYWlzZXMoRE9NRXhjZXB0aW9uKTsKICAgICAgICAgYm9vbGVhbiBzY3JvbGxB
bmltYXRvckVuYWJsZWQoKSByYWlzZXMoRE9NRXhjZXB0aW9uKTsKICAgICAgICAgdm9pZCBzZXRD
U1NFeGNsdXNpb25zRW5hYmxlZChpbiBib29sZWFuIGVuYWJsZWQpIHJhaXNlcyhET01FeGNlcHRp
b24pOworICAgICAgICB2b2lkIHNldENTU1ZhcmlhYmxlc0VuYWJsZWQoaW4gYm9vbGVhbiBlbmFi
bGVkKSByYWlzZXMoRE9NRXhjZXB0aW9uKTsKKyAgICAgICAgYm9vbGVhbiBjc3NWYXJpYWJsZXNF
bmFibGVkKCkgcmFpc2VzKERPTUV4Y2VwdGlvbik7CiAgICAgICAgIHZvaWQgc2V0TWVkaWFQbGF5
YmFja1JlcXVpcmVzVXNlckdlc3R1cmUoaW4gYm9vbGVhbiBlbmFibGVkKSByYWlzZXMoRE9NRXhj
ZXB0aW9uKTsKICAgICAgICAgdm9pZCBzZXRFZGl0aW5nQmVoYXZpb3IoaW4gRE9NU3RyaW5nIGJl
aGF2aW9yKSByYWlzZXMoRE9NRXhjZXB0aW9uKTsKICAgICAgICAgdm9pZCBzZXRGaXhlZFBvc2l0
aW9uQ3JlYXRlc1N0YWNraW5nQ29udGV4dChpbiBib29sZWFuIGNyZWF0ZXMpIHJhaXNlcyhET01F
eGNlcHRpb24pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9mZWF0dXJlcy5n
eXBpIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9mZWF0dXJlcy5neXBpCmluZGV4IGJmMTJlZTE3
YWEyYTRjZWYxMTI3YmZmNDQ5ZDYyY2ZjYjEwZjZjYTEuLjJhZTc5YmE5MmFhYWI4ZjJhMmE2MGVk
Yzc3YTY0ZjViMDcyZmIwMmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vZmVh
dHVyZXMuZ3lwaQorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL2ZlYXR1cmVzLmd5cGkKQEAg
LTQ2LDcgKzQ2LDcgQEAKICAgICAgICdFTkFCTEVfQ1NTX0lNQUdFX1JFU09MVVRJT049MCcsCiAg
ICAgICAnRU5BQkxFX0NTU19SRUdJT05TPTEnLAogICAgICAgJ0VOQUJMRV9DU1NfU0hBREVSUz0x
JywKLSAgICAgICdFTkFCTEVfQ1NTX1ZBUklBQkxFUz0wJywKKyAgICAgICdFTkFCTEVfQ1NTX1ZB
UklBQkxFUz0xJywKICAgICAgICdFTkFCTEVfQ1VTVE9NX1NDSEVNRV9IQU5ETEVSPTAnLAogICAg
ICAgJ0VOQUJMRV9EQVRBTElTVD0xJywKICAgICAgICdFTkFCTEVfREFTSEJPQVJEX1NVUFBPUlQ9
MCcsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJTZXR0aW5n
cy5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViU2V0dGluZ3MuaAppbmRleCBi
YWI1YzM4ZGMwOGM2MjUwOTlmMTUxMTkwNDM2YWUxZDhjOTAxNmRhLi41ZWM1YzUwZGFkMjg4ZTMx
YTJjYTA2MTZkNmRhYTEwMTNjYjNmNmI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3B1YmxpYy9XZWJTZXR0aW5ncy5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVi
bGljL1dlYlNldHRpbmdzLmgKQEAgLTEwNSw2ICsxMDUsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVh
bCB2b2lkIHNldEV4cGVyaW1lbnRhbENTU1JlZ2lvbnNFbmFibGVkKGJvb2wpID0gMDsKICAgICB2
aXJ0dWFsIHZvaWQgc2V0RXhwZXJpbWVudGFsQ1NTR3JpZExheW91dEVuYWJsZWQoYm9vbCkgPSAw
OwogICAgIHZpcnR1YWwgdm9pZCBzZXRFeHBlcmltZW50YWxDU1NDdXN0b21GaWx0ZXJFbmFibGVk
KGJvb2wpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgc2V0RXhwZXJpbWVudGFsQ1NTVmFyaWFibGVz
RW5hYmxlZChib29sKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHNldE9wZW5HTE11bHRpc2FtcGxp
bmdFbmFibGVkKGJvb2wpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0UHJpdmlsZWdlZFdlYkdM
RXh0ZW5zaW9uc0VuYWJsZWQoYm9vbCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBzZXRXZWJHTEVy
cm9yc1RvQ29uc29sZUVuYWJsZWQoYm9vbCkgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vc3JjL1dlYlNldHRpbmdzSW1wbC5jcHAKaW5kZXggNDNjNDMzYzMwNjQyNDlhMTViZTIyMmZj
ZTk3NGUzNTdlMTMzNTM4My4uZTRkM2FkODM1NzBiNWI1YmQ1OTE4NWNmYzkzZjhiYzI2Nzk0ZTk1
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBs
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuY3Bw
CkBAIC0zMzgsNiArMzM4LDExIEBAIHZvaWQgV2ViU2V0dGluZ3NJbXBsOjpzZXRFeHBlcmltZW50
YWxDU1NDdXN0b21GaWx0ZXJFbmFibGVkKGJvb2wgZW5hYmxlZCkKICAgICBtX3NldHRpbmdzLT5z
ZXRDU1NDdXN0b21GaWx0ZXJFbmFibGVkKGVuYWJsZWQpOwogfQogCit2b2lkIFdlYlNldHRpbmdz
SW1wbDo6c2V0RXhwZXJpbWVudGFsQ1NTVmFyaWFibGVzRW5hYmxlZChib29sIGVuYWJsZWQpCit7
CisgICAgbV9zZXR0aW5ncy0+c2V0Q1NTVmFyaWFibGVzRW5hYmxlZChlbmFibGVkKTsKK30KKwog
dm9pZCBXZWJTZXR0aW5nc0ltcGw6OnNldE9wZW5HTE11bHRpc2FtcGxpbmdFbmFibGVkKGJvb2wg
ZW5hYmxlZCkKIHsKICAgICBtX3NldHRpbmdzLT5zZXRPcGVuR0xNdWx0aXNhbXBsaW5nRW5hYmxl
ZChlbmFibGVkKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNl
dHRpbmdzSW1wbC5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBs
LmgKaW5kZXggOWE2NWMyYWM2YWQ5YjM3ZTkxNTc3YWYxMjUxY2QxNDc5ODNhMzMzMC4uZGRkODkx
MTRmNjI5ODI3N2YxYTYxZWRjMjhlYzgxMzI2YzQ2NGE4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmgKKysrIGIvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmgKQEAgLTk3LDYgKzk3LDcgQEAgcHVibGljOgog
ICAgIHZpcnR1YWwgdm9pZCBzZXRFeHBlcmltZW50YWxDU1NSZWdpb25zRW5hYmxlZChib29sKTsK
ICAgICB2aXJ0dWFsIHZvaWQgc2V0RXhwZXJpbWVudGFsQ1NTR3JpZExheW91dEVuYWJsZWQoYm9v
bCk7CiAgICAgdmlydHVhbCB2b2lkIHNldEV4cGVyaW1lbnRhbENTU0N1c3RvbUZpbHRlckVuYWJs
ZWQoYm9vbCk7CisgICAgdmlydHVhbCB2b2lkIHNldEV4cGVyaW1lbnRhbENTU1ZhcmlhYmxlc0Vu
YWJsZWQoYm9vbCk7CiAgICAgdmlydHVhbCB2b2lkIHNldE9wZW5HTE11bHRpc2FtcGxpbmdFbmFi
bGVkKGJvb2wpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRQcml2aWxlZ2VkV2ViR0xFeHRlbnNpb25z
RW5hYmxlZChib29sKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0V2ViR0xFcnJvcnNUb0NvbnNvbGVF
bmFibGVkKGJvb2wpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVz
L2JvcmRlci13aWR0aC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2JvcmRl
ci13aWR0aC5odG1sCmluZGV4IDIzNWMxMjcyMGNmOGY5MGM0MmFmNTM0ODYyN2RiYjU1ZTVjMWJk
YmEuLmZmMzEzMDBlMmM1NzY2ZmQxZjM0OTU0ZDkzODE0NGMyYTIyYzU2ZTIgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9ib3JkZXItd2lkdGguaHRtbAorKysgYi9M
YXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvYm9yZGVyLXdpZHRoLmh0bWwKQEAgLTEsMyAr
MSw2IEBACis8c2NyaXB0PgoraW50ZXJuYWxzLnNldHRpbmdzLnNldENTU1ZhcmlhYmxlc0VuYWJs
ZWQodHJ1ZSk7Cis8L3NjcmlwdD4KIDxzdHlsZT4KIGRpdiB7CiAgIGJvcmRlci1jb2xvcjogZ3Jl
ZW47CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvYnVpbGQtc3Vw
cG9ydHMtdmFyaWFibGVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3Zhcmlh
Ymxlcy9idWlsZC1zdXBwb3J0cy12YXJpYWJsZXMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmYw
MzNhNTAxMGRhNGEyMjVhMWJhNzBlZWRkOTMzMzk3YWU1YmViZmMKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvYnVpbGQtc3VwcG9ydHMtdmFyaWFibGVz
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACitZRVMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvY3NzL3ZhcmlhYmxlcy9idWlsZC1zdXBwb3J0cy12YXJpYWJsZXMuaHRtbCBiL0xheW91
dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9idWlsZC1zdXBwb3J0cy12YXJpYWJsZXMuaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi40OTAwY2I1NmNhYWY1ZjQ2NDFiZDFiMGRiZDg3ZmUxMWNhNDE0MTMwCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2J1aWxkLXN1cHBv
cnRzLXZhcmlhYmxlcy5odG1sCkBAIC0wLDAgKzEsOSBAQAorPGJvZHk+Tk88L2JvZHk+Cis8c2Ny
aXB0PgoraWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgp
OworCitpbnRlcm5hbHMuc2V0dGluZ3Muc2V0Q1NTVmFyaWFibGVzRW5hYmxlZCh0cnVlKTsKK2lm
IChpbnRlcm5hbHMuc2V0dGluZ3MuY3NzVmFyaWFibGVzRW5hYmxlZCgpKQorICAgIGRvY3VtZW50
LmJvZHkuaW5uZXJIVE1MID0gIllFUyI7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9jb2xvcnMtdGVzdC5odG1sIGIvTGF5b3V0VGVzdHMvZmFz
dC9jc3MvdmFyaWFibGVzL2NvbG9ycy10ZXN0Lmh0bWwKaW5kZXggYWVkZTM5ZDQ2NWU4ZmUxMTkx
NzdjYWJhY2I0NTQ0NWI5ZjVjYTBhYy4uYWFmZGIyNzZmYjlhYmVhODQ5MjYwZGRiOWVlN2JiNWE4
MTVjNTZkNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2NvbG9y
cy10ZXN0Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2NvbG9ycy10
ZXN0Lmh0bWwKQEAgLTEsMyArMSw2IEBACis8c2NyaXB0PgoraW50ZXJuYWxzLnNldHRpbmdzLnNl
dENTU1ZhcmlhYmxlc0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KIDxzdHlsZT4KIGJvZHkgewog
ICAgIC13ZWJraXQtdmFyLWZvcmVncm91bmQ6IGdyZWVuOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9jc3MvdmFyaWFibGVzL2NvbXBsZXgtY3ljbGUuaHRtbCBiL0xheW91dFRlc3RzL2Zh
c3QvY3NzL3ZhcmlhYmxlcy9jb21wbGV4LWN5Y2xlLmh0bWwKaW5kZXggMDFhNzY5OTBlNDhkYjcy
MjA1NDQ5ZjQyNDQ2Yzg0OWIzOGY3YjAyZC4uMzU5YzhiZjRkZjQ5M2E3MzgzYTY0MGJlNmZkM2Ez
ZjJhMThlNTU4NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2Nv
bXBsZXgtY3ljbGUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvY29t
cGxleC1jeWNsZS5odG1sCkBAIC0xLDMgKzEsNiBAQAorPHNjcmlwdD4KK2ludGVybmFscy5zZXR0
aW5ncy5zZXRDU1NWYXJpYWJsZXNFbmFibGVkKHRydWUpOworPC9zY3JpcHQ+CiA8c3R5bGU+CiBi
b2R5IHsKICAgICAtd2Via2l0LXZhci1hOiAtd2Via2l0LXZhcihmKTsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9jb21wdXRlZC1zdHlsZS5odG1sIGIvTGF5b3V0
VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2NvbXB1dGVkLXN0eWxlLmh0bWwKaW5kZXggMDdiNDgx
ZTQ5MzQzNzI0MWUyZTAwMGQzOTdiMTcxYTc0NGNkMDliNi4uYzRkNjQyZmMwZmM1YTliZDRlNjk0
ZjEwZjY4NjFhMzg5MjVlN2ZmMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFy
aWFibGVzL2NvbXB1dGVkLXN0eWxlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFy
aWFibGVzL2NvbXB1dGVkLXN0eWxlLmh0bWwKQEAgLTEsMyArMSw2IEBACis8c2NyaXB0PgoraW50
ZXJuYWxzLnNldHRpbmdzLnNldENTU1ZhcmlhYmxlc0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4K
IDxzdHlsZT4KIGJvZHkgewogICAgIC13ZWJraXQtdmFyLWE6IGJvbGQ7CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvaW5oZXJpdGVkLXZhbHVlcy5odG1sIGIvTGF5
b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2luaGVyaXRlZC12YWx1ZXMuaHRtbAppbmRleCA1
OWJmYWNhMmNlNDg4NDQwOWFmMWZjMzBiOGEzNWM0NGIwYWI5NDU2Li5hMmUzZjA5Y2IwMTNhZjQ1
NGRjNmUwZWQ2YWU1ZDA1ZTYwYjYwNDVjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nz
cy92YXJpYWJsZXMvaW5oZXJpdGVkLXZhbHVlcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qv
Y3NzL3ZhcmlhYmxlcy9pbmhlcml0ZWQtdmFsdWVzLmh0bWwKQEAgLTEsMyArMSw2IEBACis8c2Ny
aXB0PgoraW50ZXJuYWxzLnNldHRpbmdzLnNldENTU1ZhcmlhYmxlc0VuYWJsZWQodHJ1ZSk7Cis8
L3NjcmlwdD4KIDxzdHlsZT4KIGJvZHkgewogICAgIC13ZWJraXQtdmFyLWZvcmVncm91bmQ6IGdy
ZWVuOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2lubGluZS1z
dHlsZXMuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9pbmxpbmUtc3R5bGVz
Lmh0bWwKaW5kZXggOWExYmU2YmY5YmM4OTk3ODg1N2UxZTk1MjAxN2I2ZmFkOGFmNTQ3YS4uMWRj
MjNiZDVlM2Q5YzI2ZDBmZDJmMWFmYjQ2ZDhhNzQzZGIxMTUwMCAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2lubGluZS1zdHlsZXMuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvaW5saW5lLXN0eWxlcy5odG1sCkBAIC0xLDMgKzEsNiBA
QAorPHNjcmlwdD4KK2ludGVybmFscy5zZXR0aW5ncy5zZXRDU1NWYXJpYWJsZXNFbmFibGVkKHRy
dWUpOworPC9zY3JpcHQ+CiA8Ym9keSBzdHlsZT0iLXdlYmtpdC12YXItYTogZ3JlZW47Ij4KIDxk
aXYgc3R5bGU9ImNvbG9yOiAtd2Via2l0LXZhcihhKTsiPgogVGhpcyB0ZXh0IHNob3VsZCBiZSBn
cmVlbiBvbiBhIHdoaXRlIGJhY2tncm91bmQuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L2Nzcy92YXJpYWJsZXMvaW52YWxpZC1zaG9ydGhhbmQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qv
Y3NzL3ZhcmlhYmxlcy9pbnZhbGlkLXNob3J0aGFuZC5odG1sCmluZGV4IGM5OGU0ZDM5NGM0N2Ni
MDkxOWM1NjVmZjk4NWVkYjJmM2Y1ZGJmNmIuLjU3ZmY3ZWVlZWU0YWEyY2VkNDY2NDU1NWE3OTA5
ODNkYmMxZjBhMmUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9p
bnZhbGlkLXNob3J0aGFuZC5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxl
cy9pbnZhbGlkLXNob3J0aGFuZC5odG1sCkBAIC0xLDMgKzEsNiBAQAorPHNjcmlwdD4KK2ludGVy
bmFscy5zZXR0aW5ncy5zZXRDU1NWYXJpYWJsZXNFbmFibGVkKHRydWUpOworPC9zY3JpcHQ+CiA8
c3R5bGU+CiBkaXYgewogICAgIC13ZWJraXQtdmFyLWE6IDEwcHggc29saWQgZ3JlZW47CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvaW52YWxpZC12YXJpYWJsZS12
YWx1ZS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2ludmFsaWQtdmFyaWFi
bGUtdmFsdWUuaHRtbAppbmRleCA0Y2QwNzU3OTU3MjlmM2IxNGZlMTY2NWM0YTFkZGRmOWJlY2Vi
NmVjLi5kZTE4ZDc5NmQ2MTgxMzA0NDdkOWM0NzkzYjMyMTEzYzUxMjc3MWE5IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvaW52YWxpZC12YXJpYWJsZS12YWx1ZS5o
dG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9pbnZhbGlkLXZhcmlhYmxl
LXZhbHVlLmh0bWwKQEAgLTEsMyArMSw2IEBACis8c2NyaXB0PgoraW50ZXJuYWxzLnNldHRpbmdz
LnNldENTU1ZhcmlhYmxlc0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KIDxzdHlsZT4KIGRpdiB7
CiAgICAgLXdlYmtpdC12YXItYTogZ3JlZW47CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L2Nzcy92YXJpYWJsZXMvbXVsdGktbGV2ZWwtY3ljbGUuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qv
Y3NzL3ZhcmlhYmxlcy9tdWx0aS1sZXZlbC1jeWNsZS5odG1sCmluZGV4IDZjODY0YTBkOTgyZmY1
MzdmYTU4Njk4Zjc0YTlkNjQxYzMxM2E2NzUuLjM3NzJiMTQ3NjQyOTcwNzNjNDZkMjMxZmY2Njhi
NjAzZTM2NDhhMTggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9t
dWx0aS1sZXZlbC1jeWNsZS5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxl
cy9tdWx0aS1sZXZlbC1jeWNsZS5odG1sCkBAIC0xLDMgKzEsNiBAQAorPHNjcmlwdD4KK2ludGVy
bmFscy5zZXR0aW5ncy5zZXRDU1NWYXJpYWJsZXNFbmFibGVkKHRydWUpOworPC9zY3JpcHQ+CiA8
c3R5bGU+CiAuYSB7CiAgICAgLXdlYmtpdC12YXItYTogLXdlYmtpdC12YXIoYik7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvcmVkZWZpbml0aW9uLmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvcmVkZWZpbml0aW9uLmh0bWwKaW5kZXggZTQz
OGY1YTVhMjViMTgxOGY2OGU3OTdiNTMyZGIwNzgxYjZhYmRiZS4uYTAyMThiMWMxNTZkNjc0Zjdi
ZTdhN2Q1MTZjOGEzMjQ0ZTA0OTc2MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3Mv
dmFyaWFibGVzL3JlZGVmaW5pdGlvbi5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3Zh
cmlhYmxlcy9yZWRlZmluaXRpb24uaHRtbApAQCAtMSwzICsxLDYgQEAKKzxzY3JpcHQ+CitpbnRl
cm5hbHMuc2V0dGluZ3Muc2V0Q1NTVmFyaWFibGVzRW5hYmxlZCh0cnVlKTsKKzwvc2NyaXB0Pgog
PHN0eWxlPgogYm9keSB7CiAgICAgLXdlYmtpdC12YXItYTogcmVkOwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL3Nob3J0aGFuZC5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9jc3MvdmFyaWFibGVzL3Nob3J0aGFuZC5odG1sCmluZGV4IDVkMjk5MmU5ZGY2Njg2NDAy
ZjUzMGMzMDY1YmI0ODUxNTJjYWVmMjIuLjU4YWJmYjA1NjcxMWE2M2M3OGY2MDRiZDcxOWUyZjJl
MWMxZWUzZjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9zaG9y
dGhhbmQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvc2hvcnRoYW5k
Lmh0bWwKQEAgLTEsMyArMSw2IEBACis8c2NyaXB0PgoraW50ZXJuYWxzLnNldHRpbmdzLnNldENT
U1ZhcmlhYmxlc0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KIDxzdHlsZT4KIGRpdiB7CiAgICAg
LXdlYmtpdC12YXItbXlib3JkZXI6IDEwcHggc29saWQgZ3JlZW47CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvc2ltcGxlLWN5Y2xlLmh0bWwgYi9MYXlvdXRUZXN0
cy9mYXN0L2Nzcy92YXJpYWJsZXMvc2ltcGxlLWN5Y2xlLmh0bWwKaW5kZXggNGQxZTYzZjQ0MzEz
YmVhMTY3OTI3MzE0MDFhY2U3NTE5Y2Y1YmJhYS4uNmE4ZjNmY2ZjNzczYzFiNGJiZDFlNmUwYmMw
ZjJmZmY2MmIxMGVkNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVz
L3NpbXBsZS1jeWNsZS5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9z
aW1wbGUtY3ljbGUuaHRtbApAQCAtMSwzICsxLDYgQEAKKzxzY3JpcHQ+CitpbnRlcm5hbHMuc2V0
dGluZ3Muc2V0Q1NTVmFyaWFibGVzRW5hYmxlZCh0cnVlKTsKKzwvc2NyaXB0PgogPHN0eWxlPgog
Ym9keSB7CiAgICAgLXdlYmtpdC12YXItYTogLXdlYmtpdC12YXIoYSk7CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvdHJhbnNmb3JtLXRlc3QuaHRtbCBiL0xheW91
dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy90cmFuc2Zvcm0tdGVzdC5odG1sCmluZGV4IGNjNjNj
ZTRlODFlNWI5MDFlNTEwNzcwM2NmYWVmZDQ5ZmZlNzk2ODQuLjMxMGVkM2Q1OWVlYTRkNzlmMGE2
YWMyYWIzODVjMTkzNWExZTJkNzIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3Zh
cmlhYmxlcy90cmFuc2Zvcm0tdGVzdC5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3Zh
cmlhYmxlcy90cmFuc2Zvcm0tdGVzdC5odG1sCkBAIC0xLDMgKzEsNiBAQAorPHNjcmlwdD4KK2lu
dGVybmFscy5zZXR0aW5ncy5zZXRDU1NWYXJpYWJsZXNFbmFibGVkKHRydWUpOworPC9zY3JpcHQ+
CiA8c3R5bGU+CiBkaXYgewogICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy91bmRlZmluZWQuaHRtbCBiL0xheW91dFRl
c3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy91bmRlZmluZWQuaHRtbAppbmRleCA3NzQzMTA0ZTRhZTVi
NGY3ZjYxNTQ5NDcyYWI5NWY1MGEzNzU5ZGQ5Li4wZGI5ZTczY2FmMjZmYTAyMjc4NTBmZTkyYzVl
ZDg4ZDIzM2JlOThiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMv
dW5kZWZpbmVkLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL3VuZGVm
aW5lZC5odG1sCkBAIC0xLDMgKzEsNiBAQAorPHNjcmlwdD4KK2ludGVybmFscy5zZXR0aW5ncy5z
ZXRDU1NWYXJpYWJsZXNFbmFibGVkKHRydWUpOworPC9zY3JpcHQ+CiA8c3R5bGU+CiBib2R5IHsK
ICAgICBib3JkZXI6IC13ZWJraXQtdmFyKG15Ym9yZGVyKTsKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy91c2UtYmVmb3JlLWRlZmluZWQuaHRtbCBiL0xheW91dFRl
c3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy91c2UtYmVmb3JlLWRlZmluZWQuaHRtbAppbmRleCBiYmE0
MWJlOGVhMjFlNWMwZTUxNTY0NzY5MmU1Yzc5ODVjZmY4ZWEwLi4zYjI2ODljZjQ4N2U0OGFiMGRk
ZGQwNjJkYTBlNTliZTZiNjAwNmIwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92
YXJpYWJsZXMvdXNlLWJlZm9yZS1kZWZpbmVkLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9j
c3MvdmFyaWFibGVzL3VzZS1iZWZvcmUtZGVmaW5lZC5odG1sCkBAIC0xLDMgKzEsNiBAQAorPHNj
cmlwdD4KK2ludGVybmFscy5zZXR0aW5ncy5zZXRDU1NWYXJpYWJsZXNFbmFibGVkKHRydWUpOwor
PC9zY3JpcHQ+CiA8c3R5bGU+CiBkaXYgewogICAgIGNvbG9yOiAtd2Via2l0LXZhcihhKTsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy92YXItaW5zaWRlLXNob3J0
aGFuZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL3Zhci1pbnNpZGUtc2hv
cnRoYW5kLmh0bWwKaW5kZXggMDY5YTU4ZjM1YjQzOTY3M2Q2YTJjOTIyYWU1MDI4ZTg3OTFiYTY5
OS4uYzJhNzkwYjY5MDRkZTViZDgwM2FjM2Q3ODRjM2ZlMjZjYjE1MjVkNyAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL3Zhci1pbnNpZGUtc2hvcnRoYW5kLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL3Zhci1pbnNpZGUtc2hvcnRoYW5k
Lmh0bWwKQEAgLTEsMyArMSw2IEBACis8c2NyaXB0PgoraW50ZXJuYWxzLnNldHRpbmdzLnNldENT
U1ZhcmlhYmxlc0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KIDxzdHlsZT4KIGJvZHkgewogICAg
IC13ZWJraXQtdmFyLU15Qm9yZGVyQ29sb3I6IGdyZWVuOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9jc3MvdmFyaWFibGVzL3ZhcmlhYmxlLWNoYWluLmh0bWwgYi9MYXlvdXRUZXN0cy9m
YXN0L2Nzcy92YXJpYWJsZXMvdmFyaWFibGUtY2hhaW4uaHRtbAppbmRleCBhMTVkNWJjZTRlODgy
MjQ4ZjRhMTA5YzllYTVlOTE0M2I2YmU0NGE2Li5jNDMyNjA1NmVkN2M0NjZjOTA2NGM5NmRjMWU3
MzdiYTFhMGQ0YmRlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMv
dmFyaWFibGUtY2hhaW4uaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMv
dmFyaWFibGUtY2hhaW4uaHRtbApAQCAtMSwzICsxLDYgQEAKKzxzY3JpcHQ+CitpbnRlcm5hbHMu
c2V0dGluZ3Muc2V0Q1NTVmFyaWFibGVzRW5hYmxlZCh0cnVlKTsKKzwvc2NyaXB0PgogPHN0eWxl
PgogYm9keSB7CiAgICAgLXdlYmtpdC12YXItYzogZ3JlZW47Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>149403</attachid>
            <date>2012-06-25 17:19:12 -0700</date>
            <delta_ts>2012-06-26 18:19:49 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-89542-20120626101910.patch</filename>
            <type>text/plain</type>
            <size>23955</size>
            <attacher name="Luke Macpherson">macpherson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIxMTkwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjk2MTI3NzJjMmI1MmQz
MjkzNzQxNGM3ZGU4MTdhNjI5OGMwNGY0My4uNGY5ZWExNWI4NjI2YTlhN2UyNDBhZWRjM2NiMGI1
NzY2Y2VhNTkwNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDEyLTA2LTE5ICBMdWtl
IE1hY3BoZXJzb24gIDxtYWNwaGVyc29uQGNocm9taXVtLm9yZz4KKworICAgICAgICBBZGQgcnVu
dGltZSBmbGFnIHRvIGVuYWJsZS9kaXNhYmxlIENTUyB2YXJpYWJsZXMgKGluIGFkZGl0aW9uIHRv
IGV4aXN0aW5nIGNvbXBpbGUtdGltZSBmbGFnKS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTg5NTQyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGltaXRy
aSBHbGF6a292LgorCisgICAgICAgIEFkZGVkIGZhc3QvY3NzL3ZhcmlhYmxlcy9idWlsZC1zdXBw
b3J0cy12YXJpYWJsZXMuaHRtbCB0byB0ZXN0IHJ1bnRpbWUgZmxhZyBpbiB0ZXN0IGVudmlyb25t
ZW50LgorICAgICAgICBVcGRhdGVkIGFsbCBvdGhlciBjc3MgdmFyaWFibGVzIHRlc3RzIHRvIGVu
YWJsZSB0aGUgcnVudGltZSBmbGFnIGZyb20gSlMuCisKKyAgICAgICAgKiBjc3MvQ1NTUGFyc2Vy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1BhcnNlckNvbnRleHQ6OkNTU1BhcnNlckNvbnRl
eHQpOgorICAgICAgICAoV2ViQ29yZTo6b3BlcmF0b3I9PSk6CisgICAgICAgIChXZWJDb3JlOjpD
U1NQYXJzZXI6OmNzc1ZhcmlhYmxlc0VuYWJsZWQpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAg
ICAgIChXZWJDb3JlOjpDU1NQYXJzZXI6OmRldGVjdERhc2hUb2tlbik6CisgICAgICAgIChXZWJD
b3JlOjpDU1NQYXJzZXI6OmxleCk6CisgICAgICAgICogY3NzL0NTU1BhcnNlci5oOgorICAgICAg
ICAoQ1NTUGFyc2VyKToKKyAgICAgICAgKiBjc3MvQ1NTUGFyc2VyTW9kZS5oOgorICAgICAgICAo
Q1NTUGFyc2VyQ29udGV4dCk6CisgICAgICAgICogcGFnZS9TZXR0aW5ncy5oOgorICAgICAgICAo
U2V0dGluZ3MpOgorICAgICAgICAoV2ViQ29yZTo6U2V0dGluZ3M6OnNldENTU1ZhcmlhYmxlc0Vu
YWJsZWQpOgorICAgICAgICAoV2ViQ29yZTo6U2V0dGluZ3M6OmNzc1ZhcmlhYmxlc0VuYWJsZWQp
OgorCiAyMDEyLTA2LTI1ICBBbHBoYSBMYW0gIDxoY2xhbUBjaHJvbWl1bS5vcmc+CiAKICAgICAg
ICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjEyMTE3OC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VM
b2cKaW5kZXggOWQ2MGU0OTVlYTRiYTdkZDA2ZDNhNGYxZDBmMWI4YWU1ZGFhNjg1NC4uNzc4NTA5
NTk0MjBmMTg0ODE1Y2MwOWU1ZGUxMzQ0YzExMGY0N2RmNCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAxMi0wNi0xOSAgTHVrZSBNYWNwaGVyc29uICA8bWFj
cGhlcnNvbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgQWRkIHJ1bnRpbWUgZmxhZyB0byBlbmFi
bGUvZGlzYWJsZSBDU1MgdmFyaWFibGVzIChpbiBhZGRpdGlvbiB0byBleGlzdGluZyBjb21waWxl
LXRpbWUgZmxhZykuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD04OTU0MgorCisgICAgICAgIFJldmlld2VkIGJ5IERpbWl0cmkgR2xhemtvdi4KKworICAg
ICAgICAqIGZlYXR1cmVzLmd5cGk6CisgICAgICAgICogcHVibGljL1dlYlNldHRpbmdzLmg6Cisg
ICAgICAgICogc3JjL1dlYlNldHRpbmdzSW1wbC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlNl
dHRpbmdzSW1wbDo6c2V0RXhwZXJpbWVudGFsQ1NTVmFyaWFibGVzRW5hYmxlZCk6CisgICAgICAg
IChXZWJLaXQpOgorICAgICAgICAqIHNyYy9XZWJTZXR0aW5nc0ltcGwuaDoKKyAgICAgICAgKFdl
YlNldHRpbmdzSW1wbCk6CisKIDIwMTItMDYtMjUgIEFscGhhIExhbSAgPGhjbGFtQGNocm9taXVt
Lm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMTIxMTc4LgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTUGFyc2VyLmNwcAppbmRleCAzZmIxMmMyYzZiZDI1YTNmNzc0OTgxMjEyN2VhODJmMDQx
ODJhNjFmLi5jYWNhM2VhMTMyYmVhMzkxNGQ5N2YxYjU5N2M5NGYxNjQyYzQ2NzI3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTUGFyc2VyLmNwcApAQCAtMTk0LDYgKzE5NCw5IEBAIENTU1BhcnNlckNvbnRleHQ6
OkNTU1BhcnNlckNvbnRleHQoQ1NTUGFyc2VyTW9kZSBtb2RlLCBjb25zdCBLVVJMJiBiYXNlVVJM
KQogICAgICwgaXNDU1NDdXN0b21GaWx0ZXJFbmFibGVkKGZhbHNlKQogICAgICwgaXNDU1NSZWdp
b25zRW5hYmxlZChmYWxzZSkKICAgICAsIGlzQ1NTR3JpZExheW91dEVuYWJsZWQoZmFsc2UpCisj
aWYgRU5BQkxFKENTU19WQVJJQUJMRVMpCisgICAgLCBpc0NTU1ZhcmlhYmxlc0VuYWJsZWQoZmFs
c2UpCisjZW5kaWYKICAgICAsIG5lZWRzU2l0ZVNwZWNpZmljUXVpcmtzKGZhbHNlKQogICAgICwg
ZW5mb3JjZXNDU1NNSU1FVHlwZUluTm9RdWlya3NNb2RlKHRydWUpCiB7CkBAIC0yMDcsNiArMjEw
LDkgQEAgQ1NTUGFyc2VyQ29udGV4dDo6Q1NTUGFyc2VyQ29udGV4dChEb2N1bWVudCogZG9jdW1l
bnQsIGNvbnN0IEtVUkwmIGJhc2VVUkwsIGNvbnMKICAgICAsIGlzQ1NTQ3VzdG9tRmlsdGVyRW5h
YmxlZChkb2N1bWVudC0+c2V0dGluZ3MoKSA/IGRvY3VtZW50LT5zZXR0aW5ncygpLT5pc0NTU0N1
c3RvbUZpbHRlckVuYWJsZWQoKSA6IGZhbHNlKQogICAgICwgaXNDU1NSZWdpb25zRW5hYmxlZChk
b2N1bWVudC0+Y3NzUmVnaW9uc0VuYWJsZWQoKSkKICAgICAsIGlzQ1NTR3JpZExheW91dEVuYWJs
ZWQoZG9jdW1lbnQtPmNzc0dyaWRMYXlvdXRFbmFibGVkKCkpCisjaWYgRU5BQkxFKENTU19WQVJJ
QUJMRVMpCisgICAgLCBpc0NTU1ZhcmlhYmxlc0VuYWJsZWQoZG9jdW1lbnQtPnNldHRpbmdzKCkg
PyBkb2N1bWVudC0+c2V0dGluZ3MoKS0+Y3NzVmFyaWFibGVzRW5hYmxlZCgpIDogZmFsc2UpCisj
ZW5kaWYKICAgICAsIG5lZWRzU2l0ZVNwZWNpZmljUXVpcmtzKGRvY3VtZW50LT5zZXR0aW5ncygp
ID8gZG9jdW1lbnQtPnNldHRpbmdzKCktPm5lZWRzU2l0ZVNwZWNpZmljUXVpcmtzKCkgOiBmYWxz
ZSkKICAgICAsIGVuZm9yY2VzQ1NTTUlNRVR5cGVJbk5vUXVpcmtzTW9kZSghZG9jdW1lbnQtPnNl
dHRpbmdzKCkgfHwgZG9jdW1lbnQtPnNldHRpbmdzKCktPmVuZm9yY2VDU1NNSU1FVHlwZUluTm9R
dWlya3NNb2RlKCkpCiB7CkBAIC0yMjEsNiArMjI3LDkgQEAgYm9vbCBvcGVyYXRvcj09KGNvbnN0
IENTU1BhcnNlckNvbnRleHQmIGEsIGNvbnN0IENTU1BhcnNlckNvbnRleHQmIGIpCiAgICAgICAg
ICYmIGEuaXNDU1NDdXN0b21GaWx0ZXJFbmFibGVkID09IGIuaXNDU1NDdXN0b21GaWx0ZXJFbmFi
bGVkCiAgICAgICAgICYmIGEuaXNDU1NSZWdpb25zRW5hYmxlZCA9PSBiLmlzQ1NTUmVnaW9uc0Vu
YWJsZWQKICAgICAgICAgJiYgYS5pc0NTU0dyaWRMYXlvdXRFbmFibGVkID09IGIuaXNDU1NHcmlk
TGF5b3V0RW5hYmxlZAorI2lmIEVOQUJMRShDU1NfVkFSSUFCTEVTKQorICAgICAgICAmJiBhLmlz
Q1NTVmFyaWFibGVzRW5hYmxlZCA9PSBiLmlzQ1NTVmFyaWFibGVzRW5hYmxlZAorI2VuZGlmCiAg
ICAgICAgICYmIGEubmVlZHNTaXRlU3BlY2lmaWNRdWlya3MgPT0gYi5uZWVkc1NpdGVTcGVjaWZp
Y1F1aXJrcwogICAgICAgICAmJiBhLmVuZm9yY2VzQ1NTTUlNRVR5cGVJbk5vUXVpcmtzTW9kZSA9
PSBiLmVuZm9yY2VzQ1NTTUlNRVR5cGVJbk5vUXVpcmtzTW9kZTsKIH0KQEAgLTEwODIsNiArMTA5
MSwyNSBAQCBQYXNzUmVmUHRyPENTU1ZhbHVlTGlzdD4gQ1NTUGFyc2VyOjpwYXJzZUZvbnRGYWNl
VmFsdWUoY29uc3QgQXRvbWljU3RyaW5nJiBzdHJpbgogICAgIHJldHVybiBzdGF0aWNfcG9pbnRl
cl9jYXN0PENTU1ZhbHVlTGlzdD4oZHVtbXlTdHlsZS0+Z2V0UHJvcGVydHlDU1NWYWx1ZShDU1NQ
cm9wZXJ0eUZvbnRGYW1pbHkpKTsKIH0KIAorI2lmIEVOQUJMRShDU1NfVkFSSUFCTEVTKQorYm9v
bCBDU1NQYXJzZXI6OnBhcnNlVmFsdWUoU3R5bGVQcm9wZXJ0eVNldCogZGVjbGFyYXRpb24sIENT
U1Byb3BlcnR5SUQgcHJvcGVydHlJRCwgY29uc3QgU3RyaW5nJiBzdHJpbmcsIGJvb2wgaW1wb3J0
YW50LCBEb2N1bWVudCogZG9jdW1lbnQpCit7CisgICAgQVNTRVJUKCFzdHJpbmcuaXNFbXB0eSgp
KTsKKworICAgIENTU1BhcnNlckNvbnRleHQgY29udGV4dChkb2N1bWVudCk7CisKKyAgICBpZiAo
cGFyc2VTaW1wbGVMZW5ndGhWYWx1ZShkZWNsYXJhdGlvbiwgcHJvcGVydHlJRCwgc3RyaW5nLCBp
bXBvcnRhbnQsIGNvbnRleHQubW9kZSkpCisgICAgICAgIHJldHVybiB0cnVlOworICAgIGlmIChw
YXJzZUNvbG9yVmFsdWUoZGVjbGFyYXRpb24sIHByb3BlcnR5SUQsIHN0cmluZywgaW1wb3J0YW50
LCBjb250ZXh0Lm1vZGUpKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICBpZiAocGFyc2VLZXl3
b3JkVmFsdWUoZGVjbGFyYXRpb24sIHByb3BlcnR5SUQsIHN0cmluZywgaW1wb3J0YW50LCBjb250
ZXh0KSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICBDU1NQYXJzZXIgcGFyc2VyKGNvbnRl
eHQpOworICAgIHJldHVybiBwYXJzZXIucGFyc2VWYWx1ZShkZWNsYXJhdGlvbiwgcHJvcGVydHlJ
RCwgc3RyaW5nLCBpbXBvcnRhbnQsIHN0YXRpY19jYXN0PFN0eWxlU2hlZXRDb250ZW50cyo+KDAp
KTsKK30KKyNlbmRpZgorCiBib29sIENTU1BhcnNlcjo6cGFyc2VWYWx1ZShTdHlsZVByb3BlcnR5
U2V0KiBkZWNsYXJhdGlvbiwgQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlELCBjb25zdCBTdHJpbmcm
IHN0cmluZywgYm9vbCBpbXBvcnRhbnQsIENTU1BhcnNlck1vZGUgY3NzUGFyc2VyTW9kZSwgU3R5
bGVTaGVldENvbnRlbnRzKiBjb250ZXh0U3R5bGVTaGVldCkKIHsKICAgICBBU1NFUlQoIXN0cmlu
Zy5pc0VtcHR5KCkpOwpAQCAtMjk2Myw2ICsyOTkxLDExIEBAIGJvb2wgQ1NTUGFyc2VyOjpwYXJz
ZUZpbGxTaG9ydGhhbmQoQ1NTUHJvcGVydHlJRCBwcm9wSWQsIGNvbnN0IENTU1Byb3BlcnR5SUQq
IHByCiB9CiAKICNpZiBFTkFCTEUoQ1NTX1ZBUklBQkxFUykKK2Jvb2wgQ1NTUGFyc2VyOjpjc3NW
YXJpYWJsZXNFbmFibGVkKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9jb250ZXh0LmlzQ1NTVmFy
aWFibGVzRW5hYmxlZDsKK30KKwogdm9pZCBDU1NQYXJzZXI6OnN0b3JlVmFyaWFibGVEZWNsYXJh
dGlvbihjb25zdCBDU1NQYXJzZXJTdHJpbmcmIG5hbWUsIFBhc3NPd25QdHI8Q1NTUGFyc2VyVmFs
dWVMaXN0PiB2YWx1ZSwgYm9vbCBpbXBvcnRhbnQpCiB7CiAgICAgU3RyaW5nQnVpbGRlciBidWls
ZGVyOwpAQCAtODU5Miw3ICs4NjI1LDcgQEAgaW5saW5lIHZvaWQgQ1NTUGFyc2VyOjpkZXRlY3RE
YXNoVG9rZW4oaW50IGxlbmd0aCkKICAgICAgICAgZWxzZSBpZiAoaXNBU0NJSUFscGhhQ2FzZWxl
c3NFcXVhbChuYW1lWzEwXSwgJ3gnKSAmJiBpc0VxdWFsVG9DU1NJZGVudGlmaWVyKG5hbWUgKyAx
LCAid2Via2l0LW1hIikpCiAgICAgICAgICAgICBtX3Rva2VuID0gTUFYRlVOQ1RJT047CiAjaWYg
RU5BQkxFKENTU19WQVJJQUJMRVMpCi0gICAgICAgIGVsc2UgaWYgKGlzQVNDSUlBbHBoYUNhc2Vs
ZXNzRXF1YWwobmFtZVsxMF0sICdyJykgJiYgaXNFcXVhbFRvQ1NTSWRlbnRpZmllcihuYW1lICsg
MSwgIndlYmtpdC12YSIpKQorICAgICAgICBlbHNlIGlmIChjc3NWYXJpYWJsZXNFbmFibGVkKCkg
JiYgaXNBU0NJSUFscGhhQ2FzZWxlc3NFcXVhbChuYW1lWzEwXSwgJ3InKSAmJiBpc0VxdWFsVG9D
U1NJZGVudGlmaWVyKG5hbWUgKyAxLCAid2Via2l0LXZhIikpCiAgICAgICAgICAgICBtX3Rva2Vu
ID0gVkFSRlVOQ1RJT047CiAjZW5kaWYKICAgICB9IGVsc2UgaWYgKGxlbmd0aCA9PSAxMiAmJiBp
c0VxdWFsVG9DU1NJZGVudGlmaWVyKG5hbWUgKyAxLCAid2Via2l0LWNhbGMiKSkKQEAgLTg5MzQs
NyArODk2Nyw3IEBAIHJlc3RhcnRBZnRlckNvbW1lbnQ6CiAKICAgICBjYXNlIENoYXJhY3RlckRh
c2g6CiAjaWYgRU5BQkxFKENTU19WQVJJQUJMRVMpCi0gICAgICAgIGlmIChtX2N1cnJlbnRDaGFy
YWN0ZXJbMTBdID09ICctJyAmJiBpc0VxdWFsVG9DU1NJZGVudGlmaWVyKG1fY3VycmVudENoYXJh
Y3RlciwgIndlYmtpdC12YXIiKSAmJiBpc0lkZW50aWZpZXJTdGFydEFmdGVyRGFzaChtX2N1cnJl
bnRDaGFyYWN0ZXIgKyAxMSkpIHsKKyAgICAgICAgaWYgKGNzc1ZhcmlhYmxlc0VuYWJsZWQoKSAm
JiBtX2N1cnJlbnRDaGFyYWN0ZXJbMTBdID09ICctJyAmJiBpc0VxdWFsVG9DU1NJZGVudGlmaWVy
KG1fY3VycmVudENoYXJhY3RlciwgIndlYmtpdC12YXIiKSAmJiBpc0lkZW50aWZpZXJTdGFydEFm
dGVyRGFzaChtX2N1cnJlbnRDaGFyYWN0ZXIgKyAxMSkpIHsKICAgICAgICAgICAgIC8vIGhhbmRs
ZSB2YXJpYWJsZSBkZWNsYXJhdGlvbnMKICAgICAgICAgICAgIG1fY3VycmVudENoYXJhY3RlciAr
PSAxMTsKICAgICAgICAgICAgIHBhcnNlSWRlbnRpZmllcihyZXN1bHQsIGhhc0VzY2FwZSk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmggYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTUGFyc2VyLmgKaW5kZXggYjAzN2YwM2E0M2FhNWUwNWIwYjVhNDIxOWY3NzIwNWU1
YmQ2NzUwMy4uNjI1ZTFlMDgxYzg3ZTIzMzZhNDI4OWRjMDhmMTI3YzY1MDExMDU0YiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NQYXJzZXIuaApAQCAtOTIsNiArOTIsOCBAQCBwdWJsaWM6CiAgICAgYm9vbCBwYXJz
ZVF1b3RlcyhDU1NQcm9wZXJ0eUlELCBib29sIGltcG9ydGFudCk7CiAKICNpZiBFTkFCTEUoQ1NT
X1ZBUklBQkxFUykKKyAgICBzdGF0aWMgYm9vbCBwYXJzZVZhbHVlKFN0eWxlUHJvcGVydHlTZXQq
LCBDU1NQcm9wZXJ0eUlELCBjb25zdCBTdHJpbmcmLCBib29sIGltcG9ydGFudCwgRG9jdW1lbnQq
KTsKKyAgICBib29sIGNzc1ZhcmlhYmxlc0VuYWJsZWQoKSBjb25zdDsKICAgICB2b2lkIHN0b3Jl
VmFyaWFibGVEZWNsYXJhdGlvbihjb25zdCBDU1NQYXJzZXJTdHJpbmcmLCBQYXNzT3duUHRyPENT
U1BhcnNlclZhbHVlTGlzdD4sIGJvb2wgaW1wb3J0YW50KTsKICNlbmRpZgogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyTW9kZS5oIGIvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1BhcnNlck1vZGUuaAppbmRleCBkOTIwMGI3MmM3MjY2NmE5OTI1Zjk3NDE3OGY5MWVhOWQ1
ZTU3ZGRjLi41MjI4ZTk4MTJkOWYyMmE5ZThjYjE1YTA3NjAzMzllZGYxMDc2ZTM0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyTW9kZS5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NQYXJzZXJNb2RlLmgKQEAgLTY1LDYgKzY1LDkgQEAgc3RydWN0IENTU1BhcnNl
ckNvbnRleHQgewogICAgIGJvb2wgaXNDU1NDdXN0b21GaWx0ZXJFbmFibGVkOwogICAgIGJvb2wg
aXNDU1NSZWdpb25zRW5hYmxlZDsKICAgICBib29sIGlzQ1NTR3JpZExheW91dEVuYWJsZWQ7Cisj
aWYgRU5BQkxFKENTU19WQVJJQUJMRVMpCisgICAgYm9vbCBpc0NTU1ZhcmlhYmxlc0VuYWJsZWQ7
CisjZW5kaWYKICAgICBib29sIG5lZWRzU2l0ZVNwZWNpZmljUXVpcmtzOwogICAgIGJvb2wgZW5m
b3JjZXNDU1NNSU1FVHlwZUluTm9RdWlya3NNb2RlOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJl
c29sdmVyLmNwcAppbmRleCAyNDU2NDZiNzQ5YjNjMTVhZDhmZWZkZGVkY2M4NTAyMjlkZmVlMWYy
Li41NWRiZmU5ZmM2MjdkNmQwM2RjMTcyZmI5ZjQwMzZmMGRiYjNiM2VjIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
Y3NzL1N0eWxlUmVzb2x2ZXIuY3BwCkBAIC0zMzI1LDcgKzMzMjUsNyBAQCB2b2lkIFN0eWxlUmVz
b2x2ZXI6OnJlc29sdmVWYXJpYWJsZXMoQ1NTUHJvcGVydHlJRCBpZCwgQ1NTVmFsdWUqIHZhbHVl
LCBWZWN0b3I8cwogCiAgICAgLy8gRklYTUU6IEl0IHdvdWxkIGJlIGZhc3RlciBub3QgdG8gcmUt
cGFyc2UgZnJvbSBzdHJpbmdzLCBidXQgZm9yIG5vdyBDU1MgcHJvcGVydHkgdmFsaWRhdGlvbiBs
aXZlcyBpbnNpZGUgdGhlIHBhcnNlciBzbyB3ZSBkbyBpdCB0aGVyZS4KICAgICBSZWZQdHI8U3R5
bGVQcm9wZXJ0eVNldD4gcmVzdWx0U2V0ID0gU3R5bGVQcm9wZXJ0eVNldDo6Y3JlYXRlKCk7Ci0g
ICAgaWYgKCFDU1NQYXJzZXI6OnBhcnNlVmFsdWUocmVzdWx0U2V0LmdldCgpLCBpZCwgZXhwcmVz
c2lvbi5zZWNvbmQsIGZhbHNlLCBDU1NTdHJpY3RNb2RlLCAwKSkKKyAgICBpZiAoIUNTU1BhcnNl
cjo6cGFyc2VWYWx1ZShyZXN1bHRTZXQuZ2V0KCksIGlkLCBleHByZXNzaW9uLnNlY29uZCwgZmFs
c2UsIGRvY3VtZW50KCkpKQogICAgICAgICByZXR1cm47IC8vIGV4cHJlc3Npb24gZmFpbGVkIHRv
IHBhcnNlLgogCiAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IHJlc3VsdFNldC0+cHJvcGVy
dHlDb3VudCgpOyBpKyspIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGlu
Z3MuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaAppbmRleCBkODQ2ZmEwN2FjMTBl
ODlhMjI2NzcwN2JmOTA4OGJmYTNhMmY1OWZkLi4zZGM0NWJjNDMwYWUyMmRiMDMwYzk2MmY4Yzgz
MjQ4YzQ0YzJkMmE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5oCkBAIC0zMzEsNiArMzMxLDE0IEBA
IG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgYm9vbCBjc3NSZWdpb25zRW5hYmxlZCgpIGNv
bnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAjZW5kaWYKIAorI2lmIEVOQUJMRShDU1NfVkFSSUFCTEVT
KQorICAgICAgICB2b2lkIHNldENTU1ZhcmlhYmxlc0VuYWJsZWQoYm9vbCBlbmFibGVkKSB7IG1f
Y3NzVmFyaWFibGVzRW5hYmxlZCA9IGVuYWJsZWQ7IH0KKyAgICAgICAgYm9vbCBjc3NWYXJpYWJs
ZXNFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQorI2Vsc2UKKyAgICAgICAgdm9pZCBz
ZXRDU1NWYXJpYWJsZXNFbmFibGVkKGJvb2wpIHsgfQorICAgICAgICBib29sIGNzc1ZhcmlhYmxl
c0VuYWJsZWQoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQorI2VuZGlmCisKICAgICAgICAgdm9p
ZCBzZXRSZWdpb25CYXNlZENvbHVtbnNFbmFibGVkKGJvb2wgZW5hYmxlZCkgeyBtX3JlZ2lvbkJh
c2VkQ29sdW1uc0VuYWJsZWQgPSBlbmFibGVkOyB9CiAgICAgICAgIGJvb2wgcmVnaW9uQmFzZWRD
b2x1bW5zRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1fcmVnaW9uQmFzZWRDb2x1bW5zRW5hYmxl
ZDsgfQogCkBAIC02NzcsNiArNjg1LDkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogI2lmIEVOQUJM
RShDU1NfUkVHSU9OUykKICAgICAgICAgYm9vbCBtX2Nzc1JlZ2lvbnNFbmFibGVkIDogMTsKICNl
bmRpZgorI2lmIEVOQUJMRShDU1NfVkFSSUFCTEVTKQorICAgICAgICBib29sIG1fY3NzVmFyaWFi
bGVzRW5hYmxlZCA6IDE7CisjZW5kaWYKICAgICAgICAgYm9vbCBtX3JlZ2lvbkJhc2VkQ29sdW1u
c0VuYWJsZWQgOiAxOwogICAgICAgICBib29sIG1fY3NzR3JpZExheW91dEVuYWJsZWQgOiAxOwog
ICAgICAgICBib29sIG1fZG93bmxvYWRhYmxlQmluYXJ5Rm9udHNFbmFibGVkIDogMTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuY3BwCmluZGV4IDcxZDAwMTMwMTA2
OTJjZjdjYWIxNjU1Y2UxZDU1MTlhMDc2YmU1NzIuLmJmNDM5MjMwNThlM2I1NmEyM2ZhZDIxNmIw
OGYwNjZiMzMxYzFiMjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxTZXR0aW5ncy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRp
bmdzLmNwcApAQCAtMzQ4LDYgKzM0OCwxOCBAQCB2b2lkIEludGVybmFsU2V0dGluZ3M6OnNldENT
U0V4Y2x1c2lvbnNFbmFibGVkKGJvb2wgZW5hYmxlZCwgRXhjZXB0aW9uQ29kZSYgZWMpCiAgICAg
UnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2V0Q1NTRXhjbHVzaW9uc0VuYWJsZWQoZW5hYmxlZCk7
CiB9CiAKK3ZvaWQgSW50ZXJuYWxTZXR0aW5nczo6c2V0Q1NTVmFyaWFibGVzRW5hYmxlZChib29s
IGVuYWJsZWQsIEV4Y2VwdGlvbkNvZGUmIGVjKQoreworICAgIEludGVybmFsU2V0dGluZ3NHdWFy
ZEZvclNldHRpbmdzKCk7CisgICAgc2V0dGluZ3MoKS0+c2V0Q1NTVmFyaWFibGVzRW5hYmxlZChl
bmFibGVkKTsKK30KKworYm9vbCBJbnRlcm5hbFNldHRpbmdzOjpjc3NWYXJpYWJsZXNFbmFibGVk
KEV4Y2VwdGlvbkNvZGUmIGVjKQoreworICAgIEludGVybmFsU2V0dGluZ3NHdWFyZEZvclNldHRp
bmdzUmV0dXJuKGZhbHNlKTsKKyAgICByZXR1cm4gc2V0dGluZ3MoKS0+Y3NzVmFyaWFibGVzRW5h
YmxlZCgpOworfQorCiB2b2lkIEludGVybmFsU2V0dGluZ3M6OnNldE1lZGlhUGxheWJhY2tSZXF1
aXJlc1VzZXJHZXN0dXJlKGJvb2wgZW5hYmxlZCwgRXhjZXB0aW9uQ29kZSYgZWMpCiB7CiAgICAg
SW50ZXJuYWxTZXR0aW5nc0d1YXJkRm9yU2V0dGluZ3MoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5oIGIvU291cmNlL1dlYkNvcmUvdGVzdGlu
Zy9JbnRlcm5hbFNldHRpbmdzLmgKaW5kZXggYTg3Zjk2Zjc4YTEwMjk1NjgwN2Y1NmJhZTE1MGNi
ZWE4ZmRkMTZjNC4uMTI3ZGE0MjhmMDY3NWQxODI0Nzk1YmFlOThkNTJkNjBkYTAyYmIzOSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmgKQEAgLTc1LDYgKzc1LDgg
QEAgcHVibGljOgogICAgIHZvaWQgc2V0RW5hYmxlU2Nyb2xsQW5pbWF0b3IoYm9vbCBlbmFibGVk
LCBFeGNlcHRpb25Db2RlJik7CiAgICAgYm9vbCBzY3JvbGxBbmltYXRvckVuYWJsZWQoRXhjZXB0
aW9uQ29kZSYpOwogICAgIHZvaWQgc2V0Q1NTRXhjbHVzaW9uc0VuYWJsZWQoYm9vbCBlbmFibGVk
LCBFeGNlcHRpb25Db2RlJik7CisgICAgdm9pZCBzZXRDU1NWYXJpYWJsZXNFbmFibGVkKGJvb2wg
ZW5hYmxlZCwgRXhjZXB0aW9uQ29kZSYpOworICAgIGJvb2wgY3NzVmFyaWFibGVzRW5hYmxlZChF
eGNlcHRpb25Db2RlJik7CiAgICAgdm9pZCBzZXRNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2Vz
dHVyZShib29sLCBFeGNlcHRpb25Db2RlJik7CiAgICAgdm9pZCBzZXRFZGl0aW5nQmVoYXZpb3Io
Y29uc3QgU3RyaW5nJiwgRXhjZXB0aW9uQ29kZSYpOwogICAgIHZvaWQgc2V0Rml4ZWRQb3NpdGlv
bkNyZWF0ZXNTdGFja2luZ0NvbnRleHQoYm9vbCwgRXhjZXB0aW9uQ29kZSYpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmlkbCBiL1NvdXJjZS9X
ZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5pZGwKaW5kZXggMGFmNTM4YTUzYWNkZTMx
OWQ5NTE4YTEyNDkyZGQxYzAyODRiNDBmMS4uMTk2NWYwNWU3YjY4MzRmZjVjNWQzOGNiODkwMThk
YmNlNjhiYzRmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNl
dHRpbmdzLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3Mu
aWRsCkBAIC01NCw2ICs1NCw4IEBAIG1vZHVsZSB3aW5kb3cgewogICAgICAgICB2b2lkIHNldEVu
YWJsZVNjcm9sbEFuaW1hdG9yKGluIGJvb2xlYW4gZW5hYmxlZCkgcmFpc2VzKERPTUV4Y2VwdGlv
bik7CiAgICAgICAgIGJvb2xlYW4gc2Nyb2xsQW5pbWF0b3JFbmFibGVkKCkgcmFpc2VzKERPTUV4
Y2VwdGlvbik7CiAgICAgICAgIHZvaWQgc2V0Q1NTRXhjbHVzaW9uc0VuYWJsZWQoaW4gYm9vbGVh
biBlbmFibGVkKSByYWlzZXMoRE9NRXhjZXB0aW9uKTsKKyAgICAgICAgdm9pZCBzZXRDU1NWYXJp
YWJsZXNFbmFibGVkKGluIGJvb2xlYW4gZW5hYmxlZCkgcmFpc2VzKERPTUV4Y2VwdGlvbik7Cisg
ICAgICAgIGJvb2xlYW4gY3NzVmFyaWFibGVzRW5hYmxlZCgpIHJhaXNlcyhET01FeGNlcHRpb24p
OwogICAgICAgICB2b2lkIHNldE1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKGluIGJv
b2xlYW4gZW5hYmxlZCkgcmFpc2VzKERPTUV4Y2VwdGlvbik7CiAgICAgICAgIHZvaWQgc2V0RWRp
dGluZ0JlaGF2aW9yKGluIERPTVN0cmluZyBiZWhhdmlvcikgcmFpc2VzKERPTUV4Y2VwdGlvbik7
CiAgICAgICAgIHZvaWQgc2V0Rml4ZWRQb3NpdGlvbkNyZWF0ZXNTdGFja2luZ0NvbnRleHQoaW4g
Ym9vbGVhbiBjcmVhdGVzKSByYWlzZXMoRE9NRXhjZXB0aW9uKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYlNldHRpbmdzLmggYi9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3B1YmxpYy9XZWJTZXR0aW5ncy5oCmluZGV4IGJhYjVjMzhkYzA4YzYyNTA5OWYxNTEx
OTA0MzZhZTFkOGM5MDE2ZGEuLjVlYzVjNTBkYWQyODhlMzFhMmNhMDYxNmQ2ZGFhMTAxM2NiM2Y2
YjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYlNldHRpbmdz
LmgKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViU2V0dGluZ3MuaApAQCAt
MTA1LDYgKzEwNSw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgc2V0RXhwZXJpbWVudGFs
Q1NTUmVnaW9uc0VuYWJsZWQoYm9vbCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBzZXRFeHBlcmlt
ZW50YWxDU1NHcmlkTGF5b3V0RW5hYmxlZChib29sKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHNl
dEV4cGVyaW1lbnRhbENTU0N1c3RvbUZpbHRlckVuYWJsZWQoYm9vbCkgPSAwOworICAgIHZpcnR1
YWwgdm9pZCBzZXRFeHBlcmltZW50YWxDU1NWYXJpYWJsZXNFbmFibGVkKGJvb2wpID0gMDsKICAg
ICB2aXJ0dWFsIHZvaWQgc2V0T3BlbkdMTXVsdGlzYW1wbGluZ0VuYWJsZWQoYm9vbCkgPSAwOwog
ICAgIHZpcnR1YWwgdm9pZCBzZXRQcml2aWxlZ2VkV2ViR0xFeHRlbnNpb25zRW5hYmxlZChib29s
KSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHNldFdlYkdMRXJyb3JzVG9Db25zb2xlRW5hYmxlZChi
b29sKSA9IDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0
aW5nc0ltcGwuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBs
LmNwcAppbmRleCA0M2M0MzNjMzA2NDI0OWExNWJlMjIyZmNlOTc0ZTM1N2UxMzM1MzgzLi5lNGQz
YWQ4MzU3MGI1YjViZDU5MTg1Y2ZjOTNmOGJjMjY3OTRlOTVlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vc3JjL1dlYlNldHRpbmdzSW1wbC5jcHAKQEAgLTMzOCw2ICszMzgsMTEgQEAg
dm9pZCBXZWJTZXR0aW5nc0ltcGw6OnNldEV4cGVyaW1lbnRhbENTU0N1c3RvbUZpbHRlckVuYWJs
ZWQoYm9vbCBlbmFibGVkKQogICAgIG1fc2V0dGluZ3MtPnNldENTU0N1c3RvbUZpbHRlckVuYWJs
ZWQoZW5hYmxlZCk7CiB9CiAKK3ZvaWQgV2ViU2V0dGluZ3NJbXBsOjpzZXRFeHBlcmltZW50YWxD
U1NWYXJpYWJsZXNFbmFibGVkKGJvb2wgZW5hYmxlZCkKK3sKKyAgICBtX3NldHRpbmdzLT5zZXRD
U1NWYXJpYWJsZXNFbmFibGVkKGVuYWJsZWQpOworfQorCiB2b2lkIFdlYlNldHRpbmdzSW1wbDo6
c2V0T3BlbkdMTXVsdGlzYW1wbGluZ0VuYWJsZWQoYm9vbCBlbmFibGVkKQogewogICAgIG1fc2V0
dGluZ3MtPnNldE9wZW5HTE11bHRpc2FtcGxpbmdFbmFibGVkKGVuYWJsZWQpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmggYi9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuaAppbmRleCA5YTY1YzJhYzZhZDli
MzdlOTE1NzdhZjEyNTFjZDE0Nzk4M2EzMzMwLi5kZGQ4OTExNGY2Mjk4Mjc3ZjFhNjFlZGMyOGVj
ODEzMjZjNDY0YThkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJT
ZXR0aW5nc0ltcGwuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5n
c0ltcGwuaApAQCAtOTcsNiArOTcsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHNldEV4
cGVyaW1lbnRhbENTU1JlZ2lvbnNFbmFibGVkKGJvb2wpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRF
eHBlcmltZW50YWxDU1NHcmlkTGF5b3V0RW5hYmxlZChib29sKTsKICAgICB2aXJ0dWFsIHZvaWQg
c2V0RXhwZXJpbWVudGFsQ1NTQ3VzdG9tRmlsdGVyRW5hYmxlZChib29sKTsKKyAgICB2aXJ0dWFs
IHZvaWQgc2V0RXhwZXJpbWVudGFsQ1NTVmFyaWFibGVzRW5hYmxlZChib29sKTsKICAgICB2aXJ0
dWFsIHZvaWQgc2V0T3BlbkdMTXVsdGlzYW1wbGluZ0VuYWJsZWQoYm9vbCk7CiAgICAgdmlydHVh
bCB2b2lkIHNldFByaXZpbGVnZWRXZWJHTEV4dGVuc2lvbnNFbmFibGVkKGJvb2wpOwogICAgIHZp
cnR1YWwgdm9pZCBzZXRXZWJHTEVycm9yc1RvQ29uc29sZUVuYWJsZWQoYm9vbCk7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvYm9yZGVyLXdpZHRoLmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvYm9yZGVyLXdpZHRoLmh0bWwKaW5kZXggMjM1
YzEyNzIwY2Y4ZjkwYzQyYWY1MzQ4NjI3ZGJiNTVlNWMxYmRiYS4uZmYzMTMwMGUyYzU3NjZmZDFm
MzQ5NTRkOTM4MTQ0YzJhMjJjNTZlMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3Mv
dmFyaWFibGVzL2JvcmRlci13aWR0aC5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3Zh
cmlhYmxlcy9ib3JkZXItd2lkdGguaHRtbApAQCAtMSwzICsxLDYgQEAKKzxzY3JpcHQ+CitpbnRl
cm5hbHMuc2V0dGluZ3Muc2V0Q1NTVmFyaWFibGVzRW5hYmxlZCh0cnVlKTsKKzwvc2NyaXB0Pgog
PHN0eWxlPgogZGl2IHsKICAgYm9yZGVyLWNvbG9yOiBncmVlbjsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9idWlsZC1zdXBwb3J0cy12YXJpYWJsZXMtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2J1aWxkLXN1cHBvcnRzLXZh
cmlhYmxlcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjAzM2E1MDEwZGE0YTIyNWExYmE3MGVl
ZGQ5MzMzOTdhZTViZWJmYwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3Nz
L3ZhcmlhYmxlcy9idWlsZC1zdXBwb3J0cy12YXJpYWJsZXMtZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEgQEAKK1lFUwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2J1
aWxkLXN1cHBvcnRzLXZhcmlhYmxlcy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFi
bGVzL2J1aWxkLXN1cHBvcnRzLXZhcmlhYmxlcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQ5MDBjYjU2Y2Fh
ZjVmNDY0MWJkMWIwZGJkODdmZTExY2E0MTQxMzAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvYnVpbGQtc3VwcG9ydHMtdmFyaWFibGVzLmh0bWwKQEAg
LTAsMCArMSw5IEBACis8Ym9keT5OTzwvYm9keT4KKzxzY3JpcHQ+CitpZiAod2luZG93LnRlc3RS
dW5uZXIpCisgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKK2ludGVybmFscy5zZXR0aW5n
cy5zZXRDU1NWYXJpYWJsZXNFbmFibGVkKHRydWUpOworaWYgKGludGVybmFscy5zZXR0aW5ncy5j
c3NWYXJpYWJsZXNFbmFibGVkKCkpCisgICAgZG9jdW1lbnQuYm9keS5pbm5lckhUTUwgPSAiWUVT
IjsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVz
L2NvbG9ycy10ZXN0Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvY29sb3Jz
LXRlc3QuaHRtbAppbmRleCBhZWRlMzlkNDY1ZThmZTExOTE3N2NhYmFjYjQ1NDQ1YjlmNWNhMGFj
Li5hYWZkYjI3NmZiOWFiZWE4NDkyNjBkZGI5ZWU3YmI1YTgxNWM1NmQ2IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvY29sb3JzLXRlc3QuaHRtbAorKysgYi9MYXlv
dXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvY29sb3JzLXRlc3QuaHRtbApAQCAtMSwzICsxLDYg
QEAKKzxzY3JpcHQ+CitpbnRlcm5hbHMuc2V0dGluZ3Muc2V0Q1NTVmFyaWFibGVzRW5hYmxlZCh0
cnVlKTsKKzwvc2NyaXB0PgogPHN0eWxlPgogYm9keSB7CiAgICAgLXdlYmtpdC12YXItZm9yZWdy
b3VuZDogZ3JlZW47CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMv
Y29tcGxleC1jeWNsZS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2NvbXBs
ZXgtY3ljbGUuaHRtbAppbmRleCAwMWE3Njk5MGU0OGRiNzIyMDU0NDlmNDI0NDZjODQ5YjM4Zjdi
MDJkLi4zNTljOGJmNGRmNDkzYTczODNhNjQwYmU2ZmQzYTNmMmExOGU1NTg2IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvY29tcGxleC1jeWNsZS5odG1sCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9jb21wbGV4LWN5Y2xlLmh0bWwKQEAgLTEs
MyArMSw2IEBACis8c2NyaXB0PgoraW50ZXJuYWxzLnNldHRpbmdzLnNldENTU1ZhcmlhYmxlc0Vu
YWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KIDxzdHlsZT4KIGJvZHkgewogICAgIC13ZWJraXQtdmFy
LWE6IC13ZWJraXQtdmFyKGYpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFy
aWFibGVzL2NvbXB1dGVkLXN0eWxlLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJs
ZXMvY29tcHV0ZWQtc3R5bGUuaHRtbAppbmRleCAwN2I0ODFlNDkzNDM3MjQxZTJlMDAwZDM5N2Ix
NzFhNzQ0Y2QwOWI2Li5jNGQ2NDJmYzBmYzVhOWJkNGU2OTRmMTBmNjg2MWEzODkyNWU3ZmYzIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvY29tcHV0ZWQtc3R5bGUu
aHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvY29tcHV0ZWQtc3R5bGUu
aHRtbApAQCAtMSwzICsxLDYgQEAKKzxzY3JpcHQ+CitpbnRlcm5hbHMuc2V0dGluZ3Muc2V0Q1NT
VmFyaWFibGVzRW5hYmxlZCh0cnVlKTsKKzwvc2NyaXB0PgogPHN0eWxlPgogYm9keSB7CiAgICAg
LXdlYmtpdC12YXItYTogYm9sZDsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3Zh
cmlhYmxlcy9pbmhlcml0ZWQtdmFsdWVzLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJp
YWJsZXMvaW5oZXJpdGVkLXZhbHVlcy5odG1sCmluZGV4IDU5YmZhY2EyY2U0ODg0NDA5YWYxZmMz
MGI4YTM1YzQ0YjBhYjk0NTYuLmEyZTNmMDljYjAxM2FmNDU0ZGM2ZTBlZDZhZTVkMDVlNjBiNjA0
NWMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9pbmhlcml0ZWQt
dmFsdWVzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2luaGVyaXRl
ZC12YWx1ZXMuaHRtbApAQCAtMSwzICsxLDYgQEAKKzxzY3JpcHQ+CitpbnRlcm5hbHMuc2V0dGlu
Z3Muc2V0Q1NTVmFyaWFibGVzRW5hYmxlZCh0cnVlKTsKKzwvc2NyaXB0PgogPHN0eWxlPgogYm9k
eSB7CiAgICAgLXdlYmtpdC12YXItZm9yZWdyb3VuZDogZ3JlZW47CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvaW5saW5lLXN0eWxlcy5odG1sIGIvTGF5b3V0VGVz
dHMvZmFzdC9jc3MvdmFyaWFibGVzL2lubGluZS1zdHlsZXMuaHRtbAppbmRleCA5YTFiZTZiZjli
Yzg5OTc4ODU3ZTFlOTUyMDE3YjZmYWQ4YWY1NDdhLi4xZGMyM2JkNWUzZDljMjZkMGZkMmYxYWZi
NDZkOGE3NDNkYjExNTAwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJs
ZXMvaW5saW5lLXN0eWxlcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxl
cy9pbmxpbmUtc3R5bGVzLmh0bWwKQEAgLTEsMyArMSw2IEBACis8c2NyaXB0PgoraW50ZXJuYWxz
LnNldHRpbmdzLnNldENTU1ZhcmlhYmxlc0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KIDxib2R5
IHN0eWxlPSItd2Via2l0LXZhci1hOiBncmVlbjsiPgogPGRpdiBzdHlsZT0iY29sb3I6IC13ZWJr
aXQtdmFyKGEpOyI+CiBUaGlzIHRleHQgc2hvdWxkIGJlIGdyZWVuIG9uIGEgd2hpdGUgYmFja2dy
b3VuZC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9pbnZhbGlk
LXNob3J0aGFuZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2ludmFsaWQt
c2hvcnRoYW5kLmh0bWwKaW5kZXggYzk4ZTRkMzk0YzQ3Y2IwOTE5YzU2NWZmOTg1ZWRiMmYzZjVk
YmY2Yi4uNTdmZjdlZWVlZTRhYTJjZWQ0NjY0NTU1YTc5MDk4M2RiYzFmMGEyZSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2ludmFsaWQtc2hvcnRoYW5kLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL2ludmFsaWQtc2hvcnRoYW5kLmh0
bWwKQEAgLTEsMyArMSw2IEBACis8c2NyaXB0PgoraW50ZXJuYWxzLnNldHRpbmdzLnNldENTU1Zh
cmlhYmxlc0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KIDxzdHlsZT4KIGRpdiB7CiAgICAgLXdl
YmtpdC12YXItYTogMTBweCBzb2xpZCBncmVlbjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvY3NzL3ZhcmlhYmxlcy9pbnZhbGlkLXZhcmlhYmxlLXZhbHVlLmh0bWwgYi9MYXlvdXRUZXN0
cy9mYXN0L2Nzcy92YXJpYWJsZXMvaW52YWxpZC12YXJpYWJsZS12YWx1ZS5odG1sCmluZGV4IDRj
ZDA3NTc5NTcyOWYzYjE0ZmUxNjY1YzRhMWRkZGY5YmVjZWI2ZWMuLmRlMThkNzk2ZDYxODEzMDQ0
N2Q5YzQ3OTNiMzIxMTNjNTEyNzcxYTkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3Nz
L3ZhcmlhYmxlcy9pbnZhbGlkLXZhcmlhYmxlLXZhbHVlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9jc3MvdmFyaWFibGVzL2ludmFsaWQtdmFyaWFibGUtdmFsdWUuaHRtbApAQCAtMSwzICsx
LDYgQEAKKzxzY3JpcHQ+CitpbnRlcm5hbHMuc2V0dGluZ3Muc2V0Q1NTVmFyaWFibGVzRW5hYmxl
ZCh0cnVlKTsKKzwvc2NyaXB0PgogPHN0eWxlPgogZGl2IHsKICAgICAtd2Via2l0LXZhci1hOiBn
cmVlbjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9tdWx0aS1s
ZXZlbC1jeWNsZS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL211bHRpLWxl
dmVsLWN5Y2xlLmh0bWwKaW5kZXggNmM4NjRhMGQ5ODJmZjUzN2ZhNTg2OThmNzRhOWQ2NDFjMzEz
YTY3NS4uMzc3MmIxNDc2NDI5NzA3M2M0NmQyMzFmZjY2OGI2MDNlMzY0OGExOCAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL211bHRpLWxldmVsLWN5Y2xlLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL211bHRpLWxldmVsLWN5Y2xlLmh0
bWwKQEAgLTEsMyArMSw2IEBACis8c2NyaXB0PgoraW50ZXJuYWxzLnNldHRpbmdzLnNldENTU1Zh
cmlhYmxlc0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KIDxzdHlsZT4KIC5hIHsKICAgICAtd2Vi
a2l0LXZhci1hOiAtd2Via2l0LXZhcihiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
Y3NzL3ZhcmlhYmxlcy9yZWRlZmluaXRpb24uaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3Zh
cmlhYmxlcy9yZWRlZmluaXRpb24uaHRtbAppbmRleCBlNDM4ZjVhNWEyNWIxODE4ZjY4ZTc5N2I1
MzJkYjA3ODFiNmFiZGJlLi5hMDIxOGIxYzE1NmQ2NzRmN2JlN2E3ZDUxNmM4YTMyNDRlMDQ5NzYx
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvcmVkZWZpbml0aW9u
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL3JlZGVmaW5pdGlvbi5o
dG1sCkBAIC0xLDMgKzEsNiBAQAorPHNjcmlwdD4KK2ludGVybmFscy5zZXR0aW5ncy5zZXRDU1NW
YXJpYWJsZXNFbmFibGVkKHRydWUpOworPC9zY3JpcHQ+CiA8c3R5bGU+CiBib2R5IHsKICAgICAt
d2Via2l0LXZhci1hOiByZWQ7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJp
YWJsZXMvc2hvcnRoYW5kLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvc2hv
cnRoYW5kLmh0bWwKaW5kZXggNWQyOTkyZTlkZjY2ODY0MDJmNTMwYzMwNjViYjQ4NTE1MmNhZWYy
Mi4uNThhYmZiMDU2NzExYTYzYzc4ZjYwNGJkNzE5ZTJmMmUxYzFlZTNmMiAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL3Nob3J0aGFuZC5odG1sCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9zaG9ydGhhbmQuaHRtbApAQCAtMSwzICsxLDYgQEAK
KzxzY3JpcHQ+CitpbnRlcm5hbHMuc2V0dGluZ3Muc2V0Q1NTVmFyaWFibGVzRW5hYmxlZCh0cnVl
KTsKKzwvc2NyaXB0PgogPHN0eWxlPgogZGl2IHsKICAgICAtd2Via2l0LXZhci1teWJvcmRlcjog
MTBweCBzb2xpZCBncmVlbjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3Zhcmlh
Ymxlcy9zaW1wbGUtY3ljbGUuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy9z
aW1wbGUtY3ljbGUuaHRtbAppbmRleCA0ZDFlNjNmNDQzMTNiZWExNjc5MjczMTQwMWFjZTc1MTlj
ZjViYmFhLi42YThmM2ZjZmM3NzNjMWI0YmJkMWU2ZTBiYzBmMmZmZjYyYjEwZWQ1IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvc2ltcGxlLWN5Y2xlLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL3NpbXBsZS1jeWNsZS5odG1sCkBAIC0x
LDMgKzEsNiBAQAorPHNjcmlwdD4KK2ludGVybmFscy5zZXR0aW5ncy5zZXRDU1NWYXJpYWJsZXNF
bmFibGVkKHRydWUpOworPC9zY3JpcHQ+CiA8c3R5bGU+CiBib2R5IHsKICAgICAtd2Via2l0LXZh
ci1hOiAtd2Via2l0LXZhcihhKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3Zh
cmlhYmxlcy90cmFuc2Zvcm0tdGVzdC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFi
bGVzL3RyYW5zZm9ybS10ZXN0Lmh0bWwKaW5kZXggY2M2M2NlNGU4MWU1YjkwMWU1MTA3NzAzY2Zh
ZWZkNDlmZmU3OTY4NC4uMzEwZWQzZDU5ZWVhNGQ3OWYwYTZhYzJhYjM4NWMxOTM1YTFlMmQ3MiAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL3RyYW5zZm9ybS10ZXN0
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVzL3RyYW5zZm9ybS10ZXN0
Lmh0bWwKQEAgLTEsMyArMSw2IEBACis8c2NyaXB0PgoraW50ZXJuYWxzLnNldHRpbmdzLnNldENT
U1ZhcmlhYmxlc0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KIDxzdHlsZT4KIGRpdiB7CiAgICAg
ZGlzcGxheTogaW5saW5lLWJsb2NrOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3Mv
dmFyaWFibGVzL3VuZGVmaW5lZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVz
L3VuZGVmaW5lZC5odG1sCmluZGV4IDc3NDMxMDRlNGFlNWI0ZjdmNjE1NDk0NzJhYjk1ZjUwYTM3
NTlkZDkuLjBkYjllNzNjYWYyNmZhMDIyNzg1MGZlOTJjNWVkODhkMjMzYmU5OGIgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy91bmRlZmluZWQuaHRtbAorKysgYi9M
YXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvdW5kZWZpbmVkLmh0bWwKQEAgLTEsMyArMSw2
IEBACis8c2NyaXB0PgoraW50ZXJuYWxzLnNldHRpbmdzLnNldENTU1ZhcmlhYmxlc0VuYWJsZWQo
dHJ1ZSk7Cis8L3NjcmlwdD4KIDxzdHlsZT4KIGJvZHkgewogICAgIGJvcmRlcjogLXdlYmtpdC12
YXIobXlib3JkZXIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVz
L3VzZS1iZWZvcmUtZGVmaW5lZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdmFyaWFibGVz
L3VzZS1iZWZvcmUtZGVmaW5lZC5odG1sCmluZGV4IGJiYTQxYmU4ZWEyMWU1YzBlNTE1NjQ3Njky
ZTVjNzk4NWNmZjhlYTAuLjNiMjY4OWNmNDg3ZTQ4YWIwZGRkZDA2MmRhMGU1OWJlNmI2MDA2YjAg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy91c2UtYmVmb3JlLWRl
ZmluZWQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMvdXNlLWJlZm9y
ZS1kZWZpbmVkLmh0bWwKQEAgLTEsMyArMSw2IEBACis8c2NyaXB0PgoraW50ZXJuYWxzLnNldHRp
bmdzLnNldENTU1ZhcmlhYmxlc0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KIDxzdHlsZT4KIGRp
diB7CiAgICAgY29sb3I6IC13ZWJraXQtdmFyKGEpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9jc3MvdmFyaWFibGVzL3Zhci1pbnNpZGUtc2hvcnRoYW5kLmh0bWwgYi9MYXlvdXRUZXN0
cy9mYXN0L2Nzcy92YXJpYWJsZXMvdmFyLWluc2lkZS1zaG9ydGhhbmQuaHRtbAppbmRleCAwNjlh
NThmMzViNDM5NjczZDZhMmM5MjJhZTUwMjhlODc5MWJhNjk5Li5jMmE3OTBiNjkwNGRlNWJkODAz
YWMzZDc4NGMzZmUyNmNiMTUyNWQ3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92
YXJpYWJsZXMvdmFyLWluc2lkZS1zaG9ydGhhbmQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L2Nzcy92YXJpYWJsZXMvdmFyLWluc2lkZS1zaG9ydGhhbmQuaHRtbApAQCAtMSwzICsxLDYgQEAK
KzxzY3JpcHQ+CitpbnRlcm5hbHMuc2V0dGluZ3Muc2V0Q1NTVmFyaWFibGVzRW5hYmxlZCh0cnVl
KTsKKzwvc2NyaXB0PgogPHN0eWxlPgogYm9keSB7CiAgICAgLXdlYmtpdC12YXItTXlCb3JkZXJD
b2xvcjogZ3JlZW47CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy92YXJpYWJsZXMv
dmFyaWFibGUtY2hhaW4uaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy92YXJp
YWJsZS1jaGFpbi5odG1sCmluZGV4IGExNWQ1YmNlNGU4ODIyNDhmNGExMDljOWVhNWU5MTQzYjZi
ZTQ0YTYuLmM0MzI2MDU2ZWQ3YzQ2NmM5MDY0Yzk2ZGMxZTczN2JhMWEwZDRiZGUgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy92YXJpYWJsZS1jaGFpbi5odG1sCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3ZhcmlhYmxlcy92YXJpYWJsZS1jaGFpbi5odG1sCkBA
IC0xLDMgKzEsNiBAQAorPHNjcmlwdD4KK2ludGVybmFscy5zZXR0aW5ncy5zZXRDU1NWYXJpYWJs
ZXNFbmFibGVkKHRydWUpOworPC9zY3JpcHQ+CiA8c3R5bGU+CiBib2R5IHsKICAgICAtd2Via2l0
LXZhci1jOiBncmVlbjsK
</data>

          </attachment>
      

    </bug>

</bugzilla>