<?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>49066</bug_id>
          
          <creation_ts>2010-11-05 04:50:23 -0700</creation_ts>
          <short_desc>Convert to and from DOMTimeStamp with converter functions</short_desc>
          <delta_ts>2010-11-08 20:15:16 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</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>48518</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="John Knottenbelt">jknotten</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>andreip</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>eric</cc>
    
    <cc>sam</cc>
    
    <cc>steveblock</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>305225</commentid>
    <comment_count>0</comment_count>
    <who name="John Knottenbelt">jknotten</who>
    <bug_when>2010-11-05 04:50:23 -0700</bug_when>
    <thetext>At present, DOMTimeStamp is defined in WebCore/dom/Event.h, with a FIXME to move somewhere else. 

It should be moved into its own header and provide conversion functions to convert to and from seconds as provided by WTF::currentTime().

We should change existing conversions (multiply / divide by 1000) to use the conversion functions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>305226</commentid>
    <comment_count>1</comment_count>
      <attachid>73055</attachid>
    <who name="John Knottenbelt">jknotten</who>
    <bug_when>2010-11-05 04:53:54 -0700</bug_when>
    <thetext>Created attachment 73055
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>305248</commentid>
    <comment_count>2</comment_count>
      <attachid>73055</attachid>
    <who name="Steve Block">steveblock</who>
    <bug_when>2010-11-05 06:56:21 -0700</bug_when>
    <thetext>Comment on attachment 73055
Patch

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

LGTM, but would be good to get an OK from somebody else too.

&gt; WebCore/ChangeLog:6
&gt; +        https://bugs.webkit.org/show_bug.cgi?id=49066

Add a line about LayoutTests - just say this is a refactoring only.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>305270</commentid>
    <comment_count>3</comment_count>
    <who name="Andrei Popescu">andreip</who>
    <bug_when>2010-11-05 07:29:23 -0700</bug_when>
    <thetext>You forgot to update the build files for Visual Studio, XCode, etc.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>305312</commentid>
    <comment_count>4</comment_count>
      <attachid>73071</attachid>
    <who name="John Knottenbelt">jknotten</who>
    <bug_when>2010-11-05 09:23:08 -0700</bug_when>
    <thetext>Created attachment 73071
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>305315</commentid>
    <comment_count>5</comment_count>
      <attachid>73072</attachid>
    <who name="John Knottenbelt">jknotten</who>
    <bug_when>2010-11-05 09:28:20 -0700</bug_when>
    <thetext>Created attachment 73072
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>305317</commentid>
    <comment_count>6</comment_count>
    <who name="John Knottenbelt">jknotten</who>
    <bug_when>2010-11-05 09:29:01 -0700</bug_when>
    <thetext>Thanks, change log modified and build files attached.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>305348</commentid>
    <comment_count>7</comment_count>
      <attachid>73072</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-11-05 10:26:53 -0700</bug_when>
    <thetext>Comment on attachment 73072
Patch

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

Thanks!  Much easier to understand.  :)

&gt; WebCore/platform/android/GeolocationServiceAndroid.cpp:175
&gt; -    DOMTimeStamp currentTimeMillis = WTF::currentTime() * 1000.0;
&gt; -    DOMTimeStamp maximumAgeMillis = 10 * 60 * 1000;  // 10 minutes
&gt; +    DOMTimeStamp currentTimeMillis = convertSecondsToDOMTimeStamp(WTF::currentTime());
&gt; +    DOMTimeStamp maximumAgeMillis = convertSecondsToDOMTimeStamp(10 * 60); // 10 minutes

Should we rename these variables?  currentTimeStamp, etc?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>305354</commentid>
    <comment_count>8</comment_count>
      <attachid>73079</attachid>
    <who name="John Knottenbelt">jknotten</who>
    <bug_when>2010-11-05 10:38:55 -0700</bug_when>
    <thetext>Created attachment 73079
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>305358</commentid>
    <comment_count>9</comment_count>
      <attachid>73079</attachid>
    <who name="John Knottenbelt">jknotten</who>
    <bug_when>2010-11-05 10:41:12 -0700</bug_when>
    <thetext>Comment on attachment 73079
Patch

Renamed the variables in GeolocationServiceAndroid.cpp as per Adam&apos;s suggestion.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>305387</commentid>
    <comment_count>10</comment_count>
      <attachid>73079</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-11-05 11:03:10 -0700</bug_when>
    <thetext>Comment on attachment 73079
Patch

Rejecting patch 73079 from commit-queue.

Failed to run &quot;[&apos;./WebKitTools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;--bot-id=eseidel-cq-sl&apos;, &apos;build&apos;, &apos;--no-clean&apos;, &apos;--no-update&apos;, &apos;--build-style=both&apos;]&quot; exit_code: 2
Last 500 characters of output:
4/WebTextCompletionController.o /Projects/CommitQueue/WebKit/mac/WebView/WebTextCompletionController.mm normal x86_64 objective-c++ com.apple.compilers.gcc.4_2
	CompileC /Projects/CommitQueue/WebKitBuild/WebKit.build/Debug/WebKit.build/Objects-normal/x86_64/WebView.o /Projects/CommitQueue/WebKit/mac/WebView/WebView.mm normal x86_64 objective-c++ com.apple.compilers.gcc.4_2
(36 failures)

Use of uninitialized value $_[0] in join or string at /System/Library/Perl/5.10.0/File/Spec/Unix.pm line 81.

Full output: http://queues.webkit.org/results/5247018</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>305392</commentid>
    <comment_count>11</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-11-05 11:07:30 -0700</bug_when>
    <thetext>The perl-error is unrelated (I think).  But CCing Dan as this is not the first time I&apos;ve seen this. It is something to do with File-&gt;catdir iirc.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>306110</commentid>
    <comment_count>12</comment_count>
    <who name="John Knottenbelt">jknotten</who>
    <bug_when>2010-11-08 07:28:35 -0800</bug_when>
    <thetext>Looking at the build log, the it failed because DOMTimeStamp.h wasn&apos;t included in the Framework&apos;s private headers. Will include and try again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>306115</commentid>
    <comment_count>13</comment_count>
      <attachid>73238</attachid>
    <who name="John Knottenbelt">jknotten</who>
    <bug_when>2010-11-08 07:35:54 -0800</bug_when>
    <thetext>Created attachment 73238
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>306124</commentid>
    <comment_count>14</comment_count>
      <attachid>73238</attachid>
    <who name="John Knottenbelt">jknotten</who>
    <bug_when>2010-11-08 07:58:58 -0800</bug_when>
    <thetext>Comment on attachment 73238
Patch

In the WebCore Framework, I have now set the header role of DOMTimestamp.h to private. This allowed WebKit to build.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>306132</commentid>
    <comment_count>15</comment_count>
      <attachid>73242</attachid>
    <who name="John Knottenbelt">jknotten</who>
    <bug_when>2010-11-08 08:34:04 -0800</bug_when>
    <thetext>Created attachment 73242
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>306587</commentid>
    <comment_count>16</comment_count>
      <attachid>73242</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-11-08 20:15:09 -0800</bug_when>
    <thetext>Comment on attachment 73242
Patch

Clearing flags on attachment: 73242

Committed r71602: &lt;http://trac.webkit.org/changeset/71602&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>306588</commentid>
    <comment_count>17</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-11-08 20:15:16 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>73055</attachid>
            <date>2010-11-05 04:53:54 -0700</date>
            <delta_ts>2010-11-05 09:23:02 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-49066-20101105115351.patch</filename>
            <type>text/plain</type>
            <size>8102</size>
            <attacher name="John Knottenbelt">jknotten</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NjY0MTkwMzk5M2U5N2QxNGZmNjMwYjBlNTRhZDJlZDU5MDE3MzZkYS4uNjQyNTJjZTM1M2I5MDYx
NjcyNDRjMjRlMjQ2ZjU5Y2M2OTQ2NmFjZCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAxMC0xMS0wNSAgSm9o
biBLbm90dGVuYmVsdCAgPGprbm90dGVuQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDb252ZXJ0IHRvIGFuZCBmcm9tIERPTVRp
bWVTdGFtcCB3aXRoIGNvbnZlcnRlciBmdW5jdGlvbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ5MDY2CisKKyAgICAgICAgKiBXZWJDb3JlLmd5cGk6
CisgICAgICAgICogZG9tL0RPTVRpbWVTdGFtcC5oOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6
OmNvbnZlcnRTZWNvbmRzVG9ET01UaW1lU3RhbXApOgorICAgICAgICAoV2ViQ29yZTo6Y29udmVy
dERPTVRpbWVTdGFtcFRvU2Vjb25kcyk6CisgICAgICAgICogZG9tL0V2ZW50LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkV2ZW50OjpFdmVudCk6CisgICAgICAgICogZG9tL0V2ZW50Lmg6CisgICAg
ICAgICogcGFnZS9HZW9sb2NhdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHZW9sb2NhdGlv
bjo6aGF2ZVN1aXRhYmxlQ2FjaGVkUG9zaXRpb24pOgorICAgICAgICAqIHBsYXRmb3JtL2FuZHJv
aWQvR2VvbG9jYXRpb25TZXJ2aWNlQW5kcm9pZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHZW9s
b2NhdGlvblNlcnZpY2VBbmRyb2lkOjppc1Bvc2l0aW9uTW9yZVRpbWVseSk6CisKIDIwMTAtMTEt
MDUgIFBhdmVsIEZlbGRtYW4gIDxwZmVsZG1hbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2
aWV3ZWQgYnkgVGltb3RoeSBIYXRjaGVyLgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLmd5
cGkgYi9XZWJDb3JlL1dlYkNvcmUuZ3lwaQppbmRleCAxNWZhNDRiMzNmMDIxNTczMDg5ODRkMWVh
MjgwMzZiOTg4YmU0YWVhLi41ZDc4ZjU5Y2VjN2Y1NDdiN2NlMmQ1Mjc2MTU1MmVkMjJkYTIwZGVm
IDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQorKysgYi9XZWJDb3JlL1dlYkNvcmUu
Z3lwaQpAQCAtMTE2NCw2ICsxMTY0LDcgQEAKICAgICAgICAgICAgICdkb20vRE9NU3RyaW5nTGlz
dC5oJywKICAgICAgICAgICAgICdkb20vRE9NU3RyaW5nTWFwLmNwcCcsCiAgICAgICAgICAgICAn
ZG9tL0RPTVN0cmluZ01hcC5oJywKKyAgICAgICAgICAgICdkb20vRE9NVGltZVN0YW1wLmgnLAog
ICAgICAgICAgICAgJ2RvbS9EYXRhc2V0RE9NU3RyaW5nTWFwLmNwcCcsCiAgICAgICAgICAgICAn
ZG9tL0RhdGFzZXRET01TdHJpbmdNYXAuaCcsCiAgICAgICAgICAgICAnZG9tL0RlY29kZWREYXRh
RG9jdW1lbnRQYXJzZXIuY3BwJywKZGlmZiAtLWdpdCBhL1dlYkNvcmUvZG9tL0RPTVRpbWVTdGFt
cC5oIGIvV2ViQ29yZS9kb20vRE9NVGltZVN0YW1wLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmY2MTUyMDVjODNm
ZWEyNDYwMTAzNjNlYTZkMjkwYTFlYjJhMGFjMQotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUv
ZG9tL0RPTVRpbWVTdGFtcC5oCkBAIC0wLDAgKzEsNTAgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMp
IDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
KyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICog
ICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0
cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9k
dWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlv
ciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAq
IExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIERPTVRpbWVTdGFtcF9o
CisjZGVmaW5lIERPTVRpbWVTdGFtcF9oCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKwordHlwZWRl
ZiB1bnNpZ25lZCBsb25nIGxvbmcgRE9NVGltZVN0YW1wOworCitpbmxpbmUgRE9NVGltZVN0YW1w
IGNvbnZlcnRTZWNvbmRzVG9ET01UaW1lU3RhbXAoZG91YmxlIHNlY29uZHMpCit7CisgICAgcmV0
dXJuIHN0YXRpY19jYXN0PERPTVRpbWVTdGFtcD4oc2Vjb25kcyAqIDEwMDAuMCk7Cit9CisKK2lu
bGluZSBkb3VibGUgY29udmVydERPTVRpbWVTdGFtcFRvU2Vjb25kcyhET01UaW1lU3RhbXAgbWls
bGlzZWNvbmRzKQoreworICAgIHJldHVybiBtaWxsaXNlY29uZHMgLyAxMDAwLjA7Cit9CisKK30g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIERPTVRpbWVTdGFtcF9oCmRpZmYgLS1n
aXQgYS9XZWJDb3JlL2RvbS9FdmVudC5jcHAgYi9XZWJDb3JlL2RvbS9FdmVudC5jcHAKaW5kZXgg
OTI5M2E5YTc0Y2E4NWViYzQwYTdmMWYxMjEyYWQ0NGJmODM0ZDUzOS4uMDUxNWZlN2ZhZTgzNTAw
Zjg3N2Q5NjJmOWQwNmViZjNkOGNmNTI3YSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9kb20vRXZlbnQu
Y3BwCisrKyBiL1dlYkNvcmUvZG9tL0V2ZW50LmNwcApAQCAtMzksNyArMzksNyBAQCBFdmVudDo6
RXZlbnQoKQogICAgICwgbV9jYW5jZWxCdWJibGUoZmFsc2UpCiAgICAgLCBtX2V2ZW50UGhhc2Uo
MCkKICAgICAsIG1fY3VycmVudFRhcmdldCgwKQotICAgICwgbV9jcmVhdGVUaW1lKHN0YXRpY19j
YXN0PERPTVRpbWVTdGFtcD4oY3VycmVudFRpbWUoKSAqIDEwMDAuMCkpCisgICAgLCBtX2NyZWF0
ZVRpbWUoY29udmVydFNlY29uZHNUb0RPTVRpbWVTdGFtcChjdXJyZW50VGltZSgpKSkKIHsKIH0K
IApAQCAtNTQsNyArNTQsNyBAQCBFdmVudDo6RXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiBldmVu
dFR5cGUsIGJvb2wgY2FuQnViYmxlQXJnLCBib29sIGNhbmNlbGFibGVBcgogICAgICwgbV9jYW5j
ZWxCdWJibGUoZmFsc2UpCiAgICAgLCBtX2V2ZW50UGhhc2UoMCkKICAgICAsIG1fY3VycmVudFRh
cmdldCgwKQotICAgICwgbV9jcmVhdGVUaW1lKHN0YXRpY19jYXN0PERPTVRpbWVTdGFtcD4oY3Vy
cmVudFRpbWUoKSAqIDEwMDAuMCkpCisgICAgLCBtX2NyZWF0ZVRpbWUoY29udmVydFNlY29uZHNU
b0RPTVRpbWVTdGFtcChjdXJyZW50VGltZSgpKSkKIHsKIH0KIApkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9kb20vRXZlbnQuaCBiL1dlYkNvcmUvZG9tL0V2ZW50LmgKaW5kZXggODJhYzhlY2IzNTdiMTAy
ZGVhODQ5NzIxYzJkZDNjNGNmMjVlYzQ4MC4uYzhmZDIxZTRjNjE5N2ZiNGYzM2FmMDY0MzBhZTE5
OGRkMDcxZWQzYyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9kb20vRXZlbnQuaAorKysgYi9XZWJDb3Jl
L2RvbS9FdmVudC5oCkBAIC0yNCw2ICsyNCw3IEBACiAjaWZuZGVmIEV2ZW50X2gKICNkZWZpbmUg
RXZlbnRfaAogCisjaW5jbHVkZSAiRE9NVGltZVN0YW1wLmgiCiAjaW5jbHVkZSAiRXZlbnRUYXJn
ZXQuaCIKICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L0F0
b21pY1N0cmluZy5oPgpAQCAtMzIsOSArMzMsNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKICAg
ICBjbGFzcyBDbGlwYm9hcmQ7CiAKLSAgICAvLyBGSVhNRTogdGhpcyBzaG91bGQgcHJvYmFibHkg
ZGVmaW5lZCBlbHNld2hlcmUuCi0gICAgdHlwZWRlZiB1bnNpZ25lZCBsb25nIGxvbmcgRE9NVGlt
ZVN0YW1wOwotCiAgICAgY2xhc3MgRXZlbnQgOiBwdWJsaWMgUmVmQ291bnRlZDxFdmVudD4gewog
ICAgIHB1YmxpYzoKICAgICAgICAgZW51bSBQaGFzZVR5cGUgeyAKZGlmZiAtLWdpdCBhL1dlYkNv
cmUvcGFnZS9HZW9sb2NhdGlvbi5jcHAgYi9XZWJDb3JlL3BhZ2UvR2VvbG9jYXRpb24uY3BwCmlu
ZGV4IGQ1Mjc3ZTAwNzhlYjZiMmIzNmFkYTRjOTZhNmE4OTlkYWYyZTNhNjguLmJlZDhmYjRjY2Fl
NDhiYzZhZmRhMjQ5OTIyODY3MGZjMjhiYTIwNTQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGFnZS9H
ZW9sb2NhdGlvbi5jcHAKKysrIGIvV2ViQ29yZS9wYWdlL0dlb2xvY2F0aW9uLmNwcApAQCAtMzkw
LDcgKzM5MCw3IEBAIGJvb2wgR2VvbG9jYXRpb246OmhhdmVTdWl0YWJsZUNhY2hlZFBvc2l0aW9u
KFBvc2l0aW9uT3B0aW9ucyogb3B0aW9ucykKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgaWYg
KCFvcHRpb25zLT5tYXhpbXVtQWdlKCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBET01U
aW1lU3RhbXAgY3VycmVudFRpbWVNaWxsaXMgPSBjdXJyZW50VGltZSgpICogMTAwMC4wOworICAg
IERPTVRpbWVTdGFtcCBjdXJyZW50VGltZU1pbGxpcyA9IGNvbnZlcnRTZWNvbmRzVG9ET01UaW1l
U3RhbXAoY3VycmVudFRpbWUoKSk7CiAgICAgcmV0dXJuIG1fcG9zaXRpb25DYWNoZS0+Y2FjaGVk
UG9zaXRpb24oKS0+dGltZXN0YW1wKCkgPiBjdXJyZW50VGltZU1pbGxpcyAtIG9wdGlvbnMtPm1h
eGltdW1BZ2UoKTsKIH0KIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9hbmRyb2lkL0dl
b2xvY2F0aW9uU2VydmljZUFuZHJvaWQuY3BwIGIvV2ViQ29yZS9wbGF0Zm9ybS9hbmRyb2lkL0dl
b2xvY2F0aW9uU2VydmljZUFuZHJvaWQuY3BwCmluZGV4IGQ0NGIzZjAwMzViMDdhZjNlZWE2ODdk
NjdlZjBkZDU1MTVlMDNiNDYuLjhkYzNiNDUwYTYyZGJlYTQwNjk4ZGFmZjc3YmMwMzZjMmM4NTAx
ZTkgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vYW5kcm9pZC9HZW9sb2NhdGlvblNlcnZp
Y2VBbmRyb2lkLmNwcAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL2FuZHJvaWQvR2VvbG9jYXRpb25T
ZXJ2aWNlQW5kcm9pZC5jcHAKQEAgLTE3MSw4ICsxNzEsOCBAQCBib29sIEdlb2xvY2F0aW9uU2Vy
dmljZUFuZHJvaWQ6OmlzUG9zaXRpb25Nb3JlQWNjdXJhdGUoR2VvcG9zaXRpb24qIHBvc2l0aW9u
MSwgRwogYm9vbCBHZW9sb2NhdGlvblNlcnZpY2VBbmRyb2lkOjppc1Bvc2l0aW9uTW9yZVRpbWVs
eShHZW9wb3NpdGlvbiogcG9zaXRpb24xLCBHZW9wb3NpdGlvbiogcG9zaXRpb24yKQogewogICAg
IEFTU0VSVChwb3NpdGlvbjEgJiYgcG9zaXRpb24yKTsKLSAgICBET01UaW1lU3RhbXAgY3VycmVu
dFRpbWVNaWxsaXMgPSBXVEY6OmN1cnJlbnRUaW1lKCkgKiAxMDAwLjA7Ci0gICAgRE9NVGltZVN0
YW1wIG1heGltdW1BZ2VNaWxsaXMgPSAxMCAqIDYwICogMTAwMDsgIC8vIDEwIG1pbnV0ZXMKKyAg
ICBET01UaW1lU3RhbXAgY3VycmVudFRpbWVNaWxsaXMgPSBjb252ZXJ0U2Vjb25kc1RvRE9NVGlt
ZVN0YW1wKFdURjo6Y3VycmVudFRpbWUoKSk7CisgICAgRE9NVGltZVN0YW1wIG1heGltdW1BZ2VN
aWxsaXMgPSBjb252ZXJ0U2Vjb25kc1RvRE9NVGltZVN0YW1wKDEwICogNjApOyAvLyAxMCBtaW51
dGVzCiAgICAgcmV0dXJuIGN1cnJlbnRUaW1lTWlsbGlzIC0gcG9zaXRpb24xLT50aW1lc3RhbXAo
KSA+IG1heGltdW1BZ2VNaWxsaXM7CiB9CiAKZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9D
aGFuZ2VMb2cgYi9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IDBlMGVhZDcwMTUxNGNm
MjUzMjBhOWY2NDFhM2FhNDA3NTcyMDNjYjAuLjVmNzBkZGMyNzllMzRhN2I2YzdjYWIxOGU3ZGEy
NWQwM2IxZTMzOWQgMTAwNjQ0Ci0tLSBhL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIv
V2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDEwLTExLTA1ICBK
b2huIEtub3R0ZW5iZWx0ICA8amtub3R0ZW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIENvbnZlcnQgdG8gYW5kIGZyb20gRE9N
VGltZVN0YW1wIHdpdGggY29udmVydGVyIGZ1bmN0aW9ucworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDkwNjYKKworICAgICAgICAqIHNyYy9XZWJEYXRh
U291cmNlSW1wbC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkRhdGFTb3VyY2VJbXBsOjp0cmln
Z2VyaW5nRXZlbnRUaW1lKToKKwogMjAxMC0xMS0wNCAgdXNhaW5pICA8dXNhaW5pMDhAZ21haWwu
Y29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEFudG9uaW8gR29tZXMuCmRpZmYgLS1naXQgYS9X
ZWJLaXQvY2hyb21pdW0vc3JjL1dlYkRhdGFTb3VyY2VJbXBsLmNwcCBiL1dlYktpdC9jaHJvbWl1
bS9zcmMvV2ViRGF0YVNvdXJjZUltcGwuY3BwCmluZGV4IGQ1YjFkNzk1NDg3NGJhNzliZDBjMzgx
MGYzMjcwZjk3NzdlYjljZTAuLjY1MTQ3ZmFjYmUzMTJhYzRjNTBlMDljOWNmMzAxOTM2MGY4Mzdj
YTggMTAwNjQ0Ci0tLSBhL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRGF0YVNvdXJjZUltcGwuY3Bw
CisrKyBiL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRGF0YVNvdXJjZUltcGwuY3BwCkBAIC05Niw3
ICs5Niw3IEBAIGRvdWJsZSBXZWJEYXRhU291cmNlSW1wbDo6dHJpZ2dlcmluZ0V2ZW50VGltZSgp
IGNvbnN0CiAgICAgICAgIHJldHVybiAwLjA7CiAKICAgICAvLyBET01UaW1lU3RhbXAgdXNlcyB1
bml0cyBvZiBtaWxsaXNlY29uZHMuCi0gICAgcmV0dXJuIHRyaWdnZXJpbmdBY3Rpb24oKS5ldmVu
dCgpLT50aW1lU3RhbXAoKSAvIDEwMDAuMDsKKyAgICByZXR1cm4gY29udmVydERPTVRpbWVTdGFt
cFRvU2Vjb25kcyh0cmlnZ2VyaW5nQWN0aW9uKCkuZXZlbnQoKS0+dGltZVN0YW1wKCkpOwogfQog
CiBXZWJEYXRhU291cmNlOjpFeHRyYURhdGEqIFdlYkRhdGFTb3VyY2VJbXBsOjpleHRyYURhdGEo
KSBjb25zdAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>73071</attachid>
            <date>2010-11-05 09:23:08 -0700</date>
            <delta_ts>2010-11-05 09:28:13 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-49066-20101105162306.patch</filename>
            <type>text/plain</type>
            <size>17768</size>
            <attacher name="John Knottenbelt">jknotten</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NjY0MTkwMzk5M2U5N2QxNGZmNjMwYjBlNTRhZDJlZDU5MDE3MzZkYS4uMGVkMGI3YWI0NWU4N2Iy
ZDQ1OGIzY2I2MWE5YWMzYjM3MDljNzFmNCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNiBAQAorMjAxMC0xMS0wNSAgSm9o
biBLbm90dGVuYmVsdCAgPGprbm90dGVuQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDb252ZXJ0IHRvIGFuZCBmcm9tIERPTVRp
bWVTdGFtcCB3aXRoIGNvbnZlcnRlciBmdW5jdGlvbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ5MDY2CisKKyAgICAgICAgKiBHTlVtYWtlZmlsZS5h
bToKKyAgICAgICAgKiBXZWJDb3JlLmd5cGk6CisgICAgICAgICogV2ViQ29yZS5wcm86CisgICAg
ICAgICogV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2o6CisgICAgICAgICogV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGRvbS9ET01UaW1lU3RhbXAuaDog
QWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpjb252ZXJ0U2Vjb25kc1RvRE9NVGltZVN0YW1wKToK
KyAgICAgICAgKFdlYkNvcmU6OmNvbnZlcnRET01UaW1lU3RhbXBUb1NlY29uZHMpOgorICAgICAg
ICAqIGRvbS9FdmVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFdmVudDo6RXZlbnQpOgorICAg
ICAgICAqIGRvbS9FdmVudC5oOgorICAgICAgICAqIHBhZ2UvR2VvbG9jYXRpb24uY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6R2VvbG9jYXRpb246OmhhdmVTdWl0YWJsZUNhY2hlZFBvc2l0aW9uKToK
KyAgICAgICAgKiBwbGF0Zm9ybS9hbmRyb2lkL0dlb2xvY2F0aW9uU2VydmljZUFuZHJvaWQuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6R2VvbG9jYXRpb25TZXJ2aWNlQW5kcm9pZDo6aXNQb3NpdGlv
bk1vcmVUaW1lbHkpOgorCiAyMDEwLTExLTA1ICBQYXZlbCBGZWxkbWFuICA8cGZlbGRtYW5AY2hy
b21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFRpbW90aHkgSGF0Y2hlci4KZGlmZiAt
LWdpdCBhL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0gYi9XZWJDb3JlL0dOVW1ha2VmaWxlLmFtCmlu
ZGV4IDZiMTg5YmM1OTAzYWIxZjFlMWJjNTI1YjcwOTc3Zjc3ZWU0NDMzN2YuLjAxZjMxNGQxNmQ2
NGZjOGExM2FiYTlkMTZmZGYyOWFiZTAzYjhhNTIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvR05VbWFr
ZWZpbGUuYW0KKysrIGIvV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQpAQCAtMTEyMiw2ICsxMTIyLDcg
QEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlXZWJDb3JlL2RvbS9ET01TdHJpbmdMaXN0LmggXAog
CVdlYkNvcmUvZG9tL0RPTVN0cmluZ01hcC5jcHAgXAogCVdlYkNvcmUvZG9tL0RPTVN0cmluZ01h
cC5oIFwKKwlXZWJDb3JlL2RvbS9ET01UaW1lU3RhbXAuaCBcCiAJV2ViQ29yZS9kb20vRHluYW1p
Y05vZGVMaXN0LmNwcCBcCiAJV2ViQ29yZS9kb20vRHluYW1pY05vZGVMaXN0LmggXAogCVdlYkNv
cmUvZG9tL0VkaXRpbmdUZXh0LmNwcCBcCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUuZ3lw
aSBiL1dlYkNvcmUvV2ViQ29yZS5neXBpCmluZGV4IDE1ZmE0NGIzM2YwMjE1NzMwODk4NGQxZWEy
ODAzNmI5ODhiZTRhZWEuLjVkNzhmNTljZWM3ZjU0N2I3Y2UyZDUyNzYxNTUyZWQyMmRhMjBkZWYg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS5neXBpCisrKyBiL1dlYkNvcmUvV2ViQ29yZS5n
eXBpCkBAIC0xMTY0LDYgKzExNjQsNyBAQAogICAgICAgICAgICAgJ2RvbS9ET01TdHJpbmdMaXN0
LmgnLAogICAgICAgICAgICAgJ2RvbS9ET01TdHJpbmdNYXAuY3BwJywKICAgICAgICAgICAgICdk
b20vRE9NU3RyaW5nTWFwLmgnLAorICAgICAgICAgICAgJ2RvbS9ET01UaW1lU3RhbXAuaCcsCiAg
ICAgICAgICAgICAnZG9tL0RhdGFzZXRET01TdHJpbmdNYXAuY3BwJywKICAgICAgICAgICAgICdk
b20vRGF0YXNldERPTVN0cmluZ01hcC5oJywKICAgICAgICAgICAgICdkb20vRGVjb2RlZERhdGFE
b2N1bWVudFBhcnNlci5jcHAnLApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnBybyBiL1dl
YkNvcmUvV2ViQ29yZS5wcm8KaW5kZXggMThmNDBjNDFlODIzOGM5MjNjZTljM2IyZWM3MDkwZWQw
ZGQ2NmIyOC4uZWViZjdjMzBmYzdiNTAxYmM1YzIwNDRlZDU4YmZlNWRkYzQ4YjFjYyAxMDA2NDQK
LS0tIGEvV2ViQ29yZS9XZWJDb3JlLnBybworKysgYi9XZWJDb3JlL1dlYkNvcmUucHJvCkBAIC0x
NjIyLDYgKzE2MjIsNyBAQCBIRUFERVJTICs9IFwKICAgICBkb20vRE9NSW1wbGVtZW50YXRpb24u
aCBcCiAgICAgZG9tL0RPTVN0cmluZ0xpc3QuaCBcCiAgICAgZG9tL0RPTVN0cmluZ01hcC5oIFwK
KyAgICBkb20vRE9NVGltZVN0YW1wLmggXAogICAgIGRvbS9EYXRhc2V0RE9NU3RyaW5nTWFwLmgg
XAogICAgIGRvbS9EeW5hbWljTm9kZUxpc3QuaCBcCiAgICAgZG9tL0VkaXRpbmdUZXh0LmggXApk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvaiBiL1dlYkNv
cmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKaW5kZXggYjRlMjNiOTkwMDJjZWQwZTkx
MThlNzQyNTJmZDM3ZmQ2NjFmZmYwOC4uMmZhMjc2MzQxMDQ1NzM4MTk5NTFhNmNhNTRkMzExY2Q5
NTAzZmQ2ZCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJv
agorKysgYi9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCkBAIC00MTkyMCw2
ICs0MTkyMCwxMCBAQAogCQkJCT4NCiAJCQk8L0ZpbGU+DQogCQkJPEZpbGUNCisJCQkJUmVsYXRp
dmVQYXRoPSIuLlxkb21cRE9NVGltZVN0YW1wLmgiDQorCQkJCT4NCisJCQk8L0ZpbGU+DQorCQkJ
CTxGaWxlDQogCQkJCVJlbGF0aXZlUGF0aD0iLi5cZG9tXER5bmFtaWNOb2RlTGlzdC5jcHAiDQog
CQkJCT4NCiAJCQkJPEZpbGVDb25maWd1cmF0aW9uDQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagppbmRleCBkNzM3MzFjMGJkMWFmMjdkMGNhYjdjODVkNWE4OGU4YzYy
OTYzNmNkLi5hYTZiNTY4ODM4MmRiZDQ4YzExZDlmYTQxOWQxYjM1MDVlYWQzM2NjIDEwMDY0NAot
LS0gYS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9XZWJD
b3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMzYsNiArMzYsNyBAQAog
CQkwMDE0NjI4QTEwM0NEMURFMDAwQjIwREIgLyogT3JpZ2luQWNjZXNzRW50cnkuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDAxNDYyODgxMDNDRDFE
RTAwMEIyMERCIC8qIE9yaWdpbkFjY2Vzc0VudHJ5LmNwcCAqLzsgfTsKIAkJMDAxNDYyOEIxMDND
RDFERTAwMEIyMERCIC8qIE9yaWdpbkFjY2Vzc0VudHJ5LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwMDE0NjI4OTEwM0NEMURFMDAwQjIwREIgLyogT3Jp
Z2luQWNjZXNzRW50cnkuaCAqLzsgfTsKIAkJMDAzRjFGRUExMUU2QUI0MzAwODI1OEQ5IC8qIFVz
ZXJDb250ZW50VHlwZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDAwM0YxRkU5MTFFNkFCNDMwMDgyNThEOSAvKiBVc2VyQ29udGVudFR5cGVzLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMDVGRDY5RTAx
Mjg0NUQ0MzAwQjJCRUIzIC8qIERPTVRpbWVTdGFtcC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDVGRDY5REYxMjg0NUQ0MzAwQjJCRUIzIC8qIERPTVRp
bWVTdGFtcC5oICovOyB9OwogCQkwNjAyN0NBRDBCMUNCRkMwMDA4ODRCMkQgLyogQ29udGV4dE1l
bnVJdGVtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAw
NjAyN0NBQzBCMUNCRkMwMDA4ODRCMkQgLyogQ29udGV4dE1lbnVJdGVtLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMDYwMjdDQjMwQjFDQzAzRDAw
ODg0QjJEIC8qIENvbnRleHRNZW51SXRlbU1hYy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA2MDI3Q0IyMEIxQ0MwM0QwMDg4NEIyRCAvKiBDb250ZXh0
TWVudUl0ZW1NYWMubW0gKi87IH07CiAJCTA2MjI4Nzg0MEI0REIzMjIwMDBDMzRERiAvKiBGb2N1
c0RpcmVjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMDYyMjg3ODMwQjREQjMyMjAwMEMzNERGIC8qIEZvY3VzRGlyZWN0aW9uLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTYwNzYsNiArNjA3Nyw3
IEBACiAJCTAwMTQ2Mjg4MTAzQ0QxREUwMDBCMjBEQiAvKiBPcmlnaW5BY2Nlc3NFbnRyeS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBPcmlnaW5BY2Nlc3NFbnRyeS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTAwMTQ2Mjg5MTAzQ0QxREUwMDBCMjBE
QiAvKiBPcmlnaW5BY2Nlc3NFbnRyeS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBPcmlnaW5BY2Nlc3NFbnRyeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwMDNG
MUZFOTExRTZBQjQzMDA4MjU4RDkgLyogVXNlckNvbnRlbnRUeXBlcy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBVc2VyQ29udGVudFR5cGVzLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTA1RkQ2OURGMTI4NDVENDMwMEIyQkVCMyAvKiBET01UaW1lU3RhbXAuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NVGltZVN0YW1wLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA2MDI3Q0FDMEIxQ0JGQzAwMDg4NEIyRCAvKiBDb250ZXh0
TWVudUl0ZW0uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENvbnRleHRNZW51
SXRlbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNjAyN0NCMjBCMUNDMDNEMDA4
ODRCMkQgLyogQ29udGV4dE1lbnVJdGVtTWFjLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
Lm9iamNwcDsgcGF0aCA9IENvbnRleHRNZW51SXRlbU1hYy5tbTsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJMDYyMjg3ODMwQjREQjMyMjAwMEMzNERGIC8qIEZvY3VzRGlyZWN0aW9uLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGb2N1c0RpcmVjdGlvbi5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTY2MDksNyArMTY2MTEsNiBAQAogCQlCMkEwMTU5
MTBBRjZDRDUzMDA2QkNFMEUgLyogZ3JhcGhpY3MgKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsK
IAkJCWNoaWxkcmVuID0gKAotCQkJCTZFNjdEMkE4MTI4MEU4QkQwMDg3NThGNyAvKiBFeHRlbnNp
b25zM0QuaCAqLywKIAkJCQlCMjc1MzUyOTBCMDUzODE0MDAyQ0U2NEYgLyogY2cgKi8sCiAJCQkJ
QjUzMjBENjgxMjJBMjRFOTAwMkQxNDQwIC8qIGNvY29hICovLAogCQkJCUE3NUU4QjdGMEUxREUy
QjAwMDdGMjQ4MSAvKiBmaWx0ZXJzICovLApAQCAtMTY2MjYsNiArMTY2MjcsNyBAQAogCQkJCUIy
NzUzNTM5MEIwNTM4MTQwMDJDRTY0RiAvKiBDb2xvci5oICovLAogCQkJCTkzODJERjU3MTBBOEQ1
QzkwMDkyNTY1MiAvKiBDb2xvclNwYWNlLmggKi8sCiAJCQkJQThDQjQxMDIwRTg1QjhBNTAwMzJD
NEYwIC8qIERhc2hBcnJheS5oICovLAorCQkJCTZFNjdEMkE4MTI4MEU4QkQwMDg3NThGNyAvKiBF
eHRlbnNpb25zM0QuaCAqLywKIAkJCQlCMjc1MzUzQTBCMDUzODE0MDAyQ0U2NEYgLyogRmxvYXRQ
b2ludC5jcHAgKi8sCiAJCQkJQjI3NTM1M0IwQjA1MzgxNDAwMkNFNjRGIC8qIEZsb2F0UG9pbnQu
aCAqLywKIAkJCQlCMkUyN0M5RDBCMEYyQjA5MDBGMTdDN0IgLyogRmxvYXRQb2ludDNELmNwcCAq
LywKQEAgLTE4MjAyLDYgKzE4MjA0LDcgQEAKIAkJCQlCQzY0NjQwNzExRDdGMzA0MDA2NDU1QjAg
LyogRE9NU3RyaW5nTWFwLmNwcCAqLywKIAkJCQlCQzY0NjQwODExRDdGMzA0MDA2NDU1QjAgLyog
RE9NU3RyaW5nTWFwLmggKi8sCiAJCQkJQkM2NDY0NzkxMUQ4MDBDRDAwNjQ1NUIwIC8qIERPTVN0
cmluZ01hcC5pZGwgKi8sCisJCQkJMDVGRDY5REYxMjg0NUQ0MzAwQjJCRUIzIC8qIERPTVRpbWVT
dGFtcC5oICovLAogCQkJCUJDN0ZBNjFFMEQxRjBDQkQwMERCMjJBOSAvKiBEeW5hbWljTm9kZUxp
c3QuY3BwICovLAogCQkJCUJDN0ZBNjFGMEQxRjBDQkQwMERCMjJBOSAvKiBEeW5hbWljTm9kZUxp
c3QuaCAqLywKIAkJCQk2NTUwQjY5OTA5OURGMDI3MDA5MEQ3ODEgLyogRWRpdGluZ1RleHQuY3Bw
ICovLApAQCAtMTg2MjQsNiArMTg2MjcsNyBAQAogCQkJCUQ4QjYxNTJGMTAzMjQ5NTEwMEM4NTU0
QSAvKiBDb29raWUuaCBpbiBIZWFkZXJzICovLAogCQkJCTkzNTIwODgyMDlCRDQ1RTkwMEYyMDM4
RCAvKiBDb29raWVKYXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUZFNkZENDg4MEY2NzZFNTcwMDA5
Mjg3MyAvKiBDb29yZGluYXRlcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjhBNkE2RDUxMjdCMzM4
RDAwODY3M0JBIC8qIENvcnJlY3Rpb25QYW5lbEluZm8uaCBpbiBIZWFkZXJzICovLAogCQkJCUE4
MEU2RDA0MEExOTg5Q0EwMDdGQjhDNSAvKiBDb3VudGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlC
QzVFQjk3OTBFODIwNjkyMDBCMjU5NjUgLyogQ291bnRlckNvbnRlbnQuaCBpbiBIZWFkZXJzICov
LAogCQkJCUJDNUVCOTUxMEU4MjA1NkIwMEIyNTk2NSAvKiBDb3VudGVyRGlyZWN0aXZlcy5oIGlu
IEhlYWRlcnMgKi8sCkBAIC0xOTQ4Miw2ICsxOTQ4Niw3IEBACiAJCQkJRERFNjNFRDUwQjdENDVB
ODAwMjI2OTk4IC8qIERPTVRleHRFdmVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJODVFNzExRDkw
QUM1RDUzNTAwNTMyNzBGIC8qIERPTVRleHRJbnRlcm5hbC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
MTg4NjA0QjQwRjJFNjU0QTAwMEI2NDQzIC8qIERPTVRpbWVyLmggaW4gSGVhZGVycyAqLywKKwkJ
CQkwNUZENjlFMDEyODQ1RDQzMDBCMkJFQjMgLyogRE9NVGltZVN0YW1wLmggaW4gSGVhZGVycyAq
LywKIAkJCQk3NkZDMkIwQzEyMzcwREEwMDA2QTk5MUEgLyogRE9NVG9rZW5MaXN0LmggaW4gSGVh
ZGVycyAqLywKIAkJCQlCQzFBMzdCRTA5N0M3MTVGMDAxOUYzRDggLyogRE9NVHJhdmVyc2FsLmgg
aW4gSGVhZGVycyAqLywKIAkJCQk4NTUyNkNEMjBBQjBCN0Q5MDAwMzAyRUEgLyogRE9NVHJlZVdh
bGtlci5oIGluIEhlYWRlcnMgKi8sCkBAIC0xOTU1OCw2ICsxOTU2Myw4IEBACiAJCQkJQkM2MEQ4
RjMwRDJBMTFFMDAwQjk5MThGIC8qIEV4Y2VwdGlvbkJhc2UuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTkzNUZCQ0YyMDlCQTE0M0IwMEUyMzBCMSAvKiBFeGNlcHRpb25Db2RlLmggaW4gSGVhZGVycyAq
LywKIAkJCQkxNDhBRkRBNTBBRjU4MzYwMDA4Q0M3MDAgLyogRXhjZXB0aW9uSGFuZGxlcnMuaCBp
biBIZWFkZXJzICovLAorCQkJCTZFNjdEMkE5MTI4MEU4QkQwMDg3NThGNyAvKiBFeHRlbnNpb25z
M0QuaCBpbiBIZWFkZXJzICovLAorCQkJCTZFNjdEMkE3MTI4MEU4QTQwMDg3NThGNyAvKiBFeHRl
bnNpb25zM0RPcGVuR0wuaCBpbiBIZWFkZXJzICovLAogCQkJCUE3NUU4Qjg5MEUxREUyRDYwMDdG
MjQ4MSAvKiBGRUJsZW5kLmggaW4gSGVhZGVycyAqLywKIAkJCQlBNzVFOEI4QjBFMURFMkQ2MDA3
RjI0ODEgLyogRkVDb2xvck1hdHJpeC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTc1RThCOEQwRTFE
RTJENjAwN0YyNDgxIC8qIEZFQ29tcG9uZW50VHJhbnNmZXIuaCBpbiBIZWFkZXJzICovLApAQCAt
MjExODUsNiArMjExOTIsNyBAQAogCQkJCUE3RDIwRjZEMTA3RjQzOEIwMEE4MDM5MiAvKiBXZWJH
TEFjdGl2ZUluZm8uaCBpbiBIZWFkZXJzICovLAogCQkJCTQ5QzdCOUM5MTA0MkQzMkYwMDA5RDQ0
NyAvKiBXZWJHTEJ1ZmZlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNkU0RTkxQUYxMEY3RkIzMTAw
QTI3NzlDIC8qIFdlYkdMQ29udGV4dEF0dHJpYnV0ZXMuaCBpbiBIZWFkZXJzICovLAorCQkJCTkz
RjZGMUVFMTI3RjcwQjEwMDU1Q0IwNiAvKiBXZWJHTENvbnRleHRFdmVudC5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJNDlDN0I5Q0YxMDQyRDMyRjAwMDlENDQ3IC8qIFdlYkdMRnJhbWVidWZmZXIuaCBp
biBIZWFkZXJzICovLAogCQkJCTZFNDdFNjYxMTBCNzk0NEIwMEIxODZDOCAvKiBXZWJHTEdldElu
Zm8uaCBpbiBIZWFkZXJzICovLAogCQkJCTQ5RkZCRjNGMTFDOTNFRTMwMDZBNzExOCAvKiBXZWJH
TExheWVyLmggaW4gSGVhZGVycyAqLywKQEAgLTIxMzA5LDEwICsyMTMxNyw2IEBACiAJCQkJOTNG
MTk5RUQwODI0NUU1OTAwMUU5QUJDIC8qIFhTTFRQcm9jZXNzb3IuaCBpbiBIZWFkZXJzICovLAog
CQkJCUUxQkU1MTJFMENGNkM1MTIwMDJFQTk1OSAvKiBYU0xUVW5pY29kZVNvcnQuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTk3REQ0RDg3MEZERjRENkUwMEVDRjlBNCAvKiBYU1NBdWRpdG9yLmggaW4g
SGVhZGVycyAqLywKLQkJCQk2RTY3RDJBNzEyODBFOEE0MDA4NzU4RjcgLyogRXh0ZW5zaW9uczNE
T3BlbkdMLmggaW4gSGVhZGVycyAqLywKLQkJCQk2RTY3RDJBOTEyODBFOEJEMDA4NzU4RjcgLyog
RXh0ZW5zaW9uczNELmggaW4gSGVhZGVycyAqLywKLQkJCQk5M0Y2RjFFRTEyN0Y3MEIxMDA1NUNC
MDYgLyogV2ViR0xDb250ZXh0RXZlbnQuaCBpbiBIZWFkZXJzICovLAotCQkJCUI4QTZBNkQ1MTI3
QjMzOEQwMDg2NzNCQSAvKiBDb3JyZWN0aW9uUGFuZWxJbmZvLmggaW4gSGVhZGVycyAqLywKIAkJ
CSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKQEAg
LTIxMzcyLDcgKzIxMzc2LDYgQEAKIAkJCWlzYSA9IFBCWFByb2plY3Q7CiAJCQlidWlsZENvbmZp
Z3VyYXRpb25MaXN0ID0gMTQ5QzI4NDMwODkwMkIxMTAwOEE5RUZDIC8qIEJ1aWxkIGNvbmZpZ3Vy
YXRpb24gbGlzdCBmb3IgUEJYUHJvamVjdCAiV2ViQ29yZSIgKi87CiAJCQljb21wYXRpYmlsaXR5
VmVyc2lvbiA9ICJYY29kZSAyLjQiOwotCQkJZGV2ZWxvcG1lbnRSZWdpb24gPSBFbmdsaXNoOwog
CQkJaGFzU2Nhbm5lZEZvckVuY29kaW5ncyA9IDE7CiAJCQlrbm93blJlZ2lvbnMgPSAoCiAJCQkJ
RW5nbGlzaCwKQEAgLTIyMTk5LDYgKzIyMjAyLDcgQEAKIAkJCQlCQzYwRDhGMjBEMkExMUUwMDBC
OTkxOEYgLyogRXhjZXB0aW9uQmFzZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5MzgzMUI1NzBE
MDg3RDYwMDBFNUM5ODQgLyogRXhjZXB0aW9uQ29kZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkx
NDhBRkRBNjBBRjU4MzYwMDA4Q0M3MDAgLyogRXhjZXB0aW9uSGFuZGxlcnMubW0gaW4gU291cmNl
cyAqLywKKwkJCQk2RTY3RDJBNjEyODBFOEE0MDA4NzU4RjcgLyogRXh0ZW5zaW9uczNET3BlbkdM
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE3NUU4Qjg4MEUxREUyRDYwMDdGMjQ4MSAvKiBGRUJs
ZW5kLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE3NUU4QjhBMEUxREUyRDYwMDdGMjQ4MSAvKiBG
RUNvbG9yTWF0cml4LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE3NUU4QjhDMEUxREUyRDYwMDdG
MjQ4MSAvKiBGRUNvbXBvbmVudFRyYW5zZmVyLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMjM3NjMs
NiArMjM3NjcsNyBAQAogCQkJCUJDNkRBREZBMEExOTYwMkIwMEU1Q0QxNCAvKiBXZWJGb250Q2Fj
aGUubW0gaW4gU291cmNlcyAqLywKIAkJCQk0OUM3QjlDODEwNDJEMzJGMDAwOUQ0NDcgLyogV2Vi
R0xCdWZmZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNkU0RTkxQUUxMEY3RkIzMTAwQTI3NzlD
IC8qIFdlYkdMQ29udGV4dEF0dHJpYnV0ZXMuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJOTNGNkYx
RUQxMjdGNzBCMTAwNTVDQjA2IC8qIFdlYkdMQ29udGV4dEV2ZW50LmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCTQ5QzdCOUNFMTA0MkQzMkYwMDA5RDQ0NyAvKiBXZWJHTEZyYW1lYnVmZmVyLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCTZFNDdFNjYwMTBCNzk0NEIwMEIxODZDOCAvKiBXZWJHTEdldElu
Zm8uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNDlGRkJGNDAxMUM5M0VFMzAwNkE3MTE4IC8qIFdl
YkdMTGF5ZXIubW0gaW4gU291cmNlcyAqLywKQEAgLTIzODc4LDggKzIzODgzLDYgQEAKIAkJCQk5
M0YxOUIwNTA4MjQ1RTU5MDAxRTlBQkMgLyogWFNMVFByb2Nlc3NvckxpYnhzbHQuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJRTFCRTUxMkQwQ0Y2QzUxMjAwMkVBOTU5IC8qIFhTTFRVbmljb2RlU29y
dC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5N0RENEQ4NjBGREY0RDZFMDBFQ0Y5QTQgLyogWFNT
QXVkaXRvci5jcHAgaW4gU291cmNlcyAqLywKLQkJCQk2RTY3RDJBNjEyODBFOEE0MDA4NzU4Rjcg
LyogRXh0ZW5zaW9uczNET3BlbkdMLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCTkzRjZGMUVEMTI3
RjcwQjEwMDU1Q0IwNiAvKiBXZWJHTENvbnRleHRFdmVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvZG9tL0RPTVRpbWVTdGFtcC5oIGIvV2ViQ29yZS9kb20vRE9NVGlt
ZVN0YW1wLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uZmY2MTUyMDVjODNmZWEyNDYwMTAzNjNlYTZkMjkwYTFlYjJh
MGFjMQotLS0gL2Rldi9udWxsCisrKyBiL1dlYkNvcmUvZG9tL0RPTVRpbWVTdGFtcC5oCkBAIC0w
LDAgKzEsNTAgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1l
dDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
cgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBv
ZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBi
ZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRo
aXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMg
QU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJU
SUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZ
UklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqLworCisjaWZuZGVmIERPTVRpbWVTdGFtcF9oCisjZGVmaW5lIERPTVRpbWVTdGFtcF9o
CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKwordHlwZWRlZiB1bnNpZ25lZCBsb25nIGxvbmcgRE9N
VGltZVN0YW1wOworCitpbmxpbmUgRE9NVGltZVN0YW1wIGNvbnZlcnRTZWNvbmRzVG9ET01UaW1l
U3RhbXAoZG91YmxlIHNlY29uZHMpCit7CisgICAgcmV0dXJuIHN0YXRpY19jYXN0PERPTVRpbWVT
dGFtcD4oc2Vjb25kcyAqIDEwMDAuMCk7Cit9CisKK2lubGluZSBkb3VibGUgY29udmVydERPTVRp
bWVTdGFtcFRvU2Vjb25kcyhET01UaW1lU3RhbXAgbWlsbGlzZWNvbmRzKQoreworICAgIHJldHVy
biBtaWxsaXNlY29uZHMgLyAxMDAwLjA7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKwor
I2VuZGlmIC8vIERPTVRpbWVTdGFtcF9oCmRpZmYgLS1naXQgYS9XZWJDb3JlL2RvbS9FdmVudC5j
cHAgYi9XZWJDb3JlL2RvbS9FdmVudC5jcHAKaW5kZXggOTI5M2E5YTc0Y2E4NWViYzQwYTdmMWYx
MjEyYWQ0NGJmODM0ZDUzOS4uMDUxNWZlN2ZhZTgzNTAwZjg3N2Q5NjJmOWQwNmViZjNkOGNmNTI3
YSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9kb20vRXZlbnQuY3BwCisrKyBiL1dlYkNvcmUvZG9tL0V2
ZW50LmNwcApAQCAtMzksNyArMzksNyBAQCBFdmVudDo6RXZlbnQoKQogICAgICwgbV9jYW5jZWxC
dWJibGUoZmFsc2UpCiAgICAgLCBtX2V2ZW50UGhhc2UoMCkKICAgICAsIG1fY3VycmVudFRhcmdl
dCgwKQotICAgICwgbV9jcmVhdGVUaW1lKHN0YXRpY19jYXN0PERPTVRpbWVTdGFtcD4oY3VycmVu
dFRpbWUoKSAqIDEwMDAuMCkpCisgICAgLCBtX2NyZWF0ZVRpbWUoY29udmVydFNlY29uZHNUb0RP
TVRpbWVTdGFtcChjdXJyZW50VGltZSgpKSkKIHsKIH0KIApAQCAtNTQsNyArNTQsNyBAQCBFdmVu
dDo6RXZlbnQoY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUsIGJvb2wgY2FuQnViYmxlQXJn
LCBib29sIGNhbmNlbGFibGVBcgogICAgICwgbV9jYW5jZWxCdWJibGUoZmFsc2UpCiAgICAgLCBt
X2V2ZW50UGhhc2UoMCkKICAgICAsIG1fY3VycmVudFRhcmdldCgwKQotICAgICwgbV9jcmVhdGVU
aW1lKHN0YXRpY19jYXN0PERPTVRpbWVTdGFtcD4oY3VycmVudFRpbWUoKSAqIDEwMDAuMCkpCisg
ICAgLCBtX2NyZWF0ZVRpbWUoY29udmVydFNlY29uZHNUb0RPTVRpbWVTdGFtcChjdXJyZW50VGlt
ZSgpKSkKIHsKIH0KIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9kb20vRXZlbnQuaCBiL1dlYkNvcmUv
ZG9tL0V2ZW50LmgKaW5kZXggODJhYzhlY2IzNTdiMTAyZGVhODQ5NzIxYzJkZDNjNGNmMjVlYzQ4
MC4uYzhmZDIxZTRjNjE5N2ZiNGYzM2FmMDY0MzBhZTE5OGRkMDcxZWQzYyAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9kb20vRXZlbnQuaAorKysgYi9XZWJDb3JlL2RvbS9FdmVudC5oCkBAIC0yNCw2ICsy
NCw3IEBACiAjaWZuZGVmIEV2ZW50X2gKICNkZWZpbmUgRXZlbnRfaAogCisjaW5jbHVkZSAiRE9N
VGltZVN0YW1wLmgiCiAjaW5jbHVkZSAiRXZlbnRUYXJnZXQuaCIKICNpbmNsdWRlIDx3dGYvUmVm
Q291bnRlZC5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L0F0b21pY1N0cmluZy5oPgpAQCAtMzIsOSAr
MzMsNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKICAgICBjbGFzcyBDbGlwYm9hcmQ7CiAKLSAg
ICAvLyBGSVhNRTogdGhpcyBzaG91bGQgcHJvYmFibHkgZGVmaW5lZCBlbHNld2hlcmUuCi0gICAg
dHlwZWRlZiB1bnNpZ25lZCBsb25nIGxvbmcgRE9NVGltZVN0YW1wOwotCiAgICAgY2xhc3MgRXZl
bnQgOiBwdWJsaWMgUmVmQ291bnRlZDxFdmVudD4gewogICAgIHB1YmxpYzoKICAgICAgICAgZW51
bSBQaGFzZVR5cGUgeyAKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGFnZS9HZW9sb2NhdGlvbi5jcHAg
Yi9XZWJDb3JlL3BhZ2UvR2VvbG9jYXRpb24uY3BwCmluZGV4IGQ1Mjc3ZTAwNzhlYjZiMmIzNmFk
YTRjOTZhNmE4OTlkYWYyZTNhNjguLmJlZDhmYjRjY2FlNDhiYzZhZmRhMjQ5OTIyODY3MGZjMjhi
YTIwNTQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGFnZS9HZW9sb2NhdGlvbi5jcHAKKysrIGIvV2Vi
Q29yZS9wYWdlL0dlb2xvY2F0aW9uLmNwcApAQCAtMzkwLDcgKzM5MCw3IEBAIGJvb2wgR2VvbG9j
YXRpb246OmhhdmVTdWl0YWJsZUNhY2hlZFBvc2l0aW9uKFBvc2l0aW9uT3B0aW9ucyogb3B0aW9u
cykKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgaWYgKCFvcHRpb25zLT5tYXhpbXVtQWdlKCkp
CiAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBET01UaW1lU3RhbXAgY3VycmVudFRpbWVNaWxs
aXMgPSBjdXJyZW50VGltZSgpICogMTAwMC4wOworICAgIERPTVRpbWVTdGFtcCBjdXJyZW50VGlt
ZU1pbGxpcyA9IGNvbnZlcnRTZWNvbmRzVG9ET01UaW1lU3RhbXAoY3VycmVudFRpbWUoKSk7CiAg
ICAgcmV0dXJuIG1fcG9zaXRpb25DYWNoZS0+Y2FjaGVkUG9zaXRpb24oKS0+dGltZXN0YW1wKCkg
PiBjdXJyZW50VGltZU1pbGxpcyAtIG9wdGlvbnMtPm1heGltdW1BZ2UoKTsKIH0KIApkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9hbmRyb2lkL0dlb2xvY2F0aW9uU2VydmljZUFuZHJvaWQu
Y3BwIGIvV2ViQ29yZS9wbGF0Zm9ybS9hbmRyb2lkL0dlb2xvY2F0aW9uU2VydmljZUFuZHJvaWQu
Y3BwCmluZGV4IGQ0NGIzZjAwMzViMDdhZjNlZWE2ODdkNjdlZjBkZDU1MTVlMDNiNDYuLjhkYzNi
NDUwYTYyZGJlYTQwNjk4ZGFmZjc3YmMwMzZjMmM4NTAxZTkgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
cGxhdGZvcm0vYW5kcm9pZC9HZW9sb2NhdGlvblNlcnZpY2VBbmRyb2lkLmNwcAorKysgYi9XZWJD
b3JlL3BsYXRmb3JtL2FuZHJvaWQvR2VvbG9jYXRpb25TZXJ2aWNlQW5kcm9pZC5jcHAKQEAgLTE3
MSw4ICsxNzEsOCBAQCBib29sIEdlb2xvY2F0aW9uU2VydmljZUFuZHJvaWQ6OmlzUG9zaXRpb25N
b3JlQWNjdXJhdGUoR2VvcG9zaXRpb24qIHBvc2l0aW9uMSwgRwogYm9vbCBHZW9sb2NhdGlvblNl
cnZpY2VBbmRyb2lkOjppc1Bvc2l0aW9uTW9yZVRpbWVseShHZW9wb3NpdGlvbiogcG9zaXRpb24x
LCBHZW9wb3NpdGlvbiogcG9zaXRpb24yKQogewogICAgIEFTU0VSVChwb3NpdGlvbjEgJiYgcG9z
aXRpb24yKTsKLSAgICBET01UaW1lU3RhbXAgY3VycmVudFRpbWVNaWxsaXMgPSBXVEY6OmN1cnJl
bnRUaW1lKCkgKiAxMDAwLjA7Ci0gICAgRE9NVGltZVN0YW1wIG1heGltdW1BZ2VNaWxsaXMgPSAx
MCAqIDYwICogMTAwMDsgIC8vIDEwIG1pbnV0ZXMKKyAgICBET01UaW1lU3RhbXAgY3VycmVudFRp
bWVNaWxsaXMgPSBjb252ZXJ0U2Vjb25kc1RvRE9NVGltZVN0YW1wKFdURjo6Y3VycmVudFRpbWUo
KSk7CisgICAgRE9NVGltZVN0YW1wIG1heGltdW1BZ2VNaWxsaXMgPSBjb252ZXJ0U2Vjb25kc1Rv
RE9NVGltZVN0YW1wKDEwICogNjApOyAvLyAxMCBtaW51dGVzCiAgICAgcmV0dXJuIGN1cnJlbnRU
aW1lTWlsbGlzIC0gcG9zaXRpb24xLT50aW1lc3RhbXAoKSA+IG1heGltdW1BZ2VNaWxsaXM7CiB9
CiAKZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9XZWJLaXQvY2hyb21p
dW0vQ2hhbmdlTG9nCmluZGV4IDBlMGVhZDcwMTUxNGNmMjUzMjBhOWY2NDFhM2FhNDA3NTcyMDNj
YjAuLjVmNzBkZGMyNzllMzRhN2I2YzdjYWIxOGU3ZGEyNWQwM2IxZTMzOWQgMTAwNjQ0Ci0tLSBh
L1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDEzIEBACisyMDEwLTExLTA1ICBKb2huIEtub3R0ZW5iZWx0ICA8amtub3R0
ZW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIENvbnZlcnQgdG8gYW5kIGZyb20gRE9NVGltZVN0YW1wIHdpdGggY29udmVydGVy
IGZ1bmN0aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NDkwNjYKKworICAgICAgICAqIHNyYy9XZWJEYXRhU291cmNlSW1wbC5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYkRhdGFTb3VyY2VJbXBsOjp0cmlnZ2VyaW5nRXZlbnRUaW1lKToKKwogMjAx
MC0xMS0wNCAgdXNhaW5pICA8dXNhaW5pMDhAZ21haWwuY29tPgogCiAgICAgICAgIFJldmlld2Vk
IGJ5IEFudG9uaW8gR29tZXMuCmRpZmYgLS1naXQgYS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkRh
dGFTb3VyY2VJbXBsLmNwcCBiL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRGF0YVNvdXJjZUltcGwu
Y3BwCmluZGV4IGQ1YjFkNzk1NDg3NGJhNzliZDBjMzgxMGYzMjcwZjk3NzdlYjljZTAuLjY1MTQ3
ZmFjYmUzMTJhYzRjNTBlMDljOWNmMzAxOTM2MGY4MzdjYTggMTAwNjQ0Ci0tLSBhL1dlYktpdC9j
aHJvbWl1bS9zcmMvV2ViRGF0YVNvdXJjZUltcGwuY3BwCisrKyBiL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViRGF0YVNvdXJjZUltcGwuY3BwCkBAIC05Niw3ICs5Niw3IEBAIGRvdWJsZSBXZWJEYXRh
U291cmNlSW1wbDo6dHJpZ2dlcmluZ0V2ZW50VGltZSgpIGNvbnN0CiAgICAgICAgIHJldHVybiAw
LjA7CiAKICAgICAvLyBET01UaW1lU3RhbXAgdXNlcyB1bml0cyBvZiBtaWxsaXNlY29uZHMuCi0g
ICAgcmV0dXJuIHRyaWdnZXJpbmdBY3Rpb24oKS5ldmVudCgpLT50aW1lU3RhbXAoKSAvIDEwMDAu
MDsKKyAgICByZXR1cm4gY29udmVydERPTVRpbWVTdGFtcFRvU2Vjb25kcyh0cmlnZ2VyaW5nQWN0
aW9uKCkuZXZlbnQoKS0+dGltZVN0YW1wKCkpOwogfQogCiBXZWJEYXRhU291cmNlOjpFeHRyYURh
dGEqIFdlYkRhdGFTb3VyY2VJbXBsOjpleHRyYURhdGEoKSBjb25zdAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>73072</attachid>
            <date>2010-11-05 09:28:20 -0700</date>
            <delta_ts>2010-11-05 10:38:49 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-49066-20101105162817.patch</filename>
            <type>text/plain</type>
            <size>17841</size>
            <attacher name="John Knottenbelt">jknotten</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NjY0MTkwMzk5M2U5N2QxNGZmNjMwYjBlNTRhZDJlZDU5MDE3MzZkYS4uYWRlMjU3Yzk3YTA5ZDBi
ZWM0MmY4MDgxMWIyZmZlZDY5NGQwNDEzZSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNyBAQAorMjAxMC0xMS0wNSAgSm9o
biBLbm90dGVuYmVsdCAgPGprbm90dGVuQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDb252ZXJ0IHRvIGFuZCBmcm9tIERPTVRp
bWVTdGFtcCB3aXRoIGNvbnZlcnRlciBmdW5jdGlvbnMuCisgICAgICAgIFRoaXMgaXMgYSByZWZh
Y3RvcmluZyBvbmx5LCBjb3ZlcmVkIGJ5IGV4aXN0aW5nIGxheW91dCB0ZXN0cy4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ5MDY2IAorCisgICAgICAg
ICogR05VbWFrZWZpbGUuYW06CisgICAgICAgICogV2ViQ29yZS5neXBpOgorICAgICAgICAqIFdl
YkNvcmUucHJvOgorICAgICAgICAqIFdlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qOgorICAg
ICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBkb20v
RE9NVGltZVN0YW1wLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6Y29udmVydFNlY29uZHNU
b0RPTVRpbWVTdGFtcCk6CisgICAgICAgIChXZWJDb3JlOjpjb252ZXJ0RE9NVGltZVN0YW1wVG9T
ZWNvbmRzKToKKyAgICAgICAgKiBkb20vRXZlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RXZl
bnQ6OkV2ZW50KToKKyAgICAgICAgKiBkb20vRXZlbnQuaDoKKyAgICAgICAgKiBwYWdlL0dlb2xv
Y2F0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0aW9uOjpoYXZlU3VpdGFibGVD
YWNoZWRQb3NpdGlvbik6CisgICAgICAgICogcGxhdGZvcm0vYW5kcm9pZC9HZW9sb2NhdGlvblNl
cnZpY2VBbmRyb2lkLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0aW9uU2VydmljZUFu
ZHJvaWQ6OmlzUG9zaXRpb25Nb3JlVGltZWx5KToKKwogMjAxMC0xMS0wNSAgUGF2ZWwgRmVsZG1h
biAgPHBmZWxkbWFuQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBUaW1vdGh5
IEhhdGNoZXIuCmRpZmYgLS1naXQgYS9XZWJDb3JlL0dOVW1ha2VmaWxlLmFtIGIvV2ViQ29yZS9H
TlVtYWtlZmlsZS5hbQppbmRleCA2YjE4OWJjNTkwM2FiMWYxZTFiYzUyNWI3MDk3N2Y3N2VlNDQz
MzdmLi4wMWYzMTRkMTZkNjRmYzhhMTNhYmE5ZDE2ZmRmMjlhYmUwM2I4YTUyIDEwMDY0NAotLS0g
YS9XZWJDb3JlL0dOVW1ha2VmaWxlLmFtCisrKyBiL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0KQEAg
LTExMjIsNiArMTEyMiw3IEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJV2ViQ29yZS9kb20vRE9N
U3RyaW5nTGlzdC5oIFwKIAlXZWJDb3JlL2RvbS9ET01TdHJpbmdNYXAuY3BwIFwKIAlXZWJDb3Jl
L2RvbS9ET01TdHJpbmdNYXAuaCBcCisJV2ViQ29yZS9kb20vRE9NVGltZVN0YW1wLmggXAogCVdl
YkNvcmUvZG9tL0R5bmFtaWNOb2RlTGlzdC5jcHAgXAogCVdlYkNvcmUvZG9tL0R5bmFtaWNOb2Rl
TGlzdC5oIFwKIAlXZWJDb3JlL2RvbS9FZGl0aW5nVGV4dC5jcHAgXApkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9XZWJDb3JlLmd5cGkgYi9XZWJDb3JlL1dlYkNvcmUuZ3lwaQppbmRleCAxNWZhNDRiMzNm
MDIxNTczMDg5ODRkMWVhMjgwMzZiOTg4YmU0YWVhLi41ZDc4ZjU5Y2VjN2Y1NDdiN2NlMmQ1Mjc2
MTU1MmVkMjJkYTIwZGVmIDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQorKysgYi9X
ZWJDb3JlL1dlYkNvcmUuZ3lwaQpAQCAtMTE2NCw2ICsxMTY0LDcgQEAKICAgICAgICAgICAgICdk
b20vRE9NU3RyaW5nTGlzdC5oJywKICAgICAgICAgICAgICdkb20vRE9NU3RyaW5nTWFwLmNwcCcs
CiAgICAgICAgICAgICAnZG9tL0RPTVN0cmluZ01hcC5oJywKKyAgICAgICAgICAgICdkb20vRE9N
VGltZVN0YW1wLmgnLAogICAgICAgICAgICAgJ2RvbS9EYXRhc2V0RE9NU3RyaW5nTWFwLmNwcCcs
CiAgICAgICAgICAgICAnZG9tL0RhdGFzZXRET01TdHJpbmdNYXAuaCcsCiAgICAgICAgICAgICAn
ZG9tL0RlY29kZWREYXRhRG9jdW1lbnRQYXJzZXIuY3BwJywKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
V2ViQ29yZS5wcm8gYi9XZWJDb3JlL1dlYkNvcmUucHJvCmluZGV4IDE4ZjQwYzQxZTgyMzhjOTIz
Y2U5YzNiMmVjNzA5MGVkMGRkNjZiMjguLmVlYmY3YzMwZmM3YjUwMWJjNWMyMDQ0ZWQ1OGJmZTVk
ZGM0OGIxY2MgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS5wcm8KKysrIGIvV2ViQ29yZS9X
ZWJDb3JlLnBybwpAQCAtMTYyMiw2ICsxNjIyLDcgQEAgSEVBREVSUyArPSBcCiAgICAgZG9tL0RP
TUltcGxlbWVudGF0aW9uLmggXAogICAgIGRvbS9ET01TdHJpbmdMaXN0LmggXAogICAgIGRvbS9E
T01TdHJpbmdNYXAuaCBcCisgICAgZG9tL0RPTVRpbWVTdGFtcC5oIFwKICAgICBkb20vRGF0YXNl
dERPTVN0cmluZ01hcC5oIFwKICAgICBkb20vRHluYW1pY05vZGVMaXN0LmggXAogICAgIGRvbS9F
ZGl0aW5nVGV4dC5oIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29y
ZS52Y3Byb2ogYi9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCmluZGV4IGI0
ZTIzYjk5MDAyY2VkMGU5MTE4ZTc0MjUyZmQzN2ZkNjYxZmZmMDguLjJmYTI3NjM0MTA0NTczODE5
OTUxYTZjYTU0ZDMxMWNkOTUwM2ZkNmQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS52Y3By
b2ovV2ViQ29yZS52Y3Byb2oKKysrIGIvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZj
cHJvagpAQCAtNDE5MjAsNiArNDE5MjAsMTAgQEAKIAkJCQk+DQogCQkJPC9GaWxlPg0KIAkJCTxG
aWxlDQorCQkJCVJlbGF0aXZlUGF0aD0iLi5cZG9tXERPTVRpbWVTdGFtcC5oIg0KKwkJCQk+DQor
CQkJPC9GaWxlPg0KKwkJCQk8RmlsZQ0KIAkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGRvbVxEeW5hbWlj
Tm9kZUxpc3QuY3BwIg0KIAkJCQk+DQogCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KZGlmZiAtLWdp
dCBhL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvV2ViQ29yZS9X
ZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggZDczNzMxYzBiZDFhZjI3ZDBj
YWI3Yzg1ZDVhODhlOGM2Mjk2MzZjZC4uYWE2YjU2ODgzODJkYmQ0OGMxMWQ5ZmE0MTlkMWIzNTA1
ZWFkMzNjYyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKKysrIGIvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAg
LTM2LDYgKzM2LDcgQEAKIAkJMDAxNDYyOEExMDNDRDFERTAwMEIyMERCIC8qIE9yaWdpbkFjY2Vz
c0VudHJ5LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDAwMTQ2Mjg4MTAzQ0QxREUwMDBCMjBEQiAvKiBPcmlnaW5BY2Nlc3NFbnRyeS5jcHAgKi87IH07
CiAJCTAwMTQ2MjhCMTAzQ0QxREUwMDBCMjBEQiAvKiBPcmlnaW5BY2Nlc3NFbnRyeS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDAxNDYyODkxMDNDRDFE
RTAwMEIyMERCIC8qIE9yaWdpbkFjY2Vzc0VudHJ5LmggKi87IH07CiAJCTAwM0YxRkVBMTFFNkFC
NDMwMDgyNThEOSAvKiBVc2VyQ29udGVudFR5cGVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwMDNGMUZFOTExRTZBQjQzMDA4MjU4RDkgLyogVXNlckNv
bnRlbnRUeXBlcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTA1RkQ2OUUwMTI4NDVENDMwMEIyQkVCMyAvKiBET01UaW1lU3RhbXAuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA1RkQ2OURGMTI4NDVENDMw
MEIyQkVCMyAvKiBET01UaW1lU3RhbXAuaCAqLzsgfTsKIAkJMDYwMjdDQUQwQjFDQkZDMDAwODg0
QjJEIC8qIENvbnRleHRNZW51SXRlbS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMDYwMjdDQUMwQjFDQkZDMDAwODg0QjJEIC8qIENvbnRleHRNZW51SXRl
bS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTA2
MDI3Q0IzMEIxQ0MwM0QwMDg4NEIyRCAvKiBDb250ZXh0TWVudUl0ZW1NYWMubW0gaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNjAyN0NCMjBCMUNDMDNEMDA4
ODRCMkQgLyogQ29udGV4dE1lbnVJdGVtTWFjLm1tICovOyB9OwogCQkwNjIyODc4NDBCNERCMzIy
MDAwQzM0REYgLyogRm9jdXNEaXJlY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDA2MjI4NzgzMEI0REIzMjIwMDBDMzRERiAvKiBGb2N1c0RpcmVj
dGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBA
IC02MDc2LDYgKzYwNzcsNyBAQAogCQkwMDE0NjI4ODEwM0NEMURFMDAwQjIwREIgLyogT3JpZ2lu
QWNjZXNzRW50cnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gT3Jp
Z2luQWNjZXNzRW50cnkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwMDE0NjI4
OTEwM0NEMURFMDAwQjIwREIgLyogT3JpZ2luQWNjZXNzRW50cnkuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gT3JpZ2luQWNjZXNzRW50cnkuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJMDAzRjFGRTkxMUU2QUI0MzAwODI1OEQ5IC8qIFVzZXJDb250ZW50VHlwZXMu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVXNlckNvbnRlbnRUeXBlcy5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNUZENjlERjEyODQ1RDQzMDBCMkJFQjMgLyog
RE9NVGltZVN0YW1wLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERPTVRpbWVT
dGFtcC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNjAyN0NBQzBCMUNCRkMwMDA4
ODRCMkQgLyogQ29udGV4dE1lbnVJdGVtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBDb250ZXh0TWVudUl0ZW0uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDYw
MjdDQjIwQjFDQzAzRDAwODg0QjJEIC8qIENvbnRleHRNZW51SXRlbU1hYy5tbSAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBDb250ZXh0TWVudUl0ZW1NYWMubW07IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA2MjI4NzgzMEI0REIzMjIwMDBDMzRERiAvKiBG
b2N1c0RpcmVjdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRm9jdXNE
aXJlY3Rpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE2NjA5LDcgKzE2NjEx
LDYgQEAKIAkJQjJBMDE1OTEwQUY2Q0Q1MzAwNkJDRTBFIC8qIGdyYXBoaWNzICovID0gewogCQkJ
aXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKLQkJCQk2RTY3RDJBODEyODBFOEJEMDA4
NzU4RjcgLyogRXh0ZW5zaW9uczNELmggKi8sCiAJCQkJQjI3NTM1MjkwQjA1MzgxNDAwMkNFNjRG
IC8qIGNnICovLAogCQkJCUI1MzIwRDY4MTIyQTI0RTkwMDJEMTQ0MCAvKiBjb2NvYSAqLywKIAkJ
CQlBNzVFOEI3RjBFMURFMkIwMDA3RjI0ODEgLyogZmlsdGVycyAqLywKQEAgLTE2NjI2LDYgKzE2
NjI3LDcgQEAKIAkJCQlCMjc1MzUzOTBCMDUzODE0MDAyQ0U2NEYgLyogQ29sb3IuaCAqLywKIAkJ
CQk5MzgyREY1NzEwQThENUM5MDA5MjU2NTIgLyogQ29sb3JTcGFjZS5oICovLAogCQkJCUE4Q0I0
MTAyMEU4NUI4QTUwMDMyQzRGMCAvKiBEYXNoQXJyYXkuaCAqLywKKwkJCQk2RTY3RDJBODEyODBF
OEJEMDA4NzU4RjcgLyogRXh0ZW5zaW9uczNELmggKi8sCiAJCQkJQjI3NTM1M0EwQjA1MzgxNDAw
MkNFNjRGIC8qIEZsb2F0UG9pbnQuY3BwICovLAogCQkJCUIyNzUzNTNCMEIwNTM4MTQwMDJDRTY0
RiAvKiBGbG9hdFBvaW50LmggKi8sCiAJCQkJQjJFMjdDOUQwQjBGMkIwOTAwRjE3QzdCIC8qIEZs
b2F0UG9pbnQzRC5jcHAgKi8sCkBAIC0xODIwMiw2ICsxODIwNCw3IEBACiAJCQkJQkM2NDY0MDcx
MUQ3RjMwNDAwNjQ1NUIwIC8qIERPTVN0cmluZ01hcC5jcHAgKi8sCiAJCQkJQkM2NDY0MDgxMUQ3
RjMwNDAwNjQ1NUIwIC8qIERPTVN0cmluZ01hcC5oICovLAogCQkJCUJDNjQ2NDc5MTFEODAwQ0Qw
MDY0NTVCMCAvKiBET01TdHJpbmdNYXAuaWRsICovLAorCQkJCTA1RkQ2OURGMTI4NDVENDMwMEIy
QkVCMyAvKiBET01UaW1lU3RhbXAuaCAqLywKIAkJCQlCQzdGQTYxRTBEMUYwQ0JEMDBEQjIyQTkg
LyogRHluYW1pY05vZGVMaXN0LmNwcCAqLywKIAkJCQlCQzdGQTYxRjBEMUYwQ0JEMDBEQjIyQTkg
LyogRHluYW1pY05vZGVMaXN0LmggKi8sCiAJCQkJNjU1MEI2OTkwOTlERjAyNzAwOTBENzgxIC8q
IEVkaXRpbmdUZXh0LmNwcCAqLywKQEAgLTE4NjI0LDYgKzE4NjI3LDcgQEAKIAkJCQlEOEI2MTUy
RjEwMzI0OTUxMDBDODU1NEEgLyogQ29va2llLmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzUyMDg4
MjA5QkQ0NUU5MDBGMjAzOEQgLyogQ29va2llSmFyLmggaW4gSGVhZGVycyAqLywKIAkJCQlGRTZG
RDQ4ODBGNjc2RTU3MDAwOTI4NzMgLyogQ29vcmRpbmF0ZXMuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUI4QTZBNkQ1MTI3QjMzOEQwMDg2NzNCQSAvKiBDb3JyZWN0aW9uUGFuZWxJbmZvLmggaW4gSGVh
ZGVycyAqLywKIAkJCQlBODBFNkQwNDBBMTk4OUNBMDA3RkI4QzUgLyogQ291bnRlci5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJQkM1RUI5NzkwRTgyMDY5MjAwQjI1OTY1IC8qIENvdW50ZXJDb250ZW50
LmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzVFQjk1MTBFODIwNTZCMDBCMjU5NjUgLyogQ291bnRl
ckRpcmVjdGl2ZXMuaCBpbiBIZWFkZXJzICovLApAQCAtMTk0ODIsNiArMTk0ODYsNyBAQAogCQkJ
CURERTYzRUQ1MEI3RDQ1QTgwMDIyNjk5OCAvKiBET01UZXh0RXZlbnQuaCBpbiBIZWFkZXJzICov
LAogCQkJCTg1RTcxMUQ5MEFDNUQ1MzUwMDUzMjcwRiAvKiBET01UZXh0SW50ZXJuYWwuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTE4ODYwNEI0MEYyRTY1NEEwMDBCNjQ0MyAvKiBET01UaW1lci5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJMDVGRDY5RTAxMjg0NUQ0MzAwQjJCRUIzIC8qIERPTVRpbWVTdGFt
cC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNzZGQzJCMEMxMjM3MERBMDAwNkE5OTFBIC8qIERPTVRv
a2VuTGlzdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkMxQTM3QkUwOTdDNzE1RjAwMTlGM0Q4IC8q
IERPTVRyYXZlcnNhbC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJODU1MjZDRDIwQUIwQjdEOTAwMDMw
MkVBIC8qIERPTVRyZWVXYWxrZXIuaCBpbiBIZWFkZXJzICovLApAQCAtMTk1NTgsNiArMTk1NjMs
OCBAQAogCQkJCUJDNjBEOEYzMEQyQTExRTAwMEI5OTE4RiAvKiBFeGNlcHRpb25CYXNlLmggaW4g
SGVhZGVycyAqLywKIAkJCQk5MzVGQkNGMjA5QkExNDNCMDBFMjMwQjEgLyogRXhjZXB0aW9uQ29k
ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMTQ4QUZEQTUwQUY1ODM2MDAwOENDNzAwIC8qIEV4Y2Vw
dGlvbkhhbmRsZXJzLmggaW4gSGVhZGVycyAqLywKKwkJCQk2RTY3RDJBOTEyODBFOEJEMDA4NzU4
RjcgLyogRXh0ZW5zaW9uczNELmggaW4gSGVhZGVycyAqLywKKwkJCQk2RTY3RDJBNzEyODBFOEE0
MDA4NzU4RjcgLyogRXh0ZW5zaW9uczNET3BlbkdMLmggaW4gSGVhZGVycyAqLywKIAkJCQlBNzVF
OEI4OTBFMURFMkQ2MDA3RjI0ODEgLyogRkVCbGVuZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTc1
RThCOEIwRTFERTJENjAwN0YyNDgxIC8qIEZFQ29sb3JNYXRyaXguaCBpbiBIZWFkZXJzICovLAog
CQkJCUE3NUU4QjhEMEUxREUyRDYwMDdGMjQ4MSAvKiBGRUNvbXBvbmVudFRyYW5zZmVyLmggaW4g
SGVhZGVycyAqLywKQEAgLTIxMTg1LDYgKzIxMTkyLDcgQEAKIAkJCQlBN0QyMEY2RDEwN0Y0MzhC
MDBBODAzOTIgLyogV2ViR0xBY3RpdmVJbmZvLmggaW4gSGVhZGVycyAqLywKIAkJCQk0OUM3QjlD
OTEwNDJEMzJGMDAwOUQ0NDcgLyogV2ViR0xCdWZmZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTZF
NEU5MUFGMTBGN0ZCMzEwMEEyNzc5QyAvKiBXZWJHTENvbnRleHRBdHRyaWJ1dGVzLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk5M0Y2RjFFRTEyN0Y3MEIxMDA1NUNCMDYgLyogV2ViR0xDb250ZXh0RXZl
bnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTQ5QzdCOUNGMTA0MkQzMkYwMDA5RDQ0NyAvKiBXZWJH
TEZyYW1lYnVmZmVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk2RTQ3RTY2MTEwQjc5NDRCMDBCMTg2
QzggLyogV2ViR0xHZXRJbmZvLmggaW4gSGVhZGVycyAqLywKIAkJCQk0OUZGQkYzRjExQzkzRUUz
MDA2QTcxMTggLyogV2ViR0xMYXllci5oIGluIEhlYWRlcnMgKi8sCkBAIC0yMTMwOSwxMCArMjEz
MTcsNiBAQAogCQkJCTkzRjE5OUVEMDgyNDVFNTkwMDFFOUFCQyAvKiBYU0xUUHJvY2Vzc29yLmgg
aW4gSGVhZGVycyAqLywKIAkJCQlFMUJFNTEyRTBDRjZDNTEyMDAyRUE5NTkgLyogWFNMVFVuaWNv
ZGVTb3J0LmggaW4gSGVhZGVycyAqLywKIAkJCQk5N0RENEQ4NzBGREY0RDZFMDBFQ0Y5QTQgLyog
WFNTQXVkaXRvci5oIGluIEhlYWRlcnMgKi8sCi0JCQkJNkU2N0QyQTcxMjgwRThBNDAwODc1OEY3
IC8qIEV4dGVuc2lvbnMzRE9wZW5HTC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJNkU2N0QyQTkxMjgw
RThCRDAwODc1OEY3IC8qIEV4dGVuc2lvbnMzRC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJOTNGNkYx
RUUxMjdGNzBCMTAwNTVDQjA2IC8qIFdlYkdMQ29udGV4dEV2ZW50LmggaW4gSGVhZGVycyAqLywK
LQkJCQlCOEE2QTZENTEyN0IzMzhEMDA4NjczQkEgLyogQ29ycmVjdGlvblBhbmVsSW5mby5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkpOwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2lu
ZyA9IDA7CiAJCX07CkBAIC0yMTM3Miw3ICsyMTM3Niw2IEBACiAJCQlpc2EgPSBQQlhQcm9qZWN0
OwogCQkJYnVpbGRDb25maWd1cmF0aW9uTGlzdCA9IDE0OUMyODQzMDg5MDJCMTEwMDhBOUVGQyAv
KiBCdWlsZCBjb25maWd1cmF0aW9uIGxpc3QgZm9yIFBCWFByb2plY3QgIldlYkNvcmUiICovOwog
CQkJY29tcGF0aWJpbGl0eVZlcnNpb24gPSAiWGNvZGUgMi40IjsKLQkJCWRldmVsb3BtZW50UmVn
aW9uID0gRW5nbGlzaDsKIAkJCWhhc1NjYW5uZWRGb3JFbmNvZGluZ3MgPSAxOwogCQkJa25vd25S
ZWdpb25zID0gKAogCQkJCUVuZ2xpc2gsCkBAIC0yMjE5OSw2ICsyMjIwMiw3IEBACiAJCQkJQkM2
MEQ4RjIwRDJBMTFFMDAwQjk5MThGIC8qIEV4Y2VwdGlvbkJhc2UuY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJOTM4MzFCNTcwRDA4N0Q2MDAwRTVDOTg0IC8qIEV4Y2VwdGlvbkNvZGUuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJMTQ4QUZEQTYwQUY1ODM2MDAwOENDNzAwIC8qIEV4Y2VwdGlvbkhhbmRs
ZXJzLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNkU2N0QyQTYxMjgwRThBNDAwODc1OEY3IC8qIEV4
dGVuc2lvbnMzRE9wZW5HTC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBNzVFOEI4ODBFMURFMkQ2
MDA3RjI0ODEgLyogRkVCbGVuZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBNzVFOEI4QTBFMURF
MkQ2MDA3RjI0ODEgLyogRkVDb2xvck1hdHJpeC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBNzVF
OEI4QzBFMURFMkQ2MDA3RjI0ODEgLyogRkVDb21wb25lbnRUcmFuc2Zlci5jcHAgaW4gU291cmNl
cyAqLywKQEAgLTIzNzYzLDYgKzIzNzY3LDcgQEAKIAkJCQlCQzZEQURGQTBBMTk2MDJCMDBFNUNE
MTQgLyogV2ViRm9udENhY2hlLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJNDlDN0I5QzgxMDQyRDMy
RjAwMDlENDQ3IC8qIFdlYkdMQnVmZmVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTZFNEU5MUFF
MTBGN0ZCMzEwMEEyNzc5QyAvKiBXZWJHTENvbnRleHRBdHRyaWJ1dGVzLmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCTkzRjZGMUVEMTI3RjcwQjEwMDU1Q0IwNiAvKiBXZWJHTENvbnRleHRFdmVudC5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQk0OUM3QjlDRTEwNDJEMzJGMDAwOUQ0NDcgLyogV2ViR0xG
cmFtZWJ1ZmZlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk2RTQ3RTY2MDEwQjc5NDRCMDBCMTg2
QzggLyogV2ViR0xHZXRJbmZvLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTQ5RkZCRjQwMTFDOTNF
RTMwMDZBNzExOCAvKiBXZWJHTExheWVyLm1tIGluIFNvdXJjZXMgKi8sCkBAIC0yMzg3OCw4ICsy
Mzg4Myw2IEBACiAJCQkJOTNGMTlCMDUwODI0NUU1OTAwMUU5QUJDIC8qIFhTTFRQcm9jZXNzb3JM
aWJ4c2x0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUUxQkU1MTJEMENGNkM1MTIwMDJFQTk1OSAv
KiBYU0xUVW5pY29kZVNvcnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOTdERDREODYwRkRGNEQ2
RTAwRUNGOUE0IC8qIFhTU0F1ZGl0b3IuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNkU2N0QyQTYx
MjgwRThBNDAwODc1OEY3IC8qIEV4dGVuc2lvbnMzRE9wZW5HTC5jcHAgaW4gU291cmNlcyAqLywK
LQkJCQk5M0Y2RjFFRDEyN0Y3MEIxMDA1NUNCMDYgLyogV2ViR0xDb250ZXh0RXZlbnQuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkpOwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2lu
ZyA9IDA7CiAJCX07CmRpZmYgLS1naXQgYS9XZWJDb3JlL2RvbS9ET01UaW1lU3RhbXAuaCBiL1dl
YkNvcmUvZG9tL0RPTVRpbWVTdGFtcC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmZmNjE1MjA1YzgzZmVhMjQ2MDEw
MzYzZWE2ZDI5MGExZWIyYTBhYzEKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2RvbS9ET01U
aW1lU3RhbXAuaApAQCAtMCwwICsxLDUwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdv
b2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAq
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUK
KyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5l
aXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNv
bnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVy
aXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRl
biBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENP
UFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVE
IFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBET01UaW1lU3RhbXBfaAorI2RlZmlu
ZSBET01UaW1lU3RhbXBfaAorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3R5cGVkZWYgdW5zaWdu
ZWQgbG9uZyBsb25nIERPTVRpbWVTdGFtcDsKKworaW5saW5lIERPTVRpbWVTdGFtcCBjb252ZXJ0
U2Vjb25kc1RvRE9NVGltZVN0YW1wKGRvdWJsZSBzZWNvbmRzKQoreworICAgIHJldHVybiBzdGF0
aWNfY2FzdDxET01UaW1lU3RhbXA+KHNlY29uZHMgKiAxMDAwLjApOworfQorCitpbmxpbmUgZG91
YmxlIGNvbnZlcnRET01UaW1lU3RhbXBUb1NlY29uZHMoRE9NVGltZVN0YW1wIG1pbGxpc2Vjb25k
cykKK3sKKyAgICByZXR1cm4gbWlsbGlzZWNvbmRzIC8gMTAwMC4wOworfQorCit9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBET01UaW1lU3RhbXBfaApkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9kb20vRXZlbnQuY3BwIGIvV2ViQ29yZS9kb20vRXZlbnQuY3BwCmluZGV4IDkyOTNhOWE3
NGNhODVlYmM0MGE3ZjFmMTIxMmFkNDRiZjgzNGQ1MzkuLjA1MTVmZTdmYWU4MzUwMGY4NzdkOTYy
ZjlkMDZlYmYzZDhjZjUyN2EgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvZG9tL0V2ZW50LmNwcAorKysg
Yi9XZWJDb3JlL2RvbS9FdmVudC5jcHAKQEAgLTM5LDcgKzM5LDcgQEAgRXZlbnQ6OkV2ZW50KCkK
ICAgICAsIG1fY2FuY2VsQnViYmxlKGZhbHNlKQogICAgICwgbV9ldmVudFBoYXNlKDApCiAgICAg
LCBtX2N1cnJlbnRUYXJnZXQoMCkKLSAgICAsIG1fY3JlYXRlVGltZShzdGF0aWNfY2FzdDxET01U
aW1lU3RhbXA+KGN1cnJlbnRUaW1lKCkgKiAxMDAwLjApKQorICAgICwgbV9jcmVhdGVUaW1lKGNv
bnZlcnRTZWNvbmRzVG9ET01UaW1lU3RhbXAoY3VycmVudFRpbWUoKSkpCiB7CiB9CiAKQEAgLTU0
LDcgKzU0LDcgQEAgRXZlbnQ6OkV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBi
b29sIGNhbkJ1YmJsZUFyZywgYm9vbCBjYW5jZWxhYmxlQXIKICAgICAsIG1fY2FuY2VsQnViYmxl
KGZhbHNlKQogICAgICwgbV9ldmVudFBoYXNlKDApCiAgICAgLCBtX2N1cnJlbnRUYXJnZXQoMCkK
LSAgICAsIG1fY3JlYXRlVGltZShzdGF0aWNfY2FzdDxET01UaW1lU3RhbXA+KGN1cnJlbnRUaW1l
KCkgKiAxMDAwLjApKQorICAgICwgbV9jcmVhdGVUaW1lKGNvbnZlcnRTZWNvbmRzVG9ET01UaW1l
U3RhbXAoY3VycmVudFRpbWUoKSkpCiB7CiB9CiAKZGlmZiAtLWdpdCBhL1dlYkNvcmUvZG9tL0V2
ZW50LmggYi9XZWJDb3JlL2RvbS9FdmVudC5oCmluZGV4IDgyYWM4ZWNiMzU3YjEwMmRlYTg0OTcy
MWMyZGQzYzRjZjI1ZWM0ODAuLmM4ZmQyMWU0YzYxOTdmYjRmMzNhZjA2NDMwYWUxOThkZDA3MWVk
M2MgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvZG9tL0V2ZW50LmgKKysrIGIvV2ViQ29yZS9kb20vRXZl
bnQuaApAQCAtMjQsNiArMjQsNyBAQAogI2lmbmRlZiBFdmVudF9oCiAjZGVmaW5lIEV2ZW50X2gK
IAorI2luY2x1ZGUgIkRPTVRpbWVTdGFtcC5oIgogI2luY2x1ZGUgIkV2ZW50VGFyZ2V0LmgiCiAj
aW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9BdG9taWNTdHJp
bmcuaD4KQEAgLTMyLDkgKzMzLDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAgY2xhc3Mg
Q2xpcGJvYXJkOwogCi0gICAgLy8gRklYTUU6IHRoaXMgc2hvdWxkIHByb2JhYmx5IGRlZmluZWQg
ZWxzZXdoZXJlLgotICAgIHR5cGVkZWYgdW5zaWduZWQgbG9uZyBsb25nIERPTVRpbWVTdGFtcDsK
LQogICAgIGNsYXNzIEV2ZW50IDogcHVibGljIFJlZkNvdW50ZWQ8RXZlbnQ+IHsKICAgICBwdWJs
aWM6CiAgICAgICAgIGVudW0gUGhhc2VUeXBlIHsgCmRpZmYgLS1naXQgYS9XZWJDb3JlL3BhZ2Uv
R2VvbG9jYXRpb24uY3BwIGIvV2ViQ29yZS9wYWdlL0dlb2xvY2F0aW9uLmNwcAppbmRleCBkNTI3
N2UwMDc4ZWI2YjJiMzZhZGE0Yzk2YTZhODk5ZGFmMmUzYTY4Li5iZWQ4ZmI0Y2NhZTQ4YmM2YWZk
YTI0OTkyMjg2NzBmYzI4YmEyMDU0IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BhZ2UvR2VvbG9jYXRp
b24uY3BwCisrKyBiL1dlYkNvcmUvcGFnZS9HZW9sb2NhdGlvbi5jcHAKQEAgLTM5MCw3ICszOTAs
NyBAQCBib29sIEdlb2xvY2F0aW9uOjpoYXZlU3VpdGFibGVDYWNoZWRQb3NpdGlvbihQb3NpdGlv
bk9wdGlvbnMqIG9wdGlvbnMpCiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIGlmICghb3B0aW9u
cy0+bWF4aW11bUFnZSgpKQogICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgRE9NVGltZVN0YW1w
IGN1cnJlbnRUaW1lTWlsbGlzID0gY3VycmVudFRpbWUoKSAqIDEwMDAuMDsKKyAgICBET01UaW1l
U3RhbXAgY3VycmVudFRpbWVNaWxsaXMgPSBjb252ZXJ0U2Vjb25kc1RvRE9NVGltZVN0YW1wKGN1
cnJlbnRUaW1lKCkpOwogICAgIHJldHVybiBtX3Bvc2l0aW9uQ2FjaGUtPmNhY2hlZFBvc2l0aW9u
KCktPnRpbWVzdGFtcCgpID4gY3VycmVudFRpbWVNaWxsaXMgLSBvcHRpb25zLT5tYXhpbXVtQWdl
KCk7CiB9CiAKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vYW5kcm9pZC9HZW9sb2NhdGlv
blNlcnZpY2VBbmRyb2lkLmNwcCBiL1dlYkNvcmUvcGxhdGZvcm0vYW5kcm9pZC9HZW9sb2NhdGlv
blNlcnZpY2VBbmRyb2lkLmNwcAppbmRleCBkNDRiM2YwMDM1YjA3YWYzZWVhNjg3ZDY3ZWYwZGQ1
NTE1ZTAzYjQ2Li44ZGMzYjQ1MGE2MmRiZWE0MDY5OGRhZmY3N2JjMDM2YzJjODUwMWU5IDEwMDY0
NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL2FuZHJvaWQvR2VvbG9jYXRpb25TZXJ2aWNlQW5kcm9p
ZC5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9hbmRyb2lkL0dlb2xvY2F0aW9uU2VydmljZUFu
ZHJvaWQuY3BwCkBAIC0xNzEsOCArMTcxLDggQEAgYm9vbCBHZW9sb2NhdGlvblNlcnZpY2VBbmRy
b2lkOjppc1Bvc2l0aW9uTW9yZUFjY3VyYXRlKEdlb3Bvc2l0aW9uKiBwb3NpdGlvbjEsIEcKIGJv
b2wgR2VvbG9jYXRpb25TZXJ2aWNlQW5kcm9pZDo6aXNQb3NpdGlvbk1vcmVUaW1lbHkoR2VvcG9z
aXRpb24qIHBvc2l0aW9uMSwgR2VvcG9zaXRpb24qIHBvc2l0aW9uMikKIHsKICAgICBBU1NFUlQo
cG9zaXRpb24xICYmIHBvc2l0aW9uMik7Ci0gICAgRE9NVGltZVN0YW1wIGN1cnJlbnRUaW1lTWls
bGlzID0gV1RGOjpjdXJyZW50VGltZSgpICogMTAwMC4wOwotICAgIERPTVRpbWVTdGFtcCBtYXhp
bXVtQWdlTWlsbGlzID0gMTAgKiA2MCAqIDEwMDA7ICAvLyAxMCBtaW51dGVzCisgICAgRE9NVGlt
ZVN0YW1wIGN1cnJlbnRUaW1lTWlsbGlzID0gY29udmVydFNlY29uZHNUb0RPTVRpbWVTdGFtcChX
VEY6OmN1cnJlbnRUaW1lKCkpOworICAgIERPTVRpbWVTdGFtcCBtYXhpbXVtQWdlTWlsbGlzID0g
Y29udmVydFNlY29uZHNUb0RPTVRpbWVTdGFtcCgxMCAqIDYwKTsgLy8gMTAgbWludXRlcwogICAg
IHJldHVybiBjdXJyZW50VGltZU1pbGxpcyAtIHBvc2l0aW9uMS0+dGltZXN0YW1wKCkgPiBtYXhp
bXVtQWdlTWlsbGlzOwogfQogCmRpZmYgLS1naXQgYS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9n
IGIvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwppbmRleCAwZTBlYWQ3MDE1MTRjZjI1MzIwYTlm
NjQxYTNhYTQwNzU3MjAzY2IwLi41ZjcwZGRjMjc5ZTM0YTdiNmM3Y2FiMThlN2RhMjVkMDNiMWUz
MzlkIDEwMDY0NAotLS0gYS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1dlYktpdC9j
aHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxMC0xMS0wNSAgSm9obiBLbm90
dGVuYmVsdCAgPGprbm90dGVuQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDb252ZXJ0IHRvIGFuZCBmcm9tIERPTVRpbWVTdGFt
cCB3aXRoIGNvbnZlcnRlciBmdW5jdGlvbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTQ5MDY2CisKKyAgICAgICAgKiBzcmMvV2ViRGF0YVNvdXJjZUlt
cGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJEYXRhU291cmNlSW1wbDo6dHJpZ2dlcmluZ0V2
ZW50VGltZSk6CisKIDIwMTAtMTEtMDQgIHVzYWluaSAgPHVzYWluaTA4QGdtYWlsLmNvbT4KIAog
ICAgICAgICBSZXZpZXdlZCBieSBBbnRvbmlvIEdvbWVzLgpkaWZmIC0tZ2l0IGEvV2ViS2l0L2No
cm9taXVtL3NyYy9XZWJEYXRhU291cmNlSW1wbC5jcHAgYi9XZWJLaXQvY2hyb21pdW0vc3JjL1dl
YkRhdGFTb3VyY2VJbXBsLmNwcAppbmRleCBkNWIxZDc5NTQ4NzRiYTc5YmQwYzM4MTBmMzI3MGY5
Nzc3ZWI5Y2UwLi42NTE0N2ZhY2JlMzEyYWM0YzUwZTA5YzljZjMwMTkzNjBmODM3Y2E4IDEwMDY0
NAotLS0gYS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkRhdGFTb3VyY2VJbXBsLmNwcAorKysgYi9X
ZWJLaXQvY2hyb21pdW0vc3JjL1dlYkRhdGFTb3VyY2VJbXBsLmNwcApAQCAtOTYsNyArOTYsNyBA
QCBkb3VibGUgV2ViRGF0YVNvdXJjZUltcGw6OnRyaWdnZXJpbmdFdmVudFRpbWUoKSBjb25zdAog
ICAgICAgICByZXR1cm4gMC4wOwogCiAgICAgLy8gRE9NVGltZVN0YW1wIHVzZXMgdW5pdHMgb2Yg
bWlsbGlzZWNvbmRzLgotICAgIHJldHVybiB0cmlnZ2VyaW5nQWN0aW9uKCkuZXZlbnQoKS0+dGlt
ZVN0YW1wKCkgLyAxMDAwLjA7CisgICAgcmV0dXJuIGNvbnZlcnRET01UaW1lU3RhbXBUb1NlY29u
ZHModHJpZ2dlcmluZ0FjdGlvbigpLmV2ZW50KCktPnRpbWVTdGFtcCgpKTsKIH0KIAogV2ViRGF0
YVNvdXJjZTo6RXh0cmFEYXRhKiBXZWJEYXRhU291cmNlSW1wbDo6ZXh0cmFEYXRhKCkgY29uc3QK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>73079</attachid>
            <date>2010-11-05 10:38:55 -0700</date>
            <delta_ts>2010-11-08 07:35:47 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-49066-20101105173853.patch</filename>
            <type>text/plain</type>
            <size>17916</size>
            <attacher name="John Knottenbelt">jknotten</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NjY0MTkwMzk5M2U5N2QxNGZmNjMwYjBlNTRhZDJlZDU5MDE3MzZkYS4uYWRlMjU3Yzk3YTA5ZDBi
ZWM0MmY4MDgxMWIyZmZlZDY5NGQwNDEzZSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNyBAQAorMjAxMC0xMS0wNSAgSm9o
biBLbm90dGVuYmVsdCAgPGprbm90dGVuQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDb252ZXJ0IHRvIGFuZCBmcm9tIERPTVRp
bWVTdGFtcCB3aXRoIGNvbnZlcnRlciBmdW5jdGlvbnMuCisgICAgICAgIFRoaXMgaXMgYSByZWZh
Y3RvcmluZyBvbmx5LCBjb3ZlcmVkIGJ5IGV4aXN0aW5nIGxheW91dCB0ZXN0cy4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ5MDY2IAorCisgICAgICAg
ICogR05VbWFrZWZpbGUuYW06CisgICAgICAgICogV2ViQ29yZS5neXBpOgorICAgICAgICAqIFdl
YkNvcmUucHJvOgorICAgICAgICAqIFdlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qOgorICAg
ICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBkb20v
RE9NVGltZVN0YW1wLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6Y29udmVydFNlY29uZHNU
b0RPTVRpbWVTdGFtcCk6CisgICAgICAgIChXZWJDb3JlOjpjb252ZXJ0RE9NVGltZVN0YW1wVG9T
ZWNvbmRzKToKKyAgICAgICAgKiBkb20vRXZlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RXZl
bnQ6OkV2ZW50KToKKyAgICAgICAgKiBkb20vRXZlbnQuaDoKKyAgICAgICAgKiBwYWdlL0dlb2xv
Y2F0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0aW9uOjpoYXZlU3VpdGFibGVD
YWNoZWRQb3NpdGlvbik6CisgICAgICAgICogcGxhdGZvcm0vYW5kcm9pZC9HZW9sb2NhdGlvblNl
cnZpY2VBbmRyb2lkLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0aW9uU2VydmljZUFu
ZHJvaWQ6OmlzUG9zaXRpb25Nb3JlVGltZWx5KToKKwogMjAxMC0xMS0wNSAgUGF2ZWwgRmVsZG1h
biAgPHBmZWxkbWFuQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBUaW1vdGh5
IEhhdGNoZXIuCmRpZmYgLS1naXQgYS9XZWJDb3JlL0dOVW1ha2VmaWxlLmFtIGIvV2ViQ29yZS9H
TlVtYWtlZmlsZS5hbQppbmRleCA2YjE4OWJjNTkwM2FiMWYxZTFiYzUyNWI3MDk3N2Y3N2VlNDQz
MzdmLi4wMWYzMTRkMTZkNjRmYzhhMTNhYmE5ZDE2ZmRmMjlhYmUwM2I4YTUyIDEwMDY0NAotLS0g
YS9XZWJDb3JlL0dOVW1ha2VmaWxlLmFtCisrKyBiL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0KQEAg
LTExMjIsNiArMTEyMiw3IEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJV2ViQ29yZS9kb20vRE9N
U3RyaW5nTGlzdC5oIFwKIAlXZWJDb3JlL2RvbS9ET01TdHJpbmdNYXAuY3BwIFwKIAlXZWJDb3Jl
L2RvbS9ET01TdHJpbmdNYXAuaCBcCisJV2ViQ29yZS9kb20vRE9NVGltZVN0YW1wLmggXAogCVdl
YkNvcmUvZG9tL0R5bmFtaWNOb2RlTGlzdC5jcHAgXAogCVdlYkNvcmUvZG9tL0R5bmFtaWNOb2Rl
TGlzdC5oIFwKIAlXZWJDb3JlL2RvbS9FZGl0aW5nVGV4dC5jcHAgXApkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9XZWJDb3JlLmd5cGkgYi9XZWJDb3JlL1dlYkNvcmUuZ3lwaQppbmRleCAxNWZhNDRiMzNm
MDIxNTczMDg5ODRkMWVhMjgwMzZiOTg4YmU0YWVhLi41ZDc4ZjU5Y2VjN2Y1NDdiN2NlMmQ1Mjc2
MTU1MmVkMjJkYTIwZGVmIDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQorKysgYi9X
ZWJDb3JlL1dlYkNvcmUuZ3lwaQpAQCAtMTE2NCw2ICsxMTY0LDcgQEAKICAgICAgICAgICAgICdk
b20vRE9NU3RyaW5nTGlzdC5oJywKICAgICAgICAgICAgICdkb20vRE9NU3RyaW5nTWFwLmNwcCcs
CiAgICAgICAgICAgICAnZG9tL0RPTVN0cmluZ01hcC5oJywKKyAgICAgICAgICAgICdkb20vRE9N
VGltZVN0YW1wLmgnLAogICAgICAgICAgICAgJ2RvbS9EYXRhc2V0RE9NU3RyaW5nTWFwLmNwcCcs
CiAgICAgICAgICAgICAnZG9tL0RhdGFzZXRET01TdHJpbmdNYXAuaCcsCiAgICAgICAgICAgICAn
ZG9tL0RlY29kZWREYXRhRG9jdW1lbnRQYXJzZXIuY3BwJywKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
V2ViQ29yZS5wcm8gYi9XZWJDb3JlL1dlYkNvcmUucHJvCmluZGV4IDE4ZjQwYzQxZTgyMzhjOTIz
Y2U5YzNiMmVjNzA5MGVkMGRkNjZiMjguLmVlYmY3YzMwZmM3YjUwMWJjNWMyMDQ0ZWQ1OGJmZTVk
ZGM0OGIxY2MgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS5wcm8KKysrIGIvV2ViQ29yZS9X
ZWJDb3JlLnBybwpAQCAtMTYyMiw2ICsxNjIyLDcgQEAgSEVBREVSUyArPSBcCiAgICAgZG9tL0RP
TUltcGxlbWVudGF0aW9uLmggXAogICAgIGRvbS9ET01TdHJpbmdMaXN0LmggXAogICAgIGRvbS9E
T01TdHJpbmdNYXAuaCBcCisgICAgZG9tL0RPTVRpbWVTdGFtcC5oIFwKICAgICBkb20vRGF0YXNl
dERPTVN0cmluZ01hcC5oIFwKICAgICBkb20vRHluYW1pY05vZGVMaXN0LmggXAogICAgIGRvbS9F
ZGl0aW5nVGV4dC5oIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29y
ZS52Y3Byb2ogYi9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCmluZGV4IGI0
ZTIzYjk5MDAyY2VkMGU5MTE4ZTc0MjUyZmQzN2ZkNjYxZmZmMDguLjJmYTI3NjM0MTA0NTczODE5
OTUxYTZjYTU0ZDMxMWNkOTUwM2ZkNmQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS52Y3By
b2ovV2ViQ29yZS52Y3Byb2oKKysrIGIvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZj
cHJvagpAQCAtNDE5MjAsNiArNDE5MjAsMTAgQEAKIAkJCQk+DQogCQkJPC9GaWxlPg0KIAkJCTxG
aWxlDQorCQkJCVJlbGF0aXZlUGF0aD0iLi5cZG9tXERPTVRpbWVTdGFtcC5oIg0KKwkJCQk+DQor
CQkJPC9GaWxlPg0KKwkJCQk8RmlsZQ0KIAkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGRvbVxEeW5hbWlj
Tm9kZUxpc3QuY3BwIg0KIAkJCQk+DQogCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KZGlmZiAtLWdp
dCBhL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvV2ViQ29yZS9X
ZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggZDczNzMxYzBiZDFhZjI3ZDBj
YWI3Yzg1ZDVhODhlOGM2Mjk2MzZjZC4uYWE2YjU2ODgzODJkYmQ0OGMxMWQ5ZmE0MTlkMWIzNTA1
ZWFkMzNjYyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKKysrIGIvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAg
LTM2LDYgKzM2LDcgQEAKIAkJMDAxNDYyOEExMDNDRDFERTAwMEIyMERCIC8qIE9yaWdpbkFjY2Vz
c0VudHJ5LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDAwMTQ2Mjg4MTAzQ0QxREUwMDBCMjBEQiAvKiBPcmlnaW5BY2Nlc3NFbnRyeS5jcHAgKi87IH07
CiAJCTAwMTQ2MjhCMTAzQ0QxREUwMDBCMjBEQiAvKiBPcmlnaW5BY2Nlc3NFbnRyeS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDAxNDYyODkxMDNDRDFE
RTAwMEIyMERCIC8qIE9yaWdpbkFjY2Vzc0VudHJ5LmggKi87IH07CiAJCTAwM0YxRkVBMTFFNkFC
NDMwMDgyNThEOSAvKiBVc2VyQ29udGVudFR5cGVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwMDNGMUZFOTExRTZBQjQzMDA4MjU4RDkgLyogVXNlckNv
bnRlbnRUeXBlcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTA1RkQ2OUUwMTI4NDVENDMwMEIyQkVCMyAvKiBET01UaW1lU3RhbXAuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA1RkQ2OURGMTI4NDVENDMw
MEIyQkVCMyAvKiBET01UaW1lU3RhbXAuaCAqLzsgfTsKIAkJMDYwMjdDQUQwQjFDQkZDMDAwODg0
QjJEIC8qIENvbnRleHRNZW51SXRlbS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMDYwMjdDQUMwQjFDQkZDMDAwODg0QjJEIC8qIENvbnRleHRNZW51SXRl
bS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTA2
MDI3Q0IzMEIxQ0MwM0QwMDg4NEIyRCAvKiBDb250ZXh0TWVudUl0ZW1NYWMubW0gaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNjAyN0NCMjBCMUNDMDNEMDA4
ODRCMkQgLyogQ29udGV4dE1lbnVJdGVtTWFjLm1tICovOyB9OwogCQkwNjIyODc4NDBCNERCMzIy
MDAwQzM0REYgLyogRm9jdXNEaXJlY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDA2MjI4NzgzMEI0REIzMjIwMDBDMzRERiAvKiBGb2N1c0RpcmVj
dGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBA
IC02MDc2LDYgKzYwNzcsNyBAQAogCQkwMDE0NjI4ODEwM0NEMURFMDAwQjIwREIgLyogT3JpZ2lu
QWNjZXNzRW50cnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gT3Jp
Z2luQWNjZXNzRW50cnkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwMDE0NjI4
OTEwM0NEMURFMDAwQjIwREIgLyogT3JpZ2luQWNjZXNzRW50cnkuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gT3JpZ2luQWNjZXNzRW50cnkuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJMDAzRjFGRTkxMUU2QUI0MzAwODI1OEQ5IC8qIFVzZXJDb250ZW50VHlwZXMu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVXNlckNvbnRlbnRUeXBlcy5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNUZENjlERjEyODQ1RDQzMDBCMkJFQjMgLyog
RE9NVGltZVN0YW1wLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERPTVRpbWVT
dGFtcC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNjAyN0NBQzBCMUNCRkMwMDA4
ODRCMkQgLyogQ29udGV4dE1lbnVJdGVtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBDb250ZXh0TWVudUl0ZW0uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDYw
MjdDQjIwQjFDQzAzRDAwODg0QjJEIC8qIENvbnRleHRNZW51SXRlbU1hYy5tbSAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBDb250ZXh0TWVudUl0ZW1NYWMubW07IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA2MjI4NzgzMEI0REIzMjIwMDBDMzRERiAvKiBG
b2N1c0RpcmVjdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRm9jdXNE
aXJlY3Rpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE2NjA5LDcgKzE2NjEx
LDYgQEAKIAkJQjJBMDE1OTEwQUY2Q0Q1MzAwNkJDRTBFIC8qIGdyYXBoaWNzICovID0gewogCQkJ
aXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKLQkJCQk2RTY3RDJBODEyODBFOEJEMDA4
NzU4RjcgLyogRXh0ZW5zaW9uczNELmggKi8sCiAJCQkJQjI3NTM1MjkwQjA1MzgxNDAwMkNFNjRG
IC8qIGNnICovLAogCQkJCUI1MzIwRDY4MTIyQTI0RTkwMDJEMTQ0MCAvKiBjb2NvYSAqLywKIAkJ
CQlBNzVFOEI3RjBFMURFMkIwMDA3RjI0ODEgLyogZmlsdGVycyAqLywKQEAgLTE2NjI2LDYgKzE2
NjI3LDcgQEAKIAkJCQlCMjc1MzUzOTBCMDUzODE0MDAyQ0U2NEYgLyogQ29sb3IuaCAqLywKIAkJ
CQk5MzgyREY1NzEwQThENUM5MDA5MjU2NTIgLyogQ29sb3JTcGFjZS5oICovLAogCQkJCUE4Q0I0
MTAyMEU4NUI4QTUwMDMyQzRGMCAvKiBEYXNoQXJyYXkuaCAqLywKKwkJCQk2RTY3RDJBODEyODBF
OEJEMDA4NzU4RjcgLyogRXh0ZW5zaW9uczNELmggKi8sCiAJCQkJQjI3NTM1M0EwQjA1MzgxNDAw
MkNFNjRGIC8qIEZsb2F0UG9pbnQuY3BwICovLAogCQkJCUIyNzUzNTNCMEIwNTM4MTQwMDJDRTY0
RiAvKiBGbG9hdFBvaW50LmggKi8sCiAJCQkJQjJFMjdDOUQwQjBGMkIwOTAwRjE3QzdCIC8qIEZs
b2F0UG9pbnQzRC5jcHAgKi8sCkBAIC0xODIwMiw2ICsxODIwNCw3IEBACiAJCQkJQkM2NDY0MDcx
MUQ3RjMwNDAwNjQ1NUIwIC8qIERPTVN0cmluZ01hcC5jcHAgKi8sCiAJCQkJQkM2NDY0MDgxMUQ3
RjMwNDAwNjQ1NUIwIC8qIERPTVN0cmluZ01hcC5oICovLAogCQkJCUJDNjQ2NDc5MTFEODAwQ0Qw
MDY0NTVCMCAvKiBET01TdHJpbmdNYXAuaWRsICovLAorCQkJCTA1RkQ2OURGMTI4NDVENDMwMEIy
QkVCMyAvKiBET01UaW1lU3RhbXAuaCAqLywKIAkJCQlCQzdGQTYxRTBEMUYwQ0JEMDBEQjIyQTkg
LyogRHluYW1pY05vZGVMaXN0LmNwcCAqLywKIAkJCQlCQzdGQTYxRjBEMUYwQ0JEMDBEQjIyQTkg
LyogRHluYW1pY05vZGVMaXN0LmggKi8sCiAJCQkJNjU1MEI2OTkwOTlERjAyNzAwOTBENzgxIC8q
IEVkaXRpbmdUZXh0LmNwcCAqLywKQEAgLTE4NjI0LDYgKzE4NjI3LDcgQEAKIAkJCQlEOEI2MTUy
RjEwMzI0OTUxMDBDODU1NEEgLyogQ29va2llLmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzUyMDg4
MjA5QkQ0NUU5MDBGMjAzOEQgLyogQ29va2llSmFyLmggaW4gSGVhZGVycyAqLywKIAkJCQlGRTZG
RDQ4ODBGNjc2RTU3MDAwOTI4NzMgLyogQ29vcmRpbmF0ZXMuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUI4QTZBNkQ1MTI3QjMzOEQwMDg2NzNCQSAvKiBDb3JyZWN0aW9uUGFuZWxJbmZvLmggaW4gSGVh
ZGVycyAqLywKIAkJCQlBODBFNkQwNDBBMTk4OUNBMDA3RkI4QzUgLyogQ291bnRlci5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJQkM1RUI5NzkwRTgyMDY5MjAwQjI1OTY1IC8qIENvdW50ZXJDb250ZW50
LmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzVFQjk1MTBFODIwNTZCMDBCMjU5NjUgLyogQ291bnRl
ckRpcmVjdGl2ZXMuaCBpbiBIZWFkZXJzICovLApAQCAtMTk0ODIsNiArMTk0ODYsNyBAQAogCQkJ
CURERTYzRUQ1MEI3RDQ1QTgwMDIyNjk5OCAvKiBET01UZXh0RXZlbnQuaCBpbiBIZWFkZXJzICov
LAogCQkJCTg1RTcxMUQ5MEFDNUQ1MzUwMDUzMjcwRiAvKiBET01UZXh0SW50ZXJuYWwuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTE4ODYwNEI0MEYyRTY1NEEwMDBCNjQ0MyAvKiBET01UaW1lci5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJMDVGRDY5RTAxMjg0NUQ0MzAwQjJCRUIzIC8qIERPTVRpbWVTdGFt
cC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNzZGQzJCMEMxMjM3MERBMDAwNkE5OTFBIC8qIERPTVRv
a2VuTGlzdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkMxQTM3QkUwOTdDNzE1RjAwMTlGM0Q4IC8q
IERPTVRyYXZlcnNhbC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJODU1MjZDRDIwQUIwQjdEOTAwMDMw
MkVBIC8qIERPTVRyZWVXYWxrZXIuaCBpbiBIZWFkZXJzICovLApAQCAtMTk1NTgsNiArMTk1NjMs
OCBAQAogCQkJCUJDNjBEOEYzMEQyQTExRTAwMEI5OTE4RiAvKiBFeGNlcHRpb25CYXNlLmggaW4g
SGVhZGVycyAqLywKIAkJCQk5MzVGQkNGMjA5QkExNDNCMDBFMjMwQjEgLyogRXhjZXB0aW9uQ29k
ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMTQ4QUZEQTUwQUY1ODM2MDAwOENDNzAwIC8qIEV4Y2Vw
dGlvbkhhbmRsZXJzLmggaW4gSGVhZGVycyAqLywKKwkJCQk2RTY3RDJBOTEyODBFOEJEMDA4NzU4
RjcgLyogRXh0ZW5zaW9uczNELmggaW4gSGVhZGVycyAqLywKKwkJCQk2RTY3RDJBNzEyODBFOEE0
MDA4NzU4RjcgLyogRXh0ZW5zaW9uczNET3BlbkdMLmggaW4gSGVhZGVycyAqLywKIAkJCQlBNzVF
OEI4OTBFMURFMkQ2MDA3RjI0ODEgLyogRkVCbGVuZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTc1
RThCOEIwRTFERTJENjAwN0YyNDgxIC8qIEZFQ29sb3JNYXRyaXguaCBpbiBIZWFkZXJzICovLAog
CQkJCUE3NUU4QjhEMEUxREUyRDYwMDdGMjQ4MSAvKiBGRUNvbXBvbmVudFRyYW5zZmVyLmggaW4g
SGVhZGVycyAqLywKQEAgLTIxMTg1LDYgKzIxMTkyLDcgQEAKIAkJCQlBN0QyMEY2RDEwN0Y0MzhC
MDBBODAzOTIgLyogV2ViR0xBY3RpdmVJbmZvLmggaW4gSGVhZGVycyAqLywKIAkJCQk0OUM3QjlD
OTEwNDJEMzJGMDAwOUQ0NDcgLyogV2ViR0xCdWZmZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTZF
NEU5MUFGMTBGN0ZCMzEwMEEyNzc5QyAvKiBXZWJHTENvbnRleHRBdHRyaWJ1dGVzLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk5M0Y2RjFFRTEyN0Y3MEIxMDA1NUNCMDYgLyogV2ViR0xDb250ZXh0RXZl
bnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTQ5QzdCOUNGMTA0MkQzMkYwMDA5RDQ0NyAvKiBXZWJH
TEZyYW1lYnVmZmVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk2RTQ3RTY2MTEwQjc5NDRCMDBCMTg2
QzggLyogV2ViR0xHZXRJbmZvLmggaW4gSGVhZGVycyAqLywKIAkJCQk0OUZGQkYzRjExQzkzRUUz
MDA2QTcxMTggLyogV2ViR0xMYXllci5oIGluIEhlYWRlcnMgKi8sCkBAIC0yMTMwOSwxMCArMjEz
MTcsNiBAQAogCQkJCTkzRjE5OUVEMDgyNDVFNTkwMDFFOUFCQyAvKiBYU0xUUHJvY2Vzc29yLmgg
aW4gSGVhZGVycyAqLywKIAkJCQlFMUJFNTEyRTBDRjZDNTEyMDAyRUE5NTkgLyogWFNMVFVuaWNv
ZGVTb3J0LmggaW4gSGVhZGVycyAqLywKIAkJCQk5N0RENEQ4NzBGREY0RDZFMDBFQ0Y5QTQgLyog
WFNTQXVkaXRvci5oIGluIEhlYWRlcnMgKi8sCi0JCQkJNkU2N0QyQTcxMjgwRThBNDAwODc1OEY3
IC8qIEV4dGVuc2lvbnMzRE9wZW5HTC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJNkU2N0QyQTkxMjgw
RThCRDAwODc1OEY3IC8qIEV4dGVuc2lvbnMzRC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJOTNGNkYx
RUUxMjdGNzBCMTAwNTVDQjA2IC8qIFdlYkdMQ29udGV4dEV2ZW50LmggaW4gSGVhZGVycyAqLywK
LQkJCQlCOEE2QTZENTEyN0IzMzhEMDA4NjczQkEgLyogQ29ycmVjdGlvblBhbmVsSW5mby5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkpOwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2lu
ZyA9IDA7CiAJCX07CkBAIC0yMTM3Miw3ICsyMTM3Niw2IEBACiAJCQlpc2EgPSBQQlhQcm9qZWN0
OwogCQkJYnVpbGRDb25maWd1cmF0aW9uTGlzdCA9IDE0OUMyODQzMDg5MDJCMTEwMDhBOUVGQyAv
KiBCdWlsZCBjb25maWd1cmF0aW9uIGxpc3QgZm9yIFBCWFByb2plY3QgIldlYkNvcmUiICovOwog
CQkJY29tcGF0aWJpbGl0eVZlcnNpb24gPSAiWGNvZGUgMi40IjsKLQkJCWRldmVsb3BtZW50UmVn
aW9uID0gRW5nbGlzaDsKIAkJCWhhc1NjYW5uZWRGb3JFbmNvZGluZ3MgPSAxOwogCQkJa25vd25S
ZWdpb25zID0gKAogCQkJCUVuZ2xpc2gsCkBAIC0yMjE5OSw2ICsyMjIwMiw3IEBACiAJCQkJQkM2
MEQ4RjIwRDJBMTFFMDAwQjk5MThGIC8qIEV4Y2VwdGlvbkJhc2UuY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJOTM4MzFCNTcwRDA4N0Q2MDAwRTVDOTg0IC8qIEV4Y2VwdGlvbkNvZGUuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJMTQ4QUZEQTYwQUY1ODM2MDAwOENDNzAwIC8qIEV4Y2VwdGlvbkhhbmRs
ZXJzLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNkU2N0QyQTYxMjgwRThBNDAwODc1OEY3IC8qIEV4
dGVuc2lvbnMzRE9wZW5HTC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBNzVFOEI4ODBFMURFMkQ2
MDA3RjI0ODEgLyogRkVCbGVuZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBNzVFOEI4QTBFMURF
MkQ2MDA3RjI0ODEgLyogRkVDb2xvck1hdHJpeC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBNzVF
OEI4QzBFMURFMkQ2MDA3RjI0ODEgLyogRkVDb21wb25lbnRUcmFuc2Zlci5jcHAgaW4gU291cmNl
cyAqLywKQEAgLTIzNzYzLDYgKzIzNzY3LDcgQEAKIAkJCQlCQzZEQURGQTBBMTk2MDJCMDBFNUNE
MTQgLyogV2ViRm9udENhY2hlLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJNDlDN0I5QzgxMDQyRDMy
RjAwMDlENDQ3IC8qIFdlYkdMQnVmZmVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTZFNEU5MUFF
MTBGN0ZCMzEwMEEyNzc5QyAvKiBXZWJHTENvbnRleHRBdHRyaWJ1dGVzLmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCTkzRjZGMUVEMTI3RjcwQjEwMDU1Q0IwNiAvKiBXZWJHTENvbnRleHRFdmVudC5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQk0OUM3QjlDRTEwNDJEMzJGMDAwOUQ0NDcgLyogV2ViR0xG
cmFtZWJ1ZmZlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk2RTQ3RTY2MDEwQjc5NDRCMDBCMTg2
QzggLyogV2ViR0xHZXRJbmZvLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTQ5RkZCRjQwMTFDOTNF
RTMwMDZBNzExOCAvKiBXZWJHTExheWVyLm1tIGluIFNvdXJjZXMgKi8sCkBAIC0yMzg3OCw4ICsy
Mzg4Myw2IEBACiAJCQkJOTNGMTlCMDUwODI0NUU1OTAwMUU5QUJDIC8qIFhTTFRQcm9jZXNzb3JM
aWJ4c2x0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUUxQkU1MTJEMENGNkM1MTIwMDJFQTk1OSAv
KiBYU0xUVW5pY29kZVNvcnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOTdERDREODYwRkRGNEQ2
RTAwRUNGOUE0IC8qIFhTU0F1ZGl0b3IuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNkU2N0QyQTYx
MjgwRThBNDAwODc1OEY3IC8qIEV4dGVuc2lvbnMzRE9wZW5HTC5jcHAgaW4gU291cmNlcyAqLywK
LQkJCQk5M0Y2RjFFRDEyN0Y3MEIxMDA1NUNCMDYgLyogV2ViR0xDb250ZXh0RXZlbnQuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkpOwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2lu
ZyA9IDA7CiAJCX07CmRpZmYgLS1naXQgYS9XZWJDb3JlL2RvbS9ET01UaW1lU3RhbXAuaCBiL1dl
YkNvcmUvZG9tL0RPTVRpbWVTdGFtcC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmZmNjE1MjA1YzgzZmVhMjQ2MDEw
MzYzZWE2ZDI5MGExZWIyYTBhYzEKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2RvbS9ET01U
aW1lU3RhbXAuaApAQCAtMCwwICsxLDUwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdv
b2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAq
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUK
KyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5l
aXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNv
bnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVy
aXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRl
biBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENP
UFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVE
IFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBET01UaW1lU3RhbXBfaAorI2RlZmlu
ZSBET01UaW1lU3RhbXBfaAorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3R5cGVkZWYgdW5zaWdu
ZWQgbG9uZyBsb25nIERPTVRpbWVTdGFtcDsKKworaW5saW5lIERPTVRpbWVTdGFtcCBjb252ZXJ0
U2Vjb25kc1RvRE9NVGltZVN0YW1wKGRvdWJsZSBzZWNvbmRzKQoreworICAgIHJldHVybiBzdGF0
aWNfY2FzdDxET01UaW1lU3RhbXA+KHNlY29uZHMgKiAxMDAwLjApOworfQorCitpbmxpbmUgZG91
YmxlIGNvbnZlcnRET01UaW1lU3RhbXBUb1NlY29uZHMoRE9NVGltZVN0YW1wIG1pbGxpc2Vjb25k
cykKK3sKKyAgICByZXR1cm4gbWlsbGlzZWNvbmRzIC8gMTAwMC4wOworfQorCit9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBET01UaW1lU3RhbXBfaApkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9kb20vRXZlbnQuY3BwIGIvV2ViQ29yZS9kb20vRXZlbnQuY3BwCmluZGV4IDkyOTNhOWE3
NGNhODVlYmM0MGE3ZjFmMTIxMmFkNDRiZjgzNGQ1MzkuLjA1MTVmZTdmYWU4MzUwMGY4NzdkOTYy
ZjlkMDZlYmYzZDhjZjUyN2EgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvZG9tL0V2ZW50LmNwcAorKysg
Yi9XZWJDb3JlL2RvbS9FdmVudC5jcHAKQEAgLTM5LDcgKzM5LDcgQEAgRXZlbnQ6OkV2ZW50KCkK
ICAgICAsIG1fY2FuY2VsQnViYmxlKGZhbHNlKQogICAgICwgbV9ldmVudFBoYXNlKDApCiAgICAg
LCBtX2N1cnJlbnRUYXJnZXQoMCkKLSAgICAsIG1fY3JlYXRlVGltZShzdGF0aWNfY2FzdDxET01U
aW1lU3RhbXA+KGN1cnJlbnRUaW1lKCkgKiAxMDAwLjApKQorICAgICwgbV9jcmVhdGVUaW1lKGNv
bnZlcnRTZWNvbmRzVG9ET01UaW1lU3RhbXAoY3VycmVudFRpbWUoKSkpCiB7CiB9CiAKQEAgLTU0
LDcgKzU0LDcgQEAgRXZlbnQ6OkV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBi
b29sIGNhbkJ1YmJsZUFyZywgYm9vbCBjYW5jZWxhYmxlQXIKICAgICAsIG1fY2FuY2VsQnViYmxl
KGZhbHNlKQogICAgICwgbV9ldmVudFBoYXNlKDApCiAgICAgLCBtX2N1cnJlbnRUYXJnZXQoMCkK
LSAgICAsIG1fY3JlYXRlVGltZShzdGF0aWNfY2FzdDxET01UaW1lU3RhbXA+KGN1cnJlbnRUaW1l
KCkgKiAxMDAwLjApKQorICAgICwgbV9jcmVhdGVUaW1lKGNvbnZlcnRTZWNvbmRzVG9ET01UaW1l
U3RhbXAoY3VycmVudFRpbWUoKSkpCiB7CiB9CiAKZGlmZiAtLWdpdCBhL1dlYkNvcmUvZG9tL0V2
ZW50LmggYi9XZWJDb3JlL2RvbS9FdmVudC5oCmluZGV4IDgyYWM4ZWNiMzU3YjEwMmRlYTg0OTcy
MWMyZGQzYzRjZjI1ZWM0ODAuLmM4ZmQyMWU0YzYxOTdmYjRmMzNhZjA2NDMwYWUxOThkZDA3MWVk
M2MgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvZG9tL0V2ZW50LmgKKysrIGIvV2ViQ29yZS9kb20vRXZl
bnQuaApAQCAtMjQsNiArMjQsNyBAQAogI2lmbmRlZiBFdmVudF9oCiAjZGVmaW5lIEV2ZW50X2gK
IAorI2luY2x1ZGUgIkRPTVRpbWVTdGFtcC5oIgogI2luY2x1ZGUgIkV2ZW50VGFyZ2V0LmgiCiAj
aW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9BdG9taWNTdHJp
bmcuaD4KQEAgLTMyLDkgKzMzLDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAgY2xhc3Mg
Q2xpcGJvYXJkOwogCi0gICAgLy8gRklYTUU6IHRoaXMgc2hvdWxkIHByb2JhYmx5IGRlZmluZWQg
ZWxzZXdoZXJlLgotICAgIHR5cGVkZWYgdW5zaWduZWQgbG9uZyBsb25nIERPTVRpbWVTdGFtcDsK
LQogICAgIGNsYXNzIEV2ZW50IDogcHVibGljIFJlZkNvdW50ZWQ8RXZlbnQ+IHsKICAgICBwdWJs
aWM6CiAgICAgICAgIGVudW0gUGhhc2VUeXBlIHsgCmRpZmYgLS1naXQgYS9XZWJDb3JlL3BhZ2Uv
R2VvbG9jYXRpb24uY3BwIGIvV2ViQ29yZS9wYWdlL0dlb2xvY2F0aW9uLmNwcAppbmRleCBkNTI3
N2UwMDc4ZWI2YjJiMzZhZGE0Yzk2YTZhODk5ZGFmMmUzYTY4Li5iZWQ4ZmI0Y2NhZTQ4YmM2YWZk
YTI0OTkyMjg2NzBmYzI4YmEyMDU0IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BhZ2UvR2VvbG9jYXRp
b24uY3BwCisrKyBiL1dlYkNvcmUvcGFnZS9HZW9sb2NhdGlvbi5jcHAKQEAgLTM5MCw3ICszOTAs
NyBAQCBib29sIEdlb2xvY2F0aW9uOjpoYXZlU3VpdGFibGVDYWNoZWRQb3NpdGlvbihQb3NpdGlv
bk9wdGlvbnMqIG9wdGlvbnMpCiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIGlmICghb3B0aW9u
cy0+bWF4aW11bUFnZSgpKQogICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgRE9NVGltZVN0YW1w
IGN1cnJlbnRUaW1lTWlsbGlzID0gY3VycmVudFRpbWUoKSAqIDEwMDAuMDsKKyAgICBET01UaW1l
U3RhbXAgY3VycmVudFRpbWVNaWxsaXMgPSBjb252ZXJ0U2Vjb25kc1RvRE9NVGltZVN0YW1wKGN1
cnJlbnRUaW1lKCkpOwogICAgIHJldHVybiBtX3Bvc2l0aW9uQ2FjaGUtPmNhY2hlZFBvc2l0aW9u
KCktPnRpbWVzdGFtcCgpID4gY3VycmVudFRpbWVNaWxsaXMgLSBvcHRpb25zLT5tYXhpbXVtQWdl
KCk7CiB9CiAKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vYW5kcm9pZC9HZW9sb2NhdGlv
blNlcnZpY2VBbmRyb2lkLmNwcCBiL1dlYkNvcmUvcGxhdGZvcm0vYW5kcm9pZC9HZW9sb2NhdGlv
blNlcnZpY2VBbmRyb2lkLmNwcAppbmRleCBkNDRiM2YwMDM1YjA3YWYzZWVhNjg3ZDY3ZWYwZGQ1
NTE1ZTAzYjQ2Li5iNmRmZTgxNzM1YzRlYWVhOGFjNmQ1NjY4ODM1NTE2MmNkOTIzOTYzIDEwMDY0
NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL2FuZHJvaWQvR2VvbG9jYXRpb25TZXJ2aWNlQW5kcm9p
ZC5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9hbmRyb2lkL0dlb2xvY2F0aW9uU2VydmljZUFu
ZHJvaWQuY3BwCkBAIC0xNzEsOSArMTcxLDkgQEAgYm9vbCBHZW9sb2NhdGlvblNlcnZpY2VBbmRy
b2lkOjppc1Bvc2l0aW9uTW9yZUFjY3VyYXRlKEdlb3Bvc2l0aW9uKiBwb3NpdGlvbjEsIEcKIGJv
b2wgR2VvbG9jYXRpb25TZXJ2aWNlQW5kcm9pZDo6aXNQb3NpdGlvbk1vcmVUaW1lbHkoR2VvcG9z
aXRpb24qIHBvc2l0aW9uMSwgR2VvcG9zaXRpb24qIHBvc2l0aW9uMikKIHsKICAgICBBU1NFUlQo
cG9zaXRpb24xICYmIHBvc2l0aW9uMik7Ci0gICAgRE9NVGltZVN0YW1wIGN1cnJlbnRUaW1lTWls
bGlzID0gV1RGOjpjdXJyZW50VGltZSgpICogMTAwMC4wOwotICAgIERPTVRpbWVTdGFtcCBtYXhp
bXVtQWdlTWlsbGlzID0gMTAgKiA2MCAqIDEwMDA7ICAvLyAxMCBtaW51dGVzCi0gICAgcmV0dXJu
IGN1cnJlbnRUaW1lTWlsbGlzIC0gcG9zaXRpb24xLT50aW1lc3RhbXAoKSA+IG1heGltdW1BZ2VN
aWxsaXM7CisgICAgRE9NVGltZVN0YW1wIGN1cnJlbnRUaW1lID0gY29udmVydFNlY29uZHNUb0RP
TVRpbWVTdGFtcChXVEY6OmN1cnJlbnRUaW1lKCkpOworICAgIERPTVRpbWVTdGFtcCBtYXhpbXVt
QWdlID0gY29udmVydFNlY29uZHNUb0RPTVRpbWVTdGFtcCgxMCAqIDYwKTsgLy8gMTAgbWludXRl
cworICAgIHJldHVybiBjdXJyZW50VGltZSAtIHBvc2l0aW9uMS0+dGltZXN0YW1wKCkgPiBtYXhp
bXVtQWdlOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9XZWJLaXQv
Y2hyb21pdW0vQ2hhbmdlTG9nIGIvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwppbmRleCAwZTBl
YWQ3MDE1MTRjZjI1MzIwYTlmNjQxYTNhYTQwNzU3MjAzY2IwLi41ZjcwZGRjMjc5ZTM0YTdiNmM3
Y2FiMThlN2RhMjVkMDNiMWUzMzlkIDEwMDY0NAotLS0gYS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdl
TG9nCisrKyBiL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAx
MC0xMS0wNSAgSm9obiBLbm90dGVuYmVsdCAgPGprbm90dGVuQGNocm9taXVtLm9yZz4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDb252ZXJ0IHRvIGFu
ZCBmcm9tIERPTVRpbWVTdGFtcCB3aXRoIGNvbnZlcnRlciBmdW5jdGlvbnMKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ5MDY2CisKKyAgICAgICAgKiBz
cmMvV2ViRGF0YVNvdXJjZUltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJEYXRhU291cmNl
SW1wbDo6dHJpZ2dlcmluZ0V2ZW50VGltZSk6CisKIDIwMTAtMTEtMDQgIHVzYWluaSAgPHVzYWlu
aTA4QGdtYWlsLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBBbnRvbmlvIEdvbWVzLgpkaWZm
IC0tZ2l0IGEvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJEYXRhU291cmNlSW1wbC5jcHAgYi9XZWJL
aXQvY2hyb21pdW0vc3JjL1dlYkRhdGFTb3VyY2VJbXBsLmNwcAppbmRleCBkNWIxZDc5NTQ4NzRi
YTc5YmQwYzM4MTBmMzI3MGY5Nzc3ZWI5Y2UwLi42NTE0N2ZhY2JlMzEyYWM0YzUwZTA5YzljZjMw
MTkzNjBmODM3Y2E4IDEwMDY0NAotLS0gYS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkRhdGFTb3Vy
Y2VJbXBsLmNwcAorKysgYi9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkRhdGFTb3VyY2VJbXBsLmNw
cApAQCAtOTYsNyArOTYsNyBAQCBkb3VibGUgV2ViRGF0YVNvdXJjZUltcGw6OnRyaWdnZXJpbmdF
dmVudFRpbWUoKSBjb25zdAogICAgICAgICByZXR1cm4gMC4wOwogCiAgICAgLy8gRE9NVGltZVN0
YW1wIHVzZXMgdW5pdHMgb2YgbWlsbGlzZWNvbmRzLgotICAgIHJldHVybiB0cmlnZ2VyaW5nQWN0
aW9uKCkuZXZlbnQoKS0+dGltZVN0YW1wKCkgLyAxMDAwLjA7CisgICAgcmV0dXJuIGNvbnZlcnRE
T01UaW1lU3RhbXBUb1NlY29uZHModHJpZ2dlcmluZ0FjdGlvbigpLmV2ZW50KCktPnRpbWVTdGFt
cCgpKTsKIH0KIAogV2ViRGF0YVNvdXJjZTo6RXh0cmFEYXRhKiBXZWJEYXRhU291cmNlSW1wbDo6
ZXh0cmFEYXRhKCkgY29uc3QK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>73238</attachid>
            <date>2010-11-08 07:35:54 -0800</date>
            <delta_ts>2010-11-08 08:33:58 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-49066-20101108153551.patch</filename>
            <type>text/plain</type>
            <size>17958</size>
            <attacher name="John Knottenbelt">jknotten</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NjlmMWZiODJmNzQxOGNmNDZjNjNmNzkyNzNhMjM5MDM5ZTVhZTg5Zi4uNmFmNzc4ZWYwODI0ODI5
MzQ1MTQzYWZkZTg4ODc4ZjQ3NGNlZjRmYSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNyBAQAorMjAxMC0xMS0wOCAgSm9o
biBLbm90dGVuYmVsdCAgPGprbm90dGVuQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDb252ZXJ0IHRvIGFuZCBmcm9tIERPTVRp
bWVTdGFtcCB3aXRoIGNvbnZlcnRlciBmdW5jdGlvbnMuCisgICAgICAgIFRoaXMgaXMgYSByZWZh
Y3RvcmluZyBvbmx5LCBjb3ZlcmVkIGJ5IGV4aXN0aW5nIGxheW91dCB0ZXN0cy4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ5MDY2IAorCisgICAgICAg
ICogR05VbWFrZWZpbGUuYW06CisgICAgICAgICogV2ViQ29yZS5neXBpOgorICAgICAgICAqIFdl
YkNvcmUucHJvOgorICAgICAgICAqIFdlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qOgorICAg
ICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBkb20v
RE9NVGltZVN0YW1wLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6Y29udmVydFNlY29uZHNU
b0RPTVRpbWVTdGFtcCk6CisgICAgICAgIChXZWJDb3JlOjpjb252ZXJ0RE9NVGltZVN0YW1wVG9T
ZWNvbmRzKToKKyAgICAgICAgKiBkb20vRXZlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RXZl
bnQ6OkV2ZW50KToKKyAgICAgICAgKiBkb20vRXZlbnQuaDoKKyAgICAgICAgKiBwYWdlL0dlb2xv
Y2F0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0aW9uOjpoYXZlU3VpdGFibGVD
YWNoZWRQb3NpdGlvbik6CisgICAgICAgICogcGxhdGZvcm0vYW5kcm9pZC9HZW9sb2NhdGlvblNl
cnZpY2VBbmRyb2lkLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0aW9uU2VydmljZUFu
ZHJvaWQ6OmlzUG9zaXRpb25Nb3JlVGltZWx5KToKKwogMjAxMC0xMS0wOCAgUmVuYXRhIEhvZG92
YW4gIDxyZW5pQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgTmlrb2xhcyBaaW1t
ZXJtYW5uLgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9HTlVtYWtlZmlsZS5hbSBiL1dlYkNvcmUvR05V
bWFrZWZpbGUuYW0KaW5kZXggYmE3NmM2YjMyNzNjNjVmN2QxMDVkNDg0MWQ5MWI2NjgyMjMwNTNk
MS4uNjljYzMyNDU4NDJmNDNjMDg1OTUyMDhjYWZhYzE1MTZkMDY2Mzk1YSAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9HTlVtYWtlZmlsZS5hbQorKysgYi9XZWJDb3JlL0dOVW1ha2VmaWxlLmFtCkBAIC0x
MTIzLDYgKzExMjMsNyBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVdlYkNvcmUvZG9tL0RPTVN0
cmluZ0xpc3QuaCBcCiAJV2ViQ29yZS9kb20vRE9NU3RyaW5nTWFwLmNwcCBcCiAJV2ViQ29yZS9k
b20vRE9NU3RyaW5nTWFwLmggXAorCVdlYkNvcmUvZG9tL0RPTVRpbWVTdGFtcC5oIFwKIAlXZWJD
b3JlL2RvbS9EeW5hbWljTm9kZUxpc3QuY3BwIFwKIAlXZWJDb3JlL2RvbS9EeW5hbWljTm9kZUxp
c3QuaCBcCiAJV2ViQ29yZS9kb20vRWRpdGluZ1RleHQuY3BwIFwKZGlmZiAtLWdpdCBhL1dlYkNv
cmUvV2ViQ29yZS5neXBpIGIvV2ViQ29yZS9XZWJDb3JlLmd5cGkKaW5kZXggYThlZmRlNjk2YTY0
NWVlNGUwZjRlZTI1ODA3MWViNDhlZjRlNmZmNi4uYzZkOWM2ZDZlMzBmOWNiMDYxMWNmZmVlYThl
NDM4YmFmNjFiNjY5MCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLmd5cGkKKysrIGIvV2Vi
Q29yZS9XZWJDb3JlLmd5cGkKQEAgLTExNjQsNiArMTE2NCw3IEBACiAgICAgICAgICAgICAnZG9t
L0RPTVN0cmluZ0xpc3QuaCcsCiAgICAgICAgICAgICAnZG9tL0RPTVN0cmluZ01hcC5jcHAnLAog
ICAgICAgICAgICAgJ2RvbS9ET01TdHJpbmdNYXAuaCcsCisgICAgICAgICAgICAnZG9tL0RPTVRp
bWVTdGFtcC5oJywKICAgICAgICAgICAgICdkb20vRGF0YXNldERPTVN0cmluZ01hcC5jcHAnLAog
ICAgICAgICAgICAgJ2RvbS9EYXRhc2V0RE9NU3RyaW5nTWFwLmgnLAogICAgICAgICAgICAgJ2Rv
bS9EZWNvZGVkRGF0YURvY3VtZW50UGFyc2VyLmNwcCcsCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dl
YkNvcmUucHJvIGIvV2ViQ29yZS9XZWJDb3JlLnBybwppbmRleCA3NThiZmFlMjA0MDNmNDg0NTlj
YjBjZDVhZTRjYWUwMDUxNGVhZDRlLi45MGJjZTIwNjMyNjhmNWFmZDBiNzQ0ZDQ0YzFiOGYwN2Nl
NmMwYzA2IDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUucHJvCisrKyBiL1dlYkNvcmUvV2Vi
Q29yZS5wcm8KQEAgLTE2MjQsNiArMTYyNCw3IEBAIEhFQURFUlMgKz0gXAogICAgIGRvbS9ET01J
bXBsZW1lbnRhdGlvbi5oIFwKICAgICBkb20vRE9NU3RyaW5nTGlzdC5oIFwKICAgICBkb20vRE9N
U3RyaW5nTWFwLmggXAorICAgIGRvbS9ET01UaW1lU3RhbXAuaCBcCiAgICAgZG9tL0RhdGFzZXRE
T01TdHJpbmdNYXAuaCBcCiAgICAgZG9tL0R5bmFtaWNOb2RlTGlzdC5oIFwKICAgICBkb20vRWRp
dGluZ1RleHQuaCBcCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUu
dmNwcm9qIGIvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagppbmRleCA5MWQ0
ODVlMmRlNGYyODYwNTg0ZWUwNjE5OWVlOTk4MjhkZjk4OTMxLi5lOTNhMWNmODE2YTNiYjljMjhi
Y2U4MmZjNTQ3MzU3NjdhMDYwODhjIDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUudmNwcm9q
L1dlYkNvcmUudmNwcm9qCisrKyBiL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3By
b2oKQEAgLTQxOTI0LDYgKzQxOTI0LDEwIEBACiAJCQkJPg0KIAkJCTwvRmlsZT4NCiAJCQk8Rmls
ZQ0KKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGRvbVxET01UaW1lU3RhbXAuaCINCisJCQkJPg0KKwkJ
CTwvRmlsZT4NCisJCQkJPEZpbGUNCiAJCQkJUmVsYXRpdmVQYXRoPSIuLlxkb21cRHluYW1pY05v
ZGVMaXN0LmNwcCINCiAJCQkJPg0KIAkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCmRpZmYgLS1naXQg
YS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1dlYkNvcmUvV2Vi
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDllNzZhNjRkNWNhZjMxMzdkYTdi
MGRiZmViZTkxMmI2Zjc2NmMxZjMuLjk0MjMxNzc5NDVhNDg0YmJlYzIxOGFjZTA3ZDQwMjQ1NmZm
YmE3ZjkgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCisrKyBiL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0z
Niw2ICszNiw3IEBACiAJCTAwMTQ2MjhBMTAzQ0QxREUwMDBCMjBEQiAvKiBPcmlnaW5BY2Nlc3NF
bnRyeS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAw
MDE0NjI4ODEwM0NEMURFMDAwQjIwREIgLyogT3JpZ2luQWNjZXNzRW50cnkuY3BwICovOyB9Owog
CQkwMDE0NjI4QjEwM0NEMURFMDAwQjIwREIgLyogT3JpZ2luQWNjZXNzRW50cnkuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDAwMTQ2Mjg5MTAzQ0QxREUw
MDBCMjBEQiAvKiBPcmlnaW5BY2Nlc3NFbnRyeS5oICovOyB9OwogCQkwMDNGMUZFQTExRTZBQjQz
MDA4MjU4RDkgLyogVXNlckNvbnRlbnRUeXBlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMDAzRjFGRTkxMUU2QUI0MzAwODI1OEQ5IC8qIFVzZXJDb250
ZW50VHlwZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQkwNUZENjlFMDEyODQ1RDQzMDBCMkJFQjMgLyogRE9NVGltZVN0YW1wLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNUZENjlERjEyODQ1RDQzMDBC
MkJFQjMgLyogRE9NVGltZVN0YW1wLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKIAkJMDYwMjdDQUQwQjFDQkZDMDAwODg0QjJEIC8qIENvbnRleHRNZW51
SXRlbS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDYw
MjdDQUMwQjFDQkZDMDAwODg0QjJEIC8qIENvbnRleHRNZW51SXRlbS5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTA2MDI3Q0IzMEIxQ0MwM0QwMDg4
NEIyRCAvKiBDb250ZXh0TWVudUl0ZW1NYWMubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAwNjAyN0NCMjBCMUNDMDNEMDA4ODRCMkQgLyogQ29udGV4dE1l
bnVJdGVtTWFjLm1tICovOyB9OwogCQkwNjIyODc4NDBCNERCMzIyMDAwQzM0REYgLyogRm9jdXNE
aXJlY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDA2MjI4NzgzMEI0REIzMjIwMDBDMzRERiAvKiBGb2N1c0RpcmVjdGlvbi5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBAIC02MDc4LDYgKzYwNzksNyBA
QAogCQkwMDE0NjI4ODEwM0NEMURFMDAwQjIwREIgLyogT3JpZ2luQWNjZXNzRW50cnkuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gT3JpZ2luQWNjZXNzRW50cnkuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwMDE0NjI4OTEwM0NEMURFMDAwQjIwREIg
LyogT3JpZ2luQWNjZXNzRW50cnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
T3JpZ2luQWNjZXNzRW50cnkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDAzRjFG
RTkxMUU2QUI0MzAwODI1OEQ5IC8qIFVzZXJDb250ZW50VHlwZXMuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gVXNlckNvbnRlbnRUeXBlcy5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkwNUZENjlERjEyODQ1RDQzMDBCMkJFQjMgLyogRE9NVGltZVN0YW1wLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERPTVRpbWVTdGFtcC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQkwNjAyN0NBQzBCMUNCRkMwMDA4ODRCMkQgLyogQ29udGV4dE1l
bnVJdGVtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb250ZXh0TWVudUl0
ZW0uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDYwMjdDQjIwQjFDQzAzRDAwODg0
QjJEIC8qIENvbnRleHRNZW51SXRlbU1hYy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5v
YmpjcHA7IHBhdGggPSBDb250ZXh0TWVudUl0ZW1NYWMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTA2MjI4NzgzMEI0REIzMjIwMDBDMzRERiAvKiBGb2N1c0RpcmVjdGlvbi5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRm9jdXNEaXJlY3Rpb24uaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE2NjQzLDcgKzE2NjQ1LDYgQEAKIAkJQjJBMDE1OTEw
QUY2Q0Q1MzAwNkJDRTBFIC8qIGdyYXBoaWNzICovID0gewogCQkJaXNhID0gUEJYR3JvdXA7CiAJ
CQljaGlsZHJlbiA9ICgKLQkJCQk2RTY3RDJBODEyODBFOEJEMDA4NzU4RjcgLyogRXh0ZW5zaW9u
czNELmggKi8sCiAJCQkJQjI3NTM1MjkwQjA1MzgxNDAwMkNFNjRGIC8qIGNnICovLAogCQkJCUI1
MzIwRDY4MTIyQTI0RTkwMDJEMTQ0MCAvKiBjb2NvYSAqLywKIAkJCQlBNzVFOEI3RjBFMURFMkIw
MDA3RjI0ODEgLyogZmlsdGVycyAqLywKQEAgLTE2NjYwLDYgKzE2NjYxLDcgQEAKIAkJCQlCMjc1
MzUzOTBCMDUzODE0MDAyQ0U2NEYgLyogQ29sb3IuaCAqLywKIAkJCQk5MzgyREY1NzEwQThENUM5
MDA5MjU2NTIgLyogQ29sb3JTcGFjZS5oICovLAogCQkJCUE4Q0I0MTAyMEU4NUI4QTUwMDMyQzRG
MCAvKiBEYXNoQXJyYXkuaCAqLywKKwkJCQk2RTY3RDJBODEyODBFOEJEMDA4NzU4RjcgLyogRXh0
ZW5zaW9uczNELmggKi8sCiAJCQkJQjI3NTM1M0EwQjA1MzgxNDAwMkNFNjRGIC8qIEZsb2F0UG9p
bnQuY3BwICovLAogCQkJCUIyNzUzNTNCMEIwNTM4MTQwMDJDRTY0RiAvKiBGbG9hdFBvaW50Lmgg
Ki8sCiAJCQkJQjJFMjdDOUQwQjBGMkIwOTAwRjE3QzdCIC8qIEZsb2F0UG9pbnQzRC5jcHAgKi8s
CkBAIC0xODIxNCw2ICsxODIxNiw3IEBACiAJCQkJQkM2NDY0MDcxMUQ3RjMwNDAwNjQ1NUIwIC8q
IERPTVN0cmluZ01hcC5jcHAgKi8sCiAJCQkJQkM2NDY0MDgxMUQ3RjMwNDAwNjQ1NUIwIC8qIERP
TVN0cmluZ01hcC5oICovLAogCQkJCUJDNjQ2NDc5MTFEODAwQ0QwMDY0NTVCMCAvKiBET01TdHJp
bmdNYXAuaWRsICovLAorCQkJCTA1RkQ2OURGMTI4NDVENDMwMEIyQkVCMyAvKiBET01UaW1lU3Rh
bXAuaCAqLywKIAkJCQlCQzdGQTYxRTBEMUYwQ0JEMDBEQjIyQTkgLyogRHluYW1pY05vZGVMaXN0
LmNwcCAqLywKIAkJCQlCQzdGQTYxRjBEMUYwQ0JEMDBEQjIyQTkgLyogRHluYW1pY05vZGVMaXN0
LmggKi8sCiAJCQkJNjU1MEI2OTkwOTlERjAyNzAwOTBENzgxIC8qIEVkaXRpbmdUZXh0LmNwcCAq
LywKQEAgLTE4NjM2LDYgKzE4NjM5LDcgQEAKIAkJCQlEOEI2MTUyRjEwMzI0OTUxMDBDODU1NEEg
LyogQ29va2llLmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzUyMDg4MjA5QkQ0NUU5MDBGMjAzOEQg
LyogQ29va2llSmFyLmggaW4gSGVhZGVycyAqLywKIAkJCQlGRTZGRDQ4ODBGNjc2RTU3MDAwOTI4
NzMgLyogQ29vcmRpbmF0ZXMuaCBpbiBIZWFkZXJzICovLAorCQkJCUI4QTZBNkQ1MTI3QjMzOEQw
MDg2NzNCQSAvKiBDb3JyZWN0aW9uUGFuZWxJbmZvLmggaW4gSGVhZGVycyAqLywKIAkJCQlBODBF
NkQwNDBBMTk4OUNBMDA3RkI4QzUgLyogQ291bnRlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1
RUI5NzkwRTgyMDY5MjAwQjI1OTY1IC8qIENvdW50ZXJDb250ZW50LmggaW4gSGVhZGVycyAqLywK
IAkJCQlCQzVFQjk1MTBFODIwNTZCMDBCMjU5NjUgLyogQ291bnRlckRpcmVjdGl2ZXMuaCBpbiBI
ZWFkZXJzICovLApAQCAtMTk0OTQsNiArMTk0OTgsNyBAQAogCQkJCURERTYzRUQ1MEI3RDQ1QTgw
MDIyNjk5OCAvKiBET01UZXh0RXZlbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTg1RTcxMUQ5MEFD
NUQ1MzUwMDUzMjcwRiAvKiBET01UZXh0SW50ZXJuYWwuaCBpbiBIZWFkZXJzICovLAogCQkJCTE4
ODYwNEI0MEYyRTY1NEEwMDBCNjQ0MyAvKiBET01UaW1lci5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
MDVGRDY5RTAxMjg0NUQ0MzAwQjJCRUIzIC8qIERPTVRpbWVTdGFtcC5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJNzZGQzJCMEMxMjM3MERBMDAwNkE5OTFBIC8qIERPTVRva2VuTGlzdC5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJQkMxQTM3QkUwOTdDNzE1RjAwMTlGM0Q4IC8qIERPTVRyYXZlcnNhbC5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJODU1MjZDRDIwQUIwQjdEOTAwMDMwMkVBIC8qIERPTVRyZWVXYWxr
ZXIuaCBpbiBIZWFkZXJzICovLApAQCAtMTk1NzEsNiArMTk1NzYsOCBAQAogCQkJCUJDNjBEOEYz
MEQyQTExRTAwMEI5OTE4RiAvKiBFeGNlcHRpb25CYXNlLmggaW4gSGVhZGVycyAqLywKIAkJCQk5
MzVGQkNGMjA5QkExNDNCMDBFMjMwQjEgLyogRXhjZXB0aW9uQ29kZS5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJMTQ4QUZEQTUwQUY1ODM2MDAwOENDNzAwIC8qIEV4Y2VwdGlvbkhhbmRsZXJzLmggaW4g
SGVhZGVycyAqLywKKwkJCQk2RTY3RDJBOTEyODBFOEJEMDA4NzU4RjcgLyogRXh0ZW5zaW9uczNE
LmggaW4gSGVhZGVycyAqLywKKwkJCQk2RTY3RDJBNzEyODBFOEE0MDA4NzU4RjcgLyogRXh0ZW5z
aW9uczNET3BlbkdMLmggaW4gSGVhZGVycyAqLywKIAkJCQlBNzVFOEI4OTBFMURFMkQ2MDA3RjI0
ODEgLyogRkVCbGVuZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTc1RThCOEIwRTFERTJENjAwN0Yy
NDgxIC8qIEZFQ29sb3JNYXRyaXguaCBpbiBIZWFkZXJzICovLAogCQkJCUE3NUU4QjhEMEUxREUy
RDYwMDdGMjQ4MSAvKiBGRUNvbXBvbmVudFRyYW5zZmVyLmggaW4gSGVhZGVycyAqLywKQEAgLTIx
MTk4LDYgKzIxMjA1LDcgQEAKIAkJCQlBN0QyMEY2RDEwN0Y0MzhCMDBBODAzOTIgLyogV2ViR0xB
Y3RpdmVJbmZvLmggaW4gSGVhZGVycyAqLywKIAkJCQk0OUM3QjlDOTEwNDJEMzJGMDAwOUQ0NDcg
LyogV2ViR0xCdWZmZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTZFNEU5MUFGMTBGN0ZCMzEwMEEy
Nzc5QyAvKiBXZWJHTENvbnRleHRBdHRyaWJ1dGVzLmggaW4gSGVhZGVycyAqLywKKwkJCQk5M0Y2
RjFFRTEyN0Y3MEIxMDA1NUNCMDYgLyogV2ViR0xDb250ZXh0RXZlbnQuaCBpbiBIZWFkZXJzICov
LAogCQkJCTQ5QzdCOUNGMTA0MkQzMkYwMDA5RDQ0NyAvKiBXZWJHTEZyYW1lYnVmZmVyLmggaW4g
SGVhZGVycyAqLywKIAkJCQk2RTQ3RTY2MTEwQjc5NDRCMDBCMTg2QzggLyogV2ViR0xHZXRJbmZv
LmggaW4gSGVhZGVycyAqLywKIAkJCQk0OUZGQkYzRjExQzkzRUUzMDA2QTcxMTggLyogV2ViR0xM
YXllci5oIGluIEhlYWRlcnMgKi8sCkBAIC0yMTMyMiwxMCArMjEzMzAsNiBAQAogCQkJCTkzRjE5
OUVEMDgyNDVFNTkwMDFFOUFCQyAvKiBYU0xUUHJvY2Vzc29yLmggaW4gSGVhZGVycyAqLywKIAkJ
CQlFMUJFNTEyRTBDRjZDNTEyMDAyRUE5NTkgLyogWFNMVFVuaWNvZGVTb3J0LmggaW4gSGVhZGVy
cyAqLywKIAkJCQk5N0RENEQ4NzBGREY0RDZFMDBFQ0Y5QTQgLyogWFNTQXVkaXRvci5oIGluIEhl
YWRlcnMgKi8sCi0JCQkJNkU2N0QyQTcxMjgwRThBNDAwODc1OEY3IC8qIEV4dGVuc2lvbnMzRE9w
ZW5HTC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJNkU2N0QyQTkxMjgwRThCRDAwODc1OEY3IC8qIEV4
dGVuc2lvbnMzRC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJOTNGNkYxRUUxMjdGNzBCMTAwNTVDQjA2
IC8qIFdlYkdMQ29udGV4dEV2ZW50LmggaW4gSGVhZGVycyAqLywKLQkJCQlCOEE2QTZENTEyN0Iz
MzhEMDA4NjczQkEgLyogQ29ycmVjdGlvblBhbmVsSW5mby5oIGluIEhlYWRlcnMgKi8sCiAJCQkp
OwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CiAJCX07CkBAIC0y
MTM4NSw3ICsyMTM4OSw2IEBACiAJCQlpc2EgPSBQQlhQcm9qZWN0OwogCQkJYnVpbGRDb25maWd1
cmF0aW9uTGlzdCA9IDE0OUMyODQzMDg5MDJCMTEwMDhBOUVGQyAvKiBCdWlsZCBjb25maWd1cmF0
aW9uIGxpc3QgZm9yIFBCWFByb2plY3QgIldlYkNvcmUiICovOwogCQkJY29tcGF0aWJpbGl0eVZl
cnNpb24gPSAiWGNvZGUgMi40IjsKLQkJCWRldmVsb3BtZW50UmVnaW9uID0gRW5nbGlzaDsKIAkJ
CWhhc1NjYW5uZWRGb3JFbmNvZGluZ3MgPSAxOwogCQkJa25vd25SZWdpb25zID0gKAogCQkJCUVu
Z2xpc2gsCkBAIC0yMjIxMyw2ICsyMjIxNiw3IEBACiAJCQkJQkM2MEQ4RjIwRDJBMTFFMDAwQjk5
MThGIC8qIEV4Y2VwdGlvbkJhc2UuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOTM4MzFCNTcwRDA4
N0Q2MDAwRTVDOTg0IC8qIEV4Y2VwdGlvbkNvZGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMTQ4
QUZEQTYwQUY1ODM2MDAwOENDNzAwIC8qIEV4Y2VwdGlvbkhhbmRsZXJzLm1tIGluIFNvdXJjZXMg
Ki8sCisJCQkJNkU2N0QyQTYxMjgwRThBNDAwODc1OEY3IC8qIEV4dGVuc2lvbnMzRE9wZW5HTC5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQlBNzVFOEI4ODBFMURFMkQ2MDA3RjI0ODEgLyogRkVCbGVu
ZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBNzVFOEI4QTBFMURFMkQ2MDA3RjI0ODEgLyogRkVD
b2xvck1hdHJpeC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBNzVFOEI4QzBFMURFMkQ2MDA3RjI0
ODEgLyogRkVDb21wb25lbnRUcmFuc2Zlci5jcHAgaW4gU291cmNlcyAqLywKQEAgLTIzNzc3LDYg
KzIzNzgxLDcgQEAKIAkJCQlCQzZEQURGQTBBMTk2MDJCMDBFNUNEMTQgLyogV2ViRm9udENhY2hl
Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJNDlDN0I5QzgxMDQyRDMyRjAwMDlENDQ3IC8qIFdlYkdM
QnVmZmVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTZFNEU5MUFFMTBGN0ZCMzEwMEEyNzc5QyAv
KiBXZWJHTENvbnRleHRBdHRyaWJ1dGVzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTkzRjZGMUVE
MTI3RjcwQjEwMDU1Q0IwNiAvKiBXZWJHTENvbnRleHRFdmVudC5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQk0OUM3QjlDRTEwNDJEMzJGMDAwOUQ0NDcgLyogV2ViR0xGcmFtZWJ1ZmZlci5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQk2RTQ3RTY2MDEwQjc5NDRCMDBCMTg2QzggLyogV2ViR0xHZXRJbmZv
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTQ5RkZCRjQwMTFDOTNFRTMwMDZBNzExOCAvKiBXZWJH
TExheWVyLm1tIGluIFNvdXJjZXMgKi8sCkBAIC0yMzg5Miw4ICsyMzg5Nyw2IEBACiAJCQkJOTNG
MTlCMDUwODI0NUU1OTAwMUU5QUJDIC8qIFhTTFRQcm9jZXNzb3JMaWJ4c2x0LmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUUxQkU1MTJEMENGNkM1MTIwMDJFQTk1OSAvKiBYU0xUVW5pY29kZVNvcnQu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOTdERDREODYwRkRGNEQ2RTAwRUNGOUE0IC8qIFhTU0F1
ZGl0b3IuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNkU2N0QyQTYxMjgwRThBNDAwODc1OEY3IC8q
IEV4dGVuc2lvbnMzRE9wZW5HTC5jcHAgaW4gU291cmNlcyAqLywKLQkJCQk5M0Y2RjFFRDEyN0Y3
MEIxMDA1NUNCMDYgLyogV2ViR0xDb250ZXh0RXZlbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkp
OwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CiAJCX07CmRpZmYg
LS1naXQgYS9XZWJDb3JlL2RvbS9ET01UaW1lU3RhbXAuaCBiL1dlYkNvcmUvZG9tL0RPTVRpbWVT
dGFtcC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmZmNjE1MjA1YzgzZmVhMjQ2MDEwMzYzZWE2ZDI5MGExZWIyYTBh
YzEKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2RvbS9ET01UaW1lU3RhbXAuaApAQCAtMCww
ICsxLDUwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6
CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIK
KyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2Yg
R29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUg
dXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlz
IHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoK
KyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFO
RCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElD
VUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJ
R0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFU
QSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CisgKi8KKworI2lmbmRlZiBET01UaW1lU3RhbXBfaAorI2RlZmluZSBET01UaW1lU3RhbXBfaAor
CituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3R5cGVkZWYgdW5zaWduZWQgbG9uZyBsb25nIERPTVRp
bWVTdGFtcDsKKworaW5saW5lIERPTVRpbWVTdGFtcCBjb252ZXJ0U2Vjb25kc1RvRE9NVGltZVN0
YW1wKGRvdWJsZSBzZWNvbmRzKQoreworICAgIHJldHVybiBzdGF0aWNfY2FzdDxET01UaW1lU3Rh
bXA+KHNlY29uZHMgKiAxMDAwLjApOworfQorCitpbmxpbmUgZG91YmxlIGNvbnZlcnRET01UaW1l
U3RhbXBUb1NlY29uZHMoRE9NVGltZVN0YW1wIG1pbGxpc2Vjb25kcykKK3sKKyAgICByZXR1cm4g
bWlsbGlzZWNvbmRzIC8gMTAwMC4wOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNl
bmRpZiAvLyBET01UaW1lU3RhbXBfaApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9kb20vRXZlbnQuY3Bw
IGIvV2ViQ29yZS9kb20vRXZlbnQuY3BwCmluZGV4IDkyOTNhOWE3NGNhODVlYmM0MGE3ZjFmMTIx
MmFkNDRiZjgzNGQ1MzkuLjA1MTVmZTdmYWU4MzUwMGY4NzdkOTYyZjlkMDZlYmYzZDhjZjUyN2Eg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvZG9tL0V2ZW50LmNwcAorKysgYi9XZWJDb3JlL2RvbS9FdmVu
dC5jcHAKQEAgLTM5LDcgKzM5LDcgQEAgRXZlbnQ6OkV2ZW50KCkKICAgICAsIG1fY2FuY2VsQnVi
YmxlKGZhbHNlKQogICAgICwgbV9ldmVudFBoYXNlKDApCiAgICAgLCBtX2N1cnJlbnRUYXJnZXQo
MCkKLSAgICAsIG1fY3JlYXRlVGltZShzdGF0aWNfY2FzdDxET01UaW1lU3RhbXA+KGN1cnJlbnRU
aW1lKCkgKiAxMDAwLjApKQorICAgICwgbV9jcmVhdGVUaW1lKGNvbnZlcnRTZWNvbmRzVG9ET01U
aW1lU3RhbXAoY3VycmVudFRpbWUoKSkpCiB7CiB9CiAKQEAgLTU0LDcgKzU0LDcgQEAgRXZlbnQ6
OkV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBib29sIGNhbkJ1YmJsZUFyZywg
Ym9vbCBjYW5jZWxhYmxlQXIKICAgICAsIG1fY2FuY2VsQnViYmxlKGZhbHNlKQogICAgICwgbV9l
dmVudFBoYXNlKDApCiAgICAgLCBtX2N1cnJlbnRUYXJnZXQoMCkKLSAgICAsIG1fY3JlYXRlVGlt
ZShzdGF0aWNfY2FzdDxET01UaW1lU3RhbXA+KGN1cnJlbnRUaW1lKCkgKiAxMDAwLjApKQorICAg
ICwgbV9jcmVhdGVUaW1lKGNvbnZlcnRTZWNvbmRzVG9ET01UaW1lU3RhbXAoY3VycmVudFRpbWUo
KSkpCiB7CiB9CiAKZGlmZiAtLWdpdCBhL1dlYkNvcmUvZG9tL0V2ZW50LmggYi9XZWJDb3JlL2Rv
bS9FdmVudC5oCmluZGV4IDgyYWM4ZWNiMzU3YjEwMmRlYTg0OTcyMWMyZGQzYzRjZjI1ZWM0ODAu
LmM4ZmQyMWU0YzYxOTdmYjRmMzNhZjA2NDMwYWUxOThkZDA3MWVkM2MgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvZG9tL0V2ZW50LmgKKysrIGIvV2ViQ29yZS9kb20vRXZlbnQuaApAQCAtMjQsNiArMjQs
NyBAQAogI2lmbmRlZiBFdmVudF9oCiAjZGVmaW5lIEV2ZW50X2gKIAorI2luY2x1ZGUgIkRPTVRp
bWVTdGFtcC5oIgogI2luY2x1ZGUgIkV2ZW50VGFyZ2V0LmgiCiAjaW5jbHVkZSA8d3RmL1JlZkNv
dW50ZWQuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9BdG9taWNTdHJpbmcuaD4KQEAgLTMyLDkgKzMz
LDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAgY2xhc3MgQ2xpcGJvYXJkOwogCi0gICAg
Ly8gRklYTUU6IHRoaXMgc2hvdWxkIHByb2JhYmx5IGRlZmluZWQgZWxzZXdoZXJlLgotICAgIHR5
cGVkZWYgdW5zaWduZWQgbG9uZyBsb25nIERPTVRpbWVTdGFtcDsKLQogICAgIGNsYXNzIEV2ZW50
IDogcHVibGljIFJlZkNvdW50ZWQ8RXZlbnQ+IHsKICAgICBwdWJsaWM6CiAgICAgICAgIGVudW0g
UGhhc2VUeXBlIHsgCmRpZmYgLS1naXQgYS9XZWJDb3JlL3BhZ2UvR2VvbG9jYXRpb24uY3BwIGIv
V2ViQ29yZS9wYWdlL0dlb2xvY2F0aW9uLmNwcAppbmRleCBkNTI3N2UwMDc4ZWI2YjJiMzZhZGE0
Yzk2YTZhODk5ZGFmMmUzYTY4Li5iZWQ4ZmI0Y2NhZTQ4YmM2YWZkYTI0OTkyMjg2NzBmYzI4YmEy
MDU0IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BhZ2UvR2VvbG9jYXRpb24uY3BwCisrKyBiL1dlYkNv
cmUvcGFnZS9HZW9sb2NhdGlvbi5jcHAKQEAgLTM5MCw3ICszOTAsNyBAQCBib29sIEdlb2xvY2F0
aW9uOjpoYXZlU3VpdGFibGVDYWNoZWRQb3NpdGlvbihQb3NpdGlvbk9wdGlvbnMqIG9wdGlvbnMp
CiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIGlmICghb3B0aW9ucy0+bWF4aW11bUFnZSgpKQog
ICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgRE9NVGltZVN0YW1wIGN1cnJlbnRUaW1lTWlsbGlz
ID0gY3VycmVudFRpbWUoKSAqIDEwMDAuMDsKKyAgICBET01UaW1lU3RhbXAgY3VycmVudFRpbWVN
aWxsaXMgPSBjb252ZXJ0U2Vjb25kc1RvRE9NVGltZVN0YW1wKGN1cnJlbnRUaW1lKCkpOwogICAg
IHJldHVybiBtX3Bvc2l0aW9uQ2FjaGUtPmNhY2hlZFBvc2l0aW9uKCktPnRpbWVzdGFtcCgpID4g
Y3VycmVudFRpbWVNaWxsaXMgLSBvcHRpb25zLT5tYXhpbXVtQWdlKCk7CiB9CiAKZGlmZiAtLWdp
dCBhL1dlYkNvcmUvcGxhdGZvcm0vYW5kcm9pZC9HZW9sb2NhdGlvblNlcnZpY2VBbmRyb2lkLmNw
cCBiL1dlYkNvcmUvcGxhdGZvcm0vYW5kcm9pZC9HZW9sb2NhdGlvblNlcnZpY2VBbmRyb2lkLmNw
cAppbmRleCBkNDRiM2YwMDM1YjA3YWYzZWVhNjg3ZDY3ZWYwZGQ1NTE1ZTAzYjQ2Li5iNmRmZTgx
NzM1YzRlYWVhOGFjNmQ1NjY4ODM1NTE2MmNkOTIzOTYzIDEwMDY0NAotLS0gYS9XZWJDb3JlL3Bs
YXRmb3JtL2FuZHJvaWQvR2VvbG9jYXRpb25TZXJ2aWNlQW5kcm9pZC5jcHAKKysrIGIvV2ViQ29y
ZS9wbGF0Zm9ybS9hbmRyb2lkL0dlb2xvY2F0aW9uU2VydmljZUFuZHJvaWQuY3BwCkBAIC0xNzEs
OSArMTcxLDkgQEAgYm9vbCBHZW9sb2NhdGlvblNlcnZpY2VBbmRyb2lkOjppc1Bvc2l0aW9uTW9y
ZUFjY3VyYXRlKEdlb3Bvc2l0aW9uKiBwb3NpdGlvbjEsIEcKIGJvb2wgR2VvbG9jYXRpb25TZXJ2
aWNlQW5kcm9pZDo6aXNQb3NpdGlvbk1vcmVUaW1lbHkoR2VvcG9zaXRpb24qIHBvc2l0aW9uMSwg
R2VvcG9zaXRpb24qIHBvc2l0aW9uMikKIHsKICAgICBBU1NFUlQocG9zaXRpb24xICYmIHBvc2l0
aW9uMik7Ci0gICAgRE9NVGltZVN0YW1wIGN1cnJlbnRUaW1lTWlsbGlzID0gV1RGOjpjdXJyZW50
VGltZSgpICogMTAwMC4wOwotICAgIERPTVRpbWVTdGFtcCBtYXhpbXVtQWdlTWlsbGlzID0gMTAg
KiA2MCAqIDEwMDA7ICAvLyAxMCBtaW51dGVzCi0gICAgcmV0dXJuIGN1cnJlbnRUaW1lTWlsbGlz
IC0gcG9zaXRpb24xLT50aW1lc3RhbXAoKSA+IG1heGltdW1BZ2VNaWxsaXM7CisgICAgRE9NVGlt
ZVN0YW1wIGN1cnJlbnRUaW1lID0gY29udmVydFNlY29uZHNUb0RPTVRpbWVTdGFtcChXVEY6OmN1
cnJlbnRUaW1lKCkpOworICAgIERPTVRpbWVTdGFtcCBtYXhpbXVtQWdlID0gY29udmVydFNlY29u
ZHNUb0RPTVRpbWVTdGFtcCgxMCAqIDYwKTsgLy8gMTAgbWludXRlcworICAgIHJldHVybiBjdXJy
ZW50VGltZSAtIHBvc2l0aW9uMS0+dGltZXN0YW1wKCkgPiBtYXhpbXVtQWdlOwogfQogCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9n
IGIvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwppbmRleCA3MjFkMjUxZDgwYTJhM2QyMDUxYjIw
MWNkNTNlYTM1ZDMyMGExYjRkLi42ZTFhMmVmYzllNGQ4MzM4YzQ1ODYwY2FjNjMxNTYxNDQxMDMz
OTcwIDEwMDY0NAotLS0gYS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1dlYktpdC9j
aHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxMC0xMS0wOCAgSm9obiBLbm90
dGVuYmVsdCAgPGprbm90dGVuQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDb252ZXJ0IHRvIGFuZCBmcm9tIERPTVRpbWVTdGFt
cCB3aXRoIGNvbnZlcnRlciBmdW5jdGlvbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTQ5MDY2CisKKyAgICAgICAgKiBzcmMvV2ViRGF0YVNvdXJjZUlt
cGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJEYXRhU291cmNlSW1wbDo6dHJpZ2dlcmluZ0V2
ZW50VGltZSk6CisKKwogMjAxMC0xMS0wNyAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3Jn
PgogCiAgICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2VpZGVsLgpkaWZmIC0tZ2l0IGEvV2ViS2l0
L2Nocm9taXVtL3NyYy9XZWJEYXRhU291cmNlSW1wbC5jcHAgYi9XZWJLaXQvY2hyb21pdW0vc3Jj
L1dlYkRhdGFTb3VyY2VJbXBsLmNwcAppbmRleCBkNWIxZDc5NTQ4NzRiYTc5YmQwYzM4MTBmMzI3
MGY5Nzc3ZWI5Y2UwLi42NTE0N2ZhY2JlMzEyYWM0YzUwZTA5YzljZjMwMTkzNjBmODM3Y2E4IDEw
MDY0NAotLS0gYS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkRhdGFTb3VyY2VJbXBsLmNwcAorKysg
Yi9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkRhdGFTb3VyY2VJbXBsLmNwcApAQCAtOTYsNyArOTYs
NyBAQCBkb3VibGUgV2ViRGF0YVNvdXJjZUltcGw6OnRyaWdnZXJpbmdFdmVudFRpbWUoKSBjb25z
dAogICAgICAgICByZXR1cm4gMC4wOwogCiAgICAgLy8gRE9NVGltZVN0YW1wIHVzZXMgdW5pdHMg
b2YgbWlsbGlzZWNvbmRzLgotICAgIHJldHVybiB0cmlnZ2VyaW5nQWN0aW9uKCkuZXZlbnQoKS0+
dGltZVN0YW1wKCkgLyAxMDAwLjA7CisgICAgcmV0dXJuIGNvbnZlcnRET01UaW1lU3RhbXBUb1Nl
Y29uZHModHJpZ2dlcmluZ0FjdGlvbigpLmV2ZW50KCktPnRpbWVTdGFtcCgpKTsKIH0KIAogV2Vi
RGF0YVNvdXJjZTo6RXh0cmFEYXRhKiBXZWJEYXRhU291cmNlSW1wbDo6ZXh0cmFEYXRhKCkgY29u
c3QK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>73242</attachid>
            <date>2010-11-08 08:34:04 -0800</date>
            <delta_ts>2010-11-08 20:15:09 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-49066-20101108163402.patch</filename>
            <type>text/plain</type>
            <size>13553</size>
            <attacher name="John Knottenbelt">jknotten</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
MWU0ODY0MzA0YzQ1YTEwMGIzZGE3MjA1NDgxNjA4YjMzYjIzZDJiNi4uZjM5NDMxYzhlODU2MGNi
Nzk1NTQ0YzQ0Yzg3MDZkNzkzYjlmOGNmOCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNyBAQAorMjAxMC0xMS0wOCAgSm9o
biBLbm90dGVuYmVsdCAgPGprbm90dGVuQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDb252ZXJ0IHRvIGFuZCBmcm9tIERPTVRp
bWVTdGFtcCB3aXRoIGNvbnZlcnRlciBmdW5jdGlvbnMuCisgICAgICAgIFRoaXMgaXMgYSByZWZh
Y3RvcmluZyBvbmx5LCBjb3ZlcmVkIGJ5IGV4aXN0aW5nIGxheW91dCB0ZXN0cy4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ5MDY2IAorCisgICAgICAg
ICogR05VbWFrZWZpbGUuYW06CisgICAgICAgICogV2ViQ29yZS5neXBpOgorICAgICAgICAqIFdl
YkNvcmUucHJvOgorICAgICAgICAqIFdlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qOgorICAg
ICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBkb20v
RE9NVGltZVN0YW1wLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6Y29udmVydFNlY29uZHNU
b0RPTVRpbWVTdGFtcCk6CisgICAgICAgIChXZWJDb3JlOjpjb252ZXJ0RE9NVGltZVN0YW1wVG9T
ZWNvbmRzKToKKyAgICAgICAgKiBkb20vRXZlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RXZl
bnQ6OkV2ZW50KToKKyAgICAgICAgKiBkb20vRXZlbnQuaDoKKyAgICAgICAgKiBwYWdlL0dlb2xv
Y2F0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0aW9uOjpoYXZlU3VpdGFibGVD
YWNoZWRQb3NpdGlvbik6CisgICAgICAgICogcGxhdGZvcm0vYW5kcm9pZC9HZW9sb2NhdGlvblNl
cnZpY2VBbmRyb2lkLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0aW9uU2VydmljZUFu
ZHJvaWQ6OmlzUG9zaXRpb25Nb3JlVGltZWx5KToKKwogMjAxMC0xMS0wOCAgQWRhbSBSb2JlbiAg
PGFyb2JlbkBhcHBsZS5jb20+CiAKICAgICAgICAgV2luZG93cyBSZWxlYXNlIGJ1aWxkIGZpeCBh
ZnRlciByNzE1MTQKZGlmZiAtLWdpdCBhL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0gYi9XZWJDb3Jl
L0dOVW1ha2VmaWxlLmFtCmluZGV4IDFhNGUyMDYyNjVlMzFkOTg1MjJiMzE2NDMxM2EyYTlkNTBm
NTFhMDIuLmVjNjVkNDNkNWQ5ZWQ4NTZlNWY4MjM4NjYzYTFiZjBhMDIxMDhiOGUgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0KKysrIGIvV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQpA
QCAtMTEyMSw2ICsxMTIxLDcgQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlXZWJDb3JlL2RvbS9E
T01TdHJpbmdMaXN0LmggXAogCVdlYkNvcmUvZG9tL0RPTVN0cmluZ01hcC5jcHAgXAogCVdlYkNv
cmUvZG9tL0RPTVN0cmluZ01hcC5oIFwKKwlXZWJDb3JlL2RvbS9ET01UaW1lU3RhbXAuaCBcCiAJ
V2ViQ29yZS9kb20vRHluYW1pY05vZGVMaXN0LmNwcCBcCiAJV2ViQ29yZS9kb20vRHluYW1pY05v
ZGVMaXN0LmggXAogCVdlYkNvcmUvZG9tL0VkaXRpbmdUZXh0LmNwcCBcCmRpZmYgLS1naXQgYS9X
ZWJDb3JlL1dlYkNvcmUuZ3lwaSBiL1dlYkNvcmUvV2ViQ29yZS5neXBpCmluZGV4IGZhYTMzOWFk
ZTkwMDYyYWI1YzcxYTNjMWZlZmJiMTIxNzA4YTM3NmEuLjM1ODUzNzZmYzVkZmNiZjIyNzM2ZWVl
YmVkZjRmY2M2MzQ3ZTcwYTIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS5neXBpCisrKyBi
L1dlYkNvcmUvV2ViQ29yZS5neXBpCkBAIC0xMTU3LDYgKzExNTcsNyBAQAogICAgICAgICAgICAg
J2RvbS9ET01TdHJpbmdMaXN0LmgnLAogICAgICAgICAgICAgJ2RvbS9ET01TdHJpbmdNYXAuY3Bw
JywKICAgICAgICAgICAgICdkb20vRE9NU3RyaW5nTWFwLmgnLAorICAgICAgICAgICAgJ2RvbS9E
T01UaW1lU3RhbXAuaCcsCiAgICAgICAgICAgICAnZG9tL0RhdGFzZXRET01TdHJpbmdNYXAuY3Bw
JywKICAgICAgICAgICAgICdkb20vRGF0YXNldERPTVN0cmluZ01hcC5oJywKICAgICAgICAgICAg
ICdkb20vRGVjb2RlZERhdGFEb2N1bWVudFBhcnNlci5jcHAnLApkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9XZWJDb3JlLnBybyBiL1dlYkNvcmUvV2ViQ29yZS5wcm8KaW5kZXggM2QzMGFhNjI2OTBkZTMw
ZGIyZmY1ZDEyYzM4OWY3MWNhMjJhMzcwOC4uYzFhNWY1ZWQ1N2Y5YjljNTdlY2VmNmQ0Zjk1ZDU0
M2E5MTA2ODRkYyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLnBybworKysgYi9XZWJDb3Jl
L1dlYkNvcmUucHJvCkBAIC0xNjIxLDYgKzE2MjEsNyBAQCBIRUFERVJTICs9IFwKICAgICBkb20v
RE9NSW1wbGVtZW50YXRpb24uaCBcCiAgICAgZG9tL0RPTVN0cmluZ0xpc3QuaCBcCiAgICAgZG9t
L0RPTVN0cmluZ01hcC5oIFwKKyAgICBkb20vRE9NVGltZVN0YW1wLmggXAogICAgIGRvbS9EYXRh
c2V0RE9NU3RyaW5nTWFwLmggXAogICAgIGRvbS9EeW5hbWljTm9kZUxpc3QuaCBcCiAgICAgZG9t
L0VkaXRpbmdUZXh0LmggXApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJD
b3JlLnZjcHJvaiBiL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKaW5kZXgg
M2QzODg3MDQ3MGQzNDM3NDg2NDgyYzA3NTNlNTdjMjFmODA1ZjQ3NC4uMzE2Y2NiNGM5Y2NkYTNi
ZDQ4OGJhYmNiY2JmYzhkYTNiZTkzOTI4NiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLnZj
cHJvai9XZWJDb3JlLnZjcHJvagorKysgYi9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUu
dmNwcm9qCkBAIC00MTkyNCw2ICs0MTkyNCwxMCBAQAogCQkJCT4NCiAJCQk8L0ZpbGU+DQogCQkJ
PEZpbGUNCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxkb21cRE9NVGltZVN0YW1wLmgiDQorCQkJCT4N
CisJCQk8L0ZpbGU+DQorCQkJCTxGaWxlDQogCQkJCVJlbGF0aXZlUGF0aD0iLi5cZG9tXER5bmFt
aWNOb2RlTGlzdC5jcHAiDQogCQkJCT4NCiAJCQkJPEZpbGVDb25maWd1cmF0aW9uDQpkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9XZWJDb3Jl
L1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAwMjhlOWQ4YTA3ZThiZjVm
ZmQyMzdiOTYxNjg5YWIzM2E5OTg1NGVjLi42NzMzZjczMTM5YjhkNjZmZGI4ZGQ5NjRhNWZmNzQ1
ZGRhZTVjYWIwIDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvagorKysgYi9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpA
QCAtMzYsNiArMzYsNyBAQAogCQkwMDE0NjI4QTEwM0NEMURFMDAwQjIwREIgLyogT3JpZ2luQWNj
ZXNzRW50cnkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMDAxNDYyODgxMDNDRDFERTAwMEIyMERCIC8qIE9yaWdpbkFjY2Vzc0VudHJ5LmNwcCAqLzsg
fTsKIAkJMDAxNDYyOEIxMDNDRDFERTAwMEIyMERCIC8qIE9yaWdpbkFjY2Vzc0VudHJ5LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwMDE0NjI4OTEwM0NE
MURFMDAwQjIwREIgLyogT3JpZ2luQWNjZXNzRW50cnkuaCAqLzsgfTsKIAkJMDAzRjFGRUExMUU2
QUI0MzAwODI1OEQ5IC8qIFVzZXJDb250ZW50VHlwZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDAwM0YxRkU5MTFFNkFCNDMwMDgyNThEOSAvKiBVc2Vy
Q29udGVudFR5cGVzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJMDVGRDY5RTAxMjg0NUQ0MzAwQjJCRUIzIC8qIERPTVRpbWVTdGFtcC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDVGRDY5REYxMjg0NUQ0
MzAwQjJCRUIzIC8qIERPTVRpbWVTdGFtcC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CiAJCTA2MDI3Q0FEMEIxQ0JGQzAwMDg4NEIyRCAvKiBDb250ZXh0
TWVudUl0ZW0uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDA2MDI3Q0FDMEIxQ0JGQzAwMDg4NEIyRCAvKiBDb250ZXh0TWVudUl0ZW0uaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkwNjAyN0NCMzBCMUNDMDNE
MDA4ODRCMkQgLyogQ29udGV4dE1lbnVJdGVtTWFjLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDYwMjdDQjIwQjFDQzAzRDAwODg0QjJEIC8qIENvbnRl
eHRNZW51SXRlbU1hYy5tbSAqLzsgfTsKIAkJMDYyMjg3ODQwQjREQjMyMjAwMEMzNERGIC8qIEZv
Y3VzRGlyZWN0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSAwNjIyODc4MzBCNERCMzIyMDAwQzM0REYgLyogRm9jdXNEaXJlY3Rpb24uaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtNjA3Nyw2ICs2MDc4
LDcgQEAKIAkJMDAxNDYyODgxMDNDRDFERTAwMEIyMERCIC8qIE9yaWdpbkFjY2Vzc0VudHJ5LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE9yaWdpbkFjY2Vzc0VudHJ5
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDAxNDYyODkxMDNDRDFERTAwMEIy
MERCIC8qIE9yaWdpbkFjY2Vzc0VudHJ5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IE9yaWdpbkFjY2Vzc0VudHJ5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTAw
M0YxRkU5MTFFNkFCNDMwMDgyNThEOSAvKiBVc2VyQ29udGVudFR5cGVzLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFVzZXJDb250ZW50VHlwZXMuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMDVGRDY5REYxMjg0NUQ0MzAwQjJCRUIzIC8qIERPTVRpbWVTdGFtcC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBET01UaW1lU3RhbXAuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDYwMjdDQUMwQjFDQkZDMDAwODg0QjJEIC8qIENvbnRl
eHRNZW51SXRlbS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29udGV4dE1l
bnVJdGVtLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA2MDI3Q0IyMEIxQ0MwM0Qw
MDg4NEIyRCAvKiBDb250ZXh0TWVudUl0ZW1NYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAub2JqY3BwOyBwYXRoID0gQ29udGV4dE1lbnVJdGVtTWFjLm1tOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQkwNjIyODc4MzBCNERCMzIyMDAwQzM0REYgLyogRm9jdXNEaXJlY3Rpb24u
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZvY3VzRGlyZWN0aW9uLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xODIxNSw2ICsxODIxNyw3IEBACiAJCQkJQkM2
NDY0MDcxMUQ3RjMwNDAwNjQ1NUIwIC8qIERPTVN0cmluZ01hcC5jcHAgKi8sCiAJCQkJQkM2NDY0
MDgxMUQ3RjMwNDAwNjQ1NUIwIC8qIERPTVN0cmluZ01hcC5oICovLAogCQkJCUJDNjQ2NDc5MTFE
ODAwQ0QwMDY0NTVCMCAvKiBET01TdHJpbmdNYXAuaWRsICovLAorCQkJCTA1RkQ2OURGMTI4NDVE
NDMwMEIyQkVCMyAvKiBET01UaW1lU3RhbXAuaCAqLywKIAkJCQlCQzdGQTYxRTBEMUYwQ0JEMDBE
QjIyQTkgLyogRHluYW1pY05vZGVMaXN0LmNwcCAqLywKIAkJCQlCQzdGQTYxRjBEMUYwQ0JEMDBE
QjIyQTkgLyogRHluYW1pY05vZGVMaXN0LmggKi8sCiAJCQkJNjU1MEI2OTkwOTlERjAyNzAwOTBE
NzgxIC8qIEVkaXRpbmdUZXh0LmNwcCAqLywKQEAgLTE5NDk0LDYgKzE5NDk3LDcgQEAKIAkJCQlE
REU2M0VENTBCN0Q0NUE4MDAyMjY5OTggLyogRE9NVGV4dEV2ZW50LmggaW4gSGVhZGVycyAqLywK
IAkJCQk4NUU3MTFEOTBBQzVENTM1MDA1MzI3MEYgLyogRE9NVGV4dEludGVybmFsLmggaW4gSGVh
ZGVycyAqLywKIAkJCQkxODg2MDRCNDBGMkU2NTRBMDAwQjY0NDMgLyogRE9NVGltZXIuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTA1RkQ2OUUwMTI4NDVENDMwMEIyQkVCMyAvKiBET01UaW1lU3RhbXAu
aCBpbiBIZWFkZXJzICovLAogCQkJCTc2RkMyQjBDMTIzNzBEQTAwMDZBOTkxQSAvKiBET01Ub2tl
bkxpc3QuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDMUEzN0JFMDk3QzcxNUYwMDE5RjNEOCAvKiBE
T01UcmF2ZXJzYWwuaCBpbiBIZWFkZXJzICovLAogCQkJCTg1NTI2Q0QyMEFCMEI3RDkwMDAzMDJF
QSAvKiBET01UcmVlV2Fsa2VyLmggaW4gSGVhZGVycyAqLywKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
ZG9tL0RPTVRpbWVTdGFtcC5oIGIvV2ViQ29yZS9kb20vRE9NVGltZVN0YW1wLmgKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uZmY2MTUyMDVjODNmZWEyNDYwMTAzNjNlYTZkMjkwYTFlYjJhMGFjMQotLS0gL2Rldi9udWxs
CisrKyBiL1dlYkNvcmUvZG9tL0RPTVRpbWVTdGFtcC5oCkBAIC0wLDAgKzEsNTAgQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlz
dHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3Ig
dGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ug
b3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwor
ICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9S
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVm
IERPTVRpbWVTdGFtcF9oCisjZGVmaW5lIERPTVRpbWVTdGFtcF9oCisKK25hbWVzcGFjZSBXZWJD
b3JlIHsKKwordHlwZWRlZiB1bnNpZ25lZCBsb25nIGxvbmcgRE9NVGltZVN0YW1wOworCitpbmxp
bmUgRE9NVGltZVN0YW1wIGNvbnZlcnRTZWNvbmRzVG9ET01UaW1lU3RhbXAoZG91YmxlIHNlY29u
ZHMpCit7CisgICAgcmV0dXJuIHN0YXRpY19jYXN0PERPTVRpbWVTdGFtcD4oc2Vjb25kcyAqIDEw
MDAuMCk7Cit9CisKK2lubGluZSBkb3VibGUgY29udmVydERPTVRpbWVTdGFtcFRvU2Vjb25kcyhE
T01UaW1lU3RhbXAgbWlsbGlzZWNvbmRzKQoreworICAgIHJldHVybiBtaWxsaXNlY29uZHMgLyAx
MDAwLjA7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIERPTVRpbWVT
dGFtcF9oCmRpZmYgLS1naXQgYS9XZWJDb3JlL2RvbS9FdmVudC5jcHAgYi9XZWJDb3JlL2RvbS9F
dmVudC5jcHAKaW5kZXggOTI5M2E5YTc0Y2E4NWViYzQwYTdmMWYxMjEyYWQ0NGJmODM0ZDUzOS4u
MDUxNWZlN2ZhZTgzNTAwZjg3N2Q5NjJmOWQwNmViZjNkOGNmNTI3YSAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9kb20vRXZlbnQuY3BwCisrKyBiL1dlYkNvcmUvZG9tL0V2ZW50LmNwcApAQCAtMzksNyAr
MzksNyBAQCBFdmVudDo6RXZlbnQoKQogICAgICwgbV9jYW5jZWxCdWJibGUoZmFsc2UpCiAgICAg
LCBtX2V2ZW50UGhhc2UoMCkKICAgICAsIG1fY3VycmVudFRhcmdldCgwKQotICAgICwgbV9jcmVh
dGVUaW1lKHN0YXRpY19jYXN0PERPTVRpbWVTdGFtcD4oY3VycmVudFRpbWUoKSAqIDEwMDAuMCkp
CisgICAgLCBtX2NyZWF0ZVRpbWUoY29udmVydFNlY29uZHNUb0RPTVRpbWVTdGFtcChjdXJyZW50
VGltZSgpKSkKIHsKIH0KIApAQCAtNTQsNyArNTQsNyBAQCBFdmVudDo6RXZlbnQoY29uc3QgQXRv
bWljU3RyaW5nJiBldmVudFR5cGUsIGJvb2wgY2FuQnViYmxlQXJnLCBib29sIGNhbmNlbGFibGVB
cgogICAgICwgbV9jYW5jZWxCdWJibGUoZmFsc2UpCiAgICAgLCBtX2V2ZW50UGhhc2UoMCkKICAg
ICAsIG1fY3VycmVudFRhcmdldCgwKQotICAgICwgbV9jcmVhdGVUaW1lKHN0YXRpY19jYXN0PERP
TVRpbWVTdGFtcD4oY3VycmVudFRpbWUoKSAqIDEwMDAuMCkpCisgICAgLCBtX2NyZWF0ZVRpbWUo
Y29udmVydFNlY29uZHNUb0RPTVRpbWVTdGFtcChjdXJyZW50VGltZSgpKSkKIHsKIH0KIApkaWZm
IC0tZ2l0IGEvV2ViQ29yZS9kb20vRXZlbnQuaCBiL1dlYkNvcmUvZG9tL0V2ZW50LmgKaW5kZXgg
ODJhYzhlY2IzNTdiMTAyZGVhODQ5NzIxYzJkZDNjNGNmMjVlYzQ4MC4uYzhmZDIxZTRjNjE5N2Zi
NGYzM2FmMDY0MzBhZTE5OGRkMDcxZWQzYyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9kb20vRXZlbnQu
aAorKysgYi9XZWJDb3JlL2RvbS9FdmVudC5oCkBAIC0yNCw2ICsyNCw3IEBACiAjaWZuZGVmIEV2
ZW50X2gKICNkZWZpbmUgRXZlbnRfaAogCisjaW5jbHVkZSAiRE9NVGltZVN0YW1wLmgiCiAjaW5j
bHVkZSAiRXZlbnRUYXJnZXQuaCIKICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgogI2luY2x1
ZGUgPHd0Zi90ZXh0L0F0b21pY1N0cmluZy5oPgpAQCAtMzIsOSArMzMsNiBAQCBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKICAgICBjbGFzcyBDbGlwYm9hcmQ7CiAKLSAgICAvLyBGSVhNRTogdGhpcyBz
aG91bGQgcHJvYmFibHkgZGVmaW5lZCBlbHNld2hlcmUuCi0gICAgdHlwZWRlZiB1bnNpZ25lZCBs
b25nIGxvbmcgRE9NVGltZVN0YW1wOwotCiAgICAgY2xhc3MgRXZlbnQgOiBwdWJsaWMgUmVmQ291
bnRlZDxFdmVudD4gewogICAgIHB1YmxpYzoKICAgICAgICAgZW51bSBQaGFzZVR5cGUgeyAKZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvcGFnZS9HZW9sb2NhdGlvbi5jcHAgYi9XZWJDb3JlL3BhZ2UvR2Vv
bG9jYXRpb24uY3BwCmluZGV4IGQ1Mjc3ZTAwNzhlYjZiMmIzNmFkYTRjOTZhNmE4OTlkYWYyZTNh
NjguLmJlZDhmYjRjY2FlNDhiYzZhZmRhMjQ5OTIyODY3MGZjMjhiYTIwNTQgMTAwNjQ0Ci0tLSBh
L1dlYkNvcmUvcGFnZS9HZW9sb2NhdGlvbi5jcHAKKysrIGIvV2ViQ29yZS9wYWdlL0dlb2xvY2F0
aW9uLmNwcApAQCAtMzkwLDcgKzM5MCw3IEBAIGJvb2wgR2VvbG9jYXRpb246OmhhdmVTdWl0YWJs
ZUNhY2hlZFBvc2l0aW9uKFBvc2l0aW9uT3B0aW9ucyogb3B0aW9ucykKICAgICAgICAgcmV0dXJu
IHRydWU7CiAgICAgaWYgKCFvcHRpb25zLT5tYXhpbXVtQWdlKCkpCiAgICAgICAgIHJldHVybiBm
YWxzZTsKLSAgICBET01UaW1lU3RhbXAgY3VycmVudFRpbWVNaWxsaXMgPSBjdXJyZW50VGltZSgp
ICogMTAwMC4wOworICAgIERPTVRpbWVTdGFtcCBjdXJyZW50VGltZU1pbGxpcyA9IGNvbnZlcnRT
ZWNvbmRzVG9ET01UaW1lU3RhbXAoY3VycmVudFRpbWUoKSk7CiAgICAgcmV0dXJuIG1fcG9zaXRp
b25DYWNoZS0+Y2FjaGVkUG9zaXRpb24oKS0+dGltZXN0YW1wKCkgPiBjdXJyZW50VGltZU1pbGxp
cyAtIG9wdGlvbnMtPm1heGltdW1BZ2UoKTsKIH0KIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0
Zm9ybS9hbmRyb2lkL0dlb2xvY2F0aW9uU2VydmljZUFuZHJvaWQuY3BwIGIvV2ViQ29yZS9wbGF0
Zm9ybS9hbmRyb2lkL0dlb2xvY2F0aW9uU2VydmljZUFuZHJvaWQuY3BwCmluZGV4IGQ0NGIzZjAw
MzViMDdhZjNlZWE2ODdkNjdlZjBkZDU1MTVlMDNiNDYuLmI2ZGZlODE3MzVjNGVhZWE4YWM2ZDU2
Njg4MzU1MTYyY2Q5MjM5NjMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vYW5kcm9pZC9H
ZW9sb2NhdGlvblNlcnZpY2VBbmRyb2lkLmNwcAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL2FuZHJv
aWQvR2VvbG9jYXRpb25TZXJ2aWNlQW5kcm9pZC5jcHAKQEAgLTE3MSw5ICsxNzEsOSBAQCBib29s
IEdlb2xvY2F0aW9uU2VydmljZUFuZHJvaWQ6OmlzUG9zaXRpb25Nb3JlQWNjdXJhdGUoR2VvcG9z
aXRpb24qIHBvc2l0aW9uMSwgRwogYm9vbCBHZW9sb2NhdGlvblNlcnZpY2VBbmRyb2lkOjppc1Bv
c2l0aW9uTW9yZVRpbWVseShHZW9wb3NpdGlvbiogcG9zaXRpb24xLCBHZW9wb3NpdGlvbiogcG9z
aXRpb24yKQogewogICAgIEFTU0VSVChwb3NpdGlvbjEgJiYgcG9zaXRpb24yKTsKLSAgICBET01U
aW1lU3RhbXAgY3VycmVudFRpbWVNaWxsaXMgPSBXVEY6OmN1cnJlbnRUaW1lKCkgKiAxMDAwLjA7
Ci0gICAgRE9NVGltZVN0YW1wIG1heGltdW1BZ2VNaWxsaXMgPSAxMCAqIDYwICogMTAwMDsgIC8v
IDEwIG1pbnV0ZXMKLSAgICByZXR1cm4gY3VycmVudFRpbWVNaWxsaXMgLSBwb3NpdGlvbjEtPnRp
bWVzdGFtcCgpID4gbWF4aW11bUFnZU1pbGxpczsKKyAgICBET01UaW1lU3RhbXAgY3VycmVudFRp
bWUgPSBjb252ZXJ0U2Vjb25kc1RvRE9NVGltZVN0YW1wKFdURjo6Y3VycmVudFRpbWUoKSk7Cisg
ICAgRE9NVGltZVN0YW1wIG1heGltdW1BZ2UgPSBjb252ZXJ0U2Vjb25kc1RvRE9NVGltZVN0YW1w
KDEwICogNjApOyAvLyAxMCBtaW51dGVzCisgICAgcmV0dXJuIGN1cnJlbnRUaW1lIC0gcG9zaXRp
b24xLT50aW1lc3RhbXAoKSA+IG1heGltdW1BZ2U7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9XZWJLaXQvY2hyb21p
dW0vQ2hhbmdlTG9nCmluZGV4IDcyMWQyNTFkODBhMmEzZDIwNTFiMjAxY2Q1M2VhMzVkMzIwYTFi
NGQuLjZlMWEyZWZjOWU0ZDgzMzhjNDU4NjBjYWM2MzE1NjE0NDEwMzM5NzAgMTAwNjQ0Ci0tLSBh
L1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE0IEBACisyMDEwLTExLTA4ICBKb2huIEtub3R0ZW5iZWx0ICA8amtub3R0
ZW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIENvbnZlcnQgdG8gYW5kIGZyb20gRE9NVGltZVN0YW1wIHdpdGggY29udmVydGVy
IGZ1bmN0aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NDkwNjYKKworICAgICAgICAqIHNyYy9XZWJEYXRhU291cmNlSW1wbC5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYkRhdGFTb3VyY2VJbXBsOjp0cmlnZ2VyaW5nRXZlbnRUaW1lKToKKworCiAy
MDEwLTExLTA3ICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmV2
aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCmRpZmYgLS1naXQgYS9XZWJLaXQvY2hyb21pdW0vc3JjL1dl
YkRhdGFTb3VyY2VJbXBsLmNwcCBiL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRGF0YVNvdXJjZUlt
cGwuY3BwCmluZGV4IGQ1YjFkNzk1NDg3NGJhNzliZDBjMzgxMGYzMjcwZjk3NzdlYjljZTAuLjY1
MTQ3ZmFjYmUzMTJhYzRjNTBlMDljOWNmMzAxOTM2MGY4MzdjYTggMTAwNjQ0Ci0tLSBhL1dlYktp
dC9jaHJvbWl1bS9zcmMvV2ViRGF0YVNvdXJjZUltcGwuY3BwCisrKyBiL1dlYktpdC9jaHJvbWl1
bS9zcmMvV2ViRGF0YVNvdXJjZUltcGwuY3BwCkBAIC05Niw3ICs5Niw3IEBAIGRvdWJsZSBXZWJE
YXRhU291cmNlSW1wbDo6dHJpZ2dlcmluZ0V2ZW50VGltZSgpIGNvbnN0CiAgICAgICAgIHJldHVy
biAwLjA7CiAKICAgICAvLyBET01UaW1lU3RhbXAgdXNlcyB1bml0cyBvZiBtaWxsaXNlY29uZHMu
Ci0gICAgcmV0dXJuIHRyaWdnZXJpbmdBY3Rpb24oKS5ldmVudCgpLT50aW1lU3RhbXAoKSAvIDEw
MDAuMDsKKyAgICByZXR1cm4gY29udmVydERPTVRpbWVTdGFtcFRvU2Vjb25kcyh0cmlnZ2VyaW5n
QWN0aW9uKCkuZXZlbnQoKS0+dGltZVN0YW1wKCkpOwogfQogCiBXZWJEYXRhU291cmNlOjpFeHRy
YURhdGEqIFdlYkRhdGFTb3VyY2VJbXBsOjpleHRyYURhdGEoKSBjb25zdAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>