added execute function