function(s) {
var f = Object.assign({
text: "",
target: "",
sex: -1,
type: "default",
reverse: !1,
mode: "default",
optimal: !1
}, s);
q = S(f.mode);
var x = y(f.text), d = y(f.target);
d.length || (d = [""]); var m = []; return x.forEach(function (s) {
d.forEach(function (x) {
N({ from: s, to: x, sex: f.sex, optimal: f.optimal }).forEach(function (s) {
var x = s ? k(s.selector, s.sex) : null;
x && x.forEach(
function (x) {
var d = [x], b = s.sex; f.reverse && (d = P(x, b), b = x.match(/([fhs1](&[ol\d]+)?|[olx]b)$/) ? 1 : 0),
"chain" == f.type ? d.forEach(function (f) {
var x = function (s) {
return s.split(",").map(function (s) {
var f = s.replace(/&[ol\d]+/, "");
return Object.assign({}, C, { xb: ["兄弟"], xs: ["姐妹"] })[f][0]
}).join("的")
}(f); s.sex > -1 && q[s.sex + "," + f] && (0 == s.sex ? x = "(女性)" + x : 1 == s.sex && (x = "(男性)" + x)), x && m.push(x)
}) : "pair" == f.type ? (d = P(x, s.sex)).forEach(function (s) {
var f = function (s, f) {
var x = [], d = [], m = []; s = s.replace(/&\d+/, ""), f = f.replace(/&\d+/, ""); var b = s.replace(/([ol])([bs])/, "x$2"), h = f.replace(/([ol])([bs])/, "x$2"), M = s.replace(/&[ol]/, ""), w = f.replace(/&[ol]/, "");
for (var o in v) {
var l = o.split("#"); if (l.length > 1) {
var e = k(l[0]), r = k(l[1]), G = e.map(function (s) { return s.replace(/&[ol\d]+/, "").replace(/([ol])([bs])/, "x$2") }), t = r.map(function (s) { return s.replace(/&[ol\d]+/, "").replace(/([ol])([bs])/, "x$2") });
(e.includes(s) && r.includes(f) || e.includes(f) && r.includes(s)) && x.push(v[o][0]), (G.includes(b) && t.includes(h) || G.includes(h) && t.includes(b)) && d.push(v[o][0]), (G.includes(M) && t.includes(w) || G.includes(w) && t.includes(M)) && m.push(v[o][0])
}
} return x.length || (x = d), x.length || (x = m), x
}(x, s);
f.length && (m = m.concat(f))
}) : d.forEach(function (s) { var f = R(s); f.length || (f = R(b + "," + s)), f.length && (m = m.concat(f)) })
})
})
})
}), O(m)
}
console