add more  overload exec(..)