Trait Weight
linear_assignment
pub trait Weight: Zero + Add<Output = Self> + Sub<Output = Self> + Ord + Copy + Debug { }
impl<T: Zero + Add<Output = T> + Sub<Output = T> + Ord + Copy + Debug> Weight for T