protected boolean putSpecial(String name, Object val) {
    if (val instanceof DBPointer) {
      DBPointer r = (DBPointer) val;
      putDBPointer(name, r._ns, (ObjectId) r._id);
      return true;
    }

    if (val instanceof DBRefBase) {
      putDBRef(name, (DBRefBase) val);
      return true;
    }

    return false;
  }