smoke practicle refactored