<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "http://bugs.gentoo.org/bugzilla.dtd">

<bugzilla version="2.22.7"
          urlbase="http://bugs.gentoo.org/"
          maintainer="bugzilla@gentoo.org"
>

    <bug>
          <bug_id>161915</bug_id>
          
          <creation_ts>2007-01-13 17:47 0000</creation_ts>
          <short_desc>mixed tab/spaces fixups</short_desc>
          <delta_ts>2007-02-06 22:54:39 0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>Gentoo Hosted Projects</product>
          <component>Catalyst</component>
          <version>unspecified</version>
          <rep_platform>All</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <keywords>InSVN</keywords>
          <priority>P2</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>agaffney@gentoo.org</reporter>
          <assigned_to>catalyst@gentoo.org</assigned_to>
          

      

      
          <long_desc isprivate="0">
            <who>agaffney@gentoo.org</who>
            <bug_when>2007-01-13 17:47:09 0000</bug_when>
            <thetext>I ran a small script from the portage repo called tabcheck.py against the catalyst source, and I was quite frightened by what I saw. I&apos;m sure there is a lot more that it didn&apos;t fine, but I&apos;ve done some cleanup. A patch against SVN is attached.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>agaffney@gentoo.org</who>
            <bug_when>2007-01-13 17:47:48 0000</bug_when>
            <thetext>Created an attachment (id=106823)
a description to satisfy bugzie

</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>wolf31o2@gentoo.org</who>
            <bug_when>2007-01-17 15:19:14 0000</bug_when>
            <thetext>OK, here&apos;s what I get after applying this patch...

vertigo i686 # catalyst -a -f livecd-stage1-large.spec 
Gentoo Catalyst, version 2.0.2
Copyright 2003-2006 The Gentoo Foundation
Distributed under the GNU General Public License version 2

Using default Catalyst configuration file, /etc/catalyst/catalyst.conf
Setting sharedir to config file value &quot;/usr/lib/catalyst&quot;
Setting snapshot_cache to default value &quot;/var/tmp/catalyst/snapshot_cache&quot;
Setting hash_function to config file value &quot;crc32&quot;
Setting storedir to config file value &quot;/var/tmp/catalyst&quot;
Setting portdir to default value &quot;/usr/portage&quot;
Setting distdir to config file value &quot;/usr/portage/distfiles&quot;
Setting options to config file value &quot;autoresume kerncache pkgcache seedcache snapcache&quot;
Autoresuming support enabled.
Kernel cache support enabled.
Package cache support enabled.
Seed cache support enabled.
Snapshot cache support enabled.
Envscript support enabled.
Using target: livecd-stage1
Building on amd64 for alternate machine type x86
Source path set to /var/tmp/catalyst/tmp/default/stage3-i686-desktop-2007.0/
        If this is not desired, remove this directory or turn of seedcache in the options of catalyst.conf
        the source path will then be /var/tmp/catalyst/builds/default/stage3-i686-desktop-2007.0.tar.bz2

Caching snapshot to /var/tmp/catalyst/snapshot_cache/2007.0/
The autoresume path is /var/tmp/catalyst/tmp/default/.autoresume-livecd-stage1-i686-installer-2007.0/
Catalyst aborting....
Traceback (most recent call last):
  File &quot;/usr/bin/catalyst&quot;, line 384, in ?
    build_target(addlargs, targetmap)
  File &quot;/usr/bin/catalyst&quot;, line 200, in build_target
    mytarget=targetmap[addlargs[&quot;target&quot;]](conf_values, addlargs)
  File &quot;/usr/lib/catalyst/modules/livecd_stage1_target.py&quot;, line 15, in __init__
    generic_stage_target.__init__(self,spec,addlargs)
  File &quot;/usr/lib/catalyst/modules/generic_stage_target.py&quot;, line 183, in __init__
    print &quot;Location of the package cache is &quot; + self.settings[&quot;pkgcache_path&quot;]
KeyError: &apos;pkgcache_path&apos;


(I hate python tracebacks... ;p)</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>agaffney@gentoo.org</who>
            <bug_when>2007-01-17 15:42:03 0000</bug_when>
            <thetext>Created an attachment (id=107271)
new patch

It looks like I indented the &apos;else&apos; in livecd_stage1_target.py&apos;s set_pkgcache_path() 1 level too far. This new patch corrects that.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>wolf31o2@gentoo.org</who>
            <bug_when>2007-01-23 17:08:40 0000</bug_when>
            <thetext>Added to subversion...</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>wolf31o2@gentoo.org</who>
            <bug_when>2007-02-06 22:54:39 0000</bug_when>
            <thetext>Fixed in 2.0.2</thetext>
          </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>106823</attachid>
            <date>2007-01-13 17:47 0000</date>
            <desc>a description to satisfy bugzie</desc>
            <filename>catalyst_space.diff</filename>
            <type>text/plain</type>
            <data encoding="base64">SW5kZXg6IG1vZHVsZXMvc3RhZ2UzX3RhcmdldC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBtb2R1bGVzL3N0
YWdlM190YXJnZXQucHkJKHJldmlzaW9uIDEyMDYpCisrKyBtb2R1bGVzL3N0YWdlM190YXJnZXQu
cHkJKHdvcmtpbmcgY29weSkKQEAgLTEyLDEzICsxMiwxMyBAQAogCQlzZWxmLnZhbGlkX3ZhbHVl
cz1bXQogCQlnZW5lcmljX3N0YWdlX3RhcmdldC5fX2luaXRfXyhzZWxmLHNwZWMsYWRkbGFyZ3Mp
CiAKLSAgICAgICAgZGVmIHNldF9wb3J0YWdlX292ZXJsYXkoc2VsZik6Ci0JCQlnZW5lcmljX3N0
YWdlX3RhcmdldC5zZXRfcG9ydGFnZV9vdmVybGF5KHNlbGYpCi0JCQlpZiBzZWxmLnNldHRpbmdz
Lmhhc19rZXkoInBvcnRhZ2Vfb3ZlcmxheSIpOgotCQkJCXByaW50ICJcbldBUk5JTkcgISEhISEi
Ci0JCQkJcHJpbnQgIlx0VXNpbmcgYW4gb3ZlcmxheSBmb3IgZWFybGllciBzdGFnZXMgY291bGQg
Y2F1c2UgYnVpbGQgaXNzdWVzLiIKLQkJCQlwcmludCAiXHRJZiB5b3UgYnJlYWsgaXQsIHlvdSBi
dXkgaXQuIERvbid0IGNvbXBsYWluIHRvIHVzIGFib3V0IGl0LiIKLQkJCQlwcmludCAiXHREb250
IHNheSB3ZSBkaWQgbm90IHdhcm4geW91XG4iCisJZGVmIHNldF9wb3J0YWdlX292ZXJsYXkoc2Vs
Zik6CisJCWdlbmVyaWNfc3RhZ2VfdGFyZ2V0LnNldF9wb3J0YWdlX292ZXJsYXkoc2VsZikKKwkJ
aWYgc2VsZi5zZXR0aW5ncy5oYXNfa2V5KCJwb3J0YWdlX292ZXJsYXkiKToKKwkJCXByaW50ICJc
bldBUk5JTkcgISEhISEiCisJCQlwcmludCAiXHRVc2luZyBhbiBvdmVybGF5IGZvciBlYXJsaWVy
IHN0YWdlcyBjb3VsZCBjYXVzZSBidWlsZCBpc3N1ZXMuIgorCQkJcHJpbnQgIlx0SWYgeW91IGJy
ZWFrIGl0LCB5b3UgYnV5IGl0LiBEb24ndCBjb21wbGFpbiB0byB1cyBhYm91dCBpdC4iCisJCQlw
cmludCAiXHREb250IHNheSB3ZSBkaWQgbm90IHdhcm4geW91XG4iCiAKIGRlZiByZWdpc3Rlcihm
b28pOgogCWZvby51cGRhdGUoeyJzdGFnZTMiOnN0YWdlM190YXJnZXR9KQpJbmRleDogbW9kdWxl
cy9ncnBfdGFyZ2V0LnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIG1vZHVsZXMvZ3JwX3RhcmdldC5weQkocmV2
aXNpb24gMTIwNikKKysrIG1vZHVsZXMvZ3JwX3RhcmdldC5weQkod29ya2luZyBjb3B5KQpAQCAt
MzIsMTggKzMyLDE4IEBACiAJCWdlbmVyaWNfc3RhZ2VfdGFyZ2V0Ll9faW5pdF9fKHNlbGYsc3Bl
YyxhZGRsYXJncykKIAogCWRlZiBzZXRfdGFyZ2V0X3BhdGgoc2VsZik6Ci0gICAgICAgICAgICAg
ICAgc2VsZi5zZXR0aW5nc1sidGFyZ2V0X3BhdGgiXT1ub3JtcGF0aChzZWxmLnNldHRpbmdzWyJz
dG9yZWRpciJdKyIvYnVpbGRzLyIrc2VsZi5zZXR0aW5nc1sidGFyZ2V0X3N1YnBhdGgiXSsiLyIp
Ci0gICAgICAgICAgICAgICAgaWYgc2VsZi5zZXR0aW5ncy5oYXNfa2V5KCJBVVRPUkVTVU1FIikg
XAotICAgICAgICAgICAgICAgICAgICAgICAgYW5kIG9zLnBhdGguZXhpc3RzKHNlbGYuc2V0dGlu
Z3NbImF1dG9yZXN1bWVfcGF0aCJdKyJzZXR1cF90YXJnZXRfcGF0aCIpOgotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBwcmludCAiUmVzdW1lIHBvaW50IGRldGVjdGVkLCBza2lwcGlu
ZyB0YXJnZXQgcGF0aCBzZXR1cCBvcGVyYXRpb24uLi4iCi0gICAgICAgICAgICAgICAgZWxzZToK
LSAgICAgICAgICAgICAgICAgICAgICAgICMgZmlyc3QgY2xlYW4gdXAgYW55IGV4aXN0aW5nIHRh
cmdldCBzdHVmZgotICAgICAgICAgICAgICAgICAgICAgICAgI2lmIG9zLnBhdGguaXNkaXIoc2Vs
Zi5zZXR0aW5nc1sidGFyZ2V0X3BhdGgiXSk6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICNjbWQoInJtIC1yZiAiK3NlbGYuc2V0dGluZ3NbInRhcmdldF9wYXRoIl0sCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICMiQ291bGQgbm90IHJlbW92ZSBleGlzdGluZyBkaXJl
Y3Rvcnk6ICIrc2VsZi5zZXR0aW5nc1sidGFyZ2V0X3BhdGgiXSxlbnY9c2VsZi5lbnYpCi0gICAg
ICAgICAgICAgICAgICAgICAgICBpZiBub3Qgb3MucGF0aC5leGlzdHMoc2VsZi5zZXR0aW5nc1si
dGFyZ2V0X3BhdGgiXSk6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9zLm1ha2Vk
aXJzKHNlbGYuc2V0dGluZ3NbInRhcmdldF9wYXRoIl0pCi0gICAgICAgICAgICAgICAgICAgICAg
ICAKKwkJc2VsZi5zZXR0aW5nc1sidGFyZ2V0X3BhdGgiXT1ub3JtcGF0aChzZWxmLnNldHRpbmdz
WyJzdG9yZWRpciJdKyIvYnVpbGRzLyIrc2VsZi5zZXR0aW5nc1sidGFyZ2V0X3N1YnBhdGgiXSsi
LyIpCisJCWlmIHNlbGYuc2V0dGluZ3MuaGFzX2tleSgiQVVUT1JFU1VNRSIpIFwKKwkJCWFuZCBv
cy5wYXRoLmV4aXN0cyhzZWxmLnNldHRpbmdzWyJhdXRvcmVzdW1lX3BhdGgiXSsic2V0dXBfdGFy
Z2V0X3BhdGgiKToKKwkJCXByaW50ICJSZXN1bWUgcG9pbnQgZGV0ZWN0ZWQsIHNraXBwaW5nIHRh
cmdldCBwYXRoIHNldHVwIG9wZXJhdGlvbi4uLiIKKwkJZWxzZToKKwkJCSMgZmlyc3QgY2xlYW4g
dXAgYW55IGV4aXN0aW5nIHRhcmdldCBzdHVmZgorCQkJI2lmIG9zLnBhdGguaXNkaXIoc2VsZi5z
ZXR0aW5nc1sidGFyZ2V0X3BhdGgiXSk6CisJCQkJI2NtZCgicm0gLXJmICIrc2VsZi5zZXR0aW5n
c1sidGFyZ2V0X3BhdGgiXSwKKwkJCQkjIkNvdWxkIG5vdCByZW1vdmUgZXhpc3RpbmcgZGlyZWN0
b3J5OiAiK3NlbGYuc2V0dGluZ3NbInRhcmdldF9wYXRoIl0sZW52PXNlbGYuZW52KQorCQkJaWYg
bm90IG9zLnBhdGguZXhpc3RzKHNlbGYuc2V0dGluZ3NbInRhcmdldF9wYXRoIl0pOgorCQkJCW9z
Lm1ha2VkaXJzKHNlbGYuc2V0dGluZ3NbInRhcmdldF9wYXRoIl0pCisKIAkJCXRvdWNoKHNlbGYu
c2V0dGluZ3NbImF1dG9yZXN1bWVfcGF0aCJdKyJzZXR1cF90YXJnZXRfcGF0aCIpCiAKIAlkZWYg
cnVuX2xvY2FsKHNlbGYpOgpJbmRleDogbW9kdWxlcy9lbWJlZGRlZF90YXJnZXQucHkKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gbW9kdWxlcy9lbWJlZGRlZF90YXJnZXQucHkJKHJldmlzaW9uIDEyMDYpCisrKyBt
b2R1bGVzL2VtYmVkZGVkX3RhcmdldC5weQkod29ya2luZyBjb3B5KQpAQCAtMTYsMzIgKzE2LDMy
IEBACiAKIGNsYXNzIGVtYmVkZGVkX3RhcmdldChnZW5lcmljX3N0YWdlX3RhcmdldCk6CiAKLSAg
ICBkZWYgX19pbml0X18oc2VsZixzcGVjLGFkZGxhcmdzKToKLSAgICAgICAgc2VsZi5yZXF1aXJl
ZF92YWx1ZXM9W10KLSAgICAgICAgc2VsZi52YWxpZF92YWx1ZXM9W10KLSAgICAgICAgc2VsZi52
YWxpZF92YWx1ZXMuZXh0ZW5kKFsiZW1iZWRkZWQvZW1wdHkiLCJlbWJlZGRlZC9ybSIsImVtYmVk
ZGVkL3VubWVyZ2UiLCJlbWJlZGRlZC9mcy1wcmVwYXJlIiwiZW1iZWRkZWQvZnMtZmluaXNoIiwi
ZW1iZWRkZWQvbWVyZ2Vyb290IiwiZW1iZWRkZWQvcGFja2FnZXMiLCJlbWJlZGRlZC9mcy10eXBl
IiwiZW1iZWRkZWQvcnVuc2NyaXB0IiwiYm9vdC9rZXJuZWwiLCJlbWJlZGRlZC9saW51eHJjIl0p
Ci0Jc2VsZi52YWxpZF92YWx1ZXMuZXh0ZW5kKFsiZW1iZWRkZWQvdXNlIl0pCi0gICAgICAgIGlm
IGFkZGxhcmdzLmhhc19rZXkoImVtYmVkZGVkL2ZzLXR5cGUiKToKLSAgICAgICAgICAgIHNlbGYu
dmFsaWRfdmFsdWVzLmFwcGVuZCgiZW1iZWRkZWQvZnMtb3BzIikKKwlkZWYgX19pbml0X18oc2Vs
ZixzcGVjLGFkZGxhcmdzKToKKwkJc2VsZi5yZXF1aXJlZF92YWx1ZXM9W10KKwkJc2VsZi52YWxp
ZF92YWx1ZXM9W10KKwkJc2VsZi52YWxpZF92YWx1ZXMuZXh0ZW5kKFsiZW1iZWRkZWQvZW1wdHki
LCJlbWJlZGRlZC9ybSIsImVtYmVkZGVkL3VubWVyZ2UiLCJlbWJlZGRlZC9mcy1wcmVwYXJlIiwi
ZW1iZWRkZWQvZnMtZmluaXNoIiwiZW1iZWRkZWQvbWVyZ2Vyb290IiwiZW1iZWRkZWQvcGFja2Fn
ZXMiLCJlbWJlZGRlZC9mcy10eXBlIiwiZW1iZWRkZWQvcnVuc2NyaXB0IiwiYm9vdC9rZXJuZWwi
LCJlbWJlZGRlZC9saW51eHJjIl0pCisJCXNlbGYudmFsaWRfdmFsdWVzLmV4dGVuZChbImVtYmVk
ZGVkL3VzZSJdKQorCQlpZiBhZGRsYXJncy5oYXNfa2V5KCJlbWJlZGRlZC9mcy10eXBlIik6CisJ
CQlzZWxmLnZhbGlkX3ZhbHVlcy5hcHBlbmQoImVtYmVkZGVkL2ZzLW9wcyIpCiAKLQlnZW5lcmlj
X3N0YWdlX3RhcmdldC5fX2luaXRfXyhzZWxmLHNwZWMsYWRkbGFyZ3MpCi0Jc2VsZi5zZXRfYnVp
bGRfa2VybmVsX3ZhcnMoYWRkbGFyZ3MpCisJCWdlbmVyaWNfc3RhZ2VfdGFyZ2V0Ll9faW5pdF9f
KHNlbGYsc3BlYyxhZGRsYXJncykKKwkJc2VsZi5zZXRfYnVpbGRfa2VybmVsX3ZhcnMoYWRkbGFy
Z3MpCiAKLSAgICBkZWYgc2V0X2FjdGlvbl9zZXF1ZW5jZShzZWxmKToKLQlzZWxmLnNldHRpbmdz
WyJhY3Rpb25fc2VxdWVuY2UiXT1bImRpcl9zZXR1cCIsInVucGFjayIsInVucGFja19zbmFwc2hv
dCIsXAorCWRlZiBzZXRfYWN0aW9uX3NlcXVlbmNlKHNlbGYpOgorCQlzZWxmLnNldHRpbmdzWyJh
Y3Rpb25fc2VxdWVuY2UiXT1bImRpcl9zZXR1cCIsInVucGFjayIsInVucGFja19zbmFwc2hvdCIs
XAogCQkJCQkiY29uZmlnX3Byb2ZpbGVfbGluayIsInNldHVwX2NvbmZkaXIiLFwKIAkJCQkJInBv
cnRhZ2Vfb3ZlcmxheSIsImJpbmQiLCJjaHJvb3Rfc2V0dXAiLFwKIAkJCQkJInNldHVwX2Vudmly
b25tZW50IiwiYnVpbGRfa2VybmVsIiwiYnVpbGRfcGFja2FnZXMiLFwKIAkJCQkJImJvb3Rsb2Fk
ZXIiLCJyb290X292ZXJsYXkiLCJmc3NjcmlwdCIsInVubWVyZ2UiLFwKIAkJCQkJInVuYmluZCIs
InJlbW92ZSIsImVtcHR5IiwiY2xlYW4iLCJjYXB0dXJlIiwiY2xlYXJfYXV0b3Jlc3VtZSJdCiAK
LSAgICBkZWYgc2V0X3N0YWdlX3BhdGgoc2VsZik6Ci0gICAgICAgIHNlbGYuc2V0dGluZ3NbInN0
YWdlX3BhdGgiXT1ub3JtcGF0aChzZWxmLnNldHRpbmdzWyJjaHJvb3RfcGF0aCJdKyIvdG1wL21l
cmdlcm9vdCIpCi0JcHJpbnQgImVtYmVkZGVkIHN0YWdlIHBhdGggaXMgIitzZWxmLnNldHRpbmdz
WyJzdGFnZV9wYXRoIl0KKwlkZWYgc2V0X3N0YWdlX3BhdGgoc2VsZik6CisJCXNlbGYuc2V0dGlu
Z3NbInN0YWdlX3BhdGgiXT1ub3JtcGF0aChzZWxmLnNldHRpbmdzWyJjaHJvb3RfcGF0aCJdKyIv
dG1wL21lcmdlcm9vdCIpCisJCXByaW50ICJlbWJlZGRlZCBzdGFnZSBwYXRoIGlzICIrc2VsZi5z
ZXR0aW5nc1sic3RhZ2VfcGF0aCJdCiAKLSAgICBkZWYgc2V0X3Jvb3RfcGF0aChzZWxmKToKLSAg
ICAgICAgc2VsZi5zZXR0aW5nc1sicm9vdF9wYXRoIl09bm9ybXBhdGgoIi90bXAvbWVyZ2Vyb290
IikKLQlwcmludCAiZW1iZWRkZWQgcm9vdCBwYXRoIGlzICIrc2VsZi5zZXR0aW5nc1sicm9vdF9w
YXRoIl0KKwlkZWYgc2V0X3Jvb3RfcGF0aChzZWxmKToKKwkJc2VsZi5zZXR0aW5nc1sicm9vdF9w
YXRoIl09bm9ybXBhdGgoIi90bXAvbWVyZ2Vyb290IikKKwkJcHJpbnQgImVtYmVkZGVkIHJvb3Qg
cGF0aCBpcyAiK3NlbGYuc2V0dGluZ3NbInJvb3RfcGF0aCJdCiAKIGRlZiByZWdpc3Rlcihmb28p
OgogCWZvby51cGRhdGUoeyJlbWJlZGRlZCI6ZW1iZWRkZWRfdGFyZ2V0fSkKSW5kZXg6IG1vZHVs
ZXMvdGluZGVyYm94X3RhcmdldC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBtb2R1bGVzL3RpbmRlcmJveF90
YXJnZXQucHkJKHJldmlzaW9uIDEyMDYpCisrKyBtb2R1bGVzL3RpbmRlcmJveF90YXJnZXQucHkJ
KHdvcmtpbmcgY29weSkKQEAgLTI2LDIxICsyNiwyMSBAQAogCQkJcmFpc2UgQ2F0YWx5c3RFcnJv
ciwiVGluZGVyYm94IGFib3J0aW5nIGR1ZSB0byBlcnJvci4iCiAKIAlkZWYgc2V0X3BrZ2NhY2hl
X3BhdGgoc2VsZik6Ci0gICAgICAgICAgICBpZiBzZWxmLnNldHRpbmdzLmhhc19rZXkoInBrZ2Nh
Y2hlX3BhdGgiKToKLSAgICAgICAgICAgICAgICBpZiB0eXBlKHNlbGYuc2V0dGluZ3NbInBrZ2Nh
Y2hlX3BhdGgiXSkgIT0gdHlwZXMuU3RyaW5nVHlwZToKLSAgICAgICAgICAgICAgICAgICAgc2Vs
Zi5zZXR0aW5nc1sicGtnY2FjaGVfcGF0aCJdPW5vcm1wYXRoKHN0cmluZy5qb2luKHNlbGYuc2V0
dGluZ3NbInBrZ2NhY2hlX3BhdGgiXSkpCi0gICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAg
ICAgIGdlbmVyaWNfc3RhZ2VfdGFyZ2V0LnNldF9wa2djYWNoZV9wYXRoKHNlbGYpCisJCWlmIHNl
bGYuc2V0dGluZ3MuaGFzX2tleSgicGtnY2FjaGVfcGF0aCIpOgorCQkJaWYgdHlwZShzZWxmLnNl
dHRpbmdzWyJwa2djYWNoZV9wYXRoIl0pICE9IHR5cGVzLlN0cmluZ1R5cGU6CisJCQkJc2VsZi5z
ZXR0aW5nc1sicGtnY2FjaGVfcGF0aCJdPW5vcm1wYXRoKHN0cmluZy5qb2luKHNlbGYuc2V0dGlu
Z3NbInBrZ2NhY2hlX3BhdGgiXSkpCisJCQllbHNlOgorCQkJCWdlbmVyaWNfc3RhZ2VfdGFyZ2V0
LnNldF9wa2djYWNoZV9wYXRoKHNlbGYpCiAJCiAJZGVmIHNldF9jbGVhbmFibGVzKHNlbGYpOgog
CSAgICBzZWxmLnNldHRpbmdzWyJjbGVhbmFibGVzIl09WyIvZXRjL3Jlc29sdi5jb25mIiwiL3Zh
ci90bXAvKiIsIi9yb290LyoiLFwKIAkJCQkJIi91c3IvcG9ydGFnZSJdCiAJZGVmIHNldF9hY3Rp
b25fc2VxdWVuY2Uoc2VsZik6Ci0gICAgICAgICAgICAgICAgI0RlZmF1bHQgYWN0aW9uIHNlcXVl
bmNlIGZvciBydW4gbWV0aG9kCi0gICAgICAgICAgICAgICAgc2VsZi5zZXR0aW5nc1siYWN0aW9u
X3NlcXVlbmNlIl09WyJ1bnBhY2siLCJ1bnBhY2tfc25hcHNob3QiLFwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgImNvbmZpZ19wcm9maWxlX2xpbmsiLCJzZXR1cF9jb25mZGlyIiwi
YmluZCIsImNocm9vdF9zZXR1cCIsXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAi
c2V0dXBfZW52aXJvbm1lbnQiLCJydW5fbG9jYWwiLCJwcmVjbGVhbiIsInVuYmluZCIsImNsZWFu
IixcCi0JCQkJImNsZWFyX2F1dG9yZXN1bWUiXQorCQkjRGVmYXVsdCBhY3Rpb24gc2VxdWVuY2Ug
Zm9yIHJ1biBtZXRob2QKKwkJc2VsZi5zZXR0aW5nc1siYWN0aW9uX3NlcXVlbmNlIl09WyJ1bnBh
Y2siLCJ1bnBhY2tfc25hcHNob3QiLFwKKwkJICAgICAgICAgICAgICAiY29uZmlnX3Byb2ZpbGVf
bGluayIsInNldHVwX2NvbmZkaXIiLCJiaW5kIiwiY2hyb290X3NldHVwIixcCisJCSAgICAgICAg
ICAgICAgInNldHVwX2Vudmlyb25tZW50IiwicnVuX2xvY2FsIiwicHJlY2xlYW4iLCJ1bmJpbmQi
LCJjbGVhbiIsXAorCQkgICAgICAgICAgICAgICJjbGVhcl9hdXRvcmVzdW1lIl0KIAkKIGRlZiBy
ZWdpc3Rlcihmb28pOgogCWZvby51cGRhdGUoeyJ0aW5kZXJib3giOnRpbmRlcmJveF90YXJnZXR9
KQpJbmRleDogbW9kdWxlcy9nZW5lcmljX3N0YWdlX3RhcmdldC5weQo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBt
b2R1bGVzL2dlbmVyaWNfc3RhZ2VfdGFyZ2V0LnB5CShyZXZpc2lvbiAxMjA2KQorKysgbW9kdWxl
cy9nZW5lcmljX3N0YWdlX3RhcmdldC5weQkod29ya2luZyBjb3B5KQpAQCAtMjYzLDggKzI2Myw4
IEBACiAJCQkjIGZpcnN0IGNsZWFuIHVwIGFueSBleGlzdGluZyB0YXJnZXQgc3R1ZmYKIAkJCWlm
IG9zLnBhdGguaXNmaWxlKHNlbGYuc2V0dGluZ3NbInRhcmdldF9wYXRoIl0pOgogCQkJCWNtZCgi
cm0gLWYgIitzZWxmLnNldHRpbmdzWyJ0YXJnZXRfcGF0aCJdLCBcCi0JCQkJCSJDb3VsZCBub3Qg
cmVtb3ZlIGV4aXN0aW5nIGZpbGU6ICIrc2VsZi5zZXR0aW5nc1sidGFyZ2V0X3BhdGgiXSxlbnY9
c2VsZi5lbnYpCi0JCSAgICAJCXRvdWNoKHNlbGYuc2V0dGluZ3NbImF1dG9yZXN1bWVfcGF0aCJd
KyJzZXR1cF90YXJnZXRfcGF0aCIpCisJCQkJIkNvdWxkIG5vdCByZW1vdmUgZXhpc3RpbmcgZmls
ZTogIitzZWxmLnNldHRpbmdzWyJ0YXJnZXRfcGF0aCJdLGVudj1zZWxmLmVudikKKwkJCQl0b3Vj
aChzZWxmLnNldHRpbmdzWyJhdXRvcmVzdW1lX3BhdGgiXSsic2V0dXBfdGFyZ2V0X3BhdGgiKQog
CQkKIAkJCWlmIG5vdCBvcy5wYXRoLmV4aXN0cyhzZWxmLnNldHRpbmdzWyJzdG9yZWRpciJdKyIv
YnVpbGRzLyIpOgogCQkJCW9zLm1ha2VkaXJzKHNlbGYuc2V0dGluZ3NbInN0b3JlZGlyIl0rIi9i
dWlsZHMvIikKSW5kZXg6IG1vZHVsZXMvY2F0YWx5c3Rfc3VwcG9ydC5weQo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBtb2R1bGVzL2NhdGFseXN0X3N1cHBvcnQucHkJKHJldmlzaW9uIDEyMDYpCisrKyBtb2R1bGVz
L2NhdGFseXN0X3N1cHBvcnQucHkJKHdvcmtpbmcgY29weSkKQEAgLTU0LDEyICs1NCwxMiBAQAog
IyBhIGZ1bmN0aW9uIHRvIHR1cm4gYSBzdHJpbmcgb2Ygbm9uLXByaW50YWJsZSBjaGFyYWN0ZXJz
IGludG8gYSBzdHJpbmcgb2YKICMgaGV4IGNoYXJhY3RlcnMKIGRlZiBoZXhpZnkoc3RyKToKLSAg
ICBoZXhTdHIgPSBzdHJpbmcuaGV4ZGlnaXRzCi0gICAgciA9ICcnCi0gICAgZm9yIGNoIGluIHN0
cjoKLQlpID0gb3JkKGNoKQotCXIgPSByICsgaGV4U3RyWyhpID4+IDQpICYgMHhGXSArIGhleFN0
cltpICYgMHhGXQotICAgIHJldHVybiByCisJaGV4U3RyID0gc3RyaW5nLmhleGRpZ2l0cworCXIg
PSAnJworCWZvciBjaCBpbiBzdHI6CisJCWkgPSBvcmQoY2gpCisJCXIgPSByICsgaGV4U3RyWyhp
ID4+IDQpICYgMHhGXSArIGhleFN0cltpICYgMHhGXQorCXJldHVybiByCiAjIGhleGlmeSgpCiAK
IGRlZiBnZW5lcmF0ZV9oYXNoKGZpbGUsaGFzaF9mdW5jdGlvbj0iY3JjMzIiLHZlcmJvc2U9RmFs
c2UpOgpJbmRleDogbW9kdWxlcy9saXZlY2Rfc3RhZ2UxX3RhcmdldC5weQo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBtb2R1bGVzL2xpdmVjZF9zdGFnZTFfdGFyZ2V0LnB5CShyZXZpc2lvbiAxMjA2KQorKysgbW9k
dWxlcy9saXZlY2Rfc3RhZ2UxX3RhcmdldC5weQkod29ya2luZyBjb3B5KQpAQCAtNTYsMTEgKzU2
LDExIEBACiAJCXNlbGYuc2V0dGluZ3Nbc2VsZi5zZXR0aW5nc1sic3BlY19wcmVmaXgiXSsiL3Bh
Y2thZ2VzIl0uYXBwZW5kKCJhcHAtbWlzYy9saXZlY2QtdG9vbHMiKQogCiAJZGVmIHNldF9wa2dj
YWNoZV9wYXRoKHNlbGYpOgotCSAgICBpZiBzZWxmLnNldHRpbmdzLmhhc19rZXkoInBrZ2NhY2hl
X3BhdGgiKToKKwkJaWYgc2VsZi5zZXR0aW5ncy5oYXNfa2V5KCJwa2djYWNoZV9wYXRoIik6CiAJ
CQlpZiB0eXBlKHNlbGYuc2V0dGluZ3NbInBrZ2NhY2hlX3BhdGgiXSkgIT0gdHlwZXMuU3RyaW5n
VHlwZToKIAkJCQlzZWxmLnNldHRpbmdzWyJwa2djYWNoZV9wYXRoIl09bm9ybXBhdGgoc3RyaW5n
LmpvaW4oc2VsZi5zZXR0aW5nc1sicGtnY2FjaGVfcGF0aCJdKSkKLQkgICAgZWxzZToKLQkJCWdl
bmVyaWNfc3RhZ2VfdGFyZ2V0LnNldF9wa2djYWNoZV9wYXRoKHNlbGYpCisJCQllbHNlOgorCQkJ
CWdlbmVyaWNfc3RhZ2VfdGFyZ2V0LnNldF9wa2djYWNoZV9wYXRoKHNlbGYpCiAKIGRlZiByZWdp
c3Rlcihmb28pOgogCWZvby51cGRhdGUoeyJsaXZlY2Qtc3RhZ2UxIjpsaXZlY2Rfc3RhZ2UxX3Rh
cmdldH0pCkluZGV4OiBtb2R1bGVzL2xpdmVjZF9zdGFnZTJfdGFyZ2V0LnB5Cj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIG1vZHVsZXMvbGl2ZWNkX3N0YWdlMl90YXJnZXQucHkJKHJldmlzaW9uIDEyMDYpCisrKyBt
b2R1bGVzL2xpdmVjZF9zdGFnZTJfdGFyZ2V0LnB5CSh3b3JraW5nIGNvcHkpCkBAIC03MSw2MCAr
NzEsNTkgQEAKIAkJCW15Zi5jbG9zZSgpCiAJCiAJZGVmIHVucGFjayhzZWxmKToKLSAgICAgICAg
ICAgICAgICB1bnBhY2s9VHJ1ZQorCQl1bnBhY2s9VHJ1ZQogCQlkaXNwbGF5X21zZz1Ob25lCiAK
LSAgICAgICAgICAgICAgICBjbHN0X3VucGFja19oYXNoPXJlYWRfZnJvbV9jbHN0KHNlbGYuc2V0
dGluZ3NbImF1dG9yZXN1bWVfcGF0aCJdKyJ1bnBhY2siKQorCQljbHN0X3VucGFja19oYXNoPXJl
YWRfZnJvbV9jbHN0KHNlbGYuc2V0dGluZ3NbImF1dG9yZXN1bWVfcGF0aCJdKyJ1bnBhY2siKQog
Ci0gICAgICAgICAgICAgICAgaWYgb3MucGF0aC5pc2RpcihzZWxmLnNldHRpbmdzWyJzb3VyY2Vf
cGF0aCJdKToKLSAgICAgICAgICAgICAgICAgICAgICAgIHVucGFja19jbWQ9InJzeW5jIC1hIC0t
ZGVsZXRlICIrc2VsZi5zZXR0aW5nc1sic291cmNlX3BhdGgiXSsiICIrc2VsZi5zZXR0aW5nc1si
Y2hyb290X3BhdGgiXQotICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheV9tc2c9IlxuU3Rh
cnRpbmcgcnN5bmMgZnJvbSAiK3NlbGYuc2V0dGluZ3NbInNvdXJjZV9wYXRoIl0rIlxudG8gIitc
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuc2V0dGluZ3NbImNocm9vdF9w
YXRoIl0rIiAoVGhpcyBtYXkgdGFrZSBzb21lIHRpbWUpIC4uLlxuIgotICAgICAgICAgICAgICAg
ICAgICAgICAgZXJyb3JfbXNnPSJSc3luYyBvZiAiK3NlbGYuc2V0dGluZ3NbInNvdXJjZV9wYXRo
Il0rIiB0byAiK3NlbGYuc2V0dGluZ3NbImNocm9vdF9wYXRoIl0rIiBmYWlsZWQuIgotICAgICAg
ICAgICAgICAgICAgICAgICAgaW52YWxpZF9zbmFwc2hvdD1GYWxzZQorCQlpZiBvcy5wYXRoLmlz
ZGlyKHNlbGYuc2V0dGluZ3NbInNvdXJjZV9wYXRoIl0pOgorCQkJdW5wYWNrX2NtZD0icnN5bmMg
LWEgLS1kZWxldGUgIitzZWxmLnNldHRpbmdzWyJzb3VyY2VfcGF0aCJdKyIgIitzZWxmLnNldHRp
bmdzWyJjaHJvb3RfcGF0aCJdCisJCQlkaXNwbGF5X21zZz0iXG5TdGFydGluZyByc3luYyBmcm9t
ICIrc2VsZi5zZXR0aW5nc1sic291cmNlX3BhdGgiXSsiXG50byAiK1wKKwkJCQlzZWxmLnNldHRp
bmdzWyJjaHJvb3RfcGF0aCJdKyIgKFRoaXMgbWF5IHRha2Ugc29tZSB0aW1lKSAuLi5cbiIKKwkJ
CWVycm9yX21zZz0iUnN5bmMgb2YgIitzZWxmLnNldHRpbmdzWyJzb3VyY2VfcGF0aCJdKyIgdG8g
IitzZWxmLnNldHRpbmdzWyJjaHJvb3RfcGF0aCJdKyIgZmFpbGVkLiIKKwkJCWludmFsaWRfc25h
cHNob3Q9RmFsc2UKIAotICAgICAgICAgICAgICAgIGlmIHNlbGYuc2V0dGluZ3MuaGFzX2tleSgi
QVVUT1JFU1VNRSIpOgotICAgICAgICAgICAgICAgICAgICBpZiBvcy5wYXRoLmlzZGlyKHNlbGYu
c2V0dGluZ3NbInNvdXJjZV9wYXRoIl0pIGFuZCBcCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgb3MucGF0aC5leGlzdHMoc2VsZi5zZXR0aW5nc1siYXV0b3Jlc3VtZV9wYXRoIl0rInVucGFj
ayIpOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmludCAiUmVzdW1lIHBvaW50
IGRldGVjdGVkLCBza2lwcGluZyB1bnBhY2sgb3BlcmF0aW9uLi4uIgotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB1bnBhY2s9RmFsc2UKLSAgICAgICAgICAgICAgICAgICAgZWxpZiBz
ZWxmLnNldHRpbmdzLmhhc19rZXkoInNvdXJjZV9wYXRoX2hhc2giKToKLSAgICAgICAgICAgICAg
ICAgICAgICAgIGlmIHNlbGYuc2V0dGluZ3NbInNvdXJjZV9wYXRoX2hhc2giXSAhPSBjbHN0X3Vu
cGFja19oYXNoOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnZhbGlkX3NuYXBz
aG90PVRydWUKKwkJaWYgc2VsZi5zZXR0aW5ncy5oYXNfa2V5KCJBVVRPUkVTVU1FIik6CisJCQlp
ZiBvcy5wYXRoLmlzZGlyKHNlbGYuc2V0dGluZ3NbInNvdXJjZV9wYXRoIl0pIGFuZCBcCisJCQkJ
b3MucGF0aC5leGlzdHMoc2VsZi5zZXR0aW5nc1siYXV0b3Jlc3VtZV9wYXRoIl0rInVucGFjayIp
OgorCQkJCXByaW50ICJSZXN1bWUgcG9pbnQgZGV0ZWN0ZWQsIHNraXBwaW5nIHVucGFjayBvcGVy
YXRpb24uLi4iCisJCQkJdW5wYWNrPUZhbHNlCisJCQllbGlmIHNlbGYuc2V0dGluZ3MuaGFzX2tl
eSgic291cmNlX3BhdGhfaGFzaCIpOgorCQkJCWlmIHNlbGYuc2V0dGluZ3NbInNvdXJjZV9wYXRo
X2hhc2giXSAhPSBjbHN0X3VucGFja19oYXNoOgorCQkJCQlpbnZhbGlkX3NuYXBzaG90PVRydWUK
IAotICAgICAgICAgICAgICAgIGlmIHVucGFjazoKLSAgICAgICAgICAgICAgICAgICAgICAgIHNl
bGYubW91bnRfc2FmZXR5X2NoZWNrKCkKLSAgICAgICAgICAgICAgICAgICAgICAgIGlmIGludmFs
aWRfc25hcHNob3Q6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByaW50ICJObyBW
YWxpZCBSZXN1bWUgcG9pbnQgZGV0ZWN0ZWQsIGNsZWFuaW5nIHVwICAuLi4iCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICNvcy5yZW1vdmUoc2VsZi5zZXR0aW5nc1siYXV0b3Jlc3Vt
ZV9wYXRoIl0rImRpcl9zZXR1cCIpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNl
bGYuY2xlYXJfYXV0b3Jlc3VtZSgpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNl
bGYuY2xlYXJfY2hyb290KCkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI3NlbGYu
ZGlyX3NldHVwKCkKKwkJaWYgdW5wYWNrOgorCQkJc2VsZi5tb3VudF9zYWZldHlfY2hlY2soKQor
CQkJaWYgaW52YWxpZF9zbmFwc2hvdDoKKwkJCQlwcmludCAiTm8gVmFsaWQgUmVzdW1lIHBvaW50
IGRldGVjdGVkLCBjbGVhbmluZyB1cCAgLi4uIgorCQkJCSNvcy5yZW1vdmUoc2VsZi5zZXR0aW5n
c1siYXV0b3Jlc3VtZV9wYXRoIl0rImRpcl9zZXR1cCIpCisJCQkJc2VsZi5jbGVhcl9hdXRvcmVz
dW1lKCkKKwkJCQlzZWxmLmNsZWFyX2Nocm9vdCgpCisJCQkJI3NlbGYuZGlyX3NldHVwKCkKIAot
ICAgICAgICAgICAgICAgICAgICAgICAgaWYgbm90IG9zLnBhdGguZXhpc3RzKHNlbGYuc2V0dGlu
Z3NbImNocm9vdF9wYXRoIl0pOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5t
YWtlZGlycyhzZWxmLnNldHRpbmdzWyJjaHJvb3RfcGF0aCJdKQorCQkJaWYgbm90IG9zLnBhdGgu
ZXhpc3RzKHNlbGYuc2V0dGluZ3NbImNocm9vdF9wYXRoIl0pOgorCQkJCW9zLm1ha2VkaXJzKHNl
bGYuc2V0dGluZ3NbImNocm9vdF9wYXRoIl0pCiAKLSAgICAgICAgICAgICAgICAgICAgICAgIGlm
IG5vdCBvcy5wYXRoLmV4aXN0cyhzZWxmLnNldHRpbmdzWyJjaHJvb3RfcGF0aCJdKyIvdG1wIik6
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9zLm1ha2VkaXJzKHNlbGYuc2V0dGlu
Z3NbImNocm9vdF9wYXRoIl0rIi90bXAiLDE3NzcpCisJCQlpZiBub3Qgb3MucGF0aC5leGlzdHMo
c2VsZi5zZXR0aW5nc1siY2hyb290X3BhdGgiXSsiL3RtcCIpOgorCQkJCW9zLm1ha2VkaXJzKHNl
bGYuc2V0dGluZ3NbImNocm9vdF9wYXRoIl0rIi90bXAiLDE3NzcpCiAKLSAgICAgICAgICAgICAg
ICAgICAgICAgIGlmIHNlbGYuc2V0dGluZ3MuaGFzX2tleSgiUEtHQ0FDSEUiKToKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgaWYgbm90IG9zLnBhdGguZXhpc3RzKHNlbGYuc2V0dGlu
Z3NbInBrZ2NhY2hlX3BhdGgiXSk6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgb3MubWFrZWRpcnMoc2VsZi5zZXR0aW5nc1sicGtnY2FjaGVfcGF0aCJdLDA3NTUpCisJ
CQlpZiBzZWxmLnNldHRpbmdzLmhhc19rZXkoIlBLR0NBQ0hFIik6CisJCQkJaWYgbm90IG9zLnBh
dGguZXhpc3RzKHNlbGYuc2V0dGluZ3NbInBrZ2NhY2hlX3BhdGgiXSk6CisJCQkJCW9zLm1ha2Vk
aXJzKHNlbGYuc2V0dGluZ3NbInBrZ2NhY2hlX3BhdGgiXSwwNzU1KQogCiAJCQlpZiBub3QgZGlz
cGxheV9tc2c6CiAJCQkJcmFpc2UgQ2F0YWx5c3RFcnJvciwiQ291bGQgbm90IGZpbmQgYXBwcm9w
cmlhdGUgc291cmNlLiBQbGVhc2UgY2hlY2sgdGhlICdzb3VyY2Vfc3VicGF0aCcgc2V0dGluZyBp
biB0aGUgc3BlYyBmaWxlLiIKIAotICAgICAgICAgICAgICAgICAgICAgICAgcHJpbnQgZGlzcGxh
eV9tc2cKLSAgICAgICAgICAgICAgICAgICAgICAgIGNtZCh1bnBhY2tfY21kLGVycm9yX21zZyxl
bnY9c2VsZi5lbnYpCisJCQlwcmludCBkaXNwbGF5X21zZworCQkJY21kKHVucGFja19jbWQsZXJy
b3JfbXNnLGVudj1zZWxmLmVudikKIAotICAgICAgICAgICAgICAgICAgICAgICAgaWYgc2VsZi5z
ZXR0aW5ncy5oYXNfa2V5KCJzb3VyY2VfcGF0aF9oYXNoIik6Ci0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIG15Zj1vcGVuKHNlbGYuc2V0dGluZ3NbImF1dG9yZXN1bWVfcGF0aCJdKyJ1
bnBhY2siLCJ3IikKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXlmLndyaXRlKHNl
bGYuc2V0dGluZ3NbInNvdXJjZV9wYXRoX2hhc2giXSkKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgbXlmLmNsb3NlKCkKLSAgICAgICAgICAgICAgICAgICAgICAgIGVsc2U6Ci0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvdWNoKHNlbGYuc2V0dGluZ3NbImF1dG9yZXN1
bWVfcGF0aCJdKyJ1bnBhY2siKQorCQkJaWYgc2VsZi5zZXR0aW5ncy5oYXNfa2V5KCJzb3VyY2Vf
cGF0aF9oYXNoIik6CisJCQkJbXlmPW9wZW4oc2VsZi5zZXR0aW5nc1siYXV0b3Jlc3VtZV9wYXRo
Il0rInVucGFjayIsInciKQorCQkJCW15Zi53cml0ZShzZWxmLnNldHRpbmdzWyJzb3VyY2VfcGF0
aF9oYXNoIl0pCisJCQkJbXlmLmNsb3NlKCkKKwkJCWVsc2U6CisJCQkJdG91Y2goc2VsZi5zZXR0
aW5nc1siYXV0b3Jlc3VtZV9wYXRoIl0rInVucGFjayIpCiAKLQogCWRlZiBzZXRfYWN0aW9uX3Nl
cXVlbmNlKHNlbGYpOgogCQlzZWxmLnNldHRpbmdzWyJhY3Rpb25fc2VxdWVuY2UiXT1bInVucGFj
ayIsInVucGFja19zbmFwc2hvdCIsXAogCQkJCSJjb25maWdfcHJvZmlsZV9saW5rIiwic2V0dXBf
Y29uZmRpciIsInBvcnRhZ2Vfb3ZlcmxheSIsXAo=
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>107271</attachid>
            <date>2007-01-17 15:42 0000</date>
            <desc>new patch</desc>
            <filename>catalyst.patch</filename>
            <type>text/plain</type>
            <data encoding="base64">SW5kZXg6IG1vZHVsZXMvc3RhZ2UzX3RhcmdldC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBtb2R1bGVzL3N0
YWdlM190YXJnZXQucHkJKHJldmlzaW9uIDEyMDYpCisrKyBtb2R1bGVzL3N0YWdlM190YXJnZXQu
cHkJKHdvcmtpbmcgY29weSkKQEAgLTEyLDEzICsxMiwxMyBAQAogCQlzZWxmLnZhbGlkX3ZhbHVl
cz1bXQogCQlnZW5lcmljX3N0YWdlX3RhcmdldC5fX2luaXRfXyhzZWxmLHNwZWMsYWRkbGFyZ3Mp
CiAKLSAgICAgICAgZGVmIHNldF9wb3J0YWdlX292ZXJsYXkoc2VsZik6Ci0JCQlnZW5lcmljX3N0
YWdlX3RhcmdldC5zZXRfcG9ydGFnZV9vdmVybGF5KHNlbGYpCi0JCQlpZiBzZWxmLnNldHRpbmdz
Lmhhc19rZXkoInBvcnRhZ2Vfb3ZlcmxheSIpOgotCQkJCXByaW50ICJcbldBUk5JTkcgISEhISEi
Ci0JCQkJcHJpbnQgIlx0VXNpbmcgYW4gb3ZlcmxheSBmb3IgZWFybGllciBzdGFnZXMgY291bGQg
Y2F1c2UgYnVpbGQgaXNzdWVzLiIKLQkJCQlwcmludCAiXHRJZiB5b3UgYnJlYWsgaXQsIHlvdSBi
dXkgaXQuIERvbid0IGNvbXBsYWluIHRvIHVzIGFib3V0IGl0LiIKLQkJCQlwcmludCAiXHREb250
IHNheSB3ZSBkaWQgbm90IHdhcm4geW91XG4iCisJZGVmIHNldF9wb3J0YWdlX292ZXJsYXkoc2Vs
Zik6CisJCWdlbmVyaWNfc3RhZ2VfdGFyZ2V0LnNldF9wb3J0YWdlX292ZXJsYXkoc2VsZikKKwkJ
aWYgc2VsZi5zZXR0aW5ncy5oYXNfa2V5KCJwb3J0YWdlX292ZXJsYXkiKToKKwkJCXByaW50ICJc
bldBUk5JTkcgISEhISEiCisJCQlwcmludCAiXHRVc2luZyBhbiBvdmVybGF5IGZvciBlYXJsaWVy
IHN0YWdlcyBjb3VsZCBjYXVzZSBidWlsZCBpc3N1ZXMuIgorCQkJcHJpbnQgIlx0SWYgeW91IGJy
ZWFrIGl0LCB5b3UgYnV5IGl0LiBEb24ndCBjb21wbGFpbiB0byB1cyBhYm91dCBpdC4iCisJCQlw
cmludCAiXHREb250IHNheSB3ZSBkaWQgbm90IHdhcm4geW91XG4iCiAKIGRlZiByZWdpc3Rlcihm
b28pOgogCWZvby51cGRhdGUoeyJzdGFnZTMiOnN0YWdlM190YXJnZXR9KQpJbmRleDogbW9kdWxl
cy9ncnBfdGFyZ2V0LnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIG1vZHVsZXMvZ3JwX3RhcmdldC5weQkocmV2
aXNpb24gMTIwNikKKysrIG1vZHVsZXMvZ3JwX3RhcmdldC5weQkod29ya2luZyBjb3B5KQpAQCAt
MzIsMTggKzMyLDE4IEBACiAJCWdlbmVyaWNfc3RhZ2VfdGFyZ2V0Ll9faW5pdF9fKHNlbGYsc3Bl
YyxhZGRsYXJncykKIAogCWRlZiBzZXRfdGFyZ2V0X3BhdGgoc2VsZik6Ci0gICAgICAgICAgICAg
ICAgc2VsZi5zZXR0aW5nc1sidGFyZ2V0X3BhdGgiXT1ub3JtcGF0aChzZWxmLnNldHRpbmdzWyJz
dG9yZWRpciJdKyIvYnVpbGRzLyIrc2VsZi5zZXR0aW5nc1sidGFyZ2V0X3N1YnBhdGgiXSsiLyIp
Ci0gICAgICAgICAgICAgICAgaWYgc2VsZi5zZXR0aW5ncy5oYXNfa2V5KCJBVVRPUkVTVU1FIikg
XAotICAgICAgICAgICAgICAgICAgICAgICAgYW5kIG9zLnBhdGguZXhpc3RzKHNlbGYuc2V0dGlu
Z3NbImF1dG9yZXN1bWVfcGF0aCJdKyJzZXR1cF90YXJnZXRfcGF0aCIpOgotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBwcmludCAiUmVzdW1lIHBvaW50IGRldGVjdGVkLCBza2lwcGlu
ZyB0YXJnZXQgcGF0aCBzZXR1cCBvcGVyYXRpb24uLi4iCi0gICAgICAgICAgICAgICAgZWxzZToK
LSAgICAgICAgICAgICAgICAgICAgICAgICMgZmlyc3QgY2xlYW4gdXAgYW55IGV4aXN0aW5nIHRh
cmdldCBzdHVmZgotICAgICAgICAgICAgICAgICAgICAgICAgI2lmIG9zLnBhdGguaXNkaXIoc2Vs
Zi5zZXR0aW5nc1sidGFyZ2V0X3BhdGgiXSk6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICNjbWQoInJtIC1yZiAiK3NlbGYuc2V0dGluZ3NbInRhcmdldF9wYXRoIl0sCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICMiQ291bGQgbm90IHJlbW92ZSBleGlzdGluZyBkaXJl
Y3Rvcnk6ICIrc2VsZi5zZXR0aW5nc1sidGFyZ2V0X3BhdGgiXSxlbnY9c2VsZi5lbnYpCi0gICAg
ICAgICAgICAgICAgICAgICAgICBpZiBub3Qgb3MucGF0aC5leGlzdHMoc2VsZi5zZXR0aW5nc1si
dGFyZ2V0X3BhdGgiXSk6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9zLm1ha2Vk
aXJzKHNlbGYuc2V0dGluZ3NbInRhcmdldF9wYXRoIl0pCi0gICAgICAgICAgICAgICAgICAgICAg
ICAKKwkJc2VsZi5zZXR0aW5nc1sidGFyZ2V0X3BhdGgiXT1ub3JtcGF0aChzZWxmLnNldHRpbmdz
WyJzdG9yZWRpciJdKyIvYnVpbGRzLyIrc2VsZi5zZXR0aW5nc1sidGFyZ2V0X3N1YnBhdGgiXSsi
LyIpCisJCWlmIHNlbGYuc2V0dGluZ3MuaGFzX2tleSgiQVVUT1JFU1VNRSIpIFwKKwkJCWFuZCBv
cy5wYXRoLmV4aXN0cyhzZWxmLnNldHRpbmdzWyJhdXRvcmVzdW1lX3BhdGgiXSsic2V0dXBfdGFy
Z2V0X3BhdGgiKToKKwkJCXByaW50ICJSZXN1bWUgcG9pbnQgZGV0ZWN0ZWQsIHNraXBwaW5nIHRh
cmdldCBwYXRoIHNldHVwIG9wZXJhdGlvbi4uLiIKKwkJZWxzZToKKwkJCSMgZmlyc3QgY2xlYW4g
dXAgYW55IGV4aXN0aW5nIHRhcmdldCBzdHVmZgorCQkJI2lmIG9zLnBhdGguaXNkaXIoc2VsZi5z
ZXR0aW5nc1sidGFyZ2V0X3BhdGgiXSk6CisJCQkJI2NtZCgicm0gLXJmICIrc2VsZi5zZXR0aW5n
c1sidGFyZ2V0X3BhdGgiXSwKKwkJCQkjIkNvdWxkIG5vdCByZW1vdmUgZXhpc3RpbmcgZGlyZWN0
b3J5OiAiK3NlbGYuc2V0dGluZ3NbInRhcmdldF9wYXRoIl0sZW52PXNlbGYuZW52KQorCQkJaWYg
bm90IG9zLnBhdGguZXhpc3RzKHNlbGYuc2V0dGluZ3NbInRhcmdldF9wYXRoIl0pOgorCQkJCW9z
Lm1ha2VkaXJzKHNlbGYuc2V0dGluZ3NbInRhcmdldF9wYXRoIl0pCisKIAkJCXRvdWNoKHNlbGYu
c2V0dGluZ3NbImF1dG9yZXN1bWVfcGF0aCJdKyJzZXR1cF90YXJnZXRfcGF0aCIpCiAKIAlkZWYg
cnVuX2xvY2FsKHNlbGYpOgpJbmRleDogbW9kdWxlcy9lbWJlZGRlZF90YXJnZXQucHkKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gbW9kdWxlcy9lbWJlZGRlZF90YXJnZXQucHkJKHJldmlzaW9uIDEyMDYpCisrKyBt
b2R1bGVzL2VtYmVkZGVkX3RhcmdldC5weQkod29ya2luZyBjb3B5KQpAQCAtMTYsMzIgKzE2LDMy
IEBACiAKIGNsYXNzIGVtYmVkZGVkX3RhcmdldChnZW5lcmljX3N0YWdlX3RhcmdldCk6CiAKLSAg
ICBkZWYgX19pbml0X18oc2VsZixzcGVjLGFkZGxhcmdzKToKLSAgICAgICAgc2VsZi5yZXF1aXJl
ZF92YWx1ZXM9W10KLSAgICAgICAgc2VsZi52YWxpZF92YWx1ZXM9W10KLSAgICAgICAgc2VsZi52
YWxpZF92YWx1ZXMuZXh0ZW5kKFsiZW1iZWRkZWQvZW1wdHkiLCJlbWJlZGRlZC9ybSIsImVtYmVk
ZGVkL3VubWVyZ2UiLCJlbWJlZGRlZC9mcy1wcmVwYXJlIiwiZW1iZWRkZWQvZnMtZmluaXNoIiwi
ZW1iZWRkZWQvbWVyZ2Vyb290IiwiZW1iZWRkZWQvcGFja2FnZXMiLCJlbWJlZGRlZC9mcy10eXBl
IiwiZW1iZWRkZWQvcnVuc2NyaXB0IiwiYm9vdC9rZXJuZWwiLCJlbWJlZGRlZC9saW51eHJjIl0p
Ci0Jc2VsZi52YWxpZF92YWx1ZXMuZXh0ZW5kKFsiZW1iZWRkZWQvdXNlIl0pCi0gICAgICAgIGlm
IGFkZGxhcmdzLmhhc19rZXkoImVtYmVkZGVkL2ZzLXR5cGUiKToKLSAgICAgICAgICAgIHNlbGYu
dmFsaWRfdmFsdWVzLmFwcGVuZCgiZW1iZWRkZWQvZnMtb3BzIikKKwlkZWYgX19pbml0X18oc2Vs
ZixzcGVjLGFkZGxhcmdzKToKKwkJc2VsZi5yZXF1aXJlZF92YWx1ZXM9W10KKwkJc2VsZi52YWxp
ZF92YWx1ZXM9W10KKwkJc2VsZi52YWxpZF92YWx1ZXMuZXh0ZW5kKFsiZW1iZWRkZWQvZW1wdHki
LCJlbWJlZGRlZC9ybSIsImVtYmVkZGVkL3VubWVyZ2UiLCJlbWJlZGRlZC9mcy1wcmVwYXJlIiwi
ZW1iZWRkZWQvZnMtZmluaXNoIiwiZW1iZWRkZWQvbWVyZ2Vyb290IiwiZW1iZWRkZWQvcGFja2Fn
ZXMiLCJlbWJlZGRlZC9mcy10eXBlIiwiZW1iZWRkZWQvcnVuc2NyaXB0IiwiYm9vdC9rZXJuZWwi
LCJlbWJlZGRlZC9saW51eHJjIl0pCisJCXNlbGYudmFsaWRfdmFsdWVzLmV4dGVuZChbImVtYmVk
ZGVkL3VzZSJdKQorCQlpZiBhZGRsYXJncy5oYXNfa2V5KCJlbWJlZGRlZC9mcy10eXBlIik6CisJ
CQlzZWxmLnZhbGlkX3ZhbHVlcy5hcHBlbmQoImVtYmVkZGVkL2ZzLW9wcyIpCiAKLQlnZW5lcmlj
X3N0YWdlX3RhcmdldC5fX2luaXRfXyhzZWxmLHNwZWMsYWRkbGFyZ3MpCi0Jc2VsZi5zZXRfYnVp
bGRfa2VybmVsX3ZhcnMoYWRkbGFyZ3MpCisJCWdlbmVyaWNfc3RhZ2VfdGFyZ2V0Ll9faW5pdF9f
KHNlbGYsc3BlYyxhZGRsYXJncykKKwkJc2VsZi5zZXRfYnVpbGRfa2VybmVsX3ZhcnMoYWRkbGFy
Z3MpCiAKLSAgICBkZWYgc2V0X2FjdGlvbl9zZXF1ZW5jZShzZWxmKToKLQlzZWxmLnNldHRpbmdz
WyJhY3Rpb25fc2VxdWVuY2UiXT1bImRpcl9zZXR1cCIsInVucGFjayIsInVucGFja19zbmFwc2hv
dCIsXAorCWRlZiBzZXRfYWN0aW9uX3NlcXVlbmNlKHNlbGYpOgorCQlzZWxmLnNldHRpbmdzWyJh
Y3Rpb25fc2VxdWVuY2UiXT1bImRpcl9zZXR1cCIsInVucGFjayIsInVucGFja19zbmFwc2hvdCIs
XAogCQkJCQkiY29uZmlnX3Byb2ZpbGVfbGluayIsInNldHVwX2NvbmZkaXIiLFwKIAkJCQkJInBv
cnRhZ2Vfb3ZlcmxheSIsImJpbmQiLCJjaHJvb3Rfc2V0dXAiLFwKIAkJCQkJInNldHVwX2Vudmly
b25tZW50IiwiYnVpbGRfa2VybmVsIiwiYnVpbGRfcGFja2FnZXMiLFwKIAkJCQkJImJvb3Rsb2Fk
ZXIiLCJyb290X292ZXJsYXkiLCJmc3NjcmlwdCIsInVubWVyZ2UiLFwKIAkJCQkJInVuYmluZCIs
InJlbW92ZSIsImVtcHR5IiwiY2xlYW4iLCJjYXB0dXJlIiwiY2xlYXJfYXV0b3Jlc3VtZSJdCiAK
LSAgICBkZWYgc2V0X3N0YWdlX3BhdGgoc2VsZik6Ci0gICAgICAgIHNlbGYuc2V0dGluZ3NbInN0
YWdlX3BhdGgiXT1ub3JtcGF0aChzZWxmLnNldHRpbmdzWyJjaHJvb3RfcGF0aCJdKyIvdG1wL21l
cmdlcm9vdCIpCi0JcHJpbnQgImVtYmVkZGVkIHN0YWdlIHBhdGggaXMgIitzZWxmLnNldHRpbmdz
WyJzdGFnZV9wYXRoIl0KKwlkZWYgc2V0X3N0YWdlX3BhdGgoc2VsZik6CisJCXNlbGYuc2V0dGlu
Z3NbInN0YWdlX3BhdGgiXT1ub3JtcGF0aChzZWxmLnNldHRpbmdzWyJjaHJvb3RfcGF0aCJdKyIv
dG1wL21lcmdlcm9vdCIpCisJCXByaW50ICJlbWJlZGRlZCBzdGFnZSBwYXRoIGlzICIrc2VsZi5z
ZXR0aW5nc1sic3RhZ2VfcGF0aCJdCiAKLSAgICBkZWYgc2V0X3Jvb3RfcGF0aChzZWxmKToKLSAg
ICAgICAgc2VsZi5zZXR0aW5nc1sicm9vdF9wYXRoIl09bm9ybXBhdGgoIi90bXAvbWVyZ2Vyb290
IikKLQlwcmludCAiZW1iZWRkZWQgcm9vdCBwYXRoIGlzICIrc2VsZi5zZXR0aW5nc1sicm9vdF9w
YXRoIl0KKwlkZWYgc2V0X3Jvb3RfcGF0aChzZWxmKToKKwkJc2VsZi5zZXR0aW5nc1sicm9vdF9w
YXRoIl09bm9ybXBhdGgoIi90bXAvbWVyZ2Vyb290IikKKwkJcHJpbnQgImVtYmVkZGVkIHJvb3Qg
cGF0aCBpcyAiK3NlbGYuc2V0dGluZ3NbInJvb3RfcGF0aCJdCiAKIGRlZiByZWdpc3Rlcihmb28p
OgogCWZvby51cGRhdGUoeyJlbWJlZGRlZCI6ZW1iZWRkZWRfdGFyZ2V0fSkKSW5kZXg6IG1vZHVs
ZXMvdGluZGVyYm94X3RhcmdldC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBtb2R1bGVzL3RpbmRlcmJveF90
YXJnZXQucHkJKHJldmlzaW9uIDEyMDYpCisrKyBtb2R1bGVzL3RpbmRlcmJveF90YXJnZXQucHkJ
KHdvcmtpbmcgY29weSkKQEAgLTI2LDIxICsyNiwyMSBAQAogCQkJcmFpc2UgQ2F0YWx5c3RFcnJv
ciwiVGluZGVyYm94IGFib3J0aW5nIGR1ZSB0byBlcnJvci4iCiAKIAlkZWYgc2V0X3BrZ2NhY2hl
X3BhdGgoc2VsZik6Ci0gICAgICAgICAgICBpZiBzZWxmLnNldHRpbmdzLmhhc19rZXkoInBrZ2Nh
Y2hlX3BhdGgiKToKLSAgICAgICAgICAgICAgICBpZiB0eXBlKHNlbGYuc2V0dGluZ3NbInBrZ2Nh
Y2hlX3BhdGgiXSkgIT0gdHlwZXMuU3RyaW5nVHlwZToKLSAgICAgICAgICAgICAgICAgICAgc2Vs
Zi5zZXR0aW5nc1sicGtnY2FjaGVfcGF0aCJdPW5vcm1wYXRoKHN0cmluZy5qb2luKHNlbGYuc2V0
dGluZ3NbInBrZ2NhY2hlX3BhdGgiXSkpCi0gICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAg
ICAgIGdlbmVyaWNfc3RhZ2VfdGFyZ2V0LnNldF9wa2djYWNoZV9wYXRoKHNlbGYpCisJCWlmIHNl
bGYuc2V0dGluZ3MuaGFzX2tleSgicGtnY2FjaGVfcGF0aCIpOgorCQkJaWYgdHlwZShzZWxmLnNl
dHRpbmdzWyJwa2djYWNoZV9wYXRoIl0pICE9IHR5cGVzLlN0cmluZ1R5cGU6CisJCQkJc2VsZi5z
ZXR0aW5nc1sicGtnY2FjaGVfcGF0aCJdPW5vcm1wYXRoKHN0cmluZy5qb2luKHNlbGYuc2V0dGlu
Z3NbInBrZ2NhY2hlX3BhdGgiXSkpCisJCQllbHNlOgorCQkJCWdlbmVyaWNfc3RhZ2VfdGFyZ2V0
LnNldF9wa2djYWNoZV9wYXRoKHNlbGYpCiAJCiAJZGVmIHNldF9jbGVhbmFibGVzKHNlbGYpOgog
CSAgICBzZWxmLnNldHRpbmdzWyJjbGVhbmFibGVzIl09WyIvZXRjL3Jlc29sdi5jb25mIiwiL3Zh
ci90bXAvKiIsIi9yb290LyoiLFwKIAkJCQkJIi91c3IvcG9ydGFnZSJdCiAJZGVmIHNldF9hY3Rp
b25fc2VxdWVuY2Uoc2VsZik6Ci0gICAgICAgICAgICAgICAgI0RlZmF1bHQgYWN0aW9uIHNlcXVl
bmNlIGZvciBydW4gbWV0aG9kCi0gICAgICAgICAgICAgICAgc2VsZi5zZXR0aW5nc1siYWN0aW9u
X3NlcXVlbmNlIl09WyJ1bnBhY2siLCJ1bnBhY2tfc25hcHNob3QiLFwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgImNvbmZpZ19wcm9maWxlX2xpbmsiLCJzZXR1cF9jb25mZGlyIiwi
YmluZCIsImNocm9vdF9zZXR1cCIsXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAi
c2V0dXBfZW52aXJvbm1lbnQiLCJydW5fbG9jYWwiLCJwcmVjbGVhbiIsInVuYmluZCIsImNsZWFu
IixcCi0JCQkJImNsZWFyX2F1dG9yZXN1bWUiXQorCQkjRGVmYXVsdCBhY3Rpb24gc2VxdWVuY2Ug
Zm9yIHJ1biBtZXRob2QKKwkJc2VsZi5zZXR0aW5nc1siYWN0aW9uX3NlcXVlbmNlIl09WyJ1bnBh
Y2siLCJ1bnBhY2tfc25hcHNob3QiLFwKKwkJICAgICAgICAgICAgICAiY29uZmlnX3Byb2ZpbGVf
bGluayIsInNldHVwX2NvbmZkaXIiLCJiaW5kIiwiY2hyb290X3NldHVwIixcCisJCSAgICAgICAg
ICAgICAgInNldHVwX2Vudmlyb25tZW50IiwicnVuX2xvY2FsIiwicHJlY2xlYW4iLCJ1bmJpbmQi
LCJjbGVhbiIsXAorCQkgICAgICAgICAgICAgICJjbGVhcl9hdXRvcmVzdW1lIl0KIAkKIGRlZiBy
ZWdpc3Rlcihmb28pOgogCWZvby51cGRhdGUoeyJ0aW5kZXJib3giOnRpbmRlcmJveF90YXJnZXR9
KQpJbmRleDogbW9kdWxlcy9nZW5lcmljX3N0YWdlX3RhcmdldC5weQo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBt
b2R1bGVzL2dlbmVyaWNfc3RhZ2VfdGFyZ2V0LnB5CShyZXZpc2lvbiAxMjA2KQorKysgbW9kdWxl
cy9nZW5lcmljX3N0YWdlX3RhcmdldC5weQkod29ya2luZyBjb3B5KQpAQCAtMjYzLDggKzI2Myw4
IEBACiAJCQkjIGZpcnN0IGNsZWFuIHVwIGFueSBleGlzdGluZyB0YXJnZXQgc3R1ZmYKIAkJCWlm
IG9zLnBhdGguaXNmaWxlKHNlbGYuc2V0dGluZ3NbInRhcmdldF9wYXRoIl0pOgogCQkJCWNtZCgi
cm0gLWYgIitzZWxmLnNldHRpbmdzWyJ0YXJnZXRfcGF0aCJdLCBcCi0JCQkJCSJDb3VsZCBub3Qg
cmVtb3ZlIGV4aXN0aW5nIGZpbGU6ICIrc2VsZi5zZXR0aW5nc1sidGFyZ2V0X3BhdGgiXSxlbnY9
c2VsZi5lbnYpCi0JCSAgICAJCXRvdWNoKHNlbGYuc2V0dGluZ3NbImF1dG9yZXN1bWVfcGF0aCJd
KyJzZXR1cF90YXJnZXRfcGF0aCIpCisJCQkJIkNvdWxkIG5vdCByZW1vdmUgZXhpc3RpbmcgZmls
ZTogIitzZWxmLnNldHRpbmdzWyJ0YXJnZXRfcGF0aCJdLGVudj1zZWxmLmVudikKKwkJCQl0b3Vj
aChzZWxmLnNldHRpbmdzWyJhdXRvcmVzdW1lX3BhdGgiXSsic2V0dXBfdGFyZ2V0X3BhdGgiKQog
CQkKIAkJCWlmIG5vdCBvcy5wYXRoLmV4aXN0cyhzZWxmLnNldHRpbmdzWyJzdG9yZWRpciJdKyIv
YnVpbGRzLyIpOgogCQkJCW9zLm1ha2VkaXJzKHNlbGYuc2V0dGluZ3NbInN0b3JlZGlyIl0rIi9i
dWlsZHMvIikKSW5kZXg6IG1vZHVsZXMvY2F0YWx5c3Rfc3VwcG9ydC5weQo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBtb2R1bGVzL2NhdGFseXN0X3N1cHBvcnQucHkJKHJldmlzaW9uIDEyMDYpCisrKyBtb2R1bGVz
L2NhdGFseXN0X3N1cHBvcnQucHkJKHdvcmtpbmcgY29weSkKQEAgLTU0LDEyICs1NCwxMiBAQAog
IyBhIGZ1bmN0aW9uIHRvIHR1cm4gYSBzdHJpbmcgb2Ygbm9uLXByaW50YWJsZSBjaGFyYWN0ZXJz
IGludG8gYSBzdHJpbmcgb2YKICMgaGV4IGNoYXJhY3RlcnMKIGRlZiBoZXhpZnkoc3RyKToKLSAg
ICBoZXhTdHIgPSBzdHJpbmcuaGV4ZGlnaXRzCi0gICAgciA9ICcnCi0gICAgZm9yIGNoIGluIHN0
cjoKLQlpID0gb3JkKGNoKQotCXIgPSByICsgaGV4U3RyWyhpID4+IDQpICYgMHhGXSArIGhleFN0
cltpICYgMHhGXQotICAgIHJldHVybiByCisJaGV4U3RyID0gc3RyaW5nLmhleGRpZ2l0cworCXIg
PSAnJworCWZvciBjaCBpbiBzdHI6CisJCWkgPSBvcmQoY2gpCisJCXIgPSByICsgaGV4U3RyWyhp
ID4+IDQpICYgMHhGXSArIGhleFN0cltpICYgMHhGXQorCXJldHVybiByCiAjIGhleGlmeSgpCiAK
IGRlZiBnZW5lcmF0ZV9oYXNoKGZpbGUsaGFzaF9mdW5jdGlvbj0iY3JjMzIiLHZlcmJvc2U9RmFs
c2UpOgpJbmRleDogbW9kdWxlcy9saXZlY2Rfc3RhZ2UxX3RhcmdldC5weQo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBtb2R1bGVzL2xpdmVjZF9zdGFnZTFfdGFyZ2V0LnB5CShyZXZpc2lvbiAxMjA2KQorKysgbW9k
dWxlcy9saXZlY2Rfc3RhZ2UxX3RhcmdldC5weQkod29ya2luZyBjb3B5KQpAQCAtNTYsMTAgKzU2
LDEwIEBACiAJCXNlbGYuc2V0dGluZ3Nbc2VsZi5zZXR0aW5nc1sic3BlY19wcmVmaXgiXSsiL3Bh
Y2thZ2VzIl0uYXBwZW5kKCJhcHAtbWlzYy9saXZlY2QtdG9vbHMiKQogCiAJZGVmIHNldF9wa2dj
YWNoZV9wYXRoKHNlbGYpOgotCSAgICBpZiBzZWxmLnNldHRpbmdzLmhhc19rZXkoInBrZ2NhY2hl
X3BhdGgiKToKKwkJaWYgc2VsZi5zZXR0aW5ncy5oYXNfa2V5KCJwa2djYWNoZV9wYXRoIik6CiAJ
CQlpZiB0eXBlKHNlbGYuc2V0dGluZ3NbInBrZ2NhY2hlX3BhdGgiXSkgIT0gdHlwZXMuU3RyaW5n
VHlwZToKIAkJCQlzZWxmLnNldHRpbmdzWyJwa2djYWNoZV9wYXRoIl09bm9ybXBhdGgoc3RyaW5n
LmpvaW4oc2VsZi5zZXR0aW5nc1sicGtnY2FjaGVfcGF0aCJdKSkKLQkgICAgZWxzZToKKwkJZWxz
ZToKIAkJCWdlbmVyaWNfc3RhZ2VfdGFyZ2V0LnNldF9wa2djYWNoZV9wYXRoKHNlbGYpCiAKIGRl
ZiByZWdpc3Rlcihmb28pOgpJbmRleDogbW9kdWxlcy9saXZlY2Rfc3RhZ2UyX3RhcmdldC5weQo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBtb2R1bGVzL2xpdmVjZF9zdGFnZTJfdGFyZ2V0LnB5CShyZXZpc2lvbiAx
MjA2KQorKysgbW9kdWxlcy9saXZlY2Rfc3RhZ2UyX3RhcmdldC5weQkod29ya2luZyBjb3B5KQpA
QCAtNzEsNjAgKzcxLDU5IEBACiAJCQlteWYuY2xvc2UoKQogCQogCWRlZiB1bnBhY2soc2VsZik6
Ci0gICAgICAgICAgICAgICAgdW5wYWNrPVRydWUKKwkJdW5wYWNrPVRydWUKIAkJZGlzcGxheV9t
c2c9Tm9uZQogCi0gICAgICAgICAgICAgICAgY2xzdF91bnBhY2tfaGFzaD1yZWFkX2Zyb21fY2xz
dChzZWxmLnNldHRpbmdzWyJhdXRvcmVzdW1lX3BhdGgiXSsidW5wYWNrIikKKwkJY2xzdF91bnBh
Y2tfaGFzaD1yZWFkX2Zyb21fY2xzdChzZWxmLnNldHRpbmdzWyJhdXRvcmVzdW1lX3BhdGgiXSsi
dW5wYWNrIikKIAotICAgICAgICAgICAgICAgIGlmIG9zLnBhdGguaXNkaXIoc2VsZi5zZXR0aW5n
c1sic291cmNlX3BhdGgiXSk6Ci0gICAgICAgICAgICAgICAgICAgICAgICB1bnBhY2tfY21kPSJy
c3luYyAtYSAtLWRlbGV0ZSAiK3NlbGYuc2V0dGluZ3NbInNvdXJjZV9wYXRoIl0rIiAiK3NlbGYu
c2V0dGluZ3NbImNocm9vdF9wYXRoIl0KLSAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXlf
bXNnPSJcblN0YXJ0aW5nIHJzeW5jIGZyb20gIitzZWxmLnNldHRpbmdzWyJzb3VyY2VfcGF0aCJd
KyJcbnRvICIrXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnNldHRpbmdz
WyJjaHJvb3RfcGF0aCJdKyIgKFRoaXMgbWF5IHRha2Ugc29tZSB0aW1lKSAuLi5cbiIKLSAgICAg
ICAgICAgICAgICAgICAgICAgIGVycm9yX21zZz0iUnN5bmMgb2YgIitzZWxmLnNldHRpbmdzWyJz
b3VyY2VfcGF0aCJdKyIgdG8gIitzZWxmLnNldHRpbmdzWyJjaHJvb3RfcGF0aCJdKyIgZmFpbGVk
LiIKLSAgICAgICAgICAgICAgICAgICAgICAgIGludmFsaWRfc25hcHNob3Q9RmFsc2UKKwkJaWYg
b3MucGF0aC5pc2RpcihzZWxmLnNldHRpbmdzWyJzb3VyY2VfcGF0aCJdKToKKwkJCXVucGFja19j
bWQ9InJzeW5jIC1hIC0tZGVsZXRlICIrc2VsZi5zZXR0aW5nc1sic291cmNlX3BhdGgiXSsiICIr
c2VsZi5zZXR0aW5nc1siY2hyb290X3BhdGgiXQorCQkJZGlzcGxheV9tc2c9IlxuU3RhcnRpbmcg
cnN5bmMgZnJvbSAiK3NlbGYuc2V0dGluZ3NbInNvdXJjZV9wYXRoIl0rIlxudG8gIitcCisJCQkJ
c2VsZi5zZXR0aW5nc1siY2hyb290X3BhdGgiXSsiIChUaGlzIG1heSB0YWtlIHNvbWUgdGltZSkg
Li4uXG4iCisJCQllcnJvcl9tc2c9IlJzeW5jIG9mICIrc2VsZi5zZXR0aW5nc1sic291cmNlX3Bh
dGgiXSsiIHRvICIrc2VsZi5zZXR0aW5nc1siY2hyb290X3BhdGgiXSsiIGZhaWxlZC4iCisJCQlp
bnZhbGlkX3NuYXBzaG90PUZhbHNlCiAKLSAgICAgICAgICAgICAgICBpZiBzZWxmLnNldHRpbmdz
Lmhhc19rZXkoIkFVVE9SRVNVTUUiKToKLSAgICAgICAgICAgICAgICAgICAgaWYgb3MucGF0aC5p
c2RpcihzZWxmLnNldHRpbmdzWyJzb3VyY2VfcGF0aCJdKSBhbmQgXAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIG9zLnBhdGguZXhpc3RzKHNlbGYuc2V0dGluZ3NbImF1dG9yZXN1bWVfcGF0
aCJdKyJ1bnBhY2siKToKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpbnQgIlJl
c3VtZSBwb2ludCBkZXRlY3RlZCwgc2tpcHBpbmcgdW5wYWNrIG9wZXJhdGlvbi4uLiIKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5wYWNrPUZhbHNlCi0gICAgICAgICAgICAgICAg
ICAgIGVsaWYgc2VsZi5zZXR0aW5ncy5oYXNfa2V5KCJzb3VyY2VfcGF0aF9oYXNoIik6Ci0gICAg
ICAgICAgICAgICAgICAgICAgICBpZiBzZWxmLnNldHRpbmdzWyJzb3VyY2VfcGF0aF9oYXNoIl0g
IT0gY2xzdF91bnBhY2tfaGFzaDoKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW52
YWxpZF9zbmFwc2hvdD1UcnVlCisJCWlmIHNlbGYuc2V0dGluZ3MuaGFzX2tleSgiQVVUT1JFU1VN
RSIpOgorCQkJaWYgb3MucGF0aC5pc2RpcihzZWxmLnNldHRpbmdzWyJzb3VyY2VfcGF0aCJdKSBh
bmQgXAorCQkJCW9zLnBhdGguZXhpc3RzKHNlbGYuc2V0dGluZ3NbImF1dG9yZXN1bWVfcGF0aCJd
KyJ1bnBhY2siKToKKwkJCQlwcmludCAiUmVzdW1lIHBvaW50IGRldGVjdGVkLCBza2lwcGluZyB1
bnBhY2sgb3BlcmF0aW9uLi4uIgorCQkJCXVucGFjaz1GYWxzZQorCQkJZWxpZiBzZWxmLnNldHRp
bmdzLmhhc19rZXkoInNvdXJjZV9wYXRoX2hhc2giKToKKwkJCQlpZiBzZWxmLnNldHRpbmdzWyJz
b3VyY2VfcGF0aF9oYXNoIl0gIT0gY2xzdF91bnBhY2tfaGFzaDoKKwkJCQkJaW52YWxpZF9zbmFw
c2hvdD1UcnVlCiAKLSAgICAgICAgICAgICAgICBpZiB1bnBhY2s6Ci0gICAgICAgICAgICAgICAg
ICAgICAgICBzZWxmLm1vdW50X3NhZmV0eV9jaGVjaygpCi0gICAgICAgICAgICAgICAgICAgICAg
ICBpZiBpbnZhbGlkX3NuYXBzaG90OgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBw
cmludCAiTm8gVmFsaWQgUmVzdW1lIHBvaW50IGRldGVjdGVkLCBjbGVhbmluZyB1cCAgLi4uIgot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjb3MucmVtb3ZlKHNlbGYuc2V0dGluZ3Nb
ImF1dG9yZXN1bWVfcGF0aCJdKyJkaXJfc2V0dXAiKQotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBzZWxmLmNsZWFyX2F1dG9yZXN1bWUoKQotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBzZWxmLmNsZWFyX2Nocm9vdCgpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICNzZWxmLmRpcl9zZXR1cCgpCisJCWlmIHVucGFjazoKKwkJCXNlbGYubW91bnRfc2FmZXR5
X2NoZWNrKCkKKwkJCWlmIGludmFsaWRfc25hcHNob3Q6CisJCQkJcHJpbnQgIk5vIFZhbGlkIFJl
c3VtZSBwb2ludCBkZXRlY3RlZCwgY2xlYW5pbmcgdXAgIC4uLiIKKwkJCQkjb3MucmVtb3ZlKHNl
bGYuc2V0dGluZ3NbImF1dG9yZXN1bWVfcGF0aCJdKyJkaXJfc2V0dXAiKQorCQkJCXNlbGYuY2xl
YXJfYXV0b3Jlc3VtZSgpCisJCQkJc2VsZi5jbGVhcl9jaHJvb3QoKQorCQkJCSNzZWxmLmRpcl9z
ZXR1cCgpCiAKLSAgICAgICAgICAgICAgICAgICAgICAgIGlmIG5vdCBvcy5wYXRoLmV4aXN0cyhz
ZWxmLnNldHRpbmdzWyJjaHJvb3RfcGF0aCJdKToKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgb3MubWFrZWRpcnMoc2VsZi5zZXR0aW5nc1siY2hyb290X3BhdGgiXSkKKwkJCWlmIG5v
dCBvcy5wYXRoLmV4aXN0cyhzZWxmLnNldHRpbmdzWyJjaHJvb3RfcGF0aCJdKToKKwkJCQlvcy5t
YWtlZGlycyhzZWxmLnNldHRpbmdzWyJjaHJvb3RfcGF0aCJdKQogCi0gICAgICAgICAgICAgICAg
ICAgICAgICBpZiBub3Qgb3MucGF0aC5leGlzdHMoc2VsZi5zZXR0aW5nc1siY2hyb290X3BhdGgi
XSsiL3RtcCIpOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5tYWtlZGlycyhz
ZWxmLnNldHRpbmdzWyJjaHJvb3RfcGF0aCJdKyIvdG1wIiwxNzc3KQorCQkJaWYgbm90IG9zLnBh
dGguZXhpc3RzKHNlbGYuc2V0dGluZ3NbImNocm9vdF9wYXRoIl0rIi90bXAiKToKKwkJCQlvcy5t
YWtlZGlycyhzZWxmLnNldHRpbmdzWyJjaHJvb3RfcGF0aCJdKyIvdG1wIiwxNzc3KQogCi0gICAg
ICAgICAgICAgICAgICAgICAgICBpZiBzZWxmLnNldHRpbmdzLmhhc19rZXkoIlBLR0NBQ0hFIik6
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIG5vdCBvcy5wYXRoLmV4aXN0cyhz
ZWxmLnNldHRpbmdzWyJwa2djYWNoZV9wYXRoIl0pOgotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIG9zLm1ha2VkaXJzKHNlbGYuc2V0dGluZ3NbInBrZ2NhY2hlX3BhdGgi
XSwwNzU1KQorCQkJaWYgc2VsZi5zZXR0aW5ncy5oYXNfa2V5KCJQS0dDQUNIRSIpOgorCQkJCWlm
IG5vdCBvcy5wYXRoLmV4aXN0cyhzZWxmLnNldHRpbmdzWyJwa2djYWNoZV9wYXRoIl0pOgorCQkJ
CQlvcy5tYWtlZGlycyhzZWxmLnNldHRpbmdzWyJwa2djYWNoZV9wYXRoIl0sMDc1NSkKIAogCQkJ
aWYgbm90IGRpc3BsYXlfbXNnOgogCQkJCXJhaXNlIENhdGFseXN0RXJyb3IsIkNvdWxkIG5vdCBm
aW5kIGFwcHJvcHJpYXRlIHNvdXJjZS4gUGxlYXNlIGNoZWNrIHRoZSAnc291cmNlX3N1YnBhdGgn
IHNldHRpbmcgaW4gdGhlIHNwZWMgZmlsZS4iCiAKLSAgICAgICAgICAgICAgICAgICAgICAgIHBy
aW50IGRpc3BsYXlfbXNnCi0gICAgICAgICAgICAgICAgICAgICAgICBjbWQodW5wYWNrX2NtZCxl
cnJvcl9tc2csZW52PXNlbGYuZW52KQorCQkJcHJpbnQgZGlzcGxheV9tc2cKKwkJCWNtZCh1bnBh
Y2tfY21kLGVycm9yX21zZyxlbnY9c2VsZi5lbnYpCiAKLSAgICAgICAgICAgICAgICAgICAgICAg
IGlmIHNlbGYuc2V0dGluZ3MuaGFzX2tleSgic291cmNlX3BhdGhfaGFzaCIpOgotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBteWY9b3BlbihzZWxmLnNldHRpbmdzWyJhdXRvcmVzdW1l
X3BhdGgiXSsidW5wYWNrIiwidyIpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG15
Zi53cml0ZShzZWxmLnNldHRpbmdzWyJzb3VyY2VfcGF0aF9oYXNoIl0pCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIG15Zi5jbG9zZSgpCi0gICAgICAgICAgICAgICAgICAgICAgICBl
bHNlOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3VjaChzZWxmLnNldHRpbmdz
WyJhdXRvcmVzdW1lX3BhdGgiXSsidW5wYWNrIikKKwkJCWlmIHNlbGYuc2V0dGluZ3MuaGFzX2tl
eSgic291cmNlX3BhdGhfaGFzaCIpOgorCQkJCW15Zj1vcGVuKHNlbGYuc2V0dGluZ3NbImF1dG9y
ZXN1bWVfcGF0aCJdKyJ1bnBhY2siLCJ3IikKKwkJCQlteWYud3JpdGUoc2VsZi5zZXR0aW5nc1si
c291cmNlX3BhdGhfaGFzaCJdKQorCQkJCW15Zi5jbG9zZSgpCisJCQllbHNlOgorCQkJCXRvdWNo
KHNlbGYuc2V0dGluZ3NbImF1dG9yZXN1bWVfcGF0aCJdKyJ1bnBhY2siKQogCi0KIAlkZWYgc2V0
X2FjdGlvbl9zZXF1ZW5jZShzZWxmKToKIAkJc2VsZi5zZXR0aW5nc1siYWN0aW9uX3NlcXVlbmNl
Il09WyJ1bnBhY2siLCJ1bnBhY2tfc25hcHNob3QiLFwKIAkJCQkiY29uZmlnX3Byb2ZpbGVfbGlu
ayIsInNldHVwX2NvbmZkaXIiLCJwb3J0YWdlX292ZXJsYXkiLFwK
</data>        

          </attachment>
    </bug>

</bugzilla>