Jewish/Civil calendar, part 03 of 03 (again, the real part 03)

Richard Goerwitz goer at sophist.uucp
Fri Jul 20 12:04:47 AEST 1990


---- Cut Here and unpack ----
#!/bin/sh
# this is hebcalen.03 (part 3 of a multipart archive)
# do not concatenate these parts, unpack them in order with /bin/sh
# file cal.text continued
#
if test ! -r shar3_seq_.tmp; then
	echo "Please unpack part 1 first!"
	exit 1
fi
(read Scheck
 if test "$Scheck" != 3; then
	echo "Please unpack part $Scheck next!"
	exit 1
 else
	exit 0
 fi
) < shar3_seq_.tmp || exit 1
echo "x - Continuing file cal.text"
sed 's/^X//' << 'SHAR_EOF' >> cal.text &&
X  write(repl(" ",7),"S",repl(" ",2),"M",repl(" ",2),"T",repl(" ",2),"W",
X        repl(" ",2),"T",repl(" ",2),"F",repl(" ",2),"\e[7mS\e[0m",repl(" ",27),
X        "S",repl(" ",2),"M",repl(" ",2),"T",repl(" ",2),"W",
X        repl(" ",2),"T",repl(" ",2),"F",repl(" ",2),"\e[7mS\e[0m")
Xend
X
Xprocedure write_a_month()
X#writes a month on the screen
X  header()
X  every 1 to 5 do 
X    write(make_a_line())
X  if jyr.day ~= 1 then
X    write(make_a_line())
X  write()
Xreturn
Xend
X
Xprocedure status_line(a,b)
X#create the status line at the bottom of screen
Xlocal sline,c,d
X  c := cyr.yr
X  if (cyr.day = 1) & (cyr.mth = 1) then c -:= 1
X  d := 365
X  if isleap(c) then d := 366
X#if ANSI not available omit "\e[7m" and "|| "\e[0m""
X  sline := ("\e[7mYear of Creation: " || a || "  Days in year: " || b ||
X    "  Civil year: " || c || "  Days in year: " || d || "\e[0m")
Xreturn sline
Xend
X
Xprocedure make_a_line()
X#make a single line of the months
Xlocal line,blanks1,blanks2,start_point,end_point,flag,fm
X
X#consider the first line of the month
X  if jyr.day = 1 then {
X    line := mth_table(jyr.mth,1)
X#setting flag means insert civil month at end of line    
X    flag := 1 } else
X    line := repl(" ",3)
X#consider the case where first day of civil month is on Sunday    
X  if (cyr.day = 1) & (current_day = 1) then flag := 1
X#space between month name and beginning of calendar
X  line ||:= repl(" ",2)
X#measure indentation for first line
X  line ||:= blanks1 := repl(" ",3*(current_day-1))
X#establish start point for Hebrew loop
X  start_point := current_day
X#establish end point for Hebrew loop and run civil loop
X  every end_point := start_point to 7 do {
X    line ||:= right(jyr.day,3)
X    if not j_augment() then {jyr_augment(); establish_jyr(); current_day -:= 1; if current_day = 0 then current_day := 7}
X    d_augment()
X    if jyr.day = 1 then break }
X#measure indentation for last line
X  blanks2 := repl(" ",3*(7-end_point))
X  line ||:= blanks2; line ||:= repl(" ",25); line ||:= blanks1
X  every start_point to end_point do {
X    line ||:= right(cyr.day,3)
X    if (cyr.day = 1) then flag := 1 
X    augment()}
X  line ||:= blanks2 ||:= repl(" ",3)
X  fm := cyr.mth
X  if cyr.day = 1 then
X    if cyr.mth = 1 then fm := 12 else fm := cyr.mth - 1
X  if \flag then line ||:= mth_table(fm,2) else
X    line ||:= repl(" ",3)
Xreturn line
Xend
X
Xprocedure mth_table(n,p)
X#generates the short names of Jewish and Civil months. Get to civil side
X#by adding 13 (=max no of Jewish months)
Xstatic corresp
Xinitial corresp := ["NIS","IYA","SIV","TAM","AV ","ELU","TIS","HES","KIS",
X"TEV","SHE","ADA","AD2","JAN","FEB","MAR","APR","MAY","JUN","JUL","AUG","SEP",
X"OCT","NOV","DEC"]
X  if (p ~= 1) & (p ~= 2) then stop("ERROR IN MTH-TABLE") else
X    if p = 2 then n +:= 13
Xreturn corresp[n]
Xend
X
Xprocedure d_augment()
X#increment the day of the week
X  current_day +:= 1
X  if current_day = 8 then current_day := 1
Xreturn
Xend
X
Xprocedure augment()
X#increments civil day, modifies month and year if necessary, stores in
X#global variable cyr
X  if cyr.day < 28 then
X    cyr.day +:= 1 else
X  if cyr.day = 28 then {
X    if (cyr.mth ~= 2) | ((cyr.mth = 2) & isleap(cyr.yr)) then
X      cyr.day := 29 else {
X        cyr.mth := 3
X	cyr.day  := 1}} else
X  if cyr.day = 29 then {
X    if cyr.mth ~= 2 then
X      cyr.day := 30 else {
X      cyr.mth := 3
X      cyr.day := 1}} else
X  if cyr.day = 30 then {
X    if is_31(cyr.mth) then
X      cyr.day := 31 else {
X      cyr.mth +:= 1
X      cyr.day := 1}} else {
X      cyr.day := 1
X      if cyr.mth ~= 12 then
X        cyr.mth +:= 1 else {
X        cyr.mth := 1
X        cyr.yr +:= 1
X        if cyr.yr = 0
X	  then cyr.yr := 1}}
Xreturn
Xend
X
Xprocedure is_31(n)
X#civil months with 31 days
Xreturn n = 1 | n = 3 | n = 5 | n = 7 | n = 8 | n = 10 | n = 12
Xend
X
Xprocedure isleap(n)
X#checks for civil leap year
X  if n > 0 then
Xreturn (n % 400 = 0) | ((n % 4 = 0) & (n % 100 ~= 0)) else
Xreturn (n % 400 = -1) | ((n % 4 = -1) & (n % 100 ~= -1))
Xend
X
Xprocedure j_augment()
X#increments jewish day. months are numbered from nisan, adar sheni is 13.
X#procedure fails at elul to allow determination of type of new year
X  if jyr.day < 29 then
X    jyr.day +:= 1 else
X  if (jyr.day = 30) | always_29(jyr.mth) | ((jyr.mth = 8) & 
X    (days_in_jyr % 5 ~= 0)) | ((jyr.mth = 9) & ((days_in_jyr = 353) |
X    (days_in_jyr = 383))) then
X    jyr.mth +:= jyr.day := 1 else
X  if jyr.mth = 6 then fail else
X  if ((jyr.mth = 12) & (days_in_jyr < 383)) | (jyr.mth = 13) then
X    jyr.mth := jyr.day := 1 else
X  jyr.day := 30
Xreturn
Xend
X
Xprocedure always_29(n)
X#uncomplicated jewish months with 29 days
Xreturn n = 2 | n = 4 | n = 10
Xend
X
Xprocedure jyr_augment()
X#determines the current time of lunation, using the ancient babylonian unit
X#of 1/1080 of an hour. lunation of tishri determines type of year. allows
X#for leap year. halaqim = parts of the hour
Xlocal days, halaqim
X  days := current_molad.day + 4
X  if days_in_jyr <= 355 then {
X    halaqim :=  current_molad.halaqim + 9516
X    days := ((days +:= halaqim / 25920) % 7)
X    if days = 0 then days := 7
X    halaqim := halaqim % 25920} else {
X    days +:= 1
X    halaqim := current_molad.halaqim + 23269
X    days := ((days +:= halaqim / 25920) % 7)
X    if days = 0 then days := 7
X    halaqim := halaqim % 25920}
X  current_molad.day := days
X  current_molad.halaqim := halaqim
X#reset the global variable which holds the current jewish date
X  jyr.yr +:= 1 #increment year
X  jyr.day := 1
X  jyr.mth := 7
X  establish_jyr()
Xreturn
Xend
X
Xprocedure establish_jyr()
X#establish the jewish year from get_rh
Xlocal res
X  res := get_rh(current_molad.day,current_molad.halaqim,no_lunar_yr(jyr.yr))
X  days_in_jyr := res[2]
X  current_day := res[1]
Xreturn
Xend    
X
Xprocedure isin1(i)
X#the isin procedures are sets of years in the Metonic cycle
Xreturn i = (1 | 4 | 7 | 9 | 12 | 15 | 18)
Xend
X
Xprocedure isin2(i)
Xreturn i = (2 | 5 | 10 | 13 | 16)
Xend
X
Xprocedure isin3(i)
Xreturn i = (3 | 6 | 8 | 11 | 14 | 17 | 0)
Xend
X
Xprocedure isin4(i)
Xreturn i = (1 | 2 | 4 | 5 | 7 | 9 | 10 | 12 | 13 | 15 | 16 | 18)
Xend
X
Xprocedure isin5(i)
Xreturn i = (1 | 4 | 9 | 12 | 15)
Xend
X
Xprocedure isin6(i)
Xreturn i = (2 | 5 | 7 | 10 | 13 | 16 | 18)
Xend
X
Xprocedure no_lunar_yr(i)
X#what year in the metonic cycle is it?
Xreturn i % 19
Xend
X
Xprocedure get_rh(d,h,yr)
X#this is the heart of the program. check the day of lunation of tishri
X#and determine where breakpoint is that sets the new moon day in parts
X#of the hour. return result in a list where 1 is day of rosh hashana and
X#2 is length of jewish year
Xlocal c,result
X  c := no_lunar_yr(yr)
X  result := list(2)
X  if d = 1 then {
X  		result[1] := 2
X                if (h < 9924) & isin4(c) then result[2] := 353 else
X		if (h < 22091) & isin3(c) then result[2] := 383 else
X		if (h > 9923) & (isin1(c) | isin2(c)) then result[2] := 355 else
X		if (h > 22090) & isin3(c) then result[2] := 385
X		} else
X  if d = 2 then {
X  		if ((h < 16789) & isin1(c)) |
X		   ((h < 19440) & isin2(c)) then {
X				                 result[1] := 2
X					         result[2] := 355
X					         } else
X		if (h < 19440) & isin3(c) then  {
X				                 result[1] := 2
X					         result[2] := 385
X					         } else
X  		if ((h > 16788) & isin1(c)) |
X		   ((h > 19439) & isin2(c)) then {
X				                 result[1] := 3
X					         result[2] := 354
X					         } else
X                if (h > 19439) & isin3(c) then  {
X				                 result[1] := 3
X					         result[2] := 384
X					         }
X		} else
X  if d = 3 then {
X  		if (h < 9924) & (isin1(c) | isin2(c)) then {
X							   result[1] := 3
X							   result[2] := 354
X							   } else
X		if (h < 19440) & isin3(c) then {
X					       result[1] := 3
X					       result[2] := 384
X					       } else
X		if (h > 9923) & isin4(c) then {
X					      result[1] := 5
X					      result[2] := 354
X					      } else
X		if (h > 19439) & isin3(c) then {
X					       result[1] := 5
X					       result[2] := 383}
X		} else
X  if d = 4 then {
X  		result[1] := 5
X		if isin4(c) then result[2] := 354 else
X		if h < 12575 then result[2] := 383 else
X		result[2] := 385
X		} else
X  if d = 5 then {
X                if (h < 9924) & isin4(c) then {
X					      result[1] := 5
X					      result[2] := 354} else
X		if (h < 19440) & isin3(c) then {
X					       result[1] := 5
X					       result[2] := 385
X					       } else
X		if (9923 < h < 19440) & isin4(c) then {
X						      result[1] := 5
X						      result[2] := 355
X						      } else
X		if h > 19439 then {
X		  		  result[1] := 7
X                		  if isin3(c) then result[2] := 383 else
X		                    result[2] := 353
X				  }
X		} else
X  if d = 6 then {
X	        result[1] := 7
X	        if ((h < 408) & isin5(c)) | ((h < 9924) & isin6(c)) then
X	      					result[2] := 353 else
X	        if ((h < 22091) & isin3(c)) then result[2] := 383 else
X	        if ((h > 407) & isin5(c)) | ((h > 9923) & isin6(c)) then
X	      					result[2] := 355 else
X	        if (h > 22090) & isin3(c) then result[2] := 385
X	        } else
X  if d = 7 then	if (h < 19440) & (isin5(c) | isin6(c)) then {
X							  result[1] := 7
X							  result[2] := 355
X							  } else
X		if (h < 19440) & isin3(c) then {
X					       result[1] := 7
X					       result[2] := 385
X					       } else {
X					              result[1] := 2
X						      if isin4(c) then
X						        result[2] := 353 else
X							result[2] := 383}
Xreturn result
Xend
X
X
X#If the following help file doesnt quite look right try throwing in a
X#few blank lines here or there, or take them out.
X#End of section one------------CUT HERE----------------------------------
X
XThis program accepts a year of the Jewish calendar, for example
X"5750", and produces on the screen a calendar of that year with a 
Xvisually equivalent civil calendar opposite it for easy conversion of 
Xdates. The months of the civil year are abbreviated to
X
XJAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC
X
Xand of the Jewish calendar to
X
XNIS IYA SIV TAM AV ELU TIS HES KIS TEV SHE ADA AD2.
X
XMonths are normally displayed three at a time. You call up the next
Xthree by hitting return. At the end of the year you can indicate if
Xyou wish the program to conclude, by hitting return again. If in
Xresponse to the question, Do you wish to continue? you enter "y" and
Xhit return, the next year will be displayed.
X
XEach Jewish month has its name on the left. The corresponding secular
Xdates will have the name of the month on the right, and when the month
Xchanges it will be indicated on the right also.
X
X
X
X
XIf you wish, you may enter a civil year in the form -70 for BCE dates
Xand +70 for CE dates. The Jewish year beginning prior to Jan 1 of that
Xyear will be displayed, and you can continue with the next Jewish year
Xif you wish to complete the desired civil year.
X
XYou may enter CE or AD instead of + or BC or BCE instead of the minus
Xsign if you wish. It is best to avoid spaces, so enter 1987AD, for
Xexample.
X
XThe year 0 is not meaningful in either calendar. No date prior to 1 
Xin the Jewish calendar should be entered. The program will calculate
Xany future year, but will take longer for years much beyond the year
X6020 in the Jewish reckoning. For example, the year 7000 will take
Xthree minutes or so to appear. Earlier years should appear in a few
Xseconds.
X
XA status line at the bottom of the screen indicates the civil and
XJewish year, and the number of days in each. Jewish years may contain
X354, 355, 356, 384, 385 or 386 days according to circumstances.
X
X
X
X
XWhen you are familiar with this program you can enter the years you
Xwish to see on the command line. For example, if you call the program
X   		iconx calendar 5704 +1987 1BC
Xyou will see in turn the Jewish year 5704, the Jewish year commencing
Xin 1986 and the Jewish year commencing in 2 B.C.E. You still have the
Xoption of seeing the years subsequent to these years if you wish. Just
Xenter "y" when asked if you want to continue. When you enter "n", you
Xwill get the next year of your list.
X
XAll civil dates are according to the Gregorian Calendar which first
Xcame into use in 1582 and was accepted in different places at
Xdifferent times. Prior to that date the Julian calendar was in use. At
Xthe present time the Julian calendar is 13 days behind the Gregorian
XCalendar, so that March 15 1917 in our reckoning is March 2 in the
XJulian Calendar. The following table shows the number of days that
Xmust be subtracted from the Gregorian date given here to find the Julian
Xdate. In the early centuries of this table and before the calendar was
Xintercalated erratically, so a simple subtraction is not possible. Note that
Xthe change in the number to subtract applies from March 1 in the century
Xyear, since in the Julian Calendar that will be February 29 except in years
Xdivisible by 400 which are leap years in the Gregorian calendar also.
X
XCentury		# to subtract		Century		# to subtract
X  21			13		  11			6
X  20			13		  10			5
X  19			12		   9			4
X  18			11		   8			4
X  17			10		   7			3
X  16			10		   6			2
X  15			 9		   5			1
X  14			 8		   4			1
X  13			 7		   3			0
X  12			 7		   2		       -1
X  					   1		       -2
X#End of section two-----------CUT HERE----------------------------------
X3%8255%8%20%-3762%384
X4%23479%9%8%-3742%354
X4%24950%8%28%-3722%354
X5%501%8%17%-3702%385
X6%15725%9%6%-3682%355
X6%17196%8%26%-3662%355
X6%18667%8%15%-3642%383
X1%7971%9%3%-3622%353
X1%9442%8%23%-3602%383
X2%24666%9%10%-3582%354
X3%217%8%30%-3562%354
X3%1688%8%19%-3542%384
X4%16912%9%7%-3522%354
X4%18383%8%27%-3502%354
X4%19854%8%17%-3482%385
X6%9158%9%5%-3462%355
X6%10629%8%25%-3442%355
X6%12100%8%14%-3422%383
X1%1404%9%2%-3402%353
X1%2875%8%23%-3382%383
X2%18099%9%10%-3362%354
X2%19570%8%30%-3342%354
X2%21041%8%19%-3322%384
X4%10345%9%7%-3302%354
X4%11816%8%28%-3282%354
X4%13287%8%17%-3262%385
X6%2591%9%5%-3242%353
X6%4062%8%25%-3222%383
X7%19286%9%11%-3202%355
X7%20757%9%2%-3182%353
X7%22228%8%22%-3162%383
X2%11532%9%8%-3142%355
X2%13003%8%28%-3122%355
X2%14474%8%17%-3102%385
X4%3778%9%7%-3082%354
X4%5249%8%27%-3062%354
X4%6720%8%16%-3042%383
X5%21944%9%4%-3022%353
X5%23415%8%24%-3002%383
X7%12719%9%11%-2982%355
X7%14190%8%31%-2962%355
X7%15661%8%20%-2942%385
X2%4965%9%8%-2922%355
X2%6436%8%28%-2902%355
X2%7907%8%18%-2882%385
X3%23131%9%7%-2862%354
X3%24602%8%27%-2842%383
X5%13906%9%13%-2822%355
X5%15377%9%2%-2802%355
X5%16848%8%22%-2782%385
X7%6152%9%10%-2762%355
X7%7623%8%30%-2742%355
X7%9094%8%19%-2722%385
X1%24318%9%7%-2702%355
X1%25789%8%28%-2682%355
X2%1340%8%17%-2662%385
X3%16564%9%6%-2642%354
X3%18035%8%24%-2622%384
X5%7339%9%12%-2602%354
X5%8810%9%2%-2582%354
X5%10281%8%22%-2562%385
X6%25505%9%10%-2542%355
X7%1056%8%30%-2522%355
X7%2527%8%19%-2502%385
X1%17751%9%8%-2482%355
X1%19222%8%28%-2462%383
X3%8526%9%15%-2442%354
X3%9997%9%6%-2422%354
X3%11468%8%24%-2402%384
X5%772%9%12%-2382%354
X5%2243%9%1%-2362%354
X5%3714%8%21%-2342%385
X6%18938%9%9%-2322%355
X6%20409%8%29%-2302%355
X6%21880%8%19%-2282%383
X1%11184%9%7%-2262%355
X1%12655%8%27%-2242%383
X3%1959%9%14%-2222%354
X3%3430%9%3%-2202%354
X3%4901%8%24%-2182%384
X4%20125%9%12%-2162%354
X4%21596%9%1%-2142%354
X4%23067%8%21%-2122%385
X6%12371%9%9%-2102%355
X6%13842%8%30%-2082%383
X1%3146%9%18%-2062%353
X1%4617%9%7%-2042%353
X1%6088%8%27%-2022%383
X2%21312%9%14%-2002%354
X2%22783%9%3%-1982%354
X2%24254%8%23%-1962%384
X4%13558%9%11%-1942%354
X4%15029%8%31%-1922%354
X4%16500%8%20%-1902%385
X6%5804%9%9%-1882%353
X6%7275%8%29%-1862%383
X7%22499%9%17%-1842%353
X7%23970%9%6%-1822%353
X7%25441%8%26%-1802%383
X2%14745%9%13%-1782%355
X2%16216%9%2%-1762%355
X2%17687%8%22%-1742%385
X4%6991%9%11%-1722%354
X4%8462%8%31%-1702%383
X5%23686%9%20%-1682%353
X5%25157%9%9%-1662%353
X6%708%8%29%-1642%383
X7%15932%9%15%-1622%355
X7%17403%9%4%-1602%355
X7%18874%8%24%-1582%385
X2%8178%9%12%-1562%355
X2%9649%9%1%-1542%355
X2%11120%8%21%-1522%385
X4%424%9%10%-1502%354
X4%1895%8%31%-1482%383
X5%17119%9%17%-1462%355
X5%18590%9%6%-1442%355
X5%20061%8%28%-1422%383
X7%9365%9%14%-1402%355
X7%10836%9%4%-1382%355
X7%12307%8%24%-1362%385
X2%1611%9%12%-1342%355
X2%3082%9%1%-1322%385
X3%18306%9%21%-1302%354
X3%19777%9%11%-1282%354
X3%21248%8%31%-1262%383
X5%10552%9%17%-1242%355
X5%12023%9%6%-1222%355
X5%13494%8%26%-1202%385
X7%2798%9%14%-1182%355
X7%4269%9%3%-1162%355
X7%5740%8%23%-1142%385
X1%20964%9%11%-1122%355
X1%22435%8%31%-1102%385
X3%11739%9%21%-1082%354
X3%13210%9%10%-1062%354
X3%14681%8%28%-1042%384
X5%3985%9%16%-1022%354
X5%5456%9%5%-1002%354
X5%6927%8%26%-982%385
X6%22151%9%14%-962%355
X6%23622%9%3%-942%385
X1%12926%9%22%-922%355
X1%14397%9%11%-902%355
X1%15868%9%1%-882%383
X3%5172%9%19%-862%354
X3%6643%9%8%-842%354
X3%8114%8%28%-822%384
X4%23338%9%16%-802%354
X4%24809%9%5%-782%354
X5%360%8%25%-762%385
X6%15584%9%13%-742%355
X6%17055%9%2%-722%383
X1%6359%9%21%-702%353
X1%7830%9%11%-682%353
X1%9301%8%31%-662%383
X2%24525%9%18%-642%354
X3%76%9%7%-622%354
X3%1547%8%27%-602%384
X4%16771%9%16%-582%354
X4%18242%9%5%-562%385
X6%7546%9%24%-542%355
X6%9017%9%13%-522%353
X6%10488%9%2%-502%383
X7%25712%9%22%-482%353
X1%1263%9%11%-462%353
X1%2734%8%31%-442%383
X2%17958%9%18%-422%354
X2%19429%9%6%-402%355
X2%20900%8%27%-382%384
X4%10204%9%15%-362%354
X4%11675%9%4%-342%383
X6%979%9%23%-322%355
X6%2450%9%12%-302%353
X6%3921%9%2%-282%383
X7%19145%9%19%-262%355
X7%20616%9%10%-242%353
X7%22087%8%30%-222%383
X2%11391%9%16%-202%355
X2%12862%9%6%-182%385
X4%2166%9%26%-162%354
X4%3637%9%15%-142%354
X4%5108%9%4%-122%383
X5%20332%9%23%-102%353
X5%21803%9%13%-82%353
X5%23274%9%2%-62%383
X7%12578%9%19%-42%355
X7%14049%9%8%-22%355
X7%15520%8%28%-2%385
X2%4824%9%16%19%355
X2%6295%9%5%39%385
X3%21519%9%25%59%354
X3%22990%9%14%79%354
X3%24461%9%3%99%383
X5%13765%9%21%119%355
X5%15236%9%10%139%355
X5%16707%8%30%159%385
X7%6011%9%18%179%355
X7%7482%9%7%199%385
X1%22706%9%27%219%355
X1%24177%9%16%239%355
X1%25648%9%5%259%385
X3%14952%9%25%279%354
X3%16423%9%14%299%354
X3%17894%9%2%319%384
X5%7198%9%21%339%354
X5%8669%9%10%359%354
X5%10140%8%30%379%385
X6%25364%9%18%399%355
X7%915%9%7%419%385
X1%16139%9%26%439%355
X1%17610%9%15%459%355
X1%19081%9%4%479%383
X3%8385%9%22%499%354
X3%9856%9%12%519%354
X3%11327%9%1%539%384
X5%631%9%20%559%354
X5%2102%9%9%579%385
X6%17326%9%28%599%355
X6%18797%9%18%619%355
X6%20268%9%7%639%383
X1%9572%9%26%659%353
X1%11043%9%15%679%355
X1%12514%9%4%699%383
X3%1818%9%23%719%354
X3%3289%9%12%739%354
X3%4760%9%1%759%384
X4%19984%9%20%779%354
X4%21455%9%9%799%385
X6%10759%9%28%819%355
X6%12230%9%17%839%355
X6%13701%9%6%859%383
X1%3005%9%25%879%353
X1%4476%9%14%899%353
X1%5947%9%4%919%383
X2%21171%9%22%939%354
X2%22642%9%11%959%384
X4%11946%9%30%979%354
X4%13417%9%19%999%354
X4%14888%9%9%1019%385
X6%4192%9%28%1039%355
X6%5663%9%17%1059%353
X6%7134%9%6%1079%383
X7%22358%9%25%1099%353
X7%23829%9%15%1119%353
X7%25300%9%4%1139%383
X2%14604%9%21%1159%355
X2%16075%9%10%1179%385
X4%5379%9%30%1199%354
X4%6850%9%19%1219%354
X4%8321%9%8%1239%383
X5%23545%9%27%1259%353
X5%25016%9%16%1279%353
X6%567%9%5%1299%383
X7%15791%9%23%1319%355
X7%17262%9%12%1339%385
X2%6566%10%1%1359%355
X2%8037%9%20%1379%355
X2%9508%9%9%1399%385
X3%24732%9%30%1419%354
X4%283%9%19%1439%354
X4%1754%9%8%1459%383
X5%16978%9%25%1479%355
X5%18449%9%14%1499%355
X5%19920%9%6%1519%383
X7%9224%9%23%1539%355
X7%10695%9%12%1559%385
X1%25919%10%1%1579%355
X2%1470%9%20%1599%355
X2%2941%9%9%1619%385
X3%18165%9%29%1639%354
X3%19636%9%18%1659%354
X3%21107%9%7%1679%383
X5%10411%9%24%1699%355
X5%11882%9%14%1719%385
X7%1186%10%3%1739%355
X7%2657%9%22%1759%355
X7%4128%9%11%1779%385
X1%19352%9%30%1799%355
X1%20823%9%20%1819%355
X1%22294%9%9%1839%385
X3%11598%9%29%1859%354
X3%13069%9%18%1879%354
X3%14540%9%5%1899%384
X5%3844%9%25%1919%354
X5%5315%9%14%1939%385
X6%20539%10%3%1959%355
X6%22010%9%22%1979%355
X6%23481%9%11%1999%385
X1%12785%9%30%2019%355
X1%14256%9%19%2039%355
X1%15727%9%8%2059%383
X3%5031%9%26%2079%354
X3%6502%9%15%2099%384
X4%21726%10%5%2119%354
X4%23197%9%24%2139%354
X4%24668%9%13%2159%385
X6%13972%10%2%2179%355
X6%15443%9%21%2199%355
X6%16914%9%11%2219%383
X1%6218%9%30%2239%353
X
X
X
SHAR_EOF
echo "File cal.text is complete" &&
rm -f shar3_seq_.tmp
echo "You have unpacked the last part"
exit 0

   -Richard L. Goerwitz              goer%sophist at uchicago.bitnet
   goer at sophist.uchicago.edu         rutgers!oddjob!gide!sophist!goer



More information about the Alt.sources mailing list