{
  "id": "cf7b7934-f029-4ce0-a790-789a0e54efcb",
  "revision": 0,
  "last_node_id": 4992,
  "last_link_id": 47427,
  "nodes": [
    {
      "id": 2019,
      "type": "LoadImage",
      "pos": [
        -4610,
        -1780
      ],
      "size": [
        420,
        540
      ],
      "flags": {
        "pinned": true
      },
      "order": 0,
      "mode": 2,
      "inputs": [],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "slot_index": 0,
          "links": [
            44633
          ]
        },
        {
          "name": "MASK",
          "type": "MASK",
          "links": null
        }
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.3.30",
        "Node name for S&R": "LoadImage",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.5.1",
          "input_ue_unconnectable": {}
        },
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65
      },
      "widgets_values": [
        "ddeaa3a7-74e1-4be6-bec0-adbcbb4bfea4.png",
        "image"
      ],
      "widgets_values_named": {
        "image": "ddeaa3a7-74e1-4be6-bec0-adbcbb4bfea4.png",
        "upload": "image"
      },
      "color": "#366b19",
      "bgcolor": "#225705",
      "shape": 2
    },
    {
      "id": 2004,
      "type": "QwenImageDiffsynthControlnet",
      "pos": [
        -5130,
        -1970
      ],
      "size": [
        230,
        190
      ],
      "flags": {
        "collapsed": false,
        "pinned": true
      },
      "order": 218,
      "mode": 4,
      "inputs": [
        {
          "name": "model",
          "type": "MODEL",
          "link": 18791
        },
        {
          "name": "model_patch",
          "type": "MODEL_PATCH",
          "link": 18792
        },
        {
          "name": "vae",
          "type": "VAE",
          "link": null
        },
        {
          "name": "image",
          "type": "IMAGE",
          "link": 44642
        },
        {
          "name": "mask",
          "shape": 7,
          "type": "MASK",
          "link": null
        }
      ],
      "outputs": [
        {
          "name": "MODEL",
          "type": "MODEL",
          "links": [
            43493
          ]
        }
      ],
      "title": "Controlnet",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.3.76",
        "Node name for S&R": "QwenImageDiffsynthControlnet",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.5.2"
        },
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65
      },
      "widgets_values": [
        0.75,
        0,
        1
      ],
      "widgets_values_named": {
        "strength": 0.75,
        "start_percent": 0,
        "end_percent": 1
      },
      "color": "#2a1ed1",
      "bgcolor": "#160abd",
      "shape": 2
    },
    {
      "id": 1289,
      "type": "SeedVarianceEnhancer",
      "pos": [
        -3180,
        -2880
      ],
      "size": [
        270,
        250
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 206,
      "mode": 0,
      "inputs": [
        {
          "name": "conditioning",
          "type": "CONDITIONING",
          "link": 46721
        },
        {
          "name": "seed",
          "type": "INT",
          "widget": {
            "name": "seed"
          },
          "link": 45935
        }
      ],
      "outputs": [
        {
          "name": "CONDITIONING",
          "type": "CONDITIONING",
          "links": [
            46722
          ]
        }
      ],
      "title": "Seed Variance Enhancer",
      "properties": {
        "cnr_id": "seedvarianceenhancer",
        "ver": "2.1.0",
        "Node name for S&R": "SeedVarianceEnhancer",
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "ue_properties": {
          "widget_ue_connectable": {
            "seed": true
          },
          "version": "7.5.2",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        42,
        20,
        "noise on beginning steps",
        20,
        0,
        "fixed",
        "beginning",
        0,
        true
      ],
      "widgets_values_named": {
        "randomize_percent": 42,
        "strength": 20,
        "noise_insert": "noise on beginning steps",
        "steps_switchover_percent": 20,
        "seed": 0,
        "control_after_generate": "fixed",
        "mask_starts_at": "beginning",
        "mask_percent": 0,
        "log_to_console": true
      },
      "color": "#332922",
      "bgcolor": "#593930"
    },
    {
      "id": 3001,
      "type": "GetNode",
      "pos": [
        -5140,
        -2330
      ],
      "size": [
        210,
        60
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 1,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            43399
          ]
        }
      ],
      "title": "Get_Pro Post",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Pro Post"
      ],
      "widgets_values_named": {
        "Constant": "Pro Post"
      },
      "color": "#2a363b",
      "bgcolor": "#3f5159"
    },
    {
      "id": 2007,
      "type": "LCNote",
      "pos": [
        -5120,
        -1760
      ],
      "size": [
        480,
        520
      ],
      "flags": {
        "pinned": true
      },
      "order": 2,
      "mode": 4,
      "inputs": [],
      "outputs": [],
      "title": "Notes",
      "properties": {
        "lc_note": {
          "source": "en",
          "texts": {
            "en": {
              "text": "## 🛑🚫✋ The switches may need to be reset when bypassed!\n\n### Instructions:\n- **⚠️ Does not always work with model variants!!**\n- 💡I've noticed that controlnet likes to leave artifacts around the edges (*especially along the left side*). Use the **✂️ Crop 📷** tool in the post processing suite to deal with it.\n- Upload an Image or mask\n- Set the switch for which you want to use\n\n### Image:\n- Set the AIO Aux Controlnet type (i.e. depth, Canny, etc.)\n- **🛑 I cannot stress enough how important it is to have clear images loaded!!!**\n\n### Controlnet settings. \n- Strength = 0.8-1.0 (adjust for weaker or blurry) \n\n\n### Best choices:\n\n\n- CannyEdgePreprocessor. #1 choice\n- DepthAnythingV2 for depth map\n- Lineart or Manga2 for Anime analysis"
            },
            "zh": {
              "text": "## 🛑🚫✋ 被绕过（bypass）后，开关可能需要重新设置！\n\n### 使用说明：\n- **⚠️ 并不是对所有模型变体都有效！！**\n- 💡我发现 controlnet 喜欢在边缘留下瑕疵（*尤其是左侧*）。用后处理套件里的 **✂️ Crop 📷** 工具来处理。\n- 上传图像或遮罩\n- 设置你要使用哪一个开关\n\n### 图像：\n- 设置 AIO Aux Controlnet 类型（比如 depth、Canny 等）\n- **🛑 再怎么强调都不为过：载入的图像一定要清晰！！！**\n\n### Controlnet 设置。 \n- Strength = 0.8-1.0（太弱或模糊就调整一下） \n\n\n### 最佳选择：\n\n\n- CannyEdgePreprocessor。首选\n- DepthAnythingV2 做深度图\n- Lineart 或 Manga2 用于动漫分析",
              "src": "e4c07584",
              "srcTitle": "Notes"
            },
            "ja": {
              "text": "## 🛑🚫✋ スイッチは、バイパスしたあとリセットが必要なことがあります！\n\n### 使い方:\n- **⚠️ モデルのバリアントでは、いつも動くとは限りません！！**\n- 💡 controlnet は端（*特に左側*）にアーティファクトを残しがちです。後処理スイートの **✂️ Crop 📷** ツールで対処してください。\n- 画像またはマスクをアップロードします\n- 使いたいものに合わせてスイッチを設定します\n\n### 画像:\n- AIO Aux Controlnet のタイプ（depth、Canny など）を設定します\n- **🛑 クリアな画像を読み込むことが、どれだけ大事か強調してもしきれません！！！**\n\n### Controlnet 設定 \n- Strength = 0.8〜1.0（弱い、またはぼやける場合は調整）\n\n\n### おすすめ:\n\n\n- CannyEdgePreprocessor。第1候補\n- depth map には DepthAnythingV2\n- アニメの解析には Lineart か Manga2",
              "src": "e4c07584",
              "srcTitle": "Notes"
            },
            "ko": {
              "text": "## 🛑🚫✋ 스위치를 바이패스했다면 다시 설정해야 할 수 있습니다!\n\n### 사용법:\n- **⚠️ 모델 변형에서는 항상 작동하지 않습니다!!**\n- 💡controlnet은 가장자리(*특히 왼쪽*)에 아티팩트를 남기는 경향이 있습니다. 후처리 스위트의 **✂️ Crop 📷** 도구로 처리하세요.\n- 이미지 또는 마스크를 업로드하세요\n- 사용할 쪽의 스위치를 설정하세요\n\n### 이미지:\n- AIO Aux Controlnet 종류를 설정하세요 (depth, Canny 등)\n- **🛑 선명한 이미지를 넣는 게 얼마나 중요한지 아무리 강조해도 지나치지 않습니다!!!**\n\n### Controlnet 설정. \n- Strength = 0.8-1.0 (약하거나 흐릿하면 조정) \n\n\n### 추천 선택:\n\n\n- CannyEdgePreprocessor. 1순위\n- depth map은 DepthAnythingV2\n- 애니메 분석에는 Lineart 또는 Manga2",
              "src": "e4c07584",
              "srcTitle": "Notes"
            }
          },
          "titles": {
            "en": "Notes",
            "zh": "说明",
            "ja": "メモ",
            "ko": "참고"
          }
        },
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "English ✏️",
        "## 🛑🚫✋ The switches may need to be reset when bypassed!\n\n### Instructions:\n- **⚠️ Does not always work with model variants!!**\n- 💡I've noticed that controlnet likes to leave artifacts around the edges (*especially along the left side*). Use the **✂️ Crop 📷** tool in the post processing suite to deal with it.\n- Upload an Image or mask\n- Set the switch for which you want to use\n\n### Image:\n- Set the AIO Aux Controlnet type (i.e. depth, Canny, etc.)\n- **🛑 I cannot stress enough how important it is to have clear images loaded!!!**\n\n### Controlnet settings. \n- Strength = 0.8-1.0 (adjust for weaker or blurry) \n\n\n### Best choices:\n\n\n- CannyEdgePreprocessor. #1 choice\n- DepthAnythingV2 for depth map\n- Lineart or Manga2 for Anime analysis"
      ],
      "widgets_values_named": {
        "language": "English ✏️",
        "text": "## 🛑🚫✋ The switches may need to be reset when bypassed!\n\n### Instructions:\n- **⚠️ Does not always work with model variants!!**\n- 💡I've noticed that controlnet likes to leave artifacts around the edges (*especially along the left side*). Use the **✂️ Crop 📷** tool in the post processing suite to deal with it.\n- Upload an Image or mask\n- Set the switch for which you want to use\n\n### Image:\n- Set the AIO Aux Controlnet type (i.e. depth, Canny, etc.)\n- **🛑 I cannot stress enough how important it is to have clear images loaded!!!**\n\n### Controlnet settings. \n- Strength = 0.8-1.0 (adjust for weaker or blurry) \n\n\n### Best choices:\n\n\n- CannyEdgePreprocessor. #1 choice\n- DepthAnythingV2 for depth map\n- Lineart or Manga2 for Anime analysis"
      },
      "color": "#2E3A46",
      "bgcolor": "#2E3A46"
    },
    {
      "id": 3061,
      "type": "SetNode",
      "pos": [
        -4980,
        -2330
      ],
      "size": [
        210,
        60
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 240,
      "mode": 0,
      "inputs": [
        {
          "name": "LC_PIPE",
          "type": "LC_PIPE",
          "link": 43416
        }
      ],
      "outputs": [
        {
          "name": "LC_PIPE",
          "type": "LC_PIPE",
          "links": null
        }
      ],
      "title": "Set_📐 Aspect Pipe",
      "properties": {
        "Node name for S&R": "SetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "previousName": "📐 Aspect Pipe",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "📐 Aspect Pipe"
      ],
      "widgets_values_named": {
        "Constant": "📐 Aspect Pipe"
      }
    },
    {
      "id": 2000,
      "type": "GetNode",
      "pos": [
        -4890,
        -1970
      ],
      "size": [
        210,
        40
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 3,
      "mode": 4,
      "inputs": [],
      "outputs": [
        {
          "name": "MODEL_PATCH",
          "type": "MODEL_PATCH",
          "links": [
            18792
          ]
        }
      ],
      "title": "Get_Model Patch",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.5.2",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Model Patch"
      ],
      "widgets_values_named": {
        "Constant": "Model Patch"
      }
    },
    {
      "id": 2856,
      "type": "AspectRatioSimplifier",
      "pos": [
        -5140,
        -2880
      ],
      "size": [
        330,
        450
      ],
      "flags": {
        "pinned": true
      },
      "order": 134,
      "mode": 0,
      "inputs": [
        {
          "name": "image",
          "shape": 7,
          "type": "IMAGE",
          "link": 42647
        },
        {
          "name": "mask",
          "shape": 7,
          "type": "MASK",
          "link": null
        },
        {
          "name": "resolution_source",
          "type": "BOOLEAN",
          "widget": {
            "name": "resolution_source"
          },
          "link": 47330
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            42658,
            44648,
            45444
          ]
        },
        {
          "name": "mask",
          "type": "MASK",
          "links": [
            43415
          ]
        },
        {
          "name": "width",
          "type": "INT",
          "links": [
            43411,
            44634
          ]
        },
        {
          "name": "height",
          "type": "INT",
          "links": [
            43414,
            44635
          ]
        },
        {
          "name": "latent",
          "type": "LATENT",
          "links": [
            47332
          ]
        },
        {
          "name": "batch",
          "type": "INT",
          "links": [
            43405
          ]
        },
        {
          "name": "resolution",
          "type": "INT",
          "links": [
            43902
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "e94dcb2eed828bfda759d17e41b87ea54c566c5f",
        "Node name for S&R": "AspectRatioSimplifier",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        1904,
        false,
        "3:4 (Portrait Standard) - 896x1152",
        1024,
        1024,
        "Off",
        "lanczos",
        "crop",
        "center",
        "0, 0, 0",
        16,
        1
      ],
      "widgets_values_named": {
        "max_resolution": 1904,
        "resolution_source": false,
        "aspect_ratio": "3:4 (Portrait Standard) - 896x1152",
        "custom_width": 1024,
        "custom_height": 1024,
        "swap_dimensions": "Off",
        "upscale_method": "lanczos",
        "proportion": "crop",
        "crop_location": "center",
        "pad_color": "0, 0, 0",
        "divisible_by": 16,
        "batch_size": 1
      },
      "color": "#233",
      "bgcolor": "#355"
    },
    {
      "id": 2003,
      "type": "GetNode",
      "pos": [
        -5140,
        -2290
      ],
      "size": [
        210,
        40
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 4,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "MODEL",
          "type": "MODEL",
          "links": [
            18791
          ]
        }
      ],
      "title": "Get_Lora Model",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.5.2",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Lora Model"
      ],
      "widgets_values_named": {
        "Constant": "Lora Model"
      },
      "color": "#223",
      "bgcolor": "#335",
      "shape": 2
    },
    {
      "id": 3058,
      "type": "LCDynamicOverlay",
      "pos": [
        -4170,
        -2020
      ],
      "size": [
        560,
        800
      ],
      "flags": {
        "pinned": true
      },
      "order": 219,
      "mode": 0,
      "inputs": [
        {
          "label": "Final Image",
          "name": "image_a",
          "type": "IMAGE",
          "link": 43399
        },
        {
          "label": "Original Image",
          "name": "image_b",
          "type": "IMAGE",
          "link": 44650
        }
      ],
      "outputs": [
        {
          "name": "blended Image",
          "type": "IMAGE",
          "links": null
        }
      ],
      "title": "🥅 Controlnet Comaprison",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "b5960f890540269a90c505ed069026c97a76513f",
        "Node name for S&R": "LCDynamicOverlay",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        0.51
      ],
      "widgets_values_named": {
        "opacity": 0.51
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 3064,
      "type": "Label (rgthree)",
      "pos": [
        -5140,
        -2420
      ],
      "size": [
        326.984375,
        16
      ],
      "flags": {
        "allow_interaction": false,
        "pinned": true
      },
      "order": 5,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "💡 adjust Max resolution down for low VRAM ",
      "properties": {
        "fontSize": 16,
        "fontFamily": "Arial",
        "fontColor": "#ffffff",
        "textAlign": "left",
        "backgroundColor": "transparent",
        "padding": 0,
        "borderRadius": 0,
        "angle": 0,
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#fff0",
      "bgcolor": "#fff0"
    },
    {
      "id": 2031,
      "type": "Fast Groups Muter (rgthree)",
      "pos": [
        -4620,
        -2020
      ],
      "size": [
        440,
        100
      ],
      "flags": {
        "pinned": true
      },
      "order": 6,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "OPT_CONNECTION",
          "type": "*",
          "links": null
        }
      ],
      "title": "Picture or Mask?",
      "properties": {
        "matchColors": "",
        "matchTitle": "'",
        "showNav": false,
        "showAllGraphs": true,
        "sort": "position",
        "customSortAlphabet": "",
        "toggleRestriction": "max one",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.5.2"
        },
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65
      },
      "color": "#ff4646",
      "bgcolor": "#fa3232",
      "shape": 2
    },
    {
      "id": 3065,
      "type": "LC Groups Bypasser",
      "pos": [
        -5140,
        -2210
      ],
      "size": [
        390,
        120
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 7,
      "mode": 0,
      "inputs": [
        {
          "name": "#    !📝 Prompt Assist",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "#   !🥅Controlnet",
          "type": "BOOLEAN",
          "link": null
        }
      ],
      "outputs": [
        {
          "name": "OPT_CONNECTION",
          "type": "*",
          "links": [
            43431
          ]
        }
      ],
      "properties": {
        "matchTitle": "!",
        "matchColors": "",
        "sort": "position",
        "toggleRestriction": "default",
        "lcBindings": {
          "id:393": {
            "value": true,
            "originId": null
          },
          "id:385": {
            "value": true,
            "originId": null
          },
          "id:369": {
            "value": true,
            "originId": null
          },
          "id:381": {
            "value": true,
            "originId": null
          },
          "id:380": {
            "value": true,
            "originId": null,
            "originSlot": null
          },
          "id:186": {
            "value": true,
            "originId": null
          },
          "id:384": {
            "value": true,
            "originId": null
          },
          "id:368": {
            "value": true,
            "originId": null
          },
          "id:383": {
            "value": true,
            "originId": null
          },
          "id:174": {
            "value": true,
            "originId": null
          },
          "id:200": {
            "value": true,
            "originId": null
          },
          "id:167": {
            "value": true,
            "originId": null
          },
          "id:370": {
            "value": true,
            "originId": null
          },
          "id:367": {
            "value": true,
            "originId": null
          },
          "id:371": {
            "value": true,
            "originId": null
          },
          "id:175": {
            "value": true,
            "originId": null
          },
          "id:176": {
            "value": true,
            "originId": null
          },
          "id:285": {
            "value": false,
            "originId": null,
            "originSlot": null
          },
          "id:277": {
            "value": true,
            "originId": null
          },
          "id:366": {
            "value": true,
            "originId": null
          },
          "id:292": {
            "value": true,
            "originId": null
          },
          "id:293": {
            "value": true,
            "originId": null
          },
          "id:294": {
            "value": true,
            "originId": null
          },
          "id:295": {
            "value": true,
            "originId": null
          },
          "id:296": {
            "value": true,
            "originId": null
          },
          "id:278": {
            "value": true,
            "originId": null
          },
          "id:291": {
            "value": true,
            "originId": null
          },
          "id:297": {
            "value": true,
            "originId": null
          },
          "id:27": {
            "value": true,
            "originId": null
          },
          "id:249": {
            "value": true,
            "originId": null
          },
          "id:388": {
            "value": true,
            "originId": null
          },
          "id:250": {
            "value": true,
            "originId": null
          },
          "id:248": {
            "value": true,
            "originId": null
          },
          "id:391": {
            "value": true,
            "originId": null
          },
          "id:389": {
            "value": true,
            "originId": null
          },
          "id:390": {
            "value": true,
            "originId": null
          },
          "id:392": {
            "value": true,
            "originId": null
          }
        },
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        true,
        false
      ],
      "widgets_values_named": {
        "Enable 1": true,
        "Enable 2": false
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 3096,
      "type": "LCPromptToConditioning",
      "pos": [
        -1730,
        -2290
      ],
      "size": [
        270,
        50
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 168,
      "mode": 0,
      "inputs": [
        {
          "name": "clip",
          "type": "CLIP",
          "link": 45933
        },
        {
          "name": "string",
          "type": "STRING",
          "link": 43509
        }
      ],
      "outputs": [
        {
          "name": "conditioning",
          "type": "CONDITIONING",
          "links": [
            43479
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "b5960f890540269a90c505ed069026c97a76513f",
        "Node name for S&R": "LCPromptToConditioning",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#322",
      "bgcolor": "#533"
    },
    {
      "id": 3097,
      "type": "LCPromptToConditioning",
      "pos": [
        -1730,
        -2330
      ],
      "size": [
        270,
        50
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 186,
      "mode": 0,
      "inputs": [
        {
          "name": "clip",
          "type": "CLIP",
          "link": 45932
        },
        {
          "name": "string",
          "type": "STRING",
          "link": 47341
        }
      ],
      "outputs": [
        {
          "name": "conditioning",
          "type": "CONDITIONING",
          "links": [
            46721
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "b5960f890540269a90c505ed069026c97a76513f",
        "Node name for S&R": "LCPromptToConditioning",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 1275,
      "type": "GetNode",
      "pos": [
        -1730,
        -2410
      ],
      "size": [
        210,
        50
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 8,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "STRING",
          "type": "STRING",
          "links": [
            43505
          ]
        }
      ],
      "title": "Get_Prompt Tag",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.5.2",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Prompt Tag"
      ],
      "widgets_values_named": {
        "Constant": "Prompt Tag"
      }
    },
    {
      "id": 3100,
      "type": "LCJoinStrings",
      "pos": [
        -1730,
        -2370
      ],
      "size": [
        330,
        130
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 115,
      "mode": 0,
      "inputs": [
        {
          "name": "string_1",
          "shape": 7,
          "type": "STRING",
          "link": 43614
        },
        {
          "name": "string_2",
          "shape": 7,
          "type": "STRING",
          "link": 43505
        }
      ],
      "outputs": [
        {
          "name": "string",
          "type": "STRING",
          "links": [
            45180
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "b5960f890540269a90c505ed069026c97a76513f",
        "Node name for S&R": "LCJoinStrings",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        2,
        " "
      ],
      "widgets_values_named": {
        "inputcount": 2,
        "delimiter": " "
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 1292,
      "type": "ModelSamplingAuraFlow",
      "pos": [
        -3200,
        -2820
      ],
      "size": [
        290,
        90
      ],
      "flags": {
        "collapsed": false,
        "pinned": true
      },
      "order": 121,
      "mode": 0,
      "inputs": [
        {
          "label": "model",
          "name": "model",
          "type": "MODEL",
          "link": 46194
        }
      ],
      "outputs": [
        {
          "label": "MODEL",
          "name": "MODEL",
          "type": "MODEL",
          "links": [
            45928
          ]
        }
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.7.0",
        "Node name for S&R": "ModelSamplingAuraFlow",
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.5.2",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        3.5,
        "flow"
      ],
      "widgets_values_named": {
        "shift": 3.5,
        "sampling": "flow"
      },
      "color": "#222",
      "bgcolor": "#000",
      "shape": 2
    },
    {
      "id": 1291,
      "type": "CLIPSetLastLayer",
      "pos": [
        -3200,
        -2680
      ],
      "size": [
        290,
        60
      ],
      "flags": {
        "collapsed": false,
        "pinned": true
      },
      "order": 122,
      "mode": 0,
      "inputs": [
        {
          "label": "clip",
          "name": "clip",
          "type": "CLIP",
          "link": 46189
        }
      ],
      "outputs": [
        {
          "label": "CLIP",
          "name": "CLIP",
          "type": "CLIP",
          "links": [
            45929
          ]
        }
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.7.0",
        "Node name for S&R": "CLIPSetLastLayer",
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.5.2",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        -2
      ],
      "widgets_values_named": {
        "stop_at_clip_layer": -2
      },
      "color": "#222",
      "bgcolor": "#000",
      "shape": 2
    },
    {
      "id": 3103,
      "type": "LCNegative",
      "pos": [
        -2900,
        -2680
      ],
      "size": [
        500,
        100
      ],
      "flags": {
        "pinned": true
      },
      "order": 9,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "negative",
          "type": "STRING",
          "links": [
            43508,
            43509
          ]
        }
      ],
      "title": "Negative (Not used for Turbo)",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "b5960f890540269a90c505ed069026c97a76513f",
        "Node name for S&R": "LCNegative",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "bad anatomy, bad hands, watermark, ugly, distorted, censored, lowres, pixelated, distorted, jpeg artifacts, signature, (watermark), overexposed, underexposed, missing fingers, extra fingers, missing limbs, extra limbs, bad eyes, cloned face"
      ],
      "widgets_values_named": {
        "negative": "bad anatomy, bad hands, watermark, ugly, distorted, censored, lowres, pixelated, distorted, jpeg artifacts, signature, (watermark), overexposed, underexposed, missing fingers, extra fingers, missing limbs, extra limbs, bad eyes, cloned face"
      },
      "color": "#643232",
      "bgcolor": "#643232"
    },
    {
      "id": 1271,
      "type": "SetNode",
      "pos": [
        -1520,
        -2290
      ],
      "size": [
        210,
        50
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 112,
      "mode": 0,
      "inputs": [
        {
          "name": "MODEL_PATCH",
          "type": "MODEL_PATCH",
          "link": 13790
        }
      ],
      "outputs": [
        {
          "name": "*",
          "type": "*",
          "links": null
        }
      ],
      "title": "Set_Model Patch",
      "properties": {
        "Node name for S&R": "SetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "previousName": "Model Patch",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.5.2",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Model Patch"
      ],
      "widgets_values_named": {
        "Constant": "Model Patch"
      },
      "color": "#323",
      "bgcolor": "#535"
    },
    {
      "id": 3068,
      "type": "GetNode",
      "pos": [
        -1520,
        -2450
      ],
      "size": [
        210,
        60
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 10,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "LC_PIPE",
          "type": "LC_PIPE",
          "links": [
            43432
          ]
        }
      ],
      "title": "Get_📐 Aspect Pipe",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "📐 Aspect Pipe"
      ],
      "widgets_values_named": {
        "Constant": "📐 Aspect Pipe"
      }
    },
    {
      "id": 3099,
      "type": "SetNode",
      "pos": [
        -1520,
        -2330
      ],
      "size": [
        210,
        60
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 230,
      "mode": 0,
      "inputs": [
        {
          "name": "LC_PIPE",
          "type": "LC_PIPE",
          "link": 43503
        }
      ],
      "outputs": [
        {
          "name": "LC_PIPE",
          "type": "LC_PIPE",
          "links": null
        }
      ],
      "title": "Set_Pipe",
      "properties": {
        "Node name for S&R": "SetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "previousName": "Pipe",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Pipe"
      ],
      "widgets_values_named": {
        "Constant": "Pipe"
      }
    },
    {
      "id": 2032,
      "type": "AIO_Preprocessor",
      "pos": [
        -5570,
        -1940
      ],
      "size": [
        420,
        90
      ],
      "flags": {
        "pinned": true
      },
      "order": 183,
      "mode": 4,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 45445
        },
        {
          "name": "resolution",
          "shape": 7,
          "type": "INT",
          "widget": {
            "name": "resolution"
          },
          "link": 43902
        }
      ],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            44639,
            44649
          ]
        }
      ],
      "properties": {
        "cnr_id": "comfyui_controlnet_aux",
        "ver": "1.1.3",
        "Node name for S&R": "AIO_Preprocessor",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.5.2"
        },
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65
      },
      "widgets_values": [
        "DepthAnythingV2Preprocessor",
        512
      ],
      "widgets_values_named": {
        "preprocessor": "DepthAnythingV2Preprocessor",
        "resolution": 512
      },
      "color": "#e92424",
      "bgcolor": "#d51010"
    },
    {
      "id": 2006,
      "type": "PreviewImage",
      "pos": [
        -5570,
        -1810
      ],
      "size": [
        420,
        560
      ],
      "flags": {
        "pinned": true
      },
      "order": 217,
      "mode": 4,
      "inputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "link": 44641
        }
      ],
      "outputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "links": null
        }
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.7.0",
        "Node name for S&R": "PreviewImage",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.5.2"
        },
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65
      },
      "color": "#233",
      "bgcolor": "#355",
      "shape": 2
    },
    {
      "id": 1316,
      "type": "Anything Everywhere",
      "pos": [
        -1730,
        -2170
      ],
      "size": [
        190,
        90
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 123,
      "mode": 0,
      "inputs": [
        {
          "color_on": "#FF6E6E",
          "label": "VAE",
          "name": "anything12",
          "type": "VAE",
          "link": 46192
        },
        {
          "label": "anything",
          "name": "anything19",
          "type": "*",
          "link": null
        }
      ],
      "outputs": [],
      "properties": {
        "cnr_id": "cg-use-everywhere",
        "ver": "7.5.2",
        "Node name for S&R": "Anything Everywhere",
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "ue_properties": {
          "version": "7.5.2",
          "group_restricted": 0,
          "color_restricted": 0,
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "title_regex": null,
          "input_regex": null,
          "group_regex": null,
          "title_regex_invert": false,
          "input_regex_invert": false,
          "group_regex_invert": false,
          "repeated_type_rule": 0,
          "string_to_combo": 0,
          "next_input_index": 19
        }
      },
      "color": "#222",
      "bgcolor": "#000",
      "shape": 2
    },
    {
      "id": 3159,
      "type": "LC Groups Bypasser",
      "pos": [
        -1730,
        -2450
      ],
      "size": [
        420,
        1510
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 11,
      "mode": 0,
      "inputs": [
        {
          "name": "#    !📝 Prompt Assist",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "#   LC Vision📝",
          "type": "BOOLEAN",
          "link": null
        }
      ],
      "outputs": [
        {
          "name": "OPT_CONNECTION",
          "type": "*",
          "links": [
            43615
          ]
        }
      ],
      "properties": {
        "matchTitle": "📝",
        "matchColors": "",
        "sort": "position",
        "toggleRestriction": "default",
        "lcBindings": {
          "id:404": {
            "value": true,
            "originId": null
          },
          "id:383": {
            "value": true,
            "originId": null
          },
          "id:395": {
            "value": true,
            "originId": null
          },
          "id:393": {
            "value": true,
            "originId": null
          },
          "id:396": {
            "value": true,
            "originId": null
          },
          "id:385": {
            "value": true,
            "originId": null
          },
          "id:381": {
            "value": true,
            "originId": null
          },
          "id:380": {
            "value": true,
            "originId": null,
            "originSlot": null
          },
          "id:397": {
            "value": true,
            "originId": null
          },
          "id:394": {
            "value": true,
            "originId": null
          },
          "id:398": {
            "value": true,
            "originId": null
          },
          "id:174": {
            "value": true,
            "originId": null
          },
          "id:200": {
            "value": false,
            "originId": null,
            "originSlot": null
          },
          "id:167": {
            "value": true,
            "originId": null
          },
          "id:175": {
            "value": true,
            "originId": null
          },
          "id:176": {
            "value": true,
            "originId": null
          },
          "id:402": {
            "value": true,
            "originId": null
          },
          "id:285": {
            "value": true,
            "originId": null
          },
          "id:399": {
            "value": true,
            "originId": null
          },
          "id:400": {
            "value": true,
            "originId": null
          },
          "id:401": {
            "value": true,
            "originId": null
          },
          "id:277": {
            "value": true,
            "originId": null
          },
          "id:366": {
            "value": true,
            "originId": null
          },
          "id:278": {
            "value": true,
            "originId": null
          },
          "id:27": {
            "value": true,
            "originId": null
          },
          "id:291": {
            "value": true,
            "originId": null
          },
          "id:249": {
            "value": true,
            "originId": null
          },
          "id:388": {
            "value": true,
            "originId": null
          },
          "id:250": {
            "value": true,
            "originId": null
          },
          "id:248": {
            "value": true,
            "originId": null
          },
          "id:391": {
            "value": true,
            "originId": null
          },
          "id:389": {
            "value": true,
            "originId": null
          },
          "id:390": {
            "value": true,
            "originId": null
          },
          "id:392": {
            "value": true,
            "originId": null
          }
        },
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        true,
        false
      ],
      "widgets_values_named": {
        "Enable 1": true,
        "Enable 2": false
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 3069,
      "type": "LCSamplerConfigure",
      "pos": [
        -3200,
        -2570
      ],
      "size": [
        290,
        380
      ],
      "flags": {
        "pinned": true
      },
      "order": 12,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "total_steps",
          "type": "INT",
          "links": [
            43433
          ]
        },
        {
          "name": "cfg_1",
          "type": "FLOAT",
          "links": [
            43434
          ]
        },
        {
          "name": "denoise",
          "type": "FLOAT",
          "links": [
            43435
          ]
        },
        {
          "name": "step_swap",
          "type": "INT",
          "links": [
            43436
          ]
        },
        {
          "name": "cfg_2",
          "type": "FLOAT",
          "links": [
            43437
          ]
        },
        {
          "name": "sampler_name",
          "type": "COMBO",
          "links": [
            43438
          ]
        },
        {
          "name": "scheduler",
          "type": "COMBO",
          "links": [
            43439
          ]
        },
        {
          "name": "detailer_steps",
          "type": "INT",
          "links": [
            43440
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "b5960f890540269a90c505ed069026c97a76513f",
        "Node name for S&R": "LCSamplerConfigure",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "lc_w": 290,
        "lc_h": 380
      },
      "widgets_values": [
        10,
        8,
        8,
        1,
        "",
        1,
        1,
        "",
        "euler",
        "simple"
      ],
      "widgets_values_named": {
        "total_steps": 10,
        "step_swap": 8,
        "detailer_steps": 8,
        "denoise": 1,
        "_gap1": "",
        "cfg_1": 1,
        "cfg_2": 1,
        "_gap2": "",
        "sampler_name": "euler",
        "scheduler": "simple"
      },
      "color": "#707070",
      "bgcolor": "#707070"
    },
    {
      "id": 1301,
      "type": "ModelPatchLoader",
      "pos": [
        -3540,
        -2400
      ],
      "size": [
        330,
        60
      ],
      "flags": {
        "pinned": true
      },
      "order": 13,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "MODEL_PATCH",
          "type": "MODEL_PATCH",
          "links": [
            13790
          ]
        }
      ],
      "title": "ModelPatchLoader (Turbo)",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.3.51",
        "Node name for S&R": "ModelPatchLoader",
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.5.2"
        },
        "models": [
          {
            "name": "Z-Image-Turbo-Fun-Controlnet-Union.safetensors",
            "url": "https://huggingface.co/alibaba-pai/Z-Image-Turbo-Fun-Controlnet-Union/resolve/main/Z-Image-Turbo-Fun-Controlnet-Union.safetensors",
            "directory": "model_patches"
          }
        ]
      },
      "widgets_values": [
        "Z-Image-Turbo-Fun-Controlnet-Union-2.1.safetensors"
      ],
      "widgets_values_named": {
        "name": "Z-Image-Turbo-Fun-Controlnet-Union-2.1.safetensors"
      },
      "color": "#233",
      "bgcolor": "#355",
      "shape": 2
    },
    {
      "id": 1318,
      "type": "Fast Groups Bypasser (rgthree)",
      "pos": [
        -3540,
        -1570
      ],
      "size": [
        320,
        370
      ],
      "flags": {
        "pinned": true
      },
      "order": 14,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "OPT_CONNECTION",
          "type": "*",
          "links": null
        }
      ],
      "title": "Bypasser",
      "properties": {
        "matchColors": "",
        "matchTitle": "#",
        "showNav": false,
        "showAllGraphs": true,
        "sort": "alphanumeric",
        "customSortAlphabet": "",
        "toggleRestriction": "default",
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65,
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.5.2"
        }
      },
      "color": "#cc8119",
      "bgcolor": "#b86d05",
      "shape": 2
    },
    {
      "id": 1118,
      "type": "LCNote",
      "pos": [
        -4890,
        -270
      ],
      "size": [
        840,
        1410
      ],
      "flags": {
        "pinned": true
      },
      "order": 15,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "Instructions (4.1.2)",
      "properties": {
        "lc_note": {
          "source": "en",
          "texts": {
            "en": {
              "text": "\n#   Instructions\n\n---\n\n@[card: Follow me](https://civitai.com/user/lonecatone23)\n\n@[card: Follow me](https://www.instagram.com/synth.studio.models/)\n\n@[card: Get my stuff here](https://github.com/lonecatone23)\n\n@[card: Get my models here](https://huggingface.co/Lonecatone23)\n\n\n@[card: Buy me a ☕](https://ko-fi.com/lonecatone)\n\n### This is many hours of work. If you enjoy it, please 👍 like, 💬 comment, and feel free to ⚡ tip 😉\n\n---\n\n## General:\n# 🛑🚫✋ Do not manually bypass anything! There are switches for everything.\n### ⚠️ If you get a \"NoneType:\" error, it's the controlnet switches, no image in i2i or mask, or you don't have a sampler turned on. \n### 💾 Save info:\n- NOTHING SAVES UNLESS IT IS TURNED ON! \n- 📂 The folder labels are in the \"Save Group\" if you want to change them.\n- **Save Post Process** saves the final image without metadata. Use this to enter it manually on CivitAI if the checkpoint does not show up.\n### Models & Checkpoints:\n\n**Z-Image:**\n- Z- Image Turbo GGUF [Swift Fast GGUF (top choice)](https://civitai.red/models/2534952/swift-fast-and-detailed-zit-model)\n- [Base Diffusion Model:](https://civitai.red/api/download/models/2635223?fileId=2523459)\n- [Base GGUF Models](https://huggingface.co/jayn7/Z-Image-GGUF/tree/main)\n\n**Klein_9b**\n\n- [Klein_9b](https://civitai.red/api/download/models/2612554?fileId=2502518)\n\n\n**Text Encoders**\n- Z-Image [qwen3-4b=hereticv2-Q8.gguf](https://huggingface.co/Lockout/qwen3-4b-heretic-zimage/tree/main) (needs a GGUF Clip loader)\n- Klein_9b [GGUF Tree](https://huggingface.co/Mungert/Qwen3-8B-abliterated-GGUF/tree/main)\n\n\n\n\n**VAE:**\n\n\n- Z-Image base & Turbo: [Z-Image](https://civitai.red/api/download/models/3082494?fileId=2961769)\n- Klein_9b: [Flux 2 Ultra Raw](https://civitai.red/models/2661016/flux2-ultrahd-raw-vae)\n\n\n**Model patch**\n- [https://huggingface.co/alibaba-pai/Z-Image-Turbo-Fun-Controlnet-Union-2.0/tree/main](https://huggingface.co/alibaba-pai/Z-Image-Turbo-Fun-Controlnet-Union-2.0/tree/main)\n- Use ver 2.1\n\n**LC123 Nodes**\n- [LC123_Nodes](https://github.com/lonecatone23/ComfyUI_LC123_nodes)\n---\n- ***Settings*** \n- **Z-Image Base**\n   - 25-30 steps\n   - cfg 4.0\n- **Z-Image Turbo**\n   - 9-11 steps\n   - cfg 1.0-2.0\n---\n\n### 📐 Aspect Ratio Simplifier:\n- You can choose to use the Image Resolution or use a preset dimension or your own. \n- If you use your own, make sure to set the preset to \"custom\".\n- 💡 Lower the **Max Resolution** to save VRAM\n\n### Qwen VL Prompt enhancer\n- This is basically a pruned LLM model that enhances your prompt. Enter the instructions on what it should do. \n- The size of the prompt massively affects the generation speed. I have left two different instruction templates in the \"Notes\" section.\n### Seed Variance Enhancer:\n- randomize_percent: lower is subtle, higher is strong.\n- Noise Amount: Between 20-30. \n- Noise insert: Beginning steps work best.\n### LC Stop 🛑:\n- When enabled, it stops the workflow at this point (no hirez, detail, etc.).\n- Draft is saved (if \"Save Draft\" is turned on).\n- Notify 🔊 should ding (on portable version only). \n- Instructions to change the sound are in the notes area. (delete if not needed).\n### Upscale tips and tricks:\n- If you struggle with low VRAM, setting the aspect ratio low and using SEED VR2 on the other side will help generation issues. \n- Tiled vs. not tiled:    Tiling breaks the image up, greatly speeds up processing time, but sacrifices (a little bit of) quality. Set them as high as possible.  \n### Hi-REZ upscale:\n- Use Ultra Sharp, Nickelback, or ESRGAN for realism.\n- Use Anime sharp for...well... Anime.\n- If you struggle with VRAM, use the slider at the bottom. It increases the amount of tiles by decreasing the size. Use it only to prevent OOM issues or brick ups. \n- [upscale models](https://huggingface.co/uwg/upscaler/tree/main/ESRGAN)\n- If you struggle with noise (often from poorly made Loras), this will do a slightly better job of cleaning it. [Denoise Model](https://github.com/cszn/KAIR/releases/download/v1.0/scunet_color_real_gan.pth)\n### Detailers:\n- **(ZIT VERSION ONLY)** ✋ Make sure to use a checkpoint that matches your style of work. (i.e. Realism, Anime)\n- Change the sampler and scheduler accordingly.\n- Face & hands detector [here](https://huggingface.co/Bingsu/adetailer/tree/main)\n- Eyes [here](https://huggingface.co/jayr23/Eyeful/tree/main)\n- **Yolo: what's the difference between V8n & V8s?** The \"n\" stands for \"nano\" less accurate but less VRAM. Use S whenever possible. This is typically an issue on the face detailer.\n### 🚫 Detailers NSFW (if applicable):\n- Turn off female if you are going to use male or you may get odd results.\n- ⚠️ There are two different types of detailers. The SEGs and the SAM detailers. Each works differently and with different models. You will get a weird error if you put the wrong model in the SEGs loader. It's mainly for body. Use the other two for specifics.\n- [female body detection](https://civitai.com/models/1816953/female-body-detection)\n- [Male Body Parts Detection](https://civitai.com/models/301092/cock-and-ball-detection-adetailer)\n- Place them in the segm folder (see below).\n- [Other body parts (watch what you download)](https://huggingface.co/ashllay/YOLO_Models/tree/main/bbox)\n- If this is not the NSFW Version and you would like it, I should have it on my [CivitAI page](https://civitai.com/user/lonecatone23) or message me.\n### Seed VR2 Upscaler:\n- [Watch this video](https://www.youtube.com/watch?v=MBtWYXq_r60).\n- This is set up for low VRAM. For higher VRAM, turn off tiling in the VAE and then increase resolution.\n- Debug is on. If you watch the log, it will warn you or tell you that you have more space to increase.  \n*Automatic Downloads*\n- The selected model and VAE files will be downloaded automatically on first use.\n- ⚠️ Because these models are large, the download may take several minutes.\n- Monitor the console log for download progress.\n- Manual download into the 📂`ComfyUI\\models\\SEEDVR2` directory is possible. \n- Models can be found [here](https://huggingface.co/numz/SeedVR2_comfyUI/tree/main) and [here](https://huggingface.co/AInVFX/SeedVR2_comfyUI/tree/main).\n\n### LUT\n- You can get free LUTs [HERE](https://freshluts.com)\n- See below for folder location  \n\n***DING!*** (play sound)\n- Only works on the portable version for some reason\n- Directions to add your own are below.\n- You have to manually enter the name of the file (case sensitive).\n\n\n### File Locations\n\n```\n📂 ComfyUI/\n├── 📂 models/\n│   ├── 📂 model_patches\n│   │      └── Z-Image-Turbo-Fun-Controlnet-Union-2.1\n│   ├── 📂 luts\n│   │      └── Lut files\n│   ├── 📂 SEED VR2\n│   │      └── All files\n│   ├── 📂 uralytics\n│   │      └── 📂 segm\n│   │             └──detection files\n│   ├── 📂 upscale_models\n│   │      └── upscale models (Ersgan, Nickelback, etc.)\n\n```"
            },
            "zh": {
              "text": "\n#   使用说明\n\n---\n\n@[card: 关注我](https://civitai.com/user/lonecatone23)\n\n@[card: 关注我](https://www.instagram.com/synth.studio.models/)\n\n@[card: 在这里获取我的作品](https://github.com/lonecatone23)\n\n@[card: 在这里获取我的模型](https://huggingface.co/Lonecatone23)\n\n\n@[card: 请我喝杯 ☕](https://ko-fi.com/lonecatone)\n\n### 这是花了很多个小时做出来的。如果你喜欢，请 👍 点赞、💬 留言，也欢迎 ⚡ 打赏 😉\n\n---\n\n## 总则：\n# 🛑🚫✋ 不要手动绕过任何东西！每样东西都有开关。\n### ⚠️ 如果出现 “NoneType:” 错误，原因是 controlnet 开关、i2i 或遮罩里没有图像，或者你没有打开任何 sampler。 \n### 💾 保存说明：\n- 不打开就什么都不会保存！ \n- 📂 文件夹标签在 “Save Group” 里，想改可以去那里改。\n- **Save Post Process** 保存不带元数据的最终图像。如果 CivitAI 上识别不出 checkpoint，用它来手动填写。\n### 模型与 Checkpoint：\n\n**Z-Image：**\n- Z- Image Turbo GGUF [Swift Fast GGUF（首选）](https://civitai.red/models/2534952/swift-fast-and-detailed-zit-model)\n- [Base 扩散模型：](https://civitai.red/api/download/models/2635223?fileId=2523459)\n- [Base GGUF 模型](https://huggingface.co/jayn7/Z-Image-GGUF/tree/main)\n\n**Klein_9b**\n\n- [Klein_9b](https://civitai.red/api/download/models/2612554?fileId=2502518)\n\n\n**文本编码器**\n- Z-Image [qwen3-4b=hereticv2-Q8.gguf](https://huggingface.co/Lockout/qwen3-4b-heretic-zimage/tree/main)（需要 GGUF Clip 加载器）\n- Klein_9b [GGUF 目录](https://huggingface.co/Mungert/Qwen3-8B-abliterated-GGUF/tree/main)\n\n\n\n\n**VAE：**\n\n\n- Z-Image base 和 Turbo：[Z-Image](https://civitai.red/api/download/models/3082494?fileId=2961769)\n- Klein_9b：[Flux 2 Ultra Raw](https://civitai.red/models/2661016/flux2-ultrahd-raw-vae)\n\n\n**Model patch**\n- [https://huggingface.co/alibaba-pai/Z-Image-Turbo-Fun-Controlnet-Union-2.0/tree/main](https://huggingface.co/alibaba-pai/Z-Image-Turbo-Fun-Controlnet-Union-2.0/tree/main)\n- 请用 2.1 版\n\n**LC123 节点**\n- [LC123_Nodes](https://github.com/lonecatone23/ComfyUI_LC123_nodes)\n---\n- ***设置*** \n- **Z-Image Base**\n   - 25-30 步\n   - cfg 4.0\n- **Z-Image Turbo**\n   - 9-11 步\n   - cfg 1.0-2.0\n---\n\n### 📐 Aspect Ratio Simplifier：\n- 你可以选择使用图像分辨率，或使用预设尺寸，或自定义尺寸。 \n- 如果用自己的尺寸，记得把预设设为 “custom”。\n- 💡 降低 **Max Resolution** 可以省 VRAM\n\n### Qwen VL 提示词增强器\n- 这基本上是一个精简过的 LLM 模型，用来增强你的提示词。在里面写明它该做什么。 \n- 提示词的大小对生成速度影响很大。我在 “Notes” 部分留了两套不同的指令模板。\n### Seed Variance Enhancer：\n- randomize_percent：低则细微，高则强烈。\n- Noise Amount：20-30 之间。 \n- Noise insert：最前面的步数效果最好。\n### LC Stop 🛑：\n- 启用后，工作流会在这一步停下（不做 hirez、细化等）。\n- 草稿会被保存（如果 “Save Draft” 开着）。\n- Notify 🔊 应该会响提示音（仅限便携版）。 \n- 更改声音的说明在笔记区域里。（不需要的话可以删掉）。\n### 放大技巧：\n- 如果你的 VRAM 不够，把宽高比设低，再在另一端用 SEED VR2，能缓解生成问题。 \n- 分块 vs 不分块：分块会把图像切开，大幅加快处理速度，但会牺牲（一点点）质量。请尽量设高。  \n### Hi-REZ 放大：\n- 写实用 Ultra Sharp、Nickelback 或 ESRGAN。\n- 动漫用 Anime sharp。嗯……当然是动漫。\n- 如果 VRAM 吃紧，用最下面的滑块。它通过减小分块尺寸来增加分块数量。只在为了避免 OOM 或卡死时使用。 \n- [放大模型](https://huggingface.co/uwg/upscaler/tree/main/ESRGAN)\n- 如果你受噪点困扰（常来自做得不好的 Lora），这个能把它清理得稍微好一些。[降噪模型](https://github.com/cszn/KAIR/releases/download/v1.0/scunet_color_real_gan.pth)\n### 细化器：\n- **（仅限 ZIT 版本）** ✋ 务必使用与你作品风格相符的 checkpoint。（例如写实、动漫）\n- 相应地更改 sampler 和 scheduler。\n- 脸部和手部检测器在[这里](https://huggingface.co/Bingsu/adetailer/tree/main)\n- 眼睛在[这里](https://huggingface.co/jayr23/Eyeful/tree/main)\n- **Yolo：V8n 和 V8s 有什么区别？** “n” 代表 “nano”，精度较低但占用 VRAM 少。尽量用 S。这一点通常是脸部细化器会遇到的问题。\n### 🚫 细化器 NSFW（如适用）：\n- 如果要用男性，请关掉 female，否则可能出现奇怪的结果。\n- ⚠️ 细化器有两种：SEGs 和 SAM 细化器。它们的工作方式不同，用的模型也不同。如果把错的模型放进 SEGs 加载器，会得到一个奇怪的错误。它主要用于身体。具体部位请用另外两个。\n- [女性身体检测](https://civitai.com/models/1816953/female-body-detection)\n- [男性身体部位检测](https://civitai.com/models/301092/cock-and-ball-detection-adetailer)\n- 把它们放进 segm 文件夹（见下文）。\n- [其他身体部位（下载时请小心）](https://huggingface.co/ashllay/YOLO_Models/tree/main/bbox)\n- 如果这不是 NSFW 版本而你想要，应该能在我的 [CivitAI 主页](https://civitai.com/user/lonecatone23)找到，或者私信我。\n### Seed VR2 放大器：\n- [看这个视频](https://www.youtube.com/watch?v=MBtWYXq_r60)。\n- 这是按低 VRAM 设置的。VRAM 更大的话，关掉 VAE 里的分块，再提高分辨率。\n- Debug 是开着的。看日志的话，它会提醒你，或告诉你还有多余空间可以提高。  \n*自动下载*\n- 所选的模型和 VAE 文件会在首次使用时自动下载。\n- ⚠️ 这些模型很大，下载可能要几分钟。\n- 请留意控制台日志里的下载进度。\n- 也可以手动下载到 📂`ComfyUI\\models\\SEEDVR2` 目录。 \n- 模型可以在[这里](https://huggingface.co/numz/SeedVR2_comfyUI/tree/main)和[这里](https://huggingface.co/AInVFX/SeedVR2_comfyUI/tree/main)找到。\n\n### LUT\n- 可以在[这里](https://freshluts.com)获取免费 LUT\n- 文件夹位置见下文  \n\n***DING！***（播放声音）\n- 不知道为什么，只在便携版上有效\n- 添加你自己声音的方法见下文。\n- 你得手动输入文件名（区分大小写）。\n\n\n### 文件位置\n\n```\n📂 ComfyUI/\n├── 📂 models/\n│   ├── 📂 model_patches\n│   │      └── Z-Image-Turbo-Fun-Controlnet-Union-2.1\n│   ├── 📂 luts\n│   │      └── Lut files\n│   ├── 📂 SEED VR2\n│   │      └── All files\n│   ├── 📂 uralytics\n│   │      └── 📂 segm\n│   │             └──detection files\n│   ├── 📂 upscale_models\n│   │      └── upscale models (Ersgan, Nickelback, etc.)\n\n```",
              "src": "683935cd",
              "srcTitle": "Instructions (4.1.2)"
            },
            "ja": {
              "text": "\n#   手順\n\n---\n\n@[card: フォローはこちら](https://civitai.com/user/lonecatone23)\n\n@[card: フォローはこちら](https://www.instagram.com/synth.studio.models/)\n\n@[card: 私の作品はこちら](https://github.com/lonecatone23)\n\n@[card: 私のモデルはこちら](https://huggingface.co/Lonecatone23)\n\n\n@[card: ☕をおごる](https://ko-fi.com/lonecatone)\n\n### 何時間もかけて作りました。気に入ったら、👍 いいね、💬 コメント、そして ⚡ チップもお気軽に 😉\n\n---\n\n## 全般:\n# 🛑🚫✋ 手動でバイパスしないでください! すべてにスイッチがあります。\n### ⚠️ \"NoneType:\" エラーが出たら、原因はcontrolnetのスイッチか、i2iやマスクに画像がないか、samplerがオンになっていないかのどれかです。\n### 💾 保存について:\n- オンにしないと何も保存されません!\n- 📂 フォルダのラベルを変えたいときは、\"Save Group\" の中にあります。\n- **Save Post Process** は、メタデータなしで最終画像を保存します。チェックポイントがCivitAIで表示されないときに、手動で入力するために使ってください。\n### モデルとチェックポイント:\n\n**Z-Image:**\n- Z-Image Turbo GGUF [Swift Fast GGUF (イチオシ)](https://civitai.red/models/2534952/swift-fast-and-detailed-zit-model)\n- [Base Diffusion Model:](https://civitai.red/api/download/models/2635223?fileId=2523459)\n- [Base GGUF Models](https://huggingface.co/jayn7/Z-Image-GGUF/tree/main)\n\n**Klein_9b**\n\n- [Klein_9b](https://civitai.red/api/download/models/2612554?fileId=2502518)\n\n\n**Text Encoders**\n- Z-Image [qwen3-4b=hereticv2-Q8.gguf](https://huggingface.co/Lockout/qwen3-4b-heretic-zimage/tree/main) (GGUF Clip loaderが必要)\n- Klein_9b [GGUF Tree](https://huggingface.co/Mungert/Qwen3-8B-abliterated-GGUF/tree/main)\n\n\n\n\n**VAE:**\n\n\n- Z-Image base & Turbo: [Z-Image](https://civitai.red/api/download/models/3082494?fileId=2961769)\n- Klein_9b: [Flux 2 Ultra Raw](https://civitai.red/models/2661016/flux2-ultrahd-raw-vae)\n\n\n**Model patch**\n- [https://huggingface.co/alibaba-pai/Z-Image-Turbo-Fun-Controlnet-Union-2.0/tree/main](https://huggingface.co/alibaba-pai/Z-Image-Turbo-Fun-Controlnet-Union-2.0/tree/main)\n- ver 2.1 を使ってください\n\n**LC123 Nodes**\n- [LC123_Nodes](https://github.com/lonecatone23/ComfyUI_LC123_nodes)\n---\n- ***設定***\n- **Z-Image Base**\n   - 25-30 steps\n   - cfg 4.0\n- **Z-Image Turbo**\n   - 9-11 steps\n   - cfg 1.0-2.0\n---\n\n### 📐 Aspect Ratio Simplifier:\n- Image Resolutionを使うか、プリセットの寸法、または自分の寸法を使えます。\n- 自分の寸法を使う場合は、プリセットを\"custom\"に設定してください。\n- 💡 VRAMを節約するには **Max Resolution** を下げます\n\n### Qwen VL Prompt enhancer\n- 基本的には、プロンプトを強化する軽量化(pruned)されたLLMモデルです。何をしてほしいか、指示を入力してください。\n- プロンプトのサイズは生成速度に大きく影響します。2種類の指示テンプレートを\"Notes\"セクションに残してあります。\n### Seed Variance Enhancer:\n- randomize_percent: 低いと控えめ、高いと強め。\n- Noise Amount: 20-30の間。\n- Noise insert: 初期のステップが一番効きます。\n### LC Stop 🛑:\n- 有効にすると、この地点でワークフローを止めます(hirez、detailなどは実行されません)。\n- ドラフトが保存されます(\"Save Draft\"がオンの場合)。\n- Notify 🔊 が鳴るはずです(ポータブル版のみ)。\n- 音を変える手順は、ノートエリアにあります。(不要なら削除してください)。\n### アップスケールのコツ:\n- Low VRAMで苦労しているなら、aspect ratioを低く設定して、反対側でSEED VR2を使うと、生成の問題が改善します。\n- Tiled vs. not tiled:    Tilingは画像を分割して処理時間を大幅に短縮しますが、(ほんの少し)画質を犠牲にします。できるだけ高く設定してください。\n### Hi-REZ upscale:\n- リアル系にはUltra Sharp、Nickelback、ESRGANを使います。\n- アニメにはAnime sharpを使います...まあ、そのとおりです。\n- VRAMが厳しいときは、一番下のスライダーを使います。サイズを小さくしてタイル数を増やします。OOM対策や詰まり防止のためだけに使ってください。\n- [upscale models](https://huggingface.co/uwg/upscaler/tree/main/ESRGAN)\n- ノイズ(出来の悪いLoRA由来が多い)に悩むなら、こちらの方が少しきれいに除去できます。[Denoise Model](https://github.com/cszn/KAIR/releases/download/v1.0/scunet_color_real_gan.pth)\n### Detailers:\n- **(ZIT版のみ)** ✋ 自分の作風(リアル、アニメなど)に合ったチェックポイントを使ってください。\n- それに応じてsamplerとschedulerを変更してください。\n- 顔と手の検出モデルは[こちら](https://huggingface.co/Bingsu/adetailer/tree/main)\n- 目は[こちら](https://huggingface.co/jayr23/Eyeful/tree/main)\n- **Yolo: V8nとV8sの違いは?** \"n\"は\"nano\"の略で、精度は低めですがVRAMは少なくて済みます。可能な限りSを使ってください。特にface detailerで問題になりがちです。\n### 🚫 Detailers NSFW (該当する場合):\n- 男性を使う場合は、femaleをオフにしないと、おかしな結果になることがあります。\n- ⚠️ detailerには2種類あります。SEGsとSAMのdetailerです。それぞれ動作も使うモデルも違います。SEGs loaderに間違ったモデルを入れると、変なエラーが出ます。主に体用です。細かい部位には他の2つを使ってください。\n- [female body detection](https://civitai.com/models/1816953/female-body-detection)\n- [Male Body Parts Detection](https://civitai.com/models/301092/cock-and-ball-detection-adetailer)\n- segmフォルダに入れてください(下を参照)。\n- [Other body parts (ダウンロードするものに注意)](https://huggingface.co/ashllay/YOLO_Models/tree/main/bbox)\n- これがNSFW版でなく、NSFW版が欲しい場合は、私の[CivitAIページ](https://civitai.com/user/lonecatone23)にあるはずです。またはメッセージをください。\n### Seed VR2 Upscaler:\n- [この動画を見てください](https://www.youtube.com/watch?v=MBtWYXq_r60)。\n- Low VRAM向けの設定です。VRAMに余裕があるなら、VAEのtilingをオフにして、解像度を上げてください。\n- Debugはオンです。ログを見ると、もっと上げられる余裕があるときに警告や知らせが出ます。  \n*自動ダウンロード*\n- 選択したモデルとVAEファイルは、初回使用時に自動でダウンロードされます。\n- ⚠️ これらのモデルは大きいので、ダウンロードに数分かかることがあります。\n- ダウンロードの進行状況はコンソールログで確認してください。\n- 📂`ComfyUI\\models\\SEEDVR2` ディレクトリに手動でダウンロードすることもできます。\n- モデルは[こちら](https://huggingface.co/numz/SeedVR2_comfyUI/tree/main)と[こちら](https://huggingface.co/AInVFX/SeedVR2_comfyUI/tree/main)にあります。\n\n### LUT\n- 無料のLUTは[こちら](https://freshluts.com)で入手できます\n- フォルダの場所は下を参照  \n\n***DING!***(サウンド再生)\n- なぜかポータブル版でしか動きません\n- 自分のサウンドを追加する手順は下にあります。\n- ファイル名は手入力する必要があります(大文字小文字を区別)。\n\n\n### ファイルの場所\n\n```\n📂 ComfyUI/\n├── 📂 models/\n│   ├── 📂 model_patches\n│   │      └── Z-Image-Turbo-Fun-Controlnet-Union-2.1\n│   ├── 📂 luts\n│   │      └── Lut files\n│   ├── 📂 SEED VR2\n│   │      └── All files\n│   ├── 📂 uralytics\n│   │      └── 📂 segm\n│   │             └──detection files\n│   ├── 📂 upscale_models\n│   │      └── upscale models (Ersgan, Nickelback, etc.)\n\n```\n",
              "src": "683935cd",
              "srcTitle": "Instructions (4.1.2)"
            },
            "ko": {
              "text": "\n#   안내\n\n---\n\n@[card: 팔로우하기](https://civitai.com/user/lonecatone23)\n\n@[card: 팔로우하기](https://www.instagram.com/synth.studio.models/)\n\n@[card: 제 작업물은 여기서](https://github.com/lonecatone23)\n\n@[card: 제 모델은 여기서](https://huggingface.co/Lonecatone23)\n\n\n@[card: ☕ 한 잔 사주기](https://ko-fi.com/lonecatone)\n\n### 이건 정말 많은 시간을 들인 작업입니다. 마음에 드셨다면 👍 좋아요, 💬 댓글 부탁드리고, ⚡ 팁도 환영합니다 😉\n\n---\n\n## 일반:\n# 🛑🚫✋ 직접 바이패스하지 마세요! 모든 것에 스위치가 있습니다.\n### ⚠️ \"NoneType:\" 오류가 나면 controlnet 스위치, i2i나 마스크에 이미지가 없는 경우, 또는 sampler를 켜지 않은 경우입니다. \n### 💾 저장 정보:\n- 켜져 있지 않으면 아무것도 저장되지 않습니다! \n- 📂 폴더 이름은 \"Save Group\"에 있으니 바꾸고 싶으면 거기서 바꾸세요.\n- **Save Post Process**는 메타데이터 없이 최종 이미지를 저장합니다. 체크포인트가 CivitAI에 표시되지 않을 때 직접 입력하는 용도로 쓰세요.\n### 모델 & 체크포인트:\n\n**Z-Image:**\n- Z- Image Turbo GGUF [Swift Fast GGUF (최고의 선택)](https://civitai.red/models/2534952/swift-fast-and-detailed-zit-model)\n- [Base Diffusion Model:](https://civitai.red/api/download/models/2635223?fileId=2523459)\n- [Base GGUF Models](https://huggingface.co/jayn7/Z-Image-GGUF/tree/main)\n\n**Klein_9b**\n\n- [Klein_9b](https://civitai.red/api/download/models/2612554?fileId=2502518)\n\n\n**텍스트 인코더**\n- Z-Image [qwen3-4b=hereticv2-Q8.gguf](https://huggingface.co/Lockout/qwen3-4b-heretic-zimage/tree/main) (GGUF Clip 로더 필요)\n- Klein_9b [GGUF Tree](https://huggingface.co/Mungert/Qwen3-8B-abliterated-GGUF/tree/main)\n\n\n\n\n**VAE:**\n\n\n- Z-Image base & Turbo: [Z-Image](https://civitai.red/api/download/models/3082494?fileId=2961769)\n- Klein_9b: [Flux 2 Ultra Raw](https://civitai.red/models/2661016/flux2-ultrahd-raw-vae)\n\n\n**Model patch**\n- [https://huggingface.co/alibaba-pai/Z-Image-Turbo-Fun-Controlnet-Union-2.0/tree/main](https://huggingface.co/alibaba-pai/Z-Image-Turbo-Fun-Controlnet-Union-2.0/tree/main)\n- 2.1 버전을 쓰세요\n\n**LC123 노드**\n- [LC123_Nodes](https://github.com/lonecatone23/ComfyUI_LC123_nodes)\n---\n- ***설정*** \n- **Z-Image Base**\n   - 25-30 steps\n   - cfg 4.0\n- **Z-Image Turbo**\n   - 9-11 steps\n   - cfg 1.0-2.0\n---\n\n### 📐 Aspect Ratio Simplifier:\n- Image Resolution을 쓰거나, 프리셋 크기 또는 직접 정한 크기를 쓸 수 있습니다. \n- 직접 정했다면 프리셋을 꼭 \"custom\"으로 설정하세요.\n- 💡 **Max Resolution**을 낮추면 VRAM을 아낄 수 있습니다\n\n### Qwen VL Prompt enhancer\n- 기본적으로 프롬프트를 개선해 주는 경량화된 LLM 모델입니다. 무엇을 해야 하는지 지시문을 입력하세요. \n- 프롬프트 크기가 생성 속도에 크게 영향을 줍니다. \"Notes\" 섹션에 서로 다른 지시문 템플릿 두 개를 남겨 두었습니다.\n### Seed Variance Enhancer:\n- randomize_percent: 낮으면 은은하게, 높으면 강하게.\n- Noise Amount: 20-30 사이. \n- Noise insert: 초반 스텝이 가장 좋습니다.\n### LC Stop 🛑:\n- 켜면 이 지점에서 워크플로우가 멈춥니다(hirez, detail 등 없음).\n- Draft가 저장됩니다(\"Save Draft\"가 켜져 있을 때).\n- Notify 🔊가 \"딩\" 하고 울립니다(포터블 버전에서만). \n- 소리 바꾸는 방법은 노트 영역에 있습니다. (필요 없으면 지우세요).\n### 업스케일 팁과 요령:\n- VRAM이 부족하다면 종횡비 크기를 낮게 잡고 뒤에서 SEED VR2를 쓰면 생성 문제에 도움이 됩니다. \n- Tiled 대 not tiled:    타일링은 이미지를 쪼개서 처리 시간을 크게 줄이지만 품질을 (조금) 희생합니다. 최대한 높게 설정하세요.  \n### Hi-REZ 업스케일:\n- 사실적인 결과에는 Ultra Sharp, Nickelback, ESRGAN을 쓰세요.\n- 애니메이션에는 Anime sharp를 쓰세요. 뭐, 당연하죠.\n- VRAM이 부족하면 맨 아래 슬라이더를 쓰세요. 타일 크기를 줄여서 타일 수를 늘립니다. OOM이나 멈춤을 막는 용도로만 쓰세요. \n- [업스케일 모델](https://huggingface.co/uwg/upscaler/tree/main/ESRGAN)\n- 노이즈(주로 잘못 만든 Lora 때문에 생김)가 신경 쓰인다면 이쪽이 조금 더 깨끗하게 정리해 줍니다. [Denoise Model](https://github.com/cszn/KAIR/releases/download/v1.0/scunet_color_real_gan.pth)\n### Detailers:\n- **(ZIT 버전 전용)** ✋ 작업 스타일에 맞는 체크포인트를 쓰세요. (예: Realism, Anime)\n- 그에 맞춰 sampler와 scheduler를 바꾸세요.\n- 얼굴 & 손 detector는 [여기](https://huggingface.co/Bingsu/adetailer/tree/main)\n- 눈은 [여기](https://huggingface.co/jayr23/Eyeful/tree/main)\n- **Yolo: V8n과 V8s의 차이는?** \"n\"은 \"nano\"로, 정확도는 낮지만 VRAM을 덜 씁니다. 가능하면 S를 쓰세요. 보통 face detailer에서 문제가 됩니다.\n### 🚫 Detailers NSFW (해당되는 경우):\n- 남성을 쓸 거라면 female을 끄세요. 그렇지 않으면 이상한 결과가 나올 수 있습니다.\n- ⚠️ detailer에는 두 종류가 있습니다. SEGs와 SAM detailer입니다. 각각 동작 방식과 쓰는 모델이 다릅니다. SEGs 로더에 잘못된 모델을 넣으면 이상한 오류가 납니다. 주로 몸 전체용입니다. 세부에는 나머지 둘을 쓰세요.\n- [여성 신체 감지](https://civitai.com/models/1816953/female-body-detection)\n- [남성 신체 부위 감지](https://civitai.com/models/301092/cock-and-ball-detection-adetailer)\n- segm 폴더에 넣으세요 (아래 참고).\n- [기타 신체 부위 (다운로드할 때 주의하세요)](https://huggingface.co/ashllay/YOLO_Models/tree/main/bbox)\n- NSFW 버전이 아닌데 원하신다면, 제 [CivitAI 페이지](https://civitai.com/user/lonecatone23)에 있을 겁니다. 아니면 메시지 주세요.\n### Seed VR2 업스케일러:\n- [이 영상을 보세요](https://www.youtube.com/watch?v=MBtWYXq_r60).\n- 저사양 VRAM용으로 설정되어 있습니다. VRAM이 넉넉하다면 VAE의 타일링을 끄고 해상도를 올리세요.\n- Debug가 켜져 있습니다. 로그를 보면 경고하거나, 더 올릴 여유가 있다고 알려 줍니다.  \n*자동 다운로드*\n- 선택한 모델과 VAE 파일은 처음 사용할 때 자동으로 다운로드됩니다.\n- ⚠️ 모델이 크기 때문에 다운로드에 몇 분 걸릴 수 있습니다.\n- 다운로드 진행 상황은 콘솔 로그에서 확인하세요.\n- 📂`ComfyUI\\models\\SEEDVR2` 폴더에 직접 다운로드해도 됩니다. \n- 모델은 [여기](https://huggingface.co/numz/SeedVR2_comfyUI/tree/main)와 [여기](https://huggingface.co/AInVFX/SeedVR2_comfyUI/tree/main)에서 받을 수 있습니다.\n\n### LUT\n- 무료 LUT는 [여기](https://freshluts.com)에서 받을 수 있습니다\n- 폴더 위치는 아래를 보세요  \n\n***DING!*** (소리 재생)\n- 이유는 모르겠지만 포터블 버전에서만 동작합니다\n- 직접 소리를 추가하는 방법은 아래에 있습니다.\n- 파일 이름을 직접 입력해야 합니다 (대소문자 구분).\n\n\n### 파일 위치\n\n```\n📂 ComfyUI/\n├── 📂 models/\n│   ├── 📂 model_patches\n│   │      └── Z-Image-Turbo-Fun-Controlnet-Union-2.1\n│   ├── 📂 luts\n│   │      └── Lut files\n│   ├── 📂 SEED VR2\n│   │      └── All files\n│   ├── 📂 uralytics\n│   │      └── 📂 segm\n│   │             └──detection files\n│   ├── 📂 upscale_models\n│   │      └── upscale models (Ersgan, Nickelback, etc.)\n\n```",
              "src": "683935cd",
              "srcTitle": "Instructions (4.1.2)"
            }
          },
          "titles": {
            "en": "Instructions (4.1.2)",
            "zh": "使用说明 (4.1.2)",
            "ja": "手順 (4.1.2)",
            "ko": "사용 안내 (4.1.2)"
          }
        },
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "English ✏️",
        "\n#   Instructions\n\n---\n\n@[card: Follow me](https://civitai.com/user/lonecatone23)\n\n@[card: Follow me](https://www.instagram.com/synth.studio.models/)\n\n@[card: Get my stuff here](https://github.com/lonecatone23)\n\n@[card: Get my models here](https://huggingface.co/Lonecatone23)\n\n\n@[card: Buy me a ☕](https://ko-fi.com/lonecatone)\n\n### This is many hours of work. If you enjoy it, please 👍 like, 💬 comment, and feel free to ⚡ tip 😉\n\n---\n\n## General:\n# 🛑🚫✋ Do not manually bypass anything! There are switches for everything.\n### ⚠️ If you get a \"NoneType:\" error, it's the controlnet switches, no image in i2i or mask, or you don't have a sampler turned on. \n### 💾 Save info:\n- NOTHING SAVES UNLESS IT IS TURNED ON! \n- 📂 The folder labels are in the \"Save Group\" if you want to change them.\n- **Save Post Process** saves the final image without metadata. Use this to enter it manually on CivitAI if the checkpoint does not show up.\n### Models & Checkpoints:\n\n**Z-Image:**\n- Z- Image Turbo GGUF [Swift Fast GGUF (top choice)](https://civitai.red/models/2534952/swift-fast-and-detailed-zit-model)\n- [Base Diffusion Model:](https://civitai.red/api/download/models/2635223?fileId=2523459)\n- [Base GGUF Models](https://huggingface.co/jayn7/Z-Image-GGUF/tree/main)\n\n**Klein_9b**\n\n- [Klein_9b](https://civitai.red/api/download/models/2612554?fileId=2502518)\n\n\n**Text Encoders**\n- Z-Image [qwen3-4b=hereticv2-Q8.gguf](https://huggingface.co/Lockout/qwen3-4b-heretic-zimage/tree/main) (needs a GGUF Clip loader)\n- Klein_9b [GGUF Tree](https://huggingface.co/Mungert/Qwen3-8B-abliterated-GGUF/tree/main)\n\n\n\n\n**VAE:**\n\n\n- Z-Image base & Turbo: [Z-Image](https://civitai.red/api/download/models/3082494?fileId=2961769)\n- Klein_9b: [Flux 2 Ultra Raw](https://civitai.red/models/2661016/flux2-ultrahd-raw-vae)\n\n\n**Model patch**\n- [https://huggingface.co/alibaba-pai/Z-Image-Turbo-Fun-Controlnet-Union-2.0/tree/main](https://huggingface.co/alibaba-pai/Z-Image-Turbo-Fun-Controlnet-Union-2.0/tree/main)\n- Use ver 2.1\n\n**LC123 Nodes**\n- [LC123_Nodes](https://github.com/lonecatone23/ComfyUI_LC123_nodes)\n---\n- ***Settings*** \n- **Z-Image Base**\n   - 25-30 steps\n   - cfg 4.0\n- **Z-Image Turbo**\n   - 9-11 steps\n   - cfg 1.0-2.0\n---\n\n### 📐 Aspect Ratio Simplifier:\n- You can choose to use the Image Resolution or use a preset dimension or your own. \n- If you use your own, make sure to set the preset to \"custom\".\n- 💡 Lower the **Max Resolution** to save VRAM\n\n### Qwen VL Prompt enhancer\n- This is basically a pruned LLM model that enhances your prompt. Enter the instructions on what it should do. \n- The size of the prompt massively affects the generation speed. I have left two different instruction templates in the \"Notes\" section.\n### Seed Variance Enhancer:\n- randomize_percent: lower is subtle, higher is strong.\n- Noise Amount: Between 20-30. \n- Noise insert: Beginning steps work best.\n### LC Stop 🛑:\n- When enabled, it stops the workflow at this point (no hirez, detail, etc.).\n- Draft is saved (if \"Save Draft\" is turned on).\n- Notify 🔊 should ding (on portable version only). \n- Instructions to change the sound are in the notes area. (delete if not needed).\n### Upscale tips and tricks:\n- If you struggle with low VRAM, setting the aspect ratio low and using SEED VR2 on the other side will help generation issues. \n- Tiled vs. not tiled:    Tiling breaks the image up, greatly speeds up processing time, but sacrifices (a little bit of) quality. Set them as high as possible.  \n### Hi-REZ upscale:\n- Use Ultra Sharp, Nickelback, or ESRGAN for realism.\n- Use Anime sharp for...well... Anime.\n- If you struggle with VRAM, use the slider at the bottom. It increases the amount of tiles by decreasing the size. Use it only to prevent OOM issues or brick ups. \n- [upscale models](https://huggingface.co/uwg/upscaler/tree/main/ESRGAN)\n- If you struggle with noise (often from poorly made Loras), this will do a slightly better job of cleaning it. [Denoise Model](https://github.com/cszn/KAIR/releases/download/v1.0/scunet_color_real_gan.pth)\n### Detailers:\n- **(ZIT VERSION ONLY)** ✋ Make sure to use a checkpoint that matches your style of work. (i.e. Realism, Anime)\n- Change the sampler and scheduler accordingly.\n- Face & hands detector [here](https://huggingface.co/Bingsu/adetailer/tree/main)\n- Eyes [here](https://huggingface.co/jayr23/Eyeful/tree/main)\n- **Yolo: what's the difference between V8n & V8s?** The \"n\" stands for \"nano\" less accurate but less VRAM. Use S whenever possible. This is typically an issue on the face detailer.\n### 🚫 Detailers NSFW (if applicable):\n- Turn off female if you are going to use male or you may get odd results.\n- ⚠️ There are two different types of detailers. The SEGs and the SAM detailers. Each works differently and with different models. You will get a weird error if you put the wrong model in the SEGs loader. It's mainly for body. Use the other two for specifics.\n- [female body detection](https://civitai.com/models/1816953/female-body-detection)\n- [Male Body Parts Detection](https://civitai.com/models/301092/cock-and-ball-detection-adetailer)\n- Place them in the segm folder (see below).\n- [Other body parts (watch what you download)](https://huggingface.co/ashllay/YOLO_Models/tree/main/bbox)\n- If this is not the NSFW Version and you would like it, I should have it on my [CivitAI page](https://civitai.com/user/lonecatone23) or message me.\n### Seed VR2 Upscaler:\n- [Watch this video](https://www.youtube.com/watch?v=MBtWYXq_r60).\n- This is set up for low VRAM. For higher VRAM, turn off tiling in the VAE and then increase resolution.\n- Debug is on. If you watch the log, it will warn you or tell you that you have more space to increase.  \n*Automatic Downloads*\n- The selected model and VAE files will be downloaded automatically on first use.\n- ⚠️ Because these models are large, the download may take several minutes.\n- Monitor the console log for download progress.\n- Manual download into the 📂`ComfyUI\\models\\SEEDVR2` directory is possible. \n- Models can be found [here](https://huggingface.co/numz/SeedVR2_comfyUI/tree/main) and [here](https://huggingface.co/AInVFX/SeedVR2_comfyUI/tree/main).\n\n### LUT\n- You can get free LUTs [HERE](https://freshluts.com)\n- See below for folder location  \n\n***DING!*** (play sound)\n- Only works on the portable version for some reason\n- Directions to add your own are below.\n- You have to manually enter the name of the file (case sensitive).\n\n\n### File Locations\n\n```\n📂 ComfyUI/\n├── 📂 models/\n│   ├── 📂 model_patches\n│   │      └── Z-Image-Turbo-Fun-Controlnet-Union-2.1\n│   ├── 📂 luts\n│   │      └── Lut files\n│   ├── 📂 SEED VR2\n│   │      └── All files\n│   ├── 📂 uralytics\n│   │      └── 📂 segm\n│   │             └──detection files\n│   ├── 📂 upscale_models\n│   │      └── upscale models (Ersgan, Nickelback, etc.)\n\n```"
      ],
      "widgets_values_named": {
        "language": "English ✏️",
        "text": "\n#   Instructions\n\n---\n\n@[card: Follow me](https://civitai.com/user/lonecatone23)\n\n@[card: Follow me](https://www.instagram.com/synth.studio.models/)\n\n@[card: Get my stuff here](https://github.com/lonecatone23)\n\n@[card: Get my models here](https://huggingface.co/Lonecatone23)\n\n\n@[card: Buy me a ☕](https://ko-fi.com/lonecatone)\n\n### This is many hours of work. If you enjoy it, please 👍 like, 💬 comment, and feel free to ⚡ tip 😉\n\n---\n\n## General:\n# 🛑🚫✋ Do not manually bypass anything! There are switches for everything.\n### ⚠️ If you get a \"NoneType:\" error, it's the controlnet switches, no image in i2i or mask, or you don't have a sampler turned on. \n### 💾 Save info:\n- NOTHING SAVES UNLESS IT IS TURNED ON! \n- 📂 The folder labels are in the \"Save Group\" if you want to change them.\n- **Save Post Process** saves the final image without metadata. Use this to enter it manually on CivitAI if the checkpoint does not show up.\n### Models & Checkpoints:\n\n**Z-Image:**\n- Z- Image Turbo GGUF [Swift Fast GGUF (top choice)](https://civitai.red/models/2534952/swift-fast-and-detailed-zit-model)\n- [Base Diffusion Model:](https://civitai.red/api/download/models/2635223?fileId=2523459)\n- [Base GGUF Models](https://huggingface.co/jayn7/Z-Image-GGUF/tree/main)\n\n**Klein_9b**\n\n- [Klein_9b](https://civitai.red/api/download/models/2612554?fileId=2502518)\n\n\n**Text Encoders**\n- Z-Image [qwen3-4b=hereticv2-Q8.gguf](https://huggingface.co/Lockout/qwen3-4b-heretic-zimage/tree/main) (needs a GGUF Clip loader)\n- Klein_9b [GGUF Tree](https://huggingface.co/Mungert/Qwen3-8B-abliterated-GGUF/tree/main)\n\n\n\n\n**VAE:**\n\n\n- Z-Image base & Turbo: [Z-Image](https://civitai.red/api/download/models/3082494?fileId=2961769)\n- Klein_9b: [Flux 2 Ultra Raw](https://civitai.red/models/2661016/flux2-ultrahd-raw-vae)\n\n\n**Model patch**\n- [https://huggingface.co/alibaba-pai/Z-Image-Turbo-Fun-Controlnet-Union-2.0/tree/main](https://huggingface.co/alibaba-pai/Z-Image-Turbo-Fun-Controlnet-Union-2.0/tree/main)\n- Use ver 2.1\n\n**LC123 Nodes**\n- [LC123_Nodes](https://github.com/lonecatone23/ComfyUI_LC123_nodes)\n---\n- ***Settings*** \n- **Z-Image Base**\n   - 25-30 steps\n   - cfg 4.0\n- **Z-Image Turbo**\n   - 9-11 steps\n   - cfg 1.0-2.0\n---\n\n### 📐 Aspect Ratio Simplifier:\n- You can choose to use the Image Resolution or use a preset dimension or your own. \n- If you use your own, make sure to set the preset to \"custom\".\n- 💡 Lower the **Max Resolution** to save VRAM\n\n### Qwen VL Prompt enhancer\n- This is basically a pruned LLM model that enhances your prompt. Enter the instructions on what it should do. \n- The size of the prompt massively affects the generation speed. I have left two different instruction templates in the \"Notes\" section.\n### Seed Variance Enhancer:\n- randomize_percent: lower is subtle, higher is strong.\n- Noise Amount: Between 20-30. \n- Noise insert: Beginning steps work best.\n### LC Stop 🛑:\n- When enabled, it stops the workflow at this point (no hirez, detail, etc.).\n- Draft is saved (if \"Save Draft\" is turned on).\n- Notify 🔊 should ding (on portable version only). \n- Instructions to change the sound are in the notes area. (delete if not needed).\n### Upscale tips and tricks:\n- If you struggle with low VRAM, setting the aspect ratio low and using SEED VR2 on the other side will help generation issues. \n- Tiled vs. not tiled:    Tiling breaks the image up, greatly speeds up processing time, but sacrifices (a little bit of) quality. Set them as high as possible.  \n### Hi-REZ upscale:\n- Use Ultra Sharp, Nickelback, or ESRGAN for realism.\n- Use Anime sharp for...well... Anime.\n- If you struggle with VRAM, use the slider at the bottom. It increases the amount of tiles by decreasing the size. Use it only to prevent OOM issues or brick ups. \n- [upscale models](https://huggingface.co/uwg/upscaler/tree/main/ESRGAN)\n- If you struggle with noise (often from poorly made Loras), this will do a slightly better job of cleaning it. [Denoise Model](https://github.com/cszn/KAIR/releases/download/v1.0/scunet_color_real_gan.pth)\n### Detailers:\n- **(ZIT VERSION ONLY)** ✋ Make sure to use a checkpoint that matches your style of work. (i.e. Realism, Anime)\n- Change the sampler and scheduler accordingly.\n- Face & hands detector [here](https://huggingface.co/Bingsu/adetailer/tree/main)\n- Eyes [here](https://huggingface.co/jayr23/Eyeful/tree/main)\n- **Yolo: what's the difference between V8n & V8s?** The \"n\" stands for \"nano\" less accurate but less VRAM. Use S whenever possible. This is typically an issue on the face detailer.\n### 🚫 Detailers NSFW (if applicable):\n- Turn off female if you are going to use male or you may get odd results.\n- ⚠️ There are two different types of detailers. The SEGs and the SAM detailers. Each works differently and with different models. You will get a weird error if you put the wrong model in the SEGs loader. It's mainly for body. Use the other two for specifics.\n- [female body detection](https://civitai.com/models/1816953/female-body-detection)\n- [Male Body Parts Detection](https://civitai.com/models/301092/cock-and-ball-detection-adetailer)\n- Place them in the segm folder (see below).\n- [Other body parts (watch what you download)](https://huggingface.co/ashllay/YOLO_Models/tree/main/bbox)\n- If this is not the NSFW Version and you would like it, I should have it on my [CivitAI page](https://civitai.com/user/lonecatone23) or message me.\n### Seed VR2 Upscaler:\n- [Watch this video](https://www.youtube.com/watch?v=MBtWYXq_r60).\n- This is set up for low VRAM. For higher VRAM, turn off tiling in the VAE and then increase resolution.\n- Debug is on. If you watch the log, it will warn you or tell you that you have more space to increase.  \n*Automatic Downloads*\n- The selected model and VAE files will be downloaded automatically on first use.\n- ⚠️ Because these models are large, the download may take several minutes.\n- Monitor the console log for download progress.\n- Manual download into the 📂`ComfyUI\\models\\SEEDVR2` directory is possible. \n- Models can be found [here](https://huggingface.co/numz/SeedVR2_comfyUI/tree/main) and [here](https://huggingface.co/AInVFX/SeedVR2_comfyUI/tree/main).\n\n### LUT\n- You can get free LUTs [HERE](https://freshluts.com)\n- See below for folder location  \n\n***DING!*** (play sound)\n- Only works on the portable version for some reason\n- Directions to add your own are below.\n- You have to manually enter the name of the file (case sensitive).\n\n\n### File Locations\n\n```\n📂 ComfyUI/\n├── 📂 models/\n│   ├── 📂 model_patches\n│   │      └── Z-Image-Turbo-Fun-Controlnet-Union-2.1\n│   ├── 📂 luts\n│   │      └── Lut files\n│   ├── 📂 SEED VR2\n│   │      └── All files\n│   ├── 📂 uralytics\n│   │      └── 📂 segm\n│   │             └──detection files\n│   ├── 📂 upscale_models\n│   │      └── upscale models (Ersgan, Nickelback, etc.)\n\n```"
      },
      "color": "#2E3A46",
      "bgcolor": "#2E3A46"
    },
    {
      "id": 3098,
      "type": "LCCivitaiStrip",
      "pos": [
        -2070,
        -2460
      ],
      "size": [
        320,
        100
      ],
      "flags": {
        "collapsed": false,
        "pinned": true
      },
      "order": 187,
      "mode": 0,
      "inputs": [
        {
          "name": "text",
          "type": "STRING",
          "link": 47342
        }
      ],
      "outputs": [
        {
          "name": "text",
          "type": "STRING",
          "links": [
            44543
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "b5960f890540269a90c505ed069026c97a76513f",
        "Node name for S&R": "LCCivitaiStrip",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "civitai_compliance_remove.txt",
        true
      ],
      "widgets_values_named": {
        "list_file": "civitai_compliance_remove.txt",
        "enabled": true
      },
      "color": "#643232",
      "bgcolor": "#643232"
    },
    {
      "id": 3288,
      "type": "SetNode",
      "pos": [
        -1520,
        -2210
      ],
      "size": [
        230,
        60
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 241,
      "mode": 0,
      "inputs": [
        {
          "name": "LC_SAVE_META",
          "type": "LC_SAVE_META",
          "link": 44544
        }
      ],
      "outputs": [
        {
          "name": "LC_SAVE_META",
          "type": "LC_SAVE_META",
          "links": null
        }
      ],
      "title": "Set_Metadata 🏷️",
      "properties": {
        "Node name for S&R": "SetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "previousName": "Metadata 🏷️",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Metadata 🏷️"
      ],
      "widgets_values_named": {
        "Constant": "Metadata 🏷️"
      }
    },
    {
      "id": 3180,
      "type": "LCNote",
      "pos": [
        -4000,
        50
      ],
      "size": [
        620,
        1090
      ],
      "flags": {
        "pinned": true
      },
      "order": 16,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "LC123 Settings ⚙️",
      "properties": {
        "lc_note": {
          "source": "en",
          "texts": {
            "en": {
              "text": "# LC123 Settings ⚙️\n\n**Where are they?** Open **Settings** (the gear), then **LC123 Settings ⚙️**. There are five sections: **Align**, **Connections**, **Notes**, **Optimization** and **Performance**.\n\n- 💡 Missing a setting? Restart ComfyUI, then press **Ctrl+F5** so the browser loads the new files.\n\n---\n\n### 📐 Align\n\n**Align tool**\n- Default: **On**\n- The switch for the whole tool. Off = no **📐** button in the top toolbar and none of the features below.\n- With it on, the **📐** button turns Align on or off **for the open workflow**.\n    - That on/off is saved in the workflow. Save it with Align on and it opens with Align on, even on a fresh ComfyUI.\n    - Every workflow tab keeps its own. Switch tabs and the tool follows that tab (on in one, off in the other, no mix-ups).\n    - Turning it on or off counts as a change to the workflow, so you get the unsaved dot.\n- Nodes snap to **Node lines**, groups snap to **Group lines**. A line lights up when you get close.\n- **Snap distance** is ComfyUI's own **Snap to grid size** (Settings > Lite Graph > Canvas). Smaller grid = tighter snap. New lines land on that grid too.\n    - **Shift** while dragging hands the drag to ComfyUI's own grid snap (no line snap). With **Always snap to grid** on, a line snap still wins on the axis it caught.\n\n**Rulers**\n- Default: **On**\n- Rulers on the top and left edge while Align is on:\n    - **Left click** a ruler: adds a **Node line** (blue). Nodes snap to it.\n    - **Right click** a ruler: adds a **Group line** (orange). Groups snap to it.\n    - Click a line's marker again to remove it. Drag a marker to move it.\n- Lines save with the workflow.\n\n**Line reveal distance (px)**\n- Default: **120**\n- Lines stay invisible until the cursor or whatever you drag gets this close.\n\n**Also snap to other nodes and groups**\n- Default: **Off**\n- On = also snap to other nodes' edges and centers (no line is shown for those).\n\n---\n\n### 🔌 Connections\n\n**Connection FX**\n- Default: **Off**\n- While you drag a wire, every socket it can plug into glows in its socket color.\n- Get close and rings pulse out of the socket. Closer = bigger and brighter.\n- **Connection FX reach (px):** how close the cursor has to be before the rings start. Default 160.\n- **Connection FX zoomed-out glow (%):** zoomed out, every valid socket glows brighter so you can find it. Default 60.\n\n---\n\n### 📝 Notes\n\n**Note language**\n- Default: **Same as ComfyUI**\n- The language every LC Note opens in.\n- Only notes that already have that translation switch. The rest stay in their original language.\n\n**Convert all notes**\n- One click turns every **Markdown Note** and **Note** in the open workflow into an **LC Note**.\n- A note written as English, then `---`, then Chinese becomes one LC Note with both languages.\n- Position, size and color are kept.\n- ⚠️ Save the workflow afterwards. If you reload without saving, the conversion is gone.\n\n---\n\n### 🩺 Optimization\n\n**Optimization report**\n- One button. It pans the canvas by itself for a few seconds, times what every pack in the open workflow draws and runs, and scans their files.\n- You get a list of what slows your canvas down, biggest first, sorted into:\n    - **That pack's own settings** (the exact setting name, where it lives and its current value)\n    - **LC123 optimization settings**\n    - **ComfyUI settings**\n    - **Sidebar tabs**\n    - **Required to function** (no setting, it is how that pack works)\n- Only node packs used in the open workflow are analyzed.\n- Every setting it suggests is checked against its current value:\n    - ⚠️ big gain · ✅ worthwhile gain · 💡 small gain\n    - ⚪ already set · ➖ does not apply · ℹ️ required, no setting for it\n- **Show last run:** the button at the top flips to the previous report. Each new run also shows what got faster and which fixes are done since last time.\n    - Only the last run is kept (it survives a refresh). Each run replaces it.\n- Nothing is changed. (Keep the mouse still while it runs.)\n- 💡 Also in the right-click menu on the empty canvas.\n\n---\n\n### ⚡ Performance\n\nThese only change what you see on the canvas. Generation, VRAM, **Save Image** and every **IMAGE** output stay full resolution. (A lighter preview never means a lighter image.)\n\n| Setting | Default | What it does |\n|---|---|---|\n| **Remove wipe** | Off | Turns off the hover A/B wipe on LC image FX nodes. The last result still shows. |\n| **Half-resolution previews** | Off | Draws FX previews at half size. Less work while panning. |\n| **Clamp longest side** | Off | Shrinks on-node previews so the longest side fits **Max edge**. |\n| **Max edge (px)** | 768 | Only used when **Clamp longest side** is on. Range 256 to 2048. Try 512 on heavy graphs. |\n| **No preview when collapsed** | On | Collapsed FX nodes skip drawing their preview. |\n| **Hide FX on-node previews** | Off | Hides every LC image FX preview. |\n| **Recent colors** | On | Keeps your last 8 custom colors in the right-click **Colors** menu. Adds a Custom picker if Custom Scripts is not installed. |\n| **Skin Beauty full preview override** | On | **LC Skin Beauty** keeps a full-quality preview even with half-res or clamp on, so you can still zoom into skin. Wipe still follows **Remove wipe**. |\n| **LoRA loader info button** | On | Shows the ℹ button on each **LC LoRA Loader** row. Trigger words come from the LoRA file itself (no internet). Turn off to declutter. |\n| **Preview distance (px)** | 40 | Like node text, an on-node image switches off when you zoom out far enough that it is drawn smaller than this. Smaller previews switch off first. 0 = always draw. |\n\n**Never affected:** **LC Image Compare 🔎**, **LC Image Split 🖼️** and **LC Dynamic Overlay** keep their full preview and wipe no matter what (only **Preview distance** switches them off when zoomed far out).\n\n**Suggested setups**\n- **Normal use:** leave everything at default.\n- **Laggy graph:** turn on **Half-resolution previews** and **Clamp longest side** (Max edge 512). Keep **No preview when collapsed** on.\n- **Lightest canvas:** turn on **Hide FX on-node previews**. Use **Image Compare** or **Image Split** when you need to see a before/after.\n- 💡 Changes apply on the next redraw. Pan the canvas a little, no restart needed.\n\n---\n\n\"True Nothing is. Permitted Everything is\"- Yoda Auditore, Assassin's Wars"
            },
            "zh": {
              "text": "# LC123 设置 ⚙️\n\n**在哪里？** 打开 **Settings**（齿轮），然后进入 **LC123 Settings ⚙️**。共有五个部分：**Align**、**Connections**、**Notes**、**Optimization** 和 **Performance**。\n\n- 💡 找不到某项设置？重启 ComfyUI，然后按 **Ctrl+F5**，让浏览器加载新文件。\n\n---\n\n### 📐 Align\n\n**Align tool**\n- 默认：**On**\n- 整个工具的总开关。关闭 = 顶部工具栏没有 **📐** 按钮，下面所有功能也都没有。\n- 开启后，**📐** 按钮可以为**当前打开的工作流**开启或关闭 Align。\n    - 开关状态会保存在工作流里。在 Align 开启时保存，下次打开就是开启的，即使是全新的 ComfyUI 也一样。\n    - 每个工作流标签页各自保存自己的状态。切换标签页，工具会跟随该标签页（一个开、一个关，不会混淆）。\n    - 开启或关闭都算作对工作流的一次修改，所以会出现未保存的圆点。\n- 节点会吸附到 **Node lines**，分组会吸附到 **Group lines**。靠近时线条会亮起。\n- **Snap distance** 就是 ComfyUI 自己的 **Snap to grid size**（Settings > Lite Graph > Canvas）。网格越小，吸附越紧。新的线条也会落在这个网格上。\n    - 拖动时按住 **Shift**，会把拖动交给 ComfyUI 自己的网格吸附（不吸附线条）。开启 **Always snap to grid** 时，在线条已经吸附的那个轴上，线条吸附仍然优先。\n\n**Rulers**\n- 默认：**On**\n- Align 开启时，顶部和左侧边缘会出现标尺：\n    - **左键点击**标尺：添加一条 **Node line**（蓝色）。节点会吸附到它。\n    - **右键点击**标尺：添加一条 **Group line**（橙色）。分组会吸附到它。\n    - 再次点击线条的标记可将其移除。拖动标记可移动它。\n- 线条会随工作流保存。\n\n**Line reveal distance (px)**\n- 默认：**120**\n- 线条一直不可见，直到光标或你拖动的东西靠近到这个距离。\n\n**Also snap to other nodes and groups**\n- 默认：**Off**\n- 开启 = 同时吸附到其他节点的边缘和中心（这些不会显示线条）。\n\n---\n\n### 🔌 Connections\n\n**Connection FX**\n- 默认：**Off**\n- 拖动连线时，每个可以接入的接口都会以它的接口颜色发光。\n- 靠近时，接口会向外扩散光环。越近 = 越大越亮。\n- **Connection FX reach (px):** 光标要多近，光环才会开始出现。默认 160。\n- **Connection FX zoomed-out glow (%):** 缩小画布时，每个有效接口会更亮，方便你找到它。默认 60。\n\n---\n\n### 📝 Notes\n\n**Note language**\n- 默认：**Same as ComfyUI**\n- 每个 LC Note 打开时使用的语言。\n- 只有已经带有该语言翻译的备注才会切换。其余的保持原语言。\n\n**Convert all notes**\n- 一键把当前工作流中所有的 **Markdown Note** 和 **Note** 转换成 **LC Note**。\n- 按英文、`---`、中文这样写的备注，会变成同时包含两种语言的一个 LC Note。\n- 位置、大小和颜色都会保留。\n- ⚠️ 之后记得保存工作流。如果不保存就重新加载，转换就丢了。\n\n---\n\n### 🩺 Optimization\n\n**Optimization report**\n- 一个按钮。它会自己平移画布几秒钟，测量当前工作流中每个节点包绘制和运行所花的时间，并扫描它们的文件。\n- 你会得到一份拖慢画布的因素列表，最大的排在最前面，分类如下：\n    - **That pack's own settings**（确切的设置名称、所在位置和当前值）\n    - **LC123 optimization settings**\n    - **ComfyUI settings**\n    - **Sidebar tabs**\n    - **Required to function**（没有设置项，这是该节点包的工作方式）\n- 只分析当前工作流中用到的节点包。\n- 它建议的每项设置都会与当前值对照检查：\n    - ⚠️ 收益很大 · ✅ 值得的收益 · 💡 收益很小\n    - ⚪ 已经设置过 · ➖ 不适用 · ℹ️ 必需，没有对应设置\n- **Show last run:** 顶部的按钮会切换到上一份报告。每次新的运行还会显示哪些变快了，以及自上次以来哪些修复已经完成。\n    - 只保留最近一次运行（刷新后仍在）。每次运行都会替换它。\n- 不会更改任何东西。（运行期间请保持鼠标不动。）\n- 💡 在空白画布上右键菜单里也有。\n\n---\n\n### ⚡ Performance\n\n这些只改变你在画布上看到的内容。生成、VRAM、**Save Image** 以及每个 **IMAGE** 输出都保持完整分辨率。（更轻的预览绝不代表更轻的图像。）\n\n| 设置 | 默认 | 作用 |\n|---|---|---|\n| **Remove wipe** | Off | 关闭 LC 图像 FX 节点上悬停时的 A/B 擦拭对比。最后的结果仍会显示。 |\n| **Half-resolution previews** | Off | 以一半的尺寸绘制 FX 预览。平移时负担更小。 |\n| **Clamp longest side** | Off | 缩小节点上的预览，使最长边适应 **Max edge**。 |\n| **Max edge (px)** | 768 | 仅在 **Clamp longest side** 开启时使用。范围 256 到 2048。图很重时试试 512。 |\n| **No preview when collapsed** | On | 折叠的 FX 节点不再绘制预览。 |\n| **Hide FX on-node previews** | Off | 隐藏所有 LC 图像 FX 预览。 |\n| **Recent colors** | On | 在右键 **Colors** 菜单里保留你最近的 8 个自定义颜色。如果没有安装 Custom Scripts，会添加一个 Custom 取色器。 |\n| **Skin Beauty full preview override** | On | 即使开启了半分辨率或限制尺寸，**LC Skin Beauty** 仍保留全画质预览，这样你仍然可以放大查看皮肤。Wipe 仍然遵循 **Remove wipe**。 |\n| **LoRA loader info button** | On | 在每个 **LC LoRA Loader** 行上显示 ℹ 按钮。触发词来自 LoRA 文件本身（无需联网）。关闭可让界面更清爽。 |\n| **Preview distance (px)** | 40 | 和节点文字一样，当你缩小到节点上的图像绘制尺寸小于此值时，它就会关闭。较小的预览会先关闭。0 = 始终绘制。 |\n\n**从不受影响：** **LC Image Compare 🔎**、**LC Image Split 🖼️** 和 **LC Dynamic Overlay** 无论如何都保留完整预览和擦拭对比（只有缩得很小时，**Preview distance** 才会让它们关闭）。\n\n**推荐配置**\n- **正常使用：** 全部保持默认。\n- **画布卡顿：** 开启 **Half-resolution previews** 和 **Clamp longest side**（Max edge 512）。保持 **No preview when collapsed** 开启。\n- **最轻的画布：** 开启 **Hide FX on-node previews**。需要查看前后对比时，使用 **Image Compare** 或 **Image Split**。\n- 💡 更改会在下次重绘时生效。稍微平移一下画布即可，无需重启。\n\n---\n\n\"True Nothing is. Permitted Everything is\"- Yoda Auditore, Assassin's Wars",
              "src": "dfe9c6e3",
              "srcTitle": "LC123 Settings ⚙️"
            },
            "ja": {
              "text": "# LC123 設定 ⚙️\n\n**どこにある？** **Settings**（歯車）を開いて、**LC123 Settings ⚙️** を選びます。セクションは5つ：**Align**、**Connections**、**Notes**、**Optimization**、**Performance**。\n\n- 💡 設定が見当たらない？ ComfyUIを再起動してから、**Ctrl+F5** を押してブラウザに新しいファイルを読み込ませてください。\n\n---\n\n### 📐 Align\n\n**Align tool**\n- デフォルト：**On**\n- ツール全体のスイッチです。Off＝上のツールバーの **📐** ボタンも、以下の機能もすべて消えます。\n- オンにすると、**📐** ボタンで**開いているワークフロー**のAlignをオン／オフできます。\n    - そのオン／オフはワークフローに保存されます。Alignをオンにして保存すれば、新しいComfyUIでもオンの状態で開きます。\n    - ワークフローのタブごとに別々に保持されます。タブを切り替えると、ツールもそのタブの状態に従います（片方はオン、もう片方はオフ、混ざりません）。\n    - オン／オフの切り替えはワークフローの変更扱いになるので、未保存のドットが付きます。\n- ノードは **Node lines** に、グループは **Group lines** にスナップします。近づくとラインが光ります。\n- **Snap distance** はComfyUI本来の **Snap to grid size**（Settings > Lite Graph > Canvas）です。グリッドが小さいほど、スナップもきつくなります。新しいラインもそのグリッドに乗ります。\n    - ドラッグ中に **Shift** を押すと、ドラッグはComfyUI本来のグリッドスナップに任されます（ラインスナップなし）。**Always snap to grid** がオンのときは、ラインにスナップした軸ではラインスナップが優先されます。\n\n**Rulers**\n- デフォルト：**On**\n- Alignがオンの間、上と左の端にルーラーが出ます：\n    - ルーラーを**左クリック**：**Node line**（青）を追加。ノードがスナップします。\n    - ルーラーを**右クリック**：**Group line**（オレンジ）を追加。グループがスナップします。\n    - ラインのマーカーをもう一度クリックすると削除、ドラッグすると移動します。\n- ラインはワークフローと一緒に保存されます。\n\n**Line reveal distance (px)**\n- デフォルト：**120**\n- カーソルやドラッグ中のものがこの距離まで近づくまで、ラインは見えないままです。\n\n**Also snap to other nodes and groups**\n- デフォルト：**Off**\n- オン＝他のノードの端や中心にもスナップします（それらにはラインは表示されません）。\n\n---\n\n### 🔌 Connections\n\n**Connection FX**\n- デフォルト：**Off**\n- ワイヤーをドラッグしている間、つなげられるソケットがすべてソケットの色で光ります。\n- 近づくと、ソケットから輪が広がります。近いほど大きく明るくなります。\n- **Connection FX reach (px):** 輪が出始めるまでに、カーソルがどれだけ近づく必要があるか。デフォルトは160。\n- **Connection FX zoomed-out glow (%):** ズームアウトすると、有効なソケットがすべてより明るく光って見つけやすくなります。デフォルトは60。\n\n---\n\n### 📝 Notes\n\n**Note language**\n- デフォルト：**Same as ComfyUI**\n- すべてのLC Noteが開くときの言語です。\n- その翻訳をすでに持っているノートだけが切り替わります。それ以外は元の言語のままです。\n\n**Convert all notes**\n- ワンクリックで、開いているワークフローのすべての **Markdown Note** と **Note** を **LC Note** に変換します。\n- 英語、`---`、中国語の順で書かれたノートは、両方の言語を持つ1つのLC Noteになります。\n- 位置、サイズ、色は保持されます。\n- ⚠️ そのあとでワークフローを保存してください。保存せずにリロードすると、変換は消えます。\n\n---\n\n### 🩺 Optimization\n\n**Optimization report**\n- ボタンひとつです。数秒間キャンバスを自動でパンしながら、開いているワークフロー内の各パックの描画と実行にかかる時間を計測し、ファイルもスキャンします。\n- キャンバスを重くしているものが、重い順に一覧で出ます。分類は次のとおりです：\n    - **そのパック自身の設定**（設定の正確な名前、場所、現在の値）\n    - **LC123の最適化設定**\n    - **ComfyUIの設定**\n    - **サイドバーのタブ**\n    - **動作に必須のもの**（設定はなく、そのパックの仕組み上必要なもの）\n- 分析されるのは、開いているワークフローで使われているノードパックだけです。\n- 提案される設定はすべて、現在の値と照らして確認されます：\n    - ⚠️ 大きな効果 · ✅ 価値のある効果 · 💡 小さな効果\n    - ⚪ 設定済み · ➖ 該当なし · ℹ️ 必須、設定なし\n- **Show last run:** 上にあるボタンで、前回のレポートに切り替わります。新しく実行するたびに、前回から速くなったものと対処済みの項目も表示されます。\n    - 保持されるのは直近1回分だけです（リフレッシュしても残ります）。実行するたびに置き換わります。\n- 何も変更されません。（実行中はマウスを動かさないでください。）\n- 💡 何もないキャンバスの右クリックメニューにもあります。\n\n---\n\n### ⚡ Performance\n\nこれらが変えるのは、キャンバス上の見え方だけです。生成、VRAM、**Save Image**、すべての **IMAGE** 出力はフル解像度のままです。（プレビューが軽いからといって、画像が軽くなるわけではありません。）\n\n| 設定 | デフォルト | 内容 |\n|---|---|---|\n| **Remove wipe** | Off | LCの画像FXノードにホバーしたときのA/Bワイプをオフにします。最後の結果は表示されます。 |\n| **Half-resolution previews** | Off | FXプレビューを半分のサイズで描画します。パン中の負荷が減ります。 |\n| **Clamp longest side** | Off | ノード上のプレビューを縮小して、長辺を **Max edge** に収めます。 |\n| **Max edge (px)** | 768 | **Clamp longest side** がオンのときだけ使われます。範囲は256〜2048。重いグラフでは512を試してください。 |\n| **No preview when collapsed** | On | 折りたたんだFXノードは、プレビューを描画しません。 |\n| **Hide FX on-node previews** | Off | LCの画像FXプレビューをすべて隠します。 |\n| **Recent colors** | On | 右クリックの **Colors** メニューに、最後に使ったカスタムカラー8色を保持します。Custom Scriptsが入っていない場合は、Customピッカーを追加します。 |\n| **Skin Beauty full preview override** | On | half-resやclampがオンでも、**LC Skin Beauty** はフル画質のプレビューを維持するので、肌をズームして見られます。ワイプは引き続き **Remove wipe** に従います。 |\n| **LoRA loader info button** | On | **LC LoRA Loader** の各行にℹボタンを表示します。トリガーワードはLoRAファイル自体から取得します（インターネット不要）。すっきりさせたいときはオフにしてください。 |\n| **Preview distance (px)** | 40 | ノードのテキストと同じで、ズームアウトして画像がこの値より小さく描画されるようになると、ノード上の画像は非表示になります。小さいプレビューから先に消えます。0＝常に描画。 |\n\n**影響を受けないもの：** **LC Image Compare 🔎**、**LC Image Split 🖼️**、**LC Dynamic Overlay** は、何があってもフルプレビューとワイプを維持します（大きくズームアウトしたときの **Preview distance** だけが、これらをオフにします）。\n\n**おすすめのセットアップ**\n- **普段使い：** すべてデフォルトのままで。\n- **グラフがもたつくとき：** **Half-resolution previews** と **Clamp longest side**（Max edge 512）をオンにします。**No preview when collapsed** はオンのままで。\n- **キャンバスを最軽量に：** **Hide FX on-node previews** をオンにします。ビフォー／アフターを見たいときは **Image Compare** か **Image Split** を使います。\n- 💡 変更は次の再描画で反映されます。キャンバスを少しパンするだけで、再起動は不要です。\n\n---\n\n\"True Nothing is. Permitted Everything is\"- Yoda Auditore, Assassin's Wars",
              "src": "dfe9c6e3",
              "srcTitle": "LC123 Settings ⚙️"
            },
            "ko": {
              "text": "# LC123 Settings ⚙️\n\n**어디 있나요?** **Settings**(톱니바퀴)를 열고 **LC123 Settings ⚙️**로 가세요. 다섯 개 섹션이 있습니다: **Align**, **Connections**, **Notes**, **Optimization**, **Performance**.\n\n- 💡 설정이 안 보이나요? ComfyUI를 재시작한 다음 **Ctrl+F5**를 눌러 브라우저가 새 파일을 로드하게 하세요.\n\n---\n\n### 📐 Align\n\n**Align tool**\n- 기본값: **On**\n- 도구 전체의 스위치입니다. Off = 상단 툴바에 **📐** 버튼도, 아래 기능도 없습니다.\n- 켜면 **📐** 버튼이 **열려 있는 워크플로**에 대해 Align을 켜고 끕니다.\n    - 그 on/off는 워크플로에 저장됩니다. Align을 켠 채로 저장하면, 새 ComfyUI에서도 Align이 켜진 채로 열립니다.\n    - 워크플로 탭마다 각자 설정을 가집니다. 탭을 바꾸면 도구도 그 탭을 따라갑니다 (한쪽은 켜짐, 다른 쪽은 꺼짐, 헷갈릴 일 없음).\n    - 켜고 끄는 것도 워크플로 변경으로 치므로 저장 안 됨 점이 뜹니다.\n- 노드는 **Node lines**에, 그룹은 **Group lines**에 스냅됩니다. 가까이 가면 선이 켜집니다.\n- **Snap distance**는 ComfyUI 자체의 **Snap to grid size**(Settings > Lite Graph > Canvas)입니다. 그리드가 작을수록 스냅이 촘촘합니다. 새 선도 그 그리드에 놓입니다.\n    - 드래그하는 동안 **Shift**를 누르면 드래그를 ComfyUI 자체의 그리드 스냅에 넘깁니다 (선 스냅 없음). **Always snap to grid**가 켜져 있으면, 선이 잡은 축에서는 여전히 선 스냅이 이깁니다.\n\n**Rulers**\n- 기본값: **On**\n- Align이 켜져 있는 동안 위쪽과 왼쪽 가장자리에 눈금자가 나옵니다:\n    - 눈금자 **좌클릭**: **Node line**(파랑)을 추가합니다. 노드가 여기에 스냅됩니다.\n    - 눈금자 **우클릭**: **Group line**(주황)을 추가합니다. 그룹이 여기에 스냅됩니다.\n    - 선의 마커를 다시 클릭하면 제거됩니다. 마커를 드래그하면 이동합니다.\n- 선은 워크플로와 함께 저장됩니다.\n\n**Line reveal distance (px)**\n- 기본값: **120**\n- 커서나 드래그 중인 것이 이 거리만큼 가까워질 때까지 선은 보이지 않습니다.\n\n**Also snap to other nodes and groups**\n- 기본값: **Off**\n- On = 다른 노드의 가장자리와 중심에도 스냅됩니다 (그것들엔 선이 표시되지 않음).\n\n---\n\n### 🔌 Connections\n\n**Connection FX**\n- 기본값: **Off**\n- 선을 드래그하는 동안, 연결할 수 있는 모든 소켓이 소켓 색으로 빛납니다.\n- 가까이 가면 소켓에서 링이 퍼져나갑니다. 가까울수록 더 크고 밝습니다.\n- **Connection FX reach (px):** 링이 시작되려면 커서가 얼마나 가까워야 하는지. 기본값 160.\n- **Connection FX zoomed-out glow (%):** 축소했을 때 유효한 소켓이 더 밝게 빛나서 찾을 수 있습니다. 기본값 60.\n\n---\n\n### 📝 Notes\n\n**Note language**\n- 기본값: **Same as ComfyUI**\n- 모든 LC Note가 열리는 언어.\n- 해당 번역이 이미 있는 노트만 전환됩니다. 나머지는 원래 언어로 남습니다.\n\n**Convert all notes**\n- 클릭 한 번으로 열려 있는 워크플로의 모든 **Markdown Note**와 **Note**가 **LC Note**로 바뀝니다.\n- 영어, `---`, 중국어 순으로 쓴 노트는 두 언어를 가진 LC Note 하나가 됩니다.\n- 위치, 크기, 색은 유지됩니다.\n- ⚠️ 이후에 워크플로를 저장하세요. 저장 없이 새로고침하면 변환이 사라집니다.\n\n---\n\n### 🩺 Optimization\n\n**Optimization report**\n- 버튼 하나. 캔버스를 몇 초간 알아서 이동하면서, 열려 있는 워크플로의 모든 팩이 그리고 실행하는 것의 시간을 재고 파일을 스캔합니다.\n- 캔버스를 느리게 하는 것을 큰 순서대로 목록으로 보여주며, 다음으로 분류됩니다:\n    - **That pack's own settings** (정확한 설정 이름, 위치, 현재 값)\n    - **LC123 optimization settings**\n    - **ComfyUI settings**\n    - **Sidebar tabs**\n    - **Required to function** (설정 없음, 그 팩이 작동하는 방식)\n- 열려 있는 워크플로에서 쓰는 노드 팩만 분석합니다.\n- 제안하는 모든 설정은 현재 값과 대조합니다:\n    - ⚠️ 큰 이득 · ✅ 할 만한 이득 · 💡 작은 이득\n    - ⚪ 이미 설정됨 · ➖ 해당 없음 · ℹ️ 필수, 설정 없음\n- **Show last run:** 맨 위 버튼이 이전 리포트로 전환합니다. 새로 실행할 때마다 지난번 이후 무엇이 빨라졌고 어떤 수정이 끝났는지도 표시합니다.\n    - 마지막 실행만 보관됩니다 (새로고침해도 유지). 실행할 때마다 교체됩니다.\n- 아무것도 바꾸지 않습니다. (실행 중에는 마우스를 가만히 두세요.)\n- 💡 빈 캔버스 우클릭 메뉴에도 있습니다.\n\n---\n\n### ⚡ Performance\n\n캔버스에 보이는 것만 바꿉니다. 생성, VRAM, **Save Image**, 모든 **IMAGE** 출력은 풀 해상도 그대로입니다. (가벼운 프리뷰가 가벼운 이미지를 뜻하지는 않습니다.)\n\n| 설정 | 기본값 | 기능 |\n|---|---|---|\n| **Remove wipe** | Off | LC 이미지 FX 노드의 호버 A/B 와이프를 끕니다. 마지막 결과는 그대로 표시됩니다. |\n| **Half-resolution previews** | Off | FX 프리뷰를 절반 크기로 그립니다. 패닝할 때 일이 줄어듭니다. |\n| **Clamp longest side** | Off | 노드 위 프리뷰를 줄여서 가장 긴 변이 **Max edge**에 맞게 합니다. |\n| **Max edge (px)** | 768 | **Clamp longest side**가 켜져 있을 때만 사용. 범위 256~2048. 무거운 그래프에서는 512를 써보세요. |\n| **No preview when collapsed** | On | 접힌 FX 노드는 프리뷰를 그리지 않습니다. |\n| **Hide FX on-node previews** | Off | 모든 LC 이미지 FX 프리뷰를 숨깁니다. |\n| **Recent colors** | On | 우클릭 **Colors** 메뉴에 최근 사용한 커스텀 색 8개를 보관합니다. Custom Scripts가 없으면 Custom 피커를 추가합니다. |\n| **Skin Beauty full preview override** | On | **LC Skin Beauty**는 half-res나 clamp가 켜져 있어도 풀 퀄리티 프리뷰를 유지해서 피부를 확대해서 볼 수 있습니다. 와이프는 여전히 **Remove wipe**를 따릅니다. |\n| **LoRA loader info button** | On | 각 **LC LoRA Loader** 행에 ℹ 버튼을 표시합니다. 트리거 워드는 LoRA 파일 자체에서 가져옵니다 (인터넷 불필요). 깔끔하게 하려면 끄세요. |\n| **Preview distance (px)** | 40 | 노드 텍스트처럼, 충분히 축소해서 이 값보다 작게 그려지면 노드 위 이미지가 꺼집니다. 작은 프리뷰가 먼저 꺼집니다. 0 = 항상 그림. |\n\n**영향받지 않는 것:** **LC Image Compare 🔎**, **LC Image Split 🖼️**, **LC Dynamic Overlay**는 무슨 설정이든 풀 프리뷰와 와이프를 유지합니다 (많이 축소했을 때 **Preview distance**만 이들을 끕니다).\n\n**추천 설정**\n- **일반 사용:** 전부 기본값으로 두세요.\n- **그래프가 버벅일 때:** **Half-resolution previews**와 **Clamp longest side**(Max edge 512)를 켜세요. **No preview when collapsed**는 켜둔 채로.\n- **가장 가벼운 캔버스:** **Hide FX on-node previews**를 켜세요. 전후 비교가 필요할 땐 **Image Compare**나 **Image Split**을 쓰세요.\n- 💡 변경은 다음 redraw 때 적용됩니다. 캔버스를 살짝 움직이면 되고, 재시작은 필요 없습니다.\n\n---\n\n\"True Nothing is. Permitted Everything is\"- Yoda Auditore, Assassin's Wars",
              "src": "dfe9c6e3",
              "srcTitle": "LC123 Settings ⚙️"
            }
          },
          "titles": {
            "en": "LC123 Settings ⚙️",
            "zh": "LC123 设置 ⚙️",
            "ja": "LC123 設定 ⚙️",
            "ko": "LC123 Settings ⚙️"
          }
        },
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "English ✏️",
        "# LC123 Settings ⚙️\n\n**Where are they?** Open **Settings** (the gear), then **LC123 Settings ⚙️**. There are five sections: **Align**, **Connections**, **Notes**, **Optimization** and **Performance**.\n\n- 💡 Missing a setting? Restart ComfyUI, then press **Ctrl+F5** so the browser loads the new files.\n\n---\n\n### 📐 Align\n\n**Align tool**\n- Default: **On**\n- The switch for the whole tool. Off = no **📐** button in the top toolbar and none of the features below.\n- With it on, the **📐** button turns Align on or off **for the open workflow**.\n    - That on/off is saved in the workflow. Save it with Align on and it opens with Align on, even on a fresh ComfyUI.\n    - Every workflow tab keeps its own. Switch tabs and the tool follows that tab (on in one, off in the other, no mix-ups).\n    - Turning it on or off counts as a change to the workflow, so you get the unsaved dot.\n- Nodes snap to **Node lines**, groups snap to **Group lines**. A line lights up when you get close.\n- **Snap distance** is ComfyUI's own **Snap to grid size** (Settings > Lite Graph > Canvas). Smaller grid = tighter snap. New lines land on that grid too.\n    - **Shift** while dragging hands the drag to ComfyUI's own grid snap (no line snap). With **Always snap to grid** on, a line snap still wins on the axis it caught.\n\n**Rulers**\n- Default: **On**\n- Rulers on the top and left edge while Align is on:\n    - **Left click** a ruler: adds a **Node line** (blue). Nodes snap to it.\n    - **Right click** a ruler: adds a **Group line** (orange). Groups snap to it.\n    - Click a line's marker again to remove it. Drag a marker to move it.\n- Lines save with the workflow.\n\n**Line reveal distance (px)**\n- Default: **120**\n- Lines stay invisible until the cursor or whatever you drag gets this close.\n\n**Also snap to other nodes and groups**\n- Default: **Off**\n- On = also snap to other nodes' edges and centers (no line is shown for those).\n\n---\n\n### 🔌 Connections\n\n**Connection FX**\n- Default: **Off**\n- While you drag a wire, every socket it can plug into glows in its socket color.\n- Get close and rings pulse out of the socket. Closer = bigger and brighter.\n- **Connection FX reach (px):** how close the cursor has to be before the rings start. Default 160.\n- **Connection FX zoomed-out glow (%):** zoomed out, every valid socket glows brighter so you can find it. Default 60.\n\n---\n\n### 📝 Notes\n\n**Note language**\n- Default: **Same as ComfyUI**\n- The language every LC Note opens in.\n- Only notes that already have that translation switch. The rest stay in their original language.\n\n**Convert all notes**\n- One click turns every **Markdown Note** and **Note** in the open workflow into an **LC Note**.\n- A note written as English, then `---`, then Chinese becomes one LC Note with both languages.\n- Position, size and color are kept.\n- ⚠️ Save the workflow afterwards. If you reload without saving, the conversion is gone.\n\n---\n\n### 🩺 Optimization\n\n**Optimization report**\n- One button. It pans the canvas by itself for a few seconds, times what every pack in the open workflow draws and runs, and scans their files.\n- You get a list of what slows your canvas down, biggest first, sorted into:\n    - **That pack's own settings** (the exact setting name, where it lives and its current value)\n    - **LC123 optimization settings**\n    - **ComfyUI settings**\n    - **Sidebar tabs**\n    - **Required to function** (no setting, it is how that pack works)\n- Only node packs used in the open workflow are analyzed.\n- Every setting it suggests is checked against its current value:\n    - ⚠️ big gain · ✅ worthwhile gain · 💡 small gain\n    - ⚪ already set · ➖ does not apply · ℹ️ required, no setting for it\n- **Show last run:** the button at the top flips to the previous report. Each new run also shows what got faster and which fixes are done since last time.\n    - Only the last run is kept (it survives a refresh). Each run replaces it.\n- Nothing is changed. (Keep the mouse still while it runs.)\n- 💡 Also in the right-click menu on the empty canvas.\n\n---\n\n### ⚡ Performance\n\nThese only change what you see on the canvas. Generation, VRAM, **Save Image** and every **IMAGE** output stay full resolution. (A lighter preview never means a lighter image.)\n\n| Setting | Default | What it does |\n|---|---|---|\n| **Remove wipe** | Off | Turns off the hover A/B wipe on LC image FX nodes. The last result still shows. |\n| **Half-resolution previews** | Off | Draws FX previews at half size. Less work while panning. |\n| **Clamp longest side** | Off | Shrinks on-node previews so the longest side fits **Max edge**. |\n| **Max edge (px)** | 768 | Only used when **Clamp longest side** is on. Range 256 to 2048. Try 512 on heavy graphs. |\n| **No preview when collapsed** | On | Collapsed FX nodes skip drawing their preview. |\n| **Hide FX on-node previews** | Off | Hides every LC image FX preview. |\n| **Recent colors** | On | Keeps your last 8 custom colors in the right-click **Colors** menu. Adds a Custom picker if Custom Scripts is not installed. |\n| **Skin Beauty full preview override** | On | **LC Skin Beauty** keeps a full-quality preview even with half-res or clamp on, so you can still zoom into skin. Wipe still follows **Remove wipe**. |\n| **LoRA loader info button** | On | Shows the ℹ button on each **LC LoRA Loader** row. Trigger words come from the LoRA file itself (no internet). Turn off to declutter. |\n| **Preview distance (px)** | 40 | Like node text, an on-node image switches off when you zoom out far enough that it is drawn smaller than this. Smaller previews switch off first. 0 = always draw. |\n\n**Never affected:** **LC Image Compare 🔎**, **LC Image Split 🖼️** and **LC Dynamic Overlay** keep their full preview and wipe no matter what (only **Preview distance** switches them off when zoomed far out).\n\n**Suggested setups**\n- **Normal use:** leave everything at default.\n- **Laggy graph:** turn on **Half-resolution previews** and **Clamp longest side** (Max edge 512). Keep **No preview when collapsed** on.\n- **Lightest canvas:** turn on **Hide FX on-node previews**. Use **Image Compare** or **Image Split** when you need to see a before/after.\n- 💡 Changes apply on the next redraw. Pan the canvas a little, no restart needed.\n\n---\n\n\"True Nothing is. Permitted Everything is\"- Yoda Auditore, Assassin's Wars"
      ],
      "widgets_values_named": {
        "language": "English ✏️",
        "text": "# LC123 Settings ⚙️\n\n**Where are they?** Open **Settings** (the gear), then **LC123 Settings ⚙️**. There are five sections: **Align**, **Connections**, **Notes**, **Optimization** and **Performance**.\n\n- 💡 Missing a setting? Restart ComfyUI, then press **Ctrl+F5** so the browser loads the new files.\n\n---\n\n### 📐 Align\n\n**Align tool**\n- Default: **On**\n- The switch for the whole tool. Off = no **📐** button in the top toolbar and none of the features below.\n- With it on, the **📐** button turns Align on or off **for the open workflow**.\n    - That on/off is saved in the workflow. Save it with Align on and it opens with Align on, even on a fresh ComfyUI.\n    - Every workflow tab keeps its own. Switch tabs and the tool follows that tab (on in one, off in the other, no mix-ups).\n    - Turning it on or off counts as a change to the workflow, so you get the unsaved dot.\n- Nodes snap to **Node lines**, groups snap to **Group lines**. A line lights up when you get close.\n- **Snap distance** is ComfyUI's own **Snap to grid size** (Settings > Lite Graph > Canvas). Smaller grid = tighter snap. New lines land on that grid too.\n    - **Shift** while dragging hands the drag to ComfyUI's own grid snap (no line snap). With **Always snap to grid** on, a line snap still wins on the axis it caught.\n\n**Rulers**\n- Default: **On**\n- Rulers on the top and left edge while Align is on:\n    - **Left click** a ruler: adds a **Node line** (blue). Nodes snap to it.\n    - **Right click** a ruler: adds a **Group line** (orange). Groups snap to it.\n    - Click a line's marker again to remove it. Drag a marker to move it.\n- Lines save with the workflow.\n\n**Line reveal distance (px)**\n- Default: **120**\n- Lines stay invisible until the cursor or whatever you drag gets this close.\n\n**Also snap to other nodes and groups**\n- Default: **Off**\n- On = also snap to other nodes' edges and centers (no line is shown for those).\n\n---\n\n### 🔌 Connections\n\n**Connection FX**\n- Default: **Off**\n- While you drag a wire, every socket it can plug into glows in its socket color.\n- Get close and rings pulse out of the socket. Closer = bigger and brighter.\n- **Connection FX reach (px):** how close the cursor has to be before the rings start. Default 160.\n- **Connection FX zoomed-out glow (%):** zoomed out, every valid socket glows brighter so you can find it. Default 60.\n\n---\n\n### 📝 Notes\n\n**Note language**\n- Default: **Same as ComfyUI**\n- The language every LC Note opens in.\n- Only notes that already have that translation switch. The rest stay in their original language.\n\n**Convert all notes**\n- One click turns every **Markdown Note** and **Note** in the open workflow into an **LC Note**.\n- A note written as English, then `---`, then Chinese becomes one LC Note with both languages.\n- Position, size and color are kept.\n- ⚠️ Save the workflow afterwards. If you reload without saving, the conversion is gone.\n\n---\n\n### 🩺 Optimization\n\n**Optimization report**\n- One button. It pans the canvas by itself for a few seconds, times what every pack in the open workflow draws and runs, and scans their files.\n- You get a list of what slows your canvas down, biggest first, sorted into:\n    - **That pack's own settings** (the exact setting name, where it lives and its current value)\n    - **LC123 optimization settings**\n    - **ComfyUI settings**\n    - **Sidebar tabs**\n    - **Required to function** (no setting, it is how that pack works)\n- Only node packs used in the open workflow are analyzed.\n- Every setting it suggests is checked against its current value:\n    - ⚠️ big gain · ✅ worthwhile gain · 💡 small gain\n    - ⚪ already set · ➖ does not apply · ℹ️ required, no setting for it\n- **Show last run:** the button at the top flips to the previous report. Each new run also shows what got faster and which fixes are done since last time.\n    - Only the last run is kept (it survives a refresh). Each run replaces it.\n- Nothing is changed. (Keep the mouse still while it runs.)\n- 💡 Also in the right-click menu on the empty canvas.\n\n---\n\n### ⚡ Performance\n\nThese only change what you see on the canvas. Generation, VRAM, **Save Image** and every **IMAGE** output stay full resolution. (A lighter preview never means a lighter image.)\n\n| Setting | Default | What it does |\n|---|---|---|\n| **Remove wipe** | Off | Turns off the hover A/B wipe on LC image FX nodes. The last result still shows. |\n| **Half-resolution previews** | Off | Draws FX previews at half size. Less work while panning. |\n| **Clamp longest side** | Off | Shrinks on-node previews so the longest side fits **Max edge**. |\n| **Max edge (px)** | 768 | Only used when **Clamp longest side** is on. Range 256 to 2048. Try 512 on heavy graphs. |\n| **No preview when collapsed** | On | Collapsed FX nodes skip drawing their preview. |\n| **Hide FX on-node previews** | Off | Hides every LC image FX preview. |\n| **Recent colors** | On | Keeps your last 8 custom colors in the right-click **Colors** menu. Adds a Custom picker if Custom Scripts is not installed. |\n| **Skin Beauty full preview override** | On | **LC Skin Beauty** keeps a full-quality preview even with half-res or clamp on, so you can still zoom into skin. Wipe still follows **Remove wipe**. |\n| **LoRA loader info button** | On | Shows the ℹ button on each **LC LoRA Loader** row. Trigger words come from the LoRA file itself (no internet). Turn off to declutter. |\n| **Preview distance (px)** | 40 | Like node text, an on-node image switches off when you zoom out far enough that it is drawn smaller than this. Smaller previews switch off first. 0 = always draw. |\n\n**Never affected:** **LC Image Compare 🔎**, **LC Image Split 🖼️** and **LC Dynamic Overlay** keep their full preview and wipe no matter what (only **Preview distance** switches them off when zoomed far out).\n\n**Suggested setups**\n- **Normal use:** leave everything at default.\n- **Laggy graph:** turn on **Half-resolution previews** and **Clamp longest side** (Max edge 512). Keep **No preview when collapsed** on.\n- **Lightest canvas:** turn on **Hide FX on-node previews**. Use **Image Compare** or **Image Split** when you need to see a before/after.\n- 💡 Changes apply on the next redraw. Pan the canvas a little, no restart needed.\n\n---\n\n\"True Nothing is. Permitted Everything is\"- Yoda Auditore, Assassin's Wars"
      },
      "color": "#dc6947",
      "bgcolor": "#c85533"
    },
    {
      "id": 3300,
      "type": "LCImageMaskResize",
      "pos": [
        -4600,
        -1820
      ],
      "size": [
        280,
        120
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 158,
      "mode": 2,
      "inputs": [
        {
          "name": "image",
          "shape": 7,
          "type": "IMAGE",
          "link": 44633
        },
        {
          "name": "mask",
          "shape": 7,
          "type": "MASK",
          "link": null
        },
        {
          "name": "custom_width",
          "type": "INT",
          "widget": {
            "name": "custom_width"
          },
          "link": 44634
        },
        {
          "name": "custom_height",
          "type": "INT",
          "widget": {
            "name": "custom_height"
          },
          "link": 44635
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            44638
          ]
        },
        {
          "name": "mask",
          "type": "MASK",
          "links": null
        },
        {
          "name": "width",
          "type": "INT",
          "links": null
        },
        {
          "name": "height",
          "type": "INT",
          "links": null
        }
      ],
      "properties": {
        "lc_w": 280,
        "lc_h": 120,
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "05ce0f935fb4eaf4ca0b415f1710fa84af7cb9a0",
        "Node name for S&R": "LCImageMaskResize",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        false,
        "custom",
        1024,
        1024,
        "none",
        1,
        1,
        "lanczos",
        "total_pixels",
        "center",
        8
      ],
      "widgets_values_named": {
        "match_aspect_ratio": false,
        "aspect_ratio": "custom",
        "custom_width": 1024,
        "custom_height": 1024,
        "upscale_by": "none",
        "multiplier": 1,
        "megapixels": 1,
        "upscale_method": "lanczos",
        "proportion": "total_pixels",
        "crop_location": "center",
        "divisible_by": 8
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 3301,
      "type": "LCAnySwitch",
      "pos": [
        -4890,
        -1930
      ],
      "size": [
        330,
        120
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 202,
      "mode": 4,
      "inputs": [
        {
          "label": "IMAGE",
          "name": "any_01",
          "shape": 7,
          "type": "IMAGE",
          "link": 44638
        },
        {
          "label": "IMAGE",
          "name": "any_02",
          "shape": 7,
          "type": "IMAGE",
          "link": 44639
        }
      ],
      "outputs": [
        {
          "label": "IMAGE",
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            44640,
            44641,
            44642
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "05ce0f935fb4eaf4ca0b415f1710fa84af7cb9a0",
        "Node name for S&R": "LCAnySwitch",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {
            "any_01": true,
            "any_02": true,
            "any_03": true,
            "any_04": true,
            "any_05": true,
            "any_06": true,
            "any_07": true,
            "any_08": true,
            "any_09": true,
            "any_10": true,
            "any_11": true,
            "any_12": true,
            "any_13": true,
            "any_14": true,
            "any_15": true,
            "any_16": true,
            "any_17": true,
            "any_18": true,
            "any_19": true,
            "any_20": true
          },
          "send_to_any": 0,
          "apply_to_unrepeated": 0,
          "version": "7.8"
        },
        "lc_w": 330,
        "lc_h": 120
      },
      "widgets_values": [
        2
      ],
      "widgets_values_named": {
        "inputcount": 2
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 1990,
      "type": "SetNode",
      "pos": [
        -4890,
        -1890
      ],
      "size": [
        210,
        40
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 216,
      "mode": 4,
      "inputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "link": 44640
        }
      ],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": null
        }
      ],
      "title": "Set_Maskimg",
      "properties": {
        "Node name for S&R": "SetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "previousName": "Maskimg",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.5.2",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Maskimg"
      ],
      "widgets_values_named": {
        "Constant": "Maskimg"
      },
      "color": "#2a363b",
      "bgcolor": "#3f5159",
      "shape": 2
    },
    {
      "id": 3302,
      "type": "LCAnySwitch",
      "pos": [
        -5130,
        -2170
      ],
      "size": [
        330,
        120
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 203,
      "mode": 0,
      "inputs": [
        {
          "label": "IMAGE",
          "name": "any_01",
          "shape": 7,
          "type": "IMAGE",
          "link": 44649
        },
        {
          "label": "IMAGE",
          "name": "any_02",
          "shape": 7,
          "type": "IMAGE",
          "link": 44648
        }
      ],
      "outputs": [
        {
          "label": "IMAGE",
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            44650
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "05ce0f935fb4eaf4ca0b415f1710fa84af7cb9a0",
        "Node name for S&R": "LCAnySwitch",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {
            "any_01": true,
            "any_02": true,
            "any_03": true,
            "any_04": true,
            "any_05": true,
            "any_06": true,
            "any_07": true,
            "any_08": true,
            "any_09": true,
            "any_10": true,
            "any_11": true,
            "any_12": true,
            "any_13": true,
            "any_14": true,
            "any_15": true,
            "any_16": true,
            "any_17": true,
            "any_18": true,
            "any_19": true,
            "any_20": true
          },
          "send_to_any": 0,
          "apply_to_unrepeated": 0,
          "version": "7.8"
        },
        "lc_w": 330,
        "lc_h": 120
      },
      "widgets_values": [
        2
      ],
      "widgets_values_named": {
        "inputcount": 2
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 173,
      "type": "GetNode",
      "pos": [
        -3310,
        -280
      ],
      "size": [
        210,
        60
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 17,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            47395
          ]
        }
      ],
      "title": "Get_Rough Draft",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.5.2",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Rough Draft"
      ],
      "widgets_values_named": {
        "Constant": "Rough Draft"
      },
      "color": "#2a363b",
      "bgcolor": "#3f5159",
      "shape": 2
    },
    {
      "id": 3161,
      "type": "LCVRAMCacheClear",
      "pos": [
        -1520,
        -2170
      ],
      "size": [
        240,
        30
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 188,
      "mode": 0,
      "inputs": [
        {
          "name": "any",
          "type": "*",
          "link": 47343
        }
      ],
      "outputs": [
        {
          "name": "any",
          "type": "*",
          "links": null
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "b5960f890540269a90c505ed069026c97a76513f",
        "Node name for S&R": "LCVRAMCacheClear",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 3384,
      "type": "LCNote",
      "pos": [
        -2070,
        -2780
      ],
      "size": [
        320,
        280
      ],
      "flags": {
        "pinned": true
      },
      "order": 18,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "LC Vision Prompt Enhancer 📝",
      "properties": {
        "lc_note": {
          "source": "en",
          "texts": {
            "en": {
              "text": "## LC Vision Prompt Enhancer 📝\n\n**LC Vision Loader 🔬**:\n- ⚠️ This auto-downloads the model you choose on the first run, so it will take several minutes.\n- The model selector shows your already downloaded options as well as available downloads.\n\n**LC Vision Prompt Enhancer 📝**:\n- Write your rough `prompt_text`, then pick a preset.\n   - **Enhance**: adds detail, keeps your original intent.\n   - **Refine**: cleans up wording and structure, adds nothing new.\n   - **Creative Rewrite**: reimagines the scene around your subject.\n   - **Detailed Visual**: maxes out concrete visual detail for photoreal output.\n- Text-only, no image or video input needed. It works straight off the prompt.\n- ⚠️ **Custom** preset needs an actual system prompt in `custom_system_prompt`. Leave it blank and it errors.\n- 💡 **style_tag** locks the rewrite to a specific visual style on top of whatever the preset already does."
            },
            "zh": {
              "text": "## LC Vision Prompt Enhancer 📝\n\n**LC Vision Loader 🔬**：\n- ⚠️ 首次运行会自动下载你选择的模型，所以要等几分钟。\n- 模型选择器会同时显示你已下载的选项和可下载的选项。\n\n**LC Vision Prompt Enhancer 📝**：\n- 先写下粗略的 `prompt_text`，再选一个预设。\n   - **Enhance**：增加细节，保留你的原意。\n   - **Refine**：整理措辞和结构，不添加新内容。\n   - **Creative Rewrite**：围绕你的主体重新构想场景。\n   - **Detailed Visual**：把具体的视觉细节拉到最满，适合照片级输出。\n- 纯文本，不需要图片或视频输入，直接根据提示词工作。\n- ⚠️ **Custom** 预设需要在 `custom_system_prompt` 里填写真正的系统提示词。留空会报错。\n- 💡 **style_tag** 会在预设已有效果的基础上，把改写锁定到某种特定的视觉风格。",
              "src": "3289b8e6",
              "srcTitle": "LC Vision Prompt Enhancer 📝"
            },
            "ja": {
              "text": "## LC Vision Prompt Enhancer 📝\n\n**LC Vision Loader 🔬**:\n- ⚠️ 選んだモデルは初回実行時に自動でダウンロードされるので、数分かかります。\n- モデルセレクターには、ダウンロード済みのものとダウンロード可能なものが表示されます。\n\n**LC Vision Prompt Enhancer 📝**:\n- ざっくりした `prompt_text` を書いて、プリセットを選びます。\n   - **Enhance**: ディテールを足しつつ、元の意図は保ちます。\n   - **Refine**: 言い回しと構造を整えるだけで、何も足しません。\n   - **Creative Rewrite**: 被写体を軸にシーンを作り直します。\n   - **Detailed Visual**: フォトリアル向けに、具体的な視覚ディテールを最大限まで盛ります。\n- テキストのみで、画像や動画の入力は不要です。プロンプトだけで動きます。\n- ⚠️ **Custom** プリセットでは、`custom_system_prompt` に実際のシステムプロンプトが必要です。空だとエラーになります。\n- 💡 **style_tag** は、プリセットの処理に加えて、書き換えを特定のビジュアルスタイルに固定します。",
              "src": "3289b8e6",
              "srcTitle": "LC Vision Prompt Enhancer 📝"
            },
            "ko": {
              "text": "## LC Vision Prompt Enhancer 📝\n\n**LC Vision Loader 🔬**:\n- ⚠️ 처음 실행할 때 선택한 모델을 자동으로 다운로드하므로 몇 분 걸립니다.\n- 모델 선택기에는 이미 다운로드한 옵션과 다운로드할 수 있는 옵션이 함께 표시됩니다.\n\n**LC Vision Prompt Enhancer 📝**:\n- 대충 `prompt_text`를 쓰고 프리셋을 고르세요.\n   - **Enhance**: 디테일을 더하되 원래 의도는 유지합니다.\n   - **Refine**: 표현과 구조를 다듬고, 새로운 내용은 추가하지 않습니다.\n   - **Creative Rewrite**: 피사체를 중심으로 장면을 새로 구상합니다.\n   - **Detailed Visual**: 포토리얼 출력을 위해 구체적인 시각 디테일을 최대로 끌어올립니다.\n- 텍스트 전용이라 이미지나 영상 입력이 필요 없습니다. 프롬프트만으로 바로 작동합니다.\n- ⚠️ **Custom** 프리셋은 `custom_system_prompt`에 실제 system prompt가 필요합니다. 비워 두면 에러가 납니다.\n- 💡 **style_tag**는 프리셋이 이미 하는 일 위에, 다시 쓰기를 특정 비주얼 스타일로 고정합니다.",
              "src": "3289b8e6",
              "srcTitle": "LC Vision Prompt Enhancer 📝"
            }
          },
          "titles": {
            "en": "LC Vision Prompt Enhancer 📝",
            "zh": "LC Vision Prompt Enhancer 📝",
            "ja": "LC Vision Prompt Enhancer 📝",
            "ko": "LC Vision Prompt Enhancer 📝"
          }
        },
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "English ✏️",
        "## LC Vision Prompt Enhancer 📝\n\n**LC Vision Loader 🔬**:\n- ⚠️ This auto-downloads the model you choose on the first run, so it will take several minutes.\n- The model selector shows your already downloaded options as well as available downloads.\n\n**LC Vision Prompt Enhancer 📝**:\n- Write your rough `prompt_text`, then pick a preset.\n   - **Enhance**: adds detail, keeps your original intent.\n   - **Refine**: cleans up wording and structure, adds nothing new.\n   - **Creative Rewrite**: reimagines the scene around your subject.\n   - **Detailed Visual**: maxes out concrete visual detail for photoreal output.\n- Text-only, no image or video input needed. It works straight off the prompt.\n- ⚠️ **Custom** preset needs an actual system prompt in `custom_system_prompt`. Leave it blank and it errors.\n- 💡 **style_tag** locks the rewrite to a specific visual style on top of whatever the preset already does."
      ],
      "widgets_values_named": {
        "language": "English ✏️",
        "text": "## LC Vision Prompt Enhancer 📝\n\n**LC Vision Loader 🔬**:\n- ⚠️ This auto-downloads the model you choose on the first run, so it will take several minutes.\n- The model selector shows your already downloaded options as well as available downloads.\n\n**LC Vision Prompt Enhancer 📝**:\n- Write your rough `prompt_text`, then pick a preset.\n   - **Enhance**: adds detail, keeps your original intent.\n   - **Refine**: cleans up wording and structure, adds nothing new.\n   - **Creative Rewrite**: reimagines the scene around your subject.\n   - **Detailed Visual**: maxes out concrete visual detail for photoreal output.\n- Text-only, no image or video input needed. It works straight off the prompt.\n- ⚠️ **Custom** preset needs an actual system prompt in `custom_system_prompt`. Leave it blank and it errors.\n- 💡 **style_tag** locks the rewrite to a specific visual style on top of whatever the preset already does."
      },
      "color": "#233",
      "bgcolor": "#355"
    },
    {
      "id": 3160,
      "type": "LC Bypasser Panel",
      "pos": [
        -2070,
        -2920
      ],
      "size": [
        320,
        102
      ],
      "flags": {
        "pinned": true
      },
      "order": 111,
      "mode": 0,
      "inputs": [
        {
          "name": "hub",
          "type": "*",
          "link": 43615
        }
      ],
      "outputs": [
        {
          "name": "OPT_CONNECTION",
          "type": "*",
          "links": null
        }
      ],
      "properties": {
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        true,
        false
      ],
      "widgets_values_named": {
        "Enable 1": true,
        "Enable 2": false
      },
      "color": "#c3782d",
      "bgcolor": "#af6419"
    },
    {
      "id": 3386,
      "type": "SetNode",
      "pos": [
        -1730,
        -2210
      ],
      "size": [
        270,
        60
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 113,
      "mode": 0,
      "inputs": [
        {
          "name": "LC_VISION_MODEL",
          "type": "LC_VISION_MODEL",
          "link": 45190
        }
      ],
      "outputs": [
        {
          "name": "LC_VISION_MODEL",
          "type": "LC_VISION_MODEL",
          "links": null
        }
      ],
      "title": "Set_Vision Model",
      "properties": {
        "Node name for S&R": "SetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "previousName": "Vision Model",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Vision Model"
      ],
      "widgets_values_named": {
        "Constant": "Vision Model"
      }
    },
    {
      "id": 2995,
      "type": "SetNode",
      "pos": [
        -3920,
        -2420
      ],
      "size": [
        210,
        50
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 189,
      "mode": 0,
      "inputs": [
        {
          "name": "STRING",
          "type": "STRING",
          "link": 47345
        }
      ],
      "outputs": [
        {
          "name": "STRING",
          "type": "STRING",
          "links": null
        }
      ],
      "title": "Set_Prompt Tag",
      "properties": {
        "Node name for S&R": "SetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "previousName": "Prompt Tag",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.5.2",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Prompt Tag"
      ],
      "widgets_values_named": {
        "Constant": "Prompt Tag"
      }
    },
    {
      "id": 3059,
      "type": "LCTextRemove",
      "pos": [
        -3920,
        -2460
      ],
      "size": [
        360,
        414
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 140,
      "mode": 0,
      "inputs": [
        {
          "name": "text",
          "type": "STRING",
          "link": 45193
        }
      ],
      "outputs": [
        {
          "name": "text",
          "type": "STRING",
          "links": [
            47344
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "79b81758ac54ba8f9b46ecf7682902e87dc26684",
        "Node name for S&R": "LCTextRemove",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "aux_id": "lonecatone23/ComfyUI_LC123_nodes"
      },
      "widgets_values": [
        10,
        false,
        0,
        "watermark",
        "name",
        "Logo",
        "right corner",
        "righthand corner",
        "left corner",
        "lefthand corner",
        "written",
        "artist's",
        "along the bottom",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        ""
      ],
      "widgets_values_named": {
        "entrycount": 10,
        "use_regex": false,
        "count": 0,
        "find_1": "watermark",
        "find_2": "name",
        "find_3": "Logo",
        "find_4": "right corner",
        "find_5": "righthand corner",
        "find_6": "left corner",
        "find_7": "lefthand corner",
        "find_8": "written",
        "find_9": "artist's",
        "find_10": "along the bottom",
        "find_11": "",
        "find_12": "",
        "find_13": "",
        "find_14": "",
        "find_15": "",
        "find_16": "",
        "find_17": "",
        "find_18": "",
        "find_19": "",
        "find_20": ""
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 3388,
      "type": "GetNode",
      "pos": [
        -3920,
        -2500
      ],
      "size": [
        210,
        60
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 19,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "LC_VISION_MODEL",
          "type": "LC_VISION_MODEL",
          "links": [
            45191
          ]
        }
      ],
      "title": "Get_Vision Model",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Vision Model"
      ],
      "widgets_values_named": {
        "Constant": "Vision Model"
      }
    },
    {
      "id": 3387,
      "type": "LCVisionCaption",
      "pos": [
        -4160,
        -2880
      ],
      "size": [
        230,
        470
      ],
      "flags": {
        "pinned": true
      },
      "order": 118,
      "mode": 0,
      "inputs": [
        {
          "name": "vision_model",
          "type": "LC_VISION_MODEL",
          "link": 45191
        },
        {
          "name": "reference_image_1",
          "shape": 7,
          "type": "IMAGE",
          "link": 45192
        },
        {
          "name": "reference_image_2",
          "shape": 7,
          "type": "IMAGE",
          "link": null
        },
        {
          "name": "reference_image_3",
          "shape": 7,
          "type": "IMAGE",
          "link": null
        },
        {
          "name": "reference_video",
          "shape": 7,
          "type": "IMAGE",
          "link": null
        },
        {
          "name": "seed",
          "shape": 7,
          "type": "INT",
          "widget": {
            "name": "seed"
          },
          "link": 45443
        }
      ],
      "outputs": [
        {
          "name": "text",
          "type": "STRING",
          "links": [
            45193
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC_Vision_nodes",
        "ver": "8445642b2341676bf59a96a67f919112eeb31451",
        "Node name for S&R": "LCVisionCaption",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "Describe this image in detail: the subject's appearance, pose, and expression, their clothing, the setting and background, lighting and color palette, composition, and overall mood.",
        "You are a helpful vision assistant. Describe what you are shown in rich, concrete detail rather than a brief summary: subject appearance, pose and expression, clothing, setting and background, lighting, color palette, composition and camera angle, and overall mood. Do not skip detail for the sake of brevity. Respond with the final answer only -- no reasoning, no <think> blocks.",
        8,
        "Realistic",
        768,
        90,
        1024,
        0.6,
        0.9,
        1.1,
        2245691104,
        "randomize"
      ],
      "widgets_values_named": {
        "prompt": "Describe this image in detail: the subject's appearance, pose, and expression, their clothing, the setting and background, lighting and color palette, composition, and overall mood.",
        "system_prompt": "You are a helpful vision assistant. Describe what you are shown in rich, concrete detail rather than a brief summary: subject appearance, pose and expression, clothing, setting and background, lighting, color palette, composition and camera angle, and overall mood. Do not skip detail for the sake of brevity. Respond with the final answer only -- no reasoning, no <think> blocks.",
        "video_max_frames": 8,
        "style_tag": "Realistic",
        "max_image_side": 768,
        "jpeg_quality": 90,
        "max_tokens": 1024,
        "temperature": 0.6,
        "top_p": 0.9,
        "repetition_penalty": 1.1,
        "seed": 2245691104,
        "control_after_generate": "randomize"
      },
      "color": "#465f5a",
      "bgcolor": "#324b46"
    },
    {
      "id": 3389,
      "type": "LCNote",
      "pos": [
        -4160,
        -2370
      ],
      "size": [
        540,
        200
      ],
      "flags": {
        "pinned": true
      },
      "order": 20,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "Notes:",
      "properties": {
        "lc_note": {
          "source": "en",
          "texts": {
            "en": {
              "text": "## LC Vision Caption 📝\n\n**LC Vision Loader 🔬**:\n- ⚠️ This auto downloads the model you choose on the first run, so it will take several minutes.\n- The model selector shows your already downloaded options as well as available downloads.\n\n**LC Vision Caption 📝**:\n- 💡 The node analyzes the image and detects subject, pose, clothing, setting, lighting, color, composition, and mood, not just a one-line summary.\n- Each reference gets its own label (`<Reference 1>`, `<Reference 2>`, `<Reference 3>`), described individually instead of mashed into one blob. 😎\n- `style_tag` pushes the description toward a specific visual style regardless of what the reference actually looks like.\n\n**💡 Analyzing 3 images at once**\n- Custom prompt: \"Analyze <Reference 1>, <Reference 2>, and <Reference 3> individually: describe each one's subject, setting, lighting, and mood. Then compare all three and note the key similarities and differences between them.\"\n- The model addresses each picture by its own label instead of blending them together."
            },
            "zh": {
              "text": "## LC Vision Caption 📝\n\n**LC Vision Loader 🔬**：\n- ⚠️ 首次运行会自动下载你选择的模型，所以要等几分钟。\n- 模型选择器会同时显示你已下载的选项和可下载的选项。\n\n**LC Vision Caption 📝**：\n- 💡 这个节点会分析图片，识别主体、姿势、服装、场景、光线、色彩、构图和情绪，而不只是一句话的概括。\n- 每张参考图都有自己的标签（`<Reference 1>`、`<Reference 2>`、`<Reference 3>`），分别描述，而不是糊成一团。😎\n- `style_tag` 会把描述推向某种特定的视觉风格，不管参考图实际是什么样。\n\n**💡 一次分析 3 张图**\n- 自定义提示词：\"Analyze <Reference 1>, <Reference 2>, and <Reference 3> individually: describe each one's subject, setting, lighting, and mood. Then compare all three and note the key similarities and differences between them.\"\n- 模型会按各自的标签称呼每张图片，而不是把它们混在一起。",
              "src": "fe75608",
              "srcTitle": "Notes:"
            },
            "ja": {
              "text": "## LC Vision Caption 📝\n\n**LC Vision Loader 🔬**:\n- ⚠️ 選んだモデルは初回実行時に自動でダウンロードされるので、数分かかります。\n- モデルセレクターには、ダウンロード済みのものとダウンロード可能なものが表示されます。\n\n**LC Vision Caption 📝**:\n- 💡 このノードは画像を分析して、被写体、ポーズ、服装、場所、ライティング、色、構図、ムードを検出します。一行の要約だけではありません。\n- 各リファレンスには個別のラベル（`<Reference 1>`、`<Reference 2>`、`<Reference 3>`）が付き、ひとかたまりにせず1枚ずつ説明されます。😎\n- `style_tag` は、リファレンスの実際の見た目に関係なく、説明を特定のビジュアルスタイルに寄せます。\n\n**💡 3枚を同時に分析する**\n- Custom prompt: \"Analyze <Reference 1>, <Reference 2>, and <Reference 3> individually: describe each one's subject, setting, lighting, and mood. Then compare all three and note the key similarities and differences between them.\"\n- モデルは各画像をそれぞれのラベルで呼び、混ぜ合わせません。",
              "src": "fe75608",
              "srcTitle": "Notes:"
            },
            "ko": {
              "text": "## LC Vision Caption 📝\n\n**LC Vision Loader 🔬**:\n- ⚠️ 처음 실행할 때 선택한 모델을 자동으로 다운로드하므로 몇 분 걸립니다.\n- 모델 선택기에는 이미 다운로드한 옵션과 다운로드할 수 있는 옵션이 함께 표시됩니다.\n\n**LC Vision Caption 📝**:\n- 💡 이 노드는 이미지를 분석해서 피사체, 포즈, 의상, 배경, 조명, 색감, 구도, 분위기를 감지합니다. 한 줄 요약에 그치지 않습니다.\n- 각 참조에는 고유한 라벨(`<Reference 1>`, `<Reference 2>`, `<Reference 3>`)이 붙고, 하나로 뭉뚱그리지 않고 개별적으로 묘사됩니다. 😎\n- `style_tag`는 참조가 실제로 어떻게 생겼든 상관없이 묘사를 특정 비주얼 스타일 쪽으로 밀어 줍니다.\n\n**💡 이미지 3장을 한 번에 분석하기**\n- 커스텀 프롬프트: \"Analyze <Reference 1>, <Reference 2>, and <Reference 3> individually: describe each one's subject, setting, lighting, and mood. Then compare all three and note the key similarities and differences between them.\"\n- 모델이 그림들을 섞지 않고 각각의 라벨로 따로 다룹니다.",
              "src": "fe75608",
              "srcTitle": "Notes:"
            }
          },
          "titles": {
            "en": "Notes:",
            "zh": "说明：",
            "ja": "注意点:",
            "ko": "노트:"
          }
        },
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "English ✏️",
        "## LC Vision Caption 📝\n\n**LC Vision Loader 🔬**:\n- ⚠️ This auto downloads the model you choose on the first run, so it will take several minutes.\n- The model selector shows your already downloaded options as well as available downloads.\n\n**LC Vision Caption 📝**:\n- 💡 The node analyzes the image and detects subject, pose, clothing, setting, lighting, color, composition, and mood, not just a one-line summary.\n- Each reference gets its own label (`<Reference 1>`, `<Reference 2>`, `<Reference 3>`), described individually instead of mashed into one blob. 😎\n- `style_tag` pushes the description toward a specific visual style regardless of what the reference actually looks like.\n\n**💡 Analyzing 3 images at once**\n- Custom prompt: \"Analyze <Reference 1>, <Reference 2>, and <Reference 3> individually: describe each one's subject, setting, lighting, and mood. Then compare all three and note the key similarities and differences between them.\"\n- The model addresses each picture by its own label instead of blending them together."
      ],
      "widgets_values_named": {
        "language": "English ✏️",
        "text": "## LC Vision Caption 📝\n\n**LC Vision Loader 🔬**:\n- ⚠️ This auto downloads the model you choose on the first run, so it will take several minutes.\n- The model selector shows your already downloaded options as well as available downloads.\n\n**LC Vision Caption 📝**:\n- 💡 The node analyzes the image and detects subject, pose, clothing, setting, lighting, color, composition, and mood, not just a one-line summary.\n- Each reference gets its own label (`<Reference 1>`, `<Reference 2>`, `<Reference 3>`), described individually instead of mashed into one blob. 😎\n- `style_tag` pushes the description toward a specific visual style regardless of what the reference actually looks like.\n\n**💡 Analyzing 3 images at once**\n- Custom prompt: \"Analyze <Reference 1>, <Reference 2>, and <Reference 3> individually: describe each one's subject, setting, lighting, and mood. Then compare all three and note the key similarities and differences between them.\"\n- The model addresses each picture by its own label instead of blending them together."
      },
      "color": "#2E3A46",
      "bgcolor": "#2E3A46"
    },
    {
      "id": 3383,
      "type": "LCVisionLoader",
      "pos": [
        -2390,
        -2920
      ],
      "size": [
        310,
        300
      ],
      "flags": {
        "pinned": true
      },
      "order": 21,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "vision_model",
          "type": "LC_VISION_MODEL",
          "links": [
            45179,
            45190
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC_Vision_nodes",
        "ver": "62c0a499b9cf2389aad542c2e6ee1e03af985300",
        "Node name for S&R": "LCVisionLoader",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "Qwen3-VL-4B-Instruct-c_abliterated-v2.Q4_K_M",
        "auto",
        -1,
        "8192",
        2048,
        1024,
        -1,
        1024,
        false,
        true,
        ""
      ],
      "widgets_values_named": {
        "model_name": "Qwen3-VL-4B-Instruct-c_abliterated-v2.Q4_K_M",
        "device": "auto",
        "n_gpu_layers": -1,
        "n_ctx": "8192",
        "n_batch": 2048,
        "image_min_tokens": 1024,
        "image_max_tokens": -1,
        "batch_max_tokens": 1024,
        "verbose": false,
        "keep_model_loaded": true,
        "lc_vision_hint": ""
      },
      "color": "#465f5a",
      "bgcolor": "#324b46"
    },
    {
      "id": 174,
      "type": "GetNode",
      "pos": [
        -3130,
        -280
      ],
      "size": [
        210,
        60
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 22,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            47394
          ]
        }
      ],
      "title": "Get_Pro Post",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.5.2",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Pro Post"
      ],
      "widgets_values_named": {
        "Constant": "Pro Post"
      },
      "color": "#2a363b",
      "bgcolor": "#3f5159",
      "shape": 2
    },
    {
      "id": 2993,
      "type": "GetNode",
      "pos": [
        -3740,
        -2500
      ],
      "size": [
        210,
        50
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 23,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "INT",
          "type": "INT",
          "links": [
            45443
          ]
        }
      ],
      "title": "Get_Seed",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.5.2",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Seed"
      ],
      "widgets_values_named": {
        "Constant": "Seed"
      },
      "color": "#1b4669",
      "bgcolor": "#29699c"
    },
    {
      "id": 2864,
      "type": "VAEEncode",
      "pos": [
        -4950,
        -2210
      ],
      "size": [
        970,
        390
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 185,
      "mode": 4,
      "inputs": [
        {
          "name": "pixels",
          "type": "IMAGE",
          "link": 45447
        },
        {
          "name": "vae",
          "type": "VAE",
          "link": null
        }
      ],
      "outputs": [
        {
          "name": "LATENT",
          "type": "LATENT",
          "links": [
            43419,
            47331
          ]
        }
      ],
      "title": "I2I 🖼️",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.18.1",
        "Node name for S&R": "VAEEncode",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65
      },
      "color": "#322",
      "bgcolor": "#533"
    },
    {
      "id": 3062,
      "type": "LC Bypasser",
      "pos": [
        -4960,
        -2290
      ],
      "size": [
        280,
        250
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 204,
      "mode": 0,
      "inputs": [
        {
          "name": "Load Image 🖼️",
          "type": "*",
          "link": 43417
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "Background ✂️",
          "type": "*",
          "link": 45450
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "I2I 🖼️",
          "type": "*",
          "link": 43419
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "",
          "type": "*",
          "link": null
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        }
      ],
      "outputs": [
        {
          "name": "OPT_CONNECTION",
          "type": "*",
          "links": [
            43420
          ]
        }
      ],
      "properties": {
        "toggleRestriction": "default",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        true,
        false,
        false
      ],
      "widgets_values_named": {
        "Enable 1": true,
        "Enable 2": false,
        "Enable 3": false
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 3060,
      "type": "LCPipeEdit",
      "pos": [
        -4970,
        -2370
      ],
      "size": [
        200,
        530
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 229,
      "mode": 0,
      "inputs": [
        {
          "label": "pipe",
          "name": "pipe",
          "shape": 7,
          "type": "LC_PIPE",
          "link": null
        },
        {
          "label": "Model 1",
          "name": "model_1",
          "shape": 7,
          "type": "MODEL",
          "link": 43493
        },
        {
          "label": "Clip 1",
          "name": "clip_1",
          "shape": 7,
          "type": "CLIP",
          "link": null
        },
        {
          "label": "VAE 1",
          "name": "vae_1",
          "shape": 7,
          "type": "VAE",
          "link": null
        },
        {
          "label": "Model 2",
          "name": "model_2",
          "shape": 7,
          "type": "MODEL",
          "link": null
        },
        {
          "label": "Clip 2",
          "name": "clip_2",
          "shape": 7,
          "type": "CLIP",
          "link": null
        },
        {
          "label": "VAE 2",
          "name": "vae_2",
          "shape": 7,
          "type": "VAE",
          "link": null
        },
        {
          "label": "Image",
          "name": "image",
          "shape": 7,
          "type": "IMAGE",
          "link": 45449
        },
        {
          "label": "Mask",
          "name": "mask",
          "shape": 7,
          "type": "MASK",
          "link": 43415
        },
        {
          "label": "Width",
          "name": "width",
          "shape": 7,
          "type": "INT",
          "link": 43411
        },
        {
          "label": "Height",
          "name": "height",
          "shape": 7,
          "type": "INT",
          "link": 43414
        },
        {
          "label": "Latent",
          "name": "latent",
          "shape": 7,
          "type": "LATENT",
          "link": 47333
        },
        {
          "label": "Batch",
          "name": "batch",
          "shape": 7,
          "type": "INT",
          "link": 43405
        },
        {
          "label": "Positive prompt",
          "name": "positive_prompt",
          "shape": 7,
          "type": "STRING",
          "link": null
        },
        {
          "label": "Positive conditioning",
          "name": "positive",
          "shape": 7,
          "type": "CONDITIONING",
          "link": null
        },
        {
          "label": "Negative prompt",
          "name": "negative_prompt",
          "shape": 7,
          "type": "STRING",
          "link": null
        },
        {
          "label": "Negative conditioning",
          "name": "negative",
          "shape": 7,
          "type": "CONDITIONING",
          "link": null
        },
        {
          "label": "Seed",
          "name": "seed",
          "shape": 7,
          "type": "INT",
          "link": null
        },
        {
          "label": "total_steps",
          "name": "total_steps",
          "shape": 7,
          "type": "INT",
          "link": null
        },
        {
          "label": "cfg_1",
          "name": "cfg_1",
          "shape": 7,
          "type": "FLOAT",
          "link": null
        },
        {
          "label": "denoise",
          "name": "denoise",
          "shape": 7,
          "type": "FLOAT",
          "link": null
        },
        {
          "label": "step_swap",
          "name": "step_swap",
          "shape": 7,
          "type": "INT",
          "link": null
        },
        {
          "label": "cfg_2",
          "name": "cfg_2",
          "shape": 7,
          "type": "FLOAT",
          "link": null
        },
        {
          "label": "sampler_name",
          "name": "sampler_name",
          "shape": 7,
          "type": "COMBO",
          "link": null
        },
        {
          "label": "scheduler",
          "name": "scheduler",
          "shape": 7,
          "type": "COMBO",
          "link": null
        },
        {
          "label": "detailer_steps",
          "name": "detailer_steps",
          "shape": 7,
          "type": "INT",
          "link": null
        }
      ],
      "outputs": [
        {
          "name": "pipe",
          "type": "LC_PIPE",
          "links": [
            43416
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "b5960f890540269a90c505ed069026c97a76513f",
        "Node name for S&R": "LCPipeEdit",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#707070",
      "bgcolor": "#707070"
    },
    {
      "id": 2868,
      "type": "SetNode",
      "pos": [
        -5130,
        -2370
      ],
      "size": [
        210,
        50
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 156,
      "mode": 0,
      "inputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "link": 42658
        }
      ],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": []
        }
      ],
      "title": "Set_Org pic",
      "properties": {
        "Node name for S&R": "SetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "previousName": "Org pic",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.5.1",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Org pic"
      ],
      "widgets_values_named": {
        "Constant": "Org pic"
      },
      "color": "#2a363b",
      "bgcolor": "#3f5159",
      "shape": 2
    },
    {
      "id": 3450,
      "type": "LCRemBG",
      "pos": [
        -5140,
        -2250
      ],
      "size": [
        300,
        340
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 157,
      "mode": 4,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 45444
        }
      ],
      "outputs": [
        {
          "name": "cutout",
          "type": "IMAGE",
          "links": [
            45450
          ]
        },
        {
          "name": "mask",
          "type": "MASK",
          "links": null
        },
        {
          "name": "on_background",
          "type": "IMAGE",
          "links": [
            45445,
            45446,
            45447,
            45449
          ]
        }
      ],
      "title": "Background ✂️",
      "properties": {
        "cnr_id": "ComfyUI_LC_MaskMaker_nodes",
        "ver": "dc77bf3fda1a5d3cff9418bd86f22ab0a2a463a7",
        "Node name for S&R": "LCRemBG",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "BiRefNet general (MIT)",
        "none",
        "models/vitmatte (local)",
        0,
        10,
        10,
        0,
        1,
        0,
        2,
        "black"
      ],
      "widgets_values_named": {
        "model": "BiRefNet general (MIT)",
        "refine": "none",
        "vitmatte_model": "models/vitmatte (local)",
        "grow": 0,
        "edge_erode": 10,
        "edge_dilate": 10,
        "black_point": 0,
        "white_point": 1,
        "feather": 0,
        "max_megapixels": 2,
        "background": "black"
      },
      "color": "#324b4b",
      "bgcolor": "#324b4b"
    },
    {
      "id": 2857,
      "type": "LCNote",
      "pos": [
        -4800,
        -2880
      ],
      "size": [
        340,
        710
      ],
      "flags": {
        "pinned": true
      },
      "order": 24,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "📐 Aspect Ratio Simplifier",
      "properties": {
        "lc_note": {
          "source": "en",
          "texts": {
            "en": {
              "text": "\n### 📐 Aspect Ratio Simplifier\n\n| Widget | What it does |\n|--------|----------------|\n| **max_resolution** | Lower this to the **max processing resolution** you want. 💡 Saves on VRAM|\n| **resolution_source** | **image/mask** = use input size · **custom / preset** = use aspect ratio or custom W/H. |\n| **aspect_ratio** | social media style preset (or `custom`). |\n| **custom_width / custom_height** | Target size when preset is `custom`. |\n| **swap_dimensions** | Swaps width and height of the chosen size. |\n| **upscale_method** | Resample filter (nearest-exact, lanczos, etc.). |\n| **proportion** | How to fit: crop, stretch, resize, pad, total_pixels. |\n| **crop_location** | Anchor for crop/pad (center, top, bottom, left, right). |\n| **pad_color** | RGB fill when proportion is pad. |\n| **divisible_by** | Rounds output size to a multiple (e.g. 8). |\n| **batch_size** | Batch count for the empty latent output. |\n\n**💡Using the image resolution is mainly for 🥅 Controlnet & I2I 🖼️.**\n- Instead of trying to guess the size, the node does it for you."
            },
            "zh": {
              "text": "\n### 📐 Aspect Ratio Simplifier\n\n| 控件 | 作用 |\n|--------|----------------|\n| **max_resolution** | 把它调低到你想要的**最大处理分辨率**。💡 节省 VRAM|\n| **resolution_source** | **image/mask** = 使用输入的尺寸 · **custom / preset** = 使用宽高比或自定义宽高。 |\n| **aspect_ratio** | 社交媒体风格的预设（或 `custom`）。 |\n| **custom_width / custom_height** | 预设为 `custom` 时的目标尺寸。 |\n| **swap_dimensions** | 交换所选尺寸的宽和高。 |\n| **upscale_method** | 重采样滤镜（nearest-exact、lanczos 等）。 |\n| **proportion** | 适配方式：crop、stretch、resize、pad、total_pixels。 |\n| **crop_location** | 裁剪/填充的锚点（center、top、bottom、left、right）。 |\n| **pad_color** | proportion 为 pad 时填充的 RGB 颜色。 |\n| **divisible_by** | 把输出尺寸取整到某个倍数（例如 8）。 |\n| **batch_size** | 空 latent 输出的批量数量。 |\n\n**💡使用图像分辨率主要用于 🥅 Controlnet 和 I2I 🖼️。**\n- 不用你自己去猜尺寸，节点会替你搞定。",
              "src": "7a3d37c3",
              "srcTitle": "📐 Aspect Ratio Simplifier"
            },
            "ja": {
              "text": "\n### 📐 Aspect Ratio Simplifier\n\n| ウィジェット | 内容 |\n|--------|----------------|\n| **max_resolution** | 希望する**処理の最大解像度**まで下げます。💡 VRAMの節約になります |\n| **resolution_source** | **image/mask**＝入力のサイズを使う · **custom / preset**＝アスペクト比またはカスタムのW/Hを使う。 |\n| **aspect_ratio** | SNS風のプリセット（または `custom`）。 |\n| **custom_width / custom_height** | プリセットが `custom` のときの目標サイズ。 |\n| **swap_dimensions** | 選んだサイズの幅と高さを入れ替えます。 |\n| **upscale_method** | リサンプルのフィルター（nearest-exact、lanczosなど）。 |\n| **proportion** | フィットのさせ方：crop、stretch、resize、pad、total_pixels。 |\n| **crop_location** | クロップ／パディングの基準位置（center、top、bottom、left、right）。 |\n| **pad_color** | proportionがpadのときに埋めるRGB。 |\n| **divisible_by** | 出力サイズを倍数に丸めます（例：8）。 |\n| **batch_size** | 空のlatent出力のバッチ数。 |\n\n**💡画像の解像度を使うのは、主に 🥅 Controlnet と I2I 🖼️ のためです。**\n- サイズを自分で推測するかわりに、ノードがやってくれます。",
              "src": "7a3d37c3",
              "srcTitle": "📐 Aspect Ratio Simplifier"
            },
            "ko": {
              "text": "\n### 📐 Aspect Ratio Simplifier\n\n| 위젯 | 기능 |\n|--------|----------------|\n| **max_resolution** | 원하는 **최대 처리 해상도**까지 낮추세요. 💡 VRAM 절약|\n| **resolution_source** | **image/mask** = 입력 크기 사용 · **custom / preset** = 종횡비 또는 직접 입력한 W/H 사용. |\n| **aspect_ratio** | SNS 스타일 프리셋 (또는 `custom`). |\n| **custom_width / custom_height** | 프리셋이 `custom`일 때의 목표 크기. |\n| **swap_dimensions** | 선택한 크기의 width와 height를 맞바꿉니다. |\n| **upscale_method** | 리샘플 필터 (nearest-exact, lanczos 등). |\n| **proportion** | 맞추는 방식: crop, stretch, resize, pad, total_pixels. |\n| **crop_location** | crop/pad 기준점 (center, top, bottom, left, right). |\n| **pad_color** | proportion이 pad일 때 채우는 RGB. |\n| **divisible_by** | 출력 크기를 배수로 맞춥니다 (예: 8). |\n| **batch_size** | 빈 latent 출력의 배치 수. |\n\n**💡이미지 해상도 사용은 주로 🥅 Controlnet & I2I 🖼️용입니다.**\n- 크기를 짐작하려 애쓸 필요 없이 노드가 알아서 해줍니다.",
              "src": "7a3d37c3",
              "srcTitle": "📐 Aspect Ratio Simplifier"
            }
          },
          "titles": {
            "en": "📐 Aspect Ratio Simplifier",
            "zh": "📐 Aspect Ratio Simplifier",
            "ja": "📐 Aspect Ratio Simplifier",
            "ko": "📐 Aspect Ratio Simplifier"
          }
        },
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "English ✏️",
        "\n### 📐 Aspect Ratio Simplifier\n\n| Widget | What it does |\n|--------|----------------|\n| **max_resolution** | Lower this to the **max processing resolution** you want. 💡 Saves on VRAM|\n| **resolution_source** | **image/mask** = use input size · **custom / preset** = use aspect ratio or custom W/H. |\n| **aspect_ratio** | social media style preset (or `custom`). |\n| **custom_width / custom_height** | Target size when preset is `custom`. |\n| **swap_dimensions** | Swaps width and height of the chosen size. |\n| **upscale_method** | Resample filter (nearest-exact, lanczos, etc.). |\n| **proportion** | How to fit: crop, stretch, resize, pad, total_pixels. |\n| **crop_location** | Anchor for crop/pad (center, top, bottom, left, right). |\n| **pad_color** | RGB fill when proportion is pad. |\n| **divisible_by** | Rounds output size to a multiple (e.g. 8). |\n| **batch_size** | Batch count for the empty latent output. |\n\n**💡Using the image resolution is mainly for 🥅 Controlnet & I2I 🖼️.**\n- Instead of trying to guess the size, the node does it for you."
      ],
      "widgets_values_named": {
        "language": "English ✏️",
        "text": "\n### 📐 Aspect Ratio Simplifier\n\n| Widget | What it does |\n|--------|----------------|\n| **max_resolution** | Lower this to the **max processing resolution** you want. 💡 Saves on VRAM|\n| **resolution_source** | **image/mask** = use input size · **custom / preset** = use aspect ratio or custom W/H. |\n| **aspect_ratio** | social media style preset (or `custom`). |\n| **custom_width / custom_height** | Target size when preset is `custom`. |\n| **swap_dimensions** | Swaps width and height of the chosen size. |\n| **upscale_method** | Resample filter (nearest-exact, lanczos, etc.). |\n| **proportion** | How to fit: crop, stretch, resize, pad, total_pixels. |\n| **crop_location** | Anchor for crop/pad (center, top, bottom, left, right). |\n| **pad_color** | RGB fill when proportion is pad. |\n| **divisible_by** | Rounds output size to a multiple (e.g. 8). |\n| **batch_size** | Batch count for the empty latent output. |\n\n**💡Using the image resolution is mainly for 🥅 Controlnet & I2I 🖼️.**\n- Instead of trying to guess the size, the node does it for you."
      },
      "color": "#2E3A46",
      "bgcolor": "#2E3A46"
    },
    {
      "id": 3066,
      "type": "LC Bypasser Panel",
      "pos": [
        -4450,
        -2280
      ],
      "size": [
        260,
        102
      ],
      "flags": {
        "pinned": true
      },
      "order": 110,
      "mode": 0,
      "inputs": [
        {
          "name": "hub",
          "type": "*",
          "link": 43431
        }
      ],
      "outputs": [
        {
          "name": "OPT_CONNECTION",
          "type": "*",
          "links": null
        }
      ],
      "properties": {
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        true,
        false
      ],
      "widgets_values_named": {
        "Enable 1": true,
        "Enable 2": false
      },
      "color": "#c3782d",
      "bgcolor": "#af6419"
    },
    {
      "id": 3063,
      "type": "LC Bypasser Panel",
      "pos": [
        -4450,
        -2450
      ],
      "size": [
        260,
        126
      ],
      "flags": {
        "pinned": true
      },
      "order": 220,
      "mode": 0,
      "inputs": [
        {
          "name": "hub",
          "type": "*",
          "link": 43420
        }
      ],
      "outputs": [
        {
          "name": "OPT_CONNECTION",
          "type": "*",
          "links": null
        }
      ],
      "title": "🖼️ Image Bypass stuff",
      "properties": {
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        true,
        false,
        false
      ],
      "widgets_values_named": {
        "Enable 1": true,
        "Enable 2": false,
        "Enable 3": false
      },
      "color": "#dc6946",
      "bgcolor": "#c85532"
    },
    {
      "id": 2858,
      "type": "PreviewImage",
      "pos": [
        -4450,
        -2880
      ],
      "size": [
        260,
        390
      ],
      "flags": {
        "collapsed": false,
        "pinned": true
      },
      "order": 184,
      "mode": 0,
      "inputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "link": 45446
        }
      ],
      "outputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "links": null
        }
      ],
      "title": "Cropped Image & Resolution",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.9.2",
        "Node name for S&R": "PreviewImage",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.5.2"
        },
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65
      },
      "widgets_values": [],
      "widgets_values_named": {},
      "color": "#233",
      "bgcolor": "#355"
    },
    {
      "id": 3385,
      "type": "LCVisionPromptEnhancer",
      "pos": [
        -2380,
        -2540
      ],
      "size": [
        290,
        380
      ],
      "flags": {
        "pinned": true
      },
      "order": 138,
      "mode": 4,
      "inputs": [
        {
          "name": "vision_model",
          "type": "LC_VISION_MODEL",
          "link": 45179
        },
        {
          "name": "image_1",
          "shape": 7,
          "type": "IMAGE",
          "link": null
        },
        {
          "name": "image_2",
          "shape": 7,
          "type": "IMAGE",
          "link": null
        },
        {
          "name": "prompt_text",
          "type": "STRING",
          "widget": {
            "name": "prompt_text"
          },
          "link": 45180
        },
        {
          "name": "seed",
          "shape": 7,
          "type": "INT",
          "widget": {
            "name": "seed"
          },
          "link": 45934
        }
      ],
      "outputs": [
        {
          "name": "text",
          "type": "STRING",
          "links": [
            47339
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC_Vision_nodes",
        "ver": "54bd348b0f30db71de318648e278530531fb80a9",
        "Node name for S&R": "LCVisionPromptEnhancer",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "",
        "Enhance",
        "",
        "Realistic",
        1024,
        0.7,
        0.9,
        1.1,
        0,
        "randomize"
      ],
      "widgets_values_named": {
        "prompt_text": "",
        "preset": "Enhance",
        "custom_system_prompt": "",
        "style_tag": "Realistic",
        "max_tokens": 1024,
        "temperature": 0.7,
        "top_p": 0.9,
        "repetition_penalty": 1.1,
        "seed": 0,
        "control_after_generate": "randomize"
      },
      "color": "#465f5a",
      "bgcolor": "#324b46"
    },
    {
      "id": 3102,
      "type": "LCPositive",
      "pos": [
        -2900,
        -2920
      ],
      "size": [
        500,
        200
      ],
      "flags": {
        "pinned": true
      },
      "order": 25,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "positive",
          "type": "STRING",
          "links": [
            43614
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "b5960f890540269a90c505ed069026c97a76513f",
        "Node name for S&R": "LCPositive",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        ""
      ],
      "widgets_values_named": {
        "positive": ""
      },
      "color": "#326432",
      "bgcolor": "#326432"
    },
    {
      "id": 3451,
      "type": "GetNode",
      "pos": [
        -2180,
        30
      ],
      "size": [
        210,
        40
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 26,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            45513
          ]
        }
      ],
      "title": "Get_Rough Draft",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Rough Draft"
      ],
      "widgets_values_named": {
        "Constant": "Rough Draft"
      },
      "color": "#2a363b",
      "bgcolor": "#3f5159"
    },
    {
      "id": 3452,
      "type": "GetNode",
      "pos": [
        -2010,
        30
      ],
      "size": [
        210,
        40
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 27,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            45514
          ]
        }
      ],
      "title": "Get_Pro Post",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Pro Post"
      ],
      "widgets_values_named": {
        "Constant": "Pro Post"
      },
      "color": "#2a363b",
      "bgcolor": "#3f5159"
    },
    {
      "id": 3453,
      "type": "LCBooleanSwitch",
      "pos": [
        -2180,
        70
      ],
      "size": [
        300,
        80
      ],
      "flags": {
        "pinned": true
      },
      "order": 116,
      "mode": 0,
      "inputs": [
        {
          "name": "on_true",
          "shape": 7,
          "type": "*",
          "link": 45513
        },
        {
          "name": "on_false",
          "shape": 7,
          "type": "*",
          "link": 45514
        }
      ],
      "outputs": [
        {
          "name": "*",
          "type": "*",
          "links": [
            45515,
            45517
          ]
        }
      ],
      "title": "Hold at Draft (off for Final)",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "155abf95de26033d7ea2b4348523c55982806f93",
        "Node name for S&R": "LCBooleanSwitch",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "lc_w": 300,
        "lc_h": 80
      },
      "widgets_values": [
        true
      ],
      "widgets_values_named": {
        "state": true
      },
      "color": "#868645",
      "bgcolor": "#727231"
    },
    {
      "id": 3454,
      "type": "LCNote",
      "pos": [
        -1870,
        30
      ],
      "size": [
        320,
        120
      ],
      "flags": {
        "pinned": true
      },
      "order": 28,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "Last Image holder",
      "properties": {
        "lc_note": {
          "source": "en",
          "texts": {
            "en": {
              "text": "**Two Options**\n- Hold last Image (will refresh after every generation)\n- hold until cleared.\n- can be plugged into an image compare node"
            },
            "zh": {
              "text": "**两个选项**\n- Hold last Image（每次生成后刷新）\n- hold until cleared。\n- 可以接到图像对比节点上\n",
              "src": "af46942a",
              "srcTitle": "Last Image holder"
            },
            "ja": {
              "text": "**2つのオプション**\n- 最後の画像を保持(生成のたびに更新される)\n- クリアするまで保持。\n- 画像比較ノードに接続できる\n",
              "src": "af46942a",
              "srcTitle": "Last Image holder"
            },
            "ko": {
              "text": "**두 가지 옵션**\n- 마지막 이미지 유지 (생성할 때마다 갱신)\n- 지울 때까지 유지.\n- image compare 노드에 연결할 수 있습니다\n",
              "src": "af46942a",
              "srcTitle": "Last Image holder"
            }
          },
          "titles": {
            "en": "Last Image holder",
            "zh": "Last Image holder",
            "ja": "Last Image holder",
            "ko": "Last Image holder"
          }
        },
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "English ✏️",
        "**Two Options**\n- Hold last Image (will refresh after every generation)\n- hold until cleared.\n- can be plugged into an image compare node"
      ],
      "widgets_values_named": {
        "language": "English ✏️",
        "text": "**Two Options**\n- Hold last Image (will refresh after every generation)\n- hold until cleared.\n- can be plugged into an image compare node"
      },
      "color": "#2E3A46",
      "bgcolor": "#2E3A46"
    },
    {
      "id": 3455,
      "type": "LCLastImageHolder",
      "pos": [
        -2180,
        190
      ],
      "size": [
        300,
        450
      ],
      "flags": {
        "pinned": true
      },
      "order": 139,
      "mode": 0,
      "inputs": [
        {
          "name": "new_image",
          "shape": 7,
          "type": "IMAGE",
          "link": 45515
        },
        {
          "name": "seed",
          "shape": 7,
          "type": "INT",
          "link": null
        }
      ],
      "outputs": [
        {
          "name": "held image",
          "type": "IMAGE",
          "links": [
            45516
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "5832ec12d24dc0e316809e990ca4bb50852e4b72",
        "Node name for S&R": "LCLastImageHolder",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "hold until cleared",
        "clear_btn"
      ],
      "widgets_values_named": {
        "mode": "hold until cleared",
        "Clear held image": "clear_btn"
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 3456,
      "type": "LCBatchImageComparer",
      "pos": [
        -1870,
        190
      ],
      "size": [
        320,
        450
      ],
      "flags": {
        "pinned": true
      },
      "order": 163,
      "mode": 0,
      "inputs": [
        {
          "label": "Held Image ",
          "name": "image_a",
          "shape": 7,
          "type": "IMAGE",
          "link": 45516
        },
        {
          "label": "New Image ",
          "name": "image_b",
          "shape": 7,
          "type": "IMAGE",
          "link": 45517
        }
      ],
      "outputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "links": null
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "5832ec12d24dc0e316809e990ca4bb50852e4b72",
        "Node name for S&R": "LCBatchImageComparer",
        "comparer_mode": "Slide",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#325A5A",
      "bgcolor": "#325A5A"
    },
    {
      "id": 3464,
      "type": "LCImageLabel",
      "pos": [
        -5000,
        -3420
      ],
      "size": [
        437.4,
        437.4
      ],
      "flags": {
        "pinned": true
      },
      "order": 29,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "properties": {
        "imgW": 427.4,
        "imgH": 427.4,
        "angle": 0,
        "size": 427,
        "padding": 5,
        "borderWidth": 0,
        "borderColor": "#ffffff",
        "borderRadius": 0,
        "backgroundColor": "transparent",
        "bgTransparent": true,
        "syncImageRadius": true,
        "imageRadius": 0,
        "embeddedData": "data:image/webp;base64,UklGRrw6AABXRUJQVlA4WAoAAAAwAAAA/wAA/wAASUNDUMgBAAAAAAHIAAAAAAQwAABtbnRyUkdCIFhZWiAH4AABAAEAAAAAAABhY3NwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA9tYAAQAAAADTLQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlkZXNjAAAA8AAAACRyWFlaAAABFAAAABRnWFlaAAABKAAAABRiWFlaAAABPAAAABR3dHB0AAABUAAAABRyVFJDAAABZAAAAChnVFJDAAABZAAAAChiVFJDAAABZAAAAChjcHJ0AAABjAAAADxtbHVjAAAAAAAAAAEAAAAMZW5VUwAAAAgAAAAcAHMAUgBHAEJYWVogAAAAAAAAb6IAADj1AAADkFhZWiAAAAAAAABimQAAt4UAABjaWFlaIAAAAAAAACSgAAAPhAAAts9YWVogAAAAAAAA9tYAAQAAAADTLXBhcmEAAAAAAAQAAAACZmYAAPKnAAANWQAAE9AAAApbAAAAAAAAAABtbHVjAAAAAAAAAAEAAAAMZW5VUwAAACAAAAAcAEcAbwBvAGcAbABlACAASQBuAGMALgAgADIAMAAxADZBTFBI2BYAAAHAh/1/Grm1frI9PMubLIQZNmmgzMxNe8twe3KgzMx0+JSZmU+bcnvCpTBDs2lgs+HsbpZ3dnbAY+k3f1iW5RnPzOUbERMA/+///7mbFHpV5xZ4yqefksKupHuOUtjdwpYXdt5fcZta0B0SxVatkFN+YNjlLeQGRhB7wgUceZEi9vQr4Ir3ImLH4ALuGh0RGyoKN18jIrK3lMLtBB0Ro+OhYFdXISIu9hZuU2OISC+Hgl2ZzxCxt6pwq44gIq7UCjbyKEVEehkU7MFdiIi9/Qq305KmH7WCTVmCiGgcDwX7oD5TNCji8Xs0pXAi7zLTWo8VOaCxfefaL+46rDzkU0kBVNSCiEjfHeD3l1SPPeL035zzFUNEZEayd+eCB+tCXqWgIf6LUiaW0A3GEBnSngiKUr27/rXDQmphooZqz/7npgjaZkzITOP7vp1WohQYin/Cw8s7U4xhpqZaPjk6QAoFopVd9sXuOMUMZ/HNTw/WCgG1+rY5bSmGWUk7Z58UyPNI6LSvW1OYzfFlvy8i+Zs24vktMYbZnlhxfZjkZ4HTv+8y0BVjC64qzcOClyyOMnTNvp+O8eZZgWkLY+iuXf8cRPIo77Sf+9B12fYHwvmSOvVfPejKydkHKPkQGfJGC0OXZnvuCuY/was2p9DFE98MzHPIsK+i6O6s/mxPPuP/QyND129/oiJ/GfZlHLPW6OmOJGlmYPLbQXmK9m9bGGZv1xBNC4363Sd749Q5pAsPIflI2QtdmM29AeAqpSfNaEs5hWzD6Ur+MWxmErM6VccDAOI/7J026gzizsu1fGPiMorZzf5CrACAhKet0p3B5uu8eYVyYQNmOKPJ9qYmKoIrvUIAoAx7r88RbLvfl0d47tyPGcwSneufOavaqyglcaGuGjsApObdhBPYfZ8vbwg90YMZ3PrmQK8CXJ8ulLrZHgAZ/r3hAPY84MsTyt+MYQanfucF6wOpEK4MSABQj9nlAEZu9+QFNd8kMJO7y8GafIXiPeOkAIT/lJSHbZcqeUDV1wZmIrNa6RcItNlITiNygExolIc7zyA5r3KWgRloNG2mPHajpljVJWywGSGRoqAAQPgTJg03Hpbrir8y0PnYOwdULUZ+ou6EuR4eeZnawP3HVViR5/eeqQiA+oeINFwyPLeF3tfR8dgTw1So6rNofb3za4Xn3412jTV/9VnA6GTy20oBgDH7pNGPS3OZ99k4Ot379DgVQHmRWSRSPYOBPzJmCxObTiAW2iZkOw8lAtC/QRb2PeLNXcodEXTY+GqSBwCgogMFP9Z4Nd8xeyw+u8oCHkDE+B89AlBSLwtbzie5ipyxHx3u+U0xmMmfDYHkkYRT/OcYSkxFPqq0GGYgIv2uRADKNsnC1aNy1dE70Fm2aKIC3JIWFGwvAXPgzy1MhpHs+YvK87Si+ddaAajYKYt+Vpybhq5DZxN3FoPl+SmRjR5O0d9bUSZtXVYHlm9wcPdYARjULgljtyi5KPQddWb/MRpYeteg6BsKh4zeKufzEWB9Ig+bxgrA5KgkbByTg5T7EugkmzscBMfGRIzzCAcqO6QYDysCgygPdw8TgIupJPZhIPcc3oZO0hdLQFD9CUVjE4BLDtelsPdUgVDCArf1F1DeloSRi0muqapHJ41HQiA6sk+op5bn/YJJwc0BAa3VCjcWW0GgURIuGZxjPB9QJ5LXekBU+ZAJtZfywvtRbu9oAbJEAGd6rWCCLin5dy23nNWHDvaerYJwdSsK7w/zBvZJSaNxM7GCJ0Too4oVPCAJ90zMKUO2oYM9JyggrDxriDUHOcpfqBREnO8VuEwEE9MEfI2S2Hv+HOL9iDoQO4mA+NAuFG8KcHybUHZrlcDRQthaYwVTDDnYdmwOObEH5esXKiDufYfaaPZzSiOS0pi8XOBwMfzeY0XmSGIf+XNG2XqUT+/SwObkJrTZ4uMcrktCZO8rVqfa0A+yghEpObj/0FxBHtLlsbf8YFN9V7fT7jepH6Els4UNQavrbNBPVCtlviT6jjdHDGlG+d+WgN3wBrQbCZn8TVZt9mJjrL4VY1/7QXCsIQebDskN6rtU3q5qsD0iYiteYSqNmdKI+qOGjTTSmwmPNIt95QNRZZMk400tJ4xoR+l9B4PtwAPUll5nupAiYjqNuOukXhuIONfD05JCi3wgfhaTg01Dc4H6CZXGblJsqXc3o216KQFQfkZOGp86LmqvpYQXpCKbQmD2jrMIRyTpt5McML4TpS8Igu2K5cwevqYA+Dt5yM65hdlLHMcbzzBt0d0PuP/qUHnkA0m4tNj91PeZtI6RYH9cC1rrVuu8AGN1DqJ+6R60m0b2CuG8iphOc/QjgOtJ0gE8mEgl9ZzifmM6UHbqfGKPXJ6worusOkuA/AMt9i1lEnCHx6R2IKaRezfwKygutPD1SqJva26nvkel/RgA+955aL31ipRF6kjw7rBq1FFGYohpIMU0b65qcQViKsyDeZJwV7XbDWxD2ZGJIHFcxMq4IrTAAj9Rq5IcxNRCJiGN7FbT84hpNO8tAr6yDxFvsDhVVvwylyN/NmSxOzQJnhnMant/qOux2FF+DTOlEbcel5KCqxUAXwT5yQlgOSiFiI0Krx+VRN9W3S2wAWW3DgaJte1o/Q8VtOcZr3f6BrR4ubxdhDGrngDASYzHbgVL8iEiYqqK5+mThBsDAKCWVBOXOjImi92kWJFJIyuKS0MA6u2GVWIKAAxs5rF91IKe6n9DJLYSMW3G1FHgaUX+ItVqXMKE9/LIGlmRI8P9Tn6/t+1wd1K/YbJaK8G6aHci3te7WIPQRrTeFgIAcpXBQYqWff1goiGwbrIV/kubjvyuMrBUlyN3t8KBP8mi639u0xHZS4orlexHyewOIjCgDxGxwQ+HxKyMmwgAgG82T/AHDwS7rNgt4V6r7mMSvNSRYH0R5SVLeMfLsl7tdaXfp2R1VIHguSnTHJ8yk1l1VgN3SKsNdjEBZYFVYqD2DC+NLIr8p4jVgE7ksxN5Q5lDbSVupP6Ist9UBMg/KCKyz70VUbRe6OOR6YZYciAA3Gi11wuHMuRZ7/aDpfYTWn/Jq6QOxSe5UVmbrORkEPTMYYhInwi8wazofRoP/D+KNQQAYBK1eEeBct1OaixYT6cCbSqnlDlk3O5GVxmy6r0igZWchyojKDC71gJGtwv9RQGAyiSPXgigbeSlLR4D6yl9aJlGvZQTpg7hd4r7qMtRMr0ARMPbEBHZ41dQAaT1Ay3UO3QBOgoAwN/J0wcCwO8Qhfb4rOo6UIQewgk5tsnrPiVdsjrLhIqaTPT9/Si+digPJiUE+kImZQMvGgSAMobpNFrGJoHl5A4UfzxDOoPuc7oha5Yq1mYydqHdX0ZzlLeYQGs/E3mL16EBgKZjGq2XaxaH9aDNNZxyx2LlrkNmoGTjXBAOdXAMW9h4FAGA/hEUpF8PIwBwNW+3AgDhKIrW89Q/9KHdDs4wx5LDXEfbLquzv1hgPyIyAyU2X6ABXMdEkHU+EgA4nLcAgNS+T4WiRabijwy0nSCmyY7pR7pOUVTWTE3M32hCqb1/Ki/ajTZp/aHeg3iLfJVvxVCcXQigHL0LJRqq6WTmlHGV6xxtSKJXgbhvEUPpqSX/YHYQE/UzeV3z+tD2vsqaD3SUGSOmy9Fp9hhxm1eYpGSdDc/7VB6yFGZ4ZxIlJhv+ORXMzzqGMxSXUdaj5OYiG8rNugNumJh3gKqCmfzi3A+qy3haZX2j2oBJMRejKycoYKn1OLdCc5myPknsJmKnqNlG0k0i13hBMJR0bpPXZaakJBkHg13teyZE39/OXGNFDQhPos7tcZtrqaS+Glue+WJtFZUf6+7AZoRA/D10fr/LkA9QckvIVl0EhT9Wwf8X3Q3YK14Q93RlQLvLqGtkrdLsFK9AYeMsAPA9abjApxrYHGdkQIfPXTzNst4jNsi9ulikBgAg+AXLuoZisKksxgxs97qLLyrrbrA5oQPFNwVMMKAx2/TjwO4YPRPaXCaoS2Ln2qhdhzbfUjlkWizLZql2yFzMxGaX6WdIolPFimYxG/QSwoHgD9kVHQZ2D0xlxHaPu4yikowhQsF3DbSZnAB89XmWVfNUO76tmJGrNXc5WFayn4j/JR3t9va3KFqH2awfA3bvYJnxneouZzFJiVKB0Cs62t4bsjgkkVWdYTvj+zAj2fOKu1wpK15iVfutgfaX+XjaDJZVuzw2ShswM+mNxF0elJUo4mmH1jOU+KHGq2pDRJY9O7xinlmYoanjwVXJo7KSHFL+SifKZH9SOGQ6RYwb2dNdLKQ8STMlMcplnkZZYdPBexhKpVcRTslWTK1cy7LHOFlE/VsKMzVWkyOKTRMNlKtfpXBO6F4z/dk4Zi/7SLEKf2RgxvYUucyjTFa5qahXUurBsEk57LTA+R2YzRv8FmPWMszcPT6XuVeWXm3Slsp69mgNAMCjHr8Fs3pfDa9fB2byYtVd4PfShpvgN4ak28+e5DWdtR2zu/s83i2Y0S8RlzmVSjIO5PTvlXT1MaeeOSpQevVezHK6oMakNmQUvQxcdoIhiZ7L0RZJuurAYRfdes+MKGZ9auZEBeAMI6Pi49ymRha7jwMXG3KuPerIu9a2M3RBtvPOqhF7MKNbwm5TIgvfUjglzZJO25Ni6JJGpI1m1jzVbcK6rAUeDnmUyTCuPTWFLsowo9ltxG2CfbJ2BDgwoFcGvXNYg5tkuD4V3NbXKqu7kqe8xiTgXyvvY7mqrcx11F9kxcfwYFCvjM8qRsZy1Tce1yHvyjLOtFDeYBIaR5Z8znJT6lJw32uYJHzIAgZ1SohO8E7pzE1dg1zoIEPWv1QL8idqL3lqcdW7LCd973WhioSsPaUWEF5vj14bUMZ15CLjEnBhX7usvgOs4OCYLXxVA+9bLAd1VbuRukoWvVpAeYzaqvcDDNyfg+Z63Ig8ySTh15oVBBba6hoMoDxo5JzkmeDKRxiymgcIwJAWO8ZNCkBwYc7ZVuxOZXFZ+jkicFrcBq4PAsCw5hzDHlHcybNLFr6oiSh/NmxEJwEAuTKRWyKDwZ3JP6XtrBUBzwdMjL2kAYD2EnUd5gT7QnMpOMuQlbhQCAIzmRC2DAYACM51G4ZORg8Ft67okYWfBoSgeIEY/bMGAFC10V0YOvqt17W0ldKapohB2XIhbBltgpGNbsLQ0ehR4N73UlnGnaoYVK4Wws+9Jpja5B4Mnf3W62JDorJw4wAbULFKKHkxMcHh+9yCOdR7NLi4Z6W05FWKDShfyASwZTgHDtrhDgydZR9pbgY3MVm4foAdKPrIEMAlIQ4MXcJcgKHDnWPB1Wui0vQbPXbAe3efAPuHxoGSj/Xsc5r+SXE3dYU0bJhgC8gxe60wOZ1wQPt9u8ttLAWXv8CQlvpzwBZA1c/MAiNnEQ7AoMXUzRIXgtuXNknDllMkgPfmiAV2nKPwwH9Xq3uxzz2uR15h0tjM/hIAhsw3eBi5UuMBGTUv6VZ7BoL7j4tKw9iNmgzQzm3jYfLRMA/Ac+IK3ZX0yyEHarPl4Y5jpQCUv5HgIP1psAWA74JlSfdhr2q5AE6My2OLBskBMn6+bkJsPlm1APCetCjGXGZVCeTE4Ap5mHohKAdAOeRH3YSJ9/tZAWhTZnQYbtJ1JOTIS1PyMHKzKglAPWJ+AhGRdVzhtwIgwdO+69DdQr9VyRVFmx3AltOILABlxMvtBiIa2y/xWwGAUnzAMz0JN2CveiFnXq07wDYer0kDAP9p83sMhsbeGyoUK3Px5TT72HdByJ1FKxxAo+3NWiIPAAKnz++hjMZmHVOiCMBQln2LKiGXnpFwgDJj74MVTgCAesDMPkaN2OozQorFAJp1O4ZATvUucIAxxpJb/j3oCACQ8Iib5kRTicYAr8rItrZjIcceH5WHSClj8fppfme4xFdWAvzibOs+l+Qaz5fMAaRJg6G+5TyvY8KBLOu5iEDOHbrHCaSRGEU0dlxRTOxc+d5BxV45nuzqPJdA7iV36fZihhWySGsCEWnbi4NVMRi/Mtb96Yn9g6odUptVu08mkItDy2ztfXK+YYWYWLQ2gYgsWX9xqSICELi/nVJm7HzqmIGlQZ/P6w9WHPtKQwKzeNNkArn5pB4bv15dNXQxFUD9zSt+YYiIrG/+wV4RAOIZvrCXomuuroNcrb5MhdadHCZk7DoRpB+efHUHcmnvO5PCqpVZKTvijQ6DuQCbVw25u7xegC07qiwEQCY2iCDbekjZA40Gcmm8/t/LPKqVWQmW1Q4/4+mV0XgsamRL6s0iyOXHd1sYay4bfP50HwAcsE0Esfu0qvBxn3ebzDS+741DqsMa4VkSxTvsdz9lSdctXsjpypMpjrHtyX97Oxm/3gMA4zcJYeLZgYpSdutmg8NlRnTzIxMri4IBn8/r9QZCJRUHtmJ2sg1HKpDjwwsYItLWma8uTSHuulAFgCErhJCtHa0CKGPf6WYWooxhdhsf9YfcP3gXotG1aOYuioi47XQVAPovYyKIXbcFAQD85yxN2Mr2ztt8kA+e35Ha8Ut9F0PuhrM0ACiekRJCuu44DcyBk75rN3jpdDrb6Pd1BPJC7YkV3+2MofWv01QA0B6ICiEmPh5KgKsMerghydA6nU6ns2T/dX7IF8PT5/eh6K/nagBATmoSQ2x/qB/H7B31UH1vipmyNv5uLeSRgVdSQrjzch8AwPBfmBiypjv6E55ZLTnk0V+jKeYMlWasOk6FvLJ6rxh23BwGACj5MCGGyHbdNYBYcRUtWHPSy/viBmUsYY/pOyTRhiv9kG8e3CyG8WerAADUc/bZQGRtz9d5hKyJovnqRJihxyK7Z5x+ZEKGseOWUshDJzWJIf1qJAEAqJ6ZQsS0ACIm1l9Xq9oz+5sTyXhftKtl56IHp5QFPApAYKW9VP0VJZCfTtothmzt8RoAgHbRbrTPeuZfUq0Re6AoqqZ5NIUQsFRuYTbiy84NQN5at0sMse3aMJgHfBa3hYg0tuPt0ytVYkPq8JRIqunlcRrks6O22kD90+EEAEA9crlhz8wSuz+5ui6sqQpxINRrYXTOPbuYQJ47ZIMNxK2X+sAcuORXKoPLjETXzmVP/ebY0bUVUjz1iEjjLV+eU04gD65ewWxg8p3hCpiDl202JAlH/TKUv8cTu186PEAgTy79ImUDsemOGgLm0EVrdE5aXiwgA0KHhFTIp31/6bODdMNlJSYAz7HfdlF0Mi4n/1YubbWDqC+eVmQCUPrdMLeXyUv6CwKAug3MDmJy4dlFJgBQB9Uze+k0J+UrEKDs/aQtxOTCM4uICQL1aDfNNfkLBdAubbaHmFxz8UAVAIZFbAkWEAAjllJ7iKnGv03xhx+n9uLdkd6kwTDmLSAg+FSfBETWtfLTXrSdGEWIWj72modma4UEkKnrqAREpGi/WwMHicebtwH4bm6TIrOFyFJ8/c5ZmOrw5W8AFe8nMqJZsUMUT7DfQffM3xM1EFEflM8BmbjCyICegZrm0RRFUVWPv+qoR5dv74wbDC3p7/M6AM+09YZjmErGY7FYQjcMg1KGtr9Q8jsA7wVbDKec3hXI9wACF69PZVN0cP4H4D15Vi/LGv3MQgBAGfzk7lSWsGdIQQAA4XPndhnZgOu8hQKAUnnp/C4j87qrCgcAUKound2WZJnVM6agAAASmvjQsvakkRHMiHetfy5YaJiV4Oirv9oZSegGk8WoHuvePmP6QK9CoGDVArXH3PTS3I1N3X2xeCKRSCaTiXgs2tHcsOyrp6+dVOFVoDAmiur1B0JFJeVlJUVBv09TFAL/7///uztWUDgg7iEAADB+AJ0BKgABAAE+MRaJQ6IhIRMJrYggAwSzt3C7WG5sXllSM2c/M/jnmKjSetHv9+o/KP/JfPf0aeYB+uXSt8wHm8f7D9mfdl/U/UA/T/rSvQS/k3969Ob9tfhZ/cr9kPaXzYb+j/iP7rvif7B/Wf7N+xX9w9Wfxz6f+6fkn+5f+p+QavBzLfZv8H/cP279pv9x4R/JfUF/F/5p/kvy//vnFQ7d/qPQI94Ppv+m/v37l/5T0uPGb3X+z/+39wD+Z/0H/Gfmr/g///9Zf5b/LeLf9h/1nsBfx/+d/7b/G/uR/mvpo/kv+b/jf9B/6P8H7U/zH/Ff8n/YfvH+//4D/yL+g/6T+9/5j/sf4z///9z7qvX3+2H/l9yL9W/vrMQguIBOcXEAnOLiATcbrMmB+DzsqQzQuLSmZtThXU9DqHzg0Egif3KJRKjXuUeHyGZ0DSeqcvUr2cN+y5VH81zOA2d7pbEAc7uuGdJV+WH7SLTw3NNPPOukP1j8UiuIBNvN4FiLivtlggrPmoKZxNQrvrwGCP48qaExipNrUY2qsWOQxrmit0XWgPZhuWBTw9qNMBNfdKIffLuOGvNcTiFQCxfTfEN/gfDsJ80CEkPPqvJIQ47xg/4yTuXju9b+fz3syZkM7SfCskum3/tOhuVWADpp0U3GgYaqTg5SuZ9/EQRO69er0pHGn38pkSvYuirkZYXpkHSxg/tV9IZEmKZHCBHqTvCD4pbXpTY4lSP6NhHRrU5084oWkXcjDfz8OIOF+uld/pyLnYPGIOPsQqNsikYDZ9c/xlIQxxMcIdtNayefF6fp1xi0rdoc8t2HDHveo7hLIa4/naEl/dnTVBpWJonNMbPvGkiQ8QMut4zkmUW/Zyf7PgGUm7N59LaF7X/vLS8wLzNYVNV+i5jzxSavob61QqZnX/K4YjyM3EFZ7Brdlg5TpRuDPY7Oe1T3TzngJXLBlN6veyxv9REjPEAo2JljN2ERDYgW08eNs0PPnbGeCcl+p5mS6zhqyGdr5qsPMqRyy2mdPQky7Bi2Nr42tRTxW51UZezYQ3KjgGqBDUEvmAsAGQoNpe4p4n72nZNzW6QAbqBS5R4+P0o1x/3FkyRGU17v6aDNkOhW+pNaiP54mCzCmSezKqdlrJDu58R4X8eDRsohRR/9eX/3YF2YyOkISLzGBDOSI9oqv6tKan0zD9HMpgm9/0anPCzT6hVc3ZquwORofyzV875PZ8A12Fvlf/3rymLFvfc6Q55w4UOM4AcM4uGxTsrcaC/CKmM9CsgPJ7egZM1hBuxZm+PF9cPakOk5+R8hmjwXhZ3vf5TTV2DLqv7x/+ypSTytZ+ZnsWlMz2LSmZ7Fo8AA/v/0YHAABUQ98I9lXAWOJe487K59Vl37nKOGxFcKg1eODo2p9JRTCRdT5kQGTsq17MlwrJ61N9vo9TJIGsiUtYmMXjVvj0+ONc0QAAkt4L/XAHow0rorfzkPbMV04UOwrNzbP3c3uN+w8156e895Pb/yF5vFBMJMxZMCshvi+T/owyp0BhlEu45g7lF9p8gr62F/24AXv1e6cW8BCiOZGvpAb0P8++Js5N1326Yv/rP/gNFd4H8p3n9ZjJGL5AeI0xLDvKbXUiRZFLDCjbbjlL/6HPs6xh/yDX/zwFhiEZLk88VH3Ae34gTbHMaSXDtoyB/3gehvb99tm7TlPkACn8l2Z+rTmFPf3vpVljZwf0aYjcRf7Z4H5x/Y6FcAX5y+vxQh/fuPS0YhE4fY+egP/+o0l0jZ1HocvuPygpz92XUItBFAW5DUSS/8qig9TCMqWEUlhJLoF9u0/xXAl3nJ5bzc2Ioq8wZ+2zfhivm8RhGWlVoYBPiJVQQfejaDvv+h3P7oY4G/86pfm6r3M/4yZqwp35wwhB6KSYorIYRVPh/SXDtmeszzUxncbqnzWLUywX65oWjGEldyKuMti7Fhk0goRglWmtJKVu5ThOEMp2h/jjH6++b+9WwKlh/71wd4L7Y+mg6ocAt0CQqad6pEe1kDTLyCSuHGdWsIYeGslLwwrH2v2NY9Q+ZdFuw5weyuxkD1xHfeQifnH8nMadeI0FCWpfZ0K2VThvtqAV4+DJ9HicU081NqBqEbJa5nSKuihIJ3WsGtzDd5cD9MQ5W31Y22ygChWv+rt999gNExAPlBix/nwgAfGOFzbnU+ZqocoZYY6/yDM+ohyiz2O4TQFlXmPHYsnhkOGeomRDQbz6zQ0CJ1zleP7EBYD6V3yQQumsPtM+hK00eSjCujbfPOD+b5+zUQdvrVXIWp+IqgC/IOBIG3uPdrqT9up1JGFhf4CO9VXFYWlwswaDBMJz2ukotdYa0e1e+lPvBW7txqtG1HAg5F69JVs2G6iqVbAgxHyF8Kt7+MYSQWBCr98d2k9dY3yc2H37rLJHeZ3H5B5dHFOi+jmEHD8+WODNFqhsEUue/YyuL0j+6JAIO07eCgnEaMxWm3+P7h3oX4BNdn7aYCY2Y2deN4SrBpWJSDwLj3LplYVAMk2JwdtchSsibJf0wgERywBwsYe71lEptKei+z9Rl9aYriD/waf+40zKDK9gGakaPRyP+VDptRD/ndVCcgy6anG9WJdxH3HEIX8PG7LqjMj8rLpPePntjvRTMtM0klaXdZAqy/+yY3zShPE5Fv8jLkVld9pKZZ/PZ7+S67K4vJn/mcG3PWtIkJzoiITLGG9aTymVIT6R+DXLgtmICeyhxobb9cxsGF9KZq7iVvroKo80zPIlvyU5Xs4sB1L4gzCX9RhSX4O6jFhH9kvJ7TPtzKeCuQmK0qq0Pu1Od/KCVeIU1cWILBu6NT6RIo5a+ylKDPOr+j2rvndKCbEC/QNOCTH72saS505E789CuZd7rwdXSURm0w9nAzPtfihuRIxht8cYgY0ZxVrI95TxihEUzFQP0in/U0+uVAqyv2MHwdP6LNTQPR3NkevHgQk4eZ874ZWxsM/PLCuKmvv4EqmjU8tcfAgDNtDL8fwKgOhFc5B3bq1RUn8EGuGkrfzs4FxN4Q5Bu+N7IJme4apE3Gtmc2NcK8UokTnndwlLB2SQuYb1lW6d56ORFdnrMJy+nymSxiCXBj1VwZpYYXySa42O8DPk3Qwu/BAJbplnUaiv4RCpZbphFGz75Sak/yfyOVR04UPSWgAXNQOZDx9nsCK52cttYHzptIEDkUs80dF8Xah2olW2Ol1+JMMKazXwfh3cNu890doAZIqakx9H/9/CSkJ/3o6i8weviN/8X87dcuyFWco1x4bHC8/y1d9XLL7Ri0ZS7Fz0FTf9W35vfXsl29XKy6NVKEsUe7Eka/EA/FYMrt8A+qvuRwlp8uDFnqAGTfhyNAxmWV38DnpGMPdDeu5qHx1b3DLPuYu3jKTr+QapJ5puHzg+dQcUf0wKoqAuy1fwqUsJSUgWZljlGjL5zsW5Apg7479oFkHqB7PGogIHA1BY/GR6C0qcg1m6LkInYk+G3ITPxMoQXuWeYYIymSd4AYvgW2yG47psWe+Q1cIwC5wtJ2vSlGCxzz3BTqtVmh8BLbwNAQ1H+400rnsxjWpWFnmzAakQm8D0VOy+rwXZ3kKTpAXHc9kys84gbpANNNWmXGMwp/g+dDpX+AQeP47oD/Sd9SapJrZjHO/8x0E6hjiR554okv3VnrKq3KtuOsgP1G09bQsiBhG+3dhv8cyr5EkL6s8MNm3xRAMFw7MV5v3XfzL3aBH2ys/kGnMPnqmH1YMO/YytaJA8BZRk+0TNQziPV7CUsc1ivUY1u6+gBF8czF2k5dw/iwJyr6mvhymN3338yo362vD+l5vo8UiZVtiSaXn2P2dM1UAs+lrbf02qU4+j5twOA+b+eq8TTPWNF0oZacp0eYe1ZYQUVC/baakT2zKRf5ec7bu3c0yLq7qqhOwMA8nYucrVA7ZPiYKzqJUJnkdNgFRcJXbu3W1MpT8NW88eGShI8SXg6AfspVfpeFVpNSsPIXuMhk6s4XFYnjKAJrvnLavq04iaxZwZdcjHwSxm+Ol3KEmaklLDkR10l6NWdOgHALRdcLkRtxyXzFTHZIhDBEzZAzP0ZFoh1QCq7sp39lmX4vI8FVjPy0O0VQDmfZNqTjmeP5SJugiATKYXfu+x3bIiaKmHvvNav5v9L8hM4RUsyaH8ZoDkQD0dzRWhfVkmMzef/6eJY8Z5RgutvZJ5JpV5URwyeztD4UO9TUePmOc3RwXgmoqTTdJcjqxS3AhYNOvQuiGGKluTXOb3L2be/nN0+vLR9otmjyP2VyWd/vdcTjP82+4avrXZUS/b3/xOSC1n5pjIMo7a4W8nU6J8dA0jz2oXfDSPlM6ee/EZq/qbpypBFm9xugJFIuiiQqfltzJyO5QsrDt5bJx0fewCz8opAK3bDsXmfq+kXdTaevTmX8GQYeIegF3Cd+mUgG14QUoceNnaNL3ts0fm59M6Te6usSag3RRDwal1+POAkJtZ54vb+QKDtL1s8rSJ81kRr15xu7LeRTP69cj5AYmA+FfRzI1Em1PN21jhmAf28gIwl5X35MKvkhpKcD9X3CvA196diIezB9Ewa6wICZ6B4jfRBKdXYAByt5/8BfBFwi2Ptf5FGRHY+oexhnRjQnOE5K7itUL0qjfGVlMJl7V/FRdohe9+cu8Vy5xFpjgQ0H/He8QJhmAo7H8/rPPxUz9QaQ927QekewHteDNbW8VOlsmZ0hGWWd54YtN76OObs9aWPEd2lTiK0qHt7Vb8Dx+iGQ22q9MpVCJwFti7bNCuzwWqz51F4FmBCsPgVedfIixlj5WY6oIqdLof3ToDQaNp4wzOUcQsna40ZevueO96oGpbU6ottmRoa5slhJHoE1/PgVVFVZP8cOY/b8fJaN3orOqMj6Mt2+hgNpOgB1E5zJletHwt8dScS2yqWMeIEGBqkB38mT6DI30hFX4yWHz29bkJRS3a7wewrSSzU/ELVusD+eZcyvTgcpSHuSFpiHuYelkP/NA6jIaHAsJxrObMYrfuUTANE591C75zsrLkOENMoj4et7mj5R4hu5CUE1kOH5BnSzd+ecYEWRJDaKHrOGGK+DW88LAyQWitwX75f9OvO9r4UMNedRmKfkdVglcCs36DAQMBvMTUCetpy+o0D0L8OdjeF5/NqPj0FceFCklQd9nmn+r+G8lWFLgaGAbtP60EmQrQkgvyEHesXAZIFDLW7JWnuhG+3cYquTM/AiucpVJWrRoMr6tBzvzBGuVYQeii0mMbIK+8O83xanj+uh9wB6Bmt2n6HvfgQ/rsw55/xrbcRFdhWz9Y+Uil5+C0jzl0ZUuxVemwS0mSezXk9kzWnhU7qOg1oiTdw4fUa33YzfzIiEi0MDmTXOehJqnMj9wN1bCzPu3/7XauWWiqH9YU6G3VcZNIjCx673Icp2y5EWGnNn4syP9vFxq7X3wK7ko35wrjbrneUWMvl9/jQgVsri15d+P3Z6YL+WSwDQvJFIwu4C5uqvPTwnx+8Ex0np+HvY2QKUu1EgZa6fU7q6CbqHvG27jeKVzBwAO5ihaUeZIiRIinTj9mvcPHqyEzJJYXTCUyvhzxZX3v0rj57J3jLV4DZskd5tfJsG2Q2A1l8IKfjSEJHhQlbBpIdErO/8axEmHwXigv2efbOErG9GgxGrR2O7gslMryK1JfKP70g9Eyw8eg3mDE6nPz43Ue5QiO2K6Wzb5I/pENnwGnsFY6bCyM1bDmXDgDn3TGOwrvL5CcqS1zdGfVMv+x5i4BFzkgNWO3NDeONxbH8MclJOpqo6SxHzDr2ApispdIFHz69HZNWXE7bXSSPwxbwCvx+x3i7Y/wjqTRD4n/GL/eyD/UEJZzOitkz0hkdi3EFMEES6YmsDLGOnFFWumqsoQ0nL8MU8j21HChbhuai1gS+Px1wZ+JbfLQXIEdGDEVDkHkxQf7JSTqcKiUYZ+scnyOFeD9cIOZC9GkmM5YZvhv/+XhX/4a/56trpJW3jJXNFPsyT5Fp5/8uEIXVIRRoaKsu7q30PJfNplJYH96mIVJewrKca+j5shCayPXXClIJAdk611jLi9qFKM1WDEm3z62uZLi0rCJ+nlOZC40vJdZWUYn+/5Rz5kNK8i9NGocj9/6kh1EkjFJiiD0poNx/K4ObYw3k5WaXVJ8Rigzp7fiq3Ig7l8tMxpwt76b6lntB87JDAoun9aiZ987aWoryBA/l5FVu0fSahmu0vy/He/CDDIHyAt58p6FX+WM+Ui8p7st2zfkMeL4gp6vP6Wk6bhkbsMpq+KPmuiDB4DcHD6sIcnQWgpJGMFeBAFNDuBmWevWw2tYNTNcFKssf4u625JPFbsjJNjxObrGIdbGKHdZbQXRlDUpL3QDWTdBO8HEm99CZK5pqXNh1+JS9JkQw5LAgsIVo6miSGQWduhL28tu+2C5CJ9eHl1/0pY8jgWHJ3w+Dvz+DKbIHzqoKzMgsGMHdnFkiyYBr715ZFFx5Waxj5PUz2Q6Zr80g9L1hsNo6m1R8JKBIUHzHj4bm2oYS/6EBRhxDs6rKyLDSO03d4JT3Q5s187OjifSi01BN2LFRvO5zQLJ8ICacEvMhrIe9e0IOEEBv66QBsUyukJds/RedQIBHY2rpevvLEoMcRiMqKJVoYoY7Mink8fHG1SYQJZ3FcF/5QlPSGEKYdRR2WOg3bNhCZwTUc1bgW/w0qgxzzqh8NBQvYzGu+zZmnt/nxf/HRa7RdWrTG3KMAOcWEdJ2hg3Kf0frqTKVNXtV+gJAqfMUnQDQfgnDsPu0U8w5N5ewFLc/ULgyOzxH35GlEZIu5+9cjO/DyCmu5CXmJsvAxiIrI2ZYF/wp9PXyu1MVQDi0SDr/Ms/WihYGvu+g2Z4VICdn4H9ISBPwjLATl4oaMijloH+afSJnA1VbRGlO9DPT75VCQF8s0RepTVoSToEFDF5vpdZA14z35X5EuTubYlUVqlBG6JVvUxjDKIMBX7+CgEcjtlARSjuGDksfagwIgO9SniuLA5+yRkfIvJUFZ4VanUSUXV6ZWHU6BcEsJUmbIsFC1UmAiPIIH9YwqKovvscWCLqNYnXP39B1r5PF8G9FRibwt8X1PbDQ8eMBSj1uQMf/YVIbcAF5C3Ds88v0mpVg5JDoCN7MHGuM/tXycsY5bhp8+B1dOsea6bwDs788vfZMeevgC1/t9f727OP9QjWS3tw0D35FuBrMyK169U65074XjcSeM9fC/0mpEACaF9rzgGJgk5p5vlenJApPOXLRtnsZsXDbKQ5Ov+GHBaw2iVZEUVeTm51O7U5jsXT+3KVdFhlMVdhdHo7QF5PGK15jliWQspgs4IUiCvHyl1dNZvatmVh6ozZRa1v0fAPFClPuxVppFV4PxmjxmM4ioSg5pBqrtaib3YNMsM7nU5LLGTOPddoGa/g0jimHVssrP0Nfhdg76XE+cPf1dOfOAxq4uK8vZleKF+jpWDc8xcGtgLWGQyBIS6+/Ah+T3ae1PFMc7rA+0xz0GaZzjwP3te0szESDa/GJ5gWsNEJ+MqqC/7+nRPm+ayBsWo7X8p9dEj94c6jqGJ7wKrky93VtpPF2jv0h8o1+wH3Nk1CXbM1z7Pqe3i8yVDvLGheOBLGUFpcgO2mcitAu3Gr2QRSDCmfzhttFNVQJKMja/oj4l+qw1F65aQOPAt32XUC3PfXh5oCfzcrtYUbN0oqy+tv+OT3s7g84uCEuYymVHre+p4fXGuVLNdjOuAECD1amKnuORsQxj6fbQcCoxaLJq2qR8frdoQMMUMKSuCACSG5G+GCb54r/UvFz751tCYlhXKn1I4+yWb1spX9lEapg9xRl/2er48h8/nl8fwL/HZD8/Ex+YCd4C6mHACYxp8WNJ3uC4wOHWZ9mwD/usz/bZwRs7ipamj82gBLDCj/6Zs+9dvpAUMCdI9gJ3FRTjQjbw3KxeDhSw7GKdbJhvZyAF6GX82iNBrGkeqY1ZzAWf8PQSi4s5fKdtt0rVEIuppy/UYhD8oWhVFs7aSpgfAXcisiTl3T1lY5ICK2pWBz8g/cqILWFIV/1/FGwP7Yl9OyvFzBRL33/uJqUDXH+1m1Ibps323yTtvTADeXKG+WrfsMuoqdkE2Du5eVCuEHya2Vo7Mw/8XwII/EFYYLcauFU4bGxsbkHlnJeLDREphmRSyipXy0lOLQKVevxkXRWOuW5TYcmlx4xudfBjnjgFO0VdHaVQzqcgBNkRzZf30qTptAfMgBoL1UAITK9hXE4NMQuhKEstrDxMQigMZMoqNM9LsHeUZMjO0AN4IisOTVQ4SPfqx28KYAx5Pe+89APimR3P+HXPSjA7Pc+h6f2+1xpDWEgUAviYtAiz1kDaiX3YXbZMVel768V9qtYMwPCjNLK9VQSzVYgZseI/9HLGFmgX+i6d0iYhM0FFVu01ygz9E0t+dOE/3xRN6BeagQiij/MDYaoGl/VeYtZNhYSLQhh6zByBK/3cesvBg33q/PzIkJP6iTncSkwjztazioiLSXmCuJaRW76Zxf+zLCKLsrl4bN0sx2ZIPYJJSObicP8Kbla/POKUNdOAJNDrAsKcQXzfLL5W+q4hO/U6/d/Ze4iW/9rxQOpg+Ulru/hf2HQ+2uOevRA+XCyksRe/SBRCQefSDVKgOtLBKRNbTxDS6uanQcRKzL1Nos0A4wrDXmLuAo3jMjz1Mhn9AsgT+T8g2PGzPvHx3IMKHeICmg2Jp1D2pAKDpD2FvzWrcX1r7eS7ttk0sZXs5smfVIjzUqaB2T+BMu8Lx5i5CnxzZL33tTqPWYH4Lbm6AaUjbKFQu1ovh+moNN2r/YmNPBrbghzIAyIAoDajkt3iB4gB7+96EZ4Pj3/npxoRwgMRLV0llb5G7Q60OtlpiF0IYG4ytm25/euRVvqZVIO952uZWDVBBChkjrT4X3MJRrDAM+TIATD9fK3JAqjd6Mgk0A+LJEBSDPOnXuT9CFrmQGAeuL3TJurgboDPv5Lb9dTlldSF2IaQNajIgP95xEXWWIQKtgiLXrHONlJR/Z+JmrzWz67++a0Qoh1yVqKSSTKxzSvw5oDr8pOYljKnWdCYZTvqCxNBxPGDwtP0N1TFwRIoTCjqmy8VcCoDTdD7aiSapoCEIqhfXi477lWRDzepB8DlDGoXxs/Ou5QvrMYi0ZvTgKu83/eWTSfndOP/79jmy2r5jNfGh7iXQE5Ty/Fi4ZrMMIgYADZU50GQISRTzVBG6N0ApdbnkqaPXfXxjC9SwId0/XC4a6bMBRyemGn1LjpPlvnPUEQWNpPcbRi8eUcyrY6pdP+YN7HEePp9vq0WbZaryf0il5xm48hiZKOw1cyVjZxLIMmyo5dA6DsZr5jUBuXAiXwj0Beqb1WQAqJxK+x98dwdZ4RISf94ezCl9YTR/VP/wwzq0b43kNzFP0oKhHhClkcKmQxgkra9v5Ac+OUV3SWq3E8OkjJ9i8TghdUAOfvUFX6RIzAvytH0IZUBbAO49wOkgWOvrI3t9XkgyXZ6TRCQFBOeIciiQSdTLDBBh2NYiuWporG2nqkqz/NXteEvCw8vTSPsJnYl3QVX5jIQqkgxTGVegIKiW53agre3pRJl0NEXCV/V7W+1Mb89v9kb6v59Piv8zVZLQVIWGTCuYOg+3H6Skbj6tgXWvn66Ah8J5c6k1sLNuizKGIaOnYMzpPGEbfOYBBalD4xaeql2I+vGyeyUxHwZB1GHsyMXI9x485o7+bEMkaZpwwNhA6zFov2W+kve2aQKikBG2x1TYSj2OguqMad6CH+xnaTbnbqJ5b464NU6CduBj4MKHcAyKqQdoMi2yVbC5IoUoLbGbwrP6oUFdToe3SWz5PFFasKx0mTE0uNj5JWX1Seg98YJeeawm82FpUbLomVRFxIq2aKLojhSvv2Y8wDwGhRM9sLJXDPDSbd899PszviBCeHPl6TVh7r+NIuOv7qu1X9TpiDWEI6QnQWbcsG9VkcnIIaI+mrGG05/AxOIAhVEYnSi4TvDHkONXytboi6OdVIlNUkwa/JaJ9MTC13FtARR1gzhouKE/UZe4gQsH/rbPs8zDiPnwFbOMTlmDJtX49UEnDt6/vAbfSbmoE5NDSigcHrLE7NVgBtKY68mcdxlkRZYafnwKWKSnIKnav/cRAGtsAC9oc8GhmK482uadByeHAMUKC+y931/VWkagTjZAm0VSA/7Ms7n4u7v4du4R+CSdVqLHHTT86DexxD6z2ZtXg0VjtI/Q6p+zWoIuFxWm7LszWxcCoRxF6ncr9WPA0SaJq/schcAjLX6CAmEIpmlLRzRjNWuwckK4bqFki5Do8Z4xR4DAdDpxai9HWBw5HhZ2+2nJe1iefxUtATMJLbR0ySViV3hVHT2VG5itDXq895tBIKO0O2gm+48R9D0/0AuJjmnbFrIkEgZpkIFr7u2UucD5t7zyNhNcoe5Ya1S+7+n/maeL/9s9Kde5H5c4FcKT2wfCsnSJcciAWOvQqhxrfCHIcDTWf1n8S0NeUp3WE/cO7M++kmZYCsgGKczVhFVUgRPvrIRTWoaRb9BL5O8LP7OTeR6li4umPyL7OUnjmfVrMSaN0f7FjQOai9FBhKy68oB5r/N8xkJordkdBCiT1zj4Kkjsm6rsfiUkMH1nzBo4arCPa0o8UGOHTraFBoJRzOdpY76QrkibbM8sK+W8HmztlKtjR8c7WWbya2vq7VGLr+f7mACAWB9mbJzoez/4B8D5cc4nT+DvMtEr0kGQ0Q77lDtbjhHXafUnUAKcW9HjIZ9WJ9HOKlElpS//cba7DgK0Tl++m3taSy5RNcio03/v4ZL6lvaA1QX0RJbx7nyGnETEewi8jtefE6vQGvqXUu+XVYSfpEut/fecIpdw/rQAO0y+iA70fnZPmOuelQkhK6vnKyI9Pc/39K17ItZ4lz2uAqsN2zk33QxCcEDUdJK2zbunDMBuR8JAWtKbtwPmNzRohDUDvNYEvOnD2cvG3f7id1cj20CuQHAaIJn7SbMi/hgO4ielDMWcBzeXIboCcd14N6BdAlsewvgUYi/xPDyH1/ehIJMDJv+hjwZeay17gyI3aIOlDaEdz036FKz/0+o76CFhIZYbm18NqdByIZTCqw70FoGt0Gmhj1DqU9piehI5J2t0sC09KSSx2shMbP1Z7zf4KX/evoIJpBIKWgM+Cug7WyxRGSKgeI01cF87xrWbDCYSfmCYV6RQyWrT3KqBb9McI+9q7dmMumcsRmN/L/wWIGEdzUXNrDgx8Ks8LE/17I5rUBgrn5wv+WIYUkmVjdoE2m0n0EiqVVBnayeereAS2CPjtY0fWPzJLUpUFGWtDa93llkr55amWbaES+D2D3EzERkggE0idxNlBlTxf8CDBqH5YRdKdBL9dVLMH+7NJbjkO04KrAAAqN88Llbj2PvzwWbM5WIiOxGWcYhV845f2/9y/qhEUbJ1IrOsJ3jYBQ8FszOWruF48StYRFS3v/60+mRhh4j/SDISkd+KAmwM6cDT/9Pq9uUEGPHVLaQSWWtN2Pv4Oi+K9yK4iGyDeCCZh+l9IDA7G5vdrTze4dsFVJDD1MgSRNxShu+QhYAAAAAAAA=",
        "_w": 437.4,
        "_h": 437.4,
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "{\"filename\":\"Logo no background_00001_.png\",\"subfolder\":\"\"}"
      ],
      "widgets_values_named": {
        "_image_path": "{\"filename\":\"Logo no background_00001_.png\",\"subfolder\":\"\"}"
      },
      "color": "#fff0",
      "bgcolor": "#fff0"
    },
    {
      "id": 3466,
      "type": "LCLabel",
      "pos": [
        -2900,
        -3300
      ],
      "size": [
        1179,
        216
      ],
      "flags": {
        "pinned": true
      },
      "order": 30,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "properties": {
        "text": "Workflow ",
        "font": "Permanent Marker",
        "size": 181,
        "bold": true,
        "italic": false,
        "color": "#999999",
        "align": "center",
        "outline": false,
        "outlineColor": "#000000",
        "outlineWidth": 4,
        "shadow": false,
        "shadowBlur": 10,
        "bg": false,
        "bgColor": "#324B4B",
        "radius": 12,
        "padding": 8,
        "angle": 0,
        "width": 1179,
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "24728b75a7291ed7d3ac57d6e23d906823392387",
        "Node name for S&R": "LCLabel",
        "_w": 1179,
        "_h": 216,
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#fff0",
      "bgcolor": "#fff0"
    },
    {
      "id": 1272,
      "type": "SetNode",
      "pos": [
        -1520,
        -2410
      ],
      "size": [
        210,
        50
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 167,
      "mode": 0,
      "inputs": [
        {
          "name": "MODEL",
          "type": "MODEL",
          "link": 45930
        }
      ],
      "outputs": [
        {
          "name": "MODEL",
          "type": "MODEL",
          "links": [
            43494
          ]
        }
      ],
      "title": "Set_Lora Model",
      "properties": {
        "Node name for S&R": "SetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "previousName": "Lora Model",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.5.2",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Lora Model"
      ],
      "widgets_values_named": {
        "Constant": "Lora Model"
      },
      "color": "#223",
      "bgcolor": "#335",
      "shape": 2
    },
    {
      "id": 3067,
      "type": "LCPipeEdit",
      "pos": [
        -1520,
        -2370
      ],
      "size": [
        200,
        530
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 221,
      "mode": 0,
      "inputs": [
        {
          "label": "pipe",
          "name": "pipe",
          "shape": 7,
          "type": "LC_PIPE",
          "link": 43432
        },
        {
          "label": "Model 1",
          "name": "model_1",
          "shape": 7,
          "type": "MODEL",
          "link": null
        },
        {
          "label": "Clip 1",
          "name": "clip_1",
          "shape": 7,
          "type": "CLIP",
          "link": 45931
        },
        {
          "label": "VAE 1",
          "name": "vae_1",
          "shape": 7,
          "type": "VAE",
          "link": 46191
        },
        {
          "label": "Model 2",
          "name": "model_2",
          "shape": 7,
          "type": "MODEL",
          "link": 43494
        },
        {
          "label": "Clip 2",
          "name": "clip_2",
          "shape": 7,
          "type": "CLIP",
          "link": null
        },
        {
          "label": "VAE 2",
          "name": "vae_2",
          "shape": 7,
          "type": "VAE",
          "link": null
        },
        {
          "label": "Image",
          "name": "image",
          "shape": 7,
          "type": "IMAGE",
          "link": null
        },
        {
          "label": "Mask",
          "name": "mask",
          "shape": 7,
          "type": "MASK",
          "link": null
        },
        {
          "label": "Width",
          "name": "width",
          "shape": 7,
          "type": "INT",
          "link": null
        },
        {
          "label": "Height",
          "name": "height",
          "shape": 7,
          "type": "INT",
          "link": null
        },
        {
          "label": "Latent",
          "name": "latent",
          "shape": 7,
          "type": "LATENT",
          "link": null
        },
        {
          "label": "Batch",
          "name": "batch",
          "shape": 7,
          "type": "INT",
          "link": null
        },
        {
          "label": "Positive prompt",
          "name": "positive_prompt",
          "shape": 7,
          "type": "STRING",
          "link": 47340
        },
        {
          "label": "Positive conditioning",
          "name": "positive",
          "shape": 7,
          "type": "CONDITIONING",
          "link": 46722
        },
        {
          "label": "Negative prompt",
          "name": "negative_prompt",
          "shape": 7,
          "type": "STRING",
          "link": 43508
        },
        {
          "label": "Negative conditioning",
          "name": "negative",
          "shape": 7,
          "type": "CONDITIONING",
          "link": 43479
        },
        {
          "label": "Seed",
          "name": "seed",
          "shape": 7,
          "type": "INT",
          "link": 43495
        },
        {
          "label": "total_steps",
          "name": "total_steps",
          "shape": 7,
          "type": "INT",
          "link": 43433
        },
        {
          "label": "cfg_1",
          "name": "cfg_1",
          "shape": 7,
          "type": "FLOAT",
          "link": 43434
        },
        {
          "label": "denoise",
          "name": "denoise",
          "shape": 7,
          "type": "FLOAT",
          "link": 43435
        },
        {
          "label": "step_swap",
          "name": "step_swap",
          "shape": 7,
          "type": "INT",
          "link": 43436
        },
        {
          "label": "cfg_2",
          "name": "cfg_2",
          "shape": 7,
          "type": "FLOAT",
          "link": 43437
        },
        {
          "label": "sampler_name",
          "name": "sampler_name",
          "shape": 7,
          "type": "COMBO",
          "link": 43438
        },
        {
          "label": "scheduler",
          "name": "scheduler",
          "shape": 7,
          "type": "COMBO",
          "link": 43439
        },
        {
          "label": "detailer_steps",
          "name": "detailer_steps",
          "shape": 7,
          "type": "INT",
          "link": 43440
        }
      ],
      "outputs": [
        {
          "name": "pipe",
          "type": "LC_PIPE",
          "links": [
            43503,
            44542
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "b5960f890540269a90c505ed069026c97a76513f",
        "Node name for S&R": "LCPipeEdit",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#707070",
      "bgcolor": "#707070"
    },
    {
      "id": 3463,
      "type": "LCLabel",
      "pos": [
        -3540,
        -3460
      ],
      "size": [
        707.4917318890588,
        449.89489410369544
      ],
      "flags": {
        "pinned": true
      },
      "order": 31,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "properties": {
        "text": "Z-Image\n",
        "font": "Bebas Neue",
        "size": 198,
        "bold": true,
        "italic": false,
        "color": "#ffffff",
        "align": "center",
        "outline": false,
        "outlineColor": "#000000",
        "outlineWidth": 4,
        "shadow": false,
        "shadowBlur": 10,
        "bg": false,
        "bgColor": "#324B4B",
        "radius": 12,
        "padding": 8,
        "angle": -20,
        "width": 667,
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "24728b75a7291ed7d3ac57d6e23d906823392387",
        "Node name for S&R": "LCLabel",
        "_w": 707.4917318890588,
        "_h": 449.89489410369544,
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#fff0",
      "bgcolor": "#fff0"
    },
    {
      "id": 1262,
      "type": "SetNode",
      "pos": [
        -1730,
        -2250
      ],
      "size": [
        210,
        50
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 117,
      "mode": 0,
      "inputs": [
        {
          "name": "INT",
          "type": "INT",
          "link": 45936
        }
      ],
      "outputs": [
        {
          "name": "INT",
          "type": "INT",
          "links": [
            43495
          ]
        }
      ],
      "title": "Set_Seed",
      "properties": {
        "Node name for S&R": "SetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "previousName": "Seed",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.5.2",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Seed"
      ],
      "widgets_values_named": {
        "Constant": "Seed"
      },
      "color": "#1b4669",
      "bgcolor": "#29699c",
      "shape": 2
    },
    {
      "id": 4636,
      "type": "LCSeed",
      "pos": [
        -3540,
        -2300
      ],
      "size": [
        330,
        130
      ],
      "flags": {
        "pinned": true
      },
      "order": 32,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "seed",
          "type": "INT",
          "links": [
            45934,
            45935,
            45936
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "7f80bf8dbd4420c104d4ffeac1f78be209d667a7",
        "Node name for S&R": "LCSeed",
        "lc_seed_history": [
          7631050827991167,
          3142778725309116,
          8016889738422466,
          2485106904719801,
          7496289721012103,
          324342173568374,
          8067737320461838,
          7617818347082777,
          6824184381968343,
          7303587309151161
        ],
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        -1,
        "",
        "",
        "— last used seeds —"
      ],
      "widgets_values_named": {
        "base_seed": -1,
        "🎲 Randomize Each Time": "",
        "🎲 New Fixed Random": "",
        "seed history": "— last used seeds —"
      },
      "color": "#963719",
      "bgcolor": "#822305"
    },
    {
      "id": 3465,
      "type": "LCLabel",
      "pos": [
        -4630,
        -3320
      ],
      "size": [
        1144,
        246
      ],
      "flags": {
        "pinned": true
      },
      "order": 33,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "properties": {
        "text": "Lonecat's",
        "font": "Georgia",
        "size": 207,
        "bold": true,
        "italic": false,
        "color": "#50e070",
        "align": "center",
        "outline": false,
        "outlineColor": "#000000",
        "outlineWidth": 4,
        "shadow": false,
        "shadowBlur": 10,
        "bg": false,
        "bgColor": "#324B4B",
        "radius": 12,
        "padding": 8,
        "angle": 0,
        "width": 1144,
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "24728b75a7291ed7d3ac57d6e23d906823392387",
        "Node name for S&R": "LCLabel",
        "_w": 1144,
        "_h": 246,
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#fff0",
      "bgcolor": "#fff0"
    },
    {
      "id": 3467,
      "type": "LCLabel",
      "pos": [
        -1797.157683273213,
        -3239.262855849631
      ],
      "size": [
        416,
        153
      ],
      "flags": {
        "pinned": true
      },
      "order": 34,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "properties": {
        "text": "V33 🍂\n",
        "font": "Lobster",
        "size": 126,
        "bold": true,
        "italic": false,
        "color": "#ff9a3c",
        "align": "center",
        "outline": true,
        "outlineColor": "#a9570a",
        "outlineWidth": 17,
        "shadow": false,
        "shadowBlur": 10,
        "bg": false,
        "bgColor": "#324B4B",
        "radius": 13,
        "padding": 8,
        "angle": 0,
        "width": 0,
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "24728b75a7291ed7d3ac57d6e23d906823392387",
        "Node name for S&R": "LCLabel",
        "_w": 416,
        "_h": 153,
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#fff0",
      "bgcolor": "#fff0"
    },
    {
      "id": 2859,
      "type": "LoadImage",
      "pos": [
        -5580,
        -2780
      ],
      "size": [
        430,
        610
      ],
      "flags": {
        "pinned": true
      },
      "order": 35,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "slot_index": 0,
          "links": [
            42647,
            43417,
            45192
          ]
        },
        {
          "name": "MASK",
          "type": "MASK",
          "links": []
        }
      ],
      "title": "Load Image 🖼️",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.3.30",
        "Node name for S&R": "LoadImage",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.5.1",
          "input_ue_unconnectable": {}
        },
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65
      },
      "widgets_values": [
        "Lonecats Krea2 Pro_00061.png",
        "image"
      ],
      "widgets_values_named": {
        "image": "Lonecats Krea2 Pro_00061.png",
        "upload": "image"
      },
      "color": "#366b19",
      "bgcolor": "#225705",
      "shape": 2
    },
    {
      "id": 4635,
      "type": "LCLoraLoader",
      "pos": [
        -2900,
        -2540
      ],
      "size": [
        500,
        380
      ],
      "flags": {
        "pinned": true
      },
      "order": 144,
      "mode": 0,
      "inputs": [
        {
          "name": "model",
          "shape": 7,
          "type": "MODEL",
          "link": 45928
        },
        {
          "name": "clip",
          "shape": 7,
          "type": "CLIP",
          "link": 45929
        }
      ],
      "outputs": [
        {
          "name": "model",
          "type": "MODEL",
          "links": [
            45930
          ]
        },
        {
          "name": "clip",
          "type": "CLIP",
          "links": [
            45931,
            45932,
            45933
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "7f80bf8dbd4420c104d4ffeac1f78be209d667a7",
        "Node name for S&R": "LCLoraLoader",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "[{\"on\":false,\"lora\":\"ZIT\\\\Your Loras\\\\Better_Passion ZIT.safetensors\",\"strength\":0.95},{\"on\":false,\"lora\":\"ZIT\\\\Styles\\\\anime_style_-_beauties_women_illustration_v1.safetensors\",\"strength\":0.75},{\"on\":true,\"lora\":\"ZIT\\\\Styles\\\\ProjectRealismPhotoLora_v1.safetensors\",\"strength\":0.85},{\"on\":false,\"lora\":\"ZIT\\\\Styles\\\\unstableinkdream45_Z_v1.safetensors\",\"strength\":0.9}]",
        ""
      ],
      "widgets_values_named": {
        "lora_rows": "[{\"on\":false,\"lora\":\"ZIT\\\\Your Loras\\\\Better_Passion ZIT.safetensors\",\"strength\":0.95},{\"on\":false,\"lora\":\"ZIT\\\\Styles\\\\anime_style_-_beauties_women_illustration_v1.safetensors\",\"strength\":0.75},{\"on\":true,\"lora\":\"ZIT\\\\Styles\\\\ProjectRealismPhotoLora_v1.safetensors\",\"strength\":0.85},{\"on\":false,\"lora\":\"ZIT\\\\Styles\\\\unstableinkdream45_Z_v1.safetensors\",\"strength\":0.9}]",
        "lc_lora_face": ""
      },
      "color": "#6e5032",
      "bgcolor": "#6e5032"
    },
    {
      "id": 3287,
      "type": "LCSaveImageMetadata",
      "pos": [
        -1520,
        -2250
      ],
      "size": [
        400,
        430
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 231,
      "mode": 0,
      "inputs": [
        {
          "name": "pipe",
          "shape": 7,
          "type": "LC_PIPE",
          "link": 44542
        },
        {
          "name": "positive",
          "shape": 7,
          "type": "STRING",
          "widget": {
            "name": "positive"
          },
          "link": 44543
        }
      ],
      "outputs": [
        {
          "name": "metadata",
          "type": "LC_SAVE_META",
          "links": [
            44544
          ]
        },
        {
          "name": "parameters",
          "type": "STRING",
          "links": null
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "36213c1a71df9075928d3469afa6bbe13c6ceaf1",
        "Node name for S&R": "LCSaveImageMetadata",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "",
        "",
        -1,
        0,
        0,
        "",
        "",
        "",
        "urn:air:zimageturbo:unknown:civitai:2184844@3469074",
        0,
        0,
        0,
        ""
      ],
      "widgets_values_named": {
        "positive": "",
        "negative": "",
        "seed_value": -1,
        "steps": 0,
        "cfg": 0,
        "sampler": "",
        "scheduler": "",
        "models": "",
        "civitai_air": "urn:air:zimageturbo:unknown:civitai:2184844@3469074",
        "width": 0,
        "height": 0,
        "denoise": 0,
        "extra_params": ""
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 4637,
      "type": "LCNote",
      "pos": [
        -5600,
        -270
      ],
      "size": [
        660,
        1410
      ],
      "flags": {
        "pinned": true
      },
      "order": 36,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "Total Nodes (Busy work)",
      "properties": {
        "lc_note": {
          "source": "en",
          "texts": {
            "en": {
              "text": "# Total nodes\n\n**257 nodes** across 5 packs. Deprecated nodes are listed but not counted.\n\n| Pack | Nodes | Version | Link |\n|---|---|---|---|\n| LC123 | 162 | v1.56.6 | [Repo](https://github.com/lonecatone23/ComfyUI_LC123_nodes) |\n| LC AV | 27 | v0.5.23 | [Repo](https://github.com/lonecatone23/ComfyUI_LC_AV_nodes) |\n| LC MaskMaker | 30 | v0.29.15 | [Repo](https://github.com/lonecatone23/ComfyUI_LC_MaskMaker_nodes) |\n| LC Vision | 12 | v1.6.28 | [Repo](https://github.com/lonecatone23/ComfyUI_LC_Vision_nodes) |\n| LC ModelBuilder | 26 | v0.7.5 | [Repo](https://github.com/lonecatone23/ComfyUI_LC_ModelBuilder_nodes) |\n\n---\n\n## LC123 v1.56.6\n\n[github.com/lonecatone23/ComfyUI_LC123_nodes](https://github.com/lonecatone23/ComfyUI_LC123_nodes)\n\n| Node | What it does |\n|---|---|\n| **CivitAI 🚩🔪** | Strips flagged terms from a prompt using a compliance list, as an aid only (you are still responsible for CivitAI's terms). Off until you switch it on. |\n| **LC Advanced Folder 📂** | Builds separate filename and path outputs for Image Saver style nodes, with optional prefix-in-path and timestamp. |\n| **LC Anima Box Prompt 🔲** | Regional prompting for Anima: draw boxes in LC Bounding Boxes and write each one like a normal prompt; the main prompt is the scene. No left / right words needed. Wire it between the model and the sampler. Needs Anima Regional Conditioning; the Regional LLLite patch downloads on first use. |\n| **LC Anima Regional Inline Canvas** | Paint RGB regions on the node and get a separate conditioning and mask for each region, for Anima regional prompting. |\n| **LC Any Empty Bool** | Outputs true if any connected input is empty, muted or bypassed. |\n| **LC Any Empty Float** | Runs the same empty test as Any Empty Bool and outputs an empty and a not-empty float. |\n| **LC Any Empty Int** | Runs the same empty test as Any Empty Bool and outputs an empty and a not-empty integer. |\n| **LC Any Index Switch** | Passes through the input at the chosen index and ignores the other slots. |\n| **LC AnySwitch** | Picks the first connected input out of 2 to 20 and locks to its type. |\n| **LC Apply LoRA Stack 🎚️** | Applies a LORA_STACK from LC LoRA Loader Stack (or any pack) to model and/or clip. |\n| **LC Apply LUT** | Applies a .cube 3D LUT from models/luts with a strength from 0 to 2. Starts on LC Crushed Blacks at 0.3. |\n| **LC Aspect Ratio Pipe (In/Edit)** | Packs image, mask, size, latent, batch and resolution into an LC_PIPE, or edits one, overwriting only the wired sockets. |\n| **LC Aspect Ratio Pipe Out** | Unpacks the aspect ratio fields of an LC_PIPE into separate sockets and passes the pipe on. |\n| **LC Auto White Balance** | Corrects white balance automatically with a choice of algorithm, a strength blend and a before/after wipe. |\n| **LC Basic Scheduler** | Outputs sigmas for the full step count (no denoise), made to feed LC Split Sigmas (Advanced) for dual-pass sampling. |\n| **LC Batch Image 🖼️** | Batches images from auto-growing slots, ignoring muted or missing ones and resizing later images to the first. |\n| **LC Bloom** | Adds a glow from the bright areas in Bloom, Pro-Mist (diffusion filter) or Halation (film edge glow) mode. |\n| **LC Boolean** | Turns a boolean, int or float into a clean true/false and shows it on the node. |\n| **LC Boolean Flip** | Outputs the opposite of its toggle. |\n| **LC Boolean Switch** | Picks the on_true or on_false input (any type) based on a boolean. |\n| **LC Boolean Value** | A plain boolean toggle you can wire anywhere. |\n| **LC Bounding Boxes 🔲** | Draw boxes on a picture for Flux 3 or MOSS Image: name each box, pick new, change, move or remove, and describe the result. For MOSS a box can be a character and get its own palette. Works in classic and Nodes 2.0. |\n| **LC Bypass Relay** | Gathers nodes on its left so a hub can mute or bypass all of them together through OPT_CONNECTION. |\n| **LC Bypasser Panel** (JS only) | A widgets-only remote for LC Bypasser, LC Mute or LC Groups Bypasser. |\n| **LC Bypasser** (JS only) | Bypasses linked nodes from one place with toggles or BOOLEAN inputs. |\n| **LC Chromatic Aberration** | Shifts the RGB channels apart to fake lens fringing, with pixel amount and direction per channel. |\n| **LC Color Match 🎨** | Matches an image's colors to a reference (AdaIN / mean-std) with optional skin protection and mask. |\n| **LC Combo Selector** | A dropdown that mirrors the options of another node's combo (sampler, scheduler, etc.) when wired into it. |\n| **LC Control Panel 🎛️** | Up to 16 sliders and on/off switches on one node, each on its own output. The gear on a row sets its type (number or boolean), name, range, step and INT or FLOAT. A new row plugged into a number or boolean input copies that input's settings. |\n| **LC Custom Combo** | Builds your own list of options and outputs the chosen text and its index. |\n| **LC Custom Combo Panel** | A remote control that picks the choice for an LC Custom Combo from another spot. |\n| **LC Denoise 💉** | Injects latent noise scaled to 1 minus your denoise value, using the same denoise you give the sampler. |\n| **LC Depth FX 🌫️** | Uses a depth map for atmospheric haze, light wrap and depth of field with real bokeh, with shared looks. |\n| **LC Detail Daemon (BETA)** | Adds fine detail by hiding a little of the noise from the model over a window of the steps, on the original Detail Daemon schedule. Look only (default), classic and keep structure modes. Sampler version. Goes on the low pass sampler. |\n| **LC Detail Daemon (model) (BETA)** | The same Detail Daemon as a model patch, for a plain KSampler. |\n| **LC Detail Pipe Out** | Unpacks the detailer settings (models, prompts, seed, cfg, sampler, scheduler, steps) from an LC_PIPE. protect_mask (bottom): the areas the pipe detailers redrew. |\n| **LC Dimension Resize 📐** | Adds, subtracts, multiplies or divides width and height by one value and rounds the results to integers. |\n| **LC Directional Blur** | Motion blur along one angle and length, set by dragging an arrow on the node. |\n| **LC Dynamic Overlay** | Overlays image B on image A and lets you adjust the opacity on the node after one run without regenerating. |\n| **LC Easy Folder 📂** | Builds a filename_prefix for the native Save Image node and creates the folders. |\n| **LC Film Grain** | Adds film grain with amount, contrast, size and mono or color options. |\n| **LC Film Grain (Video) 🎞️** | The same grain for a whole clip: GPU, a few frames at a time, with a progress bar. Grain sized to the video, so it survives compression. |\n| **LC Film Stock (B&W)** | Gives a black and white film look from presets with a strength blend. |\n| **LC Film Stock (Color)** | Gives a color film look from presets (toe, shoulder, gamma) with a strength blend. |\n| **LC Float Compare** | Outputs the larger or smaller of two floats. |\n| **LC Flux 3 Layout Prompt 🗺️** | Adds the boxes to a Flux 3 prompt as the table the model was trained on. Write <1>, <2> in the prompt for box 1, box 2. |\n| **LC Flux 3 Reference Latent 🖼️** | Up to 4 reference pictures for Flux 3 on the positive and negative, the negative the model wants and the latent size. |\n| **LC Get Image 📐** | Reads an image's width, height, megapixels, longer side, batch size and aspect ratio. |\n| **LC Groups Bypasser** (JS only) | Bypasses whole groups from one place, with one toggle per group. |\n| **LC Image Adjust** | Basic color grade (hue, saturation, brightness, contrast) with a mild sharpen or soften. |\n| **LC Image Batch From Folder 📂** | Loads a whole folder as one batch in alphabetical order, with max_images and start_index. |\n| **LC Image Compare 🔎** | Compares large batches of images with a compact dropdown and a stable image area. |\n| **LC Image Crop 🖼️🔪** | Crops by dragging a box and handles on the node, with an optional aspect lock. |\n| **LC Image Denoise** | Smart denoise with blur strength, edge preservation and a blend. |\n| **LC Image Desaturate** | Desaturates toward grayscale with a factor and a luminance method. |\n| **LC Image Grid 🖼️** | Arranges a batch of images into a grid with optional gap, outline and border. |\n| **LC Image Label** | A floating image sticker with drag-and-drop upload for annotating a workflow (no sockets). |\n| **LC Image Pass** | Passes an image straight through. Turned off, the next node sees nothing on that input and runs without it. |\n| **LC Image Ref Pipe In 🖼️** | Bundles up to 16 reference images into one pipe, with sockets that grow like Text Encode Qwen Image 2.1. |\n| **LC Image Ref Pipe Out 🖼️** | Unpacks an image ref pipe back into image_1 to image_16 in their original slots, pipe first. |\n| **LC Image RGB** | Offsets each color channel separately with an overall strength. |\n| **LC Image Split 🖼️** | A before/after wipe on the node whose output is the baked split for saving, with your own divider width and colour. |\n| **LC Image Stitch Multi 🖼️🪡** | Stitches images side by side or stacked from autogrow slots, with match size, align and an optional gap. |\n| **LC Image to Total Megapixels 📐** | Scales an image to a total megapixel count and outputs the resulting resolution. |\n| **LC Image-Mask Resize 📐** | Resizes an image and/or mask to a preset, custom size, multiplier or megapixel count, in multiples of divisible_by. |\n| **LC Int Compare** | Outputs the larger or smaller of two integers. |\n| **LC Int Split** | Splits a total into a + b at a fractional split point, so a + b always equals the total. |\n| **LC Invert Boolean** | Coerces a boolean, int or float and outputs the opposite. |\n| **LC Is Bypassed / Muted** | Outputs true if the node wired into it is bypassed or muted, read live without queuing. |\n| **LC Join Strings 🔗** | Joins multiple strings with a delimiter and skips the empty ones. |\n| **LC Krea2 Regional Inline Canvas** | Paint RGB regions on the node and get regional conditioning using the krea2 CLIP type. |\n| **LC Label 🏷️** | A floating text label for annotating a workflow, with fonts, color, outline and shadow (no sockets). |\n| **LC Last Image Holder** | Keeps the last generated image for before/after comparison, even after disconnecting. Hold until seed change keeps the first image of a seed to compare tweaks against. |\n| **LC Lens FX (deprecated)** | Hidden from search. Old workflows still run it. Use Lens Profile, Vignette and Film Grain instead. |\n| **LC Lens Profile** | Applies or corrects a named lens profile with adjustable strength. |\n| **LC Lift Gamma Gain** | Grades shadows, midtones and highlights with lift, gamma, gain and offset. |\n| **LC Lighting Control V2 🔦** | Relights an image with one or two spot or sun lights, warmth, color gels and hard or soft cast shadows. |\n| **LC Lighting Control 🔦 (deprecated)** | Old workflows still run it. Use LC Lighting Control V2 instead. |\n| **LC LoRA Loader Stack 🎚️** | Builds the same LoRA list as LC LoRA Loader, output as a LORA_STACK. |\n| **LC LoRA Loader 🎚️** | Applies any number of LoRAs from one node, with enable, strength and drag-to-reorder per row. |\n| **LC LoRA Loader (single) 🎚️** | One LC LoRA Loader row (on / off, folder picker, strength, Info) for a turbo or style LoRA on its own spot. Model only, no add or remove. |\n| **LC Mask Pass** | Passes a mask through. Turned off, the next node runs with no mask. Use it instead of bypassing the node that makes the mask. |\n| **LC MiniMax H3 Pipe** | Packs or edits an H3 pipe holding the prompts, references and settings for MiniMax H3. |\n| **LC MiniMax H3 Pipe Out** | Unpacks an LC MiniMax H3 pipe into its separate sockets. |\n| **LC MiniMax H3 Pipe Out V2** | Unpacks an H3 pipe V2, adding prompt, steps, cfg, seed, sampler and scheduler outputs. |\n| **LC MiniMax H3 Pipe V2** | Packs or edits an H3 pipe V2, which also carries prompt, steps, cfg, seed, sampler and scheduler. |\n| **LC Model Info ℹ️** | Wire any MODEL in: it follows the wire upstream (LoRA loaders, merges, LC Model Optimizer) and reads each file's header only. Shows the workflow a save node baked in (base models, LoRAs with strengths, merges), Kohya training info and trigger tags, card fields, GGUF type. Live on the node, no queue needed. The model passes through. |\n| **LC Model Optimizer (pipe) ⚡** | The same as LC Model Optimizer, plus an LC_PIPE out (model 2 carries Ideogram 4's second model). |\n| **LC Model Optimizer Video (pipe) ⚡** | The same as LC Model Optimizer Video, plus an LC_PIPE out (vae 2 carries the audio VAE). |\n| **LC Model Optimizer Video ⚡** | The video version: model, text encoder, video and audio VAE and latent upscaler for MiniMax H3 and LTX 2.5 / 2.3. On H3, Spectrum and Veda can be switched on when they are installed (spectrum / veda widgets). |\n| **LC Model Optimizer ⚡** | Loads the model, text encoder and VAE that suit your card, with the speed-ups that work on it. Downloads recommended files on the first run; GGUF models load through the gguf pack by calcuis. Covers Krea 2 (Turbo and Raw), SDXL, Illustrious, Pony and more, plus Custom for any other model. Built-in Spectrum on MOSS Image and Krea 2 (spectrum widget to opt out). |\n| **LC MOSS Layout Prompt 🗺️** | Turns the boxes into MOSS Image's layout prompt: objects, characters and text with their own caption and palette, right where you drew them. Adds canvas (single, multi panel, collage), medium tags and palette, and outputs the size the boxes were drawn on. |\n| **LC Mute** (JS only) | Works like LC Bypasser, but Off mutes the linked nodes instead of bypassing them. |\n| **LC Natural Look 🍃** | Takes the AI look out: pulls back only the loudest colours, calms orange and plastic skin, rolls the highlights off, cuts the glossy glow and lifts fine texture (flat skin left out), with your black point, contrast and brightness kept and a whisper of grain. |\n| **LC Negative** | A negative prompt text box. |\n| **LC Node Snapshot 📋** | Reads another node's widgets and outputs the selected value, all lines, or JSON. |\n| **LC Note 📝** (JS only) | A markdown note that translates into ComfyUI's 14 languages on click through LC Vision, and shows @[card](link) lines as link cards. |\n| **LC Notify 🔊** | Plays a chosen sound when the node runs (always, on empty queue, or never). |\n| **LC Phone Filters 📱** | 37 phone-app filter presets (1977, Aden, Brooklyn, etc.) with strength and an on-node wipe. |\n| **LC Photo Style 📷** | Gives an image a phone-camera look from a style preset, with sliders and a strength blend. |\n| **LC Pipe (in/edit)** | Packs values into an LC_PIPE, or merges overrides into an existing pipe. |\n| **LC Pipe Combine** | Edits the top pipe with a second pipe: whatever the edit pipe carries overwrites the top one, everything else rides along. |\n| **LC Pipe Out** | Expands an LC_PIPE into individual sockets and passes the pipe on. protect_mask (bottom): the areas the pipe detailers redrew. |\n| **LC Preview Image 🖼️** | Previews an image and sits quietly instead of erroring when nothing arrives. |\n| **LC Preview Mask 🎭** | Previews a mask and sits quietly instead of erroring when nothing arrives. |\n| **LC Prompt List 🗒️** | One prompt per line, sent out as a list: every line runs as its own generation. Blank lines and lines starting with // are left out. Replaces CR Prompt List (same inputs and outputs). |\n| **LC Prompt to Conditioning + Zero** | Encodes a prompt into conditioning and also outputs a zeroed copy for the negative. |\n| **LC Reference Latent** | Attaches up to eight reference latents to conditioning. Chain more than one and they add up. |\n| **LC RTX Super Resolution ⚡** | NVIDIA RTX Video Super Resolution on pictures or video frames: upscale up to 4x, upscale a clean source, denoise or deblur. Quality LOW to ULTRA, scale or megapixels, strength. Shows an Install RTX support button when nvidia-vfx is missing. |\n| **LC Sampler Configure** | Central dual-pass sampler settings: steps, swap point, detailer steps, denoise, CFGs, sampler and scheduler. |\n| **LC Sampler Configure (pipe)** | Dual-pass sampler settings with an optional pipe in and a pipe out. |\n| **LC Sampler Configure Pipe Out** | Unpacks an LC_PIPE into the sampler configure sockets, plus the latent. |\n| **LC Sampler Configure Simple** | Single-pass sampler settings with one CFG and no step swap. |\n| **LC Sampler Configure Simple (pipe)** | Simple sampler settings that read from and write to an LC_PIPE. |\n| **LC Sampler Scheduler ⚙️** | Pick the sampler and scheduler once and wire them to every KSampler, so they all change together. |\n| **LC Save Image 💾** | Saves images with workflow metadata, and CivitAI parameters when paired with LC Save Metadata. |\n| **LC Save Metadata 🏷️** | Builds the metadata (models, AIR or URL, settings) that LC Save Image writes. |\n| **LC Seed Jump 🌱** | Takes a seed and a jump value and outputs the seed plus five successive jumps. |\n| **LC Sharpen Pro** | Undoes softness (deconvolution) with texture and clarity, halo control and skin protection (optional skin_mask from LC Skin Master). Presets for photos, line art, anime and illustration. |\n| **LC Show Any 🔤** | Shows any value on the node and passes it through with its type unchanged. |\n| **LC Show Text 🔤** | Shows a string on the node and passes it on. |\n| **LC Sigma Curve** | Draw a custom sigma curve on the node, save it, and reuse it. |\n| **LC Sigma Resample** | Resamples a sigma curve to a new step count while keeping its start and end sigma (also registered as LCChangeStepCount). |\n| **LC Sigmas (BETA)** | One scheduler for one- and two-pass sampling: sigma curve presets (base, beta, flowmatch, hyperbolic, gaussian, your saved curves) you can bend by dragging the graph, step swap, denoise, continue or renoise on the second pass, and sigma shift. Takes regular and RES4LYF / ClownShark sampler names. |\n| **LC Size Pad 📐** | A 2D slider for width x height: drag the frame's corner. Model presets (MiniMax H3, Krea 2, SDXL, LTX, Klein 9B, Wan 2.2) snap to the model's step and stop at its megapixel limit; aspect lock and portrait / landscape flip. |\n| **LC Skin Beauty ✨** | Cools, brightens and evens skin in LAB with presets, protecting highlights, with an optional mask. Runs on GPU or CPU. |\n| **LC Skin Master ✨ (BETA)** | The whole skin chain in one node on one face-aware skin map: grit, pores, blemishes, lines, freckles, eyes, skin tone and colour, each done once. Presets from a light clean-up to plastic-skin restore, weathered and sun-kissed. Outputs the skin mask for Sharpen Pro. |\n| **LC Skin Texture ✨ (BETA)** | Adds real pore texture to skin that came out too smooth, from a real skin photo (only its fine relief, never its colour). Optional protect_mask leaves the detailers' areas alone. |\n| **LC Skin Upscale** | Upscales only the masked skin area with a CNN model and blends it back. Optional protect_mask leaves the detailers' areas alone. |\n| **LC Slider** | A slider on the node face that outputs an int or float. |\n| **LC Speed Boost (BETA) 🚀** | About 2x faster sampling (about 1.4x on SDXL / Pony / Illustrious), same quality: the picture starts at half size and grows to full size partway through. Plug it into the high pass sampler. Does not work on MOSS Image. |\n| **LC Speed Boost 🚀 KSampler (BETA)** | A KSampler with Speed Boost built in. Same inputs, plus start / end at step so it can chain into another sampler. Takes ClownShark (RES4LYF) samplers. |\n| **LC Split Sigma Scheduler** | Splits sigmas between two models for a dual-model SamplerCustomAdvanced. |\n| **LC Split Sigmas (Advanced)** | Splits sigma curves at a swap step into a high and a low set. |\n| **LC Stop 🛑** | A queue breakpoint you can enable. The play button (or Run) carries on with the same seeds, so everything above the stop comes from the cache. |\n| **LC Text Overlay** | Draws text on an image with a draggable position, font size and color. |\n| **LC Text Remove 🔪** | Removes up to twenty substrings from a text, in order. |\n| **LC Text Replace ✂️** | Runs up to twenty find and replace pairs (optionally regex) on a text. |\n| **LC Timer ⏱️** | Times every run and scores the newest one against the 5 before it: faster in green, slower in red. Lists the last 10 runs. Stopped and fully cached runs are left out. |\n| **LC Tone Match** | Keeps the reference's broad lighting and color while keeping the image's fine detail, with an optional mask. |\n| **LC Vibrance** | Smart saturation (vibrance) with optional plain saturation and skin protection. |\n| **LC Vignette** | Darkens or brightens the edges of the image. |\n| **LC VRAM Cache Clear** | A pass-through node that clears GPU and model cache when it runs, also on its own branch with nothing after it. |\n| **LC Watermark 💧** | Composites a watermark image you position by dragging, with live size and opacity. Transparent PNGs keep their transparency through watermark_mask. |\n| **LC Weighted Prompt ⚖️** | A prompt box with a weight per word: click a word, move the slider (green above 1 with its number, red below, under 0 taken out). Type in the box or wire a prompt in and edit it there; block (on change, always, never) decides which one is used. Krea 2 (plain, Image Reference Edit, Identity Edit, ControlNet), MOSS Image, Anima and CLIP models. |\n| **LC Widget To String** | Reads a widget on another node as a string. |\n| **LC ✂️ Duplicate Tags 🏷️** | Removes repeated tags so none gets double weight (long_hair = (long hair:1.2)). Optional second prompt to merge two and clean them together. |\n| **LC 🚦** | A light for a boolean: one color for true, one for false (or none). Colors behind the gear. |\n| **Legend Effects 🪄** | In homage to Legendaer: VHS TV, Pixelation, Digital Glitch, Night Vision, Blueprint, Frosted Glass, Gameboy, Edge-Preserving Blur, Morphology and Quantize on one node. Pick a look and only its settings show; strength and the on-node wipe compare. |\n| **Prompt** | A prompt text box (was LC Positive). The Vision Assistant swaps it in for other packs' text boxes, or LC Negative when the box feeds a negative. |\n| **Prompt to Conditioning** | Encodes a text prompt into CLIP conditioning. |\n| **🌱LC Seed** | A utility seed with a mode that also works when you queue only this node. |\n| **🎨LC Color Palette** | Picks a 4 to 6 color palette from a preset or from an image, for use in prompts. |\n| **🎲LC Wildcard** | Picks a random line from a wildcard text file. |\n| **📐 LC Aspect Ratio Simplifier** | Resizes an image and/or mask to a target size and outputs image, mask, size, empty latent and batch. |\n| **📐 LC Aspect Ratio Simplifier (pipe)** | Does the same as the Aspect Ratio Simplifier and adds a pipe output for Get/Set. |\n| **📝 LC Save Text** | Writes a text string to a file in the output folder. |\n| **🗒️LC Camera** | Sets camera framing and depth of field for a prompt from distance and angle presets. |\n| **🗒️LC Lighting** | Sets lighting style and direction for a prompt from presets plus your own notes. |\n| **🗒️LC Scene Builder** | Builds a scene description from scene presets and objects. |\n| **🗒️LC Style Selector** | Picks a style preset (and quality level) for a prompt and adds your own notes. |\n| **🗒️LC Subject** | Describes the subject of a prompt with freeform text plus pose, action, outfit and placement options. |\n| **🗒️LC Subject Array** | Combines several subject outputs into one line. |\n| **🧩LC Prompt Assembler** | Assembles the prompt builder pieces (subject, camera, lighting, style, scene) into one prompt or JSON. |\n\n---\n\n## LC AV v0.5.23\n\n[github.com/lonecatone23/ComfyUI_LC_AV_nodes](https://github.com/lonecatone23/ComfyUI_LC_AV_nodes)\n\n| Node | What it does |\n|---|---|\n| **LC Audio Channel 🎚️** | Splits stereo audio into left and right, and duplicates mono to both. |\n| **LC Audio Crop ✂️** | Crops audio from a start time to an end time (MM:SS). |\n| **LC Audio Duration ⏱️** | Outputs the audio length as seconds and minutes, as int and float. |\n| **LC Audio EQ 3-Band 🎛️** | A 3-band equalizer with a low shelf, a peaking mid and a high shelf. |\n| **LC Audio Separate 🎼** | Splits audio into Bass, Drums, Other and Vocals stems with Hybrid Demucs. |\n| **LC Audio Volume 🔊** | Changes audio volume with a slider and soft-clips after the gain. |\n| **LC AV Pipe (in/edit) 🎬** | Packs or edits an LC_AV_PIPE holding video, audio and settings. |\n| **LC AV Pipe Out 🎬** | Unpacks an LC_AV_PIPE into its slots and passes the av_pipe on. |\n| **LC Create Video 🎬** | Builds an LC_AV_PIPE from an image batch (it does not encode a file). |\n| **LC Final Frame 🖼️** | Outputs the last frame of an image batch. |\n| **LC Frame Interpolate 🎞️** | Smooth motion with RIFE 4.26: any frame rate, not just 2x, with a progress bar. Holds hard cuts and matches the video to its sound. |\n| **LC Get Latent Size 📐** | Reads the pixel width and height of a latent, plus batch and frames for video latents. |\n| **LC H3 Audio Sync (BETA) 🎤** | Makes an H3 video perform your own track (a song, a line of dialogue) instead of sound the model invents. |\n| **LC H3 Make (BETA) 🎥** | Makes the shots of an LC H3 Story: wraps the people, pictures and sound around each shot's lines, samples it and saves it (takes, the tail the next shot starts from, the joined movie). |\n| **LC H3 Save to Story (BETA) 🃏** | Puts a picture straight onto its Story card or a shot's start / end frame. Cast, outfit and prop pictures are cut out onto plain grey. |\n| **LC H3 Shot Card (BETA) 🎞️** | Storyboard frames with any image model: one shot's start or end frame as a prompt, its blocking boxes, the background and the cast pictures. |\n| **LC H3 Story (BETA) 🎬** | The whole movie on one node: cast, outfits, places, props and shots, each shot's lines to read and edit, and warnings before you render. The board redoes or repairs one shot and flags the ones a change broke. |\n| **LC H3 Story Card Prompt (BETA) 📝** | Turns a Story cast, outfit, place or prop card into a prompt and an empty latent for any image model, so the card gets its picture. |\n| **LC H3 Ultimate Upscale (BETA) 🔭** | The MMH3 Ultimate Upscale in one node for a normal MiniMax H3 workflow: H3 latent upscaler plus a light tiled H3 pass. |\n| **LC H3 Upscale (BETA) 🔭** | Upscales one long-video segment per run from its saved latent, once the cut is final. |\n| **LC Load Audio 📂** | Loads audio from the input folder with start and end trim and a preview player. |\n| **LC Load Video 🎞️** | Loads a video exactly as it is: every frame at its own size, its sound and its frame rate. No resizing or frame skipping. |\n| **LC Pipe → AV Pipe 🔌** | Converts an LC_PIPE or MiniMax H3 pipe into an LC_AV_PIPE, copying only the shared fields. |\n| **LC Preview Video 📺** | Plays a video on the node, from a file or a batch of frames with its sound. Nothing is saved to your output folder. |\n| **LC Save Video Metadata 🏷️** | Builds the same metadata as LC Save Metadata, for LC Save Image or LC Save Video. |\n| **LC Save Video 💾** | Saves video with Video Combine style options (frame rate, loop, format, pingpong, crf, pix_fmt, audio). A relay input takes LC Relay VSR Upscale's video and saves it a few frames at a time (5 s at 4x: 0.3 GB of RAM instead of 12 GB); with Relay bypassed it saves images instead. Colours match VHS (BT.709); AV1 works without SVT-AV1. |\n| **LC VAE Decode 🧩** | A VAE Decode with a switch between full and tiled decoding. |\n\n---\n\n## LC MaskMaker v0.29.15\n\n[github.com/lonecatone23/ComfyUI_LC_MaskMaker_nodes](https://github.com/lonecatone23/ComfyUI_LC_MaskMaker_nodes)\n\n| Node | What it does |\n|---|---|\n| **LC 360 View 🧭** | Flat camera views out of a 360 panorama: drag on the node to aim, list views as name: yaw, pitch, fov and get them all as one batch. One panorama gives every shot of a scene the same room. |\n| **LC Auto Adjust 🔆** | One-click auto levels (per channel, luminance, saturation or mono) with trims, a strength blend and an optional mask. |\n| **LC Character Detailer (BETA) 🩹** | LC Smart Detailer for one character: SAM 3 finds every match, then only the one you pick is redrawn (left to right, largest, or the one inside a box from LC Bounding Boxes). Give each character its own LoRA branch and detailer, so a character LoRA never bleeds onto the other faces. |\n| **LC Character Detailer (pipe) (BETA) 🩹** | The same, with model, VAE and sampler settings from the LC pipe. A wired model overrides the pipe's. |\n| **LC Create Mask 🖼️✏️** | Draws a mask right on the node with points or a freehand pencil, with feather, invert and opacity built in. |\n| **LC Depth Anything V2 🌊** | Makes a Depth Anything V2 depth map (bright = near) as an image and a mask. Model list reads the same on every machine. |\n| **LC Detail Finder (BETA) 🎯** | A detailer per character, step 1: SAM 3 finds every match once (every face). With face, hair each face gets its own hair. |\n| **LC Detail Sorter (BETA) 🔢** | Step 2: puts the SAM 3 masks in order (left to right, right to left, top to bottom, largest first) and breaks them out as outputs 1 to 8, numbered on the preview. |\n| **LC Detailer For Each (BETA) 🩹** | Step 3, one per character: redraws that person with their own LoRA branch, conditioned prompt and seed. Works on its own or on an LC pipe; anything plugged in beats the pipe. Same engine as LC Smart Detailer. |\n| **LC Face Crop 📐** | Crops to a format with the faces placed well instead of a blind centre crop, using the Aspect Ratio Simplifier presets. Framing from widest to face only. |\n| **LC Image Blend Advance 🎚️** | Places a layer on a background (position, scale, rotate, mirror) and blends it with 29 blend modes through an optional mask. |\n| **LC Outpaint, Rotate, & Pad 🔄** | Turn, crop and pad a picture by dragging on the node, with a portrait / landscape flip. The mask covers the padding and the corners a turn opens up. max_megapixels stops the frame at that size. |\n| **LC Krea2 AnyPaint 🩹** | Krea 2 inpaint and outpaint with the AnyPaint LoRA. Everything outside the mask comes back exactly as it was, and the seam disappears. |\n| **LC Z-Image AnyPaint 🩹** | The same inpaint and outpaint for Z-Image (Turbo / Base), painted by the Z-Image Fun ControlNet Union 2.1 patch instead of a LoRA. Everything outside the mask comes back exactly as it was. |\n| **LC SDXL AnyPaint 🩹** | The same inpaint and outpaint for any SDXL checkpoint (SDXL, Pony, Illustrious), painted by ControlNet Union ProMax, Fooocus inpaint optional. No LoRA needed. |\n| **LC Flux 3 Klein AnyPaint 🩹** | The same inpaint and outpaint for Flux 3 Klein, painted in edit mode with AusBoss's Outpaint LoRA: the area is filled gray and the model fills it while your picture stays put. |\n| **LC MOSS Box Edit 🖌️ (BETA)** | Draw boxes on a picture with LC Bounding Boxes and MOSS Image redraws only those boxes, seeing the whole picture while it works; everything outside stays pixel for pixel the same. Change clothes, add a character or a sign, or take something out. |\n| **LC MOSS Control 🕹️** | ControlNet for MOSS Image: the picture follows a depth map (pose, shape) and / or a color region map, with an end point for each. Runs darask0's Color-Depth Control adapter. |\n| **LC Mask Refine ✨** | Tightens a mask with a trimap, using a guided filter or VITMatte on the edge band only, with a before/after wipe. |\n| **LC Normal Map (BAE) 🗺️** | Makes a BAE surface normal map (RGB = XYZ), the same style ControlNet's normal_bae makes. |\n| **LC Outpaint 🖌️➕** | Drag the canvas edges outward on the node to build a grey canvas and a mask of the new area. max_megapixels stops the edges at that size. |\n| **LC Person Mask 🧍** | Selects parts of a person (face, hair, body, clothes, accessories, background) with Segformer or MediaPipe. remove_features makes a skin-only mask. |\n| **LC Relay VSR Upscale 🧩** | RelayVSR upscale in one node: model, VAE and sampler built in, downloaded on first use. 2x or 4x, softened so hair and edges stay natural (no inked lashes, halos or colour shift). source: video keeps the frames matched so they stay steady, image upscales each picture on its own. Keeps VRAM flat on 8 GB cards (a 5 s clip at 4x in about 104 s on an RTX 5060 laptop). Needs ComfyUI nightly (from Nov 5, 2026) or the next stable release. Its relay output goes to LC Save Video, which saves the video a few frames at a time so it never fills your RAM. detect_faces (on) finds the faces itself and keeps Relay's grain off them (free on pictures, every 3rd frame on video); a wired protect_mask wins. upscale also offers 2x / 4x bf16 (10 GB), the original release: practically identical output, about 5 GB more VRAM. |\n| **LC Remove Background ✂️** | Removes the background with BiRefNet and outputs an RGBA cutout, the mask and the subject on a solid color. |\n| **LC Segment Anything 🎯** | Selects things by describing them, using GroundingDINO + SAM or SAM 3, with optional edge refine. |\n| **LC Smart Detailer 🩹** | Replaces the SEGS / Impact detailers. Finds what you type (hands, face, eyes) with SAM 3 and redraws each one in its own upscaled crop, then blends it back in. |\n| **LC Smart Detailer (pipe) 🩹** | The same, with model, VAE and sampler settings from the LC pipe. A wired model or VAE overrides the pipe's. |\n| **LC Touch Mask (BETA) 👆** | Mask one thing exactly: draw around it and SAM 3 finds its edges. Tap it to grow to the next bigger thing (face, face + hair, head, person), double-tap to step back. Ctrl + draw cuts out. Threshold, smooth and a fine edge finish built in. |\n| **LC VOSR2 Upscale 🧩** | Fast, low-VRAM upscale with VOSR 2.0, built in: sharpens and adds fine detail without redrawing the picture. 1.5x to 4x in one pass, 6x and 8x in two. |\n| **LC VOSR2 Upscale (pipe) 🧩** | The same on the LC pipe, after the pipe detailers. Carries the detailers' areas to the new size (protected output) for LC Skin Upscale / LC Skin Texture. |\n\n---\n\n## LC Vision v1.6.28\n\n[github.com/lonecatone23/ComfyUI_LC_Vision_nodes](https://github.com/lonecatone23/ComfyUI_LC_Vision_nodes)\n\n| Node | What it does |\n|---|---|\n| **LC Vision Showrunner (BETA) 🎬** | Plans a long MiniMax H3 video as CUT / CONTINUE segments, fixes each join to how the last segment really ended, and saves / loads the project file (shot list, references, settings). |\n| **LC Vision Reviewer 🕵️ (BETA)** | Quality gate: yes/no checks on hands, faces, text, artifacts, prompt match and your own questions. Flags a bad render, or blocks everything after it. |\n| **LC Vision Shot List (BETA) 📋** | The story for the Showrunner, filled in like a form: the place, the cast and one row per shot. Suggests the segment count and warns about lines too long for their shot. No AI involved. |\n| **LC Vision Storyboard Builder (BETA) 🎞️** | Pictures for a Showrunner movie: finds what the project is missing (faces, places, anchors) and makes one prompt, latent and seed per picture for the sampler. |\n| **LC Vision Storyboard Save (BETA) 🎞️** | Saves the Storyboard Builder's pictures into the project. 📂 Load on the Showrunner adds them to the Reference Assembler. |\n| **LC Vision Storyboard Sheet (BETA) 🎞️** | The storyboard on the node: a card per picture. ✅ Use puts it in the Reference Assembler, ↻ makes it again, ✎ changes its prompt. Nothing to wire. |\n| **LC Vision Redirect (BETA) 🔬** | Kept for older workflows: LC Vision Showrunner now fixes the joins itself. |\n| **LC Vision Danbooru Caption 🏷️** | Prompts for SDXL, Pony and Illustrious from one image or a rough idea: a short or detailed caption, real Danbooru tags, or a sentence plus tags. Optional quality tags and a matching negative. |\n| **LC Vision Caption 📝** | Generates text from a loaded LC Vision model, an instruction, up to three reference images and a reference video. |\n| **LC Vision Loader 🔬** | Loads a Qwen-VL GGUF model and its vision projector. keep_model_loaded off unloads it after the Vision nodes are done, so the image model gets the whole card. |\n| **LC Vision Moviemaker 🎥** | Plans a video as several continuous segments in one call, each written as a self-contained MiniMax H3 prompt. |\n| **LC Vision Prompt Enhancer 📝** | Rewrites a prompt through an LC Vision model using a preset instruction (text only). Wire LC MOSS Layout Prompt into it and it enhances the scene and boxes, boxes kept. |\n\n---\n\n## LC ModelBuilder v0.7.5\n\n[github.com/lonecatone23/ComfyUI_LC_ModelBuilder_nodes](https://github.com/lonecatone23/ComfyUI_LC_ModelBuilder_nodes)\n\n| Node | What it does |\n|---|---|\n| **LC Anima Block Merge Advanced** | The Krea2 Block Merge Advanced for Anima: a curve over its 28 blocks plus sliders for the x embedder, timestep embedder and norm, LLM adapter and final layer. Presets. |\n| **LC Anima LoRA Block Scan** | The Krea2 LoRA Block Scan for Anima, scoring anime faces with CCIP. |\n| **LC Anima LoRA Editor** | The Krea2 LoRA Editor for Anima: same controls, Anima's 28 blocks and layer types. |\n| **LC Anima LoRA Merge** | The Krea2 LoRA Merge for Anima: two to four Anima LoRAs with a per-block A / B curve. |\n| **LC Checkpoint Save** | Saves an all-in-one checkpoint (model, clip, vae) with an enabled toggle to skip the save. metadata: keep all, or necessary only (no workflow or training details). |\n| **LC Diffusion Model Save** | Saves just the diffusion model, with no clip or vae. Same metadata switch. |\n| **LC Face Variety Scorer 🧑‍🤝‍🧑** | Scores how alike the faces in a batch are (0 to 1, lower = more variety), plus a crowd score for group shots. Photo (ArcFace) or anime (CCIP) mode. |\n| **LC Fingerprint Identify 🔎** | What is this model made of? Its recipe from your fingerprint library, block by block: which models were merged and at what ratio, merged-in LoRAs with their strength, how sure it is of each, and a heatmap. It can only name what is in the library. |\n| **LC Fingerprint Library 📚** | Goes through your folders and stores a small fingerprint (about 1 MB) of every model and LoRA, with its family. Once a file is in, the original can go. Reruns only add what is new. |\n| **LC Krea2 Block Merge Advanced** | Merges Krea2 checkpoints with a draggable per-block ratio curve across the 28 blocks plus sliders for the named regions. |\n| **LC Krea2 LoRA Block Scan** | Finds where a LoRA locks the face or changes the whole image by turning off one block group at a time, and suggests a block curve for the Editor. |\n| **LC Krea2 LoRA Editor** | Loads a Krea 2 LoRA with each of the 28 blocks turned up or down, attention and MLP scaled separately, and spikes softened. |\n| **LC Krea2 LoRA Merge** | Merges two to four Krea 2 LoRAs with a per-block A / B curve (sum or TIES). |\n| **LC Krea2 Semantic Vector Tuner** | Amplifies or attenuates specific regions of a single Krea2 checkpoint's weights (not a merge). |\n| **LC LoRA Bake 🍞** | Bakes up to 4 LoRAs into a model file and saves it as a new model, with an optional per-block curve. Reads every LoRA format ComfyUI reads and writes the recipe into the file. Runs on the CPU, no VRAM needed. |\n| **LC LoRA Extract** | Turns a finetune into a LoRA (finetuned minus its base): all layers, blocks only or a custom block list. Unchanged layers are left out. |\n| **LC LoRA Save** | Saves an edited or merged LoRA as a standard file with every edit baked in, optionally at a new rank, with enabled and embed_workflow switches. |\n| **LC Model Fingerprint 🔍** | One model against a reference, layer by layer, from the weights themselves: the same model at another precision, built on it, a block merge (the chart shows which blocks) or not related. With a LoRA: whether it was merged in and at about what strength. |\n| **LC Model Merge (any precision)** | Merges two models stored in different precisions (bf16 with fp8, int8, nvfp4 or GGUF, in either order). The result stays full precision. |\n| **LC Model Quantize 🗜️** | Saves a smaller copy of a model: fp8, mxfp8, nvfp4, int8 or int4 (load with the stock loader) or GGUF Q8_0 to Q2_K. From the wired MODEL (LoRAs baked in) or straight from a file of any size. |\n| **LC MOSS Block Merge Advanced** | Merges MOSS Image models with a draggable per-layer ratio curve across the 42 layers, plus sliders for the parts outside them (picture in, prompt in, timestep, modulation, final layer). Presets save and load. |\n| **LC Scoreboard 🏆** | Head-to-head counter for A / B tests: #1 Win, Tie and #2 Win buttons, with the leader and percentages shown on the node. |\n| **LC Strip Metadata 🧹** | Cleans the metadata out of a model you already saved (embedded workflow, training details, titles). The weights are copied byte for byte, never loaded, so it loads exactly as before. Writes a _clean copy or replaces the original. |\n| **LC VAE Compare** | Decodes the same latents with up to six VAEs, side by side with a 1:1 detail crop, a sharpness number and how far each lands from the first. |\n| **LC VAE Merge** | Merges the decoders of two VAEs of the same family, coarse shapes to fine texture. The encoder stays the base's, so the result still fits the models made for it. |\n| **LC VAE Save** | Saves a VAE to models/vae in fp32, bf16 or fp16. |\n\n---\n\"True Nothing is. Permitted Everything is\"- Yoda Auditore, Assassin's Wars"
            },
            "zh": {
              "text": "# 节点总数\n\n5 个节点包共 **257 个节点**。已弃用的节点会列出，但不计入总数。\n\n| 节点包 | 节点数 | 版本 | 链接 |\n|---|---|---|---|\n| LC123 | 162 | v1.56.6 | [仓库](https://github.com/lonecatone23/ComfyUI_LC123_nodes) |\n| LC AV | 27 | v0.5.23 | [仓库](https://github.com/lonecatone23/ComfyUI_LC_AV_nodes) |\n| LC MaskMaker | 30 | v0.29.15 | [仓库](https://github.com/lonecatone23/ComfyUI_LC_MaskMaker_nodes) |\n| LC Vision | 12 | v1.6.28 | [仓库](https://github.com/lonecatone23/ComfyUI_LC_Vision_nodes) |\n| LC ModelBuilder | 26 | v0.7.5 | [仓库](https://github.com/lonecatone23/ComfyUI_LC_ModelBuilder_nodes) |\n\n---\n\n## LC123 v1.56.6\n\n[github.com/lonecatone23/ComfyUI_LC123_nodes](https://github.com/lonecatone23/ComfyUI_LC123_nodes)\n\n| 节点 | 作用 |\n|---|---|\n| **CivitAI 🚩🔪** | 根据合规列表从提示词中去掉被标记的词，仅作辅助（你仍需对 CivitAI 的条款负责）。开启前不起作用。 |\n| **LC Advanced Folder 📂** | 为 Image Saver 类节点分别生成文件名和路径输出，可选在路径中加 prefix 和 timestamp。 |\n| **LC Anima Box Prompt 🔲** | Anima 的区域提示词：在 LC Bounding Boxes 里画框，每个框像普通提示词一样写；主提示词写场景。不需要写左 / 右。接在模型和采样器之间。需要 Anima Regional Conditioning；Regional LLLite 补丁首次使用时下载。 |\n| **LC Anima Regional Inline Canvas** | 在节点上绘制 RGB 区域，为每个区域得到单独的 conditioning 和遮罩，用于 Anima 区域提示词。 |\n| **LC Any Empty Bool** | 只要任何一个连接的输入为空、被静音或被 bypass，就输出 true。 |\n| **LC Any Empty Float** | 执行与 Any Empty Bool 相同的判空，输出一个空值和一个非空值 float。 |\n| **LC Any Empty Int** | 执行与 Any Empty Bool 相同的判空，输出一个空值和一个非空值整数。 |\n| **LC Any Index Switch** | 传递所选索引处的输入，忽略其他槽位。 |\n| **LC AnySwitch** | 从 2 到 20 个输入中选出第一个已连接的，并锁定为它的类型。 |\n| **LC Apply LoRA Stack 🎚️** | 把 LC LoRA Loader Stack（或任何插件包）的 LORA_STACK 应用到 model 和/或 clip。 |\n| **LC Apply LUT** | 应用 models/luts 中的 .cube 3D LUT，强度 0 到 2。默认使用 LC Crushed Blacks，强度 0.3。 |\n| **LC Aspect Ratio Pipe (In/Edit)** | 把图像、遮罩、尺寸、latent、batch 和分辨率打包进 LC_PIPE，或编辑已有的 pipe，只覆盖已连线的接口。 |\n| **LC Aspect Ratio Pipe Out** | 把 LC_PIPE 里的宽高比字段拆成单独的接口，并继续传递 pipe。 |\n| **LC Auto White Balance** | 自动校正白平衡，可选算法、强度混合和前后擦除对比。 |\n| **LC Basic Scheduler** | 输出完整步数的 sigmas（不含 denoise），用来给 LC Split Sigmas (Advanced) 供数据，做双 pass 采样。 |\n| **LC Batch Image 🖼️** | 从自动增长的槽位中合成图像 batch，忽略被静音或缺失的，并把后面的图像缩放到与第一张一致。 |\n| **LC Bloom** | 根据亮部加上辉光，有 Bloom、Pro-Mist（柔光滤镜）和 Halation（胶片边缘光晕）三种模式。 |\n| **LC Boolean** | 把 boolean、int 或 float 转成干净的 true/false，并显示在节点上。 |\n| **LC Boolean Flip** | 输出其开关相反的值。 |\n| **LC Boolean Switch** | 根据 boolean 在 on_true 或 on_false 输入（任意类型）中二选一。 |\n| **LC Boolean Value** | 一个可以连到任何地方的普通 boolean 开关。 |\n| **LC Bounding Boxes 🔲** | 在图片上为 Flux 3 或 MOSS Image 画框：给每个框命名，选择新增、修改、移动或移除，并描述结果。在 MOSS 中，一个框可以是一个角色，并拥有自己的调色板。经典画布和 Nodes 2.0 都能用。 |\n| **LC Bypass Relay** | 收集其左侧的节点，这样一个 hub 可以通过 OPT_CONNECTION 一起静音或 bypass 它们。 |\n| **LC Bypasser Panel** (JS only) | 一个只有控件的 LC Bypasser、LC Mute 或 LC Groups Bypasser 遥控器。 |\n| **LC Bypasser** (JS only) | 用开关或 BOOLEAN 输入，在一个地方 bypass 所有链接的节点。 |\n| **LC Chromatic Aberration** | 把 RGB 通道错开来模拟镜头色散，每个通道可设置像素量和方向。 |\n| **LC Color Match 🎨** | 把图像的颜色匹配到参考图（AdaIN / mean-std），可选皮肤保护和遮罩。 |\n| **LC Combo Selector** | 一个下拉菜单，连接后会镜像另一个节点的 combo 选项（sampler、scheduler 等）。 |\n| **LC Control Panel 🎛️** | 一个节点上最多 16 个滑块和开关，各有自己的输出。每行的齿轮可设置类型（数字或 boolean）、名称、范围、步长以及 INT 或 FLOAT。接到数字或 boolean 输入上的新行会复制该输入的设置。 |\n| **LC Custom Combo** | 构建你自己的选项列表，输出选中的文本及其索引。 |\n| **LC Custom Combo Panel** | 一个遥控器，可以从别处为 LC Custom Combo 选择选项。 |\n| **LC Denoise 💉** | 注入按 1 减去你的 denoise 值缩放的 latent 噪点，使用你给采样器的同一个 denoise。 |\n| **LC Depth FX 🌫️** | 用深度图做大气雾、光线包裹和带真实散景的景深，有共享的预设风格。 |\n| **LC Detail Daemon (BETA)** | 按原版 Detail Daemon 的调度，在一段步数内向模型隐藏一点噪点，从而增加细节。有 Look only（默认）、classic 和 keep structure 三种模式。采样器版本。接到 low pass 采样器上。 |\n| **LC Detail Daemon (model) (BETA)** | 同样的 Detail Daemon，做成模型补丁，用于普通 KSampler。 |\n| **LC Detail Pipe Out** | 从 LC_PIPE 中拆出 detailer 设置（模型、提示词、seed、cfg、sampler、scheduler、steps）。protect_mask（底部）：pipe detailer 重绘过的区域。 |\n| **LC Dimension Resize 📐** | 用一个值对宽和高做加、减、乘、除，并把结果取整。 |\n| **LC Directional Blur** | 沿某个角度和长度的动态模糊，通过拖动节点上的箭头设置。 |\n| **LC Dynamic Overlay** | 把图像 B 叠在图像 A 上，运行一次后可以直接在节点上调整不透明度，无需重新生成。 |\n| **LC Easy Folder 📂** | 为原生 Save Image 节点生成 filename_prefix，并创建文件夹。 |\n| **LC Film Grain** | 添加胶片颗粒，可设置数量、对比度、大小以及单色或彩色选项。 |\n| **LC Film Grain (Video) 🎞️** | 为整段视频添加同样的颗粒：GPU 处理，每次几帧，带进度条。颗粒大小按视频尺寸来定，所以压缩后仍然保留。 |\n| **LC Film Stock (B&W)** | 通过预设和强度混合，得到黑白胶片效果。 |\n| **LC Film Stock (Color)** | 通过预设（toe、shoulder、gamma）和强度混合，得到彩色胶片效果。 |\n| **LC Float Compare** | 输出两个 float 中较大或较小的那个。 |\n| **LC Flux 3 Layout Prompt 🗺️** | 把框以模型训练时所用的表格形式加进 Flux 3 提示词。在提示词里写 <1>、<2> 分别代表框 1、框 2。 |\n| **LC Flux 3 Reference Latent 🖼️** | 为 Flux 3 的正面和负面提供最多 4 张参考图，以及模型需要的负面和 latent 尺寸。 |\n| **LC Get Image 📐** | 读取图像的宽、高、百万像素、长边、batch 大小和宽高比。 |\n| **LC Groups Bypasser** (JS only) | 在一个地方 bypass 整个分组，每个分组一个开关。 |\n| **LC Image Adjust** | 基础调色（色相、饱和度、亮度、对比度），带轻度锐化或柔化。 |\n| **LC Image Batch From Folder 📂** | 按字母顺序把整个文件夹加载为一个 batch，带 max_images 和 start_index。 |\n| **LC Image Compare 🔎** | 用紧凑的下拉菜单和稳定的图像区域，比较大批量的图像。 |\n| **LC Image Crop 🖼️🔪** | 在节点上拖动方框和手柄来裁剪，可选锁定宽高比。 |\n| **LC Image Denoise** | 智能去噪，带模糊强度、边缘保护和混合。 |\n| **LC Image Desaturate** | 按系数和亮度方法向灰度去饱和。 |\n| **LC Image Grid 🖼️** | 把一个 batch 的图像排成网格，可选间隙、轮廓和边框。 |\n| **LC Image Label** | 用来给工作流做标注的浮动图片贴纸，支持拖放上传（没有接口）。 |\n| **LC Image Pass** | 让图像原样通过。关闭后，下一个节点在这个输入上什么也收不到，并在没有它的情况下运行。 |\n| **LC Image Ref Pipe In 🖼️** | 把最多 16 张参考图打包进一个 pipe，接口会像 Text Encode Qwen Image 2.1 那样增长。 |\n| **LC Image Ref Pipe Out 🖼️** | 把图像参考 pipe 拆回 image_1 到 image_16 的原槽位，pipe 在最前。 |\n| **LC Image RGB** | 分别偏移每个颜色通道，带整体强度。 |\n| **LC Image Split 🖼️** | 节点上的前后对比滑动条，输出是烘焙好的分割图，可直接保存，分隔线的宽度和颜色可自定。 |\n| **LC Image Stitch Multi 🖼️🪡** | 从自动增长的槽位把图像并排或叠放拼接，带 match size、align 和可选间隙。 |\n| **LC Image to Total Megapixels 📐** | 把图像缩放到指定的总百万像素数，并输出最终分辨率。 |\n| **LC Image-Mask Resize 📐** | 把图像和/或遮罩缩放到预设、自定义尺寸、倍数或百万像素数，按 divisible_by 的倍数取整。 |\n| **LC Int Compare** | 输出两个整数中较大或较小的那个。 |\n| **LC Int Split** | 在一个小数分割点把总数拆成 a + b，保证 a + b 始终等于总数。 |\n| **LC Invert Boolean** | 把 boolean、int 或 float 转换后输出相反的值。 |\n| **LC Is Bypassed / Muted** | 如果接入的节点被 bypass 或静音，就输出 true，实时读取，无需排队运行。 |\n| **LC Join Strings 🔗** | 用分隔符连接多个字符串，并跳过空的。 |\n| **LC Krea2 Regional Inline Canvas** | 在节点上绘制 RGB 区域，使用 krea2 CLIP 类型得到区域 conditioning。 |\n| **LC Label 🏷️** | 用来给工作流做标注的浮动文字标签，支持字体、颜色、描边和阴影（没有接口）。 |\n| **LC Last Image Holder** | 保留最后生成的图像用于前后对比，即使断开连接后也在。Hold until seed change 会保留某个 seed 的第一张图，用来与调整后的结果比较。 |\n| **LC Lens FX (deprecated)** | 在搜索中隐藏。旧工作流仍能运行它。请改用 Lens Profile、Vignette 和 Film Grain。 |\n| **LC Lens Profile** | 应用或校正指定的镜头配置文件，强度可调。 |\n| **LC Lift Gamma Gain** | 用 lift、gamma、gain 和 offset 为暗部、中间调和高光调色。 |\n| **LC Lighting Control V2 🔦** | 用一两个聚光灯或太阳光、色温、色片以及硬或软投影为图像重新打光。 |\n| **LC Lighting Control 🔦 (deprecated)** | 旧工作流仍然能运行它。请改用 LC Lighting Control V2。 |\n| **LC LoRA Loader Stack 🎚️** | 构建与 LC LoRA Loader 相同的 LoRA 列表，输出为 LORA_STACK。 |\n| **LC LoRA Loader 🎚️** | 在一个节点里应用任意数量的 LoRA，每行都有启用、强度和拖动排序。 |\n| **LC LoRA Loader (single) 🎚️** | 单独一行的 LC LoRA Loader（开/关、文件夹选择器、强度、Info），把 turbo 或风格 LoRA 放在它自己的位置上。只作用于模型，不能添加或删除行。 |\n| **LC Mask Pass** | 让蒙版通过。关闭后，下一个节点在没有蒙版的情况下运行。用它来代替绕过生成蒙版的节点。 |\n| **LC MiniMax H3 Pipe** | 打包或编辑一个 H3 pipe，包含 MiniMax H3 的提示词、参考和设置。 |\n| **LC MiniMax H3 Pipe Out** | 把 LC MiniMax H3 pipe 拆成单独的接口。 |\n| **LC MiniMax H3 Pipe Out V2** | 拆开 H3 pipe V2，另外增加 prompt、steps、cfg、seed、sampler 和 scheduler 输出。 |\n| **LC MiniMax H3 Pipe V2** | 打包或编辑 H3 pipe V2，它还携带 prompt、steps、cfg、seed、sampler 和 scheduler。 |\n| **LC Model Info ℹ️** | 接入任意 MODEL：它会沿着连线向上游追溯（LoRA 加载器、merge、LC Model Optimizer），只读取每个文件的头部。显示保存节点写入的工作流（基础模型、带强度的 LoRA、merge）、Kohya 训练信息和触发词、模型卡字段、GGUF 类型。直接在节点上实时显示，无需排队运行。模型照常通过。 |\n| **LC Model Optimizer (pipe) ⚡** | 与 LC Model Optimizer 相同，另外有 LC_PIPE 输出（model 2 携带 Ideogram 4 的第二个模型）。 |\n| **LC Model Optimizer Video (pipe) ⚡** | 与 LC Model Optimizer Video 相同，另外有 LC_PIPE 输出（vae 2 携带音频 VAE）。 |\n| **LC Model Optimizer Video ⚡** | 视频版：为 MiniMax H3 和 LTX 2.5 / 2.3 加载模型、文本编码器、视频与音频 VAE 以及 latent 放大器。在 H3 上，Spectrum 和 Veda 安装后可以手动打开（spectrum / veda 控件）。 |\n| **LC Model Optimizer ⚡** | 加载适合你显卡的模型、文本编码器和 VAE，并开启它能用的加速。首次运行时下载推荐文件；GGUF 模型通过 calcuis 的 gguf 节点包加载。支持 Krea 2（Turbo 和 Raw）、SDXL、Illustrious、Pony 等，另有 Custom 可用于任何其他模型。MOSS Image 和 Krea 2 内置 Spectrum（用 spectrum 选项关闭）。 |\n| **LC MOSS Layout Prompt 🗺️** | 把这些框变成 MOSS Image 的布局提示词：物体、角色和文字各有自己的说明和调色板，正好放在你画的位置。加入画布（单幅、多格、拼贴）、媒介标签和调色板，并输出画框时的尺寸。 |\n| **LC Mute** (JS only) | 工作方式与 LC Bypasser 相同，但 Off 时是静音链接的节点，而不是 bypass。 |\n| **LC Natural Look 🍃** | 去掉 AI 感：只收回最刺眼的颜色，压住偏橙和塑料感的皮肤，柔化高光，去掉油亮的光泽并提升细微纹理（平滑的皮肤不处理），同时保留你的黑点、对比度和亮度，再加一点点颗粒。 |\n| **LC Negative** | 负面提示词文本框。 |\n| **LC Node Snapshot 📋** | 读取另一个节点的控件，输出选中的值、所有行或 JSON。 |\n| **LC Note 📝** (JS only) | Markdown 笔记，点击后通过 LC Vision 翻译成 ComfyUI 的 14 种语言，并把 @[card](link) 行显示为链接卡片。 |\n| **LC Notify 🔊** | 节点运行时播放选定的声音（总是、队列为空时或从不）。 |\n| **LC Phone Filters 📱** | 37 种手机 App 滤镜预设（1977、Aden、Brooklyn 等），带强度和节点上的擦除对比。 |\n| **LC Photo Style 📷** | 通过风格预设、滑块和强度混合，给图像加上手机相机的观感。 |\n| **LC Pipe (in/edit)** | 把值打包进 LC_PIPE，或把覆盖项合并进已有的 pipe。 |\n| **LC Pipe Combine** | 用第二个 pipe 编辑上面的 pipe：编辑 pipe 携带的内容会覆盖上面的，其余的一并保留。 |\n| **LC Pipe Out** | 把 LC_PIPE 展开成单独的接口，并继续传递 pipe。protect_mask（底部）：pipe detailer 重绘过的区域。 |\n| **LC Preview Image 🖼️** | 预览图像，没有东西进来时安静待着而不是报错。 |\n| **LC Preview Mask 🎭** | 预览遮罩，没有东西进来时安静待着而不是报错。 |\n| **LC Prompt List 🗒️** | 每行一个提示词，以列表输出：每一行各自生成一次。空行和以 // 开头的行会被跳过。可替代 CR Prompt List（输入和输出相同）。 |\n| **LC Prompt to Conditioning + Zero** | 把提示词编码成 conditioning，同时输出一份清零的副本用于负面。 |\n| **LC Reference Latent** | 为 conditioning 附加最多八个参考 latent。串联多个时会累加。 |\n| **LC RTX Super Resolution ⚡** | NVIDIA RTX Video Super Resolution，用于图片或视频帧：最高放大 4 倍，放大干净的源，去噪或去模糊。质量 LOW 到 ULTRA，按倍数或百万像素，可调强度。缺少 nvidia-vfx 时会显示 Install RTX support 按钮。 |\n| **LC Sampler Configure** | 中央双 pass 采样器设置：steps、swap 点、detailer steps、denoise、CFG、sampler 和 scheduler。 |\n| **LC Sampler Configure (pipe)** | 双 pass 采样器设置，带可选的 pipe 输入和 pipe 输出。 |\n| **LC Sampler Configure Pipe Out** | 把 LC_PIPE 拆成 sampler configure 的接口，外加 latent。 |\n| **LC Sampler Configure Simple** | 单 pass 采样器设置，只有一个 CFG，没有 step swap。 |\n| **LC Sampler Configure Simple (pipe)** | 读写 LC_PIPE 的简单采样器设置。 |\n| **LC Sampler Scheduler ⚙️** | 只选一次 sampler 和 scheduler，接到每个 KSampler 上，让它们一起变化。 |\n| **LC Save Image 💾** | 保存带工作流元数据的图像；与 LC Save Metadata 搭配时还会写入 CivitAI 参数。 |\n| **LC Save Metadata 🏷️** | 生成 LC Save Image 写入的元数据（模型、AIR 或 URL、设置）。 |\n| **LC Seed Jump 🌱** | 接收一个 seed 和一个跳跃值，输出该 seed 加上五个连续的跳跃。 |\n| **LC Sharpen Pro** | 消除模糊（反卷积），带纹理与清晰度、光晕控制和皮肤保护（可选来自 LC Skin Master 的 skin_mask）。预设适用于照片、线稿、动漫和插画。 |\n| **LC Show Any 🔤** | 在节点上显示任意值，并原样传递，类型不变。 |\n| **LC Show Text 🔤** | 在节点上显示字符串并继续传递。 |\n| **LC Sigma Curve** | 在节点上绘制自定义 sigma 曲线，保存并重复使用。 |\n| **LC Sigma Resample** | 把 sigma 曲线重新采样到新的步数，同时保持起始和结束 sigma（也注册为 LCChangeStepCount）。 |\n| **LC Sigmas (BETA)** | 单 pass 和双 pass 采样共用的一个 scheduler：sigma 曲线预设（base、beta、flowmatch、hyperbolic、gaussian、你保存的曲线），可通过拖动图表来弯折，另有 step swap、denoise、第二个 pass 的 continue 或 renoise，以及 sigma shift。支持常规和 RES4LYF / ClownShark 采样器名称。 |\n| **LC Size Pad 📐** | 宽 x 高的二维滑块：拖动框的角。模型预设（MiniMax H3、Krea 2、SDXL、LTX、Klein 9B、Wan 2.2）会吸附到该模型的步长，并停在它的百万像素上限；带宽高比锁定和竖/横翻转。 |\n| **LC Skin Beauty ✨** | 在 LAB 中用预设为皮肤降温、提亮和均匀化，保护高光，带可选遮罩。可在 GPU 或 CPU 上运行。 |\n| **LC Skin Master ✨ (BETA)** | 把整条皮肤处理链放进一个节点，基于一张识别人脸的皮肤图：颗粒、毛孔、瑕疵、纹路、雀斑、眼睛、肤色和颜色，每项只处理一次。预设从轻度清理到修复塑料感皮肤，还有沧桑和日晒感。输出皮肤蒙版给 Sharpen Pro 使用。 |\n| **LC Skin Texture ✨ (BETA)** | 用真实皮肤照片（只取其细微起伏，绝不取颜色），给过于光滑的皮肤加上真实的毛孔纹理。可选的 protect_mask 让 detailer 的区域不受影响。 |\n| **LC Skin Upscale** | 用 CNN 模型只放大遮罩内的皮肤区域，并融合回去。可选的 protect_mask 让 detailer 的区域不受影响。 |\n| **LC Slider** | 节点表面的滑块，输出 int 或 float。 |\n| **LC Speed Boost (BETA) 🚀** | 采样快约 2 倍（SDXL / Pony / Illustrious 上约 1.4 倍），质量不变：画面从一半尺寸开始，途中长到完整尺寸。接到高通道（high pass）采样器上。不适用于 MOSS Image。 |\n| **LC Speed Boost 🚀 KSampler (BETA)** | 内置 Speed Boost 的 KSampler。输入相同，另外多了 start / end at step，可以串联到另一个采样器。支持 ClownShark (RES4LYF) 采样器。 |\n| **LC Split Sigma Scheduler** | 为双模型 SamplerCustomAdvanced 在两个模型之间拆分 sigmas。 |\n| **LC Split Sigmas (Advanced)** | 在 swap 步把 sigma 曲线拆成高和低两组。 |\n| **LC Stop 🛑** | 可以启用的队列断点。播放按钮（或 Run）会用相同的种子继续，所以断点上方的一切都来自缓存。 |\n| **LC Text Overlay** | 在图像上绘制文字，位置可拖动，字体大小和颜色可调。 |\n| **LC Text Remove 🔪** | 按顺序从文本中删除最多二十个子字符串。 |\n| **LC Text Replace ✂️** | 对文本执行最多二十组查找替换（可选正则）。 |\n| **LC Timer ⏱️** | 给每次运行计时，并把最新一次与之前 5 次比较打分：更快显示绿色，更慢显示红色。列出最近 10 次运行。被停止的和完全命中缓存的运行不计入。 |\n| **LC Tone Match** | 保留参考图的整体光线和颜色，同时保留图像自身的细节，带可选遮罩。 |\n| **LC Vibrance** | 智能饱和度（vibrance），带可选的普通饱和度和皮肤保护。 |\n| **LC Vignette** | 压暗或提亮图像边缘。 |\n| **LC VRAM Cache Clear** | 一个直通节点，运行时清除 GPU 和模型缓存，即使在后面没有任何东西的独立分支上也能工作。 |\n| **LC Watermark 💧** | 合成一张水印图片，位置通过拖动设置，大小和不透明度实时可调。透明 PNG 通过 watermark_mask 保留透明度。 |\n| **LC Weighted Prompt ⚖️** | 每个词都有权重的提示词框：点一个词，拖动滑块（大于 1 显示绿色和数字，小于 1 显示红色，低于 0 会被去掉）。在框里输入，或把提示词接进来在这里编辑；block（on change、always、never）决定用哪一个。支持 Krea 2（普通、Image Reference Edit、Identity Edit、ControlNet）、MOSS Image、Anima 和 CLIP 模型。 |\n| **LC Widget To String** | 把另一个节点上的控件读取为字符串。 |\n| **LC ✂️ Duplicate Tags 🏷️** | 删除重复的标签，避免权重翻倍（long_hair = (long hair:1.2)）。可选第二个提示词，用来把两者合并并一起清理。 |\n| **LC 🚦** | boolean 的指示灯：true 一种颜色，false 一种颜色（或没有）。颜色在齿轮里设置。 |\n| **Legend Effects 🪄** | 向 Legendaer 致敬：VHS TV、Pixelation、Digital Glitch、Night Vision、Blueprint、Frosted Glass、Gameboy、Edge-Preserving Blur、Morphology 和 Quantize 都在一个节点上。选一种效果，只显示它的设置；带 strength 和节点上的对比拖条。 |\n| **Prompt** | 提示词文本框（原名 LC Positive）。Vision Assistant 会用它替换其他包的文本框，如果文本框接的是负面，则替换成 LC Negative。 |\n| **Prompt to Conditioning** | 把文本提示词编码成 CLIP conditioning。 |\n| **🌱LC Seed** | 一个实用的 seed，其模式在只排队运行这个节点时也能工作。 |\n| **🎨LC Color Palette** | 从预设或图像中挑选 4 到 6 种颜色的色板，用于提示词。 |\n| **🎲LC Wildcard** | 从 wildcard 文本文件中随机选一行。 |\n| **📐 LC Aspect Ratio Simplifier** | 把图像和/或遮罩缩放到目标尺寸，输出图像、遮罩、尺寸、空 latent 和 batch。 |\n| **📐 LC Aspect Ratio Simplifier (pipe)** | 功能与 Aspect Ratio Simplifier 相同，并增加了用于 Get/Set 的 pipe 输出。 |\n| **📝 LC Save Text** | 把一段文本字符串写入输出文件夹中的文件。 |\n| **🗒️LC Camera** | 根据距离和角度预设，为提示词设置相机取景和景深。 |\n| **🗒️LC Lighting** | 根据预设加上你自己的备注，为提示词设置光线风格和方向。 |\n| **🗒️LC Scene Builder** | 根据场景预设和物体构建场景描述。 |\n| **🗒️LC Style Selector** | 为提示词选择风格预设（和质量等级），并添加你自己的备注。 |\n| **🗒️LC Subject** | 用自由文本加上姿势、动作、服装和位置选项，描述提示词的主体。 |\n| **🗒️LC Subject Array** | 把多个主体输出合并成一行。 |\n| **🧩LC Prompt Assembler** | 把提示词构建模块（主体、相机、光线、风格、场景）组装成一个提示词或 JSON。 |\n\n---\n\n## LC AV v0.5.23\n\n[github.com/lonecatone23/ComfyUI_LC_AV_nodes](https://github.com/lonecatone23/ComfyUI_LC_AV_nodes)\n\n| 节点 | 作用 |\n|---|---|\n| **LC Audio Channel 🎚️** | 把立体声拆成左右声道，并把单声道复制到两边。 |\n| **LC Audio Crop ✂️** | 从开始时间到结束时间（MM:SS）裁剪音频。 |\n| **LC Audio Duration ⏱️** | 以秒和分钟、int 和 float 输出音频长度。 |\n| **LC Audio EQ 3-Band 🎛️** | 三段均衡器，包含低架、峰值中频和高架。 |\n| **LC Audio Separate 🎼** | 用 Hybrid Demucs 把音频拆成 Bass、Drums、Other 和 Vocals 分轨。 |\n| **LC Audio Volume 🔊** | 用滑块改变音频音量，增益后做软削波。 |\n| **LC AV Pipe (in/edit) 🎬** | 打包或编辑一个包含视频、音频和设置的 LC_AV_PIPE。 |\n| **LC AV Pipe Out 🎬** | 把 LC_AV_PIPE 拆成各个槽位，并继续传递 av_pipe。 |\n| **LC Create Video 🎬** | 从图像 batch 构建 LC_AV_PIPE（不会编码文件）。 |\n| **LC Final Frame 🖼️** | 输出图像 batch 的最后一帧。 |\n| **LC Frame Interpolate 🎞️** | 用 RIFE 4.26 平滑运动：任意帧率，不只是 2 倍，带进度条。保持硬切不变，并让视频与其声音匹配。 |\n| **LC Get Latent Size 📐** | 读取 latent 的像素宽高，视频 latent 还有 batch 和帧数。 |\n| **LC H3 Audio Sync (BETA) 🎤** | 让 H3 视频按你自己的音轨（一首歌、一句台词）来表演，而不是模型自己编出来的声音。 |\n| **LC H3 Make (BETA) 🎥** | 制作 LC H3 Story 的镜头：在每个镜头的文本外面加上人物、图片和声音，采样并保存（各个 take、下一个镜头开始用的尾段、拼接好的影片）。 |\n| **LC H3 Save to Story (BETA) 🃏** | 把图片直接放到对应的 Story 卡片或镜头的起始 / 结束帧上。角色、服装和道具图片会被抠到纯灰背景上。 |\n| **LC H3 Shot Card (BETA) 🎞️** | 用任何图像模型做分镜帧：一个镜头的起始或结束帧作为提示词，加上它的走位框、背景和角色图片。 |\n| **LC H3 Story (BETA) 🎬** | 整部影片都在一个节点上：角色、服装、场景、道具和镜头，每个镜头的文本可以阅读和修改，渲染前会提醒你问题。故事板可以重做或修复单个镜头，并标出被改动弄坏的镜头。 |\n| **LC H3 Story Card Prompt (BETA) 📝** | 把 Story 的角色、服装、场景或道具卡片变成提示词和空 latent，给任何图像模型使用，让卡片有自己的图片。 |\n| **LC H3 Ultimate Upscale (BETA) 🔭** | 把 MMH3 Ultimate Upscale 做进一个节点，用于普通的 MiniMax H3 工作流：H3 latent 放大器加上轻量的分块 H3 处理。 |\n| **LC H3 Upscale (BETA) 🔭** | 剪辑定稿后，每次运行从保存的 latent 放大一个长视频片段。 |\n| **LC Load Audio 📂** | 从 input 文件夹加载音频，带起止裁剪和预览播放器。 |\n| **LC Load Video 🎞️** | 原样加载视频：每一帧保持原尺寸，带声音和原帧率。不缩放，不跳帧。 |\n| **LC Pipe → AV Pipe 🔌** | 把 LC_PIPE 或 MiniMax H3 pipe 转换成 LC_AV_PIPE，只复制共有的字段。 |\n| **LC Preview Video 📺** | 在节点上播放视频，可以是文件，也可以是带声音的一批帧。不会保存到你的输出文件夹。 |\n| **LC Save Video Metadata 🏷️** | 生成与 LC Save Metadata 相同的元数据，供 LC Save Image 或 LC Save Video 使用。 |\n| **LC Save Video 💾** | 以 Video Combine 风格的选项保存视频（帧率、循环、格式、pingpong、crf、pix_fmt、音频）。relay 输入接收 LC Relay VSR Upscale 的视频，一次几帧地保存（5 秒 4x：内存 0.3 GB，而不是 12 GB）；旁路 Relay 时改为保存 images。颜色与 VHS 一致（BT.709）；没有 SVT-AV1 也能用 AV1。 |\n| **LC VAE Decode 🧩** | 一个可以在完整解码和分块解码之间切换的 VAE Decode。 |\n\n---\n\n## LC MaskMaker v0.29.15\n\n[github.com/lonecatone23/ComfyUI_LC_MaskMaker_nodes](https://github.com/lonecatone23/ComfyUI_LC_MaskMaker_nodes)\n\n| 节点 | 作用 |\n|---|---|\n| **LC 360 View 🧭** | 从 360 全景图中取出平面相机视角：在节点上拖动来瞄准，按 名称: yaw, pitch, fov 列出视角，一次得到整批。一张全景图让一个场景的每个镜头都在同一个房间里。 |\n| **LC Auto Adjust 🔆** | 一键自动色阶（按通道、亮度、饱和度或单色），带微调、强度混合和可选遮罩。 |\n| **LC Character Detailer (BETA) 🩹** | 针对单个角色的 LC Smart Detailer：SAM 3 找出所有匹配，然后只重绘你选中的那一个（从左到右、最大的，或 LC Bounding Boxes 框里的那个）。给每个角色单独的 LoRA 分支和 detailer，这样角色 LoRA 就不会渗到其他脸上。 |\n| **LC Character Detailer (pipe) (BETA) 🩹** | 同上，但模型、VAE 和采样器设置来自 LC pipe。接入的模型会覆盖 pipe 里的模型。 |\n| **LC Create Mask 🖼️✏️** | 直接在节点上用点或自由铅笔绘制遮罩，内置羽化、反转和不透明度。 |\n| **LC Depth Anything V2 🌊** | 生成 Depth Anything V2 深度图（亮 = 近），输出为图像和遮罩。模型列表在每台机器上显示一致。 |\n| **LC Detail Finder (BETA) 🎯** | 每个角色一个 detailer，第 1 步：SAM 3 一次找出所有匹配（每张脸）。用 face, hair 时，每张脸都会得到自己的头发。 |\n| **LC Detail Sorter (BETA) 🔢** | 第 2 步：把 SAM 3 的蒙版排好顺序（从左到右、从右到左、从上到下、最大优先），拆成 1 到 8 号输出，并在预览上标号。 |\n| **LC Detailer For Each (BETA) 🩹** | 第 3 步，每个角色一个：用这个人自己的 LoRA 分支、conditioning 提示词和种子重绘他。可以单独使用，也可以接在 LC pipe 上；接入的任何东西都优先于 pipe。与 LC Smart Detailer 使用同一个引擎。 |\n| **LC Face Crop 📐** | 裁剪成指定格式并把人脸摆放得当，而不是盲目居中裁剪，使用 Aspect Ratio Simplifier 的预设。取景从最宽到仅脸部。 |\n| **LC Image Blend Advance 🎚️** | 把图层放在背景上（位置、缩放、旋转、镜像），并通过可选遮罩用 29 种混合模式混合。 |\n| **LC Outpaint, Rotate, & Pad 🔄** | 在节点上拖动来旋转、裁剪和填充图片，带竖/横翻转。mask 覆盖填充区域和旋转后露出的角。max_megapixels 会把画面限制在该尺寸。 |\n| **LC Krea2 AnyPaint 🩹** | 使用 AnyPaint LoRA 的 Krea 2 局部重绘和外绘。遮罩之外的一切完全原样返回，接缝消失。 |\n| **LC Z-Image AnyPaint 🩹** | Z-Image（Turbo / Base）的同款局部重绘和外绘，由 Z-Image Fun ControlNet Union 2.1 补丁绘制，而不是 LoRA。遮罩之外的一切完全原样返回。 |\n| **LC SDXL AnyPaint 🩹** | 适用于任何 SDXL checkpoint（SDXL、Pony、Illustrious）的同款局部重绘和外绘，由 ControlNet Union ProMax 绘制，Fooocus inpaint 可选。不需要 LoRA。 |\n| **LC Flux 3 Klein AnyPaint 🩹** | 针对 Flux 3 Klein 的同款 inpaint 和 outpaint，在编辑模式下配合 AusBoss 的 Outpaint LoRA 绘制：区域被填成灰色，由模型来填充，而你的画面保持不动。 |\n| **LC MOSS Box Edit 🖌️ (BETA)** | 用 LC Bounding Boxes 在图片上画框，MOSS Image 只重绘这些框，绘制时能看到整张图；框外的一切逐像素保持不变。可以换衣服、加一个角色或一块招牌，或者把东西去掉。 |\n| **LC MOSS Control 🕹️** | MOSS Image 的 ControlNet：画面跟随深度图（姿势、形状）和/或颜色区域图，各自有结束点。运行 darask0 的 Color-Depth Control 适配器。 |\n| **LC Mask Refine ✨** | 用 trimap 收紧遮罩，只在边缘带上使用 guided filter 或 VITMatte，带前后擦除对比。 |\n| **LC Normal Map (BAE) 🗺️** | 生成 BAE 表面法线图（RGB = XYZ），与 ControlNet 的 normal_bae 风格相同。 |\n| **LC Outpaint 🖌️➕** | 在节点上向外拖动画布边缘，构建灰色画布和新增区域的 mask。max_megapixels 会把边缘限制在该尺寸。 |\n| **LC Person Mask 🧍** | 用 Segformer 或 MediaPipe 选取人物的各个部分（脸、头发、身体、衣服、配饰、背景）。remove_features 会生成仅皮肤的遮罩。 |\n| **LC Relay VSR Upscale 🧩** | 一个节点搞定 RelayVSR 放大：内置模型、VAE 和采样器，首次使用时下载。2x 或 4x，经过柔化，头发和边缘保持自然（不会有描黑的睫毛、光晕或偏色）。source：video 让帧与帧对齐保持稳定，image 让每张图片单独放大。在 8 GB 显卡上 VRAM 保持平稳（RTX 5060 笔记本上 5 秒片段 4x 约 104 秒）。需要 ComfyUI nightly（2026 年 11 月 5 日起）或下一个稳定版。它的 relay 输出接到 LC Save Video，一次几帧地保存视频，不会占满内存。detect_faces（开）会自己找脸，不让 Relay 的颗粒落在脸上（图片上不额外耗时，视频每 3 帧找一次）；接了 protect_mask 时以它为准。upscale 还有 2x / 4x bf16（10 GB），即原始版本：输出几乎一样，多用约 5 GB 显存。 |\n| **LC Remove Background ✂️** | 用 BiRefNet 去除背景，输出 RGBA 抠图、遮罩，以及纯色背景上的主体。 |\n| **LC Segment Anything 🎯** | 通过描述来选取对象，使用 GroundingDINO + SAM 或 SAM 3，带可选的边缘精修。 |\n| **LC Smart Detailer 🩹** | 取代 SEGS / Impact 的 detailer。用 SAM 3 找到你输入的东西（手、脸、眼睛），在各自放大的裁剪区域里重绘，然后融合回去。 |\n| **LC Smart Detailer (pipe) 🩹** | 同上，模型、VAE 和采样器设置来自 LC pipe。接入的模型或 VAE 会覆盖 pipe 里的。 |\n| **LC Touch Mask (BETA) 👆** | 精确地给一样东西做蒙版：圈住它，SAM 3 就会找到它的边缘。点一下扩展到下一个更大的东西（脸、脸 + 头发、头、整个人），双击退回一步。Ctrl + 画 用来剪掉。内置阈值、平滑和精细的边缘处理。 |\n| **LC VOSR2 Upscale 🧩** | 内置 VOSR 2.0 的快速低显存放大：在不重绘画面的情况下锐化并增加细微细节。一次 1.5x 到 4x，两次可到 6x 和 8x。 |\n| **LC VOSR2 Upscale (pipe) 🧩** | 同上，用于 LC pipe，放在 pipe detailer 之后。把 detailer 的区域带到新尺寸（protected 输出），供 LC Skin Upscale / LC Skin Texture 使用。 |\n\n---\n\n## LC Vision v1.6.28\n\n[github.com/lonecatone23/ComfyUI_LC_Vision_nodes](https://github.com/lonecatone23/ComfyUI_LC_Vision_nodes)\n\n| 节点 | 作用 |\n|---|---|\n| **LC Vision Showrunner (BETA) 🎬** | 把长 MiniMax H3 视频规划为 CUT / CONTINUE 片段，根据上一段实际的结尾修正每处衔接，并保存 / 加载项目文件（镜头列表、参考、设置）。 |\n| **LC Vision Reviewer 🕵️ (BETA)** | 质量关卡：对手、脸、文字、伪影、提示词匹配以及你自己的问题做是/否检查。标记不合格的渲染，或阻止它后面的一切。 |\n| **LC Vision Shot List (BETA) 📋** | 给 Showrunner 的故事，像表单一样填写：场景、角色，以及每个镜头一行。会建议片段数量，并对相对镜头而言过长的台词发出警告。不涉及 AI。 |\n| **LC Vision Storyboard Builder (BETA) 🎞️** | 为 Showrunner 电影准备图片：找出项目还缺什么（人脸、地点、锚点），为每张图生成一个提示词、latent 和种子，交给采样器。 |\n| **LC Vision Storyboard Save (BETA) 🎞️** | 把 Storyboard Builder 的图片存进项目。在 Showrunner 上点 📂 Load 会把它们加入 Reference Assembler。 |\n| **LC Vision Storyboard Sheet (BETA) 🎞️** | 节点上的分镜板：每张图一张卡片。✅ Use 把它放进 Reference Assembler，↻ 重新生成，✎ 修改它的提示词。不需要连线。 |\n| **LC Vision Redirect (BETA) 🔬** | 为旧工作流保留：LC Vision Showrunner 现在自己就能修正衔接。 |\n| **LC Vision Danbooru Caption 🏷️** | 根据一张图或一个粗略的想法，为 SDXL、Pony 和 Illustrious 生成提示词：简短或详细的描述、真实的 Danbooru 标签，或一句话加标签。可选质量标签和匹配的负面提示词。 |\n| **LC Vision Caption 📝** | 用已加载的 LC Vision 模型、一条指令、最多三张参考图和一段参考视频生成文本。 |\n| **LC Vision Loader 🔬** | 加载 Qwen-VL GGUF 模型及其视觉投影。keep_model_loaded 关闭时，Vision 节点用完后会卸载它，让图像模型独占整张显卡。 |\n| **LC Vision Moviemaker 🎥** | 一次调用把视频规划成若干连续片段，每段都写成一个独立完整的 MiniMax H3 提示词。 |\n| **LC Vision Prompt Enhancer 📝** | 通过 LC Vision 模型、用预设指令改写提示词（仅文本）。把 LC MOSS Layout Prompt 接进来，它会增强场景和框，框保持不变。 |\n\n---\n\n## LC ModelBuilder v0.7.5\n\n[github.com/lonecatone23/ComfyUI_LC_ModelBuilder_nodes](https://github.com/lonecatone23/ComfyUI_LC_ModelBuilder_nodes)\n\n| 节点 | 作用 |\n|---|---|\n| **LC Anima Block Merge Advanced** | Anima 版的 Krea2 Block Merge Advanced：一条覆盖 28 个 block 的曲线，外加 x embedder、timestep embedder 和 norm、LLM adapter 以及 final layer 的滑块。带预设。 |\n| **LC Anima LoRA Block Scan** | Anima 版的 Krea2 LoRA Block Scan，用 CCIP 给动漫人脸打分。 |\n| **LC Anima LoRA Editor** | Anima 版的 Krea2 LoRA Editor：控件相同，换成 Anima 的 28 个 block 和层类型。 |\n| **LC Anima LoRA Merge** | Anima 版的 Krea2 LoRA Merge：两到四个 Anima LoRA，按 block 设置 A / B 曲线。 |\n| **LC Checkpoint Save** | 保存一体式 checkpoint（model、clip、vae），带 enabled 开关可跳过保存。metadata：保留全部，或仅保留必要信息（不含工作流或训练细节）。 |\n| **LC Diffusion Model Save** | 只保存 diffusion 模型，不含 clip 或 vae。同样的 metadata 开关。 |\n| **LC Face Variety Scorer 🧑‍🤝‍🧑** | 给一批图像里的人脸有多相似打分（0 到 1，越低 = 越多样），并为合照给出人群得分。有真人照片（ArcFace）或动漫（CCIP）模式。 |\n| **LC Fingerprint Identify 🔎** | 这个模型是由什么构成的？根据你的指纹库给出它的配方，逐 block 分析：合并了哪些模型、比例多少，融入的 LoRA 及其强度，对每一项有多大把握，还有热力图。它只能说出库里有的东西。 |\n| **LC Fingerprint Library 📚** | 遍历你的文件夹，为每个模型和 LoRA 保存一个小小的指纹（约 1 MB）及其所属家族。文件入库之后，原文件就可以删除。重新运行只会添加新的。 |\n| **LC Krea2 Block Merge Advanced** | 合并 Krea2 checkpoint，在 28 个 block 上有可拖动的逐 block 比例曲线，另有命名区域的滑块。 |\n| **LC Krea2 LoRA Block Scan** | 通过逐个关闭 block 组，找出 LoRA 在哪里锁定了人脸或改变了整张图，并为 Editor 推荐 block 曲线。 |\n| **LC Krea2 LoRA Editor** | 加载 Krea 2 LoRA，可对 28 个 block 逐个调高或调低，分别缩放 attention 和 MLP，并柔化尖峰。 |\n| **LC Krea2 LoRA Merge** | 用逐 block 的 A / B 曲线（sum 或 TIES）合并两到四个 Krea 2 LoRA。 |\n| **LC Krea2 Semantic Vector Tuner** | 放大或衰减单个 Krea2 checkpoint 权重的特定区域（不是合并）。 |\n| **LC LoRA Bake 🍞** | 把最多 4 个 LoRA 烘焙进模型文件，另存为新模型，可选按 block 的曲线。能读取 ComfyUI 支持的所有 LoRA 格式，并把配方写进文件。在 CPU 上运行，不需要显存。 |\n| **LC LoRA Extract** | 把 finetune 变成 LoRA（finetune 减去它的 base）：所有层、仅 block 或自定义 block 列表。未改变的层会被排除。 |\n| **LC LoRA Save** | 把编辑或合并后的 LoRA 保存为标准文件，所有编辑都已烘焙进去，可选新的 rank，带 enabled 和 embed_workflow 开关。 |\n| **LC Model Fingerprint 🔍** | 从权重本身出发，逐层比较一个模型与一个参考：是另一种精度的同一模型、基于它构建的、block merge（图表显示是哪些 block）还是无关。对 LoRA：它是否被合并进去，以及大约的强度。 |\n| **LC Model Merge (any precision)** | 合并以不同精度存储的两个模型（bf16 与 fp8、int8、nvfp4 或 GGUF，顺序不限）。结果保持全精度。 |\n| **LC Model Quantize 🗜️** | 保存模型的较小副本：fp8、mxfp8、nvfp4、int8 或 int4（用原生加载器加载）或 GGUF Q8_0 到 Q2_K。可来自接入的 MODEL（已烘焙 LoRA），或直接来自任意大小的文件。 |\n| **LC MOSS Block Merge Advanced** | 合并 MOSS Image 模型，用可拖动的逐层比例曲线覆盖 42 层，外加层外部分（图像输入、提示词输入、timestep、modulation、final layer）的滑块。预设可保存和加载。 |\n| **LC Scoreboard 🏆** | A / B 测试的对决计数器：#1 Win、Tie 和 #2 Win 按钮，领先者和百分比显示在节点上。 |\n| **LC Strip Metadata 🧹** | 清除你已保存模型里的元数据（内嵌工作流、训练细节、标题）。权重逐字节复制，从不加载，所以加载效果和之前完全一样。写出 _clean 副本，或替换原文件。 |\n| **LC VAE Compare** | 用最多六个 VAE 解码相同的 latent，并排显示 1:1 细节裁剪、锐度数值，以及每个与第一个的差距。 |\n| **LC VAE Merge** | 合并同一家族的两个 VAE 的解码器，从粗略形状到精细质感。编码器仍是 base 的，所以结果依然适配为它制作的模型。 |\n| **LC VAE Save** | 以 fp32、bf16 或 fp16 把 VAE 保存到 models/vae。 |\n\n---\n\"True Nothing is. Permitted Everything is\"- Yoda Auditore, Assassin's Wars",
              "src": "2be366c1",
              "srcTitle": "Total Nodes (Busy work)"
            },
            "ja": {
              "text": "# ノード総数\n\n5つのパックで **257ノード**。非推奨のノードは一覧に載っていますが、数には含まれません。\n\n| パック | ノード数 | バージョン | リンク |\n|---|---|---|---|\n| LC123 | 162 | v1.56.6 | [リポジトリ](https://github.com/lonecatone23/ComfyUI_LC123_nodes) |\n| LC AV | 27 | v0.5.23 | [リポジトリ](https://github.com/lonecatone23/ComfyUI_LC_AV_nodes) |\n| LC MaskMaker | 30 | v0.29.15 | [リポジトリ](https://github.com/lonecatone23/ComfyUI_LC_MaskMaker_nodes) |\n| LC Vision | 12 | v1.6.28 | [リポジトリ](https://github.com/lonecatone23/ComfyUI_LC_Vision_nodes) |\n| LC ModelBuilder | 26 | v0.7.5 | [リポジトリ](https://github.com/lonecatone23/ComfyUI_LC_ModelBuilder_nodes) |\n\n---\n\n## LC123 v1.56.6\n\n[github.com/lonecatone23/ComfyUI_LC123_nodes](https://github.com/lonecatone23/ComfyUI_LC123_nodes)\n\n| ノード | 機能 |\n|---|---|\n| **CivitAI 🚩🔪** | コンプライアンスリストを使って、プロンプトからフラグ付きの用語を取り除きます。あくまで補助です（CivitAI の規約に対する責任はあなたにあります）。オンにするまではオフです。 |\n| **LC Advanced Folder 📂** | Image Saver 系ノード向けに、ファイル名とパスを別々に出力します。prefix-in-path とタイムスタンプも任意で使えます。 |\n| **LC Anima Box Prompt 🔲** | Anima の領域プロンプト：LC Bounding Boxes でボックスを描き、各ボックスを普通のプロンプトのように書きます。メインのプロンプトはシーンです。左 / 右の言葉は不要。モデルとサンプラーの間につなぎます。Anima Regional Conditioning が必要で、Regional LLLite パッチは初回使用時にダウンロードされます。 |\n| **LC Anima Regional Inline Canvas** | ノード上で RGB の領域を塗ると、領域ごとに別々の conditioning とマスクが得られます。Anima の regional prompting 用です。 |\n| **LC Any Empty Bool** | 接続された入力のどれかが空、ミュート、またはバイパスされていれば true を出力します。 |\n| **LC Any Empty Float** | Any Empty Bool と同じ空判定を行い、空の float と空でない float を出力します。 |\n| **LC Any Empty Int** | Any Empty Bool と同じ空判定を行い、空の整数と空でない整数を出力します。 |\n| **LC Any Index Switch** | 選んだインデックスの入力を通し、ほかのスロットは無視します。 |\n| **LC AnySwitch** | 2〜20個の入力のうち最初に接続されたものを選び、その型にロックします。 |\n| **LC Apply LoRA Stack 🎚️** | LC LoRA Loader Stack（または任意のパック）の LORA_STACK を、model や clip に適用します。 |\n| **LC Apply LUT** | models/luts の .cube 3D LUT を、0〜2 の strength で適用します。デフォルトは LC Crushed Blacks の 0.3 です。 |\n| **LC Aspect Ratio Pipe (In/Edit)** | 画像、マスク、サイズ、latent、バッチ、解像度を LC_PIPE にまとめるか、既存のものを編集します。接続したソケットだけが上書きされます。 |\n| **LC Aspect Ratio Pipe Out** | LC_PIPE のアスペクト比のフィールドを個別のソケットに展開し、pipe はそのまま渡します。 |\n| **LC Auto White Balance** | アルゴリズムを選んで、ホワイトバランスを自動補正します。strength のブレンドと before/after ワイプ付き。 |\n| **LC Basic Scheduler** | 全ステップ数ぶんの sigmas（denoise なし）を出力します。デュアルパスのサンプリングで LC Split Sigmas (Advanced) に渡すためのものです。 |\n| **LC Batch Image 🖼️** | 自動で増えるスロットから画像をバッチ化します。ミュートされたものや欠けているものは無視し、後の画像は最初の画像に合わせてリサイズします。 |\n| **LC Bloom** | 明るい部分から光のにじみを加えます。Bloom、Pro-Mist（ディフュージョンフィルター）、Halation（フィルムのエッジの光）の各モードがあります。 |\n| **LC Boolean** | boolean、int、float をきれいな true/false に変換し、ノード上に表示します。 |\n| **LC Boolean Flip** | トグルの反対を出力します。 |\n| **LC Boolean Switch** | boolean に基づいて、on_true か on_false の入力（任意の型）を選びます。 |\n| **LC Boolean Value** | どこにでも接続できる、シンプルな boolean トグルです。 |\n| **LC Bounding Boxes 🔲** | Flux 3 や MOSS Image 用に画像の上にボックスを描きます。ボックスごとに名前を付け、新規・変更・移動・削除を選んで、結果を説明します。MOSS ではボックスをキャラクターにして、専用のパレットを持たせることもできます。クラシックと Nodes 2.0 の両方で動きます。 |\n| **LC Bypass Relay** | 左側のノードを集めて、ハブが OPT_CONNECTION 経由でそれらをまとめてミュートまたはバイパスできるようにします。 |\n| **LC Bypasser Panel** (JS only) | LC Bypasser、LC Mute、LC Groups Bypasser 用の、ウィジェットだけのリモコンです。 |\n| **LC Bypasser** (JS only) | 1か所から、リンクされたノードをトグルまたは BOOLEAN 入力でバイパスします。 |\n| **LC Chromatic Aberration** | RGB チャンネルをずらして、レンズの色収差を疑似的に再現します。チャンネルごとにピクセル量と方向を設定できます。 |\n| **LC Color Match 🎨** | 画像の色をリファレンスに合わせます（AdaIN / mean-std）。肌の保護とマスクも任意で使えます。 |\n| **LC Combo Selector** | 他のノードの combo（sampler、scheduler など）に接続すると、そのオプションをミラーするドロップダウンです。 |\n| **LC Control Panel 🎛️** | 1つのノードに最大16個のスライダーとオン/オフスイッチをまとめ、それぞれが専用の出力を持ちます。行の歯車で、タイプ(数値か boolean)、名前、範囲、ステップ、INT か FLOAT を設定します。数値や boolean の入力につないだ新しい行は、その入力の設定をコピーします。 |\n| **LC Custom Combo** | 自分だけの選択肢リストを作り、選んだテキストとそのインデックスを出力します。 |\n| **LC Custom Combo Panel** | 別の場所から LC Custom Combo の選択を切り替えるリモコンです。 |\n| **LC Denoise 💉** | サンプラーに渡すのと同じ denoise を使って、1 から denoise を引いた値でスケールした latent ノイズを注入します。 |\n| **LC Depth FX 🌫️** | depth map を使って、大気のもや、ライトラップ、本物のボケ付きの被写界深度を作ります。共通のルックも使えます。 |\n| **LC Detail Daemon (BETA)** | 元の Detail Daemon のスケジュールに沿って、ステップの一部の区間でモデルからノイズを少し隠すことで、細かいディテールを加えます。Look only（デフォルト）、classic、keep structure のモードがあります。サンプラー版です。low pass サンプラーに接続します。 |\n| **LC Detail Daemon (model) (BETA)** | 同じ Detail Daemon を model patch にしたものです。通常の KSampler 用です。 |\n| **LC Detail Pipe Out** | LC_PIPE から detailer の設定（モデル、プロンプト、seed、cfg、sampler、scheduler、steps）を展開します。protect_mask（一番下）: pipe detailer が描き直したエリア。 |\n| **LC Dimension Resize 📐** | width と height に対して、1つの値で加算、減算、乗算、除算を行い、結果を整数に丸めます。 |\n| **LC Directional Blur** | 1つの角度と長さに沿ったモーションブラーです。ノード上の矢印をドラッグして設定します。 |\n| **LC Dynamic Overlay** | 画像 B を画像 A に重ね、1回実行したあとは再生成せずに、ノード上で不透明度を調整できます。 |\n| **LC Easy Folder 📂** | ネイティブの Save Image ノード用に filename_prefix を作り、フォルダも作成します。 |\n| **LC Film Grain** | フィルムグレインを加えます。amount、contrast、size、モノ/カラーのオプション付き。 |\n| **LC Film Grain (Video) 🎞️** | クリップ全体に同じグレインを適用します。GPU で数フレームずつ処理し、プログレスバーが出ます。グレインは動画のサイズに合わせてあるので、圧縮にも耐えます。 |\n| **LC Film Stock (B&W)** | プリセットから白黒フィルムの見た目にします。strength のブレンド付き。 |\n| **LC Film Stock (Color)** | プリセット（toe、shoulder、gamma）からカラーフィルムの見た目にします。strength のブレンド付き。 |\n| **LC Float Compare** | 2つの float の大きいほう、または小さいほうを出力します。 |\n| **LC Flux 3 Layout Prompt 🗺️** | Flux 3 のプロンプトに、モデルが学習した形式の表としてボックスを追加します。プロンプトに <1>、<2> と書くと、ボックス1、ボックス2を指します。 |\n| **LC Flux 3 Reference Latent 🖼️** | Flux 3 用に、positive と negative に最大4枚のリファレンス画像を渡します。モデルが必要とする negative と latent サイズも出力します。 |\n| **LC Get Image 📐** | 画像の width、height、メガピクセル、長辺、バッチサイズ、アスペクト比を読み取ります。 |\n| **LC Groups Bypasser** (JS only) | 1か所から、グループ全体をバイパスします。グループごとに1つのトグルがあります。 |\n| **LC Image Adjust** | 基本的なカラーグレーディング（hue、saturation、brightness、contrast）と、軽いシャープ/ソフト化。 |\n| **LC Image Batch From Folder 📂** | フォルダ全体を、アルファベット順の1つのバッチとして読み込みます。max_images と start_index 付き。 |\n| **LC Image Compare 🔎** | 大量の画像バッチを、コンパクトなドロップダウンと安定した画像エリアで比較します。 |\n| **LC Image Crop 🖼️🔪** | ノード上のボックスとハンドルをドラッグしてクロップします。アスペクト比のロックも任意で使えます。 |\n| **LC Image Denoise** | blur strength、エッジ保持、ブレンド付きのスマートなデノイズです。 |\n| **LC Image Desaturate** | factor と輝度の方式を使って、グレースケールに向けて彩度を落とします。 |\n| **LC Image Grid 🖼️** | 画像のバッチをグリッドに配置します。gap、アウトライン、ボーダーは任意です。 |\n| **LC Image Label** | ワークフローに注釈をつけるための浮動画像ステッカーです。ドラッグ＆ドロップでアップロードできます（ソケットなし）。 |\n| **LC Image Pass** | 画像をそのまま通します。オフにすると、次のノードはその入力に何も受け取らず、それなしで実行されます。 |\n| **LC Image Ref Pipe In 🖼️** | 最大16枚のリファレンス画像を1つの pipe にまとめます。ソケットは Text Encode Qwen Image 2.1 のように増えます。 |\n| **LC Image Ref Pipe Out 🖼️** | image ref pipe を、元のスロットの image_1〜image_16 に展開します。pipe が先です。 |\n| **LC Image RGB** | 各カラーチャンネルを別々にオフセットします。全体の strength 付き。 |\n| **LC Image Split 🖼️** | ノード上のビフォー/アフターのワイプで、出力は保存用に焼き込んだ分割画像です。仕切り線の幅と色は自由に決められます。 |\n| **LC Image Stitch Multi 🖼️🪡** | 自動で増えるスロットから、画像を横または縦に並べて結合します。match size、align、gap は任意です。 |\n| **LC Image to Total Megapixels 📐** | 画像を合計メガピクセル数にスケールし、結果の解像度を出力します。 |\n| **LC Image-Mask Resize 📐** | 画像やマスクを、プリセット、カスタムサイズ、倍率、メガピクセル数のいずれかにリサイズします。サイズは divisible_by の倍数になります。 |\n| **LC Int Compare** | 2つの整数の大きいほう、または小さいほうを出力します。 |\n| **LC Int Split** | 合計を小数の分割点で a + b に分割します。a + b は常に合計と一致します。 |\n| **LC Invert Boolean** | boolean、int、float を boolean に変換し、反対を出力します。 |\n| **LC Is Bypassed / Muted** | 接続されたノードがバイパスまたはミュートされていれば true を出力します。キューに入れなくても、リアルタイムで読み取ります。 |\n| **LC Join Strings 🔗** | 複数の文字列を区切り文字で連結し、空のものはスキップします。 |\n| **LC Krea2 Regional Inline Canvas** | ノード上で RGB の領域を塗り、krea2 の CLIP タイプを使って regional conditioning を得ます。 |\n| **LC Label 🏷️** | ワークフローに注釈をつけるための浮動テキストラベルです。フォント、色、アウトライン、影が使えます（ソケットなし）。 |\n| **LC Last Image Holder** | 最後に生成した画像を保持し、接続を外した後でも before/after の比較に使えます。Hold until seed change は、シードの最初の画像を保持して、調整との比較に使えます。 |\n| **LC Lens FX (deprecated)** | 検索から非表示になっています。古いワークフローでは引き続き動作します。代わりに Lens Profile、Vignette、Film Grain を使ってください。 |\n| **LC Lens Profile** | 名前付きのレンズプロファイルを、強度を調整して適用または補正します。 |\n| **LC Lift Gamma Gain** | lift、gamma、gain、offset で、シャドウ、中間調、ハイライトをグレーディングします。 |\n| **LC Lighting Control V2 🔦** | 1〜2個のスポットまたはサンライトで画像をリライトします。暖かさ、カラージェル、ハード/ソフトな投影影に対応しています。 |\n| **LC Lighting Control 🔦 (deprecated)** | 古いワークフローは引き続き動作します。代わりに LC Lighting Control V2 を使ってください。 |\n| **LC LoRA Loader Stack 🎚️** | LC LoRA Loader と同じ LoRA リストを作り、LORA_STACK として出力します。 |\n| **LC LoRA Loader 🎚️** | 1つのノードで、任意の数の LoRA を適用します。行ごとに有効化、strength、ドラッグでの並べ替えができます。 |\n| **LC LoRA Loader (single) 🎚️** | LC LoRA Loader の 1 行分（オン/オフ、フォルダーピッカー、強度、Info）で、turbo やスタイルの LoRA を専用の場所に置けます。モデルのみで、行の追加や削除はありません。 |\n| **LC Mask Pass** | マスクをそのまま通します。オフにすると、次のノードはマスクなしで実行されます。マスクを作るノードをバイパスする代わりに使ってください。 |\n| **LC MiniMax H3 Pipe** | MiniMax H3 用のプロンプト、リファレンス、設定を保持する H3 pipe をまとめる、または編集します。 |\n| **LC MiniMax H3 Pipe Out** | LC MiniMax H3 pipe を個別のソケットに展開します。 |\n| **LC MiniMax H3 Pipe Out V2** | H3 pipe V2 を展開します。prompt、steps、cfg、seed、sampler、scheduler の出力が加わっています。 |\n| **LC MiniMax H3 Pipe V2** | prompt、steps、cfg、seed、sampler、scheduler も運ぶ H3 pipe V2 をまとめる、または編集します。 |\n| **LC Model Info ℹ️** | 任意の MODEL をつなぐと、ワイヤーを上流にたどり(LoRA ローダー、マージ、LC Model Optimizer)、各ファイルのヘッダーだけを読みます。保存ノードが焼き込んだワークフロー(ベースモデル、strength 付きの LoRA、マージ)、Kohya の学習情報とトリガータグ、カードのフィールド、GGUF のタイプを表示します。ノード上でライブに表示され、キューに入れる必要はありません。モデルはそのまま通過します。 |\n| **LC Model Optimizer (pipe) ⚡** | LC Model Optimizer と同じで、さらに LC_PIPE 出力があります（model 2 は Ideogram 4 の2つ目のモデルを運びます）。 |\n| **LC Model Optimizer Video (pipe) ⚡** | LC Model Optimizer Video と同じで、さらに LC_PIPE 出力があります（vae 2 は音声 VAE を運びます）。 |\n| **LC Model Optimizer Video ⚡** | ビデオ版です。MiniMax H3 と LTX 2.5 / 2.3 向けに、モデル、テキストエンコーダー、ビデオとオーディオの VAE、latent アップスケーラーを読み込みます。H3 では、Spectrum と Veda がインストールされていればオンにできます（spectrum / veda ウィジェット）。 |\n| **LC Model Optimizer ⚡** | カードに合ったモデル、テキストエンコーダー、VAE を、そのカードで効く高速化と一緒に読み込みます。初回実行時におすすめのファイルをダウンロードします。GGUF モデルは calcuis の gguf パックで読み込みます。Krea 2（Turbo と Raw）、SDXL、Illustrious、Pony などに対応し、ほかのモデルには Custom があります。MOSS Image と Krea 2 は Spectrum を内蔵（spectrum ウィジェットでオフ）。 |\n| **LC MOSS Layout Prompt 🗺️** | ボックスを MOSS Image のレイアウトプロンプトに変えます。オブジェクト、キャラクター、テキストがそれぞれのキャプションとパレットを持ち、描いた場所にそのまま配置されます。キャンバス（シングル、マルチパネル、コラージュ）、メディウムタグとパレットを加え、ボックスを描いたときのサイズを出力します。 |\n| **LC Mute** (JS only) | LC Bypasser と同じように動作しますが、Off にするとリンクされたノードをバイパスではなくミュートします。 |\n| **LC Natural Look 🍃** | AI っぽさを取り除きます。いちばん派手な色だけを抑え、オレンジがかった肌やプラスチックのような肌を落ち着かせ、ハイライトをなめらかに落とし、テカテカした光沢を消して細かな質感を引き出します（のっぺりした肌は対象外）。黒の締まり、コントラスト、明るさはそのままで、ほんの少しグレインを加えます。 |\n| **LC Negative** | negative プロンプトのテキストボックスです。 |\n| **LC Node Snapshot 📋** | 他のノードのウィジェットを読み取り、選択した値、全行、または JSON を出力します。 |\n| **LC Note 📝** (JS only) | クリックすると、LC Vision 経由で ComfyUI の14言語に翻訳される markdown ノートで、@[card](link) の行をリンクカードとして表示します。 |\n| **LC Notify 🔊** | ノードが実行されたときに、選んだ音を鳴らします（常に、キューが空になったとき、または鳴らさない）。 |\n| **LC Phone Filters 📱** | スマホアプリのフィルタープリセット37種（1977、Aden、Brooklyn など）。strength とノード上のワイプ付き。 |\n| **LC Photo Style 📷** | スタイルプリセットから、画像にスマホカメラ風の見た目を与えます。スライダーと strength のブレンド付き。 |\n| **LC Pipe (in/edit)** | 値を LC_PIPE にまとめるか、既存の pipe に上書きをマージします。 |\n| **LC Pipe Combine** | 上の pipe を、2つ目の pipe で編集します。編集用 pipe が運ぶものは上の pipe を上書きし、それ以外はそのまま引き継がれます。 |\n| **LC Pipe Out** | LC_PIPE を個別のソケットに展開し、pipe はそのまま渡します。protect_mask（一番下）: pipe detailer が描き直したエリア。 |\n| **LC Preview Image 🖼️** | 画像をプレビューします。何も届かないときは、エラーにならず静かに待機します。 |\n| **LC Preview Mask 🎭** | マスクをプレビューします。何も届かないときは、エラーにならず静かに待機します。 |\n| **LC Prompt List 🗒️** | 1 行に 1 つのプロンプトをリストとして送ります。各行がそれぞれ 1 回の生成になります。空行と // で始まる行は除外されます。CR Prompt List の代わりになります（入力と出力は同じ）。 |\n| **LC Prompt to Conditioning + Zero** | プロンプトを conditioning にエンコードし、negative 用にゼロ化したコピーも出力します。 |\n| **LC Reference Latent** | コンディショニングに最大 8 個のリファレンス latent を付けます。複数つなぐと足し合わされます。 |\n| **LC RTX Super Resolution ⚡** | 画像や動画フレームに対する NVIDIA RTX Video Super Resolution です。最大4倍のアップスケール、きれいなソースのアップスケール、denoise、deblur に対応します。品質は LOW から ULTRA、倍率またはメガピクセル、strength を指定できます。nvidia-vfx がない場合は Install RTX support ボタンが表示されます。 |\n| **LC Sampler Configure** | デュアルパスのサンプラー設定を一元管理します: steps、swap ポイント、detailer steps、denoise、CFG、sampler、scheduler。 |\n| **LC Sampler Configure (pipe)** | pipe 入力（任意）と pipe 出力を持つ、デュアルパスのサンプラー設定です。 |\n| **LC Sampler Configure Pipe Out** | LC_PIPE を sampler configure のソケットと latent に展開します。 |\n| **LC Sampler Configure Simple** | CFG が1つで step swap のない、シングルパスのサンプラー設定です。 |\n| **LC Sampler Configure Simple (pipe)** | LC_PIPE から読み込み、LC_PIPE に書き込むシンプルなサンプラー設定です。 |\n| **LC Sampler Scheduler ⚙️** | sampler と scheduler を一度だけ選んですべての KSampler に配線すれば、まとめて変更できます。 |\n| **LC Save Image 💾** | ワークフローのメタデータ付きで画像を保存します。LC Save Metadata と組み合わせると、CivitAI のパラメータも書き込みます。 |\n| **LC Save Metadata 🏷️** | LC Save Image が書き込むメタデータ（モデル、AIR または URL、設定）を作ります。 |\n| **LC Seed Jump 🌱** | seed とジャンプ値を受け取り、seed と、続く5つのジャンプ先を出力します。 |\n| **LC Sharpen Pro** | ぼけを取り除きます（デコンボリューション）。質感とクラリティ、ハロー制御、肌の保護付き（LC Skin Master の skin_mask は任意）。写真、線画、アニメ、イラスト用のプリセットがあります。 |\n| **LC Show Any 🔤** | 任意の値をノード上に表示し、型を変えずに通します。 |\n| **LC Show Text 🔤** | 文字列をノード上に表示し、そのまま渡します。 |\n| **LC Sigma Curve** | ノード上でカスタムの sigma カーブを描き、保存して、再利用できます。 |\n| **LC Sigma Resample** | 開始と終了の sigma を保ったまま、sigma カーブを新しいステップ数にリサンプリングします（LCChangeStepCount としても登録されています）。 |\n| **LC Sigmas (BETA)** | 1パスと2パスのサンプリングに使える1つのスケジューラー: グラフをドラッグして曲げられる sigma カーブのプリセット（base、beta、flowmatch、hyperbolic、gaussian、保存したカーブ）、step swap、denoise、2パス目の continue または renoise、sigma shift。通常のサンプラー名と RES4LYF / ClownShark のサンプラー名に対応しています。 |\n| **LC Size Pad 📐** | 幅 x 高さの2Dスライダーです: フレームの角をドラッグします。モデルのプリセット(MiniMax H3、Krea 2、SDXL、LTX、Klein 9B、Wan 2.2)は、そのモデルのステップにスナップし、メガピクセルの上限で止まります。アスペクトのロックと縦/横の切り替え付き。 |\n| **LC Skin Beauty ✨** | LAB で肌を寒色に、明るく、均一にします。プリセット付きで、ハイライトを保護し、マスクも任意です。GPU でも CPU でも動作します。 |\n| **LC Skin Master ✨ (BETA)** | 肌の処理チェーン全体を 1 つのノードに、顔を認識した 1 枚の肌マップの上でまとめます。ざらつき、毛穴、シミ、しわ、そばかす、目、肌のトーンと色を、それぞれ 1 回ずつ処理します。軽いクリーンアップからプラスチック肌の復元、年季の入った肌や日焼け肌までのプリセットがあります。Sharpen Pro 用に肌マスクを出力します。 |\n| **LC Skin Texture ✨ (BETA)** | なめらかになりすぎた肌に、本物の肌写真から本物の毛穴テクスチャを加えます（細かい凹凸だけで、色は取り込みません）。任意の protect_mask で、detailer のエリアには手を付けません。 |\n| **LC Skin Upscale** | マスクした肌のエリアだけを CNN モデルでアップスケールし、元に戻してブレンドします。任意の protect_mask で、detailer のエリアには手を付けません。 |\n| **LC Slider** | ノードの表面にあるスライダーで、int または float を出力します。 |\n| **LC Speed Boost (BETA) 🚀** | サンプリングが約 2 倍速くなり（SDXL / Pony / Illustrious では約 1.4 倍）、品質は同じです。画像は半分のサイズで始まり、途中でフルサイズに育ちます。ハイパスのサンプラーにつないでください。MOSS Image では使えません。 |\n| **LC Speed Boost 🚀 KSampler (BETA)** | Speed Boost を内蔵した KSampler です。入力は同じで、start / end at step が加わり、別のサンプラーにつなげられます。ClownShark（RES4LYF）のサンプラーに対応しています。 |\n| **LC Split Sigma Scheduler** | デュアルモデルの SamplerCustomAdvanced のために、sigmas を2つのモデルの間で分割します。 |\n| **LC Split Sigmas (Advanced)** | sigma カーブを swap ステップで、high と low の2つのセットに分割します。 |\n| **LC Stop 🛑** | 有効にできるキューのブレークポイント。再生ボタン（または Run）は同じシードで続きを実行するので、ストップより上はすべてキャッシュから来ます。 |\n| **LC Text Overlay** | 画像にテキストを描画します。位置はドラッグ、フォントサイズと色も設定できます。 |\n| **LC Text Remove 🔪** | テキストから、最大20個の部分文字列を順番に取り除きます。 |\n| **LC Text Replace ✂️** | テキストに対して、最大20組の検索と置換（regex も任意）を実行します。 |\n| **LC Timer ⏱️** | 毎回の実行時間を計り、最新の実行を直前5回と比べて採点します: 速ければ緑、遅ければ赤。直近10回の実行を一覧にします。中断した実行と、完全にキャッシュされた実行は含まれません。 |\n| **LC Tone Match** | リファレンスの大まかな照明と色を保ちつつ、画像の細かいディテールを維持します。マスクも任意です。 |\n| **LC Vibrance** | スマートな彩度（vibrance）です。通常の彩度と肌の保護も任意で使えます。 |\n| **LC Vignette** | 画像の端を暗く、または明るくします。 |\n| **LC VRAM Cache Clear** | 実行時に GPU とモデルのキャッシュをクリアするパススルーノードです。後ろに何もない単独のブランチでも動作します。 |\n| **LC Watermark 💧** | ドラッグで配置するウォーターマーク画像を合成します。サイズと不透明度はリアルタイムで調整できます。透過 PNG は、watermark_mask を通して透明度を保ちます。 |\n| **LC Weighted Prompt ⚖️** | 単語ごとに重みを付けられるプロンプト欄：単語をクリックしてスライダーを動かします（1 より上は緑で数値付き、下は赤、0 未満は削除）。欄に入力するか、プロンプトをつないでここで編集します。block（on change、always、never）でどちらを使うか決めます。Krea 2（通常、Image Reference Edit、Identity Edit、ControlNet）、MOSS Image、Anima、CLIP モデルに対応。 |\n| **LC Widget To String** | 他のノードのウィジェットを文字列として読み取ります。 |\n| **LC ✂️ Duplicate Tags 🏷️** | 重複したタグを取り除き、二重にウェイトがかからないようにします（long_hair = (long hair:1.2)）。2つ目のプロンプトを任意で接続すると、2つをマージしてまとめてクリーンアップします。 |\n| **LC 🚦** | boolean 用のライト: true と false にそれぞれ1色ずつ（または色なし）。色は歯車の中にあります。 |\n| **Legend Effects 🪄** | Legendaer へのオマージュ：VHS TV、Pixelation、Digital Glitch、Night Vision、Blueprint、Frosted Glass、Gameboy、Edge-Preserving Blur、Morphology、Quantize を 1 つのノードに。ルックを選ぶとその設定だけが出ます。strength とノード上のワイプ比較付き。 |\n| **Prompt** | プロンプトのテキストボックスです(旧 LC Positive)。Vision Assistant は、他のパックのテキストボックスや、ボックスが negative に入る場合は LC Negative の代わりに、これに差し替えます。 |\n| **Prompt to Conditioning** | テキストプロンプトを CLIP conditioning にエンコードします。 |\n| **🌱LC Seed** | このノードだけをキューに入れたときにも動作するモードを持つ、ユーティリティ seed です。 |\n| **🎨LC Color Palette** | プロンプトで使うための4〜6色のパレットを、プリセットまたは画像から選びます。 |\n| **🎲LC Wildcard** | wildcard テキストファイルからランダムに1行を選びます。 |\n| **📐 LC Aspect Ratio Simplifier** | 画像やマスクを目標サイズにリサイズし、画像、マスク、サイズ、空の latent、バッチを出力します。 |\n| **📐 LC Aspect Ratio Simplifier (pipe)** | Aspect Ratio Simplifier と同じ動作に加え、Get/Set 用の pipe 出力があります。 |\n| **📝 LC Save Text** | テキスト文字列を output フォルダ内のファイルに書き込みます。 |\n| **🗒️LC Camera** | 距離とアングルのプリセットから、プロンプト用のカメラのフレーミングと被写界深度を設定します。 |\n| **🗒️LC Lighting** | プリセットと自分のメモから、プロンプト用の照明のスタイルと方向を設定します。 |\n| **🗒️LC Scene Builder** | シーンのプリセットとオブジェクトから、シーンの説明を組み立てます。 |\n| **🗒️LC Style Selector** | プロンプト用のスタイルプリセット（と品質レベル）を選び、自分のメモを追加します。 |\n| **🗒️LC Subject** | 自由記述のテキストに加え、ポーズ、アクション、服装、配置のオプションで、プロンプトの被写体を記述します。 |\n| **🗒️LC Subject Array** | 複数の subject 出力を1行にまとめます。 |\n| **🧩LC Prompt Assembler** | プロンプトビルダーのパーツ（subject、camera、lighting、style、scene）を、1つのプロンプトまたは JSON にまとめます。 |\n\n---\n\n## LC AV v0.5.23\n\n[github.com/lonecatone23/ComfyUI_LC_AV_nodes](https://github.com/lonecatone23/ComfyUI_LC_AV_nodes)\n\n| ノード | 機能 |\n|---|---|\n| **LC Audio Channel 🎚️** | ステレオ音声を左右に分割し、モノラルを両方に複製します。 |\n| **LC Audio Crop ✂️** | 開始時刻から終了時刻（MM:SS）まで、音声をクロップします。 |\n| **LC Audio Duration ⏱️** | 音声の長さを、秒と分で、int と float として出力します。 |\n| **LC Audio EQ 3-Band 🎛️** | ローシェルフ、ピーキングミッド、ハイシェルフの3バンドイコライザーです。 |\n| **LC Audio Separate 🎼** | Hybrid Demucs で、音声を Bass、Drums、Other、Vocals のステムに分離します。 |\n| **LC Audio Volume 🔊** | スライダーで音量を変更し、ゲイン後にソフトクリップします。 |\n| **LC AV Pipe (in/edit) 🎬** | 動画、音声、設定を保持する LC_AV_PIPE をまとめる、または編集します。 |\n| **LC AV Pipe Out 🎬** | LC_AV_PIPE をスロットに展開し、av_pipe はそのまま渡します。 |\n| **LC Create Video 🎬** | 画像バッチから LC_AV_PIPE を作ります（ファイルはエンコードしません）。 |\n| **LC Final Frame 🖼️** | 画像バッチの最後のフレームを出力します。 |\n| **LC Frame Interpolate 🎞️** | RIFE 4.26 で動きをなめらかにします: 2倍だけでなく任意のフレームレート、プログレスバー付き。カット点は保持し、動画の長さを音声に合わせます。 |\n| **LC Get Latent Size 📐** | latent のピクセル単位の width と height を読み取ります。動画 latent の場合はバッチとフレームも読み取ります。 |\n| **LC H3 Audio Sync (BETA) 🎤** | モデルが作り出した音声の代わりに、あなた自身のトラック（歌やセリフ）を H3 動画に演じさせます。 |\n| **LC H3 Make (BETA) 🎥** | LC H3 Story のショットを作ります：各ショットの文章の周りに人物、画像、音を加え、サンプリングして保存します（テイク、次のショットが始まる末尾、つないだ映像）。 |\n| **LC H3 Save to Story (BETA) 🃏** | 画像をそのまま Story カードやショットの開始 / 終了フレームに入れます。キャスト、衣装、小道具の画像は切り抜かれて無地のグレーに載ります。 |\n| **LC H3 Shot Card (BETA) 🎞️** | どの画像モデルでも作れる絵コンテのフレーム：1 ショットの開始または終了フレームのプロンプト、ブロッキングのボックス、背景、キャストの画像。 |\n| **LC H3 Story (BETA) 🎬** | 映像全体を 1 つのノードに：キャスト、衣装、場所、小道具、ショット。各ショットの文章を読んで編集でき、レンダー前に警告します。ボードで 1 ショットだけ作り直しや修復ができ、変更で壊れたショットに印が付きます。 |\n| **LC H3 Story Card Prompt (BETA) 📝** | Story のキャスト、衣装、場所、小道具のカードを、どの画像モデルでも使えるプロンプトと空の latent にして、カードの画像を作ります。 |\n| **LC H3 Ultimate Upscale (BETA) 🔭** | 通常の MiniMax H3 ワークフロー用に、MMH3 Ultimate Upscale を1つのノードにまとめたもの: H3 latent アップスケーラーと軽いタイル式 H3 パス。 |\n| **LC H3 Upscale (BETA) 🔭** | カットが確定したら、保存済みの latent から、Run ごとに長尺動画の1セグメントをアップスケールします。 |\n| **LC Load Audio 📂** | input フォルダから音声を読み込みます。開始/終了のトリムとプレビュープレーヤー付き。 |\n| **LC Load Video 🎞️** | 動画をそのまま読み込みます：全フレームを元のサイズで、音声と元のフレームレートも一緒に。リサイズやフレーム飛ばしはしません。 |\n| **LC Pipe → AV Pipe 🔌** | LC_PIPE または MiniMax H3 pipe を LC_AV_PIPE に変換し、共通のフィールドだけをコピーします。 |\n| **LC Preview Video 📺** | ノード上で動画を再生します。ファイルでも、音声付きのフレームのバッチでも OK。出力フォルダーには何も保存されません。 |\n| **LC Save Video Metadata 🏷️** | LC Save Metadata と同じメタデータを、LC Save Image や LC Save Video 用に作ります。 |\n| **LC Save Video 💾** | Video Combine 風のオプション（フレームレート、ループ、フォーマット、pingpong、crf、pix_fmt、音声）で動画を保存します。relay 入力は LC Relay VSR Upscale の動画を受け取り、数フレームずつ保存します（5 秒・4x で RAM は 12 GB ではなく 0.3 GB）。Relay をバイパスすると images を保存します。色は VHS と同じ（BT.709）。SVT-AV1 がなくても AV1 が使えます。 |\n| **LC VAE Decode 🧩** | フルデコードとタイルデコードを切り替えられる VAE Decode です。 |\n\n---\n\n## LC MaskMaker v0.29.15\n\n[github.com/lonecatone23/ComfyUI_LC_MaskMaker_nodes](https://github.com/lonecatone23/ComfyUI_LC_MaskMaker_nodes)\n\n| ノード | 機能 |\n|---|---|\n| **LC 360 View 🧭** | 360 度パノラマから平面のカメラビューを取り出します。ノード上でドラッグして向きを決め、name: yaw, pitch, fov の形でビューを並べると、全部を 1 つのバッチで受け取れます。1 枚のパノラマで、シーンのすべてのショットが同じ部屋になります。 |\n| **LC Auto Adjust 🔆** | ワンクリックの自動レベル補正（チャンネルごと、輝度、彩度、モノ）。トリム、strength のブレンド、任意のマスク付き。 |\n| **LC Character Detailer (BETA) 🩹** | キャラクター 1 人用の LC Smart Detailer です。SAM 3 がすべての一致を見つけ、選んだ 1 人だけを描き直します（左から右、最大のもの、または LC Bounding Boxes のボックス内のもの）。キャラクターごとに専用の LoRA ブランチとディテイラーを持たせれば、キャラクター LoRA がほかの顔ににじみません。 |\n| **LC Character Detailer (pipe) (BETA) 🩹** | 同じものを、LC pipe のモデル、VAE、サンプラー設定で使います。接続したモデルは pipe のものより優先されます。 |\n| **LC Create Mask 🖼️✏️** | ノード上で、ポイントまたはフリーハンドの鉛筆でマスクを直接描きます。feather、invert、opacity が組み込まれています。 |\n| **LC Depth Anything V2 🌊** | Depth Anything V2 の depth map（明るい = 近い）を画像とマスクとして作ります。モデルリストはどのマシンでも同じに表示されます。 |\n| **LC Detail Finder (BETA) 🎯** | キャラクターごとのディテイラー、ステップ 1：SAM 3 がすべての一致を 1 回で見つけます（すべての顔）。face, hair にすると、顔ごとにその人の髪が付きます。 |\n| **LC Detail Sorter (BETA) 🔢** | ステップ 2：SAM 3 のマスクを並べ替え（左から右、右から左、上から下、大きい順）、出力 1〜8 に分けます。プレビューに番号が付きます。 |\n| **LC Detailer For Each (BETA) 🩹** | ステップ 3、キャラクターごとに 1 つ：その人を専用の LoRA ブランチ、コンディショニング済みのプロンプト、シードで描き直します。単体でも LC pipe 上でも動き、接続したものは pipe より優先されます。エンジンは LC Smart Detailer と同じです。 |\n| **LC Face Crop 📐** | 単純な中央クロップではなく、顔をうまく配置したフォーマットにクロップします。Aspect Ratio Simplifier のプリセットを使います。フレーミングは最も広いものから顔のみまで。 |\n| **LC Image Blend Advance 🎚️** | レイヤーを背景に配置し（位置、スケール、回転、ミラー）、29のブレンドモードで、任意のマスクを通してブレンドします。 |\n| **LC Outpaint, Rotate, & Pad 🔄** | ノード上でドラッグして、画像を回転、クロップ、パディングします。縦/横の切り替え付き。マスクは、パディング部分と、回転で開いた角を覆います。max_megapixels でそのサイズでフレームが止まります。 |\n| **LC Krea2 AnyPaint 🩹** | AnyPaint LoRA を使った Krea 2 の inpaint と outpaint です。マスクの外側は元のまま戻り、継ぎ目も消えます。 |\n| **LC Z-Image AnyPaint 🩹** | Z-Image（Turbo / Base）用の同じ inpaint と outpaint です。LoRA の代わりに、Z-Image Fun ControlNet Union 2.1 パッチで描画します。マスクの外側は元のまま戻ります。 |\n| **LC SDXL AnyPaint 🩹** | 任意の SDXL チェックポイント（SDXL、Pony、Illustrious）用の同じ inpaint と outpaint です。ControlNet Union ProMax で描画し、Fooocus inpaint は任意です。LoRA は不要です。 |\n| **LC Flux 3 Klein AnyPaint 🩹** | Flux 3 Klein 用の同じインペイントとアウトペイント。AusBoss の Outpaint LoRA を使って edit モードで塗ります: 領域がグレーで塗りつぶされ、元の画像はそのままに、モデルがそこを埋めます。 |\n| **LC MOSS Box Edit 🖌️ (BETA)** | LC Bounding Boxes で画像にボックスを描くと、MOSS Image がそのボックスだけを、画像全体を見ながら描き直します。ボックスの外はピクセル単位でそのままです。服を変える、キャラクターや看板を足す、何かを消す、といった使い方ができます。 |\n| **LC MOSS Control 🕹️** | MOSS Image 用の ControlNet です。画像が深度マップ（ポーズ、形）やカラー領域マップに従い、それぞれに終了点があります。darask0 の Color-Depth Control アダプターを使います。 |\n| **LC Mask Refine ✨** | trimap を使ってマスクを引き締めます。エッジのバンドだけに guided filter または VITMatte を使い、before/after ワイプ付き。 |\n| **LC Normal Map (BAE) 🗺️** | BAE の surface normal map（RGB = XYZ）を作ります。ControlNet の normal_bae が作るものと同じスタイルです。 |\n| **LC Outpaint 🖌️➕** | ノード上でキャンバスの端を外側にドラッグして、グレーのキャンバスと新しい領域のマスクを作ります。max_megapixels でそのサイズで端が止まります。 |\n| **LC Person Mask 🧍** | Segformer または MediaPipe で、人物の各部分（顔、髪、体、服、アクセサリー、背景）を選択します。remove_features で肌だけのマスクになります。 |\n| **LC Relay VSR Upscale 🧩** | RelayVSR のアップスケールを 1 つのノードに：モデル、VAE、サンプラーを内蔵し、初回使用時にダウンロード。2x か 4x。仕上がりを柔らかくしてあるので、髪や輪郭が自然なまま（まつげが墨で描いたようになったり、ハローや色ずれが出たりしません）。source：video はフレームを揃えて安定させ、image は 1 枚ずつ個別にアップスケールします。8 GB カードでも VRAM が一定（RTX 5060 ノートPC で 5 秒のクリップを 4x で約 104 秒）。ComfyUI nightly（2026 年 11 月 5 日以降）か次の安定版が必要。relay 出力は LC Save Video につなぎ、数フレームずつ保存するので RAM がいっぱいになりません。detect_faces（オン）は自分で顔を見つけ、Relay の粒子を顔に乗せません（画像ではコストなし、動画は 3 フレームごと）。protect_mask をつなぐとそちらが優先。upscale には 2x / 4x bf16（10 GB）、オリジナル版もあります：出力はほぼ同じで、VRAM を約 5 GB 多く使います。 |\n| **LC Remove Background ✂️** | BiRefNet で背景を除去し、RGBA の切り抜き、マスク、単色背景上の被写体を出力します。 |\n| **LC Segment Anything 🎯** | GroundingDINO + SAM または SAM 3 を使い、言葉で説明したものを選択します。エッジの refine も任意です。 |\n| **LC Smart Detailer 🩹** | SEGS / Impact の detailer の代わりになります。入力したもの（手、顔、目）を SAM 3 で見つけ、それぞれを専用のアップスケールしたクロップで描き直してから、元にブレンドします。 |\n| **LC Smart Detailer (pipe) 🩹** | 同じもので、モデル、VAE、サンプラー設定を LC pipe から取ります。接続したモデルや VAE は、pipe のものを上書きします。 |\n| **LC Touch Mask (BETA) 👆** | 1 つのものを正確にマスクします。囲むと SAM 3 がその輪郭を見つけます。タップで次に大きいものへ広がり（顔、顔 + 髪、頭、人物）、ダブルタップで 1 段戻ります。Ctrl + 描画で切り抜きます。しきい値、スムーズ、細かなエッジ仕上げを内蔵しています。 |\n| **LC VOSR2 Upscale 🧩** | VOSR 2.0 を内蔵した、高速で低 VRAM のアップスケールです。画像を描き直さずに、シャープにして細かいディテールを加えます。1.5倍〜4倍は1パス、6倍と8倍は2パスです。 |\n| **LC VOSR2 Upscale (pipe) 🧩** | pipe detailer の後ろで、LC pipe 上で動く同じものです。detailer のエリアを新しいサイズに引き継ぎ（protected 出力）、LC Skin Upscale / LC Skin Texture に渡します。 |\n\n---\n\n## LC Vision v1.6.28\n\n[github.com/lonecatone23/ComfyUI_LC_Vision_nodes](https://github.com/lonecatone23/ComfyUI_LC_Vision_nodes)\n\n| ノード | 機能 |\n|---|---|\n| **LC Vision Showrunner (BETA) 🎬** | 長い MiniMax H3 動画を CUT / CONTINUE のセグメントとして計画し、直前のセグメントが実際にどう終わったかに合わせて各つなぎ目を修正し、プロジェクトファイル（ショットリスト、リファレンス、設定）を保存／読み込みします。 |\n| **LC Vision Reviewer 🕵️ (BETA)** | 品質ゲートです: 手、顔、テキスト、アーティファクト、プロンプトとの一致、そして自分の質問について yes/no でチェックします。悪いレンダリングにフラグを立てるか、その後ろのすべてをブロックします。 |\n| **LC Vision Shot List (BETA) 📋** | Showrunner 用のストーリーを、フォームに記入するように入力します: 場所、キャスト、ショットごとに1行。セグメント数を提案し、ショットに対して長すぎるセリフを警告します。AI は使いません。 |\n| **LC Vision Storyboard Builder (BETA) 🎞️** | Showrunner の映画用の画像です。プロジェクトに足りないもの（顔、場所、アンカー）を見つけ、画像ごとにプロンプト、latent、シードを 1 つずつ作ってサンプラーに渡します。 |\n| **LC Vision Storyboard Save (BETA) 🎞️** | Storyboard Builder の画像をプロジェクトに保存します。Showrunner の 📂 Load で Reference Assembler に追加されます。 |\n| **LC Vision Storyboard Sheet (BETA) 🎞️** | ノード上の絵コンテです。画像ごとに 1 枚のカード。✅ Use で Reference Assembler に入れ、↻ で作り直し、✎ でプロンプトを変えます。配線は不要です。 |\n| **LC Vision Redirect (BETA) 🔬** | 古いワークフロー用に残してあります: LC Vision Showrunner がつなぎ目を自分で修正するようになりました。 |\n| **LC Vision Danbooru Caption 🏷️** | 1枚の画像またはラフなアイデアから、SDXL、Pony、Illustrious 用のプロンプトを作ります: 短い、または詳細なキャプション、本物の Danbooru タグ、または文章 + タグ。品質タグと、対応する negative は任意です。 |\n| **LC Vision Caption 📝** | 読み込んだ LC Vision モデル、指示、最大3枚のリファレンス画像、リファレンス動画からテキストを生成します。 |\n| **LC Vision Loader 🔬** | Qwen-VL GGUF モデルとその vision projector を読み込みます。keep_model_loaded をオフにすると、Vision ノードの処理が終わったあとにアンロードされ、画像モデルがカード全体を使えます。 |\n| **LC Vision Moviemaker 🎥** | 動画を、連続する複数のセグメントとして1回の呼び出しで計画します。各セグメントは、それだけで完結した MiniMax H3 プロンプトとして書かれます。 |\n| **LC Vision Prompt Enhancer 📝** | LC Vision のモデルで、プリセットの指示を使ってプロンプトを書き直します（テキストのみ）。LC MOSS Layout Prompt をつなぐと、ボックスはそのままでシーンとボックスを強化します。 |\n\n---\n\n## LC ModelBuilder v0.7.5\n\n[github.com/lonecatone23/ComfyUI_LC_ModelBuilder_nodes](https://github.com/lonecatone23/ComfyUI_LC_ModelBuilder_nodes)\n\n| ノード | 機能 |\n|---|---|\n| **LC Anima Block Merge Advanced** | Anima 版の Krea2 Block Merge Advanced です。28 ブロックにわたるカーブに加え、x embedder、timestep embedder と norm、LLM adapter、final layer のスライダーがあります。プリセット付き。 |\n| **LC Anima LoRA Block Scan** | Anima 版の Krea2 LoRA Block Scan で、アニメの顔を CCIP で採点します。 |\n| **LC Anima LoRA Editor** | Anima 版の Krea2 LoRA Editor です。操作は同じで、Anima の 28 ブロックとレイヤー種別に対応します。 |\n| **LC Anima LoRA Merge** | Anima 版の Krea2 LoRA Merge です。2〜4 個の Anima LoRA を、ブロックごとの A / B カーブで合わせます。 |\n| **LC Checkpoint Save** | オールインワンの checkpoint(model、clip、vae)を保存します。enabled トグルで保存をスキップできます。metadata: すべて保持、または必要最小限のみ(ワークフローや学習の詳細なし)。 |\n| **LC Diffusion Model Save** | clip や vae なしで、diffusion model だけを保存します。metadata のスイッチは同じです。 |\n| **LC Face Variety Scorer 🧑‍🤝‍🧑** | バッチ内の顔がどれだけ似ているかをスコア化します(0 から 1、低いほど多様)。集合写真用の crowd スコアも出ます。写真(ArcFace)またはアニメ(CCIP)モード。 |\n| **LC Fingerprint Identify 🔎** | このモデルは何でできている? fingerprint ライブラリをもとに、ブロックごとのレシピを出します: どのモデルがどの比率でマージされたか、マージされた LoRA とその strength、それぞれにどれだけ確信があるか、そしてヒートマップ。ライブラリにあるものしか名前を挙げられません。 |\n| **LC Fingerprint Library 📚** | フォルダーを巡回して、すべてのモデルと LoRA の小さな fingerprint(約 1 MB)をファミリーと一緒に保存します。一度登録すれば元のファイルは消せます。再実行では新しいものだけが追加されます。 |\n| **LC Krea2 Block Merge Advanced** | 28ブロックにわたるドラッグ可能なブロックごとの比率カーブと、名前付き領域のスライダーで、Krea2 チェックポイントをマージします。 |\n| **LC Krea2 LoRA Block Scan** | ブロックグループを1つずつオフにして、LoRA が顔を固定している場所や画像全体を変えている場所を見つけ、Editor 用のブロックカーブを提案します。 |\n| **LC Krea2 LoRA Editor** | 28ブロックそれぞれを上げ下げし、attention と MLP を別々にスケールして、スパイクを和らげた状態で Krea 2 の LoRA を読み込みます。 |\n| **LC Krea2 LoRA Merge** | 2〜4個の Krea 2 LoRA を、ブロックごとの A / B カーブ(sum または TIES)でマージします。 |\n| **LC Krea2 Semantic Vector Tuner** | 1つの Krea2 チェックポイントの重みの特定の領域を増幅または減衰させます（マージではありません）。 |\n| **LC LoRA Bake 🍞** | 最大 4 個の LoRA をモデルファイルに焼き込み、新しいモデルとして保存します。ブロックごとのカーブは任意です。ComfyUI が読めるすべての LoRA 形式を読み、レシピをファイルに書き込みます。CPU で動くので VRAM は不要です。 |\n| **LC LoRA Extract** | finetune を LoRA に変換します(finetune から base を引いたもの): 全レイヤー、ブロックのみ、またはカスタムのブロックリスト。変化のないレイヤーは含まれません。 |\n| **LC LoRA Save** | 編集またはマージした LoRA を、すべての編集を焼き込んだ標準ファイルとして保存します。新しい rank にもできます。enabled と embed_workflow のスイッチ付き。 |\n| **LC Model Fingerprint 🔍** | 1つのモデルを、重みそのものから、リファレンスと層ごとに比べます: 別の精度の同じモデル、それをベースに作られたもの、ブロックマージ(チャートでどのブロックかが分かります)、または無関係。LoRA の場合は、マージされているかどうかと、おおよその strength。 |\n| **LC Model Merge (any precision)** | 異なる精度で保存された2つのモデルをマージします(bf16 と fp8、int8、nvfp4、GGUF、どちらの順でも)。結果はフル精度のままです。 |\n| **LC Model Quantize 🗜️** | モデルの小さなコピーを保存します: fp8、mxfp8、nvfp4、int8、int4(標準のローダーで読み込めます)または GGUF の Q8_0 から Q2_K。配線した MODEL(LoRA を焼き込み済み)から、または任意のサイズのファイルから直接作れます。 |\n| **LC MOSS Block Merge Advanced** | MOSS Image のモデルを、42 レイヤーにわたるドラッグできるレイヤーごとの比率カーブでマージします。レイヤー外の部分（画像入力、プロンプト入力、timestep、modulation、final layer）にはスライダーがあります。プリセットの保存と読み込みができます。 |\n| **LC Scoreboard 🏆** | A / B テスト用の直接対決カウンターです: #1 Win、Tie、#2 Win のボタンがあり、リーダーとパーセンテージがノード上に表示されます。 |\n| **LC Strip Metadata 🧹** | すでに保存したモデルから、メタデータ(埋め込みワークフロー、学習の詳細、タイトル)を消去します。重みはバイト単位でコピーされ、読み込まれることはないので、以前とまったく同じように読み込めます。_clean コピーを書き出すか、元のファイルを置き換えます。 |\n| **LC VAE Compare** | 同じ latent を最大6つの VAE でデコードし、1:1 のディテールクロップ、シャープネスの数値、最初のものからどれだけ離れているかを並べて表示します。 |\n| **LC VAE Merge** | 同じファミリーの2つの VAE のデコーダーを、大まかな形から細かいテクスチャまでマージします。エンコーダーはベースのものが残るので、結果はそれ用のモデルにもそのまま合います。 |\n| **LC VAE Save** | VAE を models/vae に fp32、bf16、fp16 で保存します。 |\n\n---\n\"True Nothing is. Permitted Everything is\"- Yoda Auditore, Assassin's Wars",
              "src": "2be366c1",
              "srcTitle": "Total Nodes (Busy work)"
            },
            "ko": {
              "text": "# 전체 노드\n\n5개 팩에 걸쳐 **257개 노드**. deprecated 노드는 목록에는 있지만 개수에는 포함하지 않았습니다.\n\n| 팩 | 노드 수 | 버전 | 링크 |\n|---|---|---|---|\n| LC123 | 162 | v1.56.6 | [Repo](https://github.com/lonecatone23/ComfyUI_LC123_nodes) |\n| LC AV | 27 | v0.5.23 | [Repo](https://github.com/lonecatone23/ComfyUI_LC_AV_nodes) |\n| LC MaskMaker | 30 | v0.29.15 | [Repo](https://github.com/lonecatone23/ComfyUI_LC_MaskMaker_nodes) |\n| LC Vision | 12 | v1.6.28 | [Repo](https://github.com/lonecatone23/ComfyUI_LC_Vision_nodes) |\n| LC ModelBuilder | 26 | v0.7.5 | [Repo](https://github.com/lonecatone23/ComfyUI_LC_ModelBuilder_nodes) |\n\n---\n\n## LC123 v1.56.6\n\n[github.com/lonecatone23/ComfyUI_LC123_nodes](https://github.com/lonecatone23/ComfyUI_LC123_nodes)\n\n| 노드 | 기능 |\n|---|---|\n| **CivitAI 🚩🔪** | 규정 준수 목록을 이용해 프롬프트에서 문제가 될 수 있는 용어를 제거합니다. 보조 도구일 뿐이며 (CivitAI 약관에 대한 책임은 여전히 본인에게 있습니다). 켜기 전까지는 꺼져 있습니다. |\n| **LC Advanced Folder 📂** | Image Saver 스타일 노드용으로 filename과 path 출력을 따로 만들어 줍니다. 경로 안 prefix와 timestamp는 선택 사항입니다. |\n| **LC Anima Box Prompt 🔲** | Anima용 영역 프롬프트: LC Bounding Boxes에서 박스를 그리고 각 박스를 보통 프롬프트처럼 써요. 메인 프롬프트는 장면이에요. 왼쪽 / 오른쪽 단어는 필요 없어요. 모델과 샘플러 사이에 연결해요. Anima Regional Conditioning이 필요하고, Regional LLLite 패치는 처음 사용할 때 다운로드돼요. |\n| **LC Anima Regional Inline Canvas** | 노드 위에서 RGB 영역을 칠하면 Anima regional prompting용으로 영역별 conditioning과 마스크를 따로 얻을 수 있습니다. |\n| **LC Any Empty Bool** | 연결된 입력 중 하나라도 비어 있거나 뮤트 또는 바이패스되어 있으면 true를 출력합니다. |\n| **LC Any Empty Float** | Any Empty Bool과 같은 비어 있음 검사를 하고 empty와 not-empty float를 출력합니다. |\n| **LC Any Empty Int** | Any Empty Bool과 같은 비어 있음 검사를 하고 empty와 not-empty 정수를 출력합니다. |\n| **LC Any Index Switch** | 선택한 index의 입력을 통과시키고 나머지 슬롯은 무시합니다. |\n| **LC AnySwitch** | 2개에서 20개 입력 중 처음으로 연결된 입력을 골라 그 타입으로 고정됩니다. |\n| **LC Apply LoRA Stack 🎚️** | LC LoRA Loader Stack(또는 다른 팩)의 LORA_STACK을 model 및/또는 clip에 적용합니다. |\n| **LC Apply LUT** | models/luts의 .cube 3D LUT를 0에서 2까지의 strength로 적용합니다. 기본은 LC Crushed Blacks 0.3입니다. |\n| **LC Aspect Ratio Pipe (In/Edit)** | 이미지, 마스크, 크기, latent, 배치, 해상도를 LC_PIPE에 담거나, 기존 pipe를 편집하며 연결된 소켓만 덮어씁니다. |\n| **LC Aspect Ratio Pipe Out** | LC_PIPE의 종횡비 필드를 별도 소켓으로 풀어내고 pipe는 그대로 넘깁니다. |\n| **LC Auto White Balance** | 알고리즘 선택, strength 블렌드, before/after 와이프로 화이트 밸런스를 자동 보정합니다. |\n| **LC Basic Scheduler** | 전체 step 수에 대한 sigmas를 출력합니다 (denoise 없음). 듀얼 패스 샘플링용 LC Split Sigmas (Advanced)에 넣으려고 만들었습니다. |\n| **LC Batch Image 🖼️** | 자동으로 늘어나는 슬롯에서 이미지를 배치로 묶습니다. 뮤트되었거나 없는 것은 무시하고, 뒤의 이미지는 첫 이미지 크기에 맞춥니다. |\n| **LC Bloom** | Bloom, Pro-Mist(디퓨전 필터), Halation(필름 가장자리 글로우) 모드로 밝은 영역에서 빛 번짐을 추가합니다. |\n| **LC Boolean** | boolean, int, float를 깔끔한 true/false로 바꾸고 노드에 표시합니다. |\n| **LC Boolean Flip** | 토글의 반대 값을 출력합니다. |\n| **LC Boolean Switch** | boolean에 따라 on_true 또는 on_false 입력(모든 타입)을 선택합니다. |\n| **LC Boolean Value** | 어디에든 연결할 수 있는 단순한 boolean 토글입니다. |\n| **LC Bounding Boxes 🔲** | Flux 3나 MOSS Image용으로 그림 위에 박스를 그립니다. 박스마다 이름을 붙이고 new, change, move, remove 중에서 고른 뒤 결과를 설명합니다. MOSS에서는 박스를 캐릭터로 만들어 전용 팔레트를 줄 수 있습니다. 클래식과 Nodes 2.0 모두에서 작동합니다. |\n| **LC Bypass Relay** | 왼쪽의 노드들을 모아서, 허브가 OPT_CONNECTION을 통해 전부 한꺼번에 뮤트 또는 바이패스할 수 있게 합니다. |\n| **LC Bypasser Panel** (JS only) | LC Bypasser, LC Mute, LC Groups Bypasser를 위한 위젯 전용 리모컨입니다. |\n| **LC Bypasser** (JS only) | 토글이나 BOOLEAN 입력으로 연결된 노드들을 한곳에서 바이패스합니다. |\n| **LC Chromatic Aberration** | RGB 채널을 어긋나게 옮겨서 렌즈 색수차를 흉내 냅니다. 채널별 픽셀 양과 방향을 정할 수 있습니다. |\n| **LC Color Match 🎨** | 이미지의 색을 레퍼런스에 맞춥니다 (AdaIN / mean-std). 피부 보호와 마스크는 선택 사항입니다. |\n| **LC Combo Selector** | 다른 노드의 combo(sampler, scheduler 등)에 연결하면 그 옵션을 그대로 반영하는 드롭다운입니다. |\n| **LC Control Panel 🎛️** | 노드 하나에 최대 16개의 슬라이더와 on/off 스위치가 있고, 각각 별도의 출력을 가집니다. 행의 톱니바퀴로 타입(숫자 또는 boolean), 이름, 범위, step, INT 또는 FLOAT를 설정합니다. 숫자나 boolean 입력에 연결한 새 행은 그 입력의 설정을 복사합니다. |\n| **LC Custom Combo** | 나만의 옵션 목록을 만들고, 선택한 텍스트와 그 index를 출력합니다. |\n| **LC Custom Combo Panel** | 다른 곳에서 LC Custom Combo의 선택을 고르는 리모컨입니다. |\n| **LC Denoise 💉** | 샘플러에 주는 것과 같은 denoise 값으로, 1에서 denoise 값을 뺀 만큼의 비율로 latent 노이즈를 주입합니다. |\n| **LC Depth FX 🌫️** | depth map으로 대기 안개, 빛 감싸기, 진짜 보케가 있는 피사계 심도를 만들며 공용 룩을 지원합니다. |\n| **LC Detail Daemon (BETA)** | 원래 Detail Daemon 스케줄에 따라 일부 steps 구간 동안 모델에게 노이즈를 조금 숨겨서 세밀한 디테일을 추가합니다. Look only(기본값), classic, keep structure 모드가 있습니다. 샘플러 버전이며 low pass 샘플러에 연결합니다. |\n| **LC Detail Daemon (model) (BETA)** | 같은 Detail Daemon을 model patch로 만든 버전으로, 일반 KSampler용입니다. |\n| **LC Detail Pipe Out** | LC_PIPE에서 디테일러 설정(모델, 프롬프트, seed, cfg, sampler, scheduler, steps)을 풀어냅니다. protect_mask (맨 아래): pipe 디테일러가 다시 그린 영역. |\n| **LC Dimension Resize 📐** | width와 height에 하나의 값을 더하거나, 빼거나, 곱하거나, 나누고 결과를 정수로 반올림합니다. |\n| **LC Directional Blur** | 노드의 화살표를 드래그해서 정한 각도와 길이로 모션 블러를 줍니다. |\n| **LC Dynamic Overlay** | 이미지 A 위에 이미지 B를 겹치고, 한 번 실행한 뒤 다시 생성하지 않고 노드에서 불투명도를 조절할 수 있습니다. |\n| **LC Easy Folder 📂** | 기본 Save Image 노드용 filename_prefix를 만들고 폴더를 생성합니다. |\n| **LC Film Grain** | amount, contrast, size, 모노 또는 컬러 옵션으로 필름 그레인을 추가합니다. |\n| **LC Film Grain (Video) 🎞️** | 클립 전체에 같은 그레인을 입힙니다: GPU에서 몇 프레임씩, 진행 막대와 함께. 그레인 크기가 영상에 맞춰져서 압축해도 살아남습니다. |\n| **LC Film Stock (B&W)** | 프리셋과 strength 블렌드로 흑백 필름 룩을 줍니다. |\n| **LC Film Stock (Color)** | 프리셋(toe, shoulder, gamma)과 strength 블렌드로 컬러 필름 룩을 줍니다. |\n| **LC Float Compare** | 두 float 중 큰 쪽 또는 작은 쪽을 출력합니다. |\n| **LC Flux 3 Layout Prompt 🗺️** | 모델이 학습된 표 형식으로 박스를 Flux 3 프롬프트에 추가합니다. 프롬프트에 <1>, <2>라고 쓰면 박스 1, 박스 2를 가리킵니다. |\n| **LC Flux 3 Reference Latent 🖼️** | Flux 3용 레퍼런스 그림을 최대 4장까지 positive와 negative에 붙이고, 모델이 필요로 하는 negative와 latent 크기를 만들어 줍니다. |\n| **LC Get Image 📐** | 이미지의 width, height, 메가픽셀, 긴 변, 배치 크기, 종횡비를 읽어옵니다. |\n| **LC Groups Bypasser** (JS only) | 그룹마다 토글 하나로 전체 그룹을 한곳에서 바이패스합니다. |\n| **LC Image Adjust** | 기본 컬러 그레이드(hue, saturation, brightness, contrast)와 약한 샤픈 또는 소프트닝. |\n| **LC Image Batch From Folder 📂** | 폴더 전체를 알파벳순으로 하나의 배치로 불러오며, max_images와 start_index를 지원합니다. |\n| **LC Image Compare 🔎** | 컴팩트한 드롭다운과 고정된 이미지 영역으로 대량의 이미지 배치를 비교합니다. |\n| **LC Image Crop 🖼️🔪** | 노드 위에서 박스와 핸들을 드래그해 크롭하며, 종횡비 고정은 선택 사항입니다. |\n| **LC Image Denoise** | blur strength, 엣지 보존, 블렌드를 갖춘 스마트 디노이즈. |\n| **LC Image Desaturate** | factor와 휘도 방식으로 흑백 쪽으로 채도를 낮춥니다. |\n| **LC Image Grid 🖼️** | 이미지 배치를 격자로 배열하며, gap, 윤곽선, 테두리는 선택 사항입니다. |\n| **LC Image Label** | 워크플로에 주석을 다는 떠다니는 이미지 스티커입니다. 드래그 앤 드롭으로 업로드합니다(소켓 없음). |\n| **LC Image Pass** | 이미지를 그대로 통과시킵니다. 끄면 다음 노드는 그 입력에서 아무것도 받지 않고, 그것 없이 실행됩니다. |\n| **LC Image Ref Pipe In 🖼️** | 최대 16개의 레퍼런스 이미지를 하나의 pipe로 묶습니다. 소켓은 Text Encode Qwen Image 2.1처럼 늘어납니다. |\n| **LC Image Ref Pipe Out 🖼️** | 이미지 ref pipe를 원래 슬롯 그대로 image_1에서 image_16으로 풀어내며, pipe가 먼저 나옵니다. |\n| **LC Image RGB** | 각 컬러 채널을 따로 오프셋하며 전체 strength가 있습니다. |\n| **LC Image Split 🖼️** | 노드 위의 전/후 비교 와이프이며, 출력은 저장용으로 구워진 분할 이미지입니다. 구분선의 너비와 색은 직접 정할 수 있습니다. |\n| **LC Image Stitch Multi 🖼️🪡** | 자동으로 늘어나는 슬롯의 이미지를 나란히 또는 위아래로 이어 붙입니다. 크기 맞춤, 정렬, 선택적 gap을 지원합니다. |\n| **LC Image to Total Megapixels 📐** | 이미지를 총 메가픽셀 수에 맞게 스케일하고 결과 해상도를 출력합니다. |\n| **LC Image-Mask Resize 📐** | 이미지 및/또는 마스크를 프리셋, 사용자 지정 크기, 배수, 메가픽셀 수로 리사이즈하며, divisible_by의 배수로 맞춥니다. |\n| **LC Int Compare** | 두 정수 중 큰 쪽 또는 작은 쪽을 출력합니다. |\n| **LC Int Split** | 합계를 분할 비율에 따라 a + b로 나누므로 a + b는 항상 합계와 같습니다. |\n| **LC Invert Boolean** | boolean, int, float를 변환하고 반대 값을 출력합니다. |\n| **LC Is Bypassed / Muted** | 연결된 노드가 바이패스 또는 뮤트되어 있으면 true를 출력하며, 큐에 넣지 않고도 실시간으로 읽습니다. |\n| **LC Join Strings 🔗** | 여러 문자열을 구분자로 이어 붙이며 빈 것은 건너뜁니다. |\n| **LC Krea2 Regional Inline Canvas** | 노드 위에서 RGB 영역을 칠하면 krea2 CLIP 타입으로 regional conditioning을 얻을 수 있습니다. |\n| **LC Label 🏷️** | 워크플로에 주석을 다는 떠다니는 텍스트 라벨입니다. 폰트, 색상, 외곽선, 그림자를 지원합니다(소켓 없음). |\n| **LC Last Image Holder** | 연결을 끊은 뒤에도 마지막으로 생성된 이미지를 보관해 전/후 비교를 할 수 있습니다. Hold until seed change는 seed의 첫 이미지를 유지해서 수정한 결과를 비교할 수 있게 합니다. |\n| **LC Lens FX (deprecated)** | 검색에서 숨겨져 있습니다. 예전 워크플로는 계속 실행됩니다. 대신 Lens Profile, Vignette, Film Grain을 쓰세요. |\n| **LC Lens Profile** | 이름이 붙은 렌즈 프로파일을 조절 가능한 strength로 적용하거나 보정합니다. |\n| **LC Lift Gamma Gain** | lift, gamma, gain, offset으로 섀도, 미드톤, 하이라이트를 그레이딩합니다. |\n| **LC Lighting Control V2 🔦** | 스팟 또는 태양광 1~2개, 따뜻함, 컬러 젤, 하드 또는 소프트 그림자로 이미지를 리라이트합니다. |\n| **LC Lighting Control 🔦 (deprecated)** | 예전 워크플로우에서는 계속 작동합니다. 대신 LC Lighting Control V2를 쓰세요. |\n| **LC LoRA Loader Stack 🎚️** | LC LoRA Loader와 같은 LoRA 목록을 만들어 LORA_STACK으로 출력합니다. |\n| **LC LoRA Loader 🎚️** | 노드 하나에서 원하는 만큼의 LoRA를 적용하며, 행마다 enable, strength, 드래그로 순서 변경이 있습니다. |\n| **LC LoRA Loader (single) 🎚️** | LC LoRA Loader 한 줄(켜기/끄기, 폴더 선택기, 강도, Info)로, turbo나 스타일 LoRA를 따로 한 자리에 둡니다. 모델 전용이며 줄 추가나 삭제는 없습니다. |\n| **LC Mask Pass** | 마스크를 통과시킵니다. 끄면 다음 노드는 마스크 없이 실행됩니다. 마스크를 만드는 노드를 바이패스하는 대신 이것을 쓰세요. |\n| **LC MiniMax H3 Pipe** | MiniMax H3의 프롬프트, 레퍼런스, 설정을 담은 H3 pipe를 만들거나 편집합니다. |\n| **LC MiniMax H3 Pipe Out** | LC MiniMax H3 pipe를 별도 소켓으로 풀어냅니다. |\n| **LC MiniMax H3 Pipe Out V2** | H3 pipe V2를 풀어내며 prompt, steps, cfg, seed, sampler, scheduler 출력이 추가됩니다. |\n| **LC MiniMax H3 Pipe V2** | prompt, steps, cfg, seed, sampler, scheduler도 함께 담는 H3 pipe V2를 만들거나 편집합니다. |\n| **LC Model Info ℹ️** | MODEL을 아무거나 연결하세요: 와이어를 따라 업스트림(LoRA 로더, 머지, LC Model Optimizer)으로 올라가며 각 파일의 헤더만 읽습니다. 저장 노드가 구워 넣은 워크플로우(베이스 모델, strength가 있는 LoRA, 머지), Kohya 학습 정보와 트리거 태그, 카드 필드, GGUF 타입을 보여 줍니다. 노드에서 실시간으로 확인되며 큐에 넣을 필요가 없습니다. 모델은 그대로 통과합니다. |\n| **LC Model Optimizer (pipe) ⚡** | LC Model Optimizer와 같고 LC_PIPE 출력이 추가됩니다 (model 2는 Ideogram 4의 두 번째 모델을 담습니다). |\n| **LC Model Optimizer Video (pipe) ⚡** | LC Model Optimizer Video와 같고 LC_PIPE 출력이 추가됩니다 (vae 2는 오디오 VAE를 담습니다). |\n| **LC Model Optimizer Video ⚡** | 비디오 버전입니다. MiniMax H3와 LTX 2.5 / 2.3용으로 모델, 텍스트 인코더, 비디오와 오디오 VAE, latent 업스케일러를 불러옵니다. H3에서는 Spectrum과 Veda가 설치되어 있으면 켤 수 있습니다(spectrum / veda 위젯). |\n| **LC Model Optimizer ⚡** | 카드에 맞는 모델, 텍스트 인코더, VAE를 그 카드에서 통하는 속도 향상과 함께 불러와요. 처음 실행할 때 추천 파일을 다운로드해요. GGUF 모델은 calcuis의 gguf 팩으로 불러와요. Krea 2 (Turbo와 Raw), SDXL, Illustrious, Pony 등을 지원하고, 다른 모델은 Custom으로 써요. MOSS Image와 Krea 2에는 Spectrum이 들어 있어요 (spectrum 위젯으로 끄기). |\n| **LC MOSS Layout Prompt 🗺️** | 박스를 MOSS Image의 레이아웃 프롬프트로 바꿉니다. 물체, 캐릭터, 텍스트가 각자의 캡션과 팔레트를 가지고 그린 자리에 그대로 놓입니다. 캔버스(단일, 멀티 패널, 콜라주), 매체 태그와 팔레트를 더하고, 박스를 그린 크기를 출력합니다. |\n| **LC Mute** (JS only) | LC Bypasser처럼 작동하지만, Off로 하면 연결된 노드를 바이패스하는 대신 뮤트합니다. |\n| **LC Natural Look 🍃** | AI 느낌을 걷어냅니다. 가장 튀는 색만 눌러 주고, 주황빛 피부와 플라스틱 같은 피부를 차분하게 하고, 하이라이트를 부드럽게 굴리고, 번들거리는 광택을 줄이고 미세한 질감을 살립니다(밋밋한 피부는 제외). 블랙 포인트, 대비, 밝기는 그대로 두고 아주 약한 그레인을 더합니다. |\n| **LC Negative** | negative 프롬프트 텍스트 박스. |\n| **LC Node Snapshot 📋** | 다른 노드의 위젯을 읽어서 선택한 값, 모든 줄, 또는 JSON을 출력합니다. |\n| **LC Note 📝** (JS only) | 클릭하면 LC Vision을 통해 ComfyUI의 14개 언어로 번역되는 마크다운 노트이며, @[card](link) 줄은 링크 카드로 표시합니다. |\n| **LC Notify 🔊** | 노드가 실행될 때 선택한 소리를 재생합니다 (항상, 큐가 비었을 때, 또는 안 함). |\n| **LC Phone Filters 📱** | 37가지 폰 앱 필터 프리셋(1977, Aden, Brooklyn 등)과 strength, 노드 위 와이프. |\n| **LC Photo Style 📷** | 스타일 프리셋, 슬라이더, strength 블렌드로 이미지에 폰 카메라 룩을 줍니다. |\n| **LC Pipe (in/edit)** | 값을 LC_PIPE에 담거나, 기존 pipe에 오버라이드를 합칩니다. |\n| **LC Pipe Combine** | 두 번째 pipe로 맨 위 pipe를 편집합니다: edit pipe가 가진 것은 맨 위 pipe를 덮어쓰고, 나머지는 그대로 따라갑니다. |\n| **LC Pipe Out** | LC_PIPE를 개별 소켓으로 펼치고 pipe는 그대로 넘깁니다. protect_mask (맨 아래): pipe 디테일러가 다시 그린 영역. |\n| **LC Preview Image 🖼️** | 이미지를 미리 보여주며, 아무것도 들어오지 않아도 오류 없이 조용히 있습니다. |\n| **LC Preview Mask 🎭** | 마스크를 미리 보여주며, 아무것도 들어오지 않아도 오류 없이 조용히 있습니다. |\n| **LC Prompt List 🗒️** | 한 줄에 프롬프트 하나, 목록으로 보내요: 각 줄이 따로 한 번씩 생성돼요. 빈 줄과 //로 시작하는 줄은 빠져요. CR Prompt List를 대신해요 (입력과 출력이 같아요). |\n| **LC Prompt to Conditioning + Zero** | 프롬프트를 conditioning으로 인코딩하고, negative용으로 0으로 만든 사본도 함께 출력합니다. |\n| **LC Reference Latent** | conditioning에 최대 8개의 레퍼런스 latent를 붙입니다. 여러 개를 이어 붙이면 더해집니다. |\n| **LC RTX Super Resolution ⚡** | 사진이나 영상 프레임에 NVIDIA RTX Video Super Resolution을 적용합니다: 최대 4배 업스케일, 깨끗한 원본 업스케일, denoise 또는 deblur. 품질 LOW에서 ULTRA, 배율 또는 메가픽셀, strength. nvidia-vfx가 없으면 Install RTX support 버튼이 나타납니다. |\n| **LC Sampler Configure** | 듀얼 패스 샘플러 설정의 중앙 관리: steps, swap 지점, detailer steps, denoise, CFG들, sampler, scheduler. |\n| **LC Sampler Configure (pipe)** | 선택적 pipe 입력과 pipe 출력이 있는 듀얼 패스 샘플러 설정. |\n| **LC Sampler Configure Pipe Out** | LC_PIPE를 sampler configure 소켓들과 latent로 풀어냅니다. |\n| **LC Sampler Configure Simple** | CFG 하나, step swap 없는 싱글 패스 샘플러 설정. |\n| **LC Sampler Configure Simple (pipe)** | LC_PIPE에서 읽고 LC_PIPE에 쓰는 단순 샘플러 설정. |\n| **LC Sampler Scheduler ⚙️** | sampler와 scheduler를 한 번만 고르고 모든 KSampler에 연결해서 한꺼번에 바뀌게 합니다. |\n| **LC Save Image 💾** | 워크플로 메타데이터와 함께 이미지를 저장하며, LC Save Metadata와 함께 쓰면 CivitAI 파라미터도 저장합니다. |\n| **LC Save Metadata 🏷️** | LC Save Image가 기록할 메타데이터(모델, AIR 또는 URL, 설정)를 만듭니다. |\n| **LC Seed Jump 🌱** | seed와 jump 값을 받아 seed와 연속된 5번의 jump 결과를 출력합니다. |\n| **LC Sharpen Pro** | 흐릿함을 되돌립니다(디컨볼루션). 질감과 선명도, 헤일로 제어, 피부 보호 포함(LC Skin Master의 skin_mask는 선택). 사진, 라인 아트, 애니메, 일러스트용 프리셋이 있습니다. |\n| **LC Show Any 🔤** | 어떤 값이든 노드에 표시하고 타입을 바꾸지 않고 그대로 통과시킵니다. |\n| **LC Show Text 🔤** | 문자열을 노드에 표시하고 넘깁니다. |\n| **LC Sigma Curve** | 노드 위에 커스텀 sigma 곡선을 그리고, 저장하고, 재사용합니다. |\n| **LC Sigma Resample** | 시작과 끝 sigma는 유지하면서 sigma 곡선을 새 step 수로 리샘플링합니다 (LCChangeStepCount로도 등록됨). |\n| **LC Sigmas (BETA)** | 한 패스와 두 패스 샘플링용 하나의 scheduler: 그래프를 드래그해서 휠 수 있는 sigma 곡선 프리셋(base, beta, flowmatch, hyperbolic, gaussian, 저장한 곡선), step swap, denoise, 두 번째 패스의 continue 또는 renoise, sigma shift. 일반 샘플러 이름과 RES4LYF / ClownShark 샘플러 이름을 지원합니다. |\n| **LC Size Pad 📐** | 가로 x 세로를 위한 2D 슬라이더: 프레임의 모서리를 드래그하세요. 모델 프리셋(MiniMax H3, Krea 2, SDXL, LTX, Klein 9B, Wan 2.2)은 모델의 step에 맞춰 스냅되고 메가픽셀 한도에서 멈춥니다. 종횡비 잠금과 세로 / 가로 전환이 있습니다. |\n| **LC Skin Beauty ✨** | 프리셋으로 LAB에서 피부를 차갑게, 밝게, 고르게 보정하며 하이라이트를 보호하고 마스크는 선택 사항입니다. GPU 또는 CPU에서 실행됩니다. |\n| **LC Skin Master ✨ (BETA)** | 피부 처리 체인 전체를 하나의 노드에, 얼굴을 인식한 하나의 피부 맵 위에서 처리합니다. 거칠기, 모공, 잡티, 주름, 주근깨, 눈, 피부 톤과 색을 각각 한 번씩 처리합니다. 가벼운 정리부터 플라스틱 피부 복원, 세월감 있는 피부와 햇볕에 그을린 피부까지 프리셋이 있습니다. Sharpen Pro용 피부 마스크를 출력합니다. |\n| **LC Skin Texture ✨ (BETA)** | 너무 매끈하게 나온 피부에 실제 피부 사진에서 가져온 진짜 모공 질감(미세한 요철만, 색은 제외)을 추가합니다. 선택적 protect_mask로 디테일러 영역은 건드리지 않습니다. |\n| **LC Skin Upscale** | 마스크된 피부 영역만 CNN 모델로 업스케일하고 다시 블렌딩합니다. 선택적 protect_mask로 디테일러 영역은 건드리지 않습니다. |\n| **LC Slider** | 노드 앞면의 슬라이더로 int 또는 float를 출력합니다. |\n| **LC Speed Boost (BETA) 🚀** | 샘플링이 약 2배 빨라지고(SDXL / Pony / Illustrious에서는 약 1.4배) 품질은 같습니다. 그림이 절반 크기로 시작해서 중간에 전체 크기로 커집니다. 하이 패스 샘플러에 연결하세요. MOSS Image에서는 작동하지 않습니다. |\n| **LC Speed Boost 🚀 KSampler (BETA)** | Speed Boost가 내장된 KSampler입니다. 입력은 같고, 다른 샘플러에 이어 쓸 수 있도록 start / end at step이 추가됐습니다. ClownShark (RES4LYF) 샘플러를 지원합니다. |\n| **LC Split Sigma Scheduler** | 듀얼 모델 SamplerCustomAdvanced를 위해 두 모델 사이에서 sigmas를 나눕니다. |\n| **LC Split Sigmas (Advanced)** | swap step에서 sigma 곡선을 high와 low 두 세트로 나눕니다. |\n| **LC Stop 🛑** | 켤 수 있는 큐 중단점. 재생 버튼(또는 Run)은 같은 시드로 이어서 실행하므로 스톱 위쪽은 모두 캐시에서 옵니다. |\n| **LC Text Overlay** | 드래그로 위치를 정하고 폰트 크기와 색을 지정해서 이미지에 텍스트를 그립니다. |\n| **LC Text Remove 🔪** | 텍스트에서 최대 20개의 부분 문자열을 순서대로 제거합니다. |\n| **LC Text Replace ✂️** | 텍스트에 최대 20개의 찾아 바꾸기 쌍(정규식 선택)을 실행합니다. |\n| **LC Timer ⏱️** | 모든 실행 시간을 재고, 가장 최근 실행을 직전 5번과 비교해 점수를 매깁니다. 빠르면 초록, 느리면 빨강입니다. 최근 10번의 실행을 나열합니다. 중단된 실행과 전부 캐시된 실행은 제외됩니다. |\n| **LC Tone Match** | 이미지의 세밀한 디테일은 유지하면서 레퍼런스의 전체적인 조명과 색을 가져옵니다. 마스크는 선택 사항입니다. |\n| **LC Vibrance** | 스마트 채도(vibrance)에 선택적인 일반 채도와 피부 보호를 더했습니다. |\n| **LC Vignette** | 이미지 가장자리를 어둡게 또는 밝게 합니다. |\n| **LC VRAM Cache Clear** | 실행될 때 GPU와 모델 캐시를 비우는 통과 노드이며, 뒤에 아무것도 없는 독립 브랜치에서도 작동합니다. |\n| **LC Watermark 💧** | 드래그로 위치를 정하는 워터마크 이미지를 합성하며 크기와 불투명도를 실시간으로 조절합니다. 투명 PNG는 watermark_mask를 통해 투명도가 유지됩니다. |\n| **LC Weighted Prompt ⚖️** | 단어마다 가중치가 있는 프롬프트 상자: 단어를 클릭하고 슬라이더를 움직여요 (1보다 크면 초록색과 숫자, 작으면 빨간색, 0 아래는 빠져요). 상자에 직접 쓰거나 프롬프트를 연결해서 여기서 고쳐요. block (on change, always, never)이 어느 쪽을 쓸지 정해요. Krea 2 (일반, Image Reference Edit, Identity Edit, ControlNet), MOSS Image, Anima, CLIP 모델을 지원해요. |\n| **LC Widget To String** | 다른 노드의 위젯을 문자열로 읽어옵니다. |\n| **LC ✂️ Duplicate Tags 🏷️** | 중복된 태그를 제거해서 가중치가 두 배가 되지 않게 합니다 (long_hair = (long hair:1.2)). 선택적 두 번째 프롬프트로 두 개를 합쳐서 함께 정리할 수 있습니다. |\n| **LC 🚦** | boolean용 신호등: true일 때 한 색, false일 때 한 색(또는 없음). 색은 톱니바퀴 뒤에 있습니다. |\n| **Legend Effects 🪄** | Legendaer에게 바치는 오마주: VHS TV, Pixelation, Digital Glitch, Night Vision, Blueprint, Frosted Glass, Gameboy, Edge-Preserving Blur, Morphology, Quantize를 노드 하나에. 룩을 고르면 그 설정만 보여요. strength와 노드 위 와이프 비교가 있어요. |\n| **Prompt** | 프롬프트 텍스트 상자입니다 (예전 이름은 LC Positive). Vision Assistant가 다른 팩의 텍스트 상자 대신 이걸 넣어 주며, 상자가 negative로 들어갈 때는 LC Negative를 넣습니다. |\n| **Prompt to Conditioning** | 텍스트 프롬프트를 CLIP conditioning으로 인코딩합니다. |\n| **🌱LC Seed** | 이 노드만 큐에 넣어도 작동하는 모드가 있는 유틸리티 seed. |\n| **🎨LC Color Palette** | 프리셋이나 이미지에서 4~6색 팔레트를 골라 프롬프트에 사용합니다. |\n| **🎲LC Wildcard** | wildcard 텍스트 파일에서 무작위로 한 줄을 고릅니다. |\n| **📐 LC Aspect Ratio Simplifier** | 이미지 및/또는 마스크를 목표 크기로 리사이즈하고 image, mask, size, empty latent, batch를 출력합니다. |\n| **📐 LC Aspect Ratio Simplifier (pipe)** | Aspect Ratio Simplifier와 같고 Get/Set용 pipe 출력이 추가됩니다. |\n| **📝 LC Save Text** | 텍스트 문자열을 output 폴더의 파일에 씁니다. |\n| **🗒️LC Camera** | 거리와 앵글 프리셋으로 프롬프트의 카메라 프레이밍과 피사계 심도를 설정합니다. |\n| **🗒️LC Lighting** | 프리셋과 직접 쓴 메모로 프롬프트의 조명 스타일과 방향을 설정합니다. |\n| **🗒️LC Scene Builder** | 장면 프리셋과 오브젝트로 장면 설명을 만듭니다. |\n| **🗒️LC Style Selector** | 프롬프트용 스타일 프리셋(과 품질 레벨)을 고르고 직접 쓴 메모를 추가합니다. |\n| **🗒️LC Subject** | 자유 텍스트와 포즈, 동작, 의상, 배치 옵션으로 프롬프트의 피사체를 묘사합니다. |\n| **🗒️LC Subject Array** | 여러 subject 출력을 한 줄로 합칩니다. |\n| **🧩LC Prompt Assembler** | 프롬프트 빌더 조각들(subject, camera, lighting, style, scene)을 하나의 프롬프트 또는 JSON으로 조립합니다. |\n\n---\n\n## LC AV v0.5.23\n\n[github.com/lonecatone23/ComfyUI_LC_AV_nodes](https://github.com/lonecatone23/ComfyUI_LC_AV_nodes)\n\n| 노드 | 기능 |\n|---|---|\n| **LC Audio Channel 🎚️** | 스테레오 오디오를 왼쪽과 오른쪽으로 나누고, 모노는 양쪽에 복제합니다. |\n| **LC Audio Crop ✂️** | 시작 시간부터 끝 시간까지(MM:SS) 오디오를 자릅니다. |\n| **LC Audio Duration ⏱️** | 오디오 길이를 초와 분으로, int와 float로 출력합니다. |\n| **LC Audio EQ 3-Band 🎛️** | low shelf, peaking mid, high shelf로 이루어진 3밴드 이퀄라이저. |\n| **LC Audio Separate 🎼** | Hybrid Demucs로 오디오를 Bass, Drums, Other, Vocals 스템으로 분리합니다. |\n| **LC Audio Volume 🔊** | 슬라이더로 오디오 볼륨을 바꾸고, 게인 후에 소프트 클리핑합니다. |\n| **LC AV Pipe (in/edit) 🎬** | 비디오, 오디오, 설정을 담은 LC_AV_PIPE를 만들거나 편집합니다. |\n| **LC AV Pipe Out 🎬** | LC_AV_PIPE를 슬롯으로 풀어내고 av_pipe는 그대로 넘깁니다. |\n| **LC Create Video 🎬** | 이미지 배치에서 LC_AV_PIPE를 만듭니다 (파일로 인코딩하지는 않습니다). |\n| **LC Final Frame 🖼️** | 이미지 배치의 마지막 프레임을 출력합니다. |\n| **LC Frame Interpolate 🎞️** | RIFE 4.26으로 움직임을 부드럽게: 2배뿐 아니라 원하는 프레임 레이트로, 진행 표시줄이 나옵니다. 하드 컷은 유지하고 영상을 소리에 맞춥니다. |\n| **LC Get Latent Size 📐** | latent의 픽셀 width와 height를 읽고, 비디오 latent는 배치와 프레임도 읽습니다. |\n| **LC H3 Audio Sync (BETA) 🎤** | H3 영상이 모델이 지어낸 소리 대신 내 트랙(노래, 대사 한 줄)을 연기하게 만듭니다. |\n| **LC H3 Make (BETA) 🎥** | LC H3 Story의 샷을 만들어요: 각 샷의 문장 둘레에 인물, 그림, 소리를 더하고, 샘플링해서 저장해요 (테이크, 다음 샷이 시작하는 꼬리, 이어 붙인 영상). |\n| **LC H3 Save to Story (BETA) 🃏** | 그림을 Story 카드나 샷의 시작 / 끝 프레임에 바로 넣습니다. 캐스트, 의상, 소품 그림은 잘라내서 단색 회색 배경에 올립니다. |\n| **LC H3 Shot Card (BETA) 🎞️** | 어떤 이미지 모델로든 만드는 스토리보드 프레임: 한 샷의 시작 또는 끝 프레임 프롬프트, 블로킹 박스, 배경, 캐스트 그림. |\n| **LC H3 Story (BETA) 🎬** | 영상 전체를 노드 하나에: 캐스트, 의상, 장소, 소품, 샷. 각 샷의 문장을 읽고 고칠 수 있고, 렌더 전에 경고해 줘요. 보드에서 샷 하나만 다시 만들거나 고칠 수 있고, 변경 때문에 깨진 샷에 표시가 붙어요. |\n| **LC H3 Story Card Prompt (BETA) 📝** | Story의 캐스트, 의상, 장소, 소품 카드를 어떤 이미지 모델에서든 쓰는 프롬프트와 빈 latent로 바꿔서 카드에 그림을 만들어 줍니다. |\n| **LC H3 Ultimate Upscale (BETA) 🔭** | 일반 MiniMax H3 워크플로우용으로, MMH3 Ultimate Upscale을 한 노드에 담았습니다: H3 latent 업스케일러와 가벼운 타일 H3 패스. |\n| **LC H3 Upscale (BETA) 🔭** | 컷이 확정되면, Run 한 번에 긴 영상의 세그먼트 하나를 저장된 latent에서 업스케일합니다. |\n| **LC Load Audio 📂** | input 폴더에서 오디오를 불러오며, 시작과 끝 트림과 미리듣기 플레이어가 있습니다. |\n| **LC Load Video 🎞️** | 영상을 있는 그대로 불러옵니다: 모든 프레임을 원래 크기로, 소리와 원래 프레임 속도도 함께. 크기 조정이나 프레임 건너뛰기는 없습니다. |\n| **LC Pipe → AV Pipe 🔌** | LC_PIPE 또는 MiniMax H3 pipe를 LC_AV_PIPE로 변환하며, 공통 필드만 복사합니다. |\n| **LC Preview Video 📺** | 노드에서 영상을 재생합니다. 파일이든 소리가 있는 프레임 묶음이든 됩니다. 출력 폴더에는 아무것도 저장되지 않습니다. |\n| **LC Save Video Metadata 🏷️** | LC Save Metadata와 같은 메타데이터를 LC Save Image 또는 LC Save Video용으로 만듭니다. |\n| **LC Save Video 💾** | Video Combine 스타일 옵션(프레임 레이트, 반복, 포맷, pingpong, crf, pix_fmt, 오디오)으로 영상을 저장합니다. relay 입력은 LC Relay VSR Upscale의 영상을 받아 몇 프레임씩 저장합니다(5초 4x: RAM 12 GB 대신 0.3 GB). Relay를 바이패스하면 images를 대신 저장합니다. 색이 VHS와 같습니다(BT.709). SVT-AV1 없이도 AV1을 쓸 수 있습니다. |\n| **LC VAE Decode 🧩** | full과 tiled 디코딩을 전환할 수 있는 VAE Decode. |\n\n---\n\n## LC MaskMaker v0.29.15\n\n[github.com/lonecatone23/ComfyUI_LC_MaskMaker_nodes](https://github.com/lonecatone23/ComfyUI_LC_MaskMaker_nodes)\n\n| 노드 | 기능 |\n|---|---|\n| **LC 360 View 🧭** | 360 파노라마에서 평면 카메라 뷰를 뽑아냅니다. 노드 위에서 드래그해 방향을 잡고, name: yaw, pitch, fov 형식으로 뷰를 나열하면 전부 한 배치로 받습니다. 파노라마 하나로 한 장면의 모든 샷이 같은 방이 됩니다. |\n| **LC Auto Adjust 🔆** | 원클릭 자동 레벨(채널별, 휘도, 채도, 모노), 트림, strength 블렌드, 선택적 마스크. |\n| **LC Character Detailer (BETA) 🩹** | 캐릭터 한 명용 LC Smart Detailer입니다. SAM 3가 일치하는 것을 모두 찾은 뒤, 고른 하나만 다시 그립니다(왼쪽에서 오른쪽, 가장 큰 것, 또는 LC Bounding Boxes 박스 안의 것). 캐릭터마다 자기 LoRA 브랜치와 디테일러를 주면 캐릭터 LoRA가 다른 얼굴로 번지지 않습니다. |\n| **LC Character Detailer (pipe) (BETA) 🩹** | 같은 노드를 LC pipe의 모델, VAE, 샘플러 설정으로 씁니다. 연결한 모델이 pipe의 모델보다 우선합니다. |\n| **LC Create Mask 🖼️✏️** | 포인트나 자유형 연필로 노드 위에 바로 마스크를 그리며, feather, invert, 불투명도가 내장되어 있습니다. |\n| **LC Depth Anything V2 🌊** | Depth Anything V2 depth map(밝을수록 가까움)을 이미지와 마스크로 만듭니다. 모델 목록은 어느 컴퓨터에서나 똑같이 보입니다. |\n| **LC Detail Finder (BETA) 🎯** | 캐릭터별 디테일러 1단계: SAM 3가 일치하는 것을 한 번에 모두 찾습니다(모든 얼굴). face, hair로 하면 얼굴마다 자기 머리카락이 붙습니다. |\n| **LC Detail Sorter (BETA) 🔢** | 2단계: SAM 3 마스크를 순서대로 정렬하고(왼쪽에서 오른쪽, 오른쪽에서 왼쪽, 위에서 아래, 큰 순서) 출력 1~8로 나눕니다. 미리보기에 번호가 표시됩니다. |\n| **LC Detailer For Each (BETA) 🩹** | 3단계, 캐릭터마다 하나: 그 사람을 자기 LoRA 브랜치, conditioning된 프롬프트, 시드로 다시 그립니다. 단독으로도 LC pipe 위에서도 작동하며, 연결한 것이 pipe보다 우선합니다. LC Smart Detailer와 같은 엔진입니다. |\n| **LC Face Crop 📐** | 무작정 가운데를 자르는 대신 얼굴이 잘 배치되도록 포맷에 맞게 크롭하며, Aspect Ratio Simplifier 프리셋을 사용합니다. 프레이밍은 가장 넓게부터 얼굴만까지. |\n| **LC Image Blend Advance 🎚️** | 배경 위에 레이어를 배치하고(위치, 스케일, 회전, 미러) 선택적 마스크를 통해 29가지 블렌드 모드로 합성합니다. |\n| **LC Outpaint, Rotate, & Pad 🔄** | 노드 위에서 드래그해 그림을 돌리고, 자르고, 패딩합니다. 세로 / 가로 전환이 있습니다. 마스크는 패딩과 회전으로 생긴 모서리를 덮습니다. max_megapixels가 프레임을 그 크기에서 멈춥니다. |\n| **LC Krea2 AnyPaint 🩹** | AnyPaint LoRA를 이용한 Krea 2 inpaint와 outpaint. 마스크 바깥은 정확히 원래대로 돌아오고 이음매도 사라집니다. |\n| **LC Z-Image AnyPaint 🩹** | Z-Image(Turbo / Base)용 같은 inpaint와 outpaint로, LoRA 대신 Z-Image Fun ControlNet Union 2.1 patch로 칠합니다. 마스크 바깥은 정확히 원래대로 돌아옵니다. |\n| **LC SDXL AnyPaint 🩹** | 모든 SDXL 체크포인트(SDXL, Pony, Illustrious)용 같은 inpaint와 outpaint로, ControlNet Union ProMax로 칠하며 Fooocus inpaint는 선택 사항입니다. LoRA 필요 없음. |\n| **LC Flux 3 Klein AnyPaint 🩹** | Flux 3 Klein용 같은 inpaint와 outpaint로, AusBoss의 Outpaint LoRA를 써서 edit 모드로 칠합니다: 영역이 회색으로 채워지고 모델이 그걸 채우는 동안 내 그림은 그대로 유지됩니다. |\n| **LC MOSS Box Edit 🖌️ (BETA)** | LC Bounding Boxes로 그림에 박스를 그리면 MOSS Image가 그림 전체를 보면서 그 박스만 다시 그립니다. 박스 밖은 픽셀 하나까지 그대로입니다. 옷을 바꾸거나, 캐릭터나 간판을 더하거나, 무언가를 지울 수 있습니다. |\n| **LC MOSS Control 🕹️** | MOSS Image용 ControlNet입니다. 그림이 깊이 맵(포즈, 형태)과/또는 색 영역 맵을 따르며, 각각 끝나는 지점을 정할 수 있습니다. darask0의 Color-Depth Control 어댑터를 실행합니다. |\n| **LC Mask Refine ✨** | trimap으로 마스크를 다듬으며, 가장자리 밴드에만 guided filter 또는 VITMatte를 사용하고 before/after 와이프가 있습니다. |\n| **LC Normal Map (BAE) 🗺️** | ControlNet의 normal_bae가 만드는 것과 같은 스타일의 BAE 표면 normal map(RGB = XYZ)을 만듭니다. |\n| **LC Outpaint 🖌️➕** | 노드 위에서 캔버스 가장자리를 바깥으로 드래그해 회색 캔버스와 새 영역의 마스크를 만듭니다. max_megapixels가 가장자리를 그 크기에서 멈춥니다. |\n| **LC Person Mask 🧍** | Segformer 또는 MediaPipe로 사람의 부위(얼굴, 머리카락, 몸, 옷, 액세서리, 배경)를 선택합니다. remove_features는 피부 전용 마스크를 만듭니다. |\n| **LC Relay VSR Upscale 🧩** | RelayVSR 업스케일을 노드 하나에: 모델, VAE, 샘플러 내장, 처음 사용할 때 다운로드. 2x 또는 4x. 부드럽게 처리해서 머리카락과 가장자리가 자연스럽게 유지됩니다(잉크로 그린 듯한 속눈썹, 헤일로, 색 틀어짐 없음). source: video는 프레임을 맞춰 안정적으로 유지하고, image는 사진마다 따로 업스케일합니다. 8 GB 카드에서도 VRAM이 일정합니다(RTX 5060 노트북에서 5초 클립 4x 약 104초). ComfyUI nightly(2026년 11월 5일 이후) 또는 다음 안정판 필요. relay 출력은 LC Save Video로 연결되어 몇 프레임씩 저장하므로 RAM이 가득 차지 않습니다. detect_faces(켜짐)는 얼굴을 스스로 찾아 Relay의 그레인이 얼굴에 올라가지 않게 합니다(사진은 추가 비용 없음, 영상은 3프레임마다). protect_mask를 연결하면 그쪽이 우선. upscale에는 2x / 4x bf16(10 GB), 원본 릴리스도 있습니다: 출력은 사실상 같고 VRAM을 약 5 GB 더 씁니다. |\n| **LC Remove Background ✂️** | BiRefNet으로 배경을 제거하고 RGBA 컷아웃, 마스크, 단색 배경 위의 피사체를 출력합니다. |\n| **LC Segment Anything 🎯** | GroundingDINO + SAM 또는 SAM 3로, 설명을 입력해서 대상을 선택하며 엣지 refine은 선택 사항입니다. |\n| **LC Smart Detailer 🩹** | SEGS / Impact 디테일러를 대체합니다. 입력한 대상(손, 얼굴, 눈)을 SAM 3로 찾고 각각을 업스케일된 크롭에서 다시 그린 뒤 블렌딩합니다. |\n| **LC Smart Detailer (pipe) 🩹** | 같은 기능이며 모델, VAE, 샘플러 설정을 LC pipe에서 가져옵니다. 직접 연결한 모델이나 VAE가 pipe의 것을 덮어씁니다. |\n| **LC Touch Mask (BETA) 👆** | 한 가지를 정확하게 마스크합니다. 둘레를 그리면 SAM 3가 가장자리를 찾습니다. 탭하면 다음으로 큰 것으로 넓어지고(얼굴, 얼굴 + 머리카락, 머리, 사람), 더블 탭하면 한 단계 돌아갑니다. Ctrl + 그리기로 잘라냅니다. 임계값, 스무딩, 섬세한 가장자리 마무리가 들어 있습니다. |\n| **LC VOSR2 Upscale 🧩** | VOSR 2.0 내장의 빠른 저VRAM 업스케일: 그림을 다시 그리지 않고 선명하게 하고 잔 디테일을 추가합니다. 1.5배에서 4배는 한 패스, 6배와 8배는 두 패스. |\n| **LC VOSR2 Upscale (pipe) 🧩** | pipe 디테일러 다음에 LC pipe 위에서 쓰는 같은 노드. 디테일러가 다룬 영역을 새 크기로 넘겨줍니다 (protected 출력). LC Skin Upscale / LC Skin Texture용. |\n\n---\n\n## LC Vision v1.6.28\n\n[github.com/lonecatone23/ComfyUI_LC_Vision_nodes](https://github.com/lonecatone23/ComfyUI_LC_Vision_nodes)\n\n| 노드 | 기능 |\n|---|---|\n| **LC Vision Showrunner (BETA) 🎬** | 긴 MiniMax H3 영상을 CUT / CONTINUE 세그먼트로 기획하고, 각 이음새를 직전 세그먼트가 실제로 끝난 방식에 맞게 고치며, 프로젝트 파일(샷 리스트, 레퍼런스, 설정)을 저장 / 불러옵니다. |\n| **LC Vision Reviewer 🕵️ (BETA)** | 품질 검문소: 손, 얼굴, 텍스트, 아티팩트, 프롬프트 일치 여부, 직접 만든 질문에 대한 예/아니오 검사. 나쁜 렌더를 표시하거나 그 뒤의 모든 것을 막습니다. |\n| **LC Vision Shot List (BETA) 📋** | Showrunner를 위한 스토리를 양식처럼 채웁니다: 장소, 캐스트, 샷마다 한 줄. 세그먼트 수를 제안하고 샷에 비해 너무 긴 대사를 경고합니다. AI는 쓰지 않습니다. |\n| **LC Vision Storyboard Builder (BETA) 🎞️** | Showrunner 영화용 그림입니다. 프로젝트에 빠진 것(얼굴, 장소, 앵커)을 찾아내고, 그림마다 프롬프트, latent, 시드를 하나씩 만들어 샘플러에 넘깁니다. |\n| **LC Vision Storyboard Save (BETA) 🎞️** | Storyboard Builder의 그림을 프로젝트에 저장합니다. Showrunner에서 📂 Load를 누르면 Reference Assembler에 추가됩니다. |\n| **LC Vision Storyboard Sheet (BETA) 🎞️** | 노드 위의 스토리보드입니다. 그림마다 카드 한 장. ✅ Use는 Reference Assembler에 넣고, ↻는 다시 만들고, ✎는 프롬프트를 바꿉니다. 연결할 것은 없습니다. |\n| **LC Vision Redirect (BETA) 🔬** | 예전 워크플로우를 위해 남겨 두었습니다: 이제 LC Vision Showrunner가 이음새를 직접 고칩니다. |\n| **LC Vision Danbooru Caption 🏷️** | 이미지 한 장이나 대략적인 아이디어에서 SDXL, Pony, Illustrious용 프롬프트를 만듭니다: 짧거나 상세한 캡션, 진짜 Danbooru 태그, 또는 문장 + 태그. 품질 태그와 짝이 맞는 negative는 선택 사항입니다. |\n| **LC Vision Caption 📝** | 불러온 LC Vision 모델, 지시문, 최대 세 장의 레퍼런스 이미지, 레퍼런스 비디오 하나로 텍스트를 생성합니다. |\n| **LC Vision Loader 🔬** | Qwen-VL GGUF 모델과 vision projector를 불러옵니다. keep_model_loaded를 끄면 Vision 노드가 끝난 뒤 언로드해서 이미지 모델이 카드 전체를 쓸 수 있습니다. |\n| **LC Vision Moviemaker 🎥** | 비디오를 한 번의 호출로 여러 개의 연속 세그먼트로 기획하며, 각각 독립된 MiniMax H3 프롬프트로 작성됩니다. |\n| **LC Vision Prompt Enhancer 📝** | LC Vision 모델로 프리셋 지시를 써서 프롬프트를 다시 씁니다(텍스트 전용). LC MOSS Layout Prompt를 연결하면 박스는 유지한 채 장면과 박스를 다듬습니다. |\n\n---\n\n## LC ModelBuilder v0.7.5\n\n[github.com/lonecatone23/ComfyUI_LC_ModelBuilder_nodes](https://github.com/lonecatone23/ComfyUI_LC_ModelBuilder_nodes)\n\n| 노드 | 기능 |\n|---|---|\n| **LC Anima Block Merge Advanced** | Anima용 Krea2 Block Merge Advanced입니다. 28개 블록에 걸친 곡선에 x embedder, timestep embedder와 norm, LLM adapter, final layer 슬라이더가 더해집니다. 프리셋 포함. |\n| **LC Anima LoRA Block Scan** | Anima용 Krea2 LoRA Block Scan으로, 애니메 얼굴을 CCIP로 채점합니다. |\n| **LC Anima LoRA Editor** | Anima용 Krea2 LoRA Editor입니다. 조작은 같고, Anima의 28개 블록과 레이어 종류를 씁니다. |\n| **LC Anima LoRA Merge** | Anima용 Krea2 LoRA Merge입니다. Anima LoRA 2~4개를 블록별 A / B 곡선으로 합칩니다. |\n| **LC Checkpoint Save** | 올인원 체크포인트(model, clip, vae)를 저장하며, 저장을 건너뛰는 enabled 토글이 있습니다. metadata: keep all 또는 necessary only (워크플로우나 학습 정보 없음). |\n| **LC Diffusion Model Save** | clip이나 vae 없이 diffusion model만 저장합니다. metadata 스위치는 같습니다. |\n| **LC Face Variety Scorer 🧑‍🤝‍🧑** | 배치 안의 얼굴들이 얼마나 비슷한지 점수를 매기고 (0에서 1, 낮을수록 다양함), 단체 사진용 crowd 점수도 매깁니다. 사진(ArcFace) 또는 애니메이션(CCIP) 모드. |\n| **LC Fingerprint Identify 🔎** | 이 모델은 무엇으로 만들어졌을까? 핑거프린트 라이브러리를 바탕으로 블록별 레시피를 알려 줍니다: 어떤 모델이 어떤 비율로 머지되었는지, 머지된 LoRA와 그 strength, 각각에 대한 확신도, 히트맵. 라이브러리에 있는 것만 이름을 알려 줄 수 있습니다. |\n| **LC Fingerprint Library 📚** | 폴더를 훑어서 모든 모델과 LoRA의 작은 핑거프린트(약 1 MB)를 계열과 함께 저장합니다. 한 번 들어가면 원본은 지워도 됩니다. 다시 실행하면 새것만 추가합니다. |\n| **LC Krea2 Block Merge Advanced** | 28개 블록에 걸친 드래그 가능한 블록별 비율 곡선과 이름 붙은 영역용 슬라이더로 Krea2 체크포인트를 머지합니다. |\n| **LC Krea2 LoRA Block Scan** | 블록 그룹을 하나씩 꺼 보면서 LoRA가 어디서 얼굴을 고정하거나 이미지 전체를 바꾸는지 찾고, Editor용 블록 곡선을 제안합니다. |\n| **LC Krea2 LoRA Editor** | 28개 블록을 각각 올리거나 내려서 Krea 2 LoRA를 불러옵니다. attention과 MLP를 따로 스케일하고 스파이크를 완화합니다. |\n| **LC Krea2 LoRA Merge** | 블록별 A / B 곡선(sum 또는 TIES)으로 Krea 2 LoRA 두 개에서 네 개를 머지합니다. |\n| **LC Krea2 Semantic Vector Tuner** | 단일 Krea2 체크포인트 가중치의 특정 영역을 증폭하거나 약화합니다 (머지가 아님). |\n| **LC LoRA Bake 🍞** | LoRA를 최대 4개까지 모델 파일에 구워 넣고 새 모델로 저장합니다. 블록별 곡선은 선택입니다. ComfyUI가 읽는 모든 LoRA 형식을 읽고, 레시피를 파일에 기록합니다. CPU에서 실행되므로 VRAM이 필요 없습니다. |\n| **LC LoRA Extract** | finetune을 LoRA로 바꿉니다 (finetune에서 base를 뺀 것): 모든 레이어, 블록만, 또는 커스텀 블록 목록. 변하지 않은 레이어는 제외됩니다. |\n| **LC LoRA Save** | 편집하거나 머지한 LoRA를 모든 편집을 구워 넣은 표준 파일로 저장하며, 새 rank로 저장할 수도 있고 enabled와 embed_workflow 스위치가 있습니다. |\n| **LC Model Fingerprint 🔍** | 모델 하나를 레퍼런스와 가중치 자체로 레이어별 비교합니다: 다른 정밀도의 같은 모델인지, 그 위에 만든 것인지, 블록 머지인지(차트에 어떤 블록인지 표시) 아니면 관련이 없는지. LoRA와 함께 쓰면 머지되었는지, 대략 어느 strength였는지 알려 줍니다. |\n| **LC Model Merge (any precision)** | 서로 다른 정밀도로 저장된 두 모델을 머지합니다 (bf16과 fp8, int8, nvfp4 또는 GGUF, 순서 무관). 결과는 풀 정밀도로 유지됩니다. |\n| **LC Model Quantize 🗜️** | 모델의 더 작은 복사본을 저장합니다: fp8, mxfp8, nvfp4, int8 또는 int4 (기본 로더로 불러오기) 또는 GGUF Q8_0에서 Q2_K. 연결한 MODEL(LoRA 구워 넣음)에서, 또는 어떤 크기의 파일에서든 바로 만들 수 있습니다. |\n| **LC MOSS Block Merge Advanced** | MOSS Image 모델을 42개 레이어에 걸친 드래그 가능한 레이어별 비율 곡선으로 병합하고, 레이어 밖 부분(그림 입력, 프롬프트 입력, timestep, modulation, final layer)은 슬라이더로 조절합니다. 프리셋을 저장하고 불러올 수 있습니다. |\n| **LC Scoreboard 🏆** | A / B 테스트용 대결 카운터: #1 Win, Tie, #2 Win 버튼이 있고 선두와 비율이 노드에 표시됩니다. |\n| **LC Strip Metadata 🧹** | 이미 저장한 모델에서 메타데이터(내장 워크플로우, 학습 정보, 제목)를 청소합니다. 가중치는 바이트 단위로 그대로 복사되며 불러오지 않으므로, 이전과 똑같이 로드됩니다. _clean 복사본을 쓰거나 원본을 대체합니다. |\n| **LC VAE Compare** | 같은 latent를 최대 여섯 개의 VAE로 디코딩해서, 1:1 디테일 크롭, 선명도 수치, 각각이 첫 번째에서 얼마나 떨어져 있는지와 함께 나란히 보여 줍니다. |\n| **LC VAE Merge** | 같은 계열의 두 VAE 디코더를 큰 형태부터 미세한 질감까지 머지합니다. 인코더는 base의 것이 유지되어서, 결과물이 그 VAE용으로 만든 모델에 그대로 맞습니다. |\n| **LC VAE Save** | VAE를 fp32, bf16, fp16으로 models/vae에 저장합니다. |\n\n---\n\"True Nothing is. Permitted Everything is\"- Yoda Auditore, Assassin's Wars",
              "src": "2be366c1",
              "srcTitle": "Total Nodes (Busy work)"
            }
          },
          "titles": {
            "en": "Total Nodes (Busy work)",
            "zh": "节点总览（打发时间的活儿）",
            "ja": "ノード総数（暇つぶし）",
            "ko": "전체 노드 (심심풀이)"
          }
        },
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "English ✏️",
        "# Total nodes\n\n**257 nodes** across 5 packs. Deprecated nodes are listed but not counted.\n\n| Pack | Nodes | Version | Link |\n|---|---|---|---|\n| LC123 | 162 | v1.56.6 | [Repo](https://github.com/lonecatone23/ComfyUI_LC123_nodes) |\n| LC AV | 27 | v0.5.23 | [Repo](https://github.com/lonecatone23/ComfyUI_LC_AV_nodes) |\n| LC MaskMaker | 30 | v0.29.15 | [Repo](https://github.com/lonecatone23/ComfyUI_LC_MaskMaker_nodes) |\n| LC Vision | 12 | v1.6.28 | [Repo](https://github.com/lonecatone23/ComfyUI_LC_Vision_nodes) |\n| LC ModelBuilder | 26 | v0.7.5 | [Repo](https://github.com/lonecatone23/ComfyUI_LC_ModelBuilder_nodes) |\n\n---\n\n## LC123 v1.56.6\n\n[github.com/lonecatone23/ComfyUI_LC123_nodes](https://github.com/lonecatone23/ComfyUI_LC123_nodes)\n\n| Node | What it does |\n|---|---|\n| **CivitAI 🚩🔪** | Strips flagged terms from a prompt using a compliance list, as an aid only (you are still responsible for CivitAI's terms). Off until you switch it on. |\n| **LC Advanced Folder 📂** | Builds separate filename and path outputs for Image Saver style nodes, with optional prefix-in-path and timestamp. |\n| **LC Anima Box Prompt 🔲** | Regional prompting for Anima: draw boxes in LC Bounding Boxes and write each one like a normal prompt; the main prompt is the scene. No left / right words needed. Wire it between the model and the sampler. Needs Anima Regional Conditioning; the Regional LLLite patch downloads on first use. |\n| **LC Anima Regional Inline Canvas** | Paint RGB regions on the node and get a separate conditioning and mask for each region, for Anima regional prompting. |\n| **LC Any Empty Bool** | Outputs true if any connected input is empty, muted or bypassed. |\n| **LC Any Empty Float** | Runs the same empty test as Any Empty Bool and outputs an empty and a not-empty float. |\n| **LC Any Empty Int** | Runs the same empty test as Any Empty Bool and outputs an empty and a not-empty integer. |\n| **LC Any Index Switch** | Passes through the input at the chosen index and ignores the other slots. |\n| **LC AnySwitch** | Picks the first connected input out of 2 to 20 and locks to its type. |\n| **LC Apply LoRA Stack 🎚️** | Applies a LORA_STACK from LC LoRA Loader Stack (or any pack) to model and/or clip. |\n| **LC Apply LUT** | Applies a .cube 3D LUT from models/luts with a strength from 0 to 2. Starts on LC Crushed Blacks at 0.3. |\n| **LC Aspect Ratio Pipe (In/Edit)** | Packs image, mask, size, latent, batch and resolution into an LC_PIPE, or edits one, overwriting only the wired sockets. |\n| **LC Aspect Ratio Pipe Out** | Unpacks the aspect ratio fields of an LC_PIPE into separate sockets and passes the pipe on. |\n| **LC Auto White Balance** | Corrects white balance automatically with a choice of algorithm, a strength blend and a before/after wipe. |\n| **LC Basic Scheduler** | Outputs sigmas for the full step count (no denoise), made to feed LC Split Sigmas (Advanced) for dual-pass sampling. |\n| **LC Batch Image 🖼️** | Batches images from auto-growing slots, ignoring muted or missing ones and resizing later images to the first. |\n| **LC Bloom** | Adds a glow from the bright areas in Bloom, Pro-Mist (diffusion filter) or Halation (film edge glow) mode. |\n| **LC Boolean** | Turns a boolean, int or float into a clean true/false and shows it on the node. |\n| **LC Boolean Flip** | Outputs the opposite of its toggle. |\n| **LC Boolean Switch** | Picks the on_true or on_false input (any type) based on a boolean. |\n| **LC Boolean Value** | A plain boolean toggle you can wire anywhere. |\n| **LC Bounding Boxes 🔲** | Draw boxes on a picture for Flux 3 or MOSS Image: name each box, pick new, change, move or remove, and describe the result. For MOSS a box can be a character and get its own palette. Works in classic and Nodes 2.0. |\n| **LC Bypass Relay** | Gathers nodes on its left so a hub can mute or bypass all of them together through OPT_CONNECTION. |\n| **LC Bypasser Panel** (JS only) | A widgets-only remote for LC Bypasser, LC Mute or LC Groups Bypasser. |\n| **LC Bypasser** (JS only) | Bypasses linked nodes from one place with toggles or BOOLEAN inputs. |\n| **LC Chromatic Aberration** | Shifts the RGB channels apart to fake lens fringing, with pixel amount and direction per channel. |\n| **LC Color Match 🎨** | Matches an image's colors to a reference (AdaIN / mean-std) with optional skin protection and mask. |\n| **LC Combo Selector** | A dropdown that mirrors the options of another node's combo (sampler, scheduler, etc.) when wired into it. |\n| **LC Control Panel 🎛️** | Up to 16 sliders and on/off switches on one node, each on its own output. The gear on a row sets its type (number or boolean), name, range, step and INT or FLOAT. A new row plugged into a number or boolean input copies that input's settings. |\n| **LC Custom Combo** | Builds your own list of options and outputs the chosen text and its index. |\n| **LC Custom Combo Panel** | A remote control that picks the choice for an LC Custom Combo from another spot. |\n| **LC Denoise 💉** | Injects latent noise scaled to 1 minus your denoise value, using the same denoise you give the sampler. |\n| **LC Depth FX 🌫️** | Uses a depth map for atmospheric haze, light wrap and depth of field with real bokeh, with shared looks. |\n| **LC Detail Daemon (BETA)** | Adds fine detail by hiding a little of the noise from the model over a window of the steps, on the original Detail Daemon schedule. Look only (default), classic and keep structure modes. Sampler version. Goes on the low pass sampler. |\n| **LC Detail Daemon (model) (BETA)** | The same Detail Daemon as a model patch, for a plain KSampler. |\n| **LC Detail Pipe Out** | Unpacks the detailer settings (models, prompts, seed, cfg, sampler, scheduler, steps) from an LC_PIPE. protect_mask (bottom): the areas the pipe detailers redrew. |\n| **LC Dimension Resize 📐** | Adds, subtracts, multiplies or divides width and height by one value and rounds the results to integers. |\n| **LC Directional Blur** | Motion blur along one angle and length, set by dragging an arrow on the node. |\n| **LC Dynamic Overlay** | Overlays image B on image A and lets you adjust the opacity on the node after one run without regenerating. |\n| **LC Easy Folder 📂** | Builds a filename_prefix for the native Save Image node and creates the folders. |\n| **LC Film Grain** | Adds film grain with amount, contrast, size and mono or color options. |\n| **LC Film Grain (Video) 🎞️** | The same grain for a whole clip: GPU, a few frames at a time, with a progress bar. Grain sized to the video, so it survives compression. |\n| **LC Film Stock (B&W)** | Gives a black and white film look from presets with a strength blend. |\n| **LC Film Stock (Color)** | Gives a color film look from presets (toe, shoulder, gamma) with a strength blend. |\n| **LC Float Compare** | Outputs the larger or smaller of two floats. |\n| **LC Flux 3 Layout Prompt 🗺️** | Adds the boxes to a Flux 3 prompt as the table the model was trained on. Write <1>, <2> in the prompt for box 1, box 2. |\n| **LC Flux 3 Reference Latent 🖼️** | Up to 4 reference pictures for Flux 3 on the positive and negative, the negative the model wants and the latent size. |\n| **LC Get Image 📐** | Reads an image's width, height, megapixels, longer side, batch size and aspect ratio. |\n| **LC Groups Bypasser** (JS only) | Bypasses whole groups from one place, with one toggle per group. |\n| **LC Image Adjust** | Basic color grade (hue, saturation, brightness, contrast) with a mild sharpen or soften. |\n| **LC Image Batch From Folder 📂** | Loads a whole folder as one batch in alphabetical order, with max_images and start_index. |\n| **LC Image Compare 🔎** | Compares large batches of images with a compact dropdown and a stable image area. |\n| **LC Image Crop 🖼️🔪** | Crops by dragging a box and handles on the node, with an optional aspect lock. |\n| **LC Image Denoise** | Smart denoise with blur strength, edge preservation and a blend. |\n| **LC Image Desaturate** | Desaturates toward grayscale with a factor and a luminance method. |\n| **LC Image Grid 🖼️** | Arranges a batch of images into a grid with optional gap, outline and border. |\n| **LC Image Label** | A floating image sticker with drag-and-drop upload for annotating a workflow (no sockets). |\n| **LC Image Pass** | Passes an image straight through. Turned off, the next node sees nothing on that input and runs without it. |\n| **LC Image Ref Pipe In 🖼️** | Bundles up to 16 reference images into one pipe, with sockets that grow like Text Encode Qwen Image 2.1. |\n| **LC Image Ref Pipe Out 🖼️** | Unpacks an image ref pipe back into image_1 to image_16 in their original slots, pipe first. |\n| **LC Image RGB** | Offsets each color channel separately with an overall strength. |\n| **LC Image Split 🖼️** | A before/after wipe on the node whose output is the baked split for saving, with your own divider width and colour. |\n| **LC Image Stitch Multi 🖼️🪡** | Stitches images side by side or stacked from autogrow slots, with match size, align and an optional gap. |\n| **LC Image to Total Megapixels 📐** | Scales an image to a total megapixel count and outputs the resulting resolution. |\n| **LC Image-Mask Resize 📐** | Resizes an image and/or mask to a preset, custom size, multiplier or megapixel count, in multiples of divisible_by. |\n| **LC Int Compare** | Outputs the larger or smaller of two integers. |\n| **LC Int Split** | Splits a total into a + b at a fractional split point, so a + b always equals the total. |\n| **LC Invert Boolean** | Coerces a boolean, int or float and outputs the opposite. |\n| **LC Is Bypassed / Muted** | Outputs true if the node wired into it is bypassed or muted, read live without queuing. |\n| **LC Join Strings 🔗** | Joins multiple strings with a delimiter and skips the empty ones. |\n| **LC Krea2 Regional Inline Canvas** | Paint RGB regions on the node and get regional conditioning using the krea2 CLIP type. |\n| **LC Label 🏷️** | A floating text label for annotating a workflow, with fonts, color, outline and shadow (no sockets). |\n| **LC Last Image Holder** | Keeps the last generated image for before/after comparison, even after disconnecting. Hold until seed change keeps the first image of a seed to compare tweaks against. |\n| **LC Lens FX (deprecated)** | Hidden from search. Old workflows still run it. Use Lens Profile, Vignette and Film Grain instead. |\n| **LC Lens Profile** | Applies or corrects a named lens profile with adjustable strength. |\n| **LC Lift Gamma Gain** | Grades shadows, midtones and highlights with lift, gamma, gain and offset. |\n| **LC Lighting Control V2 🔦** | Relights an image with one or two spot or sun lights, warmth, color gels and hard or soft cast shadows. |\n| **LC Lighting Control 🔦 (deprecated)** | Old workflows still run it. Use LC Lighting Control V2 instead. |\n| **LC LoRA Loader Stack 🎚️** | Builds the same LoRA list as LC LoRA Loader, output as a LORA_STACK. |\n| **LC LoRA Loader 🎚️** | Applies any number of LoRAs from one node, with enable, strength and drag-to-reorder per row. |\n| **LC LoRA Loader (single) 🎚️** | One LC LoRA Loader row (on / off, folder picker, strength, Info) for a turbo or style LoRA on its own spot. Model only, no add or remove. |\n| **LC Mask Pass** | Passes a mask through. Turned off, the next node runs with no mask. Use it instead of bypassing the node that makes the mask. |\n| **LC MiniMax H3 Pipe** | Packs or edits an H3 pipe holding the prompts, references and settings for MiniMax H3. |\n| **LC MiniMax H3 Pipe Out** | Unpacks an LC MiniMax H3 pipe into its separate sockets. |\n| **LC MiniMax H3 Pipe Out V2** | Unpacks an H3 pipe V2, adding prompt, steps, cfg, seed, sampler and scheduler outputs. |\n| **LC MiniMax H3 Pipe V2** | Packs or edits an H3 pipe V2, which also carries prompt, steps, cfg, seed, sampler and scheduler. |\n| **LC Model Info ℹ️** | Wire any MODEL in: it follows the wire upstream (LoRA loaders, merges, LC Model Optimizer) and reads each file's header only. Shows the workflow a save node baked in (base models, LoRAs with strengths, merges), Kohya training info and trigger tags, card fields, GGUF type. Live on the node, no queue needed. The model passes through. |\n| **LC Model Optimizer (pipe) ⚡** | The same as LC Model Optimizer, plus an LC_PIPE out (model 2 carries Ideogram 4's second model). |\n| **LC Model Optimizer Video (pipe) ⚡** | The same as LC Model Optimizer Video, plus an LC_PIPE out (vae 2 carries the audio VAE). |\n| **LC Model Optimizer Video ⚡** | The video version: model, text encoder, video and audio VAE and latent upscaler for MiniMax H3 and LTX 2.5 / 2.3. On H3, Spectrum and Veda can be switched on when they are installed (spectrum / veda widgets). |\n| **LC Model Optimizer ⚡** | Loads the model, text encoder and VAE that suit your card, with the speed-ups that work on it. Downloads recommended files on the first run; GGUF models load through the gguf pack by calcuis. Covers Krea 2 (Turbo and Raw), SDXL, Illustrious, Pony and more, plus Custom for any other model. Built-in Spectrum on MOSS Image and Krea 2 (spectrum widget to opt out). |\n| **LC MOSS Layout Prompt 🗺️** | Turns the boxes into MOSS Image's layout prompt: objects, characters and text with their own caption and palette, right where you drew them. Adds canvas (single, multi panel, collage), medium tags and palette, and outputs the size the boxes were drawn on. |\n| **LC Mute** (JS only) | Works like LC Bypasser, but Off mutes the linked nodes instead of bypassing them. |\n| **LC Natural Look 🍃** | Takes the AI look out: pulls back only the loudest colours, calms orange and plastic skin, rolls the highlights off, cuts the glossy glow and lifts fine texture (flat skin left out), with your black point, contrast and brightness kept and a whisper of grain. |\n| **LC Negative** | A negative prompt text box. |\n| **LC Node Snapshot 📋** | Reads another node's widgets and outputs the selected value, all lines, or JSON. |\n| **LC Note 📝** (JS only) | A markdown note that translates into ComfyUI's 14 languages on click through LC Vision, and shows @[card](link) lines as link cards. |\n| **LC Notify 🔊** | Plays a chosen sound when the node runs (always, on empty queue, or never). |\n| **LC Phone Filters 📱** | 37 phone-app filter presets (1977, Aden, Brooklyn, etc.) with strength and an on-node wipe. |\n| **LC Photo Style 📷** | Gives an image a phone-camera look from a style preset, with sliders and a strength blend. |\n| **LC Pipe (in/edit)** | Packs values into an LC_PIPE, or merges overrides into an existing pipe. |\n| **LC Pipe Combine** | Edits the top pipe with a second pipe: whatever the edit pipe carries overwrites the top one, everything else rides along. |\n| **LC Pipe Out** | Expands an LC_PIPE into individual sockets and passes the pipe on. protect_mask (bottom): the areas the pipe detailers redrew. |\n| **LC Preview Image 🖼️** | Previews an image and sits quietly instead of erroring when nothing arrives. |\n| **LC Preview Mask 🎭** | Previews a mask and sits quietly instead of erroring when nothing arrives. |\n| **LC Prompt List 🗒️** | One prompt per line, sent out as a list: every line runs as its own generation. Blank lines and lines starting with // are left out. Replaces CR Prompt List (same inputs and outputs). |\n| **LC Prompt to Conditioning + Zero** | Encodes a prompt into conditioning and also outputs a zeroed copy for the negative. |\n| **LC Reference Latent** | Attaches up to eight reference latents to conditioning. Chain more than one and they add up. |\n| **LC RTX Super Resolution ⚡** | NVIDIA RTX Video Super Resolution on pictures or video frames: upscale up to 4x, upscale a clean source, denoise or deblur. Quality LOW to ULTRA, scale or megapixels, strength. Shows an Install RTX support button when nvidia-vfx is missing. |\n| **LC Sampler Configure** | Central dual-pass sampler settings: steps, swap point, detailer steps, denoise, CFGs, sampler and scheduler. |\n| **LC Sampler Configure (pipe)** | Dual-pass sampler settings with an optional pipe in and a pipe out. |\n| **LC Sampler Configure Pipe Out** | Unpacks an LC_PIPE into the sampler configure sockets, plus the latent. |\n| **LC Sampler Configure Simple** | Single-pass sampler settings with one CFG and no step swap. |\n| **LC Sampler Configure Simple (pipe)** | Simple sampler settings that read from and write to an LC_PIPE. |\n| **LC Sampler Scheduler ⚙️** | Pick the sampler and scheduler once and wire them to every KSampler, so they all change together. |\n| **LC Save Image 💾** | Saves images with workflow metadata, and CivitAI parameters when paired with LC Save Metadata. |\n| **LC Save Metadata 🏷️** | Builds the metadata (models, AIR or URL, settings) that LC Save Image writes. |\n| **LC Seed Jump 🌱** | Takes a seed and a jump value and outputs the seed plus five successive jumps. |\n| **LC Sharpen Pro** | Undoes softness (deconvolution) with texture and clarity, halo control and skin protection (optional skin_mask from LC Skin Master). Presets for photos, line art, anime and illustration. |\n| **LC Show Any 🔤** | Shows any value on the node and passes it through with its type unchanged. |\n| **LC Show Text 🔤** | Shows a string on the node and passes it on. |\n| **LC Sigma Curve** | Draw a custom sigma curve on the node, save it, and reuse it. |\n| **LC Sigma Resample** | Resamples a sigma curve to a new step count while keeping its start and end sigma (also registered as LCChangeStepCount). |\n| **LC Sigmas (BETA)** | One scheduler for one- and two-pass sampling: sigma curve presets (base, beta, flowmatch, hyperbolic, gaussian, your saved curves) you can bend by dragging the graph, step swap, denoise, continue or renoise on the second pass, and sigma shift. Takes regular and RES4LYF / ClownShark sampler names. |\n| **LC Size Pad 📐** | A 2D slider for width x height: drag the frame's corner. Model presets (MiniMax H3, Krea 2, SDXL, LTX, Klein 9B, Wan 2.2) snap to the model's step and stop at its megapixel limit; aspect lock and portrait / landscape flip. |\n| **LC Skin Beauty ✨** | Cools, brightens and evens skin in LAB with presets, protecting highlights, with an optional mask. Runs on GPU or CPU. |\n| **LC Skin Master ✨ (BETA)** | The whole skin chain in one node on one face-aware skin map: grit, pores, blemishes, lines, freckles, eyes, skin tone and colour, each done once. Presets from a light clean-up to plastic-skin restore, weathered and sun-kissed. Outputs the skin mask for Sharpen Pro. |\n| **LC Skin Texture ✨ (BETA)** | Adds real pore texture to skin that came out too smooth, from a real skin photo (only its fine relief, never its colour). Optional protect_mask leaves the detailers' areas alone. |\n| **LC Skin Upscale** | Upscales only the masked skin area with a CNN model and blends it back. Optional protect_mask leaves the detailers' areas alone. |\n| **LC Slider** | A slider on the node face that outputs an int or float. |\n| **LC Speed Boost (BETA) 🚀** | About 2x faster sampling (about 1.4x on SDXL / Pony / Illustrious), same quality: the picture starts at half size and grows to full size partway through. Plug it into the high pass sampler. Does not work on MOSS Image. |\n| **LC Speed Boost 🚀 KSampler (BETA)** | A KSampler with Speed Boost built in. Same inputs, plus start / end at step so it can chain into another sampler. Takes ClownShark (RES4LYF) samplers. |\n| **LC Split Sigma Scheduler** | Splits sigmas between two models for a dual-model SamplerCustomAdvanced. |\n| **LC Split Sigmas (Advanced)** | Splits sigma curves at a swap step into a high and a low set. |\n| **LC Stop 🛑** | A queue breakpoint you can enable. The play button (or Run) carries on with the same seeds, so everything above the stop comes from the cache. |\n| **LC Text Overlay** | Draws text on an image with a draggable position, font size and color. |\n| **LC Text Remove 🔪** | Removes up to twenty substrings from a text, in order. |\n| **LC Text Replace ✂️** | Runs up to twenty find and replace pairs (optionally regex) on a text. |\n| **LC Timer ⏱️** | Times every run and scores the newest one against the 5 before it: faster in green, slower in red. Lists the last 10 runs. Stopped and fully cached runs are left out. |\n| **LC Tone Match** | Keeps the reference's broad lighting and color while keeping the image's fine detail, with an optional mask. |\n| **LC Vibrance** | Smart saturation (vibrance) with optional plain saturation and skin protection. |\n| **LC Vignette** | Darkens or brightens the edges of the image. |\n| **LC VRAM Cache Clear** | A pass-through node that clears GPU and model cache when it runs, also on its own branch with nothing after it. |\n| **LC Watermark 💧** | Composites a watermark image you position by dragging, with live size and opacity. Transparent PNGs keep their transparency through watermark_mask. |\n| **LC Weighted Prompt ⚖️** | A prompt box with a weight per word: click a word, move the slider (green above 1 with its number, red below, under 0 taken out). Type in the box or wire a prompt in and edit it there; block (on change, always, never) decides which one is used. Krea 2 (plain, Image Reference Edit, Identity Edit, ControlNet), MOSS Image, Anima and CLIP models. |\n| **LC Widget To String** | Reads a widget on another node as a string. |\n| **LC ✂️ Duplicate Tags 🏷️** | Removes repeated tags so none gets double weight (long_hair = (long hair:1.2)). Optional second prompt to merge two and clean them together. |\n| **LC 🚦** | A light for a boolean: one color for true, one for false (or none). Colors behind the gear. |\n| **Legend Effects 🪄** | In homage to Legendaer: VHS TV, Pixelation, Digital Glitch, Night Vision, Blueprint, Frosted Glass, Gameboy, Edge-Preserving Blur, Morphology and Quantize on one node. Pick a look and only its settings show; strength and the on-node wipe compare. |\n| **Prompt** | A prompt text box (was LC Positive). The Vision Assistant swaps it in for other packs' text boxes, or LC Negative when the box feeds a negative. |\n| **Prompt to Conditioning** | Encodes a text prompt into CLIP conditioning. |\n| **🌱LC Seed** | A utility seed with a mode that also works when you queue only this node. |\n| **🎨LC Color Palette** | Picks a 4 to 6 color palette from a preset or from an image, for use in prompts. |\n| **🎲LC Wildcard** | Picks a random line from a wildcard text file. |\n| **📐 LC Aspect Ratio Simplifier** | Resizes an image and/or mask to a target size and outputs image, mask, size, empty latent and batch. |\n| **📐 LC Aspect Ratio Simplifier (pipe)** | Does the same as the Aspect Ratio Simplifier and adds a pipe output for Get/Set. |\n| **📝 LC Save Text** | Writes a text string to a file in the output folder. |\n| **🗒️LC Camera** | Sets camera framing and depth of field for a prompt from distance and angle presets. |\n| **🗒️LC Lighting** | Sets lighting style and direction for a prompt from presets plus your own notes. |\n| **🗒️LC Scene Builder** | Builds a scene description from scene presets and objects. |\n| **🗒️LC Style Selector** | Picks a style preset (and quality level) for a prompt and adds your own notes. |\n| **🗒️LC Subject** | Describes the subject of a prompt with freeform text plus pose, action, outfit and placement options. |\n| **🗒️LC Subject Array** | Combines several subject outputs into one line. |\n| **🧩LC Prompt Assembler** | Assembles the prompt builder pieces (subject, camera, lighting, style, scene) into one prompt or JSON. |\n\n---\n\n## LC AV v0.5.23\n\n[github.com/lonecatone23/ComfyUI_LC_AV_nodes](https://github.com/lonecatone23/ComfyUI_LC_AV_nodes)\n\n| Node | What it does |\n|---|---|\n| **LC Audio Channel 🎚️** | Splits stereo audio into left and right, and duplicates mono to both. |\n| **LC Audio Crop ✂️** | Crops audio from a start time to an end time (MM:SS). |\n| **LC Audio Duration ⏱️** | Outputs the audio length as seconds and minutes, as int and float. |\n| **LC Audio EQ 3-Band 🎛️** | A 3-band equalizer with a low shelf, a peaking mid and a high shelf. |\n| **LC Audio Separate 🎼** | Splits audio into Bass, Drums, Other and Vocals stems with Hybrid Demucs. |\n| **LC Audio Volume 🔊** | Changes audio volume with a slider and soft-clips after the gain. |\n| **LC AV Pipe (in/edit) 🎬** | Packs or edits an LC_AV_PIPE holding video, audio and settings. |\n| **LC AV Pipe Out 🎬** | Unpacks an LC_AV_PIPE into its slots and passes the av_pipe on. |\n| **LC Create Video 🎬** | Builds an LC_AV_PIPE from an image batch (it does not encode a file). |\n| **LC Final Frame 🖼️** | Outputs the last frame of an image batch. |\n| **LC Frame Interpolate 🎞️** | Smooth motion with RIFE 4.26: any frame rate, not just 2x, with a progress bar. Holds hard cuts and matches the video to its sound. |\n| **LC Get Latent Size 📐** | Reads the pixel width and height of a latent, plus batch and frames for video latents. |\n| **LC H3 Audio Sync (BETA) 🎤** | Makes an H3 video perform your own track (a song, a line of dialogue) instead of sound the model invents. |\n| **LC H3 Make (BETA) 🎥** | Makes the shots of an LC H3 Story: wraps the people, pictures and sound around each shot's lines, samples it and saves it (takes, the tail the next shot starts from, the joined movie). |\n| **LC H3 Save to Story (BETA) 🃏** | Puts a picture straight onto its Story card or a shot's start / end frame. Cast, outfit and prop pictures are cut out onto plain grey. |\n| **LC H3 Shot Card (BETA) 🎞️** | Storyboard frames with any image model: one shot's start or end frame as a prompt, its blocking boxes, the background and the cast pictures. |\n| **LC H3 Story (BETA) 🎬** | The whole movie on one node: cast, outfits, places, props and shots, each shot's lines to read and edit, and warnings before you render. The board redoes or repairs one shot and flags the ones a change broke. |\n| **LC H3 Story Card Prompt (BETA) 📝** | Turns a Story cast, outfit, place or prop card into a prompt and an empty latent for any image model, so the card gets its picture. |\n| **LC H3 Ultimate Upscale (BETA) 🔭** | The MMH3 Ultimate Upscale in one node for a normal MiniMax H3 workflow: H3 latent upscaler plus a light tiled H3 pass. |\n| **LC H3 Upscale (BETA) 🔭** | Upscales one long-video segment per run from its saved latent, once the cut is final. |\n| **LC Load Audio 📂** | Loads audio from the input folder with start and end trim and a preview player. |\n| **LC Load Video 🎞️** | Loads a video exactly as it is: every frame at its own size, its sound and its frame rate. No resizing or frame skipping. |\n| **LC Pipe → AV Pipe 🔌** | Converts an LC_PIPE or MiniMax H3 pipe into an LC_AV_PIPE, copying only the shared fields. |\n| **LC Preview Video 📺** | Plays a video on the node, from a file or a batch of frames with its sound. Nothing is saved to your output folder. |\n| **LC Save Video Metadata 🏷️** | Builds the same metadata as LC Save Metadata, for LC Save Image or LC Save Video. |\n| **LC Save Video 💾** | Saves video with Video Combine style options (frame rate, loop, format, pingpong, crf, pix_fmt, audio). A relay input takes LC Relay VSR Upscale's video and saves it a few frames at a time (5 s at 4x: 0.3 GB of RAM instead of 12 GB); with Relay bypassed it saves images instead. Colours match VHS (BT.709); AV1 works without SVT-AV1. |\n| **LC VAE Decode 🧩** | A VAE Decode with a switch between full and tiled decoding. |\n\n---\n\n## LC MaskMaker v0.29.15\n\n[github.com/lonecatone23/ComfyUI_LC_MaskMaker_nodes](https://github.com/lonecatone23/ComfyUI_LC_MaskMaker_nodes)\n\n| Node | What it does |\n|---|---|\n| **LC 360 View 🧭** | Flat camera views out of a 360 panorama: drag on the node to aim, list views as name: yaw, pitch, fov and get them all as one batch. One panorama gives every shot of a scene the same room. |\n| **LC Auto Adjust 🔆** | One-click auto levels (per channel, luminance, saturation or mono) with trims, a strength blend and an optional mask. |\n| **LC Character Detailer (BETA) 🩹** | LC Smart Detailer for one character: SAM 3 finds every match, then only the one you pick is redrawn (left to right, largest, or the one inside a box from LC Bounding Boxes). Give each character its own LoRA branch and detailer, so a character LoRA never bleeds onto the other faces. |\n| **LC Character Detailer (pipe) (BETA) 🩹** | The same, with model, VAE and sampler settings from the LC pipe. A wired model overrides the pipe's. |\n| **LC Create Mask 🖼️✏️** | Draws a mask right on the node with points or a freehand pencil, with feather, invert and opacity built in. |\n| **LC Depth Anything V2 🌊** | Makes a Depth Anything V2 depth map (bright = near) as an image and a mask. Model list reads the same on every machine. |\n| **LC Detail Finder (BETA) 🎯** | A detailer per character, step 1: SAM 3 finds every match once (every face). With face, hair each face gets its own hair. |\n| **LC Detail Sorter (BETA) 🔢** | Step 2: puts the SAM 3 masks in order (left to right, right to left, top to bottom, largest first) and breaks them out as outputs 1 to 8, numbered on the preview. |\n| **LC Detailer For Each (BETA) 🩹** | Step 3, one per character: redraws that person with their own LoRA branch, conditioned prompt and seed. Works on its own or on an LC pipe; anything plugged in beats the pipe. Same engine as LC Smart Detailer. |\n| **LC Face Crop 📐** | Crops to a format with the faces placed well instead of a blind centre crop, using the Aspect Ratio Simplifier presets. Framing from widest to face only. |\n| **LC Image Blend Advance 🎚️** | Places a layer on a background (position, scale, rotate, mirror) and blends it with 29 blend modes through an optional mask. |\n| **LC Outpaint, Rotate, & Pad 🔄** | Turn, crop and pad a picture by dragging on the node, with a portrait / landscape flip. The mask covers the padding and the corners a turn opens up. max_megapixels stops the frame at that size. |\n| **LC Krea2 AnyPaint 🩹** | Krea 2 inpaint and outpaint with the AnyPaint LoRA. Everything outside the mask comes back exactly as it was, and the seam disappears. |\n| **LC Z-Image AnyPaint 🩹** | The same inpaint and outpaint for Z-Image (Turbo / Base), painted by the Z-Image Fun ControlNet Union 2.1 patch instead of a LoRA. Everything outside the mask comes back exactly as it was. |\n| **LC SDXL AnyPaint 🩹** | The same inpaint and outpaint for any SDXL checkpoint (SDXL, Pony, Illustrious), painted by ControlNet Union ProMax, Fooocus inpaint optional. No LoRA needed. |\n| **LC Flux 3 Klein AnyPaint 🩹** | The same inpaint and outpaint for Flux 3 Klein, painted in edit mode with AusBoss's Outpaint LoRA: the area is filled gray and the model fills it while your picture stays put. |\n| **LC MOSS Box Edit 🖌️ (BETA)** | Draw boxes on a picture with LC Bounding Boxes and MOSS Image redraws only those boxes, seeing the whole picture while it works; everything outside stays pixel for pixel the same. Change clothes, add a character or a sign, or take something out. |\n| **LC MOSS Control 🕹️** | ControlNet for MOSS Image: the picture follows a depth map (pose, shape) and / or a color region map, with an end point for each. Runs darask0's Color-Depth Control adapter. |\n| **LC Mask Refine ✨** | Tightens a mask with a trimap, using a guided filter or VITMatte on the edge band only, with a before/after wipe. |\n| **LC Normal Map (BAE) 🗺️** | Makes a BAE surface normal map (RGB = XYZ), the same style ControlNet's normal_bae makes. |\n| **LC Outpaint 🖌️➕** | Drag the canvas edges outward on the node to build a grey canvas and a mask of the new area. max_megapixels stops the edges at that size. |\n| **LC Person Mask 🧍** | Selects parts of a person (face, hair, body, clothes, accessories, background) with Segformer or MediaPipe. remove_features makes a skin-only mask. |\n| **LC Relay VSR Upscale 🧩** | RelayVSR upscale in one node: model, VAE and sampler built in, downloaded on first use. 2x or 4x, softened so hair and edges stay natural (no inked lashes, halos or colour shift). source: video keeps the frames matched so they stay steady, image upscales each picture on its own. Keeps VRAM flat on 8 GB cards (a 5 s clip at 4x in about 104 s on an RTX 5060 laptop). Needs ComfyUI nightly (from Nov 5, 2026) or the next stable release. Its relay output goes to LC Save Video, which saves the video a few frames at a time so it never fills your RAM. detect_faces (on) finds the faces itself and keeps Relay's grain off them (free on pictures, every 3rd frame on video); a wired protect_mask wins. upscale also offers 2x / 4x bf16 (10 GB), the original release: practically identical output, about 5 GB more VRAM. |\n| **LC Remove Background ✂️** | Removes the background with BiRefNet and outputs an RGBA cutout, the mask and the subject on a solid color. |\n| **LC Segment Anything 🎯** | Selects things by describing them, using GroundingDINO + SAM or SAM 3, with optional edge refine. |\n| **LC Smart Detailer 🩹** | Replaces the SEGS / Impact detailers. Finds what you type (hands, face, eyes) with SAM 3 and redraws each one in its own upscaled crop, then blends it back in. |\n| **LC Smart Detailer (pipe) 🩹** | The same, with model, VAE and sampler settings from the LC pipe. A wired model or VAE overrides the pipe's. |\n| **LC Touch Mask (BETA) 👆** | Mask one thing exactly: draw around it and SAM 3 finds its edges. Tap it to grow to the next bigger thing (face, face + hair, head, person), double-tap to step back. Ctrl + draw cuts out. Threshold, smooth and a fine edge finish built in. |\n| **LC VOSR2 Upscale 🧩** | Fast, low-VRAM upscale with VOSR 2.0, built in: sharpens and adds fine detail without redrawing the picture. 1.5x to 4x in one pass, 6x and 8x in two. |\n| **LC VOSR2 Upscale (pipe) 🧩** | The same on the LC pipe, after the pipe detailers. Carries the detailers' areas to the new size (protected output) for LC Skin Upscale / LC Skin Texture. |\n\n---\n\n## LC Vision v1.6.28\n\n[github.com/lonecatone23/ComfyUI_LC_Vision_nodes](https://github.com/lonecatone23/ComfyUI_LC_Vision_nodes)\n\n| Node | What it does |\n|---|---|\n| **LC Vision Showrunner (BETA) 🎬** | Plans a long MiniMax H3 video as CUT / CONTINUE segments, fixes each join to how the last segment really ended, and saves / loads the project file (shot list, references, settings). |\n| **LC Vision Reviewer 🕵️ (BETA)** | Quality gate: yes/no checks on hands, faces, text, artifacts, prompt match and your own questions. Flags a bad render, or blocks everything after it. |\n| **LC Vision Shot List (BETA) 📋** | The story for the Showrunner, filled in like a form: the place, the cast and one row per shot. Suggests the segment count and warns about lines too long for their shot. No AI involved. |\n| **LC Vision Storyboard Builder (BETA) 🎞️** | Pictures for a Showrunner movie: finds what the project is missing (faces, places, anchors) and makes one prompt, latent and seed per picture for the sampler. |\n| **LC Vision Storyboard Save (BETA) 🎞️** | Saves the Storyboard Builder's pictures into the project. 📂 Load on the Showrunner adds them to the Reference Assembler. |\n| **LC Vision Storyboard Sheet (BETA) 🎞️** | The storyboard on the node: a card per picture. ✅ Use puts it in the Reference Assembler, ↻ makes it again, ✎ changes its prompt. Nothing to wire. |\n| **LC Vision Redirect (BETA) 🔬** | Kept for older workflows: LC Vision Showrunner now fixes the joins itself. |\n| **LC Vision Danbooru Caption 🏷️** | Prompts for SDXL, Pony and Illustrious from one image or a rough idea: a short or detailed caption, real Danbooru tags, or a sentence plus tags. Optional quality tags and a matching negative. |\n| **LC Vision Caption 📝** | Generates text from a loaded LC Vision model, an instruction, up to three reference images and a reference video. |\n| **LC Vision Loader 🔬** | Loads a Qwen-VL GGUF model and its vision projector. keep_model_loaded off unloads it after the Vision nodes are done, so the image model gets the whole card. |\n| **LC Vision Moviemaker 🎥** | Plans a video as several continuous segments in one call, each written as a self-contained MiniMax H3 prompt. |\n| **LC Vision Prompt Enhancer 📝** | Rewrites a prompt through an LC Vision model using a preset instruction (text only). Wire LC MOSS Layout Prompt into it and it enhances the scene and boxes, boxes kept. |\n\n---\n\n## LC ModelBuilder v0.7.5\n\n[github.com/lonecatone23/ComfyUI_LC_ModelBuilder_nodes](https://github.com/lonecatone23/ComfyUI_LC_ModelBuilder_nodes)\n\n| Node | What it does |\n|---|---|\n| **LC Anima Block Merge Advanced** | The Krea2 Block Merge Advanced for Anima: a curve over its 28 blocks plus sliders for the x embedder, timestep embedder and norm, LLM adapter and final layer. Presets. |\n| **LC Anima LoRA Block Scan** | The Krea2 LoRA Block Scan for Anima, scoring anime faces with CCIP. |\n| **LC Anima LoRA Editor** | The Krea2 LoRA Editor for Anima: same controls, Anima's 28 blocks and layer types. |\n| **LC Anima LoRA Merge** | The Krea2 LoRA Merge for Anima: two to four Anima LoRAs with a per-block A / B curve. |\n| **LC Checkpoint Save** | Saves an all-in-one checkpoint (model, clip, vae) with an enabled toggle to skip the save. metadata: keep all, or necessary only (no workflow or training details). |\n| **LC Diffusion Model Save** | Saves just the diffusion model, with no clip or vae. Same metadata switch. |\n| **LC Face Variety Scorer 🧑‍🤝‍🧑** | Scores how alike the faces in a batch are (0 to 1, lower = more variety), plus a crowd score for group shots. Photo (ArcFace) or anime (CCIP) mode. |\n| **LC Fingerprint Identify 🔎** | What is this model made of? Its recipe from your fingerprint library, block by block: which models were merged and at what ratio, merged-in LoRAs with their strength, how sure it is of each, and a heatmap. It can only name what is in the library. |\n| **LC Fingerprint Library 📚** | Goes through your folders and stores a small fingerprint (about 1 MB) of every model and LoRA, with its family. Once a file is in, the original can go. Reruns only add what is new. |\n| **LC Krea2 Block Merge Advanced** | Merges Krea2 checkpoints with a draggable per-block ratio curve across the 28 blocks plus sliders for the named regions. |\n| **LC Krea2 LoRA Block Scan** | Finds where a LoRA locks the face or changes the whole image by turning off one block group at a time, and suggests a block curve for the Editor. |\n| **LC Krea2 LoRA Editor** | Loads a Krea 2 LoRA with each of the 28 blocks turned up or down, attention and MLP scaled separately, and spikes softened. |\n| **LC Krea2 LoRA Merge** | Merges two to four Krea 2 LoRAs with a per-block A / B curve (sum or TIES). |\n| **LC Krea2 Semantic Vector Tuner** | Amplifies or attenuates specific regions of a single Krea2 checkpoint's weights (not a merge). |\n| **LC LoRA Bake 🍞** | Bakes up to 4 LoRAs into a model file and saves it as a new model, with an optional per-block curve. Reads every LoRA format ComfyUI reads and writes the recipe into the file. Runs on the CPU, no VRAM needed. |\n| **LC LoRA Extract** | Turns a finetune into a LoRA (finetuned minus its base): all layers, blocks only or a custom block list. Unchanged layers are left out. |\n| **LC LoRA Save** | Saves an edited or merged LoRA as a standard file with every edit baked in, optionally at a new rank, with enabled and embed_workflow switches. |\n| **LC Model Fingerprint 🔍** | One model against a reference, layer by layer, from the weights themselves: the same model at another precision, built on it, a block merge (the chart shows which blocks) or not related. With a LoRA: whether it was merged in and at about what strength. |\n| **LC Model Merge (any precision)** | Merges two models stored in different precisions (bf16 with fp8, int8, nvfp4 or GGUF, in either order). The result stays full precision. |\n| **LC Model Quantize 🗜️** | Saves a smaller copy of a model: fp8, mxfp8, nvfp4, int8 or int4 (load with the stock loader) or GGUF Q8_0 to Q2_K. From the wired MODEL (LoRAs baked in) or straight from a file of any size. |\n| **LC MOSS Block Merge Advanced** | Merges MOSS Image models with a draggable per-layer ratio curve across the 42 layers, plus sliders for the parts outside them (picture in, prompt in, timestep, modulation, final layer). Presets save and load. |\n| **LC Scoreboard 🏆** | Head-to-head counter for A / B tests: #1 Win, Tie and #2 Win buttons, with the leader and percentages shown on the node. |\n| **LC Strip Metadata 🧹** | Cleans the metadata out of a model you already saved (embedded workflow, training details, titles). The weights are copied byte for byte, never loaded, so it loads exactly as before. Writes a _clean copy or replaces the original. |\n| **LC VAE Compare** | Decodes the same latents with up to six VAEs, side by side with a 1:1 detail crop, a sharpness number and how far each lands from the first. |\n| **LC VAE Merge** | Merges the decoders of two VAEs of the same family, coarse shapes to fine texture. The encoder stays the base's, so the result still fits the models made for it. |\n| **LC VAE Save** | Saves a VAE to models/vae in fp32, bf16 or fp16. |\n\n---\n\"True Nothing is. Permitted Everything is\"- Yoda Auditore, Assassin's Wars"
      ],
      "widgets_values_named": {
        "language": "English ✏️",
        "text": "# Total nodes\n\n**257 nodes** across 5 packs. Deprecated nodes are listed but not counted.\n\n| Pack | Nodes | Version | Link |\n|---|---|---|---|\n| LC123 | 162 | v1.56.6 | [Repo](https://github.com/lonecatone23/ComfyUI_LC123_nodes) |\n| LC AV | 27 | v0.5.23 | [Repo](https://github.com/lonecatone23/ComfyUI_LC_AV_nodes) |\n| LC MaskMaker | 30 | v0.29.15 | [Repo](https://github.com/lonecatone23/ComfyUI_LC_MaskMaker_nodes) |\n| LC Vision | 12 | v1.6.28 | [Repo](https://github.com/lonecatone23/ComfyUI_LC_Vision_nodes) |\n| LC ModelBuilder | 26 | v0.7.5 | [Repo](https://github.com/lonecatone23/ComfyUI_LC_ModelBuilder_nodes) |\n\n---\n\n## LC123 v1.56.6\n\n[github.com/lonecatone23/ComfyUI_LC123_nodes](https://github.com/lonecatone23/ComfyUI_LC123_nodes)\n\n| Node | What it does |\n|---|---|\n| **CivitAI 🚩🔪** | Strips flagged terms from a prompt using a compliance list, as an aid only (you are still responsible for CivitAI's terms). Off until you switch it on. |\n| **LC Advanced Folder 📂** | Builds separate filename and path outputs for Image Saver style nodes, with optional prefix-in-path and timestamp. |\n| **LC Anima Box Prompt 🔲** | Regional prompting for Anima: draw boxes in LC Bounding Boxes and write each one like a normal prompt; the main prompt is the scene. No left / right words needed. Wire it between the model and the sampler. Needs Anima Regional Conditioning; the Regional LLLite patch downloads on first use. |\n| **LC Anima Regional Inline Canvas** | Paint RGB regions on the node and get a separate conditioning and mask for each region, for Anima regional prompting. |\n| **LC Any Empty Bool** | Outputs true if any connected input is empty, muted or bypassed. |\n| **LC Any Empty Float** | Runs the same empty test as Any Empty Bool and outputs an empty and a not-empty float. |\n| **LC Any Empty Int** | Runs the same empty test as Any Empty Bool and outputs an empty and a not-empty integer. |\n| **LC Any Index Switch** | Passes through the input at the chosen index and ignores the other slots. |\n| **LC AnySwitch** | Picks the first connected input out of 2 to 20 and locks to its type. |\n| **LC Apply LoRA Stack 🎚️** | Applies a LORA_STACK from LC LoRA Loader Stack (or any pack) to model and/or clip. |\n| **LC Apply LUT** | Applies a .cube 3D LUT from models/luts with a strength from 0 to 2. Starts on LC Crushed Blacks at 0.3. |\n| **LC Aspect Ratio Pipe (In/Edit)** | Packs image, mask, size, latent, batch and resolution into an LC_PIPE, or edits one, overwriting only the wired sockets. |\n| **LC Aspect Ratio Pipe Out** | Unpacks the aspect ratio fields of an LC_PIPE into separate sockets and passes the pipe on. |\n| **LC Auto White Balance** | Corrects white balance automatically with a choice of algorithm, a strength blend and a before/after wipe. |\n| **LC Basic Scheduler** | Outputs sigmas for the full step count (no denoise), made to feed LC Split Sigmas (Advanced) for dual-pass sampling. |\n| **LC Batch Image 🖼️** | Batches images from auto-growing slots, ignoring muted or missing ones and resizing later images to the first. |\n| **LC Bloom** | Adds a glow from the bright areas in Bloom, Pro-Mist (diffusion filter) or Halation (film edge glow) mode. |\n| **LC Boolean** | Turns a boolean, int or float into a clean true/false and shows it on the node. |\n| **LC Boolean Flip** | Outputs the opposite of its toggle. |\n| **LC Boolean Switch** | Picks the on_true or on_false input (any type) based on a boolean. |\n| **LC Boolean Value** | A plain boolean toggle you can wire anywhere. |\n| **LC Bounding Boxes 🔲** | Draw boxes on a picture for Flux 3 or MOSS Image: name each box, pick new, change, move or remove, and describe the result. For MOSS a box can be a character and get its own palette. Works in classic and Nodes 2.0. |\n| **LC Bypass Relay** | Gathers nodes on its left so a hub can mute or bypass all of them together through OPT_CONNECTION. |\n| **LC Bypasser Panel** (JS only) | A widgets-only remote for LC Bypasser, LC Mute or LC Groups Bypasser. |\n| **LC Bypasser** (JS only) | Bypasses linked nodes from one place with toggles or BOOLEAN inputs. |\n| **LC Chromatic Aberration** | Shifts the RGB channels apart to fake lens fringing, with pixel amount and direction per channel. |\n| **LC Color Match 🎨** | Matches an image's colors to a reference (AdaIN / mean-std) with optional skin protection and mask. |\n| **LC Combo Selector** | A dropdown that mirrors the options of another node's combo (sampler, scheduler, etc.) when wired into it. |\n| **LC Control Panel 🎛️** | Up to 16 sliders and on/off switches on one node, each on its own output. The gear on a row sets its type (number or boolean), name, range, step and INT or FLOAT. A new row plugged into a number or boolean input copies that input's settings. |\n| **LC Custom Combo** | Builds your own list of options and outputs the chosen text and its index. |\n| **LC Custom Combo Panel** | A remote control that picks the choice for an LC Custom Combo from another spot. |\n| **LC Denoise 💉** | Injects latent noise scaled to 1 minus your denoise value, using the same denoise you give the sampler. |\n| **LC Depth FX 🌫️** | Uses a depth map for atmospheric haze, light wrap and depth of field with real bokeh, with shared looks. |\n| **LC Detail Daemon (BETA)** | Adds fine detail by hiding a little of the noise from the model over a window of the steps, on the original Detail Daemon schedule. Look only (default), classic and keep structure modes. Sampler version. Goes on the low pass sampler. |\n| **LC Detail Daemon (model) (BETA)** | The same Detail Daemon as a model patch, for a plain KSampler. |\n| **LC Detail Pipe Out** | Unpacks the detailer settings (models, prompts, seed, cfg, sampler, scheduler, steps) from an LC_PIPE. protect_mask (bottom): the areas the pipe detailers redrew. |\n| **LC Dimension Resize 📐** | Adds, subtracts, multiplies or divides width and height by one value and rounds the results to integers. |\n| **LC Directional Blur** | Motion blur along one angle and length, set by dragging an arrow on the node. |\n| **LC Dynamic Overlay** | Overlays image B on image A and lets you adjust the opacity on the node after one run without regenerating. |\n| **LC Easy Folder 📂** | Builds a filename_prefix for the native Save Image node and creates the folders. |\n| **LC Film Grain** | Adds film grain with amount, contrast, size and mono or color options. |\n| **LC Film Grain (Video) 🎞️** | The same grain for a whole clip: GPU, a few frames at a time, with a progress bar. Grain sized to the video, so it survives compression. |\n| **LC Film Stock (B&W)** | Gives a black and white film look from presets with a strength blend. |\n| **LC Film Stock (Color)** | Gives a color film look from presets (toe, shoulder, gamma) with a strength blend. |\n| **LC Float Compare** | Outputs the larger or smaller of two floats. |\n| **LC Flux 3 Layout Prompt 🗺️** | Adds the boxes to a Flux 3 prompt as the table the model was trained on. Write <1>, <2> in the prompt for box 1, box 2. |\n| **LC Flux 3 Reference Latent 🖼️** | Up to 4 reference pictures for Flux 3 on the positive and negative, the negative the model wants and the latent size. |\n| **LC Get Image 📐** | Reads an image's width, height, megapixels, longer side, batch size and aspect ratio. |\n| **LC Groups Bypasser** (JS only) | Bypasses whole groups from one place, with one toggle per group. |\n| **LC Image Adjust** | Basic color grade (hue, saturation, brightness, contrast) with a mild sharpen or soften. |\n| **LC Image Batch From Folder 📂** | Loads a whole folder as one batch in alphabetical order, with max_images and start_index. |\n| **LC Image Compare 🔎** | Compares large batches of images with a compact dropdown and a stable image area. |\n| **LC Image Crop 🖼️🔪** | Crops by dragging a box and handles on the node, with an optional aspect lock. |\n| **LC Image Denoise** | Smart denoise with blur strength, edge preservation and a blend. |\n| **LC Image Desaturate** | Desaturates toward grayscale with a factor and a luminance method. |\n| **LC Image Grid 🖼️** | Arranges a batch of images into a grid with optional gap, outline and border. |\n| **LC Image Label** | A floating image sticker with drag-and-drop upload for annotating a workflow (no sockets). |\n| **LC Image Pass** | Passes an image straight through. Turned off, the next node sees nothing on that input and runs without it. |\n| **LC Image Ref Pipe In 🖼️** | Bundles up to 16 reference images into one pipe, with sockets that grow like Text Encode Qwen Image 2.1. |\n| **LC Image Ref Pipe Out 🖼️** | Unpacks an image ref pipe back into image_1 to image_16 in their original slots, pipe first. |\n| **LC Image RGB** | Offsets each color channel separately with an overall strength. |\n| **LC Image Split 🖼️** | A before/after wipe on the node whose output is the baked split for saving, with your own divider width and colour. |\n| **LC Image Stitch Multi 🖼️🪡** | Stitches images side by side or stacked from autogrow slots, with match size, align and an optional gap. |\n| **LC Image to Total Megapixels 📐** | Scales an image to a total megapixel count and outputs the resulting resolution. |\n| **LC Image-Mask Resize 📐** | Resizes an image and/or mask to a preset, custom size, multiplier or megapixel count, in multiples of divisible_by. |\n| **LC Int Compare** | Outputs the larger or smaller of two integers. |\n| **LC Int Split** | Splits a total into a + b at a fractional split point, so a + b always equals the total. |\n| **LC Invert Boolean** | Coerces a boolean, int or float and outputs the opposite. |\n| **LC Is Bypassed / Muted** | Outputs true if the node wired into it is bypassed or muted, read live without queuing. |\n| **LC Join Strings 🔗** | Joins multiple strings with a delimiter and skips the empty ones. |\n| **LC Krea2 Regional Inline Canvas** | Paint RGB regions on the node and get regional conditioning using the krea2 CLIP type. |\n| **LC Label 🏷️** | A floating text label for annotating a workflow, with fonts, color, outline and shadow (no sockets). |\n| **LC Last Image Holder** | Keeps the last generated image for before/after comparison, even after disconnecting. Hold until seed change keeps the first image of a seed to compare tweaks against. |\n| **LC Lens FX (deprecated)** | Hidden from search. Old workflows still run it. Use Lens Profile, Vignette and Film Grain instead. |\n| **LC Lens Profile** | Applies or corrects a named lens profile with adjustable strength. |\n| **LC Lift Gamma Gain** | Grades shadows, midtones and highlights with lift, gamma, gain and offset. |\n| **LC Lighting Control V2 🔦** | Relights an image with one or two spot or sun lights, warmth, color gels and hard or soft cast shadows. |\n| **LC Lighting Control 🔦 (deprecated)** | Old workflows still run it. Use LC Lighting Control V2 instead. |\n| **LC LoRA Loader Stack 🎚️** | Builds the same LoRA list as LC LoRA Loader, output as a LORA_STACK. |\n| **LC LoRA Loader 🎚️** | Applies any number of LoRAs from one node, with enable, strength and drag-to-reorder per row. |\n| **LC LoRA Loader (single) 🎚️** | One LC LoRA Loader row (on / off, folder picker, strength, Info) for a turbo or style LoRA on its own spot. Model only, no add or remove. |\n| **LC Mask Pass** | Passes a mask through. Turned off, the next node runs with no mask. Use it instead of bypassing the node that makes the mask. |\n| **LC MiniMax H3 Pipe** | Packs or edits an H3 pipe holding the prompts, references and settings for MiniMax H3. |\n| **LC MiniMax H3 Pipe Out** | Unpacks an LC MiniMax H3 pipe into its separate sockets. |\n| **LC MiniMax H3 Pipe Out V2** | Unpacks an H3 pipe V2, adding prompt, steps, cfg, seed, sampler and scheduler outputs. |\n| **LC MiniMax H3 Pipe V2** | Packs or edits an H3 pipe V2, which also carries prompt, steps, cfg, seed, sampler and scheduler. |\n| **LC Model Info ℹ️** | Wire any MODEL in: it follows the wire upstream (LoRA loaders, merges, LC Model Optimizer) and reads each file's header only. Shows the workflow a save node baked in (base models, LoRAs with strengths, merges), Kohya training info and trigger tags, card fields, GGUF type. Live on the node, no queue needed. The model passes through. |\n| **LC Model Optimizer (pipe) ⚡** | The same as LC Model Optimizer, plus an LC_PIPE out (model 2 carries Ideogram 4's second model). |\n| **LC Model Optimizer Video (pipe) ⚡** | The same as LC Model Optimizer Video, plus an LC_PIPE out (vae 2 carries the audio VAE). |\n| **LC Model Optimizer Video ⚡** | The video version: model, text encoder, video and audio VAE and latent upscaler for MiniMax H3 and LTX 2.5 / 2.3. On H3, Spectrum and Veda can be switched on when they are installed (spectrum / veda widgets). |\n| **LC Model Optimizer ⚡** | Loads the model, text encoder and VAE that suit your card, with the speed-ups that work on it. Downloads recommended files on the first run; GGUF models load through the gguf pack by calcuis. Covers Krea 2 (Turbo and Raw), SDXL, Illustrious, Pony and more, plus Custom for any other model. Built-in Spectrum on MOSS Image and Krea 2 (spectrum widget to opt out). |\n| **LC MOSS Layout Prompt 🗺️** | Turns the boxes into MOSS Image's layout prompt: objects, characters and text with their own caption and palette, right where you drew them. Adds canvas (single, multi panel, collage), medium tags and palette, and outputs the size the boxes were drawn on. |\n| **LC Mute** (JS only) | Works like LC Bypasser, but Off mutes the linked nodes instead of bypassing them. |\n| **LC Natural Look 🍃** | Takes the AI look out: pulls back only the loudest colours, calms orange and plastic skin, rolls the highlights off, cuts the glossy glow and lifts fine texture (flat skin left out), with your black point, contrast and brightness kept and a whisper of grain. |\n| **LC Negative** | A negative prompt text box. |\n| **LC Node Snapshot 📋** | Reads another node's widgets and outputs the selected value, all lines, or JSON. |\n| **LC Note 📝** (JS only) | A markdown note that translates into ComfyUI's 14 languages on click through LC Vision, and shows @[card](link) lines as link cards. |\n| **LC Notify 🔊** | Plays a chosen sound when the node runs (always, on empty queue, or never). |\n| **LC Phone Filters 📱** | 37 phone-app filter presets (1977, Aden, Brooklyn, etc.) with strength and an on-node wipe. |\n| **LC Photo Style 📷** | Gives an image a phone-camera look from a style preset, with sliders and a strength blend. |\n| **LC Pipe (in/edit)** | Packs values into an LC_PIPE, or merges overrides into an existing pipe. |\n| **LC Pipe Combine** | Edits the top pipe with a second pipe: whatever the edit pipe carries overwrites the top one, everything else rides along. |\n| **LC Pipe Out** | Expands an LC_PIPE into individual sockets and passes the pipe on. protect_mask (bottom): the areas the pipe detailers redrew. |\n| **LC Preview Image 🖼️** | Previews an image and sits quietly instead of erroring when nothing arrives. |\n| **LC Preview Mask 🎭** | Previews a mask and sits quietly instead of erroring when nothing arrives. |\n| **LC Prompt List 🗒️** | One prompt per line, sent out as a list: every line runs as its own generation. Blank lines and lines starting with // are left out. Replaces CR Prompt List (same inputs and outputs). |\n| **LC Prompt to Conditioning + Zero** | Encodes a prompt into conditioning and also outputs a zeroed copy for the negative. |\n| **LC Reference Latent** | Attaches up to eight reference latents to conditioning. Chain more than one and they add up. |\n| **LC RTX Super Resolution ⚡** | NVIDIA RTX Video Super Resolution on pictures or video frames: upscale up to 4x, upscale a clean source, denoise or deblur. Quality LOW to ULTRA, scale or megapixels, strength. Shows an Install RTX support button when nvidia-vfx is missing. |\n| **LC Sampler Configure** | Central dual-pass sampler settings: steps, swap point, detailer steps, denoise, CFGs, sampler and scheduler. |\n| **LC Sampler Configure (pipe)** | Dual-pass sampler settings with an optional pipe in and a pipe out. |\n| **LC Sampler Configure Pipe Out** | Unpacks an LC_PIPE into the sampler configure sockets, plus the latent. |\n| **LC Sampler Configure Simple** | Single-pass sampler settings with one CFG and no step swap. |\n| **LC Sampler Configure Simple (pipe)** | Simple sampler settings that read from and write to an LC_PIPE. |\n| **LC Sampler Scheduler ⚙️** | Pick the sampler and scheduler once and wire them to every KSampler, so they all change together. |\n| **LC Save Image 💾** | Saves images with workflow metadata, and CivitAI parameters when paired with LC Save Metadata. |\n| **LC Save Metadata 🏷️** | Builds the metadata (models, AIR or URL, settings) that LC Save Image writes. |\n| **LC Seed Jump 🌱** | Takes a seed and a jump value and outputs the seed plus five successive jumps. |\n| **LC Sharpen Pro** | Undoes softness (deconvolution) with texture and clarity, halo control and skin protection (optional skin_mask from LC Skin Master). Presets for photos, line art, anime and illustration. |\n| **LC Show Any 🔤** | Shows any value on the node and passes it through with its type unchanged. |\n| **LC Show Text 🔤** | Shows a string on the node and passes it on. |\n| **LC Sigma Curve** | Draw a custom sigma curve on the node, save it, and reuse it. |\n| **LC Sigma Resample** | Resamples a sigma curve to a new step count while keeping its start and end sigma (also registered as LCChangeStepCount). |\n| **LC Sigmas (BETA)** | One scheduler for one- and two-pass sampling: sigma curve presets (base, beta, flowmatch, hyperbolic, gaussian, your saved curves) you can bend by dragging the graph, step swap, denoise, continue or renoise on the second pass, and sigma shift. Takes regular and RES4LYF / ClownShark sampler names. |\n| **LC Size Pad 📐** | A 2D slider for width x height: drag the frame's corner. Model presets (MiniMax H3, Krea 2, SDXL, LTX, Klein 9B, Wan 2.2) snap to the model's step and stop at its megapixel limit; aspect lock and portrait / landscape flip. |\n| **LC Skin Beauty ✨** | Cools, brightens and evens skin in LAB with presets, protecting highlights, with an optional mask. Runs on GPU or CPU. |\n| **LC Skin Master ✨ (BETA)** | The whole skin chain in one node on one face-aware skin map: grit, pores, blemishes, lines, freckles, eyes, skin tone and colour, each done once. Presets from a light clean-up to plastic-skin restore, weathered and sun-kissed. Outputs the skin mask for Sharpen Pro. |\n| **LC Skin Texture ✨ (BETA)** | Adds real pore texture to skin that came out too smooth, from a real skin photo (only its fine relief, never its colour). Optional protect_mask leaves the detailers' areas alone. |\n| **LC Skin Upscale** | Upscales only the masked skin area with a CNN model and blends it back. Optional protect_mask leaves the detailers' areas alone. |\n| **LC Slider** | A slider on the node face that outputs an int or float. |\n| **LC Speed Boost (BETA) 🚀** | About 2x faster sampling (about 1.4x on SDXL / Pony / Illustrious), same quality: the picture starts at half size and grows to full size partway through. Plug it into the high pass sampler. Does not work on MOSS Image. |\n| **LC Speed Boost 🚀 KSampler (BETA)** | A KSampler with Speed Boost built in. Same inputs, plus start / end at step so it can chain into another sampler. Takes ClownShark (RES4LYF) samplers. |\n| **LC Split Sigma Scheduler** | Splits sigmas between two models for a dual-model SamplerCustomAdvanced. |\n| **LC Split Sigmas (Advanced)** | Splits sigma curves at a swap step into a high and a low set. |\n| **LC Stop 🛑** | A queue breakpoint you can enable. The play button (or Run) carries on with the same seeds, so everything above the stop comes from the cache. |\n| **LC Text Overlay** | Draws text on an image with a draggable position, font size and color. |\n| **LC Text Remove 🔪** | Removes up to twenty substrings from a text, in order. |\n| **LC Text Replace ✂️** | Runs up to twenty find and replace pairs (optionally regex) on a text. |\n| **LC Timer ⏱️** | Times every run and scores the newest one against the 5 before it: faster in green, slower in red. Lists the last 10 runs. Stopped and fully cached runs are left out. |\n| **LC Tone Match** | Keeps the reference's broad lighting and color while keeping the image's fine detail, with an optional mask. |\n| **LC Vibrance** | Smart saturation (vibrance) with optional plain saturation and skin protection. |\n| **LC Vignette** | Darkens or brightens the edges of the image. |\n| **LC VRAM Cache Clear** | A pass-through node that clears GPU and model cache when it runs, also on its own branch with nothing after it. |\n| **LC Watermark 💧** | Composites a watermark image you position by dragging, with live size and opacity. Transparent PNGs keep their transparency through watermark_mask. |\n| **LC Weighted Prompt ⚖️** | A prompt box with a weight per word: click a word, move the slider (green above 1 with its number, red below, under 0 taken out). Type in the box or wire a prompt in and edit it there; block (on change, always, never) decides which one is used. Krea 2 (plain, Image Reference Edit, Identity Edit, ControlNet), MOSS Image, Anima and CLIP models. |\n| **LC Widget To String** | Reads a widget on another node as a string. |\n| **LC ✂️ Duplicate Tags 🏷️** | Removes repeated tags so none gets double weight (long_hair = (long hair:1.2)). Optional second prompt to merge two and clean them together. |\n| **LC 🚦** | A light for a boolean: one color for true, one for false (or none). Colors behind the gear. |\n| **Legend Effects 🪄** | In homage to Legendaer: VHS TV, Pixelation, Digital Glitch, Night Vision, Blueprint, Frosted Glass, Gameboy, Edge-Preserving Blur, Morphology and Quantize on one node. Pick a look and only its settings show; strength and the on-node wipe compare. |\n| **Prompt** | A prompt text box (was LC Positive). The Vision Assistant swaps it in for other packs' text boxes, or LC Negative when the box feeds a negative. |\n| **Prompt to Conditioning** | Encodes a text prompt into CLIP conditioning. |\n| **🌱LC Seed** | A utility seed with a mode that also works when you queue only this node. |\n| **🎨LC Color Palette** | Picks a 4 to 6 color palette from a preset or from an image, for use in prompts. |\n| **🎲LC Wildcard** | Picks a random line from a wildcard text file. |\n| **📐 LC Aspect Ratio Simplifier** | Resizes an image and/or mask to a target size and outputs image, mask, size, empty latent and batch. |\n| **📐 LC Aspect Ratio Simplifier (pipe)** | Does the same as the Aspect Ratio Simplifier and adds a pipe output for Get/Set. |\n| **📝 LC Save Text** | Writes a text string to a file in the output folder. |\n| **🗒️LC Camera** | Sets camera framing and depth of field for a prompt from distance and angle presets. |\n| **🗒️LC Lighting** | Sets lighting style and direction for a prompt from presets plus your own notes. |\n| **🗒️LC Scene Builder** | Builds a scene description from scene presets and objects. |\n| **🗒️LC Style Selector** | Picks a style preset (and quality level) for a prompt and adds your own notes. |\n| **🗒️LC Subject** | Describes the subject of a prompt with freeform text plus pose, action, outfit and placement options. |\n| **🗒️LC Subject Array** | Combines several subject outputs into one line. |\n| **🧩LC Prompt Assembler** | Assembles the prompt builder pieces (subject, camera, lighting, style, scene) into one prompt or JSON. |\n\n---\n\n## LC AV v0.5.23\n\n[github.com/lonecatone23/ComfyUI_LC_AV_nodes](https://github.com/lonecatone23/ComfyUI_LC_AV_nodes)\n\n| Node | What it does |\n|---|---|\n| **LC Audio Channel 🎚️** | Splits stereo audio into left and right, and duplicates mono to both. |\n| **LC Audio Crop ✂️** | Crops audio from a start time to an end time (MM:SS). |\n| **LC Audio Duration ⏱️** | Outputs the audio length as seconds and minutes, as int and float. |\n| **LC Audio EQ 3-Band 🎛️** | A 3-band equalizer with a low shelf, a peaking mid and a high shelf. |\n| **LC Audio Separate 🎼** | Splits audio into Bass, Drums, Other and Vocals stems with Hybrid Demucs. |\n| **LC Audio Volume 🔊** | Changes audio volume with a slider and soft-clips after the gain. |\n| **LC AV Pipe (in/edit) 🎬** | Packs or edits an LC_AV_PIPE holding video, audio and settings. |\n| **LC AV Pipe Out 🎬** | Unpacks an LC_AV_PIPE into its slots and passes the av_pipe on. |\n| **LC Create Video 🎬** | Builds an LC_AV_PIPE from an image batch (it does not encode a file). |\n| **LC Final Frame 🖼️** | Outputs the last frame of an image batch. |\n| **LC Frame Interpolate 🎞️** | Smooth motion with RIFE 4.26: any frame rate, not just 2x, with a progress bar. Holds hard cuts and matches the video to its sound. |\n| **LC Get Latent Size 📐** | Reads the pixel width and height of a latent, plus batch and frames for video latents. |\n| **LC H3 Audio Sync (BETA) 🎤** | Makes an H3 video perform your own track (a song, a line of dialogue) instead of sound the model invents. |\n| **LC H3 Make (BETA) 🎥** | Makes the shots of an LC H3 Story: wraps the people, pictures and sound around each shot's lines, samples it and saves it (takes, the tail the next shot starts from, the joined movie). |\n| **LC H3 Save to Story (BETA) 🃏** | Puts a picture straight onto its Story card or a shot's start / end frame. Cast, outfit and prop pictures are cut out onto plain grey. |\n| **LC H3 Shot Card (BETA) 🎞️** | Storyboard frames with any image model: one shot's start or end frame as a prompt, its blocking boxes, the background and the cast pictures. |\n| **LC H3 Story (BETA) 🎬** | The whole movie on one node: cast, outfits, places, props and shots, each shot's lines to read and edit, and warnings before you render. The board redoes or repairs one shot and flags the ones a change broke. |\n| **LC H3 Story Card Prompt (BETA) 📝** | Turns a Story cast, outfit, place or prop card into a prompt and an empty latent for any image model, so the card gets its picture. |\n| **LC H3 Ultimate Upscale (BETA) 🔭** | The MMH3 Ultimate Upscale in one node for a normal MiniMax H3 workflow: H3 latent upscaler plus a light tiled H3 pass. |\n| **LC H3 Upscale (BETA) 🔭** | Upscales one long-video segment per run from its saved latent, once the cut is final. |\n| **LC Load Audio 📂** | Loads audio from the input folder with start and end trim and a preview player. |\n| **LC Load Video 🎞️** | Loads a video exactly as it is: every frame at its own size, its sound and its frame rate. No resizing or frame skipping. |\n| **LC Pipe → AV Pipe 🔌** | Converts an LC_PIPE or MiniMax H3 pipe into an LC_AV_PIPE, copying only the shared fields. |\n| **LC Preview Video 📺** | Plays a video on the node, from a file or a batch of frames with its sound. Nothing is saved to your output folder. |\n| **LC Save Video Metadata 🏷️** | Builds the same metadata as LC Save Metadata, for LC Save Image or LC Save Video. |\n| **LC Save Video 💾** | Saves video with Video Combine style options (frame rate, loop, format, pingpong, crf, pix_fmt, audio). A relay input takes LC Relay VSR Upscale's video and saves it a few frames at a time (5 s at 4x: 0.3 GB of RAM instead of 12 GB); with Relay bypassed it saves images instead. Colours match VHS (BT.709); AV1 works without SVT-AV1. |\n| **LC VAE Decode 🧩** | A VAE Decode with a switch between full and tiled decoding. |\n\n---\n\n## LC MaskMaker v0.29.15\n\n[github.com/lonecatone23/ComfyUI_LC_MaskMaker_nodes](https://github.com/lonecatone23/ComfyUI_LC_MaskMaker_nodes)\n\n| Node | What it does |\n|---|---|\n| **LC 360 View 🧭** | Flat camera views out of a 360 panorama: drag on the node to aim, list views as name: yaw, pitch, fov and get them all as one batch. One panorama gives every shot of a scene the same room. |\n| **LC Auto Adjust 🔆** | One-click auto levels (per channel, luminance, saturation or mono) with trims, a strength blend and an optional mask. |\n| **LC Character Detailer (BETA) 🩹** | LC Smart Detailer for one character: SAM 3 finds every match, then only the one you pick is redrawn (left to right, largest, or the one inside a box from LC Bounding Boxes). Give each character its own LoRA branch and detailer, so a character LoRA never bleeds onto the other faces. |\n| **LC Character Detailer (pipe) (BETA) 🩹** | The same, with model, VAE and sampler settings from the LC pipe. A wired model overrides the pipe's. |\n| **LC Create Mask 🖼️✏️** | Draws a mask right on the node with points or a freehand pencil, with feather, invert and opacity built in. |\n| **LC Depth Anything V2 🌊** | Makes a Depth Anything V2 depth map (bright = near) as an image and a mask. Model list reads the same on every machine. |\n| **LC Detail Finder (BETA) 🎯** | A detailer per character, step 1: SAM 3 finds every match once (every face). With face, hair each face gets its own hair. |\n| **LC Detail Sorter (BETA) 🔢** | Step 2: puts the SAM 3 masks in order (left to right, right to left, top to bottom, largest first) and breaks them out as outputs 1 to 8, numbered on the preview. |\n| **LC Detailer For Each (BETA) 🩹** | Step 3, one per character: redraws that person with their own LoRA branch, conditioned prompt and seed. Works on its own or on an LC pipe; anything plugged in beats the pipe. Same engine as LC Smart Detailer. |\n| **LC Face Crop 📐** | Crops to a format with the faces placed well instead of a blind centre crop, using the Aspect Ratio Simplifier presets. Framing from widest to face only. |\n| **LC Image Blend Advance 🎚️** | Places a layer on a background (position, scale, rotate, mirror) and blends it with 29 blend modes through an optional mask. |\n| **LC Outpaint, Rotate, & Pad 🔄** | Turn, crop and pad a picture by dragging on the node, with a portrait / landscape flip. The mask covers the padding and the corners a turn opens up. max_megapixels stops the frame at that size. |\n| **LC Krea2 AnyPaint 🩹** | Krea 2 inpaint and outpaint with the AnyPaint LoRA. Everything outside the mask comes back exactly as it was, and the seam disappears. |\n| **LC Z-Image AnyPaint 🩹** | The same inpaint and outpaint for Z-Image (Turbo / Base), painted by the Z-Image Fun ControlNet Union 2.1 patch instead of a LoRA. Everything outside the mask comes back exactly as it was. |\n| **LC SDXL AnyPaint 🩹** | The same inpaint and outpaint for any SDXL checkpoint (SDXL, Pony, Illustrious), painted by ControlNet Union ProMax, Fooocus inpaint optional. No LoRA needed. |\n| **LC Flux 3 Klein AnyPaint 🩹** | The same inpaint and outpaint for Flux 3 Klein, painted in edit mode with AusBoss's Outpaint LoRA: the area is filled gray and the model fills it while your picture stays put. |\n| **LC MOSS Box Edit 🖌️ (BETA)** | Draw boxes on a picture with LC Bounding Boxes and MOSS Image redraws only those boxes, seeing the whole picture while it works; everything outside stays pixel for pixel the same. Change clothes, add a character or a sign, or take something out. |\n| **LC MOSS Control 🕹️** | ControlNet for MOSS Image: the picture follows a depth map (pose, shape) and / or a color region map, with an end point for each. Runs darask0's Color-Depth Control adapter. |\n| **LC Mask Refine ✨** | Tightens a mask with a trimap, using a guided filter or VITMatte on the edge band only, with a before/after wipe. |\n| **LC Normal Map (BAE) 🗺️** | Makes a BAE surface normal map (RGB = XYZ), the same style ControlNet's normal_bae makes. |\n| **LC Outpaint 🖌️➕** | Drag the canvas edges outward on the node to build a grey canvas and a mask of the new area. max_megapixels stops the edges at that size. |\n| **LC Person Mask 🧍** | Selects parts of a person (face, hair, body, clothes, accessories, background) with Segformer or MediaPipe. remove_features makes a skin-only mask. |\n| **LC Relay VSR Upscale 🧩** | RelayVSR upscale in one node: model, VAE and sampler built in, downloaded on first use. 2x or 4x, softened so hair and edges stay natural (no inked lashes, halos or colour shift). source: video keeps the frames matched so they stay steady, image upscales each picture on its own. Keeps VRAM flat on 8 GB cards (a 5 s clip at 4x in about 104 s on an RTX 5060 laptop). Needs ComfyUI nightly (from Nov 5, 2026) or the next stable release. Its relay output goes to LC Save Video, which saves the video a few frames at a time so it never fills your RAM. detect_faces (on) finds the faces itself and keeps Relay's grain off them (free on pictures, every 3rd frame on video); a wired protect_mask wins. upscale also offers 2x / 4x bf16 (10 GB), the original release: practically identical output, about 5 GB more VRAM. |\n| **LC Remove Background ✂️** | Removes the background with BiRefNet and outputs an RGBA cutout, the mask and the subject on a solid color. |\n| **LC Segment Anything 🎯** | Selects things by describing them, using GroundingDINO + SAM or SAM 3, with optional edge refine. |\n| **LC Smart Detailer 🩹** | Replaces the SEGS / Impact detailers. Finds what you type (hands, face, eyes) with SAM 3 and redraws each one in its own upscaled crop, then blends it back in. |\n| **LC Smart Detailer (pipe) 🩹** | The same, with model, VAE and sampler settings from the LC pipe. A wired model or VAE overrides the pipe's. |\n| **LC Touch Mask (BETA) 👆** | Mask one thing exactly: draw around it and SAM 3 finds its edges. Tap it to grow to the next bigger thing (face, face + hair, head, person), double-tap to step back. Ctrl + draw cuts out. Threshold, smooth and a fine edge finish built in. |\n| **LC VOSR2 Upscale 🧩** | Fast, low-VRAM upscale with VOSR 2.0, built in: sharpens and adds fine detail without redrawing the picture. 1.5x to 4x in one pass, 6x and 8x in two. |\n| **LC VOSR2 Upscale (pipe) 🧩** | The same on the LC pipe, after the pipe detailers. Carries the detailers' areas to the new size (protected output) for LC Skin Upscale / LC Skin Texture. |\n\n---\n\n## LC Vision v1.6.28\n\n[github.com/lonecatone23/ComfyUI_LC_Vision_nodes](https://github.com/lonecatone23/ComfyUI_LC_Vision_nodes)\n\n| Node | What it does |\n|---|---|\n| **LC Vision Showrunner (BETA) 🎬** | Plans a long MiniMax H3 video as CUT / CONTINUE segments, fixes each join to how the last segment really ended, and saves / loads the project file (shot list, references, settings). |\n| **LC Vision Reviewer 🕵️ (BETA)** | Quality gate: yes/no checks on hands, faces, text, artifacts, prompt match and your own questions. Flags a bad render, or blocks everything after it. |\n| **LC Vision Shot List (BETA) 📋** | The story for the Showrunner, filled in like a form: the place, the cast and one row per shot. Suggests the segment count and warns about lines too long for their shot. No AI involved. |\n| **LC Vision Storyboard Builder (BETA) 🎞️** | Pictures for a Showrunner movie: finds what the project is missing (faces, places, anchors) and makes one prompt, latent and seed per picture for the sampler. |\n| **LC Vision Storyboard Save (BETA) 🎞️** | Saves the Storyboard Builder's pictures into the project. 📂 Load on the Showrunner adds them to the Reference Assembler. |\n| **LC Vision Storyboard Sheet (BETA) 🎞️** | The storyboard on the node: a card per picture. ✅ Use puts it in the Reference Assembler, ↻ makes it again, ✎ changes its prompt. Nothing to wire. |\n| **LC Vision Redirect (BETA) 🔬** | Kept for older workflows: LC Vision Showrunner now fixes the joins itself. |\n| **LC Vision Danbooru Caption 🏷️** | Prompts for SDXL, Pony and Illustrious from one image or a rough idea: a short or detailed caption, real Danbooru tags, or a sentence plus tags. Optional quality tags and a matching negative. |\n| **LC Vision Caption 📝** | Generates text from a loaded LC Vision model, an instruction, up to three reference images and a reference video. |\n| **LC Vision Loader 🔬** | Loads a Qwen-VL GGUF model and its vision projector. keep_model_loaded off unloads it after the Vision nodes are done, so the image model gets the whole card. |\n| **LC Vision Moviemaker 🎥** | Plans a video as several continuous segments in one call, each written as a self-contained MiniMax H3 prompt. |\n| **LC Vision Prompt Enhancer 📝** | Rewrites a prompt through an LC Vision model using a preset instruction (text only). Wire LC MOSS Layout Prompt into it and it enhances the scene and boxes, boxes kept. |\n\n---\n\n## LC ModelBuilder v0.7.5\n\n[github.com/lonecatone23/ComfyUI_LC_ModelBuilder_nodes](https://github.com/lonecatone23/ComfyUI_LC_ModelBuilder_nodes)\n\n| Node | What it does |\n|---|---|\n| **LC Anima Block Merge Advanced** | The Krea2 Block Merge Advanced for Anima: a curve over its 28 blocks plus sliders for the x embedder, timestep embedder and norm, LLM adapter and final layer. Presets. |\n| **LC Anima LoRA Block Scan** | The Krea2 LoRA Block Scan for Anima, scoring anime faces with CCIP. |\n| **LC Anima LoRA Editor** | The Krea2 LoRA Editor for Anima: same controls, Anima's 28 blocks and layer types. |\n| **LC Anima LoRA Merge** | The Krea2 LoRA Merge for Anima: two to four Anima LoRAs with a per-block A / B curve. |\n| **LC Checkpoint Save** | Saves an all-in-one checkpoint (model, clip, vae) with an enabled toggle to skip the save. metadata: keep all, or necessary only (no workflow or training details). |\n| **LC Diffusion Model Save** | Saves just the diffusion model, with no clip or vae. Same metadata switch. |\n| **LC Face Variety Scorer 🧑‍🤝‍🧑** | Scores how alike the faces in a batch are (0 to 1, lower = more variety), plus a crowd score for group shots. Photo (ArcFace) or anime (CCIP) mode. |\n| **LC Fingerprint Identify 🔎** | What is this model made of? Its recipe from your fingerprint library, block by block: which models were merged and at what ratio, merged-in LoRAs with their strength, how sure it is of each, and a heatmap. It can only name what is in the library. |\n| **LC Fingerprint Library 📚** | Goes through your folders and stores a small fingerprint (about 1 MB) of every model and LoRA, with its family. Once a file is in, the original can go. Reruns only add what is new. |\n| **LC Krea2 Block Merge Advanced** | Merges Krea2 checkpoints with a draggable per-block ratio curve across the 28 blocks plus sliders for the named regions. |\n| **LC Krea2 LoRA Block Scan** | Finds where a LoRA locks the face or changes the whole image by turning off one block group at a time, and suggests a block curve for the Editor. |\n| **LC Krea2 LoRA Editor** | Loads a Krea 2 LoRA with each of the 28 blocks turned up or down, attention and MLP scaled separately, and spikes softened. |\n| **LC Krea2 LoRA Merge** | Merges two to four Krea 2 LoRAs with a per-block A / B curve (sum or TIES). |\n| **LC Krea2 Semantic Vector Tuner** | Amplifies or attenuates specific regions of a single Krea2 checkpoint's weights (not a merge). |\n| **LC LoRA Bake 🍞** | Bakes up to 4 LoRAs into a model file and saves it as a new model, with an optional per-block curve. Reads every LoRA format ComfyUI reads and writes the recipe into the file. Runs on the CPU, no VRAM needed. |\n| **LC LoRA Extract** | Turns a finetune into a LoRA (finetuned minus its base): all layers, blocks only or a custom block list. Unchanged layers are left out. |\n| **LC LoRA Save** | Saves an edited or merged LoRA as a standard file with every edit baked in, optionally at a new rank, with enabled and embed_workflow switches. |\n| **LC Model Fingerprint 🔍** | One model against a reference, layer by layer, from the weights themselves: the same model at another precision, built on it, a block merge (the chart shows which blocks) or not related. With a LoRA: whether it was merged in and at about what strength. |\n| **LC Model Merge (any precision)** | Merges two models stored in different precisions (bf16 with fp8, int8, nvfp4 or GGUF, in either order). The result stays full precision. |\n| **LC Model Quantize 🗜️** | Saves a smaller copy of a model: fp8, mxfp8, nvfp4, int8 or int4 (load with the stock loader) or GGUF Q8_0 to Q2_K. From the wired MODEL (LoRAs baked in) or straight from a file of any size. |\n| **LC MOSS Block Merge Advanced** | Merges MOSS Image models with a draggable per-layer ratio curve across the 42 layers, plus sliders for the parts outside them (picture in, prompt in, timestep, modulation, final layer). Presets save and load. |\n| **LC Scoreboard 🏆** | Head-to-head counter for A / B tests: #1 Win, Tie and #2 Win buttons, with the leader and percentages shown on the node. |\n| **LC Strip Metadata 🧹** | Cleans the metadata out of a model you already saved (embedded workflow, training details, titles). The weights are copied byte for byte, never loaded, so it loads exactly as before. Writes a _clean copy or replaces the original. |\n| **LC VAE Compare** | Decodes the same latents with up to six VAEs, side by side with a 1:1 detail crop, a sharpness number and how far each lands from the first. |\n| **LC VAE Merge** | Merges the decoders of two VAEs of the same family, coarse shapes to fine texture. The encoder stays the base's, so the result still fits the models made for it. |\n| **LC VAE Save** | Saves a VAE to models/vae in fp32, bf16 or fp16. |\n\n---\n\"True Nothing is. Permitted Everything is\"- Yoda Auditore, Assassin's Wars"
      },
      "color": "#752e43",
      "bgcolor": "#611a2f"
    },
    {
      "id": 4691,
      "type": "LC Groups Bypasser",
      "pos": [
        -2180,
        -1070
      ],
      "size": [
        320,
        90
      ],
      "flags": {
        "pinned": true
      },
      "order": 37,
      "mode": 0,
      "inputs": [
        {
          "name": "# Lighting Control 🔦",
          "type": "BOOLEAN",
          "link": null
        }
      ],
      "outputs": [
        {
          "name": "OPT_CONNECTION",
          "type": "*",
          "links": []
        }
      ],
      "title": "Lighting Control",
      "properties": {
        "matchTitle": "# Lighting Control 🔦",
        "matchColors": "",
        "sort": "position",
        "toggleRestriction": "default",
        "lcBindings": {
          "id:430": {
            "value": true,
            "originId": null
          },
          "id:373": {
            "value": true,
            "originId": null
          },
          "id:390": {
            "value": true,
            "originId": null
          },
          "id:437": {
            "value": true,
            "originId": null
          },
          "id:420": {
            "value": true,
            "originId": null
          },
          "id:419": {
            "value": true,
            "originId": null
          },
          "id:423": {
            "value": true,
            "originId": null
          },
          "id:388": {
            "value": true,
            "originId": null
          },
          "id:435": {
            "value": true,
            "originId": null
          },
          "id:312": {
            "value": true,
            "originId": null
          },
          "id:311": {
            "value": true,
            "originId": null
          },
          "id:174": {
            "value": true,
            "originId": null
          },
          "id:200": {
            "value": true,
            "originId": null
          },
          "id:357": {
            "value": true,
            "originId": null
          },
          "id:175": {
            "value": true,
            "originId": null
          },
          "id:395": {
            "value": true,
            "originId": null
          },
          "id:334": {
            "value": true,
            "originId": null
          },
          "id:394": {
            "value": true,
            "originId": null
          },
          "id:329": {
            "value": true,
            "originId": null
          },
          "id:330": {
            "value": true,
            "originId": null
          },
          "id:333": {
            "value": true,
            "originId": null
          },
          "id:422": {
            "value": true,
            "originId": null
          },
          "id:427": {
            "value": true,
            "originId": null
          },
          "id:428": {
            "value": true,
            "originId": null
          },
          "id:424": {
            "value": true,
            "originId": null
          },
          "id:421": {
            "value": true,
            "originId": null
          },
          "id:398": {
            "value": true,
            "originId": null
          },
          "id:27": {
            "value": true,
            "originId": null
          },
          "id:433": {
            "value": true,
            "originId": null
          },
          "id:442": {
            "value": false,
            "originId": null
          },
          "id:441": {
            "value": true,
            "originId": null
          },
          "id:406": {
            "value": true,
            "originId": null
          },
          "id:432": {
            "value": true,
            "originId": null
          },
          "id:404": {
            "value": true,
            "originId": null
          },
          "id:405": {
            "value": true,
            "originId": null
          },
          "id:431": {
            "value": true,
            "originId": null
          },
          "id:440": {
            "value": true,
            "originId": null
          },
          "id:438": {
            "value": true,
            "originId": null
          },
          "id:439": {
            "value": true,
            "originId": null
          },
          "id:443": {
            "value": false,
            "originId": null,
            "originSlot": null
          }
        },
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        false
      ],
      "widgets_values_named": {
        "Enable 1": false
      },
      "color": "#c87a2c",
      "bgcolor": "#b46618"
    },
    {
      "id": 4692,
      "type": "LCImageToTotalMegapixels",
      "pos": [
        -1840,
        -1030
      ],
      "size": [
        320,
        150
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 119,
      "mode": 4,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46079
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": []
        },
        {
          "name": "resolution",
          "type": "INT",
          "links": [
            46088,
            46093
          ]
        },
        {
          "name": "megapixels",
          "type": "FLOAT",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "725b8198884b4b62a392d5b00fba114e1c23303d",
        "Node name for S&R": "LCImageToTotalMegapixels",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "lanczos",
        1,
        1
      ],
      "widgets_values_named": {
        "upscale_method": "lanczos",
        "megapixels": 1,
        "resolution_steps": 1
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 4693,
      "type": "LCPreviewImage",
      "pos": [
        -1490,
        -1030
      ],
      "size": [
        210,
        280
      ],
      "flags": {
        "pinned": true
      },
      "order": 165,
      "mode": 4,
      "inputs": [
        {
          "name": "image",
          "shape": 7,
          "type": "IMAGE",
          "link": 46080
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            46082
          ]
        }
      ],
      "title": "BAE Normal Map 🗺️",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "24728b75a7291ed7d3ac57d6e23d906823392387",
        "Node name for S&R": "LCPreviewImage",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        ""
      ],
      "widgets_values_named": {
        "lc_preview": ""
      },
      "color": "#222",
      "bgcolor": "#000"
    },
    {
      "id": 4694,
      "type": "LCLightingControlV2",
      "pos": [
        -1270,
        -1030
      ],
      "size": [
        290,
        910
      ],
      "flags": {
        "pinned": true
      },
      "order": 190,
      "mode": 4,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46081
        },
        {
          "name": "normal_map",
          "type": "IMAGE",
          "link": 46082
        },
        {
          "name": "depth_map",
          "type": "IMAGE",
          "link": 46083
        },
        {
          "name": "mask",
          "shape": 7,
          "type": "MASK",
          "link": 46084
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            46086
          ]
        },
        {
          "name": "shadow_mask",
          "type": "MASK",
          "links": [
            46098
          ]
        },
        {
          "name": "light_layer",
          "type": "IMAGE",
          "links": [
            46097
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "bfb1067b71bc70299c016cae8fad2fe0932fb8ba",
        "Node name for S&R": "LCLightingControlV2",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "",
        "Rembrandt",
        0.8,
        "spot",
        0.65,
        0.6,
        0.5,
        1.4,
        0.9,
        0.1,
        "none",
        0.5,
        false,
        "spot",
        -0.8,
        -0.1,
        0.5,
        0.6,
        1.2,
        -0.15,
        "none",
        0.5,
        0.3,
        0.18,
        "soft",
        0.55,
        0.3,
        0.5,
        0.8,
        0.45,
        false,
        0.4,
        0.3,
        0.35,
        0.5,
        0.15,
        0.4
      ],
      "widgets_values_named": {
        "lc_light_stage": "",
        "preset": "Rembrandt",
        "blend": 0.8,
        "light1_type": "spot",
        "light1_x": 0.65,
        "light1_y": 0.6,
        "light1_z": 0.5,
        "light1_brightness": 1.4,
        "light1_spread": 0.9,
        "light1_warmth": 0.1,
        "light1_color": "none",
        "light1_color_amount": 0.5,
        "enable_light_2": false,
        "light2_type": "spot",
        "light2_x": -0.8,
        "light2_y": -0.1,
        "light2_z": 0.5,
        "light2_brightness": 0.6,
        "light2_spread": 1.2,
        "light2_warmth": -0.15,
        "light2_color": "none",
        "light2_color_amount": 0.5,
        "light_wrap": 0.3,
        "fill": 0.18,
        "shadows": "soft",
        "shadow_amount": 0.55,
        "shadow_blur": 0.3,
        "background_shadow": 0.5,
        "self_shadow": 0.8,
        "relief": 0.45,
        "advanced": false,
        "depth_falloff": 0.4,
        "shadow_height": 0.3,
        "shadow_length": 0.35,
        "shadow_softness": 0.5,
        "subject_distance": 0.15,
        "mask_dome": 0.4
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 4695,
      "type": "LCDynamicOverlay",
      "pos": [
        -970,
        -1030
      ],
      "size": [
        410,
        600
      ],
      "flags": {
        "pinned": true
      },
      "order": 207,
      "mode": 4,
      "inputs": [
        {
          "label": "before",
          "name": "image_a",
          "type": "IMAGE",
          "link": 46085
        },
        {
          "label": "relight 🔦",
          "name": "image_b",
          "type": "IMAGE",
          "link": 46086
        }
      ],
      "outputs": [
        {
          "name": "blended Image",
          "type": "IMAGE",
          "links": [
            46089
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "f6f835f2c1478c00537a13d874320e122a6fa82d",
        "Node name for S&R": "LCDynamicOverlay",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        0.71
      ],
      "widgets_values_named": {
        "opacity": 0.71
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 4696,
      "type": "LCNormalBAE",
      "pos": [
        -1840,
        -990
      ],
      "size": [
        340,
        160
      ],
      "flags": {
        "pinned": true
      },
      "order": 141,
      "mode": 4,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46087
        },
        {
          "name": "resolution",
          "type": "INT",
          "widget": {
            "name": "resolution"
          },
          "link": 46088
        }
      ],
      "outputs": [
        {
          "name": "normal_map",
          "type": "IMAGE",
          "links": [
            46080
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC_MaskMaker_nodes",
        "ver": "3f344dd1f4d2e4dbe30b35e08757f8f4d60cb000",
        "Node name for S&R": "LCNormalBAE",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "scannet.pt (BAE normals, ScanNet-trained; license unclear, verify before commercial use) [from comfyui_controlnet_aux]",
        512,
        false,
        3,
        1
      ],
      "widgets_values_named": {
        "model": "scannet.pt (BAE normals, ScanNet-trained; license unclear, verify before commercial use) [from comfyui_controlnet_aux]",
        "resolution": 512,
        "flip_y": false,
        "blur_radius": 3,
        "sigma": 1
      },
      "color": "#324b4b",
      "bgcolor": "#324b4b"
    },
    {
      "id": 4697,
      "type": "GetNode",
      "pos": [
        -2180,
        -940
      ],
      "size": [
        210,
        40
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 38,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            46079,
            46081,
            46085,
            46087,
            46090,
            46092,
            46095
          ]
        }
      ],
      "title": "Get_Skin Realism",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Skin Realism"
      ],
      "widgets_values_named": {
        "Constant": "Skin Realism"
      },
      "color": "#2a363b",
      "bgcolor": "#3f5159"
    },
    {
      "id": 4698,
      "type": "Label (rgthree)",
      "pos": [
        -1970,
        -970
      ],
      "size": [
        54.921875,
        40
      ],
      "flags": {
        "allow_interaction": false,
        "pinned": true
      },
      "order": 39,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "👈",
      "properties": {
        "fontSize": 40,
        "fontFamily": "Arial",
        "fontColor": "#ffffff",
        "textAlign": "left",
        "backgroundColor": "transparent",
        "padding": 0,
        "borderRadius": 0,
        "angle": 0,
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#fff0",
      "bgcolor": "#fff0"
    },
    {
      "id": 4699,
      "type": "LCAnySwitch",
      "pos": [
        -2180,
        -900
      ],
      "size": [
        330,
        120
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 222,
      "mode": 0,
      "inputs": [
        {
          "label": "IMAGE",
          "name": "any_01",
          "shape": 7,
          "type": "IMAGE",
          "link": 46089
        },
        {
          "label": "IMAGE",
          "name": "any_02",
          "shape": 7,
          "type": "IMAGE",
          "link": 46090
        }
      ],
      "outputs": [
        {
          "label": "IMAGE",
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            46091
          ]
        }
      ],
      "title": "image switch",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "7e2d1aeb3227d1c20192d54210f67ce09469ad6c",
        "Node name for S&R": "LCAnySwitch",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {
            "any_01": true,
            "any_02": true,
            "any_03": true,
            "any_04": true,
            "any_05": true,
            "any_06": true,
            "any_07": true,
            "any_08": true,
            "any_09": true,
            "any_10": true,
            "any_11": true,
            "any_12": true,
            "any_13": true,
            "any_14": true,
            "any_15": true,
            "any_16": true,
            "any_17": true,
            "any_18": true,
            "any_19": true,
            "any_20": true
          },
          "send_to_any": 0,
          "apply_to_unrepeated": 0,
          "version": "7.8"
        },
        "lc_w": 330,
        "lc_h": 120
      },
      "widgets_values": [
        2
      ],
      "widgets_values_named": {
        "inputcount": 2
      },
      "color": "#222",
      "bgcolor": "#000"
    },
    {
      "id": 4700,
      "type": "SetNode",
      "pos": [
        -2180,
        -860
      ],
      "size": [
        210,
        40
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 232,
      "mode": 0,
      "inputs": [
        {
          "name": "*",
          "type": "*",
          "link": 46091
        }
      ],
      "outputs": [
        {
          "name": "*",
          "type": "*",
          "links": []
        }
      ],
      "title": "Set_Lighting Control 🔦",
      "properties": {
        "Node name for S&R": "SetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "previousName": "Lighting Control 🔦",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Lighting Control 🔦"
      ],
      "widgets_values_named": {
        "Constant": "Lighting Control 🔦"
      }
    },
    {
      "id": 4701,
      "type": "LCNote",
      "pos": [
        -2180,
        -820
      ],
      "size": [
        320,
        720
      ],
      "flags": {
        "pinned": true
      },
      "order": 40,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "LC Lighting Control V2 🔦",
      "properties": {
        "lc_note": {
          "source": "en",
          "texts": {
            "en": {
              "text": "\n# LC Lighting Control V2 🔦 \n\n---\n\nRelight any image from a **normal map** + **depth map** (optional **subject mask**). Real cast shadows, hard or soft.\n\n✋ **Start here**\n- Pick a **preset**, then drag the light on the **stage**. That is 90% of it.\n- Change any value and the preset flips to **custom** (nothing is lost, it just gets a new label).\n- The old **LC Lighting Control 🔦** is a separate node and still works.\n\n### The stage\n- **Drag** = X / Y (where the light is. +X is right, +Y is up)\n- **Shift+drag** or **wheel** = Z (0 = side on, 1 = head on)\n- White = light 1, red = light 2. Pick a gel color and the handle takes it on.\n- The blue arrow shows where the shadow falls.\n- 💡 A light near the middle is head-on, so it throws no sideways shadow. Move it out to see one.\n\n### Presets\n- **Soft window** (left / right), **Rembrandt**, **Split** (hard side), **Top light**, **Under light**, **Rim / back light**, **Golden hour**, **Campfire**, **Cyberpunk**, **Key + fill**, **Flat front**\n- A preset sets everything, fine controls included. Start there, then nudge.\n\n### Each light\n- **type**: spot = a beam, sun = even light over the whole frame\n- **brightness**: 1.2 to 1.5 is a natural key light\n- **spread**: how wide the spot beam is (sun ignores it)\n- **warmth**: cool blue to warm orange. Golden hour lives around 0.7\n- **color** + **color_amount**: an optional colored gel (red, orange, yellow, green, cyan, blue, purple, magenta). 0.3 to 0.6 looks natural\n  - *note:* the color only shows where that light reaches, so \n  - 💡 dial the light size way down when using colors so it doesn't saturate the entire image\n  - shadows fall back to the neutral fill\n- **enable_light_2**: a second light. Fill or rim, keep it dim\n\n### The look\n- **blend**: relit vs original. 0.7 to 0.9 looks best\n- **light_wrap**: how gradually light rolls into shade on the face. 0 = hard lamp\n- **fill**: the floor the shadows never drop below. 0 = pitch black, 0.2 = natural\n\n### Shadows\n- **shadows**: soft / hard / off\n- **shadow_amount**: how dark\n- **shadow_blur**: blurs the edge. Shadow looks cut out? Raise this\n- **background_shadow**: 1 = a wall right behind, 0 = a distant background with nothing to catch a shadow\n- **self_shadow**: how strongly the subject shadows itself (nose, chin, hair). Needs a mask\n- **relief**: how deep the scene is in 3D. More = longer, stronger shadows\n- **advanced**: shows the rest (depth falloff, shadow height / length / softness, subject distance, mask dome)\n \n### Mask\n- Connect one and the subject throws a shadow on the wall behind it.\n- **subject_distance**: how far in front of the wall. 0 = flat against it\n\n### Outputs\n- **image**: the relit image\n- **shadow_mask**: white = lit, black = in shadow\n- **light_layer**: the light on its own (the color shows here too)\n\n### Quick fixes\n\n| Problem | Try |\n|---------|-----|\n| Harsh, cut out | raise **shadow_blur** or **light_wrap**, lower **blend** |\n| Muddy, too dark | raise **fill** or **brightness** |\n| Flat | lower **fill**, move the light off center, lower **Z** |\n| No shadow on the wall | connect the mask, raise **background_shadow** and **subject_distance** |\n| Shadow on a far-away room | lower **background_shadow** |\n\n\n## 💡 Portraits\n\n- start with **Rembrandt** or **Soft window**\n- **Warm scenes:** **Golden hour**, or **Campfire** for a low orange glow\n- **Neon:** **Cyberpunk** is two colored lights. Swap the colors to taste\n- **Two lights:** turn on **enable_light_2**, keep it dim (about 0.5) and cool\n- **Room behind the subject?** Set **background_shadow** to 0 to 0.2 so she isn't throwing shadows on a couch ten feet away\n- **Spot lights:** don't park one on the border of the stage, it messes up the cone\n- ⚠️ Shadows are strong on purpose (that's why there is a **blend**)\n\n\n---\n\n**\"True Nothing is. Permitted Everything is\"**  \n_Yoda Auditore, *Assassin's Wars*_\n\n"
            },
            "zh": {
              "text": "\n# LC Lighting Control V2 🔦 \n\n---\n\n根据**法线图** + **深度图**（可选**主体蒙版**）为任意图像重新打光。真实的投射阴影，硬阴影或软阴影都行。\n\n✋ **从这里开始**\n- 选一个**预设**，然后在**舞台**上拖动灯光。这就是 90% 的操作。\n- 改动任何数值，预设就会切换为 **custom**（什么都不会丢失，只是换了个新标签）。\n- 旧的 **LC Lighting Control 🔦** 是另一个独立节点，仍然可以用。\n\n### 舞台\n- **拖动** = X / Y（灯光的位置。+X 向右，+Y 向上）\n- **Shift+拖动** 或 **滚轮** = Z（0 = 侧面照射，1 = 正面照射）\n- 白色 = 灯光 1，红色 = 灯光 2。选择滤光片颜色后，手柄会变成那个颜色。\n- 蓝色箭头显示阴影落下的方向。\n- 💡 靠近中间的灯是正面光，所以不会投出侧向阴影。把它移出去才能看到阴影。\n\n### 预设\n- **Soft window**（左 / 右）、**Rembrandt**、**Split**（硬侧光）、**Top light**、**Under light**、**Rim / back light**、**Golden hour**、**Campfire**、**Cyberpunk**、**Key + fill**、**Flat front**\n- 预设会设定一切，包括精细控制项。从预设开始，再微调。\n\n### 每盏灯\n- **type**：spot = 一束光，sun = 照亮整个画面的均匀光\n- **brightness**：1.2 到 1.5 是自然的主光\n- **spread**：聚光束有多宽（sun 会忽略它）\n- **warmth**：从冷蓝到暖橙。Golden hour 大约在 0.7\n- **color** + **color_amount**：可选的彩色滤光片（red、orange、yellow、green、cyan、blue、purple、magenta）。0.3 到 0.6 看起来比较自然\n  - *注：* 颜色只会出现在那盏灯照到的地方，所以 \n  - 💡 用颜色时把灯的大小调得很小，免得整张图过饱和\n  - 阴影会退回到中性的补光\n- **enable_light_2**：第二盏灯。用作补光或轮廓光，保持暗一点\n\n### 效果\n- **blend**：重新打光与原图的混合。0.7 到 0.9 看起来最好\n- **light_wrap**：脸上光线渐变进入阴影的柔和程度。0 = 硬灯\n- **fill**：阴影永远不会低于的底线。0 = 漆黑，0.2 = 自然\n\n### 阴影\n- **shadows**：soft / hard / off\n- **shadow_amount**：多深\n- **shadow_blur**：模糊边缘。阴影看起来像剪出来的？调高这个\n- **background_shadow**：1 = 身后紧贴一面墙，0 = 背景很远，没有东西能接住阴影\n- **self_shadow**：主体对自己投射阴影的强度（鼻子、下巴、头发）。需要蒙版\n- **relief**：场景的 3D 深度有多大。越大 = 阴影越长越强\n- **advanced**：显示其余选项（深度衰减、阴影高度 / 长度 / 柔和度、主体距离、蒙版穹顶）\n \n### 蒙版\n- 接入一个，主体就会在身后的墙上投下阴影。\n- **subject_distance**：主体在墙前多远。0 = 紧贴墙面\n\n### 输出\n- **image**：重新打光后的图像\n- **shadow_mask**：白色 = 受光，黑色 = 处于阴影中\n- **light_layer**：单独的光照层（颜色也会在这里显示）\n\n### 快速修复\n\n| 问题 | 试试 |\n|---------|-----|\n| 生硬、像剪出来的 | 调高 **shadow_blur** 或 **light_wrap**，调低 **blend** |\n| 浑浊、太暗 | 调高 **fill** 或 **brightness** |\n| 平淡 | 调低 **fill**，把灯移离中心，调低 **Z** |\n| 墙上没有阴影 | 接入蒙版，调高 **background_shadow** 和 **subject_distance** |\n| 阴影落在很远的房间里 | 调低 **background_shadow** |\n\n\n## 💡 人像\n\n- 从 **Rembrandt** 或 **Soft window** 开始\n- **暖色场景：** **Golden hour**，或用 **Campfire** 得到低调的橙色光晕\n- **霓虹：** **Cyberpunk** 是两盏彩色灯。颜色按口味替换\n- **两盏灯：** 开启 **enable_light_2**，保持较暗（约 0.5）并偏冷\n- **主体身后有房间？** 把 **background_shadow** 设为 0 到 0.2，这样她就不会在十英尺外的沙发上投阴影\n- **聚光灯：** 不要把灯停在舞台边界上，会弄乱光锥\n- ⚠️ 阴影故意做得很强（所以才有 **blend**）\n\n\n---\n\n**\"True Nothing is. Permitted Everything is\"**  \n_Yoda Auditore, *Assassin's Wars*_\n\n",
              "src": "f658e65d",
              "srcTitle": "LC Lighting Control V2 🔦"
            },
            "ja": {
              "text": "\n# LC Lighting Control V2 🔦 \n\n---\n\n**ノーマルマップ** + **深度マップ**（任意で**被写体マスク**）から、どんな画像もリライトします。本物のキャストシャドウを、ハードでもソフトでも。\n\n✋ **まずはここから**\n- **プリセット**を選んで、**ステージ**上のライトをドラッグします。これで9割は完成です。\n- どれか1つでも値を変えると、プリセットは**custom**に切り替わります（何も失われません。ラベルが変わるだけです）。\n- 旧版の **LC Lighting Control 🔦** は別のノードで、今も動きます。\n\n### ステージ\n- **ドラッグ**＝X / Y（ライトの位置。+Xは右、+Yは上）\n- **Shift+ドラッグ**または**ホイール**＝Z（0＝真横から、1＝正面から）\n- 白＝ライト1、赤＝ライト2。ジェルの色を選ぶと、ハンドルもその色になります。\n- 青い矢印は、影が落ちる方向を示します。\n- 💡 中央付近のライトは正面からなので、横向きの影は落ちません。外側に動かすと影が見えます。\n\n### プリセット\n- **Soft window**（左 / 右）、**Rembrandt**、**Split**（ハードなサイド光）、**Top light**、**Under light**、**Rim / back light**、**Golden hour**、**Campfire**、**Cyberpunk**、**Key + fill**、**Flat front**\n- プリセットは、細かいコントロールも含めてすべてを設定します。まずそこから始めて、微調整しましょう。\n\n### 各ライト\n- **type**: spot＝ビーム、sun＝フレーム全体を均一に照らす光\n- **brightness**: 自然なキーライトは1.2〜1.5\n- **spread**: スポットビームの広さ（sunでは無視されます）\n- **warmth**: 冷たい青から暖かいオレンジまで。ゴールデンアワーは0.7あたり\n- **color** + **color_amount**: 任意のカラージェル（red、orange、yellow、green、cyan、blue、purple、magenta）。自然に見えるのは0.3〜0.6\n  - *注意：* 色はそのライトが届く場所にしか出ないので、\n  - 💡 色を使うときはライトのサイズをかなり下げて、画像全体が飽和しないようにしましょう\n  - 影はニュートラルなフィルに戻ります\n- **enable_light_2**: 2つ目のライト。フィルかリムとして、控えめに\n\n### ルック\n- **blend**: リライト後と元画像の比率。0.7〜0.9が一番きれいです\n- **light_wrap**: 顔の上で、光が影へ移り変わる緩やかさ。0＝ハードなランプ\n- **fill**: 影がそれ以上は暗くならない下限。0＝真っ暗、0.2＝自然\n\n### 影\n- **shadows**: soft / hard / off\n- **shadow_amount**: どれだけ暗くするか\n- **shadow_blur**: 影の縁をぼかします。影が切り抜いたように見えるなら、これを上げます\n- **background_shadow**: 1＝すぐ後ろに壁がある、0＝影を受けるものがない遠い背景\n- **self_shadow**: 被写体が自分自身に落とす影の強さ（鼻、あご、髪）。マスクが必要です\n- **relief**: シーンの3Dとしての深さ。大きいほど、影が長く強くなります\n- **advanced**: 残りを表示します（depth falloff、shadow height / length / softness、subject distance、mask dome）\n \n### マスク\n- つなぐと、被写体が背後の壁に影を落とします。\n- **subject_distance**: 壁からどれだけ手前にいるか。0＝壁にぴったり\n\n### 出力\n- **image**: リライト後の画像\n- **shadow_mask**: 白＝照らされている、黒＝影の中\n- **light_layer**: 光だけを取り出したもの（色もここに出ます）\n\n### 手早い対処法\n\n| 問題 | 対処 |\n|---------|-----|\n| きつい、切り抜いたように見える | **shadow_blur** か **light_wrap** を上げる、**blend** を下げる |\n| 濁っている、暗すぎる | **fill** か **brightness** を上げる |\n| のっぺりしている | **fill** を下げる、ライトを中央から外す、**Z** を下げる |\n| 壁に影が出ない | マスクをつなぐ、**background_shadow** と **subject_distance** を上げる |\n| 遠くにある部屋に影が出る | **background_shadow** を下げる |\n\n\n## 💡 ポートレート\n\n- **Rembrandt** か **Soft window** から始めます\n- **暖かいシーン：** **Golden hour**、または低いオレンジの光なら **Campfire**\n- **ネオン：** **Cyberpunk** は色付きのライト2灯です。好みで色を入れ替えてください\n- **2灯使い：** **enable_light_2** をオンにして、控えめ（0.5くらい）に、冷たい色で\n- **被写体の後ろに部屋がある？** **background_shadow** を0〜0.2にして、3メートル先のソファに彼女の影が落ちないようにします\n- **スポットライト：** ステージの境界線上には置かないでください。コーンが崩れます\n- ⚠️ 影はわざと強めに出ます（だから **blend** があります）\n\n\n---\n\n**\"True Nothing is. Permitted Everything is\"**  \n_Yoda Auditore, *Assassin's Wars*_\n\n",
              "src": "f658e65d",
              "srcTitle": "LC Lighting Control V2 🔦"
            },
            "ko": {
              "text": "\n# LC Lighting Control V2 🔦 \n\n---\n\n**normal map** + **depth map**(선택 사항인 **피사체 마스크**)으로 어떤 이미지든 리라이트합니다. 하드 또는 소프트, 진짜 캐스트 섀도.\n\n✋ **여기서 시작**\n- **프리셋**을 고르고 **스테이지**에서 라이트를 드래그하세요. 이게 90%입니다.\n- 값을 하나라도 바꾸면 프리셋이 **custom**으로 바뀝니다 (아무것도 잃지 않고, 이름표만 새로 붙습니다).\n- 예전 **LC Lighting Control 🔦**은 별개의 노드이고 여전히 작동합니다.\n\n### 스테이지\n- **드래그** = X / Y (라이트 위치. +X는 오른쪽, +Y는 위)\n- **Shift+드래그** 또는 **휠** = Z (0 = 측면, 1 = 정면)\n- 흰색 = 라이트 1, 빨간색 = 라이트 2. 젤 색을 고르면 핸들도 그 색이 됩니다.\n- 파란 화살표는 그림자가 지는 방향을 보여줍니다.\n- 💡 가운데 근처의 라이트는 정면이라 옆으로 그림자가 지지 않습니다. 바깥으로 옮겨야 보입니다.\n\n### 프리셋\n- **Soft window** (왼쪽 / 오른쪽), **Rembrandt**, **Split** (하드 측면), **Top light**, **Under light**, **Rim / back light**, **Golden hour**, **Campfire**, **Cyberpunk**, **Key + fill**, **Flat front**\n- 프리셋은 세부 컨트롤까지 전부 설정합니다. 거기서 시작해서 살짝 손보세요.\n\n### 각 라이트\n- **type**: spot = 빔, sun = 프레임 전체에 고른 빛\n- **brightness**: 1.2~1.5가 자연스러운 키 라이트\n- **spread**: 스폿 빔이 얼마나 넓은지 (sun은 무시)\n- **warmth**: 차가운 파랑에서 따뜻한 주황까지. Golden hour는 0.7 근처\n- **color** + **color_amount**: 선택 사항인 컬러 젤 (red, orange, yellow, green, cyan, blue, purple, magenta). 0.3~0.6이 자연스럽습니다\n  - *참고:* 색은 그 라이트가 닿는 곳에만 나타나므로 \n  - 💡 색을 쓸 때는 이미지 전체가 포화되지 않도록 라이트 size를 많이 낮추세요\n  - 그림자는 중립 fill로 돌아갑니다\n- **enable_light_2**: 두 번째 라이트. 필이나 림으로, 어둡게 두세요\n\n### 룩\n- **blend**: 리라이트 대 원본. 0.7~0.9가 가장 좋아 보입니다\n- **light_wrap**: 얼굴에서 빛이 그늘로 얼마나 서서히 넘어가는지. 0 = 하드 램프\n- **fill**: 그림자가 절대 내려가지 않는 하한선. 0 = 칠흑, 0.2 = 자연스러움\n\n### 그림자\n- **shadows**: soft / hard / off\n- **shadow_amount**: 얼마나 어둡게\n- **shadow_blur**: 가장자리를 블러. 그림자가 오려 붙인 것 같나요? 이걸 올리세요\n- **background_shadow**: 1 = 바로 뒤에 벽, 0 = 그림자를 받을 게 없는 먼 배경\n- **self_shadow**: 피사체가 자기 자신에게 지는 그림자(코, 턱, 머리카락)의 강도. 마스크 필요\n- **relief**: 장면의 3D 깊이. 많을수록 그림자가 더 길고 강해집니다\n- **advanced**: 나머지를 표시 (depth 감쇠, 그림자 높이 / 길이 / 부드러움, 피사체 거리, 마스크 돔)\n \n### 마스크\n- 연결하면 피사체가 뒤쪽 벽에 그림자를 드리웁니다.\n- **subject_distance**: 벽에서 앞으로 얼마나 떨어져 있는지. 0 = 벽에 딱 붙음\n\n### 출력\n- **image**: 리라이트된 이미지\n- **shadow_mask**: 흰색 = 빛 받음, 검정 = 그림자 속\n- **light_layer**: 빛만 따로 (색도 여기 표시됩니다)\n\n### 빠른 해결\n\n| 문제 | 시도 |\n|---------|-----|\n| 거칠고 오려 붙인 느낌 | **shadow_blur**나 **light_wrap**을 올리고, **blend**를 낮추기 |\n| 탁하고 너무 어두움 | **fill**이나 **brightness** 올리기 |\n| 평평함 | **fill**을 낮추고, 라이트를 중심에서 옮기고, **Z**를 낮추기 |\n| 벽에 그림자가 없음 | 마스크를 연결하고 **background_shadow**와 **subject_distance**를 올리기 |\n| 멀리 있는 방에 그림자가 생김 | **background_shadow**를 낮추기 |\n\n\n## 💡 인물 사진\n\n- **Rembrandt**나 **Soft window**로 시작\n- **따뜻한 장면:** **Golden hour**, 또는 낮은 주황빛 광채가 필요하면 **Campfire**\n- **네온:** **Cyberpunk**는 컬러 라이트 두 개입니다. 색은 취향대로 바꾸세요\n- **라이트 두 개:** **enable_light_2**를 켜고, 어둡게(약 0.5), 차갑게 두세요\n- **피사체 뒤에 방이 있나요?** 3m 뒤 소파에 그림자가 지지 않도록 **background_shadow**를 0~0.2로 설정하세요\n- **스폿 라이트:** 스테이지 경계에 놓지 마세요, 원뿔이 망가집니다\n- ⚠️ 그림자는 일부러 강합니다 (그래서 **blend**가 있는 겁니다)\n\n\n---\n\n**\"True Nothing is. Permitted Everything is\"**  \n_Yoda Auditore, *Assassin's Wars*_\n\n",
              "src": "f658e65d",
              "srcTitle": "LC Lighting Control V2 🔦"
            }
          },
          "titles": {
            "en": "LC Lighting Control V2 🔦",
            "zh": "LC Lighting Control V2 🔦",
            "ja": "LC Lighting Control V2 🔦",
            "ko": "LC Lighting Control V2 🔦"
          }
        },
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "English ✏️",
        "\n# LC Lighting Control V2 🔦 \n\n---\n\nRelight any image from a **normal map** + **depth map** (optional **subject mask**). Real cast shadows, hard or soft.\n\n✋ **Start here**\n- Pick a **preset**, then drag the light on the **stage**. That is 90% of it.\n- Change any value and the preset flips to **custom** (nothing is lost, it just gets a new label).\n- The old **LC Lighting Control 🔦** is a separate node and still works.\n\n### The stage\n- **Drag** = X / Y (where the light is. +X is right, +Y is up)\n- **Shift+drag** or **wheel** = Z (0 = side on, 1 = head on)\n- White = light 1, red = light 2. Pick a gel color and the handle takes it on.\n- The blue arrow shows where the shadow falls.\n- 💡 A light near the middle is head-on, so it throws no sideways shadow. Move it out to see one.\n\n### Presets\n- **Soft window** (left / right), **Rembrandt**, **Split** (hard side), **Top light**, **Under light**, **Rim / back light**, **Golden hour**, **Campfire**, **Cyberpunk**, **Key + fill**, **Flat front**\n- A preset sets everything, fine controls included. Start there, then nudge.\n\n### Each light\n- **type**: spot = a beam, sun = even light over the whole frame\n- **brightness**: 1.2 to 1.5 is a natural key light\n- **spread**: how wide the spot beam is (sun ignores it)\n- **warmth**: cool blue to warm orange. Golden hour lives around 0.7\n- **color** + **color_amount**: an optional colored gel (red, orange, yellow, green, cyan, blue, purple, magenta). 0.3 to 0.6 looks natural\n  - *note:* the color only shows where that light reaches, so \n  - 💡 dial the light size way down when using colors so it doesn't saturate the entire image\n  - shadows fall back to the neutral fill\n- **enable_light_2**: a second light. Fill or rim, keep it dim\n\n### The look\n- **blend**: relit vs original. 0.7 to 0.9 looks best\n- **light_wrap**: how gradually light rolls into shade on the face. 0 = hard lamp\n- **fill**: the floor the shadows never drop below. 0 = pitch black, 0.2 = natural\n\n### Shadows\n- **shadows**: soft / hard / off\n- **shadow_amount**: how dark\n- **shadow_blur**: blurs the edge. Shadow looks cut out? Raise this\n- **background_shadow**: 1 = a wall right behind, 0 = a distant background with nothing to catch a shadow\n- **self_shadow**: how strongly the subject shadows itself (nose, chin, hair). Needs a mask\n- **relief**: how deep the scene is in 3D. More = longer, stronger shadows\n- **advanced**: shows the rest (depth falloff, shadow height / length / softness, subject distance, mask dome)\n \n### Mask\n- Connect one and the subject throws a shadow on the wall behind it.\n- **subject_distance**: how far in front of the wall. 0 = flat against it\n\n### Outputs\n- **image**: the relit image\n- **shadow_mask**: white = lit, black = in shadow\n- **light_layer**: the light on its own (the color shows here too)\n\n### Quick fixes\n\n| Problem | Try |\n|---------|-----|\n| Harsh, cut out | raise **shadow_blur** or **light_wrap**, lower **blend** |\n| Muddy, too dark | raise **fill** or **brightness** |\n| Flat | lower **fill**, move the light off center, lower **Z** |\n| No shadow on the wall | connect the mask, raise **background_shadow** and **subject_distance** |\n| Shadow on a far-away room | lower **background_shadow** |\n\n\n## 💡 Portraits\n\n- start with **Rembrandt** or **Soft window**\n- **Warm scenes:** **Golden hour**, or **Campfire** for a low orange glow\n- **Neon:** **Cyberpunk** is two colored lights. Swap the colors to taste\n- **Two lights:** turn on **enable_light_2**, keep it dim (about 0.5) and cool\n- **Room behind the subject?** Set **background_shadow** to 0 to 0.2 so she isn't throwing shadows on a couch ten feet away\n- **Spot lights:** don't park one on the border of the stage, it messes up the cone\n- ⚠️ Shadows are strong on purpose (that's why there is a **blend**)\n\n\n---\n\n**\"True Nothing is. Permitted Everything is\"**  \n_Yoda Auditore, *Assassin's Wars*_\n\n"
      ],
      "widgets_values_named": {
        "language": "English ✏️",
        "text": "\n# LC Lighting Control V2 🔦 \n\n---\n\nRelight any image from a **normal map** + **depth map** (optional **subject mask**). Real cast shadows, hard or soft.\n\n✋ **Start here**\n- Pick a **preset**, then drag the light on the **stage**. That is 90% of it.\n- Change any value and the preset flips to **custom** (nothing is lost, it just gets a new label).\n- The old **LC Lighting Control 🔦** is a separate node and still works.\n\n### The stage\n- **Drag** = X / Y (where the light is. +X is right, +Y is up)\n- **Shift+drag** or **wheel** = Z (0 = side on, 1 = head on)\n- White = light 1, red = light 2. Pick a gel color and the handle takes it on.\n- The blue arrow shows where the shadow falls.\n- 💡 A light near the middle is head-on, so it throws no sideways shadow. Move it out to see one.\n\n### Presets\n- **Soft window** (left / right), **Rembrandt**, **Split** (hard side), **Top light**, **Under light**, **Rim / back light**, **Golden hour**, **Campfire**, **Cyberpunk**, **Key + fill**, **Flat front**\n- A preset sets everything, fine controls included. Start there, then nudge.\n\n### Each light\n- **type**: spot = a beam, sun = even light over the whole frame\n- **brightness**: 1.2 to 1.5 is a natural key light\n- **spread**: how wide the spot beam is (sun ignores it)\n- **warmth**: cool blue to warm orange. Golden hour lives around 0.7\n- **color** + **color_amount**: an optional colored gel (red, orange, yellow, green, cyan, blue, purple, magenta). 0.3 to 0.6 looks natural\n  - *note:* the color only shows where that light reaches, so \n  - 💡 dial the light size way down when using colors so it doesn't saturate the entire image\n  - shadows fall back to the neutral fill\n- **enable_light_2**: a second light. Fill or rim, keep it dim\n\n### The look\n- **blend**: relit vs original. 0.7 to 0.9 looks best\n- **light_wrap**: how gradually light rolls into shade on the face. 0 = hard lamp\n- **fill**: the floor the shadows never drop below. 0 = pitch black, 0.2 = natural\n\n### Shadows\n- **shadows**: soft / hard / off\n- **shadow_amount**: how dark\n- **shadow_blur**: blurs the edge. Shadow looks cut out? Raise this\n- **background_shadow**: 1 = a wall right behind, 0 = a distant background with nothing to catch a shadow\n- **self_shadow**: how strongly the subject shadows itself (nose, chin, hair). Needs a mask\n- **relief**: how deep the scene is in 3D. More = longer, stronger shadows\n- **advanced**: shows the rest (depth falloff, shadow height / length / softness, subject distance, mask dome)\n \n### Mask\n- Connect one and the subject throws a shadow on the wall behind it.\n- **subject_distance**: how far in front of the wall. 0 = flat against it\n\n### Outputs\n- **image**: the relit image\n- **shadow_mask**: white = lit, black = in shadow\n- **light_layer**: the light on its own (the color shows here too)\n\n### Quick fixes\n\n| Problem | Try |\n|---------|-----|\n| Harsh, cut out | raise **shadow_blur** or **light_wrap**, lower **blend** |\n| Muddy, too dark | raise **fill** or **brightness** |\n| Flat | lower **fill**, move the light off center, lower **Z** |\n| No shadow on the wall | connect the mask, raise **background_shadow** and **subject_distance** |\n| Shadow on a far-away room | lower **background_shadow** |\n\n\n## 💡 Portraits\n\n- start with **Rembrandt** or **Soft window**\n- **Warm scenes:** **Golden hour**, or **Campfire** for a low orange glow\n- **Neon:** **Cyberpunk** is two colored lights. Swap the colors to taste\n- **Two lights:** turn on **enable_light_2**, keep it dim (about 0.5) and cool\n- **Room behind the subject?** Set **background_shadow** to 0 to 0.2 so she isn't throwing shadows on a couch ten feet away\n- **Spot lights:** don't park one on the border of the stage, it messes up the cone\n- ⚠️ Shadows are strong on purpose (that's why there is a **blend**)\n\n\n---\n\n**\"True Nothing is. Permitted Everything is\"**  \n_Yoda Auditore, *Assassin's Wars*_\n\n"
      },
      "color": "#2E3A46",
      "bgcolor": "#2E3A46"
    },
    {
      "id": 4702,
      "type": "LCDepthAnythingV2",
      "pos": [
        -1840,
        -790
      ],
      "size": [
        340,
        130
      ],
      "flags": {
        "pinned": true
      },
      "order": 142,
      "mode": 4,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46092
        },
        {
          "name": "resolution",
          "type": "INT",
          "widget": {
            "name": "resolution"
          },
          "link": 46093
        }
      ],
      "outputs": [
        {
          "name": "depth",
          "type": "IMAGE",
          "links": [
            46094
          ]
        },
        {
          "name": "depth_mask",
          "type": "MASK",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC_MaskMaker_nodes",
        "ver": "3f344dd1f4d2e4dbe30b35e08757f8f4d60cb000",
        "Node name for S&R": "LCDepthAnythingV2",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "Depth Anything V2 Small (Apache-2.0)",
        518,
        true
      ],
      "widgets_values_named": {
        "model": "Depth Anything V2 Small (Apache-2.0)",
        "resolution": 518,
        "invert": true
      },
      "color": "#324b4b",
      "bgcolor": "#324b4b"
    },
    {
      "id": 4703,
      "type": "LCPreviewImage",
      "pos": [
        -1490,
        -710
      ],
      "size": [
        210,
        280
      ],
      "flags": {
        "pinned": true
      },
      "order": 166,
      "mode": 4,
      "inputs": [
        {
          "name": "image",
          "shape": 7,
          "type": "IMAGE",
          "link": 46094
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            46083
          ]
        }
      ],
      "title": "Depth Map 🗺️",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "24728b75a7291ed7d3ac57d6e23d906823392387",
        "Node name for S&R": "LCPreviewImage",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        ""
      ],
      "widgets_values_named": {
        "lc_preview": ""
      },
      "color": "#222",
      "bgcolor": "#000"
    },
    {
      "id": 4704,
      "type": "LCRemBG",
      "pos": [
        -1840,
        -620
      ],
      "size": [
        340,
        340
      ],
      "flags": {
        "pinned": true
      },
      "order": 120,
      "mode": 4,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46095
        }
      ],
      "outputs": [
        {
          "name": "cutout",
          "type": "IMAGE",
          "links": []
        },
        {
          "name": "mask",
          "type": "MASK",
          "links": [
            46096
          ]
        },
        {
          "name": "on_background",
          "type": "IMAGE",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC_MaskMaker_nodes",
        "ver": "3f344dd1f4d2e4dbe30b35e08757f8f4d60cb000",
        "Node name for S&R": "LCRemBG",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "BiRefNet general (MIT)",
        "none",
        "models/vitmatte (local)",
        0,
        10,
        10,
        0,
        1,
        0,
        2,
        "black"
      ],
      "widgets_values_named": {
        "model": "BiRefNet general (MIT)",
        "refine": "none",
        "vitmatte_model": "models/vitmatte (local)",
        "grow": 0,
        "edge_erode": 10,
        "edge_dilate": 10,
        "black_point": 0,
        "white_point": 1,
        "feather": 0,
        "max_megapixels": 2,
        "background": "black"
      },
      "color": "#324b4b",
      "bgcolor": "#324b4b"
    },
    {
      "id": 4705,
      "type": "LCPreviewMask",
      "pos": [
        -1480,
        -390
      ],
      "size": [
        200,
        280
      ],
      "flags": {
        "pinned": true
      },
      "order": 143,
      "mode": 4,
      "inputs": [
        {
          "name": "mask",
          "shape": 7,
          "type": "MASK",
          "link": 46096
        }
      ],
      "outputs": [
        {
          "name": "mask",
          "type": "MASK",
          "links": [
            46084
          ]
        }
      ],
      "title": "Target Mask 🎭",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "7e2d1aeb3227d1c20192d54210f67ce09469ad6c",
        "Node name for S&R": "LCPreviewMask",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        ""
      ],
      "widgets_values_named": {
        "lc_preview": ""
      },
      "color": "#222",
      "bgcolor": "#000"
    },
    {
      "id": 4706,
      "type": "LCPreviewImage",
      "pos": [
        -970,
        -390
      ],
      "size": [
        200,
        280
      ],
      "flags": {
        "pinned": true
      },
      "order": 209,
      "mode": 4,
      "inputs": [
        {
          "name": "image",
          "shape": 7,
          "type": "IMAGE",
          "link": 46097
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": []
        }
      ],
      "title": "Light Layer ☀️",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "24728b75a7291ed7d3ac57d6e23d906823392387",
        "Node name for S&R": "LCPreviewImage",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        ""
      ],
      "widgets_values_named": {
        "lc_preview": ""
      },
      "color": "#222",
      "bgcolor": "#000"
    },
    {
      "id": 4707,
      "type": "LCPreviewMask",
      "pos": [
        -760,
        -390
      ],
      "size": [
        200,
        280
      ],
      "flags": {
        "pinned": true
      },
      "order": 208,
      "mode": 4,
      "inputs": [
        {
          "name": "mask",
          "shape": 7,
          "type": "MASK",
          "link": 46098
        }
      ],
      "outputs": [
        {
          "name": "mask",
          "type": "MASK",
          "links": []
        }
      ],
      "title": "Shadow Mask 🎭",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "7e2d1aeb3227d1c20192d54210f67ce09469ad6c",
        "Node name for S&R": "LCPreviewMask",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        ""
      ],
      "widgets_values_named": {
        "lc_preview": ""
      },
      "color": "#222",
      "bgcolor": "#000"
    },
    {
      "id": 4748,
      "type": "LCOptimizer",
      "pos": [
        -3540,
        -2920
      ],
      "size": [
        330,
        482
      ],
      "flags": {
        "pinned": true
      },
      "order": 41,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "model",
          "type": "MODEL",
          "links": [
            46194
          ]
        },
        {
          "name": "clip",
          "type": "CLIP",
          "links": [
            46189
          ]
        },
        {
          "name": "vae",
          "type": "VAE",
          "links": [
            46191,
            46192
          ]
        },
        {
          "name": "summary",
          "type": "STRING",
          "links": null
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "ebb3e15291d5895d6ff01988fceebabfd49792db",
        "Node name for S&R": "LCOptimizer",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "Z-Image Turbo",
        "Optimal",
        "★ Recommended",
        "Qwen 3\\qwen3-4b-zimage-hereticV2-q8.gguf",
        "ultrafluxVAEImproved_v10.safetensors",
        "Auto",
        "auto",
        "auto",
        "auto",
        "off",
        "auto",
        "auto",
        "",
        ""
      ],
      "widgets_values_named": {
        "base_model": "Z-Image Turbo",
        "goal": "Optimal",
        "model_file": "★ Recommended",
        "text_encoder": "Qwen 3\\qwen3-4b-zimage-hereticV2-q8.gguf",
        "vae": "ultrafluxVAEImproved_v10.safetensors",
        "speed_ups": "Auto",
        "attention": "auto",
        "fp16_accumulation": "auto",
        "step_cache": "auto",
        "torch_compile": "off",
        "qwen21_cache": "auto",
        "clip_type": "auto",
        "spectrum": "",
        "lc_optimizer_face": ""
      },
      "color": "#2E4A3B",
      "bgcolor": "#2E4A3B"
    },
    {
      "id": 4749,
      "type": "Fast Groups Bypasser (rgthree)",
      "pos": [
        -1250,
        -3170
      ],
      "size": [
        270,
        60
      ],
      "flags": {
        "pinned": true
      },
      "order": 42,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "label": "🤫",
          "name": "OPT_CONNECTION",
          "type": "*",
          "links": []
        }
      ],
      "title": "Anypaint 🖌️ Bypasser",
      "properties": {
        "matchColors": "",
        "matchTitle": "# Anypaint",
        "showNav": false,
        "showAllGraphs": true,
        "sort": "position",
        "customSortAlphabet": "",
        "toggleRestriction": "default",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#c3782d",
      "bgcolor": "#af6419"
    },
    {
      "id": 4751,
      "type": "LCBatchImageComparer",
      "pos": [
        180,
        -3040
      ],
      "size": [
        530,
        830
      ],
      "flags": {
        "pinned": true
      },
      "order": 191,
      "mode": 4,
      "inputs": [
        {
          "label": "Before",
          "name": "image_a",
          "shape": 7,
          "type": "IMAGE",
          "link": 46169
        },
        {
          "label": "Anypaint(ed)",
          "name": "image_b",
          "shape": 7,
          "type": "IMAGE",
          "link": 46284
        }
      ],
      "outputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "links": []
        }
      ],
      "title": "Anypaint Compare",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "1d09f85e3bed224313a6fa77f3f79c632d6004ae",
        "Node name for S&R": "LCBatchImageComparer",
        "comparer_mode": "Slide",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 4752,
      "type": "LCPositive",
      "pos": [
        -650,
        -3130
      ],
      "size": [
        300,
        180
      ],
      "flags": {
        "pinned": true
      },
      "order": 43,
      "mode": 4,
      "inputs": [],
      "outputs": [
        {
          "name": "positive",
          "type": "STRING",
          "links": [
            46177
          ]
        }
      ],
      "title": "Anypaint prompt",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "1d09f85e3bed224313a6fa77f3f79c632d6004ae",
        "Node name for S&R": "LCPositive",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        ""
      ],
      "widgets_values_named": {
        "positive": ""
      },
      "color": "#326432",
      "bgcolor": "#326432"
    },
    {
      "id": 4753,
      "type": "PrimitiveBoolean",
      "pos": [
        -960,
        -3130
      ],
      "size": [
        300,
        60
      ],
      "flags": {
        "pinned": true
      },
      "order": 44,
      "mode": 4,
      "inputs": [
        {
          "label": "Inpaint=True/ Outpaint=False",
          "name": "value",
          "type": "BOOLEAN",
          "widget": {
            "name": "value"
          },
          "link": null
        }
      ],
      "outputs": [
        {
          "name": "BOOLEAN",
          "type": "BOOLEAN",
          "links": [
            46173,
            46176,
            46283,
            46921,
            46922
          ]
        }
      ],
      "title": "Inpaint or Outpaint?",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.37.0",
        "Node name for S&R": "PrimitiveBoolean",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        false
      ],
      "widgets_values_named": {
        "value": false
      },
      "color": "#233",
      "bgcolor": "#355"
    },
    {
      "id": 4754,
      "type": "LCBooleanSwitch",
      "pos": [
        -340,
        -3130
      ],
      "size": [
        270,
        80
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 146,
      "mode": 4,
      "inputs": [
        {
          "label": "Inpaint",
          "name": "on_true",
          "shape": 7,
          "type": "*",
          "link": 46171
        },
        {
          "label": "Outpaint",
          "name": "on_false",
          "shape": 7,
          "type": "*",
          "link": 46172
        },
        {
          "name": "state",
          "type": "BOOLEAN",
          "widget": {
            "name": "state"
          },
          "link": 46173
        }
      ],
      "outputs": [
        {
          "name": "*",
          "type": "*",
          "links": [
            46183,
            46277
          ]
        }
      ],
      "title": "Image boolean",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "573d8e1f7a5a76fb7c93ad7a317b8ff42426c986",
        "Node name for S&R": "LCBooleanSwitch",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "lc_w": 270,
        "lc_h": 80
      },
      "widgets_values": [
        false
      ],
      "widgets_values_named": {
        "state": false
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 4755,
      "type": "LCNote",
      "pos": [
        -1250,
        -3070
      ],
      "size": [
        270,
        670
      ],
      "flags": {
        "pinned": true
      },
      "order": 45,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "How to use",
      "properties": {
        "lc_note": {
          "source": "en",
          "texts": {
            "en": {
              "text": "- Z-Image (Turbo / Base) inpaint and outpaint with **Alibaba's Z-Image Fun ControlNet Union 2.1**, in inpaint mode.\n\n- **[Z-Image Fun ControlNet Union 2.1](https://huggingface.co/alibaba-pai/Z-Image-Turbo-Fun-Controlnet-Union-2.1)** (goes in models/model_patches, not loras)\n\n---\n\n### ✋ How to use\n\n### 🎚️Choose inpaint or outpaint from the toggle. \n- ⚠️ both will populate, but only the one selected will work\n\n**Inpaint 🖌️**\n\n- Run once so the picture shows on **LC Create Mask**, then paint over what you want changed \n   - set pencil or point mode. \n   - block on empty mask prevents it from processing until a mask is drawn\n\n**Outpaint & Rotate**\n\n- Drag the edges out and rotate the image \n- Write the prompt for the **whole** wider picture, including what fills the new sides.\n\n**Prompting ✍🏼**\n- base vs anypaint prompt\n   - if you are just outpainting, base prompt works okay\n   - for inpainting, you must use the anypaint prompt\n- 💡instead of *\"show her legs\"* when extending the image downward, write **\"pink haired woman sitting on a couch wearing a pink sweater and white lace panties\"**  \n\n\n---\n\n**Settings worth touching**\n- **control:** use the **8steps** version with Z-Image Turbo (8 steps). The plain 2.1 is for more steps / Base.\n- **control_strength:** 1.0 is the trained value. Lower it if the new area looks stiff, raise it if it ignores the picture around it.\n- **boundary_px:** 32 is the default. Raise it if a seam ever shows.\n- **padding (inpaint):** more = the model sees more of the scene around the mask.\n"
            },
            "zh": {
              "text": "- 使用 **Alibaba 的 Z-Image Fun ControlNet Union 2.1**（inpaint 模式）对 Z-Image（Turbo / Base）做 inpaint 和 outpaint。\n\n- **[Z-Image Fun ControlNet Union 2.1](https://huggingface.co/alibaba-pai/Z-Image-Turbo-Fun-Controlnet-Union-2.1)**（放在 models/model_patches，不是 loras）\n\n---\n\n### ✋ 使用方法\n\n### 🎚️用开关选择 inpaint 或 outpaint。 \n- ⚠️ 两个都会显示，但只有选中的那个会生效\n\n**Inpaint 🖌️**\n\n- 先运行一次，让图片显示在 **LC Create Mask** 上，然后涂抹你想要修改的地方 \n   - 设置为铅笔或点模式。 \n   - block on empty mask 会阻止处理，直到画了 mask\n\n**Outpaint 与旋转**\n\n- 拖动边缘向外扩展，并旋转图像 \n- 提示词要针对**整张**更宽的图片来写，包括填充新增两侧的内容。\n\n**提示词 ✍🏼**\n- base 提示词 vs anypaint 提示词\n   - 如果只是 outpaint，base 提示词就够用\n   - 做 inpaint 时，必须使用 anypaint 提示词\n- 💡向下扩展图像时，不要写 *\"show her legs\"*，而是写 **\"pink haired woman sitting on a couch wearing a pink sweater and white lace panties\"**  \n\n\n---\n\n**值得调整的设置**\n- **control：**Z-Image Turbo（8 步）请使用 **8steps** 版本。普通的 2.1 用于更多步数 / Base。\n- **control_strength：**1.0 是训练值。如果新区域看起来僵硬就调低，如果它无视周围的图像就调高。\n- **boundary_px：**默认 32。如果出现接缝就调高。\n- **padding (inpaint)：**越大，模型看到的 mask 周围场景越多。\n\n",
              "src": "afe87740",
              "srcTitle": "How to use"
            },
            "ja": {
              "text": "- Z-Image (Turbo / Base) の inpaint と outpaint を、inpaint モードの **Alibaba の Z-Image Fun ControlNet Union 2.1** で行います。\n\n- **[Z-Image Fun ControlNet Union 2.1](https://huggingface.co/alibaba-pai/Z-Image-Turbo-Fun-Controlnet-Union-2.1)** (入れる場所は loras ではなく models/model_patches です)\n\n---\n\n### ✋ 使い方\n\n### 🎚️トグルで inpaint か outpaint を選びます。 \n- ⚠️ 両方とも表示されますが、選んだほうだけが動作します\n\n**Inpaint 🖌️**\n\n- 一度実行して画像を **LC Create Mask** に表示させてから、変えたい部分を塗ります \n   - pencil か point モードを選びます。 \n   - block on empty mask をオンにすると、マスクを描くまで処理が走りません\n\n**Outpaint & Rotate**\n\n- 端をドラッグして広げ、画像を回転させます \n- プロンプトは、新しく広がった両側に入るものも含めて、**全体**の広い画像について書きます。\n\n**プロンプト ✍🏼**\n- base プロンプトと anypaint プロンプト\n   - outpaint だけなら、base プロンプトで問題なく使えます\n   - inpaint では、anypaint プロンプトを必ず使ってください\n- 💡画像を下へ広げるとき、*\"show her legs\"* ではなく **\"pink haired woman sitting on a couch wearing a pink sweater and white lace panties\"** のように書きます  \n\n\n---\n\n**触る価値のある設定**\n- **control:** Z-Image Turbo (8 steps) では **8steps** バージョンを使います。通常の 2.1 は、ステップ数が多い場合や Base 用です。\n- **control_strength:** 1.0 が学習時の値です。新しい領域が硬く見えるときは下げ、周りの画像を無視するときは上げます。\n- **boundary_px:** デフォルトは 32。継ぎ目が見えたら上げてください。\n- **padding (inpaint):** 大きいほど、マスクの周りのシーンがモデルに多く見えます。\n",
              "src": "afe87740",
              "srcTitle": "How to use"
            },
            "ko": {
              "text": "- **Alibaba의 Z-Image Fun ControlNet Union 2.1**을 inpaint 모드로 써서 Z-Image(Turbo / Base)의 inpaint와 outpaint를 합니다.\n\n- **[Z-Image Fun ControlNet Union 2.1](https://huggingface.co/alibaba-pai/Z-Image-Turbo-Fun-Controlnet-Union-2.1)** (loras가 아니라 models/model_patches에 넣으세요)\n\n---\n\n### ✋ 사용법\n\n### 🎚️토글에서 inpaint 또는 outpaint를 고르세요. \n- ⚠️ 둘 다 표시되지만 선택한 것만 작동합니다\n\n**Inpaint 🖌️**\n\n- 한 번 실행해서 **LC Create Mask**에 그림이 뜨면, 바꾸고 싶은 부분을 칠하세요 \n   - 연필 또는 점 모드를 설정하세요. \n   - block on empty mask를 켜면 마스크를 그리기 전에는 처리되지 않습니다\n\n**Outpaint & Rotate**\n\n- 가장자리를 드래그해 늘리고 이미지를 회전하세요 \n- 새로 생기는 옆 부분에 들어갈 내용을 포함해, 넓어진 **전체** 그림에 대한 프롬프트를 쓰세요.\n\n**프롬프트 ✍🏼**\n- base 프롬프트 vs anypaint 프롬프트\n   - outpaint만 한다면 base 프롬프트로도 괜찮습니다\n   - inpaint는 반드시 anypaint 프롬프트를 써야 합니다\n- 💡이미지를 아래로 확장할 때 *\"show her legs\"* 대신 **\"pink haired woman sitting on a couch wearing a pink sweater and white lace panties\"** 처럼 쓰세요  \n\n\n---\n\n**손댈 만한 설정**\n- **control:** Z-Image Turbo(8 steps)에는 **8steps** 버전을 쓰세요. 일반 2.1은 step이 더 많을 때나 Base용입니다.\n- **control_strength:** 1.0이 학습된 값입니다. 새 영역이 뻣뻣해 보이면 낮추고, 주변 그림을 무시하면 높이세요.\n- **boundary_px:** 기본값은 32입니다. 이음새가 보이면 올리세요.\n- **padding (inpaint):** 클수록 모델이 마스크 주변 장면을 더 많이 봅니다.\n",
              "src": "afe87740",
              "srcTitle": "How to use"
            }
          },
          "titles": {
            "en": "How to use",
            "zh": "使用方法",
            "ja": "使い方",
            "ko": "사용법"
          }
        },
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "English ✏️",
        "- Z-Image (Turbo / Base) inpaint and outpaint with **Alibaba's Z-Image Fun ControlNet Union 2.1**, in inpaint mode.\n\n- **[Z-Image Fun ControlNet Union 2.1](https://huggingface.co/alibaba-pai/Z-Image-Turbo-Fun-Controlnet-Union-2.1)** (goes in models/model_patches, not loras)\n\n---\n\n### ✋ How to use\n\n### 🎚️Choose inpaint or outpaint from the toggle. \n- ⚠️ both will populate, but only the one selected will work\n\n**Inpaint 🖌️**\n\n- Run once so the picture shows on **LC Create Mask**, then paint over what you want changed \n   - set pencil or point mode. \n   - block on empty mask prevents it from processing until a mask is drawn\n\n**Outpaint & Rotate**\n\n- Drag the edges out and rotate the image \n- Write the prompt for the **whole** wider picture, including what fills the new sides.\n\n**Prompting ✍🏼**\n- base vs anypaint prompt\n   - if you are just outpainting, base prompt works okay\n   - for inpainting, you must use the anypaint prompt\n- 💡instead of *\"show her legs\"* when extending the image downward, write **\"pink haired woman sitting on a couch wearing a pink sweater and white lace panties\"**  \n\n\n---\n\n**Settings worth touching**\n- **control:** use the **8steps** version with Z-Image Turbo (8 steps). The plain 2.1 is for more steps / Base.\n- **control_strength:** 1.0 is the trained value. Lower it if the new area looks stiff, raise it if it ignores the picture around it.\n- **boundary_px:** 32 is the default. Raise it if a seam ever shows.\n- **padding (inpaint):** more = the model sees more of the scene around the mask.\n"
      ],
      "widgets_values_named": {
        "language": "English ✏️",
        "text": "- Z-Image (Turbo / Base) inpaint and outpaint with **Alibaba's Z-Image Fun ControlNet Union 2.1**, in inpaint mode.\n\n- **[Z-Image Fun ControlNet Union 2.1](https://huggingface.co/alibaba-pai/Z-Image-Turbo-Fun-Controlnet-Union-2.1)** (goes in models/model_patches, not loras)\n\n---\n\n### ✋ How to use\n\n### 🎚️Choose inpaint or outpaint from the toggle. \n- ⚠️ both will populate, but only the one selected will work\n\n**Inpaint 🖌️**\n\n- Run once so the picture shows on **LC Create Mask**, then paint over what you want changed \n   - set pencil or point mode. \n   - block on empty mask prevents it from processing until a mask is drawn\n\n**Outpaint & Rotate**\n\n- Drag the edges out and rotate the image \n- Write the prompt for the **whole** wider picture, including what fills the new sides.\n\n**Prompting ✍🏼**\n- base vs anypaint prompt\n   - if you are just outpainting, base prompt works okay\n   - for inpainting, you must use the anypaint prompt\n- 💡instead of *\"show her legs\"* when extending the image downward, write **\"pink haired woman sitting on a couch wearing a pink sweater and white lace panties\"**  \n\n\n---\n\n**Settings worth touching**\n- **control:** use the **8steps** version with Z-Image Turbo (8 steps). The plain 2.1 is for more steps / Base.\n- **control_strength:** 1.0 is the trained value. Lower it if the new area looks stiff, raise it if it ignores the picture around it.\n- **boundary_px:** 32 is the default. Raise it if a seam ever shows.\n- **padding (inpaint):** more = the model sees more of the scene around the mask.\n"
      },
      "color": "#2E3A46",
      "bgcolor": "#2E3A46"
    },
    {
      "id": 4756,
      "type": "LCBooleanSwitch",
      "pos": [
        -340,
        -3090
      ],
      "size": [
        270,
        80
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 147,
      "mode": 4,
      "inputs": [
        {
          "label": "Inpaint",
          "name": "on_true",
          "shape": 7,
          "type": "*",
          "link": 46174
        },
        {
          "label": "Outpaint",
          "name": "on_false",
          "shape": 7,
          "type": "*",
          "link": 46175
        },
        {
          "name": "state",
          "type": "BOOLEAN",
          "widget": {
            "name": "state"
          },
          "link": 46176
        }
      ],
      "outputs": [
        {
          "name": "*",
          "type": "*",
          "links": [
            46184,
            46276
          ]
        }
      ],
      "title": "Mask boolean",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "573d8e1f7a5a76fb7c93ad7a317b8ff42426c986",
        "Node name for S&R": "LCBooleanSwitch",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "lc_w": 270,
        "lc_h": 80
      },
      "widgets_values": [
        false
      ],
      "widgets_values_named": {
        "state": false
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 4757,
      "type": "GetNode",
      "pos": [
        -340,
        -3010
      ],
      "size": [
        210,
        40
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 46,
      "mode": 4,
      "inputs": [],
      "outputs": [
        {
          "name": "LC_PIPE",
          "type": "LC_PIPE",
          "links": [
            46182
          ]
        }
      ],
      "title": "Get_Pipe",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Pipe"
      ],
      "widgets_values_named": {
        "Constant": "Pipe"
      }
    },
    {
      "id": 4758,
      "type": "LCBooleanSwitch",
      "pos": [
        -960,
        -3030
      ],
      "size": [
        300,
        80
      ],
      "flags": {
        "collapsed": false,
        "pinned": true
      },
      "order": 145,
      "mode": 4,
      "inputs": [
        {
          "label": "Anypaint Prompt ✍🏼",
          "name": "on_true",
          "shape": 7,
          "type": "*",
          "link": 46177
        },
        {
          "label": "Base Prompt ✍🏼",
          "name": "on_false",
          "shape": 7,
          "type": "*",
          "link": 46178
        }
      ],
      "outputs": [
        {
          "name": "*",
          "type": "*",
          "links": [
            46278
          ]
        }
      ],
      "title": "Prompt Selector ✍🏼",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "1d09f85e3bed224313a6fa77f3f79c632d6004ae",
        "Node name for S&R": "LCBooleanSwitch",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "lc_w": 300,
        "lc_h": 80
      },
      "widgets_values": [
        false
      ],
      "widgets_values_named": {
        "state": false
      },
      "color": "#232",
      "bgcolor": "#353"
    },
    {
      "id": 4759,
      "type": "LCVRAMCacheClear",
      "pos": [
        -340,
        -3050
      ],
      "size": [
        270,
        30
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 193,
      "mode": 4,
      "inputs": [
        {
          "name": "any",
          "type": "*",
          "link": 46286
        }
      ],
      "outputs": [
        {
          "name": "any",
          "type": "*",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "1d09f85e3bed224313a6fa77f3f79c632d6004ae",
        "Node name for S&R": "LCVRAMCacheClear",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 4760,
      "type": "LCSplineMask",
      "pos": [
        -960,
        -2840
      ],
      "size": [
        300,
        630
      ],
      "flags": {
        "pinned": true
      },
      "order": 127,
      "mode": 4,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46180
        }
      ],
      "outputs": [
        {
          "name": "control_image",
          "type": "IMAGE",
          "links": [
            46171
          ]
        },
        {
          "name": "control_mask",
          "type": "MASK",
          "links": [
            46174
          ]
        }
      ],
      "title": "Inpaint Mask 🖼️✏️",
      "properties": {
        "cnr_id": "ComfyUI_LC_MaskMaker_nodes",
        "ver": "95d1981dbba5f76662082a325b413f142bbd96ea",
        "Node name for S&R": "LCSplineMask",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        true,
        true,
        true,
        false,
        0,
        1,
        0.45,
        "[]",
        null,
        null
      ],
      "widgets_values_named": {
        "block": true,
        "pencil": true,
        "smooth": true,
        "invert": false,
        "feather": 0,
        "opacity": 1,
        "overlay_opacity": 0.45,
        "points": "[]",
        "Undo": null,
        "Clear": null
      },
      "color": "#324b4b",
      "bgcolor": "#324b4b"
    },
    {
      "id": 4761,
      "type": "LCImageRotatePad",
      "pos": [
        -650,
        -2840
      ],
      "size": [
        300,
        630
      ],
      "flags": {
        "pinned": true
      },
      "order": 128,
      "mode": 4,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46181
        }
      ],
      "outputs": [
        {
          "name": "control_image",
          "type": "IMAGE",
          "links": [
            46172
          ]
        },
        {
          "name": "control_mask",
          "type": "MASK",
          "links": [
            46175
          ]
        },
        {
          "name": "width",
          "type": "INT",
          "links": []
        },
        {
          "name": "height",
          "type": "INT",
          "links": []
        }
      ],
      "title": "Outpaint Rotate + Pad 🔄",
      "properties": {
        "cnr_id": "ComfyUI_LC_MaskMaker_nodes",
        "ver": "95d1981dbba5f76662082a325b413f142bbd96ea",
        "Node name for S&R": "LCImageRotatePad",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        false,
        0,
        "expand",
        "gray",
        0,
        0,
        0,
        0,
        "free",
        "16",
        true,
        2
      ],
      "widgets_values_named": {
        "keep_frame": false,
        "angle": 0,
        "fit": "expand",
        "fill": "gray",
        "left": 0,
        "top": 0,
        "right": 0,
        "bottom": 0,
        "aspect": "free",
        "snap_to": "16",
        "block": true,
        "max_megapixels": 2
      },
      "color": "#324b4b",
      "bgcolor": "#324b4b"
    },
    {
      "id": 4762,
      "type": "LCPipeOut",
      "pos": [
        -340,
        -2970
      ],
      "size": [
        200,
        550
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 126,
      "mode": 4,
      "inputs": [
        {
          "label": "pipe",
          "name": "pipe",
          "type": "LC_PIPE",
          "link": 46182
        }
      ],
      "outputs": [
        {
          "name": "pipe",
          "type": "LC_PIPE",
          "links": []
        },
        {
          "name": "Model 1",
          "type": "MODEL",
          "links": [
            46273
          ]
        },
        {
          "name": "Clip 1",
          "type": "CLIP",
          "links": [
            46274
          ]
        },
        {
          "name": "VAE 1",
          "type": "VAE",
          "links": [
            46275
          ]
        },
        {
          "name": "Model 2",
          "type": "MODEL",
          "links": []
        },
        {
          "name": "Clip 2",
          "type": "CLIP",
          "links": []
        },
        {
          "name": "VAE 2",
          "type": "VAE",
          "links": []
        },
        {
          "name": "Image",
          "type": "IMAGE",
          "links": []
        },
        {
          "name": "Mask",
          "type": "MASK",
          "links": []
        },
        {
          "name": "Width",
          "type": "INT",
          "links": []
        },
        {
          "name": "Height",
          "type": "INT",
          "links": []
        },
        {
          "name": "Latent",
          "type": "LATENT",
          "links": []
        },
        {
          "name": "Batch",
          "type": "INT",
          "links": []
        },
        {
          "name": "Positive prompt",
          "type": "STRING",
          "links": [
            46178
          ]
        },
        {
          "name": "Positive conditioning",
          "type": "CONDITIONING",
          "links": []
        },
        {
          "name": "Negative prompt",
          "type": "STRING",
          "links": []
        },
        {
          "name": "Negative conditioning",
          "type": "CONDITIONING",
          "links": []
        },
        {
          "name": "Seed",
          "type": "INT",
          "links": [
            46279
          ]
        },
        {
          "name": "total_steps",
          "type": "INT",
          "links": []
        },
        {
          "name": "cfg_1",
          "type": "FLOAT",
          "links": []
        },
        {
          "name": "denoise",
          "type": "FLOAT",
          "links": []
        },
        {
          "name": "step_swap",
          "type": "INT",
          "links": []
        },
        {
          "name": "cfg_2",
          "type": "FLOAT",
          "links": []
        },
        {
          "name": "sampler_name",
          "type": "COMBO",
          "links": [
            46281
          ]
        },
        {
          "name": "scheduler",
          "type": "COMBO",
          "links": [
            46282
          ]
        },
        {
          "name": "detailer_steps",
          "type": "INT",
          "links": [
            46280
          ]
        },
        {
          "name": "protect_mask",
          "type": "MASK",
          "links": null
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "1d09f85e3bed224313a6fa77f3f79c632d6004ae",
        "Node name for S&R": "LCPipeOut",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#707070",
      "bgcolor": "#707070"
    },
    {
      "id": 4763,
      "type": "LCPreviewImage",
      "pos": [
        -340,
        -2840
      ],
      "size": [
        200,
        270
      ],
      "flags": {
        "pinned": true
      },
      "order": 169,
      "mode": 4,
      "inputs": [
        {
          "name": "image",
          "shape": 7,
          "type": "IMAGE",
          "link": 46183
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "573d8e1f7a5a76fb7c93ad7a317b8ff42426c986",
        "Node name for S&R": "LCPreviewImage",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        ""
      ],
      "widgets_values_named": {
        "lc_preview": ""
      },
      "color": "#222",
      "bgcolor": "#000"
    },
    {
      "id": 4764,
      "type": "LCPreviewMask",
      "pos": [
        -340,
        -2490
      ],
      "size": [
        200,
        270
      ],
      "flags": {
        "pinned": true
      },
      "order": 170,
      "mode": 4,
      "inputs": [
        {
          "name": "mask",
          "shape": 7,
          "type": "MASK",
          "link": 46184
        }
      ],
      "outputs": [
        {
          "name": "mask",
          "type": "MASK",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "1d09f85e3bed224313a6fa77f3f79c632d6004ae",
        "Node name for S&R": "LCPreviewMask",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        ""
      ],
      "widgets_values_named": {
        "lc_preview": ""
      },
      "color": "#222",
      "bgcolor": "#000"
    },
    {
      "id": 4765,
      "type": "GetNode",
      "pos": [
        -1240,
        -2310
      ],
      "size": [
        210,
        50
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 47,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "*",
          "type": "*",
          "links": [
            46169,
            46180,
            46181,
            46187
          ]
        }
      ],
      "title": "Get_RD Post Stop",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "RD Post Stop"
      ],
      "widgets_values_named": {
        "Constant": "RD Post Stop"
      }
    },
    {
      "id": 4766,
      "type": "Label (rgthree)",
      "pos": [
        -1070,
        -2330
      ],
      "size": [
        54.921875,
        40
      ],
      "flags": {
        "allow_interaction": false,
        "pinned": true
      },
      "order": 48,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "👈",
      "properties": {
        "fontSize": 40,
        "fontFamily": "Arial",
        "fontColor": "#ffffff",
        "textAlign": "left",
        "backgroundColor": "transparent",
        "padding": 0,
        "borderRadius": 0,
        "angle": 0,
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#fff0",
      "bgcolor": "#fff0"
    },
    {
      "id": 4768,
      "type": "LCAnySwitch",
      "pos": [
        -1240,
        -2270
      ],
      "size": [
        330,
        120
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 192,
      "mode": 0,
      "inputs": [
        {
          "label": "IMAGE",
          "name": "any_01",
          "shape": 7,
          "type": "IMAGE",
          "link": 46285
        },
        {
          "label": "*",
          "name": "any_02",
          "shape": 7,
          "type": "*",
          "link": 46187
        }
      ],
      "outputs": [
        {
          "label": "IMAGE",
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            46188
          ]
        }
      ],
      "title": "image bypass switch",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "1d09f85e3bed224313a6fa77f3f79c632d6004ae",
        "Node name for S&R": "LCAnySwitch",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {
            "any_01": true,
            "any_02": true,
            "any_03": true,
            "any_04": true,
            "any_05": true,
            "any_06": true,
            "any_07": true,
            "any_08": true,
            "any_09": true,
            "any_10": true,
            "any_11": true,
            "any_12": true,
            "any_13": true,
            "any_14": true,
            "any_15": true,
            "any_16": true,
            "any_17": true,
            "any_18": true,
            "any_19": true,
            "any_20": true
          },
          "send_to_any": 0,
          "apply_to_unrepeated": 0,
          "version": "7.8"
        },
        "lc_w": 330,
        "lc_h": 120
      },
      "widgets_values": [
        2
      ],
      "widgets_values_named": {
        "inputcount": 2
      },
      "color": "#222",
      "bgcolor": "#000"
    },
    {
      "id": 4769,
      "type": "SetNode",
      "pos": [
        -1240,
        -2230
      ],
      "size": [
        210,
        40
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 210,
      "mode": 0,
      "inputs": [
        {
          "name": "*",
          "type": "*",
          "link": 46188
        }
      ],
      "outputs": [
        {
          "name": "*",
          "type": "*",
          "links": []
        }
      ],
      "title": "Set_Anypaint image",
      "properties": {
        "Node name for S&R": "SetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "previousName": "Anypaint image",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Anypaint image"
      ],
      "widgets_values_named": {
        "Constant": "Anypaint image"
      }
    },
    {
      "id": 4770,
      "type": "LCAdvancedFolder",
      "pos": [
        -850,
        150
      ],
      "size": [
        290,
        200
      ],
      "flags": {
        "pinned": true
      },
      "order": 136,
      "mode": 0,
      "inputs": [
        {
          "name": "prefix",
          "type": "STRING",
          "widget": {
            "name": "prefix"
          },
          "link": 47335
        }
      ],
      "outputs": [
        {
          "name": "filename",
          "type": "STRING",
          "links": [
            46199
          ]
        },
        {
          "name": "path",
          "type": "STRING",
          "links": [
            46200
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "3d7e0de54080f5d9bdd720e0e1b854e33c4f0673",
        "Node name for S&R": "LCAdvancedFolder",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "Metadata",
        "Test",
        "",
        "%Y-%m-%d",
        "auto",
        true
      ],
      "widgets_values_named": {
        "folder": "Metadata",
        "prefix": "Test",
        "suffix": "",
        "timestamp": "%Y-%m-%d",
        "path_separator": "auto",
        "include_prefix_in_path": true
      },
      "color": "#325A5A",
      "bgcolor": "#325A5A"
    },
    {
      "id": 4771,
      "type": "LCSaveImage",
      "pos": [
        -850,
        390
      ],
      "size": [
        280,
        250
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 160,
      "mode": 0,
      "inputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "link": 46197
        },
        {
          "name": "metadata",
          "shape": 7,
          "type": "LC_SAVE_META",
          "link": 46198
        },
        {
          "name": "filename",
          "type": "STRING",
          "widget": {
            "name": "filename"
          },
          "link": 46199
        },
        {
          "name": "path",
          "type": "STRING",
          "widget": {
            "name": "path"
          },
          "link": 46200
        }
      ],
      "outputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "links": []
        },
        {
          "name": "saved_as",
          "type": "STRING",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "3d7e0de54080f5d9bdd720e0e1b854e33c4f0673",
        "Node name for S&R": "LCSaveImage",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "LC123",
        "",
        "png",
        95,
        true,
        true,
        true,
        ""
      ],
      "widgets_values_named": {
        "filename": "LC123",
        "path": "",
        "format": "png",
        "quality": 95,
        "embed_workflow": true,
        "embed_civitai": true,
        "hash_resources": true,
        "filename_prefix": ""
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 4773,
      "type": "GetNode",
      "pos": [
        -850,
        110
      ],
      "size": [
        210,
        50
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 49,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "LC_SAVE_META",
          "type": "LC_SAVE_META",
          "links": [
            46198
          ]
        }
      ],
      "title": "Get_Metadata 🏷️",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Metadata 🏷️"
      ],
      "widgets_values_named": {
        "Constant": "Metadata 🏷️"
      }
    },
    {
      "id": 4774,
      "type": "Label (rgthree)",
      "pos": [
        -670,
        40
      ],
      "size": [
        54.921875,
        40
      ],
      "flags": {
        "allow_interaction": false,
        "pinned": true
      },
      "order": 50,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "👈",
      "properties": {
        "fontSize": 40,
        "fontFamily": "Arial",
        "fontColor": "#ffffff",
        "textAlign": "left",
        "backgroundColor": "transparent",
        "padding": 0,
        "borderRadius": 0,
        "angle": 0,
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#fff0",
      "bgcolor": "#fff0"
    },
    {
      "id": 4775,
      "type": "Fast Groups Bypasser (rgthree)",
      "pos": [
        -1480,
        470
      ],
      "size": [
        300,
        110
      ],
      "flags": {
        "pinned": true
      },
      "order": 51,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "label": "🤫",
          "name": "OPT_CONNECTION",
          "type": "*",
          "links": []
        }
      ],
      "title": "Save selcetor",
      "properties": {
        "matchColors": "",
        "matchTitle": "#Save",
        "showNav": false,
        "showAllGraphs": true,
        "sort": "position",
        "customSortAlphabet": "",
        "toggleRestriction": "default",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#c3782d",
      "bgcolor": "#af6419"
    },
    {
      "id": 4776,
      "type": "LCEasyFolder",
      "pos": [
        -1160,
        70
      ],
      "size": [
        280,
        160
      ],
      "flags": {
        "collapsed": false,
        "pinned": true
      },
      "order": 135,
      "mode": 0,
      "inputs": [
        {
          "name": "prefix",
          "type": "STRING",
          "widget": {
            "name": "prefix"
          },
          "link": 47334
        }
      ],
      "outputs": [
        {
          "name": "filename_prefix",
          "type": "STRING",
          "links": [
            46203
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "79b81758ac54ba8f9b46ecf7682902e87dc26684",
        "Node name for S&R": "LCEasyFolder",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "aux_id": "lonecatone23/ComfyUI_LC123_nodes"
      },
      "widgets_values": [
        "Drafts",
        "Test",
        "",
        "none",
        "auto"
      ],
      "widgets_values_named": {
        "folder": "Drafts",
        "prefix": "Test",
        "suffix": "",
        "timestamp": "none",
        "path_separator": "auto"
      },
      "color": "#325A5A",
      "bgcolor": "#325A5A"
    },
    {
      "id": 4777,
      "type": "GetNode",
      "pos": [
        -850,
        70
      ],
      "size": [
        210,
        40
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 52,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            46197
          ]
        }
      ],
      "title": "Get_Pro Post",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Pro Post"
      ],
      "widgets_values_named": {
        "Constant": "Pro Post"
      },
      "color": "#2a363b",
      "bgcolor": "#3f5159"
    },
    {
      "id": 4778,
      "type": "GetNode",
      "pos": [
        -1160,
        270
      ],
      "size": [
        210,
        40
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 53,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            46202
          ]
        }
      ],
      "title": "Get_Rough Draft",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.5.1",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Rough Draft"
      ],
      "widgets_values_named": {
        "Constant": "Rough Draft"
      },
      "color": "#2a363b",
      "bgcolor": "#3f5159",
      "shape": 2
    },
    {
      "id": 4780,
      "type": "SaveImage",
      "pos": [
        -1160,
        310
      ],
      "size": [
        270,
        270
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 159,
      "mode": 0,
      "inputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "link": 46202
        },
        {
          "name": "filename_prefix",
          "type": "STRING",
          "widget": {
            "name": "filename_prefix"
          },
          "link": 46203
        }
      ],
      "outputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.3.67",
        "Node name for S&R": "SaveImage",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.5.1"
        },
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65
      },
      "widgets_values": [
        "ComfyUI"
      ],
      "widgets_values_named": {
        "filename_prefix": "ComfyUI"
      },
      "color": "#233",
      "bgcolor": "#355",
      "shape": 2
    },
    {
      "id": 4781,
      "type": "LCNote",
      "pos": [
        -2070,
        -2320
      ],
      "size": [
        320,
        160
      ],
      "flags": {
        "pinned": true
      },
      "order": 54,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "CivitAI 🚩🔪",
      "properties": {
        "lc_note": {
          "source": "en",
          "texts": {
            "en": {
              "text": "**What is this?**\n\n- Removes the words in `assets/lists/civitai_compliance_remove.txt` from a prompt (whole words only), like the \"child\" / \"late teens\" wording LLMs sometimes (and abliterated models especially) add. \n- 🛑 **Note:** switching it on is **your choice.** \n- ⚠️ A word filter, not a safety system: it guarantees nothing, and what you post is on you"
            },
            "zh": {
              "text": "**这是什么？**\n\n- 从提示词中移除 `assets/lists/civitai_compliance_remove.txt` 里的词（仅匹配整词），比如 LLM（尤其是 abliterated 模型）有时会加进去的 “child” / “late teens” 之类的措辞。 \n- 🛑 **注意：** 是否开启它是**你自己的选择。** \n- ⚠️ 这是词语过滤，不是安全系统：它不保证任何事，你发布的内容由你自己负责\n",
              "src": "4a6185c8",
              "srcTitle": "CivitAI 🚩🔪"
            },
            "ja": {
              "text": "**これは何?**\n\n- `assets/lists/civitai_compliance_remove.txt` にある単語を、プロンプトから(完全一致する単語のみ)削除します。LLM(特にabliteratedモデル)が付け足しがちな\"child\" / \"late teens\"のような表現が対象です。\n- 🛑 **注意:** オンにするかどうかは**あなたの判断**です。\n- ⚠️ 単語フィルターであって安全システムではありません。何も保証しませんし、投稿する内容はあなたの責任です\n",
              "src": "4a6185c8",
              "srcTitle": "CivitAI 🚩🔪"
            },
            "ko": {
              "text": "**이게 뭔가요?**\n\n- LLM이(특히 abliterated 모델이) 가끔 덧붙이는 \"child\" / \"late teens\" 같은 표현처럼, `assets/lists/civitai_compliance_remove.txt`에 있는 단어를 프롬프트에서 제거합니다(전체 단어 단위로만). \n- 🛑 **참고:** 켜는 것은 **본인의 선택**입니다. \n- ⚠️ 단어 필터일 뿐 안전 시스템이 아닙니다. 아무것도 보장하지 않으며, 게시하는 내용에 대한 책임은 본인에게 있습니다\n",
              "src": "4a6185c8",
              "srcTitle": "CivitAI 🚩🔪"
            }
          },
          "titles": {
            "en": "CivitAI 🚩🔪",
            "zh": "CivitAI 🚩🔪",
            "ja": "CivitAI 🚩🔪",
            "ko": "CivitAI 🚩🔪"
          }
        },
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "English ✏️",
        "**What is this?**\n\n- Removes the words in `assets/lists/civitai_compliance_remove.txt` from a prompt (whole words only), like the \"child\" / \"late teens\" wording LLMs sometimes (and abliterated models especially) add. \n- 🛑 **Note:** switching it on is **your choice.** \n- ⚠️ A word filter, not a safety system: it guarantees nothing, and what you post is on you"
      ],
      "widgets_values_named": {
        "language": "English ✏️",
        "text": "**What is this?**\n\n- Removes the words in `assets/lists/civitai_compliance_remove.txt` from a prompt (whole words only), like the \"child\" / \"late teens\" wording LLMs sometimes (and abliterated models especially) add. \n- 🛑 **Note:** switching it on is **your choice.** \n- ⚠️ A word filter, not a safety system: it guarantees nothing, and what you post is on you"
      },
      "color": "#322",
      "bgcolor": "#533"
    },
    {
      "id": 4782,
      "type": "LCNote",
      "pos": [
        -1170,
        360
      ],
      "size": [
        300,
        220
      ],
      "flags": {
        "pinned": true
      },
      "order": 55,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "💾 Notes:",
      "properties": {
        "lc_note": {
          "source": "en",
          "texts": {
            "en": {
              "text": "### Nothing saves unless it's on\n- Date stamp. change accordingly. It's annoying sometimes.\n- **Prefix in path** This puts your filename as teh first part of the folder name. Very helpful if you use different models \n- 💡Fun fact. I hardly ever take notes at work. Go figure 🤔"
            },
            "zh": {
              "text": "### 不打开就不会保存\n- 日期戳。按需修改。有时挺烦人的。\n- **Prefix in path** 会把你的文件名放在文件夹名的最前面。如果你用不同的模型，这个非常有用\n- 💡小知识：我上班时几乎从不记笔记。真是奇了怪了 🤔\n",
              "src": "1dfeb081",
              "srcTitle": "💾 Notes:"
            },
            "ja": {
              "text": "### オンになっていないと何も保存されません\n- 日付スタンプです。必要に応じて変更してください。たまにうっとうしいです。\n- **Prefix in path** はファイル名をフォルダ名の先頭に付けます。モデルをいろいろ使い分けるなら便利です。\n- 💡豆知識。私は仕事中ほとんどメモを取りません。不思議なものです 🤔",
              "src": "1dfeb081",
              "srcTitle": "💾 Notes:"
            },
            "ko": {
              "text": "### 켜져 있지 않으면 아무것도 저장되지 않아요\n- 날짜 스탬프. 필요에 맞게 바꾸세요. 가끔 귀찮을 때가 있어요.\n- **Prefix in path** 파일 이름이 폴더 이름의 맨 앞부분이 돼요. 여러 모델을 쓸 때 아주 유용해요\n- 💡재미있는 사실. 저는 회사에서는 거의 필기를 안 해요. 아이러니죠 🤔\n",
              "src": "1dfeb081",
              "srcTitle": "💾 Notes:"
            }
          },
          "titles": {
            "en": "💾 Notes:",
            "zh": "💾 笔记：",
            "ja": "💾 メモ:",
            "ko": "💾 노트:"
          }
        },
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "English ✏️",
        "### Nothing saves unless it's on\n- Date stamp. change accordingly. It's annoying sometimes.\n- **Prefix in path** This puts your filename as teh first part of the folder name. Very helpful if you use different models \n- 💡Fun fact. I hardly ever take notes at work. Go figure 🤔"
      ],
      "widgets_values_named": {
        "language": "English ✏️",
        "text": "### Nothing saves unless it's on\n- Date stamp. change accordingly. It's annoying sometimes.\n- **Prefix in path** This puts your filename as teh first part of the folder name. Very helpful if you use different models \n- 💡Fun fact. I hardly ever take notes at work. Go figure 🤔"
      },
      "color": "#2E3A46",
      "bgcolor": "#2E3A46"
    },
    {
      "id": 4783,
      "type": "LCLabel",
      "pos": [
        -4890,
        -370
      ],
      "size": [
        479,
        63
      ],
      "flags": {
        "pinned": true
      },
      "order": 56,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "properties": {
        "text": "Notes: Start Here 👇",
        "font": "Arial",
        "size": 48,
        "bold": true,
        "italic": false,
        "color": "#ffffff",
        "align": "center",
        "outline": false,
        "outlineColor": "#000000",
        "outlineWidth": 4,
        "shadow": false,
        "shadowBlur": 10,
        "bg": false,
        "bgColor": "#324B4B",
        "radius": 12,
        "padding": 8,
        "angle": 0,
        "width": 0,
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "5e17279ba425b994aa8e657426e45f1a752f1e6a",
        "Node name for S&R": "LCLabel",
        "_w": 479,
        "_h": 63,
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#fff0",
      "bgcolor": "#fff0"
    },
    {
      "id": 4784,
      "type": "LCLabel",
      "pos": [
        -4000,
        -370
      ],
      "size": [
        299,
        63
      ],
      "flags": {
        "pinned": true
      },
      "order": 57,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "properties": {
        "text": "LC123 Node ",
        "font": "Arial",
        "size": 48,
        "bold": true,
        "italic": false,
        "color": "#50e070",
        "align": "center",
        "outline": false,
        "outlineColor": "#000000",
        "outlineWidth": 4,
        "shadow": false,
        "shadowBlur": 10,
        "bg": false,
        "bgColor": "#324B4B",
        "radius": 12,
        "padding": 8,
        "angle": 0,
        "width": 0,
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "5e17279ba425b994aa8e657426e45f1a752f1e6a",
        "Node name for S&R": "LCLabel",
        "_w": 299,
        "_h": 63,
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#fff0",
      "bgcolor": "#fff0"
    },
    {
      "id": 4785,
      "type": "LCLabel",
      "pos": [
        -3680,
        -370
      ],
      "size": [
        285,
        63
      ],
      "flags": {
        "pinned": true
      },
      "order": 58,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "properties": {
        "text": "Settings ⚙️",
        "font": "Permanent Marker",
        "size": 48,
        "bold": true,
        "italic": false,
        "color": "#ffffff",
        "align": "center",
        "outline": false,
        "outlineColor": "#000000",
        "outlineWidth": 4,
        "shadow": false,
        "shadowBlur": 10,
        "bg": false,
        "bgColor": "#324B4B",
        "radius": 12,
        "padding": 8,
        "angle": 0,
        "width": 0,
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "5e17279ba425b994aa8e657426e45f1a752f1e6a",
        "Node name for S&R": "LCLabel",
        "_w": 285,
        "_h": 63,
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#fff0",
      "bgcolor": "#fff0"
    },
    {
      "id": 4786,
      "type": "LCImageLabel",
      "pos": [
        -4000,
        -300
      ],
      "size": [
        623.3,
        287.8
      ],
      "flags": {
        "pinned": true
      },
      "order": 59,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "properties": {
        "imgW": 611.3,
        "imgH": 275.8,
        "angle": 0,
        "size": 611,
        "padding": 5,
        "borderWidth": 1,
        "borderColor": "#ffffff",
        "borderRadius": 0,
        "backgroundColor": "transparent",
        "bgTransparent": true,
        "syncImageRadius": true,
        "imageRadius": 0,
        "embeddedData": "data:image/webp;base64,UklGRrYeAABXRUJQVlA4WAoAAAAgAAAA/wEA5gAASUNDUMgBAAAAAAHIAAAAAAQwAABtbnRyUkdCIFhZWiAH4AABAAEAAAAAAABhY3NwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA9tYAAQAAAADTLQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlkZXNjAAAA8AAAACRyWFlaAAABFAAAABRnWFlaAAABKAAAABRiWFlaAAABPAAAABR3dHB0AAABUAAAABRyVFJDAAABZAAAAChnVFJDAAABZAAAAChiVFJDAAABZAAAAChjcHJ0AAABjAAAADxtbHVjAAAAAAAAAAEAAAAMZW5VUwAAAAgAAAAcAHMAUgBHAEJYWVogAAAAAAAAb6IAADj1AAADkFhZWiAAAAAAAABimQAAt4UAABjaWFlaIAAAAAAAACSgAAAPhAAAts9YWVogAAAAAAAA9tYAAQAAAADTLXBhcmEAAAAAAAQAAAACZmYAAPKnAAANWQAAE9AAAApbAAAAAAAAAABtbHVjAAAAAAAAAAEAAAAMZW5VUwAAACAAAAAcAEcAbwBvAGcAbABlACAASQBuAGMALgAgADIAMAAxADZWUDggyBwAAPCFAJ0BKgAC5wA+MRaKRCIhIRF4ZPggAwS0t3C5oyANUIsu2DGXuOuMf9F+UfYw8UL+x/lB/AO7d5kf0g/4f9g68X1AP0361z0APKn/Xb4L/2m/YT2eNWr8kf3DtT/tv5E+c/i/8w+0v9p9s3/A8InWPmX/IPsl+Z/MP14/4fhL8Cv6D1Avxr+L/2P8xf7t51XcUaJ/sfQC9OPnP+s/uH71f5n0zf7n+8eqH1u/3n28/YB/Jf6l/sPzd9/v8X/p/Il/Ff3v/a/4P8kvsC/kn9W/y396/JL6Vv6n/xf57z4/on+U/7n+X+Ab+Y/1j/j/4n8pPnI9h37Xf//3R/2WGLtE3Q43zIWSFv9ZTnaDfDVqLxw5i9YSvwpQLhPyTihdjflVYuw24o3BuJxTvYtG6mm9MMJX4UoFwn5JxRpINgh7Cuon5jJ39J84biecBXuviA90genrpLWKoFYFyXqCGVDDaGpjBJtxhAHt4p6Er8KUC4T8dfDPYG1VfPX/iq0/geyYgngzycESY9WkRZASSN+ijHfVuYTQJbKcMLOqrFKBcJ+ScUaSTxAY1pNy46Dj1qskkyr56AvrxXMhYgeX9ktMFgg97nkZ2I5z3IkCcJqbl9MKViuE/JOKNJJvaCFtIUot/QTJ98eHadnq29WK/mXzVSqWjGZliEj6veTMrbeu3VQ5SgS6lpnVo+nzFysIFigXCfknFGkgv8guWmXMPll3BUl6ZaGLpOX90Vb/r6Kh454XZnDbexCwWyxZ/j+Dew8bWL1hK/ClAuE/Ce7c1635uXlR3uae1X92OXhdS9+5fjF0puBrEz4LxtdzG45F/9ei4Fyqsx4iQMin53HCIrTHNGyJq1Nu7L08c08Uk4o0knCWdFA3oCW1Aqn6gz4Nuvkv3wFPFU4o1hT6XOGudGxiUSJ/CjK54oSag72nG4hNlUFDVGh0jLYuIADFnNz0HQt/18L4OZr3iC/kk4SzovWE103Wde+Uf1FiyHuj5GvVQjmPKXRZA9SGhNSO2nizqE4JkTHYzOGmxLSbdrDjg/JypOM0iEW98t3OTrhcdAYK93CvdV1QrhLItJMDYagBl+f2PfL1mPzHgMneebaxesJX4UoFuU70Olx7z+Abv3tHr7g0NtVzzgzQMffHhq7F3Cn4xp9Hn0KS3VKFz9pitI5ZXYucDIAdUkeceT8k4o0kPtCPaccEEDLs7lHg9w7eRyVdIhPOpo1tU/0EEo68FAgQJHlV5zf+qywbu5OEs6L1hK/Aqd6qD76ZKCx6pbsX91CqrLsZu/qQZmGoBwfiZXXZrvW41YMi6EvF9znzSkRqvn6GkICRhK/ClAuE2haFrDaeGMJpHBR+q/MQejeHWgn6Ie1zPPzdT0CL0wNP9cM3YkN4bXK4kdFxsx/MlOxwTT7n6slwhBWkV8mMXtWfNHdOyta0wfxYAAD+/Od3y6qD08aG4uoOATOD/2ffAp1P5Ag2a0CX4oEn3npcLokf0OseIxft67FyKphfR8onwuh2sR3VkxoOlcnWm+N+T8PoLhpBsqxhX9GJtMgegiOpMXt3i+vlSZZuZRSvFrDu1gB0XemrSducnIEWsuu+I00kRTADZrU1F1HWwOpk/WyfOpvqKCR7hkoXsxiMXSfoHdGFVcwPDZroPsHA4CdpI8oMLXXu3aVvjLc6YYp704k+ul6Xi92ZntT+PKYrzJF4t1vN45oaT4AGQMSzQktYctwS/etSIwyeQJEe+aMqB1zjtdC0zOMvkVKmOa0LEn8kqUiGDSJw+ls3XLVj5XT1ywC6KBHop2x6xs98ASnvCv6Hfukn/yfW+OkRTE/jNroj08f2Gerv+Mv2kRQCUvM9kF23r02GlJPLnEcjXitv3yKsJyYqg3z/r7hn4E/Aopk8d8ypTlKg05Kc5nPB9b2jewJfC6jS6dheL0UaLfqFT/G9H+9tg5GqA/uCgXG/aw8hnwe7sQC2QyMZ53BRnzTRNgz/x6GQiv+OSyKRjqFqPG7zK5/sy1n9gtRJs12DWGnO4JT7n2MuqSRBIAsXYAaao7Io/QU10r8dFrpbqcDC2msaNPZ6v0KjGqueKubBB+TJqo2EhI39HYvwJE/MaL6G3MQ8fhhCVcArY9sY+Uwa3ttXsOezQm+GJCK+ABsRBvIl8nQpdWx84SZfyeJKESMrd6hoZAb8su53B0JmL6+oqZrc/WX8BQmfLQHu5N3AyQfR9OXQpvdAg+A47I5v42L3J1ChSkD5iaKZZ50lRAz0gq2Vi/ffjAt8ixSgkcxxbLriBeZgxtU/nksBk+Lx7ESPo3CLD6dUsNKnSNnxT2l/GqtTOIG0/mn+Qbu3KOPPCMZfdTr/S17aPF/aupf7wR4kX7IailUQhAofYp9dTUZkt+335iVNKQkMEttgzrckR+1Sh/VONKadV3MVe1wxvPdlFeNLRoKmfm7KC3FYoKhjaqqkFdwOJtpslGlIxzsGWMdRi42Q8K4flnzPwkldstGH2U3jWFXbbXekggbQB5aJb8rHyFIkMnRJgoWVPknny68cg0Xb/GshpL8LmPt1QA9h0ktt4ilARyuAaw74nNkARRXbDC2eZlQXH6BKrj1exSsn4GwJtOce+VRpkoVRLcddnCPWuqRYFp8uuP5wgCJJWIAiDOfMNmwHWUGt0syK2Vv8w+sAlMq2kFwTNv8i+Juafmv8mTNj7z76B3YX9uPZ2N9UmjjwNmOfDverbd22Me3jk2OqwRHWD9P1D0SsMHDehjq8li8oJQrnHCCYbFsqenXbbj9kHp/AVxi+gEmbpjlqBiXnbuMAi5Q0RsH/h5XJR/JiPLniocZ8O3Ck+8lEEhPjZlu3LGWALdjoqEOAbLVDCKJdrKREPmXkOpjuQdwVxFQUmker8wYiWipkIW4zRThGA5pxgfYZv8qQtKnd7ZwCkD699SsGVo/XMp7ML+AAABXxVfEJD9MCJkzfm+AyBOyHU7OuRSX71XStt2VEdUN0rSAdvlbg+/t88pp6/P7HhB8hXiCOp/ilmL+8MotnncO37ef/JDsiz/wc+uEamrWO7mtB2bphf+kU0RB6D/56tvCn7Oup1ZufzJJW3B/xyq7IysoDuG+KfhRx4/7R4GSujmGvkwJRgSf6lWsoZVn2uK/QXJJMxv+F7bcV+rW4q9X4gxXKvM57xbPDhxv0SvknG6RasOoN+MWIxYeDGBuQNNpeb3THupa3OBPbzmlxmL9KISlsh3yYbnHVkdr3hCoWSYJAr5G5gigaHE0b4PxLdxklU1l3sInmU0sE4foBydm7R/Fm7UtaSFExzxsQPJ2PMzK66HAxJdNHebikfBy78dYlsVf6NXEPGZw2l3Y94HRwSFsrtAWBZO7a2tDLALrgIiE3MO7iZL3kOA9+fuv/MTFOIkkkyD0wIBeRpNRGd+sw2MYMtOhafwOzVMAXDUTB/7h/3xCofa9AOq2ER7+Vwli/mUIViuKEXHqzv3J89/cHUJ3P/4XR+pE8d3ZmoYp2HqbjtYj6o6+dy/DEub+lZ1lA3mxKPZrCbzEgOCt5sYdDX1ITYsWxr+bC9RhHxcJSIZ1XzSyJlbNuYbws5ndMniAG5vdkVuUeLZi2Mr5LzYUQ2OmIAU+T7pnelaoGwfJS0ifR7el6vuTalxC4bgWgfU0vFUCoeZtq2tBGPOfaSIomXJXInEbfnVQoiFFuBMmsLbm4iOr3/6GyuwW8AmUk25xC25ZhIU1JgQTH+8Wcj6jueOlVZhGFrH5kww8LU85cFjr3evcP8STJr7KsclhMlUyffpuCHmB7fisxdcl/FGQl68Kh6UWo4nRWpxE8d4iWOymKQxMrjKKWI70mDGisEV8HE1IP7uKA2ClcuHQnAfNu2pvLQ2pSChsXK6xiEGmOl1uIOlaMu+JF9f7X6ehHnuFWdKcm8tL/DBH2N5b9iryO425rVhPKdWNj/9jaLoEb8MG7hiyVfiQSfvUvBOK3H3lam9imXfl1nieDZEywbSUJ5rn9DNo/a7tUBq3+DUrefi21LQHSI8Pqvqz5ceelGvS4m6fXfiBqAboqxPWFth5kxC4TUOxEZJOhTE/07z0SXeyqurYhVX/z1fxrHkV0NL/lRR/dNqFuYt2jbcjcahg6nMRhRaE+iLbos2d34C+IHwMprAp8x257KfD9y/v7M3Prf9+qPIb5U/wEZzb0HcOkNJoGLXTf1DfIfJ/IJem0CMokgZw+o3ZBeYAVD8KgAIhpj8DKbgMVEDiXvWn1kil/ss1YuwyZ803w5sYgDBqFKrXwAIJX/4fAQHQGls23iQWAgHPryCQkxH3mCCm3ocMd1ewOdA1nzlfsrkPJqQszG7PQUnIyH7IL2c2lkzxvwKfoAMLwAYHI6Uyh45rq6iqbcHhyiZ7d45WTfQMPJkfOqyWQhiDtyqgd5ytjzn4J8hDaTW9osbqERQohWTk7mbRoIJoYLqyKrP3t+ehQgSgMildTH8m9zRj+a4izeHyIj49rc1/ufeknUzG8RVLWJl7PUigC1Co7cx+hPUUp9MxuP/YdFt8/7TlYvjN4v6ZkYumxU1aWqor1jc1zYQc6j39DwMGCsZWfjnBbDQkPyXmHdpu4EzxF+U80+H8bvBJOnkPVpGWAe2vEc/pakpRGg3TLcUqW2/NVqSFg8/aHmj6jnDHJRTS3eSRVAtFcDR6oGdNmY6oAmrCMsHFdQx1wRqekVG7elkActo5a8wKdoqQodxI3GGHQ7+XD5JhkXvIS5frKmPe1kr07xtJ+HOgUexryoeDs6LXLFcVnWWzhmKA4XruNRgeBU83HHxzOU61JZJMUTFPKuNMGQ72AVv+r+Npl1/PDv9wbTj+XquX7QPY2X0/3DsKYYfQcL+rzjZfVZjEOsn0idPAA6Q5NY8yu+9wDeq1Yi7SV74BD8XdMaYrQxyhWW+lN7N3vOL7pWiN+9Gel/9Sy7URyvw58Xd5vmv4bZp5mrRrWgOAH4qdbuHL4ZcYIw9vu7KXsNS9HhoVovadaBekXA1Q8Ip/+26krYCvnUrzdBAs42EWcOayVYVOwSagBdVoVzrXGFRiNsko2LuLVKHE2O/YS3rGxo0huYciSQgA4tC/c9Ec0a5kbi6HTzcV875ipQfG0ihjGhWohrGb3+FV+aybA3SdXYkes1eYK25m0HgVlXneKdht3a0vLo4HbM+YKTc7eexmxNi++qTHkPLILfvvwYwt+VA9hKeR8TDxhUeNredaRM67AzSKOZsFS9hhqKRDNTV9hxn0U5Ojtt5WDNIbBf60YdHSoeMCmMALv3jS15rC2THoqN7lMf+uHSyNRe5+uqfz5W2oMgcZJwk4iiLQuIfVeXdht4w4s8rqh7WQdU8EHLcTGrXQZhzUudBnEqNu2d5JWKIGdVlU74IO/zh8T6DWd35/srvMGH7ZzF9dzORknm/IZVaDaTIePV9+BBTc+6Yd2tTQZ5TBTQ9iDoSCuq5N8K0IC5KofqyXAKqihhMeJCWkE701c/G6W1ZHMrpD+APQ3fEH9DdlkBXqDwMDHegbm3VMDqK/SCco4t35ivNCLZ+A0L+MUn06p0TR8gooeZA3r0KNGR6wzVgaSigvKTbDPM+hqhoRneeCy9Z2G+xpcGZPCaFfZALnrYA8irAzAGDSq4Piybmgjes9lrFcGyo/+JfCEX/yg/n9C+mf7ryVhshnxJstdSHt/7ywupX4iWkZlBUKEzYFOxV1/WNoAZzhMZ6bDhB8dXQkDBT+c4TJGSezV/BmTAwIiEui15KynLYOi4HylWi86v9z84joZ3Ma38beW++G+zR1U+p4p+RBpswMLaJcJtijl+Q9aJ1MX2ek7tHRSMQHpmkNwY4nwpw/MFdzlei9OcU1zcszOEAEDxuWRp7M0HxWKM06c7hyvMqSJo5gU6ryAdEipMpBwH63g9b59wVBhfSJH/1YrQP39smT/0SNHZ03vPN97jH2xG8VVMQKgYlZlL+/6PinPaD1Owese2OIeDaKbUWYKKE5lvFgaIIgT28Ec+/cwFRZc2aKmt4K7smMFKa+yEOkqvJOehNkwnDeikMtvi5WGMBNVh76sQJ/Ku7/hPDk4u1O2Ayt+KmfPCAADg4qvJn9HbCBvH2MNSfmvZRCLLyOJajvkjMa9QEYgb0Bsiovx7SQtJmvCHZo3olnHdpz2AtwtfvmRs1vgfopCh7cBpVOvWO/m2gRiDaKASrxnr4ZC56WyXic5Yq0TSdCIeuXm+LOxTJ7fCXP1cE2xfXzq7XYg6Z2E1y5yvsIqv7tlz4l2DoyrUGljvGStQHP0Y4wAcj/5Xg57H5Y6sxQCOKn52izD4+7GW1eHD2yFjjFJ55iwWDM5SwjWtLBK70lMwb1SeZbEn38e52ry2v3eeZbhIbSAura1+nkMJiidWECXDb/IsL6UtXqGw8oKPPeHfiOri4PSxdgfTVof0AIqauz9w8dig/Jc25I1Ev4V0jvnPf8BE6U2HmzniAAfSxVicNrkub5hn1beaHtaBprcbZlh81hHIz2X8AAAAAAcOaLc9Pk7q8meKUXNs2srpGJkh+f+fuEakNi+V99eAEkPVsfjd1NuyLNlm2vHvziQBhBQi7JXpCmucm1MZ6Hbdv0TB5OE52Ty1APJbVdIjvVqUYrkDDTCF8sJccEPfUMgacN2xZU6b0x448WlXMl+GL1zcMJa9DCCEu924l97Tckq0NGTJNw6MW/KmD9q0ypJTZW7Cw7PTl9NUqPH5RGvyrpyOyVHx7q0ojZMO7Hz8zEdCqxcf45n9urjKG8EedWpYaMdBqoh/qJBCE7mfAAseobL3QuypncGCOexl42IUrUbrWnPyogCeeB89kKQNNUzF8+ApuZztLHpXml/JH0uZaXh6UbMh+z4xEPdaoCKuvTI3++/DyvOrc3O5rh2PliUOp1KGLdxWyY2/IYdXGhOHdpeSobf/LngYhIZBJGK8+czd0EYymgjDrXK//UhCak/pkrKFT9mN1Sa15ZspiM3i2taRbUI7YtENRfq1o9QtAX+C64r+KWglQH9S2/hANv4Cwcb8CDBu8J+wHm+YEt+eDhg8fO6MinZZLINuBl/89it2NJLiNsbt7unYPiNCf3W53HyqHIAdN9XEMz9PjFCG5WSmWobt0i/zHYHl9IE4Z9AftAdOvk8f6LPiJY7eEdCVeHSyRht49nIPyth8++/nMNeW2diOb+RM16cvKyLaRH9Zzp081QRIRKzKHuxJe0bXpWt8/KDdR/GeFVWO/7GE/kXHsgamy8CzOjKoBMk17HiheBt7dw4cvmSY7ZQMLz5sEB5Z3OQug5t3EWY9YyFHMeQGlQZ+mDWWeLyP3UZ6TP/afnJAD7Dc7w62eueZyk2Iyz8NfIzNJxA5BWQXkULeGS4jaeK3MptqsfXXQUYny0Uy+jc+lsKxrtTy4MkghfoizJECuq2OjnRwVNiWLKgywePfZdRkhQtUll/OS1G1Pko22Q9XrzOzi6EMzyk0J2wZsm7LagfK1P2Do+a5QoqxN6bn+IfbgVZzB7vFlhiy5UeNmYoV98YFIp5AadujLEmNWJ9ZL3WNGlzdkMXRSlyjq5gSZf4ogdLrW+xhncl5PkFXc9KZiKftgBgwoBbe3BGetPo1Gc4628nu8BvY3LMiX1OF1m3qf9nkwu8MUnU07f2hgSRQukf6xAejoR4+OdEwIl6XJCIeMjKeZsk4p800x7uzWRLNu7aPjy+h0ayH2K+6iJ2dtHCgwSYzd9t4QKMFYnYsVoQe1kW1/sLVbG7WDkQYSq6q0fhEgNkeG2kMUbgPcEBsJEXNiuEmk0UKeYwk4146NaCmIq8A0pIl54Pg3+5aFl7LM7VPps1m9Vw1Wnstmo4CbwH1jJ6120Ws14lytq1+jLtr659ddTM1S5g8WHtKTzCeJCoWhgHyABoz95OJIyAJKW9my/MFfUE6JZMif8++Ci3F9Fm2c7g9WdRxU9Ib6/ojgoGf/tLNWRUsvuBMHcfUbh7YvSTQmhxzhv9Fx9O2ZEcbRWTlQZEauioGcamlra6PAVtgvu5a7XNIFL2fHrIoY5vCIx2AAGJO6EsvtEl8QbaVihSFbP7PMOs52zdZYhLg620KPZVBa5XJKin+Efow8nMyZcsVmp2W36KT/JOmFuyM0Xahn5/ub+0C/2AtuASXtJ0YLfE/XNAdJwMAh75lgDQjMjHj8reNa/sai0N/2QnMEFHLqqNdz5rVtknipiz9YJp7az7BEAyEDw86ksuUMkg7IOMZmcvAquMW5/6UWkyqbhcZDzNWgHMKyRAQo4jByqw2dmHsTtk5ihTSvpDq7cdW/ZUhnEpzQh0U6KKYMdcf9+yXMI60prc2VcGprOibzlxMU8p7orfOvO1e/huAQmHgVMjTFWVKj9o+XvgGAwNyVTmWyAiMcV9w3hw+AXQKqgGZMAdl4tmdeBsoc7LR9OO078IrzTy8liCtipDckLxLSMEf//NDoK+PxYclGdWQpjbFJluRDdJzz//53vjXdT8JwyE847mp3u57hf0F5aTx4beygnyTTg11hHG3TWcydgTHCjd2UaPHkN52wQxOzJGrMolFOMrirEoG7uF4UuL2Roq5ZouYdgKsJvyQD6uGIfsiw33iTRvqgoww7mfU0/knEepTNiwbMMeWZ+B3Ycvgc+tkExjNb3y5cKdN98x9vb/OmFQc9DL4bgQ929QV4yq9Ilf1I7y/xGaqYg64gGZ/uzER86MWOiu0vLwLoG8Q6F6IOeDZLHNWqyFrTM2eKySbbuwmxd2/5hTb5kUTQl+f3gHVIAph7A6Fs9mPrnWL/FhCWrgM8h5zSM898FYaJy7rDFQSL0RRur5OTUuqa0saz35ilwoUDU/vzG53jRpOtQ4k1PGK2c+cHvd/vM2+Pz1hGA7vdFAeQojcGzmmhheEon297UwJBfN7hU/uH0assMotXOQ5z+d1vthe9i89AyIf9AFZ33ClQpUdzEZMj4GvI/E9/F14ZagGmE6MLeRW1CkujBI72h5wrck4dEQ2NREKCAR9v9kd0L0K1KOQ3zf5lHU9bwjgwqgMZmP3fHzzDddvfCqUxXQQTeKCQ+pnVV1cHCGuO9g3lzkGaw1s9lcmQns8XC7zGWfRrlOtwhyPJFTUHTtkTzn0cZM7j4hAME/OoI7UHtjdh2m/EWftVbXkv/6gl6wTXpYc1v7BY+87HhdtiZ1RGX5ZOW+Jn69MJa9qypb6AbxqF1hMN2+E+JVePPI8CCZOPjWUWc2efOAdomWbjgL1wQHdsuIzRA6nZOYACTtlBWnpx8EXbwQtHcVACb50FfbiuP2yLc7UrUUfoVGPrGunQsmMJ22TIzM1gTHTkspBaACm9EVmLemo9DktkDSz0YwjZ4yFK6c6tcMBpXDcajnpxgzUCUJAc0FNqET0g0RjsitDG3oxrKF9RdK2zu4GzPTc5aMHkx9hpg2mNeKACnhg7uxP/U6DwbqvBVWMr25tKhy9cn2zd1Hppll+iVwq6GO1ByEnb7+9wwVtOEc+OomjAyH8KTXcthqWlTloNmhvEGIMOsuDgfIR1ygrnTlROtPmlvOxK2yc3NkSeG0KFGgFP+8RqEAvvzyq0RK454VGv6l41kCAuwcGIGhopo1TbRj5VI4YUTGdOzsDNOg6MWqkAjT3D6G+BbT4SwRbal/Lp7DSmhBygiEkiO4OTg6P+bRg5OyvDAKl3OmAcGid/d8jQl6z7pXQo9M1GtsHtR8xtArboMvLGQuO9WFOsw0dVTZZ0tVstWEw+n8W4ppvoxiFmUbgvnf9kGsN3dh7Qffwc/X7rf0V4ZuP96RmSk4xcKG+lt0XFAjLV4GCQmAGJ/LsuZtDosXufPPTe9t0AAAAA==",
        "_w": 623.3,
        "_h": 287.8,
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "{\"filename\":\"translation.png\",\"subfolder\":\"\"}"
      ],
      "widgets_values_named": {
        "_image_path": "{\"filename\":\"translation.png\",\"subfolder\":\"\"}"
      },
      "color": "#fff0",
      "bgcolor": "#fff0"
    },
    {
      "id": 4788,
      "type": "LC Bypasser Panel",
      "pos": [
        -2990,
        -2030
      ],
      "size": [
        370,
        150
      ],
      "flags": {
        "pinned": true
      },
      "order": 250,
      "mode": 0,
      "inputs": [
        {
          "name": "hub",
          "type": "*",
          "link": 46206
        }
      ],
      "outputs": [
        {
          "name": "OPT_CONNECTION",
          "type": "*",
          "links": []
        }
      ],
      "properties": {
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        true,
        false,
        true,
        true
      ],
      "widgets_values_named": {
        "Enable 1": true,
        "Enable 2": false,
        "Enable 3": true,
        "Enable 4": true
      },
      "color": "#c87a2c",
      "bgcolor": "#b46618"
    },
    {
      "id": 4789,
      "type": "LCNote",
      "pos": [
        -3540,
        -2030
      ],
      "size": [
        540,
        410
      ],
      "flags": {
        "collapsed": false,
        "pinned": true
      },
      "order": 60,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "🧠 Notes",
      "properties": {
        "lc_note": {
          "source": "en",
          "texts": {
            "en": {
              "text": "## Overview\n\n### 💡Cat, what did you do to all the stuff you had here? \n\n- [read about it here](https://civitai.red/articles/35997/sampler-scheduler-and-sigmas-what-they-actually-do-and-why-yours-might-be-wrong)\n\n- Sigma Selector is now **Sigma_curve presets**\n- Sigma Resample only really worked on the first pass, so now is **first-pass-resample**\n- I couldn't drag a built sigma. Now I can.\n- *Res4lyf* 😮‍💨 made it so you couldn't hook their sampler up directly. **🤡Clownsampler** is now built in 🛠️\n\n**Dual Samplers**\n- Put here specifically to deal with ControlNet bleed.\n- The first pass runs with the ControlNet model conditioning, the second runs with the clean model.\n- You don't need a lot of steps for the second one (around 10%). Set **step_swap** near the end and **low_pass** to **renoise**.\n\n**VRAM and processing speed**\n- Adding **Image reference edit 🖼️🔁** and **Style Transfer 👠🥂👗** will **significantly** slow down processing.\n- It will still process, but it takes twice as long. The same goes for **🥅 ControlNet**.\n- The more you combine, the slower it gets. **This is normal.**\n- 🧀 cheese should not have holes 🤔\n\n---\n## ⚙️ Settings:\n\n**Denoise (now up top)**\n- Mainly for I2I 🖼️. Works well at higher levels. I like leaving it around 0.97 for everyday use, but it is also the first thing I go to when I want to change a pose.\n\n**🤡 ClownSamplerSelector**\n- One of the main advantages of ClownShark samplers is their **fully_implicit**, **diag_implicit** and many other **sampler** options.\n-- **ClownSampler Selector:** pick any of the Clown samplers by hand. *note:* everything else in the workflow follows your choice in the *⚙️ User Settings* area.\n- ⚠️ Fully implicit samplers (radau_iia_3s, etc.) call the model several times per step. Same picture, about 3x slower.\n\n---\n## LC Sigmas (BETA)\n\n- **One scheduler for both passes.** The graph on the node shows the whole schedule: orange = first pass, blue = second pass, dashed = the preset before your edits. Drag the node taller and the graph grows.\n- **sampler:** the green line under the graph tells you what tested best for your model (Krea 2: euler + beta57).\n- **sigma_curve_presets:** the shape of the schedule. Only the settings for the one you pick show up.\n  * base: a plain scheduler, picked in base_scheduler. 🥱\n  * beta: the beta curve with your own alpha and beta.\n  * flowmatch: the FlowMatch curve. 😎\n  * **hyperbolic / gaussian:** the base curve bent by tanh, a bell curve, etc. 🤫🫙👍🏼\n  * saved: any curves you decided at the time might be worth keeping, but will proably never use again 🤔\n- **Drag a point on the graph to bend the curve.** smooth pulls the neighbours along (smooth_radius = how many), spike moves just that point. reset curve undoes it, save curve keeps it as a preset.\n- **steps:** total steps for both passes together.\n- **step_swap:** the step where the clean model takes over. For ControlNet bleed, put it near the end (steps 20, step_swap 18 = the last 10% runs clean). 0 = one pass only.\n- **first_pass_resample:** stretches out the schedule for the first pass, giving it more time to build structure. 1 = off. (1.15 is my favorite)\n- **low_pass:** *continue noise schedule* = the second pass finishes the leftover noise. *renoise* = the first pass finishes the picture, then fresh noise goes back up to the swap level, so the clean model has something to refine (i.e 🥅 controlNet clean-up). *Swap late* = a little clean-up, *earlier* = heavier refining.\n- **denoise:** I2I. denoise_steps: full schedule = denoise covers the whole run. at step swap = the first pass only, so the second pass refines on its own.\n- **sigma_shift:** leave it on use model default. Higher = more steps on composition, lower = more on detail. flowmatch and saved curves ignore it.\n- **💡 Flow models (Krea 2, Z-Image, Flux 2):** beta, beta57 and simple are safe in base_scheduler. Karras, kl_optimal and linear_quadratic burn.\n- ⚠️ Go easy dragging a gaussian curve down. It already keeps the noise high, and a big drag cuts the detail steps short and burns the picture.\n\n---\n\n**LC Detail Daemon (BETA)**\n- Adds detail by telling the model there is a little less noise than there really is, so it removes a little less and keeps more fine texture.\n- **amount** uses the same scale as the original Detail Daemon (1.0 = 10% less noise at the peak), but it is never multiplied by your CFG.\n- **start / end** are steps, like the original: 0.15 to 0.85.\n- **peak** and **exponent** do more than the amount. **peak 0** = strongest at the start of the window, on the noisy steps where it shapes things. **exponent 0** = full strength across the whole window.\n- **mode:**\n    - **look only** (default): crisp detail without big reshuffles.👈🏼\n    - **classic:** the original. Small things shift (folds, windows, background focus).\n    - **keep structure:** only the fine part of the change is kept, so the layout stays exactly where it was. About 45% slower.\n- **sigmas:** wire **sigmas_high** in to see where your steps land on the graph. Detail Daemon only goes on the first pass.\n- ⚠️ Samplers that add their own noise (SDE, ancestral, res_2s / res_3s, ClownShark at eta 0.5) + Detail Daemon = specks. Lower the amount or pick a noise-free sampler.\n\n---\n\n**LC Stop 🛑**\n- When turned on, the generation stops here. It lets you make changes before committing to the upscalers, detailers, etc.\n- Change the settings after it based on how your image came out, then hit **⏯️**.\n- My favorite low VRAM trick.\n- 💡⚠️ **If you have a random seed turned on, it will keep starting from scratch. Make sure to fix the seed!**\n\n**Notify 🔊**\n- Makes a sound when it gets to this point, so you don't have to sit there and watch it.\n- You're welcome 😉\n\n---\n\n**Best LC Sigmas Settings**\n| Model | sampler + scheduler_shape | steps | step_swap (ControlNet) | Detail Daemon amount (look only) | Notes |\n|---|---|---|---|---|---|\n| **Krea 2 Turbo / Krealism** | euler + beta57 | 8 | 7 | 1.0 | The everyday setup |\n| **Krea 2 Raw** | euler + beta57 | 20 - 30 | 18 - 27 | 0.5 | More steps = it hits harder |\n| **Z-Image Turbo** | uni_pc + simple | 8 - 9 | 8 | 0.75 | Takes detail the best |\n| **Flux 2 Klein** | uni_pc + simple | 4 | off | off | Too few steps: it shifts the light instead of adding detail |\n| **SDXL / Illustrious / Pony** | dpmpp_2m + karras | 25 - 30 | 23 - 27 | 0.75 | Karras is fine here, not on flow models |\n\n**Best Detail Daemon Settings**\n| Preset | amount | start | end | peak | exponent | mode | Recommended for | Notes |\n|---|---|---|---|---|---|---|---|---|\n| **Balanced** (default) | 1.0 | 0.15 | 0.85 | 0 | 0 | look only | Everyday use | The tested setting |\n| **Gentle sharpen** | 0.5 | 0.20 | 0.80 | 0.5 | 1 | look only | Portraits, skin | Barely moves anything |\n| **Original look** | 0.5 | 0.15 | 0.85 | 0 | 0 | classic | The old Detail Daemon feel | Small things shift |\n| **Keep layout** | 0.5 | 0.15 | 0.85 | 0 | 0 | keep structure | When nothing may move | About 45% slower |\n| **Smooth** | -0.5 | 0.15 | 0.85 | 0 | 0 | look only | Busy or grainy renders | Negative = smoother, less detail |\n\n### 💡 Quick Tips:\n- **peak** and **exponent** at 0 is where the punch comes from. Raise them for a gentler sharpen.\n- **amount** is the original Detail Daemon's scale: 1.0 = 10% less noise at the peak.\n- **classic** and **keep structure** hit harder than look only: start them at half the amount.\n- **start / end:** leave the last steps alone, or noise stays in the image.\n- 4-step models: not worth it.\n"
            },
            "zh": {
              "text": "## 概述\n\n### 💡Cat，你把这里原来的东西都怎么了？ \n\n- [在这里阅读详情](https://civitai.red/articles/35997/sampler-scheduler-and-sigmas-what-they-actually-do-and-why-yours-might-be-wrong)\n\n- Sigma Selector 现在是 **Sigma_curve presets**\n- Sigma Resample 其实只在第一遍有效，所以现在叫 **first-pass-resample**\n- 以前我没法拖动构建好的 sigma。现在可以了。\n- *Res4lyf* 😮‍💨 让你没法直接接上它们的采样器。**🤡Clownsampler** 现在已内置 🛠️\n\n**双采样器（Dual Samplers）**\n- 专门放在这里来处理 ControlNet 渗色。\n- 第一遍带着 ControlNet 模型的 conditioning 运行，第二遍用干净的模型运行。\n- 第二遍不需要很多步数（大约 10%）。把 **step_swap** 设在接近末尾的位置，并把 **low_pass** 设为 **renoise**。\n\n**VRAM 与处理速度**\n- 加入 **Image reference edit 🖼️🔁** 和 **Style Transfer 👠🥂👗** 会**显著**拖慢处理速度。\n- 依然能处理，只是要花两倍的时间。**🥅 ControlNet** 也是一样。\n- 组合得越多，就越慢。**这是正常的。**\n- 🧀 奶酪不该有洞 🤔\n\n---\n## ⚙️ 设置：\n\n**Denoise（现已移到最上面）**\n- 主要用于 I2I 🖼️。在较高数值下效果不错。日常使用我喜欢保持在 0.97 左右，但想改变姿势时，它也是我第一个会去调的参数。\n\n**🤡 ClownSamplerSelector**\n- ClownShark 采样器的主要优势之一，就是它的 **fully_implicit**、**diag_implicit** 以及许多其他 **sampler** 选项。\n-- **ClownSampler Selector:** 手动挑选任意一个 Clown 采样器。*注：* 工作流里的其他一切都会跟随你在 *⚙️ User Settings* 区域里的选择。\n- ⚠️ Fully implicit 采样器（radau_iia_3s 等）每一步会调用模型多次。同样的画面，大约慢 3 倍。\n\n---\n## LC Sigmas (BETA)\n\n- **两遍共用一个 scheduler。** 节点上的图表显示完整的调度：橙色 = 第一遍，蓝色 = 第二遍，虚线 = 你编辑之前的预设。把节点拉高，图表也会变大。\n- **sampler:** 图表下方的绿线告诉你，对你的模型来说什么表现最好（Krea 2：euler + beta57）。\n- **sigma_curve_presets:** 调度的形状。只会显示你所选形状对应的设置。\n  * base: 普通 scheduler，在 base_scheduler 里选择。🥱\n  * beta: beta 曲线，可自定义 alpha 和 beta。\n  * flowmatch: FlowMatch 曲线。😎\n  * **hyperbolic / gaussian:** 把基础曲线用 tanh、钟形曲线等弯折。🤫🫙👍🏼\n  * saved: 你当时觉得也许值得保留、但大概永远不会再用的任何曲线 🤔\n- **拖动图表上的点来弯折曲线。** smooth 会带动邻近的点（smooth_radius = 带动多少个），spike 只移动那一个点。reset curve 撤销，save curve 把它保存为预设。\n- **steps:** 两遍合计的总步数。\n- **step_swap:** 干净模型接手的那一步。针对 ControlNet 渗色，把它设在接近末尾（steps 20，step_swap 18 = 最后 10% 用干净模型运行）。0 = 只有一遍。\n- **first_pass_resample:** 拉长第一遍的调度，给它更多时间来建立结构。1 = 关闭。（1.15 是我的最爱）\n- **low_pass:** *continue noise schedule* = 第二遍完成剩下的噪声。*renoise* = 第一遍完成画面，然后重新加噪声回到 swap 水平，这样干净模型才有东西可以精修（例如 🥅 controlNet 清理）。*Swap late* = 轻度清理，*earlier* = 更重的精修。\n- **denoise:** I2I。denoise_steps：full schedule = denoise 覆盖整个流程。at step swap = 只作用于第一遍，让第二遍自己精修。\n- **sigma_shift:** 保持使用模型默认值。更高 = 更多步数用在构图上，更低 = 更多用在细节上。flowmatch 和 saved 曲线会忽略它。\n- **💡 Flow 模型（Krea 2、Z-Image、Flux 2）：** base_scheduler 里 beta、beta57 和 simple 是安全的。Karras、kl_optimal 和 linear_quadratic 会烧图。\n- ⚠️ 向下拖动 gaussian 曲线时要轻一点。它本来就让噪声保持在高位，拖得太多会把细节步数砍短，把画面烧坏。\n\n---\n\n**LC Detail Daemon (BETA)**\n- 它告诉模型噪声比实际少一点，于是模型去除得少一点，保留更多精细纹理，从而增加细节。\n- **amount** 使用与原版 Detail Daemon 相同的刻度（1.0 = 峰值处噪声减少 10%），但绝不会乘以你的 CFG。\n- **start / end** 和原版一样是步数：0.15 到 0.85。\n- **peak** 和 **exponent** 比 amount 作用更大。**peak 0** = 在窗口起点最强，也就是在噪声较多、决定形状的步数上。**exponent 0** = 整个窗口内全强度。\n- **mode:**\n    - **look only**（默认）：清晰的细节，不会大幅重新排布。👈🏼\n    - **classic:** 原版。小东西会发生偏移（衣褶、窗户、背景焦点）。\n    - **keep structure:** 只保留变化中的精细部分，所以布局完全留在原处。慢约 45%。\n- **sigmas:** 接入 **sigmas_high**，就能在图表上看到你的步数落在哪里。Detail Daemon 只作用于第一遍。\n- ⚠️ 会自己加噪声的采样器（SDE、ancestral、res_2s / res_3s、eta 0.5 的 ClownShark）+ Detail Daemon = 出现斑点。降低 amount，或选一个不加噪声的采样器。\n\n---\n\n**LC Stop 🛑**\n- 开启后，生成会在这里停下。让你在进入放大器、detailer 等之前先做调整。\n- 根据图像的出图效果，修改它后面的设置，然后点 **⏯️**。\n- 我最喜欢的低 VRAM 技巧。\n- 💡⚠️ **如果你开启了随机 seed，它每次都会从头开始。一定要固定 seed！**\n\n**Notify 🔊**\n- 运行到这里时发出声音，这样你就不用坐在那里盯着看了。\n- 不客气 😉\n\n---\n\n**LC Sigmas 最佳设置**\n| 模型 | sampler + scheduler_shape | steps | step_swap (ControlNet) | Detail Daemon amount (look only) | 备注 |\n|---|---|---|---|---|---|\n| **Krea 2 Turbo / Krealism** | euler + beta57 | 8 | 7 | 1.0 | 日常配置 |\n| **Krea 2 Raw** | euler + beta57 | 20 - 30 | 18 - 27 | 0.5 | 步数越多 = 效果越强 |\n| **Z-Image Turbo** | uni_pc + simple | 8 - 9 | 8 | 0.75 | 最能吃细节 |\n| **Flux 2 Klein** | uni_pc + simple | 4 | off | off | 步数太少：它只会改变光线，而不是增加细节 |\n| **SDXL / Illustrious / Pony** | dpmpp_2m + karras | 25 - 30 | 23 - 27 | 0.75 | 这里用 Karras 没问题，flow 模型上不行 |\n\n**Detail Daemon 最佳设置**\n| 预设 | amount | start | end | peak | exponent | mode | 推荐用途 | 备注 |\n|---|---|---|---|---|---|---|---|---|\n| **Balanced**（默认） | 1.0 | 0.15 | 0.85 | 0 | 0 | look only | 日常使用 | 测试过的设置 |\n| **Gentle sharpen** | 0.5 | 0.20 | 0.80 | 0.5 | 1 | look only | 人像、皮肤 | 几乎不改变任何东西 |\n| **Original look** | 0.5 | 0.15 | 0.85 | 0 | 0 | classic | 旧版 Detail Daemon 的感觉 | 小东西会偏移 |\n| **Keep layout** | 0.5 | 0.15 | 0.85 | 0 | 0 | keep structure | 什么都不能动的时候 | 慢约 45% |\n| **Smooth** | -0.5 | 0.15 | 0.85 | 0 | 0 | look only | 杂乱或颗粒感强的渲染 | 负值 = 更平滑，细节更少 |\n\n### 💡 快速提示：\n- **peak** 和 **exponent** 设为 0 时冲击力最强。调高它们会让锐化更温和。\n- **amount** 沿用原版 Detail Daemon 的刻度：1.0 = 峰值处噪声减少 10%。\n- **classic** 和 **keep structure** 比 look only 作用更强：从一半的 amount 开始。\n- **start / end:** 不要动最后几步，否则噪声会残留在图像里。\n- 4 步模型：不值得用。",
              "src": "b4772265",
              "srcTitle": "🧠 Notes"
            },
            "ja": {
              "text": "## 概要\n\n### 💡Cat、ここにあったものを全部どうしたの？ \n\n- [詳しくはこちら](https://civitai.red/articles/35997/sampler-scheduler-and-sigmas-what-they-actually-do-and-why-yours-might-be-wrong)\n\n- Sigma Selectorは **Sigma_curve presets** になりました\n- Sigma Resampleは1パス目でしか実際には効いていなかったので、**first-pass-resample** になりました\n- 作ったsigmaをドラッグできなかったのが、できるようになりました。\n- *Res4lyf* 😮‍💨 のせいで、あちらのサンプラーを直接つなげなくなりました。**🤡Clownsampler** を内蔵しました 🛠️\n\n**デュアルサンプラー**\n- ControlNetのにじみ対策のために、特別にここに入れています。\n- 1パス目はControlNetのモデルconditioningつきで、2パス目はクリーンなモデルで走らせます。\n- 2パス目のステップ数はそれほど要りません（10%くらい）。**step_swap** を終盤に置き、**low_pass** を **renoise** にします。\n\n**VRAMと処理速度**\n- **Image reference edit 🖼️🔁** と **Style Transfer 👠🥂👗** を足すと、処理が**大幅に**遅くなります。\n- 処理自体はできますが、倍の時間がかかります。**🥅 ControlNet** も同じです。\n- 組み合わせるほど遅くなります。**これは正常です。**\n- 🧀 チーズに穴があってはいけません 🤔\n\n---\n## ⚙️ 設定：\n\n**Denoise（上に移動しました）**\n- 主にI2I 🖼️用です。高めの値でよく効きます。普段使いでは0.97あたりにしていますが、ポーズを変えたいときに最初にいじるのもこれです。\n\n**🤡 ClownSamplerSelector**\n- ClownSharkサンプラーの大きな利点のひとつは、**fully_implicit**、**diag_implicit** をはじめとする数多くの**sampler**の選択肢です。\n-- **ClownSampler Selector:** Clownサンプラーを好きなように手動で選べます。*注意：* ワークフローのそれ以外の部分は、*⚙️ User Settings* エリアでのあなたの選択に従います。\n- ⚠️ Fully implicitのサンプラー（radau_iia_3sなど）は、1ステップあたりモデルを何度も呼び出します。同じ絵で、約3倍遅くなります。\n\n---\n## LC Sigmas (BETA)\n\n- **両方のパスを1つのスケジューラーで。** ノード上のグラフがスケジュール全体を表示します：オレンジ＝1パス目、青＝2パス目、破線＝編集前のプリセット。ノードを縦に伸ばすとグラフも大きくなります。\n- **sampler:** グラフの下の緑の線が、あなたのモデルで最もテスト結果が良かったものを教えてくれます（Krea 2：euler + beta57）。\n- **sigma_curve_presets:** スケジュールの形です。選んだものの設定だけが表示されます。\n  * base: 素のスケジューラーで、base_schedulerで選びます。🥱\n  * beta: 自分で決めたalphaとbetaを使ったbetaカーブ。\n  * flowmatch: FlowMatchカーブ。😎\n  * **hyperbolic / gaussian:** ベースのカーブをtanhや釣鐘型のカーブなどで曲げたもの。🤫🫙👍🏼\n  * saved: その時は取っておく価値があると思ったけれど、たぶんもう二度と使わないカーブたち 🤔\n- **グラフ上のポイントをドラッグするとカーブが曲がります。** smoothは隣の点も引っ張ります（smooth_radius＝何点か）、spikeはその点だけを動かします。reset curveで元に戻り、save curveでプリセットとして保存します。\n- **steps:** 両パスを合わせた総ステップ数。\n- **step_swap:** クリーンなモデルに切り替わるステップ。ControlNetのにじみ対策では、終盤に置きます（steps 20、step_swap 18＝最後の10%がクリーンで走る）。0＝1パスのみ。\n- **first_pass_resample:** 1パス目のスケジュールを引き伸ばして、構造を作る時間を増やします。1＝オフ。（私は1.15が好き）\n- **low_pass:** *continue noise schedule*＝2パス目が残りのノイズを仕上げます。*renoise*＝1パス目で絵を仕上げ、そのあと新しいノイズをswapのレベルまで戻して、クリーンなモデルが整える余地を作ります（例：🥅 controlNetの後始末）。*Swapを遅く*＝軽い後始末、*早く*＝しっかり整える。\n- **denoise:** I2I用です。denoise_steps：full schedule＝denoiseが全体に効く。at step swap＝1パス目のみで、2パス目は単独で整えます。\n- **sigma_shift:** use model defaultのままにしておきます。大きいほど構図に、小さいほど細部にステップを多く使います。flowmatchとsavedのカーブは無視します。\n- **💡 Flowモデル（Krea 2、Z-Image、Flux 2）:** base_schedulerではbeta、beta57、simpleなら安全です。Karras、kl_optimal、linear_quadraticは焼けます。\n- ⚠️ gaussianカーブを下にドラッグするときは控えめに。もともとノイズが高いままなので、大きくドラッグすると細部のステップが短くなって絵が焼けます。\n\n---\n\n**LC Detail Daemon (BETA)**\n- 実際よりノイズが少しだけ少ない、とモデルに伝えることで細部を足します。モデルが取り除くノイズが少し減って、細かいテクスチャが残ります。\n- **amount** は元のDetail Daemonと同じスケールです（1.0＝ピークでノイズ10%減）。ただしCFGが掛かることは一切ありません。\n- **start / end** は元と同じくステップです：0.15〜0.85。\n- **peak** と **exponent** は、amountより効きます。**peak 0**＝ウィンドウの最初、形が決まるノイズの多いステップで最強。**exponent 0**＝ウィンドウ全体で全開。\n- **mode:**\n    - **look only**（デフォルト）：大きな組み替えなしで、くっきりした細部。👈🏼\n    - **classic:** 元のやつ。小さなものが動きます（服のしわ、窓、背景のピント）。\n    - **keep structure:** 変化のうち細かい部分だけを残すので、レイアウトは完全にそのまま。約45%遅くなります。\n- **sigmas:** **sigmas_high** をつなぐと、自分のステップがグラフのどこに乗るかが見えます。Detail Daemonは1パス目にしか付きません。\n- ⚠️ 自分でノイズを足すサンプラー（SDE、ancestral、res_2s / res_3s、eta 0.5のClownShark）とDetail Daemonの組み合わせは、ブツブツが出ます。amountを下げるか、ノイズを足さないサンプラーにしてください。\n\n---\n\n**LC Stop 🛑**\n- オンにすると、生成がここで止まります。アップスケーラーやディテーラーなどに進む前に、変更を加えられます。\n- 画像の出来を見て以降の設定を変えてから、**⏯️** を押してください。\n- 私のお気に入りの低VRAM対策です。\n- 💡⚠️ **ランダムseedをオンにしていると、毎回ゼロからやり直しになります。必ずseedを固定してください！**\n\n**Notify 🔊**\n- ここまで来たら音が鳴るので、ずっと張り付いて見ている必要がありません。\n- どういたしまして 😉\n\n---\n\n**LC Sigmasのおすすめ設定**\n| モデル | sampler + scheduler_shape | steps | step_swap (ControlNet) | Detail Daemon amount (look only) | 備考 |\n|---|---|---|---|---|---|\n| **Krea 2 Turbo / Krealism** | euler + beta57 | 8 | 7 | 1.0 | 普段使いのセットアップ |\n| **Krea 2 Raw** | euler + beta57 | 20 - 30 | 18 - 27 | 0.5 | ステップが多いほど強く効く |\n| **Z-Image Turbo** | uni_pc + simple | 8 - 9 | 8 | 0.75 | 細部の乗りが一番いい |\n| **Flux 2 Klein** | uni_pc + simple | 4 | off | off | ステップが少なすぎる：細部を足すかわりに光が動く |\n| **SDXL / Illustrious / Pony** | dpmpp_2m + karras | 25 - 30 | 23 - 27 | 0.75 | Karrasはここなら問題なし、flowモデルでは不可 |\n\n**Detail Daemonのおすすめ設定**\n| プリセット | amount | start | end | peak | exponent | mode | おすすめの用途 | 備考 |\n|---|---|---|---|---|---|---|---|---|\n| **Balanced**（デフォルト） | 1.0 | 0.15 | 0.85 | 0 | 0 | look only | 普段使い | テスト済みの設定 |\n| **Gentle sharpen** | 0.5 | 0.20 | 0.80 | 0.5 | 1 | look only | ポートレート、肌 | ほとんど何も動かさない |\n| **Original look** | 0.5 | 0.15 | 0.85 | 0 | 0 | classic | 昔のDetail Daemonの感じ | 小さなものが動く |\n| **Keep layout** | 0.5 | 0.15 | 0.85 | 0 | 0 | keep structure | 何も動かしたくないとき | 約45%遅い |\n| **Smooth** | -0.5 | 0.15 | 0.85 | 0 | 0 | look only | ごちゃついた、またはざらついた絵 | マイナス＝より滑らかで、細部は減る |\n\n### 💡 ちょっとしたコツ：\n- **peak** と **exponent** が0のときに一番パンチが出ます。上げると、よりやさしいシャープになります。\n- **amount** は元のDetail Daemonのスケールです：1.0＝ピークでノイズ10%減。\n- **classic** と **keep structure** はlook onlyより強く効きます：amountは半分から始めましょう。\n- **start / end:** 最後の数ステップはいじらないでください。ノイズが画像に残ります。\n- 4ステップのモデル：やる価値はありません。\n",
              "src": "b4772265",
              "srcTitle": "🧠 Notes"
            },
            "ko": {
              "text": "## 개요\n\n### 💡Cat, 여기 있던 거 다 어디 갔어요? \n\n- [여기서 읽어보세요](https://civitai.red/articles/35997/sampler-scheduler-and-sigmas-what-they-actually-do-and-why-yours-might-be-wrong)\n\n- Sigma Selector는 이제 **Sigma_curve presets**입니다\n- Sigma Resample은 사실 첫 번째 패스에서만 제대로 작동해서, 이제 **first-pass-resample**입니다\n- 만들어진 sigma를 드래그할 수 없었는데, 이제 됩니다.\n- *Res4lyf* 😮‍💨 때문에 그쪽 sampler를 직접 연결할 수 없게 됐습니다. **🤡Clownsampler**는 이제 내장되어 있습니다 🛠️\n\n**Dual Samplers**\n- ControlNet 번짐(bleed)을 해결하려고 특별히 넣었습니다.\n- 첫 번째 패스는 ControlNet 모델 conditioning으로 돌고, 두 번째는 깨끗한 모델로 돕니다.\n- 두 번째는 steps가 많이 필요 없습니다 (10% 정도). **step_swap**을 끝 쪽에 두고 **low_pass**는 **renoise**로 설정하세요.\n\n**VRAM과 처리 속도**\n- **Image reference edit 🖼️🔁**과 **Style Transfer 👠🥂👗**을 추가하면 처리 속도가 **크게** 느려집니다.\n- 처리는 되지만 시간이 두 배 걸립니다. **🥅 ControlNet**도 마찬가지입니다.\n- 조합할수록 느려집니다. **정상입니다.**\n- 🧀 치즈에는 구멍이 없어야 합니다 🤔\n\n---\n## ⚙️ 설정:\n\n**Denoise (이제 맨 위에 있음)**\n- 주로 I2I 🖼️용입니다. 높은 값에서 잘 작동합니다. 일상적으로는 0.97 정도로 둡니다만, 포즈를 바꾸고 싶을 때 가장 먼저 만지는 값이기도 합니다.\n\n**🤡 ClownSamplerSelector**\n- ClownShark sampler의 주요 장점 중 하나는 **fully_implicit**, **diag_implicit** 같은 수많은 **sampler** 옵션입니다.\n-- **ClownSampler Selector:** Clown sampler 중 아무거나 직접 고릅니다. *참고:* 워크플로의 나머지는 모두 *⚙️ User Settings* 영역에서 고른 것을 따릅니다.\n- ⚠️ Fully implicit sampler(radau_iia_3s 등)는 step마다 모델을 여러 번 호출합니다. 같은 그림에 약 3배 느립니다.\n\n---\n## LC Sigmas (BETA)\n\n- **두 패스에 스케줄러 하나.** 노드의 그래프가 전체 스케줄을 보여줍니다: 주황 = 첫 번째 패스, 파랑 = 두 번째 패스, 점선 = 수정하기 전의 프리셋. 노드를 세로로 키우면 그래프도 커집니다.\n- **sampler:** 그래프 아래 초록 선이 내 모델에서 가장 잘 나온 조합을 알려줍니다 (Krea 2: euler + beta57).\n- **sigma_curve_presets:** 스케줄의 모양. 고른 것의 설정만 표시됩니다.\n  * base: 일반 스케줄러, base_scheduler에서 선택. 🥱\n  * beta: 직접 alpha와 beta를 넣는 beta 곡선.\n  * flowmatch: FlowMatch 곡선. 😎\n  * **hyperbolic / gaussian:** 기본 곡선을 tanh나 종 모양 곡선 등으로 휘게 한 것. 🤫🫙👍🏼\n  * saved: 그때는 보관할 만하다고 생각했지만 아마 다시는 안 쓸 곡선들 🤔\n- **그래프의 점을 드래그해서 곡선을 휘게 하세요.** smooth는 이웃 점을 같이 끌고 가고(smooth_radius = 몇 개), spike는 그 점만 움직입니다. reset curve로 되돌리고, save curve로 프리셋으로 저장합니다.\n- **steps:** 두 패스를 합친 총 steps.\n- **step_swap:** 깨끗한 모델이 넘겨받는 step. ControlNet 번짐에는 끝 쪽에 두세요 (steps 20, step_swap 18 = 마지막 10%가 깨끗하게 돕니다). 0 = 한 패스만.\n- **first_pass_resample:** 첫 번째 패스의 스케줄을 늘려서 구조를 만들 시간을 더 줍니다. 1 = 끔. (1.15를 제일 좋아합니다)\n- **low_pass:** *continue noise schedule* = 두 번째 패스가 남은 노이즈를 마무리합니다. *renoise* = 첫 번째 패스가 그림을 끝내고, 새 노이즈를 swap 수준까지 다시 올려서 깨끗한 모델이 다듬을 거리가 생깁니다 (예: 🥅 controlNet 정리). *Swap late* = 가벼운 정리, *earlier* = 더 강한 리파인.\n- **denoise:** I2I. denoise_steps: full schedule = denoise가 전체 실행에 걸쳐 적용. at step swap = 첫 번째 패스에만 적용되고 두 번째 패스는 혼자 리파인합니다.\n- **sigma_shift:** use model default로 두세요. 높을수록 구도에 더 많은 steps, 낮을수록 디테일에 더 많이. flowmatch와 saved 곡선은 무시합니다.\n- **💡 Flow 모델 (Krea 2, Z-Image, Flux 2):** base_scheduler에서 beta, beta57, simple은 안전합니다. Karras, kl_optimal, linear_quadratic은 타버립니다.\n- ⚠️ gaussian 곡선을 아래로 많이 끌지 마세요. 이미 노이즈를 높게 유지하는데, 많이 끌면 디테일 steps가 잘려서 그림이 타버립니다.\n\n---\n\n**LC Detail Daemon (BETA)**\n- 모델에게 실제보다 노이즈가 조금 적다고 알려서 디테일을 더합니다. 그러면 조금 덜 제거해서 미세한 질감이 더 남습니다.\n- **amount**는 원래 Detail Daemon과 같은 스케일을 쓰지만(1.0 = 피크에서 노이즈 10% 감소) CFG가 곱해지지는 않습니다.\n- **start / end**는 원래처럼 steps입니다: 0.15~0.85.\n- **peak**와 **exponent**가 amount보다 더 많은 일을 합니다. **peak 0** = 윈도우 시작 지점, 형태를 잡는 노이즈 많은 steps에서 가장 강함. **exponent 0** = 윈도우 전체에서 최대 강도.\n- **mode:**\n    - **look only** (기본값): 큰 재배치 없이 또렷한 디테일.👈🏼\n    - **classic:** 원조. 작은 것들이 바뀝니다 (주름, 창문, 배경 초점).\n    - **keep structure:** 변화의 미세한 부분만 유지해서 레이아웃이 정확히 그 자리에 남습니다. 약 45% 느립니다.\n- **sigmas:** **sigmas_high**를 연결하면 steps가 그래프의 어디에 떨어지는지 볼 수 있습니다. Detail Daemon은 첫 번째 패스에만 들어갑니다.\n- ⚠️ 자체 노이즈를 추가하는 sampler(SDE, ancestral, res_2s / res_3s, eta 0.5의 ClownShark) + Detail Daemon = 반점. amount를 낮추거나 노이즈 없는 sampler를 고르세요.\n\n---\n\n**LC Stop 🛑**\n- 켜면 생성이 여기서 멈춥니다. upscaler, detailer 등에 들어가기 전에 수정할 수 있습니다.\n- 이미지가 어떻게 나왔는지에 따라 그 뒤의 설정을 바꾸고 **⏯️**를 누르세요.\n- 제가 제일 좋아하는 저VRAM 요령입니다.\n- 💡⚠️ **랜덤 seed를 켜놨다면 계속 처음부터 다시 시작합니다. seed를 꼭 고정하세요!**\n\n**Notify 🔊**\n- 이 지점에 도달하면 소리가 나서 지켜보고 있지 않아도 됩니다.\n- 천만에요 😉\n\n---\n\n**LC Sigmas 최적 설정**\n| 모델 | sampler + scheduler_shape | steps | step_swap (ControlNet) | Detail Daemon amount (look only) | 비고 |\n|---|---|---|---|---|---|\n| **Krea 2 Turbo / Krealism** | euler + beta57 | 8 | 7 | 1.0 | 일상 설정 |\n| **Krea 2 Raw** | euler + beta57 | 20 - 30 | 18 - 27 | 0.5 | steps가 많을수록 더 강하게 먹힘 |\n| **Z-Image Turbo** | uni_pc + simple | 8 - 9 | 8 | 0.75 | 디테일을 가장 잘 받음 |\n| **Flux 2 Klein** | uni_pc + simple | 4 | off | off | steps가 너무 적어서 디테일 대신 조명이 바뀜 |\n| **SDXL / Illustrious / Pony** | dpmpp_2m + karras | 25 - 30 | 23 - 27 | 0.75 | 여기선 Karras 괜찮음, flow 모델에는 안 됨 |\n\n**Detail Daemon 최적 설정**\n| 프리셋 | amount | start | end | peak | exponent | mode | 추천 용도 | 비고 |\n|---|---|---|---|---|---|---|---|---|\n| **Balanced** (기본값) | 1.0 | 0.15 | 0.85 | 0 | 0 | look only | 일상 사용 | 테스트한 설정 |\n| **Gentle sharpen** | 0.5 | 0.20 | 0.80 | 0.5 | 1 | look only | 인물, 피부 | 거의 아무것도 안 움직임 |\n| **Original look** | 0.5 | 0.15 | 0.85 | 0 | 0 | classic | 옛 Detail Daemon 느낌 | 작은 것들이 바뀜 |\n| **Keep layout** | 0.5 | 0.15 | 0.85 | 0 | 0 | keep structure | 아무것도 움직이면 안 될 때 | 약 45% 느림 |\n| **Smooth** | -0.5 | 0.15 | 0.85 | 0 | 0 | look only | 복잡하거나 그레인 낀 렌더 | 음수 = 더 매끄럽고 디테일 감소 |\n\n### 💡 빠른 팁:\n- 임팩트는 **peak**와 **exponent**가 0일 때 나옵니다. 더 부드럽게 선명하게 하려면 올리세요.\n- **amount**는 원래 Detail Daemon의 스케일입니다: 1.0 = 피크에서 노이즈 10% 감소.\n- **classic**과 **keep structure**는 look only보다 강하게 먹힙니다: amount의 절반으로 시작하세요.\n- **start / end:** 마지막 steps는 건드리지 마세요. 안 그러면 노이즈가 이미지에 남습니다.\n- 4-step 모델: 할 만한 가치가 없습니다.",
              "src": "b4772265",
              "srcTitle": "🧠 Notes"
            }
          },
          "titles": {
            "en": "🧠 Notes",
            "zh": "🧠 说明",
            "ja": "🧠 ノート",
            "ko": "🧠 노트"
          }
        },
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "English ✏️",
        "## Overview\n\n### 💡Cat, what did you do to all the stuff you had here? \n\n- [read about it here](https://civitai.red/articles/35997/sampler-scheduler-and-sigmas-what-they-actually-do-and-why-yours-might-be-wrong)\n\n- Sigma Selector is now **Sigma_curve presets**\n- Sigma Resample only really worked on the first pass, so now is **first-pass-resample**\n- I couldn't drag a built sigma. Now I can.\n- *Res4lyf* 😮‍💨 made it so you couldn't hook their sampler up directly. **🤡Clownsampler** is now built in 🛠️\n\n**Dual Samplers**\n- Put here specifically to deal with ControlNet bleed.\n- The first pass runs with the ControlNet model conditioning, the second runs with the clean model.\n- You don't need a lot of steps for the second one (around 10%). Set **step_swap** near the end and **low_pass** to **renoise**.\n\n**VRAM and processing speed**\n- Adding **Image reference edit 🖼️🔁** and **Style Transfer 👠🥂👗** will **significantly** slow down processing.\n- It will still process, but it takes twice as long. The same goes for **🥅 ControlNet**.\n- The more you combine, the slower it gets. **This is normal.**\n- 🧀 cheese should not have holes 🤔\n\n---\n## ⚙️ Settings:\n\n**Denoise (now up top)**\n- Mainly for I2I 🖼️. Works well at higher levels. I like leaving it around 0.97 for everyday use, but it is also the first thing I go to when I want to change a pose.\n\n**🤡 ClownSamplerSelector**\n- One of the main advantages of ClownShark samplers is their **fully_implicit**, **diag_implicit** and many other **sampler** options.\n-- **ClownSampler Selector:** pick any of the Clown samplers by hand. *note:* everything else in the workflow follows your choice in the *⚙️ User Settings* area.\n- ⚠️ Fully implicit samplers (radau_iia_3s, etc.) call the model several times per step. Same picture, about 3x slower.\n\n---\n## LC Sigmas (BETA)\n\n- **One scheduler for both passes.** The graph on the node shows the whole schedule: orange = first pass, blue = second pass, dashed = the preset before your edits. Drag the node taller and the graph grows.\n- **sampler:** the green line under the graph tells you what tested best for your model (Krea 2: euler + beta57).\n- **sigma_curve_presets:** the shape of the schedule. Only the settings for the one you pick show up.\n  * base: a plain scheduler, picked in base_scheduler. 🥱\n  * beta: the beta curve with your own alpha and beta.\n  * flowmatch: the FlowMatch curve. 😎\n  * **hyperbolic / gaussian:** the base curve bent by tanh, a bell curve, etc. 🤫🫙👍🏼\n  * saved: any curves you decided at the time might be worth keeping, but will proably never use again 🤔\n- **Drag a point on the graph to bend the curve.** smooth pulls the neighbours along (smooth_radius = how many), spike moves just that point. reset curve undoes it, save curve keeps it as a preset.\n- **steps:** total steps for both passes together.\n- **step_swap:** the step where the clean model takes over. For ControlNet bleed, put it near the end (steps 20, step_swap 18 = the last 10% runs clean). 0 = one pass only.\n- **first_pass_resample:** stretches out the schedule for the first pass, giving it more time to build structure. 1 = off. (1.15 is my favorite)\n- **low_pass:** *continue noise schedule* = the second pass finishes the leftover noise. *renoise* = the first pass finishes the picture, then fresh noise goes back up to the swap level, so the clean model has something to refine (i.e 🥅 controlNet clean-up). *Swap late* = a little clean-up, *earlier* = heavier refining.\n- **denoise:** I2I. denoise_steps: full schedule = denoise covers the whole run. at step swap = the first pass only, so the second pass refines on its own.\n- **sigma_shift:** leave it on use model default. Higher = more steps on composition, lower = more on detail. flowmatch and saved curves ignore it.\n- **💡 Flow models (Krea 2, Z-Image, Flux 2):** beta, beta57 and simple are safe in base_scheduler. Karras, kl_optimal and linear_quadratic burn.\n- ⚠️ Go easy dragging a gaussian curve down. It already keeps the noise high, and a big drag cuts the detail steps short and burns the picture.\n\n---\n\n**LC Detail Daemon (BETA)**\n- Adds detail by telling the model there is a little less noise than there really is, so it removes a little less and keeps more fine texture.\n- **amount** uses the same scale as the original Detail Daemon (1.0 = 10% less noise at the peak), but it is never multiplied by your CFG.\n- **start / end** are steps, like the original: 0.15 to 0.85.\n- **peak** and **exponent** do more than the amount. **peak 0** = strongest at the start of the window, on the noisy steps where it shapes things. **exponent 0** = full strength across the whole window.\n- **mode:**\n    - **look only** (default): crisp detail without big reshuffles.👈🏼\n    - **classic:** the original. Small things shift (folds, windows, background focus).\n    - **keep structure:** only the fine part of the change is kept, so the layout stays exactly where it was. About 45% slower.\n- **sigmas:** wire **sigmas_high** in to see where your steps land on the graph. Detail Daemon only goes on the first pass.\n- ⚠️ Samplers that add their own noise (SDE, ancestral, res_2s / res_3s, ClownShark at eta 0.5) + Detail Daemon = specks. Lower the amount or pick a noise-free sampler.\n\n---\n\n**LC Stop 🛑**\n- When turned on, the generation stops here. It lets you make changes before committing to the upscalers, detailers, etc.\n- Change the settings after it based on how your image came out, then hit **⏯️**.\n- My favorite low VRAM trick.\n- 💡⚠️ **If you have a random seed turned on, it will keep starting from scratch. Make sure to fix the seed!**\n\n**Notify 🔊**\n- Makes a sound when it gets to this point, so you don't have to sit there and watch it.\n- You're welcome 😉\n\n---\n\n**Best LC Sigmas Settings**\n| Model | sampler + scheduler_shape | steps | step_swap (ControlNet) | Detail Daemon amount (look only) | Notes |\n|---|---|---|---|---|---|\n| **Krea 2 Turbo / Krealism** | euler + beta57 | 8 | 7 | 1.0 | The everyday setup |\n| **Krea 2 Raw** | euler + beta57 | 20 - 30 | 18 - 27 | 0.5 | More steps = it hits harder |\n| **Z-Image Turbo** | uni_pc + simple | 8 - 9 | 8 | 0.75 | Takes detail the best |\n| **Flux 2 Klein** | uni_pc + simple | 4 | off | off | Too few steps: it shifts the light instead of adding detail |\n| **SDXL / Illustrious / Pony** | dpmpp_2m + karras | 25 - 30 | 23 - 27 | 0.75 | Karras is fine here, not on flow models |\n\n**Best Detail Daemon Settings**\n| Preset | amount | start | end | peak | exponent | mode | Recommended for | Notes |\n|---|---|---|---|---|---|---|---|---|\n| **Balanced** (default) | 1.0 | 0.15 | 0.85 | 0 | 0 | look only | Everyday use | The tested setting |\n| **Gentle sharpen** | 0.5 | 0.20 | 0.80 | 0.5 | 1 | look only | Portraits, skin | Barely moves anything |\n| **Original look** | 0.5 | 0.15 | 0.85 | 0 | 0 | classic | The old Detail Daemon feel | Small things shift |\n| **Keep layout** | 0.5 | 0.15 | 0.85 | 0 | 0 | keep structure | When nothing may move | About 45% slower |\n| **Smooth** | -0.5 | 0.15 | 0.85 | 0 | 0 | look only | Busy or grainy renders | Negative = smoother, less detail |\n\n### 💡 Quick Tips:\n- **peak** and **exponent** at 0 is where the punch comes from. Raise them for a gentler sharpen.\n- **amount** is the original Detail Daemon's scale: 1.0 = 10% less noise at the peak.\n- **classic** and **keep structure** hit harder than look only: start them at half the amount.\n- **start / end:** leave the last steps alone, or noise stays in the image.\n- 4-step models: not worth it.\n"
      ],
      "widgets_values_named": {
        "language": "English ✏️",
        "text": "## Overview\n\n### 💡Cat, what did you do to all the stuff you had here? \n\n- [read about it here](https://civitai.red/articles/35997/sampler-scheduler-and-sigmas-what-they-actually-do-and-why-yours-might-be-wrong)\n\n- Sigma Selector is now **Sigma_curve presets**\n- Sigma Resample only really worked on the first pass, so now is **first-pass-resample**\n- I couldn't drag a built sigma. Now I can.\n- *Res4lyf* 😮‍💨 made it so you couldn't hook their sampler up directly. **🤡Clownsampler** is now built in 🛠️\n\n**Dual Samplers**\n- Put here specifically to deal with ControlNet bleed.\n- The first pass runs with the ControlNet model conditioning, the second runs with the clean model.\n- You don't need a lot of steps for the second one (around 10%). Set **step_swap** near the end and **low_pass** to **renoise**.\n\n**VRAM and processing speed**\n- Adding **Image reference edit 🖼️🔁** and **Style Transfer 👠🥂👗** will **significantly** slow down processing.\n- It will still process, but it takes twice as long. The same goes for **🥅 ControlNet**.\n- The more you combine, the slower it gets. **This is normal.**\n- 🧀 cheese should not have holes 🤔\n\n---\n## ⚙️ Settings:\n\n**Denoise (now up top)**\n- Mainly for I2I 🖼️. Works well at higher levels. I like leaving it around 0.97 for everyday use, but it is also the first thing I go to when I want to change a pose.\n\n**🤡 ClownSamplerSelector**\n- One of the main advantages of ClownShark samplers is their **fully_implicit**, **diag_implicit** and many other **sampler** options.\n-- **ClownSampler Selector:** pick any of the Clown samplers by hand. *note:* everything else in the workflow follows your choice in the *⚙️ User Settings* area.\n- ⚠️ Fully implicit samplers (radau_iia_3s, etc.) call the model several times per step. Same picture, about 3x slower.\n\n---\n## LC Sigmas (BETA)\n\n- **One scheduler for both passes.** The graph on the node shows the whole schedule: orange = first pass, blue = second pass, dashed = the preset before your edits. Drag the node taller and the graph grows.\n- **sampler:** the green line under the graph tells you what tested best for your model (Krea 2: euler + beta57).\n- **sigma_curve_presets:** the shape of the schedule. Only the settings for the one you pick show up.\n  * base: a plain scheduler, picked in base_scheduler. 🥱\n  * beta: the beta curve with your own alpha and beta.\n  * flowmatch: the FlowMatch curve. 😎\n  * **hyperbolic / gaussian:** the base curve bent by tanh, a bell curve, etc. 🤫🫙👍🏼\n  * saved: any curves you decided at the time might be worth keeping, but will proably never use again 🤔\n- **Drag a point on the graph to bend the curve.** smooth pulls the neighbours along (smooth_radius = how many), spike moves just that point. reset curve undoes it, save curve keeps it as a preset.\n- **steps:** total steps for both passes together.\n- **step_swap:** the step where the clean model takes over. For ControlNet bleed, put it near the end (steps 20, step_swap 18 = the last 10% runs clean). 0 = one pass only.\n- **first_pass_resample:** stretches out the schedule for the first pass, giving it more time to build structure. 1 = off. (1.15 is my favorite)\n- **low_pass:** *continue noise schedule* = the second pass finishes the leftover noise. *renoise* = the first pass finishes the picture, then fresh noise goes back up to the swap level, so the clean model has something to refine (i.e 🥅 controlNet clean-up). *Swap late* = a little clean-up, *earlier* = heavier refining.\n- **denoise:** I2I. denoise_steps: full schedule = denoise covers the whole run. at step swap = the first pass only, so the second pass refines on its own.\n- **sigma_shift:** leave it on use model default. Higher = more steps on composition, lower = more on detail. flowmatch and saved curves ignore it.\n- **💡 Flow models (Krea 2, Z-Image, Flux 2):** beta, beta57 and simple are safe in base_scheduler. Karras, kl_optimal and linear_quadratic burn.\n- ⚠️ Go easy dragging a gaussian curve down. It already keeps the noise high, and a big drag cuts the detail steps short and burns the picture.\n\n---\n\n**LC Detail Daemon (BETA)**\n- Adds detail by telling the model there is a little less noise than there really is, so it removes a little less and keeps more fine texture.\n- **amount** uses the same scale as the original Detail Daemon (1.0 = 10% less noise at the peak), but it is never multiplied by your CFG.\n- **start / end** are steps, like the original: 0.15 to 0.85.\n- **peak** and **exponent** do more than the amount. **peak 0** = strongest at the start of the window, on the noisy steps where it shapes things. **exponent 0** = full strength across the whole window.\n- **mode:**\n    - **look only** (default): crisp detail without big reshuffles.👈🏼\n    - **classic:** the original. Small things shift (folds, windows, background focus).\n    - **keep structure:** only the fine part of the change is kept, so the layout stays exactly where it was. About 45% slower.\n- **sigmas:** wire **sigmas_high** in to see where your steps land on the graph. Detail Daemon only goes on the first pass.\n- ⚠️ Samplers that add their own noise (SDE, ancestral, res_2s / res_3s, ClownShark at eta 0.5) + Detail Daemon = specks. Lower the amount or pick a noise-free sampler.\n\n---\n\n**LC Stop 🛑**\n- When turned on, the generation stops here. It lets you make changes before committing to the upscalers, detailers, etc.\n- Change the settings after it based on how your image came out, then hit **⏯️**.\n- My favorite low VRAM trick.\n- 💡⚠️ **If you have a random seed turned on, it will keep starting from scratch. Make sure to fix the seed!**\n\n**Notify 🔊**\n- Makes a sound when it gets to this point, so you don't have to sit there and watch it.\n- You're welcome 😉\n\n---\n\n**Best LC Sigmas Settings**\n| Model | sampler + scheduler_shape | steps | step_swap (ControlNet) | Detail Daemon amount (look only) | Notes |\n|---|---|---|---|---|---|\n| **Krea 2 Turbo / Krealism** | euler + beta57 | 8 | 7 | 1.0 | The everyday setup |\n| **Krea 2 Raw** | euler + beta57 | 20 - 30 | 18 - 27 | 0.5 | More steps = it hits harder |\n| **Z-Image Turbo** | uni_pc + simple | 8 - 9 | 8 | 0.75 | Takes detail the best |\n| **Flux 2 Klein** | uni_pc + simple | 4 | off | off | Too few steps: it shifts the light instead of adding detail |\n| **SDXL / Illustrious / Pony** | dpmpp_2m + karras | 25 - 30 | 23 - 27 | 0.75 | Karras is fine here, not on flow models |\n\n**Best Detail Daemon Settings**\n| Preset | amount | start | end | peak | exponent | mode | Recommended for | Notes |\n|---|---|---|---|---|---|---|---|---|\n| **Balanced** (default) | 1.0 | 0.15 | 0.85 | 0 | 0 | look only | Everyday use | The tested setting |\n| **Gentle sharpen** | 0.5 | 0.20 | 0.80 | 0.5 | 1 | look only | Portraits, skin | Barely moves anything |\n| **Original look** | 0.5 | 0.15 | 0.85 | 0 | 0 | classic | The old Detail Daemon feel | Small things shift |\n| **Keep layout** | 0.5 | 0.15 | 0.85 | 0 | 0 | keep structure | When nothing may move | About 45% slower |\n| **Smooth** | -0.5 | 0.15 | 0.85 | 0 | 0 | look only | Busy or grainy renders | Negative = smoother, less detail |\n\n### 💡 Quick Tips:\n- **peak** and **exponent** at 0 is where the punch comes from. Raise them for a gentler sharpen.\n- **amount** is the original Detail Daemon's scale: 1.0 = 10% less noise at the peak.\n- **classic** and **keep structure** hit harder than look only: start them at half the amount.\n- **start / end:** leave the last steps alone, or noise stays in the image.\n- 4-step models: not worth it.\n"
      },
      "color": "#aa5f46",
      "bgcolor": "#964b32"
    },
    {
      "id": 4790,
      "type": "LCSigmas",
      "pos": [
        -2610,
        -2030
      ],
      "size": [
        320,
        830
      ],
      "flags": {
        "pinned": true
      },
      "order": 172,
      "mode": 0,
      "inputs": [
        {
          "name": "model",
          "type": "MODEL",
          "link": 46253
        },
        {
          "name": "model_2",
          "shape": 7,
          "type": "MODEL",
          "link": 46256
        },
        {
          "name": "image_size_latent",
          "shape": 7,
          "type": "LATENT",
          "link": 46209
        },
        {
          "name": "sampler",
          "type": "COMBO",
          "widget": {
            "name": "sampler"
          },
          "link": 46210
        },
        {
          "name": "base_scheduler",
          "type": "COMBO",
          "widget": {
            "name": "base_scheduler"
          },
          "link": 46211
        },
        {
          "name": "steps",
          "type": "INT",
          "widget": {
            "name": "steps"
          },
          "link": 46212
        },
        {
          "name": "step_swap",
          "type": "INT",
          "widget": {
            "name": "step_swap"
          },
          "link": 46213
        },
        {
          "name": "denoise",
          "type": "FLOAT",
          "widget": {
            "name": "denoise"
          },
          "link": 46214
        },
        {
          "name": "seed",
          "type": "INT",
          "widget": {
            "name": "seed"
          },
          "link": 46215
        }
      ],
      "outputs": [
        {
          "name": "sigmas_high",
          "type": "SIGMAS",
          "links": [
            46220
          ]
        },
        {
          "name": "sigmas_low",
          "type": "SIGMAS",
          "links": [
            46226,
            46369
          ]
        },
        {
          "name": "noise_high",
          "type": "NOISE",
          "links": [
            46217
          ]
        },
        {
          "name": "noise_low",
          "type": "NOISE",
          "links": [
            46223
          ]
        },
        {
          "name": "info",
          "type": "STRING",
          "links": []
        },
        {
          "name": "sigmas_full",
          "type": "SIGMAS",
          "links": []
        },
        {
          "name": "sampler",
          "type": "SAMPLER",
          "links": [
            46229,
            46723
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "573d8e1f7a5a76fb7c93ad7a317b8ff42426c986",
        "Node name for S&R": "LCSigmas",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "euler",
        "base",
        "beta57",
        20,
        0,
        1,
        "at step swap",
        "continue noise schedule",
        "same as first",
        1.15,
        "use model default",
        1.15,
        0.6,
        0.6,
        3,
        true,
        0,
        "tanh",
        1,
        0.04,
        1,
        "transform",
        "smooth",
        1.5,
        "",
        0,
        "randomize",
        ""
      ],
      "widgets_values_named": {
        "sampler": "euler",
        "sigma_curve_presets": "base",
        "base_scheduler": "beta57",
        "steps": 20,
        "step_swap": 0,
        "denoise": 1,
        "denoise_steps": "at step swap",
        "low_pass": "continue noise schedule",
        "scheduler_shape_2": "same as first",
        "first_pass_resample": 1.15,
        "sigma_shift": "use model default",
        "custom_shift": 1.15,
        "beta_alpha": 0.6,
        "beta_beta": 0.6,
        "flowmatch_shift": 3,
        "flowmatch_dynamic": true,
        "flowmatch_terminal": 0,
        "hyperbolic_function": "tanh",
        "hyperbolic_scale": 1,
        "gaussian_mean": 0.04,
        "gaussian_std": 1,
        "gaussian_operation": "transform",
        "edit_mode": "smooth",
        "smooth_radius": 1.5,
        "curve_edit": "",
        "seed": 0,
        "control_after_generate": "randomize",
        "lc_sigmas_graph": ""
      },
      "color": "#643264",
      "bgcolor": "#643264"
    },
    {
      "id": 4791,
      "type": "LCStop",
      "pos": [
        -2280,
        -2030
      ],
      "size": [
        310,
        50
      ],
      "flags": {
        "pinned": true
      },
      "order": 248,
      "mode": 0,
      "inputs": [
        {
          "name": "In",
          "type": "*",
          "link": 46216
        }
      ],
      "outputs": [
        {
          "name": "*",
          "type": "*",
          "links": [
            46251
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "79b81758ac54ba8f9b46ecf7682902e87dc26684",
        "Node name for S&R": "LCStop",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "aux_id": "lonecatone23/ComfyUI_LC123_nodes"
      },
      "widgets_values": [
        false
      ],
      "widgets_values_named": {
        "enable": false
      },
      "color": "#963232",
      "bgcolor": "#963232"
    },
    {
      "id": 4792,
      "type": "SamplerCustomAdvanced",
      "pos": [
        -2280,
        -1940
      ],
      "size": [
        310,
        110
      ],
      "flags": {
        "collapsed": false,
        "pinned": true
      },
      "order": 211,
      "mode": 0,
      "inputs": [
        {
          "name": "noise",
          "type": "NOISE",
          "link": 46217
        },
        {
          "name": "guider",
          "type": "GUIDER",
          "link": 46218
        },
        {
          "name": "sampler",
          "type": "SAMPLER",
          "link": 46725
        },
        {
          "name": "sigmas",
          "type": "SIGMAS",
          "link": 46220
        },
        {
          "name": "latent_image",
          "type": "LATENT",
          "link": 46221
        }
      ],
      "outputs": [
        {
          "name": "output",
          "type": "LATENT",
          "links": [
            46227
          ]
        },
        {
          "name": "denoised_output",
          "type": "LATENT",
          "links": []
        }
      ],
      "title": "High Pass Sampler",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.27.0",
        "Node name for S&R": "SamplerCustomAdvanced",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#223",
      "bgcolor": "#335"
    },
    {
      "id": 4793,
      "type": "PreviewImage",
      "pos": [
        -1960,
        -2030
      ],
      "size": [
        640,
        830
      ],
      "flags": {
        "pinned": true
      },
      "order": 242,
      "mode": 0,
      "inputs": [
        {
          "label": "Rough Draft",
          "name": "images",
          "type": "IMAGE",
          "link": 46222
        }
      ],
      "outputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.7.0",
        "Node name for S&R": "PreviewImage",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.5.2"
        },
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65
      },
      "widgets_values": [],
      "widgets_values_named": {},
      "color": "#233",
      "bgcolor": "#355",
      "shape": 2
    },
    {
      "id": 4794,
      "type": "ClownSamplerSelector_Beta",
      "pos": [
        -2990,
        -1710
      ],
      "size": [
        370,
        70
      ],
      "flags": {
        "pinned": true
      },
      "order": 61,
      "mode": 4,
      "inputs": [],
      "outputs": [
        {
          "name": "sampler_name",
          "type": "COMBO",
          "links": [
            46249,
            46454
          ]
        }
      ],
      "title": "🤡 ClownSamplerSelector",
      "properties": {
        "cnr_id": "RES4LYF",
        "ver": "419de2d7c78f415dde9aa352a7231820ebfc17a4",
        "Node name for S&R": "ClownSamplerSelector_Beta",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "fully_implicit/radau_iia_3s"
      ],
      "widgets_values_named": {
        "sampler_name": "fully_implicit/radau_iia_3s"
      },
      "color": "#223",
      "bgcolor": "#335"
    },
    {
      "id": 4795,
      "type": "SamplerCustomAdvanced",
      "pos": [
        -2280,
        -1790
      ],
      "size": [
        310,
        110
      ],
      "flags": {
        "pinned": true
      },
      "order": 223,
      "mode": 0,
      "inputs": [
        {
          "name": "noise",
          "type": "NOISE",
          "link": 46223
        },
        {
          "name": "guider",
          "type": "GUIDER",
          "link": 46224
        },
        {
          "name": "sampler",
          "type": "SAMPLER",
          "link": 46368
        },
        {
          "name": "sigmas",
          "type": "SIGMAS",
          "link": 46226
        },
        {
          "name": "latent_image",
          "type": "LATENT",
          "link": 46227
        }
      ],
      "outputs": [
        {
          "name": "output",
          "type": "LATENT",
          "links": [
            46247
          ]
        },
        {
          "name": "denoised_output",
          "type": "LATENT",
          "links": []
        }
      ],
      "title": "Low Pass Sampler",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.31.0",
        "Node name for S&R": "SamplerCustomAdvanced",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#223",
      "bgcolor": "#335"
    },
    {
      "id": 4796,
      "type": "LCNotify",
      "pos": [
        -2990,
        -1600
      ],
      "size": [
        370,
        130
      ],
      "flags": {
        "pinned": true
      },
      "order": 243,
      "mode": 0,
      "inputs": [
        {
          "name": "any",
          "shape": 7,
          "type": "*",
          "link": 46228
        }
      ],
      "outputs": [
        {
          "name": "any",
          "type": "*",
          "links": [
            46456
          ]
        }
      ],
      "title": "Notify 🔊",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "5832ec12d24dc0e316809e990ca4bb50852e4b72",
        "Node name for S&R": "LCNotify",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "always",
        1,
        "dragon-studio-2.mp3",
        null
      ],
      "widgets_values_named": {
        "mode": "always",
        "volume": 1,
        "file": "dragon-studio-2.mp3",
        "▶ preview": null
      },
      "color": "#649632",
      "bgcolor": "#649632"
    },
    {
      "id": 4797,
      "type": "LCDetailDaemon",
      "pos": [
        -2280,
        -1640
      ],
      "size": [
        310,
        440
      ],
      "flags": {
        "pinned": true
      },
      "order": 194,
      "mode": 0,
      "inputs": [
        {
          "name": "sampler",
          "type": "SAMPLER",
          "link": 46229
        },
        {
          "name": "sigmas",
          "shape": 7,
          "type": "SIGMAS",
          "link": 46369
        }
      ],
      "outputs": [
        {
          "name": "SAMPLER",
          "type": "SAMPLER",
          "links": [
            46368,
            46455
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "1d09f85e3bed224313a6fa77f3f79c632d6004ae",
        "Node name for S&R": "LCDetailDaemon",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        0.25,
        0.15,
        0.85,
        0,
        0,
        "look only",
        ""
      ],
      "widgets_values_named": {
        "amount": 0.25,
        "start": 0.15,
        "end": 0.85,
        "peak": 0,
        "exponent": 0,
        "mode": "look only",
        "lc_dd_graph": ""
      },
      "color": "#643264",
      "bgcolor": "#643264"
    },
    {
      "id": 4799,
      "type": "LCPipeOut",
      "pos": [
        -2980,
        -1340
      ],
      "size": [
        200,
        550
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 129,
      "mode": 0,
      "inputs": [
        {
          "label": "pipe",
          "name": "pipe",
          "type": "LC_PIPE",
          "link": 46231
        }
      ],
      "outputs": [
        {
          "name": "pipe",
          "type": "LC_PIPE",
          "links": []
        },
        {
          "name": "Model 1",
          "type": "MODEL",
          "links": [
            46253,
            46254
          ]
        },
        {
          "name": "Clip 1",
          "type": "CLIP",
          "links": []
        },
        {
          "name": "VAE 1",
          "type": "VAE",
          "links": [
            46248
          ]
        },
        {
          "name": "Model 2",
          "type": "MODEL",
          "links": [
            46255,
            46256
          ]
        },
        {
          "name": "Clip 2",
          "type": "CLIP",
          "links": []
        },
        {
          "name": "VAE 2",
          "type": "VAE",
          "links": []
        },
        {
          "name": "Image",
          "type": "IMAGE",
          "links": []
        },
        {
          "name": "Mask",
          "type": "MASK",
          "links": []
        },
        {
          "name": "Width",
          "type": "INT",
          "links": []
        },
        {
          "name": "Height",
          "type": "INT",
          "links": []
        },
        {
          "name": "Latent",
          "type": "LATENT",
          "links": [
            46209,
            46221
          ]
        },
        {
          "name": "Batch",
          "type": "INT",
          "links": []
        },
        {
          "name": "Positive prompt",
          "type": "STRING",
          "links": []
        },
        {
          "name": "Positive conditioning",
          "type": "CONDITIONING",
          "links": [
            46234,
            46243
          ]
        },
        {
          "name": "Negative prompt",
          "type": "STRING",
          "links": []
        },
        {
          "name": "Negative conditioning",
          "type": "CONDITIONING",
          "links": [
            46235,
            46244
          ]
        },
        {
          "name": "Seed",
          "type": "INT",
          "links": [
            46215
          ]
        },
        {
          "name": "total_steps",
          "type": "INT",
          "links": [
            46212
          ]
        },
        {
          "name": "cfg_1",
          "type": "FLOAT",
          "links": [
            46236
          ]
        },
        {
          "name": "denoise",
          "type": "FLOAT",
          "links": [
            46214
          ]
        },
        {
          "name": "step_swap",
          "type": "INT",
          "links": [
            46213
          ]
        },
        {
          "name": "cfg_2",
          "type": "FLOAT",
          "links": [
            46245
          ]
        },
        {
          "name": "sampler_name",
          "type": "COMBO",
          "links": [
            46250
          ]
        },
        {
          "name": "scheduler",
          "type": "COMBO",
          "links": [
            46211
          ]
        },
        {
          "name": "detailer_steps",
          "type": "INT",
          "links": []
        },
        {
          "name": "protect_mask",
          "type": "MASK",
          "links": null
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "79b81758ac54ba8f9b46ecf7682902e87dc26684",
        "Node name for S&R": "LCPipeOut",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "aux_id": "lonecatone23/ComfyUI_LC123_nodes"
      },
      "color": "#707070",
      "bgcolor": "#707070"
    },
    {
      "id": 4801,
      "type": "CFGGuider",
      "pos": [
        -2980,
        -1300
      ],
      "size": [
        270,
        100
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 148,
      "mode": 0,
      "inputs": [
        {
          "name": "model",
          "type": "MODEL",
          "link": 46254
        },
        {
          "name": "positive",
          "type": "CONDITIONING",
          "link": 46234
        },
        {
          "name": "negative",
          "type": "CONDITIONING",
          "link": 46235
        },
        {
          "name": "cfg",
          "type": "FLOAT",
          "widget": {
            "name": "cfg"
          },
          "link": 46236
        }
      ],
      "outputs": [
        {
          "name": "GUIDER",
          "type": "GUIDER",
          "links": [
            46218
          ]
        }
      ],
      "title": "CFG Guider High",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.27.0",
        "Node name for S&R": "CFGGuider",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        8
      ],
      "widgets_values_named": {
        "cfg": 8
      },
      "color": "#223",
      "bgcolor": "#335"
    },
    {
      "id": 4803,
      "type": "LC Bypasser",
      "pos": [
        -2800,
        -1380
      ],
      "size": [
        310,
        310
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 247,
      "mode": 0,
      "inputs": [
        {
          "name": "LC Speed Boost (BETA) 🚀",
          "type": "*",
          "link": 46451
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "🤡 ClownSamplerSelector",
          "type": "*",
          "link": 46454
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "LC Detail Daemon (BETA)",
          "type": "*",
          "link": 46455
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "Notify 🔊",
          "type": "*",
          "link": 46456
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "",
          "type": "*",
          "link": null
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        }
      ],
      "outputs": [
        {
          "name": "OPT_CONNECTION",
          "type": "*",
          "links": [
            46206
          ]
        }
      ],
      "title": "stuffs bypasser",
      "properties": {
        "toggleRestriction": "default",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        true,
        false,
        true,
        true
      ],
      "widgets_values_named": {
        "Enable 1": true,
        "Enable 2": false,
        "Enable 3": true,
        "Enable 4": true
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 4805,
      "type": "CFGGuider",
      "pos": [
        -2980,
        -1260
      ],
      "size": [
        270,
        100
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 149,
      "mode": 0,
      "inputs": [
        {
          "name": "model",
          "type": "MODEL",
          "link": 46255
        },
        {
          "name": "positive",
          "type": "CONDITIONING",
          "link": 46243
        },
        {
          "name": "negative",
          "type": "CONDITIONING",
          "link": 46244
        },
        {
          "name": "cfg",
          "type": "FLOAT",
          "widget": {
            "name": "cfg"
          },
          "link": 46245
        }
      ],
      "outputs": [
        {
          "name": "GUIDER",
          "type": "GUIDER",
          "links": [
            46224
          ]
        }
      ],
      "title": "CFG Guider Low",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.27.0",
        "Node name for S&R": "CFGGuider",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        8
      ],
      "widgets_values_named": {
        "cfg": 8
      },
      "color": "#223",
      "bgcolor": "#335"
    },
    {
      "id": 4806,
      "type": "SetNode",
      "pos": [
        -2800,
        -1300
      ],
      "size": [
        210,
        50
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 244,
      "mode": 0,
      "inputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "link": 46246
        }
      ],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            46216
          ]
        }
      ],
      "title": "Set_Rough Draft",
      "properties": {
        "Node name for S&R": "SetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "previousName": "Rough Draft",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.5.2",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Rough Draft"
      ],
      "widgets_values_named": {
        "Constant": "Rough Draft"
      },
      "color": "#2a363b",
      "bgcolor": "#3f5159",
      "shape": 2
    },
    {
      "id": 4807,
      "type": "VAEDecode",
      "pos": [
        -2800,
        -1340
      ],
      "size": [
        180,
        50
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 233,
      "mode": 0,
      "inputs": [
        {
          "label": "samples",
          "name": "samples",
          "type": "LATENT",
          "link": 46247
        },
        {
          "label": "vae",
          "name": "vae",
          "type": "VAE",
          "link": 46248
        }
      ],
      "outputs": [
        {
          "label": "IMAGE",
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            46222,
            46228,
            46246
          ]
        }
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.7.0",
        "Node name for S&R": "VAEDecode",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.5.2",
          "input_ue_unconnectable": {}
        },
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65
      },
      "color": "#322",
      "bgcolor": "#533",
      "shape": 2
    },
    {
      "id": 4808,
      "type": "LCAnySwitch",
      "pos": [
        -2980,
        -1220
      ],
      "size": [
        330,
        120
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 150,
      "mode": 0,
      "inputs": [
        {
          "label": "COMBO",
          "name": "any_01",
          "shape": 7,
          "type": "COMBO",
          "link": 46249
        },
        {
          "label": "COMBO",
          "name": "any_02",
          "shape": 7,
          "type": "COMBO",
          "link": 46250
        }
      ],
      "outputs": [
        {
          "label": "COMBO",
          "name": "COMBO",
          "type": "COMBO",
          "links": [
            46210
          ]
        }
      ],
      "title": "Sampler switch",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "45c0fd983d47677b1febbad80d1496a0dc0ebbb4",
        "Node name for S&R": "LCAnySwitch",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {
            "any_01": true,
            "any_02": true,
            "any_03": true,
            "any_04": true,
            "any_05": true,
            "any_06": true,
            "any_07": true,
            "any_08": true,
            "any_09": true,
            "any_10": true,
            "any_11": true,
            "any_12": true,
            "any_13": true,
            "any_14": true,
            "any_15": true,
            "any_16": true,
            "any_17": true,
            "any_18": true,
            "any_19": true,
            "any_20": true
          },
          "send_to_any": 0,
          "apply_to_unrepeated": 0,
          "version": "7.8"
        },
        "lc_w": 330,
        "lc_h": 120
      },
      "widgets_values": [
        2
      ],
      "widgets_values_named": {
        "inputcount": 2
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 4809,
      "type": "SetNode",
      "pos": [
        -2800,
        -1260
      ],
      "size": [
        210,
        50
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 251,
      "mode": 0,
      "inputs": [
        {
          "name": "*",
          "type": "*",
          "link": 46251
        }
      ],
      "outputs": [
        {
          "name": "*",
          "type": "*",
          "links": [
            46252
          ]
        }
      ],
      "title": "Set_RD Post Stop",
      "properties": {
        "Node name for S&R": "SetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "previousName": "RD Post Stop",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.5.2",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "RD Post Stop"
      ],
      "widgets_values_named": {
        "Constant": "RD Post Stop"
      }
    },
    {
      "id": 4810,
      "type": "GetNode",
      "pos": [
        -2980,
        -1380
      ],
      "size": [
        210,
        50
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 62,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "LC_PIPE",
          "type": "LC_PIPE",
          "links": [
            46231
          ]
        }
      ],
      "title": "Get_Pipe",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Pipe"
      ],
      "widgets_values_named": {
        "Constant": "Pipe"
      }
    },
    {
      "id": 4811,
      "type": "LCVRAMCacheClear",
      "pos": [
        -2800,
        -1220
      ],
      "size": [
        270,
        30
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 253,
      "mode": 0,
      "inputs": [
        {
          "name": "any",
          "type": "*",
          "link": 46252
        }
      ],
      "outputs": [
        {
          "name": "any",
          "type": "*",
          "links": []
        }
      ],
      "title": "VRAM Cache Clear",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "d430b9b943d40c536e677cceae67d7a74caf7906",
        "Node name for S&R": "LCVRAMCacheClear",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 4813,
      "type": "LCZImageAnyPaint",
      "pos": [
        -130,
        -3040
      ],
      "size": [
        300,
        830
      ],
      "flags": {
        "pinned": true
      },
      "order": 171,
      "mode": 4,
      "inputs": [
        {
          "name": "model",
          "type": "MODEL",
          "link": 46273
        },
        {
          "name": "clip",
          "type": "CLIP",
          "link": 46274
        },
        {
          "name": "vae",
          "type": "VAE",
          "link": 46275
        },
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46277
        },
        {
          "name": "mask",
          "type": "MASK",
          "link": 46276
        },
        {
          "name": "prompt",
          "type": "STRING",
          "widget": {
            "name": "prompt"
          },
          "link": 46278
        },
        {
          "name": "seed",
          "type": "INT",
          "widget": {
            "name": "seed"
          },
          "link": 46279
        },
        {
          "name": "steps",
          "type": "INT",
          "widget": {
            "name": "steps"
          },
          "link": 46280
        },
        {
          "name": "sampler_name",
          "type": "COMBO",
          "widget": {
            "name": "sampler_name"
          },
          "link": 46281
        },
        {
          "name": "scheduler",
          "type": "COMBO",
          "widget": {
            "name": "scheduler"
          },
          "link": 46282
        },
        {
          "name": "crop_to_mask",
          "type": "BOOLEAN",
          "widget": {
            "name": "crop_to_mask"
          },
          "link": 46283
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            46284,
            46285,
            46286
          ]
        },
        {
          "name": "mask",
          "type": "MASK",
          "links": null
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC_MaskMaker_nodes",
        "ver": "11ee36c6524ae52dda4be31cb37d259384a3ab9e",
        "Node name for S&R": "LCZImageAnyPaint",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "lc_inpaint_meta": [
          {
            "filename": "lc_inpaint_temp_ctpnr_00003_.png",
            "subfolder": "",
            "type": "temp"
          },
          {
            "filename": "lc_inpaint_temp_ctpnr_00004_.png",
            "subfolder": "",
            "type": "temp"
          }
        ],
        "lc_inpaint_note": "painted 1 of 1 image"
      },
      "widgets_values": [
        "",
        "Z-Image-Turbo-Fun-Controlnet-Union-2.1-2602-8steps.safetensors",
        1,
        0,
        "randomize",
        8,
        "euler",
        "simple",
        true,
        128,
        1024,
        32,
        "keep original"
      ],
      "widgets_values_named": {
        "prompt": "",
        "control": "Z-Image-Turbo-Fun-Controlnet-Union-2.1-2602-8steps.safetensors",
        "control_strength": 1,
        "seed": 0,
        "control_after_generate": "randomize",
        "steps": 8,
        "sampler_name": "euler",
        "scheduler": "simple",
        "crop_to_mask": true,
        "padding": 128,
        "inpaint_resolution": 1024,
        "boundary_px": 32,
        "composite": "keep original"
      },
      "color": "#324b4b",
      "bgcolor": "#324b4b"
    },
    {
      "id": 4816,
      "type": "Bookmark (rgthree)",
      "pos": [
        -3550,
        -2110
      ],
      "size": [
        210,
        70
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 63,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "🔖",
      "properties": {
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "1",
        0.7
      ],
      "widgets_values_named": {
        "shortcut_key": "1",
        "zoom": 0.7
      }
    },
    {
      "id": 4817,
      "type": "Bookmark (rgthree)",
      "pos": [
        -3850,
        -3030
      ],
      "size": [
        210,
        70
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 64,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "🔖",
      "properties": {
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "2",
        0.7
      ],
      "widgets_values_named": {
        "shortcut_key": "2",
        "zoom": 0.7
      }
    },
    {
      "id": 4818,
      "type": "Bookmark (rgthree)",
      "pos": [
        -5890,
        -2980
      ],
      "size": [
        210,
        70
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 65,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "🔖",
      "properties": {
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "3",
        0.5
      ],
      "widgets_values_named": {
        "shortcut_key": "3",
        "zoom": 0.5
      }
    },
    {
      "id": 4819,
      "type": "Bookmark (rgthree)",
      "pos": [
        -2540,
        -1150
      ],
      "size": [
        210,
        70
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 66,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "🔖",
      "properties": {
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "4",
        0.8
      ],
      "widgets_values_named": {
        "shortcut_key": "4",
        "zoom": 0.8
      }
    },
    {
      "id": 4820,
      "type": "Bookmark (rgthree)",
      "pos": [
        -3670,
        -380
      ],
      "size": [
        210,
        70
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 67,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "🔖",
      "properties": {
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "5",
        0.5
      ],
      "widgets_values_named": {
        "shortcut_key": "5",
        "zoom": 0.5
      }
    },
    {
      "id": 4850,
      "type": "LCSpeedBoost",
      "pos": [
        -2990,
        -1840
      ],
      "size": [
        370,
        90
      ],
      "flags": {
        "pinned": true
      },
      "order": 195,
      "mode": 0,
      "inputs": [
        {
          "name": "sampler",
          "type": "SAMPLER",
          "link": 46723
        }
      ],
      "outputs": [
        {
          "name": "SAMPLER",
          "type": "SAMPLER",
          "links": [
            46451,
            46725
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "e73bdd3aca64c207c821d188ff17356f0963f205",
        "Node name for S&R": "LCSpeedBoost",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        true,
        4
      ],
      "widgets_values_named": {
        "auto": true,
        "grow_at_step": 4
      },
      "color": "#7d1919",
      "bgcolor": "#7d1919"
    },
    {
      "id": 4851,
      "type": "LCTimer",
      "pos": [
        -3210,
        -1570
      ],
      "size": [
        210,
        370
      ],
      "flags": {
        "pinned": true
      },
      "order": 68,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "e73bdd3aca64c207c821d188ff17356f0963f205",
        "Node name for S&R": "LCTimer",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "lc_runs": [
          {
            "t": 16.46,
            "at": "07:43",
            "ok": false
          },
          {
            "t": 90.22,
            "at": "07:45",
            "ok": true
          },
          {
            "t": 28.72,
            "at": "07:47",
            "ok": false
          },
          {
            "t": 78.53,
            "at": "07:49",
            "ok": false
          },
          {
            "t": 2.16,
            "at": "07:49",
            "ok": false
          },
          {
            "t": 76.97,
            "at": "07:50",
            "ok": true
          },
          {
            "t": 20.25,
            "at": "07:52",
            "ok": false
          },
          {
            "t": 39.12,
            "at": "07:52",
            "ok": false
          },
          {
            "t": 2.04,
            "at": "15:40",
            "ok": true
          },
          {
            "t": 80.82,
            "at": "16:06",
            "ok": true
          },
          {
            "t": 9.93,
            "at": "16:20",
            "ok": false
          },
          {
            "t": 55.28,
            "at": "16:21",
            "ok": false
          },
          {
            "t": 15.71,
            "at": "16:22",
            "ok": false
          },
          {
            "t": 19.08,
            "at": "16:22",
            "ok": false
          },
          {
            "t": 36.22,
            "at": "16:23",
            "ok": false
          },
          {
            "t": 85.95,
            "at": "16:35",
            "ok": true
          },
          {
            "t": 21.78,
            "at": "16:56",
            "ok": false
          },
          {
            "t": 8.61,
            "at": "16:56",
            "ok": false
          },
          {
            "t": 15.79,
            "at": "16:56",
            "ok": false
          },
          {
            "t": 51.08,
            "at": "16:57",
            "ok": true
          }
        ]
      },
      "widgets_values": [
        ""
      ],
      "widgets_values_named": {
        "lc_rt": ""
      },
      "color": "#222",
      "bgcolor": "#000"
    },
    {
      "id": 4852,
      "type": "LCBatchImageComparer",
      "pos": [
        940,
        -2080
      ],
      "size": [
        630,
        880
      ],
      "flags": {
        "pinned": true
      },
      "order": 235,
      "mode": 0,
      "inputs": [
        {
          "label": "Original",
          "name": "image_a",
          "shape": 7,
          "type": "IMAGE",
          "link": 46530
        },
        {
          "label": "Detailed",
          "name": "image_b",
          "shape": 7,
          "type": "IMAGE",
          "link": 46531
        }
      ],
      "outputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "79b81758ac54ba8f9b46ecf7682902e87dc26684",
        "Node name for S&R": "LCBatchImageComparer",
        "comparer_mode": "Slide",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "aux_id": "lonecatone23/ComfyUI_LC123_nodes"
      },
      "color": "#325A5A",
      "bgcolor": "#325A5A"
    },
    {
      "id": 4853,
      "type": "LCNote",
      "pos": [
        650,
        -1340
      ],
      "size": [
        260,
        130
      ],
      "flags": {
        "pinned": true
      },
      "order": 69,
      "mode": 4,
      "inputs": [],
      "outputs": [],
      "title": "Hands 🤲🏼",
      "properties": {
        "lc_note": {
          "source": "en",
          "texts": {
            "en": {
              "text": "**Hands 🤲🏼**\n- for some reason, Krea2 gives me static on hands. I've spent too many hours working on the issue.\n- **You need to prompt for them or do not use this** \"Detailed hands and fingernails\". \"red nail polish\"\n- 💡I only use this when I want jewelry, nail polish,or I keep getting weird fingers from the 🥅controlnet "
            },
            "zh": {
              "text": "**手部 🤲🏼**\n- 不知为何，Krea2 画手会出雪花噪点。我在这个问题上花了太多时间。\n- **你需要在提示词里写手，否则就别用这个**：\"Detailed hands and fingernails\"、\"red nail polish\"\n- 💡我只在想要首饰、指甲油，或者 🥅controlnet 老是给我弄出怪手指的时候才用",
              "src": "8aa8550c",
              "srcTitle": "Hands 🤲🏼"
            },
            "ja": {
              "text": "**手 🤲🏼**\n- なぜか Krea2 は手にノイズ（砂嵐）が出ます。この問題にはかなり時間を溶かしました。\n- **手をプロンプトで指定するか、これを使わないかのどちらかです** 「Detailed hands and fingernails」「red nail polish」\n- 💡 これを使うのは、ジュエリーやネイルを出したいときか、🥅controlnet のせいで指が変になり続けるときだけです",
              "src": "8aa8550c",
              "srcTitle": "Hands 🤲🏼"
            },
            "ko": {
              "text": "**손 🤲🏼**\n- 이유는 모르겠지만 Krea2는 손에 노이즈가 낍니다. 이 문제에 너무 많은 시간을 썼습니다.\n- **프롬프트로 직접 넣어야 하고, 아니면 쓰지 마세요.** \"Detailed hands and fingernails\". \"red nail polish\"\n- 💡저는 주얼리나 네일 폴리시가 필요할 때, 또는 🥅controlnet 때문에 손가락이 계속 이상하게 나올 때만 사용합니다 ",
              "src": "8aa8550c",
              "srcTitle": "Hands 🤲🏼"
            }
          },
          "titles": {
            "en": "Hands 🤲🏼",
            "zh": "手部 🤲🏼",
            "ja": "手 🤲🏼",
            "ko": "손 🤲🏼"
          }
        },
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "English ✏️",
        "**Hands 🤲🏼**\n- for some reason, Krea2 gives me static on hands. I've spent too many hours working on the issue.\n- **You need to prompt for them or do not use this** \"Detailed hands and fingernails\". \"red nail polish\"\n- 💡I only use this when I want jewelry, nail polish,or I keep getting weird fingers from the 🥅controlnet "
      ],
      "widgets_values_named": {
        "language": "English ✏️",
        "text": "**Hands 🤲🏼**\n- for some reason, Krea2 gives me static on hands. I've spent too many hours working on the issue.\n- **You need to prompt for them or do not use this** \"Detailed hands and fingernails\". \"red nail polish\"\n- 💡I only use this when I want jewelry, nail polish,or I keep getting weird fingers from the 🥅controlnet "
      },
      "color": "#2E3A46",
      "bgcolor": "#2E3A46"
    },
    {
      "id": 4854,
      "type": "LCSmartInpaintPipe",
      "pos": [
        340,
        -2040
      ],
      "size": [
        300,
        830
      ],
      "flags": {
        "pinned": true
      },
      "order": 224,
      "mode": 4,
      "inputs": [
        {
          "name": "pipe",
          "type": "LC_PIPE",
          "link": 46532
        },
        {
          "name": "image",
          "shape": 7,
          "type": "IMAGE",
          "link": 46533
        },
        {
          "name": "model",
          "shape": 7,
          "type": "MODEL",
          "link": 46534
        },
        {
          "name": "vae",
          "shape": 7,
          "type": "VAE",
          "link": null
        },
        {
          "name": "positive",
          "shape": 7,
          "type": "CONDITIONING",
          "link": null
        },
        {
          "name": "inpaint_positive",
          "shape": 7,
          "type": "CONDITIONING",
          "link": 46535
        },
        {
          "name": "negative",
          "shape": 7,
          "type": "CONDITIONING",
          "link": null
        },
        {
          "name": "feather",
          "type": "FLOAT",
          "widget": {
            "name": "feather"
          },
          "link": 46536
        },
        {
          "name": "inpaint_resolution",
          "type": "INT",
          "widget": {
            "name": "inpaint_resolution"
          },
          "link": 46537
        },
        {
          "name": "denoise",
          "type": "FLOAT",
          "widget": {
            "name": "denoise"
          },
          "link": 46538
        }
      ],
      "outputs": [
        {
          "name": "pipe",
          "type": "LC_PIPE",
          "links": [
            46569
          ]
        },
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            46531,
            46563,
            46568
          ]
        },
        {
          "name": "mask",
          "type": "MASK",
          "links": [
            46559
          ]
        }
      ],
      "title": "Hand Detailer",
      "properties": {
        "cnr_id": "ComfyUI_LC_MaskMaker_nodes",
        "ver": "7641e153d15b5da332888db1d460fbf5466a7626",
        "Node name for S&R": "LCSmartInpaintPipe",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "lc_inpaint_meta": [
          {
            "filename": "lc_inpaint_temp_uhciv_00009_.png",
            "subfolder": "",
            "type": "temp"
          },
          {
            "filename": "lc_inpaint_temp_uhciv_00010_.png",
            "subfolder": "",
            "type": "temp"
          }
        ],
        "lc_inpaint_note": "1 area inpainted"
      },
      "widgets_values": [
        "hands",
        "sam3.1_multiplex_fp16.safetensors (SAM 3.1, SAM License)",
        0.5,
        4,
        8,
        1,
        120,
        1024,
        0.3,
        true,
        1
      ],
      "widgets_values_named": {
        "prompt": "hands",
        "sam3_model": "sam3.1_multiplex_fp16.safetensors (SAM 3.1, SAM License)",
        "threshold": 0.5,
        "grow": 4,
        "feather": 8,
        "blend": 1,
        "padding": 120,
        "inpaint_resolution": 1024,
        "denoise": 0.3,
        "tone_match": true,
        "cfg": 1
      },
      "color": "#324b4b",
      "bgcolor": "#324b4b"
    },
    {
      "id": 4855,
      "type": "LCSmartInpaintPipe",
      "pos": [
        -270,
        -2040
      ],
      "size": [
        300,
        830
      ],
      "flags": {
        "pinned": true
      },
      "order": 212,
      "mode": 4,
      "inputs": [
        {
          "name": "pipe",
          "type": "LC_PIPE",
          "link": 46539
        },
        {
          "name": "image",
          "shape": 7,
          "type": "IMAGE",
          "link": 46540
        },
        {
          "name": "model",
          "shape": 7,
          "type": "MODEL",
          "link": 46541
        },
        {
          "name": "vae",
          "shape": 7,
          "type": "VAE",
          "link": null
        },
        {
          "name": "positive",
          "shape": 7,
          "type": "CONDITIONING",
          "link": null
        },
        {
          "name": "inpaint_positive",
          "shape": 7,
          "type": "CONDITIONING",
          "link": 46542
        },
        {
          "name": "negative",
          "shape": 7,
          "type": "CONDITIONING",
          "link": null
        },
        {
          "name": "feather",
          "type": "FLOAT",
          "widget": {
            "name": "feather"
          },
          "link": 46543
        },
        {
          "name": "inpaint_resolution",
          "type": "INT",
          "widget": {
            "name": "inpaint_resolution"
          },
          "link": 46544
        },
        {
          "name": "denoise",
          "type": "FLOAT",
          "widget": {
            "name": "denoise"
          },
          "link": 46545
        }
      ],
      "outputs": [
        {
          "name": "pipe",
          "type": "LC_PIPE",
          "links": [
            46532
          ]
        },
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            46533,
            46553
          ]
        },
        {
          "name": "mask",
          "type": "MASK",
          "links": [
            46560
          ]
        }
      ],
      "title": "Eyes Detailer",
      "properties": {
        "cnr_id": "ComfyUI_LC_MaskMaker_nodes",
        "ver": "7641e153d15b5da332888db1d460fbf5466a7626",
        "Node name for S&R": "LCSmartInpaintPipe",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "lc_inpaint_meta": [
          {
            "filename": "lc_inpaint_temp_ircyv_00017_.png",
            "subfolder": "",
            "type": "temp",
            "metadata": {
              "kind": "image",
              "width": 1184,
              "height": 1904
            },
            "id": "7f8153c4-3f41-4a7e-b5d6-2d503585f445"
          },
          {
            "filename": "lc_inpaint_temp_ircyv_00018_.png",
            "subfolder": "",
            "type": "temp",
            "metadata": {
              "kind": "image",
              "width": 1184,
              "height": 1904
            },
            "id": "133e5b02-ae30-48b1-8653-8bea9c48cde4"
          }
        ],
        "lc_inpaint_note": "2 areas inpainted"
      },
      "widgets_values": [
        "Eyes",
        "sam3.1_multiplex_fp16.safetensors (SAM 3.1, SAM License)",
        0.5,
        4,
        8,
        1,
        80,
        1024,
        0.3,
        true,
        1
      ],
      "widgets_values_named": {
        "prompt": "Eyes",
        "sam3_model": "sam3.1_multiplex_fp16.safetensors (SAM 3.1, SAM License)",
        "threshold": 0.5,
        "grow": 4,
        "feather": 8,
        "blend": 1,
        "padding": 80,
        "inpaint_resolution": 1024,
        "denoise": 0.3,
        "tone_match": true,
        "cfg": 1
      },
      "color": "#324b4b",
      "bgcolor": "#324b4b"
    },
    {
      "id": 4856,
      "type": "LCSmartInpaintPipe",
      "pos": [
        -880,
        -2040
      ],
      "size": [
        300,
        830
      ],
      "flags": {
        "pinned": true
      },
      "order": 196,
      "mode": 4,
      "inputs": [
        {
          "name": "pipe",
          "type": "LC_PIPE",
          "link": 46546
        },
        {
          "name": "image",
          "shape": 7,
          "type": "IMAGE",
          "link": 46547
        },
        {
          "name": "model",
          "shape": 7,
          "type": "MODEL",
          "link": 46548
        },
        {
          "name": "vae",
          "shape": 7,
          "type": "VAE",
          "link": null
        },
        {
          "name": "positive",
          "shape": 7,
          "type": "CONDITIONING",
          "link": null
        },
        {
          "name": "inpaint_positive",
          "shape": 7,
          "type": "CONDITIONING",
          "link": 46549
        },
        {
          "name": "negative",
          "shape": 7,
          "type": "CONDITIONING",
          "link": null
        },
        {
          "name": "feather",
          "type": "FLOAT",
          "widget": {
            "name": "feather"
          },
          "link": 46550
        },
        {
          "name": "inpaint_resolution",
          "type": "INT",
          "widget": {
            "name": "inpaint_resolution"
          },
          "link": 46551
        },
        {
          "name": "denoise",
          "type": "FLOAT",
          "widget": {
            "name": "denoise"
          },
          "link": 46552
        }
      ],
      "outputs": [
        {
          "name": "pipe",
          "type": "LC_PIPE",
          "links": [
            46539
          ]
        },
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            46540,
            46554
          ]
        },
        {
          "name": "mask",
          "type": "MASK",
          "links": [
            46561
          ]
        }
      ],
      "title": "Face Detailer",
      "properties": {
        "cnr_id": "ComfyUI_LC_MaskMaker_nodes",
        "ver": "7641e153d15b5da332888db1d460fbf5466a7626",
        "Node name for S&R": "LCSmartInpaintPipe",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "lc_inpaint_meta": [
          {
            "filename": "lc_inpaint_temp_cbauh_00001_.png",
            "subfolder": "",
            "type": "temp",
            "metadata": {
              "kind": "image",
              "width": 1504,
              "height": 1904
            },
            "id": "c60f6a18-f995-4407-a16d-963d2a7fb2ae"
          },
          {
            "filename": "lc_inpaint_temp_cbauh_00002_.png",
            "subfolder": "",
            "type": "temp",
            "metadata": {
              "kind": "image",
              "width": 1504,
              "height": 1904
            },
            "id": "cab5e010-52a9-4cb1-b66e-9bc74b8f12c9"
          }
        ],
        "lc_inpaint_note": "1 area inpainted"
      },
      "widgets_values": [
        "Face\n",
        "sam3.1_multiplex_fp16.safetensors (SAM 3.1, SAM License)",
        0.5,
        4,
        8,
        1,
        120,
        1024,
        0.3,
        true,
        1
      ],
      "widgets_values_named": {
        "prompt": "Face\n",
        "sam3_model": "sam3.1_multiplex_fp16.safetensors (SAM 3.1, SAM License)",
        "threshold": 0.5,
        "grow": 4,
        "feather": 8,
        "blend": 1,
        "padding": 120,
        "inpaint_resolution": 1024,
        "denoise": 0.3,
        "tone_match": true,
        "cfg": 1
      },
      "color": "#324b4b",
      "bgcolor": "#324b4b"
    },
    {
      "id": 4857,
      "type": "LCNote",
      "pos": [
        -1250,
        -1330
      ],
      "size": [
        350,
        130
      ],
      "flags": {
        "pinned": true
      },
      "order": 70,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "**LC Smart Detailer 🩹**",
      "properties": {
        "lc_note": {
          "source": "en",
          "texts": {
            "en": {
              "text": "**LC Smart Detailer 🩹**\n- Finds the face with SAM 3, redraws it at full detail, and blends it back in.\n- Runs **before** the upscale, on the small picture, where it is fast and sees the whole face.\n- **prompt:** \"Face\". Add **:1** (`Face:1`) for only the biggest face.\n- **threshold:** 0.5. Lower finds more (and more wrong things).\n- **grow:** 4 - 8. **feather:** 8 - 12.\n- **padding:** 64 - 128. More = the model sees more of the scene around the face.\n- **inpaint_resolution:** 1024.\n- **denoise:** 0.3 - 0.35. Higher starts adding blotches and freckles, then redraws a different face.\n- **blend:** 1. Want a lighter touch? Lower the denoise, not the blend.\n- **cfg:** 1. **tone_match:** on.\n- **inpaint_positive:** leave it empty, the main prompt is used.\n- ⚠️ Do not use \"detailed realistic skin\". In Krea 2 that means \"Hey! Make giant pores and blotches!!\"\n"
            },
            "zh": {
              "text": "**LC Smart Detailer 🩹**\n- 用 SAM 3 找到人脸，以完整细节重绘，再混合回去。\n- 在放大**之前**、在小图上运行，这样速度快，也能看到完整的脸。\n- **prompt：**\"Face\"。加上 **:1**（`Face:1`）则只处理最大的那张脸。\n- **threshold：**0.5。调低能找到更多（也包括更多错误的东西）。\n- **grow：**4 - 8。**feather：**8 - 12。\n- **padding：**64 - 128。越大，模型看到的脸周围场景越多。\n- **inpaint_resolution：**1024。\n- **denoise：**0.3 - 0.35。更高就会开始出现斑点和雀斑，然后重绘成另一张脸。\n- **blend：**1。想要更轻的效果？调低 denoise，不要调 blend。\n- **cfg：**1。**tone_match：**开。\n- **inpaint_positive：**留空，会使用主提示词。\n- ⚠️ 不要用 \"detailed realistic skin\"。在 Krea 2 里它的意思是\"嘿！给我来巨大的毛孔和斑块！！\"\n\n",
              "src": "8ee8276f",
              "srcTitle": "**LC Smart Detailer 🩹**"
            },
            "ja": {
              "text": "**LC Smart Detailer 🩹**\n- SAM 3 で顔を見つけ、フルディテールで描き直して、元に戻してブレンドします。\n- アップスケールの**前**、小さい画像の段階で実行します。速く、顔全体も見えるからです。\n- **prompt:** \"Face\"。一番大きい顔だけにするなら **:1** を付けます(`Face:1`)。\n- **threshold:** 0.5。下げるとたくさん見つかります(間違いも増えます)。\n- **grow:** 4 - 8。**feather:** 8 - 12。\n- **padding:** 64 - 128。大きいほど、顔の周りのシーンがモデルに多く見えます。\n- **inpaint_resolution:** 1024。\n- **denoise:** 0.3 - 0.35。これより高いと、まだらやそばかすが出始め、そのうち別の顔に描き直されます。\n- **blend:** 1。控えめにしたい? blend ではなく denoise を下げてください。\n- **cfg:** 1。**tone_match:** オン。\n- **inpaint_positive:** 空のままにしてください。メインのプロンプトが使われます。\n- ⚠️ \"detailed realistic skin\" は使わないでください。Krea 2 では「ねえ! 巨大な毛穴とまだらを作って!!」という意味になります。\n",
              "src": "8ee8276f",
              "srcTitle": "**LC Smart Detailer 🩹**"
            },
            "ko": {
              "text": "**LC Smart Detailer 🩹**\n- SAM 3로 얼굴을 찾아서 최대 디테일로 다시 그린 뒤 자연스럽게 합성합니다.\n- 업스케일 **전**, 작은 이미지에서 실행됩니다. 그래서 빠르고 얼굴 전체가 한눈에 들어옵니다.\n- **prompt:** \"Face\". 가장 큰 얼굴 하나만 잡으려면 **:1**을 붙이세요 (`Face:1`).\n- **threshold:** 0.5. 낮추면 더 많이 찾지만 엉뚱한 것도 같이 잡힙니다.\n- **grow:** 4 - 8. **feather:** 8 - 12.\n- **padding:** 64 - 128. 클수록 모델이 얼굴 주변 장면을 더 많이 봅니다.\n- **inpaint_resolution:** 1024.\n- **denoise:** 0.3 - 0.35. 이보다 높으면 얼룩과 주근깨가 생기기 시작하고, 결국 다른 얼굴로 다시 그립니다.\n- **blend:** 1. 약하게 적용하고 싶다면 blend가 아니라 denoise를 낮추세요.\n- **cfg:** 1. **tone_match:** 켜기.\n- **inpaint_positive:** 비워 두세요. 메인 프롬프트가 사용됩니다.\n- ⚠️ \"detailed realistic skin\"은 쓰지 마세요. Krea 2에서는 \"이봐! 거대한 모공과 얼룩을 만들어!!\"라는 뜻이 됩니다.",
              "src": "8ee8276f",
              "srcTitle": "**LC Smart Detailer 🩹**"
            }
          },
          "titles": {
            "en": "**LC Smart Detailer 🩹**",
            "zh": "**LC Smart Detailer 🩹**",
            "ja": "**LC Smart Detailer 🩹**",
            "ko": "**LC Smart Detailer 🩹**"
          }
        },
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "English ✏️",
        "**LC Smart Detailer 🩹**\n- Finds the face with SAM 3, redraws it at full detail, and blends it back in.\n- Runs **before** the upscale, on the small picture, where it is fast and sees the whole face.\n- **prompt:** \"Face\". Add **:1** (`Face:1`) for only the biggest face.\n- **threshold:** 0.5. Lower finds more (and more wrong things).\n- **grow:** 4 - 8. **feather:** 8 - 12.\n- **padding:** 64 - 128. More = the model sees more of the scene around the face.\n- **inpaint_resolution:** 1024.\n- **denoise:** 0.3 - 0.35. Higher starts adding blotches and freckles, then redraws a different face.\n- **blend:** 1. Want a lighter touch? Lower the denoise, not the blend.\n- **cfg:** 1. **tone_match:** on.\n- **inpaint_positive:** leave it empty, the main prompt is used.\n- ⚠️ Do not use \"detailed realistic skin\". In Krea 2 that means \"Hey! Make giant pores and blotches!!\"\n"
      ],
      "widgets_values_named": {
        "language": "English ✏️",
        "text": "**LC Smart Detailer 🩹**\n- Finds the face with SAM 3, redraws it at full detail, and blends it back in.\n- Runs **before** the upscale, on the small picture, where it is fast and sees the whole face.\n- **prompt:** \"Face\". Add **:1** (`Face:1`) for only the biggest face.\n- **threshold:** 0.5. Lower finds more (and more wrong things).\n- **grow:** 4 - 8. **feather:** 8 - 12.\n- **padding:** 64 - 128. More = the model sees more of the scene around the face.\n- **inpaint_resolution:** 1024.\n- **denoise:** 0.3 - 0.35. Higher starts adding blotches and freckles, then redraws a different face.\n- **blend:** 1. Want a lighter touch? Lower the denoise, not the blend.\n- **cfg:** 1. **tone_match:** on.\n- **inpaint_positive:** leave it empty, the main prompt is used.\n- ⚠️ Do not use \"detailed realistic skin\". In Krea 2 that means \"Hey! Make giant pores and blotches!!\"\n"
      },
      "color": "#2E3A46",
      "bgcolor": "#2E3A46"
    },
    {
      "id": 4858,
      "type": "LCVRAMCacheClear",
      "pos": [
        40,
        -1310
      ],
      "size": [
        270,
        30
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 225,
      "mode": 4,
      "inputs": [
        {
          "name": "any",
          "type": "*",
          "link": 46553
        }
      ],
      "outputs": [
        {
          "name": "any",
          "type": "*",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "79b81758ac54ba8f9b46ecf7682902e87dc26684",
        "Node name for S&R": "LCVRAMCacheClear",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "aux_id": "lonecatone23/ComfyUI_LC123_nodes"
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 4859,
      "type": "LCVRAMCacheClear",
      "pos": [
        -570,
        -1300
      ],
      "size": [
        270,
        30
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 213,
      "mode": 4,
      "inputs": [
        {
          "name": "any",
          "type": "*",
          "link": 46554
        }
      ],
      "outputs": [
        {
          "name": "any",
          "type": "*",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "79b81758ac54ba8f9b46ecf7682902e87dc26684",
        "Node name for S&R": "LCVRAMCacheClear",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "aux_id": "lonecatone23/ComfyUI_LC123_nodes"
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 4860,
      "type": "LCPromptToConditioning",
      "pos": [
        40,
        -1350
      ],
      "size": [
        270,
        50
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 174,
      "mode": 4,
      "inputs": [
        {
          "name": "clip",
          "type": "CLIP",
          "link": 46555
        },
        {
          "name": "string",
          "type": "STRING",
          "link": 46556
        }
      ],
      "outputs": [
        {
          "name": "conditioning",
          "type": "CONDITIONING",
          "links": [
            46542
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "15206a8304eabe2ed43416bd6afb68c0b4661d82",
        "Node name for S&R": "LCPromptToConditioning",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 4861,
      "type": "LCPromptToConditioning",
      "pos": [
        -570,
        -1340
      ],
      "size": [
        270,
        50
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 175,
      "mode": 4,
      "inputs": [
        {
          "name": "clip",
          "type": "CLIP",
          "link": 46557
        },
        {
          "name": "string",
          "type": "STRING",
          "link": 46558
        }
      ],
      "outputs": [
        {
          "name": "conditioning",
          "type": "CONDITIONING",
          "links": [
            46549
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "15206a8304eabe2ed43416bd6afb68c0b4661d82",
        "Node name for S&R": "LCPromptToConditioning",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 4862,
      "type": "LCPreviewMask",
      "pos": [
        650,
        -1770
      ],
      "size": [
        260,
        310
      ],
      "flags": {
        "pinned": true
      },
      "order": 238,
      "mode": 4,
      "inputs": [
        {
          "name": "mask",
          "shape": 7,
          "type": "MASK",
          "link": 46559
        }
      ],
      "outputs": [
        {
          "name": "mask",
          "type": "MASK",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "763eb8a37a9f2f8cfb1a22e7d7cb3122aa483dee",
        "Node name for S&R": "LCPreviewMask",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        ""
      ],
      "widgets_values_named": {
        "lc_preview": ""
      },
      "color": "#222",
      "bgcolor": "#000"
    },
    {
      "id": 4863,
      "type": "LCPreviewMask",
      "pos": [
        40,
        -1700
      ],
      "size": [
        260,
        310
      ],
      "flags": {
        "pinned": true
      },
      "order": 226,
      "mode": 4,
      "inputs": [
        {
          "name": "mask",
          "shape": 7,
          "type": "MASK",
          "link": 46560
        }
      ],
      "outputs": [
        {
          "name": "mask",
          "type": "MASK",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "763eb8a37a9f2f8cfb1a22e7d7cb3122aa483dee",
        "Node name for S&R": "LCPreviewMask",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        ""
      ],
      "widgets_values_named": {
        "lc_preview": ""
      },
      "color": "#222",
      "bgcolor": "#000"
    },
    {
      "id": 4864,
      "type": "LCPreviewMask",
      "pos": [
        -570,
        -1700
      ],
      "size": [
        260,
        320
      ],
      "flags": {
        "pinned": true
      },
      "order": 214,
      "mode": 4,
      "inputs": [
        {
          "name": "mask",
          "shape": 7,
          "type": "MASK",
          "link": 46561
        }
      ],
      "outputs": [
        {
          "name": "mask",
          "type": "MASK",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "763eb8a37a9f2f8cfb1a22e7d7cb3122aa483dee",
        "Node name for S&R": "LCPreviewMask",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        ""
      ],
      "widgets_values_named": {
        "lc_preview": ""
      },
      "color": "#222",
      "bgcolor": "#000"
    },
    {
      "id": 4865,
      "type": "GetNode",
      "pos": [
        -1250,
        -1450
      ],
      "size": [
        210,
        40
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 71,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "*",
          "type": "*",
          "links": [
            46530,
            46547,
            46564
          ]
        }
      ],
      "title": "Get_Anypaint image",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Anypaint image"
      ],
      "widgets_values_named": {
        "Constant": "Anypaint image"
      }
    },
    {
      "id": 4866,
      "type": "LCDetailPipeOut",
      "pos": [
        -1080,
        -1410
      ],
      "size": [
        200,
        290
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 130,
      "mode": 0,
      "inputs": [
        {
          "label": "pipe",
          "name": "pipe",
          "type": "LC_PIPE",
          "link": 46562
        }
      ],
      "outputs": [
        {
          "name": "pipe",
          "type": "LC_PIPE",
          "links": []
        },
        {
          "name": "Model 1",
          "type": "MODEL",
          "links": [
            46570
          ]
        },
        {
          "name": "Clip 1",
          "type": "CLIP",
          "links": [
            46571
          ]
        },
        {
          "name": "VAE 1",
          "type": "VAE",
          "links": []
        },
        {
          "name": "Positive prompt",
          "type": "STRING",
          "links": []
        },
        {
          "name": "Positive conditioning",
          "type": "CONDITIONING",
          "links": []
        },
        {
          "name": "Negative prompt",
          "type": "STRING",
          "links": []
        },
        {
          "name": "Negative conditioning",
          "type": "CONDITIONING",
          "links": []
        },
        {
          "name": "Seed",
          "type": "INT",
          "links": []
        },
        {
          "name": "cfg_1",
          "type": "FLOAT",
          "links": []
        },
        {
          "name": "sampler_name",
          "type": "COMBO",
          "links": []
        },
        {
          "name": "scheduler",
          "type": "COMBO",
          "links": []
        },
        {
          "name": "detailer_steps",
          "type": "INT",
          "links": []
        },
        {
          "name": "protect_mask",
          "type": "MASK",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "79b81758ac54ba8f9b46ecf7682902e87dc26684",
        "Node name for S&R": "LCDetailPipeOut",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "aux_id": "lonecatone23/ComfyUI_LC123_nodes"
      },
      "color": "#707070",
      "bgcolor": "#707070"
    },
    {
      "id": 4867,
      "type": "GetNode",
      "pos": [
        -1050,
        -1450
      ],
      "size": [
        210,
        40
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 72,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "LC_PIPE",
          "type": "LC_PIPE",
          "links": [
            46546,
            46562
          ]
        }
      ],
      "title": "Get_Pipe",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Pipe"
      ],
      "widgets_values_named": {
        "Constant": "Pipe"
      }
    },
    {
      "id": 4868,
      "type": "LCAnySwitch",
      "pos": [
        -1240,
        -1410
      ],
      "size": [
        330,
        120
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 236,
      "mode": 0,
      "inputs": [
        {
          "label": "IMAGE",
          "name": "any_01",
          "shape": 7,
          "type": "IMAGE",
          "link": 46563
        },
        {
          "label": "*",
          "name": "any_02",
          "shape": 7,
          "type": "*",
          "link": 46564
        }
      ],
      "outputs": [
        {
          "label": "IMAGE",
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            46565
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "9d36e550d8701d07974f1282df5fe26548b3a9f3",
        "Node name for S&R": "LCAnySwitch",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {
            "any_01": true,
            "any_02": true,
            "any_03": true,
            "any_04": true,
            "any_05": true,
            "any_06": true,
            "any_07": true,
            "any_08": true,
            "any_09": true,
            "any_10": true,
            "any_11": true,
            "any_12": true,
            "any_13": true,
            "any_14": true,
            "any_15": true,
            "any_16": true,
            "any_17": true,
            "any_18": true,
            "any_19": true,
            "any_20": true
          },
          "send_to_any": 0,
          "apply_to_unrepeated": 0,
          "version": "7.8"
        },
        "lc_w": 330,
        "lc_h": 120
      },
      "widgets_values": [
        2
      ],
      "widgets_values_named": {
        "inputcount": 2
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 4869,
      "type": "SetNode",
      "pos": [
        -1250,
        -1370
      ],
      "size": [
        210,
        40
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 245,
      "mode": 0,
      "inputs": [
        {
          "name": "*",
          "type": "*",
          "link": 46565
        }
      ],
      "outputs": [
        {
          "name": "*",
          "type": "*",
          "links": []
        }
      ],
      "title": "Set_detail image",
      "properties": {
        "Node name for S&R": "SetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "previousName": "detail image",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.5.1",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "detail image"
      ],
      "widgets_values_named": {
        "Constant": "detail image"
      }
    },
    {
      "id": 4870,
      "type": "LCPromptToConditioning",
      "pos": [
        650,
        -1420
      ],
      "size": [
        270,
        50
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 176,
      "mode": 4,
      "inputs": [
        {
          "name": "clip",
          "type": "CLIP",
          "link": 46566
        },
        {
          "name": "string",
          "type": "STRING",
          "link": 46567
        }
      ],
      "outputs": [
        {
          "name": "conditioning",
          "type": "CONDITIONING",
          "links": [
            46535
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "15206a8304eabe2ed43416bd6afb68c0b4661d82",
        "Node name for S&R": "LCPromptToConditioning",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 4871,
      "type": "LCVRAMCacheClear",
      "pos": [
        650,
        -1380
      ],
      "size": [
        270,
        30
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 237,
      "mode": 4,
      "inputs": [
        {
          "name": "any",
          "type": "*",
          "link": 46568
        }
      ],
      "outputs": [
        {
          "name": "any",
          "type": "*",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "79b81758ac54ba8f9b46ecf7682902e87dc26684",
        "Node name for S&R": "LCVRAMCacheClear",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "aux_id": "lonecatone23/ComfyUI_LC123_nodes"
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 4872,
      "type": "SetNode",
      "pos": [
        -1070,
        -1370
      ],
      "size": [
        210,
        40
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 234,
      "mode": 0,
      "inputs": [
        {
          "name": "LC_PIPE",
          "type": "LC_PIPE",
          "link": 46569
        }
      ],
      "outputs": [
        {
          "name": "LC_PIPE",
          "type": "LC_PIPE",
          "links": []
        }
      ],
      "title": "Set_Detailer Pipe",
      "properties": {
        "Node name for S&R": "SetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "previousName": "Detailer Pipe",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Detailer Pipe"
      ],
      "widgets_values_named": {
        "Constant": "Detailer Pipe"
      }
    },
    {
      "id": 4873,
      "type": "LCLoraLoader",
      "pos": [
        -1250,
        -1830
      ],
      "size": [
        350,
        210
      ],
      "flags": {
        "pinned": true
      },
      "order": 151,
      "mode": 0,
      "inputs": [
        {
          "name": "model",
          "shape": 7,
          "type": "MODEL",
          "link": 46570
        },
        {
          "name": "clip",
          "shape": 7,
          "type": "CLIP",
          "link": 46571
        }
      ],
      "outputs": [
        {
          "name": "model",
          "type": "MODEL",
          "links": [
            46572
          ]
        },
        {
          "name": "clip",
          "type": "CLIP",
          "links": [
            46555,
            46557,
            46566
          ]
        }
      ],
      "title": "character or detailer LoRA (optional)",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "b63c1e08d90fb1fa8d6d080a57170516e52f2385",
        "Node name for S&R": "LCLoraLoader",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "[]",
        ""
      ],
      "widgets_values_named": {
        "lora_rows": "[]",
        "lc_lora_face": ""
      },
      "color": "#6e5032",
      "bgcolor": "#6e5032"
    },
    {
      "id": 4874,
      "type": "ModelSamplingAuraFlow",
      "pos": [
        -1250,
        -1580
      ],
      "size": [
        350,
        90
      ],
      "flags": {
        "collapsed": false,
        "pinned": true
      },
      "order": 173,
      "mode": 0,
      "inputs": [
        {
          "name": "model",
          "type": "MODEL",
          "link": 46572
        }
      ],
      "outputs": [
        {
          "name": "MODEL",
          "type": "MODEL",
          "links": [
            46534,
            46541,
            46548
          ]
        }
      ],
      "title": "ModelSamplingAuraFloFromProgressive",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.24.0",
        "Node name for S&R": "ModelSamplingAuraFlow",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        1,
        "flow"
      ],
      "widgets_values_named": {
        "shift": 1,
        "sampling": "flow"
      },
      "color": "#223",
      "bgcolor": "#335"
    },
    {
      "id": 4875,
      "type": "LCPositive",
      "pos": [
        -570,
        -1930
      ],
      "size": [
        260,
        190
      ],
      "flags": {
        "pinned": true
      },
      "order": 73,
      "mode": 4,
      "inputs": [],
      "outputs": [
        {
          "name": "positive",
          "type": "STRING",
          "links": [
            46558
          ]
        }
      ],
      "title": "Detailer Positive",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "15206a8304eabe2ed43416bd6afb68c0b4661d82",
        "Node name for S&R": "LCPositive",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        ""
      ],
      "widgets_values_named": {
        "positive": ""
      },
      "color": "#326432",
      "bgcolor": "#326432"
    },
    {
      "id": 4876,
      "type": "LCPositive",
      "pos": [
        40,
        -1930
      ],
      "size": [
        260,
        190
      ],
      "flags": {
        "pinned": true
      },
      "order": 74,
      "mode": 4,
      "inputs": [],
      "outputs": [
        {
          "name": "positive",
          "type": "STRING",
          "links": [
            46556
          ]
        }
      ],
      "title": "Detailer Positive",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "15206a8304eabe2ed43416bd6afb68c0b4661d82",
        "Node name for S&R": "LCPositive",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        ""
      ],
      "widgets_values_named": {
        "positive": ""
      },
      "color": "#326432",
      "bgcolor": "#326432"
    },
    {
      "id": 4877,
      "type": "LCPositive",
      "pos": [
        650,
        -1930
      ],
      "size": [
        260,
        120
      ],
      "flags": {
        "pinned": true
      },
      "order": 75,
      "mode": 4,
      "inputs": [],
      "outputs": [
        {
          "name": "positive",
          "type": "STRING",
          "links": [
            46567
          ]
        }
      ],
      "title": "Detailer Positive",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "15206a8304eabe2ed43416bd6afb68c0b4661d82",
        "Node name for S&R": "LCPositive",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "detailed hands and fingernails"
      ],
      "widgets_values_named": {
        "positive": "detailed hands and fingernails"
      },
      "color": "#326432",
      "bgcolor": "#326432"
    },
    {
      "id": 4878,
      "type": "LCSlider",
      "pos": [
        -1250,
        -1910
      ],
      "size": [
        350,
        32
      ],
      "flags": {
        "pinned": true
      },
      "order": 76,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "label": " ",
          "name": "*",
          "type": "*",
          "links": [
            46537,
            46544,
            46551
          ]
        }
      ],
      "title": "Inpaint Resolution",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "15206a8304eabe2ed43416bd6afb68c0b4661d82",
        "Node name for S&R": "LCSlider",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "min": 480,
        "max": 2048,
        "step": 16,
        "decimals": 0
      },
      "widgets_values": [
        928,
        480,
        2048,
        16,
        0,
        ""
      ],
      "widgets_values_named": {
        "value": 928,
        "min": 480,
        "max": 2048,
        "step": 16,
        "decimals": 0,
        "lc123_face": ""
      },
      "color": "#aa5f46",
      "bgcolor": "#964b32"
    },
    {
      "id": 4879,
      "type": "Fast Groups Bypasser (rgthree)",
      "pos": [
        -1250,
        -2080
      ],
      "size": [
        350,
        130
      ],
      "flags": {
        "pinned": true
      },
      "order": 77,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "label": "put here to save time",
          "name": "OPT_CONNECTION",
          "type": "*",
          "links": []
        }
      ],
      "title": "pssst....over here 🤫",
      "properties": {
        "matchColors": "",
        "matchTitle": "::",
        "showNav": false,
        "showAllGraphs": false,
        "sort": "position",
        "customSortAlphabet": "",
        "toggleRestriction": "default",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65
      },
      "color": "#c3782d",
      "bgcolor": "#af6419"
    },
    {
      "id": 4880,
      "type": "LCControlPanel",
      "pos": [
        40,
        -2040
      ],
      "size": [
        260,
        70
      ],
      "flags": {
        "pinned": true
      },
      "order": 78,
      "mode": 4,
      "inputs": [],
      "outputs": [
        {
          "label": " ",
          "name": "value_1",
          "type": "*",
          "links": [
            46543
          ]
        },
        {
          "label": " ",
          "name": "value_2",
          "type": "*",
          "links": [
            46545
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "845a2b692a1a623f42579b69c3a0978c28df90cd",
        "Node name for S&R": "LCControlPanel",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "lc_rows": [
          {
            "name": "feather",
            "value": 9,
            "min": 0,
            "max": 20,
            "step": 1,
            "decimals": 0,
            "auto": false
          },
          {
            "name": "denoise",
            "value": 0.2,
            "min": 0.1,
            "max": 1,
            "step": 0.05,
            "decimals": 2,
            "auto": false
          }
        ]
      },
      "widgets_values": [
        "[{\"name\":\"feather\",\"value\":9,\"min\":0,\"max\":20,\"step\":1,\"decimals\":0,\"cast\":\"FLOAT\"},{\"name\":\"denoise\",\"value\":0.2,\"min\":0.1,\"max\":1,\"step\":0.05,\"decimals\":2,\"cast\":\"FLOAT\"}]",
        ""
      ],
      "widgets_values_named": {
        "rows": "[{\"name\":\"feather\",\"value\":9,\"min\":0,\"max\":20,\"step\":1,\"decimals\":0,\"cast\":\"FLOAT\"},{\"name\":\"denoise\",\"value\":0.2,\"min\":0.1,\"max\":1,\"step\":0.05,\"decimals\":2,\"cast\":\"FLOAT\"}]",
        "lc_cp_face": ""
      },
      "color": "#432",
      "bgcolor": "#653"
    },
    {
      "id": 4881,
      "type": "LCControlPanel",
      "pos": [
        -570,
        -2040
      ],
      "size": [
        260,
        70
      ],
      "flags": {
        "collapsed": false,
        "pinned": true
      },
      "order": 79,
      "mode": 4,
      "inputs": [],
      "outputs": [
        {
          "label": " ",
          "name": "value_1",
          "type": "*",
          "links": [
            46550
          ]
        },
        {
          "label": " ",
          "name": "value_2",
          "type": "*",
          "links": [
            46552
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "845a2b692a1a623f42579b69c3a0978c28df90cd",
        "Node name for S&R": "LCControlPanel",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "lc_rows": [
          {
            "name": "feather",
            "value": 14,
            "min": 0,
            "max": 20,
            "step": 1,
            "decimals": 0,
            "auto": false
          },
          {
            "name": "denoise",
            "value": 0.3,
            "min": 0.1,
            "max": 1,
            "step": 0.05,
            "decimals": 2,
            "auto": false
          }
        ]
      },
      "widgets_values": [
        "[{\"name\":\"feather\",\"value\":14,\"min\":0,\"max\":20,\"step\":1,\"decimals\":0,\"cast\":\"FLOAT\"},{\"name\":\"denoise\",\"value\":0.3,\"min\":0.1,\"max\":1,\"step\":0.05,\"decimals\":2,\"cast\":\"FLOAT\"}]",
        ""
      ],
      "widgets_values_named": {
        "rows": "[{\"name\":\"feather\",\"value\":14,\"min\":0,\"max\":20,\"step\":1,\"decimals\":0,\"cast\":\"FLOAT\"},{\"name\":\"denoise\",\"value\":0.3,\"min\":0.1,\"max\":1,\"step\":0.05,\"decimals\":2,\"cast\":\"FLOAT\"}]",
        "lc_cp_face": ""
      },
      "color": "#432",
      "bgcolor": "#653"
    },
    {
      "id": 4882,
      "type": "LCControlPanel",
      "pos": [
        650,
        -2040
      ],
      "size": [
        260,
        70
      ],
      "flags": {
        "pinned": true
      },
      "order": 80,
      "mode": 4,
      "inputs": [],
      "outputs": [
        {
          "label": " ",
          "name": "value_1",
          "type": "*",
          "links": [
            46536
          ]
        },
        {
          "label": " ",
          "name": "value_2",
          "type": "*",
          "links": [
            46538
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "845a2b692a1a623f42579b69c3a0978c28df90cd",
        "Node name for S&R": "LCControlPanel",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "lc_rows": [
          {
            "name": "feather",
            "value": 20,
            "min": 0,
            "max": 20,
            "step": 1,
            "decimals": 0,
            "auto": false
          },
          {
            "name": "denoise",
            "value": 0.15,
            "min": 0.1,
            "max": 1,
            "step": 0.05,
            "decimals": 2,
            "auto": false
          }
        ]
      },
      "widgets_values": [
        "[{\"name\":\"feather\",\"value\":20,\"min\":0,\"max\":20,\"step\":1,\"decimals\":0,\"cast\":\"FLOAT\"},{\"name\":\"denoise\",\"value\":0.15,\"min\":0.1,\"max\":1,\"step\":0.05,\"decimals\":2,\"cast\":\"FLOAT\"}]",
        ""
      ],
      "widgets_values_named": {
        "rows": "[{\"name\":\"feather\",\"value\":20,\"min\":0,\"max\":20,\"step\":1,\"decimals\":0,\"cast\":\"FLOAT\"},{\"name\":\"denoise\",\"value\":0.15,\"min\":0.1,\"max\":1,\"step\":0.05,\"decimals\":2,\"cast\":\"FLOAT\"}]",
        "lc_cp_face": ""
      },
      "color": "#432",
      "bgcolor": "#653"
    },
    {
      "id": 4883,
      "type": "LCLabel",
      "pos": [
        -790,
        -2110
      ],
      "size": [
        508,
        23
      ],
      "flags": {
        "pinned": true
      },
      "order": 81,
      "mode": 4,
      "inputs": [],
      "outputs": [],
      "properties": {
        "text": "If you use 🥅 Controlnet, then I highly suggest you use the face detailer. ",
        "font": "Arial",
        "size": 13,
        "bold": true,
        "italic": false,
        "color": "#ffffff",
        "align": "center",
        "outline": false,
        "outlineColor": "#000000",
        "outlineWidth": 4,
        "shadow": false,
        "shadowBlur": 10,
        "bg": false,
        "bgColor": "#324B4B",
        "radius": 12,
        "padding": 8,
        "angle": 0,
        "width": 508,
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "763eb8a37a9f2f8cfb1a22e7d7cb3122aa483dee",
        "Node name for S&R": "LCLabel",
        "_w": 508,
        "_h": 23,
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#fff0",
      "bgcolor": "#fff0"
    },
    {
      "id": 4914,
      "type": "LC Bypasser Panel",
      "pos": [
        2020,
        720
      ],
      "size": [
        310,
        558
      ],
      "flags": {
        "pinned": true
      },
      "order": 269,
      "mode": 0,
      "inputs": [
        {
          "name": "hub",
          "type": "*",
          "link": 46648
        }
      ],
      "outputs": [
        {
          "name": "OPT_CONNECTION",
          "type": "*",
          "links": []
        }
      ],
      "title": "Option Bypass",
      "properties": {
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        false,
        false,
        false,
        false,
        true,
        false,
        false,
        true,
        true,
        true,
        false,
        false,
        false,
        false,
        true,
        false,
        true,
        true,
        false,
        false,
        true
      ],
      "widgets_values_named": {
        "Enable 1": false,
        "Enable 2": false,
        "Enable 3": false,
        "Enable 4": false,
        "Enable 5": true,
        "Enable 6": false,
        "Enable 7": false,
        "Enable 8": true,
        "Enable 9": true,
        "Enable 10": true,
        "Enable 11": false,
        "Enable 12": false,
        "Enable 13": false,
        "Enable 14": false,
        "Enable 15": true,
        "Enable 16": false,
        "Enable 17": true,
        "Enable 18": true,
        "Enable 19": false,
        "Enable 20": false,
        "Enable 21": true
      },
      "color": "#c3782d",
      "bgcolor": "#af6419"
    },
    {
      "id": 4915,
      "type": "LCGetImage",
      "pos": [
        1700,
        700
      ],
      "size": [
        300,
        130
      ],
      "flags": {
        "pinned": true
      },
      "order": 264,
      "mode": 0,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46649
        }
      ],
      "outputs": [
        {
          "name": "megapixels",
          "type": "FLOAT",
          "links": []
        },
        {
          "name": "width",
          "type": "INT",
          "links": []
        },
        {
          "name": "height",
          "type": "INT",
          "links": []
        },
        {
          "name": "resolution",
          "type": "INT",
          "links": []
        },
        {
          "name": "batch",
          "type": "INT",
          "links": []
        },
        {
          "name": "aspect ratio",
          "type": "STRING",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "4ac98869e5f9ef0a5382ec86d105271257c09267",
        "Node name for S&R": "LCGetImage",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "aux_id": "lonecatone23/ComfyUI_LC123_nodes"
      },
      "color": "#324b4b",
      "bgcolor": "#324b4b"
    },
    {
      "id": 4916,
      "type": "LoadImage",
      "pos": [
        1700,
        910
      ],
      "size": [
        300,
        360
      ],
      "flags": {
        "collapsed": false,
        "pinned": true
      },
      "order": 82,
      "mode": 4,
      "inputs": [],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            46652,
            46654
          ]
        },
        {
          "name": "MASK",
          "type": "MASK",
          "links": [
            46655
          ]
        }
      ],
      "title": "Load watermark",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.31.0",
        "Node name for S&R": "LoadImage",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "Logo no background_00001_.png",
        "image"
      ],
      "widgets_values_named": {
        "image": "Logo no background_00001_.png",
        "upload": "image"
      },
      "color": "#233",
      "bgcolor": "#355"
    },
    {
      "id": 4917,
      "type": "LCNotify",
      "pos": [
        1700,
        510
      ],
      "size": [
        300,
        130
      ],
      "flags": {
        "pinned": true
      },
      "order": 265,
      "mode": 0,
      "inputs": [
        {
          "name": "any",
          "shape": 7,
          "type": "*",
          "link": 46650
        }
      ],
      "outputs": [
        {
          "name": "any",
          "type": "*",
          "links": [
            47321
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "59eb00aa296704f5fd1a8b38f6913ac625a6ea74",
        "Node name for S&R": "LCNotify",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "always",
        1,
        "oh-yeah.mp3",
        null
      ],
      "widgets_values_named": {
        "mode": "always",
        "volume": 1,
        "file": "oh-yeah.mp3",
        "▶ preview": null
      },
      "color": "#649632",
      "bgcolor": "#649632"
    },
    {
      "id": 4918,
      "type": "LCBypassRelay",
      "pos": [
        1700,
        870
      ],
      "size": [
        240,
        100
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 266,
      "mode": 4,
      "inputs": [
        {
          "name": "any_1",
          "shape": 7,
          "type": "*",
          "link": 46651
        },
        {
          "name": "any_2",
          "type": "*",
          "link": 46652
        },
        {
          "name": "any_3",
          "type": "*",
          "link": null
        }
      ],
      "outputs": [
        {
          "name": "OPT_CONNECTION",
          "type": "*",
          "links": [
            47320
          ]
        }
      ],
      "title": "LC Watermark 💧",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "f3de87a62fff1c820509450e9dcba8fedffacbbc",
        "Node name for S&R": "LCBypassRelay",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 4919,
      "type": "LCWatermark",
      "pos": [
        1390,
        690
      ],
      "size": [
        300,
        580
      ],
      "flags": {
        "pinned": true
      },
      "order": 263,
      "mode": 4,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46653
        },
        {
          "name": "watermark",
          "shape": 7,
          "type": "IMAGE",
          "link": 46654
        },
        {
          "name": "watermark_mask",
          "shape": 7,
          "type": "MASK",
          "link": 46655
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            46649,
            46650,
            46651,
            46677
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "4ac98869e5f9ef0a5382ec86d105271257c09267",
        "Node name for S&R": "LCWatermark",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "aux_id": "lonecatone23/ComfyUI_LC123_nodes",
        "lc_wm_meta": [
          {
            "filename": "lc_wm_temp_dtpsz_00001_.png",
            "subfolder": "",
            "type": "temp"
          }
        ],
        "lc_before_meta": [
          {
            "filename": "lc_before_temp_dtpsz_00001_.png",
            "subfolder": "",
            "type": "temp"
          }
        ]
      },
      "widgets_values": [
        20,
        0.85,
        100,
        89.8,
        0.5
      ],
      "widgets_values_named": {
        "size_percent": 20,
        "opacity": 0.85,
        "x_percent": 100,
        "y_percent": 89.8,
        "margin_percent": 0.5
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 4920,
      "type": "LCNote",
      "pos": [
        1390,
        500
      ],
      "size": [
        300,
        150
      ],
      "flags": {
        "pinned": true
      },
      "order": 83,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "LC Notify 🔊",
      "properties": {
        "lc_note": {
          "source": "en",
          "texts": {
            "en": {
              "text": "**LC Notify 🔊**\n- hook to any node outlet.\n- plays a selected sound upon completion\n- select from a list of preloaded sounds or place your own in the folder shown below\n\n\n\n```\n📂 ComfyUI/\n│── 📂 custom_nodes\n│   ├── 📂 ComfyUI_LC123_nodes\n│   │      └── 📂 assets\n│   │             └──📂 sounds\n│   │                   └── any .mp3 sound\n```"
            },
            "zh": {
              "text": "**LC Notify 🔊**\n- 接到任意节点的输出口上。\n- 完成时播放你选的提示音\n- 可以从预置音效列表里选，也可以把自己的音效放进下面这个文件夹\n\n\n\n```\n📂 ComfyUI/\n│── 📂 custom_nodes\n│   ├── 📂 ComfyUI_LC123_nodes\n│   │      └── 📂 assets\n│   │             └──📂 sounds\n│   │                   └── any .mp3 sound\n```",
              "src": "ebb74184",
              "srcTitle": "LC Notify 🔊"
            },
            "ja": {
              "text": "**LC Notify 🔊**\n- 任意のノードの出力に接続します。\n- 完了時に選択したサウンドを鳴らします\n- 用意されたサウンドから選ぶか、下に示すフォルダに自分のサウンドを置いてください\n\n\n\n```\n📂 ComfyUI/\n│── 📂 custom_nodes\n│   ├── 📂 ComfyUI_LC123_nodes\n│   │      └── 📂 assets\n│   │             └──📂 sounds\n│   │                   └── any .mp3 sound\n```\n",
              "src": "ebb74184",
              "srcTitle": "LC Notify 🔊"
            },
            "ko": {
              "text": "**LC Notify 🔊**\n- 아무 노드의 출력에 연결하세요.\n- 완료되면 선택한 소리를 재생합니다\n- 미리 들어 있는 소리 중에서 고르거나, 아래 폴더에 직접 소리를 넣으세요\n\n\n\n```\n📂 ComfyUI/\n│── 📂 custom_nodes\n│   ├── 📂 ComfyUI_LC123_nodes\n│   │      └── 📂 assets\n│   │             └──📂 sounds\n│   │                   └── any .mp3 sound\n```",
              "src": "ebb74184",
              "srcTitle": "LC Notify 🔊"
            }
          },
          "titles": {
            "en": "LC Notify 🔊",
            "zh": "LC Notify 🔊",
            "ja": "LC Notify 🔊",
            "ko": "LC Notify 🔊"
          }
        },
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "English ✏️",
        "**LC Notify 🔊**\n- hook to any node outlet.\n- plays a selected sound upon completion\n- select from a list of preloaded sounds or place your own in the folder shown below\n\n\n\n```\n📂 ComfyUI/\n│── 📂 custom_nodes\n│   ├── 📂 ComfyUI_LC123_nodes\n│   │      └── 📂 assets\n│   │             └──📂 sounds\n│   │                   └── any .mp3 sound\n```"
      ],
      "widgets_values_named": {
        "language": "English ✏️",
        "text": "**LC Notify 🔊**\n- hook to any node outlet.\n- plays a selected sound upon completion\n- select from a list of preloaded sounds or place your own in the folder shown below\n\n\n\n```\n📂 ComfyUI/\n│── 📂 custom_nodes\n│   ├── 📂 ComfyUI_LC123_nodes\n│   │      └── 📂 assets\n│   │             └──📂 sounds\n│   │                   └── any .mp3 sound\n```"
      },
      "color": "#2E3A46",
      "bgcolor": "#2E3A46"
    },
    {
      "id": 4921,
      "type": "LCFilmStockBW",
      "pos": [
        1390,
        -160
      ],
      "size": [
        300,
        560
      ],
      "flags": {
        "pinned": true
      },
      "order": 255,
      "mode": 4,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46656
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            46657,
            46691
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "4ac98869e5f9ef0a5382ec86d105271257c09267",
        "Node name for S&R": "LCFilmStockBW",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "aux_id": "lonecatone23/ComfyUI_LC123_nodes",
        "lc_preview_meta": [
          {
            "filename": "lc_after_temp_xjzld_00001_.png",
            "subfolder": "",
            "type": "temp"
          }
        ],
        "lc_before_meta": [
          {
            "filename": "lc_before_temp_xjzld_00001_.png",
            "subfolder": "",
            "type": "temp"
          }
        ]
      },
      "widgets_values": [
        "Fuji Acros 100",
        "None",
        1,
        0,
        0,
        "Custom"
      ],
      "widgets_values_named": {
        "film_stock": "Fuji Acros 100",
        "color_filter": "None",
        "strength": 1,
        "contrast": 0,
        "exposure_shift": 0,
        "look": "Custom"
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 4922,
      "type": "LCFilmStockColor",
      "pos": [
        1700,
        -160
      ],
      "size": [
        300,
        560
      ],
      "flags": {
        "pinned": true
      },
      "order": 256,
      "mode": 4,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46657
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            46661,
            46692
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "4ac98869e5f9ef0a5382ec86d105271257c09267",
        "Node name for S&R": "LCFilmStockColor",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "aux_id": "lonecatone23/ComfyUI_LC123_nodes",
        "lc_preview_meta": [
          {
            "filename": "lc_after_temp_oczqj_00001_.png",
            "subfolder": "",
            "type": "temp"
          }
        ],
        "lc_before_meta": [
          {
            "filename": "lc_before_temp_oczqj_00001_.png",
            "subfolder": "",
            "type": "temp"
          }
        ]
      },
      "widgets_values": [
        "Slide / Kodak Ektachrome E100",
        0.8,
        -1,
        -1,
        -1,
        "Custom"
      ],
      "widgets_values_named": {
        "film_stock": "Slide / Kodak Ektachrome E100",
        "strength": 0.8,
        "override_toe": -1,
        "override_shoulder": -1,
        "override_gamma": -1,
        "look": "Custom"
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 4923,
      "type": "LCTextOverlay",
      "pos": [
        1080,
        630
      ],
      "size": [
        300,
        640
      ],
      "flags": {
        "pinned": true
      },
      "order": 262,
      "mode": 4,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46658
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            46653,
            47319
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "4ac98869e5f9ef0a5382ec86d105271257c09267",
        "Node name for S&R": "LCTextOverlay",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "aux_id": "lonecatone23/ComfyUI_LC123_nodes",
        "lc_overlay_text": "Hello",
        "lc_preview_meta": [
          {
            "filename": "lc_before_temp_zhjhy_00005_.png",
            "subfolder": "",
            "type": "temp"
          }
        ]
      },
      "widgets_values": [
        "Hello",
        "Arial",
        64,
        255,
        255,
        255,
        85.8,
        15.5,
        "center"
      ],
      "widgets_values_named": {
        "text": "Hello",
        "font": "Arial",
        "font_size": 64,
        "color_r": 255,
        "color_g": 255,
        "color_b": 255,
        "x_percent": 85.8,
        "y_percent": 15.5,
        "alignment": "center"
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 4924,
      "type": "LCVignette",
      "pos": [
        1080,
        -230
      ],
      "size": [
        300,
        630
      ],
      "flags": {
        "pinned": true
      },
      "order": 254,
      "mode": 4,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46659
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            46656,
            46690
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "e9d2dedffd1fe374dbdb674461628dbdaecb8926",
        "Node name for S&R": "LCVignette",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "lc_preview_meta": [
          {
            "filename": "lc_after_temp_nmzhy_00001_.png",
            "subfolder": "",
            "type": "temp"
          }
        ],
        "lc_before_meta": [
          {
            "filename": "lc_before_temp_nmzhy_00001_.png",
            "subfolder": "",
            "type": "temp"
          }
        ]
      },
      "widgets_values": [
        0.25,
        0.55,
        0.8,
        0.35,
        true,
        1,
        1,
        1.05,
        "Custom"
      ],
      "widgets_values_named": {
        "intensity": 0.25,
        "midpoint": 0.55,
        "roundness": 0.8,
        "feather": 0.35,
        "cos4_falloff": true,
        "tint_r": 1,
        "tint_g": 1,
        "tint_b": 1.05,
        "look": "Custom"
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 4925,
      "type": "LCBloom",
      "pos": [
        770,
        -200
      ],
      "size": [
        300,
        600
      ],
      "flags": {
        "pinned": true
      },
      "order": 252,
      "mode": 0,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46660
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            46659,
            46689
          ]
        }
      ],
      "title": "LC Bloom · Halation ⬅️",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "5e17279ba425b994aa8e657426e45f1a752f1e6a",
        "Node name for S&R": "LCBloom",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        },
        "aux_id": "lonecatone23/ComfyUI_LC123_nodes",
        "lc_preview_meta": [
          {
            "filename": "lc_after_temp_aolml_00005_.png",
            "subfolder": "",
            "type": "temp",
            "metadata": {
              "kind": "image",
              "width": 3008,
              "height": 3808
            },
            "id": "56181837-bbfc-4fe5-b90b-8c3919a681c8"
          }
        ],
        "lc_before_meta": [
          {
            "filename": "lc_before_temp_aolml_00005_.png",
            "subfolder": "",
            "type": "temp",
            "metadata": {
              "kind": "image",
              "width": 3008,
              "height": 3808
            },
            "id": "d2daff93-68e1-422d-b4cc-76d0cb60fc18"
          }
        ]
      },
      "widgets_values": [
        0.2,
        0.8,
        0.3,
        1,
        0.7,
        0.95,
        "Halation",
        "Custom"
      ],
      "widgets_values_named": {
        "intensity": 0.2,
        "threshold": 0.8,
        "smoothing": 0.3,
        "radius": 1,
        "saturation": 0.7,
        "exposure": 0.95,
        "mode": "Halation",
        "look": "Custom"
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 4926,
      "type": "LCNaturalLook",
      "pos": [
        460,
        780
      ],
      "size": [
        300,
        490
      ],
      "flags": {
        "pinned": true
      },
      "order": 260,
      "mode": 0,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46664
        },
        {
          "name": "seed",
          "type": "INT",
          "widget": {
            "name": "seed"
          },
          "link": 46662
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            46697,
            46703
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "15206a8304eabe2ed43416bd6afb68c0b4661d82",
        "Node name for S&R": "LCNaturalLook",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "lc_preview_meta": [
          {
            "filename": "lc_after_temp_gplme_00005_.png",
            "subfolder": "",
            "type": "temp",
            "metadata": {
              "kind": "image",
              "width": 3008,
              "height": 3808
            },
            "id": "c431ec8f-ab23-4381-bf28-33ea03176a03"
          }
        ],
        "lc_before_meta": [
          {
            "filename": "lc_before_temp_gplme_00005_.png",
            "subfolder": "",
            "type": "temp",
            "metadata": {
              "kind": "image",
              "width": 3008,
              "height": 3808
            },
            "id": "f587b11d-d108-4378-a749-4e9828fe63d8"
          }
        ]
      },
      "widgets_values": [
        0.5,
        0.75,
        566033351,
        "randomize"
      ],
      "widgets_values_named": {
        "strength": 0.5,
        "skin": 0.75,
        "seed": 566033351,
        "control_after_generate": "randomize"
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 4927,
      "type": "LCLabel",
      "pos": [
        480,
        700
      ],
      "size": [
        253,
        45
      ],
      "flags": {
        "pinned": true
      },
      "order": 84,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "properties": {
        "text": "This is BETA. 👇🏼",
        "font": "Ink Free",
        "size": 32,
        "bold": true,
        "italic": false,
        "color": "#ffffff",
        "align": "center",
        "outline": false,
        "outlineColor": "#000000",
        "outlineWidth": 4,
        "shadow": false,
        "shadowBlur": 10,
        "bg": false,
        "bgColor": "#324B4B",
        "radius": 12,
        "padding": 8,
        "angle": 0,
        "width": 0,
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "f2ded4b7be8ee0c12a17de035e25f352bdc8fbf4",
        "Node name for S&R": "LCLabel",
        "_w": 253,
        "_h": 45,
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#fff0",
      "bgcolor": "#fff0"
    },
    {
      "id": 4928,
      "type": "LCNote",
      "pos": [
        460,
        500
      ],
      "size": [
        300,
        200
      ],
      "flags": {
        "pinned": true
      },
      "order": 85,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "LC Natural Look 🍃",
      "properties": {
        "lc_note": {
          "source": "en",
          "texts": {
            "en": {
              "text": "**LC Natural Look 🍃**\n- Takes the AI look out without making the picture dull.\n- Pulls back only the loudest colours, calms orange and plastic skin, rolls the highlights off instead of clipping them, and cuts the glossy glow while lifting fine texture.\n- Your black point, contrast and brightness stay where they were, with a whisper of grain on top.\n- Goes **last** in post, after the LUT, so the grain sits on top of everything.\n- **strength:** 0.3 - 0.6 for most renders.\n- **skin:** how much orange / plastic skin is calmed, on top of strength. 0 = skin untouched."
            },
            "zh": {
              "text": "**LC Natural Look 🍃**\n- 去掉 AI 味，又不会让画面变灰变闷。\n- 只收敛最刺眼的颜色，压住偏橙和塑料感的皮肤，高光柔和滚降而不是直接裁切，去掉油亮的光晕同时提升细微纹理。\n- 你的黑点、对比度和亮度保持原样，顶上再加一点点颗粒。\n- 在后期里放**最后**，放在 LUT 之后，这样颗粒会盖在所有东西之上。\n- **strength:** 大多数渲染用 0.3 - 0.6。\n- **skin:** 在 strength 之外，额外压制多少偏橙 / 塑料感的皮肤。0 = 皮肤不动。\n",
              "src": "f7402ad0",
              "srcTitle": "LC Natural Look 🍃"
            },
            "ja": {
              "text": "**LC Natural Look 🍃**\n- 絵を味気なくせずに、AI っぽさだけを取り除きます。\n- 一番主張の強い色だけを引き戻し、オレンジ色やプラスチックっぽい肌を落ち着かせ、ハイライトはクリップせずなだらかに落とし、テカテカした輝きを抑えつつ細かいテクスチャを持ち上げます。\n- 黒レベル、コントラスト、明るさはそのままで、上にほんのりグレインを乗せます。\n- ポストの**最後**、LUT の後に置きます。グレインが全体の上に乗ります。\n- **strength:** たいていの出力では 0.3 - 0.6 です。\n- **skin:** strength に加えて、オレンジ/プラスチックっぽい肌をどれだけ落ち着かせるかを決めます。0 = 肌はそのままです。",
              "src": "f7402ad0",
              "srcTitle": "LC Natural Look 🍃"
            },
            "ko": {
              "text": "**LC Natural Look 🍃**\n- 이미지를 밋밋하게 만들지 않으면서 AI 티를 빼줘요.\n- 가장 튀는 색만 덜어내고, 주황빛과 플라스틱 같은 피부를 가라앉히고, 하이라이트는 잘라내지 않고 부드럽게 굴려 주며, 번들거리는 광택은 줄이고 잔 텍스처는 살려요.\n- 블랙 포인트, 대비, 밝기는 그대로 유지하고, 위에 살짝 그레인을 얹어요.\n- 후처리에서 LUT 다음, **맨 마지막**에 넣어서 그레인이 모든 것 위에 얹히게 하세요.\n- **strength:** 대부분 0.3 - 0.6.\n- **skin:** strength에 더해, 주황빛/플라스틱 피부를 얼마나 가라앉힐지. 0 = 피부는 건드리지 않아요.\n",
              "src": "f7402ad0",
              "srcTitle": "LC Natural Look 🍃"
            }
          },
          "titles": {
            "en": "LC Natural Look 🍃",
            "zh": "LC Natural Look 🍃",
            "ja": "LC Natural Look 🍃",
            "ko": "LC Natural Look 🍃"
          }
        },
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "English ✏️",
        "**LC Natural Look 🍃**\n- Takes the AI look out without making the picture dull.\n- Pulls back only the loudest colours, calms orange and plastic skin, rolls the highlights off instead of clipping them, and cuts the glossy glow while lifting fine texture.\n- Your black point, contrast and brightness stay where they were, with a whisper of grain on top.\n- Goes **last** in post, after the LUT, so the grain sits on top of everything.\n- **strength:** 0.3 - 0.6 for most renders.\n- **skin:** how much orange / plastic skin is calmed, on top of strength. 0 = skin untouched."
      ],
      "widgets_values_named": {
        "language": "English ✏️",
        "text": "**LC Natural Look 🍃**\n- Takes the AI look out without making the picture dull.\n- Pulls back only the loudest colours, calms orange and plastic skin, rolls the highlights off instead of clipping them, and cuts the glossy glow while lifting fine texture.\n- Your black point, contrast and brightness stay where they were, with a whisper of grain on top.\n- Goes **last** in post, after the LUT, so the grain sits on top of everything.\n- **strength:** 0.3 - 0.6 for most renders.\n- **skin:** how much orange / plastic skin is calmed, on top of strength. 0 = skin untouched."
      },
      "color": "#2E3A46",
      "bgcolor": "#2E3A46"
    },
    {
      "id": 4929,
      "type": "LCLensProfile",
      "pos": [
        460,
        -120
      ],
      "size": [
        300,
        520
      ],
      "flags": {
        "pinned": true
      },
      "order": 249,
      "mode": 0,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46663
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            46660,
            46688
          ]
        }
      ],
      "title": "LC Lens Profile ⬅️",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "4ac98869e5f9ef0a5382ec86d105271257c09267",
        "Node name for S&R": "LCLensProfile",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "aux_id": "lonecatone23/ComfyUI_LC123_nodes",
        "lc_preview_meta": [
          {
            "filename": "lc_after_temp_nhyzp_00005_.png",
            "subfolder": "",
            "type": "temp",
            "metadata": {
              "kind": "image",
              "width": 3008,
              "height": 3808
            },
            "id": "b2844dd6-1eaf-4abb-95fb-ff5bd873e912"
          }
        ],
        "lc_before_meta": [
          {
            "filename": "lc_before_temp_nhyzp_00005_.png",
            "subfolder": "",
            "type": "temp",
            "metadata": {
              "kind": "image",
              "width": 3008,
              "height": 3808
            },
            "id": "91b6251b-ecbb-49e2-8dbf-8f4f13e034da"
          }
        ]
      },
      "widgets_values": [
        "Sony FE 55mm f/1.8",
        "Add Aberrations",
        0.35,
        "Custom"
      ],
      "widgets_values_named": {
        "lens": "Sony FE 55mm f/1.8",
        "mode": "Add Aberrations",
        "strength": 0.35,
        "look": "Custom"
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 4930,
      "type": "LCFilmGrain",
      "pos": [
        770,
        660
      ],
      "size": [
        300,
        610
      ],
      "flags": {
        "pinned": true
      },
      "order": 261,
      "mode": 0,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46703
        },
        {
          "name": "seed",
          "type": "INT",
          "widget": {
            "name": "seed"
          },
          "link": 46665
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            46658,
            47318
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "4ac98869e5f9ef0a5382ec86d105271257c09267",
        "Node name for S&R": "LCFilmGrain",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "aux_id": "lonecatone23/ComfyUI_LC123_nodes",
        "lc_preview_meta": [
          {
            "filename": "lc_after_temp_bkzat_00005_.png",
            "subfolder": "",
            "type": "temp",
            "metadata": {
              "kind": "image",
              "width": 3008,
              "height": 3808
            },
            "id": "e6dd1cf6-5872-45b3-ae82-6402ce0df87c"
          }
        ],
        "lc_before_meta": [
          {
            "filename": "lc_before_temp_bkzat_00005_.png",
            "subfolder": "",
            "type": "temp",
            "metadata": {
              "kind": "image",
              "width": 3008,
              "height": 3808
            },
            "id": "43b0690d-825b-456d-a6b7-a12325994884"
          }
        ]
      },
      "widgets_values": [
        1.2,
        0.22,
        0.1,
        0.2,
        8675309,
        "randomize",
        0.8,
        "Custom",
        "sensor"
      ],
      "widgets_values_named": {
        "grain_size": 1.2,
        "strength": 0.22,
        "radius_variation": 0.1,
        "color_grain": 0.2,
        "seed": 8675309,
        "control_after_generate": "randomize",
        "softness": 0.8,
        "look": "Custom",
        "response": "sensor"
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 4931,
      "type": "LCLabel",
      "pos": [
        480,
        -230
      ],
      "size": [
        263,
        40
      ],
      "flags": {
        "pinned": true
      },
      "order": 86,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "properties": {
        "text": "👈   Optical     👇    Realism  👉\nplus LC Depth FX 🌫️ above",
        "font": "Arial",
        "size": 14,
        "bold": true,
        "italic": false,
        "color": "#ffffff",
        "align": "center",
        "outline": false,
        "outlineColor": "#000000",
        "outlineWidth": 4,
        "shadow": false,
        "shadowBlur": 10,
        "bg": false,
        "bgColor": "#324B4B",
        "radius": 12,
        "padding": 8,
        "angle": 0,
        "width": 264,
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "bd066e50788a61ab27f082d865cf7d9662041bc4",
        "Node name for S&R": "LCLabel",
        "_w": 263,
        "_h": 40,
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#fff0",
      "bgcolor": "#fff0"
    },
    {
      "id": 4932,
      "type": "LCDepthFX",
      "pos": [
        1080,
        -1030
      ],
      "size": [
        300,
        710
      ],
      "flags": {
        "pinned": true
      },
      "order": 215,
      "mode": 0,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46666
        },
        {
          "name": "depth_map",
          "type": "IMAGE",
          "link": 46667
        },
        {
          "name": "focus_mask",
          "shape": 7,
          "type": "MASK",
          "link": null
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            46679,
            46702
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "5e17279ba425b994aa8e657426e45f1a752f1e6a",
        "Node name for S&R": "LCDepthFX",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        },
        "aux_id": "lonecatone23/ComfyUI_LC123_nodes",
        "lc_preview_meta": [
          {
            "filename": "lc_after_temp_snxri_00005_.png",
            "subfolder": "",
            "type": "temp",
            "metadata": {
              "kind": "image",
              "width": 3008,
              "height": 3808
            },
            "id": "b9eda1ee-0b0b-427a-b5b4-ac1aa74b6c96"
          }
        ],
        "lc_before_meta": [
          {
            "filename": "lc_before_temp_snxri_00005_.png",
            "subfolder": "",
            "type": "temp",
            "metadata": {
              "kind": "image",
              "width": 3008,
              "height": 3808
            },
            "id": "3faf7f1e-7955-4bb9-8055-1ebc8509865b"
          }
        ]
      },
      "widgets_values": [
        "Natural",
        0.08,
        0.5,
        0,
        0.2,
        0.2,
        0.15,
        0.4,
        true,
        0.32,
        "Auto"
      ],
      "widgets_values_named": {
        "look": "Natural",
        "haze": 0.08,
        "haze_distance": 0.5,
        "haze_warmth": 0,
        "light_wrap": 0.2,
        "dof_blur": 0.2,
        "focus_range": 0.15,
        "bokeh": 0.4,
        "auto_focus": true,
        "focus_depth": 0.32,
        "depth_direction": "Auto"
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 4933,
      "type": "LCNote",
      "pos": [
        1400,
        -1070
      ],
      "size": [
        930,
        760
      ],
      "flags": {
        "pinned": true
      },
      "order": 87,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "🎨 Post Processing Suite",
      "properties": {
        "lc_note": {
          "source": "en",
          "texts": {
            "en": {
              "text": "### 🛑🚫✋ I highly suggest fixing the seed then making changes here. Change anything upstream and the whole picture runs again.\n\n\n- Every node has a before/after wipe on it. Drag it to compare.\n- VRAM issues? See the **LC123 Performance Settings ⚙️** note.\n\n---\n## The Look 👀\n\n- 💡 **LC Depth FX, Bloom, Lens Profile, Vignette, Film Stock** and **Film Grain** share the same looks (Natural, Portrait, Cinematic, Golden hour, Vintage, Dreamy, Landscape, Night, B&W). Pick the same one on each and they match. Moving a slider switches it to Custom.\n   - **LC Sharpen Pro** should be used sparingly when trying to achieve realism. It shares some of the same qualities, but is not tied into this set.\n\n---\n\n## 🎯 Correct, 🔪 Sharpen, 🌫️ Depth\n\n**LC Image Crop 🖼️🔪**\n- Crop the picture: drag the box and its handles on the node.\n- First, so everything after it (depth, vignette, grain) lands on your final framing.\n- **aspect:** lock the shape (free, original or a common ratio).\n\n**LC Color Match 🎨**\n- Pulls the colors back to the original loaded image after the lighting pass.\n- **method:** oklab matches all the colors together, the way the eye sees them. adain is the old method.\n- **strength:** 0 = original, 1 = fully matched.\n- **skin_protect:** keeps faces from shifting hue. 0 = off, 1 = full.\n\n**LC Auto White Balance**\n- Takes out the overall color cast. Handy when you want to flatten the color.\n- **method:** Shades of Gray is usually the safest.\n- **strength:** 0 = original, 1 = full correction.\n- 💡 Off most of the time.\n\n**LC Sharpen Pro 🔪**\n- Sharpens without drawing outlines. It works on brightness only, so colors do not fringe.\n- Before the depth blur, never after.\n- **preset:** Natural for photos. Lineart / Anime sharp / Illustration for art. Moving any slider switches it to Custom.\n- **sharpen:** 0 = off.\n- **texture:** mid-size detail: pores, fabric, fur. 0 = off.\n- **clarity:** large-scale punch and depth. 0 = off.\n- **strength:** mix with the original. 0 = original, 1 = full effect.\n- **halo:** 1 = no bright or dark rims around the edges.\n- **skin_protect:** less sharpening on skin, so pores do not turn into pits. 0 for anime and lineart.\n\n**LC Depth Anything V2 🗺️**\n- Makes the depth map that Depth FX needs. It only runs when Depth FX is on.\n\n**LC Depth FX 🌫️**\n- Camera effects that need to know what is near and what is far.\n- **haze:** how thick the air is. Distant areas fade toward the haze color. 0.06 - 0.16 for people, more only for wide landscapes. 0 = off.\n- **light_wrap:** bright background light bleeds over the subject's edges. Kills the cut-out sticker look. 0 = off.\n- **dof_blur:** depth of field. How blurry things get away from the focus. 0 = off.\n- **focus_range:** how much stays sharp around the focus. Low = razor thin (like f/1.4), high = deep (like f/8).\n- **bokeh:** bright out-of-focus lights turn into glowing discs. 0 = plain blur.\n- **auto_focus:** focuses on the main subject in the middle of the frame. Off = set **focus_depth** yourself (0 = nearest, 1 = farthest).\n- **depth_direction:** leave it on Auto unless the effects land on the wrong part of the picture.\n- 💡 If you want to **REALLY** dial it in, hook up an **LC Person Mask 🧍** to the *focus_mask* input.\n   - That would be crazy 🤔\n\n---\n\n## 📷 Camera, Lens, & 🎞️ Film Adjustments\n\n**LC Lift Gamma Gain**\n- A color grade by brightness range: **lift** = shadows, **gamma** = midtones, **gain** = highlights. **offset** moves all of them.\n- **strength:** 0 = original, 1 = the full grade.\n- 💡 Most of the film-look color work happens here.\n\n**LC Vibrance**\n- **vibrance:** boosts muted colors without frying the ones that are already saturated.\n- **saturation:** plain saturation, no protection.\n- **protect_skin:** less effect on skin tones. Kinder to skin than plain saturation.\n- 💡 Leave it off for realism. A flat saturation cut drains the faces.\n\n**LC Bloom** (Pro-Mist)\n- A glow from the bright parts of the picture.\n- **mode:**\n    - **Bloom:** glow from the bright areas.\n    - **Pro-Mist:** a diffusion filter in front of the lens. Soft glow, gentler contrast, the blacks stay deep.\n    - **Halation:** see LC Bloom · Halation below.\n- **intensity:** how strong the glow is.\n- **threshold:** only what is brighter than this glows. Lower = more of the picture glows.\n- **radius:** how far the glow spreads.\n- **saturation:** 0 = white glow, 1 = the light's own color.\n- 💡 A little is dreamy. A lot is fog.\n\n**LC Lens Profile**\n- The character of a real lens (Canon 50mm f/1.8, Helios 44-2, Sony FE 55mm, etc.): its distortion, color fringing and vignette.\n- **mode:** Add Aberrations adds the character. Correct Aberrations tries to take it out.\n- **strength:** how much lens character.\n\n**LC Bloom · Halation**\n- The same Bloom node, set to Halation: the red-orange glow film gets around bright edges. Not a pink wash.\n\n**LC Vignette**\n- Darkens (or brightens) the edges.\n- **intensity:** 0.1 - 0.25 = a real lens. 1 - 2 with **cos4_falloff** off = an old photo, up to black corners. Negative = brighter edges.\n- **midpoint:** where the darkening starts. Lower = closer to the middle.\n- **feather:** how soft the edge is. Low = a hard oval, high = a long gentle fade.\n- **cos4_falloff:** on = real lens light falloff. Off = a printed, old-photo vignette.\n\n**LC Film Stock (B&W)**\n- Real black and white film response: Ilford HP5, Kodak Tri-X, Fuji Acros, etc.\n- **color_filter:** the colored glass a B&W photographer screws on. Red darkens skies and smooths skin, green darkens lips and lifts foliage, etc.\n- 💡 Leave it off if you want color.\n\n**LC Film Stock (Color)**\n- Real color film: Portra, Gold, Superia, Cinestill 800T, Velvia, Ektachrome, etc.\n- **strength:** 💡 0.6 to 0.9 often looks more natural than full.\n\n---\n\n## 🎨 Post Production Filters\n\n**LC Directional Blur**\n- Motion blur along one angle. Drag the arrow on the node: its direction is the angle, how far you drag is the length.\n- **strength:** too much? Turn this down, not the distance.\n- **taps:** low (2 - 8) = a stepped double exposure look, high (64+) = a smooth streak.\n\n**LC Apply LUT**\n- A color grade from a `.cube` file.\n- **strength:** 0 = original, 1 = the full LUT. 0.2 to 0.4 is usually plenty for realism. Full strength is a sledgehammer.\n- **log:** leave it off unless the LUT was made for log footage (the name typically says so).\n- Get free ones [Here](https://freshluts.com/)\n- Drop your `.cube` files here:\n```\nComfyUI/\n└── models/\n    └── luts/\n        ├── your_look.cube\n        ├── film_emulation.cube\n        └── ...\n```\n\n**LC Phone Filters 📱**\n- 37 phone-app looks (1977, Aden, Brooklyn, Xpro2, etc.). Basically Instagram filters.\n- **strength:** 0 = Original\n\n**LC Natural Look 🍃**\n- Takes the AI look out: calms loud colors and orange, plastic skin, rolls the highlights off instead of clipping them, cuts the glossy glow and lifts fine texture.\n- Your black point, contrast and brightness stay where they were.\n- **strength:** how much of the AI look comes out. 0.4 - 0.75 for most renders. **0.5** is the tested realism setting.\n- **skin:** how much orange / plastic skin is calmed, on top of strength. 0 = skin untouched. **0.75** tested best.\n\n**LC Film Grain**\n- Grain on the finished picture. It is the last effect, so nothing after it mistakes the grain for detail.\n- **response:** where the grain shows.\n    - **classic:** mostly the midtones (the old look).\n    - **film:** strongest in the shadows and midtones, gone in the highlights, like a negative.\n    - **sensor:** phone and digital camera noise. Grows with the light, shows most in the shadows, and blue is the noisiest. The realism pick.\n- **strength:** how much grain. A little goes a long way. **0.22** is the tested realism setting.\n- **grain_size:** how big each grain is. Scales with the picture size.\n- **color_grain:** 0 = mono grain, 1 = color speckle. **0.2** for realism.\n- The seed comes from the workflow, so the grain stays the same from run to run.\n\n**LC Text Overlay**\n- Text on the final picture. Drag it on the preview to place it.\n- **font, font_size, color_r / g / b, alignment:** set them on the node, the preview updates live.\n\n**LC Watermark 💧**\n- Any image as a watermark. Drag it on the preview to place it.\n- **size_percent:** its width as a % of the picture. **opacity:** 0 - 1.\n- 💡 Using a transparent PNG? Wire Load Image's **MASK** into **watermark_mask** so the see-through parts stay see-through.\n\n---\n\n*\"True Nothing is. Permitted Everything is\"*- Yoda Auditore, **Assassin's Wars**\n"
            },
            "zh": {
              "text": "### 🛑🚫✋ 我强烈建议先固定 seed，再在这里改设置。上游改了任何东西，整张图都会重新跑。\n\n\n- 每个节点上都有前后对比滑条。拖动它来比较。\n- 显存有问题？看 **LC123 Performance Settings ⚙️** 说明。\n\n---\n## 风格 Look 👀\n\n- 💡 **LC Depth FX、Bloom、Lens Profile、Vignette、Film Stock** 和 **Film Grain** 共用同一组风格（Natural、Portrait、Cinematic、Golden hour、Vintage、Dreamy、Landscape、Night、B&W）。每个节点选同一个，它们就能统一。动任何滑块都会切到 Custom。\n   - 追求写实时，**LC Sharpen Pro** 要少用。它有一些相同的特性，但不属于这一组。\n\n---\n\n## 🎯 校正、🔪 锐化、🌫️ 景深\n\n**LC Image Crop 🖼️🔪**\n- 裁切画面：在节点上拖动裁切框和它的手柄。\n- 放第一个，这样后面所有东西（景深、暗角、颗粒）都落在你最终的构图上。\n- **aspect：** 锁定形状（free、original 或常见比例）。\n\n**LC Color Match 🎨**\n- 在打光之后，把颜色拉回到原始载入的图片。\n- **method：** oklab 把所有颜色放在一起匹配，按人眼看颜色的方式。adain 是旧方法。\n- **strength：** 0 = 原图，1 = 完全匹配。\n- **skin_protect：** 防止脸部色相跑偏。0 = 关闭，1 = 完全。\n\n**LC Auto White Balance**\n- 去掉整体偏色。想让颜色平一点时很好用。\n- **method：** Shades of Gray 通常最稳妥。\n- **strength：** 0 = 原图，1 = 完全校正。\n- 💡 大部分时候都关着。\n\n**LC Sharpen Pro 🔪**\n- 锐化，但不描轮廓线。只作用于亮度，所以颜色不会出彩边。\n- 放在景深模糊之前，绝不放在之后。\n- **preset：** 照片用 Natural。画作用 Lineart / Anime sharp / Illustration。动任何滑块都会切到 Custom。\n- **sharpen：** 0 = 关闭。\n- **texture：** 中等尺度的细节：毛孔、布料、毛发。0 = 关闭。\n- **clarity：** 大尺度的冲击力和层次感。0 = 关闭。\n- **strength：** 和原图混合。0 = 原图，1 = 完整效果。\n- **halo：** 1 = 边缘没有亮边或暗边。\n- **skin_protect：** 皮肤上少锐化一些，毛孔不会变成坑。动漫和线稿用 0。\n\n**LC Depth Anything V2 🗺️**\n- 生成 Depth FX 需要的深度图。只有 Depth FX 打开时才会运行。\n\n**LC Depth FX 🌫️**\n- 需要知道远近关系的相机效果。\n- **haze：** 空气有多浓。远处的区域向雾色渐隐。人像用 0.06 - 0.16，只有大场景风景才用更多。0 = 关闭。\n- **light_wrap：** 明亮的背景光漫过主体边缘。消除\"剪纸贴图\"的感觉。0 = 关闭。\n- **dof_blur：** 景深。离焦点越远越模糊的程度。0 = 关闭。\n- **focus_range：** 焦点周围保持清晰的范围。低 = 极薄（像 f/1.4），高 = 很深（像 f/8）。\n- **bokeh：** 明亮的焦外光点变成发光的圆斑。0 = 普通模糊。\n- **auto_focus：** 对焦在画面中间的主体上。关闭 = 自己设 **focus_depth**（0 = 最近，1 = 最远）。\n- **depth_direction：** 保持 Auto，除非效果落在了画面错误的部分。\n- 💡 如果你想**真正**精调，把 **LC Person Mask 🧍** 接到 *focus_mask* 输入上。\n   - 那就太疯狂了 🤔\n\n---\n\n## 📷 相机、镜头和 🎞️ 胶片调整\n\n**LC Lift Gamma Gain**\n- 按亮度范围调色：**lift** = 暗部，**gamma** = 中间调，**gain** = 高光。**offset** 整体一起移动。\n- **strength：** 0 = 原图，1 = 完整调色。\n- 💡 大部分胶片感的调色都在这里完成。\n\n**LC Vibrance**\n- **vibrance：** 提升暗淡的颜色，又不会把已经饱和的颜色炸掉。\n- **saturation：** 普通饱和度，没有保护。\n- **protect_skin：** 对肤色的影响更小。比普通饱和度对皮肤更友好。\n- 💡 写实时保持关闭。一刀切地降饱和会让脸失去血色。\n\n**LC Bloom**（Pro-Mist）\n- 画面亮部发出的光晕。\n- **mode：**\n    - **Bloom：** 亮部发出的光晕。\n    - **Pro-Mist：** 镜头前加一片柔光滤镜。光晕柔和，对比更温和，黑色依然够深。\n    - **Halation：** 见下面的 LC Bloom · Halation。\n- **intensity：** 光晕有多强。\n- **threshold：** 只有比这个更亮的地方才发光。越低 = 画面越多地方发光。\n- **radius：** 光晕扩散多远。\n- **saturation：** 0 = 白色光晕，1 = 光源自己的颜色。\n- 💡 一点点很梦幻。太多就是起雾。\n\n**LC Lens Profile**\n- 真实镜头的特性（Canon 50mm f/1.8、Helios 44-2、Sony FE 55mm 等）：畸变、色边和暗角。\n- **mode：** Add Aberrations 加上这种特性。Correct Aberrations 尝试把它去掉。\n- **strength：** 镜头特性有多强。\n\n**LC Bloom · Halation**\n- 同一个 Bloom 节点，设成 Halation：胶片在亮边周围产生的红橙色光晕。不是粉色的一层雾。\n\n**LC Vignette**\n- 压暗（或提亮）画面边缘。\n- **intensity：** 0.1 - 0.25 = 真实镜头。关掉 **cos4_falloff** 用 1 - 2 = 老照片，可以一直到黑角。负数 = 边缘更亮。\n- **midpoint：** 压暗从哪里开始。越低 = 越靠近中间。\n- **feather：** 边缘有多柔和。低 = 硬椭圆，高 = 长而柔和的渐变。\n- **cos4_falloff：** 开 = 真实镜头的光线衰减。关 = 印刷的老照片式暗角。\n\n**LC Film Stock (B&W)**\n- 真实的黑白胶片响应：Ilford HP5、Kodak Tri-X、Fuji Acros 等。\n- **color_filter：** 黑白摄影师拧在镜头上的彩色滤镜。红色压暗天空、让皮肤更光滑，绿色压暗嘴唇、提亮植物，等等。\n- 💡 想要彩色就关掉它。\n\n**LC Film Stock (Color)**\n- 真实的彩色胶片：Portra、Gold、Superia、Cinestill 800T、Velvia、Ektachrome 等。\n- **strength：** 💡 0.6 到 0.9 往往比满强度更自然。\n\n---\n\n## 🎨 后期滤镜\n\n**LC Directional Blur**\n- 沿一个角度的运动模糊。拖动节点上的箭头：它的方向就是角度，拖多远就是长度。\n- **strength：** 太多了？调低这个，而不是 distance。\n- **taps：** 低（2 - 8）= 阶梯状的多重曝光感，高（64+）= 平滑的拖影。\n\n**LC Apply LUT**\n- 用 `.cube` 文件调色。\n- **strength：** 0 = 原图，1 = 完整 LUT。写实通常 0.2 到 0.4 就够了。满强度像大锤。\n- **log：** 保持关闭，除非这个 LUT 是为 log 素材做的（名字里通常会写）。\n- 在[这里](https://freshluts.com/)获取免费的\n- 把你的 `.cube` 文件放到这里：\n```\nComfyUI/\n└── models/\n    └── luts/\n        ├── your_look.cube\n        ├── film_emulation.cube\n        └── ...\n```\n\n**LC Phone Filters 📱**\n- 37 种手机 App 风格（1977、Aden、Brooklyn、Xpro2 等）。基本就是 Instagram 滤镜。\n- **strength：** 0 = 原图\n\n**LC Natural Look 🍃**\n- 去掉 AI 味：压住刺眼的颜色和偏橙、塑料感的皮肤，高光柔和滚降而不是直接裁切，去掉油亮的光晕，并提升细微纹理。\n- 你的黑点、对比度和亮度保持原样。\n- **strength：** 去掉多少 AI 味。大多数渲染用 0.4 - 0.75。**0.5** 是测试过的写实设置。\n- **skin：** 在 strength 之外，额外压制多少偏橙 / 塑料感的皮肤。0 = 不动皮肤。**0.75** 测试效果最好。\n\n**LC Film Grain**\n- 在完成的画面上加颗粒。它是最后一个效果，所以后面没有东西会把颗粒当成细节。\n- **response：** 颗粒出现在哪里。\n    - **classic：** 主要在中间调（老式的感觉）。\n    - **film：** 在暗部和中间调最强，高光里没有，像负片。\n    - **sensor：** 手机和数码相机的噪点。光越亮越明显，在暗部最显眼，蓝色通道最脏。写实的首选。\n- **strength：** 颗粒有多少。一点点就很够了。**0.22** 是测试过的写实设置。\n- **grain_size：** 每颗颗粒有多大。随画面尺寸缩放。\n- **color_grain：** 0 = 单色颗粒，1 = 彩色斑点。写实用 **0.2**。\n- seed 来自工作流，所以每次运行颗粒都一样。\n\n**LC Text Overlay**\n- 在最终画面上加文字。在预览上拖动来摆放。\n- **font、font_size、color_r / g / b、alignment：** 在节点上设置，预览会实时更新。\n\n**LC Watermark 💧**\n- 任何图片都能当水印。在预览上拖动来摆放。\n- **size_percent：** 它的宽度占画面的百分比。**opacity：** 0 - 1。\n- 💡 用的是透明 PNG？把 Load Image 的 **MASK** 接到 **watermark_mask**，透明的部分就会保持透明。\n\n---\n\n*\"True Nothing is. Permitted Everything is\"*- Yoda Auditore, **Assassin's Wars**\n",
              "src": "eb076301",
              "srcTitle": "🎨 Post Processing Suite"
            },
            "ja": {
              "text": "### 🛑🚫✋ seed を固定してから、ここで変更することを強くおすすめします。上流を何か変えると、画像全体がもう一度実行されます。\n\n\n- どのノードにも比較用のビフォー / アフターのワイプがあります。ドラッグして比べてください。\n- VRAM で困ったら **LC123 Performance Settings ⚙️** のノートを見てください。\n\n---\n## ルック Look 👀\n\n- 💡 **LC Depth FX、Bloom、Lens Profile、Vignette、Film Stock** と **Film Grain** は同じルック（Natural、Portrait、Cinematic、Golden hour、Vintage、Dreamy、Landscape、Night、B&W）を共有しています。それぞれで同じものを選ぶと揃います。スライダーを動かすと Custom に切り替わります。\n   - リアルを目指すなら **LC Sharpen Pro** は控えめに。似た性質もありますが、このセットには入っていません。\n\n---\n\n## 🎯 補正、🔪 シャープ、🌫️ 奥行き\n\n**LC Image Crop 🖼️🔪**\n- 画像をトリミング：ノード上で枠とハンドルをドラッグします。\n- 最初に置くので、後のもの（奥行き、周辺減光、粒子）がすべて最終的な構図に乗ります。\n- **aspect：** 形を固定（free、original、よく使う比率）。\n\n**LC Color Match 🎨**\n- ライティングの後で、色を最初に読み込んだ画像に戻します。\n- **method：** oklab は目の見え方に合わせて、すべての色をまとめて合わせます。adain は古い方法です。\n- **strength：** 0 = 元画像、1 = 完全に合わせる。\n- **skin_protect：** 顔の色相がずれないようにします。0 = オフ、1 = フル。\n\n**LC Auto White Balance**\n- 全体の色かぶりを取ります。色をフラットにしたいときに便利。\n- **method：** たいてい Shades of Gray が一番無難です。\n- **strength：** 0 = 元画像、1 = フル補正。\n- 💡 ほとんどの場合オフです。\n\n**LC Sharpen Pro 🔪**\n- 輪郭線を描かずにシャープにします。明るさだけに効くので、色がにじみません。\n- 奥行きのボケの前に。後には絶対に置かないこと。\n- **preset：** 写真は Natural。イラストは Lineart / Anime sharp / Illustration。スライダーを動かすと Custom に切り替わります。\n- **sharpen：** 0 = オフ。\n- **texture：** 中くらいのディテール：毛穴、布、毛並み。0 = オフ。\n- **clarity：** 大きなスケールのパンチと奥行き。0 = オフ。\n- **strength：** 元画像とのミックス。0 = 元画像、1 = フル効果。\n- **halo：** 1 = エッジのまわりに明るい縁や暗い縁が出ません。\n- **skin_protect：** 肌のシャープを弱め、毛穴が穴にならないようにします。アニメや線画は 0。\n\n**LC Depth Anything V2 🗺️**\n- Depth FX に必要な深度マップを作ります。Depth FX がオンのときだけ動きます。\n\n**LC Depth FX 🌫️**\n- 何が近くて何が遠いかを使うカメラ効果。\n- **haze：** 空気の濃さ。遠くの部分がかすみの色へフェードします。人物は 0.06 - 0.16、広い風景のときだけもっと多く。0 = オフ。\n- **light_wrap：** 明るい背景の光が被写体の縁にかぶります。切り抜いたシールっぽさが消えます。0 = オフ。\n- **dof_blur：** 被写界深度。ピントから離れるほどどれだけボケるか。0 = オフ。\n- **focus_range：** ピントのまわりでどれだけシャープに残るか。低い = ごく薄い（f/1.4 のように）、高い = 深い（f/8 のように）。\n- **bokeh：** 明るいボケた光が光る円になります。0 = 普通のボケ。\n- **auto_focus：** 画面中央のメインの被写体にピントを合わせます。オフ = **focus_depth** を自分で設定（0 = 一番近い、1 = 一番遠い）。\n- **depth_direction：** 効果が画像の違う部分にかかってしまうとき以外は Auto のままで。\n- 💡 **本気で**追い込みたいなら、**LC Person Mask 🧍** を *focus_mask* 入力につないでください。\n   - それはもうクレイジーです 🤔\n\n---\n\n## 📷 カメラ、レンズ、🎞️ フィルムの調整\n\n**LC Lift Gamma Gain**\n- 明るさの範囲ごとのカラーグレーディング：**lift** = シャドウ、**gamma** = 中間調、**gain** = ハイライト。**offset** は全部を動かします。\n- **strength：** 0 = 元画像、1 = フルのグレーディング。\n- 💡 フィルムっぽい色作りのほとんどはここでやります。\n\n**LC Vibrance**\n- **vibrance：** くすんだ色を持ち上げ、すでに鮮やかな色は飛ばしません。\n- **saturation：** 普通の彩度。保護はありません。\n- **protect_skin：** 肌色への効果を弱めます。普通の彩度より肌にやさしい。\n- 💡 リアル系ではオフに。一律の彩度カットは顔の血色を奪います。\n\n**LC Bloom**（Pro-Mist）\n- 画像の明るい部分からの光のにじみ。\n- **mode：**\n    - **Bloom：** 明るい部分からのグロー。\n    - **Pro-Mist：** レンズの前に置くディフュージョンフィルター。やわらかいグロー、穏やかなコントラスト、黒は深いまま。\n    - **Halation：** 下の LC Bloom · Halation を見てください。\n- **intensity：** グローの強さ。\n- **threshold：** これより明るいところだけが光ります。低い = 画像のより多くの部分が光ります。\n- **radius：** グローがどこまで広がるか。\n- **saturation：** 0 = 白いグロー、1 = 光そのものの色。\n- 💡 少しなら夢のよう。多すぎると霧。\n\n**LC Lens Profile**\n- 実在のレンズの個性（Canon 50mm f/1.8、Helios 44-2、Sony FE 55mm など）：歪み、色のにじみ、周辺減光。\n- **mode：** Add Aberrations で個性を足します。Correct Aberrations で取り除こうとします。\n- **strength：** レンズの個性の強さ。\n\n**LC Bloom · Halation**\n- 同じ Bloom ノードを Halation にしたもの：フィルムで明るい縁のまわりに出る赤オレンジのにじみ。ピンクのかぶりではありません。\n\n**LC Vignette**\n- 画像の端を暗く（または明るく）します。\n- **intensity：** 0.1 - 0.25 = 本物のレンズ。**cos4_falloff** をオフにして 1 - 2 = 古い写真、四隅が真っ黒になるまで。マイナス = 端が明るくなります。\n- **midpoint：** 暗くなり始める位置。低い = 中央に近い。\n- **feather：** 端のやわらかさ。低い = くっきりした楕円、高い = 長くゆるやかなフェード。\n- **cos4_falloff：** オン = 本物のレンズの光量落ち。オフ = 印刷された古い写真のような周辺減光。\n\n**LC Film Stock (B&W)**\n- 本物のモノクロフィルムの反応：Ilford HP5、Kodak Tri-X、Fuji Acros など。\n- **color_filter：** モノクロ写真家がレンズにつける色ガラス。赤は空を暗くして肌をなめらかに、緑は唇を暗くして草木を明るくします。\n- 💡 カラーにしたいならオフのままで。\n\n**LC Film Stock (Color)**\n- 本物のカラーフィルム：Portra、Gold、Superia、Cinestill 800T、Velvia、Ektachrome など。\n- **strength：** 💡 フルより 0.6 から 0.9 のほうが自然に見えることが多いです。\n\n---\n\n## 🎨 ポストプロダクションフィルター\n\n**LC Directional Blur**\n- 一つの角度に沿ったモーションブラー。ノード上の矢印をドラッグ：向きが角度、ドラッグした距離が長さです。\n- **strength：** 強すぎる？ distance ではなくこちらを下げてください。\n- **taps：** 低い（2 - 8）= 段々の多重露光っぽさ、高い（64+）= なめらかな流れ。\n\n**LC Apply LUT**\n- `.cube` ファイルによるカラーグレーディング。\n- **strength：** 0 = 元画像、1 = LUT をフル適用。リアル系ならたいてい 0.2 から 0.4 で十分。フルの強さはハンマーです。\n- **log：** LUT が log 素材用に作られていない限りオフのままで（たいてい名前に書いてあります）。\n- 無料のものは[こちら](https://freshluts.com/)\n- `.cube` ファイルはここに入れます：\n```\nComfyUI/\n└── models/\n    └── luts/\n        ├── your_look.cube\n        ├── film_emulation.cube\n        └── ...\n```\n\n**LC Phone Filters 📱**\n- 37 種類のスマホアプリ風ルック（1977、Aden、Brooklyn、Xpro2 など）。要するに Instagram のフィルターです。\n- **strength：** 0 = 元画像\n\n**LC Natural Look 🍃**\n- AI っぽさを抜きます：派手な色とオレンジっぽいプラスチック肌を落ち着かせ、ハイライトを白飛びさせずになめらかに抑え、テカテカしたグローを減らし、細かいテクスチャを持ち上げます。\n- 黒の締まり、コントラスト、明るさはそのままです。\n- **strength：** AI っぽさをどれだけ抜くか。ほとんどのレンダーは 0.4 - 0.75。**0.5** がテスト済みのリアル設定です。\n- **skin：** strength に加えて、オレンジっぽい / プラスチックっぽい肌をどれだけ落ち着かせるか。0 = 肌は触りません。**0.75** がテストで一番でした。\n\n**LC Film Grain**\n- 仕上がった画像に乗せる粒子。最後のエフェクトなので、後ろのものが粒子をディテールと勘違いすることはありません。\n- **response：** 粒子がどこに出るか。\n    - **classic：** 主に中間調（昔ながらの見た目）。\n    - **film：** シャドウと中間調で一番強く、ハイライトでは消える、ネガのように。\n    - **sensor：** スマホやデジカメのノイズ。光が強いほど増え、シャドウで一番目立ち、青が一番ノイジー。リアル系のおすすめ。\n- **strength：** 粒子の量。少しで十分効きます。**0.22** がテスト済みのリアル設定です。\n- **grain_size：** 粒の大きさ。画像のサイズに合わせて変わります。\n- **color_grain：** 0 = モノクロの粒子、1 = 色の粒。リアル系は **0.2**。\n- seed はワークフローから来るので、実行ごとに粒子は同じです。\n\n**LC Text Overlay**\n- 最終画像に文字を入れます。プレビュー上でドラッグして配置します。\n- **font、font_size、color_r / g / b、alignment：** ノードで設定すると、プレビューがすぐ更新されます。\n\n**LC Watermark 💧**\n- どんな画像でもウォーターマークにできます。プレビュー上でドラッグして配置します。\n- **size_percent：** 画像に対する幅の %。**opacity：** 0 - 1。\n- 💡 透過 PNG を使うなら、Load Image の **MASK** を **watermark_mask** につなぐと、透明な部分が透明のままになります。\n\n---\n\n*\"True Nothing is. Permitted Everything is\"*- Yoda Auditore, **Assassin's Wars**\n",
              "src": "eb076301",
              "srcTitle": "🎨 Post Processing Suite"
            },
            "ko": {
              "text": "### 🛑🚫✋ seed를 고정한 다음 여기서 바꾸는 걸 강력히 추천해요. 위쪽을 뭐든 바꾸면 이미지 전체가 다시 돌아가요.\n\n\n- 모든 노드에 비포 / 애프터 와이프가 있어요. 드래그해서 비교하세요.\n- VRAM 문제가 있나요? **LC123 Performance Settings ⚙️** 노트를 보세요.\n\n---\n## 룩 Look 👀\n\n- 💡 **LC Depth FX, Bloom, Lens Profile, Vignette, Film Stock**과 **Film Grain**은 같은 룩(Natural, Portrait, Cinematic, Golden hour, Vintage, Dreamy, Landscape, Night, B&W)을 공유해요. 각각 같은 걸 고르면 서로 맞아요. 슬라이더를 움직이면 Custom으로 바뀌어요.\n   - 사실적인 이미지를 원할 때는 **LC Sharpen Pro**를 아껴 쓰세요. 비슷한 성질도 있지만 이 세트에는 묶여 있지 않아요.\n\n---\n\n## 🎯 보정, 🔪 선명화, 🌫️ 깊이\n\n**LC Image Crop 🖼️🔪**\n- 이미지를 잘라요: 노드 위에서 박스와 핸들을 드래그하세요.\n- 맨 앞에 둬서 뒤의 모든 것(깊이, 비네팅, 그레인)이 최종 구도에 맞게 들어가요.\n- **aspect:** 모양을 고정(free, original 또는 자주 쓰는 비율).\n\n**LC Color Match 🎨**\n- 라이팅 작업 뒤에 색을 처음 불러온 이미지로 되돌려요.\n- **method:** oklab은 눈이 색을 보는 방식대로 모든 색을 함께 맞춰요. adain은 예전 방식이에요.\n- **strength:** 0 = 원본, 1 = 완전히 맞춤.\n- **skin_protect:** 얼굴 색조가 틀어지지 않게 해요. 0 = 끄기, 1 = 최대.\n\n**LC Auto White Balance**\n- 전체적인 색 틀어짐을 없애요. 색을 평평하게 만들고 싶을 때 편해요.\n- **method:** 보통 Shades of Gray가 가장 무난해요.\n- **strength:** 0 = 원본, 1 = 전체 보정.\n- 💡 대부분은 꺼 둬요.\n\n**LC Sharpen Pro 🔪**\n- 윤곽선을 그리지 않고 선명하게 해요. 밝기에만 작용해서 색이 번지지 않아요.\n- 깊이 블러 앞에 두세요. 뒤에는 절대 안 돼요.\n- **preset:** 사진은 Natural. 그림은 Lineart / Anime sharp / Illustration. 슬라이더를 움직이면 Custom으로 바뀌어요.\n- **sharpen:** 0 = 끄기.\n- **texture:** 중간 크기 디테일: 모공, 천, 털. 0 = 끄기.\n- **clarity:** 큰 스케일의 펀치와 깊이감. 0 = 끄기.\n- **strength:** 원본과 섞는 정도. 0 = 원본, 1 = 전체 효과.\n- **halo:** 1 = 엣지 주위에 밝거나 어두운 테두리가 생기지 않아요.\n- **skin_protect:** 피부에는 선명화를 줄여서 모공이 구멍처럼 파이지 않아요. 애니메이션과 선화는 0.\n\n**LC Depth Anything V2 🗺️**\n- Depth FX에 필요한 깊이 맵을 만들어요. Depth FX가 켜져 있을 때만 돌아가요.\n\n**LC Depth FX 🌫️**\n- 무엇이 가깝고 무엇이 먼지 알아야 하는 카메라 효과예요.\n- **haze:** 공기가 얼마나 짙은지. 먼 부분이 헤이즈 색으로 흐려져요. 인물은 0.06 - 0.16, 넓은 풍경에서만 더 많이. 0 = 끄기.\n- **light_wrap:** 밝은 배경 빛이 피사체 가장자리로 번져요. 오려 붙인 스티커 느낌이 사라져요. 0 = 끄기.\n- **dof_blur:** 피사계 심도. 초점에서 멀어질수록 얼마나 흐려지는지. 0 = 끄기.\n- **focus_range:** 초점 주위에서 얼마나 선명하게 남는지. 낮으면 = 아주 얇게(f/1.4처럼), 높으면 = 깊게(f/8처럼).\n- **bokeh:** 밝은 초점 밖 빛이 빛나는 원으로 바뀌어요. 0 = 일반 블러.\n- **auto_focus:** 화면 가운데의 주 피사체에 초점을 맞춰요. 끄면 = **focus_depth**를 직접 설정(0 = 가장 가까움, 1 = 가장 멂).\n- **depth_direction:** 효과가 이미지의 엉뚱한 부분에 들어갈 때가 아니면 Auto로 두세요.\n- 💡 **제대로** 다듬고 싶다면 **LC Person Mask 🧍**를 *focus_mask* 입력에 연결하세요.\n   - 그건 정말 미친 거죠 🤔\n\n---\n\n## 📷 카메라, 렌즈, 🎞️ 필름 조정\n\n**LC Lift Gamma Gain**\n- 밝기 구간별 색 보정: **lift** = 어두운 부분, **gamma** = 중간톤, **gain** = 하이라이트. **offset**은 전부를 함께 움직여요.\n- **strength:** 0 = 원본, 1 = 전체 보정.\n- 💡 필름 느낌의 색 작업은 대부분 여기서 해요.\n\n**LC Vibrance**\n- **vibrance:** 탁한 색을 살리면서 이미 채도가 높은 색은 터뜨리지 않아요.\n- **saturation:** 일반 채도, 보호 없음.\n- **protect_skin:** 피부 톤에는 효과를 줄여요. 일반 채도보다 피부에 순해요.\n- 💡 리얼리즘에서는 꺼 두세요. 일괄적인 채도 감소는 얼굴의 혈색을 빼요.\n\n**LC Bloom** (Pro-Mist)\n- 이미지의 밝은 부분에서 나오는 빛 번짐.\n- **mode:**\n    - **Bloom:** 밝은 부분에서 나오는 글로우.\n    - **Pro-Mist:** 렌즈 앞에 두는 디퓨전 필터. 부드러운 글로우, 완만한 대비, 검정은 깊게 유지돼요.\n    - **Halation:** 아래 LC Bloom · Halation을 보세요.\n- **intensity:** 글로우의 세기.\n- **threshold:** 이보다 밝은 부분만 빛나요. 낮을수록 = 이미지의 더 많은 부분이 빛나요.\n- **radius:** 글로우가 얼마나 멀리 퍼지는지.\n- **saturation:** 0 = 흰색 글로우, 1 = 빛 자체의 색.\n- 💡 조금이면 몽환적이고, 많으면 안개예요.\n\n**LC Lens Profile**\n- 실제 렌즈의 개성(Canon 50mm f/1.8, Helios 44-2, Sony FE 55mm 등): 왜곡, 색 번짐, 비네팅.\n- **mode:** Add Aberrations는 개성을 더해요. Correct Aberrations는 그걸 없애려고 해요.\n- **strength:** 렌즈 개성의 세기.\n\n**LC Bloom · Halation**\n- 같은 Bloom 노드를 Halation으로 설정한 것: 필름에서 밝은 가장자리 주위에 생기는 붉은 주황빛 번짐. 분홍색으로 덮는 게 아니에요.\n\n**LC Vignette**\n- 가장자리를 어둡게(또는 밝게) 해요.\n- **intensity:** 0.1 - 0.25 = 실제 렌즈. **cos4_falloff**를 끄고 1 - 2 = 오래된 사진, 모서리가 새까매질 때까지. 음수 = 가장자리가 더 밝아져요.\n- **midpoint:** 어두워지기 시작하는 위치. 낮을수록 = 가운데에 더 가까워요.\n- **feather:** 가장자리가 얼마나 부드러운지. 낮으면 = 딱딱한 타원, 높으면 = 길고 완만한 페이드.\n- **cos4_falloff:** 켜면 = 실제 렌즈의 빛 감소. 끄면 = 인쇄된 옛날 사진 같은 비네팅.\n\n**LC Film Stock (B&W)**\n- 실제 흑백 필름의 반응: Ilford HP5, Kodak Tri-X, Fuji Acros 등.\n- **color_filter:** 흑백 사진가가 렌즈에 끼우는 컬러 유리. 빨강은 하늘을 어둡게 하고 피부를 매끄럽게, 초록은 입술을 어둡게 하고 나뭇잎을 밝게 하는 식이에요.\n- 💡 컬러를 원하면 꺼 두세요.\n\n**LC Film Stock (Color)**\n- 실제 컬러 필름: Portra, Gold, Superia, Cinestill 800T, Velvia, Ektachrome 등.\n- **strength:** 💡 최대보다 0.6에서 0.9가 더 자연스러워 보일 때가 많아요.\n\n---\n\n## 🎨 후반 작업 필터\n\n**LC Directional Blur**\n- 한 각도를 따라가는 모션 블러. 노드 위의 화살표를 드래그하세요: 방향이 각도, 드래그한 거리가 길이예요.\n- **strength:** 너무 강한가요? distance 말고 이걸 낮추세요.\n- **taps:** 낮으면(2 - 8) = 계단 같은 다중 노출 느낌, 높으면(64+) = 부드러운 흐름.\n\n**LC Apply LUT**\n- `.cube` 파일로 하는 색 보정.\n- **strength:** 0 = 원본, 1 = LUT 전체. 리얼리즘에는 보통 0.2에서 0.4면 충분해요. 최대 강도는 망치예요.\n- **log:** LUT가 log 영상용으로 만들어진 게 아니면 꺼 두세요(보통 이름에 적혀 있어요).\n- 무료 LUT는 [여기](https://freshluts.com/)\n- `.cube` 파일은 여기에 넣으세요:\n```\nComfyUI/\n└── models/\n    └── luts/\n        ├── your_look.cube\n        ├── film_emulation.cube\n        └── ...\n```\n\n**LC Phone Filters 📱**\n- 37가지 폰 앱 스타일 룩(1977, Aden, Brooklyn, Xpro2 등). 사실상 Instagram 필터예요.\n- **strength:** 0 = 원본\n\n**LC Natural Look 🍃**\n- AI 느낌을 빼요: 튀는 색과 주황빛 플라스틱 피부를 진정시키고, 하이라이트를 날리지 않고 부드럽게 눌러 주고, 번들거리는 글로우를 줄이고, 미세한 질감을 살려요.\n- 블랙 포인트, 대비, 밝기는 그대로예요.\n- **strength:** AI 느낌을 얼마나 뺄지. 대부분의 렌더는 0.4 - 0.75. **0.5**가 테스트한 리얼리즘 설정이에요.\n- **skin:** strength와 별개로 주황빛 / 플라스틱 같은 피부를 얼마나 진정시킬지. 0 = 피부는 그대로. **0.75**가 테스트에서 가장 좋았어요.\n\n**LC Film Grain**\n- 완성된 이미지 위에 얹는 그레인. 마지막 효과라서 뒤에 오는 게 그레인을 디테일로 착각하지 않아요.\n- **response:** 그레인이 어디에 보이는지.\n    - **classic:** 주로 중간톤(예전 느낌).\n    - **film:** 어두운 부분과 중간톤에서 가장 강하고 하이라이트에서는 사라져요, 네거티브 필름처럼.\n    - **sensor:** 폰과 디지털 카메라 노이즈. 빛이 강할수록 커지고, 어두운 부분에서 가장 잘 보이고, 파란색이 가장 지저분해요. 리얼리즘 추천.\n- **strength:** 그레인 양. 조금만 넣어도 충분해요. **0.22**가 테스트한 리얼리즘 설정이에요.\n- **grain_size:** 그레인 알갱이 크기. 이미지 크기에 맞춰 변해요.\n- **color_grain:** 0 = 흑백 그레인, 1 = 컬러 반점. 리얼리즘은 **0.2**.\n- seed는 워크플로에서 오기 때문에 실행할 때마다 그레인이 같아요.\n\n**LC Text Overlay**\n- 최종 이미지에 글자를 넣어요. 미리보기에서 드래그해서 위치를 정하세요.\n- **font, font_size, color_r / g / b, alignment:** 노드에서 설정하면 미리보기가 바로 바뀌어요.\n\n**LC Watermark 💧**\n- 어떤 이미지든 워터마크로 쓸 수 있어요. 미리보기에서 드래그해서 위치를 정하세요.\n- **size_percent:** 이미지 대비 폭(%). **opacity:** 0 - 1.\n- 💡 투명 PNG를 쓰나요? Load Image의 **MASK**를 **watermark_mask**에 연결하면 투명한 부분이 투명하게 유지돼요.\n\n---\n\n*\"True Nothing is. Permitted Everything is\"*- Yoda Auditore, **Assassin's Wars**\n",
              "src": "eb076301",
              "srcTitle": "🎨 Post Processing Suite"
            }
          },
          "titles": {
            "en": "🎨 Post Processing Suite",
            "zh": "🎨 后期处理套件",
            "ja": "🎨 ポストプロセススイート",
            "ko": "🎨 후처리 모음"
          }
        },
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "English ✏️",
        "### 🛑🚫✋ I highly suggest fixing the seed then making changes here. Change anything upstream and the whole picture runs again.\n\n\n- Every node has a before/after wipe on it. Drag it to compare.\n- VRAM issues? See the **LC123 Performance Settings ⚙️** note.\n\n---\n## The Look 👀\n\n- 💡 **LC Depth FX, Bloom, Lens Profile, Vignette, Film Stock** and **Film Grain** share the same looks (Natural, Portrait, Cinematic, Golden hour, Vintage, Dreamy, Landscape, Night, B&W). Pick the same one on each and they match. Moving a slider switches it to Custom.\n   - **LC Sharpen Pro** should be used sparingly when trying to achieve realism. It shares some of the same qualities, but is not tied into this set.\n\n---\n\n## 🎯 Correct, 🔪 Sharpen, 🌫️ Depth\n\n**LC Image Crop 🖼️🔪**\n- Crop the picture: drag the box and its handles on the node.\n- First, so everything after it (depth, vignette, grain) lands on your final framing.\n- **aspect:** lock the shape (free, original or a common ratio).\n\n**LC Color Match 🎨**\n- Pulls the colors back to the original loaded image after the lighting pass.\n- **method:** oklab matches all the colors together, the way the eye sees them. adain is the old method.\n- **strength:** 0 = original, 1 = fully matched.\n- **skin_protect:** keeps faces from shifting hue. 0 = off, 1 = full.\n\n**LC Auto White Balance**\n- Takes out the overall color cast. Handy when you want to flatten the color.\n- **method:** Shades of Gray is usually the safest.\n- **strength:** 0 = original, 1 = full correction.\n- 💡 Off most of the time.\n\n**LC Sharpen Pro 🔪**\n- Sharpens without drawing outlines. It works on brightness only, so colors do not fringe.\n- Before the depth blur, never after.\n- **preset:** Natural for photos. Lineart / Anime sharp / Illustration for art. Moving any slider switches it to Custom.\n- **sharpen:** 0 = off.\n- **texture:** mid-size detail: pores, fabric, fur. 0 = off.\n- **clarity:** large-scale punch and depth. 0 = off.\n- **strength:** mix with the original. 0 = original, 1 = full effect.\n- **halo:** 1 = no bright or dark rims around the edges.\n- **skin_protect:** less sharpening on skin, so pores do not turn into pits. 0 for anime and lineart.\n\n**LC Depth Anything V2 🗺️**\n- Makes the depth map that Depth FX needs. It only runs when Depth FX is on.\n\n**LC Depth FX 🌫️**\n- Camera effects that need to know what is near and what is far.\n- **haze:** how thick the air is. Distant areas fade toward the haze color. 0.06 - 0.16 for people, more only for wide landscapes. 0 = off.\n- **light_wrap:** bright background light bleeds over the subject's edges. Kills the cut-out sticker look. 0 = off.\n- **dof_blur:** depth of field. How blurry things get away from the focus. 0 = off.\n- **focus_range:** how much stays sharp around the focus. Low = razor thin (like f/1.4), high = deep (like f/8).\n- **bokeh:** bright out-of-focus lights turn into glowing discs. 0 = plain blur.\n- **auto_focus:** focuses on the main subject in the middle of the frame. Off = set **focus_depth** yourself (0 = nearest, 1 = farthest).\n- **depth_direction:** leave it on Auto unless the effects land on the wrong part of the picture.\n- 💡 If you want to **REALLY** dial it in, hook up an **LC Person Mask 🧍** to the *focus_mask* input.\n   - That would be crazy 🤔\n\n---\n\n## 📷 Camera, Lens, & 🎞️ Film Adjustments\n\n**LC Lift Gamma Gain**\n- A color grade by brightness range: **lift** = shadows, **gamma** = midtones, **gain** = highlights. **offset** moves all of them.\n- **strength:** 0 = original, 1 = the full grade.\n- 💡 Most of the film-look color work happens here.\n\n**LC Vibrance**\n- **vibrance:** boosts muted colors without frying the ones that are already saturated.\n- **saturation:** plain saturation, no protection.\n- **protect_skin:** less effect on skin tones. Kinder to skin than plain saturation.\n- 💡 Leave it off for realism. A flat saturation cut drains the faces.\n\n**LC Bloom** (Pro-Mist)\n- A glow from the bright parts of the picture.\n- **mode:**\n    - **Bloom:** glow from the bright areas.\n    - **Pro-Mist:** a diffusion filter in front of the lens. Soft glow, gentler contrast, the blacks stay deep.\n    - **Halation:** see LC Bloom · Halation below.\n- **intensity:** how strong the glow is.\n- **threshold:** only what is brighter than this glows. Lower = more of the picture glows.\n- **radius:** how far the glow spreads.\n- **saturation:** 0 = white glow, 1 = the light's own color.\n- 💡 A little is dreamy. A lot is fog.\n\n**LC Lens Profile**\n- The character of a real lens (Canon 50mm f/1.8, Helios 44-2, Sony FE 55mm, etc.): its distortion, color fringing and vignette.\n- **mode:** Add Aberrations adds the character. Correct Aberrations tries to take it out.\n- **strength:** how much lens character.\n\n**LC Bloom · Halation**\n- The same Bloom node, set to Halation: the red-orange glow film gets around bright edges. Not a pink wash.\n\n**LC Vignette**\n- Darkens (or brightens) the edges.\n- **intensity:** 0.1 - 0.25 = a real lens. 1 - 2 with **cos4_falloff** off = an old photo, up to black corners. Negative = brighter edges.\n- **midpoint:** where the darkening starts. Lower = closer to the middle.\n- **feather:** how soft the edge is. Low = a hard oval, high = a long gentle fade.\n- **cos4_falloff:** on = real lens light falloff. Off = a printed, old-photo vignette.\n\n**LC Film Stock (B&W)**\n- Real black and white film response: Ilford HP5, Kodak Tri-X, Fuji Acros, etc.\n- **color_filter:** the colored glass a B&W photographer screws on. Red darkens skies and smooths skin, green darkens lips and lifts foliage, etc.\n- 💡 Leave it off if you want color.\n\n**LC Film Stock (Color)**\n- Real color film: Portra, Gold, Superia, Cinestill 800T, Velvia, Ektachrome, etc.\n- **strength:** 💡 0.6 to 0.9 often looks more natural than full.\n\n---\n\n## 🎨 Post Production Filters\n\n**LC Directional Blur**\n- Motion blur along one angle. Drag the arrow on the node: its direction is the angle, how far you drag is the length.\n- **strength:** too much? Turn this down, not the distance.\n- **taps:** low (2 - 8) = a stepped double exposure look, high (64+) = a smooth streak.\n\n**LC Apply LUT**\n- A color grade from a `.cube` file.\n- **strength:** 0 = original, 1 = the full LUT. 0.2 to 0.4 is usually plenty for realism. Full strength is a sledgehammer.\n- **log:** leave it off unless the LUT was made for log footage (the name typically says so).\n- Get free ones [Here](https://freshluts.com/)\n- Drop your `.cube` files here:\n```\nComfyUI/\n└── models/\n    └── luts/\n        ├── your_look.cube\n        ├── film_emulation.cube\n        └── ...\n```\n\n**LC Phone Filters 📱**\n- 37 phone-app looks (1977, Aden, Brooklyn, Xpro2, etc.). Basically Instagram filters.\n- **strength:** 0 = Original\n\n**LC Natural Look 🍃**\n- Takes the AI look out: calms loud colors and orange, plastic skin, rolls the highlights off instead of clipping them, cuts the glossy glow and lifts fine texture.\n- Your black point, contrast and brightness stay where they were.\n- **strength:** how much of the AI look comes out. 0.4 - 0.75 for most renders. **0.5** is the tested realism setting.\n- **skin:** how much orange / plastic skin is calmed, on top of strength. 0 = skin untouched. **0.75** tested best.\n\n**LC Film Grain**\n- Grain on the finished picture. It is the last effect, so nothing after it mistakes the grain for detail.\n- **response:** where the grain shows.\n    - **classic:** mostly the midtones (the old look).\n    - **film:** strongest in the shadows and midtones, gone in the highlights, like a negative.\n    - **sensor:** phone and digital camera noise. Grows with the light, shows most in the shadows, and blue is the noisiest. The realism pick.\n- **strength:** how much grain. A little goes a long way. **0.22** is the tested realism setting.\n- **grain_size:** how big each grain is. Scales with the picture size.\n- **color_grain:** 0 = mono grain, 1 = color speckle. **0.2** for realism.\n- The seed comes from the workflow, so the grain stays the same from run to run.\n\n**LC Text Overlay**\n- Text on the final picture. Drag it on the preview to place it.\n- **font, font_size, color_r / g / b, alignment:** set them on the node, the preview updates live.\n\n**LC Watermark 💧**\n- Any image as a watermark. Drag it on the preview to place it.\n- **size_percent:** its width as a % of the picture. **opacity:** 0 - 1.\n- 💡 Using a transparent PNG? Wire Load Image's **MASK** into **watermark_mask** so the see-through parts stay see-through.\n\n---\n\n*\"True Nothing is. Permitted Everything is\"*- Yoda Auditore, **Assassin's Wars**\n"
      ],
      "widgets_values_named": {
        "language": "English ✏️",
        "text": "### 🛑🚫✋ I highly suggest fixing the seed then making changes here. Change anything upstream and the whole picture runs again.\n\n\n- Every node has a before/after wipe on it. Drag it to compare.\n- VRAM issues? See the **LC123 Performance Settings ⚙️** note.\n\n---\n## The Look 👀\n\n- 💡 **LC Depth FX, Bloom, Lens Profile, Vignette, Film Stock** and **Film Grain** share the same looks (Natural, Portrait, Cinematic, Golden hour, Vintage, Dreamy, Landscape, Night, B&W). Pick the same one on each and they match. Moving a slider switches it to Custom.\n   - **LC Sharpen Pro** should be used sparingly when trying to achieve realism. It shares some of the same qualities, but is not tied into this set.\n\n---\n\n## 🎯 Correct, 🔪 Sharpen, 🌫️ Depth\n\n**LC Image Crop 🖼️🔪**\n- Crop the picture: drag the box and its handles on the node.\n- First, so everything after it (depth, vignette, grain) lands on your final framing.\n- **aspect:** lock the shape (free, original or a common ratio).\n\n**LC Color Match 🎨**\n- Pulls the colors back to the original loaded image after the lighting pass.\n- **method:** oklab matches all the colors together, the way the eye sees them. adain is the old method.\n- **strength:** 0 = original, 1 = fully matched.\n- **skin_protect:** keeps faces from shifting hue. 0 = off, 1 = full.\n\n**LC Auto White Balance**\n- Takes out the overall color cast. Handy when you want to flatten the color.\n- **method:** Shades of Gray is usually the safest.\n- **strength:** 0 = original, 1 = full correction.\n- 💡 Off most of the time.\n\n**LC Sharpen Pro 🔪**\n- Sharpens without drawing outlines. It works on brightness only, so colors do not fringe.\n- Before the depth blur, never after.\n- **preset:** Natural for photos. Lineart / Anime sharp / Illustration for art. Moving any slider switches it to Custom.\n- **sharpen:** 0 = off.\n- **texture:** mid-size detail: pores, fabric, fur. 0 = off.\n- **clarity:** large-scale punch and depth. 0 = off.\n- **strength:** mix with the original. 0 = original, 1 = full effect.\n- **halo:** 1 = no bright or dark rims around the edges.\n- **skin_protect:** less sharpening on skin, so pores do not turn into pits. 0 for anime and lineart.\n\n**LC Depth Anything V2 🗺️**\n- Makes the depth map that Depth FX needs. It only runs when Depth FX is on.\n\n**LC Depth FX 🌫️**\n- Camera effects that need to know what is near and what is far.\n- **haze:** how thick the air is. Distant areas fade toward the haze color. 0.06 - 0.16 for people, more only for wide landscapes. 0 = off.\n- **light_wrap:** bright background light bleeds over the subject's edges. Kills the cut-out sticker look. 0 = off.\n- **dof_blur:** depth of field. How blurry things get away from the focus. 0 = off.\n- **focus_range:** how much stays sharp around the focus. Low = razor thin (like f/1.4), high = deep (like f/8).\n- **bokeh:** bright out-of-focus lights turn into glowing discs. 0 = plain blur.\n- **auto_focus:** focuses on the main subject in the middle of the frame. Off = set **focus_depth** yourself (0 = nearest, 1 = farthest).\n- **depth_direction:** leave it on Auto unless the effects land on the wrong part of the picture.\n- 💡 If you want to **REALLY** dial it in, hook up an **LC Person Mask 🧍** to the *focus_mask* input.\n   - That would be crazy 🤔\n\n---\n\n## 📷 Camera, Lens, & 🎞️ Film Adjustments\n\n**LC Lift Gamma Gain**\n- A color grade by brightness range: **lift** = shadows, **gamma** = midtones, **gain** = highlights. **offset** moves all of them.\n- **strength:** 0 = original, 1 = the full grade.\n- 💡 Most of the film-look color work happens here.\n\n**LC Vibrance**\n- **vibrance:** boosts muted colors without frying the ones that are already saturated.\n- **saturation:** plain saturation, no protection.\n- **protect_skin:** less effect on skin tones. Kinder to skin than plain saturation.\n- 💡 Leave it off for realism. A flat saturation cut drains the faces.\n\n**LC Bloom** (Pro-Mist)\n- A glow from the bright parts of the picture.\n- **mode:**\n    - **Bloom:** glow from the bright areas.\n    - **Pro-Mist:** a diffusion filter in front of the lens. Soft glow, gentler contrast, the blacks stay deep.\n    - **Halation:** see LC Bloom · Halation below.\n- **intensity:** how strong the glow is.\n- **threshold:** only what is brighter than this glows. Lower = more of the picture glows.\n- **radius:** how far the glow spreads.\n- **saturation:** 0 = white glow, 1 = the light's own color.\n- 💡 A little is dreamy. A lot is fog.\n\n**LC Lens Profile**\n- The character of a real lens (Canon 50mm f/1.8, Helios 44-2, Sony FE 55mm, etc.): its distortion, color fringing and vignette.\n- **mode:** Add Aberrations adds the character. Correct Aberrations tries to take it out.\n- **strength:** how much lens character.\n\n**LC Bloom · Halation**\n- The same Bloom node, set to Halation: the red-orange glow film gets around bright edges. Not a pink wash.\n\n**LC Vignette**\n- Darkens (or brightens) the edges.\n- **intensity:** 0.1 - 0.25 = a real lens. 1 - 2 with **cos4_falloff** off = an old photo, up to black corners. Negative = brighter edges.\n- **midpoint:** where the darkening starts. Lower = closer to the middle.\n- **feather:** how soft the edge is. Low = a hard oval, high = a long gentle fade.\n- **cos4_falloff:** on = real lens light falloff. Off = a printed, old-photo vignette.\n\n**LC Film Stock (B&W)**\n- Real black and white film response: Ilford HP5, Kodak Tri-X, Fuji Acros, etc.\n- **color_filter:** the colored glass a B&W photographer screws on. Red darkens skies and smooths skin, green darkens lips and lifts foliage, etc.\n- 💡 Leave it off if you want color.\n\n**LC Film Stock (Color)**\n- Real color film: Portra, Gold, Superia, Cinestill 800T, Velvia, Ektachrome, etc.\n- **strength:** 💡 0.6 to 0.9 often looks more natural than full.\n\n---\n\n## 🎨 Post Production Filters\n\n**LC Directional Blur**\n- Motion blur along one angle. Drag the arrow on the node: its direction is the angle, how far you drag is the length.\n- **strength:** too much? Turn this down, not the distance.\n- **taps:** low (2 - 8) = a stepped double exposure look, high (64+) = a smooth streak.\n\n**LC Apply LUT**\n- A color grade from a `.cube` file.\n- **strength:** 0 = original, 1 = the full LUT. 0.2 to 0.4 is usually plenty for realism. Full strength is a sledgehammer.\n- **log:** leave it off unless the LUT was made for log footage (the name typically says so).\n- Get free ones [Here](https://freshluts.com/)\n- Drop your `.cube` files here:\n```\nComfyUI/\n└── models/\n    └── luts/\n        ├── your_look.cube\n        ├── film_emulation.cube\n        └── ...\n```\n\n**LC Phone Filters 📱**\n- 37 phone-app looks (1977, Aden, Brooklyn, Xpro2, etc.). Basically Instagram filters.\n- **strength:** 0 = Original\n\n**LC Natural Look 🍃**\n- Takes the AI look out: calms loud colors and orange, plastic skin, rolls the highlights off instead of clipping them, cuts the glossy glow and lifts fine texture.\n- Your black point, contrast and brightness stay where they were.\n- **strength:** how much of the AI look comes out. 0.4 - 0.75 for most renders. **0.5** is the tested realism setting.\n- **skin:** how much orange / plastic skin is calmed, on top of strength. 0 = skin untouched. **0.75** tested best.\n\n**LC Film Grain**\n- Grain on the finished picture. It is the last effect, so nothing after it mistakes the grain for detail.\n- **response:** where the grain shows.\n    - **classic:** mostly the midtones (the old look).\n    - **film:** strongest in the shadows and midtones, gone in the highlights, like a negative.\n    - **sensor:** phone and digital camera noise. Grows with the light, shows most in the shadows, and blue is the noisiest. The realism pick.\n- **strength:** how much grain. A little goes a long way. **0.22** is the tested realism setting.\n- **grain_size:** how big each grain is. Scales with the picture size.\n- **color_grain:** 0 = mono grain, 1 = color speckle. **0.2** for realism.\n- The seed comes from the workflow, so the grain stays the same from run to run.\n\n**LC Text Overlay**\n- Text on the final picture. Drag it on the preview to place it.\n- **font, font_size, color_r / g / b, alignment:** set them on the node, the preview updates live.\n\n**LC Watermark 💧**\n- Any image as a watermark. Drag it on the preview to place it.\n- **size_percent:** its width as a % of the picture. **opacity:** 0 - 1.\n- 💡 Using a transparent PNG? Wire Load Image's **MASK** into **watermark_mask** so the see-through parts stay see-through.\n\n---\n\n*\"True Nothing is. Permitted Everything is\"*- Yoda Auditore, **Assassin's Wars**\n"
      },
      "color": "#2E3A46",
      "bgcolor": "#2E3A46"
    },
    {
      "id": 4934,
      "type": "LCLabel",
      "pos": [
        1400,
        -270
      ],
      "size": [
        577,
        45
      ],
      "flags": {
        "pinned": true
      },
      "order": 88,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "properties": {
        "text": "Hover over any node for a before/ after\nWipe can be turned off/on to save VRAM in the ⚙️settings area of ComfyUI",
        "font": "Arial",
        "size": 16,
        "bold": true,
        "italic": false,
        "color": "#ffffff",
        "align": "center",
        "outline": false,
        "outlineColor": "#000000",
        "outlineWidth": 4,
        "shadow": false,
        "shadowBlur": 10,
        "bg": false,
        "bgColor": "#324B4B",
        "radius": 12,
        "padding": 8,
        "angle": 0,
        "width": 0,
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "5e17279ba425b994aa8e657426e45f1a752f1e6a",
        "Node name for S&R": "LCLabel",
        "_w": 577,
        "_h": 45,
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#fff0",
      "bgcolor": "#fff0"
    },
    {
      "id": 4935,
      "type": "LCClarity",
      "pos": [
        460,
        -1000
      ],
      "size": [
        300,
        670
      ],
      "flags": {
        "pinned": true
      },
      "order": 197,
      "mode": 4,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46668
        },
        {
          "name": "skin_mask",
          "shape": 7,
          "type": "MASK",
          "link": 47140
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            46666,
            46683
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "4ac98869e5f9ef0a5382ec86d105271257c09267",
        "Node name for S&R": "LCClarity",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "aux_id": "lonecatone23/ComfyUI_LC123_nodes",
        "lc_preview_meta": [
          {
            "filename": "lc_after_temp_vqzkq_00006_.png",
            "subfolder": "",
            "type": "temp",
            "metadata": {
              "kind": "image",
              "width": 5712,
              "height": 4272
            },
            "id": "d06345bb-3dbc-44d1-a27a-948cd847e2f6"
          }
        ],
        "lc_before_meta": [
          {
            "filename": "lc_before_temp_vqzkq_00006_.png",
            "subfolder": "",
            "type": "temp",
            "metadata": {
              "kind": "image",
              "width": 5712,
              "height": 4272
            },
            "id": "25b3033e-249f-4a9c-a650-8b139ba127c3"
          }
        ]
      },
      "widgets_values": [
        "Natural",
        0.2,
        0.3,
        0.7,
        0.7,
        0.6,
        0.3,
        "Soft Light",
        0.25,
        0.25,
        0.15
      ],
      "widgets_values_named": {
        "preset": "Natural",
        "clarity": 0.2,
        "sharpen": 0.3,
        "strength": 0.7,
        "halo": 0.7,
        "skin_protect": 0.6,
        "radius": 0.3,
        "blend_mode": "Soft Light",
        "shadow_protect": 0.25,
        "highlight_protect": 0.25,
        "texture": 0.15
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 4936,
      "type": "LCAutoWhiteBalance",
      "pos": [
        150,
        -820
      ],
      "size": [
        300,
        490
      ],
      "flags": {
        "pinned": true
      },
      "order": 177,
      "mode": 4,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46669
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            46668,
            46682
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "4ac98869e5f9ef0a5382ec86d105271257c09267",
        "Node name for S&R": "LCAutoWhiteBalance",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "aux_id": "lonecatone23/ComfyUI_LC123_nodes",
        "lc_preview_meta": [
          {
            "filename": "lc_after_temp_dfato_00001_.png",
            "subfolder": "",
            "type": "temp"
          }
        ],
        "lc_before_meta": [
          {
            "filename": "lc_before_temp_dfato_00001_.png",
            "subfolder": "",
            "type": "temp"
          }
        ]
      },
      "widgets_values": [
        "Shades of Gray",
        6,
        1
      ],
      "widgets_values_named": {
        "method": "Shades of Gray",
        "minkowski_p": 6,
        "strength": 1
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 4937,
      "type": "LCBloom",
      "pos": [
        150,
        -200
      ],
      "size": [
        300,
        600
      ],
      "flags": {
        "pinned": true
      },
      "order": 246,
      "mode": 0,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46670
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            46663,
            46687
          ]
        }
      ],
      "title": "LC Bloom ⬅️",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "4ac98869e5f9ef0a5382ec86d105271257c09267",
        "Node name for S&R": "LCBloom",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "aux_id": "lonecatone23/ComfyUI_LC123_nodes",
        "lc_preview_meta": [
          {
            "filename": "lc_after_temp_tygps_00005_.png",
            "subfolder": "",
            "type": "temp",
            "metadata": {
              "kind": "image",
              "width": 3008,
              "height": 3808
            },
            "id": "8c6f29f4-65ac-4e19-bd04-fc618d36a08d"
          }
        ],
        "lc_before_meta": [
          {
            "filename": "lc_before_temp_tygps_00005_.png",
            "subfolder": "",
            "type": "temp",
            "metadata": {
              "kind": "image",
              "width": 3008,
              "height": 3808
            },
            "id": "08cac4d8-5f4e-44f4-a697-f94e8b7b67a3"
          }
        ]
      },
      "widgets_values": [
        0.2,
        0.6,
        0.5,
        2,
        0.75,
        1,
        "Pro-Mist",
        "Custom"
      ],
      "widgets_values_named": {
        "intensity": 0.2,
        "threshold": 0.6,
        "smoothing": 0.5,
        "radius": 2,
        "saturation": 0.75,
        "exposure": 1,
        "mode": "Pro-Mist",
        "look": "Custom"
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 4938,
      "type": "LCPhoneFilters",
      "pos": [
        150,
        800
      ],
      "size": [
        300,
        470
      ],
      "flags": {
        "pinned": true
      },
      "order": 259,
      "mode": 4,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46671
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            46664,
            46695
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "b63c1e08d90fb1fa8d6d080a57170516e52f2385",
        "Node name for S&R": "LCPhoneFilters",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "lc_preview_meta": [
          {
            "filename": "lc_after_temp_cjuvy_00003_.png",
            "subfolder": "",
            "type": "temp"
          }
        ],
        "lc_before_meta": [
          {
            "filename": "lc_before_temp_cjuvy_00003_.png",
            "subfolder": "",
            "type": "temp"
          }
        ]
      },
      "widgets_values": [
        "1977",
        1
      ],
      "widgets_values_named": {
        "preset": "1977",
        "strength": 1
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 4939,
      "type": "LCPreviewMask",
      "pos": [
        770,
        -740
      ],
      "size": [
        300,
        410
      ],
      "flags": {
        "pinned": true
      },
      "order": 178,
      "mode": 0,
      "inputs": [
        {
          "name": "mask",
          "shape": 7,
          "type": "MASK",
          "link": 46672
        }
      ],
      "outputs": [
        {
          "name": "mask",
          "type": "MASK",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "5e17279ba425b994aa8e657426e45f1a752f1e6a",
        "Node name for S&R": "LCPreviewMask",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        ""
      ],
      "widgets_values_named": {
        "lc_preview": ""
      },
      "color": "#222",
      "bgcolor": "#000"
    },
    {
      "id": 4940,
      "type": "LCColorMatch",
      "pos": [
        -160,
        -870
      ],
      "size": [
        300,
        540
      ],
      "flags": {
        "pinned": true
      },
      "order": 152,
      "mode": 4,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46673
        },
        {
          "name": "reference",
          "shape": 7,
          "type": "IMAGE",
          "link": 46674
        },
        {
          "name": "mask",
          "shape": 7,
          "type": "MASK",
          "link": null
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            46669,
            46681
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "4ac98869e5f9ef0a5382ec86d105271257c09267",
        "Node name for S&R": "LCColorMatch",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "aux_id": "lonecatone23/ComfyUI_LC123_nodes",
        "lc_preview_meta": [
          {
            "filename": "lc_after_temp_rypka_00001_.png",
            "subfolder": "",
            "type": "temp"
          }
        ],
        "lc_before_meta": [
          {
            "filename": "lc_before_temp_rypka_00001_.png",
            "subfolder": "",
            "type": "temp"
          }
        ]
      },
      "widgets_values": [
        "adain",
        1,
        0.5
      ],
      "widgets_values_named": {
        "method": "adain",
        "strength": 1,
        "skin_protect": 0.5
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 4941,
      "type": "LCVibrance",
      "pos": [
        -160,
        -120
      ],
      "size": [
        300,
        520
      ],
      "flags": {
        "pinned": true
      },
      "order": 239,
      "mode": 4,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46675
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            46670,
            46686
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "4ac98869e5f9ef0a5382ec86d105271257c09267",
        "Node name for S&R": "LCVibrance",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "aux_id": "lonecatone23/ComfyUI_LC123_nodes",
        "lc_preview_meta": [
          {
            "filename": "lc_after_temp_ryfvo_00002_.png",
            "subfolder": "",
            "type": "temp",
            "metadata": {
              "kind": "image",
              "width": 4272,
              "height": 5712
            },
            "id": "2378631d-565d-4d58-b9fa-bac4c64dce01"
          }
        ],
        "lc_before_meta": [
          {
            "filename": "lc_before_temp_ryfvo_00002_.png",
            "subfolder": "",
            "type": "temp",
            "metadata": {
              "kind": "image",
              "width": 4272,
              "height": 5712
            },
            "id": "b216fe2f-59df-4f75-a309-0bca892529d2"
          }
        ]
      },
      "widgets_values": [
        100,
        0,
        true,
        1
      ],
      "widgets_values_named": {
        "vibrance": 100,
        "saturation": 0,
        "protect_skin": true,
        "strength": 1
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 4942,
      "type": "LCApplyLUT",
      "pos": [
        -160,
        750
      ],
      "size": [
        300,
        520
      ],
      "flags": {
        "pinned": true
      },
      "order": 258,
      "mode": 0,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46676
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            46671,
            46694
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "fd45171f9af29d6bb018d9bbf35524262c62b66c",
        "Node name for S&R": "LCApplyLUT",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "lc_preview_meta": [
          {
            "filename": "lc_after_temp_lvalx_00005_.png",
            "subfolder": "",
            "type": "temp",
            "metadata": {
              "kind": "image",
              "width": 3008,
              "height": 3808
            },
            "id": "479830d6-057d-41a8-abc3-249f414ceebe"
          }
        ],
        "lc_before_meta": [
          {
            "filename": "lc_before_temp_lvalx_00005_.png",
            "subfolder": "",
            "type": "temp",
            "metadata": {
              "kind": "image",
              "width": 3008,
              "height": 3808
            },
            "id": "b3a26b6f-04b9-4a52-9ada-9d53fc7f9209"
          }
        ]
      },
      "widgets_values": [
        "LC Cool Breeze.cube",
        0.26,
        false,
        "tetrahedral"
      ],
      "widgets_values_named": {
        "lut_name": "LC Cool Breeze.cube",
        "strength": 0.26,
        "log": false,
        "interpolation": "tetrahedral"
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 4943,
      "type": "GetNode",
      "pos": [
        -90,
        560
      ],
      "size": [
        210,
        40
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 89,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "INT",
          "type": "INT",
          "links": [
            46662,
            46665
          ]
        }
      ],
      "title": "Get_Seed",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Seed"
      ],
      "widgets_values_named": {
        "Constant": "Seed"
      },
      "color": "#1b4669",
      "bgcolor": "#29699c"
    },
    {
      "id": 4944,
      "type": "SetNode",
      "pos": [
        -100,
        520
      ],
      "size": [
        210,
        40
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 267,
      "mode": 0,
      "inputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "link": 46677
        }
      ],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": []
        }
      ],
      "title": "Set_Pro Post",
      "properties": {
        "Node name for S&R": "SetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "previousName": "Pro Post",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Pro Post"
      ],
      "widgets_values_named": {
        "Constant": "Pro Post"
      },
      "color": "#2a363b",
      "bgcolor": "#3f5159"
    },
    {
      "id": 4945,
      "type": "LCBypassRelay",
      "pos": [
        920,
        -780
      ],
      "size": [
        240,
        100
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 227,
      "mode": 0,
      "inputs": [
        {
          "name": "any_1",
          "shape": 7,
          "type": "*",
          "link": 46678
        },
        {
          "name": "any_2",
          "type": "*",
          "link": 46679
        },
        {
          "name": "any_3",
          "type": "*",
          "link": null
        }
      ],
      "outputs": [
        {
          "name": "OPT_CONNECTION",
          "type": "*",
          "links": [
            46684
          ]
        }
      ],
      "title": "LC Depth FX 🌫️",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "5e17279ba425b994aa8e657426e45f1a752f1e6a",
        "Node name for S&R": "LCBypassRelay",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 4946,
      "type": "LC Bypasser",
      "pos": [
        -120,
        610
      ],
      "size": [
        290,
        1470
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 268,
      "mode": 0,
      "inputs": [
        {
          "name": "LC Image Crop 🖼️🔪",
          "type": "*",
          "link": 46680
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "LC Color Match 🎨",
          "type": "*",
          "link": 46681
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "LC Auto White Balance",
          "type": "*",
          "link": 46682
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "LC Sharpen Pro",
          "type": "*",
          "link": 46683
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "LC Depth FX 🌫️",
          "type": "*",
          "link": 46684
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "LC Lift Gamma Gain",
          "type": "*",
          "link": 46685
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "LC Vibrance",
          "type": "*",
          "link": 46686
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "LC Bloom ⬅️",
          "type": "*",
          "link": 46687
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "LC Lens Profile ⬅️",
          "type": "*",
          "link": 46688
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "LC Bloom · Halation ⬅️",
          "type": "*",
          "link": 46689
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "LC Vignette",
          "type": "*",
          "link": 46690
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "LC Film Stock (B&W)",
          "type": "*",
          "link": 46691
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "LC Film Stock (Color)",
          "type": "*",
          "link": 46692
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "LC Directional Blur",
          "type": "*",
          "link": 46693
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "LC Apply LUT",
          "type": "*",
          "link": 46694
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "LC Phone Filters 📱",
          "type": "*",
          "link": 46695
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "LC Natural Look 🍃",
          "type": "*",
          "link": 46697
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "LC Film Grain",
          "type": "*",
          "link": 47318
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "LC Text Overlay",
          "type": "*",
          "link": 47319
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "LC Watermark 💧",
          "type": "*",
          "link": 47320
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "LC Notify 🔊",
          "type": "*",
          "link": 47321
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        },
        {
          "name": "",
          "type": "*",
          "link": null
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        }
      ],
      "outputs": [
        {
          "name": "OPT_CONNECTION",
          "type": "*",
          "links": [
            46648
          ]
        }
      ],
      "properties": {
        "toggleRestriction": "default",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        false,
        false,
        false,
        false,
        true,
        false,
        false,
        true,
        true,
        true,
        false,
        false,
        false,
        false,
        true,
        false,
        true,
        true,
        false,
        false,
        true
      ],
      "widgets_values_named": {
        "Enable 1": false,
        "Enable 2": false,
        "Enable 3": false,
        "Enable 4": false,
        "Enable 5": true,
        "Enable 6": false,
        "Enable 7": false,
        "Enable 8": true,
        "Enable 9": true,
        "Enable 10": true,
        "Enable 11": false,
        "Enable 12": false,
        "Enable 13": false,
        "Enable 14": false,
        "Enable 15": true,
        "Enable 16": false,
        "Enable 17": true,
        "Enable 18": true,
        "Enable 19": false,
        "Enable 20": false,
        "Enable 21": true
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 4947,
      "type": "LCDepthAnythingV2",
      "pos": [
        770,
        -950
      ],
      "size": [
        300,
        130
      ],
      "flags": {
        "pinned": true
      },
      "order": 153,
      "mode": 0,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46701
        }
      ],
      "outputs": [
        {
          "name": "depth",
          "type": "IMAGE",
          "links": [
            46667,
            46678
          ]
        },
        {
          "name": "depth_mask",
          "type": "MASK",
          "links": [
            46672
          ]
        }
      ],
      "title": "LC Depth Anything V2 🗺️",
      "properties": {
        "cnr_id": "ComfyUI_LC_MaskMaker_nodes",
        "ver": "dc77bf3fda1a5d3cff9418bd86f22ab0a2a463a7",
        "Node name for S&R": "LCDepthAnythingV2",
        "ue_properties": {
          "widget_ue_connectable": {
            "resolution": true
          },
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Depth Anything V2 Large (CC-BY-NC-4.0)",
        518,
        false
      ],
      "widgets_values_named": {
        "model": "Depth Anything V2 Large (CC-BY-NC-4.0)",
        "resolution": 518,
        "invert": false
      },
      "color": "#324b4b",
      "bgcolor": "#324b4b"
    },
    {
      "id": 4948,
      "type": "LCLiftGammaGain",
      "pos": [
        -470,
        -140
      ],
      "size": [
        300,
        540
      ],
      "flags": {
        "pinned": true
      },
      "order": 228,
      "mode": 4,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46702
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            46675,
            46685
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "4ac98869e5f9ef0a5382ec86d105271257c09267",
        "Node name for S&R": "LCLiftGammaGain",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "aux_id": "lonecatone23/ComfyUI_LC123_nodes",
        "lc_preview_meta": [
          {
            "filename": "lc_after_temp_ebfpb_00001_.png",
            "subfolder": "",
            "type": "temp"
          }
        ],
        "lc_before_meta": [
          {
            "filename": "lc_before_temp_ebfpb_00001_.png",
            "subfolder": "",
            "type": "temp"
          }
        ]
      },
      "widgets_values": [
        0.01,
        1,
        0.9,
        0,
        0.5
      ],
      "widgets_values_named": {
        "lift": 0.01,
        "gamma": 1,
        "gain": 0.9,
        "offset": 0,
        "strength": 0.5
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 4949,
      "type": "LCDirectionalBlur",
      "pos": [
        -470,
        500
      ],
      "size": [
        300,
        770
      ],
      "flags": {
        "pinned": true
      },
      "order": 257,
      "mode": 4,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46661
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            46676,
            46693
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "b63c1e08d90fb1fa8d6d080a57170516e52f2385",
        "Node name for S&R": "LCDirectionalBlur",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "lc_preview_meta": [
          {
            "filename": "lc_after_temp_mrklr_00001_.png",
            "subfolder": "",
            "type": "temp"
          }
        ],
        "lc_before_meta": [
          {
            "filename": "lc_before_temp_mrklr_00001_.png",
            "subfolder": "",
            "type": "temp"
          }
        ]
      },
      "widgets_values": [
        314.717570393228,
        67.62454593641333,
        1,
        64,
        "mirror",
        ""
      ],
      "widgets_values_named": {
        "angle": 314.717570393228,
        "distance": 67.62454593641333,
        "strength": 1,
        "taps": 64,
        "edge": "mirror",
        "lc_db_face": ""
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 4950,
      "type": "LCImageCrop",
      "pos": [
        -470,
        -760
      ],
      "size": [
        300,
        430
      ],
      "flags": {
        "pinned": true
      },
      "order": 131,
      "mode": 4,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 46704
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            46673,
            46680,
            46701
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "4ac98869e5f9ef0a5382ec86d105271257c09267",
        "Node name for S&R": "LCImageCrop",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "aux_id": "lonecatone23/ComfyUI_LC123_nodes"
      },
      "widgets_values": [
        0,
        0,
        100,
        100,
        "free"
      ],
      "widgets_values_named": {
        "x": 0,
        "y": 0,
        "width": 100,
        "height": 100,
        "aspect": "free"
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 4951,
      "type": "GetNode",
      "pos": [
        -470,
        -1020
      ],
      "size": [
        210,
        40
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 90,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "*",
          "type": "*",
          "links": [
            46704
          ]
        }
      ],
      "title": "Get_Lighting Control 🔦",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Lighting Control 🔦"
      ],
      "widgets_values_named": {
        "Constant": "Lighting Control 🔦"
      }
    },
    {
      "id": 4952,
      "type": "GetNode",
      "pos": [
        -470,
        -980
      ],
      "size": [
        210,
        40
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 91,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            46674
          ]
        }
      ],
      "title": "Get_Org pic",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Org pic"
      ],
      "widgets_values_named": {
        "Constant": "Org pic"
      },
      "color": "#2a363b",
      "bgcolor": "#3f5159"
    },
    {
      "id": 4953,
      "type": "Label (rgthree)",
      "pos": [
        -240,
        -1050
      ],
      "size": [
        54.921875,
        40
      ],
      "flags": {
        "allow_interaction": false,
        "pinned": true
      },
      "order": 92,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "👈",
      "properties": {
        "fontSize": 40,
        "fontFamily": "Arial",
        "fontColor": "#ffffff",
        "textAlign": "left",
        "backgroundColor": "transparent",
        "padding": 0,
        "borderRadius": 0,
        "angle": 0,
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#fff0",
      "bgcolor": "#fff0"
    },
    {
      "id": 4955,
      "type": "LCEasyFolder",
      "pos": [
        -1470,
        180
      ],
      "size": [
        280,
        160
      ],
      "flags": {
        "collapsed": false,
        "pinned": true
      },
      "order": 137,
      "mode": 4,
      "inputs": [
        {
          "name": "prefix",
          "type": "STRING",
          "widget": {
            "name": "prefix"
          },
          "link": 47336
        }
      ],
      "outputs": [
        {
          "name": "filename_prefix",
          "type": "STRING",
          "links": [
            46727
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "79b81758ac54ba8f9b46ecf7682902e87dc26684",
        "Node name for S&R": "LCEasyFolder",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "aux_id": "lonecatone23/ComfyUI_LC123_nodes"
      },
      "widgets_values": [
        "Masks",
        "Test",
        "",
        "none",
        "auto"
      ],
      "widgets_values_named": {
        "folder": "Masks",
        "prefix": "Test",
        "suffix": "",
        "timestamp": "none",
        "path_separator": "auto"
      },
      "color": "#325A5A",
      "bgcolor": "#325A5A"
    },
    {
      "id": 4956,
      "type": "GetNode",
      "pos": [
        -1470,
        380
      ],
      "size": [
        210,
        50
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 93,
      "mode": 4,
      "inputs": [],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            46726
          ]
        }
      ],
      "title": "Get_Maskimg",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.5.1",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Maskimg"
      ],
      "widgets_values_named": {
        "Constant": "Maskimg"
      },
      "color": "#2a363b",
      "bgcolor": "#3f5159",
      "shape": 2
    },
    {
      "id": 4957,
      "type": "SaveImage",
      "pos": [
        -1470,
        420
      ],
      "size": [
        270,
        270
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 161,
      "mode": 4,
      "inputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "link": 46726
        },
        {
          "name": "filename_prefix",
          "type": "STRING",
          "widget": {
            "name": "filename_prefix"
          },
          "link": 46727
        }
      ],
      "outputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.3.67",
        "Node name for S&R": "SaveImage",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.5.1"
        },
        "enableTabs": false,
        "tabWidth": 65,
        "tabXOffset": 10,
        "hasSecondTab": false,
        "secondTabText": "Send Back",
        "secondTabOffset": 80,
        "secondTabWidth": 65
      },
      "widgets_values": [
        "ComfyUI"
      ],
      "widgets_values_named": {
        "filename_prefix": "ComfyUI"
      },
      "color": "#233",
      "bgcolor": "#355",
      "shape": 2
    },
    {
      "id": 4958,
      "type": "LCLabel",
      "pos": [
        -1319.5,
        350
      ],
      "size": [
        106,
        56
      ],
      "flags": {
        "pinned": true
      },
      "order": 94,
      "mode": 4,
      "inputs": [],
      "outputs": [],
      "properties": {
        "text": "will turn red if 🥅 controlnet is not on",
        "font": "Arial",
        "size": 14,
        "bold": true,
        "italic": false,
        "color": "#ffffff",
        "align": "center",
        "outline": false,
        "outlineColor": "#000000",
        "outlineWidth": 4,
        "shadow": false,
        "shadowBlur": 10,
        "bg": false,
        "bgColor": "#324B4B",
        "radius": 12,
        "padding": 8,
        "angle": 0,
        "width": 107,
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "4fd5f0ac20486827d616e2bed54e405b82466dd2",
        "Node name for S&R": "LCLabel",
        "_w": 106,
        "_h": 56,
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#fff0",
      "bgcolor": "#fff0"
    },
    {
      "id": 4959,
      "type": "LCLight",
      "pos": [
        -960,
        -2910
      ],
      "size": [
        120,
        40
      ],
      "flags": {
        "pinned": true
      },
      "order": 124,
      "mode": 4,
      "inputs": [
        {
          "label": " ",
          "name": "value",
          "type": "BOOLEAN",
          "link": 46921
        }
      ],
      "outputs": [],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "e7e61c1a9aa6f5c2ffff4f4c1b28835792db1a52",
        "Node name for S&R": "LCLight",
        "true_color": "#3ddc5a",
        "false_color": "#e5484d",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        ""
      ],
      "widgets_values_named": {
        "lc_light_face": ""
      },
      "color": "#000000",
      "bgcolor": "#000000"
    },
    {
      "id": 4960,
      "type": "LCLight",
      "pos": [
        -650,
        -2910
      ],
      "size": [
        120,
        40
      ],
      "flags": {
        "pinned": true
      },
      "order": 125,
      "mode": 4,
      "inputs": [
        {
          "label": " ",
          "name": "value",
          "type": "BOOLEAN",
          "link": 46922
        }
      ],
      "outputs": [],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "e7e61c1a9aa6f5c2ffff4f4c1b28835792db1a52",
        "Node name for S&R": "LCLight",
        "true_color": "#e5484d",
        "false_color": "#3ddc5a",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        ""
      ],
      "widgets_values_named": {
        "lc_light_face": ""
      },
      "color": "#000000",
      "bgcolor": "#000000"
    },
    {
      "id": 4961,
      "type": "LCPersonMask",
      "pos": [
        -3960,
        -920
      ],
      "size": [
        290,
        490
      ],
      "flags": {
        "pinned": true
      },
      "order": 154,
      "mode": 0,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 47122
        }
      ],
      "outputs": [
        {
          "name": "cutout",
          "type": "IMAGE",
          "links": []
        },
        {
          "name": "mask",
          "type": "MASK",
          "links": [
            47127,
            47132,
            47138
          ]
        },
        {
          "name": "raw_mask",
          "type": "MASK",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC_MaskMaker_nodes",
        "ver": "3f344dd1f4d2e4dbe30b35e08757f8f4d60cb000",
        "Node name for S&R": "LCPersonMask",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "segformer",
        "models/segformer_b2_clothes (local)",
        true,
        false,
        true,
        false,
        false,
        false,
        0.4,
        "vitmatte",
        "models/vitmatte (local)",
        10,
        10,
        0.01,
        0.99,
        2,
        false
      ],
      "widgets_values_named": {
        "engine": "segformer",
        "segformer_model": "models/segformer_b2_clothes (local)",
        "face": true,
        "hair": false,
        "body": true,
        "clothes": false,
        "accessories": false,
        "background": false,
        "confidence": 0.4,
        "refine": "vitmatte",
        "vitmatte_model": "models/vitmatte (local)",
        "edge_erode": 10,
        "edge_dilate": 10,
        "black_point": 0.01,
        "white_point": 0.99,
        "max_megapixels": 2,
        "remove_features": false
      },
      "color": "#324b4b",
      "bgcolor": "#324b4b"
    },
    {
      "id": 4962,
      "type": "LCImageDenoise",
      "pos": [
        -4270,
        -1040
      ],
      "size": [
        300,
        610
      ],
      "flags": {
        "pinned": true
      },
      "order": 132,
      "mode": 0,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 47123
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            47122,
            47126,
            47130
          ]
        },
        {
          "name": "noise_report",
          "type": "STRING",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "4ac98869e5f9ef0a5382ec86d105271257c09267",
        "Node name for S&R": "LCImageDenoise",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "aux_id": "lonecatone23/ComfyUI_LC123_nodes",
        "lc_preview_meta": [
          {
            "filename": "lc_after_temp_bohlx_00006_.png",
            "subfolder": "",
            "type": "temp",
            "metadata": {
              "kind": "image",
              "width": 3008,
              "height": 3808
            },
            "id": "c9e0cf41-2042-432d-b127-de5edbbfbba3"
          }
        ],
        "lc_before_meta": [
          {
            "filename": "lc_before_temp_bohlx_00006_.png",
            "subfolder": "",
            "type": "temp",
            "metadata": {
              "kind": "image",
              "width": 3008,
              "height": 3808
            },
            "id": "16122999-369e-4e66-a146-c56af5f54a89"
          }
        ]
      },
      "widgets_values": [
        1,
        0.049,
        1,
        0.3,
        "smart",
        1,
        1,
        0.5
      ],
      "widgets_values_named": {
        "blur_strength": 1,
        "edge_preservation": 0.049,
        "radius_multiplier": 1,
        "strength": 0.3,
        "mode": "smart",
        "luma": 1,
        "chroma": 1,
        "keep_detail": 0.5
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 4963,
      "type": "LCBatchImageComparer",
      "pos": [
        -2680,
        -1070
      ],
      "size": [
        430,
        640
      ],
      "flags": {
        "pinned": true
      },
      "order": 198,
      "mode": 0,
      "inputs": [
        {
          "label": "Before",
          "name": "image_a",
          "shape": 7,
          "type": "IMAGE",
          "link": 47124
        },
        {
          "label": "Skin detailed",
          "name": "image_b",
          "shape": 7,
          "type": "IMAGE",
          "link": 47125
        }
      ],
      "outputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "links": []
        }
      ],
      "title": "Skin Compare",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "1d09f85e3bed224313a6fa77f3f79c632d6004ae",
        "Node name for S&R": "LCBatchImageComparer",
        "comparer_mode": "Slide",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 4964,
      "type": "LCSkinMaster",
      "pos": [
        -3390,
        -980
      ],
      "size": [
        700,
        540
      ],
      "flags": {
        "pinned": true
      },
      "order": 179,
      "mode": 0,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 47126
        },
        {
          "name": "mask",
          "shape": 7,
          "type": "MASK",
          "link": 47127
        },
        {
          "name": "seed",
          "type": "INT",
          "widget": {
            "name": "seed"
          },
          "link": 47128
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            47125,
            47136,
            47139
          ]
        },
        {
          "name": "skin_mask",
          "type": "MASK",
          "links": [
            47129
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "9e2b116f51ee00939bd292cf6b5441a10923dd02",
        "Node name for S&R": "LCSkinMaster",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "lc_preview_meta": [
          {
            "filename": "lc_after_temp_hbppi_00006_.png",
            "subfolder": "",
            "type": "temp",
            "metadata": {
              "kind": "image",
              "width": 3008,
              "height": 3808
            },
            "id": "1ca97122-f5cd-42a2-9822-a5f906df49c2"
          }
        ],
        "lc_before_meta": [
          {
            "filename": "lc_before_temp_hbppi_00006_.png",
            "subfolder": "",
            "type": "temp",
            "metadata": {
              "kind": "image",
              "width": 3008,
              "height": 3808
            },
            "id": "2befc9c3-a557-4a77-a023-9421c8418282"
          }
        ]
      },
      "widgets_values": [
        "Real Skin Restore",
        0.5,
        0.2,
        1.2,
        0.6,
        1,
        0.05,
        0,
        0.1,
        0.3,
        0.5,
        -0.2,
        0.05,
        0.03,
        -0.05,
        0.1,
        0,
        "randomize",
        true,
        1
      ],
      "widgets_values_named": {
        "preset": "Real Skin Restore",
        "strength": 0.5,
        "clean": 0.2,
        "pores": 1.2,
        "add_pores": 0.6,
        "pore_size": 1,
        "even_skin": 0.05,
        "wrinkles": 0,
        "even_colour": 0.1,
        "pigmentation": 0.3,
        "eye_detail": 0.5,
        "warmth": -0.2,
        "brightness": 0.05,
        "rosy": 0.03,
        "saturation": -0.05,
        "shadow_lift": 0.1,
        "seed": 0,
        "control_after_generate": "randomize",
        "delicate_skin": true,
        "skin_match": 1
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 4965,
      "type": "LCNote",
      "pos": [
        -4720,
        -1060
      ],
      "size": [
        430,
        630
      ],
      "flags": {
        "pinned": true
      },
      "order": 95,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "Skins stuffs",
      "properties": {
        "lc_note": {
          "source": "en",
          "texts": {
            "en": {
              "text": "## LC Image Denoise\n- Kills decode grit so the skin nodes after it do not amplify noise.\n- **mode: smart** (default) measures the noise in each image, so the same settings work on clean and noisy renders. **legacy** is the old edge-gated blur.\n- **luma:** how hard grain is cleaned. **chroma:** color blotches and rainbow speckle. Raise chroma first, it costs the least detail.\n- **keep_detail:** brings back pores and hair where they stand above the noise. Lower it if grit comes back.\n- **strength:** 0 = original, 1 = fully denoised (0.75 default).\n- **noise_report** tells you how noisy each image actually was. Low number? Leave it alone.\n\n### LC Person Mask 🧍(Optional)\n\n**It's optional.** If all you care about is faces, then you do not need it. The node will find them by itself. It will also grab skin about 50% of the time. However, if you want **all** skin and make sure it misses clothes, then use it.\n**Settings**\n- **engine: mediapipe**, **face** + **body**, **remove_features** on. Mediapipe's body includes torso and neck skin (segformer's is arms and legs only).\n- **remove_features** cuts eyes, brows, lips and teeth out with SAM 3, so the nodes below never smooth or texture them.\n\n\n## LC Skin Master ✨\n\n**What is it?**\n- Your whole skin chain in one node: grit, pores, blemishes, lines, freckles, eyes, skin tone and colour. Each one done once, in order, on one skin map.\n\n- 💡Plug the **skin_mask** into **LC Sharpen Pro**, so skin_protect covers all the skin instead of the part a colour guess finds.\n- ✋ **First run downloads about 80 MB** (face finders) into `models/facexlib`.\n\n**Settings ⚙️**\n\n**Presets**: \n- **Natural** for every day. \n- **Soft Beauty** for images with makeup.\n- **Editorial Detail** for close-ups (sharp 🗡️)\n- **Real Skin Restore** for plastic skin\n- **Weathered** for character (my favorite in most cases)\n- **Sun-Kissed** for freckles. \n- *Moving a slider switches to Custom.*\n\n**Sliders:**\n\n- **pores**: 1 = as it is. Keep it at 1 or more with **pigmentation**, or the freckles look painted on.\n- **add_pores**: for skin that has none. Skin with detail gets less on its own.\n- **wrinkles**: below 0 softens, above 0 deepens the lines already there.\n- **warmth**: below 0 calms orange AI skin.\n- **eye_detail**: crisper lashes and a lifted iris around a dark pupil, so the eyes look alive. 0.5 default, 1.0 is the top.\n\n\n---\n**Credits:**\n\nSkin finding and the retouch adapted from sd-living-skin by sca-285 (MIT) [Here](https://github.com/sca-285/sd-living-skin)\n\n"
            },
            "zh": {
              "text": "## LC Image Denoise\n- 消除解码产生的颗粒感，这样它后面的皮肤节点就不会放大噪点。\n- **mode: smart**（默认）会测量每张图的噪点，所以同样的设置对干净和有噪点的渲染都适用。**legacy** 是旧的边缘门控模糊。\n- **luma：**清理颗粒的力度。**chroma：**色斑和彩虹状斑点。先调高 chroma，它损失的细节最少。\n- **keep_detail：**把高于噪点的毛孔和毛发找回来。如果颗粒感又回来了，就调低它。\n- **strength：**0 = 原图，1 = 完全去噪（默认 0.75）。\n- **noise_report** 会告诉你每张图实际的噪点程度。数值低？别动它。\n\n### LC Person Mask 🧍(可选)\n\n**它是可选的。**如果你只关心人脸，就不需要它。节点会自己找到人脸。它大约有 50% 的概率也能抓到皮肤。但如果你想要**全部**皮肤并确保避开衣服，就用它。\n**设置**\n- **engine: mediapipe**、**face** + **body**、**remove_features** 开启。Mediapipe 的 body 包含躯干和脖子的皮肤（segformer 的只有手臂和腿）。\n- **remove_features** 用 SAM 3 把眼睛、眉毛、嘴唇和牙齿抠掉，这样下面的节点就不会对它们做平滑或加质感。\n\n\n## LC Skin Master ✨\n\n**这是什么？**\n- 你整条皮肤处理链集于一个节点：颗粒、毛孔、瑕疵、纹路、雀斑、眼睛、肤色和色彩。每一项只做一次，按顺序，在同一张皮肤图上完成。\n\n- 💡把 **skin_mask** 接到 **LC Sharpen Pro** 上，这样 skin_protect 就能覆盖所有皮肤，而不只是颜色猜测找到的那部分。\n- ✋ **首次运行会下载约 80 MB**（人脸检测器）到 `models/facexlib`。\n\n**设置 ⚙️**\n\n**预设**： \n- **Natural** 日常使用。 \n- **Soft Beauty** 用于带妆的图像。\n- **Editorial Detail** 用于特写（锐利 🗡️）\n- **Real Skin Restore** 用于塑料感皮肤\n- **Weathered** 用于有性格的角色（大多数情况下我的最爱）\n- **Sun-Kissed** 用于雀斑。 \n- *移动任何滑块都会切换到 Custom。*\n\n**滑块：**\n\n- **pores**：1 = 保持原样。和 **pigmentation** 一起时保持在 1 或更高，否则雀斑看起来像画上去的。\n- **add_pores**：用于没有毛孔的皮肤。本身有细节的皮肤会少加一些。\n- **wrinkles**：低于 0 是柔化，高于 0 是加深已有的纹路。\n- **warmth**：低于 0 可以压住 AI 皮肤的橙色。\n- **eye_detail**: 睫毛更清晰，深色瞳孔周围的虹膜被提亮，眼睛更有神。默认 0.5，最高 1.0。\n\n\n---\n**致谢：**\n\n皮肤检测和修饰改编自 sca-285 的 sd-living-skin (MIT) [这里](https://github.com/sca-285/sd-living-skin)\n\n\n",
              "src": "d4863c28",
              "srcTitle": "Skins stuffs"
            },
            "ja": {
              "text": "## LC Image Denoise\n- デコードのザラつきを消して、後段のスキンノードがノイズを増幅しないようにします。\n- **mode: smart**(デフォルト)は画像ごとにノイズを測定するので、きれいな画像でもノイズの多い画像でも同じ設定が使えます。**legacy** は従来のエッジゲート付きブラーです。\n- **luma:** グレインをどれだけ強く除去するか。**chroma:** 色のまだらや虹色のブツブツ。先に chroma を上げてください。ディテールの損失が最も小さいです。\n- **keep_detail:** ノイズより際立っている毛穴や髪を戻します。ザラつきが戻ってきたら下げてください。\n- **strength:** 0 = 元のまま、1 = 完全に denoise(デフォルトは 0.75)。\n- **noise_report** は、各画像が実際にどれだけノイズを持っていたかを教えてくれます。数値が低い? 触らなくて大丈夫です。\n\n### LC Person Mask 🧍(オプション)\n\n**オプションです。** 顔だけが目的なら要りません。ノードが自分で見つけます。肌も半分くらいの確率で拾います。ですが、肌を**すべて**対象にして、服を確実に外したいなら、これを使ってください。\n**設定**\n- **engine: mediapipe**、**face** + **body**、**remove_features** オン。Mediapipe の body には胴体と首の肌が含まれます(segformer は腕と脚だけです)。\n- **remove_features** は SAM 3 で目、眉、唇、歯を切り抜くので、下のノードがそこをなめらかにしたりテクスチャを足したりすることはありません。\n\n\n## LC Skin Master ✨\n\n**これは何?**\n- 肌のチェーン全体を1つのノードにまとめたものです: ザラつき、毛穴、シミ、シワ、そばかす、目、肌のトーンと色。それぞれが、1枚のスキンマップに対して順番に1回ずつ処理されます。\n\n- 💡 **skin_mask** を **LC Sharpen Pro** につなぐと、skin_protect が、色の推測で見つかった部分だけでなく、肌全体をカバーします。\n- ✋ **初回実行時に約 80 MB**(顔検出モデル)が `models/facexlib` にダウンロードされます。\n\n**設定 ⚙️**\n\n**プリセット**: \n- **Natural** は普段使い。 \n- **Soft Beauty** はメイクをした画像向け。\n- **Editorial Detail** はクローズアップ向け(シャープ 🗡️)\n- **Real Skin Restore** はプラスチックっぽい肌向け\n- **Weathered** は個性づけ向け(ほとんどの場合、私のお気に入り)\n- **Sun-Kissed** はそばかす向け。 \n- *スライダーを動かすと Custom に切り替わります。*\n\n**スライダー:**\n\n- **pores**: 1 = そのまま。**pigmentation** と一緒に 1 以上にしておかないと、そばかすが描き込んだように見えます。\n- **add_pores**: 毛穴のない肌向け。ディテールのある肌には自動で少なくなります。\n- **wrinkles**: 0 未満でぼかし、0 より上で既にあるシワを深くします。\n- **warmth**: 0 未満で、オレンジっぽい AI 肌をおとなしくします。\n- **eye_detail**: まつ毛をくっきりさせ、暗い瞳孔のまわりの虹彩を明るくして、目に生気を出します。デフォルトは0.5、1.0が上限です。\n\n\n---\n**クレジット:**\n\n肌の検出とレタッチは、sca-285 の sd-living-skin (MIT) を元にしています [こちら](https://github.com/sca-285/sd-living-skin)\n\n",
              "src": "d4863c28",
              "srcTitle": "Skins stuffs"
            },
            "ko": {
              "text": "## LC Image Denoise\n- 디코드에서 생긴 거친 노이즈를 없애서, 뒤에 오는 피부 노드가 노이즈를 증폭하지 않게 합니다.\n- **mode: smart** (기본값)는 이미지마다 노이즈를 측정하므로 같은 설정이 깨끗한 렌더와 노이즈 많은 렌더 모두에 통합니다. **legacy**는 예전의 edge-gated blur입니다.\n- **luma:** 그레인을 얼마나 강하게 정리할지. **chroma:** 색 얼룩과 무지개빛 점. chroma를 먼저 올리세요. 디테일 손실이 가장 적습니다.\n- **keep_detail:** 노이즈 위로 두드러지는 모공과 털을 되살립니다. 노이즈가 다시 생기면 낮추세요.\n- **strength:** 0 = 원본, 1 = 완전 denoise (기본값 0.75).\n- **noise_report**는 각 이미지에 실제로 노이즈가 얼마나 있었는지 알려 줍니다. 숫자가 낮으면 건드리지 마세요.\n\n### LC Person Mask 🧍(선택)\n\n**선택 사항입니다.** 얼굴만 신경 쓴다면 필요 없습니다. 노드가 알아서 얼굴을 찾습니다. 피부도 50% 정도는 잡아냅니다. 하지만 **모든** 피부를 잡으면서 옷은 확실히 피하고 싶다면 쓰세요.\n**설정**\n- **engine: mediapipe**, **face** + **body**, **remove_features** 켜기. Mediapipe의 body는 몸통과 목 피부를 포함합니다 (segformer는 팔과 다리만).\n- **remove_features**는 SAM 3로 눈, 눈썹, 입술, 치아를 잘라내서, 아래의 노드들이 그 부분을 매끄럽게 하거나 질감을 입히지 않게 합니다.\n\n\n## LC Skin Master ✨\n\n**이게 뭔가요?**\n- 피부 체인 전체를 노드 하나에 담았습니다. 노이즈, 모공, 잡티, 주름, 주근깨, 눈, 피부 톤, 색까지. 각각 한 번씩, 순서대로, 하나의 피부 맵 위에서 처리합니다.\n\n- 💡**skin_mask**를 **LC Sharpen Pro**에 연결하면, skin_protect가 색으로 추측한 부분이 아니라 모든 피부를 감쌉니다.\n- ✋ **첫 실행 때 약 80 MB**(얼굴 검출기)를 `models/facexlib`에 다운로드합니다.\n\n**설정 ⚙️**\n\n**프리셋**: \n- **Natural**: 일상용. \n- **Soft Beauty**: 메이크업한 이미지용.\n- **Editorial Detail**: 클로즈업용 (날카로움 🗡️)\n- **Real Skin Restore**: 플라스틱 같은 피부용\n- **Weathered**: 캐릭터용 (대부분의 경우 제가 제일 좋아하는 것)\n- **Sun-Kissed**: 주근깨용. \n- *슬라이더를 움직이면 Custom으로 바뀝니다.*\n\n**슬라이더:**\n\n- **pores**: 1 = 그대로. **pigmentation**과 함께 쓸 때는 1 이상으로 두세요. 아니면 주근깨가 그려 넣은 것처럼 보입니다.\n- **add_pores**: 모공이 없는 피부용. 이미 디테일이 있는 피부에는 알아서 덜 적용됩니다.\n- **wrinkles**: 0 미만은 부드럽게, 0 초과는 이미 있는 주름을 더 깊게 합니다.\n- **warmth**: 0 미만은 AI 특유의 주황빛 피부를 가라앉힙니다.\n- **eye_detail**: 속눈썹을 또렷하게 하고 어두운 동공 주변의 홍채를 밝혀 눈에 생기를 줍니다. 기본값 0.5, 최대 1.0.\n\n\n---\n**크레딧:**\n\n피부 검출과 리터치는 sca-285의 sd-living-skin(MIT)을 각색했습니다 [여기](https://github.com/sca-285/sd-living-skin)\n\n",
              "src": "d4863c28",
              "srcTitle": "Skins stuffs"
            }
          },
          "titles": {
            "en": "Skins stuffs",
            "zh": "皮肤相关",
            "ja": "スキン関連",
            "ko": "피부 관련 도구"
          }
        },
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "English ✏️",
        "## LC Image Denoise\n- Kills decode grit so the skin nodes after it do not amplify noise.\n- **mode: smart** (default) measures the noise in each image, so the same settings work on clean and noisy renders. **legacy** is the old edge-gated blur.\n- **luma:** how hard grain is cleaned. **chroma:** color blotches and rainbow speckle. Raise chroma first, it costs the least detail.\n- **keep_detail:** brings back pores and hair where they stand above the noise. Lower it if grit comes back.\n- **strength:** 0 = original, 1 = fully denoised (0.75 default).\n- **noise_report** tells you how noisy each image actually was. Low number? Leave it alone.\n\n### LC Person Mask 🧍(Optional)\n\n**It's optional.** If all you care about is faces, then you do not need it. The node will find them by itself. It will also grab skin about 50% of the time. However, if you want **all** skin and make sure it misses clothes, then use it.\n**Settings**\n- **engine: mediapipe**, **face** + **body**, **remove_features** on. Mediapipe's body includes torso and neck skin (segformer's is arms and legs only).\n- **remove_features** cuts eyes, brows, lips and teeth out with SAM 3, so the nodes below never smooth or texture them.\n\n\n## LC Skin Master ✨\n\n**What is it?**\n- Your whole skin chain in one node: grit, pores, blemishes, lines, freckles, eyes, skin tone and colour. Each one done once, in order, on one skin map.\n\n- 💡Plug the **skin_mask** into **LC Sharpen Pro**, so skin_protect covers all the skin instead of the part a colour guess finds.\n- ✋ **First run downloads about 80 MB** (face finders) into `models/facexlib`.\n\n**Settings ⚙️**\n\n**Presets**: \n- **Natural** for every day. \n- **Soft Beauty** for images with makeup.\n- **Editorial Detail** for close-ups (sharp 🗡️)\n- **Real Skin Restore** for plastic skin\n- **Weathered** for character (my favorite in most cases)\n- **Sun-Kissed** for freckles. \n- *Moving a slider switches to Custom.*\n\n**Sliders:**\n\n- **pores**: 1 = as it is. Keep it at 1 or more with **pigmentation**, or the freckles look painted on.\n- **add_pores**: for skin that has none. Skin with detail gets less on its own.\n- **wrinkles**: below 0 softens, above 0 deepens the lines already there.\n- **warmth**: below 0 calms orange AI skin.\n- **eye_detail**: crisper lashes and a lifted iris around a dark pupil, so the eyes look alive. 0.5 default, 1.0 is the top.\n\n\n---\n**Credits:**\n\nSkin finding and the retouch adapted from sd-living-skin by sca-285 (MIT) [Here](https://github.com/sca-285/sd-living-skin)\n\n"
      ],
      "widgets_values_named": {
        "language": "English ✏️",
        "text": "## LC Image Denoise\n- Kills decode grit so the skin nodes after it do not amplify noise.\n- **mode: smart** (default) measures the noise in each image, so the same settings work on clean and noisy renders. **legacy** is the old edge-gated blur.\n- **luma:** how hard grain is cleaned. **chroma:** color blotches and rainbow speckle. Raise chroma first, it costs the least detail.\n- **keep_detail:** brings back pores and hair where they stand above the noise. Lower it if grit comes back.\n- **strength:** 0 = original, 1 = fully denoised (0.75 default).\n- **noise_report** tells you how noisy each image actually was. Low number? Leave it alone.\n\n### LC Person Mask 🧍(Optional)\n\n**It's optional.** If all you care about is faces, then you do not need it. The node will find them by itself. It will also grab skin about 50% of the time. However, if you want **all** skin and make sure it misses clothes, then use it.\n**Settings**\n- **engine: mediapipe**, **face** + **body**, **remove_features** on. Mediapipe's body includes torso and neck skin (segformer's is arms and legs only).\n- **remove_features** cuts eyes, brows, lips and teeth out with SAM 3, so the nodes below never smooth or texture them.\n\n\n## LC Skin Master ✨\n\n**What is it?**\n- Your whole skin chain in one node: grit, pores, blemishes, lines, freckles, eyes, skin tone and colour. Each one done once, in order, on one skin map.\n\n- 💡Plug the **skin_mask** into **LC Sharpen Pro**, so skin_protect covers all the skin instead of the part a colour guess finds.\n- ✋ **First run downloads about 80 MB** (face finders) into `models/facexlib`.\n\n**Settings ⚙️**\n\n**Presets**: \n- **Natural** for every day. \n- **Soft Beauty** for images with makeup.\n- **Editorial Detail** for close-ups (sharp 🗡️)\n- **Real Skin Restore** for plastic skin\n- **Weathered** for character (my favorite in most cases)\n- **Sun-Kissed** for freckles. \n- *Moving a slider switches to Custom.*\n\n**Sliders:**\n\n- **pores**: 1 = as it is. Keep it at 1 or more with **pigmentation**, or the freckles look painted on.\n- **add_pores**: for skin that has none. Skin with detail gets less on its own.\n- **wrinkles**: below 0 softens, above 0 deepens the lines already there.\n- **warmth**: below 0 calms orange AI skin.\n- **eye_detail**: crisper lashes and a lifted iris around a dark pupil, so the eyes look alive. 0.5 default, 1.0 is the top.\n\n\n---\n**Credits:**\n\nSkin finding and the retouch adapted from sd-living-skin by sca-285 (MIT) [Here](https://github.com/sca-285/sd-living-skin)\n\n"
      },
      "color": "#222",
      "bgcolor": "#000"
    },
    {
      "id": 4966,
      "type": "SetNode",
      "pos": [
        -3660,
        -460
      ],
      "size": [
        210,
        40
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 200,
      "mode": 0,
      "inputs": [
        {
          "name": "MASK",
          "type": "MASK",
          "link": 47129
        }
      ],
      "outputs": [
        {
          "name": "MASK",
          "type": "MASK",
          "links": []
        }
      ],
      "title": "Set_Skin Mask",
      "properties": {
        "Node name for S&R": "SetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "previousName": "Skin Mask",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Skin Mask"
      ],
      "widgets_values_named": {
        "Constant": "Skin Mask"
      },
      "color": "#1c5715",
      "bgcolor": "#1f401b"
    },
    {
      "id": 4967,
      "type": "LC Bypasser",
      "pos": [
        -3660,
        -500
      ],
      "size": [
        310,
        310
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 201,
      "mode": 0,
      "inputs": [
        {
          "name": "LC Image Denoise",
          "type": "*",
          "link": 47130
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": 47131
        },
        {
          "name": "LC Person Mask 🧍",
          "type": "*",
          "link": 47132
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": 47133
        },
        {
          "name": "LC Preview Mask 🎭",
          "type": "*",
          "link": 47134
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": 47135
        },
        {
          "name": "LC Skin Master ✨ (BETA)",
          "type": "*",
          "link": 47136
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": 47137
        },
        {
          "name": "",
          "type": "*",
          "link": null
        },
        {
          "name": "enable",
          "type": "BOOLEAN",
          "link": null
        }
      ],
      "outputs": [
        {
          "name": "OPT_CONNECTION",
          "type": "*",
          "links": []
        }
      ],
      "properties": {
        "toggleRestriction": "default",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        true,
        true,
        true,
        true
      ],
      "widgets_values_named": {
        "Enable 1": true,
        "Enable 2": true,
        "Enable 3": true,
        "Enable 4": true
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 4968,
      "type": "GetNode",
      "pos": [
        -3660,
        -540
      ],
      "size": [
        210,
        40
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 96,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "INT",
          "type": "INT",
          "links": [
            47128
          ]
        }
      ],
      "title": "Get_Seed",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Seed"
      ],
      "widgets_values_named": {
        "Constant": "Seed"
      },
      "color": "#1b4669",
      "bgcolor": "#29699c"
    },
    {
      "id": 4969,
      "type": "LCPreviewMask",
      "pos": [
        -3660,
        -920
      ],
      "size": [
        260,
        350
      ],
      "flags": {
        "pinned": true
      },
      "order": 180,
      "mode": 0,
      "inputs": [
        {
          "name": "mask",
          "shape": 7,
          "type": "MASK",
          "link": 47138
        }
      ],
      "outputs": [
        {
          "name": "mask",
          "type": "MASK",
          "links": [
            47134
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "9e2b116f51ee00939bd292cf6b5441a10923dd02",
        "Node name for S&R": "LCPreviewMask",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        ""
      ],
      "widgets_values_named": {
        "lc_preview": ""
      },
      "color": "#222",
      "bgcolor": "#000"
    },
    {
      "id": 4970,
      "type": "SetNode",
      "pos": [
        -3590,
        -1010
      ],
      "size": [
        210,
        40
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 199,
      "mode": 0,
      "inputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "link": 47139
        }
      ],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": []
        }
      ],
      "title": "Set_Skin Realism",
      "properties": {
        "Node name for S&R": "SetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "previousName": "Skin Realism",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Skin Realism"
      ],
      "widgets_values_named": {
        "Constant": "Skin Realism"
      },
      "color": "#2a363b",
      "bgcolor": "#3f5159"
    },
    {
      "id": 4971,
      "type": "LCLabel",
      "pos": [
        -3140,
        -1060
      ],
      "size": [
        253,
        45
      ],
      "flags": {
        "pinned": true
      },
      "order": 97,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "properties": {
        "text": "This is BETA. 👇🏼",
        "font": "Ink Free",
        "size": 32,
        "bold": true,
        "italic": false,
        "color": "#ffffff",
        "align": "center",
        "outline": false,
        "outlineColor": "#000000",
        "outlineWidth": 4,
        "shadow": false,
        "shadowBlur": 10,
        "bg": false,
        "bgColor": "#324B4B",
        "radius": 12,
        "padding": 8,
        "angle": 0,
        "width": 0,
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "f2ded4b7be8ee0c12a17de035e25f352bdc8fbf4",
        "Node name for S&R": "LCLabel",
        "_w": 253,
        "_h": 45,
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#fff0",
      "bgcolor": "#fff0"
    },
    {
      "id": 4972,
      "type": "LCControlPanel",
      "pos": [
        -3960,
        -1070
      ],
      "size": [
        290,
        90
      ],
      "flags": {
        "pinned": true
      },
      "order": 98,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "label": " ",
          "name": "value_1",
          "type": "*",
          "links": [
            47131
          ]
        },
        {
          "label": " ",
          "name": "value_2",
          "type": "*",
          "links": [
            47133,
            47135
          ]
        },
        {
          "label": " ",
          "name": "value_3",
          "type": "*",
          "links": [
            47137
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "9e2b116f51ee00939bd292cf6b5441a10923dd02",
        "Node name for S&R": "LCControlPanel",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "lc_rows": [
          {
            "name": "Denoise",
            "value": true,
            "min": 0,
            "max": 100,
            "step": 1,
            "decimals": 0,
            "auto": false,
            "kind": "boolean"
          },
          {
            "name": "Use Person Mask",
            "value": true,
            "min": 0,
            "max": 100,
            "step": 1,
            "decimals": 0,
            "auto": false,
            "kind": "boolean"
          },
          {
            "name": "LC Skin Master",
            "value": true,
            "min": 0,
            "max": 100,
            "step": 1,
            "decimals": 0,
            "auto": false,
            "kind": "boolean"
          }
        ]
      },
      "widgets_values": [
        "[{\"name\":\"Denoise\",\"value\":true,\"kind\":\"boolean\",\"cast\":\"BOOLEAN\"},{\"name\":\"Use Person Mask\",\"value\":true,\"kind\":\"boolean\",\"cast\":\"BOOLEAN\"},{\"name\":\"LC Skin Master\",\"value\":true,\"kind\":\"boolean\",\"cast\":\"BOOLEAN\"}]",
        ""
      ],
      "widgets_values_named": {
        "rows": "[{\"name\":\"Denoise\",\"value\":true,\"kind\":\"boolean\",\"cast\":\"BOOLEAN\"},{\"name\":\"Use Person Mask\",\"value\":true,\"kind\":\"boolean\",\"cast\":\"BOOLEAN\"},{\"name\":\"LC Skin Master\",\"value\":true,\"kind\":\"boolean\",\"cast\":\"BOOLEAN\"}]",
        "lc_cp_face": ""
      },
      "color": "#5a1a1a",
      "bgcolor": "#460606"
    },
    {
      "id": 4973,
      "type": "GetNode",
      "pos": [
        -3600,
        -1050
      ],
      "size": [
        210,
        50
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 99,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            47123,
            47124
          ]
        }
      ],
      "title": "Get_Relay Image",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Relay Image"
      ],
      "widgets_values_named": {
        "Constant": "Relay Image"
      },
      "color": "#2a363b",
      "bgcolor": "#3f5159"
    },
    {
      "id": 4974,
      "type": "GetNode",
      "pos": [
        -470,
        -940
      ],
      "size": [
        210,
        50
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 100,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "MASK",
          "type": "MASK",
          "links": [
            47140
          ]
        }
      ],
      "title": "Get_Skin Mask",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Skin Mask"
      ],
      "widgets_values_named": {
        "Constant": "Skin Mask"
      },
      "color": "#1c5715",
      "bgcolor": "#1f401b"
    },
    {
      "id": 4976,
      "type": "LCNote",
      "pos": [
        150,
        -1030
      ],
      "size": [
        300,
        170
      ],
      "flags": {
        "pinned": true
      },
      "order": 101,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "Changes:",
      "properties": {
        "lc_note": {
          "source": "en",
          "texts": {
            "en": {
              "text": "## Note: on several nodes I doubled the amount of adjustment, so the old 0.5 becomes 0.25\n\n- Depth\n- Bloom\n- Lens\n- Lut\n- Natural Look"
            },
            "zh": {
              "text": "## 注意：好几个节点的调节幅度我都翻倍了，所以以前的 0.5 现在是 0.25\n\n- Depth\n- Bloom\n- Lens\n- Lut\n- Natural Look",
              "src": "7808bc88",
              "srcTitle": "Changes:"
            },
            "ja": {
              "text": "## 注意: いくつかのノードで調整量を2倍にしたので、以前の0.5は0.25になります\n\n- Depth\n- Bloom\n- Lens\n- Lut\n- Natural Look\n",
              "src": "7808bc88",
              "srcTitle": "Changes:"
            },
            "ko": {
              "text": "## 참고: 여러 노드에서 조정량을 두 배로 늘렸기 때문에, 예전의 0.5는 이제 0.25가 됩니다\n\n- Depth\n- Bloom\n- Lens\n- Lut\n- Natural Look",
              "src": "7808bc88",
              "srcTitle": "Changes:"
            }
          },
          "titles": {
            "en": "Changes:",
            "zh": "更新内容：",
            "ja": "変更点:",
            "ko": "변경 사항:"
          }
        },
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "English ✏️",
        "## Note: on several nodes I doubled the amount of adjustment, so the old 0.5 becomes 0.25\n\n- Depth\n- Bloom\n- Lens\n- Lut\n- Natural Look"
      ],
      "widgets_values_named": {
        "language": "English ✏️",
        "text": "## Note: on several nodes I doubled the amount of adjustment, so the old 0.5 becomes 0.25\n\n- Depth\n- Bloom\n- Lens\n- Lut\n- Natural Look"
      },
      "color": "#222",
      "bgcolor": "#000"
    },
    {
      "id": 4977,
      "type": "Fast Groups Bypasser (rgthree)",
      "pos": [
        -5690,
        -1070
      ],
      "size": [
        220,
        60
      ],
      "flags": {
        "pinned": true
      },
      "order": 102,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "label": "🤫",
          "name": "OPT_CONNECTION",
          "type": "*",
          "links": []
        }
      ],
      "title": "Relay Bypasser",
      "properties": {
        "matchColors": "",
        "matchTitle": "#Relay Upscale Image",
        "showNav": false,
        "showAllGraphs": true,
        "sort": "position",
        "customSortAlphabet": "",
        "toggleRestriction": "default",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#c3782d",
      "bgcolor": "#af6419"
    },
    {
      "id": 4978,
      "type": "LCBatchImageComparer",
      "pos": [
        -5130,
        -1070
      ],
      "size": [
        340,
        510
      ],
      "flags": {
        "pinned": true
      },
      "order": 181,
      "mode": 0,
      "inputs": [
        {
          "label": "Before",
          "name": "image_a",
          "shape": 7,
          "type": "IMAGE",
          "link": 47301
        },
        {
          "label": "After Relay",
          "name": "image_b",
          "shape": 7,
          "type": "IMAGE",
          "link": 47302
        }
      ],
      "outputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "e9d3f5fa5d7d6c0f603b2e19f8a8bf458ee3b8ec",
        "Node name for S&R": "LCBatchImageComparer",
        "comparer_mode": "Slide",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 4979,
      "type": "LCRelayVSRUpscale",
      "pos": [
        -5450,
        -1030
      ],
      "size": [
        300,
        250
      ],
      "flags": {
        "pinned": true
      },
      "order": 155,
      "mode": 0,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 47303
        },
        {
          "name": "protect_mask",
          "shape": 7,
          "type": "MASK",
          "link": 47304
        },
        {
          "name": "seed",
          "type": "INT",
          "widget": {
            "name": "seed"
          },
          "link": 47305
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            47302,
            47306
          ]
        },
        {
          "name": "relay",
          "type": "LC_RELAY",
          "links": []
        },
        {
          "name": "protected",
          "type": "MASK",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC_MaskMaker_nodes",
        "ver": "0.29.8",
        "Node name for S&R": "LCRelayVSRUpscale",
        "ue_properties": {
          "widget_ue_connectable": {
            "seed": true
          },
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "image",
        "2x",
        8675309,
        "fixed",
        0.7,
        0.5,
        true
      ],
      "widgets_values_named": {
        "source": "image",
        "upscale": "2x",
        "seed": 8675309,
        "control_after_generate": "fixed",
        "detail": 0.7,
        "mask_protect_strength": 0.5,
        "detect_faces": true
      },
      "color": "#324b4b",
      "bgcolor": "#324b4b"
    },
    {
      "id": 4980,
      "type": "GetNode",
      "pos": [
        -5690,
        -970
      ],
      "size": [
        210,
        40
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 103,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "*",
          "type": "*",
          "links": [
            47301,
            47303
          ]
        }
      ],
      "title": "Get_detail image",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "detail image"
      ],
      "widgets_values_named": {
        "Constant": "detail image"
      }
    },
    {
      "id": 4981,
      "type": "SetNode",
      "pos": [
        -5690,
        -930
      ],
      "size": [
        210,
        40
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 182,
      "mode": 0,
      "inputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "link": 47306
        }
      ],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": []
        }
      ],
      "title": "Set_Relay Image",
      "properties": {
        "Node name for S&R": "SetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "previousName": "Relay Image",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Relay Image"
      ],
      "widgets_values_named": {
        "Constant": "Relay Image"
      },
      "color": "#2a363b",
      "bgcolor": "#3f5159"
    },
    {
      "id": 4982,
      "type": "Label (rgthree)",
      "pos": [
        -5520,
        -960
      ],
      "size": [
        54.921875,
        40
      ],
      "flags": {
        "allow_interaction": false,
        "pinned": true
      },
      "order": 104,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "👈",
      "properties": {
        "fontSize": 40,
        "fontFamily": "Arial",
        "fontColor": "#ffffff",
        "textAlign": "left",
        "backgroundColor": "transparent",
        "padding": 0,
        "borderRadius": 0,
        "angle": 0,
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#fff0",
      "bgcolor": "#fff0"
    },
    {
      "id": 4983,
      "type": "GetNode",
      "pos": [
        -5690,
        -890
      ],
      "size": [
        210,
        40
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 105,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "LC_PIPE",
          "type": "LC_PIPE",
          "links": [
            47307
          ]
        }
      ],
      "title": "Get_Detailer Pipe",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Detailer Pipe"
      ],
      "widgets_values_named": {
        "Constant": "Detailer Pipe"
      }
    },
    {
      "id": 4984,
      "type": "GetNode",
      "pos": [
        -5690,
        -810
      ],
      "size": [
        210,
        40
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 106,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "INT",
          "type": "INT",
          "links": [
            47305
          ]
        }
      ],
      "title": "Get_Seed",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Seed"
      ],
      "widgets_values_named": {
        "Constant": "Seed"
      },
      "color": "#1b4669",
      "bgcolor": "#29699c"
    },
    {
      "id": 4985,
      "type": "LCDetailPipeOut",
      "pos": [
        -5690,
        -850
      ],
      "size": [
        200,
        290
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 133,
      "mode": 0,
      "inputs": [
        {
          "label": "pipe",
          "name": "pipe",
          "type": "LC_PIPE",
          "link": 47307
        }
      ],
      "outputs": [
        {
          "name": "pipe",
          "type": "LC_PIPE",
          "links": []
        },
        {
          "name": "Model 1",
          "type": "MODEL",
          "links": []
        },
        {
          "name": "Clip 1",
          "type": "CLIP",
          "links": []
        },
        {
          "name": "VAE 1",
          "type": "VAE",
          "links": []
        },
        {
          "name": "Positive prompt",
          "type": "STRING",
          "links": []
        },
        {
          "name": "Positive conditioning",
          "type": "CONDITIONING",
          "links": []
        },
        {
          "name": "Negative prompt",
          "type": "STRING",
          "links": []
        },
        {
          "name": "Negative conditioning",
          "type": "CONDITIONING",
          "links": []
        },
        {
          "name": "Seed",
          "type": "INT",
          "links": []
        },
        {
          "name": "cfg_1",
          "type": "FLOAT",
          "links": []
        },
        {
          "name": "sampler_name",
          "type": "COMBO",
          "links": []
        },
        {
          "name": "scheduler",
          "type": "COMBO",
          "links": []
        },
        {
          "name": "detailer_steps",
          "type": "INT",
          "links": []
        },
        {
          "name": "protect_mask",
          "type": "MASK",
          "links": [
            47304
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "9375772176d92ea336058094dcaa1ecf48457716",
        "Node name for S&R": "LCDetailPipeOut",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#707070",
      "bgcolor": "#707070"
    },
    {
      "id": 4986,
      "type": "LCNote",
      "pos": [
        -5690,
        -730
      ],
      "size": [
        550,
        170
      ],
      "flags": {
        "collapsed": false,
        "pinned": true
      },
      "order": 107,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "Relay Notes",
      "properties": {
        "lc_note": {
          "source": "en",
          "texts": {
            "en": {
              "text": "## LC Relay VSR Upscale 🧩\n\n**What is it?**\n- A one-step upscaler for video and pictures (2x or 4x). The model, VAE and sampler are built in. Fast, sharp, and it adds real skin and hair detail.\n- A fraction of the time VOSR2 or SeedVR2 takes, and higher quality.\n- **detect_faces** finds the faces on its own and holds back Relay's grain on them, so skin keeps its look.\n- 💡 If you used detailers or want all skin protected, wire a mask into **protect_mask**. It overrides detect_faces.\n\n- ✋ **First use downloads the models:** 5.2 GB per upscale size (10 GB for bf16) plus a 128 MB VAE, and 55 MB for the face finder. A toast tells you it started. Press Stop to cancel. Already have them? They are found wherever they are.\n\n---\n\n### Videos 🎥\n\n- **2x faces on** is the default. Your eye goes straight to the faces when things are moving, and everything else is background noise.\n    - Use **faces off** only when time or file size is the problem.\n- **4x** runs on an 8 GB card, but on a moving video it looks barely different from 2x. Extra sharpness can actually make it look worse.\n- Save with **LC Save Video**'s **relay** input. It saves a few frames at a time, so the upscaled video never sits in RAM (5 s at 4x: 0.3 GB instead of 12 GB).\n    - Leave the Relay node's **image** output empty, or the full video gets built anyway.\n\n| Video | 2x faces on | 2x faces off | 4x faces on | 4x faces off |\n|---|---|---|---|---|\n| 960 x 544, 5 s, 24 fps | 13 s (est.) | 12 s | 36 s (est.) | 34 s |\n| 896 x 1152, 6.6 s, 24 fps | 26 s (est.) | 22 - 24 s | 78 s (est.) | 72 - 75 s |\n| 832 x 1056, 15 s, 48 fps | 46 s | 40 s | 2.7 min | 2.6 min |\n| **8 GB laptop:** 960 x 544, 5 s, 24 fps | 28 s (est.) | 27 s | 2 min (est.) | 118 s |\n| **8 GB laptop:** 832 x 1056, 15 s, 48 fps | 4 min | 3.9 min | 18 min (est.) | 17 min (est.) |\n\n\\* RTX 5090 unless noted, laptop is an RTX 5060 8 GB. Models already downloaded. Faces on finds the faces every 3rd frame and costs about 4 - 15 % (measured on the 15 s clip). (est.) rows are scaled from the measured ones.\n- 💡 VRAM stays flat on 8 GB cards (7.4 GB at 2x), so long clips do not slow to a crawl. The 5090 used 13 GB at 2x and 24 GB at 4x only because it had it free.\n- ⚠️ **16 GB RAM:** the frames sit in RAM before Relay even starts. The 15 s, 48 fps clip peaked at 18.5 GB.\n    - Keep clips short, or upscale **before** frame interpolation (half the frames, half the RAM). Recommended, not tested.\n\n---\n\n### Pictures 🖼️\n\n- People actually zoom in on a picture, so 4x is worth it here. Faces cost nothing on a picture (about 4 s either way at 4x, 6 s for a 1056 x 1320 picture).\n- **Quality order:**\n    - 4x faces on\n    - 2x faces on\n    - 4x faces off\n    - 2x faces off\n- **Realism and photos:** faces on.\n- **Lineart, anime, painted, etc.:** depends on the face.\n    - Smooth or painted skin: faces on (the grain is just noise there).\n    - Freckles, hatching or other drawn detail: faces off, or that detail goes soft.\n- Small faces in a crowd: on or off makes no visible difference.\n\n**💡 Tips & tricks**\n- Adjust how much the faces are protected with **mask_protect_strength**.\n- Adjust the sharpness with **detail**.\n\n---\n\n### Settings ⚙️\n\n- **source:**\n    - **video:** the frames are matched to each other, so the video stays steady. Use it for anything that came from a video.\n    - **image:** every picture is upscaled on its own, so nothing carries over between them. Use it for a batch of different pictures. One picture comes out the same either way.\n- **upscale:** 2x for video, 4x for pictures. Each one is its own model.\n    - **2x bf16 / 4x bf16 (10 GB):** the original release. It's an option, but not noticeably different, and it uses about 5 GB more VRAM.\n        - Quality: practically identical. The average difference is 0.12 - 0.21 levels out of 255, and the 100% crops can't be told apart.\n        - 4x on a 5090: pictures 4 s either way (10 - 11 GB vs 15 - 17 GB VRAM), a 3 s clip 22 s vs 25 s (19 GB vs 24 GB).\n- **detail:** 1.0 is the full model output. Lower moves toward a plain upscale.\n- **detect_faces:** typically on. Off for drawn faces with freckles or hatching.\n- **mask_protect_strength:** how much of Relay's detail still lands on the face. 0.5 is the default. Raise it to keep more texture on stylized faces.\n\n---\n\n### Manual download 📂 (optional)\n\n- The node downloads these on first use. Grab them yourself if you'd rather not wait mid-run.\n\n- [Relay 2x model](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x2_lightx2v_int8_convrot.safetensors?download=true)\n\n- [Relay 2x VAE](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x2_fp32.safetensors?download=true)\n\n- [Relay 4x model](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x4_int8_convrot.safetensors?download=true)\n\n- [Relay 4x VAE](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x4_fp32.safetensors?download=true)\n\n- [Relay 4x bf16 model (optional, 10 GB)](https://huggingface.co/kopper/RelayVSR/resolve/main/wan.safetensors?download=true)\n\n- [Relay 2x bf16 model (optional, 10 GB)](https://huggingface.co/lightx2v/RelayVSR_X2/resolve/main/wan_x2.safetensors?download=true)\n\n```\nComfyUI/\n└── models/\n    ├── diffusion_models/\n    │   ├── relayvsr_x2_lightx2v_int8_convrot (5.2 GB)\n    │   ├── relayvsr_x4_int8_convrot (5.2 GB)\n    │   ├── wan_x2 (2x bf16, optional, 10 GB)\n    │   └── wan (4x bf16, optional, 10 GB)\n    ├── vae/\n    │   ├── relayvsr_flash_vae_x2_fp32\n    │   └── relayvsr_flash_vae_x4_fp32\n    └── facexlib/\n        ├── detection_mobilenet0.25_Final.pth\n        └── parsing_bisenet.pth\n```"
            },
            "zh": {
              "text": "## LC Relay VSR Upscale 🧩\n\n**这是什么？**\n- 一步完成的视频和图片放大器（2x 或 4x）。模型、VAE 和采样器都已内置。速度快、清晰，还能添加真实的皮肤和头发细节。\n- 耗时只有 VOSR2 或 SeedVR2 的一小部分，质量更高。\n- **detect_faces** 会自动找到人脸，并压住 Relay 在脸上的颗粒，让皮肤保持原样。\n- 💡 如果你用了检测修复（detailer），或想保护全部皮肤，把遮罩接到 **protect_mask**。它会覆盖 detect_faces。\n\n- ✋ **首次使用会下载模型：** 每种放大倍数 5.2 GB（bf16 为 10 GB），加一个 128 MB 的 VAE，人脸检测另需 55 MB。开始时会弹出提示。按 Stop 可取消。已经有了？无论放在哪里都能找到。\n\n---\n\n### 视频 🎥\n\n- **2x 开启人脸** 是默认设置。画面在动时，眼睛会直接盯住人脸，其余部分都成了背景噪声。\n    - 只有在时间或文件大小成为问题时，才使用 **关闭人脸**。\n- **4x** 能在 8 GB 显卡上运行，但在运动的视频里和 2x 几乎看不出区别。多出来的锐度反而可能让画面更难看。\n- 用 **LC Save Video** 的 **relay** 输入保存。它一次只保存几帧，放大后的视频永远不会整个放进内存（5 秒 4x：0.3 GB，而不是 12 GB）。\n    - Relay 节点的 **image** 输出保持空着，否则还是会生成完整视频。\n\n| 视频 | 2x 开启人脸 | 2x 关闭人脸 | 4x 开启人脸 | 4x 关闭人脸 |\n|---|---|---|---|---|\n| 960 x 544，5 秒，24 fps | 13 秒（估计） | 12 秒 | 36 秒（估计） | 34 秒 |\n| 896 x 1152，6.6 秒，24 fps | 26 秒（估计） | 22 - 24 秒 | 78 秒（估计） | 72 - 75 秒 |\n| 832 x 1056，15 秒，48 fps | 46 秒 | 40 秒 | 2.7 分钟 | 2.6 分钟 |\n| **8 GB 笔记本：** 960 x 544，5 秒，24 fps | 28 秒（估计） | 27 秒 | 2 分钟（估计） | 118 秒 |\n| **8 GB 笔记本：** 832 x 1056，15 秒，48 fps | 4 分钟 | 3.9 分钟 | 18 分钟（估计） | 17 分钟（估计） |\n\n\\* 除注明外均为 RTX 5090，笔记本为 RTX 5060 8 GB。模型已下载。开启人脸时每 3 帧检测一次人脸，多花约 4 - 15 %（在 15 秒片段上实测）。（估计）一栏由实测数据推算。\n- 💡 8 GB 显卡上显存占用保持平稳（2x 时 7.4 GB），所以长片段不会越跑越慢。5090 在 2x 用了 13 GB、4x 用了 24 GB，只是因为它有空闲显存。\n- ⚠️ **16 GB 内存：** 在 Relay 开始之前，所有帧就已经放在内存里了。15 秒、48 fps 的片段峰值为 18.5 GB。\n    - 片段保持简短，或者在插帧 **之前** 放大（帧数减半，内存减半）。推荐做法，未测试。\n\n---\n\n### 图片 🖼️\n\n- 人们真的会放大查看图片，所以这里 4x 值得。图片上开启人脸几乎不花时间（4x 时开关都约 4 秒，1056 x 1320 的图片约 6 秒）。\n- **质量排序：**\n    - 4x 开启人脸\n    - 2x 开启人脸\n    - 4x 关闭人脸\n    - 2x 关闭人脸\n- **写实和照片：** 开启人脸。\n- **线稿、动漫、绘画等：** 取决于脸。\n    - 光滑或绘画式的皮肤：开启人脸（那里的颗粒只是噪声）。\n    - 雀斑、排线或其他画出来的细节：关闭人脸，否则这些细节会变软。\n- 人群里的小脸：开或关看不出区别。\n\n**💡 小技巧**\n- 用 **mask_protect_strength** 调整人脸受保护的程度。\n- 用 **detail** 调整锐度。\n\n---\n\n### 设置 ⚙️\n\n- **source：**\n    - **video：** 帧与帧之间相互匹配，视频保持稳定。凡是来自视频的内容都用它。\n    - **image：** 每张图片单独放大，彼此之间不会互相影响。用于一批不同的图片。单张图片两种方式结果相同。\n- **upscale：** 视频用 2x，图片用 4x。每种都是独立的模型。\n    - **2x bf16 / 4x bf16（10 GB）：** 原始版本。可以选，但看不出明显区别，还要多用约 5 GB 显存。\n        - 画质：几乎一样。平均差异只有 0.12 - 0.21（满分 255），100% 裁切图也看不出区别。\n        - 5090 上 4x：图片都是 4 秒（显存 10 - 11 GB 对 15 - 17 GB），3 秒视频 22 秒对 25 秒（19 GB 对 24 GB）。\n- **detail：** 1.0 是完整的模型输出。调低会更接近普通放大。\n- **detect_faces：** 通常开启。对带雀斑或排线的手绘脸关闭。\n- **mask_protect_strength：** Relay 的细节还有多少会落到脸上。默认 0.5。调高可以在风格化的脸上保留更多纹理。\n\n---\n\n### 手动下载 📂（可选）\n\n- 节点会在首次使用时下载这些文件。不想在运行中途等待的话，可以自己先下载。\n\n- [Relay 2x 模型](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x2_lightx2v_int8_convrot.safetensors?download=true)\n\n- [Relay 2x VAE](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x2_fp32.safetensors?download=true)\n\n- [Relay 4x 模型](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x4_int8_convrot.safetensors?download=true)\n\n- [Relay 4x VAE](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x4_fp32.safetensors?download=true)\n\n- [Relay 4x bf16 模型（可选，10 GB）](https://huggingface.co/kopper/RelayVSR/resolve/main/wan.safetensors?download=true)\n\n- [Relay 2x bf16 模型（可选，10 GB）](https://huggingface.co/lightx2v/RelayVSR_X2/resolve/main/wan_x2.safetensors?download=true)\n\n```\nComfyUI/\n└── models/\n    ├── diffusion_models/\n    │   ├── relayvsr_x2_lightx2v_int8_convrot (5.2 GB)\n    │   ├── relayvsr_x4_int8_convrot (5.2 GB)\n    │   ├── wan_x2 (2x bf16, 可选, 10 GB)\n    │   └── wan (4x bf16, 可选, 10 GB)\n    ├── vae/\n    │   ├── relayvsr_flash_vae_x2_fp32\n    │   └── relayvsr_flash_vae_x4_fp32\n    └── facexlib/\n        ├── detection_mobilenet0.25_Final.pth\n        └── parsing_bisenet.pth\n```",
              "src": "36dc9909",
              "srcTitle": "Relay Notes"
            },
            "zh-TW": {
              "text": "## LC Relay VSR Upscale 🧩\n\n**這是什麼？**\n- 一步完成的影片和圖片放大器（2x 或 4x）。模型、VAE 和取樣器都已內建。速度快、清晰，還能加上真實的皮膚和頭髮細節。\n- 耗時只有 VOSR2 或 SeedVR2 的一小部分，品質更高。\n- **detect_faces** 會自動找到人臉，並壓住 Relay 在臉上的顆粒，讓皮膚保持原樣。\n- 💡 如果你用了細節修復（detailer），或想保護全部皮膚，把遮罩接到 **protect_mask**。它會覆蓋 detect_faces。\n\n- ✋ **第一次使用會下載模型：** 每種放大倍數 5.2 GB（bf16 為 10 GB），加一個 128 MB 的 VAE，人臉偵測另需 55 MB。開始時會跳出提示。按 Stop 可取消。已經有了？不論放在哪裡都找得到。\n\n---\n\n### 影片 🎥\n\n- **2x 開啟人臉** 是預設設定。畫面在動時，眼睛會直接盯著人臉，其餘部分都成了背景雜訊。\n    - 只有在時間或檔案大小成為問題時，才使用 **關閉人臉**。\n- **4x** 能在 8 GB 顯示卡上執行，但在動態影片裡和 2x 幾乎看不出差別。多出來的銳利度反而可能讓畫面更難看。\n- 用 **LC Save Video** 的 **relay** 輸入儲存。它一次只存幾格，放大後的影片永遠不會整個放進記憶體（5 秒 4x：0.3 GB，而不是 12 GB）。\n    - Relay 節點的 **image** 輸出保持空著，否則還是會產生完整影片。\n\n| 影片 | 2x 開啟人臉 | 2x 關閉人臉 | 4x 開啟人臉 | 4x 關閉人臉 |\n|---|---|---|---|---|\n| 960 x 544，5 秒，24 fps | 13 秒（估計） | 12 秒 | 36 秒（估計） | 34 秒 |\n| 896 x 1152，6.6 秒，24 fps | 26 秒（估計） | 22 - 24 秒 | 78 秒（估計） | 72 - 75 秒 |\n| 832 x 1056，15 秒，48 fps | 46 秒 | 40 秒 | 2.7 分鐘 | 2.6 分鐘 |\n| **8 GB 筆電：** 960 x 544，5 秒，24 fps | 28 秒（估計） | 27 秒 | 2 分鐘（估計） | 118 秒 |\n| **8 GB 筆電：** 832 x 1056，15 秒，48 fps | 4 分鐘 | 3.9 分鐘 | 18 分鐘（估計） | 17 分鐘（估計） |\n\n\\* 除註明外皆為 RTX 5090，筆電為 RTX 5060 8 GB。模型已下載。開啟人臉時每 3 格偵測一次人臉，多花約 4 - 15 %（在 15 秒片段上實測）。（估計）欄位由實測數據推算。\n- 💡 8 GB 顯示卡上顯存占用保持平穩（2x 時 7.4 GB），所以長片段不會越跑越慢。5090 在 2x 用了 13 GB、4x 用了 24 GB，只是因為它有空閒顯存。\n- ⚠️ **16 GB 記憶體：** 在 Relay 開始之前，所有畫格就已經放在記憶體裡了。15 秒、48 fps 的片段峰值為 18.5 GB。\n    - 片段保持簡短，或者在補幀 **之前** 放大（畫格減半，記憶體減半）。建議做法，未測試。\n\n---\n\n### 圖片 🖼️\n\n- 大家真的會放大檢視圖片，所以這裡 4x 值得。圖片上開啟人臉幾乎不花時間（4x 時開關都約 4 秒，1056 x 1320 的圖片約 6 秒）。\n- **品質排序：**\n    - 4x 開啟人臉\n    - 2x 開啟人臉\n    - 4x 關閉人臉\n    - 2x 關閉人臉\n- **寫實和照片：** 開啟人臉。\n- **線稿、動漫、繪畫等：** 取決於臉。\n    - 光滑或繪畫式的皮膚：開啟人臉（那裡的顆粒只是雜訊）。\n    - 雀斑、排線或其他畫出來的細節：關閉人臉，否則這些細節會變軟。\n- 人群裡的小臉：開或關看不出差別。\n\n**💡 小技巧**\n- 用 **mask_protect_strength** 調整人臉受保護的程度。\n- 用 **detail** 調整銳利度。\n\n---\n\n### 設定 ⚙️\n\n- **source：**\n    - **video：** 畫格之間互相匹配，影片保持穩定。凡是來自影片的內容都用它。\n    - **image：** 每張圖片單獨放大，彼此之間不會互相影響。用於一批不同的圖片。單張圖片兩種方式結果相同。\n- **upscale：** 影片用 2x，圖片用 4x。每種都是獨立的模型。\n    - **2x bf16 / 4x bf16（10 GB）：** 原始版本。可以選，但看不出明顯差別，還要多用約 5 GB 顯存。\n        - 畫質：幾乎一樣。平均差異只有 0.12 - 0.21（滿分 255），100% 裁切圖也看不出差別。\n        - 5090 上 4x：圖片都是 4 秒（顯存 10 - 11 GB 對 15 - 17 GB），3 秒影片 22 秒對 25 秒（19 GB 對 24 GB）。\n- **detail：** 1.0 是完整的模型輸出。調低會更接近一般放大。\n- **detect_faces：** 通常開啟。對帶雀斑或排線的手繪臉關閉。\n- **mask_protect_strength：** Relay 的細節還有多少會落到臉上。預設 0.5。調高可以在風格化的臉上保留更多紋理。\n\n---\n\n### 手動下載 📂（可選）\n\n- 節點會在第一次使用時下載這些檔案。不想在執行中途等待的話，可以自己先下載。\n\n- [Relay 2x 模型](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x2_lightx2v_int8_convrot.safetensors?download=true)\n\n- [Relay 2x VAE](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x2_fp32.safetensors?download=true)\n\n- [Relay 4x 模型](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x4_int8_convrot.safetensors?download=true)\n\n- [Relay 4x VAE](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x4_fp32.safetensors?download=true)\n\n- [Relay 4x bf16 模型（選用，10 GB）](https://huggingface.co/kopper/RelayVSR/resolve/main/wan.safetensors?download=true)\n\n- [Relay 2x bf16 模型（選用，10 GB）](https://huggingface.co/lightx2v/RelayVSR_X2/resolve/main/wan_x2.safetensors?download=true)\n\n```\nComfyUI/\n└── models/\n    ├── diffusion_models/\n    │   ├── relayvsr_x2_lightx2v_int8_convrot (5.2 GB)\n    │   ├── relayvsr_x4_int8_convrot (5.2 GB)\n    │   ├── wan_x2 (2x bf16, 選用, 10 GB)\n    │   └── wan (4x bf16, 選用, 10 GB)\n    ├── vae/\n    │   ├── relayvsr_flash_vae_x2_fp32\n    │   └── relayvsr_flash_vae_x4_fp32\n    └── facexlib/\n        ├── detection_mobilenet0.25_Final.pth\n        └── parsing_bisenet.pth\n```",
              "src": "36dc9909",
              "srcTitle": "Relay Notes"
            },
            "ja": {
              "text": "## LC Relay VSR Upscale 🧩\n\n**これは何？**\n- 動画と画像を1ステップで拡大するアップスケーラー（2x または 4x）。モデル、VAE、サンプラーはすべて内蔵。速くてシャープ、本物の肌と髪のディテールを加えます。\n- VOSR2 や SeedVR2 のほんの一部の時間で、しかも高品質。\n- **detect_faces** が顔を自動で見つけ、顔の上の Relay の粒状感を抑えるので、肌の見た目がそのまま残ります。\n- 💡 ディテーラーを使った場合や肌全体を守りたい場合は、マスクを **protect_mask** につなぎます。detect_faces より優先されます。\n\n- ✋ **初回使用時にモデルをダウンロードします：** 拡大サイズごとに 5.2 GB（bf16 は 10 GB）と 128 MB の VAE、顔検出用に 55 MB。開始するとトーストが出ます。Stop でキャンセル。もう持っている？ どこに置いてあっても見つかります。\n\n---\n\n### 動画 🎥\n\n- **2x 顔オン** がデフォルト。動いている映像では目はまっすぐ顔に向かい、それ以外は背景のノイズになります。\n    - **顔オフ** は時間やファイルサイズが問題になるときだけ使います。\n- **4x** は 8 GB のカードでも動きますが、動いている映像では 2x とほとんど違いが分かりません。余分なシャープさでかえって悪く見えることもあります。\n- **LC Save Video** の **relay** 入力で保存します。数フレームずつ保存するので、拡大した動画が丸ごとメモリに乗ることはありません（5 秒の 4x：12 GB ではなく 0.3 GB）。\n    - Relay ノードの **image** 出力は空けておきます。つなぐと結局フル動画が作られます。\n\n| 動画 | 2x 顔オン | 2x 顔オフ | 4x 顔オン | 4x 顔オフ |\n|---|---|---|---|---|\n| 960 x 544、5 秒、24 fps | 13 秒（推定） | 12 秒 | 36 秒（推定） | 34 秒 |\n| 896 x 1152、6.6 秒、24 fps | 26 秒（推定） | 22 - 24 秒 | 78 秒（推定） | 72 - 75 秒 |\n| 832 x 1056、15 秒、48 fps | 46 秒 | 40 秒 | 2.7 分 | 2.6 分 |\n| **8 GB ノートPC：** 960 x 544、5 秒、24 fps | 28 秒（推定） | 27 秒 | 2 分（推定） | 118 秒 |\n| **8 GB ノートPC：** 832 x 1056、15 秒、48 fps | 4 分 | 3.9 分 | 18 分（推定） | 17 分（推定） |\n\n\\* 注記がなければ RTX 5090、ノートPC は RTX 5060 8 GB。モデルはダウンロード済み。顔オンは 3 フレームごとに顔を検出し、約 4 - 15 % 余分にかかります（15 秒のクリップで実測）。（推定）は実測値から換算しています。\n- 💡 8 GB のカードでは VRAM が一定のまま（2x で 7.4 GB）なので、長いクリップでも極端に遅くなりません。5090 が 2x で 13 GB、4x で 24 GB 使ったのは、空きがあったからにすぎません。\n- ⚠️ **16 GB RAM：** Relay が始まる前に、フレームはすでにメモリに乗っています。15 秒、48 fps のクリップはピーク 18.5 GB。\n    - クリップは短くするか、フレーム補間の **前に** 拡大します（フレームが半分、RAM も半分）。推奨、未テスト。\n\n---\n\n### 画像 🖼️\n\n- 画像は実際にズームして見られるので、ここでは 4x の価値があります。画像なら顔オンの時間はほぼゼロ（4x でオンでもオフでも約 4 秒、1056 x 1320 の画像で 6 秒）。\n- **品質の順番：**\n    - 4x 顔オン\n    - 2x 顔オン\n    - 4x 顔オフ\n    - 2x 顔オフ\n- **リアル系と写真：** 顔オン。\n- **線画、アニメ、ペイント系など：** 顔しだい。\n    - なめらかな肌やペイントの肌：顔オン（そこでは粒状感はただのノイズ）。\n    - そばかす、ハッチング、その他描き込まれたディテール：顔オフ。そうしないとそのディテールがぼやけます。\n- 群衆の中の小さな顔：オンでもオフでも見た目の違いはありません。\n\n**💡 コツ**\n- 顔の守り具合は **mask_protect_strength** で調整します。\n- シャープさは **detail** で調整します。\n\n---\n\n### 設定 ⚙️\n\n- **source：**\n    - **video：** フレーム同士を合わせるので、動画が安定します。動画から来たものすべてに使います。\n    - **image：** 画像ごとに個別に拡大するので、画像間で何も引き継がれません。別々の画像のバッチに使います。画像1枚ならどちらでも同じ結果です。\n- **upscale：** 動画は 2x、画像は 4x。それぞれ別のモデルです。\n    - **2x bf16 / 4x bf16（10 GB）：** オリジナル版。選べますが、目に見える違いはなく、VRAM を約 5 GB 多く使います。\n        - 画質：ほぼ同じ。平均差は 255 段階中 0.12 - 0.21 で、100% の切り抜きでも見分けがつきません。\n        - 5090 で 4x：画像はどちらも 4 秒（VRAM 10 - 11 GB 対 15 - 17 GB）、3 秒のクリップは 22 秒対 25 秒（19 GB 対 24 GB）。\n- **detail：** 1.0 がモデルのフル出力。下げるほど普通の拡大に近づきます。\n- **detect_faces：** 通常はオン。そばかすやハッチングのある描かれた顔ではオフ。\n- **mask_protect_strength：** Relay のディテールが顔にどれだけ乗るか。デフォルトは 0.5。上げると様式化された顔のテクスチャがより残ります。\n\n---\n\n### 手動ダウンロード 📂（任意）\n\n- ノードは初回使用時にこれらをダウンロードします。実行中に待ちたくなければ、自分で先に入手してください。\n\n- [Relay 2x モデル](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x2_lightx2v_int8_convrot.safetensors?download=true)\n\n- [Relay 2x VAE](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x2_fp32.safetensors?download=true)\n\n- [Relay 4x モデル](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x4_int8_convrot.safetensors?download=true)\n\n- [Relay 4x VAE](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x4_fp32.safetensors?download=true)\n\n- [Relay 4x bf16 モデル（任意、10 GB）](https://huggingface.co/kopper/RelayVSR/resolve/main/wan.safetensors?download=true)\n\n- [Relay 2x bf16 モデル（任意、10 GB）](https://huggingface.co/lightx2v/RelayVSR_X2/resolve/main/wan_x2.safetensors?download=true)\n\n```\nComfyUI/\n└── models/\n    ├── diffusion_models/\n    │   ├── relayvsr_x2_lightx2v_int8_convrot (5.2 GB)\n    │   ├── relayvsr_x4_int8_convrot (5.2 GB)\n    │   ├── wan_x2 (2x bf16, 任意, 10 GB)\n    │   └── wan (4x bf16, 任意, 10 GB)\n    ├── vae/\n    │   ├── relayvsr_flash_vae_x2_fp32\n    │   └── relayvsr_flash_vae_x4_fp32\n    └── facexlib/\n        ├── detection_mobilenet0.25_Final.pth\n        └── parsing_bisenet.pth\n```",
              "src": "36dc9909",
              "srcTitle": "Relay Notes"
            },
            "ko": {
              "text": "## LC Relay VSR Upscale 🧩\n\n**이게 뭔가요?**\n- 영상과 사진을 한 번에 키우는 업스케일러(2x 또는 4x). 모델, VAE, 샘플러가 모두 내장되어 있습니다. 빠르고 선명하며, 실제 피부와 머리카락 디테일을 더합니다.\n- VOSR2나 SeedVR2에 걸리는 시간의 일부만 들고, 품질은 더 높습니다.\n- **detect_faces**가 얼굴을 스스로 찾아 얼굴 위의 Relay 그레인을 눌러 주므로, 피부가 원래 모습을 유지합니다.\n- 💡 디테일러를 썼거나 피부 전체를 보호하고 싶다면 마스크를 **protect_mask**에 연결하세요. detect_faces보다 우선합니다.\n\n- ✋ **첫 사용 시 모델을 다운로드합니다:** 업스케일 크기마다 5.2 GB(bf16은 10 GB)와 128 MB VAE, 얼굴 감지용 55 MB. 시작하면 토스트 알림이 뜹니다. Stop을 누르면 취소됩니다. 이미 있나요? 어디에 두었든 찾아냅니다.\n\n---\n\n### 영상 🎥\n\n- **2x 얼굴 켜기**가 기본입니다. 화면이 움직일 때 눈은 곧장 얼굴로 가고, 나머지는 배경 노이즈가 됩니다.\n    - **얼굴 끄기**는 시간이나 파일 크기가 문제일 때만 쓰세요.\n- **4x**는 8 GB 카드에서도 돌아가지만, 움직이는 영상에서는 2x와 거의 차이가 없습니다. 오히려 과한 선명함 때문에 더 나빠 보일 수 있습니다.\n- **LC Save Video**의 **relay** 입력으로 저장하세요. 몇 프레임씩 저장하므로, 업스케일된 영상이 통째로 RAM에 올라가지 않습니다(5초 4x: 12 GB 대신 0.3 GB).\n    - Relay 노드의 **image** 출력은 비워 두세요. 연결하면 결국 전체 영상이 만들어집니다.\n\n| 영상 | 2x 얼굴 켜기 | 2x 얼굴 끄기 | 4x 얼굴 켜기 | 4x 얼굴 끄기 |\n|---|---|---|---|---|\n| 960 x 544, 5초, 24 fps | 13초 (추정) | 12초 | 36초 (추정) | 34초 |\n| 896 x 1152, 6.6초, 24 fps | 26초 (추정) | 22 - 24초 | 78초 (추정) | 72 - 75초 |\n| 832 x 1056, 15초, 48 fps | 46초 | 40초 | 2.7분 | 2.6분 |\n| **8 GB 노트북:** 960 x 544, 5초, 24 fps | 28초 (추정) | 27초 | 2분 (추정) | 118초 |\n| **8 GB 노트북:** 832 x 1056, 15초, 48 fps | 4분 | 3.9분 | 18분 (추정) | 17분 (추정) |\n\n\\* 따로 적지 않으면 RTX 5090, 노트북은 RTX 5060 8 GB. 모델은 다운로드된 상태. 얼굴 켜기는 3프레임마다 얼굴을 찾으며 약 4 - 15 % 더 걸립니다(15초 클립에서 측정). (추정)은 측정값을 바탕으로 계산했습니다.\n- 💡 8 GB 카드에서는 VRAM이 일정하게 유지되므로(2x에서 7.4 GB), 긴 클립도 크게 느려지지 않습니다. 5090이 2x에서 13 GB, 4x에서 24 GB를 쓴 것은 여유가 있었기 때문일 뿐입니다.\n- ⚠️ **16 GB RAM:** Relay가 시작되기 전에 프레임이 이미 RAM에 올라가 있습니다. 15초, 48 fps 클립은 최고 18.5 GB였습니다.\n    - 클립을 짧게 하거나, 프레임 보간 **전에** 업스케일하세요(프레임 절반, RAM 절반). 권장, 테스트 안 됨.\n\n---\n\n### 사진 🖼️\n\n- 사람들은 사진을 실제로 확대해서 보므로, 여기서는 4x가 그만한 값을 합니다. 사진에서는 얼굴 켜기에 드는 시간이 거의 없습니다(4x에서 켜든 끄든 약 4초, 1056 x 1320 사진은 6초).\n- **품질 순서:**\n    - 4x 얼굴 켜기\n    - 2x 얼굴 켜기\n    - 4x 얼굴 끄기\n    - 2x 얼굴 끄기\n- **실사와 사진:** 얼굴 켜기.\n- **라인아트, 애니메이션, 페인팅 등:** 얼굴에 따라 다릅니다.\n    - 매끈하거나 칠한 피부: 얼굴 켜기(거기서는 그레인이 그냥 노이즈입니다).\n    - 주근깨, 해칭 등 그려 넣은 디테일: 얼굴 끄기. 안 그러면 그 디테일이 뭉개집니다.\n- 군중 속 작은 얼굴: 켜든 끄든 눈에 띄는 차이가 없습니다.\n\n**💡 팁**\n- 얼굴을 얼마나 보호할지는 **mask_protect_strength**로 조절합니다.\n- 선명도는 **detail**로 조절합니다.\n\n---\n\n### 설정 ⚙️\n\n- **source:**\n    - **video:** 프레임끼리 서로 맞추므로 영상이 안정적입니다. 영상에서 나온 것에는 모두 이것을 쓰세요.\n    - **image:** 사진마다 따로 업스케일하므로 사진 사이에 아무것도 이어지지 않습니다. 서로 다른 사진 묶음에 쓰세요. 사진 한 장은 어느 쪽이든 결과가 같습니다.\n- **upscale:** 영상은 2x, 사진은 4x. 각각 별도의 모델입니다.\n    - **2x bf16 / 4x bf16 (10 GB):** 원본 릴리스. 선택할 수 있지만 눈에 띄는 차이가 없고 VRAM을 약 5 GB 더 씁니다.\n        - 화질: 사실상 같습니다. 평균 차이는 255단계 중 0.12 - 0.21이고, 100% 크롭으로도 구분이 안 됩니다.\n        - 5090에서 4x: 사진은 둘 다 4초(VRAM 10 - 11 GB 대 15 - 17 GB), 3초 클립은 22초 대 25초(19 GB 대 24 GB).\n- **detail:** 1.0이 모델의 전체 출력입니다. 낮출수록 일반 업스케일에 가까워집니다.\n- **detect_faces:** 보통 켭니다. 주근깨나 해칭이 있는 그린 얼굴에서는 끕니다.\n- **mask_protect_strength:** Relay의 디테일이 얼굴에 얼마나 남는지. 기본값 0.5. 높이면 스타일화된 얼굴에 텍스처가 더 남습니다.\n\n---\n\n### 수동 다운로드 📂 (선택)\n\n- 노드가 첫 사용 시 이 파일들을 다운로드합니다. 실행 도중 기다리기 싫다면 직접 받아 두세요.\n\n- [Relay 2x 모델](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x2_lightx2v_int8_convrot.safetensors?download=true)\n\n- [Relay 2x VAE](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x2_fp32.safetensors?download=true)\n\n- [Relay 4x 모델](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x4_int8_convrot.safetensors?download=true)\n\n- [Relay 4x VAE](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x4_fp32.safetensors?download=true)\n\n- [Relay 4x bf16 모델 (선택, 10 GB)](https://huggingface.co/kopper/RelayVSR/resolve/main/wan.safetensors?download=true)\n\n- [Relay 2x bf16 모델 (선택, 10 GB)](https://huggingface.co/lightx2v/RelayVSR_X2/resolve/main/wan_x2.safetensors?download=true)\n\n```\nComfyUI/\n└── models/\n    ├── diffusion_models/\n    │   ├── relayvsr_x2_lightx2v_int8_convrot (5.2 GB)\n    │   ├── relayvsr_x4_int8_convrot (5.2 GB)\n    │   ├── wan_x2 (2x bf16, 선택, 10 GB)\n    │   └── wan (4x bf16, 선택, 10 GB)\n    ├── vae/\n    │   ├── relayvsr_flash_vae_x2_fp32\n    │   └── relayvsr_flash_vae_x4_fp32\n    └── facexlib/\n        ├── detection_mobilenet0.25_Final.pth\n        └── parsing_bisenet.pth\n```",
              "src": "36dc9909",
              "srcTitle": "Relay Notes"
            }
          },
          "titles": {
            "en": "Relay Notes",
            "zh": "中继笔记",
            "zh-TW": "中繼筆記",
            "ja": "Relay メモ",
            "ko": "Relay 노트"
          }
        },
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "English ✏️",
        "## LC Relay VSR Upscale 🧩\n\n**What is it?**\n- A one-step upscaler for video and pictures (2x or 4x). The model, VAE and sampler are built in. Fast, sharp, and it adds real skin and hair detail.\n- A fraction of the time VOSR2 or SeedVR2 takes, and higher quality.\n- **detect_faces** finds the faces on its own and holds back Relay's grain on them, so skin keeps its look.\n- 💡 If you used detailers or want all skin protected, wire a mask into **protect_mask**. It overrides detect_faces.\n\n- ✋ **First use downloads the models:** 5.2 GB per upscale size (10 GB for bf16) plus a 128 MB VAE, and 55 MB for the face finder. A toast tells you it started. Press Stop to cancel. Already have them? They are found wherever they are.\n\n---\n\n### Videos 🎥\n\n- **2x faces on** is the default. Your eye goes straight to the faces when things are moving, and everything else is background noise.\n    - Use **faces off** only when time or file size is the problem.\n- **4x** runs on an 8 GB card, but on a moving video it looks barely different from 2x. Extra sharpness can actually make it look worse.\n- Save with **LC Save Video**'s **relay** input. It saves a few frames at a time, so the upscaled video never sits in RAM (5 s at 4x: 0.3 GB instead of 12 GB).\n    - Leave the Relay node's **image** output empty, or the full video gets built anyway.\n\n| Video | 2x faces on | 2x faces off | 4x faces on | 4x faces off |\n|---|---|---|---|---|\n| 960 x 544, 5 s, 24 fps | 13 s (est.) | 12 s | 36 s (est.) | 34 s |\n| 896 x 1152, 6.6 s, 24 fps | 26 s (est.) | 22 - 24 s | 78 s (est.) | 72 - 75 s |\n| 832 x 1056, 15 s, 48 fps | 46 s | 40 s | 2.7 min | 2.6 min |\n| **8 GB laptop:** 960 x 544, 5 s, 24 fps | 28 s (est.) | 27 s | 2 min (est.) | 118 s |\n| **8 GB laptop:** 832 x 1056, 15 s, 48 fps | 4 min | 3.9 min | 18 min (est.) | 17 min (est.) |\n\n\\* RTX 5090 unless noted, laptop is an RTX 5060 8 GB. Models already downloaded. Faces on finds the faces every 3rd frame and costs about 4 - 15 % (measured on the 15 s clip). (est.) rows are scaled from the measured ones.\n- 💡 VRAM stays flat on 8 GB cards (7.4 GB at 2x), so long clips do not slow to a crawl. The 5090 used 13 GB at 2x and 24 GB at 4x only because it had it free.\n- ⚠️ **16 GB RAM:** the frames sit in RAM before Relay even starts. The 15 s, 48 fps clip peaked at 18.5 GB.\n    - Keep clips short, or upscale **before** frame interpolation (half the frames, half the RAM). Recommended, not tested.\n\n---\n\n### Pictures 🖼️\n\n- People actually zoom in on a picture, so 4x is worth it here. Faces cost nothing on a picture (about 4 s either way at 4x, 6 s for a 1056 x 1320 picture).\n- **Quality order:**\n    - 4x faces on\n    - 2x faces on\n    - 4x faces off\n    - 2x faces off\n- **Realism and photos:** faces on.\n- **Lineart, anime, painted, etc.:** depends on the face.\n    - Smooth or painted skin: faces on (the grain is just noise there).\n    - Freckles, hatching or other drawn detail: faces off, or that detail goes soft.\n- Small faces in a crowd: on or off makes no visible difference.\n\n**💡 Tips & tricks**\n- Adjust how much the faces are protected with **mask_protect_strength**.\n- Adjust the sharpness with **detail**.\n\n---\n\n### Settings ⚙️\n\n- **source:**\n    - **video:** the frames are matched to each other, so the video stays steady. Use it for anything that came from a video.\n    - **image:** every picture is upscaled on its own, so nothing carries over between them. Use it for a batch of different pictures. One picture comes out the same either way.\n- **upscale:** 2x for video, 4x for pictures. Each one is its own model.\n    - **2x bf16 / 4x bf16 (10 GB):** the original release. It's an option, but not noticeably different, and it uses about 5 GB more VRAM.\n        - Quality: practically identical. The average difference is 0.12 - 0.21 levels out of 255, and the 100% crops can't be told apart.\n        - 4x on a 5090: pictures 4 s either way (10 - 11 GB vs 15 - 17 GB VRAM), a 3 s clip 22 s vs 25 s (19 GB vs 24 GB).\n- **detail:** 1.0 is the full model output. Lower moves toward a plain upscale.\n- **detect_faces:** typically on. Off for drawn faces with freckles or hatching.\n- **mask_protect_strength:** how much of Relay's detail still lands on the face. 0.5 is the default. Raise it to keep more texture on stylized faces.\n\n---\n\n### Manual download 📂 (optional)\n\n- The node downloads these on first use. Grab them yourself if you'd rather not wait mid-run.\n\n- [Relay 2x model](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x2_lightx2v_int8_convrot.safetensors?download=true)\n\n- [Relay 2x VAE](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x2_fp32.safetensors?download=true)\n\n- [Relay 4x model](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x4_int8_convrot.safetensors?download=true)\n\n- [Relay 4x VAE](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x4_fp32.safetensors?download=true)\n\n- [Relay 4x bf16 model (optional, 10 GB)](https://huggingface.co/kopper/RelayVSR/resolve/main/wan.safetensors?download=true)\n\n- [Relay 2x bf16 model (optional, 10 GB)](https://huggingface.co/lightx2v/RelayVSR_X2/resolve/main/wan_x2.safetensors?download=true)\n\n```\nComfyUI/\n└── models/\n    ├── diffusion_models/\n    │   ├── relayvsr_x2_lightx2v_int8_convrot (5.2 GB)\n    │   ├── relayvsr_x4_int8_convrot (5.2 GB)\n    │   ├── wan_x2 (2x bf16, optional, 10 GB)\n    │   └── wan (4x bf16, optional, 10 GB)\n    ├── vae/\n    │   ├── relayvsr_flash_vae_x2_fp32\n    │   └── relayvsr_flash_vae_x4_fp32\n    └── facexlib/\n        ├── detection_mobilenet0.25_Final.pth\n        └── parsing_bisenet.pth\n```"
      ],
      "widgets_values_named": {
        "language": "English ✏️",
        "text": "## LC Relay VSR Upscale 🧩\n\n**What is it?**\n- A one-step upscaler for video and pictures (2x or 4x). The model, VAE and sampler are built in. Fast, sharp, and it adds real skin and hair detail.\n- A fraction of the time VOSR2 or SeedVR2 takes, and higher quality.\n- **detect_faces** finds the faces on its own and holds back Relay's grain on them, so skin keeps its look.\n- 💡 If you used detailers or want all skin protected, wire a mask into **protect_mask**. It overrides detect_faces.\n\n- ✋ **First use downloads the models:** 5.2 GB per upscale size (10 GB for bf16) plus a 128 MB VAE, and 55 MB for the face finder. A toast tells you it started. Press Stop to cancel. Already have them? They are found wherever they are.\n\n---\n\n### Videos 🎥\n\n- **2x faces on** is the default. Your eye goes straight to the faces when things are moving, and everything else is background noise.\n    - Use **faces off** only when time or file size is the problem.\n- **4x** runs on an 8 GB card, but on a moving video it looks barely different from 2x. Extra sharpness can actually make it look worse.\n- Save with **LC Save Video**'s **relay** input. It saves a few frames at a time, so the upscaled video never sits in RAM (5 s at 4x: 0.3 GB instead of 12 GB).\n    - Leave the Relay node's **image** output empty, or the full video gets built anyway.\n\n| Video | 2x faces on | 2x faces off | 4x faces on | 4x faces off |\n|---|---|---|---|---|\n| 960 x 544, 5 s, 24 fps | 13 s (est.) | 12 s | 36 s (est.) | 34 s |\n| 896 x 1152, 6.6 s, 24 fps | 26 s (est.) | 22 - 24 s | 78 s (est.) | 72 - 75 s |\n| 832 x 1056, 15 s, 48 fps | 46 s | 40 s | 2.7 min | 2.6 min |\n| **8 GB laptop:** 960 x 544, 5 s, 24 fps | 28 s (est.) | 27 s | 2 min (est.) | 118 s |\n| **8 GB laptop:** 832 x 1056, 15 s, 48 fps | 4 min | 3.9 min | 18 min (est.) | 17 min (est.) |\n\n\\* RTX 5090 unless noted, laptop is an RTX 5060 8 GB. Models already downloaded. Faces on finds the faces every 3rd frame and costs about 4 - 15 % (measured on the 15 s clip). (est.) rows are scaled from the measured ones.\n- 💡 VRAM stays flat on 8 GB cards (7.4 GB at 2x), so long clips do not slow to a crawl. The 5090 used 13 GB at 2x and 24 GB at 4x only because it had it free.\n- ⚠️ **16 GB RAM:** the frames sit in RAM before Relay even starts. The 15 s, 48 fps clip peaked at 18.5 GB.\n    - Keep clips short, or upscale **before** frame interpolation (half the frames, half the RAM). Recommended, not tested.\n\n---\n\n### Pictures 🖼️\n\n- People actually zoom in on a picture, so 4x is worth it here. Faces cost nothing on a picture (about 4 s either way at 4x, 6 s for a 1056 x 1320 picture).\n- **Quality order:**\n    - 4x faces on\n    - 2x faces on\n    - 4x faces off\n    - 2x faces off\n- **Realism and photos:** faces on.\n- **Lineart, anime, painted, etc.:** depends on the face.\n    - Smooth or painted skin: faces on (the grain is just noise there).\n    - Freckles, hatching or other drawn detail: faces off, or that detail goes soft.\n- Small faces in a crowd: on or off makes no visible difference.\n\n**💡 Tips & tricks**\n- Adjust how much the faces are protected with **mask_protect_strength**.\n- Adjust the sharpness with **detail**.\n\n---\n\n### Settings ⚙️\n\n- **source:**\n    - **video:** the frames are matched to each other, so the video stays steady. Use it for anything that came from a video.\n    - **image:** every picture is upscaled on its own, so nothing carries over between them. Use it for a batch of different pictures. One picture comes out the same either way.\n- **upscale:** 2x for video, 4x for pictures. Each one is its own model.\n    - **2x bf16 / 4x bf16 (10 GB):** the original release. It's an option, but not noticeably different, and it uses about 5 GB more VRAM.\n        - Quality: practically identical. The average difference is 0.12 - 0.21 levels out of 255, and the 100% crops can't be told apart.\n        - 4x on a 5090: pictures 4 s either way (10 - 11 GB vs 15 - 17 GB VRAM), a 3 s clip 22 s vs 25 s (19 GB vs 24 GB).\n- **detail:** 1.0 is the full model output. Lower moves toward a plain upscale.\n- **detect_faces:** typically on. Off for drawn faces with freckles or hatching.\n- **mask_protect_strength:** how much of Relay's detail still lands on the face. 0.5 is the default. Raise it to keep more texture on stylized faces.\n\n---\n\n### Manual download 📂 (optional)\n\n- The node downloads these on first use. Grab them yourself if you'd rather not wait mid-run.\n\n- [Relay 2x model](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x2_lightx2v_int8_convrot.safetensors?download=true)\n\n- [Relay 2x VAE](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x2_fp32.safetensors?download=true)\n\n- [Relay 4x model](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x4_int8_convrot.safetensors?download=true)\n\n- [Relay 4x VAE](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x4_fp32.safetensors?download=true)\n\n- [Relay 4x bf16 model (optional, 10 GB)](https://huggingface.co/kopper/RelayVSR/resolve/main/wan.safetensors?download=true)\n\n- [Relay 2x bf16 model (optional, 10 GB)](https://huggingface.co/lightx2v/RelayVSR_X2/resolve/main/wan_x2.safetensors?download=true)\n\n```\nComfyUI/\n└── models/\n    ├── diffusion_models/\n    │   ├── relayvsr_x2_lightx2v_int8_convrot (5.2 GB)\n    │   ├── relayvsr_x4_int8_convrot (5.2 GB)\n    │   ├── wan_x2 (2x bf16, optional, 10 GB)\n    │   └── wan (4x bf16, optional, 10 GB)\n    ├── vae/\n    │   ├── relayvsr_flash_vae_x2_fp32\n    │   └── relayvsr_flash_vae_x4_fp32\n    └── facexlib/\n        ├── detection_mobilenet0.25_Final.pth\n        └── parsing_bisenet.pth\n```"
      },
      "color": "#2E3A46",
      "bgcolor": "#2E3A46"
    },
    {
      "id": 4987,
      "type": "LCBooleanFlip",
      "pos": [
        -5580,
        -2880
      ],
      "size": [
        430,
        60
      ],
      "flags": {
        "pinned": true
      },
      "order": 108,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "boolean",
          "type": "BOOLEAN",
          "links": [
            47330
          ]
        }
      ],
      "title": "Use Original Image resolution 🖼️ 📏",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "68e59e0027b5ad2f48c235530f6da4dd3dbe57ef",
        "Node name for S&R": "LCBooleanFlip",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "lc_w": 430,
        "lc_h": 60
      },
      "widgets_values": [
        true
      ],
      "widgets_values_named": {
        "boolean": true
      },
      "color": "#c3782d",
      "bgcolor": "#af6419"
    },
    {
      "id": 4988,
      "type": "LCAnySwitch",
      "pos": [
        -4970,
        -2250
      ],
      "size": [
        270,
        120
      ],
      "flags": {
        "collapsed": true,
        "pinned": true
      },
      "order": 205,
      "mode": 0,
      "inputs": [
        {
          "label": "LATENT",
          "name": "any_01",
          "shape": 7,
          "type": "LATENT",
          "link": 47331
        },
        {
          "label": "LATENT",
          "name": "any_02",
          "shape": 7,
          "type": "LATENT",
          "link": 47332
        }
      ],
      "outputs": [
        {
          "label": "LATENT",
          "name": "LATENT",
          "type": "LATENT",
          "links": [
            47333
          ]
        }
      ],
      "title": "Latent Switch",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "68e59e0027b5ad2f48c235530f6da4dd3dbe57ef",
        "Node name for S&R": "LCAnySwitch",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {
            "any_01": true,
            "any_02": true,
            "any_03": true,
            "any_04": true,
            "any_05": true,
            "any_06": true,
            "any_07": true,
            "any_08": true,
            "any_09": true,
            "any_10": true,
            "any_11": true,
            "any_12": true,
            "any_13": true,
            "any_14": true,
            "any_15": true,
            "any_16": true,
            "any_17": true,
            "any_18": true,
            "any_19": true,
            "any_20": true
          },
          "send_to_any": 0,
          "apply_to_unrepeated": 0,
          "version": "7.8"
        },
        "lc_w": 270,
        "lc_h": 120
      },
      "widgets_values": [
        2
      ],
      "widgets_values_named": {
        "inputcount": 2
      },
      "color": "#323",
      "bgcolor": "#535"
    },
    {
      "id": 4989,
      "type": "LCPositive",
      "pos": [
        -1480,
        30
      ],
      "size": [
        300,
        200
      ],
      "flags": {
        "pinned": true
      },
      "order": 109,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "positive",
          "type": "STRING",
          "links": [
            47334,
            47335,
            47336
          ]
        }
      ],
      "title": "Filename Prefix",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "68e59e0027b5ad2f48c235530f6da4dd3dbe57ef",
        "Node name for S&R": "LCPositive",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "Lonecats Z-Image"
      ],
      "widgets_values_named": {
        "positive": "Lonecats Z-Image"
      },
      "color": "#25e5f3",
      "bgcolor": "#11d1df"
    },
    {
      "id": 4990,
      "type": "LCBatchImageComparer",
      "pos": [
        -3320,
        -240
      ],
      "size": [
        1070,
        1370
      ],
      "flags": {
        "pinned": true
      },
      "order": 114,
      "mode": 0,
      "inputs": [
        {
          "label": "Rough Draft",
          "name": "image_a",
          "shape": 7,
          "type": "IMAGE",
          "link": 47395
        },
        {
          "label": "Final",
          "name": "image_b",
          "shape": 7,
          "type": "IMAGE",
          "link": 47394
        }
      ],
      "outputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "links": null
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "68e59e0027b5ad2f48c235530f6da4dd3dbe57ef",
        "Node name for S&R": "LCBatchImageComparer",
        "comparer_mode": "Slide",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#233",
      "bgcolor": "#355"
    },
    {
      "id": 4991,
      "type": "LCShowText",
      "pos": [
        -1740,
        -2920
      ],
      "size": [
        420,
        390
      ],
      "flags": {
        "pinned": true
      },
      "order": 162,
      "mode": 0,
      "inputs": [
        {
          "name": "text",
          "type": "STRING",
          "link": 47339
        }
      ],
      "outputs": [
        {
          "name": "text",
          "type": "STRING",
          "links": [
            47340,
            47341,
            47342,
            47343
          ]
        }
      ],
      "title": "Final Prompt",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "68e59e0027b5ad2f48c235530f6da4dd3dbe57ef",
        "Node name for S&R": "LCShowText",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "lc_display_text": "Photorealistic, lifelike detail: A young woman with fair skin and striking green eyes is captured in a tight close-up shot inside a vehicle. Her long, wavy, light-brown hair cascades around her shoulders beneath the thick, shaggy brown fur-lined hood of an olive-green parka. The parka features visible zippers, metal snap buttons, and ribbed cuffs that reveal a grey, textured knit sweater underneath. She rests her right hand thoughtfully against her chin, fingers curled inward, while her gaze is fixed directly on the camera with a neutral, contemplative expression—her lips slightly parted, eyes wide and alert. The lighting is soft and diffused, likely from an interior source or ambient streetlight, casting subtle highlights on her cheekbones and the wet surface of the car window beside her. Through the rain-splattered glass, blurred bokeh lights in warm orange and red hues suggest a cityscape at night. The composition is centered on her face and upper body, framed by the dark interior of the car and the glowing, rainy exterior. The color palette is dominated by muted greens, greys, and browns, contrasted sharply by the vibrant, out-of-focus lights beyond the window. The overall mood evokes a sense of quiet introspection, vulnerability, or melancholy—a moment frozen in transit during a stormy night."
      },
      "widgets_values": [
        "Photorealistic, lifelike detail: A young woman with fair skin and striking green eyes is captured in a tight close-up shot inside a vehicle. Her long, wavy, light-brown hair cascades around her shoulders beneath the thick, shaggy brown fur-lined hood of an olive-green parka. The parka features visible zippers, metal snap buttons, and ribbed cuffs that reveal a grey, textured knit sweater underneath. She rests her right hand thoughtfully against her chin, fingers curled inward, while her gaze is fixed directly on the camera with a neutral, contemplative expression—her lips slightly parted, eyes wide and alert. The lighting is soft and diffused, likely from an interior source or ambient streetlight, casting subtle highlights on her cheekbones and the wet surface of the car window beside her. Through the rain-splattered glass, blurred bokeh lights in warm orange and red hues suggest a cityscape at night. The composition is centered on her face and upper body, framed by the dark interior of the car and the glowing, rainy exterior. The color palette is dominated by muted greens, greys, and browns, contrasted sharply by the vibrant, out-of-focus lights beyond the window. The overall mood evokes a sense of quiet introspection, vulnerability, or melancholy—a moment frozen in transit during a stormy night."
      ],
      "widgets_values_named": {
        "text": "Photorealistic, lifelike detail: A young woman with fair skin and striking green eyes is captured in a tight close-up shot inside a vehicle. Her long, wavy, light-brown hair cascades around her shoulders beneath the thick, shaggy brown fur-lined hood of an olive-green parka. The parka features visible zippers, metal snap buttons, and ribbed cuffs that reveal a grey, textured knit sweater underneath. She rests her right hand thoughtfully against her chin, fingers curled inward, while her gaze is fixed directly on the camera with a neutral, contemplative expression—her lips slightly parted, eyes wide and alert. The lighting is soft and diffused, likely from an interior source or ambient streetlight, casting subtle highlights on her cheekbones and the wet surface of the car window beside her. Through the rain-splattered glass, blurred bokeh lights in warm orange and red hues suggest a cityscape at night. The composition is centered on her face and upper body, framed by the dark interior of the car and the glowing, rainy exterior. The color palette is dominated by muted greens, greys, and browns, contrasted sharply by the vibrant, out-of-focus lights beyond the window. The overall mood evokes a sense of quiet introspection, vulnerability, or melancholy—a moment frozen in transit during a stormy night."
      },
      "color": "#46aa46",
      "bgcolor": "#329632"
    },
    {
      "id": 4992,
      "type": "LCShowText",
      "pos": [
        -3920,
        -2880
      ],
      "size": [
        300,
        80
      ],
      "flags": {
        "pinned": true
      },
      "order": 164,
      "mode": 0,
      "inputs": [
        {
          "name": "text",
          "type": "STRING",
          "link": 47344
        }
      ],
      "outputs": [
        {
          "name": "text",
          "type": "STRING",
          "links": [
            47345
          ]
        }
      ],
      "title": "Prompt",
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "68e59e0027b5ad2f48c235530f6da4dd3dbe57ef",
        "Node name for S&R": "LCShowText",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "lc_display_text": "Photorealistic, lifelike detail: A young woman with fair skin and striking green eyes is captured in a tight close-up shot inside a vehicle. Her long, wavy, light-brown hair cascades around her shoulders beneath the thick, shaggy brown fur-lined hood of an olive-green parka. The parka features visible zippers, metal snap buttons, and ribbed cuffs that reveal a grey, textured knit sweater underneath. She rests her right hand thoughtfully against her chin, fingers curled inward, while her gaze is fixed directly on the camera with a neutral, contemplative expression—her lips slightly parted, eyes wide and alert. The lighting is soft and diffused, likely from an interior source or ambient streetlight, casting subtle highlights on her cheekbones and the wet surface of the car window beside her. Through the rain-splattered glass, blurred bokeh lights in warm orange and red hues suggest a cityscape at night. The composition is centered on her face and upper body, framed by the dark interior of the car and the glowing, rainy exterior. The color palette is dominated by muted greens, greys, and browns, contrasted sharply by the vibrant, out-of-focus lights beyond the window. The overall mood evokes a sense of quiet introspection, vulnerability, or melancholy—a moment frozen in transit during a stormy night."
      },
      "widgets_values": [
        "Photorealistic, lifelike detail: A young woman with fair skin and striking green eyes is captured in a tight close-up shot inside a vehicle. Her long, wavy, light-brown hair cascades around her shoulders beneath the thick, shaggy brown fur-lined hood of an olive-green parka. The parka features visible zippers, metal snap buttons, and ribbed cuffs that reveal a grey, textured knit sweater underneath. She rests her right hand thoughtfully against her chin, fingers curled inward, while her gaze is fixed directly on the camera with a neutral, contemplative expression—her lips slightly parted, eyes wide and alert. The lighting is soft and diffused, likely from an interior source or ambient streetlight, casting subtle highlights on her cheekbones and the wet surface of the car window beside her. Through the rain-splattered glass, blurred bokeh lights in warm orange and red hues suggest a cityscape at night. The composition is centered on her face and upper body, framed by the dark interior of the car and the glowing, rainy exterior. The color palette is dominated by muted greens, greys, and browns, contrasted sharply by the vibrant, out-of-focus lights beyond the window. The overall mood evokes a sense of quiet introspection, vulnerability, or melancholy—a moment frozen in transit during a stormy night."
      ],
      "widgets_values_named": {
        "text": "Photorealistic, lifelike detail: A young woman with fair skin and striking green eyes is captured in a tight close-up shot inside a vehicle. Her long, wavy, light-brown hair cascades around her shoulders beneath the thick, shaggy brown fur-lined hood of an olive-green parka. The parka features visible zippers, metal snap buttons, and ribbed cuffs that reveal a grey, textured knit sweater underneath. She rests her right hand thoughtfully against her chin, fingers curled inward, while her gaze is fixed directly on the camera with a neutral, contemplative expression—her lips slightly parted, eyes wide and alert. The lighting is soft and diffused, likely from an interior source or ambient streetlight, casting subtle highlights on her cheekbones and the wet surface of the car window beside her. Through the rain-splattered glass, blurred bokeh lights in warm orange and red hues suggest a cityscape at night. The composition is centered on her face and upper body, framed by the dark interior of the car and the glowing, rainy exterior. The color palette is dominated by muted greens, greys, and browns, contrasted sharply by the vibrant, out-of-focus lights beyond the window. The overall mood evokes a sense of quiet introspection, vulnerability, or melancholy—a moment frozen in transit during a stormy night."
      },
      "color": "#232",
      "bgcolor": "#353"
    }
  ],
  "links": [
    [
      13790,
      1301,
      0,
      1271,
      0,
      "MODEL_PATCH"
    ],
    [
      18791,
      2003,
      0,
      2004,
      0,
      "MODEL"
    ],
    [
      18792,
      2000,
      0,
      2004,
      1,
      "MODEL_PATCH"
    ],
    [
      42647,
      2859,
      0,
      2856,
      0,
      "IMAGE"
    ],
    [
      42658,
      2856,
      0,
      2868,
      0,
      "IMAGE"
    ],
    [
      43399,
      3001,
      0,
      3058,
      0,
      "IMAGE"
    ],
    [
      43405,
      2856,
      5,
      3060,
      12,
      "INT"
    ],
    [
      43411,
      2856,
      2,
      3060,
      9,
      "INT"
    ],
    [
      43414,
      2856,
      3,
      3060,
      10,
      "INT"
    ],
    [
      43415,
      2856,
      1,
      3060,
      8,
      "MASK"
    ],
    [
      43416,
      3060,
      0,
      3061,
      0,
      "LC_PIPE"
    ],
    [
      43420,
      3062,
      0,
      3063,
      0,
      "*"
    ],
    [
      43431,
      3065,
      0,
      3066,
      0,
      "*"
    ],
    [
      43432,
      3068,
      0,
      3067,
      0,
      "LC_PIPE"
    ],
    [
      43433,
      3069,
      0,
      3067,
      18,
      "INT"
    ],
    [
      43434,
      3069,
      1,
      3067,
      19,
      "FLOAT"
    ],
    [
      43435,
      3069,
      2,
      3067,
      20,
      "FLOAT"
    ],
    [
      43436,
      3069,
      3,
      3067,
      21,
      "INT"
    ],
    [
      43437,
      3069,
      4,
      3067,
      22,
      "FLOAT"
    ],
    [
      43438,
      3069,
      5,
      3067,
      23,
      "COMBO"
    ],
    [
      43439,
      3069,
      6,
      3067,
      24,
      "COMBO"
    ],
    [
      43440,
      3069,
      7,
      3067,
      25,
      "INT"
    ],
    [
      43479,
      3096,
      0,
      3067,
      16,
      "CONDITIONING"
    ],
    [
      43493,
      2004,
      0,
      3060,
      1,
      "MODEL"
    ],
    [
      43494,
      1272,
      0,
      3067,
      4,
      "MODEL"
    ],
    [
      43495,
      1262,
      0,
      3067,
      17,
      "INT"
    ],
    [
      43503,
      3067,
      0,
      3099,
      0,
      "LC_PIPE"
    ],
    [
      43505,
      1275,
      0,
      3100,
      1,
      "STRING"
    ],
    [
      43508,
      3103,
      0,
      3067,
      15,
      "STRING"
    ],
    [
      43509,
      3103,
      0,
      3096,
      1,
      "STRING"
    ],
    [
      43614,
      3102,
      0,
      3100,
      0,
      "STRING"
    ],
    [
      43615,
      3159,
      0,
      3160,
      0,
      "*"
    ],
    [
      43902,
      2856,
      6,
      2032,
      1,
      "INT"
    ],
    [
      44542,
      3067,
      0,
      3287,
      0,
      "LC_PIPE"
    ],
    [
      44543,
      3098,
      0,
      3287,
      1,
      "STRING"
    ],
    [
      44544,
      3287,
      0,
      3288,
      0,
      "LC_SAVE_META"
    ],
    [
      44633,
      2019,
      0,
      3300,
      0,
      "IMAGE"
    ],
    [
      44634,
      2856,
      2,
      3300,
      2,
      "INT"
    ],
    [
      44635,
      2856,
      3,
      3300,
      3,
      "INT"
    ],
    [
      44638,
      3300,
      0,
      3301,
      0,
      "IMAGE"
    ],
    [
      44639,
      2032,
      0,
      3301,
      1,
      "IMAGE"
    ],
    [
      44640,
      3301,
      0,
      1990,
      0,
      "IMAGE"
    ],
    [
      44641,
      3301,
      0,
      2006,
      0,
      "IMAGE"
    ],
    [
      44642,
      3301,
      0,
      2004,
      3,
      "IMAGE"
    ],
    [
      44648,
      2856,
      0,
      3302,
      1,
      "IMAGE"
    ],
    [
      44649,
      2032,
      0,
      3302,
      0,
      "IMAGE"
    ],
    [
      44650,
      3302,
      0,
      3058,
      1,
      "IMAGE"
    ],
    [
      45179,
      3383,
      0,
      3385,
      0,
      "LC_VISION_MODEL"
    ],
    [
      45190,
      3383,
      0,
      3386,
      0,
      "LC_VISION_MODEL"
    ],
    [
      45191,
      3388,
      0,
      3387,
      0,
      "LC_VISION_MODEL"
    ],
    [
      45192,
      2859,
      0,
      3387,
      1,
      "IMAGE"
    ],
    [
      45193,
      3387,
      0,
      3059,
      0,
      "STRING"
    ],
    [
      45443,
      2993,
      0,
      3387,
      5,
      "INT"
    ],
    [
      45444,
      2856,
      0,
      3450,
      0,
      "IMAGE"
    ],
    [
      45445,
      3450,
      2,
      2032,
      0,
      "IMAGE"
    ],
    [
      45446,
      3450,
      2,
      2858,
      0,
      "IMAGE"
    ],
    [
      45447,
      3450,
      2,
      2864,
      0,
      "IMAGE"
    ],
    [
      45449,
      3450,
      2,
      3060,
      7,
      "IMAGE"
    ],
    [
      45513,
      3451,
      0,
      3453,
      0,
      "*"
    ],
    [
      45514,
      3452,
      0,
      3453,
      1,
      "IMAGE"
    ],
    [
      45515,
      3453,
      0,
      3455,
      0,
      "IMAGE"
    ],
    [
      45516,
      3455,
      0,
      3456,
      0,
      "IMAGE"
    ],
    [
      45517,
      3453,
      0,
      3456,
      1,
      "IMAGE"
    ],
    [
      45928,
      1292,
      0,
      4635,
      0,
      "MODEL"
    ],
    [
      45929,
      1291,
      0,
      4635,
      1,
      "CLIP"
    ],
    [
      45930,
      4635,
      0,
      1272,
      0,
      "MODEL"
    ],
    [
      45931,
      4635,
      1,
      3067,
      2,
      "CLIP"
    ],
    [
      45932,
      4635,
      1,
      3097,
      0,
      "CLIP"
    ],
    [
      45933,
      4635,
      1,
      3096,
      0,
      "CLIP"
    ],
    [
      45935,
      4636,
      0,
      1289,
      1,
      "INT"
    ],
    [
      45936,
      4636,
      0,
      1262,
      0,
      "INT"
    ],
    [
      46079,
      4697,
      0,
      4692,
      0,
      "IMAGE"
    ],
    [
      46080,
      4696,
      0,
      4693,
      0,
      "IMAGE"
    ],
    [
      46081,
      4697,
      0,
      4694,
      0,
      "IMAGE"
    ],
    [
      46082,
      4693,
      0,
      4694,
      1,
      "IMAGE"
    ],
    [
      46083,
      4703,
      0,
      4694,
      2,
      "IMAGE"
    ],
    [
      46084,
      4705,
      0,
      4694,
      3,
      "MASK"
    ],
    [
      46085,
      4697,
      0,
      4695,
      0,
      "IMAGE"
    ],
    [
      46086,
      4694,
      0,
      4695,
      1,
      "IMAGE"
    ],
    [
      46087,
      4697,
      0,
      4696,
      0,
      "IMAGE"
    ],
    [
      46088,
      4692,
      1,
      4696,
      1,
      "INT"
    ],
    [
      46089,
      4695,
      0,
      4699,
      0,
      "IMAGE"
    ],
    [
      46090,
      4697,
      0,
      4699,
      1,
      "IMAGE"
    ],
    [
      46091,
      4699,
      0,
      4700,
      0,
      "*"
    ],
    [
      46092,
      4697,
      0,
      4702,
      0,
      "IMAGE"
    ],
    [
      46093,
      4692,
      1,
      4702,
      1,
      "INT"
    ],
    [
      46094,
      4702,
      0,
      4703,
      0,
      "IMAGE"
    ],
    [
      46095,
      4697,
      0,
      4704,
      0,
      "IMAGE"
    ],
    [
      46096,
      4704,
      1,
      4705,
      0,
      "MASK"
    ],
    [
      46097,
      4694,
      2,
      4706,
      0,
      "IMAGE"
    ],
    [
      46098,
      4694,
      1,
      4707,
      0,
      "MASK"
    ],
    [
      46169,
      4765,
      0,
      4751,
      0,
      "IMAGE"
    ],
    [
      46171,
      4760,
      0,
      4754,
      0,
      "IMAGE"
    ],
    [
      46172,
      4761,
      0,
      4754,
      1,
      "IMAGE"
    ],
    [
      46173,
      4753,
      0,
      4754,
      2,
      "BOOLEAN"
    ],
    [
      46174,
      4760,
      1,
      4756,
      0,
      "MASK"
    ],
    [
      46175,
      4761,
      1,
      4756,
      1,
      "MASK"
    ],
    [
      46176,
      4753,
      0,
      4756,
      2,
      "BOOLEAN"
    ],
    [
      46177,
      4752,
      0,
      4758,
      0,
      "STRING"
    ],
    [
      46178,
      4762,
      13,
      4758,
      1,
      "STRING"
    ],
    [
      46180,
      4765,
      0,
      4760,
      0,
      "IMAGE"
    ],
    [
      46181,
      4765,
      0,
      4761,
      0,
      "IMAGE"
    ],
    [
      46182,
      4757,
      0,
      4762,
      0,
      "LC_PIPE"
    ],
    [
      46183,
      4754,
      0,
      4763,
      0,
      "IMAGE"
    ],
    [
      46184,
      4756,
      0,
      4764,
      0,
      "MASK"
    ],
    [
      46187,
      4765,
      0,
      4768,
      1,
      "IMAGE"
    ],
    [
      46188,
      4768,
      0,
      4769,
      0,
      "*"
    ],
    [
      46189,
      4748,
      1,
      1291,
      0,
      "CLIP"
    ],
    [
      46191,
      4748,
      2,
      3067,
      3,
      "VAE"
    ],
    [
      46194,
      4748,
      0,
      1292,
      0,
      "MODEL"
    ],
    [
      46197,
      4777,
      0,
      4771,
      0,
      "IMAGE"
    ],
    [
      46198,
      4773,
      0,
      4771,
      1,
      "LC_SAVE_META"
    ],
    [
      46199,
      4770,
      0,
      4771,
      2,
      "STRING"
    ],
    [
      46200,
      4770,
      1,
      4771,
      3,
      "STRING"
    ],
    [
      46202,
      4778,
      0,
      4780,
      0,
      "IMAGE"
    ],
    [
      46203,
      4776,
      0,
      4780,
      1,
      "STRING"
    ],
    [
      46206,
      4803,
      0,
      4788,
      0,
      "*"
    ],
    [
      46209,
      4799,
      11,
      4790,
      2,
      "LATENT"
    ],
    [
      46210,
      4808,
      0,
      4790,
      3,
      "COMBO"
    ],
    [
      46211,
      4799,
      24,
      4790,
      4,
      "COMBO"
    ],
    [
      46212,
      4799,
      18,
      4790,
      5,
      "INT"
    ],
    [
      46213,
      4799,
      21,
      4790,
      6,
      "INT"
    ],
    [
      46214,
      4799,
      20,
      4790,
      7,
      "FLOAT"
    ],
    [
      46215,
      4799,
      17,
      4790,
      8,
      "INT"
    ],
    [
      46216,
      4806,
      0,
      4791,
      0,
      "*"
    ],
    [
      46217,
      4790,
      2,
      4792,
      0,
      "NOISE"
    ],
    [
      46218,
      4801,
      0,
      4792,
      1,
      "GUIDER"
    ],
    [
      46220,
      4790,
      0,
      4792,
      3,
      "SIGMAS"
    ],
    [
      46221,
      4799,
      11,
      4792,
      4,
      "LATENT"
    ],
    [
      46222,
      4807,
      0,
      4793,
      0,
      "IMAGE"
    ],
    [
      46223,
      4790,
      3,
      4795,
      0,
      "NOISE"
    ],
    [
      46224,
      4805,
      0,
      4795,
      1,
      "GUIDER"
    ],
    [
      46226,
      4790,
      1,
      4795,
      3,
      "SIGMAS"
    ],
    [
      46227,
      4792,
      0,
      4795,
      4,
      "LATENT"
    ],
    [
      46228,
      4807,
      0,
      4796,
      0,
      "IMAGE"
    ],
    [
      46229,
      4790,
      6,
      4797,
      0,
      "SAMPLER"
    ],
    [
      46231,
      4810,
      0,
      4799,
      0,
      "LC_PIPE"
    ],
    [
      46234,
      4799,
      14,
      4801,
      1,
      "CONDITIONING"
    ],
    [
      46235,
      4799,
      16,
      4801,
      2,
      "CONDITIONING"
    ],
    [
      46236,
      4799,
      19,
      4801,
      3,
      "FLOAT"
    ],
    [
      46243,
      4799,
      14,
      4805,
      1,
      "CONDITIONING"
    ],
    [
      46244,
      4799,
      16,
      4805,
      2,
      "CONDITIONING"
    ],
    [
      46245,
      4799,
      22,
      4805,
      3,
      "FLOAT"
    ],
    [
      46246,
      4807,
      0,
      4806,
      0,
      "IMAGE"
    ],
    [
      46247,
      4795,
      0,
      4807,
      0,
      "LATENT"
    ],
    [
      46248,
      4799,
      3,
      4807,
      1,
      "VAE"
    ],
    [
      46249,
      4794,
      0,
      4808,
      0,
      "COMBO"
    ],
    [
      46250,
      4799,
      23,
      4808,
      1,
      "COMBO"
    ],
    [
      46251,
      4791,
      0,
      4809,
      0,
      "*"
    ],
    [
      46252,
      4809,
      0,
      4811,
      0,
      "*"
    ],
    [
      46253,
      4799,
      1,
      4790,
      0,
      "MODEL"
    ],
    [
      46254,
      4799,
      1,
      4801,
      0,
      "MODEL"
    ],
    [
      46255,
      4799,
      4,
      4805,
      0,
      "MODEL"
    ],
    [
      46256,
      4799,
      4,
      4790,
      1,
      "MODEL"
    ],
    [
      46273,
      4762,
      1,
      4813,
      0,
      "MODEL"
    ],
    [
      46274,
      4762,
      2,
      4813,
      1,
      "CLIP"
    ],
    [
      46275,
      4762,
      3,
      4813,
      2,
      "VAE"
    ],
    [
      46276,
      4756,
      0,
      4813,
      4,
      "MASK"
    ],
    [
      46277,
      4754,
      0,
      4813,
      3,
      "IMAGE"
    ],
    [
      46278,
      4758,
      0,
      4813,
      5,
      "STRING"
    ],
    [
      46279,
      4762,
      17,
      4813,
      6,
      "INT"
    ],
    [
      46280,
      4762,
      25,
      4813,
      7,
      "INT"
    ],
    [
      46281,
      4762,
      23,
      4813,
      8,
      "COMBO"
    ],
    [
      46282,
      4762,
      24,
      4813,
      9,
      "COMBO"
    ],
    [
      46283,
      4753,
      0,
      4813,
      10,
      "BOOLEAN"
    ],
    [
      46284,
      4813,
      0,
      4751,
      1,
      "IMAGE"
    ],
    [
      46285,
      4813,
      0,
      4768,
      0,
      "IMAGE"
    ],
    [
      46286,
      4813,
      0,
      4759,
      0,
      "IMAGE"
    ],
    [
      46368,
      4797,
      0,
      4795,
      2,
      "SAMPLER"
    ],
    [
      46369,
      4790,
      1,
      4797,
      1,
      "SIGMAS"
    ],
    [
      46530,
      4865,
      0,
      4852,
      0,
      "IMAGE"
    ],
    [
      46531,
      4854,
      1,
      4852,
      1,
      "IMAGE"
    ],
    [
      46532,
      4855,
      0,
      4854,
      0,
      "LC_PIPE"
    ],
    [
      46533,
      4855,
      1,
      4854,
      1,
      "IMAGE"
    ],
    [
      46534,
      4874,
      0,
      4854,
      2,
      "MODEL"
    ],
    [
      46535,
      4870,
      0,
      4854,
      5,
      "CONDITIONING"
    ],
    [
      46536,
      4882,
      0,
      4854,
      7,
      "FLOAT"
    ],
    [
      46537,
      4878,
      0,
      4854,
      8,
      "INT"
    ],
    [
      46538,
      4882,
      1,
      4854,
      9,
      "FLOAT"
    ],
    [
      46539,
      4856,
      0,
      4855,
      0,
      "LC_PIPE"
    ],
    [
      46540,
      4856,
      1,
      4855,
      1,
      "IMAGE"
    ],
    [
      46541,
      4874,
      0,
      4855,
      2,
      "MODEL"
    ],
    [
      46542,
      4860,
      0,
      4855,
      5,
      "CONDITIONING"
    ],
    [
      46543,
      4880,
      0,
      4855,
      7,
      "FLOAT"
    ],
    [
      46544,
      4878,
      0,
      4855,
      8,
      "INT"
    ],
    [
      46545,
      4880,
      1,
      4855,
      9,
      "FLOAT"
    ],
    [
      46546,
      4867,
      0,
      4856,
      0,
      "LC_PIPE"
    ],
    [
      46547,
      4865,
      0,
      4856,
      1,
      "IMAGE"
    ],
    [
      46548,
      4874,
      0,
      4856,
      2,
      "MODEL"
    ],
    [
      46549,
      4861,
      0,
      4856,
      5,
      "CONDITIONING"
    ],
    [
      46550,
      4881,
      0,
      4856,
      7,
      "FLOAT"
    ],
    [
      46551,
      4878,
      0,
      4856,
      8,
      "INT"
    ],
    [
      46552,
      4881,
      1,
      4856,
      9,
      "FLOAT"
    ],
    [
      46553,
      4855,
      1,
      4858,
      0,
      "IMAGE"
    ],
    [
      46554,
      4856,
      1,
      4859,
      0,
      "IMAGE"
    ],
    [
      46555,
      4873,
      1,
      4860,
      0,
      "CLIP"
    ],
    [
      46556,
      4876,
      0,
      4860,
      1,
      "STRING"
    ],
    [
      46557,
      4873,
      1,
      4861,
      0,
      "CLIP"
    ],
    [
      46558,
      4875,
      0,
      4861,
      1,
      "STRING"
    ],
    [
      46559,
      4854,
      2,
      4862,
      0,
      "MASK"
    ],
    [
      46560,
      4855,
      2,
      4863,
      0,
      "MASK"
    ],
    [
      46561,
      4856,
      2,
      4864,
      0,
      "MASK"
    ],
    [
      46562,
      4867,
      0,
      4866,
      0,
      "LC_PIPE"
    ],
    [
      46563,
      4854,
      1,
      4868,
      0,
      "IMAGE"
    ],
    [
      46564,
      4865,
      0,
      4868,
      1,
      "*"
    ],
    [
      46565,
      4868,
      0,
      4869,
      0,
      "*"
    ],
    [
      46566,
      4873,
      1,
      4870,
      0,
      "CLIP"
    ],
    [
      46567,
      4877,
      0,
      4870,
      1,
      "STRING"
    ],
    [
      46568,
      4854,
      1,
      4871,
      0,
      "IMAGE"
    ],
    [
      46569,
      4854,
      0,
      4872,
      0,
      "LC_PIPE"
    ],
    [
      46570,
      4866,
      1,
      4873,
      0,
      "MODEL"
    ],
    [
      46571,
      4866,
      2,
      4873,
      1,
      "CLIP"
    ],
    [
      46572,
      4873,
      0,
      4874,
      0,
      "MODEL"
    ],
    [
      46648,
      4946,
      0,
      4914,
      0,
      "*"
    ],
    [
      46649,
      4919,
      0,
      4915,
      0,
      "IMAGE"
    ],
    [
      46650,
      4919,
      0,
      4917,
      0,
      "IMAGE"
    ],
    [
      46651,
      4919,
      0,
      4918,
      0,
      "IMAGE"
    ],
    [
      46652,
      4916,
      0,
      4918,
      1,
      "IMAGE"
    ],
    [
      46653,
      4923,
      0,
      4919,
      0,
      "IMAGE"
    ],
    [
      46654,
      4916,
      0,
      4919,
      1,
      "IMAGE"
    ],
    [
      46655,
      4916,
      1,
      4919,
      2,
      "MASK"
    ],
    [
      46656,
      4924,
      0,
      4921,
      0,
      "IMAGE"
    ],
    [
      46657,
      4921,
      0,
      4922,
      0,
      "IMAGE"
    ],
    [
      46658,
      4930,
      0,
      4923,
      0,
      "IMAGE"
    ],
    [
      46659,
      4925,
      0,
      4924,
      0,
      "IMAGE"
    ],
    [
      46660,
      4929,
      0,
      4925,
      0,
      "IMAGE"
    ],
    [
      46661,
      4922,
      0,
      4949,
      0,
      "IMAGE"
    ],
    [
      46662,
      4943,
      0,
      4926,
      1,
      "INT"
    ],
    [
      46663,
      4937,
      0,
      4929,
      0,
      "IMAGE"
    ],
    [
      46664,
      4938,
      0,
      4926,
      0,
      "IMAGE"
    ],
    [
      46665,
      4943,
      0,
      4930,
      1,
      "INT"
    ],
    [
      46666,
      4935,
      0,
      4932,
      0,
      "IMAGE"
    ],
    [
      46667,
      4947,
      0,
      4932,
      1,
      "IMAGE"
    ],
    [
      46668,
      4936,
      0,
      4935,
      0,
      "IMAGE"
    ],
    [
      46669,
      4940,
      0,
      4936,
      0,
      "IMAGE"
    ],
    [
      46670,
      4941,
      0,
      4937,
      0,
      "IMAGE"
    ],
    [
      46671,
      4942,
      0,
      4938,
      0,
      "IMAGE"
    ],
    [
      46672,
      4947,
      1,
      4939,
      0,
      "MASK"
    ],
    [
      46673,
      4950,
      0,
      4940,
      0,
      "IMAGE"
    ],
    [
      46674,
      4952,
      0,
      4940,
      1,
      "IMAGE"
    ],
    [
      46675,
      4948,
      0,
      4941,
      0,
      "IMAGE"
    ],
    [
      46676,
      4949,
      0,
      4942,
      0,
      "IMAGE"
    ],
    [
      46677,
      4919,
      0,
      4944,
      0,
      "IMAGE"
    ],
    [
      46678,
      4947,
      0,
      4945,
      0,
      "IMAGE"
    ],
    [
      46679,
      4932,
      0,
      4945,
      1,
      "IMAGE"
    ],
    [
      46701,
      4950,
      0,
      4947,
      0,
      "IMAGE"
    ],
    [
      46702,
      4932,
      0,
      4948,
      0,
      "IMAGE"
    ],
    [
      46703,
      4926,
      0,
      4930,
      0,
      "IMAGE"
    ],
    [
      46704,
      4951,
      0,
      4950,
      0,
      "IMAGE"
    ],
    [
      46721,
      3097,
      0,
      1289,
      0,
      "CONDITIONING"
    ],
    [
      46722,
      1289,
      0,
      3067,
      14,
      "CONDITIONING"
    ],
    [
      46723,
      4790,
      6,
      4850,
      0,
      "SAMPLER"
    ],
    [
      46725,
      4850,
      0,
      4792,
      2,
      "SAMPLER"
    ],
    [
      46726,
      4956,
      0,
      4957,
      0,
      "IMAGE"
    ],
    [
      46727,
      4955,
      0,
      4957,
      1,
      "STRING"
    ],
    [
      46921,
      4753,
      0,
      4959,
      0,
      "BOOLEAN"
    ],
    [
      46922,
      4753,
      0,
      4960,
      0,
      "BOOLEAN"
    ],
    [
      45180,
      3100,
      0,
      3385,
      3,
      "STRING"
    ],
    [
      45934,
      4636,
      0,
      3385,
      4,
      "INT"
    ],
    [
      47122,
      4962,
      0,
      4961,
      0,
      "IMAGE"
    ],
    [
      47123,
      4973,
      0,
      4962,
      0,
      "IMAGE"
    ],
    [
      47124,
      4973,
      0,
      4963,
      0,
      "IMAGE"
    ],
    [
      47125,
      4964,
      0,
      4963,
      1,
      "IMAGE"
    ],
    [
      47126,
      4962,
      0,
      4964,
      0,
      "IMAGE"
    ],
    [
      47127,
      4961,
      1,
      4964,
      1,
      "MASK"
    ],
    [
      47128,
      4968,
      0,
      4964,
      2,
      "INT"
    ],
    [
      47129,
      4964,
      1,
      4966,
      0,
      "MASK"
    ],
    [
      47138,
      4961,
      1,
      4969,
      0,
      "MASK"
    ],
    [
      47139,
      4964,
      0,
      4970,
      0,
      "IMAGE"
    ],
    [
      47140,
      4974,
      0,
      4935,
      1,
      "MASK"
    ],
    [
      47301,
      4980,
      0,
      4978,
      0,
      "IMAGE"
    ],
    [
      47302,
      4979,
      0,
      4978,
      1,
      "IMAGE"
    ],
    [
      47303,
      4980,
      0,
      4979,
      0,
      "IMAGE"
    ],
    [
      47304,
      4985,
      13,
      4979,
      1,
      "MASK"
    ],
    [
      47305,
      4984,
      0,
      4979,
      2,
      "INT"
    ],
    [
      47306,
      4979,
      0,
      4981,
      0,
      "IMAGE"
    ],
    [
      47307,
      4983,
      0,
      4985,
      0,
      "LC_PIPE"
    ],
    [
      47330,
      4987,
      0,
      2856,
      2,
      "BOOLEAN"
    ],
    [
      47331,
      2864,
      0,
      4988,
      0,
      "LATENT"
    ],
    [
      47332,
      2856,
      4,
      4988,
      1,
      "LATENT"
    ],
    [
      47333,
      4988,
      0,
      3060,
      11,
      "LATENT"
    ],
    [
      47334,
      4989,
      0,
      4776,
      0,
      "STRING"
    ],
    [
      47335,
      4989,
      0,
      4770,
      0,
      "STRING"
    ],
    [
      47336,
      4989,
      0,
      4955,
      0,
      "STRING"
    ],
    [
      47339,
      3385,
      0,
      4991,
      0,
      "STRING"
    ],
    [
      47340,
      4991,
      0,
      3067,
      13,
      "STRING"
    ],
    [
      47341,
      4991,
      0,
      3097,
      1,
      "STRING"
    ],
    [
      47342,
      4991,
      0,
      3098,
      0,
      "STRING"
    ],
    [
      47343,
      4991,
      0,
      3161,
      0,
      "STRING"
    ],
    [
      47344,
      3059,
      0,
      4992,
      0,
      "STRING"
    ],
    [
      47345,
      4992,
      0,
      2995,
      0,
      "STRING"
    ],
    [
      47394,
      174,
      0,
      4990,
      1,
      "IMAGE"
    ],
    [
      47395,
      173,
      0,
      4990,
      0,
      "IMAGE"
    ],
    [
      46192,
      4748,
      2,
      1316,
      0,
      "VAE"
    ],
    [
      43417,
      2859,
      0,
      3062,
      0,
      "IMAGE"
    ],
    [
      45450,
      3450,
      0,
      3062,
      2,
      "IMAGE"
    ],
    [
      43419,
      2864,
      0,
      3062,
      4,
      "LATENT"
    ],
    [
      46451,
      4850,
      0,
      4803,
      0,
      "SAMPLER"
    ],
    [
      46454,
      4794,
      0,
      4803,
      2,
      "COMBO"
    ],
    [
      46455,
      4797,
      0,
      4803,
      4,
      "SAMPLER"
    ],
    [
      46456,
      4796,
      0,
      4803,
      6,
      "*"
    ],
    [
      46680,
      4950,
      0,
      4946,
      0,
      "IMAGE"
    ],
    [
      46681,
      4940,
      0,
      4946,
      2,
      "IMAGE"
    ],
    [
      46682,
      4936,
      0,
      4946,
      4,
      "IMAGE"
    ],
    [
      46683,
      4935,
      0,
      4946,
      6,
      "IMAGE"
    ],
    [
      46684,
      4945,
      0,
      4946,
      8,
      "*"
    ],
    [
      46685,
      4948,
      0,
      4946,
      10,
      "IMAGE"
    ],
    [
      46686,
      4941,
      0,
      4946,
      12,
      "IMAGE"
    ],
    [
      46687,
      4937,
      0,
      4946,
      14,
      "IMAGE"
    ],
    [
      46688,
      4929,
      0,
      4946,
      16,
      "IMAGE"
    ],
    [
      46689,
      4925,
      0,
      4946,
      18,
      "IMAGE"
    ],
    [
      46690,
      4924,
      0,
      4946,
      20,
      "IMAGE"
    ],
    [
      46691,
      4921,
      0,
      4946,
      22,
      "IMAGE"
    ],
    [
      46692,
      4922,
      0,
      4946,
      24,
      "IMAGE"
    ],
    [
      46693,
      4949,
      0,
      4946,
      26,
      "IMAGE"
    ],
    [
      46694,
      4942,
      0,
      4946,
      28,
      "IMAGE"
    ],
    [
      46695,
      4938,
      0,
      4946,
      30,
      "IMAGE"
    ],
    [
      46697,
      4926,
      0,
      4946,
      32,
      "IMAGE"
    ],
    [
      47318,
      4930,
      0,
      4946,
      34,
      "IMAGE"
    ],
    [
      47319,
      4923,
      0,
      4946,
      36,
      "IMAGE"
    ],
    [
      47320,
      4918,
      0,
      4946,
      38,
      "*"
    ],
    [
      47321,
      4917,
      0,
      4946,
      40,
      "*"
    ],
    [
      47130,
      4962,
      0,
      4967,
      0,
      "IMAGE"
    ],
    [
      47131,
      4972,
      0,
      4967,
      1,
      "BOOLEAN"
    ],
    [
      47132,
      4961,
      1,
      4967,
      2,
      "MASK"
    ],
    [
      47133,
      4972,
      1,
      4967,
      3,
      "BOOLEAN"
    ],
    [
      47134,
      4969,
      0,
      4967,
      4,
      "MASK"
    ],
    [
      47135,
      4972,
      1,
      4967,
      5,
      "BOOLEAN"
    ],
    [
      47136,
      4964,
      0,
      4967,
      6,
      "IMAGE"
    ],
    [
      47137,
      4972,
      2,
      4967,
      7,
      "BOOLEAN"
    ]
  ],
  "groups": [
    {
      "id": 27,
      "title": "Final vs. Rough Draft",
      "bounding": [
        -3330,
        -370,
        1090,
        1510
      ],
      "color": "#3f789e",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 167,
      "title": "#   Seed Variance",
      "bounding": [
        -3200,
        -2950,
        290,
        80
      ],
      "color": "#b58b2a",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 200,
      "title": "#   LC Vision📝",
      "bounding": [
        -2390,
        -2610,
        310,
        450
      ],
      "color": "#8A8",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 393,
      "title": "Image Preprocess",
      "bounding": [
        -5600,
        -2990,
        2000,
        1780
      ],
      "color": "#3f789e",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 277,
      "title": "Create Mask'",
      "bounding": [
        -5580,
        -2010,
        440,
        770
      ],
      "color": "#3f789e",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 278,
      "title": "Load Mask'",
      "bounding": [
        -4620,
        -1890,
        440,
        660
      ],
      "color": "#3f789e",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 285,
      "title": "#   !🥅Controlnet",
      "bounding": [
        -5590,
        -2050,
        960,
        820
      ],
      "color": "#b36195",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 380,
      "title": "#    !📝 Prompt Assist",
      "bounding": [
        -4170,
        -2950,
        560,
        790
      ],
      "color": "#8A8",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 381,
      "title": "Load & Size Image 📐🖼️",
      "bounding": [
        -5590,
        -2950,
        1410,
        790
      ],
      "color": "#8AA",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 405,
      "title": "Noodle Soup 🍜",
      "bounding": [
        -1740,
        -2520,
        420,
        360
      ],
      "color": "#b58b2a",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 435,
      "title": "#  Image Holder",
      "bounding": [
        -2190,
        -40,
        650,
        690
      ],
      "color": "#8AA",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 444,
      "title": "Lighting 🔦",
      "bounding": [
        -2190,
        -1140,
        1650,
        1050
      ],
      "color": "#8AA",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 443,
      "title": "# Lighting Control 🔦",
      "bounding": [
        -1850,
        -1100,
        1300,
        1000
      ],
      "color": "#ffffff",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 449,
      "title": "Noodle Soup 🍜",
      "bounding": [
        -1250,
        -2380,
        230,
        170
      ],
      "color": "#b58b2a",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 450,
      "title": "# Anypaint 🖌️",
      "bounding": [
        -970,
        -3200,
        1690,
        1000
      ],
      "color": "#3f789e",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 454,
      "title": "💾 Save Group (261003)",
      "bounding": [
        -1490,
        -40,
        950,
        630
      ],
      "color": "#67e811",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 452,
      "title": "#Save w/Metadata🗒️",
      "bounding": [
        -860,
        0,
        310,
        400
      ],
      "color": "#8AA",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 453,
      "title": "#Save Draft 📐",
      "bounding": [
        -1170,
        0,
        300,
        320
      ],
      "color": "#8AA",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 458,
      "title": "🧠 Brains",
      "bounding": [
        -3550,
        -2100,
        2240,
        910
      ],
      "color": "#a1309b",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 456,
      "title": "Noodle Soup 🍜",
      "bounding": [
        -2990,
        -1450,
        370,
        240
      ],
      "color": "#b58b2a",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 462,
      "title": "Detailer Group 🔎",
      "bounding": [
        -1260,
        -2150,
        2840,
        960
      ],
      "color": "#24971c",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 459,
      "title": "# ::Face 🙂",
      "bounding": [
        -890,
        -2110,
        590,
        910
      ],
      "color": "#3f789e",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 460,
      "title": "# ::Eyes 👀",
      "bounding": [
        -280,
        -2110,
        590,
        910
      ],
      "color": "#3f789e",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 461,
      "title": "# ::Hands 🤲🏼",
      "bounding": [
        330,
        -2110,
        590,
        910
      ],
      "color": "#3f789e",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 469,
      "title": "🎨 Post Processing (refine version)",
      "bounding": [
        -490,
        -1140,
        2830,
        2430
      ],
      "color": "#7d1919",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 466,
      "title": "🎨 Post Production Filters",
      "bounding": [
        -480,
        430,
        2490,
        850
      ],
      "color": "#8AA",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 467,
      "title": "🎯 Correct , 🔪 Sharpen , 🌫️ Depth",
      "bounding": [
        -480,
        -1100,
        1870,
        780
      ],
      "color": "#A88",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 468,
      "title": "📷 Camera, Lens, &  🎞️ Film Adjustments",
      "bounding": [
        -480,
        -300,
        2490,
        710
      ],
      "color": "#3f789e",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 471,
      "title": "#Save Mask 🎭",
      "bounding": [
        -1480,
        110,
        300,
        320
      ],
      "color": "#8AA",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 472,
      "title": "Anypaint",
      "bounding": [
        -1260,
        -3240,
        1980,
        1040
      ],
      "color": "#3f789e",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 473,
      "title": "Skin Realism Suite",
      "bounding": [
        -4730,
        -1140,
        2490,
        720
      ],
      "color": "#b58b2a",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 475,
      "title": "Relay Upscale",
      "bounding": [
        -5700,
        -1140,
        920,
        590
      ],
      "color": "#3f789e",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 474,
      "title": "#Relay Upscale Image",
      "bounding": [
        -5460,
        -1100,
        320,
        330
      ],
      "color": "#8AA",
      "flags": {
        "pinned": true
      }
    },
    {
      "id": 477,
      "title": "⚙️ User Settings",
      "bounding": [
        -3550,
        -2990,
        2240,
        840
      ],
      "color": "#ffffff",
      "flags": {
        "pinned": true
      }
    }
  ],
  "config": {},
  "extra": {
    "ds": {
      "scale": 1.3673726596798017,
      "offset": [
        2334.068384092554,
        2475.4081185846026
      ]
    },
    "frontendVersion": "1.58.5",
    "VHS_MetadataImage": true,
    "VHS_latentpreview": false,
    "VHS_KeepIntermediate": true,
    "VHS_latentpreviewrate": 0,
    "workflowRendererVersion": "LG",
    "ue_links": [
      {
        "downstream": "2004",
        "downstream_slot": 2,
        "upstream": "4748",
        "upstream_slot": 2,
        "controller": "1316",
        "type": "VAE"
      },
      {
        "downstream": "2864",
        "downstream_slot": 1,
        "upstream": "4748",
        "upstream_slot": 2,
        "controller": "1316",
        "type": "VAE"
      },
      {
        "downstream": "3060",
        "downstream_slot": 3,
        "upstream": "4748",
        "upstream_slot": 2,
        "controller": "1316",
        "type": "VAE"
      },
      {
        "downstream": "3060",
        "downstream_slot": 6,
        "upstream": "4748",
        "upstream_slot": 2,
        "controller": "1316",
        "type": "VAE"
      },
      {
        "downstream": "3067",
        "downstream_slot": 6,
        "upstream": "4748",
        "upstream_slot": 2,
        "controller": "1316",
        "type": "VAE"
      },
      {
        "downstream": "4854",
        "downstream_slot": 3,
        "upstream": "4748",
        "upstream_slot": 2,
        "controller": "1316",
        "type": "VAE"
      },
      {
        "downstream": "4855",
        "downstream_slot": 3,
        "upstream": "4748",
        "upstream_slot": 2,
        "controller": "1316",
        "type": "VAE"
      },
      {
        "downstream": "4856",
        "downstream_slot": 3,
        "upstream": "4748",
        "upstream_slot": 2,
        "controller": "1316",
        "type": "VAE"
      }
    ],
    "links_added_by_ue": [
      47420,
      47421,
      47422,
      47423,
      47424,
      47425,
      47426,
      47427
    ],
    "favoritedWidgets": {
      "favorites": []
    },
    "anomalous_hashes": {},
    "k2cf_state_id": "k2cf_1784799557580_oihrgm8ndu",
    "lc_guides": [
      {
        "axis": "y",
        "v": -3120,
        "kind": "node"
      },
      {
        "axis": "y",
        "v": -2970,
        "kind": "group"
      },
      {
        "axis": "x",
        "v": -3550,
        "kind": "group"
      },
      {
        "axis": "y",
        "v": -2100,
        "kind": "group"
      },
      {
        "axis": "x",
        "v": -1310,
        "kind": "group"
      },
      {
        "axis": "x",
        "v": -3600,
        "kind": "group"
      },
      {
        "axis": "y",
        "v": -1190,
        "kind": "group"
      },
      {
        "axis": "x",
        "v": -1260,
        "kind": "group"
      },
      {
        "axis": "y",
        "v": -2150,
        "kind": "group"
      },
      {
        "axis": "y",
        "v": -1040,
        "kind": "group"
      },
      {
        "axis": "y",
        "v": -1140,
        "kind": "group"
      },
      {
        "axis": "x",
        "v": -5600,
        "kind": "group"
      },
      {
        "axis": "y",
        "v": -90,
        "kind": "group"
      },
      {
        "axis": "x",
        "v": -4890,
        "kind": "group"
      },
      {
        "axis": "y",
        "v": -2200,
        "kind": "group"
      },
      {
        "axis": "x",
        "v": -2190,
        "kind": "group"
      },
      {
        "axis": "x",
        "v": -2240,
        "kind": "group"
      },
      {
        "axis": "y",
        "v": -220,
        "kind": "group"
      },
      {
        "axis": "x",
        "v": -490,
        "kind": "group"
      },
      {
        "axis": "y",
        "v": 1290,
        "kind": "node"
      },
      {
        "axis": "y",
        "v": -2930,
        "kind": "node"
      },
      {
        "axis": "x",
        "v": -3540,
        "kind": "node"
      },
      {
        "axis": "x",
        "v": -2280,
        "kind": "node"
      },
      {
        "axis": "y",
        "v": -1100,
        "kind": "node"
      },
      {
        "axis": "y",
        "v": -370,
        "kind": "node"
      }
    ],
    "so_workflow_key": "66424e6d-48c5-4046-bf91-8bffa9ba68ba",
    "vision_assistant": {
      "snapshots": [],
      "tour": {
        "title": "ComfyUI Workflow Tour: Lonecats Z-Image AIO ver 33",
        "source": "saved",
        "saved": 1794605972407,
        "locked": true,
        "steps": [
          {
            "title": "Load & Size Image 📐🖼️",
            "text": "Load your image and set the size here. With no image, the aspect ratio preset sets the canvas.\n\n💡 Using the image resolution is mainly for 🥅 Controlnet and I2I 🖼️. Instead of guessing the size, the node does it for you.",
            "groups": [
              {
                "title": "Load & Size Image 📐🖼️",
                "index": 8
              }
            ],
            "nodes": [
              "2859",
              "2856",
              "4987",
              "3063"
            ],
            "settings": [
              {
                "node": "3063",
                "widget": "Enable 1",
                "why": "Turn this on when you want to use a picture. Off for straight text to image."
              },
              {
                "node": "3063",
                "widget": "Enable 3",
                "why": "Image to image. Pairs with denoise in ⚙️ User Settings."
              },
              {
                "node": "3063",
                "widget": "Enable 2",
                "why": "Cuts the background out of your picture before it goes in."
              },
              {
                "node": "4987",
                "widget": "boolean",
                "why": "Uses your picture's own size, so the aspect ratio matches. Very good with 🥅 Controlnet."
              },
              {
                "node": "2856",
                "widget": "aspect_ratio",
                "why": "Pick a preset, or set it to custom and use your own width and height."
              },
              {
                "node": "2856",
                "widget": "max_resolution",
                "why": "The biggest it will process at. Lower it for VRAM savings."
              }
            ],
            "i18n": {
              "zh": {
                "title": "加载并调整图像尺寸 📐🖼️",
                "text": "在这里加载图片并设置尺寸。没有图片时，由 aspect ratio 预设决定画布。\n\n💡 使用图片分辨率主要是给 🥅 Controlnet 和 I2I 🖼️ 用的。不用你猜尺寸，节点会替你搞定。",
                "src": "390f65bb",
                "why": {
                  "3063|Enable 1": {
                    "text": "想用图片时打开。纯文生图就关掉。",
                    "src": "1e3cfd16"
                  },
                  "3063|Enable 3": {
                    "text": "图生图。配合 ⚙️ User Settings 里的 denoise 使用。",
                    "src": "4f8e5d35"
                  },
                  "3063|Enable 2": {
                    "text": "在图片进入之前先把背景抠掉。",
                    "src": "1c9eacb0"
                  },
                  "2856|aspect_ratio": {
                    "text": "选一个预设,或者设为 custom,用你自己的宽和高。",
                    "src": "550519db"
                  },
                  "2856|max_resolution": {
                    "text": "它处理的最大尺寸。调低可以省 VRAM。",
                    "src": "1821f2fa"
                  },
                  "4987|boolean": {
                    "text": "使用你图片自己的尺寸，所以宽高比一致。配合 🥅 Controlnet 效果很好。",
                    "src": "dbda72ba"
                  }
                }
              },
              "ja": {
                "title": "Load & Size Image 📐🖼️",
                "text": "ここで画像を読み込み、サイズを設定します。画像がないときは、アスペクト比のプリセットがキャンバスを決めます。\n\n💡 画像の解像度を使うのは、主に 🥅 Controlnet と I2I 🖼️ のためです。サイズを当てずっぽうで決める代わりに、ノードが決めてくれます。",
                "src": "390f65bb",
                "why": {
                  "3063|Enable 1": {
                    "text": "画像を使いたいときにオンにします。純粋な text to image ならオフ。",
                    "src": "1e3cfd16"
                  },
                  "3063|Enable 3": {
                    "text": "Image to image。⚙️ User Settings の denoise とセットで使います。",
                    "src": "4f8e5d35"
                  },
                  "3063|Enable 2": {
                    "text": "画像を入れる前に、背景を切り抜きます。",
                    "src": "1c9eacb0"
                  },
                  "2856|aspect_ratio": {
                    "text": "プリセットを選ぶか、custom にして自分の幅と高さを使います。",
                    "src": "550519db"
                  },
                  "2856|max_resolution": {
                    "text": "処理できる最大サイズ。VRAM を節約したいなら下げてください。",
                    "src": "1821f2fa"
                  },
                  "4987|boolean": {
                    "text": "画像自体のサイズを使うので、アスペクト比が一致します。🥅 Controlnet と相性抜群です。",
                    "src": "dbda72ba"
                  }
                }
              },
              "ko": {
                "title": "Load & Size Image 📐🖼️",
                "text": "여기서 이미지를 불러오고 크기를 설정하세요. 이미지가 없으면 aspect ratio 프리셋이 캔버스를 정합니다.\n\n💡 이미지 해상도 사용은 주로 🥅 Controlnet과 I2I 🖼️용이에요. 크기를 짐작할 필요 없이 노드가 알아서 해줍니다.",
                "src": "390f65bb",
                "why": {
                  "3063|Enable 1": {
                    "text": "이미지를 쓰고 싶을 때 켜세요. 순수 텍스트 투 이미지면 끄세요.",
                    "src": "1e3cfd16"
                  },
                  "3063|Enable 3": {
                    "text": "이미지 투 이미지입니다. ⚙️ User Settings의 denoise와 짝을 이룹니다.",
                    "src": "4f8e5d35"
                  },
                  "3063|Enable 2": {
                    "text": "사진이 들어가기 전에 배경을 잘라냅니다.",
                    "src": "1c9eacb0"
                  },
                  "2856|aspect_ratio": {
                    "text": "프리셋을 고르거나, custom으로 두고 원하는 width와 height를 쓰세요.",
                    "src": "550519db"
                  },
                  "2856|max_resolution": {
                    "text": "처리할 수 있는 최대 크기입니다. VRAM을 아끼려면 낮추세요.",
                    "src": "1821f2fa"
                  },
                  "4987|boolean": {
                    "text": "이미지 자체의 크기를 써서 종횡비가 맞습니다. 🥅 Controlnet과 아주 잘 어울려요.",
                    "src": "dbda72ba"
                  }
                }
              }
            }
          },
          {
            "title": "📝 Prompt Assist & 🥅 Controlnet",
            "text": "Prompt Assist reads your picture and writes a prompt from it. Controlnet makes the new image follow its shape (depth, edges, etc.).\n\n🛑 I cannot stress enough how important it is to have clear images loaded!",
            "groups": [
              {
                "title": "#    !📝 Prompt Assist",
                "index": 7
              },
              {
                "title": "#   !🥅Controlnet",
                "index": 6
              }
            ],
            "nodes": [
              "3066",
              "3387",
              "3059",
              "2032",
              "2004"
            ],
            "settings": [
              {
                "node": "3066",
                "widget": "Enable 1",
                "why": "Writes a prompt from your picture with LC Vision Caption."
              },
              {
                "node": "3066",
                "widget": "Enable 2",
                "why": "Turns on 🥅 Controlnet. ⚠️ Does not always work with model variants."
              },
              {
                "node": "3387",
                "widget": "style_tag",
                "why": "Pushes the description toward a style no matter what the picture looks like."
              },
              {
                "node": "2032",
                "widget": "preprocessor",
                "why": "CannyEdgePreprocessor is the #1 choice. DepthAnythingV2 for depth, Lineart or Manga2 for anime."
              },
              {
                "node": "2004",
                "widget": "strength",
                "why": "0.8 to 1.0. Adjust for weaker or blurry results."
              }
            ],
            "i18n": {
              "zh": {
                "title": "📝 Prompt Assist 和 🥅 Controlnet",
                "text": "Prompt Assist 读取你的图片并据此写出提示词。Controlnet 让新图跟随它的形状（depth、边缘等）。\n\n🛑 再怎么强调也不为过：一定要加载清晰的图片！",
                "src": "c40607cc",
                "why": {
                  "3066|Enable 1": {
                    "text": "用 LC Vision Caption 根据你的图片写提示词。",
                    "src": "dd95180"
                  },
                  "3066|Enable 2": {
                    "text": "打开 🥅 Controlnet。⚠️ 不一定适用于所有模型变体。",
                    "src": "4d16b73"
                  },
                  "3387|style_tag": {
                    "text": "不管图片长什么样，都把描述往某种风格上推。",
                    "src": "f46ec5f"
                  },
                  "2032|preprocessor": {
                    "text": "CannyEdgePreprocessor 是首选。深度用 DepthAnythingV2，动漫用 Lineart 或 Manga2。",
                    "src": "617924e0"
                  },
                  "2004|strength": {
                    "text": "0.8 到 1.0。结果偏弱或偏糊时调整。",
                    "src": "bf7caa05"
                  }
                }
              },
              "ja": {
                "title": "📝 Prompt Assist と 🥅 Controlnet",
                "text": "Prompt Assist は画像を読んでプロンプトを書きます。Controlnet は新しい画像をその形（depth、エッジなど）に従わせます。\n\n🛑 くっきりした画像を読み込むことがどれだけ大事か、いくら言っても足りません！",
                "src": "c40607cc",
                "why": {
                  "3066|Enable 1": {
                    "text": "LC Vision Caption で画像からプロンプトを書きます。",
                    "src": "dd95180"
                  },
                  "3066|Enable 2": {
                    "text": "🥅 Controlnet をオンにします。⚠️ モデルのバリアントによっては動かないことがあります。",
                    "src": "4d16b73"
                  },
                  "3387|style_tag": {
                    "text": "画像がどう見えるかに関係なく、説明をあるスタイルへ寄せます。",
                    "src": "f46ec5f"
                  },
                  "2032|preprocessor": {
                    "text": "CannyEdgePreprocessor が第一選択です。深度なら DepthAnythingV2、アニメなら Lineart か Manga2。",
                    "src": "617924e0"
                  },
                  "2004|strength": {
                    "text": "0.8 から 1.0。弱い結果やぼやけた結果のときに調整します。",
                    "src": "bf7caa05"
                  }
                }
              },
              "ko": {
                "title": "📝 Prompt Assist & 🥅 Controlnet",
                "text": "Prompt Assist는 그림을 읽고 거기서 프롬프트를 써줍니다. Controlnet은 새 이미지가 그 형태(depth, 엣지 등)를 따르게 해요.\n\n🛑 선명한 이미지를 불러오는 게 얼마나 중요한지 아무리 강조해도 모자랍니다!",
                "src": "c40607cc",
                "why": {
                  "3066|Enable 1": {
                    "text": "LC Vision Caption으로 이미지에서 프롬프트를 써 줍니다.",
                    "src": "dd95180"
                  },
                  "3066|Enable 2": {
                    "text": "🥅 Controlnet을 켭니다. ⚠️ 모델 변형에서는 항상 작동하지는 않아요.",
                    "src": "4d16b73"
                  },
                  "3387|style_tag": {
                    "text": "이미지가 어떻게 생겼든 설명을 특정 스타일 쪽으로 밀어줍니다.",
                    "src": "f46ec5f"
                  },
                  "2032|preprocessor": {
                    "text": "CannyEdgePreprocessor가 1순위입니다. depth는 DepthAnythingV2, 애니는 Lineart나 Manga2.",
                    "src": "617924e0"
                  },
                  "2004|strength": {
                    "text": "0.8~1.0. 결과가 약하거나 흐리면 조절하세요.",
                    "src": "bf7caa05"
                  }
                }
              }
            }
          },
          {
            "title": "⚙️ User Settings",
            "text": "Model, prompt, LoRAs and seed all live here. This is the part you touch every run.\n\n💡 Z-Image Turbo: 9 to 11 steps, cfg 1.0 to 2.0. Z-Image Base: 25 to 30 steps, cfg 4.0.",
            "groups": [
              {
                "title": "⚙️ User Settings",
                "index": 33
              }
            ],
            "nodes": [
              "4748",
              "3102",
              "3069",
              "4635",
              "4636",
              "3160",
              "3385",
              "3098",
              "1289"
            ],
            "settings": [
              {
                "node": "4748",
                "widget": "base_model",
                "why": "Pick your model family. The Optimizer sets up the rest and picks the speed-ups."
              },
              {
                "node": "3102",
                "widget": "positive",
                "why": "Type your prompt here."
              },
              {
                "node": "3069",
                "widget": "denoise",
                "why": "Mainly for I2I 🖼️. Around 0.97 for everyday use. It's also the first thing to go to when you want to change a pose."
              },
              {
                "node": "4635",
                "widget": "lora_rows",
                "why": "Add as many LoRAs as you want. Turn rows on and off without deleting them."
              },
              {
                "node": "4636",
                "widget": "base_seed",
                "why": "Fix the seed when you use LC Stop or the post processing, or it starts from scratch every time."
              },
              {
                "node": "3160",
                "widget": "Enable 2",
                "why": "Turns on the LC Vision Prompt Enhancer."
              },
              {
                "node": "3385",
                "widget": "preset",
                "why": "Enhance adds detail and keeps your intent. Refine only cleans it up. Creative Rewrite reimagines the scene."
              },
              {
                "node": "3098",
                "widget": "enabled",
                "why": "Strips flagged words from the prompt. Switching it on is your choice. It's a word filter, not a safety system."
              }
            ],
            "i18n": {
              "zh": {
                "title": "⚙️ User Settings",
                "text": "模型、提示词、LoRA 和 seed 都在这里。每次运行你都会动这一块。\n\n💡 Z-Image Turbo：9 到 11 steps，cfg 1.0 到 2.0。Z-Image Base：25 到 30 steps，cfg 4.0。",
                "src": "8cb60e6b",
                "why": {
                  "4748|base_model": {
                    "text": "选你的模型家族。Optimizer 会设置其余部分并挑选加速项。",
                    "src": "775a9b29"
                  },
                  "3102|positive": {
                    "text": "在这里输入你的提示词。",
                    "src": "faa4b02a"
                  },
                  "3069|denoise": {
                    "text": "主要用于 I2I 🖼️。日常用 0.97 左右。想改姿势时也是第一个要动的参数。",
                    "src": "be978e1b"
                  },
                  "4635|lora_rows": {
                    "text": "想加多少 LoRA 都行。可以开关各行而不用删除。",
                    "src": "10659d86"
                  },
                  "4636|base_seed": {
                    "text": "用 LC Stop 或后期处理时要固定 seed,否则每次都会从头开始。",
                    "src": "f5f0b137"
                  },
                  "3160|Enable 2": {
                    "text": "开启 LC Vision Prompt Enhancer。",
                    "src": "b14b4944"
                  },
                  "3385|preset": {
                    "text": "Enhance 补充细节并保留你的意图。Refine 只做整理。Creative Rewrite 重新构想场景。",
                    "src": "e0c5e561"
                  },
                  "3098|enabled": {
                    "text": "从提示词里剔除被标记的词。开不开由你决定。它只是个词语过滤器，不是安全系统。",
                    "src": "c12ac011"
                  }
                }
              },
              "ja": {
                "title": "⚙️ User Settings",
                "text": "モデル、プロンプト、LoRA、seed はすべてここにあります。毎回触る部分です。\n\n💡 Z-Image Turbo：9〜11 steps、cfg 1.0〜2.0。Z-Image Base：25〜30 steps、cfg 4.0。",
                "src": "8cb60e6b",
                "why": {
                  "4748|base_model": {
                    "text": "モデルファミリーを選びます。残りの設定とスピードアップは Optimizer が選びます。",
                    "src": "775a9b29"
                  },
                  "3102|positive": {
                    "text": "ここにプロンプトを入力します。",
                    "src": "faa4b02a"
                  },
                  "3069|denoise": {
                    "text": "主に I2I 🖼️ 用です。普段使いは 0.97 前後。ポーズを変えたいときも、まずここを触ります。",
                    "src": "be978e1b"
                  },
                  "4635|lora_rows": {
                    "text": "LoRA はいくつでも追加できます。行は削除せずにオン/オフできます。",
                    "src": "10659d86"
                  },
                  "4636|base_seed": {
                    "text": "LC Stop やポストプロセスを使うときは seed を固定してください。そうしないと毎回最初からやり直しになります。",
                    "src": "f5f0b137"
                  },
                  "3160|Enable 2": {
                    "text": "LC Vision Prompt Enhancer をオンにします。",
                    "src": "b14b4944"
                  },
                  "3385|preset": {
                    "text": "Enhance は意図を残したままディテールを足します。Refine は整えるだけ。Creative Rewrite はシーンを作り変えます。",
                    "src": "e0c5e561"
                  },
                  "3098|enabled": {
                    "text": "フラグの付いた単語をプロンプトから取り除きます。オンにするかはあなた次第。これは単語フィルターであって、安全システムではありません。",
                    "src": "c12ac011"
                  }
                }
              },
              "ko": {
                "title": "⚙️ User Settings",
                "text": "모델, 프롬프트, LoRA, seed가 전부 여기 있어요. 매번 만지는 부분이에요.\n\n💡 Z-Image Turbo: steps 9~11, cfg 1.0~2.0. Z-Image Base: steps 25~30, cfg 4.0.",
                "src": "8cb60e6b",
                "why": {
                  "4748|base_model": {
                    "text": "모델 패밀리를 고르세요. 나머지는 Optimizer가 설정하고 속도 향상도 골라 줍니다.",
                    "src": "775a9b29"
                  },
                  "3102|positive": {
                    "text": "여기에 프롬프트를 입력하세요.",
                    "src": "faa4b02a"
                  },
                  "3069|denoise": {
                    "text": "주로 I2I 🖼️용입니다. 평소엔 0.97 정도. 포즈를 바꾸고 싶을 때 가장 먼저 만질 값이기도 해요.",
                    "src": "be978e1b"
                  },
                  "4635|lora_rows": {
                    "text": "LoRA를 원하는 만큼 추가하세요. 지우지 않고 행을 켜고 끌 수 있어요.",
                    "src": "10659d86"
                  },
                  "4636|base_seed": {
                    "text": "LC Stop이나 후처리를 쓸 때는 seed를 고정하세요. 안 그러면 매번 처음부터 다시 시작해요.",
                    "src": "f5f0b137"
                  },
                  "3160|Enable 2": {
                    "text": "LC Vision Prompt Enhancer를 켭니다.",
                    "src": "b14b4944"
                  },
                  "3385|preset": {
                    "text": "Enhance는 디테일을 더하면서 의도를 유지합니다. Refine은 정리만 해요. Creative Rewrite는 장면을 새롭게 재해석합니다.",
                    "src": "e0c5e561"
                  },
                  "3098|enabled": {
                    "text": "표시된 단어를 프롬프트에서 제거합니다. 켤지는 당신이 정하세요. 단어 필터일 뿐 안전 시스템이 아닙니다.",
                    "src": "c12ac011"
                  }
                }
              }
            }
          },
          {
            "title": "🧠 Brains",
            "text": "Where all the fun happens. LC Sigmas runs both sampler passes from one schedule.\n\n💡 Dual samplers are here for ControlNet bleed: the first pass runs with ControlNet, the second with the clean model.",
            "groups": [
              {
                "title": "🧠 Brains",
                "index": 18
              }
            ],
            "nodes": [
              "4790",
              "4797",
              "4791",
              "4788",
              "4850"
            ],
            "settings": [
              {
                "node": "4790",
                "widget": "sigma_curve_presets",
                "why": "The shape of the schedule. Base, beta and gaussian are the ones you'll use most."
              },
              {
                "node": "4790",
                "widget": "steps",
                "why": "Total steps for both passes. 8 to 9 for Z-Image Turbo."
              },
              {
                "node": "4790",
                "widget": "step_swap",
                "why": "Where the clean model takes over. Near the end for ControlNet clean-up (around the last 10%). 0 = one pass only."
              },
              {
                "node": "4790",
                "widget": "first_pass_resample",
                "why": "Gives the first pass more time to build structure. 1 = off. 1.15 is my favorite."
              },
              {
                "node": "4797",
                "widget": "amount",
                "why": "0.75 works well for Z-Image Turbo. Negative = smoother, less detail."
              },
              {
                "node": "4788",
                "widget": "Enable 2",
                "why": "🤡 ClownShark samplers. ⚠️ Fully implicit ones are about 3x slower."
              },
              {
                "node": "4791",
                "widget": "enable",
                "why": "Stops the generation here so you can make changes before the detailers and upscalers. My favorite low VRAM trick."
              }
            ],
            "i18n": {
              "zh": {
                "title": "🧠 Brains",
                "text": "好玩的都在这儿。LC Sigmas 用同一个 schedule 跑完两遍采样。\n\n💡 双采样器是为了解决 ControlNet 渗色：第一遍带 ControlNet，第二遍用干净的模型。",
                "src": "54d96c58",
                "why": {
                  "4790|sigma_curve_presets": {
                    "text": "schedule 的形状。最常用的是 Base、beta 和 gaussian。",
                    "src": "20402e2b"
                  },
                  "4790|steps": {
                    "text": "两遍加起来的总 steps。Z-Image Turbo 用 8 到 9。",
                    "src": "381b7186"
                  },
                  "4790|step_swap": {
                    "text": "干净模型接手的位置。ControlNet 清理时放在接近末尾（最后 10% 左右）。0 = 只跑一遍。",
                    "src": "33bf23ec"
                  },
                  "4790|first_pass_resample": {
                    "text": "让第一遍有更多时间搭建结构。1 = 关闭。我最爱 1.15。",
                    "src": "2c7e99c3"
                  },
                  "4797|amount": {
                    "text": "Z-Image Turbo 用 0.75 效果不错。负值 = 更平滑，细节更少。",
                    "src": "5cbd428d"
                  },
                  "4788|Enable 2": {
                    "text": "🤡 ClownShark sampler。⚠️ 全隐式的大约慢 3 倍。",
                    "src": "64fb1dae"
                  },
                  "4791|enable": {
                    "text": "在这里停下生成，这样你可以在 detailer 和放大之前做调整。我最爱的低 VRAM 技巧。",
                    "src": "63c5d054"
                  }
                }
              },
              "ja": {
                "title": "🧠 Brains",
                "text": "楽しいことが全部ここで起こります。LC Sigmas は、1つのスケジュールから両方のサンプラーパスを回します。\n\n💡 デュアルサンプラーは ControlNet のにじみ対策です。1回目のパスは ControlNet ありで、2回目はクリーンなモデルで走らせます。",
                "src": "54d96c58",
                "why": {
                  "4790|sigma_curve_presets": {
                    "text": "スケジュールの形です。よく使うのは base、beta、gaussian です。",
                    "src": "20402e2b"
                  },
                  "4790|steps": {
                    "text": "両パスの合計 steps。Z-Image Turbo なら 8〜9。",
                    "src": "381b7186"
                  },
                  "4790|step_swap": {
                    "text": "クリーンなモデルに引き継ぐ位置。ControlNet の後始末なら終盤近く（最後の10%あたり）。0 = 1パスのみ。",
                    "src": "33bf23ec"
                  },
                  "4790|first_pass_resample": {
                    "text": "1回目のパスに構造を作る時間を長く与えます。1 = オフ。私のお気に入りは 1.15。",
                    "src": "2c7e99c3"
                  },
                  "4797|amount": {
                    "text": "Z-Image Turbo では 0.75 がよく効きます。マイナスにするとなめらかに、ディテールは減ります。",
                    "src": "5cbd428d"
                  },
                  "4788|Enable 2": {
                    "text": "🤡 ClownShark sampler。⚠️ fully implicit のものは約3倍遅いです。",
                    "src": "64fb1dae"
                  },
                  "4791|enable": {
                    "text": "ここで生成を止めて、ディテイラーとアップスケーラーの前に変更を加えられます。私のお気に入りの低VRAM術です。",
                    "src": "63c5d054"
                  }
                }
              },
              "ko": {
                "title": "🧠 Brains",
                "text": "재미있는 건 전부 여기서 일어납니다. LC Sigmas가 하나의 스케줄로 두 샘플러 패스를 모두 돌려요.\n\n💡 듀얼 샘플러는 ControlNet 번짐 때문에 있어요. 첫 패스는 ControlNet과 함께, 두 번째 패스는 깨끗한 모델로 돌립니다.",
                "src": "54d96c58",
                "why": {
                  "4790|sigma_curve_presets": {
                    "text": "스케줄의 모양입니다. 가장 많이 쓰는 건 base, beta, gaussian이에요.",
                    "src": "20402e2b"
                  },
                  "4790|steps": {
                    "text": "두 패스를 합친 총 steps입니다. Z-Image Turbo는 8~9.",
                    "src": "381b7186"
                  },
                  "4790|step_swap": {
                    "text": "깨끗한 모델이 넘겨받는 지점입니다. ControlNet 정리용이면 끝 근처(마지막 10% 정도). 0 = 패스 한 번만.",
                    "src": "33bf23ec"
                  },
                  "4790|first_pass_resample": {
                    "text": "첫 패스에 구조를 잡을 시간을 더 줍니다. 1 = 꺼짐. 1.15를 제일 좋아해요.",
                    "src": "2c7e99c3"
                  },
                  "4797|amount": {
                    "text": "Z-Image Turbo에는 0.75가 잘 맞아요. 음수 = 더 매끄럽고 디테일은 줄어듭니다.",
                    "src": "5cbd428d"
                  },
                  "4788|Enable 2": {
                    "text": "🤡 ClownShark sampler. ⚠️ fully implicit 방식은 약 3배 느립니다.",
                    "src": "64fb1dae"
                  },
                  "4791|enable": {
                    "text": "여기서 생성을 멈추면 detailer와 upscaler 전에 수정할 수 있어요. 제가 제일 좋아하는 저VRAM 요령입니다.",
                    "src": "63c5d054"
                  }
                }
              }
            }
          },
          {
            "title": "Detailers (Typ.) 🔎",
            "text": "Face, eyes and hands. Each one finds its target with SAM 3, redraws it at full detail and blends it back in.\n\n💡 They run before the upscale, on the small picture, where it's fast and sees the whole face.",
            "groups": [
              {
                "title": "Detailer Group 🔎",
                "index": 20
              },
              {
                "title": "# ::Face 🙂",
                "index": 21
              }
            ],
            "nodes": [
              "4879",
              "4856",
              "4878",
              "4881",
              "4875",
              "4877",
              "4873"
            ],
            "settings": [
              {
                "node": "4856",
                "widget": "prompt",
                "why": "\"Face\". Add :1 (Face:1) for only the biggest face."
              },
              {
                "node": "4856",
                "widget": "threshold",
                "why": "0.5. Lower finds more (and more wrong things)."
              },
              {
                "node": "4856",
                "widget": "denoise",
                "why": "0.3 to 0.35. Higher starts adding blotches and freckles, then redraws a different face."
              },
              {
                "node": "4856",
                "widget": "blend",
                "why": "1. Want a lighter touch? Lower the denoise, not the blend."
              },
              {
                "node": "4856",
                "widget": "tone_match",
                "why": "Nifty little trick. Matches the color of the redrawn area back to the image so you don't get that washed out look."
              },
              {
                "node": "4877",
                "widget": "positive",
                "why": "Hands need a prompt or don't use them: \"detailed hands and fingernails\", \"red nail polish\". Leave face empty, the main prompt is used."
              },
              {
                "node": "4873",
                "widget": "lora_rows",
                "why": "Optional character or detailer LoRA. I rarely use one."
              }
            ],
            "i18n": {
              "zh": {
                "title": "Detailers（典型）🔎",
                "text": "脸、眼睛和手。每一个都用 SAM 3 找到目标，以完整细节重绘，再融合回去。\n\n💡 它们在放大之前运行，在小图上又快又能看到整张脸。",
                "src": "29c09f35",
                "why": {
                  "4856|prompt": {
                    "text": "\"Face\"。加 :1（Face:1）就只取最大的那张脸。",
                    "src": "6f52fc5"
                  },
                  "4856|threshold": {
                    "text": "0.5。调低能找到更多(也包括更多错的)。",
                    "src": "edcb1425"
                  },
                  "4856|denoise": {
                    "text": "0.3 到 0.35。再高就开始出现斑块和雀斑，然后重画成另一张脸。",
                    "src": "7b4a1228"
                  },
                  "4856|blend": {
                    "text": "1. 想要轻一点的效果？调低 denoise，别动 blend。",
                    "src": "72f8fd2c"
                  },
                  "4856|tone_match": {
                    "text": "一个小妙招。把重绘区域的颜色匹配回图像，这样就不会出现发灰的感觉。",
                    "src": "1f166e8c"
                  },
                  "4877|positive": {
                    "text": "手部要么写提示词,要么别用:\"detailed hands and fingernails\"、\"red nail polish\"。face 留空,会用主提示词。",
                    "src": "33100d3d"
                  },
                  "4873|lora_rows": {
                    "text": "可选的角色或 detailer LoRA。我很少用。",
                    "src": "e673eb64"
                  }
                }
              },
              "ja": {
                "title": "Detailers (Typ.) 🔎",
                "text": "顔、目、手。それぞれ SAM 3 で対象を見つけ、フルディテールで描き直して、元に馴染ませます。\n\n💡 アップスケールの前、小さい画像の段階で動きます。速いし、顔全体が見えるからです。",
                "src": "29c09f35",
                "why": {
                  "4856|prompt": {
                    "text": "\"Face\"。:1 を付ける（Face:1）と、一番大きい顔だけになります。",
                    "src": "6f52fc5"
                  },
                  "4856|threshold": {
                    "text": "0.5。下げるとたくさん見つかります(間違いも増えます)。",
                    "src": "edcb1425"
                  },
                  "4856|denoise": {
                    "text": "0.3〜0.35。これ以上だとシミやそばかすが増え始め、やがて別の顔に描き直されます。",
                    "src": "7b4a1228"
                  },
                  "4856|blend": {
                    "text": "1. もっと軽く効かせたい？ blend ではなく denoise を下げます。",
                    "src": "72f8fd2c"
                  },
                  "4856|tone_match": {
                    "text": "ちょっとした裏ワザ。描き直したエリアの色を画像に合わせるので、色あせた感じになりません。",
                    "src": "1f166e8c"
                  },
                  "4877|positive": {
                    "text": "手にはプロンプトが必要です。なければ使わないでください: \"detailed hands and fingernails\"、\"red nail polish\"。face は空のままにすると、メインプロンプトが使われます。",
                    "src": "33100d3d"
                  },
                  "4873|lora_rows": {
                    "text": "オプションのキャラクター/ディテイラー LoRA。私はめったに使いません。",
                    "src": "e673eb64"
                  }
                }
              },
              "ko": {
                "title": "Detailers (Typ.) 🔎",
                "text": "얼굴, 눈, 손. 각각 SAM 3로 대상을 찾아 풀 디테일로 다시 그린 뒤 다시 합성합니다.\n\n💡 업스케일 전에, 작은 그림에서 실행됩니다. 빠르고 얼굴 전체가 보이기 때문입니다.",
                "src": "29c09f35",
                "why": {
                  "4856|prompt": {
                    "text": "\"Face\". 가장 큰 얼굴만 원하면 :1을 붙이세요(Face:1).",
                    "src": "6f52fc5"
                  },
                  "4856|threshold": {
                    "text": "0.5. 낮추면 더 많이 찾아요 (잘못된 것도 더 많이).",
                    "src": "edcb1425"
                  },
                  "4856|denoise": {
                    "text": "0.3~0.35. 더 높으면 얼룩과 주근깨가 생기기 시작하다가 다른 얼굴로 다시 그려요.",
                    "src": "7b4a1228"
                  },
                  "4856|blend": {
                    "text": "1. 더 가볍게 만지고 싶나요? blend가 아니라 denoise를 낮추세요.",
                    "src": "72f8fd2c"
                  },
                  "4856|tone_match": {
                    "text": "깔끔한 작은 트릭입니다. 다시 그린 영역의 색을 이미지에 맞춰주어 색이 바랜 느낌이 나지 않습니다.",
                    "src": "1f166e8c"
                  },
                  "4877|positive": {
                    "text": "손은 프롬프트가 필요해요. 아니면 쓰지 마세요: \"detailed hands and fingernails\", \"red nail polish\". face는 비워 두세요. 메인 프롬프트가 쓰입니다.",
                    "src": "33100d3d"
                  },
                  "4873|lora_rows": {
                    "text": "선택 사항인 캐릭터나 detailer LoRA. 저는 거의 안 써요.",
                    "src": "e673eb64"
                  }
                }
              }
            }
          },
          {
            "title": "LC Relay VSR Upscale 🧩",
            "text": "A one-step upscaler with the model, VAE and sampler built in. Fast, sharp, and it adds real skin and hair detail.\n\n✋ First use downloads the models: 5.2 GB per upscale size plus a 128 MB VAE.",
            "groups": [
              {
                "title": "Relay Upscale",
                "index": 31
              },
              {
                "title": "#Relay Upscale Image",
                "index": 32
              }
            ],
            "nodes": [
              "4977",
              "4979",
              "4978",
              "4986"
            ],
            "settings": [
              {
                "node": "4979",
                "widget": "upscale",
                "why": "4x is worth it for pictures, people actually zoom in. 2x is faster. Each one is its own model."
              },
              {
                "node": "4979",
                "widget": "detail",
                "why": "0.7 is the tested realism setting. 1.0 is the full model output. Lower moves toward a plain upscale."
              },
              {
                "node": "4979",
                "widget": "detect_faces",
                "why": "On for realism. Holds Relay's grain back on faces so skin keeps its look. Off for drawn faces with freckles or hatching."
              },
              {
                "node": "4979",
                "widget": "mask_protect_strength",
                "why": "How much of Relay's detail still lands on the face. 0.5 is the default. Raise it to keep more texture on stylized faces."
              }
            ],
            "i18n": {
              "zh": {
                "text": "一步完成的放大器，模型、VAE 和采样器都内置。快、锐利，还会加上真实的皮肤和头发细节。\n\n✋ 第一次使用会下载模型：每个放大倍数 5.2 GB，外加 128 MB 的 VAE。",
                "title": "LC Relay VSR Upscale 🧩",
                "src": "4c434993",
                "why": {
                  "4979|upscale": {
                    "text": "图片值得用 4x，大家真的会放大看。2x 更快。每个倍数都是单独的模型。",
                    "src": "4ed28141"
                  },
                  "4979|detail": {
                    "text": "0.7 是测试过的写实设置。1.0 是模型的完整输出。越低越接近普通放大。",
                    "src": "fea98790"
                  },
                  "4979|detect_faces": {
                    "text": "写实就打开。在脸上压住 Relay 的颗粒，让皮肤保持原样。手绘脸带雀斑或排线时关掉。",
                    "src": "26a23cd6"
                  },
                  "4979|mask_protect_strength": {
                    "text": "还有多少 Relay 的细节会落在脸上。默认 0.5。风格化的脸想保留更多质感就调高。",
                    "src": "f68301a7"
                  }
                }
              },
              "ja": {
                "text": "モデル、VAE、サンプラーを内蔵した 1 ステップのアップスケーラー。速くてシャープで、本物の肌と髪のディテールを加えます。\n\n✋ 初回はモデルをダウンロードします：アップスケール倍率ごとに 5.2 GB と 128 MB の VAE。",
                "title": "LC Relay VSR Upscale 🧩",
                "src": "4c434993",
                "why": {
                  "4979|upscale": {
                    "text": "画像なら 4x の価値あり。みんな本当に拡大して見ます。2x の方が速いです。倍率ごとに別のモデルです。",
                    "src": "4ed28141"
                  },
                  "4979|detail": {
                    "text": "0.7 がテスト済みのリアル設定。1.0 はモデルの出力そのまま。下げるほど普通のアップスケールに近づきます。",
                    "src": "fea98790"
                  },
                  "4979|detect_faces": {
                    "text": "リアル系ならオン。顔では Relay のグレインを抑えるので、肌の見た目が保たれます。そばかすやハッチングのある描かれた顔ではオフ。",
                    "src": "26a23cd6"
                  },
                  "4979|mask_protect_strength": {
                    "text": "Relay のディテールが顔にどれだけ残るか。デフォルトは 0.5。スタイライズされた顔で質感をもっと残したいなら上げます。",
                    "src": "f68301a7"
                  }
                }
              },
              "ko": {
                "text": "모델, VAE, 샘플러가 내장된 1스텝 업스케일러. 빠르고 선명하며, 진짜 피부와 머리카락 디테일을 더해 줍니다.\n\n✋ 처음 쓸 때 모델을 내려받습니다: 업스케일 크기마다 5.2 GB, 그리고 128 MB VAE.",
                "title": "LC Relay VSR Upscale 🧩",
                "src": "4c434993",
                "why": {
                  "4979|upscale": {
                    "text": "그림이라면 4x가 값어치를 해요. 사람들이 실제로 확대해서 봅니다. 2x가 더 빠릅니다. 배율마다 모델이 따로 있어요.",
                    "src": "4ed28141"
                  },
                  "4979|detail": {
                    "text": "0.7이 테스트한 사실감 설정입니다. 1.0은 모델 출력 그대로. 낮출수록 일반 업스케일에 가까워집니다.",
                    "src": "fea98790"
                  },
                  "4979|detect_faces": {
                    "text": "사실적인 그림이면 켜세요. 얼굴에서는 Relay의 그레인을 억제해 피부 느낌을 지켜줍니다. 주근깨나 해칭이 있는 그린 얼굴이면 끄세요.",
                    "src": "26a23cd6"
                  },
                  "4979|mask_protect_strength": {
                    "text": "Relay의 디테일이 얼굴에 얼마나 남는지. 기본값은 0.5. 스타일화된 얼굴에서 질감을 더 남기려면 올리세요.",
                    "src": "f68301a7"
                  }
                }
              }
            }
          },
          {
            "title": "Skin Realism Suite",
            "text": "Your whole skin chain in one node: grit, pores, blemishes, lines, freckles and skin tone.\n\n💡 LC Person Mask is optional. Use it when you want all the skin and none of the clothes.",
            "groups": [
              {
                "title": "Skin Realism Suite",
                "index": 30
              }
            ],
            "nodes": [
              "4961",
              "4962",
              "4964",
              "4967",
              "4972",
              "4963"
            ],
            "settings": [
              {
                "node": "4962",
                "widget": "strength",
                "why": "LC Image Denoise. 0.3 is the tested realism setting. Kills decode grit so the skin work after it doesn't amplify it."
              },
              {
                "node": "4964",
                "widget": "preset",
                "why": "Natural for every day, Soft Beauty for makeup, Editorial Detail for close-ups. Weathered for character (my favorite in most cases)."
              },
              {
                "node": "4964",
                "widget": "strength",
                "why": "0.5 is the tested realism setting. 1 = the full preset."
              },
              {
                "node": "4964",
                "widget": "pores",
                "why": "1 = as it is. Keep it at 1 or more with pigmentation, or the freckles look painted on."
              },
              {
                "node": "4964",
                "widget": "eye_detail",
                "why": "0.5. Crisper lashes and the iris lifted around a dark pupil."
              },
              {
                "node": "4964",
                "widget": "wrinkles",
                "why": "Below 0 softens, above 0 deepens the lines already there."
              }
            ],
            "i18n": {
              "zh": {
                "text": "整条皮肤处理链合成一个节点：颗粒、毛孔、瑕疵、纹路、雀斑和肤色。\n\n💡 LC Person Mask 是可选的。想要所有皮肤、不碰衣服时再用它。",
                "title": "Skin Realism Suite",
                "src": "6efdd9",
                "why": {
                  "4962|strength": {
                    "text": "LC Image Denoise。0.3 是测试过的写实设置。去掉解码带来的颗粒，免得后面的皮肤处理把它放大。",
                    "src": "6eb22bb0"
                  },
                  "4964|preset": {
                    "text": "日常用 Natural，化妆用 Soft Beauty，特写用 Editorial Detail。想要人物感就用 Weathered（大多数情况下我的最爱）。",
                    "src": "503b14e7"
                  },
                  "4964|strength": {
                    "text": "0.5 是测试过的写实设置。1 = 完整预设。",
                    "src": "abf611b0"
                  },
                  "4964|pores": {
                    "text": "1 = 保持原样。和 pigmentation 一起用时保持 1 或以上，不然雀斑看起来像画上去的。",
                    "src": "5f8d35e7"
                  },
                  "4964|eye_detail": {
                    "text": "0.5。睫毛更清晰，深色瞳孔周围的虹膜被提亮。",
                    "src": "7f8c556d"
                  },
                  "4964|wrinkles": {
                    "text": "低于 0 会柔化，高于 0 会加深已有的纹路。",
                    "src": "6dbe539f"
                  }
                }
              },
              "ja": {
                "text": "肌の処理をまとめて 1 つのノードで：ざらつき、毛穴、シミ、しわ、そばかす、肌のトーン。\n\n💡 LC Person Mask は任意です。服を避けて肌全体を対象にしたいときに使います。",
                "title": "Skin Realism Suite",
                "src": "6efdd9",
                "why": {
                  "4962|strength": {
                    "text": "LC Image Denoise。0.3 がテスト済みのリアル設定。デコードのざらつきを消して、後ろの肌処理がそれを強調しないようにします。",
                    "src": "6eb22bb0"
                  },
                  "4964|preset": {
                    "text": "普段は Natural、メイクには Soft Beauty、クローズアップには Editorial Detail。キャラクター感なら Weathered（たいていの場合いちばんのお気に入り）。",
                    "src": "503b14e7"
                  },
                  "4964|strength": {
                    "text": "0.5 がテスト済みのリアル設定。1 = プリセットそのまま。",
                    "src": "abf611b0"
                  },
                  "4964|pores": {
                    "text": "1 = そのまま。pigmentation と一緒に使うときは 1 以上に。そうしないとそばかすが描いたように見えます。",
                    "src": "5f8d35e7"
                  },
                  "4964|eye_detail": {
                    "text": "0.5。まつ毛をくっきりさせ、暗い瞳孔のまわりの虹彩を明るくします。",
                    "src": "7f8c556d"
                  },
                  "4964|wrinkles": {
                    "text": "0 未満で柔らかく、0 より上で今あるしわを深くします。",
                    "src": "6dbe539f"
                  }
                }
              },
              "ko": {
                "text": "피부 처리 체인 전체를 노드 하나로: 거칠기, 모공, 잡티, 주름, 주근깨, 피부 톤.\n\n💡 LC Person Mask는 선택 사항입니다. 옷은 빼고 피부 전체만 잡고 싶을 때 쓰세요.",
                "title": "Skin Realism Suite",
                "src": "6efdd9",
                "why": {
                  "4962|strength": {
                    "text": "LC Image Denoise. 0.3이 테스트한 사실감 설정입니다. 디코드 때 생긴 자글거림을 없애서 뒤의 피부 처리가 그걸 키우지 않게 합니다.",
                    "src": "6eb22bb0"
                  },
                  "4964|preset": {
                    "text": "평소에는 Natural, 메이크업에는 Soft Beauty, 클로즈업에는 Editorial Detail. 캐릭터 느낌을 원하면 Weathered (대부분의 경우 제 최애).",
                    "src": "503b14e7"
                  },
                  "4964|strength": {
                    "text": "0.5가 테스트한 사실감 설정입니다. 1 = 프리셋 전체.",
                    "src": "abf611b0"
                  },
                  "4964|pores": {
                    "text": "1 = 그대로. pigmentation과 함께 쓸 때는 1 이상으로 두세요. 안 그러면 주근깨가 그려 넣은 것처럼 보입니다.",
                    "src": "5f8d35e7"
                  },
                  "4964|eye_detail": {
                    "text": "0.5. 속눈썹을 또렷하게 하고 어두운 동공 주변의 홍채를 밝힙니다.",
                    "src": "7f8c556d"
                  },
                  "4964|wrinkles": {
                    "text": "0보다 낮으면 부드러워지고, 0보다 높으면 이미 있는 주름이 깊어집니다.",
                    "src": "6dbe539f"
                  }
                }
              }
            }
          },
          {
            "title": "Lighting 🔦",
            "text": "Relight the finished image from a normal map and a depth map. Real cast shadows, hard or soft.\n\n✋ Pick a preset, then drag the light on the stage. That's 90% of it.",
            "groups": [
              {
                "title": "Lighting 🔦",
                "index": 11
              },
              {
                "title": "# Lighting Control 🔦",
                "index": 12
              }
            ],
            "nodes": [
              "4691",
              "4694"
            ],
            "settings": [
              {
                "node": "4691",
                "widget": "Enable 1",
                "why": "Turns the whole lighting group on or off."
              },
              {
                "node": "4694",
                "widget": "preset",
                "why": "Start with Rembrandt or Soft window for portraits. Golden hour or Campfire for warm scenes."
              },
              {
                "node": "4694",
                "widget": "blend",
                "why": "0.7 to 0.9 looks best. Shadows are strong on purpose, that's why this is here."
              },
              {
                "node": "4694",
                "widget": "background_shadow",
                "why": "Room behind the subject? 0 to 0.2 so she isn't throwing shadows on a couch ten feet away."
              }
            ],
            "i18n": {
              "zh": {
                "title": "打光 🔦",
                "text": "用 normal map 和 depth map 给成品图重新打光。真实的投射阴影，硬光软光都行。\n\n✋ 选个预设，然后在舞台上拖动光源。基本就这样，搞定九成。",
                "src": "49d4d18e",
                "why": {
                  "4691|Enable 1": {
                    "text": "整个打光组的开关。",
                    "src": "f8748581"
                  },
                  "4694|preset": {
                    "text": "人像先试 Rembrandt 或 Soft window。暖色场景用 Golden hour 或 Campfire。",
                    "src": "aec93e06"
                  },
                  "4694|blend": {
                    "text": "0.7 到 0.9 效果最好。阴影故意做得很强，这就是它在这里的原因。",
                    "src": "32331c8"
                  },
                  "4694|background_shadow": {
                    "text": "主体后面有空间?用 0 到 0.2,这样她就不会把影子投到十英尺外的沙发上。",
                    "src": "e182bd08"
                  }
                }
              },
              "ja": {
                "title": "Lighting 🔦",
                "text": "完成した画像を、ノーマルマップと深度マップからリライトします。ハードでもソフトでも、本物のキャストシャドウが出ます。\n\n✋ プリセットを選んで、ステージ上のライトをドラッグするだけ。それで9割です。",
                "src": "49d4d18e",
                "why": {
                  "4691|Enable 1": {
                    "text": "ライティングのグループ全体をオン/オフします。",
                    "src": "f8748581"
                  },
                  "4694|preset": {
                    "text": "ポートレートなら Rembrandt か Soft window から。暖かいシーンには Golden hour か Campfire。",
                    "src": "aec93e06"
                  },
                  "4694|blend": {
                    "text": "0.7〜0.9 が一番きれいです。影はわざと強くしてあります。これがここにある理由です。",
                    "src": "32331c8"
                  },
                  "4694|background_shadow": {
                    "text": "被写体の後ろに空間がある? 0 から 0.2 にしておけば、3メートル先のソファに彼女の影が落ちたりしません。",
                    "src": "e182bd08"
                  }
                }
              },
              "ko": {
                "title": "Lighting 🔦",
                "text": "normal map과 depth map으로 완성된 이미지의 조명을 다시 만듭니다. 하드든 소프트든 진짜 같은 캐스트 섀도가 생겨요.\n\n✋ 프리셋을 고르고 스테이지에서 조명을 드래그하세요. 그게 90%예요.",
                "src": "49d4d18e",
                "why": {
                  "4691|Enable 1": {
                    "text": "조명 그룹 전체를 켜고 끕니다.",
                    "src": "f8748581"
                  },
                  "4694|preset": {
                    "text": "인물 사진에는 Rembrandt나 Soft window로 시작하세요. 따뜻한 장면에는 Golden hour나 Campfire.",
                    "src": "aec93e06"
                  },
                  "4694|blend": {
                    "text": "0.7~0.9가 가장 좋아 보입니다. 그림자가 일부러 강하게 들어갑니다. 그래서 이게 여기 있습니다.",
                    "src": "32331c8"
                  },
                  "4694|background_shadow": {
                    "text": "피사체 뒤에 공간이 있나요? 0~0.2로 하세요. 그래야 3미터 뒤 소파에 그림자가 안 드리워져요.",
                    "src": "e182bd08"
                  }
                }
              }
            }
          },
          {
            "title": "Anypaint 🖌️",
            "text": "Inpaint, outpaint and rotate after the image is made, with the Z-Image Fun ControlNet Union 2.1.\n\n💡 Write the outpaint prompt for the whole wider picture: \"pink haired woman sitting on a couch wearing a pink sweater\", not \"show her legs\".",
            "groups": [
              {
                "title": "Anypaint",
                "index": 29
              },
              {
                "title": "# Anypaint 🖌️",
                "index": 14
              }
            ],
            "nodes": [
              "4749",
              "4753",
              "4760",
              "4761",
              "4758",
              "4752",
              "4813"
            ],
            "settings": [
              {
                "node": "4753",
                "widget": "value",
                "why": "Inpaint or outpaint. Both will populate, but only the one you pick works."
              },
              {
                "node": "4760",
                "widget": "block",
                "why": "Stops it from running until a mask is drawn. Run once so the picture shows, then paint."
              },
              {
                "node": "4758",
                "widget": "state",
                "why": "Base prompt or the Anypaint prompt. Outpaint works okay with the base prompt. Inpainting needs the Anypaint prompt."
              },
              {
                "node": "4813",
                "widget": "control",
                "why": "Use the 8steps version with Z-Image Turbo. The plain 2.1 is for more steps or Base. Goes in models/model_patches."
              },
              {
                "node": "4813",
                "widget": "control_strength",
                "why": "1.0 is the trained value. Lower it if the new area looks stiff, raise it if it ignores the picture around it."
              },
              {
                "node": "4813",
                "widget": "boundary_px",
                "why": "32 by default. Raise it if a seam ever shows."
              }
            ],
            "i18n": {
              "zh": {
                "title": "Anypaint 🖌️",
                "text": "出图之后，用 Z-Image Fun ControlNet Union 2.1 做局部重绘、扩图和旋转。\n\n💡 扩图提示词要写整张变宽后的画面：\"pink haired woman sitting on a couch wearing a pink sweater\"，而不是 \"show her legs\"。",
                "src": "d8a6edc8",
                "why": {
                  "4753|value": {
                    "text": "Inpaint 或 outpaint。两个都会显示，但只有你选的那个起作用。",
                    "src": "19480106"
                  },
                  "4760|block": {
                    "text": "在画出 mask 之前阻止运行。先运行一次让图片显示出来，再去涂。",
                    "src": "b9b1eb05"
                  },
                  "4758|state": {
                    "text": "基础提示词或 Anypaint 提示词。扩图用基础提示词还行。局部重绘需要 Anypaint 提示词。",
                    "src": "f3f22c11"
                  },
                  "4813|control": {
                    "text": "Z-Image Turbo 用 8steps 版本。普通的 2.1 用于更多 steps 或 Base。放进 models/model_patches。",
                    "src": "49ac6cb7"
                  },
                  "4813|control_strength": {
                    "text": "1.0 是训练值。新区域看起来生硬就调低,无视周围画面就调高。",
                    "src": "d22cbdb3"
                  },
                  "4813|boundary_px": {
                    "text": "默认 32。如果出现接缝就调高。",
                    "src": "2af2d065"
                  }
                }
              },
              "ja": {
                "title": "Anypaint 🖌️",
                "text": "画像ができたあとで、Z-Image Fun ControlNet Union 2.1 を使ってインペイント、アウトペイント、回転ができます。\n\n💡 アウトペイントのプロンプトは、広げた画像全体について書きます：\"pink haired woman sitting on a couch wearing a pink sweater\"。\"show her legs\" ではありません。",
                "src": "d8a6edc8",
                "why": {
                  "4753|value": {
                    "text": "inpaint か outpaint。どちらも表示されますが、選んだ方だけが動きます。",
                    "src": "19480106"
                  },
                  "4760|block": {
                    "text": "マスクが描かれるまで実行を止めます。一度実行して画像を表示させてから、塗ってください。",
                    "src": "b9b1eb05"
                  },
                  "4758|state": {
                    "text": "ベースのプロンプトか Anypaint のプロンプト。アウトペイントはベースのプロンプトでもまずまず動きます。インペイントには Anypaint のプロンプトが必要です。",
                    "src": "f3f22c11"
                  },
                  "4813|control": {
                    "text": "Z-Image Turbo には 8steps バージョンを使います。通常の 2.1 は steps を増やす場合か Base 用です。models/model_patches に入れます。",
                    "src": "49ac6cb7"
                  },
                  "4813|control_strength": {
                    "text": "1.0 が学習時の値です。新しい領域が硬く見えるなら下げ、周りの絵を無視するなら上げます。",
                    "src": "d22cbdb3"
                  },
                  "4813|boundary_px": {
                    "text": "デフォルトは 32。継ぎ目が見えたら上げてください。",
                    "src": "2af2d065"
                  }
                }
              },
              "ko": {
                "title": "Anypaint 🖌️",
                "text": "이미지를 만든 뒤 Z-Image Fun ControlNet Union 2.1로 inpaint, outpaint, 회전을 합니다.\n\n💡 outpaint 프롬프트는 넓어진 전체 그림 기준으로 쓰세요: \"pink haired woman sitting on a couch wearing a pink sweater\"처럼요. \"show her legs\"는 안 돼요.",
                "src": "d8a6edc8",
                "why": {
                  "4753|value": {
                    "text": "Inpaint 또는 outpaint. 둘 다 표시되지만 고른 것만 작동합니다.",
                    "src": "19480106"
                  },
                  "4760|block": {
                    "text": "마스크를 그릴 때까지 실행을 멈춥니다. 한 번 실행해서 사진이 보이게 한 다음, 칠하세요.",
                    "src": "b9b1eb05"
                  },
                  "4758|state": {
                    "text": "기본 프롬프트 또는 Anypaint 프롬프트. outpaint는 기본 프롬프트로도 괜찮게 돼요. inpaint는 Anypaint 프롬프트가 필요합니다.",
                    "src": "f3f22c11"
                  },
                  "4813|control": {
                    "text": "Z-Image Turbo에는 8steps 버전을 쓰세요. 일반 2.1은 steps를 더 쓰거나 Base용입니다. models/model_patches에 넣으세요.",
                    "src": "49ac6cb7"
                  },
                  "4813|control_strength": {
                    "text": "1.0이 학습된 값입니다. 새 영역이 뻣뻣해 보이면 낮추고, 주변 그림을 무시하면 올리세요.",
                    "src": "d22cbdb3"
                  },
                  "4813|boundary_px": {
                    "text": "기본값 32. 이음새가 보이면 올리세요.",
                    "src": "2af2d065"
                  }
                }
              }
            }
          },
          {
            "title": "🎯 Correct, 🔪 Sharpen, 🌫️ Depth",
            "text": "The post processing starts here. It runs left to right, top to bottom: the same order light takes through a real camera.\n\n🛑 Fix the seed, run the picture, then don't change anything upstream so it doesn't reprocess.",
            "groups": [
              {
                "title": "🎯 Correct , 🔪 Sharpen , 🌫️ Depth",
                "index": 26
              }
            ],
            "nodes": [
              "4914",
              "4950",
              "4940",
              "4935",
              "4932"
            ],
            "settings": [
              {
                "node": "4932",
                "widget": "look",
                "why": "Depth FX, Bloom, Lens Profile, Film Stock and Film Grain share looks. Pick the same one on each and they complement each other."
              },
              {
                "node": "4932",
                "widget": "light_wrap",
                "why": "Background light bleeds over the subject's edges. Kills the cut-out sticker look."
              }
            ],
            "i18n": {
              "zh": {
                "title": "🎯 Correct，🔪 Sharpen，🌫️ Depth",
                "text": "后期处理从这里开始。顺序是从左到右、从上到下：和光线穿过真实相机的顺序一样。\n\n🛑 固定 seed，跑一张图，然后不要改动上游任何东西，这样就不会重新处理。",
                "src": "f3bbc957",
                "why": {
                  "4932|look": {
                    "text": "Depth FX、Bloom、Lens Profile、Film Stock 和 Film Grain 共用同一套 looks。每个都选同一个,它们会相辅相成。",
                    "src": "e3073831"
                  },
                  "4932|light_wrap": {
                    "text": "背景光会溢到主体边缘上。消除抠图贴纸感。",
                    "src": "e35c5fe8"
                  }
                }
              },
              "ja": {
                "title": "🎯 Correct, 🔪 Sharpen, 🌫️ Depth",
                "text": "ポストプロセスはここから始まります。左から右、上から下の順で動きます。実際のカメラで光が通る順番と同じです。\n\n🛑 seed を固定して画像を生成したら、上流は何も変えないでください。再処理されてしまいます。",
                "src": "f3bbc957",
                "why": {
                  "4932|look": {
                    "text": "Depth FX、Bloom、Lens Profile、Film Stock、Film Grain は look を共有します。どれも同じものを選べば、お互いを引き立て合います。",
                    "src": "e3073831"
                  },
                  "4932|light_wrap": {
                    "text": "背景の光が被写体の縁にまわり込みます。切り抜きシールっぽさが消えます。",
                    "src": "e35c5fe8"
                  }
                }
              },
              "ko": {
                "title": "🎯 Correct, 🔪 Sharpen, 🌫️ Depth",
                "text": "후처리는 여기서 시작합니다. 왼쪽에서 오른쪽, 위에서 아래로 실행됩니다. 실제 카메라에서 빛이 지나가는 순서와 같습니다.\n\n🛑 seed를 고정하고 사진을 돌린 다음, 재처리되지 않도록 업스트림은 건드리지 마세요.",
                "src": "f3bbc957",
                "why": {
                  "4932|look": {
                    "text": "Depth FX, Bloom, Lens Profile, Film Stock, Film Grain이 룩을 공유합니다. 각각에서 같은 걸 고르면 서로 잘 어울려요.",
                    "src": "e3073831"
                  },
                  "4932|light_wrap": {
                    "text": "배경 빛이 피사체 가장자리로 번집니다. 오려 붙인 스티커 같은 느낌을 없애 줘요.",
                    "src": "e35c5fe8"
                  }
                }
              }
            }
          },
          {
            "title": "📷 Camera, Lens, & 🎞️ Film",
            "text": "The film look. Most of the color work happens in Lift Gamma Gain.",
            "groups": [
              {
                "title": "📷 Camera, Lens, &  🎞️ Film Adjustments",
                "index": 27
              }
            ],
            "nodes": [
              "4948",
              "4941",
              "4937",
              "4929",
              "4922"
            ],
            "settings": [
              {
                "node": "4948",
                "widget": "lift",
                "why": "Lift = shadows, gamma = midtones, gain = highlights."
              },
              {
                "node": "4941",
                "widget": "vibrance",
                "why": "Boosts muted colors without frying the saturated ones. Great for anime and graphics. Leave it off for realism."
              },
              {
                "node": "4937",
                "widget": "mode",
                "why": "Pro-Mist is a diffusion filter in front of the lens. A little is dreamy. A lot is fog."
              },
              {
                "node": "4929",
                "widget": "lens",
                "why": "Cool feature: real lens distortion, chromatic aberration and vignette from a true camera lens."
              },
              {
                "node": "4922",
                "widget": "strength",
                "why": "0.6 to 0.9 often looks more natural than full."
              }
            ],
            "i18n": {
              "zh": {
                "title": "📷 Camera、Lens 和 🎞️ Film",
                "text": "胶片感。大部分调色都在 Lift Gamma Gain 里完成。",
                "src": "8eecdb46",
                "why": {
                  "4948|lift": {
                    "text": "Lift = 阴影，gamma = 中间调，gain = 高光。",
                    "src": "3e634e7e"
                  },
                  "4941|vibrance": {
                    "text": "提升暗淡的颜色，又不会把已饱和的颜色烧过头。动漫和图形很适合。写实时关掉。",
                    "src": "de058a49"
                  },
                  "4937|mode": {
                    "text": "Pro-Mist 是镜头前的柔光滤镜。一点点很梦幻，太多就成雾了。",
                    "src": "443ed64d"
                  },
                  "4929|lens": {
                    "text": "很酷的功能:来自真实镜头的镜头畸变、色差和暗角。",
                    "src": "c953267"
                  },
                  "4922|strength": {
                    "text": "0.6 到 0.9 通常比满值更自然。",
                    "src": "387b405b"
                  }
                }
              },
              "ja": {
                "title": "📷 Camera, Lens, & 🎞️ Film",
                "text": "フィルムの質感。色の作業の大半は Lift Gamma Gain で行います。",
                "src": "8eecdb46",
                "why": {
                  "4948|lift": {
                    "text": "Lift = シャドウ、gamma = 中間調、gain = ハイライト。",
                    "src": "3e634e7e"
                  },
                  "4941|vibrance": {
                    "text": "くすんだ色を持ち上げ、彩度の高い色は飛ばしません。アニメやグラフィックスに最適。リアル系ではオフに。",
                    "src": "de058a49"
                  },
                  "4937|mode": {
                    "text": "Pro-Mist はレンズの前に付ける拡散フィルターです。少しなら夢のような雰囲気、多すぎると霧です。",
                    "src": "443ed64d"
                  },
                  "4929|lens": {
                    "text": "便利な機能です。本物のカメラレンズ由来の、実際のレンズ歪み、色収差、ビネットが再現できます。",
                    "src": "c953267"
                  },
                  "4922|strength": {
                    "text": "フルより 0.6〜0.9 の方が自然に見えることが多いです。",
                    "src": "387b405b"
                  }
                }
              },
              "ko": {
                "title": "📷 Camera, Lens, & 🎞️ Film",
                "text": "필름 룩입니다. 색 작업 대부분은 Lift Gamma Gain에서 일어납니다.",
                "src": "8eecdb46",
                "why": {
                  "4948|lift": {
                    "text": "Lift = 그림자, gamma = 중간톤, gain = 하이라이트.",
                    "src": "3e634e7e"
                  },
                  "4941|vibrance": {
                    "text": "이미 진한 색은 건드리지 않고 칙칙한 색만 살려줍니다. 애니와 그래픽에 좋아요. 사실적인 그림에는 끄세요.",
                    "src": "de058a49"
                  },
                  "4937|mode": {
                    "text": "Pro-Mist는 렌즈 앞에 다는 확산 필터입니다. 조금이면 몽환적이고, 많으면 안개예요.",
                    "src": "443ed64d"
                  },
                  "4929|lens": {
                    "text": "멋진 기능입니다. 실제 카메라 렌즈 그대로의 렌즈 왜곡, 색수차, 비네트를 줍니다.",
                    "src": "c953267"
                  },
                  "4922|strength": {
                    "text": "0.6~0.9가 풀 값보다 더 자연스러워 보일 때가 많습니다.",
                    "src": "387b405b"
                  }
                }
              }
            }
          },
          {
            "title": "🎨 Post Production Filters",
            "text": "LUTs, phone filters, Natural Look, grain, text and watermark. The finishing touches.",
            "groups": [
              {
                "title": "🎨 Post Production Filters",
                "index": 25
              }
            ],
            "nodes": [
              "4942",
              "4938",
              "4926",
              "4930",
              "4919"
            ],
            "settings": [
              {
                "node": "4942",
                "widget": "strength",
                "why": "0.2 to 0.4 is usually plenty. Full strength is a sledgehammer."
              },
              {
                "node": "4942",
                "widget": "log",
                "why": "Leave it off unless the LUT was made for log footage (it will typically say so in the name)."
              },
              {
                "node": "4938",
                "widget": "preset",
                "why": "It's Instagram filters."
              },
              {
                "node": "4926",
                "widget": "strength",
                "why": "The holy grail of realism. Takes the AI look out without making it dull. 0.5 is the tested realism setting."
              },
              {
                "node": "4926",
                "widget": "skin",
                "why": "How much orange or plastic skin gets calmed. 0 = skin untouched. 0.75 tested best."
              },
              {
                "node": "4930",
                "widget": "strength",
                "why": "Keep it low. 0.22 is the tested realism setting. It runs after Natural Look so it lands on the finished picture."
              },
              {
                "node": "4930",
                "widget": "response",
                "why": "This is nifty. Three settings. Sensor mimics the grain from a phone camera 🤔"
              },
              {
                "node": "4919",
                "widget": "opacity",
                "why": "Any image as a watermark. Drag it into place on the node."
              }
            ],
            "i18n": {
              "zh": {
                "title": "🎨 后期制作滤镜",
                "text": "LUT、手机滤镜、Natural Look、grain、文字和水印。最后的收尾。",
                "src": "f6476d61",
                "why": {
                  "4942|strength": {
                    "text": "0.2 到 0.4 通常就够了。满强度就是大锤。",
                    "src": "72cc8df0"
                  },
                  "4942|log": {
                    "text": "除非这个 LUT 是为 log 素材做的,否则保持关闭(通常名字里会写明)。",
                    "src": "3bf42acb"
                  },
                  "4938|preset": {
                    "text": "就是 Instagram 那种滤镜。",
                    "src": "5d152689"
                  },
                  "4926|strength": {
                    "text": "真实感的圣杯。去掉 AI 味又不会变得寡淡。0.5 是测试过的写实设置。",
                    "src": "4ac8d7c8"
                  },
                  "4926|skin": {
                    "text": "压制多少橙色或塑料感的皮肤。0 = 皮肤原封不动。0.75 测试效果最好。",
                    "src": "89bccdd3"
                  },
                  "4930|strength": {
                    "text": "保持低值。0.22 是测试过的写实设置。它放在 Natural Look 之后，让颗粒落在成品画面上。",
                    "src": "e006a2ce"
                  },
                  "4919|opacity": {
                    "text": "任意图片都能当水印。在节点上把它拖到位。",
                    "src": "b8a605d9"
                  },
                  "4930|response": {
                    "text": "这个很妙。三个设置。Sensor 模仿手机相机的颗粒🤔",
                    "src": "65dc382c"
                  }
                }
              },
              "ja": {
                "title": "🎨 ポストプロダクションフィルター",
                "text": "LUT、スマホフィルター、Natural Look、グレイン、テキスト、透かし。仕上げです。",
                "src": "f6476d61",
                "why": {
                  "4942|strength": {
                    "text": "0.2〜0.4 で十分なことがほとんど。フルパワーはハンマーで叩くようなものです。",
                    "src": "72cc8df0"
                  },
                  "4942|log": {
                    "text": "LUT が log 素材向けに作られたものでない限りオフのままに(たいていは名前にそう書いてあります)。",
                    "src": "3bf42acb"
                  },
                  "4938|preset": {
                    "text": "インスタ風フィルターです。",
                    "src": "5d152689"
                  },
                  "4926|strength": {
                    "text": "リアリズムの聖杯です。のっぺりさせずに AI っぽさを取ります。0.5 がテスト済みのリアル設定。",
                    "src": "4ac8d7c8"
                  },
                  "4926|skin": {
                    "text": "オレンジっぽい肌やプラスチックっぽい肌をどれだけ抑えるか。0 = 肌には手を加えません。0.75 がテストでいちばん良好。",
                    "src": "89bccdd3"
                  },
                  "4930|strength": {
                    "text": "低めに。0.22 がテスト済みのリアル設定。仕上がった画像に乗るよう、Natural Look の後に置いています。",
                    "src": "e006a2ce"
                  },
                  "4919|opacity": {
                    "text": "好きな画像をウォーターマークにできます。ノード上でドラッグして位置を決めます。",
                    "src": "b8a605d9"
                  },
                  "4930|response": {
                    "text": "これはなかなかいいですよ。設定は3つ。Sensor はスマホカメラのグレインを真似ます🤔",
                    "src": "65dc382c"
                  }
                }
              },
              "ko": {
                "title": "🎨 후반 작업 필터",
                "text": "LUT, 폰 필터, Natural Look, grain, 텍스트, 워터마크. 마무리 손질입니다.",
                "src": "f6476d61",
                "why": {
                  "4942|strength": {
                    "text": "0.2~0.4면 대개 충분합니다. 풀 strength는 오버킬입니다.",
                    "src": "72cc8df0"
                  },
                  "4942|log": {
                    "text": "LUT가 로그 영상용으로 만들어진 게 아니면 꺼 두세요 (보통 이름에 적혀 있어요).",
                    "src": "3bf42acb"
                  },
                  "4938|preset": {
                    "text": "인스타그램 필터예요.",
                    "src": "5d152689"
                  },
                  "4926|strength": {
                    "text": "사실감의 성배. 밋밋하게 만들지 않고 AI 티를 빼 줍니다. 0.5가 테스트한 사실감 설정입니다.",
                    "src": "4ac8d7c8"
                  },
                  "4926|skin": {
                    "text": "주황빛이나 플라스틱 같은 피부를 얼마나 가라앉힐지. 0 = 피부는 그대로. 0.75가 테스트에서 가장 좋았습니다.",
                    "src": "89bccdd3"
                  },
                  "4930|strength": {
                    "text": "낮게 유지하세요. 0.22가 테스트한 사실감 설정입니다. 완성된 그림 위에 얹히도록 Natural Look 뒤에 둡니다.",
                    "src": "e006a2ce"
                  },
                  "4919|opacity": {
                    "text": "어떤 이미지든 워터마크로 쓸 수 있어요. 노드 위에서 드래그해 위치를 잡으세요.",
                    "src": "b8a605d9"
                  },
                  "4930|response": {
                    "text": "이거 꽤 쓸만해요. 설정은 세 가지. Sensor는 폰 카메라의 그레인을 흉내 내요🤔",
                    "src": "65dc382c"
                  }
                }
              }
            }
          },
          {
            "title": "💾 Save & Image Holder",
            "text": "NOTHING SAVES UNLESS IT IS TURNED ON! Use the save selector to pick what gets saved.\n\n💡 The image holder keeps your last picture for a before and after.",
            "groups": [
              {
                "title": "💾 Save Group (261003)",
                "index": 15
              },
              {
                "title": "#Save w/Metadata🗒️",
                "index": 16
              },
              {
                "title": "#Save Draft 📐",
                "index": 17
              },
              {
                "title": "#Save Mask 🎭",
                "index": 28
              },
              {
                "title": "#  Image Holder",
                "index": 10
              }
            ],
            "nodes": [
              "4775",
              "4989",
              "4770",
              "4771",
              "4955",
              "3453",
              "3455"
            ],
            "settings": [
              {
                "node": "4989",
                "widget": "positive",
                "why": "Your filename prefix."
              },
              {
                "node": "4770",
                "widget": "timestamp",
                "why": "Date stamp on the folder. Change it to taste, it's annoying sometimes."
              },
              {
                "node": "4770",
                "widget": "include_prefix_in_path",
                "why": "Puts your filename first in the folder name. Very helpful if you use different models."
              },
              {
                "node": "4771",
                "widget": "embed_civitai",
                "why": "Writes the CivitAI metadata into the image."
              },
              {
                "node": "4955",
                "widget": "folder",
                "why": "Masks get their own folder."
              },
              {
                "node": "3453",
                "widget": "state",
                "why": "Hold at Draft. Turn it off to hold the final."
              },
              {
                "node": "3455",
                "widget": "mode",
                "why": "Hold the last image (refreshes every run) or hold until cleared."
              }
            ],
            "i18n": {
              "zh": {
                "title": "💾 Save 和 Image Holder",
                "text": "没打开的东西一概不保存!用 save selector 选择要保存什么。\n\n💡 image holder 会留住你的上一张图,方便做前后对比。",
                "src": "d8cb53aa",
                "why": {
                  "4770|timestamp": {
                    "text": "文件夹上的日期戳。随你喜好修改,有时挺烦的。",
                    "src": "5a3526bb"
                  },
                  "4770|include_prefix_in_path": {
                    "text": "把你的文件名放在文件夹名最前面。如果你用多个不同的模型，这个非常有用。",
                    "src": "137ae2fa"
                  },
                  "4771|embed_civitai": {
                    "text": "把 CivitAI metadata 写进图像里。",
                    "src": "f7ac613a"
                  },
                  "4955|folder": {
                    "text": "遮罩有自己的文件夹。",
                    "src": "22066e88"
                  },
                  "3453|state": {
                    "text": "停在 Draft。关掉它则停在最终版。",
                    "src": "e4358802"
                  },
                  "3455|mode": {
                    "text": "保留最后一张图(每次运行刷新),或保留到清除为止。",
                    "src": "30b25518"
                  },
                  "4989|positive": {
                    "text": "你的文件名前缀。",
                    "src": "c08cf981"
                  }
                }
              },
              "ja": {
                "title": "💾 Save と Image Holder",
                "text": "オンにしないと何も保存されません! save selector で保存するものを選びます。\n\n💡 image holder は直前の画像を保持するので、before/after を比べられます。",
                "src": "d8cb53aa",
                "why": {
                  "4770|timestamp": {
                    "text": "フォルダの日付スタンプです。好みで変えてください。たまにうっとうしいので。",
                    "src": "5a3526bb"
                  },
                  "4770|include_prefix_in_path": {
                    "text": "フォルダ名の先頭にファイル名を付けます。複数のモデルを使うときにとても便利です。",
                    "src": "137ae2fa"
                  },
                  "4771|embed_civitai": {
                    "text": "CivitAI メタデータを画像に書き込みます。",
                    "src": "f7ac613a"
                  },
                  "4955|folder": {
                    "text": "マスクは専用のフォルダに入ります。",
                    "src": "22066e88"
                  },
                  "3453|state": {
                    "text": "Draft で止めます。オフにすると最終版で止まります。",
                    "src": "e4358802"
                  },
                  "3455|mode": {
                    "text": "最後の画像を保持する(Run ごとに更新)か、クリアするまで保持します。",
                    "src": "30b25518"
                  },
                  "4989|positive": {
                    "text": "ファイル名のプレフィックス。",
                    "src": "c08cf981"
                  }
                }
              },
              "ko": {
                "title": "💾 Save & Image Holder",
                "text": "켜 놓지 않으면 아무것도 저장되지 않습니다! save selector로 저장할 것을 고르세요.\n\n💡 image holder가 마지막 이미지를 보관해서 비포 앤 애프터를 볼 수 있어요.",
                "src": "d8cb53aa",
                "why": {
                  "4770|timestamp": {
                    "text": "폴더에 붙는 날짜 도장입니다. 취향껏 바꾸세요. 가끔 거슬리거든요.",
                    "src": "5a3526bb"
                  },
                  "4770|include_prefix_in_path": {
                    "text": "폴더 이름 맨 앞에 파일 이름을 붙입니다. 여러 모델을 쓸 때 아주 유용합니다.",
                    "src": "137ae2fa"
                  },
                  "4771|embed_civitai": {
                    "text": "CivitAI 메타데이터를 이미지에 기록합니다.",
                    "src": "f7ac613a"
                  },
                  "4955|folder": {
                    "text": "마스크는 자기 폴더를 가집니다.",
                    "src": "22066e88"
                  },
                  "3453|state": {
                    "text": "Draft에서 멈춥니다. 끄면 최종본까지 갑니다.",
                    "src": "e4358802"
                  },
                  "3455|mode": {
                    "text": "마지막 이미지를 유지(Run마다 갱신)하거나, 지울 때까지 유지합니다.",
                    "src": "30b25518"
                  },
                  "4989|positive": {
                    "text": "파일 이름 prefix입니다.",
                    "src": "c08cf981"
                  }
                }
              }
            }
          }
        ],
        "i18n": {
          "zh": {
            "title": "ComfyUI 工作流导览:Lonecats Z-Image AIO ver 33"
          },
          "ja": {
            "title": "ComfyUI Workflow Tour: Lonecats Z-Image AIO ver 33"
          },
          "ko": {
            "title": "ComfyUI Workflow Tour: Lonecats Z-Image AIO ver 33"
          }
        }
      }
    }
  },
  "version": 0.4,
  "seed_widgets": {
    "1289": 4,
    "3385": 8,
    "3387": 10,
    "4790": 25,
    "4813": 3,
    "4926": 2,
    "4930": 4,
    "4964": 16,
    "4979": 2
  }
}