public static Account constructAccountObject(String username) {
		ResultSet result = accessAccount(username);
		Account account = null;
		try {
			result.next();
			String uname = result.getNString(1);
			String pass = result.getNString(2);
			int employee_id = result.getInt(3);
			String employee_name = result.getNString(4);
			int type = result.getInt(5);
			String[] names = employee_name.split("\\s+");
			String fname = names[0];
			String lname = names[1];
			Boolean blocked = result.getBoolean(6);
			if (type == 1) {
				account = new SystemAdmin(fname, lname, employee_id, uname,
						pass);
			} else if (type == 2) {
				account = new AcademicAdmin(fname, lname, employee_id, uname,
						pass);
			} else if (type == 3) {
				account = new AssistantAdmin(fname, lname, employee_id, uname,
						pass);
			} else if (type == 4) {
				account = new Instructor(fname, lname, employee_id, uname, pass);
			} else if (type == 5) {
				account = new TATM(fname, lname, employee_id, uname, pass);
			} else {
				account = new TATM(fname, lname, employee_id, uname, pass);
				System.out.println("There was an error with account type; "
						+ "account type set to TA/TM");
			}
			account.setBlocked(blocked);
			return account;
		} catch (SQLException ex) {
			System.out.println("SQL Exception occured, the state : "
					+ ex.getSQLState() + "\nMessage: " + ex.getMessage());
		}
		System.out.println("Returning a null account because something "
				+ "failed while retrieving the account");
		return account;
	}