redo with VSTO