// --------------------------------------------------
  public void printDistanceTable() {
    myGUI.print("Current state for router " + myID + " at time " + sim.getClocktime() + " \n\n");

    myGUI.print("Distancetable: \n");

    for (int i = 0; i < RouterSimulator.NUM_NODES; i++) {
      myGUI.print("\t" + i);
    }

    myGUI.print("\n");

    for (int i = 0; i < 12 * (1 + RouterSimulator.NUM_NODES); i++) {
      myGUI.print("-");
    }
    myGUI.print("\n");

    for (int i = 0; i < RouterSimulator.NUM_NODES; i++) {
      if (i != myID) {
        myGUI.print("" + i);
        for (int j = 0; j < RouterSimulator.NUM_NODES; j++) {
          myGUI.print("\t" + neighbourVectors[i][j]);
        }
        myGUI.print("\n");
      }
    }

    myGUI.print("\n");

    myGUI.println("Our distance vector and routes:");

    myGUI.print("dst");
    for (int i = 0; i < RouterSimulator.NUM_NODES; i++) {
      myGUI.print("\t" + i);
    }

    myGUI.print("\n");

    for (int i = 0; i < 12 * (1 + RouterSimulator.NUM_NODES); i++) {
      myGUI.print("-");
    }
    myGUI.print("\n");

    myGUI.print("cost");
    for (int i = 0; i < RouterSimulator.NUM_NODES; i++) {
      myGUI.print("\t" + costs[i]);
    }

    myGUI.print("\n");
    myGUI.print("route");
    for (int i = 0; i < RouterSimulator.NUM_NODES; i++) {
      myGUI.print("\t" + routes[i]);
    }

    myGUI.print("\n");
    myGUI.print("\n");
    myGUI.print("\n");
  }