add support for xid