completed engine methods