uses left versions of binary_l2r