substitute
fn
auto substitute(alias pred = (a, b) => a == b, R, Substs...)(R r, Substs substs) if (isInputRange!R && Substs.length >= 2 && !is(CommonType!(Substs) == void))ditto