<?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>44327</bug_id>
          
          <creation_ts>2010-08-20 02:17:34 -0700</creation_ts>
          <short_desc>Web Inspector: remove javascript breakpoint specific code from BreakpointSidebarPane</short_desc>
          <delta_ts>2010-08-23 07:41: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 (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</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="Pavel Podivilov">podivilov</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>pfeldman</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>267178</commentid>
    <comment_count>0</comment_count>
    <who name="Pavel Podivilov">podivilov</who>
    <bug_when>2010-08-20 02:17:34 -0700</bug_when>
    <thetext>Web Inspector: remove breakpoint specific code from BreakpointSidebarPane</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>267184</commentid>
    <comment_count>1</comment_count>
      <attachid>64939</attachid>
    <who name="Pavel Podivilov">podivilov</who>
    <bug_when>2010-08-20 02:46:16 -0700</bug_when>
    <thetext>Created attachment 64939
Proposed patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>267211</commentid>
    <comment_count>2</comment_count>
      <attachid>64939</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-08-20 05:07:34 -0700</bug_when>
    <thetext>Comment on attachment 64939
Proposed patch.

WebCore/inspector/front-end/BreakpointsSidebarPane.js:86
 +  WebInspector.BreakpointElement = function(breakpoint)
Please rename WebInspector.BreakpointElement =&gt; WebInspector.JSBreakpointItem. Otherwise looks good.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>267237</commentid>
    <comment_count>3</comment_count>
      <attachid>64953</attachid>
    <who name="Pavel Podivilov">podivilov</who>
    <bug_when>2010-08-20 06:58:30 -0700</bug_when>
    <thetext>Created attachment 64953
Proposed patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>267902</commentid>
    <comment_count>4</comment_count>
      <attachid>64953</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-08-23 07:41:24 -0700</bug_when>
    <thetext>Comment on attachment 64953
Proposed patch.

Clearing flags on attachment: 64953

Committed r65810: &lt;http://trac.webkit.org/changeset/65810&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>267903</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-08-23 07:41:29 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>64939</attachid>
            <date>2010-08-20 02:46:16 -0700</date>
            <delta_ts>2010-08-20 06:58:30 -0700</delta_ts>
            <desc>Proposed patch.</desc>
            <filename>refact.patch</filename>
            <type>text/plain</type>
            <size>16961</size>
            <attacher name="Pavel Podivilov">podivilov</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NzFkOGJkYy4uZTMyNGI0ZSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzNyBAQAorMjAxMC0wOC0yMCAgUGF2ZWwgUG9kaXZp
bG92ICA8cG9kaXZpbG92QGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiByZW1vdmUgamF2YXNjcmlwdCBi
cmVha3BvaW50IHNwZWNpZmljIGNvZGUgZnJvbSBCcmVha3BvaW50U2lkZWJhclBhbmUKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ0MzI3CisKKyAgICAg
ICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL0JyZWFrcG9pbnRNYW5hZ2VyLmpzOgorICAgICAgICAo
V2ViSW5zcGVjdG9yLkJyZWFrcG9pbnRNYW5hZ2VyLnByb3RvdHlwZS5zZXRCcmVha3BvaW50KToK
KyAgICAgICAgKFdlYkluc3BlY3Rvci5CcmVha3BvaW50TWFuYWdlci5wcm90b3R5cGUucmVzdG9y
ZWRCcmVha3BvaW50KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5CcmVha3BvaW50TWFuYWdlci5w
cm90b3R5cGUuX3NldEJyZWFrcG9pbnQpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkJyZWFrcG9p
bnRNYW5hZ2VyLnByb3RvdHlwZS5fcmVtb3ZlQnJlYWtwb2ludCk6CisgICAgICAgIChXZWJJbnNw
ZWN0b3IuQnJlYWtwb2ludE1hbmFnZXIucHJvdG90eXBlLl9zZXRCcmVha3BvaW50T25CYWNrZW5k
KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5CcmVha3BvaW50KToKKyAgICAgICAgKiBpbnNwZWN0
b3IvZnJvbnQtZW5kL0JyZWFrcG9pbnRzU2lkZWJhclBhbmUuanM6CisgICAgICAgIChXZWJJbnNw
ZWN0b3IuQnJlYWtwb2ludHNTaWRlYmFyUGFuZSk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuQnJl
YWtwb2ludHNTaWRlYmFyUGFuZS5wcm90b3R5cGUuYWRkQnJlYWtwb2ludCk6CisgICAgICAgIChX
ZWJJbnNwZWN0b3IuQnJlYWtwb2ludHNTaWRlYmFyUGFuZS5wcm90b3R5cGUuX2JyZWFrcG9pbnRS
ZW1vdmVkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5CcmVha3BvaW50RWxlbWVudCk6CisgICAg
ICAgIChXZWJJbnNwZWN0b3IuQnJlYWtwb2ludEVsZW1lbnQucHJvdG90eXBlLmNvbXBhcmVUbyk6
CisgICAgICAgIChXZWJJbnNwZWN0b3IuQnJlYWtwb2ludEVsZW1lbnQucHJvdG90eXBlLmVsZW1l
bnQpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkJyZWFrcG9pbnRFbGVtZW50LnByb3RvdHlwZS5f
YnJlYWtwb2ludENsaWNrZWQpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkJyZWFrcG9pbnRFbGVt
ZW50LnByb3RvdHlwZS5fY2hlY2tib3hDbGlja2VkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5C
cmVha3BvaW50RWxlbWVudC5wcm90b3R5cGUuX2VuYWJsZUNoYW5nZWQpOgorICAgICAgICAoV2Vi
SW5zcGVjdG9yLkJyZWFrcG9pbnRFbGVtZW50LnByb3RvdHlwZS5fdGV4dENoYW5nZWQpOgorICAg
ICAgICAoV2ViSW5zcGVjdG9yLkJyZWFrcG9pbnRFbGVtZW50LnByb3RvdHlwZS5fcmVtb3ZlZCk6
CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHRzUGFuZWwuanM6CisgICAgICAg
IChXZWJJbnNwZWN0b3IuU2NyaXB0c1BhbmVsKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5TY3Jp
cHRzUGFuZWwucHJvdG90eXBlLl9icmVha3BvaW50QWRkZWQpOgorICAgICAgICAoV2ViSW5zcGVj
dG9yLlNjcmlwdHNQYW5lbC5wcm90b3R5cGUuX2JyZWFrcG9pbnRSZW1vdmVkKToKKyAgICAgICAg
KiBpbnNwZWN0b3IvZnJvbnQtZW5kL1NvdXJjZUZyYW1lLmpzOgorICAgICAgICAoV2ViSW5zcGVj
dG9yLlNvdXJjZUZyYW1lLnByb3RvdHlwZS5hZGRCcmVha3BvaW50KToKKyAgICAgICAgKFdlYklu
c3BlY3Rvci5Tb3VyY2VGcmFtZS5wcm90b3R5cGUuX2FkZEJyZWFrcG9pbnRUb1NvdXJjZSk6CisK
IDIwMTAtMDgtMjAgIEFuZHJlYXMgS2xpbmcgIDxhbmRyZWFzLmtsaW5nQG5va2lhLmNvbT4KIAog
ICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJvaGRlIENocmlzdGlhbnNlbi4KZGlmZiAtLWdp
dCBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9CcmVha3BvaW50TWFuYWdlci5qcyBiL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9CcmVha3BvaW50TWFuYWdlci5qcwppbmRleCAyMWZh
NmE0Li4yYWZmODdmIDEwMDY0NAotLS0gYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQnJl
YWtwb2ludE1hbmFnZXIuanMKKysrIGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0JyZWFr
cG9pbnRNYW5hZ2VyLmpzCkBAIC01MCwxNiArNTAsMTYgQEAgV2ViSW5zcGVjdG9yLkJyZWFrcG9p
bnRNYW5hZ2VyLnByb3RvdHlwZSA9IHsKICAgICAgICAgfQogICAgIH0sCiAKLSAgICBzZXRCcmVh
a3BvaW50OiBmdW5jdGlvbihzb3VyY2VJRCwgc291cmNlVVJMLCBsaW5lLCBlbmFibGVkLCBjb25k
aXRpb24pCisgICAgc2V0QnJlYWtwb2ludDogZnVuY3Rpb24oc291cmNlSUQsIHVybCwgbGluZSwg
ZW5hYmxlZCwgY29uZGl0aW9uKQogICAgIHsKLSAgICAgICAgdmFyIGJyZWFrcG9pbnQgPSB0aGlz
Ll9zZXRCcmVha3BvaW50KHNvdXJjZUlELCBzb3VyY2VVUkwsIGxpbmUsIGVuYWJsZWQsIGNvbmRp
dGlvbik7CisgICAgICAgIHZhciBicmVha3BvaW50ID0gdGhpcy5fc2V0QnJlYWtwb2ludChzb3Vy
Y2VJRCwgdXJsLCBsaW5lLCBlbmFibGVkLCBjb25kaXRpb24pOwogICAgICAgICBpZiAoYnJlYWtw
b2ludCkKICAgICAgICAgICAgIHRoaXMuX3NldEJyZWFrcG9pbnRPbkJhY2tlbmQoYnJlYWtwb2lu
dCk7CiAgICAgfSwKIAotICAgIHJlc3RvcmVkQnJlYWtwb2ludDogZnVuY3Rpb24oc291cmNlSUQs
IHNvdXJjZVVSTCwgbGluZSwgZW5hYmxlZCwgY29uZGl0aW9uKQorICAgIHJlc3RvcmVkQnJlYWtw
b2ludDogZnVuY3Rpb24oc291cmNlSUQsIHVybCwgbGluZSwgZW5hYmxlZCwgY29uZGl0aW9uKQog
ICAgIHsKLSAgICAgICAgdGhpcy5fc2V0QnJlYWtwb2ludChzb3VyY2VJRCwgc291cmNlVVJMLCBs
aW5lLCBlbmFibGVkLCBjb25kaXRpb24pOworICAgICAgICB0aGlzLl9zZXRCcmVha3BvaW50KHNv
dXJjZUlELCB1cmwsIGxpbmUsIGVuYWJsZWQsIGNvbmRpdGlvbik7CiAgICAgfSwKIAogICAgIHJl
bW92ZUJyZWFrcG9pbnQ6IGZ1bmN0aW9uKGJyZWFrcG9pbnQpCkBAIC05NCw5ICs5NCw5IEBAIFdl
Ykluc3BlY3Rvci5CcmVha3BvaW50TWFuYWdlci5wcm90b3R5cGUgPSB7CiAgICAgICAgIGRlbGV0
ZSB0aGlzLl9vbmVUaW1lQnJlYWtwb2ludDsKICAgICB9LAogCi0gICAgX3NldEJyZWFrcG9pbnQ6
IGZ1bmN0aW9uKHNvdXJjZUlELCBzb3VyY2VVUkwsIGxpbmUsIGVuYWJsZWQsIGNvbmRpdGlvbikK
KyAgICBfc2V0QnJlYWtwb2ludDogZnVuY3Rpb24oc291cmNlSUQsIHVybCwgbGluZSwgZW5hYmxl
ZCwgY29uZGl0aW9uKQogICAgIHsKLSAgICAgICAgdmFyIGJyZWFrcG9pbnQgPSBuZXcgV2ViSW5z
cGVjdG9yLkJyZWFrcG9pbnQodGhpcywgc291cmNlSUQsIHNvdXJjZVVSTCwgbGluZSwgZW5hYmxl
ZCwgY29uZGl0aW9uKTsKKyAgICAgICAgdmFyIGJyZWFrcG9pbnQgPSBuZXcgV2ViSW5zcGVjdG9y
LkJyZWFrcG9pbnQodGhpcywgc291cmNlSUQsIHVybCwgbGluZSwgZW5hYmxlZCwgY29uZGl0aW9u
KTsKICAgICAgICAgaWYgKHRoaXMuX2JyZWFrcG9pbnRzW2JyZWFrcG9pbnQuaWRdKQogICAgICAg
ICAgICAgcmV0dXJuOwogICAgICAgICBpZiAodGhpcy5fb25lVGltZUJyZWFrcG9pbnQgJiYgKHRo
aXMuX29uZVRpbWVCcmVha3BvaW50LmlkID09IGJyZWFrcG9pbnQuaWQpKQpAQCAtMTEwLDEwICsx
MTAsMTAgQEAgV2ViSW5zcGVjdG9yLkJyZWFrcG9pbnRNYW5hZ2VyLnByb3RvdHlwZSA9IHsKICAg
ICB7CiAgICAgICAgIGlmICghKGJyZWFrcG9pbnQuaWQgaW4gdGhpcy5fYnJlYWtwb2ludHMpKQog
ICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICBicmVha3BvaW50LmRpc3BhdGNoRXZl
bnRUb0xpc3RlbmVycygicmVtb3ZlZCIpOwogICAgICAgICBicmVha3BvaW50LnJlbW92ZUFsbExp
c3RlbmVycygpOwogICAgICAgICBkZWxldGUgYnJlYWtwb2ludC5fYnJlYWtwb2ludE1hbmFnZXI7
CiAgICAgICAgIGRlbGV0ZSB0aGlzLl9icmVha3BvaW50c1ticmVha3BvaW50LmlkXTsKLSAgICAg
ICAgdGhpcy5kaXNwYXRjaEV2ZW50VG9MaXN0ZW5lcnMoImJyZWFrcG9pbnQtcmVtb3ZlZCIsIGJy
ZWFrcG9pbnQpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9LAogCkBAIC0xMzEsNyArMTMx
LDcgQEAgV2ViSW5zcGVjdG9yLkJyZWFrcG9pbnRNYW5hZ2VyLnByb3RvdHlwZSA9IHsKICAgICAg
ICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgdGhpcy5fcmVtb3ZlQnJlYWtwb2ludChi
cmVha3BvaW50KTsKICAgICAgICAgICAgICAgICBpZiAoc3VjY2VzcykKLSAgICAgICAgICAgICAg
ICAgICAgdGhpcy5fc2V0QnJlYWtwb2ludChicmVha3BvaW50LnNvdXJjZUlELCBicmVha3BvaW50
LnNvdXJjZVVSTCwgbGluZSwgYnJlYWtwb2ludC5lbmFibGVkLCBicmVha3BvaW50LmNvbmRpdGlv
bik7CisgICAgICAgICAgICAgICAgICAgIHRoaXMuX3NldEJyZWFrcG9pbnQoYnJlYWtwb2ludC5z
b3VyY2VJRCwgYnJlYWtwb2ludC51cmwsIGxpbmUsIGJyZWFrcG9pbnQuZW5hYmxlZCwgYnJlYWtw
b2ludC5jb25kaXRpb24pOwogICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgICAgIHZhciBj
YWxsYmFja0lkID0gV2ViSW5zcGVjdG9yLkNhbGxiYWNrLndyYXAoZGlkU2V0QnJlYWtwb2ludC5i
aW5kKHRoaXMpKTsKQEAgLTE0MSw5ICsxNDEsOSBAQCBXZWJJbnNwZWN0b3IuQnJlYWtwb2ludE1h
bmFnZXIucHJvdG90eXBlID0gewogCiBXZWJJbnNwZWN0b3IuQnJlYWtwb2ludE1hbmFnZXIucHJv
dG90eXBlLl9fcHJvdG9fXyA9IFdlYkluc3BlY3Rvci5PYmplY3QucHJvdG90eXBlOwogCi1XZWJJ
bnNwZWN0b3IuQnJlYWtwb2ludCA9IGZ1bmN0aW9uKGJyZWFrcG9pbnRNYW5hZ2VyLCBzb3VyY2VJ
RCwgc291cmNlVVJMLCBsaW5lLCBlbmFibGVkLCBjb25kaXRpb24pCitXZWJJbnNwZWN0b3IuQnJl
YWtwb2ludCA9IGZ1bmN0aW9uKGJyZWFrcG9pbnRNYW5hZ2VyLCBzb3VyY2VJRCwgdXJsLCBsaW5l
LCBlbmFibGVkLCBjb25kaXRpb24pCiB7Ci0gICAgdGhpcy51cmwgPSBzb3VyY2VVUkw7CisgICAg
dGhpcy51cmwgPSB1cmw7CiAgICAgdGhpcy5saW5lID0gbGluZTsKICAgICB0aGlzLnNvdXJjZUlE
ID0gc291cmNlSUQ7CiAgICAgdGhpcy5fZW5hYmxlZCA9IGVuYWJsZWQ7CkBAIC0xODIsMTIgKzE4
Miw2IEBAIFdlYkluc3BlY3Rvci5CcmVha3BvaW50LnByb3RvdHlwZSA9IHsKICAgICAgICAgdGhp
cy5kaXNwYXRjaEV2ZW50VG9MaXN0ZW5lcnMoInRleHQtY2hhbmdlZCIpOwogICAgIH0sCiAKLSAg
ICBnZXQgbGFiZWwoKQotICAgIHsKLSAgICAgICAgdmFyIGRpc3BsYXlOYW1lID0gKHRoaXMudXJs
ID8gV2ViSW5zcGVjdG9yLmRpc3BsYXlOYW1lRm9yVVJMKHRoaXMudXJsKSA6IFdlYkluc3BlY3Rv
ci5VSVN0cmluZygiKHByb2dyYW0pIikpOwotICAgICAgICByZXR1cm4gZGlzcGxheU5hbWUgKyAi
OiIgKyB0aGlzLmxpbmU7Ci0gICAgfSwKLQogICAgIGdldCBpZCgpCiAgICAgewogICAgICAgICBy
ZXR1cm4gdGhpcy5zb3VyY2VJRCArICI6IiArIHRoaXMubGluZTsKQEAgLTIxMiw0ICsyMDYsMyBA
QCBXZWJJbnNwZWN0b3IuQnJlYWtwb2ludC5wcm90b3R5cGUgPSB7CiB9CiAKIFdlYkluc3BlY3Rv
ci5CcmVha3BvaW50LnByb3RvdHlwZS5fX3Byb3RvX18gPSBXZWJJbnNwZWN0b3IuT2JqZWN0LnBy
b3RvdHlwZTsKLQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0JyZWFr
cG9pbnRzU2lkZWJhclBhbmUuanMgYi9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQnJlYWtw
b2ludHNTaWRlYmFyUGFuZS5qcwppbmRleCBhNGRhYTJkLi40MDY4NzVkIDEwMDY0NAotLS0gYS9X
ZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQnJlYWtwb2ludHNTaWRlYmFyUGFuZS5qcworKysg
Yi9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQnJlYWtwb2ludHNTaWRlYmFyUGFuZS5qcwpA
QCAtMzUsOSArMzUsNiBAQCBXZWJJbnNwZWN0b3IuQnJlYWtwb2ludHNTaWRlYmFyUGFuZSA9IGZ1
bmN0aW9uKCkKICAgICB0aGlzLmVtcHR5RWxlbWVudC50ZXh0Q29udGVudCA9IFdlYkluc3BlY3Rv
ci5VSVN0cmluZygiTm8gQnJlYWtwb2ludHMiKTsKIAogICAgIHRoaXMuYm9keUVsZW1lbnQuYXBw
ZW5kQ2hpbGQodGhpcy5lbXB0eUVsZW1lbnQpOwotCi0gICAgV2ViSW5zcGVjdG9yLmJyZWFrcG9p
bnRNYW5hZ2VyLmFkZEV2ZW50TGlzdGVuZXIoImJyZWFrcG9pbnQtYWRkZWQiLCB0aGlzLl9icmVh
a3BvaW50QWRkZWQsIHRoaXMpOwotICAgIFdlYkluc3BlY3Rvci5icmVha3BvaW50TWFuYWdlci5h
ZGRFdmVudExpc3RlbmVyKCJicmVha3BvaW50LXJlbW92ZWQiLCB0aGlzLl9icmVha3BvaW50UmVt
b3ZlZCwgdGhpcyk7ICAgIAogfQogCiBXZWJJbnNwZWN0b3IuQnJlYWtwb2ludHNTaWRlYmFyUGFu
ZS5wcm90b3R5cGUgPSB7CkBAIC01MCwxNSArNDcsMjMgQEAgV2ViSW5zcGVjdG9yLkJyZWFrcG9p
bnRzU2lkZWJhclBhbmUucHJvdG90eXBlID0gewogICAgICAgICB9CiAgICAgfSwKIAotICAgIF9i
cmVha3BvaW50QWRkZWQ6IGZ1bmN0aW9uKGV2ZW50KQorICAgIGFkZEJyZWFrcG9pbnQ6IGZ1bmN0
aW9uKGJyZWFrcG9pbnQpCiAgICAgewotICAgICAgICB2YXIgYnJlYWtwb2ludCA9IGV2ZW50LmRh
dGE7CisgICAgICAgIGJyZWFrcG9pbnQuYWRkRXZlbnRMaXN0ZW5lcigicmVtb3ZlZCIsIHRoaXMu
X2JyZWFrcG9pbnRSZW1vdmVkLCB0aGlzKTsKIAotICAgICAgICBicmVha3BvaW50LmFkZEV2ZW50
TGlzdGVuZXIoImVuYWJsZWQiLCB0aGlzLl9icmVha3BvaW50RW5hYmxlQ2hhbmdlZCwgdGhpcyk7
Ci0gICAgICAgIGJyZWFrcG9pbnQuYWRkRXZlbnRMaXN0ZW5lcigiZGlzYWJsZWQiLCB0aGlzLl9i
cmVha3BvaW50RW5hYmxlQ2hhbmdlZCwgdGhpcyk7Ci0gICAgICAgIGJyZWFrcG9pbnQuYWRkRXZl
bnRMaXN0ZW5lcigidGV4dC1jaGFuZ2VkIiwgdGhpcy5fYnJlYWtwb2ludFRleHRDaGFuZ2VkLCB0
aGlzKTsKKyAgICAgICAgdmFyIGJyZWFrcG9pbnRFbGVtZW50ID0gYnJlYWtwb2ludC5lbGVtZW50
KCk7CisgICAgICAgIGJyZWFrcG9pbnRFbGVtZW50Ll9icmVha3BvaW50T2JqZWN0ID0gYnJlYWtw
b2ludDsKIAotICAgICAgICB0aGlzLl9hcHBlbmRCcmVha3BvaW50RWxlbWVudChicmVha3BvaW50
KTsKKyAgICAgICAgdmFyIGN1cnJlbnRFbGVtZW50ID0gdGhpcy5saXN0RWxlbWVudC5maXJzdENo
aWxkOworICAgICAgICB3aGlsZSAoY3VycmVudEVsZW1lbnQpIHsKKyAgICAgICAgICAgICBpZiAo
Y3VycmVudEVsZW1lbnQuX2JyZWFrcG9pbnRPYmplY3QuY29tcGFyZVRvKGJyZWFrcG9pbnRFbGVt
ZW50Ll9icmVha3BvaW50T2JqZWN0KSA+IDApIHsKKyAgICAgICAgICAgICAgICB0aGlzLmxpc3RF
bGVtZW50Lmluc2VydEJlZm9yZShicmVha3BvaW50RWxlbWVudCwgY3VycmVudEVsZW1lbnQpOwor
ICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgfQorICAgICAgICAgICAgY3VycmVu
dEVsZW1lbnQgPSBjdXJyZW50RWxlbWVudC5uZXh0U2libGluZzsKKyAgICAgICAgfQorICAgICAg
ICBpZiAoIWN1cnJlbnRFbGVtZW50KQorICAgICAgICAgICAgdGhpcy5saXN0RWxlbWVudC5hcHBl
bmRDaGlsZChicmVha3BvaW50RWxlbWVudCk7CiAKICAgICAgICAgaWYgKHRoaXMuZW1wdHlFbGVt
ZW50LnBhcmVudEVsZW1lbnQpIHsKICAgICAgICAgICAgIHRoaXMuYm9keUVsZW1lbnQucmVtb3Zl
Q2hpbGQodGhpcy5lbXB0eUVsZW1lbnQpOwpAQCAtNjYsODggKzcxLDkxIEBAIFdlYkluc3BlY3Rv
ci5CcmVha3BvaW50c1NpZGViYXJQYW5lLnByb3RvdHlwZSA9IHsKICAgICAgICAgfQogICAgIH0s
CiAKLSAgICBfYXBwZW5kQnJlYWtwb2ludEVsZW1lbnQ6IGZ1bmN0aW9uKGJyZWFrcG9pbnQpCisg
ICAgX2JyZWFrcG9pbnRSZW1vdmVkOiBmdW5jdGlvbihldmVudCkKICAgICB7Ci0gICAgICAgIGZ1
bmN0aW9uIGNoZWNrYm94Q2xpY2tlZChldmVudCkKLSAgICAgICAgewotICAgICAgICAgICAgYnJl
YWtwb2ludC5lbmFibGVkID0gIWJyZWFrcG9pbnQuZW5hYmxlZDsKLQotICAgICAgICAgICAgLy8g
d2l0aG91dCB0aGlzLCB3ZSdkIHN3aXRjaCB0byB0aGUgc291cmNlIG9mIHRoZSBjbGlja2VkIGJy
ZWFrcG9pbnQKLSAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOwotICAgICAgICB9
Ci0KLSAgICAgICAgZnVuY3Rpb24gYnJlYWtwb2ludENsaWNrZWQoKQotICAgICAgICB7Ci0gICAg
ICAgICAgICBXZWJJbnNwZWN0b3IucGFuZWxzLnNjcmlwdHMuc2hvd1NvdXJjZUxpbmUoYnJlYWtw
b2ludC51cmwsIGJyZWFrcG9pbnQubGluZSk7CisgICAgICAgIHRoaXMubGlzdEVsZW1lbnQucmVt
b3ZlQ2hpbGQoZXZlbnQudGFyZ2V0LmVsZW1lbnQoKSk7CisgICAgICAgIGlmICghdGhpcy5saXN0
RWxlbWVudC5maXJzdENoaWxkKSB7CisgICAgICAgICAgICB0aGlzLmJvZHlFbGVtZW50LnJlbW92
ZUNoaWxkKHRoaXMubGlzdEVsZW1lbnQpOworICAgICAgICAgICAgdGhpcy5ib2R5RWxlbWVudC5h
cHBlbmRDaGlsZCh0aGlzLmVtcHR5RWxlbWVudCk7CiAgICAgICAgIH0KKyAgICB9Cit9CiAKLSAg
ICAgICAgdmFyIGJyZWFrcG9pbnRFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgibGki
KTsKLSAgICAgICAgYnJlYWtwb2ludC5fYnJlYWtwb2ludExpc3RFbGVtZW50ID0gYnJlYWtwb2lu
dEVsZW1lbnQ7Ci0gICAgICAgIGJyZWFrcG9pbnRFbGVtZW50Ll9icmVha3BvaW50T2JqZWN0ID0g
YnJlYWtwb2ludDsKLSAgICAgICAgYnJlYWtwb2ludEVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigi
Y2xpY2siLCBicmVha3BvaW50Q2xpY2tlZCwgZmFsc2UpOwotCi0gICAgICAgIHZhciBjaGVja2Jv
eEVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpOwotICAgICAgICBjaGVj
a2JveEVsZW1lbnQuY2xhc3NOYW1lID0gImNoZWNrYm94LWVsZW0iOwotICAgICAgICBjaGVja2Jv
eEVsZW1lbnQudHlwZSA9ICJjaGVja2JveCI7Ci0gICAgICAgIGNoZWNrYm94RWxlbWVudC5jaGVj
a2VkID0gYnJlYWtwb2ludC5lbmFibGVkOwotICAgICAgICBjaGVja2JveEVsZW1lbnQuYWRkRXZl
bnRMaXN0ZW5lcigiY2xpY2siLCBjaGVja2JveENsaWNrZWQsIGZhbHNlKTsKLSAgICAgICAgYnJl
YWtwb2ludEVsZW1lbnQuYXBwZW5kQ2hpbGQoY2hlY2tib3hFbGVtZW50KTsKLQotICAgICAgICB2
YXIgbGFiZWxFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoYnJlYWtwb2ludC5sYWJl
bCk7Ci0gICAgICAgIGJyZWFrcG9pbnRFbGVtZW50LmFwcGVuZENoaWxkKGxhYmVsRWxlbWVudCk7
CitXZWJJbnNwZWN0b3IuQnJlYWtwb2ludHNTaWRlYmFyUGFuZS5wcm90b3R5cGUuX19wcm90b19f
ID0gV2ViSW5zcGVjdG9yLlNpZGViYXJQYW5lLnByb3RvdHlwZTsKIAotICAgICAgICB2YXIgc291
cmNlVGV4dEVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKLSAgICAgICAg
c291cmNlVGV4dEVsZW1lbnQudGV4dENvbnRlbnQgPSBicmVha3BvaW50LnNvdXJjZVRleHQ7Ci0g
ICAgICAgIHNvdXJjZVRleHRFbGVtZW50LmNsYXNzTmFtZSA9ICJzb3VyY2UtdGV4dCBtb25vc3Bh
Y2UiOwotICAgICAgICBicmVha3BvaW50RWxlbWVudC5hcHBlbmRDaGlsZChzb3VyY2VUZXh0RWxl
bWVudCk7CitXZWJJbnNwZWN0b3IuQnJlYWtwb2ludEVsZW1lbnQgPSBmdW5jdGlvbihicmVha3Bv
aW50KQoreworICAgIHRoaXMuX2JyZWFrcG9pbnQgPSBicmVha3BvaW50OworCisgICAgdGhpcy5f
ZWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImxpIik7CisgICAgdGhpcy5fZWxlbWVu
dC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsIHRoaXMuX2JyZWFrcG9pbnRDbGlja2VkLmJpbmQo
dGhpcyksIGZhbHNlKTsKKworICAgIHZhciBjaGVja2JveEVsZW1lbnQgPSBkb2N1bWVudC5jcmVh
dGVFbGVtZW50KCJpbnB1dCIpOworICAgIGNoZWNrYm94RWxlbWVudC5jbGFzc05hbWUgPSAiY2hl
Y2tib3gtZWxlbSI7CisgICAgY2hlY2tib3hFbGVtZW50LnR5cGUgPSAiY2hlY2tib3giOworICAg
IGNoZWNrYm94RWxlbWVudC5jaGVja2VkID0gdGhpcy5fYnJlYWtwb2ludC5lbmFibGVkOworICAg
IGNoZWNrYm94RWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsIHRoaXMuX2NoZWNrYm94
Q2xpY2tlZC5iaW5kKHRoaXMpLCBmYWxzZSk7CisgICAgdGhpcy5fZWxlbWVudC5hcHBlbmRDaGls
ZChjaGVja2JveEVsZW1lbnQpOworCisgICAgdmFyIGRpc3BsYXlOYW1lID0gdGhpcy5fYnJlYWtw
b2ludC51cmwgPyBXZWJJbnNwZWN0b3IuZGlzcGxheU5hbWVGb3JVUkwodGhpcy5fYnJlYWtwb2lu
dC51cmwpIDogV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCIocHJvZ3JhbSkiKTsKKyAgICB2YXIgbGFi
ZWxFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoZGlzcGxheU5hbWUgKyAiOiIgKyB0
aGlzLl9icmVha3BvaW50LmxpbmUpOworICAgIHRoaXMuX2VsZW1lbnQuYXBwZW5kQ2hpbGQobGFi
ZWxFbGVtZW50KTsKKworICAgIHZhciBzb3VyY2VUZXh0RWxlbWVudCA9IGRvY3VtZW50LmNyZWF0
ZUVsZW1lbnQoImRpdiIpOworICAgIHNvdXJjZVRleHRFbGVtZW50LnRleHRDb250ZW50ID0gdGhp
cy5fYnJlYWtwb2ludC5zb3VyY2VUZXh0OworICAgIHNvdXJjZVRleHRFbGVtZW50LmNsYXNzTmFt
ZSA9ICJzb3VyY2UtdGV4dCBtb25vc3BhY2UiOworICAgIHRoaXMuX2VsZW1lbnQuYXBwZW5kQ2hp
bGQoc291cmNlVGV4dEVsZW1lbnQpOworCisgICAgdGhpcy5fYnJlYWtwb2ludC5hZGRFdmVudExp
c3RlbmVyKCJlbmFibGVkIiwgdGhpcy5fZW5hYmxlQ2hhbmdlZCwgdGhpcyk7CisgICAgdGhpcy5f
YnJlYWtwb2ludC5hZGRFdmVudExpc3RlbmVyKCJkaXNhYmxlZCIsIHRoaXMuX2VuYWJsZUNoYW5n
ZWQsIHRoaXMpOworICAgIHRoaXMuX2JyZWFrcG9pbnQuYWRkRXZlbnRMaXN0ZW5lcigidGV4dC1j
aGFuZ2VkIiwgdGhpcy5fdGV4dENoYW5nZWQsIHRoaXMpOworICAgIHRoaXMuX2JyZWFrcG9pbnQu
YWRkRXZlbnRMaXN0ZW5lcigicmVtb3ZlZCIsIHRoaXMuX3JlbW92ZWQsIHRoaXMpOworfQogCi0g
ICAgICAgIHZhciBjdXJyZW50RWxlbWVudCA9IHRoaXMubGlzdEVsZW1lbnQuZmlyc3RDaGlsZDsK
LSAgICAgICAgd2hpbGUgKGN1cnJlbnRFbGVtZW50KSB7Ci0gICAgICAgICAgICB2YXIgY3VycmVu
dEJyZWFrID0gY3VycmVudEVsZW1lbnQuX2JyZWFrcG9pbnRPYmplY3Q7Ci0gICAgICAgICAgICBp
ZiAoY3VycmVudEJyZWFrLnVybCA+IGJyZWFrcG9pbnQudXJsKSB7Ci0gICAgICAgICAgICAgICAg
dGhpcy5saXN0RWxlbWVudC5pbnNlcnRCZWZvcmUoYnJlYWtwb2ludEVsZW1lbnQsIGN1cnJlbnRF
bGVtZW50KTsKLSAgICAgICAgICAgICAgICByZXR1cm47Ci0gICAgICAgICAgICB9IGVsc2UgaWYg
KGN1cnJlbnRCcmVhay51cmwgPT0gYnJlYWtwb2ludC51cmwgJiYgY3VycmVudEJyZWFrLmxpbmUg
PiBicmVha3BvaW50LmxpbmUpIHsKLSAgICAgICAgICAgICAgICB0aGlzLmxpc3RFbGVtZW50Lmlu
c2VydEJlZm9yZShicmVha3BvaW50RWxlbWVudCwgY3VycmVudEVsZW1lbnQpOwotICAgICAgICAg
ICAgICAgIHJldHVybjsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGN1cnJlbnRFbGVtZW50
ID0gY3VycmVudEVsZW1lbnQubmV4dFNpYmxpbmc7Ci0gICAgICAgIH0KLSAgICAgICAgdGhpcy5s
aXN0RWxlbWVudC5hcHBlbmRDaGlsZChicmVha3BvaW50RWxlbWVudCk7CitXZWJJbnNwZWN0b3Iu
QnJlYWtwb2ludEVsZW1lbnQucHJvdG90eXBlID0geworICAgIGNvbXBhcmVUbzogZnVuY3Rpb24o
b3RoZXIpCisgICAgeworICAgICAgICBpZiAodGhpcy5fYnJlYWtwb2ludC51cmwgIT0gb3RoZXIu
X2JyZWFrcG9pbnQudXJsKQorICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2JyZWFrcG9pbnQudXJs
IDwgb3RoZXIuX2JyZWFrcG9pbnQudXJsID8gLTEgOiAxOworICAgICAgICBpZiAodGhpcy5fYnJl
YWtwb2ludC5saW5lICE9IG90aGVyLl9icmVha3BvaW50LmxpbmUpCisgICAgICAgICAgICByZXR1
cm4gdGhpcy5fYnJlYWtwb2ludC5saW5lIDwgb3RoZXIuX2JyZWFrcG9pbnQubGluZSA/IC0xIDog
MTsKKyAgICAgICAgcmV0dXJuIDA7CiAgICAgfSwKIAotICAgIF9icmVha3BvaW50UmVtb3ZlZDog
ZnVuY3Rpb24oZXZlbnQpCisgICAgZWxlbWVudDogZnVuY3Rpb24oKQogICAgIHsKLSAgICAgICAg
dmFyIGJyZWFrcG9pbnQgPSBldmVudC5kYXRhOworICAgICAgICByZXR1cm4gdGhpcy5fZWxlbWVu
dDsKKyAgICB9LAogCi0gICAgICAgIGJyZWFrcG9pbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZW5h
YmxlZCIsIG51bGwsIHRoaXMpOwotICAgICAgICBicmVha3BvaW50LnJlbW92ZUV2ZW50TGlzdGVu
ZXIoImRpc2FibGVkIiwgbnVsbCwgdGhpcyk7Ci0gICAgICAgIGJyZWFrcG9pbnQucmVtb3ZlRXZl
bnRMaXN0ZW5lcigidGV4dC1jaGFuZ2VkIiwgbnVsbCwgdGhpcyk7CisgICAgX2JyZWFrcG9pbnRD
bGlja2VkOiBmdW5jdGlvbigpCisgICAgeworICAgICAgICBXZWJJbnNwZWN0b3IucGFuZWxzLnNj
cmlwdHMuc2hvd1NvdXJjZUxpbmUodGhpcy5fYnJlYWtwb2ludC51cmwsIHRoaXMuX2JyZWFrcG9p
bnQubGluZSk7CisgICAgfSwKIAotICAgICAgICB2YXIgZWxlbWVudCA9IGJyZWFrcG9pbnQuX2Jy
ZWFrcG9pbnRMaXN0RWxlbWVudDsKLSAgICAgICAgZWxlbWVudC5wYXJlbnRFbGVtZW50LnJlbW92
ZUNoaWxkKGVsZW1lbnQpOworICAgIF9jaGVja2JveENsaWNrZWQ6IGZ1bmN0aW9uKGV2ZW50KQor
ICAgIHsKKyAgICAgICAgdGhpcy5fYnJlYWtwb2ludC5lbmFibGVkID0gIXRoaXMuX2JyZWFrcG9p
bnQuZW5hYmxlZDsKIAotICAgICAgICBpZiAoIXRoaXMubGlzdEVsZW1lbnQuZmlyc3RDaGlsZCkg
ewotICAgICAgICAgICAgdGhpcy5ib2R5RWxlbWVudC5yZW1vdmVDaGlsZCh0aGlzLmxpc3RFbGVt
ZW50KTsKLSAgICAgICAgICAgIHRoaXMuYm9keUVsZW1lbnQuYXBwZW5kQ2hpbGQodGhpcy5lbXB0
eUVsZW1lbnQpOwotICAgICAgICB9CisgICAgICAgIC8vIHdpdGhvdXQgdGhpcywgd2UnZCBzd2l0
Y2ggdG8gdGhlIHNvdXJjZSBvZiB0aGUgY2xpY2tlZCBicmVha3BvaW50CisgICAgICAgIGV2ZW50
LnN0b3BQcm9wYWdhdGlvbigpOwogICAgIH0sCiAKLSAgICBfYnJlYWtwb2ludEVuYWJsZUNoYW5n
ZWQ6IGZ1bmN0aW9uKGV2ZW50KQorICAgIF9lbmFibGVDaGFuZ2VkOiBmdW5jdGlvbigpCiAgICAg
ewotICAgICAgICB2YXIgYnJlYWtwb2ludCA9IGV2ZW50LnRhcmdldDsKLQotICAgICAgICB2YXIg
Y2hlY2tib3ggPSBicmVha3BvaW50Ll9icmVha3BvaW50TGlzdEVsZW1lbnQuZmlyc3RDaGlsZDsK
LSAgICAgICAgY2hlY2tib3guY2hlY2tlZCA9IGJyZWFrcG9pbnQuZW5hYmxlZDsKKyAgICAgICAg
dmFyIGNoZWNrYm94ID0gdGhpcy5fZWxlbWVudC5maXJzdENoaWxkOworICAgICAgICBjaGVja2Jv
eC5jaGVja2VkID0gdGhpcy5fYnJlYWtwb2ludC5lbmFibGVkOwogICAgIH0sCiAKLSAgICBfYnJl
YWtwb2ludFRleHRDaGFuZ2VkOiBmdW5jdGlvbihldmVudCkKKyAgICBfdGV4dENoYW5nZWQ6IGZ1
bmN0aW9uKCkKICAgICB7Ci0gICAgICAgIHZhciBicmVha3BvaW50ID0gZXZlbnQudGFyZ2V0Owor
ICAgICAgICB2YXIgc291cmNlVGV4dEVsZW1lbnQgPSB0aGlzLl9lbGVtZW50LmZpcnN0Q2hpbGQu
bmV4dFNpYmxpbmcubmV4dFNpYmxpbmc7CisgICAgICAgIHNvdXJjZVRleHRFbGVtZW50LnRleHRD
b250ZW50ID0gdGhpcy5fYnJlYWtwb2ludC5zb3VyY2VUZXh0OworICAgIH0sCiAKLSAgICAgICAg
dmFyIHNvdXJjZVRleHRFbGVtZW50ID0gYnJlYWtwb2ludC5fYnJlYWtwb2ludExpc3RFbGVtZW50
LmZpcnN0Q2hpbGQubmV4dFNpYmxpbmcubmV4dFNpYmxpbmc7Ci0gICAgICAgIHNvdXJjZVRleHRF
bGVtZW50LnRleHRDb250ZW50ID0gYnJlYWtwb2ludC5zb3VyY2VUZXh0OworICAgIF9yZW1vdmVk
OiBmdW5jdGlvbigpCisgICAgeworICAgICAgICB0aGlzLmRpc3BhdGNoRXZlbnRUb0xpc3RlbmVy
cygicmVtb3ZlZCIpOwogICAgIH0KIH0KIAotV2ViSW5zcGVjdG9yLkJyZWFrcG9pbnRzU2lkZWJh
clBhbmUucHJvdG90eXBlLl9fcHJvdG9fXyA9IFdlYkluc3BlY3Rvci5TaWRlYmFyUGFuZS5wcm90
b3R5cGU7CitXZWJJbnNwZWN0b3IuQnJlYWtwb2ludEVsZW1lbnQucHJvdG90eXBlLl9fcHJvdG9f
XyA9IFdlYkluc3BlY3Rvci5PYmplY3QucHJvdG90eXBlOwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9m
IGZpbGUKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHRzUGFu
ZWwuanMgYi9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0c1BhbmVsLmpzCmluZGV4
IDg2NzVmNzkuLjFiMjUxMjQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVu
ZC9TY3JpcHRzUGFuZWwuanMKKysrIGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Njcmlw
dHNQYW5lbC5qcwpAQCAtMTcxLDcgKzE3MSw2IEBAIFdlYkluc3BlY3Rvci5TY3JpcHRzUGFuZWwg
PSBmdW5jdGlvbigpCiAgICAgdGhpcy5fZGVidWdnZXJFbmFibGVkID0gUHJlZmVyZW5jZXMuZGVi
dWdnZXJBbHdheXNFbmFibGVkOwogCiAgICAgV2ViSW5zcGVjdG9yLmJyZWFrcG9pbnRNYW5hZ2Vy
LmFkZEV2ZW50TGlzdGVuZXIoImJyZWFrcG9pbnQtYWRkZWQiLCB0aGlzLl9icmVha3BvaW50QWRk
ZWQsIHRoaXMpOwotICAgIFdlYkluc3BlY3Rvci5icmVha3BvaW50TWFuYWdlci5hZGRFdmVudExp
c3RlbmVyKCJicmVha3BvaW50LXJlbW92ZWQiLCB0aGlzLl9icmVha3BvaW50UmVtb3ZlZCwgdGhp
cyk7CiAKICAgICB0aGlzLnJlc2V0KCk7CiB9CkBAIC0yOTYsNiArMjk1LDkgQEAgV2ViSW5zcGVj
dG9yLlNjcmlwdHNQYW5lbC5wcm90b3R5cGUgPSB7CiAgICAgewogICAgICAgICB2YXIgYnJlYWtw
b2ludCA9IGV2ZW50LmRhdGE7CiAKKyAgICAgICAgYnJlYWtwb2ludC5hZGRFdmVudExpc3RlbmVy
KCJyZW1vdmVkIiwgdGhpcy5fYnJlYWtwb2ludFJlbW92ZWQsIHRoaXMpOworICAgICAgICB0aGlz
LnNpZGViYXJQYW5lcy5icmVha3BvaW50cy5hZGRCcmVha3BvaW50KG5ldyBXZWJJbnNwZWN0b3Iu
QnJlYWtwb2ludEVsZW1lbnQoZXZlbnQuZGF0YSkpOworCiAgICAgICAgIHZhciBzb3VyY2VGcmFt
ZTsKICAgICAgICAgaWYgKGJyZWFrcG9pbnQudXJsKSB7CiAgICAgICAgICAgICB2YXIgcmVzb3Vy
Y2UgPSBXZWJJbnNwZWN0b3IucmVzb3VyY2VVUkxNYXBbYnJlYWtwb2ludC51cmxdOwpAQCAtMzE0
LDcgKzMxNiw3IEBAIFdlYkluc3BlY3Rvci5TY3JpcHRzUGFuZWwucHJvdG90eXBlID0gewogCiAg
ICAgX2JyZWFrcG9pbnRSZW1vdmVkOiBmdW5jdGlvbihldmVudCkKICAgICB7Ci0gICAgICAgIHZh
ciBicmVha3BvaW50ID0gZXZlbnQuZGF0YTsKKyAgICAgICAgdmFyIGJyZWFrcG9pbnQgPSBldmVu
dC50YXJnZXQ7CiAKICAgICAgICAgdmFyIHNvdXJjZUZyYW1lOwogICAgICAgICBpZiAoYnJlYWtw
b2ludC51cmwpIHsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Tb3Vy
Y2VGcmFtZS5qcyBiL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Tb3VyY2VGcmFtZS5qcwpp
bmRleCAwMWE4ZWMyLi5iZDQ2YzYyIDEwMDY0NAotLS0gYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvU291cmNlRnJhbWUuanMKKysrIGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Nv
dXJjZUZyYW1lLmpzCkBAIC05OSw5ICs5OSw2IEBAIFdlYkluc3BlY3Rvci5Tb3VyY2VGcmFtZS5w
cm90b3R5cGUgPSB7CiAgICAgYWRkQnJlYWtwb2ludDogZnVuY3Rpb24oYnJlYWtwb2ludCkKICAg
ICB7CiAgICAgICAgIHRoaXMuYnJlYWtwb2ludHMucHVzaChicmVha3BvaW50KTsKLSAgICAgICAg
YnJlYWtwb2ludC5hZGRFdmVudExpc3RlbmVyKCJlbmFibGVkIiwgdGhpcy5fYnJlYWtwb2ludENo
YW5nZWQsIHRoaXMpOwotICAgICAgICBicmVha3BvaW50LmFkZEV2ZW50TGlzdGVuZXIoImRpc2Fi
bGVkIiwgdGhpcy5fYnJlYWtwb2ludENoYW5nZWQsIHRoaXMpOwotICAgICAgICBicmVha3BvaW50
LmFkZEV2ZW50TGlzdGVuZXIoImNvbmRpdGlvbi1jaGFuZ2VkIiwgdGhpcy5fYnJlYWtwb2ludENo
YW5nZWQsIHRoaXMpOwogICAgICAgICBpZiAodGhpcy5fdGV4dFZpZXdlcikKICAgICAgICAgICAg
IHRoaXMuX2FkZEJyZWFrcG9pbnRUb1NvdXJjZShicmVha3BvaW50KTsKICAgICB9LApAQCAtMzg0
LDYgKzM4MSwxMCBAQCBXZWJJbnNwZWN0b3IuU291cmNlRnJhbWUucHJvdG90eXBlID0gewogCiAg
ICAgX2FkZEJyZWFrcG9pbnRUb1NvdXJjZTogZnVuY3Rpb24oYnJlYWtwb2ludCkKICAgICB7Cisg
ICAgICAgIGJyZWFrcG9pbnQuYWRkRXZlbnRMaXN0ZW5lcigiZW5hYmxlZCIsIHRoaXMuX2JyZWFr
cG9pbnRDaGFuZ2VkLCB0aGlzKTsKKyAgICAgICAgYnJlYWtwb2ludC5hZGRFdmVudExpc3RlbmVy
KCJkaXNhYmxlZCIsIHRoaXMuX2JyZWFrcG9pbnRDaGFuZ2VkLCB0aGlzKTsKKyAgICAgICAgYnJl
YWtwb2ludC5hZGRFdmVudExpc3RlbmVyKCJjb25kaXRpb24tY2hhbmdlZCIsIHRoaXMuX2JyZWFr
cG9pbnRDaGFuZ2VkLCB0aGlzKTsKKwogICAgICAgICB2YXIgbGluZU51bWJlciA9IGJyZWFrcG9p
bnQubGluZSAtIDE7CiAgICAgICAgIGlmIChsaW5lTnVtYmVyID49IHRoaXMuX3RleHRNb2RlbC5s
aW5lc0NvdW50KQogICAgICAgICAgICAgcmV0dXJuOwo=
</data>
<flag name="review"
          id="53610"
          type_id="1"
          status="-"
          setter="pfeldman"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>64953</attachid>
            <date>2010-08-20 06:58:30 -0700</date>
            <delta_ts>2010-08-23 07:41:24 -0700</delta_ts>
            <desc>Proposed patch.</desc>
            <filename>refact.patch</filename>
            <type>text/plain</type>
            <size>16949</size>
            <attacher name="Pavel Podivilov">podivilov</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NzFkOGJkYy4uYjBhZDhmMiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzNyBAQAorMjAxMC0wOC0yMCAgUGF2ZWwgUG9kaXZp
bG92ICA8cG9kaXZpbG92QGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiByZW1vdmUgamF2YXNjcmlwdCBi
cmVha3BvaW50IHNwZWNpZmljIGNvZGUgZnJvbSBCcmVha3BvaW50U2lkZWJhclBhbmUKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ0MzI3CisKKyAgICAg
ICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL0JyZWFrcG9pbnRNYW5hZ2VyLmpzOgorICAgICAgICAo
V2ViSW5zcGVjdG9yLkJyZWFrcG9pbnRNYW5hZ2VyLnByb3RvdHlwZS5zZXRCcmVha3BvaW50KToK
KyAgICAgICAgKFdlYkluc3BlY3Rvci5CcmVha3BvaW50TWFuYWdlci5wcm90b3R5cGUucmVzdG9y
ZWRCcmVha3BvaW50KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5CcmVha3BvaW50TWFuYWdlci5w
cm90b3R5cGUuX3NldEJyZWFrcG9pbnQpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkJyZWFrcG9p
bnRNYW5hZ2VyLnByb3RvdHlwZS5fcmVtb3ZlQnJlYWtwb2ludCk6CisgICAgICAgIChXZWJJbnNw
ZWN0b3IuQnJlYWtwb2ludE1hbmFnZXIucHJvdG90eXBlLl9zZXRCcmVha3BvaW50T25CYWNrZW5k
KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5CcmVha3BvaW50KToKKyAgICAgICAgKiBpbnNwZWN0
b3IvZnJvbnQtZW5kL0JyZWFrcG9pbnRzU2lkZWJhclBhbmUuanM6CisgICAgICAgIChXZWJJbnNw
ZWN0b3IuQnJlYWtwb2ludHNTaWRlYmFyUGFuZSk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuQnJl
YWtwb2ludHNTaWRlYmFyUGFuZS5wcm90b3R5cGUuYWRkQnJlYWtwb2ludCk6CisgICAgICAgIChX
ZWJJbnNwZWN0b3IuQnJlYWtwb2ludHNTaWRlYmFyUGFuZS5wcm90b3R5cGUuX2JyZWFrcG9pbnRS
ZW1vdmVkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5KU0JyZWFrcG9pbnRJdGVtKToKKyAgICAg
ICAgKFdlYkluc3BlY3Rvci5KU0JyZWFrcG9pbnRJdGVtLnByb3RvdHlwZS5jb21wYXJlVG8pOgor
ICAgICAgICAoV2ViSW5zcGVjdG9yLkpTQnJlYWtwb2ludEl0ZW0ucHJvdG90eXBlLmVsZW1lbnQp
OgorICAgICAgICAoV2ViSW5zcGVjdG9yLkpTQnJlYWtwb2ludEl0ZW0ucHJvdG90eXBlLl9icmVh
a3BvaW50Q2xpY2tlZCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSlNCcmVha3BvaW50SXRlbS5w
cm90b3R5cGUuX2NoZWNrYm94Q2xpY2tlZCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSlNCcmVh
a3BvaW50SXRlbS5wcm90b3R5cGUuX2VuYWJsZUNoYW5nZWQpOgorICAgICAgICAoV2ViSW5zcGVj
dG9yLkpTQnJlYWtwb2ludEl0ZW0ucHJvdG90eXBlLl90ZXh0Q2hhbmdlZCk6CisgICAgICAgIChX
ZWJJbnNwZWN0b3IuSlNCcmVha3BvaW50SXRlbS5wcm90b3R5cGUuX3JlbW92ZWQpOgorICAgICAg
ICAqIGluc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0c1BhbmVsLmpzOgorICAgICAgICAoV2ViSW5z
cGVjdG9yLlNjcmlwdHNQYW5lbCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuU2NyaXB0c1BhbmVs
LnByb3RvdHlwZS5fYnJlYWtwb2ludEFkZGVkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5TY3Jp
cHRzUGFuZWwucHJvdG90eXBlLl9icmVha3BvaW50UmVtb3ZlZCk6CisgICAgICAgICogaW5zcGVj
dG9yL2Zyb250LWVuZC9Tb3VyY2VGcmFtZS5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Tb3Vy
Y2VGcmFtZS5wcm90b3R5cGUuYWRkQnJlYWtwb2ludCk6CisgICAgICAgIChXZWJJbnNwZWN0b3Iu
U291cmNlRnJhbWUucHJvdG90eXBlLl9hZGRCcmVha3BvaW50VG9Tb3VyY2UpOgorCiAyMDEwLTA4
LTIwICBBbmRyZWFzIEtsaW5nICA8YW5kcmVhcy5rbGluZ0Bub2tpYS5jb20+CiAKICAgICAgICAg
UmV2aWV3ZWQgYnkgS2VubmV0aCBSb2hkZSBDaHJpc3RpYW5zZW4uCmRpZmYgLS1naXQgYS9XZWJD
b3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQnJlYWtwb2ludE1hbmFnZXIuanMgYi9XZWJDb3JlL2lu
c3BlY3Rvci9mcm9udC1lbmQvQnJlYWtwb2ludE1hbmFnZXIuanMKaW5kZXggMjFmYTZhNC4uMmFm
Zjg3ZiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0JyZWFrcG9pbnRN
YW5hZ2VyLmpzCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9CcmVha3BvaW50TWFu
YWdlci5qcwpAQCAtNTAsMTYgKzUwLDE2IEBAIFdlYkluc3BlY3Rvci5CcmVha3BvaW50TWFuYWdl
ci5wcm90b3R5cGUgPSB7CiAgICAgICAgIH0KICAgICB9LAogCi0gICAgc2V0QnJlYWtwb2ludDog
ZnVuY3Rpb24oc291cmNlSUQsIHNvdXJjZVVSTCwgbGluZSwgZW5hYmxlZCwgY29uZGl0aW9uKQor
ICAgIHNldEJyZWFrcG9pbnQ6IGZ1bmN0aW9uKHNvdXJjZUlELCB1cmwsIGxpbmUsIGVuYWJsZWQs
IGNvbmRpdGlvbikKICAgICB7Ci0gICAgICAgIHZhciBicmVha3BvaW50ID0gdGhpcy5fc2V0QnJl
YWtwb2ludChzb3VyY2VJRCwgc291cmNlVVJMLCBsaW5lLCBlbmFibGVkLCBjb25kaXRpb24pOwor
ICAgICAgICB2YXIgYnJlYWtwb2ludCA9IHRoaXMuX3NldEJyZWFrcG9pbnQoc291cmNlSUQsIHVy
bCwgbGluZSwgZW5hYmxlZCwgY29uZGl0aW9uKTsKICAgICAgICAgaWYgKGJyZWFrcG9pbnQpCiAg
ICAgICAgICAgICB0aGlzLl9zZXRCcmVha3BvaW50T25CYWNrZW5kKGJyZWFrcG9pbnQpOwogICAg
IH0sCiAKLSAgICByZXN0b3JlZEJyZWFrcG9pbnQ6IGZ1bmN0aW9uKHNvdXJjZUlELCBzb3VyY2VV
UkwsIGxpbmUsIGVuYWJsZWQsIGNvbmRpdGlvbikKKyAgICByZXN0b3JlZEJyZWFrcG9pbnQ6IGZ1
bmN0aW9uKHNvdXJjZUlELCB1cmwsIGxpbmUsIGVuYWJsZWQsIGNvbmRpdGlvbikKICAgICB7Ci0g
ICAgICAgIHRoaXMuX3NldEJyZWFrcG9pbnQoc291cmNlSUQsIHNvdXJjZVVSTCwgbGluZSwgZW5h
YmxlZCwgY29uZGl0aW9uKTsKKyAgICAgICAgdGhpcy5fc2V0QnJlYWtwb2ludChzb3VyY2VJRCwg
dXJsLCBsaW5lLCBlbmFibGVkLCBjb25kaXRpb24pOwogICAgIH0sCiAKICAgICByZW1vdmVCcmVh
a3BvaW50OiBmdW5jdGlvbihicmVha3BvaW50KQpAQCAtOTQsOSArOTQsOSBAQCBXZWJJbnNwZWN0
b3IuQnJlYWtwb2ludE1hbmFnZXIucHJvdG90eXBlID0gewogICAgICAgICBkZWxldGUgdGhpcy5f
b25lVGltZUJyZWFrcG9pbnQ7CiAgICAgfSwKIAotICAgIF9zZXRCcmVha3BvaW50OiBmdW5jdGlv
bihzb3VyY2VJRCwgc291cmNlVVJMLCBsaW5lLCBlbmFibGVkLCBjb25kaXRpb24pCisgICAgX3Nl
dEJyZWFrcG9pbnQ6IGZ1bmN0aW9uKHNvdXJjZUlELCB1cmwsIGxpbmUsIGVuYWJsZWQsIGNvbmRp
dGlvbikKICAgICB7Ci0gICAgICAgIHZhciBicmVha3BvaW50ID0gbmV3IFdlYkluc3BlY3Rvci5C
cmVha3BvaW50KHRoaXMsIHNvdXJjZUlELCBzb3VyY2VVUkwsIGxpbmUsIGVuYWJsZWQsIGNvbmRp
dGlvbik7CisgICAgICAgIHZhciBicmVha3BvaW50ID0gbmV3IFdlYkluc3BlY3Rvci5CcmVha3Bv
aW50KHRoaXMsIHNvdXJjZUlELCB1cmwsIGxpbmUsIGVuYWJsZWQsIGNvbmRpdGlvbik7CiAgICAg
ICAgIGlmICh0aGlzLl9icmVha3BvaW50c1ticmVha3BvaW50LmlkXSkKICAgICAgICAgICAgIHJl
dHVybjsKICAgICAgICAgaWYgKHRoaXMuX29uZVRpbWVCcmVha3BvaW50ICYmICh0aGlzLl9vbmVU
aW1lQnJlYWtwb2ludC5pZCA9PSBicmVha3BvaW50LmlkKSkKQEAgLTExMCwxMCArMTEwLDEwIEBA
IFdlYkluc3BlY3Rvci5CcmVha3BvaW50TWFuYWdlci5wcm90b3R5cGUgPSB7CiAgICAgewogICAg
ICAgICBpZiAoIShicmVha3BvaW50LmlkIGluIHRoaXMuX2JyZWFrcG9pbnRzKSkKICAgICAgICAg
ICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgYnJlYWtwb2ludC5kaXNwYXRjaEV2ZW50VG9MaXN0
ZW5lcnMoInJlbW92ZWQiKTsKICAgICAgICAgYnJlYWtwb2ludC5yZW1vdmVBbGxMaXN0ZW5lcnMo
KTsKICAgICAgICAgZGVsZXRlIGJyZWFrcG9pbnQuX2JyZWFrcG9pbnRNYW5hZ2VyOwogICAgICAg
ICBkZWxldGUgdGhpcy5fYnJlYWtwb2ludHNbYnJlYWtwb2ludC5pZF07Ci0gICAgICAgIHRoaXMu
ZGlzcGF0Y2hFdmVudFRvTGlzdGVuZXJzKCJicmVha3BvaW50LXJlbW92ZWQiLCBicmVha3BvaW50
KTsKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfSwKIApAQCAtMTMxLDcgKzEzMSw3IEBAIFdl
Ykluc3BlY3Rvci5CcmVha3BvaW50TWFuYWdlci5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICB9
IGVsc2UgewogICAgICAgICAgICAgICAgIHRoaXMuX3JlbW92ZUJyZWFrcG9pbnQoYnJlYWtwb2lu
dCk7CiAgICAgICAgICAgICAgICAgaWYgKHN1Y2Nlc3MpCi0gICAgICAgICAgICAgICAgICAgIHRo
aXMuX3NldEJyZWFrcG9pbnQoYnJlYWtwb2ludC5zb3VyY2VJRCwgYnJlYWtwb2ludC5zb3VyY2VV
UkwsIGxpbmUsIGJyZWFrcG9pbnQuZW5hYmxlZCwgYnJlYWtwb2ludC5jb25kaXRpb24pOworICAg
ICAgICAgICAgICAgICAgICB0aGlzLl9zZXRCcmVha3BvaW50KGJyZWFrcG9pbnQuc291cmNlSUQs
IGJyZWFrcG9pbnQudXJsLCBsaW5lLCBicmVha3BvaW50LmVuYWJsZWQsIGJyZWFrcG9pbnQuY29u
ZGl0aW9uKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgICAgICB2YXIgY2FsbGJhY2tJ
ZCA9IFdlYkluc3BlY3Rvci5DYWxsYmFjay53cmFwKGRpZFNldEJyZWFrcG9pbnQuYmluZCh0aGlz
KSk7CkBAIC0xNDEsOSArMTQxLDkgQEAgV2ViSW5zcGVjdG9yLkJyZWFrcG9pbnRNYW5hZ2VyLnBy
b3RvdHlwZSA9IHsKIAogV2ViSW5zcGVjdG9yLkJyZWFrcG9pbnRNYW5hZ2VyLnByb3RvdHlwZS5f
X3Byb3RvX18gPSBXZWJJbnNwZWN0b3IuT2JqZWN0LnByb3RvdHlwZTsKIAotV2ViSW5zcGVjdG9y
LkJyZWFrcG9pbnQgPSBmdW5jdGlvbihicmVha3BvaW50TWFuYWdlciwgc291cmNlSUQsIHNvdXJj
ZVVSTCwgbGluZSwgZW5hYmxlZCwgY29uZGl0aW9uKQorV2ViSW5zcGVjdG9yLkJyZWFrcG9pbnQg
PSBmdW5jdGlvbihicmVha3BvaW50TWFuYWdlciwgc291cmNlSUQsIHVybCwgbGluZSwgZW5hYmxl
ZCwgY29uZGl0aW9uKQogewotICAgIHRoaXMudXJsID0gc291cmNlVVJMOworICAgIHRoaXMudXJs
ID0gdXJsOwogICAgIHRoaXMubGluZSA9IGxpbmU7CiAgICAgdGhpcy5zb3VyY2VJRCA9IHNvdXJj
ZUlEOwogICAgIHRoaXMuX2VuYWJsZWQgPSBlbmFibGVkOwpAQCAtMTgyLDEyICsxODIsNiBAQCBX
ZWJJbnNwZWN0b3IuQnJlYWtwb2ludC5wcm90b3R5cGUgPSB7CiAgICAgICAgIHRoaXMuZGlzcGF0
Y2hFdmVudFRvTGlzdGVuZXJzKCJ0ZXh0LWNoYW5nZWQiKTsKICAgICB9LAogCi0gICAgZ2V0IGxh
YmVsKCkKLSAgICB7Ci0gICAgICAgIHZhciBkaXNwbGF5TmFtZSA9ICh0aGlzLnVybCA/IFdlYklu
c3BlY3Rvci5kaXNwbGF5TmFtZUZvclVSTCh0aGlzLnVybCkgOiBXZWJJbnNwZWN0b3IuVUlTdHJp
bmcoIihwcm9ncmFtKSIpKTsKLSAgICAgICAgcmV0dXJuIGRpc3BsYXlOYW1lICsgIjoiICsgdGhp
cy5saW5lOwotICAgIH0sCi0KICAgICBnZXQgaWQoKQogICAgIHsKICAgICAgICAgcmV0dXJuIHRo
aXMuc291cmNlSUQgKyAiOiIgKyB0aGlzLmxpbmU7CkBAIC0yMTIsNCArMjA2LDMgQEAgV2ViSW5z
cGVjdG9yLkJyZWFrcG9pbnQucHJvdG90eXBlID0gewogfQogCiBXZWJJbnNwZWN0b3IuQnJlYWtw
b2ludC5wcm90b3R5cGUuX19wcm90b19fID0gV2ViSW5zcGVjdG9yLk9iamVjdC5wcm90b3R5cGU7
Ci0KZGlmZiAtLWdpdCBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9CcmVha3BvaW50c1Np
ZGViYXJQYW5lLmpzIGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0JyZWFrcG9pbnRzU2lk
ZWJhclBhbmUuanMKaW5kZXggYTRkYWEyZC4uZDg4MDI0ZCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9p
bnNwZWN0b3IvZnJvbnQtZW5kL0JyZWFrcG9pbnRzU2lkZWJhclBhbmUuanMKKysrIGIvV2ViQ29y
ZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0JyZWFrcG9pbnRzU2lkZWJhclBhbmUuanMKQEAgLTM1LDkg
KzM1LDYgQEAgV2ViSW5zcGVjdG9yLkJyZWFrcG9pbnRzU2lkZWJhclBhbmUgPSBmdW5jdGlvbigp
CiAgICAgdGhpcy5lbXB0eUVsZW1lbnQudGV4dENvbnRlbnQgPSBXZWJJbnNwZWN0b3IuVUlTdHJp
bmcoIk5vIEJyZWFrcG9pbnRzIik7CiAKICAgICB0aGlzLmJvZHlFbGVtZW50LmFwcGVuZENoaWxk
KHRoaXMuZW1wdHlFbGVtZW50KTsKLQotICAgIFdlYkluc3BlY3Rvci5icmVha3BvaW50TWFuYWdl
ci5hZGRFdmVudExpc3RlbmVyKCJicmVha3BvaW50LWFkZGVkIiwgdGhpcy5fYnJlYWtwb2ludEFk
ZGVkLCB0aGlzKTsKLSAgICBXZWJJbnNwZWN0b3IuYnJlYWtwb2ludE1hbmFnZXIuYWRkRXZlbnRM
aXN0ZW5lcigiYnJlYWtwb2ludC1yZW1vdmVkIiwgdGhpcy5fYnJlYWtwb2ludFJlbW92ZWQsIHRo
aXMpOyAgICAKIH0KIAogV2ViSW5zcGVjdG9yLkJyZWFrcG9pbnRzU2lkZWJhclBhbmUucHJvdG90
eXBlID0gewpAQCAtNTAsMTUgKzQ3LDIzIEBAIFdlYkluc3BlY3Rvci5CcmVha3BvaW50c1NpZGVi
YXJQYW5lLnByb3RvdHlwZSA9IHsKICAgICAgICAgfQogICAgIH0sCiAKLSAgICBfYnJlYWtwb2lu
dEFkZGVkOiBmdW5jdGlvbihldmVudCkKKyAgICBhZGRCcmVha3BvaW50OiBmdW5jdGlvbihicmVh
a3BvaW50KQogICAgIHsKLSAgICAgICAgdmFyIGJyZWFrcG9pbnQgPSBldmVudC5kYXRhOworICAg
ICAgICBicmVha3BvaW50LmFkZEV2ZW50TGlzdGVuZXIoInJlbW92ZWQiLCB0aGlzLl9icmVha3Bv
aW50UmVtb3ZlZCwgdGhpcyk7CiAKLSAgICAgICAgYnJlYWtwb2ludC5hZGRFdmVudExpc3RlbmVy
KCJlbmFibGVkIiwgdGhpcy5fYnJlYWtwb2ludEVuYWJsZUNoYW5nZWQsIHRoaXMpOwotICAgICAg
ICBicmVha3BvaW50LmFkZEV2ZW50TGlzdGVuZXIoImRpc2FibGVkIiwgdGhpcy5fYnJlYWtwb2lu
dEVuYWJsZUNoYW5nZWQsIHRoaXMpOwotICAgICAgICBicmVha3BvaW50LmFkZEV2ZW50TGlzdGVu
ZXIoInRleHQtY2hhbmdlZCIsIHRoaXMuX2JyZWFrcG9pbnRUZXh0Q2hhbmdlZCwgdGhpcyk7Cisg
ICAgICAgIHZhciBicmVha3BvaW50RWxlbWVudCA9IGJyZWFrcG9pbnQuZWxlbWVudCgpOworICAg
ICAgICBicmVha3BvaW50RWxlbWVudC5fYnJlYWtwb2ludE9iamVjdCA9IGJyZWFrcG9pbnQ7CiAK
LSAgICAgICAgdGhpcy5fYXBwZW5kQnJlYWtwb2ludEVsZW1lbnQoYnJlYWtwb2ludCk7CisgICAg
ICAgIHZhciBjdXJyZW50RWxlbWVudCA9IHRoaXMubGlzdEVsZW1lbnQuZmlyc3RDaGlsZDsKKyAg
ICAgICAgd2hpbGUgKGN1cnJlbnRFbGVtZW50KSB7CisgICAgICAgICAgICAgaWYgKGN1cnJlbnRF
bGVtZW50Ll9icmVha3BvaW50T2JqZWN0LmNvbXBhcmVUbyhicmVha3BvaW50RWxlbWVudC5fYnJl
YWtwb2ludE9iamVjdCkgPiAwKSB7CisgICAgICAgICAgICAgICAgdGhpcy5saXN0RWxlbWVudC5p
bnNlcnRCZWZvcmUoYnJlYWtwb2ludEVsZW1lbnQsIGN1cnJlbnRFbGVtZW50KTsKKyAgICAgICAg
ICAgICAgICBicmVhazsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGN1cnJlbnRFbGVtZW50
ID0gY3VycmVudEVsZW1lbnQubmV4dFNpYmxpbmc7CisgICAgICAgIH0KKyAgICAgICAgaWYgKCFj
dXJyZW50RWxlbWVudCkKKyAgICAgICAgICAgIHRoaXMubGlzdEVsZW1lbnQuYXBwZW5kQ2hpbGQo
YnJlYWtwb2ludEVsZW1lbnQpOwogCiAgICAgICAgIGlmICh0aGlzLmVtcHR5RWxlbWVudC5wYXJl
bnRFbGVtZW50KSB7CiAgICAgICAgICAgICB0aGlzLmJvZHlFbGVtZW50LnJlbW92ZUNoaWxkKHRo
aXMuZW1wdHlFbGVtZW50KTsKQEAgLTY2LDg4ICs3MSw5MSBAQCBXZWJJbnNwZWN0b3IuQnJlYWtw
b2ludHNTaWRlYmFyUGFuZS5wcm90b3R5cGUgPSB7CiAgICAgICAgIH0KICAgICB9LAogCi0gICAg
X2FwcGVuZEJyZWFrcG9pbnRFbGVtZW50OiBmdW5jdGlvbihicmVha3BvaW50KQorICAgIF9icmVh
a3BvaW50UmVtb3ZlZDogZnVuY3Rpb24oZXZlbnQpCiAgICAgewotICAgICAgICBmdW5jdGlvbiBj
aGVja2JveENsaWNrZWQoZXZlbnQpCi0gICAgICAgIHsKLSAgICAgICAgICAgIGJyZWFrcG9pbnQu
ZW5hYmxlZCA9ICFicmVha3BvaW50LmVuYWJsZWQ7Ci0KLSAgICAgICAgICAgIC8vIHdpdGhvdXQg
dGhpcywgd2UnZCBzd2l0Y2ggdG8gdGhlIHNvdXJjZSBvZiB0aGUgY2xpY2tlZCBicmVha3BvaW50
Ci0gICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTsKLSAgICAgICAgfQotCi0gICAg
ICAgIGZ1bmN0aW9uIGJyZWFrcG9pbnRDbGlja2VkKCkKLSAgICAgICAgewotICAgICAgICAgICAg
V2ViSW5zcGVjdG9yLnBhbmVscy5zY3JpcHRzLnNob3dTb3VyY2VMaW5lKGJyZWFrcG9pbnQudXJs
LCBicmVha3BvaW50LmxpbmUpOworICAgICAgICB0aGlzLmxpc3RFbGVtZW50LnJlbW92ZUNoaWxk
KGV2ZW50LnRhcmdldC5lbGVtZW50KCkpOworICAgICAgICBpZiAoIXRoaXMubGlzdEVsZW1lbnQu
Zmlyc3RDaGlsZCkgeworICAgICAgICAgICAgdGhpcy5ib2R5RWxlbWVudC5yZW1vdmVDaGlsZCh0
aGlzLmxpc3RFbGVtZW50KTsKKyAgICAgICAgICAgIHRoaXMuYm9keUVsZW1lbnQuYXBwZW5kQ2hp
bGQodGhpcy5lbXB0eUVsZW1lbnQpOwogICAgICAgICB9CisgICAgfQorfQogCi0gICAgICAgIHZh
ciBicmVha3BvaW50RWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImxpIik7Ci0gICAg
ICAgIGJyZWFrcG9pbnQuX2JyZWFrcG9pbnRMaXN0RWxlbWVudCA9IGJyZWFrcG9pbnRFbGVtZW50
OwotICAgICAgICBicmVha3BvaW50RWxlbWVudC5fYnJlYWtwb2ludE9iamVjdCA9IGJyZWFrcG9p
bnQ7Ci0gICAgICAgIGJyZWFrcG9pbnRFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwg
YnJlYWtwb2ludENsaWNrZWQsIGZhbHNlKTsKLQotICAgICAgICB2YXIgY2hlY2tib3hFbGVtZW50
ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW5wdXQiKTsKLSAgICAgICAgY2hlY2tib3hFbGVt
ZW50LmNsYXNzTmFtZSA9ICJjaGVja2JveC1lbGVtIjsKLSAgICAgICAgY2hlY2tib3hFbGVtZW50
LnR5cGUgPSAiY2hlY2tib3giOwotICAgICAgICBjaGVja2JveEVsZW1lbnQuY2hlY2tlZCA9IGJy
ZWFrcG9pbnQuZW5hYmxlZDsKLSAgICAgICAgY2hlY2tib3hFbGVtZW50LmFkZEV2ZW50TGlzdGVu
ZXIoImNsaWNrIiwgY2hlY2tib3hDbGlja2VkLCBmYWxzZSk7Ci0gICAgICAgIGJyZWFrcG9pbnRF
bGVtZW50LmFwcGVuZENoaWxkKGNoZWNrYm94RWxlbWVudCk7Ci0KLSAgICAgICAgdmFyIGxhYmVs
RWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGJyZWFrcG9pbnQubGFiZWwpOwotICAg
ICAgICBicmVha3BvaW50RWxlbWVudC5hcHBlbmRDaGlsZChsYWJlbEVsZW1lbnQpOworV2ViSW5z
cGVjdG9yLkJyZWFrcG9pbnRzU2lkZWJhclBhbmUucHJvdG90eXBlLl9fcHJvdG9fXyA9IFdlYklu
c3BlY3Rvci5TaWRlYmFyUGFuZS5wcm90b3R5cGU7CiAKLSAgICAgICAgdmFyIHNvdXJjZVRleHRF
bGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7Ci0gICAgICAgIHNvdXJjZVRl
eHRFbGVtZW50LnRleHRDb250ZW50ID0gYnJlYWtwb2ludC5zb3VyY2VUZXh0OwotICAgICAgICBz
b3VyY2VUZXh0RWxlbWVudC5jbGFzc05hbWUgPSAic291cmNlLXRleHQgbW9ub3NwYWNlIjsKLSAg
ICAgICAgYnJlYWtwb2ludEVsZW1lbnQuYXBwZW5kQ2hpbGQoc291cmNlVGV4dEVsZW1lbnQpOwor
V2ViSW5zcGVjdG9yLkpTQnJlYWtwb2ludEl0ZW0gPSBmdW5jdGlvbihicmVha3BvaW50KQorewor
ICAgIHRoaXMuX2JyZWFrcG9pbnQgPSBicmVha3BvaW50OworCisgICAgdGhpcy5fZWxlbWVudCA9
IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImxpIik7CisgICAgdGhpcy5fZWxlbWVudC5hZGRFdmVu
dExpc3RlbmVyKCJjbGljayIsIHRoaXMuX2JyZWFrcG9pbnRDbGlja2VkLmJpbmQodGhpcyksIGZh
bHNlKTsKKworICAgIHZhciBjaGVja2JveEVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50
KCJpbnB1dCIpOworICAgIGNoZWNrYm94RWxlbWVudC5jbGFzc05hbWUgPSAiY2hlY2tib3gtZWxl
bSI7CisgICAgY2hlY2tib3hFbGVtZW50LnR5cGUgPSAiY2hlY2tib3giOworICAgIGNoZWNrYm94
RWxlbWVudC5jaGVja2VkID0gdGhpcy5fYnJlYWtwb2ludC5lbmFibGVkOworICAgIGNoZWNrYm94
RWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsIHRoaXMuX2NoZWNrYm94Q2xpY2tlZC5i
aW5kKHRoaXMpLCBmYWxzZSk7CisgICAgdGhpcy5fZWxlbWVudC5hcHBlbmRDaGlsZChjaGVja2Jv
eEVsZW1lbnQpOworCisgICAgdmFyIGRpc3BsYXlOYW1lID0gdGhpcy5fYnJlYWtwb2ludC51cmwg
PyBXZWJJbnNwZWN0b3IuZGlzcGxheU5hbWVGb3JVUkwodGhpcy5fYnJlYWtwb2ludC51cmwpIDog
V2ViSW5zcGVjdG9yLlVJU3RyaW5nKCIocHJvZ3JhbSkiKTsKKyAgICB2YXIgbGFiZWxFbGVtZW50
ID0gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoZGlzcGxheU5hbWUgKyAiOiIgKyB0aGlzLl9icmVh
a3BvaW50LmxpbmUpOworICAgIHRoaXMuX2VsZW1lbnQuYXBwZW5kQ2hpbGQobGFiZWxFbGVtZW50
KTsKKworICAgIHZhciBzb3VyY2VUZXh0RWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
ImRpdiIpOworICAgIHNvdXJjZVRleHRFbGVtZW50LnRleHRDb250ZW50ID0gdGhpcy5fYnJlYWtw
b2ludC5zb3VyY2VUZXh0OworICAgIHNvdXJjZVRleHRFbGVtZW50LmNsYXNzTmFtZSA9ICJzb3Vy
Y2UtdGV4dCBtb25vc3BhY2UiOworICAgIHRoaXMuX2VsZW1lbnQuYXBwZW5kQ2hpbGQoc291cmNl
VGV4dEVsZW1lbnQpOworCisgICAgdGhpcy5fYnJlYWtwb2ludC5hZGRFdmVudExpc3RlbmVyKCJl
bmFibGVkIiwgdGhpcy5fZW5hYmxlQ2hhbmdlZCwgdGhpcyk7CisgICAgdGhpcy5fYnJlYWtwb2lu
dC5hZGRFdmVudExpc3RlbmVyKCJkaXNhYmxlZCIsIHRoaXMuX2VuYWJsZUNoYW5nZWQsIHRoaXMp
OworICAgIHRoaXMuX2JyZWFrcG9pbnQuYWRkRXZlbnRMaXN0ZW5lcigidGV4dC1jaGFuZ2VkIiwg
dGhpcy5fdGV4dENoYW5nZWQsIHRoaXMpOworICAgIHRoaXMuX2JyZWFrcG9pbnQuYWRkRXZlbnRM
aXN0ZW5lcigicmVtb3ZlZCIsIHRoaXMuX3JlbW92ZWQsIHRoaXMpOworfQogCi0gICAgICAgIHZh
ciBjdXJyZW50RWxlbWVudCA9IHRoaXMubGlzdEVsZW1lbnQuZmlyc3RDaGlsZDsKLSAgICAgICAg
d2hpbGUgKGN1cnJlbnRFbGVtZW50KSB7Ci0gICAgICAgICAgICB2YXIgY3VycmVudEJyZWFrID0g
Y3VycmVudEVsZW1lbnQuX2JyZWFrcG9pbnRPYmplY3Q7Ci0gICAgICAgICAgICBpZiAoY3VycmVu
dEJyZWFrLnVybCA+IGJyZWFrcG9pbnQudXJsKSB7Ci0gICAgICAgICAgICAgICAgdGhpcy5saXN0
RWxlbWVudC5pbnNlcnRCZWZvcmUoYnJlYWtwb2ludEVsZW1lbnQsIGN1cnJlbnRFbGVtZW50KTsK
LSAgICAgICAgICAgICAgICByZXR1cm47Ci0gICAgICAgICAgICB9IGVsc2UgaWYgKGN1cnJlbnRC
cmVhay51cmwgPT0gYnJlYWtwb2ludC51cmwgJiYgY3VycmVudEJyZWFrLmxpbmUgPiBicmVha3Bv
aW50LmxpbmUpIHsKLSAgICAgICAgICAgICAgICB0aGlzLmxpc3RFbGVtZW50Lmluc2VydEJlZm9y
ZShicmVha3BvaW50RWxlbWVudCwgY3VycmVudEVsZW1lbnQpOwotICAgICAgICAgICAgICAgIHJl
dHVybjsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGN1cnJlbnRFbGVtZW50ID0gY3VycmVu
dEVsZW1lbnQubmV4dFNpYmxpbmc7Ci0gICAgICAgIH0KLSAgICAgICAgdGhpcy5saXN0RWxlbWVu
dC5hcHBlbmRDaGlsZChicmVha3BvaW50RWxlbWVudCk7CitXZWJJbnNwZWN0b3IuSlNCcmVha3Bv
aW50SXRlbS5wcm90b3R5cGUgPSB7CisgICAgY29tcGFyZVRvOiBmdW5jdGlvbihvdGhlcikKKyAg
ICB7CisgICAgICAgIGlmICh0aGlzLl9icmVha3BvaW50LnVybCAhPSBvdGhlci5fYnJlYWtwb2lu
dC51cmwpCisgICAgICAgICAgICByZXR1cm4gdGhpcy5fYnJlYWtwb2ludC51cmwgPCBvdGhlci5f
YnJlYWtwb2ludC51cmwgPyAtMSA6IDE7CisgICAgICAgIGlmICh0aGlzLl9icmVha3BvaW50Lmxp
bmUgIT0gb3RoZXIuX2JyZWFrcG9pbnQubGluZSkKKyAgICAgICAgICAgIHJldHVybiB0aGlzLl9i
cmVha3BvaW50LmxpbmUgPCBvdGhlci5fYnJlYWtwb2ludC5saW5lID8gLTEgOiAxOworICAgICAg
ICByZXR1cm4gMDsKICAgICB9LAogCi0gICAgX2JyZWFrcG9pbnRSZW1vdmVkOiBmdW5jdGlvbihl
dmVudCkKKyAgICBlbGVtZW50OiBmdW5jdGlvbigpCiAgICAgewotICAgICAgICB2YXIgYnJlYWtw
b2ludCA9IGV2ZW50LmRhdGE7CisgICAgICAgIHJldHVybiB0aGlzLl9lbGVtZW50OworICAgIH0s
CiAKLSAgICAgICAgYnJlYWtwb2ludC5yZW1vdmVFdmVudExpc3RlbmVyKCJlbmFibGVkIiwgbnVs
bCwgdGhpcyk7Ci0gICAgICAgIGJyZWFrcG9pbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZGlzYWJs
ZWQiLCBudWxsLCB0aGlzKTsKLSAgICAgICAgYnJlYWtwb2ludC5yZW1vdmVFdmVudExpc3RlbmVy
KCJ0ZXh0LWNoYW5nZWQiLCBudWxsLCB0aGlzKTsKKyAgICBfYnJlYWtwb2ludENsaWNrZWQ6IGZ1
bmN0aW9uKCkKKyAgICB7CisgICAgICAgIFdlYkluc3BlY3Rvci5wYW5lbHMuc2NyaXB0cy5zaG93
U291cmNlTGluZSh0aGlzLl9icmVha3BvaW50LnVybCwgdGhpcy5fYnJlYWtwb2ludC5saW5lKTsK
KyAgICB9LAogCi0gICAgICAgIHZhciBlbGVtZW50ID0gYnJlYWtwb2ludC5fYnJlYWtwb2ludExp
c3RFbGVtZW50OwotICAgICAgICBlbGVtZW50LnBhcmVudEVsZW1lbnQucmVtb3ZlQ2hpbGQoZWxl
bWVudCk7CisgICAgX2NoZWNrYm94Q2xpY2tlZDogZnVuY3Rpb24oZXZlbnQpCisgICAgeworICAg
ICAgICB0aGlzLl9icmVha3BvaW50LmVuYWJsZWQgPSAhdGhpcy5fYnJlYWtwb2ludC5lbmFibGVk
OwogCi0gICAgICAgIGlmICghdGhpcy5saXN0RWxlbWVudC5maXJzdENoaWxkKSB7Ci0gICAgICAg
ICAgICB0aGlzLmJvZHlFbGVtZW50LnJlbW92ZUNoaWxkKHRoaXMubGlzdEVsZW1lbnQpOwotICAg
ICAgICAgICAgdGhpcy5ib2R5RWxlbWVudC5hcHBlbmRDaGlsZCh0aGlzLmVtcHR5RWxlbWVudCk7
Ci0gICAgICAgIH0KKyAgICAgICAgLy8gd2l0aG91dCB0aGlzLCB3ZSdkIHN3aXRjaCB0byB0aGUg
c291cmNlIG9mIHRoZSBjbGlja2VkIGJyZWFrcG9pbnQKKyAgICAgICAgZXZlbnQuc3RvcFByb3Bh
Z2F0aW9uKCk7CiAgICAgfSwKIAotICAgIF9icmVha3BvaW50RW5hYmxlQ2hhbmdlZDogZnVuY3Rp
b24oZXZlbnQpCisgICAgX2VuYWJsZUNoYW5nZWQ6IGZ1bmN0aW9uKCkKICAgICB7Ci0gICAgICAg
IHZhciBicmVha3BvaW50ID0gZXZlbnQudGFyZ2V0OwotCi0gICAgICAgIHZhciBjaGVja2JveCA9
IGJyZWFrcG9pbnQuX2JyZWFrcG9pbnRMaXN0RWxlbWVudC5maXJzdENoaWxkOwotICAgICAgICBj
aGVja2JveC5jaGVja2VkID0gYnJlYWtwb2ludC5lbmFibGVkOworICAgICAgICB2YXIgY2hlY2ti
b3ggPSB0aGlzLl9lbGVtZW50LmZpcnN0Q2hpbGQ7CisgICAgICAgIGNoZWNrYm94LmNoZWNrZWQg
PSB0aGlzLl9icmVha3BvaW50LmVuYWJsZWQ7CiAgICAgfSwKIAotICAgIF9icmVha3BvaW50VGV4
dENoYW5nZWQ6IGZ1bmN0aW9uKGV2ZW50KQorICAgIF90ZXh0Q2hhbmdlZDogZnVuY3Rpb24oKQog
ICAgIHsKLSAgICAgICAgdmFyIGJyZWFrcG9pbnQgPSBldmVudC50YXJnZXQ7CisgICAgICAgIHZh
ciBzb3VyY2VUZXh0RWxlbWVudCA9IHRoaXMuX2VsZW1lbnQuZmlyc3RDaGlsZC5uZXh0U2libGlu
Zy5uZXh0U2libGluZzsKKyAgICAgICAgc291cmNlVGV4dEVsZW1lbnQudGV4dENvbnRlbnQgPSB0
aGlzLl9icmVha3BvaW50LnNvdXJjZVRleHQ7CisgICAgfSwKIAotICAgICAgICB2YXIgc291cmNl
VGV4dEVsZW1lbnQgPSBicmVha3BvaW50Ll9icmVha3BvaW50TGlzdEVsZW1lbnQuZmlyc3RDaGls
ZC5uZXh0U2libGluZy5uZXh0U2libGluZzsKLSAgICAgICAgc291cmNlVGV4dEVsZW1lbnQudGV4
dENvbnRlbnQgPSBicmVha3BvaW50LnNvdXJjZVRleHQ7CisgICAgX3JlbW92ZWQ6IGZ1bmN0aW9u
KCkKKyAgICB7CisgICAgICAgIHRoaXMuZGlzcGF0Y2hFdmVudFRvTGlzdGVuZXJzKCJyZW1vdmVk
Iik7CiAgICAgfQogfQogCi1XZWJJbnNwZWN0b3IuQnJlYWtwb2ludHNTaWRlYmFyUGFuZS5wcm90
b3R5cGUuX19wcm90b19fID0gV2ViSW5zcGVjdG9yLlNpZGViYXJQYW5lLnByb3RvdHlwZTsKK1dl
Ykluc3BlY3Rvci5KU0JyZWFrcG9pbnRJdGVtLnByb3RvdHlwZS5fX3Byb3RvX18gPSBXZWJJbnNw
ZWN0b3IuT2JqZWN0LnByb3RvdHlwZTsKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYg
LS1naXQgYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0c1BhbmVsLmpzIGIvV2Vi
Q29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NjcmlwdHNQYW5lbC5qcwppbmRleCA4Njc1Zjc5Li5m
YWVkN2M2IDEwMDY0NAotLS0gYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0c1Bh
bmVsLmpzCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHRzUGFuZWwuanMK
QEAgLTE3MSw3ICsxNzEsNiBAQCBXZWJJbnNwZWN0b3IuU2NyaXB0c1BhbmVsID0gZnVuY3Rpb24o
KQogICAgIHRoaXMuX2RlYnVnZ2VyRW5hYmxlZCA9IFByZWZlcmVuY2VzLmRlYnVnZ2VyQWx3YXlz
RW5hYmxlZDsKIAogICAgIFdlYkluc3BlY3Rvci5icmVha3BvaW50TWFuYWdlci5hZGRFdmVudExp
c3RlbmVyKCJicmVha3BvaW50LWFkZGVkIiwgdGhpcy5fYnJlYWtwb2ludEFkZGVkLCB0aGlzKTsK
LSAgICBXZWJJbnNwZWN0b3IuYnJlYWtwb2ludE1hbmFnZXIuYWRkRXZlbnRMaXN0ZW5lcigiYnJl
YWtwb2ludC1yZW1vdmVkIiwgdGhpcy5fYnJlYWtwb2ludFJlbW92ZWQsIHRoaXMpOwogCiAgICAg
dGhpcy5yZXNldCgpOwogfQpAQCAtMjk2LDYgKzI5NSw5IEBAIFdlYkluc3BlY3Rvci5TY3JpcHRz
UGFuZWwucHJvdG90eXBlID0gewogICAgIHsKICAgICAgICAgdmFyIGJyZWFrcG9pbnQgPSBldmVu
dC5kYXRhOwogCisgICAgICAgIGJyZWFrcG9pbnQuYWRkRXZlbnRMaXN0ZW5lcigicmVtb3ZlZCIs
IHRoaXMuX2JyZWFrcG9pbnRSZW1vdmVkLCB0aGlzKTsKKyAgICAgICAgdGhpcy5zaWRlYmFyUGFu
ZXMuYnJlYWtwb2ludHMuYWRkQnJlYWtwb2ludChuZXcgV2ViSW5zcGVjdG9yLkpTQnJlYWtwb2lu
dEl0ZW0oZXZlbnQuZGF0YSkpOworCiAgICAgICAgIHZhciBzb3VyY2VGcmFtZTsKICAgICAgICAg
aWYgKGJyZWFrcG9pbnQudXJsKSB7CiAgICAgICAgICAgICB2YXIgcmVzb3VyY2UgPSBXZWJJbnNw
ZWN0b3IucmVzb3VyY2VVUkxNYXBbYnJlYWtwb2ludC51cmxdOwpAQCAtMzE0LDcgKzMxNiw3IEBA
IFdlYkluc3BlY3Rvci5TY3JpcHRzUGFuZWwucHJvdG90eXBlID0gewogCiAgICAgX2JyZWFrcG9p
bnRSZW1vdmVkOiBmdW5jdGlvbihldmVudCkKICAgICB7Ci0gICAgICAgIHZhciBicmVha3BvaW50
ID0gZXZlbnQuZGF0YTsKKyAgICAgICAgdmFyIGJyZWFrcG9pbnQgPSBldmVudC50YXJnZXQ7CiAK
ICAgICAgICAgdmFyIHNvdXJjZUZyYW1lOwogICAgICAgICBpZiAoYnJlYWtwb2ludC51cmwpIHsK
ZGlmZiAtLWdpdCBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Tb3VyY2VGcmFtZS5qcyBi
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Tb3VyY2VGcmFtZS5qcwppbmRleCAwMWE4ZWMy
Li5iZDQ2YzYyIDEwMDY0NAotLS0gYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU291cmNl
RnJhbWUuanMKKysrIGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NvdXJjZUZyYW1lLmpz
CkBAIC05OSw5ICs5OSw2IEBAIFdlYkluc3BlY3Rvci5Tb3VyY2VGcmFtZS5wcm90b3R5cGUgPSB7
CiAgICAgYWRkQnJlYWtwb2ludDogZnVuY3Rpb24oYnJlYWtwb2ludCkKICAgICB7CiAgICAgICAg
IHRoaXMuYnJlYWtwb2ludHMucHVzaChicmVha3BvaW50KTsKLSAgICAgICAgYnJlYWtwb2ludC5h
ZGRFdmVudExpc3RlbmVyKCJlbmFibGVkIiwgdGhpcy5fYnJlYWtwb2ludENoYW5nZWQsIHRoaXMp
OwotICAgICAgICBicmVha3BvaW50LmFkZEV2ZW50TGlzdGVuZXIoImRpc2FibGVkIiwgdGhpcy5f
YnJlYWtwb2ludENoYW5nZWQsIHRoaXMpOwotICAgICAgICBicmVha3BvaW50LmFkZEV2ZW50TGlz
dGVuZXIoImNvbmRpdGlvbi1jaGFuZ2VkIiwgdGhpcy5fYnJlYWtwb2ludENoYW5nZWQsIHRoaXMp
OwogICAgICAgICBpZiAodGhpcy5fdGV4dFZpZXdlcikKICAgICAgICAgICAgIHRoaXMuX2FkZEJy
ZWFrcG9pbnRUb1NvdXJjZShicmVha3BvaW50KTsKICAgICB9LApAQCAtMzg0LDYgKzM4MSwxMCBA
QCBXZWJJbnNwZWN0b3IuU291cmNlRnJhbWUucHJvdG90eXBlID0gewogCiAgICAgX2FkZEJyZWFr
cG9pbnRUb1NvdXJjZTogZnVuY3Rpb24oYnJlYWtwb2ludCkKICAgICB7CisgICAgICAgIGJyZWFr
cG9pbnQuYWRkRXZlbnRMaXN0ZW5lcigiZW5hYmxlZCIsIHRoaXMuX2JyZWFrcG9pbnRDaGFuZ2Vk
LCB0aGlzKTsKKyAgICAgICAgYnJlYWtwb2ludC5hZGRFdmVudExpc3RlbmVyKCJkaXNhYmxlZCIs
IHRoaXMuX2JyZWFrcG9pbnRDaGFuZ2VkLCB0aGlzKTsKKyAgICAgICAgYnJlYWtwb2ludC5hZGRF
dmVudExpc3RlbmVyKCJjb25kaXRpb24tY2hhbmdlZCIsIHRoaXMuX2JyZWFrcG9pbnRDaGFuZ2Vk
LCB0aGlzKTsKKwogICAgICAgICB2YXIgbGluZU51bWJlciA9IGJyZWFrcG9pbnQubGluZSAtIDE7
CiAgICAgICAgIGlmIChsaW5lTnVtYmVyID49IHRoaXMuX3RleHRNb2RlbC5saW5lc0NvdW50KQog
ICAgICAgICAgICAgcmV0dXJuOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>