int change_mask = ombx.getChangeMask(sContext, id, MailItem.TYPE_TAG);
int change_mask = ombx.getChangeMask(sContext, id, MailItem.TYPE_CONTACT);
    void syncContact(Element elt, int folderId) throws ServiceException {        int id = (int) elt.getAttributeLong(MailService.A_ID);        Contact cn = null;        try {            // make sure that the contact we're delta-syncing actually exists            cn = ombx.getContactById(sContext, id);        } catch (MailServiceException.NoSuchItemException nsie) {            new InitialSync(ombx).syncContact(elt, folderId);            return;        }        byte color = (byte) elt.getAttributeLong(MailService.A_COLOR, MailItem.DEFAULT_COLOR);        int flags = Flag.flagsToBitmask(elt.getAttribute(MailService.A_FLAGS, null));        long tags = Tag.tagsToBitmask(elt.getAttribute(MailService.A_TAGS, null));        Map<String, String> fields = new HashMap<String, String>();        for (Element eField : elt.listElements())            fields.put(eField.getAttribute(Element.XMLElement.A_ATTR_NAME), eField.getText());        int timestamp = (int) elt.getAttributeLong(MailService.A_CHANGE_DATE);        int changeId = (int) elt.getAttributeLong(MailService.A_MODIFIED_SEQUENCE);        int date = (int) (elt.getAttributeLong(MailService.A_DATE) / 1000);        int mod_content = (int) elt.getAttributeLong(MailService.A_REVISION);        synchronized (ombx) {            int change_mask = ombx.getChangeMask(sContext, id, MailItem.TYPE_TAG);            if ((change_mask & Change.MODIFIED_CONTENT) == 0 && !fields.isEmpty())                ombx.modifyContact(sContext, id, fields, true);            ombx.syncMetadata(sContext, id, MailItem.TYPE_CONTACT, folderId, flags, tags, color);            ombx.syncChangeIds(sContext, id, MailItem.TYPE_CONTACT, date, mod_content, timestamp, changeId);        }        OfflineLog.offline.debug("delta: updated contact (" + id + "): " + cn.getFileAsString());    }