diff --git a/README.md b/README.md index 46a6d2b42804793a462ab1c8b758f6f26e811b50..e95b08b3ac93513136acf89717f11caeb0829373 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,6 @@ --- -title: Local Gradio -emoji: 📚 -colorFrom: indigo -colorTo: green -sdk: gradio -sdk_version: 4.36.1 +title: local_gradio app_file: app.py -pinned: false +sdk: gradio +sdk_version: 3.48.0 --- - -Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference diff --git a/app.py b/app.py new file mode 100644 index 0000000000000000000000000000000000000000..2dd2c38609bc5f32d72b1f71d5b24df073e0e782 --- /dev/null +++ b/app.py @@ -0,0 +1,241 @@ +from __future__ import annotations + +import os +import random +import time + +import gradio as gr +import numpy as np +import PIL.Image +import torch +try: + import intel_extension_for_pytorch as ipex +except: + pass + + +from diffusers import DiffusionPipeline +import torch + +import os +import torch +from tqdm import tqdm + +from concurrent.futures import ThreadPoolExecutor +import uuid + +DESCRIPTION = '''# Latent Consistency Model +Distilled from [Dreamshaper v7](https://huggingface.co/Lykon/dreamshaper-7) fine-tune of [Stable Diffusion v1-5](https://huggingface.co/runwayml/stable-diffusion-v1-5) with only 4,000 training iterations (~32 A100 GPU Hours). [Project page](https://latent-consistency-models.github.io) +''' +if torch.cuda.is_available(): + DESCRIPTION += "\n

Running on CUDA 😀

" +elif hasattr(torch, 'xpu') and torch.xpu.is_available(): + DESCRIPTION += "\n

Running on XPU 🤓

" +else: + DESCRIPTION += "\n

Running on CPU 🥶 This demo does not work on CPU.

" + +MAX_SEED = np.iinfo(np.int32).max +CACHE_EXAMPLES = torch.cuda.is_available() and os.getenv("CACHE_EXAMPLES") == "1" +MAX_IMAGE_SIZE = int(os.getenv("MAX_IMAGE_SIZE", "768")) +USE_TORCH_COMPILE = os.getenv("USE_TORCH_COMPILE") == "1" + + + +""" + Operation System Options: + If you are using MacOS, please set the following (device="mps") ; + If you are using Linux & Windows with Nvidia GPU, please set the device="cuda"; + If you are using Linux & Windows with Intel Arc GPU, please set the device="xpu"; +""" +# device = "mps" # MacOS +#device = "xpu" # Intel Arc GPU +device = "cuda" # Linux & Windows + + +""" + DTYPE Options: + To reduce GPU memory you can set "DTYPE=torch.float16", + but image quality might be compromised +""" +DTYPE = torch.float16 # torch.float16 works as well, but pictures seem to be a bit worse + + +#pipe = DiffusionPipeline.from_pretrained("SimianLuo/LCM_Dreamshaper_v7") +pipe = DiffusionPipeline.from_pretrained("D:/git-work/LCM_Dreamshaper_v7") + + +#pipe = DiffusionPipeline.from_pretrained("SimianLuo/LCM_Dreamshaper_v7", custom_pipeline="latent_consistency_txt2img", custom_revision="main") +pipe.to(torch_device=device, torch_dtype=DTYPE) + + +def randomize_seed_fn(seed: int, randomize_seed: bool) -> int: + if randomize_seed: + seed = random.randint(0, MAX_SEED) + return seed + +def save_image(img, profile: gr.OAuthProfile | None, metadata: dict, root_path='./'): + unique_name = str(uuid.uuid4()) + '.png' + unique_name = os.path.join(root_path, unique_name) + img.save(unique_name) + # gr_user_history.save_image(label=metadata["prompt"], image=img, profile=profile, metadata=metadata) + return unique_name + +def save_images(image_array, profile: gr.OAuthProfile | None, metadata: dict): + paths = [] + root_path = './images/' + os.makedirs(root_path, exist_ok=True) + with ThreadPoolExecutor() as executor: + paths = list(executor.map(save_image, image_array, [profile]*len(image_array), [metadata]*len(image_array), [root_path]*len(image_array))) + return paths + +def generate( + prompt: str, + seed: int = 0, + width: int = 512, + height: int = 512, + guidance_scale: float = 8.0, + num_inference_steps: int = 4, + num_images: int = 4, + randomize_seed: bool = False, + param_dtype='torch.float16', + progress = gr.Progress(track_tqdm=True), + profile: gr.OAuthProfile | None = None, +) -> PIL.Image.Image: + seed = randomize_seed_fn(seed, randomize_seed) + torch.manual_seed(seed) + pipe.to(torch_device=device, torch_dtype=torch.float16 if param_dtype == 'torch.float16' else torch.float32) + start_time = time.time() + result = pipe( + prompt=prompt, + width=width, + height=height, + guidance_scale=guidance_scale, + num_inference_steps=num_inference_steps, + num_images_per_prompt=num_images, + lcm_origin_steps=50, + output_type="pil", + ).images + paths = save_images(result, profile, metadata={"prompt": prompt, "seed": seed, "width": width, "height": height, "guidance_scale": guidance_scale, "num_inference_steps": num_inference_steps}) + print(time.time() - start_time) + return paths, seed + +examples = [ + "portrait photo of a girl, photograph, highly detailed face, depth of field, moody light, golden hour, style by Dan Winters, Russell James, Steve McCurry, centered, extremely detailed, Nikon D850, award winning photography", + "Self-portrait oil painting, a beautiful cyborg with golden hair, 8k", + "Astronaut in a jungle, cold color palette, muted colors, detailed, 8k", + "A photo of beautiful mountain with realistic sunset and blue lake, highly detailed, masterpiece", +] + +with gr.Blocks(css="style.css") as demo: + gr.Markdown(DESCRIPTION) + gr.DuplicateButton( + value="Duplicate Space for private use", + elem_id="duplicate-button", + visible=os.getenv("SHOW_DUPLICATE_BUTTON") == "1", + ) + with gr.Group(): + with gr.Row(): + prompt = gr.Text( + label="Prompt", + show_label=False, + max_lines=1, + placeholder="Enter your prompt", + container=False, + ) + run_button = gr.Button("Run", scale=0) + result = gr.Gallery( + label="Generated images", show_label=False, elem_id="gallery", + ) + with gr.Accordion("Advanced options", open=False): + seed = gr.Slider( + label="Seed", + minimum=0, + maximum=MAX_SEED, + step=1, + value=0, + randomize=True + ) + randomize_seed = gr.Checkbox(label="Randomize seed across runs", value=True) + with gr.Row(): + width = gr.Slider( + label="Width", + #minimum=256, + minimum=128, + maximum=MAX_IMAGE_SIZE, + step=32, + value=512, + ) + height = gr.Slider( + label="Height", + minimum=256, + maximum=MAX_IMAGE_SIZE, + step=32, + value=512, + ) + with gr.Row(): + guidance_scale = gr.Slider( + label="Guidance scale for base", + minimum=2, + maximum=14, + step=0.1, + value=8.0, + ) + num_inference_steps = gr.Slider( + label="Number of inference steps for base", + minimum=1, + maximum=8, + step=1, + value=4, + ) + with gr.Row(): + num_images = gr.Slider( + label="Number of images", + minimum=1, + maximum=8, + step=1, + value=1,#生成图片的数量 + visible=True, + ) + dtype_choices = ['torch.float16','torch.float32'] + param_dtype = gr.Radio(dtype_choices,label='torch.dtype', + value=dtype_choices[0], + interactive=True, + info='To save GPU memory, use torch.float16. For better quality, use torch.float32.') + + # with gr.Accordion("Past generations", open=False): + # gr_user_history.render() + + gr.Examples( + examples=examples, + inputs=prompt, + outputs=result, + fn=generate, + cache_examples=CACHE_EXAMPLES, + ) + + gr.on( + triggers=[ + prompt.submit, + run_button.click, + ], + fn=generate, + inputs=[ + prompt, + seed, + width, + height, + guidance_scale, + num_inference_steps, + num_images, + randomize_seed, + param_dtype + ], + outputs=[result, seed], + api_name="run", + ) + +if __name__ == "__main__": + demo.queue(api_open=False) + # demo.queue(max_size=20).launch() + demo.launch(share=True) + #demo.launch() diff --git a/images/0118a123-f782-4065-bcc1-a1effb986124.png b/images/0118a123-f782-4065-bcc1-a1effb986124.png new file mode 100644 index 0000000000000000000000000000000000000000..05e342ada18a62ea4d5fd8aefe8e0dd104b89273 Binary files /dev/null and b/images/0118a123-f782-4065-bcc1-a1effb986124.png differ diff --git a/images/01769f3d-18a0-423f-b3f6-a97af1c94bf2.png b/images/01769f3d-18a0-423f-b3f6-a97af1c94bf2.png new file mode 100644 index 0000000000000000000000000000000000000000..5144b3b7bf0ad0977a7729e66ce98320d92d9fcd Binary files /dev/null and b/images/01769f3d-18a0-423f-b3f6-a97af1c94bf2.png differ diff --git a/images/01bb3133-e94e-4179-a3c4-b2456e72079b.png b/images/01bb3133-e94e-4179-a3c4-b2456e72079b.png new file mode 100644 index 0000000000000000000000000000000000000000..e477817b0d5d440eb751a8a54d97fcbd93df2bc8 Binary files /dev/null and b/images/01bb3133-e94e-4179-a3c4-b2456e72079b.png differ diff --git a/images/020d25c7-e77c-42a6-bf0c-67189a68909f.png b/images/020d25c7-e77c-42a6-bf0c-67189a68909f.png new file mode 100644 index 0000000000000000000000000000000000000000..3a4c18156b5cd51fa228ec1aad2bf77ab5371758 Binary files /dev/null and b/images/020d25c7-e77c-42a6-bf0c-67189a68909f.png differ diff --git a/images/02c34630-1cdf-400c-8125-e02441275657.png b/images/02c34630-1cdf-400c-8125-e02441275657.png new file mode 100644 index 0000000000000000000000000000000000000000..a82b2e7ce78a80c372b08c34d6886279ca28a6fa Binary files /dev/null and b/images/02c34630-1cdf-400c-8125-e02441275657.png differ diff --git a/images/065490e8-2a6b-4a7a-be86-ba5ebea130e3.png b/images/065490e8-2a6b-4a7a-be86-ba5ebea130e3.png new file mode 100644 index 0000000000000000000000000000000000000000..5980f3fadc982b0bf2a3012af95d92ced1c2e8c8 Binary files /dev/null and b/images/065490e8-2a6b-4a7a-be86-ba5ebea130e3.png differ diff --git a/images/0675c336-5d12-4adf-a000-cd41c14cb2ce.png b/images/0675c336-5d12-4adf-a000-cd41c14cb2ce.png new file mode 100644 index 0000000000000000000000000000000000000000..c95664521c8dba1cfd4c99a8c8c368d60b9a57ae Binary files /dev/null and b/images/0675c336-5d12-4adf-a000-cd41c14cb2ce.png differ diff --git a/images/0808038d-ac56-4af9-aeea-fb7b7837385f.png b/images/0808038d-ac56-4af9-aeea-fb7b7837385f.png new file mode 100644 index 0000000000000000000000000000000000000000..5220d0f9dbfa747cdb356761a73beb1b1f1c96bb Binary files /dev/null and b/images/0808038d-ac56-4af9-aeea-fb7b7837385f.png differ diff --git a/images/0a09dc96-247c-4d5c-9079-4b7d407f2fa5.png b/images/0a09dc96-247c-4d5c-9079-4b7d407f2fa5.png new file mode 100644 index 0000000000000000000000000000000000000000..72b9791e4b709a778049ac7cb9926e8421018688 Binary files /dev/null and b/images/0a09dc96-247c-4d5c-9079-4b7d407f2fa5.png differ diff --git a/images/0c8373bb-7af5-47f2-bdd8-0fe80533d46b.png b/images/0c8373bb-7af5-47f2-bdd8-0fe80533d46b.png new file mode 100644 index 0000000000000000000000000000000000000000..cad7e86726bd1cf380bfc91c17fe58e358b36265 Binary files /dev/null and b/images/0c8373bb-7af5-47f2-bdd8-0fe80533d46b.png differ diff --git a/images/0f674c3d-76c3-470c-b9f2-88fd8bd795cd.png b/images/0f674c3d-76c3-470c-b9f2-88fd8bd795cd.png new file mode 100644 index 0000000000000000000000000000000000000000..7842e6e7d57aeb4c0e59985c9f09793f977f3897 Binary files /dev/null and b/images/0f674c3d-76c3-470c-b9f2-88fd8bd795cd.png differ diff --git a/images/11fd9c7a-636d-4405-b6a0-2bdd644e0f6b.png b/images/11fd9c7a-636d-4405-b6a0-2bdd644e0f6b.png new file mode 100644 index 0000000000000000000000000000000000000000..5a5893e208c82f87e9e966ed800759857a006f48 Binary files /dev/null and b/images/11fd9c7a-636d-4405-b6a0-2bdd644e0f6b.png differ diff --git a/images/132e6041-1db8-46ae-a34b-120aa3ea0b77.png b/images/132e6041-1db8-46ae-a34b-120aa3ea0b77.png new file mode 100644 index 0000000000000000000000000000000000000000..5220d0f9dbfa747cdb356761a73beb1b1f1c96bb Binary files /dev/null and b/images/132e6041-1db8-46ae-a34b-120aa3ea0b77.png differ diff --git a/images/14e0f180-4f3e-4fc0-99f0-28866c900970.png b/images/14e0f180-4f3e-4fc0-99f0-28866c900970.png new file mode 100644 index 0000000000000000000000000000000000000000..90b475f4cbb17cb099f6e36216ab9289151bbbb6 Binary files /dev/null and b/images/14e0f180-4f3e-4fc0-99f0-28866c900970.png differ diff --git a/images/19fe3a25-ee3c-49d7-bd3f-cbd531d7ba60.png b/images/19fe3a25-ee3c-49d7-bd3f-cbd531d7ba60.png new file mode 100644 index 0000000000000000000000000000000000000000..5868dd7260f95f8d81cd826750d9253f86a7160d Binary files /dev/null and b/images/19fe3a25-ee3c-49d7-bd3f-cbd531d7ba60.png differ diff --git a/images/1b238947-1de5-40d2-a0f2-7e020ebdd075.png b/images/1b238947-1de5-40d2-a0f2-7e020ebdd075.png new file mode 100644 index 0000000000000000000000000000000000000000..51eda738e4e9af4da72bc72079fd39c75933745b Binary files /dev/null and b/images/1b238947-1de5-40d2-a0f2-7e020ebdd075.png differ diff --git a/images/1d32843e-8406-4fe8-8199-ae9accf748ad.png b/images/1d32843e-8406-4fe8-8199-ae9accf748ad.png new file mode 100644 index 0000000000000000000000000000000000000000..2b6f998e358dcc84d4c0a889a8fed5b1a6fbc079 Binary files /dev/null and b/images/1d32843e-8406-4fe8-8199-ae9accf748ad.png differ diff --git a/images/1d3b9603-1820-47a6-8c38-5fe321b36cc6.png b/images/1d3b9603-1820-47a6-8c38-5fe321b36cc6.png new file mode 100644 index 0000000000000000000000000000000000000000..247cb231609001dc90e79a334d490a8aca7dc5d1 Binary files /dev/null and b/images/1d3b9603-1820-47a6-8c38-5fe321b36cc6.png differ diff --git a/images/20915b3d-5168-4a42-ac77-52a442ca8998.png b/images/20915b3d-5168-4a42-ac77-52a442ca8998.png new file mode 100644 index 0000000000000000000000000000000000000000..8c35aa62cd7dfc64ba1dfdec5811705f94e80b13 Binary files /dev/null and b/images/20915b3d-5168-4a42-ac77-52a442ca8998.png differ diff --git a/images/20b48cb1-c939-4f19-b240-7ad23c7d5de5.png b/images/20b48cb1-c939-4f19-b240-7ad23c7d5de5.png new file mode 100644 index 0000000000000000000000000000000000000000..c6cf2a288b44e06a1676c59e6871f09a02527674 Binary files /dev/null and b/images/20b48cb1-c939-4f19-b240-7ad23c7d5de5.png differ diff --git a/images/2222b07a-0085-477c-b51b-f35edfd3c08d.png b/images/2222b07a-0085-477c-b51b-f35edfd3c08d.png new file mode 100644 index 0000000000000000000000000000000000000000..bdfe84439c71af31efc2d0082c2d7255b9b3cbf3 Binary files /dev/null and b/images/2222b07a-0085-477c-b51b-f35edfd3c08d.png differ diff --git a/images/23ea2bc1-2539-400b-b76c-f7c6e400ddca.png b/images/23ea2bc1-2539-400b-b76c-f7c6e400ddca.png new file mode 100644 index 0000000000000000000000000000000000000000..56aef37793142858604c034b1c86cecb8f2a4457 Binary files /dev/null and b/images/23ea2bc1-2539-400b-b76c-f7c6e400ddca.png differ diff --git a/images/29262f41-37c0-4e12-8eab-252b144afc22.png b/images/29262f41-37c0-4e12-8eab-252b144afc22.png new file mode 100644 index 0000000000000000000000000000000000000000..0adfc4e7fa4f7aa0f5864ae80a624877633969dd Binary files /dev/null and b/images/29262f41-37c0-4e12-8eab-252b144afc22.png differ diff --git a/images/2961c8d0-b781-49be-acfc-fbf2c8147301.png b/images/2961c8d0-b781-49be-acfc-fbf2c8147301.png new file mode 100644 index 0000000000000000000000000000000000000000..5220d0f9dbfa747cdb356761a73beb1b1f1c96bb Binary files /dev/null and b/images/2961c8d0-b781-49be-acfc-fbf2c8147301.png differ diff --git a/images/2b30cbd0-9685-46b2-95fa-1cd901f538a5.png b/images/2b30cbd0-9685-46b2-95fa-1cd901f538a5.png new file mode 100644 index 0000000000000000000000000000000000000000..5220d0f9dbfa747cdb356761a73beb1b1f1c96bb Binary files /dev/null and b/images/2b30cbd0-9685-46b2-95fa-1cd901f538a5.png differ diff --git a/images/3b80e697-c83a-4fa0-8d65-67b96a244335.png b/images/3b80e697-c83a-4fa0-8d65-67b96a244335.png new file mode 100644 index 0000000000000000000000000000000000000000..38f06863e8de4eeec813702742575d1589069e7b Binary files /dev/null and b/images/3b80e697-c83a-4fa0-8d65-67b96a244335.png differ diff --git a/images/3cd0779a-8b86-4fc7-86d4-7a69f3280077.png b/images/3cd0779a-8b86-4fc7-86d4-7a69f3280077.png new file mode 100644 index 0000000000000000000000000000000000000000..e9548518041c61f375d6d23a7b65ae0efef8e63d Binary files /dev/null and b/images/3cd0779a-8b86-4fc7-86d4-7a69f3280077.png differ diff --git a/images/3f234161-51c9-496a-b052-9932223b6d70.png b/images/3f234161-51c9-496a-b052-9932223b6d70.png new file mode 100644 index 0000000000000000000000000000000000000000..fe2ba0969d7b316f55fcf37a3ae2a668ebd229c3 Binary files /dev/null and b/images/3f234161-51c9-496a-b052-9932223b6d70.png differ diff --git a/images/440004d2-1295-4601-aee0-21004d2f13e3.png b/images/440004d2-1295-4601-aee0-21004d2f13e3.png new file mode 100644 index 0000000000000000000000000000000000000000..7fdc8a8fb1d45654aee832cc10683de2e7aa45a0 Binary files /dev/null and b/images/440004d2-1295-4601-aee0-21004d2f13e3.png differ diff --git a/images/44e32e8c-6906-42b3-87cc-48c648e69bc9.png b/images/44e32e8c-6906-42b3-87cc-48c648e69bc9.png new file mode 100644 index 0000000000000000000000000000000000000000..1b4ee0674ea69bda659065663a6915bfe6eeeebb Binary files /dev/null and b/images/44e32e8c-6906-42b3-87cc-48c648e69bc9.png differ diff --git a/images/48855e8d-eb5a-4965-b037-ebaa1e0c2a0e.png b/images/48855e8d-eb5a-4965-b037-ebaa1e0c2a0e.png new file mode 100644 index 0000000000000000000000000000000000000000..aa971a21747aba2b40ec1be1157aa7d922294b41 Binary files /dev/null and b/images/48855e8d-eb5a-4965-b037-ebaa1e0c2a0e.png differ diff --git a/images/503c7f64-c6bf-4f88-abfe-fbaeb0f0b8e4.png b/images/503c7f64-c6bf-4f88-abfe-fbaeb0f0b8e4.png new file mode 100644 index 0000000000000000000000000000000000000000..a6652cb096f2d0441a18c2309eca023b2801b634 Binary files /dev/null and b/images/503c7f64-c6bf-4f88-abfe-fbaeb0f0b8e4.png differ diff --git a/images/5c0692b7-2b07-4c66-a85c-aa705ecf8eb3.png b/images/5c0692b7-2b07-4c66-a85c-aa705ecf8eb3.png new file mode 100644 index 0000000000000000000000000000000000000000..d464c6c5b273babc02b84835bb64e1d8b23ef21a Binary files /dev/null and b/images/5c0692b7-2b07-4c66-a85c-aa705ecf8eb3.png differ diff --git a/images/5dc0bc85-cff9-4c8b-8102-18bfcd30b52b.png b/images/5dc0bc85-cff9-4c8b-8102-18bfcd30b52b.png new file mode 100644 index 0000000000000000000000000000000000000000..b1d7d2270bbff6fc5846f3bdf527950ddda18dd3 Binary files /dev/null and b/images/5dc0bc85-cff9-4c8b-8102-18bfcd30b52b.png differ diff --git a/images/5f88a975-82e5-4cb0-95bc-dbede0943bbf.png b/images/5f88a975-82e5-4cb0-95bc-dbede0943bbf.png new file mode 100644 index 0000000000000000000000000000000000000000..6eb806368eb42aad88564f134dc02ffe62d02cac Binary files /dev/null and b/images/5f88a975-82e5-4cb0-95bc-dbede0943bbf.png differ diff --git a/images/612513d8-d317-40c6-9905-791244708670.png b/images/612513d8-d317-40c6-9905-791244708670.png new file mode 100644 index 0000000000000000000000000000000000000000..ec46b195bd61930879a6bbf28bea2582157bba8b Binary files /dev/null and b/images/612513d8-d317-40c6-9905-791244708670.png differ diff --git a/images/638dadea-4f5b-434f-b431-9aa09b8d014e.png b/images/638dadea-4f5b-434f-b431-9aa09b8d014e.png new file mode 100644 index 0000000000000000000000000000000000000000..5220d0f9dbfa747cdb356761a73beb1b1f1c96bb Binary files /dev/null and b/images/638dadea-4f5b-434f-b431-9aa09b8d014e.png differ diff --git a/images/64594ea6-b9ba-4939-a827-8ab10a6cff4a.png b/images/64594ea6-b9ba-4939-a827-8ab10a6cff4a.png new file mode 100644 index 0000000000000000000000000000000000000000..24bd9f8adfa0d0ac099466a05a26a83ce60a7391 Binary files /dev/null and b/images/64594ea6-b9ba-4939-a827-8ab10a6cff4a.png differ diff --git a/images/66ff4bb9-f0a6-4d69-8e3e-c6126982d511.png b/images/66ff4bb9-f0a6-4d69-8e3e-c6126982d511.png new file mode 100644 index 0000000000000000000000000000000000000000..edf2a6b6d5b7064c7f1c848c04e06747f90b2264 Binary files /dev/null and b/images/66ff4bb9-f0a6-4d69-8e3e-c6126982d511.png differ diff --git a/images/6772a638-9900-4376-a960-b191f6214bb9.png b/images/6772a638-9900-4376-a960-b191f6214bb9.png new file mode 100644 index 0000000000000000000000000000000000000000..8612f86d6f259ea49c5558af0738eb15e3095dd3 Binary files /dev/null and b/images/6772a638-9900-4376-a960-b191f6214bb9.png differ diff --git a/images/6c15bb3a-3343-4cac-9c81-de8daaecebd3.png b/images/6c15bb3a-3343-4cac-9c81-de8daaecebd3.png new file mode 100644 index 0000000000000000000000000000000000000000..9bf6710a2126a0e6f15087e22c748a1c86365d01 Binary files /dev/null and b/images/6c15bb3a-3343-4cac-9c81-de8daaecebd3.png differ diff --git a/images/71a3c480-89c2-4303-b59b-6e275e8f886f.png b/images/71a3c480-89c2-4303-b59b-6e275e8f886f.png new file mode 100644 index 0000000000000000000000000000000000000000..fca653713984e1d9605bc0b4a39cc731cf318669 Binary files /dev/null and b/images/71a3c480-89c2-4303-b59b-6e275e8f886f.png differ diff --git a/images/7a9fb1df-8481-4630-ab54-43e3c5c3f984.png b/images/7a9fb1df-8481-4630-ab54-43e3c5c3f984.png new file mode 100644 index 0000000000000000000000000000000000000000..84808598eb8d4b01197d41d0e3e907af77e84cf9 Binary files /dev/null and b/images/7a9fb1df-8481-4630-ab54-43e3c5c3f984.png differ diff --git a/images/7e80fe32-8c2d-4e56-aca5-a27ab517641f.png b/images/7e80fe32-8c2d-4e56-aca5-a27ab517641f.png new file mode 100644 index 0000000000000000000000000000000000000000..0c2aff98294806c0a28e46ee716e2ec7047ae3a6 Binary files /dev/null and b/images/7e80fe32-8c2d-4e56-aca5-a27ab517641f.png differ diff --git a/images/85086f04-d11e-4f9f-8eb9-565f2b135d12.png b/images/85086f04-d11e-4f9f-8eb9-565f2b135d12.png new file mode 100644 index 0000000000000000000000000000000000000000..c7f55151099a5a6a5597bbcb4a68b7359b9a182f Binary files /dev/null and b/images/85086f04-d11e-4f9f-8eb9-565f2b135d12.png differ diff --git a/images/86ed98c5-d700-4c06-a5d3-7fb7143145be.png b/images/86ed98c5-d700-4c06-a5d3-7fb7143145be.png new file mode 100644 index 0000000000000000000000000000000000000000..a30a99173a4714f884477f37b4e171587365f2ea Binary files /dev/null and b/images/86ed98c5-d700-4c06-a5d3-7fb7143145be.png differ diff --git a/images/88ddf880-800d-48af-9e54-2003632dec37.png b/images/88ddf880-800d-48af-9e54-2003632dec37.png new file mode 100644 index 0000000000000000000000000000000000000000..55459cf90d70d3e94915f3e58ae5f60c7aa84377 Binary files /dev/null and b/images/88ddf880-800d-48af-9e54-2003632dec37.png differ diff --git a/images/8a0b63d4-dbf1-4573-baa4-991cfa88a629.png b/images/8a0b63d4-dbf1-4573-baa4-991cfa88a629.png new file mode 100644 index 0000000000000000000000000000000000000000..54f170696803d63bfd1972f0aef44f2ea08d40a6 Binary files /dev/null and b/images/8a0b63d4-dbf1-4573-baa4-991cfa88a629.png differ diff --git a/images/8e43e54c-5aba-4ef7-860c-de131c534384.png b/images/8e43e54c-5aba-4ef7-860c-de131c534384.png new file mode 100644 index 0000000000000000000000000000000000000000..36e980bd764242908f516b8376abf66600ea1dd4 Binary files /dev/null and b/images/8e43e54c-5aba-4ef7-860c-de131c534384.png differ diff --git a/images/948ed740-7467-45b3-a97b-3af94c5cce37.png b/images/948ed740-7467-45b3-a97b-3af94c5cce37.png new file mode 100644 index 0000000000000000000000000000000000000000..e08b71774b964c37261468bcaf5780c5d15955d9 Binary files /dev/null and b/images/948ed740-7467-45b3-a97b-3af94c5cce37.png differ diff --git a/images/978c76cc-279e-4e71-befd-9029ad4ae1b4.png b/images/978c76cc-279e-4e71-befd-9029ad4ae1b4.png new file mode 100644 index 0000000000000000000000000000000000000000..9b46795450e8575cf9d13223132b27b612f3b5ac Binary files /dev/null and b/images/978c76cc-279e-4e71-befd-9029ad4ae1b4.png differ diff --git a/images/98453a0b-cb8f-4c4a-9703-c29f1bf8c39f.png b/images/98453a0b-cb8f-4c4a-9703-c29f1bf8c39f.png new file mode 100644 index 0000000000000000000000000000000000000000..49fc77d1869b2185dd5a1ba5c8376a537fce2584 Binary files /dev/null and b/images/98453a0b-cb8f-4c4a-9703-c29f1bf8c39f.png differ diff --git a/images/a1113c3b-14ca-4711-9593-d89640f323fa.png b/images/a1113c3b-14ca-4711-9593-d89640f323fa.png new file mode 100644 index 0000000000000000000000000000000000000000..a0ff9bd43a55cf96c861a5d14e505bc2feecf9c5 Binary files /dev/null and b/images/a1113c3b-14ca-4711-9593-d89640f323fa.png differ diff --git a/images/a6100324-04d4-42d9-9db2-9429b9d6592d.png b/images/a6100324-04d4-42d9-9db2-9429b9d6592d.png new file mode 100644 index 0000000000000000000000000000000000000000..6874a51d9257907c668d94d40e3c19901aad05d2 Binary files /dev/null and b/images/a6100324-04d4-42d9-9db2-9429b9d6592d.png differ diff --git a/images/a7d700e7-8025-4b83-8b08-a89b2678715c.png b/images/a7d700e7-8025-4b83-8b08-a89b2678715c.png new file mode 100644 index 0000000000000000000000000000000000000000..2de4cb5c4753e6bec7644fd3145715dba28685a2 Binary files /dev/null and b/images/a7d700e7-8025-4b83-8b08-a89b2678715c.png differ diff --git a/images/a90bc93f-5a56-46f3-a606-715d459cf824.png b/images/a90bc93f-5a56-46f3-a606-715d459cf824.png new file mode 100644 index 0000000000000000000000000000000000000000..34d633dc61bf38f0727c97ae05ca7f286f4b8f11 Binary files /dev/null and b/images/a90bc93f-5a56-46f3-a606-715d459cf824.png differ diff --git a/images/aaa8d9c4-62f2-4ce8-a5d3-1204904c98b0.png b/images/aaa8d9c4-62f2-4ce8-a5d3-1204904c98b0.png new file mode 100644 index 0000000000000000000000000000000000000000..f8b80893e0b1d826a1e0d08de6cb28f297c12976 Binary files /dev/null and b/images/aaa8d9c4-62f2-4ce8-a5d3-1204904c98b0.png differ diff --git a/images/ab529f4a-4733-426b-bfc5-1c485f0dcf63.png b/images/ab529f4a-4733-426b-bfc5-1c485f0dcf63.png new file mode 100644 index 0000000000000000000000000000000000000000..f995254efcdd5567856092b8c409af8543aac324 Binary files /dev/null and b/images/ab529f4a-4733-426b-bfc5-1c485f0dcf63.png differ diff --git a/images/ab85ed6d-0871-43e3-9fd5-2a487a56e72d.png b/images/ab85ed6d-0871-43e3-9fd5-2a487a56e72d.png new file mode 100644 index 0000000000000000000000000000000000000000..5add51c04899e78c9822118542ec54ea60b9a63b Binary files /dev/null and b/images/ab85ed6d-0871-43e3-9fd5-2a487a56e72d.png differ diff --git a/images/ad9a3f0f-861a-4818-9f88-33faf16823d7.png b/images/ad9a3f0f-861a-4818-9f88-33faf16823d7.png new file mode 100644 index 0000000000000000000000000000000000000000..d0a2c9e2be3ffdd60f409d3e48b7322c164cbeb0 Binary files /dev/null and b/images/ad9a3f0f-861a-4818-9f88-33faf16823d7.png differ diff --git a/images/aee0292b-e118-4a8c-92a2-25a5fbf3bc1c.png b/images/aee0292b-e118-4a8c-92a2-25a5fbf3bc1c.png new file mode 100644 index 0000000000000000000000000000000000000000..488852ddb1eb367be8c35afa3c05aa1e31f68684 Binary files /dev/null and b/images/aee0292b-e118-4a8c-92a2-25a5fbf3bc1c.png differ diff --git a/images/af1a0a23-32b1-4614-a1b4-38fb02d3176b.png b/images/af1a0a23-32b1-4614-a1b4-38fb02d3176b.png new file mode 100644 index 0000000000000000000000000000000000000000..b3c0ea3ae1c04f1a3a4c4865c5d77fc2918c697b Binary files /dev/null and b/images/af1a0a23-32b1-4614-a1b4-38fb02d3176b.png differ diff --git a/images/af4e22f5-88b7-4a3d-a040-b77376b08c31.png b/images/af4e22f5-88b7-4a3d-a040-b77376b08c31.png new file mode 100644 index 0000000000000000000000000000000000000000..6170f43b73c87aacd67d2d26d19b7a57001cb9b9 Binary files /dev/null and b/images/af4e22f5-88b7-4a3d-a040-b77376b08c31.png differ diff --git a/images/b02b77e2-cfb6-4f60-9a3f-326fe9340d05.png b/images/b02b77e2-cfb6-4f60-9a3f-326fe9340d05.png new file mode 100644 index 0000000000000000000000000000000000000000..5220d0f9dbfa747cdb356761a73beb1b1f1c96bb Binary files /dev/null and b/images/b02b77e2-cfb6-4f60-9a3f-326fe9340d05.png differ diff --git a/images/b048a4e1-fe22-477e-a552-3d9342beba1e.png b/images/b048a4e1-fe22-477e-a552-3d9342beba1e.png new file mode 100644 index 0000000000000000000000000000000000000000..3a58c7cbe42cc0b15b042c97182d1a073da37cba Binary files /dev/null and b/images/b048a4e1-fe22-477e-a552-3d9342beba1e.png differ diff --git a/images/bc1c0144-6500-4878-945a-3602628c0be2.png b/images/bc1c0144-6500-4878-945a-3602628c0be2.png new file mode 100644 index 0000000000000000000000000000000000000000..6bc124981d03ddc9c6f1065903bcd44efb88dcd9 Binary files /dev/null and b/images/bc1c0144-6500-4878-945a-3602628c0be2.png differ diff --git a/images/bc65fbdd-3d23-4fd0-be0a-04bcf1e382a7.png b/images/bc65fbdd-3d23-4fd0-be0a-04bcf1e382a7.png new file mode 100644 index 0000000000000000000000000000000000000000..333039afe206563dc012228d11332b6d257fbf46 Binary files /dev/null and b/images/bc65fbdd-3d23-4fd0-be0a-04bcf1e382a7.png differ diff --git a/images/c1668d82-b0dd-4647-b782-7768cb4c6047.png b/images/c1668d82-b0dd-4647-b782-7768cb4c6047.png new file mode 100644 index 0000000000000000000000000000000000000000..a9cea5468a765eb79e157c221c24db07d12dc530 Binary files /dev/null and b/images/c1668d82-b0dd-4647-b782-7768cb4c6047.png differ diff --git a/images/c180b396-50ab-4355-b45c-898b30e2d25c.png b/images/c180b396-50ab-4355-b45c-898b30e2d25c.png new file mode 100644 index 0000000000000000000000000000000000000000..01696922e56121aa11685eda664828ce49633874 Binary files /dev/null and b/images/c180b396-50ab-4355-b45c-898b30e2d25c.png differ diff --git a/images/c7622929-bda8-4b5e-bf1b-e7dc67bd3947.png b/images/c7622929-bda8-4b5e-bf1b-e7dc67bd3947.png new file mode 100644 index 0000000000000000000000000000000000000000..8aadf2511b454e279b2b931908fa61752926be4a Binary files /dev/null and b/images/c7622929-bda8-4b5e-bf1b-e7dc67bd3947.png differ diff --git a/images/c9b82dcf-ba79-4a8b-8923-82b0aae08035.png b/images/c9b82dcf-ba79-4a8b-8923-82b0aae08035.png new file mode 100644 index 0000000000000000000000000000000000000000..5227830a00566616e65833678facbad542dfb1f0 Binary files /dev/null and b/images/c9b82dcf-ba79-4a8b-8923-82b0aae08035.png differ diff --git a/images/cbba2cb6-1369-4004-ada7-aeefd87f44f7.png b/images/cbba2cb6-1369-4004-ada7-aeefd87f44f7.png new file mode 100644 index 0000000000000000000000000000000000000000..21ac9b55bd136da2eae7f5438c613caf0bc5e3f5 Binary files /dev/null and b/images/cbba2cb6-1369-4004-ada7-aeefd87f44f7.png differ diff --git a/images/cf9912f9-4d35-4fa2-9674-4fe5c6e8e53d.png b/images/cf9912f9-4d35-4fa2-9674-4fe5c6e8e53d.png new file mode 100644 index 0000000000000000000000000000000000000000..5218727faacd586952f355f653de2939badaea4e Binary files /dev/null and b/images/cf9912f9-4d35-4fa2-9674-4fe5c6e8e53d.png differ diff --git a/images/d1329f00-3104-4910-a8e3-c8d550671e6d.png b/images/d1329f00-3104-4910-a8e3-c8d550671e6d.png new file mode 100644 index 0000000000000000000000000000000000000000..66af04555a98dd78b6d80b196100df4b781284f8 Binary files /dev/null and b/images/d1329f00-3104-4910-a8e3-c8d550671e6d.png differ diff --git a/images/d5678270-96ff-4dd6-9d00-3258b1b45565.png b/images/d5678270-96ff-4dd6-9d00-3258b1b45565.png new file mode 100644 index 0000000000000000000000000000000000000000..9f17983415c285b4a906aeb8fcecfede0f7b2b5a Binary files /dev/null and b/images/d5678270-96ff-4dd6-9d00-3258b1b45565.png differ diff --git a/images/de61f905-4f34-42b2-9ff6-caaf37a38665.png b/images/de61f905-4f34-42b2-9ff6-caaf37a38665.png new file mode 100644 index 0000000000000000000000000000000000000000..7fc7bd4af1268fdcfae0d8a98961df05a2dd5d69 Binary files /dev/null and b/images/de61f905-4f34-42b2-9ff6-caaf37a38665.png differ diff --git a/images/df6374ee-7ce9-4485-95e6-34a1420f56d6.png b/images/df6374ee-7ce9-4485-95e6-34a1420f56d6.png new file mode 100644 index 0000000000000000000000000000000000000000..57521f99eb589e764909eb2fac36a67f29c56659 Binary files /dev/null and b/images/df6374ee-7ce9-4485-95e6-34a1420f56d6.png differ diff --git a/images/e7d6ab41-cb16-4657-bf35-7c34819e029b.png b/images/e7d6ab41-cb16-4657-bf35-7c34819e029b.png new file mode 100644 index 0000000000000000000000000000000000000000..795cd6f4a17aaa39bf971d4f56843c7e9b02c82c Binary files /dev/null and b/images/e7d6ab41-cb16-4657-bf35-7c34819e029b.png differ diff --git a/images/edcb60c5-468f-40a4-8ddb-16109b0e2e29.png b/images/edcb60c5-468f-40a4-8ddb-16109b0e2e29.png new file mode 100644 index 0000000000000000000000000000000000000000..be8bffbba33a756e832f78eaeb43f07f223c4596 Binary files /dev/null and b/images/edcb60c5-468f-40a4-8ddb-16109b0e2e29.png differ diff --git a/images/f3ecf54d-7874-4d0f-9aa7-8362936a8476.png b/images/f3ecf54d-7874-4d0f-9aa7-8362936a8476.png new file mode 100644 index 0000000000000000000000000000000000000000..9c8d6b2bb82a32aca21ec2419b36e341c3edb0ba Binary files /dev/null and b/images/f3ecf54d-7874-4d0f-9aa7-8362936a8476.png differ diff --git a/images/f405083e-9617-4f26-8124-42186cddbd42.png b/images/f405083e-9617-4f26-8124-42186cddbd42.png new file mode 100644 index 0000000000000000000000000000000000000000..98f27fac1bbdcc2c7b498e025760b5fb32a99be7 Binary files /dev/null and b/images/f405083e-9617-4f26-8124-42186cddbd42.png differ diff --git a/images/f84dc2bb-4d84-46eb-bc65-7c1fc0b57c52.png b/images/f84dc2bb-4d84-46eb-bc65-7c1fc0b57c52.png new file mode 100644 index 0000000000000000000000000000000000000000..b3bf2686a57190e226cebc2d38cc45e295541438 Binary files /dev/null and b/images/f84dc2bb-4d84-46eb-bc65-7c1fc0b57c52.png differ diff --git a/images/f8e3f59a-9f7a-4d99-88b5-2139fd6dad04.png b/images/f8e3f59a-9f7a-4d99-88b5-2139fd6dad04.png new file mode 100644 index 0000000000000000000000000000000000000000..1aa08a5daee9029de55e1f1d4c1456af672bfe0f Binary files /dev/null and b/images/f8e3f59a-9f7a-4d99-88b5-2139fd6dad04.png differ diff --git a/images/fce3c3a6-ad96-473f-a44e-b4b886c9d01e.png b/images/fce3c3a6-ad96-473f-a44e-b4b886c9d01e.png new file mode 100644 index 0000000000000000000000000000000000000000..c0d4ae09cefc431def02ceb8fa837617ae6f33a4 Binary files /dev/null and b/images/fce3c3a6-ad96-473f-a44e-b4b886c9d01e.png differ diff --git a/style.css b/style.css new file mode 100644 index 0000000000000000000000000000000000000000..1b2a69d853a6c6685a0e79014e490619a57bcfd2 --- /dev/null +++ b/style.css @@ -0,0 +1,16 @@ +h1 { + text-align: center; + } + + #duplicate-button { + margin: auto; + color: #fff; + background: #1565c0; + border-radius: 100vh; + } + + #component-0 { + max-width: 830px; + margin: auto; + padding-top: 1.5rem; + } \ No newline at end of file