Skip redundant pieces

Appendix A: ARTS Form Design Tips

Last Revision: 02/23/06


The ARTS Debug File

The ARTS debug file is a very useful way of determining which courses go into a requirement, and how requirements are optimized. To access the debug file for the last ARTS form(s) you ran, use the navigation in Figure AA-1:

Fig. AA-1: Navigation to ARTS Debug File.

Figure AA-2 shows a sample debug file:

A

==== JAYHAWK JAY M         123456  0123456 ====

KUHRS    N: ENGL0101( 3 )----Y! MATH0104( 4 )----Y! PHIL0148( 5 )----Y!
SPAN0108( 6 )----Y! EECS0168( 7 )----Y! ENGL0102( 8 )----Y!
MATH0121( 9 )----Y! MATH0197( 10 )----Y! SPAN0212( 11 )----Y!
SPAN0216( 13 )----Y! BUS 0240( 14 )----Y! MATH0116( 15 )----Y!

TOTALHRS N: MATH0101( 0 )----Y! HIST0128( 1 )----Y! PHSXNPL ( 2 )----Y!
ENGL0101( 3 )----Y! MATH0104( 4 )----Y! PHIL0148( 5 )----Y!
SPAN0108( 6 )----Y! EECS0168( 7 )----Y! ENGL0102( 8 )----Y!

MDCM     N: MDCM0625( 33D)----Y! MDCM0626( 39E)----Y! MDCM0627( 45F)----Y!

PHCH     N: PHCH0517( 24A)----Y! PHCH0518( 31B)----Y! PHCH0625( 35C)----Y!
PHCH0626( 41D)----Y! PHCH0667( 52E)----Y!

ELECTIVE N: COMS0310( 33 )----Y! COMS0330( 34 )----Y! COMS0331( 35 )----Y!
COMS0332( 39 )----Y! COMS0440( 40 )----Y! COMS0447( 41 )----Y!
COMS0499( 42 )----Y! COMS0560( 43 )----Y!

Optimizing: MDCM

===== MDCM 3/3
1.  MDCM (r=26 c=3 b=1)

list #1

MDCM    N: MDCM0625( 33D)-+--Y! MDCM0626( 39E)-+--Y! MDCM0627( 45F)-+--Y!

------------------------------------------------
delink MDCM MDCM0625
delink 1 MDCM 0625 tn=0|pn=0|bn=32|glob=0|tree=0|block=0|fam=0|
forwlink PROF (tn=0)(pn=0)(bn=32)(g=2)(t=2)(b=2)(f=2)
delink MDCM MDCM0626
delink 1 MDCM 0626 tn=0|pn=0|bn=32|glob=0|tree=0|block=0|fam=0|
forwlink PROF (tn=0)(pn=0)(bn=32)(g=2)(t=2)(b=2)(f=2)
delink MDCM MDCM0627
delink 1 MDCM 0627 tn=0|pn=0|bn=32|glob=0|tree=0|block=0|fam=0|
forwlink PROF (tn=0)(pn=0)(bn=32)(g=2)(t=2)(b=2)(f=2)

MDCM    N: MDCM0625( 33D)*+--Y! MDCM0626( 39E)*+--Y! MDCM0627( 45F)*+--Y!

Optimizing: PHCH
===== PHCH 5/5
1. PHCH     (r=31 c=5 b=1)

list #1

PHCH     Y: PHCH0517( 24A)-+--Y! PHCH0518( 31B)-+--Y! PHCH0625( 35C)-+--Y!
PHCH0626( 41D)-+--Y! PHCH0667( 52E)-+--Y!
------------------------------------------------
delink PHCH PHCH0517
delink 2 PHCH 0517 tn=0|pn=0|bn=32|glob=0|tree=0|block=0|fam=0|
forwlink PROF (tn=0)(pn=0)(bn=32)(g=2)(t=2)(b=2)(f=2)
delink PHCH PHCH0518
delink 2 PHCH 0518 tn=0|pn=0|bn=32|glob=0|tree=0|block=0|fam=0|
forwlink PROF (tn=0)(pn=0)(bn=32)(g=2)(t=2)(b=2)(f=2)
delink PHCH PHCH0625
delink 2 PHCH 0625 tn=0|pn=0|bn=32|glob=0|tree=0|block=0|fam=0|
forwlink PROF (tn=0)(pn=0)(bn=32)(g=2)(t=2)(b=2)(f=2)
delink PHCH PHCH0626
delink 2 PHCH 0626 tn=0|pn=0|bn=32|glob=0|tree=0|block=0|fam=0|
forwlink PROF (tn=0)(pn=0)(bn=32)(g=2)(t=2)(b=2)(f=2)
delink PHCH PHCH0667
delink 2 PHCH 0667 tn=0|pn=0|bn=32|glob=0|tree=0|block=0|fam=0|
forwlink PROF (tn=0)(pn=0)(bn=32)(g=2)(t=2)(b=2)(f=2)

PHCH     Y: PHCH0517( 24A)*+--Y! PHCH0518( 31B)*+--Y! PHCH0625( 35C)*+--Y!
PHCH0626( 41D)*+--Y! PHCH0667( 52E)*+--Y!

Optimizing: ELECTIVE

===== ELECTIVE 0/4
1. ELECTIVE (r=31 c=4 b=1)

list #5

ELECTIVE Y: --------( -1 )----Y! --------( -1 )----Y! --------( -1 )----Y!
--------( -1 )----Y! COMS0440( 40 )-+--Y! COMS0447( 41 )-+--Y!
COMS0499( 42 )-+--Y! COMS0560( 43 )-+--Y!
------------------------------------------------
delink ELECTIVE COMS0440
delink 61 COMS 0440 tn=1|pn=80|bn=32|glob=0|tree=0|block=0|fam=0|
delink ELECTIVE COMS0447
delink 61 COMS 0447 tn=1|pn=80|bn=32|glob=0|tree=0|block=0|fam=0|
delink ELECTIVE COMS0499
delink 61 COMS 0499 tn=1|pn=80|bn=32|glob=0|tree=0|block=0|fam=0|
delink ELECTIVE COMS0560
delink 61 COMS 0560 tn=1|pn=80|bn=32|glob=0|tree=0|block=0|fam=0|

ELECTIVE Y: --------( -1 )----Y! --------( -1 )----Y! --------( -1 )----Y!
--------( -1 )----Y! COMS0440( 40 )*+--Y! COMS0447( 41 )*+--Y!
COMS0499( 42 )*+--Y! COMS0560( 43 )*+--Y!

B
C

Figure AA-2--Sample Section of an ARTS Debug File.

TOTALHRS, PROF (Professional Courses) and KUHRS are simply hours counters, and MDCM (Medicinal Chemistry), PHCH (Pharmaceutical Chemistry), and ELECTIVE are actual course requirements for the purposes of this example. Keep in mind that the requirements are listed and have course priority according to their order in the tree from left to right and down. Therefore, the higher the course is in the tree, the earlier it is listed in the debug file and the more authority it has to take courses from other requirements if there is a cosatisfaction conflict. Referring to the lettered sections of the debug file on the left-hand side, the following sections of the Debug file will now be discussed:

  1. Student Name/ID and Initial Course Lists. This section first contains the name, EMPLID, and old 6-digit kuid of the student. Then all requirements and initial course lists are displayed. The requirement names, shown in bold for this example, are KUHRS, TOTALHRS, MDCM, and PHCM. Note that courses plugging into these requirements are then listed immediately after the requirement names--ENGL 0101, MATH 104, and others plug into TOTALHRS for example. Each course is listed with a number next to it, which signifies its sequence in the chronological order of courses (the number '0' signifying the first course the student has in their course listing). Sometimes there is also a letter with the number, which signifies which area the course is plugging into within the requirement. For example, MDCM 0625 plugs into area 'D' of the MDCM requirement and PHCH 0517 plugs into area 'A' of the PHCH requirement. This section contains only preliminary lists for the requirements, and are not final lists for the requirements that need to be optimized. Any requirements of type "C" that just count hours, like TOTALHRS or KUHRS in this example, don't need to be optimized--hence the initial course listing becomes a final course listing. Whether the requirement needs to be optimized is determined by its type--'R' type requirements are always optimized, and 'C' type requirements are never optimized.
  2. Optimization of the First Requirement Begins. After all initial course lists are printed, ARTS looks for the first 'R' requirement to optimize and begins optimizing it. ARTS then determines the number of eligible courses and how many are required--for example, MDCM has three courses in it, and those three are required, so "3/3" is displayed. The courses are listed initially again, and all other 'R' requirements are scanned for instances of each course in this requirement. If this requirement has priority over the other requirements that share courses with it, it can "delink" courses from those other requirements and claim the courses it needs. Sometimes another requirement needs to be "Look Ahead Optimized" before the optimization of this requirement is complete, because the other requirement has a higher priority. After the necessary courses are compiled, delinked and optimized, a final list is printed. The final list shows an asterisk (*) next to each course that has been selected for that requirement. Note that the MDCM has finalized all three courses in its initial list, so no other requirement has taken courses away from it.
  3. More Optimization of Requirements. Other requirements, specifically PHCH and ELECTIVE in this example, are optimized. Note that ELECTIVE does not require a specific number of courses, so the optimization of ELECTIVE begins with "0/4", which means it has selected four courses initially, but doesn't specifically require four. ELECTIVE is also the last requirement in the list in this example, so it has the lowest priority of all requirements. This means that, if there is a cosatisfaction conflict between it and a higher-priority requirement, it will always lose the conflict. In this example, the initial list for ELECTIVE contains COMS 0310, COMS 0330 and other courses. As optimization continues, COMS 0310 and COMS 0330 are selected by higher-priority requirements (not shown here), so ELECTIVE loses these courses (and others). When a requirement loses a course (also called being delinked), the course is replaced by "--------( -1 )" in the course list, so it will print out that way for the remainder of the optimization process. As you can see at the bottom of the debug file, the final list of ELECTIVE still contains four courses that no other requirements claimed.

Marking Courses on the Transcript

Sometimes it is helpful to mark courses on a transcript if certain circumstances have been met. There are three ways courses can marked on the transcript, detailed below:

  • Course List(MK). Use the "MK" field in a requirement's course list to mark specific courses that are used by that requirement. This option gives you the ability to mark a particular course that is used by a requirement if you wish.
  • Action. Trigger an Action using a requirement's "If Over Limit Do" field on the main Requirements editor screen, and then create an Action with a type of 'M' and an object of 'C' (Mark Course). This will cause any course that triggers the Over Limit action (breaks the hours limit of the requirement) to have the character in the "value" field printed next to it.
  • Translated Course. The last column in the Translated Courses Table contains a "MARK?" field. If you place a "Y" in that field, that course will be marked with a tilde (~) whenever it is translated.

Defining Levels of Exclusivity

When you set up requirements in ARTS, you can define up to four levels of "Exclusivity". "Exclusivity" means that you can partition off a requirement four different ways:

  • Area. Simply put an area letter next to certain courses in the requirement that you wish to separate out, and the courses will automatically be placed in those areas. You can use the Area Editor to specify the minimum and maximum courses per area if you wish. You can then specify a certain number of areas that need to be represented in the requirement. Placing courses in areas helps you specify a particular sequence that you want the courses printed in on the ARTS form.
  • Exclusion Group. You can use the "Ex" field in the course list to specify yet another group for the course. The Exclusion Group prevents courses that share the same group from being placed into the same requirement. For example, if ENGL 0101 and ENGL 0102 are placed into the exclusion group "e", this means that both cannot be used to fulfill the requirement. If ENGL 0101 is in group "e" and ENGL 0102 is in group "f", they can both be used in the same requirement.
  • Dept/Area Unique. You can set the "Dept/Area Unique" flag to 'Y' to prevent multiple courses with the same department from plugging into the same area. For example, CHEM 0125 and CHEM 0126 could not both plug into the same requirement if they belonged to the same area and the "Dept/Area Unique" flag was set to 'Y'.
  • Min/Max Areas/Depts. You can use these fields in the Requirements Editor to specify a particular combination of Areas and Course Departments allowed into the requirement.

Sequence Is Important

ARTS is set up to process everything sequentially. You can use that to your advantage if you want ARTS to see some items before others in a degree processing situation. A few examples:

  • Degree Maps. Degree Maps are processed sequentially, so the first lines of your degree map are what you want ARTS to see first, and anything at the bottom of the Degree Map will likely be defaults in case no other rows match the student's school/plan.
  • Degree Trees. Degree Trees are processed sequentially as well, so any degree requirements at the top of the tree always get first choice of any courses. In the case of hours or GPA calculations like "TOTALHRS", sequence does not matter. Low-priority requirements such as "ELECTIVE"-types should be placed at the very bottom of the tree; they will get the courses unused by any other requirements.
  • Course Lists. Course lists are also processed sequentially. This is why Exceptions are always placed at the top, so they are eliminated first. If you want ARTS to try and plug in a particular course before any others in the requirement, place it at the top of the list.

ARTS FIB Language Words

The following tables show all ARTS FIB language words, or "tokens", separated into groups according to how they are used on the FIB form. Atoms, Formatters and Modifiers are separated into tables. The Atoms, which are basic identifiers in FIB language like DATE and NAME, are separated into Generic, Student, Test Score, Term(session), Requirement, Course, and Graduate School Atoms.

Atoms


Generic Atoms

These atoms can be used without a modifier or formatter; many of them are self-explanatory.

Token Name Length Description
ARTS-LOC 20 dept where current arts form is being generated
ARTS-VER 20 arts version
ARTSFORM ARTS form being used
COUNTER 3 universal counter
CURRTERM 4 current term
DATA1 20 reference to information stored using STORE1
DATA2 20 reference to information stored using STORE2
DATA3 20 reference to information stored using STORE3
DATA4 20 reference to information stored using STORE4
DATE 8 Today's Date
DAY 2 day of the month, I.e. "15"
EMPTY alternate data character for null fields
FIELD get the previous line's data
FIELDS often followed by a formatter like "UNDERLINE"
GOTO says go to whatever label is given after this word
LISTING can be used to specify only certain terms that are listed in the transcript
MONTH 2 current month, I.e. "January"
NOTES can be used to specify a format for notes (memos referred to by "@N")
OVERLAY flag if form is an overlay
PAGE 3 number of current page
PROG-ON Turn on in-progress flag--current term to stars
PROG-OFF Turn off in-progress flag--current term to stars
SKIP Skip the rest of this ARTS form
SPACES fills the blank with alternate for null fields
TOTAL 6 The accumulated total of items starting when ACCUM is first used
USEFORM used to pull another FIB form--can be catalog form or just form
YEAR 2 current year, I.e. "2004"

Student Atoms

These atoms refer specifically to student data. Most of them, except DEGREE/PLAN and STREET/CITY/STATE/ZIP, do not require a modifier.

Token Name Length Description
ADVISOR 8 student's advisor
APPLDEG 1 applied for degree flag
BIRTHDAY 6 student's birthday--YYYYMMDD
CAMPUS 3 students enrolled campus
CITY 14 city of current address
CUM-GPA 4 ku cum gpa
CUM-PTS 6 ku cum points
COUNTRY 4 country code of current address
DAWCOMP 8 completion date of selected awarded degree
DAWDATE 8 award date of selected awarded degree
DAWDEG 3 plan of selected awarded degree
DAWDIST 1 indicator of highest distinction for selected awarded degree
DAWHONOR 1 indicator of honors for selected awarded degree
DAWMAJOR 4 subplan of selected awarded degree
DEGREE/PLAN 10 student's plan
DIDGRAD 4 graduation date
EMPLID 11 student 11-digit ID from SAKU
ETHCODE 1 student's ethnic code
FNAME 20 parses out student's first name
HOME-LOC 4 4-character Home location of student (State and County)
HRS-AF 6 ku attempted hours
HRS-AD 6 ku passed hours
ID 6 student's 6-digit KUID
INITTERM 4 student's initial term
LASTTERM 4 student's last term in school
LEVEL 3 credit level of course if after CREDIT, else just student level (I.e. "10" for freshman)
LNAME 20 parses out student's last name
MAJOR-DP 4 the default course department for student's plan
MAJOR-DS 30 student's plan description
MARITAL 1 marital status of student
MINOR-DS 20 student's plan description
MINOR/SUBPLAN 10 student's subplan
NAME 30 student's full name (LAST FIRST MIDDLE)
PARENT 30 parent's name from third address
PHONE 16 complete phone number
PHONE-XT 4 extension of student's phone number
PHONE-AC 3 area code of student's phone number
PHONE-EX 3 exchange of student's phone number (middle 3)
PHONE-NO 4 last four digits of student's phone number
RESFLAG 1 residency flag of student
SCHOOL 4 student's current school
STATUS 1 status indicator for current course
SEX 1 students sex
SSN 9 student's social security number
STREET 25 street of current address selected
STATE 2 state of current address
WILLGRAD 4 estimated graduation date
ZIP4 4 last four numbers of the Zip+4
ZIP5 5 first four numbs of the Zip+4
ZIP/ZIPCODE 9 zip code of current address

Test Score Atoms

These Atoms all require a Modifier, like "First" or "Next", to select the test data to print.

Token Name Length Description
SCORE 3 used to find test score for selected test and section
SECTION 4 used to find desired test section
TEST 3 name of selected test
TESTDATE 4 date of selected test

Session (Term) Atoms

These Atoms all require a Modifier, like "First" or "Next", to select the session data to print.

Token Name Length Description
HONORS 2 honors indicator for selected session
PROBATIO 4 probation indicator for selected session
SESSION 4 a particular term that is selected using modifiers
SESS-SCH/HOLD 3 school for selected session
SESS-LVL 2 level of selected session

Requirement Atoms

These Atoms all require a selected Requirement to print.

Token Name Length Description
AREA-1 2 actual course area total for the first area in the requirement
AREA-2 2 actual course area total for the second area in the requirement
AREA-3 2 actual course area total for the third area in the requirement
AREA-4 2 actual course area total for the fourth area in the requirement
AREAS 2 minimum required areas in selected requirement
COUNT 3 number of courses in a requirement
DCLDSCNR 20 description of selected declared major (no dependence on FIB form)
DECL 4 selected declared major
DECLDESC 20 description of selected declared major
DEPTS 2 minimum required depts in selected requirement
DESC 20 description of current selected requirement
DIFFDEPT get the course with a different dept than current
GPA 4 gpa of courses in a requirement
HOURS 6 hours count of courses in a requirement
HOW-SAT 8 How a requirement is satisfied. C = "Courses",T = "Test",A = "Action",P = "Personal Reqs",Y = "Sub-Reqs", otherwise "Not Satisfied"
MARKCRS 1 checks for course in requirement that has marked term
MARKAR1 1 indicates whether the first area in a requirement is being satisfied by a course in a marked term.
MARKAR2 1 indicates whether the second area in a requirement is being satisfied by a course in a marked term.
MARKAR3 1 indicates whether the third area in a requirement is being satisfied by a course in a marked term.
MARKAR4 1 indicates whether the fourth area in a requirement is being satisfied by a course in a marked term.
MORE more courses after current course position?
POINTS/PTS 6 actual grade points for the selected requirement
PREVDEG 52 selected previous degree character string (degree type, institution, date completed
REQNAME 8 name of selected requirement
REQTERM/PLANTERM 4 requirement term of selected plan
SAMEDEPT get the course with the same dept than current
SATISFIE 1 whether or not selected requirment is satisfied
SCHTERM 4 term in which school was declared
WHY-NOT 10 why isn't current requirement satisfied?

Course Atoms

These Atoms all require a Modifier, like "First" or "Next", to select the course to print.

Token Name Length Description
ACTCODE 1 activity code of selected course
AREA 1 area used by selected course
CANCEL 1 cancel flag for selected course
CCCODE 3 cccode of selected course
CCRS 8 (same as COURSE)
COURSE 9 selected course (dept and number)
CREDIT 4 credit hours for selected course
DEPT 4 department of selected course
FORMAT 1 format indicator for selected course
GRADE 2 grade of selected course
GRDPTS 5 grade points of selected course
INSTITUT 6 institution code for selected transfer course
LINENO 5 line number of selected course
LOCATION 1 transfer/KU flag for selected course
NUMBER/NUM 4 number of selected course
REPEAT 1 repeat indicator for selected course
TERM 4 term in which selected course was taken
TITLE 18 title of selected course
UNIVPROB 2 university probation indicator for selected course's term

Graduate School Atoms


Token Name Length Description
ADMDATE 4 date admitted into graduate school
COENROLL 1 flag that indicates whether student is coenrolled
DAFD 1 flag indicating whether student has filed doctoral AFD in graduate school
DEFDATE 6 doctoral defense date
DEFPASS 1 flag that indicates whether student has passed their doctoral defense
DEXMDATE 6 doctoral exam date
DEXMPASS 1 flag that indicates whether student has passed their doctoral exam
DGRDDATE 6 phd grad date
DIVISION 4 student's division (used for grad students)
DOCTIME 4 phd out of time date
DOCTITL1 80 1st line of dissertation title
DOCTITL2 80 2nd line of dissertation title
DOCTITL3 80 3rd line of dissertation title
DOCTITL4 80 4th line of dissertation title
DSUBDATE 6 submit date of dissertation
GRAD 1 flag indicating whether student has graduated from graduate school
LEFROM 4 selected leave from date
LETHRU 4 selected leave through date
LETYPE 3 selected leave type
MAADVISR 15 master's degree advisor
MAFD 1 flag that indicates whether student has filed an AFD in graduate school
MASTIME 4 master's degree out of time date
MEXMDATE 6 master's degree exam date
MEXMPASS 1 flag that indicates whether student passed master's degree exam
MGRDDATE 6 master's grad date
MSUBDATE 6 submit date of thesis
PHDADVIS 50 phd advisor
RESDSEM1 4 1st residency semester
RESDHRS1 20 hours ratio of 1st residency semester
RESDSEM2 4 2nd residency semester
RESDHRS2 20 hours ratio of 2nd residency semester
RSSDATE1 4 first research date record for doctor record
RSSDESC1 30 description of 1st research for doctor record
RSSDATE2 4 2nd research date record for doctor record
RSSDESC2 30 description of 2nd research for doctor record
STARDATE 4 start date in graduate school
THESIS 1 flag that indicates whether student has completed their master's thesis
TILDE 1 prints a tilde
THESTIT1 80 1st line of thesis title
THESTIT2 80 2nd line of thesis title
THESTIT3 80 3rd line of thesis title
THESTIT4 80 4th line of thesis title

Formatters

These FIB words refer to Atoms and affect how they are displayed.

Token Name Description
ABBREV abbreviated transcript format--used after "LISTING"
BLNKSUPP suppresses trailing blanks in previous token, can be used with FIELDS for global effect
BOLDFACE formats previous token BOLD. Can be used with FIELDS for global effect
DATEFORM format date from yymmdd to mm/dd/yy
FORMFEED inserts a form feed
HOME restores home font--no bold, italics, underline or title case
ITALIC formats previous token ITALIC. Can be used with FIELDS for global effect
LONGFORM formats term to SPRING NNNN, FALL NNNN, SUMMER NNNN, or WINTER NNNN
LOWCASE puts previous token in lower-case format, can be used with FIELDS for global effect
MARKTERM marks the term in the next token so MARKCRS and MARKARE1, etc can be used to reference the term's courses
NORMAL resets any global field formatters--can be used for FIELDS, LISTING, or NOTES
NOREUSE flag that is used after a requirement is selected so courses aren't re-printed on the ARTS form
RGHTJUST right-justifies previous token
SAVEDEPT saves course department into PrnPrefs->req[PrnPrefs->reqptr].dept, used with SAMEDEPT and DIFFDEPT to find courses with similar departments in req
STORE1 first storage variable--use DATA1 to access
STORE2 second storage variable--use DATA2 to access
STORE3 third storage variable--use DATA3 to access
STORE4 fourth storage variable--use DATA4 to access
TERMFORM Format term from CYMM to SPYY,FAYY,SUYY,WIYY
TITLCASE formats previous token TITLE CASE. Can be used with FIELDS for global effect.
TRNSCRPT long transcript format--used after "LISTING"
WHOLE used before a number to make it into an integer, like int(). Can also be used globally after "FIELDS"
UNDERLIN formats previous token UNDERLINE. Can be used with FIELDS for global effect
ZEROSUPP suppresses leading zeroes of previous token. Can be used with LISTING, NOTES, or FIELDS for global effect

Modifiers

These FIB words refer to Atoms and select which course/term/student/term/requirement to print.

Token Name Description
ACCUM PrnPrefs->accum = TRUE if previous token is "RESET". To see the accumulated number, use "TOTAL"
ACTUAL/ACT actual amount completed in req
ADDRESS refers to a specific address
CALC find next type 'C' requirement (calculator)
EIGHTH eighth item in selected array
FIFTH fifth item in selected array
FIRST first item in selected array of objects
FOURTH fourth item in selected array
HEADING sets up the heading. Looks for "MM/DD/YY" in the heading for the date and "###" in the heading for the page number
IGNORE used to set ignore flag so value is not printed
LAST last item in selected array
LEAF find next type 'R' requirement in tree
MAXIMUM/MAX maximum needed to satisfy req
MINIMUM/MIN minimum needed to satisfy req
NEXT next item in selected array
NOLF remove any line feeds from the previous token
ONLINE special format for transcript GPA's
OVERALL/ALL refers to all courses in req
POOL begins putting together a pool of requirements and their courses
POOLED refers to the pooled requirements that were merged using "POOL"
REQUIRE refers to a requirement. Often SELECT is used, but RESET can be used to set the index back to the beginning
RESET resets accumulator (ACCUM) or requirement position
RESIDENT/RES only refers to courses in req taken at KU
TERM-REQ find the next leaf node requirement that is type 'R' with a course in a given term
SAME same item in selected array
SAT-LEAF find next satisfied type 'R' leaf node in requirement (no children)
SAT-REQ find next satisfied type 'R' requirement in tree
SECOND second item in selected array
SEVENTH seventh item in selected array
SIXTH sixth item in selected array
SKIPLF linefeed after a skip
SORTDEPT sorts courses in a requirement by department
SORTAREA sorts courses in a requirement by area
SORTTERM sorts courses in a requirement by term
THIRD third item in selected array
TRANSFER/TRANS only refers to courses taken outside of KU
UNS-REQ find next unsatisfied type 'R' requirement in tree
UNS-LEAF find next unsatisfied type 'R' leaf node in requirement (no children)