protected void choosePatch(Patch p, int bankNum, int patchNum) {
protected void choosePatch(IPatch p, int bankNum, int patchNum) {
    protected void choosePatch(Patch p, int bankNum, int patchNum) {	int bank = 0;	int patch = 0;	String bankstr;	String patchstr;	// choose bank number	if (bankNumbers.length > 1) {	    bankstr = (String) JOptionPane.showInputDialog		(null, "Please Choose a Bank", "Storing Patch",		 JOptionPane.QUESTION_MESSAGE, null,		 bankNumbers, bankNumbers[bankNum]);	    if (bankstr == null) // canceled		return;	    for (int i = 0; i < bankNumbers.length; i++)		if (bankstr.equals(bankNumbers[i])) {		    bank = i;		    break;		}	}	// choose patch number	if (patchNumbers.length > 1) {	    patchstr = (String) JOptionPane.showInputDialog		(null, "Please Choose a Patch Location", "Storing Patch",		 JOptionPane.QUESTION_MESSAGE, null,		 patchNumbers, patchNumbers[patchNum]); // phil@muqus.com	    if (patchstr == null) // canceled		return;	    for (int i = 0; i < patchNumbers.length; i++)		if (patchstr.equals(patchNumbers[i])) {		    patch = i;		    break;		}	}	ErrorMsg.reportStatus("Driver:ChoosePatch  Bank = " + bank			      + "  Patch = " + patch);	// send a Patch to selected bank & patch number	storePatch(p, bank, patch);    }