version 3 with more steps added