Propagate context + rework ternary if