debugging and adding flexibility