This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. --168427786-691315853-945920620=:4839 Content-Type: TEXT/PLAIN; charset=US-ASCII Hi, folks. I hope you don't mind another mail out of the blue, but I got notice on Saturday that the Department of Energy is giving me $860K over two years to support development of easier-to-use software engineering tools. All of the work will be Open Source, and will be done in Python, with a strong emphasis on design, testing, and documentation. The project's long-term objective is to encourage scientists and engineers to treat programs in the same way as they do other experiments, i.e. to calibrate, test, peer review, and so on. To kick-start things, we're going to be holding a two-round design competition. Anyone (individual or team, professional or student) can submit a short entry for the first round; the judges will pick four candidates to go forward in each of four categories, and those individuals or teams will be asked to submit full entries. The four categories are: * an issue tracking system to replace Gnats and Bugzilla; * a build system to replace make; * a platform inspection and configuration system to replace autoconf; and * a testing framework to replace XUnit, Expect, and DejaGnu. Would you be interested in participating in any way---judging, entering a design, critiquing things from the pointer of view of end users, or anything else? I realize that you're probably up past your eyeballs with work, and that the money on offer is nothing special, but I think this could be a lot of fun, and could help to shift the emphasis of the Open Source community from hacking to design (both by drawing attention to, and rewarding, design, and by creating a corpus of examples and commentary for programmers to refer to). It could also make life a lot easier for computational scientists and engineers... Please let me know if you'd like to be involved, or if you'd like more information than is contained in the FAQ (attached). Timescales are a bit tight---I'd like to be able to make an announcement on January 14---but I'll be reading email at this address several times a day during the holiday. I look forward to hearing from you, Greg Wilson p.s. please note that the attached FAQ is a first draft; I'd be grateful if you could show it to anyone you think might be interested, but I'd also be grateful if you wouldn't broadcast it until it's gone through one more editing pass. --168427786-691315853-945920620=:4839 Content-Type: TEXT/PLAIN; charset=X-UNKNOWN; name="faq.html" Content-Transfer-Encoding: BASE64 Content-ID: <Pine.LNX.4.10.9912222243400.4839@akbar.nevex.com> Content-Description: Content-Disposition: attachment; filename="faq.html" PEhUTUw+DQo8SEVBRD4NCjxUSVRMRT5Tb2Z0d2FyZSBDYXJwZW50cnkgRkFR PC9USVRMRT4NCjwvSEVBRD4NCjxCT0RZPg0KDQo8SDEgQUxJR049IkNFTlRF UiI+U29mdHdhcmUgQ2FycGVudHJ5IEZBUTwvSDE+DQoNCg0KPEgyPkdlbmVy YWwgaW5mb3JtYXRpb248L0gyPg0KDQo8T0w+DQoNCjxMST48RU0+V2hhdCBp cyB0aGUgU29mdHdhcmUgQ2FycGVudHJ5IHByb2plY3Q/IDwvRU0+DQo8QlI+ DQpUaGUgYWltIG9mIHRoZSBTb2Z0d2FyZSBDYXJwZW50cnkgcHJvamVjdCBp cyB0byBtYWtlIGl0IGVhc2llciBmb3INCnByb2dyYW1tZXJzIGluIGdlbmVy YWwsIGFuZCBzY2llbnRpZmljIHByb2dyYW1tZXJzIGluIHBhcnRpY3VsYXIs IHRvDQphZG9wdCBiZXR0ZXIgc29mdHdhcmUgZGV2ZWxvcG1lbnQgcHJhY3Rp Y2VzLiBUaGUgcHJvamVjdCB3aWxsIGFjaGlldmUNCnRoaXMgYnkgY3JlYXRp bmcgdG9vbHMgdGhhdCBhcmUgZWFzaWVyIHRvIGxlYXJuIGFuZCB1c2UsIGFu ZCBieQ0KZG9jdW1lbnRpbmcgdGhvc2UgdG9vbHMgYW5kIHRoZSBwcmFjdGlj ZXMgdGhleSBlbWJvZHkuDQo8L0xJPg0KDQo8TEk+PEVNPldoZXJlIGRvZXMg dGhlIG5hbWUgY29tZSBmcm9tPzwvRU0+DQo8QlI+DQpUaGUgbmFtZSBpcyBh IHBsYXkgb24gInNvZnR3YXJlIGVuZ2luZWVyaW5nIiwgYW5kIGlzIG1lYW50 IHRvIGluZGljYXRlDQp0aGF0IHRoaXMgcHJvamVjdCBpcyBpbml0aWFsbHkg Y29uY2VybmVkIHdpdGggbWVkaXVtLXNpemVkIHRlYW1zICh1cA0KdG8gYSBk b3plbiBvciB0d28gcHJvZ3JhbW1lcnMpIGFuZCBtZWRpdW0tdGVybSB0aW1l c2NhbGVzIChhIHllYXIgb3INCnR3bykuDQo8L0xJPg0KDQo8TEk+PEVNPkhv dyBkaWQgdGhlIHByb2plY3QgZ2V0IHN0YXJ0ZWQ/PC9FTT4NCjxCUj4NClRo ZSBwcm9qZWN0IGhhcyBpdHMgb3JpZ2lucyBpbiBhIDxBDQpIUkVGPSJodHRw Oi8vd3d3LmFjbC5sYW5sLmdvdi9zYy9yZXNvdXJjZXMvY3NlL2luZGV4Lmh0 bWwiPnNlcmllcyBvZg0KYXJ0aWNsZXM8L0E+IHRoYXQgR3JlZyBXaWxzb24g b3JnYW5pemVkIGZvciB0aGUgRmFsbCAxOTk2IGFuZCBXaW50ZXINCjE5OTYg aXNzdWVzIG9mIDxDSVRFPklFRUUgQ29tcHV0YXRpb25hbCBTY2llbmNlIGFu ZA0KRW5naW5lZXJpbmc8L0NJVEU+LiBUaGVzZSBhcnRpY2xlcyBvdXRsaW5l ZCB3aGF0IHRoZWlyIGF1dGhvcnMgdGhvdWdodA0KY29tcHV0ZXIgc2NpZW50 aXN0cyBzaG91bGQgdGVhY2ggdG8gcGh5c2ljYWwgc2NpZW50aXN0cyBhbmQN CmVuZ2luZWVycy4gTW9zdCBhdXRob3JzIHJlY29tbWVuZGVkIG51bWVyaWNh bCBtZXRob2RzIG9yIHRoZSBzdGFuZGFyZA0KVW5peCB0b29sc2V0LCBidXQg U3RldmUgTWNDb25uZWxsIGFyZ3VlZCB0aGF0IGJldHRlciBwcm9ncmFtbWlu Zw0KcHJhY3RpY2VzIHdvdWxkIGhhdmUgdGhlIGdyZWF0ZXN0IGltcGFjdCBv biBwcm9kdWN0aXZpdHkuDQoNCjxCUj4gQXMgYSByZXN1bHQgb2YgdGhhdCBv YnNlcnZhdGlvbiwgR3JlZyBXaWxzb24sIEJyZW50IEdvcmRhLCBhbmQNClN0 ZXZlIE1jQ29ubmVsbCBwdXQgdG9nZXRoZXIgYSAzLWRheSBjb3Vyc2Ugb24g c29mdHdhcmUgZW5naW5lZXJpbmcNCmZvciBzY2llbnRpc3RzIGFuZCBlbmdp bmVlcnMsIHdoaWNoIHRoZXkgdGF1Z2h0IHNldmVyYWwgdGltZXMgYXQgdGhl DQpMb3MgQWxhbW9zIE5hdGlvbmFsIExhYm9yYXRvcnkuIEZlZWRiYWNrIG9u IHRoZSBjb3Vyc2Ugd2FzIHZlcnkNCnBvc2l0aXZlLCBidXQgbWFueSBwYXJ0 aWNpcGFudHMgZmVsdCB0aGF0IHRoZSB0b29scyBiZWluZw0KdGF1Z2h0LS0t UGVybCwgTWFrZSwgQ1ZTLCBhbmQgc28gb24tLS13ZXJlIHVubmVjZXNzYXJp bHkgZGlmZmljdWx0IHRvDQppbnN0YWxsLCBsZWFybiwgYW5kIHVzZS4gVGhl eSB3ZXJlIGFsc28gZnJ1c3RyYXRlZCBieSB0aGUgc2NhcmNpdHkgb2YNCmV4 YW1wbGVzIG9mIGRlc2lnbiBkb2N1bWVudHMsIHRlc3RpbmcgcGxhbnMsIGFu ZCBhbGwgb2YgdGhlIG90aGVyDQp0aGluZ3MgdGhlIGNvdXJzZSB3YXMgdHJ5 aW5nIHRvIHRlYWNoIHRoZW0uDQo8L0xJPg0KDQo8TEk+PEVNPldoeSBPcGVu IFNvdXJjZT88L0VNPg0KPEJSPg0KVGhlcmUgYXJlIHRocmVlIHJlYXNvbnMg d2h5IHRoZSBTb2Z0d2FyZSBDYXJwZW50cnkgcHJvamVjdCBpcw0KZm9sbG93 aW5nIHRoZSBPcGVuIFNvdXJjZSBtb2RlbDoNCjwvTEk+DQoNCgk8T0w+DQoN Cgk8TEk+PEVNPkxldmVyYWdpbmcgZXhpc3Rpbmcga25vd2xlZGdlLiA8L0VN Pg0KCTxCUj4NCglBIGNsb3NlZCBwcm9qZWN0IGNhbiBvbmx5IHRha2UgYWR2 YW50YWdlIG9mIGEgZmV3IG1pbmRzLiBBcw0KCUxpbnV4IGFuZCBvdGhlciBw cm9qZWN0cyBoYXZlIHNob3duLCBhIHdlbGwtcnVuIE9wZW4gU291cmNlDQoJ cHJvamVjdCBjYW4gaGFybmVzcyB0aGUgZXhwZXJpZW5jZSBhbmQgaW5zaWdo dCBvZiB0aG91c2FuZHMgb2YNCglwZW9wbGUuDQoJPC9MST4NCg0KCTxMST48 RU0+TG93ZXJpbmcgYmFycmllcnMgdG8gYWRvcHRpb24uIDwvRU0+DQoJPEJS Pg0KCUZyZWVseS1hdmFpbGFibGUgdG9vbHMgYXJlIG1vcmUgbGlrZWx5IHRv IGJlIHBpY2tlZCB1cCB0aGFuDQoJdGhlaXIgY29tbWVyY2lhbCBlcXVpdmFs ZW50cy4gVGhpcyBpcyBwYXJ0aWN1bGFybHkgdHJ1ZSB3aGVuDQoJdGhlIHRv b2wgaW4gcXVlc3Rpb24gZG9lcyBzb21ldGhpbmcgbm92ZWwgKGF0IGxlYXN0 IGZyb20gdGhlDQoJcG9pbnQgb2YgdGhlIHBlcnNvbiBhZG9wdGluZyBpdCks IGFuZCBpbiBhY2FkZW1pYSAod2hlcmUNCglidWRnZXRzIGFyZSBsaW1pdGVk KS4NCgk8L0xJPg0KDQoJPExJPjxFTT5FbmNvdXJhZ2luZyBwZWVyIHJldmll dy48L0VNPg0KCTxCUj4NCglEYW4gR2V6ZWx0ZXKScyA8YQ0KCWhyZWY9Imh0 dHA6Ly93d3cub3BlbnNjaWVuY2Uub3JnL3RhbGsvYm5sL2luZGV4Lmh0bWwi PnRhbGs8L2E+DQoJYXQgdGhlIGZpcnN0IE9wZW4gU291cmNlL09wZW4gU2Np ZW5jZSBjb25mZXJlbmNlIGRpc2N1c3NlZCBob3cNCgl0aGUgc2NpZW50aWZp YyB0cmFkaXRpb24gb2YgcGVlciByZXZpZXcgZml0cyB3aXRoIHRoZQ0KCXBo aWxvc29waHkgb2YgdGhlIE9wZW4gU291cmNlIG1vdmVtZW50LiBCeSBkZXNp Z25pbmcgYW5kDQoJYnVpbGRpbmcgdGhlc2UgdG9vbHMgaW4gdGhlIG9wZW4s IHRoZSBTb2Z0d2FyZSBDYXJwZW50cnkNCglwcm9qZWN0IHdpbGwgYm90aCBl bmNvdXJhZ2UgcGVlciByZXZpZXcgb2YgdGhlIHRvb2xzDQoJdGhlbXNlbHZl cywgYW5kIGRlbW9uc3RyYXRlIGhvdyB0aGlzIG91Z2h0IHRvIGJlIGRvbmUg Zm9yDQoJc2NpZW50aWZpYyBhbmQgY29tbWVyY2lhbCBzb2Z0d2FyZS4NCgk8 L0xJPg0KDQoJPC9PTD4NCg0KPExJPjxFTT5XaGVyZSBkb2VzIHRoZSBmdW5k aW5nIGNvbWUgZnJvbT8gPC9FTT4NCjxCUj4NClRoZSBmdW5kaW5nIGNvbWVz IGZyb20gdGhlIFUuUy4gRGVwYXJ0bWVudCBvZiBFbmVyZ3ksIHRocm91Z2gg dGhlDQpBZHZhbmNlZCBDb21wdXRpbmcgTGFib3JhdG9yeSBhdCBMb3MgQWxh bW9zIE5hdGlvbmFsIExhYm9yYXRvcnkuIFRoZQ0KcHJvamVjdCBpcyBiZWlu ZyBhZG1pbmlzdGVyZWQgYnkgQ29kZSBTb3VyY2VyeS4gVVMkNDgwLDAwMCBo YXMgYmVlbg0KcHJvdmlkZWQgZm9yIDIwMDAsIGFuZCBVUyQzODAsMDAwIGZv ciAyMDAxLg0KPC9MST4NCg0KPExJPjxFTT5XaHkgd291bGQgdGhlIERlcGFy dG1lbnQgb2YgRW5lcmd5IGZ1bmQgc29tZXRoaW5nIGxpa2UgdGhpcz88L0VN Pg0KPEJSPg0KVGhlIGZ1bmRpbmcgaGFzIGJlZW4gcHJvdmlkZWQgcGFydGx5 IGJlY2F1c2UgdGhlIERvRSB3b3VsZCBsaWtlDQpzY2llbnRpc3RzIGFuZCBl bmdpbmVlcnMgdG8gYmUgbW9yZSBwcm9kdWN0aXZlLCBhbmQgcGFydGx5IGJl Y2F1c2UgaXQNCndvdWxkIGxpa2UgdG8gZmluZCBvdXQgd2hldGhlciB0aGUg T3BlbiBTb3VyY2UgbW9kZWwgYW5kIGNvbW11bml0eSBjYW4NCm1lZXQgdGhl IHNwZWNpYWwgbmVlZHMgb2YgaGlnaC1wZXJmb3JtYW5jZSBjb21wdXRhdGlv bmFsIHNjaWVuY2UuIFRoZQ0KbGFzdCBmZXcgeWVhcnMgaGF2ZSBzZWVuIG1v c3QgbWFudWZhY3R1cmVycyBvZiBzcGVjaWFsLXB1cnBvc2UNCnN1cGVyY29t cHV0ZXJzIGRpc2FwcGVhciBvciBiZSBib3VnaHQgb3V0LCBhbmQgdGhlIHJp c2Ugb2YgY2x1c3RlcnMNCmJhc2VkIG9uIGNvbW1lcmNpYWwgb2ZmLXRoZS1z aGVsZiAoQ09UUykgaGFyZHdhcmUsIExpbnV4LCBNUEksIHRoZSBHTlUNCmNv bXBpbGVyIHRvb2xzZXQsIGFuZCBzbyBvbi4gVGhlcmUgaXMgYSBncm93aW5n IGZlZWxpbmcgdGhhdCB0aGVzZQ0KbWFjaGluZXMgY291bGQgYnJpbmcgc2Nh bGFibGUgc3VwZXJjb21wdXRpbmcgaW50byB0aGUgbWFpbnN0cmVhbSwgYnV0 DQp0aGlzIHdpbGwgb25seSBoYXBwZW4gaWYgZ29vZCB0b29scyBhbmQgcHJh Y3RpY2VzIGFyZSBhY2Nlc3NpYmxlDQplbm91Z2guDQo8L0xJPg0KDQo8TEk+ PEVNPkknbSBub3QgYSBzY2llbnRpc3Qgb3IgZW5naW5lZXItLS13aGF0J3Mg aW4gaXQgZm9yIG1lPyA8L0VNPg0KPEJSPg0KVGhlIHRoaW5ncyB0aGF0IG1h a2UgbWFueSBleGlzdGluZyBPcGVuIFNvdXJjZSBzb2Z0d2FyZSBkZXZlbG9w bWVudA0KdG9vbHMgZGlmZmljdWx0IHRvIGxlYXJuIGFuZCB1c2UtLS1vYnNj dXJlIHN5bnRheCwgYXJiaXRyYXJ5IG9yDQpoYXJkLXRvLWZvbGxvdyBiZWhh dmlvciwgYW5kIHBvb3IgZG9jdW1lbnRhdGlvbi0tLWFmZmVjdCBwcm9mZXNz aW9uYWwNCnByb2dyYW1tZXJzIGFuZCBjb21wdXRlciBzY2llbmNlIHN0dWRl bnRzIGp1c3QgYXMgbXVjaCBhcyB0aGV5IGRvDQpjb21wdXRhdGlvbmFsIHNj aWVudGlzdHMgYW5kIGVuZ2luZWVycy4gSWYgdGhlIE9wZW4gU291cmNlIG1v dmVtZW50DQpjYW4gYnVpbGQgdG9vbHMgdGhhdCBhcmUgc2ltcGxlIGVub3Vn aCB0byBiZSBsZWFybmVkIGJ5IHBlb3BsZSB3aG8NCmhhdmUgcHJvYmxlbXMg b2YgdGhlaXIgb3duIHRvIHNvbHZlLCBhbmQgeWV0IHBvd2VyZnVsIGVub3Vn aCB0bw0Kc3VwcG9ydCBkaXN0cmlidXRlZCBkZXZlbG9wbWVudCBvZiBodW5k cmVkcyBvZiB0aG91c2FuZHMgb2YgbGluZXMgb2YNCmNvbXBsZXggbnVtZXJp Y2FsIGFuZCB2aXN1YWxpemF0aW9uIGNvZGUsIHRoZW4gdGhvc2UgdG9vbHMg d2lsbA0KcHJvYmFibHkgYWxzbyBoZWxwIHBlb3BsZSB3aG8gd2FudCB0byBi dWlsZCBJbnRlcm5ldCBjaGF0IHJvb21zIGFuZA0Kb3JkZXItdHJhY2tpbmcg c3lzdGVtcy4NCjxCUj4NClRoaXMgcHJvamVjdCBzaG91bGQgYWxzbyBiZSBp bnRlcmVzdGluZyB0byB0aGUgZ2VuZXJhbCBwcm9ncmFtbWluZw0KY29tbXVu aXR5IGJlY2F1c2UgaXQgaXMgZ29pbmcgdG8gcGxhY2UgbW9yZSBlbXBoYXNp cyBvbiBkZXNpZ24gYW5kDQplYXJseSBmZWVkYmFjayB0aGFuIG1vc3QgT3Bl biBTb3VyY2UgcHJvamVjdHMgaGF2ZSB0byBkYXRlLiBJbnN0ZWFkIG9mDQpn cm93aW5nIHNvbWVvbmWScyBwZXQgcHJvamVjdCwgU29mdHdhcmUgQ2FycGVu dHJ5IGlzIGdvaW5nIHRvDQpvcmdhbml6ZS0tLWFuZCBwYXkgZm9yLS0tYSBk ZXNpZ24gY29tcGV0aXRpb24uIElmIHRoaXMgd29ya3MsIGl0IGNvdWxkDQpi ZSBhbiBpbnRlcmVzdGluZyBtb2RlbCBmb3Igb3RoZXIgT3BlbiBTb3VyY2Ug cHJvamVjdHMgdG8gYWRvcHQuDQo8L0xJPg0KDQo8TEk+PEVNPkkgdGhpbmsg W3Rvb2xdIGlzIGdvb2QgZW5vdWdoIGFscmVhZHktLS13aHkgYXJlIHlvdSBy ZS1pbnZlbnRpbmcgdGhlIHdoZWVsPyA8L0VNPg0KPEJSPg0KVGhlIHNob3J0 IGFuc3dlciB0byB0aGlzIGlzIEFsYW4gQ29vcGVyJ3M6DQoNCg0KCTxCTE9D S1FVT1RFPg0KCVRoZSBwaHJhc2UgImNvbXB1dGVyIGxpdGVyYXRlIHVzZXIi IHJlYWxseSBtZWFucyB0aGUgcGVyc29uDQoJaGFzIGJlZW4gaHVydCBzbyBt YW55IHRpbWVzIHRoYXQgdGhlIHNjYXIgdGlzc3VlIGlzIHRoaWNrDQoJZW5v dWdoIHNvIGhlIG5vIGxvbmdlciBmZWVscyB0aGUgcGFpbi4NCgk8QlI+DQoJ LS0gQWxhbiBDb29wZXIsDQoJPENJVEU+VGhlIElubWF0ZXMgYXJlIFJ1bm5p bmcgdGhlIEFzeWx1bTwvQ0lURT4NCgk8L0JMT0NLUVVPVEU+DQoNClRoZSBs b25nZXIgYW5zd2VyIGlzIHRoYXQgdGhlICJhY2NpZGVudGFsIGNvbXBsZXhp dHkiIG9mIHRoZSBzdGFuZGFyZA0KVW5peCBjb21tYW5kLWxpbmUgdG9vbHNl dCBpcyBhIG1ham9yIGJhcnJpZXIgdG8gaXRzIGFkb3B0aW9uIGJ5IHBlb3Bs ZQ0Kd2hvIGFyZSBub3QgZnVsbC10aW1lIHByb2dyYW1tZXJzLCBvciBmb3Ig d2hvbSBwcm9ncmFtbWluZyBpcyBqdXN0DQpzb21ldGhpbmcgdGhhdCBoYXMg dG8gYmUgZG9uZSBpbiBvcmRlciB0byBkbyBzb21ldGhpbmcgZWxzZS4gTWFu eQ0KcHJvZmVzc2lvbmFsIHByb2dyYW1tZXJzLS0tcGFydGljdWxhcmx5IHRo b3NlIHdobyBlbmpveSBwcm9ncmFtbWluZw0KZW5vdWdoIHRvIGJlIGludm9s dmVkIGluIHRoZSBPcGVuIFNvdXJjZSBtb3ZlbWVudC0tLWhhdmUgYmVlbiB1 c2luZw0KdGhlc2UgdG9vbHMgZm9yIHNvIGxvbmcgdGhhdCB0aGV5IHNpbXBs eSBkb24ndCByZW1lbWJlciBob3cgaGFyZCBpdCBpcw0KdG8gY29uZmlndXJl IEduYXRzLCBvciBwYXNzIHZhcmlhYmxlIGJpbmRpbmdzIGJldHdlZW4gcmVj dXJzaXZlIGNhbGxzDQp0byBNYWtlLg0KPEJSPg0KQW5kIGxldCdzIGZhY2Ug aXQ6IGlmIE1ha2Ugb3IgQXV0b2NvbmYgd2VyZSBidWlsdCBmcm9tIHNjcmF0 Y2ggdG9kYXksDQp0aGV5IHdvdWxkIGJlIHdyaXR0ZW4gYXMgZXh0ZW5zaWJs ZSwgZW1iZWRkYWJsZSBtb2R1bGVzIGluIGENCmhpZ2gtbGV2ZWwgc2NyaXB0 aW5nIGxhbmd1YWdlLiBUaGlzIHdvdWxkIG5vdCBvbmx5IG1ha2UgdGhlbSBl YXNpZXIgdG8NCnVzZSwgaXQgd291bGQgYWxzbyBtYWtlIHRoZW0gZWFzaWVy IHRvIGxlYXJuLCBzaW5jZSB0aGV5IHdvdWxkIGVtcGxveQ0Kb25lIHN5bnRh eCBmb3IgYWxsIHB1cnBvc2VzLiBNaWNyb3NvZnQgVmlzdWFsIEJhc2ljIGhh cyBzaG93biBqdXN0IGhvdw0KdXNlZnVsIGl0IGNhbiBiZSB0byBoYXZlIGEg c2luZ2xlIGdlbmVyYWwtcHVycG9zZSAiZ2x1ZSIgbGFuZ3VhZ2UNCmNhcGFi bGUgb2YgYmluZGluZyBkaXNwYXJhdGUgdG9vbHMgdG9nZXRoZXI7IHRoZSBh aW0gb2YgdGhlIGZpcnN0IGhhbGYNCm9mIHRoaXMgcHJvamVjdCBpcyB0byBi cmluZyB0aG9zZSBiZW5lZml0cyB0byB0aGUgT3BlbiBTb3VyY2UNCmNvbW11 bml0eS4NCg0KPC9PTD4NCg0KPEgyPkRldmVsb3BtZW50PC9IMj4NCg0KPE9M Pg0KDQo8TEk+PEVNPldoYXQgcHJvamVjdHMgYXJlIGN1cnJlbnRseSB1bmRl ciB3YXk/IDwvRU0+DQo8QlI+U29mdHdhcmUgQ2FycGVudHJ5IHdpbGwgc3Rh cnQgYnkgcHJvZHVjaW5nOg0KPC9MST4NCg0KCTxPTD4NCg0KCTxMST5hIHBs YXRmb3JtIGluc3BlY3Rpb24gdG9vbCBzaW1pbGFyIHRvIEF1dG9jb25mOzwv TEk+DQoNCgk8TEk+YSBidWlsZCBtYW5hZ2VtZW50IHRvb2wgc2ltaWxhciB0 byBNYWtlOzwvTEk+DQoNCgk8TEk+YW4gaXNzdWUgdHJhY2tpbmcgc3lzdGVt IHNpbWlsYXIgdG8gR25hdHMgb3IgQnVnemlsbGE7IGFuZDwvTEk+DQoNCgk8 TEk+YSB1bml0IGFuZCByZWdyZXNzaW9uIHRlc3RpbmcgaGFybmVzcyB3aXRo IHRoZQ0KCWZ1bmN0aW9uYWxpdHkgb2YgWFVuaXQsIEV4cGVjdCwgYW5kIERl amFHbnUuPC9MST4NCg0KCTwvT0w+DQoNCjxMST48RU0+V2h5IHdlcmUgdGhv c2UgdG9vbHMgY2hvc2VuPyA8L0VNPg0KPEJSPg0KVGhlc2UgZm91ciB0b29s cyB3ZXJlIGNob3NlbiBhcyBpbml0aWFsIHRhcmdldHMgZm9yIHNldmVyYWwN CnJlYXNvbnMuIEZpcnN0LCB0aGUgd29ya2luZyBwcmFjdGljZXMgdGhleSBz dXBwb3J0IGFyZSBlc3NlbnRpYWwgdG8NCm1lZGl1bS1zY2FsZSBzb2Z0d2Fy ZSBlbmdpbmVlcmluZy4gU2Vjb25kLCB0aGUgdG9vbHMgdGhleSBhcmUgaW50 ZW5kZWQNCnRvIHJlcGxhY2UgYXJlIGdlbmVyYWxseSByZWNvZ25pemVkIGFz IGJlaW5nIG91dGRhdGVkIG9yIGZsYXdlZC4gVGhpcw0KY3JlYXRlcyBkZW1h bmQsIGFuZCBpbmNyZWFzZXMgdGhlIG9kZHMgdGhhdCByYXRpb25hbCByZWlt cGxlbWVudGF0aW9ucw0Kd2lsbCBiZSBhZG9wdGVkLiBUaGlyZCwgZW5vdWdo IHBlb3BsZSBoYXZlIGVub3VnaCBleHBlcmllbmNlIHdpdGggdGhlDQp0b29s cyB0aGF0IGFyZSB0byBiZSByZXBsYWNlZCB0byBwYXJ0aWNpcGF0ZSBpbiB0 aGUgZGVzaWduIGNvbXBldGl0aW9uDQpkZXNjcmliZWQgbGF0ZXIuDQo8L0xJ Pg0KDQo8TEk+PEVNPldoeSBpc26SdCBbdG9vbF0gb24gdGhpcyBsaXN0Pzwv RU0+DQo8QlI+DQpUaGVyZSBhcmUgc2V2ZXJhbCBvdGhlciB0b29scyB0aGF0 IGNvdWxkIGhhdmUgYmVlbiBvbiB0aGlzIGxpc3QsIGFuZA0Kd2lsbCBiZSBh ZGRlZCBpZiB0aGUgZmlyc3Qgcm91bmQgb2Ygd29yayBnb2VzIHdlbGwuIEEg Y3Jvc3MtcGxhdGZvcm0NCnZlcnNpb24gY29udHJvbCBzeXN0ZW0gdGhhdCBj b3JyZWN0cyB0aGUgbWFueSBkZWZpY2llbmNpZXMgaW4gQ1ZTLCBmb3INCmV4 YW1wbGUsIGlzIGFuIG9idmlvdXMgY2FuZGlkYXRlLCBidXQgaXMgcHJvYmFi bHkgdG9vIGxhcmdlIHRvIGJlDQp0YWNrbGVkIGluaXRpYWxseSwgYW5kIGFu eSB3b3JrIGRvbmUgYnkgU29mdHdhcmUgQ2FycGVudHJ5IGNvdWxkIHdlbGwN CmJlIHN1cGVyc2VkZWQgYnkgQml0S2VlcGVyLiBTaW1pbGFybHksIHRoZSB3 b3JsZCBuZWVkcyBhIGdvb2QgT3Blbg0KU291cmNlIHByb2plY3QgbWFuYWdl bWVudCB0b29sIHdpdGggdGhlIGZ1bmN0aW9uYWxpdHkgb2YgTWljcm9zb2Z0 DQpQcm9qZWN0LCBidXQgcHJvYmFibHkgbmVlZHMgdGhlIGZvdXIgdG9vbHMg bGlzdGVkIGFib3ZlIG1vcmUgdXJnZW50bHkuDQo8L0xJPg0KDQo8TEk+PEVN PldoYXQgbGFuZ3VhZ2VzIGFuZCB0b29scyB3aWxsIGJlIHVzZWQ/IDwvRU0+ DQo8QlI+DQpBbGwgZGV2ZWxvcG1lbnQgd29yayB3aWxsIGJlIGRvbmUgaW4g UHl0aG9uLg0KPC9MST4NCg0KPExJPjxFTT5XaHkgUHl0aG9uPyA8L0VNPg0K PEJSPg0KVGhpcyBpcyBhY3R1YWxseSB0aHJlZSBxdWVzdGlvbnM6DQoNCgk8 T0w+DQoNCgk8TEk+PEVNPldoeSBtYW5kYXRlIGEgbGFuZ3VhZ2U/IDwvRU0+ DQoJPEJSPg0KCUJ1aWxkaW5nIGV2ZXJ5dGhpbmcgaW4gYSBzaW5nbGUgbGFu Z3VhZ2Ugd2lsbCBlbmNvdXJhZ2UNCglwcm9qZWN0cyB0byBzaGFyZSBjb2Rl LCB3aGljaCB3aWxsIGJvdGgga2VlcCB0aGUgdG90YWwgdm9sdW1lDQoJb2Yg Y29kZSBtYW5hZ2VhYmxlIGFuZCByYWlzZSB0aGUgcXVhbGl0eSBvZiB0aGUN CglpbXBsZW1lbnRhdGlvbnMgKHNpbmNlIHRoZSBzaGFyZWQgY29kZSB3aWxs IGJlIGV4ZXJjaXNlZCwgYW5kDQoJdGVzdGVkLCBpbiBtYW55IGRpZmZlcmVu dCB3YXlzKS4gVXNpbmcgYSBzaW5nbGUgbGFuZ3VhZ2Ugd2lsbA0KCWFsc28g aW1wcm92ZSB0aGUgY29tcHJlaGVuc2liaWxpdHksIGFuZCBoZW5jZSB0aGUN CgltYWludGFpbmFiaWxpdHkgYW5kIGV4dGVuc2liaWxpdHksIG9mIHRoZSB0 b29scy4gVGhlIHZhcnlpbmcNCglzeW50YXggb2YgTWFrZSwgQXV0b2NvbmYs IGFuZCBvdGhlciB0b29scyBpcyBhIGxhcmdlIHByYWN0aWNhbA0KCWJhcnJp ZXIgdG8gdGhlaXIgYWRvcHRpb24gYnkgcGVvcGxlIHdobyBoYXZlIGJldHRl ciAob3IgYXQNCglsZWFzdCBtb3JlIHByZXNzaW5nKSB0aGluZ3MgdG8gZG8g dGhhbiBsZWFybiB5ZXQgYW5vdGhlcg0KCXN5bnRheC4gTWljcm9zb2Z0knMg VmlzdWFsIEJhc2ljIGhhcyBzaG93biBob3cgcG93ZXJmdWwgaXQNCglpcyB0 byB1c2UgYSBzaW5nbGUsIGZsZXhpYmxlIGxhbmd1YWdlIGV2ZXJ5d2hlcmUu DQoJPC9MST4NCg0KCTxMST48RU0+V2h5IHVzZSBhIHNjcmlwdGluZyBsYW5n dWFnZT8gPC9FTT4NCgk8QlI+DQoJQSBsb3Qgb2YgYW5lY2RvdGFsIGV2aWRl bmNlIHNob3dzIHRoYXQgInJlbGF4ZWQiIGhpZ2gtbGV2ZWwNCglsYW5ndWFn ZXMgKGxpa2UgUHl0aG9uLCBQZXJsLCBhbmQgVmlzdWFsIEJhc2ljKSBhcmUg bW9yZQ0KCXByb2R1Y3RpdmUgdmVoaWNsZXMgZm9yIHByb2Nlc3MgbWFuYWdl bWVudCwgdGV4dCBwcm9jZXNzaW5nLA0KCWFuZCBzaW1pbGFyIHRhc2tzIHRo YW4gdGhlaXIgInN0cmljdCIgZXF1aXZhbGVudHMgKGxpa2UgQysrDQoJYW5k IEphdmEpLg0KCTwvTEk+DQoNCgk8TEk+PEVNPldoeSB1c2UgUHl0aG9uPyA8 L0VNPg0KCTxCUj4NCglUaGUgZm91ciBjYW5kaWRhdGVzIGNvbnNpZGVyZWQg d2VyZSBWaXN1YWwgQmFzaWMsIFBlcmwsIFRjbCwNCglhbmQgUHl0aG9uLg0K DQoJCTxPTD4NCg0KCQk8TEk+PEVNPlZpc3VhbCBCYXNpYyA8L0VNPg0KCQk8 QlI+DQoJCVZpc3VhbCBCYXNpYyBpcyBwcm9wcmlldGFyeSwgYW5kIHRoZXJl IGlzIG5vDQoJCWluZGljYXRpb24gdGhhdCBhIGNyZWRpYmxlIE9wZW4gU291 cmNlIGltcGxlbWVudGF0aW9uDQoJCXdpbGwgYXBwZWFyIGFueSB0aW1lIHNv b24uDQoJCTwvTEk+DQoNCgkJPExJPjxFTT5QZXJsPC9FTT4NCgkJPEJSPg0K CQlQZXJsIHdhcyBhIHN0cm9uZyBjb250ZW5kZXIsIHByaW1hcmlseSBiZWNh dXNlIG9mIHRoZQ0KCQltYW55IGxpYnJhcmllcyB0aGF0IGhhdmUgYmVlbiBk ZXZlbG9wZWQgZm9yIGl0LCBhbmQNCgkJYmVjYXVzZSBvZiB0aGUgbnVtYmVy IG9mIGJvb2tzIHRoYXQgZG9jdW1lbnQNCgkJaXQuIEhvd2V2ZXIsIG91ciBl eHBlcmllbmNlIHRlYWNoaW5nIGF0IExvcyBBbGFtb3Mgd2FzDQoJCXRoYXQg UGVybJJzIHN5bnRheCBpcyBoYXJkIHRvIGxlYXJuLCBpdHMgYmVoYXZpb3IN CgkJb2Z0ZW4gYXJiaXRyYXJ5LCBhbmQgaXRzIHNpemUgaW50aW1pZGF0aW5n LiBXaGlsZQ0KCQlmdWxsLXRpbWUgcHJvZmVzc2lvbmFsIHByb2dyYW1tZXJz IHdpdGggc2V2ZXJhbCBvdGhlcg0KCQlsYW5ndWFnZXMgdW5kZXIgdGhlaXIg YmVsdHMgbWlnaHQgKGFuZCBvZnRlbiBkbykgc2F5DQoJCXRoYXQgaXQgYWxs IG1ha2VzIHNlbnNlIG9uY2UgeW91IGtub3cgaXQsIHdlIHdhbnQgdG8NCgkJ bWFrZSB0aGUgbGVhcm5pbmcgY3VydmUgYXMgZ2VudGxlIGFzIHBvc3NpYmxl Lg0KCQk8L0xJPg0KDQoNCgkJPExJPjxFTT5UY2w8L0VNPg0KCQk8QlI+DQoJ CVRjbCBpcyBlYXNpZXIgdG8gbGVhcm4gYW5kIHJlYWQgdGhhbiBQZXJsLCBi dXQgaXMgbm90DQoJCWFzIHdlbGwgZG9jdW1lbnRlZCwgYW5kIGRvZXNuknQg Y29tZSB3aXRoIGFzIG1hbnkNCgkJbGlicmFyaWVzLiBIYWQgUHl0aG9uIG5v dCBleGlzdGVkLCBUY2wgd291bGQgcHJvYmFibHkNCgkJaGF2ZSBiZWVuIGNo b3NlbiBmb3IgdGhpcyBwcm9qZWN0Lg0KCQk8L0xJPg0KDQoJCTxMST48RU0+ UHl0aG9uPC9FTT4NCgkJPEJSPg0KCQlQeXRob24gcHJvdmlkZXMgdGhlIHNh bWUgZnVuY3Rpb25hbGl0eSBhcyBQZXJsIG9yIFRjbCwNCgkJYnV0IGhhcyBw cm92ZWQgdG8gYmUgZWFzaWVyIHRvIGxlYXJuLCByZWFkLCBhbmQNCgkJcmVt ZW1iZXIuIChGb3IgZXhhbXBsZSwgd29yZHMgbGlrZSAiZXhjZXB0IiBhbmQN CgkJInVubGVzcyIgYXBwZWFyIG11Y2ggbGVzcyBvZnRlbiBpbiBQeXRob24g cmVmZXJlbmNlDQoJCW1hdGVyaWFsIHRoYW4gdGhleSBkbyBpbiBQZXJsIHJl ZmVyZW5jZSBtYXRlcmlhbC4pDQoJCVB5dGhvbiBpcyBub3QgeWV0IGFzIGV4 dGVuc2l2ZWx5IGRvY3VtZW50ZWQgYXMgUGVybCwNCgkJYnV0IHRoZSBudW1i ZXIgb2YgYm9va3MgaXMgZ3Jvd2luZywgYXMgaXMgdGhlIG51bWJlcg0KCQlv ZiBtb2R1bGVzIGFuZCBsaWJyYXJpZXMuIEZpbmFsbHksIHRoZSBQeXRob24N CgkJY29tbXVuaXR5IGlzIHN0aWxsIHNtYWxsIGVub3VnaCBmb3IgYSBwcm9q ZWN0IGxpa2UNCgkJdGhpcyBvbmUgdG8gYXR0cmFjdCB0aGUgYXR0ZW50aW9u IG9mIGEgc2lnbmlmaWNhbnQNCgkJcHJvcG9ydGlvbiBvZiBpdC4NCgkJPC9M ST4NCg0KCQk8L09MPg0KCTwvTEk+DQoJPC9PTD4NCg0KPC9MST4NCg0KPExJ PjxFTT5Ib3cgd2lsbCBkZXZlbG9wbWVudCBiZSBvcmdhbml6ZWQgYW5kIGNv b3JkaW5hdGVkPyA8L0VNPg0KPEJSPg0KRXZlcnl0aGluZyB0aGUgcHJvamVj dCBwcm9kdWNlcy0tLWRlc2lnbnMsIGNyaXRpcXVlcyBvZiB0aG9zZSBkZXNp Z25zLA0KdGVzdCBzdWl0ZXMsIGFuZCBleGFtcGxlcywgYXMgd2VsbCBhcyBh Y3R1YWwgc291cmNlIGNvZGUtLS13aWxsIGJlDQphdmFpbGFibGUgdGhyb3Vn aCB0aGUgcHJvamVjdJJzIFdlYiBzaXRlIGF0DQpzb2Z0d2FyZS1jYXJwZW50 cnkuY29kZXNvdXJjZXJ5LmNvbS4gRWFjaCBwcm9qZWN0IHdpbGwgaGF2ZSBh DQpjb29yZGluYXRvciwgd2hvc2Ugam9iIGl0IHdpbGwgYmUgdG8gbW9kZXJh dGUgZGlzY3Vzc2lvbiwgc3luY2hyb25pemUNCnJlbGVhc2VzLCB0cmFjayB3 b3JrIGl0ZW1zLCBhbmQgcmVwb3J0IG9uIHByb2dyZXNzLiBUaGUgY29vcmRp bmF0b3INCndpbGwgYWxzbyBiZSByZXNwb25zaWJsZSBmb3IgY29sbGF0aW5n IGFuZCBlZGl0aW5nIGZlZWRiYWNrIGZyb20NCmp1ZGdlcyBkdXJpbmcgdGhl IGRlc2lnbiBjb21wZXRpdGlvbi4NCjwvTEk+DQoNCjwvT0w+DQoNCjxIMj5E ZXNpZ24gY29tcGV0aXRpb248L0gyPg0KDQo8T0w+DQoNCjxMST48RU0+V2h5 IGEgZGVzaWduIGNvbXBldGl0aW9uPzwvRU0+DQo8QlI+DQpNb3N0IE9wZW4g U291cmNlIHBhY2thZ2VzIGhhdmUgdGhlaXIgcm9vdHMgaW4gc29tZW9uZZJz IHBldCBob2JieQ0KcHJvamVjdCwgd2hpY2ggb3RoZXJzIGhhdmUgcGlja2Vk IHVwLCBleHRlbmRlZCwgYW5kIG1vZGlmaWVkLiBUaGlzDQpraW5kIG9mIG9y Z2FuaWMgZ3Jvd3RoIGhhcyBhIGxvdCBvZiBnb29kIGZlYXR1cmVzLCBidXQg YQ0Kd2VsbC1kb2N1bWVudGVkIGRlc2lnbiBpcyBub3Qgb25lIG9mIHRoZW0u IEFzIGEgcmVzdWx0LCBwcm9ncmFtbWVycw0Kb2Z0ZW4gaGF2ZSB0byByZWx5 IG9uIGZvbGtsb3JlIGFuZCByZXZlcnNlIGVuZ2luZWVyaW5nIGlmIHRoZXkg d2FudCB0bw0KYWRkIHRvLCBvciBmaXgsIHRoZXNlIHRvb2xzLiBJbiBhZGRp dGlvbiwgdGhlcmUgaXMgYSBkZWFydGggb2YNCmV4YW1wbGVzIG9mIGdvb2Qg ZGVzaWduIGZvciBuZXcgcHJvZ3JhbW1lcnMgdG8gbGVhcm4gZnJvbS4gPEJS PiBUaGUNClNvZnR3YXJlIENhcnBlbnRyeSBwcm9qZWN0IGhvcGVzIHRvIGFk ZHJlc3MgYm90aCBwcm9ibGVtcyBieSBydW5uaW5nIGENCnR3by1zdGFnZSBk ZXNpZ24gY29tcGV0aXRpb24uIFRoZSBiZXN0IGVudHJpZXMgaW4gYm90aCBy b3VuZHMgd2lsbCBiZQ0KcHVibGlzaGVkLCBhbG9uZyB3aXRoIGNvbW1lbnRh cnkgZnJvbSB0aGUgY29tcGV0aXRpb26Scw0KanVkZ2VzLiBUaGlzIG1hdGVy aWFsIHdpbGwgc2VydmUgYm90aCB0byBpbmZvcm0gYW5kIGd1aWRlIGZ1cnRo ZXINCmRldmVsb3BtZW50LCBhbmQgdG8gc2hvdyBub3ZpY2VzIHdoYXQgZXhw ZXJpZW5jZWQgcHJvZ3JhbW1lcnMgdGhpbmsNCmFib3V0IGJlZm9yZSB0aGV5 IHN0YXJ0IGNvZGluZy4NCjwvTEk+DQoNCjxMST48RU0+V2hvIGNhbiBlbnRl cj8gPC9FTT4NCjxCUj4NCkV2ZXJ5b25lOiBpbmRpdmlkdWFscyBhbmQgdGVh bXMsIHN0dWRlbnRzIGFuZCBwcm9mZXNzaW9uYWxzLCBmcm9tDQphbnl3aGVy ZSBpbiB0aGUgd29ybGQuDQo8L0xJPg0KDQo8TEk+PEVNPldoYXQgYXJlIHRo ZSBydWxlcz8gPC9FTT4NCjxCUj5UaGUgZnVsbCBydWxlcyBhcmUgYXZhaWxh YmxlIGF0Og0KPENFTlRFUj4NCnNvZnR3YXJlLWNhcnBlbnRyeS5jb2Rlc291 cmNlcnkuY29tL2Rlc2lnbi1jb21wZXRpdGlvbi9ydWxlcy5odG1sDQo8L0NF TlRFUj4NCkJhc2ljYWxseSwgaW5pdGlhbCBzdWJtaXNzaW9ucyBtdXN0IGJl IHdyaXR0ZW4gaW4gRW5nbGlzaCwgYW5kIGNhbiBiZQ0KdXAgdG8gMTAgcGFn ZXMgbG9uZy4gRXhhbXBsZXMgY291bnQgYWdhaW5zdCB0aGlzIGxpbWl0LCBi dXQgZGlhZ3JhbXMNCmFuZCBhIFVuaXgtc3R5bGUgbWFuIHBhZ2UgZG8gbm90 LiBBbnkgcGVyc29uIG9yIHRlYW0gbWF5IHN1Ym1pdCBvbmx5DQpvbmUgZW50 cnkgaW4gYW55IGdpdmVuIGNhdGVnb3J5LCBidXQgY2FuIHN1Ym1pdCBpbiBh cyBtYW55IG9mIHRoZSBmb3VyDQpjYXRlZ29yaWVzIGFzIGRlc2lyZWQuDQo8 QlI+DQpUaGUgYmVzdCBmb3VyIGVudHJpZXMgaW4gZWFjaCBjYXRlZ29yeSB3 aWxsIGJlIGF3YXJkZWQgVVMkMjUwMCwgYW5kDQphc2tlZCB0byBzdWJtaXQg ZnVsbCBkZXNpZ25zLiBQYXJ0aWNpcGFudHMgd2lsbCBiZSBzdHJvbmdseSBl bmNvdXJhZ2VkDQp0byBwb29sIHRoZWlyIGVmZm9ydHMgZm9yIHRoZSBzZWNv bmQgcm91bmQuIFRoZSBiZXN0IHNlY29uZC1yb3VuZA0Kc3VibWlzc2lvbiB3 aWxsIGJlIGF3YXJkZWQgYW4gYWRkaXRpb25hbCBVUyQ3NTAwLCB3aGlsZSB0 aGUgb3RoZXJzDQp3aWxsIHJlY2VpdmUgYW5vdGhlciBVUyQyNTAwIGVhY2gu IFRoZSByZWFsIHJld2FyZCB3aWxsIGJlIHNlZWluZyB0aGUNCmRlc2lnbiBp bXBsZW1lbnRlZCwgYW5kIGJlaW5nIGluIGEgZ29vZCBwb3NpdGlvbiB0byBi aWQgb24gdGhlDQppbXBsZW1lbnRhdGlvbiB3b3JrLg0KPC9MST4NCg0KPExJ PjxFTT5XaGF0IHNob3VsZCBmaXJzdC1yb3VuZCBzdWJtaXNzaW9ucyBjb250 YWluPyA8L0VNPg0KPEJSPg0KQW4gZXhhbXBsZSBvZiB3aGF0IGEgc3VibWlz c2lvbiBzaG91bGQgY29udGFpbiwgYW5kIGhvdyBpdCBzaG91bGQgYmUNCmZv cm1hdHRlZCBpcyBhdmFpbGFibGUgYXQ6DQo8Q0VOVEVSPg0Kc29mdHdhcmUt Y2FycGVudHJ5LmNvZGVzb3VyY2VyeS5jb20vZGVzaWduLWNvbXBldGl0aW9u L2V4YW1wbGUuaHRtbA0KPENFTlRFUj4NCkZpcnN0LXJvdW5kIGVudHJpZXMg c2hvdWxkIGZvY3VzIHByaW1hcmlseSBvbiB3aGF0IHRoZSB0b29sIHdpbGwg ZG8sDQphbmQgaG93IGl0IHdpbGwgYmUgdXNlZDogY29tbWFuZC1saW5lIG9w dGlvbnMsIGlucHV0IGFuZCBvdXRwdXQgZmlsZQ0KZm9ybWF0cywgc2tldGNo ZXMgb2YgV2ViIGFuZCBHVUkgaW50ZXJmYWNlcyAod2hlcmUgYXBwcm9wcmlh dGUpLCBhbmQNCnNvIG9uLiBTZWNvbmQtcm91bmQgc3VibWlzc2lvbnMgd2ls bCB0aGVuIGJlIGV4cGVjdGVkIHRvIGRlc2NyaWJlIGhvdw0KaXSScyBhbGwg Z29pbmcgdG8gYmUgaW1wbGVtZW50ZWQuDQo8L0xJPg0KDQo8TEk+PEVNPldo byB3aWxsIHRoZSBqdWRnZXMgYmU/IDwvRU0+DQo8QlI+DQo8Qj5OZWVkIHRv IGZpcm0gdXAgdGhlIGxpc3Qgb2YganVkZ2VzIEFTQVAuPC9CPg0KPC9MST4N Cg0KPExJPjxFTT5XaGVuIGFyZSB0aGUgZGVhZGxpbmVzPyA8L0VNPg0KPEJS Pg0KVGhlIGRlYWRsaW5lIGZvciBmaXJzdC1yb3VuZCBzdWJtaXNzaW9ucyBp cyBNYXJjaCAzMSwgMjAwMC4gVGhlIGZpdmUNCmJlc3QgcHJvcG9zYWxzIGlu IGVhY2ggY2F0ZWdvcnkgd2lsbCBiZSBhbm5vdW5jZWQgb24gQXByaWwgMzAs DQoyMDAwLiBGdWxsIHN1Ym1pc3Npb25zIGFyZSBkdWUgb24gSnVuZSAxLCAy MDAwLCBhbmQgd2lubmVycyB3aWxsIGJlDQphbm5vdW5jZWQgb24gSnVuZSAz MCwgMjAwMC4NCjwvTEk+DQoNCjxMST48RU0+V29uJ3QgcHJpemVzIGRpc2Nv dXJhZ2UgY28tb3BlcmF0aW9uPyA8L0VNPg0KPEJSPg0KV2UgZG9uknQga25v dy4gT24gdGhlIG9uZSBoYW5kLCBwZW9wbGUgbWlnaHQgd2FudCB0byBob2Fy ZCB0aGVpcg0KYmVzdCBpZGVhczsgb24gdGhlIG90aGVyIGhhbmQsIHRoZSBi ZXN0IGRlc2lnbnMgaW4gYm90aCByb3VuZHMgYXJlDQpnb2luZyB0byBiZSBw dWJsaXNoZWQsIGFsb25nIHdpdGggdGhlIGp1ZGdlc5IgY29tbWVudGFyeSwg YW5kIHdlDQp3aWxsIGJlIGVuY291cmFnaW5nIHBhcnRpY2lwYW50cyB0byBw b29sIHRoZWlyIGVmZm9ydHMuIE1vc3Qgb2YgdGhlDQptb25leSB0aGF0IHdp bGwgYmUgcGFpZCBvdXQgd2lsbCBnbyB0byBmdW5kIGltcGxlbWVudGF0aW9u LCB0ZXN0aW5nLA0KYW5kIGRvY3VtZW50YXRpb247IHdlIGhvcGUgdGhhdCBw ZW9wbGUgd2lsbCBjb2xsYWJvcmF0ZSBpbiB0aGUgZWFybHkNCnN0YWdlcywg YW5kIHRyZWF0IHRoZSBwcml6ZXMgYXMgcmVjb2duaXRpb24gZm9yIHRoZWly IGVmZm9ydCwgcmF0aGVyDQp0aGFuIHRyZWF0aW5nIFVTJDEwLDAwMCBhcyB0 aGVpciByZXRpcmVtZW50IGZ1bmQuDQo8L0xJPg0KDQo8L09MPg0KDQo8SDI+ RG9jdW1lbnRhdGlvbjwvSDI+DQoNCjxPTD4NCg0KPExJPjxFTT5XaGF0IGRv Y3VtZW50YXRpb24gd2lsbCBiZSBwcm9kdWNlZD88L0VNPg0KPEJSPg0KVGhl IFNvZnR3YXJlIENhcnBlbnRyeSBwcm9qZWN0IHdpbGwgcHJvZHVjZSBzZXZl cmFsIGRpZmZlcmVudCBraW5kcyBvZg0KZG9jdW1lbnRhdGlvbjoNCg0KCTxP TD4NCg0KCTxMST48RU0+RGVzaWduIGRvY3VtZW50YXRpb24uIDwvRU0+DQoJ PEJSPg0KCUFzIHN0YXRlZCBhYm92ZSwgdGhlIGJlc3QgZGVzaWducyBpbiBl YWNoIGNhdGVnb3J5IHdpbGwgYmUNCglwdWJsaXNoZWQsIGFsb25nIHdpdGgg dGhlIGp1ZGdlc5IgY29tbWVudGFyeS4gVGhpcyBtYXRlcmlhbA0KCW91Z2h0 IHRvIHBsYXkgdGhlIHJvbGUgdGhhdCBtdXNpYyBjcml0aWNpc20gaGFzIHBs YXllZCBpbiB0aGUNCglkZXZlbG9wbWVudCBvZiBtdXNpYywgYnkgZ2l2aW5n IG5ld2NvbWVycyAoYW5kIGV4cGVyaWVuY2VkDQoJcHJvZ3JhbW1lcnMpIGJl dHRlciBpbnNpZ2h0IGludG8gaG93IGdvb2QgZGVzaWduZXJzIHRoaW5rLg0K CTwvTEk+DQoNCgk8TEk+PEVNPlVzZXIgZ3VpZGVzLiA8L0VNPg0KCTxCUj4N CglUaGUgcHJvamVjdCB3aWxsIHBheSBmb3IgdGhlIGRldmVsb3BtZW50IG9m IG1hbiBwYWdlcywgdXNlcg0KCWd1aWRlcywgb25saW5lIGhlbHAsIGFuZCBh bGwgdGhlIG90aGVyIGRvY3VtZW50YXRpb24gbmVlZGVkIHRvDQoJdHVybiBh IHByb2dyYW0gaW50byBhIHByb2R1Y3QuDQoJPC9MST4NCg0KCTxMST48RU0+ VGVzdCBzdWl0ZXMuIDwvRU0+DQoJPEJSPg0KCVRoZSBwcm9qZWN0IHdpbGwg YWxzbyBwYXkgZm9yIHRoZSBkZXZlbG9wbWVudCBvZg0KCWluZHVzdHJpYWwt c3RyZW5ndGggdGVzdCBzdWl0ZXMgZm9yIGFsbCBmb3VyIHRvb2xzLiBUaGVz ZQ0KCXN1aXRlcyB3aWxsIGJlIHB1Ymxpc2hlZCwgYm90aCB0byBzZXJ2ZSBh cyBhIHN0YXJ0aW5nIHBvaW50DQoJZm9yIG90aGVyIHByb2plY3RzIGFuZCB0 byBkZW1vbnN0cmF0ZSBnb29kIHByYWN0aWNlLg0KCTwvTEk+DQoNCgk8TEk+ PEVNPkNhc2Ugc3R1ZGllcy4gPC9FTT4NCgk8QlI+DQoJSXQgaXMgb2Z0ZW4g ZWFzaWVyIHRvIHNob3cgc29tZW9uZSBob3cgdG8gZG8gc29tZXRoaW5nIHRo YW4gdG8NCglleHBsYWluIGl0IHRvIHRoZW0uIFRoZSBTb2Z0d2FyZSBDYXJw ZW50cnkgcHJvamVjdCB3aWxsIHBheQ0KCWZvciBjYXNlIHN0dWRpZXMgdGhh dCBkZXNjcmliZSBob3cgdGhlc2UgdG9vbHMsIGFuZCAobW9yZQ0KCWltcG9y dGFudGx5KSB0aGUgd29ya2luZyBwcmFjdGljZXMgdGhleSBzdXBwb3J0LCBo YXZlIGJlZW4NCglkZXBsb3llZCBpbiBwcmFjdGljZS4gQ2hlY2tsaXN0cywg dGVtcGxhdGVzIGZvciBmb3JtcywgYW5kDQoJb3RoZXIgZXJyYXRhIGNhbiBi ZSBzdWJtaXR0ZWQuDQoJPC9MST4NCg0KCTwvT0w+DQoNCjwvTEk+DQoNCjxM ST48RU0+V2hhdCBmb3JtYXQocykgd2lsbCBiZSB1c2VkPyA8L0VNPg0KPEJS Pg0KVGhlIHByaW1hcnkgZm9ybWF0IGZvciBhbGwgZG9jdW1lbnRhdGlvbiB3 aWxsIGJlIEhUTUwuIFRoZSBwcm9qZWN0DQp3aWxsIG1pZ3JhdGUgdG8gWE1M IHdoZW4gYW5kIGFzIGZlYXNpYmxlLg0KPC9MST4NCg0KPExJPjxFTT5XaGF0 IHJlc3RyaWN0aW9ucyBhcmUgdGhlcmUgb24gdXNpbmcgdGhlIGRvY3VtZW50 YXRpb24/PC9FTT4NCjxCUj4NCk9ubHkgdGhvc2UgdGhhdCBhbHNvIGFwcGx5 IHRvIHRoZSBzb2Z0d2FyZSwgdW5kZXIgdGhlIHRlcm1zIG9mIGl0cw0KT3Bl biBTb3VyY2UgbGljZW5zZS4gWW91IGNhbiBjb3B5IGFuZCBkaXN0cmlidXRl IHRoZSBkb2N1bWVudGF0aW9uIGluDQphbnkgZm9ybSwgYnV0IG9ubHkgaWYg aXRzIGF1dGhvcihzKSBhbmQgb3JpZ2luIGFyZSBjbGVhcmx5IHNob3duLCBh bmQNCmlmIHlvdSBpbmNsdWRlIGEgZGVzY3JpcHRpb24gb2YgaG93IHJlYWRl cnMgY2FuIGFjY2VzcyB0aGUNCm9yaWdpbmFscy4gSW4gcGFydGljdWxhciwg dGhlIGRvY3VtZW50YXRpb24gY2FuIGJlIHJlcHJvZHVjZWQgaW4NCmJvb2tz LCBidXQgb25seSBpZiB0aGUgYXV0aG9ycywgb3JpZ2luLCBhbmQgbG9jYXRp b24gb2YgdGhlIG9yaWdpbmFscw0KaXMgcHJpbnRlZCBjbGVhcmx5IG9uIGVh Y2ggcGFnZS4NCjwvTEk+DQoNCjwvT0w+DQoNCjwvQk9EWT4NCjwvSFRNTD4N Cg== --168427786-691315853-945920620=:4839--
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4