maybe execute was calling itself infinitely due to naming confusion