{
  "id": "5daaadda-685f-4474-a217-0293b398936b",
  "revision": 0,
  "last_node_id": 403,
  "last_link_id": 742,
  "nodes": [
    {
      "id": 326,
      "type": "PreviewImage",
      "pos": [
        -2140,
        4400
      ],
      "size": [
        250,
        310
      ],
      "flags": {},
      "order": 28,
      "mode": 0,
      "inputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "link": 634
        }
      ],
      "outputs": [],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "PreviewImage"
      },
      "widgets_values": []
    },
    {
      "id": 369,
      "type": "MaskPreview",
      "pos": [
        -3240,
        8120
      ],
      "size": [
        270,
        310
      ],
      "flags": {},
      "order": 13,
      "mode": 0,
      "inputs": [
        {
          "name": "mask",
          "type": "MASK",
          "link": 724
        }
      ],
      "outputs": [],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "MaskPreview"
      },
      "widgets_values": []
    },
    {
      "id": 367,
      "type": "PreviewImage",
      "pos": [
        -2730,
        6470
      ],
      "size": [
        270,
        310
      ],
      "flags": {},
      "order": 15,
      "mode": 0,
      "inputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "link": 681
        }
      ],
      "outputs": [],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "PreviewImage"
      },
      "widgets_values": []
    },
    {
      "id": 2,
      "type": "PreviewImage",
      "pos": [
        -3970,
        6060
      ],
      "size": [
        250,
        310
      ],
      "flags": {},
      "order": 9,
      "mode": 0,
      "inputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "link": 676
        }
      ],
      "outputs": [],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "PreviewImage"
      },
      "widgets_values": []
    },
    {
      "id": 1,
      "type": "EmptyImage",
      "pos": [
        -3980,
        5760
      ],
      "size": [
        270,
        200
      ],
      "flags": {},
      "order": 0,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            676,
            677,
            679
          ]
        }
      ],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "EmptyImage"
      },
      "widgets_values": [
        1024,
        1024,
        1,
        0
      ]
    },
    {
      "id": 374,
      "type": "LoadImage",
      "pos": [
        -3970,
        6570
      ],
      "size": [
        290,
        370
      ],
      "flags": {},
      "order": 1,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": null
        },
        {
          "name": "MASK",
          "type": "MASK",
          "links": null
        }
      ],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "LoadImage"
      },
      "widgets_values": [
        "example.png",
        "image"
      ]
    },
    {
      "id": 376,
      "type": "MaskComposite",
      "pos": [
        -2210,
        7710
      ],
      "size": [
        270,
        200
      ],
      "flags": {},
      "order": 22,
      "mode": 0,
      "inputs": [
        {
          "name": "destination",
          "type": "MASK",
          "link": 720
        },
        {
          "name": "source",
          "type": "MASK",
          "link": 727
        }
      ],
      "outputs": [
        {
          "name": "MASK",
          "type": "MASK",
          "links": [
            694
          ]
        }
      ],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "MaskComposite"
      },
      "widgets_values": [
        256,
        256,
        "multiply"
      ]
    },
    {
      "id": 378,
      "type": "MaskPreview",
      "pos": [
        -1480,
        7710
      ],
      "size": [
        230,
        310
      ],
      "flags": {},
      "order": 34,
      "mode": 0,
      "inputs": [
        {
          "name": "mask",
          "type": "MASK",
          "link": 694
        }
      ],
      "outputs": [],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "MaskPreview"
      },
      "widgets_values": []
    },
    {
      "id": 380,
      "type": "SolidMask",
      "pos": [
        -3240,
        8510
      ],
      "size": [
        270,
        170
      ],
      "flags": {},
      "order": 2,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "MASK",
          "type": "MASK",
          "links": [
            732,
            734,
            736
          ]
        }
      ],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "SolidMask"
      },
      "widgets_values": [
        1,
        512,
        512
      ]
    },
    {
      "id": 381,
      "type": "MaskPreview",
      "pos": [
        -3240,
        8770
      ],
      "size": [
        270,
        310
      ],
      "flags": {},
      "order": 11,
      "mode": 0,
      "inputs": [
        {
          "name": "mask",
          "type": "MASK",
          "link": 732
        }
      ],
      "outputs": [],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "MaskPreview"
      },
      "widgets_values": []
    },
    {
      "id": 383,
      "type": "MaskComposite",
      "pos": [
        -2760,
        7770
      ],
      "size": [
        270,
        200
      ],
      "flags": {},
      "order": 12,
      "mode": 0,
      "inputs": [
        {
          "name": "destination",
          "type": "MASK",
          "link": 703
        },
        {
          "name": "source",
          "type": "MASK",
          "link": 736
        }
      ],
      "outputs": [
        {
          "name": "MASK",
          "type": "MASK",
          "links": [
            705,
            717,
            720,
            721,
            722,
            723,
            737
          ]
        }
      ],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "MaskComposite"
      },
      "widgets_values": [
        128,
        128,
        "add"
      ]
    },
    {
      "id": 384,
      "type": "MaskPreview",
      "pos": [
        -2750,
        8030
      ],
      "size": [
        270,
        400
      ],
      "flags": {},
      "order": 20,
      "mode": 0,
      "inputs": [
        {
          "name": "mask",
          "type": "MASK",
          "link": 705
        }
      ],
      "outputs": [],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "MaskPreview"
      },
      "widgets_values": []
    },
    {
      "id": 387,
      "type": "MaskComposite",
      "pos": [
        -2210,
        8100
      ],
      "size": [
        270,
        200
      ],
      "flags": {},
      "order": 23,
      "mode": 0,
      "inputs": [
        {
          "name": "destination",
          "type": "MASK",
          "link": 721
        },
        {
          "name": "source",
          "type": "MASK",
          "link": 729
        }
      ],
      "outputs": [
        {
          "name": "MASK",
          "type": "MASK",
          "links": [
            709
          ]
        }
      ],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "MaskComposite"
      },
      "widgets_values": [
        256,
        256,
        "and"
      ]
    },
    {
      "id": 388,
      "type": "MaskPreview",
      "pos": [
        -1480,
        8100
      ],
      "size": [
        230,
        310
      ],
      "flags": {},
      "order": 35,
      "mode": 0,
      "inputs": [
        {
          "name": "mask",
          "type": "MASK",
          "link": 709
        }
      ],
      "outputs": [],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "MaskPreview"
      },
      "widgets_values": []
    },
    {
      "id": 389,
      "type": "MaskComposite",
      "pos": [
        -2210,
        8500
      ],
      "size": [
        270,
        200
      ],
      "flags": {},
      "order": 24,
      "mode": 0,
      "inputs": [
        {
          "name": "destination",
          "type": "MASK",
          "link": 722
        },
        {
          "name": "source",
          "type": "MASK",
          "link": 730
        }
      ],
      "outputs": [
        {
          "name": "MASK",
          "type": "MASK",
          "links": [
            712
          ]
        }
      ],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "MaskComposite"
      },
      "widgets_values": [
        256,
        256,
        "or"
      ]
    },
    {
      "id": 390,
      "type": "MaskPreview",
      "pos": [
        -1480,
        8500
      ],
      "size": [
        230,
        310
      ],
      "flags": {},
      "order": 36,
      "mode": 0,
      "inputs": [
        {
          "name": "mask",
          "type": "MASK",
          "link": 712
        }
      ],
      "outputs": [],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "MaskPreview"
      },
      "widgets_values": []
    },
    {
      "id": 391,
      "type": "MaskComposite",
      "pos": [
        -2210,
        8890
      ],
      "size": [
        270,
        200
      ],
      "flags": {},
      "order": 25,
      "mode": 0,
      "inputs": [
        {
          "name": "destination",
          "type": "MASK",
          "link": 723
        },
        {
          "name": "source",
          "type": "MASK",
          "link": 731
        }
      ],
      "outputs": [
        {
          "name": "MASK",
          "type": "MASK",
          "links": [
            715
          ]
        }
      ],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "MaskComposite"
      },
      "widgets_values": [
        256,
        256,
        "xor"
      ]
    },
    {
      "id": 392,
      "type": "MaskPreview",
      "pos": [
        -1480,
        8890
      ],
      "size": [
        230,
        310
      ],
      "flags": {},
      "order": 37,
      "mode": 0,
      "inputs": [
        {
          "name": "mask",
          "type": "MASK",
          "link": 715
        }
      ],
      "outputs": [],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "MaskPreview"
      },
      "widgets_values": []
    },
    {
      "id": 395,
      "type": "MarkdownNote",
      "pos": [
        -3300,
        5750
      ],
      "size": [
        380,
        460
      ],
      "flags": {},
      "order": 3,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "Note: Image & Mask Compositing",
      "properties": {},
      "widgets_values": [
        "Paste one image onto another — the **mask** decides where the overlay appears.\n\n**Empty Image** creates a quick test image (set width, height, and color).\n\n**Image Composite Masked** blends the source onto the destination at position x/y. Only the white area of the mask shows the overlay. Toggle *resize source* to stretch the source to match the destination size.\n\nThe mask here comes from the **Combine Masks** section below, passed through **Feather Mask** first — check the mask preview on the right to see the softened edges before compositing.\n\nRun the workflow and check the large **Preview Image** for the final result."
      ],
      "color": "#222",
      "bgcolor": "#000"
    },
    {
      "id": 396,
      "type": "MarkdownNote",
      "pos": [
        -3290,
        4310
      ],
      "size": [
        380,
        460
      ],
      "flags": {},
      "order": 4,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "Note: Mask Operations",
      "properties": {},
      "widgets_values": [
        "Masks are grayscale maps — **white** = active, **black** = inactive. They control *where* an effect applies.\n\nThis section walks through common mask tools:\n\n- **Image to Mask** — pull a mask from an image channel (red / green / blue / alpha)\n- **Mask to Image** — turn a mask into a visible grayscale image\n- **Invert Mask** — swap active and inactive areas\n- **Threshold Mask** — snap soft values to hard black/white using a cutoff\n- **Feather Mask** — fade the edges (set fade amount per side: left, top, right, bottom)\n\nUse **Preview Mask** nodes along the chain to inspect each step. Queue the workflow and follow left to right to see how a mask is built and refined."
      ],
      "color": "#222",
      "bgcolor": "#000"
    },
    {
      "id": 397,
      "type": "MarkdownNote",
      "pos": [
        -3260,
        7310
      ],
      "size": [
        380,
        460
      ],
      "flags": {},
      "order": 5,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "Note: Combine Masks",
      "properties": {},
      "widgets_values": [
        "Two masks are built on a gray canvas, then merged with different operations to show how each mode behaves.\n\n**Setup:** A gray **Solid Mask** (0.5) acts as the canvas. Two white squares are placed at different positions using **Combine Masks** with *add* — preview these first to see each shape.\n\n**Compare operations** on the overlapping pair (same x/y offset on each row):\n\n- **multiply** — keeps only where both masks overlap\n- **add** — brightens the overlapping area\n- **and** — white only where both are active\n- **or** — merges both shapes together\n- **xor** — keeps areas that don't overlap\n\nEach row has a **Preview Mask** — compare them side by side to see the difference."
      ],
      "color": "#222",
      "bgcolor": "#000"
    },
    {
      "id": 398,
      "type": "MaskComposite",
      "pos": [
        -2720,
        8500
      ],
      "size": [
        270,
        200
      ],
      "flags": {},
      "order": 14,
      "mode": 0,
      "inputs": [
        {
          "name": "destination",
          "type": "MASK",
          "link": 733
        },
        {
          "name": "source",
          "type": "MASK",
          "link": 734
        }
      ],
      "outputs": [
        {
          "name": "MASK",
          "type": "MASK",
          "links": [
            727,
            729,
            730,
            731,
            735,
            738
          ]
        }
      ],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "MaskComposite"
      },
      "widgets_values": [
        512,
        512,
        "add"
      ]
    },
    {
      "id": 399,
      "type": "MaskPreview",
      "pos": [
        -2710,
        8760
      ],
      "size": [
        270,
        400
      ],
      "flags": {},
      "order": 26,
      "mode": 0,
      "inputs": [
        {
          "name": "mask",
          "type": "MASK",
          "link": 735
        }
      ],
      "outputs": [],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "MaskPreview"
      },
      "widgets_values": []
    },
    {
      "id": 400,
      "type": "MaskComposite",
      "pos": [
        -2210,
        7320
      ],
      "size": [
        270,
        200
      ],
      "flags": {},
      "order": 27,
      "mode": 0,
      "inputs": [
        {
          "name": "destination",
          "type": "MASK",
          "link": 737
        },
        {
          "name": "source",
          "type": "MASK",
          "link": 738
        }
      ],
      "outputs": [
        {
          "name": "MASK",
          "type": "MASK",
          "links": [
            739
          ]
        }
      ],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "MaskComposite"
      },
      "widgets_values": [
        256,
        256,
        "add"
      ]
    },
    {
      "id": 401,
      "type": "MaskPreview",
      "pos": [
        -1480,
        7320
      ],
      "size": [
        230,
        310
      ],
      "flags": {},
      "order": 38,
      "mode": 0,
      "inputs": [
        {
          "name": "mask",
          "type": "MASK",
          "link": 739
        }
      ],
      "outputs": [],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "MaskPreview"
      },
      "widgets_values": []
    },
    {
      "id": 394,
      "type": "FeatherMask",
      "pos": [
        -2190,
        6840
      ],
      "size": [
        270,
        200
      ],
      "flags": {},
      "order": 21,
      "mode": 0,
      "inputs": [
        {
          "name": "mask",
          "type": "MASK",
          "link": 717
        }
      ],
      "outputs": [
        {
          "name": "MASK",
          "type": "MASK",
          "links": [
            718,
            740
          ]
        }
      ],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "FeatherMask"
      },
      "widgets_values": [
        40,
        40,
        40,
        40
      ]
    },
    {
      "id": 402,
      "type": "MaskPreview",
      "pos": [
        -1590,
        6840
      ],
      "size": [
        350,
        330
      ],
      "flags": {},
      "order": 33,
      "mode": 0,
      "inputs": [
        {
          "name": "mask",
          "type": "MASK",
          "link": 740
        }
      ],
      "outputs": [],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "MaskPreview"
      },
      "widgets_values": []
    },
    {
      "id": 377,
      "type": "SolidMask",
      "pos": [
        -3250,
        7900
      ],
      "size": [
        270,
        170
      ],
      "flags": {},
      "order": 6,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "MASK",
          "type": "MASK",
          "links": [
            703,
            724,
            733
          ]
        }
      ],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "SolidMask"
      },
      "widgets_values": [
        0.5,
        1024,
        1024
      ]
    },
    {
      "id": 5,
      "type": "ImageToMask",
      "pos": [
        -3290,
        4890
      ],
      "size": [
        270,
        110
      ],
      "flags": {},
      "order": 10,
      "mode": 0,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 677
        }
      ],
      "outputs": [
        {
          "name": "MASK",
          "type": "MASK",
          "links": [
            632,
            633,
            635,
            651
          ]
        }
      ],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "ImageToMask"
      },
      "widgets_values": [
        "red"
      ]
    },
    {
      "id": 4,
      "type": "MaskPreview",
      "pos": [
        -3280,
        5080
      ],
      "size": [
        270,
        390
      ],
      "flags": {},
      "order": 16,
      "mode": 0,
      "inputs": [
        {
          "name": "mask",
          "type": "MASK",
          "link": 632
        }
      ],
      "outputs": [],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "MaskPreview"
      },
      "widgets_values": []
    },
    {
      "id": 338,
      "type": "ThresholdMask",
      "pos": [
        -2550,
        4880
      ],
      "size": [
        270,
        110
      ],
      "flags": {},
      "order": 19,
      "mode": 0,
      "inputs": [
        {
          "name": "mask",
          "type": "MASK",
          "link": 651
        }
      ],
      "outputs": [
        {
          "name": "MASK",
          "type": "MASK",
          "links": [
            652
          ]
        }
      ],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "ThresholdMask"
      },
      "widgets_values": [
        0.4099999999999999
      ]
    },
    {
      "id": 340,
      "type": "MaskPreview",
      "pos": [
        -2150,
        4860
      ],
      "size": [
        250,
        310
      ],
      "flags": {},
      "order": 31,
      "mode": 0,
      "inputs": [
        {
          "name": "mask",
          "type": "MASK",
          "link": 652
        }
      ],
      "outputs": [],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "MaskPreview"
      },
      "widgets_values": []
    },
    {
      "id": 328,
      "type": "MaskPreview",
      "pos": [
        -2150,
        5300
      ],
      "size": [
        250,
        310
      ],
      "flags": {},
      "order": 29,
      "mode": 0,
      "inputs": [
        {
          "name": "mask",
          "type": "MASK",
          "link": 636
        }
      ],
      "outputs": [],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "MaskPreview"
      },
      "widgets_values": []
    },
    {
      "id": 3,
      "type": "MaskToImage",
      "pos": [
        -2550,
        4400
      ],
      "size": [
        230,
        80
      ],
      "flags": {},
      "order": 17,
      "mode": 0,
      "inputs": [
        {
          "name": "mask",
          "type": "MASK",
          "link": 633
        }
      ],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            634
          ]
        }
      ],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "MaskToImage"
      },
      "widgets_values": []
    },
    {
      "id": 327,
      "type": "InvertMask",
      "pos": [
        -2540,
        5290
      ],
      "size": [
        230,
        80
      ],
      "flags": {},
      "order": 18,
      "mode": 0,
      "inputs": [
        {
          "name": "mask",
          "type": "MASK",
          "link": 635
        }
      ],
      "outputs": [
        {
          "name": "MASK",
          "type": "MASK",
          "links": [
            636,
            742
          ]
        }
      ],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "InvertMask"
      },
      "widgets_values": []
    },
    {
      "id": 342,
      "type": "FeatherMask",
      "pos": [
        -1750,
        4850
      ],
      "size": [
        270,
        200
      ],
      "flags": {},
      "order": 30,
      "mode": 0,
      "inputs": [
        {
          "name": "mask",
          "type": "MASK",
          "link": 742
        }
      ],
      "outputs": [
        {
          "name": "MASK",
          "type": "MASK",
          "links": [
            655
          ]
        }
      ],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "FeatherMask"
      },
      "widgets_values": [
        200,
        0,
        0,
        0
      ]
    },
    {
      "id": 343,
      "type": "MaskPreview",
      "pos": [
        -1330,
        4840
      ],
      "size": [
        230,
        310
      ],
      "flags": {},
      "order": 39,
      "mode": 0,
      "inputs": [
        {
          "name": "mask",
          "type": "MASK",
          "link": 655
        }
      ],
      "outputs": [],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "MaskPreview"
      },
      "widgets_values": []
    },
    {
      "id": 359,
      "type": "ImageCompositeMasked",
      "pos": [
        -2240,
        5760
      ],
      "size": [
        270,
        220
      ],
      "flags": {},
      "order": 32,
      "mode": 0,
      "inputs": [
        {
          "name": "destination",
          "type": "IMAGE",
          "link": 679
        },
        {
          "name": "source",
          "type": "IMAGE",
          "link": 669
        },
        {
          "name": "mask",
          "shape": 7,
          "type": "MASK",
          "link": 718
        }
      ],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            682
          ]
        }
      ],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "ImageCompositeMasked"
      },
      "widgets_values": [
        0,
        0,
        false
      ]
    },
    {
      "id": 360,
      "type": "EmptyImage",
      "pos": [
        -2730,
        6200
      ],
      "size": [
        270,
        200
      ],
      "flags": {},
      "order": 7,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            669,
            681
          ]
        }
      ],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "EmptyImage"
      },
      "widgets_values": [
        1024,
        1024,
        1,
        16711680
      ]
    },
    {
      "id": 368,
      "type": "PreviewImage",
      "pos": [
        -1600,
        5760
      ],
      "size": [
        440,
        630
      ],
      "flags": {},
      "order": 40,
      "mode": 0,
      "inputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "link": 682
        }
      ],
      "outputs": [],
      "properties": {
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "cnr_id": "comfy-core",
        "ver": "0.22.0",
        "Node name for S&R": "PreviewImage"
      },
      "widgets_values": []
    },
    {
      "id": 373,
      "type": "MarkdownNote",
      "pos": [
        -4100,
        7090
      ],
      "size": [
        570,
        360
      ],
      "flags": {},
      "order": 8,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "properties": {},
      "widgets_values": [
        "## Try It Yourself\n\nReplace **Empty Image** with **Load Image** to use your own file. Open the **[Mask Editor](https://docs.comfy.org/interface/maskeditor)** on the Load Image node to draw a mask directly on your image.\n\nConnect the image and mask outputs into any section above to see how the nodes respond to real data — this is the fastest way to learn."
      ],
      "color": "#222",
      "bgcolor": "#000"
    }
  ],
  "links": [
    [
      632,
      5,
      0,
      4,
      0,
      "MASK"
    ],
    [
      633,
      5,
      0,
      3,
      0,
      "MASK"
    ],
    [
      634,
      3,
      0,
      326,
      0,
      "IMAGE"
    ],
    [
      635,
      5,
      0,
      327,
      0,
      "MASK"
    ],
    [
      636,
      327,
      0,
      328,
      0,
      "MASK"
    ],
    [
      651,
      5,
      0,
      338,
      0,
      "MASK"
    ],
    [
      652,
      338,
      0,
      340,
      0,
      "MASK"
    ],
    [
      655,
      342,
      0,
      343,
      0,
      "MASK"
    ],
    [
      669,
      360,
      0,
      359,
      1,
      "IMAGE"
    ],
    [
      676,
      1,
      0,
      2,
      0,
      "IMAGE"
    ],
    [
      677,
      1,
      0,
      5,
      0,
      "IMAGE"
    ],
    [
      679,
      1,
      0,
      359,
      0,
      "IMAGE"
    ],
    [
      681,
      360,
      0,
      367,
      0,
      "IMAGE"
    ],
    [
      682,
      359,
      0,
      368,
      0,
      "IMAGE"
    ],
    [
      694,
      376,
      0,
      378,
      0,
      "MASK"
    ],
    [
      703,
      377,
      0,
      383,
      0,
      "MASK"
    ],
    [
      705,
      383,
      0,
      384,
      0,
      "MASK"
    ],
    [
      709,
      387,
      0,
      388,
      0,
      "MASK"
    ],
    [
      712,
      389,
      0,
      390,
      0,
      "MASK"
    ],
    [
      715,
      391,
      0,
      392,
      0,
      "MASK"
    ],
    [
      717,
      383,
      0,
      394,
      0,
      "MASK"
    ],
    [
      718,
      394,
      0,
      359,
      2,
      "MASK"
    ],
    [
      720,
      383,
      0,
      376,
      0,
      "MASK"
    ],
    [
      721,
      383,
      0,
      387,
      0,
      "MASK"
    ],
    [
      722,
      383,
      0,
      389,
      0,
      "MASK"
    ],
    [
      723,
      383,
      0,
      391,
      0,
      "MASK"
    ],
    [
      724,
      377,
      0,
      369,
      0,
      "MASK"
    ],
    [
      727,
      398,
      0,
      376,
      1,
      "MASK"
    ],
    [
      729,
      398,
      0,
      387,
      1,
      "MASK"
    ],
    [
      730,
      398,
      0,
      389,
      1,
      "MASK"
    ],
    [
      731,
      398,
      0,
      391,
      1,
      "MASK"
    ],
    [
      732,
      380,
      0,
      381,
      0,
      "MASK"
    ],
    [
      733,
      377,
      0,
      398,
      0,
      "MASK"
    ],
    [
      734,
      380,
      0,
      398,
      1,
      "MASK"
    ],
    [
      735,
      398,
      0,
      399,
      0,
      "MASK"
    ],
    [
      736,
      380,
      0,
      383,
      1,
      "MASK"
    ],
    [
      737,
      383,
      0,
      400,
      0,
      "MASK"
    ],
    [
      738,
      398,
      0,
      400,
      1,
      "MASK"
    ],
    [
      739,
      400,
      0,
      401,
      0,
      "MASK"
    ],
    [
      740,
      394,
      0,
      402,
      0,
      "MASK"
    ],
    [
      742,
      327,
      0,
      342,
      0,
      "MASK"
    ]
  ],
  "groups": [
    {
      "id": 1,
      "title": "Mask Operations",
      "bounding": [
        -3320,
        4210,
        2270,
        1420
      ],
      "color": "#3f789e",
      "flags": {}
    },
    {
      "id": 3,
      "title": "Image & Mask Compositing",
      "bounding": [
        -3320,
        5650,
        2270,
        1540
      ],
      "color": "#3f789e",
      "flags": {}
    },
    {
      "id": 4,
      "title": "Example Input",
      "bounding": [
        -4100,
        5670,
        540,
        730
      ],
      "color": "#3f789e",
      "flags": {}
    },
    {
      "id": 5,
      "title": "Try It Yourself",
      "bounding": [
        -4100,
        6440,
        540,
        580
      ],
      "color": "#3f789e",
      "flags": {}
    },
    {
      "id": 6,
      "title": "Combine Masks",
      "bounding": [
        -3320,
        7220,
        2250,
        2030
      ],
      "color": "#3f789e",
      "flags": {}
    }
  ],
  "config": {},
  "extra": {
    "ds": {
      "scale": 0.10451831122505054,
      "offset": [
        10727.07219644071,
        -1198.359907925089
      ]
    },
    "frontendVersion": "1.43.18",
    "VHS_latentpreview": false,
    "VHS_latentpreviewrate": 0,
    "VHS_MetadataImage": true,
    "VHS_KeepIntermediate": true
  },
  "version": 0.4
}