home.social

Search

960 results for “lig”

  1. 🤗☁️🌈☁️🪽😇🪽🕊️✝️👑💦❤️‍🔥🫶💒💫🛐🫂🤝🏩✌️☮️💛🧡🩵🩷💌🌎🌐🩷✝️👑🕊️🤗[BY THE will of God for those who are called according to his purpose!*& For those predestined to be conformed to the image of his Son that he might be the firstborn among many brothers!*& SISTERS!*& those whom he called he also justified!*& those whom he justified he also glorified!]🤗☁️🌈☁️🪽😇🪽🕊️✝️👑💦❤️‍🔥🫶💒🛐🫂🤝🏩✌️☮️💛🧡🩵🩷💌🌎🌐🩷🤗

    Romans 8:26-30
    #Life #in #Holy #Spirit #Heirs #Of #Christ #Future #Glory #God #Love #World #Jesus #Light #Pray #Christian #Heaven #Hope #Faith #Truth

  2. 🤗☁️🌈☁️🪽😇🪽🕊️✝️👑💦❤️‍🔥🫶💒💫🛐🫂🤝🏩✌️☮️💛🧡🩵🩷💌🌎🌐🩷✝️👑🕊️🤗[BY THE will of God for those who are called according to his purpose!*& For those predestined to be conformed to the image of his Son that he might be the firstborn among many brothers!*& SISTERS!*& those whom he called he also justified!*& those whom he justified he also glorified!]🤗☁️🌈☁️🪽😇🪽🕊️✝️👑💦❤️‍🔥🫶💒🛐🫂🤝🏩✌️☮️💛🧡🩵🩷💌🌎🌐🩷🤗

    Romans 8:26-30
    #Life #in #Holy #Spirit #Heirs #Of #Christ #Future #Glory #God #Love #World #Jesus #Light #Pray #Christian #Heaven #Hope #Faith #Truth

  3. 🤗☁️🌈☁️🪽😇🪽🕊️✝️👑💦❤️‍🔥🫶💒💫🛐🫂🤝🏩✌️☮️💛🧡🩵🩷💌🌎🌐🩷✝️👑🕊️🤗[BY THE will of God for those who are called according to his purpose!*& For those predestined to be conformed to the image of his Son that he might be the firstborn among many brothers!*& SISTERS!*& those whom he called he also justified!*& those whom he justified he also glorified!]🤗☁️🌈☁️🪽😇🪽🕊️✝️👑💦❤️‍🔥🫶💒🛐🫂🤝🏩✌️☮️💛🧡🩵🩷💌🌎🌐🩷🤗

    Romans 8:26-30
    #Life #in #Holy #Spirit #Heirs #Of #Christ #Future #Glory #God #Love #World #Jesus #Light #Pray #Christian #Heaven #Hope #Faith #Truth

  4. 🤗☁️🌈☁️🪽😇🪽🕊️✝️👑💦❤️‍🔥🫶💒💫🛐🫂🤝🏩✌️☮️💛🧡🩵🩷💌🌎🌐🩷✝️👑🕊️🤗[BY THE will of God for those who are called according to his purpose!*& For those predestined to be conformed to the image of his Son that he might be the firstborn among many brothers!*& SISTERS!*& those whom he called he also justified!*& those whom he justified he also glorified!]🤗☁️🌈☁️🪽😇🪽🕊️✝️👑💦❤️‍🔥🫶💒🛐🫂🤝🏩✌️☮️💛🧡🩵🩷💌🌎🌐🩷🤗

    Romans 8:26-30
    #Life #in #Holy #Spirit #Heirs #Of #Christ #Future #Glory #God #Love #World #Jesus #Light #Pray #Christian #Heaven #Hope #Faith #Truth

  5. 🤗☁️🌈☁️🪽😇🪽🕊️✝️👑💦❤️‍🔥🫶💒💫🛐🫂🤝🏩✌️☮️💛🧡🩵🩷💌🌎🌐🩷✝️👑🕊️🤗[BY THE will of God for those who are called according to his purpose!*& For those predestined to be conformed to the image of his Son that he might be the firstborn among many brothers!*& SISTERS!*& those whom he called he also justified!*& those whom he justified he also glorified!]🤗☁️🌈☁️🪽😇🪽🕊️✝️👑💦❤️‍🔥🫶💒🛐🫂🤝🏩✌️☮️💛🧡🩵🩷💌🌎🌐🩷🤗

    Romans 8:26-30
    #Life #in #Holy #Spirit #Heirs #Of #Christ #Future #Glory #God #Love #World #Jesus #Light #Pray #Christian #Heaven #Hope #Faith #Truth

  6. 🤗☁️🌈☁️🪽😇🪽🕊️✝️👑💦❤️‍🔥🫶💒💫🛐🫂🤝🏩✌️☮️💛🧡🩵🩷💌🌎🌐🩷✝️👑🕊️🤗[BY THE will of God for those who are called according to his purpose!*& For those predestined to be conformed to the image of his Son that he might be the firstborn among many brothers!*& SISTERS!*& those whom he called he also justified!*& those whom he justified he also glorified!]🤗☁️🌈☁️🪽😇🪽🕊️✝️👑💦❤️‍🔥🫶💒🛐🫂🤝🏩✌️☮️💛🧡🩵🩷💌🌎🌐🩷🤗

    Romans 8:26-30
    #Life #in #Holy #Spirit #Heirs #Of #Christ #Future #Glory #God #Love #World #Jesus #Light #Pray #Christian #Heaven #Hope #Faith #Truth

  7. 🤗☁️🌈☁️🪽😇🪽🕊️✝️👑💦❤️‍🔥🫶💒💫🛐🫂🤝🏩✌️☮️💛🧡🩵🩷💌🌎🌐🩷🤗(to the will of God!*& for those who are called according to his purpose!*For those whom he foreknew he also predestined to be conformed to the image of his Son!*In order that he might be the firstborn among many brothers!*& SISTERS!)👉

    (Romans 8:26-30)
    #Life #in #the #Spirit #Heirs #with #Christ #Future #Glory #Gods #Everlasting #Love #World #Jesus #Holy #Spirit #Savior #Light #Pray #Believe #Christian #Heaven #Hope #Peace #Faith #Truth #Goodness #Hospitality

  8. 🤗☁️🌈☁️🪽😇🪽🕊️✝️👑💦❤️‍🔥🫶💒💫🛐🫂🤝🏩✌️☮️💛🧡🩵🩷💌🌎🌐🩷🤗(because the Spirit intercedes for the saints (((BELIEVERS!*& SOON TO BE BELIEVERS IN CHRIST JESUS!))) according to the will of God!*& we know that for those who love God all things work together for good!)👉

    (Romans 8:26-30)
    #Heirs #with #Christ #Future #Glory #Gods #Everlasting #Love #World #Jesus #Christ #Holy #Spirit #Savior #Light #Pray #Believe #Christian #Heaven #Hope #Peace #Faith #Truth #Goodness #Kindness #Caring #Hospitality #Helping #Others #Gentleness

  9. Illegal gambling operators have a reputation problem. Threat actors found a workaround: borrow someone else's.

    In our latest report, we examine how threat actors shadowed government and education domains, including schools and an Indian state government, and turned them into launchpads for parasitic SEO. By hiding gambling-related content under trusted institutions, they inherit the authority those domains have earned with search engines.

    Borrowed reputation. Real abuse.

    infoblox.com/blog/threat-intel

    #DNS #ThreatIntel #CyberSecurity #InfoSec #DomainShadowing #SEO #HiddenHawk #Infoblox

  10. 🤗☁️🌈☁️🪽😇🪽🕊️✝️👑💦❤️‍🔥🫶💒💫🛐🫂🤝🏩✌️☮️💛🧡🩵🩷💌🌎🌐🩷🤗(Likewise the Spirit helps us in our weakness!*For we do not know what to pray for as we ought!*but the Spirit himself intercedes for us with groanings too deep for words!)👉

    (Romans 8:26-30)
    #Christ #Future #Glory #Gods #Everlasting #Love #World #Jesus #Holy #Spirit #Savior #Light #Pray #Believe #Christian #Heaven #Hope #Peace #Faith #Truth #Goodness #Kindness #Caring #Hospitality #Helping #Others #Gentleness #Understanding #Everyone #Unity #Love #One #Another

  11. 🤗☁️🌈☁️🪽😇🪽🕊️✝️👑💦❤️‍🔥🫶💒💫🛐🫂🤝🏩✌️☮️💛🧡🩵🩷💌🌎🌐🩷🤗[DEAR BELOVED FRIENDS IN THE ENTIRE REALM OF EARTH!*THE FOLLOWING PASSAGE I SHARE FROM “APOSTLE PAUL” (((A WORKER IN CHRIST JESUS!))) TELLS!*& ENCOURAGES US ALL ABOUT OUR “Future Glory!”]*AMEN!†👉

    (Romans 8:26-30)
    #Life #in #the #Spirit #Heirs #with #Christ #Future #Glory #Gods #Everlasting #Love #World #Jesus #Christ #Holy #Spirit #Savior #Light #Pray #Believe #Christian #Heaven #Hope #Peace #Faith #Truth #Goodness #Hospitality #Gentleness #Understanding

  12. 🤗☁️🌈☁️🪽😇🪽🕊️✝️👑💦❤️‍🔥🫶💒🛐🫂🤝🏩✌️☮️💛🧡🩵🩷💌🌎🌐🩷🤗*Life in the (HOLY)Spirit!*HOW WE ARE Heirs with Christ!*OUR OWN Future Glory!*& God's Everlasting Love!🤗☁️🌈☁️💫💞🪽😇🪽🕊️✝️👑💦❤️‍🔥🫶💒🛐🫂🤝🏩✌️☮️💛🧡🩵🩷💌🌎🌐🩷🤗👉

    Romans 8:26-30
    #Life #in #the #Spirit #Heirs #with #Christ #Future #Glory #Gods #Everlasting #Love #World #Jesus #Christ #Holy #Spirit #Savior #Light #Pray #Believe #Christian #Heaven #Hope #Peace #Faith #Truth #Goodness #Kindness #Caring #Hospitality #Helping #Others #Gentleness #Understanding #Unity #Love #One #Another

  13. Rice University: Researchers create new database to track origins of water from space. “All water comes from somewhere. Researchers who want to know where it comes from rely on water isotopes, variants of water molecules with slightly different masses, as location identifiers. In particular, the specific fraction of heavy to light water isotopes is unique to the water’s origin and processes […]

    https://rbfirehose.com/2026/10/27/rice-university-researchers-create-new-database-to-track-origins-of-water-from-space/
  14. ☁️🌈☁️🪽😇🪽🕊️✝️👑💦❤️‍🔥🫶💒🛐🫂🤝🏩✌️☮️💛🧡🩵🩷💌🌎🌐🩷💁🏿*[DEAR BELOVED FRIENDS IN CHAPTER (Romans 8) “APOSTLE PAUL” WRITES TO PEOPLE NOT ONLY IN THE PAST!*BUT TO US ALL TODAY ON EARTH ABOUT THE FOLLOWING SUBJECTS TO HELP US ALL!*TEACH US ALL!*& TO ENCOURAGE US ALL ABOUT!]*Life in the (HOLY)Spirit!*HOW WE ARE Heirs with Christ!*OUR OWN Future Glory!*& God's Everlasting Love!*AMEN!†👉

    (Romans 8:26-30)
    #Heirs #with #Christ #Future #Glory #Gods #Love #World #Jesus #Christ #Holy #Spirit #Light #Pray #Heaven #Hope #Faith #Truth

  15. 👌😊🩷💛💜💌🌞😎🌻🍁🍂🍃🙇🤲🙏🙌🧘🧎💞🚸🚌🧑‍🎓📚🎒🧑‍🏫🏫🚗🚙🛻🚓🚜🚚🚛🚍🚦🚶👣👨🏽‍🦯🛴🐾💃🏼🕺🏿🪇🤸🏼‍♂️🪘🪕⛹🏼‍♂️🎭⛹🏽‍♀️🐿️🦝🥜🦌🦊🦦🦫🕷️🦹🏽‍♀️👻🧙🏽‍♀️💀🧟‍♀️⚰️🤖🩻☠️🤡🦇💀👹😨🍬🍭🍏🧌🫣👺👹🕵🏽‍♀️👽😳🧟‍♀️🧙🏽‍♀️👻🦝🐿️🦃🎃🥧🧣🥮🌰🍐🍎⚠️🚙🏃🏽‍♀️🐌🚧🦺👀🫵🧿🧿🐈‍⬛🐈🐩🐕🐑🌐🌎🩵💁🏿*DEAR BELOVED!*KIND!*LOVING!*GIVING!*WHOM I TREASURE DEEPLY FRIENDS AROUND THE WORLD GOOD TUESDAY MORNING!🤗🌞😎🌻🍁🍂🍃🤗👉

    #Christ #God #Good
    #TUESDAY #Morning #BELOVED #TREASURED #FRIENDS #Devotional #World #Jesus #Holy #Spirit #Savior #Light #Pray #Believe #Christian #Heaven #Hope #Peace #Faith #Truth #Goodness #Kindness #Unity #Love #SAFE #SLOW #CAUTIOUS #DRIVING

  16. "Will Ousting Netanyahu Change Anything for Palestinians?"

    Israeli forces have detained & expelled thousands of Palestinian residents from Hebron & begun home demolitions for future Israeli settlements.

    This "is because this entire election is about who is going to be tougher on Palestinians. So, while lighting the place on fire, he’s also selling water.”

    All of these parties are advocating major war crimes.

    democracynow.org/2026/10/26/is

    #IsraeliElections #USPol #EUPol #gaza #palestine #news .

  17. 'Kan paracetamol gevaarlijk zijn?'

    "Paracetamol wordt in de lever afgebroken. Slik je te veel, dan ontstaat er een schadelijke afbraakstof die de lever kan beschadigen. […] Op de bijsluiter van gewone tabletten van 500 milligram staat voor volwassenen meestal maximaal zes tabletten per dag."

    "Twaalf tabletten in één keer, samen 6 gram, kunnen al leverschade geven. Langdurig gebruik vlak onder het maximum is ook niet zonder risico: leverschade is ook gemeld na wekenlang 3 tot 4 gram per dag."

    "Gebruik je paracetamol langer of is je lever al kwetsbaar? Dan ligt de veilige grens lager als een of meer van deze dingen voor jou gelden:
    •je eet weinig of vast
    •je drinkt gemiddeld meer dan twee glazen alcohol per dag
    •je rookt
    •je hebt een leverziekte
    •je gebruikt bepaalde medicijnen, zoals sommige middelen tegen epilepsie
    •je gebruikt meerdere pijnstillers tegelijk
    •je bent op hoge leeftijd en weegt minder dan 50 kilo
    Geldt één van deze punten voor jou, neem dan niet meer dan vier tabletten van 500 milligram per dag. Gelden er twee of meer, dan is het maximum drie."

    "Het verraderlijke aan een overdosis is dat je de eerste uren vaak weinig merkt. Misselijkheid, overgeven of buikpijn kunnen optreden, maar dat hoeft niet. Duidelijke tekenen van leverschade, zoals een gele huid of geel oogwit, verschijnen vaak pas na twee tot drie dagen.
    Een overdosis paracetamol voelt in het begin vaak als niets. Juist daarom moet je niet wachten."

    welingelichtekringen.nl/gezond

    #gezondheid #paracetamol

  18. Ещё один мемный промпт из тыртырнета. Сперва генерируете коробку, а потом просите её открыть и собрать набор, попутно объясняя, что в нём должно находиться.

    Промпт:
    An official custom LEGO minifigure of the person in the reference image, standing on a classic black LEGO display stand, placed inside a premium bright yellow branded collectible LEGO box packaging, glossy plastic texture, macro product photography, studio lighting.

  19. Für Kurzentschlossene:

    Morgen, am 28.10.2026 um 18 Uhr - Elbestr. 45, findet der deutschlandweite Linux Presentation Day statt.

    In der Braunschweiger Linuxgruppe zeige ich dort die freie Software darktable, RapidRAW und FerrumPIX (alles auch unter Windows + MacOS verfügbar) und was es sonst noch mit Linux für unser Hobby gibt.

    Ich freue mich auf alle, die trotz "Festival of Lights" morgen den Weg zur BS-LUG finden und sich über freie Software informieren möchten.


    @bs-lug

  20. Just posted about 2026 in Hiroshima, Japan 🇯🇵

    Highlights: 828 attendees, a thoughtful keynote on cooperative models for sustaining open source, and lots of discussion about and LLMs in and OSGeo projects. I ran an / workshop, gave a lightning talk on gitRmap, and got its first PR at the code sprint. 🎉

    Also: a tip on booking trains in Japan (you can always catch the next one).

    nickbearman.com/blog/2026-09-f

    @foss4g @osgeo @osgeouk

  21. RE: flipboard.com/@natobserver/can

    ‼️ As someone who requires a *boring* pureed diet the fact your editor left the final paragraph in your reader's mind is appallingly irresponsible and reckless.

    It implies the death of an individual by means of choking on food , a terrifying experience, is less important than an outsider watching a few seconds of the patient's "face light up" as they try to chew snd swallow crunchy food.

    Exactly whose feelings are satisfied here?

  22. 🍝 The Flying Spaghetti Monster, come to my assistance.
😋 My Lord, make haste to help me.

    Glory be to the Meatball 🧆, to the Sauce 🥫, and to the Holy Noodle 🍝.
    As it was in the beginning, is now, and ever shall be. 🍜

    🍝 The Flying Spaghetti Monster made an everlasting covenant with Quob People, and Quob never ceases to bless them. Grateful for Quob Noodly Appendage, we confidently direct our prayer to Quob.
    😋 My Lord, the Flying Spaghetti Monster, bless Quob people.

    "6. As the light fades, help me open my heart to You in quiet and bring my prayer with patience (The Loose Canon, Pastalm XXI, Verses #1–2; “I waited patiently for his Noodliness; he turned to me and heard my cry.”)"

    My Lord, the Flying Spaghetti Monster,
give our bodies restful sleep,
and let the work we have done today bear fruit in eternal life.
    R’Amen 🍜

    2026-10-27T17:39:54+09:00

    #날아다니는스파게티괴물님 #성면 #면발 #스파게티 #라멘 #파스타파리안 #성무일도 #성무일과 #매일전례
    #FlyingSpaghettiMonster #FSM #HolyNoodle #Noodle #Spaghetti #Ramen #Pastafarian #NoodlyAppendage #Pastafarian #FSMism #FSMist #DivineOffice #DailyOffice #Breviary

  23. In practice, a PDF's page size often determines whether it prints cleanly, archives correctly, or embeds smoothly in another system. A report designed for A3 may need to be reduced to A4 for distribution, or scanned pages may need to be standardized to a custom size. Adjusting pages one by one is slow and error-prone; a Python script is a more reliable way to handle the job in batch.

    Free Spire.PDF for Python is a lightweight, capable tool for this task. It has a small footprint and a straightforward API, which makes it well-suited to page-level restructuring. Below, we cover several common ways to change PDF page size with it, from the underlying idea to working code.

    Prerequisites


    Install it with pip:

    pip install spire.pdf.free

    The free version limits the number of pages per document (usually to 10 or fewer), so it is best suited to small jobs and proofs of concept.

    Core Idea: Why You Can't Just "Change the Size"


    PDF page size (MediaBox) is technically an editable property, but changing it in place will throw off text and images that were laid out for the old dimensions. Content may become misaligned or even clipped. A more reliable approach is to rebuild each page:

    1. Load the original document and create a page template for each page, capturing a snapshot of all its content.
    2. Create a new document with blank pages at the target size.
    3. Draw the template onto the new page, using drawing coordinates and a scaling layout to fit the content.
    4. Save the new document and release resources.

    Free Spire.PDF's PdfPageBase.CreateTemplate() and PdfTemplate.Draw() are designed for exactly this workflow. The same logic works whether the target size is larger, smaller, or has a different aspect ratio.

    Scenario 1: Change to Standard Paper Sizes (A3, B4, Letter, etc.)


    Free Spire.PDF includes enums for common standard paper sizes, such as PdfPageSize.A3(), PdfPageSize.B4(), and PdfPageSize.Letter(). The following code converts every page of a PDF to B4:

    from spire.pdf.common import *
    from spire.pdf import *

    input_file = "source.pdf"
    output_file = "resized_b4.pdf"

    original_pdf = PdfDocument()
    original_pdf.LoadFromFile(input_file)

    new_pdf = PdfDocument()

    for i in range(original_pdf.Pages.Count):
    page = original_pdf.Pages.get_Item(i)

    # Create a new B4-sized page with zero margins to avoid extra whitespace
    new_page = new_pdf.Pages.Add(PdfPageSize.B4(), PdfMargins(0.0))

    # Key: set the text layout to OnePage so the original content is scaled
    # as a whole to fit the new page
    layout = PdfTextLayout()
    layout.Layout = PdfLayoutType.OnePage

    template = page.CreateTemplate()
    template.Draw(new_page, PointF.Empty(), layout)

    new_pdf.SaveToFile(output_file)
    new_pdf.Close()
    original_pdf.Close()

    The important setting here is PdfLayoutType.OnePage. Without it, content is drawn at its original scale, and anything beyond the new page bounds is clipped rather than automatically scaled. With it, the template is scaled to fit the available area of the new page, keeping the content fully visible.

    Scenario 2: Custom Sizes (Millimeters, Inches, or Any Other Unit)


    Real-world targets are rarely standard paper sizes. A print job might call for 200 mm × 280 mm, or a system might require pages to be 6 × 9 inches. Free Spire.PDF uses points (1 point = 1/72 inch). Use PdfUnitConvertor to convert physical units to points, then create a SizeF:

    from spire.pdf.common import *
    from spire.pdf import *

    input_file = "source.pdf"
    output_file = "custom_size.pdf"

    # Target size: 200 mm × 280 mm
    converter = PdfUnitConvertor()
    width_pt = converter.ConvertUnits(200, PdfGraphicsUnit.Millimeter, PdfGraphicsUnit.Point)
    height_pt = converter.ConvertUnits(280, PdfGraphicsUnit.Millimeter, PdfGraphicsUnit.Point)

    original_pdf = PdfDocument()
    original_pdf.LoadFromFile(input_file)

    new_pdf = PdfDocument()

    for i in range(original_pdf.Pages.Count):
    page = original_pdf.Pages.get_Item(i)

    new_page = new_pdf.Pages.Add(SizeF(width_pt, height_pt), PdfMargins(0.0))

    layout = PdfTextLayout()
    layout.Layout = PdfLayoutType.OnePage

    template = page.CreateTemplate()
    template.Draw(new_page, PointF.Empty(), layout)

    new_pdf.SaveToFile(output_file)
    new_pdf.Close()
    original_pdf.Close()

    The first argument of ConvertUnits is the value, the second is the source unit, and the third is the target unit. Supported units include Millimeter, Inch, Pixel, Point, and others. If you are unsure of the original page size, read it first for reference:

    page = original_pdf.Pages
    [0]print(f"Original page size: {page.Size.Width} × {page.Size.Height} points")

    Scenario 3: Proportional Scaling (Enlarge or Shrink)


    Sometimes you don't have a fixed target size; you just want to enlarge everything by 1.2x or shrink it to 80%. In that case, multiply the original dimensions by a factor—simpler than the previous two approaches:

    from spire.pdf.common import *
    from spire.pdf import *

    input_file = "source.pdf"
    output_file = "scaled_120.pdf"

    scale = 1.2

    original_pdf = PdfDocument()
    original_pdf.LoadFromFile(input_file)

    new_pdf = PdfDocument()

    for i in range(original_pdf.Pages.Count):
    page = original_pdf.Pages.get_Item(i)

    new_width = float(page.Size.Width * scale)
    new_height = float(page.Size.Height * scale)
    new_page = new_pdf.Pages.Add(SizeF(new_width, new_height), PdfMargins(0.0))

    layout = PdfTextLayout()
    layout.Layout = PdfLayoutType.OnePage

    template = page.CreateTemplate()
    template.Draw(new_page, PointF.Empty(), layout)

    new_pdf.SaveToFile(output_file)
    new_pdf.Close()
    original_pdf.Close()

    With proportional scaling, the aspect ratio stays the same, so content is not stretched or distorted. PdfLayoutType.OnePage mainly acts as a safeguard here: even if one page's original size differs slightly from the others, the content still fits fully into the new page.

    Summary


    Redrawing pages through templates is a stable, reliable way to resize PDFs, especially for batch normalization. The core workflow is four steps: read the original page → create a template → create a new page → draw the template onto it. From there, you can adjust the scaling logic, margins, and alignment to fit your needs.#automation #code #python #tutorial #software #coding #development #engineering #inclusive #community
    Changing PDF Page Size with Python

  24. Good morning dear amazing Tooteroonies of huffs n puffs☕🌞
    Tyrsday, dark, damp, 6°, lil rain, a nordic autumn day, the week rolling on😉
    I wish yous a superb day full of kindness, insight, happiness, light, magic, optimism, camaradery, funs, joys, smiles, giggles n laughter😊🤙
    #Tisdag #Tyrsday #MorningGreetings #Smiles

  25. I wanted to create a 60-second cinematic FPV travel film across the United States, moving from New York to San Francisco and Los Angeles.

    The goal wasn't simply to generate impressive AI footage. I wanted the entire film to feel like one continuous drone journey rather than a collection of unrelated clips stitched together in post-production.

    That introduced three practical challenges:

    • Maintaining visual continuity across independently generated clips.
    • Controlling camera movement, lighting, and transitions through prompts.
    • Fixing individual shots without regenerating the entire video.

    I built the film using GMI Cloud's video generation models, frame chaining, and FFmpeg.

    The final output was exactly 60 seconds long, rendered at 1080p, with a targeted replacement for a shot that generated incorrectly.

    Here's how the pipeline worked, including the API issues, failed generations, and techniques that made the workflow more reliable.

    1. Understanding the Duration Constraint


    The first step was checking the available models and their actual generation limits.

    Rather than relying on model names or assumptions, I used GMI Cloud's get_model tool to inspect the supported parameters, duration limits, and pricing.

    get_model({ model_id: "seedance-2-5-260628" })
    get_model({ model_id: "wan3.0-video" })
    get_model({ model_id: "veo-3.1-generate-001" })

    The following figures reflect the catalog and pricing I observed during development in October 2026. Verify them against the current catalog before using them in production.

    ModelMaximum durationObserved 1080p price/secRelevant capabilitiesseedance-2-5-26062830 seconds$0.569First-frame and last-frame conditioning, reference images, audio generationwan3.0-video30 seconds$0.20Frame conditioning, reference images, separate negative promptveo-3.1-generate-0018 seconds$0.40High photorealism, two-frame conditioningkling-3.0-turbo-t2v15 seconds$0.14Text-to-video generationseedance-2-0-260128-upscale15 seconds$0.056Budget-oriented optionveo-3.1-lite-generate-0018 seconds$0.05Lower-cost generation at supported resolutions


    These capabilities and prices are model- and configuration-dependent. Check the current API schema before building around a particular parameter.

    The key constraint was straightforward: no model in this selection could generate the entire 60-second film in one request.

    I therefore split the project into two 30-second generations.

    Fewer, longer clips reduce the number of boundaries that need to be managed. A six-clip pipeline introduces five joins, while a two-clip pipeline introduces just one.

    However, clip length shouldn't be the only consideration. The structure of the film matters, too. If a story naturally contains three distinct locations or sequences, three shorter clips may be easier to control than two longer generations.

    The objective is to minimize unnecessary joins without forcing unrelated scenes into one generation.

    2. Prompt Engineering: Control the Camera Before the Scene


    One of the biggest lessons from this project was that a video prompt needs to describe motion, not just visual content.

    My initial prompts combined several events into short sequences:

    • Dive between skyscrapers.
    • Sweep toward the Hudson River.
    • Transition from sunrise to blue hour.
    • Race through city streets.
    • Introduce light trails.

    The results were inconsistent. Architecture distorted, transitions became muddy, and the camera sometimes appeared to blend incompatible locations.

    The problem was trying to control too many independent events in a single prompt.

    My revised approach was to define a continuous camera movement with explicit scene timing.

    The single-movement principle


    Describe one continuous camera journey per generation, and use FFmpeg for editorial cuts.

    This doesn't mean a longer generation must contain only one location. It means the transitions between locations should follow a physically understandable camera movement rather than asking the model to perform several unrelated edits.

    For example, an aircraft wing can pass across the lens and temporarily obscure the entire frame. The next location can emerge as the wing clears.

    That provides a visual transition the model can attempt to render as part of the camera movement.

    Here's an excerpt from the prompt used for the film:

    Ultra-realistic cinematic FPV drone travel film, 30 seconds, 16:9.

    One continuous high-speed journey across the United States.
    Maintain forward camera momentum throughout.

    Photorealistic imagery, consistent teal-and-orange commercial
    color grading, high dynamic range, natural film grain,
    subtle horizontal anamorphic lens flare, and a wide 14mm lens.

    Use smooth motion blur only during the fastest movements.

    No text, captions, subtitles, logos, watermarks, or readable
    signage.

    SHOT 1 (0-7s):
    Above New York City at sunrise. Low mist surrounds the
    skyscrapers as the drone tips forward and dives between
    glass towers. Golden light reflects across the facades.

    SHOT 2 (7-15s):
    The camera descends to street level and races down a wide
    Manhattan avenue. Moving cars pass beneath the camera,
    their headlights and taillights creating flowing light trails.

    SHOT 3 (15-22s):
    The drone rises over New York Harbor. A ferry crosses the
    water below, leaving a white wake. The camera sweeps around
    to reveal the Statue of Liberty in the morning haze.

    SHOT 4 (22-30s):
    An aircraft wing passes directly across the lens, filling
    the frame. As it clears, the camera emerges above turquoise
    Pacific water near San Francisco, moving toward the Golden
    Gate Bridge as its red towers appear through coastal fog.

    The timing provides structure, but it doesn't guarantee that the model will follow every boundary precisely. Treat shot durations as guidance and inspect the generated footage before editing.

    Keep the visual identity consistent


    Consistency doesn't require identical lighting throughout the film.

    The sequence moves between sunrise, daylight, golden hour, and night. Those changes are part of the story.

    What should remain relatively stable is the visual treatment:

    • Color grading.
    • Lens characteristics.
    • Motion style.
    • Contrast and highlight handling.
    • Overall level of realism.

    I repeated the same visual descriptors across prompts while allowing the lighting and environment to change.

    This gave the film a more consistent look without making every location feel artificially identical.

    Negative prompts are model-specific


    Different models expose different controls.

    For example, wan3.0-video supports a dedicated negative_prompt parameter, while the Seedance 2.5 configuration I used did not expose that parameter.

    For Seedance, I placed unwanted elements directly in the prompt:

    No text, captions, subtitles, logos, watermarks, or readable
    signage anywhere in the frame.

    The general lesson is to inspect the actual model schema rather than assume that every video model supports the same parameters.

    3. Frame Chaining: Maintaining Continuity Between Clips


    Frame chaining was the central technique in this project.

    Instead of generating two unrelated clips and trying to hide their differences afterward, I used the final frame of the first clip to condition the beginning of the second.

    The pipeline is simple:

    1. Generate clip A.
    2. Extract a frame near the end of clip A.
    3. Upload the frame to GMI Cloud.
    4. Pass its URL as the first_frame parameter when generating clip B.
    5. Inspect the boundary and adjust the edit if necessary.

    The second generation now has a visual reference for where the first generation ended.

    Extracting the frame with FFmpeg


    I extracted a frame near the end of the first clip:

    ffmpeg -y -ss 29.9 -i clipA.mp4 \
    -frames:v 1 chain_last.png

    I then normalized the image to the intended output dimensions and converted it to JPEG:

    ffmpeg -y -i chain_last.png \
    -vf "scale=1920:1080:force_original_aspect_ratio=increase,crop=1920:1080" \
    -q:v 3 chain_first.jpg

    The output dimensions should match the intended video aspect ratio. If the source frame already has the correct dimensions, unnecessary scaling and cropping can be avoided.

    The extracted image becomes the conditioning frame for the next generation.

    Uploading the frame to GMI Cloud


    The upload_media operation returns a signed upload_url and a public_url.

    These serve different purposes:

    • upload_url is the destination for uploading the file.
    • public_url is the image URL supplied to the video generation request.

    The signed URL doesn't upload the file automatically. You must send the image bytes to it.

    Here's a minimal Python example:

    import urllib.request

    upload_url = "<upload_url from upload_media>"

    with open("chain_first.jpg", "rb") as image_file:
    image_data = image_file.read()

    request = urllib.request.Request(
    upload_url,
    data=image_data,
    method="PUT",
    headers={"Content-Type": "image/jpeg"},
    )

    with urllib.request.urlopen(request) as response:
    print(response.status)

    Use the URL and HTTP method specified by the upload operation. If the signed URL expires or the upload returns a signature error, request a fresh URL and retry.

    I encountered a 403 SignatureDoesNotMatch error with an earlier upload URL. Requesting a new URL resolved the problem in my case.

    Generating the next clip


    With the frame uploaded, I passed its public URL to Seedance 2.5.

    The following is a representative request structure; use the exact field names and request envelope documented by the current API.

    {
    "model_id": "seedance-2-5-260628",
    "prompt": "<your scene and camera-movement prompt>",
    "parameters": {
    "duration": 30,
    "resolution": "1080p",
    "ratio": "adaptive",
    "first_frame": "<public_url of chain_first.jpg>",
    "generate_audio": true,
    "watermark": false
    }
    }

    The critical setting was ratio.

    The ratio configuration issue


    I encountered failed generations when using an explicit ratio: "16:9" and when omitting the ratio entirely.

    The API returned an error explaining that, when first-frame or first-and-last-frame conditioning is used, the output aspect ratio follows the input frame.

    The configuration that worked was:

    "ratio": "adaptive"

    For this particular model configuration, using ratio: "adaptive" resolved the issue.

    Don't assume that a parameter's default value is valid for every generation mode. Frame-conditioned generation can have different validation rules from text-to-video generation.

    Verify this behavior against the current API documentation before relying on it in another model version.

    What frame chaining actually guarantees


    Frame chaining is useful, but it is important to distinguish three different forms of continuity.

    Frame continuity: The next generation receives a reference image matching the preceding clip's endpoint.

    Temporal continuity: Camera motion, object movement, lighting, and perspective evolve naturally across the boundary.

    Subject continuity: People, vehicles, and other objects maintain their identity and appearance across shots.

    Frame chaining primarily addresses the first problem. It can help with the second, but it doesn't guarantee a perfect motion transition. It also doesn't guarantee subject consistency across independently generated scenes.

    A matching boundary frame is not proof that the surrounding motion will be seamless.

    For recurring subjects, combine frame conditioning with reference images where the model supports them.

    ModelReference parameterObserved catalog limitwan3.0-videoreference_image, reference_videoUp to 10 images and 5 videosseedance-2-5-260628reference_images, reference_videosUp to 9 images and 3 videoshappyhorse-1.1-r2vreference_imageUp to 5 images


    These limits are model-specific and should be verified before use.

    I also found that frame chaining works best when the next clip continues a compatible scene.

    A coastline transitioning into a bridge approach provides a natural continuation. A sudden jump from San Francisco to a Los Angeles street is a different editorial event and is often better handled as a deliberate cut.

    Chain compatible camera movements. Use editing to handle genuine changes in scene or location.

    4. Stitching the Film with FFmpeg


    Once the clips were generated, I assembled them into the final video.

    For a simple join, FFmpeg's concat demuxer is convenient when the input files have compatible stream properties.

    Create a file named list.txt:

    file 'clipA.mp4'
    file 'clipB.mp4'

    Then concatenate the clips:

    ffmpeg -y -f concat -safe 0 -i list.txt \
    -t 60.0 \
    -vf "fps=24,scale=1920:1080:flags=lanczos,format=yuv420p" \
    -c:v libx264 -preset slow -crf 17 \
    -c:a aac -movflags +faststart \
    out/master.mp4

    This example assumes that the input streams are compatible with the chosen filter and encoding pipeline. Incompatible codecs, time bases, resolutions, or audio streams may require normalization before concatenation.

    The command also re-encodes the video, so it is not a lossless join.

    When the clips need different processing


    For the final replacement, I needed to combine a 50-second section of the existing master with a newly generated 10-second clip.

    I used a filter graph to concatenate the video and audio streams while normalizing the video output:

    ffmpeg -y -i head.mp4 -i clipFix.mp4 \
    -filter_complex \
    "[0:v][1:v]concat=n=2:v=1:a=0,fps=24,scale=1920:1080:flags=lanczos,format=yuv420p[v]; \
    [0:a][1:a]concat=n=2:v=0:a=1[a]" \
    -map "[v]" -map "[a]" \
    -t 60.0 \
    -c:v libx264 -preset slow -crf 17 \
    -profile:v high -level 4.2 \
    -c:a aac -b:a 192k \
    -movflags +faststart \
    out/america_60s_16x9_v2.mp4

    This version assumes both inputs contain compatible audio streams. If one clip lacks audio, the filter graph needs to be adjusted to create or omit the missing stream.

    Also, -t 60.0 limits the output duration; it doesn't independently guarantee that the final file contains exactly 60 seconds of usable footage.

    To verify the result, inspect the actual duration and frame count.

    ffprobe -v error \
    -show_entries format=duration \
    -of default=noprint_wrappers=1:nokey=1 \
    out/america_60s_16x9_v2.mp4

    For a 24 fps output, 60 seconds corresponds to 1,440 frames. Checking both duration and frame count is useful when exact delivery specifications matter.

    Creating a cinematic 2.39:1 presentation


    The source video was generated at 16:9, but I also wanted to test a wider cinematic presentation.

    One option is to scale the image to 1920 × 804 and add black bars to restore a 1920 × 1080 canvas:

    ffmpeg -y -i master.mp4 \
    -vf "scale=1920:804:flags=lanczos,pad=1920:1080:0:138:black" \
    -c:v libx264 -preset slow -crf 17 \
    -profile:v high \
    -c:a copy \
    -movflags +faststart \
    out/master_239.mp4

    This produces an approximately 2.39:1 image area within a 16:9 video frame.

    Letterboxing preserves the entire scaled image, unlike a direct vertical crop that discards parts of the original frame.

    However, scaling the full 16:9 image to 1920 × 804 changes its proportions unless the image is cropped first. For a geometrically correct widescreen presentation, use a crop-and-scale pipeline when necessary.

    5. Re-Rendering One Bad Shot Instead of the Entire Film


    One of the most useful aspects of this workflow was the ability to replace a specific segment without rebuilding the whole video.

    During generation, the Hollywood sign appeared as "HOLFWOOD" instead of "HOLLYWOOD".

    This is a familiar limitation of generative video models: text can look convincing at a glance while individual characters remain incorrect or unstable.

    Regenerating the entire 60-second film would have wasted both time and credits.

    Instead, I extracted the frame at the replacement boundary, used it as the new clip's first_frame, and generated a replacement segment.

    ffmpeg -y -ss 50.0 -i out/master.mp4 \
    -frames:v 1 splice_first.jpg

    After uploading the frame and generating the replacement clip, I rebuilt the master from the unchanged opening section and the new footage.

    The replacement was approximately 10 seconds long.

    Prompting for accurate text


    For the replacement, I made the lettering requirement explicit:

    CRITICAL: The hillside sign must read exactly HOLLYWOOD.

    The spelling is H-O-L-L-Y-W-O-O-D: nine letters.

    The fourth letter must be L, not F.

    The letters are large, white, individually formed capital
    letters arranged in a straight horizontal line on a dry,
    brown hillside.

    Keep the lettering stable, correctly formed, and clearly
    visible from the front. Do not distort, rearrange, or replace
    any characters.

    The revised generation produced the intended spelling.

    This doesn't mean literal prompts can reliably solve text rendering in every model. It means a specific description of the expected output and known failure can improve the next attempt.

    For shots containing signs, product labels, or other critical text, I recommend treating one or two targeted re-renders as part of the production budget.

    When exact typography is essential, a more reliable approach is to add the text during post-production rather than depend on the video model to render it correctly.

    6. Practical Issues I Encountered


    The creative workflow was only part of the implementation. Several API and environment issues also affected the process.

    Keep generation parameters in the expected structure


    My generation-estimation requests required model-specific parameters to be nested under parameters.

    For example:

    {
    "model_id": "seedance-2-5-260628",
    "prompt": "<prompt>",
    "parameters": {
    "duration": 30,
    "resolution": "1080p",
    "ratio": "adaptive"
    }
    }

    Use the structure expected by the relevant operation. An estimation endpoint and a generation endpoint may not accept identical request bodies.

    An MCP timeout doesn't necessarily mean generation failed


    One submit_generation request timed out on the client side while the server-side generation continued running.

    Submitting the same request again could have created unnecessary work or additional charges.

    Instead, I used list_generations to inspect the existing jobs and recover their status.

    For production systems, keep track of generation IDs, request parameters, and job status. When supported, use idempotency controls to distinguish intentional re-renders from accidental duplicate submissions.

    Check which credits apply to each model


    My account displayed a zero-dollar balance alongside promotional credits. One model returned an insufficient_balance error, while another accepted the request.

    This was an account-specific result, not proof that all promotional credits are restricted in the same way.

    Before running a large batch, verify that the available credits apply to the selected model and generation configuration.

    Verify your FFmpeg version


    My system FFmpeg installation was too old to handle the HEVC Main10 output produced by the video model.

    The resulting codec errors initially looked like a problem with the downloaded file.

    I installed a newer FFmpeg binary through imageio-ffmpeg:

    pip install imageio-ffmpeg

    Then I checked the binary path:

    python -c "import imageio_ffmpeg; print(imageio_ffmpeg.get_ffmpeg_exe())"

    Use a sufficiently recent FFmpeg build with the codecs required by your source footage.

    For reproducible workflows, check the installed version and codec support before beginning a batch of generations.

    Verify audio instead of trusting the response


    Although I requested audio generation, both clips returned valid AAC audio streams that were effectively silent.

    I checked the audio levels with:

    ffmpeg -i clip.mp4 \
    -af volumedetect \
    -f null - 2>&1 | grep -E "mean_volume|max_volume"

    A valid audio stream doesn't necessarily contain audible sound. Inspect the output and listen to the actual result before delivery.

    Separate language-model usage from media-generation costs


    The account-summary information I inspected reported language-model usage separately from image and video generation.

    Don't treat an LLM token-cost report as a complete accounting of a media-generation project.

    Track the actual generation requests and their associated charges, and reconcile them against the relevant billing information.

    7. Cost Breakdown


    The final film used two 30-second clips and one 10-second replacement.

    GenerationDurationObserved costClip A — Seedance 2.5, 1080p30 seconds$17.07Clip B — Seedance 2.5, 1080p, frame-conditioned30 seconds$17.07Replacement clip — Seedance 2.5, 1080p10 seconds$5.69Total70 generated seconds$39.83


    The total cost was $39.83 for a final 60-second film.

    Notice that the generation duration adds up to 70 seconds, not 60. The extra 10 seconds came from replacing the incorrect segment.

    The effective cost was approximately $0.66 per second of finished video.

    These figures reflect the pricing and usage observed during this project. They exclude any additional costs not reflected in the recorded generation charges.

    A lower-cost model may make experimentation more affordable, but cheaper generation can also require additional attempts to reach the desired visual quality.

    The right choice depends on the importance of photorealism, continuity, generation speed, and budget.

    Budget for re-renders from the beginning. A pipeline that assumes every generated shot will be usable is likely to underestimate its actual cost.

    8. Scaling the Pipeline Beyond 60 Seconds


    The same approach can be extended to longer films.

    At a maximum of 30 seconds per clip:

    Final durationNumber of clipsNumber of joins60 seconds213 minutes655 minutes10910 minutes2019


    These counts assume full-length 30-second clips. Shorter clips may be more appropriate when the story contains distinct scenes or requires tighter control.

    Each additional join creates another opportunity for mismatched motion, lighting, composition, or subject appearance.

    Several practices make a longer pipeline easier to manage.

    Choose boundary frames deliberately


    Don't extract the final frame automatically without checking it.

    Look for a frame where the camera is passing behind an object, approaching a new landmark, or entering a natural visual transition.

    These moments can make an editorial boundary less noticeable.

    However, the extracted frame should also provide a useful starting composition for the next generation. A visually interesting boundary is not necessarily a good conditioning frame if the next scene cannot continue naturally from it.

    Preserve intermediate frames and generation metadata


    Archive the conditioning frame used for every clip, along with:

    • The original prompt.
    • Model ID and generation parameters.
    • Generation job ID.
    • Source and output file paths.
    • Cost and duration.
    • Notes about failed attempts.

    If clip 4 needs to be regenerated, the saved endpoint from clip 3 allows you to reproduce its starting condition without rebuilding the earlier footage.

    This makes the workflow easier to debug and maintain.

    Parallelize independent generations


    Once the necessary reference frames are available, independent segments can be generated concurrently.

    A fully sequential chain cannot be generated entirely in parallel because each clip may depend on the preceding clip's output.

    A practical compromise is to divide the film into sequences that can be generated independently, then chain clips within each sequence.

    Use idempotency controls where supported, and check the job list before retrying a timed-out request.

    Make every segment independently replaceable


    Treat each generated clip as a separate production asset.

    The master video should be a reproducible output of the individual segments and the editing pipeline, not the only copy of the project.

    That allows a single failed shot to be replaced without rebuilding the entire film.

    9. Visual Verification Before Delivery


    A successful API response doesn't mean the video is ready to publish.

    I used FFmpeg to extract representative frames from across the timeline and assemble them into a contact sheet.

    This made it easier to identify changes in visual style, unexpected objects, and problems with transitions.

    For example, to inspect eight points in the film:

    mkdir -p keys

    for t in 1 9 17 25 33 41 49 58; do
    ffmpeg -y -ss "$t" -i out/master.mp4 \
    -frames:v 1 \
    -vf "scale=470:-1" \
    "keys/m_${t}.jpg"
    done

    The individual frames can then be assembled into a contact sheet.

    A contact sheet is useful for reviewing the overall visual progression, but it won't reveal every temporal artifact.

    For that, inspect the actual footage around each join, preferably frame by frame or at reduced playback speed.

    For the Hollywood sign, I also extracted frames at half-second intervals to check whether the lettering remained stable throughout the replacement segment.

    This helped distinguish incorrect lettering from frames where the sign was partially visible or viewed at an angle.

    My final verification checklist included:

    • [ ] Confirm the final duration and frame rate.
    • [ ] Inspect every join for jumps in camera position or motion.
    • [ ] Check lighting, color grading, and scene continuity.
    • [ ] Review text, faces, architecture, and other high-risk details.
    • [ ] Verify audio levels and playback.
    • [ ] Confirm the output resolution and encoding.
    • [ ] Play the final exported file from beginning to end.

    The model generates the footage. The editing and verification pipeline determines whether it is ready to ship.

    Conclusion


    Building a continuous AI-generated film is not just a prompting problem. It is a pipeline problem involving generation limits, frame conditioning, asset management, editing, and quality control.

    For this project, frame chaining provided a practical way to connect separately generated clips while keeping each segment independently replaceable.

    The most important lessons were:

    1. Check model capabilities before designing the pipeline. Generation limits and parameter support determine how the film should be structured.
    2. Describe camera movement explicitly. A coherent camera path is easier to manage than a prompt containing unrelated transitions.
    3. Use frame chaining for continuity. The previous clip's endpoint provides a visual starting condition for the next generation.
    4. Keep the pipeline modular. Replace failed segments rather than regenerating the entire film.
    5. Verify the actual output. Inspect the joins, text, audio, duration, and final encoding.
    6. Budget for failed generations. Re-renders are part of the workflow, not an unexpected exception.

    The final film cost $39.83 in recorded generation charges and required 70 seconds of generated footage to produce 60 seconds of finished video.

    The broader takeaway is that AI video generation becomes more manageable when treated as a reproducible media pipeline rather than a sequence of isolated prompts.

    Frame chaining won't eliminate every continuity problem, but it gives you a useful degree of control over how separately generated footage fits together.

    Model capabilities, parameter support, and pricing are subject to change. The figures in this article reflect observations from October 2026. Check the current GMI Cloud model catalog and API documentation before implementing the workflow.#ai #tutorial #beginners #showdev #software #coding #development #engineering #inclusive #community
    Frame-Chaining AI Video: Building a 60-Second Film with GMI Cloud

  26. Charmy’s Army in “DEE SEAST – The Hell of the Ball” – Part 3: Blue Vests and Brown Bananas

    <<< Previous COMIC strip NEXT COMIC STRIP >>>

    In the third installment of our saga, panic reaches a fever pitch before colliding directly with mundane retail logistics. Convinced that Walmart’s customer service desk has instituted a terrifying new policy for processing refunds, the ponytail girl spiraled into sheer dread: will returning a defective toaster get her tossed into a holding pen to be devoured by domesticated ghouls? Thankfully, the blonde clears the air. Dee isn’t eating dissatisfied shoppers; she works in the meat department devouring the expired cuts. She isn’t a mindless trash can, either—as corporate HR would insist, she is a proud “Waste Management Facilitator.”

    The fluorescent lights of the retail district buzzed overhead like a hive of mechanical hornets. The ponytail girl stood dead in the center of the sidewalk, completely frozen in terror, clutching both hands to her face. Her eyes were practically the size of saucers, and her breathing sounded like a bellows working overtime.

    “I bought a set of non-stick sauté pans three weeks ago,” she whispered, her voice trembling with sheer, unadulterated existential dread. “The coating is already flaking off near the handle. I have the receipt in my purse. I was literally planning to go to Customer Care this afternoon. But now? Now I know the truth! They’re going to look at my receipt, see that the packaging is torn, hit a discreet red button under the desk, and drop me down a trapdoor into Dee’s feeding pit!”

    The blonde stared at her friend for three long seconds, an expression of profound exhaustion settling across her features. She pinched the bridge of her nose and let out a deep, shuddering sigh that blew a stray blonde lock out of her eyes.

    “Have you ever, in your entire life, heard of a big-box store feeding actual human customers to an employee?” the blonde asked flatly. “Do you realize the liability insurance premiums on that alone? The Occupational Safety and Health Administration would have field inspectors crawling through the air ducts within forty-eight hours. The paperwork would take decades.”

    “Corporations do terrible things to protect their quarterly profit margins!” the ponytail girl insisted, gesticulating wildly toward the towering blue sign visible above the tree line. “Think about it! Customer returns cost money! Salvage freight costs money! If you replace the return desk with an apex predator from beyond the grave, refund requests drop to absolute zero overnight! It’s the ultimate cost-cutting measure!”

    “She’s in the meat department, you absolute lunatic,” the blonde barked, grabbing her friend by the arm and dragging her along the pavement. “She doesn’t eat dissatisfied patrons who lost their receipt for a shower curtain. She eats the brown ground chuck and the discount chicken thighs that have been sitting in the display cooler forty-eight hours past their sell-by date!”

    The ponytail girl blinked once. Twice. Her frantic breathing slowed down, though the look of absolute disgust remained firmly plastered across her face. “Wait… what?”

    “You heard Charmy earlier,” the blonde continued, shaking her head. “Food waste is one of the biggest logistical hurdles in supermarket management. Stores throw away literal tons of spoiled produce, dented cans, and graying beef every single calendar year. Landfills charge dumping fees. Commercial composters have strict guidelines. But an undead post-human? Their digestive systems—or whatever remaining chemical soup passes for an internal organ—can neutralize bacteria that would put a vulture into an intensive care unit.”

    “So she’s a garbage disposal,” the ponytail girl summarized, wrinkling her nose until her freckles scrunched into a tight knot. “A glorified, walking, rotting kitchen sink drain with bangs.”

    “Charmy said she prefers the title Waste Management Facilitator,” the blonde corrected with an ironic smirk. “Corporate America doesn’t hire monsters; they hire operational specialists. They probably gave her an orientation badge, a five-minute video on slips, trips, and falls, and a designated break room in the refrigerated storage annex so she doesn’t scare the bakery associates.”

    Across the street, Charmy and Dee had paused outside a small convenience store. Dee was leaning against a lamppost, her head tilted at a precarious angle that suggested her neck vertebrae were merely suggestive guidelines. A passing delivery driver glanced at her, double-took, and quickly crossed the street with an expression of profound confusion, but nobody screamed. Nobody dialed the national guard. The world had simply absorbed the unthinkable and filed it away under routine municipal oddities.

    “I don’t know what’s worse,” the ponytail girl muttered, watching Dee attempt to scratch her shoulder and nearly dislocating her collarbone in the process. “The idea that the zombie apocalypse ended with our society almost being overrun, or the idea that it ended with the survivors realizing zombies could be exploited for unpaid sanitation labor.”

    “Welcome to late-stage capitalism,” the blonde replied with a dry chuckle. “If a catastrophic virus wipes out twenty percent of the population, the remaining eighty percent won’t mourn; they’ll just figure out how to put the fallen to work clearing out the dairy aisle. But hey, look at the bright side: at least Dee is earning an honest living. It’s more than half the guys you’ve dated this year can say.”

    “That is a low blow and completely uncalled for,” the ponytail girl grumbled, though she couldn’t suppress a faint, cynical grin. “At least my exes showered once a week. Dee looks like she just crawled out of an abandoned septic tank behind a haunted waterpark.”

    “True,” the blonde agreed, watching as Charmy gently handed Dee a small bottle of hand sanitizer, which she promptly attempted to drink before Charmy calmly redirected it to her palms. “She’s definitely rough around the edges. But that brings up an even more pressing dilemma: with Halloween coming up, what does an integrated undead citizen do for social life? And more importantly… what does this mean for the town dance?”

    TO BE CONTINUED….

    Rate this:

    #books #fantasy #fiction #shortStory #writing
  27. Eugénisme grec

    L’eugénisme est la sélection visant à améliorer le patrimoine génétique d’un être vivant. Les Grecs antiques, fins observateurs de la nature et pragmatiques, regardaient les animaux et en prenaient exemple ; après tout, l’homme est un bétail comme un autre, sous le regard des dieux.

    Pour eux l’eugénie signifie « de bonne race ». C’est la belle extraction du terreau du sol, selon le mythe. Des hommes, mais seulement des hommes, sortent spontanément de la terre et deviennent des autochtones qui grandissent comme fondateurs de communauté. C’est la ruse que les mâles opposent aux pièges de Pandora, la première femme tardivement fabriquée par les dieux. Selon le mythe, la bonne naissance se passe du ventre des femmes et fonde la légitimité des lignées masculines.

    Ce privilège d’une belle extraction permet d’envisager la fabrication d’une élite sur mesure, et passer du mythe à la politique. Dès le Ve siècle avant, Théognis de Mégare pense qu’une race de roi ne peut jamais sortir d’un vilain. Hélas ! Toute l’histoire lui donnera tort, mais le mythe demeure. Théognis compare aux hommes les ânes et les chevaux de race à qui on ne fait saillir que des femelles au sang pur. Il dit au jeune homme de bonne naissance Cyrnos, dont il fait l’éducation, qu’un homme de qualité n’a malheureusement aucun scrupule à épouser la fille d’un vilain si elle a beaucoup d’argent. De même, une femme se marie à un vilain s’il a de la fortune. « L’amour » préfère l’argent à la bonne race. C’est ainsi que l’humanité décline, selon Platon dans La République.

    En vue d’une société idéale, il est soucieux d’élever l’humain comme on sélectionne une lignée animale. Il refuse de s’en remettre au hasard pour les accouplements. Il veut contrôler que les sujets d’élite de l’un et l’autre sexe s’accouplent le plus souvent possible, et les sujets inférieurs le plus rarement possible. Nous sommes loin des mesures indiscriminées visant à assurer la natalité d’aujourd’hui. Il s’agit plutôt de favoriser la sélection artificielle des « meilleurs », définis selon des critères subjectifs (grands, beaux, blonds, intelligents, etc.). Mais la biologie ne fait pas tout, le milieu affectif et l’éducation font le principal. « Mais il faut d’abord que tu sois construit toi-même, carré du corps à l’âme », disait Nietzsche. L’eugénisme sert trop souvent de prétexte aux parents pour se défausser de leur rôle « d’élever » les enfants : la génétique y pourvoira. Or, dit Montaigne, élever est leur donner exemple. La sélection n’est donc qu’une base, sur laquelle fonder les institutions.

    Justement, selon Plutarque, ces mesures eugéniques ont été appliqués à Sparte. Les enfants étaient considérés comme le bien commun de la cité et non comme la propriété privée de leur père. Il fallait donc que les citoyens ne soient pas engendrés par n’importe qui, mais par les meilleurs, reconnus tels par la cité. Les pères doivent supporter que leur femme soit inséminée par d’autres, si eux-mêmes sont déficients. L’important est qu’ils aient des enfants sains et vigoureux à élever. C’est d’ailleurs la cité qui les élève, plus que les parents. A partir de 7 ans, les enfants sont éduqués en bandes, garçons d’un côté, filles de l’autre. Elon Musk y croit, et le pratique en son harem, pour créer une nouvelle classe dominante. Mais inséminer et élever n’est pas la même chose. Le russe Pavel Dourov et la Fondation Pronatalist veulent améliorer la race humaine.

    Mais la mère est elle vraiment indispensable ? Dans l’imaginaire des Grecs antiques, il serait possible d’acheter de la graine d’enfant en déposant dans les temples des dieux le poids convenu d’or, de fer et d’airain, sans passer par le ventre des femmes. Le meilleur des mondes selon l’Hippolyte d’Euripide pense possible le bébé éprouvette. Une prescience que l’intelligence artificielle et les moyens de la biologie d’aujourd’hui permettent. On peut choisir le sexe et les qualités de l’enfant à naître. On peut éliminer les tares génétiques, mais aussi la femme comme gestatrice, si l’on peut la remplacer par une machine. Déjà, la gestation pour autrui ne fait-elle pas du corps féminin une sorte de machine à reproduire, sans lien affectif avec le bébé « commandé » par deux parents ? Pour les Grecs, ce serait la ruse masculine pour contourner cette punition donnée par Zeus aux hommes : la femme. Encore une utopie, mais le monde technologique actuel progresse…

    Comme quoi se plonger dans l’univers grec antique nous parle de nous aussi.

    Reynal Sorel, Dictionnaire du paganisme grec, Les Belles lettres 2015, 513 pages, €35.50

    (mon commentaire est libre, seuls les liens sont sponsorisés par amazon.fr)

    #accouplement #amour #argent #éducation #éleverLesEnfants #élite #biologie #elonMusk #eugénisme #génétique #grec #hommes #institutions #mariage #masculin #mère #milieu #pandora #pavelDourov #platon #procréationSansFemme #sélection #sparte #technologie #ventre
  28. CW: silly quake strogg lore

    Now that everything is unlocked in Quake Champions, I have the opportunity to read up on all the lore scrolls I never picked up because I only played as the Hot Lizard Mom, and the biographical entries for Strogg and Peeker are hilarious.

    The strogg guy was part of a skeleton crew left behind on Stroggos to keep the lights on since most everyone else slipgated to Earth to squeeze sweet, sweet stroyent from humans, and times were tough, stroyent had to be rationed, but lo! Humans reverse-engineered slipgate tech and counter-invaded!

    Now food is dropping out of the sky, references are made to the beginning of Q2 where most of the initial strike force was wiped out by an EMP save for one lucky bastard who was now prowling the outer perimeter, and since this strogg is an infiltrator class, the Makron taps him to spy on the guy

    Each field report from this strogg grows increasingly desperate. At first it's like haha look at this human, what a weak little fleshbag, but then subsequent entries are like holy fuck, this dude just wiped our entire jail security force, fuck fuck he's taking out our security grid, what the fuck

    Makron, let me take this guy out, he's fucking our shit up, give me permission to take this guy out, he's wrecking everything, Makron, talk to me, he's ruining everything, he's moving so fast, how is he doing this, please let me kill this guy, I can kill him, just give me the order, I'll do it

    Finally he's like fuck it, I'm just gonna do it, goes in, fucking fails, then wakes up and is like wait, this isn't Stroggos, where am I

    It doesn't change anything about Q2, but when I replay it now I'm gonna think about how canonically there is a panicking spy who fucking dies trying to kill me

  29. At the most basic and lowest and or earliest point of origin, existence is Time plus Matter, while neither time nor matter can actually exist without the other, if you can subscribe to the following,

    " Research shows that out 100, 99 digits precede it, yet we really only have 1,2,3,4,5,6,7,8,9 nine actual numbers, and then 0 which in it's self is void of value, much like the color black which is just the absence of light, as white and black are combined in various combinations to make up every other color, so to every number beyond 1, is a combination of 2,3,4,5,6,7,8,9 and 0,"

    Then at which juncture did matter begin to self quantify and emerge from the blackness of nothing, projecting it's self forward as it created a steady stream of whiteness perceived as light, in where as closer to the point of expulsion is brightest and as matter moves forward the luminosity reduces as it creates the illusion of time, time matter 1-2-3-4-5-6-7-8-9-0 black white, the only constants in existence, that are both static and constantly changing, this is just a completely random observation that requires no quantification nor discussion, however if you allow the premise to reside within your conscious, you may just begin to see things differently;

    If you don't understand, that is ok, not every living thing was given the ability to follow logic nor comprehend abstract reasoning , if you don't understand you should refrain from portraying that you do, it is a puerile recursive rhetorical function that serves no quantifiable solution;

    You can encourage my continued useless #poetry, creativity and expression of self, #commentary, random thoughts, #philosophy and ideas, and by doing so your helping to feed, house and clothe a #disabled man living in #poverty, $5-10-15 It All Helps, via #cashapp at $woctxphotog or via #paypal at paypal.com/donate?campaign_id=…

  30. At the most basic and lowest and or earliest point of origin, existence is Time plus Matter, while neither time nor matter can actually exist without the other, if you can subscribe to the following,
    " Research shows that out 100, 99 digits precede it, yet we really only have 1,2,3,4,5,6,7,8,9 nine actual numbers, and then 0 which in it's self is void of value, much like the color black which is just the absence of light, as white and black are combined in various combinations to make up every other color, so to every number beyond 1, is a combination of 2,3,4,5,6,7,8,9 and 0,"
    Then at which juncture did matter begin to self quantify and emerge from the blackness of nothing, projecting it's self forward as it created a steady stream of whiteness perceived as light, in where as closer to the point of expulsion is brightest and as matter moves forward the luminosity reduces as it creates the illusion of time, time matter 1-2-3-4-5-6-7-8-9-0 black white, the only constants in existence, that are both static and constantly changing, this is just a completely random observation that requires no quantification nor discussion, however if you allow the premise to reside within your conscious, you may just begin to see things differently;

    You can encourage my continued useless #poetry, creativity and expression of self, #commentary, random thoughts, #philosophy and ideas, and by doing so your helping to feed, house and clothe a #disabled man living in #poverty, $5-10-15 It All Helps, via #cashapp at $woctxphotog or via #paypal at paypal.com/donate?campaign_id=…"

Share on Mastodon

Enter the server where you have an account.