started defining BL funcs