0010 rem //--------------------------------//
 0020 rem //        Valgsystemsmodul        //
 0030 rem //       ------------------       //
 0040 rem // Program : Beregn/Display       //
 0050 rem // Daks d. 15/11 1981             //
 0060 rem //--------------------------------//
 0070 dim RESULTAT(15),BUF$(128),LISTE$(1),INDEX$(40),MESSLINE$(70)
 0080 dim PARTI$(40),VALGSTED$(30),GAMLERES(40,16),NYERES(40,16),SUM(20)
 0090 dim NEDDEL(20),MANDAT(20),X(10),LODTR(5),M78(16),VLGSTED$(30)
 0100 dim STX(41)
 0110 X(1)=1; X(2)=6; X(3)=7; X(4)=8; X(5)=14; X(6)=15; X(7)=17
 0120 X(8)=18; X(9)=19; X(10)=20
 0130 M78(1)=17; M78(2)=1; M78(3)=5; M78(4)=0; M78(5)=1; M78(6)=1; M78(7)=-1
 0140 M78(8)=-1; M78(9)=1; M78(10),M78(11)=0; M78(12)=3; M78(13)=0; M78(14)=2
 0150 M78(15)=-1
 0160 STX(1)=4096; STX(2)=2224; STX(3)=6755; STX(4)=3553; STX(5)=247; STX(6)=49
 0170 STX(7)=2148; STX(8)=1650; STX(9)=1469; STX(10)=1271; STX(11)=3200
 0180 STX(12)=916; STX(13)=838; STX(14)=4225; STX(15)=5775; STX(16)=5398
 0190 STX(17)=4801; STX(18)=3768; STX(19)=3762; STX(20)=3189; STX(21)=303
 0200 STX(22)=2730; STX(23)=846; STX(24)=2715; STX(25)=426; STX(26)=3775
 0210 STX(27)=8806; STX(28)=1515; STX(29)=5904; STX(30)=4279; STX(31)=6411
 0220 STX(32)=2609; STX(33)=2516; STX(34)=5037; STX(35)=2708; STX(36)=1130
 0230 STX(37)=1029; STX(38)=464; STX(39)=452; STX(40)=4207; STX(41)=117196
 0240 rem --------------------------------->> Overskrift Til Valgskema
 0250 dim VALGHEAD$(5,80)
 0260 VALGHEAD$(1)=chr(132)+"   7####kj######################kj#######"
 0270 VALGHEAD$(1)=VALGHEAD$(1)+"######k 7#############k 7############k"
 0280 VALGHEAD$(2)=chr(132)+"   5 LI jj PARTI                jj"
 0290 VALGHEAD$(2)=VALGHEAD$(2)+chr(128)+"VALGET 1978"+chr(132)+"j 5"
 0300 VALGHEAD$(2)=VALGHEAD$(2)+chr(128)+"VALGET 1981"+chr(132)+"j 5"
 0310 VALGHEAD$(2)=VALGHEAD$(2)+chr(128)+"ÆNDRINGER "+chr(132)+"j"
 0320 VALGHEAD$(3)=chr(132)+"   5    jj                      jj"
 0330 VALGHEAD$(3)=VALGHEAD$(3)+chr(128)+" Antal   % "+chr(132)+"j 5"
 0340 VALGHEAD$(3)=VALGHEAD$(3)+chr(128)+" Antal   % "+chr(132)+"j 5"
 0350 VALGHEAD$(3)=VALGHEAD$(3)+chr(128)+" Antal  % "+chr(132)+"j"
 0360 VALGHEAD$(4)=chr(132)+"   ssssssbsssssssssssssssssssssssbssssssssss"
 0370 VALGHEAD$(4)=VALGHEAD$(4)+"ssss sssssssssssssss ssssssssssssss"
 0380 VALGHEAD$(5)=chr(132)+"   uppppzjppppppppppppppppppppppzjpppppppppp"
 0390 VALGHEAD$(5)=VALGHEAD$(5)+"pppz upppppppppppppz uppppppppppppz"
 0400 rem --------------------------------->> Overskrift Til Mandatskema
 0410 dim MANDHEAD$(5,80)
 0420 MANDHEAD$(1)=chr(132)+"   7####kj######################kj#######"
 0430 MANDHEAD$(1)=MANDHEAD$(1)+"##########k   7#################k"
 0440 MANDHEAD$(2)=chr(132)+"   5 LI jj PARTI                jj"
 0450 MANDHEAD$(2)=MANDHEAD$(2)+chr(128)+"    STEMMER    "+chr(132)+"j   5"
 0460 print chr(132); "     7################################k 7#######"; 
 0470 MANDHEAD$(2)=MANDHEAD$(2)+chr(128)+"   MANDATER    "+chr(132)+"j"
 0480 MANDHEAD$(3)=chr(132)+"   5    jj                      jj"
 0490 MANDHEAD$(3)=MANDHEAD$(3)+chr(128)+"  Antal    %   "+chr(132)+"j   5"
 0500 MANDHEAD$(3)=MANDHEAD$(3)+chr(128)+" Antal Ændring "+chr(132)+"j"
 0510 MANDHEAD$(4)=chr(132)+"   ssssssbsssssssssssssssssssssssbssssssssss"
 0520 MANDHEAD$(4)=MANDHEAD$(4)+"ssssssss   sssssssssssssssssss"
 0530 MANDHEAD$(5)=chr(132)+"   uppppzjppppppppppppppppppppppzjpppppppppp"
 0540 MANDHEAD$(5)=MANDHEAD$(5)+"pppppppz   upppppppppppppppppz"
 0550 print chr(12)
 0560 exec XY(1,25)
 0570 print "OPSTART........."; chr(29)
 0580 open "GLVLRES",GLRES,BUF$,40*16*4
 0590 get GLRES,1 : GAMLERES
 0600 close GLRES
 0610 loop 
 0620   COMMAND=key(0)
 0630   if chr(COMMAND)="O" then exec UPDATER
 0640   if chr(COMMAND)="B" then exec COPY
 0650   if chr(COMMAND)="V" then exec DISPLAYVALGSTED
 0660   if chr(COMMAND)="M" then exec DISPLAYMANDAT
 0670   if chr(COMMAND)="S" then exec DISPLAYSTATUS
 0680   if chr(COMMAND)="X" then exit 
 0690   if chr(COMMAND)="R" then exec RESET
 0700   if chr(COMMAND)="T" then exec TEKNISKUHELD
 0710   if chr(COMMAND)="D" then exec DAKS
 0720   if chr(COMMAND)="%" then exec MESSAGE
 0730 endloop 
 0740 proc XY(XX,YY)
 0750   print chr(6); chr(95+XX-((XX-1) div 32)*64); chr(95+YY); 
 0760 endproc 
 0770 proc CRTXY(XX,YY)
 0780   DUMMY=crt(6); DUMMY=crt(95+XX-((XX-1) div 32)*64); DUMMY=crt(95+YY)
 0790 endproc 
 0800 data "A","Socialdemokratiet"
 0810 data "B","Radikale Venstre"
 0820 data "C","Konservative"
 0830 data "E","Retsforbundet"
 0840 data "F","Soc. Folkeparti"
 0850 data "G","Listen For Medbest."
 0860 data "H","Kvinder For Samarb."
 0870 data "I","Soc. Arbejderparti"
 0880 data "K","Kommunisterne"
 0890 data "M","Centrum-demokraterne"
 0900 data "Q","Kristelig Folkeparti"
 0910 data "V","Venstre"
 0920 data "Y","Venstresocialisterne"
 0930 data "Z","Fremskridtspartiet"
 0940 data "Å","Ålborg Listen"
 0950 proc UPDATER
 0951   exec XY(1,24)
 0952   print chr(30); chr(128); "Valgstednr.: "; 
 0953   input STEDNR
 0960   open "VLGST"+chr(STEDNR/10+48)+chr(STEDNR mod 10+48),VALGFIL,BUF$,70
 0970   if VALGFIL<>0 then 
 0980     exec XY(1,25)
 0990     print chr(30); chr(128); 
 1000     print "*** Open error"; VALGFIL; ", file 'VLGST81'"; chr(29)
 1010     exit 
 1020   endif 
 1030   get VALGFIL,1 : RESULTAT
 1040   if VALGFIL<>0 then 
 1050     exec XY(1,25)
 1060     print chr(30); chr(128); 
 1070     print "*** Get error"; VALGFIL; ", file 'VLGST81' rec 1"; chr(29)
 1080     close VALGFIL
 1090     exit 
 1100   endif 
 1110   get VALGFIL,2 : VALGSTEDNR,VALGSTED$,SKREVET
 1120   if VALGFIL<>0 then 
 1130     exec XY(1,25)
 1140     print chr(30); chr(128); 
 1150     print "*** Get error"; VALGFIL; ", file 'VLGST81' rec 2"; chr(29)
 1160     close VALGFIL
 1170     exit 
 1180   endif 
 1190   close VALGFIL
 1200   if INDEX$(VALGSTEDNR : 1)="X" then 
 1210     exec XY(1,25)
 1220     print chr(30); chr(128); 
 1230     print "Valgsted nr"; VALGSTEDNR; " "; VALGSTED$; 
 1240     print " er allerede indlæst"; chr(7); chr(29)
 1250     exit 
 1260   endif 
 1270   if SKREVET<>0 then 
 1290     print chr(30); chr(128); 
 1300     print "Valgsted nr"; VALGSTEDNR; " "; VALGSTED$; 
 1310     print " er ikke indtastet"; chr(7); chr(29)
 1320     exit 
 1330   endif 
 1340   let INDEX$(VALGSTEDNR : 1)="X"
 1350   for N=1 to 15
 1360     let NYERES(VALGSTEDNR,N)=RESULTAT(N)
 1370     let SUM(N)=SUM(N)+RESULTAT(N); SUM(16)=SUM(16)+RESULTAT(N)
 1380     let NYERES(VALGSTEDNR,16)=NYERES(VALGSTEDNR,16)+RESULTAT(N)
 1390   next N
 1400   exec XY(1,25)
 1410   print chr(30); chr(128); 
 1420   print "Valgsted nr"; VALGSTEDNR; " "; VALGSTED$; " opdateret"; chr(29)
 1430 endproc 
 1440 proc DISPLAYVALGSTED
 1450   print chr(12)
 1460   print "    Valgsted nr"; VALGSTEDNR; chr(144); VALGSTED$; chr(128); 
 1470   print "  Gyldige stemmer :"; NYERES(VALGSTEDNR,16)
 1480   print 
 1490   for N=1 to 4
 1500     print VALGHEAD$(N)
 1510   next N
 1520   restore 710
 1530   for N=1 to 15
 1540     let PCT78=GAMLERES(VALGSTEDNR,N)/GAMLERES(VALGSTEDNR,16)*100
 1550     let PCT81=NYERES(VALGSTEDNR,N)/NYERES(VALGSTEDNR,16)*100
 1560     let AFVIGELSE=NYERES(VALGSTEDNR,N)-GAMLERES(VALGSTEDNR,N)
 1570     let AFVIGELSEPCT=int(PCT81-PCT78)
 1580     let PCT81=int(PCT81); PCT78=int(PCT78)
 1590     read LISTE$,PARTI$
 1600     let GAMUD=GAMLERES(VALGSTEDNR,N); NYUD=NYERES(VALGSTEDNR,N)
 1610     print chr(132); "   5"; chr(128); LISTE$; chr(132); " jj"; chr(128); 
 1620     print PARTI$; tab(32); chr(132); "jj"; chr(128); 
 1630     if GAMUD=-1 then 
 1640       print "    --   --"; 
 1650     else 
 1660       print using "###### ####" : GAMUD,PCT78; 
 1670     endif 
 1680     print chr(132); "j 5"; chr(128); 
 1690     print using "###### ####" : NYUD,PCT81; 
 1700     print chr(132); "j 5"; chr(128); 
 1710     if GAMUD=-1 then 
 1720       print "   --   --"; 
 1730     else 
 1740       print using "##### ####" : AFVIGELSE,AFVIGELSEPCT; 
 1750     endif 
 1760     print chr(132); "j"
 1770   next N
 1780   print VALGHEAD$(5)
 1790   print chr(29)
 1800 endproc 
 1810 proc COPY
 1820   open "BACKUP",BACKUP,BUF$,2560
 1830   if BACKUP<>0 then 
 1840     exec XY(1,25)
 1850     print chr(30); chr(128); 
 1860     print "*** Open error"; BACKUP; ", File 'BACKUP'"; chr(29)
 1870     exit 
 1880   endif 
 1890   put BACKUP,1 : NYERES
 1900   if BACKUP<>0 then 
 1910     exec XY(1,25)
 1920     print chr(30); chr(128); 
 1930     print "*** Put error"; BACKUP; ", file 'BACKUP' rec 1"; chr(29)
 1940     close BACKUP
 1950     exit 
 1960   endif 
 1970   put BACKUP,2 : INDEX$,SUM
 1980   if BACKUP<>0 then 
 1990     exec XY(1,25)
 2000     print chr(30); chr(128); 
 2010     print "Put error"; BACKUP; ", file 'BACKUP' rec 2"; chr(29)
 2020     close BACKUP
 2030     exit 
 2040   endif 
 2050   close BACKUP
 2060   exec XY(1,25)
 2070   print chr(30); chr(128); 
 2080   print "Backup kørt...."; chr(29)
 2090 endproc 
 2100 proc RESET
 2110   open "BACKUP",BACKUP,BUF$,2560
 2120   if BACKUP<>0 then 
 2130     exec XY(1,25)
 2140     print chr(30); chr(128); 
 2150     print "*** Open error"; BACKUP; ", file 'BACKUP'"; chr(29)
 2160     exit 
 2170   endif 
 2180   get BACKUP,1 : NYERES
 2190   if BACKUP<>0 then 
 2200     exec XY(1,25)
 2210     print chr(30); chr(128); 
 2220     print "*** Get error"; BACKUP; ", file 'BACKUP' rec 1"; chr(29)
 2230     close BACKUP
 2240     exit 
 2250   endif 
 2260   get BACKUP,2 : INDEX$,SUM
 2270   if BACKUP<>0 then 
 2280     exec XY(1,25)
 2290     print chr(30); chr(128); 
 2300     print "Get error"; BACKUP; ", file 'BACKUP' rec 2"; chr(29)
 2310     close BACKUP
 2320     exit 
 2330   endif 
 2340   close BACKUP
 2350   exec XY(1,25)
 2360   print chr(30); chr(128); 
 2370   print "Reset kørt...."; chr(29)
 2380 endproc 
 2390 proc DISPLAYMANDAT
 2400   exec DHONT
 2410   print chr(12)
 2420   let ANTVALGST=0; ANTOPTALTE=0
 2430   for N=1 to 40
 2440     if INDEX$(N : 1)="X" then 
 2450       let ANTVALGST=ANTVALGST+1; ANTOPTALTE=ANTOPTALTE+STX(N)
 2460     endif 
 2470   next N
 2480   let STEMMEPCT=int(ANTOPTALTE/STX(41)*100)
 2490   print "     Der er optalt"; ANTVALGST; "valgsteder og "; 
 2500   print STEMMEPCT; "% af stemmerne er talt op."
 2510   print 
 2520   restore 710
 2530   for N=1 to 4
 2540     print MANDHEAD$(N)
 2550   next N
 2560   for N=1 to 15
 2570     read LISTE$,PARTI$
 2580     let PCT81=int(SUM(N)/SUM(16)*100)
 2590     let ÆNDRMANDAT=MANDAT(N)-M78(N)
 2600     print chr(132); "   5"; chr(128); LISTE$; chr(132); " jj"; chr(128); 
 2610     print PARTI$; tab(32); chr(132); "jj"; chr(128); 
 2620     print using "#######  #### " : SUM(N),PCT81; 
 2630     print chr(132); " j   5"; chr(128); 
 2640     if M78(N)=-1 then 
 2650       print using "#####     --   " : MANDAT(N); 
 2660     else 
 2670       print using "#####   ####   " : MANDAT(N),ÆNDRMANDAT; 
 2680     endif 
 2690     print chr(132); "j"
 2700   next N
 2710   print MANDHEAD$(5)
 2720   exec XY(1,25)
 2730   print chr(128); "Lodtræk : "; LODTR(1); LODTR(2); LODTR(3); 
 2735   print LODTR(4); LODTR(5); chr(29)
 2740 endproc 
 2750 proc DHONT
 2760   rem ---------- initialisering
 2770   SUM(17)=SUM(2)+SUM(4)
 2780   SUM(18)=SUM(3)+SUM(12)
 2790   SUM(19)=SUM(5)+SUM(9)+SUM(13)
 2800   SUM(20)=SUM(10)+SUM(11)
 2810   for N=1 to 20
 2820     MANDAT(N)=0
 2830     NEDDEL(N)=SUM(N)
 2840   next N
 2850   for N=1 to 5
 2860     LODTR(N)=0
 2870   next N
 2880   rem ---------- første fordelingsrunde
 2890   for N=1 to 31
 2900     ST=1
 2910     for PNR=2 to 10
 2920       if NEDDEL(X(PNR))>NEDDEL(X(ST)) then let ST=PNR
 2930     next PNR
 2940     MANDAT(X(ST))=MANDAT(X(ST))+1
 2950     NEDDEL(X(ST))=SUM(X(ST))/(MANDAT(X(ST))+1)
 2960   next N
 2970   rem ---------- kontrol af lodtrækning
 2980   for PNR=ST to 10
 2990     if NEDDEL(X(PNR))=SUM(X(ST))/MANDAT(X(ST)) then LODTR(1)=1
 3000   next PNR
 3010   rem ---------- forbund B og E
 3020   for N=1 to MANDAT(17)
 3030     IX=2
 3040     if NEDDEL(4)>NEDDEL(2) then IX=4
 3050     MANDAT(IX)=MANDAT(IX)+1
 3060     if N=MANDAT(17) and NEDDEL(4)=NEDDEL(2) then let LODTR(2)=1
 3070     NEDDEL(IX)=SUM(IX)/(MANDAT(IX)+1)
 3080   next N
 3090   rem ---------- forbund C oq V
 3100   for N=1 to MANDAT(18)
 3110     IX=3
 3120     if NEDDEL(12)>NEDDEL(3) then IX=12
 3130     MANDAT(IX)=MANDAT(IX)+1
 3140     if N=MANDAT(18) and NEDDEL(3)=NEDDEL(12) then let LODTR(3)=1
 3150     NEDDEL(IX)=SUM(IX)/(MANDAT(IX)+1)
 3160   next N
 3170   rem ---------- forbund F, K og Y
 3180   for N=1 to MANDAT(19)
 3190     IX=5
 3200     if NEDDEL(9)>NEDDEL(5) then IX=9
 3210     if NEDDEL(13)>NEDDEL(IX) then IX=13
 3220     MANDAT(IX)=MANDAT(IX)+1
 3230     if N=MANDAT(19) then 
 3240       if NEDDEL(IX)=NEDDEL(5) and IX<>5 then let LODTR(4)=1
 3250       if NEDDEL(IX)=NEDDEL(9) and IX<>9 then let LODTR(4)=1
 3260       if NEDDEL(IX)=NEDDEL(13) and IX<>13 then let LODTR(4)=1
 3270     endif 
 3280     NEDDEL(IX)=SUM(IX)/(MANDAT(IX)+1)
 3290   next N
 3300   rem ---------- forbund M og Q
 3310   for N=1 to MANDAT(20)
 3320     IX=10
 3330     if NEDDEL(11)>NEDDEL(10) then IX=11
 3340     MANDAT(IX)=MANDAT(IX)+1
 3350     if N=MANDAT(20) and NEDDEL(10)=NEDDEL(11) then let LODTR(5)=1
 3360     NEDDEL(IX)=SUM(IX)/(MANDAT(IX)+1)
 3370   next N
 3380 endproc DHONT
 3390 proc MESSAGE
 3400   exec XY(1,25)
 3410   let MESSLINE$="                                 "; COUNT=1
 3420   let MESSLINE$=MESSLINE$+MESSLINE$
 3430   print chr(128); chr(30); "Mess : "; chr(29)
 3440   loop 
 3450     exec CRTXY(8+COUNT,25)
 3460     CHAR=key(0)
 3470     if CHAR=13 then exit 
 3480     if CHAR=>32 and CHAR<=125 then 
 3490       let MESSLINE$(COUNT : 1)=chr(CHAR); DUMMY=crt(CHAR); COUNT=COUNT+(COUNT<70)
 3500     endif 
 3510     if CHAR=8 then let COUNT=COUNT-(COUNT>1)
 3520     if CHAR=24 then let COUNT=COUNT+(COUNT<70)
 3530     if CHAR=12 then 
 3540       let MESSLINE$=""
 3550       print chr(29)
 3560       exit 
 3570     endif 
 3580   endloop 
 3590   exec XY(5,2)
 3600   if MESSLINE$<>"" then print chr(30); MESSLINE$
 3610 endproc 
 3620 proc DISPLAYSTATUS
 3630   open "VALGSTD",VLGFIL,BUF$,30
 3640   if VLGFIL<>0 then 
 3650     exec XY(1,25)
 3660     print chr(128); chr(30); 
 3670     print "*** Open error"; VLGFIL; ", fil 'VALGSTD'"; chr(29)
 3680     exit 
 3690   endif 
 3700   let ANTVALGST=0; ANTOPTALTE=0
 3710   for N=1 to 40
 3720     if INDEX$(N : 1)="X" then 
 3730       let ANTVALGST=ANTVALGST+1; ANTOPTALTE=ANTOPTALTE+STX(N)
 3740     endif 
 3750   next N
 3760   let STEMMEPCT=int(ANTOPTALTE/STX(41)*100)
 3770   print chr(12); 
 3780   print "      Status Der er optalt"; ANTVALGST; "valgsteder og "; 
 3790   print STEMMEPCT; "% af stemmerne er talt op."
 3800   print chr(132); "     7#################################k 7########"; 
 3810   print "#########################k"
 3820   for N=1 to 20
 3830     get VLGFIL,N : VLGSTED$
 3840     print chr(132); "     5"; chr(128); 
 3850     print using "####" : N; 
 3860     print tab(13); VLGSTED$; tab(39); 
 3870     print chr(132); "j 5"; chr(128); 
 3880     get VLGFIL,N+20 : VLGSTED$
 3890     print using "####" : N+20; 
 3900     print tab(50); VLGSTED$; tab(75); chr(132); "j"
 3910   next N
 3920   print chr(132); "     upppppppppppppppppppppppppppppppppz upppppppp"; 
 3930   print "pppppppppppppppppppppppppz"
 3940   close VLGFIL
 3950   for N=1 to 40
 3960     if INDEX$(N : 1)="X" then 
 3970       if N<21 then exec XY(9,(N mod 21)+2)
 3980       if N>20 then exec XY(45,(N mod 21)+3)
 3990       print "*"
 4000     endif 
 4010   next N
 4020   print chr(29)
 4030 endproc 
 4040 proc TEKNISKUHELD
 4050   print chr(12)
 4060   for N=1 to 8
 4070     print 
 4080   next N
 4090   print "                        "; 
 4100   print chr(132); "#7! 7#! 58! =05"; chr(34); "7  6#$ 58!"
 4110   print "                        "; 
 4120   print chr(132); " 5  7!  7d  5"; chr(34); "5 5  2#4 7d     ##!"
 4130   print "                        "; 
 4140   print chr(132); " !  ##! ! ! ! !"; chr(34); "#  "; chr(34); "!  ! !"
 4150   print "                        "; 
 4160   print chr(132); "5 5 5 5 7#! 5   k#4"
 4170   print "                        "; 
 4180   print chr(132); "5 5 7#5 7!  5   j 5   '0 '0 '0 '0 "
 4190   print "                        "; 
 4200   print chr(132); chr(34); "#  ! ! ##! ##! ## "
 4210   exec BOX(20,7,40,10,127)
 4220   print chr(29)
 4230 endproc tekniskuheld
 4240 proc BOX(X1,Y,B,H,CH1)
 4250   exec XY(X1-1,Y)
 4260   print chr(132)
 4270   for H0=X1 to X1+B+1
 4280     exec XY(H0,Y)
 4290     print chr(CH1)
 4300   next H0
 4310   for L=Y+1 to Y+H
 4320     exec XY(X1+B-1,L)
 4330     print chr(132); chr(CH1); chr(CH1); chr(128)
 4340   next L
 4350   for H0=X1+B to X1-1 step -1
 4360     exec XY(H0,Y+H)
 4370     print chr(132); chr(CH1)
 4380   next H0
 4390   for L=Y+H-1 to Y+1 step -1
 4400     exec XY(X1-1,L)
 4410     print chr(132); chr(CH1); chr(CH1); chr(128)
 4420   next L
 4430 endproc box
 4440 proc DAKS
 4450   print chr(12); chr(132)
 4460   print 
 4470   print "       "; 
 4480   print "     ****                  *****  ***       ***     **********"
 4490   print "       "; 
 4500   print "     *****                ******  ***       ***   ***        ***"
 4510   print "       "; 
 4520   print "     ***  ***            *** ***  ***      ***   ***          ***"
 4530   print "       "; 
 4540   print "     ***   ***          ***  ***  ***     ***   ***          ***"
 4550   print "       "; 
 4560   print "     ***    ***        ***   ***  ***   ***    ***"
 4570   print "       "; 
 4580   print "     ***     ***      ***    ***  ***  ***     ***      "
 4590   print "       "; 
 4600   print "     ***      ***    ***     ***  *** ***       ***           "
 4610   print "       "; 
 4620   print "     ***       ***  ************  ******         ***********"
 4630   print "       "; 
 4640   print "     ***       *** ***       ***  *** ***                 ***  "
 4650   print "       "; 
 4660   print "     ***      *** ***        ***  ***  ***                 ***"
 4670   print "       "; 
 4680   print "     ***     *** ***         ***  ***   ***                 ***"
 4690   print "       "; 
 4700   print "     ***    *** ***          ***  ***    ***                 ***"
 4710   print "       "; 
 4720   print "     ***   *** ***           ***  ***     ***               ***"
 4730   print "       "; 
 4740   print "     ******   ***            ***  ***      ***  ***       *** "
 4750   print "       "; 
 4760   print "     ****    ***             ***  ***      ***    *********"
 4770   print chr(128)
 4780   print "               DATAAFDELINGEN ved AALBORG KOMMUNALE SKOLEVÆSEN."
 4790   print 
 4800   print chr(128); "       "; 
 4810   print "          Databehandlig af valgresultatet  -  Kommunevalget 1981."
 4820   print chr(128); "         "; 
 4830   print "        Udført af elever fra datalærehold på Sofiendalskolen."
 4840   print chr(128); "                "; 
 4850   print "           Udført på 'RC702 piccolo' microdatamat"
 4860   print chr(29)
 4870 endproc daks