{
  "version": 2,
  "meta": {
    "name": "Getting Started",
    "description": "Trigger → SubGraph (10+5=15) → Branch → Print",
    "author": ""
  },
  "nodes": [
    {
      "id": "n-trig",
      "type": "util/Trigger",
      "title": "Trigger",
      "x": 60,
      "y": 190,
      "w": 140,
      "h": 80,
      "inputs": [],
      "outputs": [
        {
          "id": "po-trig-exec",
          "name": "exec",
          "portType": "exec",
          "datatype": "any",
          "dir": "out"
        }
      ],
      "state": {}
    },
    {
      "id": "n-sg",
      "type": "util/SubGraph",
      "title": "Add Numbers",
      "x": 270,
      "y": 200,
      "w": 170,
      "h": 62,
      "inputs": [
        { "id": "pi-sg-exec", "name": "", "portType": "exec", "datatype": "any", "dir": "in" }
      ],
      "outputs": [
        { "id": "po-sg-exec", "name": "", "portType": "exec", "datatype": "any", "dir": "out" }
      ],
      "state": {
        "subGraphData": {
          "version": 2,
          "meta": { "name": "Add Numbers", "description": "", "author": "" },
          "nodes": [
            {
              "id": "sg-add",
              "type": "math/Add",
              "title": "Add",
              "x": 250,
              "y": 60,
              "w": 140,
              "h": 102,
              "inputs": [
                {
                  "id": "spi-add-exec",
                  "name": "exec",
                  "portType": "exec",
                  "datatype": "any",
                  "dir": "in"
                },
                {
                  "id": "spi-add-a",
                  "name": "a",
                  "portType": "data",
                  "datatype": "number",
                  "dir": "in"
                },
                {
                  "id": "spi-add-b",
                  "name": "b",
                  "portType": "data",
                  "datatype": "number",
                  "dir": "in"
                }
              ],
              "outputs": [
                {
                  "id": "spo-add-exec",
                  "name": "exec",
                  "portType": "exec",
                  "datatype": "any",
                  "dir": "out"
                },
                {
                  "id": "spo-add-res",
                  "name": "result",
                  "portType": "data",
                  "datatype": "number",
                  "dir": "out"
                }
              ],
              "state": { "a": 10, "b": 5 }
            },
            {
              "id": "sg-na",
              "type": "value/Number",
              "title": "Number",
              "x": 60,
              "y": 60,
              "w": 140,
              "h": 90,
              "inputs": [],
              "outputs": [
                {
                  "id": "spo-na-val",
                  "name": "value",
                  "portType": "data",
                  "datatype": "number",
                  "dir": "out"
                }
              ],
              "state": { "value": 10 }
            },
            {
              "id": "sg-nb",
              "type": "value/Number",
              "title": "Number",
              "x": 60,
              "y": 175,
              "w": 140,
              "h": 90,
              "inputs": [],
              "outputs": [
                {
                  "id": "spo-nb-val",
                  "name": "value",
                  "portType": "data",
                  "datatype": "number",
                  "dir": "out"
                }
              ],
              "state": { "value": 5 }
            },
            {
              "id": "sg-watch",
              "type": "util/Watch",
              "title": "Watch",
              "x": 450,
              "y": 60,
              "w": 180,
              "h": 130,
              "inputs": [
                {
                  "id": "spi-w-exec",
                  "name": "exec",
                  "portType": "exec",
                  "datatype": "any",
                  "dir": "in"
                },
                {
                  "id": "spi-w-val",
                  "name": "value",
                  "portType": "data",
                  "datatype": "any",
                  "dir": "in"
                }
              ],
              "outputs": [
                {
                  "id": "spo-w-exec",
                  "name": "exec",
                  "portType": "exec",
                  "datatype": "any",
                  "dir": "out"
                },
                {
                  "id": "spo-w-val",
                  "name": "value",
                  "portType": "data",
                  "datatype": "any",
                  "dir": "out"
                }
              ],
              "state": { "displayValue": "---" }
            }
          ],
          "edges": [
            {
              "id": "sge-na-a",
              "fromNode": "sg-na",
              "fromPort": "spo-na-val",
              "toNode": "sg-add",
              "toPort": "spi-add-a"
            },
            {
              "id": "sge-nb-b",
              "fromNode": "sg-nb",
              "fromPort": "spo-nb-val",
              "toNode": "sg-add",
              "toPort": "spi-add-b"
            },
            {
              "id": "sge-add-w",
              "fromNode": "sg-add",
              "fromPort": "spo-add-exec",
              "toNode": "sg-watch",
              "toPort": "spi-w-exec"
            },
            {
              "id": "sge-res-w",
              "fromNode": "sg-add",
              "fromPort": "spo-add-res",
              "toNode": "sg-watch",
              "toPort": "spi-w-val"
            }
          ]
        }
      }
    },
    {
      "id": "n-bool",
      "type": "value/Boolean",
      "title": "Condition",
      "x": 270,
      "y": 300,
      "w": 140,
      "h": 62,
      "inputs": [],
      "outputs": [
        {
          "id": "po-bool-val",
          "name": "value",
          "portType": "data",
          "datatype": "boolean",
          "dir": "out"
        }
      ],
      "state": { "value": true }
    },
    {
      "id": "n-branch",
      "type": "logic/Branch",
      "title": "Branch",
      "x": 510,
      "y": 200,
      "w": 140,
      "h": 82,
      "inputs": [
        { "id": "pi-branch-exec", "name": "", "portType": "exec", "datatype": "any", "dir": "in" },
        {
          "id": "pi-branch-cond",
          "name": "condition",
          "portType": "data",
          "datatype": "boolean",
          "dir": "in"
        }
      ],
      "outputs": [
        {
          "id": "po-branch-true",
          "name": "true",
          "portType": "exec",
          "datatype": "any",
          "dir": "out"
        },
        {
          "id": "po-branch-false",
          "name": "false",
          "portType": "exec",
          "datatype": "any",
          "dir": "out"
        }
      ],
      "state": {}
    },
    {
      "id": "n-str-t",
      "type": "value/String",
      "title": "String",
      "x": 560,
      "y": 118,
      "w": 160,
      "h": 62,
      "inputs": [],
      "outputs": [
        {
          "id": "po-st-val",
          "name": "value",
          "portType": "data",
          "datatype": "string",
          "dir": "out"
        }
      ],
      "state": { "value": "참 (True)" }
    },
    {
      "id": "n-print-t",
      "type": "util/Print",
      "title": "Print",
      "x": 780,
      "y": 128,
      "w": 140,
      "h": 82,
      "inputs": [
        { "id": "pi-pt-exec", "name": "", "portType": "exec", "datatype": "any", "dir": "in" },
        { "id": "pi-pt-val", "name": "value", "portType": "data", "datatype": "any", "dir": "in" }
      ],
      "outputs": [
        { "id": "po-pt-exec", "name": "", "portType": "exec", "datatype": "any", "dir": "out" }
      ],
      "state": {}
    },
    {
      "id": "n-str-f",
      "type": "value/String",
      "title": "String",
      "x": 560,
      "y": 318,
      "w": 160,
      "h": 62,
      "inputs": [],
      "outputs": [
        {
          "id": "po-sf-val",
          "name": "value",
          "portType": "data",
          "datatype": "string",
          "dir": "out"
        }
      ],
      "state": { "value": "거짓 (False)" }
    },
    {
      "id": "n-print-f",
      "type": "util/Print",
      "title": "Print",
      "x": 780,
      "y": 308,
      "w": 140,
      "h": 82,
      "inputs": [
        { "id": "pi-pf-exec", "name": "", "portType": "exec", "datatype": "any", "dir": "in" },
        { "id": "pi-pf-val", "name": "value", "portType": "data", "datatype": "any", "dir": "in" }
      ],
      "outputs": [
        { "id": "po-pf-exec", "name": "", "portType": "exec", "datatype": "any", "dir": "out" }
      ],
      "state": {}
    }
  ],
  "edges": [
    {
      "id": "e-trig-sg",
      "fromNode": "n-trig",
      "fromPort": "po-trig-exec",
      "toNode": "n-sg",
      "toPort": "pi-sg-exec"
    },
    {
      "id": "e-sg-branch",
      "fromNode": "n-sg",
      "fromPort": "po-sg-exec",
      "toNode": "n-branch",
      "toPort": "pi-branch-exec"
    },
    {
      "id": "e-bool-cond",
      "fromNode": "n-bool",
      "fromPort": "po-bool-val",
      "toNode": "n-branch",
      "toPort": "pi-branch-cond"
    },
    {
      "id": "e-true-pt",
      "fromNode": "n-branch",
      "fromPort": "po-branch-true",
      "toNode": "n-print-t",
      "toPort": "pi-pt-exec"
    },
    {
      "id": "e-str-pt",
      "fromNode": "n-str-t",
      "fromPort": "po-st-val",
      "toNode": "n-print-t",
      "toPort": "pi-pt-val"
    },
    {
      "id": "e-false-pf",
      "fromNode": "n-branch",
      "fromPort": "po-branch-false",
      "toNode": "n-print-f",
      "toPort": "pi-pf-exec"
    },
    {
      "id": "e-str-pf",
      "fromNode": "n-str-f",
      "fromPort": "po-sf-val",
      "toNode": "n-print-f",
      "toPort": "pi-pf-val"
    }
  ]
}
