add bwm and its functions