} else if (seenIt.objectForKey(jc.table1) == null) {
} else if (!seenTable2) {
    public String joinClauseString() {        NSMutableDictionary seenIt = new NSMutableDictionary();        StringBuffer sb = new StringBuffer();        for (int i = 0; i < _alreadyJoined.count(); i++) {            JoinClause jc = (JoinClause)_alreadyJoined.objectAtIndex(i);            if (seenIt.objectForKey(jc.table1) == null &&                seenIt.objectForKey(jc.table2) == null) {                sb.append(jc.table1);                sb.append(jc.op);                sb.append(jc.table2);            } else if (seenIt.objectForKey(jc.table1) == null) {                sb.append(jc.op);                sb.append(jc.table1);            } else {                sb.append(jc.op);                sb.append(jc.table2);            }            sb.append(jc.joinCondition);            sb.append(" ");            seenIt.setObjectForKey(jc.table1, jc.table1);            seenIt.setObjectForKey(jc.table2, jc.table2);        }        return sb.toString();    }