small changes in execute function