<?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>42512</bug_id>
          
          <creation_ts>2010-07-17 21:46:08 -0700</creation_ts>
          <short_desc>[Web Timing] Move times to DocumentLoader and fix bugs in mark points</short_desc>
          <delta_ts>2010-07-19 14:56:11 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>30685</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Tony Gentilcore">tonyg</reporter>
          <assigned_to name="Tony Gentilcore">tonyg</assigned_to>
          <cc>fishd</cc>
    
    <cc>pfeldman</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>252951</commentid>
    <comment_count>0</comment_count>
    <who name="Tony Gentilcore">tonyg</who>
    <bug_when>2010-07-17 21:46:08 -0700</bug_when>
    <thetext>[Web Timing] Move times to DocumentLoader and fix bugs in mark points</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>252982</commentid>
    <comment_count>1</comment_count>
      <attachid>61906</attachid>
    <who name="Tony Gentilcore">tonyg</who>
    <bug_when>2010-07-18 12:14:00 -0700</bug_when>
    <thetext>Created attachment 61906
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>252986</commentid>
    <comment_count>2</comment_count>
    <who name="Tony Gentilcore">tonyg</who>
    <bug_when>2010-07-18 12:25:25 -0700</bug_when>
    <thetext>I believe this fixes the last of the critical web timing bugs. Sorry for the big patch, but maybe its actually good to review all of the marks in one place.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>253377</commentid>
    <comment_count>3</comment_count>
      <attachid>61906</attachid>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2010-07-19 13:50:20 -0700</bug_when>
    <thetext>Comment on attachment 61906
Patch

WebCore/loader/DocumentLoader.h:208
 +          DocumentLoadTiming* documentLoadTiming() { return &amp;m_documentLoadTiming; }
one minor suggestion: you could probably get away with shortening this member
function to &quot;timing()&quot; as the &quot;documentLoad&quot; prefix is sort of redundant with the
name of the class, DocumentLoader.

R=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>253387</commentid>
    <comment_count>4</comment_count>
    <who name="Tony Gentilcore">tonyg</who>
    <bug_when>2010-07-19 14:18:00 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 61906 [details])
&gt; WebCore/loader/DocumentLoader.h:208
&gt;  +          DocumentLoadTiming* documentLoadTiming() { return &amp;m_documentLoadTiming; }
&gt; one minor suggestion: you could probably get away with shortening this member
&gt; function to &quot;timing()&quot; as the &quot;documentLoad&quot; prefix is sort of redundant with the
&gt; name of the class, DocumentLoader.

Thanks!

Fixed and landing.

&gt; 
&gt; R=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>253408</commentid>
    <comment_count>5</comment_count>
    <who name="Tony Gentilcore">tonyg</who>
    <bug_when>2010-07-19 14:56:11 -0700</bug_when>
    <thetext>Committed r63689: &lt;http://trac.webkit.org/changeset/63689&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>61906</attachid>
            <date>2010-07-18 12:14:00 -0700</date>
            <delta_ts>2010-07-19 13:50:20 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-42512-20100718121359.patch</filename>
            <type>text/plain</type>
            <size>30866</size>
            <attacher name="Tony Gentilcore">tonyg</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBkOGQ4OWMxODM4ZWZiODZmNTBjOTdjZDJkNjE1NTNiODVjNmY0ZDBkLi4xMGQ5ZWMy
YjQ0YWIyNTVjM2YyYWY0MWVhZTc1MjhhMTY0MWQwZTIzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAK
KzIwMTAtMDctMTcgIFRvbnkgR2VudGlsY29yZSAgPHRvbnlnQGNocm9taXVtLm9yZz4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbV2ViIFRpbWluZ10g
TW92ZSB0aW1lcyB0byBEb2N1bWVudExvYWRlciBhbmQgZml4IGJ1Z3MgaW4gbWFyayBwb2ludHMK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQyNTEyCisK
KyAgICAgICAgKiBmYXN0L2RvbS9zY3JpcHQtdGVzdHMvd2VidGltaW5nLW5hdmlnYXRlLXdpdGhp
bi1kb2N1bWVudC5qczogQWRkZWQuIFByZXZpb3VzbHksIG5hdmlnYXRpbmcgd2l0aGluIGEgZG9j
dW1lbnQgdmlhIGEgZnJhZ21lbnQgd291bGQgcmVzZXQgbmF2aWdhdGlvblN0YXJ0LiBUaGlzIHRl
c3QgdmVyaWZpZXMgdGhhdCBubyB0aW1lcyBhcmUgY2hhbmdlZCBhZnRlciBuYXZpZ2F0aW5nIHdp
dGhpbiBhIGRvY3VtZW50LgorICAgICAgICAoY2hlY2tUaW1pbmdOb3RDaGFuZ2VkKToKKyAgICAg
ICAgKCk6CisgICAgICAgIChsb2FkSGFuZGxlcik6CisgICAgICAgICogZmFzdC9kb20vd2VidGlt
aW5nLWV4cGVjdGVkLnR4dDogVGVzdCBub3cgcGFzc2VzIGJlY2F1c2Ugd2hlbiBjb3JyZWN0aW5n
IGZvciBjbG9jayBza2V3LCByZXF1ZXN0VGltZSBpcyBzZXQgdG8gZmV0Y2hTdGFydCB3aGVuIGl0
IGlzIGxlc3MgdGhhbiBmZXRjaFN0YXJ0LiBQcmV2aW91c2x5IGl0IHdhcyAwLCBub3cgaXQgaXMg
ZmV0Y2hTdGFydC4gVGhpcywgdW5mb3J0dW5hdGVseSwgaGlkZXMgdGhlIGZhY3QgdGhhdCB0ZXN0
X3NoZWxsIGlzbid0IHBvcHVsYXRpbmcgdGhlIFJlc291cmNlTG9hZFRpbWluZyBBUEkuIEknbGwg
dGhpbmsgb2YgYSB3YXkgdG8gdGVzdCB0aGF0IHdoZW4gSSBtYWtlIHRoZSBjaGFuZ2UgdG8gY2F1
c2UgdGVzdF9zaGVsbCB0byBmaWxsIHRoZSBSZXNvdXJjZUxvYWRUaW1pbmcuCisgICAgICAgICog
ZmFzdC9kb20vd2VidGltaW5nLW5hdmlnYXRlLXdpdGhpbi1kb2N1bWVudC1leHBlY3RlZC50eHQ6
IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL3dlYnRpbWluZy1uYXZpZ2F0ZS13aXRoaW4tZG9j
dW1lbnQuaHRtbDogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vZ3RrL1NraXBwZWQ6IFNraXAg
bmV3IHRlc3Qgb24gcGxhdGZvcm0gd2hlcmUgV2ViIFRpbWluZyBpcyBub3QgZW5hYmxlZC4KKyAg
ICAgICAgKiBwbGF0Zm9ybS9tYWMvU2tpcHBlZDogU2tpcCBuZXcgdGVzdCBvbiBwbGF0Zm9ybSB3
aGVyZSBXZWIgVGltaW5nIGlzIG5vdCBlbmFibGVkLgorICAgICAgICAqIHBsYXRmb3JtL3F0L1Nr
aXBwZWQ6IFNraXAgbmV3IHRlc3Qgb24gcGxhdGZvcm0gd2hlcmUgV2ViIFRpbWluZyBpcyBub3Qg
ZW5hYmxlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS93aW4vU2tpcHBlZDogU2tpcCBuZXcgdGVzdCBv
biBwbGF0Zm9ybSB3aGVyZSBXZWIgVGltaW5nIGlzIG5vdCBlbmFibGVkLgorCiAyMDEwLTA3LTE3
ICBBbmRyZWFzIEtsaW5nICA8YW5kcmVhcy5rbGluZ0Bub2tpYS5jb20+CiAKICAgICAgICAgUnVi
YmVyLXN0YW1wZWQgYnkgU2ltb24gSGF1c21hbm4uCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L2RvbS9zY3JpcHQtdGVzdHMvd2VidGltaW5nLW5hdmlnYXRlLXdpdGhpbi1kb2N1bWVudC5q
cyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NjcmlwdC10ZXN0cy93ZWJ0aW1pbmctbmF2aWdhdGUt
d2l0aGluLWRvY3VtZW50LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFiNTgzYmRiMzhjYmMwM2QyMWFjZmJlZGRm
MTU4YzA0N2E2YTk2YjYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9z
Y3JpcHQtdGVzdHMvd2VidGltaW5nLW5hdmlnYXRlLXdpdGhpbi1kb2N1bWVudC5qcwpAQCAtMCww
ICsxLDM2IEBACitkZXNjcmlwdGlvbigiVGhpcyB0ZXN0IGNoZWNrcyB0aGF0IG5hdmlnYXRpbmcg
d2l0aGluIHRoZSBkb2N1bWVudCBkb2VzIG5vdCByZXNldCBXZWIgVGltaW5nIG51bWJlcnMuIik7
CisKK3ZhciBwZXJmb3JtYW5jZSA9IHdpbmRvdy53ZWJraXRQZXJmb3JtYW5jZSB8fCB7fTsKK3Zh
ciB0aW1pbmcgPSBwZXJmb3JtYW5jZS50aW1pbmcgfHwge307CisKK2Z1bmN0aW9uIGNoZWNrVGlt
aW5nTm90Q2hhbmdlZCgpCit7CisgICAgZm9yICh2YXIgcHJvcGVydHkgaW4gdGltaW5nKSB7Cisg
ICAgICAgIGlmICh0aW1pbmdbcHJvcGVydHldID09PSBpbml0aWFsVGltaW5nW3Byb3BlcnR5XSkK
KyAgICAgICAgICAgIHRlc3RQYXNzZWQocHJvcGVydHkgKyAiIGlzIHVuY2hhbmdlZC4iKTsKKyAg
ICAgICAgZWxzZQorICAgICAgICAgICAgdGVzdEZhaWxlZChwcm9wZXJ0eSArICIgY2hhbmdlZC4i
KTsKKyAgICB9CisgICAgZmluaXNoSlNUZXN0KCk7Cit9CisKK3ZhciBpbml0aWFsVGltaW5nID0g
e307CitmdW5jdGlvbiBzYXZlVGltaW5nQWZ0ZXJMb2FkKCkKK3sKKyAgICBmb3IgKHZhciBwcm9w
ZXJ0eSBpbiB0aW1pbmcpIHsKKyAgICAgICAgaW5pdGlhbFRpbWluZ1twcm9wZXJ0eV0gPSB0aW1p
bmdbcHJvcGVydHldOworICAgIH0KKyAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9ICIjMSI7Cisg
ICAgc2V0VGltZW91dCgiY2hlY2tUaW1pbmdOb3RDaGFuZ2VkKCkiLCAwKTsKK30KKworZnVuY3Rp
b24gbG9hZEhhbmRsZXIoKQoreworICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJsb2Fk
IiwgbG9hZEhhbmRsZXIpOworICAgIHNldFRpbWVvdXQoInNhdmVUaW1pbmdBZnRlckxvYWQoKSIs
IDApOworfQord2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBsb2FkSGFuZGxlciwgZmFs
c2UpOworCitqc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKwordmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9
IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS93ZWJ0aW1pbmctZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vd2VidGltaW5nLWV4cGVjdGVkLnR4dAppbmRl
eCA1MzkzNjczMzRlYjFmMjA4MTkzYzZhYTZkMzI1ZmZmMzE3MDVhZWVkLi4xZTg5NTFjOWRhMTVi
MGRiYTE0MzBmNGRiNTNhYzI5MjZmMmU5MjQ1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0
L2RvbS93ZWJ0aW1pbmctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3dl
YnRpbWluZy1leHBlY3RlZC50eHQKQEAgLTEzLDcgKzEzLDcgQEAgUEFTUyB0aW1pbmcuZG9tYWlu
TG9va3VwU3RhcnQgaXMgPj0gdGltaW5nLmZldGNoU3RhcnQKIFBBU1MgdGltaW5nLmRvbWFpbkxv
b2t1cEVuZCBpcyA+PSB0aW1pbmcuZG9tYWluTG9va3VwU3RhcnQKIFBBU1MgdGltaW5nLmNvbm5l
Y3RTdGFydCBpcyA+PSB0aW1pbmcuZG9tYWluTG9va3VwRW5kCiBQQVNTIHRpbWluZy5jb25uZWN0
RW5kIGlzID49IHRpbWluZy5jb25uZWN0U3RhcnQKLUZBSUwgdGltaW5nLnJlcXVlc3RTdGFydCBz
aG91bGQgYmUgPj0gdGltaW5nLmNvbm5lY3RFbmQuIFdhcyAwIChvZiB0eXBlIG51bWJlcikuCitQ
QVNTIHRpbWluZy5yZXF1ZXN0U3RhcnQgaXMgPj0gdGltaW5nLmNvbm5lY3RFbmQKIFBBU1MgdGlt
aW5nLnJlcXVlc3RFbmQgaXMgPj0gdGltaW5nLnJlcXVlc3RTdGFydAogUEFTUyB0aW1pbmcucmVz
cG9uc2VTdGFydCBpcyA+PSB0aW1pbmcucmVxdWVzdEVuZAogUEFTUyB0aW1pbmcubG9hZEV2ZW50
U3RhcnQgaXMgMApAQCAtMjgsNyArMjgsNyBAQCBQQVNTIHRpbWluZy5kb21haW5Mb29rdXBTdGFy
dCBpcyA+PSB0aW1pbmcuZmV0Y2hTdGFydAogUEFTUyB0aW1pbmcuZG9tYWluTG9va3VwRW5kIGlz
ID49IHRpbWluZy5kb21haW5Mb29rdXBTdGFydAogUEFTUyB0aW1pbmcuY29ubmVjdFN0YXJ0IGlz
ID49IHRpbWluZy5kb21haW5Mb29rdXBFbmQKIFBBU1MgdGltaW5nLmNvbm5lY3RFbmQgaXMgPj0g
dGltaW5nLmNvbm5lY3RTdGFydAotRkFJTCB0aW1pbmcucmVxdWVzdFN0YXJ0IHNob3VsZCBiZSA+
PSB0aW1pbmcuY29ubmVjdEVuZC4gV2FzIDAgKG9mIHR5cGUgbnVtYmVyKS4KK1BBU1MgdGltaW5n
LnJlcXVlc3RTdGFydCBpcyA+PSB0aW1pbmcuY29ubmVjdEVuZAogUEFTUyB0aW1pbmcucmVxdWVz
dEVuZCBpcyA+PSB0aW1pbmcucmVxdWVzdFN0YXJ0CiBQQVNTIHRpbWluZy5yZXNwb25zZVN0YXJ0
IGlzID49IHRpbWluZy5yZXF1ZXN0RW5kCiBQQVNTIHRpbWluZy5yZXNwb25zZUVuZCBpcyA+PSB0
aW1pbmcucmVzcG9uc2VTdGFydApAQCAtNDQsNyArNDQsNyBAQCBQQVNTIHRpbWluZy5kb21haW5M
b29rdXBTdGFydCBpcyA+PSB0aW1pbmcuZmV0Y2hTdGFydAogUEFTUyB0aW1pbmcuZG9tYWluTG9v
a3VwRW5kIGlzID49IHRpbWluZy5kb21haW5Mb29rdXBTdGFydAogUEFTUyB0aW1pbmcuY29ubmVj
dFN0YXJ0IGlzID49IHRpbWluZy5kb21haW5Mb29rdXBFbmQKIFBBU1MgdGltaW5nLmNvbm5lY3RF
bmQgaXMgPj0gdGltaW5nLmNvbm5lY3RTdGFydAotRkFJTCB0aW1pbmcucmVxdWVzdFN0YXJ0IHNo
b3VsZCBiZSA+PSB0aW1pbmcuY29ubmVjdEVuZC4gV2FzIDAgKG9mIHR5cGUgbnVtYmVyKS4KK1BB
U1MgdGltaW5nLnJlcXVlc3RTdGFydCBpcyA+PSB0aW1pbmcuY29ubmVjdEVuZAogUEFTUyB0aW1p
bmcucmVxdWVzdEVuZCBpcyA+PSB0aW1pbmcucmVxdWVzdFN0YXJ0CiBQQVNTIHRpbWluZy5yZXNw
b25zZVN0YXJ0IGlzID49IHRpbWluZy5yZXF1ZXN0RW5kCiBQQVNTIHRpbWluZy5yZXNwb25zZUVu
ZCBpcyA+PSB0aW1pbmcucmVzcG9uc2VTdGFydApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9kb20vd2VidGltaW5nLW5hdmlnYXRlLXdpdGhpbi1kb2N1bWVudC1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9mYXN0L2RvbS93ZWJ0aW1pbmctbmF2aWdhdGUtd2l0aGluLWRvY3VtZW50LWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMmFlZmQyZDMzOWFiMTYyNjJhMmJjYjM5Nzk1YWFmODM3
ZmFmMTY5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vd2VidGltaW5n
LW5hdmlnYXRlLXdpdGhpbi1kb2N1bWVudC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyNCBAQAor
VGhpcyB0ZXN0IGNoZWNrcyB0aGF0IG5hdmlnYXRpbmcgd2l0aGluIHRoZSBkb2N1bWVudCBkb2Vz
IG5vdCByZXNldCBXZWIgVGltaW5nIG51bWJlcnMuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KKworCitQQVNTIHJlcXVlc3RFbmQgaXMgdW5jaGFuZ2VkLgorUEFTUyByZXNwb25zZVN0YXJ0
IGlzIHVuY2hhbmdlZC4KK1BBU1MgY29ubmVjdFN0YXJ0IGlzIHVuY2hhbmdlZC4KK1BBU1MgZG9t
YWluTG9va3VwU3RhcnQgaXMgdW5jaGFuZ2VkLgorUEFTUyBjb25uZWN0RW5kIGlzIHVuY2hhbmdl
ZC4KK1BBU1MgcmVzcG9uc2VFbmQgaXMgdW5jaGFuZ2VkLgorUEFTUyByZXF1ZXN0U3RhcnQgaXMg
dW5jaGFuZ2VkLgorUEFTUyBuYXZpZ2F0aW9uU3RhcnQgaXMgdW5jaGFuZ2VkLgorUEFTUyBsb2Fk
RXZlbnRFbmQgaXMgdW5jaGFuZ2VkLgorUEFTUyByZWRpcmVjdFN0YXJ0IGlzIHVuY2hhbmdlZC4K
K1BBU1MgZG9tYWluTG9va3VwRW5kIGlzIHVuY2hhbmdlZC4KK1BBU1MgdW5sb2FkRXZlbnRFbmQg
aXMgdW5jaGFuZ2VkLgorUEFTUyBmZXRjaFN0YXJ0IGlzIHVuY2hhbmdlZC4KK1BBU1MgbG9hZEV2
ZW50U3RhcnQgaXMgdW5jaGFuZ2VkLgorUEFTUyByZWRpcmVjdEVuZCBpcyB1bmNoYW5nZWQuCitQ
QVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vd2VidGltaW5nLW5hdmlnYXRlLXdpdGhpbi1kb2N1
bWVudC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vd2VidGltaW5nLW5hdmlnYXRlLXdpdGhp
bi1kb2N1bWVudC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE5ODRhYTkwYTBmYmVkZDNkMjFlN2NmYWQ3OWVl
ZjhiNTFkZjVlMGQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS93ZWJ0
aW1pbmctbmF2aWdhdGUtd2l0aGluLWRvY3VtZW50Lmh0bWwKQEAgLTAsMCArMSwxMyBAQAorPCFE
T0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVh
ZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qt
c3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMi
Pjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxk
aXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy93ZWJ0aW1p
bmctbmF2aWdhdGUtd2l0aGluLWRvY3VtZW50LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIu
Li9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRt
bD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9Ta2lwcGVkIGIvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQKaW5kZXggNDk1OWE5NDgxNWQ2MzM4NDg3MzZhZGEx
OGNiZjMwNjU1NTQwMTYwZC4uYzJlMjY0OWVmMmNmNTlmM2RjMDU2ODQ4NTE4N2ZhYzUxMzAwN2I4
MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQKKysrIGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQKQEAgLTU4NjQsNSArNTg2NCw2IEBAIGZhc3Qv
ZG9tL25hdmlnYXRpb24tdHlwZS1iYWNrLWZvcndhcmQuaHRtbAogZmFzdC9kb20vbmF2aWdhdGlv
bi10eXBlLW5hdmlnYXRlLmh0bWwKIGZhc3QvZG9tL25hdmlnYXRpb24tdHlwZS1yZWxvYWQuaHRt
bAogZmFzdC9kb20vd2VidGltaW5nLmh0bWwKK2Zhc3QvZG9tL3dlYnRpbWluZy1uYXZpZ2F0ZS13
aXRoaW4tZG9jdW1lbnQuaHRtbAogaHR0cC90ZXN0cy9taXNjL3dlYnRpbWluZy1vbmUtcmVkaXJl
Y3QucGhwCiBodHRwL3Rlc3RzL21pc2Mvd2VidGltaW5nLXR3by1yZWRpcmVjdHMucGhwCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvU2tpcHBlZCBiL0xheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy9Ta2lwcGVkCmluZGV4IGUwNDYwOTI3YzIyM2E3NTIyYTc4OGJkZGU0ODRiZDg2
YmNkYTIyNzYuLmNmYzljNDgzOGUyZWUzZDIwNGUxZWE2NDdjYTk1MGZhYzRmZjNhNGUgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9Ta2lwcGVkCisrKyBiL0xheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy9Ta2lwcGVkCkBAIC0yOTAsNSArMjkwLDYgQEAgZmFzdC9kb20vbmF2aWdh
dGlvbi10eXBlLWJhY2stZm9yd2FyZC5odG1sCiBmYXN0L2RvbS9uYXZpZ2F0aW9uLXR5cGUtbmF2
aWdhdGUuaHRtbAogZmFzdC9kb20vbmF2aWdhdGlvbi10eXBlLXJlbG9hZC5odG1sCiBmYXN0L2Rv
bS93ZWJ0aW1pbmcuaHRtbAorZmFzdC9kb20vd2VidGltaW5nLW5hdmlnYXRlLXdpdGhpbi1kb2N1
bWVudC5odG1sCiBodHRwL3Rlc3RzL21pc2Mvd2VidGltaW5nLW9uZS1yZWRpcmVjdC5waHAKIGh0
dHAvdGVzdHMvbWlzYy93ZWJ0aW1pbmctdHdvLXJlZGlyZWN0cy5waHAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL3F0L1NraXBwZWQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9T
a2lwcGVkCmluZGV4IGQ3OGU1YjQ4OTExNjcwOTk5ZTU2NGNjZTM0ZTA5MGQzZDFkOTU0N2MuLmZm
ZjkyNmM3MzkyY2NkMzIyMmE3ZWFkZDVhZjRmZDgzM2M4YTgyZGEgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL3BsYXRmb3JtL3F0L1NraXBwZWQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQv
U2tpcHBlZApAQCAtNTQ1OSw1ICs1NDU5LDYgQEAgZmFzdC9kb20vbmF2aWdhdGlvbi10eXBlLWJh
Y2stZm9yd2FyZC5odG1sCiBmYXN0L2RvbS9uYXZpZ2F0aW9uLXR5cGUtbmF2aWdhdGUuaHRtbAog
ZmFzdC9kb20vbmF2aWdhdGlvbi10eXBlLXJlbG9hZC5odG1sCiBmYXN0L2RvbS93ZWJ0aW1pbmcu
aHRtbAorZmFzdC9kb20vd2VidGltaW5nLW5hdmlnYXRlLXdpdGhpbi1kb2N1bWVudC5odG1sCiBo
dHRwL3Rlc3RzL21pc2Mvd2VidGltaW5nLW9uZS1yZWRpcmVjdC5waHAKIGh0dHAvdGVzdHMvbWlz
Yy93ZWJ0aW1pbmctdHdvLXJlZGlyZWN0cy5waHAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Bs
YXRmb3JtL3dpbi9Ta2lwcGVkIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1NraXBwZWQKaW5k
ZXggNzAyNjhiMjU3NjM5ZGUwNTQxNWE3Yjk3ZGUwOWU4OWJjMGIzYjM4ZC4uZTUwNmNlYTk1Mjgx
MGQxNjI0MzFlOTY5MTE0NTNmMjJiYWI2ZjNmNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vd2luL1NraXBwZWQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1NraXBwZWQK
QEAgLTk1OCw2ICs5NTgsNyBAQCBmYXN0L2RvbS9uYXZpZ2F0aW9uLXR5cGUtYmFjay1mb3J3YXJk
Lmh0bWwKIGZhc3QvZG9tL25hdmlnYXRpb24tdHlwZS1uYXZpZ2F0ZS5odG1sCiBmYXN0L2RvbS9u
YXZpZ2F0aW9uLXR5cGUtcmVsb2FkLmh0bWwKIGZhc3QvZG9tL3dlYnRpbWluZy5odG1sCitmYXN0
L2RvbS93ZWJ0aW1pbmctbmF2aWdhdGUtd2l0aGluLWRvY3VtZW50Lmh0bWwKIGh0dHAvdGVzdHMv
bWlzYy93ZWJ0aW1pbmctb25lLXJlZGlyZWN0LnBocAogaHR0cC90ZXN0cy9taXNjL3dlYnRpbWlu
Zy10d28tcmVkaXJlY3RzLnBocAogCmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dl
YkNvcmUvQ2hhbmdlTG9nCmluZGV4IGFlZmU5NTZhMjExNDQyZWNhYTI1ODMyN2NlMWY1NjJhMjMy
YTc3MzcuLjc4YzUzMTBkODA0MjVmNjQzNDFiZTE4MTc5MDFiMDU1ZmQxZWRiZDIgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
NTIgQEAKKzIwMTAtMDctMTcgIFRvbnkgR2VudGlsY29yZSAgPHRvbnlnQGNocm9taXVtLm9yZz4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbV2ViIFRp
bWluZ10gTW92ZSB0aW1lcyB0byBEb2N1bWVudExvYWRlciBhbmQgZml4IGJ1Z3MgaW4gbWFyayBw
b2ludHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQy
NTEyCisKKyAgICAgICAgVGVzdDogZmFzdC9kb20vd2VidGltaW5nLW5hdmlnYXRlLXdpdGhpbi1k
b2N1bWVudC5odG1sCisKKyAgICAgICAgKiBsb2FkZXIvRG9jdW1lbnRMb2FkZXIuaDogTW92ZSB0
aGUgRnJhbWVMb2FkVGltZWxpbmUgKG5vdyBjYWxsIERvY3VtZW50TG9hZFRpbWluZykgdG8gdGhl
IERvY3VtZW50TG9hZGVyLgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmRvY3Vt
ZW50TG9hZFRpbWluZyk6CisgICAgICAgICogbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpzdG9wTG9hZGluZyk6IFNldCB1bmxvYWRFdmVudEVu
ZCBvbiB0aGUgcHJvdmlzaW9uYWwgRG9jdW1lbnRMb2FkZXIuIEFkZCBzb21lIEFTU0VSVHMgdG8g
dGlnaHRlbiB0aGluZ3MgdXAuCisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6bG9hZFdp
dGhEb2N1bWVudExvYWRlcik6IFRoaXMgd2FzIG5vdCB0aGUgcmlnaHQgcGxhY2UgdG8gc2V0IG5h
dmlnYXRpb25TdGFydC4gU2V0dGluZyBpdCBoZXJlIGNhdXNlZCBpdCB0byBiZSBzZXQgYmVmb3Jl
IHRoZSB1bmxvYWQgZm9ybSBwcm9tcHQgYW5kIGNhdXNlZCBpdCB0byBiZSByZXNldCB3aGVuIG5h
dmlnYXRpbmcgd2l0aGluIHRoZSBkb2N1bWVudC4KKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9h
ZGVyOjpmaW5pc2hlZExvYWRpbmcpOiBTZXQgcmVzcG9uc2VFbmQgb24gdGhlIGFjdGl2ZSBEb2N1
bWVudExvYWRlci4KKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpjb250aW51ZUxvYWRB
ZnRlcldpbGxTdWJtaXRGb3JtKTogVGhpcyBpcyB0aGUgcmlnaHQgcGxhY2UgZm9yIG5hdmlnYXRp
b25TdGFydCBhcyBkZWZpbmVkIGJ5IHRoZSBzcGVjLgorICAgICAgICAqIGxvYWRlci9GcmFtZUxv
YWRlci5oOiBHZXQgcmlkIG9mIEZyYW1lTG9hZFRpbWVsaW5lLgorICAgICAgICAqIGxvYWRlci9G
cmFtZUxvYWRlclR5cGVzLmg6IFJlbmFtZSBGcmFtZUxvYWRUaW1lbGluZSB0byBEb2N1bWVudExv
YWRUaW1pbmcuIEl0IGlzIGV2ZW4gbW9yZSBhcHBhcmVudCB0aGlzIGRvZXNuJ3QgYmVsb25nIGlu
IHRoaXMgZmlsZSBub3cuIEkgYW0gcGxhbm5pbmcgdG8gc3VibWl0IGEgcGF0Y2ggbW92aW5nIGl0
IG91dCBBU0FQLCBidXQgZGlkbid0IHdhbnQgdG8gbXVkZHkgdGhpcyBwYXRjaCB3aXRoIGFsbCB0
aG9zZSBidWlsZCBmaWxlcy4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZFRpbWluZzo6
RG9jdW1lbnRMb2FkVGltaW5nKToKKyAgICAgICAgKiBsb2FkZXIvTWFpblJlc291cmNlTG9hZGVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1haW5SZXNvdXJjZUxvYWRlcjo6d2lsbFNlbmRSZXF1
ZXN0KTogTW92ZSBmZXRjaFN0YXJ0IG91dCBvZiB0aGlzIG1ldGhvZCB0byBsb2FkKCksIGFuZCBy
ZXdyaXRlIHNldHRpbmcgb2YgcmVkaXJlY3RTdGFydCwgcmVkaXJlY3RFbmQsIGFuZCByZWRpcmVj
dENvdW50IHRvIGJlIG1vcmUgcmVhZGFibGUuCisgICAgICAgIChXZWJDb3JlOjpNYWluUmVzb3Vy
Y2VMb2FkZXI6OmxvYWQpOiBTZXQgZmV0Y2hTdGFydCBzbGlnaHRseSBlYXJsaWVyIGhlcmUgYW5k
IHRpZ2h0ZW4gaXQgdXAgd2l0aCBzb21lIEFTU0VSVHMuCisgICAgICAgICogcGFnZS9ET01XaW5k
b3cuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RE9NV2luZG93OjpkaXNwYXRjaExvYWRFdmVudCk6
IFNldCBsb2FkRXZlbnRTdGFydCBhbmQgbG9hZEV2ZW50RW5kIG9uIHRoZSBEb2N1bWVudExvYWRl
ci4KKyAgICAgICAgKiBwYWdlL05hdmlnYXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6TmF2
aWdhdGlvbjo6cmVkaXJlY3RDb3VudCk6IFJldHJpZXZlIHJlZGlyZWN0Q291bnQgZnJvbSB0aGUg
RG9jdW1lbnRMb2FkZXIuCisgICAgICAgICogcGFnZS9UaW1pbmcuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6Z2V0UG9zc2libHlTa2V3ZWRUaW1lSW5Lbm93blJhbmdlKTogVGhlIHNrZXcgcHJvYmxl
bSB0dXJuZWQgb3V0IHRvIGJlIGR1ZSB0byB0aGUgZmFjdCB0aGF0IGNocm9taXVtJ3MgY3VycmVu
dFRpbWUoKSBpbXBsZW1lbnRhdGlvbiBvbmx5IHN5bmNzIHRvIHRoZSBzeXN0ZW0gdGltZSBldmVy
eSA2MCBzZWNvbmRzLiBTbyBhYnNvbHV0ZSB0aW1lcyBhY3Jvc3MgdGhyZWFkcyBtYXkgYmUgc2tl
d2VkIHNsaWdodGx5LiBJIHJlc29sdmVkIHRoaXMgdGVtcG9yYXJpbHkgYnkgY2xpcHBpbmcgdGhl
IHRpbWUgZnJvbSBhbm90aGVyIHRocmVhZCBpbnRvIGEga25vd24gYm91bmQuIEEgYmV0dGVyIGxv
bmcgdGVybSBzb2x1dGlvbiBpcyBwcm9iYWJseSB0byBhZGQgYSBjdXJyZW50VGltZUZyb21TeXN0
ZW1UaW1lKCkgbWV0aG9kIGFuZCBjYWxsIHRoYXQgZm9yIHdlYiB0aW1pbmcgbWFya3MuCisgICAg
ICAgIChXZWJDb3JlOjpUaW1pbmc6Om5hdmlnYXRpb25TdGFydCk6CisgICAgICAgIChXZWJDb3Jl
OjpUaW1pbmc6OnVubG9hZEV2ZW50RW5kKToKKyAgICAgICAgKFdlYkNvcmU6OlRpbWluZzo6cmVk
aXJlY3RTdGFydCk6CisgICAgICAgIChXZWJDb3JlOjpUaW1pbmc6OnJlZGlyZWN0RW5kKToKKyAg
ICAgICAgKFdlYkNvcmU6OlRpbWluZzo6ZmV0Y2hTdGFydCk6CisgICAgICAgIChXZWJDb3JlOjpU
aW1pbmc6OmRvbWFpbkxvb2t1cFN0YXJ0KToKKyAgICAgICAgKFdlYkNvcmU6OlRpbWluZzo6ZG9t
YWluTG9va3VwRW5kKToKKyAgICAgICAgKFdlYkNvcmU6OlRpbWluZzo6Y29ubmVjdFN0YXJ0KToK
KyAgICAgICAgKFdlYkNvcmU6OlRpbWluZzo6Y29ubmVjdEVuZCk6CisgICAgICAgIChXZWJDb3Jl
OjpUaW1pbmc6OnJlcXVlc3RTdGFydCk6CisgICAgICAgIChXZWJDb3JlOjpUaW1pbmc6OnJlcXVl
c3RFbmQpOgorICAgICAgICAoV2ViQ29yZTo6VGltaW5nOjpyZXNwb25zZVN0YXJ0KToKKyAgICAg
ICAgKFdlYkNvcmU6OlRpbWluZzo6cmVzcG9uc2VFbmQpOgorICAgICAgICAoV2ViQ29yZTo6VGlt
aW5nOjpsb2FkRXZlbnRTdGFydCk6CisgICAgICAgIChXZWJDb3JlOjpUaW1pbmc6OmxvYWRFdmVu
dEVuZCk6CisgICAgICAgIChXZWJDb3JlOjpUaW1pbmc6OmRvY3VtZW50TG9hZGVyKToKKyAgICAg
ICAgKFdlYkNvcmU6OlRpbWluZzo6ZG9jdW1lbnRMb2FkVGltaW5nKToKKyAgICAgICAgKFdlYkNv
cmU6OlRpbWluZzo6cmVzb3VyY2VMb2FkVGltaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OlRpbWlu
Zzo6cmVzb3VyY2VMb2FkVGltZVJlbGF0aXZlVG9BYnNvbHV0ZSk6IEVuc3VyZSByZXF1ZXN0VGlt
ZSBpcyBpbiB0aGUgcmFuZ2Ugb2YgZmV0Y2hTdGFydCB0byByZXNwb25zZUVuZC4KKyAgICAgICAg
KiBwYWdlL1RpbWluZy5oOgorCiAyMDEwLTA3LTE3ICBUSiBMZWUgIDx0amxlZTA5MDlAZ21haWwu
Y29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFRpbW90aHkgSGF0Y2hlci4KZGlmZiAtLWdpdCBh
L1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmggYi9XZWJDb3JlL2xvYWRlci9Eb2N1bWVu
dExvYWRlci5oCmluZGV4IDVjYzFjZGM0NjM3OTZmZjEyYzVhMGE2Yzk0MmJhNDFlNGYxMWJiYTQu
LjVkM2EwODg4ZmY1YTdhNDIzZmY3ZWZkM2I1MjE2OGJlMmMyY2JiNmIgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmgKKysrIGIvV2ViQ29yZS9sb2FkZXIvRG9jdW1l
bnRMb2FkZXIuaApAQCAtMjA1LDYgKzIwNSw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAg
ICAgdm9pZCByZWNvcmRNZW1vcnlDYWNoZUxvYWRGb3JGdXR1cmVDbGllbnROb3RpZmljYXRpb24o
Y29uc3QgU3RyaW5nJiB1cmwpOwogICAgICAgICB2b2lkIHRha2VNZW1vcnlDYWNoZUxvYWRzRm9y
Q2xpZW50Tm90aWZpY2F0aW9uKFZlY3RvcjxTdHJpbmc+JiBsb2Fkcyk7CiAKKyAgICAgICAgRG9j
dW1lbnRMb2FkVGltaW5nKiBkb2N1bWVudExvYWRUaW1pbmcoKSB7IHJldHVybiAmbV9kb2N1bWVu
dExvYWRUaW1pbmc7IH0KKwogI2lmIEVOQUJMRShPRkZMSU5FX1dFQl9BUFBMSUNBVElPTlMpCiAg
ICAgICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0KiBhcHBsaWNhdGlvbkNhY2hlSG9zdCgpIGNvbnN0
IHsgcmV0dXJuIG1fYXBwbGljYXRpb25DYWNoZUhvc3QuZ2V0KCk7IH0KICNlbmRpZgpAQCAtMjk0
LDYgKzI5Niw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgU3RyaW5nIG1fY2xpZW50
UmVkaXJlY3RTb3VyY2VGb3JIaXN0b3J5OwogICAgICAgICBib29sIG1fZGlkQ3JlYXRlR2xvYmFs
SGlzdG9yeUVudHJ5OwogCisgICAgICAgIERvY3VtZW50TG9hZFRpbWluZyBtX2RvY3VtZW50TG9h
ZFRpbWluZzsKKwogI2lmIEVOQUJMRShPRkZMSU5FX1dFQl9BUFBMSUNBVElPTlMpCiAgICAgICAg
IGZyaWVuZCBjbGFzcyBBcHBsaWNhdGlvbkNhY2hlSG9zdDsgIC8vIGZvciBzdWJzdGl0dXRlIHJl
c291cmNlIGRlbGl2ZXJ5CiAgICAgICAgIE93blB0cjxBcHBsaWNhdGlvbkNhY2hlSG9zdD4gbV9h
cHBsaWNhdGlvbkNhY2hlSG9zdDsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9h
ZGVyLmNwcCBiL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcAppbmRleCAzNjFlOWNkMmU2
M2RmMjgwYzc3YWRhMTdkZDcyOWJiYjA1ZjY3YWFjLi4yZmFmMzhkZGM2MmYzYzI5ZTI1NzdiNjll
YmVkMDJlMjMwN2U3M2ExIDEwMDY0NAotLS0gYS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5j
cHAKKysrIGIvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCkBAIC00NDksNyArNDQ5LDEz
IEBAIHZvaWQgRnJhbWVMb2FkZXI6OnN0b3BMb2FkaW5nKFVubG9hZEV2ZW50UG9saWN5IHVubG9h
ZEV2ZW50UG9saWN5LCBEYXRhYmFzZVBvbGljCiAgICAgICAgICAgICAgICAgICAgICAgICBtX2Zy
YW1lLT5kb21XaW5kb3coKS0+ZGlzcGF0Y2hFdmVudChQYWdlVHJhbnNpdGlvbkV2ZW50OjpjcmVh
dGUoZXZlbnROYW1lcygpLnBhZ2VoaWRlRXZlbnQsIG1fZnJhbWUtPmRvY3VtZW50KCktPmluUGFn
ZUNhY2hlKCkpLCBtX2ZyYW1lLT5kb2N1bWVudCgpKTsKICAgICAgICAgICAgICAgICAgICAgaWYg
KCFtX2ZyYW1lLT5kb2N1bWVudCgpLT5pblBhZ2VDYWNoZSgpKQogICAgICAgICAgICAgICAgICAg
ICAgICAgbV9mcmFtZS0+ZG9tV2luZG93KCktPmRpc3BhdGNoRXZlbnQoRXZlbnQ6OmNyZWF0ZShl
dmVudE5hbWVzKCkudW5sb2FkRXZlbnQsIGZhbHNlLCBmYWxzZSksIG1fZnJhbWUtPmRvbVdpbmRv
dygpLT5kb2N1bWVudCgpKTsKLSAgICAgICAgICAgICAgICAgICAgbV9mcmFtZUxvYWRUaW1lbGlu
ZS51bmxvYWRFdmVudEVuZCA9IGN1cnJlbnRUaW1lKCk7CisgICAgICAgICAgICAgICAgICAgIGlm
IChtX3Byb3Zpc2lvbmFsRG9jdW1lbnRMb2FkZXIpIHsKKyAgICAgICAgICAgICAgICAgICAgICAg
IERvY3VtZW50TG9hZFRpbWluZyogdGltaW5nID0gbV9wcm92aXNpb25hbERvY3VtZW50TG9hZGVy
LT5kb2N1bWVudExvYWRUaW1pbmcoKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIEFTU0VSVCh0
aW1pbmctPm5hdmlnYXRpb25TdGFydCk7CisgICAgICAgICAgICAgICAgICAgICAgICBBU1NFUlQo
IXRpbWluZy0+dW5sb2FkRXZlbnRFbmQpOworICAgICAgICAgICAgICAgICAgICAgICAgdGltaW5n
LT51bmxvYWRFdmVudEVuZCA9IGN1cnJlbnRUaW1lKCk7CisgICAgICAgICAgICAgICAgICAgICAg
ICBBU1NFUlQodGltaW5nLT51bmxvYWRFdmVudEVuZCA+PSB0aW1pbmctPm5hdmlnYXRpb25TdGFy
dCk7CisgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAg
ICAgICAgbV9wYWdlRGlzbWlzc2FsRXZlbnRCZWluZ0Rpc3BhdGNoZWQgPSBmYWxzZTsKICAgICAg
ICAgICAgICAgICBpZiAobV9mcmFtZS0+ZG9jdW1lbnQoKSkKQEAgLTE1MDAsOSArMTUwNiw2IEBA
IHZvaWQgRnJhbWVMb2FkZXI6OmxvYWRXaXRoRG9jdW1lbnRMb2FkZXIoRG9jdW1lbnRMb2FkZXIq
IGxvYWRlciwgRnJhbWVMb2FkVHlwZSB0CiAgICAgaWYgKG1fcGFnZURpc21pc3NhbEV2ZW50QmVp
bmdEaXNwYXRjaGVkKQogICAgICAgICByZXR1cm47CiAKLSAgICBtX2ZyYW1lTG9hZFRpbWVsaW5l
ID0gRnJhbWVMb2FkVGltZWxpbmUoKTsKLSAgICBtX2ZyYW1lTG9hZFRpbWVsaW5lLm5hdmlnYXRp
b25TdGFydCA9IGN1cnJlbnRUaW1lKCk7Ci0KICAgICBwb2xpY3lDaGVja2VyKCktPnNldExvYWRU
eXBlKHR5cGUpOwogICAgIFJlZlB0cjxGb3JtU3RhdGU+IGZvcm1TdGF0ZSA9IHBycEZvcm1TdGF0
ZTsKICAgICBib29sIGlzRm9ybVN1Ym1pc3Npb24gPSBmb3JtU3RhdGU7CkBAIC0yMjE1LDEwICsy
MjE4LDkgQEAgdm9pZCBGcmFtZUxvYWRlcjo6ZmluaXNoZWRMb2FkaW5nKCkKICAgICAvLyBSZXRh
aW4gYmVjYXVzZSB0aGUgc3RvcCBtYXkgcmVsZWFzZSB0aGUgbGFzdCByZWZlcmVuY2UgdG8gaXQu
CiAgICAgUmVmUHRyPEZyYW1lPiBwcm90ZWN0KG1fZnJhbWUpOwogCi0gICAgQVNTRVJUKCFtX2Zy
YW1lTG9hZFRpbWVsaW5lLnJlc3BvbnNlRW5kKTsKLSAgICBtX2ZyYW1lTG9hZFRpbWVsaW5lLnJl
c3BvbnNlRW5kID0gY3VycmVudFRpbWUoKTsKLQogICAgIFJlZlB0cjxEb2N1bWVudExvYWRlcj4g
ZGwgPSBhY3RpdmVEb2N1bWVudExvYWRlcigpOworICAgIEFTU0VSVCghZGwtPmRvY3VtZW50TG9h
ZFRpbWluZygpLT5yZXNwb25zZUVuZCk7CisgICAgZGwtPmRvY3VtZW50TG9hZFRpbWluZygpLT5y
ZXNwb25zZUVuZCA9IGN1cnJlbnRUaW1lKCk7CiAgICAgZGwtPmZpbmlzaGVkTG9hZGluZygpOwog
ICAgIGlmICghZGwtPm1haW5Eb2N1bWVudEVycm9yKCkuaXNOdWxsKCkgfHwgIWRsLT5mcmFtZUxv
YWRlcigpKQogICAgICAgICByZXR1cm47CkBAIC0yNTA5LDYgKzI1MTEsOSBAQCB2b2lkIEZyYW1l
TG9hZGVyOjpjb250aW51ZUxvYWRBZnRlcldpbGxTdWJtaXRGb3JtKCkKICAgICAgICAgbm90aWZp
ZXIoKS0+YXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QoaWRlbnRpZmllciwgbV9wcm92
aXNpb25hbERvY3VtZW50TG9hZGVyLmdldCgpLCBtX3Byb3Zpc2lvbmFsRG9jdW1lbnRMb2FkZXIt
Pm9yaWdpbmFsUmVxdWVzdCgpKTsKICAgICB9CiAKKyAgICBBU1NFUlQoIW1fcHJvdmlzaW9uYWxE
b2N1bWVudExvYWRlci0+ZG9jdW1lbnRMb2FkVGltaW5nKCktPm5hdmlnYXRpb25TdGFydCk7Cisg
ICAgbV9wcm92aXNpb25hbERvY3VtZW50TG9hZGVyLT5kb2N1bWVudExvYWRUaW1pbmcoKS0+bmF2
aWdhdGlvblN0YXJ0ID0gY3VycmVudFRpbWUoKTsKKwogICAgIGlmICghbV9wcm92aXNpb25hbERv
Y3VtZW50TG9hZGVyLT5zdGFydExvYWRpbmdNYWluUmVzb3VyY2UoaWRlbnRpZmllcikpCiAgICAg
ICAgIG1fcHJvdmlzaW9uYWxEb2N1bWVudExvYWRlci0+dXBkYXRlTG9hZGluZygpOwogfQpkaWZm
IC0tZ2l0IGEvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuaCBiL1dlYkNvcmUvbG9hZGVyL0Zy
YW1lTG9hZGVyLmgKaW5kZXggNzU2ZWJjMzRiMWExZWMxZGFmMzdiYmE3NjRlMDA5NDdkOTFmYTg5
OC4uMTJiNTM2YmEzNDJlM2Y4MjgxYTE3OGRmYTg1MmI5MTkwZTgwMGRkZSAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuaAorKysgYi9XZWJDb3JlL2xvYWRlci9GcmFtZUxv
YWRlci5oCkBAIC0xOTMsNyArMTkzLDYgQEAgcHVibGljOgogICAgIHZvaWQgZGlkQ2hhbmdlSWNv
bnMoRG9jdW1lbnRMb2FkZXIqKTsKIAogICAgIEZyYW1lTG9hZFR5cGUgbG9hZFR5cGUoKSBjb25z
dDsKLSAgICBGcmFtZUxvYWRUaW1lbGluZSogZnJhbWVMb2FkVGltZWxpbmUoKSB7IHJldHVybiAm
bV9mcmFtZUxvYWRUaW1lbGluZTsgfQogCiAgICAgQ2FjaGVQb2xpY3kgc3VicmVzb3VyY2VDYWNo
ZVBvbGljeSgpIGNvbnN0OwogCkBAIC00NDYsNyArNDQ1LDYgQEAgcHJpdmF0ZToKIAogICAgIEZy
YW1lU3RhdGUgbV9zdGF0ZTsKICAgICBGcmFtZUxvYWRUeXBlIG1fbG9hZFR5cGU7Ci0gICAgRnJh
bWVMb2FkVGltZWxpbmUgbV9mcmFtZUxvYWRUaW1lbGluZTsKIAogICAgIC8vIERvY3VtZW50IGxv
YWRlcnMgZm9yIHRoZSB0aHJlZSBwaGFzZXMgb2YgZnJhbWUgbG9hZGluZy4gTm90ZSB0aGF0IHdo
aWxlIAogICAgIC8vIGEgbmV3IHJlcXVlc3QgaXMgYmVpbmcgbG9hZGVkLCB0aGUgb2xkIGRvY3Vt
ZW50IGxvYWRlciBtYXkgc3RpbGwgYmUgcmVmZXJlbmNlZC4KZGlmZiAtLWdpdCBhL1dlYkNvcmUv
bG9hZGVyL0ZyYW1lTG9hZGVyVHlwZXMuaCBiL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyVHlw
ZXMuaAppbmRleCBhZTY3MWNlOWI1MGQxZjY4YzNlNGQzYmI1ZTZkNTRjNjgwYzZiNzI2Li4zODdi
MDY3NDUwZjgzODY0MzQxYTNkZDc5MjVlYTNiMDcyODA2NzEzIDEwMDY0NAotLS0gYS9XZWJDb3Jl
L2xvYWRlci9GcmFtZUxvYWRlclR5cGVzLmgKKysrIGIvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2Fk
ZXJUeXBlcy5oCkBAIC02MCw5ICs2MCw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAg
RnJhbWVMb2FkVHlwZUJhY2tXTUxEZWNrTm90QWNjZXNzaWJsZQogICAgIH07CiAKLSAgICAvLyBG
SVhNRTogTW92ZSB0aGlzIHRvIGEgbmV3IGhlYWRlciBmaWxlLgotICAgIHN0cnVjdCBGcmFtZUxv
YWRUaW1lbGluZSB7Ci0gICAgICAgIEZyYW1lTG9hZFRpbWVsaW5lKCkKKyAgICAvLyBGSVhNRTog
TW92ZSB0byBEb2N1bWVudExvYWRUaW1pbmcuaC4KKyAgICBzdHJ1Y3QgRG9jdW1lbnRMb2FkVGlt
aW5nIHsKKyAgICAgICAgRG9jdW1lbnRMb2FkVGltaW5nKCkKICAgICAgICAgICAgIDogbmF2aWdh
dGlvblN0YXJ0KDAuMCkKICAgICAgICAgICAgICwgdW5sb2FkRXZlbnRFbmQoMC4wKQogICAgICAg
ICAgICAgLCByZWRpcmVjdFN0YXJ0KDAuMCkKZGlmZiAtLWdpdCBhL1dlYkNvcmUvbG9hZGVyL01h
aW5SZXNvdXJjZUxvYWRlci5jcHAgYi9XZWJDb3JlL2xvYWRlci9NYWluUmVzb3VyY2VMb2FkZXIu
Y3BwCmluZGV4IGRiYzhmNmQyNzk3NzkyYmQwZmVmNjlkNjcxZDI3MDFjYzk1MGVlZjAuLjg3NTk2
N2Y3YzE0OTQ1ZmMzZGZmN2RkMjBlMjc5OTlmOTM5YWM3MmIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
bG9hZGVyL01haW5SZXNvdXJjZUxvYWRlci5jcHAKKysrIGIvV2ViQ29yZS9sb2FkZXIvTWFpblJl
c291cmNlTG9hZGVyLmNwcApAQCAtMTU5LDE0ICsxNTksMTQgQEAgdm9pZCBNYWluUmVzb3VyY2VM
b2FkZXI6OndpbGxTZW5kUmVxdWVzdChSZXNvdXJjZVJlcXVlc3QmIG5ld1JlcXVlc3QsIGNvbnN0
IFJlc28KICAgICAvLyByZWZlcmVuY2UgdG8gdGhpcyBvYmplY3Q7IG9uZSBleGFtcGxlIG9mIHRo
aXMgaXMgMzI2NjIxNi4KICAgICBSZWZQdHI8TWFpblJlc291cmNlTG9hZGVyPiBwcm90ZWN0KHRo
aXMpOwogCi0gICAgRnJhbWVMb2FkVGltZWxpbmUqIGZyYW1lTG9hZFRpbWVsaW5lID0gZnJhbWVM
b2FkZXIoKS0+ZnJhbWVMb2FkVGltZWxpbmUoKTsKLSAgICBkb3VibGUgZmV0Y2hUaW1lID0gY3Vy
cmVudFRpbWUoKTsKLSAgICBpZiAoZG91YmxlIGZldGNoU3RhcnQgPSBmcmFtZUxvYWRUaW1lbGlu
ZS0+ZmV0Y2hTdGFydCkgewotICAgICAgICBpZiAoIWZyYW1lTG9hZFRpbWVsaW5lLT5yZWRpcmVj
dENvdW50KyspCi0gICAgICAgICAgICBmcmFtZUxvYWRUaW1lbGluZS0+cmVkaXJlY3RTdGFydCA9
IGZldGNoU3RhcnQ7Ci0gICAgICAgIGZyYW1lTG9hZFRpbWVsaW5lLT5yZWRpcmVjdEVuZCA9IGZl
dGNoVGltZTsKKyAgICBBU1NFUlQoZG9jdW1lbnRMb2FkZXIoKS0+ZG9jdW1lbnRMb2FkVGltaW5n
KCktPmZldGNoU3RhcnQpOworICAgIGlmICghcmVkaXJlY3RSZXNwb25zZS5pc051bGwoKSkgewor
ICAgICAgICBEb2N1bWVudExvYWRUaW1pbmcqIGRvY3VtZW50TG9hZFRpbWluZyA9IGRvY3VtZW50
TG9hZGVyKCktPmRvY3VtZW50TG9hZFRpbWluZygpOworICAgICAgICBkb2N1bWVudExvYWRUaW1p
bmctPnJlZGlyZWN0Q291bnQrKzsKKyAgICAgICAgaWYgKCFkb2N1bWVudExvYWRUaW1pbmctPnJl
ZGlyZWN0U3RhcnQpCisgICAgICAgICAgICBkb2N1bWVudExvYWRUaW1pbmctPnJlZGlyZWN0U3Rh
cnQgPSBkb2N1bWVudExvYWRUaW1pbmctPmZldGNoU3RhcnQ7CisgICAgICAgIGRvY3VtZW50TG9h
ZFRpbWluZy0+ZmV0Y2hTdGFydCA9IGRvY3VtZW50TG9hZFRpbWluZy0+cmVkaXJlY3RFbmQgPSBj
dXJyZW50VGltZSgpOwogICAgIH0KLSAgICBmcmFtZUxvYWRUaW1lbGluZS0+ZmV0Y2hTdGFydCA9
IGZldGNoVGltZTsKIAogICAgIC8vIFVwZGF0ZSBjb29raWUgcG9saWN5IGJhc2UgVVJMIGFzIFVS
TCBjaGFuZ2VzLCBleGNlcHQgZm9yIHN1YmZyYW1lcywgd2hpY2ggdXNlIHRoZQogICAgIC8vIFVS
TCBvZiB0aGUgbWFpbiBmcmFtZSB3aGljaCBkb2Vzbid0IGNoYW5nZSB3aGVuIHdlIHJlZGlyZWN0
LgpAQCAtNTQyLDYgKzU0Miw5IEBAIGJvb2wgTWFpblJlc291cmNlTG9hZGVyOjpsb2FkKGNvbnN0
IFJlc291cmNlUmVxdWVzdCYgciwgY29uc3QgU3Vic3RpdHV0ZURhdGEmIHN1CiAKICAgICBtX3N1
YnN0aXR1dGVEYXRhID0gc3Vic3RpdHV0ZURhdGE7CiAKKyAgICBBU1NFUlQoZG9jdW1lbnRMb2Fk
ZXIoKS0+ZG9jdW1lbnRMb2FkVGltaW5nKCktPm5hdmlnYXRpb25TdGFydCk7CisgICAgQVNTRVJU
KCFkb2N1bWVudExvYWRlcigpLT5kb2N1bWVudExvYWRUaW1pbmcoKS0+ZmV0Y2hTdGFydCk7Cisg
ICAgZG9jdW1lbnRMb2FkZXIoKS0+ZG9jdW1lbnRMb2FkVGltaW5nKCktPmZldGNoU3RhcnQgPSBj
dXJyZW50VGltZSgpOwogICAgIFJlc291cmNlUmVxdWVzdCByZXF1ZXN0KHIpOwogCiAjaWYgRU5B
QkxFKE9GRkxJTkVfV0VCX0FQUExJQ0FUSU9OUykKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGFnZS9E
T01XaW5kb3cuY3BwIGIvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAKaW5kZXggNWViZTY1OWEy
OWFjN2RmNDAwOGU3YzNjNGQ3MjEyYmY0N2Q1YmM5MS4uMGE5NjdkNzU0YjRkOWQxYzU5OTk4ZTI3
MGJjOTlhMzcyOWMwOWQwMiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAK
KysrIGIvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAKQEAgLTM1LDYgKzM1LDcgQEAKICNpbmNs
dWRlICJDU1NTdHlsZVNlbGVjdG9yLmgiCiAjaW5jbHVkZSAiQ2hyb21lLmgiCiAjaW5jbHVkZSAi
Q29uc29sZS5oIgorI2luY2x1ZGUgIkRvY3VtZW50TG9hZGVyLmgiCiAjaW5jbHVkZSAiRE9NQXBw
bGljYXRpb25DYWNoZS5oIgogI2luY2x1ZGUgIkRPTVNlbGVjdGlvbi5oIgogI2luY2x1ZGUgIkRP
TVRpbWVyLmgiCkBAIC0xNDM4LDExICsxNDM5LDExIEBAIGJvb2wgRE9NV2luZG93OjpyZW1vdmVF
dmVudExpc3RlbmVyKGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBFdmVudExpc3RlbmVy
CiAKIHZvaWQgRE9NV2luZG93OjpkaXNwYXRjaExvYWRFdmVudCgpCiB7Ci0gICAgaWYgKG1fZnJh
bWUpCi0gICAgICAgIG1fZnJhbWUtPmxvYWRlcigpLT5mcmFtZUxvYWRUaW1lbGluZSgpLT5sb2Fk
RXZlbnRTdGFydCA9IGN1cnJlbnRUaW1lKCk7CisgICAgaWYgKERvY3VtZW50TG9hZGVyKiBkb2N1
bWVudExvYWRlciA9IG1fZnJhbWUgPyBtX2ZyYW1lLT5sb2FkZXIoKS0+ZG9jdW1lbnRMb2FkZXIo
KSA6IDApCisgICAgICAgIGRvY3VtZW50TG9hZGVyLT5kb2N1bWVudExvYWRUaW1pbmcoKS0+bG9h
ZEV2ZW50U3RhcnQgPSBjdXJyZW50VGltZSgpOwogICAgIGRpc3BhdGNoRXZlbnQoRXZlbnQ6OmNy
ZWF0ZShldmVudE5hbWVzKCkubG9hZEV2ZW50LCBmYWxzZSwgZmFsc2UpLCBkb2N1bWVudCgpKTsK
LSAgICBpZiAobV9mcmFtZSkKLSAgICAgICAgbV9mcmFtZS0+bG9hZGVyKCktPmZyYW1lTG9hZFRp
bWVsaW5lKCktPmxvYWRFdmVudEVuZCA9IGN1cnJlbnRUaW1lKCk7CisgICAgaWYgKERvY3VtZW50
TG9hZGVyKiBkb2N1bWVudExvYWRlciA9IG1fZnJhbWUgPyBtX2ZyYW1lLT5sb2FkZXIoKS0+ZG9j
dW1lbnRMb2FkZXIoKSA6IDApCisgICAgICAgIGRvY3VtZW50TG9hZGVyLT5kb2N1bWVudExvYWRU
aW1pbmcoKS0+bG9hZEV2ZW50RW5kID0gY3VycmVudFRpbWUoKTsKIAogICAgIC8vIEZvciBsb2Fk
IGV2ZW50cywgc2VuZCBhIHNlcGFyYXRlIGxvYWQgZXZlbnQgdG8gdGhlIGVuY2xvc2luZyBmcmFt
ZSBvbmx5LgogICAgIC8vIFRoaXMgaXMgYSBET00gZXh0ZW5zaW9uIGFuZCBpcyBpbmRlcGVuZGVu
dCBvZiBidWJibGluZy9jYXB0dXJpbmcgcnVsZXMgb2YKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGFn
ZS9OYXZpZ2F0aW9uLmNwcCBiL1dlYkNvcmUvcGFnZS9OYXZpZ2F0aW9uLmNwcAppbmRleCA0ZmVj
MGVlMTMxYzJhNjA2NTg1ZjM0ZDk3ZWEyMWVlODQzZDM4MTZmLi4yZDFhYjllZDAyZjk5Y2E3NDgw
NTk3YmM3OGRhYWNlYWFmYjA0NDZkIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BhZ2UvTmF2aWdhdGlv
bi5jcHAKKysrIGIvV2ViQ29yZS9wYWdlL05hdmlnYXRpb24uY3BwCkBAIC03OSw3ICs3OSwxMSBA
QCB1bnNpZ25lZCBzaG9ydCBOYXZpZ2F0aW9uOjpyZWRpcmVjdENvdW50KCkgY29uc3QKICAgICBp
ZiAoIW1fZnJhbWUpCiAgICAgICAgIHJldHVybiAwOwogCi0gICAgcmV0dXJuIG1fZnJhbWUtPmxv
YWRlcigpLT5mcmFtZUxvYWRUaW1lbGluZSgpLT5yZWRpcmVjdENvdW50OworICAgIERvY3VtZW50
TG9hZGVyKiBsb2FkZXIgPSBtX2ZyYW1lLT5sb2FkZXIoKS0+ZG9jdW1lbnRMb2FkZXIoKTsKKyAg
ICBpZiAoIWxvYWRlcikKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICByZXR1cm4gbG9hZGVyLT5k
b2N1bWVudExvYWRUaW1pbmcoKS0+cmVkaXJlY3RDb3VudDsKIH0KIAogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wYWdlL1RpbWluZy5jcHAgYi9XZWJDb3JlL3Bh
Z2UvVGltaW5nLmNwcAppbmRleCBlNTdlNDhhNDU3OGQ2M2RhYzMzZDUwNDkzMDJmZTdiN2NjYWVl
YTc1Li5lMzlkZWNmMDAzM2FkZWM3NzBlMTJlODJjNDIzYzM1OThmNzE1OWYxIDEwMDY0NAotLS0g
YS9XZWJDb3JlL3BhZ2UvVGltaW5nLmNwcAorKysgYi9XZWJDb3JlL3BhZ2UvVGltaW5nLmNwcApA
QCAtNDAsMTAgKzQwLDMxIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotc3RhdGljIHVuc2ln
bmVkIGxvbmcgbG9uZyB0b0ludGVnZXJNaWxsaXNlY29uZHMoZG91YmxlIG1pbGxpc2Vjb25kcykK
K3N0YXRpYyB1bnNpZ25lZCBsb25nIGxvbmcgdG9JbnRlZ2VyTWlsbGlzZWNvbmRzKGRvdWJsZSBz
ZWNvbmRzKQogewotICAgIEFTU0VSVChtaWxsaXNlY29uZHMgPj0gMCk7Ci0gICAgcmV0dXJuIHN0
YXRpY19jYXN0PHVuc2lnbmVkIGxvbmcgbG9uZz4obWlsbGlzZWNvbmRzICogMTAwMC4wKTsKKyAg
ICBBU1NFUlQoc2Vjb25kcyA+PSAwKTsKKyAgICByZXR1cm4gc3RhdGljX2Nhc3Q8dW5zaWduZWQg
bG9uZyBsb25nPihzZWNvbmRzICogMTAwMC4wKTsKK30KKworc3RhdGljIGRvdWJsZSBnZXRQb3Nz
aWJseVNrZXdlZFRpbWVJbktub3duUmFuZ2UoZG91YmxlIHNrZXdlZFRpbWUsIGRvdWJsZSBsb3dl
ckJvdW5kLCBkb3VibGUgdXBwZXJCb3VuZCkKK3sKKyNpZiBQTEFURk9STShDSFJPTUlVTSkKKyAg
ICAvLyBUaGUgY2hyb21pdW0gcG9ydCdzIGN1cnJlbnRUaW1lKCkgaW1wbGVtZW50YXRpb24gb25s
eSBzeW5jcyB3aXRoIHRoZQorICAgIC8vIHN5c3RlbSBjbG9jayBldmVyeSA2MCBzZWNvbmRzLiBT
byBpdCBpcyBwb3NzaWJsZSBmb3IgdGltaW5nIG1hcmtzCisgICAgLy8gY29sbGVjdGVkIGluIGRp
ZmZlcmVudCB0aHJlYWRzIG9yIHByb2Nlc3NlcyB0byBoYXZlIGEgc21hbGwgc2tldy4KKyAgICAv
LyBGSVhNRTogSXQgbWF5IGJlIHBvc3NpYmxlIHRvIGFkZCBhIGN1cnJlbnRUaW1lRnJvbVN5c3Rl
bVRpbWUoKSBtZXRob2QKKyAgICAvLyB0aGF0IGVsaW1pbmF0ZXMgdGhlIHNrZXcuCisgICAgaWYg
KHNrZXdlZFRpbWUgPD0gbG93ZXJCb3VuZCkKKyAgICAgICAgcmV0dXJuIGxvd2VyQm91bmQ7CisK
KyAgICBpZiAoc2tld2VkVGltZSA+PSB1cHBlckJvdW5kKQorICAgICAgICByZXR1cm4gdXBwZXJC
b3VuZDsKKyNlbHNlCisgICAgQVNTRVJUX1VOVVNFRChsb3dlckJvdW5kLCBza2V3ZWRUaW1lID49
IGxvd2VyQm91bmQpOworICAgIEFTU0VSVF9VTlVTRUQodXBwZXJCb3VuZCwgc2tld2VkVGltZSA8
PSB1cHBlckJvdW5kKTsKKyNlbmRpZgorCisgICAgcmV0dXJuIHNrZXdlZFRpbWU7CiB9CiAKIFRp
bWluZzo6VGltaW5nKEZyYW1lKiBmcmFtZSkKQEAgLTYzLDQyICs4NCw0NyBAQCB2b2lkIFRpbWlu
Zzo6ZGlzY29ubmVjdEZyYW1lKCkKIAogdW5zaWduZWQgbG9uZyBsb25nIFRpbWluZzo6bmF2aWdh
dGlvblN0YXJ0KCkgY29uc3QKIHsKLSAgICBpZiAoIW1fZnJhbWUpCisgICAgRG9jdW1lbnRMb2Fk
VGltaW5nKiB0aW1pbmcgPSBkb2N1bWVudExvYWRUaW1pbmcoKTsKKyAgICBpZiAoIXRpbWluZykK
ICAgICAgICAgcmV0dXJuIDA7CiAKLSAgICByZXR1cm4gdG9JbnRlZ2VyTWlsbGlzZWNvbmRzKG1f
ZnJhbWUtPmxvYWRlcigpLT5mcmFtZUxvYWRUaW1lbGluZSgpLT5uYXZpZ2F0aW9uU3RhcnQpOwor
ICAgIHJldHVybiB0b0ludGVnZXJNaWxsaXNlY29uZHModGltaW5nLT5uYXZpZ2F0aW9uU3RhcnQp
OwogfQogCiB1bnNpZ25lZCBsb25nIGxvbmcgVGltaW5nOjp1bmxvYWRFdmVudEVuZCgpIGNvbnN0
CiB7Ci0gICAgaWYgKCFtX2ZyYW1lKQorICAgIERvY3VtZW50TG9hZFRpbWluZyogdGltaW5nID0g
ZG9jdW1lbnRMb2FkVGltaW5nKCk7CisgICAgaWYgKCF0aW1pbmcpCiAgICAgICAgIHJldHVybiAw
OwogCi0gICAgcmV0dXJuIHRvSW50ZWdlck1pbGxpc2Vjb25kcyhtX2ZyYW1lLT5sb2FkZXIoKS0+
ZnJhbWVMb2FkVGltZWxpbmUoKS0+dW5sb2FkRXZlbnRFbmQpOworICAgIHJldHVybiB0b0ludGVn
ZXJNaWxsaXNlY29uZHModGltaW5nLT51bmxvYWRFdmVudEVuZCk7CiB9CiAgICAgCiB1bnNpZ25l
ZCBsb25nIGxvbmcgVGltaW5nOjpyZWRpcmVjdFN0YXJ0KCkgY29uc3QKIHsKLSAgICBpZiAoIW1f
ZnJhbWUpCisgICAgRG9jdW1lbnRMb2FkVGltaW5nKiB0aW1pbmcgPSBkb2N1bWVudExvYWRUaW1p
bmcoKTsKKyAgICBpZiAoIXRpbWluZykKICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgIAotICAg
IHJldHVybiB0b0ludGVnZXJNaWxsaXNlY29uZHMobV9mcmFtZS0+bG9hZGVyKCktPmZyYW1lTG9h
ZFRpbWVsaW5lKCktPnJlZGlyZWN0U3RhcnQpOworCisgICAgcmV0dXJuIHRvSW50ZWdlck1pbGxp
c2Vjb25kcyh0aW1pbmctPnJlZGlyZWN0U3RhcnQpOwogfQogICAgIAogdW5zaWduZWQgbG9uZyBs
b25nIFRpbWluZzo6cmVkaXJlY3RFbmQoKSBjb25zdAogewotICAgIGlmICghbV9mcmFtZSkKKyAg
ICBEb2N1bWVudExvYWRUaW1pbmcqIHRpbWluZyA9IGRvY3VtZW50TG9hZFRpbWluZygpOworICAg
IGlmICghdGltaW5nKQogICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgCi0gICAgcmV0dXJuIHRv
SW50ZWdlck1pbGxpc2Vjb25kcyhtX2ZyYW1lLT5sb2FkZXIoKS0+ZnJhbWVMb2FkVGltZWxpbmUo
KS0+cmVkaXJlY3RFbmQpOworCisgICAgcmV0dXJuIHRvSW50ZWdlck1pbGxpc2Vjb25kcyh0aW1p
bmctPnJlZGlyZWN0RW5kKTsKIH0KIAogdW5zaWduZWQgbG9uZyBsb25nIFRpbWluZzo6ZmV0Y2hT
dGFydCgpIGNvbnN0CiB7Ci0gICAgaWYgKCFtX2ZyYW1lKQorICAgIERvY3VtZW50TG9hZFRpbWlu
ZyogdGltaW5nID0gZG9jdW1lbnRMb2FkVGltaW5nKCk7CisgICAgaWYgKCF0aW1pbmcpCiAgICAg
ICAgIHJldHVybiAwOwogCi0gICAgcmV0dXJuIHRvSW50ZWdlck1pbGxpc2Vjb25kcyhtX2ZyYW1l
LT5sb2FkZXIoKS0+ZnJhbWVMb2FkVGltZWxpbmUoKS0+ZmV0Y2hTdGFydCk7CisgICAgcmV0dXJu
IHRvSW50ZWdlck1pbGxpc2Vjb25kcyh0aW1pbmctPmZldGNoU3RhcnQpOwogfQogCiB1bnNpZ25l
ZCBsb25nIGxvbmcgVGltaW5nOjpkb21haW5Mb29rdXBTdGFydCgpIGNvbnN0CkBAIC0xMTMsNyAr
MTM5LDcgQEAgdW5zaWduZWQgbG9uZyBsb25nIFRpbWluZzo6ZG9tYWluTG9va3VwU3RhcnQoKSBj
b25zdAogICAgIGlmIChkbnNTdGFydCA8IDApCiAgICAgICAgIHJldHVybiBmZXRjaFN0YXJ0KCk7
CiAKLSAgICByZXR1cm4gdG9JbnRlZ2VyTWlsbGlzZWNvbmRzKHRpbWluZy0+cmVxdWVzdFRpbWUp
ICsgZG5zU3RhcnQ7CisgICAgcmV0dXJuIHJlc291cmNlTG9hZFRpbWVSZWxhdGl2ZVRvQWJzb2x1
dGUoZG5zU3RhcnQpOwogfQogCiB1bnNpZ25lZCBsb25nIGxvbmcgVGltaW5nOjpkb21haW5Mb29r
dXBFbmQoKSBjb25zdApAQCAtMTI4LDcgKzE1NCw3IEBAIHVuc2lnbmVkIGxvbmcgbG9uZyBUaW1p
bmc6OmRvbWFpbkxvb2t1cEVuZCgpIGNvbnN0CiAgICAgaWYgKGRuc0VuZCA8IDApCiAgICAgICAg
IHJldHVybiBkb21haW5Mb29rdXBTdGFydCgpOwogCi0gICAgcmV0dXJuIHRvSW50ZWdlck1pbGxp
c2Vjb25kcyh0aW1pbmctPnJlcXVlc3RUaW1lKSArIGRuc0VuZDsKKyAgICByZXR1cm4gcmVzb3Vy
Y2VMb2FkVGltZVJlbGF0aXZlVG9BYnNvbHV0ZShkbnNFbmQpOwogfQogCiB1bnNpZ25lZCBsb25n
IGxvbmcgVGltaW5nOjpjb25uZWN0U3RhcnQoKSBjb25zdApAQCAtMTQzLDcgKzE2OSw3IEBAIHVu
c2lnbmVkIGxvbmcgbG9uZyBUaW1pbmc6OmNvbm5lY3RTdGFydCgpIGNvbnN0CiAgICAgaWYgKGNv
bm5lY3RTdGFydCA8IDApCiAgICAgICAgIHJldHVybiBkb21haW5Mb29rdXBFbmQoKTsKIAotICAg
IHJldHVybiB0b0ludGVnZXJNaWxsaXNlY29uZHModGltaW5nLT5yZXF1ZXN0VGltZSkgKyBjb25u
ZWN0U3RhcnQ7CisgICAgcmV0dXJuIHJlc291cmNlTG9hZFRpbWVSZWxhdGl2ZVRvQWJzb2x1dGUo
Y29ubmVjdFN0YXJ0KTsKIH0KIAogdW5zaWduZWQgbG9uZyBsb25nIFRpbWluZzo6Y29ubmVjdEVu
ZCgpIGNvbnN0CkBAIC0xNTgsNyArMTg0LDcgQEAgdW5zaWduZWQgbG9uZyBsb25nIFRpbWluZzo6
Y29ubmVjdEVuZCgpIGNvbnN0CiAgICAgaWYgKGNvbm5lY3RFbmQgPCAwKQogICAgICAgICByZXR1
cm4gY29ubmVjdFN0YXJ0KCk7CiAKLSAgICByZXR1cm4gdG9JbnRlZ2VyTWlsbGlzZWNvbmRzKHRp
bWluZy0+cmVxdWVzdFRpbWUpICsgY29ubmVjdEVuZDsKKyAgICByZXR1cm4gcmVzb3VyY2VMb2Fk
VGltZVJlbGF0aXZlVG9BYnNvbHV0ZShjb25uZWN0RW5kKTsKIH0KIAogdW5zaWduZWQgbG9uZyBs
b25nIFRpbWluZzo6cmVxdWVzdFN0YXJ0KCkgY29uc3QKQEAgLTE2OCw3ICsxOTQsNyBAQCB1bnNp
Z25lZCBsb25nIGxvbmcgVGltaW5nOjpyZXF1ZXN0U3RhcnQoKSBjb25zdAogICAgICAgICByZXR1
cm4gMDsKIAogICAgIEFTU0VSVCh0aW1pbmctPnNlbmRTdGFydCA+PSAwKTsKLSAgICByZXR1cm4g
dG9JbnRlZ2VyTWlsbGlzZWNvbmRzKHRpbWluZy0+cmVxdWVzdFRpbWUpICsgdGltaW5nLT5zZW5k
U3RhcnQ7CisgICAgcmV0dXJuIHJlc291cmNlTG9hZFRpbWVSZWxhdGl2ZVRvQWJzb2x1dGUodGlt
aW5nLT5zZW5kU3RhcnQpOwogfQogCiB1bnNpZ25lZCBsb25nIGxvbmcgVGltaW5nOjpyZXF1ZXN0
RW5kKCkgY29uc3QKQEAgLTE3OCw3ICsyMDQsNyBAQCB1bnNpZ25lZCBsb25nIGxvbmcgVGltaW5n
OjpyZXF1ZXN0RW5kKCkgY29uc3QKICAgICAgICAgcmV0dXJuIDA7CiAKICAgICBBU1NFUlQodGlt
aW5nLT5zZW5kRW5kID49IDApOwotICAgIHJldHVybiB0b0ludGVnZXJNaWxsaXNlY29uZHModGlt
aW5nLT5yZXF1ZXN0VGltZSkgKyB0aW1pbmctPnNlbmRFbmQ7CisgICAgcmV0dXJuIHJlc291cmNl
TG9hZFRpbWVSZWxhdGl2ZVRvQWJzb2x1dGUodGltaW5nLT5zZW5kRW5kKTsKIH0KIAogdW5zaWdu
ZWQgbG9uZyBsb25nIFRpbWluZzo6cmVzcG9uc2VTdGFydCgpIGNvbnN0CkBAIC0xOTQsNDAgKzIy
MCw3OCBAQCB1bnNpZ25lZCBsb25nIGxvbmcgVGltaW5nOjpyZXNwb25zZVN0YXJ0KCkgY29uc3QK
ICAgICAvLyBpcyBiYXNpY2FsbHkgZXF1aXZhbGVudC4gQnV0IGZvciBzb21lIHJlc3BvbnNlcywg
cGFydGljdWxhcmx5IHRob3NlIHdpdGgKICAgICAvLyBoZWFkZXJzIGxhcmdlciB0aGFuIGEgc2lu
Z2xlIHBhY2tldCwgdGhpcyB0aW1lIHdpbGwgYmUgdG9vIGxhdGUuCiAgICAgQVNTRVJUKHRpbWlu
Zy0+cmVjZWl2ZUhlYWRlcnNFbmQgPj0gMCk7Ci0gICAgcmV0dXJuIHRvSW50ZWdlck1pbGxpc2Vj
b25kcyh0aW1pbmctPnJlcXVlc3RUaW1lKSArIHRpbWluZy0+cmVjZWl2ZUhlYWRlcnNFbmQ7Cisg
ICAgcmV0dXJuIHJlc291cmNlTG9hZFRpbWVSZWxhdGl2ZVRvQWJzb2x1dGUodGltaW5nLT5yZWNl
aXZlSGVhZGVyc0VuZCk7CiB9CiAKIHVuc2lnbmVkIGxvbmcgbG9uZyBUaW1pbmc6OnJlc3BvbnNl
RW5kKCkgY29uc3QKIHsKLSAgICBpZiAoIW1fZnJhbWUpCisgICAgRG9jdW1lbnRMb2FkVGltaW5n
KiB0aW1pbmcgPSBkb2N1bWVudExvYWRUaW1pbmcoKTsKKyAgICBpZiAoIXRpbWluZykKICAgICAg
ICAgcmV0dXJuIDA7CiAKLSAgICByZXR1cm4gdG9JbnRlZ2VyTWlsbGlzZWNvbmRzKG1fZnJhbWUt
PmxvYWRlcigpLT5mcmFtZUxvYWRUaW1lbGluZSgpLT5yZXNwb25zZUVuZCk7CisgICAgcmV0dXJu
IHRvSW50ZWdlck1pbGxpc2Vjb25kcyh0aW1pbmctPnJlc3BvbnNlRW5kKTsKIH0KIAogdW5zaWdu
ZWQgbG9uZyBsb25nIFRpbWluZzo6bG9hZEV2ZW50U3RhcnQoKSBjb25zdAogewotICAgIGlmICgh
bV9mcmFtZSkKKyAgICBEb2N1bWVudExvYWRUaW1pbmcqIHRpbWluZyA9IGRvY3VtZW50TG9hZFRp
bWluZygpOworICAgIGlmICghdGltaW5nKQogICAgICAgICByZXR1cm4gMDsKIAotICAgIHJldHVy
biB0b0ludGVnZXJNaWxsaXNlY29uZHMobV9mcmFtZS0+bG9hZGVyKCktPmZyYW1lTG9hZFRpbWVs
aW5lKCktPmxvYWRFdmVudFN0YXJ0KTsKKyAgICByZXR1cm4gdG9JbnRlZ2VyTWlsbGlzZWNvbmRz
KHRpbWluZy0+bG9hZEV2ZW50U3RhcnQpOwogfQogCiB1bnNpZ25lZCBsb25nIGxvbmcgVGltaW5n
Ojpsb2FkRXZlbnRFbmQoKSBjb25zdAogeworICAgIERvY3VtZW50TG9hZFRpbWluZyogdGltaW5n
ID0gZG9jdW1lbnRMb2FkVGltaW5nKCk7CisgICAgaWYgKCF0aW1pbmcpCisgICAgICAgIHJldHVy
biAwOworCisgICAgcmV0dXJuIHRvSW50ZWdlck1pbGxpc2Vjb25kcyh0aW1pbmctPmxvYWRFdmVu
dEVuZCk7Cit9CisKK0RvY3VtZW50TG9hZGVyKiBUaW1pbmc6OmRvY3VtZW50TG9hZGVyKCkgY29u
c3QKK3sKICAgICBpZiAoIW1fZnJhbWUpCiAgICAgICAgIHJldHVybiAwOwogCi0gICAgcmV0dXJu
IHRvSW50ZWdlck1pbGxpc2Vjb25kcyhtX2ZyYW1lLT5sb2FkZXIoKS0+ZnJhbWVMb2FkVGltZWxp
bmUoKS0+bG9hZEV2ZW50RW5kKTsKKyAgICByZXR1cm4gbV9mcmFtZS0+bG9hZGVyKCktPmRvY3Vt
ZW50TG9hZGVyKCk7Cit9CisKK0RvY3VtZW50TG9hZFRpbWluZyogVGltaW5nOjpkb2N1bWVudExv
YWRUaW1pbmcoKSBjb25zdAoreworICAgIERvY3VtZW50TG9hZGVyKiBsb2FkZXIgPSBkb2N1bWVu
dExvYWRlcigpOworICAgIGlmICghbG9hZGVyKQorICAgICAgICByZXR1cm4gMDsKKworICAgIHJl
dHVybiBsb2FkZXItPmRvY3VtZW50TG9hZFRpbWluZygpOwogfQogCiBSZXNvdXJjZUxvYWRUaW1p
bmcqIFRpbWluZzo6cmVzb3VyY2VMb2FkVGltaW5nKCkgY29uc3QKIHsKLSAgICBEb2N1bWVudExv
YWRlciogZG9jdW1lbnRMb2FkZXIgPSBtX2ZyYW1lLT5sb2FkZXIoKS0+ZG9jdW1lbnRMb2FkZXIo
KTsKLSAgICBpZiAoIWRvY3VtZW50TG9hZGVyKQorICAgIERvY3VtZW50TG9hZGVyKiBsb2FkZXIg
PSBkb2N1bWVudExvYWRlcigpOworICAgIGlmICghbG9hZGVyKQogICAgICAgICByZXR1cm4gMDsK
IAotICAgIHJldHVybiBkb2N1bWVudExvYWRlci0+cmVzcG9uc2UoKS5yZXNvdXJjZUxvYWRUaW1p
bmcoKTsKKyAgICByZXR1cm4gbG9hZGVyLT5yZXNwb25zZSgpLnJlc291cmNlTG9hZFRpbWluZygp
OworfQorCit1bnNpZ25lZCBsb25nIGxvbmcgVGltaW5nOjpyZXNvdXJjZUxvYWRUaW1lUmVsYXRp
dmVUb0Fic29sdXRlKGludCByZWxhdGl2ZVNlY29uZHMpIGNvbnN0Cit7CisgICAgQVNTRVJUKHJl
bGF0aXZlU2Vjb25kcyA+PSAwKTsKKyAgICBSZXNvdXJjZUxvYWRUaW1pbmcqIHJlc291cmNlVGlt
aW5nID0gcmVzb3VyY2VMb2FkVGltaW5nKCk7CisgICAgQVNTRVJUKHJlc291cmNlVGltaW5nKTsK
KyAgICBEb2N1bWVudExvYWRUaW1pbmcqIGRvY3VtZW50VGltaW5nID0gZG9jdW1lbnRMb2FkVGlt
aW5nKCk7CisgICAgQVNTRVJUKGRvY3VtZW50VGltaW5nKTsKKworICAgIC8vIFRoZSBSZXNvdXJj
ZUxvYWRUaW1pbmcgQVBJJ3MgcmVxdWVzdFRpbWUgaXMgdGhlIGJhc2UgdGltZSB0byB3aGljaCBh
bGwKKyAgICAvLyBvdGhlciBtYXJrcyBhcmUgcmVsYXRpdmUuIFNvIHRvIGdldCBhbiBhYnNvbHV0
ZSB0aW1lLCB3ZSBtdXN0IGFkZCBpdCB0bworICAgIC8vIHRoZSByZWxhdGl2ZSBtYXJrcy4KKyAg
ICAvLworICAgIC8vIFNpbmNlIFJlc291cmNlTG9hZFRpbWluZ3MgY2FtZSBmcm9tIHRoZSBuZXR3
b3JrIHBsYXRmb3JtIGxheWVyLCB3ZSBtdXN0CisgICAgLy8gY2hlY2sgdGhlbSBmb3Igc2tldyBi
ZWNhdXNlIHRoZXkgbWF5IGJlIGZyb20gYW5vdGhlciB0aHJlYWQvcHJvY2Vzcy4KKyAgICBkb3Vi
bGUgYmFzZVRpbWUgPSBnZXRQb3NzaWJseVNrZXdlZFRpbWVJbktub3duUmFuZ2UocmVzb3VyY2VU
aW1pbmctPnJlcXVlc3RUaW1lLCBkb2N1bWVudFRpbWluZy0+ZmV0Y2hTdGFydCwgZG9jdW1lbnRU
aW1pbmctPnJlc3BvbnNlRW5kKTsKKyAgICByZXR1cm4gdG9JbnRlZ2VyTWlsbGlzZWNvbmRzKGJh
c2VUaW1lKSArIHJlbGF0aXZlU2Vjb25kczsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9wYWdlL1RpbWluZy5oIGIvV2ViQ29yZS9wYWdlL1RpbWluZy5o
CmluZGV4IGVhZWE2MzM3NWJmZDUxNDViNWNlMTEwYTE5NzZiMjA4MmMwZjM5NmIuLmY0OGY1MjU3
YmMxZTVjMDFjYzY1Y2IxODNiN2QxMDE5YWEyNmI1ODUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGFn
ZS9UaW1pbmcuaAorKysgYi9XZWJDb3JlL3BhZ2UvVGltaW5nLmgKQEAgLTM4LDYgKzM4LDggQEAK
IAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitzdHJ1Y3QgRG9jdW1lbnRMb2FkVGltaW5nOworY2xh
c3MgRG9jdW1lbnRMb2FkZXI7CiBjbGFzcyBGcmFtZTsKIGNsYXNzIFJlc291cmNlTG9hZFRpbWlu
ZzsKIApAQCAtNjcsNyArNjksMTAgQEAgcHVibGljOgogcHJpdmF0ZToKICAgICBUaW1pbmcoRnJh
bWUqKTsKIAorICAgIERvY3VtZW50TG9hZGVyKiBkb2N1bWVudExvYWRlcigpIGNvbnN0OworICAg
IERvY3VtZW50TG9hZFRpbWluZyogZG9jdW1lbnRMb2FkVGltaW5nKCkgY29uc3Q7CiAgICAgUmVz
b3VyY2VMb2FkVGltaW5nKiByZXNvdXJjZUxvYWRUaW1pbmcoKSBjb25zdDsKKyAgICB1bnNpZ25l
ZCBsb25nIGxvbmcgcmVzb3VyY2VMb2FkVGltZVJlbGF0aXZlVG9BYnNvbHV0ZShpbnQpIGNvbnN0
OwogCiAgICAgRnJhbWUqIG1fZnJhbWU7CiB9Owo=
</data>
<flag name="review"
          id="50012"
          type_id="1"
          status="+"
          setter="fishd"
    />
          </attachment>
      

    </bug>

</bugzilla>