{"algorithm":"multi-source-dijkstra","about":["Multi-source Dijkstra answers which source is nearest to each vertex, such as which warehouse can reach each address soonest. It puts every source in the queue at distance 0 and then runs Dijkstra's algorithm once. Each vertex is settled by whichever source gets there first, so the areas around the sources grow together until they meet.","One search settles each vertex once, so it costs O((V+E) log V) however many sources there are. Running path.Dijkstra from each source instead settles every vertex once per source. The performance card on this page times both.","path.DijkstraMultiSource returns a NearestSources value with Source, Distance and PathTo for any vertex. When two sources are equally near, the one listed first wins, so the same sources give the same answer on every run. Distances run along the edges, from a source to the vertex. On a map with one-way streets, that is the drive from the warehouse to the address, and the drive back can differ."],"template":{"id":"one-way-city","name":"One-way city","description":"Forty-five intersections, I1 to I45, where I stands for intersection, numbered row by row from the top left with nine to a row. Most streets are one way, and the outer streets form a clockwise loop. Only the middle row (I19 to I27) and the middle column (I5, I14, I23, I32 and I41) go both ways, and each edge is the travel time in minutes.","family":"road","directed":true,"weighted":true,"acyclic":false,"vertices":[{"id":"I1","x":64,"y":287},{"id":"I2","x":175,"y":279},{"id":"I3","x":288,"y":275},{"id":"I4","x":381,"y":280},{"id":"I5","x":500,"y":288},{"id":"I6","x":601,"y":274},{"id":"I7","x":715,"y":288},{"id":"I8","x":836,"y":273},{"id":"I9","x":947,"y":289},{"id":"I10","x":58,"y":382},{"id":"I11","x":177,"y":399},{"id":"I12","x":280,"y":398},{"id":"I13","x":395,"y":389},{"id":"I14","x":492,"y":379},{"id":"I15","x":614,"y":383},{"id":"I16","x":720,"y":392},{"id":"I17","x":833,"y":382},{"id":"I18","x":942,"y":384},{"id":"I19","x":55,"y":502},{"id":"I20","x":168,"y":497},{"id":"I21","x":282,"y":490},{"id":"I22","x":393,"y":509},{"id":"I23","x":499,"y":491},{"id":"I24","x":613,"y":508},{"id":"I25","x":714,"y":501},{"id":"I26","x":820,"y":492},{"id":"I27","x":937,"y":502},{"id":"I28","x":67,"y":610},{"id":"I29","x":171,"y":617},{"id":"I30","x":288,"y":600},{"id":"I31","x":392,"y":611},{"id":"I32","x":510,"y":613},{"id":"I33","x":605,"y":600},{"id":"I34","x":725,"y":611},{"id":"I35","x":839,"y":607},{"id":"I36","x":938,"y":605},{"id":"I37","x":56,"y":719},{"id":"I38","x":171,"y":722},{"id":"I39","x":283,"y":728},{"id":"I40","x":391,"y":711},{"id":"I41","x":510,"y":716},{"id":"I42","x":613,"y":724},{"id":"I43","x":715,"y":719},{"id":"I44","x":838,"y":712},{"id":"I45","x":943,"y":720}],"edges":[{"from":"I1","to":"I2","weight":3},{"from":"I10","to":"I1","weight":5},{"from":"I2","to":"I3","weight":2},{"from":"I2","to":"I11","weight":4},{"from":"I3","to":"I4","weight":3},{"from":"I12","to":"I3","weight":4},{"from":"I4","to":"I5","weight":2},{"from":"I4","to":"I13","weight":2},{"from":"I5","to":"I6","weight":5},{"from":"I5","to":"I14","weight":5},{"from":"I14","to":"I5","weight":5},{"from":"I6","to":"I7","weight":4},{"from":"I15","to":"I6","weight":4},{"from":"I7","to":"I8","weight":4},{"from":"I7","to":"I16","weight":3},{"from":"I8","to":"I9","weight":4},{"from":"I17","to":"I8","weight":5},{"from":"I9","to":"I18","weight":2},{"from":"I11","to":"I10","weight":4},{"from":"I19","to":"I10","weight":5},{"from":"I12","to":"I11","weight":5},{"from":"I11","to":"I20","weight":3},{"from":"I13","to":"I12","weight":5},{"from":"I21","to":"I12","weight":2},{"from":"I14","to":"I13","weight":4},{"from":"I13","to":"I22","weight":3},{"from":"I15","to":"I14","weight":2},{"from":"I14","to":"I23","weight":3},{"from":"I23","to":"I14","weight":3},{"from":"I16","to":"I15","weight":2},{"from":"I24","to":"I15","weight":4},{"from":"I17","to":"I16","weight":2},{"from":"I16","to":"I25","weight":2},{"from":"I18","to":"I17","weight":4},{"from":"I26","to":"I17","weight":4},{"from":"I18","to":"I27","weight":5},{"from":"I19","to":"I20","weight":3},{"from":"I20","to":"I19","weight":3},{"from":"I28","to":"I19","weight":4},{"from":"I20","to":"I21","weight":2},{"from":"I21","to":"I20","weight":2},{"from":"I20","to":"I29","weight":3},{"from":"I21","to":"I22","weight":3},{"from":"I22","to":"I21","weight":3},{"from":"I30","to":"I21","weight":3},{"from":"I22","to":"I23","weight":5},{"from":"I23","to":"I22","weight":5},{"from":"I22","to":"I31","weight":2},{"from":"I23","to":"I24","weight":5},{"from":"I24","to":"I23","weight":5},{"from":"I23","to":"I32","weight":5},{"from":"I32","to":"I23","weight":5},{"from":"I24","to":"I25","weight":2},{"from":"I25","to":"I24","weight":2},{"from":"I33","to":"I24","weight":2},{"from":"I25","to":"I26","weight":4},{"from":"I26","to":"I25","weight":4},{"from":"I25","to":"I34","weight":3},{"from":"I26","to":"I27","weight":5},{"from":"I27","to":"I26","weight":5},{"from":"I35","to":"I26","weight":5},{"from":"I27","to":"I36","weight":3},{"from":"I28","to":"I29","weight":3},{"from":"I37","to":"I28","weight":4},{"from":"I29","to":"I30","weight":2},{"from":"I29","to":"I38","weight":4},{"from":"I30","to":"I31","weight":4},{"from":"I39","to":"I30","weight":3},{"from":"I31","to":"I32","weight":5},{"from":"I31","to":"I40","weight":3},{"from":"I32","to":"I33","weight":5},{"from":"I32","to":"I41","weight":4},{"from":"I41","to":"I32","weight":4},{"from":"I33","to":"I34","weight":3},{"from":"I42","to":"I33","weight":2},{"from":"I34","to":"I35","weight":5},{"from":"I34","to":"I43","weight":3},{"from":"I35","to":"I36","weight":5},{"from":"I44","to":"I35","weight":2},{"from":"I36","to":"I45","weight":2},{"from":"I38","to":"I37","weight":3},{"from":"I39","to":"I38","weight":2},{"from":"I40","to":"I39","weight":2},{"from":"I41","to":"I40","weight":2},{"from":"I42","to":"I41","weight":2},{"from":"I43","to":"I42","weight":3},{"from":"I44","to":"I43","weight":5},{"from":"I45","to":"I44","weight":3}],"details":{"vertices":45,"edges":88,"directed":true,"weighted":true,"acyclic":false,"weightMin":2,"weightMax":5,"negativeWeights":false,"density":0.044444444444444446,"inDegree":{"min":1,"avg":1.9555555555555555,"max":4},"outDegree":{"min":1,"avg":1.9555555555555555,"max":4},"selfLoops":0,"components":1}},"problem":"With three warehouses on mostly one-way streets, which one should deliver to each intersection, and what is the longest drive?","params":{"sources":["I1","I18","I42"]},"result":{"kind":"groups","groups":[["I1","I2","I3","I4","I5","I10","I11","I12","I13","I19","I20","I21","I22","I29"],["I6","I7","I8","I9","I14","I15","I16","I17","I18","I26","I27","I36","I44","I45"],["I23","I24","I25","I28","I30","I31","I32","I33","I34","I35","I37","I38","I39","I40","I41","I42","I43"]]},"answer":"Warehouse 1 at I1 serves 14, 2 at I18 serves 14 and 3 at I42 serves 17. The longest drive is 16, from warehouse 2 to I7.","legend":{"vertex":[{"id":"idle","label":"Not reached","color":"#64748B","shape":"hollow"},{"id":"waiting","label":"In queue","color":"#E69F00","shape":"dashed-square"},{"id":"current","label":"Being settled","color":"#56B4E9","shape":"ring"},{"id":"component-1","label":"Warehouse 1, serves 14","color":"#009E73","shape":"filled"},{"id":"component-2","label":"Warehouse 2, serves 14","color":"#CC79A7","shape":"filled"},{"id":"component-3","label":"Warehouse 3, serves 17","color":"#56B4E9","shape":"filled"}],"edge":[{"id":"idle","label":"Edge","color":"#475569","shape":"line"},{"id":"examined","label":"Checked, not quicker","color":"#64748B","shape":"dashed"},{"id":"area-1","label":"Road from warehouse 1","color":"#009E73","shape":"thick"},{"id":"area-2","label":"Road from warehouse 2","color":"#CC79A7","shape":"thick"},{"id":"area-3","label":"Road from warehouse 3","color":"#56B4E9","shape":"thick"}],"panels":[{"id":"queue","title":"Priority queue","kind":"list"},{"id":"dist","title":"Drive time","kind":"table"},{"id":"areas","title":"Areas","kind":"groups"}]},"steps":[{"say":"Put every warehouse in the queue at 0: 1 at I1, 2 at I18 and 3 at I42. Each place goes to the warehouse that can reach it soonest, so one search serves them all.","ops":[{"panel":"dist","set":{"I1":"∞"}},{"panel":"dist","set":{"I2":"∞"}},{"panel":"dist","set":{"I3":"∞"}},{"panel":"dist","set":{"I4":"∞"}},{"panel":"dist","set":{"I5":"∞"}},{"panel":"dist","set":{"I6":"∞"}},{"panel":"dist","set":{"I7":"∞"}},{"panel":"dist","set":{"I8":"∞"}},{"panel":"dist","set":{"I9":"∞"}},{"panel":"dist","set":{"I10":"∞"}},{"panel":"dist","set":{"I11":"∞"}},{"panel":"dist","set":{"I12":"∞"}},{"panel":"dist","set":{"I13":"∞"}},{"panel":"dist","set":{"I14":"∞"}},{"panel":"dist","set":{"I15":"∞"}},{"panel":"dist","set":{"I16":"∞"}},{"panel":"dist","set":{"I17":"∞"}},{"panel":"dist","set":{"I18":"∞"}},{"panel":"dist","set":{"I19":"∞"}},{"panel":"dist","set":{"I20":"∞"}},{"panel":"dist","set":{"I21":"∞"}},{"panel":"dist","set":{"I22":"∞"}},{"panel":"dist","set":{"I23":"∞"}},{"panel":"dist","set":{"I24":"∞"}},{"panel":"dist","set":{"I25":"∞"}},{"panel":"dist","set":{"I26":"∞"}},{"panel":"dist","set":{"I27":"∞"}},{"panel":"dist","set":{"I28":"∞"}},{"panel":"dist","set":{"I29":"∞"}},{"panel":"dist","set":{"I30":"∞"}},{"panel":"dist","set":{"I31":"∞"}},{"panel":"dist","set":{"I32":"∞"}},{"panel":"dist","set":{"I33":"∞"}},{"panel":"dist","set":{"I34":"∞"}},{"panel":"dist","set":{"I35":"∞"}},{"panel":"dist","set":{"I36":"∞"}},{"panel":"dist","set":{"I37":"∞"}},{"panel":"dist","set":{"I38":"∞"}},{"panel":"dist","set":{"I39":"∞"}},{"panel":"dist","set":{"I40":"∞"}},{"panel":"dist","set":{"I41":"∞"}},{"panel":"dist","set":{"I42":"∞"}},{"panel":"dist","set":{"I43":"∞"}},{"panel":"dist","set":{"I44":"∞"}},{"panel":"dist","set":{"I45":"∞"}},{"v":"I1","state":"waiting"},{"panel":"dist","set":{"I1":"0"}},{"v":"I18","state":"waiting"},{"panel":"dist","set":{"I18":"0"}},{"v":"I42","state":"waiting"},{"panel":"dist","set":{"I42":"0"}},{"panel":"queue","list":[{"key":"I1","note":"0"},{"key":"I18","note":"0"},{"key":"I42","note":"0"}]}]},{"say":"Take I1 from the queue. It is warehouse 1, at 0 from itself.","ops":[{"v":"I1","state":"current"},{"panel":"queue","list":[{"key":"I18","note":"0"},{"key":"I42","note":"0"}]},{"panel":"areas","groups":[["I1"]]}]},{"say":"I1 to I2: 0 + 3 = 3, so I2 goes to warehouse 1 at 3.","ops":[{"e":["I1","I2"],"state":"area-1"},{"panel":"dist","set":{"I2":"3"}},{"panel":"queue","list":[{"key":"I18","note":"0"},{"key":"I42","note":"0"},{"key":"I2","note":"3"}]},{"v":"I2","state":"waiting"}]},{"say":"Take I18 from the queue. It is warehouse 2, at 0 from itself.","ops":[{"v":"I18","state":"current"},{"panel":"queue","list":[{"key":"I42","note":"0"},{"key":"I2","note":"3"}]},{"v":"I1","state":"component-1"},{"panel":"areas","groups":[["I1"],["I18"]]}]},{"say":"I18 to I17: 0 + 4 = 4, so I17 goes to warehouse 2 at 4.","ops":[{"e":["I18","I17"],"state":"area-2"},{"panel":"dist","set":{"I17":"4"}},{"panel":"queue","list":[{"key":"I42","note":"0"},{"key":"I2","note":"3"},{"key":"I17","note":"4"}]},{"v":"I17","state":"waiting"}]},{"say":"I18 to I27: 0 + 5 = 5, so I27 goes to warehouse 2 at 5.","ops":[{"e":["I18","I27"],"state":"area-2"},{"panel":"dist","set":{"I27":"5"}},{"panel":"queue","list":[{"key":"I42","note":"0"},{"key":"I2","note":"3"},{"key":"I17","note":"4"},{"key":"I27","note":"5"}]},{"v":"I27","state":"waiting"}]},{"say":"Take I42 from the queue. It is warehouse 3, at 0 from itself.","ops":[{"v":"I42","state":"current"},{"panel":"queue","list":[{"key":"I2","note":"3"},{"key":"I17","note":"4"},{"key":"I27","note":"5"}]},{"v":"I18","state":"component-2"},{"panel":"areas","groups":[["I1"],["I18"],["I42"]]}]},{"say":"I42 to I33: 0 + 2 = 2, so I33 goes to warehouse 3 at 2.","ops":[{"e":["I42","I33"],"state":"area-3"},{"panel":"dist","set":{"I33":"2"}},{"panel":"queue","list":[{"key":"I33","note":"2"},{"key":"I2","note":"3"},{"key":"I17","note":"4"},{"key":"I27","note":"5"}]},{"v":"I33","state":"waiting"}]},{"say":"I42 to I41: 0 + 2 = 2, so I41 goes to warehouse 3 at 2.","ops":[{"e":["I42","I41"],"state":"area-3"},{"panel":"dist","set":{"I41":"2"}},{"panel":"queue","list":[{"key":"I33","note":"2"},{"key":"I41","note":"2"},{"key":"I2","note":"3"},{"key":"I17","note":"4"},{"key":"I27","note":"5"}]},{"v":"I41","state":"waiting"}]},{"say":"Take I33 from the queue. Warehouse 3 reaches it in 2, and nothing reaches it sooner.","ops":[{"v":"I33","state":"current"},{"panel":"queue","list":[{"key":"I41","note":"2"},{"key":"I2","note":"3"},{"key":"I17","note":"4"},{"key":"I27","note":"5"}]},{"v":"I42","state":"component-3"},{"panel":"areas","groups":[["I1"],["I18"],["I42","I33"]]}]},{"say":"I33 to I24: 2 + 2 = 4, so I24 goes to warehouse 3 at 4.","ops":[{"e":["I33","I24"],"state":"area-3"},{"panel":"dist","set":{"I24":"4"}},{"panel":"queue","list":[{"key":"I41","note":"2"},{"key":"I2","note":"3"},{"key":"I17","note":"4"},{"key":"I24","note":"4"},{"key":"I27","note":"5"}]},{"v":"I24","state":"waiting"}]},{"say":"I33 to I34: 2 + 3 = 5, so I34 goes to warehouse 3 at 5.","ops":[{"e":["I33","I34"],"state":"area-3"},{"panel":"dist","set":{"I34":"5"}},{"panel":"queue","list":[{"key":"I41","note":"2"},{"key":"I2","note":"3"},{"key":"I17","note":"4"},{"key":"I24","note":"4"},{"key":"I27","note":"5"},{"key":"I34","note":"5"}]},{"v":"I34","state":"waiting"}]},{"say":"Take I41 from the queue. Warehouse 3 reaches it in 2, and nothing reaches it sooner.","ops":[{"v":"I41","state":"current"},{"panel":"queue","list":[{"key":"I2","note":"3"},{"key":"I17","note":"4"},{"key":"I24","note":"4"},{"key":"I27","note":"5"},{"key":"I34","note":"5"}]},{"v":"I33","state":"component-3"},{"panel":"areas","groups":[["I1"],["I18"],["I42","I33","I41"]]}]},{"say":"I41 to I32: 2 + 4 = 6, so I32 goes to warehouse 3 at 6.","ops":[{"e":["I41","I32"],"state":"area-3"},{"panel":"dist","set":{"I32":"6"}},{"panel":"queue","list":[{"key":"I2","note":"3"},{"key":"I17","note":"4"},{"key":"I24","note":"4"},{"key":"I27","note":"5"},{"key":"I34","note":"5"},{"key":"I32","note":"6"}]},{"v":"I32","state":"waiting"}]},{"say":"I41 to I40: 2 + 2 = 4, so I40 goes to warehouse 3 at 4.","ops":[{"e":["I41","I40"],"state":"area-3"},{"panel":"dist","set":{"I40":"4"}},{"panel":"queue","list":[{"key":"I2","note":"3"},{"key":"I17","note":"4"},{"key":"I24","note":"4"},{"key":"I40","note":"4"},{"key":"I27","note":"5"},{"key":"I34","note":"5"},{"key":"I32","note":"6"}]},{"v":"I40","state":"waiting"}]},{"say":"Take I2 from the queue. Warehouse 1 reaches it in 3, and nothing reaches it sooner.","ops":[{"v":"I2","state":"current"},{"panel":"queue","list":[{"key":"I17","note":"4"},{"key":"I24","note":"4"},{"key":"I40","note":"4"},{"key":"I27","note":"5"},{"key":"I34","note":"5"},{"key":"I32","note":"6"}]},{"v":"I41","state":"component-3"},{"panel":"areas","groups":[["I1","I2"],["I18"],["I42","I33","I41"]]}]},{"say":"I2 to I3: 3 + 2 = 5, so I3 goes to warehouse 1 at 5.","ops":[{"e":["I2","I3"],"state":"area-1"},{"panel":"dist","set":{"I3":"5"}},{"panel":"queue","list":[{"key":"I17","note":"4"},{"key":"I24","note":"4"},{"key":"I40","note":"4"},{"key":"I3","note":"5"},{"key":"I27","note":"5"},{"key":"I34","note":"5"},{"key":"I32","note":"6"}]},{"v":"I3","state":"waiting"}]},{"say":"I2 to I11: 3 + 4 = 7, so I11 goes to warehouse 1 at 7.","ops":[{"e":["I2","I11"],"state":"area-1"},{"panel":"dist","set":{"I11":"7"}},{"panel":"queue","list":[{"key":"I17","note":"4"},{"key":"I24","note":"4"},{"key":"I40","note":"4"},{"key":"I3","note":"5"},{"key":"I27","note":"5"},{"key":"I34","note":"5"},{"key":"I32","note":"6"},{"key":"I11","note":"7"}]},{"v":"I11","state":"waiting"}]},{"say":"Take I17 from the queue. Warehouse 2 reaches it in 4, and nothing reaches it sooner.","ops":[{"v":"I17","state":"current"},{"panel":"queue","list":[{"key":"I24","note":"4"},{"key":"I40","note":"4"},{"key":"I3","note":"5"},{"key":"I27","note":"5"},{"key":"I34","note":"5"},{"key":"I32","note":"6"},{"key":"I11","note":"7"}]},{"v":"I2","state":"component-1"},{"panel":"areas","groups":[["I1","I2"],["I18","I17"],["I42","I33","I41"]]}]},{"say":"I17 to I8: 4 + 5 = 9, so I8 goes to warehouse 2 at 9.","ops":[{"e":["I17","I8"],"state":"area-2"},{"panel":"dist","set":{"I8":"9"}},{"panel":"queue","list":[{"key":"I24","note":"4"},{"key":"I40","note":"4"},{"key":"I3","note":"5"},{"key":"I27","note":"5"},{"key":"I34","note":"5"},{"key":"I32","note":"6"},{"key":"I11","note":"7"},{"key":"I8","note":"9"}]},{"v":"I8","state":"waiting"}]},{"say":"I17 to I16: 4 + 2 = 6, so I16 goes to warehouse 2 at 6.","ops":[{"e":["I17","I16"],"state":"area-2"},{"panel":"dist","set":{"I16":"6"}},{"panel":"queue","list":[{"key":"I24","note":"4"},{"key":"I40","note":"4"},{"key":"I3","note":"5"},{"key":"I27","note":"5"},{"key":"I34","note":"5"},{"key":"I16","note":"6"},{"key":"I32","note":"6"},{"key":"I11","note":"7"},{"key":"I8","note":"9"}]},{"v":"I16","state":"waiting"}]},{"say":"Take I24 from the queue. Warehouse 3 reaches it in 4, and nothing reaches it sooner.","ops":[{"v":"I24","state":"current"},{"panel":"queue","list":[{"key":"I40","note":"4"},{"key":"I3","note":"5"},{"key":"I27","note":"5"},{"key":"I34","note":"5"},{"key":"I16","note":"6"},{"key":"I32","note":"6"},{"key":"I11","note":"7"},{"key":"I8","note":"9"}]},{"v":"I17","state":"component-2"},{"panel":"areas","groups":[["I1","I2"],["I18","I17"],["I42","I33","I41","I24"]]}]},{"say":"I24 to I15: 4 + 4 = 8, so I15 goes to warehouse 3 at 8.","ops":[{"e":["I24","I15"],"state":"area-3"},{"panel":"dist","set":{"I15":"8"}},{"panel":"queue","list":[{"key":"I40","note":"4"},{"key":"I3","note":"5"},{"key":"I27","note":"5"},{"key":"I34","note":"5"},{"key":"I16","note":"6"},{"key":"I32","note":"6"},{"key":"I11","note":"7"},{"key":"I15","note":"8"},{"key":"I8","note":"9"}]},{"v":"I15","state":"waiting"}]},{"say":"I24 to I23: 4 + 5 = 9, so I23 goes to warehouse 3 at 9.","ops":[{"e":["I24","I23"],"state":"area-3"},{"panel":"dist","set":{"I23":"9"}},{"panel":"queue","list":[{"key":"I40","note":"4"},{"key":"I3","note":"5"},{"key":"I27","note":"5"},{"key":"I34","note":"5"},{"key":"I16","note":"6"},{"key":"I32","note":"6"},{"key":"I11","note":"7"},{"key":"I15","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"}]},{"v":"I23","state":"waiting"}]},{"say":"I24 to I25: 4 + 2 = 6, so I25 goes to warehouse 3 at 6.","ops":[{"e":["I24","I25"],"state":"area-3"},{"panel":"dist","set":{"I25":"6"}},{"panel":"queue","list":[{"key":"I40","note":"4"},{"key":"I3","note":"5"},{"key":"I27","note":"5"},{"key":"I34","note":"5"},{"key":"I16","note":"6"},{"key":"I25","note":"6"},{"key":"I32","note":"6"},{"key":"I11","note":"7"},{"key":"I15","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"}]},{"v":"I25","state":"waiting"}]},{"say":"Take I40 from the queue. Warehouse 3 reaches it in 4, and nothing reaches it sooner.","ops":[{"v":"I40","state":"current"},{"panel":"queue","list":[{"key":"I3","note":"5"},{"key":"I27","note":"5"},{"key":"I34","note":"5"},{"key":"I16","note":"6"},{"key":"I25","note":"6"},{"key":"I32","note":"6"},{"key":"I11","note":"7"},{"key":"I15","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"}]},{"v":"I24","state":"component-3"},{"panel":"areas","groups":[["I1","I2"],["I18","I17"],["I42","I33","I41","I24","I40"]]}]},{"say":"I40 to I39: 4 + 2 = 6, so I39 goes to warehouse 3 at 6.","ops":[{"e":["I40","I39"],"state":"area-3"},{"panel":"dist","set":{"I39":"6"}},{"panel":"queue","list":[{"key":"I3","note":"5"},{"key":"I27","note":"5"},{"key":"I34","note":"5"},{"key":"I16","note":"6"},{"key":"I25","note":"6"},{"key":"I32","note":"6"},{"key":"I39","note":"6"},{"key":"I11","note":"7"},{"key":"I15","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"}]},{"v":"I39","state":"waiting"}]},{"say":"Take I3 from the queue. Warehouse 1 reaches it in 5, and nothing reaches it sooner.","ops":[{"v":"I3","state":"current"},{"panel":"queue","list":[{"key":"I27","note":"5"},{"key":"I34","note":"5"},{"key":"I16","note":"6"},{"key":"I25","note":"6"},{"key":"I32","note":"6"},{"key":"I39","note":"6"},{"key":"I11","note":"7"},{"key":"I15","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"}]},{"v":"I40","state":"component-3"},{"panel":"areas","groups":[["I1","I2","I3"],["I18","I17"],["I42","I33","I41","I24","I40"]]}]},{"say":"I3 to I4: 5 + 3 = 8, so I4 goes to warehouse 1 at 8.","ops":[{"e":["I3","I4"],"state":"area-1"},{"panel":"dist","set":{"I4":"8"}},{"panel":"queue","list":[{"key":"I27","note":"5"},{"key":"I34","note":"5"},{"key":"I16","note":"6"},{"key":"I25","note":"6"},{"key":"I32","note":"6"},{"key":"I39","note":"6"},{"key":"I11","note":"7"},{"key":"I4","note":"8"},{"key":"I15","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"}]},{"v":"I4","state":"waiting"}]},{"say":"Take I27 from the queue. Warehouse 2 reaches it in 5, and nothing reaches it sooner.","ops":[{"v":"I27","state":"current"},{"panel":"queue","list":[{"key":"I34","note":"5"},{"key":"I16","note":"6"},{"key":"I25","note":"6"},{"key":"I32","note":"6"},{"key":"I39","note":"6"},{"key":"I11","note":"7"},{"key":"I4","note":"8"},{"key":"I15","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"}]},{"v":"I3","state":"component-1"},{"panel":"areas","groups":[["I1","I2","I3"],["I18","I17","I27"],["I42","I33","I41","I24","I40"]]}]},{"say":"I27 to I26: 5 + 5 = 10, so I26 goes to warehouse 2 at 10.","ops":[{"e":["I27","I26"],"state":"area-2"},{"panel":"dist","set":{"I26":"10"}},{"panel":"queue","list":[{"key":"I34","note":"5"},{"key":"I16","note":"6"},{"key":"I25","note":"6"},{"key":"I32","note":"6"},{"key":"I39","note":"6"},{"key":"I11","note":"7"},{"key":"I4","note":"8"},{"key":"I15","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"},{"key":"I26","note":"10"}]},{"v":"I26","state":"waiting"}]},{"say":"I27 to I36: 5 + 3 = 8, so I36 goes to warehouse 2 at 8.","ops":[{"e":["I27","I36"],"state":"area-2"},{"panel":"dist","set":{"I36":"8"}},{"panel":"queue","list":[{"key":"I34","note":"5"},{"key":"I16","note":"6"},{"key":"I25","note":"6"},{"key":"I32","note":"6"},{"key":"I39","note":"6"},{"key":"I11","note":"7"},{"key":"I4","note":"8"},{"key":"I36","note":"8"},{"key":"I15","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"},{"key":"I26","note":"10"}]},{"v":"I36","state":"waiting"}]},{"say":"Take I34 from the queue. Warehouse 3 reaches it in 5, and nothing reaches it sooner.","ops":[{"v":"I34","state":"current"},{"panel":"queue","list":[{"key":"I16","note":"6"},{"key":"I25","note":"6"},{"key":"I32","note":"6"},{"key":"I39","note":"6"},{"key":"I11","note":"7"},{"key":"I4","note":"8"},{"key":"I36","note":"8"},{"key":"I15","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"},{"key":"I26","note":"10"}]},{"v":"I27","state":"component-2"},{"panel":"areas","groups":[["I1","I2","I3"],["I18","I17","I27"],["I42","I33","I41","I24","I40","I34"]]}]},{"say":"I34 to I35: 5 + 5 = 10, so I35 goes to warehouse 3 at 10.","ops":[{"e":["I34","I35"],"state":"area-3"},{"panel":"dist","set":{"I35":"10"}},{"panel":"queue","list":[{"key":"I16","note":"6"},{"key":"I25","note":"6"},{"key":"I32","note":"6"},{"key":"I39","note":"6"},{"key":"I11","note":"7"},{"key":"I4","note":"8"},{"key":"I36","note":"8"},{"key":"I15","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"},{"key":"I26","note":"10"},{"key":"I35","note":"10"}]},{"v":"I35","state":"waiting"}]},{"say":"I34 to I43: 5 + 3 = 8, so I43 goes to warehouse 3 at 8.","ops":[{"e":["I34","I43"],"state":"area-3"},{"panel":"dist","set":{"I43":"8"}},{"panel":"queue","list":[{"key":"I16","note":"6"},{"key":"I25","note":"6"},{"key":"I32","note":"6"},{"key":"I39","note":"6"},{"key":"I11","note":"7"},{"key":"I4","note":"8"},{"key":"I36","note":"8"},{"key":"I15","note":"8"},{"key":"I43","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"},{"key":"I26","note":"10"},{"key":"I35","note":"10"}]},{"v":"I43","state":"waiting"}]},{"say":"Take I16 from the queue. Warehouse 2 reaches it in 6, and nothing reaches it sooner.","ops":[{"v":"I16","state":"current"},{"panel":"queue","list":[{"key":"I25","note":"6"},{"key":"I32","note":"6"},{"key":"I39","note":"6"},{"key":"I11","note":"7"},{"key":"I4","note":"8"},{"key":"I36","note":"8"},{"key":"I15","note":"8"},{"key":"I43","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"},{"key":"I26","note":"10"},{"key":"I35","note":"10"}]},{"v":"I34","state":"component-3"},{"panel":"areas","groups":[["I1","I2","I3"],["I18","I17","I27","I16"],["I42","I33","I41","I24","I40","I34"]]}]},{"say":"I16 to I15: 6 + 2 = 8, the same as from warehouse 3, and warehouse 2 is listed first, so I15 goes to warehouse 2 at 8.","ops":[{"e":["I16","I15"],"state":"area-2"},{"panel":"dist","set":{"I15":"8"}},{"panel":"queue","list":[{"key":"I25","note":"6"},{"key":"I32","note":"6"},{"key":"I39","note":"6"},{"key":"I11","note":"7"},{"key":"I4","note":"8"},{"key":"I15","note":"8"},{"key":"I36","note":"8"},{"key":"I43","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"},{"key":"I26","note":"10"},{"key":"I35","note":"10"}]},{"e":["I24","I15"],"state":"examined"}]},{"say":"I16 to I25: 6 + 2 = 8, not quicker than 6, so I25 stays with warehouse 3.","ops":[{"e":["I16","I25"],"state":"examined"}]},{"say":"Take I25 from the queue. Warehouse 3 reaches it in 6, and nothing reaches it sooner.","ops":[{"v":"I25","state":"current"},{"panel":"queue","list":[{"key":"I32","note":"6"},{"key":"I39","note":"6"},{"key":"I11","note":"7"},{"key":"I4","note":"8"},{"key":"I15","note":"8"},{"key":"I36","note":"8"},{"key":"I43","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"},{"key":"I26","note":"10"},{"key":"I35","note":"10"}]},{"v":"I16","state":"component-2"},{"panel":"areas","groups":[["I1","I2","I3"],["I18","I17","I27","I16"],["I42","I33","I41","I24","I40","I34","I25"]]}]},{"say":"I25 to I26: 6 + 4 = 10, the same as from warehouse 2, which is listed first, so I26 stays with warehouse 2.","ops":[{"e":["I25","I26"],"state":"examined"}]},{"say":"Take I32 from the queue. Warehouse 3 reaches it in 6, and nothing reaches it sooner.","ops":[{"v":"I32","state":"current"},{"panel":"queue","list":[{"key":"I39","note":"6"},{"key":"I11","note":"7"},{"key":"I4","note":"8"},{"key":"I15","note":"8"},{"key":"I36","note":"8"},{"key":"I43","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"},{"key":"I26","note":"10"},{"key":"I35","note":"10"}]},{"v":"I25","state":"component-3"},{"panel":"areas","groups":[["I1","I2","I3"],["I18","I17","I27","I16"],["I42","I33","I41","I24","I40","I34","I25","I32"]]}]},{"say":"I32 to I23: 6 + 5 = 11, not quicker than 9, so I23 stays with warehouse 3.","ops":[{"e":["I32","I23"],"state":"examined"}]},{"say":"Take I39 from the queue. Warehouse 3 reaches it in 6, and nothing reaches it sooner.","ops":[{"v":"I39","state":"current"},{"panel":"queue","list":[{"key":"I11","note":"7"},{"key":"I4","note":"8"},{"key":"I15","note":"8"},{"key":"I36","note":"8"},{"key":"I43","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"},{"key":"I26","note":"10"},{"key":"I35","note":"10"}]},{"v":"I32","state":"component-3"},{"panel":"areas","groups":[["I1","I2","I3"],["I18","I17","I27","I16"],["I42","I33","I41","I24","I40","I34","I25","I32","I39"]]}]},{"say":"I39 to I30: 6 + 3 = 9, so I30 goes to warehouse 3 at 9.","ops":[{"e":["I39","I30"],"state":"area-3"},{"panel":"dist","set":{"I30":"9"}},{"panel":"queue","list":[{"key":"I11","note":"7"},{"key":"I4","note":"8"},{"key":"I15","note":"8"},{"key":"I36","note":"8"},{"key":"I43","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"},{"key":"I30","note":"9"},{"key":"I26","note":"10"},{"key":"I35","note":"10"}]},{"v":"I30","state":"waiting"}]},{"say":"I39 to I38: 6 + 2 = 8, so I38 goes to warehouse 3 at 8.","ops":[{"e":["I39","I38"],"state":"area-3"},{"panel":"dist","set":{"I38":"8"}},{"panel":"queue","list":[{"key":"I11","note":"7"},{"key":"I4","note":"8"},{"key":"I15","note":"8"},{"key":"I36","note":"8"},{"key":"I43","note":"8"},{"key":"I38","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"},{"key":"I30","note":"9"},{"key":"I26","note":"10"},{"key":"I35","note":"10"}]},{"v":"I38","state":"waiting"}]},{"say":"Take I11 from the queue. Warehouse 1 reaches it in 7, and nothing reaches it sooner.","ops":[{"v":"I11","state":"current"},{"panel":"queue","list":[{"key":"I4","note":"8"},{"key":"I15","note":"8"},{"key":"I36","note":"8"},{"key":"I43","note":"8"},{"key":"I38","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"},{"key":"I30","note":"9"},{"key":"I26","note":"10"},{"key":"I35","note":"10"}]},{"v":"I39","state":"component-3"},{"panel":"areas","groups":[["I1","I2","I3","I11"],["I18","I17","I27","I16"],["I42","I33","I41","I24","I40","I34","I25","I32","I39"]]}]},{"say":"I11 to I10: 7 + 4 = 11, so I10 goes to warehouse 1 at 11.","ops":[{"e":["I11","I10"],"state":"area-1"},{"panel":"dist","set":{"I10":"11"}},{"panel":"queue","list":[{"key":"I4","note":"8"},{"key":"I15","note":"8"},{"key":"I36","note":"8"},{"key":"I43","note":"8"},{"key":"I38","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"},{"key":"I30","note":"9"},{"key":"I26","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"}]},{"v":"I10","state":"waiting"}]},{"say":"I11 to I20: 7 + 3 = 10, so I20 goes to warehouse 1 at 10.","ops":[{"e":["I11","I20"],"state":"area-1"},{"panel":"dist","set":{"I20":"10"}},{"panel":"queue","list":[{"key":"I4","note":"8"},{"key":"I15","note":"8"},{"key":"I36","note":"8"},{"key":"I43","note":"8"},{"key":"I38","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"},{"key":"I30","note":"9"},{"key":"I20","note":"10"},{"key":"I26","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"}]},{"v":"I20","state":"waiting"}]},{"say":"Take I4 from the queue. Warehouse 1 reaches it in 8, and nothing reaches it sooner.","ops":[{"v":"I4","state":"current"},{"panel":"queue","list":[{"key":"I15","note":"8"},{"key":"I36","note":"8"},{"key":"I43","note":"8"},{"key":"I38","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"},{"key":"I30","note":"9"},{"key":"I20","note":"10"},{"key":"I26","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"}]},{"v":"I11","state":"component-1"},{"panel":"areas","groups":[["I1","I2","I3","I11","I4"],["I18","I17","I27","I16"],["I42","I33","I41","I24","I40","I34","I25","I32","I39"]]}]},{"say":"I4 to I5: 8 + 2 = 10, so I5 goes to warehouse 1 at 10.","ops":[{"e":["I4","I5"],"state":"area-1"},{"panel":"dist","set":{"I5":"10"}},{"panel":"queue","list":[{"key":"I15","note":"8"},{"key":"I36","note":"8"},{"key":"I43","note":"8"},{"key":"I38","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"},{"key":"I30","note":"9"},{"key":"I5","note":"10"},{"key":"I20","note":"10"},{"key":"I26","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"}]},{"v":"I5","state":"waiting"}]},{"say":"I4 to I13: 8 + 2 = 10, so I13 goes to warehouse 1 at 10.","ops":[{"e":["I4","I13"],"state":"area-1"},{"panel":"dist","set":{"I13":"10"}},{"panel":"queue","list":[{"key":"I15","note":"8"},{"key":"I36","note":"8"},{"key":"I43","note":"8"},{"key":"I38","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"},{"key":"I30","note":"9"},{"key":"I5","note":"10"},{"key":"I13","note":"10"},{"key":"I20","note":"10"},{"key":"I26","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"}]},{"v":"I13","state":"waiting"}]},{"say":"Take I15 from the queue. Warehouse 2 reaches it in 8, and nothing reaches it sooner.","ops":[{"v":"I15","state":"current"},{"panel":"queue","list":[{"key":"I36","note":"8"},{"key":"I43","note":"8"},{"key":"I38","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"},{"key":"I30","note":"9"},{"key":"I5","note":"10"},{"key":"I13","note":"10"},{"key":"I20","note":"10"},{"key":"I26","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"}]},{"v":"I4","state":"component-1"},{"panel":"areas","groups":[["I1","I2","I3","I11","I4"],["I18","I17","I27","I16","I15"],["I42","I33","I41","I24","I40","I34","I25","I32","I39"]]}]},{"say":"I15 to I6: 8 + 4 = 12, so I6 goes to warehouse 2 at 12.","ops":[{"e":["I15","I6"],"state":"area-2"},{"panel":"dist","set":{"I6":"12"}},{"panel":"queue","list":[{"key":"I36","note":"8"},{"key":"I43","note":"8"},{"key":"I38","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"},{"key":"I30","note":"9"},{"key":"I5","note":"10"},{"key":"I13","note":"10"},{"key":"I20","note":"10"},{"key":"I26","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"},{"key":"I6","note":"12"}]},{"v":"I6","state":"waiting"}]},{"say":"I15 to I14: 8 + 2 = 10, so I14 goes to warehouse 2 at 10.","ops":[{"e":["I15","I14"],"state":"area-2"},{"panel":"dist","set":{"I14":"10"}},{"panel":"queue","list":[{"key":"I36","note":"8"},{"key":"I43","note":"8"},{"key":"I38","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"},{"key":"I30","note":"9"},{"key":"I5","note":"10"},{"key":"I13","note":"10"},{"key":"I20","note":"10"},{"key":"I14","note":"10"},{"key":"I26","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"},{"key":"I6","note":"12"}]},{"v":"I14","state":"waiting"}]},{"say":"Take I36 from the queue. Warehouse 2 reaches it in 8, and nothing reaches it sooner.","ops":[{"v":"I36","state":"current"},{"panel":"queue","list":[{"key":"I43","note":"8"},{"key":"I38","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"},{"key":"I30","note":"9"},{"key":"I5","note":"10"},{"key":"I13","note":"10"},{"key":"I20","note":"10"},{"key":"I14","note":"10"},{"key":"I26","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"},{"key":"I6","note":"12"}]},{"v":"I15","state":"component-2"},{"panel":"areas","groups":[["I1","I2","I3","I11","I4"],["I18","I17","I27","I16","I15","I36"],["I42","I33","I41","I24","I40","I34","I25","I32","I39"]]}]},{"say":"I36 to I45: 8 + 2 = 10, so I45 goes to warehouse 2 at 10.","ops":[{"e":["I36","I45"],"state":"area-2"},{"panel":"dist","set":{"I45":"10"}},{"panel":"queue","list":[{"key":"I43","note":"8"},{"key":"I38","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"},{"key":"I30","note":"9"},{"key":"I5","note":"10"},{"key":"I13","note":"10"},{"key":"I20","note":"10"},{"key":"I14","note":"10"},{"key":"I26","note":"10"},{"key":"I45","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"},{"key":"I6","note":"12"}]},{"v":"I45","state":"waiting"}]},{"say":"Take I43 from the queue. Warehouse 3 reaches it in 8, and nothing reaches it sooner. It has no unsettled neighbors.","ops":[{"v":"I43","state":"current"},{"panel":"queue","list":[{"key":"I38","note":"8"},{"key":"I8","note":"9"},{"key":"I23","note":"9"},{"key":"I30","note":"9"},{"key":"I5","note":"10"},{"key":"I13","note":"10"},{"key":"I20","note":"10"},{"key":"I14","note":"10"},{"key":"I26","note":"10"},{"key":"I45","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"},{"key":"I6","note":"12"}]},{"v":"I36","state":"component-2"},{"panel":"areas","groups":[["I1","I2","I3","I11","I4"],["I18","I17","I27","I16","I15","I36"],["I42","I33","I41","I24","I40","I34","I25","I32","I39","I43"]]}]},{"say":"Take I38 from the queue. Warehouse 3 reaches it in 8, and nothing reaches it sooner.","ops":[{"v":"I38","state":"current"},{"panel":"queue","list":[{"key":"I8","note":"9"},{"key":"I23","note":"9"},{"key":"I30","note":"9"},{"key":"I5","note":"10"},{"key":"I13","note":"10"},{"key":"I20","note":"10"},{"key":"I14","note":"10"},{"key":"I26","note":"10"},{"key":"I45","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"},{"key":"I6","note":"12"}]},{"v":"I43","state":"component-3"},{"panel":"areas","groups":[["I1","I2","I3","I11","I4"],["I18","I17","I27","I16","I15","I36"],["I42","I33","I41","I24","I40","I34","I25","I32","I39","I43","I38"]]}]},{"say":"I38 to I37: 8 + 3 = 11, so I37 goes to warehouse 3 at 11.","ops":[{"e":["I38","I37"],"state":"area-3"},{"panel":"dist","set":{"I37":"11"}},{"panel":"queue","list":[{"key":"I8","note":"9"},{"key":"I23","note":"9"},{"key":"I30","note":"9"},{"key":"I5","note":"10"},{"key":"I13","note":"10"},{"key":"I20","note":"10"},{"key":"I14","note":"10"},{"key":"I26","note":"10"},{"key":"I45","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"},{"key":"I37","note":"11"},{"key":"I6","note":"12"}]},{"v":"I37","state":"waiting"}]},{"say":"Take I8 from the queue. Warehouse 2 reaches it in 9, and nothing reaches it sooner.","ops":[{"v":"I8","state":"current"},{"panel":"queue","list":[{"key":"I23","note":"9"},{"key":"I30","note":"9"},{"key":"I5","note":"10"},{"key":"I13","note":"10"},{"key":"I20","note":"10"},{"key":"I14","note":"10"},{"key":"I26","note":"10"},{"key":"I45","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"},{"key":"I37","note":"11"},{"key":"I6","note":"12"}]},{"v":"I38","state":"component-3"},{"panel":"areas","groups":[["I1","I2","I3","I11","I4"],["I18","I17","I27","I16","I15","I36","I8"],["I42","I33","I41","I24","I40","I34","I25","I32","I39","I43","I38"]]}]},{"say":"I8 to I9: 9 + 4 = 13, so I9 goes to warehouse 2 at 13.","ops":[{"e":["I8","I9"],"state":"area-2"},{"panel":"dist","set":{"I9":"13"}},{"panel":"queue","list":[{"key":"I23","note":"9"},{"key":"I30","note":"9"},{"key":"I5","note":"10"},{"key":"I13","note":"10"},{"key":"I20","note":"10"},{"key":"I14","note":"10"},{"key":"I26","note":"10"},{"key":"I45","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"},{"key":"I37","note":"11"},{"key":"I6","note":"12"},{"key":"I9","note":"13"}]},{"v":"I9","state":"waiting"}]},{"say":"Take I23 from the queue. Warehouse 3 reaches it in 9, and nothing reaches it sooner.","ops":[{"v":"I23","state":"current"},{"panel":"queue","list":[{"key":"I30","note":"9"},{"key":"I5","note":"10"},{"key":"I13","note":"10"},{"key":"I20","note":"10"},{"key":"I14","note":"10"},{"key":"I26","note":"10"},{"key":"I45","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"},{"key":"I37","note":"11"},{"key":"I6","note":"12"},{"key":"I9","note":"13"}]},{"v":"I8","state":"component-2"},{"panel":"areas","groups":[["I1","I2","I3","I11","I4"],["I18","I17","I27","I16","I15","I36","I8"],["I42","I33","I41","I24","I40","I34","I25","I32","I39","I43","I38","I23"]]}]},{"say":"I23 to I14: 9 + 3 = 12, not quicker than 10, so I14 stays with warehouse 2.","ops":[{"e":["I23","I14"],"state":"examined"}]},{"say":"I23 to I22: 9 + 5 = 14, so I22 goes to warehouse 3 at 14.","ops":[{"e":["I23","I22"],"state":"area-3"},{"panel":"dist","set":{"I22":"14"}},{"panel":"queue","list":[{"key":"I30","note":"9"},{"key":"I5","note":"10"},{"key":"I13","note":"10"},{"key":"I20","note":"10"},{"key":"I14","note":"10"},{"key":"I26","note":"10"},{"key":"I45","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"},{"key":"I37","note":"11"},{"key":"I6","note":"12"},{"key":"I9","note":"13"},{"key":"I22","note":"14"}]},{"v":"I22","state":"waiting"}]},{"say":"Take I30 from the queue. Warehouse 3 reaches it in 9, and nothing reaches it sooner.","ops":[{"v":"I30","state":"current"},{"panel":"queue","list":[{"key":"I5","note":"10"},{"key":"I13","note":"10"},{"key":"I20","note":"10"},{"key":"I14","note":"10"},{"key":"I26","note":"10"},{"key":"I45","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"},{"key":"I37","note":"11"},{"key":"I6","note":"12"},{"key":"I9","note":"13"},{"key":"I22","note":"14"}]},{"v":"I23","state":"component-3"},{"panel":"areas","groups":[["I1","I2","I3","I11","I4"],["I18","I17","I27","I16","I15","I36","I8"],["I42","I33","I41","I24","I40","I34","I25","I32","I39","I43","I38","I23","I30"]]}]},{"say":"I30 to I21: 9 + 3 = 12, so I21 goes to warehouse 3 at 12.","ops":[{"e":["I30","I21"],"state":"area-3"},{"panel":"dist","set":{"I21":"12"}},{"panel":"queue","list":[{"key":"I5","note":"10"},{"key":"I13","note":"10"},{"key":"I20","note":"10"},{"key":"I14","note":"10"},{"key":"I26","note":"10"},{"key":"I45","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"},{"key":"I37","note":"11"},{"key":"I6","note":"12"},{"key":"I21","note":"12"},{"key":"I9","note":"13"},{"key":"I22","note":"14"}]},{"v":"I21","state":"waiting"}]},{"say":"I30 to I31: 9 + 4 = 13, so I31 goes to warehouse 3 at 13.","ops":[{"e":["I30","I31"],"state":"area-3"},{"panel":"dist","set":{"I31":"13"}},{"panel":"queue","list":[{"key":"I5","note":"10"},{"key":"I13","note":"10"},{"key":"I20","note":"10"},{"key":"I14","note":"10"},{"key":"I26","note":"10"},{"key":"I45","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"},{"key":"I37","note":"11"},{"key":"I6","note":"12"},{"key":"I21","note":"12"},{"key":"I9","note":"13"},{"key":"I31","note":"13"},{"key":"I22","note":"14"}]},{"v":"I31","state":"waiting"}]},{"say":"Take I5 from the queue. Warehouse 1 reaches it in 10, and nothing reaches it sooner.","ops":[{"v":"I5","state":"current"},{"panel":"queue","list":[{"key":"I13","note":"10"},{"key":"I20","note":"10"},{"key":"I14","note":"10"},{"key":"I26","note":"10"},{"key":"I45","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"},{"key":"I37","note":"11"},{"key":"I6","note":"12"},{"key":"I21","note":"12"},{"key":"I9","note":"13"},{"key":"I31","note":"13"},{"key":"I22","note":"14"}]},{"v":"I30","state":"component-3"},{"panel":"areas","groups":[["I1","I2","I3","I11","I4","I5"],["I18","I17","I27","I16","I15","I36","I8"],["I42","I33","I41","I24","I40","I34","I25","I32","I39","I43","I38","I23","I30"]]}]},{"say":"I5 to I6: 10 + 5 = 15, not quicker than 12, so I6 stays with warehouse 2.","ops":[{"e":["I5","I6"],"state":"examined"}]},{"say":"I5 to I14: 10 + 5 = 15, not quicker than 10, so I14 stays with warehouse 2.","ops":[{"e":["I5","I14"],"state":"examined"}]},{"say":"Take I13 from the queue. Warehouse 1 reaches it in 10, and nothing reaches it sooner.","ops":[{"v":"I13","state":"current"},{"panel":"queue","list":[{"key":"I20","note":"10"},{"key":"I14","note":"10"},{"key":"I26","note":"10"},{"key":"I45","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"},{"key":"I37","note":"11"},{"key":"I6","note":"12"},{"key":"I21","note":"12"},{"key":"I9","note":"13"},{"key":"I31","note":"13"},{"key":"I22","note":"14"}]},{"v":"I5","state":"component-1"},{"panel":"areas","groups":[["I1","I2","I3","I11","I4","I5","I13"],["I18","I17","I27","I16","I15","I36","I8"],["I42","I33","I41","I24","I40","I34","I25","I32","I39","I43","I38","I23","I30"]]}]},{"say":"I13 to I12: 10 + 5 = 15, so I12 goes to warehouse 1 at 15.","ops":[{"e":["I13","I12"],"state":"area-1"},{"panel":"dist","set":{"I12":"15"}},{"panel":"queue","list":[{"key":"I20","note":"10"},{"key":"I14","note":"10"},{"key":"I26","note":"10"},{"key":"I45","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"},{"key":"I37","note":"11"},{"key":"I6","note":"12"},{"key":"I21","note":"12"},{"key":"I9","note":"13"},{"key":"I31","note":"13"},{"key":"I22","note":"14"},{"key":"I12","note":"15"}]},{"v":"I12","state":"waiting"}]},{"say":"I13 to I22: 10 + 3 = 13, quicker than 14 from warehouse 3, so I22 goes to warehouse 1 at 13.","ops":[{"e":["I13","I22"],"state":"area-1"},{"panel":"dist","set":{"I22":"13"}},{"panel":"queue","list":[{"key":"I20","note":"10"},{"key":"I14","note":"10"},{"key":"I26","note":"10"},{"key":"I45","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"},{"key":"I37","note":"11"},{"key":"I6","note":"12"},{"key":"I21","note":"12"},{"key":"I22","note":"13"},{"key":"I9","note":"13"},{"key":"I31","note":"13"},{"key":"I12","note":"15"}]},{"e":["I23","I22"],"state":"examined"}]},{"say":"Take I20 from the queue. Warehouse 1 reaches it in 10, and nothing reaches it sooner.","ops":[{"v":"I20","state":"current"},{"panel":"queue","list":[{"key":"I14","note":"10"},{"key":"I26","note":"10"},{"key":"I45","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"},{"key":"I37","note":"11"},{"key":"I6","note":"12"},{"key":"I21","note":"12"},{"key":"I22","note":"13"},{"key":"I9","note":"13"},{"key":"I31","note":"13"},{"key":"I12","note":"15"}]},{"v":"I13","state":"component-1"},{"panel":"areas","groups":[["I1","I2","I3","I11","I4","I5","I13","I20"],["I18","I17","I27","I16","I15","I36","I8"],["I42","I33","I41","I24","I40","I34","I25","I32","I39","I43","I38","I23","I30"]]}]},{"say":"I20 to I19: 10 + 3 = 13, so I19 goes to warehouse 1 at 13.","ops":[{"e":["I20","I19"],"state":"area-1"},{"panel":"dist","set":{"I19":"13"}},{"panel":"queue","list":[{"key":"I14","note":"10"},{"key":"I26","note":"10"},{"key":"I45","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"},{"key":"I37","note":"11"},{"key":"I6","note":"12"},{"key":"I21","note":"12"},{"key":"I22","note":"13"},{"key":"I19","note":"13"},{"key":"I9","note":"13"},{"key":"I31","note":"13"},{"key":"I12","note":"15"}]},{"v":"I19","state":"waiting"}]},{"say":"I20 to I21: 10 + 2 = 12, the same as from warehouse 3, and warehouse 1 is listed first, so I21 goes to warehouse 1 at 12.","ops":[{"e":["I20","I21"],"state":"area-1"},{"panel":"dist","set":{"I21":"12"}},{"panel":"queue","list":[{"key":"I14","note":"10"},{"key":"I26","note":"10"},{"key":"I45","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"},{"key":"I37","note":"11"},{"key":"I21","note":"12"},{"key":"I6","note":"12"},{"key":"I22","note":"13"},{"key":"I19","note":"13"},{"key":"I9","note":"13"},{"key":"I31","note":"13"},{"key":"I12","note":"15"}]},{"e":["I30","I21"],"state":"examined"}]},{"say":"I20 to I29: 10 + 3 = 13, so I29 goes to warehouse 1 at 13.","ops":[{"e":["I20","I29"],"state":"area-1"},{"panel":"dist","set":{"I29":"13"}},{"panel":"queue","list":[{"key":"I14","note":"10"},{"key":"I26","note":"10"},{"key":"I45","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"},{"key":"I37","note":"11"},{"key":"I21","note":"12"},{"key":"I6","note":"12"},{"key":"I22","note":"13"},{"key":"I19","note":"13"},{"key":"I29","note":"13"},{"key":"I9","note":"13"},{"key":"I31","note":"13"},{"key":"I12","note":"15"}]},{"v":"I29","state":"waiting"}]},{"say":"Take I14 from the queue. Warehouse 2 reaches it in 10, and nothing reaches it sooner. It has no unsettled neighbors.","ops":[{"v":"I14","state":"current"},{"panel":"queue","list":[{"key":"I26","note":"10"},{"key":"I45","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"},{"key":"I37","note":"11"},{"key":"I21","note":"12"},{"key":"I6","note":"12"},{"key":"I22","note":"13"},{"key":"I19","note":"13"},{"key":"I29","note":"13"},{"key":"I9","note":"13"},{"key":"I31","note":"13"},{"key":"I12","note":"15"}]},{"v":"I20","state":"component-1"},{"panel":"areas","groups":[["I1","I2","I3","I11","I4","I5","I13","I20"],["I18","I17","I27","I16","I15","I36","I8","I14"],["I42","I33","I41","I24","I40","I34","I25","I32","I39","I43","I38","I23","I30"]]}]},{"say":"Take I26 from the queue. Warehouse 2 reaches it in 10, and nothing reaches it sooner. It has no unsettled neighbors.","ops":[{"v":"I26","state":"current"},{"panel":"queue","list":[{"key":"I45","note":"10"},{"key":"I35","note":"10"},{"key":"I10","note":"11"},{"key":"I37","note":"11"},{"key":"I21","note":"12"},{"key":"I6","note":"12"},{"key":"I22","note":"13"},{"key":"I19","note":"13"},{"key":"I29","note":"13"},{"key":"I9","note":"13"},{"key":"I31","note":"13"},{"key":"I12","note":"15"}]},{"v":"I14","state":"component-2"},{"panel":"areas","groups":[["I1","I2","I3","I11","I4","I5","I13","I20"],["I18","I17","I27","I16","I15","I36","I8","I14","I26"],["I42","I33","I41","I24","I40","I34","I25","I32","I39","I43","I38","I23","I30"]]}]},{"say":"Take I45 from the queue. Warehouse 2 reaches it in 10, and nothing reaches it sooner.","ops":[{"v":"I45","state":"current"},{"panel":"queue","list":[{"key":"I35","note":"10"},{"key":"I10","note":"11"},{"key":"I37","note":"11"},{"key":"I21","note":"12"},{"key":"I6","note":"12"},{"key":"I22","note":"13"},{"key":"I19","note":"13"},{"key":"I29","note":"13"},{"key":"I9","note":"13"},{"key":"I31","note":"13"},{"key":"I12","note":"15"}]},{"v":"I26","state":"component-2"},{"panel":"areas","groups":[["I1","I2","I3","I11","I4","I5","I13","I20"],["I18","I17","I27","I16","I15","I36","I8","I14","I26","I45"],["I42","I33","I41","I24","I40","I34","I25","I32","I39","I43","I38","I23","I30"]]}]},{"say":"I45 to I44: 10 + 3 = 13, so I44 goes to warehouse 2 at 13.","ops":[{"e":["I45","I44"],"state":"area-2"},{"panel":"dist","set":{"I44":"13"}},{"panel":"queue","list":[{"key":"I35","note":"10"},{"key":"I10","note":"11"},{"key":"I37","note":"11"},{"key":"I21","note":"12"},{"key":"I6","note":"12"},{"key":"I22","note":"13"},{"key":"I19","note":"13"},{"key":"I29","note":"13"},{"key":"I9","note":"13"},{"key":"I44","note":"13"},{"key":"I31","note":"13"},{"key":"I12","note":"15"}]},{"v":"I44","state":"waiting"}]},{"say":"Take I35 from the queue. Warehouse 3 reaches it in 10, and nothing reaches it sooner. It has no unsettled neighbors.","ops":[{"v":"I35","state":"current"},{"panel":"queue","list":[{"key":"I10","note":"11"},{"key":"I37","note":"11"},{"key":"I21","note":"12"},{"key":"I6","note":"12"},{"key":"I22","note":"13"},{"key":"I19","note":"13"},{"key":"I29","note":"13"},{"key":"I9","note":"13"},{"key":"I44","note":"13"},{"key":"I31","note":"13"},{"key":"I12","note":"15"}]},{"v":"I45","state":"component-2"},{"panel":"areas","groups":[["I1","I2","I3","I11","I4","I5","I13","I20"],["I18","I17","I27","I16","I15","I36","I8","I14","I26","I45"],["I42","I33","I41","I24","I40","I34","I25","I32","I39","I43","I38","I23","I30","I35"]]}]},{"say":"Take I10 from the queue. Warehouse 1 reaches it in 11, and nothing reaches it sooner. It has no unsettled neighbors.","ops":[{"v":"I10","state":"current"},{"panel":"queue","list":[{"key":"I37","note":"11"},{"key":"I21","note":"12"},{"key":"I6","note":"12"},{"key":"I22","note":"13"},{"key":"I19","note":"13"},{"key":"I29","note":"13"},{"key":"I9","note":"13"},{"key":"I44","note":"13"},{"key":"I31","note":"13"},{"key":"I12","note":"15"}]},{"v":"I35","state":"component-3"},{"panel":"areas","groups":[["I1","I2","I3","I11","I4","I5","I13","I20","I10"],["I18","I17","I27","I16","I15","I36","I8","I14","I26","I45"],["I42","I33","I41","I24","I40","I34","I25","I32","I39","I43","I38","I23","I30","I35"]]}]},{"say":"Take I37 from the queue. Warehouse 3 reaches it in 11, and nothing reaches it sooner.","ops":[{"v":"I37","state":"current"},{"panel":"queue","list":[{"key":"I21","note":"12"},{"key":"I6","note":"12"},{"key":"I22","note":"13"},{"key":"I19","note":"13"},{"key":"I29","note":"13"},{"key":"I9","note":"13"},{"key":"I44","note":"13"},{"key":"I31","note":"13"},{"key":"I12","note":"15"}]},{"v":"I10","state":"component-1"},{"panel":"areas","groups":[["I1","I2","I3","I11","I4","I5","I13","I20","I10"],["I18","I17","I27","I16","I15","I36","I8","I14","I26","I45"],["I42","I33","I41","I24","I40","I34","I25","I32","I39","I43","I38","I23","I30","I35","I37"]]}]},{"say":"I37 to I28: 11 + 4 = 15, so I28 goes to warehouse 3 at 15.","ops":[{"e":["I37","I28"],"state":"area-3"},{"panel":"dist","set":{"I28":"15"}},{"panel":"queue","list":[{"key":"I21","note":"12"},{"key":"I6","note":"12"},{"key":"I22","note":"13"},{"key":"I19","note":"13"},{"key":"I29","note":"13"},{"key":"I9","note":"13"},{"key":"I44","note":"13"},{"key":"I31","note":"13"},{"key":"I12","note":"15"},{"key":"I28","note":"15"}]},{"v":"I28","state":"waiting"}]},{"say":"Take I21 from the queue. Warehouse 1 reaches it in 12, and nothing reaches it sooner.","ops":[{"v":"I21","state":"current"},{"panel":"queue","list":[{"key":"I6","note":"12"},{"key":"I22","note":"13"},{"key":"I19","note":"13"},{"key":"I29","note":"13"},{"key":"I9","note":"13"},{"key":"I44","note":"13"},{"key":"I31","note":"13"},{"key":"I12","note":"15"},{"key":"I28","note":"15"}]},{"v":"I37","state":"component-3"},{"panel":"areas","groups":[["I1","I2","I3","I11","I4","I5","I13","I20","I10","I21"],["I18","I17","I27","I16","I15","I36","I8","I14","I26","I45"],["I42","I33","I41","I24","I40","I34","I25","I32","I39","I43","I38","I23","I30","I35","I37"]]}]},{"say":"I21 to I12: 12 + 2 = 14, quicker than 15 from warehouse 1, so I12 goes to warehouse 1 at 14.","ops":[{"e":["I21","I12"],"state":"area-1"},{"panel":"dist","set":{"I12":"14"}},{"panel":"queue","list":[{"key":"I6","note":"12"},{"key":"I22","note":"13"},{"key":"I19","note":"13"},{"key":"I29","note":"13"},{"key":"I9","note":"13"},{"key":"I44","note":"13"},{"key":"I31","note":"13"},{"key":"I12","note":"14"},{"key":"I28","note":"15"}]},{"e":["I13","I12"],"state":"examined"}]},{"say":"I21 to I22: 12 + 3 = 15, not quicker than 13, so I22 stays with warehouse 1.","ops":[{"e":["I21","I22"],"state":"examined"}]},{"say":"Take I6 from the queue. Warehouse 2 reaches it in 12, and nothing reaches it sooner.","ops":[{"v":"I6","state":"current"},{"panel":"queue","list":[{"key":"I22","note":"13"},{"key":"I19","note":"13"},{"key":"I29","note":"13"},{"key":"I9","note":"13"},{"key":"I44","note":"13"},{"key":"I31","note":"13"},{"key":"I12","note":"14"},{"key":"I28","note":"15"}]},{"v":"I21","state":"component-1"},{"panel":"areas","groups":[["I1","I2","I3","I11","I4","I5","I13","I20","I10","I21"],["I18","I17","I27","I16","I15","I36","I8","I14","I26","I45","I6"],["I42","I33","I41","I24","I40","I34","I25","I32","I39","I43","I38","I23","I30","I35","I37"]]}]},{"say":"I6 to I7: 12 + 4 = 16, so I7 goes to warehouse 2 at 16.","ops":[{"e":["I6","I7"],"state":"area-2"},{"panel":"dist","set":{"I7":"16"}},{"panel":"queue","list":[{"key":"I22","note":"13"},{"key":"I19","note":"13"},{"key":"I29","note":"13"},{"key":"I9","note":"13"},{"key":"I44","note":"13"},{"key":"I31","note":"13"},{"key":"I12","note":"14"},{"key":"I28","note":"15"},{"key":"I7","note":"16"}]},{"v":"I7","state":"waiting"}]},{"say":"Take I22 from the queue. Warehouse 1 reaches it in 13, and nothing reaches it sooner.","ops":[{"v":"I22","state":"current"},{"panel":"queue","list":[{"key":"I19","note":"13"},{"key":"I29","note":"13"},{"key":"I9","note":"13"},{"key":"I44","note":"13"},{"key":"I31","note":"13"},{"key":"I12","note":"14"},{"key":"I28","note":"15"},{"key":"I7","note":"16"}]},{"v":"I6","state":"component-2"},{"panel":"areas","groups":[["I1","I2","I3","I11","I4","I5","I13","I20","I10","I21","I22"],["I18","I17","I27","I16","I15","I36","I8","I14","I26","I45","I6"],["I42","I33","I41","I24","I40","I34","I25","I32","I39","I43","I38","I23","I30","I35","I37"]]}]},{"say":"I22 to I31: 13 + 2 = 15, not quicker than 13, so I31 stays with warehouse 3.","ops":[{"e":["I22","I31"],"state":"examined"}]},{"say":"Take I19 from the queue. Warehouse 1 reaches it in 13, and nothing reaches it sooner. It has no unsettled neighbors.","ops":[{"v":"I19","state":"current"},{"panel":"queue","list":[{"key":"I29","note":"13"},{"key":"I9","note":"13"},{"key":"I44","note":"13"},{"key":"I31","note":"13"},{"key":"I12","note":"14"},{"key":"I28","note":"15"},{"key":"I7","note":"16"}]},{"v":"I22","state":"component-1"},{"panel":"areas","groups":[["I1","I2","I3","I11","I4","I5","I13","I20","I10","I21","I22","I19"],["I18","I17","I27","I16","I15","I36","I8","I14","I26","I45","I6"],["I42","I33","I41","I24","I40","I34","I25","I32","I39","I43","I38","I23","I30","I35","I37"]]}]},{"say":"Take I29 from the queue. Warehouse 1 reaches it in 13, and nothing reaches it sooner. It has no unsettled neighbors.","ops":[{"v":"I29","state":"current"},{"panel":"queue","list":[{"key":"I9","note":"13"},{"key":"I44","note":"13"},{"key":"I31","note":"13"},{"key":"I12","note":"14"},{"key":"I28","note":"15"},{"key":"I7","note":"16"}]},{"v":"I19","state":"component-1"},{"panel":"areas","groups":[["I1","I2","I3","I11","I4","I5","I13","I20","I10","I21","I22","I19","I29"],["I18","I17","I27","I16","I15","I36","I8","I14","I26","I45","I6"],["I42","I33","I41","I24","I40","I34","I25","I32","I39","I43","I38","I23","I30","I35","I37"]]}]},{"say":"Take I9 from the queue. Warehouse 2 reaches it in 13, and nothing reaches it sooner. It has no unsettled neighbors.","ops":[{"v":"I9","state":"current"},{"panel":"queue","list":[{"key":"I44","note":"13"},{"key":"I31","note":"13"},{"key":"I12","note":"14"},{"key":"I28","note":"15"},{"key":"I7","note":"16"}]},{"v":"I29","state":"component-1"},{"panel":"areas","groups":[["I1","I2","I3","I11","I4","I5","I13","I20","I10","I21","I22","I19","I29"],["I18","I17","I27","I16","I15","I36","I8","I14","I26","I45","I6","I9"],["I42","I33","I41","I24","I40","I34","I25","I32","I39","I43","I38","I23","I30","I35","I37"]]}]},{"say":"Take I44 from the queue. Warehouse 2 reaches it in 13, and nothing reaches it sooner. It has no unsettled neighbors.","ops":[{"v":"I44","state":"current"},{"panel":"queue","list":[{"key":"I31","note":"13"},{"key":"I12","note":"14"},{"key":"I28","note":"15"},{"key":"I7","note":"16"}]},{"v":"I9","state":"component-2"},{"panel":"areas","groups":[["I1","I2","I3","I11","I4","I5","I13","I20","I10","I21","I22","I19","I29"],["I18","I17","I27","I16","I15","I36","I8","I14","I26","I45","I6","I9","I44"],["I42","I33","I41","I24","I40","I34","I25","I32","I39","I43","I38","I23","I30","I35","I37"]]}]},{"say":"Take I31 from the queue. Warehouse 3 reaches it in 13, and nothing reaches it sooner. It has no unsettled neighbors.","ops":[{"v":"I31","state":"current"},{"panel":"queue","list":[{"key":"I12","note":"14"},{"key":"I28","note":"15"},{"key":"I7","note":"16"}]},{"v":"I44","state":"component-2"},{"panel":"areas","groups":[["I1","I2","I3","I11","I4","I5","I13","I20","I10","I21","I22","I19","I29"],["I18","I17","I27","I16","I15","I36","I8","I14","I26","I45","I6","I9","I44"],["I42","I33","I41","I24","I40","I34","I25","I32","I39","I43","I38","I23","I30","I35","I37","I31"]]}]},{"say":"Take I12 from the queue. Warehouse 1 reaches it in 14, and nothing reaches it sooner. It has no unsettled neighbors.","ops":[{"v":"I12","state":"current"},{"panel":"queue","list":[{"key":"I28","note":"15"},{"key":"I7","note":"16"}]},{"v":"I31","state":"component-3"},{"panel":"areas","groups":[["I1","I2","I3","I11","I4","I5","I13","I20","I10","I21","I22","I19","I29","I12"],["I18","I17","I27","I16","I15","I36","I8","I14","I26","I45","I6","I9","I44"],["I42","I33","I41","I24","I40","I34","I25","I32","I39","I43","I38","I23","I30","I35","I37","I31"]]}]},{"say":"Take I28 from the queue. Warehouse 3 reaches it in 15, and nothing reaches it sooner. It has no unsettled neighbors.","ops":[{"v":"I28","state":"current"},{"panel":"queue","list":[{"key":"I7","note":"16"}]},{"v":"I12","state":"component-1"},{"panel":"areas","groups":[["I1","I2","I3","I11","I4","I5","I13","I20","I10","I21","I22","I19","I29","I12"],["I18","I17","I27","I16","I15","I36","I8","I14","I26","I45","I6","I9","I44"],["I42","I33","I41","I24","I40","I34","I25","I32","I39","I43","I38","I23","I30","I35","I37","I31","I28"]]}]},{"say":"Take I7 from the queue. Warehouse 2 reaches it in 16, and nothing reaches it sooner. It has no unsettled neighbors.","ops":[{"v":"I7","state":"current"},{"panel":"queue","list":[]},{"v":"I28","state":"component-3"},{"panel":"areas","groups":[["I1","I2","I3","I11","I4","I5","I13","I20","I10","I21","I22","I19","I29","I12"],["I18","I17","I27","I16","I15","I36","I8","I14","I26","I45","I6","I9","I44","I7"],["I42","I33","I41","I24","I40","I34","I25","I32","I39","I43","I38","I23","I30","I35","I37","I31","I28"]]}]},{"say":"Done. Every place has its nearest warehouse. One search settled 45 places. path.Dijkstra from each warehouse in turn would settle 135 between them.","ops":[{"panel":"areas","groups":[["I1","I2","I3","I11","I4","I5","I13","I20","I10","I21","I22","I19","I29","I12"],["I18","I17","I27","I16","I15","I36","I8","I14","I26","I45","I6","I9","I44","I7"],["I42","I33","I41","I24","I40","I34","I25","I32","I39","I43","I38","I23","I30","I35","I37","I31","I28"]]},{"v":"I7","state":"component-2"}]}],"traceNote":"","verification":"The steps come from a step-by-step copy of the algorithm. Its result is checked against gograph's on every start.","snippet":"nearest, err := path.DijkstraMultiSource(g, \"I1\", \"I18\", \"I42\")\nif err != nil {\n\treturn err\n}\nfor _, v := range g.GetAllVertices() {\n\tfrom, ok := nearest.Source(v.Label())\n\tif !ok {\n\t\tcontinue\n\t}\n\tminutes, _ := nearest.Distance(v.Label())\n\tfmt.Println(v.Label(), from.Label(), minutes)\n}"}
