recursive control mechanism