pub(crate) fn calculate_before_context(
    lines: &[(Option<LineNumber>, Option<LineNumber>)],
    opposite_to_lhs: &HashMap<LineNumber, HashSet<LineNumber>, BuildHasherDefault<FxHasher>>,
    opposite_to_rhs: &HashMap<LineNumber, HashSet<LineNumber>, BuildHasherDefault<FxHasher>>,
    num_context_lines: usize
) -> Vec<(Option<LineNumber>, Option<LineNumber>)>