Subject: Re: devel/cpuflags delivers wrong value on macppc (Power Mac G4)
To: =?ISO-8859-1?Q?Timo_Sch=F6ler?= <eclipser23@web.de>
From: David Brownlee <abs@NetBSD.org>
List: pkgsrc-bugs
Date: 11/03/2004 16:54:10
This message is in MIME format. The first part should be readable text,
while the remaining parts are likely unreadable without MIME-aware tools.
--0-1318228665-1099500850=:480
Content-Type: TEXT/PLAIN; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: QUOTED-PRINTABLE
On Wed, 3 Nov 2004, Timo Sch=F6ler wrote:
> hi,
>
> running cpuflags on my Power Mac G4 (dmesg output below, [1]) gives follo=
wing=20
> value back:
>
> -mcpu=3D740
>
> this is not true. as can be seen e.g. at [2], the PowerPC 740 is kind of=
=20
> PowerPC 750 lacking (any) L2 Cache, as where the CPU built into the Power=
Mac=20
> G4 (Yikes and Sawtooth series; not the following 466, 533 MHz series, whi=
ch=20
> sported the 7410 already) is definitely a PowerPC/MPC7400 processor.
>
> the wrong output of cpuflags leads to false optimization in case they're=
=20
> utilized e.g. via /etc/mk.conf.
>
> is this a ``known bug'' or should i file a PR?
=09Those entried were probably added before gcc 3.1.x and the support
=09for the -mcpu=3D7400 and -mcpu=3D7450
=09Could you try the attached?
=09It falls back to -mcpu=3D740 for versions of gcc before -mcpu=3D7400 an=
d
=09-mcpu=3D7450. Do you know of a better option?
=09http://gcc.gnu.org/onlinedocs/gcc-3.0.4/gcc_3.html#SEC32
--=20
=09=09David/absolute -- www.NetBSD.org: No hype required --
--0-1318228665-1099500850=:480
Content-Type: TEXT/PLAIN; charset=US-ASCII; name="cpuflags.NetBSD"
Content-Transfer-Encoding: BASE64
Content-ID: <Pine.NEB.4.61.0411031654100.480@localhost.>
Content-Description:
Content-Disposition: attachment; filename="cpuflags.NetBSD"
IyEvYmluL3NoDQojICROZXRCU0Q6IGNwdWZsYWdzLk5ldEJTRCx2IDEuNTUg
MjAwNC8wOS8yMyAxMTo0MToxMCBhYnMgRXhwICQNClBBVEg9L3NiaW46L3Vz
ci9zYmluOi9iaW46L3Vzci9iaW46JFBBVEgNCg0KaWYgWyAiJDEiID0gLXYg
XSA7IHRoZW4NCiAgICBzaGlmdA0KICAgIG9wdF92PTENCmZpDQppZiBbIC1u
ICIkMSIgXTsgdGhlbg0KICAgIENDPSQxDQplbHNlDQogICAgQ0M9Z2NjDQpm
aQ0KDQpkaXNwbGF5X2h3X2RldGFpbHMoKQ0KICAgIHsNCiAgICBlY2hvICIg
IE9TICAgICAgICAgICAgICA6ICckKHVuYW1lKSciDQogICAgZWNobyAiICBo
dy5tb2RlbCAgICAgICAgOiAnJGh3X21vZGVsJyINCiAgICBlY2hvICIgIGh3
Lm1hY2hpbmUgICAgICA6ICckaHdfbWFjaGluZSciDQogICAgZWNobyAiICBo
dy5tYWNoaW5lX2FyY2ggOiAnJGh3X21hY2hpbmVfYXJjaCciDQogICAgZWNo
byAiICBjcHUgZGV0YWlscyAgICAgOiINCiAgICBzZWQgLW4gLWUgJ3MvXi8g
ICAgLycgLWUgJy9eICAgIGNwdS9wJyAvdmFyL3J1bi9kbWVzZy5ib290DQog
ICAgfQ0KDQpod19tb2RlbD0kKHN5c2N0bCAtbiBody5tb2RlbCkNCmh3X21h
Y2hpbmU9JChzeXNjdGwgLW4gaHcubWFjaGluZSkNCmh3X21hY2hpbmVfYXJj
aD0kKHN5c2N0bCAtbiBody5tYWNoaW5lX2FyY2gpDQoNCiMgV2UncmUgYWxt
b3N0IGNlcnRhaW5seSBjcm9zc2NvbXBpbGluZw0KaWYgWyAtbiAiJE1BQ0hJ
TkUiIC1hICRod19tYWNoaW5lICE9ICIkTUFDSElORSIgXTsgdGhlbg0KICAg
IGVjaG8NCiAgICBleGl0DQpmaQ0KDQojIFdoZW4gYWRkaW5nICRod19tb2Rl
bCB0ZXN0cyB1c2UgbWF4aW11bSBjb250ZXh0IChzdWNoIGFzIHRyYWlsaW5n
IHNwYWNlKQ0KY2FzZSAkaHdfbWFjaGluZV9hcmNoIGluDQoNCiAgICBhbHBo
YSkNCgkjIGNwdTAgYXQgbWFpbmJ1czA6IElEIDAgKHByaW1hcnkpLCAyMTE2
NEEtMCAodW5rbm93biAuLi4NCgljYXNlICIkKGVncmVwICdeY3B1MCAnIC92
YXIvcnVuL2RtZXNnLmJvb3QpIiBpbg0KCSAgICAqW1woXCBdMjEwNls0Nl1b
LUFcIFwpXSopCUZMQUdTPSItbWNwdT0yMTA2NCIJOzsNCgkgICAgKltcKFwg
XTIxMTY0Wy1cIFwpXSopCUZMQUdTPSItbWNwdT0yMTE2NCIJOzsNCgkgICAg
KltcKFwgXTIxMTY0QVstXCBcKV0qKQlGTEFHUz0iLW1jcHU9MjExNjRhIgk7
Ow0KCSAgICAqW1woXCBdMjEyNjRbLVwgXCldKikJRkxBR1M9Ii1tY3B1PTIx
MjY0Igk7Ow0KCSAgICAqW1woXCBdMjEyNjRbQUJdWy1cIFwpXSopCUZMQUdT
PSItbWNwdT0yMTI2NGEiCTs7DQoJICAgICpcIFBDQTU2LTIpCQkJRkxBR1M9
Ii1tY3B1PTIxMTY0cGMiCTs7DQoJZXNhYw0KCTs7DQoNCiAgICBhcm0gfCBh
cm0zMikgY2FzZSAkaHdfbW9kZWwgaW4NCglBUk02MTAqKQkJRkxBR1M9Ii1t
Y3B1PWFybTYxMCIJCTs7ICMgcmlzYyBwYw0KCUFSTTcxMCopCQlGTEFHUz0i
LW1jcHU9YXJtNzEwIgkJOzsgIyByaXNjIHBjDQoJaTgwMzIxXCAqKQkJRkxB
R1M9Ii1tY3B1PXhzY2FsZSIJCTs7ICMgaXlvbml4DQoJU0EtMTEwKikJDQoJ
ICAgIGNhc2UgJGh3X21hY2hpbmUgaW4JCQkgIyBhcm0zMiBzcGxpdCBwb3N0
IDEuNQ0KCQljYXRzfHNoYXJrfGhwY2FybXxuZXR3aW5kZXIpDQoJCSAgICBG
TEFHUz0iLW1jcHU9c3Ryb25nYXJtMTEwIiA7Ow0KCQlhY29ybjMyKQ0KCQkg
ICAgRkxBR1M9Ii1tYXJjaD1hcm12M20gLW10dW5lPXN0cm9uZ2FybSIgOzsN
CgkJKikNCgkJICAgICMgbWVtb3J5YnVzIGluIHN0cm9uZ2FybSByaXNjIHBj
IG1hY2hpbmVzIGNhbm5vdCBzdXBwb3J0DQoJCSAgICAjIGNlcnRhaW4gc3Ry
b25nYXJtIGluc3RydWN0aW9ucywgYnV0IGluIDEuNSBhbmQgZWFybGllcg0K
CQkgICAgIyBhbGwgc3Ryb25nYXJtIG1hY2hpbmVzIGFyZSAnYXJtMzInLCBz
byB1bmFtZSBhbmQgc3lzY3RsDQoJCSAgICAjIG5vIHVzZQ0KCQkgICAgaWYg
ZWdyZXAgLXEgJ29mYnVzMHxmb290YnJpZGdlMCcgL3Zhci9ydW4vZG1lc2cu
Ym9vdCBcDQoJCQkJCQkJICAgIDI+L2Rldi9udWxsIDsgdGhlbg0KCQkJRkxB
R1M9Ii1tY3B1PXN0cm9uZ2FybTExMCIJCSAgICMgc2hhcmsvY2F0cw0KCQkg
ICAgZWxzZQ0KCQkJRkxBR1M9Ii1tYXJjaD1hcm12M20gLW10dW5lPXN0cm9u
Z2FybSIJICAgIyByaXNjIHBjDQoJCSAgICBmaQ0KCSAgICBlc2FjIDs7DQoJ
ZXNhYyA7Ow0KDQogICAgaTM4NikgY2FzZSAkaHdfbW9kZWwgaW4NCgkqSW50
ZWxcIFBlbnRpdW0vTU1YXCAqKQkJRkxBR1M9Jy1tYXJjaD1wZW50aXVtLW1t
eCcJOzsNCgkqSW50ZWxcIFBlbnRpdW1cIElJXCAqKQkJRkxBR1M9Jy1tYXJj
aD1wZW50aXVtMicJCTs7DQoJKkludGVsXCBQZW50aXVtXCBJSUlcICopCUZM
QUdTPSctbWFyY2g9cGVudGl1bTMnCQk7Ow0KCSpJbnRlbFwgTW9iaWxlXCBQ
ZW50aXVtXCBJSUlcICopIEZMQUdTPSctbWFyY2g9cGVudGl1bTMnCTs7DQoJ
KkludGVsXCBDZWxlcm9uXCBcKE1lbmRvY2lub1wpXCAqKSBGTEFHUz0nLW1h
cmNoPXBlbnRpdW0zIC1tbm8tc3NlJyA7Ow0KCSpJbnRlbFwgUGVudGl1bVwg
TVwgKikJCUZMQUdTPSctbWFyY2g9cGVudGl1bTNtJwk7Ow0KCSpJbnRlbFwg
TW9iaWxlXCBQZW50aXVtXCA0XCAqKQlGTEFHUz0nLW1hcmNoPXBlbnRpdW00
bScJOzsNCgkqSW50ZWxcIFBlbnRpdW1cIDRcICopCQlGTEFHUz0nLW1hcmNo
PXBlbnRpdW00JwkJOzsNCgkqVklBXCBDMypcIFNhbXVlbCopCQlGTEFHUz0n
LW1hcmNoPWMzJwkJOzsNCgkqQU1EXCBLNi1JSUkqKQkJCUZMQUdTPSctbWFy
Y2g9azYtMycJCTs7DQoJKkFNRFwgSzYtMiopCQkJRkxBR1M9Jy1tYXJjaD1r
Ni0yJwkJOzsNCgkqQU1EXCBLNiopCQkJRkxBR1M9Jy1tYXJjaD1rNicJCTs7
DQoJKkFNRFwgRHVyb24qKQkJCUZMQUdTPSctbWFyY2g9YXRobG9uJwkJOzsN
CgkqQU1EXCBBdGhsb25cIDQqKQkJRkxBR1M9Jy1tYXJjaD1hdGhsb24tNCcJ
CTs7DQoJKkFNRFwgQXRobG9uXCBNUCopCQlGTEFHUz0nLW1hcmNoPWF0aGxv
bi1tcCcJOzsNCgkqQU1EXCBLN1wgXChBdGhsb25cKVwgWFBcICopCUZMQUdT
PSctbWFyY2g9YXRobG9uLXhwJwk7Ow0KCSpBTURcIEF0aGxvblwgWFBcICop
CQlGTEFHUz0nLW1hcmNoPWF0aGxvbi14cCcJOzsNCgkqQU1EXCBLNyp8KkFN
RFwgQXRobG9uKikJRkxBR1M9Jy1tYXJjaD1hdGhsb24nCQk7Ow0KCSozODYt
Y2xhc3MqKQkJCUZMQUdTPSctbWFyY2g9aTM4NicJCTs7DQoJKjQ4Ni1jbGFz
cyopCQkJRkxBR1M9Jy1tYXJjaD1pNDg2JwkJOzsNCgkqNTg2LWNsYXNzKikJ
CQlGTEFHUz0nLW1hcmNoPXBlbnRpdW0nCQk7Ow0KCSo2ODYtY2xhc3MqKQkJ
CUZMQUdTPSctbWFyY2g9cGVudGl1bXBybycJOzsNCiAgICBlc2FjDQogICAg
OzsNCg0KICAgIG02OGspIGNhc2UgJGh3X21vZGVsIGluCQkJCSAgICMgRXhh
bXBsZXMNCgkqXCg2ODAyMCp8KlwgTUM2ODAyMFwgKikgRkxBR1M9Jy1tNjgw
MjAnCTs7ICMgVW50ZXN0ZWQNCgkqXCg2ODAzMCp8KlwgTUM2ODAzMFwgKikg
RkxBR1M9Jy1tNjgwMzAnCTs7ICMgTWFjIExDIElJSQ0KCSpcKDY4MDQwKnwq
XCBNQzY4MDQwXCAqKSBGTEFHUz0nLW02ODA0MCcJOzsgIyBVbnRlc3RlZA0K
CSpcKDY4MDYwKnwqXCBNQzY4MDYwXCAqKSBGTEFHUz0nLW02ODA2MCcJOzsg
IyBVcGdyIGFtaWdhIDMwMDANCiAgICBlc2FjDQogICAgY2FzZSAiJChlZ3Jl
cCAnXmZwdTAgJyAvdmFyL3J1bi9kbWVzZy5ib290KSIgaW4NCgkqXChlbXVs
YXRvclwpKikJCUZMQUdTPSIkRkxBR1MgLW1zb2Z0LWZsb2F0IiA7OyANCgkq
XChub1wgbWF0aFwgc3VwcG9ydFwpKikgRkxBR1M9IiRGTEFHUyAtbXNvZnQt
ZmxvYXQiIDs7IA0KICAgIGVzYWMNCiAgICA7Ow0KDQogICAgbWlwc2VifG1p
cHNlbCkNCgkjIGNwdTAgYXQgbWFpbmJ1czA6IFFFRCBSNDYwMCBPcmlvbiBD
UFUgKDB4MjAyMCkgUmV2LiAyLjAgd2l0aCAuLi4NCgljYXNlICIkKGVncmVw
ICdeY3B1MCAnIC92YXIvcnVuL2RtZXNnLmJvb3QpIiBpbg0KCSAgICAqXCBN
SVBTXCBSMjAwMFwgKikJRkxBR1M9Ii1tYXJjaD1yMjAwMCIJICAgOzsNCgkg
ICAgKlwgTUlQU1wgUjMwMDBcICopCUZMQUdTPSItbWFyY2g9cjMwMDAiCSAg
IDs7DQoJICAgICpcIE1JUFNcIFIzMDAwQVwgKikgRkxBR1M9Ii1tYXJjaD1y
MzAwMCIJICAgOzsNCgkgICAgKlwgVG9zaGliYVwgVFgzOTEyXCAqKSAgICBG
TEFHUz0iLW1hcmNoPXIzOTAwIiAgOzsNCgkgICAgKlwgVG9zaGliYVwgVFgz
OTJbMjddXCAqKSBGTEFHUz0iLW1hcmNoPXIzOTAwIiAgOzsNCgkgICAgKlwg
TUlQU1wgUjQwMDBcICopCUZMQUdTPSItbXR1bmU9cjQwMDAgLW1pcHMyIiA7
OyAjIHJlYWxseSBtaXBzMw0KCSAgICAqXCBNSVBTXCBSNDQwMFwgKikJRkxB
R1M9Ii1tdHVuZT1yNDQwMCAtbWlwczIiIDs7ICMgcmVhbGx5IG1pcHMzDQoJ
ICAgICpcIE5FQ1wgVlI0MTAwXCAqKQlGTEFHUz0iLW10dW5lPXI0MTAwIC1t
aXBzMiIgOzsgIyByZWFsbHkgbWlwczMNCgkgICAgKlwgTkVDXCBWUjQzMDBc
ICopCUZMQUdTPSItbXR1bmU9cjQzMDAgLW1pcHMyIiA7OyAjIHJlYWxseSBt
aXBzMw0KCSAgICAqXCBRRURcIFI0NjAwXCAqKQlGTEFHUz0iLW10dW5lPXI0
NjAwIC1taXBzMiIgOzsgIyByZWFsbHkgbWlwczMNCgkgICAgKlwgTUlQU1wg
UjUwMDBcICopCUZMQUdTPSItbXR1bmU9cjUwMDAgLW1pcHMyIiA7OyAjIHJl
YWxseSBtaXBzNA0KCSAgICAqXCBRRURcIFJNNTIwMFwgKikJRkxBR1M9Ii1t
dHVuZT1yNTAwMCAtbWlwczIiIDs7ICMgcmVhbGx5IG1pcHM0DQoJICAgICpc
IE1JUFNcIFI2MDAwXCAqKQlGTEFHUz0iLW10dW5lPXI2MDAwIC1taXBzMiIg
OzsNCgkgICAgKlwgTUlQU1wgUjgwMDBcICopCUZMQUdTPSItbXR1bmU9cjgw
MDAgLW1pcHMyIiA7OyAjIHJlYWxseSBtaXBzNA0KCWVzYWMNCgk7Ow0KDQog
ICAgcG93ZXJwYykgY2FzZSAkaHdfbW9kZWwgaW4JCQkJICAgIyBFeGFtcGxl
cw0KCTYwMVwgKikJCQlGTEFHUz0nLW1jcHU9NjAxJwk7OyAjIFVudGVzdGVk
DQoJNjAyXCAqKQkJCUZMQUdTPSctbWNwdT02MDInCTs7ICMgVW50ZXN0ZWQN
Cgk2MDNcICopCQkJRkxBR1M9Jy1tY3B1PTYwMycJOzsgIyBVbnRlc3RlZA0K
CTYwM2VcICp8NjAzZXZcICopCUZMQUdTPSctbWNwdT02MDNlJwk7OyAjIFVt
YXggQzUwMCAvIFBNNDQwMA0KCTYwNFwgKikJCQlGTEFHUz0nLW1jcHU9NjA0
Jwk7OyAjIE1hYyA4NTAwDQoJNjA0ZXZcICopCQlGTEFHUz0nLW1jcHU9NjA0
ZScJOzsgIyB1cGdyIEImVyBHMw0KCTYyMFwgKikJCQlGTEFHUz0nLW1jcHU9
NjIwJwk7OyAjIFVudGVzdGVkDQoJNzQwMFwgKikJCUZMQUdTPSctbWNwdT03
NDAwJwk7OyAjIEFHUCBHNC80MDAgTWFjDQoJNzQwXCAqKQkJCUZMQUdTPSct
bWNwdT03NDAnCTs7ICMgVW50ZXN0ZWQNCgk3NDUwXCAqKQkJRkxBR1M9Jy1t
Y3B1PTc0NTAnCTs7ICMgdGlib29rIDU1MA0KCTc1MFwgKikJCQlGTEFHUz0n
LW1jcHU9NzUwJwk7OyAjIFVudGVzdGVkDQogICAgZXNhYyA7Ow0KDQogICAg
c3BhcmMgfCBzcGFyYzY0KSBjYXNlICIgJGh3X21vZGVsIiBpbgkJCSAgICMg
RXhhbXBsZXMNCgkqW1wgXChdTUI4NjkwMC8xQSopCUZMQUdTPSctbWNwdT1j
eXByZXNzJwkJOzsgIyBzczErDQoJKltcIFwoXUw2NDgxMSopCQlGTEFHUz0n
LW1jcHU9Y3lwcmVzcycJCTs7ICMgc3VuNC9zdW40Yw0KCSpbXCBcKF1DWTdD
NjAxKikJRkxBR1M9Jy1tY3B1PWN5cHJlc3MnCQk7OyAjIHNzMg0KCSpbXCBc
KF1XODYwMS84NzAxKikJRkxBR1M9Jy1tY3B1PWN5cHJlc3MnCQk7OyAjIGVs
Yw0KCSpbXCBcKF1NQjg2OTA0KikJRkxBR1M9Jy1tY3B1PXN1cGVyc3BhcmMn
CTs7ICMgc3M1IHVzcGFyYw0KCSpbXCBcKF1NQjg2OTA3KikJRkxBR1M9Jy1t
Y3B1PXN1cGVyc3BhcmMnCTs7ICMgc3M1IHVzcGFyYw0KCSpbXCBcKF1UTVMz
OTBTMTAqKQlGTEFHUz0nLW1jcHU9c3VwZXJzcGFyYycJOzsgIyBjbGFzc2lj
ICAiDQoJKltcIFwoXVRNUzM5MFo1MCopCUZMQUdTPSctbWNwdT1zdXBlcnNw
YXJjJwk7OyAjIHNzMTAvc3MyMA0KCSpbXCBcKF1SVDYyMC82MjUqKQlGTEFH
Uz0nLW1jcHU9aHlwZXJzcGFyYycJOzsgIyBzczIwIHJvc3MNCgkqW1wgXChd
TUI4NjkzMCopCUZMQUdTPSctbWNwdT1zcGFyY2xpdGUnCQk7OyAjIGZyb20g
Z2NjDQoJKltcIFwoXU1CODY5MzQqKQlGTEFHUz0nLW1jcHU9c3BhcmNsaXRl
JwkJOzsgIyBmcm9tIGdjYw0KCSMgdW5kZXIgMS41LjEgLW1jcHU9dWx0cmFz
cGFyYyBjaG9rZXMgZWdjcy0yLjkxLjY2IGNvbXBpbGluZyBwZXJsDQoJKltc
IFwoXVNVTlcsVWx0cmFTUEFSQyopIEZMQUdTPSctbWNwdT12OScJCTs7ICMg
VWx0cmENCiAgICBlc2FjIDs7DQoNCiAgICB4ODZfNjQpICMgTm8geDg2XzY0
IHNwZWNpZmljIGdjYyBvcHRpbWlzYXRpb25zIHlldA0KCU5PTkU9MQ0KCTs7
DQoNCiAgICB2YXgpICMgTm8gVkFYIHNwZWNpZmljIGdjYyBvcHRpbWlzYXRp
b25zIGF2YWlsYWJsZQ0KCU5PTkU9MQ0KCTs7DQoNCmVzYWMNCg0KIyMjIyMj
IyMjIyMjDQojIEV2ZXJ5dGhpbmcgZnJvbSB0aGlzIHBvaW50IGNvbW1vbiBi
ZXR3ZWVuIGFsbCBjcHVmbGFncyB2YXJpYW50cy4NCg0KaWYgWyAtbiAiJG9w
dF92IiBdIDsgdGhlbg0KICAgIGlmIFsgLXogIiROT05FIiBdIDsgdGhlbg0K
CWVjaG8gIkNQVUZMQUdTPVVua25vd24iDQogICAgZWxzZQ0KCWVjaG8gIkNQ
VUZMQUdTPU5vbmUiDQogICAgZmkNCiAgICBkaXNwbGF5X2h3X2RldGFpbHMN
CiAgICBleGl0DQpmaQ0KaWYgWyAteiAiJEZMQUdTIiAtYSAteiAiJE5PTkUi
IF0gOyB0aGVuDQogICAgZWNobyAnVW5rbm93biBtYWNoaW5lIC0gcGxlYXNl
IHNlbmQgZGV0YWlscyB0byBhYnNAbmV0YnNkLm9yZycJPiYyDQogICAgZGlz
cGxheV9od19kZXRhaWxzCQkJCQkJCT4mMg0KZmkNCg0KIyBGaXh1cCBvcHRp
b25zIGZvciBvbGRlciBnY2NzLg0KIyBFbnRyaWVzIGNhbiBiZSByZWN1cnNp
dmUgLSBlZzoNCiMgICAtbWFyY2g9azYtMyAtPiAtbWFyY2g9azYgLT4gLW1h
cmNoPXBlbnRpdW0gLT4gLW1hcmNoPWk0ODYNCiMNCiMgVGhlIGZvcm1hdCBv
ZiB0YWJsZSBpcw0KIyAgIGdjY192ZXJzaW9uX2luX3doaWNoX29wdGlvbl93
YXNfaW50cm9kdWNlZAluZXdfb3B0aW9uICBvbGRfb3B0aW9uDQoNCmlmIFsg
LW4gIiRGTEFHUyIgXTsgdGhlbg0KICAgIGdjY192ZXI9YCR7Q0N9IC1kdW1w
dmVyc2lvbiB8IHNlZCAncy9eZWdjcy0vLydgDQogICAgRkxBR1M9YGF3ayAt
RjogLXYgImZsYWdzPSRGTEFHUyIgLXYgImdjY192ZXI9JGdjY192ZXIiICcN
Cgl7IGlmIChnY2NfdmVyIDwgJDEpe21hcFskMl0gPSAiIiQzfSB9DQoJRU5E
IHsgd2hpbGUgKGZsYWdzIGluIG1hcCkge2ZsYWdzID0gbWFwW2ZsYWdzXX0g
cHJpbnQgZmxhZ3MgfQ0KCScgPDxFT0QNCjIuOTA6LW1hcmNoPWkzODY6LW1u
by00ODYNCjIuOTA6LW1hcmNoPWk0ODY6LW00ODYNCjIuOTA6LW1hcmNoPXBl
bnRpdW06LW00ODYNCjIuOTA6LW1hcmNoPXBlbnRpdW1wcm86LW00ODYNCjIu
OTA6LW1jcHU9MjExNjRhOg0KMi45MDotbWNwdT1hcm02MTA6LW02DQoyLjkw
Oi1tY3B1PWFybTcxMDotbTYNCjIuOTA6LW1jcHU9Y3lwcmVzczotbWN5cHJl
c3MNCjIuOTA6LW1jcHU9c3BhcmNsaXRlOi1tc3BhcmNsaXRlDQoyLjkwOi1t
Y3B1PXN0cm9uZ2FybTExMDotbTYNCjIuOTA6LW1jcHU9c3VwZXJzcGFyYzot
bXN1cGVyc3BhcmMNCjIuOTA6LW1jcHU9djk6LW12OA0KMi45NTotbWFyY2g9
azY6LW1hcmNoPXBlbnRpdW0NCjMuMDotbWFyY2g9YXRobG9uOi1tYXJjaD1w
ZW50aXVtcHJvDQozLjE6LW1hcmNoPWF0aGxvbi00Oi1tYXJjaD1hdGhsb24N
CjMuMTotbWFyY2g9YXRobG9uLW1wOi1tYXJjaD1hdGhsb24NCjMuMTotbWFy
Y2g9YXRobG9uLXRiaXJkOi1tYXJjaD1hdGhsb24NCjMuMTotbWFyY2g9YXRo
bG9uLXhwOi1tYXJjaD1hdGhsb24NCjMuMTotbWFyY2g9azYtMjotbWFyY2g9
azYNCjMuMTotbWFyY2g9azYtMzotbWFyY2g9azYNCjMuMTotbWFyY2g9cGVu
dGl1bS1tbXg6LW1hcmNoPXBlbnRpdW0NCjMuMTotbWFyY2g9cGVudGl1bTI6
LW1hcmNoPXBlbnRpdW1wcm8NCjMuMTotbWFyY2g9cGVudGl1bTMgLW1uby1z
c2U6LW1hcmNoPXBlbnRpdW1wcm8NCjMuMTotbWFyY2g9cGVudGl1bTM6LW1h
cmNoPXBlbnRpdW1wcm8NCjMuMTotbWFyY2g9cGVudGl1bTQ6LW1hcmNoPXBl
bnRpdW1wcm8NCjMuMTotbWFyY2g9cjIwMDA6LWNwdT1yMjAwMA0KMy4xOi1t
YXJjaD1yMzAwMDotY3B1PXIzMDAwDQozLjE6LW1hcmNoPXIzOTAwOi1jcHU9
cjM5MDANCjMuMTotbWFyY2g9cjQwMDA6LWNwdT1yNDAwMA0KMy4xOi1tYXJj
aD1yNDEwMDotY3B1PXI0MTAwDQozLjE6LW1hcmNoPXI0MzAwOi1jcHU9cjQz
MDANCjMuMTotbWFyY2g9cjQ0MDA6LWNwdT1yNDQwMA0KMy4xOi1tYXJjaD1y
NDYwMDotY3B1PXI0NjAwDQozLjE6LW1hcmNoPXI1MDAwOi1jcHU9cjUwMDAN
CjMuMTotbWFyY2g9cjYwMDA6LWNwdT1yNjAwMA0KMy4xOi1tYXJjaD1yODAw
MDotY3B1PXI4MDAwDQozLjE6LW1jcHU9MjEyNjRhOi1tY3B1PTIxMjY0DQoz
LjE6LW1jcHU9NzQwMDotbWNwdT03NDANCjMuMTotbWNwdT03NDUwOi1tY3B1
PTc0MA0KMy4xOi1tdHVuZT1yMjAwMDotY3B1PXIyMDAwDQozLjE6LW10dW5l
PXIzMDAwOi1jcHU9cjMwMDANCjMuMTotbXR1bmU9cjM5MDA6LWNwdT1yMzkw
MA0KMy4xOi1tdHVuZT1yNDAwMDotY3B1PXI0MDAwDQozLjE6LW10dW5lPXI0
MTAwOi1jcHU9cjQxMDANCjMuMTotbXR1bmU9cjQzMDA6LWNwdT1yNDMwMA0K
My4xOi1tdHVuZT1yNDQwMDotY3B1PXI0NDAwDQozLjE6LW10dW5lPXI0NjAw
Oi1jcHU9cjQ2MDANCjMuMTotbXR1bmU9cjUwMDA6LWNwdT1yNTAwMA0KMy4x
Oi1tdHVuZT1yNjAwMDotY3B1PXI2MDAwDQozLjE6LW10dW5lPXI4MDAwOi1j
cHU9cjgwMDANCjMuMzotbWFyY2g9YzM6LW1hcmNoPWk1ODYNCjMuMzotbWFy
Y2g9d2luY2hpcC1jNjotbWFyY2g9aTU4Ng0KMy4zOi1tYXJjaD13aW5jaGlw
MjotbWFyY2g9aTU4Ng0KMy40Oi1tYXJjaD1hdGhsb24tZng6LW1hcmNoPWF0
aGxvbi14cA0KMy40Oi1tYXJjaD1hdGhsb242NDotbWFyY2g9YXRobG9uLXhw
DQozLjQ6LW1hcmNoPWMzLTI6LW1hcmNoPWMzDQozLjQ6LW1hcmNoPWs4Oi1t
YXJjaD1hdGhsb24teHANCjMuNDotbWFyY2g9bm9jb25hOi1tYXJjaD1wZW50
aXVtNA0KMy40Oi1tYXJjaD1vcHRlcm9uOi1tYXJjaD1hdGhsb24teHANCjMu
NDotbWFyY2g9cGVudGl1bS1tOi1tYXJjaD1wZW50aXVtMw0KMy40Oi1tYXJj
aD1wZW50aXVtM206LW1hcmNoPXBlbnRpdW0zDQozLjQ6LW1hcmNoPXBlbnRp
dW00bTotbWFyY2g9cGVudGl1bTQNCjMuNDotbWFyY2g9cHJlc2NvdHQ6LW1h
cmNoPXBlbnRpdW00DQpFT0QNCmANCmZpDQoNCmVjaG8gJEZMQUdTDQoNCmV4
aXQgMA0K
--0-1318228665-1099500850=:480--