From owner-freebsd-doc@FreeBSD.ORG Sun Jan 13 05:24:20 2013 Return-Path: Delivered-To: freebsd-doc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 460BE1C8 for ; Sun, 13 Jan 2013 05:24:20 +0000 (UTC) (envelope-from wblock@wonkity.com) Received: from wonkity.com (wonkity.com [67.158.26.137]) by mx1.freebsd.org (Postfix) with ESMTP id DA3C07E7 for ; Sun, 13 Jan 2013 05:24:19 +0000 (UTC) Received: from wonkity.com (localhost [127.0.0.1]) by wonkity.com (8.14.6/8.14.6) with ESMTP id r0D5OD4b012332 for ; Sat, 12 Jan 2013 22:24:13 -0700 (MST) (envelope-from wblock@wonkity.com) Received: from localhost (wblock@localhost) by wonkity.com (8.14.6/8.14.6/Submit) with ESMTP id r0D5ODeJ012329 for ; Sat, 12 Jan 2013 22:24:13 -0700 (MST) (envelope-from wblock@wonkity.com) Date: Sat, 12 Jan 2013 22:24:13 -0700 (MST) From: Warren Block To: freebsd-doc@freebsd.org Subject: freebsd-update and ports Message-ID: User-Agent: Alpine 2.00 (BSF 1167 2008-08-23) MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="3512871622-30234771-1358054653=:11994" X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.2.7 (wonkity.com [127.0.0.1]); Sat, 12 Jan 2013 22:24:13 -0700 (MST) X-BeenThere: freebsd-doc@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Documentation project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 13 Jan 2013 05:24:20 -0000 This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --3512871622-30234771-1358054653=:11994 Content-Type: TEXT/PLAIN; format=flowed; charset=US-ASCII Looking for some feedback from someone more familiar with freebsd-update(8) and ports. In reference to this PR: http://www.freebsd.org/cgi/query-pr.cgi?pr=175069 This sentence has never made sense to me: Most users will want to run a test build using the following command: # portupgrade -af I also think that the section is incorrect in stating that all ports must be rebuilt even after minor version upgrades. Another problem is that the difference between minor and major upgrades are never defined. Difficulty: I have not used freebsd-update(8). This patch makes these changes: Define minor and major version upgrades at the start of the section. Say that installed applications will generally still run after a minor upgrade. Move the initial portupgrade instructions into a warning, and make it specific to major upgrades. Change the final portupgrade instructions to only be required after a major upgrade. Index: cutting-edge/chapter.xml =================================================================== --- cutting-edge/chapter.xml (revision 40586) +++ cutting-edge/chapter.xml (working copy) @@ -354,82 +354,94 @@ Major and Minor Upgrades - This process will remove old object files and - libraries which will break most third party applications. - It is recommended that all installed ports either be removed - and re-installed or upgraded later using the - ports-mgmt/portupgrade - utility. Most users will want to run a test build using - the following command: + Upgrades from one minor version of &os; to another, like + from &os;-9.0 to &os;-9.1, are called + minor upgrades. Generally, installed + applications will continue to work without problems after + minor upgrades. - &prompt.root; portupgrade -af + Major upgrades are when &os is + upgraded from one major version of &os; to another, like from + &os;-8.x to &os;-9.x. - This will ensure everything will be re-installed - correctly. Note that setting the - BATCH environment variable to - yes will answer yes to - any prompts during this process, removing the need for - manual intervention during the build process. + + Major upgrades will remove old object files and + libraries which will break most third party applications. + It is recommended that all installed ports either be removed + and re-installed or upgraded after a major upgrade by using the + ports-mgmt/portupgrade + utility. A brute-force rebuild of all installed + applications can be accomplished with this command: - If a custom kernel is in use, the upgrade process is - slightly more involved. A copy of the - GENERIC kernel is needed, and it should - be placed in - /boot/GENERIC. If the - GENERIC kernel is not already present in - the system, it may be obtained using one of the following - methods: + &prompt.root; portupgrade -af - - - If a custom kernel has only been built once, the - kernel in - /boot/kernel.old is - actually the GENERIC one. Simply - rename this directory to /boot/GENERIC. - + This will ensure everything will be re-installed + correctly. Note that setting the + BATCH environment variable to + yes will answer yes to + any prompts during this process, removing the need for + manual intervention during the build process. - - Assuming physical access to the machine is possible, a - copy of the GENERIC kernel can be - installed from the CD-ROM media. Insert your installation - disc and use the following commands: + If a custom kernel is in use, the upgrade process is + slightly more involved. A copy of the + GENERIC kernel is needed, and it should + be placed in + /boot/GENERIC. If the + GENERIC kernel is not already present in + the system, it may be obtained using one of the following + methods: - &prompt.root; mount /cdrom + + + If a custom kernel has only been built once, the + kernel in + /boot/kernel.old is + actually the GENERIC one. Simply + rename this directory to /boot/GENERIC. + + + + Assuming physical access to the machine is possible, a + copy of the GENERIC kernel can be + installed from the CD-ROM media. Insert your installation + disc and use the following commands: + + &prompt.root; mount /cdrom &prompt.root; cd /cdrom/X.Y-RELEASE/kernels &prompt.root; ./install.sh GENERIC - Replace X.Y-RELEASE - with the actual version of the release you are using. The - GENERIC kernel will be installed in - /boot/GENERIC by - default. - + Replace X.Y-RELEASE + with the actual version of the release you are using. The + GENERIC kernel will be installed in + /boot/GENERIC by + default. + - - Failing all the above, the - GENERIC kernel may be rebuilt and - installed from the sources: + + Failing all the above, the + GENERIC kernel may be rebuilt and + installed from the sources: - &prompt.root; cd /usr/src + &prompt.root; cd /usr/src &prompt.root; env DESTDIR=/boot/GENERIC make kernel &prompt.root; mv /boot/GENERIC/boot/kernel/* /boot/GENERIC &prompt.root; rm -rf /boot/GENERIC/boot - For this kernel to be picked up as - GENERIC - by freebsd-update, the - GENERIC configuration file must not - have been modified in any way. It is also suggested that - it is built without any other special options (preferably - with an empty /etc/make.conf). - - + For this kernel to be picked up as + GENERIC + by freebsd-update, the + GENERIC configuration file must not + have been modified in any way. It is also suggested that + it is built without any other special options (preferably + with an empty /etc/make.conf). + + - Rebooting to the GENERIC kernel is - not required at this stage. + Rebooting to the GENERIC kernel is + not required at this stage. + Major and minor version updates may be performed by providing freebsd-update with a release @@ -552,7 +564,7 @@ three. - All third party software will now need to be rebuilt and + After a major upgrade, all third party software will now need to be rebuilt and re-installed. This is required as installed software may depend on libraries which have been removed during the upgrade process. The --3512871622-30234771-1358054653=:11994 Content-Type: TEXT/PLAIN; charset=US-ASCII; name=fupd-ports.diff Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename=fupd-ports.diff SW5kZXg6IGN1dHRpbmctZWRnZS9jaGFwdGVyLnhtbA0KPT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PQ0KLS0tIGN1dHRpbmctZWRnZS9jaGFwdGVyLnhtbAkocmV2 aXNpb24gNDA1ODYpDQorKysgY3V0dGluZy1lZGdlL2NoYXB0ZXIueG1sCSh3 b3JraW5nIGNvcHkpDQpAQCAtMzU0LDgyICszNTQsOTQgQEANCiAgICAgPHNl Y3QyIGlkPSJmcmVlYnNkdXBkYXRlLXVwZ3JhZGUiPg0KICAgICAgIDx0aXRs ZT5NYWpvciBhbmQgTWlub3IgVXBncmFkZXM8L3RpdGxlPg0KIA0KLSAgICAg IDxwYXJhPlRoaXMgcHJvY2VzcyB3aWxsIHJlbW92ZSBvbGQgb2JqZWN0IGZp bGVzIGFuZA0KLQlsaWJyYXJpZXMgd2hpY2ggd2lsbCBicmVhayBtb3N0IHRo aXJkIHBhcnR5IGFwcGxpY2F0aW9ucy4NCi0JSXQgaXMgcmVjb21tZW5kZWQg dGhhdCBhbGwgaW5zdGFsbGVkIHBvcnRzIGVpdGhlciBiZSByZW1vdmVkDQot CWFuZCByZS1pbnN0YWxsZWQgb3IgdXBncmFkZWQgbGF0ZXIgdXNpbmcgdGhl DQotCTxmaWxlbmFtZSByb2xlPSJwYWNrYWdlIj5wb3J0cy1tZ210L3BvcnR1 cGdyYWRlPC9maWxlbmFtZT4NCi0JdXRpbGl0eS4gIE1vc3QgdXNlcnMgd2ls bCB3YW50IHRvIHJ1biBhIHRlc3QgYnVpbGQgdXNpbmcNCi0JdGhlIGZvbGxv d2luZyBjb21tYW5kOjwvcGFyYT4NCisgICAgICA8cGFyYT5VcGdyYWRlcyBm cm9tIG9uZSBtaW5vciB2ZXJzaW9uIG9mICZvczsgdG8gYW5vdGhlciwgbGlr ZQ0KKwlmcm9tICZvczstOS4wIHRvICZvczstOS4xLCBhcmUgY2FsbGVkDQor CTxlbXBoYXNpcz5taW5vcjwvZW1waGFzaXM+IHVwZ3JhZGVzLiAgR2VuZXJh bGx5LCBpbnN0YWxsZWQNCisJYXBwbGljYXRpb25zIHdpbGwgY29udGludWUg dG8gd29yayB3aXRob3V0IHByb2JsZW1zIGFmdGVyDQorCW1pbm9yIHVwZ3Jh ZGVzLjwvcGFyYT4NCiANCi0gICAgICA8c2NyZWVuPiZwcm9tcHQucm9vdDsg PHVzZXJpbnB1dD5wb3J0dXBncmFkZSAtYWY8L3VzZXJpbnB1dD48L3NjcmVl bj4NCisgICAgICA8cGFyYT48ZW1waGFzaXM+TWFqb3I8L2VtcGhhc2lzPiB1 cGdyYWRlcyBhcmUgd2hlbiAmb3MgaXMNCisJdXBncmFkZWQgZnJvbSBvbmUg bWFqb3IgdmVyc2lvbiBvZiAmb3M7IHRvIGFub3RoZXIsIGxpa2UgZnJvbQ0K Kwkmb3M7LTgueCB0byAmb3M7LTkueC48L3BhcmE+DQogDQotICAgICAgPHBh cmE+VGhpcyB3aWxsIGVuc3VyZSBldmVyeXRoaW5nIHdpbGwgYmUgcmUtaW5z dGFsbGVkDQotCWNvcnJlY3RseS4gIE5vdGUgdGhhdCBzZXR0aW5nIHRoZQ0K LQk8bWFrZXZhcj5CQVRDSDwvbWFrZXZhcj4gZW52aXJvbm1lbnQgdmFyaWFi bGUgdG8NCi0JPGxpdGVyYWw+eWVzPC9saXRlcmFsPiB3aWxsIGFuc3dlciA8 bGl0ZXJhbD55ZXM8L2xpdGVyYWw+IHRvDQotCWFueSBwcm9tcHRzIGR1cmlu ZyB0aGlzIHByb2Nlc3MsIHJlbW92aW5nIHRoZSBuZWVkIGZvcg0KLQltYW51 YWwgaW50ZXJ2ZW50aW9uIGR1cmluZyB0aGUgYnVpbGQgcHJvY2Vzcy48L3Bh cmE+DQorICAgICAgPHdhcm5pbmc+DQorCTxwYXJhPk1ham9yIHVwZ3JhZGVz IHdpbGwgcmVtb3ZlIG9sZCBvYmplY3QgZmlsZXMgYW5kDQorCSAgbGlicmFy aWVzIHdoaWNoIHdpbGwgYnJlYWsgbW9zdCB0aGlyZCBwYXJ0eSBhcHBsaWNh dGlvbnMuDQorCSAgSXQgaXMgcmVjb21tZW5kZWQgdGhhdCBhbGwgaW5zdGFs bGVkIHBvcnRzIGVpdGhlciBiZSByZW1vdmVkDQorCSAgYW5kIHJlLWluc3Rh bGxlZCBvciB1cGdyYWRlZCBhZnRlciBhIG1ham9yIHVwZ3JhZGUgYnkgdXNp bmcgdGhlDQorCSAgPGZpbGVuYW1lIHJvbGU9InBhY2thZ2UiPnBvcnRzLW1n bXQvcG9ydHVwZ3JhZGU8L2ZpbGVuYW1lPg0KKwkgIHV0aWxpdHkuICBBIGJy dXRlLWZvcmNlIHJlYnVpbGQgb2YgYWxsIGluc3RhbGxlZA0KKwkgIGFwcGxp Y2F0aW9ucyBjYW4gYmUgYWNjb21wbGlzaGVkIHdpdGggdGhpcyBjb21tYW5k OjwvcGFyYT4NCiANCi0gICAgICA8cGFyYT5JZiBhIGN1c3RvbSBrZXJuZWwg aXMgaW4gdXNlLCB0aGUgdXBncmFkZSBwcm9jZXNzIGlzDQotCXNsaWdodGx5 IG1vcmUgaW52b2x2ZWQuICBBIGNvcHkgb2YgdGhlDQotCTxmaWxlbmFtZT5H RU5FUklDPC9maWxlbmFtZT4ga2VybmVsIGlzIG5lZWRlZCwgYW5kIGl0IHNo b3VsZA0KLQliZSBwbGFjZWQgaW4NCi0JPGZpbGVuYW1lIGNsYXNzPSJkaXJl Y3RvcnkiPi9ib290L0dFTkVSSUM8L2ZpbGVuYW1lPi4gIElmIHRoZQ0KLQk8 ZmlsZW5hbWU+R0VORVJJQzwvZmlsZW5hbWU+IGtlcm5lbCBpcyBub3QgYWxy ZWFkeSBwcmVzZW50IGluDQotCXRoZSBzeXN0ZW0sIGl0IG1heSBiZSBvYnRh aW5lZCB1c2luZyBvbmUgb2YgdGhlIGZvbGxvd2luZw0KLQltZXRob2RzOjwv cGFyYT4NCisJPHNjcmVlbj4mcHJvbXB0LnJvb3Q7IDx1c2VyaW5wdXQ+cG9y dHVwZ3JhZGUgLWFmPC91c2VyaW5wdXQ+PC9zY3JlZW4+DQogDQotICAgICAg PGl0ZW1pemVkbGlzdD4NCi0JPGxpc3RpdGVtPg0KLQkgIDxwYXJhPklmIGEg Y3VzdG9tIGtlcm5lbCBoYXMgb25seSBiZWVuIGJ1aWx0IG9uY2UsIHRoZQ0K LQkgICAga2VybmVsIGluDQotCSAgICA8ZmlsZW5hbWUgY2xhc3M9ImRpcmVj dG9yeSI+L2Jvb3Qva2VybmVsLm9sZDwvZmlsZW5hbWU+IGlzDQotCSAgICBh Y3R1YWxseSB0aGUgPGZpbGVuYW1lPkdFTkVSSUM8L2ZpbGVuYW1lPiBvbmUu ICBTaW1wbHkNCi0JICAgIHJlbmFtZSB0aGlzIGRpcmVjdG9yeSB0byA8Zmls ZW5hbWUNCi0JICAgICAgY2xhc3M9ImRpcmVjdG9yeSI+L2Jvb3QvR0VORVJJ QzwvZmlsZW5hbWU+LjwvcGFyYT4NCi0JPC9saXN0aXRlbT4NCisJPHBhcmE+ VGhpcyB3aWxsIGVuc3VyZSBldmVyeXRoaW5nIHdpbGwgYmUgcmUtaW5zdGFs bGVkDQorCSAgY29ycmVjdGx5LiAgTm90ZSB0aGF0IHNldHRpbmcgdGhlDQor CSAgPG1ha2V2YXI+QkFUQ0g8L21ha2V2YXI+IGVudmlyb25tZW50IHZhcmlh YmxlIHRvDQorCSAgPGxpdGVyYWw+eWVzPC9saXRlcmFsPiB3aWxsIGFuc3dl ciA8bGl0ZXJhbD55ZXM8L2xpdGVyYWw+IHRvDQorCSAgYW55IHByb21wdHMg ZHVyaW5nIHRoaXMgcHJvY2VzcywgcmVtb3ZpbmcgdGhlIG5lZWQgZm9yDQor CSAgbWFudWFsIGludGVydmVudGlvbiBkdXJpbmcgdGhlIGJ1aWxkIHByb2Nl c3MuPC9wYXJhPg0KIA0KLQk8bGlzdGl0ZW0+DQotCSAgPHBhcmE+QXNzdW1p bmcgcGh5c2ljYWwgYWNjZXNzIHRvIHRoZSBtYWNoaW5lIGlzIHBvc3NpYmxl LCBhDQotCSAgICBjb3B5IG9mIHRoZSA8ZmlsZW5hbWU+R0VORVJJQzwvZmls ZW5hbWU+IGtlcm5lbCBjYW4gYmUNCi0JICAgIGluc3RhbGxlZCBmcm9tIHRo ZSBDRC1ST00gbWVkaWEuICBJbnNlcnQgeW91ciBpbnN0YWxsYXRpb24NCi0J ICAgIGRpc2MgYW5kIHVzZSB0aGUgZm9sbG93aW5nIGNvbW1hbmRzOjwvcGFy YT4NCisJPHBhcmE+SWYgYSBjdXN0b20ga2VybmVsIGlzIGluIHVzZSwgdGhl IHVwZ3JhZGUgcHJvY2VzcyBpcw0KKwkgIHNsaWdodGx5IG1vcmUgaW52b2x2 ZWQuICBBIGNvcHkgb2YgdGhlDQorCSAgPGZpbGVuYW1lPkdFTkVSSUM8L2Zp bGVuYW1lPiBrZXJuZWwgaXMgbmVlZGVkLCBhbmQgaXQgc2hvdWxkDQorCSAg YmUgcGxhY2VkIGluDQorCSAgPGZpbGVuYW1lIGNsYXNzPSJkaXJlY3Rvcnki Pi9ib290L0dFTkVSSUM8L2ZpbGVuYW1lPi4gIElmIHRoZQ0KKwkgIDxmaWxl bmFtZT5HRU5FUklDPC9maWxlbmFtZT4ga2VybmVsIGlzIG5vdCBhbHJlYWR5 IHByZXNlbnQgaW4NCisJICB0aGUgc3lzdGVtLCBpdCBtYXkgYmUgb2J0YWlu ZWQgdXNpbmcgb25lIG9mIHRoZSBmb2xsb3dpbmcNCisJICBtZXRob2RzOjwv cGFyYT4NCiANCi0JICA8c2NyZWVuPiZwcm9tcHQucm9vdDsgPHVzZXJpbnB1 dD5tb3VudCAvY2Ryb208L3VzZXJpbnB1dD4NCisJPGl0ZW1pemVkbGlzdD4N CisJICA8bGlzdGl0ZW0+DQorCSAgICA8cGFyYT5JZiBhIGN1c3RvbSBrZXJu ZWwgaGFzIG9ubHkgYmVlbiBidWlsdCBvbmNlLCB0aGUNCisJICAgICAga2Vy bmVsIGluDQorCSAgICAgIDxmaWxlbmFtZSBjbGFzcz0iZGlyZWN0b3J5Ij4v Ym9vdC9rZXJuZWwub2xkPC9maWxlbmFtZT4gaXMNCisJICAgICAgYWN0dWFs bHkgdGhlIDxmaWxlbmFtZT5HRU5FUklDPC9maWxlbmFtZT4gb25lLiAgU2lt cGx5DQorCSAgICAgIHJlbmFtZSB0aGlzIGRpcmVjdG9yeSB0byA8ZmlsZW5h bWUNCisJCWNsYXNzPSJkaXJlY3RvcnkiPi9ib290L0dFTkVSSUM8L2ZpbGVu YW1lPi48L3BhcmE+DQorCSAgPC9saXN0aXRlbT4NCisNCisJICA8bGlzdGl0 ZW0+DQorCSAgICA8cGFyYT5Bc3N1bWluZyBwaHlzaWNhbCBhY2Nlc3MgdG8g dGhlIG1hY2hpbmUgaXMgcG9zc2libGUsIGENCisJICAgICAgY29weSBvZiB0 aGUgPGZpbGVuYW1lPkdFTkVSSUM8L2ZpbGVuYW1lPiBrZXJuZWwgY2FuIGJl DQorCSAgICAgIGluc3RhbGxlZCBmcm9tIHRoZSBDRC1ST00gbWVkaWEuICBJ bnNlcnQgeW91ciBpbnN0YWxsYXRpb24NCisJICAgICAgZGlzYyBhbmQgdXNl IHRoZSBmb2xsb3dpbmcgY29tbWFuZHM6PC9wYXJhPg0KKw0KKwkgICAgPHNj cmVlbj4mcHJvbXB0LnJvb3Q7IDx1c2VyaW5wdXQ+bW91bnQgL2Nkcm9tPC91 c2VyaW5wdXQ+DQogJnByb21wdC5yb290OyA8dXNlcmlucHV0PmNkIC9jZHJv bS88cmVwbGFjZWFibGU+WC5ZLVJFTEVBU0U8L3JlcGxhY2VhYmxlPi9rZXJu ZWxzPC91c2VyaW5wdXQ+DQogJnByb21wdC5yb290OyA8dXNlcmlucHV0Pi4v aW5zdGFsbC5zaCBHRU5FUklDPC91c2VyaW5wdXQ+PC9zY3JlZW4+DQogDQot CSAgPHBhcmE+UmVwbGFjZSA8ZmlsZW5hbWUNCi0JICAgICAgY2xhc3M9ImRp cmVjdG9yeSI+PHJlcGxhY2VhYmxlPlguWS1SRUxFQVNFPC9yZXBsYWNlYWJs ZT48L2ZpbGVuYW1lPg0KLQkgICAgd2l0aCB0aGUgYWN0dWFsIHZlcnNpb24g b2YgdGhlIHJlbGVhc2UgeW91IGFyZSB1c2luZy4gIFRoZQ0KLQkgICAgPGZp bGVuYW1lPkdFTkVSSUM8L2ZpbGVuYW1lPiBrZXJuZWwgd2lsbCBiZSBpbnN0 YWxsZWQgaW4NCi0JICAgIDxmaWxlbmFtZSBjbGFzcz0iZGlyZWN0b3J5Ij4v Ym9vdC9HRU5FUklDPC9maWxlbmFtZT4gYnkNCi0JICAgIGRlZmF1bHQuPC9w YXJhPg0KLQk8L2xpc3RpdGVtPg0KKwkgICAgPHBhcmE+UmVwbGFjZSA8Zmls ZW5hbWUNCisJICAgICAgICBjbGFzcz0iZGlyZWN0b3J5Ij48cmVwbGFjZWFi bGU+WC5ZLVJFTEVBU0U8L3JlcGxhY2VhYmxlPjwvZmlsZW5hbWU+DQorCSAg ICAgIHdpdGggdGhlIGFjdHVhbCB2ZXJzaW9uIG9mIHRoZSByZWxlYXNlIHlv dSBhcmUgdXNpbmcuICBUaGUNCisJICAgICAgPGZpbGVuYW1lPkdFTkVSSUM8 L2ZpbGVuYW1lPiBrZXJuZWwgd2lsbCBiZSBpbnN0YWxsZWQgaW4NCisJICAg ICAgPGZpbGVuYW1lIGNsYXNzPSJkaXJlY3RvcnkiPi9ib290L0dFTkVSSUM8 L2ZpbGVuYW1lPiBieQ0KKwkgICAgICBkZWZhdWx0LjwvcGFyYT4NCisJICA8 L2xpc3RpdGVtPg0KIA0KLQk8bGlzdGl0ZW0+DQotCSAgPHBhcmE+RmFpbGlu ZyBhbGwgdGhlIGFib3ZlLCB0aGUNCi0JICAgIDxmaWxlbmFtZT5HRU5FUklD PC9maWxlbmFtZT4ga2VybmVsIG1heSBiZSByZWJ1aWx0IGFuZA0KLQkgICAg aW5zdGFsbGVkIGZyb20gdGhlIHNvdXJjZXM6PC9wYXJhPg0KKwkgIDxsaXN0 aXRlbT4NCisJICAgIDxwYXJhPkZhaWxpbmcgYWxsIHRoZSBhYm92ZSwgdGhl DQorCSAgICAgIDxmaWxlbmFtZT5HRU5FUklDPC9maWxlbmFtZT4ga2VybmVs IG1heSBiZSByZWJ1aWx0IGFuZA0KKwkgICAgICBpbnN0YWxsZWQgZnJvbSB0 aGUgc291cmNlczo8L3BhcmE+DQogDQotCSAgPHNjcmVlbj4mcHJvbXB0LnJv b3Q7IDx1c2VyaW5wdXQ+Y2QgL3Vzci9zcmM8L3VzZXJpbnB1dD4NCisJICAg IDxzY3JlZW4+JnByb21wdC5yb290OyA8dXNlcmlucHV0PmNkIC91c3Ivc3Jj PC91c2VyaW5wdXQ+DQogJnByb21wdC5yb290OyA8dXNlcmlucHV0PmVudiBE RVNURElSPS9ib290L0dFTkVSSUMgbWFrZSBrZXJuZWw8L3VzZXJpbnB1dD4N CiAmcHJvbXB0LnJvb3Q7IDx1c2VyaW5wdXQ+bXYgL2Jvb3QvR0VORVJJQy9i b290L2tlcm5lbC8qIC9ib290L0dFTkVSSUM8L3VzZXJpbnB1dD4NCiAmcHJv bXB0LnJvb3Q7IDx1c2VyaW5wdXQ+cm0gLXJmIC9ib290L0dFTkVSSUMvYm9v dDwvdXNlcmlucHV0Pjwvc2NyZWVuPg0KIA0KLQkgIDxwYXJhPkZvciB0aGlz IGtlcm5lbCB0byBiZSBwaWNrZWQgdXAgYXMNCi0JICAgIDxmaWxlbmFtZT5H RU5FUklDPC9maWxlbmFtZT4NCi0JICAgIGJ5IDxjb21tYW5kPmZyZWVic2Qt dXBkYXRlPC9jb21tYW5kPiwgdGhlDQotCSAgICA8ZmlsZW5hbWU+R0VORVJJ QzwvZmlsZW5hbWU+IGNvbmZpZ3VyYXRpb24gZmlsZSBtdXN0IG5vdA0KLQkg ICAgaGF2ZSBiZWVuIG1vZGlmaWVkIGluIGFueSB3YXkuICBJdCBpcyBhbHNv IHN1Z2dlc3RlZCB0aGF0DQotCSAgICBpdCBpcyBidWlsdCB3aXRob3V0IGFu eSBvdGhlciBzcGVjaWFsIG9wdGlvbnMgKHByZWZlcmFibHkNCi0JICAgIHdp dGggYW4gZW1wdHkgPGZpbGVuYW1lPi9ldGMvbWFrZS5jb25mPC9maWxlbmFt ZT4pLjwvcGFyYT4NCi0JPC9saXN0aXRlbT4NCi0gICAgICA8L2l0ZW1pemVk bGlzdD4NCisJICAgIDxwYXJhPkZvciB0aGlzIGtlcm5lbCB0byBiZSBwaWNr ZWQgdXAgYXMNCisJICAgICAgPGZpbGVuYW1lPkdFTkVSSUM8L2ZpbGVuYW1l Pg0KKwkgICAgICBieSA8Y29tbWFuZD5mcmVlYnNkLXVwZGF0ZTwvY29tbWFu ZD4sIHRoZQ0KKwkgICAgICA8ZmlsZW5hbWU+R0VORVJJQzwvZmlsZW5hbWU+ IGNvbmZpZ3VyYXRpb24gZmlsZSBtdXN0IG5vdA0KKwkgICAgICBoYXZlIGJl ZW4gbW9kaWZpZWQgaW4gYW55IHdheS4gIEl0IGlzIGFsc28gc3VnZ2VzdGVk IHRoYXQNCisJICAgICAgaXQgaXMgYnVpbHQgd2l0aG91dCBhbnkgb3RoZXIg c3BlY2lhbCBvcHRpb25zIChwcmVmZXJhYmx5DQorCSAgICAgIHdpdGggYW4g ZW1wdHkgPGZpbGVuYW1lPi9ldGMvbWFrZS5jb25mPC9maWxlbmFtZT4pLjwv cGFyYT4NCisJICA8L2xpc3RpdGVtPg0KKwk8L2l0ZW1pemVkbGlzdD4NCiAN Ci0gICAgICA8cGFyYT5SZWJvb3RpbmcgdG8gdGhlIDxmaWxlbmFtZT5HRU5F UklDPC9maWxlbmFtZT4ga2VybmVsIGlzDQotCW5vdCByZXF1aXJlZCBhdCB0 aGlzIHN0YWdlLjwvcGFyYT4NCisJPHBhcmE+UmVib290aW5nIHRvIHRoZSA8 ZmlsZW5hbWU+R0VORVJJQzwvZmlsZW5hbWU+IGtlcm5lbCBpcw0KKwkgIG5v dCByZXF1aXJlZCBhdCB0aGlzIHN0YWdlLjwvcGFyYT4NCisgICAgICA8L3dh cm5pbmc+DQogDQogICAgICAgPHBhcmE+TWFqb3IgYW5kIG1pbm9yIHZlcnNp b24gdXBkYXRlcyBtYXkgYmUgcGVyZm9ybWVkIGJ5DQogCXByb3ZpZGluZyA8 Y29tbWFuZD5mcmVlYnNkLXVwZGF0ZTwvY29tbWFuZD4gd2l0aCBhIHJlbGVh c2UNCkBAIC01NTIsNyArNTY0LDcgQEANCiAJICB0aHJlZS48L3BhcmE+DQog ICAgICAgPC9ub3RlPg0KIA0KLSAgICAgIDxwYXJhPkFsbCB0aGlyZCBwYXJ0 eSBzb2Z0d2FyZSB3aWxsIG5vdyBuZWVkIHRvIGJlIHJlYnVpbHQgYW5kDQor ICAgICAgPHBhcmE+QWZ0ZXIgYSBtYWpvciB1cGdyYWRlLCBhbGwgdGhpcmQg cGFydHkgc29mdHdhcmUgd2lsbCBub3cgbmVlZCB0byBiZSByZWJ1aWx0IGFu ZA0KIAlyZS1pbnN0YWxsZWQuICBUaGlzIGlzIHJlcXVpcmVkIGFzIGluc3Rh bGxlZCBzb2Z0d2FyZSBtYXkNCiAJZGVwZW5kIG9uIGxpYnJhcmllcyB3aGlj aCBoYXZlIGJlZW4gcmVtb3ZlZCBkdXJpbmcgdGhlIHVwZ3JhZGUNCiAJcHJv Y2Vzcy4gIFRoZQ0K --3512871622-30234771-1358054653=:11994--