recusrion work cont'd