new solution for averting recursive replacement with items like 'trash can'