<?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>135225</bug_id>
          
          <creation_ts>2014-07-23 18:24:43 -0700</creation_ts>
          <short_desc>Web Inspector: add eject current recording button to the replay dashboard</short_desc>
          <delta_ts>2017-07-10 14:01:29 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Inspector</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>LATER</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>135170</dependson>
    
    <dependson>135212</dependson>
          <blocked>136292</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Brian Burg">burg</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>graouts</cc>
    
    <cc>inspector-bugzilla-changes</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1024419</commentid>
    <comment_count>0</comment_count>
    <who name="Brian Burg">burg</who>
    <bug_when>2014-07-23 18:24:43 -0700</bug_when>
    <thetext>Requires some plumbing!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1024420</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2014-07-23 18:24:52 -0700</bug_when>
    <thetext>&lt;rdar://problem/17789274&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1024424</commentid>
    <comment_count>2</comment_count>
      <attachid>235401</attachid>
    <who name="Brian Burg">burg</who>
    <bug_when>2014-07-23 18:50:16 -0700</bug_when>
    <thetext>Created attachment 235401
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1026902</commentid>
    <comment_count>3</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2014-08-05 11:38:21 -0700</bug_when>
    <thetext>I am not sure the dashboard is the right place for this. I would expect to see if in the control navigation bar in the Timeline sidebar.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1026903</commentid>
    <comment_count>4</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2014-08-05 11:39:14 -0700</bug_when>
    <thetext>Though I suppose it can be in both places, like the Debugger dashboard has resume. Is eject a common enough action to put into the dashboard that you need to do it while looking at other views/sidebars?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1028371</commentid>
    <comment_count>5</comment_count>
      <attachid>236417</attachid>
    <who name="Brian Burg">burg</who>
    <bug_when>2014-08-11 17:37:07 -0700</bug_when>
    <thetext>Created attachment 236417
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1028375</commentid>
    <comment_count>6</comment_count>
    <who name="Brian Burg">burg</who>
    <bug_when>2014-08-11 17:42:27 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; Though I suppose it can be in both places, like the Debugger dashboard has resume. Is eject a common enough action to put into the dashboard that you need to do it while looking at other views/sidebars?

Eject is a common action, because it unlocks user input and other controls on determinism. So if you had been interacting with a captured execution, ejecting the current session will allow new user inputs, navigations, timers, etc to be processed.

I do think that it also belongs in the timelines sidebar panel navigation bar. Those buttons need to be updated: currently they do not listen for replay events (paused, ejected, etc) so they don&apos;t always match the dashboard buttons.

The important parts of this patch are the additions to the protocol and manager that implement an &quot;eject&quot; operation. The buttons are a way to test this until replay recordings and timeline recordings are better integrated in the UI.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1028376</commentid>
    <comment_count>7</comment_count>
      <attachid>236417</attachid>
    <who name="Brian Burg">burg</who>
    <bug_when>2014-08-11 17:44:51 -0700</bug_when>
    <thetext>Comment on attachment 236417
Patch

This is rebaselined and follows new conventions for promise-based APIs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1028402</commentid>
    <comment_count>8</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2014-08-11 19:41:54 -0700</bug_when>
    <thetext>Maybe eject and the icon are not the best terms. Maybe a mouse icon or something like that would be better? Maybe it could be crossed out or locked when replaying. As a user I wouldn&apos;t think eject meant I could interact with the page again. I would almost think unload the page and go to about:blank.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1327169</commentid>
    <comment_count>9</comment_count>
    <who name="Blaze Burg">bburg</who>
    <bug_when>2017-07-10 14:01:29 -0700</bug_when>
    <thetext>Closing web replay-related bugs until we resume working on the feature again.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>235401</attachid>
            <date>2014-07-23 18:50:16 -0700</date>
            <delta_ts>2014-08-11 17:36:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-135225-20140723185002.patch</filename>
            <type>text/plain</type>
            <size>17040</size>
            <attacher name="Brian Burg">burg</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTcxMjQ3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzAwMzQ4NDZkNzE4Yjlh
ZTc3NTY1NTU5MTRlMDRlYTQwNTc0YmQ5Mi4uMDdjZGVmZWM4N2JhNWVmYWM5ODM3N2U0NGI0MGM4
ZDBlZTA2OGMyZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDIwIEBACiAyMDE0LTA3LTIzICBCcmlh
biBKLiBCdXJnICA8YnVyZ0Bjcy53YXNoaW5ndG9uLmVkdT4KIAorICAgICAgICBXZWIgSW5zcGVj
dG9yOiBhZGQgZWplY3QgY3VycmVudCByZWNvcmRpbmcgYnV0dG9uIHRvIHRoZSByZXBsYXkgZGFz
aGJvYXJkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
MzUyMjUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBB
ZGQgYSBwcm90b2NvbCBtZXRob2QgdGhhdCBjcmVhdGVzIGFuIGVtcHR5IHJlcGxheSBzZXNzaW9u
LiBUbyBlamVjdCwgdGhlCisgICAgICAgIGZyb250ZW5kIGNyZWF0ZXMgYW4gZW1wdHkgc2Vzc2lv
biBhbmQgdGhlbiBzd2l0Y2hlcyB0byBpdC4KKworICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0
b3JSZXBsYXlBZ2VudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JSZXBsYXlBZ2Vu
dDo6Y3JlYXRlU2Vzc2lvbik6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvclJlcGxheUFn
ZW50Lmg6CisgICAgICAgICogaW5zcGVjdG9yL3Byb3RvY29sL1JlcGxheS5qc29uOgorCisyMDE0
LTA3LTIzICBCcmlhbiBKLiBCdXJnICA8YnVyZ0Bjcy53YXNoaW5ndG9uLmVkdT4KKwogICAgICAg
ICBXZWIgUmVwbGF5OiBsb2cgYW5kIGVuZm9yY2Ugc2Vzc2lvbi9zZWdtZW50IHN0YXRlIG1hY2hp
bmUgdHJhbnNpdGlvbnMKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTEzNTIyNAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvQ2hhbmdl
TG9nIGIvU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZwppbmRleCA5MGI0OGY4OGE4MGRi
ODAzZWNiNWY3MDkwMmNjNDc4MDkyM2I3YTczLi5iMDk1NjcwNzNmNGVhMDMyMmI3M2VkNzYwYmVi
ODNhMWM4MjFiY2Q4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvQ2hhbmdlTG9n
CisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKQEAgLTEsNSArMSwzNiBAQAog
MjAxNC0wNy0yMyAgQnJpYW4gSi4gQnVyZyAgPGJ1cmdAY3Mud2FzaGluZ3Rvbi5lZHU+CiAKKyAg
ICAgICAgV2ViIEluc3BlY3RvcjogYWRkIGVqZWN0IGN1cnJlbnQgcmVjb3JkaW5nIGJ1dHRvbiB0
byB0aGUgcmVwbGF5IGRhc2hib2FyZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTM1MjI1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgQWRkIGEgbmV3IGVqZWN0IGJ1dHRvbiBpdGVtIHRvIHRoZSByZXBsYXkg
ZGFzaGJvYXJkJ3MgZW1iZWRkZWQgbmF2aWdhdGlvbiBiYXIuCisgICAgICAgIFRoZSBlamVjdCBi
dXR0b24ncyB2aXNpYmlsaXR5IGlzIG11dHVhbGx5IGV4Y2x1c2l2ZSB3aXRoIHRoYXQgb2YgdGhl
IHJlY29yZCBidXR0b24uCisKKyAgICAgICAgV2hlbiB0aGUgZWplY3QgYnV0dG9uIGlzIGNsaWNr
ZWQsIGEgbmV3LCBlbXB0eSBzZXNzaW9uIGlzIGNyZWF0ZWQgYW5kIHRoZW4gbG9hZGVkLgorCisg
ICAgICAgICogTG9jYWxpemF0aW9ucy9lbi5scHJvai9sb2NhbGl6ZWRTdHJpbmdzLmpzOgorICAg
ICAgICAqIFVzZXJJbnRlcmZhY2UvQmFzZS9PYmplY3QuanM6CisgICAgICAgICgud3JhcHBlZENh
bGxiYWNrKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5PYmplY3QuYWRkU2luZ2xlRmlyZUV2ZW50
TGlzdGVuZXIpOiBBZGRlZC4gQ29udmVuaWVuY2Ugd3JhcHBlciB0aGF0CisgICAgICAgIG1ha2Vz
IGl0IHBvc3NpYmxlIHRvIGZ1bGZpbGwgYSBwcm9taXNlIHVzaW5nIFdlYkluc3BlY3Rvci5PYmpl
Y3QgbGlzdGVuZXJzIHdpdGhvdXQgbGVha2luZy4KKworICAgICAgICAqIFVzZXJJbnRlcmZhY2Uv
Q29udHJvbGxlcnMvUmVwbGF5TWFuYWdlci5qczogQWRkIG1ldGhvZHMgdGhhdCBmb3J3YXJkIHRv
IHByb3RvY29sIGNvbW1hbmRzLgorICAgICAgICAoV2ViSW5zcGVjdG9yLlJlcGxheU1hbmFnZXIu
cHJvdG90eXBlLnNlc3Npb25Mb2FkZWQpOiBBZGRlZC4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5S
ZXBsYXlNYW5hZ2VyLnByb3RvdHlwZS5jcmVhdGVTZXNzaW9uKTogQWRkZWQuCisgICAgICAgIChX
ZWJJbnNwZWN0b3IuUmVwbGF5TWFuYWdlci5wcm90b3R5cGUuc3dpdGNoU2Vzc2lvbik6IEFkZGVk
LgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvUmVwbGF5RGFzaGJvYXJkVmlldy5qczoK
KyAgICAgICAgKFdlYkluc3BlY3Rvci5SZXBsYXlEYXNoYm9hcmRWaWV3KTogQWRkIGJ1dHRvbiwg
Y2xpY2sgbGlzdGVuZXIsIGFuZCBzZXNzaW9uQ2hhbmdlZCBsaXN0ZW5lci4KKyAgICAgICAgKFdl
Ykluc3BlY3Rvci5SZXBsYXlEYXNoYm9hcmRWaWV3LnByb3RvdHlwZS5fZWplY3RCdXR0b25JdGVt
Q2xpY2tlZC50aGVuKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5SZXBsYXlEYXNoYm9hcmRWaWV3
LnByb3RvdHlwZS5fZWplY3RCdXR0b25JdGVtQ2xpY2tlZCk6CisgICAgICAgIChXZWJJbnNwZWN0
b3IuUmVwbGF5RGFzaGJvYXJkVmlldy5wcm90b3R5cGUuX2NhcHR1cmVTdGFydGVkKToKKyAgICAg
ICAgKFdlYkluc3BlY3Rvci5SZXBsYXlEYXNoYm9hcmRWaWV3LnByb3RvdHlwZS5fY2FwdHVyZVN0
b3BwZWQpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlJlcGxheURhc2hib2FyZFZpZXcucHJvdG90
eXBlLl9wbGF5YmFja0ZpbmlzaGVkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5SZXBsYXlEYXNo
Ym9hcmRWaWV3LnByb3RvdHlwZS5fYWN0aXZlU2Vzc2lvbkNoYW5nZWQpOgorCisyMDE0LTA3LTIz
ICBCcmlhbiBKLiBCdXJnICA8YnVyZ0Bjcy53YXNoaW5ndG9uLmVkdT4KKwogICAgICAgICBXZWIg
SW5zcGVjdG9yOiBSZXBsYXlNYW5hZ2VyIHVzZXMgdW5kZWZpbmVkIGV2ZW50cyBhbmQgaW5jb25z
aXN0ZW50IGV2ZW50IGRhdGEKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTEzNTIyMgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
SW5zcGVjdG9yUmVwbGF5QWdlbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3Bl
Y3RvclJlcGxheUFnZW50LmNwcAppbmRleCBmOTM3YmYyOGM3ZWEyZjQ5MDM2MjQxY2NlNjViMmM1
NzFjOTY4MWYzLi5lNjEwMTQwNDJmZGVmNjY5MmJhODdhMWYxZGY5NGRlZjViZjViY2Y0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yUmVwbGF5QWdlbnQuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JSZXBsYXlBZ2VudC5jcHAK
QEAgLTM5MSw2ICszOTEsMTMgQEAgdm9pZCBJbnNwZWN0b3JSZXBsYXlBZ2VudDo6Y2FuY2VsUGxh
eWJhY2soRXJyb3JTdHJpbmcqIGVycm9yU3RyaW5nKQogICAgIG1fcGFnZS5yZXBsYXlDb250cm9s
bGVyKCkuY2FuY2VsUGxheWJhY2soKTsKIH0KIAordm9pZCBJbnNwZWN0b3JSZXBsYXlBZ2VudDo6
Y3JlYXRlU2Vzc2lvbihFcnJvclN0cmluZyosIFNlc3Npb25JZGVudGlmaWVyKiBpZGVudGlmaWVy
KQoreworICAgIFJlZlB0cjxSZXBsYXlTZXNzaW9uPiBzZXNzaW9uID0gUmVwbGF5U2Vzc2lvbjo6
Y3JlYXRlKCk7CisgICAgc2Vzc2lvbkNyZWF0ZWQoc2Vzc2lvbik7CisgICAgKmlkZW50aWZpZXIg
PSBXVEY6OnNhZmVDYXN0PGludD4oc2Vzc2lvbi0+aWRlbnRpZmllcigpKTsKK30KKwogdm9pZCBJ
bnNwZWN0b3JSZXBsYXlBZ2VudDo6c3dpdGNoU2Vzc2lvbihFcnJvclN0cmluZyogZXJyb3JTdHJp
bmcsIFNlc3Npb25JZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgQVNTRVJUKGlkZW50aWZp
ZXIgPiAwKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JS
ZXBsYXlBZ2VudC5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclJlcGxheUFn
ZW50LmgKaW5kZXggNjljMTRiNjU1NDRjODIzMTc5MjQ1YWM0ODBkY2Q0M2RjMzYxZjMwZi4uMGVk
MDcxMmUxZmE5MTgwN2M4YjAyY2ZjMmU2ZGUxNTBkNGJmYWU2NSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclJlcGxheUFnZW50LmgKKysrIGIvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclJlcGxheUFnZW50LmgKQEAgLTEwMCw2ICsxMDAsNyBA
QCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHBhdXNlUGxheWJhY2soRXJyb3JTdHJpbmcqKSBv
dmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgY2FuY2VsUGxheWJhY2soRXJyb3JTdHJpbmcqKSBv
dmVycmlkZTsKIAorICAgIHZpcnR1YWwgdm9pZCBjcmVhdGVTZXNzaW9uKEVycm9yU3RyaW5nKiwg
U2Vzc2lvbklkZW50aWZpZXIqKSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgc3dpdGNoU2Vz
c2lvbihFcnJvclN0cmluZyosIFNlc3Npb25JZGVudGlmaWVyKSBvdmVycmlkZTsKICAgICB2aXJ0
dWFsIHZvaWQgaW5zZXJ0U2Vzc2lvblNlZ21lbnQoRXJyb3JTdHJpbmcqLCBTZXNzaW9uSWRlbnRp
ZmllciwgU2VnbWVudElkZW50aWZpZXIsIGludCBzZWdtZW50SW5kZXgpIG92ZXJyaWRlOwogICAg
IHZpcnR1YWwgdm9pZCByZW1vdmVTZXNzaW9uU2VnbWVudChFcnJvclN0cmluZyosIFNlc3Npb25J
ZGVudGlmaWVyLCBpbnQgc2VnbWVudEluZGV4KSBvdmVycmlkZTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9SZXBsYXkuanNvbiBiL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9wcm90b2NvbC9SZXBsYXkuanNvbgppbmRleCA2YTc3NzI2OGVmNmViMjRjMTli
YmIzM2NhM2JjNjY5NjgxNTZhNDc2Li42NWJhMjg5NWU2N2U0Nzc4MTI1MGM1OTJkYzNiNWMyZjc3
Zjk2NmJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvUmVw
bGF5Lmpzb24KKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL3Byb3RvY29sL1JlcGxheS5q
c29uCkBAIC05OCw2ICs5OCwxMyBAQAogICAgICAgICAgICAgImRlc2NyaXB0aW9uIjogIkNhbmNl
bHMgcGxheWJhY2sgb2YgdGhlIGN1cnJlbnQgc2VnbWVudC4gRnVydGhlciByZXBsYXlpbmcgd2ls
bCBzdGFydCBmcm9tIHRoZSBiZWdpbm5pbmcgb2YgdGhlIGN1cnJlbnQgc2VnbWVudC4iCiAgICAg
ICAgIH0sCiAgICAgICAgIHsKKyAgICAgICAgICAgICJuYW1lIjogImNyZWF0ZVNlc3Npb24iLAor
ICAgICAgICAgICAgImRlc2NyaXB0aW9uIjogIkNyZWF0ZXMgYSBuZXcgYW5kIGVtcHR5IHNlc3Np
b24uIiwKKyAgICAgICAgICAgICJyZXR1cm5zIjogWworICAgICAgICAgICAgICAgIHsgIm5hbWUi
OiAic2Vzc2lvbklkZW50aWZpZXIiLCAiJHJlZiI6ICJTZXNzaW9uSWRlbnRpZmllciIsICJkZXNj
cmlwdGlvbiI6ICJUaGUgbmV3bHktY3JlYXRlZCBzZXNzaW9uJ3MgaWRlbnRpZmllci4iIH0KKyAg
ICAgICAgICAgIF0KKyAgICAgICAgfSwKKyAgICAgICAgewogICAgICAgICAgICAgIm5hbWUiOiAi
c3dpdGNoU2Vzc2lvbiIsCiAgICAgICAgICAgICAiZGVzY3JpcHRpb24iOiAiVW5sb2FkcyB0aGUg
Y3VycmVudCByZXBsYXkgc2Vzc2lvbiBhbmQgbG9hZHMgdGhlIHNwZWNpZmllZCBzZXNzaW9uIiwK
ICAgICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3Bl
Y3RvclVJL0xvY2FsaXphdGlvbnMvZW4ubHByb2ovbG9jYWxpemVkU3RyaW5ncy5qcyBiL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Mb2NhbGl6YXRpb25zL2VuLmxwcm9qL2xvY2FsaXplZFN0cmluZ3Mu
anMKaW5kZXggN2UyMDE1MGYxOWRmMzM2Y2Q3ZTVhODBlNjZmYWY1OGJhYjg1ZThkNS4uMTBhOTAw
MDI3NTJiNjFkNmI4YjFkMWIyYTA3OWMwNTdlODAwYjljZCAxMDA2NDQKR0lUIGJpbmFyeSBwYXRj
aApkZWx0YSA1OQp6Y21YQEdtVStgVTxfJH1vKnN+Wj84SWw9RkNNN0YheC12akhsUSRmK3BTPDZo
Wj9ibHspYTJaN3RJNSZNSGsxMjMKTHI4WS05ciVuYXtZaWt0KQoKZGVsdGEgMjIKZWNtZG5BamBf
ZV48XyR9b0Nmb2ItT3I5R3F3YnxEQj50cTBQKiRNT2oKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9CYXNlL09iamVjdC5qcyBiL1NvdXJjZS9XZWJJbnNw
ZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0Jhc2UvT2JqZWN0LmpzCmluZGV4IGU1ODJmZWI5NjNjMWE3
ZTAxMTc1MGIxMzNlNDlhMjZkNWI4YzU2YTMuLmU3MzVmMGQxNzBkYTJiYTZlMzNlZGNjNDhhNzJi
NmU2NGQxNDZiODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL0Jhc2UvT2JqZWN0LmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL0Jhc2UvT2JqZWN0LmpzCkBAIC02OCw2ICs2OCwyMCBAQCBXZWJJbnNwZWN0b3IuT2JqZWN0
LmFkZEV2ZW50TGlzdGVuZXIgPSBmdW5jdGlvbihldmVudFR5cGUsIGxpc3RlbmVyLCB0aGlzT2Jq
ZWN0KQogICAgIGxpc3RlbmVycy5wdXNoKHt0aGlzT2JqZWN0OiB0aGlzT2JqZWN0LCBsaXN0ZW5l
cjogbGlzdGVuZXJ9KTsKIH07CiAKK1dlYkluc3BlY3Rvci5PYmplY3QuYWRkU2luZ2xlRmlyZUV2
ZW50TGlzdGVuZXIgPSBmdW5jdGlvbihldmVudFR5cGUsIGxpc3RlbmVyLCB0aGlzT2JqZWN0KQor
eworICAgIGNvbnNvbGUuYXNzZXJ0KGxpc3RlbmVyLCAiT2JqZWN0LmFkZEV2ZW50TGlzdGVuZXI6
IGludmFsaWQgbGlzdGVuZXIgIiwgbGlzdGVuZXIsICIoZXZlbnQgdHlwZTogIiwgZXZlbnRUeXBl
LCAidGhpc09iamVjdDogIiwgdGhpc09iamVjdCwgIikiKTsKKyAgICBpZiAoIWxpc3RlbmVyKQor
ICAgICAgICByZXR1cm47CisKKyAgICB2YXIgd3JhcHBlZENhbGxiYWNrID0gZnVuY3Rpb24oZXZl
bnQpIHsKKyAgICAgICAgdGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKGV2ZW50VHlwZSwgd3JhcHBl
ZENhbGxiYWNrLCB0aGlzT2JqZWN0KTsKKyAgICAgICAgbGlzdGVuZXIuY2FsbCh0aGlzT2JqZWN0
LCBldmVudCk7CisgICAgfS5iaW5kKHRoaXMpOworCisgICAgdGhpcy5hZGRFdmVudExpc3RlbmVy
KGV2ZW50VHlwZSwgd3JhcHBlZENhbGxiYWNrLCB0aGlzT2JqZWN0KTsKK307CisKIFdlYkluc3Bl
Y3Rvci5PYmplY3QucmVtb3ZlRXZlbnRMaXN0ZW5lciA9IGZ1bmN0aW9uKGV2ZW50VHlwZSwgbGlz
dGVuZXIsIHRoaXNPYmplY3QpCiB7CiAgICAgZXZlbnRUeXBlID0gZXZlbnRUeXBlIHx8IG51bGw7
CkBAIC0xMTgsNiArMTMyLDggQEAgV2ViSW5zcGVjdG9yLk9iamVjdC5wcm90b3R5cGUgPSB7CiAK
ICAgICBhZGRFdmVudExpc3RlbmVyOiBXZWJJbnNwZWN0b3IuT2JqZWN0LmFkZEV2ZW50TGlzdGVu
ZXIsCiAKKyAgICBhZGRTaW5nbGVGaXJlRXZlbnRMaXN0ZW5lcjogV2ViSW5zcGVjdG9yLk9iamVj
dC5hZGRTaW5nbGVGaXJlRXZlbnRMaXN0ZW5lciwKKwogICAgIHJlbW92ZUV2ZW50TGlzdGVuZXI6
IFdlYkluc3BlY3Rvci5PYmplY3QucmVtb3ZlRXZlbnRMaXN0ZW5lciwKIAogICAgIHJlbW92ZUFs
bExpc3RlbmVyczogV2ViSW5zcGVjdG9yLk9iamVjdC5yZW1vdmVBbGxMaXN0ZW5lcnMsCkBAIC0x
MjYsNiArMTQyLDEwIEBAIFdlYkluc3BlY3Rvci5PYmplY3QucHJvdG90eXBlID0gewogCiAgICAg
ZGlzcGF0Y2hFdmVudFRvTGlzdGVuZXJzOiBmdW5jdGlvbihldmVudFR5cGUsIGV2ZW50RGF0YSkK
ICAgICB7CisgICAgICAgIGNvbnNvbGUuYXNzZXJ0KGV2ZW50VHlwZSwgIk9iamVjdC5kaXNwYXRj
aEV2ZW50VG9MaXN0ZW5lcnM6IGludmFsaWQgZXZlbnQgdHlwZSAiLCBldmVudFR5cGUpOworICAg
ICAgICBpZiAoIWV2ZW50VHlwZSkKKyAgICAgICAgICAgIHJldHVybjsKKwogICAgICAgICB2YXIg
ZXZlbnQgPSBuZXcgV2ViSW5zcGVjdG9yLkV2ZW50KHRoaXMsIGV2ZW50VHlwZSwgZXZlbnREYXRh
KTsKIAogICAgICAgICBmdW5jdGlvbiBkaXNwYXRjaChvYmplY3QpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Db250cm9sbGVycy9SZXBsYXlNYW5hZ2Vy
LmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQ29udHJvbGxlcnMvUmVw
bGF5TWFuYWdlci5qcwppbmRleCAzNWVkYmZjYzY3ZTYwOGY2NDk3ZGViMjdhYTI0NDcxY2JlNWIz
N2U0Li5lNTljMWQ5MDM5ZmYzOGMyNTcyN2FmZjU1ZjU0MDZjODVmNDg5NzkzIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Db250cm9sbGVycy9SZXBsYXlN
YW5hZ2VyLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0NvbnRy
b2xsZXJzL1JlcGxheU1hbmFnZXIuanMKQEAgLTMyNiw2ICszMjYsMTUgQEAgV2ViSW5zcGVjdG9y
LlJlcGxheU1hbmFnZXIucHJvdG90eXBlID0gewogICAgICAgICAgICAgfSk7CiAgICAgfSwKIAor
ICAgIHNlc3Npb25Mb2FkZWQ6IGZ1bmN0aW9uKHNlc3Npb25JZCkKKyAgICB7CisgICAgICAgIGlm
ICghdGhpcy5faW5pdGlhbGl6ZWQpCisgICAgICAgICAgICByZXR1cm4gdGhpcy53YWl0VW50aWxJ
bml0aWFsaXplZCgpLnRoZW4odGhpcy5zZXNzaW9uTG9hZGVkLmJpbmQodGhpcywgc2Vzc2lvbklk
KSk7CisKKyAgICAgICAgdGhpcy5fYWN0aXZlU2Vzc2lvbklkZW50aWZpZXIgPSBzZXNzaW9uSWQ7
CisgICAgICAgIHRoaXMuZGlzcGF0Y2hFdmVudFRvTGlzdGVuZXJzKFdlYkluc3BlY3Rvci5SZXBs
YXlNYW5hZ2VyLkV2ZW50LkFjdGl2ZVNlc3Npb25DaGFuZ2VkLCB7c2Vzc2lvbklkOiBzZXNzaW9u
SWR9KTsKKyAgICB9LAorCiAgICAgc2VnbWVudENyZWF0ZWQ6IGZ1bmN0aW9uKHNlZ21lbnRJZCkK
ICAgICB7CiAgICAgICAgIGlmICghdGhpcy5faW5pdGlhbGl6ZWQpCkBAIC00NzIsNiArNDgxLDE5
IEBAIFdlYkluc3BlY3Rvci5SZXBsYXlNYW5hZ2VyLnByb3RvdHlwZSA9IHsKICAgICAgICAgUmVw
bGF5QWdlbnQuc3RvcFBsYXliYWNrKCk7CiAgICAgfSwKIAorICAgIGNyZWF0ZVNlc3Npb246IGZ1
bmN0aW9uKCkKKyAgICB7CisgICAgICAgIFJlcGxheUFnZW50LmNyZWF0ZVNlc3Npb24oKTsKKyAg
ICB9LAorCisgICAgc3dpdGNoU2Vzc2lvbjogZnVuY3Rpb24oc2Vzc2lvbklkKSB7CisgICAgICAg
IGNvbnNvbGUuYXNzZXJ0KHRoaXMuc2Vzc2lvblN0YXRlID09PSBXZWJJbnNwZWN0b3IuUmVwbGF5
TWFuYWdlci5TZXNzaW9uU3RhdGUuSW5hY3RpdmUpOworICAgICAgICBjb25zb2xlLmFzc2VydCh0
aGlzLnNlZ21lbnRTdGF0ZSA9PT0gV2ViSW5zcGVjdG9yLlJlcGxheU1hbmFnZXIuU2VnbWVudFN0
YXRlLlVubG9hZGVkKTsKKyAgICAgICAgY29uc29sZS5hc3NlcnQodGhpcy5fc2Vzc2lvbnMuaGFz
KHNlc3Npb25JZCksICJVbmtub3duIHNlc3Npb24gaWRlbnRpZmllcjoiLCBzZXNzaW9uSWQpOwor
CisgICAgICAgIFJlcGxheUFnZW50LnN3aXRjaFNlc3Npb24oc2Vzc2lvbklkKTsKKyAgICB9LAor
CiAgICAgLy8gUHJpdmF0ZQogCiAgICAgX2NoYW5nZVNlc3Npb25TdGF0ZTogZnVuY3Rpb24obmV3
U3RhdGUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9J
bWFnZXMvUmVwbGF5RWplY3RCdXR0b24uc3ZnIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJ
bnRlcmZhY2UvSW1hZ2VzL1JlcGxheUVqZWN0QnV0dG9uLnN2ZwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zYjY0YTA3
NmM1YmVmNmQ0NzdmZmIwZDg5NDA0MzRlMWUxMGJlMDQwCi0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvSW1hZ2VzL1JlcGxheUVqZWN0QnV0dG9u
LnN2ZwpAQCAtMCwwICsxLDggQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9InV0Zi04
Ij8+DQorPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE0LjAuMCwgU1ZHIEV4cG9y
dCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgNDMzNjMpICAtLT4NCis8IURPQ1RZ
UEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9y
Zy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPg0KKzxzdmcgdmVyc2lvbj0iMS4xIiBp
ZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGlu
az0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiDQorCSB3aWR0
aD0iMzZweCIgaGVpZ2h0PSIzNnB4IiB2aWV3Qm94PSIwIDAgMzYgMzYiIGVuYWJsZS1iYWNrZ3Jv
dW5kPSJuZXcgMCAwIDM2IDM2IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCis8cmVjdCB4PSI0LjM5
NSIgeT0iMjYuNzY0IiB3aWR0aD0iMjcuMjExIiBoZWlnaHQ9IjUiLz4NCis8cG9seWdvbiBwb2lu
dHM9IjQuNTc2LDIxLjcwOSAxOCw0LjY1OCAzMS40MjQsMjEuNzA5ICIvPg0KKzwvc3ZnPg0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1JlcGxh
eURhc2hib2FyZFZpZXcuY3NzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2Uv
Vmlld3MvUmVwbGF5RGFzaGJvYXJkVmlldy5jc3MKaW5kZXggMDFiNmU2ZWY4MTVkMjNmYzY0MDYx
MWIzOTQzZGNkNmExYTBkMDg5Mi4uODRjZmEyMmFlYjMyNjgyOWU0YjE3YWY4OWRjNzNlNjQ2Mzc4
YTMzYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmll
d3MvUmVwbGF5RGFzaGJvYXJkVmlldy5jc3MKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1Vz
ZXJJbnRlcmZhY2UvVmlld3MvUmVwbGF5RGFzaGJvYXJkVmlldy5jc3MKQEAgLTM4LDYgKzM4LDE4
IEBACiAgICAgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50OwogfQogCisudG9vbGJhciAu
ZGFzaGJvYXJkLnJlcGxheSA+IC5yZWNvcmRpbmctY29udGFpbmVyIHsKKyAgICAtd2Via2l0LWZs
ZXgtZ3JvdzogMTsKKyAgICAtd2Via2l0LW9yZGVyOiAyOworICAgIGJvcmRlcjogMXB4IHNvbGlk
ICNhYWE7CisgICAgaGVpZ2h0OiAyMnB4OworICAgIG1hcmdpbi1sZWZ0OiA0cHg7Cit9CisKKy50
b29sYmFyLmxhYmVsLW9ubHkgLmRhc2hib2FyZC5yZXBsYXkgPiAucmVjb3JkaW5nLWNvbnRhaW5l
ciB7CisgICAgaGVpZ2h0OiAxNnB4OworfQorCiAudG9vbGJhciAuZGFzaGJvYXJkLnJlcGxheSAu
aXRlbS5idXR0b24gPiAuZ2x5cGggewogICAgIC8qIEJ1dHRvbk5hdmlnYXRpb25JdGVtIGlzIG5v
dCBhd2FyZSBvZiBhbHRlcm5hdGUgYnV0dG9uIHNpemVzLCBzbyBvdmVycmlkZSBoZXJlLiAqLwog
ICAgIHdpZHRoOiAxNnB4ICFpbXBvcnRhbnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9SZXBsYXlEYXNoYm9hcmRWaWV3LmpzIGIvU291cmNl
L1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvUmVwbGF5RGFzaGJvYXJkVmlldy5q
cwppbmRleCA2ZTBjY2JjNWQ4Mjc3MTM4MjM4ZTk3MWNiMWM3OWQwNDRjNmE3YjQ1Li5kY2ZmYzBl
YTUxNjc1OGRlNjMxM2QzYTBhMGNmYzZiYjliNjY2MjhlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9SZXBsYXlEYXNoYm9hcmRWaWV3LmpzCisr
KyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1JlcGxheURhc2hi
b2FyZFZpZXcuanMKQEAgLTQyLDE4ICs0MiwyNyBAQCBXZWJJbnNwZWN0b3IuUmVwbGF5RGFzaGJv
YXJkVmlldyA9IGZ1bmN0aW9uKHJlcHJlc2VudGVkT2JqZWN0KQogICAgIHRoaXMuX3JlcGxheUJ1
dHRvbkl0ZW0uaGlkZGVuID0gdHJ1ZTsKICAgICB0aGlzLl9uYXZpZ2F0aW9uQmFyLmFkZE5hdmln
YXRpb25JdGVtKHRoaXMuX3JlcGxheUJ1dHRvbkl0ZW0pOwogCisgICAgdGhpcy5fZWplY3RCdXR0
b25JdGVtID0gbmV3IFdlYkluc3BlY3Rvci5CdXR0b25OYXZpZ2F0aW9uSXRlbSgicmVwbGF5LWRh
c2hib2FyZC1lamVjdCIsIFdlYkluc3BlY3Rvci5VSVN0cmluZygiRWplY3QgUmVjb3JkaW5nIiks
ICJJbWFnZXMvUmVwbGF5RWplY3RCdXR0b24uc3ZnIiwgMTYsIDE2KTsKKyAgICB0aGlzLl9lamVj
dEJ1dHRvbkl0ZW0uYWRkRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuQnV0dG9uTmF2aWdhdGlv
bkl0ZW0uRXZlbnQuQ2xpY2tlZCwgdGhpcy5fZWplY3RCdXR0b25JdGVtQ2xpY2tlZCwgdGhpcyk7
CisgICAgdGhpcy5fZWplY3RCdXR0b25JdGVtLmhpZGRlbiA9IHRydWU7CisgICAgdGhpcy5fbmF2
aWdhdGlvbkJhci5hZGROYXZpZ2F0aW9uSXRlbSh0aGlzLl9lamVjdEJ1dHRvbkl0ZW0pOworCisg
ICAgdmFyIHJlY29yZGluZ0NvbnRhaW5lckVsZW1lbnQgPSB0aGlzLl9yZWNvcmRpbmdDb250YWlu
ZXJFbGVtZW50ID0gdGhpcy5lbGVtZW50LmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoImRpdiIpKTsKKyAgICByZWNvcmRpbmdDb250YWluZXJFbGVtZW50LmNsYXNzTmFtZSA9IFdl
Ykluc3BlY3Rvci5SZXBsYXlEYXNoYm9hcmRWaWV3LlJlY29yZGluZ0NvbnRhaW5lclN0eWxlQ2xh
c3NOYW1lOworCiAgICAgLy8gQWRkIGV2ZW50cyByZXF1aXJlZCB0byB0cmFjayBjYXB0dXJlIGFu
ZCByZXBsYXkgc3RhdGUuCiAgICAgV2ViSW5zcGVjdG9yLnJlcGxheU1hbmFnZXIuYWRkRXZlbnRM
aXN0ZW5lcihXZWJJbnNwZWN0b3IuUmVwbGF5TWFuYWdlci5FdmVudC5DYXB0dXJlU3RhcnRlZCwg
dGhpcy5fY2FwdHVyZVN0YXJ0ZWQsIHRoaXMpOwogICAgIFdlYkluc3BlY3Rvci5yZXBsYXlNYW5h
Z2VyLmFkZEV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLlJlcGxheU1hbmFnZXIuRXZlbnQuQ2Fw
dHVyZVN0b3BwZWQsIHRoaXMuX2NhcHR1cmVTdG9wcGVkLCB0aGlzKTsKICAgICBXZWJJbnNwZWN0
b3IucmVwbGF5TWFuYWdlci5hZGRFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5SZXBsYXlNYW5h
Z2VyLkV2ZW50LlBsYXliYWNrU3RhcnRlZCwgdGhpcy5fcGxheWJhY2tTdGFydGVkLCB0aGlzKTsK
ICAgICBXZWJJbnNwZWN0b3IucmVwbGF5TWFuYWdlci5hZGRFdmVudExpc3RlbmVyKFdlYkluc3Bl
Y3Rvci5SZXBsYXlNYW5hZ2VyLkV2ZW50LlBsYXliYWNrUGF1c2VkLCB0aGlzLl9wbGF5YmFja1Bh
dXNlZCwgdGhpcyk7CiAgICAgV2ViSW5zcGVjdG9yLnJlcGxheU1hbmFnZXIuYWRkRXZlbnRMaXN0
ZW5lcihXZWJJbnNwZWN0b3IuUmVwbGF5TWFuYWdlci5FdmVudC5QbGF5YmFja0ZpbmlzaGVkLCB0
aGlzLl9wbGF5YmFja0ZpbmlzaGVkLCB0aGlzKTsKKyAgICBXZWJJbnNwZWN0b3IucmVwbGF5TWFu
YWdlci5hZGRFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5SZXBsYXlNYW5hZ2VyLkV2ZW50LkFj
dGl2ZVNlc3Npb25DaGFuZ2VkLCB0aGlzLl9hY3RpdmVTZXNzaW9uQ2hhbmdlZCwgdGhpcyk7CiAK
ICAgICAvLyBNYW51YWxseSBpbml0aWFsaXplIHN0eWxlIGNsYXNzZXMgYnkgcXVlcnlpbmcgY3Vy
cmVudCByZXBsYXkgc3RhdGUuCiAgICAgaWYgKFdlYkluc3BlY3Rvci5yZXBsYXlNYW5hZ2VyLnNl
c3Npb25TdGF0ZSA9PT0gV2ViSW5zcGVjdG9yLlJlcGxheU1hbmFnZXIuU2Vzc2lvblN0YXRlLkNh
cHR1cmluZykKICAgICAgICAgdGhpcy5fY2FwdHVyZVN0YXJ0ZWQoKTsKICAgICBlbHNlIGlmIChX
ZWJJbnNwZWN0b3IucmVwbGF5TWFuYWdlci5zZXNzaW9uU3RhdGUgPT09IFdlYkluc3BlY3Rvci5S
ZXBsYXlNYW5hZ2VyLlNlc3Npb25TdGF0ZS5JbmFjdGl2ZSkKLSAgICAgICAgdGhpcy5fY2FwdHVy
ZVN0b3BwZWQoKTsKKyAgICAgICAgdGhpcy5fYWN0aXZlU2Vzc2lvbkNoYW5nZWQoKTsKICAgICAv
LyBSZXBsYXlNYW5hZ2VyLnNlc3Npb25TdGF0ZSBtdXN0IGJlIFJlcGxheWluZy4KICAgICBlbHNl
IGlmIChXZWJJbnNwZWN0b3IucmVwbGF5TWFuYWdlci5zZWdtZW50U3RhdGUgPT09IFdlYkluc3Bl
Y3Rvci5SZXBsYXlNYW5hZ2VyLlNlZ21lbnRTdGF0ZS5EaXNwYXRjaGluZykKICAgICAgICAgdGhp
cy5fcGxheWJhY2tTdGFydGVkKCk7CkBAIC05NSwxMSArMTA0LDM2IEBAIFdlYkluc3BlY3Rvci5S
ZXBsYXlEYXNoYm9hcmRWaWV3LnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgIFdlYkluc3BlY3Rv
ci5yZXBsYXlNYW5hZ2VyLnJlcGxheVRvQ29tcGxldGlvbigpOwogICAgIH0sCiAKKyAgICBfZWpl
Y3RCdXR0b25JdGVtQ2xpY2tlZDogZnVuY3Rpb24oZXZlbnQpCisgICAgeworICAgICAgICBjb25z
b2xlLmFzc2VydChXZWJJbnNwZWN0b3IucmVwbGF5TWFuYWdlci5zZXNzaW9uU3RhdGUgIT09IFdl
Ykluc3BlY3Rvci5SZXBsYXlNYW5hZ2VyLlNlc3Npb25TdGF0ZS5DYXB0dXJpbmcsICJUcmllZCB0
byBlamVjdCBzZXNzaW9uIHdoaWxlIFNlc3Npb25TdGF0ZSBpcyBDYXB0dXJpbmchIik7CisKKyAg
ICAgICAgLy8gRGVib3VuY2UuCisgICAgICAgIHRoaXMuX2VqZWN0QnV0dG9uSXRlbS5lbmFibGVk
ID0gZmFsc2U7CisKKyAgICAgICAgdmFyIGJ1dHRvbiA9IHRoaXMuX2VqZWN0QnV0dG9uSXRlbTsK
KworICAgICAgICBuZXcgUHJvbWlzZShmdW5jdGlvbiBjcmVhdGVFbXB0eVNlc3Npb24ocmVzb2x2
ZSwgcmVqZWN0KSB7CisgICAgICAgICAgICAvLyBGSVhNRTogdGhpcyBsaXN0ZW5lciBzaG91bGQg
bm90IGJlIG5lY2Vzc2FyeSB3aGVuIFJlcGxheU1hbmFnZXIgQVBJIGJlY29tZXMgZnVsbHkgYXN5
bmMuCisgICAgICAgICAgICBXZWJJbnNwZWN0b3IucmVwbGF5TWFuYWdlci5hZGRTaW5nbGVGaXJl
RXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuUmVwbGF5TWFuYWdlci5FdmVudC5TZXNzaW9uQWRk
ZWQsIHJlc29sdmUpOworICAgICAgICAgICAgV2ViSW5zcGVjdG9yLnJlcGxheU1hbmFnZXIuY3Jl
YXRlU2Vzc2lvbigpOworICAgICAgICB9KS50aGVuKGZ1bmN0aW9uIGZvcmNlU2Vzc2lvblRvQmVM
b2FkZWQoZXZlbnQpIHsKKyAgICAgICAgICAgIHZhciBzZXNzaW9uSWQgPSBldmVudC5kYXRhLnNl
c3Npb25JZDsKKyAgICAgICAgICAgIHJldHVybiBXZWJJbnNwZWN0b3IucmVwbGF5TWFuYWdlci5n
ZXRTZXNzaW9uKHNlc3Npb25JZCk7CisgICAgICAgIH0pLnRoZW4oZnVuY3Rpb24gc3dpdGNoVG9F
bXB0eVNlc3Npb24oc2Vzc2lvbikgeworICAgICAgICAgICAgV2ViSW5zcGVjdG9yLnJlcGxheU1h
bmFnZXIuc3dpdGNoU2Vzc2lvbihzZXNzaW9uLmlkZW50aWZpZXIpOworICAgICAgICAgICAgYnV0
dG9uLmVuYWJsZWQgPSB0cnVlOworICAgICAgICB9KS5jYXRjaChmdW5jdGlvbihlcnJvcikgewor
ICAgICAgICAgICAgY29uc29sZS5lcnJvcigiRmFpbGVkIHRvIGVqZWN0IGN1cnJlY3QgcmVjb3Jk
aW5nOiAiLCBlcnJvcik7CisgICAgICAgIH0pOworICAgIH0sCisKICAgICBfY2FwdHVyZVN0YXJ0
ZWQ6IGZ1bmN0aW9uKCkKICAgICB7CiAgICAgICAgIHRoaXMuX2NhcHR1cmVCdXR0b25JdGVtLmhp
ZGRlbiA9IGZhbHNlOwogICAgICAgICB0aGlzLl9jYXB0dXJlQnV0dG9uSXRlbS5hY3RpdmF0ZWQg
PSB0cnVlOwogICAgICAgICB0aGlzLl9yZXBsYXlCdXR0b25JdGVtLmhpZGRlbiA9IHRydWU7Cisg
ICAgICAgIHRoaXMuX2VqZWN0QnV0dG9uSXRlbS5oaWRkZW4gPSB0cnVlOwogICAgIH0sCiAKICAg
ICBfY2FwdHVyZVN0b3BwZWQ6IGZ1bmN0aW9uKCkKQEAgLTEwNyw2ICsxNDEsNyBAQCBXZWJJbnNw
ZWN0b3IuUmVwbGF5RGFzaGJvYXJkVmlldy5wcm90b3R5cGUgPSB7CiAgICAgICAgIHRoaXMuX2Nh
cHR1cmVCdXR0b25JdGVtLmFjdGl2YXRlZCA9IGZhbHNlOwogICAgICAgICB0aGlzLl9jYXB0dXJl
QnV0dG9uSXRlbS5oaWRkZW4gPSB0cnVlOwogICAgICAgICB0aGlzLl9yZXBsYXlCdXR0b25JdGVt
LmhpZGRlbiA9IGZhbHNlOworICAgICAgICB0aGlzLl9lamVjdEJ1dHRvbkl0ZW0uaGlkZGVuID0g
ZmFsc2U7CiAgICAgfSwKIAogICAgIF9wbGF5YmFja1N0YXJ0ZWQ6IGZ1bmN0aW9uKCkKQEAgLTEy
Miw1ICsxNTcsMjIgQEAgV2ViSW5zcGVjdG9yLlJlcGxheURhc2hib2FyZFZpZXcucHJvdG90eXBl
ID0gewogICAgIF9wbGF5YmFja0ZpbmlzaGVkOiBmdW5jdGlvbigpCiAgICAgewogICAgICAgICB0
aGlzLl9yZXBsYXlCdXR0b25JdGVtLnRvZ2dsZWQgPSBmYWxzZTsKKyAgICB9LAorCisgICAgX2Fj
dGl2ZVNlc3Npb25DaGFuZ2VkOiBmdW5jdGlvbigpCisgICAgeworICAgICAgICB2YXIgdmlldyA9
IHRoaXM7CisgICAgICAgIFdlYkluc3BlY3Rvci5yZXBsYXlNYW5hZ2VyLmdldFNlc3Npb24oV2Vi
SW5zcGVjdG9yLnJlcGxheU1hbmFnZXIuYWN0aXZlU2Vzc2lvbklkZW50aWZpZXIpCisgICAgICAg
ICAgICAudGhlbihmdW5jdGlvbihzZXNzaW9uKSB7CisgICAgICAgICAgICAgICAgaWYgKCFzZXNz
aW9uLnNlZ21lbnRzLmxlbmd0aCkgeworICAgICAgICAgICAgICAgICAgICB2aWV3Ll9jYXB0dXJl
QnV0dG9uSXRlbS5oaWRkZW4gPSBmYWxzZTsKKyAgICAgICAgICAgICAgICAgICAgdmlldy5fcmVw
bGF5QnV0dG9uSXRlbS5oaWRkZW4gPSB0cnVlOworICAgICAgICAgICAgICAgICAgICB2aWV3Ll9l
amVjdEJ1dHRvbkl0ZW0uaGlkZGVuID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICB9IGVsc2Ugewor
ICAgICAgICAgICAgICAgICAgICB2aWV3Ll9jYXB0dXJlQnV0dG9uSXRlbS5oaWRkZW4gPSB0cnVl
OworICAgICAgICAgICAgICAgICAgICB2aWV3Ll9yZXBsYXlCdXR0b25JdGVtLmhpZGRlbiA9IGZh
bHNlOworICAgICAgICAgICAgICAgICAgICB2aWV3Ll9lamVjdEJ1dHRvbkl0ZW0uaGlkZGVuID0g
ZmFsc2U7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfSk7CiAgICAgfQogfTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>236417</attachid>
            <date>2014-08-11 17:37:07 -0700</date>
            <delta_ts>2015-07-09 00:09:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-135225-20140811173649.patch</filename>
            <type>text/plain</type>
            <size>15243</size>
            <attacher name="Brian Burg">burg</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTcyNDIwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzQ0MmQwN2M0MjFhZDFm
ZGI0OGE4ZTQyYWMwY2I5OGZiNGVlYWYzOS4uODYyOTdlNjM4YWI1N2JlMmIxZjJlYTgwNzRiNmE3
MWVjNWUxMThkNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDE0LTA4LTExICBCcmlh
biBKLiBCdXJnICA8YnVyZ0Bjcy53YXNoaW5ndG9uLmVkdT4KKworICAgICAgICBXZWIgSW5zcGVj
dG9yOiBhZGQgZWplY3QgY3VycmVudCByZWNvcmRpbmcgYnV0dG9uIHRvIHRoZSByZXBsYXkgZGFz
aGJvYXJkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
MzUyMjUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBB
ZGQgYSBwcm90b2NvbCBtZXRob2QgdGhhdCBjcmVhdGVzIGFuIGVtcHR5IHJlcGxheSBzZXNzaW9u
LiBUbyBlamVjdCwgdGhlCisgICAgICAgIGZyb250ZW5kIGNyZWF0ZXMgYW4gZW1wdHkgc2Vzc2lv
biBhbmQgdGhlbiBzd2l0Y2hlcyB0byBpdC4KKworICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0
b3JSZXBsYXlBZ2VudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JSZXBsYXlBZ2Vu
dDo6Y3JlYXRlU2Vzc2lvbik6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvclJlcGxheUFn
ZW50Lmg6CisgICAgICAgICogaW5zcGVjdG9yL3Byb3RvY29sL1JlcGxheS5qc29uOgorCiAyMDE0
LTA4LTExICBCZXRoIERha2luICA8YmRha2luQGFwcGxlLmNvbT4KIAogICAgICAgICBGaXhlZCBi
YWNrZ3JvdW5kcyBkb24ndCBwYWludCBpbiBibHVycmVkIGluc2V0IGFyZWFzCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkluc3BlY3RvclVJ
L0NoYW5nZUxvZwppbmRleCBhNWNlNDI5NTZjMzMwNjliYmVhOGU0YjNkMWE1ZjBjMzM5YWJiYTA2
Li4xOTE4ZTkwMmMwZjUwYmFmYzU2YTk0ZDhjZGRmM2YyNDExZWQ0MjY5IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JV
SS9DaGFuZ2VMb2cKQEAgLTEsNSArMSwzNyBAQAogMjAxNC0wOC0xMSAgQnJpYW4gSi4gQnVyZyAg
PGJ1cmdAY3Mud2FzaGluZ3Rvbi5lZHU+CiAKKyAgICAgICAgV2ViIEluc3BlY3RvcjogYWRkIGVq
ZWN0IGN1cnJlbnQgcmVjb3JkaW5nIGJ1dHRvbiB0byB0aGUgcmVwbGF5IGRhc2hib2FyZAorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM1MjI1CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGEgbmV3IGVq
ZWN0IGJ1dHRvbiBpdGVtIHRvIHRoZSByZXBsYXkgZGFzaGJvYXJkJ3MgZW1iZWRkZWQgbmF2aWdh
dGlvbiBiYXIuCisgICAgICAgIFRoZSBlamVjdCBidXR0b24ncyB2aXNpYmlsaXR5IGlzIG11dHVh
bGx5IGV4Y2x1c2l2ZSB3aXRoIHRoYXQgb2YgdGhlIHJlY29yZCBidXR0b24uCisKKyAgICAgICAg
V2hlbiB0aGUgZWplY3QgYnV0dG9uIGlzIGNsaWNrZWQsIGEgbmV3LCBlbXB0eSBzZXNzaW9uIGlz
IGNyZWF0ZWQgYW5kIHRoZW4gbG9hZGVkLgorCisgICAgICAgICogTG9jYWxpemF0aW9ucy9lbi5s
cHJvai9sb2NhbGl6ZWRTdHJpbmdzLmpzOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvQ29udHJv
bGxlcnMvUmVwbGF5TWFuYWdlci5qczogSW1wbGVtZW50IGFuIGFzeW5jaHJvbm91cyBBUEkgZm9y
IGNyZWF0aW5nIHNlc3Npb25zLgorICAgICAgICAoV2ViSW5zcGVjdG9yLlJlcGxheU1hbmFnZXIu
cHJvdG90eXBlLmNyZWF0ZVNlc3Npb24udmFyKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5SZXBs
YXlNYW5hZ2VyLnByb3RvdHlwZS5jcmVhdGVTZXNzaW9uLnJldHVybik6CisgICAgICAgIChXZWJJ
bnNwZWN0b3IuUmVwbGF5TWFuYWdlci5wcm90b3R5cGUuY3JlYXRlU2Vzc2lvbik6CisgICAgICAg
IChXZWJJbnNwZWN0b3IuUmVwbGF5TWFuYWdlci5wcm90b3R5cGUuc2Vzc2lvbkxvYWRlZCk6Cisg
ICAgICAgICogVXNlckludGVyZmFjZS9JbWFnZXMvUmVwbGF5RWplY3RCdXR0b24uc3ZnOiBBZGRl
ZC4KKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL1JlcGxheURhc2hib2FyZFZpZXcuY3Nz
OiBGaXggc3R5bGVzIGZvciB0aGUgcGxhY2Vob2xkZXIgcmVjb3JkaW5nIGNvbnRhaW5lci4KKyAg
ICAgICAgVGhpcyB3aWxsIGJlIHJlcGxhY2VkIHNvb24gd2l0aCBhIG1pbmktdGltZWxpbmUgY29u
dGVudCB2aWV3LgorICAgICAgICAoLnRvb2xiYXIgLmRhc2hib2FyZC5yZXBsYXkgZGl2Lm5hdmln
YXRpb24tYmFyKToKKyAgICAgICAgKC50b29sYmFyIC5kYXNoYm9hcmQucmVwbGF5ID4gLnJlY29y
ZGluZy1jb250YWluZXIpOgorICAgICAgICAoLnRvb2xiYXIuc21hbGwtc2l6ZSAuZGFzaGJvYXJk
LnJlcGxheSA+IC5yZWNvcmRpbmctY29udGFpbmVyKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNl
L1ZpZXdzL1JlcGxheURhc2hib2FyZFZpZXcuanM6IEFkZCBhbiBlamVjdCBidXR0b24gYW5kIGNs
aWNrIGxpc3RlbmVycy4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5SZXBsYXlEYXNoYm9hcmRWaWV3
KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5SZXBsYXlEYXNoYm9hcmRWaWV3LnByb3RvdHlwZS5f
ZWplY3RCdXR0b25JdGVtQ2xpY2tlZCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuUmVwbGF5RGFz
aGJvYXJkVmlldy5wcm90b3R5cGUuX2NhcHR1cmVTdGFydGVkKToKKyAgICAgICAgKFdlYkluc3Bl
Y3Rvci5SZXBsYXlEYXNoYm9hcmRWaWV3LnByb3RvdHlwZS5fY2FwdHVyZVN0b3BwZWQpOgorICAg
ICAgICAoV2ViSW5zcGVjdG9yLlJlcGxheURhc2hib2FyZFZpZXcucHJvdG90eXBlLl9wbGF5YmFj
a0ZpbmlzaGVkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5SZXBsYXlEYXNoYm9hcmRWaWV3LnBy
b3RvdHlwZS5fYWN0aXZlU2Vzc2lvbkNoYW5nZWQpOgorCisyMDE0LTA4LTExICBCcmlhbiBKLiBC
dXJnICA8YnVyZ0Bjcy53YXNoaW5ndG9uLmVkdT4KKwogICAgICAgICBXZWIgSW5zcGVjdG9yOiBz
aG93IGEgcmVwbGF5IGRhc2hib2FyZCB3aGVuIGNhcHR1cmluZyBvciByZXBsYXlpbmcKICAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzNTE3MAogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yUmVwbGF5QWdlbnQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclJlcGxheUFnZW50LmNwcAppbmRl
eCBkZjA4MThlODdmMGE3NDAwYjBhNjFlMzE3YzQyMGQ3ZjkwNTBhNjE2Li4xNTg2NDkzZDczZjA1
NzA0MTU3MGMzNmNmMjlmZjFkYzJmOTYxMGExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvSW5zcGVjdG9yUmVwbGF5QWdlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9JbnNwZWN0b3JSZXBsYXlBZ2VudC5jcHAKQEAgLTM4OCw2ICszODgsMTMgQEAgdm9p
ZCBJbnNwZWN0b3JSZXBsYXlBZ2VudDo6Y2FuY2VsUGxheWJhY2soRXJyb3JTdHJpbmcqIGVycm9y
U3RyaW5nKQogICAgIG1fcGFnZS5yZXBsYXlDb250cm9sbGVyKCkuY2FuY2VsUGxheWJhY2soKTsK
IH0KIAordm9pZCBJbnNwZWN0b3JSZXBsYXlBZ2VudDo6Y3JlYXRlU2Vzc2lvbihFcnJvclN0cmlu
ZyosIFNlc3Npb25JZGVudGlmaWVyKiBpZGVudGlmaWVyKQoreworICAgIFJlZlB0cjxSZXBsYXlT
ZXNzaW9uPiBzZXNzaW9uID0gUmVwbGF5U2Vzc2lvbjo6Y3JlYXRlKCk7CisgICAgc2Vzc2lvbkNy
ZWF0ZWQoc2Vzc2lvbik7CisgICAgKmlkZW50aWZpZXIgPSBXVEY6OnNhZmVDYXN0PGludD4oc2Vz
c2lvbi0+aWRlbnRpZmllcigpKTsKK30KKwogdm9pZCBJbnNwZWN0b3JSZXBsYXlBZ2VudDo6c3dp
dGNoU2Vzc2lvbihFcnJvclN0cmluZyogZXJyb3JTdHJpbmcsIFNlc3Npb25JZGVudGlmaWVyIGlk
ZW50aWZpZXIpCiB7CiAgICAgQVNTRVJUKGlkZW50aWZpZXIgPiAwKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JSZXBsYXlBZ2VudC5oIGIvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclJlcGxheUFnZW50LmgKaW5kZXggNjljMTRiNjU1NDRj
ODIzMTc5MjQ1YWM0ODBkY2Q0M2RjMzYxZjMwZi4uMGVkMDcxMmUxZmE5MTgwN2M4YjAyY2ZjMmU2
ZGUxNTBkNGJmYWU2NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3Bl
Y3RvclJlcGxheUFnZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
clJlcGxheUFnZW50LmgKQEAgLTEwMCw2ICsxMDAsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2
b2lkIHBhdXNlUGxheWJhY2soRXJyb3JTdHJpbmcqKSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZv
aWQgY2FuY2VsUGxheWJhY2soRXJyb3JTdHJpbmcqKSBvdmVycmlkZTsKIAorICAgIHZpcnR1YWwg
dm9pZCBjcmVhdGVTZXNzaW9uKEVycm9yU3RyaW5nKiwgU2Vzc2lvbklkZW50aWZpZXIqKSBvdmVy
cmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgc3dpdGNoU2Vzc2lvbihFcnJvclN0cmluZyosIFNlc3Np
b25JZGVudGlmaWVyKSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgaW5zZXJ0U2Vzc2lvblNl
Z21lbnQoRXJyb3JTdHJpbmcqLCBTZXNzaW9uSWRlbnRpZmllciwgU2VnbWVudElkZW50aWZpZXIs
IGludCBzZWdtZW50SW5kZXgpIG92ZXJyaWRlOwogICAgIHZpcnR1YWwgdm9pZCByZW1vdmVTZXNz
aW9uU2VnbWVudChFcnJvclN0cmluZyosIFNlc3Npb25JZGVudGlmaWVyLCBpbnQgc2VnbWVudElu
ZGV4KSBvdmVycmlkZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9wcm90
b2NvbC9SZXBsYXkuanNvbiBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9SZXBs
YXkuanNvbgppbmRleCBiZTI2OTg4YzhiMDdjNGRiYTk3Yzk2M2MzYzhkNDU2ZWQwNzY3OTM0Li4x
YzlhN2E1MThlMGYzYzNmMjdjYWQ2NjgxZTI1NzZhYzkwOWEyNTY5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvUmVwbGF5Lmpzb24KKysrIGIvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL3Byb3RvY29sL1JlcGxheS5qc29uCkBAIC05Nyw2ICs5NywxMyBAQAog
ICAgICAgICAgICAgImRlc2NyaXB0aW9uIjogIkNhbmNlbHMgcGxheWJhY2sgb2YgdGhlIGN1cnJl
bnQgc2VnbWVudC4gRnVydGhlciByZXBsYXlpbmcgd2lsbCBzdGFydCBmcm9tIHRoZSBiZWdpbm5p
bmcgb2YgdGhlIGN1cnJlbnQgc2VnbWVudC4iCiAgICAgICAgIH0sCiAgICAgICAgIHsKKyAgICAg
ICAgICAgICJuYW1lIjogImNyZWF0ZVNlc3Npb24iLAorICAgICAgICAgICAgImRlc2NyaXB0aW9u
IjogIkNyZWF0ZXMgYSBuZXcgYW5kIGVtcHR5IHNlc3Npb24uIiwKKyAgICAgICAgICAgICJyZXR1
cm5zIjogWworICAgICAgICAgICAgICAgIHsgIm5hbWUiOiAic2Vzc2lvbklkZW50aWZpZXIiLCAi
JHJlZiI6ICJTZXNzaW9uSWRlbnRpZmllciIsICJkZXNjcmlwdGlvbiI6ICJUaGUgbmV3bHktY3Jl
YXRlZCBzZXNzaW9uJ3MgaWRlbnRpZmllci4iIH0KKyAgICAgICAgICAgIF0KKyAgICAgICAgfSwK
KyAgICAgICAgewogICAgICAgICAgICAgIm5hbWUiOiAic3dpdGNoU2Vzc2lvbiIsCiAgICAgICAg
ICAgICAiZGVzY3JpcHRpb24iOiAiVW5sb2FkcyB0aGUgY3VycmVudCByZXBsYXkgc2Vzc2lvbiBh
bmQgbG9hZHMgdGhlIHNwZWNpZmllZCBzZXNzaW9uIiwKICAgICAgICAgICAgICJwYXJhbWV0ZXJz
IjogWwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL0xvY2FsaXphdGlvbnMvZW4u
bHByb2ovbG9jYWxpemVkU3RyaW5ncy5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Mb2NhbGl6
YXRpb25zL2VuLmxwcm9qL2xvY2FsaXplZFN0cmluZ3MuanMKaW5kZXggNDMyZDA4ODcwYTdkYmZk
MjE2NzBlZTBlNzA0ODliZjFkMDc5ZWQ4Zi4uN2U0MTAwOTI3YzZiYWYzZjIzNTU2MGVjMzllZDQ5
YTcyNTZiMzZkOCAxMDA2NDQKR0lUIGJpbmFyeSBwYXRjaApkZWx0YSA2MAp6Y21jYiVoV1clPTxf
K0pTSUl8ZDE4SWw9RjchKVE0JSNyN0lXa0JZT1BWVXtTRj9xa1V6fnBGV281fXMyUWskY2wKSGVA
X0FjY1ZyY0sKCmRlbHRhIDI2CmtjbVYrIzBPa000dHBuRHExRi1pKGxSci1tbGcmZHNsa1pDIXYm
fT5NbENNUCNFQzJ1aQoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL0NvbnRyb2xsZXJzL1JlcGxheU1hbmFnZXIuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvVXNlckludGVyZmFjZS9Db250cm9sbGVycy9SZXBsYXlNYW5hZ2VyLmpzCmluZGV4IDQ2YzA1
MDUxMzVkZWU0MWYzNWY1ODE2Zjg0NjZlZTQ1Y2IzNmVjMzYuLjM2NGE2YjQzMTEwMWVhYjE5MDQx
NjlmMmRjZDYyNDNjYTBlMTU5ZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9V
c2VySW50ZXJmYWNlL0NvbnRyb2xsZXJzL1JlcGxheU1hbmFnZXIuanMKKysrIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQ29udHJvbGxlcnMvUmVwbGF5TWFuYWdlci5qcwpA
QCAtMjMyLDYgKzIzMiwzMCBAQCBXZWJJbnNwZWN0b3IuUmVwbGF5TWFuYWdlci5wcm90b3R5cGUg
PSB7CiAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgfSwKIAorICAgIC8vIENyZWF0ZSBhIG5l
dywgZW1wdHkgc2Vzc2lvbi4KKyAgICAvLyBSZXR1cm5zIGEgcHJvbWlzZSB0aGF0IHJlc29sdmVz
IHdoZW4gdGhlIHNlc3Npb24gaXMgbG9hZGVkLgorICAgIGNyZWF0ZVNlc3Npb246IGZ1bmN0aW9u
KCkgLy8gLS0+IChzZXNzaW9uSWQpCisgICAgeworICAgICAgICB2YXIgbGlzdGVuZXIgPSBuZXcg
V2ViSW5zcGVjdG9yLkV2ZW50TGlzdGVuZXIodGhpcywgdHJ1ZSk7CisKKyAgICAgICAgdmFyIG1h
bmFnZXJSZXN1bHQgPSBuZXcgUHJvbWlzZShmdW5jdGlvbihyZXNvbHZlLCByZWplY3QpIHsKKyAg
ICAgICAgICAgIGxpc3RlbmVyLmNvbm5lY3QoV2ViSW5zcGVjdG9yLnJlcGxheU1hbmFnZXIsIFdl
Ykluc3BlY3Rvci5SZXBsYXlNYW5hZ2VyLkV2ZW50LlNlc3Npb25BZGRlZCwgcmVzb2x2ZSk7Cisg
ICAgICAgIH0pOworCisgICAgICAgIHZhciBwcm90b2NvbFJlc3VsdCA9IFJlcGxheUFnZW50LmNy
ZWF0ZVNlc3Npb24oKQorICAgICAgICAgICAgLmNhdGNoKGZ1bmN0aW9uKGVycm9yKSB7CisgICAg
ICAgICAgICAgICAgbGlzdGVuZXIuZGlzY29ubmVjdCgpOworICAgICAgICAgICAgICAgIGNvbnNv
bGUuZXJyb3IoIlJlcGxheU1hbmFnZXIuY3JlYXRlU2Vzc2lvbiBmYWlsZWQ6ICIsIGVycm9yKTsK
KyAgICAgICAgICAgICAgICB0aHJvdyBlcnJvcjsKKyAgICAgICAgICAgIH0pOworCisgICAgICAg
IHJldHVybiBQcm9taXNlLmFsbChbdGhpcy53YWl0VW50aWxJbml0aWFsaXplZCgpLCBwcm90b2Nv
bFJlc3VsdCwgbWFuYWdlclJlc3VsdF0pCisgICAgICAgICAgICAudGhlbihmdW5jdGlvbihyZXN1
bHRzKSB7CisgICAgICAgICAgICAgICAgdmFyIGV2ZW50ID0gcmVzdWx0cy5sYXN0VmFsdWU7Cisg
ICAgICAgICAgICAgICAgcmV0dXJuIGV2ZW50LmRhdGEuc2Vzc2lvbklkOworICAgICAgICAgICAg
fSk7CisgICAgfSwKKwogICAgIC8vIFN0YXJ0IGNhcHR1cmluZyBpbnRvIHRoZSBjdXJyZW50IHNl
c3Npb24gYXMgc29vbiBhcyBwb3NzaWJsZS4KICAgICAvLyBSZXR1cm5zIGEgcHJvbWlzZSB0aGF0
IHJlc29sdmVzIHdoZW4gY2FwdHVyaW5nIGJlZ2lucy4KICAgICBzdGFydENhcHR1cmluZzogZnVu
Y3Rpb24oKSAvLyAtLT4gKCkKQEAgLTUzMiw2ICs1NTYsMTUgQEAgV2ViSW5zcGVjdG9yLlJlcGxh
eU1hbmFnZXIucHJvdG90eXBlID0gewogICAgICAgICAgICAgfSk7CiAgICAgfSwKIAorICAgIHNl
c3Npb25Mb2FkZWQ6IGZ1bmN0aW9uKHNlc3Npb25JZCkKKyAgICB7CisgICAgICAgIGlmICghdGhp
cy5faW5pdGlhbGl6ZWQpCisgICAgICAgICAgICByZXR1cm4gdGhpcy53YWl0VW50aWxJbml0aWFs
aXplZCgpLnRoZW4odGhpcy5zZXNzaW9uTG9hZGVkLmJpbmQodGhpcywgc2Vzc2lvbklkKSk7CisK
KyAgICAgICAgdGhpcy5fYWN0aXZlU2Vzc2lvbklkZW50aWZpZXIgPSBzZXNzaW9uSWQ7CisgICAg
ICAgIHRoaXMuZGlzcGF0Y2hFdmVudFRvTGlzdGVuZXJzKFdlYkluc3BlY3Rvci5SZXBsYXlNYW5h
Z2VyLkV2ZW50LkFjdGl2ZVNlc3Npb25DaGFuZ2VkLCB7c2Vzc2lvbklkOiBzZXNzaW9uSWR9KTsK
KyAgICB9LAorCiAgICAgc2VnbWVudENyZWF0ZWQ6IGZ1bmN0aW9uKHNlZ21lbnRJZCkKICAgICB7
CiAgICAgICAgIGlmICghdGhpcy5faW5pdGlhbGl6ZWQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9JbWFnZXMvUmVwbGF5RWplY3RCdXR0b24uc3ZnIGIv
U291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvSW1hZ2VzL1JlcGxheUVqZWN0QnV0
dG9uLnN2ZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi4zYjY0YTA3NmM1YmVmNmQ0NzdmZmIwZDg5NDA0MzRlMWUxMGJl
MDQwCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvSW1hZ2VzL1JlcGxheUVqZWN0QnV0dG9uLnN2ZwpAQCAtMCwwICsxLDggQEAKKzw/eG1sIHZl
cnNpb249IjEuMCIgZW5jb2Rpbmc9InV0Zi04Ij8+DQorPCEtLSBHZW5lcmF0b3I6IEFkb2JlIEls
bHVzdHJhdG9yIDE0LjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAg
QnVpbGQgNDMzNjMpICAtLT4NCis8IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZH
IDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5k
dGQiPg0KKzxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cu
dzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlu
ayIgeD0iMHB4IiB5PSIwcHgiDQorCSB3aWR0aD0iMzZweCIgaGVpZ2h0PSIzNnB4IiB2aWV3Qm94
PSIwIDAgMzYgMzYiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDM2IDM2IiB4bWw6c3BhY2U9
InByZXNlcnZlIj4NCis8cmVjdCB4PSI0LjM5NSIgeT0iMjYuNzY0IiB3aWR0aD0iMjcuMjExIiBo
ZWlnaHQ9IjUiLz4NCis8cG9seWdvbiBwb2ludHM9IjQuNTc2LDIxLjcwOSAxOCw0LjY1OCAzMS40
MjQsMjEuNzA5ICIvPg0KKzwvc3ZnPg0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JV
SS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1JlcGxheURhc2hib2FyZFZpZXcuY3NzIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvUmVwbGF5RGFzaGJvYXJkVmlldy5jc3MK
aW5kZXggMDFiNmU2ZWY4MTVkMjNmYzY0MDYxMWIzOTQzZGNkNmExYTBkMDg5Mi4uZDc2ZjBlOGMz
OWQ0NDBiYmRkOGM3YWNlOWJiNmE1MDM5ODg5YjExZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYklu
c3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvUmVwbGF5RGFzaGJvYXJkVmlldy5jc3MKKysr
IGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvUmVwbGF5RGFzaGJv
YXJkVmlldy5jc3MKQEAgLTM2LDYgKzM2LDE5IEBACiAKIC50b29sYmFyIC5kYXNoYm9hcmQucmVw
bGF5IGRpdi5uYXZpZ2F0aW9uLWJhciB7CiAgICAgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0
YW50OworICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsKK30KKworLnRvb2xiYXIgLmRh
c2hib2FyZC5yZXBsYXkgPiAucmVjb3JkaW5nLWNvbnRhaW5lciB7CisgICAgLXdlYmtpdC1mbGV4
LWdyb3c6IDE7CisgICAgLXdlYmtpdC1vcmRlcjogMjsKKyAgICBib3JkZXI6IDFweCBzb2xpZCAj
YWFhOworICAgIGhlaWdodDogMjJweDsKKyAgICBtYXJnaW46IDAgMTRweCAwIDRweDsKK30KKwor
LnRvb2xiYXIuc21hbGwtc2l6ZSAuZGFzaGJvYXJkLnJlcGxheSA+IC5yZWNvcmRpbmctY29udGFp
bmVyIHsKKyAgICBoZWlnaHQ6IDE2cHg7CiB9CiAKIC50b29sYmFyIC5kYXNoYm9hcmQucmVwbGF5
IC5pdGVtLmJ1dHRvbiA+IC5nbHlwaCB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvVXNlckludGVyZmFjZS9WaWV3cy9SZXBsYXlEYXNoYm9hcmRWaWV3LmpzIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvUmVwbGF5RGFzaGJvYXJkVmlldy5qcwpp
bmRleCBiMjI4OTI0NGY4YjhjYmMwMjQ0OWE4NmFhMTI0YmE3YjE2OWM4OGFiLi5hNjZkOTA5MTM2
MTZjNTg1N2NjODFhNWRmMDBhZDNhZjg4ZTMyNDZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5z
cGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9SZXBsYXlEYXNoYm9hcmRWaWV3LmpzCisrKyBi
L1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1JlcGxheURhc2hib2Fy
ZFZpZXcuanMKQEAgLTQyLDE4ICs0MiwyNyBAQCBXZWJJbnNwZWN0b3IuUmVwbGF5RGFzaGJvYXJk
VmlldyA9IGZ1bmN0aW9uKHJlcHJlc2VudGVkT2JqZWN0KQogICAgIHRoaXMuX3JlcGxheUJ1dHRv
bkl0ZW0uaGlkZGVuID0gdHJ1ZTsKICAgICB0aGlzLl9uYXZpZ2F0aW9uQmFyLmFkZE5hdmlnYXRp
b25JdGVtKHRoaXMuX3JlcGxheUJ1dHRvbkl0ZW0pOwogCisgICAgdGhpcy5fZWplY3RCdXR0b25J
dGVtID0gbmV3IFdlYkluc3BlY3Rvci5CdXR0b25OYXZpZ2F0aW9uSXRlbSgicmVwbGF5LWRhc2hi
b2FyZC1lamVjdCIsIFdlYkluc3BlY3Rvci5VSVN0cmluZygiRWplY3QgUmVjb3JkaW5nIiksICJJ
bWFnZXMvUmVwbGF5RWplY3RCdXR0b24uc3ZnIiwgMTYsIDE2KTsKKyAgICB0aGlzLl9lamVjdEJ1
dHRvbkl0ZW0uYWRkRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuQnV0dG9uTmF2aWdhdGlvbkl0
ZW0uRXZlbnQuQ2xpY2tlZCwgdGhpcy5fZWplY3RCdXR0b25JdGVtQ2xpY2tlZCwgdGhpcyk7Cisg
ICAgdGhpcy5fZWplY3RCdXR0b25JdGVtLmhpZGRlbiA9IHRydWU7CisgICAgdGhpcy5fbmF2aWdh
dGlvbkJhci5hZGROYXZpZ2F0aW9uSXRlbSh0aGlzLl9lamVjdEJ1dHRvbkl0ZW0pOworCisgICAg
dmFyIHJlY29yZGluZ0NvbnRhaW5lckVsZW1lbnQgPSB0aGlzLl9yZWNvcmRpbmdDb250YWluZXJF
bGVtZW50ID0gdGhpcy5lbGVtZW50LmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
ImRpdiIpKTsKKyAgICByZWNvcmRpbmdDb250YWluZXJFbGVtZW50LmNsYXNzTmFtZSA9IFdlYklu
c3BlY3Rvci5SZXBsYXlEYXNoYm9hcmRWaWV3LlJlY29yZGluZ0NvbnRhaW5lclN0eWxlQ2xhc3NO
YW1lOworCiAgICAgLy8gQWRkIGV2ZW50cyByZXF1aXJlZCB0byB0cmFjayBjYXB0dXJlIGFuZCBy
ZXBsYXkgc3RhdGUuCiAgICAgV2ViSW5zcGVjdG9yLnJlcGxheU1hbmFnZXIuYWRkRXZlbnRMaXN0
ZW5lcihXZWJJbnNwZWN0b3IuUmVwbGF5TWFuYWdlci5FdmVudC5DYXB0dXJlU3RhcnRlZCwgdGhp
cy5fY2FwdHVyZVN0YXJ0ZWQsIHRoaXMpOwogICAgIFdlYkluc3BlY3Rvci5yZXBsYXlNYW5hZ2Vy
LmFkZEV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLlJlcGxheU1hbmFnZXIuRXZlbnQuQ2FwdHVy
ZVN0b3BwZWQsIHRoaXMuX2NhcHR1cmVTdG9wcGVkLCB0aGlzKTsKICAgICBXZWJJbnNwZWN0b3Iu
cmVwbGF5TWFuYWdlci5hZGRFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5SZXBsYXlNYW5hZ2Vy
LkV2ZW50LlBsYXliYWNrU3RhcnRlZCwgdGhpcy5fcGxheWJhY2tTdGFydGVkLCB0aGlzKTsKICAg
ICBXZWJJbnNwZWN0b3IucmVwbGF5TWFuYWdlci5hZGRFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rv
ci5SZXBsYXlNYW5hZ2VyLkV2ZW50LlBsYXliYWNrUGF1c2VkLCB0aGlzLl9wbGF5YmFja1BhdXNl
ZCwgdGhpcyk7CiAgICAgV2ViSW5zcGVjdG9yLnJlcGxheU1hbmFnZXIuYWRkRXZlbnRMaXN0ZW5l
cihXZWJJbnNwZWN0b3IuUmVwbGF5TWFuYWdlci5FdmVudC5QbGF5YmFja0ZpbmlzaGVkLCB0aGlz
Ll9wbGF5YmFja0ZpbmlzaGVkLCB0aGlzKTsKKyAgICBXZWJJbnNwZWN0b3IucmVwbGF5TWFuYWdl
ci5hZGRFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5SZXBsYXlNYW5hZ2VyLkV2ZW50LkFjdGl2
ZVNlc3Npb25DaGFuZ2VkLCB0aGlzLl9hY3RpdmVTZXNzaW9uQ2hhbmdlZCwgdGhpcyk7CiAKICAg
ICAvLyBNYW51YWxseSBpbml0aWFsaXplIHN0eWxlIGNsYXNzZXMgYnkgcXVlcnlpbmcgY3VycmVu
dCByZXBsYXkgc3RhdGUuCiAgICAgaWYgKFdlYkluc3BlY3Rvci5yZXBsYXlNYW5hZ2VyLnNlc3Np
b25TdGF0ZSA9PT0gV2ViSW5zcGVjdG9yLlJlcGxheU1hbmFnZXIuU2Vzc2lvblN0YXRlLkNhcHR1
cmluZykKICAgICAgICAgdGhpcy5fY2FwdHVyZVN0YXJ0ZWQoKTsKICAgICBlbHNlIGlmIChXZWJJ
bnNwZWN0b3IucmVwbGF5TWFuYWdlci5zZXNzaW9uU3RhdGUgPT09IFdlYkluc3BlY3Rvci5SZXBs
YXlNYW5hZ2VyLlNlc3Npb25TdGF0ZS5JbmFjdGl2ZSkKLSAgICAgICAgdGhpcy5fY2FwdHVyZVN0
b3BwZWQoKTsKKyAgICAgICAgdGhpcy5fYWN0aXZlU2Vzc2lvbkNoYW5nZWQoKTsKICAgICAvLyBS
ZXBsYXlNYW5hZ2VyLnNlc3Npb25TdGF0ZSBtdXN0IGJlIFJlcGxheWluZy4KICAgICBlbHNlIGlm
IChXZWJJbnNwZWN0b3IucmVwbGF5TWFuYWdlci5zZWdtZW50U3RhdGUgPT09IFdlYkluc3BlY3Rv
ci5SZXBsYXlNYW5hZ2VyLlNlZ21lbnRTdGF0ZS5EaXNwYXRjaGluZykKICAgICAgICAgdGhpcy5f
cGxheWJhY2tTdGFydGVkKCk7CkBAIC05NSwxMSArMTA0LDMwIEBAIFdlYkluc3BlY3Rvci5SZXBs
YXlEYXNoYm9hcmRWaWV3LnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgIFdlYkluc3BlY3Rvci5y
ZXBsYXlNYW5hZ2VyLnJlcGxheVRvQ29tcGxldGlvbigpOwogICAgIH0sCiAKKyAgICBfZWplY3RC
dXR0b25JdGVtQ2xpY2tlZDogZnVuY3Rpb24oZXZlbnQpCisgICAgeworICAgICAgICBjb25zb2xl
LmFzc2VydChXZWJJbnNwZWN0b3IucmVwbGF5TWFuYWdlci5zZXNzaW9uU3RhdGUgIT09IFdlYklu
c3BlY3Rvci5SZXBsYXlNYW5hZ2VyLlNlc3Npb25TdGF0ZS5DYXB0dXJpbmcsICJUcmllZCB0byBl
amVjdCBzZXNzaW9uIHdoaWxlIFNlc3Npb25TdGF0ZSBpcyBDYXB0dXJpbmchIik7CisKKyAgICAg
ICAgLy8gRGVib3VuY2UuCisgICAgICAgIHRoaXMuX2VqZWN0QnV0dG9uSXRlbS5lbmFibGVkID0g
ZmFsc2U7CisKKyAgICAgICAgdmFyIGJ1dHRvbiA9IHRoaXMuX2VqZWN0QnV0dG9uSXRlbTsKKwor
ICAgICAgICBXZWJJbnNwZWN0b3IucmVwbGF5TWFuYWdlci5jcmVhdGVTZXNzaW9uKCkKKyAgICAg
ICAgLnRoZW4oZnVuY3Rpb24gc3dpdGNoVG9FbXB0eVNlc3Npb24oc2Vzc2lvbklkKSB7CisgICAg
ICAgICAgICBidXR0b24uZW5hYmxlZCA9IHRydWU7CisgICAgICAgICAgICByZXR1cm4gV2ViSW5z
cGVjdG9yLnJlcGxheU1hbmFnZXIuc3dpdGNoU2Vzc2lvbihzZXNzaW9uSWQpOworICAgICAgICB9
KS5jYXRjaChmdW5jdGlvbihlcnJvcikgeworICAgICAgICAgICAgY29uc29sZS5lcnJvcigiRmFp
bGVkIHRvIGVqZWN0IGN1cnJlbnQgcmVjb3JkaW5nOiAiLCBlcnJvcik7CisgICAgICAgIH0pOwor
ICAgIH0sCisKICAgICBfY2FwdHVyZVN0YXJ0ZWQ6IGZ1bmN0aW9uKCkKICAgICB7CiAgICAgICAg
IHRoaXMuX2NhcHR1cmVCdXR0b25JdGVtLmhpZGRlbiA9IGZhbHNlOwogICAgICAgICB0aGlzLl9j
YXB0dXJlQnV0dG9uSXRlbS5hY3RpdmF0ZWQgPSB0cnVlOwogICAgICAgICB0aGlzLl9yZXBsYXlC
dXR0b25JdGVtLmhpZGRlbiA9IHRydWU7CisgICAgICAgIHRoaXMuX2VqZWN0QnV0dG9uSXRlbS5o
aWRkZW4gPSB0cnVlOwogICAgIH0sCiAKICAgICBfY2FwdHVyZVN0b3BwZWQ6IGZ1bmN0aW9uKCkK
QEAgLTEwNyw2ICsxMzUsNyBAQCBXZWJJbnNwZWN0b3IuUmVwbGF5RGFzaGJvYXJkVmlldy5wcm90
b3R5cGUgPSB7CiAgICAgICAgIHRoaXMuX2NhcHR1cmVCdXR0b25JdGVtLmFjdGl2YXRlZCA9IGZh
bHNlOwogICAgICAgICB0aGlzLl9jYXB0dXJlQnV0dG9uSXRlbS5oaWRkZW4gPSB0cnVlOwogICAg
ICAgICB0aGlzLl9yZXBsYXlCdXR0b25JdGVtLmhpZGRlbiA9IGZhbHNlOworICAgICAgICB0aGlz
Ll9lamVjdEJ1dHRvbkl0ZW0uaGlkZGVuID0gZmFsc2U7CiAgICAgfSwKIAogICAgIF9wbGF5YmFj
a1N0YXJ0ZWQ6IGZ1bmN0aW9uKCkKQEAgLTEyMiw1ICsxNTEsMjIgQEAgV2ViSW5zcGVjdG9yLlJl
cGxheURhc2hib2FyZFZpZXcucHJvdG90eXBlID0gewogICAgIF9wbGF5YmFja0ZpbmlzaGVkOiBm
dW5jdGlvbigpCiAgICAgewogICAgICAgICB0aGlzLl9yZXBsYXlCdXR0b25JdGVtLnRvZ2dsZWQg
PSBmYWxzZTsKKyAgICB9LAorCisgICAgX2FjdGl2ZVNlc3Npb25DaGFuZ2VkOiBmdW5jdGlvbigp
CisgICAgeworICAgICAgICB2YXIgdmlldyA9IHRoaXM7CisgICAgICAgIFdlYkluc3BlY3Rvci5y
ZXBsYXlNYW5hZ2VyLmdldFNlc3Npb24oV2ViSW5zcGVjdG9yLnJlcGxheU1hbmFnZXIuYWN0aXZl
U2Vzc2lvbklkZW50aWZpZXIpCisgICAgICAgICAgICAudGhlbihmdW5jdGlvbihzZXNzaW9uKSB7
CisgICAgICAgICAgICAgICAgaWYgKCFzZXNzaW9uLnNlZ21lbnRzLmxlbmd0aCkgeworICAgICAg
ICAgICAgICAgICAgICB2aWV3Ll9jYXB0dXJlQnV0dG9uSXRlbS5oaWRkZW4gPSBmYWxzZTsKKyAg
ICAgICAgICAgICAgICAgICAgdmlldy5fcmVwbGF5QnV0dG9uSXRlbS5oaWRkZW4gPSB0cnVlOwor
ICAgICAgICAgICAgICAgICAgICB2aWV3Ll9lamVjdEJ1dHRvbkl0ZW0uaGlkZGVuID0gdHJ1ZTsK
KyAgICAgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgICAgICB2aWV3Ll9jYXB0
dXJlQnV0dG9uSXRlbS5oaWRkZW4gPSB0cnVlOworICAgICAgICAgICAgICAgICAgICB2aWV3Ll9y
ZXBsYXlCdXR0b25JdGVtLmhpZGRlbiA9IGZhbHNlOworICAgICAgICAgICAgICAgICAgICB2aWV3
Ll9lamVjdEJ1dHRvbkl0ZW0uaGlkZGVuID0gZmFsc2U7CisgICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgfSk7CiAgICAgfQogfTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>