implments bcInterface