code: function promote() {
    for (var _len2 = arguments.length, cs = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
      cs[_key2] = arguments[_key2];
    }
  
    return lazy$1(function (rec) {
      return or.apply(null, cs.map(function (c) {
        return length(c) === 2 ? both$1(modifyAfter(c[0], c[1]), rec) : c[0];
      }));
    });
  }
docs: Promotion