initial working lockstep implementation