<?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>69339</bug_id>
          
          <creation_ts>2011-10-04 08:17:50 -0700</creation_ts>
          <short_desc>Web Inspector: compile text editor.</short_desc>
          <delta_ts>2011-10-04 09:11:09 -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="Pavel Feldman">pfeldman</reporter>
          <assigned_to name="Pavel Feldman">pfeldman</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>webkit.review.bot</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>477612</commentid>
    <comment_count>0</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2011-10-04 08:17:50 -0700</bug_when>
    <thetext>Patch to follow.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>477614</commentid>
    <comment_count>1</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2011-10-04 08:18:50 -0700</bug_when>
    <thetext>Drive-by compilation for color, database and dom storage entities.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>477626</commentid>
    <comment_count>2</comment_count>
      <attachid>109626</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2011-10-04 08:50:26 -0700</bug_when>
    <thetext>Created attachment 109626
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>477632</commentid>
    <comment_count>3</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2011-10-04 09:11:09 -0700</bug_when>
    <thetext>Committed r96597: &lt;http://trac.webkit.org/changeset/96597&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>109626</attachid>
            <date>2011-10-04 08:50:26 -0700</date>
            <delta_ts>2011-10-04 08:59:12 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-69339-20111004195024.patch</filename>
            <type>text/plain</type>
            <size>27502</size>
            <attacher name="Pavel Feldman">pfeldman</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTY1OTEKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAxNjJmZGFmODMyODkzNjlj
MGVkYmNkNzBjNjJlZGUyMjY0ZWM3ZDgxLi41ZDRiN2ZhOTBjNzg5MjExNWRjZGQ2ZTA3YzQxMDhj
NTkzMGMyZGRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTMgQEAKKzIwMTEtMTAtMDQgIFBhdmVs
IEZlbGRtYW4gIDxwZmVsZG1hbkBnb29nbGUuY29tPgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6
IGNvbXBpbGUgdGV4dCBlZGl0b3IuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD02OTMzOQorCisgICAgICAgIERyaXZlLWJ5IGNvbXBpbGF0aW9uIGZvciBj
b2xvciwgZGF0YWJhc2UgYW5kIGRvbSBzdG9yYWdlIGVudGl0aWVzLgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3Rvci5q
c29uOgorICAgICAgICAqIGluc3BlY3Rvci9jb21waWxlLWZyb250LWVuZC5zaDoKKyAgICAgICAg
KiBpbnNwZWN0b3IvZnJvbnQtZW5kL0NvbG9yLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkNv
bG9yLnByb3RvdHlwZS5faW5kaXZpZHVhbFJHQlZhbHVlVG9GbG9hdFZhbHVlKToKKyAgICAgICAg
KiBpbnNwZWN0b3IvZnJvbnQtZW5kL0tleWJvYXJkU2hvcnRjdXQuanM6CisgICAgICAgIChXZWJJ
bnNwZWN0b3IuS2V5Ym9hcmRTaG9ydGN1dC5tYWtlS2V5KToKKyAgICAgICAgKFdlYkluc3BlY3Rv
ci5LZXlib2FyZFNob3J0Y3V0Lm1ha2VLZXlGcm9tRXZlbnQpOgorICAgICAgICAoV2ViSW5zcGVj
dG9yLktleWJvYXJkU2hvcnRjdXQubWFrZURlc2NyaXB0b3IpOgorICAgICAgICAqIGluc3BlY3Rv
ci9mcm9udC1lbmQvU291cmNlQ1NTVG9rZW5pemVyLmpzOgorICAgICAgICAqIGluc3BlY3Rvci9m
cm9udC1lbmQvU291cmNlQ1NTVG9rZW5pemVyLnJlMmpzOgorICAgICAgICAqIGluc3BlY3Rvci9m
cm9udC1lbmQvU291cmNlSFRNTFRva2VuaXplci5qczoKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJv
bnQtZW5kL1NvdXJjZUhUTUxUb2tlbml6ZXIucmUyanM6CisgICAgICAgICogaW5zcGVjdG9yL2Zy
b250LWVuZC9Tb3VyY2VKYXZhU2NyaXB0VG9rZW5pemVyLmpzOgorICAgICAgICAqIGluc3BlY3Rv
ci9mcm9udC1lbmQvU291cmNlSmF2YVNjcmlwdFRva2VuaXplci5yZTJqczoKKyAgICAgICAgKiBp
bnNwZWN0b3IvZnJvbnQtZW5kL1NvdXJjZVRva2VuaXplci5qczoKKyAgICAgICAgKFdlYkluc3Bl
Y3Rvci5Tb3VyY2VUb2tlbml6ZXIucHJvdG90eXBlLl9jaGFyQXQpOgorICAgICAgICAoV2ViSW5z
cGVjdG9yLlNvdXJjZVRva2VuaXplci5wcm90b3R5cGUuY3JlYXRlSW5pdGlhbENvbmRpdGlvbik6
CisgICAgICAgIChXZWJJbnNwZWN0b3IuU291cmNlVG9rZW5pemVyLnByb3RvdHlwZS5uZXh0VG9r
ZW4pOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvVGV4dEVkaXRvckhpZ2hsaWdodGVy
LmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlRleHRFZGl0b3JIaWdobGlnaHRlci5wcm90b3R5
cGUuaGlnaGxpZ2h0KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UZXh0RWRpdG9ySGlnaGxpZ2h0
ZXIucHJvdG90eXBlLl9oaWdobGlnaHRMaW5lcyk6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250
LWVuZC9UZXh0RWRpdG9yTW9kZWwuanM6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9U
ZXh0Vmlld2VyLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlRleHRWaWV3ZXJEZWxlZ2F0ZS5w
cm90b3R5cGUuZG91YmxlQ2xpY2spOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlRleHRWaWV3ZXJE
ZWxlZ2F0ZS5wcm90b3R5cGUuYmVmb3JlVGV4dENoYW5nZWQpOgorICAgICAgICAoV2ViSW5zcGVj
dG9yLlRleHRWaWV3ZXJEZWxlZ2F0ZS5wcm90b3R5cGUuYWZ0ZXJUZXh0Q2hhbmdlZCk6CisgICAg
ICAgIChXZWJJbnNwZWN0b3IuVGV4dFZpZXdlckRlbGVnYXRlLnByb3RvdHlwZS5jb21taXRFZGl0
aW5nKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UZXh0Vmlld2VyRGVsZWdhdGUucHJvdG90eXBl
LmNhbmNlbEVkaXRpbmcpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlRleHRWaWV3ZXJEZWxlZ2F0
ZS5wcm90b3R5cGUucG9wdWxhdGVMaW5lR3V0dGVyQ29udGV4dE1lbnUpOgorICAgICAgICAoV2Vi
SW5zcGVjdG9yLlRleHRWaWV3ZXJEZWxlZ2F0ZS5wcm90b3R5cGUucG9wdWxhdGVUZXh0QXJlYUNv
bnRleHRNZW51KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UZXh0Vmlld2VyRGVsZWdhdGUucHJv
dG90eXBlLnN1Z2dlc3RlZEZpbGVOYW1lKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UZXh0RWRp
dG9yTWFpblBhbmVsLnByb3RvdHlwZS5fZW5jbG9zaW5nTGluZVJvd09yU2VsZik6CisgICAgICAg
IChXZWJJbnNwZWN0b3IuVGV4dEVkaXRvck1haW5QYW5lbC5wcm90b3R5cGUuX2NyZWF0ZUxpbmsp
OgorICAgICAgICAoV2ViSW5zcGVjdG9yLlRleHRFZGl0b3JNYWluUGFuZWwucHJvdG90eXBlLl9h
cHBseURvbVVwZGF0ZXMpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlRleHRFZGl0b3JNYWluUGFu
ZWwucHJvdG90eXBlLl91cGRhdGVDaHVua3NGb3JSYW5nZXMpOgorICAgICAgICAqIGluc3BlY3Rv
ci9mcm9udC1lbmQvZXh0ZXJucy5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5jb21wbGV0ZVVS
TCk6CisgICAgICAgICh3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZSk6CisgICAgICAgIChFdmVudC5w
cm90b3R5cGUuaW5pdFdlYktpdFdoZWVsRXZlbnQpOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9u
dC1lbmQvdXRpbGl0aWVzLmpzOgorCiAyMDExLTEwLTA0ICBQYXZlbCBGZWxkbWFuICA8cGZlbGRt
YW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IG1ha2UgRGF0YUdyaWQg
Y29tcGlsZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvci5q
c29uIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvci5qc29uCmluZGV4IGNhZTA2
NzkyZmY2NTBhODY4YWUxMDAxYTM2MDY4NmU5OGQxM2I1YTguLjk2ZjFmM2ZmMjY5YjY5MDZlYzQ3
NWFhMjcxYzE2YjE3MjY2YjhmODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9JbnNwZWN0b3IuanNvbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9y
Lmpzb24KQEAgLTc2Myw3ICs3NjMsMTQgQEAKICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg
ICAiaWQiOiAiRGF0YWJhc2UiLAogICAgICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCi0g
ICAgICAgICAgICAgICAgImRlc2NyaXB0aW9uIjogIkRhdGFiYXNlIG9iamVjdC4iCisgICAgICAg
ICAgICAgICAgImRlc2NyaXB0aW9uIjogIkRhdGFiYXNlIG9iamVjdC4iLAorICAgICAgICAgICAg
ICAgICJoaWRkZW4iOiB0cnVlLAorICAgICAgICAgICAgICAgICJwcm9wZXJ0aWVzIjogWworICAg
ICAgICAgICAgICAgICAgICB7ICJuYW1lIjogImlkIiwgInR5cGUiOiAic3RyaW5nIiwgImRlc2Ny
aXB0aW9uIjogIkRhdGFiYXNlIElELiIgfSwKKyAgICAgICAgICAgICAgICAgICAgeyAibmFtZSI6
ICJkb21haW4iLCAidHlwZSI6ICJzdHJpbmciLCAiZGVzY3JpcHRpb24iOiAiRGF0YWJhc2UgZG9t
YWluLiIgfSwKKyAgICAgICAgICAgICAgICAgICAgeyAibmFtZSI6ICJuYW1lIiwgInR5cGUiOiAi
c3RyaW5nIiwgImRlc2NyaXB0aW9uIjogIkRhdGFiYXNlIG5hbWUuIiB9LAorICAgICAgICAgICAg
ICAgICAgICB7ICJuYW1lIjogInZlcnNpb24iLCAidHlwZSI6ICJzdHJpbmciLCAiZGVzY3JpcHRp
b24iOiAiRGF0YWJhc2UgdmVyc2lvbi4iIH0KKyAgICAgICAgICAgICAgICBdCiAgICAgICAgICAg
ICB9LAogICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICJpZCI6ICJFcnJvciIsCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvY29tcGlsZS1mcm9udC1lbmQuc2ggYi9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvY29tcGlsZS1mcm9udC1lbmQuc2gKaW5kZXggODJmMzIx
YmQyNWViYTJhZWQ1YWNkNmVhN2MwYmExYzVkZDNhYzdlYy4uNzFmZDkxYTI4NDczMTZkYmNmN2Uw
MzQwNWJhZjBhZDU1OGFmZTFkZCAxMDA3NTUKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L2NvbXBpbGUtZnJvbnQtZW5kLnNoCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9jb21w
aWxlLWZyb250LWVuZC5zaApAQCAtNDQsMTQgKzQ0LDE2IEBAIGphdmEgLWphciB+L2Nsb3N1cmUv
Y29tcGlsZXIuamFyIC0tY29tcGlsYXRpb25fbGV2ZWwgU0lNUExFX09QVElNSVpBVElPTlMgLS13
YXJuCiAgICAgICAgIC0tanMgU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9PYmpl
Y3QuanMgXAogICAgICAgICAtLWpzIFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQv
U2V0dGluZ3MuanMgXAogICAgICAgICAtLWpzIFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvVXNlck1ldHJpY3MuanMgXAotICAgIC0tbW9kdWxlIGpzbW9kdWxlX3NkazoxODpqc21v
ZHVsZV9jb21tb24gXAorICAgIC0tbW9kdWxlIGpzbW9kdWxlX3NkazoyMDpqc21vZHVsZV9jb21t
b24gXAogICAgICAgICAtLWpzIFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQ29t
cGlsZXJTb3VyY2VNYXBwaW5nLmpzIFwKICAgICAgICAgLS1qcyBTb3VyY2UvV2ViQ29yZS9pbnNw
ZWN0b3IvZnJvbnQtZW5kL0NvbXBpbGVyU291cmNlTWFwcGluZ1Byb3ZpZGVyLmpzIFwKICAgICAg
ICAgLS1qcyBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0NvbnNvbGVNb2RlbC5q
cyBcCiAgICAgICAgIC0tanMgU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Db250
ZW50UHJvdmlkZXJzLmpzIFwKICAgICAgICAgLS1qcyBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
ZnJvbnQtZW5kL0Nvb2tpZVBhcnNlci5qcyBcCiAgICAgICAgIC0tanMgU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL2Zyb250LWVuZC9CcmVha3BvaW50TWFuYWdlci5qcyBcCisgICAgICAgIC0tanMg
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9EYXRhYmFzZS5qcyBcCiAgICAgICAg
IC0tanMgU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9ET01BZ2VudC5qcyBcCisg
ICAgICAgIC0tanMgU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9ET01TdG9yYWdl
LmpzIFwKICAgICAgICAgLS1qcyBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0Rl
YnVnZ2VyTW9kZWwuanMgXAogICAgICAgICAtLWpzIFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9m
cm9udC1lbmQvRGVidWdnZXJQcmVzZW50YXRpb25Nb2RlbC5qcyBcCiAgICAgICAgIC0tanMgU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHQuanMgXApAQCAtNjMsOCArNjUs
OSBAQCBqYXZhIC1qYXIgfi9jbG9zdXJlL2NvbXBpbGVyLmphciAtLWNvbXBpbGF0aW9uX2xldmVs
IFNJTVBMRV9PUFRJTUlaQVRJT05TIC0td2FybgogICAgICAgICAtLWpzIFNvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9mcm9udC1lbmQvUmVzb3VyY2UuanMgXAogICAgICAgICAtLWpzIFNvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvTmV0d29ya01hbmFnZXIuanMgXAogICAgICAgICAt
LWpzIFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVUlTb3VyY2VDb2RlLmpzIFwK
LSAgICAtLW1vZHVsZSBqc21vZHVsZV91aToyMjpqc21vZHVsZV9jb21tb24gXAorICAgIC0tbW9k
dWxlIGpzbW9kdWxlX3VpOjI3OmpzbW9kdWxlX2NvbW1vbiBcCiAgICAgICAgIC0tanMgU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9DaGVja2JveC5qcyBcCisgICAgICAgIC0tanMg
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Db2xvci5qcyBcCiAgICAgICAgIC0t
anMgU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Db250ZXh0TWVudS5qcyBcCiAg
ICAgICAgIC0tanMgU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9EYXRhR3JpZC5q
cyBcCiAgICAgICAgIC0tanMgU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9EcmF3
ZXIuanMgXApAQCAtODAsOSArODMsMTMgQEAgamF2YSAtamFyIH4vY2xvc3VyZS9jb21waWxlci5q
YXIgLS1jb21waWxhdGlvbl9sZXZlbCBTSU1QTEVfT1BUSU1JWkFUSU9OUyAtLXdhcm4KICAgICAg
ICAgLS1qcyBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NpZGViYXJQYW5lLmpz
IFwKICAgICAgICAgLS1qcyBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Nob3J0
Y3V0c1NjcmVlbi5qcyBcCiAgICAgICAgIC0tanMgU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zy
b250LWVuZC9Tb2Z0Q29udGV4dE1lbnUuanMgXAorICAgICAgICAtLWpzIFNvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9mcm9udC1lbmQvU291cmNlVG9rZW5pemVyLmpzIFwKICAgICAgICAgLS1qcyBT
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1N0YXR1c0JhckJ1dHRvbi5qcyBcCiAg
ICAgICAgIC0tanMgU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UYWJiZWRQYW5l
LmpzIFwKKyAgICAgICAgLS1qcyBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Rl
eHRFZGl0b3JNb2RlbC5qcyBcCisgICAgICAgIC0tanMgU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L2Zyb250LWVuZC9UZXh0RWRpdG9ySGlnaGxpZ2h0ZXIuanMgXAogICAgICAgICAtLWpzIFNvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVGV4dFByb21wdC5qcyBcCisgICAgICAgIC0t
anMgU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UZXh0Vmlld2VyLmpzIFwKICAg
ICAgICAgLS1qcyBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Rvb2xiYXIuanMg
XAogICAgICAgICAtLWpzIFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVUlVdGls
cy5qcyBcCiAgICAgICAgIC0tanMgU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9W
aWV3LmpzIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQv
Q29sb3IuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0NvbG9yLmpzCmlu
ZGV4IGIwNTg2NzE0NWZjZWJiNWVhNGQ1MTkyY2Q3OWJmMTRlZTMwOGE3OGIuLjYyNTg4ZGY1Yjlh
NzUzZTYwZTZhYzBhMWI0OTUyOWE5YzFlYzUzNmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9mcm9udC1lbmQvQ29sb3IuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9Db2xvci5qcwpAQCAtMjcsMTIgKzI3LDE4IEBACiAgKiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgog
ICovCiAKKy8qKgorICogQGNvbnN0cnVjdG9yCisgKi8KIFdlYkluc3BlY3Rvci5Db2xvciA9IGZ1
bmN0aW9uKHN0cikKIHsKICAgICB0aGlzLnZhbHVlID0gc3RyOwogICAgIHRoaXMuX3BhcnNlKCk7
CiB9CiAKKy8qKgorICogQHBhcmFtIHtudW1iZXI9fSBhCisgKi8KIFdlYkluc3BlY3Rvci5Db2xv
ci5mcm9tUkdCQSA9IGZ1bmN0aW9uKHIsIGcsIGIsIGEpCiB7CiAgICAgcmV0dXJuIG5ldyBXZWJJ
bnNwZWN0b3IuQ29sb3IoInJnYmEoIiArIHIgKyAiLCIgKyBnICsgIiwiICsgYiArICIsIiArICh0
eXBlb2YgYSA9PT0gInVuZGVmaW5lZCIgPyAxIDogYSkgKyAiKSIpOwpAQCAtMjAxLDcgKzIwNyw3
IEBAIFdlYkluc3BlY3Rvci5Db2xvci5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICByZXR1cm4g
dGhpcy5fY2xhbXAocmdiVmFsdWUsIDAsIDI1NSk7CiAKICAgICAgICAgaWYgKHJnYlZhbHVlLmlu
ZGV4T2YoIiUiKSA9PT0gLTEpIHsKLSAgICAgICAgICAgIHZhciBpbnRWYWx1ZSA9IHBhcnNlSW50
KHJnYlZhbHVlKTsKKyAgICAgICAgICAgIHZhciBpbnRWYWx1ZSA9IHBhcnNlSW50KHJnYlZhbHVl
LCAxMCk7CiAgICAgICAgICAgICByZXR1cm4gdGhpcy5fY2xhbXAocmdiVmFsdWUsIDAsIDI1NSk7
CiAgICAgICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250
LWVuZC9LZXlib2FyZFNob3J0Y3V0LmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250
LWVuZC9LZXlib2FyZFNob3J0Y3V0LmpzCmluZGV4IGZjNGY5NzA2YTkyNWViNWIyZDYzOTgyMmNj
MzBkNzhkYTE0Y2E2ZTAuLmIxM2U4ZGE0NTVhNjFlOGIyNjViYWMwNDNhMjliZjllYmRlNThhMTkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvS2V5Ym9hcmRT
aG9ydGN1dC5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0tleWJv
YXJkU2hvcnRjdXQuanMKQEAgLTkzLDE3ICs5MywxNSBAQCBXZWJJbnNwZWN0b3IuS2V5Ym9hcmRT
aG9ydGN1dC5LZXlzID0gewogICogQ3JlYXRlcyBhIG51bWJlciBlbmNvZGluZyBrZXlDb2RlIGlu
IHRoZSBsb3dlciA4IGJpdHMgYW5kIG1vZGlmaWVycyBtYXNrIGluIHRoZSBoaWdoZXIgOCBiaXRz
LgogICogSXQgaXMgdXNlZnVsIGZvciBtYXRjaGluZyBwcmVzc2VkIGtleXMuCiAgKiBrZXlDb2Rl
IGlzIHRoZSBDb2RlIG9mIHRoZSBrZXksIG9yIGEgY2hhcmFjdGVyICJhLXoiIHdoaWNoIGlzIGNv
bnZlcnRlZCB0byBhIGtleUNvZGUgdmFsdWUuCi0gKiBvcHRNb2RpZmllcnMgaXMgYW4gT3B0aW9u
YWwgbGlzdCBvZiBtb2RpZmllcnMgcGFzc2VkIGFzIGFkZGl0aW9uYWwgcGFyYW1lcnRlcnMuCisg
KiBAcGFyYW0ge251bWJlcj19IG1vZGlmaWVycyBPcHRpb25hbCBsaXN0IG9mIG1vZGlmaWVycyBw
YXNzZWQgYXMgYWRkaXRpb25hbCBwYXJhbWVydGVycy4KICAqLwotV2ViSW5zcGVjdG9yLktleWJv
YXJkU2hvcnRjdXQubWFrZUtleSA9IGZ1bmN0aW9uKGtleUNvZGUsIG9wdE1vZGlmaWVycykKK1dl
Ykluc3BlY3Rvci5LZXlib2FyZFNob3J0Y3V0Lm1ha2VLZXkgPSBmdW5jdGlvbihrZXlDb2RlLCBt
b2RpZmllcnMpCiB7CiAgICAgaWYgKHR5cGVvZiBrZXlDb2RlID09PSAic3RyaW5nIikKICAgICAg
ICAga2V5Q29kZSA9IGtleUNvZGUuY2hhckNvZGVBdCgwKSAtIDMyOwotICAgIHZhciBtb2RpZmll
cnMgPSBXZWJJbnNwZWN0b3IuS2V5Ym9hcmRTaG9ydGN1dC5Nb2RpZmllcnMuTm9uZTsKLSAgICBm
b3IgKHZhciBpID0gMTsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7IGkrKykKLSAgICAgICAgbW9kaWZp
ZXJzIHw9IGFyZ3VtZW50c1tpXTsKKyAgICBtb2RpZmllcnMgPSBtb2RpZmllcnMgfHwgV2ViSW5z
cGVjdG9yLktleWJvYXJkU2hvcnRjdXQuTW9kaWZpZXJzLk5vbmU7CiAgICAgcmV0dXJuIFdlYklu
c3BlY3Rvci5LZXlib2FyZFNob3J0Y3V0Ll9tYWtlS2V5RnJvbUNvZGVBbmRNb2RpZmllcnMoa2V5
Q29kZSwgbW9kaWZpZXJzKTsKLX07Cit9CiAKIFdlYkluc3BlY3Rvci5LZXlib2FyZFNob3J0Y3V0
Lm1ha2VLZXlGcm9tRXZlbnQgPSBmdW5jdGlvbihrZXlib2FyZEV2ZW50KQogewpAQCAtMTE3LDE0
ICsxMTUsMTAgQEAgV2ViSW5zcGVjdG9yLktleWJvYXJkU2hvcnRjdXQubWFrZUtleUZyb21FdmVu
dCA9IGZ1bmN0aW9uKGtleWJvYXJkRXZlbnQpCiAgICAgaWYgKGtleWJvYXJkRXZlbnQubWV0YUtl
eSkKICAgICAgICAgbW9kaWZpZXJzIHw9IFdlYkluc3BlY3Rvci5LZXlib2FyZFNob3J0Y3V0Lk1v
ZGlmaWVycy5NZXRhOwogICAgIHJldHVybiBXZWJJbnNwZWN0b3IuS2V5Ym9hcmRTaG9ydGN1dC5f
bWFrZUtleUZyb21Db2RlQW5kTW9kaWZpZXJzKGtleWJvYXJkRXZlbnQua2V5Q29kZSwgbW9kaWZp
ZXJzKTsKLX07Cit9CiAKLVdlYkluc3BlY3Rvci5LZXlib2FyZFNob3J0Y3V0Lm1ha2VEZXNjcmlw
dG9yID0gZnVuY3Rpb24oa2V5LCBvcHRNb2RpZmllcnMpCitXZWJJbnNwZWN0b3IuS2V5Ym9hcmRT
aG9ydGN1dC5tYWtlRGVzY3JpcHRvciA9IGZ1bmN0aW9uKGtleSwgbW9kaWZpZXJzKQogewotICAg
IHZhciBtb2RpZmllcnMgPSAwOwotICAgIGZvciAodmFyIGkgPSAxOyBpIDwgYXJndW1lbnRzLmxl
bmd0aDsgaSsrKQotICAgICAgICBtb2RpZmllcnMgfD0gYXJndW1lbnRzW2ldOwotCiAgICAgcmV0
dXJuIHsKICAgICAgICAga2V5OiBXZWJJbnNwZWN0b3IuS2V5Ym9hcmRTaG9ydGN1dC5tYWtlS2V5
KHR5cGVvZiBrZXkgPT09ICJzdHJpbmciID8ga2V5IDoga2V5LmNvZGUsIG1vZGlmaWVycyksCiAg
ICAgICAgIG5hbWU6IFdlYkluc3BlY3Rvci5LZXlib2FyZFNob3J0Y3V0LnNob3J0Y3V0VG9TdHJp
bmcoa2V5LCBtb2RpZmllcnMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
ZnJvbnQtZW5kL1NvdXJjZUNTU1Rva2VuaXplci5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9mcm9udC1lbmQvU291cmNlQ1NTVG9rZW5pemVyLmpzCmluZGV4IDQyNWM4YzFjN2IxM2MzZDVh
NTY0MTE0MThlNWQzYTMzMWMwZWJlNDkuLmEwMDFlODNiZjEwODIwOGU5YjM5Y2M0OTUwYThhMzI1
NjhlMWRkZmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQv
U291cmNlQ1NTVG9rZW5pemVyLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvU291cmNlQ1NTVG9rZW5pemVyLmpzCkBAIC00MSw2ICs0MSwxMCBAQAogLy8gfCBzZWQg
J3N8dW5zaWduZWRcIGludHx2YXJ8JyBcCiAvLyB8IHNlZCAnc3x2YXJcIHl5Y2h8Y2FzZSAxOiBj
YXNlIDE6IHZhciB5eWNofCcKIAorLyoqCisgKiBAY29uc3RydWN0b3IKKyAqIEBleHRlbmRzIHtX
ZWJJbnNwZWN0b3IuU291cmNlVG9rZW5pemVyfQorICovCiBXZWJJbnNwZWN0b3IuU291cmNlQ1NT
VG9rZW5pemVyID0gZnVuY3Rpb24oKQogewogICAgIFdlYkluc3BlY3Rvci5Tb3VyY2VUb2tlbml6
ZXIuY2FsbCh0aGlzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvU291cmNlQ1NTVG9rZW5pemVyLnJlMmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L2Zyb250LWVuZC9Tb3VyY2VDU1NUb2tlbml6ZXIucmUyanMKaW5kZXggNDE0ZjcwZTQ2YWU5Mzhk
YThmNzcwMmI3YTg2N2U0NGU1MjRlMjA5OS4uMjU2NWU0OWJiZmQ5YWUwZDBkOGE4NWNlN2MxODY2
OGVlZDIxNGRhZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVu
ZC9Tb3VyY2VDU1NUb2tlbml6ZXIucmUyanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L2Zyb250LWVuZC9Tb3VyY2VDU1NUb2tlbml6ZXIucmUyanMKQEAgLTQwLDYgKzQwLDEwIEBACiAv
LyB8IHNlZCAnc3x1bnNpZ25lZFwgaW50fHZhcnwnIFwKIC8vIHwgc2VkICdzfHZhclwgeXljaHxj
YXNlIDE6IHZhciB5eWNofCcKIAorLyoqCisgKiBAY29uc3RydWN0b3IKKyAqIEBleHRlbmRzIHtX
ZWJJbnNwZWN0b3IuU291cmNlVG9rZW5pemVyfQorICovCiBXZWJJbnNwZWN0b3IuU291cmNlQ1NT
VG9rZW5pemVyID0gZnVuY3Rpb24oKQogewogICAgIFdlYkluc3BlY3Rvci5Tb3VyY2VUb2tlbml6
ZXIuY2FsbCh0aGlzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvU291cmNlSFRNTFRva2VuaXplci5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9m
cm9udC1lbmQvU291cmNlSFRNTFRva2VuaXplci5qcwppbmRleCBmNjljYmZjYzA2NjUzODlmODhl
YTdjZmNmZjUzZmE0NzUzZDAxOTg1Li41YWQzMzJhMTA0MzJhMTYyZWEzY2Q3NjM3OGZkYTFkMGJk
MTM1MjkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Nv
dXJjZUhUTUxUb2tlbml6ZXIuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250
LWVuZC9Tb3VyY2VIVE1MVG9rZW5pemVyLmpzCkBAIC00MSw2ICs0MSwxMCBAQAogLy8gfCBzZWQg
J3N8dW5zaWduZWRcIGludHx2YXJ8JyBcCiAvLyB8IHNlZCAnc3x2YXJcIHl5Y2h8Y2FzZSAxOiBj
YXNlIDE6IHZhciB5eWNofCcKIAorLyoqCisgKiBAY29uc3RydWN0b3IKKyAqIEBleHRlbmRzIHtX
ZWJJbnNwZWN0b3IuU291cmNlVG9rZW5pemVyfQorICovCiBXZWJJbnNwZWN0b3IuU291cmNlSFRN
TFRva2VuaXplciA9IGZ1bmN0aW9uKCkKIHsKICAgICBXZWJJbnNwZWN0b3IuU291cmNlVG9rZW5p
emVyLmNhbGwodGhpcyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL1NvdXJjZUhUTUxUb2tlbml6ZXIucmUyanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvZnJvbnQtZW5kL1NvdXJjZUhUTUxUb2tlbml6ZXIucmUyanMKaW5kZXggZWZkOTkwMGY2NzVm
ODEwZjEwMWJhMDExYmRmMGFhNTQzNTQ1Nzk5Ni4uNWQ1NTUwYmEwYWIzZjdlOWZhY2Y3YzVjYWIx
M2Y2NDkxZTlhNzY5ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250
LWVuZC9Tb3VyY2VIVE1MVG9rZW5pemVyLnJlMmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9mcm9udC1lbmQvU291cmNlSFRNTFRva2VuaXplci5yZTJqcwpAQCAtNDAsNiArNDAsMTAg
QEAKIC8vIHwgc2VkICdzfHVuc2lnbmVkXCBpbnR8dmFyfCcgXAogLy8gfCBzZWQgJ3N8dmFyXCB5
eWNofGNhc2UgMTogdmFyIHl5Y2h8JwogCisvKioKKyAqIEBjb25zdHJ1Y3RvcgorICogQGV4dGVu
ZHMge1dlYkluc3BlY3Rvci5Tb3VyY2VUb2tlbml6ZXJ9CisgKi8KIFdlYkluc3BlY3Rvci5Tb3Vy
Y2VIVE1MVG9rZW5pemVyID0gZnVuY3Rpb24oKQogewogICAgIFdlYkluc3BlY3Rvci5Tb3VyY2VU
b2tlbml6ZXIuY2FsbCh0aGlzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9mcm9udC1lbmQvU291cmNlSmF2YVNjcmlwdFRva2VuaXplci5qcyBiL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9mcm9udC1lbmQvU291cmNlSmF2YVNjcmlwdFRva2VuaXplci5qcwppbmRleCAx
MWNlZGM3YWQzODVjNGMwYzRmMDIxZGRkNWZhNWZhMDQ2NGNhM2QxLi4wNmNmOGY2N2M0ZDllNDk3
NjM5ZTU2ZjFmMTk1MTdlMDE1M2NjZmQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNw
ZWN0b3IvZnJvbnQtZW5kL1NvdXJjZUphdmFTY3JpcHRUb2tlbml6ZXIuanMKKysrIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Tb3VyY2VKYXZhU2NyaXB0VG9rZW5pemVyLmpz
CkBAIC00Miw2ICs0MiwxMCBAQAogLy8gfCBzZWQgJ3N8dW5zaWduZWRcIGludHx2YXJ8JyBcCiAv
LyB8IHNlZCAnc3x2YXJcIHl5Y2h8Y2FzZSAxOiBjYXNlIDE6IHZhciB5eWNofCcKIAorLyoqCisg
KiBAY29uc3RydWN0b3IKKyAqIEBleHRlbmRzIHtXZWJJbnNwZWN0b3IuU291cmNlVG9rZW5pemVy
fQorICovCiBXZWJJbnNwZWN0b3IuU291cmNlSmF2YVNjcmlwdFRva2VuaXplciA9IGZ1bmN0aW9u
KCkKIHsKICAgICBXZWJJbnNwZWN0b3IuU291cmNlVG9rZW5pemVyLmNhbGwodGhpcyk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NvdXJjZUphdmFTY3Jp
cHRUb2tlbml6ZXIucmUyanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Nv
dXJjZUphdmFTY3JpcHRUb2tlbml6ZXIucmUyanMKaW5kZXggYmE2NTU2YjMxYmY3YzU5NTc0YzNl
ZTUzNWEyN2JkZTZkMTFhY2Q5OS4uNjBiZjhjZmQxZWMwYzU2OTY2MjY0NjhiOWQ0OGJiNWY1NTll
MjMwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Tb3Vy
Y2VKYXZhU2NyaXB0VG9rZW5pemVyLnJlMmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9mcm9udC1lbmQvU291cmNlSmF2YVNjcmlwdFRva2VuaXplci5yZTJqcwpAQCAtNDEsNiArNDEs
MTAgQEAKIC8vIHwgc2VkICdzfHVuc2lnbmVkXCBpbnR8dmFyfCcgXAogLy8gfCBzZWQgJ3N8dmFy
XCB5eWNofGNhc2UgMTogdmFyIHl5Y2h8JwogCisvKioKKyAqIEBjb25zdHJ1Y3RvcgorICogQGV4
dGVuZHMge1dlYkluc3BlY3Rvci5Tb3VyY2VUb2tlbml6ZXJ9CisgKi8KIFdlYkluc3BlY3Rvci5T
b3VyY2VKYXZhU2NyaXB0VG9rZW5pemVyID0gZnVuY3Rpb24oKQogewogICAgIFdlYkluc3BlY3Rv
ci5Tb3VyY2VUb2tlbml6ZXIuY2FsbCh0aGlzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9mcm9udC1lbmQvU291cmNlVG9rZW5pemVyLmpzIGIvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL2Zyb250LWVuZC9Tb3VyY2VUb2tlbml6ZXIuanMKaW5kZXggZTc0YmU2MTQyZjk1
ZTQyNTJkZTJiZTdjZTJhYmU4ZWQ4OWNlYTQ5Yi4uN2E4YTZhY2ZiYjJiNjM4MzBlNzU0MmUyZGEy
MzNjMWMxNTU1Y2ViMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250
LWVuZC9Tb3VyY2VUb2tlbml6ZXIuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zy
b250LWVuZC9Tb3VyY2VUb2tlbml6ZXIuanMKQEAgLTI5LDYgKzI5LDkgQEAKICAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCiAgKi8KIAorLyoqCisgKiBAY29uc3RydWN0b3IKKyAqLwogV2ViSW5zcGVjdG9yLlNvdXJj
ZVRva2VuaXplciA9IGZ1bmN0aW9uKCkKIHsKIH0KQEAgLTYxLDEwICs2NCwyMCBAQCBXZWJJbnNw
ZWN0b3IuU291cmNlVG9rZW5pemVyLnByb3RvdHlwZSA9IHsKICAgICBfY2hhckF0OiBmdW5jdGlv
bihjdXJzb3IpCiAgICAgewogICAgICAgICByZXR1cm4gY3Vyc29yIDwgdGhpcy5fbGluZS5sZW5n
dGggPyB0aGlzLl9saW5lLmNoYXJBdChjdXJzb3IpIDogIlxuIjsKKyAgICB9LAorCisgICAgY3Jl
YXRlSW5pdGlhbENvbmRpdGlvbjogZnVuY3Rpb24oKQorICAgIHsKKyAgICB9LAorCisgICAgbmV4
dFRva2VuOiBmdW5jdGlvbihjdXJzb3IpCisgICAgewogICAgIH0KIH0KIAotCisvKioKKyAqIEBj
b25zdHJ1Y3RvcgorICovCiBXZWJJbnNwZWN0b3IuU291cmNlVG9rZW5pemVyLlJlZ2lzdHJ5ID0g
ZnVuY3Rpb24oKSB7CiAgICAgdGhpcy5fdG9rZW5pemVycyA9IHt9OwogICAgIHRoaXMuX3Rva2Vu
aXplckNvbnN0cnVjdG9ycyA9IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9mcm9udC1lbmQvVGV4dEVkaXRvckhpZ2hsaWdodGVyLmpzIGIvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL2Zyb250LWVuZC9UZXh0RWRpdG9ySGlnaGxpZ2h0ZXIuanMKaW5kZXggZTUyZjg3ODI3
YzcwZTg2MWJkNjlhNzFlZTExOWNkMjRhNDM1YjYyMy4uMDhhYzJmM2NhMzNlM2M3YzdmYjE0YTM2
YTZjNWNjMDY2OTU0NWI3MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zy
b250LWVuZC9UZXh0RWRpdG9ySGlnaGxpZ2h0ZXIuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL2Zyb250LWVuZC9UZXh0RWRpdG9ySGlnaGxpZ2h0ZXIuanMKQEAgLTI5LDYgKzI5LDkg
QEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorLyoqCisgKiBAY29uc3RydWN0b3IKKyAqLwogV2Vi
SW5zcGVjdG9yLlRleHRFZGl0b3JIaWdobGlnaHRlciA9IGZ1bmN0aW9uKHRleHRNb2RlbCwgZGFt
YWdlQ2FsbGJhY2spCiB7CiAgICAgdGhpcy5fdGV4dE1vZGVsID0gdGV4dE1vZGVsOwpAQCAtNTAs
NyArNTMsMTAgQEAgV2ViSW5zcGVjdG9yLlRleHRFZGl0b3JIaWdobGlnaHRlci5wcm90b3R5cGUg
PSB7CiAgICAgICAgIHRoaXMuX2hpZ2hsaWdodENodW5rTGltaXQgPSBoaWdobGlnaHRDaHVua0xp
bWl0OwogICAgIH0sCiAKLSAgICBoaWdobGlnaHQ6IGZ1bmN0aW9uKGVuZExpbmUsIG9wdF9mb3Jj
ZVJ1bikKKyAgICAvKioKKyAgICAgKiBAcGFyYW0ge2Jvb2xlYW49fSBmb3JjZVJ1bgorICAgICAq
LworICAgIGhpZ2hsaWdodDogZnVuY3Rpb24oZW5kTGluZSwgZm9yY2VSdW4pCiAgICAgewogICAg
ICAgICAvLyBGaXJzdCBjaGVjayBpZiB3ZSBoYXZlIHdvcmsgdG8gZG8uCiAgICAgICAgIHZhciBz
dGF0ZSA9IHRoaXMuX3RleHRNb2RlbC5nZXRBdHRyaWJ1dGUoZW5kTGluZSAtIDEsICJoaWdobGln
aHQiKTsKQEAgLTYxLDcgKzY3LDcgQEAgV2ViSW5zcGVjdG9yLlRleHRFZGl0b3JIaWdobGlnaHRl
ci5wcm90b3R5cGUgPSB7CiAKICAgICAgICAgdGhpcy5fcmVxdWVzdGVkRW5kTGluZSA9IGVuZExp
bmU7CiAKLSAgICAgICAgaWYgKHRoaXMuX2hpZ2hsaWdodFRpbWVyICYmICFvcHRfZm9yY2VSdW4p
IHsKKyAgICAgICAgaWYgKHRoaXMuX2hpZ2hsaWdodFRpbWVyICYmICFmb3JjZVJ1bikgewogICAg
ICAgICAgICAgLy8gVGhlcmUgaXMgYSB0aW1lciBzY2hlZHVsZWQsIGl0IHdpbGwgY2F0Y2ggdGhl
IG5ldyBqb2IgYmFzZWQgb24gdGhlIG5ldyBlbmRMaW5lIHNldC4KICAgICAgICAgICAgIHJldHVy
bjsKICAgICAgICAgfQpAQCAtNjksNyArNzUsNyBAQCBXZWJJbnNwZWN0b3IuVGV4dEVkaXRvckhp
Z2hsaWdodGVyLnByb3RvdHlwZSA9IHsKICAgICAgICAgLy8gV2Ugd2lsbCBiZSBoaWdobGlnaHRp
bmcuIEZpcnN0IHJld2luZCB0byB0aGUgbGFzdCBoaWdobGlnaHRlZCBsaW5lIHRvIGdhaW4gcHJv
cGVyIGhpZ2hsaWdodGVyIGNvbnRleHQuCiAgICAgICAgIHZhciBzdGFydExpbmUgPSBlbmRMaW5l
OwogICAgICAgICB3aGlsZSAoc3RhcnRMaW5lID4gMCkgewotICAgICAgICAgICAgdmFyIHN0YXRl
ID0gdGhpcy5fdGV4dE1vZGVsLmdldEF0dHJpYnV0ZShzdGFydExpbmUgLSAxLCAiaGlnaGxpZ2h0
Iik7CisgICAgICAgICAgICBzdGF0ZSA9IHRoaXMuX3RleHRNb2RlbC5nZXRBdHRyaWJ1dGUoc3Rh
cnRMaW5lIC0gMSwgImhpZ2hsaWdodCIpOwogICAgICAgICAgICAgaWYgKHN0YXRlICYmIHN0YXRl
LnBvc3RDb25kaXRpb25TdHJpbmdpZmllZCkKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAg
ICAgICAgIHN0YXJ0TGluZS0tOwpAQCAtMTQ1LDcgKzE1MSw3IEBAIFdlYkluc3BlY3Rvci5UZXh0
RWRpdG9ySGlnaGxpZ2h0ZXIucHJvdG90eXBlID0gewogCiAgICAgICAgIHZhciB0b2tlbnNDb3Vu
dCA9IDA7CiAgICAgICAgIGZvciAodmFyIGxpbmVOdW1iZXIgPSBzdGFydExpbmU7IGxpbmVOdW1i
ZXIgPCBlbmRMaW5lOyArK2xpbmVOdW1iZXIpIHsKLSAgICAgICAgICAgIHZhciBzdGF0ZSA9IHRo
aXMuX3NlbGVjdEhpZ2hsaWdodFN0YXRlKGxpbmVOdW1iZXIsIHBvc3RDb25kaXRpb25TdHJpbmdp
ZmllZCk7CisgICAgICAgICAgICBzdGF0ZSA9IHRoaXMuX3NlbGVjdEhpZ2hsaWdodFN0YXRlKGxp
bmVOdW1iZXIsIHBvc3RDb25kaXRpb25TdHJpbmdpZmllZCk7CiAgICAgICAgICAgICBpZiAoc3Rh
dGUucG9zdENvbmRpdGlvblN0cmluZ2lmaWVkKSB7CiAgICAgICAgICAgICAgICAgLy8gVGhpcyBs
aW5lIGlzIGFscmVhZHkgaGlnaGxpZ2h0ZWQuCiAgICAgICAgICAgICAgICAgcG9zdENvbmRpdGlv
blN0cmluZ2lmaWVkID0gc3RhdGUucG9zdENvbmRpdGlvblN0cmluZ2lmaWVkOwpAQCAtMTkzLDcg
KzE5OSw3IEBAIFdlYkluc3BlY3Rvci5UZXh0RWRpdG9ySGlnaGxpZ2h0ZXIucHJvdG90eXBlID0g
ewogCiAgICAgICAgICAgICAgICAgLy8gQWR2YW5jZSB0aGUgInBvaW50ZXIiIHRvIHRoZSBsYXN0
IGhpZ2hsaWdodGVkIGxpbmUgd2l0aGluIHRoZSBnaXZlbiBjaHVuay4KICAgICAgICAgICAgICAg
ICBmb3IgKDsgbGluZU51bWJlciA8IGVuZExpbmU7ICsrbGluZU51bWJlcikgewotICAgICAgICAg
ICAgICAgICAgICB2YXIgc3RhdGUgPSB0aGlzLl90ZXh0TW9kZWwuZ2V0QXR0cmlidXRlKGxpbmVO
dW1iZXIsICJoaWdobGlnaHQiKTsKKyAgICAgICAgICAgICAgICAgICAgc3RhdGUgPSB0aGlzLl90
ZXh0TW9kZWwuZ2V0QXR0cmlidXRlKGxpbmVOdW1iZXIsICJoaWdobGlnaHQiKTsKICAgICAgICAg
ICAgICAgICAgICAgaWYgKCFzdGF0ZSB8fCAhc3RhdGUucG9zdENvbmRpdGlvblN0cmluZ2lmaWVk
KQogICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UZXh0RWRpdG9yTW9k
ZWwuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RleHRFZGl0b3JNb2Rl
bC5qcwppbmRleCA2YTA5MzQ2NzgzNTZkMDc4NWYwZDVmZTFiNGJjMjk5YWMzYWRlMDJhLi40NjBj
NDRlZWIyZDIyMjRmMjUwMWViN2JlN2NkNjI5Y2Y4MTY2ZmQyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RleHRFZGl0b3JNb2RlbC5qcworKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RleHRFZGl0b3JNb2RlbC5qcwpAQCAtMjgs
NiArMjgsOSBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCisvKioKKyAqIEBjb25zdHJ1Y3Rvcgor
ICovCiBXZWJJbnNwZWN0b3IuVGV4dFJhbmdlID0gZnVuY3Rpb24oc3RhcnRMaW5lLCBzdGFydENv
bHVtbiwgZW5kTGluZSwgZW5kQ29sdW1uKQogewogICAgIHRoaXMuc3RhcnRMaW5lID0gc3RhcnRM
aW5lOwpAQCAtNTMsNiArNTYsOSBAQCBXZWJJbnNwZWN0b3IuVGV4dFJhbmdlLnByb3RvdHlwZSA9
IHsKICAgICB9CiB9CiAKKy8qKgorICogQGNvbnN0cnVjdG9yCisgKi8KIFdlYkluc3BlY3Rvci5U
ZXh0RWRpdG9yTW9kZWwgPSBmdW5jdGlvbigpCiB7CiAgICAgdGhpcy5fbGluZXMgPSBbIiJdOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UZXh0Vmlld2Vy
LmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UZXh0Vmlld2VyLmpzCmlu
ZGV4IGMzOWZkNGVjNjJkN2UyMzZmZTliMjM3NmE4MTNlMzBjYmMyNWRkZTMuLjMyNWU2MzhjYjZi
ZWNmODYwODgxMDZmYjRlZGU2NzE0YTcxNTkwYmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9mcm9udC1lbmQvVGV4dFZpZXdlci5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvZnJvbnQtZW5kL1RleHRWaWV3ZXIuanMKQEAgLTI5LDYgKzI5LDEwIEBACiAgKiBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgogICovCiAKKy8qKgorICogQGV4dGVuZHMge1dlYkluc3BlY3Rvci5WaWV3fQor
ICogQGNvbnN0cnVjdG9yCisgKi8KIFdlYkluc3BlY3Rvci5UZXh0Vmlld2VyID0gZnVuY3Rpb24o
dGV4dE1vZGVsLCBwbGF0Zm9ybSwgdXJsLCBkZWxlZ2F0ZSkKIHsKICAgICBXZWJJbnNwZWN0b3Iu
Vmlldy5jYWxsKHRoaXMpOwpAQCAtMzIzLDU0ICszMjcsMzQgQEAgV2ViSW5zcGVjdG9yLlRleHRW
aWV3ZXIucHJvdG90eXBlID0gewogCiBXZWJJbnNwZWN0b3IuVGV4dFZpZXdlci5wcm90b3R5cGUu
X19wcm90b19fID0gV2ViSW5zcGVjdG9yLlZpZXcucHJvdG90eXBlOwogCisvKioKKyAqIEBpbnRl
cmZhY2UKKyAqLwogV2ViSW5zcGVjdG9yLlRleHRWaWV3ZXJEZWxlZ2F0ZSA9IGZ1bmN0aW9uKCkK
IHsKIH0KIAogV2ViSW5zcGVjdG9yLlRleHRWaWV3ZXJEZWxlZ2F0ZS5wcm90b3R5cGUgPSB7Ci0g
ICAgZG91YmxlQ2xpY2s6IGZ1bmN0aW9uKGxpbmVOdW1iZXIpCi0gICAgewotICAgICAgICAvLyBT
aG91bGQgYmUgaW1wbGVtZW50ZWQgYnkgc3ViY2xhc3Nlcy4KLSAgICB9LAorICAgIGRvdWJsZUNs
aWNrOiBmdW5jdGlvbihsaW5lTnVtYmVyKSB7IH0sCiAKLSAgICBiZWZvcmVUZXh0Q2hhbmdlZDog
ZnVuY3Rpb24oKQotICAgIHsKLSAgICAgICAgLy8gU2hvdWxkIGJlIGltcGxlbWVudGVkIGJ5IHN1
YmNsYXNzZXMuCi0gICAgfSwKKyAgICBiZWZvcmVUZXh0Q2hhbmdlZDogZnVuY3Rpb24oKSB7IH0s
CiAKLSAgICBhZnRlclRleHRDaGFuZ2VkOiBmdW5jdGlvbihvbGRSYW5nZSwgbmV3UmFuZ2UpCi0g
ICAgewotICAgICAgICAvLyBTaG91bGQgYmUgaW1wbGVtZW50ZWQgYnkgc3ViY2xhc3Nlcy4KLSAg
ICB9LAorICAgIGFmdGVyVGV4dENoYW5nZWQ6IGZ1bmN0aW9uKG9sZFJhbmdlLCBuZXdSYW5nZSkg
eyB9LAogCi0gICAgY29tbWl0RWRpdGluZzogZnVuY3Rpb24oKQotICAgIHsKLSAgICAgICAgLy8g
U2hvdWxkIGJlIGltcGxlbWVudGVkIGJ5IHN1YmNsYXNzZXMuCi0gICAgfSwKKyAgICBjb21taXRF
ZGl0aW5nOiBmdW5jdGlvbigpIHsgfSwKIAotICAgIGNhbmNlbEVkaXRpbmc6IGZ1bmN0aW9uKCkK
LSAgICB7Ci0gICAgICAgIC8vIFNob3VsZCBiZSBpbXBsZW1lbnRlZCBieSBzdWJjbGFzc2VzLgot
ICAgIH0sCisgICAgY2FuY2VsRWRpdGluZzogZnVuY3Rpb24oKSB7IH0sCiAKLSAgICBwb3B1bGF0
ZUxpbmVHdXR0ZXJDb250ZXh0TWVudTogZnVuY3Rpb24obGluZU51bWJlciwgY29udGV4dE1lbnUp
Ci0gICAgewotICAgICAgICAvLyBTaG91bGQgYmUgaW1wbGVtZW50ZWQgYnkgc3ViY2xhc3Nlcy4K
LSAgICB9LAorICAgIHBvcHVsYXRlTGluZUd1dHRlckNvbnRleHRNZW51OiBmdW5jdGlvbihsaW5l
TnVtYmVyLCBjb250ZXh0TWVudSkgeyB9LAogCi0gICAgcG9wdWxhdGVUZXh0QXJlYUNvbnRleHRN
ZW51OiBmdW5jdGlvbihjb250ZXh0TWVudSkKLSAgICB7Ci0gICAgICAgIC8vIFNob3VsZCBiZSBp
bXBsZW1lbnRlZCBieSBzdWJjbGFzc2VzLgotICAgIH0sCisgICAgcG9wdWxhdGVUZXh0QXJlYUNv
bnRleHRNZW51OiBmdW5jdGlvbihjb250ZXh0TWVudSkgeyB9LAogCi0gICAgc3VnZ2VzdGVkRmls
ZU5hbWU6IGZ1bmN0aW9uKCkKLSAgICB7Ci0gICAgICAgIC8vIFNob3VsZCBiZSBpbXBsZW1lbnRl
ZCBieSBzdWJjbGFzc2VzLgotICAgIH0KKyAgICBzdWdnZXN0ZWRGaWxlTmFtZTogZnVuY3Rpb24o
KSB7IH0KIH0KIAotV2ViSW5zcGVjdG9yLlRleHRWaWV3ZXJEZWxlZ2F0ZS5wcm90b3R5cGUuX19w
cm90b19fID0gV2ViSW5zcGVjdG9yLk9iamVjdC5wcm90b3R5cGU7Ci0KKy8qKgorICogQGNvbnN0
cnVjdG9yCisgKi8KIFdlYkluc3BlY3Rvci5UZXh0RWRpdG9yQ2h1bmtlZFBhbmVsID0gZnVuY3Rp
b24odGV4dE1vZGVsKQogewogICAgIHRoaXMuX3RleHRNb2RlbCA9IHRleHRNb2RlbDsKQEAgLTY0
Myw2ICs2MjcsMTAgQEAgV2ViSW5zcGVjdG9yLlRleHRFZGl0b3JDaHVua2VkUGFuZWwucHJvdG90
eXBlID0gewogICAgIH0KIH0KIAorLyoqCisgKiBAY29uc3RydWN0b3IKKyAqIEBleHRlbmRzIHtX
ZWJJbnNwZWN0b3IuVGV4dEVkaXRvckNodW5rZWRQYW5lbH0KKyAqLwogV2ViSW5zcGVjdG9yLlRl
eHRFZGl0b3JHdXR0ZXJQYW5lbCA9IGZ1bmN0aW9uKHRleHRNb2RlbCwgc3luY0RlY29yYXRpb25z
Rm9yTGluZUxpc3RlbmVyLCBzeW5jTGluZUhlaWdodExpc3RlbmVyKQogewogICAgIFdlYkluc3Bl
Y3Rvci5UZXh0RWRpdG9yQ2h1bmtlZFBhbmVsLmNhbGwodGhpcywgdGV4dE1vZGVsKTsKQEAgLTcy
Nyw2ICs3MTUsOSBAQCBXZWJJbnNwZWN0b3IuVGV4dEVkaXRvckd1dHRlclBhbmVsLnByb3RvdHlw
ZSA9IHsKIAogV2ViSW5zcGVjdG9yLlRleHRFZGl0b3JHdXR0ZXJQYW5lbC5wcm90b3R5cGUuX19w
cm90b19fID0gV2ViSW5zcGVjdG9yLlRleHRFZGl0b3JDaHVua2VkUGFuZWwucHJvdG90eXBlOwog
CisvKioKKyAqIEBjb25zdHJ1Y3RvcgorICovCiBXZWJJbnNwZWN0b3IuVGV4dEVkaXRvckd1dHRl
ckNodW5rID0gZnVuY3Rpb24odGV4dFZpZXdlciwgc3RhcnRMaW5lLCBlbmRMaW5lKQogewogICAg
IHRoaXMuX3RleHRWaWV3ZXIgPSB0ZXh0Vmlld2VyOwpAQCAtODQ5LDYgKzg0MCwxMCBAQCBXZWJJ
bnNwZWN0b3IuVGV4dEVkaXRvckd1dHRlckNodW5rLnByb3RvdHlwZSA9IHsKICAgICB9CiB9CiAK
Ky8qKgorICogQGNvbnN0cnVjdG9yCisgKiBAZXh0ZW5kcyB7V2ViSW5zcGVjdG9yLlRleHRFZGl0
b3JDaHVua2VkUGFuZWx9CisgKi8KIFdlYkluc3BlY3Rvci5UZXh0RWRpdG9yTWFpblBhbmVsID0g
ZnVuY3Rpb24odGV4dE1vZGVsLCB1cmwsIHN5bmNTY3JvbGxMaXN0ZW5lciwgc3luY0RlY29yYXRp
b25zRm9yTGluZUxpc3RlbmVyLCBlbnRlclRleHRDaGFuZ2VNb2RlLCBleGl0VGV4dENoYW5nZU1v
ZGUpCiB7CiAgICAgV2ViSW5zcGVjdG9yLlRleHRFZGl0b3JDaHVua2VkUGFuZWwuY2FsbCh0aGlz
LCB0ZXh0TW9kZWwpOwpAQCAtMTIyMiw2ICsxMjE3LDkgQEAgV2ViSW5zcGVjdG9yLlRleHRFZGl0
b3JNYWluUGFuZWwucHJvdG90eXBlID0gewogICAgICAgICB0aGlzLl9wYWludExpbmVzT3BlcmF0
aW9uc1JlZnJlc2hWYWx1ZSA9IE51bWJlci5jb25zdHJhaW4odmFsdWUsIDE1MCwgMTUwMCk7CiAg
ICAgfSwKIAorICAgIC8qKgorICAgICAqIEBwYXJhbSB7Ym9vbGVhbj19IHJlc3RvcmVTZWxlY3Rp
b24KKyAgICAgKi8KICAgICBfcGFpbnRMaW5lczogZnVuY3Rpb24oZnJvbUxpbmUsIHRvTGluZSwg
cmVzdG9yZVNlbGVjdGlvbikKICAgICB7CiAgICAgICAgIHRoaXMuX3BhaW50TGluZUNodW5rcyhb
IHsgc3RhcnRMaW5lOiBmcm9tTGluZSwgZW5kTGluZTogdG9MaW5lIH0gXSwgcmVzdG9yZVNlbGVj
dGlvbik7CkBAIC0xMzcwLDYgKzEzNjgsOSBAQCBXZWJJbnNwZWN0b3IuVGV4dEVkaXRvck1haW5Q
YW5lbC5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICByZXR1cm4gbmV3IFdlYkluc3BlY3Rvci5U
ZXh0UmFuZ2UoZW5kLmxpbmUsIGVuZC5jb2x1bW4sIHN0YXJ0LmxpbmUsIHN0YXJ0LmNvbHVtbik7
CiAgICAgfSwKIAorICAgIC8qKgorICAgICAqIEBwYXJhbSB7Ym9vbGVhbj19IHNjcm9sbEludG9W
aWV3CisgICAgICovCiAgICAgX3Jlc3RvcmVTZWxlY3Rpb246IGZ1bmN0aW9uKHJhbmdlLCBzY3Jv
bGxJbnRvVmlldykKICAgICB7CiAgICAgICAgIGlmICghcmFuZ2UpCkBAIC0xNDU5LDcgKzE0NjAs
OCBAQCBXZWJJbnNwZWN0b3IuVGV4dEVkaXRvck1haW5QYW5lbC5wcm90b3R5cGUgPSB7CiAgICAg
ICAgIHZhciBsaW5lUm93ID0gZWxlbWVudC5lbmNsb3NpbmdOb2RlT3JTZWxmV2l0aENsYXNzKCJ3
ZWJraXQtbGluZS1jb250ZW50Iik7CiAgICAgICAgIGlmIChsaW5lUm93KQogICAgICAgICAgICAg
cmV0dXJuIGxpbmVSb3c7Ci0gICAgICAgIGZvciAodmFyIGxpbmVSb3cgPSBlbGVtZW50OyBsaW5l
Um93OyBsaW5lUm93ID0gbGluZVJvdy5wYXJlbnRFbGVtZW50KSB7CisKKyAgICAgICAgZm9yIChs
aW5lUm93ID0gZWxlbWVudDsgbGluZVJvdzsgbGluZVJvdyA9IGxpbmVSb3cucGFyZW50RWxlbWVu
dCkgewogICAgICAgICAgICAgaWYgKGxpbmVSb3cucGFyZW50RWxlbWVudCA9PT0gdGhpcy5fY29u
dGFpbmVyKQogICAgICAgICAgICAgICAgIHJldHVybiBsaW5lUm93OwogICAgICAgICB9CkBAIC0x
NTAzLDcgKzE1MDUsNyBAQCBXZWJJbnNwZWN0b3IuVGV4dEVkaXRvck1haW5QYW5lbC5wcm90b3R5
cGUgPSB7CiAgICAgICAgIGVsc2UKICAgICAgICAgICAgIHF1b3RlID0gbnVsbDsKIAotICAgICAg
ICB2YXIgYSA9IFdlYkluc3BlY3Rvci5saW5raWZ5VVJMQXNOb2RlKHRoaXMuX3Jld3JpdGVIcmVm
KGNvbnRlbnQpLCBjb250ZW50LCBudWxsLCBpc0V4dGVybmFsKTsKKyAgICAgICAgdmFyIGEgPSBX
ZWJJbnNwZWN0b3IubGlua2lmeVVSTEFzTm9kZSh0aGlzLl9yZXdyaXRlSHJlZihjb250ZW50KSwg
Y29udGVudCwgdW5kZWZpbmVkLCBpc0V4dGVybmFsKTsKICAgICAgICAgdmFyIHNwYW4gPSBkb2N1
bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7CiAgICAgICAgIHNwYW4uY2xhc3NOYW1lID0gIndl
YmtpdC1odG1sLWF0dHJpYnV0ZS12YWx1ZSI7CiAgICAgICAgIGlmIChxdW90ZSkKQEAgLTE1MTQs
NiArMTUxNiw5IEBAIFdlYkluc3BlY3Rvci5UZXh0RWRpdG9yTWFpblBhbmVsLnByb3RvdHlwZSA9
IHsKICAgICAgICAgcmV0dXJuIHNwYW47CiAgICAgfSwKIAorICAgIC8qKgorICAgICAqIEBwYXJh
bSB7Ym9vbGVhbj19IGlzRXh0ZXJuYWwKKyAgICAgKi8KICAgICBfcmV3cml0ZUhyZWY6IGZ1bmN0
aW9uKGhyZWZWYWx1ZSwgaXNFeHRlcm5hbCkKICAgICB7CiAgICAgICAgIGlmICghdGhpcy5fdXJs
IHx8ICFocmVmVmFsdWUgfHwgaHJlZlZhbHVlLmluZGV4T2YoIjovLyIpID4gMCkKQEAgLTE2NTAs
OCArMTY1NSw4IEBAIFdlYkluc3BlY3Rvci5UZXh0RWRpdG9yTWFpblBhbmVsLnByb3RvdHlwZSA9
IHsKICAgICAgICAgICAgICAgICArK3N0YXJ0Q29sdW1uOwogICAgICAgICAgICAgbGluZXNbMF0g
PSBsaW5lMi5zdWJzdHJpbmcoc3RhcnRDb2x1bW4pOwogCi0gICAgICAgICAgICB2YXIgbGluZTEg
PSB0aGlzLl90ZXh0TW9kZWwubGluZShlbmRMaW5lIC0gMSk7Ci0gICAgICAgICAgICB2YXIgbGlu
ZTIgPSBsaW5lc1tsaW5lcy5sZW5ndGggLSAxXTsKKyAgICAgICAgICAgIGxpbmUxID0gdGhpcy5f
dGV4dE1vZGVsLmxpbmUoZW5kTGluZSAtIDEpOworICAgICAgICAgICAgbGluZTIgPSBsaW5lc1ts
aW5lcy5sZW5ndGggLSAxXTsKICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZW5kQ29s
dW1uICYmIGkgPCBsaW5lMi5sZW5ndGg7ICsraSkgewogICAgICAgICAgICAgICAgIGlmIChzdGFy
dExpbmUgPT09IGVuZExpbmUgLSAxICYmIGVuZENvbHVtbiAtIGkgPD0gc3RhcnRDb2x1bW4pCiAg
ICAgICAgICAgICAgICAgICAgIGJyZWFrOwpAQCAtMTc3NywxMCArMTc4MiwxMCBAQCBXZWJJbnNw
ZWN0b3IuVGV4dEVkaXRvck1haW5QYW5lbC5wcm90b3R5cGUgPSB7CiAKICAgICAgICAgLy8gRGVs
ZXRlIGFsbCBET00gZWxlbWVudHMgdGhhdCB3ZXJlIGVpdGhlciBjb250cm9sbGVkIGJ5IHRoZSBv
bGQgY2h1bmtzLCBvciBoYXZlIGp1c3QgYmVlbiBpbnNlcnRlZC4KICAgICAgICAgdmFyIGZpcnN0
VW5tb2RpZmllZExpbmVSb3cgPSBudWxsOwotICAgICAgICB2YXIgY2h1bmsgPSB0aGlzLl90ZXh0
Q2h1bmtzW2xhc3RDaHVua051bWJlciArIDFdOwotICAgICAgICBpZiAoY2h1bmspIHsKKyAgICAg
ICAgY2h1bmsgPSB0aGlzLl90ZXh0Q2h1bmtzW2xhc3RDaHVua051bWJlciArIDFdOworICAgICAg
ICBpZiAoY2h1bmspCiAgICAgICAgICAgICBmaXJzdFVubW9kaWZpZWRMaW5lUm93ID0gY2h1bmsu
ZXhwYW5kZWQgPyBjaHVuay5nZXRFeHBhbmRlZExpbmVSb3coY2h1bmsuc3RhcnRMaW5lKSA6IGNo
dW5rLmVsZW1lbnQ7Ci0gICAgICAgIH0KKwogICAgICAgICB3aGlsZSAoZmlyc3RMaW5lUm93ICYm
IGZpcnN0TGluZVJvdyAhPT0gZmlyc3RVbm1vZGlmaWVkTGluZVJvdykgewogICAgICAgICAgICAg
dmFyIGxpbmVSb3cgPSBmaXJzdExpbmVSb3c7CiAgICAgICAgICAgICBmaXJzdExpbmVSb3cgPSBm
aXJzdExpbmVSb3cubmV4dFNpYmxpbmc7CkBAIC0xODU3LDYgKzE4NjIsOSBAQCBXZWJJbnNwZWN0
b3IuVGV4dEVkaXRvck1haW5QYW5lbC5wcm90b3R5cGUgPSB7CiAKIFdlYkluc3BlY3Rvci5UZXh0
RWRpdG9yTWFpblBhbmVsLnByb3RvdHlwZS5fX3Byb3RvX18gPSBXZWJJbnNwZWN0b3IuVGV4dEVk
aXRvckNodW5rZWRQYW5lbC5wcm90b3R5cGU7CiAKKy8qKgorICogQGNvbnN0cnVjdG9yCisgKi8K
IFdlYkluc3BlY3Rvci5UZXh0RWRpdG9yTWFpbkNodW5rID0gZnVuY3Rpb24odGV4dFZpZXdlciwg
c3RhcnRMaW5lLCBlbmRMaW5lKQogewogICAgIHRoaXMuX3RleHRWaWV3ZXIgPSB0ZXh0Vmlld2Vy
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9leHRlcm5z
LmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9leHRlcm5zLmpzCmluZGV4
IDFiYjIzZjFkZjQwMWQzZWY1ZWJlZDNhNmIyZmU1NjY5ZDdjY2UzZGUuLmE5M2RmZGVmOTZiMmJl
ZjQ3MTVkYjZhZGRjZjEzOGI5MWVhZjAyZGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9mcm9udC1lbmQvZXh0ZXJucy5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvZnJvbnQtZW5kL2V4dGVybnMuanMKQEAgLTYxLDYgKzYxLDEyIEBAIFdlYkluc3BlY3Rvci5m
b3JtYXRMaW5rVGV4dCA9IGZ1bmN0aW9uKHVybCwgbGluZU51bWJlcikge30KIFdlYkluc3BlY3Rv
ci5kaXNwbGF5TmFtZUZvclVSTCA9IGZ1bmN0aW9uKHVybCkge30KIAogLyoqCisgKiBAcGFyYW0g
e3N0cmluZ30gdXJsCisgKiBAcGFyYW0ge3N0cmluZ30gaHJlZgorICovCitXZWJJbnNwZWN0b3Iu
Y29tcGxldGVVUkwgPSBmdW5jdGlvbih1cmwsIGhyZWYpIHt9CisKKy8qKgogICogQHBhcmFtIHtz
dHJpbmd9IHN0cgogICogQHBhcmFtIHsuLi4qfSB2YXJBcmdzCiAgKi8KQEAgLTE4MywxMSArMTg5
LDE0IEBAIFdlYkluc3BlY3Rvci5wcmV2aW91c0ZvY3VzRWxlbWVudCA9IG51bGw7CiBXZWJJbnNw
ZWN0b3IucGxhdGZvcm1GbGF2b3IgPSAiIjsKIAogLyoqIEBwYXJhbSB7RWxlbWVudH0gZWxlbWVu
dCAqLwotd2luZG93LmdldENvbXB1dGVkU3R5bGUgPSBmdW5jdGlvbihlbGVtZW50KQotewotfQor
d2luZG93LmdldENvbXB1dGVkU3R5bGUgPSBmdW5jdGlvbihlbGVtZW50KSB7fQogCiAvKioKICAq
IEB0eXBlIHtib29sZWFufQogICovCiBFdmVudC5wcm90b3R5cGUuaXNNZXRhT3JDdHJsRm9yVGVz
dCA9IGZhbHNlOworCisvKioKKyAqIEBwYXJhbSB7Li4uKn0gdmFyYXJnCisgKi8KK0V2ZW50LnBy
b3RvdHlwZS5pbml0V2ViS2l0V2hlZWxFdmVudCA9IGZ1bmN0aW9uKHZhcmFyZykge30KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvdXRpbGl0aWVzLmpzIGIv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC91dGlsaXRpZXMuanMKaW5kZXggYTNi
ZDBkOTc5NzQwMzM3NDc0Zjk1NDlmMGNmNDYyYmI3ZDVkNDdhMC4uNTA1YmY5N2QwZWY5ZmU2NWFk
Yzc3MWQ3YzI3OGE5NjNhNmU0MDEyYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC91dGlsaXRpZXMuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L2Zyb250LWVuZC91dGlsaXRpZXMuanMKQEAgLTgzOCw2ICs4MzgsOSBAQCBmdW5jdGlvbiBpc0Vu
dGVyS2V5KGV2ZW50KSB7CiAgICAgcmV0dXJuIGV2ZW50LmtleUNvZGUgIT09IDIyOSAmJiBldmVu
dC5rZXlJZGVudGlmaWVyID09PSAiRW50ZXIiOwogfQogCisvKioKKyAqIEBwYXJhbSB7QXJyYXku
PE9iamVjdD49fSBkb21DaGFuZ2VzCisgKi8KIGZ1bmN0aW9uIGhpZ2hsaWdodFNlYXJjaFJlc3Vs
dChlbGVtZW50LCBvZmZzZXQsIGxlbmd0aCwgZG9tQ2hhbmdlcykKIHsKICAgICB2YXIgcmVzdWx0
ID0gaGlnaGxpZ2h0U2VhcmNoUmVzdWx0cyhlbGVtZW50LCBbe29mZnNldDogb2Zmc2V0LCBsZW5n
dGg6IGxlbmd0aCB9XSwgZG9tQ2hhbmdlcyk7Cg==
</data>
<flag name="review"
          id="106900"
          type_id="1"
          status="+"
          setter="yurys"
    />
          </attachment>
      

    </bug>

</bugzilla>