return parent.findObject(objectName, deep);
return ((Group)parent).findObject(objectName, deep);
public Object findObject(String objectName, boolean deep) {	if (objectName.length()==0 && Group.getRoot()==this)		return this;			String relName = Group.substractRelativeName(getAbsoluteName(), 												 objectName);		if (relName==null)		return null; 		else if (relName.length()==0 || relName.charAt(0)==Constants.GROUP_SEPARATOR)	{		com.cosylab.vdct.Console.getInstance().println("Invalid name '"+objectName+"'.");		return null; 		}	else if (Group.hasTokens(relName))	{		if (!deep) return null;		String parentName = Group.substractToken(relName);		// !!! check if parent is always Group object		Group parent = (Group)getSubObject(parentName);		if (parent==null)		{			//com.cosylab.vdct.Console.getInstance().println("o) Internal error: no parent found / no such object");			//com.cosylab.vdct.Console.getInstance().println("\t objectName="+objectName+", current group="+getAbsoluteName());			return null;		}		else 			return parent.findObject(objectName, deep);	}	else {		return getSubObject(relName);	}}