def METHOD_NAME(
    cls, front_line: FrontLine, theater: ConflictTheater, settings: Settings
) -> FrontLineConflictDescription:
    # TODO: Break apart the front-line and air conflict descriptions.
    # We're wastefully not caching the front-line bounds here because air conflicts
    # can't compute bounds, only a position.
    bounds = cls.frontline_bounds(front_line, theater, settings)
    conflict = cls(
        theater=theater,
        front_line=front_line,
        position=bounds.left_position,
        heading=bounds.heading_from_left_to_right,
        size=bounds.length,
    )
    return conflict