Received: from comptechnews.com (cc993546-b.srst1.fl.home.com [24.3.77.52]) by mail.postgresql.org (8.11.1/8.11.1) with ESMTP id f0E4lMp02993 for ; Sat, 13 Jan 2001 23:47:22 -0500 (EST) (envelope-from reaster@comptechnews.com) Received: from comptechnews (reaster@localhost [127.0.0.1]) by comptechnews.com (8.10.2/8.10.2) with SMTP id f0E4qcZ27581 for ; Sat, 13 Jan 2001 23:52:38 -0500 From: "Robert B. Easter" To: pgsql-patches@postgresql.org Subject: docs: syntax.sgml patch Date: Sat, 13 Jan 2001 23:52:37 -0500 X-Mailer: KMail [version 1.1.99] Content-Type: Multipart/Mixed; boundary="------------Boundary-00=_PVY4WECM1P4VX2IIIRUX" MIME-Version: 1.0 Message-Id: <0101132352370A.15894@comptechnews> X-Archive-Number: 200101/46 X-Sequence-Number: 203 --------------Boundary-00=_PVY4WECM1P4VX2IIIRUX Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit I've made an attempt to better describe the FROM clause and table expressions in general for the SQL Syntax: Expressions page in the User's Guide. My patch replaces the "FROM clause" section that was in there with a section called "Table Expressions". It includes a description of the FROM clause and also the WHERE, GROUP BY, HAVING, ORDER BY, and LIMIT clauses. The JOIN syntax is covered. Subqueries are also explained some. There could be some mistakes or statements that imply a limitation that is not true (maybe). I encourage people to review it and correct any mistakes or clean up the language etc. If it's not right for being applied, let me know. I'm hoping this material will fit in and be developed further with more examples later. -- -------- Robert B. Easter reaster@comptechnews.com --------- -- CompTechNews Message Board http://www.comptechnews.com/ -- -- CompTechServ Tech Services http://www.comptechserv.com/ -- ---------- http://www.comptechnews.com/~reaster/ ------------ --------------Boundary-00=_PVY4WECM1P4VX2IIIRUX Content-Type: text/english; name="syntax.sgml.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="syntax.sgml.patch" KioqIHN5bnRheC5zZ21sLm9yaWcJU2F0IEphbiAxMyAyMzoxODo1NyAyMDAx Ci0tLSBzeW50YXguc2dtbC5tb2RpLjIJU2F0IEphbiAxMyAyMzo0MToxOSAy MDAxCioqKioqKioqKioqKioqKgoqKiogNjk3LDcwMiAqKioqCi0tLSA2OTcs NzAzIC0tLS0KICAgICAgIDxtZW1iZXI+cGFyYW1ldGVyPC9tZW1iZXI+CiAg ICAgICA8bWVtYmVyPmZ1bmN0aW9uYWwgZXhwcmVzc2lvbjwvbWVtYmVyPgog ICAgICAgPG1lbWJlcj5hZ2dyZWdhdGUgZXhwcmVzc2lvbjwvbWVtYmVyPgor IAkgPG1lbWJlcj50YWJsZSBleHByZXNzaW9uPC9tZW1iZXI+CiAgICAgIDwv c2ltcGxlbGlzdD4KICAgICA8L3BhcmE+CiAgCioqKioqKioqKioqKioqKgoq KiogODM4LDg5OCAqKioqCiAgICAgIDwvcGFyYT4KICAgICA8L3NlY3QyPgog IAotICAgIDxzZWN0Mj4KLSAgICAgPHRpdGxlPkZyb20gTGlzdDwvdGl0bGU+ Ci0gCi0gICAgIDxwYXJhPgotICAgICAgVGhlIDxmaXJzdHRlcm0+ZnJvbSBs aXN0PC9maXJzdHRlcm0+Ci0gICAgICBpcyBhIGNvbW1hLXNlcGFyYXRlZCBs aXN0IG9mIDxmaXJzdHRlcm0+ZnJvbS1leHByZXNzaW9uczwvZmlyc3R0ZXJt Pi4KLSAgICAgIFRoZSBzaW1wbGVzdCBwb3NzaWJpbGl0eSBmb3IgYSBmcm9t LWV4cHJlc3Npb24gaXM6Ci0gCi0gICAgICA8c3lub3BzaXM+Ci0gPHJlcGxh Y2VhYmxlPnRhYmxlX3JlZmVyZW5jZTwvcmVwbGFjZWFibGU+IFsgWyBBUyBd IDxyZXBsYWNlYWJsZSBjbGFzcz0iUEFSQU1FVEVSIj5hbGlhczwvcmVwbGFj ZWFibGU+IF0KLSAgICAgIDwvc3lub3BzaXM+CiAgCiEgICAgICB3aGVyZSA8 cmVwbGFjZWFibGU+dGFibGVfcmVmZXJlbmNlPC9yZXBsYWNlYWJsZT4gaXMg b2YgdGhlIGZvcm0KISAKISAgICAgIDxzeW5vcHNpcz4KISBbIE9OTFkgXSA8 cmVwbGFjZWFibGUgY2xhc3M9IlBBUkFNRVRFUiI+dGFibGVfbmFtZTwvcmVw bGFjZWFibGU+IFsgKiBdCiEgICAgICA8L3N5bm9wc2lzPgohIAohICAgICAg VGhlIGZyb20tZXhwcmVzc2lvbiBkZWZpbmVzIGFuIGluc3RhbmNlIHZhcmlh YmxlIHRoYXQgcmFuZ2VzIG92ZXIgdGhlCiEgICAgICByb3dzIG9mIHRoZSBz cGVjaWZpZWQgdGFibGUuICBUaGUgaW5zdGFuY2UgdmFyaWFibGUncyBuYW1l IGlzIGVpdGhlcgohICAgICAgdGhlIHRhYmxlIG5hbWUsIG9yIHRoZSA8cmVw bGFjZWFibGU+YWxpYXM8L3JlcGxhY2VhYmxlPiBpZiBvbmUgaXMgZ2l2ZW4u CiEgICAgICBPcmRpbmFyaWx5LCBpZiB0aGUgdGFibGUgaGFzIGNoaWxkIHRh YmxlcyB0aGVuIHRoZSBpbnN0YW5jZSB2YXJpYWJsZQohICAgICAgd2lsbCBy YW5nZSBvdmVyIGFsbCByb3dzIGluIHRoZSBpbmhlcml0YW5jZSBoaWVyYXJj aHkgc3RhcnRpbmcgd2l0aAohICAgICAgdGhlIHNwZWNpZmllZCB0YWJsZS4g IElmIDxsaXRlcmFsPk9OTFk8L2xpdGVyYWw+IGlzIHNwZWNpZmllZCB0aGVu CiEgICAgICBjaGlsZCB0YWJsZXMgYXJlIG5vdCBpbmNsdWRlZC4gIEEgdHJh aWxpbmcgYXN0ZXJpc2sgPGxpdGVyYWw+KjwvbGl0ZXJhbD4KISAgICAgIGNh biBiZSB3cml0dGVuIHRvIHNwZWNpZmljYWxseSBpbmRpY2F0ZSB0aGF0IGNo aWxkIHRhYmxlcyBhcmUgaW5jbHVkZWQKISAgICAgICg8bGl0ZXJhbD5PTkxZ PC9saXRlcmFsPiBhbmQgPGxpdGVyYWw+KjwvbGl0ZXJhbD4gYXJlIG11dHVh bGx5CiEgICAgICBleGNsdXNpdmUpLgohICAgICA8L3BhcmE+CiAgCiEgICAg IDxwYXJhPgohICAgICAgQSBmcm9tLWV4cHJlc3Npb24gY2FuIGFsc28gYmUg YSBzdWItcXVlcnk6CiAgCiEgICAgICA8c3lub3BzaXM+CiEgKCA8cmVwbGFj ZWFibGUgY2xhc3M9IlBBUkFNRVRFUiI+c2VsZWN0LXN0YXRlbWVudDwvcmVw bGFjZWFibGU+ICkgWyBBUyBdIDxyZXBsYWNlYWJsZSBjbGFzcz0iUEFSQU1F VEVSIj5hbGlhczwvcmVwbGFjZWFibGU+CiEgICAgICA8L3N5bm9wc2lzPgog IAohICAgICAgSGVyZSwgdGhlIGVmZmVjdCBpcyBhcyB0aG91Z2ggdGhlIFNF TEVDVCB3ZXJlIGV4ZWN1dGVkIGFuZCBpdHMgcmVzdWx0cwohICAgICAgc3Rv cmVkIGluIGEgdGVtcG9yYXJ5IHRhYmxlLCB3aGljaCB0aGVuIGJlY29tZXMg YXZhaWxhYmxlIGFzIGFuIGluc3RhbmNlCiEgICAgICB2YXJpYWJsZSB1bmRl ciB0aGUgZ2l2ZW4gPHJlcGxhY2VhYmxlPmFsaWFzPC9yZXBsYWNlYWJsZT4u CiEgICAgIDwvcGFyYT4KICAKISAgICAgPHBhcmE+CiEgICAgICBGaW5hbGx5 LCBhIGZyb20tZXhwcmVzc2lvbiBjYW4gYmUgYnVpbHQgdXAgZnJvbSBzaW1w bGVyIGZyb20tZXhwcmVzc2lvbnMKISAgICAgIHVzaW5nIEpPSU4gY2xhdXNl czoKICAKLSAgICAgIDxzeW5vcHNpcz4KLSA8cmVwbGFjZWFibGUgY2xhc3M9 IlBBUkFNRVRFUiI+ZnJvbV9leHByZXNzaW9uPC9yZXBsYWNlYWJsZT4gWyBO QVRVUkFMIF0gPHJlcGxhY2VhYmxlIGNsYXNzPSJQQVJBTUVURVIiPmpvaW5f dHlwZTwvcmVwbGFjZWFibGU+IDxyZXBsYWNlYWJsZSBjbGFzcz0iUEFSQU1F VEVSIj5mcm9tX2V4cHJlc3Npb248L3JlcGxhY2VhYmxlPgotICAgICBbIE9O IDxyZXBsYWNlYWJsZSBjbGFzcz0iUEFSQU1FVEVSIj5qb2luX2NvbmRpdGlv bjwvcmVwbGFjZWFibGU+IHwgVVNJTkcgKCA8cmVwbGFjZWFibGUgY2xhc3M9 IlBBUkFNRVRFUiI+am9pbl9jb2x1bW5fbGlzdDwvcmVwbGFjZWFibGU+ICkg XQotICAgICAgPC9zeW5vcHNpcz4KICAKLSAgICAgIFRoaXMgc3ludGF4IGFs bG93cyBzcGVjaWZpY2F0aW9uIG9mIDxmaXJzdHRlcm0+b3V0ZXIgam9pbnM8 L2ZpcnN0dGVybT4uCi0gICAgICBGb3IgZGV0YWlscyBzZWUgdGhlIHJlZmVy ZW5jZSBwYWdlIGZvciBTRUxFQ1QuCi0gICAgIDwvcGFyYT4KLSAgICA8L3Nl Y3QyPgogIAogIAogICAgPHNlY3QyIGlkPSJzcWwtcHJlY2VkZW5jZSI+Ci0t LSA4MzksMTM1NyAtLS0tCiAgICAgIDwvcGFyYT4KICAgICA8L3NlY3QyPgog IAogIAohICAgIDxzZWN0Mj4KISAgICAgPHRpdGxlPlRhYmxlIEV4cHJlc3Np b25zPC90aXRsZT4KISAJPHBhcmE+CiEgCSBBIDxyZXBsYWNlYWJsZT50YWJs ZSBleHByZXNzaW9uPC9yZXBsYWNlYWJsZT4gc3BlY2lmaWVzIGEgdGFibGUK ISAJIG9yIGdyb3VwZWQgdGFibGUuCiEgICAgIDwvcGFyYT4KISAKISAJPHBh cmE+CiEgCSBUaGUgdGFibGUgZXhwcmVzc2lvbiBjb250YWlucyBhIEZST00g Y2xhdXNlIHRoYXQgaXMgb3B0aW9uYWxseSBmb2xsb3dlZAohIAkgYnkgV0hF UkUsIEdST1VQIEJZLCBhbmQgSEFWSU5HIGNsYXVzZXMuICBUaGUgdGFibGUg cmVzdWx0aW5nIGZyb20gYSB0YWJsZSBleHByZXNzaW9uLAohIAkgY2FsbGVk IGEgZGVyaXZlZCB0YWJsZSwgaXMgdGhlIGlucHV0IHRhYmxlIG9mIGEgcXVl cnkuIFRoZQohIAkgaW5wdXQgdGFibGUgaXMgaW4gc2NvcGUgaW5zaWRlIHRo ZSBxdWVyeSBhbmQgYW55IHN1YnF1ZXJpZXMuCiEgICAgIDwvcGFyYT4KISAK ISAJPHBhcmE+CiEgCSBUaGUgV0hFUkUsIEdST1VQIEJZLCBhbmQgSEFWSU5H IGNsYXVzZXMgaW4gdGhlIHRhYmxlIGV4cHJlc3Npb24gc3BlY2lmeQohIAkg YSBwaXBlbGluZSBvZiBzdWNjZXNzaXZlIHRyYW5zZm9ybWF0aW9ucyBwZXJm b3JtZWQgb24gdGhlIGluaXRpYWwgaW5wdXQgdGFibGUKISAJIGRlcml2ZWQg aW4gdGhlIEZST00gY2xhdXNlLiAgVGhlIGZpbmFsIHRyYW5zZm9ybWVkIGlu cHV0IHRhYmxlCiEgCSBwcm92aWRlcyB0aGUgaW5wdXQgcm93cyB1c2VkIHRv IGRlcml2ZSBvdXRwdXQgcm93cyBhcyBzcGVjaWZpZWQgYnkgdGhlIHNlbGVj dAohIAkgbGlzdCBvZiBkZXJpdmVkIGNvbHVtbiB2YWx1ZSBleHByZXNzaW9u cy4KISAJPC9wYXJhPgohIAkKISAJPHBhcmE+CiEgCSA8Y21kc3lub3BzaXM+ CiEgCSAgPGNvbW1hbmQ+U0VMRUNUPC9jb21tYW5kPgohIAkgIDxhcmcgY2hv aWNlPSJyZXEiPnNlbGVjdCBsaXN0PC9hcmc+CiEgCSAgPGFyZyBjaG9pY2U9 InJlcSI+dGFibGUgZXhwcmVzc2lvbjwvYXJnPgohIAkgPC9jbWRzeW5vcHNp cz4KISAJPC9wYXJhPgohIAohIAk8cGFyYT4KISAJIFRoZSBxdWVyeSA8cmVw bGFjZWFibGU+c2VsZWN0IGxpc3Q8L3JlcGxhY2VhYmxlPiBpcyBhIGNvbW1h IHNlcGFyYXRlZCBsaXN0CiEgCSBvZiA8cmVwbGFjZWFibGU+dmFsdWUgZXhw cmVzc2lvbnM8L3JlcGxhY2VhYmxlPiB0aGF0IHNwZWNpZnkgdGhlIGRlcml2 ZWQgY29sdW1ucwohIAkgb2YgdGhlIHF1ZXJ5IG91dHB1dCB0YWJsZSwgd2hp Y2ggaXMgYSBkZXJpdmVkIHRhYmxlIGl0c2VsZiBpdCBpZiBpcyBhIHN1YnF1 ZXJ5LgohIAkgQ29sdW1uIG5hbWVzIGluIHRoZSBpbnB1dCB0YWJsZSBtYXkg YmUgcmVmZXJlbmNlZCBpbiB0aGUKISAJIGRlcml2ZWQgY29sdW1uIDxyZXBs YWNlYWJsZT52YWx1ZSBleHByZXNzaW9uPC9yZXBsYWNlYWJsZT5zIG9mIHRo ZSBvdXRwdXQKISAJIHRhYmxlLgohIAk8L3BhcmE+CiEgCiEgCTxwYXJhPgoh ICAgICAgSW4gZ2VuZXJhbCwgYW55d2hlcmUgYSB0YWJsZSByZWZlcmVuY2Ug b3IgdmFsdWUgZXhwcmVzc2lvbiBjYW4gYXBwZWFyIGluIGEKISAJIHF1ZXJ5 LCBhIHN1YnF1ZXJ5IG9yIHNjYWxhciBzdWJxdWVyeSwgcmVzcGVjdGl2ZWx5 LCBtYXkgYmUgdXNlZC4gQSBzY2FsYXIKISAJIHN1YnF1ZXJ5IGlzIGEgZm9y bSBvZiA8cmVwbGFjZWFibGU+dmFsdWUgZXhwcmVzc2lvbjwvcmVwbGFjZWFi bGU+LgohIAkgRm9yIGV4YW1wbGUsIGEgc2NhbGFyIHN1YnF1ZXJ5IGNhbiBi ZSB1c2VkIGluIGEgZGVyaXZlZCBjb2x1bW4KISAJIDxyZXBsYWNlYWJsZT52 YWx1ZSBleHByZXNzaW9uPC9yZXBsYWNlYWJsZT4uIEEgc2NhbGFyIHN1YnF1 ZXJ5IHJldHVybnMKISAJIGEgZGVyaXZlZCB0YWJsZSB3aXRoIG9uZSBjb2x1 bW4gYW5kIG9uZSByb3cgKGEgdmFsdWUpLgohIAkgSW5wdXQgdGFibGUgY29s dW1ucyBvZiBhbiBvdXRlciBxdWVyeSB0aGF0IGFyZSByZWZlcmVuY2VhYmxl IGluIHRoZQohIAkgc2VsZWN0IGxpc3Qgb2YgdGhlIG91dGVyIHF1ZXJ5LCBh cmUgcmVmZXJlbmNlYWJsZSAoaW4gc2NvcGUpIGluIGFuIGlubmVyCiEgCSBx dWVyeSAoc3VicXVlcnkpLiBBIHNjYWxhciBxdWVyeSBkZXJpdmluZyBhIHZh bHVlIGZyb20gZ2xvYmFsbHkgZGVmaW5lZAohIAkgZnVuY3Rpb25zIGFuZCB2 YXJpYWJsZXMgYW5kIGNvbHVtbnMgaW4gc2NvcGUgZnJvbSBhbiBvdXRlciBx dWVyeSwgbmVlZCBub3QKISAJIGhhdmUgYSBGUk9NIGNsYXVzZSBidXQgbWF5 IHN0aWxsIHVzZSBvdGhlciB0YWJsZSBleHByZXNzaW9uIGNsYXVzZXMuCiEg CTwvcGFyYT4KISAKISAJPHNlY3QzPgohIAkgPHRpdGxlPkZST00gY2xhdXNl PC90aXRsZT4KISAJIAohIAkgPHBhcmE+CSAJICAgCiEgCSAgVGhlIEZST00g Y2xhdXNlIGRlcml2ZXMgYSB0YWJsZSBmcm9tIG9uZSBvciBtb3JlIG90aGVy IHRhYmxlcyBnaXZlbiBpbiBhCiEgCSAgY29tbWEtc2VwYXJhdGVkIHRhYmxl IHJlZmVyZW5jZSBsaXN0LiAgVGhlIHRhYmxlcyBsaXN0ZWQgbWF5IGJlIHRh YmxlCiEgCSAgbmFtZXMgb3IgZGVyaXZlZCB0YWJsZXMgc3VjaCBhcyBxdWVy eSBuYW1lcywgbmFtZWQgc3VicXVlcmllcywgam9pbmVkCiEgCSAgdGFibGVz LCBhbmQgY29tcGxleCBjb21iaW5hdGlvbnMgb2YgdGhlc2UuICBUaGUgdGFi bGVzIGxpc3RlZCBpbiB0aGUKISAJICBGUk9NIGNsYXVzZSBhcmUgQ1JPU1Mg Sk9JTmVkIHRvIHByb2R1Y2UgdGhlIGRlcml2ZWQgaW5wdXQgdGFibGUgb2Yg YQohIAkgIHF1ZXJ5IHdoaWNoIG1heSB0aGVuIGJlIHN1YmplY3QgdG8gdHJh bnNmb3JtYXRpb25zIGJ5IHRoZSBXSEVSRSwKISAJICBHUk9VUCBCWSwgYW5k IEhBVklORyBjbGF1c2VzLgohICAgICAgPC9wYXJhPgohIAohIAkgPHBhcmE+ CiEgCSAgVGFibGUgbmFtZXMgYXJlIHNpbXBsZSBuYW1lcyBvZiByZWFsIHRh Ymxlcy4gIEEgcXVlcnkgbmFtZSBpcyB0aGUgbmFtZQohICAgICAgIG9mIGEg VklFVy4gIEEgbmFtZWQgc3VicXVlcnkgaW4gdGhlIEZST00gY2xhdXNlIGlz IGEgcGFyZW50aGVzaXplZCBTRUxFQ1QKISAgICAgICBzdGF0ZW1lbnQgZm9s bG93ZWQgYnkgYW4gQVMgY2xhdXNlLiBKb2luZWQgdGFibGVzIGFyZSB0YWJs ZXMgam9pbmVkIHVzaW5nCiEgICAgICAgU1FMIEpPSU4gc3ludGF4LiBJZiBh IHRhYmxlIHJlZmVyZW5jZSBpcyBhIHNpbXBsZSB0YWJsZSBuYW1lIGFuZCBp dCBpcwohIAkgIHRoZSBzdXBlcnRhYmxlIGluIGEgdGFibGUgaW5oZXJpdGFu Y2UgaGllcmFyY2h5LCByb3dzIG9mIHRoZSB0YWJsZQohIAkgIGluY2x1ZGUg cm93cyBmcm9tIGFsbCBvZiBpdHMgc3VidGFibGUgc3VjY2Vzc29ycyB1bmxl c3MgdGhlIGtleXdvcmQgT05MWQohIAkgIHByZWNlZGVzIHRoZSB0YWJsZSBu YW1lLgohIAkgPC9wYXJhPgohIAohIAohIAkgPHByb2dyYW1saXN0aW5nPgoh IEZST00gVDEgQVMgRFQxCiEgRlJPTSBUMSBEVDEKISBGUk9NIFQxIERUMSAo RFQxQzEpCiEgCSA8L3Byb2dyYW1saXN0aW5nPgohIAohIAkgPHBhcmE+CiEg ICAgICAgVGFibGUgVDEgaXMgdGFrZW4gYXMgdGhlIGRlcml2ZWQgaW5wdXQg dGFibGUgYW5kIHJlbmFtZWQKISAJICBhcyBEVDEuIFRoZSBrZXl3b3JkIEFT IGlzIG9wdGlvbmFsIG5vaXNlIHdoZW4gbmFtaW5nIGEgdGFibGUuCiEgCSAg RmluYWxseSwgVDEgaXMgcmVuYW1lZCBEVDEgYWdhaW4gYW5kIHRoZW4gdGhl IGZpcnN0IGNvbHVtbiBvZgohIAkgIERUMSBpcyByZW5hbWVkIGFzIERUMUMx LiBJZiBEVDEgaGFzIGFkZGl0aW9uYWwgY29sdW1ucywgdGhleSBjYW4gYmUK ISAJICBuYW1lZCBieSBhZGRpbmcgbW9yZSBjb21tYS1zZXBhcmF0ZWQgY29s dW1uIG5hbWVzIGZvbGxvd2luZyBEVDFDMS4KISAgICAgICBOb3RlIHRoYXQg VDEgY291bGQgYmUgYW55IHR5cGUgb2YgZGVyaXZlZCB0YWJsZSwgbm90IGp1 c3QgYSBzaW1wbGUKISAJICB0YWJsZSBuYW1lLgohICAgICAgPC9wYXJhPgoh IAohIAkgPHBhcmE+CiEgCSAgU3VicXVlcmllcywgbGlrZSBxdWVyaWVzIGlu IGdlbmVyYWwsIHJldHVybiBhIGRlcml2ZWQgb3V0cHV0IHRhYmxlLgohIAkg IFN1YnF1ZXJpZXMgc3BlY2lmeWluZyBhIGRlcml2ZWQgdGFibGUgbXVzdCBi ZSBlbmNsb3NlZCBpbgohIAkgIHBhcmVudGhlc2lzIGFuZCBtdXN0IGJlIG5h bWVkIHVzaW5nIGFuIEFTIGNsYXVzZS4KISAgICAgIDwvcGFyYT4KISAKISAJ IDxwcm9ncmFtbGlzdGluZz4KISBGUk9NIChTRUxFQ1QgKiBGUk9NIFQxKSBB UyBEVDEKISBGUk9NIChTRUxFQ1QgKiBGUk9NIFQxKURUMQohIEZST00gKFNF TEVDVCAqIEZST00gVDEpRFQxIChEVDFDMSwgRFQxQzIpLCBUMgohIAkgPC9w cm9ncmFtbGlzdGluZz4KISAKISAJIDxwYXJhPgohIAkgIFRoaXMgZXhhbXBs ZSBhYm92ZSBpcyBzaW1pbGFyIHRvIHNlbGVjdGluZyBzaW1wbGUgdGFibGUg bmFtZXMuCiEgCSAgVGhlIGxhc3QgZXhhbXBsZSByZXN1bHRzIGluIGEgQ1JP U1MgSk9JTiBvZiBkZXJpdmVkCiEgCSAgdGFibGUgRFQxIHdpdGggdGFibGUg VDIuICBUaGUgZmlyc3QgdHdvIGNvbHVtbnMgaW4KISAJICBEVDEgYXJlIHJl bmFtZWQgYXMgRFQxQzEgYW5kIERUMUMyLgohICAgICAgPC9wYXJhPgohIAoh IAkgPHBhcmE+CiEgCSAgQSBqb2luZWQgdGFibGUgaXMgYSB0YWJsZSBkZXJp dmVkIGZyb20gdHdvIG9yIG1vcmUgb3RoZXIgZGVyaXZlZAohIAkgIG9yIHJl YWwgdGFibGVzIHVzaW5nIEpPSU4gc3ludGF4LiAgSU5ORVIsIE9VVEVSLCBO QVRVUkFMLCBhbmQgQ1JPU1MKISAJICBKT0lOIGFyZSBzdXBwb3J0ZWQuIExp a2UgYSBzdWJxdWVyeSwgYSBqb2luZWQgdGFibGUgY2FuIGJlCiEgCSAgZW5j bG9zZWQgaW4gcGFyZW50aGVzaXMgYW5kIGdpdmVuIGEgZGVyaXZlZCB0YWJs ZSBuYW1lIHVzaW5nCiEgCSAgYW4gQVMgY2xhdXNlLgohICAgICAgPC9wYXJh PgohIAohIAkgPHBhcmE+CiEgCSAgSk9JTnMgb2YgYWxsIHR5cGVzIGNhbiBi ZSBjaGFpbmVkIHRvZ2V0aGVyIG9yIG5lc3RlZCB3aGVyZSBlaXRoZXIgb3Ig Ym90aCBvZgohIAkgIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5U MTwvcmVwbGFjZWFibGU+IGFuZAohIAkgIDxyZXBsYWNlYWJsZSBjbGFzcz0i cGFyYW1ldGVyIj5UMjwvcmVwbGFjZWFibGU+IG1heSBiZSBKT0lOZWQgdGFi bGVzLgohIAkgIEEgUXVhbGlmaWVkIEpPSU4gbWF5IGJlIEpPSU5lZCB0byBh bm90aGVyIHRhYmxlIChvciBKT0lOZWQgdGFibGUpCiEgCSAgZm9sbG93aW5n IGl0cyBqb2luIHNwZWNpZmljYXRpb24sIHdoaWNoIGNvbnNpc3RzIG9mIGVp dGhlciBhbgohIAkgIE9OIDxyZXBsYWNlYWJsZT5zZWFyY2ggY29uZGl0aW9u PC9yZXBsYWNlYWJsZT4gb3IKISAJICBVU0lORyAoIDxyZXBsYWNlYWJsZT5q b2luIGNvbHVtbiBsaXN0PC9yZXBsYWNlYWJsZT4gKSBjbGF1c2UuCiEgCSAg UGFyZW50aGVzaXMgY2FuIGJlIHVzZWQgYXJvdW5kIEpPSU4gY2xhdXNlcyB0 byBjb250cm9sIHRoZSBvcmRlcgohIAkgIG9mIEpPSU5zIHdoaWNoIGFyZSBv dGhlcndpc2UgcHJvY2Vzc2VkIGxlZnQgdG8gcmlnaHQuCiEgCSA8L3BhcmE+ CiEgCiEgICAgICA8dmFyaWFibGVsaXN0PgohICAgICAgIDx0aXRsZT5Kb2lu IFR5cGVzPC90aXRsZT4KISAgICAgICA8dmFybGlzdGVudHJ5PgohICAgICAg ICA8dGVybT5DUk9TUyBKT0lOPC90ZXJtPgohICAgICAgICA8bGlzdGl0ZW0+ CiEgICAgICAgICA8Y21kc3lub3BzaXM+CiEgICAgICAgICAgPGFyZyBjaG9p Y2U9InJlcSI+IDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5UMTwv cmVwbGFjZWFibGU+IDwvYXJnPgohICAgICAgICAgIDxhcmcgY2hvaWNlPSJw bGFpbiI+Q1JPU1M8L2FyZz4KISAgICAgICAgICA8Y29tbWFuZD4gSk9JTiA8 L2NvbW1hbmQ+CiEgICAgICAgICAgPGFyZyBjaG9pY2U9InJlcSI+IDxyZXBs YWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5UMjwvcmVwbGFjZWFibGU+IDwv YXJnPgohICAgICAgICAgPC9jbWRzeW5vcHNpcz4KISAKISAgICAgICAgIDxw YXJhPgohICAgICAgICAgIEEgY3Jvc3Mgam9pbiB0YWtlcyB0d28gdGFibGVz IFQxIGFuZCBUMiBoYXZpbmcgTiBhbmQgTSByb3dzCiEgICAgICAgICAgcmVz cGVjdGl2ZWx5LCBhbmQgcmV0dXJucyBhIGpvaW5lZCB0YWJsZSBjb250YWlu aW5nIGEgY3Jvc3MKISAgICAgICAgICBwcm9kdWN0LCBOeE0sIG9mIGpvaW5l ZCByb3dzLiBGb3IgZWFjaCByb3cgUjEgb2YgVDEsIGVhY2ggcm93CiEgICAg ICAgICAgUjIgb2YgVDIgaXMgam9pbmVkIHdpdGggUjEgdG8geWllbGQgYSBq b2luZWQgdGFibGUgcm93IEpSCiEgICAgICAgICAgY29uc2lzdGluZyBvZiBh bGwgZmllbGRzIGluIFIxIGFuZCBSMi4gQSBDUk9TUyBKT0lOIGlzCiEgICAg ICAgICAgZXNzZW50aWFsbHkgYW4gSU5ORVIgSk9JTiBPTiBUUlVFLgohICAg ICAgICAgPC9wYXJhPgohIAohICAgICAgICAgPHRpcD4KISAJCSA8cGFyYT4K ISAgICAgICAgICAgRlJPTSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRl ciI+VDE8L3JlcGxhY2VhYmxlPgohICAgICAgICAgICBDUk9TUyBKT0lOCiEg ICAgICAgICAgIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5UMjwv cmVwbGFjZWFibGU+LAohICAgICAgICAgICBpcyBlcXVpdmFsZW50IHRvLAoh ICAgICAgICAgICBGUk9NCiEgICAgICAgICAgIDxyZXBsYWNlYWJsZSBjbGFz cz0icGFyYW1ldGVyIj5UMTwvcmVwbGFjZWFibGU+LAohICAgICAgICAgICA8 cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+VDI8L3JlcGxhY2VhYmxl Pi4KISAJCSAgVGhlIHRhYmxlcyBsaXN0ZWQgaW4gRlJPTSBhcmUgQ1JPU1Mg Sk9JTmVkIHRvIGZvcm0gYQohICAgICAgICAgICBkZXJpdmVkIHRhYmxlLgoh ICAgICAgICAgIDwvcGFyYT4KISAgICAgICAgIDwvdGlwPgohICAgICAgICA8 L2xpc3RpdGVtPgohICAgICAgIDwvdmFybGlzdGVudHJ5PgohIAohICAgICAg IDx2YXJsaXN0ZW50cnk+CiEgICAgICAgIDx0ZXJtPlF1YWxpZmllZCBKT0lO czwvdGVybT4KISAgICAgICAgPGxpc3RpdGVtPgohICAgICAgICAgPGNtZHN5 bm9wc2lzPgohIAkJIDxhcmcgY2hvaWNlPSJyZXEiPiA8cmVwbGFjZWFibGUg Y2xhc3M9InBhcmFtZXRlciI+VDE8L3JlcGxhY2VhYmxlPiA8L2FyZz4KISAg ICAgICAgICA8Z3JvdXAgY2hvaWNlPSJvcHQiPgohICAgICAgICAgICA8YXJn IGNob2ljZT0ib3B0Ij4gSU5ORVIgPC9hcmc+CiEgICAgICAgICAgIDxhcmc+ CiEgICAgICAgICAgICA8Z3JvdXAgY2hvaWNlPSJyZXEiPgohICAgICAgICAg ICAgIDxhcmcgY2hvaWNlPSJwbGFpbiI+IExFRlQgPC9hcmc+CiEgICAgICAg ICAgICAgPGFyZyBjaG9pY2U9InBsYWluIj4gUklHSFQgPC9hcmc+CiEgICAg ICAgICAgICAgPGFyZyBjaG9pY2U9InBsYWluIj4gRlVMTCA8L2FyZz4KISAg ICAgICAgICAgIDwvZ3JvdXA+CiEgICAgICAgICAgICA8YXJnIGNob2ljZT0i b3B0Ij4gT1VURVIgPC9hcmc+CiEgICAgICAgICAgIDwvYXJnPgohICAgICAg ICAgIDwvZ3JvdXA+CiEgICAgICAgICAgPGNvbW1hbmQ+IEpPSU4gPC9jb21t YW5kPgohICAgICAgICAgIDxhcmcgY2hvaWNlPSJyZXEiPiA8cmVwbGFjZWFi bGUgY2xhc3M9InBhcmFtZXRlciI+VDI8L3JlcGxhY2VhYmxlPiA8L2FyZz4K ISAgICAgICAgICA8Z3JvdXAgY2hvaWNlPSJyZXEiPgohICAgICAgICAgICA8 YXJnPiBPTiA8cmVwbGFjZWFibGU+c2VhcmNoIGNvbmRpdGlvbjwvcmVwbGFj ZWFibGU+PC9hcmc+CiEgICAgICAgICAgIDxhcmc+IFVTSU5HICggPHJlcGxh Y2VhYmxlPmpvaW4gY29sdW1uIGxpc3Q8L3JlcGxhY2VhYmxlPiApIDwvYXJn PgohICAgICAgICAgIDwvZ3JvdXA+CiEgICAgICAgICAgPGFyZyBjaG9pY2U9 InBsYWluIj4gLi4uIDwvYXJnPgohICAgICAgICAgPC9jbWRzeW5vcHNpcz4K ISAgICAgICAgIAohIAkJPHBhcmE+CiEgICAgICAgICAgT25seSB0aGUgcXVh bGlmaWVkIEpPSU4gdHlwZXMgY2FuIHVzZSB0aGUgT04gb3IgVVNJTkcgY2xh dXNlLiBUaGUgT04gY2xhdXNlCiEgICAgICAgICAgdGFrZXMgYSA8cmVwbGFj ZWFibGU+c2VhcmNoIGNvbmRpdGlvbjwvcmVwbGFjZWFibGU+LCB3aGljaCBp cyB0aGUgc2FtZQohICAgICAgICAgIGFzIGluIGEgV0hFUkUgY2xhdXNlLiAg VGhlIFVTSU5HIGNsYXVzZSB0YWtlcyBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0 IG9mCiEgICAgICAgICAgY29sdW1uIG5hbWVzLCB3aGljaCB0aGUgam9pbmVk IHRhYmxlcyBtdXN0IGhhdmUgaW4gY29tbW9uLCBhbmQgam9pbnMKISAgICAg ICAgICB0aGUgdGFibGVzIG9uIHRoZSBlcXVhbGl0eSBvZiB0aG9zZSBjb2x1 bW5zIGFzIGEgc2V0LCByZXN1bHRpbmcgaW4gYQohICAgICAgICAgIGpvaW5l ZCB0YWJsZSBoYXZpbmcgb25lIGNvbHVtbiBmb3IgZWFjaCBjb21tb24gY29s dW1uIGxpc3RlZCBhbmQgYWxsCiEgICAgICAgICAgb2YgdGhlIG90aGVyIGNv bHVtbnMgZnJvbSBib3RoIHRhYmxlcy4KISAgICAgICAgIDwvcGFyYT4KISAK ISAJCTwhLS0gYmVnaW4gam9pbiBzZW1hbnRpY3MgLS0+CiEgCQk8dmFyaWFi bGVsaXN0PgohICAgICAgICAgIDx2YXJsaXN0ZW50cnk+CiEgICAgICAgICAg IDx0ZXJtPgohICAgICAgICAgICAgPGNtZHN5bm9wc2lzPgohICAgICAgICAg ICAgIDxhcmc+IElOTkVSIDwvYXJnPgohICAgICAgICAgICAgIDxjb21tYW5k PiBKT0lOIDwvY29tbWFuZD4KISAgICAgICAgICAgIDwvY21kc3lub3BzaXM+ CiEgICAgICAgICAgIDwvdGVybT4KISAgICAgICAgICAgPGxpc3RpdGVtPgoh ICAgICAgICAgICAgPHBhcmE+CiEgCQkgICAgRm9yIGVhY2ggcm93IFIxIG9m IFQxLCB0aGUgam9pbmVkIHRhYmxlIGhhcyBhIHJvdyBmb3IgZWFjaCByb3cK ISAgICAgICAgICAgICBpbiBUMiB0aGF0IHNhdGlzZmllcyB0aGUgam9pbiBz cGVjaWZpY2F0aW9uIHdpdGggUjEuIAohICAgICAgICAgICAgPC9wYXJhPgoh ICAgICAgICAgICAgPHRpcD4KISAgICAgICAgICAgICA8cGFyYT4KISAgICAg ICAgICAgICAgVGhlIHdvcmRzIElOTkVSIGFuZCBPVVRFUiBhcmUgb3B0aW9u YWwgZm9yIGFsbCBKT0lOcy4KISAgICAgICAgICAgICAgSU5ORVIgaXMgdGhl IGRlZmF1bHQuICBMRUZULCBSSUdIVCwgYW5kIEZVTEwgYXJlIGZvcgohICAg ICAgICAgICAgICBPVVRFUiBKT0lOcyBvbmx5LgohICAgICAgICAgICAgIDwv cGFyYT4KISAgICAgICAgICAgIDwvdGlwPgohICAgICAgICAgICA8L2xpc3Rp dGVtPgohICAgICAgICAgIDwvdmFybGlzdGVudHJ5PgohIAohICAgICAgICAg IDx2YXJsaXN0ZW50cnk+CiEgICAgICAgICAgIDx0ZXJtPgohICAgICAgICAg ICAgPGNtZHN5bm9wc2lzPgohICAgICAgICAgICAgIDxhcmcgY2hvaWNlPSJw bGFpbiI+IExFRlQgPC9hcmc+CiEgCQkJPGFyZz4gT1VURVIgPC9hcmc+CiEg ICAgICAgICAgICAgPGNvbW1hbmQ+IEpPSU4gPC9jb21tYW5kPgohICAgICAg ICAgICAgPC9jbWRzeW5vcHNpcz4KISAgICAgICAgICAgPC90ZXJtPgohICAg ICAgICAgICA8bGlzdGl0ZW0+CiEgICAgICAgICAgICA8cGFyYT4KISAgICAg ICAgICAgICBGaXJzdCwgYW4gSU5ORVIgSk9JTiBpcyBwZXJmb3JtZWQuCiEg ICAgICAgICAgICAgVGhlbiwgd2hlcmUgYSByb3cgaW4gVDEgZG9lcyBub3Qg c2F0aXNmeSB0aGUgam9pbiBzcGVjaWZpY2F0aW9uCiEgICAgICAgICAgICAg d2l0aCBhbnkgcm93IGluIFQyLCBhIGpvaW5lZCByb3cgaXMgcmV0dXJuZWQg d2l0aCBudWxsIGZpZWxkcyBpbgohICAgICAgICAgICAgIGNvbHVtbnMgZnJv bSBUMi4KISAgICAgICAgICAgIDwvcGFyYT4KISAgICAgICAgICAgIDx0aXA+ CiEgICAgICAgICAgICAgPHBhcmE+CiEgICAgICAgICAgICAgIFRoZSBqb2lu ZWQgdGFibGUgdW5jb25kaXRpb25hbGx5IGhhcyBhIHJvdyBmb3IgZWFjaCBy b3cgaW4gVDEuCiEgICAgICAgICAgICAgPC9wYXJhPgohICAgICAgICAgICAg PC90aXA+CiEgICAgICAgICAgIDwvbGlzdGl0ZW0+CiEgICAgICAgICAgPC92 YXJsaXN0ZW50cnk+CiEgICAgICAgICAgCiEgCQkgPHZhcmxpc3RlbnRyeT4K ISAgICAgICAgICAgPHRlcm0+CiEgICAgICAgICAgICA8Y21kc3lub3BzaXM+ CiEgICAgICAgICAgICAgPGFyZyBjaG9pY2U9InBsYWluIj4gUklHSFQgPC9h cmc+CiEgICAgICAgICAgICAgPGFyZz4gT1VURVIgPC9hcmc+CiEgICAgICAg ICAgICAgPGNvbW1hbmQ+IEpPSU4gPC9jb21tYW5kPgohICAgICAgICAgICAg PC9jbWRzeW5vcHNpcz4KISAgICAgICAgICAgPC90ZXJtPgohICAgICAgICAg ICA8bGlzdGl0ZW0+CiEgICAgICAgICAgICA8cGFyYT4KISAgICAgICAgICAg ICBSdWxlIDE6IEZvciBlYWNoIHJvdyBSMiBvZiBUMiwgdGhlIGpvaW5lZCB0 YWJsZSBoYXMgYSByb3cgZm9yIGVhY2gKISAgICAgICAgICAgICByb3cgaW4g VDEgdGhhdCBzYXRpc2ZpZXMgdGhlIGpvaW4gc3BlY2lmaWNhdGlvbiB3aXRo IFIyICh0cmFuc3Bvc2VkCiEgICAgICAgICAgICAgW0lOTkVSXSBKT0lOKS4K ISAgICAgICAgICAgICBSdWxlIDI6IFdoZXJlIGEgcm93IGluIFQyIGRvZXMg bm90IHNhdGlzZnkgdGhlIGpvaW4gc3BlY2lmaWNhdGlvbgohICAgICAgICAg ICAgIHdpdGggYW55IHJvdyBpbiBUMSwgYSBqb2luZWQgcm93IGlzIHJldHVy bmVkIHdpdGggbnVsbCBmaWVsZHMgaW4KISAgICAgICAgICAgICBjb2x1bW5z IGZyb20gVDEuCiEgICAgICAgICAgICA8L3BhcmE+CiEgICAgICAgICAgICA8 dGlwPgohICAgICAgICAgICAgIDxwYXJhPgohIAkJCSBUaGUgam9pbmVkIHRh YmxlIHVuY29uZGl0aW9uYWxseSBoYXMgYSByb3cgZm9yIGVhY2ggcm93IGlu IFQyLgohICAgICAgICAgICAgIDwvcGFyYT4KISAgICAgICAgICAgIDwvdGlw PgohICAgICAgICAgICA8L2xpc3RpdGVtPgohICAgICAgICAgIDwvdmFybGlz dGVudHJ5PgohICAgICAgICAgIAohIAkJIDx2YXJsaXN0ZW50cnk+CiEgICAg ICAgICAgIDx0ZXJtPgohICAgICAgICAgICAgPGNtZHN5bm9wc2lzPgohICAg ICAgICAgICAgIDxhcmcgY2hvaWNlPSJwbGFpbiI+IEZVTEwgPC9hcmc+CiEg ICAgICAgICAgICAgPGFyZz4gT1VURVIgPC9hcmc+CiEgICAgICAgICAgICAg PGNvbW1hbmQ+IEpPSU4gPC9jb21tYW5kPgohICAgICAgICAgICAgPC9jbWRz eW5vcHNpcz4KISAgICAgICAgICAgPC90ZXJtPgohICAgICAgICAgICA8bGlz dGl0ZW0+CiEgICAgICAgICAgICA8cGFyYT4KISAgICAgICAgICAgICBGaXJz dCwgYSBMRUZUIFtPVVRFUl0gSk9JTiBpcyBwZXJmb3JtZWQuCiEgICAgICAg ICAgICAgVGhlbiwgUnVsZSAyIG9mIGEgUklHSFQgW09VVEVSXSBKT0lOIGlz IHBlcmZvcm1lZC4KISAgICAgICAgICAgIDwvcGFyYT4KISAgICAgICAgICAg IDx0aXA+CiEgICAgICAgICAgICAgPHBhcmE+CiEgICAgICAgICAgICAgIFRo ZSBqb2luZWQgdGFibGUgdW5jb25kaXRpb25hbGx5IGhhcyBhIHJvdyBmb3Ig ZXZlcnkgcm93IG9mIFQxCiEgICAgICAgICAgICAgIGFuZCBhIHJvdyBmb3Ig ZXZlcnkgcm93IG9mIFQyLgohICAgICAgICAgICAgIDwvcGFyYT4KISAgICAg ICAgICAgIDwvdGlwPgohICAgICAgICAgICA8L2xpc3RpdGVtPgohICAgICAg ICAgIDwvdmFybGlzdGVudHJ5PgohICAgICAgICAgPC92YXJpYWJsZWxpc3Q+ CiEgICAgICAgICA8IS0tIGVuZCBqb2luIHNlbWFudGljcyAtLT4KISAgICAg ICAgPC9saXN0aXRlbT4KISAgICAgICA8L3Zhcmxpc3RlbnRyeT4KISAgICAg ICAKISAJICA8dmFybGlzdGVudHJ5PgohICAgICAgICA8dGVybT5OQVRVUkFM IEpPSU5zPC90ZXJtPgohICAgICAgICA8bGlzdGl0ZW0+CiEgICAgICAgICA8 Y21kc3lub3BzaXM+CiEgICAgICAgICAgPGFyZyBjaG9pY2U9InJlcSI+IDxy ZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5UMTwvcmVwbGFjZWFibGU+ IDwvYXJnPgohICAgICAgICAgIDxhcmcgY2hvaWNlPSJwbGFpbiI+IE5BVFVS QUwgPC9hcmc+CiEgICAgICAgICAgPGdyb3VwIGNob2ljZT0ib3B0Ij4KISAg ICAgICAgICA8YXJnIGNob2ljZT0ib3B0Ij4gSU5ORVIgPC9hcmc+CiEgICAg ICAgICAgPGFyZz4KISAJCSAgPGdyb3VwIGNob2ljZT0icmVxIj4KISAgICAg ICAgICAgIDxhcmcgY2hvaWNlPSJwbGFpbiI+IExFRlQgPC9hcmc+CiEgICAg ICAgICAgICA8YXJnIGNob2ljZT0icGxhaW4iPiBSSUdIVCA8L2FyZz4KISAg ICAgICAgICAgIDxhcmcgY2hvaWNlPSJwbGFpbiI+IEZVTEwgPC9hcmc+CiEg ICAgICAgICAgIDwvZ3JvdXA+CiEgICAgICAgICAgIDxhcmcgY2hvaWNlPSJv cHQiPiBPVVRFUiA8L2FyZz4KISAgICAgICAgICA8L2FyZz4KISAgICAgICAg IDwvZ3JvdXA+CiEgICAgICAgICA8Y29tbWFuZD4gSk9JTiA8L2NvbW1hbmQ+ CiEgICAgICAgICA8YXJnIGNob2ljZT0icmVxIj4gPHJlcGxhY2VhYmxlIGNs YXNzPSJwYXJhbWV0ZXIiPlQyPC9yZXBsYWNlYWJsZT4gPC9hcmc+CiEgICAg ICAgIDwvY21kc3lub3BzaXM+CiEgICAgICAgIDxwYXJhPgohICAgICAgICAg QSBuYXR1cmFsIGpvaW4gY3JlYXRlcyBhIGpvaW5lZCB0YWJsZSB3aGVyZSBl dmVyeSBwYWlyIG9mIG1hdGNoaW5nCiEgICAgICAgICBjb2x1bW4gbmFtZXMg YmV0d2VlbiB0aGUgdHdvIHRhYmxlcyBhcmUgbWVyZ2VkIGludG8gb25lIGNv bHVtbi4gVGhlCiEgICAgICAgICBqb2luIHNwZWNpZmljYXRpb24gaXMgZWZm ZWN0aXZlbHkgYSBVU0lORyBjbGF1c2UgY29udGFpbmluZyBhbGwgdGhlCiEg ICAgICAgICBjb21tb24gY29sdW1uIG5hbWVzIGFuZCBpcyBvdGhlcndpc2Ug bGlrZSBhIFF1YWxpZmllZCBKT0lOLgohICAgICAgICA8L3BhcmE+CiEgICAg ICAgPC9saXN0aXRlbT4KISAgICAgIDwvdmFybGlzdGVudHJ5PgohICAgICA8 L3ZhcmlhYmxlbGlzdD4KISAKISAJIDxwcm9ncmFtbGlzdGluZz4KISBGUk9N IFQxIElOTkVSIEpPSU4gVDIgVVNJTkcgKEMpCiEgRlJPTSBUMSBMRUZUIE9V VEVSIEpPSU4gVDIgVVNJTkcgKEMpCiEgRlJPTSAoVDEgUklHSFQgT1VURVIg Sk9JTiBUMiBPTiAoVDFDMT1UMkMxKSkgQVMgRFQxCiEgRlJPTSAoVDEgRlVM TCBPVVRFUiBKT0lOIFQyIFVTSU5HIChDKSkgQVMgRFQxIChEVDFDMSwgRFQx QzIpCiEgCiEgRlJPTSBUMSBOQVRVUkFMIElOTkVSIEpPSU4gVDIKISBGUk9N IFQxIE5BVFVSQUwgTEVGVCBPVVRFUiBKT0lOIFQyCiEgRlJPTSBUMSBOQVRV UkFMIFJJR0hUIE9VVEVSIEpPSU4gVDIKISBGUk9NIFQxIE5BVFVSQUwgRlVM TCBPVVRFUiBKT0lOIFQyCiEgCiEgRlJPTSAoU0VMRUNUICogRlJPTSBUMSlE VDEgQ1JPU1MgSk9JTiBUMiwgVDMKISBGUk9NIChTRUxFQ1QgKiBGUk9NIFQx KURUMSwgVDIsIFQzCiEgCSA8L3Byb2dyYW1saXN0aW5nPgohIAohIAkgPHBh cmE+CiEgCSAgQWJvdmUgYXJlIHNvbWUgZXhhbXBsZXMgb2Ygam9pbmVkIHRh YmxlcyBhbmQgY29tcGxleAohIAkgIGRlcml2ZWQgdGFibGVzLiAgTm90aWNl IGhvdyB0aGUgQVMgY2xhdXNlIHJlbmFtZXMgb3IKISAJICBuYW1lcyBhIGRl cml2ZWQgdGFibGUgYW5kIGhvdyB0aGUgb3B0aW9uYWwKISAJICBjb21tYS1z ZXBhcmF0ZWQgbGlzdCBvZiBjb2x1bW4gbmFtZXMgdGhhdCBmb2xsb3dzCiEg CSAgZ2l2ZXMgbmFtZXMgb3IgcmVuYW1lcyB0aGUgY29sdW1ucy4gIFRoZSBs YXN0IHR3bwohIAkgIEZST00gY2xhdXNlcyBwcm9kdWNlIHRoZSBzYW1lIGRl cml2ZWQgdGFibGUgZnJvbQohIAkgIFQxLCBUMiwgYW5kIFQzLiAgVGhlIEFT IGtleXdvcmQgd2FzIG9taXR0ZWQgaW4gbmFtaW5nCiEgCSAgdGhlIHN1YnF1 ZXJ5IGFzIERUMS4gIFRoZSBrZXl3b3JkcyBPVVRFUiBhbmQgSU5ORVIKISAJ ICBhcmUgbm9pc2UgdGhhdCBjYW4gYmUgb21pdHRlZCBhbHNvLgohIAkgPC9w YXJhPgohICAgICA8L3NlY3QzPgohIAohIAk8c2VjdDM+CiEgCSA8dGl0bGU+ V0hFUkUgY2xhdXNlPC90aXRsZT4KISAKISAJIDxwYXJhPgohIAkgIFRoZSBX SEVSRSBjbGF1c2Ugc3BlY2lmaWVzIGEgc2VhcmNoIGNvbmRpdGlvbgohICAg ICAgIHRoYXQgZGV0ZXJtaW5lcyB3aGljaCByb3dzIGFyZSBrZXB0IGluIHRo ZSBkZXJpdmVkCiEgICAgICAgaW5wdXQgdGFibGUuICBUaGUgc2VhcmNoIGNv bmRpdGlvbiBpcyBhIGJvb2xlYW4KISAgICAgICBleHByZXNzaW9uIHRoYXQg bWF5IGNvbnNpc3Qgb2Ygc2ltcGxlIGNvbXBhcmlzb24KISAgICAgICBvcGVy YXRvcnMgYmV0d2VlbiBjb2x1bW5zIG9yIHZhbHVlIGV4cHJlc3Npb25zIAoh ICAgICAgIGFuZCB2YXJpb3VzIG90aGVyIGJvb2xlYW4gcHJlZGljYXRlcywg aW5jbHVkaW5nCiEgICAgICAgQkVUV0VFTiwgTElLRSwgRVhJU1RTLCBJTiBh bmQgb3RoZXJzLgohIAkgPC9wYXJhPgogIAohICAgICAgPHByb2dyYW1saXN0 aW5nPgohIEZST00gRkRUIFdIRVJFCiEgICAgIEMxID4gNQogIAohIEZST00g RkRUIFdIRVJFCiEgICAgIEMxIElOICgxLCAyLCAzKQohIEZST00gRkRUIFdI RVJFCiEgICAgIEMxIElOIChTRUxFQ1QgQzEgRlJPTSBUMikKISBGUk9NIEZE VCBXSEVSRQohICAgICBDMSBJTiAoU0VMRUNUIEMzIEZST00gVDIgV0hFUkUg QzIgPSBGRFQuQzEgKyAxMCkKISAKISBGUk9NIEZEVCBXSEVSRQohICAgICBD MSBCRVRXRUVOCiEgCSAgICAoU0VMRUNUIEMzIEZST00gVDIgV0hFUkUgQzIg PSBGRFQuQzEgKyAxMCkKISAJQU5EIDEwMAogIAohIEZST00gRkRUIFdIRVJF CiEgICAgIEVYSVNUUyAoU0VMRUNUIEMxIEZST00gVDIgV0hFUkUgQzIgPiBG RFQuQzEpCiEgICAgICA8L3Byb2dyYW1saXN0aW5nPgogIAohIAkgPHBhcmE+ CiEgCSAgSW4gdGhlIGV4YW1wbGVzIGFib3ZlLCBGRFQgaXMgdGhlIHRhYmxl IGRlcml2ZWQgaW4gdGhlCiEgCSAgRlJPTSBjbGF1c2UuIFJvd3MgdGhhdCBk byBub3QgbWVldCB0aGUgc2VhcmNoIGNvbmRpdGlvbgohIAkgIG9mIHRoZSB3 aGVyZSBjbGF1c2UgYXJlIGVsaW1pbmF0ZWQgZnJvbSBGRFQuIE5vdGljZSB0 aGUgdXNlCiEgCSAgb2Ygc2NhbGFyIHN1YnF1ZXJpZXMgYXMgdmFsdWUgZXhw cmVzc2lvbnMgKEMyIGFzc3VtZWQgVU5JUVVFKS4KISAJICBKdXN0IGxpa2Ug YW55IG90aGVyIHF1ZXJ5LCB0aGUgc3VicXVlcmllcyBjYW4gZW1wbG95IGNv bXBsZXgKISAJICB0YWJsZSBleHByZXNzaW9ucy4gIE5vdGljZSBob3cgRkRU IGlzIHJlZmVyZW5jZWQgaW4gdGhlCiEgCSAgc3VicXVlcmllcy4gIFF1YWxp ZnlpbmcgQzEgYXMgRkRULkMxIGlzIG9ubHkKISAJICBuZWNlc3NhcnkgaWYg QzEgaXMgdGhlIG5hbWUgb2YgYSBjb2x1bW4gaW4gdGhlCiEgCSAgZGVyaXZl ZCBpbnB1dCB0YWJsZSBvZiB0aGUgc3VicXVlcnkuICBRdWFsaWZ5aW5nIHRo ZQohIAkgIGNvbHVtbiBuYW1lIGFkZHMgY2xhcml0eSBldmVuIHdoZW4gaXQg aXMgbm90IG5lZWRlZC4KISAJICBUaGUgY29sdW1uIG5hbWluZyBzY29wZSBv ZiBhbiBvdXRlciBxdWVyeSBleHRlbmRzIGludG8gaXRzCiEgCSAgaW5uZXIg cXVlcmllcy4KISAJIDwvcGFyYT4KISAKISAJIDxwYXJhPgohIAkgIEFmdGVy IHBhc3NpbmcgdGhlIFdIRVJFIGZpbHRlciwgdGhlIGRlcml2ZWQKISAJICBp bnB1dCB0YWJsZSBtYXkgYmUgc3ViamVjdCB0byBncm91cGluZywgdXNpbmcK ISAJICB0aGUgR1JPVVAgQlkgY2xhdXNlLCBhbmQgZWxpbWluYXRpb24gb2Yg Z3JvdXAKISAJICByb3dzIHVzaW5nIHRoZSBIQVZJTkcgY2xhdXNlLiBUaGUg SEFWSU5HIGNsYXVzZQohIAkgIGNhbiBvbmx5IGJlIHVzZWQgYWZ0ZXIgdGhl IEdST1VQIEJZIGNsYXVzZS4KISAgICAgIDwvcGFyYT4KISAgICAgPC9zZWN0 Mz4KISAKISAJPHNlY3QzPgohIAkgPHRpdGxlPkdST1VQIEJZIGFuZCBIQVZJ TkcgY2xhdXNlczwvdGl0bGU+CSAgIAohIAohIAkgPHBhcmE+CiEgCSAgSW4g c3RhbmRhcmQgU1FMLCB0aGUgR1JPVVAgQlkgY2xhdXNlIHRha2VzIGEgbGlz dCBvZgohICAgICAgIGNvbHVtbiBuYW1lcywgdGhhdCBzcGVjaWZ5IGEgc3Vi cm93LCBmcm9tIHRoZSBkZXJpdmVkCiEgCSAgaW5wdXQgdGFibGUgcHJvZHVj ZWQgYnkgdGhlIHByZXZpb3VzIFdIRVJFIG9yIEZST00gY2xhdXNlCiEgCSAg YW5kIHBhcnRpdGlvbnMgdGhlIHRhYmxlIGludG8gZ3JvdXBzIHdpdGggZHVw bGljYXRlIHN1YnJvd3MKISAJICBzdWNoIHRoYXQgd2l0aGluIGEgY29sdW1u IG9mIHRoZSBzdWJyb3csIG5vIGNvbHVtbiB2YWx1ZSBpcwohIAkgIGRpc3Rp bmN0IGZyb20gb3RoZXIgY29sdW1uIHZhbHVlcy4gVGhlIHJlc3VsdGluZyBk ZXJpdmVkCiEgCSAgaW5wdXQgdGFibGUgaXMgYSBzcGVjaWFsIHR5cGUgb2Yg dGFibGUsIGNhbGxlZCBhIGdyb3VwZWQKISAJICB0YWJsZSwgd2hpY2ggc3Rp bGwgY29udGFpbnMgYWxsIGNvbHVtbnMgYnV0IG9ubHkgcmVmZXJlbmNlcwoh IAkgIHRvIGNvbHVtbnMgb2YgdGhlIGdyb3VwZWQgc3Vicm93LCBhbmQgZ3Jv dXAgYWdncmVnYXRlcywKISAJICBkZXJpdmVkIGZyb20gYW55IG9mIHRoZSBj b2x1bW5zLCBtYXkgYXBwZWFyIGluIGRlcml2ZWQKISAJICBjb2x1bW4gdmFs dWUgZXhwcmVzc2lvbnMgaW4gdGhlIHF1ZXJ5IHNlbGVjdCBsaXN0LgohIAkg IFdoZW4gZGVyaXZpbmcgYW4gb3V0cHV0IHRhYmxlIGZyb20gYSBxdWVyeSB1 c2luZyBhIGdyb3VwZWQKISAJICBpbnB1dCB0YWJsZSwgZWFjaCBvdXRwdXQg cm93IGlzIGRlcml2ZWQgZnJvbSBhIGNvcnJlc3BvbmRpbmcKISAJICBncm91 cC9wYXJ0aXRpb24gb2YgdGhlIGdyb3VwZWQgdGFibGUuIEFnZ3JlZ2F0ZXMg Y29tcHV0ZWQKISAJICBpbiBhIGRlcml2ZWQgb3V0cHV0IGNvbHVtbiBhcmUg YWdncmVnYXRlcyBvbiB0aGUgY3VycmVudAohIAkgIHBhcnRpdGlvbi9ncm91 cCBvZiB0aGUgZ3JvdXBlZCBpbnB1dCB0YWJsZSBiZWluZyBwcm9jZXNzZWQu CiEgCSAgT25seSBvbmUgb3V0cHV0IHRhYmxlIHJvdyByZXN1bHRzIHBlciBn cm91cC9wYXJ0aXRpb24gb2YKISAJICB0aGUgZ3JvdXBlZCBpbnB1dCB0YWJs ZS4KISAgICAgIDwvcGFyYT4KISAKISAJIDxwYXJhPgohIAkgIFBvc3RncmVz IGhhcyBleHRlbmRlZCB0aGUgR1JPVVAgQlkgY2xhdXNlIHRvIGFsbG93IHNv bWUKISAJICBub24tc3RhbmRhcmQsIGJ1dCB1c2VmdWwgYmVoYXZpb3IuIERl cml2ZWQgb3V0cHV0IGNvbHVtbnMsCiEgCSAgZ2l2ZW4gbmFtZXMgdXNpbmcg YW4gQVMgY2xhdXNlIGluIHRoZSBxdWVyeSBzZWxlY3QgbGlzdCwKISAJICBt YXkgYXBwZWFyIGluIHRoZSBHUk9VUCBCWSBjbGF1c2UgaW4gY29tYmluYXRp b24gd2l0aCwgb3IKISAJICBpbnN0ZWFkIG9mLCB0aGUgaW5wdXQgdGFibGUg Y29sdW1uIG5hbWVzLiBUYWJsZXMgbWF5IGFsc28KISAJICBiZSBncm91cGVk IGJ5IGFyYml0cmFyeSBleHByZXNzaW9ucy4gSWYgb3V0cHV0IHRhYmxlIGNv bHVtbgohIAkgIG5hbWVzIGFwcGVhciBpbiB0aGUgR1JPVVAgQlkgbGlzdCwg dGhlbiB0aGUKISAJICBpbnB1dCB0YWJsZSBpcyBhdWdtZW50ZWQgd2l0aCBh ZGRpdGlvbmFsIGNvbHVtbnMgb2YgdGhlCiEgCSAgb3V0cHV0IHRhYmxlIGNv bHVtbnMgbGlzdGVkIGluIHRoZSBHUk9VUCBCWSBjbGF1c2UuIFRoZQohIAkg IHZhbHVlIGZvciBlYWNoIHJvdyBpbiB0aGUgYWRkaXRpb25hbCBjb2x1bW5z IGlzIGNvbXB1dGVkCiEgCSAgZnJvbSB0aGUgdmFsdWUgZXhwcmVzc2lvbiB0 aGF0IGRlZmluZXMgdGhlIG91dHB1dCBjb2x1bW4KISAJICBpbiB0aGUgcXVl cnkgc2VsZWN0IGxpc3QuIFRoZSBhdWdtZW50ZWQgaW5wdXQgdGFibGUgaXMg Z3JvdXBlZAohIAkgIGJ5IHRoZSBjb2x1bW4gbmFtZXMgbGlzdGVkIGluIHRo ZSBHUk9VUCBCWSBjbGF1c2UuIFRoZQohIAkgIHJlc3VsdGluZyBncm91cGVk IGF1Z21lbnRlZCBpbnB1dCB0YWJsZSBpcyB0aGVuIHRyZWF0ZWQKISAJICBh Y2NvcmRpbmcgc3RhbmRhcmQgU1FMIEdST1VQIEJZIHNlbWFudGljcy4gT25s eSB0aGUgY29sdW1ucyBvZiB0aGUKISAJICB1bmF1Z21lbnRlZCBpbnB1dCB0 YWJsZSBpbiB0aGUgZ3JvdXBlZCBzdWJyb3cgKGlmIGFueSksIGFuZCBncm91 cAohIAkgIGFnZ3JlZ2F0ZXMsIGRlcml2ZWQgZnJvbSBhbnkgb2YgdGhlIGNv bHVtbnMgb2YgdGhlIHVuYXVnbWVudGVkCiEgCSAgaW5wdXQgdGFibGUsIG1h eSBiZSByZWZlcmVuY2VkIGluIHRoZSB2YWx1ZSBleHByZXNzaW9ucyBvZiB0 aGUKISAJICBkZXJpdmVkIG91dHB1dCBjb2x1bW5zIG9mIHRoZSBxdWVyeS4g T3V0cHV0IGNvbHVtbnMgZGVyaXZlZCB3aXRoIGFuCiEgCSAgYWdncmVnYXRl IGV4cHJlc3Npb24gY2Fubm90IGJlIG5hbWVkIGluIHRoZSBHUk9VUCBCWSBj bGF1c2UuCiEgICAgICA8L3BhcmE+CiEgCiEgCSA8cGFyYT4KISAJICBBIEhB VklORyBjbGF1c2UgbWF5IG9wdGlvbmFsbHkgZm9sbG93IGEgR1JPVVAgQlkg Y2xhdXNlLgohIAkgIFRoZSBIQVZJTkcgY2xhdXNlIHNlbGVjdHMgb3IgZWxp bWluYXRlcywgZGVwZW5kaW5nIG9uIHdoaWNoCiEgCSAgcGVyc3BlY3RpdmUg aXMgdGFrZW4sIGdyb3VwcyBmcm9tIHRoZSBncm91cGVkIGlucHV0IHRhYmxl CiEgCSAgZGVyaXZlZCBmcm9tIHRoZSByZXF1aXJlZCBHUk9VUCBCWSBjbGF1 c2UgdGhhdCBwcmVjZWRlcyBpdC4KISAJICBUaGUgc2VhcmNoIGNvbmRpdGlv biBpcyB0aGUgc2FtZSB0eXBlIG9mIGV4cHJlc3Npb24gYWxsb3dlZAohIAkg IGluIGEgV0hFUkUgY2xhdXNlIGFuZCBtYXkgcmVmZXJlbmNlIGFueSBvZiB0 aGUgaW5wdXQgdGFibGUKISAJICBjb2x1bW4gbmFtZXMgaW4gdGhlIGdyb3Vw ZWQgc3Vicm93LCBidXQgbWF5IG5vdCByZWZlcmVuY2UgYW55CiEgCSAgb3Ro ZXJzIG9yIGFueSBuYW1lZCBvdXRwdXQgY29sdW1ucy4gIFdoZW4gdGhlIHNl YXJjaCBjb25kaXRpb24KISAJICByZXN1bHRzIGluIFRSVUUgdGhlIGdyb3Vw IGlzIHJldGFpbmVkLCBvdGhlcndpc2UgdGhlIGdyb3VwIGlzCiEgCSAgZWxp bWluYXRlZCBhbmQgd2lsbCBub3QgYmUgdXNlZCB0byBkZXJpdmUgYW4gb3V0 cHV0IHRhYmxlIHJvdy4KISAJIDwvcGFyYT4KISAgICAgPC9zZWN0Mz4KISAK ISAJPHNlY3QzPgohIAkgPHRpdGxlPk9SREVSIEJZIGFuZCBMSU1JVCBjbGF1 c2VzPC90aXRsZT4KISAKISAJIDxwYXJhPgohIAkgIE9SREVSIEJZIGFuZCBM SU1JVCBjbGF1c2VzIGFyZSBub3QgcGFydCBvZiBhbiBTUUwgdGFibGUKISAJ ICBleHByZXNzaW9uLiAgVGhleSwgbGlrZSBhIHRhYmxlIGV4cHJlc3Npb24s IGFwcGVhciBhcyBwYXJ0CiEgCSAgb2YgYSBxdWVyeSBleHByZXNzaW9uLgoh ICAgICAgPC9wYXJhPgohIAohIAkgPHBhcmE+CSAgCiEgCSAgSW4gc3RhbmRh cmQgU1FMLCB0aGUgT1JERVIgQlkgY2xhdXNlIGlzIGRlZmluZWQgb25seSBp biBjdXJzb3IKISAJICBkZWNsYXJhdGlvbnMgdG8gc29ydCB0aGUgb3V0cHV0 IHJvd3MgYWNjZXNzZWQgd2l0aCBmZXRjaCBhbmQKISAJICBtYXkgb25seSBy ZWZlcmVuY2Ugb3V0cHV0IHRhYmxlIGNvbHVtbnMgYnkgbmFtZSBvciBudW1i ZXIuCiEgCSAgUG9zdGdyZXMgZXh0ZW5kcyBPUkRFUiBCWSBhbmQgYWxsb3dz IGl0cyB1c2UgaW4gYWxsIHF1ZXJpZXMgYW5kCiEgCSAgbWF5IHJlZmVyZW5j ZSBib3RoIG91dHB1dCB0YWJsZSBjb2x1bW5zIGFuZCBpbnB1dCB0YWJsZSBj b2x1bW5zLgohIAkgIFBvc3RncmVzIGFsc28gZXh0ZW5kcyBPUkRFUiBCWSB0 byBvcmRlciBieSBhcmJpdHJhcnkgZXhwcmVzc2lvbnMuCiEgCSAgSWYgdXNl ZCBpbiBhIHF1ZXJ5IHdpdGggYSBHUk9VUCBCWSBjbGF1c2UsIHRoZSBPUkRF UiBCWSBjbGF1c2UKISAJICBjYW4gb25seSByZWZlcmVuY2Ugb3V0cHV0IHRh YmxlIGNvbHVtbiBuYW1lcyBhbmQgZ3JvdXBlZCBpbnB1dAohIAkgIGNvbHVt bnMuCiEgICAgICA8L3BhcmE+CiEgCiEgCSA8cGFyYT4KISAgICAgICBMSU1J VCBpcyBub3QgYSBzdGFuZGFyZCBTUUwgY2xhdXNlLiAgTElNSVQgaXMgYSBQ b3N0Z3JlcyBleHRlbnNpb24KISAJICB0aGF0IGxpbWl0cyB0aGUgbnVtYmVy IG9mIHJvd3MgdGhhdCB3aWxsIGJlIHJldHVybmVkIGZyb20gYSBxdWVyeS4K ISAJICBUaGUgcm93cyByZXR1cm5lZCBieSBhIHF1ZXJ5IHVzaW5nIHRoZSBM SU1JVCBjbGF1c2UgYXJlIHJhbmRvbSBpZiBub3QKISAJICBmb2xsb3dpbmcg YW4gT1JERVIgQlkgY2xhdXNlLiAgQSBMSU1JVCBjbGF1c2UgbWF5IG9wdGlv bmFsbHkgYmUKISAJICBmb2xsb3dlZCBieSBhbiBPRkZTRVQgY2xhdXNlIHdo aWNoIHNwZWNpZmllcyBhIG51bWJlciBvZiByb3dzIHRvIGJlCiEgCSAgc2tp cHBlZCBpbiB0aGUgb3V0cHV0IHRhYmxlIGJlZm9yZSByZXR1cm5pbmcgdGhl IG51bWJlciBvZiByb3dzCiEgCSAgc3BlY2lmaWVkIGluIHRoZSBMSU1JVCBj bGF1c2UuCiEgICAgICA8L3BhcmE+CiEgICAgIDwvc2VjdDM+CiEgICAgPC9z ZWN0Mj4KICAKICAKICAKICAKICAgIDxzZWN0MiBpZD0ic3FsLXByZWNlZGVu Y2UiPgo= --------------Boundary-00=_PVY4WECM1P4VX2IIIRUX--