new macro-based powerline function