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. --0-488534781-901753860=:6003 Content-Type: TEXT/PLAIN; CHARSET=US-ASCII Content-ID: <Pine.NEB.4.00.9807291716501.6003@mathfs.math.montana.edu> Attached is R code for an aov function which handles multiple error strata. I took a different approach from that suggested in the model.c code of R&R. Rather than modify model.c, I did all of the functions as interpreted R code. They work on the examples in Chambers & Hastie _Stat models in S_. So far I don't have the projections working. I have a crude alias() function which I'm not including. I modified print.mlm and summary.mlm because they didn't work for me. print.aov and summary.aov are basically the same because I don't like the print.aov in S which strings out sums of squares on one line. Comments and testing on various datasets are needed. Please let me know what you think. Jim Robison-Cox ____________ Department of Math Sciences | | phone: (406)994-5340 2-214 Wilson Hall \ BZN, MT | FAX: (406)994-1789 Montana State University | *_______| Bozeman, MT 59717 \_| e-mail: jimrc@math.montana.edu --0-488534781-901753860=:6003 Content-Type: TEXT/PLAIN; CHARSET=US-ASCII; NAME="aov.R" Content-Transfer-Encoding: BASE64 Content-ID: <Pine.NEB.4.00.9807291711000.6003@mathfs.math.montana.edu> Content-Description: Content-Disposition: ATTACHMENT; FILENAME="aov.R" YW92IDwtIGZ1bmN0aW9uIChmb3JtdWxhLCBkYXRhID0gbGlzdCgpLCBzdWJz ZXQsIHdlaWdodHM9TlVMTCwgbmEuYWN0aW9uLCANCiAgICAgICAgbWV0aG9k ID0gInFyIiwgbW9kZWwgPSBUUlVFLCBrZWVwLm9yZGVyPUZBTFNFLCBwcm9q PUZBTFNFLCBvbmVkZj1GQUxTRSwNCiAgICAgICAgICAgICAgICAgdG9sPSBz cXJ0KC5NYWNoaW5lJGRvdWJsZS5lcHMpLCAuLi4pIA0Kew0KICBpcy56ZXJv IDwtIGZ1bmN0aW9uKHgsdG9sPTEuMGUtNykgYWJzKHgpIDwgdG9sDQogIGlm IChtZXRob2QgPT0gIm1vZGVsLmZyYW1lIikgDQogICAgcmV0dXJuKG1mKQ0K ICBlbHNlIGlmIChtZXRob2QgIT0gInFyIikgDQogICAgd2FybmluZyhwYXN0 ZSgibWV0aG9kID0iLCBtZXRob2QsICJpcyBub3Qgc3VwcG9ydGVkLiBVc2lu ZyBcInFyXCIuIikpDQogIGlmIChsZW5ndGgobGlzdCguLi4pKSkgDQogICAg d2FybmluZyhwYXN0ZSgiRXh0cmEgYXJndW1lbnRzIiwgZGVwYXJzZShzdWJz dGl0dXRlKC4uLikpLCANCiAgICAgICAgICAgICAgICAgICJhcmUganVzdCBk aXNyZWdhcmRlZC4iKSkNCiAgbXQgPC0gdGVybXMoZm9ybXVsYSwgZGF0YSA9 IGRhdGEsIGtlZXAub3JkZXI9a2VlcC5vcmRlcikNCiAgaWYoaXMubmEoY2hh cm1hdGNoKCJFcnJvciIsYXR0cihtdCwidGVybS5sYWJlbHMiKSkpKXsNCiAg ICAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIw0KICAgICMjICAgICAgICAgICAgICAgICAgIFBs YWluIEFOT1ZBIHdpdGggYSBzaW5nbGUgRXJyb3IgdGVybSANCiAgICAjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIw0KICAgIG1mIDwtIG1hdGNoLmNhbGwoKQ0KICAgIG1mJHNp bmd1bGFyLm9rIDwtIE5VTEwNCiAgICBtZiRtb2RlbCA8LSBOVUxMDQogICAg bWYkbWV0aG9kIDwtIE5VTEwNCiAgICBtZltbMV1dIDwtIGFzLm5hbWUoIm1v ZGVsLmZyYW1lIikNCiAgICBtZiA8LSBldmFsKG1mLCBzeXMuZnJhbWUoc3lz LnBhcmVudCgpKSkNCiAgICB5IDwtIG1vZGVsLnJlc3BvbnNlKG1mLCAibnVt ZXJpYyIpDQogICAgbnkgPC0gTkNPTCh5KQ0KICAgIGlmKG55ID4gMSAmIGlz Lm51bGwoZGltbmFtZXMoeSlbWzJdXSkpDQogICAgICBkaW1uYW1lcyh5KVtb Ml1dIDwtIHBhc3RlKCJ5IiwxOm55LHNlcD0iIikNCiAgICB3IDwtIG1vZGVs LndlaWdodHMobWYpDQogICAgaWYgKGlzLmVtcHR5Lm1vZGVsKG10KSkgew0K ICAgICAgeiA8LSBsaXN0KGNvZWZmaWNpZW50cyA9IG51bWVyaWMoMCksIHJl c2lkdWFscyA9IHksIA0KICAgICAgICAgICAgICAgIGZpdHRlZC52YWx1ZXMg PSAwICogeSwgd2VpZ2h0cyA9IHcsIHJhbmsgPSAwLCANCiAgICAgICAgICAg ICAgICBkZi5yZXNpZHVhbCA9IGxlbmd0aCh5KSkNCiAgICAgIGNsYXNzKHop IDwtIGlmIChpcy5tYXRyaXgoeSkpIA0KICAgICAgICBjKCJtYW92Lm51bGwi LCAiYW92Lm51bGwiLCAibWFvdiIsICJhb3YiKQ0KICAgICAgZWxzZSBjKCJh b3YubnVsbCIsICJhb3YiKQ0KICAgIH0NCiAgICBlbHNlIHsNCiAgICAgIHgg PC0gbW9kZWwubWF0cml4KG10LCBtZikNCiAgICAgIHogPC0gaWYgKGlzLm51 bGwodykpIA0KICAgICAgICBsbS5maXQoeCwgeSwgdG9sPXRvbCkNCiAgICAg IGVsc2UgbG0ud2ZpdCh4LCB5LCB3LCB0b2w9dG9sKQ0KICAgICAgeiRyZXNp ZC5hc3NpZ24gPC0gKHokcXIkcmFuaysxKTogZGltKHgpWzFdDQogICAgICBj bGFzcyh6KSA8LSBjKGlmIChpcy5tYXRyaXgoeSkpIGMoIm1hb3YiLCJtbG0i KSwgImFvdiIsICJsbSIpDQogICAgfQ0KICAgICMjIyBTZXQgdXAgY29udHJh c3RzIA0KICAgIGNvbnRyIDwtICBhcy5saXN0KGF0dHIobXQsInRlcm0ubGFi ZWxzIilbIGF0dHIobXQsIm9yZGVyIikgPT0gMV0pDQogICAgbmFtZXMoY29u dHIpIDwtIHVubGlzdChjb250cikNCiAgICBmb3IgKGkgaW4gMTpsZW5ndGgo Y29udHIpKQ0KICAgICAgY29udHJbW2ldXSA8LSBjb250cmFzdHMoZGF0YVss Y29udHJbW2ldXSBdKQ0KICAgIHokY29udHJhc3RzIDwtIGNvbnRyDQogICAg aWYocHJvaikNCiAgICAgIHokcHJvaiA8LSBwcm9qLmFvdih4LHksb25lZGYp DQogICAgeiRjYWxsIDwtIG1hdGNoLmNhbGwoKQ0KICAgIHokdGVybXMgPC0g bXQNCiAgICBpZiAobW9kZWwpIA0KICAgICAgeiRtb2RlbCA8LSBtZg0KICB9 DQogIGVsc2V7DQogICAgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCiAgICAjIyMgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBNdWx0aXBsZSBFcnJvciBzdHJhdGEN CiAgICAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIw0KICAgIGZvcm11bGFzIDwtIHNwbGl0LmZv cm11bGEuYnlFcnJvcihmb3JtdWxhKQ0KICAgIGVycm9yLmZvcm0gPC0gZm9y bXVsYXMkZXJyb3IuZm9ybQ0KICAgIG1vZC5mb3JtIDwtIGZvcm11bGFzJG1v ZGVsLmZvcm0NCiAgICBlbXQgPC0gdGVybXMoZXJyb3IuZm9ybSkgICMgbW9k ZWwgdGVybXMgZm9yIGVycm9yDQogICAgZW1mIDwtIG1vZGVsLmZyYW1lKGZv cm11bGE9ZXJyb3IuZm9ybSxkYXRhPWRhdGEpICMgbW9kZWwgZnJhbWUgZm9y IGVycm9yDQogICAgeSAgIDwtIG1vZGVsLnJlc3BvbnNlKGVtZiwgIm51bWVy aWMiKQ0KICAgIGlmKE5DT0woeSkgPiAxKQ0KICAgICAgc3RvcCgiV2l0aCBF cnJvciBzdHJhdGEgdXNlIGEgdmVjdG9yIChvbmx5KSByZXNwb25zZS4iKQ0K ICAgIGV4ICA8LSBtb2RlbC5tYXRyaXgoZW10LCBkYXRhKQ0KICAgIG5yIDwt IG5yb3coZXgpDQogICAgZXJyLmFvdiA8LSBpZihpcy5udWxsKHdlaWdodHMp KSBsbS5maXQoZXgseSwgdG9sPXRvbCkNCiAgICAgICAgICAgICAgIGVsc2Ug bG0ud2ZpdChleCx5LHdlaWdodHMsdG9sPXRvbCkNCiAgICBRZSA8LSBxci5R KGVyci5hb3YkcXIsIGNvbXBsZXRlPVRSVUUpDQogICAgeSA8LSB0KFFlKSAl KiUgeSAgICAgICAgICAgICAgICAgIyMgUHJvamVjdCB5IG9udG8gdGhlIGVy cm9yIHNwYWNlDQogICAgZXJyLnJhbmsgPC0gZXJyLmFvdiRyYW5rDQogICAg cGl2b3QgPC0gZXJyLmFvdiRxciRwaXZvdA0KICAgIGFzc24gPC0gc3BsaXQo KDE6ZXJyLnJhbmspLGZhY3RvcihlcnIuYW92JGFzc2lnbltwaXZvdF1bMTpl cnIucmFua10sDQogICAgICAgICAgICAgICAgICBsZXZlbHMgPSB1bmlxdWUo ZXJyLmFvdiRhc3NpZ25bcGl2b3RdKSkpDQogICAgbmFtZXMoYXNzbikgIDwt IGMoaWYoYXR0cihlbXQsImludGVyY2VwdCIpKSAiSW50ZXJjZXB0IiwNCiAg ICAgICAgICAgICAgICAgICAgICAgICBhdHRyKGVtdCwidGVybS5sYWJlbHMi KSkNCiAgICBzdHJhdGEubmR4IDwtIGMoYXNzbiwgbGlzdChSZXNpZHVhbCA9 IChlcnIucmFuaysxKTpucikpDQogICAgICAgICAgICAgICAgICAgICAgICMj IGluZGljZXMgb2YgY29sdW1ucyBvZiBleCBpbnRvIHN0cmF0YQ0KICAgIGRm LmVycm9yIDwtIHVubGlzdChsYXBwbHkoIHN0cmF0YS5uZHgsbGVuZ3RoKSkN CiAgICBuLnN0cmF0YSA8LSBsZW5ndGgoZGYuZXJyb3IpDQogICAgc3RyYXRh IDwtIG5hbWVzKHN0cmF0YS5uZHgpDQogICAgbXQgPC0gdGVybXMobW9kLmZv cm0sIGtlZXAub3JkZXIgPSBrZWVwLm9yZGVyKQ0KICAgIE14IDwtIG1vZGVs Lm1hdHJpeChtdCwgZGF0YSkNCiAgICB0UWUuTSA8LSB0KFFlKSAlKiUgTXgg ICAgICAgICAgICAjIyBQcm9qZWN0IHggb250byBlcnJvciBzcGFjZQ0KICAg IGF0dHIodFFlLk0sImFzc2lnbiIpIDwtIGF0dHIoTXgsImFzc2lnbiIpDQog ICAgbmMgPC0gbmNvbChNeCkNCiAgICBjb2wubmR4IDwtIE5VTEwNCiAgICBt ZiA8LSBtYXRjaC5jYWxsKCkNCiAgICBtZiRtb2RlbCA8LSBOVUxMDQogICAg bWZbWzFdXSA8LSBhcy5uYW1lKCJtb2RlbC5mcmFtZSIpDQogICAgeiA8LSBh cy5saXN0KDE6bi5zdHJhdGEpICAgICMjIGJlZ2luIHRvIHNldHVwIHRoZSBy ZXN1bHQgb2JqZWN0DQogICAgIyMgTG9vcCBvdmVyIHN0cmF0YSANCiAgICBm b3IgKCBpIGluICgxICsgYXR0cihlbXQsImludGVyY2VwdCIpKSA6bi5zdHJh dGEpew0KICAgICAgaWYoIGkgPiAxICYgbGVuZ3RoKGNvbC5uZHgpID4gMCl7 DQogICAgICAgIHkgPC0geSAgLSB0UWUuTVsgLGNvbC5uZHhdICUqJSBzdHJ0 LmNvZWYNCiAgICAgIH0NCiAgICAgIHJvdy5uZHggPC0gc3RyYXRhLm5keFtb aV1dDQogICAgICBjb2wubmR4IDwtICgxOm5jKVthcHBseSh0UWUuTVtyb3cu bmR4LCxkcm9wPUZBTFNFXSwyLA0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgZnVuY3Rpb24oeCkgIWFsbChpcy56ZXJvKHgsIHRvbD10b2wpKSld DQogICAgICBsY24gPC0gbGVuZ3RoKGNvbC5uZHgpDQogICAgICBpZiggbGNu ID4gMCl7DQogICAgICAgIGlmKGxjbiA+IGRmLmVycm9yW1tpXV0pDQogICAg ICAgICAgIGNvbC5uZHggPC0gY29sLm5keFsxOmRmLmVycm9yW1tpXV1dDQog ICAgICAgIHggPC0gdFFlLk1bcm93Lm5keCxjb2wubmR4LGRyb3A9RkFMU0Vd DQogICAgICAgIGF0dHIoeCwiYXNzaWduIikgPC0gYXR0cih0UWUuTSwiYXNz aWduIilbY29sLm5keF0NCiAgICAgICAgemkgPC0gaWYoaXMubnVsbCh3ZWln aHRzKSkgbG0uZml0KHgsIHlbcm93Lm5keF0pDQogICAgICAgICAgICAgIGVs c2UgbG0uZml0KHgsIHlbcm93Lm5keF0sd2VpZ2h0c1tyb3cubmR4XSkNCiAg ICAgICAgemkkcmVzaWQuYXNzaWduIDwtICh6aSRxciRyYW5rKzEpOiBkaW0o eClbMV0NCiAgICAgICAgc3RydC5jb2VmIDwtIHppJGNvZWZmaWNpZW50c1sh aXMubmEoemkkY29lZmZpY2llbnRzKV0NCiAgICAgICAgaWYoYW55KGlzLm5h KHppJGNvZWZmaWNpZW50cykpKQ0KICAgICAgICAgIGNvbC5uZHggPC0gY29s Lm5keFshaXMubmEoemkkY29lZmZpY2llbnRzKV0NCiAgICAgICAgICAgIyAo Tm90IG5lZWRlZCBmb3IgaGVsbWVydCBjb250cmFzdHMpDQogICAgICAgIHpp JHRlcm1zIDwtIG10DQogICAgICAgIGF0dHIoemkkdGVybXMsInRlcm0ubGFi ZWxzIikgPC0gdW5pcXVlKGF0dHIoemkkdGVybXMsDQogICAgICAgICAgICAg ICAgICAgICAgICJ0ZXJtLmxhYmVscyIpW2F0dHIodFFlLk0sImFzc2lnbiIp W2NvbC5uZHhdXSkNCiAgICAgICAgYXR0cih6aSR0ZXJtcywiZmFjdG9ycyIp IDwtICBhdHRyKHppJHRlcm1zLA0KICAgICAgICAgICAgICAgICAgICAgICJm YWN0b3JzIilbLGF0dHIoemkkdGVybXMsInRlcm0ubGFiZWxzIiksZHJvcD1G QUxTRV0NCiAgICAgICAgYXR0cih6aSR0ZXJtcywiaW50ZXJjZXB0IikgPC0g MA0KICAgICAgICBjbGFzcyh6aSkgPC0gYygiYW92IiwgImxtIikNCiAgICAg ICAgICAjIyMgU2V0IHVwIGNvbnRyYXN0cw0KICAgICAgICBjb250ciA8LSAg YXR0cih6aSR0ZXJtcywidGVybS5sYWJlbHMiKQ0KICAgICAgICBjb250ciA8 LSBhcy5saXN0KGNvbnRyW3VubGlzdChsYXBwbHkoc3Ryc3BsaXQoY29udHIs IjoiKSxsZW5ndGgpKT09IDFdKQ0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICMgcmVtb3ZlIGludGVyYWN0aW9ucw0KICAgICAg ICBuYW1lcyhjb250cikgPC0gdW5saXN0KGNvbnRyKQ0KICAgICAgICBmb3Ig KGogaW4gMTpsZW5ndGgoY29udHIpKQ0KICAgICAgICAgIGNvbnRyW1tqXV0g PC0gY29udHJhc3RzKGRhdGFbLGNvbnRyW1tqXV0gXSkNCiAgICAgICAgemkk Y29udHJhc3RzIDwtIGNvbnRyDQogICAgICAgIGlmKHByb2opDQogICAgICAg ICAgemkkcHJvaiA8LSBwcm9qLmFvdih4LHksb25lZGY9b25lZGYpDQogICAg ICB9DQogICAgICBlbHNlIHsgICAgICAjIyBObyB0ZXJtcyB0byBmaXQgaW4g dGhpcyBlcnJvciBzdHJhdHVtDQogICAgICAgICB6aSA8LSBsaXN0KGNvZWZm aWNpZW50cz0gTkEsICAgIHJlc2lkdWFscyA9IHlbcm93Lm5keF0sDQogICAg ICAgICAgICAgICAgIGVmZmVjdHMgPSBOQSwgcmFuayA9IDAsDQogICAgICAg ICAgICAgICAgIGZpdHRlZC52YWx1ZXMgPSAwICpyb3cubmR4ICwgcXIgPSBO QSwgIA0KICAgICAgICAgICAgICAgICBhc3NpZ24gPSBOQSwgIGRmID0gTkEs IGRmLnJlc2lkdWFsID0gZGYuZXJyb3JbaV0sDQogICAgICAgICAgICAgICAg ICAgcmVzaWQuYXNzaWduID0gMTpkZi5lcnJvcltpXSkNCiAgICAgICB9DQog ICAgICBjbGFzcyh6aSkgPC0gYygiYW92IiwibG0iKQ0KICAgICAgeltbaV1d IDwtIHppDQogICAgfQ0KICBuYW1lcyh6KSA8LSAgYyggaWYoYXR0cihlbXQs ImludGVyY2VwdCIpKSAiKEludGVyY2VwdCkiLA0KICAgICAgICAgICAgICAg ICBhdHRyKGVtdCwidGVybS5sYWJlbHMiKSwiV2l0aGluIikNCiAgYXR0cih6 LCJyZXNwb25zZSIpIDwtICBhdHRyKGVtdCwidmFyaWFibGVzIilbWzJdXQ0K ICBhdHRyKG10LCJzcGVjaWFscyIpIDwtIGxpc3QoRXJyb3I9ZW10KQ0KICBh dHRyKHosInRlcm1zIikgPC0gIG10DQogIGF0dHIoeiwiY2FsbCIpIDwtIG1h dGNoLmNhbGwoKQ0KICBjbGFzcyh6KSA8LSBjKCJhb3ZsaXN0IiwibGlzdG9m IikNCiAgfQ0KICB6DQp9DQoNCg0KDQogd2VpZ2h0cy5hb3YgPC0gZnVuY3Rp b24gKHgpICB4JHdlaWdodHMNCiByZXNpZHVhbHMuYW92IDwtIGZ1bmN0aW9u ICh4KSAgeCRyZXNpZHVhbHMNCiBkZi5yZXNpZHVhbC5hb3YgPC0gZnVuY3Rp b24gKHgpICB4JGRmLnJlc2lkdWFsDQoNCg0KcHJpbnQuYW92IDwtIGZ1bmN0 aW9uKG9iamVjdCwgZGlnaXRzPSAzLCAuLi4pDQp7DQogIGNhdCgiQ2FsbDpc biIpDQogIHByaW50KG9iamVjdCRjYWxsKQ0KICB3IDwtIHdlaWdodHMob2Jq ZWN0KQ0KICBjYXQocGFzdGUoIGlmKCFpcy5udWxsKHcpKSAiV2VpZ2h0ZWQi LCAiUmVzaWR1YWxzOlxuIikpDQogIGlmIChpcy5udWxsKHcpKSB7DQogICAg c3NyIDwtIHN1bShyZXNpZChvYmplY3QpXjIpDQogICAgcHJpbnQoc3VtbWFy eShhcy5udW1lcmljKHJlc2lkKG9iamVjdCkpKSkNCiAgfQ0KICBlbHNlew0K ICAgIHNzciA8LSBzdW0odyAqIHJlc2lkKG9iamVjdCleMikNCiAgICBwcmlu dChzdW1tYXJ5KGFzLm51bWVyaWMoc3FydCh3KSAqIHJlc2lkKG9iamVjdCkp KSkNCiAgfQ0KICBwMSA8LSAxOm9iamVjdCRyYW5rDQogIGNvbXAgPC0gb2Jq ZWN0JGVmZmVjdHNbcDFdDQogIGFzZ24gPC0gb2JqZWN0JGFzc2lnbltvYmpl Y3QkcXIkcGl2b3RdW3AxXQ0KICBkZnIgPC0gZGYucmVzaWR1YWwob2JqZWN0 KQ0KICBzcyA8LSBjKGFzLm51bWVyaWMobGFwcGx5KHNwbGl0KGNvbXBeMiwg YXNnbiksIHN1bSkpLCBzc3IpDQogIGRmIDwtIGMoYXMubnVtZXJpYyhsYXBw bHkoc3BsaXQoYXNnbiwgICBhc2duKSwgbGVuZ3RoKSksIGRmcikNCiAgaWYg KGF0dHIob2JqZWN0JHRlcm1zLCAiaW50ZXJjZXB0IikpIHsNCiAgICBzcyA8 LSBzc1stMV0NCiAgICBkZiA8LSBkZlstMV0NCiAgfQ0KICBtcyA8LSBzcy9k Zg0KICBtc1tpcy5uYW4obXMpXSA8LSBOQQ0KICBmIDwtIGlmKGRmciA+IDFl LTEwKSBtcy8oc3NyL2RmcikNCiAgICAgICBlbHNlIHJlcChOQSxsZW5ndGgo ZGYpKQ0KICBwIDwtIDEgLSBwZihmLCBkZiwgZGZyKQ0KICB0YWJsZSA8LSBj YmluZChkZiwgc3MsIG1zLCBmLCBwKQ0KICB0YWJsZVtsZW5ndGgocCksIDQ6 NV0gPC0gTkENCiAgZGltbmFtZXModGFibGUpIDwtIGxpc3QoYyhhdHRyKG9i amVjdCR0ZXJtcywidGVybS5sYWJlbHMiKSwiUmVzaWR1YWwiKSwNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgYygiRGYiLCAiU3VtIFNxIiwgIk1lYW4g U3EiLCAiRiIsICJQcig+RikiKSkNCiAgcmVzdWx0IDwtIGxpc3QodGFibGUg PSB0YWJsZSwgdGl0bGUgPQ0KICAgICAgICAgcGFzdGUoIkFuYWx5c2lzIG9m IFZhcmlhbmNlIFRhYmxlXG5SZXNwb25zZToiLCBmb3JtdWxhKG9iamVjdClb WzJdXSkpDQogIGNsYXNzKHJlc3VsdCkgPC0gInRhYnVsYXIiDQogIHByaW50 KHJlc3VsdCkNCiAgbm9uLmVzdC50ZXJtcyA8LSBsZW5ndGgob2JqZWN0JGNv ZWZbaXMubmEob2JqZWN0JGNvZWYpXSkNCiAgaWYoIG5vbi5lc3QudGVybXMg Pj0gMSkNCiAgICBjYXQocGFzdGUobm9uLmVzdC50ZXJtcywgIm91dCBvZiIs IGxlbmd0aChvYmplY3QkY29lZiksDQogICAgICAgICAgICAgICJjb2VmZmlj aWVudHMgYXJlIG5vdCBlc3RpbWFibGUuXG4iKSkNCiAgY2F0KHBhc3RlKCJS ZXNpZHVhbCBzdGFuZGFyZCBlcnJvcjoiLCByb3VuZChzcXJ0KG1zW2xlbmd0 aChtcyldKSxkaWdpdHMpLA0KICAgICAgICAgICAgIm9uIiwgZGZyLCAiZGVn cmVlcyBvZiBmcmVlZG9tXG4iKSkNCiAgY292LnVuc2NhbGVkIDwtIGNob2wy aW52KG9iamVjdCRxciRxclsxOm9iamVjdCRyYW5rLCAxOm9iamVjdCRyYW5r LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRy b3AgPSBGQUxTRV0pDQogICMjIENoZWNrIHRvIHNlZSBpZiBpbnZlcnNlIHZh ci1jb3ZhcmlhbmNlIGlzIGEgZGlhZ29uYWwgbWF0cml4DQogIGlmKG1heChh YnMoY292LnVuc2NhbGVkW3Jvdyhjb3YudW5zY2FsZWQpID4gY29sKGNvdi51 bnNjYWxlZCldKSkgPiAxZS0xMCkNCiAgICBjYXQoIkVzdGltYXRlZCBlZmZl Y3RzIG1heSBiZSB1bmJhbGFuY2VkLlxuIikNCiAgZWxzZSBjYXQoIkVzdGlt YXRlZCBlZmZlY3RzIGFyZSBiYWxhbmNlZFxuIikNCiAgY2F0KCJGb3IgZGV0 YWlscyBvbiBjb2VmZmljaWVudHMgdXNlIHN1bW1hcnkubG1cbiIpDQogIGlu dmlzaWJsZShyZXN1bHQpDQp9DQogIA0KICANCnByb2ouYW92IDwtIGZ1bmN0 aW9uKHgseSxvbmVkZil7DQogeQ0KfQ0KDQoNCnByZWRpY3QuYW92IDwtIA0K ZnVuY3Rpb24gKG9iamVjdCwgbmV3ZGF0YSA9IG1vZGVsLmZyYW1lKG9iamVj dCksIGNvbmYubGV2ZWwgPSAwLjk1LCANCgkgICAgdG9sLmxldmVsID0gY29u Zi5sZXZlbCkgDQp7DQoJICAgIGZvcm0gPC0gZGVsZXRlLnJlc3BvbnNlKHRl cm1zKG9iamVjdCkpDQoJICAgIFggPC0gbW9kZWwubWF0cml4KGZvcm0sIG5l d2RhdGEpDQoJICAgIG4gPC0gTlJPVyhvYmplY3QkcXIkcXIpDQoJICAgIHAg PC0gb2JqZWN0JHJhbmsNCgkgICAgcDEgPC0gMTpwDQoJICAgIHBpdiA8LSBv YmplY3QkcXIkcGl2b3RbcDFdDQoJICAgIHIgPC0gcmVzaWQob2JqZWN0KQ0K CSAgICBmIDwtIGZpdHRlZChvYmplY3QpDQoJICAgIHcgPC0gd2VpZ2h0cyhv YmplY3QpDQoJICAgIHJzcyA8LSBzdW0oaWYgKGlzLm51bGwodykpIA0KCSAg ICAJICAgIHJeMg0KCSAgICBlbHNlIHcgKiByXjIpDQoJICAgIFIgPC0gY2hv bDJpbnYob2JqZWN0JHFyJHFyW3AxLCBwMSwgZHJvcCA9IEZBTFNFXSkNCgkg ICAgZXN0IDwtIG9iamVjdCRjb2VmZmljaWVudHNbcGl2XQ0KCSAgICBwcmVk aWN0b3IgPC0gYyhYWywgcGl2LCBkcm9wID0gRl0gJSolIGVzdCkNCgkgICAg aXAgPC0gcmVhbChOUk9XKFgpKQ0KCSAgICByZXN2YXIgPC0gcnNzLyhuIC0g cCkNCgkgICAgdmNvdiA8LSByZXN2YXIgKiBSDQoJICAgIGZvciAoaSBpbiAo MTpOUk9XKFgpKSkgew0KCSAgICAJICAgIHhpIDwtIFhbaSwgcGl2XQ0KCSAg ICAJICAgIGlwW2ldIDwtIHhpICUqJSB2Y292ICUqJSB4aQ0KCSAgICB9DQoJ ICAgIHN0ZGVycjEgPC0gc3FydChpcCkNCgkgICAgc3RkZXJyMiA8LSBzcXJ0 KHJlc3ZhciArIGlwKQ0KCSAgICB0dDEgPC0gcXQoKDEgLSBjb25mLmxldmVs KS8yLCBuIC0gcCkNCgkgICAgdHQyIDwtIHF0KCgxIC0gdG9sLmxldmVsKS8y LCBuIC0gcCkNCgkgICAgY29uZi5sIDwtIHByZWRpY3RvciArIHR0MSAqIHN0 ZGVycjENCgkgICAgY29uZi51IDwtIHByZWRpY3RvciAtIHR0MSAqIHN0ZGVy cjENCgkgICAgcHJlZC5sIDwtIHByZWRpY3RvciArIHR0MiAqIHN0ZGVycjIN CgkgICAgcHJlZC51IDwtIHByZWRpY3RvciAtIHR0MiAqIHN0ZGVycjINCgkg ICAgZGF0YS5mcmFtZShwcmVkaWN0b3IgPSBwcmVkaWN0b3IsIGNvbmYubCA9 IGNvbmYubCwgY29uZi51ID0gY29uZi51LCANCgkgICAgCSAgICBwcmVkLmwg PSBwcmVkLmwsIHByZWQudSA9IHByZWQudSwgcm93Lm5hbWVzID0gcm93bmFt ZXMobmV3ZGF0YSkpDQp9DQoNCiBzcGxpdC5mb3JtdWxhLmJ5RXJyb3IgPC0g ZnVuY3Rpb24gKGZvcm1sYSkgDQp7DQoJICAgIHZhcnMgPC0gYXMuY2hhcmFj dGVyKGF0dHIodGVybXMoZm9ybWxhKSwgInRlcm0ubGFiZWxzIikpDQoJICAg IGV0ZXJtIDwtICgxOmxlbmd0aCh2YXJzKSlbY2hhcm1hdGNoKCJFcnJvciIs IHZhcnMpXQ0KCSAgICAjIyBObyBlcnJvciB0ZXJtIHVzZWQgaW4gZm9ybXVs YSwgcmV0dXJuIHRoZSBvcmlnaW5hbCBmb3JtdWxhDQoJICAgIGlmIChpcy5u YShldGVybSkgfCBpcy5udWxsKGV0ZXJtKSkgDQoJICAgIAkgICAgcmV0dXJu KGxpc3QoZXJyLmZvcm0gPSBOVUxMLCBtb2RlbC5mb3JtID0gZm9ybWxhKSkN CgkgICAgZWxlbmd0aCA8LSBuY2hhcih2YXJzW2V0ZXJtXSkgLSAxDQoJICAg IGVyci5mb3JtIDwtIGFzLmZvcm11bGEocGFzdGUoYXR0cih0ZXJtcyhmb3Jt bGEpLCAidmFyaWFibGVzIilbWzJdXSwgDQoJICAgIAkgICAgIn4iLCBzdWJz dHJpbmcodmFyc1tldGVybV0sIDcsIGVsZW5ndGgpKSkNCgkgICAgbW9kZWwu Zm9ybSA8LSBhcy5mb3JtdWxhKHBhc3RlKGMoYXMuY2hhcmFjdGVyKGF0dHIo dGVybXMoZm9ybWxhKSwgDQoJICAgIAkgICAgInZhcmlhYmxlcyIpW1syXV0p LCBwYXN0ZSh2YXJzWy1ldGVybV0sIGNvbGxhcHNlID0gIiArICIpKSwgDQoJ ICAgIAkgICAgY29sbGFwc2UgPSAiIH4gIikpDQoJICAgICMjIFVzZSB1cGRh dGUuZm9ybXVsYSBpbnN0ZWFkPyAgSSBjb3VsZG4ndCBnZXQgaXQgdG8gd29y ayByaWdodC4NCgkgICAgbGlzdChlcnJvci5mb3JtID0gZXJyLmZvcm0sIG1v ZGVsLmZvcm0gPSBtb2RlbC5mb3JtKQ0KfQ0KDQojIyBtb2RlbC5mcmFtZSBk b2Vzbid0IGhhbmRsZSBtdWx0aWNvbHVtbiB5IGluIHRoZSB3YXkgaW5kaWNh dGVkIGJ5IFN0YXQgbW9kZWxzIGluIFMgcCAxNTUNCiNUaGlzIHdvcmtzIGlm IHdhZmVybSBoYXMgY29sdW1uczogbWFza2RpbSwgdmlzYy50ZW0sIHNwaW5z cCwgYmFrZXRpbWUsIGFwZXJ0dXJlLCBleHB0aW1lLCBkZXZ0aW1lLGV0Y2h0 aW1lOg0KI3dtYW92IDwtIGxtKExpbmUgfm1hc2tkaW0gKyB2aXNjLnRlbStz cGluc3ArYmFrZXRpbWUrYXBlcnR1cmUrZXhwdGltZSArIGRldnRpbWUgK2V0 Y2h0aW1lLHdhZmVybSkNCg0KIyMgVGhpcyBkb2Vzbid0IHdvcmsgOg0KIyB3 YWZlcm0kTGluZSA8LSBjYmluZChwcmUubWVhbixsb2cocHJlLmRldikscG9z dC5tZWFuLGxvZyhwb3N0LmRldikpDQojPiB3bWFvdiA8LSBhb3YoTGluZSB+ Lix3YWZlcm0pDQojRXJyb3I6IE9iamVjdCAiTGluZS4xIiBub3QgZm91bmQN CiNFcnJvciBhcHBlYXJzIGluIC5JbnRlcm5hbChtb2RlbC5mcmFtZSkNCg0K I0luIHRoZSBjYXNlIGFib3ZlIHdoaWNoIHdvcmtzLCBzdW1tYXJ5LmxtIGRv ZXNuJ3QgaGFuZGxlIHRoZSBjb2VmZmljaWVudHMgcHJvcGVybHkuIE5lZWQg YSBzdW1tYXJ5Lm1sbS4NCg0KDQpwcmludC5tYW92IDwtIGZ1bmN0aW9uKG9i amVjdCl7DQogIGZvcihyZXNwIGluIGRpbW5hbWVzKG9iamVjdCRjb2VmZmlj aWVudHMpW1syXV0pew0KICAgIGNhdChwYXN0ZSgiXG4gUmVzcG9uc2U6ICIs cmVzcCwiXG4iKSkNCiAgICBvYmogPC0gb2JqZWN0DQogICAgb2JqJGNvZWZm aWNpZW50cyA8LSBvYmplY3QkY29lZmZpY2llbnRzWyxyZXNwLGRyb3A9RkFM U0VdDQogICAgb2JqJGVmZmVjdHMgPC0gb2JqZWN0JGVmZmVjdHNbLHJlc3As ZHJvcD1GQUxTRV0NCiAgICBvYmokcmVzaWR1YWxzIDwtIG9iamVjdCRyZXNp ZHVhbHNbLHJlc3AsZHJvcD1GQUxTRV0NCiAgICBvYmokZml0dGVkLnZhbHVl cyA8LSBvYmplY3QkZml0dGVkLnZhbHVlc1sscmVzcCxkcm9wPUZBTFNFXQ0K ICAgIG9iaiR0ZXJtc1tbMl1dIDwtIHJlc3ANCiAgICBwcmludC5hb3Yob2Jq KQ0KICB9DQp9DQoNCiAgc3VtbWFyeS5tYW92IDwtIGZ1bmN0aW9uKG9iamVj dCl7DQogIGZvcihyZXNwIGluIGRpbW5hbWVzKG9iamVjdCRjb2VmZmljaWVu dHMpW1syXV0pew0KICAgIGNhdChwYXN0ZSgiXG4gUmVzcG9uc2U6ICIscmVz cCwiXG4iKSkNCiAgICBvYmogPC0gb2JqZWN0DQogICAgb2JqJGNvZWZmaWNp ZW50cyA8LSBvYmplY3QkY29lZmZpY2llbnRzWyxyZXNwLGRyb3A9RkFMU0Vd DQogICAgb2JqJGVmZmVjdHMgPC0gb2JqZWN0JGVmZmVjdHNbLHJlc3AsZHJv cD1GQUxTRV0NCiAgICBvYmokcmVzaWR1YWxzIDwtIG9iamVjdCRyZXNpZHVh bHNbLHJlc3AsZHJvcD1GQUxTRV0NCiAgICBvYmokZml0dGVkLnZhbHVlcyA8 LSBvYmplY3QkZml0dGVkLnZhbHVlc1sscmVzcCxkcm9wPUZBTFNFXQ0KICAg IG9iaiR0ZXJtc1tbMl1dIDwtIHJlc3ANCiAgICBwcmludChzdW1tYXJ5LmFv dihvYmopKQ0KICB9DQp9DQoNCnByaW50Lm1sbSA8LSBmdW5jdGlvbihvYmpl Y3Qpew0KICBmb3IocmVzcCBpbiBkaW1uYW1lcyhvYmplY3QkY29lZmZpY2ll bnRzKVtbMl1dKXsNCiAgICBjYXQocGFzdGUoIlxuIFJlc3BvbnNlOiAiLHJl c3AsIlxuIikpDQogICAgb2JqIDwtIG9iamVjdA0KICAgIG9iaiRjb2VmZmlj aWVudHMgPC0gb2JqZWN0JGNvZWZmaWNpZW50c1sscmVzcF0NCiAgICBvYmok ZWZmZWN0cyA8LSBvYmplY3QkZWZmZWN0c1sscmVzcF0NCiAgICBvYmokcmVz aWR1YWxzIDwtIG9iamVjdCRyZXNpZHVhbHNbLHJlc3BdDQogICAgb2JqJGZp dHRlZC52YWx1ZXMgPC0gb2JqZWN0JGZpdHRlZC52YWx1ZXNbLHJlc3BdDQog ICAgb2JqJHRlcm1zW1syXV0gPC0gcmVzcA0KICAgIHByaW50LmxtKG9iaikN CiAgfQ0KfQ0KDQogIHN1bW1hcnkubWxtIDwtIGZ1bmN0aW9uKG9iamVjdCl7 DQogIGZvcihyZXNwIGluIGRpbW5hbWVzKG9iamVjdCRjb2VmZmljaWVudHMp W1syXV0pew0KICAgIGNhdChwYXN0ZSgiXG4gUmVzcG9uc2U6ICIscmVzcCwi XG4iKSkNCiAgICBvYmogPC0gb2JqZWN0DQogICAgb2JqJGNvZWZmaWNpZW50 cyA8LSBvYmplY3QkY29lZmZpY2llbnRzWyxyZXNwXQ0KICAgIG9iaiRlZmZl Y3RzIDwtIG9iamVjdCRlZmZlY3RzWyxyZXNwXQ0KICAgIG9iaiRyZXNpZHVh bHMgPC0gb2JqZWN0JHJlc2lkdWFsc1sscmVzcF0NCiAgICBvYmokZml0dGVk LnZhbHVlcyA8LSBvYmplY3QkZml0dGVkLnZhbHVlc1sscmVzcF0NCiAgICBv YmokdGVybXNbWzJdXSA8LSByZXNwDQogICAgcHJpbnQoc3VtbWFyeS5sbShv YmopLHNpZ25pZi5zdGFycz1GQUxTRSkNCiAgfQ0KfQ0KDQpwcmludC5hb3Zs aXN0IDwtIA0Kc3VtbWFyeS5hb3ZsaXN0IDwtIGZ1bmN0aW9uIChvYmplY3Qs IGRpZ2l0cyA9IG1heCgzLCAuT3B0aW9ucyRkaWdpdHMgLSAzKSwgLi4uKQ0K ew0KICBjYXQocGFzdGUoYygiQW5hbHlzaXMgb2YgVmFyaWFuY2UuICBSZXNw b25zZSA9ICIpKSkNCiAgcHJpbnQoYXR0cihvYmplY3QsInRlcm1zIilbWzJd XSkNCiAgY2F0KCJDYWxsOlxuIikNCiAgcHJpbnQoYXR0cihvYmplY3QsImNh bGwiKSkNCiAgY2F0KCJcbiBTZXF1ZW50aWFsIEFuYWx5c2lzIFxuIikNCiAg bGlzdGxlbiA8LSBsZW5ndGgob2JqZWN0KQ0KICBmb3IoIGkgaW4gMjpsaXN0 bGVuKXsNCiAgICBjYXQocGFzdGUoYygiXG5FcnJvciBzdHJhdHVtOiIsIG5h bWVzKG9iamVjdClbaV0sIlxuIikpKQ0KICAgIHByaW50KHN1bW1hcnkuYW92 KG9iamVjdFtbaV1dLCBvbmUub2YubWFueSA9IFRSVUUpKQ0KICB9DQp9DQoN CnN1bW1hcnkuYW92IDwtIGZ1bmN0aW9uIChvYmplY3QsIG9uZS5vZi5tYW55 PUZBTFNFLCAuLi4pIA0Kew0KICB3IDwtIHdlaWdodHMob2JqZWN0KQ0KICBp ZiAoaXMubnVsbCh3KSkgew0KICAgIHNzciA8LSBzdW0ocmVzaWQob2JqZWN0 KV4yKQ0KICB9DQogIGVsc2V7DQogICAgc3NyIDwtIHN1bSh3ICogcmVzaWQo b2JqZWN0KV4yKQ0KICB9DQogIGRmciA8LSBkZi5yZXNpZHVhbChvYmplY3Qp DQogIGlmKCBvYmplY3QkcmFuayA+IDApew0KICAgIHAxIDwtIDE6b2JqZWN0 JHJhbmsNCiAgICBjb21wIDwtIG9iamVjdCRlZmZlY3RzW3AxXQ0KICAgIGFz Z24gPC0gb2JqZWN0JGFzc2lnbltvYmplY3QkcXIkcGl2b3RdW3AxXQ0KICAg IHNzIDwtIGMoYXMubnVtZXJpYyhsYXBwbHkoc3BsaXQoY29tcF4yLCBhc2du KSwgc3VtKSksIHNzcikNCiAgICBkZiA8LSBjKGFzLm51bWVyaWMobGFwcGx5 KHNwbGl0KGFzZ24sICAgYXNnbiksIGxlbmd0aCkpLCBkZnIpDQogICAgaWYg KGF0dHIob2JqZWN0JHRlcm1zLCAiaW50ZXJjZXB0IikpIHsNCiAgICAgIHNz IDwtIHNzWy0xXQ0KICAgICAgZGYgPC0gZGZbLTFdDQogICAgfQ0KICAgIG1z IDwtIHNzL2RmDQogICAgbXNbaXMubmFuKG1zKV0gPC0gTkENCiAgICBmIDwt IGlmKGRmciA+IDFlLTEwKSBtcy8oc3NyL2RmcikNCiAgICBlbHNlIHJlcChO QSxsZW5ndGgoZGYpKQ0KICAgIHAgPC0gMSAtIHBmKGYsIGRmLCBkZnIpDQog ICAgdGFibGUgPC0gY2JpbmQoZGYsIHNzLCBtcywgZiwgcCkNCiAgICB0YWJs ZVtsZW5ndGgocCksIDQ6NV0gPC0gTkENCiAgICBkaW1uYW1lcyh0YWJsZSkg PC0gbGlzdChjKGF0dHIob2JqZWN0JHRlcm1zLCJ0ZXJtLmxhYmVscyIpLCJS ZXNpZHVhbCIpLA0KICAgICAgICAgICAgICAgICAgICAgICAgICBjKCJEZiIs ICJTdW0gU3EiLCAiTWVhbiBTcSIsICJGIiwgIlByKD5GKSIpKQ0KICB9DQog IGVsc2V7DQogICAgdGFibGUgPC0gY2JpbmQoZGZyLCBzc3IsIHNzci9kZnIs IE5BLCBOQSkNCiAgICBkaW1uYW1lcyh0YWJsZSkgPC0gbGlzdCgiUmVzaWR1 YWwiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGMoIkRmIiwgIlN1 bSBTcSIsICJNZWFuIFNxIiwgIkYiLCAiUHIoPkYpIikpDQogIH0NCiAgICBp Zighb25lLm9mLm1hbnkpDQogICAgICBjYXQocGFzdGUoIkFuYWx5c2lzIG9m IFZhcmlhbmNlIFRhYmxlXG5SZXNwb25zZToiLCBmb3JtdWxhKG9iamVjdClb WzJdXSksDQogICAgICAgICJcbiIpDQogIHJlc3VsdCA8LSBsaXN0KHRhYmxl ID0gdGFibGUpDQogIGNsYXNzKHJlc3VsdCkgPC0gInRhYnVsYXIiDQogIHJl c3VsdA0KfQ0K --0-488534781-901753860=:6003-- -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html Send "info", "help", or "[un]subscribe" (in the "body", not the subject !) To: r-devel-request@stat.math.ethz.ch _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._