Annotation of 43BSDTahoe/new/rn/Pnews.SH, revision 1.1

1.1     ! root        1: case $CONFIG in
        !             2:     '') . config.sh ;;
        !             3: esac
        !             4: echo "Extracting Pnews (with variable substitutions)"
        !             5: $spitshell >Pnews <<!GROK!THIS!
        !             6: $startsh
        !             7: # $Header: Pnews.SH,v 4.3.1.4 86/09/05 15:21:10 lwall Exp $
        !             8: #
        !             9: # $Log:        Pnews.SH,v $
        !            10: # Revision 4.3.1.4  86/09/05  15:21:10  lwall
        !            11: # Changes for new top-level newsgroup names.
        !            12: # 
        !            13: # Revision 4.3.1.3  85/08/01  14:24:06  lwall
        !            14: # Added AUTHORCOPY.  Temp file is no longer in /tmp.  'e editor' added.
        !            15: # 
        !            16: # Revision 4.3.1.2  85/05/17  10:36:46  lwall
        !            17: # Removed some extra backslashes.
        !            18: # 
        !            19: # Revision 4.3.1.1  85/05/10  11:30:21  lwall
        !            20: # Branch for patches.
        !            21: # 
        !            22: # Revision 4.3  85/05/01  12:20:33  lwall
        !            23: # Baseline for release with 4.3bsd.
        !            24: # 
        !            25: #
        !            26: # syntax: Pnews -h headerfile                  or
        !            27: #        Pnews -h headerfile oldarticle        or
        !            28: #         Pnews newsgroup title                        or just
        !            29: #         Pnews
        !            30: 
        !            31: export PATH || (echo "OOPS, this isn't sh.  Desperation time.  I will feed myself to sh."; sh \$0; kill \$\$)
        !            32: 
        !            33: # System dependencies
        !            34: 
        !            35: mailer="${mailer-/bin/mail}"
        !            36: # if you change this to something that does signatures, take out signature code
        !            37: 
        !            38: case $portable in
        !            39: define)
        !            40: # your site name
        !            41: sitename=\`$hostcmd\`
        !            42: # where recordings, distributions and moderators are kept
        !            43: lib=\`$filexp $lib\`
        !            44: # where important rn things are kept
        !            45: rnlib=\`$filexp $rnlib\`
        !            46: ;;
        !            47: undef)
        !            48: # your site name
        !            49: sitename="$sitename"
        !            50: # where recordings, distributions and moderators are kept
        !            51: lib="$lib"
        !            52: # where important rn things are kept
        !            53: rnlib="$rnlib"
        !            54: ;;
        !            55: esac
        !            56: 
        !            57: # your organization name
        !            58: orgname="$orgname"
        !            59: # what pager you use--if you have kernal paging use cat
        !            60: pager="\${PAGER-$pager}"
        !            61: # how you derive full names, bsd, usg, or other
        !            62: nametype="$nametype"
        !            63: # default editor
        !            64: defeditor="$defeditor"
        !            65: # how not to echo with newline
        !            66: n="$n"
        !            67: c="$c"
        !            68: 
        !            69: # You should also look at the distribution warnings below marked !DIST!
        !            70: # to make sure any distribution regions you are a member of are included.
        !            71: # The following are some prototypical distribution groups.  If you do not
        !            72: # use them all set the unused ones to a non-null string such as 'none'.
        !            73: loc="$locpref"
        !            74: org="$orgpref"
        !            75: city="$citypref"
        !            76: state="$statepref"
        !            77: cntry="$cntrypref"
        !            78: cont="$contpref"
        !            79: 
        !            80: test=${test-test}
        !            81: sed=${sed-sed}
        !            82: echo=${echo-echo}
        !            83: cat=${cat-cat}
        !            84: egrep=${egrep-egrep}
        !            85: grep=${grep-grep}
        !            86: rm=${rm-rm}
        !            87: tr=${tr-tr}
        !            88: inews=${inews-inews}
        !            89: 
        !            90: !GROK!THIS!
        !            91: $spitshell >>Pnews <<'!NO!SUBS!'
        !            92: dotdir=${DOTDIR-${HOME-$LOGDIR}}
        !            93: tmpart=$dotdir/.article
        !            94: 
        !            95: if $test -f $dotdir/.pnewsexpert; then
        !            96:     expertise=expert
        !            97: else
        !            98:     $cat <<'EOM'
        !            99: I see you've never used this version of Pnews before.  I will give you extra
        !           100: help this first time through, but then you must remember what you learned.
        !           101: If you don't understand any question, type h and a CR (carriage return) for
        !           102: help.
        !           103: 
        !           104: If you've never posted an article to the net before, it is HIGHLY recommended
        !           105: that you read the netiquette document found in mod.announce.newusers so
        !           106: that you'll know to avoid the commonest blunders.  To do that, interrupt
        !           107: Pnews, and get to the top-level prompt of rn.  Say "g mod.announce.newusers"
        !           108: and you are on your way.
        !           109: 
        !           110: EOM
        !           111:     expertise=beginner
        !           112: fi
        !           113: 
        !           114: case $cntry in
        !           115:   can) stpr=Province ;;
        !           116:   *)   stpr=State ;;
        !           117: esac
        !           118: 
        !           119: headerfile=""
        !           120: case $# in
        !           121: 0) ;;
        !           122: *)  case $1 in
        !           123:     -h)
        !           124:        headerfile="$2"
        !           125:        shift
        !           126:        shift
        !           127:        case $# in
        !           128:        0)
        !           129:            oldart=""
        !           130:            ;;
        !           131:        *)
        !           132:            oldart="$1"
        !           133:            shift
        !           134:            ;;
        !           135:        esac
        !           136:        ;;
        !           137:     esac
        !           138:     ;;
        !           139: esac
        !           140: 
        !           141: case $headerfile in
        !           142: '')
        !           143:     . $rnlib/Pnews.header
        !           144:     ;;
        !           145: *)
        !           146:     $cat < $headerfile  > $tmpart
        !           147:     ;;
        !           148: esac
        !           149:     rescue="sleep 1; $cat $tmpart >>${HOME-$LOGDIR}/dead.article ; $echo Article appended to ${HOME-$LOGDIR}/dead.article ; exit"
        !           150:     trap "$rescue" 1
        !           151:     trap "$rescue" 2
        !           152: 
        !           153: $echo ""
        !           154: set X `$sed < $tmpart -n -e '/^Distribution: /{' -e p -e q -e '}' -e '/^$/q'`
        !           155: shift
        !           156: case $# in
        !           157: 0|1)
        !           158:     set X `$sed < $tmpart -n -e '/^Newsgroups: /{' -e p -e q -e '}'`
        !           159:     shift
        !           160:     case $# in
        !           161:     0|1)
        !           162:        set "x misc.whatever"
        !           163:        ;;
        !           164:     esac
        !           165:     ;;
        !           166: *)
        !           167:     set $1 $2.whatever
        !           168:     ;;
        !           169: esac
        !           170: shift
        !           171: 
        !           172: #: play recorded message
        !           173: #if $test -s ${lib}/recording ; then
        !           174: #     ng=`$echo $1 | $sed "s/,.*//"`
        !           175: #    _rec1=${lib}/`$sed -n "/^$ng/s/^.*        //p" ${lib}/recording`
        !           176: #    _tmp=`$echo $ng |$sed "s/\..*//"`
        !           177: #    _rec2=${lib}/`$cat -s ${lib}/recording|$grep ${_tmp}.all|$sed "s/^.*      //"`
        !           178: #    if $test -f ${_rec1} ; then
        !           179: #      $cat -s ${_rec1}
        !           180: #    fi
        !           181: #    if $test -f ${_rec2} ; then
        !           182: #      $cat -s ${_rec2}
        !           183: #    fi
        !           184: #fi
        !           185: 
        !           186: # tell them what we think they are doing... !DIST!
        !           187: case $1 in
        !           188: net.*|world.*|comp.*|news.*|sci.*|rec.*|misc.*|soc.*|talk.*|mod.*)
        !           189:     $cat <<'EOM'
        !           190: This program posts news to thousands of machines throughout the entire
        !           191: civilized world.  You message will cost the net hundreds if not thousands of
        !           192: dollars to send everywhere.  Please be sure you know what you are doing.
        !           193: 
        !           194: EOM
        !           195:     ;;
        !           196: $cont.*)
        !           197:     $echo 'This program posts news to many machines throughout the continent.'
        !           198:     ;;
        !           199: $cntry.*)
        !           200:     $echo 'This program posts news to many machines throughout the country.'
        !           201:     ;;
        !           202: $state.*)
        !           203:     $echo 'This program posts news to many machines throughout the state.'
        !           204:     ;;
        !           205: $city.*)
        !           206:     $echo 'This program posts news to many machines throughout the city.'
        !           207:     ;;
        !           208: $org.*)
        !           209:     $echo 'This program posts news to machines throughout the organization.'
        !           210:     ;;
        !           211: $loc.*)
        !           212:     $echo 'This program posts news to machines throughout the local organization.'
        !           213:     ;;
        !           214: *.*)
        !           215:     $echo 'This program may post news to many machines.'
        !           216:     ;;
        !           217: *)
        !           218:     $echo 'This program posts news to everyone on the machine.'
        !           219:     ;;
        !           220: esac
        !           221: ans=""
        !           222: while $test "$ans" = "" ; do
        !           223:     $echo $n "Are you absolutely sure that you want to do this? [ny] $c"
        !           224:     read ans
        !           225:     case $ans in
        !           226:     y*) ;;
        !           227:     f*) suppressmess=y ;;
        !           228:     h*) $cat <<'EOH'
        !           229: 
        !           230: Type n or CR to exit, y to post.
        !           231: 
        !           232: EOH
        !           233:        ans="" ;;
        !           234:     *) exit ;;
        !           235:     esac
        !           236: done
        !           237: 
        !           238: file=h
        !           239: while $test "$file" = h ; do
        !           240:     $echo ""
        !           241:     $echo $n "Prepared file to include [none]: $c"
        !           242:     read file
        !           243:     case $file in
        !           244:     h)
        !           245:        $cat <<'EOH'
        !           246: 
        !           247: If you have already produced the body of your article, type the filename
        !           248: for it here.  If you just want to proceed directly to the editor, type a
        !           249: RETURN.  In any event, you will be allowed to edit as many times as you
        !           250: want before you send off the article.
        !           251: EOH
        !           252:        ;;
        !           253:     '')
        !           254:        $echo "" >> $tmpart
        !           255:        state=edit
        !           256:        ;;
        !           257:     *)
        !           258:        $cat $file >>$tmpart
        !           259:        state=ask
        !           260:        ;;
        !           261:     esac
        !           262: done
        !           263: 
        !           264: $echo ""
        !           265: 
        !           266: while true ; do
        !           267:     case $state in
        !           268:     edit)
        !           269:        case $expertise in
        !           270:        beginner)
        !           271:            $cat </dev/null >$dotdir/.pnewsexpert
        !           272:            $cat <<'EOMessage'
        !           273: A temporary file has been created for you to edit.  Be sure to leave at
        !           274: least one blank line between the header and the body of your message.
        !           275: (And until a certain bug is fixed all over the net, don't start the body of
        !           276: your message with any indentation, or it may get eaten.)
        !           277: 
        !           278: Within the header may be fields that you don't understand.  If you don't
        !           279: understand a field (or even if you do), you can simply leave it blank, and
        !           280: it will go away when the article is posted.
        !           281: 
        !           282: Type return to get the default editor, or type the name of your favorite
        !           283: editor.
        !           284: 
        !           285: EOMessage
        !           286:            ;;
        !           287:        esac
        !           288:        case "${VISUAL-${EDITOR-}}" in
        !           289:        '')
        !           290:            tmp=h
        !           291:            ;;
        !           292:        *)
        !           293:            tmp=''
        !           294:            ;;
        !           295:        esac
        !           296:        while $test "$tmp" = h ; do
        !           297:            $echo $n "Editor [${VISUAL-${EDITOR-$defeditor}}]: $c"
        !           298:            read tmp
        !           299:            case $tmp in
        !           300:            h)
        !           301:                $cat <<'EOH'
        !           302: 
        !           303: Type a return to get the default editor, or type the name of the editor you
        !           304: prefer.  The default editor depends on the VISUAL and EDITOR environment
        !           305: variables.
        !           306: 
        !           307: EOH
        !           308:                ;;
        !           309:            '')
        !           310:                ;;
        !           311:            *)
        !           312:                VISUAL=$tmp
        !           313:                export VISUAL
        !           314:                ;;
        !           315:            esac
        !           316:        done
        !           317:        trap : 2
        !           318:        ${VISUAL-${EDITOR-$defeditor}} $tmpart $oldart
        !           319:        trap "$rescue" 2
        !           320:        state=ask
        !           321:        ;;
        !           322:        
        !           323:     ask)
        !           324:        $echo ""
        !           325:        $echo $n "Send, abort, edit, or list? $c"
        !           326:        read ans
        !           327:        
        !           328:        case "$ans" in
        !           329:        a*)
        !           330:            state=rescue
        !           331:            ;;
        !           332:        e*)
        !           333:            set $ans
        !           334:            case $# in
        !           335:            2)  VISUAL="$2" ;;
        !           336:            esac
        !           337:            state=edit
        !           338:            ;;
        !           339:        l*)
        !           340:            $pager $tmpart
        !           341:            state=ask
        !           342:            ;;
        !           343:        s*)
        !           344:            state=send
        !           345:            ;;
        !           346:        h*)
        !           347:            $cat <<'EOH'
        !           348: 
        !           349: Type s to send the article, a to abort and append the article to dead.article,
        !           350: e to edit the article again, or l to list the article.
        !           351: 
        !           352: To invoke an alternate editor, type 'e editor'.
        !           353: EOH
        !           354:        esac
        !           355:        ;;
        !           356:     
        !           357:     send)
        !           358:        set X `$sed < $tmpart -n -e '/^Newsgroups: /{' -e p -e q -e '}'`
        !           359:        shift
        !           360:        case $# in
        !           361:        2)
        !           362:            state=cleanup
        !           363:            if $test -f $lib/moderators; then
        !           364:                tryinews=no
        !           365:                shift
        !           366:                case "$1" in
        !           367:                *,*) set `$echo $1 | tr ',' ' '`;;
        !           368:                esac
        !           369:                for newsgroup in $*; do
        !           370: # the following screwy sed should prevent Eunice from hanging on no match
        !           371:                    moderator=`$sed <$lib/moderators \
        !           372:                    -e "/^$newsgroup[   ]/!s/.*//" \
        !           373:                    -e "s/^$newsgroup[  ]//"`
        !           374:                    case ${moderator}X in
        !           375:                    X)  tryinews=yes
        !           376:                        ;;
        !           377:                    *)
        !           378:                        $echo Mailing to moderator $moderator
        !           379:                        case "$sign" in
        !           380:                        n*) ;;
        !           381:                        *)
        !           382:                            if $test -f $dotdir/.signature; then
        !           383:                                echo $n "Append .signature file? [y] $c"
        !           384:                                read ans
        !           385:                                case $ans in
        !           386:                                ''|y*)
        !           387:                                    echo "-- " >> $tmpart
        !           388:                                    cat $dotdir/.signature >> $tmpart
        !           389:                                    ;;
        !           390:                                esac
        !           391:                            fi
        !           392:                            sign=no
        !           393:                            ;;
        !           394:                        esac
        !           395:                        case "$mailer" in
        !           396:                        *recmail)
        !           397:                            $echo To: $moderator | $cat - $tmpart | $mailer
        !           398:                            ;;
        !           399:                        *)
        !           400:                            $mailer $moderator < $tmpart
        !           401:                            ;;
        !           402:                        esac
        !           403:                        case $? in
        !           404:                        0) ;;
        !           405:                        *)
        !           406:                            $echo Unable to mail to moderator $moderator
        !           407:                            state=rescue
        !           408:                            ;;
        !           409:                        esac
        !           410:                        ;;
        !           411:                    esac
        !           412:                done
        !           413:            else
        !           414:                tryinews=yes
        !           415:            fi
        !           416:            case "$tryinews" in
        !           417:            yes)
        !           418:                if $inews -h < $tmpart ; then
        !           419:                    : null
        !           420:                else
        !           421:                    state=rescue
        !           422:                fi
        !           423:                ;;
        !           424:            esac
        !           425:            ;;
        !           426:        *)
        !           427:            $echo ""
        !           428:            $echo "Malformed Newsgroups line."
        !           429:            $echo ""
        !           430:            sleep 1
        !           431:            state=edit
        !           432:            ;;
        !           433:        esac
        !           434:        ;;
        !           435:     rescue)
        !           436:        $cat $tmpart >> ${HOME-$LOGDIR}/dead.article
        !           437:        $echo "Article appended to ${HOME-$LOGDIR}/dead.article"
        !           438:        $echo "A copy may be temporarily found in $tmpart"
        !           439:        exit
        !           440:        ;;
        !           441:     cleanup)
        !           442:        case "${AUTHORCOPY-none}" in
        !           443:        none)
        !           444:            ;;
        !           445:        *)  if $echo From $USER `date` >> $AUTHORCOPY; then
        !           446:                $cat $tmpart >> $AUTHORCOPY
        !           447:                $echo "Article appended to $AUTHORCOPY"
        !           448:                $echo "" >> $AUTHORCOPY
        !           449:                $echo "" >> $AUTHORCOPY
        !           450:            else
        !           451:                $echo "Cannot append to $AUTHORCOPY"
        !           452:            fi
        !           453:            ;;
        !           454:        esac
        !           455:        exit
        !           456:        ;;
        !           457:     esac
        !           458: done
        !           459: !NO!SUBS!
        !           460: $eunicefix Pnews
        !           461: chmod 755 Pnews
        !           462: $spitshell >Pnews.header <<'!NO!SUBS!'
        !           463: case $# in
        !           464: 0)
        !           465:     ng=h
        !           466:     while $test "$ng" = h ; do
        !           467:        $echo ""
        !           468:        $echo $n "Newsgroup(s): $c"
        !           469:        read ng
        !           470:        case $ng in
        !           471:        h)
        !           472:            $cat <<'EOH'
        !           473: 
        !           474: Type the name of one or more newsgroups to which you wish to post an article.
        !           475: If you want to post to multiple newsgroups, it is better to do them all at
        !           476: once than to post to each newsgroup individually, which defeats the news
        !           477: reading programs' strategies of eliminating duplicates.
        !           478: 
        !           479: Separate multiple newsgroup names with commas.
        !           480: EOH
        !           481:            ;;
        !           482:        esac
        !           483:     done
        !           484:     ;;
        !           485: *)
        !           486:     ng=$1
        !           487:     shift
        !           488:     ;;
        !           489: esac
        !           490: case $ng in
        !           491: *\ *)
        !           492:     ng=`$echo "$ng" | $sed 's/[, ] */,/g'`
        !           493:     ;;
        !           494: esac
        !           495: case $ng in
        !           496: net.*|mod.*|comp.*|news.*|sci.*|rec.*|misc.*|soc.*|talk.*)
        !           497:     defdist=world
        !           498:     dist=h
        !           499:     ;;
        !           500: *.*)
        !           501:     defdist=`expr "X$ng" : 'X\([a-z0-9]*\)'`
        !           502:     dist=h
        !           503:     ;;
        !           504: *)
        !           505:     defdist=''
        !           506:     dist=''
        !           507:     ;;
        !           508: esac
        !           509: 
        !           510: while $test "$dist" = h ; do
        !           511:     if $test -f $lib/distributions; then
        !           512:        $echo " "
        !           513:        $echo "Your local distribution prefixes are:"
        !           514:        $cat $lib/distributions
        !           515:        $echo " "
        !           516:     else
        !           517:        $egrep -v '[     ]none$' <<EOM
        !           518: 
        !           519: Your local distribution prefixes are:
        !           520:     Local organization:        $loc
        !           521:     Organization:              $org
        !           522:     City:                      $city
        !           523:     $stpr:             $state
        !           524:     Country:           $cntry
        !           525:     Continent:         $cont
        !           526:     Everywhere:                world
        !           527: 
        !           528: EOM
        !           529:     fi
        !           530:     $echo $n "Distribution ($defdist): $c"
        !           531:     read dist
        !           532:     case $dist in
        !           533:     '') dist=$defdist ;;
        !           534:     esac
        !           535:     case $dist in
        !           536:     h)
        !           537:        $cat <<'EOH'
        !           538: 
        !           539: The Distribution line may be used to limit the distribution of an article
        !           540: to some subset of the systems that would receive the article based only on
        !           541: the Newsgroups line.  For example, if you want to sell your car in talk.auto,
        !           542: and you live in New Jersey, you might want to put "nj" on the Distribution
        !           543: line to avoid advertising in California, which has enough problems of its own.
        !           544: The actual area designators to use depend on where you are, of course.
        !           545: EOH
        !           546:        ;;
        !           547:     ''|$loc*|$org*|$city*|$state*|$cntry*|$cont*|$defdist)
        !           548:        ;;
        !           549:     net*|world*|comp*|news*|sci*|rec*|misc*|soc*|talk*)
        !           550:        dist=''
        !           551:        ;;
        !           552:     *)  
        !           553:        if $test -f $lib/distributions && \
        !           554:          $egrep "^$dist[       ]" $lib/distributions >$tmpart && \
        !           555:          $test -s $tmpart; then
        !           556:            : null
        !           557:        else
        !           558:            $echo "Unrecognized distribution prefix--type h for help, CR to use anyway."
        !           559:            defdist=$dist
        !           560:            dist=h
        !           561:        fi
        !           562:        ;;
        !           563:     esac
        !           564: done
        !           565: 
        !           566: case $ng in
        !           567: *net.general*)
        !           568:     follow=`echo "$ng" | sed 's/net\.general/net.followup/g'`
        !           569:     ;;
        !           570: *)
        !           571:     follow=""
        !           572:     ;;
        !           573: esac
        !           574: 
        !           575: case $# in
        !           576: 0)
        !           577:     title=h
        !           578:     while $test "$title" = h ; do
        !           579:        $echo ""
        !           580:        $echo $n "Title/Subject: $c"
        !           581:        read title
        !           582:        case $title in
        !           583:        h)
        !           584:            $cat <<'EOH'
        !           585: 
        !           586: Type the title for your article.  Please make it as informative as possible
        !           587: (within reason) so that people who aren't interested won't have to read the
        !           588: article to find out they aren't interested.  This includes marking movie
        !           589: spoilers as (spoiler), and rotated jokes as (rot 13).
        !           590: EOH
        !           591:        ;;
        !           592:        esac
        !           593:     done
        !           594:     ;;
        !           595: *)
        !           596:     title="$*"
        !           597:     ;;
        !           598: esac
        !           599: 
        !           600: # now build a file with a header for them to edit
        !           601: 
        !           602: set X ${USER-${LOGNAME-`who am i`}}
        !           603: shift
        !           604: logname=$1
        !           605: case $logname in
        !           606: *!*) logname=`expr "$logname" : '!\(.*\)$'` ;;
        !           607: esac
        !           608: case ${NAME-$nametype} in
        !           609: bsd)
        !           610:     fullname=`$sed </etc/passwd -e "/^$logname:/{s/^[^:]*:[^:]*:[^:]*:[^:]*:\([^,:;]*\).*"'$'"/\1/" -e "q" -e "}" -e "d"`
        !           611:     case $fullname in
        !           612:     *'&'*) : GACK
        !           613:        lname=`$echo $logname | $tr 'a-z' 'A-Z'`
        !           614:        lname=`$echo $lname $logname | $sed 's/^\(.\)[^ ]* ./\1/'`
        !           615:        fullname=`$echo "$fullname" | $sed "s/&/${lname}/"`
        !           616:        ;;
        !           617:     esac
        !           618:     ;;
        !           619: usg)
        !           620:     fullname=`$sed </etc/passwd -e "/^$logname:/{s/^[^:]*:[^:]*:[^:]*:[^:]*:\([^(:]*\).*"'$'"/\1/" -e "s/^.*-//" -e "q" -e "}" -e "d"`
        !           621:     ;;
        !           622: *)
        !           623:     fullname=${NAME-`$cat $dotdir/.fullname`}
        !           624:     ;;
        !           625: esac
        !           626: 
        !           627: orgname=${ORGANIZATION-$orgname}
        !           628: case $orgname in
        !           629: /*) orgname=`$cat $orgname` ;;
        !           630: esac
        !           631: 
        !           632: $cat > $tmpart <<EOHeader
        !           633: Newsgroups: $ng
        !           634: Subject: $title
        !           635: Expires: 
        !           636: References: 
        !           637: Sender: 
        !           638: Reply-To: $logname@$sitename.UUCP ($fullname)
        !           639: Followup-To: $follow
        !           640: Distribution: $dist
        !           641: Organization: $orgname
        !           642: Keywords: 
        !           643: 
        !           644: EOHeader
        !           645: 
        !           646: !NO!SUBS!
        !           647: $eunicefix Pnews.header

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.