b functionality completed