Generate a python program that has the following intention:

The intention of the program is to find the shortest path between two nodes in a graph, using NAME_1's algorithm with a Fibonacci heap. The program starts by initializing a heap containing nodes and their distances from the start node. It then repeatedly finds the node with the minimum distance and its successors, and updates the heap with their distances. This process continues until the destination node is found. The function get is used to lookup a node in the heap, while insert_or_update is used to update the heap with a new node. Make sure your entire response is wrapped in JSON format.
user