<?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>181914</bug_id>
          
          <creation_ts>2018-01-21 10:37:45 -0800</creation_ts>
          <short_desc>Resign NowPlaying status when no media element is eligible</short_desc>
          <delta_ts>2018-01-23 23:02:04 -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>Media</component>
          <version>Other</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=181987</see_also>
          <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>
          <dependson>181988</dependson>
          <blocked>182038</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Eric Carlson">eric.carlson</reporter>
          <assigned_to name="Eric Carlson">eric.carlson</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>jer.noble</cc>
    
    <cc>jlewis3</cc>
    
    <cc>rniwa</cc>
    
    <cc>ryanhaddad</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1391482</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2018-01-21 10:37:45 -0800</bug_when>
    <thetext>Resign NowPlaying status when no media element is eligible.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1391483</commentid>
    <comment_count>1</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2018-01-21 10:38:29 -0800</bug_when>
    <thetext>&lt;rdar://problem/35294116&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1391484</commentid>
    <comment_count>2</comment_count>
      <attachid>331874</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2018-01-21 10:57:34 -0800</bug_when>
    <thetext>Created attachment 331874
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1391530</commentid>
    <comment_count>3</comment_count>
      <attachid>331874</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-01-21 19:30:39 -0800</bug_when>
    <thetext>Comment on attachment 331874
Patch

Clearing flags on attachment: 331874

Committed r227279: &lt;https://trac.webkit.org/changeset/227279&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1391531</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-01-21 19:30:41 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1391672</commentid>
    <comment_count>5</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2018-01-22 09:32:40 -0800</bug_when>
    <thetext>This change appears to have caused an assertion failure, seen here with media/video-main-content-autoplay.html:

ASSERTION FAILED: isSafeToUpdateStyleOrLayout()
/Volumes/Data/slave/highsierra-debug/build/Source/WebCore/dom/Document.cpp(1980) : void WebCore::Document::updateLayout()

https://build.webkit.org/results/Apple%20High%20Sierra%20Debug%20WK2%20(Tests)/r227291%20(1718)/results.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1391674</commentid>
    <comment_count>6</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2018-01-22 09:39:45 -0800</bug_when>
    <thetext>I can reproduce the crash with a build of r227279 using the following command:
run-webkit-tests media/video-main-content-autoplay.html media/video-main-content-deny-obscured.html -fg --iter 10 --no-retry

I cannot reproduce with a build of r227278.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1391685</commentid>
    <comment_count>7</comment_count>
    <who name="Matt Lewis">jlewis3</who>
    <bug_when>2018-01-22 09:58:58 -0800</bug_when>
    <thetext>The same crash is also happening with the test media/video-main-content-allow-then-scroll.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1391808</commentid>
    <comment_count>8</comment_count>
      <attachid>331963</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2018-01-22 14:09:04 -0800</bug_when>
    <thetext>Created attachment 331963
Fix crashing tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1391810</commentid>
    <comment_count>9</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2018-01-22 14:12:08 -0800</bug_when>
    <thetext>Reopening to land patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1391865</commentid>
    <comment_count>10</comment_count>
      <attachid>331977</attachid>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2018-01-22 16:39:19 -0800</bug_when>
    <thetext>Created attachment 331977
Patch to fix test crashes

Attaching patch again to trigger EWS.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1391906</commentid>
    <comment_count>11</comment_count>
      <attachid>331977</attachid>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2018-01-22 17:29:43 -0800</bug_when>
    <thetext>Comment on attachment 331977
Patch to fix test crashes

Clearing flags on attachment: 331977

Committed r227373: &lt;https://trac.webkit.org/changeset/227373&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1391907</commentid>
    <comment_count>12</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2018-01-22 17:29:45 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392087</commentid>
    <comment_count>13</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2018-01-23 09:47:05 -0800</bug_when>
    <thetext>API test NowPlayingControlsTests.NowPlayingControlsCheckRegistered is timing out after https://trac.webkit.org/changeset/227373</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392089</commentid>
    <comment_count>14</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2018-01-23 09:47:20 -0800</bug_when>
    <thetext>*** Bug 181987 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392091</commentid>
    <comment_count>15</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-01-23 09:50:25 -0800</bug_when>
    <thetext>Re-opened since this is blocked by bug 181988</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392096</commentid>
    <comment_count>16</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2018-01-23 09:53:45 -0800</bug_when>
    <thetext>Rolled out in https://trac.webkit.org/changeset/227422</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392249</commentid>
    <comment_count>17</comment_count>
      <attachid>332073</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2018-01-23 14:19:53 -0800</bug_when>
    <thetext>Created attachment 332073
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392303</commentid>
    <comment_count>18</comment_count>
      <attachid>332073</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-01-23 15:34:12 -0800</bug_when>
    <thetext>Comment on attachment 332073
Patch

Clearing flags on attachment: 332073

Committed r227457: &lt;https://trac.webkit.org/changeset/227457&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392304</commentid>
    <comment_count>19</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-01-23 15:34:13 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1392450</commentid>
    <comment_count>20</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2018-01-23 23:01:33 -0800</bug_when>
    <thetext>Looks like this introduced a new crash:
https://bugs.webkit.org/show_bug.cgi?id=182038

We can&apos;t trigger a layout within removedFromAncestor</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>331874</attachid>
            <date>2018-01-21 10:57:34 -0800</date>
            <delta_ts>2018-01-23 14:19:48 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-181914-20180121105734.patch</filename>
            <type>text/plain</type>
            <size>23533</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI3Mjc2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmMyZWMzMmMyYWU2Njlj
NjcwNGY4N2Q4ZmYxZTgxYWIyZTkzNDUyYS4uNjY4ZWIxOThlYzg3MWE5YzAyOGZhMmE3Y2NhNWMz
MjIyM2Y4OTAyMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBACisyMDE4LTAxLTIxICBFcmlj
IENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFJlc2lnbiBOb3dQ
bGF5aW5nIHN0YXR1cyB3aGVuIG5vIG1lZGlhIGVsZW1lbnQgaXMgZWxpZ2libGUKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTkxNAorICAgICAgICA8
cmRhcjovL3Byb2JsZW0vMzUyOTQxMTY+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgVXBkYXRlZCBBUEkgdGVzdC4KKworICAgICAgICAqIGh0bWwvSFRN
TE1lZGlhRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50Ojpy
ZW1vdmVkRnJvbUFuY2VzdG9yKTogQ2FsbCBtZWRpYVNlc3Npb24tPmNsaWVudENoYXJhY3Rlcmlz
dGljc0NoYW5nZWQKKyAgICAgICAgc28gTm93UGxheWluZyBzdGF0dXMgd2lsbCBiZSB1cGRhdGVk
LgorCisgICAgICAgICogaHRtbC9NZWRpYUVsZW1lbnRTZXNzaW9uLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6Ok1lZGlhRWxlbWVudFNlc3Npb246OmNhblNob3dDb250cm9sc01hbmFnZXIgY29uc3Qp
OiBSZXR1cm4gZmFsc2Ugd2hlbiBiZWluZyBxdWVyaWVkCisgICAgICAgIGZvciBOb3dQbGF5aW5n
IHN0YXR1cyBpbiBhbiBpbmFjdGl2ZSBkb2N1bWVudC4KKworICAgICAgICAqIHBsYXRmb3JtL2F1
ZGlvL1BsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQ
bGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXI6OnVwZGF0ZU5vd1BsYXlpbmdJbmZvSWZOZWNlc3Nh
cnkpOiBJbXBsZW1lbnQgaW4gZm9yIGFsbAorICAgICAgICBwb3J0cy4KKyAgICAgICAgKiBwbGF0
Zm9ybS9hdWRpby9QbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXIuaDoKKyAgICAgICAgKFdlYkNv
cmU6OlBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlcjo6cmVnaXN0ZXJlZEFzTm93UGxheWluZ0Fw
cGxpY2F0aW9uIGNvbnN0KToKKyAgICAgICAgKiBwbGF0Zm9ybS9hdWRpby9pb3MvTWVkaWFTZXNz
aW9uTWFuYWdlcklPUy5oOgorICAgICAgICAqIHBsYXRmb3JtL2F1ZGlvL21hYy9NZWRpYVNlc3Np
b25NYW5hZ2VyTWFjLmg6CisgICAgICAgICogcGxhdGZvcm0vYXVkaW8vbWFjL01lZGlhU2Vzc2lv
bk1hbmFnZXJNYWMubW06CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVNlc3Npb25NYW5hZ2VyTWFj
Ojp1cGRhdGVOb3dQbGF5aW5nSW5mbyk6IENhbGwgTVJNZWRpYVJlbW90ZVNldENhbkJlTm93UGxh
eWluZ0FwcGxpY2F0aW9uCisgICAgICAgIHdoZW5ldmVyIHN0YXR1cyBjaGFuZ2VzLgorICAgICAg
ICAoV2ViQ29yZTo6UGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyOjp1cGRhdGVOb3dQbGF5aW5n
SW5mb0lmTmVjZXNzYXJ5KTogRGVsZXRlZCwgaW1wbGVtZW50ZWQKKyAgICAgICAgaW4gdGhlIGJh
c2UgY2xhc3MuCisKIDIwMTgtMDEtMjAgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29t
PgogCiAgICAgICAgIE1ha2UgZ2FyYmFnZSBjb2xsZWN0aW9uIG9mIE1lc3NhZ2VQb3J0IG9iamVj
dHMgYmUgYXN5bmNocm9ub3VzLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cg
Yi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCAwNmNhNzJmOTljYzNjOTdiYjc2NzcxNjM0
YTZiZDIwOTlhOGEwYmI3Li5jNDM5OTYxNzVlMGE5NjZmYmYzNDhiMDYyMjQwZjNmM2IwZmNkZDZi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDE4LTAxLTIxICBFcmljIENhcmxzb24gIDxl
cmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFJlc2lnbiBOb3dQbGF5aW5nIHN0YXR1
cyB3aGVuIG5vIG1lZGlhIGVsZW1lbnQgaXMgZWxpZ2libGUKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTkxNAorICAgICAgICA8cmRhcjovL3Byb2Js
ZW0vMzUyOTQxMTY+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbToKKyAgICAgICAgKC1bV0tX
ZWJWaWV3IF9yZXF1ZXN0QWN0aXZlTm93UGxheWluZ1Nlc3Npb25JbmZvOl0pOiBSZXR1cm4gcmVn
aXN0ZXJlZEFzTm93UGxheWluZ0FwcGxpY2F0aW9uCisgICAgICAgIHN0YXR1cy4KKyAgICAgICAg
KiBVSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld1ByaXZhdGUuaDoKKworICAgICAgICAqIFVJ
UHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6
Om5vd1BsYXlpbmdJbmZvQ2FsbGJhY2spOiBEaXR0by4KKyAgICAgICAgKiBVSVByb2Nlc3MvV2Vi
UGFnZVByb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5p
bjoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvQ29jb2EvV2ViUGFnZUNvY29hLm1tOgor
ICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpyZXF1ZXN0QWN0aXZlTm93UGxheWluZ1Nlc3Npb25J
bmZvKTogRGl0dG8uCisKIDIwMTgtMDEtMjAgIEFuZHkgRXN0ZXMgIDxhZXN0ZXNAYXBwbGUuY29t
PgogCiAgICAgICAgIFtBcHBsZSBQYXldIFN0b3AgZWFnZXJseSBsb2FkaW5nIFBhc3NLaXQuZnJh
bWV3b3JrCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQu
Y3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcAppbmRleCA5OGNl
MWUzNzIxMzg1ZjQ3ZDMzYTA1NmU2ZDRlMzU4MzE2NmFjZTU3Li4yNDA2NzQ5ZDQ4MjFhY2U1Yjhh
MmNmNjcxZTMyOTJiNTczYjMwMDc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxNZWRpYUVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxl
bWVudC5jcHAKQEAgLTk3MSw2ICs5NzEsOSBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnJlbW92
ZWRGcm9tQW5jZXN0b3IoUmVtb3ZhbFR5cGUgcmVtb3ZhbFR5cGUsIENvbnRhaW5lck5vZAogICAg
ICAgICBtX3BhdXNlQWZ0ZXJEZXRhY2hlZFRhc2tRdWV1ZS5lbnF1ZXVlVGFzayhzdGQ6OmJpbmQo
JkhUTUxNZWRpYUVsZW1lbnQ6OnBhdXNlQWZ0ZXJEZXRhY2hlZFRhc2ssIHRoaXMpKTsKICAgICB9
CiAKKyAgICBpZiAobV9tZWRpYVNlc3Npb24pCisgICAgICAgIG1fbWVkaWFTZXNzaW9uLT5jbGll
bnRDaGFyYWN0ZXJpc3RpY3NDaGFuZ2VkKCk7CisKICAgICBIVE1MRWxlbWVudDo6cmVtb3ZlZEZy
b21BbmNlc3RvcihyZW1vdmFsVHlwZSwgb2xkUGFyZW50T2ZSZW1vdmVkVHJlZSk7CiB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvTWVkaWFFbGVtZW50U2Vzc2lvbi5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL01lZGlhRWxlbWVudFNlc3Npb24uY3BwCmluZGV4IDJkNWJiNTFm
YmU2Njc1ODk1MTJlNTk4YTJmOGZjYzIyYWZmMjdkMmMuLjVkMjhhZmRlM2EzNjE2ZmQ0YzA1MDk1
YmZkMDdkOGU2NTYzMjQwNWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvTWVkaWFF
bGVtZW50U2Vzc2lvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9NZWRpYUVsZW1lbnRT
ZXNzaW9uLmNwcApAQCAtMzc5LDYgKzM3OSwxMSBAQCBib29sIE1lZGlhRWxlbWVudFNlc3Npb246
OmNhblNob3dDb250cm9sc01hbmFnZXIoUGxheWJhY2tDb250cm9sc1B1cnBvc2UgcHVycG9zZQog
ICAgIH0KIAogICAgIGlmIChwdXJwb3NlID09IFBsYXliYWNrQ29udHJvbHNQdXJwb3NlOjpOb3dQ
bGF5aW5nKSB7CisgICAgICAgIGlmICghbV9lbGVtZW50LmluQWN0aXZlRG9jdW1lbnQoKSkgewor
ICAgICAgICAgICAgTE9HKE1lZGlhLCAiTWVkaWFFbGVtZW50U2Vzc2lvbjo6Y2FuU2hvd0NvbnRy
b2xzTWFuYWdlciAtIHJldHVybmluZyBGQUxTRTogTm90IGluIGFjdGl2ZSBkb2N1bWVudCIpOwor
ICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICB9CisKICAgICAgICAgTE9HKE1lZGlh
LCAiTWVkaWFFbGVtZW50U2Vzc2lvbjo6Y2FuU2hvd0NvbnRyb2xzTWFuYWdlciAtIHJldHVybmlu
ZyBUUlVFOiBQb3RlbnRpYWxseSBwbGF5cyBhdWRpbyIpOwogICAgICAgICByZXR1cm4gdHJ1ZTsK
ICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9QbGF0Zm9y
bU1lZGlhU2Vzc2lvbk1hbmFnZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8v
UGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyLmNwcAppbmRleCAxZjE3Y2NjOTc5MDFlMzIzNmE3
MzUwNThjMDBlZjFiYTE2NmI2MzI4Li4xNDMwMzU1YzgxNjViMTUxZjY2YTgwOGIwNjZmYzlmOGFi
MzI2NTY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9QbGF0Zm9y
bU1lZGlhU2Vzc2lvbk1hbmFnZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1
ZGlvL1BsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlci5jcHAKQEAgLTMzLDEyICszMyw2IEBACiAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotI2lmICFQTEFURk9STShNQUMpCi12b2lkIFBsYXRmb3Jt
TWVkaWFTZXNzaW9uTWFuYWdlcjo6dXBkYXRlTm93UGxheWluZ0luZm9JZk5lY2Vzc2FyeSgpCi17
Ci19Ci0jZW5kaWYKLQogI2lmIEVOQUJMRShWSURFTykgfHwgRU5BQkxFKFdFQl9BVURJTykKIAog
I2lmICFQTEFURk9STShDT0NPQSkKQEAgLTU3LDYgKzUxLDEyIEBAIFBsYXRmb3JtTWVkaWFTZXNz
aW9uTWFuYWdlciogUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyOjpzaGFyZWRNYW5hZ2VySWZF
eGlzdHMoCiB9CiAjZW5kaWYgLy8gIVBMQVRGT1JNKENPQ09BKQogCit2b2lkIFBsYXRmb3JtTWVk
aWFTZXNzaW9uTWFuYWdlcjo6dXBkYXRlTm93UGxheWluZ0luZm9JZk5lY2Vzc2FyeSgpCit7Cisg
ICAgaWYgKGF1dG8gZXhpc3RpbmdNYW5hZ2VyID0gUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2Vy
OjpzaGFyZWRNYW5hZ2VySWZFeGlzdHMoKSkKKyAgICAgICAgZXhpc3RpbmdNYW5hZ2VyLT5zY2hl
ZHVsZVVwZGF0ZU5vd1BsYXlpbmdJbmZvKCk7Cit9CisKIFBsYXRmb3JtTWVkaWFTZXNzaW9uTWFu
YWdlcjo6UGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyKCkKICAgICA6IG1fc3lzdGVtU2xlZXBM
aXN0ZW5lcihQQUw6OlN5c3RlbVNsZWVwTGlzdGVuZXI6OmNyZWF0ZSgqdGhpcykpCiB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9QbGF0Zm9ybU1lZGlhU2Vzc2lv
bk1hbmFnZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL1BsYXRmb3JtTWVkaWFT
ZXNzaW9uTWFuYWdlci5oCmluZGV4IGY1MTgyMDczNGM5NjBhZTJlM2RjODdlMDliMzNjZjZlODQ2
MzAyOGUuLjY3YzE2MTA2MjQ3ZTQ3MTg3MmU3NDhhYTFjYWYyNDVlMTBmOTkxMDQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL1BsYXRmb3JtTWVkaWFTZXNzaW9uTWFu
YWdlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL1BsYXRmb3JtTWVkaWFT
ZXNzaW9uTWFuYWdlci5oCkBAIC02MSw2ICs2MSw3IEBAIHB1YmxpYzoKICAgICBXRUJDT1JFX0VY
UE9SVCB2aXJ0dWFsIGRvdWJsZSBsYXN0VXBkYXRlZE5vd1BsYXlpbmdEdXJhdGlvbigpIGNvbnN0
IHsgcmV0dXJuIE5BTjsgfQogICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgZG91YmxlIGxhc3RV
cGRhdGVkTm93UGxheWluZ0VsYXBzZWRUaW1lKCkgY29uc3QgeyByZXR1cm4gTkFOOyB9CiAgICAg
V0VCQ09SRV9FWFBPUlQgdmlydHVhbCB1aW50NjRfdCBsYXN0VXBkYXRlZE5vd1BsYXlpbmdJbmZv
VW5pcXVlSWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIDA7IH0KKyAgICBXRUJDT1JFX0VYUE9S
VCB2aXJ0dWFsIGJvb2wgcmVnaXN0ZXJlZEFzTm93UGxheWluZ0FwcGxpY2F0aW9uKCkgY29uc3Qg
eyByZXR1cm4gZmFsc2U7IH0KIAogICAgIGJvb2wgd2lsbElnbm9yZVN5c3RlbUludGVycnVwdGlv
bnMoKSBjb25zdCB7IHJldHVybiBtX3dpbGxJZ25vcmVTeXN0ZW1JbnRlcnJ1cHRpb25zOyB9CiAg
ICAgdm9pZCBzZXRXaWxsSWdub3JlU3lzdGVtSW50ZXJydXB0aW9ucyhib29sIGlnbm9yZSkgeyBt
X3dpbGxJZ25vcmVTeXN0ZW1JbnRlcnJ1cHRpb25zID0gaWdub3JlOyB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9pb3MvTWVkaWFTZXNzaW9uTWFuYWdlcklPUy5o
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vaW9zL01lZGlhU2Vzc2lvbk1hbmFnZXJJ
T1MuaAppbmRleCA1ZGEyZGU5ODhjZTZmMjkxNTUwZWI2YzI0OTE3ZTA5Njg1MGU2OWRhLi43NzI4
NDE4ZmMwMDIxNDJhZDIzZDIzYzU4ZmQ0NjI4MDFhYjg2ZjBjIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9pb3MvTWVkaWFTZXNzaW9uTWFuYWdlcklPUy5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL2lvcy9NZWRpYVNlc3Npb25NYW5hZ2VySU9T
LmgKQEAgLTczLDYgKzczLDcgQEAgcHJpdmF0ZToKICAgICBkb3VibGUgbGFzdFVwZGF0ZWROb3dQ
bGF5aW5nRHVyYXRpb24oKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX3JlcG9ydGVkRHVyYXRpb247
IH0KICAgICBkb3VibGUgbGFzdFVwZGF0ZWROb3dQbGF5aW5nRWxhcHNlZFRpbWUoKSBjb25zdCBm
aW5hbCB7IHJldHVybiBtX3JlcG9ydGVkQ3VycmVudFRpbWU7IH0KICAgICB1aW50NjRfdCBsYXN0
VXBkYXRlZE5vd1BsYXlpbmdJbmZvVW5pcXVlSWRlbnRpZmllcigpIGNvbnN0IGZpbmFsIHsgcmV0
dXJuIG1fbGFzdFVwZGF0ZWROb3dQbGF5aW5nSW5mb1VuaXF1ZUlkZW50aWZpZXI7IH0KKyAgICBi
b29sIHJlZ2lzdGVyZWRBc05vd1BsYXlpbmdBcHBsaWNhdGlvbigpIGNvbnN0IGZpbmFsIHsgcmV0
dXJuIG1fbm93UGxheWluZ0FjdGl2ZTsgfQogCiAgICAgUGxhdGZvcm1NZWRpYVNlc3Npb24qIG5v
d1BsYXlpbmdFbGlnaWJsZVNlc3Npb24oKTsKICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2F1ZGlvL21hYy9NZWRpYVNlc3Npb25NYW5hZ2VyTWFjLmggYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9tYWMvTWVkaWFTZXNzaW9uTWFuYWdlck1hYy5oCmluZGV4
IGYyYmQ1NzNhNWU1MTFhYjk3ZDJiMjRkZTU4MTdmY2Q0MzRjNTllZTUuLjQ5OWYwNWI3YjI1NWU4
MTBjYzcxNWZiY2NkZTQ2ZjE0ZWE4YzNhMTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2F1ZGlvL21hYy9NZWRpYVNlc3Npb25NYW5hZ2VyTWFjLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vYXVkaW8vbWFjL01lZGlhU2Vzc2lvbk1hbmFnZXJNYWMuaApAQCAtNDEs
NiArNDEsNyBAQCBwdWJsaWM6CiAgICAgZG91YmxlIGxhc3RVcGRhdGVkTm93UGxheWluZ0R1cmF0
aW9uKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9sYXN0VXBkYXRlZE5vd1BsYXlpbmdEdXJhdGlv
bjsgfQogICAgIGRvdWJsZSBsYXN0VXBkYXRlZE5vd1BsYXlpbmdFbGFwc2VkVGltZSgpIGNvbnN0
IGZpbmFsIHsgcmV0dXJuIG1fbGFzdFVwZGF0ZWROb3dQbGF5aW5nRWxhcHNlZFRpbWU7IH0KICAg
ICB1aW50NjRfdCBsYXN0VXBkYXRlZE5vd1BsYXlpbmdJbmZvVW5pcXVlSWRlbnRpZmllcigpIGNv
bnN0IGZpbmFsIHsgcmV0dXJuIG1fbGFzdFVwZGF0ZWROb3dQbGF5aW5nSW5mb1VuaXF1ZUlkZW50
aWZpZXI7IH0KKyAgICBib29sIHJlZ2lzdGVyZWRBc05vd1BsYXlpbmdBcHBsaWNhdGlvbigpIGNv
bnN0IGZpbmFsIHsgcmV0dXJuIG1fcmVnaXN0ZXJlZEFzTm93UGxheWluZ0FwcGxpY2F0aW9uOyB9
CiAKIHByaXZhdGU6CiAgICAgZnJpZW5kIGNsYXNzIFBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdl
cjsKQEAgLTYxLDYgKzYyLDcgQEAgcHJpdmF0ZToKIAogICAgIGJvb2wgbV9ub3dQbGF5aW5nQWN0
aXZlIHsgZmFsc2UgfTsKICAgICBib29sIG1faXNJbkJhY2tncm91bmQgeyBmYWxzZSB9OworICAg
IGJvb2wgbV9yZWdpc3RlcmVkQXNOb3dQbGF5aW5nQXBwbGljYXRpb24geyBmYWxzZSB9OwogCiAg
ICAgLy8gRm9yIHRlc3RpbmcgcHVycG9zZXMgb25seS4KICAgICBTdHJpbmcgbV9sYXN0VXBkYXRl
ZE5vd1BsYXlpbmdUaXRsZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1
ZGlvL21hYy9NZWRpYVNlc3Npb25NYW5hZ2VyTWFjLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vYXVkaW8vbWFjL01lZGlhU2Vzc2lvbk1hbmFnZXJNYWMubW0KaW5kZXggMmU0NTAyOWI5YTU5
OTMwMjRkNDg3ZDNmMjM1N2ViNzhlMTg0MjZjYi4uZTUxNjA1Mzk2MjcxYTBhYWRhMzM2ODgyYTgx
NjExOTA2ZjQ3Yjc5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8v
bWFjL01lZGlhU2Vzc2lvbk1hbmFnZXJNYWMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vYXVkaW8vbWFjL01lZGlhU2Vzc2lvbk1hbmFnZXJNYWMubW0KQEAgLTU0LDEyICs1NCw2IEBA
IFBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlciogUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2Vy
OjpzaGFyZWRNYW5hZ2VySWZFeGlzdHMoCiAgICAgcmV0dXJuIHBsYXRmb3JtTWVkaWFTZXNzaW9u
TWFuYWdlcjsKIH0KIAotdm9pZCBQbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXI6OnVwZGF0ZU5v
d1BsYXlpbmdJbmZvSWZOZWNlc3NhcnkoKQotewotICAgIGlmIChhdXRvIGV4aXN0aW5nTWFuYWdl
ciA9IChNZWRpYVNlc3Npb25NYW5hZ2VyTWFjICopUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2Vy
OjpzaGFyZWRNYW5hZ2VySWZFeGlzdHMoKSkKLSAgICAgICAgZXhpc3RpbmdNYW5hZ2VyLT5zY2hl
ZHVsZVVwZGF0ZU5vd1BsYXlpbmdJbmZvKCk7Ci19Ci0KIE1lZGlhU2Vzc2lvbk1hbmFnZXJNYWM6
Ok1lZGlhU2Vzc2lvbk1hbmFnZXJNYWMoKQogICAgIDogUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5h
Z2VyKCkKIHsKQEAgLTEzNiw2ICsxMzAsMTAgQEAgdm9pZCBNZWRpYVNlc3Npb25NYW5hZ2VyTWFj
Ojp1cGRhdGVOb3dQbGF5aW5nSW5mbygpCiAgICAgICAgICAgICBNUk1lZGlhUmVtb3RlU2V0Tm93
UGxheWluZ1Zpc2liaWxpdHkoTVJNZWRpYVJlbW90ZUdldExvY2FsT3JpZ2luKCksIE1STm93UGxh
eWluZ0NsaWVudFZpc2liaWxpdHlOZXZlclZpc2libGUpOwogCiAgICAgICAgIExPRyhNZWRpYSwg
Ik1lZGlhU2Vzc2lvbk1hbmFnZXJNYWM6OnVwZGF0ZU5vd1BsYXlpbmdJbmZvIC0gY2xlYXJpbmcg
bm93IHBsYXlpbmcgaW5mbyIpOworCisgICAgICAgIE1STWVkaWFSZW1vdGVTZXRDYW5CZU5vd1Bs
YXlpbmdBcHBsaWNhdGlvbihmYWxzZSk7CisgICAgICAgIG1fcmVnaXN0ZXJlZEFzTm93UGxheWlu
Z0FwcGxpY2F0aW9uID0gZmFsc2U7CisKICAgICAgICAgTVJNZWRpYVJlbW90ZVNldE5vd1BsYXlp
bmdJbmZvKG51bGxwdHIpOwogICAgICAgICBtX25vd1BsYXlpbmdBY3RpdmUgPSBmYWxzZTsKICAg
ICAgICAgbV9sYXN0VXBkYXRlZE5vd1BsYXlpbmdUaXRsZSA9IGVtcHR5U3RyaW5nKCk7CkBAIC0x
NTQsMTAgKzE1MiwxMCBAQCB2b2lkIE1lZGlhU2Vzc2lvbk1hbmFnZXJNYWM6OnVwZGF0ZU5vd1Bs
YXlpbmdJbmZvKCkKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIHN0YXRpYyBkaXNwYXRj
aF9vbmNlX3QgZW5hYmxlTm93UGxheWluZ1Rva2VuOwotICAgIGRpc3BhdGNoX29uY2UoJmVuYWJs
ZU5vd1BsYXlpbmdUb2tlbiwgXigpIHsKKyAgICBpZiAoIW1fcmVnaXN0ZXJlZEFzTm93UGxheWlu
Z0FwcGxpY2F0aW9uKSB7CisgICAgICAgIG1fcmVnaXN0ZXJlZEFzTm93UGxheWluZ0FwcGxpY2F0
aW9uID0gdHJ1ZTsKICAgICAgICAgTVJNZWRpYVJlbW90ZVNldENhbkJlTm93UGxheWluZ0FwcGxp
Y2F0aW9uKHRydWUpOwotICAgIH0pOworICAgIH0KIAogICAgIFN0cmluZyB0aXRsZSA9IGN1cnJl
bnRTZXNzaW9uLT50aXRsZSgpOwogICAgIGRvdWJsZSBkdXJhdGlvbiA9IGN1cnJlbnRTZXNzaW9u
LT5zdXBwb3J0c1NlZWtpbmcoKSA/IGN1cnJlbnRTZXNzaW9uLT5kdXJhdGlvbigpIDogTWVkaWFQ
bGF5ZXI6OmludmFsaWRUaW1lKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0Nv
Y29hL1dLV2ViVmlldy5tbQppbmRleCBkZDI3NWE3NDNlY2M4ZDMzZGRlYWZmNWUxY2M0ZGJhMzIx
ODU5YTVjLi4yMGQzYzFkNWUxNDczNzg3YWJjMTRjYjM4MDJhYTdmNjgxMWIwMjc1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tCisrKyBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW0KQEAgLTYwNzQs
MTYgKzYwNzQsMTYgQEAgc3RhdGljIFdlYkNvcmU6OlVzZXJJbnRlcmZhY2VMYXlvdXREaXJlY3Rp
b24gdG9Vc2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uKFVJU2UKIAogI2VuZGlmIC8vIFBMQVRG
T1JNKE1BQykKIAotLSAodm9pZClfcmVxdWVzdEFjdGl2ZU5vd1BsYXlpbmdTZXNzaW9uSW5mbzoo
dm9pZCheKShCT09MLCBOU1N0cmluZyosIGRvdWJsZSwgZG91YmxlLCBOU0ludGVnZXIpKWNhbGxi
YWNrCistICh2b2lkKV9yZXF1ZXN0QWN0aXZlTm93UGxheWluZ1Nlc3Npb25JbmZvOih2b2lkKF4p
KEJPT0wsIEJPT0wsIE5TU3RyaW5nKiwgZG91YmxlLCBkb3VibGUsIE5TSW50ZWdlcikpY2FsbGJh
Y2sKIHsKICAgICBpZiAoIV9wYWdlKSB7Ci0gICAgICAgIGNhbGxiYWNrKE5PLCBAIiIsIHN0ZDo6
bnVtZXJpY19saW1pdHM8ZG91YmxlPjo6cXVpZXRfTmFOKCksIHN0ZDo6bnVtZXJpY19saW1pdHM8
ZG91YmxlPjo6cXVpZXRfTmFOKCksIDApOworICAgICAgICBjYWxsYmFjayhOTywgTk8sIEAiIiwg
c3RkOjpudW1lcmljX2xpbWl0czxkb3VibGU+OjpxdWlldF9OYU4oKSwgc3RkOjpudW1lcmljX2xp
bWl0czxkb3VibGU+OjpxdWlldF9OYU4oKSwgMCk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAK
ICAgICBhdXRvIGhhbmRsZXIgPSBtYWtlQmxvY2tQdHIoY2FsbGJhY2spOwotICAgIGF1dG8gbG9j
YWxDYWxsYmFjayA9IFdlYktpdDo6Tm93UGxheWluZ0luZm9DYWxsYmFjazo6Y3JlYXRlKFtoYW5k
bGVyXShib29sIGFjdGl2ZSwgU3RyaW5nIHRpdGxlLCBkb3VibGUgZHVyYXRpb24sIGRvdWJsZSBl
bGFwc2VkVGltZSwgdWludDY0X3QgdW5pcXVlSWRlbnRpZmllciwgV2ViS2l0OjpDYWxsYmFja0Jh
c2U6OkVycm9yKSB7Ci0gICAgICAgIGhhbmRsZXIoYWN0aXZlLCB0aXRsZSwgZHVyYXRpb24sIGVs
YXBzZWRUaW1lLCB1bmlxdWVJZGVudGlmaWVyKTsKKyAgICBhdXRvIGxvY2FsQ2FsbGJhY2sgPSBX
ZWJLaXQ6Ok5vd1BsYXlpbmdJbmZvQ2FsbGJhY2s6OmNyZWF0ZShbaGFuZGxlcl0oYm9vbCBhY3Rp
dmUsIGJvb2wgcmVnaXN0ZXJlZEFzTm93UGxheWluZ0FwcGxpY2F0aW9uLCBTdHJpbmcgdGl0bGUs
IGRvdWJsZSBkdXJhdGlvbiwgZG91YmxlIGVsYXBzZWRUaW1lLCB1aW50NjRfdCB1bmlxdWVJZGVu
dGlmaWVyLCBXZWJLaXQ6OkNhbGxiYWNrQmFzZTo6RXJyb3IpIHsKKyAgICAgICAgaGFuZGxlcihh
Y3RpdmUsIHJlZ2lzdGVyZWRBc05vd1BsYXlpbmdBcHBsaWNhdGlvbiwgdGl0bGUsIGR1cmF0aW9u
LCBlbGFwc2VkVGltZSwgdW5pcXVlSWRlbnRpZmllcik7CiAgICAgfSk7CiAKICAgICBfcGFnZS0+
cmVxdWVzdEFjdGl2ZU5vd1BsYXlpbmdTZXNzaW9uSW5mbyhXVEZNb3ZlKGxvY2FsQ2FsbGJhY2sp
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZp
ZXdQcml2YXRlLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3
UHJpdmF0ZS5oCmluZGV4IDBmMzM4MTczZTYwNzVjOTNkYjI1OWMxNDA4ZDg5MTQyN2YyOWFhMWQu
LjdhZjhiNWE4MjA3NjRhZjQ1NGIwYmIyZTc3MzRlYWYzYThhZDEwYzYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXdQcml2YXRlLmgKKysrIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld1ByaXZhdGUuaApAQCAt
NDQyLDcgKzQ0Miw3IEBAIHR5cGVkZWYgTlNfT1BUSU9OUyhOU0ludGVnZXIsIF9XS1JlY3RFZGdl
KSB7CiAtICh2b2lkKV9zZXRGb290ZXJCYW5uZXJIZWlnaHQ6KGludCloZWlnaHQgV0tfQVBJX0FW
QUlMQUJMRShtYWNvc3goMTAuMTIuMykpOwogI2VuZGlmCiAKLS0gKHZvaWQpX3JlcXVlc3RBY3Rp
dmVOb3dQbGF5aW5nU2Vzc2lvbkluZm86KHZvaWQoXikoQk9PTCwgTlNTdHJpbmcqLCBkb3VibGUs
IGRvdWJsZSwgTlNJbnRlZ2VyKSljYWxsYmFjayBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19N
QUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKKy0gKHZvaWQpX3JlcXVlc3RBY3RpdmVOb3dQbGF5
aW5nU2Vzc2lvbkluZm86KHZvaWQoXikoQk9PTCwgQk9PTCwgTlNTdHJpbmcqLCBkb3VibGUsIGRv
dWJsZSwgTlNJbnRlZ2VyKSljYWxsYmFjayBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNf
VEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKIAogLSAodm9pZClfc2V0UGFnZVNjYWxlOihDR0Zsb2F0
KXNjYWxlIHdpdGhPcmlnaW46KENHUG9pbnQpb3JpZ2luIFdLX0FQSV9BVkFJTEFCTEUoaW9zKDEw
LjMpKTsKIC0gKENHRmxvYXQpX3BhZ2VTY2FsZSBXS19BUElfQVZBSUxBQkxFKGlvcygxMC4zKSk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAppbmRleCBjZTE1YWNlZGI2
MWVhZjhmODVmNmVkYTdhZWUzMjZjNjlmZmVkNThiLi5kZWUwYWFkNGU3NTFkOTVmNTBhOWQzM2Mw
ZTIwZTk0MGUxNDk4YTUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQ
YWdlUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5j
cHAKQEAgLTY4MDcsNyArNjgwNyw3IEBAIHZvaWQgV2ViUGFnZVByb3h5OjpyZXF1ZXN0QWN0aXZl
Tm93UGxheWluZ1Nlc3Npb25JbmZvKFJlZjxOb3dQbGF5aW5nSW5mb0NhbGxiYWNrCiAgICAgbV9w
cm9jZXNzLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpSZXF1ZXN0QWN0aXZlTm93UGxheWluZ1Nl
c3Npb25JbmZvKGNhbGxiYWNrSUQpLCBtX3BhZ2VJRCk7CiB9CiAKLXZvaWQgV2ViUGFnZVByb3h5
Ojpub3dQbGF5aW5nSW5mb0NhbGxiYWNrKGJvb2wgaGFzQWN0aXZlU2Vzc2lvbiwgY29uc3QgU3Ry
aW5nJiB0aXRsZSwgZG91YmxlIGR1cmF0aW9uLCBkb3VibGUgZWxhcHNlZFRpbWUsIHVpbnQ2NF90
IHVuaXF1ZUlkZW50aWZpZXIsIENhbGxiYWNrSUQgY2FsbGJhY2tJRCkKK3ZvaWQgV2ViUGFnZVBy
b3h5Ojpub3dQbGF5aW5nSW5mb0NhbGxiYWNrKGJvb2wgaGFzQWN0aXZlU2Vzc2lvbiwgYm9vbCBy
ZWdpc3RlcmVkQXNOb3dQbGF5aW5nQXBwbGljYXRpb24sIGNvbnN0IFN0cmluZyYgdGl0bGUsIGRv
dWJsZSBkdXJhdGlvbiwgZG91YmxlIGVsYXBzZWRUaW1lLCB1aW50NjRfdCB1bmlxdWVJZGVudGlm
aWVyLCBDYWxsYmFja0lEIGNhbGxiYWNrSUQpCiB7CiAgICAgYXV0byBjYWxsYmFjayA9IG1fY2Fs
bGJhY2tzLnRha2U8Tm93UGxheWluZ0luZm9DYWxsYmFjaz4oY2FsbGJhY2tJRCk7CiAgICAgaWYg
KCFjYWxsYmFjaykgewpAQCAtNjgxNSw3ICs2ODE1LDcgQEAgdm9pZCBXZWJQYWdlUHJveHk6Om5v
d1BsYXlpbmdJbmZvQ2FsbGJhY2soYm9vbCBoYXNBY3RpdmVTZXNzaW9uLCBjb25zdCBTdHJpbmcm
IHQKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIGNhbGxiYWNrLT5wZXJmb3JtQ2FsbGJh
Y2tXaXRoUmV0dXJuVmFsdWUoaGFzQWN0aXZlU2Vzc2lvbiwgdGl0bGUsIGR1cmF0aW9uLCBlbGFw
c2VkVGltZSwgdW5pcXVlSWRlbnRpZmllcik7CisgICAgY2FsbGJhY2stPnBlcmZvcm1DYWxsYmFj
a1dpdGhSZXR1cm5WYWx1ZShoYXNBY3RpdmVTZXNzaW9uLCByZWdpc3RlcmVkQXNOb3dQbGF5aW5n
QXBwbGljYXRpb24sIHRpdGxlLCBkdXJhdGlvbiwgZWxhcHNlZFRpbWUsIHVuaXF1ZUlkZW50aWZp
ZXIpOwogfQogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dl
YlBhZ2VQcm94eS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKaW5k
ZXggY2U4YTMzYzVlZjEyMTQ4OWZjMjEwNmFkNmEwYWM2MzMxYmVkODZhOC4uMWZiMjUwM2NmOGI0
ODUxOTE2NzU1NDM2ZDlmMjViN2YwYjY2YmQ2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
UGFnZVByb3h5LmgKQEAgLTI5Nyw3ICsyOTcsNyBAQCB1c2luZyBEcmF3VG9QREZDYWxsYmFjayA9
IEdlbmVyaWNDYWxsYmFjazxjb25zdCBJUEM6OkRhdGFSZWZlcmVuY2UmPjsKIAogI2lmIFBMQVRG
T1JNKENPQ09BKQogdHlwZWRlZiBHZW5lcmljQ2FsbGJhY2s8Y29uc3QgV2ViQ29yZTo6TWFjaFNl
bmRSaWdodCY+IE1hY2hTZW5kUmlnaHRDYWxsYmFjazsKLXR5cGVkZWYgR2VuZXJpY0NhbGxiYWNr
PGJvb2wsIFN0cmluZywgZG91YmxlLCBkb3VibGUsIHVpbnQ2NF90PiBOb3dQbGF5aW5nSW5mb0Nh
bGxiYWNrOwordHlwZWRlZiBHZW5lcmljQ2FsbGJhY2s8Ym9vbCwgYm9vbCwgU3RyaW5nLCBkb3Vi
bGUsIGRvdWJsZSwgdWludDY0X3Q+IE5vd1BsYXlpbmdJbmZvQ2FsbGJhY2s7CiAjZW5kaWYKIAog
Y2xhc3MgV2ViUGFnZVByb3h5IDogcHVibGljIEFQSTo6T2JqZWN0SW1wbDxBUEk6Ok9iamVjdDo6
VHlwZTo6UGFnZT4KQEAgLTExMjAsNyArMTEyMCw3IEBAIHB1YmxpYzoKIAogI2lmIFBMQVRGT1JN
KENPQ09BKQogICAgIHZvaWQgcmVxdWVzdEFjdGl2ZU5vd1BsYXlpbmdTZXNzaW9uSW5mbyhSZWY8
Tm93UGxheWluZ0luZm9DYWxsYmFjaz4mJik7Ci0gICAgdm9pZCBub3dQbGF5aW5nSW5mb0NhbGxi
YWNrKGJvb2wsIGNvbnN0IFN0cmluZyYsIGRvdWJsZSwgZG91YmxlLCB1aW50NjRfdCwgQ2FsbGJh
Y2tJRCk7CisgICAgdm9pZCBub3dQbGF5aW5nSW5mb0NhbGxiYWNrKGJvb2wsIGJvb2wsIGNvbnN0
IFN0cmluZyYsIGRvdWJsZSwgZG91YmxlLCB1aW50NjRfdCwgQ2FsbGJhY2tJRCk7CiAjZW5kaWYK
IAogI2lmIEVOQUJMRShNRURJQV9TRVNTSU9OKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluCmluZGV4IDhmZjBhODAxZmU3ZGYwYWE0MzQ5OWRj
Y2EzMmMzOWFmMjEwODIxMTkuLjBjNmJmYzUxMjFjN2M4NWYyODA2N2ZkODhmMTA1MmRiYzIxZGEz
ODkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNz
YWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2Fn
ZXMuaW4KQEAgLTIwMSw3ICsyMDEsNyBAQCBtZXNzYWdlcyAtPiBXZWJQYWdlUHJveHkgewogI2Vu
ZGlmCiAjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgTWFjaFNlbmRSaWdodENhbGxiYWNrKFdlYkNv
cmU6Ok1hY2hTZW5kUmlnaHQgc2VuZFJpZ2h0LCBXZWJLaXQ6OkNhbGxiYWNrSUQgY2FsbGJhY2tJ
RCkKLSAgICBOb3dQbGF5aW5nSW5mb0NhbGxiYWNrKGJvb2wgYWN0aXZlLCBTdHJpbmcgdGl0bGUs
IGRvdWJsZSBkdXJhdGlvbiwgZG91YmxlIGVsYXBzZWRUaW1lLCB1aW50NjRfdCB1bmlxdWVJZGVu
dGlmaWVyLCBXZWJLaXQ6OkNhbGxiYWNrSUQgY2FsbGJhY2tJRCkKKyAgICBOb3dQbGF5aW5nSW5m
b0NhbGxiYWNrKGJvb2wgYWN0aXZlLCBib29sIHJlZ2lzdGVyZWRBc05vd1BsYXlpbmdBcHBsaWNh
dGlvbiwgU3RyaW5nIHRpdGxlLCBkb3VibGUgZHVyYXRpb24sIGRvdWJsZSBlbGFwc2VkVGltZSwg
dWludDY0X3QgdW5pcXVlSWRlbnRpZmllciwgV2ViS2l0OjpDYWxsYmFja0lEIGNhbGxiYWNrSUQp
CiAjZW5kaWYKIAogICAgIFBhZ2VTY2FsZUZhY3RvckRpZENoYW5nZShkb3VibGUgc2NhbGVGYWN0
b3IpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9Db2NvYS9X
ZWJQYWdlQ29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9Db2NvYS9X
ZWJQYWdlQ29jb2EubW0KaW5kZXggNjVjZmNhYjFmZmMzMTdhOGE1MGQ1ZjA1YmNjNzc0ZmMyNWFj
MTBiZS4uYjQ5ZDM1NzQ4MDVlMzEyYTFmNmQ0OWYzMGE3NTNkZTZiMmU5ZTQxYyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvQ29jb2EvV2ViUGFnZUNvY29hLm1t
CisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL0NvY29hL1dlYlBhZ2VDb2Nv
YS5tbQpAQCAtNDgsMTUgKzQ4LDE3IEBAIHZvaWQgV2ViUGFnZTo6cmVxdWVzdEFjdGl2ZU5vd1Bs
YXlpbmdTZXNzaW9uSW5mbyhDYWxsYmFja0lEIGNhbGxiYWNrSUQpCiAgICAgZG91YmxlIGR1cmF0
aW9uID0gTkFOOwogICAgIGRvdWJsZSBlbGFwc2VkVGltZSA9IE5BTjsKICAgICB1aW50NjRfdCB1
bmlxdWVJZGVudGlmaWVyID0gMDsKKyAgICBib29sIHJlZ2lzdGVyZWRBc05vd1BsYXlpbmdBcHBs
aWNhdGlvbiA9IGZhbHNlOwogICAgIGlmIChhdXRvKiBzaGFyZWRNYW5hZ2VyID0gV2ViQ29yZTo6
UGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyOjpzaGFyZWRNYW5hZ2VySWZFeGlzdHMoKSkgewog
ICAgICAgICBoYXNBY3RpdmVTZXNzaW9uID0gc2hhcmVkTWFuYWdlci0+aGFzQWN0aXZlTm93UGxh
eWluZ1Nlc3Npb24oKTsKICAgICAgICAgdGl0bGUgPSBzaGFyZWRNYW5hZ2VyLT5sYXN0VXBkYXRl
ZE5vd1BsYXlpbmdUaXRsZSgpOwogICAgICAgICBkdXJhdGlvbiA9IHNoYXJlZE1hbmFnZXItPmxh
c3RVcGRhdGVkTm93UGxheWluZ0R1cmF0aW9uKCk7CiAgICAgICAgIGVsYXBzZWRUaW1lID0gc2hh
cmVkTWFuYWdlci0+bGFzdFVwZGF0ZWROb3dQbGF5aW5nRWxhcHNlZFRpbWUoKTsKICAgICAgICAg
dW5pcXVlSWRlbnRpZmllciA9IHNoYXJlZE1hbmFnZXItPmxhc3RVcGRhdGVkTm93UGxheWluZ0lu
Zm9VbmlxdWVJZGVudGlmaWVyKCk7CisgICAgICAgIHJlZ2lzdGVyZWRBc05vd1BsYXlpbmdBcHBs
aWNhdGlvbiA9IHNoYXJlZE1hbmFnZXItPnJlZ2lzdGVyZWRBc05vd1BsYXlpbmdBcHBsaWNhdGlv
bigpOwogICAgIH0KIAotICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6Tm93UGxheWlu
Z0luZm9DYWxsYmFjayhoYXNBY3RpdmVTZXNzaW9uLCB0aXRsZSwgZHVyYXRpb24sIGVsYXBzZWRU
aW1lLCB1bmlxdWVJZGVudGlmaWVyLCBjYWxsYmFja0lEKSk7CisgICAgc2VuZChNZXNzYWdlczo6
V2ViUGFnZVByb3h5OjpOb3dQbGF5aW5nSW5mb0NhbGxiYWNrKGhhc0FjdGl2ZVNlc3Npb24sIHJl
Z2lzdGVyZWRBc05vd1BsYXlpbmdBcHBsaWNhdGlvbiwgdGl0bGUsIGR1cmF0aW9uLCBlbGFwc2Vk
VGltZSwgdW5pcXVlSWRlbnRpZmllciwgY2FsbGJhY2tJRCkpOwogfQogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwpp
bmRleCA3MGY5MjBhYTkxN2JlMDY5ZjU2NTNhYWY2Njc1NDAxNTE2NWRhYmE5Li44ZWZjMTgwM2Yz
MzRlMWZiNGFlZDQxNjA3OTEzYjM0ODM5ZGZlYTU4IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VM
b2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTgtMDEtMjEgIEVy
aWMgQ2FybHNvbiAgPGVyaWMuY2FybHNvbkBhcHBsZS5jb20+CisKKyAgICAgICAgUmVzaWduIE5v
d1BsYXlpbmcgc3RhdHVzIHdoZW4gbm8gbWVkaWEgZWxlbWVudCBpcyBlbGlnaWJsZQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgxOTE0CisgICAgICAg
IDxyZGFyOi8vcHJvYmxlbS8zNTI5NDExNj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvTm93
UGxheWluZ0NvbnRyb2xzVGVzdHMubW06CisgICAgICAgICgtW05vd1BsYXlpbmdUZXN0V2ViVmll
dyBoYXNBY3RpdmVOb3dQbGF5aW5nU2Vzc2lvbl0pOgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6
VEVTVCk6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9sYXJnZS12
aWRlby10ZXN0LW5vdy1wbGF5aW5nLmh0bWw6CisKIDIwMTgtMDEtMjEgIEFha2FzaCBKYWluICA8
YWFrYXNoX2phaW5AYXBwbGUuY29tPgogCiAgICAgICAgIEZpeCBicm9rZW4gdW5pdC10ZXN0cyBh
ZnRlciByMjI3MTkyCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktp
dENvY29hL05vd1BsYXlpbmdDb250cm9sc1Rlc3RzLm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJLaXRDb2NvYS9Ob3dQbGF5aW5nQ29udHJvbHNUZXN0cy5tbQppbmRleCBlZDFmNjY4
YjY3MmVlYjIyZTUxZWY5MmY3ZDg2ZmJlZTljNGE3NDdkLi5jNmZkODc2NDdmZTc3ODk4NjViOGE0
YmMyMmZkZDNhYTRjMmZlYzRhIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3Rz
L1dlYktpdENvY29hL05vd1BsYXlpbmdDb250cm9sc1Rlc3RzLm1tCisrKyBiL1Rvb2xzL1Rlc3RX
ZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvTm93UGxheWluZ0NvbnRyb2xzVGVzdHMubW0KQEAg
LTM1LDYgKzM1LDcgQEAKIAogQGludGVyZmFjZSBOb3dQbGF5aW5nVGVzdFdlYlZpZXcgOiBUZXN0
V0tXZWJWaWV3CiBAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIEJPT0wgaGFzQWN0aXZl
Tm93UGxheWluZ1Nlc3Npb247CitAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIEJPT0wg
cmVnaXN0ZXJlZEFzTm93UGxheWluZ0FwcGxpY2F0aW9uOwogQHByb3BlcnR5IChyZWFkb25seSkg
TlNTdHJpbmcgKmxhc3RVcGRhdGVkVGl0bGU7CiBAcHJvcGVydHkgKHJlYWRvbmx5KSBkb3VibGUg
bGFzdFVwZGF0ZWREdXJhdGlvbjsKIEBwcm9wZXJ0eSAocmVhZG9ubHkpIGRvdWJsZSBsYXN0VXBk
YXRlZEVsYXBzZWRUaW1lOwpAQCAtNDQsMTMgKzQ1LDE1IEBACiBAaW1wbGVtZW50YXRpb24gTm93
UGxheWluZ1Rlc3RXZWJWaWV3IHsKICAgICBib29sIF9yZWNlaXZlZE5vd1BsYXlpbmdJbmZvUmVz
cG9uc2U7CiAgICAgQk9PTCBfaGFzQWN0aXZlTm93UGxheWluZ1Nlc3Npb247CisgICAgQk9PTCBf
cmVnaXN0ZXJlZEFzTm93UGxheWluZ0FwcGxpY2F0aW9uOwogfQogLSAoQk9PTCloYXNBY3RpdmVO
b3dQbGF5aW5nU2Vzc2lvbgogewogICAgIF9yZWNlaXZlZE5vd1BsYXlpbmdJbmZvUmVzcG9uc2Ug
PSBmYWxzZTsKIAotICAgIGF1dG8gY29tcGxldGlvbkhhbmRsZXIgPSBbcmV0YWluZWRTZWxmID0g
cmV0YWluUHRyKHNlbGYpLCBzZWxmXShCT09MIGFjdGl2ZSwgTlNTdHJpbmcgKnRpdGxlLCBkb3Vi
bGUgZHVyYXRpb24sIGRvdWJsZSBlbGFwc2VkVGltZSwgTlNJbnRlZ2VyIHVuaXF1ZUlkZW50aWZp
ZXIpIHsKKyAgICBhdXRvIGNvbXBsZXRpb25IYW5kbGVyID0gW3JldGFpbmVkU2VsZiA9IHJldGFp
blB0cihzZWxmKSwgc2VsZl0oQk9PTCBhY3RpdmUsIEJPT0wgcmVnaXN0ZXJlZEFzTm93UGxheWlu
Z0FwcGxpY2F0aW9uLCBOU1N0cmluZyAqdGl0bGUsIGRvdWJsZSBkdXJhdGlvbiwgZG91YmxlIGVs
YXBzZWRUaW1lLCBOU0ludGVnZXIgdW5pcXVlSWRlbnRpZmllcikgewogICAgICAgICBfaGFzQWN0
aXZlTm93UGxheWluZ1Nlc3Npb24gPSBhY3RpdmU7CisgICAgICAgIF9yZWdpc3RlcmVkQXNOb3dQ
bGF5aW5nQXBwbGljYXRpb24gPSByZWdpc3RlcmVkQXNOb3dQbGF5aW5nQXBwbGljYXRpb247CiAg
ICAgICAgIF9sYXN0VXBkYXRlZFRpdGxlID0gW3RpdGxlIGNvcHldOwogICAgICAgICBfbGFzdFVw
ZGF0ZWREdXJhdGlvbiA9IGR1cmF0aW9uOwogICAgICAgICBfbGFzdFVwZGF0ZWRFbGFwc2VkVGlt
ZSA9IGVsYXBzZWRUaW1lOwpAQCAtMTg1LDYgKzE4OCwzMSBAQCBURVNUKE5vd1BsYXlpbmdDb250
cm9sc1Rlc3RzLCBOb3dQbGF5aW5nQ29udHJvbHNDbGVhckluZm9BZnRlclNlc3Npb25Jc05vTG9u
Z2VyVgogICAgIEFTU0VSVF9UUlVFKGlzbmFuKHdlYlZpZXcuZ2V0KCkubGFzdFVwZGF0ZWRFbGFw
c2VkVGltZSkpOwogICAgIEFTU0VSVF9UUlVFKCF3ZWJWaWV3LmdldCgpLmxhc3RVbmlxdWVJZGVu
dGlmaWVyKTsKIH0KKworVEVTVChOb3dQbGF5aW5nQ29udHJvbHNUZXN0cywgTm93UGxheWluZ0Nv
bnRyb2xzQ2hlY2tSZWdpc3RlcmVkKQoreworICAgIFdLV2ViVmlld0NvbmZpZ3VyYXRpb24gKmNv
bmZpZ3VyYXRpb24gPSBbW1dLV2ViVmlld0NvbmZpZ3VyYXRpb24gYWxsb2NdIGluaXRdOworICAg
IGNvbmZpZ3VyYXRpb24ubWVkaWFUeXBlc1JlcXVpcmluZ1VzZXJBY3Rpb25Gb3JQbGF5YmFjayA9
IFdLQXVkaW92aXN1YWxNZWRpYVR5cGVOb25lOworICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMo
W1tOb3dQbGF5aW5nVGVzdFdlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgw
LCAwLCA4MDAsIDYwMCkgY29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CisgICAgW3dlYlZp
ZXcgbG9hZFRlc3RQYWdlTmFtZWQ6QCJsYXJnZS12aWRlby10ZXN0LW5vdy1wbGF5aW5nIl07Cisg
ICAgW3dlYlZpZXcgd2FpdEZvck1lc3NhZ2U6QCJwbGF5aW5nIl07CisgICAgW3dlYlZpZXcgc2V0
V2luZG93VmlzaWJsZTpOT107CisgICAgW3dlYlZpZXcuZ2V0KCkud2luZG93IHJlc2lnbktleVdp
bmRvd107CisKKyAgICBbd2ViVmlldyBleHBlY3RIYXNBY3RpdmVOb3dQbGF5aW5nU2Vzc2lvbjpZ
RVNdOworICAgIEFTU0VSVF9UUlVFKHdlYlZpZXcuZ2V0KCkucmVnaXN0ZXJlZEFzTm93UGxheWlu
Z0FwcGxpY2F0aW9uKTsKKworICAgIFt3ZWJWaWV3IHN0cmluZ0J5RXZhbHVhdGluZ0phdmFTY3Jp
cHQ6QCJwYXVzZSgpIl07CisgICAgW3dlYlZpZXcgd2FpdEZvck1lc3NhZ2U6QCJwYXVzZWQiXTsK
KyAgICBbd2ViVmlldyBleHBlY3RIYXNBY3RpdmVOb3dQbGF5aW5nU2Vzc2lvbjpZRVNdOworICAg
IEFTU0VSVF9UUlVFKHdlYlZpZXcuZ2V0KCkucmVnaXN0ZXJlZEFzTm93UGxheWluZ0FwcGxpY2F0
aW9uKTsKKworICAgIGF1dG8gcmVzdWx0ID0gW3dlYlZpZXcgc3RyaW5nQnlFdmFsdWF0aW5nSmF2
YVNjcmlwdDpAInJlbW92ZVZpZGVvRWxlbWVudCgpIl07CisgICAgQVNTRVJUX1NUUkVRKCI8bnVs
bD4iLCByZXN1bHQuVVRGOFN0cmluZyk7CisgICAgW3dlYlZpZXcgZXhwZWN0SGFzQWN0aXZlTm93
UGxheWluZ1Nlc3Npb246Tk9dOworICAgIEFTU0VSVF9GQUxTRSh3ZWJWaWV3LmdldCgpLnJlZ2lz
dGVyZWRBc05vd1BsYXlpbmdBcHBsaWNhdGlvbik7Cit9CisKICNlbmRpZiAvLyBQTEFURk9STShN
QUMpCiAKICNpZiBQTEFURk9STShJT1MpCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJ
L1Rlc3RzL1dlYktpdENvY29hL2xhcmdlLXZpZGVvLXRlc3Qtbm93LXBsYXlpbmcuaHRtbCBiL1Rv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvbGFyZ2UtdmlkZW8tdGVzdC1ub3ct
cGxheWluZy5odG1sCmluZGV4IDY1N2RiZDczOTUyNzkyODBkYTU5YzliNWViMGNiMWEyMDZlZWI1
N2EuLmQ2Y2YyZGEzZTU1OWMzNWI1M2Q5NTEzNTZkNjMxZWE4M2QwYTE5NjYgMTAwNjQ0Ci0tLSBh
L1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvbGFyZ2UtdmlkZW8tdGVzdC1u
b3ctcGxheWluZy5odG1sCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29j
b2EvbGFyZ2UtdmlkZW8tdGVzdC1ub3ctcGxheWluZy5odG1sCkBAIC04LDYgKzgsMTIgQEAKICAg
ICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICAgfQogCisgICAgICAgIGJ1dHRv
biB7CisgICAgICAgICAgICB0b3A6IDMyMHB4OworICAgICAgICAgICAgbGVmdDogMjBweDsKKyAg
ICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKKyAgICAgICAgfQorCiAgICAgICAgIGJvZHkg
ewogICAgICAgICAgICAgbWFyZ2luOiAwOwogICAgICAgICB9CkBAIC0yNSw5ICszMSwzMCBAQAog
ICAgICAgICBmdW5jdGlvbiBtb3VzZWRvd24oKSB7CiAgICAgICAgICAgICBkb2N1bWVudC5xdWVy
eVNlbGVjdG9yKCJ2aWRlbyIpLm11dGVkID0gdHJ1ZTsKICAgICAgICAgfQorCisgICAgICAgIGZ1
bmN0aW9uIHJlbW92ZVZpZGVvRWxlbWVudCgpIHsKKyAgICAgICAgICAgIGRvY3VtZW50LmJvZHku
cmVtb3ZlQ2hpbGQoZG9jdW1lbnQucXVlcnlTZWxlY3RvcigidmlkZW8iKSk7CisgICAgICAgICAg
ICByZXR1cm4gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigidmlkZW8iKTsKKyAgICAgICAgfQorCisg
ICAgICAgIGZ1bmN0aW9uIHBhdXNlKCkgeworICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxl
Y3RvcigidmlkZW8iKS5wYXVzZSgpOworICAgICAgICB9CisKKyAgICAgICAgZnVuY3Rpb24gc3Rv
cHBlZCgpIHsKKyAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CisgICAgICAgICAg
ICAgICB0cnkgeworICAgICAgICAgICAgICAgICAgICB3aW5kb3cud2Via2l0Lm1lc3NhZ2VIYW5k
bGVycy50ZXN0SGFuZGxlci5wb3N0TWVzc2FnZSgicGF1c2VkIik7CisgICAgICAgICAgICAgICB9
IGNhdGNoKGUpIHsKKyAgICAgICAgICAgICAgICAgICBjb25zb2xlLmRlYnVnKGBlcnJvcjogJHtl
fWApOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICB9LCAwKTsKKyAgICAgICAgfQorCiAg
ICAgPC9zY3JpcHQ+CiA8L2hlYWQ+CiA8Ym9keT4KLSAgICA8dmlkZW8gYXV0b3BsYXkgdGl0bGU9
ImZvbyIgb25tb3VzZWRvd249bW91c2Vkb3duKCkgb25wbGF5aW5nPXBsYXlpbmcoKT48c291cmNl
IHNyYz0ibGFyZ2UtdmlkZW8td2l0aC1hdWRpby5tcDQiPjwvdmlkZW8+CisgICAgPHZpZGVvIGF1
dG9wbGF5IHRpdGxlPSJmb28iIG9ubW91c2Vkb3duPW1vdXNlZG93bigpIG9ucGxheWluZz1wbGF5
aW5nKCkgb25wYXVzZT1zdG9wcGVkKCk+PHNvdXJjZSBzcmM9ImxhcmdlLXZpZGVvLXdpdGgtYXVk
aW8ubXA0Ij48L3ZpZGVvPgorICAgIDxidXR0b24gb25jbGljaz0iY29uc29sZS5sb2cocmVtb3Zl
VmlkZW9FbGVtZW50KCkpIj5TdG9wITwvYnV0dG9uPgogPC9ib2R5PgogPGh0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>331963</attachid>
            <date>2018-01-22 14:09:04 -0800</date>
            <delta_ts>2018-01-22 16:38:43 -0800</delta_ts>
            <desc>Fix crashing tests.</desc>
            <filename>now_playing_test_crash_patch_2.txt</filename>
            <type>text/plain</type>
            <size>5298</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA2NmI1OTFhMjkxYS4uYzliYTUzODc1OWMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMyBAQAorMjAxOC0wMS0yMiAgRXJpYyBDYXJsc29uICA8ZXJpYy5jYXJsc29uQGFwcGxl
LmNvbT4KKworICAgICAgICBSZXNpZ24gTm93UGxheWluZyBzdGF0dXMgd2hlbiBubyBtZWRpYSBl
bGVtZW50IGlzIGVsaWdpYmxlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xODE5MTQKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzM1Mjk0MTE2PgorCisg
ICAgICAgIFJldmlld2VkIGJ5IEplciBOb2JsZS4KKworICAgICAgICBObyBuZXcgdGVzdHMsIHRo
ZXNlIGNoYW5nZXMgcHJldmVudCBleGlzdGluZyB0ZXN0cyBmcm9tIGNyYXNoaW5nLgorCisgICAg
ICAgICogaHRtbC9IVE1MTWVkaWFFbGVtZW50Lmg6CisgICAgICAgICogaHRtbC9NZWRpYUVsZW1l
bnRTZXNzaW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhRWxlbWVudFNlc3Npb246OnBs
YXliYWNrUGVybWl0dGVkIGNvbnN0KTogUmV0dXJuIGVhcmx5IHdoZW4gdGhlIG1lZGlhIAorICAg
ICAgICBlbGVtZW50IGhhcyBiZWVuIHN1c3BlbmRlZC4KKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlh
RWxlbWVudFNlc3Npb246OmNhblNob3dDb250cm9sc01hbmFnZXIgY29uc3QpOiBSZXR1cm4gZmFs
c2Ugd2hlbiB0aGUKKyAgICAgICAgbWVkaWEgZWxlbWVudCBoYXMgYmVlbiBzdXNwZW5kZWQuCisg
ICAgICAgIChXZWJDb3JlOjppc01haW5Db250ZW50Rm9yUHVycG9zZXNPZkF1dG9wbGF5KTogUmV0
dXJuIGVhcmx5IGlmIGl0IGlzbid0IHNhZmUgdG8gdXBkYXRlCisgICAgICAgIHN0eWxlIGJlY2F1
c2UgSGl0VGVzdCBjYW4gZm9yY2UgYSBsYXlvdXQuCisgICAgICAgIChXZWJDb3JlOjpNZWRpYUVs
ZW1lbnRTZXNzaW9uOjp1cGRhdGVJc01haW5Db250ZW50IGNvbnN0KTogRGl0dG8uCisKIDIwMTgt
MDEtMjIgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBSRUxFQVNF
X0FTU0VSVChyZWdpc3RyYXRpb24pIGhpdCBpbiBTV1NlcnZlcjo6aW5zdGFsbENvbnRleHREYXRh
KGNvbnN0IFNlcnZpY2VXb3JrZXJDb250ZXh0RGF0YSYpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1l
ZGlhRWxlbWVudC5oCmluZGV4IGViZGZjNGZlYzliLi4xMTNlOThjMDE1ZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgKQEAgLTU1MSw2ICs1NTEsOCBAQCBwdWJsaWM6CiAK
ICAgICBib29sIHdpbGxMb2coV1RGTG9nTGV2ZWwpIGNvbnN0OwogCisgICAgYm9vbCBpc1N1c3Bl
bmRlZCgpIGNvbnN0IGZpbmFsOworCiBwcm90ZWN0ZWQ6CiAgICAgSFRNTE1lZGlhRWxlbWVudChj
b25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQmLCBib29sIGNyZWF0ZWRCeVBhcnNlcik7CiAg
ICAgdmlydHVhbCB2b2lkIGZpbmlzaEluaXRpYWxpemF0aW9uKCk7CkBAIC04NjQsNyArODY2LDYg
QEAgcHJpdmF0ZToKICAgICBib29sIHNob3VsZE92ZXJyaWRlQmFja2dyb3VuZExvYWRpbmdSZXN0
cmljdGlvbigpIGNvbnN0IG92ZXJyaWRlOwogICAgIGJvb2wgY2FuUHJvZHVjZUF1ZGlvKCkgY29u
c3QgZmluYWw7CiAgICAgYm9vbCBwcm9jZXNzaW5nVXNlckdlc3R1cmVGb3JNZWRpYSgpIGNvbnN0
IGZpbmFsOwotICAgIGJvb2wgaXNTdXNwZW5kZWQoKSBjb25zdCBmaW5hbDsKIAogICAgIHZvaWQg
cGFnZU11dGVkU3RhdGVEaWRDaGFuZ2UoKSBvdmVycmlkZTsKIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaHRtbC9NZWRpYUVsZW1lbnRTZXNzaW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvTWVkaWFFbGVtZW50U2Vzc2lvbi5jcHAKaW5kZXggNWQyOGFmZGUzYTMuLjZjNDc4YWU2ZDFm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL01lZGlhRWxlbWVudFNlc3Npb24uY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvTWVkaWFFbGVtZW50U2Vzc2lvbi5jcHAKQEAgLTE2
Miw2ICsxNjIsOSBAQCBzdGF0aWMgYm9vbCBuZWVkc0FyYml0cmFyeVVzZXJHZXN0dXJlQXV0b3Bs
YXlRdWlyayhjb25zdCBEb2N1bWVudCYgZG9jdW1lbnQpCiAKIFN1Y2Nlc3NPcjxNZWRpYVBsYXli
YWNrRGVuaWFsUmVhc29uPiBNZWRpYUVsZW1lbnRTZXNzaW9uOjpwbGF5YmFja1Blcm1pdHRlZChj
b25zdCBIVE1MTWVkaWFFbGVtZW50JiBlbGVtZW50KSBjb25zdAogeworICAgIGlmIChtX2VsZW1l
bnQuaXNTdXNwZW5kZWQoKSkKKyAgICAgICAgcmV0dXJuIHsgfTsKKwogICAgIGlmIChlbGVtZW50
LmRvY3VtZW50KCkuaXNNZWRpYURvY3VtZW50KCkgJiYgIWVsZW1lbnQuZG9jdW1lbnQoKS5vd25l
ckVsZW1lbnQoKSkKICAgICAgICAgcmV0dXJuIHsgfTsKIApAQCAtMjk1LDYgKzI5OCwxMSBAQCBi
b29sIE1lZGlhRWxlbWVudFNlc3Npb246OnBhZ2VBbGxvd3NQbGF5YmFja0FmdGVyUmVzdW1pbmco
Y29uc3QgSFRNTE1lZGlhRWxlbWVudAogCiBib29sIE1lZGlhRWxlbWVudFNlc3Npb246OmNhblNo
b3dDb250cm9sc01hbmFnZXIoUGxheWJhY2tDb250cm9sc1B1cnBvc2UgcHVycG9zZSkgY29uc3QK
IHsKKyAgICBpZiAobV9lbGVtZW50LmlzU3VzcGVuZGVkKCkpIHsKKyAgICAgICAgTE9HKE1lZGlh
LCAiTWVkaWFFbGVtZW50U2Vzc2lvbjo6Y2FuU2hvd0NvbnRyb2xzTWFuYWdlciAtIHJldHVybmlu
ZyBGQUxTRTogaXNTdXNwZW5kZWQoKSIpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQor
CiAgICAgaWYgKG1fZWxlbWVudC5pc0Z1bGxzY3JlZW4oKSkgewogICAgICAgICBMT0coTWVkaWEs
ICJNZWRpYUVsZW1lbnRTZXNzaW9uOjpjYW5TaG93Q29udHJvbHNNYW5hZ2VyIC0gcmV0dXJuaW5n
IFRSVUU6IElzIGZ1bGxzY3JlZW4iKTsKICAgICAgICAgcmV0dXJuIHRydWU7CkBAIC0zMzUsMTEg
KzM0Myw2IEBAIGJvb2wgTWVkaWFFbGVtZW50U2Vzc2lvbjo6Y2FuU2hvd0NvbnRyb2xzTWFuYWdl
cihQbGF5YmFja0NvbnRyb2xzUHVycG9zZSBwdXJwb3NlCiAgICAgICAgIHJldHVybiBmYWxzZTsK
ICAgICB9CiAKLSAgICBpZiAobV9lbGVtZW50LmRvY3VtZW50KCkuYWN0aXZlRE9NT2JqZWN0c0Fy
ZVN1c3BlbmRlZCgpKSB7Ci0gICAgICAgIExPRyhNZWRpYSwgIk1lZGlhRWxlbWVudFNlc3Npb246
OmNhblNob3dDb250cm9sc01hbmFnZXIgLSByZXR1cm5pbmcgRkFMU0U6IGFjdGl2ZURPTU9iamVj
dHNBcmVTdXNwZW5kZWQoKSIpOwotICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgfQotCiAgICAg
aWYgKCFwbGF5YmFja1Blcm1pdHRlZChtX2VsZW1lbnQpKSB7CiAgICAgICAgIExPRyhNZWRpYSwg
Ik1lZGlhRWxlbWVudFNlc3Npb246OmNhblNob3dDb250cm9sc01hbmFnZXIgLSByZXR1cm5pbmcg
RkFMU0U6IFBsYXliYWNrIG5vdCBwZXJtaXR0ZWQiKTsKICAgICAgICAgcmV0dXJuIGZhbHNlOwpA
QCAtMzc5LDExICszODIsNiBAQCBib29sIE1lZGlhRWxlbWVudFNlc3Npb246OmNhblNob3dDb250
cm9sc01hbmFnZXIoUGxheWJhY2tDb250cm9sc1B1cnBvc2UgcHVycG9zZQogICAgIH0KIAogICAg
IGlmIChwdXJwb3NlID09IFBsYXliYWNrQ29udHJvbHNQdXJwb3NlOjpOb3dQbGF5aW5nKSB7Ci0g
ICAgICAgIGlmICghbV9lbGVtZW50LmluQWN0aXZlRG9jdW1lbnQoKSkgewotICAgICAgICAgICAg
TE9HKE1lZGlhLCAiTWVkaWFFbGVtZW50U2Vzc2lvbjo6Y2FuU2hvd0NvbnRyb2xzTWFuYWdlciAt
IHJldHVybmluZyBGQUxTRTogTm90IGluIGFjdGl2ZSBkb2N1bWVudCIpOwotICAgICAgICAgICAg
cmV0dXJuIGZhbHNlOwotICAgICAgICB9Ci0KICAgICAgICAgTE9HKE1lZGlhLCAiTWVkaWFFbGVt
ZW50U2Vzc2lvbjo6Y2FuU2hvd0NvbnRyb2xzTWFuYWdlciAtIHJldHVybmluZyBUUlVFOiBQb3Rl
bnRpYWxseSBwbGF5cyBhdWRpbyIpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CkBAIC02
OTYsNyArNjk0LDggQEAgc2l6ZV90IE1lZGlhRWxlbWVudFNlc3Npb246Om1heGltdW1NZWRpYVNv
dXJjZUJ1ZmZlclNpemUoY29uc3QgU291cmNlQnVmZmVyJiBidWYKIAogc3RhdGljIGJvb2wgaXNN
YWluQ29udGVudEZvclB1cnBvc2VzT2ZBdXRvcGxheShjb25zdCBIVE1MTWVkaWFFbGVtZW50JiBl
bGVtZW50KQogewotICAgIGlmICghZWxlbWVudC5oYXNBdWRpbygpIHx8ICFlbGVtZW50Lmhhc1Zp
ZGVvKCkpCisgICAgRG9jdW1lbnQmIGRvY3VtZW50ID0gZWxlbWVudC5kb2N1bWVudCgpOworICAg
IGlmICghZG9jdW1lbnQuaXNTYWZlVG9VcGRhdGVTdHlsZU9yTGF5b3V0KCkgfHwgIWVsZW1lbnQu
aGFzQXVkaW8oKSB8fCAhZWxlbWVudC5oYXNWaWRlbygpKQogICAgICAgICByZXR1cm4gZmFsc2U7
CiAKICAgICAvLyBFbGVtZW50cyB3aGljaCBoYXZlIG5vdCB5ZXQgYmVlbiBsYWlkIG91dCwgb3Ig
d2hpY2ggYXJlIG5vdCB5ZXQgaW4gdGhlIERPTSwgY2Fubm90IGJlIG1haW4gY29udGVudC4KQEAg
LTcxNiw3ICs3MTUsNiBAQCBzdGF0aWMgYm9vbCBpc01haW5Db250ZW50Rm9yUHVycG9zZXNPZkF1
dG9wbGF5KGNvbnN0IEhUTUxNZWRpYUVsZW1lbnQmIGVsZW1lbnQpCiAgICAgICAgIHJldHVybiBm
YWxzZTsKIAogICAgIC8vIE1haW4gY29udGVudCBlbGVtZW50cyBtdXN0IGJlIGluIHRoZSBtYWlu
IGZyYW1lLgotICAgIERvY3VtZW50JiBkb2N1bWVudCA9IGVsZW1lbnQuZG9jdW1lbnQoKTsKICAg
ICBpZiAoIWRvY3VtZW50LmZyYW1lKCkgfHwgIWRvY3VtZW50LmZyYW1lKCktPmlzTWFpbkZyYW1l
KCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIApAQCAtODIzLDYgKzgyMSw5IEBAIHZvaWQgTWVk
aWFFbGVtZW50U2Vzc2lvbjo6bWFpbkNvbnRlbnRDaGVja1RpbWVyRmlyZWQoKQogCiBib29sIE1l
ZGlhRWxlbWVudFNlc3Npb246OnVwZGF0ZUlzTWFpbkNvbnRlbnQoKSBjb25zdAogeworICAgIGlm
IChtX2VsZW1lbnQuaXNTdXNwZW5kZWQoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCiAgICAg
Ym9vbCB3YXNNYWluQ29udGVudCA9IG1faXNNYWluQ29udGVudDsKICAgICBtX2lzTWFpbkNvbnRl
bnQgPSBpc01haW5Db250ZW50Rm9yUHVycG9zZXNPZkF1dG9wbGF5KG1fZWxlbWVudCk7CiAK
</data>
<flag name="commit-queue"
          id="350952"
          type_id="3"
          status="+"
          setter="ryanhaddad"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>331977</attachid>
            <date>2018-01-22 16:39:19 -0800</date>
            <delta_ts>2018-01-23 14:19:50 -0800</delta_ts>
            <desc>Patch to fix test crashes</desc>
            <filename>now_playing_test_crash_patch_2.txt</filename>
            <type>text/plain</type>
            <size>5298</size>
            <attacher name="Ryan Haddad">ryanhaddad</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA2NmI1OTFhMjkxYS4uYzliYTUzODc1OWMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMyBAQAorMjAxOC0wMS0yMiAgRXJpYyBDYXJsc29uICA8ZXJpYy5jYXJsc29uQGFwcGxl
LmNvbT4KKworICAgICAgICBSZXNpZ24gTm93UGxheWluZyBzdGF0dXMgd2hlbiBubyBtZWRpYSBl
bGVtZW50IGlzIGVsaWdpYmxlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xODE5MTQKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzM1Mjk0MTE2PgorCisg
ICAgICAgIFJldmlld2VkIGJ5IEplciBOb2JsZS4KKworICAgICAgICBObyBuZXcgdGVzdHMsIHRo
ZXNlIGNoYW5nZXMgcHJldmVudCBleGlzdGluZyB0ZXN0cyBmcm9tIGNyYXNoaW5nLgorCisgICAg
ICAgICogaHRtbC9IVE1MTWVkaWFFbGVtZW50Lmg6CisgICAgICAgICogaHRtbC9NZWRpYUVsZW1l
bnRTZXNzaW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhRWxlbWVudFNlc3Npb246OnBs
YXliYWNrUGVybWl0dGVkIGNvbnN0KTogUmV0dXJuIGVhcmx5IHdoZW4gdGhlIG1lZGlhIAorICAg
ICAgICBlbGVtZW50IGhhcyBiZWVuIHN1c3BlbmRlZC4KKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlh
RWxlbWVudFNlc3Npb246OmNhblNob3dDb250cm9sc01hbmFnZXIgY29uc3QpOiBSZXR1cm4gZmFs
c2Ugd2hlbiB0aGUKKyAgICAgICAgbWVkaWEgZWxlbWVudCBoYXMgYmVlbiBzdXNwZW5kZWQuCisg
ICAgICAgIChXZWJDb3JlOjppc01haW5Db250ZW50Rm9yUHVycG9zZXNPZkF1dG9wbGF5KTogUmV0
dXJuIGVhcmx5IGlmIGl0IGlzbid0IHNhZmUgdG8gdXBkYXRlCisgICAgICAgIHN0eWxlIGJlY2F1
c2UgSGl0VGVzdCBjYW4gZm9yY2UgYSBsYXlvdXQuCisgICAgICAgIChXZWJDb3JlOjpNZWRpYUVs
ZW1lbnRTZXNzaW9uOjp1cGRhdGVJc01haW5Db250ZW50IGNvbnN0KTogRGl0dG8uCisKIDIwMTgt
MDEtMjIgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBSRUxFQVNF
X0FTU0VSVChyZWdpc3RyYXRpb24pIGhpdCBpbiBTV1NlcnZlcjo6aW5zdGFsbENvbnRleHREYXRh
KGNvbnN0IFNlcnZpY2VXb3JrZXJDb250ZXh0RGF0YSYpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1l
ZGlhRWxlbWVudC5oCmluZGV4IGViZGZjNGZlYzliLi4xMTNlOThjMDE1ZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgKQEAgLTU1MSw2ICs1NTEsOCBAQCBwdWJsaWM6CiAK
ICAgICBib29sIHdpbGxMb2coV1RGTG9nTGV2ZWwpIGNvbnN0OwogCisgICAgYm9vbCBpc1N1c3Bl
bmRlZCgpIGNvbnN0IGZpbmFsOworCiBwcm90ZWN0ZWQ6CiAgICAgSFRNTE1lZGlhRWxlbWVudChj
b25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQmLCBib29sIGNyZWF0ZWRCeVBhcnNlcik7CiAg
ICAgdmlydHVhbCB2b2lkIGZpbmlzaEluaXRpYWxpemF0aW9uKCk7CkBAIC04NjQsNyArODY2LDYg
QEAgcHJpdmF0ZToKICAgICBib29sIHNob3VsZE92ZXJyaWRlQmFja2dyb3VuZExvYWRpbmdSZXN0
cmljdGlvbigpIGNvbnN0IG92ZXJyaWRlOwogICAgIGJvb2wgY2FuUHJvZHVjZUF1ZGlvKCkgY29u
c3QgZmluYWw7CiAgICAgYm9vbCBwcm9jZXNzaW5nVXNlckdlc3R1cmVGb3JNZWRpYSgpIGNvbnN0
IGZpbmFsOwotICAgIGJvb2wgaXNTdXNwZW5kZWQoKSBjb25zdCBmaW5hbDsKIAogICAgIHZvaWQg
cGFnZU11dGVkU3RhdGVEaWRDaGFuZ2UoKSBvdmVycmlkZTsKIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaHRtbC9NZWRpYUVsZW1lbnRTZXNzaW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvTWVkaWFFbGVtZW50U2Vzc2lvbi5jcHAKaW5kZXggNWQyOGFmZGUzYTMuLjZjNDc4YWU2ZDFm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL01lZGlhRWxlbWVudFNlc3Npb24uY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvTWVkaWFFbGVtZW50U2Vzc2lvbi5jcHAKQEAgLTE2
Miw2ICsxNjIsOSBAQCBzdGF0aWMgYm9vbCBuZWVkc0FyYml0cmFyeVVzZXJHZXN0dXJlQXV0b3Bs
YXlRdWlyayhjb25zdCBEb2N1bWVudCYgZG9jdW1lbnQpCiAKIFN1Y2Nlc3NPcjxNZWRpYVBsYXli
YWNrRGVuaWFsUmVhc29uPiBNZWRpYUVsZW1lbnRTZXNzaW9uOjpwbGF5YmFja1Blcm1pdHRlZChj
b25zdCBIVE1MTWVkaWFFbGVtZW50JiBlbGVtZW50KSBjb25zdAogeworICAgIGlmIChtX2VsZW1l
bnQuaXNTdXNwZW5kZWQoKSkKKyAgICAgICAgcmV0dXJuIHsgfTsKKwogICAgIGlmIChlbGVtZW50
LmRvY3VtZW50KCkuaXNNZWRpYURvY3VtZW50KCkgJiYgIWVsZW1lbnQuZG9jdW1lbnQoKS5vd25l
ckVsZW1lbnQoKSkKICAgICAgICAgcmV0dXJuIHsgfTsKIApAQCAtMjk1LDYgKzI5OCwxMSBAQCBi
b29sIE1lZGlhRWxlbWVudFNlc3Npb246OnBhZ2VBbGxvd3NQbGF5YmFja0FmdGVyUmVzdW1pbmco
Y29uc3QgSFRNTE1lZGlhRWxlbWVudAogCiBib29sIE1lZGlhRWxlbWVudFNlc3Npb246OmNhblNo
b3dDb250cm9sc01hbmFnZXIoUGxheWJhY2tDb250cm9sc1B1cnBvc2UgcHVycG9zZSkgY29uc3QK
IHsKKyAgICBpZiAobV9lbGVtZW50LmlzU3VzcGVuZGVkKCkpIHsKKyAgICAgICAgTE9HKE1lZGlh
LCAiTWVkaWFFbGVtZW50U2Vzc2lvbjo6Y2FuU2hvd0NvbnRyb2xzTWFuYWdlciAtIHJldHVybmlu
ZyBGQUxTRTogaXNTdXNwZW5kZWQoKSIpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQor
CiAgICAgaWYgKG1fZWxlbWVudC5pc0Z1bGxzY3JlZW4oKSkgewogICAgICAgICBMT0coTWVkaWEs
ICJNZWRpYUVsZW1lbnRTZXNzaW9uOjpjYW5TaG93Q29udHJvbHNNYW5hZ2VyIC0gcmV0dXJuaW5n
IFRSVUU6IElzIGZ1bGxzY3JlZW4iKTsKICAgICAgICAgcmV0dXJuIHRydWU7CkBAIC0zMzUsMTEg
KzM0Myw2IEBAIGJvb2wgTWVkaWFFbGVtZW50U2Vzc2lvbjo6Y2FuU2hvd0NvbnRyb2xzTWFuYWdl
cihQbGF5YmFja0NvbnRyb2xzUHVycG9zZSBwdXJwb3NlCiAgICAgICAgIHJldHVybiBmYWxzZTsK
ICAgICB9CiAKLSAgICBpZiAobV9lbGVtZW50LmRvY3VtZW50KCkuYWN0aXZlRE9NT2JqZWN0c0Fy
ZVN1c3BlbmRlZCgpKSB7Ci0gICAgICAgIExPRyhNZWRpYSwgIk1lZGlhRWxlbWVudFNlc3Npb246
OmNhblNob3dDb250cm9sc01hbmFnZXIgLSByZXR1cm5pbmcgRkFMU0U6IGFjdGl2ZURPTU9iamVj
dHNBcmVTdXNwZW5kZWQoKSIpOwotICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgfQotCiAgICAg
aWYgKCFwbGF5YmFja1Blcm1pdHRlZChtX2VsZW1lbnQpKSB7CiAgICAgICAgIExPRyhNZWRpYSwg
Ik1lZGlhRWxlbWVudFNlc3Npb246OmNhblNob3dDb250cm9sc01hbmFnZXIgLSByZXR1cm5pbmcg
RkFMU0U6IFBsYXliYWNrIG5vdCBwZXJtaXR0ZWQiKTsKICAgICAgICAgcmV0dXJuIGZhbHNlOwpA
QCAtMzc5LDExICszODIsNiBAQCBib29sIE1lZGlhRWxlbWVudFNlc3Npb246OmNhblNob3dDb250
cm9sc01hbmFnZXIoUGxheWJhY2tDb250cm9sc1B1cnBvc2UgcHVycG9zZQogICAgIH0KIAogICAg
IGlmIChwdXJwb3NlID09IFBsYXliYWNrQ29udHJvbHNQdXJwb3NlOjpOb3dQbGF5aW5nKSB7Ci0g
ICAgICAgIGlmICghbV9lbGVtZW50LmluQWN0aXZlRG9jdW1lbnQoKSkgewotICAgICAgICAgICAg
TE9HKE1lZGlhLCAiTWVkaWFFbGVtZW50U2Vzc2lvbjo6Y2FuU2hvd0NvbnRyb2xzTWFuYWdlciAt
IHJldHVybmluZyBGQUxTRTogTm90IGluIGFjdGl2ZSBkb2N1bWVudCIpOwotICAgICAgICAgICAg
cmV0dXJuIGZhbHNlOwotICAgICAgICB9Ci0KICAgICAgICAgTE9HKE1lZGlhLCAiTWVkaWFFbGVt
ZW50U2Vzc2lvbjo6Y2FuU2hvd0NvbnRyb2xzTWFuYWdlciAtIHJldHVybmluZyBUUlVFOiBQb3Rl
bnRpYWxseSBwbGF5cyBhdWRpbyIpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CkBAIC02
OTYsNyArNjk0LDggQEAgc2l6ZV90IE1lZGlhRWxlbWVudFNlc3Npb246Om1heGltdW1NZWRpYVNv
dXJjZUJ1ZmZlclNpemUoY29uc3QgU291cmNlQnVmZmVyJiBidWYKIAogc3RhdGljIGJvb2wgaXNN
YWluQ29udGVudEZvclB1cnBvc2VzT2ZBdXRvcGxheShjb25zdCBIVE1MTWVkaWFFbGVtZW50JiBl
bGVtZW50KQogewotICAgIGlmICghZWxlbWVudC5oYXNBdWRpbygpIHx8ICFlbGVtZW50Lmhhc1Zp
ZGVvKCkpCisgICAgRG9jdW1lbnQmIGRvY3VtZW50ID0gZWxlbWVudC5kb2N1bWVudCgpOworICAg
IGlmICghZG9jdW1lbnQuaXNTYWZlVG9VcGRhdGVTdHlsZU9yTGF5b3V0KCkgfHwgIWVsZW1lbnQu
aGFzQXVkaW8oKSB8fCAhZWxlbWVudC5oYXNWaWRlbygpKQogICAgICAgICByZXR1cm4gZmFsc2U7
CiAKICAgICAvLyBFbGVtZW50cyB3aGljaCBoYXZlIG5vdCB5ZXQgYmVlbiBsYWlkIG91dCwgb3Ig
d2hpY2ggYXJlIG5vdCB5ZXQgaW4gdGhlIERPTSwgY2Fubm90IGJlIG1haW4gY29udGVudC4KQEAg
LTcxNiw3ICs3MTUsNiBAQCBzdGF0aWMgYm9vbCBpc01haW5Db250ZW50Rm9yUHVycG9zZXNPZkF1
dG9wbGF5KGNvbnN0IEhUTUxNZWRpYUVsZW1lbnQmIGVsZW1lbnQpCiAgICAgICAgIHJldHVybiBm
YWxzZTsKIAogICAgIC8vIE1haW4gY29udGVudCBlbGVtZW50cyBtdXN0IGJlIGluIHRoZSBtYWlu
IGZyYW1lLgotICAgIERvY3VtZW50JiBkb2N1bWVudCA9IGVsZW1lbnQuZG9jdW1lbnQoKTsKICAg
ICBpZiAoIWRvY3VtZW50LmZyYW1lKCkgfHwgIWRvY3VtZW50LmZyYW1lKCktPmlzTWFpbkZyYW1l
KCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIApAQCAtODIzLDYgKzgyMSw5IEBAIHZvaWQgTWVk
aWFFbGVtZW50U2Vzc2lvbjo6bWFpbkNvbnRlbnRDaGVja1RpbWVyRmlyZWQoKQogCiBib29sIE1l
ZGlhRWxlbWVudFNlc3Npb246OnVwZGF0ZUlzTWFpbkNvbnRlbnQoKSBjb25zdAogeworICAgIGlm
IChtX2VsZW1lbnQuaXNTdXNwZW5kZWQoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCiAgICAg
Ym9vbCB3YXNNYWluQ29udGVudCA9IG1faXNNYWluQ29udGVudDsKICAgICBtX2lzTWFpbkNvbnRl
bnQgPSBpc01haW5Db250ZW50Rm9yUHVycG9zZXNPZkF1dG9wbGF5KG1fZWxlbWVudCk7CiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>332073</attachid>
            <date>2018-01-23 14:19:53 -0800</date>
            <delta_ts>2018-01-23 15:34:12 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-181914-20180123141951.patch</filename>
            <type>text/plain</type>
            <size>26858</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI3NDQyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjZmM2ZhZmI0YjQ5NTZm
ZTI2Y2RiMjk0ZGI1NzFlZjM3ZThjYjUzZi4uOGExNjE1MWUwNzdhMTcxYmFhOTQ1NTk2OTRmYjZl
MDg3MzY2OTI1ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM5IEBACisyMDE4LTAxLTIzICBFcmlj
IENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFJlc2lnbiBOb3dQ
bGF5aW5nIHN0YXR1cyB3aGVuIG5vIG1lZGlhIGVsZW1lbnQgaXMgZWxpZ2libGUKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTkxNAorICAgICAgICA8
cmRhcjovL3Byb2JsZW0vMzUyOTQxMTY+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgSmVyIE5vYmxl
LgorCisgICAgICAgIFVwZGF0ZWQgQVBJIHRlc3QuCisKKyAgICAgICAgKiBodG1sL0hUTUxNZWRp
YUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6cmVtb3Zl
ZEZyb21BbmNlc3Rvcik6IENhbGwgbWVkaWFTZXNzaW9uLT5jbGllbnRDaGFyYWN0ZXJpc3RpY3ND
aGFuZ2VkCisgICAgICAgIHNvIE5vd1BsYXlpbmcgc3RhdHVzIHdpbGwgYmUgdXBkYXRlZC4KKwor
ICAgICAgICAqIGh0bWwvTWVkaWFFbGVtZW50U2Vzc2lvbi5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpNZWRpYUVsZW1lbnRTZXNzaW9uOjpwbGF5YmFja1Blcm1pdHRlZCBjb25zdCk6IFJldHVybiBl
YXJseSB3aGVuIHRoZSBtZWRpYSAKKyAgICAgICAgZWxlbWVudCBoYXMgYmVlbiBzdXNwZW5kZWQu
CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUVsZW1lbnRTZXNzaW9uOjpjYW5TaG93Q29udHJvbHNN
YW5hZ2VyIGNvbnN0KTogUmV0dXJuIGZhbHNlIHdoZW4gYmVpbmcgcXVlcmllZAorICAgICAgICBm
b3IgTm93UGxheWluZyBzdGF0dXMgaW4gYW4gaW5hY3RpdmUgZG9jdW1lbnQgb3Igd2hlbiBlbGVt
ZW50IGhhcyBiZWVuIHN1c3BlbmRlZC4KKyAgICAgICAgKFdlYkNvcmU6OmlzTWFpbkNvbnRlbnRG
b3JQdXJwb3Nlc09mQXV0b3BsYXkpOiBSZXR1cm4gZWFybHkgaWYgaXQgaXNuJ3Qgc2FmZSB0byB1
cGRhdGUKKyAgICAgICAgc3R5bGUgYmVjYXVzZSBIaXRUZXN0IGNhbiBmb3JjZSBhIGxheW91dC4K
KyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhRWxlbWVudFNlc3Npb246OnVwZGF0ZUlzTWFpbkNvbnRl
bnQgY29uc3QpOiBEaXR0by4KKworICAgICAgICAqIHBsYXRmb3JtL2F1ZGlvL1BsYXRmb3JtTWVk
aWFTZXNzaW9uTWFuYWdlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQbGF0Zm9ybU1lZGlhU2Vz
c2lvbk1hbmFnZXI6OnVwZGF0ZU5vd1BsYXlpbmdJbmZvSWZOZWNlc3NhcnkpOiBJbXBsZW1lbnQg
aW4gZm9yIGFsbAorICAgICAgICBwb3J0cy4KKyAgICAgICAgKiBwbGF0Zm9ybS9hdWRpby9QbGF0
Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXIuaDoKKyAgICAgICAgKFdlYkNvcmU6OlBsYXRmb3JtTWVk
aWFTZXNzaW9uTWFuYWdlcjo6cmVnaXN0ZXJlZEFzTm93UGxheWluZ0FwcGxpY2F0aW9uIGNvbnN0
KToKKyAgICAgICAgKiBwbGF0Zm9ybS9hdWRpby9pb3MvTWVkaWFTZXNzaW9uTWFuYWdlcklPUy5o
OgorICAgICAgICAqIHBsYXRmb3JtL2F1ZGlvL21hYy9NZWRpYVNlc3Npb25NYW5hZ2VyTWFjLmg6
CisgICAgICAgICogcGxhdGZvcm0vYXVkaW8vbWFjL01lZGlhU2Vzc2lvbk1hbmFnZXJNYWMubW06
CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVNlc3Npb25NYW5hZ2VyTWFjOjp1cGRhdGVOb3dQbGF5
aW5nSW5mbyk6IENhbGwgTVJNZWRpYVJlbW90ZVNldENhbkJlTm93UGxheWluZ0FwcGxpY2F0aW9u
CisgICAgICAgIHdoZW5ldmVyIHN0YXR1cyBjaGFuZ2VzLgorICAgICAgICAoV2ViQ29yZTo6UGxh
dGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyOjp1cGRhdGVOb3dQbGF5aW5nSW5mb0lmTmVjZXNzYXJ5
KTogRGVsZXRlZCwgaW1wbGVtZW50ZWQKKyAgICAgICAgaW4gdGhlIGJhc2UgY2xhc3MuCisKIDIw
MTgtMDEtMjMgIENvbW1pdCBRdWV1ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJraXQub3JnPgogCiAgICAg
ICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIyMjc0MzcuCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGRiYjA2MzJl
NjI3MjlkNDJkZGRiNjExMzIxMGI0ZjEzNjBhYzdmZTQuLjc3ZWQyYjk0ZTM4YjBkMDVlZTBjZWQx
YjczNTA3Njc3ZTQ5Nzc1MDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisr
KyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTgtMDEtMjMg
IEVyaWMgQ2FybHNvbiAgPGVyaWMuY2FybHNvbkBhcHBsZS5jb20+CisKKyAgICAgICAgUmVzaWdu
IE5vd1BsYXlpbmcgc3RhdHVzIHdoZW4gbm8gbWVkaWEgZWxlbWVudCBpcyBlbGlnaWJsZQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgxOTE0CisgICAg
ICAgIDxyZGFyOi8vcHJvYmxlbS8zNTI5NDExNj4KKworICAgICAgICBSZXZpZXdlZCBieSBKZXIg
Tm9ibGUuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbToKKyAg
ICAgICAgKC1bV0tXZWJWaWV3IF9yZXF1ZXN0QWN0aXZlTm93UGxheWluZ1Nlc3Npb25JbmZvOl0p
OiBSZXR1cm4gcmVnaXN0ZXJlZEFzTm93UGxheWluZ0FwcGxpY2F0aW9uCisgICAgICAgIHN0YXR1
cy4KKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld1ByaXZhdGUuaDoKKwor
ICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpX
ZWJQYWdlUHJveHk6Om5vd1BsYXlpbmdJbmZvQ2FsbGJhY2spOiBEaXR0by4KKyAgICAgICAgKiBV
SVByb2Nlc3MvV2ViUGFnZVByb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94
eS5tZXNzYWdlcy5pbjoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvQ29jb2EvV2ViUGFn
ZUNvY29hLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpyZXF1ZXN0QWN0aXZlTm93UGxh
eWluZ1Nlc3Npb25JbmZvKTogRGl0dG8uCisKIDIwMTgtMDEtMjMgIENvbW1pdCBRdWV1ZSAgPGNv
bW1pdC1xdWV1ZUB3ZWJraXQub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0
IHIyMjc0MzcuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1l
bnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcAppbmRleCBm
MTY5MGNhYmU1NDZkYjQwOGMwOGRmMTJkMDk0M2JmOWY2M2M4OWI5Li5lMDUzMTc3NDUxMDk0MGE5
NmEzM2U3YTRhZWE1YzgxM2M2Zjg5OTEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxNZWRpYUVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlh
RWxlbWVudC5jcHAKQEAgLTk3MSw2ICs5NzEsOSBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnJl
bW92ZWRGcm9tQW5jZXN0b3IoUmVtb3ZhbFR5cGUgcmVtb3ZhbFR5cGUsIENvbnRhaW5lck5vZAog
ICAgICAgICBtX3BhdXNlQWZ0ZXJEZXRhY2hlZFRhc2tRdWV1ZS5lbnF1ZXVlVGFzayhzdGQ6OmJp
bmQoJkhUTUxNZWRpYUVsZW1lbnQ6OnBhdXNlQWZ0ZXJEZXRhY2hlZFRhc2ssIHRoaXMpKTsKICAg
ICB9CiAKKyAgICBpZiAobV9tZWRpYVNlc3Npb24pCisgICAgICAgIG1fbWVkaWFTZXNzaW9uLT5j
bGllbnRDaGFyYWN0ZXJpc3RpY3NDaGFuZ2VkKCk7CisKICAgICBIVE1MRWxlbWVudDo6cmVtb3Zl
ZEZyb21BbmNlc3RvcihyZW1vdmFsVHlwZSwgb2xkUGFyZW50T2ZSZW1vdmVkVHJlZSk7CiB9CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5oIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgKaW5kZXggZDQ0ZjUyODE3YWMzMDk5
MzBkODEzMmQyODNhNzAyM2E4NTdjOWIzNS4uYzM1ODEwZDU5YmJiYzBkYmQzNmU5YjJiNzRmOTU2
YmI3M2Y2YzUyMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVt
ZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgKQEAgLTU1
MCw2ICs1NTAsOCBAQCBwdWJsaWM6CiAKICAgICBib29sIHdpbGxMb2coV1RGTG9nTGV2ZWwpIGNv
bnN0OwogCisgICAgYm9vbCBpc1N1c3BlbmRlZCgpIGNvbnN0IGZpbmFsOworCiBwcm90ZWN0ZWQ6
CiAgICAgSFRNTE1lZGlhRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQmLCBi
b29sIGNyZWF0ZWRCeVBhcnNlcik7CiAgICAgdmlydHVhbCB2b2lkIGZpbmlzaEluaXRpYWxpemF0
aW9uKCk7CkBAIC04NjAsNyArODYyLDYgQEAgcHJpdmF0ZToKICAgICBib29sIHNob3VsZE92ZXJy
aWRlQmFja2dyb3VuZExvYWRpbmdSZXN0cmljdGlvbigpIGNvbnN0IG92ZXJyaWRlOwogICAgIGJv
b2wgY2FuUHJvZHVjZUF1ZGlvKCkgY29uc3QgZmluYWw7CiAgICAgYm9vbCBwcm9jZXNzaW5nVXNl
ckdlc3R1cmVGb3JNZWRpYSgpIGNvbnN0IGZpbmFsOwotICAgIGJvb2wgaXNTdXNwZW5kZWQoKSBj
b25zdCBmaW5hbDsKIAogICAgIHZvaWQgcGFnZU11dGVkU3RhdGVEaWRDaGFuZ2UoKSBvdmVycmlk
ZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9NZWRpYUVsZW1lbnRTZXNzaW9u
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvTWVkaWFFbGVtZW50U2Vzc2lvbi5jcHAKaW5kZXgg
MmQ1YmI1MWZiZTY2NzU4OTUxMmU1OThhMmY4ZmNjMjJhZmYyN2QyYy4uNGFiODVhZmM3NWY0YTJi
YWYzMzM1MGZjNzVjMTQyZTgzYzUxYzI1MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRt
bC9NZWRpYUVsZW1lbnRTZXNzaW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL01lZGlh
RWxlbWVudFNlc3Npb24uY3BwCkBAIC0xNjIsNiArMTYyLDkgQEAgc3RhdGljIGJvb2wgbmVlZHNB
cmJpdHJhcnlVc2VyR2VzdHVyZUF1dG9wbGF5UXVpcmsoY29uc3QgRG9jdW1lbnQmIGRvY3VtZW50
KQogCiBTdWNjZXNzT3I8TWVkaWFQbGF5YmFja0RlbmlhbFJlYXNvbj4gTWVkaWFFbGVtZW50U2Vz
c2lvbjo6cGxheWJhY2tQZXJtaXR0ZWQoY29uc3QgSFRNTE1lZGlhRWxlbWVudCYgZWxlbWVudCkg
Y29uc3QKIHsKKyAgICBpZiAobV9lbGVtZW50LmlzU3VzcGVuZGVkKCkpCisgICAgICAgIHJldHVy
biB7IH07CisKICAgICBpZiAoZWxlbWVudC5kb2N1bWVudCgpLmlzTWVkaWFEb2N1bWVudCgpICYm
ICFlbGVtZW50LmRvY3VtZW50KCkub3duZXJFbGVtZW50KCkpCiAgICAgICAgIHJldHVybiB7IH07
CiAKQEAgLTI5NSw2ICsyOTgsMTEgQEAgYm9vbCBNZWRpYUVsZW1lbnRTZXNzaW9uOjpwYWdlQWxs
b3dzUGxheWJhY2tBZnRlclJlc3VtaW5nKGNvbnN0IEhUTUxNZWRpYUVsZW1lbnQKIAogYm9vbCBN
ZWRpYUVsZW1lbnRTZXNzaW9uOjpjYW5TaG93Q29udHJvbHNNYW5hZ2VyKFBsYXliYWNrQ29udHJv
bHNQdXJwb3NlIHB1cnBvc2UpIGNvbnN0CiB7CisgICAgaWYgKG1fZWxlbWVudC5pc1N1c3BlbmRl
ZCgpIHx8ICFtX2VsZW1lbnQuaW5BY3RpdmVEb2N1bWVudCgpKSB7CisgICAgICAgIExPRyhNZWRp
YSwgIk1lZGlhRWxlbWVudFNlc3Npb246OmNhblNob3dDb250cm9sc01hbmFnZXIgLSByZXR1cm5p
bmcgRkFMU0U6IGlzU3VzcGVuZGVkKCkiKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0K
KwogICAgIGlmIChtX2VsZW1lbnQuaXNGdWxsc2NyZWVuKCkpIHsKICAgICAgICAgTE9HKE1lZGlh
LCAiTWVkaWFFbGVtZW50U2Vzc2lvbjo6Y2FuU2hvd0NvbnRyb2xzTWFuYWdlciAtIHJldHVybmlu
ZyBUUlVFOiBJcyBmdWxsc2NyZWVuIik7CiAgICAgICAgIHJldHVybiB0cnVlOwpAQCAtMzM1LDEx
ICszNDMsNiBAQCBib29sIE1lZGlhRWxlbWVudFNlc3Npb246OmNhblNob3dDb250cm9sc01hbmFn
ZXIoUGxheWJhY2tDb250cm9sc1B1cnBvc2UgcHVycG9zZQogICAgICAgICByZXR1cm4gZmFsc2U7
CiAgICAgfQogCi0gICAgaWYgKG1fZWxlbWVudC5kb2N1bWVudCgpLmFjdGl2ZURPTU9iamVjdHNB
cmVTdXNwZW5kZWQoKSkgewotICAgICAgICBMT0coTWVkaWEsICJNZWRpYUVsZW1lbnRTZXNzaW9u
OjpjYW5TaG93Q29udHJvbHNNYW5hZ2VyIC0gcmV0dXJuaW5nIEZBTFNFOiBhY3RpdmVET01PYmpl
Y3RzQXJlU3VzcGVuZGVkKCkiKTsKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIH0KLQogICAg
IGlmICghcGxheWJhY2tQZXJtaXR0ZWQobV9lbGVtZW50KSkgewogICAgICAgICBMT0coTWVkaWEs
ICJNZWRpYUVsZW1lbnRTZXNzaW9uOjpjYW5TaG93Q29udHJvbHNNYW5hZ2VyIC0gcmV0dXJuaW5n
IEZBTFNFOiBQbGF5YmFjayBub3QgcGVybWl0dGVkIik7CiAgICAgICAgIHJldHVybiBmYWxzZTsK
QEAgLTY5MSw3ICs2OTQsOCBAQCBzaXplX3QgTWVkaWFFbGVtZW50U2Vzc2lvbjo6bWF4aW11bU1l
ZGlhU291cmNlQnVmZmVyU2l6ZShjb25zdCBTb3VyY2VCdWZmZXImIGJ1ZgogCiBzdGF0aWMgYm9v
bCBpc01haW5Db250ZW50Rm9yUHVycG9zZXNPZkF1dG9wbGF5KGNvbnN0IEhUTUxNZWRpYUVsZW1l
bnQmIGVsZW1lbnQpCiB7Ci0gICAgaWYgKCFlbGVtZW50Lmhhc0F1ZGlvKCkgfHwgIWVsZW1lbnQu
aGFzVmlkZW8oKSkKKyAgICBEb2N1bWVudCYgZG9jdW1lbnQgPSBlbGVtZW50LmRvY3VtZW50KCk7
CisgICAgaWYgKCFkb2N1bWVudC5pc1NhZmVUb1VwZGF0ZVN0eWxlT3JMYXlvdXQoKSB8fCAhZWxl
bWVudC5oYXNBdWRpbygpIHx8ICFlbGVtZW50Lmhhc1ZpZGVvKCkpCiAgICAgICAgIHJldHVybiBm
YWxzZTsKIAogICAgIC8vIEVsZW1lbnRzIHdoaWNoIGhhdmUgbm90IHlldCBiZWVuIGxhaWQgb3V0
LCBvciB3aGljaCBhcmUgbm90IHlldCBpbiB0aGUgRE9NLCBjYW5ub3QgYmUgbWFpbiBjb250ZW50
LgpAQCAtNzExLDcgKzcxNSw2IEBAIHN0YXRpYyBib29sIGlzTWFpbkNvbnRlbnRGb3JQdXJwb3Nl
c09mQXV0b3BsYXkoY29uc3QgSFRNTE1lZGlhRWxlbWVudCYgZWxlbWVudCkKICAgICAgICAgcmV0
dXJuIGZhbHNlOwogCiAgICAgLy8gTWFpbiBjb250ZW50IGVsZW1lbnRzIG11c3QgYmUgaW4gdGhl
IG1haW4gZnJhbWUuCi0gICAgRG9jdW1lbnQmIGRvY3VtZW50ID0gZWxlbWVudC5kb2N1bWVudCgp
OwogICAgIGlmICghZG9jdW1lbnQuZnJhbWUoKSB8fCAhZG9jdW1lbnQuZnJhbWUoKS0+aXNNYWlu
RnJhbWUoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCkBAIC04MTgsNiArODIxLDkgQEAgdm9p
ZCBNZWRpYUVsZW1lbnRTZXNzaW9uOjptYWluQ29udGVudENoZWNrVGltZXJGaXJlZCgpCiAKIGJv
b2wgTWVkaWFFbGVtZW50U2Vzc2lvbjo6dXBkYXRlSXNNYWluQ29udGVudCgpIGNvbnN0CiB7Cisg
ICAgaWYgKG1fZWxlbWVudC5pc1N1c3BlbmRlZCgpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisK
ICAgICBib29sIHdhc01haW5Db250ZW50ID0gbV9pc01haW5Db250ZW50OwogICAgIG1faXNNYWlu
Q29udGVudCA9IGlzTWFpbkNvbnRlbnRGb3JQdXJwb3Nlc09mQXV0b3BsYXkobV9lbGVtZW50KTsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vUGxhdGZvcm1NZWRp
YVNlc3Npb25NYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL1BsYXRm
b3JtTWVkaWFTZXNzaW9uTWFuYWdlci5jcHAKaW5kZXggMWYxN2NjYzk3OTAxZTMyMzZhNzM1MDU4
YzAwZWYxYmExNjZiNjMyOC4uMTQzMDM1NWM4MTY1YjE1MWY2NmE4MDhiMDY2ZmM5ZjhhYjMyNjU2
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vUGxhdGZvcm1NZWRp
YVNlc3Npb25NYW5hZ2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9Q
bGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXIuY3BwCkBAIC0zMywxMiArMzMsNiBAQAogCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKLSNpZiAhUExBVEZPUk0oTUFDKQotdm9pZCBQbGF0Zm9ybU1lZGlh
U2Vzc2lvbk1hbmFnZXI6OnVwZGF0ZU5vd1BsYXlpbmdJbmZvSWZOZWNlc3NhcnkoKQotewotfQot
I2VuZGlmCi0KICNpZiBFTkFCTEUoVklERU8pIHx8IEVOQUJMRShXRUJfQVVESU8pCiAKICNpZiAh
UExBVEZPUk0oQ09DT0EpCkBAIC01Nyw2ICs1MSwxMiBAQCBQbGF0Zm9ybU1lZGlhU2Vzc2lvbk1h
bmFnZXIqIFBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlcjo6c2hhcmVkTWFuYWdlcklmRXhpc3Rz
KAogfQogI2VuZGlmIC8vICFQTEFURk9STShDT0NPQSkKIAordm9pZCBQbGF0Zm9ybU1lZGlhU2Vz
c2lvbk1hbmFnZXI6OnVwZGF0ZU5vd1BsYXlpbmdJbmZvSWZOZWNlc3NhcnkoKQoreworICAgIGlm
IChhdXRvIGV4aXN0aW5nTWFuYWdlciA9IFBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlcjo6c2hh
cmVkTWFuYWdlcklmRXhpc3RzKCkpCisgICAgICAgIGV4aXN0aW5nTWFuYWdlci0+c2NoZWR1bGVV
cGRhdGVOb3dQbGF5aW5nSW5mbygpOworfQorCiBQbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXI6
OlBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlcigpCiAgICAgOiBtX3N5c3RlbVNsZWVwTGlzdGVu
ZXIoUEFMOjpTeXN0ZW1TbGVlcExpc3RlbmVyOjpjcmVhdGUoKnRoaXMpKQogewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5h
Z2VyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9QbGF0Zm9ybU1lZGlhU2Vzc2lv
bk1hbmFnZXIuaAppbmRleCBmNTE4MjA3MzRjOTYwYWUyZTNkYzg3ZTA5YjMzY2Y2ZTg0NjMwMjhl
Li42N2MxNjEwNjI0N2U0NzE4NzJlNzQ4YWExY2FmMjQ1ZTEwZjk5MTA0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9QbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXIu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9QbGF0Zm9ybU1lZGlhU2Vzc2lv
bk1hbmFnZXIuaApAQCAtNjEsNiArNjEsNyBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQg
dmlydHVhbCBkb3VibGUgbGFzdFVwZGF0ZWROb3dQbGF5aW5nRHVyYXRpb24oKSBjb25zdCB7IHJl
dHVybiBOQU47IH0KICAgICBXRUJDT1JFX0VYUE9SVCB2aXJ0dWFsIGRvdWJsZSBsYXN0VXBkYXRl
ZE5vd1BsYXlpbmdFbGFwc2VkVGltZSgpIGNvbnN0IHsgcmV0dXJuIE5BTjsgfQogICAgIFdFQkNP
UkVfRVhQT1JUIHZpcnR1YWwgdWludDY0X3QgbGFzdFVwZGF0ZWROb3dQbGF5aW5nSW5mb1VuaXF1
ZUlkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiAwOyB9CisgICAgV0VCQ09SRV9FWFBPUlQgdmly
dHVhbCBib29sIHJlZ2lzdGVyZWRBc05vd1BsYXlpbmdBcHBsaWNhdGlvbigpIGNvbnN0IHsgcmV0
dXJuIGZhbHNlOyB9CiAKICAgICBib29sIHdpbGxJZ25vcmVTeXN0ZW1JbnRlcnJ1cHRpb25zKCkg
Y29uc3QgeyByZXR1cm4gbV93aWxsSWdub3JlU3lzdGVtSW50ZXJydXB0aW9uczsgfQogICAgIHZv
aWQgc2V0V2lsbElnbm9yZVN5c3RlbUludGVycnVwdGlvbnMoYm9vbCBpZ25vcmUpIHsgbV93aWxs
SWdub3JlU3lzdGVtSW50ZXJydXB0aW9ucyA9IGlnbm9yZTsgfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vaW9zL01lZGlhU2Vzc2lvbk1hbmFnZXJJT1MuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL2lvcy9NZWRpYVNlc3Npb25NYW5hZ2VySU9TLmgK
aW5kZXggNWRhMmRlOTg4Y2U2ZjI5MTU1MGViNmMyNDkxN2UwOTY4NTBlNjlkYS4uNzcyODQxOGZj
MDAyMTQyYWQyM2QyM2M1OGZkNDYyODAxYWI4NmYwYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vYXVkaW8vaW9zL01lZGlhU2Vzc2lvbk1hbmFnZXJJT1MuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9pb3MvTWVkaWFTZXNzaW9uTWFuYWdlcklPUy5oCkBA
IC03Myw2ICs3Myw3IEBAIHByaXZhdGU6CiAgICAgZG91YmxlIGxhc3RVcGRhdGVkTm93UGxheWlu
Z0R1cmF0aW9uKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9yZXBvcnRlZER1cmF0aW9uOyB9CiAg
ICAgZG91YmxlIGxhc3RVcGRhdGVkTm93UGxheWluZ0VsYXBzZWRUaW1lKCkgY29uc3QgZmluYWwg
eyByZXR1cm4gbV9yZXBvcnRlZEN1cnJlbnRUaW1lOyB9CiAgICAgdWludDY0X3QgbGFzdFVwZGF0
ZWROb3dQbGF5aW5nSW5mb1VuaXF1ZUlkZW50aWZpZXIoKSBjb25zdCBmaW5hbCB7IHJldHVybiBt
X2xhc3RVcGRhdGVkTm93UGxheWluZ0luZm9VbmlxdWVJZGVudGlmaWVyOyB9CisgICAgYm9vbCBy
ZWdpc3RlcmVkQXNOb3dQbGF5aW5nQXBwbGljYXRpb24oKSBjb25zdCBmaW5hbCB7IHJldHVybiBt
X25vd1BsYXlpbmdBY3RpdmU7IH0KIAogICAgIFBsYXRmb3JtTWVkaWFTZXNzaW9uKiBub3dQbGF5
aW5nRWxpZ2libGVTZXNzaW9uKCk7CiAgICAgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9hdWRpby9tYWMvTWVkaWFTZXNzaW9uTWFuYWdlck1hYy5oIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vYXVkaW8vbWFjL01lZGlhU2Vzc2lvbk1hbmFnZXJNYWMuaAppbmRleCBmMmJk
NTczYTVlNTExYWI5N2QyYjI0ZGU1ODE3ZmNkNDM0YzU5ZWU1Li40OTlmMDViN2IyNTVlODEwY2M3
MTVmYmNjZGU0NmYxNGVhOGMzYTE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9hdWRpby9tYWMvTWVkaWFTZXNzaW9uTWFuYWdlck1hYy5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2F1ZGlvL21hYy9NZWRpYVNlc3Npb25NYW5hZ2VyTWFjLmgKQEAgLTQxLDYgKzQx
LDcgQEAgcHVibGljOgogICAgIGRvdWJsZSBsYXN0VXBkYXRlZE5vd1BsYXlpbmdEdXJhdGlvbigp
IGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fbGFzdFVwZGF0ZWROb3dQbGF5aW5nRHVyYXRpb247IH0K
ICAgICBkb3VibGUgbGFzdFVwZGF0ZWROb3dQbGF5aW5nRWxhcHNlZFRpbWUoKSBjb25zdCBmaW5h
bCB7IHJldHVybiBtX2xhc3RVcGRhdGVkTm93UGxheWluZ0VsYXBzZWRUaW1lOyB9CiAgICAgdWlu
dDY0X3QgbGFzdFVwZGF0ZWROb3dQbGF5aW5nSW5mb1VuaXF1ZUlkZW50aWZpZXIoKSBjb25zdCBm
aW5hbCB7IHJldHVybiBtX2xhc3RVcGRhdGVkTm93UGxheWluZ0luZm9VbmlxdWVJZGVudGlmaWVy
OyB9CisgICAgYm9vbCByZWdpc3RlcmVkQXNOb3dQbGF5aW5nQXBwbGljYXRpb24oKSBjb25zdCBm
aW5hbCB7IHJldHVybiBtX3JlZ2lzdGVyZWRBc05vd1BsYXlpbmdBcHBsaWNhdGlvbjsgfQogCiBw
cml2YXRlOgogICAgIGZyaWVuZCBjbGFzcyBQbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXI7CkBA
IC02MSw2ICs2Miw3IEBAIHByaXZhdGU6CiAKICAgICBib29sIG1fbm93UGxheWluZ0FjdGl2ZSB7
IGZhbHNlIH07CiAgICAgYm9vbCBtX2lzSW5CYWNrZ3JvdW5kIHsgZmFsc2UgfTsKKyAgICBib29s
IG1fcmVnaXN0ZXJlZEFzTm93UGxheWluZ0FwcGxpY2F0aW9uIHsgZmFsc2UgfTsKIAogICAgIC8v
IEZvciB0ZXN0aW5nIHB1cnBvc2VzIG9ubHkuCiAgICAgU3RyaW5nIG1fbGFzdFVwZGF0ZWROb3dQ
bGF5aW5nVGl0bGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9t
YWMvTWVkaWFTZXNzaW9uTWFuYWdlck1hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1
ZGlvL21hYy9NZWRpYVNlc3Npb25NYW5hZ2VyTWFjLm1tCmluZGV4IDJlNDUwMjliOWE1OTkzMDI0
ZDQ4N2QzZjIzNTdlYjc4ZTE4NDI2Y2IuLmU1MTYwNTM5NjI3MWEwYWFkYTMzNjg4MmE4MTYxMTkw
NmY0N2I3OTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL21hYy9N
ZWRpYVNlc3Npb25NYW5hZ2VyTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1
ZGlvL21hYy9NZWRpYVNlc3Npb25NYW5hZ2VyTWFjLm1tCkBAIC01NCwxMiArNTQsNiBAQCBQbGF0
Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXIqIFBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlcjo6c2hh
cmVkTWFuYWdlcklmRXhpc3RzKAogICAgIHJldHVybiBwbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFn
ZXI7CiB9CiAKLXZvaWQgUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyOjp1cGRhdGVOb3dQbGF5
aW5nSW5mb0lmTmVjZXNzYXJ5KCkKLXsKLSAgICBpZiAoYXV0byBleGlzdGluZ01hbmFnZXIgPSAo
TWVkaWFTZXNzaW9uTWFuYWdlck1hYyAqKVBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlcjo6c2hh
cmVkTWFuYWdlcklmRXhpc3RzKCkpCi0gICAgICAgIGV4aXN0aW5nTWFuYWdlci0+c2NoZWR1bGVV
cGRhdGVOb3dQbGF5aW5nSW5mbygpOwotfQotCiBNZWRpYVNlc3Npb25NYW5hZ2VyTWFjOjpNZWRp
YVNlc3Npb25NYW5hZ2VyTWFjKCkKICAgICA6IFBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlcigp
CiB7CkBAIC0xMzYsNiArMTMwLDEwIEBAIHZvaWQgTWVkaWFTZXNzaW9uTWFuYWdlck1hYzo6dXBk
YXRlTm93UGxheWluZ0luZm8oKQogICAgICAgICAgICAgTVJNZWRpYVJlbW90ZVNldE5vd1BsYXlp
bmdWaXNpYmlsaXR5KE1STWVkaWFSZW1vdGVHZXRMb2NhbE9yaWdpbigpLCBNUk5vd1BsYXlpbmdD
bGllbnRWaXNpYmlsaXR5TmV2ZXJWaXNpYmxlKTsKIAogICAgICAgICBMT0coTWVkaWEsICJNZWRp
YVNlc3Npb25NYW5hZ2VyTWFjOjp1cGRhdGVOb3dQbGF5aW5nSW5mbyAtIGNsZWFyaW5nIG5vdyBw
bGF5aW5nIGluZm8iKTsKKworICAgICAgICBNUk1lZGlhUmVtb3RlU2V0Q2FuQmVOb3dQbGF5aW5n
QXBwbGljYXRpb24oZmFsc2UpOworICAgICAgICBtX3JlZ2lzdGVyZWRBc05vd1BsYXlpbmdBcHBs
aWNhdGlvbiA9IGZhbHNlOworCiAgICAgICAgIE1STWVkaWFSZW1vdGVTZXROb3dQbGF5aW5nSW5m
byhudWxscHRyKTsKICAgICAgICAgbV9ub3dQbGF5aW5nQWN0aXZlID0gZmFsc2U7CiAgICAgICAg
IG1fbGFzdFVwZGF0ZWROb3dQbGF5aW5nVGl0bGUgPSBlbXB0eVN0cmluZygpOwpAQCAtMTU0LDEw
ICsxNTIsMTAgQEAgdm9pZCBNZWRpYVNlc3Npb25NYW5hZ2VyTWFjOjp1cGRhdGVOb3dQbGF5aW5n
SW5mbygpCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBzdGF0aWMgZGlzcGF0Y2hfb25j
ZV90IGVuYWJsZU5vd1BsYXlpbmdUb2tlbjsKLSAgICBkaXNwYXRjaF9vbmNlKCZlbmFibGVOb3dQ
bGF5aW5nVG9rZW4sIF4oKSB7CisgICAgaWYgKCFtX3JlZ2lzdGVyZWRBc05vd1BsYXlpbmdBcHBs
aWNhdGlvbikgeworICAgICAgICBtX3JlZ2lzdGVyZWRBc05vd1BsYXlpbmdBcHBsaWNhdGlvbiA9
IHRydWU7CiAgICAgICAgIE1STWVkaWFSZW1vdGVTZXRDYW5CZU5vd1BsYXlpbmdBcHBsaWNhdGlv
bih0cnVlKTsKLSAgICB9KTsKKyAgICB9CiAKICAgICBTdHJpbmcgdGl0bGUgPSBjdXJyZW50U2Vz
c2lvbi0+dGl0bGUoKTsKICAgICBkb3VibGUgZHVyYXRpb24gPSBjdXJyZW50U2Vzc2lvbi0+c3Vw
cG9ydHNTZWVraW5nKCkgPyBjdXJyZW50U2Vzc2lvbi0+ZHVyYXRpb24oKSA6IE1lZGlhUGxheWVy
OjppbnZhbGlkVGltZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJ
L0NvY29hL1dLV2ViVmlldy5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9X
S1dlYlZpZXcubW0KaW5kZXggZGQyNzVhNzQzZWNjOGQzM2RkZWFmZjVlMWNjNGRiYTMyMTg1OWE1
Yy4uMjBkM2MxZDVlMTQ3Mzc4N2FiYzE0Y2IzODAyYWE3ZjY4MTFiMDI3NSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbQorKysgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tCkBAIC02MDc0LDE2ICs2
MDc0LDE2IEBAIHN0YXRpYyBXZWJDb3JlOjpVc2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uIHRv
VXNlckludGVyZmFjZUxheW91dERpcmVjdGlvbihVSVNlCiAKICNlbmRpZiAvLyBQTEFURk9STShN
QUMpCiAKLS0gKHZvaWQpX3JlcXVlc3RBY3RpdmVOb3dQbGF5aW5nU2Vzc2lvbkluZm86KHZvaWQo
XikoQk9PTCwgTlNTdHJpbmcqLCBkb3VibGUsIGRvdWJsZSwgTlNJbnRlZ2VyKSljYWxsYmFjawor
LSAodm9pZClfcmVxdWVzdEFjdGl2ZU5vd1BsYXlpbmdTZXNzaW9uSW5mbzoodm9pZCheKShCT09M
LCBCT09MLCBOU1N0cmluZyosIGRvdWJsZSwgZG91YmxlLCBOU0ludGVnZXIpKWNhbGxiYWNrCiB7
CiAgICAgaWYgKCFfcGFnZSkgewotICAgICAgICBjYWxsYmFjayhOTywgQCIiLCBzdGQ6Om51bWVy
aWNfbGltaXRzPGRvdWJsZT46OnF1aWV0X05hTigpLCBzdGQ6Om51bWVyaWNfbGltaXRzPGRvdWJs
ZT46OnF1aWV0X05hTigpLCAwKTsKKyAgICAgICAgY2FsbGJhY2soTk8sIE5PLCBAIiIsIHN0ZDo6
bnVtZXJpY19saW1pdHM8ZG91YmxlPjo6cXVpZXRfTmFOKCksIHN0ZDo6bnVtZXJpY19saW1pdHM8
ZG91YmxlPjo6cXVpZXRfTmFOKCksIDApOwogICAgICAgICByZXR1cm47CiAgICAgfQogCiAgICAg
YXV0byBoYW5kbGVyID0gbWFrZUJsb2NrUHRyKGNhbGxiYWNrKTsKLSAgICBhdXRvIGxvY2FsQ2Fs
bGJhY2sgPSBXZWJLaXQ6Ok5vd1BsYXlpbmdJbmZvQ2FsbGJhY2s6OmNyZWF0ZShbaGFuZGxlcl0o
Ym9vbCBhY3RpdmUsIFN0cmluZyB0aXRsZSwgZG91YmxlIGR1cmF0aW9uLCBkb3VibGUgZWxhcHNl
ZFRpbWUsIHVpbnQ2NF90IHVuaXF1ZUlkZW50aWZpZXIsIFdlYktpdDo6Q2FsbGJhY2tCYXNlOjpF
cnJvcikgewotICAgICAgICBoYW5kbGVyKGFjdGl2ZSwgdGl0bGUsIGR1cmF0aW9uLCBlbGFwc2Vk
VGltZSwgdW5pcXVlSWRlbnRpZmllcik7CisgICAgYXV0byBsb2NhbENhbGxiYWNrID0gV2ViS2l0
OjpOb3dQbGF5aW5nSW5mb0NhbGxiYWNrOjpjcmVhdGUoW2hhbmRsZXJdKGJvb2wgYWN0aXZlLCBi
b29sIHJlZ2lzdGVyZWRBc05vd1BsYXlpbmdBcHBsaWNhdGlvbiwgU3RyaW5nIHRpdGxlLCBkb3Vi
bGUgZHVyYXRpb24sIGRvdWJsZSBlbGFwc2VkVGltZSwgdWludDY0X3QgdW5pcXVlSWRlbnRpZmll
ciwgV2ViS2l0OjpDYWxsYmFja0Jhc2U6OkVycm9yKSB7CisgICAgICAgIGhhbmRsZXIoYWN0aXZl
LCByZWdpc3RlcmVkQXNOb3dQbGF5aW5nQXBwbGljYXRpb24sIHRpdGxlLCBkdXJhdGlvbiwgZWxh
cHNlZFRpbWUsIHVuaXF1ZUlkZW50aWZpZXIpOwogICAgIH0pOwogCiAgICAgX3BhZ2UtPnJlcXVl
c3RBY3RpdmVOb3dQbGF5aW5nU2Vzc2lvbkluZm8oV1RGTW92ZShsb2NhbENhbGxiYWNrKSk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3UHJp
dmF0ZS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld1ByaXZh
dGUuaAppbmRleCAwZjMzODE3M2U2MDc1YzkzZGIyNTljMTQwOGQ4OTE0MjdmMjlhYTFkLi43YWY4
YjVhODIwNzY0YWY0NTRiMGJiMmU3NzM0ZWFmM2E4YWQxMGM2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3UHJpdmF0ZS5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXdQcml2YXRlLmgKQEAgLTQ0Miw3
ICs0NDIsNyBAQCB0eXBlZGVmIE5TX09QVElPTlMoTlNJbnRlZ2VyLCBfV0tSZWN0RWRnZSkgewog
LSAodm9pZClfc2V0Rm9vdGVyQmFubmVySGVpZ2h0OihpbnQpaGVpZ2h0IFdLX0FQSV9BVkFJTEFC
TEUobWFjb3N4KDEwLjEyLjMpKTsKICNlbmRpZgogCi0tICh2b2lkKV9yZXF1ZXN0QWN0aXZlTm93
UGxheWluZ1Nlc3Npb25JbmZvOih2b2lkKF4pKEJPT0wsIE5TU3RyaW5nKiwgZG91YmxlLCBkb3Vi
bGUsIE5TSW50ZWdlcikpY2FsbGJhY2sgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RC
QSksIGlvcyhXS19JT1NfVEJBKSk7CistICh2b2lkKV9yZXF1ZXN0QWN0aXZlTm93UGxheWluZ1Nl
c3Npb25JbmZvOih2b2lkKF4pKEJPT0wsIEJPT0wsIE5TU3RyaW5nKiwgZG91YmxlLCBkb3VibGUs
IE5TSW50ZWdlcikpY2FsbGJhY2sgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSks
IGlvcyhXS19JT1NfVEJBKSk7CiAKIC0gKHZvaWQpX3NldFBhZ2VTY2FsZTooQ0dGbG9hdClzY2Fs
ZSB3aXRoT3JpZ2luOihDR1BvaW50KW9yaWdpbiBXS19BUElfQVZBSUxBQkxFKGlvcygxMC4zKSk7
CiAtIChDR0Zsb2F0KV9wYWdlU2NhbGUgV0tfQVBJX0FWQUlMQUJMRShpb3MoMTAuMykpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcCBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKaW5kZXggODY4MDZhZjQ5Zjc0NWUx
NzQ4ODhkMzlhNTdiZDlmODg1YWM0OTc0OC4uZWY1N2UxMDA5NTc0NTNhYTA1M2RkMzIxYmQ3OTQ2
MzhkZWQ0NjZjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVBy
b3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCkBA
IC02ODEzLDcgKzY4MTMsNyBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6cmVxdWVzdEFjdGl2ZU5vd1Bs
YXlpbmdTZXNzaW9uSW5mbyhSZWY8Tm93UGxheWluZ0luZm9DYWxsYmFjawogICAgIG1fcHJvY2Vz
cy0+c2VuZChNZXNzYWdlczo6V2ViUGFnZTo6UmVxdWVzdEFjdGl2ZU5vd1BsYXlpbmdTZXNzaW9u
SW5mbyhjYWxsYmFja0lEKSwgbV9wYWdlSUQpOwogfQogCi12b2lkIFdlYlBhZ2VQcm94eTo6bm93
UGxheWluZ0luZm9DYWxsYmFjayhib29sIGhhc0FjdGl2ZVNlc3Npb24sIGNvbnN0IFN0cmluZyYg
dGl0bGUsIGRvdWJsZSBkdXJhdGlvbiwgZG91YmxlIGVsYXBzZWRUaW1lLCB1aW50NjRfdCB1bmlx
dWVJZGVudGlmaWVyLCBDYWxsYmFja0lEIGNhbGxiYWNrSUQpCit2b2lkIFdlYlBhZ2VQcm94eTo6
bm93UGxheWluZ0luZm9DYWxsYmFjayhib29sIGhhc0FjdGl2ZVNlc3Npb24sIGJvb2wgcmVnaXN0
ZXJlZEFzTm93UGxheWluZ0FwcGxpY2F0aW9uLCBjb25zdCBTdHJpbmcmIHRpdGxlLCBkb3VibGUg
ZHVyYXRpb24sIGRvdWJsZSBlbGFwc2VkVGltZSwgdWludDY0X3QgdW5pcXVlSWRlbnRpZmllciwg
Q2FsbGJhY2tJRCBjYWxsYmFja0lEKQogewogICAgIGF1dG8gY2FsbGJhY2sgPSBtX2NhbGxiYWNr
cy50YWtlPE5vd1BsYXlpbmdJbmZvQ2FsbGJhY2s+KGNhbGxiYWNrSUQpOwogICAgIGlmICghY2Fs
bGJhY2spIHsKQEAgLTY4MjEsNyArNjgyMSw3IEBAIHZvaWQgV2ViUGFnZVByb3h5Ojpub3dQbGF5
aW5nSW5mb0NhbGxiYWNrKGJvb2wgaGFzQWN0aXZlU2Vzc2lvbiwgY29uc3QgU3RyaW5nJiB0CiAg
ICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBjYWxsYmFjay0+cGVyZm9ybUNhbGxiYWNrV2l0
aFJldHVyblZhbHVlKGhhc0FjdGl2ZVNlc3Npb24sIHRpdGxlLCBkdXJhdGlvbiwgZWxhcHNlZFRp
bWUsIHVuaXF1ZUlkZW50aWZpZXIpOworICAgIGNhbGxiYWNrLT5wZXJmb3JtQ2FsbGJhY2tXaXRo
UmV0dXJuVmFsdWUoaGFzQWN0aXZlU2Vzc2lvbiwgcmVnaXN0ZXJlZEFzTm93UGxheWluZ0FwcGxp
Y2F0aW9uLCB0aXRsZSwgZHVyYXRpb24sIGVsYXBzZWRUaW1lLCB1bmlxdWVJZGVudGlmaWVyKTsK
IH0KICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdl
UHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCmluZGV4IDNh
YjdlOTY2OGE2YjVhNGRjNjkwMDIxYzBkMmQ5ZWY5N2UxZWFiNzIuLjlhMTI0ZTY3YjE1NzMzZmEw
Yzg3OTdkYTRkMTFiZTEyYzNkN2E1ODkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1dlYlBhZ2VQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5oCkBAIC0yOTcsNyArMjk3LDcgQEAgdXNpbmcgRHJhd1RvUERGQ2FsbGJhY2sgPSBHZW5l
cmljQ2FsbGJhY2s8Y29uc3QgSVBDOjpEYXRhUmVmZXJlbmNlJj47CiAKICNpZiBQTEFURk9STShD
T0NPQSkKIHR5cGVkZWYgR2VuZXJpY0NhbGxiYWNrPGNvbnN0IFdlYkNvcmU6Ok1hY2hTZW5kUmln
aHQmPiBNYWNoU2VuZFJpZ2h0Q2FsbGJhY2s7Ci10eXBlZGVmIEdlbmVyaWNDYWxsYmFjazxib29s
LCBTdHJpbmcsIGRvdWJsZSwgZG91YmxlLCB1aW50NjRfdD4gTm93UGxheWluZ0luZm9DYWxsYmFj
azsKK3R5cGVkZWYgR2VuZXJpY0NhbGxiYWNrPGJvb2wsIGJvb2wsIFN0cmluZywgZG91YmxlLCBk
b3VibGUsIHVpbnQ2NF90PiBOb3dQbGF5aW5nSW5mb0NhbGxiYWNrOwogI2VuZGlmCiAKIGNsYXNz
IFdlYlBhZ2VQcm94eSA6IHB1YmxpYyBBUEk6Ok9iamVjdEltcGw8QVBJOjpPYmplY3Q6OlR5cGU6
OlBhZ2U+CkBAIC0xMTI2LDcgKzExMjYsNyBAQCBwdWJsaWM6CiAKICNpZiBQTEFURk9STShDT0NP
QSkKICAgICB2b2lkIHJlcXVlc3RBY3RpdmVOb3dQbGF5aW5nU2Vzc2lvbkluZm8oUmVmPE5vd1Bs
YXlpbmdJbmZvQ2FsbGJhY2s+JiYpOwotICAgIHZvaWQgbm93UGxheWluZ0luZm9DYWxsYmFjayhi
b29sLCBjb25zdCBTdHJpbmcmLCBkb3VibGUsIGRvdWJsZSwgdWludDY0X3QsIENhbGxiYWNrSUQp
OworICAgIHZvaWQgbm93UGxheWluZ0luZm9DYWxsYmFjayhib29sLCBib29sLCBjb25zdCBTdHJp
bmcmLCBkb3VibGUsIGRvdWJsZSwgdWludDY0X3QsIENhbGxiYWNrSUQpOwogI2VuZGlmCiAKICNp
ZiBFTkFCTEUoTUVESUFfU0VTU0lPTikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dl
YlBhZ2VQcm94eS5tZXNzYWdlcy5pbgppbmRleCA1MWZlYjllMTlmNTFmZGU1NzNlNTQ2MjQyY2Fk
MDVkNzQzMTRkNmQwLi5mNjBlYzkzNWM4ZDViNmRmOTFhMmU2ZWZiNjExYWVmOTQ0NTg2MzUwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMu
aW4KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmlu
CkBAIC0yMDQsNyArMjA0LDcgQEAgbWVzc2FnZXMgLT4gV2ViUGFnZVByb3h5IHsKICNlbmRpZgog
I2lmIFBMQVRGT1JNKENPQ09BKQogICAgIE1hY2hTZW5kUmlnaHRDYWxsYmFjayhXZWJDb3JlOjpN
YWNoU2VuZFJpZ2h0IHNlbmRSaWdodCwgV2ViS2l0OjpDYWxsYmFja0lEIGNhbGxiYWNrSUQpCi0g
ICAgTm93UGxheWluZ0luZm9DYWxsYmFjayhib29sIGFjdGl2ZSwgU3RyaW5nIHRpdGxlLCBkb3Vi
bGUgZHVyYXRpb24sIGRvdWJsZSBlbGFwc2VkVGltZSwgdWludDY0X3QgdW5pcXVlSWRlbnRpZmll
ciwgV2ViS2l0OjpDYWxsYmFja0lEIGNhbGxiYWNrSUQpCisgICAgTm93UGxheWluZ0luZm9DYWxs
YmFjayhib29sIGFjdGl2ZSwgYm9vbCByZWdpc3RlcmVkQXNOb3dQbGF5aW5nQXBwbGljYXRpb24s
IFN0cmluZyB0aXRsZSwgZG91YmxlIGR1cmF0aW9uLCBkb3VibGUgZWxhcHNlZFRpbWUsIHVpbnQ2
NF90IHVuaXF1ZUlkZW50aWZpZXIsIFdlYktpdDo6Q2FsbGJhY2tJRCBjYWxsYmFja0lEKQogI2Vu
ZGlmCiAKICAgICBQYWdlU2NhbGVGYWN0b3JEaWRDaGFuZ2UoZG91YmxlIHNjYWxlRmFjdG9yKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvQ29jb2EvV2ViUGFn
ZUNvY29hLm1tIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvQ29jb2EvV2ViUGFn
ZUNvY29hLm1tCmluZGV4IDY1Y2ZjYWIxZmZjMzE3YThhNTBkNWYwNWJjYzc3NGZjMjVhYzEwYmUu
LmI0OWQzNTc0ODA1ZTMxMmExZjZkNDlmMzBhNzUzZGU2YjJlOWU0MWMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL0NvY29hL1dlYlBhZ2VDb2NvYS5tbQorKysg
Yi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9Db2NvYS9XZWJQYWdlQ29jb2EubW0K
QEAgLTQ4LDE1ICs0OCwxNyBAQCB2b2lkIFdlYlBhZ2U6OnJlcXVlc3RBY3RpdmVOb3dQbGF5aW5n
U2Vzc2lvbkluZm8oQ2FsbGJhY2tJRCBjYWxsYmFja0lEKQogICAgIGRvdWJsZSBkdXJhdGlvbiA9
IE5BTjsKICAgICBkb3VibGUgZWxhcHNlZFRpbWUgPSBOQU47CiAgICAgdWludDY0X3QgdW5pcXVl
SWRlbnRpZmllciA9IDA7CisgICAgYm9vbCByZWdpc3RlcmVkQXNOb3dQbGF5aW5nQXBwbGljYXRp
b24gPSBmYWxzZTsKICAgICBpZiAoYXV0byogc2hhcmVkTWFuYWdlciA9IFdlYkNvcmU6OlBsYXRm
b3JtTWVkaWFTZXNzaW9uTWFuYWdlcjo6c2hhcmVkTWFuYWdlcklmRXhpc3RzKCkpIHsKICAgICAg
ICAgaGFzQWN0aXZlU2Vzc2lvbiA9IHNoYXJlZE1hbmFnZXItPmhhc0FjdGl2ZU5vd1BsYXlpbmdT
ZXNzaW9uKCk7CiAgICAgICAgIHRpdGxlID0gc2hhcmVkTWFuYWdlci0+bGFzdFVwZGF0ZWROb3dQ
bGF5aW5nVGl0bGUoKTsKICAgICAgICAgZHVyYXRpb24gPSBzaGFyZWRNYW5hZ2VyLT5sYXN0VXBk
YXRlZE5vd1BsYXlpbmdEdXJhdGlvbigpOwogICAgICAgICBlbGFwc2VkVGltZSA9IHNoYXJlZE1h
bmFnZXItPmxhc3RVcGRhdGVkTm93UGxheWluZ0VsYXBzZWRUaW1lKCk7CiAgICAgICAgIHVuaXF1
ZUlkZW50aWZpZXIgPSBzaGFyZWRNYW5hZ2VyLT5sYXN0VXBkYXRlZE5vd1BsYXlpbmdJbmZvVW5p
cXVlSWRlbnRpZmllcigpOworICAgICAgICByZWdpc3RlcmVkQXNOb3dQbGF5aW5nQXBwbGljYXRp
b24gPSBzaGFyZWRNYW5hZ2VyLT5yZWdpc3RlcmVkQXNOb3dQbGF5aW5nQXBwbGljYXRpb24oKTsK
ICAgICB9CiAKLSAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6Ok5vd1BsYXlpbmdJbmZv
Q2FsbGJhY2soaGFzQWN0aXZlU2Vzc2lvbiwgdGl0bGUsIGR1cmF0aW9uLCBlbGFwc2VkVGltZSwg
dW5pcXVlSWRlbnRpZmllciwgY2FsbGJhY2tJRCkpOworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6Tm93UGxheWluZ0luZm9DYWxsYmFjayhoYXNBY3RpdmVTZXNzaW9uLCByZWdpc3Rl
cmVkQXNOb3dQbGF5aW5nQXBwbGljYXRpb24sIHRpdGxlLCBkdXJhdGlvbiwgZWxhcHNlZFRpbWUs
IHVuaXF1ZUlkZW50aWZpZXIsIGNhbGxiYWNrSUQpKTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2Vi
S2l0CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXgg
OGRhNDUwYmNhNjZkZGE1MTk5Mzc4OGQ3ZTI5NjE4ZmI1ZTFjYWNhZC4uOGMyMTdjMWIyZmQzYjA4
MmZlNDYyODRjYTkyZTZlMzVhNGI3OGQ4YyAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisr
KyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDE4LTAxLTIzICBFcmljIENh
cmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFJlc2lnbiBOb3dQbGF5
aW5nIHN0YXR1cyB3aGVuIG5vIG1lZGlhIGVsZW1lbnQgaXMgZWxpZ2libGUKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTkxNAorICAgICAgICA8cmRh
cjovL3Byb2JsZW0vMzUyOTQxMTY+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgSmVyIE5vYmxlLgor
CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9Ob3dQbGF5aW5nQ29u
dHJvbHNUZXN0cy5tbToKKyAgICAgICAgKC1bTm93UGxheWluZ1Rlc3RXZWJWaWV3IGhhc0FjdGl2
ZU5vd1BsYXlpbmdTZXNzaW9uXSk6CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjpURVNUKToKKyAg
ICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL2xhcmdlLXZpZGVvLXRlc3Qt
bm93LXBsYXlpbmcuaHRtbDoKKwogMjAxOC0wMS0yMyAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJh
c2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBFbGVtZW50IHdpdGggcG9zaXRpb246Zml4ZWQgc3Rv
cHMgc2Nyb2xsaW5nIGF0IHRoZSBib3R0b20gb2YgdGhlIHBhZ2UsIGJ1dCBpcyBwYWludGVkIGlu
IHRoZSByaWdodCBwbGFjZSBvbiBDaGFjb3MuY29tLgpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdl
YktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9Ob3dQbGF5aW5nQ29udHJvbHNUZXN0cy5tbSBiL1Rv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvTm93UGxheWluZ0NvbnRyb2xzVGVz
dHMubW0KaW5kZXggZWQxZjY2OGI2NzJlZWIyMmU1MWVmOTJmN2Q4NmZiZWU5YzRhNzQ3ZC4uYzZm
ZDg3NjQ3ZmU3Nzg5ODY1YjhhNGJjMjJmZGQzYWE0YzJmZWM0YSAxMDA2NDQKLS0tIGEvVG9vbHMv
VGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9Ob3dQbGF5aW5nQ29udHJvbHNUZXN0cy5t
bQorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL05vd1BsYXlpbmdD
b250cm9sc1Rlc3RzLm1tCkBAIC0zNSw2ICszNSw3IEBACiAKIEBpbnRlcmZhY2UgTm93UGxheWlu
Z1Rlc3RXZWJWaWV3IDogVGVzdFdLV2ViVmlldwogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRv
bmx5KSBCT09MIGhhc0FjdGl2ZU5vd1BsYXlpbmdTZXNzaW9uOworQHByb3BlcnR5IChub25hdG9t
aWMsIHJlYWRvbmx5KSBCT09MIHJlZ2lzdGVyZWRBc05vd1BsYXlpbmdBcHBsaWNhdGlvbjsKIEBw
cm9wZXJ0eSAocmVhZG9ubHkpIE5TU3RyaW5nICpsYXN0VXBkYXRlZFRpdGxlOwogQHByb3BlcnR5
IChyZWFkb25seSkgZG91YmxlIGxhc3RVcGRhdGVkRHVyYXRpb247CiBAcHJvcGVydHkgKHJlYWRv
bmx5KSBkb3VibGUgbGFzdFVwZGF0ZWRFbGFwc2VkVGltZTsKQEAgLTQ0LDEzICs0NSwxNSBAQAog
QGltcGxlbWVudGF0aW9uIE5vd1BsYXlpbmdUZXN0V2ViVmlldyB7CiAgICAgYm9vbCBfcmVjZWl2
ZWROb3dQbGF5aW5nSW5mb1Jlc3BvbnNlOwogICAgIEJPT0wgX2hhc0FjdGl2ZU5vd1BsYXlpbmdT
ZXNzaW9uOworICAgIEJPT0wgX3JlZ2lzdGVyZWRBc05vd1BsYXlpbmdBcHBsaWNhdGlvbjsKIH0K
IC0gKEJPT0wpaGFzQWN0aXZlTm93UGxheWluZ1Nlc3Npb24KIHsKICAgICBfcmVjZWl2ZWROb3dQ
bGF5aW5nSW5mb1Jlc3BvbnNlID0gZmFsc2U7CiAKLSAgICBhdXRvIGNvbXBsZXRpb25IYW5kbGVy
ID0gW3JldGFpbmVkU2VsZiA9IHJldGFpblB0cihzZWxmKSwgc2VsZl0oQk9PTCBhY3RpdmUsIE5T
U3RyaW5nICp0aXRsZSwgZG91YmxlIGR1cmF0aW9uLCBkb3VibGUgZWxhcHNlZFRpbWUsIE5TSW50
ZWdlciB1bmlxdWVJZGVudGlmaWVyKSB7CisgICAgYXV0byBjb21wbGV0aW9uSGFuZGxlciA9IFty
ZXRhaW5lZFNlbGYgPSByZXRhaW5QdHIoc2VsZiksIHNlbGZdKEJPT0wgYWN0aXZlLCBCT09MIHJl
Z2lzdGVyZWRBc05vd1BsYXlpbmdBcHBsaWNhdGlvbiwgTlNTdHJpbmcgKnRpdGxlLCBkb3VibGUg
ZHVyYXRpb24sIGRvdWJsZSBlbGFwc2VkVGltZSwgTlNJbnRlZ2VyIHVuaXF1ZUlkZW50aWZpZXIp
IHsKICAgICAgICAgX2hhc0FjdGl2ZU5vd1BsYXlpbmdTZXNzaW9uID0gYWN0aXZlOworICAgICAg
ICBfcmVnaXN0ZXJlZEFzTm93UGxheWluZ0FwcGxpY2F0aW9uID0gcmVnaXN0ZXJlZEFzTm93UGxh
eWluZ0FwcGxpY2F0aW9uOwogICAgICAgICBfbGFzdFVwZGF0ZWRUaXRsZSA9IFt0aXRsZSBjb3B5
XTsKICAgICAgICAgX2xhc3RVcGRhdGVkRHVyYXRpb24gPSBkdXJhdGlvbjsKICAgICAgICAgX2xh
c3RVcGRhdGVkRWxhcHNlZFRpbWUgPSBlbGFwc2VkVGltZTsKQEAgLTE4NSw2ICsxODgsMzEgQEAg
VEVTVChOb3dQbGF5aW5nQ29udHJvbHNUZXN0cywgTm93UGxheWluZ0NvbnRyb2xzQ2xlYXJJbmZv
QWZ0ZXJTZXNzaW9uSXNOb0xvbmdlclYKICAgICBBU1NFUlRfVFJVRShpc25hbih3ZWJWaWV3Lmdl
dCgpLmxhc3RVcGRhdGVkRWxhcHNlZFRpbWUpKTsKICAgICBBU1NFUlRfVFJVRSghd2ViVmlldy5n
ZXQoKS5sYXN0VW5pcXVlSWRlbnRpZmllcik7CiB9CisKK1RFU1QoTm93UGxheWluZ0NvbnRyb2xz
VGVzdHMsIE5vd1BsYXlpbmdDb250cm9sc0NoZWNrUmVnaXN0ZXJlZCkKK3sKKyAgICBXS1dlYlZp
ZXdDb25maWd1cmF0aW9uICpjb25maWd1cmF0aW9uID0gW1tXS1dlYlZpZXdDb25maWd1cmF0aW9u
IGFsbG9jXSBpbml0XTsKKyAgICBjb25maWd1cmF0aW9uLm1lZGlhVHlwZXNSZXF1aXJpbmdVc2Vy
QWN0aW9uRm9yUGxheWJhY2sgPSBXS0F1ZGlvdmlzdWFsTWVkaWFUeXBlTm9uZTsKKyAgICBhdXRv
IHdlYlZpZXcgPSBhZG9wdE5TKFtbTm93UGxheWluZ1Rlc3RXZWJWaWV3IGFsbG9jXSBpbml0V2l0
aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApIGNvbmZpZ3VyYXRpb246Y29uZmlndXJh
dGlvbl0pOworICAgIFt3ZWJWaWV3IGxvYWRUZXN0UGFnZU5hbWVkOkAibGFyZ2UtdmlkZW8tdGVz
dC1ub3ctcGxheWluZyJdOworICAgIFt3ZWJWaWV3IHdhaXRGb3JNZXNzYWdlOkAicGxheWluZyJd
OworICAgIFt3ZWJWaWV3IHNldFdpbmRvd1Zpc2libGU6Tk9dOworICAgIFt3ZWJWaWV3LmdldCgp
LndpbmRvdyByZXNpZ25LZXlXaW5kb3ddOworCisgICAgW3dlYlZpZXcgZXhwZWN0SGFzQWN0aXZl
Tm93UGxheWluZ1Nlc3Npb246WUVTXTsKKyAgICBBU1NFUlRfVFJVRSh3ZWJWaWV3LmdldCgpLnJl
Z2lzdGVyZWRBc05vd1BsYXlpbmdBcHBsaWNhdGlvbik7CisKKyAgICBbd2ViVmlldyBzdHJpbmdC
eUV2YWx1YXRpbmdKYXZhU2NyaXB0OkAicGF1c2UoKSJdOworICAgIFt3ZWJWaWV3IHdhaXRGb3JN
ZXNzYWdlOkAicGF1c2VkIl07CisgICAgW3dlYlZpZXcgZXhwZWN0SGFzQWN0aXZlTm93UGxheWlu
Z1Nlc3Npb246WUVTXTsKKyAgICBBU1NFUlRfVFJVRSh3ZWJWaWV3LmdldCgpLnJlZ2lzdGVyZWRB
c05vd1BsYXlpbmdBcHBsaWNhdGlvbik7CisKKyAgICBhdXRvIHJlc3VsdCA9IFt3ZWJWaWV3IHN0
cmluZ0J5RXZhbHVhdGluZ0phdmFTY3JpcHQ6QCJyZW1vdmVWaWRlb0VsZW1lbnQoKSJdOworICAg
IEFTU0VSVF9TVFJFUSgiPG51bGw+IiwgcmVzdWx0LlVURjhTdHJpbmcpOworICAgIFt3ZWJWaWV3
IGV4cGVjdEhhc0FjdGl2ZU5vd1BsYXlpbmdTZXNzaW9uOk5PXTsKKyAgICBBU1NFUlRfRkFMU0Uo
d2ViVmlldy5nZXQoKS5yZWdpc3RlcmVkQXNOb3dQbGF5aW5nQXBwbGljYXRpb24pOworfQorCiAj
ZW5kaWYgLy8gUExBVEZPUk0oTUFDKQogCiAjaWYgUExBVEZPUk0oSU9TKQpkaWZmIC0tZ2l0IGEv
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9sYXJnZS12aWRlby10ZXN0LW5v
dy1wbGF5aW5nLmh0bWwgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL2xh
cmdlLXZpZGVvLXRlc3Qtbm93LXBsYXlpbmcuaHRtbAppbmRleCA2NTdkYmQ3Mzk1Mjc5MjgwZGE1
OWM5YjVlYjBjYjFhMjA2ZWViNTdhLi5kNmNmMmRhM2U1NTljMzViNTNkOTUxMzU2ZDYzMWVhODNk
MGExOTY2IDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29h
L2xhcmdlLXZpZGVvLXRlc3Qtbm93LXBsYXlpbmcuaHRtbAorKysgYi9Ub29scy9UZXN0V2ViS2l0
QVBJL1Rlc3RzL1dlYktpdENvY29hL2xhcmdlLXZpZGVvLXRlc3Qtbm93LXBsYXlpbmcuaHRtbApA
QCAtOCw2ICs4LDEyIEBACiAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAg
IH0KIAorICAgICAgICBidXR0b24geworICAgICAgICAgICAgdG9wOiAzMjBweDsKKyAgICAgICAg
ICAgIGxlZnQ6IDIwcHg7CisgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CisgICAgICAg
IH0KKwogICAgICAgICBib2R5IHsKICAgICAgICAgICAgIG1hcmdpbjogMDsKICAgICAgICAgfQpA
QCAtMjUsOSArMzEsMzAgQEAKICAgICAgICAgZnVuY3Rpb24gbW91c2Vkb3duKCkgewogICAgICAg
ICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcigidmlkZW8iKS5tdXRlZCA9IHRydWU7CiAgICAg
ICAgIH0KKworICAgICAgICBmdW5jdGlvbiByZW1vdmVWaWRlb0VsZW1lbnQoKSB7CisgICAgICAg
ICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoInZp
ZGVvIikpOworICAgICAgICAgICAgcmV0dXJuIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoInZpZGVv
Iik7CisgICAgICAgIH0KKworICAgICAgICBmdW5jdGlvbiBwYXVzZSgpIHsKKyAgICAgICAgICAg
IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoInZpZGVvIikucGF1c2UoKTsKKyAgICAgICAgfQorCisg
ICAgICAgIGZ1bmN0aW9uIHN0b3BwZWQoKSB7CisgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0
aW9uKCkgeworICAgICAgICAgICAgICAgdHJ5IHsKKyAgICAgICAgICAgICAgICAgICAgd2luZG93
LndlYmtpdC5tZXNzYWdlSGFuZGxlcnMudGVzdEhhbmRsZXIucG9zdE1lc3NhZ2UoInBhdXNlZCIp
OworICAgICAgICAgICAgICAgfSBjYXRjaChlKSB7CisgICAgICAgICAgICAgICAgICAgY29uc29s
ZS5kZWJ1ZyhgZXJyb3I6ICR7ZX1gKTsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgfSwg
MCk7CisgICAgICAgIH0KKwogICAgIDwvc2NyaXB0PgogPC9oZWFkPgogPGJvZHk+Ci0gICAgPHZp
ZGVvIGF1dG9wbGF5IHRpdGxlPSJmb28iIG9ubW91c2Vkb3duPW1vdXNlZG93bigpIG9ucGxheWlu
Zz1wbGF5aW5nKCk+PHNvdXJjZSBzcmM9ImxhcmdlLXZpZGVvLXdpdGgtYXVkaW8ubXA0Ij48L3Zp
ZGVvPgorICAgIDx2aWRlbyBhdXRvcGxheSB0aXRsZT0iZm9vIiBvbm1vdXNlZG93bj1tb3VzZWRv
d24oKSBvbnBsYXlpbmc9cGxheWluZygpIG9ucGF1c2U9c3RvcHBlZCgpPjxzb3VyY2Ugc3JjPSJs
YXJnZS12aWRlby13aXRoLWF1ZGlvLm1wNCI+PC92aWRlbz4KKyAgICA8YnV0dG9uIG9uY2xpY2s9
ImNvbnNvbGUubG9nKHJlbW92ZVZpZGVvRWxlbWVudCgpKSI+U3RvcCE8L2J1dHRvbj4KIDwvYm9k
eT4KIDxodG1sPgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>