log.error(ex);
System.err.println(ex);
    public static void main(String args[]) {		InetAddress     mcast_addr=null, bind_addr=null;	String          tmp;	int             port=5555;	boolean         use_all_interfaces=false;	try {	    for(int i=0; i < args.length; i++) {		tmp=args[i];		if("-help".equals(tmp)) {		    help();		    return;		}		if("-bind_addr".equals(tmp)) {		    bind_addr=InetAddress.getByName(args[++i]);		    continue;		}		if("-mcast_addr".equals(tmp)) {		    mcast_addr=InetAddress.getByName(args[++i]);		    continue;		}		if("-port".equals(tmp)) {		    port=Integer.parseInt(args[++i]);		    continue;		}		if("-use_all_interfaces".equals(tmp)) {		    use_all_interfaces=true;		    continue;		}		help();		return;	    }	    if(mcast_addr == null)		mcast_addr=InetAddress.getByName("224.0.0.150");	}	catch(Exception ex) {	    log.error(ex);	    return;	}	if(use_all_interfaces) {	    if(!is1_4()) {		log.error("-use_all_interfaces flag requires JDK 1.4 or greater");		return;	    }	}	try {	    if(use_all_interfaces) {		for(Enumeration en=NetworkInterface.getNetworkInterfaces(); en.hasMoreElements();) {		    NetworkInterface intf=(NetworkInterface)en.nextElement();		    for(Enumeration e2=intf.getInetAddresses(); e2.hasMoreElements();) {			bind_addr=(InetAddress)e2.nextElement();			// System.out.println("Binding multicast socket to " + bind_addr);			Receiver r=new Receiver(mcast_addr, bind_addr, port);			r.start();		    }		}	    }	    else {		Receiver r=new Receiver(mcast_addr, bind_addr, port);		r.start();	    }	}	catch(Exception e) {	    log.error(e);	}    }