implement separate application launcher