log.error("Draw2Channels: " + not);
System.err.println("Draw2Channels: " + not);
	public void run() {	    Object      tmp;	    Message     msg=null;	    DrawCommand comm;	    while(true) {		try {		    tmp=data_channel.receive(0);		    if(tmp == null) continue;		    if(tmp instanceof View) {			View v=(View)tmp;			System.out.println("** View=" + v);			member_size=v.size();			if(mainFrame != null)			    setTitle();			continue;		    }		    if(tmp instanceof ExitEvent) {			System.out.println("-- Draw2Channels.main(): received EXIT, waiting for ChannelReconnected callback");			break;		    }		    if(!(tmp instanceof Message))			continue;		    msg=(Message)tmp;		    comm=null;		    Object obj=msg.getObject();		    if(obj instanceof DrawCommand)			comm=(DrawCommand)obj;		    else if(obj instanceof Message) {			System.out.println("*** Draw2Channels.run(): message is " + Util.printMessage((Message)obj));			Util.dumpStack(false);			continue;		    }		    else {			if(obj != null)			    System.out.println("*** Draw2Channels.run(): obj is " + obj.getClass() + 					       ", hdrs are" + msg.printObjectHeaders());			else			    System.out.println("*** Draw2Channels.run(): hdrs are" + msg.printObjectHeaders());			Util.dumpStack(false);			continue;		    }		    switch(comm.mode) {		    case DrawCommand.DRAW:			if(panel != null)			    panel.drawPoint(comm);			break;		    case DrawCommand.CLEAR:			clearPanel();			continue;		    default:			log.error("***** Draw2Channels.run(): received invalid draw command " + comm.mode);			break;		    }		}		catch(ChannelNotConnectedException not) {		    log.error("Draw2Channels: " + not);		    break;		}		catch(ChannelClosedException closed) {		    break;		}		catch(Exception e) {		    log.error(e);		    continue;	    }	    }	    	}