diff --git a/docs/INSTALL.txt b/docs/INSTALL.txt
new file mode 100644
index 0000000000000000000000000000000000000000..0968339bcb6f2833a58d83f00b85b5e8cd8a1412
--- /dev/null
+++ b/docs/INSTALL.txt
@@ -0,0 +1,58 @@
+Basic Installation and Setup Steps
+
+These are the basic steps to clone and configure a working copy of the
+CurriculumRequest (creq) application. Most of these steps are to be executed on
+the command line. Prerequisite software: git, mysql, ant.
+
+1. Get a working copy of the repository.
+
+	git clone git@git.unl.edu:tsteiner2/Curriculum-Request.git <projectdir>
+
+2. Go into your project directory.
+
+	cd <projectdir>
+
+3. Initialize and fetch the submodules.
+
+	git submodule init
+	git submodule update
+
+4. Build the tinymce js file(s) -- requires the "ant" build tool:
+http://ant.apache.org/, which requires Java JRE.
+
+	cd vendor/tinymce
+	ant
+
+5. Create database and application user with the appropriate permissions. The
+database may be created via the schema files or from a full dump from
+production. Note that creq uses stored procedures/routines which require
+special privileges to create.
+
+	# as mysql root, create db, user, and import stored procedures
+	mysql -u root -p -e "CREATE DATABASE creq;"
+	mysql -u root -p -e "GRANT ALL ON creq.* TO username@localhost IDENTIFIED BY 'password';"
+	mysql -u root -p < creq_proc.sql
+
+	# as creq user, import the schema
+	mysql -u creq -p < creq_schema.sql
+
+	# optionally import base data set
+	mysql -u creq -p < creq_data_dump_file
+
+
+6. Copy default config file and make changes as necessary.
+
+	cp application/configs/application.ini.sample application/configs/application.ini
+
+	# Config parameters you might need to change:
+ 	resources.frontController.baseUrl
+ 	resources.db.params.*
+ 	unl.templates.options.version
+ 	unl.templates.options.templatedependentspath
+ 	ldap.*
+ 	bulletin.github.*
+
+
+7. Copy default .htaccess and make changes as necessary.
+
+	cp .htaccess.sample .htaccess
diff --git a/docs/creq_proc.sql b/docs/creq_proc.sql
new file mode 100644
index 0000000000000000000000000000000000000000..79820adc77b31a12e6120bfc8ba7d55419a0640c
--- /dev/null
+++ b/docs/creq_proc.sql
@@ -0,0 +1,180 @@
+--
+-- Dumping routines for database 'creq'
+--
+/*!50003 DROP PROCEDURE IF EXISTS `creqGroupMemberships_Delete_Procedure` */;
+/*!50003 SET @saved_cs_client      = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results     = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client  = utf8 */ ;
+/*!50003 SET character_set_results = utf8 */ ;
+/*!50003 SET collation_connection  = utf8_general_ci */ ;
+/*!50003 SET @saved_sql_mode       = @@sql_mode */ ;
+/*!50003 SET sql_mode              = '' */ ;
+DELIMITER ;;
+CREATE DEFINER=`creq`@`%` PROCEDURE `creqGroupMemberships_Delete_Procedure`(IN parentId INT(4) UNSIGNED,
+                                           IN childId INT(4) UNSIGNED)
+BEGIN
+DECLARE x INT(4) UNSIGNED;
+CREATE TEMPORARY TABLE IF NOT EXISTS 
+  suspect(`parentGroup` INT(4) UNSIGNED,
+          `childGroup` INT(4) UNSIGNED);
+CREATE TEMPORARY TABLE IF NOT EXISTS
+  trusty1(`parentGroup` INT(4) UNSIGNED,
+          `childGroup` INT(4) UNSIGNED);
+INSERT INTO suspect
+SELECT * FROM (
+    SELECT X.`parentGroup`,
+           Y.`childGroup`
+    FROM `creqGroupImpliedMemberships` AS X,
+         `creqGroupImpliedMemberships` AS Y
+    WHERE X.`childGroup` = parentId 
+      AND Y.`parentGroup` = childId
+  UNION
+    SELECT X.`parentGroup`,
+           childId AS `childGroup`
+    FROM `creqGroupImpliedMemberships` AS X
+    WHERE X.`childGroup` = parentId
+  UNION
+    SELECT parentId AS `parentGroup`,
+           X.`childGroup`
+    FROM `creqGroupImpliedMemberships` AS X
+    WHERE X.`parentGroup` = childId
+  UNION
+    SELECT parentId AS `parentGroup`, 
+           childId as `childGroup`
+    FROM `creqGroupImpliedMemberships` AS X
+    WHERE X.`parentGroup` = parentId 
+      AND X.`childGroup` = childId
+) AS TMP3;
+INSERT INTO trusty1
+SELECT * FROM ( 
+    SELECT `parentGroup`, `childGroup`
+      FROM `creqGroupImpliedMemberships` AS TC6
+    WHERE NOT EXISTS(
+      SELECT * FROM suspect
+      WHERE suspect.`parentGroup` = TC6.`parentGroup`
+        AND suspect.`childGroup` = TC6.`childGroup`
+    )
+  UNION
+    SELECT `parentGroup`, `childGroup`
+      FROM `creqGroupMemberships` AS G1
+    WHERE G1.`parentGroup` != parentId 
+      AND G1.`childGroup` != childId
+) AS TMP4;
+CREATE TEMPORARY TABLE IF NOT EXISTS trusty2 SELECT * FROM trusty1;
+CREATE TEMPORARY TABLE IF NOT EXISTS trusty3 SELECT * FROM trusty1;
+CREATE TEMPORARY TABLE IF NOT EXISTS trusty4 SELECT * FROM trusty1;
+CREATE TEMPORARY TABLE IF NOT EXISTS trusty5 SELECT * FROM trusty1;
+CREATE TEMPORARY TABLE IF NOT EXISTS trusty6 SELECT * FROM trusty1;
+DELETE FROM `creqGroupImpliedMemberships`
+WHERE NOT EXISTS (
+  SELECT * FROM (
+    SELECT * FROM(
+        SELECT * FROM trusty1
+      UNION
+        SELECT trusty2.`parentGroup`,
+               trusty3.`childGroup`
+        FROM trusty2,
+             trusty3
+        WHERE trusty2.`childGroup` = trusty3.`parentGroup`
+      UNION
+        SELECT trusty4.`parentGroup`,
+               trusty6.`childGroup`
+        FROM trusty4,
+             trusty5,
+             trusty6
+        WHERE trusty4.`childGroup` = trusty5.`parentGroup`
+          AND trusty5.`childGroup` = trusty6.`parentGroup`
+    ) AS TMP5
+  ) AS TMP6
+  WHERE TMP6.`parentGroup` = `creqGroupImpliedMemberships`.`parentGroup`
+    AND TMP6.`childGroup` = `creqGroupImpliedMemberships`.`childGroup`
+);
+UPDATE `creqGroupImpliedMemberships` 
+   SET explicit='no' 
+ WHERE `parentGroup` = parentId
+   AND `childGroup` = childId;
+DELETE FROM suspect;
+DELETE FROM trusty1;
+DELETE FROM trusty2;
+DELETE FROM trusty3;
+DELETE FROM trusty4;
+DELETE FROM trusty5;
+DELETE FROM trusty6;
+END ;;
+DELIMITER ;
+/*!50003 SET sql_mode              = @saved_sql_mode */ ;
+/*!50003 SET character_set_client  = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection  = @saved_col_connection */ ;
+/*!50003 DROP PROCEDURE IF EXISTS `creqGroupMemberships_Insert_Procedure` */;
+/*!50003 SET @saved_cs_client      = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results     = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client  = utf8 */ ;
+/*!50003 SET character_set_results = utf8 */ ;
+/*!50003 SET collation_connection  = utf8_general_ci */ ;
+/*!50003 SET @saved_sql_mode       = @@sql_mode */ ;
+/*!50003 SET sql_mode              = '' */ ;
+DELIMITER ;;
+CREATE DEFINER=`creq`@`%` PROCEDURE `creqGroupMemberships_Insert_Procedure`(IN parentId INT(4) UNSIGNED,
+                                           IN childId INT(4) UNSIGNED,
+                                           IN typeId INT(4) UNSIGNED)
+BEGIN
+DECLARE x INT(4) UNSIGNED;
+CREATE TEMPORARY TABLE IF NOT EXISTS 
+  tcNew(`parentGroup` INT(4) UNSIGNED,
+         `childGroup` INT(4) UNSIGNED);
+INSERT INTO tcNew
+SELECT * FROM (
+	SELECT * FROM (
+		SELECT TC1.`parentGroup`,
+		       childId AS `childGroup` 
+		FROM `creqGroupImpliedMemberships` AS TC1
+		WHERE TC1.`childGroup` = parentId
+	  UNION
+		SELECT parentId AS `parentGroup`,
+		       TC2.`childGroup`
+		FROM `creqGroupImpliedMemberships` AS TC2
+		WHERE TC2.`parentGroup` = childId
+	  UNION
+		SELECT TC3.`parentGroup`,
+		       TC4.`childGroup`
+		FROM `creqGroupImpliedMemberships` AS TC3,
+		     `creqGroupImpliedMemberships` AS TC4
+		WHERE TC3.`childGroup` = parentId 
+		  AND TC4.`parentGroup` = childId
+	  UNION
+	    SELECT parentId,
+	           childId
+	) AS TMP1
+) AS TMP2 
+WHERE NOT EXISTS(
+  SELECT * FROM 
+    `creqGroupImpliedMemberships` AS TC5
+  WHERE TC5.`parentGroup`=TMP2.`parentGroup` 
+    AND TC5.`childGroup`=TMP2.`childGroup`
+);
+IF(
+  (
+    SELECT COUNT(*) AS dupes 
+      FROM tcNew 
+      WHERE `parentGroup`=`childGroup`
+  ) != 0
+) THEN
+  DELETE FROM tcNew;
+  SELECT raiseError('Adding this edge would create a cycle') INTO x;
+END IF;
+INSERT INTO `creqGroupImpliedMemberships`(`parentGroup`, `childGroup`, `type`)
+  SELECT *, typeId FROM tcNew;
+UPDATE `creqGroupImpliedMemberships` 
+   SET explicit='yes' 
+ WHERE `parentGroup` = parentId
+   AND `childGroup` = childId;
+DELETE FROM tcNew;
+END ;;
+DELIMITER ;
+/*!50003 SET sql_mode              = @saved_sql_mode */ ;
+/*!50003 SET character_set_client  = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection  = @saved_col_connection */ ;
diff --git a/docs/creq_schema.sql b/docs/creq_schema.sql
new file mode 100644
index 0000000000000000000000000000000000000000..2ca89e8dccaacd5381e03c580a7fcad357fdd5dc
--- /dev/null
+++ b/docs/creq_schema.sql
@@ -0,0 +1,1938 @@
+--
+-- Table structure for table `auth`
+--
+
+DROP TABLE IF EXISTS `auth`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `auth` (
+  `id` int(4) unsigned NOT NULL AUTO_INCREMENT,
+  `userName` varchar(255) NOT NULL,
+  `password` varchar(32) NOT NULL,
+  PRIMARY KEY (`id`),
+  UNIQUE KEY `userName` (`userName`)
+) ENGINE=InnoDB AUTO_INCREMENT=22 DEFAULT CHARSET=utf8 COMMENT='No longer used';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqAccessControls`
+--
+
+DROP TABLE IF EXISTS `creqAccessControls`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqAccessControls` (
+  `accessControlId` int(4) unsigned NOT NULL AUTO_INCREMENT,
+  `acessorGroup` int(4) unsigned NOT NULL,
+  `accesseeGroup` int(4) unsigned NOT NULL,
+  `rule` enum('allow','deny') NOT NULL,
+  `action` enum('read','write','delete','admin') NOT NULL,
+  PRIMARY KEY (`accessControlId`),
+  UNIQUE KEY `userGroup` (`acessorGroup`,`accesseeGroup`,`rule`,`action`),
+  KEY `assetGroup` (`accesseeGroup`),
+  CONSTRAINT `creqAccessControlsIbfk_1` FOREIGN KEY (`acessorGroup`) REFERENCES `creqGroups` (`groupId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqAccessControlsIbfk_2` FOREIGN KEY (`accesseeGroup`) REFERENCES `creqGroups` (`groupId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='No longer used';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqActivityTypes`
+--
+
+DROP TABLE IF EXISTS `creqActivityTypes`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqActivityTypes` (
+  `activityTypeId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `shortName` char(3) NOT NULL COMMENT 'Three letter code for this activity',
+  `longName` varchar(255) NOT NULL COMMENT 'Human readable name for this activity',
+  `description` text NOT NULL COMMENT 'Long description of this activity',
+  PRIMARY KEY (`activityTypeId`),
+  UNIQUE KEY `shortName` (`shortName`),
+  UNIQUE KEY `longName` (`longName`)
+) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8 COMMENT='Enumeration of all available course "Activity Types"';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionParticipants`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionParticipants`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionParticipants` (
+  `approvalActionParticipantId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `approvalAction` int(4) unsigned NOT NULL COMMENT 'Foreign key of the approval action',
+  `approvalBodyRole` int(4) unsigned NOT NULL COMMENT 'Foreign key of the approval role',
+  `canEdit` enum('no','yes') NOT NULL DEFAULT 'no' COMMENT 'Boolean indicating whether this role can edit requests at this action',
+  PRIMARY KEY (`approvalActionParticipantId`),
+  UNIQUE KEY `approvalAction` (`approvalAction`,`approvalBodyRole`),
+  KEY `approvalBodyRole` (`approvalBodyRole`),
+  KEY `canEdit` (`canEdit`),
+  CONSTRAINT `creqApprovalActionParticipants_ibfk_1` FOREIGN KEY (`approvalAction`) REFERENCES `creqApprovalActions` (`approvalActionId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqApprovalActionParticipants_ibfk_2` FOREIGN KEY (`approvalBodyRole`) REFERENCES `creqApprovalBodyRoles` (`approvalBodyRoleId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=307 DEFAULT CHARSET=utf8 COMMENT='Approval roles that will be making decisions in the action.';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActions`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActions`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActions` (
+  `approvalActionId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `name` varchar(255) NOT NULL COMMENT 'Human readable name',
+  `approvalChain` int(4) unsigned NOT NULL COMMENT 'Foreign key of the approval chain owning this action',
+  `className` varchar(255) NOT NULL COMMENT 'Name of class extending Requests_ApprovalActionModel for this action',
+  `xPosition` int(4) NOT NULL COMMENT 'X coordinate for this action in the chain editor',
+  `yPosition` int(4) NOT NULL COMMENT 'Y coordinate for this action in the chain editor',
+  PRIMARY KEY (`approvalActionId`),
+  UNIQUE KEY `name` (`name`,`approvalChain`),
+  KEY `className` (`className`),
+  KEY `approvalChain` (`approvalChain`),
+  CONSTRAINT `creqApprovalActionsIbfk_1` FOREIGN KEY (`approvalChain`) REFERENCES `creqApprovalChains` (`approvalChainId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=648 DEFAULT CHARSET=utf8 COMMENT='Base table for the Requests_ApprovalActionModel model';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsAuto`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsAuto`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsAuto` (
+  `approvalActionId` int(4) unsigned NOT NULL COMMENT 'Foreign key of the base action',
+  `result` enum('Approve','Resubmit') NOT NULL COMMENT 'The decision that this action will automatically apply to the request',
+  PRIMARY KEY (`approvalActionId`),
+  CONSTRAINT `creqApprovalActionsAutoIbfk_1` FOREIGN KEY (`approvalActionId`) REFERENCES `creqApprovalActions` (`approvalActionId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Extended table for Requests_ApprovalActionAutoModel';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsCollegeRouter`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsCollegeRouter`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsCollegeRouter` (
+  `approvalActionId` int(4) unsigned NOT NULL COMMENT 'Foreign key for the base action',
+  PRIMARY KEY (`approvalActionId`),
+  CONSTRAINT `creqApprovalActionsCollegeRouter_ibfk_1` FOREIGN KEY (`approvalActionId`) REFERENCES `creqApprovalActions` (`approvalActionId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Requests_ApprovalActionCollegeRouterModel storage';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsDelegate`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsDelegate`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsDelegate` (
+  `approvalActionId` int(4) unsigned NOT NULL COMMENT 'Foreign key of the base action',
+  `delegateBody` int(4) unsigned NOT NULL COMMENT 'Foreign key of the body to delegate to',
+  PRIMARY KEY (`approvalActionId`),
+  KEY `delegateBody` (`delegateBody`),
+  CONSTRAINT `creqApprovalActionsDelegateIbfk_1` FOREIGN KEY (`approvalActionId`) REFERENCES `creqApprovalActions` (`approvalActionId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqApprovalActionsDelegateIbfk_2` FOREIGN KEY (`delegateBody`) REFERENCES `creqApprovalBodies` (`approvalBodyId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Requests_ApprovalActionDelegateModel storage';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsDepartmentRouter`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsDepartmentRouter`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsDepartmentRouter` (
+  `approvalActionId` int(4) unsigned NOT NULL COMMENT 'Foreign key of the base action',
+  PRIMARY KEY (`approvalActionId`),
+  CONSTRAINT `creqApprovalActionsDepartmentRouter_ibfk_1` FOREIGN KEY (`approvalActionId`) REFERENCES `creqApprovalActions` (`approvalActionId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Courses_ApprovalActionDepartmentRouterModel storage';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsEmail`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsEmail`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsEmail` (
+  `approvalActionId` int(4) unsigned NOT NULL COMMENT 'Foreign key of the base action',
+  `recipient` text NOT NULL COMMENT 'Email address(es) of the recipients',
+  `recipientGroups` text COMMENT 'Comma delimited list of group ids to search for recipients',
+  `subject` text NOT NULL COMMENT 'Email subject text',
+  `body` text NOT NULL COMMENT 'Email body text',
+  PRIMARY KEY (`approvalActionId`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Requests_ApprovalActionEmailModel storage';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsEmailCourseInfo`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsEmailCourseInfo`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsEmailCourseInfo` (
+  `approvalActionId` int(4) unsigned NOT NULL COMMENT 'Foreign key for base email action',
+  PRIMARY KEY (`approvalActionId`),
+  CONSTRAINT `creqApprovalActionsEmailCourseInfo_ibfk_1` FOREIGN KEY (`approvalActionId`) REFERENCES `creqApprovalActions` (`approvalActionId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Courses_ApprovalActionEmailCourseInfoModel storage';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsForkAce`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsForkAce`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsForkAce` (
+  `approvalActionId` int(4) unsigned NOT NULL COMMENT 'Foreign key for base action',
+  PRIMARY KEY (`approvalActionId`),
+  CONSTRAINT `creqApprovalActionsForkAce_ibfk_1` FOREIGN KEY (`approvalActionId`) REFERENCES `creqApprovalActions` (`approvalActionId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Courses_ApprovalActionForkAceModel storage';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsForkGrad`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsForkGrad`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsForkGrad` (
+  `approvalActionId` int(4) unsigned NOT NULL COMMENT 'Foreign key for the base action',
+  PRIMARY KEY (`approvalActionId`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Courses_ApprovalActionForkGradModel storage';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsGradLevelRouter`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsGradLevelRouter`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsGradLevelRouter` (
+  `approvalActionId` int(4) unsigned NOT NULL COMMENT 'Foreign key for the base action',
+  PRIMARY KEY (`approvalActionId`),
+  CONSTRAINT `creqApprovalActionsGradLevelRouter_ibfk_1` FOREIGN KEY (`approvalActionId`) REFERENCES `creqApprovalActions` (`approvalActionId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Courses_ApprovalActionGradLevelRouterModel storage';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsMajorRouter`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsMajorRouter`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsMajorRouter` (
+  `approvalActionId` int(4) unsigned NOT NULL COMMENT 'Foreign key for base action',
+  PRIMARY KEY (`approvalActionId`),
+  CONSTRAINT `creqApprovalActionsMajorRouter_ibfk_1` FOREIGN KEY (`approvalActionId`) REFERENCES `creqApprovalActions` (`approvalActionId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Requests_ApprovalActionMajorRouterModel storage';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsMakeOfficial`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsMakeOfficial`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsMakeOfficial` (
+  `approvalActionId` int(4) unsigned NOT NULL COMMENT 'Foreign key for base action',
+  KEY `approvalActionId` (`approvalActionId`),
+  CONSTRAINT `creqApprovalActionsMakeOfficial_ibfk_1` FOREIGN KEY (`approvalActionId`) REFERENCES `creqApprovalActions` (`approvalActionId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Courses_ApprovalActionMakeOfficialModel storage';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsMakeOfficialFyp`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsMakeOfficialFyp`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsMakeOfficialFyp` (
+  `approvalActionId` int(4) unsigned NOT NULL COMMENT 'Foreign key for base action'
+) ENGINE=InnoDB DEFAULT CHARSET=latin1 COMMENT='FourYearPlans_ApprovalActionMakeOfficialFypModel storage';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsMakeOfficialLo`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsMakeOfficialLo`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsMakeOfficialLo` (
+  `approvalActionId` int(4) unsigned NOT NULL COMMENT 'Foreign key for base action',
+  PRIMARY KEY (`approvalActionId`),
+  CONSTRAINT `creqApprovalActionsMakeOfficialLo_ibfk_1` FOREIGN KEY (`approvalActionId`) REFERENCES `creqApprovalActions` (`approvalActionId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='LearningOutcomes_ApprovalActionMakeOfficialLoModel storage';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsOptions`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsOptions`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsOptions` (
+  `approvalActionsOptionId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `approvalActionId` int(4) unsigned NOT NULL COMMENT 'Foreign key of the action being overridden',
+  `name` varchar(255) NOT NULL COMMENT 'Text of the decision option to add to the action',
+  PRIMARY KEY (`approvalActionsOptionId`),
+  UNIQUE KEY `approvalActionId` (`approvalActionId`,`name`),
+  CONSTRAINT `creqApprovalActionsOptions_ibfk_1` FOREIGN KEY (`approvalActionId`) REFERENCES `creqApprovalActions` (`approvalActionId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=92 DEFAULT CHARSET=utf8 COMMENT='Overrides to the default decision options for an action';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsPullRequest`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsPullRequest`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsPullRequest` (
+  `approvalActionId` int(4) unsigned NOT NULL COMMENT 'Foreign key for the base action',
+  KEY `approvalActionId` (`approvalActionId`),
+  CONSTRAINT `creqApprovalActionsPullRequest_ibfk_1` FOREIGN KEY (`approvalActionId`) REFERENCES `creqApprovalActions` (`approvalActionId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=latin1 COMMENT='Bulletin_ApprovalActionPullRequestModel storage';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsQueue`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsQueue`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsQueue` (
+  `approvalActionId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Foreign key for the base action',
+  `canChangeVote` enum('no','yes') NOT NULL DEFAULT 'yes' COMMENT 'Boolean indicating whether users can change votes once cast',
+  PRIMARY KEY (`approvalActionId`),
+  CONSTRAINT `creqApprovalActionsQueue_ibfk_1` FOREIGN KEY (`approvalActionId`) REFERENCES `creqApprovalActions` (`approvalActionId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=325 DEFAULT CHARSET=utf8 COMMENT='Requests_ApprovalActionQueueModel storage';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsQueueDates`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsQueueDates`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsQueueDates` (
+  `approvalActionsQueueDateId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `approvalAction` int(4) unsigned NOT NULL COMMENT 'Foreign key of the queue action',
+  `date` int(4) unsigned NOT NULL COMMENT 'UNIX timestamp of the queue advancement date/time',
+  PRIMARY KEY (`approvalActionsQueueDateId`),
+  UNIQUE KEY `approvalAciton` (`approvalAction`,`date`),
+  KEY `date` (`date`),
+  CONSTRAINT `creqApprovalActionsQueueDates_ibfk_1` FOREIGN KEY (`approvalAction`) REFERENCES `creqApprovalActionsQueue` (`approvalActionId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=105 DEFAULT CHARSET=utf8 COMMENT='Scheduled times for future queue advancements';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsQueuePeriods`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsQueuePeriods`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsQueuePeriods` (
+  `approvalActionsQueuePeriodId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `approvalAction` int(4) unsigned NOT NULL COMMENT 'Foreign key for the queue action',
+  `startTime` int(4) unsigned NOT NULL COMMENT 'UNIX timestamp for the start of the period',
+  `endTime` int(4) unsigned DEFAULT NULL COMMENT 'UNIX timestamp for the end of the period (if its happened yet)',
+  PRIMARY KEY (`approvalActionsQueuePeriodId`),
+  UNIQUE KEY `approvalAction_2` (`approvalAction`,`startTime`),
+  CONSTRAINT `creqApprovalActionsQueuePeriods_ibfk_1` FOREIGN KEY (`approvalAction`) REFERENCES `creqApprovalActionsQueue` (`approvalActionId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=347 DEFAULT CHARSET=utf8 COMMENT='Historical list of previous queue periods';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsQueueRequests`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsQueueRequests`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsQueueRequests` (
+  `approvalActionsQueueRequestId` int(4) unsigned NOT NULL AUTO_INCREMENT,
+  `approvalAction` int(4) unsigned NOT NULL,
+  `request` int(4) unsigned NOT NULL,
+  `status` enum('holding','active') NOT NULL,
+  PRIMARY KEY (`approvalActionsQueueRequestId`),
+  UNIQUE KEY `approvalAction` (`approvalAction`,`request`),
+  KEY `request` (`request`),
+  KEY `status` (`status`)
+) ENGINE=InnoDB AUTO_INCREMENT=1026 DEFAULT CHARSET=utf8 COMMENT='Defunct table';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsRelationRouter`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsRelationRouter`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsRelationRouter` (
+  `approvalActionId` int(4) unsigned NOT NULL COMMENT 'Foreign key for the base action',
+  `relationType` enum('subject','department','college') NOT NULL COMMENT 'Specifies the type of relation to check against',
+  `relationId` int(4) unsigned NOT NULL COMMENT 'Foreign key of the relation we''re trying to match.',
+  PRIMARY KEY (`approvalActionId`),
+  CONSTRAINT `creqApprovalActionsRelationRouter_ibfk_1` FOREIGN KEY (`approvalActionId`) REFERENCES `creqApprovalActions` (`approvalActionId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Courses_ApprovalActionRelationRouterModel storage';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsRestart`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsRestart`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsRestart` (
+  `approvalActionId` int(4) unsigned NOT NULL COMMENT 'Foreign key for the base action',
+  PRIMARY KEY (`approvalActionId`),
+  CONSTRAINT `creqApprovalActionsRestart_ibfk_1` FOREIGN KEY (`approvalActionId`) REFERENCES `creqApprovalActions` (`approvalActionId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Requests_ApprovalActionRestartModel storage';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsSendToChain`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsSendToChain`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsSendToChain` (
+  `approvalActionId` int(4) unsigned NOT NULL COMMENT 'Foreign key for the base action',
+  `targetChain` int(4) unsigned NOT NULL COMMENT 'Foreign key for the chain to forward approval to',
+  PRIMARY KEY (`approvalActionId`),
+  KEY `targetChain` (`targetChain`),
+  CONSTRAINT `creqApprovalActionsSendToChain_ibfk_3` FOREIGN KEY (`approvalActionId`) REFERENCES `creqApprovalActions` (`approvalActionId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqApprovalActionsSendToChain_ibfk_4` FOREIGN KEY (`targetChain`) REFERENCES `creqApprovalChains` (`approvalChainId`) ON DELETE NO ACTION ON UPDATE NO ACTION
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Requests_ApprovalActionSendToChainModel storage';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsSingleApprover`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsSingleApprover`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsSingleApprover` (
+  `approvalActionId` int(4) unsigned NOT NULL COMMENT 'Foreign key for the base action',
+  PRIMARY KEY (`approvalActionId`),
+  CONSTRAINT `creqApprovalActionsSingleApproverIbfk_1` FOREIGN KEY (`approvalActionId`) REFERENCES `creqApprovalActions` (`approvalActionId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Requests_ApprovalActionSingleApproverModel storage';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsSubjectRouter`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsSubjectRouter`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsSubjectRouter` (
+  `approvalActionId` int(4) unsigned NOT NULL COMMENT 'Foreign key for the base action',
+  PRIMARY KEY (`approvalActionId`),
+  CONSTRAINT `creqApprovalActionsSubjectRouter_ibfk_1` FOREIGN KEY (`approvalActionId`) REFERENCES `creqApprovalActions` (`approvalActionId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Courses_ApprovalActionSubjectRouterModel storage';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsSubmitterApproval`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsSubmitterApproval`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsSubmitterApproval` (
+  `approvalActionId` int(4) unsigned NOT NULL COMMENT 'Foreign key for the base action',
+  PRIMARY KEY (`approvalActionId`),
+  CONSTRAINT `creqApprovalActionsSubmitterApproval_ibfk_1` FOREIGN KEY (`approvalActionId`) REFERENCES `creqApprovalActions` (`approvalActionId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Requests_ApprovalActionSubmitterApprovalModel storage';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsTypeTransformations`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsTypeTransformations`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsTypeTransformations` (
+  `approvalActionsTypeTransformationId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `approvalAction` int(4) unsigned NOT NULL COMMENT 'Foreign key for the action applying the override',
+  `realType` int(4) unsigned NOT NULL COMMENT 'Foreign key for the request type being changed',
+  `viewType` int(4) unsigned NOT NULL COMMENT 'Foreign key for the target request type',
+  PRIMARY KEY (`approvalActionsTypeTransformationId`),
+  UNIQUE KEY `approvalAction` (`approvalAction`,`realType`),
+  KEY `realType` (`realType`),
+  KEY `viewType` (`viewType`),
+  CONSTRAINT `creqApprovalActionsTypeTransformations_ibfk_1` FOREIGN KEY (`approvalAction`) REFERENCES `creqApprovalActions` (`approvalActionId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqApprovalActionsTypeTransformations_ibfk_2` FOREIGN KEY (`realType`) REFERENCES `creqRequestTypes` (`requestTypeId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqApprovalActionsTypeTransformations_ibfk_3` FOREIGN KEY (`viewType`) REFERENCES `creqRequestTypes` (`requestTypeId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COMMENT='Override the view used to display requests in this action';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsVote`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsVote`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsVote` (
+  `approvalActionId` int(4) unsigned NOT NULL COMMENT 'Foreign key for the queue action',
+  `quorum` int(10) unsigned NOT NULL COMMENT 'Minimum number of users who must have voted for a tally to occur',
+  `requiredVotes` enum('plurality','majority','unanimity') NOT NULL DEFAULT 'majority' COMMENT 'Minimum ratio that a given decision must have to win the vote',
+  `votesToTable` int(4) unsigned NOT NULL COMMENT 'Minimum number of votes required to table the vote',
+  PRIMARY KEY (`approvalActionId`),
+  KEY `closed` (`quorum`),
+  CONSTRAINT `creqApprovalActionsVoteIbfk_1` FOREIGN KEY (`approvalActionId`) REFERENCES `creqApprovalActions` (`approvalActionId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Requests_ApprovalActionVoteModel storage';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsVoteDates`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsVoteDates`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsVoteDates` (
+  `approvalActionsVoteDateId` int(4) unsigned NOT NULL AUTO_INCREMENT,
+  `approvalAction` int(4) unsigned NOT NULL,
+  `date` int(4) unsigned NOT NULL,
+  `type` varchar(255) NOT NULL,
+  PRIMARY KEY (`approvalActionsVoteDateId`),
+  UNIQUE KEY `approvalAciton` (`approvalAction`,`date`),
+  KEY `date` (`date`),
+  CONSTRAINT `creqApprovalActionsVoteDates_ibfk_1` FOREIGN KEY (`approvalAction`) REFERENCES `creqApprovalActionsVote` (`approvalActionId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Defunct table';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalActionsWatchers`
+--
+
+DROP TABLE IF EXISTS `creqApprovalActionsWatchers`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalActionsWatchers` (
+  `approvalActionId` int(4) unsigned NOT NULL COMMENT 'Foreign key for the base action',
+  `watchingRole` int(4) unsigned NOT NULL COMMENT 'Foreign key for the role that will be watching the action',
+  `action` enum('add','remove') NOT NULL COMMENT 'Whether to add or remove the role as a watcher of the action',
+  PRIMARY KEY (`approvalActionId`),
+  KEY `watchingRole` (`watchingRole`),
+  CONSTRAINT `creqApprovalActionsWatchers_ibfk_1` FOREIGN KEY (`approvalActionId`) REFERENCES `creqApprovalActions` (`approvalActionId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqApprovalActionsWatchers_ibfk_2` FOREIGN KEY (`watchingRole`) REFERENCES `creqApprovalBodyRoles` (`approvalBodyRoleId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Requests_ApprovalActionWatchersModel storage';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalBodies`
+--
+
+DROP TABLE IF EXISTS `creqApprovalBodies`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalBodies` (
+  `approvalBodyId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `name` varchar(255) NOT NULL COMMENT 'Human readable name for the Approval Body',
+  `description` text NOT NULL COMMENT 'Long description of the Approval Body',
+  `adminGroup` int(4) unsigned NOT NULL COMMENT 'Foreign key of the group that administers the approval body',
+  PRIMARY KEY (`approvalBodyId`),
+  KEY `name` (`name`),
+  KEY `adminGroup` (`adminGroup`),
+  CONSTRAINT `creqApprovalBodiesIbfk_1` FOREIGN KEY (`adminGroup`) REFERENCES `creqGroups` (`groupId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=31 DEFAULT CHARSET=utf8 COMMENT='Base table for Requests_ApprovalBodyModel';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalBodyRoles`
+--
+
+DROP TABLE IF EXISTS `creqApprovalBodyRoles`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalBodyRoles` (
+  `approvalBodyRoleId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `approvalBody` int(4) unsigned NOT NULL COMMENT 'Foreign key for the owning Approval Body',
+  `group` int(4) unsigned NOT NULL COMMENT 'Foreign key for the group assigned to this role',
+  `name` varchar(255) NOT NULL COMMENT 'Human readable name for this role',
+  `notice` text NOT NULL COMMENT 'A notice to be displayed to users belonging to this role',
+  PRIMARY KEY (`approvalBodyRoleId`),
+  KEY `approvalBody` (`approvalBody`),
+  KEY `group` (`group`),
+  CONSTRAINT `creqApprovalBodyRolesIbfk_1` FOREIGN KEY (`approvalBody`) REFERENCES `creqApprovalBodies` (`approvalBodyId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqApprovalBodyRolesIbfk_2` FOREIGN KEY (`group`) REFERENCES `creqGroups` (`groupId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=229 DEFAULT CHARSET=utf8 COMMENT='Base table for Requests_ApprovalRoleModel';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalChains`
+--
+
+DROP TABLE IF EXISTS `creqApprovalChains`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalChains` (
+  `approvalChainId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `ownerBody` int(4) unsigned NOT NULL COMMENT 'Foreign key for the owning approval body',
+  `name` varchar(255) NOT NULL COMMENT 'Human readable name for this chain',
+  `description` text NOT NULL COMMENT 'Longe description of this chain',
+  `module` varchar(255) NOT NULL COMMENT 'The module for which this chain can route approvals',
+  `enterXPosition` int(4) NOT NULL COMMENT 'X Position for the "Just entered chain" action in the chain editor',
+  `enterYPosition` int(4) NOT NULL COMMENT 'Y Position for the "Just entered chain" action in the chain editor',
+  `exitXPosition` int(4) NOT NULL COMMENT 'X Position for the "Exit chain" action in the chain editor',
+  `exitYPosition` int(4) NOT NULL COMMENT 'Y Position for the "Exit chain" action in the chain editor',
+  PRIMARY KEY (`approvalChainId`),
+  KEY `ownerBody` (`ownerBody`),
+  CONSTRAINT `creqApprovalChainsIbfk_2` FOREIGN KEY (`ownerBody`) REFERENCES `creqApprovalBodies` (`approvalBodyId`) ON DELETE NO ACTION ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=87 DEFAULT CHARSET=utf8 COMMENT='Base table for Requests_ApprovalChainModel';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalHistories`
+--
+
+DROP TABLE IF EXISTS `creqApprovalHistories`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalHistories` (
+  `approvalHistoryId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `request` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key for the request actioned upon',
+  `approvalBody` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key for the deciding approval body',
+  `approvalBodyName` varchar(255) NOT NULL COMMENT 'Name of the deciding approval body',
+  `approvalAction` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key for the deciding action',
+  `approvalActionName` varchar(255) NOT NULL COMMENT 'Name of the deciding action',
+  `user` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key for the user who made the decision',
+  `userName` varchar(255) NOT NULL COMMENT 'Name of the user who made the decision',
+  `decision` varchar(255) DEFAULT NULL COMMENT 'The decision that was made for the request',
+  `time` int(4) unsigned NOT NULL COMMENT 'UNIX timestamp for when the decision was made',
+  PRIMARY KEY (`approvalHistoryId`),
+  KEY `request` (`request`),
+  KEY `approvalRole` (`approvalBody`),
+  KEY `approvalAction` (`approvalAction`),
+  KEY `user` (`user`),
+  CONSTRAINT `creqApprovalHistories_ibfk_1` FOREIGN KEY (`request`) REFERENCES `creqRequests` (`requestId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqApprovalHistories_ibfk_2` FOREIGN KEY (`approvalBody`) REFERENCES `creqApprovalBodies` (`approvalBodyId`) ON DELETE SET NULL ON UPDATE SET NULL,
+  CONSTRAINT `creqApprovalHistories_ibfk_3` FOREIGN KEY (`approvalAction`) REFERENCES `creqApprovalActions` (`approvalActionId`) ON DELETE SET NULL ON UPDATE SET NULL,
+  CONSTRAINT `creqApprovalHistories_ibfk_4` FOREIGN KEY (`user`) REFERENCES `creqUsers` (`userId`) ON DELETE SET NULL ON UPDATE SET NULL
+) ENGINE=InnoDB AUTO_INCREMENT=158503 DEFAULT CHARSET=utf8 COMMENT='Base table for Requests_ApprovalHistoryModel';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApprovalLinks`
+--
+
+DROP TABLE IF EXISTS `creqApprovalLinks`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApprovalLinks` (
+  `approvalLinkId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `chain` int(4) unsigned NOT NULL COMMENT 'Foreign key for the chain this link belongs to',
+  `currentAction` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key for the triggering action',
+  `currentState` varchar(255) DEFAULT NULL COMMENT 'Text of the request state to match against after the current action',
+  `nextAction` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key of the action to execute next',
+  `name` varchar(255) NOT NULL COMMENT 'Unused',
+  `description` text NOT NULL COMMENT 'Unused',
+  PRIMARY KEY (`approvalLinkId`),
+  KEY `currentBody` (`currentAction`),
+  KEY `nextBody` (`nextAction`),
+  KEY `currentState` (`currentState`),
+  KEY `chain` (`chain`),
+  CONSTRAINT `creqApprovalLinks_ibfk_1` FOREIGN KEY (`chain`) REFERENCES `creqApprovalChains` (`approvalChainId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqApprovalLinks_ibfk_2` FOREIGN KEY (`currentAction`) REFERENCES `creqApprovalActions` (`approvalActionId`) ON DELETE NO ACTION ON UPDATE CASCADE,
+  CONSTRAINT `creqApprovalLinks_ibfk_3` FOREIGN KEY (`nextAction`) REFERENCES `creqApprovalActions` (`approvalActionId`) ON DELETE NO ACTION ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=1038 DEFAULT CHARSET=utf8 COMMENT='Base table for Requests_ApprovalLinkModel';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqApproverVotes`
+--
+
+DROP TABLE IF EXISTS `creqApproverVotes`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqApproverVotes` (
+  `approverVoteId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `request` int(4) unsigned NOT NULL COMMENT 'Foreign key for the request voted on',
+  `approvalAction` int(4) unsigned NOT NULL COMMENT 'Foreign key for the action coordinating the vote',
+  `user` int(4) unsigned NOT NULL COMMENT 'Foreign key for the user who made the vote',
+  `vote` varchar(255) NOT NULL COMMENT 'Text of the decision voted for',
+  `time` int(4) unsigned NOT NULL COMMENT 'UNIX timestamp for when the vote was cast',
+  PRIMARY KEY (`approverVoteId`),
+  UNIQUE KEY `unique_vote` (`request`,`user`,`time`),
+  KEY `vote` (`vote`),
+  KEY `user` (`user`),
+  KEY `time` (`time`),
+  KEY `approvalAction` (`approvalAction`),
+  CONSTRAINT `creqApprovalActionsVoteVotesIbfk_2` FOREIGN KEY (`user`) REFERENCES `creqUsers` (`userId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqApproverVotes_ibfk_1` FOREIGN KEY (`request`) REFERENCES `creqRequests` (`requestId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqApproverVotes_ibfk_2` FOREIGN KEY (`approvalAction`) REFERENCES `creqApprovalActions` (`approvalActionId`) ON DELETE NO ACTION ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=39987 DEFAULT CHARSET=utf8 COMMENT='Base table for Requests_ApproverVoteModel';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqAssets`
+--
+
+DROP TABLE IF EXISTS `creqAssets`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqAssets` (
+  `assetId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `creationTime` int(4) NOT NULL COMMENT 'UNIX timestamp for when this asset came into existence',
+  `modifiedTime` int(4) NOT NULL COMMENT 'UNIX timestamp for the last update on this asset',
+  PRIMARY KEY (`assetId`)
+) ENGINE=InnoDB AUTO_INCREMENT=25088 DEFAULT CHARSET=utf8 COMMENT='Used to record data for generic "assets"';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqBulletinSections`
+--
+
+DROP TABLE IF EXISTS `creqBulletinSections`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqBulletinSections` (
+  `bulletinSectionId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `request` int(4) unsigned NOT NULL COMMENT 'Foreign key for the request making changes',
+  `collegeId` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key for the college owning this section',
+  `majorId` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key for the major described by this section',
+  `year` int(4) unsigned NOT NULL COMMENT 'Year for which this section is valid',
+  PRIMARY KEY (`bulletinSectionId`),
+  KEY `request` (`request`),
+  KEY `collegeId` (`collegeId`,`majorId`),
+  KEY `majorId` (`majorId`),
+  CONSTRAINT `creqBulletinSections_ibfk_1` FOREIGN KEY (`request`) REFERENCES `creqRequests` (`requestId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqBulletinSections_ibfk_2` FOREIGN KEY (`collegeId`) REFERENCES `creqColleges` (`collegeId`) ON DELETE NO ACTION ON UPDATE CASCADE,
+  CONSTRAINT `creqBulletinSections_ibfk_3` FOREIGN KEY (`majorId`) REFERENCES `creqMajors` (`majorId`) ON DELETE NO ACTION ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=387 DEFAULT CHARSET=utf8 COMMENT='Base table for Bulletin_SectionModel';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqColleges`
+--
+
+DROP TABLE IF EXISTS `creqColleges`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqColleges` (
+  `collegeId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `name` varchar(255) NOT NULL COMMENT 'Abbreviation for this college',
+  `description` text NOT NULL COMMENT 'Human readable name of this college',
+  `contactGroup` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key of the group that receives notifications for this college',
+  PRIMARY KEY (`collegeId`),
+  UNIQUE KEY `shortName` (`name`),
+  KEY `contactGroup` (`contactGroup`),
+  CONSTRAINT `creqColleges_ibfk_1` FOREIGN KEY (`contactGroup`) REFERENCES `creqGroups` (`groupId`) ON DELETE NO ACTION ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=20 DEFAULT CHARSET=utf8 COMMENT='List of all colleges at UNL';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqCourseAceDetails`
+--
+
+DROP TABLE IF EXISTS `creqCourseAceDetails`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqCourseAceDetails` (
+  `courseAceDetailId` int(4) unsigned NOT NULL AUTO_INCREMENT,
+  `generation` int(4) unsigned NOT NULL,
+  `reinforcements` set('writing','oralCommunication','visualLiteracy','historicalPerspectives','mathematicsAndStatistics','criticalThinking','teamwork','problemSolving','ethics','civics','socialResponsibilities','globalAwareness','humanDiversity') NOT NULL,
+  `studentWorkDescription` text NOT NULL,
+  PRIMARY KEY (`courseAceDetailId`),
+  KEY `generation` (`generation`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Defunct';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqCourseAceOutcomes`
+--
+
+DROP TABLE IF EXISTS `creqCourseAceOutcomes`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqCourseAceOutcomes` (
+  `courseAceOutcomeId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `generation` int(4) unsigned NOT NULL COMMENT 'Foreign key for the owner course generation',
+  `name` enum('writing','communication','mathematicalReasoning','scientificReasoning','historicalPerspective','humanBehavior','artisticSignificance','civics','humanDiversity','production') NOT NULL COMMENT 'Name of the ACE outcome',
+  `justification` text NOT NULL COMMENT 'Describes opportunities students should have to learn the outcome…',
+  `studentWork` text NOT NULL COMMENT 'Describes student work that will be used to assess student achievement of the outcome…',
+  `assesmentPlan` text NOT NULL COMMENT 'Comments on plans to develop a process to collect and evaluate student work over time for the purpose of assessing student success for this ACE outcome',
+  PRIMARY KEY (`courseAceOutcomeId`),
+  KEY `generation` (`generation`)
+) ENGINE=InnoDB AUTO_INCREMENT=4805 DEFAULT CHARSET=utf8 COMMENT='List of ACE outcomes for a given course generation';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqCourseAceRecertifications`
+--
+
+DROP TABLE IF EXISTS `creqCourseAceRecertifications`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqCourseAceRecertifications` (
+  `courseAceRecertificationId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `generation` int(4) unsigned NOT NULL COMMENT 'Foreign key for the owning course generation',
+  `semestersTaught` varchar(255) NOT NULL COMMENT 'Comma delimited list of semester codes for which the course has been taught as an ACE certified course',
+  `dataRevealed` text NOT NULL COMMENT 'What have assessment data revealed about how the course helps students achieve the designated Student Learning Outcome(s)?',
+  `dataFeedback` text NOT NULL COMMENT 'How have those assessment data been used to help the course meet the certified Student Learning Outcome(s)?',
+  `dataIncomplete` text NOT NULL COMMENT 'If your assessment plan does not include collection of student work from all sections each time the course is taught, indicate how your department ensures that all sections are taught in accordance with the ACE plan',
+  `developPlan` text NOT NULL COMMENT 'If the response in the original proposal for ACE certification indicated that the assessment process was still being developed, the UCC/ACE subcommittee expects an explanation of the process.',
+  `blackboardUpload` enum('no','yes') NOT NULL COMMENT 'By checking this box, as the submitter of this course for ACE Recertification, you agree to upload the electronic student work samples into the Blackboard Content Collection folder.',
+  PRIMARY KEY (`courseAceRecertificationId`),
+  KEY `generation` (`generation`),
+  CONSTRAINT `creqCourseAceRecertifications_ibfk_1` FOREIGN KEY (`generation`) REFERENCES `creqCourseGenerations` (`courseGenerationId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=795 DEFAULT CHARSET=utf8 COMMENT='ACE recertification data for a given course generation';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqCourseAceRecertifyAnswers`
+--
+
+DROP TABLE IF EXISTS `creqCourseAceRecertifyAnswers`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqCourseAceRecertifyAnswers` (
+  `courseAceRecertifyAnswerId` int(10) unsigned NOT NULL AUTO_INCREMENT,
+  `questionId` int(10) unsigned NOT NULL,
+  `recertificationId` int(10) unsigned NOT NULL,
+  `answerText` text,
+  PRIMARY KEY (`courseAceRecertifyAnswerId`),
+  KEY `questionId_fk_idx` (`questionId`),
+  KEY `recertificationId_fk_idx` (`recertificationId`),
+  CONSTRAINT `questionId_fk` FOREIGN KEY (`questionId`) REFERENCES `creqCourseAceRecertifyQuestions` (`courseAceRecertifyQuestionId`) ON DELETE NO ACTION ON UPDATE NO ACTION,
+  CONSTRAINT `recertificationId_fk` FOREIGN KEY (`recertificationId`) REFERENCES `creqCourseAceRecertifications` (`courseAceRecertificationId`) ON DELETE NO ACTION ON UPDATE NO ACTION
+) ENGINE=InnoDB AUTO_INCREMENT=5159 DEFAULT CHARSET=latin1;
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqCourseAceRecertifyQuestionSets`
+--
+
+DROP TABLE IF EXISTS `creqCourseAceRecertifyQuestionSets`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqCourseAceRecertifyQuestionSets` (
+  `courseAceRecertifyQuestionSetId` int(10) unsigned NOT NULL AUTO_INCREMENT,
+  `dateRetired` datetime DEFAULT NULL,
+  PRIMARY KEY (`courseAceRecertifyQuestionSetId`),
+  KEY `dateRetired_idx` (`dateRetired`)
+) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=latin1;
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqCourseAceRecertifyQuestions`
+--
+
+DROP TABLE IF EXISTS `creqCourseAceRecertifyQuestions`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqCourseAceRecertifyQuestions` (
+  `courseAceRecertifyQuestionId` int(10) unsigned NOT NULL AUTO_INCREMENT,
+  `questionSetId` int(10) unsigned NOT NULL,
+  `questionText` varchar(500) NOT NULL,
+  `questionType` enum('SemestersTaught','TextArea') NOT NULL,
+  `questionSort` smallint(5) unsigned NOT NULL,
+  PRIMARY KEY (`courseAceRecertifyQuestionId`),
+  KEY `questionSetId_fk_idx` (`questionSetId`),
+  KEY `questionSort_idx` (`questionSort`),
+  CONSTRAINT `questionSetId_fk` FOREIGN KEY (`questionSetId`) REFERENCES `creqCourseAceRecertifyQuestionSets` (`courseAceRecertifyQuestionSetId`) ON DELETE NO ACTION ON UPDATE NO ACTION
+) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET=latin1;
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqCourseAceReinforcements`
+--
+
+DROP TABLE IF EXISTS `creqCourseAceReinforcements`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqCourseAceReinforcements` (
+  `courseAceReinforcementId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `generation` int(4) unsigned NOT NULL COMMENT 'Foreign key for the owning course generation',
+  `name` enum('writing','oralCommunication','visualLiteracy','historicalPerspectives','mathematicsAndStatistics','criticalThinking','teamwork','problemSolving','ethics','civics','socialResponsibilities','globalAwareness','humanDiversity') NOT NULL COMMENT 'Name of the ACE reinforcement',
+  `description` text NOT NULL COMMENT 'A description of how the reinforcement will be applied to this course',
+  PRIMARY KEY (`courseAceReinforcementId`),
+  KEY `generation` (`generation`)
+) ENGINE=InnoDB AUTO_INCREMENT=10238 DEFAULT CHARSET=utf8 COMMENT='List of ACE reinforcements for a given course generation';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqCourseActivities`
+--
+
+DROP TABLE IF EXISTS `creqCourseActivities`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqCourseActivities` (
+  `courseActivityId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `generation` int(4) unsigned NOT NULL COMMENT 'Foreign key for the owning course generation',
+  `type` char(3) NOT NULL COMMENT 'Foreign key for the activity type',
+  `hours` int(10) unsigned DEFAULT NULL COMMENT 'Number of hours spent on the activity',
+  PRIMARY KEY (`courseActivityId`),
+  UNIQUE KEY `generation` (`generation`,`type`),
+  KEY `type` (`type`),
+  CONSTRAINT `creqCourseActivitiesIbfk_4` FOREIGN KEY (`type`) REFERENCES `creqActivityTypes` (`shortName`) ON DELETE NO ACTION ON UPDATE CASCADE,
+  CONSTRAINT `creqCourseActivitiesIbfk_5` FOREIGN KEY (`generation`) REFERENCES `creqCourseGenerations` (`courseGenerationId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=18521 DEFAULT CHARSET=utf8 COMMENT='A list of activities for a course generation';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqCourseCodeGroups`
+--
+
+DROP TABLE IF EXISTS `creqCourseCodeGroups`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqCourseCodeGroups` (
+  `courseCodeGroupId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `crosslisting` int(10) unsigned DEFAULT NULL COMMENT 'Foreign key for the owning crosslisting',
+  `group` int(4) unsigned NOT NULL COMMENT 'Foreign key for the course group the crosslisting belongs to',
+  PRIMARY KEY (`courseCodeGroupId`),
+  KEY `group` (`group`),
+  KEY `crosslisting` (`crosslisting`),
+  CONSTRAINT `creqCourseCodeGroups_ibfk_2` FOREIGN KEY (`group`) REFERENCES `creqCourseGroups` (`courseGroupId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqCourseCodeGroups_ibfk_3` FOREIGN KEY (`crosslisting`) REFERENCES `creqCourseCrosslistings` (`courseCrosslistingId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=2826 DEFAULT CHARSET=utf8 COMMENT='List of course groups for a given generation''s crosslisting';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqCourseCodes`
+--
+
+DROP TABLE IF EXISTS `creqCourseCodes`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqCourseCodes` (
+  `courseCodeId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `subject` varchar(255) NOT NULL COMMENT 'Foreign key for the course code''s subject',
+  `courseNumber` int(4) unsigned NOT NULL COMMENT 'The course number for this course code',
+  `courseLetter` varchar(255) NOT NULL COMMENT 'The optional course letter for this course code',
+  `integratedStudies` enum('yes','no') NOT NULL DEFAULT 'no' COMMENT 'Boolean indicating whether or not this course code is used for an Integrated Studies course',
+  `group` int(4) unsigned DEFAULT NULL COMMENT '(Defunct) The course code group that this code belongs to.  ',
+  PRIMARY KEY (`courseCodeId`),
+  UNIQUE KEY `courseCode` (`subject`,`courseNumber`,`courseLetter`),
+  KEY `integratedStudies` (`integratedStudies`),
+  KEY `groupId` (`group`),
+  CONSTRAINT `creqCourseCodesIbfk_1` FOREIGN KEY (`subject`) REFERENCES `creqSubjects` (`name`) ON DELETE NO ACTION ON UPDATE CASCADE,
+  CONSTRAINT `creqCourseCodes_ibfk_1` FOREIGN KEY (`group`) REFERENCES `creqCourseGroups` (`courseGroupId`) ON DELETE NO ACTION ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=11420 DEFAULT CHARSET=utf8 COMMENT='A list of available course codes';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqCourseCredits`
+--
+
+DROP TABLE IF EXISTS `creqCourseCredits`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqCourseCredits` (
+  `courseCreditId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `generation` int(4) unsigned NOT NULL COMMENT 'Foreign key for the owning course generation',
+  `type` int(4) unsigned NOT NULL COMMENT 'Foreign key for the type of credit hour record',
+  `hours` tinyint(1) unsigned NOT NULL COMMENT 'The number of hours of the given type',
+  PRIMARY KEY (`courseCreditId`),
+  UNIQUE KEY `generation` (`generation`,`type`,`hours`),
+  KEY `type` (`type`),
+  CONSTRAINT `creqCourseCreditsIbfk_4` FOREIGN KEY (`type`) REFERENCES `creqCreditTypes` (`creditTypeId`) ON DELETE NO ACTION ON UPDATE CASCADE,
+  CONSTRAINT `creqCourseCreditsIbfk_5` FOREIGN KEY (`generation`) REFERENCES `creqCourseGenerations` (`courseGenerationId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=100757 DEFAULT CHARSET=utf8 COMMENT='List of possible/min/max credits granted by the course';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqCourseCrosslistings`
+--
+
+DROP TABLE IF EXISTS `creqCourseCrosslistings`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqCourseCrosslistings` (
+  `courseCrosslistingId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `generation` int(4) unsigned NOT NULL COMMENT 'Foreign key for the owning course generation',
+  `type` enum('crosslisting','home listing','grad tie-in') NOT NULL DEFAULT 'crosslisting' COMMENT 'The type for this crosslisting ("home listing" is the primary course code, "Grad Tie-in" indicates possible differences between undergrad and grad versions of the course)',
+  `courseCode` int(4) unsigned NOT NULL COMMENT 'Foreign key for the crosslisted course code',
+  PRIMARY KEY (`courseCrosslistingId`),
+  UNIQUE KEY `generation` (`generation`,`courseCode`),
+  KEY `courseCode` (`courseCode`),
+  CONSTRAINT `creqCourseCrosslistingsIbfk_8` FOREIGN KEY (`courseCode`) REFERENCES `creqCourseCodes` (`courseCodeId`) ON DELETE NO ACTION ON UPDATE CASCADE,
+  CONSTRAINT `creqCourseCrosslistingsIbfk_9` FOREIGN KEY (`generation`) REFERENCES `creqCourseGenerations` (`courseGenerationId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=35347 DEFAULT CHARSET=utf8 COMMENT='A list of crosslistings for the given course generation';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqCourseDetails`
+--
+
+DROP TABLE IF EXISTS `creqCourseDetails`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqCourseDetails` (
+  `courseDetailId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `generation` int(4) unsigned NOT NULL COMMENT 'Foreign key for the owning course generation',
+  `title` varchar(255) NOT NULL COMMENT 'Title of the course',
+  `gradingType` enum('unrestricted','letter grade only','pass/no pass only') NOT NULL DEFAULT 'unrestricted' COMMENT 'Available options for how a grade in this course counts towards GPA',
+  `dfRemoval` enum('no','yes') NOT NULL COMMENT 'Indicates whether this course has a new number or is a revised course that can be used to remove the grade factors for a previously “failed” (grade of “C-“ or below) course',
+  `campuses` set('UNL','UNO','UNMC','UNK') NOT NULL DEFAULT 'UNL' COMMENT 'Campuses at which this course will be offered',
+  `deliveryMethods` set('Classroom','Web','Correspondence') NOT NULL DEFAULT 'Classroom' COMMENT 'Indicates how the course will be delivered to students',
+  `termsOffered` set('Fall','Spring','Summer') NOT NULL DEFAULT 'Fall,Spring,Summer' COMMENT 'Terms during which this course will be offered',
+  `effectiveSemester` int(4) unsigned NOT NULL DEFAULT '20081' COMMENT 'The semester for which this course generation becomes effective',
+  `finalSemester` int(4) unsigned DEFAULT NULL COMMENT 'The final semester that this generation will be valid',
+  `prerequisite` text COMMENT 'Prerequisites for the course',
+  `notes` text COMMENT 'Notes for the course',
+  `description` text COMMENT 'Any extra descriptive text for the course',
+  PRIMARY KEY (`courseDetailId`),
+  UNIQUE KEY `course` (`generation`),
+  KEY `effectiveSemester` (`effectiveSemester`),
+  KEY `finalSemester` (`finalSemester`),
+  CONSTRAINT `creqCourseDetailsIbfk_1` FOREIGN KEY (`generation`) REFERENCES `creqCourseGenerations` (`courseGenerationId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=22052 DEFAULT CHARSET=utf8 COMMENT='Additional details for a given course generation';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqCourseDfRemovals`
+--
+
+DROP TABLE IF EXISTS `creqCourseDfRemovals`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqCourseDfRemovals` (
+  `courseDfRemovalId` int(4) unsigned NOT NULL AUTO_INCREMENT,
+  `generation` int(4) unsigned NOT NULL,
+  `generationRemoved` int(4) unsigned NOT NULL,
+  PRIMARY KEY (`courseDfRemovalId`),
+  UNIQUE KEY `coursePassed` (`generation`,`generationRemoved`),
+  KEY `courseFailed` (`generationRemoved`),
+  CONSTRAINT `creqCourseDfRemovalsIbfk_2` FOREIGN KEY (`generationRemoved`) REFERENCES `creqCourseGenerations` (`courseGenerationId`) ON DELETE NO ACTION ON UPDATE CASCADE,
+  CONSTRAINT `creqCourseDfRemovalsIbfk_3` FOREIGN KEY (`generation`) REFERENCES `creqCourseGenerations` (`courseGenerationId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Defunct';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqCourseEsDesignations`
+--
+
+DROP TABLE IF EXISTS `creqCourseEsDesignations`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqCourseEsDesignations` (
+  `courseEsDesignationId` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `college` int(4) unsigned NOT NULL COMMENT 'Foreign key for the owning college',
+  `area` varchar(255) NOT NULL COMMENT 'The Essential Studies area provided by the course code',
+  `courseCode` int(4) unsigned NOT NULL COMMENT 'Foreign key for the owning course code',
+  PRIMARY KEY (`courseEsDesignationId`),
+  UNIQUE KEY `college` (`college`,`area`,`courseCode`),
+  KEY `courseCode` (`courseCode`),
+  CONSTRAINT `creqCourseEsDesignationsIbfk_1` FOREIGN KEY (`courseCode`) REFERENCES `creqCourseCodes` (`courseCodeId`) ON DELETE NO ACTION ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=9351 DEFAULT CHARSET=utf8 COMMENT='List of EssentialStudies areas for a college and course code';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqCourseGenerations`
+--
+
+DROP TABLE IF EXISTS `creqCourseGenerations`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqCourseGenerations` (
+  `courseGenerationId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `assetId` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key for the base asset',
+  `parent` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key for the previous generation of this course',
+  `course` int(4) unsigned NOT NULL COMMENT 'Foreign key for the base course',
+  `request` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key for the request making the change',
+  `type` enum('proposed','official') NOT NULL DEFAULT 'proposed' COMMENT 'Indicates whether or not this generation was ever approved and made official',
+  `removed` enum('no','yes') NOT NULL DEFAULT 'no' COMMENT 'Indicates whether or not this course is no longer offered',
+  PRIMARY KEY (`courseGenerationId`),
+  KEY `course` (`course`),
+  KEY `request` (`request`),
+  KEY `parent` (`parent`),
+  KEY `assetId` (`assetId`),
+  KEY `removed` (`removed`),
+  CONSTRAINT `creqCourseGenerationsIbfk_7` FOREIGN KEY (`assetId`) REFERENCES `creqAssets` (`assetId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqCourseGenerations_ibfk_1` FOREIGN KEY (`parent`) REFERENCES `creqCourseGenerations` (`courseGenerationId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqCourseGenerations_ibfk_2` FOREIGN KEY (`course`) REFERENCES `creqCourses` (`courseId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqCourseGenerations_ibfk_3` FOREIGN KEY (`request`) REFERENCES `creqRequests` (`requestId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=24521 DEFAULT CHARSET=utf8 COMMENT='Each time a course is changed, a new generation is created';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqCourseGradTieIns`
+--
+
+DROP TABLE IF EXISTS `creqCourseGradTieIns`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqCourseGradTieIns` (
+  `courseGradTieInId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `generation` int(4) unsigned NOT NULL COMMENT 'Foreign key for the owning course generation',
+  `credits` varchar(255) DEFAULT NULL COMMENT 'Number of credits one gets by taking this course',
+  `notes` text COMMENT 'Notes about the course',
+  `prerequisites` text COMMENT 'Prerequisites required to take this course',
+  PRIMARY KEY (`courseGradTieInId`),
+  UNIQUE KEY `generation` (`generation`),
+  CONSTRAINT `creqCourseGradTieInsIbfk_1` FOREIGN KEY (`generation`) REFERENCES `creqCourseGenerations` (`courseGenerationId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=3771 DEFAULT CHARSET=utf8 COMMENT='Differences between the undergrad and grad offerings';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqCourseGroups`
+--
+
+DROP TABLE IF EXISTS `creqCourseGroups`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqCourseGroups` (
+  `courseGroupId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `name` varchar(255) NOT NULL COMMENT 'Human readable name for the course group',
+  `retired` enum('no','yes') DEFAULT 'no',
+  PRIMARY KEY (`courseGroupId`),
+  UNIQUE KEY `name` (`name`)
+) ENGINE=InnoDB AUTO_INCREMENT=78 DEFAULT CHARSET=utf8 COMMENT='A list of groups that course codes may belong to';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqCoursePrerequisites`
+--
+
+DROP TABLE IF EXISTS `creqCoursePrerequisites`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqCoursePrerequisites` (
+  `coursePrerequisiteId` int(4) unsigned NOT NULL AUTO_INCREMENT,
+  `generation` int(4) unsigned NOT NULL,
+  `requiredCourse` int(4) unsigned NOT NULL,
+  `type` int(4) unsigned NOT NULL,
+  PRIMARY KEY (`coursePrerequisiteId`),
+  UNIQUE KEY `parentCourse` (`generation`,`requiredCourse`,`type`),
+  KEY `requiredCourse` (`requiredCourse`),
+  KEY `type` (`type`),
+  CONSTRAINT `creqCoursePrerequisitesIbfk_1` FOREIGN KEY (`type`) REFERENCES `creqPrerequisiteTypes` (`prerequisiteTypeId`) ON DELETE NO ACTION ON UPDATE CASCADE,
+  CONSTRAINT `creqCoursePrerequisitesIbfk_4` FOREIGN KEY (`generation`) REFERENCES `creqCourseGenerations` (`courseGenerationId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqCoursePrerequisitesIbfk_5` FOREIGN KEY (`requiredCourse`) REFERENCES `creqCourses` (`courseId`) ON DELETE NO ACTION ON UPDATE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Defunct';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqCourses`
+--
+
+DROP TABLE IF EXISTS `creqCourses`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqCourses` (
+  `courseId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `currentGeneration` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key for the active course generation for this course',
+  PRIMARY KEY (`courseId`),
+  UNIQUE KEY `currentGeneration` (`currentGeneration`),
+  CONSTRAINT `creqCoursesIbfk_1` FOREIGN KEY (`currentGeneration`) REFERENCES `creqCourseGenerations` (`courseGenerationId`) ON DELETE SET NULL ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=10477 DEFAULT CHARSET=utf8 COMMENT='Base table for Courses_CourseModel';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqCreditTypes`
+--
+
+DROP TABLE IF EXISTS `creqCreditTypes`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqCreditTypes` (
+  `creditTypeId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `description` varchar(255) NOT NULL COMMENT 'Name of the credit hour type',
+  PRIMARY KEY (`creditTypeId`),
+  UNIQUE KEY `description` (`description`)
+) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COMMENT='List of the various credit hour limits/enumerations';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqCronJobs`
+--
+
+DROP TABLE IF EXISTS `creqCronJobs`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqCronJobs` (
+  `cronJobId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `date` int(4) unsigned NOT NULL COMMENT 'UNIX timestamp for when the cron job is scheduled to run',
+  `hasStarted` enum('no','yes') NOT NULL DEFAULT 'no' COMMENT 'Whether or not the job was started',
+  `hasRun` enum('no','yes') NOT NULL DEFAULT 'no' COMMENT 'Whether or not the job completed',
+  `class` varchar(255) NOT NULL COMMENT 'The class which defines the static method to be run',
+  `method` varchar(255) NOT NULL COMMENT 'The method of the class to be run',
+  `arguments` text NOT NULL COMMENT 'PHP Serialized arguments that will be supplied to the called method',
+  PRIMARY KEY (`cronJobId`),
+  UNIQUE KEY `date_2` (`date`,`class`,`method`,`arguments`(255)),
+  KEY `date` (`date`,`hasRun`),
+  KEY `isRunning` (`hasStarted`)
+) ENGINE=InnoDB AUTO_INCREMENT=1476 DEFAULT CHARSET=utf8 COMMENT='List of scheduled cron jobs';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqDefaultApprovalChains`
+--
+
+DROP TABLE IF EXISTS `creqDefaultApprovalChains`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqDefaultApprovalChains` (
+  `defaultApprovalChainId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `approvalBody` int(4) unsigned NOT NULL COMMENT 'Foreign key for the owning approval body',
+  `requestType` int(4) unsigned NOT NULL COMMENT 'Foreign key for the owning request type',
+  `approvalChain` int(4) unsigned NOT NULL COMMENT 'Foreign key for the approval chain to be called',
+  PRIMARY KEY (`defaultApprovalChainId`),
+  UNIQUE KEY `approvalBody` (`approvalBody`,`requestType`),
+  KEY `requestType` (`requestType`),
+  KEY `approvalChain` (`approvalChain`),
+  CONSTRAINT `creqDefaultApprovalChainsIbfk_1` FOREIGN KEY (`approvalBody`) REFERENCES `creqApprovalBodies` (`approvalBodyId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqDefaultApprovalChainsIbfk_2` FOREIGN KEY (`requestType`) REFERENCES `creqRequestTypes` (`requestTypeId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqDefaultApprovalChains_ibfk_1` FOREIGN KEY (`approvalChain`) REFERENCES `creqApprovalChains` (`approvalChainId`) ON DELETE NO ACTION ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=475 DEFAULT CHARSET=utf8 COMMENT='Which approval chain to call for given body and request type';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqDepartments`
+--
+
+DROP TABLE IF EXISTS `creqDepartments`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqDepartments` (
+  `departmentId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `departmentCode` int(4) unsigned NOT NULL COMMENT 'At one point, the id in SIS, but probably not reliable',
+  `name` varchar(255) NOT NULL COMMENT 'Human readable name for this department',
+  `college` int(4) unsigned NOT NULL COMMENT 'Foreign key for the owning college',
+  `contactGroup` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key of the group that receives notifications for this department',
+  PRIMARY KEY (`departmentId`),
+  UNIQUE KEY `departmentCode` (`departmentCode`),
+  KEY `college` (`college`),
+  KEY `contactGroup` (`contactGroup`),
+  CONSTRAINT `creqDepartmentsIbfk_1` FOREIGN KEY (`college`) REFERENCES `creqColleges` (`collegeId`) ON DELETE NO ACTION ON UPDATE CASCADE,
+  CONSTRAINT `creqDepartments_ibfk_1` FOREIGN KEY (`contactGroup`) REFERENCES `creqGroups` (`groupId`) ON DELETE NO ACTION ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=177 DEFAULT CHARSET=utf8 COMMENT='List of departments at UNL';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqFiles`
+--
+
+DROP TABLE IF EXISTS `creqFiles`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqFiles` (
+  `fileId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `title` varchar(255) NOT NULL COMMENT 'File name',
+  `mimeType` varchar(255) NOT NULL COMMENT 'Mime type of the file',
+  `data` longblob NOT NULL COMMENT 'Actual contents of file if non-empty (no longer used)',
+  `hash` varchar(128) NOT NULL COMMENT 'Hash of the file contents.  Used to derive path on filesystem',
+  PRIMARY KEY (`fileId`)
+) ENGINE=InnoDB AUTO_INCREMENT=4875 DEFAULT CHARSET=utf8 COMMENT='Metadata about files stored in application/uploads';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqFourYearPlanCourses`
+--
+
+DROP TABLE IF EXISTS `creqFourYearPlanCourses`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqFourYearPlanCourses` (
+  `fourYearPlanCourseId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `generation` int(4) unsigned NOT NULL COMMENT 'Foreign key for the owning four year plan generation',
+  `concentration` varchar(255) NOT NULL COMMENT 'Name of the concentration the course is part of',
+  `semester` int(4) unsigned NOT NULL COMMENT 'Semester in which the course is recommended',
+  `course` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key of the course',
+  `text` text COMMENT 'Free form text of a requirement used in lieu of specifying a course',
+  `hours` varchar(255) DEFAULT NULL COMMENT 'Override the default number/range/list of hours that this course is worth',
+  PRIMARY KEY (`fourYearPlanCourseId`),
+  UNIQUE KEY `generation` (`generation`,`concentration`,`semester`,`course`),
+  KEY `course` (`course`),
+  CONSTRAINT `creqFourYearPlanCourses_ibfk_1` FOREIGN KEY (`generation`) REFERENCES `creqFourYearPlanGenerations` (`fourYearPlanGenerationId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqFourYearPlanCourses_ibfk_2` FOREIGN KEY (`course`) REFERENCES `creqCourses` (`courseId`) ON DELETE NO ACTION ON UPDATE NO ACTION
+) ENGINE=InnoDB AUTO_INCREMENT=31792 DEFAULT CHARSET=utf8 COMMENT='List of courses that belong to a given four year plan';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqFourYearPlanGenerations`
+--
+
+DROP TABLE IF EXISTS `creqFourYearPlanGenerations`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqFourYearPlanGenerations` (
+  `fourYearPlanGenerationId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `assetId` int(4) unsigned NOT NULL COMMENT 'Foreign key for the base asset',
+  `parent` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key for the previous generation of this four year plan',
+  `fourYearPlan` int(4) unsigned NOT NULL COMMENT 'Foreign key for the base four year plan',
+  `request` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key for the request making the change',
+  `type` enum('proposed','official') CHARACTER SET utf8 NOT NULL COMMENT 'Indicates whether or not this generation was ever approved and made official',
+  `removed` enum('no','yes') CHARACTER SET utf8 NOT NULL COMMENT 'Indicates whether or not this four year plan is no longer offered',
+  `majorId` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key of the major suggesting this plan',
+  PRIMARY KEY (`fourYearPlanGenerationId`),
+  KEY `assetId` (`assetId`),
+  KEY `parent` (`parent`),
+  KEY `fourYearPlan` (`fourYearPlan`),
+  KEY `request` (`request`),
+  KEY `type` (`type`),
+  KEY `removed` (`removed`),
+  KEY `majorId` (`majorId`),
+  CONSTRAINT `creqFourYearPlanGenerations_ibfk_1` FOREIGN KEY (`assetId`) REFERENCES `creqAssets` (`assetId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqFourYearPlanGenerations_ibfk_2` FOREIGN KEY (`parent`) REFERENCES `creqFourYearPlanGenerations` (`fourYearPlanGenerationId`) ON DELETE NO ACTION ON UPDATE NO ACTION,
+  CONSTRAINT `creqFourYearPlanGenerations_ibfk_3` FOREIGN KEY (`request`) REFERENCES `creqRequests` (`requestId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqFourYearPlanGenerations_ibfk_4` FOREIGN KEY (`fourYearPlan`) REFERENCES `creqFourYearPlans` (`fourYearPlanId`),
+  CONSTRAINT `creqFourYearPlanGenerations_ibfk_5` FOREIGN KEY (`majorId`) REFERENCES `creqMajors` (`majorId`) ON DELETE NO ACTION ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=369 DEFAULT CHARSET=latin1 COMMENT='Each time a plan is changed, a new generation is created';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqFourYearPlanNotes`
+--
+
+DROP TABLE IF EXISTS `creqFourYearPlanNotes`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqFourYearPlanNotes` (
+  `generation` int(4) NOT NULL COMMENT 'Foreign key for the owning four year plan generation',
+  `concentration` varchar(255) NOT NULL COMMENT 'Name of the concentration the course is part of',
+  `notes` text NOT NULL COMMENT 'Text of the note',
+  PRIMARY KEY (`generation`,`concentration`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='List of notes attached to four year plan concentrations';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqFourYearPlans`
+--
+
+DROP TABLE IF EXISTS `creqFourYearPlans`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqFourYearPlans` (
+  `fourYearPlanId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `currentGeneration` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key for the active four year plan generation for this four year plan',
+  PRIMARY KEY (`fourYearPlanId`),
+  UNIQUE KEY `currentGeneration` (`currentGeneration`),
+  CONSTRAINT `creqFourYearPlans_ibfk_1` FOREIGN KEY (`currentGeneration`) REFERENCES `creqFourYearPlanGenerations` (`fourYearPlanGenerationId`) ON DELETE NO ACTION ON UPDATE NO ACTION
+) ENGINE=InnoDB AUTO_INCREMENT=151 DEFAULT CHARSET=utf8 COMMENT='Base table for FourYearPlans_FourYearPlanModel';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqGroupImpliedMemberships`
+--
+
+DROP TABLE IF EXISTS `creqGroupImpliedMemberships`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqGroupImpliedMemberships` (
+  `groupImpliedMembershipId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `type` int(4) unsigned NOT NULL COMMENT 'Foreign key of the group membership type',
+  `parentGroup` int(4) unsigned NOT NULL COMMENT 'Foreign key of the owning group',
+  `childGroup` int(4) unsigned NOT NULL COMMENT 'Foreign key of the member group',
+  `explicit` enum('yes','no') NOT NULL DEFAULT 'no' COMMENT 'Boolean indicating whether or not this group was user defined or generated',
+  PRIMARY KEY (`groupImpliedMembershipId`),
+  UNIQUE KEY `type` (`type`,`parentGroup`,`childGroup`),
+  KEY `parentGroup` (`parentGroup`,`type`),
+  KEY `childGroup` (`childGroup`,`type`),
+  KEY `explicit` (`explicit`)
+) ENGINE=InnoDB AUTO_INCREMENT=5643 DEFAULT CHARSET=utf8 COMMENT='Generated list of all indirect group memberships ';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqGroupMemberships`
+--
+
+DROP TABLE IF EXISTS `creqGroupMemberships`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqGroupMemberships` (
+  `groupMembershipId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `type` int(4) unsigned NOT NULL COMMENT 'Foreign key of the group membership type',
+  `parentGroup` int(4) unsigned NOT NULL COMMENT 'Foreign key of the owning group',
+  `childGroup` int(4) unsigned NOT NULL COMMENT 'Foreign key of the member group',
+  PRIMARY KEY (`groupMembershipId`),
+  UNIQUE KEY `type` (`type`,`parentGroup`,`childGroup`),
+  KEY `parentGroup` (`parentGroup`,`type`),
+  KEY `childGroup` (`childGroup`,`type`),
+  CONSTRAINT `childGroup` FOREIGN KEY (`childGroup`, `type`) REFERENCES `creqGroups` (`groupId`, `type`),
+  CONSTRAINT `creqGroupMemberships_ibfk_1` FOREIGN KEY (`parentGroup`) REFERENCES `creqGroups` (`groupId`) ON UPDATE CASCADE,
+  CONSTRAINT `creqGroupMemberships_ibfk_2` FOREIGN KEY (`childGroup`) REFERENCES `creqGroups` (`groupId`) ON UPDATE CASCADE,
+  CONSTRAINT `parentGroup` FOREIGN KEY (`parentGroup`, `type`) REFERENCES `creqGroups` (`groupId`, `type`)
+) ENGINE=InnoDB AUTO_INCREMENT=2203 DEFAULT CHARSET=utf8 COMMENT='List of user defined group memberships';
+/*!40101 SET character_set_client = @saved_cs_client */;
+/*!50003 SET @saved_cs_client      = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results     = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client  = utf8 */ ;
+/*!50003 SET character_set_results = utf8 */ ;
+/*!50003 SET collation_connection  = utf8_general_ci */ ;
+/*!50003 SET @saved_sql_mode       = @@sql_mode */ ;
+/*!50003 SET sql_mode              = '' */ ;
+DELIMITER ;;
+/*!50003 CREATE*/ /*!50017 DEFINER=`creq`@`%`*/ /*!50003 TRIGGER creqGroupMemberships_Insert_Trigger BEFORE INSERT
+ON creqGroupMemberships
+FOR EACH ROW
+BEGIN
+CALL creqGroupMemberships_Insert_Procedure(NEW.`parentGroup`,
+                                             NEW.`childGroup`,
+                                             NEW.`type`);
+END */;;
+DELIMITER ;
+/*!50003 SET sql_mode              = @saved_sql_mode */ ;
+/*!50003 SET character_set_client  = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection  = @saved_col_connection */ ;
+/*!50003 SET @saved_cs_client      = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results     = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client  = utf8 */ ;
+/*!50003 SET character_set_results = utf8 */ ;
+/*!50003 SET collation_connection  = utf8_general_ci */ ;
+/*!50003 SET @saved_sql_mode       = @@sql_mode */ ;
+/*!50003 SET sql_mode              = '' */ ;
+DELIMITER ;;
+/*!50003 CREATE*/ /*!50017 DEFINER=`creq`@`%`*/ /*!50003 TRIGGER creqGroupMemberships_Update_Trigger BEFORE UPDATE
+ON creqGroupMemberships
+FOR EACH ROW
+BEGIN
+CALL creqGroupMemberships_Delete_Procedure(OLD.`parentGroup`,
+                                             OLD.`childGroup`);
+CALL creqGroupMemberships_Insert_Procedure(NEW.`parentGroup`,
+                                             NEW.`childGroup`,
+                                             NEW.`type`);
+END */;;
+DELIMITER ;
+/*!50003 SET sql_mode              = @saved_sql_mode */ ;
+/*!50003 SET character_set_client  = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection  = @saved_col_connection */ ;
+/*!50003 SET @saved_cs_client      = @@character_set_client */ ;
+/*!50003 SET @saved_cs_results     = @@character_set_results */ ;
+/*!50003 SET @saved_col_connection = @@collation_connection */ ;
+/*!50003 SET character_set_client  = utf8 */ ;
+/*!50003 SET character_set_results = utf8 */ ;
+/*!50003 SET collation_connection  = utf8_general_ci */ ;
+/*!50003 SET @saved_sql_mode       = @@sql_mode */ ;
+/*!50003 SET sql_mode              = '' */ ;
+DELIMITER ;;
+/*!50003 CREATE*/ /*!50017 DEFINER=`creq`@`%`*/ /*!50003 TRIGGER creqGroupMemberships_Delete_Trigger BEFORE DELETE
+ON creqGroupMemberships
+FOR EACH ROW
+BEGIN
+CALL creqGroupMemberships_Delete_Procedure(OLD.`parentGroup`,
+                                             OLD.`childGroup`);
+END */;;
+DELIMITER ;
+/*!50003 SET sql_mode              = @saved_sql_mode */ ;
+/*!50003 SET character_set_client  = @saved_cs_client */ ;
+/*!50003 SET character_set_results = @saved_cs_results */ ;
+/*!50003 SET collation_connection  = @saved_col_connection */ ;
+
+--
+-- Table structure for table `creqGroupTypes`
+--
+
+DROP TABLE IF EXISTS `creqGroupTypes`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqGroupTypes` (
+  `groupTypeId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `name` varchar(255) NOT NULL COMMENT 'Human readable name of the group type',
+  `description` text NOT NULL COMMENT 'Long description of the group type',
+  PRIMARY KEY (`groupTypeId`),
+  UNIQUE KEY `name` (`name`)
+) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COMMENT='List of possible group types';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqGroups`
+--
+
+DROP TABLE IF EXISTS `creqGroups`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqGroups` (
+  `groupId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `type` int(4) unsigned NOT NULL COMMENT 'Foreign key for the type of group this is',
+  `name` varchar(255) NOT NULL COMMENT 'Human readable name for this group',
+  `description` text COMMENT 'Long description for this group',
+  PRIMARY KEY (`groupId`,`type`),
+  UNIQUE KEY `type` (`type`,`name`),
+  KEY `name` (`name`),
+  CONSTRAINT `creqGroups_ibfk_1` FOREIGN KEY (`type`) REFERENCES `creqGroupTypes` (`groupTypeId`) ON DELETE NO ACTION ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=1549 DEFAULT CHARSET=utf8 COMMENT='Generic groups that users can belong to';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqLearningOutcomeDetails`
+--
+
+DROP TABLE IF EXISTS `creqLearningOutcomeDetails`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqLearningOutcomeDetails` (
+  `learningOutcomeDetailId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `generation` int(4) unsigned NOT NULL COMMENT 'Foreign key for the owning generation',
+  `concentration` varchar(255) NOT NULL COMMENT 'Name of the concentration the course is part of',
+  `name` varchar(255) NOT NULL COMMENT 'Machine name for the learning outcome',
+  `text` text NOT NULL COMMENT 'Text of the learning outcome',
+  PRIMARY KEY (`learningOutcomeDetailId`),
+  UNIQUE KEY `generation` (`generation`,`concentration`,`name`),
+  CONSTRAINT `creqLearningOutcomeDetails_ibfk_1` FOREIGN KEY (`generation`) REFERENCES `creqLearningOutcomeGenerations` (`learningOutcomeGenerationId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=2092 DEFAULT CHARSET=utf8 COMMENT='Text of the various learning outcomes for a major';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqLearningOutcomeGenerations`
+--
+
+DROP TABLE IF EXISTS `creqLearningOutcomeGenerations`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqLearningOutcomeGenerations` (
+  `learningOutcomeGenerationId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `assetId` int(4) unsigned NOT NULL COMMENT 'Foreign key for the base asset',
+  `parent` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key for the previous generation of these outcomes',
+  `learningOutcome` int(4) unsigned NOT NULL COMMENT 'Foreign key for the base learning outcome',
+  `request` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key for the request making the change',
+  `type` enum('proposed','official') NOT NULL DEFAULT 'proposed' COMMENT 'Indicates whether or not this generation was ever approved and made official',
+  `removed` enum('no','yes') NOT NULL COMMENT 'Indicates whether or not this learning outcome set is no longer offered',
+  `majorId` int(4) unsigned NOT NULL COMMENT 'Foreign key of the major suggesting this plan',
+  PRIMARY KEY (`learningOutcomeGenerationId`),
+  UNIQUE KEY `assetId` (`assetId`),
+  KEY `parent` (`parent`),
+  KEY `learningOutcome` (`learningOutcome`),
+  KEY `request` (`request`),
+  KEY `majorId` (`majorId`),
+  CONSTRAINT `creqLearningOutcomeGenerations_ibfk_1` FOREIGN KEY (`assetId`) REFERENCES `creqAssets` (`assetId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqLearningOutcomeGenerations_ibfk_2` FOREIGN KEY (`parent`) REFERENCES `creqLearningOutcomeGenerations` (`learningOutcomeGenerationId`) ON DELETE NO ACTION ON UPDATE CASCADE,
+  CONSTRAINT `creqLearningOutcomeGenerations_ibfk_3` FOREIGN KEY (`learningOutcome`) REFERENCES `creqLearningOutcomes` (`learningOutcomeId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqLearningOutcomeGenerations_ibfk_4` FOREIGN KEY (`request`) REFERENCES `creqRequests` (`requestId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqLearningOutcomeGenerations_ibfk_5` FOREIGN KEY (`majorId`) REFERENCES `creqMajors` (`majorId`) ON DELETE NO ACTION ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=158 DEFAULT CHARSET=utf8 COMMENT='Each time outcomes are changed, a new generation is created';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqLearningOutcomes`
+--
+
+DROP TABLE IF EXISTS `creqLearningOutcomes`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqLearningOutcomes` (
+  `learningOutcomeId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `currentGeneration` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key for the active four year plan generation for this learning outcome',
+  PRIMARY KEY (`learningOutcomeId`),
+  KEY `currentGeneration` (`currentGeneration`)
+) ENGINE=InnoDB AUTO_INCREMENT=141 DEFAULT CHARSET=utf8 COMMENT='Base table for LearningOutcomes_LearningOutcomeModel';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqMajors`
+--
+
+DROP TABLE IF EXISTS `creqMajors`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqMajors` (
+  `majorId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `name` varchar(255) NOT NULL COMMENT 'Human readable name for this department',
+  `college` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key for the owning college',
+  `removed` enum('no','yes') DEFAULT 'no',
+  PRIMARY KEY (`majorId`),
+  UNIQUE KEY `name` (`name`,`college`),
+  KEY `college` (`college`),
+  CONSTRAINT `creqMajors_ibfk_2` FOREIGN KEY (`college`) REFERENCES `creqColleges` (`collegeId`) ON DELETE NO ACTION ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=328 DEFAULT CHARSET=utf8 COMMENT='List of majors at UNL';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqPeople`
+--
+
+DROP TABLE IF EXISTS `creqPeople`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqPeople` (
+  `userId` int(4) unsigned NOT NULL COMMENT 'Foreign key for the user being described',
+  `firstName` varchar(255) NOT NULL COMMENT 'First name for the user',
+  `middleName` varchar(255) DEFAULT NULL COMMENT 'Middle name for the user',
+  `lastName` varchar(255) NOT NULL COMMENT 'Last name for the user',
+  `email` varchar(255) DEFAULT NULL COMMENT 'Email address for the user',
+  `phone` varchar(255) DEFAULT NULL COMMENT 'Phone number for the user',
+  `department` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key for the primary department for the user',
+  PRIMARY KEY (`userId`),
+  KEY `department` (`department`),
+  CONSTRAINT `creqPeopleIbfk_1` FOREIGN KEY (`department`) REFERENCES `creqDepartments` (`departmentId`) ON DELETE NO ACTION ON UPDATE CASCADE,
+  CONSTRAINT `creqPeopleIbfk_2` FOREIGN KEY (`userId`) REFERENCES `creqUsers` (`userId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Extended data for users';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqPrerequisiteTypes`
+--
+
+DROP TABLE IF EXISTS `creqPrerequisiteTypes`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqPrerequisiteTypes` (
+  `prerequisiteTypeId` int(4) unsigned NOT NULL AUTO_INCREMENT,
+  `name` varchar(255) NOT NULL,
+  `description` text NOT NULL,
+  PRIMARY KEY (`prerequisiteTypeId`)
+) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COMMENT='List of possible prerequisite types (unused)';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqRegistry`
+--
+
+DROP TABLE IF EXISTS `creqRegistry`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqRegistry` (
+  `registryId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `namespace` varchar(255) NOT NULL COMMENT 'A namespace that owns the data',
+  `key` varchar(255) NOT NULL COMMENT 'A key for the data',
+  `data` longblob NOT NULL COMMENT 'The data being stored',
+  PRIMARY KEY (`registryId`),
+  UNIQUE KEY `namespace` (`namespace`,`key`)
+) ENGINE=InnoDB AUTO_INCREMENT=276 DEFAULT CHARSET=utf8 COMMENT='Storage for data that doesn''t fit into any other table';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqRequestComments`
+--
+
+DROP TABLE IF EXISTS `creqRequestComments`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqRequestComments` (
+  `requestCommentId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `user` int(4) unsigned NOT NULL COMMENT 'Foreign key for the user making the comment',
+  `request` int(4) unsigned NOT NULL COMMENT 'Foreign key for the request being commented on',
+  `comment` text NOT NULL COMMENT 'Text of the comment',
+  `postTime` int(4) unsigned NOT NULL COMMENT 'UNIX timestamp for when the comment was made',
+  `visibility` enum('self','global','editorial') NOT NULL DEFAULT 'global' COMMENT 'Indicates who will see the comment and if it shows up as a "new" comment',
+  PRIMARY KEY (`requestCommentId`),
+  KEY `user` (`user`),
+  KEY `request` (`request`),
+  KEY `postTime` (`postTime`),
+  KEY `visibility` (`visibility`),
+  CONSTRAINT `creqRequestComments_ibfk_1` FOREIGN KEY (`user`) REFERENCES `creqUsers` (`userId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqRequestComments_ibfk_2` FOREIGN KEY (`request`) REFERENCES `creqRequests` (`requestId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=8493 DEFAULT CHARSET=utf8 COMMENT='List of user comments for a given request';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqRequestFiles`
+--
+
+DROP TABLE IF EXISTS `creqRequestFiles`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqRequestFiles` (
+  `requestFileId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `file` int(4) unsigned NOT NULL COMMENT 'Foreign key for the file attached to the request',
+  `request` int(4) unsigned NOT NULL COMMENT 'Foreign key for the request owning the file',
+  `type` enum('syllabus','crosslist memo','isNarrative','other') NOT NULL DEFAULT 'other' COMMENT 'Type of file being attached',
+  PRIMARY KEY (`requestFileId`),
+  UNIQUE KEY `file` (`file`,`request`),
+  KEY `request` (`request`),
+  KEY `type` (`type`),
+  CONSTRAINT `creqRequestFilesIbfk_2` FOREIGN KEY (`request`) REFERENCES `creqRequests` (`requestId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqRequestFiles_ibfk_1` FOREIGN KEY (`file`) REFERENCES `creqFiles` (`fileId`) ON DELETE NO ACTION ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=5023 DEFAULT CHARSET=utf8 COMMENT='List of files attached to a given request';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqRequestStacks`
+--
+
+DROP TABLE IF EXISTS `creqRequestStacks`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqRequestStacks` (
+  `requestStackId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `chain` int(4) unsigned NOT NULL COMMENT 'Foreign key for the chain currently being processed',
+  `action` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key for the action currently being considered',
+  `previous` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key for the stack frame to return to',
+  PRIMARY KEY (`requestStackId`),
+  KEY `chain` (`chain`),
+  KEY `body` (`action`),
+  KEY `previous` (`previous`),
+  CONSTRAINT `creqRequestStacks_ibfk_1` FOREIGN KEY (`chain`) REFERENCES `creqApprovalChains` (`approvalChainId`) ON DELETE NO ACTION ON UPDATE CASCADE,
+  CONSTRAINT `creqRequestStacks_ibfk_2` FOREIGN KEY (`action`) REFERENCES `creqApprovalActions` (`approvalActionId`) ON DELETE NO ACTION ON UPDATE CASCADE,
+  CONSTRAINT `creqRequestStacks_ibfk_3` FOREIGN KEY (`previous`) REFERENCES `creqRequestStacks` (`requestStackId`) ON DELETE NO ACTION ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=55273 DEFAULT CHARSET=utf8 COMMENT='Stack frames storing the progress of request approval';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqRequestStates`
+--
+
+DROP TABLE IF EXISTS `creqRequestStates`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqRequestStates` (
+  `requestStateId` int(4) unsigned NOT NULL AUTO_INCREMENT,
+  `name` varchar(255) NOT NULL,
+  `description` text NOT NULL,
+  PRIMARY KEY (`requestStateId`),
+  KEY `name` (`name`)
+) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COMMENT='Unused';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqRequestTypes`
+--
+
+DROP TABLE IF EXISTS `creqRequestTypes`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqRequestTypes` (
+  `requestTypeId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `name` varchar(255) NOT NULL COMMENT 'Machine name for this request type',
+  `description` text NOT NULL COMMENT 'Human readable name for this request type',
+  `approvalChain` int(4) unsigned NOT NULL COMMENT 'Foreign key for the default approval chain (unused)',
+  `module` varchar(255) NOT NULL COMMENT 'Name of the application module that will handle this request type',
+  PRIMARY KEY (`requestTypeId`),
+  KEY `name` (`name`),
+  KEY `approvalChain` (`approvalChain`),
+  CONSTRAINT `creqRequestTypesIbfk_1` FOREIGN KEY (`approvalChain`) REFERENCES `creqApprovalChains` (`approvalChainId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=23 DEFAULT CHARSET=utf8 COMMENT='List of valid request types';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqRequestViewTimes`
+--
+
+DROP TABLE IF EXISTS `creqRequestViewTimes`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqRequestViewTimes` (
+  `requestViewTimeId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `request` int(4) unsigned NOT NULL COMMENT 'Foreign key for the request that was viewed',
+  `user` int(4) unsigned NOT NULL COMMENT 'Foreign key for the user that viewed the request',
+  `viewTime` int(4) unsigned NOT NULL COMMENT 'UNIX timestamp for when the user last viewed the request',
+  `hidden` enum('no','yes') NOT NULL DEFAULT 'no' COMMENT 'Whether or not the user would like to hide the request from their "My Requests" list (unused)',
+  PRIMARY KEY (`requestViewTimeId`),
+  UNIQUE KEY `request` (`request`,`user`),
+  KEY `user` (`user`),
+  KEY `viewTime` (`viewTime`),
+  CONSTRAINT `creqRequestViewTimes_ibfk_1` FOREIGN KEY (`request`) REFERENCES `creqRequests` (`requestId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqRequestViewTimes_ibfk_2` FOREIGN KEY (`user`) REFERENCES `creqUsers` (`userId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=44426 DEFAULT CHARSET=utf8 COMMENT='List of the most recent times users view requests';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqRequestWatchers`
+--
+
+DROP TABLE IF EXISTS `creqRequestWatchers`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqRequestWatchers` (
+  `requestWatcherId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `request` int(4) unsigned NOT NULL COMMENT 'Foreign key for the request to display',
+  `watchingApprovalRole` int(4) unsigned NOT NULL COMMENT 'Foreign key for the role that will see the request',
+  PRIMARY KEY (`requestWatcherId`),
+  KEY `request` (`request`),
+  KEY `watchingApprovalBody` (`watchingApprovalRole`),
+  CONSTRAINT `creqRequestWatchers_ibfk_1` FOREIGN KEY (`request`) REFERENCES `creqRequests` (`requestId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqRequestWatchers_ibfk_2` FOREIGN KEY (`watchingApprovalRole`) REFERENCES `creqApprovalBodyRoles` (`approvalBodyRoleId`) ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=10632 DEFAULT CHARSET=utf8 COMMENT='List of roles that have requests persistently displayed';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqRequests`
+--
+
+DROP TABLE IF EXISTS `creqRequests`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqRequests` (
+  `requestId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `owner` int(4) unsigned NOT NULL COMMENT 'Foreign key for the user who created the request',
+  `justification` text NOT NULL COMMENT 'A description of what the request changes and why',
+  `stackPointer` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key for the current frame in the approval process stack',
+  `state` varchar(255) DEFAULT NULL COMMENT 'The most recent decision made for this request',
+  `submitterAttentionRequired` enum('no','yes') NOT NULL DEFAULT 'no' COMMENT 'Whether or not the submitter should currently be making a decision on this request',
+  `type` int(4) unsigned NOT NULL COMMENT 'Foreign key for the type of this request',
+  `complete` enum('no','yes') NOT NULL DEFAULT 'no' COMMENT 'Whether or not this request has completed its run through the approval chain',
+  `pullRequestNumber` int(11) DEFAULT NULL,
+  PRIMARY KEY (`requestId`),
+  KEY `type` (`type`),
+  KEY `state` (`state`),
+  KEY `stackPointer` (`stackPointer`),
+  KEY `owner` (`owner`),
+  KEY `complete` (`complete`),
+  KEY `submitterAttentionRequired` (`submitterAttentionRequired`),
+  CONSTRAINT `creqRequestsIbfk_3` FOREIGN KEY (`type`) REFERENCES `creqRequestTypes` (`requestTypeId`) ON DELETE NO ACTION ON UPDATE CASCADE,
+  CONSTRAINT `creqRequestsIbfk_4` FOREIGN KEY (`stackPointer`) REFERENCES `creqRequestStacks` (`requestStackId`) ON DELETE NO ACTION ON UPDATE CASCADE,
+  CONSTRAINT `creqRequests_ibfk_1` FOREIGN KEY (`owner`) REFERENCES `creqPeople` (`userId`) ON DELETE NO ACTION ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=7027 DEFAULT CHARSET=utf8 COMMENT='Base table for Requests_RequestModel';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqSubjectColleges`
+--
+
+DROP TABLE IF EXISTS `creqSubjectColleges`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqSubjectColleges` (
+  `subjectCollegeId` int(4) unsigned NOT NULL AUTO_INCREMENT,
+  `subject` int(4) unsigned NOT NULL,
+  `college` int(4) unsigned NOT NULL,
+  PRIMARY KEY (`subjectCollegeId`),
+  UNIQUE KEY `subjectId` (`subject`,`college`),
+  KEY `departmentId` (`college`),
+  CONSTRAINT `creqSubjectCollegesIbfk_1` FOREIGN KEY (`subject`) REFERENCES `creqSubjects` (`subjectId`) ON DELETE NO ACTION ON UPDATE CASCADE,
+  CONSTRAINT `creqSubjectCollegesIbfk_2` FOREIGN KEY (`college`) REFERENCES `creqColleges` (`collegeId`) ON DELETE NO ACTION ON UPDATE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Unused';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqSubjectDepartments`
+--
+
+DROP TABLE IF EXISTS `creqSubjectDepartments`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqSubjectDepartments` (
+  `subjectDepartmentId` int(4) unsigned NOT NULL AUTO_INCREMENT,
+  `subject` int(4) unsigned NOT NULL,
+  `department` int(4) unsigned NOT NULL,
+  PRIMARY KEY (`subjectDepartmentId`),
+  UNIQUE KEY `subject` (`subject`,`department`),
+  KEY `department` (`department`),
+  CONSTRAINT `creqSubjectDepartmentsIbfk_1` FOREIGN KEY (`subject`) REFERENCES `creqSubjects` (`subjectId`) ON DELETE NO ACTION ON UPDATE CASCADE,
+  CONSTRAINT `creqSubjectDepartmentsIbfk_2` FOREIGN KEY (`department`) REFERENCES `creqDepartments` (`departmentId`) ON DELETE NO ACTION ON UPDATE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Usused';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Temporary table structure for view `creqSubjectHierarchy`
+--
+
+DROP TABLE IF EXISTS `creqSubjectHierarchy`;
+/*!50001 DROP VIEW IF EXISTS `creqSubjectHierarchy`*/;
+SET @saved_cs_client     = @@character_set_client;
+SET character_set_client = utf8;
+/*!50001 CREATE TABLE `creqSubjectHierarchy` (
+  `subject` tinyint NOT NULL,
+  `subjectId` tinyint NOT NULL,
+  `department` tinyint NOT NULL,
+  `departmentId` tinyint NOT NULL,
+  `college` tinyint NOT NULL,
+  `collegeId` tinyint NOT NULL
+) ENGINE=MyISAM */;
+SET character_set_client = @saved_cs_client;
+
+--
+-- Table structure for table `creqSubjects`
+--
+
+DROP TABLE IF EXISTS `creqSubjects`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqSubjects` (
+  `subjectId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `name` varchar(255) NOT NULL COMMENT 'Subject code abbreviation',
+  `description` text NOT NULL COMMENT 'Human readable name of the subject code',
+  `department` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key for the owning department',
+  `retired` enum('no','yes') NOT NULL COMMENT 'Indicates whether or not this subject code is used by any current courses',
+  `contactGroup` int(4) unsigned DEFAULT NULL COMMENT 'Foreign key of the group that receives notifications for this subject',
+  PRIMARY KEY (`subjectId`),
+  UNIQUE KEY `name` (`name`),
+  KEY `department` (`department`),
+  KEY `retired` (`retired`),
+  KEY `contactGroup` (`contactGroup`),
+  CONSTRAINT `creqSubjectsIbfk_1` FOREIGN KEY (`department`) REFERENCES `creqDepartments` (`departmentId`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `creqSubjects_ibfk_1` FOREIGN KEY (`contactGroup`) REFERENCES `creqGroups` (`groupId`) ON DELETE NO ACTION ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=2113 DEFAULT CHARSET=utf8 COMMENT='List of all subjects at UNL';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `creqUsers`
+--
+
+DROP TABLE IF EXISTS `creqUsers`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `creqUsers` (
+  `userId` int(4) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Surrogate key',
+  `userName` varchar(255) NOT NULL COMMENT 'My.UNL (LDAP) username for the user',
+  `primaryGroup` int(4) unsigned NOT NULL COMMENT 'Foreign key for the user''s primary group (used to join other groups)',
+  PRIMARY KEY (`userId`),
+  UNIQUE KEY `userName` (`userName`),
+  KEY `primaryGroup` (`primaryGroup`),
+  CONSTRAINT `creqUsersIbfk_1` FOREIGN KEY (`primaryGroup`) REFERENCES `creqGroups` (`groupId`) ON DELETE NO ACTION ON UPDATE CASCADE
+) ENGINE=InnoDB AUTO_INCREMENT=1304 DEFAULT CHARSET=utf8 COMMENT='List of users in the system';
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `tempNewCourseGroups`
+--
+
+DROP TABLE IF EXISTS `tempNewCourseGroups`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `tempNewCourseGroups` (
+  `groupName` varchar(255) NOT NULL,
+  `subject` varchar(255) NOT NULL,
+  `courseNumber` int(4) unsigned NOT NULL,
+  `courseLetter` varchar(255) NOT NULL
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Table structure for table `tempWatcherMap`
+--
+
+DROP TABLE IF EXISTS `tempWatcherMap`;
+/*!40101 SET @saved_cs_client     = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
+CREATE TABLE `tempWatcherMap` (
+  `parent` int(4) unsigned DEFAULT NULL,
+  `child` int(4) unsigned DEFAULT NULL
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+/*!40101 SET character_set_client = @saved_cs_client */;
+
+--
+-- Final view structure for view `creqSubjectHierarchy`
+--
+
+/*!50001 DROP TABLE IF EXISTS `creqSubjectHierarchy`*/;
+/*!50001 DROP VIEW IF EXISTS `creqSubjectHierarchy`*/;
+/*!50001 SET @saved_cs_client          = @@character_set_client */;
+/*!50001 SET @saved_cs_results         = @@character_set_results */;
+/*!50001 SET @saved_col_connection     = @@collation_connection */;
+/*!50001 SET character_set_client      = utf8 */;
+/*!50001 SET character_set_results     = utf8 */;
+/*!50001 SET collation_connection      = utf8_general_ci */;
+/*!50001 CREATE ALGORITHM=UNDEFINED */
+/*!50013 DEFINER=`creq`@`%` SQL SECURITY DEFINER */
+/*!50001 VIEW `creqSubjectHierarchy` AS select `s`.`name` AS `subject`,`s`.`subjectId` AS `subjectId`,`d`.`name` AS `department`,`d`.`departmentId` AS `departmentId`,`c`.`name` AS `college`,`c`.`collegeId` AS `collegeId` from ((`creqSubjects` `s` join `creqDepartments` `d` on((`s`.`department` = `d`.`departmentId`))) join `creqColleges` `c` on((`d`.`college` = `c`.`collegeId`))) */;
+/*!50001 SET character_set_client      = @saved_cs_client */;
+/*!50001 SET character_set_results     = @saved_cs_results */;
+/*!50001 SET collation_connection      = @saved_col_connection */;