<?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>4325</bug_id>
          
          <creation_ts>2005-08-07 18:25:58 -0700</creation_ts>
          <short_desc>Mozilla Date tests have an unnecessary loop that runs 1970 times before each test</short_desc>
          <delta_ts>2005-08-08 10:29:07 -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>Tools / Tests</component>
          <version>420+</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P3</priority>
          <bug_severity>Enhancement</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Darin Adler">darin</reporter>
          <assigned_to name="Darin Adler">darin</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>16154</commentid>
    <comment_count>0</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2005-08-07 18:25:58 -0700</bug_when>
    <thetext>There&apos;s code to compute the value of &quot;year 0&quot; in all the Mozilla date tests. There&apos;s no need to compute this 
on entry to each test.

This is not all of why the tests are slow, but it&apos;s at least part of it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>16155</commentid>
    <comment_count>1</comment_count>
      <attachid>3271</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2005-08-07 18:26:59 -0700</bug_when>
    <thetext>Created attachment 3271
patch to use &quot;year 0&quot; constant instead of computing it each time</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>16199</commentid>
    <comment_count>2</comment_count>
      <attachid>3271</attachid>
    <who name="John Sullivan">sullivan</who>
    <bug_when>2005-08-08 09:08:55 -0700</bug_when>
    <thetext>Comment on attachment 3271
patch to use &quot;year 0&quot; constant instead of computing it each time

looks good</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>16204</commentid>
    <comment_count>3</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2005-08-08 10:29:07 -0700</bug_when>
    <thetext>I&apos;m pretty sure the rest of the slowness can be corrected by similar fixes -- turning repeated calculations 
into constants. The date tests are pretty pedantic in how they calculate correct answers.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>3271</attachid>
            <date>2005-08-07 18:26:59 -0700</date>
            <delta_ts>2005-08-08 09:08:55 -0700</delta_ts>
            <desc>patch to use &quot;year 0&quot; constant instead of computing it each time</desc>
            <filename>DateTestsYear0Patch.txt</filename>
            <type>text/plain</type>
            <size>54007</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9zaGVsbC5qcwo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09ClJDUyBmaWxlOiAvY3ZzL3Jvb3QvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21h
L3NoZWxsLmpzLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjEKZGlmZiAtcCAtdSAtcjEuMSBKYXZh
U2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvc2hlbGwuanMKLS0tIEphdmFTY3JpcHRDb3Jl
L3Rlc3RzL21vemlsbGEvZWNtYS9zaGVsbC5qcwkxMyBPY3QgMjAwMyAwMjowNToyOCAtMDAwMAkx
LjEKKysrIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9zaGVsbC5qcwk4IEF1ZyAy
MDA1IDAxOjAxOjAwIC0wMDAwCkBAIC0yMjksNiArMjI5LDcgQEAgdmFyICAgICAgICAgICAgIFBT
VF9ESUZGID0gVFpfRElGRiAtIFRaXwogdmFyCVRJTUVfMTk3MAkgPSAwOwogdmFyCVRJTUVfMjAw
MAkgPSA5NDY2ODQ4MDAwMDA7CiB2YXIJVElNRV8xOTAwCSA9IC0yMjA4OTg4ODAwMDAwOwordmFy
ICAgICBUSU1FX1lFQVJfMCAgICAgID0gLTYyMTY3MjE5MjAwMDAwOwogCiAKIC8qCkluZGV4OiBK
YXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTAtMS5qcwo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09ClJDUyBmaWxlOiAvY3ZzL3Jvb3QvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9l
Y21hL0RhdGUvMTUuOS41LjEwLTEuanMsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMQpkaWZmIC1w
IC11IC1yMS4xIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4x
MC0xLmpzCi0tLSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUu
MTAtMS5qcwkxMyBPY3QgMjAwMyAwMjowNToyOSAtMDAwMAkxLjEKKysrIEphdmFTY3JpcHRDb3Jl
L3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4xMC0xLmpzCTggQXVnIDIwMDUgMDE6MDE6
MDAgLTAwMDAKQEAgLTQ2LDEwICs0Niw2IEBACiAgICAgLy8gZ2V0IHRoZSBjdXJyZW50IHRpbWUK
ICAgICB2YXIgbm93ID0gKG5ldyBEYXRlKCkpLnZhbHVlT2YoKTsKIAotICAgIC8vIGNhbGN1bGF0
ZSB0aW1lIGZvciB5ZWFyIDAKLSAgICBmb3IgKCB2YXIgdGltZSA9IDAsIHllYXIgPSAxOTY5OyB5
ZWFyID49IDA7IHllYXItLSApIHsKLSAgICAgICAgdGltZSAtPSBUaW1lSW5ZZWFyKHllYXIpOwot
ICAgIH0KICAgICAvLyBnZXQgdGltZSBmb3IgMjkgZmViIDIwMDAKIAogICAgIHZhciBVVENfRkVC
XzI5XzIwMDAgPSBUSU1FXzIwMDAgKyAzMSptc1BlckRheSArIDI4Km1zUGVySG91cjsKQEAgLTY3
LDcgKzYzLDcgQEAKIAogICAgIGFkZFRlc3RDYXNlKCBub3cgKTsKIC8qCi0gICAgYWRkVGVzdENh
c2UoIHRpbWUgKTsKKyAgICBhZGRUZXN0Q2FzZSggVElNRV9ZRUFSXzAgKTsKICAgICBhZGRUZXN0
Q2FzZSggVElNRV8xOTcwICk7CiAgICAgYWRkVGVzdENhc2UoIFRJTUVfMTkwMCApOwogICAgIGFk
ZFRlc3RDYXNlKCBUSU1FXzIwMDAgKTsKSW5kZXg6IEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemls
bGEvZWNtYS9EYXRlLzE1LjkuNS4xMC0xMC5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3ZzL3Jv
b3QvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjEwLTEwLmpz
LHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjEKZGlmZiAtcCAtdSAtcjEuMSBKYXZhU2NyaXB0Q29y
ZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTAtMTAuanMKLS0tIEphdmFTY3JpcHRD
b3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4xMC0xMC5qcwkxMyBPY3QgMjAwMyAw
MjowNToyOSAtMDAwMAkxLjEKKysrIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9E
YXRlLzE1LjkuNS4xMC0xMC5qcwk4IEF1ZyAyMDA1IDAxOjAxOjAxIC0wMDAwCkBAIC00NiwxMCAr
NDYsNiBAQAogICAgIC8vIGdldCB0aGUgY3VycmVudCB0aW1lCiAgICAgdmFyIG5vdyA9IChuZXcg
RGF0ZSgpKS52YWx1ZU9mKCk7CiAKLSAgICAvLyBjYWxjdWxhdGUgdGltZSBmb3IgeWVhciAwCi0g
ICAgZm9yICggdmFyIHRpbWUgPSAwLCB5ZWFyID0gMTk2OTsgeWVhciA+PSAwOyB5ZWFyLS0gKSB7
Ci0gICAgICAgIHRpbWUgLT0gVGltZUluWWVhcih5ZWFyKTsKLSAgICB9CiAgICAgLy8gZ2V0IHRp
bWUgZm9yIDI5IGZlYiAyMDAwCiAKICAgICB2YXIgVVRDX0ZFQl8yOV8yMDAwID0gVElNRV8yMDAw
ICsgMzEqbXNQZXJEYXkgKyAyOCptc1BlckhvdXI7CkluZGV4OiBKYXZhU2NyaXB0Q29yZS90ZXN0
cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTAtMTEuanMKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTog
L2N2cy9yb290L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4x
MC0xMS5qcyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4xCmRpZmYgLXAgLXUgLXIxLjEgSmF2YVNj
cmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjEwLTExLmpzCi0tLSBKYXZh
U2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTAtMTEuanMJMTMgT2N0
IDIwMDMgMDI6MDU6MjkgLTAwMDAJMS4xCisrKyBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxh
L2VjbWEvRGF0ZS8xNS45LjUuMTAtMTEuanMJOCBBdWcgMjAwNSAwMTowMTowMSAtMDAwMApAQCAt
NDYsMTAgKzQ2LDYgQEAKICAgICAvLyBnZXQgdGhlIGN1cnJlbnQgdGltZQogICAgIHZhciBub3cg
PSAobmV3IERhdGUoKSkudmFsdWVPZigpOwogCi0gICAgLy8gY2FsY3VsYXRlIHRpbWUgZm9yIHll
YXIgMAotICAgIGZvciAoIHZhciB0aW1lID0gMCwgeWVhciA9IDE5Njk7IHllYXIgPj0gMDsgeWVh
ci0tICkgewotICAgICAgICB0aW1lIC09IFRpbWVJblllYXIoeWVhcik7Ci0gICAgfQogICAgIC8v
IGdldCB0aW1lIGZvciAyOSBmZWIgMjAwMAogCiAgICAgdmFyIFVUQ19GRUJfMjlfMjAwMCA9IFRJ
TUVfMjAwMCArIDMxKm1zUGVyRGF5ICsgMjgqbXNQZXJIb3VyOwpJbmRleDogSmF2YVNjcmlwdENv
cmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjEwLTEyLmpzCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNT
IGZpbGU6IC9jdnMvcm9vdC9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8x
NS45LjUuMTAtMTIuanMsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMQpkaWZmIC1wIC11IC1yMS4x
IEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4xMC0xMi5qcwot
LS0gSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjEwLTEyLmpz
CTEzIE9jdCAyMDAzIDAyOjA1OjI5IC0wMDAwCTEuMQorKysgSmF2YVNjcmlwdENvcmUvdGVzdHMv
bW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjEwLTEyLmpzCTggQXVnIDIwMDUgMDE6MDE6MDEgLTAw
MDAKQEAgLTQ2LDEwICs0Niw2IEBACiAgICAgLy8gZ2V0IHRoZSBjdXJyZW50IHRpbWUKICAgICB2
YXIgbm93ID0gKG5ldyBEYXRlKCkpLnZhbHVlT2YoKTsKIAotICAgIC8vIGNhbGN1bGF0ZSB0aW1l
IGZvciB5ZWFyIDAKLSAgICBmb3IgKCB2YXIgdGltZSA9IDAsIHllYXIgPSAxOTY5OyB5ZWFyID49
IDA7IHllYXItLSApIHsKLSAgICAgICAgdGltZSAtPSBUaW1lSW5ZZWFyKHllYXIpOwotICAgIH0K
ICAgICAvLyBnZXQgdGltZSBmb3IgMjkgZmViIDIwMDAKIAogICAgIHZhciBVVENfRkVCXzI5XzIw
MDAgPSBUSU1FXzIwMDAgKyAzMSptc1BlckRheSArIDI4Km1zUGVySG91cjsKSW5kZXg6IEphdmFT
Y3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4xMC0xMy5qcwo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09ClJDUyBmaWxlOiAvY3ZzL3Jvb3QvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21h
L0RhdGUvMTUuOS41LjEwLTEzLmpzLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjEKZGlmZiAtcCAt
dSAtcjEuMSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTAt
MTMuanMKLS0tIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4x
MC0xMy5qcwkxMyBPY3QgMjAwMyAwMjowNToyOSAtMDAwMAkxLjEKKysrIEphdmFTY3JpcHRDb3Jl
L3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4xMC0xMy5qcwk4IEF1ZyAyMDA1IDAxOjAx
OjAxIC0wMDAwCkBAIC00NiwxMCArNDYsNiBAQAogICAgIC8vIGdldCB0aGUgY3VycmVudCB0aW1l
CiAgICAgdmFyIG5vdyA9IChuZXcgRGF0ZSgpKS52YWx1ZU9mKCk7CiAKLSAgICAvLyBjYWxjdWxh
dGUgdGltZSBmb3IgeWVhciAwCi0gICAgZm9yICggdmFyIHRpbWUgPSAwLCB5ZWFyID0gMTk2OTsg
eWVhciA+PSAwOyB5ZWFyLS0gKSB7Ci0gICAgICAgIHRpbWUgLT0gVGltZUluWWVhcih5ZWFyKTsK
LSAgICB9CiAgICAgLy8gZ2V0IHRpbWUgZm9yIDI5IGZlYiAyMDAwCiAKICAgICB2YXIgVVRDX0ZF
Ql8yOV8yMDAwID0gVElNRV8yMDAwICsgMzEqbXNQZXJEYXkgKyAyOCptc1BlckhvdXI7CkluZGV4
OiBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTAtMi5qcwo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09ClJDUyBmaWxlOiAvY3ZzL3Jvb3QvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxs
YS9lY21hL0RhdGUvMTUuOS41LjEwLTIuanMsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMQpkaWZm
IC1wIC11IC1yMS4xIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1Ljku
NS4xMC0yLmpzCi0tLSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45
LjUuMTAtMi5qcwkxMyBPY3QgMjAwMyAwMjowNToyOSAtMDAwMAkxLjEKKysrIEphdmFTY3JpcHRD
b3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4xMC0yLmpzCTggQXVnIDIwMDUgMDE6
MDE6MDEgLTAwMDAKQEAgLTQ2LDEwICs0Niw2IEBACiAgICAgLy8gZ2V0IHRoZSBjdXJyZW50IHRp
bWUKICAgICB2YXIgbm93ID0gKG5ldyBEYXRlKCkpLnZhbHVlT2YoKTsKIAotICAgIC8vIGNhbGN1
bGF0ZSB0aW1lIGZvciB5ZWFyIDAKLSAgICBmb3IgKCB2YXIgdGltZSA9IDAsIHllYXIgPSAxOTY5
OyB5ZWFyID49IDA7IHllYXItLSApIHsKLSAgICAgICAgdGltZSAtPSBUaW1lSW5ZZWFyKHllYXIp
OwotICAgIH0KICAgICAvLyBnZXQgdGltZSBmb3IgMjkgZmViIDIwMDAKIAogICAgIHZhciBVVENf
RkVCXzI5XzIwMDAgPSBUSU1FXzIwMDAgKyAzMSptc1BlckRheSArIDI4Km1zUGVySG91cjsKQEAg
LTY1LDcgKzYxLDcgQEAKIAogICAgIHZhciBEU1RfRU5EXzE5OTggPSBVVEMoIEdldExhc3RTdW5k
YXlJbk9jdG9iZXIoVGltZUZyb21ZZWFyKDE5OTgpKSArIDIqbXNQZXJIb3VyICk7CiAKLSAgICBh
ZGRUZXN0Q2FzZSggdGltZSApOworICAgIGFkZFRlc3RDYXNlKCBUSU1FX1lFQVJfMCApOwogLyoK
ICAgICBhZGRUZXN0Q2FzZSggVElNRV8xOTcwICk7CiAgICAgYWRkVGVzdENhc2UoIFRJTUVfMTkw
MCApOwpJbmRleDogSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41
LjEwLTMuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9yb290L0phdmFTY3JpcHRDb3JlL3Rl
c3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4xMC0zLmpzLHYKcmV0cmlldmluZyByZXZpc2lv
biAxLjEKZGlmZiAtcCAtdSAtcjEuMSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEv
RGF0ZS8xNS45LjUuMTAtMy5qcwotLS0gSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21h
L0RhdGUvMTUuOS41LjEwLTMuanMJMTMgT2N0IDIwMDMgMDI6MDU6MjkgLTAwMDAJMS4xCisrKyBK
YXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTAtMy5qcwk4IEF1
ZyAyMDA1IDAxOjAxOjAxIC0wMDAwCkBAIC00NiwxMCArNDYsNiBAQAogICAgIC8vIGdldCB0aGUg
Y3VycmVudCB0aW1lCiAgICAgdmFyIG5vdyA9IChuZXcgRGF0ZSgpKS52YWx1ZU9mKCk7CiAKLSAg
ICAvLyBjYWxjdWxhdGUgdGltZSBmb3IgeWVhciAwCi0gICAgZm9yICggdmFyIHRpbWUgPSAwLCB5
ZWFyID0gMTk2OTsgeWVhciA+PSAwOyB5ZWFyLS0gKSB7Ci0gICAgICAgIHRpbWUgLT0gVGltZUlu
WWVhcih5ZWFyKTsKLSAgICB9CiAgICAgLy8gZ2V0IHRpbWUgZm9yIDI5IGZlYiAyMDAwCiAKICAg
ICB2YXIgVVRDX0ZFQl8yOV8yMDAwID0gVElNRV8yMDAwICsgMzEqbXNQZXJEYXkgKyAyOCptc1Bl
ckhvdXI7CkluZGV4OiBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45
LjUuMTAtNC5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3ZzL3Jvb3QvSmF2YVNjcmlwdENvcmUv
dGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjEwLTQuanMsdgpyZXRyaWV2aW5nIHJldmlz
aW9uIDEuMQpkaWZmIC1wIC11IC1yMS4xIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNt
YS9EYXRlLzE1LjkuNS4xMC00LmpzCi0tLSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2Vj
bWEvRGF0ZS8xNS45LjUuMTAtNC5qcwkxMyBPY3QgMjAwMyAwMjowNToyOSAtMDAwMAkxLjEKKysr
IEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4xMC00LmpzCTgg
QXVnIDIwMDUgMDE6MDE6MDEgLTAwMDAKQEAgLTQ2LDEwICs0Niw2IEBACiAgICAgLy8gZ2V0IHRo
ZSBjdXJyZW50IHRpbWUKICAgICB2YXIgbm93ID0gKG5ldyBEYXRlKCkpLnZhbHVlT2YoKTsKIAot
ICAgIC8vIGNhbGN1bGF0ZSB0aW1lIGZvciB5ZWFyIDAKLSAgICBmb3IgKCB2YXIgdGltZSA9IDAs
IHllYXIgPSAxOTY5OyB5ZWFyID49IDA7IHllYXItLSApIHsKLSAgICAgICAgdGltZSAtPSBUaW1l
SW5ZZWFyKHllYXIpOwotICAgIH0KICAgICAvLyBnZXQgdGltZSBmb3IgMjkgZmViIDIwMDAKIAog
ICAgIHZhciBVVENfRkVCXzI5XzIwMDAgPSBUSU1FXzIwMDAgKyAzMSptc1BlckRheSArIDI4Km1z
UGVySG91cjsKSW5kZXg6IEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1
LjkuNS4xMC01LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9jdnMvcm9vdC9KYXZhU2NyaXB0Q29y
ZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTAtNS5qcyx2CnJldHJpZXZpbmcgcmV2
aXNpb24gMS4xCmRpZmYgLXAgLXUgLXIxLjEgSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9l
Y21hL0RhdGUvMTUuOS41LjEwLTUuanMKLS0tIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEv
ZWNtYS9EYXRlLzE1LjkuNS4xMC01LmpzCTEzIE9jdCAyMDAzIDAyOjA1OjI5IC0wMDAwCTEuMQor
KysgSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjEwLTUuanMJ
OCBBdWcgMjAwNSAwMTowMTowMSAtMDAwMApAQCAtNDYsMTAgKzQ2LDYgQEAKICAgICAvLyBnZXQg
dGhlIGN1cnJlbnQgdGltZQogICAgIHZhciBub3cgPSAobmV3IERhdGUoKSkudmFsdWVPZigpOwog
Ci0gICAgLy8gY2FsY3VsYXRlIHRpbWUgZm9yIHllYXIgMAotICAgIGZvciAoIHZhciB0aW1lID0g
MCwgeWVhciA9IDE5Njk7IHllYXIgPj0gMDsgeWVhci0tICkgewotICAgICAgICB0aW1lIC09IFRp
bWVJblllYXIoeWVhcik7Ci0gICAgfQogICAgIC8vIGdldCB0aW1lIGZvciAyOSBmZWIgMjAwMAog
CiAgICAgdmFyIFVUQ19GRUJfMjlfMjAwMCA9IFRJTUVfMjAwMCArIDMxKm1zUGVyRGF5ICsgMjgq
bXNQZXJIb3VyOwpJbmRleDogSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUv
MTUuOS41LjEwLTYuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9yb290L0phdmFTY3JpcHRD
b3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4xMC02LmpzLHYKcmV0cmlldmluZyBy
ZXZpc2lvbiAxLjEKZGlmZiAtcCAtdSAtcjEuMSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxh
L2VjbWEvRGF0ZS8xNS45LjUuMTAtNi5qcwotLS0gSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxs
YS9lY21hL0RhdGUvMTUuOS41LjEwLTYuanMJMTMgT2N0IDIwMDMgMDI6MDU6MjkgLTAwMDAJMS4x
CisrKyBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTAtNi5q
cwk4IEF1ZyAyMDA1IDAxOjAxOjAxIC0wMDAwCkBAIC00NiwxMCArNDYsNiBAQAogICAgIC8vIGdl
dCB0aGUgY3VycmVudCB0aW1lCiAgICAgdmFyIG5vdyA9IChuZXcgRGF0ZSgpKS52YWx1ZU9mKCk7
CiAKLSAgICAvLyBjYWxjdWxhdGUgdGltZSBmb3IgeWVhciAwCi0gICAgZm9yICggdmFyIHRpbWUg
PSAwLCB5ZWFyID0gMTk2OTsgeWVhciA+PSAwOyB5ZWFyLS0gKSB7Ci0gICAgICAgIHRpbWUgLT0g
VGltZUluWWVhcih5ZWFyKTsKLSAgICB9CiAgICAgLy8gZ2V0IHRpbWUgZm9yIDI5IGZlYiAyMDAw
CiAKICAgICB2YXIgVVRDX0ZFQl8yOV8yMDAwID0gVElNRV8yMDAwICsgMzEqbXNQZXJEYXkgKyAy
OCptc1BlckhvdXI7CkluZGV4OiBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0
ZS8xNS45LjUuMTAtNy5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3ZzL3Jvb3QvSmF2YVNjcmlw
dENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjEwLTcuanMsdgpyZXRyaWV2aW5n
IHJldmlzaW9uIDEuMQpkaWZmIC1wIC11IC1yMS4xIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemls
bGEvZWNtYS9EYXRlLzE1LjkuNS4xMC03LmpzCi0tLSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3pp
bGxhL2VjbWEvRGF0ZS8xNS45LjUuMTAtNy5qcwkxMyBPY3QgMjAwMyAwMjowNToyOSAtMDAwMAkx
LjEKKysrIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4xMC03
LmpzCTggQXVnIDIwMDUgMDE6MDE6MDEgLTAwMDAKQEAgLTQ2LDEwICs0Niw2IEBACiAgICAgLy8g
Z2V0IHRoZSBjdXJyZW50IHRpbWUKICAgICB2YXIgbm93ID0gKG5ldyBEYXRlKCkpLnZhbHVlT2Yo
KTsKIAotICAgIC8vIGNhbGN1bGF0ZSB0aW1lIGZvciB5ZWFyIDAKLSAgICBmb3IgKCB2YXIgdGlt
ZSA9IDAsIHllYXIgPSAxOTY5OyB5ZWFyID49IDA7IHllYXItLSApIHsKLSAgICAgICAgdGltZSAt
PSBUaW1lSW5ZZWFyKHllYXIpOwotICAgIH0KICAgICAvLyBnZXQgdGltZSBmb3IgMjkgZmViIDIw
MDAKIAogICAgIHZhciBVVENfRkVCXzI5XzIwMDAgPSBUSU1FXzIwMDAgKyAzMSptc1BlckRheSAr
IDI4Km1zUGVySG91cjsKSW5kZXg6IEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9E
YXRlLzE1LjkuNS4xMC04LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9jdnMvcm9vdC9KYXZhU2Ny
aXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTAtOC5qcyx2CnJldHJpZXZp
bmcgcmV2aXNpb24gMS4xCmRpZmYgLXAgLXUgLXIxLjEgSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96
aWxsYS9lY21hL0RhdGUvMTUuOS41LjEwLTguanMKLS0tIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21v
emlsbGEvZWNtYS9EYXRlLzE1LjkuNS4xMC04LmpzCTEzIE9jdCAyMDAzIDAyOjA1OjI5IC0wMDAw
CTEuMQorKysgSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjEw
LTguanMJOCBBdWcgMjAwNSAwMTowMTowMSAtMDAwMApAQCAtNDYsMTAgKzQ2LDYgQEAKICAgICAv
LyBnZXQgdGhlIGN1cnJlbnQgdGltZQogICAgIHZhciBub3cgPSAobmV3IERhdGUoKSkudmFsdWVP
ZigpOwogCi0gICAgLy8gY2FsY3VsYXRlIHRpbWUgZm9yIHllYXIgMAotICAgIGZvciAoIHZhciB0
aW1lID0gMCwgeWVhciA9IDE5Njk7IHllYXIgPj0gMDsgeWVhci0tICkgewotICAgICAgICB0aW1l
IC09IFRpbWVJblllYXIoeWVhcik7Ci0gICAgfQogICAgIC8vIGdldCB0aW1lIGZvciAyOSBmZWIg
MjAwMAogCiAgICAgdmFyIFVUQ19GRUJfMjlfMjAwMCA9IFRJTUVfMjAwMCArIDMxKm1zUGVyRGF5
ICsgMjgqbXNQZXJIb3VyOwpJbmRleDogSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21h
L0RhdGUvMTUuOS41LjEwLTkuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9yb290L0phdmFT
Y3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4xMC05LmpzLHYKcmV0cmll
dmluZyByZXZpc2lvbiAxLjEKZGlmZiAtcCAtdSAtcjEuMSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9t
b3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTAtOS5qcwotLS0gSmF2YVNjcmlwdENvcmUvdGVzdHMv
bW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjEwLTkuanMJMTMgT2N0IDIwMDMgMDI6MDU6MjkgLTAw
MDAJMS4xCisrKyBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUu
MTAtOS5qcwk4IEF1ZyAyMDA1IDAxOjAxOjAyIC0wMDAwCkBAIC00NiwxMCArNDYsNiBAQAogICAg
IC8vIGdldCB0aGUgY3VycmVudCB0aW1lCiAgICAgdmFyIG5vdyA9IChuZXcgRGF0ZSgpKS52YWx1
ZU9mKCk7CiAKLSAgICAvLyBjYWxjdWxhdGUgdGltZSBmb3IgeWVhciAwCi0gICAgZm9yICggdmFy
IHRpbWUgPSAwLCB5ZWFyID0gMTk2OTsgeWVhciA+PSAwOyB5ZWFyLS0gKSB7Ci0gICAgICAgIHRp
bWUgLT0gVGltZUluWWVhcih5ZWFyKTsKLSAgICB9CiAgICAgLy8gZ2V0IHRpbWUgZm9yIDI5IGZl
YiAyMDAwCiAKICAgICB2YXIgVVRDX0ZFQl8yOV8yMDAwID0gVElNRV8yMDAwICsgMzEqbXNQZXJE
YXkgKyAyOCptc1BlckhvdXI7CkluZGV4OiBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2Vj
bWEvRGF0ZS8xNS45LjUuMTEtMi5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3ZzL3Jvb3QvSmF2
YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjExLTIuanMsdgpyZXRy
aWV2aW5nIHJldmlzaW9uIDEuMQpkaWZmIC1wIC11IC1yMS4xIEphdmFTY3JpcHRDb3JlL3Rlc3Rz
L21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4xMS0yLmpzCi0tLSBKYXZhU2NyaXB0Q29yZS90ZXN0
cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTEtMi5qcwkxMyBPY3QgMjAwMyAwMjowNToyOSAt
MDAwMAkxLjEKKysrIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1Ljku
NS4xMS0yLmpzCTggQXVnIDIwMDUgMDE6MDE6MDMgLTAwMDAKQEAgLTQzLDEyICs0Myw4IEBACiAK
ICAgICB2YXIgVFpfQURKVVNUID0gVFpfRElGRiAqIG1zUGVySG91cjsKIAotICAgIC8vIGNhbGN1
bGF0ZSB0aW1lIGZvciB5ZWFyIDAKLSAgICBmb3IgKCB2YXIgdGltZSA9IDAsIHllYXIgPSAxOTY5
OyB5ZWFyID49IDA7IHllYXItLSApIHsKLSAgICAgICAgdGltZSAtPSBUaW1lSW5ZZWFyKHllYXIp
OwotICAgIH0KIAotICAgIGFkZFRlc3RDYXNlKCB0aW1lICk7CisgICAgYWRkVGVzdENhc2UoIFRJ
TUVfWUVBUl8wICk7CiAKICAgICB0ZXN0KCk7CiBmdW5jdGlvbiBhZGRUZXN0Q2FzZSggdCApIHsK
SW5kZXg6IEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4xMi0x
LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9jdnMvcm9vdC9KYXZhU2NyaXB0Q29yZS90ZXN0cy9t
b3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTItMS5qcyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4x
CmRpZmYgLXAgLXUgLXIxLjEgSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUv
MTUuOS41LjEyLTEuanMKLS0tIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRl
LzE1LjkuNS4xMi0xLmpzCTEzIE9jdCAyMDAzIDAyOjA1OjI5IC0wMDAwCTEuMQorKysgSmF2YVNj
cmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjEyLTEuanMJOCBBdWcgMjAw
NSAwMTowMTowMyAtMDAwMApAQCAtNDcsMTAgKzQ3LDYgQEAKICAgICAvLyBnZXQgdGhlIGN1cnJl
bnQgdGltZQogICAgIHZhciBub3cgPSAobmV3IERhdGUoKSkudmFsdWVPZigpOwogCi0gICAgLy8g
Y2FsY3VsYXRlIHRpbWUgZm9yIHllYXIgMAotICAgIGZvciAoIHZhciB0aW1lID0gMCwgeWVhciA9
IDE5Njk7IHllYXIgPj0gMDsgeWVhci0tICkgewotICAgICAgICB0aW1lIC09IFRpbWVJblllYXIo
eWVhcik7Ci0gICAgfQogICAgIC8vIGdldCB0aW1lIGZvciAyOSBmZWIgMjAwMAogCiAgICAgdmFy
IFVUQ19GRUJfMjlfMjAwMCA9IFRJTUVfMjAwMCArIDMxKm1zUGVyRGF5ICsgMjgqbXNQZXJIb3Vy
OwpAQCAtNjIsNyArNTgsNyBAQAogCiAgICAgYWRkVGVzdENhc2UoIG5vdyApOwogLyoKLSAgICBh
ZGRUZXN0Q2FzZSggdGltZSApOworICAgIGFkZFRlc3RDYXNlKCBUSU1FX1lFQVJfMCApOwogICAg
IGFkZFRlc3RDYXNlKCBUSU1FXzE5NzAgKTsKICAgICBhZGRUZXN0Q2FzZSggVElNRV8xOTAwICk7
CiAgICAgYWRkVGVzdENhc2UoIFRJTUVfMjAwMCApOwpJbmRleDogSmF2YVNjcmlwdENvcmUvdGVz
dHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjEyLTIuanMKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTog
L2N2cy9yb290L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4x
Mi0yLmpzLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjEKZGlmZiAtcCAtdSAtcjEuMSBKYXZhU2Ny
aXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTItMi5qcwotLS0gSmF2YVNj
cmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjEyLTIuanMJMTMgT2N0IDIw
MDMgMDI6MDU6MjkgLTAwMDAJMS4xCisrKyBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2Vj
bWEvRGF0ZS8xNS45LjUuMTItMi5qcwk4IEF1ZyAyMDA1IDAxOjAxOjAzIC0wMDAwCkBAIC00Nywx
MCArNDcsNiBAQAogICAgIC8vIGdldCB0aGUgY3VycmVudCB0aW1lCiAgICAgdmFyIG5vdyA9IChu
ZXcgRGF0ZSgpKS52YWx1ZU9mKCk7CiAKLSAgICAvLyBjYWxjdWxhdGUgdGltZSBmb3IgeWVhciAw
Ci0gICAgZm9yICggdmFyIHRpbWUgPSAwLCB5ZWFyID0gMTk2OTsgeWVhciA+PSAwOyB5ZWFyLS0g
KSB7Ci0gICAgICAgIHRpbWUgLT0gVGltZUluWWVhcih5ZWFyKTsKLSAgICB9CiAgICAgLy8gZ2V0
IHRpbWUgZm9yIDI5IGZlYiAyMDAwCiAKICAgICB2YXIgVVRDX0ZFQl8yOV8yMDAwID0gVElNRV8y
MDAwICsgMzEqbXNQZXJEYXkgKyAyOCptc1BlckhvdXI7CkBAIC02MCw3ICs1Niw3IEBACiAgICAg
dmFyIFVUQ19KQU5fMV8yMDA1ID0gVElNRV8yMDAwICsgVGltZUluWWVhcigyMDAwKStUaW1lSW5Z
ZWFyKDIwMDEpKwogICAgIFRpbWVJblllYXIoMjAwMikrVGltZUluWWVhcigyMDAzKStUaW1lSW5Z
ZWFyKDIwMDQpOwogCi0gICAgYWRkVGVzdENhc2UoIHRpbWUgKTsKKyAgICBhZGRUZXN0Q2FzZSgg
VElNRV9ZRUFSXzAgKTsKIC8qCiAgICAgYWRkVGVzdENhc2UoIFRJTUVfMTk3MCApOwogICAgIGFk
ZFRlc3RDYXNlKCBUSU1FXzE5MDAgKTsKSW5kZXg6IEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemls
bGEvZWNtYS9EYXRlLzE1LjkuNS4xMi0zLmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9jdnMvcm9v
dC9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTItMy5qcyx2
CnJldHJpZXZpbmcgcmV2aXNpb24gMS4xCmRpZmYgLXAgLXUgLXIxLjEgSmF2YVNjcmlwdENvcmUv
dGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjEyLTMuanMKLS0tIEphdmFTY3JpcHRDb3Jl
L3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4xMi0zLmpzCTEzIE9jdCAyMDAzIDAyOjA1
OjI5IC0wMDAwCTEuMQorKysgSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUv
MTUuOS41LjEyLTMuanMJOCBBdWcgMjAwNSAwMTowMTowMyAtMDAwMApAQCAtNDcsMTAgKzQ3LDYg
QEAKICAgICAvLyBnZXQgdGhlIGN1cnJlbnQgdGltZQogICAgIHZhciBub3cgPSAobmV3IERhdGUo
KSkudmFsdWVPZigpOwogCi0gICAgLy8gY2FsY3VsYXRlIHRpbWUgZm9yIHllYXIgMAotICAgIGZv
ciAoIHZhciB0aW1lID0gMCwgeWVhciA9IDE5Njk7IHllYXIgPj0gMDsgeWVhci0tICkgewotICAg
ICAgICB0aW1lIC09IFRpbWVJblllYXIoeWVhcik7Ci0gICAgfQogICAgIC8vIGdldCB0aW1lIGZv
ciAyOSBmZWIgMjAwMAogCiAgICAgdmFyIFVUQ19GRUJfMjlfMjAwMCA9IFRJTUVfMjAwMCArIDMx
Km1zUGVyRGF5ICsgMjgqbXNQZXJIb3VyOwpJbmRleDogSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96
aWxsYS9lY21hL0RhdGUvMTUuOS41LjEyLTQuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9y
b290L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4xMi00Lmpz
LHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjEKZGlmZiAtcCAtdSAtcjEuMSBKYXZhU2NyaXB0Q29y
ZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTItNC5qcwotLS0gSmF2YVNjcmlwdENv
cmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjEyLTQuanMJMTMgT2N0IDIwMDMgMDI6
MDU6MjkgLTAwMDAJMS4xCisrKyBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0
ZS8xNS45LjUuMTItNC5qcwk4IEF1ZyAyMDA1IDAxOjAxOjAzIC0wMDAwCkBAIC00NywxMCArNDcs
NiBAQAogICAgIC8vIGdldCB0aGUgY3VycmVudCB0aW1lCiAgICAgdmFyIG5vdyA9IChuZXcgRGF0
ZSgpKS52YWx1ZU9mKCk7CiAKLSAgICAvLyBjYWxjdWxhdGUgdGltZSBmb3IgeWVhciAwCi0gICAg
Zm9yICggdmFyIHRpbWUgPSAwLCB5ZWFyID0gMTk2OTsgeWVhciA+PSAwOyB5ZWFyLS0gKSB7Ci0g
ICAgICAgIHRpbWUgLT0gVGltZUluWWVhcih5ZWFyKTsKLSAgICB9CiAgICAgLy8gZ2V0IHRpbWUg
Zm9yIDI5IGZlYiAyMDAwCiAKICAgICB2YXIgVVRDX0ZFQl8yOV8yMDAwID0gVElNRV8yMDAwICsg
MzEqbXNQZXJEYXkgKyAyOCptc1BlckhvdXI7CkluZGV4OiBKYXZhU2NyaXB0Q29yZS90ZXN0cy9t
b3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTItNS5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3Zz
L3Jvb3QvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjEyLTUu
anMsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMQpkaWZmIC1wIC11IC1yMS4xIEphdmFTY3JpcHRD
b3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4xMi01LmpzCi0tLSBKYXZhU2NyaXB0
Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTItNS5qcwkxMyBPY3QgMjAwMyAw
MjowNToyOSAtMDAwMAkxLjEKKysrIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9E
YXRlLzE1LjkuNS4xMi01LmpzCTggQXVnIDIwMDUgMDE6MDE6MDMgLTAwMDAKQEAgLTQ3LDEwICs0
Nyw2IEBACiAgICAgLy8gZ2V0IHRoZSBjdXJyZW50IHRpbWUKICAgICB2YXIgbm93ID0gKG5ldyBE
YXRlKCkpLnZhbHVlT2YoKTsKIAotICAgIC8vIGNhbGN1bGF0ZSB0aW1lIGZvciB5ZWFyIDAKLSAg
ICBmb3IgKCB2YXIgdGltZSA9IDAsIHllYXIgPSAxOTY5OyB5ZWFyID49IDA7IHllYXItLSApIHsK
LSAgICAgICAgdGltZSAtPSBUaW1lSW5ZZWFyKHllYXIpOwotICAgIH0KICAgICAvLyBnZXQgdGlt
ZSBmb3IgMjkgZmViIDIwMDAKIAogICAgIHZhciBVVENfRkVCXzI5XzIwMDAgPSBUSU1FXzIwMDAg
KyAzMSptc1BlckRheSArIDI4Km1zUGVySG91cjsKSW5kZXg6IEphdmFTY3JpcHRDb3JlL3Rlc3Rz
L21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4xMi02LmpzCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9j
dnMvcm9vdC9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTIt
Ni5qcyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4xCmRpZmYgLXAgLXUgLXIxLjEgSmF2YVNjcmlw
dENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjEyLTYuanMKLS0tIEphdmFTY3Jp
cHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4xMi02LmpzCTEzIE9jdCAyMDAz
IDAyOjA1OjI5IC0wMDAwCTEuMQorKysgSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21h
L0RhdGUvMTUuOS41LjEyLTYuanMJOCBBdWcgMjAwNSAwMTowMTowMyAtMDAwMApAQCAtNDcsMTAg
KzQ3LDYgQEAKICAgICAvLyBnZXQgdGhlIGN1cnJlbnQgdGltZQogICAgIHZhciBub3cgPSAobmV3
IERhdGUoKSkudmFsdWVPZigpOwogCi0gICAgLy8gY2FsY3VsYXRlIHRpbWUgZm9yIHllYXIgMAot
ICAgIGZvciAoIHZhciB0aW1lID0gMCwgeWVhciA9IDE5Njk7IHllYXIgPj0gMDsgeWVhci0tICkg
ewotICAgICAgICB0aW1lIC09IFRpbWVJblllYXIoeWVhcik7Ci0gICAgfQogICAgIC8vIGdldCB0
aW1lIGZvciAyOSBmZWIgMjAwMAogCiAgICAgdmFyIFVUQ19GRUJfMjlfMjAwMCA9IFRJTUVfMjAw
MCArIDMxKm1zUGVyRGF5ICsgMjgqbXNQZXJIb3VyOwpJbmRleDogSmF2YVNjcmlwdENvcmUvdGVz
dHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjEyLTcuanMKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTog
L2N2cy9yb290L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4x
Mi03LmpzLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjEKZGlmZiAtcCAtdSAtcjEuMSBKYXZhU2Ny
aXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTItNy5qcwotLS0gSmF2YVNj
cmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjEyLTcuanMJMTMgT2N0IDIw
MDMgMDI6MDU6MjkgLTAwMDAJMS4xCisrKyBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2Vj
bWEvRGF0ZS8xNS45LjUuMTItNy5qcwk4IEF1ZyAyMDA1IDAxOjAxOjAzIC0wMDAwCkBAIC00Nywx
MCArNDcsNiBAQAogICAgIC8vIGdldCB0aGUgY3VycmVudCB0aW1lCiAgICAgdmFyIG5vdyA9IChu
ZXcgRGF0ZSgpKS52YWx1ZU9mKCk7CiAKLSAgICAvLyBjYWxjdWxhdGUgdGltZSBmb3IgeWVhciAw
Ci0gICAgZm9yICggdmFyIHRpbWUgPSAwLCB5ZWFyID0gMTk2OTsgeWVhciA+PSAwOyB5ZWFyLS0g
KSB7Ci0gICAgICAgIHRpbWUgLT0gVGltZUluWWVhcih5ZWFyKTsKLSAgICB9CiAgICAgLy8gZ2V0
IHRpbWUgZm9yIDI5IGZlYiAyMDAwCiAKICAgICB2YXIgVVRDX0ZFQl8yOV8yMDAwID0gVElNRV8y
MDAwICsgMzEqbXNQZXJEYXkgKyAyOCptc1BlckhvdXI7CkluZGV4OiBKYXZhU2NyaXB0Q29yZS90
ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTItOC5qcwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxl
OiAvY3ZzL3Jvb3QvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41
LjEyLTguanMsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMQpkaWZmIC1wIC11IC1yMS4xIEphdmFT
Y3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4xMi04LmpzCi0tLSBKYXZh
U2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTItOC5qcwkxMyBPY3Qg
MjAwMyAwMjowNToyOSAtMDAwMAkxLjEKKysrIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEv
ZWNtYS9EYXRlLzE1LjkuNS4xMi04LmpzCTggQXVnIDIwMDUgMDE6MDE6MDMgLTAwMDAKQEAgLTQ3
LDEwICs0Nyw2IEBACiAgICAgLy8gZ2V0IHRoZSBjdXJyZW50IHRpbWUKICAgICB2YXIgbm93ID0g
KG5ldyBEYXRlKCkpLnZhbHVlT2YoKTsKIAotICAgIC8vIGNhbGN1bGF0ZSB0aW1lIGZvciB5ZWFy
IDAKLSAgICBmb3IgKCB2YXIgdGltZSA9IDAsIHllYXIgPSAxOTY5OyB5ZWFyID49IDA7IHllYXIt
LSApIHsKLSAgICAgICAgdGltZSAtPSBUaW1lSW5ZZWFyKHllYXIpOwotICAgIH0KICAgICAvLyBn
ZXQgdGltZSBmb3IgMjkgZmViIDIwMDAKIAogICAgIHZhciBVVENfRkVCXzI5XzIwMDAgPSBUSU1F
XzIwMDAgKyAzMSptc1BlckRheSArIDI4Km1zUGVySG91cjsKSW5kZXg6IEphdmFTY3JpcHRDb3Jl
L3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4xMy0yLmpzCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZp
bGU6IC9jdnMvcm9vdC9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45
LjUuMTMtMi5qcyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4xCmRpZmYgLXAgLXUgLXIxLjEgSmF2
YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjEzLTIuanMKLS0tIEph
dmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4xMy0yLmpzCTEzIE9j
dCAyMDAzIDAyOjA1OjI5IC0wMDAwCTEuMQorKysgSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxs
YS9lY21hL0RhdGUvMTUuOS41LjEzLTIuanMJOCBBdWcgMjAwNSAwMTowMTowNCAtMDAwMApAQCAt
NDMsMTIgKzQzLDggQEAKIAogICAgIHZhciBUWl9BREpVU1QgPSBUWl9ESUZGICogbXNQZXJIb3Vy
OwogCi0gICAgLy8gY2FsY3VsYXRlIHRpbWUgZm9yIHllYXIgMAotICAgIGZvciAoIHZhciB0aW1l
ID0gMCwgeWVhciA9IDE5Njk7IHllYXIgPj0gMDsgeWVhci0tICkgewotICAgICAgICB0aW1lIC09
IFRpbWVJblllYXIoeWVhcik7Ci0gICAgfQogCi0gICAgYWRkVGVzdENhc2UoIHRpbWUgKTsKKyAg
ICBhZGRUZXN0Q2FzZSggVElNRV9ZRUFSXzAgKTsKICAgICB0ZXN0KCk7CiBmdW5jdGlvbiBhZGRU
ZXN0Q2FzZSggdCApIHsKICAgICBmb3IgKCB2YXIgbSA9IDA7IG0gPCAxMjsgbSsrICkgewpJbmRl
eDogSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjEzLTguanMK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9yb290L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vemls
bGEvZWNtYS9EYXRlLzE1LjkuNS4xMy04LmpzLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjEKZGlm
ZiAtcCAtdSAtcjEuMSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45
LjUuMTMtOC5qcwotLS0gSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUu
OS41LjEzLTguanMJMTMgT2N0IDIwMDMgMDI6MDU6MjkgLTAwMDAJMS4xCisrKyBKYXZhU2NyaXB0
Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTMtOC5qcwk4IEF1ZyAyMDA1IDAx
OjAxOjA0IC0wMDAwCkBAIC00NiwxMCArNDYsNiBAQAogICAgIC8vIGdldCB0aGUgY3VycmVudCB0
aW1lCiAgICAgdmFyIG5vdyA9IChuZXcgRGF0ZSgpKS52YWx1ZU9mKCk7CiAKLSAgICAvLyBjYWxj
dWxhdGUgdGltZSBmb3IgeWVhciAwCi0gICAgZm9yICggdmFyIHRpbWUgPSAwLCB5ZWFyID0gMTk2
OTsgeWVhciA+PSAwOyB5ZWFyLS0gKSB7Ci0gICAgICAgIHRpbWUgLT0gVGltZUluWWVhcih5ZWFy
KTsKLSAgICB9CiAgICAgLy8gZ2V0IHRpbWUgZm9yIDI5IGZlYiAyMDAwCiAKICAgICB2YXIgVVRD
X0ZFQl8yOV8yMDAwID0gVElNRV8yMDAwICsgMzEqbXNQZXJEYXkgKyAyOCptc1BlckhvdXI7Cklu
ZGV4OiBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTQuanMK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9yb290L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vemls
bGEvZWNtYS9EYXRlLzE1LjkuNS4xNC5qcyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4xCmRpZmYg
LXAgLXUgLXIxLjEgSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41
LjE0LmpzCi0tLSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUu
MTQuanMJMTMgT2N0IDIwMDMgMDI6MDU6MjkgLTAwMDAJMS4xCisrKyBKYXZhU2NyaXB0Q29yZS90
ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTQuanMJOCBBdWcgMjAwNSAwMTowMTowNCAt
MDAwMApAQCAtNDUsMTAgKzQ1LDYgQEAKICAgICAvLyBnZXQgdGhlIGN1cnJlbnQgdGltZQogICAg
IHZhciBub3cgPSAobmV3IERhdGUoKSkudmFsdWVPZigpOwogCi0gICAgLy8gY2FsY3VsYXRlIHRp
bWUgZm9yIHllYXIgMAotICAgIGZvciAoIHZhciB0aW1lID0gMCwgeWVhciA9IDE5Njk7IHllYXIg
Pj0gMDsgeWVhci0tICkgewotICAgICAgICB0aW1lIC09IFRpbWVJblllYXIoeWVhcik7Ci0gICAg
fQogICAgIC8vIGdldCB0aW1lIGZvciAyOSBmZWIgMjAwMAogCiAgICAgdmFyIFVUQ19GRUJfMjlf
MjAwMCA9IFRJTUVfMjAwMCArIDMxKm1zUGVyRGF5ICsgMjgqbXNQZXJIb3VyOwpAQCAtNTksNyAr
NTUsNyBAQAogICAgIFRpbWVJblllYXIoMjAwMikrVGltZUluWWVhcigyMDAzKStUaW1lSW5ZZWFy
KDIwMDQpOwogCiAgICAgYWRkVGVzdENhc2UoIG5vdyApOwotICAgIGFkZFRlc3RDYXNlKCB0aW1l
ICk7CisgICAgYWRkVGVzdENhc2UoIFRJTUVfWUVBUl8wICk7CiAgICAgYWRkVGVzdENhc2UoIFRJ
TUVfMTk3MCApOwogICAgIGFkZFRlc3RDYXNlKCBUSU1FXzE5MDAgKTsKICAgICBhZGRUZXN0Q2Fz
ZSggVElNRV8yMDAwICk7CkluZGV4OiBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEv
RGF0ZS8xNS45LjUuMTUuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9yb290L0phdmFTY3Jp
cHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4xNS5qcyx2CnJldHJpZXZpbmcg
cmV2aXNpb24gMS4xCmRpZmYgLXAgLXUgLXIxLjEgSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxs
YS9lY21hL0RhdGUvMTUuOS41LjE1LmpzCi0tLSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxh
L2VjbWEvRGF0ZS8xNS45LjUuMTUuanMJMTMgT2N0IDIwMDMgMDI6MDU6MjkgLTAwMDAJMS4xCisr
KyBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTUuanMJOCBB
dWcgMjAwNSAwMTowMTowNCAtMDAwMApAQCAtNDYsMTAgKzQ2LDYgQEAKICAgICAvLyBnZXQgdGhl
IGN1cnJlbnQgdGltZQogICAgIHZhciBub3cgPSAobmV3IERhdGUoKSkudmFsdWVPZigpOwogCi0g
ICAgLy8gY2FsY3VsYXRlIHRpbWUgZm9yIHllYXIgMAotICAgIGZvciAoIHZhciB0aW1lID0gMCwg
eWVhciA9IDE5Njk7IHllYXIgPj0gMDsgeWVhci0tICkgewotICAgICAgICB0aW1lIC09IFRpbWVJ
blllYXIoeWVhcik7Ci0gICAgfQogICAgIC8vIGdldCB0aW1lIGZvciAyOSBmZWIgMjAwMAogCiAg
ICAgdmFyIFVUQ19GRUJfMjlfMjAwMCA9IFRJTUVfMjAwMCArIDMxKm1zUGVyRGF5ICsgMjgqbXNQ
ZXJIb3VyOwpAQCAtNjAsNyArNTYsNyBAQAogICAgIFRpbWVJblllYXIoMjAwMikrVGltZUluWWVh
cigyMDAzKStUaW1lSW5ZZWFyKDIwMDQpOwogCiAgICAgYWRkVGVzdENhc2UoIG5vdyApOwotICAg
IGFkZFRlc3RDYXNlKCB0aW1lICk7CisgICAgYWRkVGVzdENhc2UoIFRJTUVfWUVBUl8wICk7CiAg
ICAgYWRkVGVzdENhc2UoIFRJTUVfMTk3MCApOwogICAgIGFkZFRlc3RDYXNlKCBUSU1FXzE5MDAg
KTsKICAgICBhZGRUZXN0Q2FzZSggVElNRV8yMDAwICk7CkluZGV4OiBKYXZhU2NyaXB0Q29yZS90
ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTYuanMKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTog
L2N2cy9yb290L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4x
Ni5qcyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4xCmRpZmYgLXAgLXUgLXIxLjEgSmF2YVNjcmlw
dENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjE2LmpzCi0tLSBKYXZhU2NyaXB0
Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTYuanMJMTMgT2N0IDIwMDMgMDI6
MDU6MjkgLTAwMDAJMS4xCisrKyBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0
ZS8xNS45LjUuMTYuanMJOCBBdWcgMjAwNSAwMTowMTowNCAtMDAwMApAQCAtNDUsMTAgKzQ1LDYg
QEAKICAgICAvLyBnZXQgdGhlIGN1cnJlbnQgdGltZQogICAgIHZhciBub3cgPSAobmV3IERhdGUo
KSkudmFsdWVPZigpOwogCi0gICAgLy8gY2FsY3VsYXRlIHRpbWUgZm9yIHllYXIgMAotICAgIGZv
ciAoIHZhciB0aW1lID0gMCwgeWVhciA9IDE5Njk7IHllYXIgPj0gMDsgeWVhci0tICkgewotICAg
ICAgICB0aW1lIC09IFRpbWVJblllYXIoeWVhcik7Ci0gICAgfQogICAgIC8vIGdldCB0aW1lIGZv
ciAyOSBmZWIgMjAwMAogCiAgICAgdmFyIFVUQ19GRUJfMjlfMjAwMCA9IFRJTUVfMjAwMCArIDMx
Km1zUGVyRGF5ICsgMjgqbXNQZXJIb3VyOwpAQCAtNTksNyArNTUsNyBAQAogICAgIFRpbWVJblll
YXIoMjAwMikrVGltZUluWWVhcigyMDAzKStUaW1lSW5ZZWFyKDIwMDQpOwogCiAgICAgYWRkVGVz
dENhc2UoIG5vdyApOwotICAgIGFkZFRlc3RDYXNlKCB0aW1lICk7CisgICAgYWRkVGVzdENhc2Uo
IFRJTUVfWUVBUl8wICk7CiAgICAgYWRkVGVzdENhc2UoIFRJTUVfMTk3MCApOwogICAgIGFkZFRl
c3RDYXNlKCBUSU1FXzE5MDAgKTsKICAgICBhZGRUZXN0Q2FzZSggVElNRV8yMDAwICk7CkluZGV4
OiBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTcuanMKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQpSQ1MgZmlsZTogL2N2cy9yb290L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEv
ZWNtYS9EYXRlLzE1LjkuNS4xNy5qcyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4xCmRpZmYgLXAg
LXUgLXIxLjEgSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjE3
LmpzCi0tLSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTcu
anMJMTMgT2N0IDIwMDMgMDI6MDU6MjkgLTAwMDAJMS4xCisrKyBKYXZhU2NyaXB0Q29yZS90ZXN0
cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTcuanMJOCBBdWcgMjAwNSAwMTowMTowNCAtMDAw
MApAQCAtNDYsMTAgKzQ2LDYgQEAKICAgICAvLyBnZXQgdGhlIGN1cnJlbnQgdGltZQogICAgIHZh
ciBub3cgPSAobmV3IERhdGUoKSkudmFsdWVPZigpOwogCi0gICAgLy8gY2FsY3VsYXRlIHRpbWUg
Zm9yIHllYXIgMAotICAgIGZvciAoIHZhciB0aW1lID0gMCwgeWVhciA9IDE5Njk7IHllYXIgPj0g
MDsgeWVhci0tICkgewotICAgICAgICB0aW1lIC09IFRpbWVJblllYXIoeWVhcik7Ci0gICAgfQog
ICAgIC8vIGdldCB0aW1lIGZvciAyOSBmZWIgMjAwMAogCiAgICAgdmFyIFVUQ19GRUJfMjlfMjAw
MCA9IFRJTUVfMjAwMCArIDMxKm1zUGVyRGF5ICsgMjgqbXNQZXJIb3VyOwpAQCAtNjAsNyArNTYs
NyBAQAogICAgIFRpbWVJblllYXIoMjAwMikrVGltZUluWWVhcigyMDAzKStUaW1lSW5ZZWFyKDIw
MDQpOwogCiAgICAgYWRkVGVzdENhc2UoIG5vdyApOwotICAgIGFkZFRlc3RDYXNlKCB0aW1lICk7
CisgICAgYWRkVGVzdENhc2UoIFRJTUVfWUVBUl8wICk7CiAgICAgYWRkVGVzdENhc2UoIFRJTUVf
MTk3MCApOwogICAgIGFkZFRlc3RDYXNlKCBUSU1FXzE5MDAgKTsKICAgICBhZGRUZXN0Q2FzZSgg
VElNRV8yMDAwICk7CkluZGV4OiBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0
ZS8xNS45LjUuMTguanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9yb290L0phdmFTY3JpcHRD
b3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4xOC5qcyx2CnJldHJpZXZpbmcgcmV2
aXNpb24gMS4xCmRpZmYgLXAgLXUgLXIxLjEgSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9l
Y21hL0RhdGUvMTUuOS41LjE4LmpzCi0tLSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2Vj
bWEvRGF0ZS8xNS45LjUuMTguanMJMTMgT2N0IDIwMDMgMDI6MDU6MjkgLTAwMDAJMS4xCisrKyBK
YXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTguanMJOCBBdWcg
MjAwNSAwMTowMTowNCAtMDAwMApAQCAtNDYsMTAgKzQ2LDYgQEAKICAgICAvLyBnZXQgdGhlIGN1
cnJlbnQgdGltZQogICAgIHZhciBub3cgPSAobmV3IERhdGUoKSkudmFsdWVPZigpOwogCi0gICAg
Ly8gY2FsY3VsYXRlIHRpbWUgZm9yIHllYXIgMAotICAgIGZvciAoIHZhciB0aW1lID0gMCwgeWVh
ciA9IDE5Njk7IHllYXIgPj0gMDsgeWVhci0tICkgewotICAgICAgICB0aW1lIC09IFRpbWVJblll
YXIoeWVhcik7Ci0gICAgfQogICAgIC8vIGdldCB0aW1lIGZvciAyOSBmZWIgMjAwMAogCiAgICAg
dmFyIFVUQ19GRUJfMjlfMjAwMCA9IFRJTUVfMjAwMCArIDMxKm1zUGVyRGF5ICsgMjgqbXNQZXJI
b3VyOwpAQCAtNjAsNyArNTYsNyBAQAogICAgIFRpbWVJblllYXIoMjAwMikrVGltZUluWWVhcigy
MDAzKStUaW1lSW5ZZWFyKDIwMDQpOwogCiAgICAgYWRkVGVzdENhc2UoIG5vdyApOwotICAgIGFk
ZFRlc3RDYXNlKCB0aW1lICk7CisgICAgYWRkVGVzdENhc2UoIFRJTUVfWUVBUl8wICk7CiAgICAg
YWRkVGVzdENhc2UoIFRJTUVfMTk3MCApOwogICAgIGFkZFRlc3RDYXNlKCBUSU1FXzE5MDAgKTsK
ICAgICBhZGRUZXN0Q2FzZSggVElNRV8yMDAwICk7CkluZGV4OiBKYXZhU2NyaXB0Q29yZS90ZXN0
cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTkuanMKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2
cy9yb290L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4xOS5q
cyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4xCmRpZmYgLXAgLXUgLXIxLjEgSmF2YVNjcmlwdENv
cmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjE5LmpzCi0tLSBKYXZhU2NyaXB0Q29y
ZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMTkuanMJMTMgT2N0IDIwMDMgMDI6MDU6
MjkgLTAwMDAJMS4xCisrKyBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8x
NS45LjUuMTkuanMJOCBBdWcgMjAwNSAwMTowMTowNCAtMDAwMApAQCAtNDYsMTAgKzQ2LDYgQEAK
ICAgICAvLyBnZXQgdGhlIGN1cnJlbnQgdGltZQogICAgIHZhciBub3cgPSAobmV3IERhdGUoKSku
dmFsdWVPZigpOwogCi0gICAgLy8gY2FsY3VsYXRlIHRpbWUgZm9yIHllYXIgMAotICAgIGZvciAo
IHZhciB0aW1lID0gMCwgeWVhciA9IDE5Njk7IHllYXIgPj0gMDsgeWVhci0tICkgewotICAgICAg
ICB0aW1lIC09IFRpbWVJblllYXIoeWVhcik7Ci0gICAgfQogICAgIC8vIGdldCB0aW1lIGZvciAy
OSBmZWIgMjAwMAogCiAgICAgdmFyIFVUQ19GRUJfMjlfMjAwMCA9IFRJTUVfMjAwMCArIDMxKm1z
UGVyRGF5ICsgMjgqbXNQZXJIb3VyOwpAQCAtNjAsNyArNTYsNyBAQAogICAgIFRpbWVJblllYXIo
MjAwMikrVGltZUluWWVhcigyMDAzKStUaW1lSW5ZZWFyKDIwMDQpOwogCiAgICAgYWRkVGVzdENh
c2UoIG5vdyApOwotICAgIGFkZFRlc3RDYXNlKCB0aW1lICk7CisgICAgYWRkVGVzdENhc2UoIFRJ
TUVfWUVBUl8wICk7CiAgICAgYWRkVGVzdENhc2UoIFRJTUVfMTk3MCApOwogICAgIGFkZFRlc3RD
YXNlKCBUSU1FXzE5MDAgKTsKICAgICBhZGRUZXN0Q2FzZSggVElNRV8yMDAwICk7CkluZGV4OiBK
YXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMjAuanMKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQpSQ1MgZmlsZTogL2N2cy9yb290L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNt
YS9EYXRlLzE1LjkuNS4yMC5qcyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4xCmRpZmYgLXAgLXUg
LXIxLjEgSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjIwLmpz
Ci0tLSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMjAuanMJ
MTMgT2N0IDIwMDMgMDI6MDU6MjkgLTAwMDAJMS4xCisrKyBKYXZhU2NyaXB0Q29yZS90ZXN0cy9t
b3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMjAuanMJOCBBdWcgMjAwNSAwMTowMTowNCAtMDAwMApA
QCAtNDYsMTAgKzQ2LDYgQEAKICAgICAvLyBnZXQgdGhlIGN1cnJlbnQgdGltZQogICAgIHZhciBu
b3cgPSAobmV3IERhdGUoKSkudmFsdWVPZigpOwogCi0gICAgLy8gY2FsY3VsYXRlIHRpbWUgZm9y
IHllYXIgMAotICAgIGZvciAoIHZhciB0aW1lID0gMCwgeWVhciA9IDE5Njk7IHllYXIgPj0gMDsg
eWVhci0tICkgewotICAgICAgICB0aW1lIC09IFRpbWVJblllYXIoeWVhcik7Ci0gICAgfQogICAg
IC8vIGdldCB0aW1lIGZvciAyOSBmZWIgMjAwMAogCiAgICAgdmFyIFVUQ19GRUJfMjlfMjAwMCA9
IFRJTUVfMjAwMCArIDMxKm1zUGVyRGF5ICsgMjgqbXNQZXJIb3VyOwpAQCAtNjAsNyArNTYsNyBA
QAogICAgIFRpbWVJblllYXIoMjAwMikrVGltZUluWWVhcigyMDAzKStUaW1lSW5ZZWFyKDIwMDQp
OwogCiAgICAgYWRkVGVzdENhc2UoIG5vdyApOwotICAgIGFkZFRlc3RDYXNlKCB0aW1lICk7Cisg
ICAgYWRkVGVzdENhc2UoIFRJTUVfWUVBUl8wICk7CiAgICAgYWRkVGVzdENhc2UoIFRJTUVfMTk3
MCApOwogICAgIGFkZFRlc3RDYXNlKCBUSU1FXzE5MDAgKTsKICAgICBhZGRUZXN0Q2FzZSggVElN
RV8yMDAwICk7CkluZGV4OiBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8x
NS45LjUuMjEtMS5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3ZzL3Jvb3QvSmF2YVNjcmlwdENv
cmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjIxLTEuanMsdgpyZXRyaWV2aW5nIHJl
dmlzaW9uIDEuMQpkaWZmIC1wIC11IC1yMS4xIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEv
ZWNtYS9EYXRlLzE1LjkuNS4yMS0xLmpzCi0tLSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxh
L2VjbWEvRGF0ZS8xNS45LjUuMjEtMS5qcwkxMyBPY3QgMjAwMyAwMjowNToyOSAtMDAwMAkxLjEK
KysrIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4yMS0xLmpz
CTggQXVnIDIwMDUgMDE6MDE6MDQgLTAwMDAKQEAgLTQ2LDEwICs0Niw2IEBACiAgICAgLy8gZ2V0
IHRoZSBjdXJyZW50IHRpbWUKICAgICB2YXIgbm93ID0gKG5ldyBEYXRlKCkpLnZhbHVlT2YoKTsK
IAotICAgIC8vIGNhbGN1bGF0ZSB0aW1lIGZvciB5ZWFyIDAKLSAgICBmb3IgKCB2YXIgdGltZSA9
IDAsIHllYXIgPSAxOTY5OyB5ZWFyID49IDA7IHllYXItLSApIHsKLSAgICAgICAgdGltZSAtPSBU
aW1lSW5ZZWFyKHllYXIpOwotICAgIH0KICAgICAvLyBnZXQgdGltZSBmb3IgMjkgZmViIDIwMDAK
IAogICAgIHZhciBVVENfRkVCXzI5XzIwMDAgPSBUSU1FXzIwMDAgKyAzMSptc1BlckRheSArIDI4
Km1zUGVySG91cjsKQEAgLTYxLDcgKzU3LDcgQEAKIAogICAgIGFkZFRlc3RDYXNlKCBub3cgKTsK
IC8qCi0gICAgYWRkVGVzdENhc2UoIHRpbWUgKTsKKyAgICBhZGRUZXN0Q2FzZSggVElNRV9ZRUFS
XzAgKTsKIAogICAgIGFkZFRlc3RDYXNlKCBUSU1FXzE5NzAgKTsKICAgICBhZGRUZXN0Q2FzZSgg
VElNRV8xOTAwICk7CkluZGV4OiBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0
ZS8xNS45LjUuMjEtMi5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3ZzL3Jvb3QvSmF2YVNjcmlw
dENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjIxLTIuanMsdgpyZXRyaWV2aW5n
IHJldmlzaW9uIDEuMQpkaWZmIC1wIC11IC1yMS4xIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemls
bGEvZWNtYS9EYXRlLzE1LjkuNS4yMS0yLmpzCi0tLSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3pp
bGxhL2VjbWEvRGF0ZS8xNS45LjUuMjEtMi5qcwkxMyBPY3QgMjAwMyAwMjowNToyOSAtMDAwMAkx
LjEKKysrIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4yMS0y
LmpzCTggQXVnIDIwMDUgMDE6MDE6MDQgLTAwMDAKQEAgLTQ2LDEwICs0Niw2IEBACiAgICAgLy8g
Z2V0IHRoZSBjdXJyZW50IHRpbWUKICAgICB2YXIgbm93ID0gKG5ldyBEYXRlKCkpLnZhbHVlT2Yo
KTsKIAotICAgIC8vIGNhbGN1bGF0ZSB0aW1lIGZvciB5ZWFyIDAKLSAgICBmb3IgKCB2YXIgdGlt
ZSA9IDAsIHllYXIgPSAxOTY5OyB5ZWFyID49IDA7IHllYXItLSApIHsKLSAgICAgICAgdGltZSAt
PSBUaW1lSW5ZZWFyKHllYXIpOwotICAgIH0KICAgICAvLyBnZXQgdGltZSBmb3IgMjkgZmViIDIw
MDAKIAogICAgIHZhciBVVENfRkVCXzI5XzIwMDAgPSBUSU1FXzIwMDAgKyAzMSptc1BlckRheSAr
IDI4Km1zUGVySG91cjsKQEAgLTU5LDcgKzU1LDcgQEAKICAgICB2YXIgVVRDX0pBTl8xXzIwMDUg
PSBUSU1FXzIwMDAgKyBUaW1lSW5ZZWFyKDIwMDApK1RpbWVJblllYXIoMjAwMSkrCiAgICAgVGlt
ZUluWWVhcigyMDAyKStUaW1lSW5ZZWFyKDIwMDMpK1RpbWVJblllYXIoMjAwNCk7CiAKLSAgICBh
ZGRUZXN0Q2FzZSggdGltZSApOworICAgIGFkZFRlc3RDYXNlKCBUSU1FX1lFQVJfMCApOwogLyoK
ICAgICBhZGRUZXN0Q2FzZSggVElNRV8xOTcwICk7CiAgICAgYWRkVGVzdENhc2UoIFRJTUVfMTkw
MCApOwpJbmRleDogSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41
LjIxLTMuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9yb290L0phdmFTY3JpcHRDb3JlL3Rl
c3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4yMS0zLmpzLHYKcmV0cmlldmluZyByZXZpc2lv
biAxLjEKZGlmZiAtcCAtdSAtcjEuMSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEv
RGF0ZS8xNS45LjUuMjEtMy5qcwotLS0gSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21h
L0RhdGUvMTUuOS41LjIxLTMuanMJMTMgT2N0IDIwMDMgMDI6MDU6MjkgLTAwMDAJMS4xCisrKyBK
YXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMjEtMy5qcwk4IEF1
ZyAyMDA1IDAxOjAxOjA0IC0wMDAwCkBAIC00NiwxMCArNDYsNiBAQAogICAgIC8vIGdldCB0aGUg
Y3VycmVudCB0aW1lCiAgICAgdmFyIG5vdyA9IChuZXcgRGF0ZSgpKS52YWx1ZU9mKCk7CiAKLSAg
ICAvLyBjYWxjdWxhdGUgdGltZSBmb3IgeWVhciAwCi0gICAgZm9yICggdmFyIHRpbWUgPSAwLCB5
ZWFyID0gMTk2OTsgeWVhciA+PSAwOyB5ZWFyLS0gKSB7Ci0gICAgICAgIHRpbWUgLT0gVGltZUlu
WWVhcih5ZWFyKTsKLSAgICB9CiAgICAgLy8gZ2V0IHRpbWUgZm9yIDI5IGZlYiAyMDAwCiAKICAg
ICB2YXIgVVRDX0ZFQl8yOV8yMDAwID0gVElNRV8yMDAwICsgMzEqbXNQZXJEYXkgKyAyOCptc1Bl
ckhvdXI7CkluZGV4OiBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45
LjUuMjEtNC5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3ZzL3Jvb3QvSmF2YVNjcmlwdENvcmUv
dGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjIxLTQuanMsdgpyZXRyaWV2aW5nIHJldmlz
aW9uIDEuMQpkaWZmIC1wIC11IC1yMS4xIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNt
YS9EYXRlLzE1LjkuNS4yMS00LmpzCi0tLSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2Vj
bWEvRGF0ZS8xNS45LjUuMjEtNC5qcwkxMyBPY3QgMjAwMyAwMjowNToyOSAtMDAwMAkxLjEKKysr
IEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4yMS00LmpzCTgg
QXVnIDIwMDUgMDE6MDE6MDQgLTAwMDAKQEAgLTQ2LDEwICs0Niw2IEBACiAgICAgLy8gZ2V0IHRo
ZSBjdXJyZW50IHRpbWUKICAgICB2YXIgbm93ID0gKG5ldyBEYXRlKCkpLnZhbHVlT2YoKTsKIAot
ICAgIC8vIGNhbGN1bGF0ZSB0aW1lIGZvciB5ZWFyIDAKLSAgICBmb3IgKCB2YXIgdGltZSA9IDAs
IHllYXIgPSAxOTY5OyB5ZWFyID49IDA7IHllYXItLSApIHsKLSAgICAgICAgdGltZSAtPSBUaW1l
SW5ZZWFyKHllYXIpOwotICAgIH0KICAgICAvLyBnZXQgdGltZSBmb3IgMjkgZmViIDIwMDAKIAog
ICAgIHZhciBVVENfRkVCXzI5XzIwMDAgPSBUSU1FXzIwMDAgKyAzMSptc1BlckRheSArIDI4Km1z
UGVySG91cjsKSW5kZXg6IEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1
LjkuNS4yMS01LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9jdnMvcm9vdC9KYXZhU2NyaXB0Q29y
ZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMjEtNS5qcyx2CnJldHJpZXZpbmcgcmV2
aXNpb24gMS4xCmRpZmYgLXAgLXUgLXIxLjEgSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9l
Y21hL0RhdGUvMTUuOS41LjIxLTUuanMKLS0tIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEv
ZWNtYS9EYXRlLzE1LjkuNS4yMS01LmpzCTEzIE9jdCAyMDAzIDAyOjA1OjI5IC0wMDAwCTEuMQor
KysgSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjIxLTUuanMJ
OCBBdWcgMjAwNSAwMTowMTowNCAtMDAwMApAQCAtNDYsMTAgKzQ2LDYgQEAKICAgICAvLyBnZXQg
dGhlIGN1cnJlbnQgdGltZQogICAgIHZhciBub3cgPSAobmV3IERhdGUoKSkudmFsdWVPZigpOwog
Ci0gICAgLy8gY2FsY3VsYXRlIHRpbWUgZm9yIHllYXIgMAotICAgIGZvciAoIHZhciB0aW1lID0g
MCwgeWVhciA9IDE5Njk7IHllYXIgPj0gMDsgeWVhci0tICkgewotICAgICAgICB0aW1lIC09IFRp
bWVJblllYXIoeWVhcik7Ci0gICAgfQogICAgIC8vIGdldCB0aW1lIGZvciAyOSBmZWIgMjAwMAog
CiAgICAgdmFyIFVUQ19GRUJfMjlfMjAwMCA9IFRJTUVfMjAwMCArIDMxKm1zUGVyRGF5ICsgMjgq
bXNQZXJIb3VyOwpJbmRleDogSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUv
MTUuOS41LjIxLTYuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9yb290L0phdmFTY3JpcHRD
b3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4yMS02LmpzLHYKcmV0cmlldmluZyBy
ZXZpc2lvbiAxLjEKZGlmZiAtcCAtdSAtcjEuMSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxh
L2VjbWEvRGF0ZS8xNS45LjUuMjEtNi5qcwotLS0gSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxs
YS9lY21hL0RhdGUvMTUuOS41LjIxLTYuanMJMTMgT2N0IDIwMDMgMDI6MDU6MjkgLTAwMDAJMS4x
CisrKyBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMjEtNi5q
cwk4IEF1ZyAyMDA1IDAxOjAxOjA1IC0wMDAwCkBAIC00NiwxMCArNDYsNiBAQAogICAgIC8vIGdl
dCB0aGUgY3VycmVudCB0aW1lCiAgICAgdmFyIG5vdyA9IChuZXcgRGF0ZSgpKS52YWx1ZU9mKCk7
CiAKLSAgICAvLyBjYWxjdWxhdGUgdGltZSBmb3IgeWVhciAwCi0gICAgZm9yICggdmFyIHRpbWUg
PSAwLCB5ZWFyID0gMTk2OTsgeWVhciA+PSAwOyB5ZWFyLS0gKSB7Ci0gICAgICAgIHRpbWUgLT0g
VGltZUluWWVhcih5ZWFyKTsKLSAgICB9CiAgICAgLy8gZ2V0IHRpbWUgZm9yIDI5IGZlYiAyMDAw
CiAKICAgICB2YXIgVVRDX0ZFQl8yOV8yMDAwID0gVElNRV8yMDAwICsgMzEqbXNQZXJEYXkgKyAy
OCptc1BlckhvdXI7CkluZGV4OiBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0
ZS8xNS45LjUuMjEtNy5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3ZzL3Jvb3QvSmF2YVNjcmlw
dENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjIxLTcuanMsdgpyZXRyaWV2aW5n
IHJldmlzaW9uIDEuMQpkaWZmIC1wIC11IC1yMS4xIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemls
bGEvZWNtYS9EYXRlLzE1LjkuNS4yMS03LmpzCi0tLSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3pp
bGxhL2VjbWEvRGF0ZS8xNS45LjUuMjEtNy5qcwkxMyBPY3QgMjAwMyAwMjowNToyOSAtMDAwMAkx
LjEKKysrIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4yMS03
LmpzCTggQXVnIDIwMDUgMDE6MDE6MDUgLTAwMDAKQEAgLTQ2LDEwICs0Niw2IEBACiAgICAgLy8g
Z2V0IHRoZSBjdXJyZW50IHRpbWUKICAgICB2YXIgbm93ID0gKG5ldyBEYXRlKCkpLnZhbHVlT2Yo
KTsKIAotICAgIC8vIGNhbGN1bGF0ZSB0aW1lIGZvciB5ZWFyIDAKLSAgICBmb3IgKCB2YXIgdGlt
ZSA9IDAsIHllYXIgPSAxOTY5OyB5ZWFyID49IDA7IHllYXItLSApIHsKLSAgICAgICAgdGltZSAt
PSBUaW1lSW5ZZWFyKHllYXIpOwotICAgIH0KICAgICAvLyBnZXQgdGltZSBmb3IgMjkgZmViIDIw
MDAKIAogICAgIHZhciBVVENfRkVCXzI5XzIwMDAgPSBUSU1FXzIwMDAgKyAzMSptc1BlckRheSAr
IDI4Km1zUGVySG91cjsKSW5kZXg6IEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9E
YXRlLzE1LjkuNS4yMS04LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9jdnMvcm9vdC9KYXZhU2Ny
aXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMjEtOC5qcyx2CnJldHJpZXZp
bmcgcmV2aXNpb24gMS4xCmRpZmYgLXAgLXUgLXIxLjEgSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96
aWxsYS9lY21hL0RhdGUvMTUuOS41LjIxLTguanMKLS0tIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21v
emlsbGEvZWNtYS9EYXRlLzE1LjkuNS4yMS04LmpzCTEzIE9jdCAyMDAzIDAyOjA1OjI5IC0wMDAw
CTEuMQorKysgSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjIx
LTguanMJOCBBdWcgMjAwNSAwMTowMTowNSAtMDAwMApAQCAtNDYsMTAgKzQ2LDYgQEAKICAgICAv
LyBnZXQgdGhlIGN1cnJlbnQgdGltZQogICAgIHZhciBub3cgPSAobmV3IERhdGUoKSkudmFsdWVP
ZigpOwogCi0gICAgLy8gY2FsY3VsYXRlIHRpbWUgZm9yIHllYXIgMAotICAgIGZvciAoIHZhciB0
aW1lID0gMCwgeWVhciA9IDE5Njk7IHllYXIgPj0gMDsgeWVhci0tICkgewotICAgICAgICB0aW1l
IC09IFRpbWVJblllYXIoeWVhcik7Ci0gICAgfQogICAgIC8vIGdldCB0aW1lIGZvciAyOSBmZWIg
MjAwMAogCiAgICAgdmFyIFVUQ19GRUJfMjlfMjAwMCA9IFRJTUVfMjAwMCArIDMxKm1zUGVyRGF5
ICsgMjgqbXNQZXJIb3VyOwpJbmRleDogSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21h
L0RhdGUvMTUuOS41LjIyLTEuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9yb290L0phdmFT
Y3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4yMi0xLmpzLHYKcmV0cmll
dmluZyByZXZpc2lvbiAxLjEKZGlmZiAtcCAtdSAtcjEuMSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9t
b3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMjItMS5qcwotLS0gSmF2YVNjcmlwdENvcmUvdGVzdHMv
bW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjIyLTEuanMJMTMgT2N0IDIwMDMgMDI6MDU6MjkgLTAw
MDAJMS4xCisrKyBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUu
MjItMS5qcwk4IEF1ZyAyMDA1IDAxOjAxOjA1IC0wMDAwCkBAIC00NywxMCArNDcsNiBAQAogICAg
IC8vIGdldCB0aGUgY3VycmVudCB0aW1lCiAgICAgdmFyIG5vdyA9IChuZXcgRGF0ZSgpKS52YWx1
ZU9mKCk7CiAKLSAgICAvLyBjYWxjdWxhdGUgdGltZSBmb3IgeWVhciAwCi0gICAgZm9yICggdmFy
IHRpbWUgPSAwLCB5ZWFyID0gMTk2OTsgeWVhciA+PSAwOyB5ZWFyLS0gKSB7Ci0gICAgICAgIHRp
bWUgLT0gVGltZUluWWVhcih5ZWFyKTsKLSAgICB9CiAgICAgLy8gZ2V0IHRpbWUgZm9yIDI5IGZl
YiAyMDAwCiAKICAgICB2YXIgVVRDX0ZFQl8yOV8yMDAwID0gVElNRV8yMDAwICsgMzEqbXNQZXJE
YXkgKyAyOCptc1BlckhvdXI7CkBAIC02Miw3ICs1OCw3IEBACiAKIC8vICAgIGFkZFRlc3RDYXNl
KCBub3cgKTsKIAotICAgIGFkZFRlc3RDYXNlKCB0aW1lICk7CisgICAgYWRkVGVzdENhc2UoIFRJ
TUVfWUVBUl8wICk7CiAgICAgYWRkVGVzdENhc2UoIFRJTUVfMTk3MCApOwogICAgIGFkZFRlc3RD
YXNlKCBUSU1FXzE5MDAgKTsKICAgICBhZGRUZXN0Q2FzZSggVElNRV8yMDAwICk7CkluZGV4OiBK
YXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMjItMi5qcwo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09ClJDUyBmaWxlOiAvY3ZzL3Jvb3QvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9l
Y21hL0RhdGUvMTUuOS41LjIyLTIuanMsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMQpkaWZmIC1w
IC11IC1yMS4xIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4y
Mi0yLmpzCi0tLSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUu
MjItMi5qcwkxMyBPY3QgMjAwMyAwMjowNToyOSAtMDAwMAkxLjEKKysrIEphdmFTY3JpcHRDb3Jl
L3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4yMi0yLmpzCTggQXVnIDIwMDUgMDE6MDE6
MDUgLTAwMDAKQEAgLTQ3LDEwICs0Nyw2IEBACiAgICAgLy8gZ2V0IHRoZSBjdXJyZW50IHRpbWUK
ICAgICB2YXIgbm93ID0gKG5ldyBEYXRlKCkpLnZhbHVlT2YoKTsKIAotICAgIC8vIGNhbGN1bGF0
ZSB0aW1lIGZvciB5ZWFyIDAKLSAgICBmb3IgKCB2YXIgdGltZSA9IDAsIHllYXIgPSAxOTY5OyB5
ZWFyID49IDA7IHllYXItLSApIHsKLSAgICAgICAgdGltZSAtPSBUaW1lSW5ZZWFyKHllYXIpOwot
ICAgIH0KICAgICAvLyBnZXQgdGltZSBmb3IgMjkgZmViIDIwMDAKIAogICAgIHZhciBVVENfRkVC
XzI5XzIwMDAgPSBUSU1FXzIwMDAgKyAzMSptc1BlckRheSArIDI4Km1zUGVySG91cjsKQEAgLTYw
LDcgKzU2LDcgQEAKICAgICB2YXIgVVRDX0pBTl8xXzIwMDUgPSBUSU1FXzIwMDAgKyBUaW1lSW5Z
ZWFyKDIwMDApK1RpbWVJblllYXIoMjAwMSkrCiAgICAgVGltZUluWWVhcigyMDAyKStUaW1lSW5Z
ZWFyKDIwMDMpK1RpbWVJblllYXIoMjAwNCk7CiAKLSAgICBhZGRUZXN0Q2FzZSggdGltZSApOwor
ICAgIGFkZFRlc3RDYXNlKCBUSU1FX1lFQVJfMCApOwogLyoKICAgICBhZGRUZXN0Q2FzZSggVElN
RV8xOTcwICk7CiAgICAgYWRkVGVzdENhc2UoIFRJTUVfMTkwMCApOwpJbmRleDogSmF2YVNjcmlw
dENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjIyLTMuanMKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpS
Q1MgZmlsZTogL2N2cy9yb290L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRl
LzE1LjkuNS4yMi0zLmpzLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjEKZGlmZiAtcCAtdSAtcjEu
MSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMjItMy5qcwot
LS0gSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjIyLTMuanMJ
MTMgT2N0IDIwMDMgMDI6MDU6MjkgLTAwMDAJMS4xCisrKyBKYXZhU2NyaXB0Q29yZS90ZXN0cy9t
b3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMjItMy5qcwk4IEF1ZyAyMDA1IDAxOjAxOjA1IC0wMDAw
CkBAIC00NywxMCArNDcsNiBAQAogICAgIC8vIGdldCB0aGUgY3VycmVudCB0aW1lCiAgICAgdmFy
IG5vdyA9IChuZXcgRGF0ZSgpKS52YWx1ZU9mKCk7CiAKLSAgICAvLyBjYWxjdWxhdGUgdGltZSBm
b3IgeWVhciAwCi0gICAgZm9yICggdmFyIHRpbWUgPSAwLCB5ZWFyID0gMTk2OTsgeWVhciA+PSAw
OyB5ZWFyLS0gKSB7Ci0gICAgICAgIHRpbWUgLT0gVGltZUluWWVhcih5ZWFyKTsKLSAgICB9CiAg
ICAgLy8gZ2V0IHRpbWUgZm9yIDI5IGZlYiAyMDAwCiAKICAgICB2YXIgVVRDX0ZFQl8yOV8yMDAw
ID0gVElNRV8yMDAwICsgMzEqbXNQZXJEYXkgKyAyOCptc1BlckhvdXI7CkluZGV4OiBKYXZhU2Ny
aXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMjItNC5qcwo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
ClJDUyBmaWxlOiAvY3ZzL3Jvb3QvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0Rh
dGUvMTUuOS41LjIyLTQuanMsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMQpkaWZmIC1wIC11IC1y
MS4xIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4yMi00Lmpz
Ci0tLSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMjItNC5q
cwkxMyBPY3QgMjAwMyAwMjowNToyOSAtMDAwMAkxLjEKKysrIEphdmFTY3JpcHRDb3JlL3Rlc3Rz
L21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4yMi00LmpzCTggQXVnIDIwMDUgMDE6MDE6MDUgLTAw
MDAKQEAgLTQ3LDEwICs0Nyw2IEBACiAgICAgLy8gZ2V0IHRoZSBjdXJyZW50IHRpbWUKICAgICB2
YXIgbm93ID0gKG5ldyBEYXRlKCkpLnZhbHVlT2YoKTsKIAotICAgIC8vIGNhbGN1bGF0ZSB0aW1l
IGZvciB5ZWFyIDAKLSAgICBmb3IgKCB2YXIgdGltZSA9IDAsIHllYXIgPSAxOTY5OyB5ZWFyID49
IDA7IHllYXItLSApIHsKLSAgICAgICAgdGltZSAtPSBUaW1lSW5ZZWFyKHllYXIpOwotICAgIH0K
ICAgICAvLyBnZXQgdGltZSBmb3IgMjkgZmViIDIwMDAKIAogICAgIHZhciBVVENfRkVCXzI5XzIw
MDAgPSBUSU1FXzIwMDAgKyAzMSptc1BlckRheSArIDI4Km1zUGVySG91cjsKSW5kZXg6IEphdmFT
Y3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4yMi01LmpzCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KUkNTIGZpbGU6IC9jdnMvcm9vdC9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEv
RGF0ZS8xNS45LjUuMjItNS5qcyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4xCmRpZmYgLXAgLXUg
LXIxLjEgSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjIyLTUu
anMKLS0tIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4yMi01
LmpzCTEzIE9jdCAyMDAzIDAyOjA1OjI5IC0wMDAwCTEuMQorKysgSmF2YVNjcmlwdENvcmUvdGVz
dHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjIyLTUuanMJOCBBdWcgMjAwNSAwMTowMTowNSAt
MDAwMApAQCAtNDcsMTAgKzQ3LDYgQEAKICAgICAvLyBnZXQgdGhlIGN1cnJlbnQgdGltZQogICAg
IHZhciBub3cgPSAobmV3IERhdGUoKSkudmFsdWVPZigpOwogCi0gICAgLy8gY2FsY3VsYXRlIHRp
bWUgZm9yIHllYXIgMAotICAgIGZvciAoIHZhciB0aW1lID0gMCwgeWVhciA9IDE5Njk7IHllYXIg
Pj0gMDsgeWVhci0tICkgewotICAgICAgICB0aW1lIC09IFRpbWVJblllYXIoeWVhcik7Ci0gICAg
fQogICAgIC8vIGdldCB0aW1lIGZvciAyOSBmZWIgMjAwMAogCiAgICAgdmFyIFVUQ19GRUJfMjlf
MjAwMCA9IFRJTUVfMjAwMCArIDMxKm1zUGVyRGF5ICsgMjgqbXNQZXJIb3VyOwpJbmRleDogSmF2
YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjIyLTYuanMKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQpSQ1MgZmlsZTogL2N2cy9yb290L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNt
YS9EYXRlLzE1LjkuNS4yMi02LmpzLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjEKZGlmZiAtcCAt
dSAtcjEuMSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMjIt
Ni5qcwotLS0gSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjIy
LTYuanMJMTMgT2N0IDIwMDMgMDI6MDU6MjkgLTAwMDAJMS4xCisrKyBKYXZhU2NyaXB0Q29yZS90
ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMjItNi5qcwk4IEF1ZyAyMDA1IDAxOjAxOjA1
IC0wMDAwCkBAIC00NywxMCArNDcsNiBAQAogICAgIC8vIGdldCB0aGUgY3VycmVudCB0aW1lCiAg
ICAgdmFyIG5vdyA9IChuZXcgRGF0ZSgpKS52YWx1ZU9mKCk7CiAKLSAgICAvLyBjYWxjdWxhdGUg
dGltZSBmb3IgeWVhciAwCi0gICAgZm9yICggdmFyIHRpbWUgPSAwLCB5ZWFyID0gMTk2OTsgeWVh
ciA+PSAwOyB5ZWFyLS0gKSB7Ci0gICAgICAgIHRpbWUgLT0gVGltZUluWWVhcih5ZWFyKTsKLSAg
ICB9CiAgICAgLy8gZ2V0IHRpbWUgZm9yIDI5IGZlYiAyMDAwCiAKICAgICB2YXIgVVRDX0ZFQl8y
OV8yMDAwID0gVElNRV8yMDAwICsgMzEqbXNQZXJEYXkgKyAyOCptc1BlckhvdXI7CkluZGV4OiBK
YXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMjItNy5qcwo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09ClJDUyBmaWxlOiAvY3ZzL3Jvb3QvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9l
Y21hL0RhdGUvMTUuOS41LjIyLTcuanMsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMQpkaWZmIC1w
IC11IC1yMS4xIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4y
Mi03LmpzCi0tLSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUu
MjItNy5qcwkxMyBPY3QgMjAwMyAwMjowNToyOSAtMDAwMAkxLjEKKysrIEphdmFTY3JpcHRDb3Jl
L3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4yMi03LmpzCTggQXVnIDIwMDUgMDE6MDE6
MDUgLTAwMDAKQEAgLTQ3LDEwICs0Nyw2IEBACiAgICAgLy8gZ2V0IHRoZSBjdXJyZW50IHRpbWUK
ICAgICB2YXIgbm93ID0gKG5ldyBEYXRlKCkpLnZhbHVlT2YoKTsKIAotICAgIC8vIGNhbGN1bGF0
ZSB0aW1lIGZvciB5ZWFyIDAKLSAgICBmb3IgKCB2YXIgdGltZSA9IDAsIHllYXIgPSAxOTY5OyB5
ZWFyID49IDA7IHllYXItLSApIHsKLSAgICAgICAgdGltZSAtPSBUaW1lSW5ZZWFyKHllYXIpOwot
ICAgIH0KICAgICAvLyBnZXQgdGltZSBmb3IgMjkgZmViIDIwMDAKIAogICAgIHZhciBVVENfRkVC
XzI5XzIwMDAgPSBUSU1FXzIwMDAgKyAzMSptc1BlckRheSArIDI4Km1zUGVySG91cjsKSW5kZXg6
IEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4yMi04LmpzCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KUkNTIGZpbGU6IC9jdnMvcm9vdC9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxh
L2VjbWEvRGF0ZS8xNS45LjUuMjItOC5qcyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4xCmRpZmYg
LXAgLXUgLXIxLjEgSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41
LjIyLTguanMKLS0tIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1Ljku
NS4yMi04LmpzCTEzIE9jdCAyMDAzIDAyOjA1OjI5IC0wMDAwCTEuMQorKysgSmF2YVNjcmlwdENv
cmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjIyLTguanMJOCBBdWcgMjAwNSAwMTow
MTowNSAtMDAwMApAQCAtNDcsMTAgKzQ3LDYgQEAKICAgICAvLyBnZXQgdGhlIGN1cnJlbnQgdGlt
ZQogICAgIHZhciBub3cgPSAobmV3IERhdGUoKSkudmFsdWVPZigpOwogCi0gICAgLy8gY2FsY3Vs
YXRlIHRpbWUgZm9yIHllYXIgMAotICAgIGZvciAoIHZhciB0aW1lID0gMCwgeWVhciA9IDE5Njk7
IHllYXIgPj0gMDsgeWVhci0tICkgewotICAgICAgICB0aW1lIC09IFRpbWVJblllYXIoeWVhcik7
Ci0gICAgfQogICAgIC8vIGdldCB0aW1lIGZvciAyOSBmZWIgMjAwMAogCiAgICAgdmFyIFVUQ19G
RUJfMjlfMjAwMCA9IFRJTUVfMjAwMCArIDMxKm1zUGVyRGF5ICsgMjgqbXNQZXJIb3VyOwpJbmRl
eDogSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjIzLTQuanMK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9yb290L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vemls
bGEvZWNtYS9EYXRlLzE1LjkuNS4yMy00LmpzLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjEKZGlm
ZiAtcCAtdSAtcjEuMSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45
LjUuMjMtNC5qcwotLS0gSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUu
OS41LjIzLTQuanMJMTMgT2N0IDIwMDMgMDI6MDU6MjkgLTAwMDAJMS4xCisrKyBKYXZhU2NyaXB0
Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMjMtNC5qcwk4IEF1ZyAyMDA1IDAx
OjAxOjA1IC0wMDAwCkBAIC00OCwxMCArNDgsNiBAQAogICAgIC8vIGdldCB0aGUgY3VycmVudCB0
aW1lCiAgICAgdmFyIG5vdyA9IChuZXcgRGF0ZSgpKS52YWx1ZU9mKCk7CiAKLSAgICAvLyBjYWxj
dWxhdGUgdGltZSBmb3IgeWVhciAwCi0gICAgZm9yICggdmFyIHRpbWUgPSAwLCB5ZWFyID0gMTk2
OTsgeWVhciA+PSAwOyB5ZWFyLS0gKSB7Ci0gICAgICAgIHRpbWUgLT0gVGltZUluWWVhcih5ZWFy
KTsKLSAgICB9CiAgICAgLy8gZ2V0IHRpbWUgZm9yIDI5IGZlYiAyMDAwCiAKICAgICB2YXIgVVRD
X0ZFQl8yOV8yMDAwID0gVElNRV8yMDAwICsgMzEqbXNQZXJEYXkgKyAyOCptc1BlckhvdXI7CkBA
IC02MSwxMiArNTcsMTIgQEAKICAgICB2YXIgVVRDX0pBTl8xXzIwMDUgPSBUSU1FXzIwMDAgKyBU
aW1lSW5ZZWFyKDIwMDApK1RpbWVJblllYXIoMjAwMSkrCiAgICAgVGltZUluWWVhcigyMDAyKStU
aW1lSW5ZZWFyKDIwMDMpK1RpbWVJblllYXIoMjAwNCk7CiAKLSAgICB0ZXN0X3RpbWVzID0gbmV3
IEFycmF5KCBub3csIHRpbWUsIFRJTUVfMTk3MCwgVElNRV8xOTAwLCBUSU1FXzIwMDAsCisgICAg
dGVzdF90aW1lcyA9IG5ldyBBcnJheSggbm93LCBUSU1FX1lFQVJfMCwgVElNRV8xOTcwLCBUSU1F
XzE5MDAsIFRJTUVfMjAwMCwKICAgICBVVENfRkVCXzI5XzIwMDAsIFVUQ19KQU5fMV8yMDA1ICk7
CiAKIAogICAgIGZvciAoIHZhciBqID0gMDsgaiA8IHRlc3RfdGltZXMubGVuZ3RoOyBqKysgKSB7
Ci0gICAgICAgIGFkZFRlc3RDYXNlKCBuZXcgRGF0ZSh0aW1lKSwgdGVzdF90aW1lc1tqXSApOwor
ICAgICAgICBhZGRUZXN0Q2FzZSggbmV3IERhdGUoVElNRV9ZRUFSXzApLCB0ZXN0X3RpbWVzW2pd
ICk7CiAgICAgfQogCiAgICAgdGVzdGNhc2VzW3RjKytdID0gbmV3IFRlc3RDYXNlKCBTRUNUSU9O
LApJbmRleDogSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjIz
LTUuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9yb290L0phdmFTY3JpcHRDb3JlL3Rlc3Rz
L21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4yMy01LmpzLHYKcmV0cmlldmluZyByZXZpc2lvbiAx
LjEKZGlmZiAtcCAtdSAtcjEuMSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0
ZS8xNS45LjUuMjMtNS5qcwotLS0gSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0Rh
dGUvMTUuOS41LjIzLTUuanMJMTMgT2N0IDIwMDMgMDI6MDU6MjkgLTAwMDAJMS4xCisrKyBKYXZh
U2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMjMtNS5qcwk4IEF1ZyAy
MDA1IDAxOjAxOjA3IC0wMDAwCkBAIC00OCwxMCArNDgsNiBAQAogICAgIC8vIGdldCB0aGUgY3Vy
cmVudCB0aW1lCiAgICAgdmFyIG5vdyA9IChuZXcgRGF0ZSgpKS52YWx1ZU9mKCk7CiAKLSAgICAv
LyBjYWxjdWxhdGUgdGltZSBmb3IgeWVhciAwCi0gICAgZm9yICggdmFyIHRpbWUgPSAwLCB5ZWFy
ID0gMTk2OTsgeWVhciA+PSAwOyB5ZWFyLS0gKSB7Ci0gICAgICAgIHRpbWUgLT0gVGltZUluWWVh
cih5ZWFyKTsKLSAgICB9CiAgICAgLy8gZ2V0IHRpbWUgZm9yIDI5IGZlYiAyMDAwCiAKICAgICB2
YXIgVVRDX0ZFQl8yOV8yMDAwID0gVElNRV8yMDAwICsgMzEqbXNQZXJEYXkgKyAyOCptc1Blckhv
dXI7CkBAIC02MSw3ICs1Nyw3IEBACiAgICAgdmFyIFVUQ19KQU5fMV8yMDA1ID0gVElNRV8yMDAw
ICsgVGltZUluWWVhcigyMDAwKStUaW1lSW5ZZWFyKDIwMDEpKwogICAgIFRpbWVJblllYXIoMjAw
MikrVGltZUluWWVhcigyMDAzKStUaW1lSW5ZZWFyKDIwMDQpOwogCi0gICAgdGVzdF90aW1lcyA9
IG5ldyBBcnJheSggbm93LCB0aW1lLCBUSU1FXzE5NzAsIFRJTUVfMTkwMCwgVElNRV8yMDAwLAor
ICAgIHRlc3RfdGltZXMgPSBuZXcgQXJyYXkoIG5vdywgVElNRV9ZRUFSXzAsIFRJTUVfMTk3MCwg
VElNRV8xOTAwLCBUSU1FXzIwMDAsCiAgICAgVVRDX0ZFQl8yOV8yMDAwLCBVVENfSkFOXzFfMjAw
NSApOwogCiAKSW5kZXg6IEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1
LjkuNS4yMy02LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9jdnMvcm9vdC9KYXZhU2NyaXB0Q29y
ZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMjMtNi5qcyx2CnJldHJpZXZpbmcgcmV2
aXNpb24gMS4xCmRpZmYgLXAgLXUgLXIxLjEgSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9l
Y21hL0RhdGUvMTUuOS41LjIzLTYuanMKLS0tIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEv
ZWNtYS9EYXRlLzE1LjkuNS4yMy02LmpzCTEzIE9jdCAyMDAzIDAyOjA1OjI5IC0wMDAwCTEuMQor
KysgSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjIzLTYuanMJ
OCBBdWcgMjAwNSAwMTowMTowNyAtMDAwMApAQCAtNDgsMTAgKzQ4LDYgQEAKICAgICAvLyBnZXQg
dGhlIGN1cnJlbnQgdGltZQogICAgIHZhciBub3cgPSAobmV3IERhdGUoKSkudmFsdWVPZigpOwog
Ci0gICAgLy8gY2FsY3VsYXRlIHRpbWUgZm9yIHllYXIgMAotICAgIGZvciAoIHZhciB0aW1lID0g
MCwgeWVhciA9IDE5Njk7IHllYXIgPj0gMDsgeWVhci0tICkgewotICAgICAgICB0aW1lIC09IFRp
bWVJblllYXIoeWVhcik7Ci0gICAgfQogICAgIC8vIGdldCB0aW1lIGZvciAyOSBmZWIgMjAwMAog
CiAgICAgdmFyIFVUQ19GRUJfMjlfMjAwMCA9IFRJTUVfMjAwMCArIDMxKm1zUGVyRGF5ICsgMjgq
bXNQZXJIb3VyOwpAQCAtNjEsNyArNTcsNyBAQAogICAgIHZhciBVVENfSkFOXzFfMjAwNSA9IFRJ
TUVfMjAwMCArIFRpbWVJblllYXIoMjAwMCkrVGltZUluWWVhcigyMDAxKSsKICAgICBUaW1lSW5Z
ZWFyKDIwMDIpK1RpbWVJblllYXIoMjAwMykrVGltZUluWWVhcigyMDA0KTsKIAotICAgIHRlc3Rf
dGltZXMgPSBuZXcgQXJyYXkoIG5vdywgdGltZSwgVElNRV8xOTcwLCBUSU1FXzE5MDAsIFRJTUVf
MjAwMCwKKyAgICB0ZXN0X3RpbWVzID0gbmV3IEFycmF5KCBub3csIFRJTUVfWUVBUl8wLCBUSU1F
XzE5NzAsIFRJTUVfMTkwMCwgVElNRV8yMDAwLAogICAgIFVUQ19GRUJfMjlfMjAwMCwgVVRDX0pB
Tl8xXzIwMDUgKTsKIAogCkluZGV4OiBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEv
RGF0ZS8xNS45LjUuMjMtNy5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3ZzL3Jvb3QvSmF2YVNj
cmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjIzLTcuanMsdgpyZXRyaWV2
aW5nIHJldmlzaW9uIDEuMQpkaWZmIC1wIC11IC1yMS4xIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21v
emlsbGEvZWNtYS9EYXRlLzE1LjkuNS4yMy03LmpzCi0tLSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9t
b3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMjMtNy5qcwkxMyBPY3QgMjAwMyAwMjowNToyOSAtMDAw
MAkxLjEKKysrIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4y
My03LmpzCTggQXVnIDIwMDUgMDE6MDE6MDcgLTAwMDAKQEAgLTQ4LDEwICs0OCw2IEBACiAgICAg
Ly8gZ2V0IHRoZSBjdXJyZW50IHRpbWUKICAgICB2YXIgbm93ID0gKG5ldyBEYXRlKCkpLnZhbHVl
T2YoKTsKIAotICAgIC8vIGNhbGN1bGF0ZSB0aW1lIGZvciB5ZWFyIDAKLSAgICBmb3IgKCB2YXIg
dGltZSA9IDAsIHllYXIgPSAxOTY5OyB5ZWFyID49IDA7IHllYXItLSApIHsKLSAgICAgICAgdGlt
ZSAtPSBUaW1lSW5ZZWFyKHllYXIpOwotICAgIH0KICAgICAvLyBnZXQgdGltZSBmb3IgMjkgZmVi
IDIwMDAKIAogICAgIHZhciBVVENfRkVCXzI5XzIwMDAgPSBUSU1FXzIwMDAgKyAzMSptc1BlckRh
eSArIDI4Km1zUGVySG91cjsKQEAgLTYxLDcgKzU3LDcgQEAKICAgICB2YXIgVVRDX0pBTl8xXzIw
MDUgPSBUSU1FXzIwMDAgKyBUaW1lSW5ZZWFyKDIwMDApK1RpbWVJblllYXIoMjAwMSkrCiAgICAg
VGltZUluWWVhcigyMDAyKStUaW1lSW5ZZWFyKDIwMDMpK1RpbWVJblllYXIoMjAwNCk7CiAKLSAg
ICB0ZXN0X3RpbWVzID0gbmV3IEFycmF5KCBub3csIHRpbWUsIFRJTUVfMTk3MCwgVElNRV8xOTAw
LCBUSU1FXzIwMDAsCisgICAgdGVzdF90aW1lcyA9IG5ldyBBcnJheSggbm93LCBUSU1FX1lFQVJf
MCwgVElNRV8xOTcwLCBUSU1FXzE5MDAsIFRJTUVfMjAwMCwKICAgICBVVENfRkVCXzI5XzIwMDAs
IFVUQ19KQU5fMV8yMDA1ICk7CiAKIApJbmRleDogSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxs
YS9lY21hL0RhdGUvMTUuOS41LjIzLTguanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9yb290
L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4yMy04LmpzLHYK
cmV0cmlldmluZyByZXZpc2lvbiAxLjEKZGlmZiAtcCAtdSAtcjEuMSBKYXZhU2NyaXB0Q29yZS90
ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMjMtOC5qcwotLS0gSmF2YVNjcmlwdENvcmUv
dGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjIzLTguanMJMTMgT2N0IDIwMDMgMDI6MDU6
MjkgLTAwMDAJMS4xCisrKyBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8x
NS45LjUuMjMtOC5qcwk4IEF1ZyAyMDA1IDAxOjAxOjA3IC0wMDAwCkBAIC00OCwxMCArNDgsNiBA
QAogICAgIC8vIGdldCB0aGUgY3VycmVudCB0aW1lCiAgICAgdmFyIG5vdyA9IChuZXcgRGF0ZSgp
KS52YWx1ZU9mKCk7CiAKLSAgICAvLyBjYWxjdWxhdGUgdGltZSBmb3IgeWVhciAwCi0gICAgZm9y
ICggdmFyIHRpbWUgPSAwLCB5ZWFyID0gMTk2OTsgeWVhciA+PSAwOyB5ZWFyLS0gKSB7Ci0gICAg
ICAgIHRpbWUgLT0gVGltZUluWWVhcih5ZWFyKTsKLSAgICB9CiAgICAgLy8gZ2V0IHRpbWUgZm9y
IDI5IGZlYiAyMDAwCiAKICAgICB2YXIgVVRDX0ZFQl8yOV8yMDAwID0gVElNRV8yMDAwICsgMzEq
bXNQZXJEYXkgKyAyOCptc1BlckhvdXI7CkBAIC02MCw3ICs1Niw3IEBACiAKICAgICB2YXIgVVRD
X0pBTl8xXzIwMDUgPSBUSU1FXzIwMDAgKyBUaW1lSW5ZZWFyKDIwMDApK1RpbWVJblllYXIoMjAw
MSkrCiAgICAgVGltZUluWWVhcigyMDAyKStUaW1lSW5ZZWFyKDIwMDMpK1RpbWVJblllYXIoMjAw
NCk7Ci0gICAgdGVzdF90aW1lcyA9IG5ldyBBcnJheSggbm93LCB0aW1lLCBUSU1FXzE5NzAsIFRJ
TUVfMTkwMCwgVElNRV8yMDAwLAorICAgIHRlc3RfdGltZXMgPSBuZXcgQXJyYXkoIG5vdywgVElN
RV9ZRUFSXzAsIFRJTUVfMTk3MCwgVElNRV8xOTAwLCBUSU1FXzIwMDAsCiAgICAgVVRDX0ZFQl8y
OV8yMDAwLCBVVENfSkFOXzFfMjAwNSApOwogCiAKSW5kZXg6IEphdmFTY3JpcHRDb3JlL3Rlc3Rz
L21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4yMy05LmpzCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9j
dnMvcm9vdC9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuMjMt
OS5qcyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4xCmRpZmYgLXAgLXUgLXIxLjEgSmF2YVNjcmlw
dENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjIzLTkuanMKLS0tIEphdmFTY3Jp
cHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS4yMy05LmpzCTEzIE9jdCAyMDAz
IDAyOjA1OjI5IC0wMDAwCTEuMQorKysgSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21h
L0RhdGUvMTUuOS41LjIzLTkuanMJOCBBdWcgMjAwNSAwMTowMTowNyAtMDAwMApAQCAtNDgsMTAg
KzQ4LDYgQEAKICAgICAvLyBnZXQgdGhlIGN1cnJlbnQgdGltZQogICAgIHZhciBub3cgPSAobmV3
IERhdGUoKSkudmFsdWVPZigpOwogCi0gICAgLy8gY2FsY3VsYXRlIHRpbWUgZm9yIHllYXIgMAot
ICAgIGZvciAoIHZhciB0aW1lID0gMCwgeWVhciA9IDE5Njk7IHllYXIgPj0gMDsgeWVhci0tICkg
ewotICAgICAgICB0aW1lIC09IFRpbWVJblllYXIoeWVhcik7Ci0gICAgfQogICAgIC8vIGdldCB0
aW1lIGZvciAyOSBmZWIgMjAwMAogCiAgICAgdmFyIFVUQ19GRUJfMjlfMjAwMCA9IFRJTUVfMjAw
MCArIDMxKm1zUGVyRGF5ICsgMjgqbXNQZXJIb3VyOwpAQCAtNjEsNyArNTcsNyBAQAogICAgIHZh
ciBVVENfSkFOXzFfMjAwNSA9IFRJTUVfMjAwMCArIFRpbWVJblllYXIoMjAwMCkrVGltZUluWWVh
cigyMDAxKSsKICAgICBUaW1lSW5ZZWFyKDIwMDIpK1RpbWVJblllYXIoMjAwMykrVGltZUluWWVh
cigyMDA0KTsKIAotICAgIHRlc3RfdGltZXMgPSBuZXcgQXJyYXkoIG5vdywgdGltZSwgVElNRV8x
OTcwLCBUSU1FXzE5MDAsIFRJTUVfMjAwMCwKKyAgICB0ZXN0X3RpbWVzID0gbmV3IEFycmF5KCBu
b3csIFRJTUVfWUVBUl8wLCBUSU1FXzE5NzAsIFRJTUVfMTkwMCwgVElNRV8yMDAwLAogICAgIFVU
Q19GRUJfMjlfMjAwMCwgVVRDX0pBTl8xXzIwMDUgKTsKIAogCkluZGV4OiBKYXZhU2NyaXB0Q29y
ZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuNS5qcwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxl
OiAvY3ZzL3Jvb3QvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41
LjUuanMsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMQpkaWZmIC1wIC11IC1yMS4xIEphdmFTY3Jp
cHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS41LmpzCi0tLSBKYXZhU2NyaXB0
Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuNS5qcwkxMyBPY3QgMjAwMyAwMjow
NToyOSAtMDAwMAkxLjEKKysrIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRl
LzE1LjkuNS41LmpzCTggQXVnIDIwMDUgMDE6MDE6MDcgLTAwMDAKQEAgLTUwLDE2ICs1MCwxMiBA
QAogICAgIC8vIGdldCB0aGUgY3VycmVudCB0aW1lCiAgICAgdmFyIG5vdyA9IChuZXcgRGF0ZSgp
KS52YWx1ZU9mKCk7CiAKLSAgICAvLyBjYWxjdWxhdGUgdGltZSBmb3IgeWVhciAwCi0gICAgZm9y
ICggdmFyIHRpbWUgPSAwLCB5ZWFyID0gMTk2OTsgeWVhciA+PSAwOyB5ZWFyLS0gKSB7Ci0gICAg
ICAgIHRpbWUgLT0gVGltZUluWWVhcih5ZWFyKTsKLSAgICB9CiAgICAgLy8gZ2V0IHRpbWUgZm9y
IDI5IGZlYiAyMDAwCiAKICAgICB2YXIgVVRDX0ZFQl8yOV8yMDAwID0gVElNRV8yMDAwICsgMzEq
bXNQZXJEYXkgKyAyOCptc1BlckhvdXI7CiAKICAgICBhZGRUZXN0Q2FzZSggbm93ICk7Ci0gICAg
YWRkVGVzdENhc2UoIHRpbWUgKTsKKyAgICBhZGRUZXN0Q2FzZSggVElNRV9ZRUFSXzAgKTsKICAg
ICBhZGRUZXN0Q2FzZSggVElNRV8xOTcwICk7CiAgICAgYWRkVGVzdENhc2UoIFRJTUVfMTkwMCAp
OwogICAgIGFkZFRlc3RDYXNlKCBUSU1FXzIwMDAgKTsKSW5kZXg6IEphdmFTY3JpcHRDb3JlL3Rl
c3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS42LmpzCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9j
dnMvcm9vdC9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuNi5q
cyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4xCmRpZmYgLXAgLXUgLXIxLjEgSmF2YVNjcmlwdENv
cmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjYuanMKLS0tIEphdmFTY3JpcHRDb3Jl
L3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS42LmpzCTEzIE9jdCAyMDAzIDAyOjA1OjI5
IC0wMDAwCTEuMQorKysgSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUu
OS41LjYuanMJOCBBdWcgMjAwNSAwMTowMTowOCAtMDAwMApAQCAtNDUsMTAgKzQ1LDYgQEAKICAg
ICAvLyBnZXQgdGhlIGN1cnJlbnQgdGltZQogICAgIHZhciBub3cgPSAobmV3IERhdGUoKSkudmFs
dWVPZigpOwogCi0gICAgLy8gY2FsY3VsYXRlIHRpbWUgZm9yIHllYXIgMAotICAgIGZvciAoIHZh
ciB0aW1lID0gMCwgeWVhciA9IDE5Njk7IHllYXIgPj0gMDsgeWVhci0tICkgewotICAgICAgICB0
aW1lIC09IFRpbWVJblllYXIoeWVhcik7Ci0gICAgfQogICAgIC8vIGdldCB0aW1lIGZvciAyOSBm
ZWIgMjAwMAogCiAgICAgdmFyIFVUQ19GRUJfMjlfMjAwMCA9IFRJTUVfMjAwMCArIDMxKm1zUGVy
RGF5ICsgMjgqbXNQZXJIb3VyOwpAQCAtNTksNyArNTUsNyBAQAogICAgIFRpbWVJblllYXIoMjAw
MikrVGltZUluWWVhcigyMDAzKStUaW1lSW5ZZWFyKDIwMDQpOwogCiAgICAgYWRkVGVzdENhc2Uo
IG5vdyApOwotICAgIGFkZFRlc3RDYXNlKCB0aW1lICk7CisgICAgYWRkVGVzdENhc2UoIFRJTUVf
WUVBUl8wICk7CiAgICAgYWRkVGVzdENhc2UoIFRJTUVfMTk3MCApOwogICAgIGFkZFRlc3RDYXNl
KCBUSU1FXzE5MDAgKTsKICAgICBhZGRUZXN0Q2FzZSggVElNRV8yMDAwICk7CkluZGV4OiBKYXZh
U2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuNy5qcwo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
ClJDUyBmaWxlOiAvY3ZzL3Jvb3QvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0Rh
dGUvMTUuOS41LjcuanMsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMQpkaWZmIC1wIC11IC1yMS4x
IEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9EYXRlLzE1LjkuNS43LmpzCi0tLSBK
YXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuNy5qcwkxMyBPY3Qg
MjAwMyAwMjowNToyOSAtMDAwMAkxLjEKKysrIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEv
ZWNtYS9EYXRlLzE1LjkuNS43LmpzCTggQXVnIDIwMDUgMDE6MDE6MDggLTAwMDAKQEAgLTQ1LDEw
ICs0NSw2IEBACiAgICAgLy8gZ2V0IHRoZSBjdXJyZW50IHRpbWUKICAgICB2YXIgbm93ID0gKG5l
dyBEYXRlKCkpLnZhbHVlT2YoKTsKIAotICAgIC8vIGNhbGN1bGF0ZSB0aW1lIGZvciB5ZWFyIDAK
LSAgICBmb3IgKCB2YXIgdGltZSA9IDAsIHllYXIgPSAxOTY5OyB5ZWFyID49IDA7IHllYXItLSAp
IHsKLSAgICAgICAgdGltZSAtPSBUaW1lSW5ZZWFyKHllYXIpOwotICAgIH0KICAgICAvLyBnZXQg
dGltZSBmb3IgMjkgZmViIDIwMDAKIAogICAgIHZhciBVVENfRkVCXzI5XzIwMDAgPSBUSU1FXzIw
MDAgKyAzMSptc1BlckRheSArIDI4Km1zUGVySG91cjsKQEAgLTU5LDcgKzU1LDcgQEAKICAgICBU
aW1lSW5ZZWFyKDIwMDIpK1RpbWVJblllYXIoMjAwMykrVGltZUluWWVhcigyMDA0KTsKIAogICAg
IGFkZFRlc3RDYXNlKCBub3cgKTsKLSAgICBhZGRUZXN0Q2FzZSggdGltZSApOworICAgIGFkZFRl
c3RDYXNlKCBUSU1FX1lFQVJfMCApOwogICAgIGFkZFRlc3RDYXNlKCBUSU1FXzE5NzAgKTsKICAg
ICBhZGRUZXN0Q2FzZSggVElNRV8xOTAwICk7CiAgICAgYWRkVGVzdENhc2UoIFRJTUVfMjAwMCAp
OwpJbmRleDogSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41Ljgu
anMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9yb290L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21v
emlsbGEvZWNtYS9EYXRlLzE1LjkuNS44LmpzLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjEKZGlm
ZiAtcCAtdSAtcjEuMSBKYXZhU2NyaXB0Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45
LjUuOC5qcwotLS0gSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41
LjguanMJMTMgT2N0IDIwMDMgMDI6MDU6MjkgLTAwMDAJMS4xCisrKyBKYXZhU2NyaXB0Q29yZS90
ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuOC5qcwk4IEF1ZyAyMDA1IDAxOjAxOjA4IC0w
MDAwCkBAIC00NiwxMCArNDYsNiBAQAogICAgIC8vIGdldCB0aGUgY3VycmVudCB0aW1lCiAgICAg
dmFyIG5vdyA9IChuZXcgRGF0ZSgpKS52YWx1ZU9mKCk7CiAKLSAgICAvLyBjYWxjdWxhdGUgdGlt
ZSBmb3IgeWVhciAwCi0gICAgZm9yICggdmFyIHRpbWUgPSAwLCB5ZWFyID0gMTk2OTsgeWVhciA+
PSAwOyB5ZWFyLS0gKSB7Ci0gICAgICAgIHRpbWUgLT0gVGltZUluWWVhcih5ZWFyKTsKLSAgICB9
CiAgICAgLy8gZ2V0IHRpbWUgZm9yIDI5IGZlYiAyMDAwCiAKICAgICB2YXIgVVRDX0ZFQl8yOV8y
MDAwID0gVElNRV8yMDAwICsgMzEqbXNQZXJEYXkgKyAyOCptc1BlckhvdXI7CkBAIC02MCw3ICs1
Niw3IEBACiAgICAgVGltZUluWWVhcigyMDAyKStUaW1lSW5ZZWFyKDIwMDMpK1RpbWVJblllYXIo
MjAwNCk7CiAKICAgICBhZGRUZXN0Q2FzZSggbm93ICk7Ci0gICAgYWRkVGVzdENhc2UoIHRpbWUg
KTsKKyAgICBhZGRUZXN0Q2FzZSggVElNRV9ZRUFSXzAgKTsKICAgICBhZGRUZXN0Q2FzZSggVElN
RV8xOTcwICk7CiAgICAgYWRkVGVzdENhc2UoIFRJTUVfMTkwMCApOwogICAgIGFkZFRlc3RDYXNl
KCBUSU1FXzIwMDAgKTsKSW5kZXg6IEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNtYS9E
YXRlLzE1LjkuNS45LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9jdnMvcm9vdC9KYXZhU2NyaXB0
Q29yZS90ZXN0cy9tb3ppbGxhL2VjbWEvRGF0ZS8xNS45LjUuOS5qcyx2CnJldHJpZXZpbmcgcmV2
aXNpb24gMS4xCmRpZmYgLXAgLXUgLXIxLjEgSmF2YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9l
Y21hL0RhdGUvMTUuOS41LjkuanMKLS0tIEphdmFTY3JpcHRDb3JlL3Rlc3RzL21vemlsbGEvZWNt
YS9EYXRlLzE1LjkuNS45LmpzCTEzIE9jdCAyMDAzIDAyOjA1OjI5IC0wMDAwCTEuMQorKysgSmF2
YVNjcmlwdENvcmUvdGVzdHMvbW96aWxsYS9lY21hL0RhdGUvMTUuOS41LjkuanMJOCBBdWcgMjAw
NSAwMTowMTowOCAtMDAwMApAQCAtNDYsMTAgKzQ2LDYgQEAKICAgICAvLyBnZXQgdGhlIGN1cnJl
bnQgdGltZQogICAgIHZhciBub3cgPSAobmV3IERhdGUoKSkudmFsdWVPZigpOwogCi0gICAgLy8g
Y2FsY3VsYXRlIHRpbWUgZm9yIHllYXIgMAotICAgIGZvciAoIHZhciB0aW1lID0gMCwgeWVhciA9
IDE5Njk7IHllYXIgPj0gMDsgeWVhci0tICkgewotICAgICAgICB0aW1lIC09IFRpbWVJblllYXIo
eWVhcik7Ci0gICAgfQogICAgIC8vIGdldCB0aW1lIGZvciAyOSBmZWIgMjAwMAogCiAgICAgdmFy
IFVUQ19GRUJfMjlfMjAwMCA9IFRJTUVfMjAwMCArIDMxKm1zUGVyRGF5ICsgMjgqbXNQZXJIb3Vy
OwpAQCAtNjAsNyArNTYsNyBAQAogICAgIFRpbWVJblllYXIoMjAwMikrVGltZUluWWVhcigyMDAz
KStUaW1lSW5ZZWFyKDIwMDQpOwogCiAgICAgYWRkVGVzdENhc2UoIG5vdyApOwotICAgIGFkZFRl
c3RDYXNlKCB0aW1lICk7CisgICAgYWRkVGVzdENhc2UoIFRJTUVfWUVBUl8wICk7CiAgICAgYWRk
VGVzdENhc2UoIFRJTUVfMTk3MCApOwogICAgIGFkZFRlc3RDYXNlKCBUSU1FXzE5MDAgKTsKICAg
ICBhZGRUZXN0Q2FzZSggVElNRV8yMDAwICk7Cg==
</data>
<flag name="review"
          id="330"
          type_id="1"
          status="+"
          setter="sullivan"
    />
          </attachment>
      

    </bug>

</bugzilla>