<?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>138915</bug_id>
          
          <creation_ts>2014-11-20 00:31:45 -0800</creation_ts>
          <short_desc>Throttled DOMTimers can prevent their document from being garbage collected</short_desc>
          <delta_ts>2014-11-21 19:29:52 -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>DOM</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>138292</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>barraclough</cc>
    
    <cc>benjamin</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ggaren</cc>
    
    <cc>kangil.han</cc>
    
    <cc>kling</cc>
    
    <cc>koivisto</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1050071</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2014-11-20 00:31:45 -0800</bug_when>
    <thetext>It seems throttled DOMTimers can prevent their document from being garbage collected. This is likely caused by DOMTimer::m_elementsCausingThrottling keeping a reference to the Elements that caused its throttling. It looks like we may need to use weak references to those Elements in DOMTimer.

I realized this when trying to write a layout test for:
https://bugs.webkit.org/show_bug.cgi?id=138914</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1050209</commentid>
    <comment_count>1</comment_count>
      <attachid>241969</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2014-11-20 11:59:19 -0800</bug_when>
    <thetext>Created attachment 241969
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1050661</commentid>
    <comment_count>2</comment_count>
      <attachid>242098</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2014-11-21 18:07:34 -0800</bug_when>
    <thetext>Created attachment 242098
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1050662</commentid>
    <comment_count>3</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2014-11-21 18:08:16 -0800</bug_when>
    <thetext>Stop using a unique_ptr in ElementRareData as per Andreas&apos; comments offline.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1050667</commentid>
    <comment_count>4</comment_count>
      <attachid>242098</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-11-21 19:29:46 -0800</bug_when>
    <thetext>Comment on attachment 242098
Patch

Clearing flags on attachment: 242098

Committed r176496: &lt;http://trac.webkit.org/changeset/176496&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1050668</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-11-21 19:29:52 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>241969</attachid>
            <date>2014-11-20 11:59:19 -0800</date>
            <delta_ts>2014-11-21 18:07:29 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-138915-20141120115934.patch</filename>
            <type>text/plain</type>
            <size>13035</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc2NDA0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjYyYzU0YTdlMjRmYWE0
ZTg5ZTUxYWM1ZWY3Y2RjMmQ3ZGYzNGZkMi4uMGZlOWRhYmMwMDNiZDVjNjk0ODUzOWRiMmU1MDMx
M2Y4YTlmYzYxOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM3IEBACisyMDE0LTExLTIwICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgVGhyb3R0bGVkIERPTVRpbWVy
cyBjYW4gcHJldmVudCB0aGVpciBkb2N1bWVudCBmcm9tIGJlaW5nIGdhcmJhZ2UgY29sbGVjdGVk
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzg5MTUK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaHJvdHRs
ZWQgRE9NVGltZXJzIHdob3NlIGludGVydmFsIGRlcGVuZCBvbiB2aWV3cG9ydCBjaGFuZ2VzIHdv
dWxkCisgICAgICAgIGtlZXAgYSBWZWN0b3Igb2YgZWxlbWVudHMgb3V0c2lkZSB2aWV3cG9ydCBj
YXVzaW5nIHRoZW0gdG8gYmUgdGhyb3R0bGVkCisgICAgICAgIHNvIHRoYXQgd2UgY291bGQgY2hl
Y2sgbGF0ZXIgb24gKHVwb24gc2Nyb2xsIG9yIGxheW91dCkgaWYgdGhvc2UKKyAgICAgICAgZWxl
bWVudHMgYXJlIHN0aWxsIG91dHNpZGUgdmlld3BvcnQuIFRoZSBpc3N1ZSBpcyB0aGF0IHRoZXNl
IGVsZW1lbnRzCisgICAgICAgIGNvdWxkIHBvdGVudGlhbGx5IGJlIHJlbW92ZWQgZnJvbSB0aGUg
ZG9jdW1lbnQgKGFuZCBkZXN0cm95ZWQpIGFmdGVyCisgICAgICAgIHRoZSB0aW1lciBoYXMgZmly
ZWQuIFRvIGhhbmRsZSB0aGlzLCBET01UaW1lciB3YXMgcmVmJ2luZyB0aGUKKyAgICAgICAgZWxl
bWVudHMuIFVuZm9ydHVuYXRlbHksIHRoaXMgd2FzIGNhdXNpbmcgdXMgdG8gbGVhayB0aGUgZG9j
dW1lbnQKKyAgICAgICAgYXMgdGhlIGVsZW1lbnRzIGluIHRoZSBWZWN0b3Igd291bGQga2VlcCB0
aGUgZG9jdW1lbnQgYWxpdmUuCisKKyAgICAgICAgVG8gaGFuZGxlIHRoaXMgaXNzdWUsIHRoaXMg
cGF0Y2ggdXBkYXRlcyB0aGUgRE9NVGltZXIgVmVjdG9yIHRvIHVzZQorICAgICAgICB3ZWFrIHBv
aW50ZXJzLiBUaGUgV2Vha1B0ckZhY3RvcnkgaXMgc3RvcmVkIGluIEVsZW1lbnRSYXJlRGF0YSB0
bworICAgICAgICBhdm9pZCB3YXN0aW5nIG1lbW9yeSBmb3IgYWxsIGtpbmRzIG9mIEVsZW1lbnRz
IChpdCBpcyBhIGZhaXIgYXNzdW1wdGlvbgorICAgICAgICB0aGF0IHRoZSBudW1iZXIgb2YgZWxl
bWVudHMgd2hvc2Ugc3R5bGUgaXMgYW5pbWF0ZWQgdmlhIHRpbWVycyBpcyBsb3cpLgorCisgICAg
ICAgIFRlc3Q6IGZhc3QvZG9tL3Rocm90dGxlZC10aW1lci1ydW5uaW5nLW9uLWRvY3VtZW50LWRl
c3RydWN0aW9uLmh0bWwKKworICAgICAgICAqIGRvbS9FbGVtZW50LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkVsZW1lbnQ6OmNyZWF0ZVdlYWtQdHIpOgorICAgICAgICAqIGRvbS9FbGVtZW50Lmg6
CisgICAgICAgICogZG9tL0VsZW1lbnRSYXJlRGF0YS5jcHA6CisgICAgICAgICogZG9tL0VsZW1l
bnRSYXJlRGF0YS5oOgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudFJhcmVEYXRhOjp3ZWFrUHRy
RmFjdG9yeSk6CisgICAgICAgICogcGFnZS9ET01UaW1lci5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpET01UaW1lckZpcmVTdGF0ZTo6ZWxlbWVudHNDaGFuZ2VkT3V0c2lkZVZpZXdwb3J0KToKKyAg
ICAgICAgKFdlYkNvcmU6OkRPTVRpbWVyOjp1cGRhdGVUaHJvdHRsaW5nU3RhdGVBZnRlclZpZXdw
b3J0Q2hhbmdlKToKKyAgICAgICAgKiBwYWdlL0RPTVRpbWVyLmg6CisKIDIwMTQtMTEtMTkgIEFk
YSBDaGFuICA8YWRhY2hhbkBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIGEgd2F5IHRvIG11dGUg
YW4gQXVkaW9Db250ZXh0LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQu
Y3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwCmluZGV4IDE2NzVhMWRkZmE1YjUw
MzgyYTZjODFmNGE4OTA0M2FmMzA4MGJlNGIuLjE4MDVjMTMwMTY4YjMwODViZjE2YzY0Nzk4MTE5
ZTU4ZjQ2MTU3OTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAKQEAgLTExOTUsNiArMTE5NSwxMSBA
QCBVUkwgRWxlbWVudDo6YWJzb2x1dGVMaW5rVVJMKCkgY29uc3QKICAgICByZXR1cm4gZG9jdW1l
bnQoKS5jb21wbGV0ZVVSTChzdHJpcExlYWRpbmdBbmRUcmFpbGluZ0hUTUxTcGFjZXMobGlua0F0
dHJpYnV0ZSkpOwogfQogCitXZWFrUHRyPEVsZW1lbnQ+IEVsZW1lbnQ6OmNyZWF0ZVdlYWtQdHIo
KQoreworICAgIHJldHVybiBlbnN1cmVFbGVtZW50UmFyZURhdGEoKS53ZWFrUHRyRmFjdG9yeSgq
dGhpcykuY3JlYXRlV2Vha1B0cigpOworfQorCiAvLyBSZXR1cm5zIHRydWUgaXMgdGhlIGdpdmVu
IGF0dHJpYnV0ZSBpcyBhbiBldmVudCBoYW5kbGVyLgogLy8gV2UgY29uc2lkZXIgYW4gZXZlbnQg
aGFuZGxlciBhbnkgYXR0cmlidXRlIHRoYXQgYmVnaW5zIHdpdGggIm9uIi4KIC8vIEl0IGlzIGEg
c2ltcGxlIHNvbHV0aW9uIHRoYXQgaGFzIHRoZSBhZHZhbnRhZ2Ugb2Ygbm90IHJlcXVpcmluZyBh
bnkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmggYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vRWxlbWVudC5oCmluZGV4IDk1MWY0NjY4ODEwZTgwYzczY2IwZWM3YTNmN2JmZDNj
ZGNiZjgyY2YuLjEyZTEzZWJiOWRmNGQwYjIyZGUzYmM1MWJkMzVmNDA0YTczNDBhZGYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUv
ZG9tL0VsZW1lbnQuaApAQCAtNTUxLDYgKzU1MSw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGNsZWFy
SG92ZXJBbmRBY3RpdmVTdGF0dXNCZWZvcmVEZXRhY2hpbmdSZW5kZXJlcigpOwogCiAgICAgV0VC
Q09SRV9FWFBPUlQgVVJMIGFic29sdXRlTGlua1VSTCgpIGNvbnN0OworICAgIFdlYWtQdHI8RWxl
bWVudD4gY3JlYXRlV2Vha1B0cigpOwogCiBwcm90ZWN0ZWQ6CiAgICAgRWxlbWVudChjb25zdCBR
dWFsaWZpZWROYW1lJiwgRG9jdW1lbnQmLCBDb25zdHJ1Y3Rpb25UeXBlKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50UmFyZURhdGEuY3BwIGIvU291cmNlL1dlYkNvcmUv
ZG9tL0VsZW1lbnRSYXJlRGF0YS5jcHAKaW5kZXggM2IxY2QzY2JlMDU3MGU3NTQyZmNlYTM0OWZj
YWUwN2RlNWNiMDViYi4uYjJhZjcwMzQ2ZTRiZjcxYmQxMTJiNWY0NzdkOTU2ZDdkZmQzNzQ2YyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnRSYXJlRGF0YS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnRSYXJlRGF0YS5jcHAKQEAgLTM5LDcgKzM5LDcgQEAg
c3RydWN0IFNhbWVTaXplQXNFbGVtZW50UmFyZURhdGEgOiBOb2RlUmFyZURhdGEgewogICAgIFJl
Z2lvbk92ZXJzZXRTdGF0ZSByZWdpb25PdmVyc2V0U3RhdGU7CiAgICAgTGF5b3V0U2l6ZSBzaXpl
Rm9yUmVzaXppbmc7CiAgICAgSW50U2l6ZSBzY3JvbGxPZmZzZXQ7Ci0gICAgdm9pZCogcG9pbnRl
cnNbN107CisgICAgdm9pZCogcG9pbnRlcnNbOF07CiB9OwogCiBzdGF0aWNfYXNzZXJ0KHNpemVv
ZihFbGVtZW50UmFyZURhdGEpID09IHNpemVvZihTYW1lU2l6ZUFzRWxlbWVudFJhcmVEYXRhKSwg
IkVsZW1lbnRSYXJlRGF0YSBzaG91bGQgc3RheSBzbWFsbCIpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvZG9tL0VsZW1lbnRSYXJlRGF0YS5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1l
bnRSYXJlRGF0YS5oCmluZGV4IGRhMjkxMDk1NmNjZmM0YjljZThiY2Y5OTNkOGMxNmZkYjM3YjNk
OGUuLjZkNDMzY2FiMmNjNTA5MjdjNWMyNGM3YjI5MzIzNTRkMjI3NWQ2NTUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50UmFyZURhdGEuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vRWxlbWVudFJhcmVEYXRhLmgKQEAgLTExNCw2ICsxMTQsMTMgQEAgcHVibGljOgogICAg
IGJvb2wgaGFzUGVuZGluZ1Jlc291cmNlcygpIGNvbnN0IHsgcmV0dXJuIG1faGFzUGVuZGluZ1Jl
c291cmNlczsgfQogICAgIHZvaWQgc2V0SGFzUGVuZGluZ1Jlc291cmNlcyhib29sIGhhcykgeyBt
X2hhc1BlbmRpbmdSZXNvdXJjZXMgPSBoYXM7IH0KIAorICAgIFdlYWtQdHJGYWN0b3J5PEVsZW1l
bnQ+JiB3ZWFrUHRyRmFjdG9yeShFbGVtZW50JiBlbGVtZW50KQorICAgIHsKKyAgICAgICAgaWYg
KCFtX3dlYWtQdHJGYWN0b3J5KQorICAgICAgICAgICAgbV93ZWFrUHRyRmFjdG9yeSA9IHN0ZDo6
bWFrZV91bmlxdWU8V2Vha1B0ckZhY3Rvcnk8RWxlbWVudD4+KCZlbGVtZW50KTsKKyAgICAgICAg
cmV0dXJuICptX3dlYWtQdHJGYWN0b3J5OworICAgIH0KKwogcHJpdmF0ZToKICAgICBzaG9ydCBt
X3RhYkluZGV4OwogICAgIHVuc2lnbmVkIHNob3J0IG1fY2hpbGRJbmRleDsKQEAgLTE0Nyw2ICsx
NTQsNyBAQCBwcml2YXRlOgogCiAgICAgUmVmUHRyPFBzZXVkb0VsZW1lbnQ+IG1fYmVmb3JlUHNl
dWRvRWxlbWVudDsKICAgICBSZWZQdHI8UHNldWRvRWxlbWVudD4gbV9hZnRlclBzZXVkb0VsZW1l
bnQ7CisgICAgc3RkOjp1bmlxdWVfcHRyPFdlYWtQdHJGYWN0b3J5PEVsZW1lbnQ+PiBtX3dlYWtQ
dHJGYWN0b3J5OwogCiAgICAgdm9pZCByZWxlYXNlUHNldWRvRWxlbWVudChQc2V1ZG9FbGVtZW50
Kik7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01UaW1lci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL0RPTVRpbWVyLmNwcAppbmRleCBiNDM2MmNlMWYxOGZjMWFiN2I1
MWVjNTY5YWQyNjE4NDQ2MTRhNGU2Li43ZmFjNWIxZjljYmQwNmViMzMwZWExYTcyYjZhM2IyMGQx
YWY3MWMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVRpbWVyLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVRpbWVyLmNwcApAQCAtOTksOSArOTksMTIgQEAgcHVi
bGljOgogICAgICAgICByZXR1cm4gZG9jdW1lbnQgJiYgZG9jdW1lbnQtPmRvbVRyZWVWZXJzaW9u
KCkgIT0gbV9pbml0aWFsRE9NVHJlZVZlcnNpb247CiAgICAgfQogCi0gICAgdm9pZCBlbGVtZW50
c0NoYW5nZWRPdXRzaWRlVmlld3BvcnQoVmVjdG9yPFJlZlB0cjxTdHlsZWRFbGVtZW50Pj4mIGVs
ZW1lbnRzKSBjb25zdAorICAgIHZvaWQgZWxlbWVudHNDaGFuZ2VkT3V0c2lkZVZpZXdwb3J0KFZl
Y3RvcjxXZWFrUHRyPEVsZW1lbnQ+PiYgZWxlbWVudHMpIGNvbnN0CiAgICAgewotICAgICAgICBj
b3B5VG9WZWN0b3IobV9lbGVtZW50c0NoYW5nZWRPdXRzaWRlVmlld3BvcnQsIGVsZW1lbnRzKTsK
KyAgICAgICAgQVNTRVJUKGVsZW1lbnRzLmlzRW1wdHkoKSk7CisgICAgICAgIGVsZW1lbnRzLnJl
c2VydmVDYXBhY2l0eShtX2VsZW1lbnRzQ2hhbmdlZE91dHNpZGVWaWV3cG9ydC5zaXplKCkpOwor
ICAgICAgICBmb3IgKGF1dG8mIGVsZW1lbnQgOiBtX2VsZW1lbnRzQ2hhbmdlZE91dHNpZGVWaWV3
cG9ydCkKKyAgICAgICAgICAgIGVsZW1lbnRzLnVuY2hlY2tlZEFwcGVuZChlbGVtZW50LT5jcmVh
dGVXZWFrUHRyKCkpOwogICAgIH0KIAogICAgIHN0YXRpYyBET01UaW1lckZpcmVTdGF0ZSogY3Vy
cmVudDsKQEAgLTQ3MSw5ICs0NzQsMTAgQEAgdm9pZCBET01UaW1lcjo6dXBkYXRlVGhyb3R0bGlu
Z1N0YXRlQWZ0ZXJWaWV3cG9ydENoYW5nZShjb25zdCBJbnRSZWN0JiB2aXNpYmxlUmUKIHsKICAg
ICBBU1NFUlQoaXNJbnRlcnZhbERlcGVuZGVudE9uVmlld3BvcnQoKSk7CiAgICAgLy8gQ2hlY2sg
aWYgdGhlIGVsZW1lbnRzIHRoYXQgY2F1c2VkIHRoaXMgdGltZXIgdG8gYmUgdGhyb3R0bGVkIGFy
ZSBzdGlsbCBvdXRzaWRlIHRoZSB2aWV3cG9ydC4KLSAgICBmb3IgKGF1dG8mIGVsZW1lbnQgOiBt
X2VsZW1lbnRzQ2F1c2luZ1Rocm90dGxpbmcpIHsKKyAgICBmb3IgKGF1dG8mIHdlYWtFbGVtZW50
UHRyIDogbV9lbGVtZW50c0NhdXNpbmdUaHJvdHRsaW5nKSB7CisgICAgICAgIEVsZW1lbnQqIGVs
ZW1lbnQgPSB3ZWFrRWxlbWVudFB0ci5nZXQoKTsKICAgICAgICAgLy8gU2tpcCBlbGVtZW50cyB0
aGF0IHdlcmUgcmVtb3ZlZCBmcm9tIHRoZSBkb2N1bWVudC4KLSAgICAgICAgaWYgKCFlbGVtZW50
LT5pbkRvY3VtZW50KCkpCisgICAgICAgIGlmICghZWxlbWVudCB8fCAhZWxlbWVudC0+aW5Eb2N1
bWVudCgpKQogICAgICAgICAgICAgY29udGludWU7CiAKICAgICAgICAgaWYgKGVsZW1lbnQtPmlz
SW5zaWRlVmlld3BvcnQoJnZpc2libGVSZWN0KSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGFnZS9ET01UaW1lci5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9ET01UaW1lci5oCmluZGV4
IDg1YjM3NjI4MmU5MTczNWFjOTkyNzRjYjY1NDZiOTAyZmQxZDk0NGUuLmU0OWZkYjI5YzYxMGY1
ZjQ3NTI3ZWQ4OWYxMGU1MWY3OTgyNzk4MDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvRE9NVGltZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVRpbWVyLmgKQEAgLTMx
LDExICszMSwxMyBAQAogI2luY2x1ZGUgPG1lbW9yeT4KICNpbmNsdWRlIDx3dGYvSGFzaFNldC5o
PgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisjaW5jbHVkZSA8d3RmL1dlYWtQdHIuaD4K
IAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAgY2xhc3MgRE9NVGltZXJGaXJlU3RhdGU7CiAg
ICAgY2xhc3MgRG9jdW1lbnQ7CisgICAgY2xhc3MgRWxlbWVudDsKICAgICBjbGFzcyBIVE1MUGx1
Z0luRWxlbWVudDsKICAgICBjbGFzcyBJbnRSZWN0OwogICAgIGNsYXNzIFNjaGVkdWxlZEFjdGlv
bjsKQEAgLTkxLDkgKzkzLDEwIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgVGltZXJU
aHJvdHRsZVN0YXRlIG1fdGhyb3R0bGVTdGF0ZTsKICAgICAgICAgZG91YmxlIG1fY3VycmVudFRp
bWVySW50ZXJ2YWw7CiAgICAgICAgIGJvb2wgbV9zaG91bGRGb3J3YXJkVXNlckdlc3R1cmU7Ci0g
ICAgICAgIC8vIEhvbGQgYSByZWZlcmVuY2UgdG8gdGhlIGVsZW1lbnRzIGluIGNhc2UgdGhleSBn
ZXQgcmVtb3ZlZCBmcm9tIHRoZQotICAgICAgICAvLyBEb2N1bWVudCBhZnRlciB0aGUgdGltZXIg
aXMgdGhyb3R0bGVkLgotICAgICAgICBWZWN0b3I8UmVmUHRyPFN0eWxlZEVsZW1lbnQ+PiBtX2Vs
ZW1lbnRzQ2F1c2luZ1Rocm90dGxpbmc7CisgICAgICAgIC8vIFVzZSBXZWFrUHRycyBiZWNhdXNl
IHdlIGRvbid0IHdhbnQgdG8ga2VlcCB0aGUgZWxlbWVudHMgYWxpdmUgYnV0IHdlCisgICAgICAg
IC8vIHN0aWxsIG5lZWQgdG8gaGFuZGxlIGNhc2VzIHdoZXJlIHRoZSBlbGVtZW50cyBnZXQgZGVz
dHJveWVkIGFmdGVyCisgICAgICAgIC8vIHRoZSB0aW1lciBoYXMgZmlyZWQuCisgICAgICAgIFZl
Y3RvcjxXZWFrUHRyPEVsZW1lbnQ+PiBtX2VsZW1lbnRzQ2F1c2luZ1Rocm90dGxpbmc7CiAgICAg
fTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGJhMzRhMmIzMzAyODY0ZTlkOWQz
M2ZkZGQ3NzIzODgzZmVkNzI3MzYuLjQ2ZjYzMjE2OTkzOGQ4NGIwYTFiMDY0OThlNWFiYjQ0M2Vm
OWViOTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAxNC0xMS0yMCAgQ2hyaXMgRHVtZXogIDxj
ZHVtZXpAYXBwbGUuY29tPgorCisgICAgICAgIFRocm90dGxlZCBET01UaW1lcnMgY2FuIHByZXZl
bnQgdGhlaXIgZG9jdW1lbnQgZnJvbSBiZWluZyBnYXJiYWdlIGNvbGxlY3RlZAorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM4OTE1CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wcm92ZSBmYXN0L2RvbS90
aHJvdHRsZWQtdGltZXItcnVubmluZy1vbi1kb2N1bWVudC1kZXN0cnVjdGlvbi5odG1sCisgICAg
ICAgIGxheW91dCB0ZXN0IHRvIGNvdmVyIHRoZSBjYXNlIHdoZXJlIHRoZSB0aHJvdHRsZWQgdGlt
ZXIgaXMgY2hhbmdpbmcgdGhlCisgICAgICAgIHN0eWxlIG9mIGFuIGVsZW1lbnQgb24gdGhlICpz
YW1lKiBkb2N1bWVudCB3aGVuIHRoZSBkb2N1bWVudCBpcworICAgICAgICBkZXN0cm95ZWQuCisK
KyAgICAgICAgKiBmYXN0L2RvbS9yZXNvdXJjZXMvZnJhbWUtd2l0aC10aHJvdHRsZWQtdGltZXIt
YW5pbWF0aW5nLWVsZW1lbnQtb3RoZXItZG9jdW1lbnQuaHRtbDogUmVuYW1lZCBmcm9tIExheW91
dFRlc3RzL2Zhc3QvZG9tL3Jlc291cmNlcy9mcmFtZS13aXRoLXRocm90dGxlZC10aW1lci5odG1s
LgorICAgICAgICAqIGZhc3QvZG9tL3Jlc291cmNlcy9mcmFtZS13aXRoLXRocm90dGxlZC10aW1l
ci1hbmltYXRpbmctZWxlbWVudC1zYW1lLWRvY3VtZW50Lmh0bWw6IEFkZGVkLgorICAgICAgICAq
IGZhc3QvZG9tL3Rocm90dGxlZC10aW1lci1ydW5uaW5nLW9uLWRvY3VtZW50LWRlc3RydWN0aW9u
Lmh0bWw6CisKIDIwMTQtMTEtMjAgIFl1c3VrZSBTdXp1a2kgIDx1dGF0YW5lLnRlYUBnbWFpbC5j
b20+CiAKICAgICAgICAgUmVuYW1lIFN0cmluZy5wcm90b3R5cGUuY29udGFpbnMgdG8gU3RyaW5n
LnByb3RvdHlwZS5pbmNsdWRlcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vcmVz
b3VyY2VzL2ZyYW1lLXdpdGgtdGhyb3R0bGVkLXRpbWVyLWFuaW1hdGluZy1lbGVtZW50LW90aGVy
LWRvY3VtZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9yZXNvdXJjZXMvZnJhbWUtd2l0
aC10aHJvdHRsZWQtdGltZXItYW5pbWF0aW5nLWVsZW1lbnQtb3RoZXItZG9jdW1lbnQuaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5iM2JiZmNmMDZkMGVhNjJhMmU1NzU0ZmVjNjFmZWQ3MzQ2NDQyODA3Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vcmVzb3VyY2VzL2ZyYW1lLXdpdGgt
dGhyb3R0bGVkLXRpbWVyLWFuaW1hdGluZy1lbGVtZW50LW90aGVyLWRvY3VtZW50Lmh0bWwKQEAg
LTAsMCArMSwxNCBAQAorPCFET0NUWVBFIGh0bWw+Cis8Ym9keT4KKzxpZnJhbWUgaWQ9InRlc3RG
cmFtZSI+PC9pZnJhbWU+Cis8c2NyaXB0PgorZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3RG
cmFtZScpLmNvbnRlbnREb2N1bWVudC5ib2R5LmlubmVySFRNTCA9ICI8ZGl2IGlkPSd0ZXN0RWxl
bWVudCcgc3R5bGU9J2Rpc3BsYXk6IG5vbmUnPlRFU1Q8L2Rpdj4iCisKK3NldEludGVydmFsKGZ1
bmN0aW9uKCkgeworICAvLyBDaGFuZ2UgdGhlIHN0eWxlIG9mIGEgZGlzcGxheTpub25lIGVsZW1l
bnQuCisgIHZhciB0ZXN0RnJhbWUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdEZyYW1l
Iik7CisgIHZhciB0ZXN0RWxlbWVudCA9IHRlc3RGcmFtZS5jb250ZW50RG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInRlc3RFbGVtZW50Iik7CisgIHRlc3RFbGVtZW50LnN0eWxlWyJsZWZ0Il0gPSAi
IiArIE1hdGguZmxvb3IoKE1hdGgucmFuZG9tKCkgKiAxMCkgKyAxKSArICJweCI7Cit9LCAwKTsK
Kzwvc2NyaXB0PgorPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vcmVz
b3VyY2VzL2ZyYW1lLXdpdGgtdGhyb3R0bGVkLXRpbWVyLWFuaW1hdGluZy1lbGVtZW50LXNhbWUt
ZG9jdW1lbnQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3Jlc291cmNlcy9mcmFtZS13aXRo
LXRocm90dGxlZC10aW1lci1hbmltYXRpbmctZWxlbWVudC1zYW1lLWRvY3VtZW50Lmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uYTY0MzdmZDlmMTFiMTE1Zjk5ZjhkNDQwMDk0N2RmMDYzMmM5MzRjNgotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3Jlc291cmNlcy9mcmFtZS13aXRoLXRo
cm90dGxlZC10aW1lci1hbmltYXRpbmctZWxlbWVudC1zYW1lLWRvY3VtZW50Lmh0bWwKQEAgLTAs
MCArMSwxMSBAQAorPCFET0NUWVBFIGh0bWw+Cis8Ym9keT4KKzxkaXYgaWQ9J3Rlc3RFbGVtZW50
JyBzdHlsZT0nZGlzcGxheTogbm9uZSc+VEVTVDwvZGl2PgorPHNjcmlwdD4KK3NldEludGVydmFs
KGZ1bmN0aW9uKCkgeworICAvLyBDaGFuZ2UgdGhlIHN0eWxlIG9mIGEgZGlzcGxheTpub25lIGVs
ZW1lbnQuCisgIHZhciB0ZXN0RWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0
RWxlbWVudCIpOworICB0ZXN0RWxlbWVudC5zdHlsZVsibGVmdCJdID0gIiIgKyBNYXRoLmZsb29y
KChNYXRoLnJhbmRvbSgpICogMTApICsgMSkgKyAicHgiOworfSwgMCk7Cis8L3NjcmlwdD4KKzwv
Ym9keT4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL3Jlc291cmNlcy9mcmFtZS13
aXRoLXRocm90dGxlZC10aW1lci5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vcmVzb3VyY2Vz
L2ZyYW1lLXdpdGgtdGhyb3R0bGVkLXRpbWVyLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IGVmMzJkYWQyN2EzMjhhODBmZDliN2NiZDhiZGUwYWY2MDViMWIwNDkuLjAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9k
b20vcmVzb3VyY2VzL2ZyYW1lLXdpdGgtdGhyb3R0bGVkLXRpbWVyLmh0bWwKKysrIC9kZXYvbnVs
bApAQCAtMSwxNCArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxib2R5PgotPGlmcmFtZSBpZD0i
dGVzdEZyYW1lIj48L2lmcmFtZT4KLTxzY3JpcHQ+Ci1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgn
dGVzdEZyYW1lJykuY29udGVudERvY3VtZW50LmJvZHkuaW5uZXJIVE1MID0gIjxkaXYgaWQ9J3Rl
c3RFbGVtZW50JyBzdHlsZT0nZGlzcGxheTogbm9uZSc+VEVTVDwvZGl2PiIKLQotc2V0SW50ZXJ2
YWwoZnVuY3Rpb24oKSB7Ci0gIC8vIENoYW5nZSB0aGUgc3R5bGUgb2YgYSBkaXNwbGF5Om5vbmUg
ZWxlbWVudC4KLSAgdmFyIHRlc3RGcmFtZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0
RnJhbWUiKTsKLSAgdmFyIHRlc3RFbGVtZW50ID0gdGVzdEZyYW1lLmNvbnRlbnREb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgidGVzdEVsZW1lbnQiKTsKLSAgdGVzdEVsZW1lbnQuc3R5bGVbImxlZnQi
XSA9ICIiICsgTWF0aC5mbG9vcigoTWF0aC5yYW5kb20oKSAqIDEwKSArIDEpICsgInB4IjsKLX0s
IDUpOwotPC9zY3JpcHQ+Ci08L2JvZHk+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Rv
bS90aHJvdHRsZWQtdGltZXItcnVubmluZy1vbi1kb2N1bWVudC1kZXN0cnVjdGlvbi5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9kb20vdGhyb3R0bGVkLXRpbWVyLXJ1bm5pbmctb24tZG9jdW1lbnQt
ZGVzdHJ1Y3Rpb24uaHRtbAppbmRleCBiMjhmZGU0NDAwN2RhYzczZGMwMDZhZGZiZWI5NmZhMzA2
YzNiYzI3Li5jZGY0YjljOTRmYzhkODkwMWYwYjgxYmJjMDE1MmQ4NTYyMGQ5NmU2IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS90aHJvdHRsZWQtdGltZXItcnVubmluZy1vbi1kb2N1
bWVudC1kZXN0cnVjdGlvbi5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3Rocm90dGxl
ZC10aW1lci1ydW5uaW5nLW9uLWRvY3VtZW50LWRlc3RydWN0aW9uLmh0bWwKQEAgLTEsMjIgKzEs
MzEgQEAKIDwhRE9DVFlQRSBodG1sPgogPGJvZHk+CiA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3Vy
Y2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTxpZnJhbWUgaWQ9InRlc3RGcmFtZSIgc3Jj
PSJyZXNvdXJjZXMvZnJhbWUtd2l0aC10aHJvdHRsZWQtdGltZXIuaHRtbCI+PC9pZnJhbWU+Ci0K
IDxzY3JpcHQ+CiBkZXNjcmlwdGlvbigiVGVzdCB0aGF0IHdlIGRvbid0IGNyYXNoIGlmIGEgdGhy
b3R0bGVkIHRpbWVyIGlzIHN0aWxsIHJ1bm5pbmcgd2hlbiB0aGUgZG9jdW1lbnQgaXMgZGVzdHJv
eWVkLiIpOwoganNUZXN0SXNBc3luYyA9IHRydWU7CiAKLWZ1bmN0aW9uIHJlbW92ZUZyYW1lKCkK
K3ZhciBmcmFtZUxvYWRlZENvdW50ID0gMDsKKworZnVuY3Rpb24gcmVtb3ZlRnJhbWVzKCkKIHsK
LSAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVz
dEZyYW1lIikpOworICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJ0ZXN0RnJhbWUxIikpOworICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0RnJhbWUyIikpOwogICBnYygpOwogICB0ZXN0UGFzc2Vk
KCJEaWQgbm90IGNyYXNoLiIpOwogICBmaW5pc2hKU1Rlc3QoKTsKIH0KIAotc2V0VGltZW91dChy
ZW1vdmVGcmFtZSwgMzAwKTsKK2Z1bmN0aW9uIGZyYW1lTG9hZGVkKCkKK3sKKyAgKytmcmFtZUxv
YWRlZENvdW50OworICBpZiAoZnJhbWVMb2FkZWRDb3VudCA9PSAyKQorICAgIHNldFRpbWVvdXQo
cmVtb3ZlRnJhbWVzLCAxMDApOworfQogCiA8L3NjcmlwdD4KKzxpZnJhbWUgaWQ9InRlc3RGcmFt
ZTEiIHNyYz0icmVzb3VyY2VzL2ZyYW1lLXdpdGgtdGhyb3R0bGVkLXRpbWVyLWFuaW1hdGluZy1l
bGVtZW50LXNhbWUtZG9jdW1lbnQuaHRtbCIgb25sb2FkPSJmcmFtZUxvYWRlZCgpIj48L2lmcmFt
ZT4KKzxpZnJhbWUgaWQ9InRlc3RGcmFtZTIiIHNyYz0icmVzb3VyY2VzL2ZyYW1lLXdpdGgtdGhy
b3R0bGVkLXRpbWVyLWFuaW1hdGluZy1lbGVtZW50LW90aGVyLWRvY3VtZW50Lmh0bWwiIG9ubG9h
ZD0iZnJhbWVMb2FkZWQoKSI+PC9pZnJhbWU+CisKIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJj
ZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KIDwvYm9keT4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>242098</attachid>
            <date>2014-11-21 18:07:34 -0800</date>
            <delta_ts>2014-11-21 19:29:46 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-138915-20141121180751.patch</filename>
            <type>text/plain</type>
            <size>14488</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc2NDkyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggN2Y0MDE3ZmUxMmJjMjY2
MjAzNjlkNDMwYWEzOTIzNjkxYzZlYmUxZi4uOGRkYzk4ZWJiM2QwNGYzYjZmOTc3Zjc3ZmFhOTNl
NjhiODNlODRjMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM3IEBACisyMDE0LTExLTIwICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgVGhyb3R0bGVkIERPTVRpbWVy
cyBjYW4gcHJldmVudCB0aGVpciBkb2N1bWVudCBmcm9tIGJlaW5nIGdhcmJhZ2UgY29sbGVjdGVk
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzg5MTUK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaHJvdHRs
ZWQgRE9NVGltZXJzIHdob3NlIGludGVydmFsIGRlcGVuZCBvbiB2aWV3cG9ydCBjaGFuZ2VzIHdv
dWxkCisgICAgICAgIGtlZXAgYSBWZWN0b3Igb2YgZWxlbWVudHMgb3V0c2lkZSB2aWV3cG9ydCBj
YXVzaW5nIHRoZW0gdG8gYmUgdGhyb3R0bGVkCisgICAgICAgIHNvIHRoYXQgd2UgY291bGQgY2hl
Y2sgbGF0ZXIgb24gKHVwb24gc2Nyb2xsIG9yIGxheW91dCkgaWYgdGhvc2UKKyAgICAgICAgZWxl
bWVudHMgYXJlIHN0aWxsIG91dHNpZGUgdmlld3BvcnQuIFRoZSBpc3N1ZSBpcyB0aGF0IHRoZXNl
IGVsZW1lbnRzCisgICAgICAgIGNvdWxkIHBvdGVudGlhbGx5IGJlIHJlbW92ZWQgZnJvbSB0aGUg
ZG9jdW1lbnQgKGFuZCBkZXN0cm95ZWQpIGFmdGVyCisgICAgICAgIHRoZSB0aW1lciBoYXMgZmly
ZWQuIFRvIGhhbmRsZSB0aGlzLCBET01UaW1lciB3YXMgcmVmJ2luZyB0aGUKKyAgICAgICAgZWxl
bWVudHMuIFVuZm9ydHVuYXRlbHksIHRoaXMgd2FzIGNhdXNpbmcgdXMgdG8gbGVhayB0aGUgZG9j
dW1lbnQKKyAgICAgICAgYXMgdGhlIGVsZW1lbnRzIGluIHRoZSBWZWN0b3Igd291bGQga2VlcCB0
aGUgZG9jdW1lbnQgYWxpdmUuCisKKyAgICAgICAgVG8gaGFuZGxlIHRoaXMgaXNzdWUsIHRoaXMg
cGF0Y2ggdXBkYXRlcyB0aGUgRE9NVGltZXIgVmVjdG9yIHRvIHVzZQorICAgICAgICB3ZWFrIHBv
aW50ZXJzLiBUaGUgV2Vha1B0ckZhY3RvcnkgaXMgc3RvcmVkIGluIEVsZW1lbnRSYXJlRGF0YSB0
bworICAgICAgICBhdm9pZCB3YXN0aW5nIG1lbW9yeSBmb3IgYWxsIGtpbmRzIG9mIEVsZW1lbnRz
IChpdCBpcyBhIGZhaXIgYXNzdW1wdGlvbgorICAgICAgICB0aGF0IHRoZSBudW1iZXIgb2YgZWxl
bWVudHMgd2hvc2Ugc3R5bGUgaXMgYW5pbWF0ZWQgdmlhIHRpbWVycyBpcyBsb3cpLgorCisgICAg
ICAgIFRlc3Q6IGZhc3QvZG9tL3Rocm90dGxlZC10aW1lci1ydW5uaW5nLW9uLWRvY3VtZW50LWRl
c3RydWN0aW9uLmh0bWwKKworICAgICAgICAqIGRvbS9FbGVtZW50LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkVsZW1lbnQ6OmNyZWF0ZVdlYWtQdHIpOgorICAgICAgICAqIGRvbS9FbGVtZW50Lmg6
CisgICAgICAgICogZG9tL0VsZW1lbnRSYXJlRGF0YS5jcHA6CisgICAgICAgICogZG9tL0VsZW1l
bnRSYXJlRGF0YS5oOgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudFJhcmVEYXRhOjp3ZWFrUHRy
RmFjdG9yeSk6CisgICAgICAgICogcGFnZS9ET01UaW1lci5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpET01UaW1lckZpcmVTdGF0ZTo6ZWxlbWVudHNDaGFuZ2VkT3V0c2lkZVZpZXdwb3J0KToKKyAg
ICAgICAgKFdlYkNvcmU6OkRPTVRpbWVyOjp1cGRhdGVUaHJvdHRsaW5nU3RhdGVBZnRlclZpZXdw
b3J0Q2hhbmdlKToKKyAgICAgICAgKiBwYWdlL0RPTVRpbWVyLmg6CisKIDIwMTQtMTEtMjEgIENo
cmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCBpT1Mg
YnVpbGQgZml4IGFmdGVyIHIxNzY0NjIuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20v
RWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAKaW5kZXggMTY3NWEx
ZGRmYTViNTAzODJhNmM4MWY0YTg5MDQzYWYzMDgwYmU0Yi4uMzcwZTZhMTEyNWU5NmIxMzI3N2Y2
ZjIyODA4Y2NkMTllODg0NTc2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1l
bnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcApAQCAtMTE5NSw2ICsx
MTk1LDExIEBAIFVSTCBFbGVtZW50OjphYnNvbHV0ZUxpbmtVUkwoKSBjb25zdAogICAgIHJldHVy
biBkb2N1bWVudCgpLmNvbXBsZXRlVVJMKHN0cmlwTGVhZGluZ0FuZFRyYWlsaW5nSFRNTFNwYWNl
cyhsaW5rQXR0cmlidXRlKSk7CiB9CiAKK1dlYWtQdHI8RWxlbWVudD4gRWxlbWVudDo6Y3JlYXRl
V2Vha1B0cigpCit7CisgICAgcmV0dXJuIGVuc3VyZUVsZW1lbnRSYXJlRGF0YSgpLndlYWtQdHJG
YWN0b3J5KCkuY3JlYXRlV2Vha1B0cigpOworfQorCiAvLyBSZXR1cm5zIHRydWUgaXMgdGhlIGdp
dmVuIGF0dHJpYnV0ZSBpcyBhbiBldmVudCBoYW5kbGVyLgogLy8gV2UgY29uc2lkZXIgYW4gZXZl
bnQgaGFuZGxlciBhbnkgYXR0cmlidXRlIHRoYXQgYmVnaW5zIHdpdGggIm9uIi4KIC8vIEl0IGlz
IGEgc2ltcGxlIHNvbHV0aW9uIHRoYXQgaGFzIHRoZSBhZHZhbnRhZ2Ugb2Ygbm90IHJlcXVpcmlu
ZyBhbnkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmggYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vRWxlbWVudC5oCmluZGV4IDk1MWY0NjY4ODEwZTgwYzczY2IwZWM3YTNmN2Jm
ZDNjZGNiZjgyY2YuLjEyZTEzZWJiOWRmNGQwYjIyZGUzYmM1MWJkMzVmNDA0YTczNDBhZGYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNv
cmUvZG9tL0VsZW1lbnQuaApAQCAtNTUxLDYgKzU1MSw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGNs
ZWFySG92ZXJBbmRBY3RpdmVTdGF0dXNCZWZvcmVEZXRhY2hpbmdSZW5kZXJlcigpOwogCiAgICAg
V0VCQ09SRV9FWFBPUlQgVVJMIGFic29sdXRlTGlua1VSTCgpIGNvbnN0OworICAgIFdlYWtQdHI8
RWxlbWVudD4gY3JlYXRlV2Vha1B0cigpOwogCiBwcm90ZWN0ZWQ6CiAgICAgRWxlbWVudChjb25z
dCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQmLCBDb25zdHJ1Y3Rpb25UeXBlKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50UmFyZURhdGEuY3BwIGIvU291cmNlL1dlYkNv
cmUvZG9tL0VsZW1lbnRSYXJlRGF0YS5jcHAKaW5kZXggM2IxY2QzY2JlMDU3MGU3NTQyZmNlYTM0
OWZjYWUwN2RlNWNiMDViYi4uYjJhZjcwMzQ2ZTRiZjcxYmQxMTJiNWY0NzdkOTU2ZDdkZmQzNzQ2
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnRSYXJlRGF0YS5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnRSYXJlRGF0YS5jcHAKQEAgLTM5LDcgKzM5LDcg
QEAgc3RydWN0IFNhbWVTaXplQXNFbGVtZW50UmFyZURhdGEgOiBOb2RlUmFyZURhdGEgewogICAg
IFJlZ2lvbk92ZXJzZXRTdGF0ZSByZWdpb25PdmVyc2V0U3RhdGU7CiAgICAgTGF5b3V0U2l6ZSBz
aXplRm9yUmVzaXppbmc7CiAgICAgSW50U2l6ZSBzY3JvbGxPZmZzZXQ7Ci0gICAgdm9pZCogcG9p
bnRlcnNbN107CisgICAgdm9pZCogcG9pbnRlcnNbOF07CiB9OwogCiBzdGF0aWNfYXNzZXJ0KHNp
emVvZihFbGVtZW50UmFyZURhdGEpID09IHNpemVvZihTYW1lU2l6ZUFzRWxlbWVudFJhcmVEYXRh
KSwgIkVsZW1lbnRSYXJlRGF0YSBzaG91bGQgc3RheSBzbWFsbCIpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnRSYXJlRGF0YS5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0Vs
ZW1lbnRSYXJlRGF0YS5oCmluZGV4IGRhMjkxMDk1NmNjZmM0YjljZThiY2Y5OTNkOGMxNmZkYjM3
YjNkOGUuLjlkOTg3M2E3M2E0ZmJhZWNhYzI3ZGMzMjNkZjEwYjc4MTUzNjU5ZDkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50UmFyZURhdGEuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vRWxlbWVudFJhcmVEYXRhLmgKQEAgLTM2LDcgKzM2LDcgQEAgbmFtZXNwYWNlIFdl
YkNvcmUgewogCiBjbGFzcyBFbGVtZW50UmFyZURhdGEgOiBwdWJsaWMgTm9kZVJhcmVEYXRhIHsK
IHB1YmxpYzoKLSAgICBleHBsaWNpdCBFbGVtZW50UmFyZURhdGEoUmVuZGVyRWxlbWVudCopOwor
ICAgIEVsZW1lbnRSYXJlRGF0YShFbGVtZW50JiwgUmVuZGVyRWxlbWVudCopOwogICAgIH5FbGVt
ZW50UmFyZURhdGEoKTsKIAogICAgIHZvaWQgc2V0QmVmb3JlUHNldWRvRWxlbWVudChQYXNzUmVm
UHRyPFBzZXVkb0VsZW1lbnQ+KTsKQEAgLTExNCw2ICsxMTQsOCBAQCBwdWJsaWM6CiAgICAgYm9v
bCBoYXNQZW5kaW5nUmVzb3VyY2VzKCkgY29uc3QgeyByZXR1cm4gbV9oYXNQZW5kaW5nUmVzb3Vy
Y2VzOyB9CiAgICAgdm9pZCBzZXRIYXNQZW5kaW5nUmVzb3VyY2VzKGJvb2wgaGFzKSB7IG1faGFz
UGVuZGluZ1Jlc291cmNlcyA9IGhhczsgfQogCisgICAgV2Vha1B0ckZhY3Rvcnk8RWxlbWVudD4m
IHdlYWtQdHJGYWN0b3J5KCkgeyByZXR1cm4gbV93ZWFrUHRyRmFjdG9yeTsgfQorCiBwcml2YXRl
OgogICAgIHNob3J0IG1fdGFiSW5kZXg7CiAgICAgdW5zaWduZWQgc2hvcnQgbV9jaGlsZEluZGV4
OwpAQCAtMTQ3LDYgKzE0OSw3IEBAIHByaXZhdGU6CiAKICAgICBSZWZQdHI8UHNldWRvRWxlbWVu
dD4gbV9iZWZvcmVQc2V1ZG9FbGVtZW50OwogICAgIFJlZlB0cjxQc2V1ZG9FbGVtZW50PiBtX2Fm
dGVyUHNldWRvRWxlbWVudDsKKyAgICBXZWFrUHRyRmFjdG9yeTxFbGVtZW50PiBtX3dlYWtQdHJG
YWN0b3J5OwogCiAgICAgdm9pZCByZWxlYXNlUHNldWRvRWxlbWVudChQc2V1ZG9FbGVtZW50Kik7
CiB9OwpAQCAtMTU2LDcgKzE1OSw3IEBAIGlubGluZSBJbnRTaXplIGRlZmF1bHRNaW5pbXVtU2l6
ZUZvclJlc2l6aW5nKCkKICAgICByZXR1cm4gSW50U2l6ZShMYXlvdXRVbml0OjptYXgoKSwgTGF5
b3V0VW5pdDo6bWF4KCkpOwogfQogCi1pbmxpbmUgRWxlbWVudFJhcmVEYXRhOjpFbGVtZW50UmFy
ZURhdGEoUmVuZGVyRWxlbWVudCogcmVuZGVyZXIpCitpbmxpbmUgRWxlbWVudFJhcmVEYXRhOjpF
bGVtZW50UmFyZURhdGEoRWxlbWVudCYgZWxlbWVudCwgUmVuZGVyRWxlbWVudCogcmVuZGVyZXIp
CiAgICAgOiBOb2RlUmFyZURhdGEocmVuZGVyZXIpCiAgICAgLCBtX3RhYkluZGV4KDApCiAgICAg
LCBtX2NoaWxkSW5kZXgoMCkKQEAgLTE3NSw2ICsxNzgsNyBAQCBpbmxpbmUgRWxlbWVudFJhcmVE
YXRhOjpFbGVtZW50UmFyZURhdGEoUmVuZGVyRWxlbWVudCogcmVuZGVyZXIpCiAgICAgLCBtX2No
aWxkcmVuQWZmZWN0ZWRCeVByb3BlcnR5QmFzZWRCYWNrd2FyZFBvc2l0aW9uYWxSdWxlcyhmYWxz
ZSkKICAgICAsIG1fcmVnaW9uT3ZlcnNldFN0YXRlKFJlZ2lvblVuZGVmaW5lZCkKICAgICAsIG1f
bWluaW11bVNpemVGb3JSZXNpemluZyhkZWZhdWx0TWluaW11bVNpemVGb3JSZXNpemluZygpKQor
ICAgICwgbV93ZWFrUHRyRmFjdG9yeSgmZWxlbWVudCkKIHsKIH0KIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvZG9tL05vZGUuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuY3BwCmlu
ZGV4IGNhYzdlYTFkYzI4ODljMTMxNTNiNGY3Zjg1ZDJlYTU4MmU3NTZhY2QuLjBjYzhlZDM2MzU3
ZTc3ZGE0Y2YzNjg0NTRhMmNkYTJhZTM4MWI2ODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9Ob2RlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZS5jcHAKQEAgLTM1MCw3
ICszNTAsNyBAQCB2b2lkIE5vZGU6Om1hdGVyaWFsaXplUmFyZURhdGEoKQogewogICAgIE5vZGVS
YXJlRGF0YSogZGF0YTsKICAgICBpZiAoaXM8RWxlbWVudD4oKnRoaXMpKQotICAgICAgICBkYXRh
ID0gc3RkOjptYWtlX3VuaXF1ZTxFbGVtZW50UmFyZURhdGE+KGRvd25jYXN0PFJlbmRlckVsZW1l
bnQ+KG1fZGF0YS5tX3JlbmRlcmVyKSkucmVsZWFzZSgpOworICAgICAgICBkYXRhID0gc3RkOjpt
YWtlX3VuaXF1ZTxFbGVtZW50UmFyZURhdGE+KGRvd25jYXN0PEVsZW1lbnQ+KCp0aGlzKSwgZG93
bmNhc3Q8UmVuZGVyRWxlbWVudD4obV9kYXRhLm1fcmVuZGVyZXIpKS5yZWxlYXNlKCk7CiAgICAg
ZWxzZQogICAgICAgICBkYXRhID0gc3RkOjptYWtlX3VuaXF1ZTxOb2RlUmFyZURhdGE+KG1fZGF0
YS5tX3JlbmRlcmVyKS5yZWxlYXNlKCk7CiAgICAgQVNTRVJUKGRhdGEpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9ET01UaW1lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RP
TVRpbWVyLmNwcAppbmRleCBiNDM2MmNlMWYxOGZjMWFiN2I1MWVjNTY5YWQyNjE4NDQ2MTRhNGU2
Li43ZmFjNWIxZjljYmQwNmViMzMwZWExYTcyYjZhM2IyMGQxYWY3MWMxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL0RPTVRpbWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L0RPTVRpbWVyLmNwcApAQCAtOTksOSArOTksMTIgQEAgcHVibGljOgogICAgICAgICByZXR1cm4g
ZG9jdW1lbnQgJiYgZG9jdW1lbnQtPmRvbVRyZWVWZXJzaW9uKCkgIT0gbV9pbml0aWFsRE9NVHJl
ZVZlcnNpb247CiAgICAgfQogCi0gICAgdm9pZCBlbGVtZW50c0NoYW5nZWRPdXRzaWRlVmlld3Bv
cnQoVmVjdG9yPFJlZlB0cjxTdHlsZWRFbGVtZW50Pj4mIGVsZW1lbnRzKSBjb25zdAorICAgIHZv
aWQgZWxlbWVudHNDaGFuZ2VkT3V0c2lkZVZpZXdwb3J0KFZlY3RvcjxXZWFrUHRyPEVsZW1lbnQ+
PiYgZWxlbWVudHMpIGNvbnN0CiAgICAgewotICAgICAgICBjb3B5VG9WZWN0b3IobV9lbGVtZW50
c0NoYW5nZWRPdXRzaWRlVmlld3BvcnQsIGVsZW1lbnRzKTsKKyAgICAgICAgQVNTRVJUKGVsZW1l
bnRzLmlzRW1wdHkoKSk7CisgICAgICAgIGVsZW1lbnRzLnJlc2VydmVDYXBhY2l0eShtX2VsZW1l
bnRzQ2hhbmdlZE91dHNpZGVWaWV3cG9ydC5zaXplKCkpOworICAgICAgICBmb3IgKGF1dG8mIGVs
ZW1lbnQgOiBtX2VsZW1lbnRzQ2hhbmdlZE91dHNpZGVWaWV3cG9ydCkKKyAgICAgICAgICAgIGVs
ZW1lbnRzLnVuY2hlY2tlZEFwcGVuZChlbGVtZW50LT5jcmVhdGVXZWFrUHRyKCkpOwogICAgIH0K
IAogICAgIHN0YXRpYyBET01UaW1lckZpcmVTdGF0ZSogY3VycmVudDsKQEAgLTQ3MSw5ICs0NzQs
MTAgQEAgdm9pZCBET01UaW1lcjo6dXBkYXRlVGhyb3R0bGluZ1N0YXRlQWZ0ZXJWaWV3cG9ydENo
YW5nZShjb25zdCBJbnRSZWN0JiB2aXNpYmxlUmUKIHsKICAgICBBU1NFUlQoaXNJbnRlcnZhbERl
cGVuZGVudE9uVmlld3BvcnQoKSk7CiAgICAgLy8gQ2hlY2sgaWYgdGhlIGVsZW1lbnRzIHRoYXQg
Y2F1c2VkIHRoaXMgdGltZXIgdG8gYmUgdGhyb3R0bGVkIGFyZSBzdGlsbCBvdXRzaWRlIHRoZSB2
aWV3cG9ydC4KLSAgICBmb3IgKGF1dG8mIGVsZW1lbnQgOiBtX2VsZW1lbnRzQ2F1c2luZ1Rocm90
dGxpbmcpIHsKKyAgICBmb3IgKGF1dG8mIHdlYWtFbGVtZW50UHRyIDogbV9lbGVtZW50c0NhdXNp
bmdUaHJvdHRsaW5nKSB7CisgICAgICAgIEVsZW1lbnQqIGVsZW1lbnQgPSB3ZWFrRWxlbWVudFB0
ci5nZXQoKTsKICAgICAgICAgLy8gU2tpcCBlbGVtZW50cyB0aGF0IHdlcmUgcmVtb3ZlZCBmcm9t
IHRoZSBkb2N1bWVudC4KLSAgICAgICAgaWYgKCFlbGVtZW50LT5pbkRvY3VtZW50KCkpCisgICAg
ICAgIGlmICghZWxlbWVudCB8fCAhZWxlbWVudC0+aW5Eb2N1bWVudCgpKQogICAgICAgICAgICAg
Y29udGludWU7CiAKICAgICAgICAgaWYgKGVsZW1lbnQtPmlzSW5zaWRlVmlld3BvcnQoJnZpc2li
bGVSZWN0KSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01UaW1lci5oIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9ET01UaW1lci5oCmluZGV4IDg1YjM3NjI4MmU5MTczNWFjOTky
NzRjYjY1NDZiOTAyZmQxZDk0NGUuLmU0OWZkYjI5YzYxMGY1ZjQ3NTI3ZWQ4OWYxMGU1MWY3OTgy
Nzk4MDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NVGltZXIuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL0RPTVRpbWVyLmgKQEAgLTMxLDExICszMSwxMyBAQAogI2luY2x1
ZGUgPG1lbW9yeT4KICNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgogI2luY2x1ZGUgPHd0Zi9SZWZD
b3VudGVkLmg+CisjaW5jbHVkZSA8d3RmL1dlYWtQdHIuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUg
ewogCiAgICAgY2xhc3MgRE9NVGltZXJGaXJlU3RhdGU7CiAgICAgY2xhc3MgRG9jdW1lbnQ7Cisg
ICAgY2xhc3MgRWxlbWVudDsKICAgICBjbGFzcyBIVE1MUGx1Z0luRWxlbWVudDsKICAgICBjbGFz
cyBJbnRSZWN0OwogICAgIGNsYXNzIFNjaGVkdWxlZEFjdGlvbjsKQEAgLTkxLDkgKzkzLDEwIEBA
IG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgVGltZXJUaHJvdHRsZVN0YXRlIG1fdGhyb3R0
bGVTdGF0ZTsKICAgICAgICAgZG91YmxlIG1fY3VycmVudFRpbWVySW50ZXJ2YWw7CiAgICAgICAg
IGJvb2wgbV9zaG91bGRGb3J3YXJkVXNlckdlc3R1cmU7Ci0gICAgICAgIC8vIEhvbGQgYSByZWZl
cmVuY2UgdG8gdGhlIGVsZW1lbnRzIGluIGNhc2UgdGhleSBnZXQgcmVtb3ZlZCBmcm9tIHRoZQot
ICAgICAgICAvLyBEb2N1bWVudCBhZnRlciB0aGUgdGltZXIgaXMgdGhyb3R0bGVkLgotICAgICAg
ICBWZWN0b3I8UmVmUHRyPFN0eWxlZEVsZW1lbnQ+PiBtX2VsZW1lbnRzQ2F1c2luZ1Rocm90dGxp
bmc7CisgICAgICAgIC8vIFVzZSBXZWFrUHRycyBiZWNhdXNlIHdlIGRvbid0IHdhbnQgdG8ga2Vl
cCB0aGUgZWxlbWVudHMgYWxpdmUgYnV0IHdlCisgICAgICAgIC8vIHN0aWxsIG5lZWQgdG8gaGFu
ZGxlIGNhc2VzIHdoZXJlIHRoZSBlbGVtZW50cyBnZXQgZGVzdHJveWVkIGFmdGVyCisgICAgICAg
IC8vIHRoZSB0aW1lciBoYXMgZmlyZWQuCisgICAgICAgIFZlY3RvcjxXZWFrUHRyPEVsZW1lbnQ+
PiBtX2VsZW1lbnRzQ2F1c2luZ1Rocm90dGxpbmc7CiAgICAgfTsKIAogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCmluZGV4IDYzZTBmODgxYjJiMjQ5YjIwMGQwZmQ4N2VkNjk3OGE5YWM2OTNlMjUu
LmE1YWE1NmJmNmE5OGU1YWY0OWVkODI5NmEwOWUxMTcwMmYwZDE2YWYgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwxOSBAQAorMjAxNC0xMS0yMCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgorCisg
ICAgICAgIFRocm90dGxlZCBET01UaW1lcnMgY2FuIHByZXZlbnQgdGhlaXIgZG9jdW1lbnQgZnJv
bSBiZWluZyBnYXJiYWdlIGNvbGxlY3RlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTM4OTE1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgSW1wcm92ZSBmYXN0L2RvbS90aHJvdHRsZWQtdGltZXItcnVubmlu
Zy1vbi1kb2N1bWVudC1kZXN0cnVjdGlvbi5odG1sCisgICAgICAgIGxheW91dCB0ZXN0IHRvIGNv
dmVyIHRoZSBjYXNlIHdoZXJlIHRoZSB0aHJvdHRsZWQgdGltZXIgaXMgY2hhbmdpbmcgdGhlCisg
ICAgICAgIHN0eWxlIG9mIGFuIGVsZW1lbnQgb24gdGhlICpzYW1lKiBkb2N1bWVudCB3aGVuIHRo
ZSBkb2N1bWVudCBpcworICAgICAgICBkZXN0cm95ZWQuCisKKyAgICAgICAgKiBmYXN0L2RvbS9y
ZXNvdXJjZXMvZnJhbWUtd2l0aC10aHJvdHRsZWQtdGltZXItYW5pbWF0aW5nLWVsZW1lbnQtb3Ro
ZXItZG9jdW1lbnQuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvZG9tL3Jlc291
cmNlcy9mcmFtZS13aXRoLXRocm90dGxlZC10aW1lci5odG1sLgorICAgICAgICAqIGZhc3QvZG9t
L3Jlc291cmNlcy9mcmFtZS13aXRoLXRocm90dGxlZC10aW1lci1hbmltYXRpbmctZWxlbWVudC1z
YW1lLWRvY3VtZW50Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL3Rocm90dGxlZC10
aW1lci1ydW5uaW5nLW9uLWRvY3VtZW50LWRlc3RydWN0aW9uLmh0bWw6CisKIDIwMTQtMTEtMjEg
IENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBbaU9TXSBSZWdyZXNz
aW9uKHIxNzYyMDIpOiBsaW5lLWhlaWdodCBpcyB3cm9uZyBvbiBtYXJjby5vcmcKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL3Jlc291cmNlcy9mcmFtZS13aXRoLXRocm90dGxlZC10
aW1lci1hbmltYXRpbmctZWxlbWVudC1vdGhlci1kb2N1bWVudC5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9kb20vcmVzb3VyY2VzL2ZyYW1lLXdpdGgtdGhyb3R0bGVkLXRpbWVyLWFuaW1hdGluZy1l
bGVtZW50LW90aGVyLWRvY3VtZW50Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjNiYmZjZjA2ZDBlYTYyYTJl
NTc1NGZlYzYxZmVkNzM0NjQ0MjgwNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvZG9tL3Jlc291cmNlcy9mcmFtZS13aXRoLXRocm90dGxlZC10aW1lci1hbmltYXRpbmctZWxl
bWVudC1vdGhlci1kb2N1bWVudC5odG1sCkBAIC0wLDAgKzEsMTQgQEAKKzwhRE9DVFlQRSBodG1s
PgorPGJvZHk+Cis8aWZyYW1lIGlkPSJ0ZXN0RnJhbWUiPjwvaWZyYW1lPgorPHNjcmlwdD4KK2Rv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0RnJhbWUnKS5jb250ZW50RG9jdW1lbnQuYm9keS5p
bm5lckhUTUwgPSAiPGRpdiBpZD0ndGVzdEVsZW1lbnQnIHN0eWxlPSdkaXNwbGF5OiBub25lJz5U
RVNUPC9kaXY+IgorCitzZXRJbnRlcnZhbChmdW5jdGlvbigpIHsKKyAgLy8gQ2hhbmdlIHRoZSBz
dHlsZSBvZiBhIGRpc3BsYXk6bm9uZSBlbGVtZW50LgorICB2YXIgdGVzdEZyYW1lID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RGcmFtZSIpOworICB2YXIgdGVzdEVsZW1lbnQgPSB0ZXN0
RnJhbWUuY29udGVudERvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0RWxlbWVudCIpOworICB0
ZXN0RWxlbWVudC5zdHlsZVsibGVmdCJdID0gIiIgKyBNYXRoLmZsb29yKChNYXRoLnJhbmRvbSgp
ICogMTApICsgMSkgKyAicHgiOworfSwgMCk7Cis8L3NjcmlwdD4KKzwvYm9keT4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL3Jlc291cmNlcy9mcmFtZS13aXRoLXRocm90dGxlZC10
aW1lci1hbmltYXRpbmctZWxlbWVudC1zYW1lLWRvY3VtZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9m
YXN0L2RvbS9yZXNvdXJjZXMvZnJhbWUtd2l0aC10aHJvdHRsZWQtdGltZXItYW5pbWF0aW5nLWVs
ZW1lbnQtc2FtZS1kb2N1bWVudC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE2NDM3ZmQ5ZjExYjExNWY5OWY4
ZDQ0MDA5NDdkZjA2MzJjOTM0YzYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L2RvbS9yZXNvdXJjZXMvZnJhbWUtd2l0aC10aHJvdHRsZWQtdGltZXItYW5pbWF0aW5nLWVsZW1l
bnQtc2FtZS1kb2N1bWVudC5odG1sCkBAIC0wLDAgKzEsMTEgQEAKKzwhRE9DVFlQRSBodG1sPgor
PGJvZHk+Cis8ZGl2IGlkPSd0ZXN0RWxlbWVudCcgc3R5bGU9J2Rpc3BsYXk6IG5vbmUnPlRFU1Q8
L2Rpdj4KKzxzY3JpcHQ+CitzZXRJbnRlcnZhbChmdW5jdGlvbigpIHsKKyAgLy8gQ2hhbmdlIHRo
ZSBzdHlsZSBvZiBhIGRpc3BsYXk6bm9uZSBlbGVtZW50LgorICB2YXIgdGVzdEVsZW1lbnQgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdEVsZW1lbnQiKTsKKyAgdGVzdEVsZW1lbnQuc3R5
bGVbImxlZnQiXSA9ICIiICsgTWF0aC5mbG9vcigoTWF0aC5yYW5kb20oKSAqIDEwKSArIDEpICsg
InB4IjsKK30sIDApOworPC9zY3JpcHQ+Cis8L2JvZHk+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9yZXNvdXJjZXMvZnJhbWUtd2l0aC10aHJvdHRsZWQtdGltZXIuaHRtbCBiL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL3Jlc291cmNlcy9mcmFtZS13aXRoLXRocm90dGxlZC10aW1lci5o
dG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlZjMyZGFkMjdhMzI4YTgwZmQ5Yjdj
YmQ4YmRlMGFmNjA1YjFiMDQ5Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL3Jlc291cmNlcy9mcmFtZS13aXRoLXRocm90
dGxlZC10aW1lci5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTQgKzAsMCBAQAotPCFET0NUWVBF
IGh0bWw+Ci08Ym9keT4KLTxpZnJhbWUgaWQ9InRlc3RGcmFtZSI+PC9pZnJhbWU+Ci08c2NyaXB0
PgotZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3RGcmFtZScpLmNvbnRlbnREb2N1bWVudC5i
b2R5LmlubmVySFRNTCA9ICI8ZGl2IGlkPSd0ZXN0RWxlbWVudCcgc3R5bGU9J2Rpc3BsYXk6IG5v
bmUnPlRFU1Q8L2Rpdj4iCi0KLXNldEludGVydmFsKGZ1bmN0aW9uKCkgewotICAvLyBDaGFuZ2Ug
dGhlIHN0eWxlIG9mIGEgZGlzcGxheTpub25lIGVsZW1lbnQuCi0gIHZhciB0ZXN0RnJhbWUgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdEZyYW1lIik7Ci0gIHZhciB0ZXN0RWxlbWVudCA9
IHRlc3RGcmFtZS5jb250ZW50RG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RFbGVtZW50Iik7
Ci0gIHRlc3RFbGVtZW50LnN0eWxlWyJsZWZ0Il0gPSAiIiArIE1hdGguZmxvb3IoKE1hdGgucmFu
ZG9tKCkgKiAxMCkgKyAxKSArICJweCI7Ci19LCA1KTsKLTwvc2NyaXB0PgotPC9ib2R5PgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vdGhyb3R0bGVkLXRpbWVyLXJ1bm5pbmctb24t
ZG9jdW1lbnQtZGVzdHJ1Y3Rpb24uaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3Rocm90dGxl
ZC10aW1lci1ydW5uaW5nLW9uLWRvY3VtZW50LWRlc3RydWN0aW9uLmh0bWwKaW5kZXggYjI4ZmRl
NDQwMDdkYWM3M2RjMDA2YWRmYmViOTZmYTMwNmMzYmMyNy4uY2RmNGI5Yzk0ZmM4ZDg5MDFmMGI4
MWJiYzAxNTJkODU2MjBkOTZlNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vdGhy
b3R0bGVkLXRpbWVyLXJ1bm5pbmctb24tZG9jdW1lbnQtZGVzdHJ1Y3Rpb24uaHRtbAorKysgYi9M
YXlvdXRUZXN0cy9mYXN0L2RvbS90aHJvdHRsZWQtdGltZXItcnVubmluZy1vbi1kb2N1bWVudC1k
ZXN0cnVjdGlvbi5odG1sCkBAIC0xLDIyICsxLDMxIEBACiA8IURPQ1RZUEUgaHRtbD4KIDxib2R5
PgogPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+
Ci08aWZyYW1lIGlkPSJ0ZXN0RnJhbWUiIHNyYz0icmVzb3VyY2VzL2ZyYW1lLXdpdGgtdGhyb3R0
bGVkLXRpbWVyLmh0bWwiPjwvaWZyYW1lPgotCiA8c2NyaXB0PgogZGVzY3JpcHRpb24oIlRlc3Qg
dGhhdCB3ZSBkb24ndCBjcmFzaCBpZiBhIHRocm90dGxlZCB0aW1lciBpcyBzdGlsbCBydW5uaW5n
IHdoZW4gdGhlIGRvY3VtZW50IGlzIGRlc3Ryb3llZC4iKTsKIGpzVGVzdElzQXN5bmMgPSB0cnVl
OwogCi1mdW5jdGlvbiByZW1vdmVGcmFtZSgpCit2YXIgZnJhbWVMb2FkZWRDb3VudCA9IDA7CisK
K2Z1bmN0aW9uIHJlbW92ZUZyYW1lcygpCiB7Ci0gIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQo
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RGcmFtZSIpKTsKKyAgZG9jdW1lbnQuYm9keS5y
ZW1vdmVDaGlsZChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdEZyYW1lMSIpKTsKKyAgZG9j
dW1lbnQuYm9keS5yZW1vdmVDaGlsZChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdEZyYW1l
MiIpKTsKICAgZ2MoKTsKICAgdGVzdFBhc3NlZCgiRGlkIG5vdCBjcmFzaC4iKTsKICAgZmluaXNo
SlNUZXN0KCk7CiB9CiAKLXNldFRpbWVvdXQocmVtb3ZlRnJhbWUsIDMwMCk7CitmdW5jdGlvbiBm
cmFtZUxvYWRlZCgpCit7CisgICsrZnJhbWVMb2FkZWRDb3VudDsKKyAgaWYgKGZyYW1lTG9hZGVk
Q291bnQgPT0gMikKKyAgICBzZXRUaW1lb3V0KHJlbW92ZUZyYW1lcywgMTAwKTsKK30KIAogPC9z
Y3JpcHQ+Cis8aWZyYW1lIGlkPSJ0ZXN0RnJhbWUxIiBzcmM9InJlc291cmNlcy9mcmFtZS13aXRo
LXRocm90dGxlZC10aW1lci1hbmltYXRpbmctZWxlbWVudC1zYW1lLWRvY3VtZW50Lmh0bWwiIG9u
bG9hZD0iZnJhbWVMb2FkZWQoKSI+PC9pZnJhbWU+Cis8aWZyYW1lIGlkPSJ0ZXN0RnJhbWUyIiBz
cmM9InJlc291cmNlcy9mcmFtZS13aXRoLXRocm90dGxlZC10aW1lci1hbmltYXRpbmctZWxlbWVu
dC1vdGhlci1kb2N1bWVudC5odG1sIiBvbmxvYWQ9ImZyYW1lTG9hZGVkKCkiPjwvaWZyYW1lPgor
CiA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+
CiA8L2JvZHk+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>