{
 "id": "61bfdef2-c9d9-4033-bb77-4e1de15f3ff1",
 "revision": 0,
 "last_node_id": 470,
 "last_link_id": 1132,
 "nodes": [
  {
   "id": 1,
   "type": "AUSBOSS_NODES_WorkflowNote",
   "pos": [
    -120,
    30
   ],
   "size": [
    560,
    1340
   ],
   "flags": {
    "pinned": true
   },
   "order": 1,
   "mode": 0,
   "inputs": [
    {
     "localized_name": "note",
     "name": "note",
     "type": "STRING",
     "widget": {
      "name": "note"
     },
     "link": null
    }
   ],
   "outputs": [],
   "title": "🆎 AusBoss",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_WorkflowNote",
    "cnr_id": "ausboss-nodes",
    "ver": "2.15.0"
   },
   "widgets_values": [
    "{\"v\": 1, \"title\": \"MiniMax H3 Image · Guide + models\", \"subtitle\": \"Make a 16 megapixel picture from a few words, or change a picture you load, with MiniMax-H3-Image. Give it up to 7 more pictures to take things from. A switch writes the full prompt for you.\", \"author\": \"AusBoss\", \"layout\": \"card\", \"accent\": \"\", \"body\": \"1. Press **Run** to try it. **Your prompt** opens with a full description, so **Auto prompt** is off.\\n2. For a short prompt, switch **Auto prompt** on. A few words are enough: \\\"a young woman outside a convenience store at night, direct flash, 35mm film\\\".\\n3. Pick a shape in **Latent Size**. **Size** stays on 16 MP.\\n4. On an RTX 5090 a 16 MP picture takes about 18 seconds, the prompt writer about 2 more.\\n5. To change a picture instead, switch **Edit a picture** on, load your picture and write the change: \\\"Make it snow.\\\"\\n\\n### Switches\\n\\n- **Edit a picture** on: the prompt changes the picture you load. Off: the prompt makes a new picture at the **Latent Size** shape.\\n- **Auto prompt** on: Qwen3.5 9B, with MiniMax's own prompt-expander instructions, turns your few words into the long description the model wants. What it wrote shows in **Show Text**. For an edit it looks at your picture and every extra picture you plugged in, and writes out the change.\\n- **High VRAM | Low VRAM** picks the model file. High VRAM: the int8 file. Low VRAM: the w4a8 file. In our tests the two looked almost the same and ran at the same speed.\\n- **Fast** on: 2 steps with the pDMD LoRA instead of the model's 6. About a third less time. It frames a little tighter and small words can come out wrong, so switch it off for posters and covers.\\n- **Upscale the result** on: SeedVR2 makes the picture twice as big on each side. Use it with Size on 4 MP.\\n- **Size: 4 MP | 16 MP** sets the size of a new picture and of an edit. 16 MP is what the model is made for. 4 MP takes about 8 seconds.\\n\\nMiniMax-H3-Image is by MiniMax, under the MiniMax-H3-Image Community License. Read it before you use the pictures for work. Powered by MiniMax-H3-Image.\\n\\nNeeds ComfyUI from the master branch (MiniMax-H3-Image support was added on 2026-11-10, after 0.44.0) and AusBoss nodes 2.22.0 or newer (update first).\", \"models\": [{\"name\": \"minimax_h3_image_pruned_int8_convrot.safetensors\", \"dir\": \"diffusion_models\", \"size\": \"21.0 GB\", \"url\": \"https://huggingface.co/Comfy-Org/MiniMax-H3-Image/resolve/main/diffusion_models/minimax_h3_image_pruned_int8_convrot.safetensors\", \"note\": \"High VRAM\"}, {\"name\": \"minimax_h3_image_pruned_w4a8.safetensors\", \"dir\": \"diffusion_models\", \"size\": \"12.5 GB\", \"url\": \"https://huggingface.co/Comfy-Org/MiniMax-H3-Image/resolve/main/diffusion_models/minimax_h3_image_pruned_w4a8.safetensors\", \"note\": \"Low VRAM\"}, {\"name\": \"qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors\", \"dir\": \"text_encoders\", \"size\": \"15.7 GB\", \"url\": \"https://huggingface.co/Comfy-Org/MiniMax-H3-Image/resolve/main/text_encoders/qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors\", \"note\": \"both\"}, {\"name\": \"minimax_h3_image_vae_fp16.safetensors\", \"dir\": \"vae\", \"size\": \"1.2 GB\", \"url\": \"https://huggingface.co/Comfy-Org/MiniMax-H3-Image/resolve/main/vae/minimax_h3_image_vae_fp16.safetensors\", \"note\": \"both\"}, {\"name\": \"qwen3.5_9b_w4a8_gptq.safetensors\", \"dir\": \"text_encoders\", \"size\": \"7.3 GB\", \"url\": \"https://huggingface.co/Comfy-Org/MiniMax-H3-Image/resolve/main/text_encoders/qwen3.5_9b_w4a8_gptq.safetensors\", \"note\": \"only for Auto prompt\"}, {\"name\": \"minimax_h3_pdmd_2nfe_comfyui.safetensors\", \"dir\": \"loras\", \"size\": \"1.96 GB\", \"url\": \"https://huggingface.co/akhaliq/p-h3-image-pdmd-2step/resolve/main/minimax_h3_pdmd_2nfe_comfyui.safetensors\", \"note\": \"only for Fast\"}, {\"name\": \"seedvr2_3b_int8_convrot.safetensors\", \"dir\": \"diffusion_models\", \"size\": \"3.46 GB\", \"url\": \"https://huggingface.co/Comfy-Org/SeedVR2/resolve/main/diffusion_models/seedvr2_3b_int8_convrot.safetensors\", \"note\": \"only for Upscale the result\"}, {\"name\": \"seedvr2_ema_vae_fp16.safetensors\", \"dir\": \"vae\", \"size\": \"501 MB\", \"url\": \"https://huggingface.co/Comfy-Org/SeedVR2/resolve/main/vae/seedvr2_ema_vae_fp16.safetensors\", \"note\": \"only for Upscale the result: SeedVR2's own VAE\"}], \"packs\": [{\"name\": \"ComfyUI-AusBoss\", \"url\": \"https://github.com/ausboss/ComfyUI-AusBoss\", \"node\": \"AUSBOSS_NODES_ImageCropRotatePad\"}], \"links\": [{\"label\": \"YouTube · ausbossdev\", \"url\": \"https://www.youtube.com/@ausbossdev\"}, {\"label\": \"Discord · AusBoss\", \"url\": \"https://discord.gg/RwVxY9Fuaj\"}, {\"label\": \"MiniMax H3 Image files · Hugging Face\", \"url\": \"https://huggingface.co/Comfy-Org/MiniMax-H3-Image\"}, {\"label\": \"GitHub · ausboss\", \"url\": \"https://github.com/ausboss\"}, {\"label\": \"Civitai · AusBoss\", \"url\": \"https://civitai.com/user/AusBoss\"}, {\"label\": \"X · Zanzibased\", \"url\": \"https://x.com/Zanzibased\"}]}"
   ],
   "widgets_values_named": {
    "note": "{\"v\": 1, \"title\": \"MiniMax H3 Image · Guide + models\", \"subtitle\": \"Make a 16 megapixel picture from a few words, or change a picture you load, with MiniMax-H3-Image. Give it up to 7 more pictures to take things from. A switch writes the full prompt for you.\", \"author\": \"AusBoss\", \"layout\": \"card\", \"accent\": \"\", \"body\": \"1. Press **Run** to try it. **Your prompt** opens with a full description, so **Auto prompt** is off.\\n2. For a short prompt, switch **Auto prompt** on. A few words are enough: \\\"a young woman outside a convenience store at night, direct flash, 35mm film\\\".\\n3. Pick a shape in **Latent Size**. **Size** stays on 16 MP.\\n4. On an RTX 5090 a 16 MP picture takes about 18 seconds, the prompt writer about 2 more.\\n5. To change a picture instead, switch **Edit a picture** on, load your picture and write the change: \\\"Make it snow.\\\"\\n\\n### Switches\\n\\n- **Edit a picture** on: the prompt changes the picture you load. Off: the prompt makes a new picture at the **Latent Size** shape.\\n- **Auto prompt** on: Qwen3.5 9B, with MiniMax's own prompt-expander instructions, turns your few words into the long description the model wants. What it wrote shows in **Show Text**. For an edit it looks at your picture and every extra picture you plugged in, and writes out the change.\\n- **High VRAM | Low VRAM** picks the model file. High VRAM: the int8 file. Low VRAM: the w4a8 file. In our tests the two looked almost the same and ran at the same speed.\\n- **Fast** on: 2 steps with the pDMD LoRA instead of the model's 6. About a third less time. It frames a little tighter and small words can come out wrong, so switch it off for posters and covers.\\n- **Upscale the result** on: SeedVR2 makes the picture twice as big on each side. Use it with Size on 4 MP.\\n- **Size: 4 MP | 16 MP** sets the size of a new picture and of an edit. 16 MP is what the model is made for. 4 MP takes about 8 seconds.\\n\\nMiniMax-H3-Image is by MiniMax, under the MiniMax-H3-Image Community License. Read it before you use the pictures for work. Powered by MiniMax-H3-Image.\\n\\nNeeds ComfyUI from the master branch (MiniMax-H3-Image support was added on 2026-11-10, after 0.44.0) and AusBoss nodes 2.22.0 or newer (update first).\", \"models\": [{\"name\": \"minimax_h3_image_pruned_int8_convrot.safetensors\", \"dir\": \"diffusion_models\", \"size\": \"21.0 GB\", \"url\": \"https://huggingface.co/Comfy-Org/MiniMax-H3-Image/resolve/main/diffusion_models/minimax_h3_image_pruned_int8_convrot.safetensors\", \"note\": \"High VRAM\"}, {\"name\": \"minimax_h3_image_pruned_w4a8.safetensors\", \"dir\": \"diffusion_models\", \"size\": \"12.5 GB\", \"url\": \"https://huggingface.co/Comfy-Org/MiniMax-H3-Image/resolve/main/diffusion_models/minimax_h3_image_pruned_w4a8.safetensors\", \"note\": \"Low VRAM\"}, {\"name\": \"qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors\", \"dir\": \"text_encoders\", \"size\": \"15.7 GB\", \"url\": \"https://huggingface.co/Comfy-Org/MiniMax-H3-Image/resolve/main/text_encoders/qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors\", \"note\": \"both\"}, {\"name\": \"minimax_h3_image_vae_fp16.safetensors\", \"dir\": \"vae\", \"size\": \"1.2 GB\", \"url\": \"https://huggingface.co/Comfy-Org/MiniMax-H3-Image/resolve/main/vae/minimax_h3_image_vae_fp16.safetensors\", \"note\": \"both\"}, {\"name\": \"qwen3.5_9b_w4a8_gptq.safetensors\", \"dir\": \"text_encoders\", \"size\": \"7.3 GB\", \"url\": \"https://huggingface.co/Comfy-Org/MiniMax-H3-Image/resolve/main/text_encoders/qwen3.5_9b_w4a8_gptq.safetensors\", \"note\": \"only for Auto prompt\"}, {\"name\": \"minimax_h3_pdmd_2nfe_comfyui.safetensors\", \"dir\": \"loras\", \"size\": \"1.96 GB\", \"url\": \"https://huggingface.co/akhaliq/p-h3-image-pdmd-2step/resolve/main/minimax_h3_pdmd_2nfe_comfyui.safetensors\", \"note\": \"only for Fast\"}, {\"name\": \"seedvr2_3b_int8_convrot.safetensors\", \"dir\": \"diffusion_models\", \"size\": \"3.46 GB\", \"url\": \"https://huggingface.co/Comfy-Org/SeedVR2/resolve/main/diffusion_models/seedvr2_3b_int8_convrot.safetensors\", \"note\": \"only for Upscale the result\"}, {\"name\": \"seedvr2_ema_vae_fp16.safetensors\", \"dir\": \"vae\", \"size\": \"501 MB\", \"url\": \"https://huggingface.co/Comfy-Org/SeedVR2/resolve/main/vae/seedvr2_ema_vae_fp16.safetensors\", \"note\": \"only for Upscale the result: SeedVR2's own VAE\"}], \"packs\": [{\"name\": \"ComfyUI-AusBoss\", \"url\": \"https://github.com/ausboss/ComfyUI-AusBoss\", \"node\": \"AUSBOSS_NODES_ImageCropRotatePad\"}], \"links\": [{\"label\": \"YouTube · ausbossdev\", \"url\": \"https://www.youtube.com/@ausbossdev\"}, {\"label\": \"Discord · AusBoss\", \"url\": \"https://discord.gg/RwVxY9Fuaj\"}, {\"label\": \"MiniMax H3 Image files · Hugging Face\", \"url\": \"https://huggingface.co/Comfy-Org/MiniMax-H3-Image\"}, {\"label\": \"GitHub · ausboss\", \"url\": \"https://github.com/ausboss\"}, {\"label\": \"Civitai · AusBoss\", \"url\": \"https://civitai.com/user/AusBoss\"}, {\"label\": \"X · Zanzibased\", \"url\": \"https://x.com/Zanzibased\"}]}"
   },
   "color": "#14424d",
   "bgcolor": "#161f21"
  },
  {
   "id": 3,
   "type": "AUSBOSS_NODES_Text",
   "pos": [
    500,
    80
   ],
   "size": [
    424,
    300
   ],
   "flags": {},
   "order": 2,
   "mode": 0,
   "inputs": [
    {
     "localized_name": "text",
     "name": "text",
     "type": "STRING",
     "widget": {
      "name": "text"
     },
     "link": null
    }
   ],
   "outputs": [
    {
     "localized_name": "text",
     "name": "text",
     "type": "STRING",
     "links": [
      1000
     ]
    }
   ],
   "title": "Text - Your prompt",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_Text",
    "cnr_id": "ausboss-nodes",
    "ver": "2.15.0"
   },
   "widgets_values": [
    "35mm film photograph at night, direct on-camera flash. A young woman in her twenties with a blunt black bob and straight bangs stands outside a convenience store window, holding a can of iced coffee. She wears a cropped gray knit sweater, a short pleated black skirt and big silver headphones around her neck. Behind her a red neon sign in the window reads \"OPEN 24 HOURS\", and a paper sign taped to the glass says \"ICED COFFEE 2 FOR $3\" in black marker. Cool, distant expression, lips closed, looking into the lens. Teal-green and amber light, deep shadows, fine film grain."
   ],
   "widgets_values_named": {
    "text": "35mm film photograph at night, direct on-camera flash. A young woman in her twenties with a blunt black bob and straight bangs stands outside a convenience store window, holding a can of iced coffee. She wears a cropped gray knit sweater, a short pleated black skirt and big silver headphones around her neck. Behind her a red neon sign in the window reads \"OPEN 24 HOURS\", and a paper sign taped to the glass says \"ICED COFFEE 2 FOR $3\" in black marker. Cool, distant expression, lips closed, looking into the lens. Teal-green and amber light, deep shadows, fine film grain."
   },
   "color": "#14424d",
   "bgcolor": "#161f21"
  },
  {
   "id": 42,
   "type": "AUSBOSS_NODES_Callout",
   "pos": [
    500,
    450
   ],
   "size": [
    424,
    194
   ],
   "flags": {
    "pinned": true
   },
   "order": 3,
   "mode": 0,
   "inputs": [
    {
     "localized_name": "text",
     "name": "text",
     "type": "STRING",
     "widget": {
      "name": "text"
     },
     "link": null
    }
   ],
   "outputs": [],
   "title": "Callout",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_Callout",
    "cnr_id": "ausboss-nodes"
   },
   "widgets_values": [
    "⬆️#3 Write your prompt. With **Auto prompt** on, a few words are enough.\n###### With **Edit a picture** on, write the change instead: \"Make it snow.\"\n\n⬇️#6 For an edit, load your **picture** here.\n###### Drag the blue handles to crop it."
   ],
   "widgets_values_named": {
    "text": "⬆️#3 Write your prompt. With **Auto prompt** on, a few words are enough.\n###### With **Edit a picture** on, write the change instead: \"Make it snow.\"\n\n⬇️#6 For an edit, load your **picture** here.\n###### Drag the blue handles to crop it."
   },
   "color": "#07090a",
   "bgcolor": "#07090a"
  },
  {
   "id": 6,
   "type": "AUSBOSS_NODES_ImageCropRotatePad",
   "pos": [
    500,
    748
   ],
   "size": [
    424,
    1100
   ],
   "flags": {},
   "order": 4,
   "mode": 4,
   "inputs": [
    {
     "localized_name": "image",
     "name": "image",
     "type": "COMBO",
     "widget": {
      "name": "image"
     },
     "link": null
    },
    {
     "localized_name": "rotation_degrees",
     "name": "rotation_degrees",
     "type": "FLOAT",
     "widget": {
      "name": "rotation_degrees"
     },
     "link": null
    },
    {
     "localized_name": "crop_aspect_ratio",
     "name": "crop_aspect_ratio",
     "type": "COMBO",
     "widget": {
      "name": "crop_aspect_ratio"
     },
     "link": null
    },
    {
     "localized_name": "crop_x",
     "name": "crop_x",
     "type": "INT",
     "widget": {
      "name": "crop_x"
     },
     "link": null
    },
    {
     "localized_name": "crop_y",
     "name": "crop_y",
     "type": "INT",
     "widget": {
      "name": "crop_y"
     },
     "link": null
    },
    {
     "localized_name": "crop_width",
     "name": "crop_width",
     "type": "INT",
     "widget": {
      "name": "crop_width"
     },
     "link": null
    },
    {
     "localized_name": "crop_height",
     "name": "crop_height",
     "type": "INT",
     "widget": {
      "name": "crop_height"
     },
     "link": null
    },
    {
     "localized_name": "pad_left",
     "name": "pad_left",
     "type": "INT",
     "widget": {
      "name": "pad_left"
     },
     "link": null
    },
    {
     "localized_name": "pad_top",
     "name": "pad_top",
     "type": "INT",
     "widget": {
      "name": "pad_top"
     },
     "link": null
    },
    {
     "localized_name": "pad_right",
     "name": "pad_right",
     "type": "INT",
     "widget": {
      "name": "pad_right"
     },
     "link": null
    },
    {
     "localized_name": "pad_bottom",
     "name": "pad_bottom",
     "type": "INT",
     "widget": {
      "name": "pad_bottom"
     },
     "link": null
    },
    {
     "localized_name": "feather",
     "name": "feather",
     "type": "INT",
     "widget": {
      "name": "feather"
     },
     "link": null
    },
    {
     "localized_name": "canvas_multiple",
     "name": "canvas_multiple",
     "type": "INT",
     "widget": {
      "name": "canvas_multiple"
     },
     "link": null
    },
    {
     "localized_name": "fill_color",
     "name": "fill_color",
     "type": "STRING",
     "widget": {
      "name": "fill_color"
     },
     "link": null
    },
    {
     "localized_name": "resize_to_megapixels",
     "name": "resize_to_megapixels",
     "shape": 7,
     "type": "BOOLEAN",
     "widget": {
      "name": "resize_to_megapixels"
     },
     "link": null
    },
    {
     "localized_name": "megapixels",
     "name": "megapixels",
     "shape": 7,
     "type": "FLOAT",
     "widget": {
      "name": "megapixels"
     },
     "link": null
    },
    {
     "localized_name": "resize_method",
     "name": "resize_method",
     "shape": 7,
     "type": "COMBO",
     "widget": {
      "name": "resize_method"
     },
     "link": null
    },
    {
     "localized_name": "resolution_steps",
     "name": "resolution_steps",
     "shape": 7,
     "type": "INT",
     "widget": {
      "name": "resolution_steps"
     },
     "link": null
    },
    {
     "localized_name": "stitch_blend",
     "name": "stitch_blend",
     "shape": 7,
     "type": "INT",
     "widget": {
      "name": "stitch_blend"
     },
     "link": null
    },
    {
     "localized_name": "stitch_grow",
     "name": "stitch_grow",
     "shape": 7,
     "type": "INT",
     "widget": {
      "name": "stitch_grow"
     },
     "link": null
    },
    {
     "localized_name": "painted_area",
     "name": "painted_area",
     "shape": 7,
     "type": "COMBO",
     "widget": {
      "name": "painted_area"
     },
     "link": null
    },
    {
     "localized_name": "upload",
     "name": "upload",
     "type": "IMAGEUPLOAD",
     "widget": {
      "name": "upload"
     },
     "link": null
    }
   ],
   "outputs": [
    {
     "localized_name": "image",
     "name": "image",
     "type": "IMAGE",
     "links": [
      1001,
      1015
     ]
    },
    {
     "localized_name": "mask",
     "name": "mask",
     "type": "MASK",
     "links": []
    },
    {
     "localized_name": "stitcher",
     "name": "stitcher",
     "type": "AUSBOSS_STITCHER",
     "links": []
    },
    {
     "localized_name": "original",
     "name": "original",
     "type": "IMAGE",
     "links": []
    },
    {
     "localized_name": "width",
     "name": "width",
     "type": "INT",
     "links": []
    },
    {
     "localized_name": "height",
     "name": "height",
     "type": "INT",
     "links": []
    },
    {
     "localized_name": "prompt_image",
     "name": "prompt_image",
     "type": "IMAGE",
     "links": []
    }
   ],
   "title": "Image Crop + Rotate + Pad - Your picture",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_ImageCropRotatePad",
    "cnr_id": "ausboss-nodes",
    "ver": "2.15.0"
   },
   "widgets_values": {
    "image": "",
    "rotation_degrees": 0,
    "crop_aspect_ratio": "free",
    "crop_x": 0,
    "crop_y": 0,
    "crop_width": 0,
    "crop_height": 0,
    "pad_left": 0,
    "pad_top": 0,
    "pad_right": 0,
    "pad_bottom": 0,
    "feather": 24,
    "canvas_multiple": 1,
    "fill_color": "#808080",
    "resize_to_megapixels": true,
    "megapixels": 16,
    "resize_method": "lanczos",
    "resolution_steps": 32,
    "stitch_blend": 32,
    "stitch_grow": 0,
    "painted_area": "fill"
   },
   "widgets_values_named": {
    "image": "",
    "rotation_degrees": 0,
    "crop_aspect_ratio": "free",
    "crop_x": 0,
    "crop_y": 0,
    "crop_width": 0,
    "crop_height": 0,
    "pad_left": 0,
    "pad_top": 0,
    "pad_right": 0,
    "pad_bottom": 0,
    "feather": 24,
    "canvas_multiple": 1,
    "fill_color": "#808080",
    "resize_to_megapixels": true,
    "megapixels": 16,
    "resize_method": "lanczos",
    "resolution_steps": 32,
    "stitch_blend": 32,
    "stitch_grow": 0,
    "painted_area": "fill",
    "upload": "image"
   },
   "color": "#14424d",
   "bgcolor": "#161f21"
  },
  {
   "id": 43,
   "type": "AUSBOSS_NODES_Callout",
   "pos": [
    964,
    80
   ],
   "size": [
    424,
    290
   ],
   "flags": {
    "pinned": true
   },
   "order": 5,
   "mode": 0,
   "inputs": [
    {
     "localized_name": "text",
     "name": "text",
     "type": "STRING",
     "widget": {
      "name": "text"
     },
     "link": null
    }
   ],
   "outputs": [],
   "title": "Callout",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_Callout",
    "cnr_id": "ausboss-nodes"
   },
   "widgets_values": [
    "⬇️#2 **Edit a picture** on: the prompt changes the picture you load. Off: it makes a new picture.\n\n⬇️#2 **Auto prompt** on: a writer turns your few words into the long description MiniMax-H3-Image wants. For an edit it looks at your pictures and writes out the change.\n\n⬇️#2 **Fast** on: 2 steps with the pDMD LoRA instead of 6. Quicker, a little less exact."
   ],
   "widgets_values_named": {
    "text": "⬇️#2 **Edit a picture** on: the prompt changes the picture you load. Off: it makes a new picture.\n\n⬇️#2 **Auto prompt** on: a writer turns your few words into the long description MiniMax-H3-Image wants. For an edit it looks at your pictures and writes out the change.\n\n⬇️#2 **Fast** on: 2 steps with the pDMD LoRA instead of 6. Quicker, a little less exact."
   },
   "color": "#07090a",
   "bgcolor": "#07090a"
  },
  {
   "id": 2,
   "type": "AUSBOSS_NODES_WorkflowSwitches",
   "pos": [
    964,
    440
   ],
   "size": [
    424,
    128
   ],
   "flags": {},
   "order": 6,
   "mode": 0,
   "inputs": [],
   "outputs": [],
   "title": "Workflow Switches - What to run",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_WorkflowSwitches",
    "ausboss_workflow_switches": {
     "off": "bypass",
     "groups": "none",
     "match": "",
     "order": "canvas",
     "exclusive": false,
     "switches": [
      {
       "id": 1,
       "title": "Edit a picture",
       "nodes": [
        6
       ],
       "groups": [],
       "nodes_off": [
        5,
        308,
        309
       ],
       "on": {
        "39": {
         "size from your picture": true
        },
        "41": {
         "write an edit": true
        }
       },
       "off": {
        "39": {
         "size from your picture": false
        },
        "41": {
         "write an edit": false
        }
       }
      },
      {
       "id": 3,
       "title": "Auto prompt",
       "nodes": [
        70
       ],
       "groups": [],
       "on": {
        "41": {
         "auto prompt": true
        }
       },
       "off": {
        "41": {
         "auto prompt": false
        }
       }
      },
      {
       "id": 2,
       "title": "Upscale the result",
       "nodes": [
        105,
        106,
        107,
        12
       ],
       "groups": [],
       "on": {},
       "off": {}
      },
      {
       "id": 4,
       "title": "Fast: pDMD, 2 steps",
       "nodes": [],
       "groups": [],
       "on": {
        "11": {
         "loras": "[{\"name\":\"minimax_h3_pdmd_2nfe_comfyui.safetensors\",\"strength\":1,\"enabled\":true,\"triggers\":\"\"}]"
        },
        "39": {
         "fast": true
        }
       },
       "off": {
        "11": {
         "loras": "[{\"name\":\"minimax_h3_pdmd_2nfe_comfyui.safetensors\",\"strength\":1,\"enabled\":false,\"triggers\":\"\"}]"
        },
        "39": {
         "fast": false
        }
       }
      }
     ]
    },
    "ausboss_show_edit": false,
    "cnr_id": "ausboss-nodes",
    "ver": "2.15.0"
   },
   "widgets_values": [],
   "widgets_values_named": {},
   "color": "#14424d",
   "bgcolor": "#161f21"
  },
  {
   "id": 301,
   "type": "AUSBOSS_NODES_Callout",
   "pos": [
    964,
    620
   ],
   "size": [
    424,
    122
   ],
   "flags": {
    "pinned": true
   },
   "order": 7,
   "mode": 0,
   "inputs": [
    {
     "localized_name": "text",
     "name": "text",
     "type": "STRING",
     "widget": {
      "name": "text"
     },
     "link": null
    }
   ],
   "outputs": [],
   "title": "Callout",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_Callout",
    "cnr_id": "ausboss-nodes"
   },
   "widgets_values": [
    "⬇️#302 **VRAM**: pick the model file for your card.\n###### High VRAM: the int8 file. Low VRAM: the smaller w4a8 file. Get them from the note ⬅️#1"
   ],
   "widgets_values_named": {
    "text": "⬇️#302 **VRAM**: pick the model file for your card.\n###### High VRAM: the int8 file. Low VRAM: the smaller w4a8 file. Get them from the note ⬅️#1"
   },
   "color": "#07090a",
   "bgcolor": "#07090a"
  },
  {
   "id": 302,
   "type": "AUSBOSS_NODES_WorkflowSwitches",
   "pos": [
    964,
    790
   ],
   "size": [
    424,
    66
   ],
   "flags": {},
   "order": 8,
   "mode": 0,
   "inputs": [],
   "outputs": [],
   "title": "Workflow Switches - VRAM",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_WorkflowSwitches",
    "ausboss_workflow_switches": {
     "off": "bypass",
     "groups": "none",
     "match": "",
     "order": "canvas",
     "exclusive": true,
     "show": "pill",
     "switches": [
      {
       "id": 1,
       "title": "High VRAM: 32 GB+",
       "nodes": [],
       "groups": [],
       "on": {
        "10": {
         "unet_name": "minimax_h3_image_pruned_int8_convrot.safetensors"
        }
       },
       "off": {
        "10": {
         "unet_name": "minimax_h3_image_pruned_w4a8.safetensors"
        }
       }
      },
      {
       "id": 2,
       "title": "Low VRAM: 24 GB",
       "nodes": [],
       "groups": [],
       "on": {
        "10": {
         "unet_name": "minimax_h3_image_pruned_w4a8.safetensors"
        }
       },
       "off": {
        "10": {
         "unet_name": "minimax_h3_image_pruned_int8_convrot.safetensors"
        }
       }
      }
     ]
    },
    "ausboss_show_edit": false,
    "cnr_id": "ausboss-nodes",
    "ver": "2.15.0"
   },
   "widgets_values": [],
   "widgets_values_named": {},
   "color": "#14424d",
   "bgcolor": "#161f21"
  },
  {
   "id": 4,
   "type": "AUSBOSS_NODES_Seed",
   "pos": [
    964,
    1260
   ],
   "size": [
    424,
    216
   ],
   "flags": {},
   "order": 9,
   "mode": 0,
   "inputs": [
    {
     "localized_name": "seed",
     "name": "seed",
     "type": "INT",
     "widget": {
      "name": "seed"
     },
     "link": null
    }
   ],
   "outputs": [
    {
     "localized_name": "seed",
     "name": "seed",
     "type": "INT",
     "links": [
      1014,
      1023
     ]
    }
   ],
   "title": "Seed",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_Seed",
    "cnr_id": "ausboss-nodes",
    "ver": "2.15.0"
   },
   "widgets_values": [
    20261009,
    "randomize"
   ],
   "widgets_values_named": {
    "seed": 20261009,
    "control_after_generate": "randomize"
   },
   "color": "#14424d",
   "bgcolor": "#161f21"
  },
  {
   "id": 5,
   "type": "AUSBOSS_NODES_Resolution",
   "pos": [
    964,
    1570
   ],
   "size": [
    424,
    677
   ],
   "flags": {},
   "order": 10,
   "mode": 0,
   "inputs": [
    {
     "localized_name": "width",
     "name": "width",
     "type": "INT",
     "link": null
    },
    {
     "localized_name": "height",
     "name": "height",
     "type": "INT",
     "link": null
    },
    {
     "localized_name": "latent",
     "name": "latent",
     "shape": 7,
     "type": "COMBO",
     "link": null
    },
    {
     "localized_name": "batch_size",
     "name": "batch_size",
     "shape": 7,
     "type": "INT",
     "link": null
    }
   ],
   "outputs": [
    {
     "localized_name": "width",
     "name": "width",
     "type": "INT",
     "links": [
      1125,
      1127
     ]
    },
    {
     "localized_name": "height",
     "name": "height",
     "type": "INT",
     "links": [
      1126,
      1128
     ]
    },
    {
     "localized_name": "latent",
     "name": "latent",
     "type": "LATENT",
     "links": []
    }
   ],
   "title": "Latent Size - Shape of a new picture",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_Resolution",
    "ausbossResolutionPortrait": true,
    "ausbossResolutionSnap": 32,
    "cnr_id": "ausboss-nodes",
    "ver": "2.15.0"
   },
   "widgets_values": [
    3360,
    5024,
    "16ch",
    1
   ],
   "widgets_values_named": {
    "width": 3360,
    "height": 5024,
    "latent": "16ch",
    "batch_size": 1
   },
   "color": "#14424d",
   "bgcolor": "#161f21"
  },
  {
   "id": 44,
   "type": "AUSBOSS_NODES_CalloutTile",
   "pos": [
    1468,
    80
   ],
   "size": [
    1220,
    110
   ],
   "flags": {
    "pinned": true
   },
   "order": 7,
   "mode": 0,
   "inputs": [
    {
     "localized_name": "text",
     "name": "text",
     "type": "STRING",
     "widget": {
      "name": "text"
     },
     "link": null
    }
   ],
   "outputs": [],
   "title": "Callout",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_CalloutTile",
    "cnr_id": "ausboss-nodes",
    "ausbossCalloutTile": "title"
   },
   "widgets_values": [
    "Two boxes do the work: one writes the prompt, one makes or changes the picture.\n###### Double-click one to see inside."
   ],
   "widgets_values_named": {
    "text": "Two boxes do the work: one writes the prompt, one makes or changes the picture.\n###### Double-click one to see inside."
   },
   "color": "#07090a",
   "bgcolor": "#07090a"
  },
  {
   "id": 303,
   "type": "AUSBOSS_NODES_Callout",
   "pos": [
    1468,
    308
   ],
   "size": [
    300,
    250
   ],
   "flags": {
    "pinned": true
   },
   "order": 12,
   "mode": 0,
   "inputs": [
    {
     "localized_name": "text",
     "name": "text",
     "type": "STRING",
     "widget": {
      "name": "text"
     },
     "link": null
    }
   ],
   "outputs": [],
   "title": "Callout",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_Callout",
    "cnr_id": "ausboss-nodes"
   },
   "widgets_values": [
    "➡️#41 **More pictures?** Plug any image loader into a free **picture** socket.\n###### Go in order from picture 2, up to picture 8. Say \"the hat from picture 2\" in your prompt. They work with **Edit a picture** on."
   ],
   "widgets_values_named": {
    "text": "➡️#41 **More pictures?** Plug any image loader into a free **picture** socket.\n###### Go in order from picture 2, up to picture 8. Say \"the hat from picture 2\" in your prompt. They work with **Edit a picture** on."
   },
   "color": "#07090a",
   "bgcolor": "#07090a"
  },
  {
   "id": 41,
   "type": "763be216-d720-52d4-b604-469834ebd74c",
   "pos": [
    1808,
    308
   ],
   "size": [
    300,
    300
   ],
   "flags": {},
   "order": 27,
   "mode": 0,
   "inputs": [
    {
     "localized_name": "your prompt",
     "name": "your prompt",
     "shape": 7,
     "type": "*",
     "link": 1000
    },
    {
     "localized_name": "picture 2",
     "name": "picture 2",
     "shape": 7,
     "type": "IMAGE",
     "link": null
    },
    {
     "localized_name": "picture 3",
     "name": "picture 3",
     "shape": 7,
     "type": "IMAGE",
     "link": null
    },
    {
     "localized_name": "picture 4",
     "name": "picture 4",
     "shape": 7,
     "type": "IMAGE",
     "link": null
    },
    {
     "localized_name": "picture 5",
     "name": "picture 5",
     "shape": 7,
     "type": "IMAGE",
     "link": null
    },
    {
     "localized_name": "picture 6",
     "name": "picture 6",
     "shape": 7,
     "type": "IMAGE",
     "link": null
    },
    {
     "localized_name": "picture 7",
     "name": "picture 7",
     "shape": 7,
     "type": "IMAGE",
     "link": null
    },
    {
     "localized_name": "picture 8",
     "name": "picture 8",
     "shape": 7,
     "type": "IMAGE",
     "link": null
    },
    {
     "localized_name": "your picture",
     "name": "your picture",
     "shape": 7,
     "type": "IMAGE",
     "link": 1001
    },
    {
     "localized_name": "prompt writer",
     "name": "prompt writer",
     "type": "CLIP",
     "link": 1002
    },
    {
     "localized_name": "width",
     "name": "width",
     "shape": 7,
     "type": "INT",
     "link": 1129
    },
    {
     "localized_name": "height",
     "name": "height",
     "shape": 7,
     "type": "INT",
     "link": 1130
    },
    {
     "localized_name": "write an edit",
     "name": "write an edit",
     "type": "BOOLEAN",
     "widget": {
      "name": "write an edit"
     },
     "link": null
    },
    {
     "localized_name": "auto prompt",
     "name": "auto prompt",
     "type": "BOOLEAN",
     "widget": {
      "name": "auto prompt"
     },
     "link": null
    }
   ],
   "outputs": [
    {
     "localized_name": "prompt",
     "name": "prompt",
     "type": "STRING",
     "links": [
      1005,
      1006
     ]
    },
    {
     "localized_name": "picture 2",
     "name": "picture 2",
     "type": "IMAGE",
     "links": [
      1007
     ]
    },
    {
     "localized_name": "picture 3",
     "name": "picture 3",
     "type": "IMAGE",
     "links": [
      1008
     ]
    },
    {
     "localized_name": "picture 4",
     "name": "picture 4",
     "type": "IMAGE",
     "links": [
      1009
     ]
    },
    {
     "localized_name": "picture 5",
     "name": "picture 5",
     "type": "IMAGE",
     "links": [
      1010
     ]
    },
    {
     "localized_name": "picture 6",
     "name": "picture 6",
     "type": "IMAGE",
     "links": [
      1011
     ]
    },
    {
     "localized_name": "picture 7",
     "name": "picture 7",
     "type": "IMAGE",
     "links": [
      1012
     ]
    },
    {
     "localized_name": "picture 8",
     "name": "picture 8",
     "type": "IMAGE",
     "links": [
      1013
     ]
    }
   ],
   "properties": {
    "Node name for S&R": "763be216-d720-52d4-b604-469834ebd74c",
    "previewExposures": []
   },
   "widgets_values": [
    false,
    false
   ],
   "widgets_values_named": {
    "write an edit": false,
    "auto prompt": false
   },
   "color": "#14424d",
   "bgcolor": "#161f21"
  },
  {
   "id": 15,
   "type": "AUSBOSS_NODES_ShowText",
   "pos": [
    1468,
    628
   ],
   "size": [
    300,
    430
   ],
   "flags": {},
   "order": 28,
   "mode": 0,
   "inputs": [
    {
     "localized_name": "text",
     "name": "text",
     "type": "*",
     "link": 1005
    }
   ],
   "outputs": [
    {
     "localized_name": "text",
     "name": "text",
     "type": "STRING",
     "links": []
    }
   ],
   "title": "Show Text - Prompt MiniMax-H3-Image sees",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_ShowText",
    "cnr_id": "ausboss-nodes",
    "ver": "2.15.0"
   },
   "widgets_values": [],
   "widgets_values_named": {},
   "color": "#14424d",
   "bgcolor": "#161f21"
  },
  {
   "id": 39,
   "type": "cb4401eb-1636-558a-bc9a-95a42a91ff55",
   "pos": [
    1808,
    678
   ],
   "size": [
    300,
    380
   ],
   "flags": {},
   "order": 29,
   "mode": 0,
   "inputs": [
    {
     "localized_name": "prompt",
     "name": "prompt",
     "type": "*",
     "widget": {
      "name": "prompt"
     },
     "link": 1006
    },
    {
     "localized_name": "seed",
     "name": "seed",
     "type": "*",
     "widget": {
      "name": "seed"
     },
     "link": 1014
    },
    {
     "localized_name": "your picture",
     "name": "your picture",
     "shape": 7,
     "type": "IMAGE",
     "link": 1015
    },
    {
     "localized_name": "width",
     "name": "width",
     "shape": 7,
     "type": "INT",
     "link": 1131
    },
    {
     "localized_name": "height",
     "name": "height",
     "shape": 7,
     "type": "INT",
     "link": 1132
    },
    {
     "localized_name": "text encoder",
     "name": "text encoder",
     "type": "CLIP",
     "link": 1018
    },
    {
     "localized_name": "vae",
     "name": "vae",
     "type": "VAE",
     "link": 1019
    },
    {
     "localized_name": "diffusion model",
     "name": "diffusion model",
     "type": "MODEL",
     "link": 1021
    },
    {
     "localized_name": "picture 2",
     "name": "picture 2",
     "shape": 7,
     "type": "IMAGE",
     "link": 1007
    },
    {
     "localized_name": "picture 3",
     "name": "picture 3",
     "shape": 7,
     "type": "IMAGE",
     "link": 1008
    },
    {
     "localized_name": "picture 4",
     "name": "picture 4",
     "shape": 7,
     "type": "IMAGE",
     "link": 1009
    },
    {
     "localized_name": "picture 5",
     "name": "picture 5",
     "shape": 7,
     "type": "IMAGE",
     "link": 1010
    },
    {
     "localized_name": "picture 6",
     "name": "picture 6",
     "shape": 7,
     "type": "IMAGE",
     "link": 1011
    },
    {
     "localized_name": "picture 7",
     "name": "picture 7",
     "shape": 7,
     "type": "IMAGE",
     "link": 1012
    },
    {
     "localized_name": "picture 8",
     "name": "picture 8",
     "shape": 7,
     "type": "IMAGE",
     "link": 1013
    },
    {
     "localized_name": "size from your picture",
     "name": "size from your picture",
     "type": "BOOLEAN",
     "widget": {
      "name": "size from your picture"
     },
     "link": null
    },
    {
     "localized_name": "fast",
     "name": "fast",
     "type": "BOOLEAN",
     "widget": {
      "name": "fast"
     },
     "link": null
    }
   ],
   "outputs": [
    {
     "localized_name": "picture",
     "name": "picture",
     "type": "IMAGE",
     "links": [
      1022,
      1027,
      1030
     ]
    },
    {
     "localized_name": "before",
     "name": "before",
     "type": "IMAGE",
     "links": [
      1029
     ]
    }
   ],
   "properties": {
    "Node name for S&R": "cb4401eb-1636-558a-bc9a-95a42a91ff55",
    "previewExposures": []
   },
   "widgets_values": [
    "",
    0,
    false,
    false
   ],
   "widgets_values_named": {
    "prompt": "",
    "seed": 0,
    "size from your picture": false,
    "fast": false
   },
   "color": "#14424d",
   "bgcolor": "#161f21"
  },
  {
   "id": 105,
   "type": "5a45399a-b68e-5039-90e9-93ae815a69f1",
   "pos": [
    2148,
    308
   ],
   "size": [
    540,
    150
   ],
   "flags": {},
   "order": 30,
   "mode": 4,
   "inputs": [
    {
     "localized_name": "picture",
     "name": "picture",
     "type": "IMAGE",
     "link": 1022
    },
    {
     "localized_name": "seed",
     "name": "seed",
     "type": "INT",
     "widget": {
      "name": "seed"
     },
     "link": 1023
    },
    {
     "localized_name": "seedvr2 model",
     "name": "seedvr2 model",
     "type": "MODEL",
     "link": 1024
    },
    {
     "localized_name": "seedvr2 vae",
     "name": "seedvr2 vae",
     "type": "VAE",
     "link": 1025
    }
   ],
   "outputs": [
    {
     "localized_name": "picture",
     "name": "picture",
     "type": "IMAGE",
     "links": [
      1026,
      1028
     ]
    }
   ],
   "properties": {
    "previewExposures": []
   },
   "widgets_values": [
    20261017
   ],
   "widgets_values_named": {
    "seed": 20261017
   },
   "color": "#14424d",
   "bgcolor": "#161f21"
  },
  {
   "id": 8,
   "type": "CLIPLoader",
   "pos": [
    1468,
    1170
   ],
   "size": [
    300,
    106
   ],
   "flags": {},
   "order": 13,
   "mode": 0,
   "inputs": [
    {
     "localized_name": "clip_name",
     "name": "clip_name",
     "type": "COMBO",
     "widget": {
      "name": "clip_name"
     },
     "link": null
    },
    {
     "localized_name": "type",
     "name": "type",
     "type": "COMBO",
     "widget": {
      "name": "type"
     },
     "link": null
    },
    {
     "localized_name": "device",
     "name": "device",
     "shape": 7,
     "type": "COMBO",
     "widget": {
      "name": "device"
     },
     "link": null
    }
   ],
   "outputs": [
    {
     "localized_name": "CLIP",
     "name": "CLIP",
     "type": "CLIP",
     "links": [
      1018
     ]
    }
   ],
   "title": "Text encoder",
   "properties": {
    "Node name for S&R": "CLIPLoader",
    "models": [
     {
      "name": "qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors",
      "url": "https://huggingface.co/Comfy-Org/MiniMax-H3-Image/resolve/main/text_encoders/qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors",
      "directory": "text_encoders"
     }
    ],
    "cnr_id": "comfy-core",
    "ver": "ede4e5fe8"
   },
   "widgets_values": [
    "qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors",
    "minimax",
    "default"
   ],
   "widgets_values_named": {
    "clip_name": "qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors",
    "type": "minimax",
    "device": "default"
   },
   "color": "#432",
   "bgcolor": "#653"
  },
  {
   "id": 9,
   "type": "VAELoader",
   "pos": [
    1468,
    1354
   ],
   "size": [
    300,
    58
   ],
   "flags": {},
   "order": 14,
   "mode": 0,
   "inputs": [
    {
     "localized_name": "vae_name",
     "name": "vae_name",
     "type": "COMBO",
     "widget": {
      "name": "vae_name"
     },
     "link": null
    }
   ],
   "outputs": [
    {
     "localized_name": "VAE",
     "name": "VAE",
     "type": "VAE",
     "links": [
      1019
     ]
    }
   ],
   "title": "VAE",
   "properties": {
    "Node name for S&R": "VAELoader",
    "models": [
     {
      "name": "minimax_h3_image_vae_fp16.safetensors",
      "url": "https://huggingface.co/Comfy-Org/MiniMax-H3-Image/resolve/main/vae/minimax_h3_image_vae_fp16.safetensors",
      "directory": "vae"
     }
    ],
    "cnr_id": "comfy-core",
    "ver": "ede4e5fe8"
   },
   "widgets_values": [
    "minimax_h3_image_vae_fp16.safetensors"
   ],
   "widgets_values_named": {
    "vae_name": "minimax_h3_image_vae_fp16.safetensors"
   },
   "color": "#322",
   "bgcolor": "#533"
  },
  {
   "id": 10,
   "type": "UNETLoader",
   "pos": [
    1468,
    1490
   ],
   "size": [
    300,
    82
   ],
   "flags": {},
   "order": 15,
   "mode": 0,
   "inputs": [
    {
     "localized_name": "unet_name",
     "name": "unet_name",
     "type": "COMBO",
     "widget": {
      "name": "unet_name"
     },
     "link": null
    },
    {
     "localized_name": "weight_dtype",
     "name": "weight_dtype",
     "type": "COMBO",
     "widget": {
      "name": "weight_dtype"
     },
     "link": null
    }
   ],
   "outputs": [
    {
     "localized_name": "MODEL",
     "name": "MODEL",
     "type": "MODEL",
     "links": [
      1020
     ]
    }
   ],
   "title": "Diffusion model",
   "properties": {
    "Node name for S&R": "UNETLoader",
    "models": [
     {
      "name": "minimax_h3_image_pruned_int8_convrot.safetensors",
      "url": "https://huggingface.co/Comfy-Org/MiniMax-H3-Image/resolve/main/diffusion_models/minimax_h3_image_pruned_int8_convrot.safetensors",
      "directory": "diffusion_models"
     }
    ],
    "cnr_id": "comfy-core",
    "ver": "ede4e5fe8"
   },
   "widgets_values": [
    "minimax_h3_image_pruned_int8_convrot.safetensors",
    "default"
   ],
   "widgets_values_named": {
    "unet_name": "minimax_h3_image_pruned_int8_convrot.safetensors",
    "weight_dtype": "default"
   },
   "color": "#323",
   "bgcolor": "#535"
  },
  {
   "id": 70,
   "type": "CLIPLoader",
   "pos": [
    1468,
    1650
   ],
   "size": [
    300,
    106
   ],
   "flags": {},
   "order": 16,
   "mode": 4,
   "inputs": [
    {
     "localized_name": "clip_name",
     "name": "clip_name",
     "type": "COMBO",
     "widget": {
      "name": "clip_name"
     },
     "link": null
    },
    {
     "localized_name": "type",
     "name": "type",
     "type": "COMBO",
     "widget": {
      "name": "type"
     },
     "link": null
    },
    {
     "localized_name": "device",
     "name": "device",
     "shape": 7,
     "type": "COMBO",
     "widget": {
      "name": "device"
     },
     "link": null
    }
   ],
   "outputs": [
    {
     "localized_name": "CLIP",
     "name": "CLIP",
     "type": "CLIP",
     "links": [
      1002
     ]
    }
   ],
   "title": "Prompt writer - Auto prompt",
   "properties": {
    "Node name for S&R": "CLIPLoader",
    "models": [
     {
      "name": "qwen3.5_9b_w4a8_gptq.safetensors",
      "url": "https://huggingface.co/Comfy-Org/MiniMax-H3-Image/resolve/main/text_encoders/qwen3.5_9b_w4a8_gptq.safetensors",
      "directory": "text_encoders"
     }
    ],
    "cnr_id": "comfy-core",
    "ver": "ede4e5fe8"
   },
   "widgets_values": [
    "qwen3.5_9b_w4a8_gptq.safetensors",
    "minimax",
    "default"
   ],
   "widgets_values_named": {
    "clip_name": "qwen3.5_9b_w4a8_gptq.safetensors",
    "type": "minimax",
    "device": "default"
   },
   "color": "#432",
   "bgcolor": "#653"
  },
  {
   "id": 45,
   "type": "AUSBOSS_NODES_Callout",
   "pos": [
    1808,
    1170
   ],
   "size": [
    560,
    150
   ],
   "flags": {
    "pinned": true
   },
   "order": 17,
   "mode": 0,
   "inputs": [
    {
     "localized_name": "text",
     "name": "text",
     "type": "STRING",
     "widget": {
      "name": "text"
     },
     "link": null
    }
   ],
   "outputs": [],
   "title": "Callout",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_Callout",
    "cnr_id": "ausboss-nodes"
   },
   "widgets_values": [
    "⬇️#11 The locked row is the **Fast** LoRA: the switch turns it on. **Your LoRAs** go below it. Get the files from the note ⬅️#1\n###### The prompt writer loads only with **Auto prompt** on."
   ],
   "widgets_values_named": {
    "text": "⬇️#11 The locked row is the **Fast** LoRA: the switch turns it on. **Your LoRAs** go below it. Get the files from the note ⬅️#1\n###### The prompt writer loads only with **Auto prompt** on."
   },
   "color": "#07090a",
   "bgcolor": "#07090a"
  },
  {
   "id": 11,
   "type": "AUSBOSS_NODES_LoraLoader",
   "pos": [
    1808,
    1390
   ],
   "size": [
    560,
    202
   ],
   "flags": {},
   "order": 26,
   "mode": 0,
   "inputs": [
    {
     "localized_name": "model",
     "name": "model",
     "type": "MODEL",
     "link": 1020
    },
    {
     "localized_name": "clip",
     "name": "clip",
     "shape": 7,
     "type": "CLIP",
     "link": null
    },
    {
     "localized_name": "loras",
     "name": "loras",
     "type": "STRING",
     "widget": {
      "name": "loras"
     },
     "link": null
    },
    {
     "localized_name": "trigger_separator",
     "name": "trigger_separator",
     "shape": 7,
     "type": "STRING",
     "widget": {
      "name": "trigger_separator"
     },
     "link": null
    },
    {
     "localized_name": "on_missing",
     "name": "on_missing",
     "shape": 7,
     "type": "COMBO",
     "widget": {
      "name": "on_missing"
     },
     "link": null
    }
   ],
   "outputs": [
    {
     "localized_name": "model",
     "name": "model",
     "type": "MODEL",
     "links": [
      1021
     ]
    },
    {
     "localized_name": "clip",
     "name": "clip",
     "type": "CLIP",
     "links": []
    },
    {
     "localized_name": "triggers",
     "name": "triggers",
     "type": "STRING",
     "links": []
    }
   ],
   "title": "LoRA Loader - Speed LoRA, then yours",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_LoraLoader",
    "ausbossLoraLinked": true,
    "models": [
     {
      "name": "minimax_h3_pdmd_2nfe_comfyui.safetensors",
      "url": "https://huggingface.co/akhaliq/p-h3-image-pdmd-2step/resolve/main/minimax_h3_pdmd_2nfe_comfyui.safetensors",
      "directory": "loras"
     }
    ],
    "cnr_id": "ausboss-nodes",
    "ver": "2.15.0"
   },
   "widgets_values": [
    "[{\"name\":\"minimax_h3_pdmd_2nfe_comfyui.safetensors\",\"strength\":1,\"enabled\":false,\"triggers\":\"\"}]",
    ", ",
    "error"
   ],
   "widgets_values_named": {
    "loras": "[{\"name\":\"minimax_h3_pdmd_2nfe_comfyui.safetensors\",\"strength\":1,\"enabled\":false,\"triggers\":\"\"}]",
    "trigger_separator": ", ",
    "on_missing": "error"
   },
   "color": "#14424d",
   "bgcolor": "#161f21"
  },
  {
   "id": 106,
   "type": "UNETLoader",
   "pos": [
    2148,
    678
   ],
   "size": [
    540,
    82
   ],
   "flags": {},
   "order": 18,
   "mode": 4,
   "inputs": [
    {
     "localized_name": "unet_name",
     "name": "unet_name",
     "type": "COMBO",
     "widget": {
      "name": "unet_name"
     },
     "link": null
    },
    {
     "localized_name": "weight_dtype",
     "name": "weight_dtype",
     "type": "COMBO",
     "widget": {
      "name": "weight_dtype"
     },
     "link": null
    }
   ],
   "outputs": [
    {
     "localized_name": "MODEL",
     "name": "MODEL",
     "type": "MODEL",
     "links": [
      1024
     ]
    }
   ],
   "title": "SeedVR2 model",
   "properties": {
    "Node name for S&R": "UNETLoader",
    "cnr_id": "comfy-core",
    "ver": "0.41.3",
    "models": [
     {
      "name": "seedvr2_3b_int8_convrot.safetensors",
      "url": "https://huggingface.co/Comfy-Org/SeedVR2/resolve/main/diffusion_models/seedvr2_3b_int8_convrot.safetensors",
      "directory": "diffusion_models"
     }
    ]
   },
   "widgets_values": [
    "seedvr2_3b_int8_convrot.safetensors",
    "default"
   ],
   "widgets_values_named": {
    "unet_name": "seedvr2_3b_int8_convrot.safetensors",
    "weight_dtype": "default"
   },
   "color": "#323",
   "bgcolor": "#535"
  },
  {
   "id": 107,
   "type": "VAELoader",
   "pos": [
    2148,
    820
   ],
   "size": [
    540,
    58
   ],
   "flags": {},
   "order": 19,
   "mode": 4,
   "inputs": [
    {
     "localized_name": "vae_name",
     "name": "vae_name",
     "type": "COMBO",
     "widget": {
      "name": "vae_name"
     },
     "link": null
    }
   ],
   "outputs": [
    {
     "localized_name": "VAE",
     "name": "VAE",
     "type": "VAE",
     "links": [
      1025
     ]
    }
   ],
   "title": "SeedVR2 VAE",
   "properties": {
    "Node name for S&R": "VAELoader",
    "cnr_id": "comfy-core",
    "ver": "0.41.3",
    "models": [
     {
      "name": "seedvr2_ema_vae_fp16.safetensors",
      "url": "https://huggingface.co/Comfy-Org/SeedVR2/resolve/main/vae/seedvr2_ema_vae_fp16.safetensors",
      "directory": "vae"
     }
    ]
   },
   "widgets_values": [
    "seedvr2_ema_vae_fp16.safetensors"
   ],
   "widgets_values_named": {
    "vae_name": "seedvr2_ema_vae_fp16.safetensors"
   },
   "color": "#322",
   "bgcolor": "#533"
  },
  {
   "id": 108,
   "type": "AUSBOSS_NODES_Callout",
   "pos": [
    2148,
    508
   ],
   "size": [
    540,
    122
   ],
   "flags": {
    "pinned": true
   },
   "order": 20,
   "mode": 0,
   "inputs": [
    {
     "localized_name": "text",
     "name": "text",
     "type": "STRING",
     "widget": {
      "name": "text"
     },
     "link": null
    }
   ],
   "outputs": [],
   "title": "Callout",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_Callout",
    "cnr_id": "ausboss-nodes"
   },
   "widgets_values": [
    "⬆️#105 **Upscale the result** runs SeedVR2, and ⬇️#106 needs these two files. Get them from the note ⬅️#1\n###### Use it with **Size** on 4 MP: the result is 16 MP. They load only while that switch is on."
   ],
   "widgets_values_named": {
    "text": "⬆️#105 **Upscale the result** runs SeedVR2, and ⬇️#106 needs these two files. Get them from the note ⬅️#1\n###### Use it with **Size** on 4 MP: the result is 16 MP. They load only while that switch is on."
   },
   "color": "#07090a",
   "bgcolor": "#07090a"
  },
  {
   "id": 13,
   "type": "AUSBOSS_NODES_SaveImage",
   "pos": [
    2768,
    80
   ],
   "size": [
    460,
    816
   ],
   "flags": {},
   "order": 32,
   "mode": 0,
   "inputs": [
    {
     "localized_name": "images",
     "name": "images",
     "type": "IMAGE",
     "link": 1026
    },
    {
     "localized_name": "filename",
     "name": "filename",
     "shape": 7,
     "type": "STRING",
     "link": null
    },
    {
     "localized_name": "caption_text",
     "name": "caption_text",
     "shape": 7,
     "type": "STRING",
     "link": null
    },
    {
     "localized_name": "filename_prefix",
     "name": "filename_prefix",
     "type": "STRING",
     "widget": {
      "name": "filename_prefix"
     },
     "link": null
    },
    {
     "localized_name": "format",
     "name": "format",
     "type": "COMBO",
     "widget": {
      "name": "format"
     },
     "link": null
    },
    {
     "localized_name": "save_metadata",
     "name": "save_metadata",
     "type": "BOOLEAN",
     "widget": {
      "name": "save_metadata"
     },
     "link": null
    },
    {
     "localized_name": "exact_name",
     "name": "exact_name",
     "shape": 7,
     "type": "STRING",
     "widget": {
      "name": "exact_name"
     },
     "link": null
    },
    {
     "localized_name": "on_existing",
     "name": "on_existing",
     "shape": 7,
     "type": "COMBO",
     "widget": {
      "name": "on_existing"
     },
     "link": null
    },
    {
     "localized_name": "output_dir",
     "name": "output_dir",
     "shape": 7,
     "type": "STRING",
     "widget": {
      "name": "output_dir"
     },
     "link": null
    },
    {
     "localized_name": "caption",
     "name": "caption",
     "shape": 7,
     "type": "STRING",
     "widget": {
      "name": "caption"
     },
     "link": null
    },
    {
     "localized_name": "name_counter",
     "name": "name_counter",
     "shape": 7,
     "type": "BOOLEAN",
     "widget": {
      "name": "name_counter"
     },
     "link": null
    },
    {
     "localized_name": "name_date",
     "name": "name_date",
     "shape": 7,
     "type": "BOOLEAN",
     "widget": {
      "name": "name_date"
     },
     "link": null
    },
    {
     "localized_name": "name_time",
     "name": "name_time",
     "shape": 7,
     "type": "BOOLEAN",
     "widget": {
      "name": "name_time"
     },
     "link": null
    },
    {
     "localized_name": "name_size",
     "name": "name_size",
     "shape": 7,
     "type": "BOOLEAN",
     "widget": {
      "name": "name_size"
     },
     "link": null
    },
    {
     "localized_name": "name_batch",
     "name": "name_batch",
     "shape": 7,
     "type": "BOOLEAN",
     "widget": {
      "name": "name_batch"
     },
     "link": null
    },
    {
     "localized_name": "preview",
     "name": "preview",
     "shape": 7,
     "type": "BOOLEAN",
     "widget": {
      "name": "preview"
     },
     "link": null
    },
    {
     "localized_name": "step_preview",
     "name": "step_preview",
     "shape": 7,
     "type": "BOOLEAN",
     "widget": {
      "name": "step_preview"
     },
     "link": null
    }
   ],
   "outputs": [
    {
     "localized_name": "file_path",
     "name": "file_path",
     "type": "STRING",
     "links": []
    },
    {
     "localized_name": "images",
     "name": "images",
     "type": "IMAGE",
     "links": []
    }
   ],
   "title": "Save Image",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_SaveImage",
    "cnr_id": "ausboss-nodes",
    "ver": "2.15.0"
   },
   "widgets_values": {
    "filename_prefix": "minimax-h3-image",
    "format": "png",
    "save_metadata": true,
    "exact_name": "",
    "on_existing": "overwrite",
    "output_dir": "",
    "caption": "",
    "name_counter": true,
    "name_date": false,
    "name_time": false,
    "name_size": false,
    "name_batch": false,
    "preview": false,
    "step_preview": false
   },
   "widgets_values_named": {
    "filename_prefix": "minimax-h3-image",
    "format": "png",
    "save_metadata": true,
    "exact_name": "",
    "on_existing": "overwrite",
    "output_dir": "",
    "caption": "",
    "name_counter": true,
    "name_date": false,
    "name_time": false,
    "name_size": false,
    "name_batch": false,
    "preview": false,
    "step_preview": false
   },
   "color": "#14424d",
   "bgcolor": "#161f21"
  },
  {
   "id": 12,
   "type": "AUSBOSS_NODES_Compare",
   "pos": [
    2768,
    966
   ],
   "size": [
    460,
    480
   ],
   "flags": {},
   "order": 33,
   "mode": 4,
   "inputs": [
    {
     "localized_name": "image_a",
     "name": "image_a",
     "type": "IMAGE",
     "link": 1027
    },
    {
     "localized_name": "image_b",
     "name": "image_b",
     "type": "IMAGE",
     "link": 1028
    },
    {
     "localized_name": "filename",
     "name": "filename",
     "shape": 7,
     "type": "STRING",
     "link": null
    }
   ],
   "outputs": [
    {
     "localized_name": "image_a",
     "name": "image_a",
     "type": "IMAGE",
     "links": []
    },
    {
     "localized_name": "image_b",
     "name": "image_b",
     "type": "IMAGE",
     "links": null
    }
   ],
   "title": "Image Compare A/B - Before and after the upscale",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_Compare",
    "ausboss_compare_mode": "slide",
    "cnr_id": "ausboss-nodes",
    "ver": "2.15.0"
   },
   "widgets_values": [],
   "widgets_values_named": {},
   "color": "#14424d",
   "bgcolor": "#161f21"
  },
  {
   "id": 54,
   "type": "AUSBOSS_NODES_Compare",
   "pos": [
    2768,
    1516
   ],
   "size": [
    460,
    480
   ],
   "flags": {},
   "order": 31,
   "mode": 0,
   "inputs": [
    {
     "localized_name": "image_a",
     "name": "image_a",
     "type": "IMAGE",
     "link": 1029
    },
    {
     "localized_name": "image_b",
     "name": "image_b",
     "type": "IMAGE",
     "link": 1030
    },
    {
     "localized_name": "filename",
     "name": "filename",
     "shape": 7,
     "type": "STRING",
     "link": null
    }
   ],
   "outputs": [
    {
     "localized_name": "image_a",
     "name": "image_a",
     "type": "IMAGE",
     "links": []
    },
    {
     "localized_name": "image_b",
     "name": "image_b",
     "type": "IMAGE",
     "links": null
    }
   ],
   "title": "Image Compare A/B - Result",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_Compare",
    "ausboss_compare_mode": "slide",
    "cnr_id": "ausboss-nodes",
    "ver": "2.15.0"
   },
   "widgets_values": [],
   "widgets_values_named": {},
   "color": "#14424d",
   "bgcolor": "#161f21"
  },
  {
   "id": 14,
   "type": "AUSBOSS_NODES_RunTimer",
   "pos": [
    2893,
    2066
   ],
   "size": [
    210,
    67
   ],
   "flags": {
    "no_title": true
   },
   "order": 21,
   "mode": 0,
   "inputs": [],
   "outputs": [],
   "title": "Run Timer",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_RunTimer",
    "cnr_id": "ausboss-nodes",
    "ver": "2.15.0"
   },
   "color": "#07090a",
   "bgcolor": "#07090a"
  },
  {
   "id": 304,
   "type": "AUSBOSS_NODES_WorkflowSwitches",
   "pos": [
    964,
    1140
   ],
   "size": [
    424,
    66
   ],
   "flags": {},
   "order": 22,
   "mode": 0,
   "inputs": [],
   "outputs": [],
   "title": "Workflow Switches - Size",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_WorkflowSwitches",
    "ausboss_workflow_switches": {
     "off": "bypass",
     "groups": "none",
     "match": "",
     "order": "canvas",
     "exclusive": true,
     "show": "pill",
     "switches": [
      {
       "id": 1,
       "title": "4 MP",
       "nodes": [],
       "groups": [],
       "on": {
        "6": {
         "resize_to_megapixels": true,
         "megapixels": 4
        },
        "308": {
         "expression": "round(a * sqrt(4194304 / (a * b)) / 32) * 32"
        },
        "309": {
         "expression": "round(b * sqrt(4194304 / (a * b)) / 32) * 32"
        }
       },
       "off": {
        "6": {
         "resize_to_megapixels": true,
         "megapixels": 16
        },
        "308": {
         "expression": "round(a * sqrt(16777216 / (a * b)) / 32) * 32"
        },
        "309": {
         "expression": "round(b * sqrt(16777216 / (a * b)) / 32) * 32"
        }
       }
      },
      {
       "id": 2,
       "title": "16 MP",
       "nodes": [],
       "groups": [],
       "on": {
        "6": {
         "resize_to_megapixels": true,
         "megapixels": 16
        },
        "308": {
         "expression": "round(a * sqrt(16777216 / (a * b)) / 32) * 32"
        },
        "309": {
         "expression": "round(b * sqrt(16777216 / (a * b)) / 32) * 32"
        }
       },
       "off": {
        "6": {
         "resize_to_megapixels": true,
         "megapixels": 4
        },
        "308": {
         "expression": "round(a * sqrt(4194304 / (a * b)) / 32) * 32"
        },
        "309": {
         "expression": "round(b * sqrt(4194304 / (a * b)) / 32) * 32"
        }
       }
      }
     ]
    },
    "ausboss_show_edit": false,
    "cnr_id": "ausboss-nodes",
    "ver": "2.15.0"
   },
   "widgets_values": [],
   "widgets_values_named": {},
   "color": "#14424d",
   "bgcolor": "#161f21"
  },
  {
   "id": 305,
   "type": "AUSBOSS_NODES_Callout",
   "pos": [
    964,
    910
   ],
   "size": [
    424,
    170
   ],
   "flags": {
    "pinned": true
   },
   "order": 23,
   "mode": 0,
   "inputs": [
    {
     "localized_name": "text",
     "name": "text",
     "type": "STRING",
     "widget": {
      "name": "text"
     },
     "link": null
    }
   ],
   "outputs": [],
   "title": "Callout",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_Callout",
    "cnr_id": "ausboss-nodes"
   },
   "widgets_values": [
    "⬇️#304 **Size: 4 MP | 16 MP**\n###### 16 MP is what the model is made for. 4 MP is faster and uses less memory. Latent Size sets only the shape of a new picture."
   ],
   "widgets_values_named": {
    "text": "⬇️#304 **Size: 4 MP | 16 MP**\n###### 16 MP is what the model is made for. 4 MP is faster and uses less memory. Latent Size sets only the shape of a new picture."
   },
   "color": "#07090a",
   "bgcolor": "#07090a"
  },
  {
   "id": 308,
   "type": "AUSBOSS_NODES_MathExpression",
   "pos": [
    964,
    2290
   ],
   "size": [
    300,
    134
   ],
   "flags": {
    "collapsed": true
   },
   "order": 24,
   "mode": 0,
   "inputs": [
    {
     "localized_name": "a",
     "name": "a",
     "shape": 7,
     "type": "FLOAT,INT",
     "link": 1125
    },
    {
     "localized_name": "b",
     "name": "b",
     "shape": 7,
     "type": "FLOAT,INT",
     "link": 1126
    },
    {
     "localized_name": "c",
     "name": "c",
     "shape": 7,
     "type": "FLOAT,INT",
     "link": null
    },
    {
     "localized_name": "expression",
     "name": "expression",
     "type": "STRING",
     "widget": {
      "name": "expression"
     },
     "link": null
    }
   ],
   "outputs": [
    {
     "localized_name": "float",
     "name": "float",
     "type": "FLOAT",
     "links": null
    },
    {
     "localized_name": "int",
     "name": "int",
     "type": "INT",
     "links": [
      1129,
      1131
     ]
    }
   ],
   "title": "Width at 4 or 16 MP",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_MathExpression"
   },
   "widgets_values": [
    "round(a * sqrt(16777216 / (a * b)) / 32) * 32"
   ],
   "widgets_values_named": {
    "expression": "round(a * sqrt(16777216 / (a * b)) / 32) * 32"
   },
   "color": "#14424d",
   "bgcolor": "#161f21"
  },
  {
   "id": 309,
   "type": "AUSBOSS_NODES_MathExpression",
   "pos": [
    1184,
    2290
   ],
   "size": [
    300,
    134
   ],
   "flags": {
    "collapsed": true
   },
   "order": 25,
   "mode": 0,
   "inputs": [
    {
     "localized_name": "a",
     "name": "a",
     "shape": 7,
     "type": "FLOAT,INT",
     "link": 1127
    },
    {
     "localized_name": "b",
     "name": "b",
     "shape": 7,
     "type": "FLOAT,INT",
     "link": 1128
    },
    {
     "localized_name": "c",
     "name": "c",
     "shape": 7,
     "type": "FLOAT,INT",
     "link": null
    },
    {
     "localized_name": "expression",
     "name": "expression",
     "type": "STRING",
     "widget": {
      "name": "expression"
     },
     "link": null
    }
   ],
   "outputs": [
    {
     "localized_name": "float",
     "name": "float",
     "type": "FLOAT",
     "links": null
    },
    {
     "localized_name": "int",
     "name": "int",
     "type": "INT",
     "links": [
      1130,
      1132
     ]
    }
   ],
   "title": "Height at 4 or 16 MP",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_MathExpression"
   },
   "widgets_values": [
    "round(b * sqrt(16777216 / (a * b)) / 32) * 32"
   ],
   "widgets_values_named": {
    "expression": "round(b * sqrt(16777216 / (a * b)) / 32) * 32"
   },
   "color": "#14424d",
   "bgcolor": "#161f21"
  },
  {
   "id": 69,
   "type": "AUSBOSS_NODES_CalloutTile",
   "pos": [
    -120,
    -110
   ],
   "size": [
    270,
    96
   ],
   "flags": {
    "pinned": true
   },
   "order": 8,
   "mode": 0,
   "inputs": [
    {
     "localized_name": "text",
     "name": "text",
     "type": "STRING",
     "widget": {
      "name": "text"
     },
     "link": null
    }
   ],
   "outputs": [],
   "title": "Callout",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_CalloutTile",
    "cnr_id": "ausboss-nodes",
    "ausbossCalloutTile": "youtube"
   },
   "widgets_values": [
    "[AusBoss on YouTube](https://www.youtube.com/@ausbossdev)"
   ],
   "widgets_values_named": {
    "text": "[AusBoss on YouTube](https://www.youtube.com/@ausbossdev)"
   },
   "color": "#07090a",
   "bgcolor": "#07090a"
  },
  {
   "id": 310,
   "type": "AUSBOSS_NODES_CalloutTile",
   "pos": [
    170,
    -110
   ],
   "size": [
    270,
    96
   ],
   "flags": {
    "pinned": true
   },
   "order": 43,
   "mode": 0,
   "inputs": [
    {
     "localized_name": "text",
     "name": "text",
     "type": "STRING",
     "widget": {
      "name": "text"
     },
     "link": null
    }
   ],
   "outputs": [],
   "title": "Callout",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_CalloutTile",
    "cnr_id": "ausboss-nodes",
    "ausbossCalloutTile": "discord"
   },
   "widgets_values": [
    "[Get help + more workflows](https://discord.gg/RwVxY9Fuaj)"
   ],
   "widgets_values_named": {
    "text": "[Get help + more workflows](https://discord.gg/RwVxY9Fuaj)"
   },
   "color": "#07090a",
   "bgcolor": "#07090a"
  },
  {
   "id": 311,
   "type": "AUSBOSS_NODES_WorkflowNoteTile",
   "pos": [
    -120,
    1380
   ],
   "size": [
    560,
    88
   ],
   "flags": {
    "pinned": true
   },
   "order": 44,
   "mode": 0,
   "inputs": [
    {
     "localized_name": "note",
     "name": "note",
     "type": "STRING",
     "widget": {
      "name": "note"
     },
     "link": null
    }
   ],
   "outputs": [],
   "title": "🆎 AusBoss",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_WorkflowNoteTile",
    "cnr_id": "ausboss-nodes"
   },
   "widgets_values": [
    "{\"v\": 1, \"title\": \"More pictures\", \"subtitle\": \"Up to seven more pictures to take things from.\", \"author\": \"AusBoss\", \"layout\": \"tile\", \"accent\": \"\", \"body\": \"- To take something from another picture, plug any image loader into **picture 2** on the box **Write the prompt**, and say \\\"put the hat from <Picture 2> on her\\\". Up to **picture 8**, in order.\\n- Your loaded picture is always Picture 1, the one that gets changed.\", \"models\": [], \"packs\": [], \"links\": []}"
   ],
   "widgets_values_named": {
    "note": "{\"v\": 1, \"title\": \"More pictures\", \"subtitle\": \"Up to seven more pictures to take things from.\", \"author\": \"AusBoss\", \"layout\": \"tile\", \"accent\": \"\", \"body\": \"- To take something from another picture, plug any image loader into **picture 2** on the box **Write the prompt**, and say \\\"put the hat from <Picture 2> on her\\\". Up to **picture 8**, in order.\\n- Your loaded picture is always Picture 1, the one that gets changed.\", \"models\": [], \"packs\": [], \"links\": []}"
   },
   "color": "#14424d",
   "bgcolor": "#161f21"
  },
  {
   "id": 312,
   "type": "AUSBOSS_NODES_WorkflowNoteTile",
   "pos": [
    -120,
    1478
   ],
   "size": [
    560,
    88
   ],
   "flags": {
    "pinned": true
   },
   "order": 44,
   "mode": 0,
   "inputs": [
    {
     "localized_name": "note",
     "name": "note",
     "type": "STRING",
     "widget": {
      "name": "note"
     },
     "link": null
    }
   ],
   "outputs": [],
   "title": "🆎 AusBoss",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_WorkflowNoteTile",
    "cnr_id": "ausboss-nodes"
   },
   "widgets_values": [
    "{\"v\": 1, \"title\": \"Tips\", \"subtitle\": \"Prompts, edits and LoRAs.\", \"author\": \"AusBoss\", \"layout\": \"tile\", \"accent\": \"\", \"body\": \"- Switch **Auto prompt** on for short prompts. Without it they come out plain, and any words in them come out garbled. With it, posters, covers and infographics spell their words right.\\n- On an edit, **Auto prompt** makes a bigger change from a few words (\\\"vampire\\\", \\\"winter\\\"). For a small, exact change, leave it off and say what should stay the same.\\n- Leave **Auto prompt** off when your prompt is already a full description. In our runs of the opening prompt, rewriting it tangled the hands on the can.\\n- Put any words that should appear in quotes, and say where they go.\\n- For an edit, say what changes and what stays: \\\"Change her top to a black varsity jacket. Keep everything else the same.\\\"\\n- The model makes 6 steps with no CFG. Don't add steps, CFG or a negative prompt: it is made for this schedule.\\n- Your LoRAs go in the **LoRA Loader**, below the locked Fast row.\\n- If the run stops with \\\"Value not in list\\\", a file is missing. Download it from the list below.\", \"models\": [], \"packs\": [], \"links\": []}"
   ],
   "widgets_values_named": {
    "note": "{\"v\": 1, \"title\": \"Tips\", \"subtitle\": \"Prompts, edits and LoRAs.\", \"author\": \"AusBoss\", \"layout\": \"tile\", \"accent\": \"\", \"body\": \"- Switch **Auto prompt** on for short prompts. Without it they come out plain, and any words in them come out garbled. With it, posters, covers and infographics spell their words right.\\n- On an edit, **Auto prompt** makes a bigger change from a few words (\\\"vampire\\\", \\\"winter\\\"). For a small, exact change, leave it off and say what should stay the same.\\n- Leave **Auto prompt** off when your prompt is already a full description. In our runs of the opening prompt, rewriting it tangled the hands on the can.\\n- Put any words that should appear in quotes, and say where they go.\\n- For an edit, say what changes and what stays: \\\"Change her top to a black varsity jacket. Keep everything else the same.\\\"\\n- The model makes 6 steps with no CFG. Don't add steps, CFG or a negative prompt: it is made for this schedule.\\n- Your LoRAs go in the **LoRA Loader**, below the locked Fast row.\\n- If the run stops with \\\"Value not in list\\\", a file is missing. Download it from the list below.\", \"models\": [], \"packs\": [], \"links\": []}"
   },
   "color": "#14424d",
   "bgcolor": "#161f21"
  },
  {
   "id": 313,
   "type": "AUSBOSS_NODES_WorkflowNoteTile",
   "pos": [
    -120,
    1576
   ],
   "size": [
    560,
    88
   ],
   "flags": {
    "pinned": true
   },
   "order": 44,
   "mode": 0,
   "inputs": [
    {
     "localized_name": "note",
     "name": "note",
     "type": "STRING",
     "widget": {
      "name": "note"
     },
     "link": null
    }
   ],
   "outputs": [],
   "title": "🆎 AusBoss",
   "properties": {
    "Node name for S&R": "AUSBOSS_NODES_WorkflowNoteTile",
    "cnr_id": "ausboss-nodes"
   },
   "widgets_values": [
    "{\"v\": 1, \"title\": \"What it is bad at\", \"subtitle\": \"Small far-off text, very short prompts.\", \"author\": \"AusBoss\", \"layout\": \"tile\", \"accent\": \"\", \"body\": \"- Small text far from the subject (fine print, credits, labels in the background) can still come out as nonsense.\\n- Short prompts with Auto prompt off can invent filler words.\", \"models\": [], \"packs\": [], \"links\": []}"
   ],
   "widgets_values_named": {
    "note": "{\"v\": 1, \"title\": \"What it is bad at\", \"subtitle\": \"Small far-off text, very short prompts.\", \"author\": \"AusBoss\", \"layout\": \"tile\", \"accent\": \"\", \"body\": \"- Small text far from the subject (fine print, credits, labels in the background) can still come out as nonsense.\\n- Short prompts with Auto prompt off can invent filler words.\", \"models\": [], \"packs\": [], \"links\": []}"
   },
   "color": "#14424d",
   "bgcolor": "#161f21"
  }
 ],
 "links": [
  [
   1000,
   3,
   0,
   41,
   0,
   "STRING"
  ],
  [
   1001,
   6,
   0,
   41,
   8,
   "IMAGE"
  ],
  [
   1002,
   70,
   0,
   41,
   9,
   "CLIP"
  ],
  [
   1005,
   41,
   0,
   15,
   0,
   "STRING"
  ],
  [
   1006,
   41,
   0,
   39,
   0,
   "STRING"
  ],
  [
   1007,
   41,
   1,
   39,
   8,
   "IMAGE"
  ],
  [
   1008,
   41,
   2,
   39,
   9,
   "IMAGE"
  ],
  [
   1009,
   41,
   3,
   39,
   10,
   "IMAGE"
  ],
  [
   1010,
   41,
   4,
   39,
   11,
   "IMAGE"
  ],
  [
   1011,
   41,
   5,
   39,
   12,
   "IMAGE"
  ],
  [
   1012,
   41,
   6,
   39,
   13,
   "IMAGE"
  ],
  [
   1013,
   41,
   7,
   39,
   14,
   "IMAGE"
  ],
  [
   1014,
   4,
   0,
   39,
   1,
   "INT"
  ],
  [
   1015,
   6,
   0,
   39,
   2,
   "IMAGE"
  ],
  [
   1018,
   8,
   0,
   39,
   5,
   "CLIP"
  ],
  [
   1019,
   9,
   0,
   39,
   6,
   "VAE"
  ],
  [
   1020,
   10,
   0,
   11,
   0,
   "MODEL"
  ],
  [
   1021,
   11,
   0,
   39,
   7,
   "MODEL"
  ],
  [
   1022,
   39,
   0,
   105,
   0,
   "IMAGE"
  ],
  [
   1023,
   4,
   0,
   105,
   1,
   "INT"
  ],
  [
   1024,
   106,
   0,
   105,
   2,
   "MODEL"
  ],
  [
   1025,
   107,
   0,
   105,
   3,
   "VAE"
  ],
  [
   1026,
   105,
   0,
   13,
   0,
   "IMAGE"
  ],
  [
   1027,
   39,
   0,
   12,
   0,
   "IMAGE"
  ],
  [
   1028,
   105,
   0,
   12,
   1,
   "IMAGE"
  ],
  [
   1029,
   39,
   1,
   54,
   0,
   "IMAGE"
  ],
  [
   1030,
   39,
   0,
   54,
   1,
   "IMAGE"
  ],
  [
   1125,
   5,
   0,
   308,
   0,
   "INT"
  ],
  [
   1126,
   5,
   1,
   308,
   1,
   "INT"
  ],
  [
   1127,
   5,
   0,
   309,
   0,
   "INT"
  ],
  [
   1128,
   5,
   1,
   309,
   1,
   "INT"
  ],
  [
   1129,
   308,
   1,
   41,
   10,
   "INT"
  ],
  [
   1130,
   309,
   1,
   41,
   11,
   "INT"
  ],
  [
   1131,
   308,
   1,
   39,
   3,
   "INT"
  ],
  [
   1132,
   309,
   1,
   39,
   4,
   "INT"
  ]
 ],
 "groups": [
  {
   "id": 1,
   "title": "1 · Your input",
   "bounding": [
    480,
    0,
    928,
    2480
   ],
   "color": "#1d5560",
   "flags": {
    "pinned": true
   }
  },
  {
   "id": 2,
   "title": "2 · Behind the scenes",
   "bounding": [
    1448,
    0,
    1260,
    1090
   ],
   "color": "#1d5560",
   "flags": {
    "pinned": true
   }
  },
  {
   "id": 3,
   "title": "3 · Models",
   "bounding": [
    1448,
    1090,
    960,
    700
   ],
   "color": "#1d5560",
   "flags": {
    "pinned": true
   }
  },
  {
   "id": 4,
   "title": "4 · Result",
   "bounding": [
    2748,
    0,
    500,
    2180
   ],
   "color": "#1d5560",
   "flags": {
    "pinned": true
   }
  }
 ],
 "definitions": {
  "subgraphs": [
   {
    "id": "763be216-d720-52d4-b604-469834ebd74c",
    "version": 1,
    "state": {
     "lastGroupId": 22,
     "lastNodeId": 470,
     "lastLinkId": 1132,
     "lastRerouteId": 0
    },
    "revision": 0,
    "config": {},
    "name": "Write the prompt",
    "inputNode": {
     "id": -10,
     "bounding": [
      -260,
      120,
      150,
      320
     ]
    },
    "outputNode": {
     "id": -20,
     "bounding": [
      2210,
      120,
      150,
      200
     ]
    },
    "inputs": [
     {
      "id": "8d8427cb-90dd-5fa9-b01c-122f97e7d0e8",
      "name": "your prompt",
      "type": "*",
      "linkIds": [
       1033,
       1047,
       1144
      ],
      "localized_name": "your prompt",
      "pos": [
       51,
       24
      ]
     },
     {
      "id": "b7201a4f-4e43-5199-a8d1-7e380838d520",
      "name": "picture 2",
      "type": "IMAGE",
      "linkIds": [
       1036,
       1057
      ],
      "localized_name": "picture 2",
      "shape": 7,
      "pos": [
       51,
       44
      ]
     },
     {
      "id": "5b9da575-ec4f-5d79-8b38-7fcdde0abb0e",
      "name": "picture 3",
      "type": "IMAGE",
      "linkIds": [
       1037,
       1059
      ],
      "localized_name": "picture 3",
      "shape": 7,
      "pos": [
       51,
       64
      ]
     },
     {
      "id": "ac084225-d7d4-530a-9f0f-bc0942faf396",
      "name": "picture 4",
      "type": "IMAGE",
      "linkIds": [
       1038,
       1061
      ],
      "localized_name": "picture 4",
      "shape": 7,
      "pos": [
       51,
       84
      ]
     },
     {
      "id": "39f32069-d0ac-5732-8f8c-ed7ac61aa29a",
      "name": "picture 5",
      "type": "IMAGE",
      "linkIds": [
       1039,
       1063
      ],
      "localized_name": "picture 5",
      "shape": 7,
      "pos": [
       51,
       104
      ]
     },
     {
      "id": "f9b23622-da24-51e4-a999-61dee5f6a271",
      "name": "picture 6",
      "type": "IMAGE",
      "linkIds": [
       1040,
       1065
      ],
      "localized_name": "picture 6",
      "shape": 7,
      "pos": [
       51,
       124
      ]
     },
     {
      "id": "ec278436-aad6-53ce-894b-dbed078229f9",
      "name": "picture 7",
      "type": "IMAGE",
      "linkIds": [
       1041,
       1067
      ],
      "localized_name": "picture 7",
      "shape": 7,
      "pos": [
       51,
       144
      ]
     },
     {
      "id": "c479187a-b189-5123-bd39-eb3336f3839b",
      "name": "picture 8",
      "type": "IMAGE",
      "linkIds": [
       1042,
       1069
      ],
      "localized_name": "picture 8",
      "shape": 7,
      "pos": [
       51,
       164
      ]
     },
     {
      "id": "f3b82cc3-3d99-58bc-9493-f36c3137f5ca",
      "name": "your picture",
      "type": "IMAGE",
      "linkIds": [
       1034
      ],
      "localized_name": "your picture",
      "shape": 7,
      "pos": [
       51,
       184
      ]
     },
     {
      "id": "3d179a3d-0152-5b63-b444-34512f766257",
      "name": "prompt writer",
      "type": "CLIP",
      "linkIds": [
       1142
      ],
      "localized_name": "prompt writer",
      "pos": [
       51,
       204
      ]
     },
     {
      "id": "a604fbce-2616-5a83-a19c-a03ef1d57bee",
      "name": "width",
      "type": "INT",
      "linkIds": [
       1031
      ],
      "localized_name": "width",
      "shape": 7,
      "pos": [
       51,
       224
      ]
     },
     {
      "id": "83563c3f-c0f2-510f-855a-5a078d594519",
      "name": "height",
      "type": "INT",
      "linkIds": [
       1032
      ],
      "localized_name": "height",
      "shape": 7,
      "pos": [
       51,
       244
      ]
     },
     {
      "id": "f9e0c53c-1284-56dc-a625-d45a0b1854f9",
      "name": "write an edit",
      "type": "BOOLEAN",
      "linkIds": [
       1055,
       1071
      ],
      "localized_name": "write an edit",
      "pos": [
       51,
       264
      ]
     },
     {
      "id": "a383939d-c11f-4395-a7c5-12c299472db2",
      "name": "auto prompt",
      "type": "BOOLEAN",
      "linkIds": [
       1145
      ],
      "localized_name": "auto prompt",
      "pos": [
       51,
       284
      ]
     }
    ],
    "outputs": [
     {
      "id": "a396e8d5-70dd-5a84-ab50-949682137cd7",
      "name": "prompt",
      "type": "STRING",
      "linkIds": [
       1056
      ],
      "localized_name": "prompt",
      "pos": [
       24,
       24
      ]
     },
     {
      "id": "01ca7308-80f9-5cbc-9c34-069e98802478",
      "name": "picture 2",
      "type": "IMAGE",
      "linkIds": [
       1058
      ],
      "localized_name": "picture 2",
      "pos": [
       24,
       44
      ]
     },
     {
      "id": "6634f4ee-c290-53b7-bc46-90c29d2c4883",
      "name": "picture 3",
      "type": "IMAGE",
      "linkIds": [
       1060
      ],
      "localized_name": "picture 3",
      "pos": [
       24,
       64
      ]
     },
     {
      "id": "67901101-da79-5a21-b20b-06c2572f77b9",
      "name": "picture 4",
      "type": "IMAGE",
      "linkIds": [
       1062
      ],
      "localized_name": "picture 4",
      "pos": [
       24,
       84
      ]
     },
     {
      "id": "c589663f-cb2b-5a0f-b076-0aa38caf6920",
      "name": "picture 5",
      "type": "IMAGE",
      "linkIds": [
       1064
      ],
      "localized_name": "picture 5",
      "pos": [
       24,
       104
      ]
     },
     {
      "id": "697bf7a5-c939-54e4-ac42-0437f3d4ecde",
      "name": "picture 6",
      "type": "IMAGE",
      "linkIds": [
       1066
      ],
      "localized_name": "picture 6",
      "pos": [
       24,
       124
      ]
     },
     {
      "id": "8c02be2a-3f21-5b37-ad04-87dc1ac0a3ee",
      "name": "picture 7",
      "type": "IMAGE",
      "linkIds": [
       1068
      ],
      "localized_name": "picture 7",
      "pos": [
       24,
       144
      ]
     },
     {
      "id": "bf5384b8-f671-5af9-9420-2a6997333ec5",
      "name": "picture 8",
      "type": "IMAGE",
      "linkIds": [
       1070
      ],
      "localized_name": "picture 8",
      "pos": [
       24,
       164
      ]
     }
    ],
    "widgets": [],
    "nodes": [
     {
      "id": 401,
      "type": "AUSBOSS_NODES_Callout",
      "pos": [
       20,
       80
      ],
      "size": [
       460,
       150
      ],
      "flags": {
       "pinned": true
      },
      "order": 0,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "text",
        "name": "text",
        "type": "STRING",
        "widget": {
         "name": "text"
        },
        "link": null
       }
      ],
      "outputs": [],
      "title": "Callout",
      "properties": {
       "Node name for S&R": "AUSBOSS_NODES_Callout",
       "cnr_id": "ausboss-nodes"
      },
      "widgets_values": [
       "For a new picture, the writer gets MiniMax's own prompt-expander instructions, your words and the picture's shape.\n###### It writes one long English description of the whole picture: the prompt MiniMax-H3-Image is made for."
      ],
      "widgets_values_named": {
       "text": "For a new picture, the writer gets MiniMax's own prompt-expander instructions, your words and the picture's shape.\n###### It writes one long English description of the whole picture: the prompt MiniMax-H3-Image is made for."
      },
      "color": "#07090a",
      "bgcolor": "#07090a"
     },
     {
      "id": 402,
      "type": "StringFormat",
      "pos": [
       20,
       474
      ],
      "size": [
       460,
       170
      ],
      "flags": {},
      "order": 5,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "a",
        "name": "values.a",
        "shape": 7,
        "type": "*",
        "link": 1073
       },
       {
        "localized_name": "b",
        "name": "values.b",
        "shape": 7,
        "type": "*",
        "link": null
       },
       {
        "localized_name": "f_string",
        "name": "f_string",
        "type": "STRING",
        "widget": {
         "name": "f_string"
        },
        "link": null
       },
       {
        "localized_name": "c",
        "name": "values.c",
        "shape": 7,
        "type": "*",
        "link": 1033
       },
       {
        "localized_name": "d",
        "name": "values.d",
        "shape": 7,
        "type": "*",
        "link": null
       }
      ],
      "outputs": [
       {
        "localized_name": "STRING",
        "name": "STRING",
        "type": "STRING",
        "links": [
         1050
        ]
       }
      ],
      "title": "Format Text - MiniMax's expander instructions, your words, the shape",
      "properties": {
       "Node name for S&R": "StringFormat",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "widgets_values": [
       "You are a caption-expansion and canvas-selection model for still-image\ntext-to-image generation. Rewrite input_text into a natural English detailed\ncaption and choose one aspect ratio for the requested final image. After private\nreasoning, serialize the complete caption and aspect ratio together as the one\nrequired two-key JSON object; no visible analysis, markdown, or self-talk. The\ncaption may be long when the requested image is a complex information or design artifact.\n\nRole: act like an expert visual designer and technical illustrator, not a word\nexpander. Preserve every hard fact from the input, then complete the image with\nvisible, inspectable content. The goal is not more words; the goal is that a\nviewer can inspect each important part of the image and find meaningful subjects,\nlabels, relationships, materials, data, and hierarchy.\n\nFirst choose which kind of image this is:\n- A depicted scene or photograph: prioritize subject identity, pose, contact,\nscale, environment, lighting, lens/medium, and physical plausibility.\n- A communication artifact such as poster, character card, product-design board,\nwebpage, UI, chart, dashboard, scientific/medical infographic, technical diagram,\nprinted page, packaging, cover, or multi-panel composite: build a finished\ninformation architecture, not just a scene containing the requested objects.\n\nAspect-ratio decision policy:\nChoose exactly one of these allowed ratios: 1:1, 5:4, 4:3, 3:2, 16:9, 21:9,\n4:5, 3:4, 2:3, or 9:16. Decide in the following order; earlier evidence\noverrides later evidence.\n\n1. Explicit final canvas\n- Preserve an explicit final-output ratio. Map explicit output pixel dimensions\n  by width divided by height to the closest allowed ratio.\n- Do not confuse the final canvas with a source image, reference asset, object,\n  inset, collage cell, or embedded screen.\n\n2. Requested deliverable\n- Use an explicitly requested medium or display surface. Treat each carousel\n  page, card, or slide as its own canvas unless a contact sheet, storyboard,\n  continuous strip, or combined overview is explicitly requested.\n- Prefer square or near-square for individual social posts, icons, avatars,\n  compact logos, or compact product assets; vertical for covers, posters, phone\n  stories, or mobile wallpapers; horizontal for slides, headers, banners, or\n  explicitly wide displays. Do not invent a platform or deliverable.\n\n3. Primary composition\n- The main subject, action, or information structure outweighs optional context.\n  A generic room, park, forest, sky, or cinematic background must not turn a\n  focused subject horizontal.\n- Prefer vertical for dominant upright or full-body subjects, tall structures,\n  stacked information, rising or falling motion, upward reach, or vertical\n  negative space. Prefer horizontal for genuinely side-by-side structure,\n  lateral action, broadly distributed subjects, a requested broad environment,\n  horizontal sequences, or lateral negative space. Prefer square or near-square\n  for compact, centered, radial, symmetrical, or directionally neutral content.\n\n4. Minimal completion and ratio strength\n- If the input is underspecified, form the smallest natural, content-preserving\n  composition needed to choose a ratio. Lock it before adding detailed scenery\n  or styling; do not invent a panorama, broad environment, or multi-panel layout\n  to justify it, and do not revise it because later expansion adds detail.\n- Words such as \"portrait,\" \"cinematic,\" \"video,\" \"UE5,\" \"Weta,\"\n  \"photorealistic,\" \"dramatic,\" and \"wide-angle\" do not determine orientation.\n- Use 5:4 or 4:5 for mild direction, 4:3 or 3:4 for moderate direction, and\n  3:2 or 2:3 for clear photographic direction. Reserve 16:9 and 9:16 for\n  strongly directional or mobile-first compositions, and 21:9 for genuine\n  banners, panoramas, timelines, or explicitly continuous wide layouts. When\n  evidence remains weak, prefer 1:1 or a moderate ratio.\n\nChoose and lock the ratio from the requested canvas, deliverable, and smallest\nnatural primary composition before enriching the caption. Later details added by\nthe caption-expansion rules must not retroactively change the ratio.\n\nUniversal hard rules:\n1. Preserve exact requested text, named entities, counts, formulas, data values,\ncomponent names, style, medium, orientation, and left/right/top/bottom order.\n2. Required content must be visible, not implied. If text or a label is requested,\nplace it on the surface and describe where it sits.\n3. For active bodies, solve scene geometry before pose detail. Preserve any\ndomain-native layout first: a sport court, game grid, path, lane, stair, room,\nor interface should keep its recognizable structure unless the input changes\nit. Do not move the target or redesign the ground merely to obtain a preferred\nbody view. Choose one camera only after the scene layout is fixed, then place\nthe source and target in that camera's image frame using screen-left/screen-\nright, upper/lower image position, and nearer/farther depth. Silently trace the\nsource-to-target vector in this fixed view. Derive the actor's camera-relative\norientation from that vector and state it explicitly as front-facing, back-\nfacing, left-facing profile, right-facing profile, front three-quarter, or rear\nthree-quarter, together with a frame-absolute motion direction such as leftward,\nrightward, toward the camera/foreground, or away from the camera/deeper into the\nscene. Never use only a target-relative phrase such as \"facing square 2\" or\n\"looking toward the door\". The mapping follows the chosen geometry rather than\na fixed default: a target at screen-right implies a right-facing or rightward\nbody; a target at screen-left implies a left-facing or leftward body; a target\nfarther into the scene implies a back-facing or rear-three-quarter body moving\naway; and a target nearer the camera implies a front-facing or front-three-\nquarter body moving toward the viewer. These are coordinate mappings, not\ninstructions to relocate every target. Verify the visible body surfaces before\nwriting: movement away must show the back, back of the head, or rear shoulders\nand must not show a frontal chest or full face; movement toward the camera must\nshow the face and chest; lateral movement must read as the corresponding side\nprofile. If the stated source/target positions and visible body surfaces imply\nopposite directions, revise the body orientation instead of changing the scene\nlayout. Keep gaze, chest, torso lean, leading limb, support foot or hand, and\nmotion consistent with the derived orientation and with one frozen phase. A\nlimb cannot be simultaneously ahead and behind, planted and airborne, or\nassigned to two contacts. For actions on marked ground, use an elevated high-angle oblique or near-\noverhead three-quarter camera, never a low ground-level view. Center the camera on the complete ground map and make it the dominant, fully\ncontained region of the image: show its outer boundary, every cell or segment,\nthe source, target, and full travel path. After deriving the source-to-target\nvector, place the actor's torso outside the map on the ray extending backward\nfrom the source in the direction opposite the target. Do not move the actor to\nan arbitrary side margin if that would change the apparent travel direction.\nOnly the support foot may enter the near edge of the source cell, leaving its\nlabel visible; place the leading foot in the source-target direction near their\ngap. Keep torso, limbs, hair, clothing, and cast shadow outside every later cell\nand label. Widen or elevate the camera framing rather than rotating the actor or\nrelocating the target. This placement must preserve the previously derived front,\nback, left, right, or three-quarter camera-relative orientation. Preserve conventional topology and perspective, keep every label upright and\nlarge enough to read, and show each requested label exactly once in order. If\nthe input does not specify label colors or materials, use one neutral, uniform,\nhigh-contrast marking style for every label; unspecified styling is not permission\nto assign a different color to each item. Keep the actor's hands empty unless the\ninput names a held object. Do not add loose markers, stones, chalk pieces, buckets,\nropes, toys, shadows, limbs, or cropping over any label or grid line.\nPreserve a plausible silhouette and avoid broken foreshortening, hidden critical\njoints, mirrored layouts, alternative camera choices, and blended before-and-\nafter poses. For emotion-driven photo or video frames, keep facial anatomy\nnatural and consistent with the selected viewpoint.\n4. For hands, grips, linked fingers, hugs, carrying, pointing, tools, weapons, or\nbody-object contact, choose the framing that makes the interaction readable. Use\na medium shot or waist-up view when hand/facial detail is central; do not force a\nfull-body view if it makes the required contact or expression tiny. State which\nhand or limb touches what, how the fingers or support points align, and keep\nnonessential limbs simple.\n5. Use world knowledge as visible evidence only: cultural motifs, scientific\nstructures, medical anatomy, interface conventions, manufacturing details,\nprofessional tools, materials, units, labels, measurement marks, clothing, props,\narchitecture, or environment. Do not add lore that cannot be seen.\n6. Respect requested subject count. If the prompt names event types, two\ncharacters, or one primary subject, keep the number of primary figures to that\nminimum unless extra people are requested. Background crowds, spectators, or\nstaff should read as small silhouettes or graphic texture, not extra competing\nmain subjects.\n\nFor communication artifacts, silently make a content map before writing. Divide\nthe canvas in reading order into major slots: header/title, subtitle/tagline,\nhero visual, left panel, right sidebar, card row, icon group, diagram body,\nprocess path, chart area, formula box, exploded view, inset, specification area,\nswatch strip, instruction cards, footer, screen region, or background context.\nEach major slot should normally include at least three of these: position, visible\ntext or label, concrete visual subject, function or relationship, material/data\ntreatment, and hierarchy/style treatment. Do not use vague slot fillers such as\n\"icons,\" \"details,\" \"information,\" \"supporting graphics,\" or \"annotations\"\nwithout saying what they show.\n\nMake the artifact feel complete. If the prompt asks for a card, board, poster,\ninfographic, webpage, or product sheet, add a few plausible supporting elements\nthat belong to that artifact when they help completeness: subtitle, role/profile,\nabout note, quote, ratings, legend, color key, units, variable definitions,\ndimension labels, back/side view, material stack, use-case icons, footer tips,\nQR/logo placeholder, warning, or compact specification table. Keep these as short\nreadable on-image labels or one-line captions, not prose blocks.\n\nCorrespondence and legibility rules:\n- Multi-view outputs such as floor plan plus interior render, blueprint plus\nproduct render, map plus scene, or before/after panels need a shared inventory\nand coordinate frame. Reuse the same walls, openings, furniture/components,\nmaterials, labels, and relative positions in every panel. Name the render camera\norigin or viewing direction from the plan when useful, and do not invent major\nobjects that are absent from the paired view.\n- Dense flowcharts, medical diagrams, route maps, and process infographics should\nbe simplified into a few large numbered nodes, separated lanes, or a clean\nU-shaped loop. Arrows must be thick, directional, non-crossing, and attached to\nnamed start/end nodes. Prefer legible topology and large labels over many small\nleader lines, tiny arrows, or decorative clutter.\n\nContract affordances:\n- Scientific/medical/educational infographic: include named section headers;\nmain diagram with attached component labels; arrows with correct direction and\nstart/end nodes; legends or color keys; short functional captions; key-point\ncards with icon plus meaning; definitions and units; formula box with variable\ndefinitions; and process/system context such as body, lungs, vessels, lab setup,\nmolecule, device, or environment when implied.\n- Charts, graphs, dashboards, and data screens: include chart title when useful,\naxis labels, tick labels or scale endpoints, units, legend entries, colors, data\nmarks, selected states, and values or qualitative endpoints placed consistently\nwith the visual geometry. Even if the chart appears on a photographed stage\nscreen, the screen content still needs readable chart semantics.\n- Product/cultural design board: include title/subtitle/tagline; inspiration or\nuse-case cues; large hero render; motif-specific details; front/back/side or\nscale insets when useful; exploded layers; manufacturable joints, pins, clasps,\nfasteners, seams, ribs, holes, tolerances, or contact points; material stack;\nfinish behavior; dimension labels; palette swatches; specification and craft\nicons.\n- Character card/mascot sheet: include identity/title; name tag; role/profile or\nabout area; full-body readable proportions; attribute rows with icon, label, and\nbrief meaning; props tied to the role; material swatches or callouts; optional\nrating, quote, badge, instruction row, or contextual background so it reads as a\ndesigned card/poster rather than a plain character portrait.\n- UI/web/dashboard/data graphic: include real page/screen sections, navigation,\ncontrols, fields, buttons, cards, selected states, labels, values, icons, and\nintentional empty states only when requested.\n- Public poster/cover/packaging/display graphic: include typography hierarchy,\nheadline/subtitle/supporting copy, image slots, instruction cards, icons, badges,\nborders/rules, QR/barcode/logo placeholders if requested, palette, and intentional\nnegative space. When a poster features sports, products, or people, use one clear\nhero subject per requested category unless the prompt asks for a group.\n\nStyle comes after content. Choose clean isolation for icons/logos/cutouts and\ntechnical assets; layout-rich pages or boards for design communication; believable\nenvironment, lighting, lens, and depth for photographs. Replace abstract mood and\ngeneric adjectives with specific visible cues.\n\nFinal self-check: every input requirement is visible; every major slot has real\ncontent; required text/formulas/values are exact; labels attach to correct\nstructures; arrows and data geometry are coherent; body orientation is explicit relative to the camera and agrees with the preserved scene layout, source, target, depth, gaze, support, and motion; paired panels correspond; subject count has not grown by accident;\nworld knowledge appears as visible evidence; no important surface is blank.\n\nFinal output contract:\nUse the private thinking section to plan the caption. The final canvas aspect ratio is already fixed by the user and is given after the input; compose for it and do not choose another. After thinking, write only the caption: one fluent, detailed English paragraph that follows every rule above. No JSON, no labels, no Markdown, no lists, no alternatives, and no text before or after the caption.\n\ninput_text: {c}\nFinal canvas shape: width divided by height is {a:.3g} (below 1 is portrait, above 1 is landscape)\noutput_text:\n"
      ],
      "widgets_values_named": {
       "f_string": "You are a caption-expansion and canvas-selection model for still-image\ntext-to-image generation. Rewrite input_text into a natural English detailed\ncaption and choose one aspect ratio for the requested final image. After private\nreasoning, serialize the complete caption and aspect ratio together as the one\nrequired two-key JSON object; no visible analysis, markdown, or self-talk. The\ncaption may be long when the requested image is a complex information or design artifact.\n\nRole: act like an expert visual designer and technical illustrator, not a word\nexpander. Preserve every hard fact from the input, then complete the image with\nvisible, inspectable content. The goal is not more words; the goal is that a\nviewer can inspect each important part of the image and find meaningful subjects,\nlabels, relationships, materials, data, and hierarchy.\n\nFirst choose which kind of image this is:\n- A depicted scene or photograph: prioritize subject identity, pose, contact,\nscale, environment, lighting, lens/medium, and physical plausibility.\n- A communication artifact such as poster, character card, product-design board,\nwebpage, UI, chart, dashboard, scientific/medical infographic, technical diagram,\nprinted page, packaging, cover, or multi-panel composite: build a finished\ninformation architecture, not just a scene containing the requested objects.\n\nAspect-ratio decision policy:\nChoose exactly one of these allowed ratios: 1:1, 5:4, 4:3, 3:2, 16:9, 21:9,\n4:5, 3:4, 2:3, or 9:16. Decide in the following order; earlier evidence\noverrides later evidence.\n\n1. Explicit final canvas\n- Preserve an explicit final-output ratio. Map explicit output pixel dimensions\n  by width divided by height to the closest allowed ratio.\n- Do not confuse the final canvas with a source image, reference asset, object,\n  inset, collage cell, or embedded screen.\n\n2. Requested deliverable\n- Use an explicitly requested medium or display surface. Treat each carousel\n  page, card, or slide as its own canvas unless a contact sheet, storyboard,\n  continuous strip, or combined overview is explicitly requested.\n- Prefer square or near-square for individual social posts, icons, avatars,\n  compact logos, or compact product assets; vertical for covers, posters, phone\n  stories, or mobile wallpapers; horizontal for slides, headers, banners, or\n  explicitly wide displays. Do not invent a platform or deliverable.\n\n3. Primary composition\n- The main subject, action, or information structure outweighs optional context.\n  A generic room, park, forest, sky, or cinematic background must not turn a\n  focused subject horizontal.\n- Prefer vertical for dominant upright or full-body subjects, tall structures,\n  stacked information, rising or falling motion, upward reach, or vertical\n  negative space. Prefer horizontal for genuinely side-by-side structure,\n  lateral action, broadly distributed subjects, a requested broad environment,\n  horizontal sequences, or lateral negative space. Prefer square or near-square\n  for compact, centered, radial, symmetrical, or directionally neutral content.\n\n4. Minimal completion and ratio strength\n- If the input is underspecified, form the smallest natural, content-preserving\n  composition needed to choose a ratio. Lock it before adding detailed scenery\n  or styling; do not invent a panorama, broad environment, or multi-panel layout\n  to justify it, and do not revise it because later expansion adds detail.\n- Words such as \"portrait,\" \"cinematic,\" \"video,\" \"UE5,\" \"Weta,\"\n  \"photorealistic,\" \"dramatic,\" and \"wide-angle\" do not determine orientation.\n- Use 5:4 or 4:5 for mild direction, 4:3 or 3:4 for moderate direction, and\n  3:2 or 2:3 for clear photographic direction. Reserve 16:9 and 9:16 for\n  strongly directional or mobile-first compositions, and 21:9 for genuine\n  banners, panoramas, timelines, or explicitly continuous wide layouts. When\n  evidence remains weak, prefer 1:1 or a moderate ratio.\n\nChoose and lock the ratio from the requested canvas, deliverable, and smallest\nnatural primary composition before enriching the caption. Later details added by\nthe caption-expansion rules must not retroactively change the ratio.\n\nUniversal hard rules:\n1. Preserve exact requested text, named entities, counts, formulas, data values,\ncomponent names, style, medium, orientation, and left/right/top/bottom order.\n2. Required content must be visible, not implied. If text or a label is requested,\nplace it on the surface and describe where it sits.\n3. For active bodies, solve scene geometry before pose detail. Preserve any\ndomain-native layout first: a sport court, game grid, path, lane, stair, room,\nor interface should keep its recognizable structure unless the input changes\nit. Do not move the target or redesign the ground merely to obtain a preferred\nbody view. Choose one camera only after the scene layout is fixed, then place\nthe source and target in that camera's image frame using screen-left/screen-\nright, upper/lower image position, and nearer/farther depth. Silently trace the\nsource-to-target vector in this fixed view. Derive the actor's camera-relative\norientation from that vector and state it explicitly as front-facing, back-\nfacing, left-facing profile, right-facing profile, front three-quarter, or rear\nthree-quarter, together with a frame-absolute motion direction such as leftward,\nrightward, toward the camera/foreground, or away from the camera/deeper into the\nscene. Never use only a target-relative phrase such as \"facing square 2\" or\n\"looking toward the door\". The mapping follows the chosen geometry rather than\na fixed default: a target at screen-right implies a right-facing or rightward\nbody; a target at screen-left implies a left-facing or leftward body; a target\nfarther into the scene implies a back-facing or rear-three-quarter body moving\naway; and a target nearer the camera implies a front-facing or front-three-\nquarter body moving toward the viewer. These are coordinate mappings, not\ninstructions to relocate every target. Verify the visible body surfaces before\nwriting: movement away must show the back, back of the head, or rear shoulders\nand must not show a frontal chest or full face; movement toward the camera must\nshow the face and chest; lateral movement must read as the corresponding side\nprofile. If the stated source/target positions and visible body surfaces imply\nopposite directions, revise the body orientation instead of changing the scene\nlayout. Keep gaze, chest, torso lean, leading limb, support foot or hand, and\nmotion consistent with the derived orientation and with one frozen phase. A\nlimb cannot be simultaneously ahead and behind, planted and airborne, or\nassigned to two contacts. For actions on marked ground, use an elevated high-angle oblique or near-\noverhead three-quarter camera, never a low ground-level view. Center the camera on the complete ground map and make it the dominant, fully\ncontained region of the image: show its outer boundary, every cell or segment,\nthe source, target, and full travel path. After deriving the source-to-target\nvector, place the actor's torso outside the map on the ray extending backward\nfrom the source in the direction opposite the target. Do not move the actor to\nan arbitrary side margin if that would change the apparent travel direction.\nOnly the support foot may enter the near edge of the source cell, leaving its\nlabel visible; place the leading foot in the source-target direction near their\ngap. Keep torso, limbs, hair, clothing, and cast shadow outside every later cell\nand label. Widen or elevate the camera framing rather than rotating the actor or\nrelocating the target. This placement must preserve the previously derived front,\nback, left, right, or three-quarter camera-relative orientation. Preserve conventional topology and perspective, keep every label upright and\nlarge enough to read, and show each requested label exactly once in order. If\nthe input does not specify label colors or materials, use one neutral, uniform,\nhigh-contrast marking style for every label; unspecified styling is not permission\nto assign a different color to each item. Keep the actor's hands empty unless the\ninput names a held object. Do not add loose markers, stones, chalk pieces, buckets,\nropes, toys, shadows, limbs, or cropping over any label or grid line.\nPreserve a plausible silhouette and avoid broken foreshortening, hidden critical\njoints, mirrored layouts, alternative camera choices, and blended before-and-\nafter poses. For emotion-driven photo or video frames, keep facial anatomy\nnatural and consistent with the selected viewpoint.\n4. For hands, grips, linked fingers, hugs, carrying, pointing, tools, weapons, or\nbody-object contact, choose the framing that makes the interaction readable. Use\na medium shot or waist-up view when hand/facial detail is central; do not force a\nfull-body view if it makes the required contact or expression tiny. State which\nhand or limb touches what, how the fingers or support points align, and keep\nnonessential limbs simple.\n5. Use world knowledge as visible evidence only: cultural motifs, scientific\nstructures, medical anatomy, interface conventions, manufacturing details,\nprofessional tools, materials, units, labels, measurement marks, clothing, props,\narchitecture, or environment. Do not add lore that cannot be seen.\n6. Respect requested subject count. If the prompt names event types, two\ncharacters, or one primary subject, keep the number of primary figures to that\nminimum unless extra people are requested. Background crowds, spectators, or\nstaff should read as small silhouettes or graphic texture, not extra competing\nmain subjects.\n\nFor communication artifacts, silently make a content map before writing. Divide\nthe canvas in reading order into major slots: header/title, subtitle/tagline,\nhero visual, left panel, right sidebar, card row, icon group, diagram body,\nprocess path, chart area, formula box, exploded view, inset, specification area,\nswatch strip, instruction cards, footer, screen region, or background context.\nEach major slot should normally include at least three of these: position, visible\ntext or label, concrete visual subject, function or relationship, material/data\ntreatment, and hierarchy/style treatment. Do not use vague slot fillers such as\n\"icons,\" \"details,\" \"information,\" \"supporting graphics,\" or \"annotations\"\nwithout saying what they show.\n\nMake the artifact feel complete. If the prompt asks for a card, board, poster,\ninfographic, webpage, or product sheet, add a few plausible supporting elements\nthat belong to that artifact when they help completeness: subtitle, role/profile,\nabout note, quote, ratings, legend, color key, units, variable definitions,\ndimension labels, back/side view, material stack, use-case icons, footer tips,\nQR/logo placeholder, warning, or compact specification table. Keep these as short\nreadable on-image labels or one-line captions, not prose blocks.\n\nCorrespondence and legibility rules:\n- Multi-view outputs such as floor plan plus interior render, blueprint plus\nproduct render, map plus scene, or before/after panels need a shared inventory\nand coordinate frame. Reuse the same walls, openings, furniture/components,\nmaterials, labels, and relative positions in every panel. Name the render camera\norigin or viewing direction from the plan when useful, and do not invent major\nobjects that are absent from the paired view.\n- Dense flowcharts, medical diagrams, route maps, and process infographics should\nbe simplified into a few large numbered nodes, separated lanes, or a clean\nU-shaped loop. Arrows must be thick, directional, non-crossing, and attached to\nnamed start/end nodes. Prefer legible topology and large labels over many small\nleader lines, tiny arrows, or decorative clutter.\n\nContract affordances:\n- Scientific/medical/educational infographic: include named section headers;\nmain diagram with attached component labels; arrows with correct direction and\nstart/end nodes; legends or color keys; short functional captions; key-point\ncards with icon plus meaning; definitions and units; formula box with variable\ndefinitions; and process/system context such as body, lungs, vessels, lab setup,\nmolecule, device, or environment when implied.\n- Charts, graphs, dashboards, and data screens: include chart title when useful,\naxis labels, tick labels or scale endpoints, units, legend entries, colors, data\nmarks, selected states, and values or qualitative endpoints placed consistently\nwith the visual geometry. Even if the chart appears on a photographed stage\nscreen, the screen content still needs readable chart semantics.\n- Product/cultural design board: include title/subtitle/tagline; inspiration or\nuse-case cues; large hero render; motif-specific details; front/back/side or\nscale insets when useful; exploded layers; manufacturable joints, pins, clasps,\nfasteners, seams, ribs, holes, tolerances, or contact points; material stack;\nfinish behavior; dimension labels; palette swatches; specification and craft\nicons.\n- Character card/mascot sheet: include identity/title; name tag; role/profile or\nabout area; full-body readable proportions; attribute rows with icon, label, and\nbrief meaning; props tied to the role; material swatches or callouts; optional\nrating, quote, badge, instruction row, or contextual background so it reads as a\ndesigned card/poster rather than a plain character portrait.\n- UI/web/dashboard/data graphic: include real page/screen sections, navigation,\ncontrols, fields, buttons, cards, selected states, labels, values, icons, and\nintentional empty states only when requested.\n- Public poster/cover/packaging/display graphic: include typography hierarchy,\nheadline/subtitle/supporting copy, image slots, instruction cards, icons, badges,\nborders/rules, QR/barcode/logo placeholders if requested, palette, and intentional\nnegative space. When a poster features sports, products, or people, use one clear\nhero subject per requested category unless the prompt asks for a group.\n\nStyle comes after content. Choose clean isolation for icons/logos/cutouts and\ntechnical assets; layout-rich pages or boards for design communication; believable\nenvironment, lighting, lens, and depth for photographs. Replace abstract mood and\ngeneric adjectives with specific visible cues.\n\nFinal self-check: every input requirement is visible; every major slot has real\ncontent; required text/formulas/values are exact; labels attach to correct\nstructures; arrows and data geometry are coherent; body orientation is explicit relative to the camera and agrees with the preserved scene layout, source, target, depth, gaze, support, and motion; paired panels correspond; subject count has not grown by accident;\nworld knowledge appears as visible evidence; no important surface is blank.\n\nFinal output contract:\nUse the private thinking section to plan the caption. The final canvas aspect ratio is already fixed by the user and is given after the input; compose for it and do not choose another. After thinking, write only the caption: one fluent, detailed English paragraph that follows every rule above. No JSON, no labels, no Markdown, no lists, no alternatives, and no text before or after the caption.\n\ninput_text: {c}\nFinal canvas shape: width divided by height is {a:.3g} (below 1 is portrait, above 1 is landscape)\noutput_text:\n"
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 403,
      "type": "AUSBOSS_NODES_Callout",
      "pos": [
       560,
       80
      ],
      "size": [
       460,
       178
      ],
      "flags": {
       "pinned": true
      },
      "order": 1,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "text",
        "name": "text",
        "type": "STRING",
        "widget": {
         "name": "text"
        },
        "link": null
       }
      ],
      "outputs": [],
      "title": "Callout",
      "properties": {
       "Node name for S&R": "AUSBOSS_NODES_Callout",
       "cnr_id": "ausboss-nodes"
      },
      "widgets_values": [
       "For an edit, the writer looks at your picture and any extra pictures, with MiniMax's own edit instructions.\n###### They are counted, and the writer gets one <Picture N> block for each: only as many as you plugged in."
      ],
      "widgets_values_named": {
       "text": "For an edit, the writer looks at your picture and any extra pictures, with MiniMax's own edit instructions.\n###### They are counted, and the writer gets one <Picture N> block for each: only as many as you plugged in."
      },
      "color": "#07090a",
      "bgcolor": "#07090a"
     },
     {
      "id": 404,
      "type": "ImageScaleToTotalPixels",
      "pos": [
       560,
       476
      ],
      "size": [
       460,
       130
      ],
      "flags": {},
      "order": 6,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "image",
        "name": "image",
        "type": "IMAGE",
        "link": 1072
       },
       {
        "localized_name": "upscale_method",
        "name": "upscale_method",
        "type": "COMBO",
        "widget": {
         "name": "upscale_method"
        },
        "link": null
       },
       {
        "localized_name": "megapixels",
        "name": "megapixels",
        "type": "FLOAT",
        "widget": {
         "name": "megapixels"
        },
        "link": null
       },
       {
        "localized_name": "resolution_steps",
        "name": "resolution_steps",
        "type": "INT",
        "widget": {
         "name": "resolution_steps"
        },
        "link": null
       }
      ],
      "outputs": [
       {
        "localized_name": "IMAGE",
        "name": "IMAGE",
        "type": "IMAGE",
        "links": [
         1035
        ]
       }
      ],
      "title": "Scale Image - Your picture at 1 MP for the writer",
      "properties": {
       "Node name for S&R": "ImageScaleToTotalPixels",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "widgets_values": [
       "lanczos",
       1,
       1
      ],
      "widgets_values_named": {
       "upscale_method": "lanczos",
       "megapixels": 1,
       "resolution_steps": 1
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 405,
      "type": "BatchImagesNode",
      "pos": [
       560,
       676
      ],
      "size": [
       460,
       230
      ],
      "flags": {},
      "order": 7,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "image0",
        "name": "images.image0",
        "type": "IMAGE",
        "link": 1035
       },
       {
        "localized_name": "image1",
        "name": "images.image1",
        "shape": 7,
        "type": "IMAGE",
        "link": 1036
       },
       {
        "localized_name": "image2",
        "name": "images.image2",
        "shape": 7,
        "type": "IMAGE",
        "link": 1037
       },
       {
        "localized_name": "image3",
        "name": "images.image3",
        "shape": 7,
        "type": "IMAGE",
        "link": 1038
       },
       {
        "localized_name": "image4",
        "name": "images.image4",
        "shape": 7,
        "type": "IMAGE",
        "link": 1039
       },
       {
        "localized_name": "image5",
        "name": "images.image5",
        "shape": 7,
        "type": "IMAGE",
        "link": 1040
       },
       {
        "localized_name": "image6",
        "name": "images.image6",
        "shape": 7,
        "type": "IMAGE",
        "link": 1041
       },
       {
        "localized_name": "image7",
        "name": "images.image7",
        "shape": 7,
        "type": "IMAGE",
        "link": 1042
       },
       {
        "localized_name": "image8",
        "name": "images.image8",
        "shape": 7,
        "type": "IMAGE",
        "link": null
       }
      ],
      "outputs": [
       {
        "localized_name": "IMAGE",
        "name": "IMAGE",
        "type": "IMAGE",
        "links": [
         1043,
         1052
        ]
       }
      ],
      "title": "Batch Images - Your picture, then the extra pictures",
      "properties": {
       "Node name for S&R": "BatchImagesNode",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 406,
      "type": "GetImageSize",
      "pos": [
       560,
       976
      ],
      "size": [
       460,
       90
      ],
      "flags": {},
      "order": 8,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "image",
        "name": "image",
        "type": "IMAGE",
        "link": 1043
       }
      ],
      "outputs": [
       {
        "localized_name": "width",
        "name": "width",
        "type": "INT",
        "links": []
       },
       {
        "localized_name": "height",
        "name": "height",
        "type": "INT",
        "links": []
       },
       {
        "localized_name": "batch_size",
        "name": "batch_size",
        "type": "INT",
        "links": [
         1044,
         1141
        ]
       }
      ],
      "title": "Get Image Size - How many pictures",
      "properties": {
       "Node name for S&R": "GetImageSize",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 407,
      "type": "AUSBOSS_NODES_MathExpression",
      "pos": [
       560,
       1136
      ],
      "size": [
       460,
       134
      ],
      "flags": {},
      "order": 9,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "a",
        "name": "a",
        "shape": 7,
        "type": "FLOAT,INT",
        "link": 1044
       },
       {
        "localized_name": "b",
        "name": "b",
        "shape": 7,
        "type": "FLOAT,INT",
        "link": null
       },
       {
        "localized_name": "c",
        "name": "c",
        "shape": 7,
        "type": "FLOAT,INT",
        "link": null
       },
       {
        "localized_name": "expression",
        "name": "expression",
        "type": "STRING",
        "widget": {
         "name": "expression"
        },
        "link": null
       }
      ],
      "outputs": [
       {
        "localized_name": "float",
        "name": "float",
        "type": "FLOAT",
        "links": []
       },
       {
        "localized_name": "int",
        "name": "int",
        "type": "INT",
        "links": [
         1046
        ]
       }
      ],
      "title": "Math Expression - Letters for that many blocks",
      "properties": {
       "Node name for S&R": "AUSBOSS_NODES_MathExpression",
       "cnr_id": "ausboss-nodes",
       "ver": "2.15.0"
      },
      "widgets_values": [
       "a * 102"
      ],
      "widgets_values_named": {
       "expression": "a * 102"
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 408,
      "type": "AUSBOSS_NODES_Text",
      "pos": [
       560,
       1340
      ],
      "size": [
       460,
       168
      ],
      "flags": {},
      "order": 2,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "text",
        "name": "text",
        "type": "STRING",
        "widget": {
         "name": "text"
        },
        "link": null
       }
      ],
      "outputs": [
       {
        "localized_name": "text",
        "name": "text",
        "type": "STRING",
        "links": [
         1045
        ]
       }
      ],
      "title": "Text - One block per picture, cut to the count",
      "properties": {
       "Node name for S&R": "AUSBOSS_NODES_Text",
       "cnr_id": "ausboss-nodes",
       "ver": "2.15.0"
      },
      "widgets_values": [
       "Reference Media:\n- <Picture 1> [aspect_ratio unavailable]\n<|vision_start|><|image_pad|><|vision_end|>\nReference Media:\n- <Picture 2> [aspect_ratio unavailable]\n<|vision_start|><|image_pad|><|vision_end|>\nReference Media:\n- <Picture 3> [aspect_ratio unavailable]\n<|vision_start|><|image_pad|><|vision_end|>\nReference Media:\n- <Picture 4> [aspect_ratio unavailable]\n<|vision_start|><|image_pad|><|vision_end|>\nReference Media:\n- <Picture 5> [aspect_ratio unavailable]\n<|vision_start|><|image_pad|><|vision_end|>\nReference Media:\n- <Picture 6> [aspect_ratio unavailable]\n<|vision_start|><|image_pad|><|vision_end|>\nReference Media:\n- <Picture 7> [aspect_ratio unavailable]\n<|vision_start|><|image_pad|><|vision_end|>\nReference Media:\n- <Picture 8> [aspect_ratio unavailable]\n<|vision_start|><|image_pad|><|vision_end|>\n"
      ],
      "widgets_values_named": {
       "text": "Reference Media:\n- <Picture 1> [aspect_ratio unavailable]\n<|vision_start|><|image_pad|><|vision_end|>\nReference Media:\n- <Picture 2> [aspect_ratio unavailable]\n<|vision_start|><|image_pad|><|vision_end|>\nReference Media:\n- <Picture 3> [aspect_ratio unavailable]\n<|vision_start|><|image_pad|><|vision_end|>\nReference Media:\n- <Picture 4> [aspect_ratio unavailable]\n<|vision_start|><|image_pad|><|vision_end|>\nReference Media:\n- <Picture 5> [aspect_ratio unavailable]\n<|vision_start|><|image_pad|><|vision_end|>\nReference Media:\n- <Picture 6> [aspect_ratio unavailable]\n<|vision_start|><|image_pad|><|vision_end|>\nReference Media:\n- <Picture 7> [aspect_ratio unavailable]\n<|vision_start|><|image_pad|><|vision_end|>\nReference Media:\n- <Picture 8> [aspect_ratio unavailable]\n<|vision_start|><|image_pad|><|vision_end|>\n"
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 409,
      "type": "StringFormat",
      "pos": [
       560,
       1570
      ],
      "size": [
       460,
       190
      ],
      "flags": {},
      "order": 10,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "a",
        "name": "values.a",
        "shape": 7,
        "type": "*",
        "link": 1045
       },
       {
        "localized_name": "b",
        "name": "values.b",
        "shape": 7,
        "type": "*",
        "link": 1046
       },
       {
        "localized_name": "f_string",
        "name": "f_string",
        "type": "STRING",
        "widget": {
         "name": "f_string"
        },
        "link": null
       },
       {
        "localized_name": "c",
        "name": "values.c",
        "shape": 7,
        "type": "*",
        "link": 1047
       },
       {
        "localized_name": "d",
        "name": "values.d",
        "shape": 7,
        "type": "*",
        "link": 1141
       }
      ],
      "outputs": [
       {
        "localized_name": "STRING",
        "name": "STRING",
        "type": "STRING",
        "links": [
         1051
        ]
       }
      ],
      "title": "Format Text - MiniMax's edit instructions, the pictures, your words",
      "properties": {
       "Node name for S&R": "StringFormat",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "widgets_values": [
       "<|im_start|>user\nYou are an expert at enhancing a short image-editing instruction into a rich, vivid, reference-conditioned description of the intended finished target image.\n\n## What you are given\n- Input image(s), labeled sequentially starting from <Picture 1>. These are the user's source and reference images.\n- One short editing instruction. It may be terse, vague, informal, or phrased as a desired result rather than an imperative. The final text part supplies it as User Editing Instruction (JSON string).\n- User Aspect Ratio Selection: any concrete positive-integer W:H ratio, or adaptive, supplied in the final text part.\n- Each input image is immediately preceded by a Reference Media text part containing its <Picture N> label and aspect_ratio W:H. The caller has already reduced the image's original display width and height to their exact lowest integer ratio, after EXIF orientation and before preview resizing or padding. No pixel dimensions are supplied in this metadata. The ratio applies only to the immediately following image. The supplied aspect_ratio is the reference image's exact ratio, not necessarily the final target ratio. Use it as given; do not estimate the source ratio from the preview. Determine the final target ratio using the rules below. If the original dimensions are unknown, the metadata says aspect_ratio unavailable.\n- There is no target image. Construct the intended target from the visible source evidence and the instruction; never pretend to have observed a hidden result.\n\n## Response format\nReturn exactly one valid JSON object with exactly these two keys, both with string values:\n{{\"expanded_caption\":\"COMPLETE_DESCRIPTION\",\"target_aspect_ratio\":\"W:H\"}}\nResolve target_aspect_ratio using the rules below. Put the complete description in expanded_caption as one continuous paragraph with no actual line breaks. All narration, language, Subject, literal-text, and three-part rules below apply to expanded_caption, not to the outer JSON syntax or target_aspect_ratio. Use valid JSON escaping for quotes and backslashes without changing the decoded literal content. Do not output reasoning, a code fence, extra keys, or text outside this JSON object.\n\n## Target aspect ratio\nDetermine target_aspect_ratio before writing expanded_caption. Treat it as a constraint on the intended target image, adapting framing and composition while respecting the requested edit and reference-preservation requirements. Describe any necessary changes under the changed/new-content rules. User Aspect Ratio Selection is part of the user's request. A concrete selection governs conflicting canvas wording in the editing instruction; continue to honor all compatible content constraints. Do not mechanically copy reference metadata or routing explanations into expanded_caption, and do not treat metadata as lettering inside an image.\n\nReading aspect_ratio metadata alone must not create a <Subject N> or change a preservation relationship. However, when source framing, aspect ratio, or composition is independently preserved, changed, or borrowed, identify that source-derived scope under the rules below. If realizing the selected canvas actually changes framing, visible content, placement, or layout within a Subject's defined scope, reflect that change in its relationship and describe only the changed/new consequences in Part 3. Do not call the entire source composition fully preserved while changing it; do not automatically mark every Subject partially preserved merely because the canvas ratio differs. Limit any completion or reframing to what the user's edit and selected canvas require; preserve unrelated content.\n\nRead User Aspect Ratio Selection from the final input part.\n\nSpecified ratio:\nIf a concrete ratio is supplied, copy that exact string to target_aspect_ratio. Any positive-integer W:H ratio is allowed; it is not limited to a preset list. Neither the editing instruction nor a reference image may override it.\n\nAdaptive mode:\nOnly when the selection is adaptive, determine the aspect ratio of the intended finished target image, which may differ from the main reference image. Apply these rules in order:\n\n1. Follow an explicit final target ratio or target dimensions in the editing instruction. Use the requested final geometry rather than source or earlier geometry. Exact numeric geometry takes precedence over generic orientation. When only a final orientation is specified, use 21:9 for ultra-wide, 16:9 for landscape, 1:1 for square, and 9:16 for portrait.\n\n2. Otherwise, select the main reference that supplies the edited base canvas or overall target composition and has a usable aspect_ratio. Prioritize an explicitly designated canvas/composition reference, then the edited base, then an overall composition anchor. Break ties by Picture order and skip missing, invalid, or unavailable ratios. Images used only for identity, objects, color, or style do not determine the canvas.\n\n   Use the main reference's aspect_ratio as the starting ratio. Copy it exactly unless the requested edit requires a different canvas shape. Proportional resizing or changing a subject's size alone does not require changing the ratio.\n\n   When expansion or cropping changes the canvas shape, determine the ratio of the resulting target. If the available information unambiguously determines it, calculate it exactly and reduce it. For relative changes:\n   target_ratio = reference_ratio × width_scale / height_scale,\n   where both scales are relative to the original canvas.\n\n   If the requested shape change does not determine a unique ratio, choose one that fits the intended result while preserving unrelated composition. Adjust it only as needed for the requested edit, not merely for aesthetics.\n\n3. If neither an explicit target requirement nor a usable main reference determines the ratio, output 16:9.\n\nApply these rules to the whole target canvas. Grid row/column counts, individual panels, objects inside the image, and literal text are not whole-canvas ratio requests. A portrait subject or wide-angle lens alone is not a target-orientation request. Do not use a reference board's ratio as the ratio of one panel.\n\nSerialize target_aspect_ratio as two positive integers in W:H form, with no spaces; never output adaptive. Preserve concrete user selections, explicit positive-integer target ratios in the instruction, and unchanged reference ratios exactly. Convert other explicit numeric ratios or target dimensions to their exact reduced integer ratio; reduce newly calculated or chosen ratios to their lowest integer form. Do not snap to preset ratios or clamp to a supported range.\n\nLater descriptive additions must not change the chosen ratio. Pixel-size resolution, 32 alignment, and downstream size fallback are outside this task.\n\n## Interpret the User's Intent Flexibly\nRead the instruction together with the input images and any context it supplies to understand the result the user actually wants. Terse wording, colloquial phrasing, shorthand, and requests such as 'complete this' may require reasonable interpretation and substantive completion. Do not mechanically echo the request, insist that the user prewrite every detail, or treat an illustrative example or category list as the only supported case.\n\nChoose the interpretation best supported by the visible evidence, the request's purpose, and ordinary context. Supply the visual or textual details needed to make that intended result complete and coherent, including directly supporting consequences. Be flexible in how you realize the request, but do not override explicit constraints, change specified literal wording without permission, invent source facts, or expand unrelated content. Keep the boundaries between preserved source content, requested changes, newly authored text, and actual image lettering clear.\n\n## Source-Grounded Content and New Target Content\nTreat source-derived content and instruction-introduced content differently. Source facts describe what is actually visible in the inputs; target changes describe the requested result. Source fidelity does not prohibit an explicitly requested transformation. Preservation is the default only outside requested changes and their necessary consequences.\n\nA) Descriptions of source facts and properties retained in the target must be strictly faithful. Ground identity, facial features, body shape, clothing, objects, colors, materials, text, data, count, pose, layout, scene, camera, lighting, and spatial relationships in the specific input picture where they are visible. Do not invent a source attribute, accessory, logo, word, number, object, or relationship. If something is genuinely illegible or ambiguous, describe that fact neutrally rather than guessing. When an unfamiliar source element lacks a reliable name, identify it using its location and distinctive visible cues rather than guessing its identity or function.\n\nB) Content newly introduced or substantially transformed by the instruction should still be imagined richly, concretely, and coherently. Within the changed or new scope, supply plausible visual specifics that make the requested result recognizable and renderable: materials, shapes, arrangement, depth, perspective, lighting direction, shadows, reflections, contact, overlap, occlusion, atmosphere, and surrounding details that naturally belong to the requested scene. A newly requested background, environment, design, or global style may be described as a complete vivid visual scope because that scope itself is new or changed. Do not make the answer skeletal merely to satisfy a delta format.\n\nWhenever the intended target needs visual content not already determined by a preserved Subject or an explicitly referenced property, reasonably imagine and concretely describe that new content. This applies to any new scene, entity, action, design, composition, or newly visible region, not only viewpoint changes. Treat unspecified details within that new scope as room for coherent creation, not a reason to leave it vague. Keep the invention consistent with the user's intent and remaining reference constraints; do not redesign preserved Subjects or alter properties that the request requires you to match. If a source Subject gains newly visible parts, keep its identity and Subject number; describe the plausible completion in Part 3, never as an observed source fact.\n\nCreative latitude stays inside the requested or directly supporting scope. Do not redesign unrelated source content or import incidental attributes from a donor picture merely to enrich the prose. Ground factual claims in the available reference and instruction; do not invent unsupported specifics and present them as real. Explicitly requested fictional names or illustrative sample data may be authored as fictional or illustrative target content, never as recovered source facts or verified real-world information. Omit unsupported specifics, not the requested writing itself, and do not add unrelated text beyond the requested scope.\n\nComplete every textual deliverable the user asks you to write, supplement, finish, expand, rewrite, or otherwise provide. If exact wording is not supplied, compose the complete final wording yourself; missing wording is not a reason to leave the content unspecified. This applies to any requested textual deliverable, not limited to particular genres or to text inside an image. Requested wording is the deliverable itself, not forbidden restatement of the user's instruction. Do not delegate completion to the downstream model.\n\n## Output contract\nWrite expanded_caption as one continuous plain-text paragraph. Do not add structural headings, labels, bullets, markdown, preamble, reasoning, notes, or meta-commentary to the narration. Literal content may contain such words or symbols when they belong to source text or requested writing. The paragraph has three logical parts, in this order:\n1. natural definitions of the relevant source-derived <Subject N> elements;\n2. one target overview followed by a separate preservation/change relationship clause for every defined Subject;\n3. Changed and Newly Introduced Target Details Only, together with the complete wording of any textual deliverable the user asks you to provide.\n\nDetermine each requested text's destination from the instruction. If it belongs in the image, include its literal wording and describe placement as needed. If it is requested only as a textual response, provide it as text alongside the visual delta; do not turn it into a sign, caption, label, or other image element. Quoting a textual deliverable does not mean that it should be rendered in the image.\n\nComplete all Subject definitions before the target overview. Do not expose structural commands such as 'Define', 'Let', 'Identify', 'Section 1', 'Section 2', or 'Section 3' as narration. Write natural element-first definitions, for example, 'The woman in a red coat in <Picture 1> is <Subject 1>.' Refer to the intended visual result only as 'the target image'. Narrate the result, not the user's instruction or an imperative such as 'generate' or 'please create'; this does not prohibit exact supplied text or requested authored text from containing those words. If no source-derived element is retained or referenced, omit Subject definitions and relationships and begin with the target overview; do not invent a Subject to fill the structure.\n\n## Part 1: Natural Reference Element Identification\nAssign <Subject N> only to source-derived elements that remain visible or traceable in the intended target, or that provide a visible transferred or borrowed property. Every definition must name its source with an explicit <Picture N> and concise visible cues sufficient to uniquely identify the referenced object, region, or property. Add detail only to resolve ambiguity or clarify the reference/edit scope, not to restate its full appearance. Keep the full text/data transcription required below; concise identification must not omit readable content. List source pictures individually; never use ranges or vague phrases such as 'the reference images', 'the previous images', 'all inputs', or 'these pictures'. Use one number for the same convincingly identified person or element across pictures, and keep clearly different identities separate.\n\nWhen only a source property is needed, define that property rather than the entire source object; use the source object or region to locate the property. Give the source object its own Subject only if it is independently used in the target.\n\nChoose Subject granularity by relationship scope, not by a quota. An element that is independently moved, recolored, restyled, reposed, recounted, replaced while remaining traceable, or used as a donor should be independently addressable. Split a part, pose, layout, palette, lighting setup, text block, garment, accessory, held object, or background only when it needs its own preservation/change judgment. Do not mechanically split an ordinary person into face, hair, hands, every garment, and every accessory when those parts move together and have no independent role. Do not force one Subject per picture, and do not define incidental objects merely to make the inventory longer.\n\nJudge preservation over the scope actually defined. A parent Subject cannot be fully preserved if a changed child remains inside its scope, even when the child has a separate number. A genuinely unchanged narrower region or identity may be defined explicitly, but do not call the whole person, object, or scene unchanged while editing part of it. Do not transcribe the same source field again through an overlapping parent or child Subject.\n\nThe identifiable types include the following when independently relevant:\n- Entity type: a person, animal, object, creature, garment, accessory, prop, vehicle, furniture item, or other concrete entity.\n- Scene/background type: a room, landscape, street, stage, tabletop, architecture, or other environment preserved, changed, or used by the target.\n- Attribute/style type: a source-derived texture, material language, visual medium, design style, typography, border treatment, or other transferable visible quality.\n- Shared-element type: one convincingly identical visual element shown across several pictures; define it once and list every source picture.\n- Multi-form reference type: one source element used in several intended target forms, such as a physical figure, package artwork, screen render, or line drawing; define it once and distinguish the forms later.\n- Data-bearing chart/table/plot/document type: do not collapse readable data into one undifferentiated Subject. Identify the source-derived series, bars, lines, slices, columns, labeled groups, axes, titles, legends, headers, fields, and readable cells needed to preserve or edit the visible data faithfully.\n- Dense/multi-line text type: identify every clearly readable source-derived line or field in a document, slide, poster, menu, search interface, caption block, subtitle group, or UI region. Either define lines separately or define one coherent block while transcribing its lines literally and in order; do not replace readable content with a vague 'text' Subject.\n- Text/watermark type: identify an isolated watermark, brand text, subtitle, label, sign, logo text, or other short readable element, and state its clearly readable literal content once in Part 1. Later use its Subject token unless that text is intended to change.\n- Part/region type: hair, a sleeve, a wheel, a screen area, a poster corner, a body region, a panel, or another local part that needs its own relationship judgment.\n- Spatial-layout/composition type: framing, aspect ratio, grid or split-screen geometry, panel order, placement scheme, image-text hierarchy, or whitespace when the arrangement itself is preserved, changed, or borrowed.\n- Color/palette/lighting type: a source color, palette, color grade, illumination direction, warmth, contrast, shadow design, or lighting setup when color or light itself is independently referenced. Locate the specific source object or region; for example, 'The color of the cup's body in <Picture 1> is <Subject 1>.'\n- Pose/action type: a source-derived posture, gesture, gaze, body orientation, action, or interaction that is preserved, changed, or transferred.\n- Logo/symbol/icon type: a graphical emblem, symbol, UI icon, or pictographic mark; handle any readable words under the text rules.\n- Embedded/thumbnail type: a complete or cropped source picture embedded in the target as a panel or thumbnail.\n- Partial-crop type: a target crop or zoom whose visible content comes from a specific region of a source picture.\n\nThese fifteen types form the complete supported taxonomy, not a per-example checklist or quota. Use every applicable type supported by the input images and the instruction when it needs an independent relationship judgment, but never create an inapplicable Subject merely to instantiate a type. The more specific part/layout/light/pose/icon types exist to prevent an independently changed unit from being buried inside an oversized Subject, not to force mechanical over-splitting.\n\nBrand-new target-only content has no <Subject N>. A source element explicitly removed or wholly replaced and not otherwise reused also has no Subject number; if necessary, identify it once with its <Picture N> in the target overview, then describe the positive completed region in Part 3. Editing or translating a source text field is a traceable change to that field, not removal of the entire element: retain its Subject when needed to locate the edit, record its original wording in Part 1, and give its full resulting wording in Part 3. Every defined Subject must receive a relationship later and must not be defined merely to say that it is absent, removed, unused, or forgotten.\n\nReadable source text and data require special care. For every defined source-derived chart, table, document, UI, text block, or isolated text element, transcribe exactly once in Part 1 every clearly readable source-state line, character, label, value, axis title, axis tick, legend entry, table header, field, and readable cell, including a source literal that the instruction intends to change. Preserve the original language, script, grouping, and reading order. Do not omit a clearly readable value merely because it is unchanged or peripheral to the main edit. Never guess hidden, cropped-away, or illegible source text.\n\nFor grouped or clustered bars, radar charts, multi-panel plots, and many-point plots, enumerate every clearly readable value rather than summarizing the display. Check counts only when the chart's visible semantics require them: grouped bars against the legend, radar values against the axes, and mutually exclusive percentage parts of a complete whole against approximately 100 percent. Do not impose those assumptions on unrelated chart types or incomplete, overlapping, or multi-select categories. If the source itself contains a genuine inconsistency, missing series, or illegible value, record only the visible evidence or the uncertainty in Part 1; never silently normalize or repair the source record. An explicitly requested correction belongs in the target changes and must use supplied or derivable values, not guessed real data. Exhaustive transcription does not require one Subject per value or line: a coherent series, row, field group, or text block may remain one Subject when its literals are fully enumerated and it does not need separate relationship judgments. These checks apply only where the relevant marks and values are actually readable, and they do not require turning an ordinary non-data image into a chart inventory.\n\n## Part 2: Target Overview and Reference Relationships\nAfter the definitions, write one natural sentence beginning with 'The target image'. Foreground the primary intended changed or new state and describe the overall result using the defined Subject tokens where appropriate. Target-only new content remains unnumbered. The overview may summarize several requested changes, but it should remain an overview rather than a second detailed caption.\n\nThen give every defined Subject exactly one whole-subject relationship in its own independent clause. Give each Subject its own relationship clause; do not combine several Subjects into one relationship statement, even when they share the same degree. Keep the prose natural without imposing a fixed sentence length, a fixed Subject count, or a target frequency for any relationship type. Use these four relationships:\n\n- Fully preserved: use only when the whole Subject is unchanged in identity, appearance, count, pose or state, position, topology, and intended target role. Write only the short standalone clause '<Subject N> is fully preserved.' Give each fully-preserved Subject its own sentence; never merge multiple Subjects into one fully-preserved clause. Do not append a checklist, explanation, source citation, or visual description to a fully-preserved clause.\n- Partially preserved: use when the Subject remains traceable but at least one relevant property changes. State the retained categories needed to anchor identity and the changed categories, including a concrete before-to-after relationship when the source and instruction determine it. Do not exhaustively re-render retained appearance.\n- Attribute transfer: use when a specific source-derived property is directly reused or matched on a target carrier. Name the source Subject, the transferred property, and the target carrier. Transfer only the assigned property, not unrelated donor attributes.\n- Weak reference: use when the source guides a general style, palette, atmosphere, composition principle, or similar quality without requiring a specific property to be matched exactly. Name the borrowed quality and make clear what the new design may vary. Choose by the requested use of the reference, not merely by whether the property is called a color, style, or palette.\n\nAttribute-transfer example: the user wants the coat in <Picture 2> to match the cup's body color in <Picture 1>. Part 1 defines that color as <Subject 1> and the coat as <Subject 2>. The relationship clauses can be '<Subject 1> supplies the exact color transferred to <Subject 2>. <Subject 2> is partially preserved; its color changes while its cut and material remain.' The cup's shape and material are not transferred.\n\nWeak-reference example: the user wants a new abstract composition inspired by a landscape's palette, without copying it exactly. Part 1 defines the landscape's palette as <Subject 1>. The relationship clause can be '<Subject 1> serves as a weak palette reference for the new abstract composition; related colors are redistributed among geometric blocks, with freely adapted proportions and placement.' The new composition has no Subject number. These examples illustrate the distinction, not a restriction of either relationship to color tasks.\n\nFor a Subject used in several target forms or instances, judge the intended uses together. A mix of unchanged and transformed or additional instances is partially preserved overall; distinguish those uses within that Subject's own relationship statement. Do not call the entire Subject fully preserved just because one instance is unchanged. If only a property is borrowed, use the appropriate transfer or weak-reference relationship. If a donor object remains unchanged while its color or another property is transferred elsewhere, define that property separately so the object's preservation and the property's transfer have distinct scopes.\n\nThe relationship must agree with the described target. If a requested change or its necessary integration changes a Subject's position, orientation, count, topology, role, pose, expression, clothing, color, material, lighting, state, or other property within its defined scope, the whole Subject is not fully preserved. If later changed-detail prose genuinely needs to describe a change to a Subject, classify that Subject as partially preserved instead. A source carrier may remain fully preserved while one of its properties is transferred outward; do not mark the carrier partial unless the carrier itself changes. Conversely, new shadows, reflections, occlusion, or relighting on the carrier count as changes where they affect its defined appearance; do not hide them behind a fully-preserved judgment.\n\nFor partially preserved chart, table, document, UI, and text-block Subjects, state which categories are retained and which change. For a fully preserved chart or text Subject, use only the standard fully-preserved sentence, not an extra checklist. Keep relationship statements compact: use Part 1 as the source-side record and leave complete changed or newly authored wording and values for Part 3. Do not duplicate old literals in a before-to-after phrase or new literals in both the relationship and detail blocks.\n\nTreat unmentioned source-derived content as stable by default, but do not let that conservative baseline suppress the requested imagination. The changed/new target scope may still be rich. Direct semantic, spatial, physical, compositional, environmental, camera, and lighting consequences of the requested change are part of the changed scope and may be described.\n\n## Part 3: Changed and Newly Introduced Target Details Only\nThis final logical block is a richly rendered visual delta, not a standalone T2I re-caption of the whole target image. Also supply the requested textual deliverables. For visual description, cover only:\n- the concrete final appearance of source-derived attributes that actually change;\n- target-only people, objects, text regions, environments, panels, charts, layouts, effects, or other content introduced by the instruction;\n- the newly exposed or positively completed surface or space left by a removal, or the positive new occupant of a replacement;\n- plausible supporting details inside the changed/new scope that make it visually recognizable and coherent;\n- direct integration consequences involving scale, orientation, contact, overlap, occlusion, perspective, depth, shadow, reflection, lighting, material response, anatomy, support, camera framing, or composition.\n\nThis changed/new-only rule does not impose terse writing. A newly introduced restaurant, fantasy landscape, product design, comic panel, interface, lighting scheme, or global style may be described vividly and comprehensively because that entire requested scope is new or changed. Likewise, a transformed garment, pose, object, chart, or layout may receive enough concrete detail to be rendered reliably. Be imaginative where the instruction creates room for imagination; simply keep that imagination inside the changed/new scope instead of using it to re-caption preserved source content.\n\nStrict non-repetition rules:\n- After a Subject is classified as fully preserved, never visually describe that Subject again. A later sentence may use only the bare <Subject N> token as the minimum spatial or interaction anchor needed to locate changed or new content, for example, 'A new luminous pearl rests beside <Subject 2>.' Do not attach an adjective, color, material, shape, part, pose, position, role, or other appearance detail to that preserved Subject.\n- For a partially preserved Subject, Part 3 describes only its changed attributes and their concrete intended final appearance. Do not repeat the detailed appearance of retained identity, clothing, body, object, scene, or layout attributes already grounded in Part 1 or named as retained in Part 2.\n- For attribute transfer or weak reference, describe only how the transferred or borrowed quality is realized on the intended target carrier. Do not import or re-render unrelated donor properties.\n- Do not repeat fully preserved source text or data as visual description; use the Part 1 record and bare <Subject N> references. If the user separately requests a complete transcription or quotation as a textual deliverable, write that deliverable in full even when it repeats source wording; this is required output content, not redundant visual description.\n- Write every changed or target-only text/data field and requested textual deliverable in full. Use exact supplied or deterministically derived results; preserve every supplied character within each line, including punctuation, capitalization, order, and language, unless the user explicitly requests translation or another textual transformation, in which case write its actual result. If a line is edited, write the complete resulting line, not merely the changed word or numeric difference; do not recopy separate unaffected lines as visual description. Never substitute a <Subject N> token, a description or writing instruction, placeholders, omitted middles, 'etc.', 'and so on', or ellipses for requested content; preserve an ellipsis that belongs to supplied literal text.\n- Do not describe an unchanged background, person, object, pose, camera, light, style, or image-quality property merely to make the paragraph resemble a complete T2I caption.\n- If no changed or newly introduced detail remains beyond the overview and relationship statements and no requested textual deliverable remains to be supplied, stop. Never pad the output with preserved appearance.\n\nFor example, for a reference showing a lakeside path and hills, a request to write a scenic introduction requires actual copy such as '沿着湖畔步道缓缓前行，欣赏湖水与远山相映的景色，在悠闲漫步中感受旅途的宁静。', not 'a paragraph introducing the attraction'. This illustrates completion and is not a restriction to travel copy or permission to reuse these words in unrelated tasks.\n\nCorrect pattern: 'The black horse in <Picture 1> is <Subject 1>. The target image shows <Subject 1> beside a newly added luminous pearl. <Subject 1> is fully preserved. The pearl emits a cool glow onto the ground beside <Subject 1>.' The final sentence describes the new pearl and its integration while using the bare Subject only as an anchor.\n\nIncorrect pattern: '<Subject 1> is fully preserved. <Subject 1> is a muscular black horse with segmented dark armor and a long mane.' The second sentence is a T2I-style re-caption of preserved content and must be omitted.\n\nCorrect partial pattern: '<Subject 1> is partially preserved; its identity and body armor remain, while its bare head changes to an ornate helmet. The new helmet has a pointed silver crest, a red plume, and shadows that follow the existing head orientation.' Do not subsequently re-describe the retained face, body, or armor.\n\nFor exact reference-color or palette matching, use the defined color or palette <Subject N> to specify where it is applied on the target. The visible reference, not an approximate color name, determines the color; do not replace it with inferred color names or guessed RGB/HEX values. Honor explicit user-supplied colors or values, and do not transfer unrelated donor material or lighting unless requested.\n\nWhen describing a grid, multi-panel image, storyboard, table-like arrangement, or other row-and-column layout, state the row count and column count explicitly, either in words such as '2 rows and 3 columns' or with labeled multiplication notation such as '2 x 3 (rows x columns)' or '3 x 2 (columns x rows)'. Multiplication notation is allowed; specify which number denotes rows and which denotes columns. Do not use an unlabeled '2 x 3' or '2×3' alone. When relevant, describe the cell contents in top-to-bottom row order and left-to-right column order, and name which row and column contains each changed or newly introduced element.\n\nFor uneven rows, merged cells, or a freeform composition, describe the actual arrangement directly, such as 'the top row has three panels and the bottom row has two', with positions and spans as needed; do not impose a rectangular grid that is not intended. If shorthand in the instruction is ambiguous, use the reference and context to interpret the intended arrangement and express the chosen row/column meaning explicitly. Record relevant unchanged source layout in the Subject definitions without repeating it after a fully-preserved judgment; Part 3 describes changed or new layout only. This wording rule does not authorize altering supplied literal text containing dimension notation.\n\n## Final language and self-check\nWrite all descriptive and relationship prose in fluent English, regardless of the language of the user instruction. For newly authored requested copy, use the user's requested language, or otherwise the language of the user's request. Keep literal text and completed requested textual deliverables in single quotes to distinguish them from the surrounding English visual description and relationship prose, preserving apostrophes and other punctuation inside the literal text. Represent multi-line literal content inline as separate quoted lines in reading order, describing the intended line breaks or layout in prose rather than inserting actual newline characters into the response.\n\nUse objective, concrete visual language. Richness should come from precise changed/new appearance and coherent integration, not from repetition. Describe visible expressions rather than asserting unobservable thoughts or feelings. Preserve expressions outside the changed scope; expressions for newly introduced or transformed people may be reasonably imagined within the request. Write reference markers <Picture N> and <Subject N> directly without backticks; do not rewrite a literal text string merely because it contains similar words or symbols.\n\nBefore answering, verify:\n- every source visual fact is visible in a named <Picture N>, and every intended change is supported by the editing instruction or User Aspect Ratio Selection and their necessary consequences; reference aspect ratios come only from the supplied metadata;\n- the output still imagines instruction-introduced content richly enough to be recognizable and renderable;\n- every Subject definition is concise but unambiguous about its source and reference scope, without unnecessary appearance detail or missing required text/data;\n- every Subject is naturally defined before use and has its own independent relationship clause, never merged with another Subject;\n- every fully preserved Subject has its own exact '<Subject N> is fully preserved.' sentence and receives no later visual re-description;\n- no fully preserved parent contains an edited child, and mixed target forms or integration effects are reflected in the relationship;\n- every partially preserved Subject repeats no detailed retained appearance in Part 3;\n- donor attributes do not leak beyond the property requested;\n- target-only and removed-only content has no Subject number;\n- every applicable reference-element type is supported without treating the taxonomy as a per-example quota;\n- source text/data is recorded once in Part 1 without guessing, repairing, or translating the source record;\n- all requested target text and textual deliverables are complete and literal, with source repetition only for an explicitly requested transcription or quotation;\n- each textual deliverable has the requested image or text-only destination;\n- Part 3's visual description contains changed/new content and direct integration only, with no whole-frame T2I padding;\n- all non-literal descriptive and relationship prose is English, while quoted source, user-specified, or newly authored requested text uses its required language and script;\n- any grid layout described makes the row count and column count unambiguous, either in words or with explicitly labeled multiplication notation, with positions or uneven-row structure clarified where needed;\n- expanded_caption is one fluent, complete paragraph with no structural meta-language in the narration; multi-line literals retain their wording, reading order, and intended line boundaries through inline quoted lines;\n- target_aspect_ratio copies any concrete user selection exactly; in adaptive mode, it preserves the main reference ratio when no canvas-shape change is required and reflects any requested expansion or cropping; expanded_caption and its preservation relationships agree with the final canvas;\n- the final answer is a valid JSON object containing only the two string fields target_aspect_ratio and expanded_caption.\n\nOutput only the required two-field JSON object.\n\nReference Image Count:\n{d} input image(s), labeled <Picture 1> through <Picture {d}>.\n\n{a:.{b}}\nUser Editing Instruction (JSON string):\n\"{c}\"\n\nUser Aspect Ratio Selection:\nadaptive\n\nApply the instructions above to the supplied inputs and reference images. Output override: the canvas is already fixed. Write only the expanded_caption text itself: one fluent English paragraph. No JSON, no keys, no braces, no Markdown, nothing before or after the paragraph.<|im_end|>\n<|im_start|>assistant\n<think>\n\n</think>\n\n"
      ],
      "widgets_values_named": {
       "f_string": "<|im_start|>user\nYou are an expert at enhancing a short image-editing instruction into a rich, vivid, reference-conditioned description of the intended finished target image.\n\n## What you are given\n- Input image(s), labeled sequentially starting from <Picture 1>. These are the user's source and reference images.\n- One short editing instruction. It may be terse, vague, informal, or phrased as a desired result rather than an imperative. The final text part supplies it as User Editing Instruction (JSON string).\n- User Aspect Ratio Selection: any concrete positive-integer W:H ratio, or adaptive, supplied in the final text part.\n- Each input image is immediately preceded by a Reference Media text part containing its <Picture N> label and aspect_ratio W:H. The caller has already reduced the image's original display width and height to their exact lowest integer ratio, after EXIF orientation and before preview resizing or padding. No pixel dimensions are supplied in this metadata. The ratio applies only to the immediately following image. The supplied aspect_ratio is the reference image's exact ratio, not necessarily the final target ratio. Use it as given; do not estimate the source ratio from the preview. Determine the final target ratio using the rules below. If the original dimensions are unknown, the metadata says aspect_ratio unavailable.\n- There is no target image. Construct the intended target from the visible source evidence and the instruction; never pretend to have observed a hidden result.\n\n## Response format\nReturn exactly one valid JSON object with exactly these two keys, both with string values:\n{{\"expanded_caption\":\"COMPLETE_DESCRIPTION\",\"target_aspect_ratio\":\"W:H\"}}\nResolve target_aspect_ratio using the rules below. Put the complete description in expanded_caption as one continuous paragraph with no actual line breaks. All narration, language, Subject, literal-text, and three-part rules below apply to expanded_caption, not to the outer JSON syntax or target_aspect_ratio. Use valid JSON escaping for quotes and backslashes without changing the decoded literal content. Do not output reasoning, a code fence, extra keys, or text outside this JSON object.\n\n## Target aspect ratio\nDetermine target_aspect_ratio before writing expanded_caption. Treat it as a constraint on the intended target image, adapting framing and composition while respecting the requested edit and reference-preservation requirements. Describe any necessary changes under the changed/new-content rules. User Aspect Ratio Selection is part of the user's request. A concrete selection governs conflicting canvas wording in the editing instruction; continue to honor all compatible content constraints. Do not mechanically copy reference metadata or routing explanations into expanded_caption, and do not treat metadata as lettering inside an image.\n\nReading aspect_ratio metadata alone must not create a <Subject N> or change a preservation relationship. However, when source framing, aspect ratio, or composition is independently preserved, changed, or borrowed, identify that source-derived scope under the rules below. If realizing the selected canvas actually changes framing, visible content, placement, or layout within a Subject's defined scope, reflect that change in its relationship and describe only the changed/new consequences in Part 3. Do not call the entire source composition fully preserved while changing it; do not automatically mark every Subject partially preserved merely because the canvas ratio differs. Limit any completion or reframing to what the user's edit and selected canvas require; preserve unrelated content.\n\nRead User Aspect Ratio Selection from the final input part.\n\nSpecified ratio:\nIf a concrete ratio is supplied, copy that exact string to target_aspect_ratio. Any positive-integer W:H ratio is allowed; it is not limited to a preset list. Neither the editing instruction nor a reference image may override it.\n\nAdaptive mode:\nOnly when the selection is adaptive, determine the aspect ratio of the intended finished target image, which may differ from the main reference image. Apply these rules in order:\n\n1. Follow an explicit final target ratio or target dimensions in the editing instruction. Use the requested final geometry rather than source or earlier geometry. Exact numeric geometry takes precedence over generic orientation. When only a final orientation is specified, use 21:9 for ultra-wide, 16:9 for landscape, 1:1 for square, and 9:16 for portrait.\n\n2. Otherwise, select the main reference that supplies the edited base canvas or overall target composition and has a usable aspect_ratio. Prioritize an explicitly designated canvas/composition reference, then the edited base, then an overall composition anchor. Break ties by Picture order and skip missing, invalid, or unavailable ratios. Images used only for identity, objects, color, or style do not determine the canvas.\n\n   Use the main reference's aspect_ratio as the starting ratio. Copy it exactly unless the requested edit requires a different canvas shape. Proportional resizing or changing a subject's size alone does not require changing the ratio.\n\n   When expansion or cropping changes the canvas shape, determine the ratio of the resulting target. If the available information unambiguously determines it, calculate it exactly and reduce it. For relative changes:\n   target_ratio = reference_ratio × width_scale / height_scale,\n   where both scales are relative to the original canvas.\n\n   If the requested shape change does not determine a unique ratio, choose one that fits the intended result while preserving unrelated composition. Adjust it only as needed for the requested edit, not merely for aesthetics.\n\n3. If neither an explicit target requirement nor a usable main reference determines the ratio, output 16:9.\n\nApply these rules to the whole target canvas. Grid row/column counts, individual panels, objects inside the image, and literal text are not whole-canvas ratio requests. A portrait subject or wide-angle lens alone is not a target-orientation request. Do not use a reference board's ratio as the ratio of one panel.\n\nSerialize target_aspect_ratio as two positive integers in W:H form, with no spaces; never output adaptive. Preserve concrete user selections, explicit positive-integer target ratios in the instruction, and unchanged reference ratios exactly. Convert other explicit numeric ratios or target dimensions to their exact reduced integer ratio; reduce newly calculated or chosen ratios to their lowest integer form. Do not snap to preset ratios or clamp to a supported range.\n\nLater descriptive additions must not change the chosen ratio. Pixel-size resolution, 32 alignment, and downstream size fallback are outside this task.\n\n## Interpret the User's Intent Flexibly\nRead the instruction together with the input images and any context it supplies to understand the result the user actually wants. Terse wording, colloquial phrasing, shorthand, and requests such as 'complete this' may require reasonable interpretation and substantive completion. Do not mechanically echo the request, insist that the user prewrite every detail, or treat an illustrative example or category list as the only supported case.\n\nChoose the interpretation best supported by the visible evidence, the request's purpose, and ordinary context. Supply the visual or textual details needed to make that intended result complete and coherent, including directly supporting consequences. Be flexible in how you realize the request, but do not override explicit constraints, change specified literal wording without permission, invent source facts, or expand unrelated content. Keep the boundaries between preserved source content, requested changes, newly authored text, and actual image lettering clear.\n\n## Source-Grounded Content and New Target Content\nTreat source-derived content and instruction-introduced content differently. Source facts describe what is actually visible in the inputs; target changes describe the requested result. Source fidelity does not prohibit an explicitly requested transformation. Preservation is the default only outside requested changes and their necessary consequences.\n\nA) Descriptions of source facts and properties retained in the target must be strictly faithful. Ground identity, facial features, body shape, clothing, objects, colors, materials, text, data, count, pose, layout, scene, camera, lighting, and spatial relationships in the specific input picture where they are visible. Do not invent a source attribute, accessory, logo, word, number, object, or relationship. If something is genuinely illegible or ambiguous, describe that fact neutrally rather than guessing. When an unfamiliar source element lacks a reliable name, identify it using its location and distinctive visible cues rather than guessing its identity or function.\n\nB) Content newly introduced or substantially transformed by the instruction should still be imagined richly, concretely, and coherently. Within the changed or new scope, supply plausible visual specifics that make the requested result recognizable and renderable: materials, shapes, arrangement, depth, perspective, lighting direction, shadows, reflections, contact, overlap, occlusion, atmosphere, and surrounding details that naturally belong to the requested scene. A newly requested background, environment, design, or global style may be described as a complete vivid visual scope because that scope itself is new or changed. Do not make the answer skeletal merely to satisfy a delta format.\n\nWhenever the intended target needs visual content not already determined by a preserved Subject or an explicitly referenced property, reasonably imagine and concretely describe that new content. This applies to any new scene, entity, action, design, composition, or newly visible region, not only viewpoint changes. Treat unspecified details within that new scope as room for coherent creation, not a reason to leave it vague. Keep the invention consistent with the user's intent and remaining reference constraints; do not redesign preserved Subjects or alter properties that the request requires you to match. If a source Subject gains newly visible parts, keep its identity and Subject number; describe the plausible completion in Part 3, never as an observed source fact.\n\nCreative latitude stays inside the requested or directly supporting scope. Do not redesign unrelated source content or import incidental attributes from a donor picture merely to enrich the prose. Ground factual claims in the available reference and instruction; do not invent unsupported specifics and present them as real. Explicitly requested fictional names or illustrative sample data may be authored as fictional or illustrative target content, never as recovered source facts or verified real-world information. Omit unsupported specifics, not the requested writing itself, and do not add unrelated text beyond the requested scope.\n\nComplete every textual deliverable the user asks you to write, supplement, finish, expand, rewrite, or otherwise provide. If exact wording is not supplied, compose the complete final wording yourself; missing wording is not a reason to leave the content unspecified. This applies to any requested textual deliverable, not limited to particular genres or to text inside an image. Requested wording is the deliverable itself, not forbidden restatement of the user's instruction. Do not delegate completion to the downstream model.\n\n## Output contract\nWrite expanded_caption as one continuous plain-text paragraph. Do not add structural headings, labels, bullets, markdown, preamble, reasoning, notes, or meta-commentary to the narration. Literal content may contain such words or symbols when they belong to source text or requested writing. The paragraph has three logical parts, in this order:\n1. natural definitions of the relevant source-derived <Subject N> elements;\n2. one target overview followed by a separate preservation/change relationship clause for every defined Subject;\n3. Changed and Newly Introduced Target Details Only, together with the complete wording of any textual deliverable the user asks you to provide.\n\nDetermine each requested text's destination from the instruction. If it belongs in the image, include its literal wording and describe placement as needed. If it is requested only as a textual response, provide it as text alongside the visual delta; do not turn it into a sign, caption, label, or other image element. Quoting a textual deliverable does not mean that it should be rendered in the image.\n\nComplete all Subject definitions before the target overview. Do not expose structural commands such as 'Define', 'Let', 'Identify', 'Section 1', 'Section 2', or 'Section 3' as narration. Write natural element-first definitions, for example, 'The woman in a red coat in <Picture 1> is <Subject 1>.' Refer to the intended visual result only as 'the target image'. Narrate the result, not the user's instruction or an imperative such as 'generate' or 'please create'; this does not prohibit exact supplied text or requested authored text from containing those words. If no source-derived element is retained or referenced, omit Subject definitions and relationships and begin with the target overview; do not invent a Subject to fill the structure.\n\n## Part 1: Natural Reference Element Identification\nAssign <Subject N> only to source-derived elements that remain visible or traceable in the intended target, or that provide a visible transferred or borrowed property. Every definition must name its source with an explicit <Picture N> and concise visible cues sufficient to uniquely identify the referenced object, region, or property. Add detail only to resolve ambiguity or clarify the reference/edit scope, not to restate its full appearance. Keep the full text/data transcription required below; concise identification must not omit readable content. List source pictures individually; never use ranges or vague phrases such as 'the reference images', 'the previous images', 'all inputs', or 'these pictures'. Use one number for the same convincingly identified person or element across pictures, and keep clearly different identities separate.\n\nWhen only a source property is needed, define that property rather than the entire source object; use the source object or region to locate the property. Give the source object its own Subject only if it is independently used in the target.\n\nChoose Subject granularity by relationship scope, not by a quota. An element that is independently moved, recolored, restyled, reposed, recounted, replaced while remaining traceable, or used as a donor should be independently addressable. Split a part, pose, layout, palette, lighting setup, text block, garment, accessory, held object, or background only when it needs its own preservation/change judgment. Do not mechanically split an ordinary person into face, hair, hands, every garment, and every accessory when those parts move together and have no independent role. Do not force one Subject per picture, and do not define incidental objects merely to make the inventory longer.\n\nJudge preservation over the scope actually defined. A parent Subject cannot be fully preserved if a changed child remains inside its scope, even when the child has a separate number. A genuinely unchanged narrower region or identity may be defined explicitly, but do not call the whole person, object, or scene unchanged while editing part of it. Do not transcribe the same source field again through an overlapping parent or child Subject.\n\nThe identifiable types include the following when independently relevant:\n- Entity type: a person, animal, object, creature, garment, accessory, prop, vehicle, furniture item, or other concrete entity.\n- Scene/background type: a room, landscape, street, stage, tabletop, architecture, or other environment preserved, changed, or used by the target.\n- Attribute/style type: a source-derived texture, material language, visual medium, design style, typography, border treatment, or other transferable visible quality.\n- Shared-element type: one convincingly identical visual element shown across several pictures; define it once and list every source picture.\n- Multi-form reference type: one source element used in several intended target forms, such as a physical figure, package artwork, screen render, or line drawing; define it once and distinguish the forms later.\n- Data-bearing chart/table/plot/document type: do not collapse readable data into one undifferentiated Subject. Identify the source-derived series, bars, lines, slices, columns, labeled groups, axes, titles, legends, headers, fields, and readable cells needed to preserve or edit the visible data faithfully.\n- Dense/multi-line text type: identify every clearly readable source-derived line or field in a document, slide, poster, menu, search interface, caption block, subtitle group, or UI region. Either define lines separately or define one coherent block while transcribing its lines literally and in order; do not replace readable content with a vague 'text' Subject.\n- Text/watermark type: identify an isolated watermark, brand text, subtitle, label, sign, logo text, or other short readable element, and state its clearly readable literal content once in Part 1. Later use its Subject token unless that text is intended to change.\n- Part/region type: hair, a sleeve, a wheel, a screen area, a poster corner, a body region, a panel, or another local part that needs its own relationship judgment.\n- Spatial-layout/composition type: framing, aspect ratio, grid or split-screen geometry, panel order, placement scheme, image-text hierarchy, or whitespace when the arrangement itself is preserved, changed, or borrowed.\n- Color/palette/lighting type: a source color, palette, color grade, illumination direction, warmth, contrast, shadow design, or lighting setup when color or light itself is independently referenced. Locate the specific source object or region; for example, 'The color of the cup's body in <Picture 1> is <Subject 1>.'\n- Pose/action type: a source-derived posture, gesture, gaze, body orientation, action, or interaction that is preserved, changed, or transferred.\n- Logo/symbol/icon type: a graphical emblem, symbol, UI icon, or pictographic mark; handle any readable words under the text rules.\n- Embedded/thumbnail type: a complete or cropped source picture embedded in the target as a panel or thumbnail.\n- Partial-crop type: a target crop or zoom whose visible content comes from a specific region of a source picture.\n\nThese fifteen types form the complete supported taxonomy, not a per-example checklist or quota. Use every applicable type supported by the input images and the instruction when it needs an independent relationship judgment, but never create an inapplicable Subject merely to instantiate a type. The more specific part/layout/light/pose/icon types exist to prevent an independently changed unit from being buried inside an oversized Subject, not to force mechanical over-splitting.\n\nBrand-new target-only content has no <Subject N>. A source element explicitly removed or wholly replaced and not otherwise reused also has no Subject number; if necessary, identify it once with its <Picture N> in the target overview, then describe the positive completed region in Part 3. Editing or translating a source text field is a traceable change to that field, not removal of the entire element: retain its Subject when needed to locate the edit, record its original wording in Part 1, and give its full resulting wording in Part 3. Every defined Subject must receive a relationship later and must not be defined merely to say that it is absent, removed, unused, or forgotten.\n\nReadable source text and data require special care. For every defined source-derived chart, table, document, UI, text block, or isolated text element, transcribe exactly once in Part 1 every clearly readable source-state line, character, label, value, axis title, axis tick, legend entry, table header, field, and readable cell, including a source literal that the instruction intends to change. Preserve the original language, script, grouping, and reading order. Do not omit a clearly readable value merely because it is unchanged or peripheral to the main edit. Never guess hidden, cropped-away, or illegible source text.\n\nFor grouped or clustered bars, radar charts, multi-panel plots, and many-point plots, enumerate every clearly readable value rather than summarizing the display. Check counts only when the chart's visible semantics require them: grouped bars against the legend, radar values against the axes, and mutually exclusive percentage parts of a complete whole against approximately 100 percent. Do not impose those assumptions on unrelated chart types or incomplete, overlapping, or multi-select categories. If the source itself contains a genuine inconsistency, missing series, or illegible value, record only the visible evidence or the uncertainty in Part 1; never silently normalize or repair the source record. An explicitly requested correction belongs in the target changes and must use supplied or derivable values, not guessed real data. Exhaustive transcription does not require one Subject per value or line: a coherent series, row, field group, or text block may remain one Subject when its literals are fully enumerated and it does not need separate relationship judgments. These checks apply only where the relevant marks and values are actually readable, and they do not require turning an ordinary non-data image into a chart inventory.\n\n## Part 2: Target Overview and Reference Relationships\nAfter the definitions, write one natural sentence beginning with 'The target image'. Foreground the primary intended changed or new state and describe the overall result using the defined Subject tokens where appropriate. Target-only new content remains unnumbered. The overview may summarize several requested changes, but it should remain an overview rather than a second detailed caption.\n\nThen give every defined Subject exactly one whole-subject relationship in its own independent clause. Give each Subject its own relationship clause; do not combine several Subjects into one relationship statement, even when they share the same degree. Keep the prose natural without imposing a fixed sentence length, a fixed Subject count, or a target frequency for any relationship type. Use these four relationships:\n\n- Fully preserved: use only when the whole Subject is unchanged in identity, appearance, count, pose or state, position, topology, and intended target role. Write only the short standalone clause '<Subject N> is fully preserved.' Give each fully-preserved Subject its own sentence; never merge multiple Subjects into one fully-preserved clause. Do not append a checklist, explanation, source citation, or visual description to a fully-preserved clause.\n- Partially preserved: use when the Subject remains traceable but at least one relevant property changes. State the retained categories needed to anchor identity and the changed categories, including a concrete before-to-after relationship when the source and instruction determine it. Do not exhaustively re-render retained appearance.\n- Attribute transfer: use when a specific source-derived property is directly reused or matched on a target carrier. Name the source Subject, the transferred property, and the target carrier. Transfer only the assigned property, not unrelated donor attributes.\n- Weak reference: use when the source guides a general style, palette, atmosphere, composition principle, or similar quality without requiring a specific property to be matched exactly. Name the borrowed quality and make clear what the new design may vary. Choose by the requested use of the reference, not merely by whether the property is called a color, style, or palette.\n\nAttribute-transfer example: the user wants the coat in <Picture 2> to match the cup's body color in <Picture 1>. Part 1 defines that color as <Subject 1> and the coat as <Subject 2>. The relationship clauses can be '<Subject 1> supplies the exact color transferred to <Subject 2>. <Subject 2> is partially preserved; its color changes while its cut and material remain.' The cup's shape and material are not transferred.\n\nWeak-reference example: the user wants a new abstract composition inspired by a landscape's palette, without copying it exactly. Part 1 defines the landscape's palette as <Subject 1>. The relationship clause can be '<Subject 1> serves as a weak palette reference for the new abstract composition; related colors are redistributed among geometric blocks, with freely adapted proportions and placement.' The new composition has no Subject number. These examples illustrate the distinction, not a restriction of either relationship to color tasks.\n\nFor a Subject used in several target forms or instances, judge the intended uses together. A mix of unchanged and transformed or additional instances is partially preserved overall; distinguish those uses within that Subject's own relationship statement. Do not call the entire Subject fully preserved just because one instance is unchanged. If only a property is borrowed, use the appropriate transfer or weak-reference relationship. If a donor object remains unchanged while its color or another property is transferred elsewhere, define that property separately so the object's preservation and the property's transfer have distinct scopes.\n\nThe relationship must agree with the described target. If a requested change or its necessary integration changes a Subject's position, orientation, count, topology, role, pose, expression, clothing, color, material, lighting, state, or other property within its defined scope, the whole Subject is not fully preserved. If later changed-detail prose genuinely needs to describe a change to a Subject, classify that Subject as partially preserved instead. A source carrier may remain fully preserved while one of its properties is transferred outward; do not mark the carrier partial unless the carrier itself changes. Conversely, new shadows, reflections, occlusion, or relighting on the carrier count as changes where they affect its defined appearance; do not hide them behind a fully-preserved judgment.\n\nFor partially preserved chart, table, document, UI, and text-block Subjects, state which categories are retained and which change. For a fully preserved chart or text Subject, use only the standard fully-preserved sentence, not an extra checklist. Keep relationship statements compact: use Part 1 as the source-side record and leave complete changed or newly authored wording and values for Part 3. Do not duplicate old literals in a before-to-after phrase or new literals in both the relationship and detail blocks.\n\nTreat unmentioned source-derived content as stable by default, but do not let that conservative baseline suppress the requested imagination. The changed/new target scope may still be rich. Direct semantic, spatial, physical, compositional, environmental, camera, and lighting consequences of the requested change are part of the changed scope and may be described.\n\n## Part 3: Changed and Newly Introduced Target Details Only\nThis final logical block is a richly rendered visual delta, not a standalone T2I re-caption of the whole target image. Also supply the requested textual deliverables. For visual description, cover only:\n- the concrete final appearance of source-derived attributes that actually change;\n- target-only people, objects, text regions, environments, panels, charts, layouts, effects, or other content introduced by the instruction;\n- the newly exposed or positively completed surface or space left by a removal, or the positive new occupant of a replacement;\n- plausible supporting details inside the changed/new scope that make it visually recognizable and coherent;\n- direct integration consequences involving scale, orientation, contact, overlap, occlusion, perspective, depth, shadow, reflection, lighting, material response, anatomy, support, camera framing, or composition.\n\nThis changed/new-only rule does not impose terse writing. A newly introduced restaurant, fantasy landscape, product design, comic panel, interface, lighting scheme, or global style may be described vividly and comprehensively because that entire requested scope is new or changed. Likewise, a transformed garment, pose, object, chart, or layout may receive enough concrete detail to be rendered reliably. Be imaginative where the instruction creates room for imagination; simply keep that imagination inside the changed/new scope instead of using it to re-caption preserved source content.\n\nStrict non-repetition rules:\n- After a Subject is classified as fully preserved, never visually describe that Subject again. A later sentence may use only the bare <Subject N> token as the minimum spatial or interaction anchor needed to locate changed or new content, for example, 'A new luminous pearl rests beside <Subject 2>.' Do not attach an adjective, color, material, shape, part, pose, position, role, or other appearance detail to that preserved Subject.\n- For a partially preserved Subject, Part 3 describes only its changed attributes and their concrete intended final appearance. Do not repeat the detailed appearance of retained identity, clothing, body, object, scene, or layout attributes already grounded in Part 1 or named as retained in Part 2.\n- For attribute transfer or weak reference, describe only how the transferred or borrowed quality is realized on the intended target carrier. Do not import or re-render unrelated donor properties.\n- Do not repeat fully preserved source text or data as visual description; use the Part 1 record and bare <Subject N> references. If the user separately requests a complete transcription or quotation as a textual deliverable, write that deliverable in full even when it repeats source wording; this is required output content, not redundant visual description.\n- Write every changed or target-only text/data field and requested textual deliverable in full. Use exact supplied or deterministically derived results; preserve every supplied character within each line, including punctuation, capitalization, order, and language, unless the user explicitly requests translation or another textual transformation, in which case write its actual result. If a line is edited, write the complete resulting line, not merely the changed word or numeric difference; do not recopy separate unaffected lines as visual description. Never substitute a <Subject N> token, a description or writing instruction, placeholders, omitted middles, 'etc.', 'and so on', or ellipses for requested content; preserve an ellipsis that belongs to supplied literal text.\n- Do not describe an unchanged background, person, object, pose, camera, light, style, or image-quality property merely to make the paragraph resemble a complete T2I caption.\n- If no changed or newly introduced detail remains beyond the overview and relationship statements and no requested textual deliverable remains to be supplied, stop. Never pad the output with preserved appearance.\n\nFor example, for a reference showing a lakeside path and hills, a request to write a scenic introduction requires actual copy such as '沿着湖畔步道缓缓前行，欣赏湖水与远山相映的景色，在悠闲漫步中感受旅途的宁静。', not 'a paragraph introducing the attraction'. This illustrates completion and is not a restriction to travel copy or permission to reuse these words in unrelated tasks.\n\nCorrect pattern: 'The black horse in <Picture 1> is <Subject 1>. The target image shows <Subject 1> beside a newly added luminous pearl. <Subject 1> is fully preserved. The pearl emits a cool glow onto the ground beside <Subject 1>.' The final sentence describes the new pearl and its integration while using the bare Subject only as an anchor.\n\nIncorrect pattern: '<Subject 1> is fully preserved. <Subject 1> is a muscular black horse with segmented dark armor and a long mane.' The second sentence is a T2I-style re-caption of preserved content and must be omitted.\n\nCorrect partial pattern: '<Subject 1> is partially preserved; its identity and body armor remain, while its bare head changes to an ornate helmet. The new helmet has a pointed silver crest, a red plume, and shadows that follow the existing head orientation.' Do not subsequently re-describe the retained face, body, or armor.\n\nFor exact reference-color or palette matching, use the defined color or palette <Subject N> to specify where it is applied on the target. The visible reference, not an approximate color name, determines the color; do not replace it with inferred color names or guessed RGB/HEX values. Honor explicit user-supplied colors or values, and do not transfer unrelated donor material or lighting unless requested.\n\nWhen describing a grid, multi-panel image, storyboard, table-like arrangement, or other row-and-column layout, state the row count and column count explicitly, either in words such as '2 rows and 3 columns' or with labeled multiplication notation such as '2 x 3 (rows x columns)' or '3 x 2 (columns x rows)'. Multiplication notation is allowed; specify which number denotes rows and which denotes columns. Do not use an unlabeled '2 x 3' or '2×3' alone. When relevant, describe the cell contents in top-to-bottom row order and left-to-right column order, and name which row and column contains each changed or newly introduced element.\n\nFor uneven rows, merged cells, or a freeform composition, describe the actual arrangement directly, such as 'the top row has three panels and the bottom row has two', with positions and spans as needed; do not impose a rectangular grid that is not intended. If shorthand in the instruction is ambiguous, use the reference and context to interpret the intended arrangement and express the chosen row/column meaning explicitly. Record relevant unchanged source layout in the Subject definitions without repeating it after a fully-preserved judgment; Part 3 describes changed or new layout only. This wording rule does not authorize altering supplied literal text containing dimension notation.\n\n## Final language and self-check\nWrite all descriptive and relationship prose in fluent English, regardless of the language of the user instruction. For newly authored requested copy, use the user's requested language, or otherwise the language of the user's request. Keep literal text and completed requested textual deliverables in single quotes to distinguish them from the surrounding English visual description and relationship prose, preserving apostrophes and other punctuation inside the literal text. Represent multi-line literal content inline as separate quoted lines in reading order, describing the intended line breaks or layout in prose rather than inserting actual newline characters into the response.\n\nUse objective, concrete visual language. Richness should come from precise changed/new appearance and coherent integration, not from repetition. Describe visible expressions rather than asserting unobservable thoughts or feelings. Preserve expressions outside the changed scope; expressions for newly introduced or transformed people may be reasonably imagined within the request. Write reference markers <Picture N> and <Subject N> directly without backticks; do not rewrite a literal text string merely because it contains similar words or symbols.\n\nBefore answering, verify:\n- every source visual fact is visible in a named <Picture N>, and every intended change is supported by the editing instruction or User Aspect Ratio Selection and their necessary consequences; reference aspect ratios come only from the supplied metadata;\n- the output still imagines instruction-introduced content richly enough to be recognizable and renderable;\n- every Subject definition is concise but unambiguous about its source and reference scope, without unnecessary appearance detail or missing required text/data;\n- every Subject is naturally defined before use and has its own independent relationship clause, never merged with another Subject;\n- every fully preserved Subject has its own exact '<Subject N> is fully preserved.' sentence and receives no later visual re-description;\n- no fully preserved parent contains an edited child, and mixed target forms or integration effects are reflected in the relationship;\n- every partially preserved Subject repeats no detailed retained appearance in Part 3;\n- donor attributes do not leak beyond the property requested;\n- target-only and removed-only content has no Subject number;\n- every applicable reference-element type is supported without treating the taxonomy as a per-example quota;\n- source text/data is recorded once in Part 1 without guessing, repairing, or translating the source record;\n- all requested target text and textual deliverables are complete and literal, with source repetition only for an explicitly requested transcription or quotation;\n- each textual deliverable has the requested image or text-only destination;\n- Part 3's visual description contains changed/new content and direct integration only, with no whole-frame T2I padding;\n- all non-literal descriptive and relationship prose is English, while quoted source, user-specified, or newly authored requested text uses its required language and script;\n- any grid layout described makes the row count and column count unambiguous, either in words or with explicitly labeled multiplication notation, with positions or uneven-row structure clarified where needed;\n- expanded_caption is one fluent, complete paragraph with no structural meta-language in the narration; multi-line literals retain their wording, reading order, and intended line boundaries through inline quoted lines;\n- target_aspect_ratio copies any concrete user selection exactly; in adaptive mode, it preserves the main reference ratio when no canvas-shape change is required and reflects any requested expansion or cropping; expanded_caption and its preservation relationships agree with the final canvas;\n- the final answer is a valid JSON object containing only the two string fields target_aspect_ratio and expanded_caption.\n\nOutput only the required two-field JSON object.\n\nReference Image Count:\n{d} input image(s), labeled <Picture 1> through <Picture {d}>.\n\n{a:.{b}}\nUser Editing Instruction (JSON string):\n\"{c}\"\n\nUser Aspect Ratio Selection:\nadaptive\n\nApply the instructions above to the supplied inputs and reference images. Output override: the canvas is already fixed. Write only the expanded_caption text itself: one fluent English paragraph. No JSON, no keys, no braces, no Markdown, nothing before or after the paragraph.<|im_end|>\n<|im_start|>assistant\n<think>\n\n</think>\n\n"
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 410,
      "type": "AUSBOSS_NODES_Callout",
      "pos": [
       1100,
       80
      ],
      "size": [
       460,
       150
      ],
      "flags": {
       "pinned": true
      },
      "order": 3,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "text",
        "name": "text",
        "type": "STRING",
        "widget": {
         "name": "text"
        },
        "link": null
       }
      ],
      "outputs": [],
      "title": "Callout",
      "properties": {
       "Node name for S&R": "AUSBOSS_NODES_Callout",
       "cnr_id": "ausboss-nodes"
      },
      "widgets_values": [
       "The writer is Qwen3.5 9B, the one Comfy recommends for this model. Thinking is off.\n###### Same words and pictures give the same prompt."
      ],
      "widgets_values_named": {
       "text": "The writer is Qwen3.5 9B, the one Comfy recommends for this model. Thinking is off.\n###### Same words and pictures give the same prompt."
      },
      "color": "#07090a",
      "bgcolor": "#07090a"
     },
     {
      "id": 411,
      "type": "TextGenerate",
      "pos": [
       1100,
       300
      ],
      "size": [
       460,
       300
      ],
      "flags": {},
      "order": 11,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "clip",
        "name": "clip",
        "type": "CLIP",
        "link": 1048
       },
       {
        "localized_name": "image",
        "name": "image",
        "shape": 7,
        "type": "IMAGE",
        "link": null
       },
       {
        "localized_name": "video",
        "name": "video",
        "shape": 7,
        "type": "IMAGE",
        "link": null
       },
       {
        "localized_name": "audio",
        "name": "audio",
        "shape": 7,
        "type": "AUDIO",
        "link": null
       },
       {
        "localized_name": "system_prompt",
        "name": "system_prompt",
        "shape": 7,
        "type": "STRING",
        "link": null
       },
       {
        "localized_name": "prompt",
        "name": "prompt",
        "type": "STRING",
        "widget": {
         "name": "prompt"
        },
        "link": 1050
       },
       {
        "localized_name": "max_length",
        "name": "max_length",
        "type": "INT",
        "widget": {
         "name": "max_length"
        },
        "link": null
       },
       {
        "localized_name": "Sampling Mode",
        "name": "sampling_mode",
        "type": "COMFY_DYNAMICCOMBO_V3",
        "widget": {
         "name": "sampling_mode"
        },
        "link": null
       },
       {
        "localized_name": "thinking",
        "name": "thinking",
        "shape": 7,
        "type": "BOOLEAN",
        "widget": {
         "name": "thinking"
        },
        "link": null
       },
       {
        "localized_name": "use_default_template",
        "name": "use_default_template",
        "shape": 7,
        "type": "BOOLEAN",
        "widget": {
         "name": "use_default_template"
        },
        "link": null
       },
       {
        "localized_name": "mtp",
        "name": "mtp",
        "shape": 7,
        "type": "COMBO",
        "widget": {
         "name": "mtp"
        },
        "link": null
       }
      ],
      "outputs": [
       {
        "localized_name": "generated_text",
        "name": "generated_text",
        "type": "STRING",
        "links": [
         1053
        ]
       },
       {
        "localized_name": "thinking",
        "name": "thinking",
        "type": "STRING",
        "links": []
       }
      ],
      "title": "Generate Text - The writer, for a new picture",
      "properties": {
       "Node name for S&R": "TextGenerate",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "widgets_values": [
       "",
       2048,
       "off",
       false,
       true,
       "auto"
      ],
      "widgets_values_named": {
       "prompt": "",
       "max_length": 2048,
       "sampling_mode": "off",
       "thinking": false,
       "use_default_template": true,
       "mtp": "auto"
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 412,
      "type": "TextGenerate",
      "pos": [
       1100,
       670
      ],
      "size": [
       460,
       300
      ],
      "flags": {},
      "order": 12,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "clip",
        "name": "clip",
        "type": "CLIP",
        "link": 1049
       },
       {
        "localized_name": "image",
        "name": "image",
        "shape": 7,
        "type": "IMAGE",
        "link": 1052
       },
       {
        "localized_name": "video",
        "name": "video",
        "shape": 7,
        "type": "IMAGE",
        "link": null
       },
       {
        "localized_name": "audio",
        "name": "audio",
        "shape": 7,
        "type": "AUDIO",
        "link": null
       },
       {
        "localized_name": "system_prompt",
        "name": "system_prompt",
        "shape": 7,
        "type": "STRING",
        "link": null
       },
       {
        "localized_name": "prompt",
        "name": "prompt",
        "type": "STRING",
        "widget": {
         "name": "prompt"
        },
        "link": 1051
       },
       {
        "localized_name": "max_length",
        "name": "max_length",
        "type": "INT",
        "widget": {
         "name": "max_length"
        },
        "link": null
       },
       {
        "localized_name": "Sampling Mode",
        "name": "sampling_mode",
        "type": "COMFY_DYNAMICCOMBO_V3",
        "widget": {
         "name": "sampling_mode"
        },
        "link": null
       },
       {
        "localized_name": "thinking",
        "name": "thinking",
        "shape": 7,
        "type": "BOOLEAN",
        "widget": {
         "name": "thinking"
        },
        "link": null
       },
       {
        "localized_name": "use_default_template",
        "name": "use_default_template",
        "shape": 7,
        "type": "BOOLEAN",
        "widget": {
         "name": "use_default_template"
        },
        "link": null
       },
       {
        "localized_name": "mtp",
        "name": "mtp",
        "shape": 7,
        "type": "COMBO",
        "widget": {
         "name": "mtp"
        },
        "link": null
       }
      ],
      "outputs": [
       {
        "localized_name": "generated_text",
        "name": "generated_text",
        "type": "STRING",
        "links": [
         1054
        ]
       },
       {
        "localized_name": "thinking",
        "name": "thinking",
        "type": "STRING",
        "links": []
       }
      ],
      "title": "Generate Text - The writer, for an edit",
      "properties": {
       "Node name for S&R": "TextGenerate",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "widgets_values": [
       "",
       2048,
       "off",
       false,
       true,
       "auto"
      ],
      "widgets_values_named": {
       "prompt": "",
       "max_length": 2048,
       "sampling_mode": "off",
       "thinking": false,
       "use_default_template": true,
       "mtp": "auto"
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 413,
      "type": "ComfySwitchNode",
      "pos": [
       1100,
       1040
      ],
      "size": [
       460,
       78
      ],
      "flags": {},
      "order": 13,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "on_false",
        "name": "on_false",
        "shape": 7,
        "type": "STRING",
        "link": 1053
       },
       {
        "localized_name": "on_true",
        "name": "on_true",
        "shape": 7,
        "type": "STRING",
        "link": 1054
       },
       {
        "localized_name": "switch",
        "name": "switch",
        "type": "BOOLEAN",
        "widget": {
         "name": "switch"
        },
        "link": 1055
       }
      ],
      "outputs": [
       {
        "localized_name": "output",
        "name": "output",
        "type": "STRING",
        "links": [
         1143
        ]
       }
      ],
      "title": "If/Else Switch - New picture or edit",
      "properties": {
       "Node name for S&R": "ComfySwitchNode",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "widgets_values": [
       true
      ],
      "widgets_values_named": {
       "switch": true
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 420,
      "type": "AUSBOSS_NODES_Callout",
      "pos": [
       1620,
       80
      ],
      "size": [
       460,
       150
      ],
      "flags": {
       "pinned": true
      },
      "order": 4,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "text",
        "name": "text",
        "type": "STRING",
        "widget": {
         "name": "text"
        },
        "link": null
       }
      ],
      "outputs": [],
      "title": "Callout",
      "properties": {
       "Node name for S&R": "AUSBOSS_NODES_Callout",
       "cnr_id": "ausboss-nodes"
      },
      "widgets_values": [
       "Your extra pictures go on to the box that draws.\n###### An empty socket passes nothing on."
      ],
      "widgets_values_named": {
       "text": "Your extra pictures go on to the box that draws.\n###### An empty socket passes nothing on."
      },
      "color": "#07090a",
      "bgcolor": "#07090a"
     },
     {
      "id": 421,
      "type": "ComfySwitchNode",
      "pos": [
       1620,
       300
      ],
      "size": [
       460,
       78
      ],
      "flags": {},
      "order": 15,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "on_false",
        "name": "on_false",
        "shape": 7,
        "type": "IMAGE",
        "link": null
       },
       {
        "localized_name": "on_true",
        "name": "on_true",
        "shape": 7,
        "type": "*",
        "link": 1057
       },
       {
        "localized_name": "switch",
        "name": "switch",
        "type": "BOOLEAN",
        "widget": {
         "name": "switch"
        },
        "link": null
       }
      ],
      "outputs": [
       {
        "localized_name": "output",
        "name": "output",
        "type": "IMAGE",
        "links": [
         1058
        ]
       }
      ],
      "title": "If/Else Switch - Picture 2 on",
      "properties": {
       "Node name for S&R": "ComfySwitchNode",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "widgets_values": [
       true
      ],
      "widgets_values_named": {
       "switch": true
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 422,
      "type": "ComfySwitchNode",
      "pos": [
       1620,
       420
      ],
      "size": [
       460,
       78
      ],
      "flags": {},
      "order": 16,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "on_false",
        "name": "on_false",
        "shape": 7,
        "type": "IMAGE",
        "link": null
       },
       {
        "localized_name": "on_true",
        "name": "on_true",
        "shape": 7,
        "type": "*",
        "link": 1059
       },
       {
        "localized_name": "switch",
        "name": "switch",
        "type": "BOOLEAN",
        "widget": {
         "name": "switch"
        },
        "link": null
       }
      ],
      "outputs": [
       {
        "localized_name": "output",
        "name": "output",
        "type": "IMAGE",
        "links": [
         1060
        ]
       }
      ],
      "title": "If/Else Switch - Picture 3 on",
      "properties": {
       "Node name for S&R": "ComfySwitchNode",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "widgets_values": [
       true
      ],
      "widgets_values_named": {
       "switch": true
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 423,
      "type": "ComfySwitchNode",
      "pos": [
       1620,
       540
      ],
      "size": [
       460,
       78
      ],
      "flags": {},
      "order": 17,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "on_false",
        "name": "on_false",
        "shape": 7,
        "type": "IMAGE",
        "link": null
       },
       {
        "localized_name": "on_true",
        "name": "on_true",
        "shape": 7,
        "type": "*",
        "link": 1061
       },
       {
        "localized_name": "switch",
        "name": "switch",
        "type": "BOOLEAN",
        "widget": {
         "name": "switch"
        },
        "link": null
       }
      ],
      "outputs": [
       {
        "localized_name": "output",
        "name": "output",
        "type": "IMAGE",
        "links": [
         1062
        ]
       }
      ],
      "title": "If/Else Switch - Picture 4 on",
      "properties": {
       "Node name for S&R": "ComfySwitchNode",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "widgets_values": [
       true
      ],
      "widgets_values_named": {
       "switch": true
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 424,
      "type": "ComfySwitchNode",
      "pos": [
       1620,
       660
      ],
      "size": [
       460,
       78
      ],
      "flags": {},
      "order": 18,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "on_false",
        "name": "on_false",
        "shape": 7,
        "type": "IMAGE",
        "link": null
       },
       {
        "localized_name": "on_true",
        "name": "on_true",
        "shape": 7,
        "type": "*",
        "link": 1063
       },
       {
        "localized_name": "switch",
        "name": "switch",
        "type": "BOOLEAN",
        "widget": {
         "name": "switch"
        },
        "link": null
       }
      ],
      "outputs": [
       {
        "localized_name": "output",
        "name": "output",
        "type": "IMAGE",
        "links": [
         1064
        ]
       }
      ],
      "title": "If/Else Switch - Picture 5 on",
      "properties": {
       "Node name for S&R": "ComfySwitchNode",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "widgets_values": [
       true
      ],
      "widgets_values_named": {
       "switch": true
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 425,
      "type": "ComfySwitchNode",
      "pos": [
       1620,
       780
      ],
      "size": [
       460,
       78
      ],
      "flags": {},
      "order": 19,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "on_false",
        "name": "on_false",
        "shape": 7,
        "type": "IMAGE",
        "link": null
       },
       {
        "localized_name": "on_true",
        "name": "on_true",
        "shape": 7,
        "type": "*",
        "link": 1065
       },
       {
        "localized_name": "switch",
        "name": "switch",
        "type": "BOOLEAN",
        "widget": {
         "name": "switch"
        },
        "link": null
       }
      ],
      "outputs": [
       {
        "localized_name": "output",
        "name": "output",
        "type": "IMAGE",
        "links": [
         1066
        ]
       }
      ],
      "title": "If/Else Switch - Picture 6 on",
      "properties": {
       "Node name for S&R": "ComfySwitchNode",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "widgets_values": [
       true
      ],
      "widgets_values_named": {
       "switch": true
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 426,
      "type": "ComfySwitchNode",
      "pos": [
       1620,
       900
      ],
      "size": [
       460,
       78
      ],
      "flags": {},
      "order": 20,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "on_false",
        "name": "on_false",
        "shape": 7,
        "type": "IMAGE",
        "link": null
       },
       {
        "localized_name": "on_true",
        "name": "on_true",
        "shape": 7,
        "type": "*",
        "link": 1067
       },
       {
        "localized_name": "switch",
        "name": "switch",
        "type": "BOOLEAN",
        "widget": {
         "name": "switch"
        },
        "link": null
       }
      ],
      "outputs": [
       {
        "localized_name": "output",
        "name": "output",
        "type": "IMAGE",
        "links": [
         1068
        ]
       }
      ],
      "title": "If/Else Switch - Picture 7 on",
      "properties": {
       "Node name for S&R": "ComfySwitchNode",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "widgets_values": [
       true
      ],
      "widgets_values_named": {
       "switch": true
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 427,
      "type": "ComfySwitchNode",
      "pos": [
       1620,
       1020
      ],
      "size": [
       460,
       78
      ],
      "flags": {},
      "order": 21,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "on_false",
        "name": "on_false",
        "shape": 7,
        "type": "IMAGE",
        "link": null
       },
       {
        "localized_name": "on_true",
        "name": "on_true",
        "shape": 7,
        "type": "*",
        "link": 1069
       },
       {
        "localized_name": "switch",
        "name": "switch",
        "type": "BOOLEAN",
        "widget": {
         "name": "switch"
        },
        "link": null
       }
      ],
      "outputs": [
       {
        "localized_name": "output",
        "name": "output",
        "type": "IMAGE",
        "links": [
         1070
        ]
       }
      ],
      "title": "If/Else Switch - Picture 8 on",
      "properties": {
       "Node name for S&R": "ComfySwitchNode",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "widgets_values": [
       true
      ],
      "widgets_values_named": {
       "switch": true
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 414,
      "type": "ComfySwitchNode",
      "pos": [
       560,
       328
      ],
      "size": [
       460,
       78
      ],
      "flags": {},
      "order": 14,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "on_false",
        "name": "on_false",
        "shape": 7,
        "type": "IMAGE",
        "link": null
       },
       {
        "localized_name": "on_true",
        "name": "on_true",
        "shape": 7,
        "type": "*",
        "link": 1034
       },
       {
        "localized_name": "switch",
        "name": "switch",
        "type": "BOOLEAN",
        "widget": {
         "name": "switch"
        },
        "link": 1071
       }
      ],
      "outputs": [
       {
        "localized_name": "output",
        "name": "output",
        "type": "IMAGE",
        "links": [
         1072
        ]
       }
      ],
      "title": "If/Else Switch - Your picture, edits only",
      "properties": {
       "Node name for S&R": "ComfySwitchNode",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "widgets_values": [
       true
      ],
      "widgets_values_named": {
       "switch": true
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 450,
      "type": "AUSBOSS_NODES_MathExpression",
      "pos": [
       20,
       300
      ],
      "size": [
       460,
       134
      ],
      "flags": {},
      "order": 22,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "a",
        "name": "a",
        "shape": 7,
        "type": "FLOAT,INT",
        "link": 1031
       },
       {
        "localized_name": "b",
        "name": "b",
        "shape": 7,
        "type": "FLOAT,INT",
        "link": 1032
       },
       {
        "localized_name": "c",
        "name": "c",
        "shape": 7,
        "type": "FLOAT,INT",
        "link": null
       },
       {
        "localized_name": "expression",
        "name": "expression",
        "type": "STRING",
        "widget": {
         "name": "expression"
        },
        "link": null
       }
      ],
      "outputs": [
       {
        "localized_name": "float",
        "name": "float",
        "type": "FLOAT",
        "links": [
         1073
        ]
       },
       {
        "localized_name": "int",
        "name": "int",
        "type": "INT",
        "links": []
       }
      ],
      "title": "Math Expression - Picture aspect ratio",
      "properties": {
       "Node name for S&R": "AUSBOSS_NODES_MathExpression",
       "cnr_id": "ausboss-nodes",
       "ver": "2.15.0"
      },
      "widgets_values": [
       "a / max(b, 1)"
      ],
      "widgets_values_named": {
       "expression": "a / max(b, 1)"
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 416,
      "type": "ComfySwitchNode",
      "pos": [
       1100,
       1340
      ],
      "size": [
       460,
       78
      ],
      "flags": {},
      "order": 13,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "on_false",
        "name": "on_false",
        "shape": 7,
        "type": "CLIP",
        "link": null
       },
       {
        "localized_name": "on_true",
        "name": "on_true",
        "shape": 7,
        "type": "CLIP",
        "link": 1142
       },
       {
        "localized_name": "switch",
        "name": "switch",
        "type": "BOOLEAN",
        "widget": {
         "name": "switch"
        },
        "link": null
       }
      ],
      "outputs": [
       {
        "localized_name": "output",
        "name": "output",
        "type": "CLIP",
        "links": [
         1048,
         1049
        ]
       }
      ],
      "title": "If/Else Switch - The writer's model, Auto prompt only",
      "properties": {
       "Node name for S&R": "ComfySwitchNode",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "widgets_values": [
       true
      ],
      "widgets_values_named": {
       "switch": true
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 415,
      "type": "ComfySwitchNode",
      "pos": [
       1100,
       1190
      ],
      "size": [
       460,
       78
      ],
      "flags": {},
      "order": 13,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "on_false",
        "name": "on_false",
        "shape": 7,
        "type": "STRING",
        "link": 1144
       },
       {
        "localized_name": "on_true",
        "name": "on_true",
        "shape": 7,
        "type": "STRING",
        "link": 1143
       },
       {
        "localized_name": "switch",
        "name": "switch",
        "type": "BOOLEAN",
        "widget": {
         "name": "switch"
        },
        "link": 1145
       }
      ],
      "outputs": [
       {
        "localized_name": "output",
        "name": "output",
        "type": "STRING",
        "links": [
         1056
        ]
       }
      ],
      "title": "If/Else Switch - Auto prompt on: the writer. Off: your words",
      "properties": {
       "Node name for S&R": "ComfySwitchNode",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "widgets_values": [
       false
      ],
      "widgets_values_named": {
       "switch": false
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     }
    ],
    "groups": [
     {
      "id": 5,
      "title": "1 · For a new picture",
      "bounding": [
       0,
       0,
       500,
       674
      ],
      "color": "#1d5560",
      "flags": {
       "pinned": true
      }
     },
     {
      "id": 6,
      "title": "2 · For an edit",
      "bounding": [
       540,
       0,
       500,
       1780
      ],
      "color": "#1d5560",
      "flags": {
       "pinned": true
      }
     },
     {
      "id": 7,
      "title": "3 · Write",
      "bounding": [
       1080,
       0,
       500,
       1138
      ],
      "color": "#1d5560",
      "flags": {
       "pinned": true
      }
     },
     {
      "id": 10,
      "title": "4 · Pass the pictures on",
      "bounding": [
       1600,
       0,
       500,
       1200
      ],
      "color": "#1d5560",
      "flags": {
       "pinned": true
      }
     }
    ],
    "links": [
     {
      "id": 1031,
      "origin_id": -10,
      "origin_slot": 10,
      "target_id": 450,
      "target_slot": 0,
      "type": "INT"
     },
     {
      "id": 1032,
      "origin_id": -10,
      "origin_slot": 11,
      "target_id": 450,
      "target_slot": 1,
      "type": "INT"
     },
     {
      "id": 1034,
      "origin_id": -10,
      "origin_slot": 8,
      "target_id": 414,
      "target_slot": 1,
      "type": "IMAGE"
     },
     {
      "id": 1043,
      "origin_id": 405,
      "origin_slot": 0,
      "target_id": 406,
      "target_slot": 0,
      "type": "IMAGE"
     },
     {
      "id": 1044,
      "origin_id": 406,
      "origin_slot": 2,
      "target_id": 407,
      "target_slot": 0,
      "type": "INT"
     },
     {
      "id": 1053,
      "origin_id": 411,
      "origin_slot": 0,
      "target_id": 413,
      "target_slot": 0,
      "type": "STRING"
     },
     {
      "id": 1054,
      "origin_id": 412,
      "origin_slot": 0,
      "target_id": 413,
      "target_slot": 1,
      "type": "STRING"
     },
     {
      "id": 1055,
      "origin_id": -10,
      "origin_slot": 12,
      "target_id": 413,
      "target_slot": 2,
      "type": "BOOLEAN"
     },
     {
      "id": 1056,
      "origin_id": 415,
      "origin_slot": 0,
      "target_id": -20,
      "target_slot": 0,
      "type": "STRING"
     },
     {
      "id": 1057,
      "origin_id": -10,
      "origin_slot": 1,
      "target_id": 421,
      "target_slot": 1,
      "type": "IMAGE"
     },
     {
      "id": 1058,
      "origin_id": 421,
      "origin_slot": 0,
      "target_id": -20,
      "target_slot": 1,
      "type": "IMAGE"
     },
     {
      "id": 1059,
      "origin_id": -10,
      "origin_slot": 2,
      "target_id": 422,
      "target_slot": 1,
      "type": "IMAGE"
     },
     {
      "id": 1060,
      "origin_id": 422,
      "origin_slot": 0,
      "target_id": -20,
      "target_slot": 2,
      "type": "IMAGE"
     },
     {
      "id": 1061,
      "origin_id": -10,
      "origin_slot": 3,
      "target_id": 423,
      "target_slot": 1,
      "type": "IMAGE"
     },
     {
      "id": 1062,
      "origin_id": 423,
      "origin_slot": 0,
      "target_id": -20,
      "target_slot": 3,
      "type": "IMAGE"
     },
     {
      "id": 1063,
      "origin_id": -10,
      "origin_slot": 4,
      "target_id": 424,
      "target_slot": 1,
      "type": "IMAGE"
     },
     {
      "id": 1064,
      "origin_id": 424,
      "origin_slot": 0,
      "target_id": -20,
      "target_slot": 4,
      "type": "IMAGE"
     },
     {
      "id": 1065,
      "origin_id": -10,
      "origin_slot": 5,
      "target_id": 425,
      "target_slot": 1,
      "type": "IMAGE"
     },
     {
      "id": 1066,
      "origin_id": 425,
      "origin_slot": 0,
      "target_id": -20,
      "target_slot": 5,
      "type": "IMAGE"
     },
     {
      "id": 1067,
      "origin_id": -10,
      "origin_slot": 6,
      "target_id": 426,
      "target_slot": 1,
      "type": "IMAGE"
     },
     {
      "id": 1068,
      "origin_id": 426,
      "origin_slot": 0,
      "target_id": -20,
      "target_slot": 6,
      "type": "IMAGE"
     },
     {
      "id": 1069,
      "origin_id": -10,
      "origin_slot": 7,
      "target_id": 427,
      "target_slot": 1,
      "type": "IMAGE"
     },
     {
      "id": 1070,
      "origin_id": 427,
      "origin_slot": 0,
      "target_id": -20,
      "target_slot": 7,
      "type": "IMAGE"
     },
     {
      "id": 1071,
      "origin_id": -10,
      "origin_slot": 12,
      "target_id": 414,
      "target_slot": 2,
      "type": "BOOLEAN"
     },
     {
      "id": 1072,
      "origin_id": 414,
      "origin_slot": 0,
      "target_id": 404,
      "target_slot": 0,
      "type": "IMAGE"
     },
     {
      "id": 1073,
      "origin_id": 450,
      "origin_slot": 0,
      "target_id": 402,
      "target_slot": 0,
      "type": "FLOAT"
     },
     {
      "id": 1033,
      "origin_id": -10,
      "origin_slot": 0,
      "target_id": 402,
      "target_slot": 3,
      "type": "*"
     },
     {
      "id": 1035,
      "origin_id": 404,
      "origin_slot": 0,
      "target_id": 405,
      "target_slot": 0,
      "type": "IMAGE"
     },
     {
      "id": 1036,
      "origin_id": -10,
      "origin_slot": 1,
      "target_id": 405,
      "target_slot": 1,
      "type": "IMAGE"
     },
     {
      "id": 1037,
      "origin_id": -10,
      "origin_slot": 2,
      "target_id": 405,
      "target_slot": 2,
      "type": "IMAGE"
     },
     {
      "id": 1038,
      "origin_id": -10,
      "origin_slot": 3,
      "target_id": 405,
      "target_slot": 3,
      "type": "IMAGE"
     },
     {
      "id": 1039,
      "origin_id": -10,
      "origin_slot": 4,
      "target_id": 405,
      "target_slot": 4,
      "type": "IMAGE"
     },
     {
      "id": 1040,
      "origin_id": -10,
      "origin_slot": 5,
      "target_id": 405,
      "target_slot": 5,
      "type": "IMAGE"
     },
     {
      "id": 1041,
      "origin_id": -10,
      "origin_slot": 6,
      "target_id": 405,
      "target_slot": 6,
      "type": "IMAGE"
     },
     {
      "id": 1042,
      "origin_id": -10,
      "origin_slot": 7,
      "target_id": 405,
      "target_slot": 7,
      "type": "IMAGE"
     },
     {
      "id": 1045,
      "origin_id": 408,
      "origin_slot": 0,
      "target_id": 409,
      "target_slot": 0,
      "type": "STRING"
     },
     {
      "id": 1046,
      "origin_id": 407,
      "origin_slot": 1,
      "target_id": 409,
      "target_slot": 1,
      "type": "INT"
     },
     {
      "id": 1047,
      "origin_id": -10,
      "origin_slot": 0,
      "target_id": 409,
      "target_slot": 3,
      "type": "*"
     },
     {
      "id": 1048,
      "origin_id": 416,
      "origin_slot": 0,
      "target_id": 411,
      "target_slot": 0,
      "type": "CLIP"
     },
     {
      "id": 1050,
      "origin_id": 402,
      "origin_slot": 0,
      "target_id": 411,
      "target_slot": 5,
      "type": "STRING"
     },
     {
      "id": 1049,
      "origin_id": 416,
      "origin_slot": 0,
      "target_id": 412,
      "target_slot": 0,
      "type": "CLIP"
     },
     {
      "id": 1052,
      "origin_id": 405,
      "origin_slot": 0,
      "target_id": 412,
      "target_slot": 1,
      "type": "IMAGE"
     },
     {
      "id": 1051,
      "origin_id": 409,
      "origin_slot": 0,
      "target_id": 412,
      "target_slot": 5,
      "type": "STRING"
     },
     {
      "id": 1141,
      "origin_id": 406,
      "origin_slot": 2,
      "target_id": 409,
      "target_slot": 4,
      "type": "INT"
     },
     {
      "id": 1142,
      "origin_id": -10,
      "origin_slot": 9,
      "target_id": 416,
      "target_slot": 1,
      "type": "CLIP"
     },
     {
      "id": 1143,
      "origin_id": 413,
      "origin_slot": 0,
      "target_id": 415,
      "target_slot": 1,
      "type": "STRING"
     },
     {
      "id": 1144,
      "origin_id": -10,
      "origin_slot": 0,
      "target_id": 415,
      "target_slot": 0,
      "type": "STRING"
     },
     {
      "id": 1145,
      "origin_id": -10,
      "origin_slot": 13,
      "target_id": 415,
      "target_slot": 2,
      "type": "BOOLEAN"
     }
    ],
    "extra": {}
   },
   {
    "id": "cb4401eb-1636-558a-bc9a-95a42a91ff55",
    "version": 1,
    "state": {
     "lastGroupId": 22,
     "lastNodeId": 470,
     "lastLinkId": 1132,
     "lastRerouteId": 0
    },
    "revision": 0,
    "config": {},
    "name": "Generate or edit with MiniMax-H3-Image",
    "inputNode": {
     "id": -10,
     "bounding": [
      -260,
      120,
      150,
      380
     ]
    },
    "outputNode": {
     "id": -20,
     "bounding": [
      1150,
      120,
      150,
      60
     ]
    },
    "inputs": [
     {
      "id": "e378d806-6279-58a5-a2cb-08e7fa4011d4",
      "name": "prompt",
      "type": "*",
      "linkIds": [
       1090
      ],
      "localized_name": "prompt",
      "pos": [
       51,
       24
      ]
     },
     {
      "id": "8c4e36a5-7564-5e38-b016-beb87472a0e9",
      "name": "seed",
      "type": "*",
      "linkIds": [
       1096
      ],
      "localized_name": "seed",
      "pos": [
       51,
       44
      ]
     },
     {
      "id": "338a6e40-a095-5c3e-af23-9a33fc6792e9",
      "name": "your picture",
      "type": "IMAGE",
      "linkIds": [
       1082,
       1106,
       1133
      ],
      "localized_name": "your picture",
      "shape": 7,
      "pos": [
       51,
       64
      ]
     },
     {
      "id": "dec178a0-9a53-5948-aae6-64bb3e20b5d2",
      "name": "width",
      "type": "INT",
      "linkIds": [
       1076
      ],
      "localized_name": "width",
      "shape": 7,
      "pos": [
       51,
       84
      ]
     },
     {
      "id": "68f88202-7207-5354-bab8-699d0afb3213",
      "name": "height",
      "type": "INT",
      "linkIds": [
       1077
      ],
      "localized_name": "height",
      "shape": 7,
      "pos": [
       51,
       104
      ]
     },
     {
      "id": "f4d10fe4-3ea5-5c32-ab52-2f1308cea1b1",
      "name": "text encoder",
      "type": "CLIP",
      "linkIds": [
       1080
      ],
      "localized_name": "text encoder",
      "pos": [
       51,
       124
      ]
     },
     {
      "id": "561b9bf2-8043-5d2a-948c-7b754c4ec4f6",
      "name": "vae",
      "type": "VAE",
      "linkIds": [
       1081,
       1103
      ],
      "localized_name": "vae",
      "pos": [
       51,
       144
      ]
     },
     {
      "id": "73bed593-2556-5fe5-b02a-5701e08a112e",
      "name": "diffusion model",
      "type": "MODEL",
      "linkIds": [
       1093
      ],
      "localized_name": "diffusion model",
      "pos": [
       51,
       164
      ]
     },
     {
      "id": "77008f68-bf16-54e5-a7a7-2a53119ec07a",
      "name": "picture 2",
      "type": "IMAGE",
      "linkIds": [
       1083
      ],
      "localized_name": "picture 2",
      "shape": 7,
      "pos": [
       51,
       184
      ]
     },
     {
      "id": "cec05a3f-bc55-5a4c-9fe7-e65cd65f58f5",
      "name": "picture 3",
      "type": "IMAGE",
      "linkIds": [
       1084
      ],
      "localized_name": "picture 3",
      "shape": 7,
      "pos": [
       51,
       204
      ]
     },
     {
      "id": "0f2e346e-7dcd-5262-9896-c4d4270482e8",
      "name": "picture 4",
      "type": "IMAGE",
      "linkIds": [
       1085
      ],
      "localized_name": "picture 4",
      "shape": 7,
      "pos": [
       51,
       224
      ]
     },
     {
      "id": "08177e2f-6189-56f0-ada0-913b1632a0f7",
      "name": "picture 5",
      "type": "IMAGE",
      "linkIds": [
       1086
      ],
      "localized_name": "picture 5",
      "shape": 7,
      "pos": [
       51,
       244
      ]
     },
     {
      "id": "f7ea84c3-bb52-5564-894e-1be0db999049",
      "name": "picture 6",
      "type": "IMAGE",
      "linkIds": [
       1087
      ],
      "localized_name": "picture 6",
      "shape": 7,
      "pos": [
       51,
       264
      ]
     },
     {
      "id": "b9e7d92d-563e-54d5-b0f2-84f777da4993",
      "name": "picture 7",
      "type": "IMAGE",
      "linkIds": [
       1088
      ],
      "localized_name": "picture 7",
      "shape": 7,
      "pos": [
       51,
       284
      ]
     },
     {
      "id": "1c053337-2751-50a5-aaa4-bde5cf99e025",
      "name": "picture 8",
      "type": "IMAGE",
      "linkIds": [
       1089
      ],
      "localized_name": "picture 8",
      "shape": 7,
      "pos": [
       51,
       304
      ]
     },
     {
      "id": "7de47391-7e2b-5bd5-989a-f4416930bd90",
      "name": "size from your picture",
      "type": "BOOLEAN",
      "linkIds": [
       1078,
       1079,
       1107,
       1134
      ],
      "localized_name": "size from your picture",
      "pos": [
       51,
       324
      ]
     },
     {
      "id": "8e51340b-35d0-4f15-8e0a-46661d669a14",
      "name": "fast",
      "type": "BOOLEAN",
      "linkIds": [
       1140
      ],
      "localized_name": "fast",
      "pos": [
       51,
       344
      ]
     }
    ],
    "outputs": [
     {
      "id": "6e33db89-443a-5e03-a35d-16fea34b73fb",
      "name": "picture",
      "type": "IMAGE",
      "linkIds": [
       1104
      ],
      "localized_name": "picture",
      "pos": [
       24,
       24
      ]
     },
     {
      "id": "6898cc09-ae31-5e5a-819f-d9fced960b62",
      "name": "before",
      "type": "IMAGE",
      "linkIds": [
       1108
      ],
      "localized_name": "before",
      "pos": [
       24,
       44
      ]
     }
    ],
    "widgets": [],
    "nodes": [
     {
      "id": 201,
      "type": "AUSBOSS_NODES_Callout",
      "pos": [
       20,
       80
      ],
      "size": [
       460,
       178
      ],
      "flags": {
       "pinned": true
      },
      "order": 0,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "text",
        "name": "text",
        "type": "STRING",
        "widget": {
         "name": "text"
        },
        "link": null
       }
      ],
      "outputs": [],
      "title": "Callout",
      "properties": {
       "Node name for S&R": "AUSBOSS_NODES_Callout",
       "cnr_id": "ausboss-nodes"
      },
      "widgets_values": [
       "MiniMax-H3-Image reads your prompt, your picture as Picture 1 and any extra pictures as Picture 2 and up.\n###### For an edit the size is your picture's, already scaled to 4 or 16 MP. For a new picture it comes from Latent Size."
      ],
      "widgets_values_named": {
       "text": "MiniMax-H3-Image reads your prompt, your picture as Picture 1 and any extra pictures as Picture 2 and up.\n###### For an edit the size is your picture's, already scaled to 4 or 16 MP. For a new picture it comes from Latent Size."
      },
      "color": "#07090a",
      "bgcolor": "#07090a"
     },
     {
      "id": 203,
      "type": "ComfySwitchNode",
      "pos": [
       20,
       492
      ],
      "size": [
       460,
       78
      ],
      "flags": {},
      "order": 5,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "on_false",
        "name": "on_false",
        "shape": 7,
        "type": "INT",
        "link": 1076
       },
       {
        "localized_name": "on_true",
        "name": "on_true",
        "shape": 7,
        "type": "INT",
        "link": 1074
       },
       {
        "localized_name": "switch",
        "name": "switch",
        "type": "BOOLEAN",
        "widget": {
         "name": "switch"
        },
        "link": 1078
       }
      ],
      "outputs": [
       {
        "localized_name": "output",
        "name": "output",
        "type": "INT",
        "links": [
         1091
        ]
       }
      ],
      "title": "If/Else Switch - Whose width",
      "properties": {
       "Node name for S&R": "ComfySwitchNode",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "widgets_values": [
       true
      ],
      "widgets_values_named": {
       "switch": true
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 204,
      "type": "ComfySwitchNode",
      "pos": [
       20,
       640
      ],
      "size": [
       460,
       78
      ],
      "flags": {},
      "order": 6,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "on_false",
        "name": "on_false",
        "shape": 7,
        "type": "INT",
        "link": 1077
       },
       {
        "localized_name": "on_true",
        "name": "on_true",
        "shape": 7,
        "type": "INT",
        "link": 1075
       },
       {
        "localized_name": "switch",
        "name": "switch",
        "type": "BOOLEAN",
        "widget": {
         "name": "switch"
        },
        "link": 1079
       }
      ],
      "outputs": [
       {
        "localized_name": "output",
        "name": "output",
        "type": "INT",
        "links": [
         1092
        ]
       }
      ],
      "title": "If/Else Switch - Whose height",
      "properties": {
       "Node name for S&R": "ComfySwitchNode",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "widgets_values": [
       true
      ],
      "widgets_values_named": {
       "switch": true
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 205,
      "type": "MiniMaxH3ImageConditioning",
      "pos": [
       20,
       788
      ],
      "size": [
       460,
       356
      ],
      "flags": {},
      "order": 7,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "clip",
        "name": "clip",
        "type": "CLIP",
        "link": 1080
       },
       {
        "localized_name": "vae",
        "name": "vae",
        "shape": 7,
        "type": "VAE",
        "link": 1081
       },
       {
        "localized_name": "image_1",
        "name": "images.image_1",
        "shape": 7,
        "type": "IMAGE",
        "link": 1082
       },
       {
        "localized_name": "image_2",
        "name": "images.image_2",
        "shape": 7,
        "type": "IMAGE",
        "link": 1083
       },
       {
        "localized_name": "image_3",
        "name": "images.image_3",
        "shape": 7,
        "type": "IMAGE",
        "link": 1084
       },
       {
        "localized_name": "image_4",
        "name": "images.image_4",
        "shape": 7,
        "type": "IMAGE",
        "link": 1085
       },
       {
        "localized_name": "image_5",
        "name": "images.image_5",
        "shape": 7,
        "type": "IMAGE",
        "link": 1086
       },
       {
        "localized_name": "image_6",
        "name": "images.image_6",
        "shape": 7,
        "type": "IMAGE",
        "link": 1087
       },
       {
        "localized_name": "image_7",
        "name": "images.image_7",
        "shape": 7,
        "type": "IMAGE",
        "link": 1088
       },
       {
        "localized_name": "image_8",
        "name": "images.image_8",
        "shape": 7,
        "type": "IMAGE",
        "link": 1089
       },
       {
        "localized_name": "prompt",
        "name": "prompt",
        "type": "STRING",
        "widget": {
         "name": "prompt"
        },
        "link": 1090
       },
       {
        "localized_name": "width",
        "name": "width",
        "type": "INT",
        "widget": {
         "name": "width"
        },
        "link": 1091
       },
       {
        "localized_name": "height",
        "name": "height",
        "type": "INT",
        "widget": {
         "name": "height"
        },
        "link": 1092
       }
      ],
      "outputs": [
       {
        "localized_name": "positive",
        "name": "positive",
        "type": "CONDITIONING",
        "links": [
         1095
        ]
       },
       {
        "localized_name": "LATENT",
        "name": "LATENT",
        "type": "LATENT",
        "links": [
         1101
        ]
       }
      ],
      "title": "MiniMax H3 Image Conditioning - Your prompt and pictures",
      "properties": {
       "Node name for S&R": "MiniMaxH3ImageConditioning",
       "cnr_id": "comfy-core",
       "ver": "ede4e5fe8"
      },
      "widgets_values": [
       "",
       0,
       0
      ],
      "widgets_values_named": {
       "prompt": "",
       "width": 0,
       "height": 0
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 206,
      "type": "AUSBOSS_NODES_Callout",
      "pos": [
       560,
       80
      ],
      "size": [
       460,
       178
      ],
      "flags": {
       "pinned": true
      },
      "order": 2,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "text",
        "name": "text",
        "type": "STRING",
        "widget": {
         "name": "text"
        },
        "link": null
       }
      ],
      "outputs": [],
      "title": "Callout",
      "properties": {
       "Node name for S&R": "AUSBOSS_NODES_Callout",
       "cnr_id": "ausboss-nodes"
      },
      "widgets_values": [
       "6 steps, no CFG: the model is made for it. **Fast** swaps in the pDMD LoRA's 2 steps.\n###### The maker's own 6-step list and euler. No shift node: the model keeps its own schedule. The seed comes from the top level."
      ],
      "widgets_values_named": {
       "text": "6 steps, no CFG: the model is made for it. **Fast** swaps in the pDMD LoRA's 2 steps.\n###### The maker's own 6-step list and euler. No shift node: the model keeps its own schedule. The seed comes from the top level."
      },
      "color": "#07090a",
      "bgcolor": "#07090a"
     },
     {
      "id": 208,
      "type": "BasicGuider",
      "pos": [
       560,
       508
      ],
      "size": [
       460,
       50
      ],
      "flags": {},
      "order": 9,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "model",
        "name": "model",
        "type": "MODEL",
        "link": 1093
       },
       {
        "localized_name": "conditioning",
        "name": "conditioning",
        "type": "CONDITIONING",
        "link": 1095
       }
      ],
      "outputs": [
       {
        "localized_name": "GUIDER",
        "name": "GUIDER",
        "type": "GUIDER",
        "links": [
         1098
        ]
       }
      ],
      "title": "Basic Guider - No CFG",
      "properties": {
       "Node name for S&R": "BasicGuider",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 209,
      "type": "RandomNoise",
      "pos": [
       560,
       628
      ],
      "size": [
       460,
       82
      ],
      "flags": {},
      "order": 10,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "noise_seed",
        "name": "noise_seed",
        "type": "INT",
        "widget": {
         "name": "noise_seed"
        },
        "link": 1096
       }
      ],
      "outputs": [
       {
        "localized_name": "NOISE",
        "name": "NOISE",
        "type": "NOISE",
        "links": [
         1097
        ]
       }
      ],
      "title": "Random Noise - Seed from the top level",
      "properties": {
       "Node name for S&R": "RandomNoise",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "widgets_values": [
       0,
       "fixed"
      ],
      "widgets_values_named": {
       "noise_seed": 0,
       "control_after_generate": "fixed"
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 210,
      "type": "KSamplerSelect",
      "pos": [
       560,
       780
      ],
      "size": [
       460,
       58
      ],
      "flags": {},
      "order": 3,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "sampler_name",
        "name": "sampler_name",
        "type": "COMBO",
        "widget": {
         "name": "sampler_name"
        },
        "link": null
       }
      ],
      "outputs": [
       {
        "localized_name": "SAMPLER",
        "name": "SAMPLER",
        "type": "SAMPLER",
        "links": [
         1099
        ]
       }
      ],
      "title": "Sampler: euler",
      "properties": {
       "Node name for S&R": "KSamplerSelect",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "widgets_values": [
       "euler"
      ],
      "widgets_values_named": {
       "sampler_name": "euler"
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 211,
      "type": "ManualSigmas",
      "pos": [
       560,
       908
      ],
      "size": [
       460,
       100
      ],
      "flags": {},
      "order": 4,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "sigmas",
        "name": "sigmas",
        "type": "STRING",
        "widget": {
         "name": "sigmas"
        },
        "link": null
       }
      ],
      "outputs": [
       {
        "localized_name": "SIGMAS",
        "name": "SIGMAS",
        "type": "SIGMAS",
        "links": [
         1100
        ]
       }
      ],
      "title": "The maker's 6 steps",
      "properties": {
       "Node name for S&R": "ManualSigmas",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "widgets_values": [
       "1.0, 0.967524, 0.887549, 0.75, 0.532774, 0.232009, 0.0"
      ],
      "widgets_values_named": {
       "sigmas": "1.0, 0.967524, 0.887549, 0.75, 0.532774, 0.232009, 0.0"
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 212,
      "type": "SamplerCustomAdvanced",
      "pos": [
       560,
       1078
      ],
      "size": [
       460,
       110
      ],
      "flags": {},
      "order": 11,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "noise",
        "name": "noise",
        "type": "NOISE",
        "link": 1097
       },
       {
        "localized_name": "guider",
        "name": "guider",
        "type": "GUIDER",
        "link": 1098
       },
       {
        "localized_name": "sampler",
        "name": "sampler",
        "type": "SAMPLER",
        "link": 1099
       },
       {
        "localized_name": "sigmas",
        "name": "sigmas",
        "type": "SIGMAS",
        "link": 1139
       },
       {
        "localized_name": "latent_image",
        "name": "latent_image",
        "type": "LATENT",
        "link": 1101
       }
      ],
      "outputs": [
       {
        "localized_name": "output",
        "name": "output",
        "type": "LATENT",
        "links": [
         1102
        ]
       },
       {
        "localized_name": "denoised_output",
        "name": "denoised_output",
        "type": "LATENT",
        "links": []
       }
      ],
      "title": "Sampler - 6 steps, or 2 with Fast",
      "properties": {
       "Node name for S&R": "SamplerCustomAdvanced",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 213,
      "type": "VAEDecode",
      "pos": [
       560,
       1258
      ],
      "size": [
       460,
       46
      ],
      "flags": {},
      "order": 12,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "samples",
        "name": "samples",
        "type": "LATENT",
        "link": 1102
       },
       {
        "localized_name": "vae",
        "name": "vae",
        "type": "VAE",
        "link": 1103
       }
      ],
      "outputs": [
       {
        "localized_name": "IMAGE",
        "name": "IMAGE",
        "type": "IMAGE",
        "links": [
         1104,
         1105
        ]
       }
      ],
      "title": "Decode",
      "properties": {
       "Node name for S&R": "VAEDecode",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 460,
      "type": "ComfySwitchNode",
      "pos": [
       560,
       1374
      ],
      "size": [
       460,
       78
      ],
      "flags": {},
      "order": 13,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "on_false",
        "name": "on_false",
        "shape": 7,
        "type": "IMAGE",
        "link": 1105
       },
       {
        "localized_name": "on_true",
        "name": "on_true",
        "shape": 7,
        "type": "IMAGE",
        "link": 1106
       },
       {
        "localized_name": "switch",
        "name": "switch",
        "type": "BOOLEAN",
        "widget": {
         "name": "switch"
        },
        "link": 1107
       }
      ],
      "outputs": [
       {
        "localized_name": "output",
        "name": "output",
        "type": "IMAGE",
        "links": [
         1108
        ]
       }
      ],
      "title": "If/Else Switch - Original for an edit, result for a new picture",
      "properties": {
       "Node name for S&R": "ComfySwitchNode",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "widgets_values": [
       true
      ],
      "widgets_values_named": {
       "switch": true
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 473,
      "type": "ComfySwitchNode",
      "pos": [
       -240,
       328
      ],
      "size": [
       460,
       78
      ],
      "flags": {},
      "order": 13,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "on_false",
        "name": "on_false",
        "shape": 7,
        "type": "IMAGE",
        "link": null
       },
       {
        "localized_name": "on_true",
        "name": "on_true",
        "shape": 7,
        "type": "IMAGE",
        "link": 1133
       },
       {
        "localized_name": "switch",
        "name": "switch",
        "type": "BOOLEAN",
        "widget": {
         "name": "switch"
        },
        "link": 1134
       }
      ],
      "outputs": [
       {
        "localized_name": "output",
        "name": "output",
        "type": "IMAGE",
        "links": [
         1135
        ]
       }
      ],
      "title": "If/Else Switch - Your picture, edits only",
      "properties": {
       "Node name for S&R": "ComfySwitchNode",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "widgets_values": [
       true
      ],
      "widgets_values_named": {
       "switch": true
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 470,
      "type": "GetImageSize",
      "pos": [
       20,
       328
      ],
      "size": [
       460,
       90
      ],
      "flags": {},
      "order": 8,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "image",
        "name": "image",
        "type": "IMAGE",
        "link": 1135
       }
      ],
      "outputs": [
       {
        "localized_name": "width",
        "name": "width",
        "type": "INT",
        "links": [
         1136
        ]
       },
       {
        "localized_name": "height",
        "name": "height",
        "type": "INT",
        "links": [
         1137
        ]
       },
       {
        "localized_name": "batch_size",
        "name": "batch_size",
        "type": "INT",
        "links": []
       }
      ],
      "title": "Get Image Size - Your picture",
      "properties": {
       "Node name for S&R": "GetImageSize",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 471,
      "type": "AUSBOSS_NODES_MathExpression",
      "pos": [
       20,
       438
      ],
      "size": [
       300,
       134
      ],
      "flags": {
       "collapsed": true
      },
      "order": 24,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "a",
        "name": "a",
        "shape": 7,
        "type": "FLOAT,INT",
        "link": 1136
       },
       {
        "localized_name": "b",
        "name": "b",
        "shape": 7,
        "type": "FLOAT,INT",
        "link": null
       },
       {
        "localized_name": "c",
        "name": "c",
        "shape": 7,
        "type": "FLOAT,INT",
        "link": null
       },
       {
        "localized_name": "expression",
        "name": "expression",
        "type": "STRING",
        "widget": {
         "name": "expression"
        },
        "link": null
       }
      ],
      "outputs": [
       {
        "localized_name": "float",
        "name": "float",
        "type": "FLOAT",
        "links": []
       },
       {
        "localized_name": "int",
        "name": "int",
        "type": "INT",
        "links": [
         1074
        ]
       }
      ],
      "title": "Width of your picture, to 32",
      "properties": {
       "Node name for S&R": "AUSBOSS_NODES_MathExpression"
      },
      "widgets_values": [
       "round(a / 32) * 32"
      ],
      "widgets_values_named": {
       "expression": "round(a / 32) * 32"
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 472,
      "type": "AUSBOSS_NODES_MathExpression",
      "pos": [
       20,
       548
      ],
      "size": [
       300,
       134
      ],
      "flags": {
       "collapsed": true
      },
      "order": 24,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "a",
        "name": "a",
        "shape": 7,
        "type": "FLOAT,INT",
        "link": 1137
       },
       {
        "localized_name": "b",
        "name": "b",
        "shape": 7,
        "type": "FLOAT,INT",
        "link": null
       },
       {
        "localized_name": "c",
        "name": "c",
        "shape": 7,
        "type": "FLOAT,INT",
        "link": null
       },
       {
        "localized_name": "expression",
        "name": "expression",
        "type": "STRING",
        "widget": {
         "name": "expression"
        },
        "link": null
       }
      ],
      "outputs": [
       {
        "localized_name": "float",
        "name": "float",
        "type": "FLOAT",
        "links": []
       },
       {
        "localized_name": "int",
        "name": "int",
        "type": "INT",
        "links": [
         1075
        ]
       }
      ],
      "title": "Height of your picture, to 32",
      "properties": {
       "Node name for S&R": "AUSBOSS_NODES_MathExpression"
      },
      "widgets_values": [
       "round(a / 32) * 32"
      ],
      "widgets_values_named": {
       "expression": "round(a / 32) * 32"
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 474,
      "type": "ManualSigmas",
      "pos": [
       560,
       1048
      ],
      "size": [
       460,
       100
      ],
      "flags": {},
      "order": 4,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "sigmas",
        "name": "sigmas",
        "type": "STRING",
        "widget": {
         "name": "sigmas"
        },
        "link": null
       }
      ],
      "outputs": [
       {
        "localized_name": "SIGMAS",
        "name": "SIGMAS",
        "type": "SIGMAS",
        "links": [
         1138
        ]
       }
      ],
      "title": "pDMD's 2 steps (Fast)",
      "properties": {
       "Node name for S&R": "ManualSigmas",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "widgets_values": [
       "1.0, 0.923077, 0.0"
      ],
      "widgets_values_named": {
       "sigmas": "1.0, 0.923077, 0.0"
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 475,
      "type": "ComfySwitchNode",
      "pos": [
       560,
       1188
      ],
      "size": [
       460,
       78
      ],
      "flags": {},
      "order": 13,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "on_false",
        "name": "on_false",
        "shape": 7,
        "type": "SIGMAS",
        "link": 1100
       },
       {
        "localized_name": "on_true",
        "name": "on_true",
        "shape": 7,
        "type": "SIGMAS",
        "link": 1138
       },
       {
        "localized_name": "switch",
        "name": "switch",
        "type": "BOOLEAN",
        "widget": {
         "name": "switch"
        },
        "link": 1140
       }
      ],
      "outputs": [
       {
        "localized_name": "output",
        "name": "output",
        "type": "SIGMAS",
        "links": [
         1139
        ]
       }
      ],
      "title": "If/Else Switch - Fast or the maker's 6 steps",
      "properties": {
       "Node name for S&R": "ComfySwitchNode",
       "cnr_id": "comfy-core",
       "ver": "0.44.0"
      },
      "widgets_values": [
       false
      ],
      "widgets_values_named": {
       "switch": false
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     }
    ],
    "groups": [
     {
      "id": 8,
      "title": "1 · Read",
      "bounding": [
       0,
       0,
       500,
       1138
      ],
      "color": "#1d5560",
      "flags": {
       "pinned": true
      }
     },
     {
      "id": 9,
      "title": "2 · Draw",
      "bounding": [
       540,
       0,
       500,
       1472
      ],
      "color": "#1d5560",
      "flags": {
       "pinned": true
      }
     }
    ],
    "links": [
     {
      "id": 1074,
      "origin_id": 471,
      "origin_slot": 1,
      "target_id": 203,
      "target_slot": 1,
      "type": "INT"
     },
     {
      "id": 1075,
      "origin_id": 472,
      "origin_slot": 1,
      "target_id": 204,
      "target_slot": 1,
      "type": "INT"
     },
     {
      "id": 1076,
      "origin_id": -10,
      "origin_slot": 3,
      "target_id": 203,
      "target_slot": 0,
      "type": "INT"
     },
     {
      "id": 1077,
      "origin_id": -10,
      "origin_slot": 4,
      "target_id": 204,
      "target_slot": 0,
      "type": "INT"
     },
     {
      "id": 1078,
      "origin_id": -10,
      "origin_slot": 15,
      "target_id": 203,
      "target_slot": 2,
      "type": "BOOLEAN"
     },
     {
      "id": 1079,
      "origin_id": -10,
      "origin_slot": 15,
      "target_id": 204,
      "target_slot": 2,
      "type": "BOOLEAN"
     },
     {
      "id": 1093,
      "origin_id": -10,
      "origin_slot": 7,
      "target_id": 208,
      "target_slot": 0,
      "type": "MODEL"
     },
     {
      "id": 1095,
      "origin_id": 205,
      "origin_slot": 0,
      "target_id": 208,
      "target_slot": 1,
      "type": "CONDITIONING"
     },
     {
      "id": 1096,
      "origin_id": -10,
      "origin_slot": 1,
      "target_id": 209,
      "target_slot": 0,
      "type": "*"
     },
     {
      "id": 1097,
      "origin_id": 209,
      "origin_slot": 0,
      "target_id": 212,
      "target_slot": 0,
      "type": "NOISE"
     },
     {
      "id": 1098,
      "origin_id": 208,
      "origin_slot": 0,
      "target_id": 212,
      "target_slot": 1,
      "type": "GUIDER"
     },
     {
      "id": 1099,
      "origin_id": 210,
      "origin_slot": 0,
      "target_id": 212,
      "target_slot": 2,
      "type": "SAMPLER"
     },
     {
      "id": 1100,
      "origin_id": 211,
      "origin_slot": 0,
      "target_id": 475,
      "target_slot": 0,
      "type": "SIGMAS"
     },
     {
      "id": 1101,
      "origin_id": 205,
      "origin_slot": 1,
      "target_id": 212,
      "target_slot": 4,
      "type": "LATENT"
     },
     {
      "id": 1102,
      "origin_id": 212,
      "origin_slot": 0,
      "target_id": 213,
      "target_slot": 0,
      "type": "LATENT"
     },
     {
      "id": 1103,
      "origin_id": -10,
      "origin_slot": 6,
      "target_id": 213,
      "target_slot": 1,
      "type": "VAE"
     },
     {
      "id": 1104,
      "origin_id": 213,
      "origin_slot": 0,
      "target_id": -20,
      "target_slot": 0,
      "type": "IMAGE"
     },
     {
      "id": 1105,
      "origin_id": 213,
      "origin_slot": 0,
      "target_id": 460,
      "target_slot": 0,
      "type": "IMAGE"
     },
     {
      "id": 1106,
      "origin_id": -10,
      "origin_slot": 2,
      "target_id": 460,
      "target_slot": 1,
      "type": "IMAGE"
     },
     {
      "id": 1107,
      "origin_id": -10,
      "origin_slot": 15,
      "target_id": 460,
      "target_slot": 2,
      "type": "BOOLEAN"
     },
     {
      "id": 1108,
      "origin_id": 460,
      "origin_slot": 0,
      "target_id": -20,
      "target_slot": 1,
      "type": "IMAGE"
     },
     {
      "id": 1080,
      "origin_id": -10,
      "origin_slot": 5,
      "target_id": 205,
      "target_slot": 0,
      "type": "CLIP"
     },
     {
      "id": 1081,
      "origin_id": -10,
      "origin_slot": 6,
      "target_id": 205,
      "target_slot": 1,
      "type": "VAE"
     },
     {
      "id": 1082,
      "origin_id": -10,
      "origin_slot": 2,
      "target_id": 205,
      "target_slot": 2,
      "type": "IMAGE"
     },
     {
      "id": 1083,
      "origin_id": -10,
      "origin_slot": 8,
      "target_id": 205,
      "target_slot": 3,
      "type": "IMAGE"
     },
     {
      "id": 1084,
      "origin_id": -10,
      "origin_slot": 9,
      "target_id": 205,
      "target_slot": 4,
      "type": "IMAGE"
     },
     {
      "id": 1085,
      "origin_id": -10,
      "origin_slot": 10,
      "target_id": 205,
      "target_slot": 5,
      "type": "IMAGE"
     },
     {
      "id": 1086,
      "origin_id": -10,
      "origin_slot": 11,
      "target_id": 205,
      "target_slot": 6,
      "type": "IMAGE"
     },
     {
      "id": 1087,
      "origin_id": -10,
      "origin_slot": 12,
      "target_id": 205,
      "target_slot": 7,
      "type": "IMAGE"
     },
     {
      "id": 1088,
      "origin_id": -10,
      "origin_slot": 13,
      "target_id": 205,
      "target_slot": 8,
      "type": "IMAGE"
     },
     {
      "id": 1089,
      "origin_id": -10,
      "origin_slot": 14,
      "target_id": 205,
      "target_slot": 9,
      "type": "IMAGE"
     },
     {
      "id": 1090,
      "origin_id": -10,
      "origin_slot": 0,
      "target_id": 205,
      "target_slot": 11,
      "type": "*"
     },
     {
      "id": 1091,
      "origin_id": 203,
      "origin_slot": 0,
      "target_id": 205,
      "target_slot": 12,
      "type": "INT"
     },
     {
      "id": 1092,
      "origin_id": 204,
      "origin_slot": 0,
      "target_id": 205,
      "target_slot": 13,
      "type": "INT"
     },
     {
      "id": 1133,
      "origin_id": -10,
      "origin_slot": 2,
      "target_id": 473,
      "target_slot": 1,
      "type": "IMAGE"
     },
     {
      "id": 1134,
      "origin_id": -10,
      "origin_slot": 15,
      "target_id": 473,
      "target_slot": 2,
      "type": "BOOLEAN"
     },
     {
      "id": 1135,
      "origin_id": 473,
      "origin_slot": 0,
      "target_id": 470,
      "target_slot": 0,
      "type": "IMAGE"
     },
     {
      "id": 1136,
      "origin_id": 470,
      "origin_slot": 0,
      "target_id": 471,
      "target_slot": 0,
      "type": "INT"
     },
     {
      "id": 1137,
      "origin_id": 470,
      "origin_slot": 1,
      "target_id": 472,
      "target_slot": 0,
      "type": "INT"
     },
     {
      "id": 1138,
      "origin_id": 474,
      "origin_slot": 0,
      "target_id": 475,
      "target_slot": 1,
      "type": "SIGMAS"
     },
     {
      "id": 1139,
      "origin_id": 475,
      "origin_slot": 0,
      "target_id": 212,
      "target_slot": 3,
      "type": "SIGMAS"
     },
     {
      "id": 1140,
      "origin_id": -10,
      "origin_slot": 16,
      "target_id": 475,
      "target_slot": 2,
      "type": "BOOLEAN"
     }
    ],
    "extra": {}
   },
   {
    "id": "5a45399a-b68e-5039-90e9-93ae815a69f1",
    "version": 1,
    "state": {
     "lastGroupId": 22,
     "lastNodeId": 470,
     "lastLinkId": 1132,
     "lastRerouteId": 0
    },
    "revision": 0,
    "config": {},
    "name": "Enlarge 2x with SeedVR2",
    "inputNode": {
     "id": -10,
     "bounding": [
      -260,
      120,
      170,
      160
     ]
    },
    "outputNode": {
     "id": -20,
     "bounding": [
      1100,
      120,
      170,
      80
     ]
    },
    "inputs": [
     {
      "id": "8dd17145-4fe8-5834-8151-9c977ef0ab6e",
      "name": "picture",
      "type": "IMAGE",
      "linkIds": [
       1109
      ],
      "localized_name": "picture",
      "pos": [
       0,
       0
      ]
     },
     {
      "id": "15db1f43-c6b7-5531-a354-54d92748709e",
      "name": "seed",
      "type": "INT",
      "linkIds": [
       1119
      ],
      "localized_name": "seed",
      "pos": [
       0,
       0
      ]
     },
     {
      "id": "8b28c901-3563-58fa-bc86-9e182f334dab",
      "name": "seedvr2 model",
      "type": "MODEL",
      "linkIds": [
       1113,
       1115
      ],
      "localized_name": "seedvr2 model",
      "pos": [
       0,
       0
      ]
     },
     {
      "id": "45092028-0346-50c4-837c-f77fee388519",
      "name": "seedvr2 vae",
      "type": "VAE",
      "linkIds": [
       1112,
       1121
      ],
      "localized_name": "seedvr2 vae",
      "pos": [
       0,
       0
      ]
     }
    ],
    "outputs": [
     {
      "id": "2c93f631-0cbe-5e5a-89dc-baba1651ee29",
      "name": "picture",
      "type": "IMAGE",
      "linkIds": [
       1124
      ],
      "localized_name": "picture",
      "pos": [
       0,
       0
      ]
     }
    ],
    "widgets": [],
    "nodes": [
     {
      "id": 117,
      "type": "AUSBOSS_NODES_Callout",
      "pos": [
       20,
       80
      ],
      "size": [
       460,
       150
      ],
      "flags": {
       "pinned": true
      },
      "order": 0,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "text",
        "name": "text",
        "type": "STRING",
        "widget": {
         "name": "text"
        },
        "link": null
       }
      ],
      "outputs": [],
      "title": "Callout",
      "properties": {
       "Node name for S&R": "AUSBOSS_NODES_Callout",
       "cnr_id": "ausboss-nodes",
       "ver": "2.16.1"
      },
      "widgets_values": [
       "Your picture is made twice as big on each side.\n###### A 4 megapixel picture becomes 16 megapixels."
      ],
      "widgets_values_named": {
       "text": "Your picture is made twice as big on each side.\n###### A 4 megapixel picture becomes 16 megapixels."
      },
      "color": "#07090a",
      "bgcolor": "#07090a"
     },
     {
      "id": 110,
      "type": "AUSBOSS_NODES_ImageResize",
      "pos": [
       20,
       300
      ],
      "size": [
       460,
       330
      ],
      "flags": {},
      "order": 2,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "image",
        "name": "image",
        "type": "IMAGE",
        "link": 1109
       },
       {
        "localized_name": "mask",
        "name": "mask",
        "shape": 7,
        "type": "MASK",
        "link": null
       },
       {
        "localized_name": "target_mode",
        "name": "target_mode",
        "type": "COMBO",
        "widget": {
         "name": "target_mode"
        },
        "link": null
       },
       {
        "localized_name": "width",
        "name": "width",
        "type": "INT",
        "link": null
       },
       {
        "localized_name": "height",
        "name": "height",
        "type": "INT",
        "link": null
       },
       {
        "localized_name": "edge_length",
        "name": "edge_length",
        "type": "INT",
        "widget": {
         "name": "edge_length"
        },
        "link": null
       },
       {
        "localized_name": "megapixels",
        "name": "megapixels",
        "type": "FLOAT",
        "widget": {
         "name": "megapixels"
        },
        "link": null
       },
       {
        "localized_name": "scale_factor",
        "name": "scale_factor",
        "type": "FLOAT",
        "widget": {
         "name": "scale_factor"
        },
        "link": null
       },
       {
        "localized_name": "keep_proportion",
        "name": "keep_proportion",
        "type": "COMBO",
        "widget": {
         "name": "keep_proportion"
        },
        "link": null
       },
       {
        "localized_name": "fill_color",
        "name": "fill_color",
        "type": "STRING",
        "widget": {
         "name": "fill_color"
        },
        "link": null
       },
       {
        "localized_name": "divisible_by",
        "name": "divisible_by",
        "type": "INT",
        "widget": {
         "name": "divisible_by"
        },
        "link": null
       },
       {
        "localized_name": "interpolation",
        "name": "interpolation",
        "type": "COMBO",
        "widget": {
         "name": "interpolation"
        },
        "link": null
       }
      ],
      "outputs": [
       {
        "localized_name": "image",
        "name": "image",
        "type": "IMAGE",
        "links": [
         1110,
         1123
        ]
       },
       {
        "localized_name": "mask",
        "name": "mask",
        "type": "MASK",
        "links": []
       },
       {
        "localized_name": "width",
        "name": "width",
        "type": "INT",
        "links": []
       },
       {
        "localized_name": "height",
        "name": "height",
        "type": "INT",
        "links": []
       }
      ],
      "title": "Image Resize - Twice the size on each side",
      "properties": {
       "Node name for S&R": "AUSBOSS_NODES_ImageResize",
       "cnr_id": "ausboss-nodes",
       "ver": "2.16.1"
      },
      "widgets_values": [
       "scale_factor",
       0,
       0,
       1024,
       1,
       2,
       "fit",
       "#000000",
       16,
       "lanczos"
      ],
      "widgets_values_named": {
       "target_mode": "scale_factor",
       "width": 0,
       "height": 0,
       "edge_length": 1024,
       "megapixels": 1,
       "scale_factor": 2,
       "keep_proportion": "fit",
       "fill_color": "#000000",
       "divisible_by": 16,
       "interpolation": "lanczos"
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 118,
      "type": "AUSBOSS_NODES_Callout",
      "pos": [
       560,
       80
      ],
      "size": [
       460,
       150
      ],
      "flags": {
       "pinned": true
      },
      "order": 1,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "text",
        "name": "text",
        "type": "STRING",
        "widget": {
         "name": "text"
        },
        "link": null
       }
      ],
      "outputs": [],
      "title": "Callout",
      "properties": {
       "Node name for S&R": "AUSBOSS_NODES_Callout",
       "cnr_id": "ausboss-nodes",
       "ver": "2.16.1"
      },
      "widgets_values": [
       "One step of SeedVR2 3B sharpens it.\n###### Then its colors are set back to MiniMax-H3-Image's picture. Its seed is the **Seed**."
      ],
      "widgets_values_named": {
       "text": "One step of SeedVR2 3B sharpens it.\n###### Then its colors are set back to MiniMax-H3-Image's picture. Its seed is the **Seed**."
      },
      "color": "#07090a",
      "bgcolor": "#07090a"
     },
     {
      "id": 111,
      "type": "SeedVR2Preprocess",
      "pos": [
       560,
       300
      ],
      "size": [
       460,
       46
      ],
      "flags": {},
      "order": 3,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "resized_images",
        "name": "resized_images",
        "type": "IMAGE",
        "link": 1110
       }
      ],
      "outputs": [
       {
        "localized_name": "images",
        "name": "images",
        "type": "IMAGE",
        "links": [
         1111
        ]
       }
      ],
      "title": "SeedVR2 Preprocess",
      "properties": {
       "Node name for S&R": "SeedVR2Preprocess",
       "cnr_id": "comfy-core",
       "ver": "0.41.0"
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 112,
      "type": "VAEEncodeTiled",
      "pos": [
       560,
       416
      ],
      "size": [
       460,
       154
      ],
      "flags": {},
      "order": 4,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "pixels",
        "name": "pixels",
        "type": "IMAGE",
        "link": 1111
       },
       {
        "localized_name": "vae",
        "name": "vae",
        "type": "VAE",
        "link": 1112
       },
       {
        "localized_name": "tile_size",
        "name": "tile_size",
        "type": "INT",
        "widget": {
         "name": "tile_size"
        },
        "link": null
       },
       {
        "localized_name": "overlap",
        "name": "overlap",
        "type": "INT",
        "widget": {
         "name": "overlap"
        },
        "link": null
       },
       {
        "localized_name": "temporal_size",
        "name": "temporal_size",
        "type": "INT",
        "widget": {
         "name": "temporal_size"
        },
        "link": null
       },
       {
        "localized_name": "temporal_overlap",
        "name": "temporal_overlap",
        "type": "INT",
        "widget": {
         "name": "temporal_overlap"
        },
        "link": null
       }
      ],
      "outputs": [
       {
        "localized_name": "LATENT",
        "name": "LATENT",
        "type": "LATENT",
        "links": [
         1114,
         1118
        ]
       }
      ],
      "properties": {
       "Node name for S&R": "VAEEncodeTiled",
       "cnr_id": "comfy-core",
       "ver": "0.41.0"
      },
      "widgets_values": [
       512,
       128,
       4096,
       8
      ],
      "widgets_values_named": {
       "tile_size": 512,
       "overlap": 128,
       "temporal_size": 4096,
       "temporal_overlap": 8
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 113,
      "type": "SeedVR2Conditioning",
      "pos": [
       560,
       640
      ],
      "size": [
       460,
       66
      ],
      "flags": {},
      "order": 5,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "model",
        "name": "model",
        "type": "MODEL",
        "link": 1113
       },
       {
        "localized_name": "latent",
        "name": "vae_conditioning",
        "type": "LATENT",
        "link": 1114
       }
      ],
      "outputs": [
       {
        "localized_name": "positive",
        "name": "positive",
        "type": "CONDITIONING",
        "links": [
         1116
        ]
       },
       {
        "localized_name": "negative",
        "name": "negative",
        "type": "CONDITIONING",
        "links": [
         1117
        ]
       }
      ],
      "title": "SeedVR2 Conditioning",
      "properties": {
       "Node name for S&R": "SeedVR2Conditioning",
       "cnr_id": "comfy-core",
       "ver": "0.41.0"
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 114,
      "type": "KSampler",
      "pos": [
       560,
       776
      ],
      "size": [
       460,
       262
      ],
      "flags": {},
      "order": 6,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "model",
        "name": "model",
        "type": "MODEL",
        "link": 1115
       },
       {
        "localized_name": "positive",
        "name": "positive",
        "type": "CONDITIONING",
        "link": 1116
       },
       {
        "localized_name": "negative",
        "name": "negative",
        "type": "CONDITIONING",
        "link": 1117
       },
       {
        "localized_name": "latent_image",
        "name": "latent_image",
        "type": "LATENT",
        "link": 1118
       },
       {
        "localized_name": "seed",
        "name": "seed",
        "type": "INT",
        "widget": {
         "name": "seed"
        },
        "link": 1119
       },
       {
        "localized_name": "steps",
        "name": "steps",
        "type": "INT",
        "widget": {
         "name": "steps"
        },
        "link": null
       },
       {
        "localized_name": "cfg",
        "name": "cfg",
        "type": "FLOAT",
        "widget": {
         "name": "cfg"
        },
        "link": null
       },
       {
        "localized_name": "sampler_name",
        "name": "sampler_name",
        "type": "COMBO",
        "widget": {
         "name": "sampler_name"
        },
        "link": null
       },
       {
        "localized_name": "scheduler",
        "name": "scheduler",
        "type": "COMBO",
        "widget": {
         "name": "scheduler"
        },
        "link": null
       },
       {
        "localized_name": "denoise",
        "name": "denoise",
        "type": "FLOAT",
        "widget": {
         "name": "denoise"
        },
        "link": null
       }
      ],
      "outputs": [
       {
        "localized_name": "LATENT",
        "name": "LATENT",
        "type": "LATENT",
        "links": [
         1120
        ]
       }
      ],
      "title": "KSampler - 1 step, CFG 1",
      "properties": {
       "Node name for S&R": "KSampler",
       "cnr_id": "comfy-core",
       "ver": "0.41.0"
      },
      "widgets_values": [
       20261017,
       "fixed",
       1,
       1,
       "euler",
       "simple",
       1
      ],
      "widgets_values_named": {
       "seed": 20261017,
       "control_after_generate": "fixed",
       "steps": 1,
       "cfg": 1,
       "sampler_name": "euler",
       "scheduler": "simple",
       "denoise": 1
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 115,
      "type": "VAEDecodeTiled",
      "pos": [
       560,
       1108
      ],
      "size": [
       460,
       154
      ],
      "flags": {},
      "order": 7,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "samples",
        "name": "samples",
        "type": "LATENT",
        "link": 1120
       },
       {
        "localized_name": "vae",
        "name": "vae",
        "type": "VAE",
        "link": 1121
       },
       {
        "localized_name": "tile_size",
        "name": "tile_size",
        "type": "INT",
        "widget": {
         "name": "tile_size"
        },
        "link": null
       },
       {
        "localized_name": "overlap",
        "name": "overlap",
        "type": "INT",
        "widget": {
         "name": "overlap"
        },
        "link": null
       },
       {
        "localized_name": "temporal_size",
        "name": "temporal_size",
        "type": "INT",
        "widget": {
         "name": "temporal_size"
        },
        "link": null
       },
       {
        "localized_name": "temporal_overlap",
        "name": "temporal_overlap",
        "type": "INT",
        "widget": {
         "name": "temporal_overlap"
        },
        "link": null
       }
      ],
      "outputs": [
       {
        "localized_name": "IMAGE",
        "name": "IMAGE",
        "type": "IMAGE",
        "links": [
         1122
        ]
       }
      ],
      "properties": {
       "Node name for S&R": "VAEDecodeTiled",
       "cnr_id": "comfy-core",
       "ver": "0.41.0"
      },
      "widgets_values": [
       512,
       128,
       4096,
       8
      ],
      "widgets_values_named": {
       "tile_size": 512,
       "overlap": 128,
       "temporal_size": 4096,
       "temporal_overlap": 8
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     },
     {
      "id": 116,
      "type": "SeedVR2PostProcessing",
      "pos": [
       560,
       1332
      ],
      "size": [
       460,
       82
      ],
      "flags": {},
      "order": 8,
      "mode": 0,
      "inputs": [
       {
        "localized_name": "images",
        "name": "images",
        "type": "IMAGE",
        "link": 1122
       },
       {
        "localized_name": "original_resized_images",
        "name": "original_resized_images",
        "type": "IMAGE",
        "link": 1123
       },
       {
        "localized_name": "color_correction_method",
        "name": "color_correction_method",
        "type": "COMBO",
        "widget": {
         "name": "color_correction_method"
        },
        "link": null
       }
      ],
      "outputs": [
       {
        "localized_name": "images",
        "name": "images",
        "type": "IMAGE",
        "links": [
         1124
        ]
       }
      ],
      "title": "SeedVR2 Post Processing - Colors back to MiniMax-H3-Image's",
      "properties": {
       "Node name for S&R": "SeedVR2PostProcessing",
       "cnr_id": "comfy-core",
       "ver": "0.41.0"
      },
      "widgets_values": [
       "lab"
      ],
      "widgets_values_named": {
       "color_correction_method": "lab"
      },
      "color": "#14424d",
      "bgcolor": "#161f21"
     }
    ],
    "groups": [
     {
      "id": 15,
      "title": "1 · Twice the size",
      "bounding": [
       0,
       0,
       500,
       650
      ],
      "color": "#1d5560",
      "flags": {
       "pinned": true
      }
     },
     {
      "id": 16,
      "title": "2 · SeedVR2 sharpens it",
      "bounding": [
       540,
       0,
       500,
       1434
      ],
      "color": "#1d5560",
      "flags": {
       "pinned": true
      }
     }
    ],
    "links": [
     {
      "id": 1109,
      "origin_id": -10,
      "origin_slot": 0,
      "target_id": 110,
      "target_slot": 0,
      "type": "IMAGE"
     },
     {
      "id": 1110,
      "origin_id": 110,
      "origin_slot": 0,
      "target_id": 111,
      "target_slot": 0,
      "type": "IMAGE"
     },
     {
      "id": 1111,
      "origin_id": 111,
      "origin_slot": 0,
      "target_id": 112,
      "target_slot": 0,
      "type": "IMAGE"
     },
     {
      "id": 1112,
      "origin_id": -10,
      "origin_slot": 3,
      "target_id": 112,
      "target_slot": 1,
      "type": "VAE"
     },
     {
      "id": 1113,
      "origin_id": -10,
      "origin_slot": 2,
      "target_id": 113,
      "target_slot": 0,
      "type": "MODEL"
     },
     {
      "id": 1114,
      "origin_id": 112,
      "origin_slot": 0,
      "target_id": 113,
      "target_slot": 1,
      "type": "LATENT"
     },
     {
      "id": 1115,
      "origin_id": -10,
      "origin_slot": 2,
      "target_id": 114,
      "target_slot": 0,
      "type": "MODEL"
     },
     {
      "id": 1116,
      "origin_id": 113,
      "origin_slot": 0,
      "target_id": 114,
      "target_slot": 1,
      "type": "CONDITIONING"
     },
     {
      "id": 1117,
      "origin_id": 113,
      "origin_slot": 1,
      "target_id": 114,
      "target_slot": 2,
      "type": "CONDITIONING"
     },
     {
      "id": 1118,
      "origin_id": 112,
      "origin_slot": 0,
      "target_id": 114,
      "target_slot": 3,
      "type": "LATENT"
     },
     {
      "id": 1119,
      "origin_id": -10,
      "origin_slot": 1,
      "target_id": 114,
      "target_slot": 4,
      "type": "INT"
     },
     {
      "id": 1120,
      "origin_id": 114,
      "origin_slot": 0,
      "target_id": 115,
      "target_slot": 0,
      "type": "LATENT"
     },
     {
      "id": 1121,
      "origin_id": -10,
      "origin_slot": 3,
      "target_id": 115,
      "target_slot": 1,
      "type": "VAE"
     },
     {
      "id": 1122,
      "origin_id": 115,
      "origin_slot": 0,
      "target_id": 116,
      "target_slot": 0,
      "type": "IMAGE"
     },
     {
      "id": 1123,
      "origin_id": 110,
      "origin_slot": 0,
      "target_id": 116,
      "target_slot": 1,
      "type": "IMAGE"
     },
     {
      "id": 1124,
      "origin_id": 116,
      "origin_slot": 0,
      "target_id": -20,
      "target_slot": 0,
      "type": "IMAGE"
     }
    ],
    "extra": {}
   }
  ]
 },
 "config": {},
 "extra": {
  "ds": {
   "scale": 0.6000000000000001,
   "offset": [
    -458.2266982269287,
    -1206.1240202128097
   ]
  },
  "frontendVersion": "1.53.6"
 },
 "version": 0.4
}