Subject: A brief history of BSD UNIX

From: "Nadav Har'El" <[email-masked]>
Date: Thu, 17 Jan 2002 15:09:33 +0200

Here's the short account of the history of BSD UNIX I promised this list
I'd write.
Please inform me of any errors I have in this account, since for obvious
reasons I don't have personal experience with much of the UNIX versions
I will write about: when 1BSD came out, I was probably playing in a sandbox
in nursery school ;)

The morals of the following account are these:
 1. The "open source" and "free software" sprits existed well before
    GNU (1983) or Linux (1991).
 2. Contrary to what Linus might think, "the pot-smoking hippies at Berkeley"
    actually did contribute a lot to the design of modern UNIX.

Early history
-------------

  The UNIX system was started in 1969 in AT&T's Bell Telephone Laboratories
(in New Jersey), by Ken Thompson and his colleagues, and originally written
for the PDP-7. Dennis Ritchie helped in 1970 to port the UNIX kernel to the
PDP-11. By 1972, UNIX started prospering in Bell Labs, and the second edition
of the UNIX manual included the following comment:

   "The number of UNIX installations has grown to 10, with more expected."

  By 1973, Ritchie had designed and wrote a compiler for the C language, and
then Thompson and Ritchie rewrote the UNIX kernel in C --- breaking away from
the tradition that system software should be written in assembly language.

  Around 1974, Ritchie and Thompson report in an article (Communications of the ACM, July 1974) of over 600 UNIX installations, and amusingly that "it can run
on hardware costing as little as $40,000". By that year, UNIX was licensed
to universities "for educational purposes" (for a very low charge) and a few
years later became available for commercial use.

  Universities got for a tiny price (reportedly as little as $150) "source
licenses" to UNIX, meaning that their students and professors could actually
see UNIX's source code, study it (UNIX employed many of the OS-theory ideas
of the time), and even change it --- though the source code still belonged
to AT&T. A mere decade later, in 1984, Fortune runs an article saying that
out of 750 universities around the world, about 80% of those offering computer
science degrees, have UNIX licenses.

  Thompson went in the fall of 1974 for one year of sabbatical at UC Berkeley,
where he left behind a tape with UNIX for the curious graduate students.
Led by Bill Joy, they started making changes to the UNIX kernel and utilities,
and distributing them (to other holders of the AT&T source license) as "BSD"
(Berkeley Software Distribution). BSD, the first version of which was released
in 1978, would eventually include some major improvements to AT&T's UNIX,
such as virtual memory, TCP/IP, job control, and even the VI editor (written
by Bill Joy). Many of these changes were later incorporated back into AT&T's
research and commercial UNIX versions.

  Funded by a DARPA contract for incorporating TCP/IP into BSD, the CSRG
(Computer Systems Research Group) was formed in 1980 in Berkeley for working
on BSD UNIX, until the group was finally disbanded in 1995.

BSD releases included 1BSD (March 1978) and 2BSD (May 1979) based on AT&T
Sixth Edition Research UNIX, and later incorporated AT&T's Seventh Edition
and "32V" code into 3BSD (March 1980), 4.0BSD (October 1980),
4.1BSD (June 1981), 4.2BSD (September 1983), 4.3BSD (June 1986),
4.3BSD Tahoe and Net/1 (June 1988), 4.3BSD Reno and Net/2 (June 1990),
and finally 4.4BSD (June 1993).

Modern history
--------------

  By 1992, most of AT&T's original code has already disappeared from BSD,
and a commercial company, BSDI (Berkeley Software Design, Inc.) was spun
off to sell "BSD/386", a commercial version of BSD. BSDI was immediately
sued by USL (UNIX Systems Laboratories, owned by AT&T, Novell, Sun, and a
few other companies, and holding the rights to the UNIX system).
After two years of legal battles, 4.4BSD-Lite is released, differing
from 4.4BSD in just 3 files (out of about 18,000). The last BSD from Berkeley,
4.4BSD-Lite Release 2, was released in 1995 and the CSRG was disbanded.

  In the same year (1992), another 386 port spun off BSD: 386BSD, but this
one was meant to be freely distributable, rather than a commercial project.
William and Lynne Jolitz, writing a series of articles for the Dr. Dobb's
Journal, rewrote the pieces that were "tainted" by AT&T copyright and
finally released a working UNIX OS that "supposedly" didn't need an USL
source license. 386BSD version 0.1 (released on Bastille Day, 1992) became
the progenitor of the modern BSD operating systems (FreeBSD, NetBSD and
OpenBSD).

  In the following year, Jordan Hubbard, Rod Grimes and Nate Williams worked
on 386BSD and released a set of patches known as the "Unofficial 386BSD
Patchkit". After Jolitz removed his approval of this project in early
1993, at the end of the year the patchkit got a new name: "FreeBSD 1.0" was
released. The BSDI/USL legal battle resulted in FreeBSD 2.0 being released
in November 1994, based on 4.4BSD Lite instead of Net/2.

  NetBSD 0.8 was released about six months before FreeBSD 1.0. People in
Virgina Tech were frustrated by the pace of work on 386BSD, and took Net/2
and code from 386BSD and ported it to the Macintosh. The development effort
soon expanded to the Atari ST, Amiga, and PC. This project was named "NetBSD"
(as a tribute to the principal way of their collaboration: the Internet).
It soon became obvious that FreeBSD's niche would be the i386 and NetBSD
would provide BSD for other platforms. As with FreeBSD, before NetBSD 1.0
was released, the developers were forced to change it to be based on 4.4BSD
Lite, instead of the copyright-"encumbered" 4.3BSD.

  In October 1995, OpenBSD was spun off NetBSD 1.1 by Theo de Raadt, who
had been responsible for the SPARC port of NetBSD as well as a few other
pieces of the system. OpenBSD quickly began focusing on security and strong
cryptography.

-- 
Nadav Har'El                        |     Thursday, Jan 17 2002, 4 Shevat 5762
[email-masked]             |-----------------------------------------
Phone: +972-53-245868, ICQ 13349191 |An egotist is a person of low taste, more
http://nadav.harel.org.il           |interested in himself than in me.

---

From: mulix <[email-masked]>
Date: Thu, 17 Jan 2002 20:24:36 +0200 (IST)

> I will write about: when 1BSD came out, I was probably playing in a sandbox

well, i'm even younger than you are [when you were playing in the
sandbox, i was merely a slight bulge in my mother's belly], but it feels
correct based on what i've read elsewhere, and the history of computers
is one of my favorite subject, so i read quite a lot.

your brief account does lack one things, imho - a "where are they today"
section.

[major snippage]
-- 
mulix

http://vipe.technion.ac.il/~mulix/
http://syscalltrack.sf.net/

---

From: Nimster <[email-masked]>
Date: Thu, 17 Jan 2002 22:03:02 +0200

[Snipped]
> is one of my favorite subject, so i read quite a lot.

And I'm even younger! Haha, I win.

> your brief account does lack one things, imho - a "where are they today"

And - "Where are we heading" would be nice. Seeing as the main branch of BSD
died with 4.4-lite R2 7 years ago (When I was just entering my second
decade!), is there a valid future for BSD in Open/Net/Free? What does it
hold?

Other than that, great post.

[Snipped mulix's huge sig]

-Nimster

---

From: "Nadav Har'El" <[email-masked]>
Date: Thu, 17 Jan 2002 22:20:46 +0200

> your brief account does lack one things, imho - a "where are they today"

Yes, because the purpose of it was to show the fancy 33-year history that
led to the existing BSD "offsprings", not to survey the existing O/Ss.
Here's a little regarding existing O/Ss (but without doing too much
research, so don't be too upset if you find factual errors below).

FreeBSD, NetBSD and OpenBSD still exist today with pretty much the same
focus they had when they started: FreeBSD still emphasizes 1 or 2 clean
ports, NetBSD emphasizes ports to dozens of different machines, and OpenBSD
prides itself in security (which is not to say that the others aren't as
secure or not secure enough). All of them are somewhat behind Linux in
supporting "modern" features like scalable SMP support, but they are not
too far behind (OpenBSD does seem to be left a little behind while it
focuses on security ad nauseam...).

BSDI (the commercial "Berkeley Software Design, Inc.") has lost much of its
appeal in the face of its free cousins, and as you know even Mosix turned its
back on BSDI (and switched to Linux) a few years ago. BSDI used to market
itself as an OS for Internet servers, but recently BSDI was acquired by
WindRiver (the company that wrote VXWorks and also bought PSOS, as far as
I know) and renamed BSD/OS, so I suppose their main focus now is on
"embedded" stuff (where Linux and its GPL can be a bit problematic at times).

Apple's OS/X and Darwin are also reportedly BSD-based, perhaps over CMU's
Mach Microkernel (like NeXTStep was) - but I'm not familiar with these
details, so maybe someone else can fill them in.

The fact that all these operating systems use BSD in their names and use
similar numbers is a bit confusing. For example, while 4.2BSD is a version
of BSD from the early 80s, BSD/OS 4.2 is the name of the latest version of
BSDI, FreeBSD 4.2 is a version from November 2000 (the current stable version
is 4.4, with 4.5 to be released later this month), while openBSD and
netBSD have smaller version numbers: 3.0 and 1.5.2 respectively. All of
these numbers have nothing to do with the original BSD numbering: as I
said all these operating systems are based on 4.4BSD-Lite.

And regarding other lineages of UNIX (not BSD): Solaris and a few other
dying (unfortunately...) UNIX variants are based on USL's System Vr4 (see
http://www.att.com/press/0790/900716.ula.html), which is sort of a merge of
AT&T's System V, 4.3BSD, and whatever research Unix they had at the time
(9th edition, if I remember correctly) - or something like that.
Again, someone else might be better informed than me on this (or do the
research).

The UNIX trademark is now owned by "The Open Group" (which if I remember
correctly also owns the X-Window System and Motif trademarks) - see
http://www.unix-systems.org/.
The Open Group is now a consortium of almost 200 companies, including, for
example Compaq, IBM, Sun, and HP. Curiously, it also has in it's member list
Motorola, Inc., which is listed with the country "Israel" (!).
I'd be happy if anyone could show me what kind of innovation these clowns
(together, as a group, not as separate companies) ever did in UNIX, besides
holding its trademark hostage :(

See http://www.unix-systems.org/what_is_unix/history_timeline.html
for more about these silly "UNIX wars" that resulted in silly consortiums
like OSF, X/Open and "The Open Group", and in the UNIX trademark changing
hands about 5 times during the 90s (AT&T, USL, Novell, X/Open, Open Group).

-- 
Nadav Har'El                        |     Thursday, Jan 17 2002, 5 Shevat 5762
[email-masked]             |-----------------------------------------
Phone: +972-53-245868, ICQ 13349191 |As far as we know, our computer has never
http://nadav.harel.org.il           |had an undetected error.

---

From: mulix <[email-masked]>
Date: Fri, 18 Jan 2002 02:05:09 +0200 (IST)

> [Snipped mulix's huge sig]

what? my sig follows every netiquette guide in existance, being 4 four
lines in length and correctly delimited. i demand a public apology,
youngster, or it's sabres at dawn!
-- 
mulix

---

From: Shlomi Fish <[email-masked]>
Date: Fri, 18 Jan 2002 08:47:10 +0200 (IST)

Hi! I like your overview - several notes, though:

1. Apple's Darwin is based on FreeBSD, from what I read somewhere (Google
for it). Apple recently hired a FreeBSD developer to work on Darwin.

2. I believe you should mention that the TCP/IP stack that was developed
for 4.3BSD was eventually integrated into the commercial SysV UNIXes.

It is possible the same thing happened with other things that originated
in BSD.

--

I forgot my third remark, so I'll let you know when I recall it.

Regards,

	Shlomi Fish

----------------------------------------------------------------------
Shlomi Fish        [email-masked]
Home Page:         http://t2.technion.ac.il/~shlomif/
Home E-mail:       [email-masked]

"Let's suppose you have a table with 2^n cups..."
"Wait a second - is n a natural number?"

---

From: Adi Stav <[email-masked]>
Date: Fri, 18 Jan 2002 21:18:02 +0200

> I will write about: when 1BSD came out, I was probably playing in a sandbox

Great summary! I like it. 

By the way, search for a most excellent Salon article series from 
about a year or two ago about the early days of BSD if you haven't 
done so already. 

>     GNU (1983) or Linux (1991).

How so? [FLAME TIME! All take cover!]

>     actually did contribute a lot to the design of modern UNIX.

Some of which you didn't mention:

- Sockets. I'm not sure if they had the first TCP/IP implementation,
  but hey did not have the only one, and sockets go beyond TCP/IP.
- Job control
- csh (which I personally don't like due to compatibility issues, but
  did pioneer a few important areas in shells)
- Symbolic links
- The hashbang

---

From: Shlomi Fish <[email-masked]>
Date: Sat, 19 Jan 2002 09:04:35 +0200 (IST)

>   but hey did not have the only one, and sockets go beyond TCP/IP.

4.3BSD had in fact the first working TCP/IP implementation. From what I
was told, that was the first place in which Sockets as a network layer
abstraction were introduced to the world. What properietary SVR4 and SVR3
UNIXes did was copy the TCP/IP subsystem of 4.3BSD and adapt it to their
own kernels.

From what I read in TCP/IP Illustrated volume 1, all IPC file-like
primitives in BSD (e.g: anonymous pipes, named pipes and the various
sockets) were implemented using sockets internally in the kernel.

This reminds that I once told about it to a work coleague who used to
drive me to work. So, he asked me if "the BSD people introduced a TCP/IP
module to the BSD kernel.". I spent a large part of the ride explaining
him the difference between a module and a subsystem. ;-)

Regards,

	Shlomi Fish

> To unsubscribe from this group, send an email to:
> [email-masked]
>
>
>
> Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
>
>

---

From: "Nadav Har'El" <[email-masked]>
Date: Sat, 19 Jan 2002 16:52:37 +0200

> How so? [FLAME TIME! All take cover!]

Let's remember the context in which "free software" could exist in the late
70s (for example). Free software could not have been free in the sense that
"everyone in the world can use it", because back then most people couldn't
even afford the hardware needed to run relatively-"suphisticated" software.
Remember I said the UNIX guys took pride in that it could be used on hardware
costing "as little as" $40,000? :)

Back than, computers (and not crappy game consoles) could only be found in
universities and large companies, so in that era free software (whether it
was explicitly called that, or just have been free de-facto) meant sharing
of software freely between Universities (UCB, MIT, CMU, and hundreds of other
universities in the US and outisde the US) and large companies (like AT&T,
IBM, and so on).
Another thing needed for the success of free or "open source" software was
a cheap, convenient way to send sources, patches, and so on. Around that
time (say, the end of the 70s) ARPANET was taking off (as well as other
networking concepts, like UUCP), so the aforementioned universities and
companies had relatively-convenient means of sharing sources and patches.
Remember that UCB (Berkeley, California) and Bell Labs (Murray Hill, New
Jersey) were about as far as you can get on the continental U.S.

UNIX itself, since the middle of the 70s, has been run somewhat like a
modern "open source program" (though not "free" software, because AT&T
kept right on it); AT&T wrote the beginning of the code and gave many
other entities (especially universities) the source code. These universities
(like UCB, but also others) made improvements, small or big, and sent the
patches back to AT&T, and to the other people in the world interested in
those patches. Other universities started huge projects on top of this
"open source" UNIX system and gave away what they wrote for free (e.g.,
MIT's Athena project and the X Window System).

I believe that RMS's GNU project was started in MIT when this spirit had
already existed for several years (and not only regarding UNIX - MIT also
used an homegrown OS whose name I forgot). He thought that it is a shame
that while MIT, UCB and other universities did so much work on free extensions
and improvements to the UNIX system, the base of the UNIX system itself was
not free - so he decided he (and his "followers") should rewrite a free
version of the base UNIX system.

>   but hey did not have the only one, and sockets go beyond TCP/IP.

AT&T had in System V a different networking interface (TLI? it never
actually caught on) that was designed with the OSI "layered" networking
in mind, and didn't fit very well with the TCP/IP actual mode of thinking.
I remember several versions of AT&T UNIX that did not have sockets at all -
this was indeed a BSD invention. I assume this was invented by the CSRG
when DARPA comissioned them to add TCP/IP support to BSD, but I'm not sure.

AT&T had in several points of time ideas which they tried to put into UNIX
that never caught on. Such was their TLI, and such was their "datakit" (an
AT&T-invented Ethernet replacement that was still in common use in AT&T in
the end of the 80s). Another interesting AT&T invention that never caught on
was their "jerq" terminals (5620 DMD, 630, 730, etc): in the early 80s AT&T
was manufacturing monochrome bitmap CRT displays with an integrated (Motorolla)
CPU, that worked sort of like "network computers": you would download software
into the terminal (e.g., a terminal emulator, a clock application, an editor's
front end like "sam" (which later became plan9's editor)), and have a very
nice windowing terminal (complete with mouse and everything). The DMD was a
much more usable solution than MIT's X-Windows when it came to slow networks
(e.g., a 1200 baud modem! the DMD was an excellent "work-at-home" solution),
and was also very usable for fast LANs (i.e., the "datakit").

> - Job control

Right :)
I do remember AT&T Unix not having job control at some point. Maybe in
System V R3, or in 8th edition research UNIX. Later it was added from BSD.

>   did pioneer a few important areas in shells)

Ok, so not everything was done right in Berkeley ;)

Another annoying thing they did was to change the arguments of simple
commands like "ps". It still causes confusion for UNIX users (and
especially System V R4 systems like Solaris) two decades later...

-- 
Nadav Har'El                        |     Saturday, Jan 19 2002, 6 Shevat 5762
[email-masked]             |-----------------------------------------
Phone: +972-53-245868, ICQ 13349191 |Early bird gets the worm, but the second
http://nadav.harel.org.il           |mouse gets the cheese.

---

From: "Nadav Har'El" <[email-masked]>
Date: Sat, 19 Jan 2002 17:01:32 +0200

> for it). Apple recently hired a FreeBSD developer to work on Darwin.

This is what I also thought at first, but I'm no longer sure, and I can't
find a good article about that on the web. Looking at freebsd.org, there
is no complete port to the PowerPC (the MAC's CPU). NetBSD, on the other
hand does have a working PowerPC port.
Anyway, I also thought that Apple integrated some of Job's previous pet
ideas (NeXTStep, Raphsody, Mach) into this OS/X, and that it wasn't a
straight FreeBSD implementation.

Anyway, these are just my speculations - if someone can point us to a good
article on what the heck Mac OS/X *really* is (or write a good summary here),
it would be nice.

-- 
Nadav Har'El                        |     Saturday, Jan 19 2002, 6 Shevat 5762
[email-masked]             |-----------------------------------------
Phone: +972-53-245868, ICQ 13349191 |Always remember you're unique, just like
http://nadav.harel.org.il           |everyone else.

---

From: mulix <[email-masked]>
Date: Sat, 19 Jan 2002 17:32:45 +0200 (IST)

> version of the base UNIX system.

I very highly recommend Steven Levy's book Hackers - Heroes of
the Computer Generation, for people interested in the origins of the
free software movement and hacking.
http://mosaic.echonyc.com/~steven/hackers.html

From the web page: "The book is in three parts, exploring the canonical
AI hackers of MIT, the hardware hackers who invented the personal
computer industry in Silicon Valley, and the third-generation game
hackers in the early 1980s."

Personally, I saw it mentioned on the net a few years ago, and was
highly intrigued. But since I could not afford to buy it at the time
(also, afaicr, it was out of print), I tracked a copy in Haifa
University's library, went there, and spent a very pleasurable afternoon
sitting on the floor between the book shelves and reading it.
-- 
mulix

---

From: Adi Stav <[email-masked]>
Date: Sat, 19 Jan 2002 21:19:44 +0200

> > How so? [FLAME TIME! All take cover!]
.
.
> version of the base UNIX system.

Right. So the Free Software spririt of software freedom as an /ideal/
did not exist before GNU. Distributed development started rising with 
UNIX, but not necessarily completely due to, or after, BSD alone.

> and was also very usable for fast LANs (i.e., the "datakit").

Ooh, Java!

> Ok, so not everything was done right in Berkeley ;)

I find I can usually spot BSD additions by search for a slight air of 
kludginess that I can't really put my finger on. Thompson's original 
had no such kludginess on the most part. E.g., hashbang, symbolic 
links are all slightly kludgy. But then again, I'd consider 
mountpoints a BSD kludge if I did not know better.

> especially System V R4 systems like Solaris) two decades later...

Horrible. That and csh. incompatility for the sake of 
incompatibility.

---

From: Adi Stav <[email-masked]>
Date: Sat, 19 Jan 2002 21:22:52 +0200

> about a year or two ago about the early days of BSD if you haven't 

Found it!

http://www.salon.com/tech/fsp/2000/05/16/chapter_2_part_one/index.html

Highly recommended.

---

From: "Nadav Har'El" <[email-masked]>
Date: Sat, 19 Jan 2002 19:06:57 +0200

On Sat, Jan 19, 2002, Adi Stav wrote about "Re: [hackers-il] A brief history of BSD UNIX":
>...

Sort of, which is why when I first heard of plans to make "network computers",
"thin clients", "java terminals", and stuff like that, I felt a sense of
deja-vu.

But the DMD (and later terminals like the 630/730) was programmed using C
(and a special graphic library which called code that had already been
downloaded into the terminal's CPU; A downside to this was that because the
terminal had no permanent storage, every time you turned it on you'd have to
download the windowing code, named "mux", for multiplexor, which took at
least 15 minutes on a 1200 baud modem, or just seconds on the LAN).

This C code was then compiled using a cross-compiler for the Motorola CPU,
generating a binary file typically named something.m (m for Motorola, I
guess), which is then "downloaded" onto the terminal by running a special
program (whose name I forgot by now, unfortunately - It's been over 10 years
since I last saw this system in use). The 730 terminal had several improvents,
such as Mux code in ROM (so startup was much faster), shared memory (so if
the same application, e.g., a terminal emulator, is to run in two instances,
it only had to be uploaded to the terminal once), an ISDN connection, and so
on.

It was very interesting technology. I have no idea why it hasn't caught on
at the time: X Windows was totally irrelevant at the time for working on a
mainframe from home (and personal computers (with Motorolla CPU) running
UNIX were very expensive back then, and had tiny disks and memorys).
In some respects, for modem users X-Windows as a remote-work tool is still
irellevant: how many of you are running X applications on remote computers
and viewing the output through a modem (or even ISDN)? However, I guess that
now simply running Linux on your own PC mostly obliterates the need to run
applications on remote computers...

-- 
Nadav Har'El                        |     Saturday, Jan 19 2002, 7 Shevat 5762
[email-masked]             |-----------------------------------------
Phone: +972-53-245868, ICQ 13349191 |If Windows is the answer, you didn't
http://nadav.harel.org.il           |understand the question.

---

From: Adi Stav <[email-masked]>
Date: Sat, 19 Jan 2002 22:24:38 +0200

On Sat, Jan 19, 2002 at 07:06:57PM +0200, Nadav Har'El wrote:
.
.
> least 15 minutes on a 1200 baud modem, or just seconds on the LAN).

Wonder why they didn't download-on-demand or something.

> applications on remote computers...

I do all the time at home (an SGI O2 is my X terminal -- a terrible 
waste, but does its job remarkably well). Most of my co-workers do 
it all the time, too, as they use NT workstations but mostly work
with multiple Solaris and Red Hat servers at a time.

---

From: "Nadav Har'El" <[email-masked]>
Date: Sat, 19 Jan 2002 19:43:05 +0200

> http://www.salon.com/tech/fsp/2000/05/16/chapter_2_part_one/index.html

Really interesting :)
Thanks for the pointer. I haven't seen it before.

-- 
Nadav Har'El                        |     Saturday, Jan 19 2002, 7 Shevat 5762
[email-masked]             |-----------------------------------------
Phone: +972-53-245868, ICQ 13349191 |Sign in zoo: Do not feed the animals. If
http://nadav.harel.org.il           |you have food give it to the guard on duty

---

From: "Nadav Har'El" <[email-masked]>
Date: Sat, 26 Jan 2002 19:30:41 +0200

> with multiple Solaris and Red Hat servers at a time.

But running X-Windows over a modem? I know it's doable, but its a really
painful (i.e., slow) way to work, like a form of torture. You're much
better off doing an ssh to the remote computer than running "xterm" on it,
for example.

By the way, I found on the net an interesting quotation attributed to Rob
Pike about what he thought about the X Window System. I'm not sure he really
said it (I couldn't find a reference), and I don't agree with it, but here
is the alleged quote:

"I have never seen anything fill up a vacuum so fast and still suck." -- Rob
Pike, commenting on The X Window System

-- 
Nadav Har'El                        |    Saturday, Jan 26 2002, 14 Shevat 5762
[email-masked]             |-----------------------------------------
Phone: +972-53-245868, ICQ 13349191 |"I don't use drugs, my dreams are
http://nadav.harel.org.il           |frightening enough." -- M. C. Escher