https://gyunseo.com/posts/bellmanford-algorithm/