actually `if (isBidirectionalRange!Range && is(typeof((ElementType!Range).init == E.init)))` (we should consistently mention the range element first in expressions)