<?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>105849</bug_id>
          
          <creation_ts>2012-12-28 22:28:53 -0800</creation_ts>
          <short_desc>Web Inspector: DataGrid refactoring: make cell editing more generic.</short_desc>
          <delta_ts>2013-01-10 21:50:51 -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>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Eugene Klyuchnikov">eustas</reporter>
          <assigned_to name="Eugene Klyuchnikov">eustas</assigned_to>
          <cc>apavlov</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>vsevik</cc>
    
    <cc>web-inspector-bugs</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>798060</commentid>
    <comment_count>0</comment_count>
    <who name="Eugene Klyuchnikov">eustas</who>
    <bug_when>2012-12-28 22:28:53 -0800</bug_when>
    <thetext>Editing feature has been added to DataGrid to edit localStorage.
Column numbers (0 and 1) are hardcoded.

This patch makes column editing feature more generic: remove hardcoded colums,
take &quot;editable&quot; column property into account.

This patch is a prerequisite for cookie editing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798063</commentid>
    <comment_count>1</comment_count>
      <attachid>180920</attachid>
    <who name="Eugene Klyuchnikov">eustas</who>
    <bug_when>2012-12-28 23:39:13 -0800</bug_when>
    <thetext>Created attachment 180920
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>804957</commentid>
    <comment_count>2</comment_count>
      <attachid>180920</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-10 21:50:48 -0800</bug_when>
    <thetext>Comment on attachment 180920
Patch

Clearing flags on attachment: 180920

Committed r139404: &lt;http://trac.webkit.org/changeset/139404&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>804958</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-10 21:50:51 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>180920</attachid>
            <date>2012-12-28 23:39:13 -0800</date>
            <delta_ts>2013-01-10 21:50:48 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-105849-20121229113623.patch</filename>
            <type>text/plain</type>
            <size>18975</size>
            <attacher name="Eugene Klyuchnikov">eustas</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM4NTU1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjI4ODM1YzMyYjc2YjVk
NWFjNmNjZmE5OTVhOTY5NWE0OWRmOTE3Yi4uZTZlOTBhMTAzZThlM2ZmOWQ1MDAyYWQ2OTFiZDEw
NGEyOTFjZjI2NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDEyLTEyLTI4ICBFdWdl
bmUgS2x5dWNobmlrb3YgIDxldXN0YXNAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFdlYiBJbnNw
ZWN0b3I6IERhdGFHcmlkIHJlZmFjdG9yaW5nOiBtYWtlIGNlbGwgZWRpdGluZyBtb3JlIGdlbmVy
aWMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDU4
NDkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBFZGl0
aW5nIGZlYXR1cmUgaGFzIGJlZW4gYWRkZWQgdG8gRGF0YUdyaWQgdG8gZWRpdCBsb2NhbFN0b3Jh
Z2UuCisgICAgICAgIENvbHVtbiBudW1iZXJzICgwIGFuZCAxKSBhcmUgaGFyZGNvZGVkLgorCisg
ICAgICAgIFRoaXMgcGF0Y2ggbWFrZXMgY29sdW1uIGVkaXRpbmcgZmVhdHVyZSBtb3JlIGdlbmVy
aWM6IHJlbW92ZSBoYXJkY29kZWQKKyAgICAgICAgY29sdW1zLCB0YWtlICJlZGl0YWJsZSIgY29s
dW1uIHByb3BlcnR5IGludG8gYWNjb3VudC4KKworICAgICAgICBUaGlzIHBhdGNoIGlzIGEgcHJl
cmVxdWlzaXRlIGZvciBjb29raWUgZWRpdGluZy4KKworICAgICAgICAqIGluc3BlY3Rvci9mcm9u
dC1lbmQvRE9NU3RvcmFnZUl0ZW1zVmlldy5qczoKKyAgICAgICAgVXNlIG1lYW5pbmdmdWwgY29s
dW1uIG5hbWVzLgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvRGF0YUdyaWQuanM6Cisg
ICAgICAgIChXZWJJbnNwZWN0b3IuRGF0YUdyaWQucHJvdG90eXBlLl9vbmRibGNsaWNrKTogQ2hl
Y2sgY29sdW1uIGVkaXRhYmlsaXR5LgorICAgICAgICAoV2ViSW5zcGVjdG9yLkRhdGFHcmlkLnBy
b3RvdHlwZS5fY29udGV4dE1lbnVJbkRhdGFUYWJsZSk6IERpdHRvLgorICAgICAgICAoV2ViSW5z
cGVjdG9yLkRhdGFHcmlkTm9kZS5wcm90b3R5cGUuY3JlYXRlQ2VsbCk6CisgICAgICAgIFN1cHBs
eSBjZWxsIGVsZW1lbnQgd2l0aCBjb2x1bW4gaWQuCisgICAgICAgIChXZWJJbnNwZWN0b3IuRGF0
YUdyaWQucHJvdG90eXBlLmNvbHVtbklkZW50aWZpZXJGcm9tTm9kZSk6CisgICAgICAgIEFkZGVk
IHV0aWxpdHkgbWV0aG9kLgorICAgICAgICAoV2ViSW5zcGVjdG9yLkRhdGFHcmlkLnByb3RvdHlw
ZS5fbmV4dEVkaXRhYmxlQ29sdW1uKTogRGl0dG8uCisgICAgICAgIChXZWJJbnNwZWN0b3IuRGF0
YUdyaWQucHJvdG90eXBlLl9rZXlEb3duKTogQ2FsY3VsYXRlIGVkaXRhYmxlIGNvbHVtbi4KKyAg
ICAgICAgKFdlYkluc3BlY3Rvci5EYXRhR3JpZC5wcm90b3R5cGUuX2VkaXRpbmdDb21taXR0ZWQp
OiBEaXR0by4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5EYXRhR3JpZC5wcm90b3R5cGUuX3N0YXJ0
RWRpdGluZyk6IERpdHRvLgorICAgICAgICAoV2ViSW5zcGVjdG9yLkRhdGFHcmlkLnByb3RvdHlw
ZS5fc3RhcnRFZGl0aW5nQ29sdW1uT2ZEYXRhR3JpZE5vZGUpOgorICAgICAgICBSZWZpbmVkIHBh
cmFtZXRlciB0eXBlIC8gbmFtZS4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5EYXRhR3JpZC5wcm90
b3R5cGUuX3Jlc2l6ZXJEcmFnZ2luZyk6CisgICAgICAgIEZpeCByZXNpemVyIGluZGV4IHByb3Bl
cnR5IG5hbWVzLgorICAgICAgICAoV2ViSW5zcGVjdG9yLkRhdGFHcmlkLnByb3RvdHlwZS5fc3Rh
cnRSZXNpemVyRHJhZ2dpbmcpOiBEaXR0by4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5EYXRhR3Jp
ZC5wcm90b3R5cGUuX3Bvc2l0aW9uUmVzaXplcnMpOiBEaXR0by4KKyAgICAgICAgKiBpbnNwZWN0
b3IvZnJvbnQtZW5kL05ldHdvcmtQYW5lbC5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5OZXR3
b3JrTG9nVmlldy5wcm90b3R5cGUuX3VwZGF0ZURpdmlkZXJzSWZOZWVkZWQpOiBEaXR0by4KKwog
MjAxMi0xMi0yOCAgTm8nYW0gUm9zZW50aGFsICA8bm9hbUB3ZWJraXQub3JnPgogCiAgICAgICAg
IFtUZXhtYXBdIEVkZ2UgYW50aWFsaWFzaW5nIGluIFRleHR1cmVNYXBwZXIgY291bGQgYmUgZG9u
ZSB3aXRoIGxlc3MgcGVyLXBpeGVsIGNhbGxzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvZnJvbnQtZW5kL0RPTVN0b3JhZ2VJdGVtc1ZpZXcuanMgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0RPTVN0b3JhZ2VJdGVtc1ZpZXcuanMKaW5kZXggODgzZmE3
MzQyYmQ1MGZhNTZjNWI4OTE1MmM1MDkzYzVmYzM2MzM0Zi4uYWFjMjk3Y2YyOWEzY2VjOTk4NjZl
ZjQxNTY5MjliYmJjZmQ1NDhiNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L2Zyb250LWVuZC9ET01TdG9yYWdlSXRlbXNWaWV3LmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9mcm9udC1lbmQvRE9NU3RvcmFnZUl0ZW1zVmlldy5qcwpAQCAtNzksMjQgKzc5LDIy
IEBAIFdlYkluc3BlY3Rvci5ET01TdG9yYWdlSXRlbXNWaWV3LnByb3RvdHlwZSA9IHsKIAogICAg
IF9kYXRhR3JpZEZvckRPTVN0b3JhZ2VFbnRyaWVzOiBmdW5jdGlvbihlbnRyaWVzKQogICAgIHsK
LSAgICAgICAgdmFyIGNvbHVtbnMgPSB7fTsKLSAgICAgICAgY29sdW1uc1swXSA9IHt9OwotICAg
ICAgICBjb2x1bW5zWzFdID0ge307Ci0gICAgICAgIGNvbHVtbnNbMF0udGl0bGUgPSBXZWJJbnNw
ZWN0b3IuVUlTdHJpbmcoIktleSIpOwotICAgICAgICBjb2x1bW5zWzFdLnRpdGxlID0gV2ViSW5z
cGVjdG9yLlVJU3RyaW5nKCJWYWx1ZSIpOworICAgICAgICB2YXIgY29sdW1ucyA9IHtrZXk6IHt9
LCB2YWx1ZToge319OworCisgICAgICAgIGNvbHVtbnMua2V5LnRpdGxlID0gV2ViSW5zcGVjdG9y
LlVJU3RyaW5nKCJLZXkiKTsKKyAgICAgICAgY29sdW1ucy5rZXkuZWRpdGFibGUgPSB0cnVlOwor
CisgICAgICAgIGNvbHVtbnMudmFsdWUudGl0bGUgPSBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIlZh
bHVlIik7CisgICAgICAgIGNvbHVtbnMudmFsdWUuZWRpdGFibGUgPSB0cnVlOwogCiAgICAgICAg
IHZhciBub2RlcyA9IFtdOwogCiAgICAgICAgIHZhciBrZXlzID0gW107CiAgICAgICAgIHZhciBs
ZW5ndGggPSBlbnRyaWVzLmxlbmd0aDsKICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBlbnRy
aWVzLmxlbmd0aDsgaSsrKSB7Ci0gICAgICAgICAgICB2YXIgZGF0YSA9IHt9OwotCiAgICAgICAg
ICAgICB2YXIga2V5ID0gZW50cmllc1tpXVswXTsKLSAgICAgICAgICAgIGRhdGFbMF0gPSBrZXk7
CiAgICAgICAgICAgICB2YXIgdmFsdWUgPSBlbnRyaWVzW2ldWzFdOwotICAgICAgICAgICAgZGF0
YVsxXSA9IHZhbHVlOwotICAgICAgICAgICAgdmFyIG5vZGUgPSBuZXcgV2ViSW5zcGVjdG9yLkRh
dGFHcmlkTm9kZShkYXRhLCBmYWxzZSk7CisgICAgICAgICAgICB2YXIgbm9kZSA9IG5ldyBXZWJJ
bnNwZWN0b3IuRGF0YUdyaWROb2RlKHtrZXk6IGtleSwgdmFsdWU6IHZhbHVlfSwgZmFsc2UpOwog
ICAgICAgICAgICAgbm9kZS5zZWxlY3RhYmxlID0gdHJ1ZTsKICAgICAgICAgICAgIG5vZGVzLnB1
c2gobm9kZSk7CiAgICAgICAgICAgICBrZXlzLnB1c2goa2V5KTsKQEAgLTEyOCwxMyArMTI2LDEz
IEBAIFdlYkluc3BlY3Rvci5ET01TdG9yYWdlSXRlbXNWaWV3LnByb3RvdHlwZSA9IHsKICAgICBf
ZWRpdGluZ0NhbGxiYWNrOiBmdW5jdGlvbihlZGl0aW5nTm9kZSwgY29sdW1uSWRlbnRpZmllciwg
b2xkVGV4dCwgbmV3VGV4dCkKICAgICB7CiAgICAgICAgIHZhciBkb21TdG9yYWdlID0gdGhpcy5k
b21TdG9yYWdlOwotICAgICAgICBpZiAoY29sdW1uSWRlbnRpZmllciA9PT0gMCkgeworICAgICAg
ICBpZiAoImtleSIgPT09IGNvbHVtbklkZW50aWZpZXIpIHsKICAgICAgICAgICAgIGlmIChvbGRU
ZXh0KQogICAgICAgICAgICAgICAgIGRvbVN0b3JhZ2UucmVtb3ZlSXRlbShvbGRUZXh0KTsKIAot
ICAgICAgICAgICAgZG9tU3RvcmFnZS5zZXRJdGVtKG5ld1RleHQsIGVkaXRpbmdOb2RlLmRhdGFb
MV0pOworICAgICAgICAgICAgZG9tU3RvcmFnZS5zZXRJdGVtKG5ld1RleHQsIGVkaXRpbmdOb2Rl
LmRhdGEudmFsdWUpOwogICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgZG9tU3RvcmFnZS5z
ZXRJdGVtKGVkaXRpbmdOb2RlLmRhdGFbMF0sIG5ld1RleHQpOworICAgICAgICAgICAgZG9tU3Rv
cmFnZS5zZXRJdGVtKGVkaXRpbmdOb2RlLmRhdGEua2V5LCBuZXdUZXh0KTsKICAgICAgICAgfQog
CiAgICAgICAgIHRoaXMudXBkYXRlKCk7CkBAIC0xNDYsNyArMTQ0LDcgQEAgV2ViSW5zcGVjdG9y
LkRPTVN0b3JhZ2VJdGVtc1ZpZXcucHJvdG90eXBlID0gewogICAgICAgICAgICAgcmV0dXJuOwog
CiAgICAgICAgIGlmICh0aGlzLmRvbVN0b3JhZ2UpCi0gICAgICAgICAgICB0aGlzLmRvbVN0b3Jh
Z2UucmVtb3ZlSXRlbShub2RlLmRhdGFbMF0pOworICAgICAgICAgICAgdGhpcy5kb21TdG9yYWdl
LnJlbW92ZUl0ZW0obm9kZS5kYXRhLmtleSk7CiAKICAgICAgICAgdGhpcy51cGRhdGUoKTsKICAg
ICB9LApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9EYXRh
R3JpZC5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvRGF0YUdyaWQuanMK
aW5kZXggNTBkMDQ2NDhjOTk5NjBmMGFjNjg2YWUzZWUxYzJjMTBiYjUxNTFmNC4uM2Q4MjI4Njlm
N2U5OGFlOTdhZjRmMzMxYWEzMTk3N2E2N2Y1ZjkzNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9EYXRhR3JpZC5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvZnJvbnQtZW5kL0RhdGFHcmlkLmpzCkBAIC0yNiw3ICsyNiw3IEBACiAvKioKICAq
IEBjb25zdHJ1Y3RvcgogICogQGV4dGVuZHMge1dlYkluc3BlY3Rvci5WaWV3fQotICogQHBhcmFt
IHtmdW5jdGlvbihXZWJJbnNwZWN0b3IuRGF0YUdyaWROb2RlLCBudW1iZXIsIHN0cmluZywgc3Ry
aW5nKT19IGVkaXRDYWxsYmFjaworICogQHBhcmFtIHtmdW5jdGlvbihXZWJJbnNwZWN0b3IuRGF0
YUdyaWROb2RlLCBzdHJpbmcsIHN0cmluZywgc3RyaW5nKT19IGVkaXRDYWxsYmFjawogICogQHBh
cmFtIHtmdW5jdGlvbihXZWJJbnNwZWN0b3IuRGF0YUdyaWROb2RlKT19IGRlbGV0ZUNhbGxiYWNr
CiAgKi8KIFdlYkluc3BlY3Rvci5EYXRhR3JpZCA9IGZ1bmN0aW9uKGNvbHVtbnMsIGVkaXRDYWxs
YmFjaywgZGVsZXRlQ2FsbGJhY2spCkBAIC0yNzMsMTYgKzI3MywyMyBAQCBXZWJJbnNwZWN0b3Iu
RGF0YUdyaWQucHJvdG90eXBlID0gewogICAgICAgICBpZiAodGhpcy5fZWRpdGluZyB8fCB0aGlz
Ll9lZGl0aW5nTm9kZSkKICAgICAgICAgICAgIHJldHVybjsKIAorICAgICAgICB2YXIgY29sdW1u
SWRlbnRpZmllciA9IHRoaXMuY29sdW1uSWRlbnRpZmllckZyb21Ob2RlKGV2ZW50LnRhcmdldCk7
CisgICAgICAgIGlmICghY29sdW1uSWRlbnRpZmllciB8fCAhdGhpcy5jb2x1bW5zW2NvbHVtbklk
ZW50aWZpZXJdLmVkaXRhYmxlKQorICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB0aGlzLl9z
dGFydEVkaXRpbmcoZXZlbnQudGFyZ2V0KTsKICAgICB9LAogCi0gICAgX3N0YXJ0RWRpdGluZ0Nv
bHVtbk9mRGF0YUdyaWROb2RlOiBmdW5jdGlvbihub2RlLCBjb2x1bW4pCisgICAgLyoqCisgICAg
ICogQHBhcmFtIHshV2ViSW5zcGVjdG9yLkRhdGFHcmlkTm9kZX0gbm9kZQorICAgICAqIEBwYXJh
bSB7bnVtYmVyfSBjb2x1bW5PcmRpbmFsCisgICAgICovCisgICAgX3N0YXJ0RWRpdGluZ0NvbHVt
bk9mRGF0YUdyaWROb2RlOiBmdW5jdGlvbihub2RlLCBjb2x1bW5PcmRpbmFsKQogICAgIHsKICAg
ICAgICAgdGhpcy5fZWRpdGluZyA9IHRydWU7CiAgICAgICAgIHRoaXMuX2VkaXRpbmdOb2RlID0g
bm9kZTsKICAgICAgICAgdGhpcy5fZWRpdGluZ05vZGUuc2VsZWN0KCk7CiAKLSAgICAgICAgdmFy
IGVsZW1lbnQgPSB0aGlzLl9lZGl0aW5nTm9kZS5fZWxlbWVudC5jaGlsZHJlbltjb2x1bW5dOwor
ICAgICAgICB2YXIgZWxlbWVudCA9IHRoaXMuX2VkaXRpbmdOb2RlLl9lbGVtZW50LmNoaWxkcmVu
W2NvbHVtbk9yZGluYWxdOwogICAgICAgICBXZWJJbnNwZWN0b3Iuc3RhcnRFZGl0aW5nKGVsZW1l
bnQsIHRoaXMuX3N0YXJ0RWRpdGluZ0NvbmZpZyhlbGVtZW50KSk7CiAgICAgICAgIHdpbmRvdy5n
ZXRTZWxlY3Rpb24oKS5zZXRCYXNlQW5kRXh0ZW50KGVsZW1lbnQsIDAsIGVsZW1lbnQsIDEpOwog
ICAgIH0sCkBAIC0zMDIsNyArMzA5LDcgQEAgV2ViSW5zcGVjdG9yLkRhdGFHcmlkLnByb3RvdHlw
ZSA9IHsKIAogICAgICAgICAvLyBGb3JjZSBlZGl0aW5nIHRoZSAxc3QgY29sdW1uIHdoZW4gZWRp
dGluZyB0aGUgY3JlYXRpb24gbm9kZQogICAgICAgICBpZiAodGhpcy5fZWRpdGluZ05vZGUuaXND
cmVhdGlvbk5vZGUpCi0gICAgICAgICAgICByZXR1cm4gdGhpcy5fc3RhcnRFZGl0aW5nQ29sdW1u
T2ZEYXRhR3JpZE5vZGUodGhpcy5fZWRpdGluZ05vZGUsIDApOworICAgICAgICAgICAgcmV0dXJu
IHRoaXMuX3N0YXJ0RWRpdGluZ0NvbHVtbk9mRGF0YUdyaWROb2RlKHRoaXMuX2VkaXRpbmdOb2Rl
LCB0aGlzLl9uZXh0RWRpdGFibGVDb2x1bW4oLTEpKTsKIAogICAgICAgICB0aGlzLl9lZGl0aW5n
ID0gdHJ1ZTsKICAgICAgICAgV2ViSW5zcGVjdG9yLnN0YXJ0RWRpdGluZyhlbGVtZW50LCB0aGlz
Ll9zdGFydEVkaXRpbmdDb25maWcoZWxlbWVudCkpOwpAQCAtMzE4LDEyICszMjUsMTIgQEAgV2Vi
SW5zcGVjdG9yLkRhdGFHcmlkLnByb3RvdHlwZSA9IHsKIAogICAgIF9lZGl0aW5nQ29tbWl0dGVk
OiBmdW5jdGlvbihlbGVtZW50LCBuZXdUZXh0LCBvbGRUZXh0LCBjb250ZXh0LCBtb3ZlRGlyZWN0
aW9uKQogICAgIHsKLSAgICAgICAgLy8gRklYTUU6IFdlIG5lZWQgbW9yZSBjb2x1bW4gaWRlbnRp
ZmllcnMgaGVyZSB0aHJvdWdob3V0IHRoaXMgZnVuY3Rpb24uCi0gICAgICAgIC8vIE5vdCBuZWVk
ZWQgeWV0IHNpbmNlIG9ubHkgZWRpdGFibGUgRGF0YUdyaWQgaXMgRE9NIFN0b3JhZ2UsIHdoaWNo
IGlzIEtleSAtIFZhbHVlLgotCi0gICAgICAgIC8vIEZJWE1FOiBCZXR0ZXIgd2F5IHRvIGRvIHRo
aXMgdGhhbiByZWd1bGFyIGV4cHJlc3Npb25zPwotICAgICAgICB2YXIgY29sdW1uSWRlbnRpZmll
ciA9IHBhcnNlSW50KGVsZW1lbnQuY2xhc3NOYW1lLm1hdGNoKC9cYihcZCspLWNvbHVtblxiLylb
MV0sIDEwKTsKLQorICAgICAgICB2YXIgY29sdW1uSWRlbnRpZmllciA9IHRoaXMuY29sdW1uSWRl
bnRpZmllckZyb21Ob2RlKGVsZW1lbnQpOworICAgICAgICBpZiAoIWNvbHVtbklkZW50aWZpZXIp
IHsKKyAgICAgICAgICAgIHRoaXMuX2VkaXRpbmdDYW5jZWxsZWQoZWxlbWVudCk7CisgICAgICAg
ICAgICByZXR1cm47CisgICAgICAgIH0KKyAgICAgICAgdmFyIGNvbHVtbk9yZGluYWwgPSB0aGlz
LmNvbHVtbnNbY29sdW1uSWRlbnRpZmllcl0ub3JkaW5hbDsKICAgICAgICAgdmFyIHRleHRCZWZv
cmVFZGl0aW5nID0gdGhpcy5fZWRpdGluZ05vZGUuZGF0YVtjb2x1bW5JZGVudGlmaWVyXTsKICAg
ICAgICAgdmFyIGN1cnJlbnRFZGl0aW5nTm9kZSA9IHRoaXMuX2VkaXRpbmdOb2RlOwogCkBAIC0z
MzIsMjkgKzMzOSwzMyBAQCBXZWJJbnNwZWN0b3IuRGF0YUdyaWQucHJvdG90eXBlID0gewogICAg
ICAgICAgICAgICAgIHJldHVybjsKIAogICAgICAgICAgICAgaWYgKG1vdmVEaXJlY3Rpb24gPT09
ICJmb3J3YXJkIikgewotICAgICAgICAgICAgICAgIGlmIChjdXJyZW50RWRpdGluZ05vZGUuaXND
cmVhdGlvbk5vZGUgJiYgY29sdW1uSWRlbnRpZmllciA9PT0gMCAmJiAhd2FzQ2hhbmdlKQorICAg
ICAgICAgICAgdmFyIGZpcnN0RWRpdGFibGVDb2x1bW4gPSB0aGlzLl9uZXh0RWRpdGFibGVDb2x1
bW4oLTEpOworICAgICAgICAgICAgICAgIGlmIChjdXJyZW50RWRpdGluZ05vZGUuaXNDcmVhdGlv
bk5vZGUgJiYgY29sdW1uT3JkaW5hbCA9PT0gZmlyc3RFZGl0YWJsZUNvbHVtbiAmJiAhd2FzQ2hh
bmdlKQogICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAKLSAgICAgICAgICAgICAgICBpZiAo
Y29sdW1uSWRlbnRpZmllciA9PT0gMCkKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMu
X3N0YXJ0RWRpdGluZ0NvbHVtbk9mRGF0YUdyaWROb2RlKGN1cnJlbnRFZGl0aW5nTm9kZSwgMSk7
CisgICAgICAgICAgICAgICAgdmFyIG5leHRFZGl0YWJsZUNvbHVtbiA9IHRoaXMuX25leHRFZGl0
YWJsZUNvbHVtbihjb2x1bW5PcmRpbmFsKTsKKyAgICAgICAgICAgICAgICBpZiAobmV4dEVkaXRh
YmxlQ29sdW1uICE9PSAtMSkKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3N0YXJ0
RWRpdGluZ0NvbHVtbk9mRGF0YUdyaWROb2RlKGN1cnJlbnRFZGl0aW5nTm9kZSwgbmV4dEVkaXRh
YmxlQ29sdW1uKTsKIAogICAgICAgICAgICAgICAgIHZhciBuZXh0RGF0YUdyaWROb2RlID0gY3Vy
cmVudEVkaXRpbmdOb2RlLnRyYXZlcnNlTmV4dE5vZGUodHJ1ZSwgbnVsbCwgdHJ1ZSk7CiAgICAg
ICAgICAgICAgICAgaWYgKG5leHREYXRhR3JpZE5vZGUpCi0gICAgICAgICAgICAgICAgICAgIHJl
dHVybiB0aGlzLl9zdGFydEVkaXRpbmdDb2x1bW5PZkRhdGFHcmlkTm9kZShuZXh0RGF0YUdyaWRO
b2RlLCAwKTsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3N0YXJ0RWRpdGluZ0Nv
bHVtbk9mRGF0YUdyaWROb2RlKG5leHREYXRhR3JpZE5vZGUsIGZpcnN0RWRpdGFibGVDb2x1bW4p
OwogICAgICAgICAgICAgICAgIGlmIChjdXJyZW50RWRpdGluZ05vZGUuaXNDcmVhdGlvbk5vZGUg
JiYgd2FzQ2hhbmdlKSB7CiAgICAgICAgICAgICAgICAgICAgIHRoaXMuYWRkQ3JlYXRpb25Ob2Rl
KGZhbHNlKTsKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3N0YXJ0RWRpdGluZ0Nv
bHVtbk9mRGF0YUdyaWROb2RlKHRoaXMuY3JlYXRpb25Ob2RlLCAwKTsKKyAgICAgICAgICAgICAg
ICAgICAgcmV0dXJuIHRoaXMuX3N0YXJ0RWRpdGluZ0NvbHVtbk9mRGF0YUdyaWROb2RlKHRoaXMu
Y3JlYXRpb25Ob2RlLCBmaXJzdEVkaXRhYmxlQ29sdW1uKTsKICAgICAgICAgICAgICAgICB9CiAg
ICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgfQogCiAgICAgICAgICAgICBpZiAo
bW92ZURpcmVjdGlvbiA9PT0gImJhY2t3YXJkIikgewotICAgICAgICAgICAgICAgIGlmIChjb2x1
bW5JZGVudGlmaWVyID09PSAxKQotICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5fc3Rh
cnRFZGl0aW5nQ29sdW1uT2ZEYXRhR3JpZE5vZGUoY3VycmVudEVkaXRpbmdOb2RlLCAwKTsKLSAg
ICAgICAgICAgICAgICAgICAgdmFyIG5leHREYXRhR3JpZE5vZGUgPSBjdXJyZW50RWRpdGluZ05v
ZGUudHJhdmVyc2VQcmV2aW91c05vZGUodHJ1ZSwgbnVsbCwgdHJ1ZSk7CisgICAgICAgICAgICAg
ICAgdmFyIHByZXZFZGl0YWJsZUNvbHVtbiA9IHRoaXMuX25leHRFZGl0YWJsZUNvbHVtbihjb2x1
bW5PcmRpbmFsLCB0cnVlKTsKKyAgICAgICAgICAgICAgICBpZiAocHJldkVkaXRhYmxlQ29sdW1u
ICE9PSAtMSkKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3N0YXJ0RWRpdGluZ0Nv
bHVtbk9mRGF0YUdyaWROb2RlKGN1cnJlbnRFZGl0aW5nTm9kZSwgcHJldkVkaXRhYmxlQ29sdW1u
KTsKIAorICAgICAgICAgICAgICAgIHZhciBsYXN0RWRpdGFibGVDb2x1bW4gPSB0aGlzLl9uZXh0
RWRpdGFibGVDb2x1bW4odGhpcy5fY29sdW1uc0FycmF5Lmxlbmd0aCwgdHJ1ZSk7CisgICAgICAg
ICAgICAgICAgdmFyIG5leHREYXRhR3JpZE5vZGUgPSBjdXJyZW50RWRpdGluZ05vZGUudHJhdmVy
c2VQcmV2aW91c05vZGUodHJ1ZSwgbnVsbCwgdHJ1ZSk7CiAgICAgICAgICAgICAgICAgaWYgKG5l
eHREYXRhR3JpZE5vZGUpCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLl9zdGFydEVk
aXRpbmdDb2x1bW5PZkRhdGFHcmlkTm9kZShuZXh0RGF0YUdyaWROb2RlLCAxKTsKKyAgICAgICAg
ICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3N0YXJ0RWRpdGluZ0NvbHVtbk9mRGF0YUdyaWROb2Rl
KG5leHREYXRhR3JpZE5vZGUsIGxhc3RFZGl0YWJsZUNvbHVtbik7CiAgICAgICAgICAgICAgICAg
cmV0dXJuOwogICAgICAgICAgICAgfQogICAgICAgICB9CkBAIC0zODYsNiArMzk3LDIyIEBAIFdl
Ykluc3BlY3Rvci5EYXRhR3JpZC5wcm90b3R5cGUgPSB7CiAgICAgfSwKIAogICAgIC8qKgorICAg
ICAqIEBwYXJhbSB7bnVtYmVyfSBjb2x1bW5PcmRpbmFsCisgICAgICogQHBhcmFtIHtib29sZWFu
PX0gbW92ZUJhY2t3YXJkCisgICAgICogQHJldHVybiB7bnVtYmVyfQorICAgICAqLworICAgIF9u
ZXh0RWRpdGFibGVDb2x1bW46IGZ1bmN0aW9uKGNvbHVtbk9yZGluYWwsIG1vdmVCYWNrd2FyZCkK
KyAgICB7CisgICAgICAgIHZhciBpbmNyZW1lbnQgPSBtb3ZlQmFja3dhcmQgPyAtMSA6IDE7Cisg
ICAgICAgIHZhciBjb2x1bW5zID0gdGhpcy5fY29sdW1uc0FycmF5OworICAgICAgICBmb3IgKHZh
ciBpID0gY29sdW1uT3JkaW5hbCArIGluY3JlbWVudDsgKGkgPj0gMCkgJiYgKGkgPCBjb2x1bW5z
Lmxlbmd0aCk7IGkgKz0gaW5jcmVtZW50KSB7CisgICAgICAgICAgICBpZiAoY29sdW1uc1tpXS5l
ZGl0YWJsZSkKKyAgICAgICAgICAgICAgICByZXR1cm4gY29sdW1uc1tpXS5vcmRpbmFsOworICAg
ICAgICB9CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9LAorCisgICAgLyoqCiAgICAgICogQHJl
dHVybiB7P3N0cmluZ30KICAgICAgKi8KICAgICBnZXQgc29ydENvbHVtbklkZW50aWZpZXIoKQpA
QCAtNjc5LDE4ICs3MDYsMTggQEAgV2ViSW5zcGVjdG9yLkRhdGFHcmlkLnByb3RvdHlwZSA9IHsK
ICAgICAgICAgICAgIGlmIChjb2x1bW5Jc1Zpc2libGUpIHsKICAgICAgICAgICAgICAgICByZXNp
emVyLnN0eWxlLnJlbW92ZVByb3BlcnR5KCJkaXNwbGF5Iik7CiAgICAgICAgICAgICAgICAgcmVz
aXplci5zdHlsZS5sZWZ0ID0gbGVmdCArICJweCI7Ci0gICAgICAgICAgICAgICAgcmVzaXplci5s
ZWZ0TmVpZ2hib3JpbmdDb2x1bW5JRCA9IGk7CisgICAgICAgICAgICAgICAgcmVzaXplci5sZWZ0
TmVpZ2hib3JpbmdDb2x1bW5JbmRleCA9IGk7CiAgICAgICAgICAgICAgICAgaWYgKHByZXZpb3Vz
UmVzaXplcikKLSAgICAgICAgICAgICAgICAgICAgcHJldmlvdXNSZXNpemVyLnJpZ2h0TmVpZ2hi
b3JpbmdDb2x1bW5JRCA9IGk7CisgICAgICAgICAgICAgICAgICAgIHByZXZpb3VzUmVzaXplci5y
aWdodE5laWdoYm9yaW5nQ29sdW1uSW5kZXggPSBpOwogICAgICAgICAgICAgICAgIHByZXZpb3Vz
UmVzaXplciA9IHJlc2l6ZXI7CiAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAg
IHJlc2l6ZXIuc3R5bGUuc2V0UHJvcGVydHkoImRpc3BsYXkiLCAibm9uZSIpOwotICAgICAgICAg
ICAgICAgIHJlc2l6ZXIubGVmdE5laWdoYm9yaW5nQ29sdW1uSUQgPSAwOwotICAgICAgICAgICAg
ICAgIHJlc2l6ZXIucmlnaHROZWlnaGJvcmluZ0NvbHVtbklEID0gMDsKKyAgICAgICAgICAgICAg
ICByZXNpemVyLmxlZnROZWlnaGJvcmluZ0NvbHVtbkluZGV4ID0gMDsKKyAgICAgICAgICAgICAg
ICByZXNpemVyLnJpZ2h0TmVpZ2hib3JpbmdDb2x1bW5JbmRleCA9IDA7CiAgICAgICAgICAgICB9
CiAgICAgICAgIH0KICAgICAgICAgaWYgKHByZXZpb3VzUmVzaXplcikKLSAgICAgICAgICAgIHBy
ZXZpb3VzUmVzaXplci5yaWdodE5laWdoYm9yaW5nQ29sdW1uSUQgPSBudW1Db2x1bW5zIC0gMTsK
KyAgICAgICAgICAgIHByZXZpb3VzUmVzaXplci5yaWdodE5laWdoYm9yaW5nQ29sdW1uSW5kZXgg
PSBudW1Db2x1bW5zIC0gMTsKICAgICB9LAogCiAgICAgYWRkQ3JlYXRpb25Ob2RlOiBmdW5jdGlv
bihoYXNDaGlsZHJlbikKQEAgLTgwNCw5ICs4MzEsNyBAQCBXZWJJbnNwZWN0b3IuRGF0YUdyaWQu
cHJvdG90eXBlID0gewogICAgICAgICB9IGVsc2UgaWYgKGlzRW50ZXJLZXkoZXZlbnQpKSB7CiAg
ICAgICAgICAgICBpZiAodGhpcy5fZWRpdENhbGxiYWNrKSB7CiAgICAgICAgICAgICAgICAgaGFu
ZGxlZCA9IHRydWU7Ci0gICAgICAgICAgICAgICAgLy8gVGhlIGZpcnN0IGNoaWxkIG9mIHRoZSBz
ZWxlY3RlZCBlbGVtZW50IGlzIHRoZSA8dGQgY2xhc3M9IjAtY29sdW1uIj4sCi0gICAgICAgICAg
ICAgICAgLy8gYW5kIHRoYXQncyB3aGF0IHdlIHdhbnQgdG8gZWRpdC4KLSAgICAgICAgICAgICAg
ICB0aGlzLl9zdGFydEVkaXRpbmcodGhpcy5zZWxlY3RlZE5vZGUuX2VsZW1lbnQuY2hpbGRyZW5b
MF0pOworICAgICAgICAgICAgICAgIHRoaXMuX3N0YXJ0RWRpdGluZyh0aGlzLnNlbGVjdGVkTm9k
ZS5fZWxlbWVudC5jaGlsZHJlblt0aGlzLl9uZXh0RWRpdGFibGVDb2x1bW4oLTEpXSk7CiAgICAg
ICAgICAgICB9CiAgICAgICAgIH0KIApAQCAtODE5LDE3ICs4NDQsMjQgQEAgV2ViSW5zcGVjdG9y
LkRhdGFHcmlkLnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgIGV2ZW50LmNvbnN1bWUodHJ1ZSk7
CiAgICAgfSwKIAorICAgIC8qKgorICAgICAqIEBwYXJhbSB7IU5vZGV9IHRhcmdldAorICAgICAq
IEByZXR1cm4gez9XZWJJbnNwZWN0b3IuRGF0YUdyaWROb2RlfQorICAgICAqLwogICAgIGRhdGFH
cmlkTm9kZUZyb21Ob2RlOiBmdW5jdGlvbih0YXJnZXQpCiAgICAgewogICAgICAgICB2YXIgcm93
RWxlbWVudCA9IHRhcmdldC5lbmNsb3NpbmdOb2RlT3JTZWxmV2l0aE5vZGVOYW1lKCJ0ciIpOwog
ICAgICAgICByZXR1cm4gcm93RWxlbWVudCAmJiByb3dFbGVtZW50Ll9kYXRhR3JpZE5vZGU7CiAg
ICAgfSwKIAotICAgIGRhdGFHcmlkTm9kZUZyb21Qb2ludDogZnVuY3Rpb24oeCwgeSkKKyAgICAv
KioKKyAgICAgKiBAcGFyYW0geyFOb2RlfSB0YXJnZXQKKyAgICAgKiBAcmV0dXJuIHs/c3RyaW5n
fQorICAgICAqLworICAgIGNvbHVtbklkZW50aWZpZXJGcm9tTm9kZTogZnVuY3Rpb24odGFyZ2V0
KQogICAgIHsKLSAgICAgICAgdmFyIG5vZGUgPSB0aGlzLl9kYXRhVGFibGUub3duZXJEb2N1bWVu
dC5lbGVtZW50RnJvbVBvaW50KHgsIHkpOwotICAgICAgICB2YXIgcm93RWxlbWVudCA9IG5vZGUu
ZW5jbG9zaW5nTm9kZU9yU2VsZldpdGhOb2RlTmFtZSgidHIiKTsKLSAgICAgICAgcmV0dXJuIHJv
d0VsZW1lbnQgJiYgcm93RWxlbWVudC5fZGF0YUdyaWROb2RlOworICAgICAgICB2YXIgY2VsbEVs
ZW1lbnQgPSB0YXJnZXQuZW5jbG9zaW5nTm9kZU9yU2VsZldpdGhOb2RlTmFtZSgidGQiKTsKKyAg
ICAgICAgcmV0dXJuIGNlbGxFbGVtZW50ICYmIGNlbGxFbGVtZW50LmNvbHVtbklkZW50aWZpZXJf
OwogICAgIH0sCiAKICAgICBfY2xpY2tJbkhlYWRlckNlbGw6IGZ1bmN0aW9uKGV2ZW50KQpAQCAt
OTAxLDggKzkzMywxMSBAQCBXZWJJbnNwZWN0b3IuRGF0YUdyaWQucHJvdG90eXBlID0gewogICAg
ICAgICAgICAgaWYgKHRoaXMuX2VkaXRDYWxsYmFjaykgewogICAgICAgICAgICAgICAgIGlmIChn
cmlkTm9kZSA9PT0gdGhpcy5jcmVhdGlvbk5vZGUpCiAgICAgICAgICAgICAgICAgICAgIGNvbnRl
eHRNZW51LmFwcGVuZEl0ZW0oV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJBZGQgTmV3IiksIHRoaXMu
X3N0YXJ0RWRpdGluZy5iaW5kKHRoaXMsIGV2ZW50LnRhcmdldCkpOwotICAgICAgICAgICAgICAg
IGVsc2UKLSAgICAgICAgICAgICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXZWJJbnNw
ZWN0b3IuVUlTdHJpbmcoIkVkaXQiKSwgdGhpcy5fc3RhcnRFZGl0aW5nLmJpbmQodGhpcywgZXZl
bnQudGFyZ2V0KSk7CisgICAgICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAgICAgICAg
IHZhciBjb2x1bW5JZGVudGlmaWVyID0gdGhpcy5jb2x1bW5JZGVudGlmaWVyRnJvbU5vZGUoZXZl
bnQudGFyZ2V0KTsKKyAgICAgICAgICAgICAgICAgICAgaWYgKGNvbHVtbklkZW50aWZpZXIgJiYg
dGhpcy5jb2x1bW5zW2NvbHVtbklkZW50aWZpZXJdLmVkaXRhYmxlKQorICAgICAgICAgICAgICAg
ICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkVk
aXQiKSwgdGhpcy5fc3RhcnRFZGl0aW5nLmJpbmQodGhpcywgZXZlbnQudGFyZ2V0KSk7CisgICAg
ICAgICAgICAgICAgfQogICAgICAgICAgICAgfQogICAgICAgICAgICAgaWYgKHRoaXMuX2RlbGV0
ZUNhbGxiYWNrICYmIGdyaWROb2RlICE9PSB0aGlzLmNyZWF0aW9uTm9kZSkKICAgICAgICAgICAg
ICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVtKFdlYkluc3BlY3Rvci5VSVN0cmluZygiRGVsZXRl
IiksIHRoaXMuX2RlbGV0ZUNhbGxiYWNrLmJpbmQodGhpcywgZ3JpZE5vZGUpKTsKQEAgLTk1MSw3
ICs5ODYsNyBAQCBXZWJJbnNwZWN0b3IuRGF0YUdyaWQucHJvdG90eXBlID0gewogICAgIF9zdGFy
dFJlc2l6ZXJEcmFnZ2luZzogZnVuY3Rpb24oZXZlbnQpCiAgICAgewogICAgICAgICB0aGlzLl9j
dXJyZW50UmVzaXplciA9IGV2ZW50LnRhcmdldDsKLSAgICAgICAgcmV0dXJuICEhdGhpcy5fY3Vy
cmVudFJlc2l6ZXIucmlnaHROZWlnaGJvcmluZ0NvbHVtbklECisgICAgICAgIHJldHVybiAhIXRo
aXMuX2N1cnJlbnRSZXNpemVyLnJpZ2h0TmVpZ2hib3JpbmdDb2x1bW5JbmRleAogICAgIH0sCiAK
ICAgICBfcmVzaXplckRyYWdnaW5nOiBmdW5jdGlvbihldmVudCkKQEAgLTk2NSw4ICsxMDAwLDgg
QEAgV2ViSW5zcGVjdG9yLkRhdGFHcmlkLnByb3RvdHlwZSA9IHsKICAgICAgICAgdmFyIGRyYWdQ
b2ludCA9IGV2ZW50LmNsaWVudFggLSB0aGlzLmVsZW1lbnQudG90YWxPZmZzZXRMZWZ0KCk7CiAg
ICAgICAgIC8vIENvbnN0cmFpbiB0aGUgZHJhZ3BvaW50IHRvIGJlIHdpdGhpbiB0aGUgc3BhY2Ug
bWFkZSB1cCBieSB0aGUKICAgICAgICAgLy8gY29sdW1uIGRpcmVjdGx5IHRvIHRoZSBsZWZ0IGFu
ZCB0aGUgY29sdW1uIGRpcmVjdGx5IHRvIHRoZSByaWdodC4KLSAgICAgICAgdmFyIGxlZnRDZWxs
SW5kZXggPSByZXNpemVyLmxlZnROZWlnaGJvcmluZ0NvbHVtbklEOwotICAgICAgICB2YXIgcmln
aHRDZWxsSW5kZXggPSByZXNpemVyLnJpZ2h0TmVpZ2hib3JpbmdDb2x1bW5JRDsKKyAgICAgICAg
dmFyIGxlZnRDZWxsSW5kZXggPSByZXNpemVyLmxlZnROZWlnaGJvcmluZ0NvbHVtbkluZGV4Owor
ICAgICAgICB2YXIgcmlnaHRDZWxsSW5kZXggPSByZXNpemVyLnJpZ2h0TmVpZ2hib3JpbmdDb2x1
bW5JbmRleDsKICAgICAgICAgdmFyIGZpcnN0Um93Q2VsbHMgPSB0aGlzLmhlYWRlclRhYmxlQm9k
eS5yb3dzWzBdLmNlbGxzOwogICAgICAgICB2YXIgbGVmdEVkZ2VPZlByZXZpb3VzQ29sdW1uID0g
MDsKICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsZWZ0Q2VsbEluZGV4OyBpKyspCkBAIC0x
MjI3LDYgKzEyNjIsNyBAQCBXZWJJbnNwZWN0b3IuRGF0YUdyaWROb2RlLnByb3RvdHlwZSA9IHsK
ICAgICB7CiAgICAgICAgIHZhciBjZWxsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgidGQiKTsK
ICAgICAgICAgY2VsbC5jbGFzc05hbWUgPSBjb2x1bW5JZGVudGlmaWVyICsgIi1jb2x1bW4iOwor
ICAgICAgICBjZWxsLmNvbHVtbklkZW50aWZpZXJfID0gY29sdW1uSWRlbnRpZmllcjsKIAogICAg
ICAgICB2YXIgYWxpZ25tZW50ID0gdGhpcy5kYXRhR3JpZC5hbGlnbmVkW2NvbHVtbklkZW50aWZp
ZXJdOwogICAgICAgICBpZiAoYWxpZ25tZW50KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL2Zyb250LWVuZC9OZXR3b3JrUGFuZWwuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNw
ZWN0b3IvZnJvbnQtZW5kL05ldHdvcmtQYW5lbC5qcwppbmRleCAwOGQxZTUwMGNkOTNmMDJmNmU5
Y2YzOGM2NmJkYTc3NTdjZWVjYTU2Li44M2QzZThkNTc2NmMzNzVhODczZGYwNmZhNzQwZDA4Yjll
NzY4M2UwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL05l
dHdvcmtQYW5lbC5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL05l
dHdvcmtQYW5lbC5qcwpAQCAtNTM1LDcgKzUzNSw3IEBAIFdlYkluc3BlY3Rvci5OZXR3b3JrTG9n
Vmlldy5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIHZhciB0aW1l
bGluZUNvbHVtbiA9IHRoaXMuX2RhdGFHcmlkLmNvbHVtbnMudGltZWxpbmU7CiAgICAgICAgIGZv
ciAodmFyIGkgPSAwOyBpIDwgdGhpcy5fZGF0YUdyaWQucmVzaXplcnMubGVuZ3RoOyArK2kpIHsK
LSAgICAgICAgICAgIGlmICh0aW1lbGluZUNvbHVtbi5vcmRpbmFsID09PSB0aGlzLl9kYXRhR3Jp
ZC5yZXNpemVyc1tpXS5yaWdodE5laWdoYm9yaW5nQ29sdW1uSUQpIHsKKyAgICAgICAgICAgIGlm
ICh0aW1lbGluZUNvbHVtbi5vcmRpbmFsID09PSB0aGlzLl9kYXRhR3JpZC5yZXNpemVyc1tpXS5y
aWdodE5laWdoYm9yaW5nQ29sdW1uSW5kZXgpIHsKICAgICAgICAgICAgICAgICAvLyBQb3NpdGlv
biB0aW1saW5lIGdyaWQgbG9jYXRpb24uCiAgICAgICAgICAgICAgICAgdGhpcy5fdGltZWxpbmVH
cmlkLmVsZW1lbnQuc3R5bGUubGVmdCA9IHRoaXMuX2RhdGFHcmlkLnJlc2l6ZXJzW2ldLnN0eWxl
LmxlZnQ7CiAgICAgICAgICAgICAgICAgdGhpcy5fdGltZWxpbmVHcmlkLmVsZW1lbnQuc3R5bGUu
cmlnaHQgPSAiMThweCI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggOGIzMzc0MmY1YjUyZDIwMmY5YWJjZGY0MWI5YWJhN2Iy
NWFjNTUyOS4uYjZiM2Y4MWRkMmJmMmE5NTdjNzQzOTg3NDQ3OWQyNDdjYmUwYzU2ZSAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDEzIEBACisyMDEyLTEyLTI4ICBFdWdlbmUgS2x5dWNobmlrb3YgIDxldXN0YXNA
Y2hyb21pdW0ub3JnPgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6IERhdGFHcmlkIHJlZmFjdG9y
aW5nOiBtYWtlIGNlbGwgZWRpdGluZyBtb3JlIGdlbmVyaWMuCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDU4NDkKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGluc3BlY3Rvci9zdG9yYWdlLXBhbmVsLWRv
bS1zdG9yYWdlLXVwZGF0ZS5odG1sOiBGaXggY29sdW1uIG5hbWVzLgorICAgICAgICAqIGluc3Bl
Y3Rvci9zdG9yYWdlLXBhbmVsLWRvbS1zdG9yYWdlLmh0bWw6IERpdHRvLgorCiAyMDEyLTEyLTI4
ICBGYWR5IFNhbXVlbCAgPGZzYW11ZWxAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFVucmV2aWV3
ZWQgcmViYXNlbGluZS4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9zdG9yYWdl
LXBhbmVsLWRvbS1zdG9yYWdlLXVwZGF0ZS5odG1sIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3N0
b3JhZ2UtcGFuZWwtZG9tLXN0b3JhZ2UtdXBkYXRlLmh0bWwKaW5kZXggNTdkYjhmMDdhNGFlNWYx
YzAzYmY4OGUyMGI0M2ExZmY5MWFiZDQ3My4uMTlhYTcyMmNjYzg5YmE3MDVlZjU3OGRhNDZkOTc3
Mjc0NDEyYmViYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3N0b3JhZ2UtcGFu
ZWwtZG9tLXN0b3JhZ2UtdXBkYXRlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3N0
b3JhZ2UtcGFuZWwtZG9tLXN0b3JhZ2UtdXBkYXRlLmh0bWwKQEAgLTMzLDggKzMzLDggQEAgZnVu
Y3Rpb24gdGVzdCgpCiAgICAgICAgIHZhciByb3dzID0gW107DQogICAgICAgICBmb3IgKHZhciBp
ID0gMDsgaSA8IG5vZGVzLmxlbmd0aDsgKytpKSB7DQogICAgICAgICAgICAgdmFyIG5vZGUgPSBu
b2Rlc1tpXTsNCi0gICAgICAgICAgICBpZiAobm9kZS5fZGF0YVswXS5sZW5ndGgpDQotICAgICAg
ICAgICAgICAgIHJvd3MucHVzaChub2RlLl9kYXRhWzBdICsgbm9kZS5fZGF0YVsxXSk7DQorICAg
ICAgICAgICAgaWYgKG5vZGUuX2RhdGEua2V5Lmxlbmd0aCkNCisgICAgICAgICAgICAgICAgcm93
cy5wdXNoKG5vZGUuX2RhdGEua2V5ICsgbm9kZS5fZGF0YS52YWx1ZSk7DQogICAgICAgICB9DQog
ICAgICAgICByb3dzLnNvcnQoKTsNCiAgICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KCJL
ZXlWYWx1ZSBwYWlyczogWyIgKyByb3dzLmpvaW4oKSArICJdIik7DQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW5zcGVjdG9yL3N0b3JhZ2UtcGFuZWwtZG9tLXN0b3JhZ2UuaHRtbCBiL0xheW91
dFRlc3RzL2luc3BlY3Rvci9zdG9yYWdlLXBhbmVsLWRvbS1zdG9yYWdlLmh0bWwKaW5kZXggNmQ2
YjdiYTc5ZmZhYTUwN2NhNjIyNDVlMzczN2IyZTE0NmI2NDg3Yi4uZWVjN2JkMTZmODIxYWM5YjY1
M2UxZTE5MTZkZDAzNTM4YThmZGI2NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9y
L3N0b3JhZ2UtcGFuZWwtZG9tLXN0b3JhZ2UuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0
b3Ivc3RvcmFnZS1wYW5lbC1kb20tc3RvcmFnZS5odG1sCkBAIC0zMyw3ICszMyw3IEBAIGZ1bmN0
aW9uIHRlc3QoKQogICAgICAgICB2YXIgcm93cyA9IFtdOwogICAgICAgICBmb3IgKHZhciBpID0g
MDsgaSA8IG5vZGVzLmxlbmd0aDsgKytpKSB7CiAgICAgICAgICAgICB2YXIgbm9kZSA9IG5vZGVz
W2ldOwotICAgICAgICAgICAgcm93cy5wdXNoKG5vZGUuX2RhdGFbMF0gKyBub2RlLl9kYXRhWzFd
KTsKKyAgICAgICAgICAgIHJvd3MucHVzaChub2RlLl9kYXRhLmtleSArIG5vZGUuX2RhdGEudmFs
dWUpOwogICAgICAgICB9CiAgICAgICAgIHJvd3Muc29ydCgpOwogICAgICAgICBJbnNwZWN0b3JU
ZXN0LmFkZFJlc3VsdCgiS2V5VmFsdWUgcGFpcnM6ICIgKyByb3dzLmpvaW4oJycpKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>