export default [
  {
    position: { x: 60, y: 280 },
    size: { width: 90, height: 80 },
    attrs: {
      image: {
        "xlink:href": require("@/assets/img/visisvg/circle.svg")
      },
      label: { text: "contourTask1" }
    },
    shape: "template-node",
    data: {
      nodeName: "contourTask1",
      templateName: "contourTask1",
      templateImage: "zvinjodocker/contous_task1:20211014",
      templateCommand: {},
      templateArgs: {},
      algoparaInput: { userInput: [], getInput: [] },
      algoparaOutput: [],
      algoparaInputargu: { userInput: [], getInput: [] },
      algonodeSource: [],
      inputsparameters: [],
      inputsartifacts: [],
      argumentsparameters: [],
      argumentsartifacts: [],
      outputsparameters: [],
      outputsartifacts: [
        {
          paraname: "thresh",
          paradesc: "",
          paratype: "",
          valuefrom: "/myapps/thresh1.png"
        },
        {
          paraname: "contours",
          paradesc: "",
          paratype: "",
          valuefrom: "/myapps/contours.png"
        }
      ],
      sourcedatalist: [],
      sourceartilist: [],
      inputnodefilemap: [], //引用输入节点的   文件列表，包含文件名和url
      inputnodefilevalue: [] //用户选择的输入节点的文件，存储文件url,后端调用
    },
    ports: {
      groups: {
        in: {
          position: "left",
          attrs: {
            circle: {
              r: 2.5,
              magnet: true,
              stroke: "black",
              strokeWidth: 1,
              fill: "#fff",
              style: { visibility: true }
            }
          }
        },
        out: {
          position: "right",
          attrs: {
            circle: {
              r: 2.5,
              magnet: true,
              stroke: "black",
              strokeWidth: 1,
              fill: "#fff"
            }
          }
        }
      },
      items: [
        { id: "inport1", group: "in" },
        { id: "inport2", group: "in" },
        { id: "outport1", group: "out" },
        { id: "outport2", group: "out" }
      ]
    },
    id: "fadef8ac-8dcd-4d8e-8968-d156ffd941c5",
    zIndex: 1
  },
  {
    position: { x: 370, y: 140 },
    size: { width: 90, height: 80 },
    attrs: {
      image: {
        "xlink:href": require("@/assets/img/visisvg/circle.svg")
      },
      label: { text: "contourTask2" }
    },
    shape: "template-node",
    data: {
      nodeName: "contourTask2",
      templateName: "contourTask2",
      templateImage: "zvinjodocker/contours_task2:20211014",
      templateCommand: {},
      templateArgs: {},
      algoparaInput: { userInput: [], getInput: [] },
      algoparaOutput: [],
      algoparaInputargu: { userInput: [], getInput: [] },
      algonodeSource: [
        {
          position: { x: 60, y: 280 },
          size: { width: 90, height: 80 },
          attrs: {
            image: {
              "xlink:href": require("@/assets/img/visisvg/circle.svg")
            },
            label: { text: "contourTask1" }
          },
          shape: "template-node",
          data: {
            nodeName: "contourTask1",
            templateName: "contourTask1",
            templateImage: "zvinjodocker/contous_task1:20211014",
            templateCommand: {},
            templateArgs: {},
            algoparaInput: { userInput: [], getInput: [] },
            algoparaOutput: [],
            algoparaInputargu: { userInput: [], getInput: [] },
            algonodeSource: [],
            inputsparameters: [],
            inputsartifacts: [],
            argumentsparameters: [],
            argumentsartifacts: [],
            outputsparameters: [],
            outputsartifacts: [
              {
                paraname: "thresh",
                paradesc: "",
                paratype: "",
                valuefrom: "/myapps/thresh1.png"
              },
              {
                paraname: "contours",
                paradesc: "",
                paratype: "",
                valuefrom: "/myapps/contours.png"
              }
            ],
            sourcedatalist: [],
            sourceartilist: []
          },
          ports: {
            groups: {
              in: {
                position: "left",
                attrs: {
                  circle: {
                    r: 2.5,
                    magnet: true,
                    stroke: "black",
                    strokeWidth: 1,
                    fill: "#fff",
                    style: { visibility: true }
                  }
                }
              },
              out: {
                position: "right",
                attrs: {
                  circle: {
                    r: 2.5,
                    magnet: true,
                    stroke: "black",
                    strokeWidth: 1,
                    fill: "#fff"
                  }
                }
              }
            },
            items: [
              { id: "inport1", group: "in" },
              { id: "inport2", group: "in" },
              { id: "outport1", group: "out" },
              { id: "outport2", group: "out" }
            ]
          },
          id: "fadef8ac-8dcd-4d8e-8968-d156ffd941c5",
          zIndex: 1
        }
      ],
      inputsparameters: [],
      inputsartifacts: [
        {
          paraname: "thresh",
          parapath: "/myapps/thresh1.png",
          paradesc: ""
        },
        {
          paraname: "contours",
          parapath: "/myapps/contours.png",
          paradesc: ""
        }
      ],
      argumentsparameters: [],
      argumentsartifacts: [
        {
          paraname: "thresh",
          valuefrom: "{{tasks.contourTask1.outputs.artifacts.thresh}}",
          fileurls: [],
          filelist: [],
          value: ["contourTask1", "thresh"]
        },
        {
          paraname: "contours",
          valuefrom: "{{tasks.contourTask1.outputs.artifacts.contours}}",
          fileurls: [],
          filelist: [],
          value: ["contourTask1", "contours"]
        }
      ],
      outputsparameters: [],
      outputsartifacts: [
        {
          paraname: "contours0",
          valuefrom: "/myapps/contours[0].npy",
          paradesc: "",
          paratype: ""
        },
        {
          paraname: "res",
          valuefrom: "/myapps/res1.png",
          paradesc: "",
          paratype: ""
        }
      ],
      sourcedatalist: [],
      sourceartilist: [],
      inputnodefilemap: [], //引用输入节点的   文件列表，包含文件名和url
      inputnodefilevalue: [] //用户选择的输入节点的文件，存储文件url,后端调用
    },
    ports: {
      groups: {
        in: {
          position: "left",
          attrs: {
            circle: {
              r: 2.5,
              magnet: true,
              stroke: "black",
              strokeWidth: 1,
              fill: "#fff",
              style: { visibility: true }
            }
          }
        },
        out: {
          position: "right",
          attrs: {
            circle: {
              r: 2.5,
              magnet: true,
              stroke: "black",
              strokeWidth: 1,
              fill: "#fff"
            }
          }
        }
      },
      items: [
        { id: "inport1", group: "in" },
        { id: "inport2", group: "in" },
        { id: "outport1", group: "out" },
        { id: "outport2", group: "out" }
      ]
    },
    id: "7d572837-a22b-4dab-a196-8ea411ba868e",
    zIndex: 2
  },
  {
    shape: "edge",
    attrs: {
      line: {
        stroke: "#808080",
        strokeWidth: 1,
        targetMarker: { name: "block", args: { size: "6" } }
      }
    },
    id: "3b752ac7-2c5f-4596-adf3-ad10dd3718b0",
    router: { name: "er", args: { offset: "center" } },
    tools: {
      items: [{ name: "button-remove", args: { distance: -40 } }]
    },
    source: {
      cell: "fadef8ac-8dcd-4d8e-8968-d156ffd941c5",
      port: "outport1"
    },
    target: {
      cell: "7d572837-a22b-4dab-a196-8ea411ba868e",
      port: "inport1"
    },
    zIndex: 3
  },
  {
    position: { x: 650, y: 140 },
    size: { width: 90, height: 80 },
    attrs: {
      image: {
        "xlink:href": require("@/assets/img/visisvg/circle.svg")
      },
      label: { text: "contourTask3" }
    },
    shape: "template-node",
    data: {
      nodeName: "contourTask3",
      templateName: "contourTask3",
      templateImage: "zvinjodocker/contours_task3:20211015",
      templateCommand: {},
      templateArgs: {},
      algoparaInput: { userInput: [], getInput: [] },
      algoparaOutput: [],
      algoparaInputargu: { userInput: [], getInput: [] },
      algonodeSource: [
        {
          position: { x: 370, y: 140 },
          size: { width: 90, height: 80 },
          attrs: {
            image: {
              "xlink:href": require("@/assets/img/visisvg/circle.svg")
            },
            label: { text: "contourTask2" }
          },
          shape: "template-node",
          data: {
            nodeName: "contourTask2",
            templateName: "contourTask2",
            templateImage: "zvinjodocker/contours_task2:20211014",
            templateCommand: {},
            templateArgs: {},
            algoparaInput: { userInput: [], getInput: [] },
            algoparaOutput: [],
            algoparaInputargu: { userInput: [], getInput: [] },
            algonodeSource: [
              {
                position: { x: 60, y: 280 },
                size: { width: 90, height: 80 },
                attrs: {
                  image: {
                    "xlink:href": require("@/assets/img/visisvg/circle.svg")
                  },
                  label: { text: "contourTask1" }
                },
                shape: "template-node",
                data: {
                  nodeName: "contourTask1",
                  templateName: "contourTask1",
                  templateImage: "zvinjodocker/contous_task1:20211014",
                  templateCommand: {},
                  templateArgs: {},
                  algoparaInput: { userInput: [], getInput: [] },
                  algoparaOutput: [],
                  algoparaInputargu: { userInput: [], getInput: [] },
                  algonodeSource: [],
                  inputsparameters: [],
                  inputsartifacts: [],
                  argumentsparameters: [],
                  argumentsartifacts: [],
                  outputsparameters: [],
                  outputsartifacts: [
                    {
                      paraname: "thresh",
                      paradesc: "",
                      paratype: "",
                      valuefrom: "/myapps/thresh1.png"
                    },
                    {
                      paraname: "contours",
                      paradesc: "",
                      paratype: "",
                      valuefrom: "/myapps/contours.png"
                    }
                  ],
                  sourcedatalist: [],
                  sourceartilist: []
                },
                ports: {
                  groups: {
                    in: {
                      position: "left",
                      attrs: {
                        circle: {
                          r: 2.5,
                          magnet: true,
                          stroke: "black",
                          strokeWidth: 1,
                          fill: "#fff",
                          style: { visibility: true }
                        }
                      }
                    },
                    out: {
                      position: "right",
                      attrs: {
                        circle: {
                          r: 2.5,
                          magnet: true,
                          stroke: "black",
                          strokeWidth: 1,
                          fill: "#fff"
                        }
                      }
                    }
                  },
                  items: [
                    { id: "inport1", group: "in" },
                    { id: "inport2", group: "in" },
                    { id: "outport1", group: "out" },
                    { id: "outport2", group: "out" }
                  ]
                },
                id: "fadef8ac-8dcd-4d8e-8968-d156ffd941c5",
                zIndex: 1
              }
            ],
            inputsparameters: [],
            inputsartifacts: [
              {
                paraname: "thresh",
                parapath: "/myapps/thresh1.png",
                paradesc: ""
              },
              {
                paraname: "contours",
                parapath: "/myapps/contours.png",
                paradesc: ""
              }
            ],
            argumentsparameters: [],
            argumentsartifacts: [
              {
                paraname: "thresh",
                valuefrom: "{{tasks.contourTask1.outputs.artifacts.thresh}}",
                fileurls: [],
                filelist: [],
                value: ["contourTask1", "thresh"]
              },
              {
                paraname: "contours",
                valuefrom: "{{tasks.contourTask1.outputs.artifacts.contours}}",
                fileurls: [],
                filelist: [],
                value: ["contourTask1", "contours"]
              }
            ],
            outputsparameters: [],
            outputsartifacts: [
              {
                paraname: "contours0",
                valuefrom: "/myapps/contours[0].npy",
                paradesc: "",
                paratype: ""
              },
              {
                paraname: "res",
                valuefrom: "/myapps/res1.png",
                paradesc: "",
                paratype: ""
              }
            ],
            sourcedatalist: [],
            sourceartilist: []
          },
          ports: {
            groups: {
              in: {
                position: "left",
                attrs: {
                  circle: {
                    r: 2.5,
                    magnet: true,
                    stroke: "black",
                    strokeWidth: 1,
                    fill: "#fff",
                    style: { visibility: true }
                  }
                }
              },
              out: {
                position: "right",
                attrs: {
                  circle: {
                    r: 2.5,
                    magnet: true,
                    stroke: "black",
                    strokeWidth: 1,
                    fill: "#fff"
                  }
                }
              }
            },
            items: [
              { id: "inport1", group: "in" },
              { id: "inport2", group: "in" },
              { id: "outport1", group: "out" },
              { id: "outport2", group: "out" }
            ]
          },
          id: "7d572837-a22b-4dab-a196-8ea411ba868e",
          zIndex: 2
        }
      ],
      inputsparameters: [],
      inputsartifacts: [
        {
          paraname: "contours0",
          parapath: "/myapps/contours[0].npy",
          paradesc: ""
        }
      ],
      argumentsparameters: [],
      argumentsartifacts: [
        {
          paraname: "contours0",
          valuefrom: "{{tasks.contourTask2.outputs.artifacts.contours0}}",
          fileurls: [],
          filelist: [],
          value: ["contourTask2", "contours0"]
        }
      ],
      outputsparameters: [],
      outputsartifacts: [],
      sourcedatalist: [],
      sourceartilist: [],
      inputnodefilemap: [], //引用输入节点的   文件列表，包含文件名和url
      inputnodefilevalue: [] //用户选择的输入节点的文件，存储文件url,后端调用
    },
    ports: {
      groups: {
        in: {
          position: "left",
          attrs: {
            circle: {
              r: 2.5,
              magnet: true,
              stroke: "black",
              strokeWidth: 1,
              fill: "#fff",
              style: { visibility: true }
            }
          }
        },
        out: {
          position: "right",
          attrs: {
            circle: {
              r: 2.5,
              magnet: true,
              stroke: "black",
              strokeWidth: 1,
              fill: "#fff"
            }
          }
        }
      },
      items: [
        { id: "inport1", group: "in" },
        { id: "inport2", group: "in" },
        { id: "outport1", group: "out" },
        { id: "outport2", group: "out" }
      ]
    },
    id: "a40a3ff3-da4c-463c-ab58-bd9735fb57fe",
    zIndex: 4
  },
  {
    shape: "edge",
    attrs: {
      line: {
        stroke: "#808080",
        strokeWidth: 1,
        targetMarker: { name: "block", args: { size: "6" } }
      }
    },
    id: "e30fefd7-b50a-4152-96a5-a6403f990cf7",
    router: { name: "er", args: { offset: "center" } },
    tools: {
      items: [{ name: "button-remove", args: { distance: -40 } }]
    },
    source: {
      cell: "7d572837-a22b-4dab-a196-8ea411ba868e",
      port: "outport1"
    },
    target: {
      cell: "a40a3ff3-da4c-463c-ab58-bd9735fb57fe",
      port: "inport1"
    },
    zIndex: 5
  },
  {
    position: { x: 360, y: 390 },
    size: { width: 90, height: 80 },
    attrs: {
      image: {
        "xlink:href": require("@/assets/img/visisvg/cloud.svg")
      },
      label: { text: "contourApproximate1" }
    },
    shape: "template-node",
    data: {
      nodeName: "contourApproximate1",
      templateName: "contourApproximate1",
      templateImage: "zvinjodocker/contour_approximate1:20211015",
      templateCommand: {},
      templateArgs: {},
      algoparaInput: { userInput: [], getInput: [] },
      algoparaOutput: [],
      algoparaInputargu: { userInput: [], getInput: [] },
      algonodeSource: [
        {
          position: { x: 60, y: 280 },
          size: { width: 90, height: 80 },
          attrs: {
            image: {
              "xlink:href": require("@/assets/img/visisvg/circle.svg")
            },
            label: { text: "contourTask1" }
          },
          shape: "template-node",
          data: {
            nodeName: "contourTask1",
            templateName: "contourTask1",
            templateImage: "zvinjodocker/contous_task1:20211014",
            templateCommand: {},
            templateArgs: {},
            algoparaInput: { userInput: [], getInput: [] },
            algoparaOutput: [],
            algoparaInputargu: { userInput: [], getInput: [] },
            algonodeSource: [],
            inputsparameters: [],
            inputsartifacts: [],
            argumentsparameters: [],
            argumentsartifacts: [],
            outputsparameters: [],
            outputsartifacts: [
              {
                paraname: "thresh",
                paradesc: "",
                paratype: "",
                valuefrom: "/myapps/thresh1.png"
              },
              {
                paraname: "contours",
                paradesc: "",
                paratype: "",
                valuefrom: "/myapps/contours.png"
              }
            ],
            sourcedatalist: [],
            sourceartilist: []
          },
          ports: {
            groups: {
              in: {
                position: "left",
                attrs: {
                  circle: {
                    r: 2.5,
                    magnet: true,
                    stroke: "black",
                    strokeWidth: 1,
                    fill: "#fff",
                    style: { visibility: true }
                  }
                }
              },
              out: {
                position: "right",
                attrs: {
                  circle: {
                    r: 2.5,
                    magnet: true,
                    stroke: "black",
                    strokeWidth: 1,
                    fill: "#fff"
                  }
                }
              }
            },
            items: [
              { id: "inport1", group: "in" },
              { id: "inport2", group: "in" },
              { id: "outport1", group: "out" },
              { id: "outport2", group: "out" }
            ]
          },
          id: "fadef8ac-8dcd-4d8e-8968-d156ffd941c5",
          zIndex: 1
        }
      ],
      inputsparameters: [],
      inputsartifacts: [],
      argumentsparameters: [],
      argumentsartifacts: [],
      outputsparameters: [],
      outputsartifacts: [
        {
          paraname: "approxCnt",
          valuefrom: "/myapps/approx_cnt.npy",
          paradesc: "",
          paratype: ""
        },
        {
          paraname: "approxRes",
          valuefrom: "/myapps/approx_res.png",
          paradesc: "",
          paratype: ""
        }
      ],
      sourcedatalist: [],
      sourceartilist: [],
      inputnodefilemap: [], //引用输入节点的   文件列表，包含文件名和url
      inputnodefilevalue: [] //用户选择的输入节点的文件，存储文件url,后端调用
    },
    ports: {
      groups: {
        in: {
          position: "left",
          attrs: {
            circle: {
              r: 2.5,
              magnet: true,
              stroke: "black",
              strokeWidth: 1,
              fill: "#fff",
              style: { visibility: true }
            }
          }
        },
        out: {
          position: "right",
          attrs: {
            circle: {
              r: 2.5,
              magnet: true,
              stroke: "black",
              strokeWidth: 1,
              fill: "#fff"
            }
          }
        }
      },
      items: [
        { id: "inport1", group: "in" },
        { id: "inport2", group: "in" },
        { id: "outport1", group: "out" },
        { id: "outport2", group: "out" }
      ]
    },
    id: "2d3ccc77-be7c-4fa0-ae37-a9af4fdf6730",
    zIndex: 6
  },
  {
    position: { x: 660, y: 390 },
    size: { width: 90, height: 80 },
    attrs: {
      image: {
        "xlink:href": require("@/assets/img/visisvg/api.svg")
      },
      label: { text: "contourApproximate2" }
    },
    shape: "template-node",
    data: {
      nodeName: "contourApproximate2",
      templateName: "contourApproximate2",
      templateImage: "zvinjodocker/contour_approximate2:20211015",
      templateCommand: {},
      templateArgs: {},
      algoparaInput: { userInput: [], getInput: [] },
      algoparaOutput: [],
      algoparaInputargu: { userInput: [], getInput: [] },
      algonodeSource: [
        {
          position: { x: 360, y: 390 },
          size: { width: 90, height: 80 },
          attrs: {
            image: {
              "xlink:href": require("@/assets/img/visisvg/cloud.svg")
            },
            label: { text: "contourApproximate1" }
          },
          shape: "template-node",
          data: {
            nodeName: "contourApproximate1",
            templateName: "contourApproximate1",
            templateImage: "zvinjodocker/contour_approximate1:20211015",
            templateCommand: {},
            templateArgs: {},
            algoparaInput: { userInput: [], getInput: [] },
            algoparaOutput: [],
            algoparaInputargu: { userInput: [], getInput: [] },
            algonodeSource: [
              {
                position: { x: 60, y: 280 },
                size: { width: 90, height: 80 },
                attrs: {
                  image: {
                    "xlink:href": require("@/assets/img/visisvg/circle.svg")
                  },
                  label: { text: "contourTask1" }
                },
                shape: "template-node",
                data: {
                  nodeName: "contourTask1",
                  templateName: "contourTask1",
                  templateImage: "zvinjodocker/contous_task1:20211014",
                  templateCommand: {},
                  templateArgs: {},
                  algoparaInput: { userInput: [], getInput: [] },
                  algoparaOutput: [],
                  algoparaInputargu: { userInput: [], getInput: [] },
                  algonodeSource: [],
                  inputsparameters: [],
                  inputsartifacts: [],
                  argumentsparameters: [],
                  argumentsartifacts: [],
                  outputsparameters: [],
                  outputsartifacts: [
                    {
                      paraname: "thresh",
                      paradesc: "",
                      paratype: "",
                      valuefrom: "/myapps/thresh1.png"
                    },
                    {
                      paraname: "contours",
                      paradesc: "",
                      paratype: "",
                      valuefrom: "/myapps/contours.png"
                    }
                  ],
                  sourcedatalist: [],
                  sourceartilist: []
                },
                ports: {
                  groups: {
                    in: {
                      position: "left",
                      attrs: {
                        circle: {
                          r: 2.5,
                          magnet: true,
                          stroke: "black",
                          strokeWidth: 1,
                          fill: "#fff",
                          style: { visibility: true }
                        }
                      }
                    },
                    out: {
                      position: "right",
                      attrs: {
                        circle: {
                          r: 2.5,
                          magnet: true,
                          stroke: "black",
                          strokeWidth: 1,
                          fill: "#fff"
                        }
                      }
                    }
                  },
                  items: [
                    { id: "inport1", group: "in" },
                    { id: "inport2", group: "in" },
                    { id: "outport1", group: "out" },
                    { id: "outport2", group: "out" }
                  ]
                },
                id: "fadef8ac-8dcd-4d8e-8968-d156ffd941c5",
                zIndex: 1
              }
            ],
            inputsparameters: [],
            inputsartifacts: [],
            argumentsparameters: [],
            argumentsartifacts: [],
            outputsparameters: [],
            outputsartifacts: [
              {
                paraname: "approxCnt",
                valuefrom: "/myapps/approx_cnt.npy",
                paradesc: "",
                paratype: ""
              },
              {
                paraname: "approxRes",
                valuefrom: "/myapps/approx_res.png",
                paradesc: "",
                paratype: ""
              }
            ],
            sourcedatalist: [],
            sourceartilist: []
          },
          ports: {
            groups: {
              in: {
                position: "left",
                attrs: {
                  circle: {
                    r: 2.5,
                    magnet: true,
                    stroke: "black",
                    strokeWidth: 1,
                    fill: "#fff",
                    style: { visibility: true }
                  }
                }
              },
              out: {
                position: "right",
                attrs: {
                  circle: {
                    r: 2.5,
                    magnet: true,
                    stroke: "black",
                    strokeWidth: 1,
                    fill: "#fff"
                  }
                }
              }
            },
            items: [
              { id: "inport1", group: "in" },
              { id: "inport2", group: "in" },
              { id: "outport1", group: "out" },
              { id: "outport2", group: "out" }
            ]
          },
          id: "2d3ccc77-be7c-4fa0-ae37-a9af4fdf6730",
          zIndex: 6
        }
      ],
      inputsparameters: [],
      inputsartifacts: [
        {
          paraname: "approxCnt",
          parapath: "/myapps/approx_cnt.npy",
          paradesc: ""
        }
      ],
      argumentsparameters: [],
      argumentsartifacts: [
        {
          paraname: "approxCnt",
          valuefrom: "{{tasks.contourApproximate1.outputs.artifacts.approxCnt}}",
          fileurls: [],
          filelist: [],
          value: ["contourApproximate1", "approxCnt"]
        }
      ],
      outputsparameters: [],
      outputsartifacts: [
        {
          paraname: "approxRes2",
          valuefrom: "/myapps/approx_res2.png",
          paradesc: "",
          paratype: ""
        }
      ],
      sourcedatalist: [],
      sourceartilist: [],
      inputnodefilemap: [], //引用输入节点的   文件列表，包含文件名和url
      inputnodefilevalue: [] //用户选择的输入节点的文件，存储文件url,后端调用
    },
    ports: {
      groups: {
        in: {
          position: "left",
          attrs: {
            circle: {
              r: 2.5,
              magnet: true,
              stroke: "black",
              strokeWidth: 1,
              fill: "#fff",
              style: { visibility: true }
            }
          }
        },
        out: {
          position: "right",
          attrs: {
            circle: {
              r: 2.5,
              magnet: true,
              stroke: "black",
              strokeWidth: 1,
              fill: "#fff"
            }
          }
        }
      },
      items: [
        { id: "inport1", group: "in" },
        { id: "inport2", group: "in" },
        { id: "outport1", group: "out" },
        { id: "outport2", group: "out" }
      ]
    },
    id: "1e868699-e31f-4daf-a07b-7e903c861fba",
    zIndex: 7
  },
  {
    shape: "edge",
    attrs: {
      line: {
        stroke: "#808080",
        strokeWidth: 1,
        targetMarker: { name: "block", args: { size: "6" } }
      }
    },
    id: "77d0d40f-d287-4223-abfc-0fd17651bb69",
    router: { name: "er", args: { offset: "center" } },
    tools: {
      items: [{ name: "button-remove", args: { distance: -40 } }]
    },
    source: {
      cell: "2d3ccc77-be7c-4fa0-ae37-a9af4fdf6730",
      port: "outport1"
    },
    target: {
      cell: "1e868699-e31f-4daf-a07b-7e903c861fba",
      port: "inport1"
    },
    zIndex: 8
  },
  {
    shape: "edge",
    attrs: {
      line: {
        stroke: "#808080",
        strokeWidth: 1,
        targetMarker: { name: "block", args: { size: "6" } }
      }
    },
    id: "f46b0a77-d34c-4ec8-8bfd-7b48e412669e",
    router: { name: "er", args: { offset: "center" } },
    tools: {
      items: [{ name: "button-remove", args: { distance: -40 } }]
    },
    source: {
      cell: "fadef8ac-8dcd-4d8e-8968-d156ffd941c5",
      port: "outport2"
    },
    target: {
      cell: "2d3ccc77-be7c-4fa0-ae37-a9af4fdf6730",
      port: "inport1"
    },
    zIndex: 9
  },
  {
    position: { x: 660, y: 600 },
    size: { width: 90, height: 80 },
    attrs: {
      image: {
        "xlink:href": require("@/assets/img/visisvg/bookshelf.svg")
      },
      label: { text: "contourRect1" }
    },
    shape: "template-node",
    data: {
      nodeName: "contourRect1",
      templateName: "contourRect1",
      templateImage: "zvinjodocker/contours_rect1:20211015",
      templateCommand: {},
      templateArgs: {},
      algoparaInput: { userInput: [], getInput: [] },
      algoparaOutput: [],
      algoparaInputargu: { userInput: [], getInput: [] },
      algonodeSource: [
        {
          position: { x: 360, y: 390 },
          size: { width: 90, height: 80 },
          attrs: {
            image: {
              "xlink:href": require("@/assets/img/visisvg/cloud.svg")
            },
            label: { text: "contourApproximate1" }
          },
          shape: "template-node",
          data: {
            nodeName: "contourApproximate1",
            templateName: "contourApproximate1",
            templateImage: "zvinjodocker/contour_approximate1:20211015",
            templateCommand: {},
            templateArgs: {},
            algoparaInput: { userInput: [], getInput: [] },
            algoparaOutput: [],
            algoparaInputargu: { userInput: [], getInput: [] },
            algonodeSource: [
              {
                position: { x: 60, y: 280 },
                size: { width: 90, height: 80 },
                attrs: {
                  image: {
                    "xlink:href": require("@/assets/img/visisvg/circle.svg")
                  },
                  label: { text: "contourTask1" }
                },
                shape: "template-node",
                data: {
                  nodeName: "contourTask1",
                  templateName: "contourTask1",
                  templateImage: "zvinjodocker/contous_task1:20211014",
                  templateCommand: {},
                  templateArgs: {},
                  algoparaInput: { userInput: [], getInput: [] },
                  algoparaOutput: [],
                  algoparaInputargu: { userInput: [], getInput: [] },
                  algonodeSource: [],
                  inputsparameters: [],
                  inputsartifacts: [],
                  argumentsparameters: [],
                  argumentsartifacts: [],
                  outputsparameters: [],
                  outputsartifacts: [
                    {
                      paraname: "thresh",
                      paradesc: "",
                      paratype: "",
                      valuefrom: "/myapps/thresh1.png"
                    },
                    {
                      paraname: "contours",
                      paradesc: "",
                      paratype: "",
                      valuefrom: "/myapps/contours.png"
                    }
                  ],
                  sourcedatalist: [],
                  sourceartilist: []
                },
                ports: {
                  groups: {
                    in: {
                      position: "left",
                      attrs: {
                        circle: {
                          r: 2.5,
                          magnet: true,
                          stroke: "black",
                          strokeWidth: 1,
                          fill: "#fff",
                          style: { visibility: true }
                        }
                      }
                    },
                    out: {
                      position: "right",
                      attrs: {
                        circle: {
                          r: 2.5,
                          magnet: true,
                          stroke: "black",
                          strokeWidth: 1,
                          fill: "#fff"
                        }
                      }
                    }
                  },
                  items: [
                    { id: "inport1", group: "in" },
                    { id: "inport2", group: "in" },
                    { id: "outport1", group: "out" },
                    { id: "outport2", group: "out" }
                  ]
                },
                id: "fadef8ac-8dcd-4d8e-8968-d156ffd941c5",
                zIndex: 1
              }
            ],
            inputsparameters: [],
            inputsartifacts: [],
            argumentsparameters: [],
            argumentsartifacts: [],
            outputsparameters: [],
            outputsartifacts: [
              {
                paraname: "approxCnt",
                valuefrom: "/myapps/approx_cnt.npy",
                paradesc: "",
                paratype: ""
              },
              {
                paraname: "approxRes",
                valuefrom: "/myapps/approx_res.png",
                paradesc: "",
                paratype: ""
              }
            ],
            sourcedatalist: [],
            sourceartilist: []
          },
          ports: {
            groups: {
              in: {
                position: "left",
                attrs: {
                  circle: {
                    r: 2.5,
                    magnet: true,
                    stroke: "black",
                    strokeWidth: 1,
                    fill: "#fff",
                    style: { visibility: true }
                  }
                }
              },
              out: {
                position: "right",
                attrs: {
                  circle: {
                    r: 2.5,
                    magnet: true,
                    stroke: "black",
                    strokeWidth: 1,
                    fill: "#fff"
                  }
                }
              }
            },
            items: [
              { id: "inport1", group: "in" },
              { id: "inport2", group: "in" },
              { id: "outport1", group: "out" },
              { id: "outport2", group: "out" }
            ]
          },
          id: "2d3ccc77-be7c-4fa0-ae37-a9af4fdf6730",
          zIndex: 6
        }
      ],
      inputsparameters: [],
      inputsartifacts: [],
      argumentsparameters: [],
      argumentsartifacts: [],
      outputsparameters: [],
      outputsartifacts: [
        {
          paraname: "cnt",
          valuefrom: "/myapps/contour_rect_cnt.npy",
          paradesc: "",
          paratype: ""
        },
        {
          paraname: "contourRect",
          valuefrom: "/myapps/contour_rect.png",
          paradesc: "",
          paratype: ""
        }
      ],
      sourcedatalist: [],
      sourceartilist: [],
      inputnodefilemap: [], //引用输入节点的   文件列表，包含文件名和url
      inputnodefilevalue: [] //用户选择的输入节点的文件，存储文件url,后端调用
    },
    ports: {
      groups: {
        in: {
          position: "left",
          attrs: {
            circle: {
              r: 2.5,
              magnet: true,
              stroke: "black",
              strokeWidth: 1,
              fill: "#fff",
              style: { visibility: true }
            }
          }
        },
        out: {
          position: "right",
          attrs: {
            circle: {
              r: 2.5,
              magnet: true,
              stroke: "black",
              strokeWidth: 1,
              fill: "#fff"
            }
          }
        }
      },
      items: [
        { id: "inport1", group: "in" },
        { id: "inport2", group: "in" },
        { id: "outport1", group: "out" },
        { id: "outport2", group: "out" }
      ]
    },
    id: "6d787d4a-a68d-4a8c-a3b9-559eb5d4e231",
    zIndex: 10
  },
  {
    position: { x: 910, y: 600 },
    size: { width: 90, height: 80 },
    attrs: {
      image: {
        "xlink:href": require("@/assets/img/visisvg/computer.svg")
      },
      label: { text: "contourCircle2" }
    },
    shape: "template-node",
    data: {
      nodeName: "contourCircle2",
      templateName: "contourCircle2",
      templateImage: "zvinjodocker/contours_circle2:20211015",
      templateCommand: {},
      templateArgs: {},
      algoparaInput: { userInput: [], getInput: [] },
      algoparaOutput: [],
      algoparaInputargu: { userInput: [], getInput: [] },
      algonodeSource: [
        {
          position: { x: 660, y: 600 },
          size: { width: 90, height: 80 },
          attrs: {
            image: {
              "xlink:href": require("@/assets/img/visisvg/bookshelf.svg")
            },
            label: { text: "contourRect1" }
          },
          shape: "template-node",
          data: {
            nodeName: "contourRect1",
            templateName: "contourRect1",
            templateImage: "zvinjodocker/contours_rect1:20211015",
            templateCommand: {},
            templateArgs: {},
            algoparaInput: { userInput: [], getInput: [] },
            algoparaOutput: [],
            algoparaInputargu: { userInput: [], getInput: [] },
            algonodeSource: [
              {
                position: { x: 360, y: 390 },
                size: { width: 90, height: 80 },
                attrs: {
                  image: {
                    "xlink:href": require("@/assets/img/visisvg/cloud.svg")
                  },
                  label: { text: "contourApproximate1" }
                },
                shape: "template-node",
                data: {
                  nodeName: "contourApproximate1",
                  templateName: "contourApproximate1",
                  templateImage: "zvinjodocker/contour_approximate1:20211015",
                  templateCommand: {},
                  templateArgs: {},
                  algoparaInput: { userInput: [], getInput: [] },
                  algoparaOutput: [],
                  algoparaInputargu: { userInput: [], getInput: [] },
                  algonodeSource: [
                    {
                      position: { x: 60, y: 280 },
                      size: { width: 90, height: 80 },
                      attrs: {
                        image: {
                          "xlink:href": require("@/assets/img/visisvg/circle.svg")
                        },
                        label: { text: "contourTask1" }
                      },
                      shape: "template-node",
                      data: {
                        nodeName: "contourTask1",
                        templateName: "contourTask1",
                        templateImage: "zvinjodocker/contous_task1:20211014",
                        templateCommand: {},
                        templateArgs: {},
                        algoparaInput: { userInput: [], getInput: [] },
                        algoparaOutput: [],
                        algoparaInputargu: {
                          userInput: [],
                          getInput: []
                        },
                        algonodeSource: [],
                        inputsparameters: [],
                        inputsartifacts: [],
                        argumentsparameters: [],
                        argumentsartifacts: [],
                        outputsparameters: [],
                        outputsartifacts: [
                          {
                            paraname: "thresh",
                            paradesc: "",
                            paratype: "",
                            valuefrom: "/myapps/thresh1.png"
                          },
                          {
                            paraname: "contours",
                            paradesc: "",
                            paratype: "",
                            valuefrom: "/myapps/contours.png"
                          }
                        ],
                        sourcedatalist: [],
                        sourceartilist: []
                      },
                      ports: {
                        groups: {
                          in: {
                            position: "left",
                            attrs: {
                              circle: {
                                r: 2.5,
                                magnet: true,
                                stroke: "black",
                                strokeWidth: 1,
                                fill: "#fff",
                                style: { visibility: true }
                              }
                            }
                          },
                          out: {
                            position: "right",
                            attrs: {
                              circle: {
                                r: 2.5,
                                magnet: true,
                                stroke: "black",
                                strokeWidth: 1,
                                fill: "#fff"
                              }
                            }
                          }
                        },
                        items: [
                          { id: "inport1", group: "in" },
                          { id: "inport2", group: "in" },
                          { id: "outport1", group: "out" },
                          { id: "outport2", group: "out" }
                        ]
                      },
                      id: "fadef8ac-8dcd-4d8e-8968-d156ffd941c5",
                      zIndex: 1
                    }
                  ],
                  inputsparameters: [],
                  inputsartifacts: [],
                  argumentsparameters: [],
                  argumentsartifacts: [],
                  outputsparameters: [],
                  outputsartifacts: [
                    {
                      paraname: "approxCnt",
                      valuefrom: "/myapps/approx_cnt.npy",
                      paradesc: "",
                      paratype: ""
                    },
                    {
                      paraname: "approxRes",
                      valuefrom: "/myapps/approx_res.png",
                      paradesc: "",
                      paratype: ""
                    }
                  ],
                  sourcedatalist: [],
                  sourceartilist: []
                },
                ports: {
                  groups: {
                    in: {
                      position: "left",
                      attrs: {
                        circle: {
                          r: 2.5,
                          magnet: true,
                          stroke: "black",
                          strokeWidth: 1,
                          fill: "#fff",
                          style: { visibility: true }
                        }
                      }
                    },
                    out: {
                      position: "right",
                      attrs: {
                        circle: {
                          r: 2.5,
                          magnet: true,
                          stroke: "black",
                          strokeWidth: 1,
                          fill: "#fff"
                        }
                      }
                    }
                  },
                  items: [
                    { id: "inport1", group: "in" },
                    { id: "inport2", group: "in" },
                    { id: "outport1", group: "out" },
                    { id: "outport2", group: "out" }
                  ]
                },
                id: "2d3ccc77-be7c-4fa0-ae37-a9af4fdf6730",
                zIndex: 6
              }
            ],
            inputsparameters: [],
            inputsartifacts: [],
            argumentsparameters: [],
            argumentsartifacts: [],
            outputsparameters: [],
            outputsartifacts: [
              {
                paraname: "cnt",
                valuefrom: "/myapps/contour_rect_cnt.npy",
                paradesc: "",
                paratype: ""
              },
              {
                paraname: "contourRect",
                valuefrom: "/myapps/contour_rect.png",
                paradesc: "",
                paratype: ""
              }
            ],
            sourcedatalist: [],
            sourceartilist: []
          },
          ports: {
            groups: {
              in: {
                position: "left",
                attrs: {
                  circle: {
                    r: 2.5,
                    magnet: true,
                    stroke: "black",
                    strokeWidth: 1,
                    fill: "#fff",
                    style: { visibility: true }
                  }
                }
              },
              out: {
                position: "right",
                attrs: {
                  circle: {
                    r: 2.5,
                    magnet: true,
                    stroke: "black",
                    strokeWidth: 1,
                    fill: "#fff"
                  }
                }
              }
            },
            items: [
              { id: "inport1", group: "in" },
              { id: "inport2", group: "in" },
              { id: "outport1", group: "out" },
              { id: "outport2", group: "out" }
            ]
          },
          id: "6d787d4a-a68d-4a8c-a3b9-559eb5d4e231",
          zIndex: 10
        }
      ],
      inputsparameters: [],
      inputsartifacts: [
        {
          paraname: "contourRect",
          parapath: "/myapps/contour_rect.png",
          paradesc: ""
        },
        {
          paraname: "cnt",
          parapath: "/myapps/contour_rect_cnt.npy",
          paradesc: ""
        }
      ],
      argumentsparameters: [],
      argumentsartifacts: [
        {
          paraname: "contourRect",
          valuefrom: "{{tasks.contourRect1.outputs.artifacts.contourRect}}",
          fileurls: [],
          filelist: [],
          value: ["contourRect1", "contourRect"]
        },
        {
          paraname: "cnt",
          valuefrom: "{{tasks.contourRect1.outputs.artifacts.cnt}}",
          fileurls: [],
          filelist: [],
          value: ["contourRect1", "cnt"]
        }
      ],
      outputsparameters: [],
      outputsartifacts: [
        {
          paraname: "contourCircle",
          valuefrom: "contour_circle.png",
          paradesc: "",
          paratype: ""
        }
      ],
      sourcedatalist: [],
      sourceartilist: [],
      inputnodefilemap: [], //引用输入节点的   文件列表，包含文件名和url
      inputnodefilevalue: [] //用户选择的输入节点的文件，存储文件url,后端调用
    },
    ports: {
      groups: {
        in: {
          position: "left",
          attrs: {
            circle: {
              r: 2.5,
              magnet: true,
              stroke: "black",
              strokeWidth: 1,
              fill: "#fff",
              style: { visibility: true }
            }
          }
        },
        out: {
          position: "right",
          attrs: {
            circle: {
              r: 2.5,
              magnet: true,
              stroke: "black",
              strokeWidth: 1,
              fill: "#fff"
            }
          }
        }
      },
      items: [
        { id: "inport1", group: "in" },
        { id: "inport2", group: "in" },
        { id: "outport1", group: "out" },
        { id: "outport2", group: "out" }
      ]
    },
    id: "283ddff1-40c9-43aa-b581-b99706e65fb3",
    zIndex: 11
  },
  {
    shape: "edge",
    attrs: {
      line: {
        stroke: "#808080",
        strokeWidth: 1,
        targetMarker: { name: "block", args: { size: "6" } }
      }
    },
    id: "5f83bef7-8f4c-4b6a-ac51-b076c1e03042",
    router: { name: "er", args: { offset: "center" } },
    tools: {
      items: [{ name: "button-remove", args: { distance: -40 } }]
    },
    source: {
      cell: "2d3ccc77-be7c-4fa0-ae37-a9af4fdf6730",
      port: "outport2"
    },
    target: {
      cell: "6d787d4a-a68d-4a8c-a3b9-559eb5d4e231",
      port: "inport1"
    },
    zIndex: 12
  },
  {
    shape: "edge",
    attrs: {
      line: {
        stroke: "#808080",
        strokeWidth: 1,
        targetMarker: { name: "block", args: { size: "6" } }
      }
    },
    id: "9017467c-167e-4f01-97dd-37d2d42bd0ed",
    router: { name: "er", args: { offset: "center" } },
    tools: {
      items: [{ name: "button-remove", args: { distance: -40 } }]
    },
    source: {
      cell: "6d787d4a-a68d-4a8c-a3b9-559eb5d4e231",
      port: "outport1"
    },
    target: {
      cell: "283ddff1-40c9-43aa-b581-b99706e65fb3",
      port: "inport1"
    },
    zIndex: 13
  }
];
