I don't think weight or norm need val. It is public due to case class. InDegree needs it to override degree.