<?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>87135</bug_id>
          
          <creation_ts>2012-05-22 08:27:51 -0700</creation_ts>
          <short_desc>Web Inspector: JavaScriptSourceFrame should be based on JavaScriptSource not UISourceCode.</short_desc>
          <delta_ts>2012-05-22 10:12:48 -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 (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>0</everconfirmed>
          <reporter name="Vsevolod Vlasov">vsevik</reporter>
          <assigned_to name="Vsevolod Vlasov">vsevik</assigned_to>
          <cc>apavlov</cc>
    
    <cc>bweinstein</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>630395</commentid>
    <comment_count>0</comment_count>
    <who name="Vsevolod Vlasov">vsevik</who>
    <bug_when>2012-05-22 08:27:51 -0700</bug_when>
    <thetext>This is already implied by code, just renaming a field.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>630398</commentid>
    <comment_count>1</comment_count>
      <attachid>143308</attachid>
    <who name="Vsevolod Vlasov">vsevik</who>
    <bug_when>2012-05-22 08:31:31 -0700</bug_when>
    <thetext>Created attachment 143308
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>630402</commentid>
    <comment_count>2</comment_count>
      <attachid>143309</attachid>
    <who name="Vsevolod Vlasov">vsevik</who>
    <bug_when>2012-05-22 08:36:34 -0700</bug_when>
    <thetext>Created attachment 143309
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>630491</commentid>
    <comment_count>3</comment_count>
    <who name="Vsevolod Vlasov">vsevik</who>
    <bug_when>2012-05-22 10:12:48 -0700</bug_when>
    <thetext>Committed r117992: &lt;http://trac.webkit.org/changeset/117992&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>143308</attachid>
            <date>2012-05-22 08:31:31 -0700</date>
            <delta_ts>2012-05-22 08:36:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-87135-20120522193129.patch</filename>
            <type>text/plain</type>
            <size>14273</size>
            <attacher name="Vsevolod Vlasov">vsevik</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE3OTczCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2VhYTIzNGJiYTUyYTFj
Mjc1Y2QzMzNkYjRiMDNkOGIwMmRkOWJjYS4uYWEwZjI3OTUwMTBmODNiZjc3NDUyYzIzMWU4OTZm
OGRlYTM2YjBjYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDEyLTA1LTIyICBWc2V2
b2xvZCBWbGFzb3YgIDx2c2V2aWtAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFdlYiBJbnNwZWN0
b3I6IEphdmFTY3JpcHRTb3VyY2VGcmFtZSBzaG91bGQgYmUgYmFzZWQgb24gSmF2YVNjcmlwdFNv
dXJjZSBub3QgVUlTb3VyY2VDb2RlLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9ODcxMzUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBSZW5hbWVkIF91aVNvdXJjZUNvZGUgdG8gX2phdmFTY3JpcHRTb3VyY2Ug
aW4gSmF2YVNjcmlwdFNvdXJjZUZyYW1lLgorICAgICAgICBSZW1vdmVkIHVudXNlZCB1aVNvdXJj
ZUNvZGUgZ2V0dGVyIGZyb20gSmF2YVNjcmlwdFNvdXJjZUZyYW1lLgorCisgICAgICAgICogaW5z
cGVjdG9yL2Zyb250LWVuZC9KYXZhU2NyaXB0U291cmNlRnJhbWUuanM6CisgICAgICAgIChXZWJJ
bnNwZWN0b3IuSmF2YVNjcmlwdFNvdXJjZUZyYW1lKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5K
YXZhU2NyaXB0U291cmNlRnJhbWUucHJvdG90eXBlLmNhbkVkaXRTb3VyY2UpOgorICAgICAgICAo
V2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2VGcmFtZS5wcm90b3R5cGUuY29tbWl0RWRpdGlu
Zyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSmF2YVNjcmlwdFNvdXJjZUZyYW1lLnByb3RvdHlw
ZS5fb25Db250ZW50Q2hhbmdlZCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSmF2YVNjcmlwdFNv
dXJjZUZyYW1lLnByb3RvdHlwZS5wb3B1bGF0ZUxpbmVHdXR0ZXJDb250ZXh0TWVudSk6CisgICAg
ICAgIChXZWJJbnNwZWN0b3IuSmF2YVNjcmlwdFNvdXJjZUZyYW1lLnByb3RvdHlwZS5wb3B1bGF0
ZVRleHRBcmVhQ29udGV4dE1lbnUpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRT
b3VyY2VGcmFtZS5wcm90b3R5cGUuYWZ0ZXJUZXh0Q2hhbmdlZCk6CisgICAgICAgIChXZWJJbnNw
ZWN0b3IuSmF2YVNjcmlwdFNvdXJjZUZyYW1lLnByb3RvdHlwZS5iZWZvcmVUZXh0Q2hhbmdlZCk6
CisgICAgICAgIChXZWJJbnNwZWN0b3IuSmF2YVNjcmlwdFNvdXJjZUZyYW1lLnByb3RvdHlwZS5f
b25Nb3VzZURvd24pOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2VGcmFt
ZS5wcm90b3R5cGUuX2JyZWFrcG9pbnRBZGRlZCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSmF2
YVNjcmlwdFNvdXJjZUZyYW1lLnByb3RvdHlwZS5fYnJlYWtwb2ludFJlbW92ZWQpOgorICAgICAg
ICAoV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2VGcmFtZS5wcm90b3R5cGUub25UZXh0Vmll
d2VyQ29udGVudExvYWRlZCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSmF2YVNjcmlwdFNvdXJj
ZUZyYW1lLnByb3RvdHlwZS5fc2V0QnJlYWtwb2ludCk6CisgICAgICAgIChXZWJJbnNwZWN0b3Iu
SmF2YVNjcmlwdFNvdXJjZUZyYW1lLnByb3RvdHlwZS5fY29udGludWVUb0xpbmUpOgorICAgICAg
ICAqIGluc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0c1BhbmVsLmpzOgorICAgICAgICAoV2ViSW5z
cGVjdG9yLlNjcmlwdHNQYW5lbC5wcm90b3R5cGUuX2NyZWF0ZVNvdXJjZUZyYW1lKToKKwogMjAx
Mi0wNS0yMiAgSWx5YSBUaWtob25vdnNreSAgPGxvaXNsb0BjaHJvbWl1bS5vcmc+CiAKICAgICAg
ICAgV2ViIEluc3BlY3RvcjogSGVhcFNuYXBzaG90OiBzcGVlZFVwIGJ1aWxkQWdncmVnYXRlcy4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSmF2YVNjcmlw
dFNvdXJjZUZyYW1lLmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9KYXZh
U2NyaXB0U291cmNlRnJhbWUuanMKaW5kZXggZDJiNDRmZThhYTFjOTVjMGNhZDU4YTliNGQ2MTZh
YzU0ZGU5M2NlNS4uZjUzNDg3NmM1NjhhYzZhODJkNDAzM2E5YWNiNWMyYmNlZTVhMGNkZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9KYXZhU2NyaXB0U291
cmNlRnJhbWUuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9KYXZh
U2NyaXB0U291cmNlRnJhbWUuanMKQEAgLTMyLDE5ICszMiwxOSBAQAogICogQGNvbnN0cnVjdG9y
CiAgKiBAZXh0ZW5kcyB7V2ViSW5zcGVjdG9yLlNvdXJjZUZyYW1lfQogICogQHBhcmFtIHtXZWJJ
bnNwZWN0b3IuU2NyaXB0c1BhbmVsfSBzY3JpcHRzUGFuZWwKLSAqIEBwYXJhbSB7V2ViSW5zcGVj
dG9yLlVJU291cmNlQ29kZX0gdWlTb3VyY2VDb2RlCisgKiBAcGFyYW0ge1dlYkluc3BlY3Rvci5K
YXZhU2NyaXB0U291cmNlfSBqYXZhU2NyaXB0U291cmNlCiAgKi8KLVdlYkluc3BlY3Rvci5KYXZh
U2NyaXB0U291cmNlRnJhbWUgPSBmdW5jdGlvbihzY3JpcHRzUGFuZWwsIHVpU291cmNlQ29kZSkK
K1dlYkluc3BlY3Rvci5KYXZhU2NyaXB0U291cmNlRnJhbWUgPSBmdW5jdGlvbihzY3JpcHRzUGFu
ZWwsIGphdmFTY3JpcHRTb3VyY2UpCiB7CiAgICAgdGhpcy5fc2NyaXB0c1BhbmVsID0gc2NyaXB0
c1BhbmVsOwogICAgIHRoaXMuX2JyZWFrcG9pbnRNYW5hZ2VyID0gV2ViSW5zcGVjdG9yLmJyZWFr
cG9pbnRNYW5hZ2VyOwotICAgIHRoaXMuX3VpU291cmNlQ29kZSA9IHVpU291cmNlQ29kZTsKKyAg
ICB0aGlzLl9qYXZhU2NyaXB0U291cmNlID0gamF2YVNjcmlwdFNvdXJjZTsKIAotICAgIHZhciBs
b2NhdGlvbnMgPSB0aGlzLl9icmVha3BvaW50TWFuYWdlci5icmVha3BvaW50TG9jYXRpb25zRm9y
VUlTb3VyY2VDb2RlKHRoaXMuX3VpU291cmNlQ29kZSk7CisgICAgdmFyIGxvY2F0aW9ucyA9IHRo
aXMuX2JyZWFrcG9pbnRNYW5hZ2VyLmJyZWFrcG9pbnRMb2NhdGlvbnNGb3JVSVNvdXJjZUNvZGUo
dGhpcy5famF2YVNjcmlwdFNvdXJjZSk7CiAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsb2NhdGlv
bnMubGVuZ3RoOyArK2kpCiAgICAgICAgIHRoaXMuX2JyZWFrcG9pbnRBZGRlZCh7ZGF0YTpsb2Nh
dGlvbnNbaV19KTsKIAotICAgIFdlYkluc3BlY3Rvci5Tb3VyY2VGcmFtZS5jYWxsKHRoaXMsIHVp
U291cmNlQ29kZSk7CisgICAgV2ViSW5zcGVjdG9yLlNvdXJjZUZyYW1lLmNhbGwodGhpcywgamF2
YVNjcmlwdFNvdXJjZSk7CiAKICAgICB0aGlzLl9wb3BvdmVySGVscGVyID0gbmV3IFdlYkluc3Bl
Y3Rvci5PYmplY3RQb3BvdmVySGVscGVyKHRoaXMudGV4dFZpZXdlci5lbGVtZW50LAogICAgICAg
ICAgICAgdGhpcy5fZ2V0UG9wb3ZlckFuY2hvci5iaW5kKHRoaXMpLCB0aGlzLl9yZXNvbHZlT2Jq
ZWN0Rm9yUG9wb3Zlci5iaW5kKHRoaXMpLCB0aGlzLl9vbkhpZGVQb3BvdmVyLmJpbmQodGhpcyks
IHRydWUpOwpAQCAtNTUsMTggKzU1LDEzIEBAIFdlYkluc3BlY3Rvci5KYXZhU2NyaXB0U291cmNl
RnJhbWUgPSBmdW5jdGlvbihzY3JpcHRzUGFuZWwsIHVpU291cmNlQ29kZSkKICAgICB0aGlzLl9i
cmVha3BvaW50TWFuYWdlci5hZGRFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5CcmVha3BvaW50
TWFuYWdlci5FdmVudHMuQnJlYWtwb2ludEFkZGVkLCB0aGlzLl9icmVha3BvaW50QWRkZWQsIHRo
aXMpOwogICAgIHRoaXMuX2JyZWFrcG9pbnRNYW5hZ2VyLmFkZEV2ZW50TGlzdGVuZXIoV2ViSW5z
cGVjdG9yLkJyZWFrcG9pbnRNYW5hZ2VyLkV2ZW50cy5CcmVha3BvaW50UmVtb3ZlZCwgdGhpcy5f
YnJlYWtwb2ludFJlbW92ZWQsIHRoaXMpOwogCi0gICAgdGhpcy5fdWlTb3VyY2VDb2RlLmFkZEV2
ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLlVJU291cmNlQ29kZS5FdmVudHMuQ29udGVudENoYW5n
ZWQsIHRoaXMuX29uQ29udGVudENoYW5nZWQsIHRoaXMpOwotICAgIHRoaXMuX3VpU291cmNlQ29k
ZS5hZGRFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5VSVNvdXJjZUNvZGUuRXZlbnRzLkNvbnNv
bGVNZXNzYWdlQWRkZWQsIHRoaXMuX2NvbnNvbGVNZXNzYWdlQWRkZWQsIHRoaXMpOwotICAgIHRo
aXMuX3VpU291cmNlQ29kZS5hZGRFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5VSVNvdXJjZUNv
ZGUuRXZlbnRzLkNvbnNvbGVNZXNzYWdlUmVtb3ZlZCwgdGhpcy5fY29uc29sZU1lc3NhZ2VSZW1v
dmVkLCB0aGlzKTsKLSAgICB0aGlzLl91aVNvdXJjZUNvZGUuYWRkRXZlbnRMaXN0ZW5lcihXZWJJ
bnNwZWN0b3IuVUlTb3VyY2VDb2RlLkV2ZW50cy5Db25zb2xlTWVzc2FnZXNDbGVhcmVkLCB0aGlz
Ll9jb25zb2xlTWVzc2FnZXNDbGVhcmVkLCB0aGlzKTsKKyAgICB0aGlzLl9qYXZhU2NyaXB0U291
cmNlLmFkZEV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLlVJU291cmNlQ29kZS5FdmVudHMuQ29u
dGVudENoYW5nZWQsIHRoaXMuX29uQ29udGVudENoYW5nZWQsIHRoaXMpOworICAgIHRoaXMuX2ph
dmFTY3JpcHRTb3VyY2UuYWRkRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuVUlTb3VyY2VDb2Rl
LkV2ZW50cy5Db25zb2xlTWVzc2FnZUFkZGVkLCB0aGlzLl9jb25zb2xlTWVzc2FnZUFkZGVkLCB0
aGlzKTsKKyAgICB0aGlzLl9qYXZhU2NyaXB0U291cmNlLmFkZEV2ZW50TGlzdGVuZXIoV2ViSW5z
cGVjdG9yLlVJU291cmNlQ29kZS5FdmVudHMuQ29uc29sZU1lc3NhZ2VSZW1vdmVkLCB0aGlzLl9j
b25zb2xlTWVzc2FnZVJlbW92ZWQsIHRoaXMpOworICAgIHRoaXMuX2phdmFTY3JpcHRTb3VyY2Uu
YWRkRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuVUlTb3VyY2VDb2RlLkV2ZW50cy5Db25zb2xl
TWVzc2FnZXNDbGVhcmVkLCB0aGlzLl9jb25zb2xlTWVzc2FnZXNDbGVhcmVkLCB0aGlzKTsKIH0K
IAogV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2VGcmFtZS5wcm90b3R5cGUgPSB7Ci0gICAg
Z2V0IHVpU291cmNlQ29kZSgpCi0gICAgewotICAgICAgICByZXR1cm4gdGhpcy5fdWlTb3VyY2VD
b2RlOwotICAgIH0sCi0KICAgICAvLyBWaWV3IGV2ZW50cwogICAgIHdhc1Nob3duOiBmdW5jdGlv
bigpCiAgICAgewpAQCAtODQsNyArNzksNyBAQCBXZWJJbnNwZWN0b3IuSmF2YVNjcmlwdFNvdXJj
ZUZyYW1lLnByb3RvdHlwZSA9IHsKICAgICAgKi8KICAgICBjYW5FZGl0U291cmNlOiBmdW5jdGlv
bigpCiAgICAgewotICAgICAgICByZXR1cm4gdGhpcy5fdWlTb3VyY2VDb2RlLmlzRWRpdGFibGUo
KTsKKyAgICAgICAgcmV0dXJuIHRoaXMuX2phdmFTY3JpcHRTb3VyY2UuaXNFZGl0YWJsZSgpOwog
ICAgIH0sCiAKICAgICAvKioKQEAgLTkyLDExICs4NywxMSBAQCBXZWJJbnNwZWN0b3IuSmF2YVNj
cmlwdFNvdXJjZUZyYW1lLnByb3RvdHlwZSA9IHsKICAgICAgKi8KICAgICBjb21taXRFZGl0aW5n
OiBmdW5jdGlvbih0ZXh0KQogICAgIHsKLSAgICAgICAgaWYgKCF0aGlzLl91aVNvdXJjZUNvZGUu
aXNEaXJ0eSgpKQorICAgICAgICBpZiAoIXRoaXMuX2phdmFTY3JpcHRTb3VyY2UuaXNEaXJ0eSgp
KQogICAgICAgICAgICAgcmV0dXJuOwogCiAgICAgICAgIHRoaXMuX2lzQ29tbWl0dGluZ0VkaXRp
bmcgPSB0cnVlOwotICAgICAgICB0aGlzLl91aVNvdXJjZUNvZGUuY29tbWl0V29ya2luZ0NvcHko
dGhpcy5fZGlkRWRpdENvbnRlbnQuYmluZCh0aGlzKSk7CisgICAgICAgIHRoaXMuX2phdmFTY3Jp
cHRTb3VyY2UuY29tbWl0V29ya2luZ0NvcHkodGhpcy5fZGlkRWRpdENvbnRlbnQuYmluZCh0aGlz
KSk7CiAgICAgfSwKIAogICAgIC8qKgpAQCAtMTA4LDEzICsxMDMsMTMgQEAgV2ViSW5zcGVjdG9y
LkphdmFTY3JpcHRTb3VyY2VGcmFtZS5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICByZXR1cm47
CiAgICAgICAgIHZhciBjb250ZW50ID0gLyoqIEB0eXBlIHtzdHJpbmd9ICovIGV2ZW50LmRhdGEu
Y29udGVudDsKIAotICAgICAgICBpZiAodGhpcy5fdWlTb3VyY2VDb2RlLnRvZ2dsaW5nRm9ybWF0
dGVyKCkpCi0gICAgICAgICAgICB0aGlzLnNldENvbnRlbnQoY29udGVudCwgZmFsc2UsIHRoaXMu
X3VpU291cmNlQ29kZS5taW1lVHlwZSgpKTsKKyAgICAgICAgaWYgKHRoaXMuX2phdmFTY3JpcHRT
b3VyY2UudG9nZ2xpbmdGb3JtYXR0ZXIoKSkKKyAgICAgICAgICAgIHRoaXMuc2V0Q29udGVudChj
b250ZW50LCBmYWxzZSwgdGhpcy5famF2YVNjcmlwdFNvdXJjZS5taW1lVHlwZSgpKTsKICAgICAg
ICAgZWxzZSB7Ci0gICAgICAgICAgICB2YXIgYnJlYWtwb2ludExvY2F0aW9ucyA9IHRoaXMuX2Jy
ZWFrcG9pbnRNYW5hZ2VyLmJyZWFrcG9pbnRMb2NhdGlvbnNGb3JVSVNvdXJjZUNvZGUodGhpcy5f
dWlTb3VyY2VDb2RlKTsKKyAgICAgICAgICAgIHZhciBicmVha3BvaW50TG9jYXRpb25zID0gdGhp
cy5fYnJlYWtwb2ludE1hbmFnZXIuYnJlYWtwb2ludExvY2F0aW9uc0ZvclVJU291cmNlQ29kZSh0
aGlzLl9qYXZhU2NyaXB0U291cmNlKTsKICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwg
YnJlYWtwb2ludExvY2F0aW9ucy5sZW5ndGg7ICsraSkKICAgICAgICAgICAgICAgICBicmVha3Bv
aW50TG9jYXRpb25zW2ldLmJyZWFrcG9pbnQucmVtb3ZlKCk7Ci0gICAgICAgICAgICB0aGlzLnNl
dENvbnRlbnQoY29udGVudCwgZmFsc2UsIHRoaXMuX3VpU291cmNlQ29kZS5taW1lVHlwZSgpKTsK
KyAgICAgICAgICAgIHRoaXMuc2V0Q29udGVudChjb250ZW50LCBmYWxzZSwgdGhpcy5famF2YVNj
cmlwdFNvdXJjZS5taW1lVHlwZSgpKTsKICAgICAgICAgfQogICAgIH0sCiAKQEAgLTEyMiw3ICsx
MTcsNyBAQCBXZWJJbnNwZWN0b3IuSmF2YVNjcmlwdFNvdXJjZUZyYW1lLnByb3RvdHlwZSA9IHsK
ICAgICB7CiAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0oV2ViSW5zcGVjdG9yLlVJU3Ry
aW5nKFdlYkluc3BlY3Rvci51c2VMb3dlckNhc2VNZW51VGl0bGVzKCkgPyAiQ29udGludWUgdG8g
aGVyZSIgOiAiQ29udGludWUgdG8gSGVyZSIpLCB0aGlzLl9jb250aW51ZVRvTGluZS5iaW5kKHRo
aXMsIGxpbmVOdW1iZXIpKTsKIAotICAgICAgICB2YXIgYnJlYWtwb2ludCA9IHRoaXMuX2JyZWFr
cG9pbnRNYW5hZ2VyLmZpbmRCcmVha3BvaW50KHRoaXMuX3VpU291cmNlQ29kZSwgbGluZU51bWJl
cik7CisgICAgICAgIHZhciBicmVha3BvaW50ID0gdGhpcy5fYnJlYWtwb2ludE1hbmFnZXIuZmlu
ZEJyZWFrcG9pbnQodGhpcy5famF2YVNjcmlwdFNvdXJjZSwgbGluZU51bWJlcik7CiAgICAgICAg
IGlmICghYnJlYWtwb2ludCkgewogICAgICAgICAgICAgLy8gVGhpcyByb3cgZG9lc24ndCBoYXZl
IGEgYnJlYWtwb2ludDogV2Ugd2FudCB0byBzaG93IEFkZCBCcmVha3BvaW50IGFuZCBBZGQgYW5k
IEVkaXQgQnJlYWtwb2ludC4KICAgICAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0oV2Vi
SW5zcGVjdG9yLlVJU3RyaW5nKFdlYkluc3BlY3Rvci51c2VMb3dlckNhc2VNZW51VGl0bGVzKCkg
PyAiQWRkIGJyZWFrcG9pbnQiIDogIkFkZCBCcmVha3BvaW50IiksIHRoaXMuX3NldEJyZWFrcG9p
bnQuYmluZCh0aGlzLCBsaW5lTnVtYmVyLCAiIiwgdHJ1ZSkpOwpAQCAtMTQ5LDIxICsxNDQsMjEg
QEAgV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2VGcmFtZS5wcm90b3R5cGUgPSB7CiAgICAg
ICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVtKGV2YWx1YXRlTGFiZWwsIFdlYkluc3BlY3Rv
ci5ldmFsdWF0ZUluQ29uc29sZS5iaW5kKFdlYkluc3BlY3Rvciwgc2VsZWN0aW9uLnRvU3RyaW5n
KCkpKTsKICAgICAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZFNlcGFyYXRvcigpOwogICAgICAg
ICB9Ci0gICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEFwcGxpY2FibGVJdGVtcyh0aGlzLl91aVNv
dXJjZUNvZGUpOworICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRBcHBsaWNhYmxlSXRlbXModGhp
cy5famF2YVNjcmlwdFNvdXJjZSk7CiAgICAgfSwKIAogICAgIGFmdGVyVGV4dENoYW5nZWQ6IGZ1
bmN0aW9uKG9sZFJhbmdlLCBuZXdSYW5nZSkKICAgICB7Ci0gICAgICAgIHRoaXMuX3VpU291cmNl
Q29kZS5zZXRXb3JraW5nQ29weSh0aGlzLnRleHRNb2RlbC50ZXh0KTsKLSAgICAgICAgaWYgKCF0
aGlzLl91aVNvdXJjZUNvZGUuaXNEaXJ0eSgpKQorICAgICAgICB0aGlzLl9qYXZhU2NyaXB0U291
cmNlLnNldFdvcmtpbmdDb3B5KHRoaXMudGV4dE1vZGVsLnRleHQpOworICAgICAgICBpZiAoIXRo
aXMuX2phdmFTY3JpcHRTb3VyY2UuaXNEaXJ0eSgpKQogICAgICAgICAgICAgdGhpcy5fZGlkRWRp
dENvbnRlbnQobnVsbCk7CiAgICAgfSwKIAogICAgIGJlZm9yZVRleHRDaGFuZ2VkOiBmdW5jdGlv
bigpCiAgICAgewotICAgICAgICBpZiAoIXRoaXMuX3VpU291cmNlQ29kZS5pc0RpcnR5KCkpIHsK
KyAgICAgICAgaWYgKCF0aGlzLl9qYXZhU2NyaXB0U291cmNlLmlzRGlydHkoKSkgewogICAgICAg
ICAgICAgLy8gRGlzYWJsZSBhbGwgYnJlYWtwb2ludHMgaW4gdGhlIG1vZGVsLCBzdG9yZSB0aGVt
IGFzIG11dGVkIGJyZWFrcG9pbnRzLgotICAgICAgICAgICAgdmFyIGJyZWFrcG9pbnRMb2NhdGlv
bnMgPSB0aGlzLl9icmVha3BvaW50TWFuYWdlci5icmVha3BvaW50TG9jYXRpb25zRm9yVUlTb3Vy
Y2VDb2RlKHRoaXMuX3VpU291cmNlQ29kZSk7CisgICAgICAgICAgICB2YXIgYnJlYWtwb2ludExv
Y2F0aW9ucyA9IHRoaXMuX2JyZWFrcG9pbnRNYW5hZ2VyLmJyZWFrcG9pbnRMb2NhdGlvbnNGb3JV
SVNvdXJjZUNvZGUodGhpcy5famF2YVNjcmlwdFNvdXJjZSk7CiAgICAgICAgICAgICB2YXIgbGlu
ZU51bWJlcnMgPSB7fTsKICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgYnJlYWtwb2lu
dExvY2F0aW9ucy5sZW5ndGg7ICsraSkgewogICAgICAgICAgICAgICAgIHZhciBicmVha3BvaW50
ID0gYnJlYWtwb2ludExvY2F0aW9uc1tpXS5icmVha3BvaW50OwpAQCAtMzUzLDcgKzM0OCw3IEBA
IFdlYkluc3BlY3Rvci5KYXZhU2NyaXB0U291cmNlRnJhbWUucHJvdG90eXBlID0gewogCiAgICAg
X29uTW91c2VEb3duOiBmdW5jdGlvbihldmVudCkKICAgICB7Ci0gICAgICAgIGlmICh0aGlzLl91
aVNvdXJjZUNvZGUuaXNEaXJ0eSgpKQorICAgICAgICBpZiAodGhpcy5famF2YVNjcmlwdFNvdXJj
ZS5pc0RpcnR5KCkpCiAgICAgICAgICAgICByZXR1cm47CiAKICAgICAgICAgaWYgKGV2ZW50LmJ1
dHRvbiAhPSAwIHx8IGV2ZW50LmFsdEtleSB8fCBldmVudC5jdHJsS2V5IHx8IGV2ZW50Lm1ldGFL
ZXkpCkBAIC0zNjMsNyArMzU4LDcgQEAgV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2VGcmFt
ZS5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIHZhciBsaW5lTnVt
YmVyID0gdGFyZ2V0LmxpbmVOdW1iZXI7CiAKLSAgICAgICAgdmFyIGJyZWFrcG9pbnQgPSB0aGlz
Ll9icmVha3BvaW50TWFuYWdlci5maW5kQnJlYWtwb2ludCh0aGlzLl91aVNvdXJjZUNvZGUsIGxp
bmVOdW1iZXIpOworICAgICAgICB2YXIgYnJlYWtwb2ludCA9IHRoaXMuX2JyZWFrcG9pbnRNYW5h
Z2VyLmZpbmRCcmVha3BvaW50KHRoaXMuX2phdmFTY3JpcHRTb3VyY2UsIGxpbmVOdW1iZXIpOwog
ICAgICAgICBpZiAoYnJlYWtwb2ludCkgewogICAgICAgICAgICAgaWYgKGV2ZW50LnNoaWZ0S2V5
KQogICAgICAgICAgICAgICAgIGJyZWFrcG9pbnQuc2V0RW5hYmxlZCghYnJlYWtwb2ludC5lbmFi
bGVkKCkpOwpAQCAtNDc1LDcgKzQ3MCw3IEBAIFdlYkluc3BlY3Rvci5KYXZhU2NyaXB0U291cmNl
RnJhbWUucHJvdG90eXBlID0gewogICAgIHsKICAgICAgICAgdmFyIHVpTG9jYXRpb24gPSAvKiog
QHR5cGUge1dlYkluc3BlY3Rvci5VSUxvY2F0aW9ufSAqLyBldmVudC5kYXRhLnVpTG9jYXRpb247
CiAKLSAgICAgICAgaWYgKHVpTG9jYXRpb24udWlTb3VyY2VDb2RlICE9PSB0aGlzLl91aVNvdXJj
ZUNvZGUpCisgICAgICAgIGlmICh1aUxvY2F0aW9uLnVpU291cmNlQ29kZSAhPT0gdGhpcy5famF2
YVNjcmlwdFNvdXJjZSkKICAgICAgICAgICAgIHJldHVybjsKIAogICAgICAgICB2YXIgYnJlYWtw
b2ludCA9IC8qKiBAdHlwZSB7V2ViSW5zcGVjdG9yLkJyZWFrcG9pbnRNYW5hZ2VyLkJyZWFrcG9p
bnR9ICovIGV2ZW50LmRhdGEuYnJlYWtwb2ludDsKQEAgLTQ4NiwxMSArNDgxLDExIEBAIFdlYklu
c3BlY3Rvci5KYXZhU2NyaXB0U291cmNlRnJhbWUucHJvdG90eXBlID0gewogICAgIF9icmVha3Bv
aW50UmVtb3ZlZDogZnVuY3Rpb24oZXZlbnQpCiAgICAgewogICAgICAgICB2YXIgdWlMb2NhdGlv
biA9IC8qKiBAdHlwZSB7V2ViSW5zcGVjdG9yLlVJTG9jYXRpb259ICovIGV2ZW50LmRhdGEudWlM
b2NhdGlvbjsKLSAgICAgICAgaWYgKHVpTG9jYXRpb24udWlTb3VyY2VDb2RlICE9PSB0aGlzLl91
aVNvdXJjZUNvZGUpCisgICAgICAgIGlmICh1aUxvY2F0aW9uLnVpU291cmNlQ29kZSAhPT0gdGhp
cy5famF2YVNjcmlwdFNvdXJjZSkKICAgICAgICAgICAgIHJldHVybjsKIAogICAgICAgICB2YXIg
YnJlYWtwb2ludCA9IC8qKiBAdHlwZSB7V2ViSW5zcGVjdG9yLkJyZWFrcG9pbnRNYW5hZ2VyLkJy
ZWFrcG9pbnR9ICovIGV2ZW50LmRhdGEuYnJlYWtwb2ludDsKLSAgICAgICAgdmFyIHJlbWFpbmlu
Z0JyZWFrcG9pbnQgPSB0aGlzLl9icmVha3BvaW50TWFuYWdlci5maW5kQnJlYWtwb2ludCh0aGlz
Ll91aVNvdXJjZUNvZGUsIHVpTG9jYXRpb24ubGluZU51bWJlcik7CisgICAgICAgIHZhciByZW1h
aW5pbmdCcmVha3BvaW50ID0gdGhpcy5fYnJlYWtwb2ludE1hbmFnZXIuZmluZEJyZWFrcG9pbnQo
dGhpcy5famF2YVNjcmlwdFNvdXJjZSwgdWlMb2NhdGlvbi5saW5lTnVtYmVyKTsKICAgICAgICAg
aWYgKCFyZW1haW5pbmdCcmVha3BvaW50ICYmIHRoaXMubG9hZGVkKQogICAgICAgICAgICAgdGhp
cy5fcmVtb3ZlQnJlYWtwb2ludERlY29yYXRpb24odWlMb2NhdGlvbi5saW5lTnVtYmVyKTsKICAg
ICB9LApAQCAtNTE5LDEzICs1MTQsMTMgQEAgV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2VG
cmFtZS5wcm90b3R5cGUgPSB7CiAgICAgICAgIGlmICh0eXBlb2YgdGhpcy5fZXhlY3V0aW9uTGlu
ZU51bWJlciA9PT0gIm51bWJlciIpCiAgICAgICAgICAgICB0aGlzLnNldEV4ZWN1dGlvbkxpbmUo
dGhpcy5fZXhlY3V0aW9uTGluZU51bWJlcik7CiAKLSAgICAgICAgdmFyIGJyZWFrcG9pbnRMb2Nh
dGlvbnMgPSB0aGlzLl9icmVha3BvaW50TWFuYWdlci5icmVha3BvaW50TG9jYXRpb25zRm9yVUlT
b3VyY2VDb2RlKHRoaXMuX3VpU291cmNlQ29kZSk7CisgICAgICAgIHZhciBicmVha3BvaW50TG9j
YXRpb25zID0gdGhpcy5fYnJlYWtwb2ludE1hbmFnZXIuYnJlYWtwb2ludExvY2F0aW9uc0ZvclVJ
U291cmNlQ29kZSh0aGlzLl9qYXZhU2NyaXB0U291cmNlKTsKICAgICAgICAgZm9yICh2YXIgaSA9
IDA7IGkgPCBicmVha3BvaW50TG9jYXRpb25zLmxlbmd0aDsgKytpKSB7CiAgICAgICAgICAgICB2
YXIgYnJlYWtwb2ludCA9IGJyZWFrcG9pbnRMb2NhdGlvbnNbaV0uYnJlYWtwb2ludDsKICAgICAg
ICAgICAgIHRoaXMuX2FkZEJyZWFrcG9pbnREZWNvcmF0aW9uKGJyZWFrcG9pbnRMb2NhdGlvbnNb
aV0udWlMb2NhdGlvbi5saW5lTnVtYmVyLCBicmVha3BvaW50LmNvbmRpdGlvbigpLCBicmVha3Bv
aW50LmVuYWJsZWQoKSwgZmFsc2UpOwogICAgICAgICB9CiAKLSAgICAgICAgdmFyIG1lc3NhZ2Vz
ID0gdGhpcy5fdWlTb3VyY2VDb2RlLmNvbnNvbGVNZXNzYWdlcygpOworICAgICAgICB2YXIgbWVz
c2FnZXMgPSB0aGlzLl9qYXZhU2NyaXB0U291cmNlLmNvbnNvbGVNZXNzYWdlcygpOwogICAgICAg
ICBmb3IgKHZhciBpID0gMDsgaSA8IG1lc3NhZ2VzLmxlbmd0aDsgKytpKSB7CiAgICAgICAgICAg
ICB2YXIgbWVzc2FnZSA9IG1lc3NhZ2VzW2ldOwogICAgICAgICAgICAgdGhpcy5hZGRNZXNzYWdl
VG9Tb3VyY2UobWVzc2FnZS5saW5lTnVtYmVyLCBtZXNzYWdlLm9yaWdpbmFsTWVzc2FnZSk7CkBA
IC01MzksNyArNTM0LDcgQEAgV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2VGcmFtZS5wcm90
b3R5cGUgPSB7CiAgICAgICovCiAgICAgX3NldEJyZWFrcG9pbnQ6IGZ1bmN0aW9uKGxpbmVOdW1i
ZXIsIGNvbmRpdGlvbiwgZW5hYmxlZCkKICAgICB7Ci0gICAgICAgIHRoaXMuX2JyZWFrcG9pbnRN
YW5hZ2VyLnNldEJyZWFrcG9pbnQodGhpcy5fdWlTb3VyY2VDb2RlLCBsaW5lTnVtYmVyLCBjb25k
aXRpb24sIGVuYWJsZWQpOworICAgICAgICB0aGlzLl9icmVha3BvaW50TWFuYWdlci5zZXRCcmVh
a3BvaW50KHRoaXMuX2phdmFTY3JpcHRTb3VyY2UsIGxpbmVOdW1iZXIsIGNvbmRpdGlvbiwgZW5h
YmxlZCk7CiAgICAgfSwKIAogICAgIC8qKgpAQCAtNTQ3LDcgKzU0Miw3IEBAIFdlYkluc3BlY3Rv
ci5KYXZhU2NyaXB0U291cmNlRnJhbWUucHJvdG90eXBlID0gewogICAgICAqLwogICAgIF9jb250
aW51ZVRvTGluZTogZnVuY3Rpb24obGluZU51bWJlcikKICAgICB7Ci0gICAgICAgIHZhciByYXdM
b2NhdGlvbiA9IHRoaXMuX3VpU291cmNlQ29kZS51aUxvY2F0aW9uVG9SYXdMb2NhdGlvbihsaW5l
TnVtYmVyLCAwKTsKKyAgICAgICAgdmFyIHJhd0xvY2F0aW9uID0gdGhpcy5famF2YVNjcmlwdFNv
dXJjZS51aUxvY2F0aW9uVG9SYXdMb2NhdGlvbihsaW5lTnVtYmVyLCAwKTsKICAgICAgICAgV2Vi
SW5zcGVjdG9yLmRlYnVnZ2VyTW9kZWwuY29udGludWVUb0xvY2F0aW9uKHJhd0xvY2F0aW9uKTsK
ICAgICB9CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5k
L1NjcmlwdHNQYW5lbC5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2Ny
aXB0c1BhbmVsLmpzCmluZGV4IDVjMDcxMTY2MmM4OWNhZmI5YmJiMTdhNmUxMjdhZjE2MWJlYjFl
MGIuLjMxYmRmYjNhOWEyYzg5MzQ4ZjQ1Mzg1ZDRiMWY1YzMzMTFkODRmYWEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0c1BhbmVsLmpzCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0c1BhbmVsLmpzCkBAIC00
NjcsMTEgKzQ2NywxMyBAQCBXZWJJbnNwZWN0b3IuU2NyaXB0c1BhbmVsLnByb3RvdHlwZSA9IHsK
ICAgICBfY3JlYXRlU291cmNlRnJhbWU6IGZ1bmN0aW9uKHVpU291cmNlQ29kZSkKICAgICB7CiAg
ICAgICAgIHZhciBzb3VyY2VGcmFtZTsKLSAgICAgICAgaWYgKHVpU291cmNlQ29kZSBpbnN0YW5j
ZW9mIFdlYkluc3BlY3Rvci5KYXZhU2NyaXB0U291cmNlKQotICAgICAgICAgICAgc291cmNlRnJh
bWUgPSBuZXcgV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2VGcmFtZSh0aGlzLCB1aVNvdXJj
ZUNvZGUpOwotICAgICAgICBlbHNlIGlmICh1aVNvdXJjZUNvZGUgaW5zdGFuY2VvZiBXZWJJbnNw
ZWN0b3IuU3R5bGVTb3VyY2UpCi0gICAgICAgICAgICBzb3VyY2VGcmFtZSA9IG5ldyBXZWJJbnNw
ZWN0b3IuU3R5bGVTb3VyY2VGcmFtZSh1aVNvdXJjZUNvZGUpOwotICAgICAgICBlbHNlIHsKKyAg
ICAgICAgaWYgKHVpU291cmNlQ29kZSBpbnN0YW5jZW9mIFdlYkluc3BlY3Rvci5KYXZhU2NyaXB0
U291cmNlKSB7CisgICAgICAgICAgICB2YXIgamF2YVNjcmlwdFNvdXJjZSA9IC8qKiBAdHlwZSB7
V2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2V9ICovIHVpU291cmNlQ29kZTsKKyAgICAgICAg
ICAgIHNvdXJjZUZyYW1lID0gbmV3IFdlYkluc3BlY3Rvci5KYXZhU2NyaXB0U291cmNlRnJhbWUo
dGhpcywgamF2YVNjcmlwdFNvdXJjZSk7CisgICAgICAgIH0gZWxzZSBpZiAodWlTb3VyY2VDb2Rl
IGluc3RhbmNlb2YgV2ViSW5zcGVjdG9yLlN0eWxlU291cmNlKSB7CisgICAgICAgICAgICB2YXIg
c3R5bGVTb3VyY2UgPSAvKiogQHR5cGUge1dlYkluc3BlY3Rvci5TdHlsZVNvdXJjZX0gKi8gdWlT
b3VyY2VDb2RlOworICAgICAgICAgICAgc291cmNlRnJhbWUgPSBuZXcgV2ViSW5zcGVjdG9yLlN0
eWxlU291cmNlRnJhbWUoc3R5bGVTb3VyY2UpOworICAgICAgICB9IGVsc2UgewogICAgICAgICAg
ICAgY29uc29sZS5hc3NlcnQoZmFsc2UsICJVbmtub3duIFVJU291cmNlQ29kZSB0eXBlIik7CiAg
ICAgICAgICAgICBzb3VyY2VGcmFtZSA9IG5ldyBXZWJJbnNwZWN0b3IuU291cmNlRnJhbWUodWlT
b3VyY2VDb2RlKTsKICAgICAgICAgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>143309</attachid>
            <date>2012-05-22 08:36:34 -0700</date>
            <delta_ts>2012-05-22 09:02:20 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-87135-20120522193632.patch</filename>
            <type>text/plain</type>
            <size>18815</size>
            <attacher name="Vsevolod Vlasov">vsevik</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE3OTczCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2VhYTIzNGJiYTUyYTFj
Mjc1Y2QzMzNkYjRiMDNkOGIwMmRkOWJjYS4uYWEwZjI3OTUwMTBmODNiZjc3NDUyYzIzMWU4OTZm
OGRlYTM2YjBjYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDEyLTA1LTIyICBWc2V2
b2xvZCBWbGFzb3YgIDx2c2V2aWtAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFdlYiBJbnNwZWN0
b3I6IEphdmFTY3JpcHRTb3VyY2VGcmFtZSBzaG91bGQgYmUgYmFzZWQgb24gSmF2YVNjcmlwdFNv
dXJjZSBub3QgVUlTb3VyY2VDb2RlLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9ODcxMzUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBSZW5hbWVkIF91aVNvdXJjZUNvZGUgdG8gX2phdmFTY3JpcHRTb3VyY2Ug
aW4gSmF2YVNjcmlwdFNvdXJjZUZyYW1lLgorICAgICAgICBSZW1vdmVkIHVudXNlZCB1aVNvdXJj
ZUNvZGUgZ2V0dGVyIGZyb20gSmF2YVNjcmlwdFNvdXJjZUZyYW1lLgorCisgICAgICAgICogaW5z
cGVjdG9yL2Zyb250LWVuZC9KYXZhU2NyaXB0U291cmNlRnJhbWUuanM6CisgICAgICAgIChXZWJJ
bnNwZWN0b3IuSmF2YVNjcmlwdFNvdXJjZUZyYW1lKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5K
YXZhU2NyaXB0U291cmNlRnJhbWUucHJvdG90eXBlLmNhbkVkaXRTb3VyY2UpOgorICAgICAgICAo
V2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2VGcmFtZS5wcm90b3R5cGUuY29tbWl0RWRpdGlu
Zyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSmF2YVNjcmlwdFNvdXJjZUZyYW1lLnByb3RvdHlw
ZS5fb25Db250ZW50Q2hhbmdlZCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSmF2YVNjcmlwdFNv
dXJjZUZyYW1lLnByb3RvdHlwZS5wb3B1bGF0ZUxpbmVHdXR0ZXJDb250ZXh0TWVudSk6CisgICAg
ICAgIChXZWJJbnNwZWN0b3IuSmF2YVNjcmlwdFNvdXJjZUZyYW1lLnByb3RvdHlwZS5wb3B1bGF0
ZVRleHRBcmVhQ29udGV4dE1lbnUpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRT
b3VyY2VGcmFtZS5wcm90b3R5cGUuYWZ0ZXJUZXh0Q2hhbmdlZCk6CisgICAgICAgIChXZWJJbnNw
ZWN0b3IuSmF2YVNjcmlwdFNvdXJjZUZyYW1lLnByb3RvdHlwZS5iZWZvcmVUZXh0Q2hhbmdlZCk6
CisgICAgICAgIChXZWJJbnNwZWN0b3IuSmF2YVNjcmlwdFNvdXJjZUZyYW1lLnByb3RvdHlwZS5f
b25Nb3VzZURvd24pOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2VGcmFt
ZS5wcm90b3R5cGUuX2JyZWFrcG9pbnRBZGRlZCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSmF2
YVNjcmlwdFNvdXJjZUZyYW1lLnByb3RvdHlwZS5fYnJlYWtwb2ludFJlbW92ZWQpOgorICAgICAg
ICAoV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2VGcmFtZS5wcm90b3R5cGUub25UZXh0Vmll
d2VyQ29udGVudExvYWRlZCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSmF2YVNjcmlwdFNvdXJj
ZUZyYW1lLnByb3RvdHlwZS5fc2V0QnJlYWtwb2ludCk6CisgICAgICAgIChXZWJJbnNwZWN0b3Iu
SmF2YVNjcmlwdFNvdXJjZUZyYW1lLnByb3RvdHlwZS5fY29udGludWVUb0xpbmUpOgorICAgICAg
ICAqIGluc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0c1BhbmVsLmpzOgorICAgICAgICAoV2ViSW5z
cGVjdG9yLlNjcmlwdHNQYW5lbC5wcm90b3R5cGUuX2NyZWF0ZVNvdXJjZUZyYW1lKToKKwogMjAx
Mi0wNS0yMiAgSWx5YSBUaWtob25vdnNreSAgPGxvaXNsb0BjaHJvbWl1bS5vcmc+CiAKICAgICAg
ICAgV2ViIEluc3BlY3RvcjogSGVhcFNuYXBzaG90OiBzcGVlZFVwIGJ1aWxkQWdncmVnYXRlcy4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSmF2YVNjcmlw
dFNvdXJjZUZyYW1lLmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9KYXZh
U2NyaXB0U291cmNlRnJhbWUuanMKaW5kZXggZDJiNDRmZThhYTFjOTVjMGNhZDU4YTliNGQ2MTZh
YzU0ZGU5M2NlNS4uZjUzNDg3NmM1NjhhYzZhODJkNDAzM2E5YWNiNWMyYmNlZTVhMGNkZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9KYXZhU2NyaXB0U291
cmNlRnJhbWUuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9KYXZh
U2NyaXB0U291cmNlRnJhbWUuanMKQEAgLTMyLDE5ICszMiwxOSBAQAogICogQGNvbnN0cnVjdG9y
CiAgKiBAZXh0ZW5kcyB7V2ViSW5zcGVjdG9yLlNvdXJjZUZyYW1lfQogICogQHBhcmFtIHtXZWJJ
bnNwZWN0b3IuU2NyaXB0c1BhbmVsfSBzY3JpcHRzUGFuZWwKLSAqIEBwYXJhbSB7V2ViSW5zcGVj
dG9yLlVJU291cmNlQ29kZX0gdWlTb3VyY2VDb2RlCisgKiBAcGFyYW0ge1dlYkluc3BlY3Rvci5K
YXZhU2NyaXB0U291cmNlfSBqYXZhU2NyaXB0U291cmNlCiAgKi8KLVdlYkluc3BlY3Rvci5KYXZh
U2NyaXB0U291cmNlRnJhbWUgPSBmdW5jdGlvbihzY3JpcHRzUGFuZWwsIHVpU291cmNlQ29kZSkK
K1dlYkluc3BlY3Rvci5KYXZhU2NyaXB0U291cmNlRnJhbWUgPSBmdW5jdGlvbihzY3JpcHRzUGFu
ZWwsIGphdmFTY3JpcHRTb3VyY2UpCiB7CiAgICAgdGhpcy5fc2NyaXB0c1BhbmVsID0gc2NyaXB0
c1BhbmVsOwogICAgIHRoaXMuX2JyZWFrcG9pbnRNYW5hZ2VyID0gV2ViSW5zcGVjdG9yLmJyZWFr
cG9pbnRNYW5hZ2VyOwotICAgIHRoaXMuX3VpU291cmNlQ29kZSA9IHVpU291cmNlQ29kZTsKKyAg
ICB0aGlzLl9qYXZhU2NyaXB0U291cmNlID0gamF2YVNjcmlwdFNvdXJjZTsKIAotICAgIHZhciBs
b2NhdGlvbnMgPSB0aGlzLl9icmVha3BvaW50TWFuYWdlci5icmVha3BvaW50TG9jYXRpb25zRm9y
VUlTb3VyY2VDb2RlKHRoaXMuX3VpU291cmNlQ29kZSk7CisgICAgdmFyIGxvY2F0aW9ucyA9IHRo
aXMuX2JyZWFrcG9pbnRNYW5hZ2VyLmJyZWFrcG9pbnRMb2NhdGlvbnNGb3JVSVNvdXJjZUNvZGUo
dGhpcy5famF2YVNjcmlwdFNvdXJjZSk7CiAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsb2NhdGlv
bnMubGVuZ3RoOyArK2kpCiAgICAgICAgIHRoaXMuX2JyZWFrcG9pbnRBZGRlZCh7ZGF0YTpsb2Nh
dGlvbnNbaV19KTsKIAotICAgIFdlYkluc3BlY3Rvci5Tb3VyY2VGcmFtZS5jYWxsKHRoaXMsIHVp
U291cmNlQ29kZSk7CisgICAgV2ViSW5zcGVjdG9yLlNvdXJjZUZyYW1lLmNhbGwodGhpcywgamF2
YVNjcmlwdFNvdXJjZSk7CiAKICAgICB0aGlzLl9wb3BvdmVySGVscGVyID0gbmV3IFdlYkluc3Bl
Y3Rvci5PYmplY3RQb3BvdmVySGVscGVyKHRoaXMudGV4dFZpZXdlci5lbGVtZW50LAogICAgICAg
ICAgICAgdGhpcy5fZ2V0UG9wb3ZlckFuY2hvci5iaW5kKHRoaXMpLCB0aGlzLl9yZXNvbHZlT2Jq
ZWN0Rm9yUG9wb3Zlci5iaW5kKHRoaXMpLCB0aGlzLl9vbkhpZGVQb3BvdmVyLmJpbmQodGhpcyks
IHRydWUpOwpAQCAtNTUsMTggKzU1LDEzIEBAIFdlYkluc3BlY3Rvci5KYXZhU2NyaXB0U291cmNl
RnJhbWUgPSBmdW5jdGlvbihzY3JpcHRzUGFuZWwsIHVpU291cmNlQ29kZSkKICAgICB0aGlzLl9i
cmVha3BvaW50TWFuYWdlci5hZGRFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5CcmVha3BvaW50
TWFuYWdlci5FdmVudHMuQnJlYWtwb2ludEFkZGVkLCB0aGlzLl9icmVha3BvaW50QWRkZWQsIHRo
aXMpOwogICAgIHRoaXMuX2JyZWFrcG9pbnRNYW5hZ2VyLmFkZEV2ZW50TGlzdGVuZXIoV2ViSW5z
cGVjdG9yLkJyZWFrcG9pbnRNYW5hZ2VyLkV2ZW50cy5CcmVha3BvaW50UmVtb3ZlZCwgdGhpcy5f
YnJlYWtwb2ludFJlbW92ZWQsIHRoaXMpOwogCi0gICAgdGhpcy5fdWlTb3VyY2VDb2RlLmFkZEV2
ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLlVJU291cmNlQ29kZS5FdmVudHMuQ29udGVudENoYW5n
ZWQsIHRoaXMuX29uQ29udGVudENoYW5nZWQsIHRoaXMpOwotICAgIHRoaXMuX3VpU291cmNlQ29k
ZS5hZGRFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5VSVNvdXJjZUNvZGUuRXZlbnRzLkNvbnNv
bGVNZXNzYWdlQWRkZWQsIHRoaXMuX2NvbnNvbGVNZXNzYWdlQWRkZWQsIHRoaXMpOwotICAgIHRo
aXMuX3VpU291cmNlQ29kZS5hZGRFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5VSVNvdXJjZUNv
ZGUuRXZlbnRzLkNvbnNvbGVNZXNzYWdlUmVtb3ZlZCwgdGhpcy5fY29uc29sZU1lc3NhZ2VSZW1v
dmVkLCB0aGlzKTsKLSAgICB0aGlzLl91aVNvdXJjZUNvZGUuYWRkRXZlbnRMaXN0ZW5lcihXZWJJ
bnNwZWN0b3IuVUlTb3VyY2VDb2RlLkV2ZW50cy5Db25zb2xlTWVzc2FnZXNDbGVhcmVkLCB0aGlz
Ll9jb25zb2xlTWVzc2FnZXNDbGVhcmVkLCB0aGlzKTsKKyAgICB0aGlzLl9qYXZhU2NyaXB0U291
cmNlLmFkZEV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLlVJU291cmNlQ29kZS5FdmVudHMuQ29u
dGVudENoYW5nZWQsIHRoaXMuX29uQ29udGVudENoYW5nZWQsIHRoaXMpOworICAgIHRoaXMuX2ph
dmFTY3JpcHRTb3VyY2UuYWRkRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuVUlTb3VyY2VDb2Rl
LkV2ZW50cy5Db25zb2xlTWVzc2FnZUFkZGVkLCB0aGlzLl9jb25zb2xlTWVzc2FnZUFkZGVkLCB0
aGlzKTsKKyAgICB0aGlzLl9qYXZhU2NyaXB0U291cmNlLmFkZEV2ZW50TGlzdGVuZXIoV2ViSW5z
cGVjdG9yLlVJU291cmNlQ29kZS5FdmVudHMuQ29uc29sZU1lc3NhZ2VSZW1vdmVkLCB0aGlzLl9j
b25zb2xlTWVzc2FnZVJlbW92ZWQsIHRoaXMpOworICAgIHRoaXMuX2phdmFTY3JpcHRTb3VyY2Uu
YWRkRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuVUlTb3VyY2VDb2RlLkV2ZW50cy5Db25zb2xl
TWVzc2FnZXNDbGVhcmVkLCB0aGlzLl9jb25zb2xlTWVzc2FnZXNDbGVhcmVkLCB0aGlzKTsKIH0K
IAogV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2VGcmFtZS5wcm90b3R5cGUgPSB7Ci0gICAg
Z2V0IHVpU291cmNlQ29kZSgpCi0gICAgewotICAgICAgICByZXR1cm4gdGhpcy5fdWlTb3VyY2VD
b2RlOwotICAgIH0sCi0KICAgICAvLyBWaWV3IGV2ZW50cwogICAgIHdhc1Nob3duOiBmdW5jdGlv
bigpCiAgICAgewpAQCAtODQsNyArNzksNyBAQCBXZWJJbnNwZWN0b3IuSmF2YVNjcmlwdFNvdXJj
ZUZyYW1lLnByb3RvdHlwZSA9IHsKICAgICAgKi8KICAgICBjYW5FZGl0U291cmNlOiBmdW5jdGlv
bigpCiAgICAgewotICAgICAgICByZXR1cm4gdGhpcy5fdWlTb3VyY2VDb2RlLmlzRWRpdGFibGUo
KTsKKyAgICAgICAgcmV0dXJuIHRoaXMuX2phdmFTY3JpcHRTb3VyY2UuaXNFZGl0YWJsZSgpOwog
ICAgIH0sCiAKICAgICAvKioKQEAgLTkyLDExICs4NywxMSBAQCBXZWJJbnNwZWN0b3IuSmF2YVNj
cmlwdFNvdXJjZUZyYW1lLnByb3RvdHlwZSA9IHsKICAgICAgKi8KICAgICBjb21taXRFZGl0aW5n
OiBmdW5jdGlvbih0ZXh0KQogICAgIHsKLSAgICAgICAgaWYgKCF0aGlzLl91aVNvdXJjZUNvZGUu
aXNEaXJ0eSgpKQorICAgICAgICBpZiAoIXRoaXMuX2phdmFTY3JpcHRTb3VyY2UuaXNEaXJ0eSgp
KQogICAgICAgICAgICAgcmV0dXJuOwogCiAgICAgICAgIHRoaXMuX2lzQ29tbWl0dGluZ0VkaXRp
bmcgPSB0cnVlOwotICAgICAgICB0aGlzLl91aVNvdXJjZUNvZGUuY29tbWl0V29ya2luZ0NvcHko
dGhpcy5fZGlkRWRpdENvbnRlbnQuYmluZCh0aGlzKSk7CisgICAgICAgIHRoaXMuX2phdmFTY3Jp
cHRTb3VyY2UuY29tbWl0V29ya2luZ0NvcHkodGhpcy5fZGlkRWRpdENvbnRlbnQuYmluZCh0aGlz
KSk7CiAgICAgfSwKIAogICAgIC8qKgpAQCAtMTA4LDEzICsxMDMsMTMgQEAgV2ViSW5zcGVjdG9y
LkphdmFTY3JpcHRTb3VyY2VGcmFtZS5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICByZXR1cm47
CiAgICAgICAgIHZhciBjb250ZW50ID0gLyoqIEB0eXBlIHtzdHJpbmd9ICovIGV2ZW50LmRhdGEu
Y29udGVudDsKIAotICAgICAgICBpZiAodGhpcy5fdWlTb3VyY2VDb2RlLnRvZ2dsaW5nRm9ybWF0
dGVyKCkpCi0gICAgICAgICAgICB0aGlzLnNldENvbnRlbnQoY29udGVudCwgZmFsc2UsIHRoaXMu
X3VpU291cmNlQ29kZS5taW1lVHlwZSgpKTsKKyAgICAgICAgaWYgKHRoaXMuX2phdmFTY3JpcHRT
b3VyY2UudG9nZ2xpbmdGb3JtYXR0ZXIoKSkKKyAgICAgICAgICAgIHRoaXMuc2V0Q29udGVudChj
b250ZW50LCBmYWxzZSwgdGhpcy5famF2YVNjcmlwdFNvdXJjZS5taW1lVHlwZSgpKTsKICAgICAg
ICAgZWxzZSB7Ci0gICAgICAgICAgICB2YXIgYnJlYWtwb2ludExvY2F0aW9ucyA9IHRoaXMuX2Jy
ZWFrcG9pbnRNYW5hZ2VyLmJyZWFrcG9pbnRMb2NhdGlvbnNGb3JVSVNvdXJjZUNvZGUodGhpcy5f
dWlTb3VyY2VDb2RlKTsKKyAgICAgICAgICAgIHZhciBicmVha3BvaW50TG9jYXRpb25zID0gdGhp
cy5fYnJlYWtwb2ludE1hbmFnZXIuYnJlYWtwb2ludExvY2F0aW9uc0ZvclVJU291cmNlQ29kZSh0
aGlzLl9qYXZhU2NyaXB0U291cmNlKTsKICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwg
YnJlYWtwb2ludExvY2F0aW9ucy5sZW5ndGg7ICsraSkKICAgICAgICAgICAgICAgICBicmVha3Bv
aW50TG9jYXRpb25zW2ldLmJyZWFrcG9pbnQucmVtb3ZlKCk7Ci0gICAgICAgICAgICB0aGlzLnNl
dENvbnRlbnQoY29udGVudCwgZmFsc2UsIHRoaXMuX3VpU291cmNlQ29kZS5taW1lVHlwZSgpKTsK
KyAgICAgICAgICAgIHRoaXMuc2V0Q29udGVudChjb250ZW50LCBmYWxzZSwgdGhpcy5famF2YVNj
cmlwdFNvdXJjZS5taW1lVHlwZSgpKTsKICAgICAgICAgfQogICAgIH0sCiAKQEAgLTEyMiw3ICsx
MTcsNyBAQCBXZWJJbnNwZWN0b3IuSmF2YVNjcmlwdFNvdXJjZUZyYW1lLnByb3RvdHlwZSA9IHsK
ICAgICB7CiAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0oV2ViSW5zcGVjdG9yLlVJU3Ry
aW5nKFdlYkluc3BlY3Rvci51c2VMb3dlckNhc2VNZW51VGl0bGVzKCkgPyAiQ29udGludWUgdG8g
aGVyZSIgOiAiQ29udGludWUgdG8gSGVyZSIpLCB0aGlzLl9jb250aW51ZVRvTGluZS5iaW5kKHRo
aXMsIGxpbmVOdW1iZXIpKTsKIAotICAgICAgICB2YXIgYnJlYWtwb2ludCA9IHRoaXMuX2JyZWFr
cG9pbnRNYW5hZ2VyLmZpbmRCcmVha3BvaW50KHRoaXMuX3VpU291cmNlQ29kZSwgbGluZU51bWJl
cik7CisgICAgICAgIHZhciBicmVha3BvaW50ID0gdGhpcy5fYnJlYWtwb2ludE1hbmFnZXIuZmlu
ZEJyZWFrcG9pbnQodGhpcy5famF2YVNjcmlwdFNvdXJjZSwgbGluZU51bWJlcik7CiAgICAgICAg
IGlmICghYnJlYWtwb2ludCkgewogICAgICAgICAgICAgLy8gVGhpcyByb3cgZG9lc24ndCBoYXZl
IGEgYnJlYWtwb2ludDogV2Ugd2FudCB0byBzaG93IEFkZCBCcmVha3BvaW50IGFuZCBBZGQgYW5k
IEVkaXQgQnJlYWtwb2ludC4KICAgICAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0oV2Vi
SW5zcGVjdG9yLlVJU3RyaW5nKFdlYkluc3BlY3Rvci51c2VMb3dlckNhc2VNZW51VGl0bGVzKCkg
PyAiQWRkIGJyZWFrcG9pbnQiIDogIkFkZCBCcmVha3BvaW50IiksIHRoaXMuX3NldEJyZWFrcG9p
bnQuYmluZCh0aGlzLCBsaW5lTnVtYmVyLCAiIiwgdHJ1ZSkpOwpAQCAtMTQ5LDIxICsxNDQsMjEg
QEAgV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2VGcmFtZS5wcm90b3R5cGUgPSB7CiAgICAg
ICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVtKGV2YWx1YXRlTGFiZWwsIFdlYkluc3BlY3Rv
ci5ldmFsdWF0ZUluQ29uc29sZS5iaW5kKFdlYkluc3BlY3Rvciwgc2VsZWN0aW9uLnRvU3RyaW5n
KCkpKTsKICAgICAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZFNlcGFyYXRvcigpOwogICAgICAg
ICB9Ci0gICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEFwcGxpY2FibGVJdGVtcyh0aGlzLl91aVNv
dXJjZUNvZGUpOworICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRBcHBsaWNhYmxlSXRlbXModGhp
cy5famF2YVNjcmlwdFNvdXJjZSk7CiAgICAgfSwKIAogICAgIGFmdGVyVGV4dENoYW5nZWQ6IGZ1
bmN0aW9uKG9sZFJhbmdlLCBuZXdSYW5nZSkKICAgICB7Ci0gICAgICAgIHRoaXMuX3VpU291cmNl
Q29kZS5zZXRXb3JraW5nQ29weSh0aGlzLnRleHRNb2RlbC50ZXh0KTsKLSAgICAgICAgaWYgKCF0
aGlzLl91aVNvdXJjZUNvZGUuaXNEaXJ0eSgpKQorICAgICAgICB0aGlzLl9qYXZhU2NyaXB0U291
cmNlLnNldFdvcmtpbmdDb3B5KHRoaXMudGV4dE1vZGVsLnRleHQpOworICAgICAgICBpZiAoIXRo
aXMuX2phdmFTY3JpcHRTb3VyY2UuaXNEaXJ0eSgpKQogICAgICAgICAgICAgdGhpcy5fZGlkRWRp
dENvbnRlbnQobnVsbCk7CiAgICAgfSwKIAogICAgIGJlZm9yZVRleHRDaGFuZ2VkOiBmdW5jdGlv
bigpCiAgICAgewotICAgICAgICBpZiAoIXRoaXMuX3VpU291cmNlQ29kZS5pc0RpcnR5KCkpIHsK
KyAgICAgICAgaWYgKCF0aGlzLl9qYXZhU2NyaXB0U291cmNlLmlzRGlydHkoKSkgewogICAgICAg
ICAgICAgLy8gRGlzYWJsZSBhbGwgYnJlYWtwb2ludHMgaW4gdGhlIG1vZGVsLCBzdG9yZSB0aGVt
IGFzIG11dGVkIGJyZWFrcG9pbnRzLgotICAgICAgICAgICAgdmFyIGJyZWFrcG9pbnRMb2NhdGlv
bnMgPSB0aGlzLl9icmVha3BvaW50TWFuYWdlci5icmVha3BvaW50TG9jYXRpb25zRm9yVUlTb3Vy
Y2VDb2RlKHRoaXMuX3VpU291cmNlQ29kZSk7CisgICAgICAgICAgICB2YXIgYnJlYWtwb2ludExv
Y2F0aW9ucyA9IHRoaXMuX2JyZWFrcG9pbnRNYW5hZ2VyLmJyZWFrcG9pbnRMb2NhdGlvbnNGb3JV
SVNvdXJjZUNvZGUodGhpcy5famF2YVNjcmlwdFNvdXJjZSk7CiAgICAgICAgICAgICB2YXIgbGlu
ZU51bWJlcnMgPSB7fTsKICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgYnJlYWtwb2lu
dExvY2F0aW9ucy5sZW5ndGg7ICsraSkgewogICAgICAgICAgICAgICAgIHZhciBicmVha3BvaW50
ID0gYnJlYWtwb2ludExvY2F0aW9uc1tpXS5icmVha3BvaW50OwpAQCAtMzUzLDcgKzM0OCw3IEBA
IFdlYkluc3BlY3Rvci5KYXZhU2NyaXB0U291cmNlRnJhbWUucHJvdG90eXBlID0gewogCiAgICAg
X29uTW91c2VEb3duOiBmdW5jdGlvbihldmVudCkKICAgICB7Ci0gICAgICAgIGlmICh0aGlzLl91
aVNvdXJjZUNvZGUuaXNEaXJ0eSgpKQorICAgICAgICBpZiAodGhpcy5famF2YVNjcmlwdFNvdXJj
ZS5pc0RpcnR5KCkpCiAgICAgICAgICAgICByZXR1cm47CiAKICAgICAgICAgaWYgKGV2ZW50LmJ1
dHRvbiAhPSAwIHx8IGV2ZW50LmFsdEtleSB8fCBldmVudC5jdHJsS2V5IHx8IGV2ZW50Lm1ldGFL
ZXkpCkBAIC0zNjMsNyArMzU4LDcgQEAgV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2VGcmFt
ZS5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIHZhciBsaW5lTnVt
YmVyID0gdGFyZ2V0LmxpbmVOdW1iZXI7CiAKLSAgICAgICAgdmFyIGJyZWFrcG9pbnQgPSB0aGlz
Ll9icmVha3BvaW50TWFuYWdlci5maW5kQnJlYWtwb2ludCh0aGlzLl91aVNvdXJjZUNvZGUsIGxp
bmVOdW1iZXIpOworICAgICAgICB2YXIgYnJlYWtwb2ludCA9IHRoaXMuX2JyZWFrcG9pbnRNYW5h
Z2VyLmZpbmRCcmVha3BvaW50KHRoaXMuX2phdmFTY3JpcHRTb3VyY2UsIGxpbmVOdW1iZXIpOwog
ICAgICAgICBpZiAoYnJlYWtwb2ludCkgewogICAgICAgICAgICAgaWYgKGV2ZW50LnNoaWZ0S2V5
KQogICAgICAgICAgICAgICAgIGJyZWFrcG9pbnQuc2V0RW5hYmxlZCghYnJlYWtwb2ludC5lbmFi
bGVkKCkpOwpAQCAtNDc1LDcgKzQ3MCw3IEBAIFdlYkluc3BlY3Rvci5KYXZhU2NyaXB0U291cmNl
RnJhbWUucHJvdG90eXBlID0gewogICAgIHsKICAgICAgICAgdmFyIHVpTG9jYXRpb24gPSAvKiog
QHR5cGUge1dlYkluc3BlY3Rvci5VSUxvY2F0aW9ufSAqLyBldmVudC5kYXRhLnVpTG9jYXRpb247
CiAKLSAgICAgICAgaWYgKHVpTG9jYXRpb24udWlTb3VyY2VDb2RlICE9PSB0aGlzLl91aVNvdXJj
ZUNvZGUpCisgICAgICAgIGlmICh1aUxvY2F0aW9uLnVpU291cmNlQ29kZSAhPT0gdGhpcy5famF2
YVNjcmlwdFNvdXJjZSkKICAgICAgICAgICAgIHJldHVybjsKIAogICAgICAgICB2YXIgYnJlYWtw
b2ludCA9IC8qKiBAdHlwZSB7V2ViSW5zcGVjdG9yLkJyZWFrcG9pbnRNYW5hZ2VyLkJyZWFrcG9p
bnR9ICovIGV2ZW50LmRhdGEuYnJlYWtwb2ludDsKQEAgLTQ4NiwxMSArNDgxLDExIEBAIFdlYklu
c3BlY3Rvci5KYXZhU2NyaXB0U291cmNlRnJhbWUucHJvdG90eXBlID0gewogICAgIF9icmVha3Bv
aW50UmVtb3ZlZDogZnVuY3Rpb24oZXZlbnQpCiAgICAgewogICAgICAgICB2YXIgdWlMb2NhdGlv
biA9IC8qKiBAdHlwZSB7V2ViSW5zcGVjdG9yLlVJTG9jYXRpb259ICovIGV2ZW50LmRhdGEudWlM
b2NhdGlvbjsKLSAgICAgICAgaWYgKHVpTG9jYXRpb24udWlTb3VyY2VDb2RlICE9PSB0aGlzLl91
aVNvdXJjZUNvZGUpCisgICAgICAgIGlmICh1aUxvY2F0aW9uLnVpU291cmNlQ29kZSAhPT0gdGhp
cy5famF2YVNjcmlwdFNvdXJjZSkKICAgICAgICAgICAgIHJldHVybjsKIAogICAgICAgICB2YXIg
YnJlYWtwb2ludCA9IC8qKiBAdHlwZSB7V2ViSW5zcGVjdG9yLkJyZWFrcG9pbnRNYW5hZ2VyLkJy
ZWFrcG9pbnR9ICovIGV2ZW50LmRhdGEuYnJlYWtwb2ludDsKLSAgICAgICAgdmFyIHJlbWFpbmlu
Z0JyZWFrcG9pbnQgPSB0aGlzLl9icmVha3BvaW50TWFuYWdlci5maW5kQnJlYWtwb2ludCh0aGlz
Ll91aVNvdXJjZUNvZGUsIHVpTG9jYXRpb24ubGluZU51bWJlcik7CisgICAgICAgIHZhciByZW1h
aW5pbmdCcmVha3BvaW50ID0gdGhpcy5fYnJlYWtwb2ludE1hbmFnZXIuZmluZEJyZWFrcG9pbnQo
dGhpcy5famF2YVNjcmlwdFNvdXJjZSwgdWlMb2NhdGlvbi5saW5lTnVtYmVyKTsKICAgICAgICAg
aWYgKCFyZW1haW5pbmdCcmVha3BvaW50ICYmIHRoaXMubG9hZGVkKQogICAgICAgICAgICAgdGhp
cy5fcmVtb3ZlQnJlYWtwb2ludERlY29yYXRpb24odWlMb2NhdGlvbi5saW5lTnVtYmVyKTsKICAg
ICB9LApAQCAtNTE5LDEzICs1MTQsMTMgQEAgV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2VG
cmFtZS5wcm90b3R5cGUgPSB7CiAgICAgICAgIGlmICh0eXBlb2YgdGhpcy5fZXhlY3V0aW9uTGlu
ZU51bWJlciA9PT0gIm51bWJlciIpCiAgICAgICAgICAgICB0aGlzLnNldEV4ZWN1dGlvbkxpbmUo
dGhpcy5fZXhlY3V0aW9uTGluZU51bWJlcik7CiAKLSAgICAgICAgdmFyIGJyZWFrcG9pbnRMb2Nh
dGlvbnMgPSB0aGlzLl9icmVha3BvaW50TWFuYWdlci5icmVha3BvaW50TG9jYXRpb25zRm9yVUlT
b3VyY2VDb2RlKHRoaXMuX3VpU291cmNlQ29kZSk7CisgICAgICAgIHZhciBicmVha3BvaW50TG9j
YXRpb25zID0gdGhpcy5fYnJlYWtwb2ludE1hbmFnZXIuYnJlYWtwb2ludExvY2F0aW9uc0ZvclVJ
U291cmNlQ29kZSh0aGlzLl9qYXZhU2NyaXB0U291cmNlKTsKICAgICAgICAgZm9yICh2YXIgaSA9
IDA7IGkgPCBicmVha3BvaW50TG9jYXRpb25zLmxlbmd0aDsgKytpKSB7CiAgICAgICAgICAgICB2
YXIgYnJlYWtwb2ludCA9IGJyZWFrcG9pbnRMb2NhdGlvbnNbaV0uYnJlYWtwb2ludDsKICAgICAg
ICAgICAgIHRoaXMuX2FkZEJyZWFrcG9pbnREZWNvcmF0aW9uKGJyZWFrcG9pbnRMb2NhdGlvbnNb
aV0udWlMb2NhdGlvbi5saW5lTnVtYmVyLCBicmVha3BvaW50LmNvbmRpdGlvbigpLCBicmVha3Bv
aW50LmVuYWJsZWQoKSwgZmFsc2UpOwogICAgICAgICB9CiAKLSAgICAgICAgdmFyIG1lc3NhZ2Vz
ID0gdGhpcy5fdWlTb3VyY2VDb2RlLmNvbnNvbGVNZXNzYWdlcygpOworICAgICAgICB2YXIgbWVz
c2FnZXMgPSB0aGlzLl9qYXZhU2NyaXB0U291cmNlLmNvbnNvbGVNZXNzYWdlcygpOwogICAgICAg
ICBmb3IgKHZhciBpID0gMDsgaSA8IG1lc3NhZ2VzLmxlbmd0aDsgKytpKSB7CiAgICAgICAgICAg
ICB2YXIgbWVzc2FnZSA9IG1lc3NhZ2VzW2ldOwogICAgICAgICAgICAgdGhpcy5hZGRNZXNzYWdl
VG9Tb3VyY2UobWVzc2FnZS5saW5lTnVtYmVyLCBtZXNzYWdlLm9yaWdpbmFsTWVzc2FnZSk7CkBA
IC01MzksNyArNTM0LDcgQEAgV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2VGcmFtZS5wcm90
b3R5cGUgPSB7CiAgICAgICovCiAgICAgX3NldEJyZWFrcG9pbnQ6IGZ1bmN0aW9uKGxpbmVOdW1i
ZXIsIGNvbmRpdGlvbiwgZW5hYmxlZCkKICAgICB7Ci0gICAgICAgIHRoaXMuX2JyZWFrcG9pbnRN
YW5hZ2VyLnNldEJyZWFrcG9pbnQodGhpcy5fdWlTb3VyY2VDb2RlLCBsaW5lTnVtYmVyLCBjb25k
aXRpb24sIGVuYWJsZWQpOworICAgICAgICB0aGlzLl9icmVha3BvaW50TWFuYWdlci5zZXRCcmVh
a3BvaW50KHRoaXMuX2phdmFTY3JpcHRTb3VyY2UsIGxpbmVOdW1iZXIsIGNvbmRpdGlvbiwgZW5h
YmxlZCk7CiAgICAgfSwKIAogICAgIC8qKgpAQCAtNTQ3LDcgKzU0Miw3IEBAIFdlYkluc3BlY3Rv
ci5KYXZhU2NyaXB0U291cmNlRnJhbWUucHJvdG90eXBlID0gewogICAgICAqLwogICAgIF9jb250
aW51ZVRvTGluZTogZnVuY3Rpb24obGluZU51bWJlcikKICAgICB7Ci0gICAgICAgIHZhciByYXdM
b2NhdGlvbiA9IHRoaXMuX3VpU291cmNlQ29kZS51aUxvY2F0aW9uVG9SYXdMb2NhdGlvbihsaW5l
TnVtYmVyLCAwKTsKKyAgICAgICAgdmFyIHJhd0xvY2F0aW9uID0gdGhpcy5famF2YVNjcmlwdFNv
dXJjZS51aUxvY2F0aW9uVG9SYXdMb2NhdGlvbihsaW5lTnVtYmVyLCAwKTsKICAgICAgICAgV2Vi
SW5zcGVjdG9yLmRlYnVnZ2VyTW9kZWwuY29udGludWVUb0xvY2F0aW9uKHJhd0xvY2F0aW9uKTsK
ICAgICB9CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5k
L1NjcmlwdHNQYW5lbC5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2Ny
aXB0c1BhbmVsLmpzCmluZGV4IDVjMDcxMTY2MmM4OWNhZmI5YmJiMTdhNmUxMjdhZjE2MWJlYjFl
MGIuLjMxYmRmYjNhOWEyYzg5MzQ4ZjQ1Mzg1ZDRiMWY1YzMzMTFkODRmYWEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0c1BhbmVsLmpzCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0c1BhbmVsLmpzCkBAIC00
NjcsMTEgKzQ2NywxMyBAQCBXZWJJbnNwZWN0b3IuU2NyaXB0c1BhbmVsLnByb3RvdHlwZSA9IHsK
ICAgICBfY3JlYXRlU291cmNlRnJhbWU6IGZ1bmN0aW9uKHVpU291cmNlQ29kZSkKICAgICB7CiAg
ICAgICAgIHZhciBzb3VyY2VGcmFtZTsKLSAgICAgICAgaWYgKHVpU291cmNlQ29kZSBpbnN0YW5j
ZW9mIFdlYkluc3BlY3Rvci5KYXZhU2NyaXB0U291cmNlKQotICAgICAgICAgICAgc291cmNlRnJh
bWUgPSBuZXcgV2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2VGcmFtZSh0aGlzLCB1aVNvdXJj
ZUNvZGUpOwotICAgICAgICBlbHNlIGlmICh1aVNvdXJjZUNvZGUgaW5zdGFuY2VvZiBXZWJJbnNw
ZWN0b3IuU3R5bGVTb3VyY2UpCi0gICAgICAgICAgICBzb3VyY2VGcmFtZSA9IG5ldyBXZWJJbnNw
ZWN0b3IuU3R5bGVTb3VyY2VGcmFtZSh1aVNvdXJjZUNvZGUpOwotICAgICAgICBlbHNlIHsKKyAg
ICAgICAgaWYgKHVpU291cmNlQ29kZSBpbnN0YW5jZW9mIFdlYkluc3BlY3Rvci5KYXZhU2NyaXB0
U291cmNlKSB7CisgICAgICAgICAgICB2YXIgamF2YVNjcmlwdFNvdXJjZSA9IC8qKiBAdHlwZSB7
V2ViSW5zcGVjdG9yLkphdmFTY3JpcHRTb3VyY2V9ICovIHVpU291cmNlQ29kZTsKKyAgICAgICAg
ICAgIHNvdXJjZUZyYW1lID0gbmV3IFdlYkluc3BlY3Rvci5KYXZhU2NyaXB0U291cmNlRnJhbWUo
dGhpcywgamF2YVNjcmlwdFNvdXJjZSk7CisgICAgICAgIH0gZWxzZSBpZiAodWlTb3VyY2VDb2Rl
IGluc3RhbmNlb2YgV2ViSW5zcGVjdG9yLlN0eWxlU291cmNlKSB7CisgICAgICAgICAgICB2YXIg
c3R5bGVTb3VyY2UgPSAvKiogQHR5cGUge1dlYkluc3BlY3Rvci5TdHlsZVNvdXJjZX0gKi8gdWlT
b3VyY2VDb2RlOworICAgICAgICAgICAgc291cmNlRnJhbWUgPSBuZXcgV2ViSW5zcGVjdG9yLlN0
eWxlU291cmNlRnJhbWUoc3R5bGVTb3VyY2UpOworICAgICAgICB9IGVsc2UgewogICAgICAgICAg
ICAgY29uc29sZS5hc3NlcnQoZmFsc2UsICJVbmtub3duIFVJU291cmNlQ29kZSB0eXBlIik7CiAg
ICAgICAgICAgICBzb3VyY2VGcmFtZSA9IG5ldyBXZWJJbnNwZWN0b3IuU291cmNlRnJhbWUodWlT
b3VyY2VDb2RlKTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
IGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDUzYThhZDk5ZmU1NDMxZGFjMjc0NWQ2Yjk3
MDE1OWEyMDc5YTBjMmUuLjZmZmIxZGY3NGY1NThhODUwYTQ2ZWI1NDM1YzU2YjBkNTUwN2YwYjkg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxMi0wNS0yMiAgVnNldm9sb2QgVmxhc292ICA8dnNl
dmlrQGNocm9taXVtLm9yZz4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBKYXZhU2NyaXB0U291
cmNlRnJhbWUgc2hvdWxkIGJlIGJhc2VkIG9uIEphdmFTY3JpcHRTb3VyY2Ugbm90IFVJU291cmNl
Q29kZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg3
MTM1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBo
dHRwL3Rlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci10ZXN0LmpzOgorICAgICAgICAoaW5pdGlhbGl6
ZV9EZWJ1Z2dlclRlc3QpOgorICAgICAgICAqIGluc3BlY3Rvci9kZWJ1Z2dlci9zY3JpcHQtZm9y
bWF0dGVyLWJyZWFrcG9pbnRzLmh0bWw6CisgICAgICAgICogaW5zcGVjdG9yL2RlYnVnZ2VyL3Nj
cmlwdC1mb3JtYXR0ZXItY29uc29sZS5odG1sOgorICAgICAgICAqIGluc3BlY3Rvci9kZWJ1Z2dl
ci9zb3VyY2UtZnJhbWUtY291bnQuaHRtbDoKKwogMjAxMi0wNS0yMiAgTmlrb2xhcyBaaW1tZXJt
YW5uICA8bnppbW1lcm1hbm5AcmltLmNvbT4KIAogICAgICAgICBOb3QgcmV2aWV3ZWQuIFJlLWFk
ZCBleHBlY3RlZCByZXN1bHRzIGZvciB0aHJlZSB0ZXN0cyB0aGF0IHdlcmUgbWlzc2luZy4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyLXRlc3Qu
anMgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci10ZXN0LmpzCmlu
ZGV4IDZhYTU1OTM2MGY1NTZjZDBkNzkzNTRjNWE0Zjc1NzJjMzcwNTMyNjYuLjZkNzQ5M2Y3Y2Fl
MDE5NjNmNzZhM2FlOWU1NjlhZGQ1YzRlMjcwNWEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyLXRlc3QuanMKKysrIGIvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9pbnNwZWN0b3IvZGVidWdnZXItdGVzdC5qcwpAQCAtMjE3LDcgKzIxNyw3IEBAIElu
c3BlY3RvclRlc3Quc2V0QnJlYWtwb2ludCA9IGZ1bmN0aW9uKHNvdXJjZUZyYW1lLCBsaW5lTnVt
YmVyLCBjb25kaXRpb24sIGVuYWJsCiAKIEluc3BlY3RvclRlc3QucmVtb3ZlQnJlYWtwb2ludCA9
IGZ1bmN0aW9uKHNvdXJjZUZyYW1lLCBsaW5lTnVtYmVyKQogewotICAgIHNvdXJjZUZyYW1lLl9i
cmVha3BvaW50TWFuYWdlci5maW5kQnJlYWtwb2ludChzb3VyY2VGcmFtZS5fdWlTb3VyY2VDb2Rl
LCBsaW5lTnVtYmVyKS5yZW1vdmUoKTsKKyAgICBzb3VyY2VGcmFtZS5fYnJlYWtwb2ludE1hbmFn
ZXIuZmluZEJyZWFrcG9pbnQoc291cmNlRnJhbWUuX2phdmFTY3JpcHRTb3VyY2UsIGxpbmVOdW1i
ZXIpLnJlbW92ZSgpOwogfTsKIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3Iv
ZGVidWdnZXIvc2NyaXB0LWZvcm1hdHRlci1icmVha3BvaW50cy5odG1sIGIvTGF5b3V0VGVzdHMv
aW5zcGVjdG9yL2RlYnVnZ2VyL3NjcmlwdC1mb3JtYXR0ZXItYnJlYWtwb2ludHMuaHRtbAppbmRl
eCA4YWZhMmFlN2U5YTc1Y2E5OWJjYWQ1Y2UyNzQxZTI0ZGEzYjk0ZDE5Li5hNDk5Njg0ZGRlYmJh
ZjBhZWI4N2M1YTM1NjM5ZGYxYTFiYzgwNGMyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbnNw
ZWN0b3IvZGVidWdnZXIvc2NyaXB0LWZvcm1hdHRlci1icmVha3BvaW50cy5odG1sCisrKyBiL0xh
eW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9zY3JpcHQtZm9ybWF0dGVyLWJyZWFrcG9pbnRz
Lmh0bWwKQEAgLTQxLDcgKzQxLDcgQEAgdmFyIHRlc3QgPSBmdW5jdGlvbigpCiAKICAgICAgICAg
ICAgIGZ1bmN0aW9uIHJlc3VtZWQoKQogICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIHNv
dXJjZUZyYW1lLl91aVNvdXJjZUNvZGUuc2V0Rm9ybWF0dGVkKHRydWUsIGRpZEZvcm1hdFBhZ2Up
OworICAgICAgICAgICAgICAgIHNvdXJjZUZyYW1lLl9qYXZhU2NyaXB0U291cmNlLnNldEZvcm1h
dHRlZCh0cnVlLCBkaWRGb3JtYXRQYWdlKTsKICAgICAgICAgICAgIH0KIAogICAgICAgICAgICAg
ZnVuY3Rpb24gZGlkRm9ybWF0UGFnZSgpCkBAIC01NCw3ICs1NCw3IEBAIHZhciB0ZXN0ID0gZnVu
Y3Rpb24oKQogICAgICAgICAgICAgZnVuY3Rpb24gcGF1c2VkSW5GMUFnYWluKGNhbGxGcmFtZXMp
CiAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgZHVtcEJyZWFrcG9pbnRTaWRlYmFyUGFu
ZSgid2hpbGUgcGF1c2VkIGluIHByZXR0eSBwcmludGVkIik7Ci0gICAgICAgICAgICAgICAgc291
cmNlRnJhbWUuX3VpU291cmNlQ29kZS5zZXRGb3JtYXR0ZWQoZmFsc2UpOworICAgICAgICAgICAg
ICAgIHNvdXJjZUZyYW1lLl9qYXZhU2NyaXB0U291cmNlLnNldEZvcm1hdHRlZChmYWxzZSk7CiAg
ICAgICAgICAgICAgICAgZHVtcEJyZWFrcG9pbnRTaWRlYmFyUGFuZSgid2hpbGUgcGF1c2VkIGlu
IHJhdyIpOwogICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QucmVzdW1lRXhlY3V0aW9uKG5l
eHQpOwogICAgICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2Rl
YnVnZ2VyL3NjcmlwdC1mb3JtYXR0ZXItY29uc29sZS5odG1sIGIvTGF5b3V0VGVzdHMvaW5zcGVj
dG9yL2RlYnVnZ2VyL3NjcmlwdC1mb3JtYXR0ZXItY29uc29sZS5odG1sCmluZGV4IDM1YWFhNjA1
NDBjY2FkNDAwYWYyYjM5MTkzZWI0MDMzMjBmNjg4MGYuLjNhYTNkYTMzYzU5NThlNDVhYTM2Yzdi
YTk3M2E1NDgwNDNmZDFkNzIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1
Z2dlci9zY3JpcHQtZm9ybWF0dGVyLWNvbnNvbGUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbnNw
ZWN0b3IvZGVidWdnZXIvc2NyaXB0LWZvcm1hdHRlci1jb25zb2xlLmh0bWwKQEAgLTMzLDcgKzMz
LDcgQEAgdmFyIHRlc3QgPSBmdW5jdGlvbigpCiAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVz
dC5hZGRSZXN1bHQoIlByZS1mb3JtYXQgcm93IG1lc3NhZ2UgbGlzdDoiKTsKICAgICAgICAgICAg
ICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdChKU09OLnN0cmluZ2lmeShPYmplY3Qua2V5cyhz
b3VyY2VGcmFtZS5fcm93TWVzc2FnZXMpKSk7CiAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVz
dC5hZGRSZXN1bHQoSlNPTi5zdHJpbmdpZnkoT2JqZWN0LmtleXMoc291cmNlRnJhbWUuX21lc3Nh
Z2VCdWJibGVzKSkpOwotICAgICAgICAgICAgICAgIHNvdXJjZUZyYW1lLl91aVNvdXJjZUNvZGUu
c2V0Rm9ybWF0dGVkKHRydWUsIGRpZEZvcm1hdExpbmtUZXh0KTsKKyAgICAgICAgICAgICAgICBz
b3VyY2VGcmFtZS5famF2YVNjcmlwdFNvdXJjZS5zZXRGb3JtYXR0ZWQodHJ1ZSwgZGlkRm9ybWF0
TGlua1RleHQpOwogICAgICAgICAgICAgfQogCiAgICAgICAgICAgICBmdW5jdGlvbiBkaWRGb3Jt
YXRMaW5rVGV4dCgpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIv
c291cmNlLWZyYW1lLWNvdW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIv
c291cmNlLWZyYW1lLWNvdW50Lmh0bWwKaW5kZXggMDg4NDFmZmVmMWVlYTY3YWUxODgwYzNiNzEw
ZDExN2RjOTQzMzkzNS4uNzQ0NTM3YjczM2E3YjQ3MWRmNTk2MDUxMTJkNDdjYTA1YjY2NmE2YyAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL3NvdXJjZS1mcmFtZS1j
b3VudC5odG1sCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9zb3VyY2UtZnJh
bWUtY291bnQuaHRtbApAQCAtNDYsNyArNDYsNyBAQCBmdW5jdGlvbiB0ZXN0KCkKIAogICAgICAg
ICAgICAgZnVuY3Rpb24gZGlkU2hvd1NjcmlwdFNvdXJjZUFnYWluKCkKICAgICAgICAgICAgIHsK
LSAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFzc2VydFRydWUocGFuZWwuX2VkaXRvckNv
bnRhaW5lci52aXNpYmxlVmlldy5fdWlTb3VyY2VDb2RlLnVybC5pbmRleE9mKCJzY3JpcHQzLmpz
IikgIT09IC0xKTsKKyAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFzc2VydFRydWUocGFu
ZWwuX2VkaXRvckNvbnRhaW5lci52aXNpYmxlVmlldy5famF2YVNjcmlwdFNvdXJjZS51cmwuaW5k
ZXhPZigic2NyaXB0My5qcyIpICE9PSAtMSk7CiAgICAgICAgICAgICAgICAgLy8gVGhlcmUgc2hv
dWxkIGJlIG1heGltdW0gMyBzb3VyY2UgZnJhbWVzIHNob3duOgogICAgICAgICAgICAgICAgIC8v
ICAtIGZpcnN0IG9uZSBpcyB0aGUgZmlyc3Qgc2hvd24gKGZpcnN0IHRhYiBhZGRlZCkKICAgICAg
ICAgICAgICAgICAvLyAgLSBzZWNvbmQgb25lIGlzIHRoZSBsYXN0IHZpZXdlZCAoInNjcmlwdDIu
anMiKQo=
</data>
<flag name="review"
          id="149843"
          type_id="1"
          status="+"
          setter="pfeldman"
    />
          </attachment>
      

    </bug>

</bugzilla>