else
} else {
    private SIRInitStatement createInitStatement(Object SIROp, String regMethod)     {	SIRStream newST = null;	//Already an SIRinit statement	if (SIROp instanceof SIRInitStatement) {	    return (SIRInitStatement)SIROp;	}	//Using a local variable that has been already defined as a stream construct	if (SIROp instanceof SIRStream)	    newST = (SIRStream)SIROp;	/********************************************************************/	/* THIS BREAKS IT, but was inserted in place of what's above (up to */	/* "= null"                                                         */	/********************************************************************	//Already an SIRinit statement (this is a local variable expression)	//we used the init statement from the symbol table	//Using a local variable that has been already defined as a stream construct	if (SIROp instanceof SIRInitStatement) {	    //now we must set the parent and do any other steps that are necessary 	    // when registering	    newST = (SIRStream)((SIRInitStatement)SIROp).getTarget();	    newST.setParent((SIRContainer)parentStream);	}	if (SIROp instanceof SIRStream)	    newST = (SIRStream)SIROp;	/********************************************************************/	/************** END BREAKAGE ****************************************/	/********************************************************************/	//Creating a named class	//if it is a named creation, lookup in the symbol table for the visited	//node and add it to the pipeline	if (SIROp instanceof JUnqualifiedInstanceCreation) {	    SIRStream st = (SIRStream)getVisitedOp(((JUnqualifiedInstanceCreation)SIROp).						   getType().getCClass().getIdent());	    	    newST = (SIRStream) ObjectDeepCloner.deepCopy(st);	    //SIRStream newST = (SIRStream) st.clone();	    newST.setParent((SIRContainer)parentStream);	}	//Die if it is none of the above case	if (newST == null)	    at.dms.util.Utils.fail("Illegal Arg to Stream Add Construct");		//now find the registration method	if (regMethod.equals("add")) {	    if (parentStream instanceof SIRPipeline)		((SIRPipeline)parentStream).add(newST);	    else 		((SIRSplitJoin)parentStream).add(newST);	}	else if (regMethod.equals("setBody"))	    ((SIRFeedbackLoop)parentStream).setBody(newST);	else if (regMethod.equals("setLoop"))	    ((SIRFeedbackLoop)parentStream).setLoop(newST);	else	    at.dms.util.Utils.fail("Invalid Registration Method");	//Already an SIRinit statement (this is a local variable expression)	//we used the init statement from the symbol table	//Using a local variable that has been already defined as a stream construct	if (SIROp instanceof SIRInitStatement) 	    	    return (SIRInitStatement)SIROp;	else 	    return new SIRInitStatement(null, null, 					((JUnqualifiedInstanceCreation)SIROp).getParams(),					newST);    }