some changes in ExecuteCommand