{
  "64": {
    "inputs": {
      "filename_prefix": "Poster_Resize_Custom",
      "images": [
        "252:251",
        0
      ]
    },
    "class_type": "SaveImage",
    "_meta": {
      "title": "Save Image"
    }
  },
  "66": {
    "inputs": {
      "image": "19e71f06bc6c5cb8cf6784e6972e8d8bfee693069c724256a4979a7ecc73dea0.png"
    },
    "class_type": "LoadImage",
    "_meta": {
      "title": "INPUT POSTER"
    }
  },
  "127": {
    "inputs": {
      "prompt": "visualize this poster (keep its aspect ratio) to a OOH billboard in the street of downtown San Francisco, on top of a two story building. Shot from the perspective of a pedestrian",
      "model": "gemini-3-pro-image-preview",
      "seed": 525989174614994,
      "aspect_ratio": "1:1",
      "resolution": "2K",
      "response_modalities": "IMAGE+TEXT",
      "system_prompt": "You are an expert image-generation engine. You must ALWAYS produce an image.\nInterpret all user input—regardless of format, intent, or abstraction—as literal visual directives for image composition.\nIf a prompt is conversational or lacks specific visual details, you must creatively invent a concrete visual scenario that depicts the concept.\nPrioritize generating the visual representation above any text, formatting, or conversational requests.",
      "images": [
        "128",
        0
      ]
    },
    "class_type": "GeminiImage2Node",
    "_meta": {
      "title": "Nano Banana Pro (Google Gemini Image)"
    }
  },
  "128": {
    "inputs": {
      "image": "4aaa6f9d3fd38c7bc057354fe686e86bff2ab62d0c32118a00c79e3b6a6124f8.png"
    },
    "class_type": "LoadImage",
    "_meta": {
      "title": "INPUT POSTER"
    }
  },
  "129": {
    "inputs": {
      "filename_prefix": "Poster_Mockup",
      "images": [
        "136",
        0
      ]
    },
    "class_type": "SaveImage",
    "_meta": {
      "title": "Save Image"
    }
  },
  "135": {
    "inputs": {
      "images.image0": [
        "142",
        0
      ],
      "images.image1": [
        "235:162",
        0
      ]
    },
    "class_type": "BatchImagesNode",
    "_meta": {
      "title": "Batch Images"
    }
  },
  "136": {
    "inputs": {
      "switch": [
        "141",
        0
      ],
      "on_false": [
        "127",
        0
      ],
      "on_true": [
        "138",
        0
      ]
    },
    "class_type": "ComfySwitchNode",
    "_meta": {
      "title": "If/Else Switch"
    }
  },
  "138": {
    "inputs": {
      "prompt": "replace the billboard of the first image to the poster of the second image",
      "model": "gemini-3-pro-image-preview",
      "seed": 303461698342474,
      "aspect_ratio": "auto",
      "resolution": "2K",
      "response_modalities": "IMAGE+TEXT",
      "system_prompt": "You are an expert image-generation engine. You must ALWAYS produce an image.\nInterpret all user input—regardless of format, intent, or abstraction—as literal visual directives for image composition.\nIf a prompt is conversational or lacks specific visual details, you must creatively invent a concrete visual scenario that depicts the concept.\nPrioritize generating the visual representation above any text, formatting, or conversational requests.",
      "images": [
        "135",
        0
      ]
    },
    "class_type": "GeminiImage2Node",
    "_meta": {
      "title": "Nano Banana Pro (Google Gemini Image)"
    }
  },
  "141": {
    "inputs": {
      "value": true
    },
    "class_type": "PrimitiveBoolean",
    "_meta": {
      "title": "SWITCH TO IMAGE ENVIRONMENT"
    }
  },
  "142": {
    "inputs": {
      "image": "a97310d97857fcfd7be9d99bf123dab798da817fcdeebdea998c9bc9c90574e9.png [output]"
    },
    "class_type": "LoadImage",
    "_meta": {
      "title": "IMAGE"
    }
  },
  "235:153": {
    "inputs": {
      "channel": "red",
      "image": [
        "235:152",
        0
      ]
    },
    "class_type": "ImageToMask",
    "_meta": {
      "title": "Convert Image to Mask"
    }
  },
  "235:229": {
    "inputs": {
      "size": "custom",
      "color": "#ffffff",
      "custom_width": [
        "235:163",
        0
      ],
      "custom_height": [
        "235:163",
        1
      ]
    },
    "class_type": "LayerUtility: ColorImage V2",
    "_meta": {
      "title": "LayerUtility: ColorImage V2"
    }
  },
  "235:158": {
    "inputs": {
      "channel": "red",
      "image": [
        "235:231",
        0
      ]
    },
    "class_type": "ImageToMask",
    "_meta": {
      "title": "Convert Image to Mask"
    }
  },
  "235:230": {
    "inputs": {
      "size": "custom",
      "color": "#000000",
      "custom_width": [
        "235:191",
        0
      ],
      "custom_height": [
        "235:191",
        1
      ]
    },
    "class_type": "LayerUtility: ColorImage V2",
    "_meta": {
      "title": "LayerUtility: ColorImage V2"
    }
  },
  "235:152": {
    "inputs": {
      "resize_behavior": "keep_ratio_fit",
      "image_base": [
        "235:230",
        0
      ],
      "image_to_paste": [
        "235:229",
        0
      ],
      "mask": [
        "235:229",
        0
      ]
    },
    "class_type": "Paste By Mask",
    "_meta": {
      "title": "Paste By Mask"
    }
  },
  "235:231": {
    "inputs": {
      "size": "custom",
      "color": "#ffffff",
      "custom_width": [
        "235:191",
        0
      ],
      "custom_height": [
        "235:191",
        1
      ]
    },
    "class_type": "LayerUtility: ColorImage V2",
    "_meta": {
      "title": "LayerUtility: ColorImage V2"
    }
  },
  "235:168": {
    "inputs": {
      "x": 0,
      "y": 0,
      "operation": "add",
      "destination": [
        "235:158",
        0
      ],
      "source": [
        "235:159",
        0
      ]
    },
    "class_type": "MaskComposite",
    "_meta": {
      "title": "Combine Masks"
    }
  },
  "235:165": {
    "inputs": {
      "resize_behavior": "keep_ratio_fit",
      "image_base": [
        "235:231",
        0
      ],
      "image_to_paste": [
        "128",
        0
      ],
      "mask": [
        "235:152",
        0
      ]
    },
    "class_type": "Paste By Mask",
    "_meta": {
      "title": "Paste By Mask"
    }
  },
  "235:163": {
    "inputs": {
      "image": [
        "128",
        0
      ]
    },
    "class_type": "Get Image Size",
    "_meta": {
      "title": "Get Image Size"
    }
  },
  "235:159": {
    "inputs": {
      "mask": [
        "235:153",
        0
      ]
    },
    "class_type": "InvertMask",
    "_meta": {
      "title": "Invert Mask"
    }
  },
  "235:162": {
    "inputs": {
      "image": [
        "235:165",
        0
      ]
    },
    "class_type": "ImageRemoveAlpha+",
    "_meta": {
      "title": "🔧 Image Remove Alpha"
    }
  },
  "235:191": {
    "inputs": {
      "megapixel": "2.1",
      "aspect_ratio": "1:1 (Perfect Square)",
      "divisible_by": "8",
      "custom_ratio": false,
      "custom_aspect_ratio": "1:1"
    },
    "class_type": "FluxResolutionNode",
    "_meta": {
      "title": "Flux Resolution Calc"
    }
  },
  "243": {
    "inputs": {
      "filename_prefix": "Poster_Resize1",
      "images": [
        "252:250",
        0
      ]
    },
    "class_type": "SaveImage",
    "_meta": {
      "title": "Save Image"
    }
  },
  "245": {
    "inputs": {
      "filename_prefix": "Poster_Resize2",
      "images": [
        "252:249",
        0
      ]
    },
    "class_type": "SaveImage",
    "_meta": {
      "title": "Save Image"
    }
  },
  "247": {
    "inputs": {
      "filename_prefix": "Poster_Resize3",
      "images": [
        "252:248",
        0
      ]
    },
    "class_type": "SaveImage",
    "_meta": {
      "title": "Save Image"
    }
  },
  "252:131": {
    "inputs": {
      "string_a": "Resize the OOH poster to ",
      "string_b": "3:1",
      "delimiter": ""
    },
    "class_type": "StringConcatenate",
    "_meta": {
      "title": "Concatenate Text"
    }
  },
  "252:132": {
    "inputs": {
      "string_b": " aspect ratio. Only move and rescale elements to fit the new format. Maintain all original typography, colors, graphics, logos, and visual hierarchy exactly as they are. No design changes.",
      "delimiter": "",
      "string_a": [
        "252:131",
        0
      ]
    },
    "class_type": "StringConcatenate",
    "_meta": {
      "title": "Concatenate Text"
    }
  },
  "252:248": {
    "inputs": {
      "switch": true,
      "on_false": [
        "66",
        0
      ],
      "on_true": [
        "252:260",
        0
      ]
    },
    "class_type": "ComfySwitchNode",
    "_meta": {
      "title": "If/Else Switch"
    }
  },
  "252:249": {
    "inputs": {
      "switch": true,
      "on_false": [
        "66",
        0
      ],
      "on_true": [
        "252:259",
        0
      ]
    },
    "class_type": "ComfySwitchNode",
    "_meta": {
      "title": "If/Else Switch"
    }
  },
  "252:250": {
    "inputs": {
      "switch": true,
      "on_false": [
        "66",
        0
      ],
      "on_true": [
        "252:258",
        0
      ]
    },
    "class_type": "ComfySwitchNode",
    "_meta": {
      "title": "If/Else Switch"
    }
  },
  "252:251": {
    "inputs": {
      "switch": true,
      "on_false": [
        "66",
        0
      ],
      "on_true": [
        "252:264",
        0
      ]
    },
    "class_type": "ComfySwitchNode",
    "_meta": {
      "title": "If/Else Switch"
    }
  },
  "252:258": {
    "inputs": {
      "prompt": "Resize this OOH poster to the new aspect ratio. Only move and rescale elements to fit the new format. Maintain all original typography, colors, graphics, logos, and visual hierarchy exactly as they are. No design changes.",
      "model": "Nano Banana 2 (Gemini 3.1 Flash Image)",
      "seed": 806105455324093,
      "aspect_ratio": "9:16",
      "resolution": "2K",
      "response_modalities": "IMAGE",
      "thinking_level": "HIGH",
      "system_prompt": "You are an expert image-generation engine. You must ALWAYS produce an image.\nInterpret all user input—regardless of format, intent, or abstraction—as literal visual directives for image composition.\nIf a prompt is conversational or lacks specific visual details, you must creatively invent a concrete visual scenario that depicts the concept.\nPrioritize generating the visual representation above any text, formatting, or conversational requests.",
      "images": [
        "66",
        0
      ]
    },
    "class_type": "GeminiNanoBanana2",
    "_meta": {
      "title": "Nano Banana 2"
    }
  },
  "252:259": {
    "inputs": {
      "prompt": "Resize this OOH poster to the new aspect ratio. Only move and rescale elements to fit the new format. Maintain all original typography, colors, graphics, logos, and visual hierarchy exactly as they are. No design changes.",
      "model": "Nano Banana 2 (Gemini 3.1 Flash Image)",
      "seed": 952769964755599,
      "aspect_ratio": "16:9",
      "resolution": "2K",
      "response_modalities": "IMAGE",
      "thinking_level": "HIGH",
      "system_prompt": "You are an expert image-generation engine. You must ALWAYS produce an image.\nInterpret all user input—regardless of format, intent, or abstraction—as literal visual directives for image composition.\nIf a prompt is conversational or lacks specific visual details, you must creatively invent a concrete visual scenario that depicts the concept.\nPrioritize generating the visual representation above any text, formatting, or conversational requests.",
      "images": [
        "66",
        0
      ]
    },
    "class_type": "GeminiNanoBanana2",
    "_meta": {
      "title": "Nano Banana 2"
    }
  },
  "252:260": {
    "inputs": {
      "prompt": "Resize this OOH poster to the new aspect ratio. Only move and rescale elements to fit the new format. Maintain all original typography, colors, graphics, logos, and visual hierarchy exactly as they are. No design changes.",
      "model": "Nano Banana 2 (Gemini 3.1 Flash Image)",
      "seed": 521333244527813,
      "aspect_ratio": "1:1",
      "resolution": "2K",
      "response_modalities": "IMAGE",
      "thinking_level": "HIGH",
      "system_prompt": "You are an expert image-generation engine. You must ALWAYS produce an image.\nInterpret all user input—regardless of format, intent, or abstraction—as literal visual directives for image composition.\nIf a prompt is conversational or lacks specific visual details, you must creatively invent a concrete visual scenario that depicts the concept.\nPrioritize generating the visual representation above any text, formatting, or conversational requests.",
      "images": [
        "66",
        0
      ]
    },
    "class_type": "GeminiNanoBanana2",
    "_meta": {
      "title": "Nano Banana 2"
    }
  },
  "252:264": {
    "inputs": {
      "model": "Nano Banana 2 (Gemini 3.1 Flash Image)",
      "seed": 188565245405213,
      "aspect_ratio": "auto",
      "resolution": "2K",
      "response_modalities": "IMAGE",
      "thinking_level": "HIGH",
      "system_prompt": "You are an expert image-generation engine. You must ALWAYS produce an image.\nInterpret all user input—regardless of format, intent, or abstraction—as literal visual directives for image composition.\nIf a prompt is conversational or lacks specific visual details, you must creatively invent a concrete visual scenario that depicts the concept.\nPrioritize generating the visual representation above any text, formatting, or conversational requests.",
      "prompt": [
        "252:132",
        0
      ],
      "images": [
        "66",
        0
      ]
    },
    "class_type": "GeminiNanoBanana2",
    "_meta": {
      "title": "Nano Banana 2"
    }
  }
}
