try the implementation on the draft for the rocket function