slight refactoring of bdls