-############################################################
-############################################################
-#####
-##### BASIC ETHERNET RULES
-#####
-############################################################
-############################################################
+# output local host as user@host.domain
+R$- $@$1<@$w> user w/o host
+R$+<@$w> $@$1<@$w> this host
+R$+<@$=w> $@$1<@$w> or an alias
+R$+<@$-> $:$1<@$[$2$]> ask nameserver
+R$+<@$w> $@$1<@$w> this host
+R$+<@$-> $@$1<@$2.$D> if nameserver fails
+
+# if not local, and not a "fake" domain, ask the nameserver
+R$+<@$+.$~I> $@$1<@$[$2.$3$]> user@host.domain
+R$+<@[$+]> $@$1<@[$2]> already ok
+
+# output fake domains as user%fake@relay
+
+R$+<@$+.CSNET> $@$1%$2.CSNET<@relay.cs.net> user@host.CSNET
+R$+<@$+.BITNET> $@$1%$2.BITNET<@jade.berkeley.edu> user@host.bitnet
+R$+<@$+.UUCP> $@$2!$1<@$w> user@host.UUCP
+
+
+S27
+
+# cleanup
+R$*<$*>$* $1$2$3 defocus
+R$* $:$>3$1 now canonical form
+R$*%$*<@$w> $:$>9$1%$2 user%localhost@localdomain
+
+# pass <route-addr>'s through
+R<@$+>$* $@<@$[$1$]>$2 resolve <route-addr>
+
+# map colons to dots everywhere
+R$*:$* $1.$2 map colons to dots