improvement to support delete shapes with children