<?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>31710</bug_id>
          
          <creation_ts>2009-11-20 00:40:18 -0800</creation_ts>
          <short_desc>MultiCommandTool should find Command objects automatically instead of with a manual list</short_desc>
          <delta_ts>2009-11-20 06:54:50 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</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>1</everconfirmed>
          <reporter name="Eric Seidel (no email)">eric</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>165236</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-11-20 00:40:18 -0800</bug_when>
    <thetext>MultiCommandTool should find Command objects automatically instead of with a manual list

This makes it easier to add commands, and it also brings the &quot;name&quot; of the command closer to its implementation (which has been a historical point of confusion).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>165237</commentid>
    <comment_count>1</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-11-20 00:41:34 -0800</bug_when>
    <thetext>This is setting the groundwork for making it easy to add &quot;hidden&quot; commands which don&apos;t show up in --help by default.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>165239</commentid>
    <comment_count>2</comment_count>
      <attachid>43561</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-11-20 00:44:13 -0800</bug_when>
    <thetext>Created attachment 43561
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>165242</commentid>
    <comment_count>3</comment_count>
      <attachid>43561</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2009-11-20 00:52:45 -0800</bug_when>
    <thetext>Comment on attachment 43561
Patch

kk</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>165247</commentid>
    <comment_count>4</comment_count>
      <attachid>43561</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-11-20 01:02:26 -0800</bug_when>
    <thetext>Comment on attachment 43561
Patch

Rejecting patch 43561 from commit-queue.

Unexpected failure when landing patch!  Please file a bug against bugzilla-tool.
Failed to run &quot;[&apos;WebKitTools/Scripts/bugzilla-tool&apos;, &apos;land-attachment&apos;, &apos;--force-clean&apos;, &apos;--non-interactive&apos;, &apos;--quiet&apos;, &apos;43561&apos;]&quot; exit_code: 1
Last 500 characters of output:
ingsequence.py&quot;, line 49, in run
    self.test()
  File &quot;/Users/eseidel/Projects/CommitQueue/WebKitTools/Scripts/modules/landingsequence.py&quot;, line 113, in test
    LandingSequence.test(self)
  File &quot;/Users/eseidel/Projects/CommitQueue/WebKitTools/Scripts/modules/landingsequence.py&quot;, line 81, in test
    WebKitScripts.run_webkit_tests(launch_safari=not options.non_interactive, fail_fast=options.non_interactive, quiet=options.quiet, port=port)
NameError: global name &apos;WebKitScripts&apos; is not defined</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>165250</commentid>
    <comment_count>5</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-11-20 01:07:58 -0800</bug_when>
    <thetext>I think that my patch and adam&apos;s patch secretly conflicted.  I&apos;ll post a new one tomorrow.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>165292</commentid>
    <comment_count>6</comment_count>
      <attachid>43561</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2009-11-20 06:46:10 -0800</bug_when>
    <thetext>Comment on attachment 43561
Patch

Oops.  I screwed up the bugzilla-tool.  Should be fixed now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>165293</commentid>
    <comment_count>7</comment_count>
      <attachid>43561</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-11-20 06:49:51 -0800</bug_when>
    <thetext>Comment on attachment 43561
Patch

Rejecting patch 43561 from commit-queue.

Unexpected failure when landing patch!  Please file a bug against bugzilla-tool.
Failed to run &quot;[&apos;WebKitTools/Scripts/bugzilla-tool&apos;, &apos;land-attachment&apos;, &apos;--force-clean&apos;, &apos;--non-interactive&apos;, &apos;--quiet&apos;, &apos;43561&apos;]&quot; exit_code: 1
Last 500 characters of output:
n
    self.test()
  File &quot;/Users/eseidel/Projects/CommitQueue/WebKitTools/Scripts/modules/landingsequence.py&quot;, line 113, in test
    LandingSequence.test(self)
  File &quot;/Users/eseidel/Projects/CommitQueue/WebKitTools/Scripts/modules/landingsequence.py&quot;, line 81, in test
    WebKitLandingScripts.run_webkit_tests(launch_safari=not self._options.non_interactive, fail_fast=self._options.non_interactive, quiet=self._options.quiet, port=self._port)
NameError: global name &apos;WebKitScripts&apos; is not defined</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>165294</commentid>
    <comment_count>8</comment_count>
      <attachid>43561</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2009-11-20 06:54:43 -0800</bug_when>
    <thetext>Comment on attachment 43561
Patch

Clearing flags on attachment: 43561

Committed r51237: &lt;http://trac.webkit.org/changeset/51237&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>165295</commentid>
    <comment_count>9</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2009-11-20 06:54:50 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>43561</attachid>
            <date>2009-11-20 00:44:13 -0800</date>
            <delta_ts>2009-11-20 06:54:43 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-31710-20091120004411.patch</filename>
            <type>text/plain</type>
            <size>15035</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCA3N2Y2YTcyLi5iNTEzNDUwIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMDktMTEt
MjAgIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE11bHRpQ29tbWFuZFRvb2wgc2hvdWxkIGZpbmQg
Q29tbWFuZCBvYmplY3RzIGF1dG9tYXRpY2FsbHkgaW5zdGVhZCBvZiB3aXRoIGEgbWFudWFsIGxp
c3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMxNzEw
CisKKyAgICAgICAgKiBTY3JpcHRzL2J1Z3ppbGxhLXRvb2w6CisgICAgICAgICogU2NyaXB0cy9t
b2R1bGVzL211bHRpY29tbWFuZHRvb2wucHk6CisgICAgICAgICAtIFVzZSBzb21lIHdpbGQgcHl0
aG9uLWZ1IHRvIGNyYXdsIGFsbCB0aGUga25vd24gc3ViY2xhc3NlcyBvZiBDb21tYW5kLgorCiAy
MDA5LTExLTE5ICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmV2
aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9TY3JpcHRzL2J1
Z3ppbGxhLXRvb2wgYi9XZWJLaXRUb29scy9TY3JpcHRzL2J1Z3ppbGxhLXRvb2wKaW5kZXggN2Fj
MTgwMi4uMTdiMTU4YyAxMDA3NTUKLS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0cy9idWd6aWxsYS10
b29sCisrKyBiL1dlYktpdFRvb2xzL1NjcmlwdHMvYnVnemlsbGEtdG9vbApAQCAtODYsNiArODYs
NyBAQCBkZWYgY29tbWl0X21lc3NhZ2VfZm9yX3RoaXNfY29tbWl0KHNjbSk6CiAKIAogY2xhc3Mg
QnVnc1RvQ29tbWl0KENvbW1hbmQpOgorICAgIG5hbWUgPSAiYnVncy10by1jb21taXQiCiAgICAg
ZGVmIF9faW5pdF9fKHNlbGYpOgogICAgICAgICBDb21tYW5kLl9faW5pdF9fKHNlbGYsICJCdWdz
IGluIHRoZSBjb21taXQgcXVldWUiKQogCkBAIC05Niw2ICs5Nyw3IEBAIGNsYXNzIEJ1Z3NUb0Nv
bW1pdChDb21tYW5kKToKIAogCiBjbGFzcyBQYXRjaGVzVG9Db21taXQoQ29tbWFuZCk6CisgICAg
bmFtZSA9ICJwYXRjaGVzLXRvLWNvbW1pdCIKICAgICBkZWYgX19pbml0X18oc2VsZik6CiAgICAg
ICAgIENvbW1hbmQuX19pbml0X18oc2VsZiwgIlBhdGNoZXMgaW4gdGhlIGNvbW1pdCBxdWV1ZSIp
CiAKQEAgLTEwNyw4ICsxMDksOSBAQCBjbGFzcyBQYXRjaGVzVG9Db21taXQoQ29tbWFuZCk6CiAK
IAogY2xhc3MgUmV2aWV3ZWRQYXRjaGVzKENvbW1hbmQpOgorICAgIG5hbWUgPSAicmV2aWV3ZWQt
cGF0Y2hlcyIKICAgICBkZWYgX19pbml0X18oc2VsZik6Ci0gICAgICAgIENvbW1hbmQuX19pbml0
X18oc2VsZiwgInIrXCdkIHBhdGNoZXMgb24gYSBidWciLCAiQlVHSUQiKQorICAgICAgICBDb21t
YW5kLl9faW5pdF9fKHNlbGYsICJyKydkIHBhdGNoZXMgb24gYSBidWciLCAiQlVHSUQiKQogCiAg
ICAgZGVmIGV4ZWN1dGUoc2VsZiwgb3B0aW9ucywgYXJncywgdG9vbCk6CiAgICAgICAgIGJ1Z19p
ZCA9IGFyZ3NbMF0KQEAgLTExOCw2ICsxMjEsNyBAQCBjbGFzcyBSZXZpZXdlZFBhdGNoZXMoQ29t
bWFuZCk6CiAKIAogY2xhc3MgQ2hlY2tTdHlsZShDb21tYW5kKToKKyAgICBuYW1lID0gImNoZWNr
LXN0eWxlIgogICAgIGRlZiBfX2luaXRfXyhzZWxmKToKICAgICAgICAgb3B0aW9ucyA9IFdlYktp
dExhbmRpbmdTY3JpcHRzLmNsZWFuaW5nX29wdGlvbnMoKQogICAgICAgICBDb21tYW5kLl9faW5p
dF9fKHNlbGYsICJSdW5zIGNoZWNrLXdlYmtpdC1zdHlsZSBvbiB0aGUgc3BlY2lmaWVkIGF0dGFj
aG1lbnQiLCAiQVRUQUNITUVOVF9JRCIsIG9wdGlvbnM9b3B0aW9ucykKQEAgLTE0Nyw2ICsxNTEs
NyBAQCBjbGFzcyBDaGVja1N0eWxlKENvbW1hbmQpOgogCiAKIGNsYXNzIEFwcGx5QXR0YWNobWVu
dChDb21tYW5kKToKKyAgICBuYW1lID0gImFwcGx5LWF0dGFjaG1lbnQiCiAgICAgZGVmIF9faW5p
dF9fKHNlbGYpOgogICAgICAgICBvcHRpb25zID0gV2ViS2l0QXBwbHlpbmdTY3JpcHRzLmFwcGx5
X29wdGlvbnMoKSArIFdlYktpdExhbmRpbmdTY3JpcHRzLmNsZWFuaW5nX29wdGlvbnMoKQogICAg
ICAgICBDb21tYW5kLl9faW5pdF9fKHNlbGYsICJBcHBsaWVzIGFuIGF0dGFjaG1lbnQgdG8gdGhl
IGxvY2FsIHdvcmtpbmcgZGlyZWN0b3J5LiIsICJBVFRBQ0hNRU5UX0lEIiwgb3B0aW9ucz1vcHRp
b25zKQpAQCAtMTU5LDYgKzE2NCw3IEBAIGNsYXNzIEFwcGx5QXR0YWNobWVudChDb21tYW5kKToK
IAogCiBjbGFzcyBBcHBseVBhdGNoZXMoQ29tbWFuZCk6CisgICAgbmFtZSA9ICJhcHBseS1wYXRj
aGVzIgogICAgIGRlZiBfX2luaXRfXyhzZWxmKToKICAgICAgICAgb3B0aW9ucyA9IFdlYktpdEFw
cGx5aW5nU2NyaXB0cy5hcHBseV9vcHRpb25zKCkgKyBXZWJLaXRMYW5kaW5nU2NyaXB0cy5jbGVh
bmluZ19vcHRpb25zKCkKICAgICAgICAgQ29tbWFuZC5fX2luaXRfXyhzZWxmLCAiQXBwbGllcyBh
bGwgcGF0Y2hlcyBvbiBhIGJ1ZyB0byB0aGUgbG9jYWwgd29ya2luZyBkaXJlY3RvcnkuIiwgIkJV
R0lEIiwgb3B0aW9ucz1vcHRpb25zKQpAQCAtMzMzLDYgKzMzOSw3IEBAIGNsYXNzIFdlYktpdExh
bmRpbmdTY3JpcHRzOgogCiAKIGNsYXNzIExhbmREaWZmKENvbW1hbmQpOgorICAgIG5hbWUgPSAi
bGFuZC1kaWZmIgogICAgIGRlZiBfX2luaXRfXyhzZWxmKToKICAgICAgICAgb3B0aW9ucyA9IFsK
ICAgICAgICAgICAgIG1ha2Vfb3B0aW9uKCItciIsICItLXJldmlld2VyIiwgYWN0aW9uPSJzdG9y
ZSIsIHR5cGU9InN0cmluZyIsIGRlc3Q9InJldmlld2VyIiwgaGVscD0iVXBkYXRlIENoYW5nZUxv
Z3MgdG8gc2F5IFJldmlld2VkIGJ5IFJFVklFV0VSLiIpLApAQCAtMzg3LDggKzM5NCw4IEBAIGNs
YXNzIExhbmREaWZmKENvbW1hbmQpOgogCiAKIGNsYXNzIEFic3RyYWN0UGF0Y2hQcm9jZXNzaW5n
Q29tbWFuZChDb21tYW5kKToKLSAgICBkZWYgX19pbml0X18oc2VsZiwgZGVzY3JpcHRpb24sIGFy
Z3NfZGVzY3JpcHRpb24sIG9wdGlvbnMpOgotICAgICAgICBDb21tYW5kLl9faW5pdF9fKHNlbGYs
IGRlc2NyaXB0aW9uLCBhcmdzX2Rlc2NyaXB0aW9uLCBvcHRpb25zPW9wdGlvbnMpCisgICAgZGVm
IF9faW5pdF9fKHNlbGYsIGhlbHBfdGV4dCwgYXJnc19kZXNjcmlwdGlvbiwgb3B0aW9ucyk6Cisg
ICAgICAgIENvbW1hbmQuX19pbml0X18oc2VsZiwgaGVscF90ZXh0LCBhcmdzX2Rlc2NyaXB0aW9u
LCBvcHRpb25zPW9wdGlvbnMpCiAKICAgICBkZWYgX2ZldGNoX2xpc3Rfb2ZfcGF0Y2hlc190b19w
cm9jZXNzKHNlbGYsIG9wdGlvbnMsIGFyZ3MsIHRvb2wpOgogICAgICAgICByYWlzZSBOb3RJbXBs
ZW1lbnRlZEVycm9yLCAic3ViY2xhc3NlcyBtdXN0IGltcGxlbWVudCIKQEAgLTQyMCw5ICs0Mjcs
OSBAQCBjbGFzcyBBYnN0cmFjdFBhdGNoUHJvY2Vzc2luZ0NvbW1hbmQoQ29tbWFuZCk6CiAKIAog
Y2xhc3MgQWJzdHJhY3RQYXRjaExhbmRpbmdDb21tYW5kKEFic3RyYWN0UGF0Y2hQcm9jZXNzaW5n
Q29tbWFuZCk6Ci0gICAgZGVmIF9faW5pdF9fKHNlbGYsIGRlc2NyaXB0aW9uLCBhcmdzX2Rlc2Ny
aXB0aW9uKToKKyAgICBkZWYgX19pbml0X18oc2VsZiwgaGVscF90ZXh0LCBhcmdzX2Rlc2NyaXB0
aW9uKToKICAgICAgICAgb3B0aW9ucyA9IFdlYktpdExhbmRpbmdTY3JpcHRzLmNsZWFuaW5nX29w
dGlvbnMoKSArIFdlYktpdExhbmRpbmdTY3JpcHRzLmxhbmRfb3B0aW9ucygpCi0gICAgICAgIEFi
c3RyYWN0UGF0Y2hQcm9jZXNzaW5nQ29tbWFuZC5fX2luaXRfXyhzZWxmLCBkZXNjcmlwdGlvbiwg
YXJnc19kZXNjcmlwdGlvbiwgb3B0aW9ucykKKyAgICAgICAgQWJzdHJhY3RQYXRjaFByb2Nlc3Np
bmdDb21tYW5kLl9faW5pdF9fKHNlbGYsIGhlbHBfdGV4dCwgYXJnc19kZXNjcmlwdGlvbiwgb3B0
aW9ucykKIAogICAgIGRlZiBfcHJlcGFyZV90b19wcm9jZXNzKHNlbGYsIG9wdGlvbnMsIGFyZ3Ms
IHRvb2wpOgogICAgICAgICAjIENoZWNrIHRoZSB0cmVlIHN0YXR1cyBmaXJzdCBzbyB3ZSBjYW4g
ZmFpbCBlYXJseS4KQEAgLTQzNCw2ICs0NDEsNyBAQCBjbGFzcyBBYnN0cmFjdFBhdGNoTGFuZGlu
Z0NvbW1hbmQoQWJzdHJhY3RQYXRjaFByb2Nlc3NpbmdDb21tYW5kKToKIAogCiBjbGFzcyBMYW5k
QXR0YWNobWVudChBYnN0cmFjdFBhdGNoTGFuZGluZ0NvbW1hbmQpOgorICAgIG5hbWUgPSAibGFu
ZC1hdHRhY2htZW50IgogICAgIGRlZiBfX2luaXRfXyhzZWxmKToKICAgICAgICAgQWJzdHJhY3RQ
YXRjaExhbmRpbmdDb21tYW5kLl9faW5pdF9fKHNlbGYsICJMYW5kcyBhIHBhdGNoZXMgZnJvbSBi
dWd6aWxsYSwgb3B0aW9uYWxseSBidWlsZGluZyBhbmQgdGVzdGluZyB0aGVtIGZpcnN0IiwgIkFU
VEFDSE1FTlRfSUQgW0FUVEFDSE1FTlRfSURTXSIpCiAKQEAgLTQ0Miw2ICs0NTAsNyBAQCBjbGFz
cyBMYW5kQXR0YWNobWVudChBYnN0cmFjdFBhdGNoTGFuZGluZ0NvbW1hbmQpOgogCiAKIGNsYXNz
IExhbmRQYXRjaGVzKEFic3RyYWN0UGF0Y2hMYW5kaW5nQ29tbWFuZCk6CisgICAgbmFtZSA9ICJs
YW5kLXBhdGNoZXMiCiAgICAgZGVmIF9faW5pdF9fKHNlbGYpOgogICAgICAgICBBYnN0cmFjdFBh
dGNoTGFuZGluZ0NvbW1hbmQuX19pbml0X18oc2VsZiwgIkxhbmRzIGFsbCBwYXRjaGVzIG9uIHRo
ZSBnaXZlbiBidWdzLCBvcHRpb25hbGx5IGJ1aWxkaW5nIGFuZCB0ZXN0aW5nIHRoZW0gZmlyc3Qi
LCAiQlVHSUQgW0JVR0lEU10iKQogCkBAIC00NTUsNiArNDY0LDcgQEAgY2xhc3MgTGFuZFBhdGNo
ZXMoQWJzdHJhY3RQYXRjaExhbmRpbmdDb21tYW5kKToKIAogCiBjbGFzcyBDb21taXRNZXNzYWdl
Rm9yQ3VycmVudERpZmYoQ29tbWFuZCk6CisgICAgbmFtZSA9ICJjb21taXQtbWVzc2FnZSIKICAg
ICBkZWYgX19pbml0X18oc2VsZik6CiAgICAgICAgIENvbW1hbmQuX19pbml0X18oc2VsZiwgIlBy
aW50cyBhIGNvbW1pdCBtZXNzYWdlIHN1aXRhYmxlIGZvciB0aGUgdW5jb21taXR0ZWQgY2hhbmdl
cy4iKQogCkBAIC00NjQsNiArNDc0LDcgQEAgY2xhc3MgQ29tbWl0TWVzc2FnZUZvckN1cnJlbnRE
aWZmKENvbW1hbmQpOgogCiAKIGNsYXNzIE9ic29sZXRlQXR0YWNobWVudHMoQ29tbWFuZCk6Cisg
ICAgbmFtZSA9ICJvYnNvbGV0ZS1hdHRhY2htZW50cyIKICAgICBkZWYgX19pbml0X18oc2VsZik6
CiAgICAgICAgIENvbW1hbmQuX19pbml0X18oc2VsZiwgIk1hcmtzIGFsbCBhdHRhY2htZW50cyBv
biBhIGJ1ZyBhcyBvYnNvbGV0ZS4iLCAiQlVHSUQiKQogCkBAIC00NzYsNiArNDg3LDcgQEAgY2xh
c3MgT2Jzb2xldGVBdHRhY2htZW50cyhDb21tYW5kKToKIAogCiBjbGFzcyBQb3N0RGlmZihDb21t
YW5kKToKKyAgICBuYW1lID0gInBvc3QtZGlmZiIKICAgICBkZWYgX19pbml0X18oc2VsZik6CiAg
ICAgICAgIG9wdGlvbnMgPSBbCiAgICAgICAgICAgICBtYWtlX29wdGlvbigiLW0iLCAiLS1kZXNj
cmlwdGlvbiIsIGFjdGlvbj0ic3RvcmUiLCB0eXBlPSJzdHJpbmciLCBkZXN0PSJkZXNjcmlwdGlv
biIsIGhlbHA9IkRlc2NyaXB0aW9uIHN0cmluZyBmb3IgdGhlIGF0dGFjaG1lbnQgKGRlZmF1bHQ6
IFwicGF0Y2hcIikiKSwKQEAgLTUxNiw2ICs1MjgsNyBAQCBjbGFzcyBQb3N0RGlmZihDb21tYW5k
KToKIAogCiBjbGFzcyBQb3N0Q29tbWl0cyhDb21tYW5kKToKKyAgICBuYW1lID0gInBvc3QtY29t
bWl0cyIKICAgICBkZWYgX19pbml0X18oc2VsZik6CiAgICAgICAgIG9wdGlvbnMgPSBbCiAgICAg
ICAgICAgICBtYWtlX29wdGlvbigiLWIiLCAiLS1idWctaWQiLCBhY3Rpb249InN0b3JlIiwgdHlw
ZT0ic3RyaW5nIiwgZGVzdD0iYnVnX2lkIiwgaGVscD0iU3BlY2lmeSBidWcgaWQgaWYgbm8gVVJM
IGlzIHByb3ZpZGVkIGluIHRoZSBjb21taXQgbG9nLiIpLApAQCAtNTY2LDYgKzU3OSw3IEBAIGNs
YXNzIFBvc3RDb21taXRzKENvbW1hbmQpOgogCiAKIGNsYXNzIFJvbGxvdXQoQ29tbWFuZCk6Cisg
ICAgbmFtZSA9ICJyb2xsb3V0IgogICAgIGRlZiBfX2luaXRfXyhzZWxmKToKICAgICAgICAgb3B0
aW9ucyA9IFdlYktpdExhbmRpbmdTY3JpcHRzLmxhbmRfb3B0aW9ucygpCiAgICAgICAgIG9wdGlv
bnMgKz0gV2ViS2l0TGFuZGluZ1NjcmlwdHMuY2xlYW5pbmdfb3B0aW9ucygpCkBAIC02MjMsNiAr
NjM3LDcgQEAgY2xhc3MgUm9sbG91dChDb21tYW5kKToKIAogCiBjbGFzcyBDcmVhdGVCdWcoQ29t
bWFuZCk6CisgICAgbmFtZSA9ICJjcmVhdGUtYnVnIgogICAgIGRlZiBfX2luaXRfXyhzZWxmKToK
ICAgICAgICAgb3B0aW9ucyA9IFsKICAgICAgICAgICAgIG1ha2Vfb3B0aW9uKCItLWNjIiwgYWN0
aW9uPSJzdG9yZSIsIHR5cGU9InN0cmluZyIsIGRlc3Q9ImNjIiwgaGVscD0iQ29tbWEtc2VwYXJh
dGVkIGxpc3Qgb2YgZW1haWwgYWRkcmVzc2VzIHRvIGNhcmJvbi1jb3B5LiIpLApAQCAtNzAwLDYg
KzcxNSw3IEBAIGNsYXNzIENyZWF0ZUJ1ZyhDb21tYW5kKToKIAogCiBjbGFzcyBUcmVlU3RhdHVz
KENvbW1hbmQpOgorICAgIG5hbWUgPSAidHJlZS1zdGF0dXMiCiAgICAgZGVmIF9faW5pdF9fKHNl
bGYpOgogICAgICAgICBDb21tYW5kLl9faW5pdF9fKHNlbGYsICJQcmludCBvdXQgdGhlIHN0YXR1
cyBvZiB0aGUgd2Via2l0IGJ1aWxkZXJzLiIpCiAKQEAgLTgyOCwyOCArODQ0LDcgQEAgY2xhc3Mg
QnVnemlsbGFUb29sKE11bHRpQ29tbWFuZFRvb2wpOgogICAgICAgICAjIFRoaXMgaGFjayBjYW4g
YmUgcmVtb3ZlZCBieSBvdmVycmlkaW5nIHVzYWdlKCkgcHJpbnRpbmcgaW4gSGVscFByaW50aW5n
T3B0aW9uUGFyc2VyCiAgICAgICAgICMgc28gdGhhdCB3ZSBkb24ndCBuZWVkIHRvIGNyZWF0ZSAn
ZXBpbG9nJyBiZWZvcmUgY29uc3RydWN0aW5nIEhlbHBQcmludGluZ09wdGlvblBhcnNlci4KICAg
ICAgICAgc2VsZi5jYWNoZWRfc2NtID0gTm9uZQotICAgICAgICAKLSAgICAgICAgIyBGSVhNRTog
Q29tbWFuZHMgc2hvdWxkIGtub3cgdGhlaXIgb3duIG5hbWUgYW5kIHJlZ2lzdGVyIHRoZW1zZWx2
ZXMgd2l0aCB0aGUgQnVnemlsbGFUb29sIGluc3RlYWQgb2YgaGF2aW5nIGEgbWFudWFsIGxpc3Qu
Ci0gICAgICAgIE11bHRpQ29tbWFuZFRvb2wuX19pbml0X18oc2VsZiwgY29tbWFuZHM9WwotICAg
ICAgICAgICAgeyAibmFtZSIgOiAiYnVncy10by1jb21taXQiLCAib2JqZWN0IiA6IEJ1Z3NUb0Nv
bW1pdCgpIH0sCi0gICAgICAgICAgICB7ICJuYW1lIiA6ICJwYXRjaGVzLXRvLWNvbW1pdCIsICJv
YmplY3QiIDogUGF0Y2hlc1RvQ29tbWl0KCkgfSwKLSAgICAgICAgICAgIHsgIm5hbWUiIDogInJl
dmlld2VkLXBhdGNoZXMiLCAib2JqZWN0IiA6IFJldmlld2VkUGF0Y2hlcygpIH0sCi0gICAgICAg
ICAgICB7ICJuYW1lIiA6ICJjcmVhdGUtYnVnIiwgIm9iamVjdCIgOiBDcmVhdGVCdWcoKSB9LAot
ICAgICAgICAgICAgeyAibmFtZSIgOiAiYXBwbHktYXR0YWNobWVudCIsICJvYmplY3QiIDogQXBw
bHlBdHRhY2htZW50KCkgfSwKLSAgICAgICAgICAgIHsgIm5hbWUiIDogImFwcGx5LXBhdGNoZXMi
LCAib2JqZWN0IiA6IEFwcGx5UGF0Y2hlcygpIH0sCi0gICAgICAgICAgICB7ICJuYW1lIiA6ICJs
YW5kLWRpZmYiLCAib2JqZWN0IiA6IExhbmREaWZmKCkgfSwKLSAgICAgICAgICAgIHsgIm5hbWUi
IDogImxhbmQtYXR0YWNobWVudCIsICJvYmplY3QiIDogTGFuZEF0dGFjaG1lbnQoKSB9LAotICAg
ICAgICAgICAgeyAibmFtZSIgOiAibGFuZC1wYXRjaGVzIiwgIm9iamVjdCIgOiBMYW5kUGF0Y2hl
cygpIH0sCi0gICAgICAgICAgICB7ICJuYW1lIiA6ICJjaGVjay1zdHlsZSIsICJvYmplY3QiIDog
Q2hlY2tTdHlsZSgpIH0sCi0gICAgICAgICAgICB7ICJuYW1lIiA6ICJjb21taXQtbWVzc2FnZSIs
ICJvYmplY3QiIDogQ29tbWl0TWVzc2FnZUZvckN1cnJlbnREaWZmKCkgfSwKLSAgICAgICAgICAg
IHsgIm5hbWUiIDogIm9ic29sZXRlLWF0dGFjaG1lbnRzIiwgIm9iamVjdCIgOiBPYnNvbGV0ZUF0
dGFjaG1lbnRzKCkgfSwKLSAgICAgICAgICAgIHsgIm5hbWUiIDogInBvc3QtZGlmZiIsICJvYmpl
Y3QiIDogUG9zdERpZmYoKSB9LAotICAgICAgICAgICAgeyAibmFtZSIgOiAicG9zdC1jb21taXRz
IiwgIm9iamVjdCIgOiBQb3N0Q29tbWl0cygpIH0sCi0gICAgICAgICAgICB7ICJuYW1lIiA6ICJ0
cmVlLXN0YXR1cyIsICJvYmplY3QiIDogVHJlZVN0YXR1cygpIH0sCi0gICAgICAgICAgICB7ICJu
YW1lIiA6ICJjb21taXQtcXVldWUiLCAib2JqZWN0IiA6IENvbW1pdFF1ZXVlKCkgfSwKLSAgICAg
ICAgICAgIHsgIm5hbWUiIDogInN0eWxlLXF1ZXVlIiwgIm9iamVjdCIgOiBTdHlsZVF1ZXVlKCkg
fSwKLSAgICAgICAgICAgIHsgIm5hbWUiIDogInJvbGxvdXQiLCAib2JqZWN0IiA6IFJvbGxvdXQo
KSB9LAotICAgICAgICBdKQorICAgICAgICBNdWx0aUNvbW1hbmRUb29sLl9faW5pdF9fKHNlbGYp
CiAgICAgICAgIHNlbGYuZ2xvYmFsX29wdGlvbl9wYXJzZXIuYWRkX29wdGlvbigiLS1kcnktcnVu
IiwgYWN0aW9uPSJjYWxsYmFjayIsIGhlbHA9ImRvIG5vdCB0b3VjaCByZW1vdGUgc2VydmVycyIs
IGNhbGxiYWNrPXNlbGYuZHJ5X3J1bl9jYWxsYmFjaykKIAogICAgICAgICBzZWxmLmJ1Z3MgPSBC
dWd6aWxsYSgpCkBAIC04NzcsMTMgKzg3MiwxMyBAQCBjbGFzcyBCdWd6aWxsYVRvb2woTXVsdGlD
b21tYW5kVG9vbCk6CiAgICAgICAgIHJldHVybiBzZWxmLmNhY2hlZF9zY20KIAogICAgIGRlZiBz
aG91bGRfc2hvd19jb21tYW5kX2hlbHAoc2VsZiwgY29tbWFuZCk6Ci0gICAgICAgIGlmIGNvbW1h
bmRbIm9iamVjdCJdLnJlcXVpcmVzX2xvY2FsX2NvbW1pdHM6CisgICAgICAgIGlmIGNvbW1hbmQu
cmVxdWlyZXNfbG9jYWxfY29tbWl0czoKICAgICAgICAgICAgIHJldHVybiBzZWxmLnNjbSgpLnN1
cHBvcnRzX2xvY2FsX2NvbW1pdHMoKQogICAgICAgICByZXR1cm4gVHJ1ZQogCiAgICAgZGVmIHNo
b3VsZF9leGVjdXRlX2NvbW1hbmQoc2VsZiwgY29tbWFuZCk6Ci0gICAgICAgIGlmIGNvbW1hbmRb
Im9iamVjdCJdLnJlcXVpcmVzX2xvY2FsX2NvbW1pdHMgYW5kIG5vdCBzZWxmLnNjbSgpLnN1cHBv
cnRzX2xvY2FsX2NvbW1pdHMoKToKLSAgICAgICAgICAgIGZhaWx1cmVfcmVhc29uID0gIiVzIHJl
cXVpcmVzIGxvY2FsIGNvbW1pdHMgdXNpbmcgJXMgaW4gJXMuIiAlIChjb21tYW5kWyJuYW1lIl0s
IHNlbGYuc2NtKCkuZGlzcGxheV9uYW1lKCksIHNlbGYuc2NtKCkuY2hlY2tvdXRfcm9vdCkKKyAg
ICAgICAgaWYgY29tbWFuZC5yZXF1aXJlc19sb2NhbF9jb21taXRzIGFuZCBub3Qgc2VsZi5zY20o
KS5zdXBwb3J0c19sb2NhbF9jb21taXRzKCk6CisgICAgICAgICAgICBmYWlsdXJlX3JlYXNvbiA9
ICIlcyByZXF1aXJlcyBsb2NhbCBjb21taXRzIHVzaW5nICVzIGluICVzLiIgJSAoY29tbWFuZC5u
YW1lLCBzZWxmLnNjbSgpLmRpc3BsYXlfbmFtZSgpLCBzZWxmLnNjbSgpLmNoZWNrb3V0X3Jvb3Qp
CiAgICAgICAgICAgICByZXR1cm4gKEZhbHNlLCBmYWlsdXJlX3JlYXNvbikKICAgICAgICAgcmV0
dXJuIChUcnVlLCBOb25lKQogCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9TY3JpcHRzL21vZHVs
ZXMvbXVsdGljb21tYW5kdG9vbC5weSBiL1dlYktpdFRvb2xzL1NjcmlwdHMvbW9kdWxlcy9tdWx0
aWNvbW1hbmR0b29sLnB5CmluZGV4IDRiYWFkNTEuLjU2OTI0MDQgMTAwNjQ0Ci0tLSBhL1dlYktp
dFRvb2xzL1NjcmlwdHMvbW9kdWxlcy9tdWx0aWNvbW1hbmR0b29sLnB5CisrKyBiL1dlYktpdFRv
b2xzL1NjcmlwdHMvbW9kdWxlcy9tdWx0aWNvbW1hbmR0b29sLnB5CkBAIC0zNyw3ICszNyw4IEBA
IGZyb20gb3B0cGFyc2UgaW1wb3J0IE9wdGlvblBhcnNlciwgSW5kZW50ZWRIZWxwRm9ybWF0dGVy
LCBTVVBQUkVTU19VU0FHRSwgbWFrZV9vCiAKIGZyb20gbW9kdWxlcy5sb2dnaW5nIGltcG9ydCBs
b2cKIAotY2xhc3MgQ29tbWFuZDoKK2NsYXNzIENvbW1hbmQob2JqZWN0KToKKyAgICBuYW1lID0g
Tm9uZQogICAgIGRlZiBfX2luaXRfXyhzZWxmLCBoZWxwX3RleHQsIGFyZ3VtZW50X25hbWVzPU5v
bmUsIG9wdGlvbnM9Tm9uZSwgcmVxdWlyZXNfbG9jYWxfY29tbWl0cz1GYWxzZSk6CiAgICAgICAg
IHNlbGYuaGVscF90ZXh0ID0gaGVscF90ZXh0CiAgICAgICAgIHNlbGYuYXJndW1lbnRfbmFtZXMg
PSBhcmd1bWVudF9uYW1lcwpAQCAtNDUsOCArNDYsOCBAQCBjbGFzcyBDb21tYW5kOgogICAgICAg
ICBzZWxmLm9wdGlvbl9wYXJzZXIgPSBIZWxwUHJpbnRpbmdPcHRpb25QYXJzZXIodXNhZ2U9U1VQ
UFJFU1NfVVNBR0UsIGFkZF9oZWxwX29wdGlvbj1GYWxzZSwgb3B0aW9uX2xpc3Q9c2VsZi5vcHRp
b25zKQogICAgICAgICBzZWxmLnJlcXVpcmVzX2xvY2FsX2NvbW1pdHMgPSByZXF1aXJlc19sb2Nh
bF9jb21taXRzCiAKLSAgICBkZWYgbmFtZV93aXRoX2FyZ3VtZW50cyhzZWxmLCBjb21tYW5kX25h
bWUpOgotICAgICAgICB1c2FnZV9zdHJpbmcgPSBjb21tYW5kX25hbWUKKyAgICBkZWYgbmFtZV93
aXRoX2FyZ3VtZW50cyhzZWxmKToKKyAgICAgICAgdXNhZ2Vfc3RyaW5nID0gc2VsZi5uYW1lCiAg
ICAgICAgIGlmIHNlbGYub3B0aW9uczoKICAgICAgICAgICAgIHVzYWdlX3N0cmluZyArPSAiIFtv
cHRpb25zXSIKICAgICAgICAgaWYgc2VsZi5hcmd1bWVudF9uYW1lczoKQEAgLTU5LDcgKzYwLDYg
QEAgY2xhc3MgQ29tbWFuZDoKICAgICBkZWYgZXhlY3V0ZShzZWxmLCBvcHRpb25zLCBhcmdzLCB0
b29sKToKICAgICAgICAgcmFpc2UgTm90SW1wbGVtZW50ZWRFcnJvciwgInN1YmNsYXNzZXMgbXVz
dCBpbXBsZW1lbnQiCiAKLQogY2xhc3MgTm9uV3JhcHBpbmdFcGlsb2dJbmRlbnRlZEhlbHBGb3Jt
YXR0ZXIoSW5kZW50ZWRIZWxwRm9ybWF0dGVyKToKICAgICAjIFRoZSBzdGFuZGFyZCBJbmRlbnRl
ZEhlbHBGb3JtYXR0ZXIgcGFyYWdyYXBoLXdyYXBzIHRoZSBlcGlsb2csIGtpbGxpbmcgb3VyIGN1
c3RvbSBmb3JtYXR0aW5nLgogICAgIGRlZiBmb3JtYXRfZXBpbG9nKHNlbGYsIGVwaWxvZyk6CkBA
IC03NiwyMyArNzYsMzEgQEAgY2xhc3MgSGVscFByaW50aW5nT3B0aW9uUGFyc2VyKE9wdGlvblBh
cnNlcik6CiAgICAgICAgIHNlbGYuZXhpdCgxLCBlcnJvcl9tZXNzYWdlKQogCiAKLWNsYXNzIE11
bHRpQ29tbWFuZFRvb2w6Ci0gICAgZGVmIF9faW5pdF9fKHNlbGYsIGNvbW1hbmRzKToKLSAgICAg
ICAgc2VsZi5jb21tYW5kcyA9IGNvbW1hbmRzCitjbGFzcyBNdWx0aUNvbW1hbmRUb29sKG9iamVj
dCk6CisgICAgZGVmIF9faW5pdF9fKHNlbGYpOgorICAgICAgICBzZWxmLmNvbW1hbmRzID0gW2Ns
cygpIGZvciBjbHMgaW4gc2VsZi5fZmluZF9hbGxfY29tbWFuZHMoKSBpZiBjbHMubmFtZV0KICAg
ICAgICAgIyBGSVhNRTogQ2FsbGluZyBzZWxmLl9jb21tYW5kc191c2FnZSgpIGluIHRoZSBjb25z
dHJ1Y3RvciBpcyBiYWQgYmVjYXVzZQogICAgICAgICAjIGl0IGNhbGxzIHNlbGYuc2hvdWxkX3No
b3dfY29tbWFuZF9oZWxwIHdoaWNoIGlzIHN1YmNsYXNzLWRlZmluZWQuCiAgICAgICAgICMgVGhl
IHN1YmNsYXNzIHdpbGwgbm90IGJlIGZ1bGx5IGluaXRpYWxpemVkIGF0IHRoaXMgcG9pbnQuCiAg
ICAgICAgIHNlbGYuZ2xvYmFsX29wdGlvbl9wYXJzZXIgPSBIZWxwUHJpbnRpbmdPcHRpb25QYXJz
ZXIodXNhZ2U9c2VsZi5fdXNhZ2VfbGluZSgpLCBmb3JtYXR0ZXI9Tm9uV3JhcHBpbmdFcGlsb2dJ
bmRlbnRlZEhlbHBGb3JtYXR0ZXIoKSwgZXBpbG9nPXNlbGYuX2NvbW1hbmRzX3VzYWdlKCkpCiAK
KyAgICBAY2xhc3NtZXRob2QKKyAgICBkZWYgX2FkZF9hbGxfc3ViY2xhc3NlcyhjbHMsIGNsYXNz
X3RvX2NyYXdsLCBzZWVuX2NsYXNzZXMpOgorICAgICAgICBmb3Igc3ViY2xhc3MgaW4gY2xhc3Nf
dG9fY3Jhd2wuX19zdWJjbGFzc2VzX18oKToKKyAgICAgICAgICAgIGlmIHN1YmNsYXNzIG5vdCBp
biBzZWVuX2NsYXNzZXM6CisgICAgICAgICAgICAgICAgc2Vlbl9jbGFzc2VzLmFkZChzdWJjbGFz
cykKKyAgICAgICAgICAgICAgICBjbHMuX2FkZF9hbGxfc3ViY2xhc3NlcyhzdWJjbGFzcywgc2Vl
bl9jbGFzc2VzKQorCisgICAgQGNsYXNzbWV0aG9kCisgICAgZGVmIF9maW5kX2FsbF9jb21tYW5k
cyhjbHMpOgorICAgICAgICBjb21tYW5kcyA9IHNldCgpCisgICAgICAgIGNscy5fYWRkX2FsbF9z
dWJjbGFzc2VzKENvbW1hbmQsIGNvbW1hbmRzKQorICAgICAgICByZXR1cm4gc29ydGVkKGNvbW1h
bmRzKQorCiAgICAgQHN0YXRpY21ldGhvZAogICAgIGRlZiBfdXNhZ2VfbGluZSgpOgogICAgICAg
ICByZXR1cm4gIlVzYWdlOiAlcHJvZyBbb3B0aW9uc10gY29tbWFuZCBbY29tbWFuZC1vcHRpb25z
XSBbY29tbWFuZC1hcmd1bWVudHNdIgogCi0gICAgIyBGSVhNRTogVGhpcyBjYW4gYWxsIGJlIHNp
bXBsaWZpZWQgb25jZSBDb21tYW5kIG9iamVjdHMga25vdyB0aGVpciBvd24gbmFtZXMuCi0gICAg
QHN0YXRpY21ldGhvZAotICAgIGRlZiBfbmFtZV9hbmRfYXJndW1lbnRzKGNvbW1hbmQpOgotICAg
ICAgICByZXR1cm4gY29tbWFuZFsnb2JqZWN0J10ubmFtZV93aXRoX2FyZ3VtZW50cyhjb21tYW5k
WyJuYW1lIl0pCi0KICAgICBkZWYgX2NvbW1hbmRfaGVscF9mb3JtYXR0ZXIoc2VsZik6CiAgICAg
ICAgICMgVXNlIG91ciBvd24gaGVscCBmb3JtYXR0ZXIgc28gYXMgdG8gaW5kZW50IGVub3VnaC4K
ICAgICAgICAgZm9ybWF0dGVyID0gSW5kZW50ZWRIZWxwRm9ybWF0dGVyKCkKQEAgLTEwMiwxOCAr
MTEwLDE4IEBAIGNsYXNzIE11bHRpQ29tbWFuZFRvb2w6CiAKICAgICBAY2xhc3NtZXRob2QKICAg
ICBkZWYgX2hlbHBfZm9yX2NvbW1hbmQoY2xzLCBjb21tYW5kLCBmb3JtYXR0ZXIsIGxvbmdlc3Rf
bmFtZV9sZW5ndGgpOgotICAgICAgICBoZWxwX3RleHQgPSAiICAiICsgY2xzLl9uYW1lX2FuZF9h
cmd1bWVudHMoY29tbWFuZCkubGp1c3QobG9uZ2VzdF9uYW1lX2xlbmd0aCArIDMpICsgY29tbWFu
ZFsnb2JqZWN0J10uaGVscF90ZXh0ICsgIlxuIgotICAgICAgICBoZWxwX3RleHQgKz0gY29tbWFu
ZFsnb2JqZWN0J10ub3B0aW9uX3BhcnNlci5mb3JtYXRfb3B0aW9uX2hlbHAoZm9ybWF0dGVyKQor
ICAgICAgICBoZWxwX3RleHQgPSAiICAiICsgY29tbWFuZC5uYW1lX3dpdGhfYXJndW1lbnRzKCku
bGp1c3QobG9uZ2VzdF9uYW1lX2xlbmd0aCArIDMpICsgY29tbWFuZC5oZWxwX3RleHQgKyAiXG4i
CisgICAgICAgIGhlbHBfdGV4dCArPSBjb21tYW5kLm9wdGlvbl9wYXJzZXIuZm9ybWF0X29wdGlv
bl9oZWxwKGZvcm1hdHRlcikKICAgICAgICAgcmV0dXJuIGhlbHBfdGV4dAogCiAgICAgQGNsYXNz
bWV0aG9kCiAgICAgZGVmIF9zdGFuZGFsb25lX2hlbHBfZm9yX2NvbW1hbmQoY2xzLCBjb21tYW5k
KToKLSAgICAgICAgcmV0dXJuIGNscy5faGVscF9mb3JfY29tbWFuZChjb21tYW5kLCBJbmRlbnRl
ZEhlbHBGb3JtYXR0ZXIoKSwgbGVuKGNscy5fbmFtZV9hbmRfYXJndW1lbnRzKGNvbW1hbmQpKSkK
KyAgICAgICAgcmV0dXJuIGNscy5faGVscF9mb3JfY29tbWFuZChjb21tYW5kLCBJbmRlbnRlZEhl
bHBGb3JtYXR0ZXIoKSwgbGVuKGNvbW1hbmQubmFtZV93aXRoX2FyZ3VtZW50cygpKSkKIAogICAg
IGRlZiBfY29tbWFuZHNfdXNhZ2Uoc2VsZik6CiAgICAgICAgICMgT25seSBzaG93IGNvbW1hbmRz
IHdoaWNoIGFyZSByZWxldmFudCB0byB0aGlzIGNoZWNrb3V0LiAgVGhpcyBtaWdodCBiZSBjb25m
dXNpbmcgdG8gc29tZSB1c2Vycz8KICAgICAgICAgcmVsZXZhbnRfY29tbWFuZHMgPSBmaWx0ZXIo
c2VsZi5zaG91bGRfc2hvd19jb21tYW5kX2hlbHAsIHNlbGYuY29tbWFuZHMpCi0gICAgICAgIGxv
bmdlc3RfbmFtZV9sZW5ndGggPSBtYXgobWFwKGxhbWJkYSBjb21tYW5kOiBsZW4oc2VsZi5fbmFt
ZV9hbmRfYXJndW1lbnRzKGNvbW1hbmQpKSwgcmVsZXZhbnRfY29tbWFuZHMpKQorICAgICAgICBs
b25nZXN0X25hbWVfbGVuZ3RoID0gbWF4KG1hcChsYW1iZGEgY29tbWFuZDogbGVuKGNvbW1hbmQu
bmFtZV93aXRoX2FyZ3VtZW50cygpKSwgcmVsZXZhbnRfY29tbWFuZHMpKQogICAgICAgICBjb21t
YW5kX2hlbHBfdGV4dHMgPSBtYXAobGFtYmRhIGNvbW1hbmQ6IHNlbGYuX2hlbHBfZm9yX2NvbW1h
bmQoY29tbWFuZCwgc2VsZi5fY29tbWFuZF9oZWxwX2Zvcm1hdHRlcigpLCBsb25nZXN0X25hbWVf
bGVuZ3RoKSwgcmVsZXZhbnRfY29tbWFuZHMpCiAgICAgICAgIHJldHVybiAiQ29tbWFuZHM6XG4i
ICsgIiIuam9pbihjb21tYW5kX2hlbHBfdGV4dHMpCiAKQEAgLTE0MSw3ICsxNDksNyBAQCBjbGFz
cyBNdWx0aUNvbW1hbmRUb29sOgogCiAgICAgZGVmIGNvbW1hbmRfYnlfbmFtZShzZWxmLCBjb21t
YW5kX25hbWUpOgogICAgICAgICBmb3IgY29tbWFuZCBpbiBzZWxmLmNvbW1hbmRzOgotICAgICAg
ICAgICAgaWYgY29tbWFuZF9uYW1lID09IGNvbW1hbmRbIm5hbWUiXToKKyAgICAgICAgICAgIGlm
IGNvbW1hbmRfbmFtZSA9PSBjb21tYW5kLm5hbWU6CiAgICAgICAgICAgICAgICAgcmV0dXJuIGNv
bW1hbmQKICAgICAgICAgcmV0dXJuIE5vbmUKIApAQCAtMTc4LDYgKzE4Niw1IEBAIGNsYXNzIE11
bHRpQ29tbWFuZFRvb2w6CiAgICAgICAgICAgICBsb2coZmFpbHVyZV9yZWFzb24pCiAgICAgICAg
ICAgICByZXR1cm4gMAogCi0gICAgICAgIGNvbW1hbmRfb2JqZWN0ID0gY29tbWFuZFsib2JqZWN0
Il0KLSAgICAgICAgKGNvbW1hbmRfb3B0aW9ucywgY29tbWFuZF9hcmdzKSA9IGNvbW1hbmRfb2Jq
ZWN0LnBhcnNlX2FyZ3MoYXJnc19hZnRlcl9jb21tYW5kX25hbWUpCi0gICAgICAgIHJldHVybiBj
b21tYW5kX29iamVjdC5leGVjdXRlKGNvbW1hbmRfb3B0aW9ucywgY29tbWFuZF9hcmdzLCBzZWxm
KQorICAgICAgICAoY29tbWFuZF9vcHRpb25zLCBjb21tYW5kX2FyZ3MpID0gY29tbWFuZC5wYXJz
ZV9hcmdzKGFyZ3NfYWZ0ZXJfY29tbWFuZF9uYW1lKQorICAgICAgICByZXR1cm4gY29tbWFuZC5l
eGVjdXRlKGNvbW1hbmRfb3B0aW9ucywgY29tbWFuZF9hcmdzLCBzZWxmKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>