private boolean runChecks(){
		// Check 1: Is it time to go home?
		if(office.getTime() >= dayEndTime){
		    // End the thread
		    return false;
		}

		// Lunch time?
		if(office.getTime() >= lunchTime && !hadLunch){
		    try {
			long startCheck = System.currentTimeMillis();
			System.out.println(office.getStringTime() + " Developer " + (int)(teamNumber+1) + "" + (int)(empNumber+1) + " goes to lunch");
			sleep(lunchDuration*10);
			long endCheck = System.currentTimeMillis();
	
			timeSpentAtLunch += (endCheck - startCheck)/10;
	
		    } catch (InterruptedException e) {
			e.printStackTrace();
		    }
		    hadLunch = true;
		    synchronized(leadQLock){
		    	leadQLock.notifyAll();
		    }
		}
	
		// Is it time for the 4 oclock meeting?
		if(office.getTime() >= 1600 && !attendedEndOfDayMeeting){
		    long startCheck = System.currentTimeMillis();
		    synchronized (leadQLock){
		    	leadQLock.notifyAll();
		    }
		    office.waitForEndOfDayMeeting();
		    try {
			System.out.println(office.getStringTime() + " Developer " + (int)(teamNumber+1) + "" + (int)(empNumber+1) + " attends end of day meeting");
			sleep(150);
			long endCheck = System.currentTimeMillis();
	
			timeSpentInMeetings += (endCheck - startCheck)/10;
	
		    } catch (InterruptedException e) {
			e.printStackTrace();
		    }
		    attendedEndOfDayMeeting = true;
		}
	
		return true;
    }