use bson instead of pymongo