{
 "76": {
  "inputs": {
   "image": "302a798e97a022f87a2c38b90bfea1f0f88ff1a811e3b2d058c70a5b161b30e6.png"
  },
  "class_type": "LoadImage",
  "_meta": {
   "title": "Load Image"
  }
 },
 "156": {
  "inputs": {
   "filename_prefix": "photo_restoration",
   "images": [
    "158:154",
    0
   ]
  },
  "class_type": "SaveImage",
  "_meta": {
   "title": "Save Image"
  }
 },
 "157": {
  "inputs": {
   "image_a": [
    "156",
    0
   ],
   "image_b": [
    "76",
    0
   ],
   "compare_view": {
    "__value__": [
     "",
     ""
    ]
   }
  },
  "class_type": "ImageCompare",
  "_meta": {
   "title": "Compare Images"
  }
 },
 "158:133": {
  "inputs": {
   "shift": 3.1,
   "sampling": "flow",
   "model": [
    "158:145",
    0
   ]
  },
  "class_type": "ModelSamplingAuraFlow",
  "_meta": {
   "title": "ModelSamplingAuraFlow"
  }
 },
 "158:134": {
  "inputs": {
   "vae_name": "qwen_image_vae.safetensors"
  },
  "class_type": "VAELoader",
  "_meta": {
   "title": "Load VAE"
  }
 },
 "158:135": {
  "inputs": {
   "reference_latents_method": "index_timestep_zero",
   "conditioning": [
    "158:137",
    0
   ]
  },
  "class_type": "FluxKontextMultiReferenceLatentMethod",
  "_meta": {
   "title": "Edit Model Reference Method"
  }
 },
 "158:136": {
  "inputs": {
   "reference_latents_method": "index_timestep_zero",
   "conditioning": [
    "158:139",
    0
   ]
  },
  "class_type": "FluxKontextMultiReferenceLatentMethod",
  "_meta": {
   "title": "Edit Model Reference Method"
  }
 },
 "158:137": {
  "inputs": {
   "prompt": "",
   "clip": [
    "158:146",
    0
   ],
   "vae": [
    "158:134",
    0
   ],
   "image1": [
    "158:155",
    0
   ]
  },
  "class_type": "TextEncodeQwenImageEditPlus",
  "_meta": {
   "title": "Text Encode Qwen Image Edit Plus"
  }
 },
 "158:139": {
  "inputs": {
   "clip": [
    "158:146",
    0
   ],
   "prompt": [
    "188",
    0
   ],
   "vae": [
    "158:134",
    0
   ],
   "image1": [
    "158:155",
    0
   ]
  },
  "class_type": "TextEncodeQwenImageEditPlus",
  "_meta": {
   "title": "TextEncodeQwenImageEditPlus (Positive)"
  }
 },
 "158:140": {
  "inputs": {
   "strength": 1,
   "pre_cfg": false,
   "model": [
    "158:133",
    0
   ]
  },
  "class_type": "CFGNorm",
  "_meta": {
   "title": "CFGNorm"
  }
 },
 "158:141": {
  "inputs": {
   "lora_name": "Qwen-Image-Edit-2511-Lightning-4steps-V1.0-bf16.safetensors",
   "strength_model": 1,
   "model": [
    "158:140",
    0
   ]
  },
  "class_type": "LoraLoaderModelOnly",
  "_meta": {
   "title": "Load LoRA"
  }
 },
 "158:142": {
  "inputs": {
   "value": 4
  },
  "class_type": "PrimitiveFloat",
  "_meta": {
   "title": "CFG"
  }
 },
 "158:143": {
  "inputs": {
   "value": 1
  },
  "class_type": "PrimitiveFloat",
  "_meta": {
   "title": "CFG"
  }
 },
 "158:144": {
  "inputs": {
   "pixels": [
    "158:155",
    0
   ],
   "vae": [
    "158:134",
    0
   ]
  },
  "class_type": "VAEEncode",
  "_meta": {
   "title": "VAE Encode"
  }
 },
 "158:145": {
  "inputs": {
   "unet_name": "qwen_image_edit_2511_fp8mixed.safetensors",
   "weight_dtype": "default"
  },
  "class_type": "UNETLoader",
  "_meta": {
   "title": "Load Diffusion Model"
  }
 },
 "158:146": {
  "inputs": {
   "clip_name": "qwen_2.5_vl_7b_fp8_scaled.safetensors",
   "type": "qwen_image",
   "device": "default"
  },
  "class_type": "CLIPLoader",
  "_meta": {
   "title": "Load CLIP"
  }
 },
 "158:147": {
  "inputs": {
   "switch": [
    "158:150",
    0
   ],
   "on_false": [
    "158:140",
    0
   ],
   "on_true": [
    "158:141",
    0
   ]
  },
  "class_type": "ComfySwitchNode",
  "_meta": {
   "title": "Switch (Model)"
  }
 },
 "158:148": {
  "inputs": {
   "value": 4
  },
  "class_type": "PrimitiveInt",
  "_meta": {
   "title": "Steps"
  }
 },
 "158:149": {
  "inputs": {
   "value": 40
  },
  "class_type": "PrimitiveInt",
  "_meta": {
   "title": "Steps"
  }
 },
 "158:150": {
  "inputs": {
   "value": true
  },
  "class_type": "PrimitiveBoolean",
  "_meta": {
   "title": "Enable 4steps LoRA?"
  }
 },
 "158:151": {
  "inputs": {
   "switch": [
    "158:150",
    0
   ],
   "on_false": [
    "158:142",
    0
   ],
   "on_true": [
    "158:143",
    0
   ]
  },
  "class_type": "ComfySwitchNode",
  "_meta": {
   "title": "Switch (CFG)"
  }
 },
 "158:152": {
  "inputs": {
   "switch": [
    "158:150",
    0
   ],
   "on_false": [
    "158:149",
    0
   ],
   "on_true": [
    "158:148",
    0
   ]
  },
  "class_type": "ComfySwitchNode",
  "_meta": {
   "title": "Switch (Steps)"
  }
 },
 "158:153": {
  "inputs": {
   "seed": 179526350171703,
   "sampler_name": "euler",
   "scheduler": "simple",
   "denoise": 1,
   "model": [
    "158:147",
    0
   ],
   "steps": [
    "158:152",
    0
   ],
   "cfg": [
    "158:151",
    0
   ],
   "positive": [
    "158:136",
    0
   ],
   "negative": [
    "158:135",
    0
   ],
   "latent_image": [
    "158:144",
    0
   ]
  },
  "class_type": "KSampler",
  "_meta": {
   "title": "KSampler"
  }
 },
 "158:154": {
  "inputs": {
   "samples": [
    "158:153",
    0
   ],
   "vae": [
    "158:134",
    0
   ]
  },
  "class_type": "VAEDecode",
  "_meta": {
   "title": "VAE Decode"
  }
 },
 "158:155": {
  "inputs": {
   "image": [
    "76",
    0
   ]
  },
  "class_type": "FluxKontextImageScale",
  "_meta": {
   "title": "FluxKontextImageScale"
  }
 },
 "185": {
  "inputs": {
   "value": "Restore this old photograph. Remove all scratches, dust, creases, tears, and stains. Repair faded and damaged areas. Enhance sharpness and fine detail while preserving the original faces, expressions, clothing, and background exactly as they are. Do not change the identity of any person, the composition, or add or remove any objects. High-quality photo restoration."
  },
  "class_type": "PrimitiveStringMultiline",
  "_meta": {
   "title": "Restore Prompt"
  }
 },
 "186": {
  "inputs": {
   "value": "Restore this old photograph. Remove all scratches, dust, creases, tears, and stains. Repair faded and damaged areas. Enhance sharpness and fine detail while preserving the original faces, expressions, clothing, and background exactly as they are. Colorize the photo with realistic, historically accurate colors: natural skin tones, plausible clothing and fabric colors, and true-to-life environment colors. Avoid oversaturated or modern-looking color grading \u2014 the result should look like a well-preserved color photograph from the era. Do not change the identity of any person, the composition, or add or remove any objects. High-quality photo restoration and colorization."
  },
  "class_type": "PrimitiveStringMultiline",
  "_meta": {
   "title": "Restore + Colorize Prompt"
  }
 },
 "187": {
  "inputs": {
   "switch": true,
   "on_false": [
    "185",
    0
   ],
   "on_true": [
    "186",
    0
   ]
  },
  "class_type": "ComfySwitchNode",
  "_meta": {
   "title": "Enhanced Color Restoration"
  }
 },
 "188": {
  "inputs": {
   "source": [
    "187",
    0
   ]
  },
  "class_type": "PreviewAny",
  "_meta": {
   "title": "Final Prompt Preview"
  }
 }
}