<?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>132517</bug_id>
          
          <creation_ts>2014-05-02 21:54:40 -0700</creation_ts>
          <short_desc>Implement scan backward and forward in video fullscreen.</short_desc>
          <delta_ts>2014-05-05 18:50:05 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit2</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jeremy Jones">jeremyj-wk</reporter>
          <assigned_to name="Jeremy Jones">jeremyj-wk</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>glenn</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1006299</commentid>
    <comment_count>0</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2014-05-02 21:54:40 -0700</bug_when>
    <thetext>Implement scan backward and forward in video fullscreen.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1006300</commentid>
    <comment_count>1</comment_count>
      <attachid>230741</attachid>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2014-05-02 22:09:43 -0700</bug_when>
    <thetext>Created attachment 230741
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1006644</commentid>
    <comment_count>2</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2014-05-05 09:16:48 -0700</bug_when>
    <thetext>&lt;rdar://16562168&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1006666</commentid>
    <comment_count>3</comment_count>
      <attachid>230741</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2014-05-05 10:49:29 -0700</bug_when>
    <thetext>Comment on attachment 230741
Patch

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

&gt; Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm:280
&gt; +- (void)scanForward:(id)sender
&gt; +{
&gt; +    UNUSED_PARAM(sender);
&gt; +    ASSERT(self.delegate);
&gt; +    self.delegate-&gt;beginScanningForward();
&gt; +}
&gt; +
&gt; +- (void)beginScanningForward:(id)sender
&gt; +{
&gt; +    UNUSED_PARAM(sender);
&gt; +    ASSERT(self.delegate);
&gt; +    self.delegate-&gt;beginScanningForward();
&gt; +}

What is the difference between these? Will only one be called?

&gt; Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm:311
&gt; +- (void)scanBackward:(id)sender
&gt; +{
&gt; +    UNUSED_PARAM(sender);
&gt; +    ASSERT(self.delegate);
&gt; +    self.delegate-&gt;beginScanningBackward();
&gt; +}
&gt; +
&gt; +- (void)beginScanningBackward:(id)sender
&gt; +{
&gt; +    UNUSED_PARAM(sender);
&gt; +    ASSERT(self.delegate);
&gt; +    self.delegate-&gt;beginScanningBackward();
&gt; +}

Ditto.

&gt; Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm:322
&gt; +    CMTime minimumTime = getkCMTimeIndefinite();

Nit: this would be easier to understand if you defined a macro above: #define kCMTimeIndefinite getkCMTimeIndefinite

&gt; Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm:327
&gt; +    return CMTIME_IS_NUMERIC(minimumTime);

I am not sure this makes sense unless &quot;canSeekToBeginning&quot; mean &quot;can seek somewhere&quot;, because this will return true if it is possible to seek anywhere. What is the answer returned from this selector used for?

&gt; Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm:351
&gt; +- (BOOL)canSeekToEnd
&gt; +{
&gt; +    CMTime maximumTime = getkCMTimeIndefinite();
&gt; +
&gt; +    for (NSValue *value in [self seekableTimeRanges])
&gt; +        maximumTime = CMTimeMaximum(CMTimeRangeGetEnd([value CMTimeRangeValue]), maximumTime);
&gt; +
&gt; +    return CMTIME_IS_NUMERIC(maximumTime);
&gt; +}

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1006703</commentid>
    <comment_count>4</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2014-05-05 12:50:34 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 230741 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=230741&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm:280
&gt; &gt; +- (void)scanForward:(id)sender
&gt; &gt; +{
&gt; &gt; +    UNUSED_PARAM(sender);
&gt; &gt; +    ASSERT(self.delegate);
&gt; &gt; +    self.delegate-&gt;beginScanningForward();
&gt; &gt; +}
&gt; &gt; +
&gt; &gt; +- (void)beginScanningForward:(id)sender
&gt; &gt; +{
&gt; &gt; +    UNUSED_PARAM(sender);
&gt; &gt; +    ASSERT(self.delegate);
&gt; &gt; +    self.delegate-&gt;beginScanningForward();
&gt; &gt; +}
&gt; 
&gt; What is the difference between these? Will only one be called?

I re-read the code. These are not used in conjunction with each-other, but for different ways of scanning. I&apos;ll remove -scanForward:

&gt; 
&gt; &gt; Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm:311
&gt; &gt; +- (void)scanBackward:(id)sender
&gt; &gt; +{
&gt; &gt; +    UNUSED_PARAM(sender);
&gt; &gt; +    ASSERT(self.delegate);
&gt; &gt; +    self.delegate-&gt;beginScanningBackward();
&gt; &gt; +}
&gt; &gt; +
&gt; &gt; +- (void)beginScanningBackward:(id)sender
&gt; &gt; +{
&gt; &gt; +    UNUSED_PARAM(sender);
&gt; &gt; +    ASSERT(self.delegate);
&gt; &gt; +    self.delegate-&gt;beginScanningBackward();
&gt; &gt; +}
&gt; 
&gt; Ditto.

Ditto.

&gt; 
&gt; &gt; Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm:322
&gt; &gt; +    CMTime minimumTime = getkCMTimeIndefinite();
&gt; 
&gt; Nit: this would be easier to understand if you defined a macro above: #define kCMTimeIndefinite getkCMTimeIndefinite

Changed in two places.

&gt; 
&gt; &gt; Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm:327
&gt; &gt; +    return CMTIME_IS_NUMERIC(minimumTime);
&gt; 
&gt; I am not sure this makes sense unless &quot;canSeekToBeginning&quot; mean &quot;can seek somewhere&quot;, because this will return true if it is possible to seek anywhere. What is the answer returned from this selector used for?

It is looking for an answer that works for byte-range, HLS and VOD. &quot;beginning&quot; isn&apos;t necessarily defined to mean time zero for HLS and VOD. And file based can always seek to time zero.

It is used to enable the seek to beginning button.  It will be false when there is no movie loaded, or seekable ranges are not yet known.

&gt; 
&gt; &gt; Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm:351
&gt; &gt; +- (BOOL)canSeekToEnd
&gt; &gt; +{
&gt; &gt; +    CMTime maximumTime = getkCMTimeIndefinite();
&gt; &gt; +
&gt; &gt; +    for (NSValue *value in [self seekableTimeRanges])
&gt; &gt; +        maximumTime = CMTimeMaximum(CMTimeRangeGetEnd([value CMTimeRangeValue]), maximumTime);
&gt; &gt; +
&gt; &gt; +    return CMTIME_IS_NUMERIC(maximumTime);
&gt; &gt; +}
&gt; 
&gt; Ditto.

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1006705</commentid>
    <comment_count>5</comment_count>
      <attachid>230848</attachid>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2014-05-05 12:52:30 -0700</bug_when>
    <thetext>Created attachment 230848
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1006723</commentid>
    <comment_count>6</comment_count>
      <attachid>230854</attachid>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2014-05-05 13:37:22 -0700</bug_when>
    <thetext>Created attachment 230854
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1006727</commentid>
    <comment_count>7</comment_count>
      <attachid>230854</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2014-05-05 14:05:24 -0700</bug_when>
    <thetext>Comment on attachment 230854
Patch

These changes look fine to me, but I am not a WK2 reviewer so someone else will have to r+.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1006783</commentid>
    <comment_count>8</comment_count>
      <attachid>230867</attachid>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2014-05-05 16:55:03 -0700</bug_when>
    <thetext>Created attachment 230867
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1006810</commentid>
    <comment_count>9</comment_count>
      <attachid>230867</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2014-05-05 18:09:30 -0700</bug_when>
    <thetext>Comment on attachment 230867
Patch

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

&gt; Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm:95
&gt; +@property (readonly) BOOL canScanForward;
&gt; +@property (readonly) BOOL canScanBackward;
&gt; +@property (readonly) BOOL canSeekToBeginning;
&gt; +@property (readonly) BOOL canSeekToEnd;

Should these be nonatomic?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1006816</commentid>
    <comment_count>10</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2014-05-05 18:18:04 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; (From update of attachment 230867 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=230867&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm:95
&gt; &gt; +@property (readonly) BOOL canScanForward;
&gt; &gt; +@property (readonly) BOOL canScanBackward;
&gt; &gt; +@property (readonly) BOOL canSeekToBeginning;
&gt; &gt; +@property (readonly) BOOL canSeekToEnd;
&gt; 
&gt; Should these be nonatomic?

Possibly. But that is a bigger question than this bug. I&apos;ve filed https://bugs.webkit.org/show_bug.cgi?id=132595 to cover this question.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1006821</commentid>
    <comment_count>11</comment_count>
      <attachid>230867</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-05-05 18:50:01 -0700</bug_when>
    <thetext>Comment on attachment 230867
Patch

Clearing flags on attachment: 230867

Committed r168341: &lt;http://trac.webkit.org/changeset/168341&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1006822</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-05-05 18:50:05 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>230741</attachid>
            <date>2014-05-02 22:09:43 -0700</date>
            <delta_ts>2014-05-05 12:52:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-132517-20140502220921.patch</filename>
            <type>text/plain</type>
            <size>16698</size>
            <attacher name="Jeremy Jones">jeremyj-wk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY4MTA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjY3MTdiZDRiYTM5OWI2
YWI5ZWQ0N2EwMDhlN2E1MDc2OTRmOTQxZS4uZmI4NzcxYzhiZDJlNTI3ZTFiZmQyZmIyMWIyNTk5
NGI5ZmRhNzE5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ4IEBACisyMDE0LTA1LTAyICBKZXJl
bXkgSm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBJbXBsZW1lbnQgc2NhbiBi
YWNrd2FyZCBhbmQgZm9yd2FyZCBpbiB2aWRlbyBmdWxsc2NyZWVuLgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTMyNTE3CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50IHNjYW5uaW5nIGZvcndh
cmQgYW5kIGJhY2t3YXJkLiBUaGlzIGltcGxlbWVudHMgbWV0aG9kcyBpbiAKKyAgICAgICAgV2Vi
QVZQbGF5ZXJDb250cm9sbGVyIGFuZCBmb3J3YXJkcyB0aGVtIHRocm91Z2ggV2ViVmlkZW9GdWxs
c2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQKKyAgICAgICAgYW5kIG9uIHRvIEhUTUxNZWRpYUVsZW1l
bnQuCisKKyAgICAgICAgKiBXZWJDb3JlLmV4cC5pbjogbmVjZXNzYXJ5IGV4cG9ydHMuCisgICAg
ICAgICogcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tOgor
ICAgICAgICAoLVtXZWJBVlBsYXllckNvbnRyb2xsZXIgc2Vla1RvVGltZTpdKToKKyAgICAgICAg
VXNlIGZhc3RTZWVrIGluIHRoaXMgY2FzZS4KKyAgICAgICAgKC1bV2ViQVZQbGF5ZXJDb250cm9s
bGVyIGNhblNjYW5Gb3J3YXJkXSk6IElmIHlvdSBjYW4gcGxheSwgeW91IGNhbiBzY2FuLgorICAg
ICAgICAoK1tXZWJBVlBsYXllckNvbnRyb2xsZXIga2V5UGF0aHNGb3JWYWx1ZXNBZmZlY3RpbmdD
YW5TY2FuRm9yd2FyZF0pOiBkaXR0bworICAgICAgICAoLVtXZWJBVlBsYXllckNvbnRyb2xsZXIg
c2NhbkZvcndhcmQ6XSk6IGZvcndhcmRzIHRvIHRoZSBkZWxlZ2F0ZS4KKyAgICAgICAgKC1bV2Vi
QVZQbGF5ZXJDb250cm9sbGVyIGJlZ2luU2Nhbm5pbmdGb3J3YXJkOl0pOiBkaXR0bworICAgICAg
ICAoLVtXZWJBVlBsYXllckNvbnRyb2xsZXIgZW5kU2Nhbm5pbmdGb3J3YXJkOl0pOiBkaXR0bwor
ICAgICAgICAoLVtXZWJBVlBsYXllckNvbnRyb2xsZXIgY2FuU2NhbkJhY2t3YXJkXSk6IElmIHlv
dSBjYW4gcGxheSwgeW91IGNhbiBzY2FuLgorICAgICAgICAoK1tXZWJBVlBsYXllckNvbnRyb2xs
ZXIga2V5UGF0aHNGb3JWYWx1ZXNBZmZlY3RpbmdDYW5TY2FuQmFja3dhcmRdKTogZGl0dG8KKyAg
ICAgICAgKC1bV2ViQVZQbGF5ZXJDb250cm9sbGVyIHNjYW5CYWNrd2FyZDpdKTogZm9yd2FyZHMg
dG8gdGhlIGRlbGVnYXRlLgorICAgICAgICAoLVtXZWJBVlBsYXllckNvbnRyb2xsZXIgYmVnaW5T
Y2FubmluZ0JhY2t3YXJkOl0pOiBkaXR0bworICAgICAgICAoLVtXZWJBVlBsYXllckNvbnRyb2xs
ZXIgZW5kU2Nhbm5pbmdCYWNrd2FyZDpdKTogZGl0dG8KKyAgICAgICAgKC1bV2ViQVZQbGF5ZXJD
b250cm9sbGVyIGNhblNlZWtUb0JlZ2lubmluZ10pOgorICAgICAgICBUaGlzIGxvb2tzIGF0IHNl
ZWthYmxlUmFuZ2VzIHRvIGRldGVybWluZSBpZiBhbnkgc2Vla2luZyBpcyBwb3NzaWJsZS4KKyAg
ICAgICAgKCtbV2ViQVZQbGF5ZXJDb250cm9sbGVyIGtleVBhdGhzRm9yVmFsdWVzQWZmZWN0aW5n
Q2FuU2Vla1RvQmVnaW5uaW5nXSk6CisgICAgICAgIGRlcGVuZHMgb24gc2Vla2FibGVSYW5nZXMu
CisgICAgICAgICgtW1dlYkFWUGxheWVyQ29udHJvbGxlciBzZWVrVG9CZWdpbm5pbmc6XSk6IHNl
ZWsgdG8gLWluaW5pdHkKKyAgICAgICAgKC1bV2ViQVZQbGF5ZXJDb250cm9sbGVyIGNhblNlZWtU
b0VuZF0pOgorICAgICAgICBUaGlzIGxvb2tzIGF0IHNlZWthYmxlUmFuZ2VzIHRvIGRldGVybWlu
ZSBpZiBhbnkgc2Vla2luZyBpcyBwb3NzaWJsZS4KKyAgICAgICAgKCtbV2ViQVZQbGF5ZXJDb250
cm9sbGVyIGtleVBhdGhzRm9yVmFsdWVzQWZmZWN0aW5nQ2FuU2Vla1RvRW5kXSk6CisgICAgICAg
IGRlcGVuZHMgb24gc2Vla2FibGVSYW5nZXMuCisgICAgICAgICgtW1dlYkFWUGxheWVyQ29udHJv
bGxlciBzZWVrVG9FbmQ6XSk6IHNlZWsgdG8gSU5GSU5JVFkuCisgICAgICAgICogcGxhdGZvcm0v
aW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1vZGVsLmg6CisgICAgICAgIEFkZCA0IG5ldyBmdW5jdGlv
bnMuCisgICAgICAgICogcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFF
bGVtZW50Lmg6CisgICAgICAgIGRpdHRvCisgICAgICAgICogcGxhdGZvcm0vaW9zL1dlYlZpZGVv
RnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50Lm1tOgorICAgICAgICAoV2ViVmlkZW9GdWxsc2Ny
ZWVuTW9kZWxNZWRpYUVsZW1lbnQ6OmZhc3RTZWVrKTogZm9yd2FyZHMgdG8gSFRNTE1lZGlhRWVs
ZW1lbnQKKyAgICAgICAgKFdlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50OjpiZWdp
blNjYW5uaW5nRm9yd2FyZCk6IGZvcndhcmRzIHRvIEhUTUxNZWRpYUVlbGVtZW50CisgICAgICAg
IChXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlhRWxlbWVudDo6YmVnaW5TY2FubmluZ0JhY2t3
YXJkKTogZm9yd2FyZHMgdG8gSFRNTE1lZGlhRWVsZW1lbnQKKyAgICAgICAgKFdlYlZpZGVvRnVs
bHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50OjplbmRTY2FubmluZyk6IGZvcndhcmRzIHRvIEhUTUxN
ZWRpYUVlbGVtZW50CisKIDIwMTQtMDQtMzAgIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5j
b20+CiAKICAgICAgICAgW01TRV0gU2Vla2luZyBiZXR3ZWVuIHR3byBidWZmZXJlZCByYW5nZXMg
ZW5xdXVlcyBpbmNvcnJlY3QgYnVmZmVycy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCAzNzQzM2M1MTQ5MGFlN2Rl
NjNkMTQ1MGZjOWU3OWU1NDAyNTRiN2YzLi5jMTY1MTY0MGY2MDE1ZjkzYjg3YWNiZTRmNjliNWYx
MDc1NWE0MjM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTQtMDUtMDIgIEplcmVt
eSBKb25lcyAgPGplcmVteWpAYXBwbGUuY29tPgorCisgICAgICAgIEltcGxlbWVudCBzY2FuIGJh
Y2t3YXJkIGFuZCBmb3J3YXJkIGluIHZpZGVvIGZ1bGxzY3JlZW4uCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzI1MTcKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBQbHVtYiB0aHJvdWdoIHNjYW5uaW5nL3Nl
ZWtpbmcgZnVuY3Rpb25zLgorCisgICAgICAgICogVUlQcm9jZXNzL2lvcy9XZWJWaWRlb0Z1bGxz
Y3JlZW5NYW5hZ2VyUHJveHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dlYlZpZGVvRnVs
bHNjcmVlbk1hbmFnZXJQcm94eS5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViVmlkZW9GdWxsc2Ny
ZWVuTWFuYWdlclByb3h5OjpmYXN0U2Vlayk6CisgICAgICAgIChXZWJLaXQ6OldlYlZpZGVvRnVs
bHNjcmVlbk1hbmFnZXJQcm94eTo6YmVnaW5TY2FubmluZ0ZvcndhcmQpOgorICAgICAgICAoV2Vi
S2l0OjpXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OmJlZ2luU2Nhbm5pbmdCYWNrd2Fy
ZCk6CisgICAgICAgIChXZWJLaXQ6OldlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eTo6ZW5k
U2Nhbm5pbmcpOgorICAgICAgICAqIFdlYlByb2Nlc3MvaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1h
bmFnZXIubWVzc2FnZXMuaW46CisKIDIwMTQtMDUtMDEgIFJ5dWFuIENob2kgIDxyeXVhbi5jaG9p
QHNhbXN1bmcuY29tPgogCiAgICAgICAgIFtFRkxdIFRoZXJlIGFyZSBtYW55IHdhcm5pbmdzIHdp
dGggc29mdHdhcmUgYmFja2VuZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5l
eHAuaW4gYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgppbmRleCBhNjgzYTQ3YWExYWY3
Nzc5MjFhMzEwZjY0ZTFiZjkyZGM5YTg1NjNhLi44Mjc1NmE1MjFjZmMwNzgyNTY0NzNlYjFmZDdm
YmM1OTViMDFiM2RlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgor
KysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgpAQCAtMzI5MCwxNyArMzI5MCwyMSBA
QCBfX1pOSzdXZWJDb3JlMTZIVE1MTWVkaWFFbGVtZW50OGR1cmF0aW9uRXYKIAogI2lmIEVOQUJM
RShWSURFTykgJiYgUExBVEZPUk0oSU9TKQogX19aTjdXZWJDb3JlMzVXZWJWaWRlb0Z1bGxzY3Jl
ZW5Nb2RlbE1lZGlhRWxlbWVudDEwc2Vla1RvVGltZUVkCitfX1pON1dlYkNvcmUzNVdlYlZpZGVv
RnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50MTFlbmRTY2FubmluZ0V2CiBfX1pON1dlYkNvcmUz
NVdlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50MTFoYW5kbGVFdmVudEVQTlNfMjJT
Y3JpcHRFeGVjdXRpb25Db250ZXh0RVBOU181RXZlbnRFCiBfX1pON1dlYkNvcmUzNVdlYlZpZGVv
RnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50MTVzZXRNZWRpYUVsZW1lbnRFUE5TXzE2SFRNTE1l
ZGlhRWxlbWVudEUKIF9fWk43V2ViQ29yZTM1V2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxNZWRpYUVs
ZW1lbnQxNXRvZ2dsZVBsYXlTdGF0ZUV2CiBfX1pON1dlYkNvcmUzNVdlYlZpZGVvRnVsbHNjcmVl
bk1vZGVsTWVkaWFFbGVtZW50MThzZXRWaWRlb0xheWVyRnJhbWVFTlNfOUZsb2F0UmVjdEUKK19f
Wk43V2ViQ29yZTM1V2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQyMGJlZ2luU2Nh
bm5pbmdGb3J3YXJkRXYKIF9fWk43V2ViQ29yZTM1V2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxNZWRp
YUVsZW1lbnQyMHNldFZpZGVvTGF5ZXJHcmF2aXR5RU5TXzIzV2ViVmlkZW9GdWxsc2NyZWVuTW9k
ZWwxMlZpZGVvR3Jhdml0eUUKK19fWk43V2ViQ29yZTM1V2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxN
ZWRpYUVsZW1lbnQyMWJlZ2luU2Nhbm5pbmdCYWNrd2FyZEV2CiBfX1pON1dlYkNvcmUzNVdlYlZp
ZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50MjFyZXF1ZXN0RXhpdEZ1bGxzY3JlZW5Fdgog
X19aTjdXZWJDb3JlMzVXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlhRWxlbWVudDIyc2VsZWN0
QXVkaW9NZWRpYU9wdGlvbkV5CiBfX1pON1dlYkNvcmUzNVdlYlZpZGVvRnVsbHNjcmVlbk1vZGVs
TWVkaWFFbGVtZW50MjNzZXRWaWRlb0Z1bGxzY3JlZW5MYXllckVQN0NBTGF5ZXIKIF9fWk43V2Vi
Q29yZTM1V2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQyNHNlbGVjdExlZ2libGVN
ZWRpYU9wdGlvbkV5CiBfX1pON1dlYkNvcmUzNVdlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFF
bGVtZW50NHBsYXlFdgogX19aTjdXZWJDb3JlMzVXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlh
RWxlbWVudDVwYXVzZUV2CitfX1pON1dlYkNvcmUzNVdlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVk
aWFFbGVtZW50OGZhc3RTZWVrRWQKIF9fWk43V2ViQ29yZTM1V2ViVmlkZW9GdWxsc2NyZWVuTW9k
ZWxNZWRpYUVsZW1lbnRDMkV2CiBfX1pON1dlYkNvcmUzNVdlYlZpZGVvRnVsbHNjcmVlbk1vZGVs
TWVkaWFFbGVtZW50RDJFdgogX19aTks3V2ViQ29yZTE2SFRNTFZpZGVvRWxlbWVudDEwdmlkZW9X
aWR0aEV2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlkZW9G
dWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3Mv
V2ViVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0KaW5kZXggZWM4OWZkM2U3YjhiOTBi
OWVhMTBhMjU4YWRiMmY2MzkyNzEyZmM2NS4uOTM0YjQ4ZDI2NjUzNDU0ZGEzYWJlZjBlMGI0NzRl
NjU5YmU5Mzk1NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYlZp
ZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbQpAQCAtNzIsNiArNzIs
OSBAQCBTT0ZUX0xJTksoQ29yZU1lZGlhLCBDTVRpbWVSYW5nZUNvbnRhaW5zVGltZSwgQm9vbGVh
biwgKENNVGltZVJhbmdlIHJhbmdlLCBDTVRpbQogU09GVF9MSU5LKENvcmVNZWRpYSwgQ01UaW1l
UmFuZ2VHZXRFbmQsIENNVGltZSwgKENNVGltZVJhbmdlIHJhbmdlKSwgKHJhbmdlKSkKIFNPRlRf
TElOSyhDb3JlTWVkaWEsIENNVGltZVJhbmdlTWFrZSwgQ01UaW1lUmFuZ2UsIChDTVRpbWUgc3Rh
cnQsIENNVGltZSBkdXJhdGlvbiksIChzdGFydCwgZHVyYXRpb24pKQogU09GVF9MSU5LKENvcmVN
ZWRpYSwgQ01UaW1lU3VidHJhY3QsIENNVGltZSwgKENNVGltZSBtaW51ZW5kLCBDTVRpbWUgc3Vi
dHJhaGVuZCksIChtaW51ZW5kLCBzdWJ0cmFoZW5kKSkKK1NPRlRfTElOSyhDb3JlTWVkaWEsIENN
VGltZU1heGltdW0sIENNVGltZSwgKENNVGltZSB0aW1lMSwgQ01UaW1lIHRpbWUyKSwgKHRpbWUx
LCB0aW1lMikpCitTT0ZUX0xJTksoQ29yZU1lZGlhLCBDTVRpbWVNaW5pbXVtLCBDTVRpbWUsIChD
TVRpbWUgdGltZTEsIENNVGltZSB0aW1lMiksICh0aW1lMSwgdGltZTIpKQorU09GVF9MSU5LX0NP
TlNUQU5UKENvcmVNZWRpYSwga0NNVGltZUluZGVmaW5pdGUsIENNVGltZSkKIAogQGNsYXNzIFdl
YkFWTWVkaWFTZWxlY3Rpb25PcHRpb247CiAKQEAgLTg0LDYgKzg3LDExIEBAIFNPRlRfTElOSyhD
b3JlTWVkaWEsIENNVGltZVN1YnRyYWN0LCBDTVRpbWUsIChDTVRpbWUgbWludWVuZCwgQ01UaW1l
IHN1YnRyYWhlbmQpCiBAcHJvcGVydHkocmV0YWluKSBBVlBsYXllckNvbnRyb2xsZXIqIHBsYXll
ckNvbnRyb2xsZXJQcm94eTsKIEBwcm9wZXJ0eShhc3NpZ24pIFdlYlZpZGVvRnVsbHNjcmVlbk1v
ZGVsKiBkZWxlZ2F0ZTsKIAorQHByb3BlcnR5IChyZWFkb25seSkgQk9PTCBjYW5TY2FuRm9yd2Fy
ZDsKK0Bwcm9wZXJ0eSAocmVhZG9ubHkpIEJPT0wgY2FuU2NhbkJhY2t3YXJkOworQHByb3BlcnR5
IChyZWFkb25seSkgQk9PTCBjYW5TZWVrVG9CZWdpbm5pbmc7CitAcHJvcGVydHkgKHJlYWRvbmx5
KSBCT09MIGNhblNlZWtUb0VuZDsKKwogQHByb3BlcnR5IEJPT0wgY2FuUGxheTsKIEBwcm9wZXJ0
eShnZXR0ZXI9aXNQbGF5aW5nKSBCT09MIHBsYXlpbmc7CiBAcHJvcGVydHkgQk9PTCBjYW5QYXVz
ZTsKQEAgLTE5OCw3ICsyMDYsNyBAQCBTT0ZUX0xJTksoQ29yZU1lZGlhLCBDTVRpbWVTdWJ0cmFj
dCwgQ01UaW1lLCAoQ01UaW1lIG1pbnVlbmQsIENNVGltZSBzdWJ0cmFoZW5kKQogLSAodm9pZClz
ZWVrVG9UaW1lOihOU1RpbWVJbnRlcnZhbCl0aW1lCiB7CiAgICAgQVNTRVJUKHNlbGYuZGVsZWdh
dGUpOwotICAgIHNlbGYuZGVsZWdhdGUtPnNlZWtUb1RpbWUodGltZSk7CisgICAgc2VsZi5kZWxl
Z2F0ZS0+ZmFzdFNlZWsodGltZSk7CiB9CiAKIC0gKEJPT0wpaGFzTGl2ZVN0cmVhbWluZ0NvbnRl
bnQKQEAgLTI0Nyw2ICsyNTUsMTE0IEBAIFNPRlRfTElOSyhDb3JlTWVkaWEsIENNVGltZVN1YnRy
YWN0LCBDTVRpbWUsIChDTVRpbWUgbWludWVuZCwgQ01UaW1lIHN1YnRyYWhlbmQpCiAgICAgICAg
IFtzZWxmIHNlZWtUb1RpbWU6dGltZUF0RW5kT2ZTZWVrYWJsZVRpbWVSYW5nZXNdOwogfQogCist
IChCT09MKWNhblNjYW5Gb3J3YXJkCit7CisgICAgcmV0dXJuIFtzZWxmIGNhblBsYXldOworfQor
CisrIChOU1NldCAqKWtleVBhdGhzRm9yVmFsdWVzQWZmZWN0aW5nQ2FuU2NhbkZvcndhcmQKK3sK
KyAgICByZXR1cm4gW05TU2V0IHNldFdpdGhPYmplY3Q6QCJjYW5QbGF5Il07Cit9CisKKy0gKHZv
aWQpc2NhbkZvcndhcmQ6KGlkKXNlbmRlcgoreworICAgIFVOVVNFRF9QQVJBTShzZW5kZXIpOwor
ICAgIEFTU0VSVChzZWxmLmRlbGVnYXRlKTsKKyAgICBzZWxmLmRlbGVnYXRlLT5iZWdpblNjYW5u
aW5nRm9yd2FyZCgpOworfQorCistICh2b2lkKWJlZ2luU2Nhbm5pbmdGb3J3YXJkOihpZClzZW5k
ZXIKK3sKKyAgICBVTlVTRURfUEFSQU0oc2VuZGVyKTsKKyAgICBBU1NFUlQoc2VsZi5kZWxlZ2F0
ZSk7CisgICAgc2VsZi5kZWxlZ2F0ZS0+YmVnaW5TY2FubmluZ0ZvcndhcmQoKTsKK30KKworLSAo
dm9pZCllbmRTY2FubmluZ0ZvcndhcmQ6KGlkKXNlbmRlcgoreworICAgIFVOVVNFRF9QQVJBTShz
ZW5kZXIpOworICAgIEFTU0VSVChzZWxmLmRlbGVnYXRlKTsKKyAgICBzZWxmLmRlbGVnYXRlLT5l
bmRTY2FubmluZygpOworfQorCistIChCT09MKWNhblNjYW5CYWNrd2FyZAoreworICAgIHJldHVy
biBbc2VsZiBjYW5QbGF5XTsKK30KKworKyAoTlNTZXQgKilrZXlQYXRoc0ZvclZhbHVlc0FmZmVj
dGluZ0NhblNjYW5CYWNrd2FyZAoreworICAgIHJldHVybiBbTlNTZXQgc2V0V2l0aE9iamVjdDpA
ImNhblBsYXkiXTsKK30KKworLSAodm9pZClzY2FuQmFja3dhcmQ6KGlkKXNlbmRlcgoreworICAg
IFVOVVNFRF9QQVJBTShzZW5kZXIpOworICAgIEFTU0VSVChzZWxmLmRlbGVnYXRlKTsKKyAgICBz
ZWxmLmRlbGVnYXRlLT5iZWdpblNjYW5uaW5nQmFja3dhcmQoKTsKK30KKworLSAodm9pZCliZWdp
blNjYW5uaW5nQmFja3dhcmQ6KGlkKXNlbmRlcgoreworICAgIFVOVVNFRF9QQVJBTShzZW5kZXIp
OworICAgIEFTU0VSVChzZWxmLmRlbGVnYXRlKTsKKyAgICBzZWxmLmRlbGVnYXRlLT5iZWdpblNj
YW5uaW5nQmFja3dhcmQoKTsKK30KKworLSAodm9pZCllbmRTY2FubmluZ0JhY2t3YXJkOihpZClz
ZW5kZXIKK3sKKyAgICBVTlVTRURfUEFSQU0oc2VuZGVyKTsKKyAgICBBU1NFUlQoc2VsZi5kZWxl
Z2F0ZSk7CisgICAgc2VsZi5kZWxlZ2F0ZS0+ZW5kU2Nhbm5pbmcoKTsKK30KKworLSAoQk9PTClj
YW5TZWVrVG9CZWdpbm5pbmcKK3sKKyAgICBDTVRpbWUgbWluaW11bVRpbWUgPSBnZXRrQ01UaW1l
SW5kZWZpbml0ZSgpOworCisgICAgZm9yIChOU1ZhbHVlICp2YWx1ZSBpbiBbc2VsZiBzZWVrYWJs
ZVRpbWVSYW5nZXNdKQorICAgICAgICBtaW5pbXVtVGltZSA9IENNVGltZU1pbmltdW0oW3ZhbHVl
IENNVGltZVJhbmdlVmFsdWVdLnN0YXJ0LCBtaW5pbXVtVGltZSk7CisKKyAgICByZXR1cm4gQ01U
SU1FX0lTX05VTUVSSUMobWluaW11bVRpbWUpOworfQorCisrIChOU1NldCAqKWtleVBhdGhzRm9y
VmFsdWVzQWZmZWN0aW5nQ2FuU2Vla1RvQmVnaW5uaW5nCit7CisgICAgcmV0dXJuIFtOU1NldCBz
ZXRXaXRoT2JqZWN0OkAic2Vla2FibGVUaW1lUmFuZ2VzIl07Cit9CisKKy0gKHZvaWQpc2Vla1Rv
QmVnaW5uaW5nOihpZClzZW5kZXIKK3sKKyAgICBVTlVTRURfUEFSQU0oc2VuZGVyKTsKKyAgICBB
U1NFUlQoc2VsZi5kZWxlZ2F0ZSk7CisKKyAgICBzZWxmLmRlbGVnYXRlLT5zZWVrVG9UaW1lKC1J
TkZJTklUWSk7Cit9CisKKy0gKEJPT0wpY2FuU2Vla1RvRW5kCit7CisgICAgQ01UaW1lIG1heGlt
dW1UaW1lID0gZ2V0a0NNVGltZUluZGVmaW5pdGUoKTsKKworICAgIGZvciAoTlNWYWx1ZSAqdmFs
dWUgaW4gW3NlbGYgc2Vla2FibGVUaW1lUmFuZ2VzXSkKKyAgICAgICAgbWF4aW11bVRpbWUgPSBD
TVRpbWVNYXhpbXVtKENNVGltZVJhbmdlR2V0RW5kKFt2YWx1ZSBDTVRpbWVSYW5nZVZhbHVlXSks
IG1heGltdW1UaW1lKTsKKworICAgIHJldHVybiBDTVRJTUVfSVNfTlVNRVJJQyhtYXhpbXVtVGlt
ZSk7Cit9CisKKysgKE5TU2V0ICopa2V5UGF0aHNGb3JWYWx1ZXNBZmZlY3RpbmdDYW5TZWVrVG9F
bmQKK3sKKyAgICByZXR1cm4gW05TU2V0IHNldFdpdGhPYmplY3Q6QCJzZWVrYWJsZVRpbWVSYW5n
ZXMiXTsKK30KKworLSAodm9pZClzZWVrVG9FbmQ6KGlkKXNlbmRlcgoreworICAgIFVOVVNFRF9Q
QVJBTShzZW5kZXIpOworICAgIEFTU0VSVChzZWxmLmRlbGVnYXRlKTsKKworICAgIHNlbGYuZGVs
ZWdhdGUtPnNlZWtUb1RpbWUoSU5GSU5JVFkpOworfQorCiAtIChCT09MKWhhc01lZGlhU2VsZWN0
aW9uT3B0aW9ucwogewogICAgIHJldHVybiBbc2VsZiBoYXNBdWRpb01lZGlhU2VsZWN0aW9uT3B0
aW9uc10gfHwgW3NlbGYgaGFzTGVnaWJsZU1lZGlhU2VsZWN0aW9uT3B0aW9uc107CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuTW9kZWwu
aCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbC5o
CmluZGV4IDIxMDJlYThlMWU0NzBlYWNhZmZlYzI5YTY2MTI3M2M1OWI1NmM2N2QuLjVkMTFiNGQ0
MTQ0ZTM5NGNmNzVjNWYxMGU5YWRhMDVmMTJkNjg0MWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbC5oCkBAIC00MCw2ICs0
MCwxMCBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHBhdXNlKCkgPSAwOwogICAgIHZpcnR1
YWwgdm9pZCB0b2dnbGVQbGF5U3RhdGUoKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHNlZWtUb1Rp
bWUoZG91YmxlIHRpbWUpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZmFzdFNlZWsoZG91YmxlIHRp
bWUpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgYmVnaW5TY2FubmluZ0ZvcndhcmQoKSA9IDA7Cisg
ICAgdmlydHVhbCB2b2lkIGJlZ2luU2Nhbm5pbmdCYWNrd2FyZCgpID0gMDsKKyAgICB2aXJ0dWFs
IHZvaWQgZW5kU2Nhbm5pbmcoKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHJlcXVlc3RFeGl0RnVs
bHNjcmVlbigpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0VmlkZW9MYXllckZyYW1lKEZsb2F0
UmVjdCkgPSAwOwogICAgIGVudW0gVmlkZW9HcmF2aXR5IHsgVmlkZW9HcmF2aXR5UmVzaXplLCBW
aWRlb0dyYXZpdHlSZXNpemVBc3BlY3QsIFZpZGVvR3Jhdml0eVJlc2l6ZUFzcGVjdEZpbGwgfTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3Jl
ZW5Nb2RlbE1lZGlhRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYlZp
ZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50LmgKaW5kZXggOGM5ZTYxMDY1Yzk2ZDcwMGM4
OGQxODMwMzFmZDIwMDFiNWE0MmViMy4uYTU1MjY4NGIxOTI5OTEyODg3OGY2ZWY5MGU3ZjY1NTAz
ODZiNjAxZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYlZpZGVv
RnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50LmgKQEAgLTYyLDYgKzYy
LDEwIEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgcGF1c2UoKSBvdmVycmlkZTsKICAgICB2
aXJ0dWFsIHZvaWQgdG9nZ2xlUGxheVN0YXRlKCkgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCB2b2lk
IHNlZWtUb1RpbWUoZG91YmxlIHRpbWUpIG92ZXJyaWRlOworICAgIHZpcnR1YWwgdm9pZCBmYXN0
U2Vlayhkb3VibGUgdGltZSkgb3ZlcnJpZGU7CisgICAgdmlydHVhbCB2b2lkIGJlZ2luU2Nhbm5p
bmdGb3J3YXJkKCkgb3ZlcnJpZGU7CisgICAgdmlydHVhbCB2b2lkIGJlZ2luU2Nhbm5pbmdCYWNr
d2FyZCgpIG92ZXJyaWRlOworICAgIHZpcnR1YWwgdm9pZCBlbmRTY2FubmluZygpIG92ZXJyaWRl
OwogICAgIHZpcnR1YWwgdm9pZCByZXF1ZXN0RXhpdEZ1bGxzY3JlZW4oKSBvdmVycmlkZTsKICAg
ICB2aXJ0dWFsIHZvaWQgc2V0VmlkZW9MYXllckZyYW1lKEZsb2F0UmVjdCkgb3ZlcnJpZGU7CiAg
ICAgdmlydHVhbCB2b2lkIHNldFZpZGVvTGF5ZXJHcmF2aXR5KFdlYlZpZGVvRnVsbHNjcmVlbk1v
ZGVsOjpWaWRlb0dyYXZpdHkpIG92ZXJyaWRlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50Lm1tIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVt
ZW50Lm1tCmluZGV4IDEyNjAzOWM4NDFhNzEwNmQ4NTliYTU2NjNhNDM5NTNhOTFmNjBmMWQuLjFm
NmQ4NTY4NzQyYzY3OWFkZWE4OTJmMmU4NTJmMWU3ZjA2NjBlMmIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlhRWxlbWVu
dC5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlkZW9GdWxsc2NyZWVu
TW9kZWxNZWRpYUVsZW1lbnQubW0KQEAgLTE3Miw2ICsxNzIsNDIgQEAgdm9pZCBXZWJWaWRlb0Z1
bGxzY3JlZW5Nb2RlbE1lZGlhRWxlbWVudDo6c2Vla1RvVGltZShkb3VibGUgdGltZSkKICAgICB9
KTsKIH0KIAordm9pZCBXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlhRWxlbWVudDo6ZmFzdFNl
ZWsoZG91YmxlIHRpbWUpCit7CisgICAgX19ibG9jayBSZWZQdHI8V2ViVmlkZW9GdWxsc2NyZWVu
TW9kZWxNZWRpYUVsZW1lbnQ+IHByb3RlY3QodGhpcyk7CisgICAgV2ViVGhyZWFkUnVuKF57Cisg
ICAgICAgIG1fbWVkaWFFbGVtZW50LT5mYXN0U2Vlayh0aW1lKTsKKyAgICAgICAgcHJvdGVjdC5j
bGVhcigpOworICAgIH0pOworfQorCit2b2lkIFdlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFF
bGVtZW50OjpiZWdpblNjYW5uaW5nRm9yd2FyZCgpCit7CisgICAgX19ibG9jayBSZWZQdHI8V2Vi
VmlkZW9GdWxsc2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQ+IHByb3RlY3QodGhpcyk7CisgICAgV2Vi
VGhyZWFkUnVuKF57CisgICAgICAgIG1fbWVkaWFFbGVtZW50LT5iZWdpblNjYW5uaW5nKE1lZGlh
Q29udHJvbGxlckludGVyZmFjZTo6Rm9yd2FyZCk7CisgICAgICAgIHByb3RlY3QuY2xlYXIoKTsK
KyAgICB9KTsKK30KKwordm9pZCBXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlhRWxlbWVudDo6
YmVnaW5TY2FubmluZ0JhY2t3YXJkKCkKK3sKKyAgICBfX2Jsb2NrIFJlZlB0cjxXZWJWaWRlb0Z1
bGxzY3JlZW5Nb2RlbE1lZGlhRWxlbWVudD4gcHJvdGVjdCh0aGlzKTsKKyAgICBXZWJUaHJlYWRS
dW4oXnsKKyAgICAgICAgbV9tZWRpYUVsZW1lbnQtPmJlZ2luU2Nhbm5pbmcoTWVkaWFDb250cm9s
bGVySW50ZXJmYWNlOjpCYWNrd2FyZCk7CisgICAgICAgIHByb3RlY3QuY2xlYXIoKTsKKyAgICB9
KTsKK30KKwordm9pZCBXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlhRWxlbWVudDo6ZW5kU2Nh
bm5pbmcoKQoreworICAgIF9fYmxvY2sgUmVmUHRyPFdlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVk
aWFFbGVtZW50PiBwcm90ZWN0KHRoaXMpOworICAgIFdlYlRocmVhZFJ1biheeworICAgICAgICBt
X21lZGlhRWxlbWVudC0+ZW5kU2Nhbm5pbmcoKTsKKyAgICAgICAgcHJvdGVjdC5jbGVhcigpOwor
ICAgIH0pOworfQorCiB2b2lkIFdlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50Ojpy
ZXF1ZXN0RXhpdEZ1bGxzY3JlZW4oKQogewogICAgIF9fYmxvY2sgUmVmUHRyPFdlYlZpZGVvRnVs
bHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50PiBwcm90ZWN0KHRoaXMpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHku
aCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdl
clByb3h5LmgKaW5kZXggZjVmNWUzZWM5NTRlNjQxNTJjZmE0MzcyNTY1MTg5MmI2MWM5NTE5OC4u
ODVjZDJhMTYyZjEzOTQ4YmE5ZWIyMjk3ODkzOTdkMDBhZGMxOTg2MSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHku
aAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1h
bmFnZXJQcm94eS5oCkBAIC02NSw2ICs2NSwxMCBAQCBwcml2YXRlOgogICAgIHZpcnR1YWwgdm9p
ZCBwYXVzZSgpIG92ZXJyaWRlOwogICAgIHZpcnR1YWwgdm9pZCB0b2dnbGVQbGF5U3RhdGUoKSBv
dmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgc2Vla1RvVGltZShkb3VibGUpIG92ZXJyaWRlOwor
ICAgIHZpcnR1YWwgdm9pZCBmYXN0U2Vlayhkb3VibGUgdGltZSkgb3ZlcnJpZGU7CisgICAgdmly
dHVhbCB2b2lkIGJlZ2luU2Nhbm5pbmdGb3J3YXJkKCkgb3ZlcnJpZGU7CisgICAgdmlydHVhbCB2
b2lkIGJlZ2luU2Nhbm5pbmdCYWNrd2FyZCgpIG92ZXJyaWRlOworICAgIHZpcnR1YWwgdm9pZCBl
bmRTY2FubmluZygpIG92ZXJyaWRlOwogICAgIHZpcnR1YWwgdm9pZCBzZXRWaWRlb0xheWVyRnJh
bWUoV2ViQ29yZTo6RmxvYXRSZWN0KSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0Vmlk
ZW9MYXllckdyYXZpdHkoV2ViQ29yZTo6V2ViVmlkZW9GdWxsc2NyZWVuTW9kZWw6OlZpZGVvR3Jh
dml0eSkgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCB2b2lkIHNlbGVjdEF1ZGlvTWVkaWFPcHRpb24o
dWludDY0X3QpIG92ZXJyaWRlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkubW0gYi9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbQppbmRleCBiYjQz
NDk2NmNhNjdmM2Y5OTJhZjFlYzBkMzc1NDBjZjA5MTZkZTY2Li42N2Q3M2Q0ZjgyZWQ4NzdiODNl
NjMxNTBlNzgxYWJkNzZhODUwNmE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbQorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbQpAQCAt
MTE2LDYgKzExNiwyNiBAQCB2b2lkIFdlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eTo6c2Vl
a1RvVGltZShkb3VibGUgdGltZSkKICAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlZpZGVv
RnVsbHNjcmVlbk1hbmFnZXI6OlNlZWtUb1RpbWUodGltZSksIG1fcGFnZS0+cGFnZUlEKCkpOwog
fQogCit2b2lkIFdlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eTo6ZmFzdFNlZWsoZG91Ymxl
IHRpbWUpCit7CisgICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJWaWRlb0Z1bGxzY3JlZW5N
YW5hZ2VyOjpGYXN0U2Vlayh0aW1lKSwgbV9wYWdlLT5wYWdlSUQoKSk7Cit9CisKK3ZvaWQgV2Vi
VmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5OjpiZWdpblNjYW5uaW5nRm9yd2FyZCgpCit7Cisg
ICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpCZWdp
blNjYW5uaW5nRm9yd2FyZCgpLCBtX3BhZ2UtPnBhZ2VJRCgpKTsKK30KKwordm9pZCBXZWJWaWRl
b0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OmJlZ2luU2Nhbm5pbmdCYWNrd2FyZCgpCit7CisgICAg
bV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpCZWdpblNj
YW5uaW5nQmFja3dhcmQoKSwgbV9wYWdlLT5wYWdlSUQoKSk7Cit9CisKK3ZvaWQgV2ViVmlkZW9G
dWxsc2NyZWVuTWFuYWdlclByb3h5OjplbmRTY2FubmluZygpCit7CisgICAgbV9wYWdlLT5zZW5k
KE1lc3NhZ2VzOjpXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpFbmRTY2FubmluZygpLCBtX3Bh
Z2UtPnBhZ2VJRCgpKTsKK30KKwogdm9pZCBXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6
OnNldFZpZGVvTGF5ZXJGcmFtZShXZWJDb3JlOjpGbG9hdFJlY3QgZnJhbWUpCiB7CiAgICAgbV9w
YWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpTZXRWaWRlb0xh
eWVyRnJhbWUoZnJhbWUpLCBtX3BhZ2UtPnBhZ2VJRCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubWVzc2FnZXMu
aW4gYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5NYW5h
Z2VyLm1lc3NhZ2VzLmluCmluZGV4IGNkZGU0YjczZWIyMmIxZTM4MzNmZTEyY2YxOTgwOWU3M2Q2
ZTc3ZTIuLjc1N2M2OWJkOTY1YmFlMjg0ZWViNmQ3Y2RlNWY1YWYxZWY4YWQ4ZjYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1hbmFn
ZXIubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9pb3MvV2ViVmlk
ZW9GdWxsc2NyZWVuTWFuYWdlci5tZXNzYWdlcy5pbgpAQCAtMjYsNiArMjYsMTAgQEAgbWVzc2Fn
ZXMgLT4gV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlciB7CiAgICAgUGF1c2UoKQogICAgIFRvZ2ds
ZVBsYXlTdGF0ZSgpCiAgICAgU2Vla1RvVGltZShkb3VibGUgdGltZSkKKyAgICBGYXN0U2Vlayhk
b3VibGUgdGltZSkKKyAgICBCZWdpblNjYW5uaW5nRm9yd2FyZCgpCisgICAgQmVnaW5TY2Fubmlu
Z0JhY2t3YXJkKCkKKyAgICBFbmRTY2FubmluZygpCiAgICAgUmVxdWVzdEV4aXRGdWxsc2NyZWVu
KCkKICAgICBEaWRFeGl0RnVsbHNjcmVlbigpCiAgICAgRGlkRW50ZXJGdWxsc2NyZWVuKCkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>230848</attachid>
            <date>2014-05-05 12:52:30 -0700</date>
            <delta_ts>2014-05-05 13:37:18 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-132517-20140505125211.patch</filename>
            <type>text/plain</type>
            <size>16741</size>
            <attacher name="Jeremy Jones">jeremyj-wk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY4MTA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjY3MTdiZDRiYTM5OWI2
YWI5ZWQ0N2EwMDhlN2E1MDc2OTRmOTQxZS4uZmI4NzcxYzhiZDJlNTI3ZTFiZmQyZmIyMWIyNTk5
NGI5ZmRhNzE5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ4IEBACisyMDE0LTA1LTAyICBKZXJl
bXkgSm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBJbXBsZW1lbnQgc2NhbiBi
YWNrd2FyZCBhbmQgZm9yd2FyZCBpbiB2aWRlbyBmdWxsc2NyZWVuLgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTMyNTE3CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50IHNjYW5uaW5nIGZvcndh
cmQgYW5kIGJhY2t3YXJkLiBUaGlzIGltcGxlbWVudHMgbWV0aG9kcyBpbiAKKyAgICAgICAgV2Vi
QVZQbGF5ZXJDb250cm9sbGVyIGFuZCBmb3J3YXJkcyB0aGVtIHRocm91Z2ggV2ViVmlkZW9GdWxs
c2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQKKyAgICAgICAgYW5kIG9uIHRvIEhUTUxNZWRpYUVsZW1l
bnQuCisKKyAgICAgICAgKiBXZWJDb3JlLmV4cC5pbjogbmVjZXNzYXJ5IGV4cG9ydHMuCisgICAg
ICAgICogcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tOgor
ICAgICAgICAoLVtXZWJBVlBsYXllckNvbnRyb2xsZXIgc2Vla1RvVGltZTpdKToKKyAgICAgICAg
VXNlIGZhc3RTZWVrIGluIHRoaXMgY2FzZS4KKyAgICAgICAgKC1bV2ViQVZQbGF5ZXJDb250cm9s
bGVyIGNhblNjYW5Gb3J3YXJkXSk6IElmIHlvdSBjYW4gcGxheSwgeW91IGNhbiBzY2FuLgorICAg
ICAgICAoK1tXZWJBVlBsYXllckNvbnRyb2xsZXIga2V5UGF0aHNGb3JWYWx1ZXNBZmZlY3RpbmdD
YW5TY2FuRm9yd2FyZF0pOiBkaXR0bworICAgICAgICAoLVtXZWJBVlBsYXllckNvbnRyb2xsZXIg
c2NhbkZvcndhcmQ6XSk6IGZvcndhcmRzIHRvIHRoZSBkZWxlZ2F0ZS4KKyAgICAgICAgKC1bV2Vi
QVZQbGF5ZXJDb250cm9sbGVyIGJlZ2luU2Nhbm5pbmdGb3J3YXJkOl0pOiBkaXR0bworICAgICAg
ICAoLVtXZWJBVlBsYXllckNvbnRyb2xsZXIgZW5kU2Nhbm5pbmdGb3J3YXJkOl0pOiBkaXR0bwor
ICAgICAgICAoLVtXZWJBVlBsYXllckNvbnRyb2xsZXIgY2FuU2NhbkJhY2t3YXJkXSk6IElmIHlv
dSBjYW4gcGxheSwgeW91IGNhbiBzY2FuLgorICAgICAgICAoK1tXZWJBVlBsYXllckNvbnRyb2xs
ZXIga2V5UGF0aHNGb3JWYWx1ZXNBZmZlY3RpbmdDYW5TY2FuQmFja3dhcmRdKTogZGl0dG8KKyAg
ICAgICAgKC1bV2ViQVZQbGF5ZXJDb250cm9sbGVyIHNjYW5CYWNrd2FyZDpdKTogZm9yd2FyZHMg
dG8gdGhlIGRlbGVnYXRlLgorICAgICAgICAoLVtXZWJBVlBsYXllckNvbnRyb2xsZXIgYmVnaW5T
Y2FubmluZ0JhY2t3YXJkOl0pOiBkaXR0bworICAgICAgICAoLVtXZWJBVlBsYXllckNvbnRyb2xs
ZXIgZW5kU2Nhbm5pbmdCYWNrd2FyZDpdKTogZGl0dG8KKyAgICAgICAgKC1bV2ViQVZQbGF5ZXJD
b250cm9sbGVyIGNhblNlZWtUb0JlZ2lubmluZ10pOgorICAgICAgICBUaGlzIGxvb2tzIGF0IHNl
ZWthYmxlUmFuZ2VzIHRvIGRldGVybWluZSBpZiBhbnkgc2Vla2luZyBpcyBwb3NzaWJsZS4KKyAg
ICAgICAgKCtbV2ViQVZQbGF5ZXJDb250cm9sbGVyIGtleVBhdGhzRm9yVmFsdWVzQWZmZWN0aW5n
Q2FuU2Vla1RvQmVnaW5uaW5nXSk6CisgICAgICAgIGRlcGVuZHMgb24gc2Vla2FibGVSYW5nZXMu
CisgICAgICAgICgtW1dlYkFWUGxheWVyQ29udHJvbGxlciBzZWVrVG9CZWdpbm5pbmc6XSk6IHNl
ZWsgdG8gLWluaW5pdHkKKyAgICAgICAgKC1bV2ViQVZQbGF5ZXJDb250cm9sbGVyIGNhblNlZWtU
b0VuZF0pOgorICAgICAgICBUaGlzIGxvb2tzIGF0IHNlZWthYmxlUmFuZ2VzIHRvIGRldGVybWlu
ZSBpZiBhbnkgc2Vla2luZyBpcyBwb3NzaWJsZS4KKyAgICAgICAgKCtbV2ViQVZQbGF5ZXJDb250
cm9sbGVyIGtleVBhdGhzRm9yVmFsdWVzQWZmZWN0aW5nQ2FuU2Vla1RvRW5kXSk6CisgICAgICAg
IGRlcGVuZHMgb24gc2Vla2FibGVSYW5nZXMuCisgICAgICAgICgtW1dlYkFWUGxheWVyQ29udHJv
bGxlciBzZWVrVG9FbmQ6XSk6IHNlZWsgdG8gSU5GSU5JVFkuCisgICAgICAgICogcGxhdGZvcm0v
aW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1vZGVsLmg6CisgICAgICAgIEFkZCA0IG5ldyBmdW5jdGlv
bnMuCisgICAgICAgICogcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFF
bGVtZW50Lmg6CisgICAgICAgIGRpdHRvCisgICAgICAgICogcGxhdGZvcm0vaW9zL1dlYlZpZGVv
RnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50Lm1tOgorICAgICAgICAoV2ViVmlkZW9GdWxsc2Ny
ZWVuTW9kZWxNZWRpYUVsZW1lbnQ6OmZhc3RTZWVrKTogZm9yd2FyZHMgdG8gSFRNTE1lZGlhRWVs
ZW1lbnQKKyAgICAgICAgKFdlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50OjpiZWdp
blNjYW5uaW5nRm9yd2FyZCk6IGZvcndhcmRzIHRvIEhUTUxNZWRpYUVlbGVtZW50CisgICAgICAg
IChXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlhRWxlbWVudDo6YmVnaW5TY2FubmluZ0JhY2t3
YXJkKTogZm9yd2FyZHMgdG8gSFRNTE1lZGlhRWVsZW1lbnQKKyAgICAgICAgKFdlYlZpZGVvRnVs
bHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50OjplbmRTY2FubmluZyk6IGZvcndhcmRzIHRvIEhUTUxN
ZWRpYUVlbGVtZW50CisKIDIwMTQtMDQtMzAgIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5j
b20+CiAKICAgICAgICAgW01TRV0gU2Vla2luZyBiZXR3ZWVuIHR3byBidWZmZXJlZCByYW5nZXMg
ZW5xdXVlcyBpbmNvcnJlY3QgYnVmZmVycy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCAzNzQzM2M1MTQ5MGFlN2Rl
NjNkMTQ1MGZjOWU3OWU1NDAyNTRiN2YzLi5jMTY1MTY0MGY2MDE1ZjkzYjg3YWNiZTRmNjliNWYx
MDc1NWE0MjM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTQtMDUtMDIgIEplcmVt
eSBKb25lcyAgPGplcmVteWpAYXBwbGUuY29tPgorCisgICAgICAgIEltcGxlbWVudCBzY2FuIGJh
Y2t3YXJkIGFuZCBmb3J3YXJkIGluIHZpZGVvIGZ1bGxzY3JlZW4uCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzI1MTcKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBQbHVtYiB0aHJvdWdoIHNjYW5uaW5nL3Nl
ZWtpbmcgZnVuY3Rpb25zLgorCisgICAgICAgICogVUlQcm9jZXNzL2lvcy9XZWJWaWRlb0Z1bGxz
Y3JlZW5NYW5hZ2VyUHJveHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dlYlZpZGVvRnVs
bHNjcmVlbk1hbmFnZXJQcm94eS5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViVmlkZW9GdWxsc2Ny
ZWVuTWFuYWdlclByb3h5OjpmYXN0U2Vlayk6CisgICAgICAgIChXZWJLaXQ6OldlYlZpZGVvRnVs
bHNjcmVlbk1hbmFnZXJQcm94eTo6YmVnaW5TY2FubmluZ0ZvcndhcmQpOgorICAgICAgICAoV2Vi
S2l0OjpXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OmJlZ2luU2Nhbm5pbmdCYWNrd2Fy
ZCk6CisgICAgICAgIChXZWJLaXQ6OldlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eTo6ZW5k
U2Nhbm5pbmcpOgorICAgICAgICAqIFdlYlByb2Nlc3MvaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1h
bmFnZXIubWVzc2FnZXMuaW46CisKIDIwMTQtMDUtMDEgIFJ5dWFuIENob2kgIDxyeXVhbi5jaG9p
QHNhbXN1bmcuY29tPgogCiAgICAgICAgIFtFRkxdIFRoZXJlIGFyZSBtYW55IHdhcm5pbmdzIHdp
dGggc29mdHdhcmUgYmFja2VuZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5l
eHAuaW4gYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgppbmRleCBhNjgzYTQ3YWExYWY3
Nzc5MjFhMzEwZjY0ZTFiZjkyZGM5YTg1NjNhLi44Mjc1NmE1MjFjZmMwNzgyNTY0NzNlYjFmZDdm
YmM1OTViMDFiM2RlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgor
KysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgpAQCAtMzI5MCwxNyArMzI5MCwyMSBA
QCBfX1pOSzdXZWJDb3JlMTZIVE1MTWVkaWFFbGVtZW50OGR1cmF0aW9uRXYKIAogI2lmIEVOQUJM
RShWSURFTykgJiYgUExBVEZPUk0oSU9TKQogX19aTjdXZWJDb3JlMzVXZWJWaWRlb0Z1bGxzY3Jl
ZW5Nb2RlbE1lZGlhRWxlbWVudDEwc2Vla1RvVGltZUVkCitfX1pON1dlYkNvcmUzNVdlYlZpZGVv
RnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50MTFlbmRTY2FubmluZ0V2CiBfX1pON1dlYkNvcmUz
NVdlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50MTFoYW5kbGVFdmVudEVQTlNfMjJT
Y3JpcHRFeGVjdXRpb25Db250ZXh0RVBOU181RXZlbnRFCiBfX1pON1dlYkNvcmUzNVdlYlZpZGVv
RnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50MTVzZXRNZWRpYUVsZW1lbnRFUE5TXzE2SFRNTE1l
ZGlhRWxlbWVudEUKIF9fWk43V2ViQ29yZTM1V2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxNZWRpYUVs
ZW1lbnQxNXRvZ2dsZVBsYXlTdGF0ZUV2CiBfX1pON1dlYkNvcmUzNVdlYlZpZGVvRnVsbHNjcmVl
bk1vZGVsTWVkaWFFbGVtZW50MThzZXRWaWRlb0xheWVyRnJhbWVFTlNfOUZsb2F0UmVjdEUKK19f
Wk43V2ViQ29yZTM1V2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQyMGJlZ2luU2Nh
bm5pbmdGb3J3YXJkRXYKIF9fWk43V2ViQ29yZTM1V2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxNZWRp
YUVsZW1lbnQyMHNldFZpZGVvTGF5ZXJHcmF2aXR5RU5TXzIzV2ViVmlkZW9GdWxsc2NyZWVuTW9k
ZWwxMlZpZGVvR3Jhdml0eUUKK19fWk43V2ViQ29yZTM1V2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxN
ZWRpYUVsZW1lbnQyMWJlZ2luU2Nhbm5pbmdCYWNrd2FyZEV2CiBfX1pON1dlYkNvcmUzNVdlYlZp
ZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50MjFyZXF1ZXN0RXhpdEZ1bGxzY3JlZW5Fdgog
X19aTjdXZWJDb3JlMzVXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlhRWxlbWVudDIyc2VsZWN0
QXVkaW9NZWRpYU9wdGlvbkV5CiBfX1pON1dlYkNvcmUzNVdlYlZpZGVvRnVsbHNjcmVlbk1vZGVs
TWVkaWFFbGVtZW50MjNzZXRWaWRlb0Z1bGxzY3JlZW5MYXllckVQN0NBTGF5ZXIKIF9fWk43V2Vi
Q29yZTM1V2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQyNHNlbGVjdExlZ2libGVN
ZWRpYU9wdGlvbkV5CiBfX1pON1dlYkNvcmUzNVdlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFF
bGVtZW50NHBsYXlFdgogX19aTjdXZWJDb3JlMzVXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlh
RWxlbWVudDVwYXVzZUV2CitfX1pON1dlYkNvcmUzNVdlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVk
aWFFbGVtZW50OGZhc3RTZWVrRWQKIF9fWk43V2ViQ29yZTM1V2ViVmlkZW9GdWxsc2NyZWVuTW9k
ZWxNZWRpYUVsZW1lbnRDMkV2CiBfX1pON1dlYkNvcmUzNVdlYlZpZGVvRnVsbHNjcmVlbk1vZGVs
TWVkaWFFbGVtZW50RDJFdgogX19aTks3V2ViQ29yZTE2SFRNTFZpZGVvRWxlbWVudDEwdmlkZW9X
aWR0aEV2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlkZW9G
dWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3Mv
V2ViVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0KaW5kZXggZWM4OWZkM2U3YjhiOTBi
OWVhMTBhMjU4YWRiMmY2MzkyNzEyZmM2NS4uYThiZTA3OTgyMTVmNWVkZGQ4ZjQwM2JmNjU1Yzk1
YTQ5Njc5MjQ5OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYlZp
ZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbQpAQCAtNzIsNiArNzIs
MTEgQEAgU09GVF9MSU5LKENvcmVNZWRpYSwgQ01UaW1lUmFuZ2VDb250YWluc1RpbWUsIEJvb2xl
YW4sIChDTVRpbWVSYW5nZSByYW5nZSwgQ01UaW0KIFNPRlRfTElOSyhDb3JlTWVkaWEsIENNVGlt
ZVJhbmdlR2V0RW5kLCBDTVRpbWUsIChDTVRpbWVSYW5nZSByYW5nZSksIChyYW5nZSkpCiBTT0ZU
X0xJTksoQ29yZU1lZGlhLCBDTVRpbWVSYW5nZU1ha2UsIENNVGltZVJhbmdlLCAoQ01UaW1lIHN0
YXJ0LCBDTVRpbWUgZHVyYXRpb24pLCAoc3RhcnQsIGR1cmF0aW9uKSkKIFNPRlRfTElOSyhDb3Jl
TWVkaWEsIENNVGltZVN1YnRyYWN0LCBDTVRpbWUsIChDTVRpbWUgbWludWVuZCwgQ01UaW1lIHN1
YnRyYWhlbmQpLCAobWludWVuZCwgc3VidHJhaGVuZCkpCitTT0ZUX0xJTksoQ29yZU1lZGlhLCBD
TVRpbWVNYXhpbXVtLCBDTVRpbWUsIChDTVRpbWUgdGltZTEsIENNVGltZSB0aW1lMiksICh0aW1l
MSwgdGltZTIpKQorU09GVF9MSU5LKENvcmVNZWRpYSwgQ01UaW1lTWluaW11bSwgQ01UaW1lLCAo
Q01UaW1lIHRpbWUxLCBDTVRpbWUgdGltZTIpLCAodGltZTEsIHRpbWUyKSkKK1NPRlRfTElOS19D
T05TVEFOVChDb3JlTWVkaWEsIGtDTVRpbWVJbmRlZmluaXRlLCBDTVRpbWUpCisKKyNkZWZpbmUg
a0NNVGltZUluZGVmaW5pdGUgZ2V0a0NNVGltZUluZGVmaW5pdGUoKQogCiBAY2xhc3MgV2ViQVZN
ZWRpYVNlbGVjdGlvbk9wdGlvbjsKIApAQCAtODQsNiArODksMTEgQEAgU09GVF9MSU5LKENvcmVN
ZWRpYSwgQ01UaW1lU3VidHJhY3QsIENNVGltZSwgKENNVGltZSBtaW51ZW5kLCBDTVRpbWUgc3Vi
dHJhaGVuZCkKIEBwcm9wZXJ0eShyZXRhaW4pIEFWUGxheWVyQ29udHJvbGxlciogcGxheWVyQ29u
dHJvbGxlclByb3h5OwogQHByb3BlcnR5KGFzc2lnbikgV2ViVmlkZW9GdWxsc2NyZWVuTW9kZWwq
IGRlbGVnYXRlOwogCitAcHJvcGVydHkgKHJlYWRvbmx5KSBCT09MIGNhblNjYW5Gb3J3YXJkOwor
QHByb3BlcnR5IChyZWFkb25seSkgQk9PTCBjYW5TY2FuQmFja3dhcmQ7CitAcHJvcGVydHkgKHJl
YWRvbmx5KSBCT09MIGNhblNlZWtUb0JlZ2lubmluZzsKK0Bwcm9wZXJ0eSAocmVhZG9ubHkpIEJP
T0wgY2FuU2Vla1RvRW5kOworCiBAcHJvcGVydHkgQk9PTCBjYW5QbGF5OwogQHByb3BlcnR5KGdl
dHRlcj1pc1BsYXlpbmcpIEJPT0wgcGxheWluZzsKIEBwcm9wZXJ0eSBCT09MIGNhblBhdXNlOwpA
QCAtMTk4LDcgKzIwOCw3IEBAIFNPRlRfTElOSyhDb3JlTWVkaWEsIENNVGltZVN1YnRyYWN0LCBD
TVRpbWUsIChDTVRpbWUgbWludWVuZCwgQ01UaW1lIHN1YnRyYWhlbmQpCiAtICh2b2lkKXNlZWtU
b1RpbWU6KE5TVGltZUludGVydmFsKXRpbWUKIHsKICAgICBBU1NFUlQoc2VsZi5kZWxlZ2F0ZSk7
Ci0gICAgc2VsZi5kZWxlZ2F0ZS0+c2Vla1RvVGltZSh0aW1lKTsKKyAgICBzZWxmLmRlbGVnYXRl
LT5mYXN0U2Vlayh0aW1lKTsKIH0KIAogLSAoQk9PTCloYXNMaXZlU3RyZWFtaW5nQ29udGVudApA
QCAtMjQ3LDYgKzI1NywxMTQgQEAgU09GVF9MSU5LKENvcmVNZWRpYSwgQ01UaW1lU3VidHJhY3Qs
IENNVGltZSwgKENNVGltZSBtaW51ZW5kLCBDTVRpbWUgc3VidHJhaGVuZCkKICAgICAgICAgW3Nl
bGYgc2Vla1RvVGltZTp0aW1lQXRFbmRPZlNlZWthYmxlVGltZVJhbmdlc107CiB9CiAKKy0gKEJP
T0wpY2FuU2NhbkZvcndhcmQKK3sKKyAgICByZXR1cm4gW3NlbGYgY2FuUGxheV07Cit9CisKKysg
KE5TU2V0ICopa2V5UGF0aHNGb3JWYWx1ZXNBZmZlY3RpbmdDYW5TY2FuRm9yd2FyZAoreworICAg
IHJldHVybiBbTlNTZXQgc2V0V2l0aE9iamVjdDpAImNhblBsYXkiXTsKK30KKworLSAodm9pZClz
Y2FuRm9yd2FyZDooaWQpc2VuZGVyCit7CisgICAgVU5VU0VEX1BBUkFNKHNlbmRlcik7CisgICAg
QVNTRVJUKHNlbGYuZGVsZWdhdGUpOworICAgIHNlbGYuZGVsZWdhdGUtPmJlZ2luU2Nhbm5pbmdG
b3J3YXJkKCk7Cit9CisKKy0gKHZvaWQpYmVnaW5TY2FubmluZ0ZvcndhcmQ6KGlkKXNlbmRlcgor
eworICAgIFVOVVNFRF9QQVJBTShzZW5kZXIpOworICAgIEFTU0VSVChzZWxmLmRlbGVnYXRlKTsK
KyAgICBzZWxmLmRlbGVnYXRlLT5iZWdpblNjYW5uaW5nRm9yd2FyZCgpOworfQorCistICh2b2lk
KWVuZFNjYW5uaW5nRm9yd2FyZDooaWQpc2VuZGVyCit7CisgICAgVU5VU0VEX1BBUkFNKHNlbmRl
cik7CisgICAgQVNTRVJUKHNlbGYuZGVsZWdhdGUpOworICAgIHNlbGYuZGVsZWdhdGUtPmVuZFNj
YW5uaW5nKCk7Cit9CisKKy0gKEJPT0wpY2FuU2NhbkJhY2t3YXJkCit7CisgICAgcmV0dXJuIFtz
ZWxmIGNhblBsYXldOworfQorCisrIChOU1NldCAqKWtleVBhdGhzRm9yVmFsdWVzQWZmZWN0aW5n
Q2FuU2NhbkJhY2t3YXJkCit7CisgICAgcmV0dXJuIFtOU1NldCBzZXRXaXRoT2JqZWN0OkAiY2Fu
UGxheSJdOworfQorCistICh2b2lkKXNjYW5CYWNrd2FyZDooaWQpc2VuZGVyCit7CisgICAgVU5V
U0VEX1BBUkFNKHNlbmRlcik7CisgICAgQVNTRVJUKHNlbGYuZGVsZWdhdGUpOworICAgIHNlbGYu
ZGVsZWdhdGUtPmJlZ2luU2Nhbm5pbmdCYWNrd2FyZCgpOworfQorCistICh2b2lkKWJlZ2luU2Nh
bm5pbmdCYWNrd2FyZDooaWQpc2VuZGVyCit7CisgICAgVU5VU0VEX1BBUkFNKHNlbmRlcik7Cisg
ICAgQVNTRVJUKHNlbGYuZGVsZWdhdGUpOworICAgIHNlbGYuZGVsZWdhdGUtPmJlZ2luU2Nhbm5p
bmdCYWNrd2FyZCgpOworfQorCistICh2b2lkKWVuZFNjYW5uaW5nQmFja3dhcmQ6KGlkKXNlbmRl
cgoreworICAgIFVOVVNFRF9QQVJBTShzZW5kZXIpOworICAgIEFTU0VSVChzZWxmLmRlbGVnYXRl
KTsKKyAgICBzZWxmLmRlbGVnYXRlLT5lbmRTY2FubmluZygpOworfQorCistIChCT09MKWNhblNl
ZWtUb0JlZ2lubmluZworeworICAgIENNVGltZSBtaW5pbXVtVGltZSA9IGtDTVRpbWVJbmRlZmlu
aXRlOworCisgICAgZm9yIChOU1ZhbHVlICp2YWx1ZSBpbiBbc2VsZiBzZWVrYWJsZVRpbWVSYW5n
ZXNdKQorICAgICAgICBtaW5pbXVtVGltZSA9IENNVGltZU1pbmltdW0oW3ZhbHVlIENNVGltZVJh
bmdlVmFsdWVdLnN0YXJ0LCBtaW5pbXVtVGltZSk7CisKKyAgICByZXR1cm4gQ01USU1FX0lTX05V
TUVSSUMobWluaW11bVRpbWUpOworfQorCisrIChOU1NldCAqKWtleVBhdGhzRm9yVmFsdWVzQWZm
ZWN0aW5nQ2FuU2Vla1RvQmVnaW5uaW5nCit7CisgICAgcmV0dXJuIFtOU1NldCBzZXRXaXRoT2Jq
ZWN0OkAic2Vla2FibGVUaW1lUmFuZ2VzIl07Cit9CisKKy0gKHZvaWQpc2Vla1RvQmVnaW5uaW5n
OihpZClzZW5kZXIKK3sKKyAgICBVTlVTRURfUEFSQU0oc2VuZGVyKTsKKyAgICBBU1NFUlQoc2Vs
Zi5kZWxlZ2F0ZSk7CisKKyAgICBzZWxmLmRlbGVnYXRlLT5zZWVrVG9UaW1lKC1JTkZJTklUWSk7
Cit9CisKKy0gKEJPT0wpY2FuU2Vla1RvRW5kCit7CisgICAgQ01UaW1lIG1heGltdW1UaW1lID0g
a0NNVGltZUluZGVmaW5pdGU7CisKKyAgICBmb3IgKE5TVmFsdWUgKnZhbHVlIGluIFtzZWxmIHNl
ZWthYmxlVGltZVJhbmdlc10pCisgICAgICAgIG1heGltdW1UaW1lID0gQ01UaW1lTWF4aW11bShD
TVRpbWVSYW5nZUdldEVuZChbdmFsdWUgQ01UaW1lUmFuZ2VWYWx1ZV0pLCBtYXhpbXVtVGltZSk7
CisKKyAgICByZXR1cm4gQ01USU1FX0lTX05VTUVSSUMobWF4aW11bVRpbWUpOworfQorCisrIChO
U1NldCAqKWtleVBhdGhzRm9yVmFsdWVzQWZmZWN0aW5nQ2FuU2Vla1RvRW5kCit7CisgICAgcmV0
dXJuIFtOU1NldCBzZXRXaXRoT2JqZWN0OkAic2Vla2FibGVUaW1lUmFuZ2VzIl07Cit9CisKKy0g
KHZvaWQpc2Vla1RvRW5kOihpZClzZW5kZXIKK3sKKyAgICBVTlVTRURfUEFSQU0oc2VuZGVyKTsK
KyAgICBBU1NFUlQoc2VsZi5kZWxlZ2F0ZSk7CisKKyAgICBzZWxmLmRlbGVnYXRlLT5zZWVrVG9U
aW1lKElORklOSVRZKTsKK30KKwogLSAoQk9PTCloYXNNZWRpYVNlbGVjdGlvbk9wdGlvbnMKIHsK
ICAgICByZXR1cm4gW3NlbGYgaGFzQXVkaW9NZWRpYVNlbGVjdGlvbk9wdGlvbnNdIHx8IFtzZWxm
IGhhc0xlZ2libGVNZWRpYVNlbGVjdGlvbk9wdGlvbnNdOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1vZGVsLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuTW9kZWwuaAppbmRleCAyMTAyZWE4
ZTFlNDcwZWFjYWZmZWMyOWE2NjEyNzNjNTliNTZjNjdkLi41ZDExYjRkNDE0NGUzOTRjZjc1YzVm
MTBlOWFkYTA1ZjEyZDY4NDFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9p
b3MvV2ViVmlkZW9GdWxsc2NyZWVuTW9kZWwuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuTW9kZWwuaApAQCAtNDAsNiArNDAsMTAgQEAgcHVibGlj
OgogICAgIHZpcnR1YWwgdm9pZCBwYXVzZSgpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgdG9nZ2xl
UGxheVN0YXRlKCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBzZWVrVG9UaW1lKGRvdWJsZSB0aW1l
KSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGZhc3RTZWVrKGRvdWJsZSB0aW1lKSA9IDA7CisgICAg
dmlydHVhbCB2b2lkIGJlZ2luU2Nhbm5pbmdGb3J3YXJkKCkgPSAwOworICAgIHZpcnR1YWwgdm9p
ZCBiZWdpblNjYW5uaW5nQmFja3dhcmQoKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGVuZFNjYW5u
aW5nKCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCByZXF1ZXN0RXhpdEZ1bGxzY3JlZW4oKSA9IDA7
CiAgICAgdmlydHVhbCB2b2lkIHNldFZpZGVvTGF5ZXJGcmFtZShGbG9hdFJlY3QpID0gMDsKICAg
ICBlbnVtIFZpZGVvR3Jhdml0eSB7IFZpZGVvR3Jhdml0eVJlc2l6ZSwgVmlkZW9HcmF2aXR5UmVz
aXplQXNwZWN0LCBWaWRlb0dyYXZpdHlSZXNpemVBc3BlY3RGaWxsIH07CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxNZWRpYUVs
ZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5N
b2RlbE1lZGlhRWxlbWVudC5oCmluZGV4IDhjOWU2MTA2NWM5NmQ3MDBjODhkMTgzMDMxZmQyMDAx
YjVhNDJlYjMuLmE1NTI2ODRiMTkyOTkxMjg4NzhmNmVmOTBlN2Y2NTUwMzg2YjYwMWUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5Nb2Rl
bE1lZGlhRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRl
b0Z1bGxzY3JlZW5Nb2RlbE1lZGlhRWxlbWVudC5oCkBAIC02Miw2ICs2MiwxMCBAQCBwdWJsaWM6
CiAgICAgdmlydHVhbCB2b2lkIHBhdXNlKCkgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCB2b2lkIHRv
Z2dsZVBsYXlTdGF0ZSgpIG92ZXJyaWRlOwogICAgIHZpcnR1YWwgdm9pZCBzZWVrVG9UaW1lKGRv
dWJsZSB0aW1lKSBvdmVycmlkZTsKKyAgICB2aXJ0dWFsIHZvaWQgZmFzdFNlZWsoZG91YmxlIHRp
bWUpIG92ZXJyaWRlOworICAgIHZpcnR1YWwgdm9pZCBiZWdpblNjYW5uaW5nRm9yd2FyZCgpIG92
ZXJyaWRlOworICAgIHZpcnR1YWwgdm9pZCBiZWdpblNjYW5uaW5nQmFja3dhcmQoKSBvdmVycmlk
ZTsKKyAgICB2aXJ0dWFsIHZvaWQgZW5kU2Nhbm5pbmcoKSBvdmVycmlkZTsKICAgICB2aXJ0dWFs
IHZvaWQgcmVxdWVzdEV4aXRGdWxsc2NyZWVuKCkgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCB2b2lk
IHNldFZpZGVvTGF5ZXJGcmFtZShGbG9hdFJlY3QpIG92ZXJyaWRlOwogICAgIHZpcnR1YWwgdm9p
ZCBzZXRWaWRlb0xheWVyR3Jhdml0eShXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbDo6VmlkZW9HcmF2
aXR5KSBvdmVycmlkZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9X
ZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlhRWxlbWVudC5tbSBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlhRWxlbWVudC5tbQppbmRleCAx
MjYwMzljODQxYTcxMDZkODU5YmE1NjYzYTQzOTUzYTkxZjYwZjFkLi4xZjZkODU2ODc0MmM2Nzlh
ZGVhODkyZjJlODUyZjFlN2YwNjYwZTJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQubW0KKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVt
ZW50Lm1tCkBAIC0xNzIsNiArMTcyLDQyIEBAIHZvaWQgV2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxN
ZWRpYUVsZW1lbnQ6OnNlZWtUb1RpbWUoZG91YmxlIHRpbWUpCiAgICAgfSk7CiB9CiAKK3ZvaWQg
V2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQ6OmZhc3RTZWVrKGRvdWJsZSB0aW1l
KQoreworICAgIF9fYmxvY2sgUmVmUHRyPFdlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVt
ZW50PiBwcm90ZWN0KHRoaXMpOworICAgIFdlYlRocmVhZFJ1biheeworICAgICAgICBtX21lZGlh
RWxlbWVudC0+ZmFzdFNlZWsodGltZSk7CisgICAgICAgIHByb3RlY3QuY2xlYXIoKTsKKyAgICB9
KTsKK30KKwordm9pZCBXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlhRWxlbWVudDo6YmVnaW5T
Y2FubmluZ0ZvcndhcmQoKQoreworICAgIF9fYmxvY2sgUmVmUHRyPFdlYlZpZGVvRnVsbHNjcmVl
bk1vZGVsTWVkaWFFbGVtZW50PiBwcm90ZWN0KHRoaXMpOworICAgIFdlYlRocmVhZFJ1biheewor
ICAgICAgICBtX21lZGlhRWxlbWVudC0+YmVnaW5TY2FubmluZyhNZWRpYUNvbnRyb2xsZXJJbnRl
cmZhY2U6OkZvcndhcmQpOworICAgICAgICBwcm90ZWN0LmNsZWFyKCk7CisgICAgfSk7Cit9CisK
K3ZvaWQgV2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQ6OmJlZ2luU2Nhbm5pbmdC
YWNrd2FyZCgpCit7CisgICAgX19ibG9jayBSZWZQdHI8V2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxN
ZWRpYUVsZW1lbnQ+IHByb3RlY3QodGhpcyk7CisgICAgV2ViVGhyZWFkUnVuKF57CisgICAgICAg
IG1fbWVkaWFFbGVtZW50LT5iZWdpblNjYW5uaW5nKE1lZGlhQ29udHJvbGxlckludGVyZmFjZTo6
QmFja3dhcmQpOworICAgICAgICBwcm90ZWN0LmNsZWFyKCk7CisgICAgfSk7Cit9CisKK3ZvaWQg
V2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQ6OmVuZFNjYW5uaW5nKCkKK3sKKyAg
ICBfX2Jsb2NrIFJlZlB0cjxXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlhRWxlbWVudD4gcHJv
dGVjdCh0aGlzKTsKKyAgICBXZWJUaHJlYWRSdW4oXnsKKyAgICAgICAgbV9tZWRpYUVsZW1lbnQt
PmVuZFNjYW5uaW5nKCk7CisgICAgICAgIHByb3RlY3QuY2xlYXIoKTsKKyAgICB9KTsKK30KKwog
dm9pZCBXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlhRWxlbWVudDo6cmVxdWVzdEV4aXRGdWxs
c2NyZWVuKCkKIHsKICAgICBfX2Jsb2NrIFJlZlB0cjxXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1l
ZGlhRWxlbWVudD4gcHJvdGVjdCh0aGlzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5LmggYi9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5oCmluZGV4
IGY1ZjVlM2VjOTU0ZTY0MTUyY2ZhNDM3MjU2NTE4OTJiNjFjOTUxOTguLjg1Y2QyYTE2MmYxMzk0
OGJhOWViMjI5Nzg5Mzk3ZDAwYWRjMTk4NjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5LmgKKysrIGIvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaApA
QCAtNjUsNiArNjUsMTAgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIHZvaWQgcGF1c2UoKSBvdmVy
cmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgdG9nZ2xlUGxheVN0YXRlKCkgb3ZlcnJpZGU7CiAgICAg
dmlydHVhbCB2b2lkIHNlZWtUb1RpbWUoZG91YmxlKSBvdmVycmlkZTsKKyAgICB2aXJ0dWFsIHZv
aWQgZmFzdFNlZWsoZG91YmxlIHRpbWUpIG92ZXJyaWRlOworICAgIHZpcnR1YWwgdm9pZCBiZWdp
blNjYW5uaW5nRm9yd2FyZCgpIG92ZXJyaWRlOworICAgIHZpcnR1YWwgdm9pZCBiZWdpblNjYW5u
aW5nQmFja3dhcmQoKSBvdmVycmlkZTsKKyAgICB2aXJ0dWFsIHZvaWQgZW5kU2Nhbm5pbmcoKSBv
dmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0VmlkZW9MYXllckZyYW1lKFdlYkNvcmU6OkZs
b2F0UmVjdCkgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCB2b2lkIHNldFZpZGVvTGF5ZXJHcmF2aXR5
KFdlYkNvcmU6OldlYlZpZGVvRnVsbHNjcmVlbk1vZGVsOjpWaWRlb0dyYXZpdHkpIG92ZXJyaWRl
OwogICAgIHZpcnR1YWwgdm9pZCBzZWxlY3RBdWRpb01lZGlhT3B0aW9uKHVpbnQ2NF90KSBvdmVy
cmlkZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV2ViVmlkZW9G
dWxsc2NyZWVuTWFuYWdlclByb3h5Lm1tIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9X
ZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkubW0KaW5kZXggYmI0MzQ5NjZjYTY3ZjNmOTky
YWYxZWMwZDM3NTQwY2YwOTE2ZGU2Ni4uNjdkNzNkNGY4MmVkODc3YjgzZTYzMTUwZTc4MWFiZDc2
YTg1MDZhOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XZWJWaWRl
b0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkubW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkubW0KQEAgLTExNiw2ICsxMTYsMjYg
QEAgdm9pZCBXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OnNlZWtUb1RpbWUoZG91Ymxl
IHRpbWUpCiAgICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJWaWRlb0Z1bGxzY3JlZW5NYW5h
Z2VyOjpTZWVrVG9UaW1lKHRpbWUpLCBtX3BhZ2UtPnBhZ2VJRCgpKTsKIH0KIAordm9pZCBXZWJW
aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OmZhc3RTZWVrKGRvdWJsZSB0aW1lKQoreworICAg
IG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6RmFzdFNl
ZWsodGltZSksIG1fcGFnZS0+cGFnZUlEKCkpOworfQorCit2b2lkIFdlYlZpZGVvRnVsbHNjcmVl
bk1hbmFnZXJQcm94eTo6YmVnaW5TY2FubmluZ0ZvcndhcmQoKQoreworICAgIG1fcGFnZS0+c2Vu
ZChNZXNzYWdlczo6V2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6QmVnaW5TY2FubmluZ0Zvcndh
cmQoKSwgbV9wYWdlLT5wYWdlSUQoKSk7Cit9CisKK3ZvaWQgV2ViVmlkZW9GdWxsc2NyZWVuTWFu
YWdlclByb3h5OjpiZWdpblNjYW5uaW5nQmFja3dhcmQoKQoreworICAgIG1fcGFnZS0+c2VuZChN
ZXNzYWdlczo6V2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6QmVnaW5TY2FubmluZ0JhY2t3YXJk
KCksIG1fcGFnZS0+cGFnZUlEKCkpOworfQorCit2b2lkIFdlYlZpZGVvRnVsbHNjcmVlbk1hbmFn
ZXJQcm94eTo6ZW5kU2Nhbm5pbmcoKQoreworICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2Vi
VmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6RW5kU2Nhbm5pbmcoKSwgbV9wYWdlLT5wYWdlSUQoKSk7
Cit9CisKIHZvaWQgV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5OjpzZXRWaWRlb0xheWVy
RnJhbWUoV2ViQ29yZTo6RmxvYXRSZWN0IGZyYW1lKQogewogICAgIG1fcGFnZS0+c2VuZChNZXNz
YWdlczo6V2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6U2V0VmlkZW9MYXllckZyYW1lKGZyYW1l
KSwgbV9wYWdlLT5wYWdlSUQoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1lc3NhZ2VzLmluIGIvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5tZXNzYWdlcy5p
bgppbmRleCBjZGRlNGI3M2ViMjJiMWUzODMzZmUxMmNmMTk4MDllNzNkNmU3N2UyLi43NTdjNjli
ZDk2NWJhZTI4NGVlYjZkN2NkZTVmNWFmMWVmOGFkOGY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1lc3NhZ2VzLmlu
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1h
bmFnZXIubWVzc2FnZXMuaW4KQEAgLTI2LDYgKzI2LDEwIEBAIG1lc3NhZ2VzIC0+IFdlYlZpZGVv
RnVsbHNjcmVlbk1hbmFnZXIgewogICAgIFBhdXNlKCkKICAgICBUb2dnbGVQbGF5U3RhdGUoKQog
ICAgIFNlZWtUb1RpbWUoZG91YmxlIHRpbWUpCisgICAgRmFzdFNlZWsoZG91YmxlIHRpbWUpCisg
ICAgQmVnaW5TY2FubmluZ0ZvcndhcmQoKQorICAgIEJlZ2luU2Nhbm5pbmdCYWNrd2FyZCgpCisg
ICAgRW5kU2Nhbm5pbmcoKQogICAgIFJlcXVlc3RFeGl0RnVsbHNjcmVlbigpCiAgICAgRGlkRXhp
dEZ1bGxzY3JlZW4oKQogICAgIERpZEVudGVyRnVsbHNjcmVlbigpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>230854</attachid>
            <date>2014-05-05 13:37:22 -0700</date>
            <delta_ts>2014-05-05 16:55:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-132517-20140505133703.patch</filename>
            <type>text/plain</type>
            <size>16308</size>
            <attacher name="Jeremy Jones">jeremyj-wk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY4MTA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjY3MTdiZDRiYTM5OWI2
YWI5ZWQ0N2EwMDhlN2E1MDc2OTRmOTQxZS4uZTM0MmM3MjFmNDU4YmE1NzViODRkODY3MjlhY2Y2
NDc3N2NkZTE1MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDE0LTA1LTAyICBKZXJl
bXkgSm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBJbXBsZW1lbnQgc2NhbiBi
YWNrd2FyZCBhbmQgZm9yd2FyZCBpbiB2aWRlbyBmdWxsc2NyZWVuLgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTMyNTE3CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50IHNjYW5uaW5nIGZvcndh
cmQgYW5kIGJhY2t3YXJkLiBUaGlzIGltcGxlbWVudHMgbWV0aG9kcyBpbiAKKyAgICAgICAgV2Vi
QVZQbGF5ZXJDb250cm9sbGVyIGFuZCBmb3J3YXJkcyB0aGVtIHRocm91Z2ggV2ViVmlkZW9GdWxs
c2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQKKyAgICAgICAgYW5kIG9uIHRvIEhUTUxNZWRpYUVsZW1l
bnQuCisKKyAgICAgICAgKiBXZWJDb3JlLmV4cC5pbjogbmVjZXNzYXJ5IGV4cG9ydHMuCisgICAg
ICAgICogcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tOgor
ICAgICAgICAoLVtXZWJBVlBsYXllckNvbnRyb2xsZXIgc2Vla1RvVGltZTpdKToKKyAgICAgICAg
VXNlIGZhc3RTZWVrIGluIHRoaXMgY2FzZS4KKyAgICAgICAgKC1bV2ViQVZQbGF5ZXJDb250cm9s
bGVyIGNhblNjYW5Gb3J3YXJkXSk6IElmIHlvdSBjYW4gcGxheSwgeW91IGNhbiBzY2FuLgorICAg
ICAgICAoK1tXZWJBVlBsYXllckNvbnRyb2xsZXIga2V5UGF0aHNGb3JWYWx1ZXNBZmZlY3RpbmdD
YW5TY2FuRm9yd2FyZF0pOiBkaXR0bworICAgICAgICAoLVtXZWJBVlBsYXllckNvbnRyb2xsZXIg
YmVnaW5TY2FubmluZ0ZvcndhcmQ6XSk6IGRpdHRvCisgICAgICAgICgtW1dlYkFWUGxheWVyQ29u
dHJvbGxlciBlbmRTY2FubmluZ0ZvcndhcmQ6XSk6IGRpdHRvCisgICAgICAgICgtW1dlYkFWUGxh
eWVyQ29udHJvbGxlciBjYW5TY2FuQmFja3dhcmRdKTogSWYgeW91IGNhbiBwbGF5LCB5b3UgY2Fu
IHNjYW4uCisgICAgICAgICgrW1dlYkFWUGxheWVyQ29udHJvbGxlciBrZXlQYXRoc0ZvclZhbHVl
c0FmZmVjdGluZ0NhblNjYW5CYWNrd2FyZF0pOiBkaXR0bworICAgICAgICAoLVtXZWJBVlBsYXll
ckNvbnRyb2xsZXIgYmVnaW5TY2FubmluZ0JhY2t3YXJkOl0pOiBkaXR0bworICAgICAgICAoLVtX
ZWJBVlBsYXllckNvbnRyb2xsZXIgZW5kU2Nhbm5pbmdCYWNrd2FyZDpdKTogZGl0dG8KKyAgICAg
ICAgKC1bV2ViQVZQbGF5ZXJDb250cm9sbGVyIGNhblNlZWtUb0JlZ2lubmluZ10pOgorICAgICAg
ICBUaGlzIGxvb2tzIGF0IHNlZWthYmxlUmFuZ2VzIHRvIGRldGVybWluZSBpZiBhbnkgc2Vla2lu
ZyBpcyBwb3NzaWJsZS4KKyAgICAgICAgKCtbV2ViQVZQbGF5ZXJDb250cm9sbGVyIGtleVBhdGhz
Rm9yVmFsdWVzQWZmZWN0aW5nQ2FuU2Vla1RvQmVnaW5uaW5nXSk6CisgICAgICAgIGRlcGVuZHMg
b24gc2Vla2FibGVSYW5nZXMuCisgICAgICAgICgtW1dlYkFWUGxheWVyQ29udHJvbGxlciBzZWVr
VG9CZWdpbm5pbmc6XSk6IHNlZWsgdG8gLWluaW5pdHkKKyAgICAgICAgKC1bV2ViQVZQbGF5ZXJD
b250cm9sbGVyIGNhblNlZWtUb0VuZF0pOgorICAgICAgICBUaGlzIGxvb2tzIGF0IHNlZWthYmxl
UmFuZ2VzIHRvIGRldGVybWluZSBpZiBhbnkgc2Vla2luZyBpcyBwb3NzaWJsZS4KKyAgICAgICAg
KCtbV2ViQVZQbGF5ZXJDb250cm9sbGVyIGtleVBhdGhzRm9yVmFsdWVzQWZmZWN0aW5nQ2FuU2Vl
a1RvRW5kXSk6CisgICAgICAgIGRlcGVuZHMgb24gc2Vla2FibGVSYW5nZXMuCisgICAgICAgICgt
W1dlYkFWUGxheWVyQ29udHJvbGxlciBzZWVrVG9FbmQ6XSk6IHNlZWsgdG8gSU5GSU5JVFkuCisg
ICAgICAgICogcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1vZGVsLmg6CisgICAgICAg
IEFkZCA0IG5ldyBmdW5jdGlvbnMuCisgICAgICAgICogcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVs
bHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50Lmg6CisgICAgICAgIGRpdHRvCisgICAgICAgICogcGxh
dGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50Lm1tOgorICAgICAg
ICAoV2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQ6OmZhc3RTZWVrKTogZm9yd2Fy
ZHMgdG8gSFRNTE1lZGlhRWVsZW1lbnQKKyAgICAgICAgKFdlYlZpZGVvRnVsbHNjcmVlbk1vZGVs
TWVkaWFFbGVtZW50OjpiZWdpblNjYW5uaW5nRm9yd2FyZCk6IGZvcndhcmRzIHRvIEhUTUxNZWRp
YUVlbGVtZW50CisgICAgICAgIChXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlhRWxlbWVudDo6
YmVnaW5TY2FubmluZ0JhY2t3YXJkKTogZm9yd2FyZHMgdG8gSFRNTE1lZGlhRWVsZW1lbnQKKyAg
ICAgICAgKFdlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50OjplbmRTY2FubmluZyk6
IGZvcndhcmRzIHRvIEhUTUxNZWRpYUVlbGVtZW50CisKIDIwMTQtMDQtMzAgIEplciBOb2JsZSAg
PGplci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAgICAgW01TRV0gU2Vla2luZyBiZXR3ZWVuIHR3
byBidWZmZXJlZCByYW5nZXMgZW5xdXVlcyBpbmNvcnJlY3QgYnVmZmVycy4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRl
eCAzNzQzM2M1MTQ5MGFlN2RlNjNkMTQ1MGZjOWU3OWU1NDAyNTRiN2YzLi5jMTY1MTY0MGY2MDE1
ZjkzYjg3YWNiZTRmNjliNWYxMDc1NWE0MjM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAK
KzIwMTQtMDUtMDIgIEplcmVteSBKb25lcyAgPGplcmVteWpAYXBwbGUuY29tPgorCisgICAgICAg
IEltcGxlbWVudCBzY2FuIGJhY2t3YXJkIGFuZCBmb3J3YXJkIGluIHZpZGVvIGZ1bGxzY3JlZW4u
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzI1MTcK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBQbHVtYiB0
aHJvdWdoIHNjYW5uaW5nL3NlZWtpbmcgZnVuY3Rpb25zLgorCisgICAgICAgICogVUlQcm9jZXNz
L2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaDoKKyAgICAgICAgKiBVSVByb2Nl
c3MvaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbToKKyAgICAgICAgKFdlYktp
dDo6V2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5OjpmYXN0U2Vlayk6CisgICAgICAgIChX
ZWJLaXQ6OldlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eTo6YmVnaW5TY2FubmluZ0Zvcndh
cmQpOgorICAgICAgICAoV2ViS2l0OjpXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OmJl
Z2luU2Nhbm5pbmdCYWNrd2FyZCk6CisgICAgICAgIChXZWJLaXQ6OldlYlZpZGVvRnVsbHNjcmVl
bk1hbmFnZXJQcm94eTo6ZW5kU2Nhbm5pbmcpOgorICAgICAgICAqIFdlYlByb2Nlc3MvaW9zL1dl
YlZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubWVzc2FnZXMuaW46CisKIDIwMTQtMDUtMDEgIFJ5dWFu
IENob2kgIDxyeXVhbi5jaG9pQHNhbXN1bmcuY29tPgogCiAgICAgICAgIFtFRkxdIFRoZXJlIGFy
ZSBtYW55IHdhcm5pbmdzIHdpdGggc29mdHdhcmUgYmFja2VuZApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS5leHAuaW4gYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgpp
bmRleCBhNjgzYTQ3YWExYWY3Nzc5MjFhMzEwZjY0ZTFiZjkyZGM5YTg1NjNhLi44Mjc1NmE1MjFj
ZmMwNzgyNTY0NzNlYjFmZDdmYmM1OTViMDFiM2RlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLmV4cC5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgpAQCAt
MzI5MCwxNyArMzI5MCwyMSBAQCBfX1pOSzdXZWJDb3JlMTZIVE1MTWVkaWFFbGVtZW50OGR1cmF0
aW9uRXYKIAogI2lmIEVOQUJMRShWSURFTykgJiYgUExBVEZPUk0oSU9TKQogX19aTjdXZWJDb3Jl
MzVXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlhRWxlbWVudDEwc2Vla1RvVGltZUVkCitfX1pO
N1dlYkNvcmUzNVdlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50MTFlbmRTY2Fubmlu
Z0V2CiBfX1pON1dlYkNvcmUzNVdlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50MTFo
YW5kbGVFdmVudEVQTlNfMjJTY3JpcHRFeGVjdXRpb25Db250ZXh0RVBOU181RXZlbnRFCiBfX1pO
N1dlYkNvcmUzNVdlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50MTVzZXRNZWRpYUVs
ZW1lbnRFUE5TXzE2SFRNTE1lZGlhRWxlbWVudEUKIF9fWk43V2ViQ29yZTM1V2ViVmlkZW9GdWxs
c2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQxNXRvZ2dsZVBsYXlTdGF0ZUV2CiBfX1pON1dlYkNvcmUz
NVdlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50MThzZXRWaWRlb0xheWVyRnJhbWVF
TlNfOUZsb2F0UmVjdEUKK19fWk43V2ViQ29yZTM1V2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxNZWRp
YUVsZW1lbnQyMGJlZ2luU2Nhbm5pbmdGb3J3YXJkRXYKIF9fWk43V2ViQ29yZTM1V2ViVmlkZW9G
dWxsc2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQyMHNldFZpZGVvTGF5ZXJHcmF2aXR5RU5TXzIzV2Vi
VmlkZW9GdWxsc2NyZWVuTW9kZWwxMlZpZGVvR3Jhdml0eUUKK19fWk43V2ViQ29yZTM1V2ViVmlk
ZW9GdWxsc2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQyMWJlZ2luU2Nhbm5pbmdCYWNrd2FyZEV2CiBf
X1pON1dlYkNvcmUzNVdlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50MjFyZXF1ZXN0
RXhpdEZ1bGxzY3JlZW5FdgogX19aTjdXZWJDb3JlMzVXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1l
ZGlhRWxlbWVudDIyc2VsZWN0QXVkaW9NZWRpYU9wdGlvbkV5CiBfX1pON1dlYkNvcmUzNVdlYlZp
ZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50MjNzZXRWaWRlb0Z1bGxzY3JlZW5MYXllckVQ
N0NBTGF5ZXIKIF9fWk43V2ViQ29yZTM1V2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxNZWRpYUVsZW1l
bnQyNHNlbGVjdExlZ2libGVNZWRpYU9wdGlvbkV5CiBfX1pON1dlYkNvcmUzNVdlYlZpZGVvRnVs
bHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50NHBsYXlFdgogX19aTjdXZWJDb3JlMzVXZWJWaWRlb0Z1
bGxzY3JlZW5Nb2RlbE1lZGlhRWxlbWVudDVwYXVzZUV2CitfX1pON1dlYkNvcmUzNVdlYlZpZGVv
RnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50OGZhc3RTZWVrRWQKIF9fWk43V2ViQ29yZTM1V2Vi
VmlkZW9GdWxsc2NyZWVuTW9kZWxNZWRpYUVsZW1lbnRDMkV2CiBfX1pON1dlYkNvcmUzNVdlYlZp
ZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50RDJFdgogX19aTks3V2ViQ29yZTE2SFRNTFZp
ZGVvRWxlbWVudDEwdmlkZW9XaWR0aEV2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0gYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0KaW5k
ZXggZWM4OWZkM2U3YjhiOTBiOWVhMTBhMjU4YWRiMmY2MzkyNzEyZmM2NS4uN2Y4NzJkYmM3NTU4
NTk5NmY2YTI2MzI4NmRmZWIwMDBmMzBlMTI4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktp
dC5tbQpAQCAtNzIsNiArNzIsMTEgQEAgU09GVF9MSU5LKENvcmVNZWRpYSwgQ01UaW1lUmFuZ2VD
b250YWluc1RpbWUsIEJvb2xlYW4sIChDTVRpbWVSYW5nZSByYW5nZSwgQ01UaW0KIFNPRlRfTElO
SyhDb3JlTWVkaWEsIENNVGltZVJhbmdlR2V0RW5kLCBDTVRpbWUsIChDTVRpbWVSYW5nZSByYW5n
ZSksIChyYW5nZSkpCiBTT0ZUX0xJTksoQ29yZU1lZGlhLCBDTVRpbWVSYW5nZU1ha2UsIENNVGlt
ZVJhbmdlLCAoQ01UaW1lIHN0YXJ0LCBDTVRpbWUgZHVyYXRpb24pLCAoc3RhcnQsIGR1cmF0aW9u
KSkKIFNPRlRfTElOSyhDb3JlTWVkaWEsIENNVGltZVN1YnRyYWN0LCBDTVRpbWUsIChDTVRpbWUg
bWludWVuZCwgQ01UaW1lIHN1YnRyYWhlbmQpLCAobWludWVuZCwgc3VidHJhaGVuZCkpCitTT0ZU
X0xJTksoQ29yZU1lZGlhLCBDTVRpbWVNYXhpbXVtLCBDTVRpbWUsIChDTVRpbWUgdGltZTEsIENN
VGltZSB0aW1lMiksICh0aW1lMSwgdGltZTIpKQorU09GVF9MSU5LKENvcmVNZWRpYSwgQ01UaW1l
TWluaW11bSwgQ01UaW1lLCAoQ01UaW1lIHRpbWUxLCBDTVRpbWUgdGltZTIpLCAodGltZTEsIHRp
bWUyKSkKK1NPRlRfTElOS19DT05TVEFOVChDb3JlTWVkaWEsIGtDTVRpbWVJbmRlZmluaXRlLCBD
TVRpbWUpCisKKyNkZWZpbmUga0NNVGltZUluZGVmaW5pdGUgZ2V0a0NNVGltZUluZGVmaW5pdGUo
KQogCiBAY2xhc3MgV2ViQVZNZWRpYVNlbGVjdGlvbk9wdGlvbjsKIApAQCAtODQsNiArODksMTEg
QEAgU09GVF9MSU5LKENvcmVNZWRpYSwgQ01UaW1lU3VidHJhY3QsIENNVGltZSwgKENNVGltZSBt
aW51ZW5kLCBDTVRpbWUgc3VidHJhaGVuZCkKIEBwcm9wZXJ0eShyZXRhaW4pIEFWUGxheWVyQ29u
dHJvbGxlciogcGxheWVyQ29udHJvbGxlclByb3h5OwogQHByb3BlcnR5KGFzc2lnbikgV2ViVmlk
ZW9GdWxsc2NyZWVuTW9kZWwqIGRlbGVnYXRlOwogCitAcHJvcGVydHkgKHJlYWRvbmx5KSBCT09M
IGNhblNjYW5Gb3J3YXJkOworQHByb3BlcnR5IChyZWFkb25seSkgQk9PTCBjYW5TY2FuQmFja3dh
cmQ7CitAcHJvcGVydHkgKHJlYWRvbmx5KSBCT09MIGNhblNlZWtUb0JlZ2lubmluZzsKK0Bwcm9w
ZXJ0eSAocmVhZG9ubHkpIEJPT0wgY2FuU2Vla1RvRW5kOworCiBAcHJvcGVydHkgQk9PTCBjYW5Q
bGF5OwogQHByb3BlcnR5KGdldHRlcj1pc1BsYXlpbmcpIEJPT0wgcGxheWluZzsKIEBwcm9wZXJ0
eSBCT09MIGNhblBhdXNlOwpAQCAtMTk4LDcgKzIwOCw3IEBAIFNPRlRfTElOSyhDb3JlTWVkaWEs
IENNVGltZVN1YnRyYWN0LCBDTVRpbWUsIChDTVRpbWUgbWludWVuZCwgQ01UaW1lIHN1YnRyYWhl
bmQpCiAtICh2b2lkKXNlZWtUb1RpbWU6KE5TVGltZUludGVydmFsKXRpbWUKIHsKICAgICBBU1NF
UlQoc2VsZi5kZWxlZ2F0ZSk7Ci0gICAgc2VsZi5kZWxlZ2F0ZS0+c2Vla1RvVGltZSh0aW1lKTsK
KyAgICBzZWxmLmRlbGVnYXRlLT5mYXN0U2Vlayh0aW1lKTsKIH0KIAogLSAoQk9PTCloYXNMaXZl
U3RyZWFtaW5nQ29udGVudApAQCAtMjQ3LDYgKzI1NywxMDAgQEAgU09GVF9MSU5LKENvcmVNZWRp
YSwgQ01UaW1lU3VidHJhY3QsIENNVGltZSwgKENNVGltZSBtaW51ZW5kLCBDTVRpbWUgc3VidHJh
aGVuZCkKICAgICAgICAgW3NlbGYgc2Vla1RvVGltZTp0aW1lQXRFbmRPZlNlZWthYmxlVGltZVJh
bmdlc107CiB9CiAKKy0gKEJPT0wpY2FuU2NhbkZvcndhcmQKK3sKKyAgICByZXR1cm4gW3NlbGYg
Y2FuUGxheV07Cit9CisKKysgKE5TU2V0ICopa2V5UGF0aHNGb3JWYWx1ZXNBZmZlY3RpbmdDYW5T
Y2FuRm9yd2FyZAoreworICAgIHJldHVybiBbTlNTZXQgc2V0V2l0aE9iamVjdDpAImNhblBsYXki
XTsKK30KKworLSAodm9pZCliZWdpblNjYW5uaW5nRm9yd2FyZDooaWQpc2VuZGVyCit7CisgICAg
VU5VU0VEX1BBUkFNKHNlbmRlcik7CisgICAgQVNTRVJUKHNlbGYuZGVsZWdhdGUpOworICAgIHNl
bGYuZGVsZWdhdGUtPmJlZ2luU2Nhbm5pbmdGb3J3YXJkKCk7Cit9CisKKy0gKHZvaWQpZW5kU2Nh
bm5pbmdGb3J3YXJkOihpZClzZW5kZXIKK3sKKyAgICBVTlVTRURfUEFSQU0oc2VuZGVyKTsKKyAg
ICBBU1NFUlQoc2VsZi5kZWxlZ2F0ZSk7CisgICAgc2VsZi5kZWxlZ2F0ZS0+ZW5kU2Nhbm5pbmco
KTsKK30KKworLSAoQk9PTCljYW5TY2FuQmFja3dhcmQKK3sKKyAgICByZXR1cm4gW3NlbGYgY2Fu
UGxheV07Cit9CisKKysgKE5TU2V0ICopa2V5UGF0aHNGb3JWYWx1ZXNBZmZlY3RpbmdDYW5TY2Fu
QmFja3dhcmQKK3sKKyAgICByZXR1cm4gW05TU2V0IHNldFdpdGhPYmplY3Q6QCJjYW5QbGF5Il07
Cit9CisKKy0gKHZvaWQpYmVnaW5TY2FubmluZ0JhY2t3YXJkOihpZClzZW5kZXIKK3sKKyAgICBV
TlVTRURfUEFSQU0oc2VuZGVyKTsKKyAgICBBU1NFUlQoc2VsZi5kZWxlZ2F0ZSk7CisgICAgc2Vs
Zi5kZWxlZ2F0ZS0+YmVnaW5TY2FubmluZ0JhY2t3YXJkKCk7Cit9CisKKy0gKHZvaWQpZW5kU2Nh
bm5pbmdCYWNrd2FyZDooaWQpc2VuZGVyCit7CisgICAgVU5VU0VEX1BBUkFNKHNlbmRlcik7Cisg
ICAgQVNTRVJUKHNlbGYuZGVsZWdhdGUpOworICAgIHNlbGYuZGVsZWdhdGUtPmVuZFNjYW5uaW5n
KCk7Cit9CisKKy0gKEJPT0wpY2FuU2Vla1RvQmVnaW5uaW5nCit7CisgICAgQ01UaW1lIG1pbmlt
dW1UaW1lID0ga0NNVGltZUluZGVmaW5pdGU7CisKKyAgICBmb3IgKE5TVmFsdWUgKnZhbHVlIGlu
IFtzZWxmIHNlZWthYmxlVGltZVJhbmdlc10pCisgICAgICAgIG1pbmltdW1UaW1lID0gQ01UaW1l
TWluaW11bShbdmFsdWUgQ01UaW1lUmFuZ2VWYWx1ZV0uc3RhcnQsIG1pbmltdW1UaW1lKTsKKwor
ICAgIHJldHVybiBDTVRJTUVfSVNfTlVNRVJJQyhtaW5pbXVtVGltZSk7Cit9CisKKysgKE5TU2V0
ICopa2V5UGF0aHNGb3JWYWx1ZXNBZmZlY3RpbmdDYW5TZWVrVG9CZWdpbm5pbmcKK3sKKyAgICBy
ZXR1cm4gW05TU2V0IHNldFdpdGhPYmplY3Q6QCJzZWVrYWJsZVRpbWVSYW5nZXMiXTsKK30KKwor
LSAodm9pZClzZWVrVG9CZWdpbm5pbmc6KGlkKXNlbmRlcgoreworICAgIFVOVVNFRF9QQVJBTShz
ZW5kZXIpOworICAgIEFTU0VSVChzZWxmLmRlbGVnYXRlKTsKKworICAgIHNlbGYuZGVsZWdhdGUt
PnNlZWtUb1RpbWUoLUlORklOSVRZKTsKK30KKworLSAoQk9PTCljYW5TZWVrVG9FbmQKK3sKKyAg
ICBDTVRpbWUgbWF4aW11bVRpbWUgPSBrQ01UaW1lSW5kZWZpbml0ZTsKKworICAgIGZvciAoTlNW
YWx1ZSAqdmFsdWUgaW4gW3NlbGYgc2Vla2FibGVUaW1lUmFuZ2VzXSkKKyAgICAgICAgbWF4aW11
bVRpbWUgPSBDTVRpbWVNYXhpbXVtKENNVGltZVJhbmdlR2V0RW5kKFt2YWx1ZSBDTVRpbWVSYW5n
ZVZhbHVlXSksIG1heGltdW1UaW1lKTsKKworICAgIHJldHVybiBDTVRJTUVfSVNfTlVNRVJJQyht
YXhpbXVtVGltZSk7Cit9CisKKysgKE5TU2V0ICopa2V5UGF0aHNGb3JWYWx1ZXNBZmZlY3RpbmdD
YW5TZWVrVG9FbmQKK3sKKyAgICByZXR1cm4gW05TU2V0IHNldFdpdGhPYmplY3Q6QCJzZWVrYWJs
ZVRpbWVSYW5nZXMiXTsKK30KKworLSAodm9pZClzZWVrVG9FbmQ6KGlkKXNlbmRlcgoreworICAg
IFVOVVNFRF9QQVJBTShzZW5kZXIpOworICAgIEFTU0VSVChzZWxmLmRlbGVnYXRlKTsKKworICAg
IHNlbGYuZGVsZWdhdGUtPnNlZWtUb1RpbWUoSU5GSU5JVFkpOworfQorCiAtIChCT09MKWhhc01l
ZGlhU2VsZWN0aW9uT3B0aW9ucwogewogICAgIHJldHVybiBbc2VsZiBoYXNBdWRpb01lZGlhU2Vs
ZWN0aW9uT3B0aW9uc10gfHwgW3NlbGYgaGFzTGVnaWJsZU1lZGlhU2VsZWN0aW9uT3B0aW9uc107
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlkZW9GdWxsc2Ny
ZWVuTW9kZWwuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3Jl
ZW5Nb2RlbC5oCmluZGV4IDIxMDJlYThlMWU0NzBlYWNhZmZlYzI5YTY2MTI3M2M1OWI1NmM2N2Qu
LjVkMTFiNGQ0MTQ0ZTM5NGNmNzVjNWYxMGU5YWRhMDVmMTJkNjg0MWQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbC5oCkBA
IC00MCw2ICs0MCwxMCBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHBhdXNlKCkgPSAwOwog
ICAgIHZpcnR1YWwgdm9pZCB0b2dnbGVQbGF5U3RhdGUoKSA9IDA7CiAgICAgdmlydHVhbCB2b2lk
IHNlZWtUb1RpbWUoZG91YmxlIHRpbWUpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZmFzdFNlZWso
ZG91YmxlIHRpbWUpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgYmVnaW5TY2FubmluZ0ZvcndhcmQo
KSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGJlZ2luU2Nhbm5pbmdCYWNrd2FyZCgpID0gMDsKKyAg
ICB2aXJ0dWFsIHZvaWQgZW5kU2Nhbm5pbmcoKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHJlcXVl
c3RFeGl0RnVsbHNjcmVlbigpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0VmlkZW9MYXllckZy
YW1lKEZsb2F0UmVjdCkgPSAwOwogICAgIGVudW0gVmlkZW9HcmF2aXR5IHsgVmlkZW9HcmF2aXR5
UmVzaXplLCBWaWRlb0dyYXZpdHlSZXNpemVBc3BlY3QsIFZpZGVvR3Jhdml0eVJlc2l6ZUFzcGVj
dEZpbGwgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRl
b0Z1bGxzY3JlZW5Nb2RlbE1lZGlhRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
aW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50LmgKaW5kZXggOGM5ZTYxMDY1
Yzk2ZDcwMGM4OGQxODMwMzFmZDIwMDFiNWE0MmViMy4uYTU1MjY4NGIxOTI5OTEyODg3OGY2ZWY5
MGU3ZjY1NTAzODZiNjAxZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9z
L1dlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50LmgKQEAg
LTYyLDYgKzYyLDEwIEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgcGF1c2UoKSBvdmVycmlk
ZTsKICAgICB2aXJ0dWFsIHZvaWQgdG9nZ2xlUGxheVN0YXRlKCkgb3ZlcnJpZGU7CiAgICAgdmly
dHVhbCB2b2lkIHNlZWtUb1RpbWUoZG91YmxlIHRpbWUpIG92ZXJyaWRlOworICAgIHZpcnR1YWwg
dm9pZCBmYXN0U2Vlayhkb3VibGUgdGltZSkgb3ZlcnJpZGU7CisgICAgdmlydHVhbCB2b2lkIGJl
Z2luU2Nhbm5pbmdGb3J3YXJkKCkgb3ZlcnJpZGU7CisgICAgdmlydHVhbCB2b2lkIGJlZ2luU2Nh
bm5pbmdCYWNrd2FyZCgpIG92ZXJyaWRlOworICAgIHZpcnR1YWwgdm9pZCBlbmRTY2FubmluZygp
IG92ZXJyaWRlOwogICAgIHZpcnR1YWwgdm9pZCByZXF1ZXN0RXhpdEZ1bGxzY3JlZW4oKSBvdmVy
cmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0VmlkZW9MYXllckZyYW1lKEZsb2F0UmVjdCkgb3Zl
cnJpZGU7CiAgICAgdmlydHVhbCB2b2lkIHNldFZpZGVvTGF5ZXJHcmF2aXR5KFdlYlZpZGVvRnVs
bHNjcmVlbk1vZGVsOjpWaWRlb0dyYXZpdHkpIG92ZXJyaWRlOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50
Lm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1vZGVs
TWVkaWFFbGVtZW50Lm1tCmluZGV4IDEyNjAzOWM4NDFhNzEwNmQ4NTliYTU2NjNhNDM5NTNhOTFm
NjBmMWQuLjFmNmQ4NTY4NzQyYzY3OWFkZWE4OTJmMmU4NTJmMWU3ZjA2NjBlMmIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1l
ZGlhRWxlbWVudC5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlkZW9G
dWxsc2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQubW0KQEAgLTE3Miw2ICsxNzIsNDIgQEAgdm9pZCBX
ZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlhRWxlbWVudDo6c2Vla1RvVGltZShkb3VibGUgdGlt
ZSkKICAgICB9KTsKIH0KIAordm9pZCBXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlhRWxlbWVu
dDo6ZmFzdFNlZWsoZG91YmxlIHRpbWUpCit7CisgICAgX19ibG9jayBSZWZQdHI8V2ViVmlkZW9G
dWxsc2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQ+IHByb3RlY3QodGhpcyk7CisgICAgV2ViVGhyZWFk
UnVuKF57CisgICAgICAgIG1fbWVkaWFFbGVtZW50LT5mYXN0U2Vlayh0aW1lKTsKKyAgICAgICAg
cHJvdGVjdC5jbGVhcigpOworICAgIH0pOworfQorCit2b2lkIFdlYlZpZGVvRnVsbHNjcmVlbk1v
ZGVsTWVkaWFFbGVtZW50OjpiZWdpblNjYW5uaW5nRm9yd2FyZCgpCit7CisgICAgX19ibG9jayBS
ZWZQdHI8V2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQ+IHByb3RlY3QodGhpcyk7
CisgICAgV2ViVGhyZWFkUnVuKF57CisgICAgICAgIG1fbWVkaWFFbGVtZW50LT5iZWdpblNjYW5u
aW5nKE1lZGlhQ29udHJvbGxlckludGVyZmFjZTo6Rm9yd2FyZCk7CisgICAgICAgIHByb3RlY3Qu
Y2xlYXIoKTsKKyAgICB9KTsKK30KKwordm9pZCBXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlh
RWxlbWVudDo6YmVnaW5TY2FubmluZ0JhY2t3YXJkKCkKK3sKKyAgICBfX2Jsb2NrIFJlZlB0cjxX
ZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlhRWxlbWVudD4gcHJvdGVjdCh0aGlzKTsKKyAgICBX
ZWJUaHJlYWRSdW4oXnsKKyAgICAgICAgbV9tZWRpYUVsZW1lbnQtPmJlZ2luU2Nhbm5pbmcoTWVk
aWFDb250cm9sbGVySW50ZXJmYWNlOjpCYWNrd2FyZCk7CisgICAgICAgIHByb3RlY3QuY2xlYXIo
KTsKKyAgICB9KTsKK30KKwordm9pZCBXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlhRWxlbWVu
dDo6ZW5kU2Nhbm5pbmcoKQoreworICAgIF9fYmxvY2sgUmVmUHRyPFdlYlZpZGVvRnVsbHNjcmVl
bk1vZGVsTWVkaWFFbGVtZW50PiBwcm90ZWN0KHRoaXMpOworICAgIFdlYlRocmVhZFJ1biheewor
ICAgICAgICBtX21lZGlhRWxlbWVudC0+ZW5kU2Nhbm5pbmcoKTsKKyAgICAgICAgcHJvdGVjdC5j
bGVhcigpOworICAgIH0pOworfQorCiB2b2lkIFdlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFF
bGVtZW50OjpyZXF1ZXN0RXhpdEZ1bGxzY3JlZW4oKQogewogICAgIF9fYmxvY2sgUmVmUHRyPFdl
YlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50PiBwcm90ZWN0KHRoaXMpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5NYW5h
Z2VyUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV2ViVmlkZW9GdWxsc2Ny
ZWVuTWFuYWdlclByb3h5LmgKaW5kZXggZjVmNWUzZWM5NTRlNjQxNTJjZmE0MzcyNTY1MTg5MmI2
MWM5NTE5OC4uODVjZDJhMTYyZjEzOTQ4YmE5ZWIyMjk3ODkzOTdkMDBhZGMxOTg2MSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5NYW5h
Z2VyUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dlYlZpZGVvRnVs
bHNjcmVlbk1hbmFnZXJQcm94eS5oCkBAIC02NSw2ICs2NSwxMCBAQCBwcml2YXRlOgogICAgIHZp
cnR1YWwgdm9pZCBwYXVzZSgpIG92ZXJyaWRlOwogICAgIHZpcnR1YWwgdm9pZCB0b2dnbGVQbGF5
U3RhdGUoKSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgc2Vla1RvVGltZShkb3VibGUpIG92
ZXJyaWRlOworICAgIHZpcnR1YWwgdm9pZCBmYXN0U2Vlayhkb3VibGUgdGltZSkgb3ZlcnJpZGU7
CisgICAgdmlydHVhbCB2b2lkIGJlZ2luU2Nhbm5pbmdGb3J3YXJkKCkgb3ZlcnJpZGU7CisgICAg
dmlydHVhbCB2b2lkIGJlZ2luU2Nhbm5pbmdCYWNrd2FyZCgpIG92ZXJyaWRlOworICAgIHZpcnR1
YWwgdm9pZCBlbmRTY2FubmluZygpIG92ZXJyaWRlOwogICAgIHZpcnR1YWwgdm9pZCBzZXRWaWRl
b0xheWVyRnJhbWUoV2ViQ29yZTo6RmxvYXRSZWN0KSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZv
aWQgc2V0VmlkZW9MYXllckdyYXZpdHkoV2ViQ29yZTo6V2ViVmlkZW9GdWxsc2NyZWVuTW9kZWw6
OlZpZGVvR3Jhdml0eSkgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCB2b2lkIHNlbGVjdEF1ZGlvTWVk
aWFPcHRpb24odWludDY0X3QpIG92ZXJyaWRlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkubW0gYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbQpp
bmRleCBiYjQzNDk2NmNhNjdmM2Y5OTJhZjFlYzBkMzc1NDBjZjA5MTZkZTY2Li42N2Q3M2Q0Zjgy
ZWQ4NzdiODNlNjMxNTBlNzgxYWJkNzZhODUwNmE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbQorKysgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94
eS5tbQpAQCAtMTE2LDYgKzExNiwyNiBAQCB2b2lkIFdlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQ
cm94eTo6c2Vla1RvVGltZShkb3VibGUgdGltZSkKICAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6
OldlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OlNlZWtUb1RpbWUodGltZSksIG1fcGFnZS0+cGFn
ZUlEKCkpOwogfQogCit2b2lkIFdlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eTo6ZmFzdFNl
ZWsoZG91YmxlIHRpbWUpCit7CisgICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJWaWRlb0Z1
bGxzY3JlZW5NYW5hZ2VyOjpGYXN0U2Vlayh0aW1lKSwgbV9wYWdlLT5wYWdlSUQoKSk7Cit9CisK
K3ZvaWQgV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5OjpiZWdpblNjYW5uaW5nRm9yd2Fy
ZCgpCit7CisgICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJWaWRlb0Z1bGxzY3JlZW5NYW5h
Z2VyOjpCZWdpblNjYW5uaW5nRm9yd2FyZCgpLCBtX3BhZ2UtPnBhZ2VJRCgpKTsKK30KKwordm9p
ZCBXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OmJlZ2luU2Nhbm5pbmdCYWNrd2FyZCgp
Cit7CisgICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2Vy
OjpCZWdpblNjYW5uaW5nQmFja3dhcmQoKSwgbV9wYWdlLT5wYWdlSUQoKSk7Cit9CisKK3ZvaWQg
V2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5OjplbmRTY2FubmluZygpCit7CisgICAgbV9w
YWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpFbmRTY2Fubmlu
ZygpLCBtX3BhZ2UtPnBhZ2VJRCgpKTsKK30KKwogdm9pZCBXZWJWaWRlb0Z1bGxzY3JlZW5NYW5h
Z2VyUHJveHk6OnNldFZpZGVvTGF5ZXJGcmFtZShXZWJDb3JlOjpGbG9hdFJlY3QgZnJhbWUpCiB7
CiAgICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpT
ZXRWaWRlb0xheWVyRnJhbWUoZnJhbWUpLCBtX3BhZ2UtPnBhZ2VJRCgpKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXIu
bWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL2lvcy9XZWJWaWRlb0Z1bGxz
Y3JlZW5NYW5hZ2VyLm1lc3NhZ2VzLmluCmluZGV4IGNkZGU0YjczZWIyMmIxZTM4MzNmZTEyY2Yx
OTgwOWU3M2Q2ZTc3ZTIuLjc1N2M2OWJkOTY1YmFlMjg0ZWViNmQ3Y2RlNWY1YWYxZWY4YWQ4ZjYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvaW9zL1dlYlZpZGVvRnVsbHNj
cmVlbk1hbmFnZXIubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9p
b3MvV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5tZXNzYWdlcy5pbgpAQCAtMjYsNiArMjYsMTAg
QEAgbWVzc2FnZXMgLT4gV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlciB7CiAgICAgUGF1c2UoKQog
ICAgIFRvZ2dsZVBsYXlTdGF0ZSgpCiAgICAgU2Vla1RvVGltZShkb3VibGUgdGltZSkKKyAgICBG
YXN0U2Vlayhkb3VibGUgdGltZSkKKyAgICBCZWdpblNjYW5uaW5nRm9yd2FyZCgpCisgICAgQmVn
aW5TY2FubmluZ0JhY2t3YXJkKCkKKyAgICBFbmRTY2FubmluZygpCiAgICAgUmVxdWVzdEV4aXRG
dWxsc2NyZWVuKCkKICAgICBEaWRFeGl0RnVsbHNjcmVlbigpCiAgICAgRGlkRW50ZXJGdWxsc2Ny
ZWVuKCkK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>230867</attachid>
            <date>2014-05-05 16:55:03 -0700</date>
            <delta_ts>2014-05-05 18:50:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-132517-20140505165444.patch</filename>
            <type>text/plain</type>
            <size>16484</size>
            <attacher name="Jeremy Jones">jeremyj-wk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY4MzI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjBkY2ExMjNhNGI2NmYy
ZjA0NzEwZjVmNGE2ZWQ4MDgzMjljMDIyNC4uNGVmNmMwZjcxNzBlZDRmZTZkNWI5OTM2MGQ1MDM0
ZGU5ZTRmYTI3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDE0LTA1LTAyICBKZXJl
bXkgSm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBJbXBsZW1lbnQgc2NhbiBi
YWNrd2FyZCBhbmQgZm9yd2FyZCBpbiB2aWRlbyBmdWxsc2NyZWVuLgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTMyNTE3CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50IHNjYW5uaW5nIGZvcndh
cmQgYW5kIGJhY2t3YXJkLiBUaGlzIGltcGxlbWVudHMgbWV0aG9kcyBpbiAKKyAgICAgICAgV2Vi
QVZQbGF5ZXJDb250cm9sbGVyIGFuZCBmb3J3YXJkcyB0aGVtIHRocm91Z2ggV2ViVmlkZW9GdWxs
c2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQKKyAgICAgICAgYW5kIG9uIHRvIEhUTUxNZWRpYUVsZW1l
bnQuCisKKyAgICAgICAgKiBXZWJDb3JlLmV4cC5pbjogbmVjZXNzYXJ5IGV4cG9ydHMuCisgICAg
ICAgICogcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tOgor
ICAgICAgICAoLVtXZWJBVlBsYXllckNvbnRyb2xsZXIgc2Vla1RvVGltZTpdKToKKyAgICAgICAg
VXNlIGZhc3RTZWVrIGluIHRoaXMgY2FzZS4KKyAgICAgICAgKC1bV2ViQVZQbGF5ZXJDb250cm9s
bGVyIGNhblNjYW5Gb3J3YXJkXSk6IElmIHlvdSBjYW4gcGxheSwgeW91IGNhbiBzY2FuLgorICAg
ICAgICAoK1tXZWJBVlBsYXllckNvbnRyb2xsZXIga2V5UGF0aHNGb3JWYWx1ZXNBZmZlY3RpbmdD
YW5TY2FuRm9yd2FyZF0pOiBkaXR0bworICAgICAgICAoLVtXZWJBVlBsYXllckNvbnRyb2xsZXIg
YmVnaW5TY2FubmluZ0ZvcndhcmQ6XSk6IGRpdHRvCisgICAgICAgICgtW1dlYkFWUGxheWVyQ29u
dHJvbGxlciBlbmRTY2FubmluZ0ZvcndhcmQ6XSk6IGRpdHRvCisgICAgICAgICgtW1dlYkFWUGxh
eWVyQ29udHJvbGxlciBjYW5TY2FuQmFja3dhcmRdKTogSWYgeW91IGNhbiBwbGF5LCB5b3UgY2Fu
IHNjYW4uCisgICAgICAgICgrW1dlYkFWUGxheWVyQ29udHJvbGxlciBrZXlQYXRoc0ZvclZhbHVl
c0FmZmVjdGluZ0NhblNjYW5CYWNrd2FyZF0pOiBkaXR0bworICAgICAgICAoLVtXZWJBVlBsYXll
ckNvbnRyb2xsZXIgYmVnaW5TY2FubmluZ0JhY2t3YXJkOl0pOiBkaXR0bworICAgICAgICAoLVtX
ZWJBVlBsYXllckNvbnRyb2xsZXIgZW5kU2Nhbm5pbmdCYWNrd2FyZDpdKTogZGl0dG8KKyAgICAg
ICAgKC1bV2ViQVZQbGF5ZXJDb250cm9sbGVyIGNhblNlZWtUb0JlZ2lubmluZ10pOgorICAgICAg
ICBUaGlzIGxvb2tzIGF0IHNlZWthYmxlUmFuZ2VzIHRvIGRldGVybWluZSBpZiBhbnkgc2Vla2lu
ZyBpcyBwb3NzaWJsZS4KKyAgICAgICAgKCtbV2ViQVZQbGF5ZXJDb250cm9sbGVyIGtleVBhdGhz
Rm9yVmFsdWVzQWZmZWN0aW5nQ2FuU2Vla1RvQmVnaW5uaW5nXSk6CisgICAgICAgIGRlcGVuZHMg
b24gc2Vla2FibGVSYW5nZXMuCisgICAgICAgICgtW1dlYkFWUGxheWVyQ29udHJvbGxlciBzZWVr
VG9CZWdpbm5pbmc6XSk6IHNlZWsgdG8gLWluaW5pdHkKKyAgICAgICAgKC1bV2ViQVZQbGF5ZXJD
b250cm9sbGVyIGNhblNlZWtUb0VuZF0pOgorICAgICAgICBUaGlzIGxvb2tzIGF0IHNlZWthYmxl
UmFuZ2VzIHRvIGRldGVybWluZSBpZiBhbnkgc2Vla2luZyBpcyBwb3NzaWJsZS4KKyAgICAgICAg
KCtbV2ViQVZQbGF5ZXJDb250cm9sbGVyIGtleVBhdGhzRm9yVmFsdWVzQWZmZWN0aW5nQ2FuU2Vl
a1RvRW5kXSk6CisgICAgICAgIGRlcGVuZHMgb24gc2Vla2FibGVSYW5nZXMuCisgICAgICAgICgt
W1dlYkFWUGxheWVyQ29udHJvbGxlciBzZWVrVG9FbmQ6XSk6IHNlZWsgdG8gSU5GSU5JVFkuCisg
ICAgICAgICogcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1vZGVsLmg6CisgICAgICAg
IEFkZCA0IG5ldyBmdW5jdGlvbnMuCisgICAgICAgICogcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVs
bHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50Lmg6CisgICAgICAgIGRpdHRvCisgICAgICAgICogcGxh
dGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50Lm1tOgorICAgICAg
ICAoV2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQ6OmZhc3RTZWVrKTogZm9yd2Fy
ZHMgdG8gSFRNTE1lZGlhRWVsZW1lbnQKKyAgICAgICAgKFdlYlZpZGVvRnVsbHNjcmVlbk1vZGVs
TWVkaWFFbGVtZW50OjpiZWdpblNjYW5uaW5nRm9yd2FyZCk6IGZvcndhcmRzIHRvIEhUTUxNZWRp
YUVlbGVtZW50CisgICAgICAgIChXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlhRWxlbWVudDo6
YmVnaW5TY2FubmluZ0JhY2t3YXJkKTogZm9yd2FyZHMgdG8gSFRNTE1lZGlhRWVsZW1lbnQKKyAg
ICAgICAgKFdlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50OjplbmRTY2FubmluZyk6
IGZvcndhcmRzIHRvIEhUTUxNZWRpYUVlbGVtZW50CisKIDIwMTQtMDUtMDUgIEJlbmphbWluIFBv
dWxhaW4gIDxiZW5qYW1pbkB3ZWJraXQub3JnPgogCiAgICAgICAgIENsZWFuIHVwIEltYWdlIERv
Y3VtZW50IGFuZCB0d2VhayB0aGUgbGF5b3V0IGFuZCB2aWV3cG9ydApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IGI3
OTNmODhhOWM4Y2UyMGQ2Mzk2OThmZWY4OGFiMjg5NDBlZThiZWQuLmZjZTEzNmY0ODQxNDY4ZjZi
M2I0OGI0NzhlZDdkNDg1NGVkZGIxZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMCBAQAorMjAx
NC0wNS0wMiAgSmVyZW15IEpvbmVzICA8amVyZW15akBhcHBsZS5jb20+CisKKyAgICAgICAgSW1w
bGVtZW50IHNjYW4gYmFja3dhcmQgYW5kIGZvcndhcmQgaW4gdmlkZW8gZnVsbHNjcmVlbi4KKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMjUxNworCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFBsdW1iIHRocm91
Z2ggc2Nhbm5pbmcvc2Vla2luZyBmdW5jdGlvbnMuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9z
L1dlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9p
b3MvV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5Lm1tOgorICAgICAgICAoV2ViS2l0OjpX
ZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OmZhc3RTZWVrKToKKyAgICAgICAgKFdlYktp
dDo6V2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5OjpiZWdpblNjYW5uaW5nRm9yd2FyZCk6
CisgICAgICAgIChXZWJLaXQ6OldlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eTo6YmVnaW5T
Y2FubmluZ0JhY2t3YXJkKToKKyAgICAgICAgKFdlYktpdDo6V2ViVmlkZW9GdWxsc2NyZWVuTWFu
YWdlclByb3h5OjplbmRTY2FubmluZyk6CisgICAgICAgICogV2ViUHJvY2Vzcy9pb3MvV2ViVmlk
ZW9GdWxsc2NyZWVuTWFuYWdlci5tZXNzYWdlcy5pbjoKKwogMjAxNC0wNS0wNSAgQmV0aCBEYWtp
biAgPGJkYWtpbkBhcHBsZS5jb20+CiAKICAgICAgICAgTmVlZCBhIGRlbGVnYXRlIHRoYXQgaW5m
b3JtcyB0aGUgVUkgcHJvY2VzcyB3aGVuIHRoZSBwYWdlJ3MgcGluIHN0YXRlIGNoYW5nZXMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluIGIvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS5leHAuaW4KaW5kZXggMTk1NDkyMWM3M2U3ZmRmYTBjNzcxMDA5MWYwNTIxYTYwODI3
OTRiOC4uZjI0YWM0OWE0YTRkYTdiZTY2MWU0YWY3MjFiYjFhZWUyNjQ2ZDU3YSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4KKysrIGIvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS5leHAuaW4KQEAgLTMyOTAsMTkgKzMyOTAsMjMgQEAgX19aTks3V2ViQ29yZTE2SFRNTE1l
ZGlhRWxlbWVudDhkdXJhdGlvbkV2CiAKICNpZiBFTkFCTEUoVklERU8pICYmIFBMQVRGT1JNKElP
UykKIF9fWk43V2ViQ29yZTM1V2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQxMHNl
ZWtUb1RpbWVFZAorX19aTjdXZWJDb3JlMzVXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlhRWxl
bWVudDExZW5kU2Nhbm5pbmdFdgogX19aTjdXZWJDb3JlMzVXZWJWaWRlb0Z1bGxzY3JlZW5Nb2Rl
bE1lZGlhRWxlbWVudDExaGFuZGxlRXZlbnRFUE5TXzIyU2NyaXB0RXhlY3V0aW9uQ29udGV4dEVQ
TlNfNUV2ZW50RQogX19aTjdXZWJDb3JlMzVXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlhRWxl
bWVudDEyZW5kU2NydWJiaW5nRXYKIF9fWk43V2ViQ29yZTM1V2ViVmlkZW9GdWxsc2NyZWVuTW9k
ZWxNZWRpYUVsZW1lbnQxNGJlZ2luU2NydWJiaW5nRXYKIF9fWk43V2ViQ29yZTM1V2ViVmlkZW9G
dWxsc2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQxNXNldE1lZGlhRWxlbWVudEVQTlNfMTZIVE1MTWVk
aWFFbGVtZW50RQogX19aTjdXZWJDb3JlMzVXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlhRWxl
bWVudDE1dG9nZ2xlUGxheVN0YXRlRXYKIF9fWk43V2ViQ29yZTM1V2ViVmlkZW9GdWxsc2NyZWVu
TW9kZWxNZWRpYUVsZW1lbnQxOHNldFZpZGVvTGF5ZXJGcmFtZUVOU185RmxvYXRSZWN0RQorX19a
TjdXZWJDb3JlMzVXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlhRWxlbWVudDIwYmVnaW5TY2Fu
bmluZ0ZvcndhcmRFdgogX19aTjdXZWJDb3JlMzVXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlh
RWxlbWVudDIwc2V0VmlkZW9MYXllckdyYXZpdHlFTlNfMjNXZWJWaWRlb0Z1bGxzY3JlZW5Nb2Rl
bDEyVmlkZW9HcmF2aXR5RQorX19aTjdXZWJDb3JlMzVXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1l
ZGlhRWxlbWVudDIxYmVnaW5TY2FubmluZ0JhY2t3YXJkRXYKIF9fWk43V2ViQ29yZTM1V2ViVmlk
ZW9GdWxsc2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQyMXJlcXVlc3RFeGl0RnVsbHNjcmVlbkV2CiBf
X1pON1dlYkNvcmUzNVdlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50MjJzZWxlY3RB
dWRpb01lZGlhT3B0aW9uRXkKIF9fWk43V2ViQ29yZTM1V2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxN
ZWRpYUVsZW1lbnQyM3NldFZpZGVvRnVsbHNjcmVlbkxheWVyRVA3Q0FMYXllcgogX19aTjdXZWJD
b3JlMzVXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlhRWxlbWVudDI0c2VsZWN0TGVnaWJsZU1l
ZGlhT3B0aW9uRXkKIF9fWk43V2ViQ29yZTM1V2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxNZWRpYUVs
ZW1lbnQ0cGxheUV2CiBfX1pON1dlYkNvcmUzNVdlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFF
bGVtZW50NXBhdXNlRXYKK19fWk43V2ViQ29yZTM1V2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxNZWRp
YUVsZW1lbnQ4ZmFzdFNlZWtFZAogX19aTjdXZWJDb3JlMzVXZWJWaWRlb0Z1bGxzY3JlZW5Nb2Rl
bE1lZGlhRWxlbWVudEMyRXYKIF9fWk43V2ViQ29yZTM1V2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxN
ZWRpYUVsZW1lbnREMkV2CiBfX1pOSzdXZWJDb3JlMTZIVE1MVmlkZW9FbGVtZW50MTB2aWRlb1dp
ZHRoRXYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1
bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9X
ZWJWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbQppbmRleCBjYmYxMzcyMGY1ODc4NWJj
YjEwNjQ1OWJiNGNkNGE3YjliMzE5YmJkLi41M2VmNzc5YTg4MWYxNzg0YmU5MDBjODQ3N2QxOGY1
NDBmNzkwNTNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlk
ZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tCkBAIC03Miw2ICs3Miwx
MSBAQCBTT0ZUX0xJTksoQ29yZU1lZGlhLCBDTVRpbWVSYW5nZUNvbnRhaW5zVGltZSwgQm9vbGVh
biwgKENNVGltZVJhbmdlIHJhbmdlLCBDTVRpbQogU09GVF9MSU5LKENvcmVNZWRpYSwgQ01UaW1l
UmFuZ2VHZXRFbmQsIENNVGltZSwgKENNVGltZVJhbmdlIHJhbmdlKSwgKHJhbmdlKSkKIFNPRlRf
TElOSyhDb3JlTWVkaWEsIENNVGltZVJhbmdlTWFrZSwgQ01UaW1lUmFuZ2UsIChDTVRpbWUgc3Rh
cnQsIENNVGltZSBkdXJhdGlvbiksIChzdGFydCwgZHVyYXRpb24pKQogU09GVF9MSU5LKENvcmVN
ZWRpYSwgQ01UaW1lU3VidHJhY3QsIENNVGltZSwgKENNVGltZSBtaW51ZW5kLCBDTVRpbWUgc3Vi
dHJhaGVuZCksIChtaW51ZW5kLCBzdWJ0cmFoZW5kKSkKK1NPRlRfTElOSyhDb3JlTWVkaWEsIENN
VGltZU1heGltdW0sIENNVGltZSwgKENNVGltZSB0aW1lMSwgQ01UaW1lIHRpbWUyKSwgKHRpbWUx
LCB0aW1lMikpCitTT0ZUX0xJTksoQ29yZU1lZGlhLCBDTVRpbWVNaW5pbXVtLCBDTVRpbWUsIChD
TVRpbWUgdGltZTEsIENNVGltZSB0aW1lMiksICh0aW1lMSwgdGltZTIpKQorU09GVF9MSU5LX0NP
TlNUQU5UKENvcmVNZWRpYSwga0NNVGltZUluZGVmaW5pdGUsIENNVGltZSkKKworI2RlZmluZSBr
Q01UaW1lSW5kZWZpbml0ZSBnZXRrQ01UaW1lSW5kZWZpbml0ZSgpCiAKIEBjbGFzcyBXZWJBVk1l
ZGlhU2VsZWN0aW9uT3B0aW9uOwogCkBAIC04NCw2ICs4OSwxMSBAQCBTT0ZUX0xJTksoQ29yZU1l
ZGlhLCBDTVRpbWVTdWJ0cmFjdCwgQ01UaW1lLCAoQ01UaW1lIG1pbnVlbmQsIENNVGltZSBzdWJ0
cmFoZW5kKQogQHByb3BlcnR5KHJldGFpbikgQVZQbGF5ZXJDb250cm9sbGVyKiBwbGF5ZXJDb250
cm9sbGVyUHJveHk7CiBAcHJvcGVydHkoYXNzaWduKSBXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbCog
ZGVsZWdhdGU7CiAKK0Bwcm9wZXJ0eSAocmVhZG9ubHkpIEJPT0wgY2FuU2NhbkZvcndhcmQ7CitA
cHJvcGVydHkgKHJlYWRvbmx5KSBCT09MIGNhblNjYW5CYWNrd2FyZDsKK0Bwcm9wZXJ0eSAocmVh
ZG9ubHkpIEJPT0wgY2FuU2Vla1RvQmVnaW5uaW5nOworQHByb3BlcnR5IChyZWFkb25seSkgQk9P
TCBjYW5TZWVrVG9FbmQ7CisKIEBwcm9wZXJ0eSBCT09MIGNhblBsYXk7CiBAcHJvcGVydHkoZ2V0
dGVyPWlzUGxheWluZykgQk9PTCBwbGF5aW5nOwogQHByb3BlcnR5IEJPT0wgY2FuUGF1c2U7CkBA
IC0yMTIsNyArMjIyLDcgQEAgU09GVF9MSU5LKENvcmVNZWRpYSwgQ01UaW1lU3VidHJhY3QsIENN
VGltZSwgKENNVGltZSBtaW51ZW5kLCBDTVRpbWUgc3VidHJhaGVuZCkKIC0gKHZvaWQpc2Vla1Rv
VGltZTooTlNUaW1lSW50ZXJ2YWwpdGltZQogewogICAgIEFTU0VSVChzZWxmLmRlbGVnYXRlKTsK
LSAgICBzZWxmLmRlbGVnYXRlLT5zZWVrVG9UaW1lKHRpbWUpOworICAgIHNlbGYuZGVsZWdhdGUt
PmZhc3RTZWVrKHRpbWUpOwogfQogCiAtIChCT09MKWhhc0xpdmVTdHJlYW1pbmdDb250ZW50CkBA
IC0yNjEsNiArMjcxLDEwMCBAQCBTT0ZUX0xJTksoQ29yZU1lZGlhLCBDTVRpbWVTdWJ0cmFjdCwg
Q01UaW1lLCAoQ01UaW1lIG1pbnVlbmQsIENNVGltZSBzdWJ0cmFoZW5kKQogICAgICAgICBbc2Vs
ZiBzZWVrVG9UaW1lOnRpbWVBdEVuZE9mU2Vla2FibGVUaW1lUmFuZ2VzXTsKIH0KIAorLSAoQk9P
TCljYW5TY2FuRm9yd2FyZAoreworICAgIHJldHVybiBbc2VsZiBjYW5QbGF5XTsKK30KKworKyAo
TlNTZXQgKilrZXlQYXRoc0ZvclZhbHVlc0FmZmVjdGluZ0NhblNjYW5Gb3J3YXJkCit7CisgICAg
cmV0dXJuIFtOU1NldCBzZXRXaXRoT2JqZWN0OkAiY2FuUGxheSJdOworfQorCistICh2b2lkKWJl
Z2luU2Nhbm5pbmdGb3J3YXJkOihpZClzZW5kZXIKK3sKKyAgICBVTlVTRURfUEFSQU0oc2VuZGVy
KTsKKyAgICBBU1NFUlQoc2VsZi5kZWxlZ2F0ZSk7CisgICAgc2VsZi5kZWxlZ2F0ZS0+YmVnaW5T
Y2FubmluZ0ZvcndhcmQoKTsKK30KKworLSAodm9pZCllbmRTY2FubmluZ0ZvcndhcmQ6KGlkKXNl
bmRlcgoreworICAgIFVOVVNFRF9QQVJBTShzZW5kZXIpOworICAgIEFTU0VSVChzZWxmLmRlbGVn
YXRlKTsKKyAgICBzZWxmLmRlbGVnYXRlLT5lbmRTY2FubmluZygpOworfQorCistIChCT09MKWNh
blNjYW5CYWNrd2FyZAoreworICAgIHJldHVybiBbc2VsZiBjYW5QbGF5XTsKK30KKworKyAoTlNT
ZXQgKilrZXlQYXRoc0ZvclZhbHVlc0FmZmVjdGluZ0NhblNjYW5CYWNrd2FyZAoreworICAgIHJl
dHVybiBbTlNTZXQgc2V0V2l0aE9iamVjdDpAImNhblBsYXkiXTsKK30KKworLSAodm9pZCliZWdp
blNjYW5uaW5nQmFja3dhcmQ6KGlkKXNlbmRlcgoreworICAgIFVOVVNFRF9QQVJBTShzZW5kZXIp
OworICAgIEFTU0VSVChzZWxmLmRlbGVnYXRlKTsKKyAgICBzZWxmLmRlbGVnYXRlLT5iZWdpblNj
YW5uaW5nQmFja3dhcmQoKTsKK30KKworLSAodm9pZCllbmRTY2FubmluZ0JhY2t3YXJkOihpZClz
ZW5kZXIKK3sKKyAgICBVTlVTRURfUEFSQU0oc2VuZGVyKTsKKyAgICBBU1NFUlQoc2VsZi5kZWxl
Z2F0ZSk7CisgICAgc2VsZi5kZWxlZ2F0ZS0+ZW5kU2Nhbm5pbmcoKTsKK30KKworLSAoQk9PTClj
YW5TZWVrVG9CZWdpbm5pbmcKK3sKKyAgICBDTVRpbWUgbWluaW11bVRpbWUgPSBrQ01UaW1lSW5k
ZWZpbml0ZTsKKworICAgIGZvciAoTlNWYWx1ZSAqdmFsdWUgaW4gW3NlbGYgc2Vla2FibGVUaW1l
UmFuZ2VzXSkKKyAgICAgICAgbWluaW11bVRpbWUgPSBDTVRpbWVNaW5pbXVtKFt2YWx1ZSBDTVRp
bWVSYW5nZVZhbHVlXS5zdGFydCwgbWluaW11bVRpbWUpOworCisgICAgcmV0dXJuIENNVElNRV9J
U19OVU1FUklDKG1pbmltdW1UaW1lKTsKK30KKworKyAoTlNTZXQgKilrZXlQYXRoc0ZvclZhbHVl
c0FmZmVjdGluZ0NhblNlZWtUb0JlZ2lubmluZworeworICAgIHJldHVybiBbTlNTZXQgc2V0V2l0
aE9iamVjdDpAInNlZWthYmxlVGltZVJhbmdlcyJdOworfQorCistICh2b2lkKXNlZWtUb0JlZ2lu
bmluZzooaWQpc2VuZGVyCit7CisgICAgVU5VU0VEX1BBUkFNKHNlbmRlcik7CisgICAgQVNTRVJU
KHNlbGYuZGVsZWdhdGUpOworCisgICAgc2VsZi5kZWxlZ2F0ZS0+c2Vla1RvVGltZSgtSU5GSU5J
VFkpOworfQorCistIChCT09MKWNhblNlZWtUb0VuZAoreworICAgIENNVGltZSBtYXhpbXVtVGlt
ZSA9IGtDTVRpbWVJbmRlZmluaXRlOworCisgICAgZm9yIChOU1ZhbHVlICp2YWx1ZSBpbiBbc2Vs
ZiBzZWVrYWJsZVRpbWVSYW5nZXNdKQorICAgICAgICBtYXhpbXVtVGltZSA9IENNVGltZU1heGlt
dW0oQ01UaW1lUmFuZ2VHZXRFbmQoW3ZhbHVlIENNVGltZVJhbmdlVmFsdWVdKSwgbWF4aW11bVRp
bWUpOworCisgICAgcmV0dXJuIENNVElNRV9JU19OVU1FUklDKG1heGltdW1UaW1lKTsKK30KKwor
KyAoTlNTZXQgKilrZXlQYXRoc0ZvclZhbHVlc0FmZmVjdGluZ0NhblNlZWtUb0VuZAoreworICAg
IHJldHVybiBbTlNTZXQgc2V0V2l0aE9iamVjdDpAInNlZWthYmxlVGltZVJhbmdlcyJdOworfQor
CistICh2b2lkKXNlZWtUb0VuZDooaWQpc2VuZGVyCit7CisgICAgVU5VU0VEX1BBUkFNKHNlbmRl
cik7CisgICAgQVNTRVJUKHNlbGYuZGVsZWdhdGUpOworCisgICAgc2VsZi5kZWxlZ2F0ZS0+c2Vl
a1RvVGltZShJTkZJTklUWSk7Cit9CisKIC0gKEJPT0wpaGFzTWVkaWFTZWxlY3Rpb25PcHRpb25z
CiB7CiAgICAgcmV0dXJuIFtzZWxmIGhhc0F1ZGlvTWVkaWFTZWxlY3Rpb25PcHRpb25zXSB8fCBb
c2VsZiBoYXNMZWdpYmxlTWVkaWFTZWxlY3Rpb25PcHRpb25zXTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbC5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1vZGVsLmgKaW5kZXggNWE1
YTI2NjU0ZjRkYmNlYjlhZTkzM2FhMmUyNjMzNDI1MDQxMzhkMi4uMjllZWExNWQwMzY2YTUyODAx
Yjc0ZDVlNGVmNDFlYjJiYWQ5YTUzMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1vZGVsLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1vZGVsLmgKQEAgLTQyLDYgKzQyLDEwIEBAIHB1
YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgYmVnaW5TY3J1YmJpbmcoKSA9IDA7CiAgICAgdmlydHVh
bCB2b2lkIGVuZFNjcnViYmluZygpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc2Vla1RvVGltZShk
b3VibGUgdGltZSkgPSAwOworICAgIHZpcnR1YWwgdm9pZCBmYXN0U2Vlayhkb3VibGUgdGltZSkg
PSAwOworICAgIHZpcnR1YWwgdm9pZCBiZWdpblNjYW5uaW5nRm9yd2FyZCgpID0gMDsKKyAgICB2
aXJ0dWFsIHZvaWQgYmVnaW5TY2FubmluZ0JhY2t3YXJkKCkgPSAwOworICAgIHZpcnR1YWwgdm9p
ZCBlbmRTY2FubmluZygpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgcmVxdWVzdEV4aXRGdWxsc2Ny
ZWVuKCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBzZXRWaWRlb0xheWVyRnJhbWUoRmxvYXRSZWN0
KSA9IDA7CiAgICAgZW51bSBWaWRlb0dyYXZpdHkgeyBWaWRlb0dyYXZpdHlSZXNpemUsIFZpZGVv
R3Jhdml0eVJlc2l6ZUFzcGVjdCwgVmlkZW9HcmF2aXR5UmVzaXplQXNwZWN0RmlsbCB9OwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1v
ZGVsTWVkaWFFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlkZW9G
dWxsc2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQuaAppbmRleCAyMmJiZjE3Yjk1YjVlZmU2M2NhNTFk
YjQ2Y2Y4NmQ1MDViMTE1ZDJlLi40NDM5NjUyZWE0MWUyNzE3NDI5ZThkOTM4ODk0ZDdlZWZmMWRl
OWM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlkZW9GdWxs
c2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9p
b3MvV2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQuaApAQCAtNjAsNiArNjAsMTAg
QEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBiZWdpblNjcnViYmluZygpIG92ZXJyaWRlOwog
ICAgIHZpcnR1YWwgdm9pZCBlbmRTY3J1YmJpbmcoKSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZv
aWQgc2Vla1RvVGltZShkb3VibGUgdGltZSkgb3ZlcnJpZGU7CisgICAgdmlydHVhbCB2b2lkIGZh
c3RTZWVrKGRvdWJsZSB0aW1lKSBvdmVycmlkZTsKKyAgICB2aXJ0dWFsIHZvaWQgYmVnaW5TY2Fu
bmluZ0ZvcndhcmQoKSBvdmVycmlkZTsKKyAgICB2aXJ0dWFsIHZvaWQgYmVnaW5TY2FubmluZ0Jh
Y2t3YXJkKCkgb3ZlcnJpZGU7CisgICAgdmlydHVhbCB2b2lkIGVuZFNjYW5uaW5nKCkgb3ZlcnJp
ZGU7CiAgICAgdmlydHVhbCB2b2lkIHJlcXVlc3RFeGl0RnVsbHNjcmVlbigpIG92ZXJyaWRlOwog
ICAgIHZpcnR1YWwgdm9pZCBzZXRWaWRlb0xheWVyRnJhbWUoRmxvYXRSZWN0KSBvdmVycmlkZTsK
ICAgICB2aXJ0dWFsIHZvaWQgc2V0VmlkZW9MYXllckdyYXZpdHkoV2ViVmlkZW9GdWxsc2NyZWVu
TW9kZWw6OlZpZGVvR3Jhdml0eSkgb3ZlcnJpZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQubW0gYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxNZWRpYUVs
ZW1lbnQubW0KaW5kZXggYjVkZGRjYmE5MWNkZDhkOWQ0YzFlYTgxNTQ4N2RkNDg1MGE1ZmIwZC4u
NGVlYTE5NzE1ZTg2MTNjNTAwYmJkZTlhODRlMWIzMzI4MzdlMTdmMiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVt
ZW50Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3Jl
ZW5Nb2RlbE1lZGlhRWxlbWVudC5tbQpAQCAtMTkzLDYgKzE5Myw0MiBAQCB2b2lkIFdlYlZpZGVv
RnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50OjpzZWVrVG9UaW1lKGRvdWJsZSB0aW1lKQogICAg
IH0pOwogfQogCit2b2lkIFdlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50OjpmYXN0
U2Vlayhkb3VibGUgdGltZSkKK3sKKyAgICBfX2Jsb2NrIFJlZlB0cjxXZWJWaWRlb0Z1bGxzY3Jl
ZW5Nb2RlbE1lZGlhRWxlbWVudD4gcHJvdGVjdCh0aGlzKTsKKyAgICBXZWJUaHJlYWRSdW4oXnsK
KyAgICAgICAgbV9tZWRpYUVsZW1lbnQtPmZhc3RTZWVrKHRpbWUpOworICAgICAgICBwcm90ZWN0
LmNsZWFyKCk7CisgICAgfSk7Cit9CisKK3ZvaWQgV2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxNZWRp
YUVsZW1lbnQ6OmJlZ2luU2Nhbm5pbmdGb3J3YXJkKCkKK3sKKyAgICBfX2Jsb2NrIFJlZlB0cjxX
ZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbE1lZGlhRWxlbWVudD4gcHJvdGVjdCh0aGlzKTsKKyAgICBX
ZWJUaHJlYWRSdW4oXnsKKyAgICAgICAgbV9tZWRpYUVsZW1lbnQtPmJlZ2luU2Nhbm5pbmcoTWVk
aWFDb250cm9sbGVySW50ZXJmYWNlOjpGb3J3YXJkKTsKKyAgICAgICAgcHJvdGVjdC5jbGVhcigp
OworICAgIH0pOworfQorCit2b2lkIFdlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50
OjpiZWdpblNjYW5uaW5nQmFja3dhcmQoKQoreworICAgIF9fYmxvY2sgUmVmUHRyPFdlYlZpZGVv
RnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50PiBwcm90ZWN0KHRoaXMpOworICAgIFdlYlRocmVh
ZFJ1biheeworICAgICAgICBtX21lZGlhRWxlbWVudC0+YmVnaW5TY2FubmluZyhNZWRpYUNvbnRy
b2xsZXJJbnRlcmZhY2U6OkJhY2t3YXJkKTsKKyAgICAgICAgcHJvdGVjdC5jbGVhcigpOworICAg
IH0pOworfQorCit2b2lkIFdlYlZpZGVvRnVsbHNjcmVlbk1vZGVsTWVkaWFFbGVtZW50OjplbmRT
Y2FubmluZygpCit7CisgICAgX19ibG9jayBSZWZQdHI8V2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxN
ZWRpYUVsZW1lbnQ+IHByb3RlY3QodGhpcyk7CisgICAgV2ViVGhyZWFkUnVuKF57CisgICAgICAg
IG1fbWVkaWFFbGVtZW50LT5lbmRTY2FubmluZygpOworICAgICAgICBwcm90ZWN0LmNsZWFyKCk7
CisgICAgfSk7Cit9CisKIHZvaWQgV2ViVmlkZW9GdWxsc2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQ6
OnJlcXVlc3RFeGl0RnVsbHNjcmVlbigpCiB7CiAgICAgX19ibG9jayBSZWZQdHI8V2ViVmlkZW9G
dWxsc2NyZWVuTW9kZWxNZWRpYUVsZW1lbnQ+IHByb3RlY3QodGhpcyk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94
eS5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5NYW5h
Z2VyUHJveHkuaAppbmRleCA0M2MwNjBjNTNiMTljODVkZTQ3ZTRmNDJmMDhkOTIzNDdjOTBkZTFm
Li4wM2I1YTkyZDlmOGZkNjMwN2Y3MDYwY2NhOWY0MzI3YWNiOGYyZWM2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94
eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV2ViVmlkZW9GdWxsc2NyZWVu
TWFuYWdlclByb3h5LmgKQEAgLTY5LDYgKzY5LDEwIEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCB2
b2lkIGJlZ2luU2NydWJiaW5nKCkgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCB2b2lkIGVuZFNjcnVi
YmluZygpIG92ZXJyaWRlOwogICAgIHZpcnR1YWwgdm9pZCBzZWVrVG9UaW1lKGRvdWJsZSkgb3Zl
cnJpZGU7CisgICAgdmlydHVhbCB2b2lkIGZhc3RTZWVrKGRvdWJsZSB0aW1lKSBvdmVycmlkZTsK
KyAgICB2aXJ0dWFsIHZvaWQgYmVnaW5TY2FubmluZ0ZvcndhcmQoKSBvdmVycmlkZTsKKyAgICB2
aXJ0dWFsIHZvaWQgYmVnaW5TY2FubmluZ0JhY2t3YXJkKCkgb3ZlcnJpZGU7CisgICAgdmlydHVh
bCB2b2lkIGVuZFNjYW5uaW5nKCkgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCB2b2lkIHNldFZpZGVv
TGF5ZXJGcmFtZShXZWJDb3JlOjpGbG9hdFJlY3QpIG92ZXJyaWRlOwogICAgIHZpcnR1YWwgdm9p
ZCBzZXRWaWRlb0xheWVyR3Jhdml0eShXZWJDb3JlOjpXZWJWaWRlb0Z1bGxzY3JlZW5Nb2RlbDo6
VmlkZW9HcmF2aXR5KSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgc2VsZWN0QXVkaW9NZWRp
YU9wdGlvbih1aW50NjRfdCkgb3ZlcnJpZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbSBiL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5Lm1tCmlu
ZGV4IDdiMmNkMjJhNGFhZmI3MjI3MmIwNjFlZTcwNDM1OGFhM2JiMDc0ZGIuLjMzOThkMzg5YWM2
YjE4OGQ1ZDE5NWM0MWU2MjAxNzZkNTUwMTgyYTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5Lm1tCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5
Lm1tCkBAIC0xMzksNiArMTM5LDI2IEBAIHZvaWQgV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlclBy
b3h5OjpzZWVrVG9UaW1lKGRvdWJsZSB0aW1lKQogICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6
V2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6U2Vla1RvVGltZSh0aW1lKSwgbV9wYWdlLT5wYWdl
SUQoKSk7CiB9CiAKK3ZvaWQgV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5OjpmYXN0U2Vl
ayhkb3VibGUgdGltZSkKK3sKKyAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlZpZGVvRnVs
bHNjcmVlbk1hbmFnZXI6OkZhc3RTZWVrKHRpbWUpLCBtX3BhZ2UtPnBhZ2VJRCgpKTsKK30KKwor
dm9pZCBXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OmJlZ2luU2Nhbm5pbmdGb3J3YXJk
KCkKK3sKKyAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlZpZGVvRnVsbHNjcmVlbk1hbmFn
ZXI6OkJlZ2luU2Nhbm5pbmdGb3J3YXJkKCksIG1fcGFnZS0+cGFnZUlEKCkpOworfQorCit2b2lk
IFdlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eTo6YmVnaW5TY2FubmluZ0JhY2t3YXJkKCkK
K3sKKyAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6
OkJlZ2luU2Nhbm5pbmdCYWNrd2FyZCgpLCBtX3BhZ2UtPnBhZ2VJRCgpKTsKK30KKwordm9pZCBX
ZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OmVuZFNjYW5uaW5nKCkKK3sKKyAgICBtX3Bh
Z2UtPnNlbmQoTWVzc2FnZXM6OldlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OkVuZFNjYW5uaW5n
KCksIG1fcGFnZS0+cGFnZUlEKCkpOworfQorCiB2b2lkIFdlYlZpZGVvRnVsbHNjcmVlbk1hbmFn
ZXJQcm94eTo6c2V0VmlkZW9MYXllckZyYW1lKFdlYkNvcmU6OkZsb2F0UmVjdCBmcmFtZSkKIHsK
ICAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OlNl
dFZpZGVvTGF5ZXJGcmFtZShmcmFtZSksIG1fcGFnZS0+cGFnZUlEKCkpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5t
ZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvaW9zL1dlYlZpZGVvRnVsbHNj
cmVlbk1hbmFnZXIubWVzc2FnZXMuaW4KaW5kZXggY2Q1MzNjN2UzOTU2ZGE0ZWE5ZjNmMzY4ZDVi
Y2JjNjVkZDdhOTgxZS4uYTk5YmIxZWQ3ZTJiNjhiYWJjODY3NWUzN2UyNzBlYmNjMDFmNTc4NCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9pb3MvV2ViVmlkZW9GdWxsc2Ny
ZWVuTWFuYWdlci5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL2lv
cy9XZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1lc3NhZ2VzLmluCkBAIC0yOCw2ICsyOCwxMCBA
QCBtZXNzYWdlcyAtPiBXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyIHsKICAgICBCZWdpblNjcnVi
YmluZygpCiAgICAgRW5kU2NydWJiaW5nKCkKICAgICBTZWVrVG9UaW1lKGRvdWJsZSB0aW1lKQor
ICAgIEZhc3RTZWVrKGRvdWJsZSB0aW1lKQorICAgIEJlZ2luU2Nhbm5pbmdGb3J3YXJkKCkKKyAg
ICBCZWdpblNjYW5uaW5nQmFja3dhcmQoKQorICAgIEVuZFNjYW5uaW5nKCkKICAgICBSZXF1ZXN0
RXhpdEZ1bGxzY3JlZW4oKQogICAgIERpZEV4aXRGdWxsc2NyZWVuKCkKICAgICBEaWRFbnRlckZ1
bGxzY3JlZW4oKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>