<?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>46160</bug_id>
          
          <creation_ts>2010-09-20 20:06:21 -0700</creation_ts>
          <short_desc>The tool member variable should be called _tool</short_desc>
          <delta_ts>2010-09-20 21:00:37 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</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>1</everconfirmed>
          <reporter name="Adam Barth">abarth</reporter>
          <assigned_to name="Adam Barth">abarth</assigned_to>
          <cc>abarth</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>282045</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-09-20 20:06:21 -0700</bug_when>
    <thetext>The tool member variable should be called _tool</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>282046</commentid>
    <comment_count>1</comment_count>
      <attachid>68180</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-09-20 20:07:24 -0700</bug_when>
    <thetext>Created attachment 68180
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>282048</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-09-20 20:09:18 -0700</bug_when>
    <thetext>Attachment 68180 did not pass style-queue:

Failed to run &quot;[&apos;WebKitTools/Scripts/check-webkit-style&apos;]&quot; exit_code: 1
WebKitTools/Scripts/webkitpy/tool/multicommandtool.py:192:  at least two spaces before inline comment  [pep8/E261] [5]
Total errors found: 1 in 10 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>282051</commentid>
    <comment_count>3</comment_count>
      <attachid>68180</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-09-20 20:24:26 -0700</bug_when>
    <thetext>Comment on attachment 68180
Patch

Clearing flags on attachment: 68180

Committed r67916: &lt;http://trac.webkit.org/changeset/67916&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>282052</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-09-20 20:24:31 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>282067</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-09-20 21:00:37 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/67916 might have broken SnowLeopard Intel Release (Tests)</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>68180</attachid>
            <date>2010-09-20 20:07:24 -0700</date>
            <delta_ts>2010-09-20 20:24:26 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-46160-20100920200723.patch</filename>
            <type>text/plain</type>
            <size>25107</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRUb29scy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDY3OTE0KQorKysgV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMjIgQEAKKzIwMTAtMDktMjAgIEFkYW0gQmFydGggIDxhYmFy
dGhAd2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBUaGUgdG9vbCBtZW1iZXIgdmFyaWFibGUgc2hvdWxkIGJlIGNhbGxlZCBfdG9vbAor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDYxNjAKKwor
ICAgICAgICBDcmVhdGVkIGJ5IGZpbmQtYW5kLXJlcGxhY2UuCisKKyAgICAgICAgKiBTY3JpcHRz
L3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvZG93bmxvYWQucHk6CisgICAgICAgICogU2NyaXB0cy93
ZWJraXRweS90b29sL2NvbW1hbmRzL29wZW5idWdzLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Vi
a2l0cHkvdG9vbC9jb21tYW5kcy9xdWVyaWVzLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0
cHkvdG9vbC9jb21tYW5kcy9xdWV1ZXMucHk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS90
b29sL2NvbW1hbmRzL3F1ZXVlc191bml0dGVzdC5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtp
dHB5L3Rvb2wvY29tbWFuZHMvcmViYXNlbGluZS5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtp
dHB5L3Rvb2wvY29tbWFuZHMvc2hlcmlmZmJvdC5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtp
dHB5L3Rvb2wvY29tbWFuZHMvdXBsb2FkLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkv
dG9vbC9tdWx0aWNvbW1hbmR0b29sLnB5OgorCiAyMDEwLTA5LTIwICBBZGFtIEJhcnRoICA8YWJh
cnRoQHdlYmtpdC5vcmc+CiAKICAgICAgICAgSSByYW4gdGhlIHRlc3RzIGJlZm9yZSBsYW5kaW5n
IGJ1dCBpZ25vcmVkIHRoZSBmYWN0IHRoYXQgdGhleSBmYWlsZWQuICA6KApJbmRleDogV2ViS2l0
VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL211bHRpY29tbWFuZHRvb2wucHkKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL211bHRpY29tbWFuZHRvb2wu
cHkJKHJldmlzaW9uIDY3OTE0KQorKysgV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29s
L211bHRpY29tbWFuZHRvb2wucHkJKHdvcmtpbmcgY29weSkKQEAgLTUzLDcgKzUzLDcgQEAgY2xh
c3MgQ29tbWFuZChvYmplY3QpOgogICAgICAgICBzZWxmLnJlcXVpcmVkX2FyZ3VtZW50cyA9IHNl
bGYuX3BhcnNlX3JlcXVpcmVkX2FyZ3VtZW50cyhhcmd1bWVudF9uYW1lcykKICAgICAgICAgc2Vs
Zi5vcHRpb25zID0gb3B0aW9ucwogICAgICAgICBzZWxmLnJlcXVpcmVzX2xvY2FsX2NvbW1pdHMg
PSByZXF1aXJlc19sb2NhbF9jb21taXRzCi0gICAgICAgIHNlbGYudG9vbCA9IE5vbmUKKyAgICAg
ICAgc2VsZi5fdG9vbCA9IE5vbmUKICAgICAgICAgIyBvcHRpb25fcGFyc2VyIGNhbiBiZSBvdmVy
cmlkZW4gYnkgdGhlIHRvb2wgdXNpbmcgc2V0X29wdGlvbl9wYXJzZXIKICAgICAgICAgIyBUaGlz
IGRlZmF1bHQgcGFyc2VyIHdpbGwgYmUgdXNlZCBmb3Igc3RhbmRhbG9uZV9oZWxwIHByaW50aW5n
LgogICAgICAgICBzZWxmLm9wdGlvbl9wYXJzZXIgPSBIZWxwUHJpbnRpbmdPcHRpb25QYXJzZXIo
dXNhZ2U9U1VQUFJFU1NfVVNBR0UsIGFkZF9oZWxwX29wdGlvbj1GYWxzZSwgb3B0aW9uX2xpc3Q9
c2VsZi5vcHRpb25zKQpAQCAtNzMsOSArNzMsOSBAQCBjbGFzcyBDb21tYW5kKG9iamVjdCk6CiAg
ICAgIyBUaGUgdG9vbCBjYWxscyBiaW5kX3RvX3Rvb2wgb24gZWFjaCBDb21tYW5kIGFmdGVyIGFk
ZGluZyBpdCB0byBpdHMgbGlzdC4KICAgICBkZWYgYmluZF90b190b29sKHNlbGYsIHRvb2wpOgog
ICAgICAgICAjIENvbW1hbmQgaW5zdGFuY2VzIGNhbiBvbmx5IGJlIGJvdW5kIHRvIG9uZSB0b29s
IGF0IGEgdGltZS4KLSAgICAgICAgaWYgc2VsZi50b29sIGFuZCB0b29sICE9IHNlbGYudG9vbDoK
KyAgICAgICAgaWYgc2VsZi5fdG9vbCBhbmQgdG9vbCAhPSBzZWxmLl90b29sOgogICAgICAgICAg
ICAgcmFpc2UgRXhjZXB0aW9uKCJDb21tYW5kIGFscmVhZHkgYm91bmQgdG8gdG9vbCEiKQotICAg
ICAgICBzZWxmLnRvb2wgPSB0b29sCisgICAgICAgIHNlbGYuX3Rvb2wgPSB0b29sCiAKICAgICBA
c3RhdGljbWV0aG9kCiAgICAgZGVmIF9wYXJzZV9yZXF1aXJlZF9hcmd1bWVudHMoYXJndW1lbnRf
bmFtZXMpOgpAQCAtMTc5LDE3ICsxNzksMTcgQEAgY2xhc3MgSGVscENvbW1hbmQoQWJzdHJhY3RE
ZWNsYXJhdGl2ZUNvbQogICAgICAgICAjIE9ubHkgc2hvdyBjb21tYW5kcyB3aGljaCBhcmUgcmVs
ZXZhbnQgdG8gdGhpcyBjaGVja291dCdzIFNDTSBzeXN0ZW0uICBNaWdodCB0aGlzIGJlIGNvbmZ1
c2luZyB0byBzb21lIHVzZXJzPwogICAgICAgICBpZiBzZWxmLnNob3dfYWxsX2NvbW1hbmRzOgog
ICAgICAgICAgICAgZXBpbG9nID0gIkFsbCAlcHJvZyBjb21tYW5kczpcbiIKLSAgICAgICAgICAg
IHJlbGV2YW50X2NvbW1hbmRzID0gc2VsZi50b29sLmNvbW1hbmRzWzpdCisgICAgICAgICAgICBy
ZWxldmFudF9jb21tYW5kcyA9IHNlbGYuX3Rvb2wuY29tbWFuZHNbOl0KICAgICAgICAgZWxzZToK
ICAgICAgICAgICAgIGVwaWxvZyA9ICJDb21tb24gJXByb2cgY29tbWFuZHM6XG4iCi0gICAgICAg
ICAgICByZWxldmFudF9jb21tYW5kcyA9IGZpbHRlcihzZWxmLnRvb2wuc2hvdWxkX3Nob3dfaW5f
bWFpbl9oZWxwLCBzZWxmLnRvb2wuY29tbWFuZHMpCisgICAgICAgICAgICByZWxldmFudF9jb21t
YW5kcyA9IGZpbHRlcihzZWxmLl90b29sLnNob3VsZF9zaG93X2luX21haW5faGVscCwgc2VsZi5f
dG9vbC5jb21tYW5kcykKICAgICAgICAgbG9uZ2VzdF9uYW1lX2xlbmd0aCA9IG1heChtYXAobGFt
YmRhIGNvbW1hbmQ6IGxlbihjb21tYW5kLm5hbWUpLCByZWxldmFudF9jb21tYW5kcykpCiAgICAg
ICAgIHJlbGV2YW50X2NvbW1hbmRzLnNvcnQobGFtYmRhIGEsIGI6IGNtcChhLm5hbWUsIGIubmFt
ZSkpCiAgICAgICAgIGNvbW1hbmRfaGVscF90ZXh0cyA9IG1hcChsYW1iZGEgY29tbWFuZDogIiAg
ICVzICAgJXNcbiIgJSAoY29tbWFuZC5uYW1lLmxqdXN0KGxvbmdlc3RfbmFtZV9sZW5ndGgpLCBj
b21tYW5kLmhlbHBfdGV4dCksIHJlbGV2YW50X2NvbW1hbmRzKQogICAgICAgICBlcGlsb2cgKz0g
IiVzXG4iICUgIiIuam9pbihjb21tYW5kX2hlbHBfdGV4dHMpCiAgICAgICAgIGVwaWxvZyArPSAi
U2VlICclcHJvZyBoZWxwIC0tYWxsLWNvbW1hbmRzJyB0byBsaXN0IGFsbCBjb21tYW5kcy5cbiIK
ICAgICAgICAgZXBpbG9nICs9ICJTZWUgJyVwcm9nIGhlbHAgQ09NTUFORCcgZm9yIG1vcmUgaW5m
b3JtYXRpb24gb24gYSBzcGVjaWZpYyBjb21tYW5kLlxuIgotICAgICAgICByZXR1cm4gZXBpbG9n
LnJlcGxhY2UoIiVwcm9nIiwgc2VsZi50b29sLm5hbWUoKSkgIyBVc2Ugb2YgJXByb2cgaGVyZSBt
aW1pY3MgT3B0aW9uUGFyc2VyLmV4cGFuZF9wcm9nX25hbWUoKS4KKyAgICAgICAgcmV0dXJuIGVw
aWxvZy5yZXBsYWNlKCIlcHJvZyIsIHNlbGYuX3Rvb2wubmFtZSgpKSAjIFVzZSBvZiAlcHJvZyBo
ZXJlIG1pbWljcyBPcHRpb25QYXJzZXIuZXhwYW5kX3Byb2dfbmFtZSgpLgogCiAgICAgIyBGSVhN
RTogVGhpcyBpcyBhIGhhY2sgc28gdGhhdCB3ZSBkb24ndCBzaG93IC0tYWxsLWNvbW1hbmRzIGFz
IGEgZ2xvYmFsIG9wdGlvbjoKICAgICBkZWYgX3JlbW92ZV9oZWxwX29wdGlvbnMoc2VsZik6CkBA
IC0xOTgsNyArMTk4LDcgQEAgY2xhc3MgSGVscENvbW1hbmQoQWJzdHJhY3REZWNsYXJhdGl2ZUNv
bQogCiAgICAgZGVmIGV4ZWN1dGUoc2VsZiwgb3B0aW9ucywgYXJncywgdG9vbCk6CiAgICAgICAg
IGlmIGFyZ3M6Ci0gICAgICAgICAgICBjb21tYW5kID0gc2VsZi50b29sLmNvbW1hbmRfYnlfbmFt
ZShhcmdzWzBdKQorICAgICAgICAgICAgY29tbWFuZCA9IHNlbGYuX3Rvb2wuY29tbWFuZF9ieV9u
YW1lKGFyZ3NbMF0pCiAgICAgICAgICAgICBpZiBjb21tYW5kOgogICAgICAgICAgICAgICAgIHBy
aW50IGNvbW1hbmQuc3RhbmRhbG9uZV9oZWxwKCkKICAgICAgICAgICAgICAgICByZXR1cm4gMApJ
bmRleDogV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL2Rvd25sb2Fk
LnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21t
YW5kcy9kb3dubG9hZC5weQkocmV2aXNpb24gNjc5MTQpCisrKyBXZWJLaXRUb29scy9TY3JpcHRz
L3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvZG93bmxvYWQucHkJKHdvcmtpbmcgY29weSkKQEAgLTI4
OSw3ICsyODksNyBAQCBjbGFzcyBBYnN0cmFjdFJvbGxvdXRQcmVwQ29tbWFuZChBYnN0cmFjCiAg
ICAgYXJndW1lbnRfbmFtZXMgPSAiUkVWSVNJT04gUkVBU09OIgogCiAgICAgZGVmIF9jb21taXRf
aW5mbyhzZWxmLCByZXZpc2lvbik6Ci0gICAgICAgIGNvbW1pdF9pbmZvID0gc2VsZi50b29sLmNo
ZWNrb3V0KCkuY29tbWl0X2luZm9fZm9yX3JldmlzaW9uKHJldmlzaW9uKQorICAgICAgICBjb21t
aXRfaW5mbyA9IHNlbGYuX3Rvb2wuY2hlY2tvdXQoKS5jb21taXRfaW5mb19mb3JfcmV2aXNpb24o
cmV2aXNpb24pCiAgICAgICAgIGlmIGNvbW1pdF9pbmZvIGFuZCBjb21taXRfaW5mby5idWdfaWQo
KToKICAgICAgICAgICAgICMgTm90ZTogRG9uJ3QgcHJpbnQgYSBidWcgVVJMIGhlcmUgYmVjYXVz
ZSBpdCB3aWxsIGNvbmZ1c2UgdGhlCiAgICAgICAgICAgICAjICAgICAgIFNoZXJpZmZCb3QgYmVj
YXVzZSB0aGUgU2hlcmlmZkJvdCBqdXN0IGdyZXBzIHRoZSBvdXRwdXQKSW5kZXg6IFdlYktpdFRv
b2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5kcy9vcGVuYnVncy5weQo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBXZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvb3BlbmJ1Z3Mu
cHkJKHJldmlzaW9uIDY3OTE0KQorKysgV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29s
L2NvbW1hbmRzL29wZW5idWdzLnB5CSh3b3JraW5nIGNvcHkpCkBAIC00MSw4ICs0MSw4IEBAIGNs
YXNzIE9wZW5CdWdzKEFic3RyYWN0RGVjbGFyYXRpdmVDb21tYW4KIAogICAgIGRlZiBfb3Blbl9i
dWdzKHNlbGYsIGJ1Z19pZHMpOgogICAgICAgICBmb3IgYnVnX2lkIGluIGJ1Z19pZHM6Ci0gICAg
ICAgICAgICBidWdfdXJsID0gc2VsZi50b29sLmJ1Z3MuYnVnX3VybF9mb3JfYnVnX2lkKGJ1Z19p
ZCkKLSAgICAgICAgICAgIHNlbGYudG9vbC51c2VyLm9wZW5fdXJsKGJ1Z191cmwpCisgICAgICAg
ICAgICBidWdfdXJsID0gc2VsZi5fdG9vbC5idWdzLmJ1Z191cmxfZm9yX2J1Z19pZChidWdfaWQp
CisgICAgICAgICAgICBzZWxmLl90b29sLnVzZXIub3Blbl91cmwoYnVnX3VybCkKIAogICAgICMg
X2ZpbmRfYnVnc19pbl9zdHJpbmcgbW9zdGx5IGV4aXN0cyBmb3IgZWFzeSB1bml0IHRlc3Rpbmcu
CiAgICAgZGVmIF9maW5kX2J1Z3NfaW5fc3RyaW5nKHNlbGYsIHN0cmluZyk6CkluZGV4OiBXZWJL
aXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvcXVlcmllcy5weQo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBXZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvcXVlcmll
cy5weQkocmV2aXNpb24gNjc5MTQpCisrKyBXZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rv
b2wvY29tbWFuZHMvcXVlcmllcy5weQkod29ya2luZyBjb3B5KQpAQCAtMTEyLDcgKzExMiw3IEBA
IGNsYXNzIExhc3RHcmVlblJldmlzaW9uKEFic3RyYWN0RGVjbGFyYXQKICAgICBoZWxwX3RleHQg
PSAiUHJpbnRzIHRoZSBsYXN0IGtub3duIGdvb2QgcmV2aXNpb24iCiAKICAgICBkZWYgZXhlY3V0
ZShzZWxmLCBvcHRpb25zLCBhcmdzLCB0b29sKToKLSAgICAgICAgcHJpbnQgc2VsZi50b29sLmJ1
aWxkYm90Lmxhc3RfZ3JlZW5fcmV2aXNpb24oKQorICAgICAgICBwcmludCBzZWxmLl90b29sLmJ1
aWxkYm90Lmxhc3RfZ3JlZW5fcmV2aXNpb24oKQogCiAKIGNsYXNzIFdoYXRCcm9rZShBYnN0cmFj
dERlY2xhcmF0aXZlQ29tbWFuZCk6CkBAIC0xMjUsNyArMTI1LDcgQEAgY2xhc3MgV2hhdEJyb2tl
KEFic3RyYWN0RGVjbGFyYXRpdmVDb21tYQogICAgICMgRklYTUU6IFRoaXMgaXMgc2xpZ2h0bHkg
ZGlmZmVyZW50IGZyb20gQnVpbGRlci5zdXNwZWN0X3JldmlzaW9uc19mb3JfZ3JlZW5fdG9fcmVk
X3RyYW5zaXRpb24KICAgICAjIGR1ZSB0byBuZWVkaW5nIHRvIGRldGVjdCB0aGUgImhpdCB0aGUg
bGltaXQiIGNhc2UgYW4gcHJpbnQgYSBzcGVjaWFsIG1lc3NhZ2UuCiAgICAgZGVmIF9wcmludF9i
bGFtZV9pbmZvcm1hdGlvbl9mb3JfYnVpbGRlcihzZWxmLCBidWlsZGVyX3N0YXR1cywgbmFtZV93
aWR0aCwgYXZvaWRfZmxha2V5X3Rlc3RzPVRydWUpOgotICAgICAgICBidWlsZGVyID0gc2VsZi50
b29sLmJ1aWxkYm90LmJ1aWxkZXJfd2l0aF9uYW1lKGJ1aWxkZXJfc3RhdHVzWyJuYW1lIl0pCisg
ICAgICAgIGJ1aWxkZXIgPSBzZWxmLl90b29sLmJ1aWxkYm90LmJ1aWxkZXJfd2l0aF9uYW1lKGJ1
aWxkZXJfc3RhdHVzWyJuYW1lIl0pCiAgICAgICAgIHJlZF9idWlsZCA9IGJ1aWxkZXIuYnVpbGQo
YnVpbGRlcl9zdGF0dXNbImJ1aWxkX251bWJlciJdKQogICAgICAgICAobGFzdF9ncmVlbl9idWls
ZCwgZmlyc3RfcmVkX2J1aWxkKSA9IGJ1aWxkZXIuZmluZF9mYWlsdXJlX3RyYW5zaXRpb24ocmVk
X2J1aWxkKQogICAgICAgICBpZiBub3QgZmlyc3RfcmVkX2J1aWxkOgpAQCAtMTQyLDkgKzE0Miw5
IEBAIGNsYXNzIFdoYXRCcm9rZShBYnN0cmFjdERlY2xhcmF0aXZlQ29tbWEKICAgICAgICAgICAg
IGZpcnN0X2ZhaWx1cmVfbWVzc2FnZSA9ICIgRklSU1QgRkFJTFVSRSwgcG9zc2libHkgYSBmbGFr
eSB0ZXN0IgogICAgICAgICBzZWxmLl9wcmludF9idWlsZGVyX2xpbmUoYnVpbGRlci5uYW1lKCks
IG5hbWVfd2lkdGgsICJGQUlMIChibGFtZS1saXN0OiAlcyVzKSIgJSAoc3VzcGVjdF9yZXZpc2lv
bnMsIGZpcnN0X2ZhaWx1cmVfbWVzc2FnZSkpCiAgICAgICAgIGZvciByZXZpc2lvbiBpbiBzdXNw
ZWN0X3JldmlzaW9uczoKLSAgICAgICAgICAgIGNvbW1pdF9pbmZvID0gc2VsZi50b29sLmNoZWNr
b3V0KCkuY29tbWl0X2luZm9fZm9yX3JldmlzaW9uKHJldmlzaW9uKQorICAgICAgICAgICAgY29t
bWl0X2luZm8gPSBzZWxmLl90b29sLmNoZWNrb3V0KCkuY29tbWl0X2luZm9fZm9yX3JldmlzaW9u
KHJldmlzaW9uKQogICAgICAgICAgICAgaWYgY29tbWl0X2luZm86Ci0gICAgICAgICAgICAgICAg
cHJpbnQgY29tbWl0X2luZm8uYmxhbWVfc3RyaW5nKHNlbGYudG9vbC5idWdzKQorICAgICAgICAg
ICAgICAgIHByaW50IGNvbW1pdF9pbmZvLmJsYW1lX3N0cmluZyhzZWxmLl90b29sLmJ1Z3MpCiAg
ICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgIHByaW50ICJGQUlMRUQgdG8gZmV0Y2gg
Q29tbWl0SW5mbyBmb3IgciVzLCBsaWtlbHkgbWlzc2luZyBDaGFuZ2VMb2ciICUgcmV2aXNpb24K
IApAQCAtMTY5LDcgKzE2OSw3IEBAIGNsYXNzIFdob0Jyb2tlSXQoQWJzdHJhY3REZWNsYXJhdGl2
ZUNvbW0KICAgICBoZWxwX3RleHQgPSAiUHJpbnQgYSBsaXN0IG9mIHJldmlzaW9ucyBjYXVzaW5n
IGZhaWx1cmVzIG9uICVzIiAlIEJ1aWxkQm90LmRlZmF1bHRfaG9zdAogCiAgICAgZGVmIGV4ZWN1
dGUoc2VsZiwgb3B0aW9ucywgYXJncywgdG9vbCk6Ci0gICAgICAgIGZvciByZXZpc2lvbiwgYnVp
bGRlcnMgaW4gc2VsZi50b29sLmJ1aWxkYm90LnJldmlzaW9uc19jYXVzaW5nX2ZhaWx1cmVzKEZh
bHNlKS5pdGVtcygpOgorICAgICAgICBmb3IgcmV2aXNpb24sIGJ1aWxkZXJzIGluIHNlbGYuX3Rv
b2wuYnVpbGRib3QucmV2aXNpb25zX2NhdXNpbmdfZmFpbHVyZXMoRmFsc2UpLml0ZW1zKCk6CiAg
ICAgICAgICAgICBwcmludCAiciVzIGFwcGVhcnMgdG8gaGF2ZSBicm9rZW4gJXMiICUgKHJldmlz
aW9uLCBbYnVpbGRlci5uYW1lKCkgZm9yIGJ1aWxkZXIgaW4gYnVpbGRlcnNdKQogCiAKQEAgLTE4
OCw3ICsxODgsNyBAQCBjbGFzcyBSZXN1bHRzRm9yKEFic3RyYWN0RGVjbGFyYXRpdmVDb21tCiAg
ICAgICAgICAgICAgICAgcHJpbnQgIiAgJXMiICUgZmlsZW5hbWUKIAogICAgIGRlZiBleGVjdXRl
KHNlbGYsIG9wdGlvbnMsIGFyZ3MsIHRvb2wpOgotICAgICAgICBidWlsZGVycyA9IHNlbGYudG9v
bC5idWlsZGJvdC5idWlsZGVycygpCisgICAgICAgIGJ1aWxkZXJzID0gc2VsZi5fdG9vbC5idWls
ZGJvdC5idWlsZGVycygpCiAgICAgICAgIGZvciBidWlsZGVyIGluIGJ1aWxkZXJzOgogICAgICAg
ICAgICAgcHJpbnQgIiVzOiIgJSBidWlsZGVyLm5hbWUoKQogICAgICAgICAgICAgYnVpbGQgPSBi
dWlsZGVyLmJ1aWxkX2Zvcl9yZXZpc2lvbihhcmdzWzBdLCBhbGxvd19mYWlsZWRfbG9va3Vwcz1U
cnVlKQpAQCAtMjA0LDkgKzIwNCw5IEBAIGNsYXNzIEZhaWx1cmVSZWFzb24oQWJzdHJhY3REZWNs
YXJhdGl2ZUMKICAgICAgICAgcHJpbnQgIlNVQ0NFU1M6IEJ1aWxkICVzIChyJXMpIHdhcyB0aGUg
Zmlyc3QgdG8gc2hvdyBmYWlsdXJlczogJXMiICUgKHJlZF9idWlsZC5fbnVtYmVyLCByZWRfYnVp
bGQucmV2aXNpb24oKSwgZmFpbGluZ190ZXN0cykKICAgICAgICAgcHJpbnQgIlN1c3BlY3QgcmV2
aXNpb25zOiIKICAgICAgICAgZm9yIHJldmlzaW9uIGluIHN1c3BlY3RfcmV2aXNpb25zOgotICAg
ICAgICAgICAgY29tbWl0X2luZm8gPSBzZWxmLnRvb2wuY2hlY2tvdXQoKS5jb21taXRfaW5mb19m
b3JfcmV2aXNpb24ocmV2aXNpb24pCisgICAgICAgICAgICBjb21taXRfaW5mbyA9IHNlbGYuX3Rv
b2wuY2hlY2tvdXQoKS5jb21taXRfaW5mb19mb3JfcmV2aXNpb24ocmV2aXNpb24pCiAgICAgICAg
ICAgICBpZiBjb21taXRfaW5mbzoKLSAgICAgICAgICAgICAgICBwcmludCBjb21taXRfaW5mby5i
bGFtZV9zdHJpbmcoc2VsZi50b29sLmJ1Z3MpCisgICAgICAgICAgICAgICAgcHJpbnQgY29tbWl0
X2luZm8uYmxhbWVfc3RyaW5nKHNlbGYuX3Rvb2wuYnVncykKICAgICAgICAgICAgIGVsc2U6CiAg
ICAgICAgICAgICAgICAgcHJpbnQgIkZBSUxFRCB0byBmZXRjaCBDb21taXRJbmZvIGZvciByJXMs
IGxpa2VseSBtaXNzaW5nIENoYW5nZUxvZyIgJSByZXZpc2lvbgogCkBAIC0yNTUsNyArMjU1LDcg
QEAgY2xhc3MgRmFpbHVyZVJlYXNvbihBYnN0cmFjdERlY2xhcmF0aXZlQwogICAgICAgICByZXR1
cm4gMAogCiAgICAgZGVmIF9idWlsZGVyX3RvX2V4cGxhaW4oc2VsZik6Ci0gICAgICAgIGJ1aWxk
ZXJfc3RhdHVzZXMgPSBzZWxmLnRvb2wuYnVpbGRib3QuYnVpbGRlcl9zdGF0dXNlcygpCisgICAg
ICAgIGJ1aWxkZXJfc3RhdHVzZXMgPSBzZWxmLl90b29sLmJ1aWxkYm90LmJ1aWxkZXJfc3RhdHVz
ZXMoKQogICAgICAgICByZWRfc3RhdHVzZXMgPSBbc3RhdHVzIGZvciBzdGF0dXMgaW4gYnVpbGRl
cl9zdGF0dXNlcyBpZiBub3Qgc3RhdHVzWyJpc19ncmVlbiJdXQogICAgICAgICBwcmludCAiJXMg
ZmFpbGluZyIgJSAocGx1cmFsaXplKCJidWlsZGVyIiwgbGVuKHJlZF9zdGF0dXNlcykpKQogICAg
ICAgICBidWlsZGVyX2Nob2ljZXMgPSBbc3RhdHVzWyJuYW1lIl0gZm9yIHN0YXR1cyBpbiByZWRf
c3RhdHVzZXNdCkBAIC0yNjQsMTEgKzI2NCwxMSBAQCBjbGFzcyBGYWlsdXJlUmVhc29uKEFic3Ry
YWN0RGVjbGFyYXRpdmVDCiAgICAgICAgICMgRklYTUU6IHByb21wdF93aXRoX2xpc3Qgc2hvdWxk
IHJlYWxseSB0YWtlIGEgc2V0IG9mIG9iamVjdHMgYW5kIGEgc2V0IG9mIG5hbWVzIGFuZCB0aGVu
IHJldHVybiB0aGUgb2JqZWN0LgogICAgICAgICBmb3Igc3RhdHVzIGluIHJlZF9zdGF0dXNlczoK
ICAgICAgICAgICAgIGlmIHN0YXR1c1sibmFtZSJdID09IGNob3Nlbl9uYW1lOgotICAgICAgICAg
ICAgICAgIHJldHVybiAoc2VsZi50b29sLmJ1aWxkYm90LmJ1aWxkZXJfd2l0aF9uYW1lKGNob3Nl
bl9uYW1lKSwgc3RhdHVzWyJidWlsdF9yZXZpc2lvbiJdKQorICAgICAgICAgICAgICAgIHJldHVy
biAoc2VsZi5fdG9vbC5idWlsZGJvdC5idWlsZGVyX3dpdGhfbmFtZShjaG9zZW5fbmFtZSksIHN0
YXR1c1siYnVpbHRfcmV2aXNpb24iXSkKIAogICAgIGRlZiBleGVjdXRlKHNlbGYsIG9wdGlvbnMs
IGFyZ3MsIHRvb2wpOgogICAgICAgICAoYnVpbGRlciwgbGF0ZXN0X3JldmlzaW9uKSA9IHNlbGYu
X2J1aWxkZXJfdG9fZXhwbGFpbigpCi0gICAgICAgIHN0YXJ0X3JldmlzaW9uID0gc2VsZi50b29s
LnVzZXIucHJvbXB0KCJSZXZpc2lvbiB0byB3YWxrIGJhY2t3YXJkcyBmcm9tPyBbJXNdICIgJSBs
YXRlc3RfcmV2aXNpb24pIG9yIGxhdGVzdF9yZXZpc2lvbgorICAgICAgICBzdGFydF9yZXZpc2lv
biA9IHNlbGYuX3Rvb2wudXNlci5wcm9tcHQoIlJldmlzaW9uIHRvIHdhbGsgYmFja3dhcmRzIGZy
b20/IFslc10gIiAlIGxhdGVzdF9yZXZpc2lvbikgb3IgbGF0ZXN0X3JldmlzaW9uCiAgICAgICAg
IGlmIG5vdCBzdGFydF9yZXZpc2lvbjoKICAgICAgICAgICAgIHByaW50ICJSZXZpc2lvbiByZXF1
aXJlZC4iCiAgICAgICAgICAgICByZXR1cm4gMQpJbmRleDogV2ViS2l0VG9vbHMvU2NyaXB0cy93
ZWJraXRweS90b29sL2NvbW1hbmRzL3F1ZXVlcy5weQo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRUb29s
cy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvcXVldWVzLnB5CShyZXZpc2lvbiA2Nzkx
NCkKKysrIFdlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5kcy9xdWV1ZXMu
cHkJKHdvcmtpbmcgY29weSkKQEAgLTY0LDIwICs2NCwyMCBAQCBjbGFzcyBBYnN0cmFjdFF1ZXVl
KENvbW1hbmQsIFF1ZXVlRW5naW5lCiAKICAgICBkZWYgX2NjX3dhdGNoZXJzKHNlbGYsIGJ1Z19p
ZCk6CiAgICAgICAgIHRyeToKLSAgICAgICAgICAgIHNlbGYudG9vbC5idWdzLmFkZF9jY190b19i
dWcoYnVnX2lkLCBzZWxmLndhdGNoZXJzKQorICAgICAgICAgICAgc2VsZi5fdG9vbC5idWdzLmFk
ZF9jY190b19idWcoYnVnX2lkLCBzZWxmLndhdGNoZXJzKQogICAgICAgICBleGNlcHQgRXhjZXB0
aW9uLCBlOgogICAgICAgICAgICAgdHJhY2ViYWNrLnByaW50X2V4YygpCiAgICAgICAgICAgICBs
b2coIkZhaWxlZCB0byBDQyB3YXRjaGVycy4iKQogCiAgICAgZGVmIHJ1bl93ZWJraXRfcGF0Y2go
c2VsZiwgYXJncyk6Ci0gICAgICAgIHdlYmtpdF9wYXRjaF9hcmdzID0gW3NlbGYudG9vbC5wYXRo
KCldCisgICAgICAgIHdlYmtpdF9wYXRjaF9hcmdzID0gW3NlbGYuX3Rvb2wucGF0aCgpXQogICAg
ICAgICAjIEZJWE1FOiBUaGlzIGlzIGEgaGFjaywgd2Ugc2hvdWxkIGhhdmUgYSBtb3JlIGdlbmVy
YWwgd2F5IHRvIHBhc3MgZ2xvYmFsIG9wdGlvbnMuCiAgICAgICAgICMgRklYTUU6IFdlIG11c3Qg
YWx3YXlzIHBhc3MgZ2xvYmFsIG9wdGlvbnMgYW5kIHRoZWlyIHZhbHVlIGluIG9uZSBhcmd1bWVu
dAogICAgICAgICAjIGJlY2F1c2Ugb3VyIGdsb2JhbCBvcHRpb24gY29kZSBsb29rcyBmb3IgdGhl
IGZpcnN0IGFyZ3VtZW50IHdoaWNoIGRvZXMKICAgICAgICAgIyBub3QgYmVnaW4gd2l0aCAiLSIg
YW5kIGFzc3VtZXMgdGhhdCBpcyB0aGUgY29tbWFuZCBuYW1lLgotICAgICAgICB3ZWJraXRfcGF0
Y2hfYXJncyArPSBbIi0tc3RhdHVzLWhvc3Q9JXMiICUgc2VsZi50b29sLnN0YXR1c19zZXJ2ZXIu
aG9zdF0KKyAgICAgICAgd2Via2l0X3BhdGNoX2FyZ3MgKz0gWyItLXN0YXR1cy1ob3N0PSVzIiAl
IHNlbGYuX3Rvb2wuc3RhdHVzX3NlcnZlci5ob3N0XQogICAgICAgICB3ZWJraXRfcGF0Y2hfYXJn
cy5leHRlbmQoYXJncykKLSAgICAgICAgcmV0dXJuIHNlbGYudG9vbC5leGVjdXRpdmUucnVuX2Fu
ZF90aHJvd19pZl9mYWlsKHdlYmtpdF9wYXRjaF9hcmdzKQorICAgICAgICByZXR1cm4gc2VsZi5f
dG9vbC5leGVjdXRpdmUucnVuX2FuZF90aHJvd19pZl9mYWlsKHdlYmtpdF9wYXRjaF9hcmdzKQog
CiAgICAgZGVmIF9sb2dfZGlyZWN0b3J5KHNlbGYpOgogICAgICAgICByZXR1cm4gIiVzLWxvZ3Mi
ICUgc2VsZi5uYW1lCkBAIC05MSwxNiArOTEsMTYgQEAgY2xhc3MgQWJzdHJhY3RRdWV1ZShDb21t
YW5kLCBRdWV1ZUVuZ2luZQogICAgICAgICByYWlzZSBOb3RJbXBsZW1lbnRlZEVycm9yLCAic3Vi
Y2xhc3NlcyBtdXN0IGltcGxlbWVudCIKIAogICAgIGRlZiBiZWdpbl93b3JrX3F1ZXVlKHNlbGYp
OgotICAgICAgICBsb2coIkNBVVRJT046ICVzIHdpbGwgZGlzY2FyZCBhbGwgbG9jYWwgY2hhbmdl
cyBpbiBcIiVzXCIiICUgKHNlbGYubmFtZSwgc2VsZi50b29sLnNjbSgpLmNoZWNrb3V0X3Jvb3Qp
KQorICAgICAgICBsb2coIkNBVVRJT046ICVzIHdpbGwgZGlzY2FyZCBhbGwgbG9jYWwgY2hhbmdl
cyBpbiBcIiVzXCIiICUgKHNlbGYubmFtZSwgc2VsZi5fdG9vbC5zY20oKS5jaGVja291dF9yb290
KSkKICAgICAgICAgaWYgc2VsZi5vcHRpb25zLmNvbmZpcm06Ci0gICAgICAgICAgICByZXNwb25z
ZSA9IHNlbGYudG9vbC51c2VyLnByb21wdCgiQXJlIHlvdSBzdXJlPyAgVHlwZSBcInllc1wiIHRv
IGNvbnRpbnVlOiAiKQorICAgICAgICAgICAgcmVzcG9uc2UgPSBzZWxmLl90b29sLnVzZXIucHJv
bXB0KCJBcmUgeW91IHN1cmU/ICBUeXBlIFwieWVzXCIgdG8gY29udGludWU6ICIpCiAgICAgICAg
ICAgICBpZiAocmVzcG9uc2UgIT0gInllcyIpOgogICAgICAgICAgICAgICAgIGVycm9yKCJVc2Vy
IGRlY2xpbmVkLiIpCiAgICAgICAgIGxvZygiUnVubmluZyBXZWJLaXQgJXMuIiAlIHNlbGYubmFt
ZSkKLSAgICAgICAgc2VsZi50b29sLnN0YXR1c19zZXJ2ZXIudXBkYXRlX3N0YXR1cyhzZWxmLm5h
bWUsICJTdGFydGluZyBRdWV1ZSIpCisgICAgICAgIHNlbGYuX3Rvb2wuc3RhdHVzX3NlcnZlci51
cGRhdGVfc3RhdHVzKHNlbGYubmFtZSwgIlN0YXJ0aW5nIFF1ZXVlIikKIAogICAgIGRlZiBzdG9w
X3dvcmtfcXVldWUoc2VsZiwgcmVhc29uKToKLSAgICAgICAgc2VsZi50b29sLnN0YXR1c19zZXJ2
ZXIudXBkYXRlX3N0YXR1cyhzZWxmLm5hbWUsICJTdG9wcGluZyBRdWV1ZSwgcmVhc29uOiAlcyIg
JSByZWFzb24pCisgICAgICAgIHNlbGYuX3Rvb2wuc3RhdHVzX3NlcnZlci51cGRhdGVfc3RhdHVz
KHNlbGYubmFtZSwgIlN0b3BwaW5nIFF1ZXVlLCByZWFzb246ICVzIiAlIHJlYXNvbikKIAogICAg
IGRlZiBzaG91bGRfY29udGludWVfd29ya19xdWV1ZShzZWxmKToKICAgICAgICAgc2VsZi5faXRl
cmF0aW9uX2NvdW50ICs9IDEKQEAgLTEyMiw4ICsxMjIsOCBAQCBjbGFzcyBBYnN0cmFjdFF1ZXVl
KENvbW1hbmQsIFF1ZXVlRW5naW5lCiAKICAgICBkZWYgZXhlY3V0ZShzZWxmLCBvcHRpb25zLCBh
cmdzLCB0b29sLCBlbmdpbmU9UXVldWVFbmdpbmUpOgogICAgICAgICBzZWxmLm9wdGlvbnMgPSBv
cHRpb25zICAjIEZJWE1FOiBUaGlzIGNvZGUgaXMgd3JvbmcuICBDb21tYW5kLm9wdGlvbnMgaXMg
YSBsaXN0LCB0aGlzIGFzc3VtZXMgYW4gT3B0aW9ucyBlbGVtZW50IQotICAgICAgICBzZWxmLnRv
b2wgPSB0b29sICAjIEZJWE1FOiBUaGlzIGNvZGUgaXMgd3JvbmcgdG9vISAgQ29tbWFuZC5iaW5k
X3RvX3Rvb2wgaGFuZGxlcyB0aGlzIQotICAgICAgICByZXR1cm4gZW5naW5lKHNlbGYubmFtZSwg
c2VsZiwgc2VsZi50b29sLndha2V1cF9ldmVudCkucnVuKCkKKyAgICAgICAgc2VsZi5fdG9vbCA9
IHRvb2wgICMgRklYTUU6IFRoaXMgY29kZSBpcyB3cm9uZyB0b28hICBDb21tYW5kLmJpbmRfdG9f
dG9vbCBoYW5kbGVzIHRoaXMhCisgICAgICAgIHJldHVybiBlbmdpbmUoc2VsZi5uYW1lLCBzZWxm
LCBzZWxmLl90b29sLndha2V1cF9ldmVudCkucnVuKCkKIAogICAgIEBjbGFzc21ldGhvZAogICAg
IGRlZiBfbG9nX2Zyb21fc2NyaXB0X2Vycm9yX2Zvcl91cGxvYWQoY2xzLCBzY3JpcHRfZXJyb3Is
IG91dHB1dF9saW1pdD1Ob25lKToKQEAgLTE1Niw3ICsxNTYsNyBAQCBjbGFzcyBGZWVkZXJRdWV1
ZShBYnN0cmFjdFF1ZXVlKToKICAgICBkZWYgYmVnaW5fd29ya19xdWV1ZShzZWxmKToKICAgICAg
ICAgQWJzdHJhY3RRdWV1ZS5iZWdpbl93b3JrX3F1ZXVlKHNlbGYpCiAgICAgICAgIHNlbGYuZmVl
ZGVycyA9IFsKLSAgICAgICAgICAgIENvbW1pdFF1ZXVlRmVlZGVyKHNlbGYudG9vbCksCisgICAg
ICAgICAgICBDb21taXRRdWV1ZUZlZWRlcihzZWxmLl90b29sKSwKICAgICAgICAgXQogCiAgICAg
ZGVmIG5leHRfd29ya19pdGVtKHNlbGYpOgpAQCAtMTkxLDEwICsxOTEsMTAgQEAgY2xhc3MgRmVl
ZGVyUXVldWUoQWJzdHJhY3RRdWV1ZSk6CiAKIGNsYXNzIEFic3RyYWN0UGF0Y2hRdWV1ZShBYnN0
cmFjdFF1ZXVlKToKICAgICBkZWYgX3VwZGF0ZV9zdGF0dXMoc2VsZiwgbWVzc2FnZSwgcGF0Y2g9
Tm9uZSwgcmVzdWx0c19maWxlPU5vbmUpOgotICAgICAgICBzZWxmLnRvb2wuc3RhdHVzX3NlcnZl
ci51cGRhdGVfc3RhdHVzKHNlbGYubmFtZSwgbWVzc2FnZSwgcGF0Y2gsIHJlc3VsdHNfZmlsZSkK
KyAgICAgICAgc2VsZi5fdG9vbC5zdGF0dXNfc2VydmVyLnVwZGF0ZV9zdGF0dXMoc2VsZi5uYW1l
LCBtZXNzYWdlLCBwYXRjaCwgcmVzdWx0c19maWxlKQogCiAgICAgZGVmIF9mZXRjaF9uZXh0X3dv
cmtfaXRlbShzZWxmKToKLSAgICAgICAgcmV0dXJuIHNlbGYudG9vbC5zdGF0dXNfc2VydmVyLm5l
eHRfd29ya19pdGVtKHNlbGYubmFtZSkKKyAgICAgICAgcmV0dXJuIHNlbGYuX3Rvb2wuc3RhdHVz
X3NlcnZlci5uZXh0X3dvcmtfaXRlbShzZWxmLm5hbWUpCiAKICAgICBkZWYgX2RpZF9wYXNzKHNl
bGYsIHBhdGNoKToKICAgICAgICAgc2VsZi5fdXBkYXRlX3N0YXR1cyhzZWxmLl9wYXNzX3N0YXR1
cywgcGF0Y2gpCkBAIC0yMTcsMTMgKzIxNywxMyBAQCBjbGFzcyBDb21taXRRdWV1ZShBYnN0cmFj
dFBhdGNoUXVldWUsIFN0CiAKICAgICBkZWYgYmVnaW5fd29ya19xdWV1ZShzZWxmKToKICAgICAg
ICAgQWJzdHJhY3RQYXRjaFF1ZXVlLmJlZ2luX3dvcmtfcXVldWUoc2VsZikKLSAgICAgICAgc2Vs
Zi5jb21taXR0ZXJfdmFsaWRhdG9yID0gQ29tbWl0dGVyVmFsaWRhdG9yKHNlbGYudG9vbC5idWdz
KQorICAgICAgICBzZWxmLmNvbW1pdHRlcl92YWxpZGF0b3IgPSBDb21taXR0ZXJWYWxpZGF0b3Io
c2VsZi5fdG9vbC5idWdzKQogCiAgICAgZGVmIG5leHRfd29ya19pdGVtKHNlbGYpOgogICAgICAg
ICBwYXRjaF9pZCA9IHNlbGYuX2ZldGNoX25leHRfd29ya19pdGVtKCkKICAgICAgICAgaWYgbm90
IHBhdGNoX2lkOgogICAgICAgICAgICAgcmV0dXJuIE5vbmUKLSAgICAgICAgcmV0dXJuIHNlbGYu
dG9vbC5idWdzLmZldGNoX2F0dGFjaG1lbnQocGF0Y2hfaWQpCisgICAgICAgIHJldHVybiBzZWxm
Ll90b29sLmJ1Z3MuZmV0Y2hfYXR0YWNobWVudChwYXRjaF9pZCkKIAogICAgIGRlZiBfY2FuX2J1
aWxkX2FuZF90ZXN0X3dpdGhvdXRfcGF0Y2goc2VsZik6CiAgICAgICAgIHRyeToKQEAgLTI4NSw3
ICsyODUsNyBAQCBjbGFzcyBDb21taXRRdWV1ZShBYnN0cmFjdFBhdGNoUXVldWUsIFN0CiAgICAg
ZGVmIF9yZXZhbGlkYXRlX3BhdGNoKHNlbGYsIHBhdGNoKToKICAgICAgICAgIyBCdWdzIG1pZ2h0
IGdldCBjbG9zZWQsIG9yIHBhdGNoZXMgbWlnaHQgYmUgb2Jzb2xldGVkIG9yIHItJ2Qgd2hpbGUg
dGhlCiAgICAgICAgICMgY29tbWl0LXF1ZXVlIGlzIHByb2Nlc3NpbmcuICBEbyBvbmUgbGFzdCBt
aW51dGUgY2hlY2sgYmVmb3JlIGxhbmRpbmcuCi0gICAgICAgIHBhdGNoID0gc2VsZi50b29sLmJ1
Z3MuZmV0Y2hfYXR0YWNobWVudChwYXRjaC5pZCgpKQorICAgICAgICBwYXRjaCA9IHNlbGYuX3Rv
b2wuYnVncy5mZXRjaF9hdHRhY2htZW50KHBhdGNoLmlkKCkpCiAgICAgICAgIGlmIHBhdGNoLmlz
X29ic29sZXRlKCk6CiAgICAgICAgICAgICByZXR1cm4gTm9uZQogICAgICAgICBpZiBwYXRjaC5i
dWcoKS5pc19jbG9zZWQoKToKQEAgLTM3Nyw3ICszNzcsNyBAQCBjbGFzcyBSaWV0dmVsZFVwbG9h
ZFF1ZXVlKEFic3RyYWN0UGF0Y2hRCiAgICAgIyBBYnN0cmFjdFBhdGNoUXVldWUgbWV0aG9kcwog
CiAgICAgZGVmIG5leHRfd29ya19pdGVtKHNlbGYpOgotICAgICAgICBwYXRjaF9pZCA9IHNlbGYu
dG9vbC5idWdzLnF1ZXJpZXMuZmV0Y2hfZmlyc3RfcGF0Y2hfZnJvbV9yaWV0dmVsZF9xdWV1ZSgp
CisgICAgICAgIHBhdGNoX2lkID0gc2VsZi5fdG9vbC5idWdzLnF1ZXJpZXMuZmV0Y2hfZmlyc3Rf
cGF0Y2hfZnJvbV9yaWV0dmVsZF9xdWV1ZSgpCiAgICAgICAgIGlmIHBhdGNoX2lkOgogICAgICAg
ICAgICAgcmV0dXJuIHBhdGNoX2lkCiAgICAgICAgIHNlbGYuX3VwZGF0ZV9zdGF0dXMoIkVtcHR5
IHF1ZXVlIikKQEAgLTQwMiw3ICs0MDIsNyBAQCBjbGFzcyBSaWV0dmVsZFVwbG9hZFF1ZXVlKEFi
c3RyYWN0UGF0Y2hRCiAKICAgICBkZWYgaGFuZGxlX3VuZXhwZWN0ZWRfZXJyb3Ioc2VsZiwgcGF0
Y2gsIG1lc3NhZ2UpOgogICAgICAgICBsb2cobWVzc2FnZSkKLSAgICAgICAgc2VsZi5fcmVqZWN0
X3BhdGNoKHNlbGYudG9vbCwgcGF0Y2guaWQoKSkKKyAgICAgICAgc2VsZi5fcmVqZWN0X3BhdGNo
KHNlbGYuX3Rvb2wsIHBhdGNoLmlkKCkpCiAKICAgICAjIFN0ZXBTZXF1ZW5jZUVycm9ySGFuZGxl
ciBtZXRob2RzCiAKQEAgLTQyNiwxMCArNDI2LDEwIEBAIGNsYXNzIEFic3RyYWN0UmV2aWV3UXVl
dWUoQWJzdHJhY3RQYXRjaFEKICAgICAgICAgcmV0dXJuIHNlbGYubmFtZQogCiAgICAgZGVmIGZl
dGNoX3BvdGVudGlhbF9wYXRjaF9pZHMoc2VsZik6Ci0gICAgICAgIHJldHVybiBzZWxmLnRvb2wu
YnVncy5xdWVyaWVzLmZldGNoX2F0dGFjaG1lbnRfaWRzX2Zyb21fcmV2aWV3X3F1ZXVlKCkKKyAg
ICAgICAgcmV0dXJuIHNlbGYuX3Rvb2wuYnVncy5xdWVyaWVzLmZldGNoX2F0dGFjaG1lbnRfaWRz
X2Zyb21fcmV2aWV3X3F1ZXVlKCkKIAogICAgIGRlZiBzdGF0dXNfc2VydmVyKHNlbGYpOgotICAg
ICAgICByZXR1cm4gc2VsZi50b29sLnN0YXR1c19zZXJ2ZXIKKyAgICAgICAgcmV0dXJuIHNlbGYu
X3Rvb2wuc3RhdHVzX3NlcnZlcgogCiAgICAgZGVmIGlzX3Rlcm1pbmFsX3N0YXR1cyhzZWxmLCBz
dGF0dXMpOgogICAgICAgICByZXR1cm4gc3RhdHVzID09ICJQYXNzIiBvciBzdGF0dXMgPT0gIkZh
aWwiIG9yIHN0YXR1cy5zdGFydHN3aXRoKCJFcnJvcjoiKQpAQCAtNDQzLDcgKzQ0Myw3IEBAIGNs
YXNzIEFic3RyYWN0UmV2aWV3UXVldWUoQWJzdHJhY3RQYXRjaFEKICAgICBkZWYgbmV4dF93b3Jr
X2l0ZW0oc2VsZik6CiAgICAgICAgIHBhdGNoX2lkID0gc2VsZi5fcGF0Y2hlcy5uZXh0KCkKICAg
ICAgICAgaWYgcGF0Y2hfaWQ6Ci0gICAgICAgICAgICByZXR1cm4gc2VsZi50b29sLmJ1Z3MuZmV0
Y2hfYXR0YWNobWVudChwYXRjaF9pZCkKKyAgICAgICAgICAgIHJldHVybiBzZWxmLl90b29sLmJ1
Z3MuZmV0Y2hfYXR0YWNobWVudChwYXRjaF9pZCkKIAogICAgIGRlZiBzaG91bGRfcHJvY2VlZF93
aXRoX3dvcmtfaXRlbShzZWxmLCBwYXRjaCk6CiAgICAgICAgIHJhaXNlIE5vdEltcGxlbWVudGVk
RXJyb3IsICJzdWJjbGFzc2VzIG11c3QgaW1wbGVtZW50IgpJbmRleDogV2ViS2l0VG9vbHMvU2Ny
aXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL3F1ZXVlc191bml0dGVzdC5weQo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBXZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvcXVldWVzX3Vu
aXR0ZXN0LnB5CShyZXZpc2lvbiA2NzkxNCkKKysrIFdlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0
cHkvdG9vbC9jb21tYW5kcy9xdWV1ZXNfdW5pdHRlc3QucHkJKHdvcmtpbmcgY29weSkKQEAgLTE4
Nyw3ICsxODcsNyBAQCBjbGFzcyBTZWNvbmRUaG91Z2h0c0NvbW1pdFF1ZXVlKENvbW1pdFF1CiAg
ICAgICAgICAgICAiYXR0YWNoZXJfZW1haWwiOiAiQ29udHJpYnV0ZXIxIiwKICAgICAgICAgfQog
ICAgICAgICBwYXRjaCA9IEF0dGFjaG1lbnQoYXR0YWNobWVudF9kaWN0aW9uYXJ5LCBOb25lKQot
ICAgICAgICBzZWxmLnRvb2wuYnVncy5zZXRfb3ZlcnJpZGVfcGF0Y2gocGF0Y2gpCisgICAgICAg
IHNlbGYuX3Rvb2wuYnVncy5zZXRfb3ZlcnJpZGVfcGF0Y2gocGF0Y2gpCiAgICAgICAgIHJldHVy
biBUcnVlCiAKIApJbmRleDogV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1h
bmRzL3JlYmFzZWxpbmUucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJr
aXRweS90b29sL2NvbW1hbmRzL3JlYmFzZWxpbmUucHkJKHJldmlzaW9uIDY3OTE0KQorKysgV2Vi
S2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL3JlYmFzZWxpbmUucHkJKHdv
cmtpbmcgY29weSkKQEAgLTcyLDE1ICs3MiwxNSBAQCBjbGFzcyBSZWJhc2VsaW5lKEFic3RyYWN0
RGVjbGFyYXRpdmVDb21tCiAKICAgICAjIEZJWE1FOiBUaGlzIHNob3VsZCBzaGFyZSBtb3JlIGNv
ZGUgd2l0aCBGYWlsdXJlUmVhc29uLl9idWlsZGVyX3RvX2V4cGxhaW4KICAgICBkZWYgX2J1aWxk
ZXJfdG9fcHVsbF9mcm9tKHNlbGYpOgotICAgICAgICBidWlsZGVyX3N0YXR1c2VzID0gc2VsZi50
b29sLmJ1aWxkYm90LmJ1aWxkZXJfc3RhdHVzZXMoKQorICAgICAgICBidWlsZGVyX3N0YXR1c2Vz
ID0gc2VsZi5fdG9vbC5idWlsZGJvdC5idWlsZGVyX3N0YXR1c2VzKCkKICAgICAgICAgcmVkX3N0
YXR1c2VzID0gW3N0YXR1cyBmb3Igc3RhdHVzIGluIGJ1aWxkZXJfc3RhdHVzZXMgaWYgbm90IHN0
YXR1c1siaXNfZ3JlZW4iXV0KICAgICAgICAgcHJpbnQgIiVzIGZhaWxpbmciICUgKHBsdXJhbGl6
ZSgiYnVpbGRlciIsIGxlbihyZWRfc3RhdHVzZXMpKSkKICAgICAgICAgYnVpbGRlcl9jaG9pY2Vz
ID0gW3N0YXR1c1sibmFtZSJdIGZvciBzdGF0dXMgaW4gcmVkX3N0YXR1c2VzXQotICAgICAgICBj
aG9zZW5fbmFtZSA9IHNlbGYudG9vbC51c2VyLnByb21wdF93aXRoX2xpc3QoIldoaWNoIGJ1aWxk
ZXIgdG8gcHVsbCByZXN1bHRzIGZyb206IiwgYnVpbGRlcl9jaG9pY2VzKQorICAgICAgICBjaG9z
ZW5fbmFtZSA9IHNlbGYuX3Rvb2wudXNlci5wcm9tcHRfd2l0aF9saXN0KCJXaGljaCBidWlsZGVy
IHRvIHB1bGwgcmVzdWx0cyBmcm9tOiIsIGJ1aWxkZXJfY2hvaWNlcykKICAgICAgICAgIyBGSVhN
RTogcHJvbXB0X3dpdGhfbGlzdCBzaG91bGQgcmVhbGx5IHRha2UgYSBzZXQgb2Ygb2JqZWN0cyBh
bmQgYSBzZXQgb2YgbmFtZXMgYW5kIHRoZW4gcmV0dXJuIHRoZSBvYmplY3QuCiAgICAgICAgIGZv
ciBzdGF0dXMgaW4gcmVkX3N0YXR1c2VzOgogICAgICAgICAgICAgaWYgc3RhdHVzWyJuYW1lIl0g
PT0gY2hvc2VuX25hbWU6Ci0gICAgICAgICAgICAgICAgcmV0dXJuIChzZWxmLnRvb2wuYnVpbGRi
b3QuYnVpbGRlcl93aXRoX25hbWUoY2hvc2VuX25hbWUpLCBzdGF0dXNbImJ1aWxkX251bWJlciJd
KQorICAgICAgICAgICAgICAgIHJldHVybiAoc2VsZi5fdG9vbC5idWlsZGJvdC5idWlsZGVyX3dp
dGhfbmFtZShjaG9zZW5fbmFtZSksIHN0YXR1c1siYnVpbGRfbnVtYmVyIl0pCiAKICAgICBkZWYg
X3JlcGxhY2VfZXhwZWN0YXRpb25fd2l0aF9yZW1vdGVfcmVzdWx0KHNlbGYsIGxvY2FsX2ZpbGUs
IHJlbW90ZV9maWxlKToKICAgICAgICAgKGRvd25sb2FkZWRfZmlsZSwgaGVhZGVycykgPSB1cmxs
aWIudXJscmV0cmlldmUocmVtb3RlX2ZpbGUpCkluZGV4OiBXZWJLaXRUb29scy9TY3JpcHRzL3dl
YmtpdHB5L3Rvb2wvY29tbWFuZHMvc2hlcmlmZmJvdC5weQo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRU
b29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvc2hlcmlmZmJvdC5weQkocmV2aXNp
b24gNjc5MTQpCisrKyBXZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMv
c2hlcmlmZmJvdC5weQkod29ya2luZyBjb3B5KQpAQCAtNTAsOSArNTAsOSBAQCBjbGFzcyBTaGVy
aWZmQm90KEFic3RyYWN0UXVldWUsIFN0ZXBTZXF1CiAKICAgICBkZWYgYmVnaW5fd29ya19xdWV1
ZShzZWxmKToKICAgICAgICAgQWJzdHJhY3RRdWV1ZS5iZWdpbl93b3JrX3F1ZXVlKHNlbGYpCi0g
ICAgICAgIHNlbGYuX3NoZXJpZmYgPSBTaGVyaWZmKHNlbGYudG9vbCwgc2VsZikKLSAgICAgICAg
c2VsZi5faXJjX2JvdCA9IFNoZXJpZmZJUkNCb3Qoc2VsZi50b29sLCBzZWxmLl9zaGVyaWZmKQot
ICAgICAgICBzZWxmLnRvb2wuZW5zdXJlX2lyY19jb25uZWN0ZWQoc2VsZi5faXJjX2JvdC5pcmNf
ZGVsZWdhdGUoKSkKKyAgICAgICAgc2VsZi5fc2hlcmlmZiA9IFNoZXJpZmYoc2VsZi5fdG9vbCwg
c2VsZikKKyAgICAgICAgc2VsZi5faXJjX2JvdCA9IFNoZXJpZmZJUkNCb3Qoc2VsZi5fdG9vbCwg
c2VsZi5fc2hlcmlmZikKKyAgICAgICAgc2VsZi5fdG9vbC5lbnN1cmVfaXJjX2Nvbm5lY3RlZChz
ZWxmLl9pcmNfYm90LmlyY19kZWxlZ2F0ZSgpKQogCiAgICAgZGVmIHdvcmtfaXRlbV9sb2dfcGF0
aChzZWxmLCBuZXdfZmFpbHVyZXMpOgogICAgICAgICByZXR1cm4gb3MucGF0aC5qb2luKCIlcy1s
b2dzIiAlIHNlbGYubmFtZSwgIiVzLmxvZyIgJSBuZXdfZmFpbHVyZXMua2V5cygpWzBdKQpAQCAt
ODYsMTIgKzg2LDEyIEBAIGNsYXNzIFNoZXJpZmZCb3QoQWJzdHJhY3RRdWV1ZSwgU3RlcFNlcXUK
ICAgICAgICAgc2VsZi5fdXBkYXRlKCkKIAogICAgICAgICAjIFdlIGRvIG9uZSByZWFkIGZyb20g
YnVpbGRib3QgdG8gZW5zdXJlIGEgY29uc2lzdGVudCB2aWV3LgotICAgICAgICByZXZpc2lvbnNf
Y2F1c2luZ19mYWlsdXJlcyA9IHNlbGYudG9vbC5idWlsZGJvdC5yZXZpc2lvbnNfY2F1c2luZ19m
YWlsdXJlcygpCisgICAgICAgIHJldmlzaW9uc19jYXVzaW5nX2ZhaWx1cmVzID0gc2VsZi5fdG9v
bC5idWlsZGJvdC5yZXZpc2lvbnNfY2F1c2luZ19mYWlsdXJlcygpCiAKICAgICAgICAgIyBTaW1p
bGFybHksIHdlIHJlYWQgb25jZSBmcm9tIG91ciB0aGUgc3RhdHVzX3NlcnZlci4KICAgICAgICAg
b2xkX2ZhaWxpbmdfc3ZuX3JldmlzaW9ucyA9IFtdCiAgICAgICAgIGZvciBzdm5fcmV2aXNpb24g
aW4gcmV2aXNpb25zX2NhdXNpbmdfZmFpbHVyZXMua2V5cygpOgotICAgICAgICAgICAgaWYgc2Vs
Zi50b29sLnN0YXR1c19zZXJ2ZXIuc3ZuX3JldmlzaW9uKHN2bl9yZXZpc2lvbik6CisgICAgICAg
ICAgICBpZiBzZWxmLl90b29sLnN0YXR1c19zZXJ2ZXIuc3ZuX3JldmlzaW9uKHN2bl9yZXZpc2lv
bik6CiAgICAgICAgICAgICAgICAgb2xkX2ZhaWxpbmdfc3ZuX3JldmlzaW9ucy5hcHBlbmQoc3Zu
X3JldmlzaW9uKQogCiAgICAgICAgIG5ld19mYWlsdXJlcyA9IHNlbGYuX25ld19mYWlsdXJlcyhy
ZXZpc2lvbnNfY2F1c2luZ19mYWlsdXJlcywKQEAgLTEwOCw3ICsxMDgsNyBAQCBjbGFzcyBTaGVy
aWZmQm90KEFic3RyYWN0UXVldWUsIFN0ZXBTZXF1CiAgICAgICAgIGJsYW1lX2xpc3QgPSBuZXdf
ZmFpbHVyZXMua2V5cygpCiAgICAgICAgIGZvciBzdm5fcmV2aXNpb24sIGJ1aWxkZXJzIGluIG5l
d19mYWlsdXJlcy5pdGVtcygpOgogICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgIGNv
bW1pdF9pbmZvID0gc2VsZi50b29sLmNoZWNrb3V0KCkuY29tbWl0X2luZm9fZm9yX3JldmlzaW9u
KHN2bl9yZXZpc2lvbikKKyAgICAgICAgICAgICAgICBjb21taXRfaW5mbyA9IHNlbGYuX3Rvb2wu
Y2hlY2tvdXQoKS5jb21taXRfaW5mb19mb3JfcmV2aXNpb24oc3ZuX3JldmlzaW9uKQogICAgICAg
ICAgICAgICAgIGlmIG5vdCBjb21taXRfaW5mbzoKICAgICAgICAgICAgICAgICAgICAgcHJpbnQg
IkZBSUxFRCB0byBmZXRjaCBDb21taXRJbmZvIGZvciByJXMsIGxpa2VseSBtaXNzaW5nIENoYW5n
ZUxvZyIgJSByZXZpc2lvbgogICAgICAgICAgICAgICAgICAgICBjb250aW51ZQpAQCAtMTIwLDcg
KzEyMCw3IEBAIGNsYXNzIFNoZXJpZmZCb3QoQWJzdHJhY3RRdWV1ZSwgU3RlcFNlcXUKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVp
bGRlcnMpCiAgICAgICAgICAgICBmaW5hbGx5OgogICAgICAgICAgICAgICAgIGZvciBidWlsZGVy
IGluIGJ1aWxkZXJzOgotICAgICAgICAgICAgICAgICAgICBzZWxmLnRvb2wuc3RhdHVzX3NlcnZl
ci51cGRhdGVfc3ZuX3JldmlzaW9uKHN2bl9yZXZpc2lvbiwKKyAgICAgICAgICAgICAgICAgICAg
c2VsZi5fdG9vbC5zdGF0dXNfc2VydmVyLnVwZGF0ZV9zdm5fcmV2aXNpb24oc3ZuX3JldmlzaW9u
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGJ1aWxkZXIubmFtZSgpKQogICAgICAgICByZXR1cm4gVHJ1ZQogCkluZGV4OiBX
ZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvdXBsb2FkLnB5Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5kcy91cGxv
YWQucHkJKHJldmlzaW9uIDY3OTE0KQorKysgV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS90
b29sL2NvbW1hbmRzL3VwbG9hZC5weQkod29ya2luZyBjb3B5KQpAQCAtODIsMTQgKzgyLDE0IEBA
IGNsYXNzIENsZWFuUGVuZGluZ0NvbW1pdChBYnN0cmFjdERlY2xhcmEKICAgICBkZWYgZXhlY3V0
ZShzZWxmLCBvcHRpb25zLCBhcmdzLCB0b29sKToKICAgICAgICAgY29tbWl0dGVycyA9IENvbW1p
dHRlckxpc3QoKQogICAgICAgICBmb3IgYnVnX2lkIGluIHRvb2wuYnVncy5xdWVyaWVzLmZldGNo
X2J1Z19pZHNfZnJvbV9wZW5kaW5nX2NvbW1pdF9saXN0KCk6Ci0gICAgICAgICAgICBidWcgPSBz
ZWxmLnRvb2wuYnVncy5mZXRjaF9idWcoYnVnX2lkKQorICAgICAgICAgICAgYnVnID0gc2VsZi5f
dG9vbC5idWdzLmZldGNoX2J1ZyhidWdfaWQpCiAgICAgICAgICAgICBwYXRjaGVzID0gYnVnLnBh
dGNoZXMoaW5jbHVkZV9vYnNvbGV0ZT1UcnVlKQogICAgICAgICAgICAgZm9yIHBhdGNoIGluIHBh
dGNoZXM6CiAgICAgICAgICAgICAgICAgZmxhZ3NfdG9fY2xlYXIgPSBzZWxmLl9mbGFnc190b19j
bGVhcl9vbl9wYXRjaChwYXRjaCkKICAgICAgICAgICAgICAgICBpZiBub3QgZmxhZ3NfdG9fY2xl
YXI6CiAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCiAgICAgICAgICAgICAgICAgbWVzc2Fn
ZSA9ICJDbGVhcmVkICVzIGZyb20gb2Jzb2xldGUgYXR0YWNobWVudCAlcyBzbyB0aGF0IHRoaXMg
YnVnIGRvZXMgbm90IGFwcGVhciBpbiBodHRwOi8vd2Via2l0Lm9yZy9wZW5kaW5nLWNvbW1pdC4i
ICUgKGZsYWdzX3RvX2NsZWFyLCBwYXRjaC5pZCgpKQotICAgICAgICAgICAgICAgIHNlbGYudG9v
bC5idWdzLm9ic29sZXRlX2F0dGFjaG1lbnQocGF0Y2guaWQoKSwgbWVzc2FnZSkKKyAgICAgICAg
ICAgICAgICBzZWxmLl90b29sLmJ1Z3Mub2Jzb2xldGVfYXR0YWNobWVudChwYXRjaC5pZCgpLCBt
ZXNzYWdlKQogCiAKIGNsYXNzIEFzc2lnblRvQ29tbWl0dGVyKEFic3RyYWN0RGVjbGFyYXRpdmVD
b21tYW5kKToKQEAgLTEwNCw3ICsxMDQsNyBAQCBjbGFzcyBBc3NpZ25Ub0NvbW1pdHRlcihBYnN0
cmFjdERlY2xhcmF0CiAKICAgICBkZWYgX2Fzc2lnbl9idWdfdG9fbGFzdF9wYXRjaF9hdHRhY2hl
cihzZWxmLCBidWdfaWQpOgogICAgICAgICBjb21taXR0ZXJzID0gQ29tbWl0dGVyTGlzdCgpCi0g
ICAgICAgIGJ1ZyA9IHNlbGYudG9vbC5idWdzLmZldGNoX2J1ZyhidWdfaWQpCisgICAgICAgIGJ1
ZyA9IHNlbGYuX3Rvb2wuYnVncy5mZXRjaF9idWcoYnVnX2lkKQogICAgICAgICBpZiBub3QgYnVn
LmlzX3VuYXNzaWduZWQoKToKICAgICAgICAgICAgIGFzc2lnbmVkX3RvX2VtYWlsID0gYnVnLmFz
c2lnbmVkX3RvX2VtYWlsKCkKICAgICAgICAgICAgIGxvZygiQnVnICVzIGlzIGFscmVhZHkgYXNz
aWduZWQgdG8gJXMgKCVzKS4iICUgKGJ1Z19pZCwgYXNzaWduZWRfdG9fZW1haWwsIGNvbW1pdHRl
cnMuY29tbWl0dGVyX2J5X2VtYWlsKGFzc2lnbmVkX3RvX2VtYWlsKSkpCkBAIC0xMjgsNyArMTI4
LDcgQEAgY2xhc3MgQXNzaWduVG9Db21taXR0ZXIoQWJzdHJhY3REZWNsYXJhdAogICAgICAgICAg
ICAgcmV0dXJuCiAKICAgICAgICAgcmVhc3NpZ25fbWVzc2FnZSA9ICJBdHRhY2htZW50ICVzIHdh
cyBwb3N0ZWQgYnkgYSBjb21taXR0ZXIgYW5kIGhhcyByZXZpZXcrLCBhc3NpZ25pbmcgdG8gJXMg
Zm9yIGNvbW1pdC4iICUgKGxhdGVzdF9wYXRjaC5pZCgpLCBjb21taXR0ZXIuZnVsbF9uYW1lKQot
ICAgICAgICBzZWxmLnRvb2wuYnVncy5yZWFzc2lnbl9idWcoYnVnX2lkLCBjb21taXR0ZXIuYnVn
emlsbGFfZW1haWwoKSwgcmVhc3NpZ25fbWVzc2FnZSkKKyAgICAgICAgc2VsZi5fdG9vbC5idWdz
LnJlYXNzaWduX2J1ZyhidWdfaWQsIGNvbW1pdHRlci5idWd6aWxsYV9lbWFpbCgpLCByZWFzc2ln
bl9tZXNzYWdlKQogCiAgICAgZGVmIGV4ZWN1dGUoc2VsZiwgb3B0aW9ucywgYXJncywgdG9vbCk6
CiAgICAgICAgIGZvciBidWdfaWQgaW4gdG9vbC5idWdzLnF1ZXJpZXMuZmV0Y2hfYnVnX2lkc19m
cm9tX3BlbmRpbmdfY29tbWl0X2xpc3QoKToK
</data>

          </attachment>
      

    </bug>

</bugzilla>