add functions to bgv