If ArrayBuffer is a mutable.Seq then why does this not compile

val adjacency: mutable.Map[Int, mutable.Seq[Int]] = mutable.Map[Int, mutable.ArrayBuffer[Int]]()

I am sure the answer is trivial, but for some reason I can’t get past it. I shouldn’t have to cast it because I can see int the ArrayBuffer library that mutable.Seq is part of it’s own interface!
ArrayBuffer -> mutable.IndexedBuffer[A] -> mutable.IndexedSeq[A] -> mutable.Seq[T]

The value type parameter of mutable.Map is invariant (not covariant). You can instantiate your map with value type mutable.Seq[Int] and dynamically put ArrayBuffer[Int] values into it.