function _recycleCheck(current, stack) {
      var index = stack.indexOf(current);
      if (index >= 0) {
        var s = _.map(stack.slice(index).concat(current), function(it) { return it.toString(); });
        throw new Error('Recycle depends found. ' + s.join(' -> '));