<?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>201871</bug_id>
          
          <creation_ts>2019-09-17 06:32:03 -0700</creation_ts>
          <short_desc>AbortSignal does not always emit the abort signal</short_desc>
          <delta_ts>2019-10-04 09:31:30 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>DOM</component>
          <version>Safari 12</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>macOS 10.14</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>0</everconfirmed>
          <reporter name="Jesse van den Kieboom">jkieboom</reporter>
          <assigned_to name="youenn fablet">youennf</assigned_to>
          <cc>ap</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>dpaddock</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>kangil.han</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>sam</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1571515</commentid>
    <comment_count>0</comment_count>
    <who name="Jesse van den Kieboom">jkieboom</who>
    <bug_when>2019-09-17 06:32:03 -0700</bug_when>
    <thetext>This problem occurs in a large code base and I am having trouble setting up a simple reproducible test case outside of our application. It looks like when using an AbortController, calling abort on it may in certain circumstances not emit the abort event on the corresponding signal. It feels like this is problem of premature garbage collection because if I plug the corresponding signal on another object that is kept alive, I do receive the abort event correctly. In addition, the problem in our application does not appear if I use an AbortController/AbortSignal shim (further indicating that this is a problem in the native implementation somehow). I&apos;ll try to come up with an isolated test case, but I&apos;m having a hard time doing so.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1571516</commentid>
    <comment_count>1</comment_count>
      <attachid>378960</attachid>
    <who name="Jesse van den Kieboom">jkieboom</who>
    <bug_when>2019-09-17 06:42:26 -0700</bug_when>
    <thetext>Created attachment 378960
Abort signal appears evicted under GC pressure

I&apos;m not confident this is the smallest repro case, and it doesn&apos;t appear to _always_ reproduce the problem. For me this seems to trigger the issue one out of three times or so.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1571642</commentid>
    <comment_count>2</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2019-09-17 13:09:16 -0700</bug_when>
    <thetext>This seems like it&apos;s most likely an issue in AbortController, which is not part of WebKit. I think that your hunch is correct, and this is related to garbage collection. So perhaps AbortController needs to protect its properties from collection.

Please feel free to re-open if you find evidence of this being a WebKit bug. We&apos;ll almost certainly need a reproducible test case to work on this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1571658</commentid>
    <comment_count>3</comment_count>
    <who name="Dasa Paddock">dpaddock</who>
    <bug_when>2019-09-17 13:30:10 -0700</bug_when>
    <thetext>Can this be reopened with the Component set to WebCore since the code is at: https://trac.webkit.org/browser/webkit/trunk/Source/WebCore/dom/AbortController.cpp</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1571661</commentid>
    <comment_count>4</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2019-09-17 13:37:25 -0700</bug_when>
    <thetext>Apologies, turns out that I didn&apos;t know what I was taking about.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1571662</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-09-17 13:37:42 -0700</bug_when>
    <thetext>&lt;rdar://problem/55451712&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1576845</commentid>
    <comment_count>6</comment_count>
      <attachid>380219</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2019-10-04 07:26:11 -0700</bug_when>
    <thetext>Created attachment 380219
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1576885</commentid>
    <comment_count>7</comment_count>
      <attachid>380219</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-10-04 09:31:28 -0700</bug_when>
    <thetext>Comment on attachment 380219
Patch

Clearing flags on attachment: 380219

Committed r250727: &lt;https://trac.webkit.org/changeset/250727&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1576886</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-10-04 09:31:30 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>378960</attachid>
            <date>2019-09-17 06:42:26 -0700</date>
            <delta_ts>2019-09-17 06:42:26 -0700</delta_ts>
            <desc>Abort signal appears evicted under GC pressure</desc>
            <filename>testcase.js</filename>
            <type>text/javascript</type>
            <size>649</size>
            <attacher name="Jesse van den Kieboom">jkieboom</attacher>
            
              <data encoding="base64">ZnVuY3Rpb24gcnVuKCkgewogIGxldCBvYmogPSB7CiAgICBhYm9ydENvbnRyb2xsZXI6IG5ldyBB
Ym9ydENvbnRyb2xsZXIoKQogIH07CgogIGNvbnN0IGNvbnRyb2xsZXIgPSBvYmouYWJvcnRDb250
cm9sbGVyOwoKICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgY29udHJvbGxlci5hYm9ydCgp
OwogIH0sIDMwMDApOwoKICByZXR1cm4gY29udHJvbGxlci5zaWduYWw7Cn0KCmZ1bmN0aW9uIGhh
bmRsZShzaWduYWwpIHsKICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgc2lnbmFsLmFkZEV2
ZW50TGlzdGVuZXIoImFib3J0IiwgZnVuY3Rpb24oKSB7CiAgICAgIGNvbnNvbGUubG9nKCJhYm9y
dGVkIik7CiAgICB9KTsKICB9LCAxMDAwKTsKfQoKZnVuY3Rpb24gZG9pdCgpIHsKICBjb25zdCBz
aWduYWwgPSBydW4oKTsKICBoYW5kbGUoc2lnbmFsKTsKfQoKZG9pdCgpOwoKd2luZG93WyJhcnIi
XSA9IFtdOwoKZm9yIChsZXQgaSA9IDA7IGkgPCAxMDAwMDsgaSsrKSB7CiAgY29uc3QgYXIgPSBu
ZXcgQXJyYXkoMTAwMDApOwoKICBmb3IgKGxldCBqID0gMDsgaiA8IDEwMDAwOyBqKyspIHsKICAg
IGFyW2pdID0gTWF0aC5yYW5kb20oKTsKICB9CgogIHdpbmRvd1siYXJyIl0ucHVzaChhcik7Cn0K
CmNvbnNvbGUubG9nKCJkb25lIik7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>380219</attachid>
            <date>2019-10-04 07:26:11 -0700</date>
            <delta_ts>2019-10-04 09:31:28 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-201871-20191004162610.patch</filename>
            <type>text/plain</type>
            <size>15051</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUwNzA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmNjY2NkMjU4MmQ4ZDJj
MzNlMGEyMjJhMTJjMDFiZWRjNTVmMjg0YS4uNmJiYTc5MGViZTZlY2VmMDA3OWE0ZmMyYTcxMTc4
NzczZjljYjQxMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDE5LTEwLTA0ICB5b3Vl
bm4gZmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBBYm9ydFNpZ25hbCBkb2Vz
IG5vdCBhbHdheXMgZW1pdCB0aGUgYWJvcnQgc2lnbmFsCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDE4NzEKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVt
LzU1NDUxNzEyPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIE1ha2Ugc3VyZSBhIEpTQWJvcnRTaWduYWwgaXMgbm90IEdDZWQgdW50aWwgb2JqZWN0cyB0
aGF0IGNhbiBhYm9ydCBpdCBhcmUgZ29uZS4KKyAgICAgICAgVGhpcyBpbmNsdWRlcyBhIGZvbGxv
d2VkIHNpZ25hbCBhbmQgYW4gQWJvcnRDb250cm9sbGVyLgorICAgICAgICBDdXJyZW50IFdlYktp
dCBpbXBsZW1lbnRhdGlvbiBvbmx5IHVzZXMgZm9sbG93aW5nIG9mIG9uZSBzaWduYWwgYXQgYSB0
aW1lLgorCisgICAgICAgIFRlc3Q6IGh0dHAvdGVzdHMvZmV0Y2gvYWJvcnQtc2lnbmFsLWdjLmh0
bWwKKworICAgICAgICAqIFNvdXJjZXMudHh0OgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0Fib3J0Q29udHJvbGxl
ckN1c3RvbS5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6SlNBYm9ydENvbnRyb2xsZXI6
OnZpc2l0QWRkaXRpb25hbENoaWxkcmVuKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0Fib3J0
U2lnbmFsQ3VzdG9tLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpKU0Fib3J0U2lnbmFs
T3duZXI6OmlzUmVhY2hhYmxlRnJvbU9wYXF1ZVJvb3RzKToKKyAgICAgICAgKiBiaW5kaW5ncy9q
cy9KU1R5cGVkT01DU1NTdHlsZVZhbHVlQ3VzdG9tLmNwcDoKKyAgICAgICAgKiBkb20vQWJvcnRD
b250cm9sbGVyLmlkbDoKKyAgICAgICAgKiBkb20vQWJvcnRTaWduYWwuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6QWJvcnRTaWduYWw6OmZvbGxvdyk6CisgICAgICAgICogZG9tL0Fib3J0U2lnbmFs
Lmg6CisgICAgICAgICogZG9tL0Fib3J0U2lnbmFsLmlkbDoKKwogMjAxOS0xMC0wNCAgeW91ZW5u
IGZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgUmV1c2UgZXhpc3Rpbmcgd2Vi
IHByb2Nlc3NlcyBmb3IgcnVubmluZyBzZXJ2aWNlIHdvcmtlcnMKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL1NvdXJjZXMudHh0IGIvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKaW5kZXgg
OWMxNzFlNTZjMDBlMzJlYzQ5ODA3ZTcxMDUwMDAzZDYwZGIwMWQwOC4uMjY0NjUzYzBiNDllNzVl
M2Q0NGY4MDIxNzdkZTc0MzY2ZmEzMWUzOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvU291
cmNlcy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKQEAgLTQ1Myw2ICs0NTMs
OCBAQCBiaW5kaW5ncy9qcy9ET01HQ091dHB1dENvbnN0cmFpbnQuY3BwCiBiaW5kaW5ncy9qcy9E
T01XcmFwcGVyV29ybGQuY3BwCiBiaW5kaW5ncy9qcy9HQ0NvbnRyb2xsZXIuY3BwCiBiaW5kaW5n
cy9qcy9JREJCaW5kaW5nVXRpbGl0aWVzLmNwcAorYmluZGluZ3MvanMvSlNBYm9ydENvbnRyb2xs
ZXJDdXN0b20uY3BwCitiaW5kaW5ncy9qcy9KU0Fib3J0U2lnbmFsQ3VzdG9tLmNwcAogYmluZGlu
Z3MvanMvSlNBdXRoZW50aWNhdG9yUmVzcG9uc2VDdXN0b20uY3BwCiBiaW5kaW5ncy9qcy9KU0Fu
aW1hdGlvbkVmZmVjdEN1c3RvbS5jcHAKIGJpbmRpbmdzL2pzL0pTQW5pbWF0aW9uVGltZWxpbmVD
dXN0b20uY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2oKaW5kZXggMDhhNDY5MmM3MThmMzk1MjBmMWMyMmZkZWI1ODIwMzdhNGY5YWRkZi4u
NDVjMWEzMDY2MjhkMjUyYTEwZDM4MjRiZDFjZWM0M2RlZTUyNTA5MyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtNzE3Myw2ICs3
MTczLDggQEAKIAkJM0ZGRkY5QUMxNTlEOUIwNjAwMjBCQkQ1IC8qIFZpZXdwb3J0U3R5bGVSZXNv
bHZlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBWaWV3cG9ydFN0eWxlUmVz
b2x2ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDEwNjI2QTcyMjgwQTIyQTAw
NkQxQjU5IC8qIEpTQXVkaW9Ob2RlQ3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTQXVkaW9Ob2RlQ3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJNDEwNzkwOEExRkMzRTRGMjAwNjFCMjdBIC8qIENsaWVudE9yaWdpbi5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDbGllbnRPcmlnaW4uaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNDEwOTM4MjgyMzQ3Nzk5QTAwOTQyOEJBIC8qIEpTQWJvcnRDb250
cm9sbGVyQ3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
QWJvcnRDb250cm9sbGVyQ3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NDEwOTM4MkMyMzQ3ODUwRTAwOTQyOEJBIC8qIEpTQWJvcnRTaWduYWxDdXN0b20uY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSlNBYm9ydFNpZ25hbEN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTQxMEI3RTcxMTA0NUZBQjAwMEQ4MjI0RiAvKiBKU01lc3NhZ2VFdmVudEN1
c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU01lc3NhZ2VF
dmVudEN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxMEU0NDVGMjM0
MzczQUQwMDAxNzNENCAvKiBMaWJXZWJSVENTb2NrZXRJZGVudGlmaWVyLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgbmFtZSA9IExpYldlYlJUQ1NvY2tldElkZW50aWZpZXIuaDsgcGF0aCA9
IGxpYndlYnJ0Yy9MaWJXZWJSVENTb2NrZXRJZGVudGlmaWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTQxMTAzQUE3MUUzOTc5MEEwMDc2OUYwMyAvKiBSZWFsdGltZU91dGdvaW5n
QXVkaW9Tb3VyY2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVh
bHRpbWVPdXRnb2luZ0F1ZGlvU291cmNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
QEAgLTIwODA3LDYgKzIwODA5LDggQEAKIAkJN0MzRDhFRTQxRTA4QkFCRTAwMjNCMDg0IC8qIEdD
IC8gV3JhcHBpbmcgT25seSAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4g
PSAoCisJCQkJNDEwOTM4MjgyMzQ3Nzk5QTAwOTQyOEJBIC8qIEpTQWJvcnRDb250cm9sbGVyQ3Vz
dG9tLmNwcCAqLywKKwkJCQk0MTA5MzgyQzIzNDc4NTBFMDA5NDI4QkEgLyogSlNBYm9ydFNpZ25h
bEN1c3RvbS5jcHAgKi8sCiAJCQkJNzFFRkNFREUyMDJCMzlDNzAwRDdDNDExIC8qIEpTQW5pbWF0
aW9uRWZmZWN0Q3VzdG9tLmNwcCAqLywKIAkJCQk3MTAyNUVENTFGOTlGMTQ3MDA0QTI1MEMgLyog
SlNBbmltYXRpb25UaW1lbGluZUN1c3RvbS5jcHAgKi8sCiAJCQkJQkMyRUQ2QkIwQzZCRDJGMDAw
OTIwQkZGIC8qIEpTQXR0ckN1c3RvbS5jcHAgKi8sCkBAIC0yMDgzNCw2ICsyMDgzOCw3IEBACiAJ
CQkJRTM0RUU0OUYxREMyRDU3NTAwRUFBOUQzIC8qIEpTRXZlbnRDdXN0b20uaCAqLywKIAkJCQlC
QzYwOTAxRTBFOTFCOEVDMDAwQzY4QjUgLyogSlNFdmVudFRhcmdldEN1c3RvbS5jcHAgKi8sCiAJ
CQkJNDZCNjNGNkIxQzZFOENERjAwMkU5MTRCIC8qIEpTRXZlbnRUYXJnZXRDdXN0b20uaCAqLywK
KwkJCQk0MTMxRjNCMTFGOTU1MjgxMDA1OTk5NUEgLyogSlNGZXRjaEV2ZW50Q3VzdG9tLmNwcCAq
LywKIAkJCQk4MzVCNjgwRTFGNTQ4QkRFMDA3MUY3RjYgLyogSlNGaWxlU3lzdGVtRW50cnlDdXN0
b20uY3BwICovLAogCQkJCUJDQ0JBRDNBMEMxOEJGRjgwMENFODkwRiAvKiBKU0hUTUxDb2xsZWN0
aW9uQ3VzdG9tLmNwcCAqLywKIAkJCQlCQzUxNTgwQTBDMDNENDA0MDA4QkIwRUUgLyogSlNIVE1M
RG9jdW1lbnRDdXN0b20uY3BwICovLApAQCAtMjA5NzQsNyArMjA5NzksNiBAQAogCQkJY2hpbGRy
ZW4gPSAoCiAJCQkJREVDMjk3NUQxQjRERUIyQTAwNUY1OTQ1IC8qIEpTQ3VzdG9tRXZlbnRDdXN0
b20uY3BwICovLAogCQkJCTgzMUM0NkMzMUY5RUU1RTAwMEVCRDQ1MCAvKiBKU0V4dGVuZGFibGVN
ZXNzYWdlRXZlbnRDdXN0b20uY3BwICovLAotCQkJCTQxMzFGM0IxMUY5NTUyODEwMDU5OTk1QSAv
KiBKU0ZldGNoRXZlbnRDdXN0b20uY3BwICovLAogCQkJCUJDRTdCMTkyMEQ0RTg2OTYwMDc1QTUz
OSAvKiBKU0hpc3RvcnlDdXN0b20uY3BwICovLAogCQkJCUNBNkMxNTM3MjIwRDFFQjMwMDU1Q0JG
QyAvKiBKU0lEQkN1cnNvckN1c3RvbS5jcHAgKi8sCiAJCQkJQ0E2QzE1MzgyMjBEMUVCMzAwNTVD
QkZDIC8qIEpTSURCQ3Vyc29yV2l0aFZhbHVlQ3VzdG9tLmNwcCAqLywKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQWJvcnRDb250cm9sbGVyQ3VzdG9tLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQWJvcnRDb250cm9sbGVyQ3VzdG9tLmNwcApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5iOTFlM2M3OTIzNGI1YzliZmM0ZjkxOWI5YjliMmExNDA2NDY0YjliCi0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNBYm9ydENvbnRyb2xsZXJD
dXN0b20uY3BwCkBAIC0wLDAgKzEsMzYgQEAKKy8qCisqIENvcHlyaWdodCAoQykgMjAxOSBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisqCisqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyogYXJlIG1ldDoKKyogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCisqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisqCisqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorKiBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorKiBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIKKyogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElO
Qy4gT1IKKyogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsCisqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyogUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisqIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkKKyogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCisqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworI2luY2x1
ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkpTQWJvcnRDb250cm9sbGVyLmgiCisKK25hbWVzcGFj
ZSBXZWJDb3JlIHsKKwordm9pZCBKU0Fib3J0Q29udHJvbGxlcjo6dmlzaXRBZGRpdGlvbmFsQ2hp
bGRyZW4oSlNDOjpTbG90VmlzaXRvciYgdmlzaXRvcikKK3sKKyAgICB2aXNpdG9yLmFkZE9wYXF1
ZVJvb3QoJndyYXBwZWQoKS5zaWduYWwoKSk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQWJvcnRTaWduYWxDdXN0
b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNBYm9ydFNpZ25hbEN1c3RvbS5j
cHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uM2RhZDYzNzcyODFmNGExYmVhYzc1MjQ2MDQyYmExY2ExM2FiNzczYQot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQWJvcnRTaWdu
YWxDdXN0b20uY3BwCkBAIC0wLDAgKzEsNDkgQEAKKy8qCisqIENvcHlyaWdodCAoQykgMjAxOSBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisqCisqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyogYXJlIG1ldDoKKyogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisqCisqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorKiBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKKyogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExF
IElOQy4gT1IKKyogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyogUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisqIFBS
T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkKKyogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUCisqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworI2lu
Y2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkpTQWJvcnRTaWduYWwuaCIKKworbmFtZXNwYWNl
IFdlYkNvcmUgeworCitib29sIEpTQWJvcnRTaWduYWxPd25lcjo6aXNSZWFjaGFibGVGcm9tT3Bh
cXVlUm9vdHMoSlNDOjpIYW5kbGU8SlNDOjpVbmtub3duPiBoYW5kbGUsIHZvaWQqLCBKU0M6OlNs
b3RWaXNpdG9yJiB2aXNpdG9yLCBjb25zdCBjaGFyKiogcmVhc29uKQoreworICAgIGF1dG8mIGFi
b3J0U2lnbmFsID0gSlNDOjpqc0Nhc3Q8SlNBYm9ydFNpZ25hbCo+KGhhbmRsZS5zbG90KCktPmFz
Q2VsbCgpKS0+d3JhcHBlZCgpOworICAgIGlmIChhYm9ydFNpZ25hbC5pc0ZpcmluZ0V2ZW50TGlz
dGVuZXJzKCkpIHsKKyAgICAgICAgaWYgKFVOTElLRUxZKHJlYXNvbikpCisgICAgICAgICAgICAq
cmVhc29uID0gIkV2ZW50VGFyZ2V0IGZpcmluZyBldmVudCBsaXN0ZW5lcnMiOworICAgICAgICBy
ZXR1cm4gdHJ1ZTsKKyAgICB9CisKKyAgICBpZiAoYWJvcnRTaWduYWwuYWJvcnRlZCgpKQorICAg
ICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBpZiAoYWJvcnRTaWduYWwuaXNGb2xsb3dpbmdTaWdu
YWwoKSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICByZXR1cm4gdmlzaXRvci5jb250YWlu
c09wYXF1ZVJvb3QoJmFib3J0U2lnbmFsKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNUeXBlZE9NQ1NTU3R5bGVW
YWx1ZUN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1R5cGVkT01DU1NT
dHlsZVZhbHVlQ3VzdG9tLmNwcAppbmRleCAxMzVhYWVlNTE5ZGUyMTA1YjIxYTE5MjZlYzkxYzVj
YjYzZDI2NTY3Li5iZjI2ZTgwMjBjNTdmYzdlMTZlMjA2ZjJkMmFhZGRjZmExYmY4Y2RkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1R5cGVkT01DU1NTdHlsZVZhbHVl
Q3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1R5cGVkT01DU1NT
dHlsZVZhbHVlQ3VzdG9tLmNwcApAQCAtMjgsNiArMjgsNyBAQAogCiAjaWYgRU5BQkxFKENTU19U
WVBFRF9PTSkKIAorI2luY2x1ZGUgIkpTRE9NV3JhcHBlckNhY2hlLmgiCiAjaW5jbHVkZSAiSlNU
eXBlZE9NQ1NTSW1hZ2VWYWx1ZS5oIgogI2luY2x1ZGUgIkpTVHlwZWRPTUNTU1VuaXRWYWx1ZS5o
IgogI2luY2x1ZGUgIkpTVHlwZWRPTUNTU1VucGFyc2VkVmFsdWUuaCIKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2RvbS9BYm9ydENvbnRyb2xsZXIuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9t
L0Fib3J0Q29udHJvbGxlci5pZGwKaW5kZXggMjk3MWM1NDFhYWExMzJlNDcyMTVhNDQwZWNmYjVk
OTllM2EyZTY5ZC4uN2Y0Y2U1OTY3MGRjNDk5YzY1NzhjOTdlNmNmNzZkZTgxMWNlYzQyOCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0Fib3J0Q29udHJvbGxlci5pZGwKKysrIGIvU291
cmNlL1dlYkNvcmUvZG9tL0Fib3J0Q29udHJvbGxlci5pZGwKQEAgLTI3LDcgKzI3LDggQEAKICAg
ICBDb25zdHJ1Y3RvciwKICAgICBDb25zdHJ1Y3RvckNhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQsCiAgICAgRXhwb3NlZD0oV2luZG93LFdvcmtlciksCi0gICAgSW1wbGVtZW50YXRpb25M
YWNrc1ZUYWJsZQorICAgIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUsCisgICAgSlNDdXN0b21N
YXJrRnVuY3Rpb24KIF0gaW50ZXJmYWNlIEFib3J0Q29udHJvbGxlciB7CiAgICAgW1NhbWVPYmpl
Y3RdIHJlYWRvbmx5IGF0dHJpYnV0ZSBBYm9ydFNpZ25hbCBzaWduYWw7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9BYm9ydFNpZ25hbC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20v
QWJvcnRTaWduYWwuY3BwCmluZGV4IDRhN2Y3YzYwNmU1ZWM1ZTRhYjIwMjEyMTMwNTE2YjkxZTM3
ZWZkZGEuLjRjNzVmZDFjMTczMzUzOWU4ZjAzN2U5NmE3NjE1Yzk2Mjk5NTJkYTIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9BYm9ydFNpZ25hbC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvZG9tL0Fib3J0U2lnbmFsLmNwcApAQCAtNzUsNiArNzUsOCBAQCB2b2lkIEFib3J0U2lnbmFs
Ojpmb2xsb3coQWJvcnRTaWduYWwmIHNpZ25hbCkKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAor
ICAgIEFTU0VSVCghbV9mb2xsb3dpbmdTaWduYWwpOworICAgIG1fZm9sbG93aW5nU2lnbmFsID0g
bWFrZVdlYWtQdHIoc2lnbmFsKTsKICAgICBzaWduYWwuYWRkQWxnb3JpdGhtKFt3ZWFrVGhpcyA9
IG1ha2VXZWFrUHRyKHRoaXMpXSB7CiAgICAgICAgIGlmICghd2Vha1RoaXMpCiAgICAgICAgICAg
ICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vQWJvcnRTaWduYWwuaCBi
L1NvdXJjZS9XZWJDb3JlL2RvbS9BYm9ydFNpZ25hbC5oCmluZGV4IGNjMDU5MTNhOTI0N2ZmZDVh
YzE3NWM4ZTFhY2Y0YTQxM2I3OGVkYmEuLmQ0MmRlNjc3NzNiNDk0OTdiZjhiZTA3ZTZjNjM4NjY1
ZDlhNjhmMWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9BYm9ydFNpZ25hbC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9BYm9ydFNpZ25hbC5oCkBAIC01Myw2ICs1Myw4IEBAIHB1
YmxpYzoKIAogICAgIHZvaWQgZm9sbG93KEFib3J0U2lnbmFsJik7CiAKKyAgICBib29sIGlzRm9s
bG93aW5nU2lnbmFsKCkgY29uc3QgeyByZXR1cm4gISFtX2ZvbGxvd2luZ1NpZ25hbDsgfQorCiBw
cml2YXRlOgogICAgIGV4cGxpY2l0IEFib3J0U2lnbmFsKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQm
KTsKIApAQCAtNjMsNiArNjUsNyBAQCBwcml2YXRlOgogICAgIAogICAgIGJvb2wgbV9hYm9ydGVk
IHsgZmFsc2UgfTsKICAgICBWZWN0b3I8QWxnb3JpdGhtPiBtX2FsZ29yaXRobXM7CisgICAgV2Vh
a1B0cjxBYm9ydFNpZ25hbD4gbV9mb2xsb3dpbmdTaWduYWw7CiB9OwogCiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9kb20vQWJvcnRTaWduYWwuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9t
L0Fib3J0U2lnbmFsLmlkbAppbmRleCBiYjdkNDlkZTk4M2VlNGZiMDg5Y2FiOTQ5MzU1YmYwZDM5
NTlhYjc4Li41ZmQ5OTYzMTM1ZTAyNDZjNWVjNTdlNTcyYTAwMTI0YTZmNmRlNTBmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vQWJvcnRTaWduYWwuaWRsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9BYm9ydFNpZ25hbC5pZGwKQEAgLTI0LDYgKzI0LDcgQEAKICAqLwogCiBbCisgICAg
Q3VzdG9tSXNSZWFjaGFibGUsCiAgICAgRXhwb3NlZD0oV2luZG93LFdvcmtlcikKIF0gaW50ZXJm
YWNlIEFib3J0U2lnbmFsIDogRXZlbnRUYXJnZXQgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBi
b29sZWFuIGFib3J0ZWQ7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZDhhMDBjMDk2YWZlNzIzYjg5MWZlOThiN2VhMDEwMDY1
YjI1ODcwYS4uMjI1Yzc1MWJiZGVjMTc3YzQyNWU0NWEyYjVkYzA1ZDkxNGEzMjc1ZiAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE0IEBACisyMDE5LTEwLTA0ICB5b3Vlbm4gZmFibGV0ICA8eW91ZW5uQGFwcGxl
LmNvbT4KKworICAgICAgICBBYm9ydFNpZ25hbCBkb2VzIG5vdCBhbHdheXMgZW1pdCB0aGUgYWJv
cnQgc2lnbmFsCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMDE4NzEKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU1NDUxNzEyPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaHR0cC90ZXN0cy9mZXRjaC9h
Ym9ydC1zaWduYWwtZ2MtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3Rz
L2ZldGNoL2Fib3J0LXNpZ25hbC1nYy5odG1sOiBBZGRlZC4KKwogMjAxOS0xMC0wNCAgeW91ZW5u
IGZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgUmV1c2UgZXhpc3Rpbmcgd2Vi
IHByb2Nlc3NlcyBmb3IgcnVubmluZyBzZXJ2aWNlIHdvcmtlcnMKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gvYWJvcnQtc2lnbmFsLWdjLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvZmV0Y2gvYWJvcnQtc2lnbmFsLWdjLWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5hOGZjZjA2OGEyMmJlN2Q0YjkxNDVhY2QxNDFkMWIyN2Q5ZTg0NjNiCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9mZXRjaC9hYm9ydC1zaWduYWwt
Z2MtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNCBAQAorCitQQVNTIEdDIHNob3VsZCBjb2xsZWN0
IGEgc2lnbmFsIGFmdGVyIGl0cyBjb250cm9sbGVyIAorUEFTUyBHQyBzaG91bGQgY29sbGVjdCBh
IHNpZ25hbCBhZnRlciBpdHMgcmVxdWVzdCAKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9mZXRjaC9hYm9ydC1zaWduYWwtZ2MuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvZmV0Y2gvYWJvcnQtc2lnbmFsLWdjLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmEyMzNlZjRhM2NjNDYy
MzkzNjBiNWRiYWJmY2Y1M2M3NjA2N2NlNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvZmV0Y2gvYWJvcnQtc2lnbmFsLWdjLmh0bWwKQEAgLTAsMCArMSw0NCBAQAor
PCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNl
dD0idXRmLTgiPgorICAgICAgICA8dGl0bGU+QWJvcnQgU2lnbmFsIEdDPC90aXRsZT4KKyAgICAg
ICAgPHNjcmlwdCBzcmM9Ii9qcy10ZXN0LXJlc291cmNlcy9nYy5qcyI+PC9zY3JpcHQ+CisgICAg
ICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAg
ICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2Ny
aXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keT4KKyAgICAgICAgPHNjcmlwdD4KK2Z1bmN0aW9u
IHRlc3RBYm9ydENvbnRyb2xsZXJTaWduYWwoY2FsbGJhY2spCit7CisgICAgIGNvbnN0IGNvbnRy
b2xsZXIgPSBuZXcgQWJvcnRDb250cm9sbGVyKCk7CisgICAgIGNvbnRyb2xsZXIuc2lnbmFsLmFk
ZEV2ZW50TGlzdGVuZXIoImFib3J0IiwgY2FsbGJhY2spOworICAgICBzZXRUaW1lb3V0KCgpID0+
IGNvbnRyb2xsZXIuYWJvcnQoKSwgMTAwKTsKK30KKworcHJvbWlzZV90ZXN0KCgpID0+IHsKKyAg
ICBsZXQgcmVzb2x2ZTsKKyAgICBjb25zdCBwcm9taXNlID0gbmV3IFByb21pc2UociA9PiByZXNv
bHZlID0gcik7CisgICAgdGVzdEFib3J0Q29udHJvbGxlclNpZ25hbChyZXNvbHZlKTsKKyAgICB3
aW5kb3cuZ2MoKTsKKyAgICByZXR1cm4gcHJvbWlzZTsKK30sICJHQyBzaG91bGQgY29sbGVjdCBh
IHNpZ25hbCBhZnRlciBpdHMgY29udHJvbGxlciIpOworCitmdW5jdGlvbiB0ZXN0RmV0Y2hSZXF1
ZXN0U2lnbmFsKGNhbGxiYWNrKQoreworICAgICBjb25zdCBjb250cm9sbGVyID0gbmV3IEFib3J0
Q29udHJvbGxlcigpOworICAgICBjb25zdCByZXF1ZXN0ID0gbmV3IFJlcXVlc3QoIi8iLCB7c2ln
bmFsIDogY29udHJvbGxlci5zaWduYWx9KTsKKyAgICAgcmVxdWVzdC5zaWduYWwuYWRkRXZlbnRM
aXN0ZW5lcigiYWJvcnQiLCBjYWxsYmFjayk7CisgICAgIHNldFRpbWVvdXQoKCkgPT4gY29udHJv
bGxlci5hYm9ydCgpLCAxMDApOworfQorCitwcm9taXNlX3Rlc3QoKCkgPT4geworICAgIGxldCBy
ZXNvbHZlOworICAgIGNvbnN0IHByb21pc2UgPSBuZXcgUHJvbWlzZShyID0+IHJlc29sdmUgPSBy
KTsKKyAgICB0ZXN0RmV0Y2hSZXF1ZXN0U2lnbmFsKHJlc29sdmUpOworICAgIHdpbmRvdy5nYygp
OworICAgIHJldHVybiBwcm9taXNlOworfSwgIkdDIHNob3VsZCBjb2xsZWN0IGEgc2lnbmFsIGFm
dGVyIGl0cyByZXF1ZXN0Iik7CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRt
bD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>