using adj.
using HashMap and PSQ.