str instanceof SIRPhasedFilter ||
    private static SIROperator getTarget(Schedule schedule) {	// make function call for sub-schedule	SIRStream str = ((SIRIterator)schedule.getStream()).getStream();	// if it's a filter or not bottom schedule, can return	if (str instanceof SIRFilter ||	    !schedule.isBottomSchedule()) {	    return str;	}	// otherwise, we have a bottom schedule that isn't a filter.	// This must be a splitter or joiner with <str> as its	// container.	Utils.assert(str instanceof SIRSplitJoin || str instanceof SIRFeedbackLoop);	// test for splitter	if (schedule.getWorkFunc()==SIRSplitter.WORK_FUNCTION) {	    if (str instanceof SIRSplitJoin) {		return ((SIRSplitJoin)str).getSplitter();	    } else {		return ((SIRFeedbackLoop)str).getSplitter();	    }	}