updated with command executor