progress on implementing engine