if (mAllowLocalTask) { hack++; }
    public void addMailboxToSearchList(ParseMailboxID id) throws ServiceException {                if (mAllServersAllMailboxes) { return; }                if (id.isAllServers()) {            assert(id.isAllMailboxIds()); // required -- see ParseMailboxID             // okay, ignore whatever's been built and just return a big set of everything            mHashMap = null;            mAllServersAllMailboxes = true;            return;        }                CrossMailboxSearch.ServerSearchTask server;                // hackhackhack        String hostname = Provisioning.getInstance().getLocalServer().getAttr(Provisioning.A_zimbraServiceHostname);        if (!id.isLocal()) {            hostname = id.getServer();        }                server = (CrossMailboxSearch.ServerSearchTask)(mHashMap.get(hostname));        if (server == null) {            if (mAllowLocalTask && hack==0 && id.isLocal()) { // hackhackhack                server = new CrossMailboxSearch.LocalServerSearchTask();            } else {                server = new CrossMailboxSearch.RemoteServerSearchTask();            }            if (mAllowLocalTask) {                hostname = hostname+"/"+hack;  // hackhackhack             }            mHashMap.put(hostname, server);        }                if (id.isAllMailboxIds()) {            server.setAllMailboxes();        } else {            server.addMailbox(id);        }                if (mAllowLocalTask) {            hack++; // comment/uncomment this line to force the NONFIRST mailbox in the request to go via loopback        }    }