refactored block lines and console abstraction