bl impl