} else if (b.containsField("$ref")) {
o = new DBRef(null, (String) b.get("$ref"), b.get("$id"));
} else if (b.containsField("$minKey")) {
o = new MinKey();
} else if (b.containsField("$maxKey")) {
o = new MaxKey();
} else if (b.containsField("$uuid")) {
o = UUID.fromString((String) b.get("$uuid"));
} else if (b.containsField("$binary")) {
int type = (Integer) b.get("$type");
byte[] bytes = (new Base64Codec()).decode((String) b.get("$binary"));