use self's bson