Thanks to lots of people for success and failure reports, code, ideas, and documentation. See CHANGES for details of specific contributions. Sorry if I left anyone out. A2B = Are Bryne A2L = Ali Lomonaco A2P = Andrea Paolini AAF = Adam A. Frey AB = Alan Briggs ABC = Alan B. Clegg AC = Arne Coucheron ACB = Andy C. Brandt AF = Andreas Faerber AG = Armin Gruner AGB = Andre Grosse Bley AH = Amos Hayes AI = Akihiro Iijima AJ = Alan Jaffray AJK = Antti-Juhani Kaijanaho AKB = Allen K. Briggs AL = Andreas Lamprecht ALB = Allan L. Bazinet ANR = Adriano Nagelschmidt Rodrigues AP = Andrew Pam AS = Akos Szalkai AV = Alex Vostrikov AWB = Andy W. Barclay AY = Araki Yasuhiro B1F = Bo Fussing B2F = Brad Forschinger B2H = Buck Huppmann B2L = Brent Laminack B2W = Bil Wendling B3W = Boris Wedl BB = Bruce Bodger BC = Bob Collie BCK = Benjamin C. Kite BCM = Bill C. Miller BDB = Boris D. Beletsky BDM = Byron D. Miller BEO = Bruce E. O'Neel BET = Bennett E. Todd BG = Bert Gijsbers BH = Brad Howes BJ = Brian Jackson BJM = Barry J. Miller BL = Brian Litzinger BMF = Brian M. Fisk BN = Bill Nugent BP = Bruce Perens BR = Brian J. Reichert BS = Bjoern Stabell BT = Brad Templeton BTW = Brian T. Wightman BW = Bill Weinman BZ = Blaz Zupan C2F = Chuck Foster C2H = Christoph Heidermanns C2S = Craig Shrimpton CEJ = Colin Eric Johnson CF = C. Ferree CG = Chris Garrigues CH = Chael Hall CHR = Craig H. Rowland CK = Christoph Kaesling CL = Carsten Leonhardt CLS = Christopher L. Seawood CM = Charles Mattair CMP = Chase M. Phillips CR = Christian Riede CS = Cloyce Spradling CSH = Clayton S. Haapala D1H = Dieter Heidner D2H = Dan Hollis D2K = Dax Kelson D2S = Dan Senie D3S = Don Samek DA = Dave Arcuri DAR = Daniel A. Reish DB = David Buscher DBK = Douglas B. Kerry DC = Dan Cross DCC = Daniel C. Cotey DE = Daniel Egnor DEH = Daniel E. Harris DF = Dale Farnsworth DG = David Guntner DK = Dave Kopper DL = Daniel Lawrence DM = David Mazieres DML = David M. Lew DP = Dave Platt DS = Dave Sill DST = Daniel S. Thibadeau DWS = David Wayne Summers EC = Evan Champion ECG = Eric C. Garrison EG = Eivind Gjelseth EK = Eric Krohn EP = Emanuele Pucciarelli ERH = Eric R. Hankins ES = Eric Smith ESM = Edward S. Marshall ET = Eivind Tagseth ETT = Emmanuel T. Tardieu F2T = Frank Thieme FE = Frank Ederveen FN = Faried Nawaz FPL = Frederik P. Lindberg FT = Frank Tegtmeyer FW = Frank Wagner G1A = Graham Adams G2A = Greg Andrews GAW = Greg A. Woods GB = Glenn Barry GH = Gene Hightower GL = Giles Lean GLM = Grant L. Miller H2S = Harley Silver HCJ = Helio Coelho Jr. HDG = Hans de Graaff HG = Howard Goldstein HHO = Harald Hanche-Olsen HJB = Herbert J. Bernstein HM = Hirokazu Morikawa HS = Harlan Stenn HT = Henry Timmerman HW = Hal Wine HWM = Henry W. Miller IH = Ingmar Hupp IK = Ivan Kohler IKW = Ian Keith Wynne IS = Icarus Sparry IW = Ian Westcott J1B = John Banghart J1K = Jost Krieger J2B = Jos Backus J2K = Johannes Kroeger J2M = Joel Maslak J2P = John Parker J2W = Jim Whitby JAB = Jeremy A. Bussard JAK = Johan A. Kullstam JB = Joshua Buysse JBB = Jason B. Brown JBF = John B. Fleming JC = Jim Clausing JCD = Jeffrey C. Dege JD = Joe Doupnik JDHB = Johannes D. H. Beekhuizen JDJ = Joshua D. Juran JF = Janos Farkas JFK = James F. Kane III JGM = John G. Myers JJB = J. J. Bailey JJMK = Jonathan J. M. Katz JJR = Jaron J. Rubenstein JK = Jari Kirma JL = Jim Littlefield JLB = Julie L. Baumler JLH = Jason L. Haar JLW = Jason L. Wright JM = Jim Meehan JMS = Jason M. Stokes JMT = John M. Twilley JP = John Palkovic JPB = Joe Block JPH = Justin P. Hannah JPR = Jean-Pierre Radley JRL = John R. Levine JRM = Jason R. Mastaler JRY = Jamie R. Yukes JS = Jesper Skriver JTB = Jonathan T. Bowie JW = John Whittaker JWB = James W. Birdsall K1J = Kyle Jones K2J = Kevin Johnson KA = Klaus Aigte KB = Keith Burdis KE = Kenny Elliott KJJ = Kevin J. Johnson KJS = Kevin J. Sawyer KMD = Kevin M. Dulzo KO = Keith Owens KR = Kenji Rikitake KT = Karsten Thygesen KUT = Kai Uwe Tempel KY = Kentaro Yoshitomi L2L = Louis Larry L3L = Luis Lopes LB = Laurentiu Badea LL = lilo LW = Lionel Widdifield M2C = Mark Crimmins M2G = Michael R. Gile M2H = Martin Hager M2L = M. Lyons M2R = Mark Riekenberg M2S = Mikael Suokas M3H = Michael Holzt M3L = Michael Lazarou M3S = Morten Skjelland M4S = Michael Shields MB = Martin Budsj? MBS = Michael B. Scher MC = Michael Cooley MD = Mark Delany MDI = Miguel de Icaza ME = Marc Ewing MEE = Mads E. Eilertsen MF = Massimo Fusaro MG = Michael Graff MGM = Mitchell G. Morris MH = Markus Hofmann MJD = Mark-Jason Dominus MJG = Manuel J. Galan ML = Martin Lucina MLH = May Liss Haarstad MM = Martin Mersberger MMM = Momchil M. Momchev MMM2 = Marc M. Martinez MP = Matt Paduano MR = Mosfeq Rashid MRG = Matthew R. Green MS = Mark Spears MSD = Mandell S. Degerness MSS = Matthew S. Soffen MT = Mark Thompson MW = Mate Wierdl MWE = Mark W. Eichin NA = Norm Aleks NAA = Nicholas A. Amato NH = Nick Holloway NND = N. Dudorov NR = Norbert Roeding NW = Nicholas Waples OK = Oezguer Kesim OR = Ollivier Robert OS = Oliver Seiler PB = Peter Bowyer PCO = Peter C. Olsen PGF = Paul Fox PGR = Phil G. Rorex PH = Paul Harrington PJG = Paul Graham PJH = Peter J. Hunter PK = Petri Kaukasoina PMH = Peter M. Haworth PO = Paul Overell PS = Paul Svensson PT = Paul Taylor PTW = P. T. Withington PW = Peter Wilkinson R2N = Rivo Nurges RA = Russ Allbery RAB = Randolph Allen Bentson RAM = Robin A. McCollum RB = Robert Bridgham RC = Ryan Crum RD = Rahul Dhesi RDM = Raul D. Miller REB = Ronald E. Bickers RF = Rainer Fraedrich RFH = Robert F. Harrison RGS = Richard G. Sharman RJC = Robert J. Carter RJH = Randy Harmon RJO = Richard J. Ohnemus RK = Riho Kurg RL = Robert Luce RM = Rich McClellan RN = Russell Nelson RO = Roberto Oppedisano RPS = Russell P. Sutherland RS = Robert Sanders RSK = Robert S. Krzaczek S1R = Satish Ramachandran S2P = Stefan Puscasu S2R = Sean Reifschneider S2S = Scott Schwartz S2T = Steve Taylor S3T = Steffen Thorsen SA = Satoshi Adachi SAE = Stefaan A. Eeckels SAS = Steven A. Schrader SB = Stephane Bortzmeyer SC = Stefan Cars SCW = Steven C. Work SG = Steven Grimm SGC = Stephen G. Comings SJ = Sudish Joseph SJB = SJ Burns SJW = Stephen J. White SLB = Steven L. Baur SM = Shawn McHorse SP = Stephen Parker SPM = Salvatore P. Miccicke SS = Simon Shapiro SSB = Stik Bakken ST = Steve Tylock SV = Sven Velt SVD = Stef Van Dessel T2K = Tomoya Konishi T2M = Toni Mueller T2U = Todd Underwood TA = Tetsuo Aoki TB = Tobias Brox TD = Tom Demmer TEE = Thomas E. Erskine TG = Tim Goodwin TH = Ton Hospel TJH = Timothy J. Hunt TK = Terry Kennedy TL = Timothy Lorenc TLF = Timo L. Felbinger TLM = Timothy L. Mayo TM = Toshinori Maeno TN = Thomas Neumann TRR = Tracy R. Reed TT = Takaki Taniguchi TU = Tetsu Ushijima TV = Tommi Virtanen TVP = Tom van Peer UO = Uwe Ohse VBM = Vladimir B. Machulsky VR = Vincenzo Romano VU = Viriya Upatising VV = Vince Vielhaber W2K = Wolfram Kahl WEB = William E. Baxter WK = Werner Koch WS = Wilbur Sims WW = Wei Wu YC = Yuji Chikahiro YF = Yaroslav Faybishenko ZU = Zin Uda