<?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>236886</bug_id>
          
          <creation_ts>2022-02-19 11:18:47 -0800</creation_ts>
          <short_desc>[JSC] Add CalendarDateTime parsing</short_desc>
          <delta_ts>2022-02-21 09:58:18 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>dino</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1843875</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2022-02-19 11:18:47 -0800</bug_when>
    <thetext>[JSC] Add CalendarDateTime parsing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1843876</commentid>
    <comment_count>1</comment_count>
      <attachid>452646</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2022-02-19 11:19:17 -0800</bug_when>
    <thetext>Created attachment 452646
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1843884</commentid>
    <comment_count>2</comment_count>
      <attachid>452648</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2022-02-19 12:00:43 -0800</bug_when>
    <thetext>Created attachment 452648
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844033</commentid>
    <comment_count>3</comment_count>
      <attachid>452683</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2022-02-20 00:50:31 -0800</bug_when>
    <thetext>Created attachment 452683
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844245</commentid>
    <comment_count>4</comment_count>
      <attachid>452683</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2022-02-21 09:47:14 -0800</bug_when>
    <thetext>Comment on attachment 452683
Patch

thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844249</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-02-21 09:57:21 -0800</bug_when>
    <thetext>Committed r290248 (?): &lt;https://commits.webkit.org/r290248&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 452683.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844250</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-02-21 09:58:18 -0800</bug_when>
    <thetext>&lt;rdar://problem/89241810&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>452646</attachid>
            <date>2022-02-19 11:19:17 -0800</date>
            <delta_ts>2022-02-19 12:05:21 -0800</delta_ts>
            <desc>WIP</desc>
            <filename>bug-236886-20220219111916.patch</filename>
            <type>text/plain</type>
            <size>11766</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwMjA5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBl
YTZiMjk0MWQ2MmIwMzNiMjE1ZjBlZTFhOTQ3MTNjMmQwZjY5ZGIxLi5hMTY5MGI0MzZlN2NjMjE2
ZDI5YWU1NjUzYmU0MWI2NjA1MDkwNzIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxOSBAQAorMjAyMi0wMi0xOSAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIEFkZCBDYWxlbmRhckRhdGVUaW1lIHBhcnNpbmcKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNjg4NgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogcnVudGltZS9JU084NjAx
LmNwcDoKKyAgICAgICAgKEpTQzo6SVNPODYwMTo6Y2FuQmVDYWxlbmRhcik6CisgICAgICAgIChK
U0M6OklTTzg2MDE6OmNhbkJlVGltZVpvbmUpOgorICAgICAgICAoSlNDOjpJU084NjAxOjpwYXJz
ZVRpbWVab25lQnJhY2tldGVkQW5ub3RhdGlvbik6CisgICAgICAgIChKU0M6OklTTzg2MDE6OnBh
cnNlQ2FsZW5kYXIpOgorICAgICAgICAoSlNDOjpJU084NjAxOjpwYXJzZUNhbGVuZGFyRGF0ZVRp
bWUpOgorICAgICAgICAoSlNDOjpJU084NjAxOjpwYXJzZURhdGVUaW1lKToKKyAgICAgICAgKiBy
dW50aW1lL0lTTzg2MDEuaDoKKwogMjAyMi0wMi0xOSAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBs
ZS5jb20+CiAKICAgICAgICAgW0pTQ10gSW1wbGVtZW50IFRlbXBvcmFsLlBsYWluRGF0ZQpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSVNPODYwMS5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JU084NjAxLmNwcAppbmRleCBiZGMzZmE3NjNjNWJm
OGJmZDc4YzI5OGQyMjc4N2NhMjg2ZDJmYTQyLi5kZjllMDk1YjEyNWI0OTJjZmQ2NWU4MWNjOWI5
ZDE3NzM0OGJhOTQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
U084NjAxLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JU084NjAxLmNw
cApAQCAtNDMyLDYgKzQzMiw0NCBAQCBzdGQ6Om9wdGlvbmFsPGludDY0X3Q+IHBhcnNlVGltZVpv
bmVOdW1lcmljVVRDT2Zmc2V0KFN0cmluZ1ZpZXcgc3RyaW5nKQogICAgIH0pOwogfQogCit0ZW1w
bGF0ZTx0eXBlbmFtZSBDaGFyYWN0ZXJUeXBlPgorc3RhdGljIGJvb2wgY2FuQmVDYWxlbmRhcihj
b25zdCBTdHJpbmdQYXJzaW5nQnVmZmVyPENoYXJhY3RlclR5cGU+JiBidWZmZXIpCit7CisgICAg
Ly8gaHR0cHM6Ly90YzM5LmVzL3Byb3Bvc2FsLXRlbXBvcmFsLyNwcm9kLUNhbGVuZGFyCisgICAg
Ly8gQ2FsZW5kYXIgOgorICAgIC8vICAgICBbdS1jYT0gQ2FsZW5kYXJOYW1lXQorICAgIHJldHVy
biBidWZmZXIubGVuZ3RoUmVtYWluaW5nKCkgPj0gNiAmJiBidWZmZXJbMF0gPT0gJ1snICYmIGJ1
ZmZlclsxXSA9PSAndScgJiYgYnVmZmVyWzJdID09ICctJyAmJiBidWZmZXJbM10gPT0gJ2MnICYm
IGJ1ZmZlcls0XSA9PSAnYScgJiYgYnVmZmVyWzVdID09ICc9JzsKK30KKwordGVtcGxhdGU8dHlw
ZW5hbWUgQ2hhcmFjdGVyVHlwZT4KK3N0YXRpYyBib29sIGNhbkJlVGltZVpvbmUoY29uc3QgU3Ry
aW5nUGFyc2luZ0J1ZmZlcjxDaGFyYWN0ZXJUeXBlPiYgYnVmZmVyLCBDaGFyYWN0ZXJUeXBlIGNo
YXJhY3RlcikKK3sKKyAgICBzd2l0Y2ggKHN0YXRpY19jYXN0PFVDaGFyPihjaGFyYWN0ZXIpKSB7
CisgICAgLy8gVVRDRGVzaWduYXRvcgorICAgIC8vIGh0dHBzOi8vdGMzOS5lcy9wcm9wb3NhbC10
ZW1wb3JhbC8jcHJvZC1VVENEZXNpZ25hdG9yCisgICAgY2FzZSAneic6CisgICAgY2FzZSAnWic6
CisgICAgLy8gVGltZVpvbmVVVENPZmZzZXRTaWduCisgICAgLy8gaHR0cHM6Ly90YzM5LmVzL3By
b3Bvc2FsLXRlbXBvcmFsLyNwcm9kLVRpbWVab25lVVRDT2Zmc2V0U2lnbgorICAgIGNhc2UgJysn
OgorICAgIGNhc2UgJy0nOgorICAgIGNhc2UgbWludXNTaWduOgorICAgIC8vIFRpbWVab25lQnJh
Y2tldGVkQW5ub3RhdGlvbgorICAgIC8vIGh0dHBzOi8vdGMzOS5lcy9wcm9wb3NhbC10ZW1wb3Jh
bC8jcHJvZC1UaW1lWm9uZUJyYWNrZXRlZEFubm90YXRpb24KKyAgICBjYXNlICdbJzogeworICAg
ICAgICAvLyBXZSBzaG91bGQgcmVqZWN0IGNhbGVuZGFyIGV4dGVuc2lvbiBjYXNlLgorICAgICAg
ICAvLyBodHRwczovL3RjMzkuZXMvcHJvcG9zYWwtdGVtcG9yYWwvI3Byb2QtQ2FsZW5kYXIKKyAg
ICAgICAgLy8gQ2FsZW5kYXIgOgorICAgICAgICAvLyAgICAgW3UtY2E9IENhbGVuZGFyTmFtZV0K
KyAgICAgICAgaWYgKGNhbkJlQ2FsZW5kYXIoYnVmZmVyKSkKKyAgICAgICAgICAgIHJldHVybiBm
YWxzZTsKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQorICAgIGRlZmF1bHQ6CisgICAgICAg
IHJldHVybiBmYWxzZTsKKyAgICB9Cit9CisKIHRlbXBsYXRlPHR5cGVuYW1lIENoYXJhY3RlclR5
cGU+CiBzdGF0aWMgc3RkOjpvcHRpb25hbDxzdGQ6OnZhcmlhbnQ8VmVjdG9yPExDaGFyPiwgaW50
NjRfdD4+IHBhcnNlVGltZVpvbmVCcmFja2V0ZWRBbm5vdGF0aW9uKFN0cmluZ1BhcnNpbmdCdWZm
ZXI8Q2hhcmFjdGVyVHlwZT4mIGJ1ZmZlcikKIHsKQEAgLTQ0Nyw2ICs0ODUsOSBAQCBzdGF0aWMg
c3RkOjpvcHRpb25hbDxzdGQ6OnZhcmlhbnQ8VmVjdG9yPExDaGFyPiwgaW50NjRfdD4+IHBhcnNl
VGltZVpvbmVCcmFja2V0ZQogICAgIGlmIChidWZmZXIubGVuZ3RoUmVtYWluaW5nKCkgPCAzKQog
ICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwogCisgICAgaWYgKGNhbkJlQ2FsZW5kYXIoYnVm
ZmVyKSkKKyAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKKwogICAgIGlmICgqYnVmZmVyICE9
ICdbJykKICAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKICAgICBidWZmZXIuYWR2YW5jZSgp
OwpAQCAtNTg0LDM1ICs2MjUsNiBAQCBzdGF0aWMgc3RkOjpvcHRpb25hbDxzdGQ6OnZhcmlhbnQ8
VmVjdG9yPExDaGFyPiwgaW50NjRfdD4+IHBhcnNlVGltZVpvbmVCcmFja2V0ZQogICAgIH0KIH0K
IAotdGVtcGxhdGU8dHlwZW5hbWUgQ2hhcmFjdGVyVHlwZT4KLXN0YXRpYyBib29sIGNhbkJlVGlt
ZVpvbmUoY29uc3QgU3RyaW5nUGFyc2luZ0J1ZmZlcjxDaGFyYWN0ZXJUeXBlPiYgYnVmZmVyLCBD
aGFyYWN0ZXJUeXBlIGNoYXJhY3RlcikKLXsKLSAgICBzd2l0Y2ggKHN0YXRpY19jYXN0PFVDaGFy
PihjaGFyYWN0ZXIpKSB7Ci0gICAgLy8gVVRDRGVzaWduYXRvcgotICAgIC8vIGh0dHBzOi8vdGMz
OS5lcy9wcm9wb3NhbC10ZW1wb3JhbC8jcHJvZC1VVENEZXNpZ25hdG9yCi0gICAgY2FzZSAneic6
Ci0gICAgY2FzZSAnWic6Ci0gICAgLy8gVGltZVpvbmVVVENPZmZzZXRTaWduCi0gICAgLy8gaHR0
cHM6Ly90YzM5LmVzL3Byb3Bvc2FsLXRlbXBvcmFsLyNwcm9kLVRpbWVab25lVVRDT2Zmc2V0U2ln
bgotICAgIGNhc2UgJysnOgotICAgIGNhc2UgJy0nOgotICAgIGNhc2UgbWludXNTaWduOgotICAg
IC8vIFRpbWVab25lQnJhY2tldGVkQW5ub3RhdGlvbgotICAgIC8vIGh0dHBzOi8vdGMzOS5lcy9w
cm9wb3NhbC10ZW1wb3JhbC8jcHJvZC1UaW1lWm9uZUJyYWNrZXRlZEFubm90YXRpb24KLSAgICBj
YXNlICdbJzogewotICAgICAgICAvLyBXZSBzaG91bGQgcmVqZWN0IGNhbGVuZGFyIGV4dGVuc2lv
biBjYXNlLgotICAgICAgICAvLyBodHRwczovL3RjMzkuZXMvcHJvcG9zYWwtdGVtcG9yYWwvI3By
b2QtQ2FsZW5kYXIKLSAgICAgICAgLy8gQ2FsZW5kYXIgOgotICAgICAgICAvLyAgICAgW3UtY2E9
IENhbGVuZGFyTmFtZV0KLSAgICAgICAgaWYgKGJ1ZmZlci5sZW5ndGhSZW1haW5pbmcoKSA+PSA2
ICYmIGJ1ZmZlclsxXSA9PSAndScgJiYgYnVmZmVyWzJdID09ICctJyAmJiBidWZmZXJbM10gPT0g
J2MnICYmIGJ1ZmZlcls0XSA9PSAnYScgJiYgYnVmZmVyWzVdID09ICc9JykKLSAgICAgICAgICAg
IHJldHVybiBmYWxzZTsKLSAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgfQotICAgIGRlZmF1bHQ6
Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICB9Ci19Ci0KIHRlbXBsYXRlPHR5cGVuYW1lIENo
YXJhY3RlclR5cGU+CiBzdGF0aWMgc3RkOjpvcHRpb25hbDxUaW1lWm9uZVJlY29yZD4gcGFyc2VU
aW1lWm9uZShTdHJpbmdQYXJzaW5nQnVmZmVyPENoYXJhY3RlclR5cGU+JiBidWZmZXIpCiB7CkBA
IC02NjEsNiArNjczLDk3IEBAIHN0YXRpYyBzdGQ6Om9wdGlvbmFsPFRpbWVab25lUmVjb3JkPiBw
YXJzZVRpbWVab25lKFN0cmluZ1BhcnNpbmdCdWZmZXI8Q2hhcmFjdGVyCiAgICAgfQogfQogCit0
ZW1wbGF0ZTx0eXBlbmFtZSBDaGFyYWN0ZXJUeXBlPgorc3RhdGljIHN0ZDo6b3B0aW9uYWw8Q2Fs
ZW5kYXJSZWNvcmQ+IHBhcnNlQ2FsZW5kYXIoU3RyaW5nUGFyc2luZ0J1ZmZlcjxDaGFyYWN0ZXJU
eXBlPiYgYnVmZmVyKQoreworICAgIC8vIGh0dHBzOi8vdGMzOS5lcy9wcm9wb3NhbC10ZW1wb3Jh
bC8jcHJvZC1UaW1lWm9uZUJyYWNrZXRlZEFubm90YXRpb24KKyAgICAvLyBDYWxlbmRhciA6Cisg
ICAgLy8gICAgIFt1LWNhPSBDYWxlbmRhck5hbWUgXQorICAgIC8vCisgICAgLy8gQ2FsZW5kYXJO
YW1lIDoKKyAgICAvLyAgICAgQ2FsZW5kYXJOYW1lQ29tcG9uZW50CisgICAgLy8gICAgIENhbGVu
ZGFyTmFtZUNvbXBvbmVudCAtIENhbGVuZGFyTmFtZQorICAgIC8vCisgICAgLy8gQ2FsZW5kYXJO
YW1lQ29tcG9uZW50IDoKKyAgICAvLyAgICAgQ2FsQ2hhciBDYWxDaGFyIENhbENoYXIgQ2FsQ2hh
cltvcHRdIENhbENoYXJbb3B0XSBDYWxDaGFyW29wdF0gQ2FsQ2hhcltvcHRdIENhbENoYXJbb3B0
XQorICAgIC8vCisgICAgLy8gQ2FsQ2hhciA6CisgICAgLy8gICAgIEFscGhhCisgICAgLy8gICAg
IERpZ2l0CisKKyAgICBpZiAoIWNhbkJlQ2FsZW5kYXIoYnVmZmVyKSkKKyAgICAgICAgcmV0dXJu
IHN0ZDo6bnVsbG9wdDsKKyAgICBidWZmZXIuYWR2YW5jZUJ5KDYpOworCisgICAgaWYgKCFidWZm
ZXIuYXRFbmQoKSkKKyAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKKworICAgIHVuc2lnbmVk
IG5hbWVMZW5ndGggPSAwOworICAgIHsKKyAgICAgICAgdW5zaWduZWQgaW5kZXggPSAwOworICAg
ICAgICBmb3IgKDsgaW5kZXggPCBidWZmZXIubGVuZ3RoUmVtYWluaW5nKCk7ICsraW5kZXgpIHsK
KyAgICAgICAgICAgIGF1dG8gY2hhcmFjdGVyID0gYnVmZmVyW2luZGV4XTsKKyAgICAgICAgICAg
IGlmIChjaGFyYWN0ZXIgPT0gJ10nKQorICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAg
ICAgaWYgKCFpc0FTQ0lJQWxwaGEoY2hhcmFjdGVyKSAmJiAhaXNBU0NJSURpZ2l0KGNoYXJhY3Rl
cikgJiYgY2hhcmFjdGVyICE9ICctJykKKyAgICAgICAgICAgICAgICByZXR1cm4gc3RkOjpudWxs
b3B0OworICAgICAgICB9CisgICAgICAgIGlmICghaW5kZXgpCisgICAgICAgICAgICByZXR1cm4g
c3RkOjpudWxsb3B0OworICAgICAgICBuYW1lTGVuZ3RoID0gaW5kZXg7CisgICAgfQorCisgICAg
YXV0byBpc1ZhbGlkQ29tcG9uZW50ID0gWyZdKHVuc2lnbmVkIHN0YXJ0LCB1bnNpZ25lZCBlbmQp
IHsKKyAgICAgICAgdW5zaWduZWQgY29tcG9uZW50TGVuZ3RoID0gZW5kIC0gc3RhcnQ7CisgICAg
ICAgIGlmIChjb21wb25lbnRMZW5ndGggPCAzKQorICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwor
ICAgICAgICBpZiAoY29tcG9uZW50TGVuZ3RoID4gOCkKKyAgICAgICAgICAgIHJldHVybiBmYWxz
ZTsKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfTsKKworICAgIHVuc2lnbmVkIGN1cnJlbnRO
YW1lQ29tcG9uZW50U3RhcnRJbmRleCA9IDA7CisgICAgYm9vbCBpc0xlYWRpbmdDaGFyYWN0ZXJJ
bk5hbWVDb21wb25lbnQgPSB0cnVlOworICAgIGZvciAodW5zaWduZWQgaW5kZXggPSAwOyBpbmRl
eCA8IG5hbWVMZW5ndGg7ICsraW5kZXgpIHsKKyAgICAgICAgYXV0byBjaGFyYWN0ZXIgPSBidWZm
ZXJbaW5kZXhdOworICAgICAgICBpZiAoaXNMZWFkaW5nQ2hhcmFjdGVySW5OYW1lQ29tcG9uZW50
KSB7CisgICAgICAgICAgICBpZiAoIShpc0FTQ0lJQWxwaGEoY2hhcmFjdGVyKSB8fCBpc0FTQ0lJ
RGlnaXQoY2hhcmFjdGVyKSkpCisgICAgICAgICAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsK
KworICAgICAgICAgICAgY3VycmVudE5hbWVDb21wb25lbnRTdGFydEluZGV4ID0gaW5kZXg7Cisg
ICAgICAgICAgICBpc0xlYWRpbmdDaGFyYWN0ZXJJbk5hbWVDb21wb25lbnQgPSBmYWxzZTsKKyAg
ICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICB9CisKKyAgICAgICAgaWYgKGNoYXJhY3RlciA9
PSAnLScpIHsKKyAgICAgICAgICAgIGlmICghaXNWYWxpZENvbXBvbmVudChjdXJyZW50TmFtZUNv
bXBvbmVudFN0YXJ0SW5kZXgsIGluZGV4KSkKKyAgICAgICAgICAgICAgICByZXR1cm4gc3RkOjpu
dWxsb3B0OworICAgICAgICAgICAgaXNMZWFkaW5nQ2hhcmFjdGVySW5OYW1lQ29tcG9uZW50ID0g
dHJ1ZTsKKyAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICB9CisKKyAgICAgICAgaWYgKCEo
aXNBU0NJSUFscGhhKGNoYXJhY3RlcikgfHwgaXNBU0NJSURpZ2l0KGNoYXJhY3RlcikpKQorICAg
ICAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKKyAgICB9CisgICAgaWYgKGlzTGVhZGluZ0No
YXJhY3RlckluTmFtZUNvbXBvbmVudCkKKyAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKKyAg
ICBpZiAoIWlzVmFsaWRDb21wb25lbnQoY3VycmVudE5hbWVDb21wb25lbnRTdGFydEluZGV4LCBu
YW1lTGVuZ3RoKSkKKyAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKKworICAgIFZlY3RvcjxM
Q2hhcj4gcmVzdWx0OworICAgIHJlc3VsdC5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KG5hbWVMZW5n
dGgpOworICAgIGZvciAodW5zaWduZWQgaW5kZXggPSAwOyBpbmRleCA8IG5hbWVMZW5ndGg7ICsr
aW5kZXgpCisgICAgICAgIHJlc3VsdC51bmNoZWNrZWRBcHBlbmQoYnVmZmVyW2luZGV4XSk7Cisg
ICAgYnVmZmVyLmFkdmFuY2VCeShuYW1lTGVuZ3RoKTsKKworICAgIGlmIChidWZmZXIuYXRFbmQo
KSkKKyAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKKyAgICBpZiAoKmJ1ZmZlciAhPSAnXScp
CisgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisgICAgYnVmZmVyLmFkdmFuY2UoKTsKKyAg
ICByZXR1cm4gQ2FsZW5kYXJSZWNvcmQgeyBXVEZNb3ZlKHJlc3VsdCkgfTsKK30KKwogdGVtcGxh
dGU8dHlwZW5hbWUgQ2hhcmFjdGVyVHlwZT4KIHN0YXRpYyBzdGQ6Om9wdGlvbmFsPHN0ZDo6dHVw
bGU8UGxhaW5UaW1lLCBzdGQ6Om9wdGlvbmFsPFRpbWVab25lUmVjb3JkPj4+IHBhcnNlVGltZShT
dHJpbmdQYXJzaW5nQnVmZmVyPENoYXJhY3RlclR5cGU+JiBidWZmZXIpCiB7CkBAIC04NjAsNiAr
OTYzLDI5IEBAIHN0YXRpYyBzdGQ6Om9wdGlvbmFsPHN0ZDo6dHVwbGU8UGxhaW5EYXRlLCBzdGQ6
Om9wdGlvbmFsPFBsYWluVGltZT4sIHN0ZDo6b3B0aW9uCiAgICAgcmV0dXJuIHN0ZDo6dHVwbGUg
eyBwbGFpbkRhdGUudmFsdWUoKSwgc3RkOjpudWxsb3B0LCBzdGQ6Om51bGxvcHQgfTsKIH0KIAor
dGVtcGxhdGU8dHlwZW5hbWUgQ2hhcmFjdGVyVHlwZT4KK3N0YXRpYyBzdGQ6Om9wdGlvbmFsPHN0
ZDo6dHVwbGU8UGxhaW5EYXRlLCBzdGQ6Om9wdGlvbmFsPFBsYWluVGltZT4sIHN0ZDo6b3B0aW9u
YWw8VGltZVpvbmVSZWNvcmQ+LCBzdGQ6Om9wdGlvbmFsPENhbGVuZGFyUmVjb3JkPj4+IHBhcnNl
Q2FsZW5kYXJEYXRlVGltZShTdHJpbmdQYXJzaW5nQnVmZmVyPENoYXJhY3RlclR5cGU+JiBidWZm
ZXIpCit7CisgICAgLy8gaHR0cHM6Ly90YzM5LmVzL3Byb3Bvc2FsLXRlbXBvcmFsLyNwcm9kLURh
dGVUaW1lCisgICAgLy8gQ2FsZW5kYXJEYXRlVGltZSA6CisgICAgLy8gICAgIERhdGVUaW1lIENh
bGVuZGFyTmFtZVtvcHRdCisgICAgLy8KKyAgICBhdXRvIGRhdGVUaW1lID0gcGFyc2VEYXRlVGlt
ZShidWZmZXIpOworICAgIGlmICghZGF0ZVRpbWUpCisgICAgICAgIHJldHVybiBzdGQ6Om51bGxv
cHQ7CisKKyAgICBhdXRvIFtwbGFpbkRhdGUsIHBsYWluVGltZU9wdGlvbmFsLCB0aW1lWm9uZU9w
dGlvbmFsXSA9IGRhdGVUaW1lLnZhbHVlKCk7CisKKyAgICBpZiAoIWJ1ZmZlci5hdEVuZCgpICYm
IGNhbkJlQ2FsZW5kYXIoYnVmZmVyKSkgeworICAgICAgICBhdXRvIGNhbGVuZGFyID0gcGFyc2VD
YWxlbmRhcihidWZmZXIpOworICAgICAgICBpZiAoIWNhbGVuZGFyKQorICAgICAgICAgICAgcmV0
dXJuIHN0ZDo6bnVsbG9wdDsKKyAgICAgICAgcmV0dXJuIHN0ZDo6dHVwbGUgeyBwbGFpbkRhdGUs
IHBsYWluVGltZU9wdGlvbmFsLCB0aW1lWm9uZU9wdGlvbmFsLCBjYWxlbmRhciB9OworICAgIH0K
KworICAgIHJldHVybiBzdGQ6OnR1cGxlIHsgcGxhaW5EYXRlLCBwbGFpblRpbWVPcHRpb25hbCwg
dGltZVpvbmVPcHRpb25hbCwgc3RkOjpudWxsb3B0IH07Cit9CisKIHN0ZDo6b3B0aW9uYWw8c3Rk
Ojp0dXBsZTxQbGFpblRpbWUsIHN0ZDo6b3B0aW9uYWw8VGltZVpvbmVSZWNvcmQ+Pj4gcGFyc2VU
aW1lKFN0cmluZ1ZpZXcgc3RyaW5nKQogewogICAgIHJldHVybiByZWFkQ2hhcmFjdGVyc0ZvclBh
cnNpbmcoc3RyaW5nLCBbXShhdXRvIGJ1ZmZlcikgLT4gc3RkOjpvcHRpb25hbDxzdGQ6OnR1cGxl
PFBsYWluVGltZSwgc3RkOjpvcHRpb25hbDxUaW1lWm9uZVJlY29yZD4+PiB7CkBAIC04ODAsNiAr
MTAwNiwxNiBAQCBzdGQ6Om9wdGlvbmFsPHN0ZDo6dHVwbGU8UGxhaW5EYXRlLCBzdGQ6Om9wdGlv
bmFsPFBsYWluVGltZT4sIHN0ZDo6b3B0aW9uYWw8VGltZQogICAgIH0pOwogfQogCitzdGQ6Om9w
dGlvbmFsPHN0ZDo6dHVwbGU8UGxhaW5EYXRlLCBzdGQ6Om9wdGlvbmFsPFBsYWluVGltZT4sIHN0
ZDo6b3B0aW9uYWw8VGltZVpvbmVSZWNvcmQ+LCBzdGQ6Om9wdGlvbmFsPENhbGVuZGFyUmVjb3Jk
Pj4+IHBhcnNlQ2FsZW5kYXJEYXRlVGltZShTdHJpbmdWaWV3IHN0cmluZykKK3sKKyAgICByZXR1
cm4gcmVhZENoYXJhY3RlcnNGb3JQYXJzaW5nKHN0cmluZywgW10oYXV0byBidWZmZXIpIC0+IHN0
ZDo6b3B0aW9uYWw8c3RkOjp0dXBsZTxQbGFpbkRhdGUsIHN0ZDo6b3B0aW9uYWw8UGxhaW5UaW1l
Piwgc3RkOjpvcHRpb25hbDxUaW1lWm9uZVJlY29yZD4sIHN0ZDo6b3B0aW9uYWw8Q2FsZW5kYXJS
ZWNvcmQ+Pj4geworICAgICAgICBhdXRvIHJlc3VsdCA9IHBhcnNlQ2FsZW5kYXJEYXRlVGltZShi
dWZmZXIpOworICAgICAgICBpZiAoIWJ1ZmZlci5hdEVuZCgpKQorICAgICAgICAgICAgcmV0dXJu
IHN0ZDo6bnVsbG9wdDsKKyAgICAgICAgcmV0dXJuIHJlc3VsdDsKKyAgICB9KTsKK30KKwogc3Rk
OjpvcHRpb25hbDxFeGFjdFRpbWU+IHBhcnNlSW5zdGFudChTdHJpbmdWaWV3IHN0cmluZykKIHsK
ICAgICAvLyBodHRwczovL3RjMzkuZXMvcHJvcG9zYWwtdGVtcG9yYWwvI3Byb2QtVGVtcG9yYWxJ
bnN0YW50U3RyaW5nCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
U084NjAxLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JU084NjAxLmgKaW5kZXgg
MjY1MGU5YzAxYTRjYmRiZDMxMGY5MWYyMmYxYTkxZDdiZjdlNmM2Ny4uMGYxYTliM2Q1NWI5M2Y5
N2FhODRkOWVlNTQ2MTVhNjdjMDUwOWJmMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSVNPODYwMS5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0lTTzg2MDEuaApAQCAtMjQ3LDcgKzI0NywxMyBAQCBzdGF0aWNfYXNzZXJ0KHNpemVvZihQbGFp
blRpbWUpIDw9IHNpemVvZih1aW50NjRfdCkpOwogY2xhc3MgUGxhaW5EYXRlIHsKICAgICBXVEZf
TUFLRV9GQVNUX0FMTE9DQVRFRChQbGFpbkRhdGUpOwogcHVibGljOgotICAgIGNvbnN0ZXhwciBQ
bGFpbkRhdGUoKSA9IGRlZmF1bHQ7CisgICAgY29uc3RleHByIFBsYWluRGF0ZSgpCisgICAgICAg
IDogbV95ZWFyKDApCisgICAgICAgICwgbV9tb250aCgxKQorICAgICAgICAsIG1fZGF5KDEpCisg
ICAgeworICAgIH0KKwogICAgIGNvbnN0ZXhwciBQbGFpbkRhdGUoaW50MzJfdCB5ZWFyLCB1bnNp
Z25lZCBtb250aCwgdW5zaWduZWQgZGF5KQogICAgICAgICA6IG1feWVhcih5ZWFyKQogICAgICAg
ICAsIG1fbW9udGgobW9udGgpCkBAIC0yNjAsMTAgKzI2NiwxMyBAQCBjbGFzcyBQbGFpbkRhdGUg
ewogICAgIHVpbnQ4X3QgZGF5KCkgY29uc3QgeyByZXR1cm4gbV9kYXk7IH0KIAogcHJpdmF0ZToK
LSAgICBpbnQzMl90IG1feWVhciB7IDAgfTsKLSAgICB1aW50OF90IG1fbW9udGggeyAxIH07Ci0g
ICAgdWludDhfdCBtX2RheSB7IDEgfTsKKyAgICBpbnQzMl90IG1feWVhciA6IDIzOyAvLyBFQ01B
U2NyaXB0IG1heCAvIG1pbiBkYXRlJ3MgeWVhciBjYW4gYmUgcmVwcmVzZW50ZWQgPD0gMjAgYml0
cy4KKyAgICB1aW50OF90IG1fbW9udGggOiA0OworICAgIHVpbnQ4X3QgbV9kYXkgOiA1OwogfTsK
KyNpZiBDT01QSUxFUihHQ0NfQ09NUEFUSUJMRSkKK3N0YXRpY19hc3NlcnQoc2l6ZW9mKFBsYWlu
RGF0ZSkgPT0gc2l6ZW9mKGludDMyX3QpKTsKKyNlbmRpZgogCiB1c2luZyBUaW1lWm9uZSA9IHN0
ZDo6dmFyaWFudDxUaW1lWm9uZUlELCBpbnQ2NF90PjsKIApAQCAtMjc1LDYgKzI4NCwxMCBAQCBz
dHJ1Y3QgVGltZVpvbmVSZWNvcmQgewogICAgIHN0ZDo6dmFyaWFudDxWZWN0b3I8TENoYXI+LCBp
bnQ2NF90PiBtX25hbWVPck9mZnNldDsKIH07CiAKK3N0cnVjdCBDYWxlbmRhclJlY29yZCB7Cisg
ICAgVmVjdG9yPExDaGFyPiBtX25hbWU7Cit9OworCiAvLyBodHRwczovL3RjMzkuZXMvcHJvcG9z
YWwtdGVtcG9yYWwvI3N1cC1pc3ZhbGlkdGltZXpvbmVuYW1lCiBzdGQ6Om9wdGlvbmFsPFRpbWVa
b25lSUQ+IHBhcnNlVGltZVpvbmVOYW1lKFN0cmluZ1ZpZXcpOwogc3RkOjpvcHRpb25hbDxEdXJh
dGlvbj4gcGFyc2VEdXJhdGlvbihTdHJpbmdWaWV3KTsKQEAgLTI4Miw2ICsyOTUsNyBAQCBzdGQ6
Om9wdGlvbmFsPGludDY0X3Q+IHBhcnNlVGltZVpvbmVOdW1lcmljVVRDT2Zmc2V0KFN0cmluZ1Zp
ZXcpOwogZW51bSBjbGFzcyBWYWxpZGF0ZVRpbWVab25lSUQgeyBZZXMsIE5vIH07CiBzdGQ6Om9w
dGlvbmFsPHN0ZDo6dHVwbGU8UGxhaW5UaW1lLCBzdGQ6Om9wdGlvbmFsPFRpbWVab25lUmVjb3Jk
Pj4+IHBhcnNlVGltZShTdHJpbmdWaWV3KTsKIHN0ZDo6b3B0aW9uYWw8c3RkOjp0dXBsZTxQbGFp
bkRhdGUsIHN0ZDo6b3B0aW9uYWw8UGxhaW5UaW1lPiwgc3RkOjpvcHRpb25hbDxUaW1lWm9uZVJl
Y29yZD4+PiBwYXJzZURhdGVUaW1lKFN0cmluZ1ZpZXcpOworc3RkOjpvcHRpb25hbDxzdGQ6OnR1
cGxlPFBsYWluRGF0ZSwgc3RkOjpvcHRpb25hbDxQbGFpblRpbWU+LCBzdGQ6Om9wdGlvbmFsPFRp
bWVab25lUmVjb3JkPiwgc3RkOjpvcHRpb25hbDxDYWxlbmRhclJlY29yZD4+PiBwYXJzZUNhbGVu
ZGFyRGF0ZVRpbWUoU3RyaW5nVmlldyk7CiBTdHJpbmcgZm9ybWF0VGltZVpvbmVPZmZzZXRTdHJp
bmcoaW50NjRfdCk7CiBTdHJpbmcgdGVtcG9yYWxUaW1lVG9TdHJpbmcoUGxhaW5UaW1lLCBzdGQ6
OnR1cGxlPFByZWNpc2lvbiwgdW5zaWduZWQ+IHByZWNpc2lvbik7CiBTdHJpbmcgdGVtcG9yYWxE
YXRlVG9TdHJpbmcoUGxhaW5EYXRlKTsK
</data>
<flag name="commit-queue"
          id="479760"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>452648</attachid>
            <date>2022-02-19 12:00:43 -0800</date>
            <delta_ts>2022-02-20 00:50:29 -0800</delta_ts>
            <desc>WIP</desc>
            <filename>bug-236886-20220219120043.patch</filename>
            <type>text/plain</type>
            <size>16218</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwMjA5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBl
YTZiMjk0MWQ2MmIwMzNiMjE1ZjBlZTFhOTQ3MTNjMmQwZjY5ZGIxLi43YWYzZGExMTc4MDc1MjE5
MDFiNjM3MmZiOWY1MjFjNGQzY2EyZTk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMSBAQAorMjAyMi0wMi0xOSAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIEFkZCBDYWxlbmRhckRhdGVUaW1lIHBhcnNpbmcKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNjg4NgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogcnVudGltZS9JU084NjAx
LmNwcDoKKyAgICAgICAgKEpTQzo6SVNPODYwMTo6Y2FuQmVDYWxlbmRhcik6CisgICAgICAgIChK
U0M6OklTTzg2MDE6OmNhbkJlVGltZVpvbmUpOgorICAgICAgICAoSlNDOjpJU084NjAxOjpwYXJz
ZVRpbWVab25lQnJhY2tldGVkQW5ub3RhdGlvbik6CisgICAgICAgIChKU0M6OklTTzg2MDE6OnBh
cnNlQ2FsZW5kYXIpOgorICAgICAgICAoSlNDOjpJU084NjAxOjpwYXJzZUNhbGVuZGFyRGF0ZVRp
bWUpOgorICAgICAgICAoSlNDOjpJU084NjAxOjpwYXJzZUluc3RhbnQpOgorICAgICAgICAqIHJ1
bnRpbWUvSVNPODYwMS5oOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxQbGFpbkRhdGUuY3Bw
OgorICAgICAgICAoSlNDOjpUZW1wb3JhbFBsYWluRGF0ZTo6ZnJvbSk6CisKIDIwMjItMDItMTkg
IERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgogCiAgICAgICAgIFtKU0NdIEltcGxlbWVu
dCBUZW1wb3JhbC5QbGFpbkRhdGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0lTTzg2MDEuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSVNPODYw
MS5jcHAKaW5kZXggYmRjM2ZhNzYzYzViZjhiZmQ3OGMyOThkMjI3ODdjYTI4NmQyZmE0Mi4uOWI3
ZmQ3ZjdkNjQyODUyYWFhNTYwMjQ5MzJjZmMzZmNiMGE2MWMyMSAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSVNPODYwMS5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSVNPODYwMS5jcHAKQEAgLTQzMiw2ICs0MzIsNDQgQEAgc3RkOjpvcHRp
b25hbDxpbnQ2NF90PiBwYXJzZVRpbWVab25lTnVtZXJpY1VUQ09mZnNldChTdHJpbmdWaWV3IHN0
cmluZykKICAgICB9KTsKIH0KIAordGVtcGxhdGU8dHlwZW5hbWUgQ2hhcmFjdGVyVHlwZT4KK3N0
YXRpYyBib29sIGNhbkJlQ2FsZW5kYXIoY29uc3QgU3RyaW5nUGFyc2luZ0J1ZmZlcjxDaGFyYWN0
ZXJUeXBlPiYgYnVmZmVyKQoreworICAgIC8vIGh0dHBzOi8vdGMzOS5lcy9wcm9wb3NhbC10ZW1w
b3JhbC8jcHJvZC1DYWxlbmRhcgorICAgIC8vIENhbGVuZGFyIDoKKyAgICAvLyAgICAgW3UtY2E9
IENhbGVuZGFyTmFtZV0KKyAgICByZXR1cm4gYnVmZmVyLmxlbmd0aFJlbWFpbmluZygpID49IDYg
JiYgYnVmZmVyWzBdID09ICdbJyAmJiBidWZmZXJbMV0gPT0gJ3UnICYmIGJ1ZmZlclsyXSA9PSAn
LScgJiYgYnVmZmVyWzNdID09ICdjJyAmJiBidWZmZXJbNF0gPT0gJ2EnICYmIGJ1ZmZlcls1XSA9
PSAnPSc7Cit9CisKK3RlbXBsYXRlPHR5cGVuYW1lIENoYXJhY3RlclR5cGU+CitzdGF0aWMgYm9v
bCBjYW5CZVRpbWVab25lKGNvbnN0IFN0cmluZ1BhcnNpbmdCdWZmZXI8Q2hhcmFjdGVyVHlwZT4m
IGJ1ZmZlciwgQ2hhcmFjdGVyVHlwZSBjaGFyYWN0ZXIpCit7CisgICAgc3dpdGNoIChzdGF0aWNf
Y2FzdDxVQ2hhcj4oY2hhcmFjdGVyKSkgeworICAgIC8vIFVUQ0Rlc2lnbmF0b3IKKyAgICAvLyBo
dHRwczovL3RjMzkuZXMvcHJvcG9zYWwtdGVtcG9yYWwvI3Byb2QtVVRDRGVzaWduYXRvcgorICAg
IGNhc2UgJ3onOgorICAgIGNhc2UgJ1onOgorICAgIC8vIFRpbWVab25lVVRDT2Zmc2V0U2lnbgor
ICAgIC8vIGh0dHBzOi8vdGMzOS5lcy9wcm9wb3NhbC10ZW1wb3JhbC8jcHJvZC1UaW1lWm9uZVVU
Q09mZnNldFNpZ24KKyAgICBjYXNlICcrJzoKKyAgICBjYXNlICctJzoKKyAgICBjYXNlIG1pbnVz
U2lnbjoKKyAgICAvLyBUaW1lWm9uZUJyYWNrZXRlZEFubm90YXRpb24KKyAgICAvLyBodHRwczov
L3RjMzkuZXMvcHJvcG9zYWwtdGVtcG9yYWwvI3Byb2QtVGltZVpvbmVCcmFja2V0ZWRBbm5vdGF0
aW9uCisgICAgY2FzZSAnWyc6IHsKKyAgICAgICAgLy8gV2Ugc2hvdWxkIHJlamVjdCBjYWxlbmRh
ciBleHRlbnNpb24gY2FzZS4KKyAgICAgICAgLy8gaHR0cHM6Ly90YzM5LmVzL3Byb3Bvc2FsLXRl
bXBvcmFsLyNwcm9kLUNhbGVuZGFyCisgICAgICAgIC8vIENhbGVuZGFyIDoKKyAgICAgICAgLy8g
ICAgIFt1LWNhPSBDYWxlbmRhck5hbWVdCisgICAgICAgIGlmIChjYW5CZUNhbGVuZGFyKGJ1ZmZl
cikpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgIHJldHVybiB0cnVlOworICAg
IH0KKyAgICBkZWZhdWx0OgorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorfQorCiB0ZW1w
bGF0ZTx0eXBlbmFtZSBDaGFyYWN0ZXJUeXBlPgogc3RhdGljIHN0ZDo6b3B0aW9uYWw8c3RkOjp2
YXJpYW50PFZlY3RvcjxMQ2hhcj4sIGludDY0X3Q+PiBwYXJzZVRpbWVab25lQnJhY2tldGVkQW5u
b3RhdGlvbihTdHJpbmdQYXJzaW5nQnVmZmVyPENoYXJhY3RlclR5cGU+JiBidWZmZXIpCiB7CkBA
IC00NDcsNiArNDg1LDkgQEAgc3RhdGljIHN0ZDo6b3B0aW9uYWw8c3RkOjp2YXJpYW50PFZlY3Rv
cjxMQ2hhcj4sIGludDY0X3Q+PiBwYXJzZVRpbWVab25lQnJhY2tldGUKICAgICBpZiAoYnVmZmVy
Lmxlbmd0aFJlbWFpbmluZygpIDwgMykKICAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKIAor
ICAgIGlmIChjYW5CZUNhbGVuZGFyKGJ1ZmZlcikpCisgICAgICAgIHJldHVybiBzdGQ6Om51bGxv
cHQ7CisKICAgICBpZiAoKmJ1ZmZlciAhPSAnWycpCiAgICAgICAgIHJldHVybiBzdGQ6Om51bGxv
cHQ7CiAgICAgYnVmZmVyLmFkdmFuY2UoKTsKQEAgLTU4NCwzNSArNjI1LDYgQEAgc3RhdGljIHN0
ZDo6b3B0aW9uYWw8c3RkOjp2YXJpYW50PFZlY3RvcjxMQ2hhcj4sIGludDY0X3Q+PiBwYXJzZVRp
bWVab25lQnJhY2tldGUKICAgICB9CiB9CiAKLXRlbXBsYXRlPHR5cGVuYW1lIENoYXJhY3RlclR5
cGU+Ci1zdGF0aWMgYm9vbCBjYW5CZVRpbWVab25lKGNvbnN0IFN0cmluZ1BhcnNpbmdCdWZmZXI8
Q2hhcmFjdGVyVHlwZT4mIGJ1ZmZlciwgQ2hhcmFjdGVyVHlwZSBjaGFyYWN0ZXIpCi17Ci0gICAg
c3dpdGNoIChzdGF0aWNfY2FzdDxVQ2hhcj4oY2hhcmFjdGVyKSkgewotICAgIC8vIFVUQ0Rlc2ln
bmF0b3IKLSAgICAvLyBodHRwczovL3RjMzkuZXMvcHJvcG9zYWwtdGVtcG9yYWwvI3Byb2QtVVRD
RGVzaWduYXRvcgotICAgIGNhc2UgJ3onOgotICAgIGNhc2UgJ1onOgotICAgIC8vIFRpbWVab25l
VVRDT2Zmc2V0U2lnbgotICAgIC8vIGh0dHBzOi8vdGMzOS5lcy9wcm9wb3NhbC10ZW1wb3JhbC8j
cHJvZC1UaW1lWm9uZVVUQ09mZnNldFNpZ24KLSAgICBjYXNlICcrJzoKLSAgICBjYXNlICctJzoK
LSAgICBjYXNlIG1pbnVzU2lnbjoKLSAgICAvLyBUaW1lWm9uZUJyYWNrZXRlZEFubm90YXRpb24K
LSAgICAvLyBodHRwczovL3RjMzkuZXMvcHJvcG9zYWwtdGVtcG9yYWwvI3Byb2QtVGltZVpvbmVC
cmFja2V0ZWRBbm5vdGF0aW9uCi0gICAgY2FzZSAnWyc6IHsKLSAgICAgICAgLy8gV2Ugc2hvdWxk
IHJlamVjdCBjYWxlbmRhciBleHRlbnNpb24gY2FzZS4KLSAgICAgICAgLy8gaHR0cHM6Ly90YzM5
LmVzL3Byb3Bvc2FsLXRlbXBvcmFsLyNwcm9kLUNhbGVuZGFyCi0gICAgICAgIC8vIENhbGVuZGFy
IDoKLSAgICAgICAgLy8gICAgIFt1LWNhPSBDYWxlbmRhck5hbWVdCi0gICAgICAgIGlmIChidWZm
ZXIubGVuZ3RoUmVtYWluaW5nKCkgPj0gNiAmJiBidWZmZXJbMV0gPT0gJ3UnICYmIGJ1ZmZlclsy
XSA9PSAnLScgJiYgYnVmZmVyWzNdID09ICdjJyAmJiBidWZmZXJbNF0gPT0gJ2EnICYmIGJ1ZmZl
cls1XSA9PSAnPScpCi0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIHJldHVybiB0
cnVlOwotICAgIH0KLSAgICBkZWZhdWx0OgotICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgfQot
fQotCiB0ZW1wbGF0ZTx0eXBlbmFtZSBDaGFyYWN0ZXJUeXBlPgogc3RhdGljIHN0ZDo6b3B0aW9u
YWw8VGltZVpvbmVSZWNvcmQ+IHBhcnNlVGltZVpvbmUoU3RyaW5nUGFyc2luZ0J1ZmZlcjxDaGFy
YWN0ZXJUeXBlPiYgYnVmZmVyKQogewpAQCAtNjYxLDYgKzY3Myw5NyBAQCBzdGF0aWMgc3RkOjpv
cHRpb25hbDxUaW1lWm9uZVJlY29yZD4gcGFyc2VUaW1lWm9uZShTdHJpbmdQYXJzaW5nQnVmZmVy
PENoYXJhY3RlcgogICAgIH0KIH0KIAordGVtcGxhdGU8dHlwZW5hbWUgQ2hhcmFjdGVyVHlwZT4K
K3N0YXRpYyBzdGQ6Om9wdGlvbmFsPENhbGVuZGFyUmVjb3JkPiBwYXJzZUNhbGVuZGFyKFN0cmlu
Z1BhcnNpbmdCdWZmZXI8Q2hhcmFjdGVyVHlwZT4mIGJ1ZmZlcikKK3sKKyAgICAvLyBodHRwczov
L3RjMzkuZXMvcHJvcG9zYWwtdGVtcG9yYWwvI3Byb2QtVGltZVpvbmVCcmFja2V0ZWRBbm5vdGF0
aW9uCisgICAgLy8gQ2FsZW5kYXIgOgorICAgIC8vICAgICBbdS1jYT0gQ2FsZW5kYXJOYW1lIF0K
KyAgICAvLworICAgIC8vIENhbGVuZGFyTmFtZSA6CisgICAgLy8gICAgIENhbGVuZGFyTmFtZUNv
bXBvbmVudAorICAgIC8vICAgICBDYWxlbmRhck5hbWVDb21wb25lbnQgLSBDYWxlbmRhck5hbWUK
KyAgICAvLworICAgIC8vIENhbGVuZGFyTmFtZUNvbXBvbmVudCA6CisgICAgLy8gICAgIENhbENo
YXIgQ2FsQ2hhciBDYWxDaGFyIENhbENoYXJbb3B0XSBDYWxDaGFyW29wdF0gQ2FsQ2hhcltvcHRd
IENhbENoYXJbb3B0XSBDYWxDaGFyW29wdF0KKyAgICAvLworICAgIC8vIENhbENoYXIgOgorICAg
IC8vICAgICBBbHBoYQorICAgIC8vICAgICBEaWdpdAorCisgICAgaWYgKCFjYW5CZUNhbGVuZGFy
KGJ1ZmZlcikpCisgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisgICAgYnVmZmVyLmFkdmFu
Y2VCeSg2KTsKKworICAgIGlmICghYnVmZmVyLmF0RW5kKCkpCisgICAgICAgIHJldHVybiBzdGQ6
Om51bGxvcHQ7CisKKyAgICB1bnNpZ25lZCBuYW1lTGVuZ3RoID0gMDsKKyAgICB7CisgICAgICAg
IHVuc2lnbmVkIGluZGV4ID0gMDsKKyAgICAgICAgZm9yICg7IGluZGV4IDwgYnVmZmVyLmxlbmd0
aFJlbWFpbmluZygpOyArK2luZGV4KSB7CisgICAgICAgICAgICBhdXRvIGNoYXJhY3RlciA9IGJ1
ZmZlcltpbmRleF07CisgICAgICAgICAgICBpZiAoY2hhcmFjdGVyID09ICddJykKKyAgICAgICAg
ICAgICAgICBicmVhazsKKyAgICAgICAgICAgIGlmICghaXNBU0NJSUFscGhhKGNoYXJhY3Rlcikg
JiYgIWlzQVNDSUlEaWdpdChjaGFyYWN0ZXIpICYmIGNoYXJhY3RlciAhPSAnLScpCisgICAgICAg
ICAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKKyAgICAgICAgfQorICAgICAgICBpZiAoIWlu
ZGV4KQorICAgICAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKKyAgICAgICAgbmFtZUxlbmd0
aCA9IGluZGV4OworICAgIH0KKworICAgIGF1dG8gaXNWYWxpZENvbXBvbmVudCA9IFsmXSh1bnNp
Z25lZCBzdGFydCwgdW5zaWduZWQgZW5kKSB7CisgICAgICAgIHVuc2lnbmVkIGNvbXBvbmVudExl
bmd0aCA9IGVuZCAtIHN0YXJ0OworICAgICAgICBpZiAoY29tcG9uZW50TGVuZ3RoIDwgMykKKyAg
ICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgaWYgKGNvbXBvbmVudExlbmd0aCA+IDgp
CisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgIHJldHVybiB0cnVlOworICAgIH07
CisKKyAgICB1bnNpZ25lZCBjdXJyZW50TmFtZUNvbXBvbmVudFN0YXJ0SW5kZXggPSAwOworICAg
IGJvb2wgaXNMZWFkaW5nQ2hhcmFjdGVySW5OYW1lQ29tcG9uZW50ID0gdHJ1ZTsKKyAgICBmb3Ig
KHVuc2lnbmVkIGluZGV4ID0gMDsgaW5kZXggPCBuYW1lTGVuZ3RoOyArK2luZGV4KSB7CisgICAg
ICAgIGF1dG8gY2hhcmFjdGVyID0gYnVmZmVyW2luZGV4XTsKKyAgICAgICAgaWYgKGlzTGVhZGlu
Z0NoYXJhY3RlckluTmFtZUNvbXBvbmVudCkgeworICAgICAgICAgICAgaWYgKCEoaXNBU0NJSUFs
cGhhKGNoYXJhY3RlcikgfHwgaXNBU0NJSURpZ2l0KGNoYXJhY3RlcikpKQorICAgICAgICAgICAg
ICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisKKyAgICAgICAgICAgIGN1cnJlbnROYW1lQ29tcG9u
ZW50U3RhcnRJbmRleCA9IGluZGV4OworICAgICAgICAgICAgaXNMZWFkaW5nQ2hhcmFjdGVySW5O
YW1lQ29tcG9uZW50ID0gZmFsc2U7CisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgfQor
CisgICAgICAgIGlmIChjaGFyYWN0ZXIgPT0gJy0nKSB7CisgICAgICAgICAgICBpZiAoIWlzVmFs
aWRDb21wb25lbnQoY3VycmVudE5hbWVDb21wb25lbnRTdGFydEluZGV4LCBpbmRleCkpCisgICAg
ICAgICAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKKyAgICAgICAgICAgIGlzTGVhZGluZ0No
YXJhY3RlckluTmFtZUNvbXBvbmVudCA9IHRydWU7CisgICAgICAgICAgICBjb250aW51ZTsKKyAg
ICAgICAgfQorCisgICAgICAgIGlmICghKGlzQVNDSUlBbHBoYShjaGFyYWN0ZXIpIHx8IGlzQVND
SUlEaWdpdChjaGFyYWN0ZXIpKSkKKyAgICAgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7Cisg
ICAgfQorICAgIGlmIChpc0xlYWRpbmdDaGFyYWN0ZXJJbk5hbWVDb21wb25lbnQpCisgICAgICAg
IHJldHVybiBzdGQ6Om51bGxvcHQ7CisgICAgaWYgKCFpc1ZhbGlkQ29tcG9uZW50KGN1cnJlbnRO
YW1lQ29tcG9uZW50U3RhcnRJbmRleCwgbmFtZUxlbmd0aCkpCisgICAgICAgIHJldHVybiBzdGQ6
Om51bGxvcHQ7CisKKyAgICBWZWN0b3I8TENoYXI+IHJlc3VsdDsKKyAgICByZXN1bHQucmVzZXJ2
ZUluaXRpYWxDYXBhY2l0eShuYW1lTGVuZ3RoKTsKKyAgICBmb3IgKHVuc2lnbmVkIGluZGV4ID0g
MDsgaW5kZXggPCBuYW1lTGVuZ3RoOyArK2luZGV4KQorICAgICAgICByZXN1bHQudW5jaGVja2Vk
QXBwZW5kKGJ1ZmZlcltpbmRleF0pOworICAgIGJ1ZmZlci5hZHZhbmNlQnkobmFtZUxlbmd0aCk7
CisKKyAgICBpZiAoYnVmZmVyLmF0RW5kKCkpCisgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7
CisgICAgaWYgKCpidWZmZXIgIT0gJ10nKQorICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0Owor
ICAgIGJ1ZmZlci5hZHZhbmNlKCk7CisgICAgcmV0dXJuIENhbGVuZGFyUmVjb3JkIHsgV1RGTW92
ZShyZXN1bHQpIH07Cit9CisKIHRlbXBsYXRlPHR5cGVuYW1lIENoYXJhY3RlclR5cGU+CiBzdGF0
aWMgc3RkOjpvcHRpb25hbDxzdGQ6OnR1cGxlPFBsYWluVGltZSwgc3RkOjpvcHRpb25hbDxUaW1l
Wm9uZVJlY29yZD4+PiBwYXJzZVRpbWUoU3RyaW5nUGFyc2luZ0J1ZmZlcjxDaGFyYWN0ZXJUeXBl
PiYgYnVmZmVyKQogewpAQCAtODYwLDYgKzk2MywyOSBAQCBzdGF0aWMgc3RkOjpvcHRpb25hbDxz
dGQ6OnR1cGxlPFBsYWluRGF0ZSwgc3RkOjpvcHRpb25hbDxQbGFpblRpbWU+LCBzdGQ6Om9wdGlv
bgogICAgIHJldHVybiBzdGQ6OnR1cGxlIHsgcGxhaW5EYXRlLnZhbHVlKCksIHN0ZDo6bnVsbG9w
dCwgc3RkOjpudWxsb3B0IH07CiB9CiAKK3RlbXBsYXRlPHR5cGVuYW1lIENoYXJhY3RlclR5cGU+
CitzdGF0aWMgc3RkOjpvcHRpb25hbDxzdGQ6OnR1cGxlPFBsYWluRGF0ZSwgc3RkOjpvcHRpb25h
bDxQbGFpblRpbWU+LCBzdGQ6Om9wdGlvbmFsPFRpbWVab25lUmVjb3JkPiwgc3RkOjpvcHRpb25h
bDxDYWxlbmRhclJlY29yZD4+PiBwYXJzZUNhbGVuZGFyRGF0ZVRpbWUoU3RyaW5nUGFyc2luZ0J1
ZmZlcjxDaGFyYWN0ZXJUeXBlPiYgYnVmZmVyKQoreworICAgIC8vIGh0dHBzOi8vdGMzOS5lcy9w
cm9wb3NhbC10ZW1wb3JhbC8jcHJvZC1EYXRlVGltZQorICAgIC8vIENhbGVuZGFyRGF0ZVRpbWUg
OgorICAgIC8vICAgICBEYXRlVGltZSBDYWxlbmRhck5hbWVbb3B0XQorICAgIC8vCisgICAgYXV0
byBkYXRlVGltZSA9IHBhcnNlRGF0ZVRpbWUoYnVmZmVyKTsKKyAgICBpZiAoIWRhdGVUaW1lKQor
ICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OworCisgICAgYXV0byBbcGxhaW5EYXRlLCBwbGFp
blRpbWVPcHRpb25hbCwgdGltZVpvbmVPcHRpb25hbF0gPSBkYXRlVGltZS52YWx1ZSgpOworCisg
ICAgaWYgKCFidWZmZXIuYXRFbmQoKSAmJiBjYW5CZUNhbGVuZGFyKGJ1ZmZlcikpIHsKKyAgICAg
ICAgYXV0byBjYWxlbmRhciA9IHBhcnNlQ2FsZW5kYXIoYnVmZmVyKTsKKyAgICAgICAgaWYgKCFj
YWxlbmRhcikKKyAgICAgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisgICAgICAgIHJldHVy
biBzdGQ6OnR1cGxlIHsgcGxhaW5EYXRlLCBwbGFpblRpbWVPcHRpb25hbCwgdGltZVpvbmVPcHRp
b25hbCwgY2FsZW5kYXIgfTsKKyAgICB9CisKKyAgICByZXR1cm4gc3RkOjp0dXBsZSB7IHBsYWlu
RGF0ZSwgcGxhaW5UaW1lT3B0aW9uYWwsIHRpbWVab25lT3B0aW9uYWwsIHN0ZDo6bnVsbG9wdCB9
OworfQorCiBzdGQ6Om9wdGlvbmFsPHN0ZDo6dHVwbGU8UGxhaW5UaW1lLCBzdGQ6Om9wdGlvbmFs
PFRpbWVab25lUmVjb3JkPj4+IHBhcnNlVGltZShTdHJpbmdWaWV3IHN0cmluZykKIHsKICAgICBy
ZXR1cm4gcmVhZENoYXJhY3RlcnNGb3JQYXJzaW5nKHN0cmluZywgW10oYXV0byBidWZmZXIpIC0+
IHN0ZDo6b3B0aW9uYWw8c3RkOjp0dXBsZTxQbGFpblRpbWUsIHN0ZDo6b3B0aW9uYWw8VGltZVpv
bmVSZWNvcmQ+Pj4gewpAQCAtODgwLDYgKzEwMDYsMTYgQEAgc3RkOjpvcHRpb25hbDxzdGQ6OnR1
cGxlPFBsYWluRGF0ZSwgc3RkOjpvcHRpb25hbDxQbGFpblRpbWU+LCBzdGQ6Om9wdGlvbmFsPFRp
bWUKICAgICB9KTsKIH0KIAorc3RkOjpvcHRpb25hbDxzdGQ6OnR1cGxlPFBsYWluRGF0ZSwgc3Rk
OjpvcHRpb25hbDxQbGFpblRpbWU+LCBzdGQ6Om9wdGlvbmFsPFRpbWVab25lUmVjb3JkPiwgc3Rk
OjpvcHRpb25hbDxDYWxlbmRhclJlY29yZD4+PiBwYXJzZUNhbGVuZGFyRGF0ZVRpbWUoU3RyaW5n
VmlldyBzdHJpbmcpCit7CisgICAgcmV0dXJuIHJlYWRDaGFyYWN0ZXJzRm9yUGFyc2luZyhzdHJp
bmcsIFtdKGF1dG8gYnVmZmVyKSAtPiBzdGQ6Om9wdGlvbmFsPHN0ZDo6dHVwbGU8UGxhaW5EYXRl
LCBzdGQ6Om9wdGlvbmFsPFBsYWluVGltZT4sIHN0ZDo6b3B0aW9uYWw8VGltZVpvbmVSZWNvcmQ+
LCBzdGQ6Om9wdGlvbmFsPENhbGVuZGFyUmVjb3JkPj4+IHsKKyAgICAgICAgYXV0byByZXN1bHQg
PSBwYXJzZUNhbGVuZGFyRGF0ZVRpbWUoYnVmZmVyKTsKKyAgICAgICAgaWYgKCFidWZmZXIuYXRF
bmQoKSkKKyAgICAgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisgICAgICAgIHJldHVybiBy
ZXN1bHQ7CisgICAgfSk7Cit9CisKIHN0ZDo6b3B0aW9uYWw8RXhhY3RUaW1lPiBwYXJzZUluc3Rh
bnQoU3RyaW5nVmlldyBzdHJpbmcpCiB7CiAgICAgLy8gaHR0cHM6Ly90YzM5LmVzL3Byb3Bvc2Fs
LXRlbXBvcmFsLyNwcm9kLVRlbXBvcmFsSW5zdGFudFN0cmluZwpAQCAtODkyLDEwICsxMDI4LDEw
IEBAIHN0ZDo6b3B0aW9uYWw8RXhhY3RUaW1lPiBwYXJzZUluc3RhbnQoU3RyaW5nVmlldyBzdHJp
bmcpCiAgICAgLy8gICAgIFRpbWVab25lVVRDT2Zmc2V0IFRpbWVab25lQnJhY2tldGVkQW5ub3Rh
dGlvbl9vcHQKIAogICAgIHJldHVybiByZWFkQ2hhcmFjdGVyc0ZvclBhcnNpbmcoc3RyaW5nLCBb
XShhdXRvIGJ1ZmZlcikgLT4gc3RkOjpvcHRpb25hbDxFeGFjdFRpbWU+IHsKLSAgICAgICAgYXV0
byBkYXRldGltZSA9IHBhcnNlRGF0ZVRpbWUoYnVmZmVyKTsKKyAgICAgICAgYXV0byBkYXRldGlt
ZSA9IHBhcnNlQ2FsZW5kYXJEYXRlVGltZShidWZmZXIpOwogICAgICAgICBpZiAoIWRhdGV0aW1l
KQogICAgICAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSAgICAgICAgYXV0byBbZGF0ZSwg
bWF5YmVUaW1lLCBtYXliZVRpbWVab25lXSA9IGRhdGV0aW1lLnZhbHVlKCk7CisgICAgICAgIGF1
dG8gW2RhdGUsIG1heWJlVGltZSwgbWF5YmVUaW1lWm9uZSwgbWF5YmVDYWxlbmRhcl0gPSBkYXRl
dGltZS52YWx1ZSgpOwogICAgICAgICBpZiAoIW1heWJlVGltZVpvbmUgfHwgKCFtYXliZVRpbWVa
b25lLT5tX3ogJiYgIW1heWJlVGltZVpvbmUtPm1fb2Zmc2V0KSkKICAgICAgICAgICAgIHJldHVy
biBzdGQ6Om51bGxvcHQ7CiAgICAgICAgIC8vIEZJWE1FOiBwYXJzZSBjYWxlbmRhciBhbm5vdGF0
aW9uCkBAIC05MDYsNiArMTA0Miw4IEBAIHN0ZDo6b3B0aW9uYWw8RXhhY3RUaW1lPiBwYXJzZUlu
c3RhbnQoU3RyaW5nVmlldyBzdHJpbmcpCiAgICAgICAgIGlmIChtYXliZVRpbWUpCiAgICAgICAg
ICAgICB0aW1lID0gbWF5YmVUaW1lLnZhbHVlKCk7CiAKKyAgICAgICAgVU5VU0VEX1BBUkFNKG1h
eWJlQ2FsZW5kYXIpOworCiAgICAgICAgIGludDY0X3Qgb2Zmc2V0ID0gbWF5YmVUaW1lWm9uZS0+
bV96ID8gMCA6ICptYXliZVRpbWVab25lLT5tX29mZnNldDsKICAgICAgICAgcmV0dXJuIHsgRXhh
Y3RUaW1lOjpmcm9tSVNPUGFydHNBbmRPZmZzZXQoZGF0ZS55ZWFyKCksIGRhdGUubW9udGgoKSwg
ZGF0ZS5kYXkoKSwgdGltZS5ob3VyKCksIHRpbWUubWludXRlKCksIHRpbWUuc2Vjb25kKCksIHRp
bWUubWlsbGlzZWNvbmQoKSwgdGltZS5taWNyb3NlY29uZCgpLCB0aW1lLm5hbm9zZWNvbmQoKSwg
b2Zmc2V0KSB9OwogICAgIH0pOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSVNPODYwMS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSVNPODYwMS5o
CmluZGV4IDI2NTBlOWMwMWE0Y2JkYmQzMTBmOTFmMjJmMWE5MWQ3YmY3ZTZjNjcuLmYyMWYwZjY4
YmVjYmFmZDY2NmRmNjMxNTllOTIxOTU5ZTY5M2MwZDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0lTTzg2MDEuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9JU084NjAxLmgKQEAgLTI0Nyw3ICsyNDcsMTMgQEAgc3RhdGljX2Fzc2VydChzaXpl
b2YoUGxhaW5UaW1lKSA8PSBzaXplb2YodWludDY0X3QpKTsKIGNsYXNzIFBsYWluRGF0ZSB7CiAg
ICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQoUGxhaW5EYXRlKTsKIHB1YmxpYzoKLSAgICBjb25z
dGV4cHIgUGxhaW5EYXRlKCkgPSBkZWZhdWx0OworICAgIGNvbnN0ZXhwciBQbGFpbkRhdGUoKQor
ICAgICAgICA6IG1feWVhcigwKQorICAgICAgICAsIG1fbW9udGgoMSkKKyAgICAgICAgLCBtX2Rh
eSgxKQorICAgIHsKKyAgICB9CisKICAgICBjb25zdGV4cHIgUGxhaW5EYXRlKGludDMyX3QgeWVh
ciwgdW5zaWduZWQgbW9udGgsIHVuc2lnbmVkIGRheSkKICAgICAgICAgOiBtX3llYXIoeWVhcikK
ICAgICAgICAgLCBtX21vbnRoKG1vbnRoKQpAQCAtMjYwLDEwICsyNjYsMTMgQEAgY2xhc3MgUGxh
aW5EYXRlIHsKICAgICB1aW50OF90IGRheSgpIGNvbnN0IHsgcmV0dXJuIG1fZGF5OyB9CiAKIHBy
aXZhdGU6Ci0gICAgaW50MzJfdCBtX3llYXIgeyAwIH07Ci0gICAgdWludDhfdCBtX21vbnRoIHsg
MSB9OwotICAgIHVpbnQ4X3QgbV9kYXkgeyAxIH07CisgICAgaW50MzJfdCBtX3llYXIgOiAyMTsg
Ly8gRUNNQVNjcmlwdCBtYXggLyBtaW4gZGF0ZSdzIHllYXIgY2FuIGJlIHJlcHJlc2VudGVkIDw9
IDIwIGJpdHMuCisgICAgaW50MzJfdCBtX21vbnRoIDogNTsKKyAgICBpbnQzMl90IG1fZGF5IDog
NjsKIH07CisjaWYgQ09NUElMRVIoR0NDX0NPTVBBVElCTEUpCitzdGF0aWNfYXNzZXJ0KHNpemVv
ZihQbGFpbkRhdGUpID09IHNpemVvZihpbnQzMl90KSk7CisjZW5kaWYKIAogdXNpbmcgVGltZVpv
bmUgPSBzdGQ6OnZhcmlhbnQ8VGltZVpvbmVJRCwgaW50NjRfdD47CiAKQEAgLTI3NSw2ICsyODQs
MTAgQEAgc3RydWN0IFRpbWVab25lUmVjb3JkIHsKICAgICBzdGQ6OnZhcmlhbnQ8VmVjdG9yPExD
aGFyPiwgaW50NjRfdD4gbV9uYW1lT3JPZmZzZXQ7CiB9OwogCitzdHJ1Y3QgQ2FsZW5kYXJSZWNv
cmQgeworICAgIFZlY3RvcjxMQ2hhcj4gbV9uYW1lOworfTsKKwogLy8gaHR0cHM6Ly90YzM5LmVz
L3Byb3Bvc2FsLXRlbXBvcmFsLyNzdXAtaXN2YWxpZHRpbWV6b25lbmFtZQogc3RkOjpvcHRpb25h
bDxUaW1lWm9uZUlEPiBwYXJzZVRpbWVab25lTmFtZShTdHJpbmdWaWV3KTsKIHN0ZDo6b3B0aW9u
YWw8RHVyYXRpb24+IHBhcnNlRHVyYXRpb24oU3RyaW5nVmlldyk7CkBAIC0yODIsNiArMjk1LDcg
QEAgc3RkOjpvcHRpb25hbDxpbnQ2NF90PiBwYXJzZVRpbWVab25lTnVtZXJpY1VUQ09mZnNldChT
dHJpbmdWaWV3KTsKIGVudW0gY2xhc3MgVmFsaWRhdGVUaW1lWm9uZUlEIHsgWWVzLCBObyB9Owog
c3RkOjpvcHRpb25hbDxzdGQ6OnR1cGxlPFBsYWluVGltZSwgc3RkOjpvcHRpb25hbDxUaW1lWm9u
ZVJlY29yZD4+PiBwYXJzZVRpbWUoU3RyaW5nVmlldyk7CiBzdGQ6Om9wdGlvbmFsPHN0ZDo6dHVw
bGU8UGxhaW5EYXRlLCBzdGQ6Om9wdGlvbmFsPFBsYWluVGltZT4sIHN0ZDo6b3B0aW9uYWw8VGlt
ZVpvbmVSZWNvcmQ+Pj4gcGFyc2VEYXRlVGltZShTdHJpbmdWaWV3KTsKK3N0ZDo6b3B0aW9uYWw8
c3RkOjp0dXBsZTxQbGFpbkRhdGUsIHN0ZDo6b3B0aW9uYWw8UGxhaW5UaW1lPiwgc3RkOjpvcHRp
b25hbDxUaW1lWm9uZVJlY29yZD4sIHN0ZDo6b3B0aW9uYWw8Q2FsZW5kYXJSZWNvcmQ+Pj4gcGFy
c2VDYWxlbmRhckRhdGVUaW1lKFN0cmluZ1ZpZXcpOwogU3RyaW5nIGZvcm1hdFRpbWVab25lT2Zm
c2V0U3RyaW5nKGludDY0X3QpOwogU3RyaW5nIHRlbXBvcmFsVGltZVRvU3RyaW5nKFBsYWluVGlt
ZSwgc3RkOjp0dXBsZTxQcmVjaXNpb24sIHVuc2lnbmVkPiBwcmVjaXNpb24pOwogU3RyaW5nIHRl
bXBvcmFsRGF0ZVRvU3RyaW5nKFBsYWluRGF0ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluRGF0ZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluRGF0ZS5jcHAKaW5kZXggYzc4Zjk0YmZiMDExNTI3
YTY2YWYxYjg1ZDk2ZDNlNGNlNmViNDgzYy4uMjFiMzYzZDU0YzYxODJkMDBlMDNmMGQwNjBjZmU1
YmNiMGFhZTBlNSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVt
cG9yYWxQbGFpbkRhdGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Rl
bXBvcmFsUGxhaW5EYXRlLmNwcApAQCAtMTUxLDkgKzE1MSwxMCBAQCBUZW1wb3JhbFBsYWluRGF0
ZSogVGVtcG9yYWxQbGFpbkRhdGU6OmZyb20oSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
SlNWYWx1ZQogICAgIGF1dG8gc3RyaW5nID0gaXRlbVZhbHVlLnRvV1RGU3RyaW5nKGdsb2JhbE9i
amVjdCk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgeyB9KTsKIAotICAgIGF1dG8g
ZGF0ZVRpbWUgPSBJU084NjAxOjpwYXJzZURhdGVUaW1lKHN0cmluZyk7CisgICAgLy8gaHR0cHM6
Ly90YzM5LmVzL3Byb3Bvc2FsLXRlbXBvcmFsLyNzZWMtdGVtcG9yYWwtcGFyc2V0ZW1wb3JhbGRh
dGVzdHJpbmcKKyAgICBhdXRvIGRhdGVUaW1lID0gSVNPODYwMTo6cGFyc2VDYWxlbmRhckRhdGVU
aW1lKHN0cmluZyk7CiAgICAgaWYgKGRhdGVUaW1lKSB7Ci0gICAgICAgIGF1dG8gW3BsYWluRGF0
ZSwgcGxhaW5UaW1lT3B0aW9uYWwsIHRpbWVab25lT3B0aW9uYWxdID0gZGF0ZVRpbWUudmFsdWUo
KTsKKyAgICAgICAgYXV0byBbcGxhaW5EYXRlLCBwbGFpblRpbWVPcHRpb25hbCwgdGltZVpvbmVP
cHRpb25hbCwgY2FsZW5kYXJPcHRpb25hbF0gPSBkYXRlVGltZS52YWx1ZSgpOwogICAgICAgICBy
ZXR1cm4gVGVtcG9yYWxQbGFpbkRhdGU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LT5wbGFpbkRh
dGVTdHJ1Y3R1cmUoKSwgV1RGTW92ZShwbGFpbkRhdGUpKTsKICAgICB9CiAKZGlmZiAtLWdpdCBh
L0pTVGVzdHMvQ2hhbmdlTG9nIGIvSlNUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMDY1NmFkMjhmZDYy
YmE2NmZmY2QxMzEwMjZmMzYxMzQ3YTg5NjFlOC4uNDViOWE4ODY3MmFjMzk1NjZkMDNjZGQwOWFi
ZDliMjhhOTQ0MTgxMyAxMDA2NDQKLS0tIGEvSlNUZXN0cy9DaGFuZ2VMb2cKKysrIGIvSlNUZXN0
cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAyMi0wMi0xOSAgWXVzdWtlIFN1enVraSAg
PHlzdXp1a2lAYXBwbGUuY29tPgorCisgICAgICAgIFtKU0NdIEFkZCBDYWxlbmRhckRhdGVUaW1l
IHBhcnNpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIzNjg4NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
ICogc3RyZXNzL3RlbXBvcmFsLWluc3RhbnQuanM6CisgICAgICAgICogc3RyZXNzL3RlbXBvcmFs
LXBsYWluZGF0ZS5qczoKKwogMjAyMi0wMi0xOSAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5j
b20+CiAKICAgICAgICAgW0pTQ10gSW1wbGVtZW50IFRlbXBvcmFsLlBsYWluRGF0ZQpkaWZmIC0t
Z2l0IGEvSlNUZXN0cy9zdHJlc3MvdGVtcG9yYWwtaW5zdGFudC5qcyBiL0pTVGVzdHMvc3RyZXNz
L3RlbXBvcmFsLWluc3RhbnQuanMKaW5kZXggZDk1MmVkMWY5YjRlZjU0NTYxYTkxMmNiMDhjMjMy
MGM0ZTE0NGZiOS4uZTc2MjU0NzA0YjVhOTBjMDBkZDY5YmM0NWU1MGZjOGI2NDdlNTNhNyAxMDA2
NDQKLS0tIGEvSlNUZXN0cy9zdHJlc3MvdGVtcG9yYWwtaW5zdGFudC5qcworKysgYi9KU1Rlc3Rz
L3N0cmVzcy90ZW1wb3JhbC1pbnN0YW50LmpzCkBAIC0zMTMsOCArMzEzLDcgQEAgZnVuY3Rpb24g
c2hvdWxkVGhyb3coZnVuYywgZXJyb3JUeXBlLCBtZXNzYWdlKSB7CiBzaG91bGRCZShgJHtUZW1w
b3JhbC5JbnN0YW50LmZyb20oJzE5NzYtMTEtMThUMTU6MjM6MzArMDAnKX1gLCAnMTk3Ni0xMS0x
OFQxNToyMzozMFonKTsKIHNob3VsZEJlKGAke1RlbXBvcmFsLkluc3RhbnQuZnJvbSgnMTk3Ni0x
MS0xOFQxNVonKX1gLCAnMTk3Ni0xMS0xOFQxNTowMDowMFonKTsKIC8vIGlnbm9yZXMgYW55IHNw
ZWNpZmllZCBjYWxlbmRhcgotLy8gRklYTUU6IHBhcnNlIGNhbGVuZGFyCi0vLyBzaG91bGRCZShg
JHtUZW1wb3JhbC5JbnN0YW50LmZyb20oJzE5NzYtMTEtMThUMTU6MjM6MzAuMTIzNDU2Nzg5Wlt1
LWNhPWRpc2NvcmRdJyl9YCwgJzE5NzYtMTEtMThUMTU6MjM6MzAuMTIzNDU2Nzg5WicpOworc2hv
dWxkQmUoYCR7VGVtcG9yYWwuSW5zdGFudC5mcm9tKCcxOTc2LTExLTE4VDE1OjIzOjMwLjEyMzQ1
Njc4OVpbdS1jYT1kaXNjb3JkXScpfWAsICcxOTc2LTExLTE4VDE1OjIzOjMwLjEyMzQ1Njc4OVon
KTsKIC8vIG5vIGp1bmsgYXQgZW5kIG9mIHN0cmluZwogc2hvdWxkVGhyb3coKCkgPT4gVGVtcG9y
YWwuSW5zdGFudC5mcm9tKCcxOTc2LTExLTE4VDE1OjIzOjMwLjEyMzQ1Njc4OVpqdW5rJyksIFJh
bmdlRXJyb3IpOwogCmRpZmYgLS1naXQgYS9KU1Rlc3RzL3N0cmVzcy90ZW1wb3JhbC1wbGFpbmRh
dGUuanMgYi9KU1Rlc3RzL3N0cmVzcy90ZW1wb3JhbC1wbGFpbmRhdGUuanMKaW5kZXggYTQxYTZm
ZGI4ZGY3MzAwYzEyZGJlZGYxNzIwN2MxZWVkMjRmYzRmYi4uNzFmZWRjM2ZjOTNiZThhZjNlYTFk
OGRlN2MzY2E1ZWU4MDM1YmMyNSAxMDA2NDQKLS0tIGEvSlNUZXN0cy9zdHJlc3MvdGVtcG9yYWwt
cGxhaW5kYXRlLmpzCisrKyBiL0pTVGVzdHMvc3RyZXNzL3RlbXBvcmFsLXBsYWluZGF0ZS5qcwpA
QCAtODEsNiArODEsNyBAQCBmdW5jdGlvbiBzaG91bGRUaHJvdyhmdW5jLCBlcnJvclR5cGUsIG1l
c3NhZ2UpIHsKICAgICBsZXQgZGF0ZSA9IFRlbXBvcmFsLlBsYWluRGF0ZS5mcm9tKCcyMDA3LTAx
LTA5VDAzOjI0OjMwKzAxOjAwW0V1cm9wZS9CcnVzc2Vsc10nKQogICAgIHNob3VsZEJlKGRhdGUg
PT09IFRlbXBvcmFsLlBsYWluRGF0ZS5mcm9tKGRhdGUpLCBmYWxzZSk7CiB9CitzaG91bGRCZShT
dHJpbmcoVGVtcG9yYWwuUGxhaW5EYXRlLmZyb20oJzIwMDctMDEtMDkgMDM6MjQ6MzArMDE6MDBb
dS1jYT1qYXBhbmVzZV0nKSksIGAyMDA3LTAxLTA5YCk7CiAKIAogLy8gRklYTUU6IGZyb20ob2Jq
ZWN0KSBpcyBub3RlIHlldCBpbXBsZW1lbnRlZC4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>452683</attachid>
            <date>2022-02-20 00:50:31 -0800</date>
            <delta_ts>2022-02-21 09:57:23 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-236886-20220220005030.patch</filename>
            <type>text/plain</type>
            <size>29470</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwMjA5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBl
YTZiMjk0MWQ2MmIwMzNiMjE1ZjBlZTFhOTQ3MTNjMmQwZjY5ZGIxLi5mNGZlNmVjNDA0Y2IyY2I4
NmE2Y2FlMDgxYTE5NDdhZTE5MWVkMDVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMCBAQAorMjAyMi0wMi0yMCAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIEFkZCBDYWxlbmRhckRhdGVUaW1lIHBhcnNpbmcKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNjg4NgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgcGF0Y2ggYWRkcyBj
YWxlbmRhciBwYXJzaW5nIGNvZGUgdG8gSVNPODYwMSBzbyB0aGF0IFRlbXBvcmFsLkluc3RhbnQg
LyBUZW1wb3JhbC5QbGFpbkRhdGUgLyBUZW1wb3JhbC5QbGFpblRpbWUKKyAgICAgICAgY2FuIHBh
cnNlIHN0cmluZyB3aXRoIGNhbGVuZGFyIGNvcnJlY3RseSB2aWEgImZyb20iIG1ldGhvZHMuIEN1
cnJlbnRseSwgd2UgYXJlIGp1c3QgaWdub3JpbmcgdGhlc2UgY2FsZW5kYXIgdmFsdWVzLAorICAg
ICAgICBidXQgd2Ugc2hvdWxkIGNyZWF0ZSBhIGNhbGVuZGFyIGluc3RhbmNlIGZyb20gdGhhdCBp
biBhIHN1YnNlcXVlbnQgcGF0Y2guCisKKyAgICAgICAgKiBydW50aW1lL0lTTzg2MDEuY3BwOgor
ICAgICAgICAoSlNDOjpJU084NjAxOjpjYW5CZUNhbGVuZGFyKToKKyAgICAgICAgKEpTQzo6SVNP
ODYwMTo6Y2FuQmVUaW1lWm9uZSk6CisgICAgICAgIChKU0M6OklTTzg2MDE6OnBhcnNlVGltZVpv
bmUpOgorICAgICAgICAoSlNDOjpJU084NjAxOjpwYXJzZUNhbGVuZGFyKToKKyAgICAgICAgKEpT
Qzo6SVNPODYwMTo6cGFyc2VUaW1lKToKKyAgICAgICAgKEpTQzo6SVNPODYwMTo6cGFyc2VEYXRl
VGltZSk6CisgICAgICAgIChKU0M6OklTTzg2MDE6OnBhcnNlQ2FsZW5kYXJUaW1lKToKKyAgICAg
ICAgKEpTQzo6SVNPODYwMTo6cGFyc2VDYWxlbmRhckRhdGVUaW1lKToKKyAgICAgICAgKEpTQzo6
SVNPODYwMTo6cGFyc2VJbnN0YW50KToKKyAgICAgICAgKiBydW50aW1lL0lTTzg2MDEuaDoKKyAg
ICAgICAgKiBydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRlLmNwcDoKKyAgICAgICAgKEpTQzo6VGVt
cG9yYWxQbGFpbkRhdGU6OmZyb20pOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxQbGFpblRp
bWUuY3BwOgorICAgICAgICAoSlNDOjpUZW1wb3JhbFBsYWluVGltZTo6ZnJvbSk6CisKIDIwMjIt
MDItMTkgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgogCiAgICAgICAgIFtKU0NdIElt
cGxlbWVudCBUZW1wb3JhbC5QbGFpbkRhdGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0lTTzg2MDEuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SVNPODYwMS5jcHAKaW5kZXggYmRjM2ZhNzYzYzViZjhiZmQ3OGMyOThkMjI3ODdjYTI4NmQyZmE0
Mi4uOWI1ODNiNWYzZTRlMzVkZWUwNGViZTJkZjAxM2I2OGEzMmQzZDg2YSAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSVNPODYwMS5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSVNPODYwMS5jcHAKQEAgLTQzMiw2ICs0MzIsNDUgQEAgc3Rk
OjpvcHRpb25hbDxpbnQ2NF90PiBwYXJzZVRpbWVab25lTnVtZXJpY1VUQ09mZnNldChTdHJpbmdW
aWV3IHN0cmluZykKICAgICB9KTsKIH0KIAordGVtcGxhdGU8dHlwZW5hbWUgQ2hhcmFjdGVyVHlw
ZT4KK3N0YXRpYyBib29sIGNhbkJlQ2FsZW5kYXIoY29uc3QgU3RyaW5nUGFyc2luZ0J1ZmZlcjxD
aGFyYWN0ZXJUeXBlPiYgYnVmZmVyKQoreworICAgIC8vIGh0dHBzOi8vdGMzOS5lcy9wcm9wb3Nh
bC10ZW1wb3JhbC8jcHJvZC1DYWxlbmRhcgorICAgIC8vIENhbGVuZGFyIDoKKyAgICAvLyAgICAg
W3UtY2E9IENhbGVuZGFyTmFtZV0KKyAgICByZXR1cm4gYnVmZmVyLmxlbmd0aFJlbWFpbmluZygp
ID49IDYgJiYgYnVmZmVyWzBdID09ICdbJyAmJiBidWZmZXJbMV0gPT0gJ3UnICYmIGJ1ZmZlclsy
XSA9PSAnLScgJiYgYnVmZmVyWzNdID09ICdjJyAmJiBidWZmZXJbNF0gPT0gJ2EnICYmIGJ1ZmZl
cls1XSA9PSAnPSc7Cit9CisKK3RlbXBsYXRlPHR5cGVuYW1lIENoYXJhY3RlclR5cGU+CitzdGF0
aWMgYm9vbCBjYW5CZVRpbWVab25lKGNvbnN0IFN0cmluZ1BhcnNpbmdCdWZmZXI8Q2hhcmFjdGVy
VHlwZT4mIGJ1ZmZlciwgQ2hhcmFjdGVyVHlwZSBjaGFyYWN0ZXIpCit7CisgICAgc3dpdGNoIChz
dGF0aWNfY2FzdDxVQ2hhcj4oY2hhcmFjdGVyKSkgeworICAgIC8vIFVUQ0Rlc2lnbmF0b3IKKyAg
ICAvLyBodHRwczovL3RjMzkuZXMvcHJvcG9zYWwtdGVtcG9yYWwvI3Byb2QtVVRDRGVzaWduYXRv
cgorICAgIGNhc2UgJ3onOgorICAgIGNhc2UgJ1onOgorICAgIC8vIFRpbWVab25lVVRDT2Zmc2V0
U2lnbgorICAgIC8vIGh0dHBzOi8vdGMzOS5lcy9wcm9wb3NhbC10ZW1wb3JhbC8jcHJvZC1UaW1l
Wm9uZVVUQ09mZnNldFNpZ24KKyAgICBjYXNlICcrJzoKKyAgICBjYXNlICctJzoKKyAgICBjYXNl
IG1pbnVzU2lnbjoKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgLy8gVGltZVpvbmVCcmFja2V0
ZWRBbm5vdGF0aW9uCisgICAgLy8gaHR0cHM6Ly90YzM5LmVzL3Byb3Bvc2FsLXRlbXBvcmFsLyNw
cm9kLVRpbWVab25lQnJhY2tldGVkQW5ub3RhdGlvbgorICAgIGNhc2UgJ1snOiB7CisgICAgICAg
IC8vIFdlIHNob3VsZCByZWplY3QgY2FsZW5kYXIgZXh0ZW5zaW9uIGNhc2UuCisgICAgICAgIC8v
IGh0dHBzOi8vdGMzOS5lcy9wcm9wb3NhbC10ZW1wb3JhbC8jcHJvZC1DYWxlbmRhcgorICAgICAg
ICAvLyBDYWxlbmRhciA6CisgICAgICAgIC8vICAgICBbdS1jYT0gQ2FsZW5kYXJOYW1lXQorICAg
ICAgICBpZiAoY2FuQmVDYWxlbmRhcihidWZmZXIpKQorICAgICAgICAgICAgcmV0dXJuIGZhbHNl
OworICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9CisgICAgZGVmYXVsdDoKKyAgICAgICAgcmV0
dXJuIGZhbHNlOworICAgIH0KK30KKwogdGVtcGxhdGU8dHlwZW5hbWUgQ2hhcmFjdGVyVHlwZT4K
IHN0YXRpYyBzdGQ6Om9wdGlvbmFsPHN0ZDo6dmFyaWFudDxWZWN0b3I8TENoYXI+LCBpbnQ2NF90
Pj4gcGFyc2VUaW1lWm9uZUJyYWNrZXRlZEFubm90YXRpb24oU3RyaW5nUGFyc2luZ0J1ZmZlcjxD
aGFyYWN0ZXJUeXBlPiYgYnVmZmVyKQogewpAQCAtNTg0LDM1ICs2MjMsNiBAQCBzdGF0aWMgc3Rk
OjpvcHRpb25hbDxzdGQ6OnZhcmlhbnQ8VmVjdG9yPExDaGFyPiwgaW50NjRfdD4+IHBhcnNlVGlt
ZVpvbmVCcmFja2V0ZQogICAgIH0KIH0KIAotdGVtcGxhdGU8dHlwZW5hbWUgQ2hhcmFjdGVyVHlw
ZT4KLXN0YXRpYyBib29sIGNhbkJlVGltZVpvbmUoY29uc3QgU3RyaW5nUGFyc2luZ0J1ZmZlcjxD
aGFyYWN0ZXJUeXBlPiYgYnVmZmVyLCBDaGFyYWN0ZXJUeXBlIGNoYXJhY3RlcikKLXsKLSAgICBz
d2l0Y2ggKHN0YXRpY19jYXN0PFVDaGFyPihjaGFyYWN0ZXIpKSB7Ci0gICAgLy8gVVRDRGVzaWdu
YXRvcgotICAgIC8vIGh0dHBzOi8vdGMzOS5lcy9wcm9wb3NhbC10ZW1wb3JhbC8jcHJvZC1VVENE
ZXNpZ25hdG9yCi0gICAgY2FzZSAneic6Ci0gICAgY2FzZSAnWic6Ci0gICAgLy8gVGltZVpvbmVV
VENPZmZzZXRTaWduCi0gICAgLy8gaHR0cHM6Ly90YzM5LmVzL3Byb3Bvc2FsLXRlbXBvcmFsLyNw
cm9kLVRpbWVab25lVVRDT2Zmc2V0U2lnbgotICAgIGNhc2UgJysnOgotICAgIGNhc2UgJy0nOgot
ICAgIGNhc2UgbWludXNTaWduOgotICAgIC8vIFRpbWVab25lQnJhY2tldGVkQW5ub3RhdGlvbgot
ICAgIC8vIGh0dHBzOi8vdGMzOS5lcy9wcm9wb3NhbC10ZW1wb3JhbC8jcHJvZC1UaW1lWm9uZUJy
YWNrZXRlZEFubm90YXRpb24KLSAgICBjYXNlICdbJzogewotICAgICAgICAvLyBXZSBzaG91bGQg
cmVqZWN0IGNhbGVuZGFyIGV4dGVuc2lvbiBjYXNlLgotICAgICAgICAvLyBodHRwczovL3RjMzku
ZXMvcHJvcG9zYWwtdGVtcG9yYWwvI3Byb2QtQ2FsZW5kYXIKLSAgICAgICAgLy8gQ2FsZW5kYXIg
OgotICAgICAgICAvLyAgICAgW3UtY2E9IENhbGVuZGFyTmFtZV0KLSAgICAgICAgaWYgKGJ1ZmZl
ci5sZW5ndGhSZW1haW5pbmcoKSA+PSA2ICYmIGJ1ZmZlclsxXSA9PSAndScgJiYgYnVmZmVyWzJd
ID09ICctJyAmJiBidWZmZXJbM10gPT0gJ2MnICYmIGJ1ZmZlcls0XSA9PSAnYScgJiYgYnVmZmVy
WzVdID09ICc9JykKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgcmV0dXJuIHRy
dWU7Ci0gICAgfQotICAgIGRlZmF1bHQ6Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICB9Ci19
Ci0KIHRlbXBsYXRlPHR5cGVuYW1lIENoYXJhY3RlclR5cGU+CiBzdGF0aWMgc3RkOjpvcHRpb25h
bDxUaW1lWm9uZVJlY29yZD4gcGFyc2VUaW1lWm9uZShTdHJpbmdQYXJzaW5nQnVmZmVyPENoYXJh
Y3RlclR5cGU+JiBidWZmZXIpCiB7CkBAIC02MjQsNyArNjM0LDcgQEAgc3RhdGljIHN0ZDo6b3B0
aW9uYWw8VGltZVpvbmVSZWNvcmQ+IHBhcnNlVGltZVpvbmUoU3RyaW5nUGFyc2luZ0J1ZmZlcjxD
aGFyYWN0ZXIKICAgICBjYXNlICd6JzoKICAgICBjYXNlICdaJzogewogICAgICAgICBidWZmZXIu
YWR2YW5jZSgpOwotICAgICAgICBpZiAoIWJ1ZmZlci5hdEVuZCgpICYmICpidWZmZXIgPT0gJ1sn
KSB7CisgICAgICAgIGlmICghYnVmZmVyLmF0RW5kKCkgJiYgKmJ1ZmZlciA9PSAnWycgJiYgY2Fu
QmVUaW1lWm9uZShidWZmZXIsICpidWZmZXIpKSB7CiAgICAgICAgICAgICBhdXRvIHRpbWVab25l
ID0gcGFyc2VUaW1lWm9uZUJyYWNrZXRlZEFubm90YXRpb24oYnVmZmVyKTsKICAgICAgICAgICAg
IGlmICghdGltZVpvbmUpCiAgICAgICAgICAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKQEAg
LTY0MCw3ICs2NTAsNyBAQCBzdGF0aWMgc3RkOjpvcHRpb25hbDxUaW1lWm9uZVJlY29yZD4gcGFy
c2VUaW1lWm9uZShTdHJpbmdQYXJzaW5nQnVmZmVyPENoYXJhY3RlcgogICAgICAgICBhdXRvIG9m
ZnNldCA9IHBhcnNlVGltZVpvbmVOdW1lcmljVVRDT2Zmc2V0KGJ1ZmZlcik7CiAgICAgICAgIGlm
ICghb2Zmc2V0KQogICAgICAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSAgICAgICAgaWYg
KCFidWZmZXIuYXRFbmQoKSAmJiAqYnVmZmVyID09ICdbJykgeworICAgICAgICBpZiAoIWJ1ZmZl
ci5hdEVuZCgpICYmICpidWZmZXIgPT0gJ1snICYmIGNhbkJlVGltZVpvbmUoYnVmZmVyLCAqYnVm
ZmVyKSkgewogICAgICAgICAgICAgYXV0byB0aW1lWm9uZSA9IHBhcnNlVGltZVpvbmVCcmFja2V0
ZWRBbm5vdGF0aW9uKGJ1ZmZlcik7CiAgICAgICAgICAgICBpZiAoIXRpbWVab25lKQogICAgICAg
ICAgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CkBAIC02NjEsNiArNjcxLDk3IEBAIHN0YXRp
YyBzdGQ6Om9wdGlvbmFsPFRpbWVab25lUmVjb3JkPiBwYXJzZVRpbWVab25lKFN0cmluZ1BhcnNp
bmdCdWZmZXI8Q2hhcmFjdGVyCiAgICAgfQogfQogCit0ZW1wbGF0ZTx0eXBlbmFtZSBDaGFyYWN0
ZXJUeXBlPgorc3RhdGljIHN0ZDo6b3B0aW9uYWw8Q2FsZW5kYXJSZWNvcmQ+IHBhcnNlQ2FsZW5k
YXIoU3RyaW5nUGFyc2luZ0J1ZmZlcjxDaGFyYWN0ZXJUeXBlPiYgYnVmZmVyKQoreworICAgIC8v
IGh0dHBzOi8vdGMzOS5lcy9wcm9wb3NhbC10ZW1wb3JhbC8jcHJvZC1UaW1lWm9uZUJyYWNrZXRl
ZEFubm90YXRpb24KKyAgICAvLyBDYWxlbmRhciA6CisgICAgLy8gICAgIFt1LWNhPSBDYWxlbmRh
ck5hbWUgXQorICAgIC8vCisgICAgLy8gQ2FsZW5kYXJOYW1lIDoKKyAgICAvLyAgICAgQ2FsZW5k
YXJOYW1lQ29tcG9uZW50CisgICAgLy8gICAgIENhbGVuZGFyTmFtZUNvbXBvbmVudCAtIENhbGVu
ZGFyTmFtZQorICAgIC8vCisgICAgLy8gQ2FsZW5kYXJOYW1lQ29tcG9uZW50IDoKKyAgICAvLyAg
ICAgQ2FsQ2hhciBDYWxDaGFyIENhbENoYXIgQ2FsQ2hhcltvcHRdIENhbENoYXJbb3B0XSBDYWxD
aGFyW29wdF0gQ2FsQ2hhcltvcHRdIENhbENoYXJbb3B0XQorICAgIC8vCisgICAgLy8gQ2FsQ2hh
ciA6CisgICAgLy8gICAgIEFscGhhCisgICAgLy8gICAgIERpZ2l0CisKKyAgICBpZiAoIWNhbkJl
Q2FsZW5kYXIoYnVmZmVyKSkKKyAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKKyAgICBidWZm
ZXIuYWR2YW5jZUJ5KDYpOworCisgICAgaWYgKGJ1ZmZlci5hdEVuZCgpKQorICAgICAgICByZXR1
cm4gc3RkOjpudWxsb3B0OworCisgICAgdW5zaWduZWQgbmFtZUxlbmd0aCA9IDA7CisgICAgewor
ICAgICAgICB1bnNpZ25lZCBpbmRleCA9IDA7CisgICAgICAgIGZvciAoOyBpbmRleCA8IGJ1ZmZl
ci5sZW5ndGhSZW1haW5pbmcoKTsgKytpbmRleCkgeworICAgICAgICAgICAgYXV0byBjaGFyYWN0
ZXIgPSBidWZmZXJbaW5kZXhdOworICAgICAgICAgICAgaWYgKGNoYXJhY3RlciA9PSAnXScpCisg
ICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICBpZiAoIWlzQVNDSUlBbHBoYShjaGFy
YWN0ZXIpICYmICFpc0FTQ0lJRGlnaXQoY2hhcmFjdGVyKSAmJiBjaGFyYWN0ZXIgIT0gJy0nKQor
ICAgICAgICAgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisgICAgICAgIH0KKyAgICAgICAg
aWYgKCFpbmRleCkKKyAgICAgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisgICAgICAgIG5h
bWVMZW5ndGggPSBpbmRleDsKKyAgICB9CisKKyAgICBhdXRvIGlzVmFsaWRDb21wb25lbnQgPSBb
Jl0odW5zaWduZWQgc3RhcnQsIHVuc2lnbmVkIGVuZCkgeworICAgICAgICB1bnNpZ25lZCBjb21w
b25lbnRMZW5ndGggPSBlbmQgLSBzdGFydDsKKyAgICAgICAgaWYgKGNvbXBvbmVudExlbmd0aCA8
IG1pbkNhbGVuZGFyTGVuZ3RoKQorICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICBp
ZiAoY29tcG9uZW50TGVuZ3RoID4gbWF4Q2FsZW5kYXJMZW5ndGgpCisgICAgICAgICAgICByZXR1
cm4gZmFsc2U7CisgICAgICAgIHJldHVybiB0cnVlOworICAgIH07CisKKyAgICB1bnNpZ25lZCBj
dXJyZW50TmFtZUNvbXBvbmVudFN0YXJ0SW5kZXggPSAwOworICAgIGJvb2wgaXNMZWFkaW5nQ2hh
cmFjdGVySW5OYW1lQ29tcG9uZW50ID0gdHJ1ZTsKKyAgICBmb3IgKHVuc2lnbmVkIGluZGV4ID0g
MDsgaW5kZXggPCBuYW1lTGVuZ3RoOyArK2luZGV4KSB7CisgICAgICAgIGF1dG8gY2hhcmFjdGVy
ID0gYnVmZmVyW2luZGV4XTsKKyAgICAgICAgaWYgKGlzTGVhZGluZ0NoYXJhY3RlckluTmFtZUNv
bXBvbmVudCkgeworICAgICAgICAgICAgaWYgKCEoaXNBU0NJSUFscGhhKGNoYXJhY3RlcikgfHwg
aXNBU0NJSURpZ2l0KGNoYXJhY3RlcikpKQorICAgICAgICAgICAgICAgIHJldHVybiBzdGQ6Om51
bGxvcHQ7CisKKyAgICAgICAgICAgIGN1cnJlbnROYW1lQ29tcG9uZW50U3RhcnRJbmRleCA9IGlu
ZGV4OworICAgICAgICAgICAgaXNMZWFkaW5nQ2hhcmFjdGVySW5OYW1lQ29tcG9uZW50ID0gZmFs
c2U7CisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgfQorCisgICAgICAgIGlmIChjaGFy
YWN0ZXIgPT0gJy0nKSB7CisgICAgICAgICAgICBpZiAoIWlzVmFsaWRDb21wb25lbnQoY3VycmVu
dE5hbWVDb21wb25lbnRTdGFydEluZGV4LCBpbmRleCkpCisgICAgICAgICAgICAgICAgcmV0dXJu
IHN0ZDo6bnVsbG9wdDsKKyAgICAgICAgICAgIGlzTGVhZGluZ0NoYXJhY3RlckluTmFtZUNvbXBv
bmVudCA9IHRydWU7CisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgfQorCisgICAgICAg
IGlmICghKGlzQVNDSUlBbHBoYShjaGFyYWN0ZXIpIHx8IGlzQVNDSUlEaWdpdChjaGFyYWN0ZXIp
KSkKKyAgICAgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisgICAgfQorICAgIGlmIChpc0xl
YWRpbmdDaGFyYWN0ZXJJbk5hbWVDb21wb25lbnQpCisgICAgICAgIHJldHVybiBzdGQ6Om51bGxv
cHQ7CisgICAgaWYgKCFpc1ZhbGlkQ29tcG9uZW50KGN1cnJlbnROYW1lQ29tcG9uZW50U3RhcnRJ
bmRleCwgbmFtZUxlbmd0aCkpCisgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisKKyAgICBW
ZWN0b3I8TENoYXIsIG1heENhbGVuZGFyTGVuZ3RoPiByZXN1bHQ7CisgICAgcmVzdWx0LnJlc2Vy
dmVJbml0aWFsQ2FwYWNpdHkobmFtZUxlbmd0aCk7CisgICAgZm9yICh1bnNpZ25lZCBpbmRleCA9
IDA7IGluZGV4IDwgbmFtZUxlbmd0aDsgKytpbmRleCkKKyAgICAgICAgcmVzdWx0LnVuY2hlY2tl
ZEFwcGVuZChidWZmZXJbaW5kZXhdKTsKKyAgICBidWZmZXIuYWR2YW5jZUJ5KG5hbWVMZW5ndGgp
OworCisgICAgaWYgKGJ1ZmZlci5hdEVuZCgpKQorICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0
OworICAgIGlmICgqYnVmZmVyICE9ICddJykKKyAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsK
KyAgICBidWZmZXIuYWR2YW5jZSgpOworICAgIHJldHVybiBDYWxlbmRhclJlY29yZCB7IFdURk1v
dmUocmVzdWx0KSB9OworfQorCiB0ZW1wbGF0ZTx0eXBlbmFtZSBDaGFyYWN0ZXJUeXBlPgogc3Rh
dGljIHN0ZDo6b3B0aW9uYWw8c3RkOjp0dXBsZTxQbGFpblRpbWUsIHN0ZDo6b3B0aW9uYWw8VGlt
ZVpvbmVSZWNvcmQ+Pj4gcGFyc2VUaW1lKFN0cmluZ1BhcnNpbmdCdWZmZXI8Q2hhcmFjdGVyVHlw
ZT4mIGJ1ZmZlcikKIHsKQEAgLTY3MSwxNCArNzcyLDE0IEBAIHN0YXRpYyBzdGQ6Om9wdGlvbmFs
PHN0ZDo6dHVwbGU8UGxhaW5UaW1lLCBzdGQ6Om9wdGlvbmFsPFRpbWVab25lUmVjb3JkPj4+IHBh
cnNlCiAgICAgaWYgKCFwbGFpblRpbWUpCiAgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CiAg
ICAgaWYgKGJ1ZmZlci5hdEVuZCgpKQotICAgICAgICByZXR1cm4gc3RkOjp0dXBsZSB7IHBsYWlu
VGltZS52YWx1ZSgpLCBzdGQ6Om51bGxvcHQgfTsKKyAgICAgICAgcmV0dXJuIHN0ZDo6dHVwbGUg
eyBXVEZNb3ZlKHBsYWluVGltZS52YWx1ZSgpKSwgc3RkOjpudWxsb3B0IH07CiAgICAgaWYgKGNh
bkJlVGltZVpvbmUoYnVmZmVyLCAqYnVmZmVyKSkgewogICAgICAgICBhdXRvIHRpbWVab25lID0g
cGFyc2VUaW1lWm9uZShidWZmZXIpOwogICAgICAgICBpZiAoIXRpbWVab25lKQogICAgICAgICAg
ICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSAgICAgICAgcmV0dXJuIHN0ZDo6dHVwbGUgeyBwbGFp
blRpbWUudmFsdWUoKSwgdGltZVpvbmUgfTsKKyAgICAgICAgcmV0dXJuIHN0ZDo6dHVwbGUgeyBX
VEZNb3ZlKHBsYWluVGltZS52YWx1ZSgpKSwgV1RGTW92ZSh0aW1lWm9uZSkgfTsKICAgICB9Ci0g
ICAgcmV0dXJuIHN0ZDo6dHVwbGUgeyBwbGFpblRpbWUudmFsdWUoKSwgc3RkOjpudWxsb3B0IH07
CisgICAgcmV0dXJuIHN0ZDo6dHVwbGUgeyBXVEZNb3ZlKHBsYWluVGltZS52YWx1ZSgpKSwgc3Rk
OjpudWxsb3B0IH07CiB9CiAKIC8vIGh0dHBzOi8vdGMzOS5lcy9wcm9wb3NhbC10ZW1wb3JhbC8j
c2VjLXRlbXBvcmFsLWlzb2RheXNpbm1vbnRoCkBAIC04MzksMjUgKzk0MCw5MSBAQCBzdGF0aWMg
c3RkOjpvcHRpb25hbDxzdGQ6OnR1cGxlPFBsYWluRGF0ZSwgc3RkOjpvcHRpb25hbDxQbGFpblRp
bWU+LCBzdGQ6Om9wdGlvbgogICAgIGlmICghcGxhaW5EYXRlKQogICAgICAgICByZXR1cm4gc3Rk
OjpudWxsb3B0OwogICAgIGlmIChidWZmZXIuYXRFbmQoKSkKLSAgICAgICAgcmV0dXJuIHN0ZDo6
dHVwbGUgeyBwbGFpbkRhdGUudmFsdWUoKSwgc3RkOjpudWxsb3B0LCBzdGQ6Om51bGxvcHQgfTsK
KyAgICAgICAgcmV0dXJuIHN0ZDo6dHVwbGUgeyBXVEZNb3ZlKHBsYWluRGF0ZS52YWx1ZSgpKSwg
c3RkOjpudWxsb3B0LCBzdGQ6Om51bGxvcHQgfTsKIAogICAgIGlmICgqYnVmZmVyID09ICcgJyB8
fCAqYnVmZmVyID09ICdUJyB8fCAqYnVmZmVyID09ICd0JykgewogICAgICAgICBidWZmZXIuYWR2
YW5jZSgpOwogICAgICAgICBhdXRvIHBsYWluVGltZUFuZFRpbWVab25lID0gcGFyc2VUaW1lKGJ1
ZmZlcik7CiAgICAgICAgIGlmICghcGxhaW5UaW1lQW5kVGltZVpvbmUpCiAgICAgICAgICAgICBy
ZXR1cm4gc3RkOjpudWxsb3B0OwotICAgICAgICBhdXRvIFtwbGFpblRpbWUsIHRpbWVab25lXSA9
IHBsYWluVGltZUFuZFRpbWVab25lLnZhbHVlKCk7Ci0gICAgICAgIHJldHVybiBzdGQ6OnR1cGxl
IHsgcGxhaW5EYXRlLnZhbHVlKCksIHBsYWluVGltZSwgdGltZVpvbmUgfTsKKyAgICAgICAgYXV0
byBbcGxhaW5UaW1lLCB0aW1lWm9uZV0gPSBXVEZNb3ZlKHBsYWluVGltZUFuZFRpbWVab25lLnZh
bHVlKCkpOworICAgICAgICByZXR1cm4gc3RkOjp0dXBsZSB7IFdURk1vdmUocGxhaW5EYXRlLnZh
bHVlKCkpLCBXVEZNb3ZlKHBsYWluVGltZSksIFdURk1vdmUodGltZVpvbmUpIH07CiAgICAgfQog
CiAgICAgaWYgKGNhbkJlVGltZVpvbmUoYnVmZmVyLCAqYnVmZmVyKSkgewogICAgICAgICBhdXRv
IHRpbWVab25lID0gcGFyc2VUaW1lWm9uZShidWZmZXIpOwogICAgICAgICBpZiAoIXRpbWVab25l
KQogICAgICAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKLSAgICAgICAgcmV0dXJuIHN0ZDo6
dHVwbGUgeyBwbGFpbkRhdGUudmFsdWUoKSwgc3RkOjpudWxsb3B0LCB0aW1lWm9uZSB9OworICAg
ICAgICByZXR1cm4gc3RkOjp0dXBsZSB7IFdURk1vdmUocGxhaW5EYXRlLnZhbHVlKCkpLCBzdGQ6
Om51bGxvcHQsIFdURk1vdmUodGltZVpvbmUpIH07CiAgICAgfQogCi0gICAgcmV0dXJuIHN0ZDo6
dHVwbGUgeyBwbGFpbkRhdGUudmFsdWUoKSwgc3RkOjpudWxsb3B0LCBzdGQ6Om51bGxvcHQgfTsK
KyAgICByZXR1cm4gc3RkOjp0dXBsZSB7IFdURk1vdmUocGxhaW5EYXRlLnZhbHVlKCkpLCBzdGQ6
Om51bGxvcHQsIHN0ZDo6bnVsbG9wdCB9OworfQorCit0ZW1wbGF0ZTx0eXBlbmFtZSBDaGFyYWN0
ZXJUeXBlPgorc3RhdGljIHN0ZDo6b3B0aW9uYWw8c3RkOjp0dXBsZTxQbGFpblRpbWUsIHN0ZDo6
b3B0aW9uYWw8VGltZVpvbmVSZWNvcmQ+LCBzdGQ6Om9wdGlvbmFsPENhbGVuZGFyUmVjb3JkPj4+
IHBhcnNlQ2FsZW5kYXJUaW1lKFN0cmluZ1BhcnNpbmdCdWZmZXI8Q2hhcmFjdGVyVHlwZT4mIGJ1
ZmZlcikKK3sKKyAgICAvLyBodHRwczovL3RjMzkuZXMvcHJvcG9zYWwtdGVtcG9yYWwvI3Byb2Qt
Q2FsZW5kYXJUaW1lCisgICAgLy8gQ2FsZW5kYXJUaW1lIDoKKyAgICAvLyAgICAgVGltZURlc2ln
bmF0b3IgVGltZVNwZWMgVGltZVpvbmVbb3B0XSBDYWxlbmRhcltvcHRdCisgICAgLy8gICAgIFRp
bWVTcGVjIFRpbWVab25lW29wdF0gQ2FsZW5kYXIKKyAgICAvLyAgICAgVGltZVNwZWNXaXRoT3B0
aW9uYWxUaW1lWm9uZU5vdEFtYmlndW91cworCisgICAgaWYgKGJ1ZmZlci5hdEVuZCgpKQorICAg
ICAgICByZXR1cm4gc3RkOjpudWxsb3B0OworCisgICAgaWYgKCpidWZmZXIgPT0gJ1QnIHx8ICpi
dWZmZXIgPT0gJ3QnKQorICAgICAgICBidWZmZXIuYWR2YW5jZSgpOworCisgICAgYXV0byBwbGFp
blRpbWUgPSBwYXJzZVRpbWVTcGVjKGJ1ZmZlciwgU2Vjb25kNjBNb2RlOjpBY2NlcHQpOworICAg
IGlmICghcGxhaW5UaW1lKQorICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OworICAgIGlmIChi
dWZmZXIuYXRFbmQoKSkKKyAgICAgICAgcmV0dXJuIHN0ZDo6dHVwbGUgeyBXVEZNb3ZlKHBsYWlu
VGltZS52YWx1ZSgpKSwgc3RkOjpudWxsb3B0LCBzdGQ6Om51bGxvcHQgfTsKKworICAgIHN0ZDo6
b3B0aW9uYWw8VGltZVpvbmVSZWNvcmQ+IHRpbWVab25lT3B0aW9uYWw7CisgICAgaWYgKGNhbkJl
VGltZVpvbmUoYnVmZmVyLCAqYnVmZmVyKSkgeworICAgICAgICBhdXRvIHRpbWVab25lID0gcGFy
c2VUaW1lWm9uZShidWZmZXIpOworICAgICAgICBpZiAoIXRpbWVab25lKQorICAgICAgICAgICAg
cmV0dXJuIHN0ZDo6bnVsbG9wdDsKKyAgICAgICAgdGltZVpvbmVPcHRpb25hbCA9IFdURk1vdmUo
dGltZVpvbmUpOworICAgIH0KKworICAgIGlmIChidWZmZXIuYXRFbmQoKSkKKyAgICAgICAgcmV0
dXJuIHN0ZDo6dHVwbGUgeyBXVEZNb3ZlKHBsYWluVGltZS52YWx1ZSgpKSwgV1RGTW92ZSh0aW1l
Wm9uZU9wdGlvbmFsKSwgc3RkOjpudWxsb3B0IH07CisKKyAgICBzdGQ6Om9wdGlvbmFsPENhbGVu
ZGFyUmVjb3JkPiBjYWxlbmRhck9wdGlvbmFsOworICAgIGlmIChjYW5CZUNhbGVuZGFyKGJ1ZmZl
cikpIHsKKyAgICAgICAgYXV0byBjYWxlbmRhciA9IHBhcnNlQ2FsZW5kYXIoYnVmZmVyKTsKKyAg
ICAgICAgaWYgKCFjYWxlbmRhcikKKyAgICAgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7Cisg
ICAgICAgIGNhbGVuZGFyT3B0aW9uYWwgPSBXVEZNb3ZlKGNhbGVuZGFyKTsKKyAgICB9CisKKyAg
ICByZXR1cm4gc3RkOjp0dXBsZSB7IFdURk1vdmUocGxhaW5UaW1lLnZhbHVlKCkpLCBXVEZNb3Zl
KHRpbWVab25lT3B0aW9uYWwpLCBXVEZNb3ZlKGNhbGVuZGFyT3B0aW9uYWwpIH07Cit9CisKK3Rl
bXBsYXRlPHR5cGVuYW1lIENoYXJhY3RlclR5cGU+CitzdGF0aWMgc3RkOjpvcHRpb25hbDxzdGQ6
OnR1cGxlPFBsYWluRGF0ZSwgc3RkOjpvcHRpb25hbDxQbGFpblRpbWU+LCBzdGQ6Om9wdGlvbmFs
PFRpbWVab25lUmVjb3JkPiwgc3RkOjpvcHRpb25hbDxDYWxlbmRhclJlY29yZD4+PiBwYXJzZUNh
bGVuZGFyRGF0ZVRpbWUoU3RyaW5nUGFyc2luZ0J1ZmZlcjxDaGFyYWN0ZXJUeXBlPiYgYnVmZmVy
KQoreworICAgIC8vIGh0dHBzOi8vdGMzOS5lcy9wcm9wb3NhbC10ZW1wb3JhbC8jcHJvZC1EYXRl
VGltZQorICAgIC8vIENhbGVuZGFyRGF0ZVRpbWUgOgorICAgIC8vICAgICBEYXRlVGltZSBDYWxl
bmRhck5hbWVbb3B0XQorICAgIC8vCisgICAgYXV0byBkYXRlVGltZSA9IHBhcnNlRGF0ZVRpbWUo
YnVmZmVyKTsKKyAgICBpZiAoIWRhdGVUaW1lKQorICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0
OworCisgICAgYXV0byBbcGxhaW5EYXRlLCBwbGFpblRpbWVPcHRpb25hbCwgdGltZVpvbmVPcHRp
b25hbF0gPSBXVEZNb3ZlKGRhdGVUaW1lLnZhbHVlKCkpOworCisgICAgaWYgKCFidWZmZXIuYXRF
bmQoKSAmJiBjYW5CZUNhbGVuZGFyKGJ1ZmZlcikpIHsKKyAgICAgICAgYXV0byBjYWxlbmRhciA9
IHBhcnNlQ2FsZW5kYXIoYnVmZmVyKTsKKyAgICAgICAgaWYgKCFjYWxlbmRhcikKKyAgICAgICAg
ICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisgICAgICAgIHJldHVybiBzdGQ6OnR1cGxlIHsgV1RG
TW92ZShwbGFpbkRhdGUpLCBXVEZNb3ZlKHBsYWluVGltZU9wdGlvbmFsKSwgV1RGTW92ZSh0aW1l
Wm9uZU9wdGlvbmFsKSwgV1RGTW92ZShjYWxlbmRhcikgfTsKKyAgICB9CisKKyAgICByZXR1cm4g
c3RkOjp0dXBsZSB7IFdURk1vdmUocGxhaW5EYXRlKSwgV1RGTW92ZShwbGFpblRpbWVPcHRpb25h
bCksIFdURk1vdmUodGltZVpvbmVPcHRpb25hbCksIHN0ZDo6bnVsbG9wdCB9OwogfQogCiBzdGQ6
Om9wdGlvbmFsPHN0ZDo6dHVwbGU8UGxhaW5UaW1lLCBzdGQ6Om9wdGlvbmFsPFRpbWVab25lUmVj
b3JkPj4+IHBhcnNlVGltZShTdHJpbmdWaWV3IHN0cmluZykKQEAgLTg3MCw2ICsxMDM3LDE2IEBA
IHN0ZDo6b3B0aW9uYWw8c3RkOjp0dXBsZTxQbGFpblRpbWUsIHN0ZDo6b3B0aW9uYWw8VGltZVpv
bmVSZWNvcmQ+Pj4gcGFyc2VUaW1lKFN0CiAgICAgfSk7CiB9CiAKK3N0ZDo6b3B0aW9uYWw8c3Rk
Ojp0dXBsZTxQbGFpblRpbWUsIHN0ZDo6b3B0aW9uYWw8VGltZVpvbmVSZWNvcmQ+LCBzdGQ6Om9w
dGlvbmFsPENhbGVuZGFyUmVjb3JkPj4+IHBhcnNlQ2FsZW5kYXJUaW1lKFN0cmluZ1ZpZXcgc3Ry
aW5nKQoreworICAgIHJldHVybiByZWFkQ2hhcmFjdGVyc0ZvclBhcnNpbmcoc3RyaW5nLCBbXShh
dXRvIGJ1ZmZlcikgLT4gc3RkOjpvcHRpb25hbDxzdGQ6OnR1cGxlPFBsYWluVGltZSwgc3RkOjpv
cHRpb25hbDxUaW1lWm9uZVJlY29yZD4sIHN0ZDo6b3B0aW9uYWw8Q2FsZW5kYXJSZWNvcmQ+Pj4g
eworICAgICAgICBhdXRvIHJlc3VsdCA9IHBhcnNlQ2FsZW5kYXJUaW1lKGJ1ZmZlcik7CisgICAg
ICAgIGlmICghYnVmZmVyLmF0RW5kKCkpCisgICAgICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0
OworICAgICAgICByZXR1cm4gcmVzdWx0OworICAgIH0pOworfQorCiBzdGQ6Om9wdGlvbmFsPHN0
ZDo6dHVwbGU8UGxhaW5EYXRlLCBzdGQ6Om9wdGlvbmFsPFBsYWluVGltZT4sIHN0ZDo6b3B0aW9u
YWw8VGltZVpvbmVSZWNvcmQ+Pj4gcGFyc2VEYXRlVGltZShTdHJpbmdWaWV3IHN0cmluZykKIHsK
ICAgICByZXR1cm4gcmVhZENoYXJhY3RlcnNGb3JQYXJzaW5nKHN0cmluZywgW10oYXV0byBidWZm
ZXIpIC0+IHN0ZDo6b3B0aW9uYWw8c3RkOjp0dXBsZTxQbGFpbkRhdGUsIHN0ZDo6b3B0aW9uYWw8
UGxhaW5UaW1lPiwgc3RkOjpvcHRpb25hbDxUaW1lWm9uZVJlY29yZD4+PiB7CkBAIC04ODAsNiAr
MTA1NywxNiBAQCBzdGQ6Om9wdGlvbmFsPHN0ZDo6dHVwbGU8UGxhaW5EYXRlLCBzdGQ6Om9wdGlv
bmFsPFBsYWluVGltZT4sIHN0ZDo6b3B0aW9uYWw8VGltZQogICAgIH0pOwogfQogCitzdGQ6Om9w
dGlvbmFsPHN0ZDo6dHVwbGU8UGxhaW5EYXRlLCBzdGQ6Om9wdGlvbmFsPFBsYWluVGltZT4sIHN0
ZDo6b3B0aW9uYWw8VGltZVpvbmVSZWNvcmQ+LCBzdGQ6Om9wdGlvbmFsPENhbGVuZGFyUmVjb3Jk
Pj4+IHBhcnNlQ2FsZW5kYXJEYXRlVGltZShTdHJpbmdWaWV3IHN0cmluZykKK3sKKyAgICByZXR1
cm4gcmVhZENoYXJhY3RlcnNGb3JQYXJzaW5nKHN0cmluZywgW10oYXV0byBidWZmZXIpIC0+IHN0
ZDo6b3B0aW9uYWw8c3RkOjp0dXBsZTxQbGFpbkRhdGUsIHN0ZDo6b3B0aW9uYWw8UGxhaW5UaW1l
Piwgc3RkOjpvcHRpb25hbDxUaW1lWm9uZVJlY29yZD4sIHN0ZDo6b3B0aW9uYWw8Q2FsZW5kYXJS
ZWNvcmQ+Pj4geworICAgICAgICBhdXRvIHJlc3VsdCA9IHBhcnNlQ2FsZW5kYXJEYXRlVGltZShi
dWZmZXIpOworICAgICAgICBpZiAoIWJ1ZmZlci5hdEVuZCgpKQorICAgICAgICAgICAgcmV0dXJu
IHN0ZDo6bnVsbG9wdDsKKyAgICAgICAgcmV0dXJuIHJlc3VsdDsKKyAgICB9KTsKK30KKwogc3Rk
OjpvcHRpb25hbDxFeGFjdFRpbWU+IHBhcnNlSW5zdGFudChTdHJpbmdWaWV3IHN0cmluZykKIHsK
ICAgICAvLyBodHRwczovL3RjMzkuZXMvcHJvcG9zYWwtdGVtcG9yYWwvI3Byb2QtVGVtcG9yYWxJ
bnN0YW50U3RyaW5nCkBAIC04OTIsMjIgKzEwNzksMTkgQEAgc3RkOjpvcHRpb25hbDxFeGFjdFRp
bWU+IHBhcnNlSW5zdGFudChTdHJpbmdWaWV3IHN0cmluZykKICAgICAvLyAgICAgVGltZVpvbmVV
VENPZmZzZXQgVGltZVpvbmVCcmFja2V0ZWRBbm5vdGF0aW9uX29wdAogCiAgICAgcmV0dXJuIHJl
YWRDaGFyYWN0ZXJzRm9yUGFyc2luZyhzdHJpbmcsIFtdKGF1dG8gYnVmZmVyKSAtPiBzdGQ6Om9w
dGlvbmFsPEV4YWN0VGltZT4gewotICAgICAgICBhdXRvIGRhdGV0aW1lID0gcGFyc2VEYXRlVGlt
ZShidWZmZXIpOworICAgICAgICBhdXRvIGRhdGV0aW1lID0gcGFyc2VDYWxlbmRhckRhdGVUaW1l
KGJ1ZmZlcik7CiAgICAgICAgIGlmICghZGF0ZXRpbWUpCiAgICAgICAgICAgICByZXR1cm4gc3Rk
OjpudWxsb3B0OwotICAgICAgICBhdXRvIFtkYXRlLCBtYXliZVRpbWUsIG1heWJlVGltZVpvbmVd
ID0gZGF0ZXRpbWUudmFsdWUoKTsKLSAgICAgICAgaWYgKCFtYXliZVRpbWVab25lIHx8ICghbWF5
YmVUaW1lWm9uZS0+bV96ICYmICFtYXliZVRpbWVab25lLT5tX29mZnNldCkpCisgICAgICAgIGF1
dG8gW3BsYWluRGF0ZSwgcGxhaW5UaW1lT3B0aW9uYWwsIHRpbWVab25lT3B0aW9uYWwsIGNhbGVu
ZGFyT3B0aW9uYWxdID0gV1RGTW92ZShkYXRldGltZS52YWx1ZSgpKTsKKyAgICAgICAgaWYgKCF0
aW1lWm9uZU9wdGlvbmFsIHx8ICghdGltZVpvbmVPcHRpb25hbC0+bV96ICYmICF0aW1lWm9uZU9w
dGlvbmFsLT5tX29mZnNldCkpCiAgICAgICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwotICAg
ICAgICAvLyBGSVhNRTogcGFyc2UgY2FsZW5kYXIgYW5ub3RhdGlvbgogICAgICAgICBpZiAoIWJ1
ZmZlci5hdEVuZCgpKQogICAgICAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKIAotICAgICAg
ICBQbGFpblRpbWUgdGltZTsKLSAgICAgICAgaWYgKG1heWJlVGltZSkKLSAgICAgICAgICAgIHRp
bWUgPSBtYXliZVRpbWUudmFsdWUoKTsKKyAgICAgICAgUGxhaW5UaW1lIHBsYWluVGltZSA9IHBs
YWluVGltZU9wdGlvbmFsLnZhbHVlX29yKFBsYWluVGltZSgpKTsKIAotICAgICAgICBpbnQ2NF90
IG9mZnNldCA9IG1heWJlVGltZVpvbmUtPm1feiA/IDAgOiAqbWF5YmVUaW1lWm9uZS0+bV9vZmZz
ZXQ7Ci0gICAgICAgIHJldHVybiB7IEV4YWN0VGltZTo6ZnJvbUlTT1BhcnRzQW5kT2Zmc2V0KGRh
dGUueWVhcigpLCBkYXRlLm1vbnRoKCksIGRhdGUuZGF5KCksIHRpbWUuaG91cigpLCB0aW1lLm1p
bnV0ZSgpLCB0aW1lLnNlY29uZCgpLCB0aW1lLm1pbGxpc2Vjb25kKCksIHRpbWUubWljcm9zZWNv
bmQoKSwgdGltZS5uYW5vc2Vjb25kKCksIG9mZnNldCkgfTsKKyAgICAgICAgaW50NjRfdCBvZmZz
ZXQgPSB0aW1lWm9uZU9wdGlvbmFsLT5tX3ogPyAwIDogKnRpbWVab25lT3B0aW9uYWwtPm1fb2Zm
c2V0OworICAgICAgICByZXR1cm4geyBFeGFjdFRpbWU6OmZyb21JU09QYXJ0c0FuZE9mZnNldChw
bGFpbkRhdGUueWVhcigpLCBwbGFpbkRhdGUubW9udGgoKSwgcGxhaW5EYXRlLmRheSgpLCBwbGFp
blRpbWUuaG91cigpLCBwbGFpblRpbWUubWludXRlKCksIHBsYWluVGltZS5zZWNvbmQoKSwgcGxh
aW5UaW1lLm1pbGxpc2Vjb25kKCksIHBsYWluVGltZS5taWNyb3NlY29uZCgpLCBwbGFpblRpbWUu
bmFub3NlY29uZCgpLCBvZmZzZXQpIH07CiAgICAgfSk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lTTzg2MDEuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0lTTzg2MDEuaAppbmRleCAyNjUwZTljMDFhNGNiZGJkMzEwZjkxZjIyZjFhOTFk
N2JmN2U2YzY3Li4yMjNiNjhkMmYyM2Q0ZWU0YTgxNDA2MTQ0NDA2NzM3M2EzOGYxYThiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JU084NjAxLmgKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSVNPODYwMS5oCkBAIC0yNDcsNyArMjQ3LDEzIEBA
IHN0YXRpY19hc3NlcnQoc2l6ZW9mKFBsYWluVGltZSkgPD0gc2l6ZW9mKHVpbnQ2NF90KSk7CiBj
bGFzcyBQbGFpbkRhdGUgewogICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEKFBsYWluRGF0ZSk7
CiBwdWJsaWM6Ci0gICAgY29uc3RleHByIFBsYWluRGF0ZSgpID0gZGVmYXVsdDsKKyAgICBjb25z
dGV4cHIgUGxhaW5EYXRlKCkKKyAgICAgICAgOiBtX3llYXIoMCkKKyAgICAgICAgLCBtX21vbnRo
KDEpCisgICAgICAgICwgbV9kYXkoMSkKKyAgICB7CisgICAgfQorCiAgICAgY29uc3RleHByIFBs
YWluRGF0ZShpbnQzMl90IHllYXIsIHVuc2lnbmVkIG1vbnRoLCB1bnNpZ25lZCBkYXkpCiAgICAg
ICAgIDogbV95ZWFyKHllYXIpCiAgICAgICAgICwgbV9tb250aChtb250aCkKQEAgLTI2MCwxMCAr
MjY2LDEzIEBAIGNsYXNzIFBsYWluRGF0ZSB7CiAgICAgdWludDhfdCBkYXkoKSBjb25zdCB7IHJl
dHVybiBtX2RheTsgfQogCiBwcml2YXRlOgotICAgIGludDMyX3QgbV95ZWFyIHsgMCB9OwotICAg
IHVpbnQ4X3QgbV9tb250aCB7IDEgfTsKLSAgICB1aW50OF90IG1fZGF5IHsgMSB9OworICAgIGlu
dDMyX3QgbV95ZWFyIDogMjE7IC8vIEVDTUFTY3JpcHQgbWF4IC8gbWluIGRhdGUncyB5ZWFyIGNh
biBiZSByZXByZXNlbnRlZCA8PSAyMCBiaXRzLgorICAgIGludDMyX3QgbV9tb250aCA6IDU7Cisg
ICAgaW50MzJfdCBtX2RheSA6IDY7CiB9OworI2lmIENPTVBJTEVSKEdDQ19DT01QQVRJQkxFKQor
c3RhdGljX2Fzc2VydChzaXplb2YoUGxhaW5EYXRlKSA9PSBzaXplb2YoaW50MzJfdCkpOworI2Vu
ZGlmCiAKIHVzaW5nIFRpbWVab25lID0gc3RkOjp2YXJpYW50PFRpbWVab25lSUQsIGludDY0X3Q+
OwogCkBAIC0yNzUsMTMgKzI4NCwyMSBAQCBzdHJ1Y3QgVGltZVpvbmVSZWNvcmQgewogICAgIHN0
ZDo6dmFyaWFudDxWZWN0b3I8TENoYXI+LCBpbnQ2NF90PiBtX25hbWVPck9mZnNldDsKIH07CiAK
K3N0YXRpYyBjb25zdGV4cHIgdW5zaWduZWQgbWluQ2FsZW5kYXJMZW5ndGggPSAzOworc3RhdGlj
IGNvbnN0ZXhwciB1bnNpZ25lZCBtYXhDYWxlbmRhckxlbmd0aCA9IDg7CitzdHJ1Y3QgQ2FsZW5k
YXJSZWNvcmQgeworICAgIFZlY3RvcjxMQ2hhciwgbWF4Q2FsZW5kYXJMZW5ndGg+IG1fbmFtZTsK
K307CisKIC8vIGh0dHBzOi8vdGMzOS5lcy9wcm9wb3NhbC10ZW1wb3JhbC8jc3VwLWlzdmFsaWR0
aW1lem9uZW5hbWUKIHN0ZDo6b3B0aW9uYWw8VGltZVpvbmVJRD4gcGFyc2VUaW1lWm9uZU5hbWUo
U3RyaW5nVmlldyk7CiBzdGQ6Om9wdGlvbmFsPER1cmF0aW9uPiBwYXJzZUR1cmF0aW9uKFN0cmlu
Z1ZpZXcpOwogc3RkOjpvcHRpb25hbDxpbnQ2NF90PiBwYXJzZVRpbWVab25lTnVtZXJpY1VUQ09m
ZnNldChTdHJpbmdWaWV3KTsKIGVudW0gY2xhc3MgVmFsaWRhdGVUaW1lWm9uZUlEIHsgWWVzLCBO
byB9Owogc3RkOjpvcHRpb25hbDxzdGQ6OnR1cGxlPFBsYWluVGltZSwgc3RkOjpvcHRpb25hbDxU
aW1lWm9uZVJlY29yZD4+PiBwYXJzZVRpbWUoU3RyaW5nVmlldyk7CitzdGQ6Om9wdGlvbmFsPHN0
ZDo6dHVwbGU8UGxhaW5UaW1lLCBzdGQ6Om9wdGlvbmFsPFRpbWVab25lUmVjb3JkPiwgc3RkOjpv
cHRpb25hbDxDYWxlbmRhclJlY29yZD4+PiBwYXJzZUNhbGVuZGFyVGltZShTdHJpbmdWaWV3KTsK
IHN0ZDo6b3B0aW9uYWw8c3RkOjp0dXBsZTxQbGFpbkRhdGUsIHN0ZDo6b3B0aW9uYWw8UGxhaW5U
aW1lPiwgc3RkOjpvcHRpb25hbDxUaW1lWm9uZVJlY29yZD4+PiBwYXJzZURhdGVUaW1lKFN0cmlu
Z1ZpZXcpOworc3RkOjpvcHRpb25hbDxzdGQ6OnR1cGxlPFBsYWluRGF0ZSwgc3RkOjpvcHRpb25h
bDxQbGFpblRpbWU+LCBzdGQ6Om9wdGlvbmFsPFRpbWVab25lUmVjb3JkPiwgc3RkOjpvcHRpb25h
bDxDYWxlbmRhclJlY29yZD4+PiBwYXJzZUNhbGVuZGFyRGF0ZVRpbWUoU3RyaW5nVmlldyk7CiBT
dHJpbmcgZm9ybWF0VGltZVpvbmVPZmZzZXRTdHJpbmcoaW50NjRfdCk7CiBTdHJpbmcgdGVtcG9y
YWxUaW1lVG9TdHJpbmcoUGxhaW5UaW1lLCBzdGQ6OnR1cGxlPFByZWNpc2lvbiwgdW5zaWduZWQ+
IHByZWNpc2lvbik7CiBTdHJpbmcgdGVtcG9yYWxEYXRlVG9TdHJpbmcoUGxhaW5EYXRlKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRl
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRlLmNw
cAppbmRleCBjNzhmOTRiZmIwMTE1MjdhNjZhZjFiODVkOTZkM2U0Y2U2ZWI0ODNjLi5mNWRkYmI0
NjZiZmRkMDBhYWQ0N2IxZWMyZTcwMzE0MDZlMTlkOWM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluRGF0ZS5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpbkRhdGUuY3BwCkBAIC0xNTEsMTAgKzE1
MSwxNCBAQCBUZW1wb3JhbFBsYWluRGF0ZSogVGVtcG9yYWxQbGFpbkRhdGU6OmZyb20oSlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZQogICAgIGF1dG8gc3RyaW5nID0gaXRlbVZh
bHVlLnRvV1RGU3RyaW5nKGdsb2JhbE9iamVjdCk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihz
Y29wZSwgeyB9KTsKIAotICAgIGF1dG8gZGF0ZVRpbWUgPSBJU084NjAxOjpwYXJzZURhdGVUaW1l
KHN0cmluZyk7CisgICAgLy8gaHR0cHM6Ly90YzM5LmVzL3Byb3Bvc2FsLXRlbXBvcmFsLyNzZWMt
dGVtcG9yYWwtcGFyc2V0ZW1wb3JhbGRhdGVzdHJpbmcKKyAgICAvLyBUZW1wb3JhbERhdGVTdHJp
bmcgOgorICAgIC8vICAgICBDYWxlbmRhckRhdGVUaW1lCisgICAgYXV0byBkYXRlVGltZSA9IElT
Tzg2MDE6OnBhcnNlQ2FsZW5kYXJEYXRlVGltZShzdHJpbmcpOwogICAgIGlmIChkYXRlVGltZSkg
ewotICAgICAgICBhdXRvIFtwbGFpbkRhdGUsIHBsYWluVGltZU9wdGlvbmFsLCB0aW1lWm9uZU9w
dGlvbmFsXSA9IGRhdGVUaW1lLnZhbHVlKCk7Ci0gICAgICAgIHJldHVybiBUZW1wb3JhbFBsYWlu
RGF0ZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QtPnBsYWluRGF0ZVN0cnVjdHVyZSgpLCBXVEZN
b3ZlKHBsYWluRGF0ZSkpOworICAgICAgICBhdXRvIFtwbGFpbkRhdGUsIHBsYWluVGltZU9wdGlv
bmFsLCB0aW1lWm9uZU9wdGlvbmFsLCBjYWxlbmRhck9wdGlvbmFsXSA9IFdURk1vdmUoZGF0ZVRp
bWUudmFsdWUoKSk7CisgICAgICAgIGlmICghKHRpbWVab25lT3B0aW9uYWwgJiYgdGltZVpvbmVP
cHRpb25hbC0+bV96KSkKKyAgICAgICAgICAgIHJldHVybiBUZW1wb3JhbFBsYWluRGF0ZTo6Y3Jl
YXRlKHZtLCBnbG9iYWxPYmplY3QtPnBsYWluRGF0ZVN0cnVjdHVyZSgpLCBXVEZNb3ZlKHBsYWlu
RGF0ZSkpOwogICAgIH0KIAogICAgIHRocm93UmFuZ2VFcnJvcihnbG9iYWxPYmplY3QsIHNjb3Bl
LCAiaW52YWxpZCBkYXRlIHN0cmluZyJfcyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluVGltZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9UZW1wb3JhbFBsYWluVGltZS5jcHAKaW5kZXggZmJjZDY2N2RmNGYwNGViNjZh
MGYwZDJmMjhkNzc5MDYxMTMwNzRhZi4uZjMzZjZhZmZiOTA4MGY2MDA4OGRjMTA0YTk0NTRmMjIz
YmViOTZlNSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9y
YWxQbGFpblRpbWUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBv
cmFsUGxhaW5UaW1lLmNwcApAQCAtNDE1LDIwICs0MTUsMjggQEAgVGVtcG9yYWxQbGFpblRpbWUq
IFRlbXBvcmFsUGxhaW5UaW1lOjpmcm9tKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpT
VmFsdWUKICAgICAgICAgcmV0dXJuIFRlbXBvcmFsUGxhaW5UaW1lOjpjcmVhdGUodm0sIGdsb2Jh
bE9iamVjdC0+cGxhaW5UaW1lU3RydWN0dXJlKCksIFdURk1vdmUocGxhaW5UaW1lKSk7CiAgICAg
fQogCisgICAgLy8gaHR0cHM6Ly90YzM5LmVzL3Byb3Bvc2FsLXRlbXBvcmFsLyNzZWMtdGVtcG9y
YWwtcGFyc2V0ZW1wb3JhbHRpbWVzdHJpbmcKKyAgICAvLyBUZW1wb3JhbFRpbWVTdHJpbmcgOgor
ICAgIC8vICAgIENhbGVuZGFyVGltZQorICAgIC8vICAgIENhbGVuZGFyRGF0ZVRpbWVUaW1lUmVx
dWlyZWQKKwogICAgIGF1dG8gc3RyaW5nID0gaXRlbVZhbHVlLnRvV1RGU3RyaW5nKGdsb2JhbE9i
amVjdCk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgeyB9KTsKIAotICAgIGF1dG8g
dGltZSA9IElTTzg2MDE6OnBhcnNlVGltZShzdHJpbmcpOworICAgIGF1dG8gdGltZSA9IElTTzg2
MDE6OnBhcnNlQ2FsZW5kYXJUaW1lKHN0cmluZyk7CiAgICAgaWYgKHRpbWUpIHsKLSAgICAgICAg
YXV0byBbcGxhaW5UaW1lLCB0aW1lWm9uZU9wdGlvbmFsXSA9IHRpbWUudmFsdWUoKTsKLSAgICAg
ICAgcmV0dXJuIFRlbXBvcmFsUGxhaW5UaW1lOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdC0+cGxh
aW5UaW1lU3RydWN0dXJlKCksIFdURk1vdmUocGxhaW5UaW1lKSk7CisgICAgICAgIGF1dG8gW3Bs
YWluVGltZSwgdGltZVpvbmVPcHRpb25hbCwgY2FsZW5kYXJPcHRpb25hbF0gPSBXVEZNb3ZlKHRp
bWUudmFsdWUoKSk7CisgICAgICAgIGlmICghKHRpbWVab25lT3B0aW9uYWwgJiYgdGltZVpvbmVP
cHRpb25hbC0+bV96KSkKKyAgICAgICAgICAgIHJldHVybiBUZW1wb3JhbFBsYWluVGltZTo6Y3Jl
YXRlKHZtLCBnbG9iYWxPYmplY3QtPnBsYWluVGltZVN0cnVjdHVyZSgpLCBXVEZNb3ZlKHBsYWlu
VGltZSkpOwogICAgIH0KIAotICAgIGF1dG8gZGF0ZVRpbWUgPSBJU084NjAxOjpwYXJzZURhdGVU
aW1lKHN0cmluZyk7CisgICAgYXV0byBkYXRlVGltZSA9IElTTzg2MDE6OnBhcnNlQ2FsZW5kYXJE
YXRlVGltZShzdHJpbmcpOwogICAgIGlmIChkYXRlVGltZSkgewotICAgICAgICBhdXRvIFtwbGFp
bkRhdGUsIHBsYWluVGltZU9wdGlvbmFsLCB0aW1lWm9uZU9wdGlvbmFsXSA9IGRhdGVUaW1lLnZh
bHVlKCk7Ci0gICAgICAgIGlmIChwbGFpblRpbWVPcHRpb25hbCkKLSAgICAgICAgICAgIHJldHVy
biBUZW1wb3JhbFBsYWluVGltZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QtPnBsYWluVGltZVN0
cnVjdHVyZSgpLCBXVEZNb3ZlKHBsYWluVGltZU9wdGlvbmFsLnZhbHVlKCkpKTsKKyAgICAgICAg
YXV0byBbcGxhaW5EYXRlLCBwbGFpblRpbWVPcHRpb25hbCwgdGltZVpvbmVPcHRpb25hbCwgY2Fs
ZW5kYXJPcHRpb25hbF0gPSBXVEZNb3ZlKGRhdGVUaW1lLnZhbHVlKCkpOworICAgICAgICBpZiAo
cGxhaW5UaW1lT3B0aW9uYWwpIHsKKyAgICAgICAgICAgIGlmICghKHRpbWVab25lT3B0aW9uYWwg
JiYgdGltZVpvbmVPcHRpb25hbC0+bV96KSkKKyAgICAgICAgICAgICAgICByZXR1cm4gVGVtcG9y
YWxQbGFpblRpbWU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LT5wbGFpblRpbWVTdHJ1Y3R1cmUo
KSwgV1RGTW92ZShwbGFpblRpbWVPcHRpb25hbC52YWx1ZSgpKSk7CisgICAgICAgIH0KICAgICB9
CiAKICAgICB0aHJvd1JhbmdlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgImludmFsaWQgdGlt
ZSBzdHJpbmciX3MpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy9DaGFuZ2VMb2cgYi9KU1Rlc3RzL0No
YW5nZUxvZwppbmRleCAwNjU2YWQyOGZkNjJiYTY2ZmZjZDEzMTAyNmYzNjEzNDdhODk2MWU4Li5j
YzAwN2ZkNmYxYjVhYTg0NjQzMWMxY2M0YjlhYTZkMGJmZjE3MDgwIDEwMDY0NAotLS0gYS9KU1Rl
c3RzL0NoYW5nZUxvZworKysgYi9KU1Rlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisy
MDIyLTAyLTIwICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CisKKyAgICAgICAg
W0pTQ10gQWRkIENhbGVuZGFyRGF0ZVRpbWUgcGFyc2luZworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM2ODg2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBzdHJlc3MvdGVtcG9yYWwtaW5zdGFudC5qczoK
KyAgICAgICAgKiBzdHJlc3MvdGVtcG9yYWwtcGxhaW5kYXRlLmpzOgorICAgICAgICAqIHN0cmVz
cy90ZW1wb3JhbC1wbGFpbnRpbWUuanM6CisKIDIwMjItMDItMTkgIERlYW4gSmFja3NvbiAgPGRp
bm9AYXBwbGUuY29tPgogCiAgICAgICAgIFtKU0NdIEltcGxlbWVudCBUZW1wb3JhbC5QbGFpbkRh
dGUKZGlmZiAtLWdpdCBhL0pTVGVzdHMvc3RyZXNzL3RlbXBvcmFsLWluc3RhbnQuanMgYi9KU1Rl
c3RzL3N0cmVzcy90ZW1wb3JhbC1pbnN0YW50LmpzCmluZGV4IGQ5NTJlZDFmOWI0ZWY1NDU2MWE5
MTJjYjA4YzIzMjBjNGUxNDRmYjkuLmU3NjI1NDcwNGI1YTkwYzAwZGQ2OWJjNDVlNTBmYzhiNjQ3
ZTUzYTcgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvc3RyZXNzL3RlbXBvcmFsLWluc3RhbnQuanMKKysr
IGIvSlNUZXN0cy9zdHJlc3MvdGVtcG9yYWwtaW5zdGFudC5qcwpAQCAtMzEzLDggKzMxMyw3IEBA
IGZ1bmN0aW9uIHNob3VsZFRocm93KGZ1bmMsIGVycm9yVHlwZSwgbWVzc2FnZSkgewogc2hvdWxk
QmUoYCR7VGVtcG9yYWwuSW5zdGFudC5mcm9tKCcxOTc2LTExLTE4VDE1OjIzOjMwKzAwJyl9YCwg
JzE5NzYtMTEtMThUMTU6MjM6MzBaJyk7CiBzaG91bGRCZShgJHtUZW1wb3JhbC5JbnN0YW50LmZy
b20oJzE5NzYtMTEtMThUMTVaJyl9YCwgJzE5NzYtMTEtMThUMTU6MDA6MDBaJyk7CiAvLyBpZ25v
cmVzIGFueSBzcGVjaWZpZWQgY2FsZW5kYXIKLS8vIEZJWE1FOiBwYXJzZSBjYWxlbmRhcgotLy8g
c2hvdWxkQmUoYCR7VGVtcG9yYWwuSW5zdGFudC5mcm9tKCcxOTc2LTExLTE4VDE1OjIzOjMwLjEy
MzQ1Njc4OVpbdS1jYT1kaXNjb3JkXScpfWAsICcxOTc2LTExLTE4VDE1OjIzOjMwLjEyMzQ1Njc4
OVonKTsKK3Nob3VsZEJlKGAke1RlbXBvcmFsLkluc3RhbnQuZnJvbSgnMTk3Ni0xMS0xOFQxNToy
MzozMC4xMjM0NTY3ODlaW3UtY2E9ZGlzY29yZF0nKX1gLCAnMTk3Ni0xMS0xOFQxNToyMzozMC4x
MjM0NTY3ODlaJyk7CiAvLyBubyBqdW5rIGF0IGVuZCBvZiBzdHJpbmcKIHNob3VsZFRocm93KCgp
ID0+IFRlbXBvcmFsLkluc3RhbnQuZnJvbSgnMTk3Ni0xMS0xOFQxNToyMzozMC4xMjM0NTY3ODla
anVuaycpLCBSYW5nZUVycm9yKTsKIApkaWZmIC0tZ2l0IGEvSlNUZXN0cy9zdHJlc3MvdGVtcG9y
YWwtcGxhaW5kYXRlLmpzIGIvSlNUZXN0cy9zdHJlc3MvdGVtcG9yYWwtcGxhaW5kYXRlLmpzCmlu
ZGV4IGE0MWE2ZmRiOGRmNzMwMGMxMmRiZWRmMTcyMDdjMWVlZDI0ZmM0ZmIuLjgwZjE3NjgzNGM4
NjE1ZDViNWZhMjBjNTYxYzI4ZTA2NTYzZmVlMTggMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvc3RyZXNz
L3RlbXBvcmFsLXBsYWluZGF0ZS5qcworKysgYi9KU1Rlc3RzL3N0cmVzcy90ZW1wb3JhbC1wbGFp
bmRhdGUuanMKQEAgLTQ3LDcgKzQ3LDYgQEAgZnVuY3Rpb24gc2hvdWxkVGhyb3coZnVuYywgZXJy
b3JUeXBlLCBtZXNzYWdlKSB7CiBzaG91bGRCZShTdHJpbmcoVGVtcG9yYWwuUGxhaW5EYXRlLmZy
b20oJzIwMDctMDEtMDlUMDM6MjQ6MzAnKSksIGAyMDA3LTAxLTA5YCk7CiBzaG91bGRCZShTdHJp
bmcoVGVtcG9yYWwuUGxhaW5EYXRlLmZyb20oJzIwMDctMDEtMDl0MDM6MjQ6MzAnKSksIGAyMDA3
LTAxLTA5YCk7CiBzaG91bGRCZShTdHJpbmcoVGVtcG9yYWwuUGxhaW5EYXRlLmZyb20oJzIwMDct
MDEtMDkgMDM6MjQ6MzAnKSksIGAyMDA3LTAxLTA5YCk7Ci1zaG91bGRCZShTdHJpbmcoVGVtcG9y
YWwuUGxhaW5EYXRlLmZyb20oJzIwMDctMDEtMDlUMDM6MjQ6MzBaJykpLCBgMjAwNy0wMS0wOWAp
Owogc2hvdWxkQmUoU3RyaW5nKFRlbXBvcmFsLlBsYWluRGF0ZS5mcm9tKCcyMDA3LTAxLTA5VDAz
OjI0OjMwKzIwOjIwOjU5JykpLCBgMjAwNy0wMS0wOWApOwogc2hvdWxkQmUoU3RyaW5nKFRlbXBv
cmFsLlBsYWluRGF0ZS5mcm9tKCcyMDA3LTAxLTA5VDAzOjI0OjMwLTIwOjIwOjU5JykpLCBgMjAw
Ny0wMS0wOWApOwogc2hvdWxkQmUoU3RyaW5nKFRlbXBvcmFsLlBsYWluRGF0ZS5mcm9tKCcyMDA3
LTAxLTA5VDAzOjI0OjMwXHUyMjEyMjA6MjA6NTknKSksIGAyMDA3LTAxLTA5YCk7CkBAIC03Nyw2
ICs3Niw5IEBAIGZ1bmN0aW9uIHNob3VsZFRocm93KGZ1bmMsIGVycm9yVHlwZSwgbWVzc2FnZSkg
ewogc2hvdWxkQmUoU3RyaW5nKFRlbXBvcmFsLlBsYWluRGF0ZS5mcm9tKCcyMDA3LTAxLTA5IDAz
OjI0OjMwKzAxOjAwWyswMTowMDowMC4xMjM0NTY3ODldJykpLCBgMjAwNy0wMS0wOWApOwogc2hv
dWxkQmUoU3RyaW5nKFRlbXBvcmFsLlBsYWluRGF0ZS5mcm9tKCcyMDA3LTAxLTA5IDAzOjI0OjMw
KzAxOjAwWy0wMTowMF0nKSksIGAyMDA3LTAxLTA5YCk7CiBzaG91bGRCZShTdHJpbmcoVGVtcG9y
YWwuUGxhaW5EYXRlLmZyb20oJzIwMDctMDEtMDkgMDM6MjQ6MzArMDE6MDBbXHUyMjEyMDE6MDBd
JykpLCBgMjAwNy0wMS0wOWApOworc2hvdWxkQmUoU3RyaW5nKFRlbXBvcmFsLlBsYWluRGF0ZS5m
cm9tKCcyMDA3LTAxLTA5IDAzOjI0OjMwKzAxOjAwW3UtY2E9amFwYW5lc2VdJykpLCBgMjAwNy0w
MS0wOWApOworc2hvdWxkQmUoU3RyaW5nKFRlbXBvcmFsLlBsYWluRGF0ZS5mcm9tKCcyMDA3LTAx
LTA5IDAzOjI0OjMwKzAxOjAwW0V1cm9wZS9CcnVzc2Vsc11bdS1jYT1qYXBhbmVzZV0nKSksIGAy
MDA3LTAxLTA5YCk7CitzaG91bGRCZShTdHJpbmcoVGVtcG9yYWwuUGxhaW5EYXRlLmZyb20oJzIw
MDctMDEtMDlbdS1jYT1qYXBhbmVzZV0nKSksIGAyMDA3LTAxLTA5YCk7CiB7CiAgICAgbGV0IGRh
dGUgPSBUZW1wb3JhbC5QbGFpbkRhdGUuZnJvbSgnMjAwNy0wMS0wOVQwMzoyNDozMCswMTowMFtF
dXJvcGUvQnJ1c3NlbHNdJykKICAgICBzaG91bGRCZShkYXRlID09PSBUZW1wb3JhbC5QbGFpbkRh
dGUuZnJvbShkYXRlKSwgZmFsc2UpOwpAQCAtMTQyLDYgKzE0NCw5IEBAIGZ1bmN0aW9uIHNob3Vs
ZFRocm93KGZ1bmMsIGVycm9yVHlwZSwgbWVzc2FnZSkgewogICAgICIyMDA3LTAxLTA5IDAzOjI0
OjMwKzAxOjAwWzAyOjAwMDAuMTIzNDU2Nzg5XSIsCiAgICAgIjIwMDctMDEtMDkgMDM6MjQ6MzAr
MDE6MDBbMDIwMDowMC4xMjM0NTY3ODldIiwKICAgICAiMjAwNy0wMS0wOSAwMzoyNDozMCswMTow
MFswMjowMDo2MC4xMjM0NTY3ODldIiwKKyAgICAiMjAwNy0wMS0wOVQwMzoyNDozMFoiLCAvLyBV
VENEZXNpZ25hdG9yCisgICAgIjIwMDctMDEtMDkgMDM6MjQ6MzBbdS1jYT1qYXBhbmVzZV1bRXVy
b3BlL0JydXNzZWxzXSIsCisgICAgIjIwMDctMDEtMDkgMDM6MjQ6MzArMDE6MDBbdS1jYT1qYXBh
bmVzZV1bRXVyb3BlL0JydXNzZWxzXSIsCiBdOwogCiBmb3IgKGxldCB0ZXh0IG9mIGZhaWx1cmVz
KSB7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3N0cmVzcy90ZW1wb3JhbC1wbGFpbnRpbWUuanMgYi9K
U1Rlc3RzL3N0cmVzcy90ZW1wb3JhbC1wbGFpbnRpbWUuanMKaW5kZXggYWQ1ZjI0NGQ5MTQzOGZk
ZWYzMWE3MmVmYzI2ZDQzM2VmYTNlZDFiOS4uYTgyYmYzN2EyYzU3YTAxM2ZmZjhlOWE1MzcwZTM0
MjIzNzUxZTg5MyAxMDA2NDQKLS0tIGEvSlNUZXN0cy9zdHJlc3MvdGVtcG9yYWwtcGxhaW50aW1l
LmpzCisrKyBiL0pTVGVzdHMvc3RyZXNzL3RlbXBvcmFsLXBsYWludGltZS5qcwpAQCAtMTAyLDEw
ICsxMDIsMTQgQEAgZnVuY3Rpb24gc2hvdWxkVGhyb3coZnVuYywgZXJyb3JUeXBlLCBtZXNzYWdl
KSB7CiBzaG91bGRCZShTdHJpbmcoVGVtcG9yYWwuUGxhaW5UaW1lLmZyb20oJzAzOjI0OjMwJykp
LCBgMDM6MjQ6MzBgKTsKIHNob3VsZEJlKFN0cmluZyhUZW1wb3JhbC5QbGFpblRpbWUuZnJvbSgn
MjAyMC0wMScpKSwgYDIwOjIwOjAwYCk7IC8vIC0wMSBVVEMgb2Zmc2V0CiBzaG91bGRCZShTdHJp
bmcoVGVtcG9yYWwuUGxhaW5UaW1lLmZyb20oJzAxLTAxJykpLCBgMDE6MDA6MDBgKTsgLy8gLTAx
IFVUQyBvZmZzZXQKK3Nob3VsZEJlKFN0cmluZyhUZW1wb3JhbC5QbGFpblRpbWUuZnJvbSgnMDM6
MjQ6MzBbdS1jYT1qYXBhbmVzZV0nKSksIGAwMzoyNDozMGApOworc2hvdWxkQmUoU3RyaW5nKFRl
bXBvcmFsLlBsYWluVGltZS5mcm9tKCcwMzoyNDozMCswMTowMFtFdXJvcGUvQnJ1c3NlbHNdW3Ut
Y2E9amFwYW5lc2VdJykpLCBgMDM6MjQ6MzBgKTsKK3Nob3VsZEJlKFN0cmluZyhUZW1wb3JhbC5Q
bGFpblRpbWUuZnJvbSgnMDM6MjQ6MzArMDE6MDBbdS1jYT1qYXBhbmVzZV0nKSksIGAwMzoyNDoz
MGApOworc2hvdWxkQmUoU3RyaW5nKFRlbXBvcmFsLlBsYWluVGltZS5mcm9tKCdUMDM6MjQ6MzAr
MDE6MDBbRXVyb3BlL0JydXNzZWxzXVt1LWNhPWphcGFuZXNlXScpKSwgYDAzOjI0OjMwYCk7Citz
aG91bGRCZShTdHJpbmcoVGVtcG9yYWwuUGxhaW5UaW1lLmZyb20oJ1QwMzoyNDozMCswMTowMFt1
LWNhPWphcGFuZXNlXScpKSwgYDAzOjI0OjMwYCk7CiBzaG91bGRCZShTdHJpbmcoVGVtcG9yYWwu
UGxhaW5UaW1lLmZyb20oJzE5OTUtMTItMDdUMDM6MjQ6MzAnKSksIGAwMzoyNDozMGApOwogc2hv
dWxkQmUoU3RyaW5nKFRlbXBvcmFsLlBsYWluVGltZS5mcm9tKCcxOTk1LTEyLTA3dDAzOjI0OjMw
JykpLCBgMDM6MjQ6MzBgKTsKIHNob3VsZEJlKFN0cmluZyhUZW1wb3JhbC5QbGFpblRpbWUuZnJv
bSgnMTk5NS0xMi0wNyAwMzoyNDozMCcpKSwgYDAzOjI0OjMwYCk7Ci1zaG91bGRCZShTdHJpbmco
VGVtcG9yYWwuUGxhaW5UaW1lLmZyb20oJzE5OTUtMTItMDdUMDM6MjQ6MzBaJykpLCBgMDM6MjQ6
MzBgKTsKIHNob3VsZEJlKFN0cmluZyhUZW1wb3JhbC5QbGFpblRpbWUuZnJvbSgnMTk5NS0xMi0w
N1QwMzoyNDozMCsyMDoyMDo1OScpKSwgYDAzOjI0OjMwYCk7CiBzaG91bGRCZShTdHJpbmcoVGVt
cG9yYWwuUGxhaW5UaW1lLmZyb20oJzE5OTUtMTItMDdUMDM6MjQ6MzAtMjA6MjA6NTknKSksIGAw
MzoyNDozMGApOwogc2hvdWxkQmUoU3RyaW5nKFRlbXBvcmFsLlBsYWluVGltZS5mcm9tKCcxOTk1
LTEyLTA3VDAzOjI0OjMwXHUyMjEyMjA6MjA6NTknKSksIGAwMzoyNDozMGApOwpAQCAtMTM1LDYg
KzEzOSw5IEBAIGZ1bmN0aW9uIHNob3VsZFRocm93KGZ1bmMsIGVycm9yVHlwZSwgbWVzc2FnZSkg
ewogc2hvdWxkQmUoU3RyaW5nKFRlbXBvcmFsLlBsYWluVGltZS5mcm9tKCcxOTk1LTEyLTA3IDAz
OjI0OjMwKzAxOjAwWyswMTowMDowMC4xMjM0NTY3ODldJykpLCBgMDM6MjQ6MzBgKTsKIHNob3Vs
ZEJlKFN0cmluZyhUZW1wb3JhbC5QbGFpblRpbWUuZnJvbSgnMTk5NS0xMi0wNyAwMzoyNDozMCsw
MTowMFstMDE6MDBdJykpLCBgMDM6MjQ6MzBgKTsKIHNob3VsZEJlKFN0cmluZyhUZW1wb3JhbC5Q
bGFpblRpbWUuZnJvbSgnMTk5NS0xMi0wNyAwMzoyNDozMCswMTowMFtcdTIyMTIwMTowMF0nKSks
IGAwMzoyNDozMGApOworc2hvdWxkQmUoU3RyaW5nKFRlbXBvcmFsLlBsYWluVGltZS5mcm9tKCcy
MDA3LTAxLTA5IDAzOjI0OjMwKzAxOjAwW3UtY2E9amFwYW5lc2VdJykpLCBgMDM6MjQ6MzBgKTsK
K3Nob3VsZEJlKFN0cmluZyhUZW1wb3JhbC5QbGFpblRpbWUuZnJvbSgnMjAwNy0wMS0wOSAwMzoy
NDozMCswMTowMFtFdXJvcGUvQnJ1c3NlbHNdW3UtY2E9amFwYW5lc2VdJykpLCBgMDM6MjQ6MzBg
KTsKK3Nob3VsZEJlKFN0cmluZyhUZW1wb3JhbC5QbGFpblRpbWUuZnJvbSgnMjAwNy0wMS0wOSAw
MzoyNDozMFt1LWNhPWphcGFuZXNlXScpKSwgYDAzOjI0OjMwYCk7CiB7CiAgICAgbGV0IHRpbWUg
PSBUZW1wb3JhbC5QbGFpblRpbWUuZnJvbSgnMTk5NS0xMi0wN1QwMzoyNDozMCswMTowMFtFdXJv
cGUvQnJ1c3NlbHNdJykKICAgICBzaG91bGRCZSh0aW1lID09PSBUZW1wb3JhbC5QbGFpblRpbWUu
ZnJvbSh0aW1lKSwgZmFsc2UpOwpAQCAtMjQ5LDYgKzI1Niw5IEBAIGZ1bmN0aW9uIHNob3VsZFRo
cm93KGZ1bmMsIGVycm9yVHlwZSwgbWVzc2FnZSkgewogICAgICIxOTk1LTEyLTA3IDAzOjI0OjMw
KzAxOjAwWzAyOjAwMDAuMTIzNDU2Nzg5XSIsCiAgICAgIjE5OTUtMTItMDcgMDM6MjQ6MzArMDE6
MDBbMDIwMDowMC4xMjM0NTY3ODldIiwKICAgICAiMTk5NS0xMi0wNyAwMzoyNDozMCswMTowMFsw
MjowMDo2MC4xMjM0NTY3ODldIiwKKyAgICAiMTk5NS0xMi0wN1QwMzoyNDozMFoiLCAvLyBVVENE
ZXNpZ25hdG9yCisgICAgIjIwMDctMDEtMDkgMDM6MjQ6MzBbdS1jYT1qYXBhbmVzZV1bRXVyb3Bl
L0JydXNzZWxzXSIsCisgICAgIjIwMDctMDEtMDkgMDM6MjQ6MzArMDE6MDBbdS1jYT1qYXBhbmVz
ZV1bRXVyb3BlL0JydXNzZWxzXSIsCiBdOwogCiBmb3IgKGxldCB0ZXh0IG9mIGZhaWx1cmVzKSB7
Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>