  myDiagram.lastInput = e;
          // should be running in a transaction already
          part.mouseDrop(e, part);
          return;
        }
      }
      // didn't find anything to drop onto
    }

    // *****************************
    // Second, set up a GoJS Diagram
    // *****************************

    const myDiagram = new go.Diagram('myDiagramDiv', {
      layout: new go.TreeLayout(),
      'undoManager.isEnabled': true
    });

    // define a Node template
    myDiagram.nodeTemplate = ne